
.freedom-moment{position:relative;isolation:isolate;background:#08090d;color:#f5eedf;overflow:clip;text-align:center;border-block:1px solid #dec58a33}
.freedom-scene{position:relative;max-width:1100px;margin:auto;padding:110px 32px;min-height:70svh;align-content:center}
.freedom-scene h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(29px,4.7vw,65px);line-height:1.17;letter-spacing:-.025em;color:#f1d89c;text-wrap:balance;max-width:1000px;margin:40px auto}
.freedom-scene p{font-size:clamp(18px,1.7vw,23px);line-height:1.7;max-width:740px;margin:16px auto;color:#e1dbd0}
.freedom-still{min-height:100svh}.freedom-still h2:last-child{margin-top:100px}
.freedom-coordinate{display:block;position:relative;margin:60px auto;width:12px;height:12px;border-radius:50%;background:#fff2c7;box-shadow:0 0 20px 5px #e8c47677,0 0 70px 18px #e8c47622}
.freedom-converge{min-height:950px}.freedom-paths{position:absolute;inset:10% 0 20%;opacity:.55;pointer-events:none}.freedom-paths svg{width:100%;height:100%;position:absolute;inset:0;fill:none;stroke:#dfc283;stroke-width:1;stroke-dasharray:700;stroke-dashoffset:700}.freedom-paths img{position:absolute;width:clamp(160px,28vw,300px);height:auto;left:50%;top:50%;transform:translate(-50%,-50%);opacity:.34}
.freedom-byo{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:65px 40px;align-items:center;min-height:600px}.freedom-byo h3{font:400 clamp(24px,3.1vw,42px)/1.3 Georgia,serif;color:#f3dfb3;text-shadow:0 0 30px #bda36166;margin:0}.freedom-byo h3:nth-child(3){grid-column:1/-1}.freedom-byo .freedom-coordinate{grid-column:1/-1}
.freedom-alone{margin:30px auto 90px}.freedom-alone p{letter-spacing:.18em}.freedom-alone .freedom-coordinate:before{content:'';position:absolute;width:1px;height:100px;bottom:6px;left:6px;background:linear-gradient(transparent,#f3cf78);transform:scaleY(0);transform-origin:bottom}
.freedom-believe h2:first-child{font-size:clamp(37px,6.5vw,88px);margin-bottom:85px}.freedom-release{background:radial-gradient(ellipse at 50% 25%,#31261655,transparent 60%)}.freedom-end{min-height:60svh;padding-bottom:100px}.freedom-end h2{font-size:clamp(28px,4vw,52px)}
.freedom-motion .freedom-scene>*{transition:opacity 1.3s ease,transform 1.3s ease}.freedom-motion .freedom-scene:not(.freedom-seen)>*{opacity:.25;transform:translateY(20px)}
.freedom-seen .freedom-paths svg{animation:freedom-path-in 2.5s ease forwards}.freedom-seen .freedom-byo h3{animation:freedom-arrive 1.5s both;animation-delay:var(--delay)}.freedom-seen .freedom-alone .freedom-coordinate:before{animation:freedom-thread 2s 1s forwards}.freedom-seen .freedom-want .freedom-coordinate{animation:freedom-pulse 3s ease-in-out 3}
body.freedom-active .journey-atmosphere,body.freedom-active .traveller-hud{opacity:0;transition:opacity 1.2s}body.freedom-active .journey-progress{opacity:.2}
@keyframes freedom-arrive{from{opacity:0;transform:translate(var(--dx),var(--dy))}to{opacity:1;transform:none}}@keyframes freedom-path-in{to{stroke-dashoffset:0}}@keyframes freedom-thread{to{transform:scaleY(1)}}@keyframes freedom-pulse{50%{transform:scale(1.35);box-shadow:0 0 30px 8px #e8c47699,0 0 80px 22px #e8c47633}}
@media(max-width:600px){.freedom-scene{padding:80px 25px}.freedom-byo{gap:65px 16px;min-height:520px}.freedom-byo h3{font-size:22px}.freedom-converge{min-height:720px}.freedom-scene h2{overflow-wrap:break-word}.freedom-still{padding-top:110px}.freedom-moment{scroll-margin-top:70px}}
@media(prefers-reduced-motion:reduce){.freedom-moment *, .freedom-moment *:before{animation:none!important;transition:none!important;transform:none}.freedom-motion .freedom-scene:not(.freedom-seen)>*{opacity:1}.freedom-paths svg{stroke-dashoffset:0}.freedom-alone .freedom-coordinate:before{transform:scaleY(1)}.freedom-paths img{transform:translate(-50%,-50%)}}
