/* Start custom CSS */.elementor[data-elementor-id="20634"] { --gary-ink: #1f2430; --gary-muted: #5e6572; --gary-yellow: #ffc400; --gary-soft: #fff9e8; --gary-line: #e8e9ec; color: var(--gary-ink); font-family: Arial, "Noto Sans SC", "Microsoft YaHei", sans-serif; max-width: 1240px; margin: 0px auto; padding: 42px 24px 72px; }
.elementor[data-elementor-id="20634"] * { box-sizing: border-box; }
.elementor[data-elementor-id="20634"] a { color: rgb(36, 87, 214); text-decoration: none; }
.elementor[data-elementor-id="20634"] a:hover { text-decoration: underline; }
.gary-profile-hero { display: grid; grid-template-columns: minmax(320px, 46%) minmax(0px, 1fr); gap: 64px; align-items: stretch; padding-bottom: 36px; border-bottom: 1px solid var(--gary-line); }
.gary-profile-hero__portrait { min-height: 580px; background: rgb(242, 242, 242); overflow: hidden; }
.gary-profile-hero__portrait img { min-height: 580px; object-fit: cover; object-position: center top; display: block !important; width: 100% !important; max-width: none !important; height: 100% !important; margin: 0px !important; }
.gary-profile-hero__copy { padding: 32px 0px 0px; white-space: pre-line; font-size: 16px; line-height: 1.65; }
.gary-profile-hero__copy h1 { letter-spacing: -0.025em; color: var(--gary-ink); padding-bottom: 20px; border-bottom: 3px solid var(--gary-yellow); font-size: 42px !important; line-height: 1.08 !important; text-align: left !important; margin: 0px 0px 28px !important; }
.gary-profile-hero__copy b, .gary-profile-hero__copy > strong { display: block; font-size: 18px; margin: 20px 0px 4px; color: rgb(17, 17, 17); }
.gary-profile-hero__copy ul { white-space: normal; margin: 6px 0px 0px 20px; padding: 0px; }
.gary-profile-hero__copy li { margin: 5px 0px; }
.gary-profile-book { display: flex; justify-content: flex-start; margin-top: 26px; padding: 18px 20px; background: var(--gary-soft); border-radius: 12px; }
.gary-profile-book a { display: inline-flex; align-items: center; justify-content: center; min-width: 144px; min-height: 48px; padding: 12px 22px; background: var(--gary-yellow); font-weight: 700; color: rgb(17, 17, 17) !important; text-decoration: none !important; }
.gary-profile-layout { display: grid; grid-template-columns: 230px minmax(0px, 1fr); gap: 48px; align-items: start; padding-top: 42px; }
.gary-profile-nav { position: sticky; top: 96px; padding: 24px 20px; background: rgb(250, 250, 250); border-left: 3px solid var(--gary-yellow); }
.gary-profile-nav h2 { font-size: 18px; margin: 0px 0px 18px; color: var(--gary-ink); }
.gary-profile-nav a { display: block; padding: 10px 0px; border-top: 1px solid var(--gary-line); font-size: 14px; color: var(--gary-ink); }
.gary-profile-nav a:first-of-type { border-top: 0px; }
.gary-profile-nav .gary-nav-book { margin-top: 18px; padding: 13px 14px; background: var(--gary-yellow); border: 0px; text-align: center; font-weight: 700; }
.gary-profile-content { min-width: 0px; overflow-wrap: anywhere; word-break: break-word; font-size: 16px; line-height: 1.72; color: rgb(48, 54, 64); }
.gary-profile-content > .gary-content-section > strong, .gary-profile-content > .gary-content-section > b { display: block; font-size: 28px; line-height: 1.25; margin: 0px 0px 18px; color: var(--gary-ink); }
.gary-profile-content strong { color: rgb(22, 25, 31); }
.gary-profile-content img { display: block; max-width: 720px !important; width: 100% !important; height: auto !important; margin: 18px auto 28px !important; }
.gary-profile-content ul { margin: 10px 0px 26px; padding-left: 24px; }
.gary-profile-content li { margin: 8px 0px; }
.gary-profile-content h4 { font-size: 30px; line-height: 1.3; margin: 52px 0px 20px; padding-top: 28px; border-top: 2px solid var(--gary-yellow); }
.gary-profile-content .gary-content-section { padding-bottom: 36px; }
.gary-anchor { display: block; position: relative; top: -110px; visibility: hidden; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] { padding: 24px 18px 56px; }
  .gary-profile-hero { grid-template-columns: 1fr; gap: 24px; }
  .gary-profile-hero__portrait { min-height: 0px; }
  .gary-profile-hero__portrait img { min-height: 0px; max-height: 620px; object-fit: contain; height: auto !important; }
  .gary-profile-hero__copy { padding-top: 0px; }
  .gary-profile-hero__copy h1 { font-size: 34px !important; }
  .gary-profile-layout { grid-template-columns: 1fr; padding-top: 24px; }
  .gary-profile-nav { position: static; display: none; }
  .gary-profile-content > .gary-content-section > strong, .gary-profile-content > .gary-content-section > b { font-size: 24px; }
}
.elementor[data-elementor-id="20634"] a:focus-visible, .elementor[data-elementor-id="20634"] summary:focus-visible { outline: rgb(36, 87, 214) solid 3px; outline-offset: 3px; border-radius: 3px; }
.gary-profile-hero { grid-template-columns: minmax(320px, 44%) minmax(0px, 1fr); gap: 54px; padding-bottom: 30px; }
.gary-profile-hero__portrait { min-height: 500px; }
.gary-profile-hero__portrait img { min-height: 500px; }
.gary-profile-hero__copy { padding-top: 16px; }
.gary-profile-hero__copy h1 { font-size: 40px !important; margin-bottom: 18px !important; padding-bottom: 16px !important; }
.gary-profile-hero__copy h1 span { display: block; }
.gary-profile-meta-title { font-size: 18px !important; line-height: 1.3 !important; margin: 16px 0px 5px !important; color: rgb(17, 17, 17) !important; }
.gary-profile-book { margin-top: 18px; padding: 13px 16px; }
.gary-profile-layout { padding-top: 34px; }
.gary-profile-content h2.gary-section-title { font-size: 30px; line-height: 1.22; margin: 0px 0px 18px; color: var(--gary-ink); }
.gary-profile-content h3.gary-subsection-title { font-size: 22px; line-height: 1.3; margin: 24px 0px 14px; color: var(--gary-ink); }
.gary-profile-content h3.gary-meta-title { font-size: 21px; line-height: 1.35; margin: 25px 0px 8px; color: var(--gary-ink); }
.gary-profile-bio { max-width: 72ch; margin: 0px 0px 22px; }
.gary-profile-languages { font-size: 19px; line-height: 1.45; margin: 26px 0px 38px; }
.gary-chinese-title { border-top: 2px solid var(--gary-yellow); margin-top: 0px !important; padding-top: 46px !important; }
.gary-focus-list { list-style: none; display: none !important; margin: 14px 0px 28px !important; padding: 0px !important; }
.gary-focus-list li { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0px; border-bottom: 1px solid var(--gary-line); margin: 0px !important; }
.gary-focus-list li strong { flex: 0 0 auto; color: rgb(17, 17, 17); }
.gary-year { margin: 12px 0px; border: 1px solid var(--gary-line); border-radius: 8px; background: rgb(255, 255, 255); overflow: hidden; }
.gary-year summary { cursor: pointer; padding: 15px 18px; background: rgb(250, 250, 250); font-size: 20px; font-weight: 700; color: var(--gary-ink); }
.gary-year[open] summary { background: var(--gary-soft); border-bottom: 1px solid var(--gary-line); }
.gary-year-content { padding: 5px 20px 1px; }
.gary-year-content ul { margin-bottom: 20px; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] { padding: 20px 18px 52px; }
  .gary-profile-hero { gap: 18px; padding-bottom: 24px; }
  .gary-profile-hero__copy h1 { font-size: 30px !important; line-height: 1.12 !important; margin-bottom: 16px !important; padding-bottom: 13px !important; }
  .gary-profile-meta-title { font-size: 17px !important; margin-top: 15px !important; }
  .gary-profile-book { margin-top: 15px; padding: 10px; }
  .gary-profile-book a { width: 100%; }
  .gary-profile-layout { display: block; padding-top: 20px; }
  .gary-profile-nav { display: flex; position: sticky; top: 126px; z-index: 20; align-items: center; gap: 8px; overflow-x: auto; margin: 0px -18px 24px; padding: 10px 18px; background: rgb(255, 255, 255); border-left: 0px; border-bottom: 1px solid var(--gary-line); box-shadow: rgba(31, 36, 48, 0.08) 0px 4px 14px; scrollbar-width: thin; }
  .gary-profile-nav h2 { flex: 0 0 auto; margin: 0px 5px 0px 0px; font-size: 14px; white-space: nowrap; }
  .gary-profile-nav a { flex: 0 0 auto; white-space: nowrap; padding: 8px 12px; border: 1px solid var(--gary-line); border-radius: 999px; font-size: 13px; }
  .gary-profile-nav .gary-nav-book { margin: 0px; padding: 8px 14px; border: 1px solid var(--gary-yellow); }
  .gary-anchor { top: -190px; }
  .gary-profile-content h2.gary-section-title { font-size: 25px; }
  .gary-profile-content h3.gary-subsection-title { font-size: 20px; }
  .gary-year summary { font-size: 18px; padding: 13px 15px; }
  .gary-year-content { padding: 4px 15px 1px; }
}
@media (max-width: 540px) {
  .gary-profile-hero__portrait img { object-fit: cover; object-position: center 18%; height: 350px !important; max-height: 350px !important; }
  .gary-profile-content img.wp-image-19166, .gary-profile-content img.wp-image-19164 { display: none !important; }
  .gary-focus-list { display: block !important; }
  .gary-profile-languages { font-size: 17px; }
}
.elementor[data-elementor-id="20634"] { overflow-x: hidden; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] { max-width: 100%; overflow-x: hidden; }
  .gary-profile-hero, .gary-profile-hero__copy, .gary-profile-layout, .gary-profile-content { min-width: 0px; max-width: 100%; }
  .gary-profile-hero__portrait { min-height: 0px; }
  .gary-profile-nav { width: calc(100% + 36px); max-width: calc(100% + 36px); min-width: 0px; }
}
@media (max-width: 540px) {
  .gary-profile-hero__portrait { height: 350px; min-height: 350px; }
  .gary-profile-hero__portrait img { height: 350px !important; min-height: 0px !important; max-height: 350px !important; }
}
@media (max-width: 900px) {
  .gary-profile-hero { grid-template-columns: 1fr; }
}
.elementor[data-elementor-id="20634"] { overflow-x: visible; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] { overflow-x: visible; }
}
@media (max-width: 900px) {
  .gary-profile-nav { scrollbar-width: none; }
  .gary-profile-nav::-webkit-scrollbar { display: none; }
}
.gary-profile-layout { overflow: visible !important; }
.gary-profile-nav { height: max-content; max-height: calc(-96px + 100vh); overflow-y: auto; z-index: 40; scrollbar-width: thin; position: sticky !important; top: 76px !important; align-self: start !important; }
.gary-profile-nav a { transition: background-color 0.18s, border-color 0.18s; }
.gary-profile-nav a:hover, .gary-profile-nav a:focus-visible { background: var(--gary-soft); text-decoration: none !important; }
.gary-profile-content h2.gary-section-title { margin-top: 40px; padding-top: 0px; font-size: 30px; line-height: 1.22; }
.gary-profile-content h2.gary-section-title:first-child { margin-top: 0px; }
.gary-copy-card { max-width: 76ch; margin: 0px 0px 34px; padding: 22px 24px; background: rgb(251, 251, 251); border-left: 4px solid var(--gary-yellow); border-radius: 0px 8px 8px 0px; color: rgb(48, 54, 64); }
.gary-copy-card p { margin: 0px 0px 15px; }
.gary-copy-card p:last-child { margin-bottom: 0px; }
.gary-language-pills { display: flex; flex-wrap: wrap; gap: 9px; list-style: none !important; margin: 0px 0px 36px !important; padding: 0px !important; }
.gary-language-pills li { padding: 8px 13px; border: 1px solid rgb(239, 217, 138); border-radius: 999px; background: var(--gary-soft); font-weight: 600; color: rgb(32, 36, 44); margin: 0px !important; }
.gary-highlight-card { margin: 0px 0px 36px; padding: 17px 20px; border: 1px solid rgb(239, 217, 138); border-radius: 8px; background: var(--gary-soft); }
.gary-highlight-card a { font-weight: 700; }
.gary-focus-visual { margin: 0px; }
.gary-year { margin: 12px 0px; border-color: rgb(234, 223, 170); }
.gary-year summary { display: flex; align-items: center; justify-content: space-between; gap: 18px; color: var(--gary-ink); list-style: none; padding: 15px 18px !important; background: var(--gary-soft) !important; }
.gary-year summary::-webkit-details-marker { display: none; }
.gary-year summary::after { content: "+"; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 28px; width: 28px; height: 28px; border: 1px solid rgb(223, 195, 95); border-radius: 50%; font-size: 21px; line-height: 1; font-weight: 500; color: rgb(110, 87, 0); background: rgb(255, 255, 255); }
.gary-year[open] summary { border-bottom-color: rgb(234, 223, 170); background: var(--gary-soft) !important; }
.gary-year[open] summary::after { content: "−"; }
.gary-year:not([open]) summary:hover { background: rgb(255, 242, 189) !important; }
.gary-chinese-archive { line-height: 1.75; }
.gary-chinese-archive > strong, .gary-chinese-archive > b { display: block; margin: 18px 0px 6px; font-size: 17px; color: rgb(22, 25, 31); }
.gary-chinese-archive > a { display: block; margin: 5px 0px; }
.gary-chinese-archive br + strong { margin-top: 18px; }
@media (max-width: 900px) {
  .gary-profile-nav { max-height: none; overflow: auto hidden; top: 126px !important; }
  .gary-profile-content h2.gary-section-title { margin-top: 34px; font-size: 25px; }
  .gary-copy-card { padding: 18px; margin-bottom: 28px; }
  .gary-language-pills { margin-bottom: 30px !important; }
  .gary-year summary { padding: 13px 15px !important; }
}
.gary-chinese-title { padding-top: 46px !important; }
.gary-nav-group + .gary-nav-group { margin-top: 18px; }
.gary-nav-label { display: block; margin: 0px 0px 6px; padding: 0px 9px; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--gary-muted); }
.gary-profile-nav .gary-nav-link { position: relative; display: flex; align-items: center; gap: 9px; padding: 10px 9px; border-top: 1px solid var(--gary-line); border-radius: 6px; color: var(--gary-ink); line-height: 1.35; }
.gary-nav-icon { display: inline-block; flex: 0 0 auto; width: 8px; height: 8px; border: 1.5px solid rgb(194, 162, 0); border-radius: 50%; background: rgb(255, 255, 255); transition: background-color 0.18s, border-color 0.18s, box-shadow 0.18s; }
.gary-profile-nav .gary-nav-link.is-active { background: var(--gary-soft); border-color: rgb(237, 215, 123); font-weight: 700; text-decoration: none !important; }
.gary-profile-nav .gary-nav-link.is-active .gary-nav-icon { background: var(--gary-yellow); border-color: rgb(200, 157, 0); box-shadow: rgba(255, 196, 0, 0.2) 0px 0px 0px 3px; }
.gary-profile-nav .gary-nav-link:hover .gary-nav-icon, .gary-profile-nav .gary-nav-link:focus-visible .gary-nav-icon { background: var(--gary-yellow); }
@media (max-width: 900px) {
  .gary-profile-nav .gary-nav-group { display: contents; }
  .gary-profile-nav .gary-nav-label { display: none; }
  .gary-profile-nav .gary-nav-link { padding: 8px 12px; border: 1px solid var(--gary-line); border-radius: 999px; }
  .gary-profile-nav .gary-nav-link.is-active { border-color: rgb(225, 187, 22); }
  .gary-nav-icon { width: 7px; height: 7px; }
}
.gary-profile-hero__copy { white-space: normal; }
.gary-credentials-strip { margin: 20px 0px 18px; border-top: 1px solid var(--gary-line); border-bottom: 1px solid var(--gary-line); }
.gary-credential-row { display: grid; grid-template-columns: minmax(150px, 34%) minmax(0px, 1fr); min-height: 132px; }
.gary-credential-row + .gary-credential-row { border-top: 1px solid var(--gary-line); }
.gary-credential-label { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 10px; padding: 20px 18px; background: var(--gary-yellow); color: var(--gary-ink); }
.gary-credential-label i { font-size: 24px; line-height: 1; color: var(--gary-ink); }
.gary-credential-label h2 { font-size: 17px !important; line-height: 1.25 !important; margin: 0px !important; color: var(--gary-ink) !important; }
.gary-credential-items { display: flex; flex-direction: column; justify-content: center; gap: 12px; list-style: disc; white-space: normal; background: rgb(255, 255, 255); margin: 0px !important; padding: 20px 22px 20px 42px !important; }
.gary-credential-items li { line-height: 1.48; margin: 0px !important; }
.gary-credential-link { color: inherit !important; text-decoration: none !important; }
.gary-code { font-weight: 700; text-decoration-line: underline; text-decoration-style: initial; text-decoration-color: var(--gary-yellow); text-decoration-thickness: 3px; text-underline-offset: 4px; }
.gary-focus-layout { display: grid; grid-template-columns: minmax(0px, 1.08fr) minmax(300px, 0.92fr); gap: 38px; align-items: center; margin: 8px 0px 34px; }
.gary-focus-chart { min-width: 0px; margin: 0px !important; }
.gary-focus-chart img { display: block !important; width: 100% !important; max-width: 500px !important; height: auto !important; margin: 0px auto !important; }
.gary-profile-content .gary-focus-chart img.wp-image-19166 { display: block !important; }
.gary-focus-layout .gary-focus-list { display: block !important; list-style: none !important; margin: 0px !important; padding: 0px !important; }
.gary-focus-layout .gary-focus-list li { grid-template-columns: 28px minmax(0px, 1fr) auto; align-items: center; gap: 12px; border-bottom: 1px solid var(--gary-line); display: grid !important; padding: 15px 0px !important; margin: 0px !important; }
.gary-focus-layout .gary-focus-list li:first-child { border-top: 1px solid var(--gary-line); }
.gary-focus-num { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: 50%; background: var(--gary-yellow); color: var(--gary-ink); font-size: 12px; font-weight: 800; }
.gary-focus-layout .gary-focus-list li strong { min-width: 42px; text-align: right; color: var(--gary-ink); font-size: 16px; }
.gary-focus-scale { display: flex; flex-wrap: wrap; gap: 8px; color: var(--gary-muted); font-size: 13px; margin: 20px 0px 0px !important; }
@media (max-width: 1100px) {
  .gary-credential-row { grid-template-columns: 138px minmax(0px, 1fr); }
  .gary-credential-label { padding: 18px 14px; }
  .gary-credential-label h2 { font-size: 16px !important; }
  .gary-credential-items { padding: 18px 18px 18px 34px !important; }
  .gary-focus-layout { grid-template-columns: 1fr; gap: 18px; }
  .gary-focus-key { max-width: 620px; margin: 0px auto; width: 100%; }
}
@media (max-width: 900px) {
  .gary-credential-row { grid-template-columns: minmax(140px, 30%) minmax(0px, 1fr); }
  .gary-focus-layout { margin-bottom: 28px; }
}
@media (max-width: 540px) {
  .gary-credential-row { grid-template-columns: 1fr; min-height: 0px; }
  .gary-credential-label { gap: 8px; padding: 16px 18px; }
  .gary-credential-label i { font-size: 21px; }
  .gary-credential-items { padding: 18px 18px 18px 38px !important; }
  .gary-focus-layout .gary-focus-list li { grid-template-columns: 24px minmax(0px, 1fr) auto; gap: 9px; padding: 13px 0px !important; }
  .gary-focus-num { width: 22px; height: 22px; font-size: 11px; }
}
.gary-credentials-strip { border: 1px solid rgb(17, 17, 17); }
.gary-credential-row + .gary-credential-row { border-top-color: rgb(17, 17, 17); }
.gary-credential-label { border-right: 1px solid rgb(17, 17, 17); }
.gary-profile-content .gary-focus-chart img.wp-image-19164 { display: block !important; }
.gary-bottom-cta { margin: 38px 0px 0px; padding-top: 26px; border-top: 1px solid var(--gary-line); }
.gary-bottom-cta a { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; padding: 14px 24px; background: var(--gary-yellow); font-weight: 800; text-align: center; transition: background-color 0.18s, transform 0.18s; color: rgb(17, 17, 17) !important; text-decoration: none !important; }
.gary-bottom-cta a:hover { background: rgb(238, 183, 0); text-decoration: none !important; }
.gary-bottom-cta a:focus-visible { outline: rgb(36, 87, 214) solid 3px; outline-offset: 3px; }
@media (max-width: 540px) {
  .gary-credential-label { border-right: 0px; border-bottom: 1px solid rgb(17, 17, 17); }
  .gary-bottom-cta { margin-top: 30px; padding-top: 22px; }
  .gary-bottom-cta a { min-height: 50px; padding: 13px 18px; }
}
.elementor[data-elementor-id="20634"] { position: relative; }
.gary-language-switcher { display: flex; align-items: center; justify-content: flex-end; gap: 8px; margin: -18px 0px 20px; color: var(--gary-muted); font-size: 14px; }
.gary-language-switcher button { appearance: none; padding: 7px 3px; border-width: 0px 0px 2px; border-style: none none solid; border-color: currentcolor currentcolor transparent; border-image: none; background: transparent; color: var(--gary-muted); font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 700; cursor: pointer; }
.gary-language-switcher button:hover, .gary-language-switcher button:focus-visible { color: var(--gary-ink); }
.gary-language-switcher button.is-active { border-bottom-color: var(--gary-yellow); color: var(--gary-ink); }
.elementor[data-elementor-id="20634"][data-gary-language="en"] .gary-lang-zh, .elementor[data-elementor-id="20634"][data-gary-language="zh"] .gary-lang-en { display: none !important; }
.gary-profile-hero__copy > .gary-lang-panel { width: 100%; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] { padding-top: 58px; }
  .gary-language-switcher { margin: 0px 0px 16px; }
}
@media (max-width: 540px) {
  .gary-language-switcher { margin: 0px 0px 14px; font-size: 13px; }
  .gary-language-switcher button { min-height: 40px; padding: 8px 4px; }
}
.elementor[data-elementor-id="20634"] .gary-profile-hero { display: block !important; }
.elementor[data-elementor-id="20634"] .gary-profile-hero > .elementor-container { display: block !important; max-width: none !important; }
.elementor[data-elementor-id="20634"] .gary-profile-hero > .elementor-container > .elementor-row { grid-template-columns: minmax(320px, 44%) minmax(0px, 1fr); gap: 54px; align-items: stretch; display: grid !important; }
.elementor[data-elementor-id="20634"] .gary-profile-hero > .elementor-container > .elementor-row > .elementor-column { width: 100% !important; }
.elementor[data-elementor-id="20634"] .gary-profile-hero__portrait .elementor-widget-wrap, .elementor[data-elementor-id="20634"] .gary-profile-hero__copy .elementor-widget-wrap, .elementor[data-elementor-id="20634"] .gary-profile-nav .elementor-widget-wrap, .elementor[data-elementor-id="20634"] .gary-profile-content .elementor-widget-wrap { padding: 0px !important; }
.elementor[data-elementor-id="20634"] .gary-profile-hero__portrait .elementor-widget-wrap, .elementor[data-elementor-id="20634"] .gary-profile-hero__portrait .elementor-widget, .elementor[data-elementor-id="20634"] .gary-profile-hero__portrait .elementor-widget-container, .elementor[data-elementor-id="20634"] .gary-profile-hero__portrait .gary-portrait-figure { height: 100%; margin: 0px; }
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy .elementor-widget-container { white-space: normal; }
.elementor[data-elementor-id="20634"] .gary-profile-layout { display: block !important; }
.elementor[data-elementor-id="20634"] .gary-profile-layout > .elementor-container { display: block !important; max-width: none !important; }
.elementor[data-elementor-id="20634"] .gary-profile-layout > .elementor-container > .elementor-row { grid-template-columns: 230px minmax(0px, 1fr); gap: 48px; align-items: start; display: grid !important; }
.elementor[data-elementor-id="20634"] .gary-profile-layout > .elementor-container > .elementor-row > .elementor-column { width: 100% !important; }
.elementor[data-elementor-id="20634"] .gary-profile-nav { height: auto; align-self: start; }
.elementor[data-elementor-id="20634"] .gary-profile-content .elementor-widget-text-editor { margin-bottom: 0px; }
.elementor[data-elementor-id="20634"] .gary-profile-content .gary-content-section { padding-bottom: 36px; }
.elementor[data-elementor-id="20634"] .elementor-element-e4d2182 { display: none !important; }
@media (max-width: 900px) {
  .elementor[data-elementor-id="20634"] .gary-profile-hero > .elementor-container > .elementor-row, .elementor[data-elementor-id="20634"] .gary-profile-layout > .elementor-container > .elementor-row { gap: 24px; grid-template-columns: 1fr !important; }
  .elementor[data-elementor-id="20634"] .gary-profile-nav { display: none !important; }
}
.elementor[data-elementor-id="20634"] .gary-language-switcher a { display: inline-block; appearance: none; padding: 7px 3px; border-width: 0px 0px 2px; border-style: none none solid; border-color: currentcolor currentcolor transparent; border-image: none; background: transparent; color: var(--gary-muted); font-style: inherit; font-variant: inherit; font-stretch: inherit; font-size: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-weight: 700; cursor: pointer; text-decoration: none !important; }
.elementor[data-elementor-id="20634"] .gary-language-switcher a:hover, .elementor[data-elementor-id="20634"] .gary-language-switcher a:focus-visible { color: var(--gary-ink); }
.elementor[data-elementor-id="20634"] .gary-language-switcher .gary-lang-switch-en { border-bottom-color: var(--gary-yellow); color: var(--gary-ink); }
.elementor[data-elementor-id="20634"] .gary-lang-zh { display: none !important; }
.elementor[data-elementor-id="20634"]:has(#jun-profile-title-zh:target) .gary-lang-en { display: none !important; }
.elementor[data-elementor-id="20634"]:has(#jun-profile-title-zh:target) .gary-lang-zh { display: block !important; }
.elementor[data-elementor-id="20634"]:has(#jun-profile-title-zh:target) .gary-language-switcher .gary-lang-switch-en { border-bottom-color: transparent; color: var(--gary-muted); }
.elementor[data-elementor-id="20634"]:has(#jun-profile-title-zh:target) .gary-language-switcher .gary-lang-switch-zh { border-bottom-color: var(--gary-yellow); color: var(--gary-ink); }
.elementor[data-elementor-id="20634"]:has(#jun-profile-title-zh:target) .gary-nav-group.gary-lang-zh .gary-nav-link:first-child { background: var(--gary-soft); font-weight: 700; }
/* Gary typography system v2 - audited 2026-08-27 */
.elementor[data-elementor-id="20634"] {
  --gary-body: #3b4350;
  --gary-link: #1e4eb8;
  --gary-font: Roboto, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  color: var(--gary-body);
  font-family: var(--gary-font);
  font-size: 17px;
  line-height: 1.68;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
.elementor[data-elementor-id="20634"] :is(h1, h2, h3, h4, h5, h6, p, li, a, button, summary, strong, b, small, span) {
  font-family: var(--gary-font) !important;
}
.elementor[data-elementor-id="20634"] a {
  color: var(--gary-link);
}
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy {
  color: var(--gary-body);
  font-size: 17px;
  line-height: 1.65;
}
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy p,
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy li,
.elementor[data-elementor-id="20634"] .gary-credential-items li {
  color: var(--gary-body);
  font-size: 17px;
  line-height: 1.58;
}
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy h1 {
  color: var(--gary-ink);
  font-size: 42px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
}
.elementor[data-elementor-id="20634"] .gary-profile-meta-title,
.elementor[data-elementor-id="20634"] .gary-credential-label h2 {
  color: var(--gary-ink) !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
}
.elementor[data-elementor-id="20634"] .gary-profile-nav h2 {
  font-size: 18px;
  line-height: 1.3;
}
.elementor[data-elementor-id="20634"] .gary-nav-label {
  color: var(--gary-muted);
  font-size: 12px;
  line-height: 1.4;
}
.elementor[data-elementor-id="20634"] .gary-profile-nav .gary-nav-link {
  color: var(--gary-link);
  font-size: 15px;
  line-height: 1.45;
}
.elementor[data-elementor-id="20634"] .gary-profile-content {
  color: var(--gary-body);
  font-size: 17px;
  line-height: 1.72;
}
.elementor[data-elementor-id="20634"] .gary-profile-content p,
.elementor[data-elementor-id="20634"] .gary-profile-content li {
  color: var(--gary-body);
}
.elementor[data-elementor-id="20634"] .gary-profile-content h2.gary-section-title {
  color: var(--gary-ink);
  font-size: 30px;
  line-height: 1.22;
  font-weight: 700;
  letter-spacing: -0.01em;
}
.elementor[data-elementor-id="20634"] .gary-profile-content h3.gary-subsection-title {
  color: var(--gary-ink);
  font-size: 22px;
  line-height: 1.32;
  font-weight: 700;
}
.elementor[data-elementor-id="20634"] .gary-profile-content h3.gary-meta-title {
  color: var(--gary-ink);
  font-size: 21px;
  line-height: 1.35;
  font-weight: 700;
}
.elementor[data-elementor-id="20634"] .gary-copy-card {
  color: var(--gary-body);
}
.elementor[data-elementor-id="20634"] .gary-focus-scale {
  color: var(--gary-muted);
  font-size: 14px;
  line-height: 1.55;
}
.elementor[data-elementor-id="20634"] .gary-language-switcher {
  color: var(--gary-muted);
  font-size: 14px;
}
.elementor[data-elementor-id="20634"] .gary-year summary {
  color: var(--gary-ink);
  font-size: 19px;
  line-height: 1.45;
}
.elementor[data-elementor-id="20634"] .gary-chinese-archive,
.elementor[data-elementor-id="20634"] .gary-profile-content .gary-lang-zh {
  line-height: 1.8;
}
.elementor[data-elementor-id="20634"] .gary-profile-content a:hover,
.elementor[data-elementor-id="20634"] .gary-profile-content a:focus-visible,
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy a:hover,
.elementor[data-elementor-id="20634"] .gary-profile-hero__copy a:focus-visible {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 3px;
}
@media (max-width: 1024px) {
  .elementor[data-elementor-id="20634"] .gary-profile-hero__copy h1 {
    font-size: 36px !important;
  }
}
@media (max-width: 540px) {
  .elementor[data-elementor-id="20634"] {
    font-size: 16px;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-hero__copy,
  .elementor[data-elementor-id="20634"] .gary-profile-hero__copy p,
  .elementor[data-elementor-id="20634"] .gary-profile-hero__copy li,
  .elementor[data-elementor-id="20634"] .gary-credential-items li,
  .elementor[data-elementor-id="20634"] .gary-profile-content {
    font-size: 16px;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-hero__copy h1 {
    font-size: 31px !important;
    line-height: 1.12 !important;
    letter-spacing: -0.015em;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-meta-title,
  .elementor[data-elementor-id="20634"] .gary-credential-label h2 {
    font-size: 17px !important;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-nav h2,
  .elementor[data-elementor-id="20634"] .gary-profile-nav .gary-nav-link,
  .elementor[data-elementor-id="20634"] .gary-language-switcher {
    font-size: 14px;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-content h2.gary-section-title {
    font-size: 26px;
    line-height: 1.25;
  }
  .elementor[data-elementor-id="20634"] .gary-profile-content h3.gary-subsection-title {
    font-size: 20px;
  }
  .elementor[data-elementor-id="20634"] .gary-year summary {
    font-size: 18px;
  }
  .elementor[data-elementor-id="20634"] .gary-chinese-archive,
  .elementor[data-elementor-id="20634"] .gary-profile-content .gary-lang-zh {
    line-height: 1.82;
  }
}/* End custom CSS */