/* Editorial display type with quiet, readable sans-serif utility text. */
:root{--display-font:'Aeris Editorial',Georgia,serif;--reading-font:Manrope,'Microsoft YaHei',Arial,sans-serif}
body{font-family:var(--reading-font);font-kerning:normal}
h1,h2,h3{font-family:var(--display-font);font-weight:500;letter-spacing:-.018em;font-optical-sizing:auto}
.hero-content h1{font-size:clamp(68px,7.3vw,108px);line-height:1.02;letter-spacing:-.025em;max-width:1000px}
.hero-content{padding-top:clamp(95px,13vh,130px)}
.hero-content>p:not(.eyebrow){font-size:15px;line-height:1.85;max-width:435px;margin-top:27px}
.hero .eyebrow{font-size:10px;letter-spacing:.24em;margin-bottom:23px}
.page-heading h1,.product-intro h1,.resource-lead h1{letter-spacing:-.023em;line-height:1.1}
.buying-heading h1{font-size:clamp(42px,4.8vw,70px);line-height:1.12}
.intro h2,.section-heading h2,.spaces-section>h2{line-height:1.12}
.product-card:first-child h3{font-size:46px;line-height:1.08}
.journal-card h3,.study-card h3,.space-list h3{font-size:30px;line-height:1.18}
.buying-grid h3,.buying-related h3,.resource-related h3{font-size:32px;line-height:1.18}
.trust-points h3{font-size:28px;line-height:1.18}
.spec-topics h3{font-size:33px;line-height:1.15}
.buying-article h2,.resource-article h2,.article-body h2{font-size:35px;line-height:1.18}
.article-body p,.resource-article p,.buying-article p{line-height:1.95}
.eyebrow,.series{font-weight:600;letter-spacing:.19em}
.button,.text-link{font-weight:600}
.wordmark{font-family:Manrope,Arial,sans-serif;font-size:29px;letter-spacing:.19em;font-weight:500}
.wordmark>span{font-size:7px;letter-spacing:.45em;margin-top:9px}
.site-header nav a{font-weight:500;letter-spacing:.015em}
/* Functional labels stay in the body typeface, including compact H2 labels. */
.footer-grid h2,.article-layout aside h2,.resource-toc h2,.buying-toc h2,.buying-article .direct-answer h2{font-family:var(--reading-font);font-weight:600;letter-spacing:.015em}
.buying-article .direct-answer h2{font-size:13px}
.worksheet-banner h3{font-family:var(--reading-font);font-size:22px;font-weight:500;line-height:1.45;letter-spacing:-.02em}
.checklist-progress strong{font-family:var(--display-font);font-size:44px;font-weight:500}
html[lang=zh-Hans]{--display-font:'Aeris Song','Songti SC',SimSun,serif;--reading-font:Manrope,'Microsoft YaHei UI','Microsoft YaHei',sans-serif}
html[lang=zh-Hans] :is(h1,h2,h3){letter-spacing:.055em;line-height:1.5;font-weight:500}
html[lang=zh-Hans] .hero-content h1{font-size:clamp(49px,5vw,74px);letter-spacing:.075em;line-height:1.5}
html[lang=zh-Hans] .hero-content>p:not(.eyebrow){font-size:15px;line-height:2;max-width:480px;text-wrap:balance}
html[lang=zh-Hans] .hero .eyebrow{font-size:11px;letter-spacing:.2em}
html[lang=zh-Hans] .eyebrow{letter-spacing:.17em}
html[lang=zh-Hans] .intro h2{font-size:clamp(30px,2.7vw,40px)}
html[lang=zh-Hans] .product-card:first-child h3{font-size:35px}
html[lang=zh-Hans] :is(.journal-card h3,.study-card h3,.space-list h3,.buying-grid h3,.buying-related h3,.resource-related h3){font-size:25px;letter-spacing:.035em}
html[lang=zh-Hans] .trust-points h3{font-size:23px;letter-spacing:.035em}
html[lang=zh-Hans] .spec-topics h3{font-size:27px}
html[lang=zh-Hans] :is(.buying-article h2,.resource-article h2,.article-body h2){font-size:29px}
html[lang=zh-Hans] .buying-heading h1{font-size:clamp(34px,3.6vw,51px);letter-spacing:.045em;max-width:1100px}
html[lang=zh-Hans] :is(.footer-grid h2,.article-layout aside h2,.resource-toc h2,.buying-toc h2,.buying-article .direct-answer h2){font-weight:600;letter-spacing:.05em}
html[lang=zh-Hans] .buying-article .direct-answer h2{font-size:13px}
html[lang=zh-Hans] .worksheet-banner h3{font-size:21px;letter-spacing:.015em}
html[lang=ar]{--display-font:'Aeris Naskh','Noto Naskh Arabic',serif;--reading-font:Arabic,Tahoma,sans-serif}
html[lang=ar] :is(h1,h2,h3){letter-spacing:0;line-height:1.45;font-weight:500}
html[lang=ar] .hero-content h1{font-size:clamp(60px,5.9vw,88px);line-height:1.35}
html[lang=ar] :is(.eyebrow,.series,.site-header nav a){letter-spacing:0}
html[lang=ru] .hero-content h1{font-size:clamp(60px,6.5vw,95px)}
@media(max-width:1000px) and (min-width:768px){.hero-content h1{font-size:80px}html[lang=es] .hero-content h1{font-size:72px}.buying-heading h1{font-size:55px}}
@media(max-width:767px){
 .wordmark{font-size:26px}.wordmark>span{font-size:6px}
 .hero-content{padding-top:90px}.hero-content h1{font-size:58px;line-height:1.07;letter-spacing:-.025em}
 .hero .eyebrow{font-size:9px;letter-spacing:.17em}.hero-content>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-top:23px}
 .page-heading h1,.product-intro h1,.resource-lead h1{font-size:45px;line-height:1.12}
 .buying-heading h1{font-size:40px;line-height:1.17}
 .intro h2,.section-heading h2,.spaces-section>h2,.trust-intro h2{font-size:39px}
 .product-card:first-child h3{font-size:34px}
 .journal-card h3,.study-card h3,.space-list h3,.buying-grid h3,.buying-related h3,.resource-related h3{font-size:29px}
 .spec-topics h3{font-size:29px}.trust-points h3{font-size:27px}
 .buying-article h2,.resource-article h2,.article-body h2{font-size:30px}
 .worksheet-banner h3{font-size:21px}.buying-article .direct-answer h2{font-size:12px}
 html[lang=es] .hero-content h1{font-size:46px;line-height:1.14}
 html[lang=ru] .hero-content h1{font-size:48px;line-height:1.16}
 html[lang=zh-Hans] .hero-content{padding-top:80px}
 html[lang=zh-Hans] .hero-content h1{font-size:43px;line-height:1.58;letter-spacing:.06em}
 html[lang=zh-Hans] .hero-content>p:not(.eyebrow){font-size:13px;line-height:2}
 html[lang=zh-Hans] .hero .eyebrow{font-size:9px;letter-spacing:.13em}
 html[lang=zh-Hans] :is(.page-heading h1,.product-intro h1,.resource-lead h1){font-size:34px;line-height:1.5}
 html[lang=zh-Hans] .buying-heading h1{font-size:30px;line-height:1.55;letter-spacing:.035em}
 html[lang=zh-Hans] :is(.intro h2,.section-heading h2,.spaces-section>h2,.trust-intro h2){font-size:30px;line-height:1.55}
 html[lang=zh-Hans] .product-card:first-child h3{font-size:28px}
 html[lang=zh-Hans] :is(.journal-card h3,.study-card h3,.space-list h3,.buying-grid h3,.buying-related h3,.resource-related h3){font-size:23px}
 html[lang=zh-Hans] :is(.buying-article h2,.resource-article h2,.article-body h2,.spec-topics h3){font-size:25px}
 html[lang=zh-Hans] .buying-article .direct-answer h2{font-size:12px}
 html[lang=ar] .hero-content h1{font-size:49px;line-height:1.4}
}
@media(max-width:370px){.hero-content h1{font-size:51px}html[lang=es] .hero-content h1{font-size:39px}html[lang=ru] .hero-content h1{font-size:41px}html[lang=zh-Hans] .hero-content h1{font-size:37px}html[lang=ar] .hero-content h1{font-size:43px}}
@media print{h1,h2,h3{color:#17281f}.buying-article h2,.resource-article h2,.article-body h2{font-size:23px}}

/* Quiet actions and an unboxed collection index. */
:root{--bg:#f7f6f2;--surface:#eeeee7;--text:#263d34;--muted:#60685f;--line:#d8dcd3;--header:rgba(247,246,242,.98);--radius:0}
:root[data-theme=dark]{--bg:#14231e;--surface:#1c3027;--text:#ecf1e9;--muted:#b0beb4;--line:#3e5146;--header:rgba(20,35,30,.98)}
.button{justify-content:center;gap:0;padding:15px 27px;border-radius:0;font-size:11px;font-weight:500;letter-spacing:.045em;min-height:46px;transition:opacity .2s}
.button:hover{transform:none;opacity:.86}
.header-cta{background:transparent;color:var(--text);border:1px solid var(--line);padding:11px 23px;min-height:42px;font-size:10px;letter-spacing:.025em}
.header-cta:hover{border-color:var(--text);opacity:1}
.hero-content .button.light{background:transparent;color:#f7f9f1;border:0;border-bottom:1px solid rgba(247,249,241,.75);padding:10px 0 12px;min-height:0;letter-spacing:.045em;font-size:12px;margin-top:28px}
.hero-content .button.light:hover{opacity:1;border-bottom-color:#fff}
.hero-content h1{font-size:clamp(64px,6.5vw,98px);max-width:940px}
.hero-content>p:not(.eyebrow){font-size:14px;max-width:460px;line-height:1.95}
.text-link{gap:0;justify-content:flex-start;border:0;padding-block:7px;font-size:11px;font-weight:500;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:7px;text-decoration-thickness:1px;transition:text-decoration-color .2s}
.text-link:hover{text-decoration-color:currentColor}
.collection-strip{padding:30px 56px;gap:36px;border:0;background:var(--bg)}
.collection-strip a,.collection-strip a:first-child{padding:0;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:52px;text-align:center}
.collection-strip a>span:first-child{font-size:9px;letter-spacing:.19em;color:var(--muted)}
.collection-strip .collection-name{font-size:12px;font-weight:500;color:var(--text);line-height:1.6;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:6px;transition:text-decoration-color .2s}
.collection-strip a:hover .collection-name,.collection-strip a:focus-visible .collection-name{text-decoration-color:currentColor}
.space-list>a{grid-template-columns:1fr;gap:12px;padding-block:35px}
.space-list p{max-width:390px}
.study-card h3 a{display:block}
.product-card-body{display:block}
.product-card:first-child .product-card-body{gap:0}
.product-card h3 a:hover,.study-card h3 a:hover,.journal-card h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.theme-toggle{width:26px;height:30px;display:grid;place-items:center;padding:4px}
.theme-swatch{position:relative;display:block;width:14px;height:14px;border:1px solid currentColor;border-radius:50%;overflow:hidden}
.theme-swatch::after{content:'';position:absolute;inset-block:0;inset-inline-start:0;width:50%;background:currentColor}
.cta-inner{background:transparent;border-top:1px solid var(--line);padding:65px 0 20px}
html[lang=zh-Hans] .hero-content h1{font-size:clamp(49px,4.6vw,68px)}
html[lang=ar] :is(.button,.collection-strip a>span:first-child){letter-spacing:0}
@media(max-width:1200px){.header-cta{display:none}}
@media(max-width:767px){
 .hero-content h1{font-size:56px}.hero-content>p:not(.eyebrow){font-size:13px}
 .hero-content .button.light{font-size:11px;margin-top:24px;padding-block:9px 11px}
 .collection-strip{grid-template-columns:1fr;padding:12px 20px;gap:0}
 .collection-strip a,.collection-strip a:first-child{flex-direction:row;justify-content:flex-start;gap:24px;min-height:57px;padding-block:15px;text-align:start;border-bottom:1px solid var(--line)}
 .collection-strip a:last-child{border-bottom:0}
 .collection-strip a>span:first-child{flex:0 0 47px;font-size:8px}
 .collection-strip .collection-name{font-size:11px}
 .button{min-height:44px;padding:13px 23px}.cta-inner{padding:36px 0 10px}
 html[lang=zh-Hans] .hero-content h1{font-size:43px}
}
@media(max-width:370px){.hero-content h1{font-size:49px}html[lang=zh-Hans] .hero-content h1{font-size:37px}}
