/* Figma468:2. Shared Today tokens, independently composed over-40 reading layout. */
/* Keep the document as the scroll container for sticky chapter controls.
   overflow-x:hidden on body implicitly turns overflow-y into auto. */
body:has(main.over40-redesign){overflow-x:clip;overflow-y:visible}
main.over40-redesign{
 --o40-ink:var(--ink,#162852);--o40-text:var(--ink-soft,#22303f);--o40-muted:var(--muted,#51606f);
 --o40-paper:var(--paper,#fff);--o40-subtle:var(--bg,#f7f8fa);--o40-line:var(--line,#e2e6eb);--o40-blue:var(--primary,#2f5fa8);
 padding-top:calc(var(--header-height,64px) + 64px);padding-bottom:96px;
 background:var(--o40-paper);color:var(--o40-text);font:400 16px/26px var(--font-body,Inter,sans-serif);
 overflow-x:clip;overflow-wrap:anywhere;
}
.over40-redesign *{box-sizing:border-box;min-width:0}
.over40-redesign :where(h1,h2,h3,p,figure,ol,ul,dl,dd){margin:0}
.over40-redesign :where(h1,h2,h3){max-width:none;color:var(--o40-ink);font-family:var(--font-display,"Schibsted Grotesk",sans-serif);font-weight:600;text-wrap:pretty}
.over40-redesign h1{font-size:56px;line-height:60px;letter-spacing:-1px;font-weight:700}
.over40-redesign h2{max-width:1000px;font-size:38px;line-height:44px;letter-spacing:-.5px}
.over40-redesign h3{font-size:20px;line-height:26px;letter-spacing:0}
.over40-redesign p{font-size:16px;line-height:26px}
.over40-redesign a{color:var(--o40-ink);text-underline-offset:5px}
.over40-redesign a:hover{color:var(--o40-blue)}
.over40-redesign :where(a,button,summary){-webkit-tap-highlight-color:transparent}
.over40-redesign :where(a,button,summary,[tabindex]):focus-visible{outline:3px solid var(--primary-focus,#0353e9);outline-offset:4px}
.over40-redesign [id]{scroll-margin-top:calc(var(--header-height,64px) + 24px)}
.over40-redesign [data-o40-chapter]{scroll-margin-top:calc(var(--header-height,64px) + 96px)}
.over40-redesign [hidden]{display:none!important}
.over40-redesign .o40-container{width:calc(100% - 160px);max-width:1280px;margin-inline:auto}
.over40-redesign .o40-section{padding-block:64px}
.over40-redesign .o40-section>.o40-container{display:flex;flex-direction:column;gap:24px}
.over40-redesign .o40-section>.o40-container>p{max-width:960px}
.over40-redesign .o40-subtle{background:var(--o40-subtle)}
.over40-redesign :is(.o40-small,figcaption){color:var(--o40-muted);font:400 14px/21px var(--font-body,Inter,sans-serif)}
.over40-redesign :is(.o40-label,.o40-figure-title){color:var(--o40-muted);font:600 15px/24px var(--font-body,Inter,sans-serif)}
.over40-redesign .o40-figure-title{color:var(--o40-ink)}
.over40-redesign .o40-number{color:var(--o40-muted);font:500 13px/20px var(--font-mono,"IBM Plex Mono",monospace)}
.over40-redesign .o40-reading{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.over40-redesign .o40-link{display:inline-flex;align-items:center;min-width:44px;min-height:44px;padding-block:8px;font:600 15px/24px var(--font-body,Inter,sans-serif)}
.over40-redesign .o40-hero{display:grid;grid-template-columns:minmax(0,576fr) minmax(0,640fr);gap:24px 64px;padding-bottom:64px}
.over40-redesign .o40-heading{grid-column:1/-1;display:flex;flex-direction:column;gap:24px}
.over40-redesign .o40-hero-media{grid-column:2;grid-row:2}
.over40-redesign .o40-hero-copy{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:24px}
.over40-redesign .o40-chips{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;list-style:none;font-weight:600;font-size:15px;line-height:24px;color:var(--o40-ink)}
.over40-redesign .o40-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;border-top:1px solid var(--o40-line);padding-top:24px}
.over40-redesign .o40-facts>div{display:flex;flex-direction:column;gap:8px}
.over40-redesign .o40-facts dt{color:var(--o40-muted);font-size:14px;line-height:21px}
.over40-redesign .o40-facts dd{color:var(--o40-ink);font-size:15px;line-height:24px;font-weight:600}
.over40-redesign .o40-siblings{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px 32px}
.over40-redesign .o40-contents{border-block:1px solid var(--o40-line);padding-block:8px}
.over40-redesign .o40-contents-wide{display:flex;flex-wrap:wrap;gap:8px 32px}
.over40-redesign :is(.o40-contents-wide,.o40-contents-compact nav) a{display:inline-flex;align-items:center;min-height:44px;padding-block:8px;font-size:15px;line-height:24px;font-weight:600;text-decoration:none}
.over40-redesign .o40-contents-compact{display:none}
.over40-redesign .o40-contents-compact summary{min-height:44px;padding:8px 0;font-size:15px;line-height:24px}
.over40-redesign .o40-contents-compact nav{display:flex;flex-direction:column;gap:8px}
.over40-redesign .o40-contents details{padding:0;margin:0;border:0;border-radius:0;background:transparent;overflow:visible}
.over40-redesign .o40-education{display:flex;flex-direction:column;gap:12px;width:100%;align-items:stretch}
.over40-redesign .o40-education img{display:block;width:100%;height:auto;max-width:min(100%,var(--o40-native-width));object-fit:contain;background:var(--o40-subtle)}
.over40-redesign .o40-education[data-image-failed] img{border:1px dashed var(--o40-muted);color:var(--o40-ink)}
.over40-redesign .o40-concerns{display:flex;flex-direction:column}
.over40-redesign .o40-concern{display:grid;grid-template-columns:304px minmax(0,1fr);gap:48px;padding-block:24px;border-bottom:1px solid var(--o40-line)}
.over40-redesign .o40-concern .o40-reading{gap:16px}
.over40-redesign .o40-concern-links{display:flex;flex-wrap:wrap;gap:8px}
.over40-redesign .o40-assessment{display:flex;flex-direction:column;gap:24px;list-style:none;padding:0}
.over40-redesign .o40-assessment>li{display:grid;grid-template-columns:304px minmax(0,1fr);gap:48px;padding-block:24px;border-bottom:1px solid var(--o40-line)}
.over40-redesign .o40-assessment-heading{display:flex;flex-direction:column;gap:24px}
.over40-redesign .o40-assessment .o40-education{max-width:640px}
.over40-redesign .o40-mechanism{display:grid;grid-template-columns:minmax(0,736fr) minmax(0,480fr);gap:64px;align-items:start}
.over40-redesign .o40-tissues{display:flex;flex-direction:column;gap:24px}
.over40-redesign .o40-tissues article{display:flex;flex-direction:column;gap:12px}
.over40-redesign .o40-tissues article+article{border-top:1px solid var(--o40-line);padding-top:24px}
.over40-redesign .o40-chapter-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-bottom:16px}
.over40-redesign .o40-chapter-nav a{display:flex;align-items:center;min-height:48px;padding:10px 12px;font-size:15px;line-height:24px;font-weight:600;text-decoration:none;border-bottom:2px solid var(--o40-line)}
.over40-redesign .o40-chapter-nav a[aria-current="location"]{color:var(--o40-blue);border-color:var(--o40-blue)}
.over40-redesign .o40-chapter-controls{position:sticky;top:calc(var(--header-height,64px) + 8px);z-index:12;display:grid;grid-template-columns:48px minmax(0,1fr) 48px;gap:12px;align-items:center;padding:8px;background:var(--o40-paper);border:1px solid var(--o40-line)}
.over40-redesign .o40-chapter-controls button{min-width:44px;min-height:48px;border:1px solid var(--o40-line);border-radius:8px;background:var(--o40-paper);color:var(--o40-ink);font-size:22px;line-height:24px;cursor:pointer}
.over40-redesign .o40-chapter-controls button:hover:not(:disabled){border-color:var(--o40-blue);background:var(--o40-subtle)}
.over40-redesign .o40-chapter-controls button:disabled{color:var(--o40-muted);background:var(--o40-subtle);cursor:default}
.over40-redesign .o40-chapter-controls output{color:var(--o40-muted);text-align:center;font-size:14px;line-height:21px;font-variant-numeric:tabular-nums}
.over40-redesign .o40-appliance{padding-block:32px;border-top:1px solid var(--o40-line)}
.over40-redesign .o40-appliance-heading{display:flex;flex-direction:column;gap:16px}
.over40-redesign .o40-appliance-intro{display:grid;grid-template-columns:400px minmax(0,1fr);gap:48px;margin-bottom:24px}
.over40-redesign :is(.o40-materials,.o40-retainers){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.over40-redesign .o40-appliance-story{display:grid;grid-template-columns:minmax(0,480fr) minmax(0,736fr);gap:64px;align-items:start}
.over40-redesign .o40-appliance-2 .o40-appliance-story{grid-template-columns:minmax(0,736fr) minmax(0,480fr)}
.over40-redesign .o40-appliance-2 .o40-appliance-story>.o40-reading{grid-column:2;grid-row:1}
.over40-redesign .o40-appliance-2 .o40-appliance-story>.o40-education{grid-column:1;grid-row:1}
.over40-redesign .o40-safety{display:flex;flex-direction:column;gap:16px;padding-bottom:24px;border-bottom:1px solid var(--o40-line)}
.over40-redesign .o40-safety p{max-width:960px}
.over40-redesign .o40-retention-copy{display:flex;flex-direction:column;gap:24px;max-width:960px}
.over40-redesign .o40-doctors{display:flex;flex-direction:column;gap:32px}
.over40-redesign .o40-doctor{display:grid;grid-template-columns:256px minmax(0,1fr);gap:64px;padding-block:24px;border-bottom:1px solid var(--o40-line)}
.over40-redesign .o40-doctor>img{display:block;width:100%;max-width:256px;height:auto;object-fit:contain}
.over40-redesign .o40-credentials{display:flex;flex-direction:column;gap:20px;padding:0;list-style:none;font-size:16px;line-height:26px;max-width:832px}
.over40-redesign .o40-faq{max-width:960px;width:100%}
.over40-redesign .o40-faq details{padding:24px 0;margin:0;border:0;border-bottom:1px solid var(--o40-line);border-radius:0;background:transparent;overflow:visible}
.over40-redesign .o40-faq summary{min-height:44px;padding:0;cursor:pointer;font:600 15px/24px var(--font-body,Inter,sans-serif);color:var(--o40-ink)}
.over40-redesign .o40-faq-answer{padding-top:16px}
.over40-redesign .o40-faq details p{padding:0;margin:0;font-size:16px;line-height:26px}
@media(min-width:1025px)and (max-width:1200px){.over40-redesign .o40-container{width:calc(100% - 80px)}}
@media(max-width:1024px){
 main.over40-redesign{padding-top:calc(var(--header-height,64px) + 48px)}
 .over40-redesign .o40-container{width:calc(100% - 64px)}
 .over40-redesign h1{font-size:36px;line-height:40px;letter-spacing:-.6px}
 .over40-redesign h2{font-size:26px;line-height:32px;letter-spacing:-.3px}
 .over40-redesign .o40-section{padding-block:48px}
 .over40-redesign .o40-hero{grid-template-columns:minmax(0,1fr);padding-bottom:48px}
 .over40-redesign :is(.o40-heading,.o40-hero-media,.o40-hero-copy,.o40-chips,.o40-facts,.o40-siblings){grid-column:auto;grid-row:auto}
 .over40-redesign :is(.o40-concern,.o40-assessment>li,.o40-mechanism,.o40-appliance-intro,.o40-appliance-story,.o40-appliance-2 .o40-appliance-story,.o40-materials,.o40-retainers,.o40-doctor){grid-template-columns:minmax(0,1fr);gap:24px}
 .over40-redesign :is(.o40-appliance-2 .o40-appliance-story>.o40-reading,.o40-appliance-2 .o40-appliance-story>.o40-education){grid-column:auto;grid-row:auto}
 .over40-redesign .o40-assessment .o40-education{max-width:100%}
 .over40-redesign .o40-doctor>img{max-width:350px}
 .over40-redesign .o40-chips,.over40-redesign .o40-facts{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:767px){
 main.over40-redesign{padding-bottom:calc(112px + env(safe-area-inset-bottom))}
 .over40-redesign .o40-container{width:calc(100% - 40px)}
 .over40-redesign .o40-chapter-nav{grid-template-columns:minmax(0,1fr)}
 .over40-redesign .o40-contents-wide{display:none}
 .over40-redesign .o40-contents-compact{display:block}
 .over40-redesign .o40-siblings{flex-direction:column;gap:8px}
 .over40-redesign .o40-chapter-controls{gap:8px}
}
html:lang(zh-TW) .over40-redesign :is(p,li,dd,figcaption){line-height:1.75}
html:lang(th) .over40-redesign :is(p,li,dd,figcaption){line-height:1.8}
html:lang(zh-TW) .over40-redesign :is(h1,h2,h3),html:lang(th) .over40-redesign :is(h1,h2,h3){letter-spacing:0;line-height:1.3}
html.has-drawer-open .over40-redesign .o40-chapter-controls,body.has-drawer-open .over40-redesign .o40-chapter-controls,html.d12-sheet-open .over40-redesign .o40-chapter-controls{visibility:hidden}
@media(max-width:860px){html.d12-mobile-enhanced .over40-redesign .o40-contents{display:none}}
@media(prefers-reduced-motion:reduce){.over40-redesign *,.over40-redesign *:before,.over40-redesign *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
