/* Alternate route only. Art uses uniform scaling, never stretched. */
.top:after{content:"";position:absolute;bottom:0;left:0;right:0;height:160px;z-index:4;pointer-events:none;background:linear-gradient(transparent,#30203e)}
.landscape-home{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(#30203e,#856985 55%,#f5f0e7)}
.landscape-home:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/mountain-plum-v2.webp') center/cover no-repeat}
.landscape-home:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#30203e 0%,transparent 12%,transparent 80%,#f5f0e7 100%)}
.landscape-home .about{padding-top:80px;padding-bottom:65px;gap:65px;min-height:650px;color:#fff8ed}
.landscape-home .portrait{max-width:350px}.landscape-home .portrait img{height:420px}
.landscape-home .about>.reveal:last-child,.landscape-home .consultation-copy,.landscape-home .media-section{border:1px solid #ffffff55;border-radius:24px;box-shadow:inset 0 1px 0 #ffffff75,inset 0 -1px 0 #ffffff15,0 18px 60px #28152f18;backdrop-filter:blur(16px) saturate(1.15);-webkit-backdrop-filter:blur(16px) saturate(1.15)}
.landscape-home .about>.reveal:last-child{padding:34px;background:linear-gradient(135deg,#ffffff20,#ffffff08)}
.landscape-home .about h2{font-size:36.8px}.landscape-home .about .body-copy{color:#f4eaf0}.landscape-home .about .role,.landscape-home .about .eyebrow{color:#ecd2a9}.landscape-home .lineage{border-color:#ffffff40}
.landscape-home .how{background:transparent;border:0;overflow:visible}
.landscape-home .consultation-layout{padding-block:65px;min-height:770px;overflow:visible;gap:45px}
.landscape-home .consultation-copy{padding:34px;background:linear-gradient(135deg,#fff6e842,#fff6e821);color:#2d1c37}
.landscape-home .step p,.landscape-home .steps-intro,.landscape-home .how-bottom>span{color:#38283e}.landscape-home .step{border-color:#49334c55}.landscape-home .num{color:#674663}
.landscape-home .steps-art{align-self:center}.landscape-home .steps-art .layered-art{max-height:660px}
.landscape-home .media-section{padding:40px 48px;background:linear-gradient(135deg,#ffffff35,#ffffff12);max-width:1152px;margin:15px auto 70px}
.media-heading{text-align:center;margin-bottom:25px}.media-heading .eyebrow{justify-content:center;font-size:9px}.media-heading h2{font-size:34px;margin-top:12px}.landscape-home .media-logos{gap:42px}.landscape-home .media-logo img{opacity:1}
#site-footer.living-footer{margin:0;padding-top:0;background:#f5f0e7;color:#30203c}.sage-footer{position:relative;isolation:isolate;margin:0;overflow:hidden}.sage-panorama{display:block;width:100%;height:auto}.sage-footer:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(#f5f0e7,transparent 12%,transparent 85%,#f5f0e7)}
.hill-brand{position:absolute;z-index:2;left:9%;top:32%;width:31%;text-align:center;color:#30203c}.hill-brand>a:first-child{display:block;width:85%;margin:0 auto}.hill-brand svg{display:block;width:100%;height:auto}.hill-brand p{font-size:12px;margin:15px 0 20px}.social-handle{display:inline-flex;align-items:center;gap:12px;font-size:14px;border-bottom:1px solid #65506d66;padding-bottom:9px}.social-handle svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.6}
#site-footer .footer-directory{border-top:1px solid #58415c25;padding-top:45px}#site-footer .footer-directory h2,#site-footer .footer-directory h3,#site-footer .footer-directory a,#site-footer .footer-intro p,#site-footer .footer-kicker,#site-footer .foot small,#site-footer .foot-links{color:#49334e}#site-footer .foot{border-color:#58415c25}#site-footer .foot>.approved-brand{display:none}
@media(max-width:1000px){.landscape-home .about{gap:30px}.landscape-home .about h2{font-size:31.2px}.landscape-home .about>.reveal:last-child,.landscape-home .consultation-copy{padding:26px}.landscape-home .media-section{margin-inline:28px}}
@media(max-width:640px){.top:after{height:100px}.landscape-home:before{background-position:40% center}.landscape-home .about{padding-top:45px;padding-bottom:30px;gap:30px;min-height:0}.landscape-home .portrait{width:80%;max-width:310px}.landscape-home .portrait img{height:340px}.landscape-home .about>.reveal:last-child{padding:26px;background:#39253b55}.landscape-home .about h2{font-size:28.8px}.landscape-home .body-copy{font-size:13px}.landscape-home .consultation-layout{padding-block:30px;min-height:0;gap:10px}.landscape-home .consultation-copy{padding:25px 22px;background:#fff6e85c}.landscape-home .consultation-copy h2{font-size:36px}.landscape-home .how .step h3{font-size:21px}.landscape-home .steps-art{height:420px}.landscape-home .steps-art .layered-art{height:420px;max-height:420px;width:100%}.landscape-home .media-section{padding:30px 22px;margin:10px 28px 35px}.landscape-home .media-logos{gap:20px}.media-heading h2{font-size:30px}.hill-brand{left:6%;top:21%;width:40%}.hill-brand>a:first-child{width:95%}.hill-brand p{font-size:8px;line-height:1.5;margin:8px 0}.social-handle{font-size:10px;gap:6px;padding-bottom:5px}.social-handle svg{width:13px}}
@supports not (backdrop-filter:blur(1px)){.landscape-home .about>.reveal:last-child{background:#49334ee6}.landscape-home .consultation-copy,.landscape-home .media-section{background:#eadbd0e6}}
.sage-panorama{aspect-ratio:2/1;object-fit:cover;object-position:center bottom}.hill-brand{top:23%}
@media(max-width:640px){.sage-panorama{aspect-ratio:1.5/1;object-fit:contain}.hill-brand{top:26%}}

/* Quiet translucent surfaces; no glass rims, reflections or elevation. */
.landscape-home .about>.reveal:last-child,.landscape-home .consultation-copy,.landscape-home .media-section{border:0;border-radius:10px;box-shadow:none;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.landscape-home .about>.reveal:last-child{background:#30203e52}
.landscape-home .consultation-copy{background:#fff4e65c}
.landscape-home .media-section{background:#fff4e642}
/* Cloud-free join: same plum at both sides of the section boundary. */
.top{padding-bottom:45px}.top:after{height:100px;background:linear-gradient(transparent,#30203e);z-index:0}.top:before{mask-image:linear-gradient(black 65%,transparent)}
.top .credentials{z-index:3;background:transparent;margin-top:10px}
/* One footer scene, with all navigation contained on its right side. */
.unified-footer{position:relative;isolation:isolate;overflow:hidden;background:#f5f0e7;color:#30203c;padding:90px 6% 65px;min-height:690px}
.footer-valley{position:absolute;inset:0;z-index:-3;width:100%;height:100%;object-fit:cover;object-position:center bottom;transform:scaleX(-1)}
.footer-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(to bottom,#f5f0e7,transparent 17%),linear-gradient(90deg,transparent 25%,#f5f0e715 38%,#f5f0e7e8 57%,#f5f0e7f7 100%)}
.footer-content{width:49%;margin-left:auto;padding:25px 0 0 38px}.footer-logo{max-width:310px}.footer-logo svg{width:100%;height:auto;display:block}.footer-tagline{font-size:12px;margin:16px 0 22px}.unified-footer .social-handle{font-size:13px}
.footer-nav{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:22px;position:static;background:transparent;padding:0;margin-top:38px;color:#3b2945}
.footer-nav h3{font-family:'Martel Sans',sans-serif;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;margin:0 0 16px;font-weight:700}.footer-nav a{display:block;font-size:12px;margin:10px 0;line-height:1.6}.footer-nav a:hover,.footer-legal a:hover{color:#8b592e;text-decoration:underline}
.footer-legal{display:flex;flex-wrap:wrap;gap:10px 20px;border-top:1px solid #49334e33;padding-top:23px;margin-top:30px;font-size:10px}.unified-footer small{display:block;font-size:10px;margin-top:20px;color:#65536c}
@media(max-width:900px){.unified-footer{padding-inline:28px}.footer-content{width:55%;padding-left:20px}.footer-nav{gap:14px;grid-template-columns:1fr 1fr}.footer-nav>div:last-child{grid-column:1/-1}.footer-nav>div:last-child a{display:inline-block;margin-right:16px}.footer-shade{background:linear-gradient(#f5f0e7,transparent 16%),linear-gradient(90deg,transparent,#f5f0e744 30%,#f5f0e7ef 52%)}}
@media(max-width:640px){.top{padding-bottom:25px}.top:after{height:65px}.landscape-home .about>.reveal:last-child{background:#30203e70}.landscape-home .consultation-copy{background:#fff4e680}.unified-footer{padding:290px 28px 40px;min-height:0}.footer-valley{height:410px;object-fit:cover;object-position:left bottom}.footer-shade{background:linear-gradient(to bottom,#f5f0e7 0%,transparent 7%,transparent 21%,#f5f0e7 39%)}.footer-content{width:100%;padding:25px 0 0;margin:0}.footer-logo{max-width:245px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;position:static;margin-top:30px}.footer-nav a{font-size:12px}.footer-tagline{font-size:12px}.unified-footer .social-handle{font-size:13px}.unified-footer .social-handle svg{width:19px}}
/* Plain plum-to-beige canvas; illustration is confined to the footer. */
.landscape-home{background:linear-gradient(180deg,#30203e 0%,#503851 27%,#aa8e9c 55%,#dac6bb 76%,#f5f0e7 100%)}
.landscape-home:before,.landscape-home:after{display:none}
/* Compact single footer: roughly half the former 690px desktop height. */
.unified-footer{min-height:345px;padding:24px 6% 20px}
.footer-content{width:49%;padding:0 0 0 24px}
.footer-logo{max-width:185px}
.footer-tagline{font-size:10px;margin:5px 0 8px}
.unified-footer .social-handle{font-size:11px;gap:8px;padding-bottom:4px}
.unified-footer .social-handle svg{width:16px}
.footer-nav{margin-top:18px;gap:18px;grid-template-columns:1fr 1fr 1.3fr}
.footer-nav h3{font-size:9px;margin-bottom:7px}
.footer-nav a{font-size:11px;margin:5px 0;line-height:1.5}
.footer-legal{font-size:9px;gap:8px 15px;margin-top:15px;padding-top:12px}
.unified-footer small{font-size:9px;margin-top:10px}
.footer-shade{background:linear-gradient(to bottom,#f5f0e7,transparent 16%),linear-gradient(90deg,transparent 25%,#f5f0e725 40%,#f5f0e7ef 58%,#f5f0e7f7)}
@media(min-width:641px) and (max-width:900px){.unified-footer{padding-inline:24px}.footer-content{width:56%;padding-left:12px}.footer-nav{gap:12px}.footer-nav>div:last-child{grid-column:auto}.footer-nav>div:last-child a{display:block;margin:5px 0}}
@media(max-width:640px){.unified-footer{padding:20px 22px 24px;min-height:390px}.footer-valley{height:180px;object-position:center bottom}.footer-shade{background:linear-gradient(to bottom,#f5f0e7 0%,#f5f0e700 8%,#f5f0e700 24%,#f5f0e7 43%),linear-gradient(90deg,transparent 25%,#f5f0e7ee 52%)}.footer-content{width:100%;padding:0;margin:0}.footer-logo{width:46%;max-width:185px;margin-left:auto}.footer-tagline{margin:7px 0 8px auto;width:46%;font-size:9px}.unified-footer .social-handle{margin-left:54%;font-size:11px;white-space:nowrap}.footer-nav{margin-top:55px;grid-template-columns:1fr 1fr 1.2fr;gap:12px}.footer-nav>div:last-child{grid-column:auto}.footer-nav>div:last-child a{display:block;margin:7px 0}.footer-nav a{font-size:11px;margin:7px 0}.footer-legal{gap:8px 12px}}
/* Final footer alignment: brand left, teaching scene right, legal links only. */
.footer-valley{transform:none}
.footer-content{margin-left:0;margin-right:auto;padding:28px 24px 0 0}
.footer-logo{max-width:230px}
.footer-tagline{font-size:12px;margin:13px 0 25px}
.footer-legal{font-size:11px;line-height:1.8;gap:10px 20px;margin-top:24px;padding-top:18px}
.unified-footer small{font-size:10px;margin-top:18px}
.footer-shade{background:linear-gradient(to bottom,#f5f0e7,transparent 16%),linear-gradient(90deg,#f5f0e7f7,#f5f0e7ef 42%,#f5f0e725 60%,transparent 75%)}
@media(min-width:641px) and (max-width:900px){.footer-content{padding-left:0;padding-right:12px}}
@media(max-width:640px){.unified-footer{min-height:320px;padding:22px}.footer-content{padding:0;width:100%}.footer-logo{width:48%;max-width:200px;margin:0}.footer-tagline{width:48%;font-size:10px;margin:10px 0 0}.footer-valley{height:190px;object-position:center bottom}.footer-shade{background:linear-gradient(to bottom,#f5f0e7 0%,transparent 8%,transparent 30%,#f5f0e7 58%),linear-gradient(90deg,#f5f0e7ee 32%,transparent 75%)}.footer-legal{margin-top:90px;font-size:10px;gap:9px 16px}.unified-footer small{font-size:9px;margin-top:14px}}
/* Finish the plum-to-beige transition before the consultation steps. */
.landscape-home{background:#f5f0e7}
.landscape-home .about{isolation:isolate;padding-bottom:185px}
.landscape-home .about:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(180deg,#30203e 0%,#49334e 68%,#877080 82%,#f5f0e7 100%);pointer-events:none}
.landscape-home .how{background:#f5f0e7}
.landscape-home .consultation-layout{padding-top:28px;padding-bottom:65px;min-height:710px;gap:65px}
.landscape-home .consultation-copy{padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;color:#30203e}
.landscape-home .consultation-copy h2{font-size:48px;line-height:1.15;max-width:470px}
.landscape-home .consultation-copy .eyebrow{color:#806137}
.landscape-home .how .section-heading{margin-bottom:36px}
.landscape-home .how .steps{gap:32px 35px}
.landscape-home .how .step{padding-top:18px;border-top:1px solid #b3935a66}
.landscape-home .how .step:before{background:#aa824b;width:5px;height:5px;top:-3px}
.landscape-home .how .num{color:#a47a3c;font-size:34px}
.landscape-home .how .step h3{color:#30203e;font-size:24px;margin:13px 0 10px}
.landscape-home .how .step p,.landscape-home .steps-intro{color:#625263;line-height:1.85}
.landscape-home .how-bottom>span{color:#625263}
.landscape-home .steps-art .layered-art{max-height:650px}
.landscape-home .media-section{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-top:1px solid #b3935a40;border-radius:0;margin-top:20px}
@media(max-width:900px){.landscape-home .consultation-layout{gap:32px}.landscape-home .consultation-copy h2{font-size:40px}.landscape-home .how .step h3{font-size:22px}}
@media(max-width:640px){.landscape-home .about{padding-bottom:135px}.landscape-home .about:before{background:linear-gradient(#30203e 0%,#49334e 78%,#f5f0e7 100%)}.landscape-home .consultation-layout{padding-top:15px;padding-bottom:25px;min-height:0;gap:20px}.landscape-home .consultation-copy{padding:0;background:transparent}.landscape-home .consultation-copy h2{font-size:37px}.landscape-home .how .steps{gap:28px 24px}.landscape-home .how .step h3{font-size:22px}.landscape-home .steps-art .layered-art{max-height:420px}}
/* Main homepage: beige begins at About and continues into the footer sky. */
.top:after{height:85px;background:linear-gradient(transparent,#f5f0e7);z-index:1}
.top{padding-bottom:95px}
.landscape-home .about{color:#30203e;padding-top:65px;padding-bottom:75px}
.landscape-home .about:before{display:none}
.landscape-home .about>.reveal:last-child{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;padding:20px 0}
.landscape-home .about .body-copy{color:#625263}
.landscape-home .about .role,.landscape-home .about .eyebrow{color:#806137}
.landscape-home .lineage{border-color:#b3935a55}
.step-label{display:flex;align-items:center;justify-content:space-between;gap:18px}
.step-icon{width:25px;height:25px;fill:none;stroke:#92703d;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.hero-art .hero-human{position:absolute;width:64%;height:64%;left:18%;top:18%;object-fit:contain;animation:human-levitate 6s ease-in-out infinite;will-change:transform;pointer-events:none}
@keyframes human-levitate{0%,100%{transform:translateY(4px)}50%{transform:translateY(-9px)}}
.hero-art.is-paused .hero-human{animation-play-state:paused}
@media(max-width:640px){.top{padding-bottom:80px}.top:after{height:70px}.landscape-home .about{padding-top:35px;padding-bottom:45px}.landscape-home .about>.reveal:last-child{padding:10px 0}.step-icon{width:23px;height:23px}}
@media(prefers-reduced-motion:reduce){.hero-art .hero-human{animation:none!important;transform:none;will-change:auto}}
.hero-art .earth-center{clip-path:circle(46.5% at 50% 50%)}
.hero-art .hero-human{width:54.4%;height:54.4%;left:22.8%;top:24.2%}
/* Clean plum-to-beige section boundary, without a transition gradient. */
.top:after{display:none}
.top:before{mask-image:none}
.top{padding-bottom:45px}
.step-icon{width:48px;height:48px;stroke:#49304d;stroke-width:1.6;filter:drop-shadow(0 2px 1px #49304d12)}
@media(max-width:640px){.top{padding-bottom:30px}.step-icon{width:42px;height:42px}}
.step-painting{display:block;flex:none;width:94px;height:94px;background-image:url('assets/booking-painted.webp');background-size:200% 200%;background-repeat:no-repeat}
.step-painting-0{background-position:0 0}.step-painting-1{background-position:100% 0}.step-painting-2{background-position:0 100%}.step-painting-3{background-position:100% 100%}
.step-label{min-height:78px}.landscape-home .how .step h3{margin-top:4px}
@media(max-width:640px){.step-painting{width:76px;height:76px}.step-label{gap:10px;min-height:70px}}
/* Centre the mobile hero title above the illustration. */
@media(max-width:640px){.hero-copy h1{text-align:center;width:100%;margin-inline:auto}}
.mobile-title-space{display:none}
@media(max-width:640px){
.hero-copy{text-align:center}
.hero-copy .eyebrow{justify-content:center;gap:8px;font-size:8px;letter-spacing:1.6px;line-height:1.8}
.hero-copy .eyebrow:before{display:none}
.hero-copy h1{font-size:clamp(30px,10vw,62px);line-height:1.15;letter-spacing:-1px;text-align:center}
.hero-title-line{white-space:nowrap}
.desktop-title-break{display:none}
.mobile-title-space{display:inline}
.hero-copy>p{margin:22px auto;max-width:350px;text-align:center}
.hero-copy .actions{justify-content:center;gap:20px}
}

/* Size the scene once so its orbit, Earth, figures, and glow stay aligned. */
.home-hero .hero-art {
 width: 88%;
 max-width: max(280px, calc(100svh - 200px));
 margin-inline: 0;
 justify-self: center;
}
.landscape-home .portrait img { object-position: 62% 53%; }
@media (min-width: 641px) {
 .home-hero {
  min-height: min(650px, calc(100svh - 145px));
  padding-block: 20px 48px;
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr);
 }
 .home-hero h1 { font-size: clamp(39px, 6.2vw, 87px); }
}
@media (min-width: 641px) and (max-width: 900px) {
 .home-hero .hero-art { width: 89.6%; }
}
@media (max-width: 640px) {
 .home-hero { padding-top: clamp(24px, 5svh, 44px); }
 .home-hero .hero-art { width: 80%; max-width: 370px; margin-block: 20px 22px; }
}
