.subpage{background:var(--stone);color:var(--olive)}
.subpage .site-header{position:relative;background:var(--olive);border:0}
.page-hero{display:grid;grid-template-columns:1.08fr .92fr;min-height:680px;background:var(--sage)}.page-hero-copy{padding:clamp(5rem,10vw,9rem) 6.1vw;display:flex;flex-direction:column;justify-content:end}.page-hero h1,.page-section h2,.closing h2{margin:1.4rem 0 2rem}.page-hero p:not(.page-kicker){max-width:40ch;margin:0 0 2.3rem}.page-hero-media img{width:100%;height:100%;object-fit:cover;display:block}.page-button{display:inline-flex;align-self:flex-start;gap:2rem;background:var(--olive);color:var(--stone);padding:1rem 1.3rem;text-decoration:none}.page-button:hover{background:var(--warm)}
.page-section{padding:clamp(4.5rem,8vw,8rem) 6.1vw}.page-section--sage{background:var(--sage)}.page-section--olive{background:var(--olive);color:var(--stone)}.page-section h2,.closing h2{margin:1rem 0 2.5rem}.section-top{max-width:700px}.section-top p:last-child{max-width:50ch}.experience-grid,.format-grid,.event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3rem}.experience-card,.format-card,.event-card{border-top:1px solid var(--warm);padding:1.2rem 0 0}.experience-card h3,.format-card h3,.event-card h3{margin:1.4rem 0 .8rem}.experience-card p,.format-card p,.event-card p{max-width:30ch}.two-column{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:start}.two-column p{max-width:45ch}.quote-list{display:grid;gap:2.5rem}.quote-list blockquote{margin:0;border-top:1px solid rgba(52,57,35,.5);padding-top:1.4rem}.quote-list cite{display:block;margin-top:1rem}.image-break{height:min(58vw,720px);overflow:hidden}.image-break img{width:100%;height:100%;object-fit:cover;display:block}.event-card{background:rgba(245,243,237,.16);padding:1.5rem}.event-card a,.inline-link{display:inline-block;margin-top:1rem;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:.45rem}.video-invite{margin-top:3rem;border:1px solid rgba(245,243,237,.5);padding:2rem;max-width:600px}.video-invite p{margin:0}.closing{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:7rem 6.1vw;background:#eeeae3}.closing h2{margin:1rem 0}.closing p{max-width:42ch}.closing .enquiry-form{margin:0}.back-link{text-decoration:none}.subpage .site-footer{margin-top:0}
.session-details .session-intro{max-width:40ch}.session-card{background:var(--stone);padding:clamp(1.5rem,3vw,3rem)}.session-card h3{margin:.5rem 0 1rem}.session-duration{margin:0 0 2rem}.session-rate{display:flex;align-items:baseline;justify-content:space-between;gap:1.5rem;border-top:1px solid rgba(52,57,35,.4);padding:1.2rem 0}.session-rate strong{white-space:nowrap}.session-card .page-button{margin-top:1.2rem}
@media(max-width:800px){.page-hero{grid-template-columns:1fr}.page-hero-media{height:65vw;min-height:360px;order:-1}.experience-grid,.format-grid,.event-grid,.two-column,.closing{grid-template-columns:1fr}.page-section,.page-hero-copy,.closing{padding-left:5vw;padding-right:5vw}.page-hero-copy{padding-top:4rem;padding-bottom:5rem}.subpage .site-header nav a:not(.nav-contact){display:none}}
@media(max-width:480px){.session-rate{display:block}.session-rate strong{display:block;margin-top:.35rem}}
.retreat-hero-gallery{position:relative;min-width:0;overflow:hidden;background:var(--olive)}
.retreat-hero-slide{position:absolute;inset:0;margin:0}
.retreat-hero-slide[hidden]{display:none}
.retreat-hero-slide img{width:100%;height:100%;object-fit:cover}
.retreat-hero-slide--sign img{object-position:right center}
.retreat-process .quote-list cite{max-width:45ch;margin-top:.75rem}
.participant-story{display:grid;grid-template-columns:minmax(0,300px) 1fr;gap:2rem;align-items:end;margin:3rem 0 0}
.participant-story video{display:block;width:100%;height:auto;aspect-ratio:720/1282;object-fit:cover;background:#22261a}
.participant-story figcaption p{margin:0}
.participant-story .participant-story-name{margin:1rem 0 .8rem}
@media(max-width:800px){.participant-story{grid-template-columns:1fr}.participant-story video{max-width:280px}.participant-story .participant-story-title{max-width:none}}
.event-card--featured{background:var(--olive);color:var(--stone)}
.foundation-card ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem;max-width:32ch}
.foundation-card li{padding-left:1.1rem;position:relative}
.foundation-card li::before{content:"";position:absolute;left:0;top:.62em;width:.4rem;height:.4rem;border-radius:50%;background:var(--warm)}
.participant-story .participant-story-title{margin:1rem 0;padding-top:1.4rem;border-top:1px solid rgba(245,243,237,.5);max-width:18ch}
.participant-story .participant-story-cite{max-width:none}
@media(max-width:800px){.participant-story .participant-story-title{max-width:none}}
.legal{max-width:none}.legal h1{margin:1rem 0 3rem}
.legal-body{max-width:68ch}.legal .legal-body h2{margin:2.6rem 0 .8rem}.legal-body p{margin:0 0 1rem}.legal-body a{color:inherit}
.legal-updated{margin-top:2.5rem!important;opacity:.75}
.legal .todo{background:#f3d9a8;color:var(--olive);padding:0 .25em}
.osteothai-explainer h3{margin:0 0 1.6rem}.osteothai-explainer p{margin:0 0 1.1rem}.osteothai-explainer p:last-child{margin-bottom:0}
.retreat-about{display:grid;grid-template-columns:.92fr 1.08fr;min-height:680px;padding:0}
.retreat-about-photo{margin:0;min-width:0;overflow:hidden;position:relative}
.retreat-about-photo img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%}
.retreat-about-copy{padding:clamp(5rem,10vw,9rem) 6.1vw;display:flex;flex-direction:column;justify-content:center}
.retreat-about-copy>p:not(.page-kicker){max-width:45ch}
@media(max-width:800px){.retreat-about{grid-template-columns:1fr;min-height:0}.retreat-about-photo{height:85vw;max-height:620px}.retreat-about-copy{padding:4rem 5vw 5rem}}
.two-column>div>:last-child,.closing>div>:last-child{margin-bottom:0}
/* Consistent 2rem between a headline and what follows it */
.page-section h2,.closing h2{margin-bottom:2rem}
.closing h2{margin-bottom:1rem}
.retreat-about-copy>h2+p{margin-top:0}
.two-column>div>:first-child,.closing>div>:first-child{margin-top:0}
@media(max-width:800px){.two-column,.closing{row-gap:2rem}}
.experience-grid,.format-grid,.event-grid{margin-top:2rem}
.participant-stories{margin-top:3rem}
.participant-stories-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:1.2rem}
.participant-stories .participant-story{display:block;margin:0}
.participant-stories .participant-story video{max-width:none}
.participant-stories .participant-story-title{max-width:none;margin:1rem 0 .6rem;padding-top:1rem}
@media(max-width:480px){.participant-stories-grid{grid-template-columns:1fr}.participant-stories .participant-story video{max-width:320px}}
.event-card .event-location{margin:-.4rem 0 1rem;opacity:.75;max-width:none}
.event-links{display:flex;flex-wrap:wrap;gap:0 1.6rem}
/* Header floats over the hero, like on the homepage */
.subpage .site-header{position:absolute;background:transparent;border-bottom:0}
.subpage .page-hero-media,.subpage .retreat-hero-gallery{position:relative}
.subpage .page-hero-media::before,.subpage .retreat-hero-gallery::before{content:"";position:absolute;z-index:1;inset:0 0 auto;height:9rem;background:linear-gradient(rgba(20,24,14,.45),rgba(20,24,14,0));pointer-events:none}
@media(min-width:801px){.subpage .site-header .brand{color:var(--olive)}}
.legal-page .site-header{position:relative;background:transparent;color:var(--olive)}
.legal-page .site-header .brand{color:var(--olive)}
.retreat-hero-slide:not([hidden]){animation:heroFade .9s ease}
@keyframes heroFade{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.retreat-hero-slide:not([hidden]){animation:none}}
