.reading-progress{position:fixed;top:0;left:0;width:100%;height:4px;background:#ed792c;transform:scaleX(0);transform-origin:left;z-index:100;pointer-events:none}.motion-control{position:fixed;bottom:16px;right:18px;z-index:20;border:1px solid #a8b59b;background:#f2e8d5ed;color:#153e35;padding:8px 14px;border-radius:99px;font:800 .7rem Nunito,sans-serif;box-shadow:0 3px 15px #153e3510}.hero-photo{translate:var(--move-x,0px) var(--move-y,0px);transition:translate .35s ease-out}.hero-copy{animation:hero-enter .9s both}.hero-photo{animation:hero-enter 1.1s .15s both}.sun-disc:before{content:'';position:absolute;inset:-35px;border:1px dashed #b18c4280;border-radius:50%;animation:orbit 70s linear infinite}.hero-sticker{animation:sticker-sway 6s ease-in-out infinite}.scroll-cue span{animation:cue-bounce 2s ease-in-out infinite}.vibe-selector{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.vibe-selector button{border:1px solid #759581;background:transparent;color:#f2e8d5;padding:10px 18px;border-radius:99px;font-size:.8rem;font-weight:800;transition:background .2s,transform .2s}.vibe-selector button:hover,.vibe-selector button:focus-visible{background:#e9ac46;color:#153e35;transform:translateY(-3px)}.experience-track{margin-top:22px}.experience>img{transition:filter .4s,border-radius .5s}.experience:hover>img{filter:saturate(1.13)}.activation-grid figure{transition:transform .4s}.activation-grid figure:hover{transform:translateY(-5px)}.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important;scroll-behavior:auto!important}.motion-paused .hero-photo{translate:0 0}.motion-paused .reveal{opacity:1;transform:none;transition:none}.motion-paused .hero-copy,.motion-paused .hero-photo{animation:none;opacity:1}.motion-paused .experience,.motion-paused .activation-grid figure{transition:none}@keyframes hero-enter{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}@keyframes orbit{to{transform:rotate(360deg)}}@keyframes sticker-sway{50%{transform:rotate(4deg)}}@keyframes cue-bounce{50%{translate:0 5px}}@media(max-width:680px){.vibe-selector{gap:8px}.vibe-selector button{font-size:.7rem;padding:8px 12px}.motion-control{bottom:10px;right:10px;font-size:.65rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo{translate:0 0!important}}
.vibe-selector button[aria-pressed="true"]{background:#e9ac46;color:#153e35}.experience-track{position:relative;touch-action:pan-x pan-y}
@media(pointer:coarse){.hero-photo{transition:translate .16s ease-out}.experience.in-view>img{border-radius:24px;filter:saturate(1.1)}.experience.in-view h3{color:#e9ac46}.motion-control{min-height:44px}.vibe-selector button{min-height:44px}.experience h3{transition:color .4s}}
@media(prefers-reduced-motion:reduce){html.motion-enabled .hero-photo img{animation:float 7s ease-in-out infinite!important}html.motion-enabled .hero-sticker{animation:sticker-sway 6s ease-in-out infinite!important}html.motion-enabled .sun-disc:before{animation:orbit 70s linear infinite!important}html.motion-enabled .scroll-cue span{animation:cue-bounce 2s ease-in-out infinite!important}html.motion-enabled .hero-photo{translate:var(--move-x,0px) var(--move-y,0px)!important}}

/* Contain decorative overflow without blocking the experience carousel. */
html{overflow-x:hidden;overflow-x:clip}body{width:100%;min-width:0;overflow-x:hidden;overflow-x:clip}main,.hero-copy,.hero-photo,.essence>*,.mala>*,.video-layout>*{min-width:0}.experience-track,.interview-track{max-width:100%;overscroll-behavior-x:contain}
@media(max-width:680px){.header{gap:12px}.header .logo{max-width:36vw;height:auto}.header .button.small{padding:10px 12px;font-size:.78rem;gap:10px}.section-heading{flex-wrap:wrap;gap:20px}.hero:before{right:-35vw;max-width:100vw}.ribbon{width:100%;margin-left:0;transform:none}.hero h1{font-size:clamp(3.5rem,18vw,6.4rem)}}

.button .cta-arrow{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#f2e8d5;color:#176449;transition:transform .25s ease,background .25s ease}.cta-arrow svg{display:block;width:21px;height:21px}.button:hover .cta-arrow,.button:focus-visible .cta-arrow{transform:rotate(45deg);background:#fff}.hero-actions .button,.closing .button{gap:22px;padding:12px 14px 12px 24px}.header nav{margin-left:auto}@media(prefers-reduced-motion:reduce){.button .cta-arrow{transition:none}}
