/* Approved image-led chapters. */
:root{--ref-cream:#fffaf2;--ref-ink:#303735;--ref-gold:#9c754b}
.site-header,.site-header.is-scrolled{background:rgba(255,250,242,.93);border-bottom-color:rgba(156,117,75,.3)}
.header-inner{height:78px}
.brand{font-size:1.75rem}
.desktop-nav{font-size:.87rem}
.desktop-nav a:last-child,.site-header.is-scrolled .desktop-nav a:last-child{min-width:126px;text-align:center;border-color:#b99c78;padding:9px 18px}

/* First screen */
.hero{height:calc(100svh - 78px);min-height:700px;background:var(--ref-cream)}
.hero::after{content:"";display:block;position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,transparent 76%,rgba(255,250,242,.35) 90%,var(--ref-cream) 100%),linear-gradient(90deg,rgba(255,250,242,.99) 0%,rgba(255,250,242,.96) 23%,rgba(255,250,242,.88) 35%,rgba(255,250,242,.5) 48%,transparent 64%)}
.hero-visual{z-index:0}
.hero-visual img,.hero-visual:hover img{object-position:center center;transform:none}
.hero-copy{grid-column:1/-1;z-index:2;position:relative;padding:clamp(46px,5vw,86px) clamp(30px,4.8vw,82px) 92px;width:53%}
.hero-name{color:#8f6843;letter-spacing:.32em;font-size:.72rem;margin-bottom:22px}
.hero-name::before{width:38px;margin-right:20px}
.hero h1{color:#303735;font-size:clamp(5rem,7.55vw,8.6rem);line-height:.91;letter-spacing:-.067em}
.hero h1 em{color:#9b774f;font-weight:400}
.hero-deck{color:#5e5b56;max-width:32ch;margin-top:30px;font-size:clamp(1.18rem,1.55vw,1.58rem);line-height:1.36}
.hero-specialties{border-left:1px solid var(--ref-gold);padding-left:22px;margin-top:28px;letter-spacing:.22em;line-height:1.65;color:#77716a;max-width:54ch}
.primary-link{background:linear-gradient(105deg,#b48b5d,#815e40);border:1px solid #af885e;color:#fffaf2;border-radius:4px;min-width:min(100%,420px);padding:18px 30px;font-size:1.35rem;box-shadow:0 12px 26px rgba(88,59,30,.14)}
.primary-link:hover{background:linear-gradient(105deg,#997148,#705036);transform:translateY(-2px)}
.hero-secondary{font-size:.92rem;color:#5e5b56;border-color:#b99c78;margin-top:25px}
.hero-foot{width:46%;border:0;left:47%;bottom:26px;justify-content:center;color:#6e665b}
.hero-foot span:last-child{margin:0}

/* Approach image from the supplied scene, with the complete approved copy. */
#inside{position:relative;isolation:isolate;min-height:900px;padding:0;background:var(--ref-cream);color:var(--ref-ink);overflow:hidden}
#inside .section-inner{display:block;min-height:900px;max-width:none;margin:0}
#inside .photo{position:absolute;z-index:-2;inset:0;display:block;width:100%;max-width:none;height:100%;min-height:0;margin:0;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none;transition:none}
#inside .photo img{width:100%;height:100%;object-fit:cover;object-position:left center;transform:none}
#inside::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,250,242,.08) 37%,rgba(255,250,242,.78) 52%,var(--ref-cream) 67%,var(--ref-cream) 100%)}
#inside::before{content:"";position:absolute;z-index:0;inset:0 0 auto;height:clamp(110px,12vw,180px);pointer-events:none;background:linear-gradient(180deg,var(--ref-cream),rgba(255,250,242,0))}
#inside .section-copy{position:relative;z-index:2;width:47%;max-width:760px;margin-left:auto;padding:90px clamp(45px,5vw,86px) 100px 24px}
#inside .section-copy.reveal,#inside .section-copy.reveal.visible{opacity:1;transform:none;transition:none}
#inside .section-copy.reveal.visible h2{animation:none}
#inside .section-copy h2{max-width:11ch;color:var(--ref-ink);font-size:clamp(4rem,5.1vw,6.3rem);line-height:.98;letter-spacing:-.06em}
#inside .section-copy h2 em{color:var(--ref-gold);font-weight:400}
#inside .section-copy p,#inside .section-copy p:first-of-type,#inside .section-copy strong{color:#4d514e;font-family:var(--sans);font-size:clamp(1.02rem,1.15vw,1.18rem);line-height:1.56;max-width:58ch}
#inside .eyebrow{color:#9b754c}

/* About image and copy share one uninterrupted surface. */
#about{position:relative;isolation:isolate;min-height:900px;padding:0;background:var(--ref-cream);overflow:hidden}
#about .section-inner{display:block;max-width:none;min-height:900px;margin:0}
#about .photo{position:absolute;z-index:-2;inset:0 -17% 0 17%;display:block;width:100%;max-width:none;height:100%;min-height:0;margin:0;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none;transition:none}
#about .photo img{width:100%;height:100%;object-fit:cover;object-position:center center;transform:none}
#about::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.98) 29%,rgba(255,250,242,.79) 44%,rgba(255,250,242,.12) 64%,transparent 78%)}
#about .section-copy{position:relative;z-index:2;max-width:760px;width:50%;padding:80px 24px 90px clamp(48px,6vw,108px)}
#about .section-copy h2{font-size:clamp(4.5rem,6.7vw,7.6rem);line-height:.94;letter-spacing:-.062em;max-width:8ch;margin-bottom:28px}
#about .section-copy p,#about .section-copy p:first-of-type{font-family:var(--sans);font-size:clamp(1rem,1.1vw,1.14rem);line-height:1.54;margin-top:16px;max-width:57ch}
#about .section-copy p:first-of-type{font-family:var(--serif);font-size:1.4rem}
#about .eyebrow{color:#9b754c}

/* Answers: light through the chapel becomes the chapter background. */
#answers{position:relative;isolation:isolate;min-height:850px;padding:0;background:var(--ref-cream);overflow:hidden;color:var(--ref-ink)}
#answers .section-inner{display:block;max-width:none;min-height:850px;margin:0}
#answers .photo{position:absolute;z-index:-2;inset:0 auto 0 0;display:block;width:61%;max-width:none;height:100%;min-height:0;margin:0;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none;transition:none}
#answers .photo img{width:100%;height:100%;object-fit:cover;object-position:55% center;transform:none}
#answers::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,250,242,.08) 34%,rgba(255,250,242,.78) 49%,var(--ref-cream) 61%,var(--ref-cream) 100%)}
#answers .section-copy{position:relative;z-index:2;width:44%;max-width:850px;margin-left:auto;padding:86px clamp(44px,5.2vw,92px) 95px 15px}
#answers .section-copy h2{max-width:12ch;color:var(--ref-ink);font-size:clamp(4rem,5.25vw,6.2rem);line-height:.99;letter-spacing:-.058em}
#answers .section-copy h2 em{display:block;color:var(--ref-gold);font-weight:400}
#answers .section-copy p,#answers .section-copy p:first-of-type{color:#4d514e;font-family:var(--sans);font-size:clamp(1.02rem,1.15vw,1.18rem);line-height:1.53;max-width:55ch;margin-top:22px}
#answers .eyebrow{color:#9b754c}

/* Requests and the four directions form one uninterrupted image-led chapter. */
#requests{position:relative;isolation:isolate;display:flex;flex-direction:column;max-width:none;min-height:940px;margin:0;padding:76px clamp(40px,4.6vw,78px) 54px;background:var(--ref-cream);overflow:hidden}
#requests .requests-top{display:contents}
#requests .requests-top::after{display:none}
#requests .requests-top .photo{position:absolute;z-index:-2;inset:0;display:block;width:100%;max-width:none;height:100%;min-height:0;margin:0;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none}
#requests .requests-top .photo img{width:100%;height:100%;object-fit:cover;object-position:center center;transform:none}
#requests::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.98) 17%,rgba(255,250,242,.9) 28%,rgba(255,250,242,.3) 47%,transparent 65%),linear-gradient(0deg,rgba(255,250,242,.99),rgba(255,250,242,.57) 12%,transparent 32%)}
#requests .requests-heading{position:relative;z-index:2;align-self:flex-start;width:min(44%,620px);max-width:none;padding:0 0 36px clamp(0px,3.6vw,58px)}
#requests .requests-heading h2{font-size:clamp(4.1rem,5.9vw,6.7rem);line-height:.96;letter-spacing:-.06em;max-width:10ch;margin-bottom:27px}
#requests .requests-heading h2 em{color:var(--ref-gold);font-weight:400}
#requests .requests-heading p{font-size:clamp(.98rem,1.08vw,1.15rem);line-height:1.48;margin-top:17px;max-width:48ch;color:#4d514e}
#requests .eyebrow{color:#9b754c}
#requests .topics{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:10px;width:100%;max-width:none;margin:auto 0 0;padding:0;border:0;background:none}
#requests .topic{position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;min-height:238px;padding:23px 27px 24px;border:1px solid rgba(189,160,128,.34);border-radius:15px;background:rgba(255,252,248,.94);box-shadow:0 17px 34px rgba(71,48,29,.08);backdrop-filter:blur(7px);overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,background .35s ease}
#requests .topic:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(71,48,29,.13);background:#fffcf8}
#requests .topic::after{content:"";position:absolute;z-index:0;top:45px;left:91px;right:94px;height:1px;background:linear-gradient(90deg,#c5aa8b,transparent);pointer-events:none}
#requests .topic-num{position:relative;z-index:1;display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;background:#f8efe6;color:#9b754c;font-family:var(--serif);font-size:1.28rem;letter-spacing:0}
#requests .topic h3{min-height:0;margin:17px 0 10px;font-size:clamp(1.4rem,1.55vw,1.75rem);line-height:1.08;letter-spacing:-.03em;color:var(--ref-ink)}
#requests .topic p{margin:0;color:#6c716f;font-size:clamp(.86rem,.99vw,1rem);line-height:1.38}
#requests .topic-icon{position:absolute;z-index:1;top:18px;right:23px;display:block;width:63px;height:63px;border:1px solid #cda777;border-radius:50%;background-color:#fffcf8;background-position:center;background-repeat:no-repeat;background-size:31px 31px}
#requests .topic:nth-child(1) .topic-icon{background-image:url('/assets/request-growth.svg')}
#requests .topic:nth-child(2) .topic-icon{background-image:url('/assets/request-resources.svg')}
#requests .topic:nth-child(3) .topic-icon{background-image:url('/assets/request-relations.svg')}
#requests .topic:nth-child(4) .topic-icon{background-image:url('/assets/request-energy.svg')}

/* Approach: the original portrait is integrated into the warm stone landscape. */
#approach{position:relative;isolation:isolate;min-height:990px;padding:0;background:var(--ref-cream);color:var(--ref-ink);overflow:hidden}
#approach .section-inner{display:block;max-width:none;min-height:990px;margin:0}
#approach.story-section .photo{position:absolute;z-index:-2;inset:0!important;display:block;width:100%!important;max-width:none;height:100%!important;min-height:0!important;max-height:none;margin:0!important;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none}
#approach .photo img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;transform:none}
#approach::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.99) 24%,rgba(255,250,242,.88) 37%,rgba(255,250,242,.35) 53%,transparent 67%)}
#approach .section-copy{position:relative;z-index:2;width:51%;max-width:800px;margin:0;padding:65px 22px 80px clamp(48px,6vw,108px)}
#approach .section-copy h2{max-width:12ch;margin-bottom:26px;color:var(--ref-ink);font-size:clamp(3.8rem,5.5vw,6.2rem);line-height:.96;letter-spacing:-.055em}
#approach .section-copy p,#approach .section-copy p:first-of-type,#approach .section-copy strong{color:#4d514e;font-family:var(--sans);font-size:clamp(1rem,1.1vw,1.14rem);line-height:1.48}
#approach .section-copy p{max-width:56ch;margin-top:16px}
#approach .section-copy blockquote{max-width:56ch;margin-top:28px;border-color:#b99c78;color:var(--ref-ink)}
#approach .section-copy blockquote strong{color:var(--ref-ink)}
#approach .eyebrow{color:#9b754c}

/* Higher Self: keep the original portrait and stone columns intact. */
#higher-self{position:relative;isolation:isolate;min-height:900px;padding:0;background:var(--ref-cream);color:var(--ref-ink);overflow:hidden}
#higher-self .section-inner{display:block;max-width:none;min-height:900px;margin:0}
#higher-self.story-section .photo{position:absolute;z-index:-2;inset:0!important;display:block;width:100%!important;max-width:none;height:100%!important;min-height:0!important;max-height:none;margin:0!important;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none}
#higher-self .photo img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;transform:none}
#higher-self::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 0%,rgba(255,250,242,.08) 35%,rgba(255,250,242,.7) 50%,rgba(255,250,242,.97) 64%,var(--ref-cream) 78%)}
#higher-self .section-copy{position:relative;z-index:2;width:48%;max-width:820px;margin-left:auto;padding:76px clamp(45px,5.4vw,95px) 90px 20px}
#higher-self .section-copy h2{margin-bottom:34px;color:var(--ref-ink);font-size:clamp(5rem,7vw,8rem);line-height:.95;letter-spacing:-.055em}
#higher-self .section-copy p,#higher-self .section-copy strong{max-width:55ch;color:#4d514e;font-family:var(--sans);font-size:clamp(1rem,1.15vw,1.2rem);line-height:1.55}
#higher-self .section-copy p{margin-top:22px}
#higher-self .eyebrow{color:#9b754c}

@media(max-width:1100px) and (min-width:761px){
  .hero-copy{width:59%}
  .hero h1{font-size:clamp(4.5rem,7.4vw,6.8rem)}
  #inside .section-copy{width:52%}
  #about .section-copy,#requests .requests-heading{width:55%}
  #answers .section-copy{width:50%}
  #inside .section-copy h2,#about .section-copy h2,#requests .requests-heading h2{font-size:clamp(3.4rem,5.2vw,5.4rem)}
  #answers .section-copy h2{font-size:clamp(3.4rem,5.2vw,5.4rem)}
  #requests .topics{grid-template-columns:repeat(2,minmax(0,1fr))}
  #requests .topic{min-height:225px}
}
@media(max-width:760px){
  .header-inner{height:70px}
  .brand{font-size:1.5rem}
  .hero{display:flex;flex-direction:column;min-height:0;height:auto;background:var(--ref-cream)}
  .hero::after{display:none}
  .hero-visual{order:1;position:relative;z-index:0;width:100%;height:clamp(370px,108vw,600px);margin:0;-webkit-mask-image:none;mask-image:none}
  .hero-visual picture{position:relative;z-index:0}
  .hero-visual::after{content:"";display:block;position:absolute;z-index:2;inset:auto 0 0;height:60%;background:linear-gradient(180deg,transparent,rgba(255,250,242,.52) 55%,var(--ref-cream));pointer-events:none}
  .hero-visual img,.hero-visual:hover img{object-fit:cover;object-position:72% center;transform:none;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 50%,transparent 100%)}
  .hero-copy{order:2;display:block;width:100%;max-width:none;height:auto;min-height:0;margin-top:-72px;padding:0 6vw 45px;z-index:2}
  .hero-name{font-size:.65rem;margin-bottom:22px}
  .hero-name::before{width:30px}
  .hero h1{font-size:clamp(3.6rem,13.3vw,6.2rem);line-height:.91;letter-spacing:-.07em;white-space:normal}
  .hero-deck{max-width:34ch;margin-top:24px;font-size:clamp(1.05rem,4.25vw,1.45rem);line-height:1.39}
  .hero-specialties{max-width:100%;margin-top:25px;padding-left:17px;font-size:.66rem;letter-spacing:.18em}
  .primary-link{display:flex;width:100%;min-width:0;max-width:none;margin-top:29px;padding:16px 20px;font-size:clamp(1.1rem,4.3vw,1.45rem)}
  .hero-secondary{margin-top:24px;font-size:.91rem}
  .hero-foot{order:3;position:relative;width:auto;left:auto;bottom:auto;margin:0 6vw 25px;padding:12px 0 0;border:0;text-align:center;justify-content:center}

  #inside,#about{min-height:0;padding:0;background:var(--ref-cream);overflow:hidden}
  #inside::before{display:none}
  #inside .section-inner,#about .section-inner{display:block;min-height:0}
  #inside.story-section .photo,#about.story-section .photo{inset:0 0 auto 0;width:100%;max-width:none;height:clamp(430px,125vw,650px)!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important}
  #inside .photo img,#about .photo img{width:100%;height:100%;object-fit:cover}
  #inside.story-section .photo img{object-position:0% center}
  #about .photo img{object-position:65% center}
  #inside.story-section .photo::after,#about.story-section .photo::after{content:"";display:block;position:absolute;z-index:2;inset:auto 0 0;height:43%;background:linear-gradient(180deg,transparent,rgba(255,250,242,.62) 58%,var(--ref-cream));pointer-events:none}
  #inside::after,#about::after{background:linear-gradient(180deg,transparent 0%,rgba(255,250,242,.06) 29%,var(--ref-cream) 56%,var(--ref-cream) 100%)}
  #inside .section-copy,#about .section-copy{width:100%;max-width:none;margin:0;padding:clamp(365px,100vw,540px) 6vw 80px}
  #inside .section-copy h2,#about .section-copy h2{max-width:100%;font-size:clamp(3.3rem,11.3vw,5.6rem);line-height:.99;margin-bottom:24px;hyphens:none!important;overflow-wrap:normal!important;word-break:normal;text-wrap:balance}
  #inside .section-copy p,#inside .section-copy p:first-of-type,#inside .section-copy strong,#about .section-copy p,#about .section-copy p:first-of-type{font-size:clamp(1rem,4.05vw,1.2rem);line-height:1.5}
  #about .section-copy p:first-of-type{font-size:1.23rem}
  #inside .section-copy p,#about .section-copy p{margin-top:17px}

  #answers{min-height:0;padding:0;background:var(--ref-cream)}
  #answers .section-inner{display:block;min-height:0}
  #answers.story-section .photo{inset:0 0 auto 0;width:100%;max-width:none;height:clamp(390px,105vw,590px)!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important}
  #answers .photo img{width:100%;height:100%;object-fit:cover;object-position:center center}
  #answers.story-section .photo::after{content:"";display:block;position:absolute;z-index:2;inset:auto 0 0;height:48%;background:linear-gradient(180deg,transparent,rgba(255,250,242,.62) 58%,var(--ref-cream));pointer-events:none}
  #answers::after{background:linear-gradient(180deg,transparent 0%,rgba(255,250,242,.08) 27%,var(--ref-cream) 53%,var(--ref-cream) 100%)}
  #answers .section-copy{width:100%;max-width:none;margin:0;padding:clamp(322px,86vw,480px) 6vw 75px}
  #answers .section-copy h2{max-width:100%;font-size:clamp(2.4rem,9.6vw,4.7rem);line-height:1.01;margin-bottom:22px;hyphens:none!important;overflow-wrap:normal!important;word-break:normal;text-wrap:wrap}
  #answers .section-copy p,#answers .section-copy p:first-of-type{font-size:clamp(1rem,4.05vw,1.2rem);line-height:1.5;margin-top:17px}

  #requests{min-height:0;padding:0 6vw 72px;background:var(--ref-cream)}
  #requests .requests-top{display:contents}
  #requests .requests-top .photo{inset:0 0 auto 0;width:100%;height:clamp(480px,125vw,730px);min-height:0;aspect-ratio:auto;margin:0}
  #requests .requests-top .photo img{object-fit:cover;object-position:76% center}
  #requests .requests-top .photo::after{content:"";display:block;position:absolute;inset:44% 0 0;height:auto;background:linear-gradient(180deg,transparent,rgba(255,250,242,.85) 53%,var(--ref-cream) 85%);pointer-events:none}
  #requests::after{background:linear-gradient(180deg,rgba(255,250,242,.03) 0%,rgba(255,250,242,.2) 30%,var(--ref-cream) 72%,var(--ref-cream) 100%)}
  #requests .requests-heading{width:100%;max-width:none;padding:clamp(320px,84vw,480px) 0 38px}
  #requests .requests-heading h2{font-size:clamp(3.2rem,10.8vw,5.2rem);line-height:1.01;max-width:10ch}
  #requests .requests-heading p{font-size:clamp(1rem,4.15vw,1.22rem);max-width:42ch;line-height:1.5;margin-top:18px}
  #requests .topics{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:0;background:none}
  #requests .topic{min-height:230px;padding:20px}
  #requests .topic h3{font-size:clamp(1.35rem,3.4vw,1.7rem)}
  #requests .topic p{font-size:clamp(.9rem,2.1vw,1rem)}
}
@media(max-width:420px){
  .hero-visual{height:108vw}
  #inside .section-copy,#about .section-copy{padding-top:98vw}
  #inside .section-copy h2,#about .section-copy h2{font-size:10.6vw}
  #answers .section-copy{padding-top:86vw}
  #answers .section-copy h2{font-size:9.6vw}
  #requests .requests-heading h2{font-size:10.7vw}
  #requests .topics{grid-template-columns:1fr}
  #requests .topic{min-height:0;padding:20px 23px 24px}
  #requests .topic h3{font-size:1.55rem}
  #requests .topic p{font-size:.96rem}
}
@media(max-width:900px){
  #higher-self{min-height:0;padding:0;background:var(--ref-cream)}
  #higher-self .section-inner{display:block;min-height:0}
  #higher-self.story-section .photo{inset:0 0 auto 0!important;width:100%!important;height:clamp(590px,160vw,730px)!important;min-height:0!important;max-width:none;aspect-ratio:auto;margin:0!important}
  #higher-self.story-section .photo img{object-fit:cover;object-position:3% center}
  #higher-self.story-section .photo::after{content:"";display:block;position:absolute;inset:72% 0 0;height:auto;background:linear-gradient(180deg,transparent,rgba(255,250,242,.55) 55%,var(--ref-cream) 100%);pointer-events:none}
  #higher-self::after{background:none}
  #higher-self .section-copy{width:100%;max-width:none;margin:0;padding:clamp(540px,148vw,670px) 6vw 74px}
  #higher-self .section-copy h2{margin-bottom:24px;font-size:clamp(3.7rem,14vw,6rem)}
  #higher-self .section-copy p,#higher-self .section-copy strong{font-size:clamp(1rem,4vw,1.18rem);line-height:1.5}
  #approach{min-height:0;padding:0;background:var(--ref-cream);color:var(--ref-ink)}
  #approach .section-inner{display:block;min-height:0}
  #approach.story-section .photo{inset:0 0 auto 0!important;width:100%!important;height:clamp(540px,145vw,740px)!important;min-height:0!important;aspect-ratio:auto;margin:0!important}
  #approach .photo img{object-fit:cover;object-position:77% center}
  #approach.story-section .photo::after{content:"";display:block;position:absolute;inset:70% 0 0;height:auto;background:linear-gradient(180deg,transparent,rgba(255,250,242,.65) 55%,var(--ref-cream) 100%);pointer-events:none}
  #approach::after{background:none}
  #approach .section-copy{width:100%;max-width:none;margin:0;padding:clamp(490px,132vw,670px) 6vw 74px}
  #approach .section-copy h2{max-width:13ch;margin-bottom:0;font-size:clamp(2.65rem,10.5vw,5rem);line-height:1.02}
  #approach .section-copy p:first-of-type{margin-top:18px}
  #approach .section-copy p,#approach .section-copy p:first-of-type,#approach .section-copy strong{font-size:clamp(1rem,4vw,1.16rem);line-height:1.49}
  #approach .section-copy p{margin-bottom:0}
}
@media(prefers-reduced-motion:reduce){
  .hero-visual,.hero-copy>*{animation:none!important}
  .hero-visual img,.photo img{transition:none!important;transform:none!important}
  #requests .topic:hover{transform:none}
}

/* Individual formats: one mountain scene, with the same chapter language as the surrounding sections. */
#formats{position:relative;isolation:isolate;overflow:hidden;padding:76px clamp(24px,4.5vw,78px) 105px;background:var(--ref-cream);color:var(--ref-ink)}
#formats::before{content:"";position:absolute;z-index:-2;inset:0;pointer-events:none;background:url('/assets/formats-mountain-sunrise.jpg') center right/cover no-repeat}
#formats::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.96) 24%,rgba(255,250,242,.76) 50%,rgba(255,250,242,.12) 78%),linear-gradient(0deg,var(--ref-cream),transparent 19%)}
#formats .formats-heading{position:relative;z-index:1;display:block;max-width:1500px;margin:0 auto}
#formats .formats-heading .eyebrow{display:block;margin-bottom:18px;color:#9b754c;letter-spacing:.28em}
#formats .formats-heading h2{max-width:22ch;margin:0;color:var(--ref-ink);font-size:clamp(3.4rem,5.55vw,6.4rem);line-height:.94;letter-spacing:-.055em}
#formats .formats-heading p{max-width:54ch;margin:20px 0 0;color:#555b57;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.43}
#formats .formats-grid{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;width:min(79%,1180px);max-width:none;margin:32px auto 0;padding:0;border:0;background:none}
#formats .formats-grid>.format-card{display:block;grid-column:auto;min-height:0;margin:0;padding:0;overflow:hidden;border:1px solid rgba(188,156,119,.3);border-radius:14px;background:rgba(255,252,248,.94);box-shadow:0 10px 26px rgba(71,48,29,.08);transform:none;transition:background .28s ease,box-shadow .28s ease,border-color .28s ease}
#formats .formats-grid>.format-card:hover,#formats .formats-grid>.format-card[open]{padding:0;transform:none;background:rgba(255,252,248,.98);border-color:rgba(168,123,73,.55);box-shadow:0 15px 34px rgba(71,48,29,.12)}
#formats .format-trigger,#formats .formats-grid>.format-card:first-child[open] .format-trigger{display:grid;grid-template-columns:62px minmax(180px,1fr) minmax(180px,1.25fr) max-content 44px;gap:clamp(13px,1.55vw,25px);align-items:start;padding:18px 22px;background:transparent;list-style:none;cursor:pointer}
#formats .format-trigger:hover,#formats .format-trigger:focus-visible,#formats .format-card[open] .format-trigger{background:rgba(255,248,240,.6)}
#formats .format-trigger::-webkit-details-marker{display:none}
#formats .format-trigger::marker{content:""}
#formats .format-index,#formats .formats-grid>.format-card:first-child[open] .format-index{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#f8efe6;color:#94683d;font-family:var(--serif);font-size:1.24rem;font-weight:400;letter-spacing:0}
#formats .format-trigger .format-title,#formats .formats-grid>.format-card:first-child[open] .format-title{margin:0;max-width:none;color:var(--ref-ink);font-size:clamp(1.55rem,2.2vw,2.3rem);line-height:1.08;letter-spacing:-.035em;hyphens:none;overflow-wrap:normal}
#formats .format-trigger .format-teaser,#formats .formats-grid>.format-card:first-child[open] .format-teaser{margin:3px 0 0;max-width:44ch;color:#646a66;font-size:clamp(.86rem,1.02vw,1rem);line-height:1.36}
#formats .format-trigger .format-price,#formats .formats-grid>.format-card:first-child[open] .format-price{margin:0;padding:0;color:#8e6443;font-family:var(--serif);font-size:clamp(1.03rem,1.3vw,1.3rem);white-space:nowrap}
#formats .format-expand,#formats .formats-grid>.format-card:first-child[open] .format-expand{display:grid;place-items:center;width:42px;height:42px;border:1px solid #b98d62;border-radius:50%;background:transparent;color:#94683d;font-size:0;transform:none;transition:background .25s ease,color .25s ease}
#formats .format-expand::before{content:"+";font-family:var(--sans);font-size:1.75rem;font-weight:300;line-height:1}
#formats .format-card[open] .format-expand::before{content:"−"}
#formats .format-card[open] .format-expand{background:#f8efe6}
#formats .format-panel,#formats .formats-grid>.format-card:first-child[open] .format-panel{display:block;min-width:0;max-width:none;margin:0;padding:10px 24px 22px;border:0;background:transparent;animation:none}
#formats .format-panel::before{content:none}
#formats .format-panel .format-description,#formats .formats-grid>.format-card:first-child .format-description{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 23px;width:100%;max-width:none;align-content:start;padding:6px 0 0}
#formats .format-panel .format-description p,#formats .formats-grid>.format-card:first-child .format-description p{position:relative;max-width:none;margin:0;padding:0 0 0 25px;color:#515853;font-size:clamp(.88rem,1vw,1rem);line-height:1.48}
#formats .format-panel .format-description p::before{content:"✧";position:absolute;top:0;left:0;color:#b48651;font-size:1.2rem;line-height:1.2}
#formats .format-panel .format-description strong{color:var(--ref-ink)}
#formats .format-panel .format-actions,#formats .formats-grid>.format-card:first-child .format-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px;margin:18px 0 0;padding:15px 0 0;border-top:1px solid rgba(177,143,107,.32)}
#formats .format-panel .text-link,#formats .formats-grid>.format-card:first-child .format-panel .text-link{display:inline-flex;justify-content:center;align-items:center;gap:14px;min-width:230px;min-height:48px;margin:0;padding:9px 19px;border:0;border-radius:100px;background:linear-gradient(105deg,#b48b5d,#815e40);color:#fffaf2;font-family:var(--serif);font-size:1.04rem;text-align:center;white-space:normal}
#formats .format-panel .text-link:hover{background:linear-gradient(105deg,#9d764e,#705036);color:#fffaf2}
#formats .format-panel .format-whatsapp{border-bottom:1px solid #aa8a68;color:#6b6257;font-size:.9rem;white-space:nowrap}
#formats .format-end{position:relative;z-index:1;width:min(79%,1180px);max-width:none;margin:38px auto 0;padding:25px 30px;border:1px solid rgba(188,156,119,.3);border-radius:14px;background:rgba(255,252,248,.91)}
#formats .formats-common{position:relative;z-index:1;width:min(79%,1180px);margin:38px auto 0;padding:28px 30px;background:rgba(255,252,248,.91);border-top:1px solid rgba(168,123,73,.5)}
#formats .formats-common p{max-width:76ch;margin:0 auto;text-align:left;font-size:1rem;line-height:1.8}
@media(max-width:1150px){#formats .formats-common{width:100%}}
@media(max-width:600px){#formats .formats-common{margin-top:28px;padding:23px}}

@media(max-width:1150px){
  #formats .formats-grid,#formats .format-end{width:100%}
  #formats .format-trigger,#formats .formats-grid>.format-card:first-child[open] .format-trigger{grid-template-columns:60px minmax(160px,1fr) max-content 42px}
  #formats .format-trigger .format-teaser{grid-column:2/4;grid-row:2}
  #formats .format-trigger .format-price{grid-column:3;grid-row:1}
  #formats .format-trigger .format-expand{grid-column:4;grid-row:1}
  #formats .format-panel .format-description{grid-template-columns:1fr}
}
@media(max-width:760px){
  #formats{padding:0 18px 88px;background:var(--ref-cream)}
  #formats::before{inset:0 0 auto;height:clamp(560px,145vw,700px);background-position:24% center}
  #formats::after{background:linear-gradient(180deg,transparent 0,rgba(255,250,242,.08) 230px,rgba(255,250,242,.6) 390px,var(--ref-cream) 535px,var(--ref-cream) 100%)}
  #formats .formats-heading{padding-top:clamp(380px,105vw,495px)}
  #formats .formats-heading h2{font-size:clamp(2.85rem,11.3vw,4.7rem);line-height:.99}
  #formats .formats-heading p{max-width:34ch;margin-top:17px;font-size:1rem;line-height:1.4}
  #formats .formats-grid{gap:12px;margin-top:32px}
  #formats .formats-grid>.format-card{border-color:rgba(188,156,119,.28);border-radius:19px;box-shadow:0 14px 28px rgba(71,48,29,.09)}
  #formats .format-trigger,#formats .formats-grid>.format-card:first-child[open] .format-trigger{grid-template-columns:49px minmax(0,1fr) 38px;gap:5px 13px;padding:18px}
  #formats .format-index,#formats .formats-grid>.format-card:first-child[open] .format-index{grid-column:1;grid-row:1/3;width:46px;height:46px;font-size:1.12rem}
  #formats .format-trigger .format-title,#formats .formats-grid>.format-card:first-child[open] .format-title{grid-column:2;grid-row:1;margin:0;font-size:clamp(1.5rem,6.2vw,1.9rem)}
  #formats .format-trigger .format-price,#formats .formats-grid>.format-card:first-child[open] .format-price{grid-column:2;grid-row:2;font-size:1.02rem;text-align:left;white-space:normal}
  #formats .format-trigger .format-expand{grid-column:3;grid-row:1/3;width:36px;height:36px;align-self:start}
  #formats .format-expand::before{font-size:1.5rem}
  #formats .format-trigger .format-teaser,#formats .formats-grid>.format-card:first-child[open] .format-teaser{grid-column:1/-1;grid-row:3;position:relative;margin-top:8px;padding-left:42px;font-size:.92rem;line-height:1.38}
  #formats .format-trigger .format-teaser::before{content:"✧";position:absolute;left:0;top:-2px;display:grid;place-items:center;width:32px;height:32px;border:1px solid #d0aa7e;border-radius:50%;color:#b48651;font-size:1.25rem}
  #formats .format-card:nth-child(2) .format-teaser::before{content:"≋"}
  #formats .format-card:nth-child(3) .format-teaser::before{content:"✥"}
  #formats .format-card:nth-child(4) .format-teaser::before{content:"◎"}
  #formats .format-card:nth-child(5) .format-teaser::before{content:"✦"}
  #formats .format-panel,#formats .formats-grid>.format-card:first-child[open] .format-panel{display:block;margin:0;padding:0 12px 18px}
  #formats .format-panel .format-description,#formats .formats-grid>.format-card:first-child .format-description{display:block;padding:0 8px}
  #formats .format-panel .format-description p,#formats .formats-grid>.format-card:first-child .format-description p{margin:0 0 12px;padding-left:24px;font-size:.96rem;line-height:1.48}
  #formats .format-panel .format-actions,#formats .formats-grid>.format-card:first-child .format-actions{display:flex;flex-direction:column;align-items:stretch;gap:13px;margin:10px 8px 0;padding-top:17px}
  #formats .format-panel .text-link,#formats .formats-grid>.format-card:first-child .format-panel .text-link{width:100%;min-width:0;min-height:52px;margin:0}
  #formats .format-panel .format-whatsapp{align-self:center;font-size:.92rem}
  #formats .format-end{display:block;margin-top:28px;padding:23px}
}
@media(prefers-reduced-motion:reduce){
  #formats .format-card,#formats .format-expand{transition:none!important}
}

/* My work: the original horse portrait flows into the chapter copy. */
#no-ready-answers{position:relative;isolation:isolate;min-height:900px;padding:0;overflow:hidden;background:var(--ref-cream);color:var(--ref-ink)}
#no-ready-answers .section-inner{display:block;max-width:none;min-height:900px;margin:0}
#no-ready-answers.story-section .photo{position:absolute;z-index:-2;inset:0 0 0 auto!important;display:block;width:80%!important;max-width:none;height:100%!important;min-height:0!important;max-height:none;margin:0!important;outline:0;clip-path:none;-webkit-mask-image:none;mask-image:none;opacity:1;transform:none}
#no-ready-answers .photo img{width:100%;height:100%;object-fit:cover;object-position:center 50%;filter:sepia(.12) saturate(.9) brightness(1.03);transform:none}
#no-ready-answers::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.99) 24%,rgba(255,250,242,.88) 35%,rgba(255,250,242,.38) 47%,transparent 64%)}
#no-ready-answers::before{content:"";position:absolute;z-index:0;top:22%;left:39%;width:930px;height:930px;border:1px solid rgba(170,125,76,.4);border-radius:50%;pointer-events:none}
#no-ready-answers .section-copy{position:relative;z-index:1;order:initial;width:49%;max-width:720px;margin:0;padding:76px 0 88px clamp(46px,8.3vw,145px)}
#no-ready-answers .section-copy .eyebrow{color:#9b754c;letter-spacing:.25em}
#no-ready-answers .section-copy h2{max-width:13ch;margin:0 0 34px;color:var(--ref-ink);font-size:clamp(3.7rem,5.15vw,6rem);line-height:.98;letter-spacing:-.055em}
#no-ready-answers .section-copy p,#no-ready-answers .section-copy strong{max-width:53ch;color:#4d5451;font-family:var(--sans);font-size:clamp(1rem,1.16vw,1.2rem);line-height:1.48}
#no-ready-answers .section-copy p{margin:0 0 21px}
#no-ready-answers .section-copy strong{font-weight:700;color:var(--ref-ink)}
@media(max-width:900px){
  #no-ready-answers{min-height:0;padding:0;background:var(--ref-cream)}
  #no-ready-answers .section-inner{display:block;min-height:0}
  #no-ready-answers.story-section .photo{inset:0 0 auto 0!important;width:100%!important;height:clamp(490px,130vw,700px)!important;aspect-ratio:auto;margin:0!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 58%,transparent 100%)!important}
  #no-ready-answers .photo img{object-position:64% center}
  #no-ready-answers.story-section .photo::after{display:none}
  #no-ready-answers::after{background:none}
  #no-ready-answers::before{top:54%;left:58%;width:660px;height:660px}
  #no-ready-answers .section-copy{width:100%;max-width:none;margin:0;padding:clamp(440px,117vw,620px) 6vw 66px}
  #no-ready-answers .section-copy .eyebrow{margin-bottom:24px}
  #no-ready-answers .section-copy h2{max-width:15ch;margin-bottom:25px;font-size:clamp(2.8rem,10.6vw,5rem);line-height:1.02}
  #no-ready-answers .section-copy p,#no-ready-answers .section-copy strong{font-size:clamp(1rem,4vw,1.18rem);line-height:1.49}
  #no-ready-answers .section-copy p{margin-bottom:19px}
}

/* Contact: boat portrait and a soft transition into the existing links. */
#contact{position:relative;isolation:isolate;display:block;min-height:860px;overflow:hidden;padding:0;background:var(--ref-cream);color:var(--ref-ink)}
#contact .contact-photo{position:absolute;z-index:-2;inset:0!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;max-height:none!important;margin:0!important;opacity:1;transform:none;clip-path:none;-webkit-mask-image:none;mask-image:none}
#contact .contact-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:sepia(.07) saturate(.92) brightness(1.04);transform:none}
#contact .contact-photo::after{display:none}
#contact::after{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.99) 27%,rgba(255,250,242,.91) 38%,rgba(255,250,242,.47) 52%,transparent 68%)}
#contact .contact-copy{position:relative;z-index:1;width:52%;max-width:850px;margin:0;padding:92px 0 85px clamp(48px,11.5vw,195px)}
#contact .contact-copy .eyebrow{color:#9b754c;letter-spacing:.25em}
#contact .contact-copy h2{max-width:13ch;margin:27px 0 28px;color:var(--ref-ink);font-size:clamp(3.7rem,5.1vw,6rem);line-height:.99;letter-spacing:-.052em}
#contact .contact-copy p{max-width:56ch;margin:0 0 16px;color:#525a58;font-family:var(--sans);font-size:clamp(1rem,1.12vw,1.17rem);line-height:1.52}
#contact .contact-links{display:grid;max-width:720px;margin-top:27px;border-top:1px solid rgba(133,112,86,.32)}
#contact .contact-links a{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid rgba(133,112,86,.32);color:var(--ref-ink);font-family:var(--serif);font-size:clamp(1.5rem,1.95vw,2rem);line-height:1.12}
#contact .contact-links a:first-child{color:#805a37}
#contact .contact-links a:hover{padding-left:7px;color:#9c754b}
@media(max-width:900px){
  #contact{min-height:0}
  #contact .contact-photo{inset:0 0 auto 0!important;height:clamp(490px,130vw,700px)!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 60%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 60%,transparent 100%)!important}
  #contact .contact-photo img{object-position:67% center}
  #contact::after{display:none}
  #contact .contact-copy{width:100%;max-width:none;padding:clamp(450px,119vw,640px) 6vw 66px}
  #contact .contact-copy h2{max-width:15ch;margin:20px 0 26px;font-size:clamp(2.75rem,10.5vw,5rem);line-height:1.02}
  #contact .contact-copy p{max-width:60ch;font-size:clamp(1rem,4vw,1.18rem);line-height:1.5}
  #contact .contact-links{margin-top:27px}
  #contact .contact-links a{padding:17px 0;font-size:clamp(1.5rem,5.9vw,2rem)}
}

/* Music: custom cover with the existing click-to-play YouTube embed. */
#music{max-width:none;padding:72px clamp(28px,6.7vw,116px) 95px;background:var(--ref-cream);color:var(--ref-ink)}
#music>.section-heading,#music>.music-content{width:100%;max-width:1456px;margin-left:auto;margin-right:auto}
#music .section-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);column-gap:6vw;align-items:start;margin-bottom:44px}
#music .section-heading .eyebrow{grid-column:1/-1;margin-bottom:24px;color:#9b754c;letter-spacing:.25em}
#music .section-heading h2{grid-column:1;grid-row:2/4;margin:0;color:var(--ref-ink);font-size:clamp(5rem,8.6vw,9rem);line-height:.9;letter-spacing:-.06em}
#music .section-heading p{grid-column:2;max-width:60ch;margin:0 0 14px;color:#575e5b;font-family:var(--sans);font-size:clamp(1rem,1.12vw,1.16rem);line-height:1.52}
#music .section-heading p:first-of-type{grid-row:2}
#music .section-heading p:last-of-type{grid-row:3}
#music .music-content{display:grid;grid-template-columns:minmax(0,2.08fr) minmax(290px,.92fr);gap:0;overflow:hidden;border:1px solid rgba(156,117,75,.35);border-radius:7px}
#music .youtube-shell{width:100%;height:auto;min-width:0;aspect-ratio:16/9;overflow:hidden;background:#302d2b}
#music .youtube-poster{display:block;overflow:hidden;background:#302d2b}
#music .youtube-poster img{width:100%;height:100%;object-fit:cover;filter:none}
#music .youtube-poster::after{content:"";position:absolute;inset:55% 0 0;pointer-events:none;background:linear-gradient(transparent,rgba(18,17,16,.5))}
#music .youtube-poster .play-icon{z-index:1;width:78px;height:78px;border:1px solid #fff;border-radius:50%;background:rgba(24,22,21,.18);color:#fff;backdrop-filter:blur(4px)}
#music .youtube-poster .play-label{z-index:1;left:28px;bottom:26px;color:#fff;font-size:.9rem;letter-spacing:.02em}
#music .channel-card{display:flex;flex-direction:column;min-width:0;min-height:0;margin:0;padding:clamp(38px,4.1vw,68px);border:0;background:linear-gradient(125deg,#fffaf3,#efe9e1)}
#music .channel-card .eyebrow{color:#9b754c;letter-spacing:.25em}
#music .channel-identity{display:flex;align-items:center;gap:16px}
#music .channel-identity .eyebrow{margin:0;font-size:.65rem;letter-spacing:.18em}
#music .channel-logo{flex:none;width:64px;height:64px;object-fit:cover;border-radius:50%;border:1px solid rgba(156,117,75,.35);box-shadow:0 4px 16px rgba(48,45,43,.12)}
#music .channel-card h3{max-width:10ch;margin:30px 0 0;color:var(--ref-ink);font-size:clamp(3.1rem,4.2vw,5.1rem);line-height:.97;letter-spacing:-.045em;overflow-wrap:normal}
#music .channel-card p{max-width:18ch;margin:29px 0 0;color:#666967;font-family:var(--serif);font-size:clamp(1.2rem,1.5vw,1.6rem);line-height:1.3}
#music .channel-card .text-link{align-self:flex-start;gap:28px;max-width:100%;margin-top:auto;padding-top:55px;border-bottom-color:#a78057;color:var(--ref-ink);font-size:clamp(.85rem,1.05vw,1rem)}
@media(max-width:900px){
  #music{padding:68px 6vw 75px}
  #music .section-heading{display:block;margin-bottom:31px}
  #music .section-heading .eyebrow{display:block;margin-bottom:18px}
  #music .section-heading h2{margin-bottom:24px;font-size:clamp(4.6rem,14vw,7rem)}
  #music .section-heading p{max-width:62ch;margin-bottom:13px;font-size:clamp(1rem,3.8vw,1.18rem)}
  #music .music-content{display:block}
  #music .youtube-shell{aspect-ratio:16/10}
  #music .channel-card{min-height:310px;padding:32px}
  #music .channel-card h3{max-width:none;margin:28px 0 0;font-size:clamp(3rem,9vw,4.5rem)}
  #music .channel-card p{max-width:none;margin-top:18px}
  #music .channel-card .text-link{margin-top:35px;padding-top:0}
}

/* Reviews: original messages in a swipeable flower-backed carousel. */
#reviews{position:relative;max-width:none;padding:88px 0 82px;overflow:hidden;background:#fff8ee url('/assets/reviews-background.png') center/cover no-repeat;color:var(--ref-ink)}
#reviews>.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.78fr);column-gap:7vw;width:calc(100% - 12vw);max-width:1456px;margin:0 auto 38px;padding:0;border:0}
#reviews .section-heading .eyebrow{grid-column:1/-1;margin-bottom:22px;color:#9b754c;letter-spacing:.22em}
#reviews .section-heading h2{grid-column:1;grid-row:2/4;margin:0;color:var(--ref-ink);font-size:clamp(5rem,8vw,8.5rem);line-height:.94;letter-spacing:-.055em}
#reviews .section-heading p{grid-column:2;max-width:52ch;margin:0 0 15px;color:#545b59;font-family:var(--sans);font-size:clamp(1rem,1.13vw,1.17rem);line-height:1.5}
#reviews .section-heading p:first-of-type{grid-row:2}
#reviews .section-heading p:last-of-type{grid-row:3}
#reviews .section-heading strong{font-weight:400}
#reviews .review-carousel{position:relative;width:100%;max-width:1600px;margin:auto}
#reviews .review-viewport{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
#reviews .review-viewport::-webkit-scrollbar{display:none}
#reviews .reviews-track{display:flex;gap:18px;width:max-content;padding-inline:6vw}
#reviews .review-original{flex:0 0 clamp(310px,29.5vw,440px);display:flex;flex-direction:column;align-items:stretch;min-width:0;height:auto;min-height:0;margin:0;padding:0;border:1px solid rgba(162,125,83,.4);border-radius:14px;background:rgba(255,250,242,.94);box-shadow:0 8px 24px rgba(89,68,45,.06);overflow:hidden;text-align:left;scroll-snap-align:center;cursor:zoom-in;transform:none}
#reviews .review-original:hover{transform:none;border-color:#a9855c;box-shadow:0 15px 35px rgba(89,68,45,.14)}
#reviews .review-original-index{display:flex;justify-content:flex-start;align-items:center;gap:16px;min-height:53px;padding:15px 18px 13px;color:#9c754b;font-family:var(--sans);font-size:.78rem;letter-spacing:.05em;text-transform:none;font-weight:500}
#reviews .review-category{padding-left:16px;border-left:1px solid rgba(156,117,75,.38);color:#66615b;font-size:.82rem;letter-spacing:0}
#reviews .review-visual{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:clamp(420px,34vw,510px);overflow:hidden;background:#e9d8b7 url('/assets/reviews-flowers.png') center/cover no-repeat}
#reviews .review-visual::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,250,242,.08),rgba(108,76,39,.08))}
#reviews .review-message{position:relative;z-index:1;display:block;flex:none;width:var(--bubble-width);aspect-ratio:var(--bubble-ratio);max-height:94%;overflow:hidden;border-radius:17px;box-shadow:0 9px 24px rgba(69,54,39,.18);background:#fff}
#reviews .review-message img{position:absolute;display:block;left:var(--image-left);top:var(--image-top);width:var(--image-width);height:auto;max-width:none;max-height:none;aspect-ratio:auto;object-fit:initial;object-position:initial;filter:none}
#reviews .review-original-open{display:flex;justify-content:space-between;align-items:center;margin:0;padding:14px 18px 16px;border:0;color:#8c6b48;font-family:var(--sans);font-size:.74rem;letter-spacing:.05em;text-transform:none}
#reviews .reviews-controls{display:flex;align-items:center;justify-content:center;gap:20px;max-width:1000px;margin:27px auto 0;color:#9c754b}
#reviews .review-arrow{display:grid;place-items:center;flex:none;width:48px;height:48px;border:1px solid rgba(156,117,75,.48);border-radius:50%;background:rgba(255,250,242,.88);color:var(--ref-ink);font-size:1.6rem;line-height:1;cursor:pointer}
#reviews .review-arrow:hover{background:#fff;color:#9c754b}
#reviews .review-position{min-width:65px;text-align:center;font-family:var(--sans);font-size:.86rem;letter-spacing:.08em}
#reviews .review-dots{display:flex;align-items:center;gap:8px}
#reviews .review-dot{width:8px;height:8px;padding:0;border:1px solid #ae8c62;border-radius:50%;background:transparent;cursor:pointer}
#reviews .review-dot.is-active{background:#9c754b}
#reviews .review-swipe{margin-left:22px;font-family:var(--sans);font-size:.86rem}
@media(max-width:900px){
  #reviews{padding:67px 0 65px;background-position:center}
  #reviews>.section-heading{display:block;width:auto;margin:0 6vw 26px;padding:0}
  #reviews .section-heading .eyebrow{display:block;margin-bottom:16px}
  #reviews .section-heading h2{margin-bottom:22px;font-size:clamp(4.6rem,13vw,7rem)}
  #reviews .section-heading p{max-width:65ch;margin-bottom:13px;font-size:clamp(1rem,3.8vw,1.18rem)}
  #reviews .reviews-track{gap:12px}
  #reviews .review-original{flex-basis:min(85vw,430px)}
  #reviews .review-visual{height:clamp(390px,112vw,500px)}
  #reviews .reviews-controls{gap:15px;flex-wrap:wrap;margin:20px 6vw 0}
  #reviews .review-dots{gap:6px}
  #reviews .review-swipe{flex-basis:100%;margin:0;text-align:center}
}

/* Show only the extracted message images; long messages scroll inside the card. */
#reviews .review-original{cursor:default}
#reviews .review-original:hover{border-color:rgba(162,125,83,.4);box-shadow:0 8px 24px rgba(89,68,45,.06)}
#reviews .review-message{display:block;flex:none;width:auto;max-width:90%;max-height:92%;aspect-ratio:auto;overflow-x:hidden;overflow-y:auto;border:0;border-radius:0;background:transparent;box-shadow:none;scrollbar-width:thin;scrollbar-color:#c8b18e transparent}
#reviews .review-message img{position:static;display:block;width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain;filter:none;background:transparent}

/* Academy follows the same photo-to-copy flow as the earlier mobile chapters. */
@media(max-width:760px){
  #academy{position:relative;isolation:isolate;padding:0;background:var(--ref-cream)}
  #academy .section-inner{position:relative;display:block;min-height:0}
  #academy .photo{position:absolute!important;inset:0 0 auto!important;top:0!important;display:block;width:100%!important;max-width:none;height:clamp(470px,135vw,620px)!important;min-height:0!important;aspect-ratio:auto!important;margin:0!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 76%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 76%,transparent 100%)}
  #academy .photo img{width:100%;height:100%;object-fit:cover;object-position:5% center}
  #academy .section-copy{position:relative;z-index:1;width:100%;max-width:none;margin:0;padding:clamp(430px,121vw,560px) 6vw 74px}
  #academy .section-copy h2{font-size:clamp(3.2rem,11.5vw,5rem)}
}

/* Quiet cream dissolves at chapter boundaries; no scroll-driven motion. */
main{--chapter-fade:clamp(100px,12vw,180px)}
#inside .photo::before,#about .photo::before,#answers .photo::before,
#requests .requests-top .photo::before,#approach .photo::before,
#higher-self .photo::before,#academy .photo::before,
#no-ready-answers .photo::before,#contact .contact-photo::before{
  content:"";position:absolute;z-index:3;inset:0;pointer-events:none;
  background:linear-gradient(180deg,var(--ref-cream) 0%,transparent var(--chapter-fade),transparent calc(100% - var(--chapter-fade)),var(--ref-cream) 100%);
}
#reviews{background-image:linear-gradient(180deg,var(--ref-cream),transparent var(--chapter-fade),transparent calc(100% - var(--chapter-fade)),var(--ref-cream)),url('/assets/reviews-background.png')}
#group-formats{background:linear-gradient(180deg,var(--ref-cream),#f8f5ee 110px,#f8f5ee calc(100% - 110px),var(--ref-cream))}
#booking{background:linear-gradient(180deg,var(--ref-cream),#f7f5ef 110px,#f7f5ef calc(100% - 110px),var(--ref-cream));border-top:0}
main .reveal,main .reveal.visible{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
main .reveal.visible h2{animation:none!important}
@media(min-width:761px){
  #formats::after{background:linear-gradient(180deg,var(--ref-cream),transparent var(--chapter-fade),transparent calc(100% - var(--chapter-fade)),var(--ref-cream)),linear-gradient(90deg,var(--ref-cream) 0%,rgba(255,250,242,.96) 24%,rgba(255,250,242,.76) 50%,rgba(255,250,242,.12) 78%)}
}
@media(max-width:760px){
  main{--chapter-fade:76px}
  #formats::after{background:linear-gradient(180deg,var(--ref-cream) 0,transparent 76px,rgba(255,250,242,.08) 230px,rgba(255,250,242,.6) 390px,var(--ref-cream) 535px,var(--ref-cream) 100%)}
}

/* Closing chapter and footer, following the supplied cream-and-gold reference. */
#booking{position:relative;isolation:isolate;overflow:hidden;padding:clamp(95px,11vw,184px) clamp(24px,8.6vw,145px) clamp(95px,9vw,150px);background:linear-gradient(180deg,var(--ref-cream),rgba(255,250,242,.65) 24%,rgba(255,250,242,.64)),url('/assets/reviews-background.png') center/cover no-repeat;border:0}
#booking::before,#booking::after{content:"";position:absolute;z-index:-1;pointer-events:none;border:1px solid rgba(165,117,65,.48);border-radius:50%}
#booking::before{width:1100px;height:700px;right:-390px;top:-560px;transform:rotate(22deg)}
#booking::after{width:1050px;height:650px;left:-480px;bottom:-425px;transform:rotate(28deg)}
#booking .booking-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(40px,6vw,100px);max-width:1456px;margin:auto}
#booking .booking-intro .eyebrow{color:#a3866b;letter-spacing:.23em;margin-bottom:30px}
#booking .booking-intro h2{max-width:12ch;margin:0;font-size:clamp(3.5rem,5.7vw,6.4rem);line-height:1.01;letter-spacing:-.055em;color:var(--ref-ink)}
#booking .booking-flow{max-width:none;margin:0;padding:0;border:0}
#booking .booking-flow li{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:28px;min-height:110px;padding:25px 0;border-bottom:1px solid rgba(156,117,75,.27);color:#424541;font-size:clamp(1rem,1.22vw,1.25rem);line-height:1.6}
#booking .booking-flow li:first-child{padding-top:0;min-height:85px}
#booking .booking-flow li::before{align-self:start;display:flex;align-items:center;min-height:46px;padding:0 23px 0 0;border-right:1px solid #b99c80;font-family:var(--serif);font-size:2.1rem;line-height:1.2;letter-spacing:-.04em;color:#a38b75}
#booking .booking-flow p{max-width:none;margin:36px 0 0;color:#827365;font-size:clamp(.98rem,1.17vw,1.18rem);line-height:1.65}
.site-footer{position:relative;display:grid;grid-template-columns:minmax(220px,.85fr) minmax(220px,1fr) auto;align-items:center;gap:clamp(28px,4.5vw,76px);width:100%;max-width:none;margin:0;padding:58px clamp(24px,7.2vw,122px) 64px;background:linear-gradient(rgba(255,250,242,.86),rgba(255,250,242,.78)),url('/assets/reviews-background.png') center 85%/cover no-repeat;border-top:1px solid rgba(156,117,75,.35);color:#827365;font-size:1rem}
.site-footer>div:first-child{gap:6px}
.site-footer strong{font-size:clamp(1.7rem,2vw,2.2rem);line-height:1.25;color:var(--ref-ink)}
.site-footer>p{max-width:34ch;margin:0;padding-left:clamp(28px,4.5vw,76px);border-left:1px solid #b99c80;font-size:.95rem;line-height:1.8}
.site-footer .footer-links{display:flex;justify-content:flex-end;gap:24px;flex-wrap:wrap;font-size:.95rem}
.site-footer .footer-links a:hover{color:#9c754b}
.site-footer .footer-links a{display:inline-flex;align-items:center;gap:8px}
.site-footer .footer-links a::before{content:"";display:block;flex:none;width:19px;height:19px;background:currentColor;-webkit-mask:var(--social-icon) center/contain no-repeat;mask:var(--social-icon) center/contain no-repeat}
.site-footer .footer-links a[href*="instagram.com"]{--social-icon:url('/assets/social-instagram.svg')}
.site-footer .footer-links a[href*="t.me"]{--social-icon:url('/assets/social-telegram.svg')}
.site-footer .footer-links a[href*="wa.me"]{--social-icon:url('/assets/social-whatsapp.svg')}
#academy .photo img,#academy .photo:hover img{transform:none;transition:none}
@media(max-width:900px){
  #booking{padding:82px 6vw 90px}
  #booking .booking-inner{grid-template-columns:1fr;gap:40px}
  #booking .booking-intro h2{font-size:clamp(3rem,9vw,4.6rem);max-width:12ch}
  #booking .booking-flow li{grid-template-columns:54px minmax(0,1fr);gap:20px;min-height:100px;padding:23px 0;font-size:1rem}
  #booking .booking-flow li:first-child{min-height:78px}
  #booking .booking-flow li::before{font-size:1.8rem;padding-right:15px;min-height:40px}
  #booking .booking-flow p{margin-top:28px}
  .site-footer{grid-template-columns:1fr 1fr;gap:30px;padding:40px 6vw 46px}
  .site-footer>p{grid-column:2;grid-row:1;padding-left:24px}
  .site-footer .footer-links{grid-column:1/-1;grid-row:2;justify-content:flex-start;gap:28px}
}
@media(max-width:520px){
  .site-footer{grid-template-columns:1fr;gap:22px}
  .site-footer>p{grid-column:1;grid-row:2;max-width:32ch;border:0;padding:0}
  .site-footer .footer-links{grid-row:3;gap:16px;padding-top:6px;font-size:.9rem}
  .site-footer .footer-links a{flex-direction:column;gap:6px}
}
