/* Full-bleed moving portrait of a lifestyle; distinct from the client workspace. */
:root{--paper:#f7f5ee;--ink:#172e26;--line:#203e3326;--lime:#d9f191}
body{background:var(--paper);color:var(--ink)}
header{height:88px;background:#10291feb;color:#f5f7ed;border-color:#ffffff1f;padding-inline:5%;gap:24px;backdrop-filter:blur(18px)}
.wordmark{font-family:Georgia,serif;font-size:32px;font-weight:400;letter-spacing:-1px}.wordmark>span{font-family:Arial,sans-serif;font-size:10px;letter-spacing:2.6px;color:#c2d1bd}nav{gap:27px;font-size:14px}.nav-cta{background:var(--lime);color:#183222;border:0;padding:15px 24px}.nav-cta:hover{background:#e7ffb0}
.hero{display:block;position:relative;padding:0 6%;min-height:760px;height:calc(100svh - 88px);max-height:1000px;overflow:hidden;isolation:isolate;background:#10291f;color:#f5f7ed}
.hero-copy{position:relative;z-index:2;pointer-events:none;max-width:780px;height:100%;min-height:760px;padding:46px 0 42px;display:flex;align-items:flex-start;flex-direction:column}.hero-copy a{pointer-events:auto}.hero-edition{font-size:12px;letter-spacing:3px;color:#d3dfc7;margin-bottom:auto}.hero-copy>.eyebrow{font-size:12px;letter-spacing:2px;color:#e0e8d7;margin-top:65px}.hero-copy>.eyebrow>span{display:none}
h1{font-size:clamp(70px,7.8vw,122px);font-weight:500;line-height:.97;letter-spacing:-6px;margin:27px 0 28px;max-width:780px}h1 em{font-family:Georgia,serif;color:var(--lime);letter-spacing:-5px}.hero-copy>p{color:#dee6d9;font-size:18px;line-height:1.65;margin:0;max-width:450px;white-space:normal!important}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:0;width:100%;margin-top:6px}.button{background:#214e36;color:#fff;font-size:15px;border-radius:100px;padding:19px 25px;gap:28px;border:1px solid transparent;transition:transform .25s,background .25s,box-shadow .25s}.hero .button{background:var(--lime);color:#153423;box-shadow:0 8px 28px #0002}.hero .button:hover{background:#e6ffa7;transform:translateY(-3px)}.hero .client-entry{color:#e0e8da;border-color:#d3e2c85c;font-size:14px;margin-top:19px}.hero-bottom{display:flex;flex-wrap:wrap;gap:22px;margin-top:auto;padding-top:42px;font-size:12px;letter-spacing:.1px;color:#d2decb}
.hero-visual{position:absolute;inset:0;padding:0;z-index:0;animation:none}.wellness-collage{position:static;height:100%;color:#fff}.wellness-art{position:absolute;inset:0;height:auto;transform:none}.wellness-frame{position:absolute;inset:0;width:100%;max-width:none;height:100%;aspect-ratio:auto;border:0;border-radius:0;background:#163324;box-shadow:none}.wellness-collage .wellness-scene{object-fit:cover;object-position:65% 45%!important;transform:none;animation:none}.wellness-collage video.wellness-scene{object-position:70% 45%!important}.wellness-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b251ff7 0%,#102b22e8 25%,#102b2260 58%,#102b2210 100%),linear-gradient(0deg,#10271f 0%,transparent 28%,#12291c28 100%);pointer-events:none}.wellness-frame-label{display:none}.wellness-caption{position:absolute;right:6%;bottom:150px;max-width:27%;color:#fff;background:none;border:0;box-shadow:none;backdrop-filter:none;padding:0;font-family:Georgia,serif;font-size:29px;font-style:italic;line-height:1.3;text-align:right;animation:appear .5s ease-out;z-index:1}.wellness-controls{position:absolute;bottom:73px;right:6%;z-index:4;display:flex;justify-content:flex-end;gap:10px;margin:0}.wellness-choices{background:#142c23b3;backdrop-filter:blur(16px);border:1px solid #d2e4bd55;border-radius:100px;padding:5px}.wellness-choices button{font-size:14px;color:#e3ecd9;padding:12px 17px}.wellness-choices button span{font-size:11px}.wellness-choices button[aria-pressed=true]{background:var(--lime);color:#1b3625}.wellness-pause{width:44px;height:44px;background:#142c23b3;color:#fff;border-color:#d2e4bd77}.wellness-collage figcaption{position:absolute;bottom:39px;right:6%;margin:0;font-size:12px;color:#e0e8d9;z-index:3}.wellness-collage figcaption a{color:inherit}.hero-index{display:none}
.ticker{background:var(--lime);color:#294531;font-size:22px;padding:20px 0;letter-spacing:-.5px;border:0}.ticker span{color:#34573a;font-size:28px}.ticker>div{animation-duration:42s}
.approach{padding:110px 6%;grid-template-columns:.95fr 1.05fr;gap:8%;border-color:var(--line)}h2{font-family:Georgia,serif;font-size:clamp(40px,4.9vw,72px);letter-spacing:-2px}.eyebrow{font-size:12px}.approach h2{max-width:560px}.approach-copy p:first-child{font-size:26px;line-height:1.55}.approach-copy p{color:#5a6958}.approach-pillars{margin-top:32px}.approach-pillars>div{border-color:var(--line)}.approach-pillars>div>span{font-family:Georgia,serif;font-size:28px;color:#5c7d47}
.programs{padding:90px 6%;background:#e7ecd9}.section-top{align-items:flex-end}.section-top>span{font-size:12px;color:#546747}.program-grid{gap:20px;margin-top:40px}.program-grid>a{position:relative;min-height:380px;border-radius:5px;background:#f7f7ed;border:1px solid #54724333;padding:32px;display:flex;flex-direction:column}.program-grid>a:nth-child(2){background:#cbdba7}.program-grid>a:nth-child(3){background:#183d2c;color:#f4f7ea}.program-number{font-size:12px;opacity:.85}.program-grid h3{font-family:Georgia,serif;font-size:37px;line-height:1.15;letter-spacing:-1px;margin:36px 0 20px}.program-grid p{font-size:16px;max-width:none;opacity:.9;line-height:1.7}.program-grid a>div{font-size:14px;margin-top:auto;padding-top:20px}.program-grid>a:hover{transform:translateY(-6px);box-shadow:0 20px 40px #183b1c15}.source-note{font-size:13px;color:#53634a;margin-top:28px}
.platform{margin:0;background:#133025;border-radius:0;padding:90px 6%;grid-template-columns:1fr 1fr;gap:10%;position:relative;isolation:isolate;overflow:hidden}.platform:before{content:"";position:absolute;inset:-70%;z-index:-1;background:radial-gradient(ellipse at 40% 45%,#aeda6740,transparent 28%);animation:forest-light 16s ease-in-out infinite alternate}.platform-mark{font-size:clamp(70px,8vw,125px);letter-spacing:-6px;color:#d9f191}.platform h2{font-size:clamp(38px,4vw,56px)}.platform p{font-size:17px;color:#d1deca}.light{background:var(--lime);color:#153723}
.contact-hub{padding:85px 6%}.contact-options article{border-radius:6px}.contact-options h3{font-family:Georgia,serif;font-size:36px}.contact-options p{font-size:16px;line-height:1.7}.closing-invitation{background:#e8ecdc;padding:90px 6%;text-align:center}.closing-invitation h2{max-width:800px;margin-inline:auto}.closing-invitation h2 em{color:#567237}.closing-invitation p{font-size:17px;color:#53634b}.brand-public{border-color:var(--line)}footer{background:#10291f;color:#cbd9c4;border:0;padding:40px 6%;gap:24px}footer .wordmark{color:#f4f7eb}.motion-toggle{font-size:12px}.whatsapp-dock{z-index:9}
@keyframes forest-light{from{transform:translate3d(-3%,0,0)}to{transform:translate3d(10%,6%,0)}}
@media(min-width:1600px){.hero-copy{max-width:900px}h1{max-width:900px}}
@media(max-width:1100px){nav{gap:18px}nav>a{font-size:13px}.hero{min-height:750px}.hero-copy{min-height:750px;max-width:650px}h1{font-size:90px;letter-spacing:-5px}.wellness-caption{font-size:25px;bottom:170px}.hero-bottom{max-width:390px;gap:12px}.wellness-choices button{padding:11px 13px}.program-grid h3{font-size:30px}.program-grid>a{padding:26px}}
@media(max-width:800px){header{height:78px}nav>a:not(.nav-cta){display:none}.hero{height:auto;min-height:830px;padding-inline:6%}.hero-copy{min-height:830px;padding:29px 0 190px;max-width:100%}.hero-edition{margin:0 0 46px;font-size:11px;letter-spacing:2px}.hero-copy>.eyebrow{margin-top:0;font-size:11px}h1{font-size:clamp(62px,10.5vw,88px);line-height:1;letter-spacing:-3.5px;margin:22px 0}h1 em{letter-spacing:-3px}.hero-copy>p{font-size:17px;max-width:400px}.hero .button{font-size:15px;padding:18px 22px;gap:25px}.hero-bottom{display:flex;margin-top:0;padding-top:29px;font-size:11px;gap:13px;max-width:100%}.wellness-frame:after{background:linear-gradient(90deg,#0c261fe6,#0c261f88 75%,#0c261f55),linear-gradient(0deg,#10271f,transparent 60%)}.wellness-collage .wellness-scene,.wellness-collage video.wellness-scene{object-position:60% center!important}.wellness-caption{display:none}.wellness-controls{bottom:76px;left:6%;right:auto;max-width:88%;justify-content:flex-start}.wellness-choices button{font-size:14px;padding:12px 14px}.wellness-choices button span{display:none}.wellness-collage figcaption{left:6%;right:auto;bottom:45px;font-size:12px;text-align:left}.approach{grid-template-columns:1fr;gap:22px;padding:66px 6%}.approach-copy p:first-child{font-size:23px}.programs{padding:65px 6%}.section-top>span{display:none}.program-grid{grid-template-columns:1fr;gap:17px}.program-grid>a{min-height:310px;padding:28px}.program-grid h3{font-size:34px;margin:25px 0 16px}.program-grid h3 br{display:none}.program-grid p{margin-bottom:27px}.platform{grid-template-columns:1fr;padding:65px 6%;gap:24px}.platform-mark{font-size:80px}.contact-hub{padding:65px 6%}.contact-options h3{font-size:32px}.closing-invitation{padding:65px 6%}.whatsapp-dock{bottom:15px;right:15px}}
@media(max-width:400px){.wordmark{font-size:27px}.nav-cta{padding:13px 17px;font-size:13px}.hero{min-height:835px}.hero-copy{min-height:835px}.hero-edition{margin-bottom:36px}h1{font-size:62px}.hero-copy>p{font-size:16px}.hero .button{font-size:14px;padding:17px 20px;gap:15px}.hero-bottom{gap:12px}.wellness-choices button{padding:11px 12px;font-size:13px}.wellness-collage figcaption{font-size:11px}.wellness-pause{width:40px;height:40px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-reveal{translate:none;opacity:1}}
.motion-paused *,.motion-paused *:before{animation:none!important;transition:none!important}.motion-paused .button:hover,.motion-paused .program-grid>a:hover{transform:none}
/* Clearly perceptible motion, without hijacking scrolling. */
.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:#dbf794;transform:scaleX(0);transform-origin:left;z-index:30;pointer-events:none}
.hero-copy .headline-line{display:block;animation:headline-arrive 1.2s cubic-bezier(.16,1,.3,1) both}.hero-copy .headline-line:nth-child(2){animation-delay:.18s}.hero-copy h1{animation:none}.hero-copy>p{animation:appear 1s .35s both}.hero-actions{animation:appear 1s .5s both}
.hero:after{content:"";position:absolute;inset:-20%;z-index:1;pointer-events:none;opacity:.6;background:radial-gradient(ellipse at 12% 48%,#abc95b28,transparent 37%);animation:hero-light 12s ease-in-out infinite alternate}
.hero .hero-copy{z-index:3}.hero-visual .wellness-controls,.hero-visual figcaption{z-index:4}
.motion-reveal{translate:0 60px;transition:opacity .85s var(--motion-delay,0ms),translate .85s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms)}.motion-reveal.motion-visible{translate:0 0}.program-grid>a.motion-reveal{rotate:2deg;transition:opacity .8s var(--motion-delay,0ms),translate .8s cubic-bezier(.16,1,.3,1) var(--motion-delay,0ms),rotate .8s var(--motion-delay,0ms),transform .3s,box-shadow .3s}.program-grid>a.motion-visible{rotate:0deg}
@keyframes headline-arrive{from{opacity:0;transform:translateY(75px);clip-path:inset(0 0 100% 0)}to{opacity:1;transform:translateY(0);clip-path:inset(0)}}
@keyframes hero-light{from{transform:translate3d(-7%,-3%,0)}to{transform:translate3d(13%,4%,0)}}
@media(prefers-reduced-motion:reduce){.hero-copy .headline-line,.hero-copy>p,.hero-actions,.hero:after{animation:none!important}.motion-reveal,.program-grid>a.motion-reveal{translate:none;rotate:none;opacity:1}}
.motion-paused .hero-copy .headline-line,.motion-paused .hero-copy>p,.motion-paused .hero-actions{animation:none!important}.motion-paused .program-grid>a.motion-reveal{rotate:none}
/* Keep the portrait film at a human scale rather than cropping it to landscape. */
@media(min-width:801px){.wellness-collage .wellness-scene{left:auto;right:0;width:55%;object-position:center 45%!important}.wellness-collage video.wellness-scene{object-position:center 45%!important}.wellness-frame:after{background:linear-gradient(90deg,#10291f 0%,#10291f 31%,#10291fc7 46%,#10291f20 72%),linear-gradient(0deg,#10271f 0%,transparent 28%)}.hero-copy{max-width:780px}}
.hero-visual .wellness-art{height:100%}.hero-visual .wellness-collage{max-width:none}footer{padding-bottom:105px}
@media(max-width:800px){.hero-copy h1{font-size:clamp(54px,9.6vw,76px);max-width:100%;letter-spacing:-3px}.hero-copy{padding-top:29px}.wellness-controls{bottom:100px}.wellness-collage figcaption{bottom:72px}.wellness-frame:after{background:linear-gradient(90deg,#0c261fe6,#0c261f99 70%,#0c261f66),linear-gradient(0deg,#10271f,transparent 50%)}}
/* Final responsive composition: readable copy, uncropped footage, controls in their own space. */
.hero{height:auto;min-height:620px;max-height:none}
.hero .hero-copy{width:62%;max-width:960px;min-height:clamp(620px,calc(100svh - 88px),820px);height:auto;padding:40px 0 36px;justify-content:center}
.hero-edition{margin:0 0 36px}.hero-copy>.eyebrow{margin:0}
.hero-copy h1{font-size:clamp(56px,5.5vw,92px);line-height:1.04;letter-spacing:-.055em;max-width:none;margin:24px 0}.hero-copy h1 em{letter-spacing:-.055em;white-space:nowrap}
.hero-copy>p{max-width:470px;font-size:17px;line-height:1.7}.hero-copy>p br{display:none}
.hero-actions{margin:22px 0 0;gap:0}.hero-actions .button{margin:0;padding:17px 24px}.hero .client-entry{margin-top:14px}.hero-bottom{margin:28px 0 0;padding:0;gap:12px 20px;max-width:100%}
.hero-visual .wellness-frame{inset:24px 3% 115px auto;width:42%;height:calc(100% - 139px);background:transparent;border-radius:0;max-width:none}
.hero-visual .wellness-frame .wellness-scene{width:100%;height:100%;inset:0;object-fit:contain;object-position:center!important;transform:none;animation:none}
.hero-visual .wellness-frame:after{background:linear-gradient(90deg,#10291f 0%,#10291f00 18%,#10291f00 85%,#10291f 100%);inset:0}
.wellness-caption{display:none}.wellness-controls{right:4%;left:auto;bottom:45px;max-width:44%;justify-content:center}.wellness-collage figcaption{right:4%;left:auto;bottom:18px;max-width:44%;text-align:center;font-size:12px}.wellness-choices button{padding:10px 12px;font-size:14px}.wellness-choices button span{display:none}
footer .whatsapp-dock{position:static;flex:0 0 auto;margin:0;border-color:#ffffff30;background:#19392c;box-shadow:none;padding:5px 12px 5px 5px;z-index:auto}footer .whatsapp-dock small{color:#d4dfca}footer{padding-bottom:42px}
@media(max-width:1100px) and (min-width:801px){.hero .hero-copy{width:61%}.hero-copy h1{font-size:clamp(48px,5.5vw,61px)}.wellness-controls{gap:6px;right:2%;max-width:41%}.wellness-choices button{font-size:12px;padding:10px}.wellness-pause{width:36px;height:36px}.hero-bottom{font-size:11px}.wellness-collage figcaption{font-size:10px;right:2%}}
@media(max-width:800px){
 .hero{min-height:0;padding:0 6%;overflow:hidden}.hero .hero-copy{width:100%;min-height:0;max-width:none;padding:32px 0 30px;height:auto}.hero-edition{margin:0 0 28px}.hero-copy>.eyebrow{font-size:11px}
 .hero-copy h1{font-size:clamp(40px,10.2vw,72px);line-height:1.07;margin:20px 0;letter-spacing:-.055em}.hero-copy h1 em{letter-spacing:-.055em}.hero-copy>p{font-size:16px;max-width:520px}.hero-actions .button{font-size:15px;padding:16px 22px;gap:20px}.hero .client-entry{font-size:13px}.hero-bottom{margin-top:24px;gap:10px 18px;font-size:12px;line-height:1.6}
 .hero-visual{position:relative;inset:auto;width:100%;padding:0}.hero-visual .wellness-collage{position:relative;height:auto;max-width:100%}.hero-visual .wellness-art{position:relative;inset:auto;height:auto!important;aspect-ratio:9/13;max-height:580px;transform:none}.hero-visual .wellness-frame{inset:0;width:100%;height:100%;border-radius:16px;max-width:none;background:#10291f}.hero-visual .wellness-frame:after{background:none}.hero-visual .wellness-frame .wellness-scene{object-fit:contain;object-position:center!important}
 .wellness-controls{position:relative;inset:auto;max-width:100%;margin:16px 0 0;justify-content:center}.wellness-choices button{font-size:14px;padding:11px 14px}.wellness-pause{width:42px;height:42px}.wellness-collage figcaption{position:relative;inset:auto;max-width:100%;margin:12px 0 24px;font-size:12px;line-height:1.6}.hero:after{z-index:0}.hero-visual{z-index:1}.approach h2{position:static}
}
@media(max-width:360px){.hero-copy h1{font-size:36px}.wellness-choices button{font-size:13px;padding:10px}.hero-edition{letter-spacing:1.4px}}
@media(min-width:801px){.hero-visual .wellness-frame{overflow:hidden;border-radius:20px;background:#1a3529}.hero-visual .wellness-frame:before{content:"";position:absolute;inset:-24px;background:linear-gradient(#10291f50,#10291f90),url('media/forest-runner-poster.jpg') center/cover;filter:blur(20px);opacity:.65}.wellness-controls{width:42%;right:3%;max-width:none}.wellness-collage figcaption{width:42%;right:3%;max-width:none}.hero-visual .wellness-frame:after{background:linear-gradient(90deg,#10291f55,transparent 30%,transparent 70%,#10291f55)}}
@media(max-width:800px){.hero{display:flex;flex-direction:column;align-items:stretch;gap:0}.hero .hero-copy,.hero-visual{flex:0 0 auto}.wellness-collage figcaption{margin-bottom:0;padding-bottom:24px}}
footer .whatsapp-dock small{width:auto;flex:0 0 auto;margin:0;white-space:nowrap}
