/* A single immersive opening, followed by calm ivory reading surfaces. */
.opening-stage {
  position:relative;
  overflow:hidden;
  isolation:isolate;
  color:#f4efdf;
  background:#091d16;
}
.opening-stage:after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
  background:linear-gradient(180deg,rgba(3,13,9,.16),transparent 34%,rgba(3,13,9,.32));
}
.opening-stage .site-header.wrap {
  position:relative;
  z-index:12;
  background:transparent;
  border-color:rgba(222,200,155,.21);
  height:91px;
}
.opening-stage .brand-mark {
  color:#dbbd81;
  border-color:rgba(219,189,129,.7);
  background:linear-gradient(135deg,rgba(255,234,184,.1),rgba(255,255,255,.015));
}
.opening-stage .brand-text { color:#f3ebd8; }
.opening-stage .brand-text small { color:#a9b6a7; }
.opening-stage .nav { color:#e0e5d7; font-size:11px; }
.opening-stage .nav>a:hover { color:#e2c388; }
.opening-stage .header-cta {
  color:#e6cc98;
  border-color:rgba(221,193,139,.57);
  background:rgba(8,27,20,.22);
  min-height:43px;
  font-size:10px;
}
.opening-stage .header-cta:hover { background:#d3b378; color:#11241e; }
.opening-stage .menu-toggle { color:#e6cc98; }
.opening-stage .hero {
  position:relative;
  z-index:1;
  min-height:660px;
  padding-top:55px;
  padding-bottom:65px;
  gap:80px;
  grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  align-items:center;
  isolation:isolate;
}
.hero-scene {
  position:absolute;
  top:-92px;
  left:calc((100% - 100vw)/2);
  width:100vw;
  height:calc(100% + 92px);
  max-width:none;
  object-fit:cover;
  object-position:72% 46%;
  opacity:.46;
  filter:saturate(.64) brightness(.64);
  pointer-events:none;
  z-index:-3;
}
.hero-aurora {
  position:absolute;
  top:-92px;
  bottom:0;
  left:calc((100% - 100vw)/2);
  width:100vw;
  pointer-events:none;
  z-index:-2;
  background:linear-gradient(90deg,rgba(5,22,15,.94) 0%,rgba(7,27,19,.84) 35%,rgba(7,27,19,.26) 70%,rgba(6,23,16,.47) 100%),radial-gradient(ellipse at 64% 31%,rgba(191,160,90,.19),transparent 45%);
}
.opening-stage .hero:before {
  content:'';
  position:absolute;
  top:-91px;
  bottom:0;
  left:calc((100% - 100vw)/2);
  width:100vw;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(0deg,rgba(7,25,18,.44),transparent 28%),radial-gradient(ellipse at 20% 55%,rgba(15,58,37,.2),transparent 55%);
}
.opening-stage .hero-content { max-width:710px; }
.opening-stage .hero-content>.eyebrow {
  color:#d8bc83;
  font-size:10px;
  letter-spacing:.23em;
  margin-bottom:24px;
  display:flex;
  align-items:center;
  gap:17px;
}
.opening-stage .hero-content>.eyebrow:before { content:''; width:30px; height:1px; background:#b99b60; }
.opening-stage .hero-title {
  font-size:clamp(72px,7.4vw,106px);
  line-height:1.01;
  letter-spacing:-.059em;
  color:#f4f0e4;
  text-shadow:0 4px 38px rgba(0,0,0,.18);
}
.opening-stage .hero-title em {
  color:#d9bd81;
  background:linear-gradient(105deg,#f1ddb0 5%,#d8b878 45%,#a5814b 90%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  padding-bottom:.1em;
  margin-bottom:-.1em;
}
.opening-stage .hero-desc { color:#c2d0bd; font-size:14px; line-height:1.9; margin-top:26px; }
.opening-stage .hero-actions { margin-top:27px; align-items:center; gap:23px; }
.opening-stage .hero-actions .button.gold {
  background:linear-gradient(105deg,#e3c78e,#b9955e);
  border-color:#c4a36a;
  color:#12271c;
  box-shadow:inset 0 1px 0 #f4e3ba99,0 9px 34px #0003;
  min-height:54px;
  font-size:11px;
  font-weight:600;
  padding:16px 23px;
}
.opening-stage .hero-actions .text-link { color:#e4d6b8; border-color:rgba(219,189,129,.6); font-size:11px; }
.opening-stage .hero-actions .text-link:hover { color:#fff0c7; }
.opening-stage .hero-meta { gap:28px; margin-top:30px; }
.opening-stage .hero-meta>span { color:#e5dbbe; font-size:24px; border-color:rgba(201,170,111,.58); }
.opening-stage .hero-meta>span>small { color:#90a38f; font-size:7px; letter-spacing:.11em; }
.opening-stage .hero-visual {
  height:465px;
  width:100%;
  max-width:440px;
  justify-self:end;
  align-self:center;
  margin-top:10px;
  transform:rotate(2deg);
  border:1px solid rgba(217,187,124,.35);
  padding:11px;
  background:rgba(255,255,255,.025);
  border-radius:220px 220px 3px 3px;
  box-shadow:0 20px 70px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.04);
}
.opening-stage .hero-visual:before {
  inset:-19px 18px 19px -18px;
  border-color:rgba(217,187,124,.36);
  border-radius:240px 240px 0 0;
}
.opening-stage .hero-visual>img {
  border-radius:215px 215px 0 0;
  filter:saturate(.74) contrast(.97) brightness(.89);
  object-position:58% center;
  border:0;
  box-shadow:none;
}
.opening-stage .hero-visual:after {
  inset:11px;
  border-radius:215px 215px 0 0;
  background:linear-gradient(0deg,rgba(5,22,14,.94),rgba(5,22,14,.2) 43%,transparent 65%);
}
.opening-stage .hero-caption { left:35px; right:29px; bottom:34px; }
.opening-stage .hero-caption>strong { font-size:27px; line-height:1.21; color:#f4efdf; letter-spacing:-.035em; }
.opening-stage .hero-caption>span { color:#d7bb81; font-size:7px; letter-spacing:.11em; }
.opening-stage .hero-caption>small { color:#b9c3af; font-size:7px; letter-spacing:.06em; }
.opening-stage .orbit {
  background:#0d291d;
  border-color:#102b1f;
  box-shadow:0 0 0 1px rgba(225,197,141,.6),0 8px 24px #0003;
  color:#e4c78c;
  left:-48px;
  top:94px;
  width:90px;
  height:90px;
  transform:rotate(-2deg);
}
.opening-stage .orbit:before { top:20px; font-size:7px; }
.opening-stage .orbit:after { font-size:32px; }
.opening-stage+.ticker { color:#72634b; background:#e8e1d2; border-bottom-color:#bca98455; }
.community-card,.book-image,.model-image { --spot-x:50%; --spot-y:25%; }
.community-card {
  isolation:isolate;
  background:radial-gradient(440px circle at var(--spot-x) var(--spot-y),rgba(203,172,109,.075),transparent 70%),linear-gradient(135deg,#1a3327,#11271d);
}
.community-card:before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:radial-gradient(280px circle at var(--spot-x) var(--spot-y),rgba(220,188,124,.085),transparent 75%);
}
.book-image { background:radial-gradient(280px circle at var(--spot-x) var(--spot-y),#fff9e9,#e1d8c3 95%); }
.book-spine { background:radial-gradient(280px circle at var(--spot-x) var(--spot-y),#35513d,#11241e 95%); }
.model-image:after {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(220px circle at var(--spot-x) var(--spot-y),rgba(255,226,159,.17),transparent 80%);
  mix-blend-mode:screen;
}
@media(min-width:1600px) {
  .opening-stage .hero { min-height:730px; gap:110px; padding-block:70px 80px; }
  .opening-stage .hero-title { font-size:112px; }
  .opening-stage .hero-visual { height:535px; max-width:475px; }
}
@media(min-width:901px) and (max-width:1200px) {
  .opening-stage .hero { gap:57px; min-height:620px; padding-block:46px 57px; }
  .opening-stage .hero-title { font-size:clamp(71px,7.5vw,87px); }
  .opening-stage .hero-visual { height:432px; }
  .opening-stage .hero-actions { gap:19px; }
  .opening-stage .hero-actions .button.gold { font-size:10px; padding-inline:18px; }
  .opening-stage .hero-actions .text-link { font-size:10px; }
  .opening-stage .nav { gap:17px; font-size:10px; }
  .opening-stage .hero-caption>strong { font-size:25px; }
  .opening-stage .orbit { width:78px; height:78px; left:-39px; }
  .opening-stage .orbit:before { top:15px; font-size:6px; }
}
@media(max-width:900px) {
  .opening-stage .site-header.wrap { height:79px; }
  .opening-stage .nav {
    top:79px;
    background:#112b1f;
    border:1px solid rgba(215,187,129,.32);
    box-shadow:0 14px 35px #0004;
    padding:23px 26px;
    color:#f0e5cc;
    font-size:13px;
    z-index:30;
  }
  .opening-stage .nav>a { min-height:42px; padding-block:10px; border-bottom:1px solid rgba(227,206,170,.13); }
  .opening-stage .nav>a:last-child { border-bottom:0; }
  .opening-stage .hero { min-height:615px; padding-block:45px 60px; gap:42px; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); }
  .hero-scene,.hero-aurora { top:-80px; }
  .hero-scene { height:calc(100% + 80px); }
  .opening-stage .hero:before { top:-79px; }
  .opening-stage .hero-title { font-size:clamp(61px,8.2vw,75px); }
  .opening-stage .hero-content>.eyebrow { font-size:8px; letter-spacing:.16em; gap:12px; margin-bottom:24px; }
  .opening-stage .hero-content>.eyebrow:before { width:18px; }
  .opening-stage .hero-desc { font-size:13px; }
  .opening-stage .hero-actions { gap:19px; }
  .opening-stage .hero-actions .button.gold { font-size:10px; padding-inline:18px; gap:16px; }
  .opening-stage .hero-actions .text-link { font-size:10px; }
  .opening-stage .hero-visual { height:405px; padding:9px; transform:rotate(1.5deg); }
  .opening-stage .hero-visual:after { inset:9px; }
  .opening-stage .hero-caption { left:24px; right:21px; bottom:26px; }
  .opening-stage .hero-caption>strong { font-size:23px; }
  .opening-stage .hero-caption>span { font-size:6px; }
  .opening-stage .hero-caption>small { font-size:6px; }
  .opening-stage .orbit { width:71px; height:71px; left:-31px; top:84px; }
  .opening-stage .orbit:before { font-size:6px; top:12px; }
  .opening-stage .orbit:after { font-size:25px; }
  .opening-stage .hero-meta { margin-top:24px; gap:22px; }
  .opening-stage .hero-meta>span { font-size:22px; }
}
@media(max-width:640px) {
  .opening-stage .site-header.wrap { height:73px; }
  .opening-stage .nav { top:73px; padding:21px; }
  .opening-stage .brand-text { font-size:10px; letter-spacing:.14em; }
  .opening-stage .brand-text small { color:#aaba9f; font-size:7px; }
  .opening-stage .brand-mark { width:37px; height:37px; }
  .opening-stage .hero {
    min-height:0;
    display:flex;
    flex-direction:column;
    gap:45px;
    padding-top:35px;
    padding-bottom:40px;
    align-items:stretch;
  }
  .hero-scene { top:-74px; height:calc(100% + 74px); object-position:58% center; opacity:.42; }
  .hero-aurora { top:-74px; background:linear-gradient(180deg,rgba(5,22,15,.67),rgba(5,22,15,.81) 48%,rgba(6,26,18,.48)),linear-gradient(90deg,#061a12b3,transparent); }
  .opening-stage .hero:before { top:-73px; background:radial-gradient(ellipse at 0% 22%,rgba(23,61,34,.3),transparent 65%); }
  .opening-stage .hero-content>.eyebrow { margin-bottom:21px; letter-spacing:.15em; font-size:8px; gap:11px; }
  .opening-stage .hero-title { font-size:clamp(61px,17vw,79px); line-height:1.025; letter-spacing:-.057em; }
  .opening-stage .hero-desc { margin-top:20px; font-size:13px; line-height:1.85; }
  .opening-stage .hero-actions { margin-top:24px; gap:19px; align-items:flex-start; flex-direction:column; }
  .opening-stage .hero-actions .button.gold { font-size:11px; min-height:51px; padding:15px 20px; gap:22px; }
  .opening-stage .hero-actions .text-link { font-size:11px; margin:0; }
  .opening-stage .hero-meta { display:none; }
  .opening-stage .hero-visual {
    height:315px;
    width:calc(100% - 17px);
    max-width:380px;
    margin:0 0 0 17px;
    transform:rotate(0deg);
    padding:8px;
    border-radius:160px 160px 2px 2px;
    align-self:flex-end;
  }
  .opening-stage .hero-visual>img { border-radius:153px 153px 0 0; object-position:50% 50%; }
  .opening-stage .hero-visual:before { inset:-12px 12px 12px -12px; border-radius:165px 165px 0 0; }
  .opening-stage .hero-visual:after { inset:8px; border-radius:153px 153px 0 0; }
  .opening-stage .hero-caption { bottom:26px; left:26px; right:22px; }
  .opening-stage .hero-caption>strong { font-size:24px; margin-bottom:10px; }
  .opening-stage .hero-caption>span { font-size:7px; margin-bottom:10px; }
  .opening-stage .hero-caption>small { font-size:7px; }
  .opening-stage .orbit { width:68px; height:68px; top:69px; left:-29px; transform:none; }
  .opening-stage .orbit:before { top:11px; font-size:6px; }
  .opening-stage .orbit:after { font-size:25px; margin-top:10px; }
  .opening-stage+.ticker { padding-block:15px; }
  .community-card:before,.model-image:after { background:none; }
}
@media(max-width:375px) {
  .opening-stage .hero-title { font-size:60px; }
  .opening-stage .hero-content>.eyebrow { font-size:7px; letter-spacing:.12em; }
  .opening-stage .hero-desc { font-size:12px; }
  .opening-stage .hero-actions .button.gold { font-size:10px; padding-inline:18px; }
  .opening-stage .hero-visual { height:297px; }
  .opening-stage .hero-caption>strong { font-size:23px; }
}
@media(prefers-reduced-motion:reduce) {
  .hero-scene,.hero-aurora,.opening-stage .hero-visual { transform:none!important; transition:none!important; animation:none!important; }
  .community-card,.book-image,.model-image { --spot-x:50%!important; --spot-y:25%!important; }
}
/* Abstract brass wing, with a restrained light following the visitor. */
.opening-header { background:#091d16; }
.opening-header:after { display:none; }
.opening-hero { background:#091d16; }
.opening-hero .hero-scene {
  opacity:.36;
  object-position:66% center;
  filter:saturate(.78) brightness(.82);
  mix-blend-mode:screen;
}
.opening-hero .hero-aurora {
  background:radial-gradient(580px circle at var(--hero-x,62%) var(--hero-y,32%),rgba(194,153,78,.09),transparent 75%),linear-gradient(90deg,rgba(5,22,15,.87) 0%,rgba(7,27,19,.66) 36%,rgba(7,27,19,.15) 70%,rgba(6,23,16,.36) 100%);
}
.opening-header .site-header { box-shadow:none; }
@media(max-width:640px) {
  .opening-hero .hero-scene { opacity:.27; object-position:61% center; }
  .opening-hero .hero-aurora { background:linear-gradient(180deg,rgba(5,22,15,.51),rgba(5,22,15,.66) 47%,rgba(6,26,18,.28)),linear-gradient(90deg,#061a1266,transparent); }
}
/* A more energetic visual edition: citron calls to action, teal rooms, less reading. */
:root { --citron:#d9f875; --citron-ink:#153125; --turquoise:#55ccb5; }
body { font-size:16px; }
.button { font-size:14px; min-height:60px; padding:18px 26px; }
.button.gold,
.opening-stage .hero-actions .button.gold,
.community-card:first-child .button.gold,
.final-cta .button.gold {
  background:var(--citron);
  color:var(--citron-ink);
  border-color:var(--citron);
  font-size:14px;
  min-height:60px;
  padding:18px 25px;
  font-weight:600;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 8px 24px rgba(9,35,25,.12);
}
.button.gold:hover,
.opening-stage .hero-actions .button.gold:hover,
.community-card:first-child .button.gold:hover,
.final-cta .button.gold:hover { background:#e5ff97; border-color:#e5ff97; color:#153125; }
.opening-stage .header-cta { font-size:12px; min-height:48px; }
.opening-stage .nav { font-size:13px; }
.opening-stage .brand-text small { font-size:10px; letter-spacing:.08em; }
.opening-stage .hero-content>.eyebrow { font-size:11px; letter-spacing:.16em; }
.opening-stage .hero-desc { font-size:16px; line-height:1.75; max-width:440px; }
.opening-stage .hero-actions .text-link { font-size:14px; }
.opening-stage .hero-meta>span>small { font-size:10px; letter-spacing:.04em; }
.opening-stage .hero-caption>span,
.opening-stage .hero-caption>small { font-size:11px; letter-spacing:.045em; }
.opening-stage .hero-caption>span { max-width:250px; line-height:1.6; }
.opening-stage .hero-caption>small { display:block; line-height:1.6; }
.opening-stage .hero-title em { background:linear-gradient(105deg,#e0eca9,#d4be7c 48%,#b99a63); -webkit-background-clip:text; background-clip:text; }
.eyebrow,.section-head>p.eyebrow { font-size:11px; letter-spacing:.14em; }
.section-head>p:not(.eyebrow),
.intro-grid>div:last-child,
.community-card>p:not(.eyebrow),
.program-title p,
.program-detail p,
.path-result>p:not(.eyebrow),
.tea-copy>p,
.books-intro-copy>p:not(.eyebrow),
.faq-list details>p { font-size:16px; line-height:1.8; }
.community {
  background:radial-gradient(ellipse at 95% 5%,rgba(72,167,147,.23),transparent 55%),linear-gradient(130deg,#0d2a23,#103f37);
}
.community .section-head h2 em { color:#75d4bd; }
.community .section-head>p.eyebrow { color:#b4e3be; }
.community-card { background:radial-gradient(440px circle at var(--spot-x) var(--spot-y),rgba(80,216,171,.09),transparent 70%),linear-gradient(125deg,#153f34,#12352d); border-color:rgba(152,219,187,.29); }
.community-card:nth-child(2) { background:linear-gradient(130deg,#21473a,#15382f); }
.community-card .eyebrow { color:#bfe29b; font-size:11px; }
.community-tags span { font-size:12px; padding:6px 11px; }
.community-card>small,.community-note { font-size:12px; line-height:1.8; }
.community-card:nth-child(2) .button.outline { color:#e4f5d7; border-color:#9aceac; font-size:14px; min-height:60px; }
.pathway { background-image:linear-gradient(110deg,rgba(223,242,209,.3),transparent 60%); }
.path-button { font-size:14px; }
.path-result>.eyebrow,.path-result>small { font-size:11px; }
.path-result>.text-link { font-size:14px; }
.method-section { background:linear-gradient(120deg,#eaf1e5,#dde9db); }
.method-step>span { color:#43765e; }
.method-step p { font-size:14px; }
.method-step { border-top-color:#658971; }
.filter-button,.books-filters .filter-button,.faq-filters button { font-size:12px; min-height:44px; }
.tab-button,.program-more summary { font-size:15px; }
.fact small { font-size:11px; }
.fact strong { font-size:14px; }
.program-topics { font-size:14px; }
.program-title>.eyebrow,.selected-fee>small { font-size:11px; }
.deep-tier .eyebrow { font-size:11px; }
.deep-tier p,.deep-tier>div:last-child>p { font-size:14px; }
.model-body>.model-label { font-size:11px; letter-spacing:.09em; }
.model-image>span { font-size:11px; padding:8px 11px; }
.model-body .text-link { font-size:14px; }
.model-body>p:not(.model-label) { font-size:15px; }
.model-details,.intro-more { border-top:1px solid var(--line); margin-top:18px; }
.model-details>summary,.intro-more>summary { list-style:none; min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:18px; cursor:pointer; font-size:14px; font-weight:500; padding:12px 0; }
.model-details>summary::-webkit-details-marker,.intro-more>summary::-webkit-details-marker { display:none; }
.model-details>summary:after,.intro-more>summary:after { content:'+'; color:#527861; font-size:22px; line-height:1; }
.model-details[open]>summary:after,.intro-more[open]>summary:after { content:'−'; }
.model-details>p,.intro-more p { font-size:14px; line-height:1.8; color:var(--muted); margin:0 0 17px; }
.source-note,.swipe-hint { font-size:12px; }
.books-section { background:linear-gradient(125deg,#f7efe3,#eae3d5); }
.books-stat>span,.books-hero>figcaption { font-size:11px; letter-spacing:.08em; }
.book-group { font-size:11px; }
.book-image>span { font-size:11px; }
.book-body>small { font-size:11px; }
.book-body>h3+p { font-size:14px; }
.books-intro .text-link,.books-note>.text-link { font-size:14px; }
.tea-section { background:linear-gradient(120deg,#edf2e6,#e3eadb); }
.tea-copy>small { font-size:12px; }
.tea-photo>span { font-size:11px; }
.tea-questions>span>strong { font-size:14px; }
.faq-list summary { font-size:16px; }
.faq-tools>label,.faq-count { font-size:11px!important; }
.final-cta { background:#103a2c; }
.final-cta .eyebrow { color:#b5deb5; font-size:11px; }
.final-cta h2 em { color:#d9f875; }
.final-cta p { font-size:16px; }
.final-cta .text-link { font-size:14px; }
.site-footer.wrap p,.site-footer.wrap>div:not(.brand-text) { font-size:13px; }
.site-footer.wrap>small { font-size:11px; }
.sticky-cta { background:var(--citron); color:var(--citron-ink); font-size:14px; font-weight:600; border-color:#bdd85f; }
/* Three photographs are the first invitation to explore the ecosystem. */
.visual-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:26px; padding-top:58px; padding-bottom:65px; align-items:start; }
.ledger-card { position:relative; display:block; height:410px; overflow:hidden; border:1px solid rgba(17,36,30,.24); padding:8px; background:#d3ddce; box-shadow:0 12px 28px rgba(17,36,30,.05); isolation:isolate; }
.ledger-card:nth-child(2) { height:460px; margin-top:30px; background:#c8dbc9; }
.ledger-card:nth-child(3) { height:430px; background:#ddd0b6; }
.ledger-card>img { width:100%; height:100%; object-fit:cover; filter:saturate(.91); transition:transform .75s var(--ease),filter .75s; }
.ledger-card:after { content:''; position:absolute; inset:8px; background:linear-gradient(180deg,rgba(4,19,12,.05) 20%,rgba(4,23,15,.16) 46%,rgba(4,23,15,.9) 100%); pointer-events:none; z-index:1; }
.ledger-caption { position:absolute; z-index:2; left:31px; right:25px; bottom:31px; color:#f7f1df; }
.ledger-caption>small { display:block; font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#d0e6c4; margin-bottom:13px; }
.ledger-caption>strong { display:block; font:400 31px/1.16 var(--serif); letter-spacing:-.035em; max-width:280px; }
.ledger-caption:after { content:'↗'; display:block; font-size:23px; color:#d9f875; margin-top:15px; }
@media(hover:hover) and (pointer:fine) {
  .ledger-card:hover>img { transform:scale(1.055); filter:saturate(1.05); }
}
@media(min-width:901px) and (max-width:1200px) {
  .opening-stage .nav { font-size:12px; gap:16px; }
  .opening-stage .hero-actions { gap:19px; }
  .opening-stage .hero-actions .button.gold { font-size:13px; padding-inline:18px; }
  .opening-stage .hero-actions .text-link { font-size:13px; }
  .opening-stage .hero { min-height:655px; }
  .ledger-card { height:370px; }
  .ledger-card:nth-child(2) { height:425px; }
  .ledger-card:nth-child(3) { height:390px; }
  .ledger-caption { left:25px; right:21px; }
  .ledger-caption>strong { font-size:28px; }
}
@media(min-width:641px) and (max-width:900px) {
  .opening-stage .hero { min-height:660px; }
  .opening-stage .hero-content>.eyebrow { font-size:11px; letter-spacing:.08em; }
  .opening-stage .hero-content>.eyebrow:before { display:none; }
  .opening-stage .hero-desc { font-size:15px; }
  .opening-stage .hero-actions .button.gold { font-size:13px; padding-inline:18px; gap:15px; }
  .opening-stage .hero-actions .text-link { font-size:13px; }
  .opening-stage .hero-caption>span,.opening-stage .hero-caption>small { font-size:11px; letter-spacing:0; }
  .opening-stage .hero-caption>strong { font-size:23px; }
  .visual-ledger { gap:17px; padding-block:42px 48px; }
  .ledger-card { height:340px; }
  .ledger-card:nth-child(2) { height:390px; margin-top:21px; }
  .ledger-card:nth-child(3) { height:355px; }
  .ledger-caption { left:22px; right:18px; bottom:24px; }
  .ledger-caption>strong { font-size:25px; }
  .ledger-caption>small { font-size:11px; letter-spacing:.06em; }
}
@media(max-width:640px) {
  body { font-size:15px; }
  .button { font-size:14px; min-height:58px; }
  .opening-stage .hero-content>.eyebrow { font-size:11px; letter-spacing:.08em; gap:11px; }
  .opening-stage .hero-content>.eyebrow:before { width:18px; }
  .opening-stage .hero-desc { font-size:15px; line-height:1.75; }
  .opening-stage .hero-actions .button.gold { font-size:13px; min-height:58px; padding:17px 20px; gap:22px; }
  .opening-stage .hero-actions .text-link { font-size:14px; }
  .opening-stage .hero-caption>span,.opening-stage .hero-caption>small { font-size:11px; letter-spacing:.025em; }
  .opening-stage .hero-caption>strong { font-size:25px; }
  .section-head>p.eyebrow { font-size:11px; letter-spacing:.11em; }
  .section-head>p:not(.eyebrow),.intro-grid>div:last-child,.community-card>p:not(.eyebrow),.program-title p,.program-detail p,.path-result>p:not(.eyebrow),.tea-copy>p,.books-intro-copy>p:not(.eyebrow),.faq-list details>p { font-size:15px; }
  .community-card .button.gold,.community-card:nth-child(2) .button.outline { font-size:13px; padding-inline:18px; min-height:58px; }
  .community-card>small,.community-note,.tea-copy>small { font-size:12px; }
  .path-button { font-size:13px; }
  .path-result>.eyebrow,.path-result>small { font-size:11px; }
  .path-result>.text-link { font-size:14px; }
  .model-body>.model-label { font-size:11px; }
  .model-details>p,.intro-more p { font-size:14px; }
  .books-intro .text-link,.books-note>.text-link { font-size:14px; }
  .books-stat>span,.books-hero>figcaption,.book-group,.book-image>span,.book-body>small { font-size:11px; }
  .book-body>h3+p { font-size:14px; }
  .tea-photo>span { font-size:11px; }
  .tea-questions>span>strong { font-size:14px; }
  .filter-button,.books-filters .filter-button,.faq-filters button { font-size:12px; }
  .faq-list summary { font-size:15px; }
  .final-cta p { font-size:15px; }
  .final-cta .button.gold { font-size:13px; padding-inline:19px; min-height:58px; }
  .final-cta .text-link { font-size:14px; }
  .site-footer.wrap p,.site-footer.wrap>div:not(.brand-text) { font-size:13px; }
  .site-footer.wrap>small { font-size:11px; }
  .visual-ledger { display:grid; grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:82%; gap:17px; overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; padding-block:35px 40px; align-items:stretch; }
  .ledger-card,.ledger-card:nth-child(2),.ledger-card:nth-child(3) { height:365px; margin-top:0; scroll-snap-align:start; }
  .ledger-caption { left:26px; right:23px; bottom:28px; }
  .ledger-caption>strong { font-size:29px; }
  .ledger-caption>small { font-size:11px; letter-spacing:.1em; }
}
@media(max-width:375px) {
  .opening-stage .hero-content>.eyebrow { font-size:11px; letter-spacing:.04em; }
  .opening-stage .hero-content>.eyebrow:before { width:12px; }
  .opening-stage .hero-actions .button.gold { font-size:12px; padding-inline:18px; gap:17px; }
  .community-card .button.gold,.community-card:nth-child(2) .button.outline { font-size:12px; gap:13px; }
  .opening-stage .hero-desc { font-size:15px; }
  .final-cta .button.gold { font-size:12px; padding-inline:17px; gap:13px; }
  .ledger-card,.ledger-card:nth-child(2),.ledger-card:nth-child(3) { height:345px; }
}
@media(prefers-reduced-motion:reduce) {
  .ledger-card>img { transition:none; }
  .ledger-card:hover>img { transform:none; }
  .visual-ledger { scroll-behavior:auto; }
}
/* Two equally clear doors into the communities. */
.opening-stage .hero-actions .button.hero-secondary {
  color:#b8f3dd;
  border-color:#6ec8b2;
  background:rgba(15,67,49,.45);
  font-size:14px;
  min-height:60px;
  padding:18px 24px;
  box-shadow:inset 0 1px 0 rgba(110,200,178,.1);
}
.opening-stage .hero-actions .button.hero-secondary:hover { background:#235d47; color:#e5fff0; border-color:#b3ecd9; }
.sticky-actions { display:none; }
@media(min-width:641px) and (max-width:1100px) {
  .opening-stage .hero-actions { gap:12px; }
  .opening-stage .hero-actions .button.gold,.opening-stage .hero-actions .button.hero-secondary { font-size:13px; padding-inline:18px; gap:15px; }
}
@media(max-width:640px) {
  .opening-stage .hero-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; width:100%; }
  .opening-stage .hero-actions .button.gold,.opening-stage .hero-actions .button.hero-secondary { min-height:58px; min-width:0; padding:16px 12px; font-size:13px; gap:9px; white-space:nowrap; }
  .sticky-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; position:fixed; bottom:0; left:0; right:0; z-index:40; padding:10px 18px calc(10px + env(safe-area-inset-bottom)); background:rgba(8,29,21,.97); border-top:1px solid #5d927360; box-shadow:0 -6px 25px #09231820; }
  .sticky-actions>a { display:flex; align-items:center; justify-content:center; min-height:55px; padding:14px 10px; font-size:13px; font-weight:600; line-height:1.5; background:var(--citron); color:#153125; border:1px solid var(--citron); }
  .sticky-actions>a:nth-child(2) { background:#123b2d; color:#baf2dc; border-color:#6ac3aa; }
  .site-footer.wrap { padding-bottom:calc(130px + env(safe-area-inset-bottom)); }
}
@media(max-width:375px) {
  .opening-stage .hero-actions .button.gold,.opening-stage .hero-actions .button.hero-secondary { font-size:12px; padding-inline:10px; gap:8px; }
  .sticky-actions { padding-inline:16px; gap:8px; }
  .sticky-actions>a { font-size:12px; padding-inline:9px; }
}

.hero-cta-note{font-size:12px!important;color:#c2d4c4!important;margin-top:14px!important}.opening-hero .hero-meta{margin-top:27px}.sticky-actions a:focus-visible{outline:2px solid #fff;outline-offset:-5px}
/* The journey: one decision at a time, with the useful details close at hand. */
body { font-size:16px; }
.journey-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin:0 0 38px; counter-reset:journey; }
.journey-steps>article { position:relative; min-width:0; padding:25px 27px; background:linear-gradient(120deg,#f8f6ed,#eef0e0); border:1px solid #a8b59966; }
.journey-steps>article>span { display:block; color:#52705b; font-size:12px; font-weight:500; letter-spacing:.12em; margin-bottom:14px; }
.journey-steps h3 { font:400 27px/1.25 var(--serif); letter-spacing:-.025em; margin-bottom:13px; }
.journey-steps p { font-size:15px; line-height:1.7; color:var(--muted); }
#lo-trinh { background-image:radial-gradient(ellipse at 0% 15%,#e7f0d54d,transparent 70%); }
#lo-trinh .section-head { margin-bottom:35px; }
#lo-trinh .path-options { gap:12px; }
#lo-trinh .path-button { min-height:87px; padding:19px 20px; background:#f4f2e9; border-color:#92a18a80; color:#254932; text-align:left; font-size:14px; line-height:1.55; font-weight:500; }
#lo-trinh .path-button:hover { background:#e9f3d6; border-color:#6c8b55; }
#lo-trinh .path-button.active,#lo-trinh .path-button[aria-pressed=true] { background:#e1f0bf; color:#173b28; border-color:#608441; box-shadow:inset 0 3px 0 #8da953; }
#lo-trinh .path-result { margin-top:20px; padding:37px 40px; background:linear-gradient(120deg,#153c2e,#16372c); color:#ecf0df; border:1px solid #65947777; border-left:3px solid #d9f875; box-shadow:0 10px 25px #102c1f08; }
#lo-trinh .path-result>.eyebrow { color:#b9db9b; font-size:11px; margin-bottom:15px; }
#lo-trinh .path-result>h3 { color:#f2f3e5; font-size:35px; max-width:760px; line-height:1.18; margin-bottom:18px; }
#lo-trinh .path-result>p:not(.eyebrow),#lo-trinh .path-result>.description { color:#cfddc9; font-size:16px; line-height:1.8; max-width:820px; }
.path-empty { padding:16px 0; font-size:17px; line-height:1.7; color:#d9e3ca; }
.path-empty>h3 { font-size:31px; color:#edf1df; margin-bottom:13px; }
.path-empty>p { font-size:16px; color:#bfd0b5; }
.path-result.path-empty { min-height:146px; }
.path-facts { display:flex; flex-wrap:wrap; gap:0; margin-top:25px; padding:22px 0; border-block:1px solid #a8c29c44; }
.path-facts>* { min-width:0; flex:1 1 220px; padding-right:25px; color:#e4ebd4; font-size:15px; }
.path-facts>*+* { padding-left:25px; border-left:1px solid #a8c29c44; }
.path-facts strong { display:block; font-weight:500; font-size:20px; color:#e7f9bc; line-height:1.5; }
.path-facts small,.path-facts span { font-size:13px; line-height:1.6; color:#c2d3b9; }
.path-steps { margin:26px 0 0; padding-left:21px; max-width:850px; font-size:15px; line-height:1.8; color:#d5e2cc; }
.path-steps ol { margin:0; padding-left:21px; }
.path-steps li { padding-left:7px; margin-bottom:9px; }
.path-steps li::marker { color:#c5e1a5; }
.path-actions { display:flex; flex-wrap:wrap; align-items:center; gap:25px; margin-top:28px; }
.path-actions>.button.gold { font-size:15px; min-height:60px; padding-inline:27px; }
.path-actions>.text-link { color:#d4eebd; border-color:#a5ca8677; font-size:14px; }
.path-detail { margin-top:24px; border-top:1px solid #a8c29c44; }
.path-detail>summary { list-style:none; min-height:49px; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:20px; color:#c3d7b5; font-size:14px; padding-block:13px; }
.path-detail>summary::-webkit-details-marker { display:none; }
.path-detail>summary:after { content:'+'; font-size:23px; line-height:1; color:#bddc9e; }
.path-detail[open]>summary:after { content:'−'; }
.path-detail>p,.path-detail>div { padding:0 0 17px; color:#bccfb0; font-size:14px; line-height:1.85; max-width:880px; }
.hero-note { color:#a8bd9e; font-size:13px; line-height:1.7; margin-top:17px; }
.hero-note a { color:#d9edbc; text-decoration:underline; text-decoration-color:#a1be8577; text-underline-offset:4px; }
.community-details { border-top:1px solid #a5c69a4d; margin-top:24px; }
.community-details>summary { min-height:54px; display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; color:#d8e6cb; font-size:15px; font-weight:500; cursor:pointer; padding:16px 0; }
.community-details>summary::-webkit-details-marker { display:none; }
.community-details>summary:after { content:'+'; font-size:23px; color:#b8d891; line-height:1; }
.community-details[open]>summary:after { content:'−'; }
.community-details>p,.community-details>div,.community-details>small { display:block; font-size:14px; line-height:1.85; color:#bbd1b2; padding-bottom:19px; }
.community-details ul { font-size:14px; line-height:1.85; color:#c8d9be; margin-top:0; }
.payment-terms { border-block:1px solid #97a38c66; margin-bottom:30px; }
.payment-terms>summary { min-height:52px; display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; padding:16px 0; font-size:15px; color:#324d39; cursor:pointer; }
.payment-terms>summary::-webkit-details-marker { display:none; }
.payment-terms>summary:after { content:'+'; font-size:22px; color:#64795a; }
.payment-terms[open]>summary:after { content:'−'; }
.payment-terms>p,.payment-terms>div { padding:0 0 18px; font-size:14px; line-height:1.85; color:var(--muted); }
details.deep-tier { display:block; padding:0; }
details.deep-tier>summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:1fr auto; align-items:center; gap:8px 28px; padding:29px 32px; position:relative; }
details.deep-tier>summary::-webkit-details-marker { display:none; }
details.deep-tier>summary>.eyebrow { grid-column:1; margin:0; font-size:11px; }
details.deep-tier>summary>h3,details.deep-tier>summary>strong:not(.deep-fee) { grid-column:1; font:400 30px/1.25 var(--serif); color:#254732; }
details.deep-tier>summary>.deep-fee,details.deep-tier>summary>span { grid-column:2; grid-row:1/3; font:400 28px/1.2 var(--serif); color:#254732; margin-right:29px; }
details.deep-tier>summary:after { content:'+'; position:absolute; right:27px; top:50%; transform:translateY(-50%); font-size:25px; color:#748963; }
details.deep-tier[open]>summary:after { content:'−'; }
details.deep-tier .deep-body { display:grid; grid-template-columns:1.2fr 1fr; gap:45px; padding:0 32px 31px; border-top:1px solid #b8bd9e88; margin-top:0; }
details.deep-tier .deep-body>div { padding-top:25px; min-width:0; }
details.deep-tier .deep-body p { font-size:15px; line-height:1.85; }
details.deep-tier .deep-body .eyebrow { font-size:11px; }
.catalog-disclosure { margin-top:30px; border-block:1px solid #9fa38f77; }
.catalog-disclosure>summary { list-style:none; position:relative; display:flex; align-items:baseline; justify-content:space-between; gap:25px; cursor:pointer; padding:28px 40px 28px 0; }
.catalog-disclosure>summary::-webkit-details-marker { display:none; }
.catalog-disclosure>summary>strong { font:400 32px/1.25 var(--serif); letter-spacing:-.025em; color:#254732; }
.catalog-disclosure>summary>span { font-size:14px; color:var(--muted); flex-shrink:0; }
.catalog-disclosure>summary:after { content:'+'; position:absolute; right:3px; top:27px; font-size:25px; color:#648455; }
.catalog-disclosure[open]>summary:after { content:'−'; }
.catalog-disclosure>div { padding-top:20px; padding-bottom:28px; }
@media(max-width:900px) {
  .journey-steps { gap:14px; margin-bottom:30px; }
  .journey-steps>article { padding:23px 20px; }
  .journey-steps h3 { font-size:24px; }
  .journey-steps p { font-size:14px; }
  #lo-trinh .path-button { font-size:14px; min-height:77px; }
  #lo-trinh .path-result { padding:32px; }
  details.deep-tier .deep-body { gap:30px; }
}
@media(max-width:640px) {
  body { font-size:16px; }
  .opening-stage .hero-desc,.tea-copy>p,.books-intro-copy>p:not(.eyebrow),.community-card>p:not(.eyebrow),.program-title p,.program-detail p { font-size:16px; }
  .journey-steps { grid-template-columns:1fr; gap:0; margin-bottom:26px; border:1px solid #a8b59977; background:linear-gradient(125deg,#f8f6ed,#eef0e0); }
  .journey-steps>article { padding:18px 20px; border:0; border-bottom:1px solid #a8b59966; background:none; display:grid; grid-template-columns:29px 1fr; gap:6px 15px; align-items:start; }
  .journey-steps>article:last-child { border-bottom:0; }
  .journey-steps>article>span { grid-column:1; grid-row:1/3; font-size:12px; padding-top:3px; margin:0; }
  .journey-steps h3 { grid-column:2; font:500 16px/1.5 var(--sans); letter-spacing:0; margin:0; }
  .journey-steps p { grid-column:2; font-size:14px; line-height:1.65; }
  #lo-trinh .section-head { margin-bottom:28px; }
  #lo-trinh .path-options { gap:10px; }
  #lo-trinh .path-button { min-height:79px; font-size:14px; padding:17px 16px; }
  #lo-trinh .path-button:last-child { min-height:60px; }
  #lo-trinh .path-result { margin-top:17px; padding:28px 24px; }
  #lo-trinh .path-result>h3 { font-size:30px; line-height:1.23; }
  #lo-trinh .path-result>p:not(.eyebrow),#lo-trinh .path-result>.description { font-size:16px; }
  .path-empty { font-size:16px; padding-block:7px; }
  .path-empty>h3 { font-size:27px; }
  .path-facts { margin-top:22px; padding-block:19px; gap:18px; }
  .path-facts>* { flex:1 1 100%; padding-right:0; font-size:15px; }
  .path-facts>*+* { padding-left:0; padding-top:16px; border-left:0; border-top:1px solid #a8c29c44; }
  .path-facts strong { font-size:22px; }
  .path-facts small,.path-facts span { font-size:14px; }
  .path-steps { margin-top:22px; font-size:15px; line-height:1.75; }
  .path-actions { flex-direction:column; align-items:flex-start; gap:22px; margin-top:25px; }
  .path-actions>.button.gold { max-width:100%; font-size:14px; padding-inline:22px; min-height:59px; }
  .path-actions>.text-link { font-size:14px; }
  .path-detail>summary { font-size:14px; }
  .hero-note { font-size:13px; margin-top:16px; }
  .community-details>summary { font-size:15px; }
  .community-details>p,.community-details>div,.community-details>small { font-size:14px; }
  .payment-terms>summary { font-size:15px; }
  details.deep-tier>summary { padding:25px 23px; grid-template-columns:1fr; gap:9px; }
  details.deep-tier>summary>.eyebrow { font-size:11px; max-width:260px; padding-right:20px; }
  details.deep-tier>summary>h3,details.deep-tier>summary>strong:not(.deep-fee) { grid-column:1; font-size:27px; }
  details.deep-tier>summary>.deep-fee,details.deep-tier>summary>span { grid-column:1; grid-row:auto; font-size:23px; margin-right:0; }
  details.deep-tier>summary:after { right:22px; top:25px; transform:none; }
  details.deep-tier .deep-body { grid-template-columns:1fr; padding:0 23px 25px; gap:0; }
  details.deep-tier .deep-body>div { padding-top:22px; }
  details.deep-tier .deep-body p { font-size:15px; }
  .catalog-disclosure { margin-top:23px; }
  .catalog-disclosure>summary { display:block; padding:24px 35px 24px 0; }
  .catalog-disclosure>summary>strong { font-size:28px; }
  .catalog-disclosure>summary>span { display:block; font-size:14px; margin-top:10px; }
  .catalog-disclosure>summary:after { top:23px; }
}
/* Match the final progressive-disclosure markup. */
.path-placeholder-icon { display:block; color:#c8e2a9; font-size:29px; line-height:1; margin-bottom:19px; }
#lo-trinh .path-result.path-empty { background:linear-gradient(120deg,#e7eddb,#dce7d4); color:#254732; border-color:#9bac8680; border-left-color:#93ab6e; box-shadow:none; }
#lo-trinh .path-result.path-empty>h3 { color:#2b4935; font-size:29px; }
#lo-trinh .path-result.path-empty>p { color:#5b6c53; }
#lo-trinh .path-result.path-empty .path-placeholder-icon { color:#698a53; }
details.deep-tier>summary { grid-template-columns:minmax(0,1fr) auto; }
details.deep-tier>summary>span { grid-column:1; grid-row:1; font:500 12px/1.5 var(--sans); letter-spacing:.09em; color:#50674b; margin:0; padding-right:30px; }
details.deep-tier>summary>strong:not(.deep-fee) { grid-column:2; grid-row:1/3; font:400 29px/1.3 var(--serif); color:#254732; margin-right:28px; letter-spacing:-.025em; }
details.deep-tier>summary>small { grid-column:1; grid-row:2; font-size:14px; line-height:1.7; color:var(--muted); }
details.deep-tier .deep-body>div>strong { display:block; font:400 30px/1.3 var(--serif); color:#254732; }
details.deep-tier .deep-body>div>strong>small { font:13px var(--sans); color:var(--muted); }
.tea-preparation { margin-top:23px; border-block:1px solid #98ad8777; }
.tea-preparation>summary { min-height:54px; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:20px; padding-block:16px; font-size:15px; color:#36553b; font-weight:500; cursor:pointer; }
.tea-preparation>summary::-webkit-details-marker { display:none; }
.tea-preparation>summary:after { content:'+'; font-size:23px; line-height:1; color:#758d61; }
.tea-preparation[open]>summary:after { content:'−'; }
.tea-preparation>ol { margin:0; padding:5px 0 8px 21px; font-size:15px; line-height:1.85; color:var(--muted); }
.tea-preparation li { padding-left:6px; margin-bottom:10px; }
.tea-preparation li::marker { color:#718958; }
.tea-preparation>p { font-size:14px; line-height:1.85; color:var(--muted); padding-bottom:22px; }
.catalog-disclosure>.filter-bar { padding-top:22px; padding-bottom:0; margin-bottom:20px; }
.catalog-disclosure>.model-grid { padding-top:0; }
.catalog-disclosure>.books-grid { padding-top:0; }
.catalog-disclosure>.real-world { padding-bottom:30px; }
.ledger-caption>span { display:block; margin-top:17px; font-size:13px; color:#e5efc9; line-height:1.6; }
.ledger-caption:after { display:none; }
@media(max-width:640px) {
  #lo-trinh .path-result.path-empty>h3 { font-size:27px; }
  details.deep-tier>summary { grid-template-columns:1fr; gap:10px; }
  details.deep-tier>summary>span { grid-column:1; grid-row:1; font-size:11px; max-width:100%; padding-right:30px; }
  details.deep-tier>summary>strong:not(.deep-fee) { grid-column:1; grid-row:2; font-size:29px; margin:0; }
  details.deep-tier>summary>small { grid-column:1; grid-row:3; font-size:14px; }
  details.deep-tier .deep-body>div>strong { font-size:28px; }
  .tea-preparation>summary { font-size:15px; }
  .tea-preparation>ol { font-size:15px; }
  .tea-preparation>p { font-size:14px; }
  .catalog-disclosure>summary>span { white-space:normal; }
}
/* Short route overview on small screens, leaving the choices close to the title. */
@media(max-width:640px){
 #lo-trinh{padding-top:58px}
 .journey-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
 .journey-steps>article{display:block;padding:15px 10px;border-bottom:0;border-right:1px solid #a8b59966;text-align:center}
 .journey-steps>article:last-child{border-right:0}
 .journey-steps>article>span{display:block;margin-bottom:7px;font-size:11px}
 .journey-steps h3{font-size:13px;line-height:1.55}
 .journey-steps p{display:none}
 .path-question{margin-top:10px;border-top:1px solid #a8c29c44}
}
.path-detail .path-question>summary{cursor:pointer;padding:16px 22px 16px 0;color:#d7e8ce;font-size:15px;line-height:1.65}
.path-detail .path-question>p{font-size:15px;line-height:1.85;color:#c5d8ba;padding-bottom:18px}
.path-detail>div>p{font-size:15px;line-height:1.85;color:#c5d8ba;margin-top:22px;margin-bottom:20px}
.faq-more{margin-top:25px;font-size:14px}
/* Make the purchase concrete: total payment, included work, separate decisions. */
.selected-fee>strong { font:400 clamp(34px,3.3vw,47px)/1.13 var(--serif); color:#173c2b; letter-spacing:-.035em; }
.selected-fee>strong>span { display:inline-block; font:14px/1.6 var(--sans); letter-spacing:0; color:#42624a; margin-left:6px; }
.selected-fee>small { font-size:12px; letter-spacing:.08em; color:#48624b; }
.program-bottom .selected-fee>p { font-size:16px; line-height:1.75; }
.fee-explainer { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:25px 35px; margin-top:28px; padding:30px; background:linear-gradient(125deg,#edf3e3,#e3ecd9); border:1px solid #9cad8688; }
.fee-explainer>* { min-width:0; }
.fee-explainer h3,.fee-explainer h4 { font:400 26px/1.25 var(--serif); letter-spacing:-.02em; color:#254732; margin-bottom:17px; }
.fee-explainer p { font-size:15px; line-height:1.8; color:#50674c; }
.fee-receives { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; margin-top:15px; }
.fee-receives>article,.fee-receives>div { padding:19px 15px; background:rgba(250,252,241,.64); border:1px solid #9cad8666; min-width:0; }
.fee-receives strong { display:block; font:400 39px/1.1 var(--serif); letter-spacing:-.045em; color:#2b6450; margin-bottom:12px; }
.fee-receives strong>small { font:13px var(--sans); letter-spacing:0; }
.fee-receives span,.fee-receives p,.fee-receives small { display:block; font:14px/1.6 var(--sans); color:#4b6347; }
.fee-receives strong>small { display:inline; }
.fee-calculation { margin-top:18px; padding:17px 0 0; border-top:1px solid #97ad8066; font-size:15px; line-height:1.8; color:#496044; }
.fee-calculation strong { font-weight:500; color:#214a33; }
.fee-calculation>span { display:block; font-size:14px; }
.fee-boundary { padding:24px 26px; background:#163e30; border:1px solid #75a17c77; color:#d8e7c9; }
.fee-boundary h3,.fee-boundary h4 { color:#e4f0d2; font-size:25px; }
.fee-boundary p,.fee-boundary li { font-size:15px; line-height:1.8; color:#c8dbc0; }
.fee-boundary strong { color:#e4f3c6; font-weight:500; }
.fee-boundary ul { margin:0; padding-left:18px; }
.fee-boundary li { margin-bottom:11px; padding-left:3px; }
.fee-boundary li::marker { color:#b2d997; }
.fee-boundary li:last-child { margin-bottom:0; }
.fee-checklist { grid-column:1/-1; border-top:1px solid #92a77d77; padding-top:20px; }
.fee-checklist>summary { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:49px; font-size:15px; font-weight:500; color:#335739; list-style:none; cursor:pointer; }
.fee-checklist>summary::-webkit-details-marker { display:none; }
.fee-checklist>summary:after { content:'+'; font-size:23px; line-height:1; color:#6b8959; }
.fee-checklist[open]>summary:after { content:'−'; }
.fee-checklist>ul,.fee-checklist>ol { margin:12px 0 0; padding-left:20px; color:#4f6548; font-size:15px; line-height:1.85; }
.fee-checklist li { margin-bottom:9px; padding-left:4px; }
.fee-checklist>p { margin-top:15px; }
.fee-example { grid-column:1/-1; padding:19px 23px; background:#f7f7e8; border-left:3px solid #81a969; font-size:15px; line-height:1.85; color:#496347; }
.fee-example>strong { display:block; font-weight:500; color:#2b5237; margin-bottom:8px; }
.fee-example p { font-size:15px; }
@media(max-width:900px) {
  .fee-explainer { padding:26px; gap:24px; }
  .fee-receives { gap:8px; }
  .fee-receives>article,.fee-receives>div { padding:18px 12px; }
  .fee-receives strong { font-size:35px; }
  .fee-boundary { padding:23px; }
}
@media(max-width:640px) {
  .selected-fee>strong { font-size:38px; line-height:1.16; }
  .selected-fee>strong>span { display:block; font-size:16px; margin-left:0; margin-top:7px; }
  .selected-fee>small { font-size:12px; }
  .program-bottom .selected-fee>p { font-size:16px; }
  .fee-explainer { grid-template-columns:1fr; padding:25px 21px; gap:25px; margin-top:23px; }
  .fee-explainer h3,.fee-explainer h4 { font-size:26px; margin-bottom:17px; }
  .fee-explainer p { font-size:16px; line-height:1.75; }
  .fee-receives { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:12px; }
  .fee-receives>article,.fee-receives>div { padding:16px 11px; }
  .fee-receives strong { font-size:36px; }
  .fee-receives span,.fee-receives p,.fee-receives small { font-size:14px; line-height:1.55; }
  .fee-calculation { font-size:16px; margin-top:19px; }
  .fee-calculation>span { font-size:15px; }
  .fee-boundary { padding:23px 21px; }
  .fee-boundary h3,.fee-boundary h4 { font-size:25px; }
  .fee-boundary p,.fee-boundary li { font-size:16px; line-height:1.75; }
  .fee-checklist { grid-column:1; padding-top:17px; }
  .fee-checklist>summary { font-size:16px; line-height:1.6; }
  .fee-checklist>ul,.fee-checklist>ol { font-size:16px; line-height:1.75; }
  .fee-example { grid-column:1; padding:20px; font-size:16px; line-height:1.75; }
  .fee-example p { font-size:16px; }
}
@media(max-width:375px) {
  .fee-explainer { padding-inline:18px; }
  .fee-receives { gap:7px; }
  .fee-receives>article,.fee-receives>div { padding-inline:9px; }
  .fee-receives strong { font-size:33px; }
  .fee-receives span,.fee-receives p,.fee-receives small { font-size:13px; }
  .selected-fee>strong { font-size:35px; }
}

/* Fee explanation occupies the complete program panel. */
.program-panel>.fee-explainer{grid-column:1/-1}.fee-boundary{color:#d8e7c9!important}
/* Five steps inspired by the owner's ecosystem map. */
.ecosystem-roadmap{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:28px 0}.roadmap-node{position:relative;padding:24px 18px;border:1px solid #88bc9b66;background:linear-gradient(145deg,#164a39,#0d2c25);color:#e7efd7}.roadmap-node .roadmap-number{display:block;width:38px;height:38px;margin-bottom:18px;border:1px solid #e3c877;border-radius:50%;color:#f4d88c;text-align:center;line-height:36px}.roadmap-node h3{font-size:23px;color:#f6e5b1;line-height:1.3;margin:0 0 12px}.roadmap-node p{font-size:15px;line-height:1.7;color:#d8e9d8}.roadmap-node:not(:last-child):after{content:'→';position:absolute;right:-15px;top:30px;color:#eacf81;z-index:1}.community-card .community-details p{line-height:1.8}.community-card>p{font-size:18px}.fee-cadence{padding:16px 0;border-bottom:1px solid #96ab8066}.fee-checklist p{line-height:1.85}
@media(max-width:1000px){.ecosystem-roadmap{grid-template-columns:1fr}.roadmap-node{padding:20px 24px 20px 75px}.roadmap-node .roadmap-number{position:absolute;left:22px;top:22px}.roadmap-node:not(:last-child):after{content:'↓';right:28px;top:auto;bottom:-19px}.roadmap-node h3{font-size:24px}.roadmap-node p{font-size:16px;margin-bottom:0}}
/* Audit v8: the menu must escape its header; important notes must remain readable. */
.opening-header { overflow:visible; z-index:60; }
.opening-header .menu-toggle { min-width:46px; min-height:46px; }
.opening-header .nav a:focus-visible,.opening-header .menu-toggle:focus-visible { outline:2px solid #d9f875; outline-offset:3px; }
.gs-role-note { margin-top:21px; padding:19px 21px; border:1px solid #8dbc8977; background:rgba(169,214,154,.065); color:#dae8cf; font-size:16px; line-height:1.75; }
.gs-role-note strong { color:#e5f6cd; font-weight:500; }
.tuition-select { display:block; width:100%; padding:25px; background:linear-gradient(125deg,#f8f6ed,#edf0e1); color:#254732; border:1px solid #90a576; text-align:left; font-size:16px; line-height:1.7; transition:background .25s,border-color .25s; }
.tuition-select:hover,.tuition-select.active,.tuition-select[aria-pressed=true],.tuition-select[aria-selected=true] { background:#e6efcf; border-color:#5c804b; box-shadow:inset 0 3px 0 #8cb567; }
.tuition-select>strong { display:block; font:400 36px/1.2 var(--serif); color:#224c35; letter-spacing:-.03em; }
.tuition-select>strong>small { font:15px/1.5 var(--sans); letter-spacing:0; }
.tuition-select>p { font-size:12px; letter-spacing:.09em; color:#50644b; margin-bottom:15px; }
.tuition-select>span { display:block; font-size:15px; color:#50644b; margin-top:12px; }
.tuition-select>div { border-top:1px solid #95a98366; padding-top:15px; margin-top:18px; }
.tuition-select>div>b { display:block; font-size:16px; font-weight:500; }
.tuition-select>div>span { font-size:15px; color:#50644b; }
.tea-request { margin-top:26px; padding:24px; background:#f4f6e9; border:1px solid #99ad8777; }
.tea-request h3,.tea-request h4 { font:400 26px/1.3 var(--serif); color:#2c513a; margin-bottom:17px; }
.tea-request p { font-size:16px; line-height:1.75; color:#54684c; }
.tea-template { display:block; resize:vertical; width:100%; min-width:0; min-height:195px; padding:17px 18px; margin:17px 0; border:1px solid #9ab18b; background:#fcfcf4; color:#2f5036; font:16px/1.7 var(--sans); border-radius:0; }
.tea-template:focus-visible { outline:2px solid #648d51; outline-offset:3px; }
.copy-status { min-height:25px; margin-top:13px; font-size:16px; line-height:1.7; color:#315839; }
.copy-status[hidden] { display:none; }
@media(max-width:900px) {
  .opening-header .nav { font-size:16px; padding:20px 24px; }
  .opening-header .nav>a { min-height:49px; padding-block:12px; }
  .opening-header .header-cta { font-size:14px; }
  .hero-cta-note { font-size:16px!important; line-height:1.75; }
  .community-card>small,.community-note,.community-details>p,.community-details>div,.community-details>small { font-size:16px; line-height:1.8; }
  .community-tags span { font-size:14px; }
  .payment-policy,.payment-terms>p,.payment-terms>div { font-size:16px; line-height:1.8; }
  .payment-terms>summary,.community-details>summary,.tea-preparation>summary { font-size:16px; }
  .path-facts small,.path-facts span,.path-detail>summary,.path-detail>p,.path-detail>div,.path-detail>div>p,.path-detail .path-question>p { font-size:16px; line-height:1.8; }
  .path-detail .path-question>summary { font-size:16px; }
  .fee-receives span,.fee-receives p,.fee-receives small { font-size:15px; line-height:1.65; }
  .fee-explainer p,.fee-calculation,.fee-checklist>ul,.fee-checklist>ol,.fee-example p { font-size:16px; }
  .fee-checklist>summary,.program-more summary { font-size:16px; }
  .deep-tier .deep-payment { font-size:16px!important; }
  details.deep-tier .deep-body p,details.deep-tier>summary>small { font-size:16px; }
  .tea-copy>small,.tea-preparation>p,.tea-preparation>ol { font-size:16px; }
  .tea-questions>span>strong { font-size:16px; }
  .model-details>summary,.model-details>p,.intro-more>summary,.intro-more p { font-size:16px; }
  .catalog-disclosure>summary>span,.swipe-hint { font-size:15px; }
  .source-note,.dialog-note { font-size:15px; line-height:1.8; }
  .book-group,.book-image>span { font-size:12px; }
  .faq-tools>label,.faq-count { font-size:14px!important; }
  .faq-search { font-size:16px; }
  .faq-list summary,.faq-list details>p { font-size:16px; }
  .journey-steps h3 { font-size:16px; }
  .section-head>p.eyebrow,.eyebrow { font-size:12px; }
  .gs-role-note { font-size:16px; }
}
@media(max-width:640px) {
  .opening-header .nav { left:0; right:0; top:73px; padding:19px 22px; }
  .tuition-overview article:has(.tuition-select) { display:block; padding:0; border:0; background:none; }
  .tuition-select { padding:24px 22px; min-height:44px; }
  .tuition-select>strong { font-size:34px; }
  .tuition-select>strong>small { display:block; font-size:16px; margin-top:7px; }
  .tuition-select>span,.tuition-select>div>span { font-size:16px; }
  .gs-role-note { padding:20px; }
  .tea-request { padding:23px 20px; }
  .tea-template { padding:16px; min-height:215px; }
  .sticky-actions>a { font-size:14px; min-height:56px; }
  .opening-stage .hero-actions .button.gold,.opening-stage .hero-actions .button.hero-secondary { font-size:14px; white-space:normal; line-height:1.55; }
}
@media(max-width:375px) {
  .opening-stage .hero-actions .button.gold,.opening-stage .hero-actions .button.hero-secondary { font-size:13px; }
  .sticky-actions>a { font-size:13px; }
  .fee-receives span,.fee-receives p,.fee-receives small { font-size:15px; }
}
@media(prefers-reduced-motion:reduce) { .tuition-select { transition:none; } }
.books-starter .community-note { color:#52634e; font-size:15px; line-height:1.8; }
@media(max-width:900px) { .books-starter .community-note { font-size:16px; } }
/* Ten-persona audit: preserve the whole fee card, not just its new action. */
@media(max-width:640px){
 .tuition-overview article:has(.tuition-select){padding:24px 22px;border:1px solid #90a576;background:linear-gradient(125deg,#f8f6ed,#edf0e1);}
 .tuition-overview article>span,.tuition-overview article>div>span{font-size:16px;line-height:1.7;}
 .tuition-overview article>strong>small{font-size:16px;}
 .tuition-overview .tuition-select{margin-top:20px;padding:16px;}
}

/* Distinguish learning, waiting room and formal investment commitment. */
.gs-entry-guide{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:32px 0}.gs-entry-guide article{padding:26px;border:1px solid #91b69b66;background:#143e32}.gs-entry-guide span{color:#d6f581;font-size:12px;letter-spacing:.1em}.gs-entry-guide h3{font:30px/1.3 var(--serif);color:#f3e8c6;margin:14px 0}.gs-entry-guide p{font-size:16px;line-height:1.8;color:#d9e7d4}.gs-entry-guide strong{color:#e5f7ad}@media(max-width:900px){.gs-entry-guide{grid-template-columns:1fr}.gs-entry-guide article{padding:22px}}
