
/* Public design tokens are validated in Storefront::css(). Existing component rules remain. */
body{font-family:var(--body-font);font-size:var(--body-size);line-height:var(--base-line-height);background:var(--paper);color:var(--ink)}
h1,h2,h3,.brand,.sample-cover,.book,.summary-tile strong{font-family:var(--heading-font)}h1{font-size:clamp(38px,5.4vw,var(--heading-size))}h2{font-size:clamp(28px,3.4vw,var(--section-heading-size))}h3{font-size:var(--card-heading-size)}
.wrap{width:min(var(--content-width),calc(100% - 64px))}.section{padding-block:var(--section-spacing)}
.header{background:var(--header-background);z-index:30;position:relative;max-width:calc(var(--content-width) + 120px)}.sticky-site-header .header{position:sticky;top:0}.header nav{font-size:var(--nav-size)}.brand img.wordmark{height:var(--logo-height);max-width:240px}.header nav a:hover{text-decoration:underline;text-underline-offset:6px}
.button{border-radius:var(--button-radius);padding:var(--button-padding) 26px;color:var(--button-text);background:var(--teal);border-color:var(--teal);transition:transform .18s,filter .18s;letter-spacing:.15px}.button:hover{transform:translateY(-2px)}.button.secondary{color:var(--teal);background:transparent}.button.light{background:var(--paper);border-color:var(--paper);color:var(--teal)}.button.small{padding:10px 18px}
.hero{padding-top:64px;padding-bottom:45px;gap:55px;grid-template-columns:1fr 1.08fr}.hero h1{font-size:clamp(38px,5.4vw,var(--heading-size));line-height:1.04;letter-spacing:-2.5px}.hero-art{height:var(--hero-height);background:var(--hero-background);border-radius:var(--card-radius);isolation:isolate}.hero-art>img{padding:0;object-fit:var(--hero-fit)}.hero-secondary{display:inline-flex;align-items:center;gap:14px;margin:20px 0 0 24px;font-size:14px;font-weight:600;text-decoration:none;border-bottom:1px solid var(--line)}.hero-note{font-size:13px;color:var(--muted);margin-top:24px}.hero-copy .lead{max-width:480px}
.announcement-bar{text-align:center;background:var(--announcement-background);color:var(--announcement-text);padding:10px 20px;font-size:12px;letter-spacing:.5px}.menu-toggle{display:none}
.finder-section{padding-top:20px}.finder-panel{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center;padding:36px 44px;background:var(--sage);border-radius:var(--card-radius);border:1px solid var(--line)}.finder-panel h2{font-size:clamp(28px,3vw,37px);margin-bottom:12px}.finder-panel p{margin-bottom:0}.finder-panel .eyebrow{margin-top:0;margin-bottom:14px}.finder-panel form{display:grid;grid-template-columns:1fr auto;gap:8px 12px;align-items:end}.finder-panel label{grid-column:1/-1;margin:0;font-size:12px}.finder-panel select,.finder-panel button{margin:0}.finder-panel select{min-height:52px}.finder-panel button{min-height:52px;white-space:nowrap;font-size:12px;padding:12px 18px}
.product-grid,.audience-grid,.division-grid,.benefits-grid,.reviews-grid{gap:var(--grid-gap)}.product-card,.audience-card,.division,.soft-panel,.panel,.summary-tile,.next-action{border-radius:var(--card-radius)}.product-image{height:var(--product-image-height)}.product-card{background:var(--surface)}.product-info{padding:24px}.product-info .text-link{margin-top:16px}.product-info h3{font-size:var(--card-heading-size);letter-spacing:-.8px}.product-info .eyebrow{line-height:1.7}.audience-card{background:var(--warm);border-color:var(--line)}.audience-card.older-card{background:var(--sage)}.audience-card h3{font-family:var(--heading-font)}.audience-symbol{color:var(--teal)}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:36px}.benefits-grid article{padding:30px 26px;border-top:1px solid var(--line)}.benefit-mark{display:inline-grid;place-items:center;width:56px;height:56px;background:var(--warm);color:var(--teal);border-radius:50%;font-size:30px;margin-bottom:22px}.benefits-grid h3{font-size:26px}.benefits-grid p{font-size:15px;color:var(--muted);line-height:1.8}.soft-panel{background:var(--sage);border-color:var(--line)}.process-grid h3{font-size:25px;line-height:1.2}.step-number{border-color:var(--line);color:var(--teal)}
.stats-section{background:var(--sage);text-align:center}.stats-section h2{max-width:700px;margin:0 auto 40px}.counter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.counter-item{padding:22px;border-right:1px solid var(--line)}.counter-item:last-child{border:0}.counter-item strong{display:block;font:clamp(42px,5vw,68px)/1.1 var(--heading-font);color:var(--teal);font-variant-numeric:tabular-nums;margin-bottom:14px}.counter-item>span{font-size:14px;color:var(--muted)}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:32px}.review-card{margin:0;background:var(--review-background);border:1px solid var(--line);border-radius:var(--card-radius);padding:28px;display:flex;flex-direction:column}.review-stars{color:var(--teal);letter-spacing:3px;font-size:18px}.review-card blockquote{font:20px/1.6 var(--heading-font);margin:20px 0 28px;overflow-wrap:anywhere;white-space:pre-line;flex:1}.review-card figcaption strong,.verified-label{display:block}.verified-label{font-size:11px;color:var(--muted);margin-top:6px}.rating-summary{white-space:nowrap}.rating-summary>span{color:var(--teal);font-size:25px}.rating-summary small{display:block;font-size:12px;color:var(--muted);margin-top:6px}
.membership-panel{position:relative;overflow:hidden;text-align:center;border-radius:var(--card-radius);background:var(--teal);color:var(--dark-text);padding:64px 40px}.membership-panel h2{font-size:clamp(30px,4.2vw,56px);max-width:750px;margin:0 auto 24px}.membership-panel .lead{color:var(--dark-text);opacity:.85;max-width:620px;margin:0 auto 24px}.membership-star{font-size:56px;color:var(--gold);line-height:1;display:block;margin-bottom:28px}.mobility-division{background:var(--teal);color:var(--dark-text)}.books-division{background:var(--warm)}.divisions-section .section-heading h2{font-size:34px}.division{min-height:260px}.division h3{font-size:31px}
.reassurance{border-color:var(--line)}.reassurance h2{font-family:var(--heading-font)}.reassurance-items p,.faq-list,.faq-list details{border-color:var(--line)}.reassurance-items span,.faq-list details p{color:var(--muted)}.next-action{background:var(--sage);border-color:var(--line)}.next-action h3{font-family:var(--heading-font)}.footer{background:var(--footer)}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.footer-links h3{font-family:var(--body-font);font-size:13px;letter-spacing:0;font-weight:700;margin:0 0 18px}.footer-links a{display:block;margin-bottom:12px;line-height:1.7;font-size:12px}.copyright{border-color:var(--line)}
a:focus-visible,summary:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--teal)}.reduce-site-motion *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
@media(max-width:1000px){.hero{gap:28px}.hero-art{height:calc(var(--hero-height)*.85)}.finder-panel{gap:26px;padding:30px}.finder-panel form{grid-template-columns:1fr}.finder-panel label{grid-column:auto}.reviews-grid{grid-template-columns:repeat(2,1fr)}.header nav{gap:16px}}
@media(max-width:760px){.wrap,.header{width:calc(100% - 36px)}.section{padding-block:calc(var(--section-spacing)*.65)}.header{flex-wrap:wrap;gap:12px;padding:16px 0;min-height:auto}.brand img.wordmark{height:min(var(--logo-height),56px);max-width:180px}.has-menu-js .menu-toggle{display:flex;gap:12px;align-items:center;font:12px var(--body-font);background:var(--paper);color:var(--ink);padding:10px;border:1px solid var(--line);border-radius:var(--button-radius);margin-left:auto;max-width:170px}.header nav{width:100%;justify-content:flex-start;padding:12px 0;gap:20px}.has-menu-js #main-navigation{display:none}.has-menu-js #main-navigation.is-open{display:flex}.sticky-site-header .header{position:relative}.hero{grid-template-columns:1fr;gap:24px;padding-top:38px;padding-bottom:24px}.hero-copy{padding-bottom:0}.hero h1{font-size:clamp(38px,10vw,58px);max-width:550px}.hero-art{height:clamp(340px,100vw,540px)}.hero .lead{font-size:17px}.hero-secondary{margin-left:16px}.finder-panel{grid-template-columns:1fr;gap:24px;padding:28px}.finder-panel form{grid-template-columns:1fr}.benefits-grid,.reviews-grid{grid-template-columns:1fr}.benefits-grid article{padding:24px 0}.counter-grid{gap:4px}.counter-item{padding:14px 6px}.counter-item strong{font-size:38px}.counter-item>span{font-size:11px}.membership-panel{padding:42px 24px}.footer-grid{grid-template-columns:1fr}.footer-links{grid-template-columns:repeat(2,1fr)}.audience-card{padding:28px}.reassurance{gap:24px}.review-card{padding:25px}.product-grid{grid-template-columns:1fr}.row-heading .text-link{white-space:normal}.brand{font-size:25px}.finder-panel button{white-space:normal}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
table,input,textarea,select,.skip{background:var(--surface);color:var(--ink)}.category-tabs a.selected,.pagination .current{color:var(--button-text)}.catalogue-header{background:var(--sage)}.panel{background:var(--surface)}.mobility-hero{color:var(--dark-text)}
.sample-preview-link{display:block;padding:0 24px 24px;font-size:12px;color:var(--teal);text-underline-offset:4px}
