:root{--cream:#fff6df;--navy:#062a36;--coral:#ff764b;--mint:#b8efcc;--pink:#fc99bd;--serif:'Cormorant Garamond',Georgia,serif;--display:'Syne',Arial,sans-serif;--mx:0;--my:0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:#072d45;color:var(--cream);font-family:'DM Sans',Arial,sans-serif;overflow-x:hidden;font-size:15px}a{color:inherit;text-underline-offset:5px}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}button{border:0}button:disabled{opacity:.65}body.dialog-open{overflow:hidden}.skip{position:fixed;top:-100px;left:15px;padding:20px;background:var(--cream);color:var(--navy);z-index:100}.skip:focus{top:15px}.grain{position:fixed;inset:0;z-index:15;pointer-events:none;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 150 150' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h150v150H0z'/%3E%3C/svg%3E")}#dust{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:8}.cursor{width:70px;height:70px;position:fixed;left:0;top:0;border:1px solid #fff7b7aa;border-radius:50%;pointer-events:none;z-index:99;transform:translate(-100px,-100px);transition:width .25s,height .25s,background .25s;mix-blend-mode:screen}.cursor span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:8px;letter-spacing:.12em;opacity:0}.cursor.over{background:#ff805044;width:86px;height:86px}.cursor.over span{opacity:1}.topbar{position:fixed;top:0;left:0;right:0;z-index:25;display:flex;justify-content:space-between;align-items:center;padding:27px 4.5%;color:var(--cream);transition:background .4s;mix-blend-mode:difference}.brand{display:flex;gap:14px;align-items:center;text-decoration:none;font-family:var(--display);font-size:23px;letter-spacing:-.04em;font-weight:700}.brand-symbol{font-family:Georgia,serif;font-size:45px;line-height:1;animation:spin 28s linear infinite}.brand small{font-family:'DM Sans',sans-serif;display:block;font-size:7px;letter-spacing:.24em;font-weight:400;margin-top:3px}.top-actions{display:flex;gap:28px;align-items:center}.top-actions button{background:transparent;font-size:10px;text-transform:uppercase;letter-spacing:.12em;display:flex;gap:12px;align-items:center}.motion-icon{font-size:28px;line-height:.6}.top-actions i{width:28px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.chapter-rail{position:fixed;right:25px;top:50%;transform:translateY(-50%);z-index:24;display:flex;flex-direction:column;gap:17px;mix-blend-mode:difference}.chapter-rail a{display:flex;gap:9px;align-items:center;color:var(--cream);text-decoration:none}.chapter-rail span{font-size:8px;opacity:0;transition:opacity .3s}.chapter-rail i{width:5px;height:5px;border-radius:100%;background:currentColor;opacity:.45;transition:transform .3s,opacity .3s}.chapter-rail .active i{transform:scale(1.7);opacity:1}.chapter-rail .active span,.chapter-rail a:hover span{opacity:1}.hero{height:100svh;min-height:680px;position:relative;overflow:hidden;background:#1b8491;--hp:0}.hero-art{position:absolute;inset:-3%;transform:scale(calc(1.04 + var(--hp)*.09)) translate3d(calc(var(--mx)*-10px),calc(var(--my)*-10px + var(--hp)*35px),0);will-change:transform}.hero-art img,.hero-art canvas{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.hero-art canvas{opacity:0;transition:opacity 1s}.hero-art canvas.ready{opacity:1}.hero-vignette{position:absolute;inset:0;background:linear-gradient(180deg,#13234645,transparent 35%,#021c3466);pointer-events:none}.hero-kicker{position:absolute;top:23%;left:7%;right:7%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.2em;text-shadow:0 2px 15px #0005}.hero-title{position:absolute;top:33%;left:6.4%;transform:translate3d(calc(var(--mx)*-9px),calc(var(--hp)*-95px),0);will-change:transform}.hero-title>p{font-size:16px;margin:0 0 5px 1%;text-shadow:0 2px 15px #0004}.hero h1{font-family:var(--serif);font-size:clamp(150px,25vw,460px);font-weight:500;line-height:.68;margin:22px 0 0;letter-spacing:-.055em;text-shadow:0 10px 55px #03233923}.hero h1>span{display:block;font-family:var(--serif);font-size:clamp(28px,4vw,64px);letter-spacing:-.02em;font-style:italic;line-height:1.4;padding-left:5px;margin-top:15px}.hero-orbit{position:absolute;right:9%;top:17%;width:150px;height:150px;z-index:1;transform:translate3d(calc(var(--mx)*20px),calc(var(--my)*20px),0)}.hero-orbit svg{width:100%;height:100%;fill:var(--cream);font-size:12px;letter-spacing:2px;animation:spin 35s linear infinite}.hero-orbit>span{position:absolute;inset:0;display:grid;place-items:center;font-size:60px;color:#fff6df;animation:breath 7s ease-in-out infinite}.hero-bottom{position:absolute;bottom:9%;left:7%;right:7%;display:flex;align-items:end;justify-content:space-between;gap:30px}.enter{display:flex;align-items:center;gap:16px;text-decoration:none;font-size:9px;letter-spacing:.18em}.enter small{display:block;letter-spacing:0;font-size:11px;margin-top:8px;opacity:.8}.enter-arrow{width:50px;height:65px;border:1px solid #fff6df88;border-radius:30px;display:grid;place-items:center;font-size:25px;animation:bob 3s ease-in-out infinite}.plan-trigger{background:transparent;border-bottom:1px solid #fff6df99;padding:12px 0;font-size:12px}.plan-trigger span{margin-left:35px;font-size:22px}.art-label{position:absolute;bottom:24px;right:7%;font-size:7px;letter-spacing:.15em;opacity:.65}.mini{font-size:9px;letter-spacing:.2em;text-transform:uppercase}.threshold{height:185svh;background:#381b69;position:relative;--p:0}.threshold-sticky{height:100svh;min-height:650px;position:sticky;top:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at 18% 95%,#f1798466,transparent 60%),radial-gradient(ellipse at 90% 8%,#126daa77,transparent 55%),#381b69}.threshold-words{z-index:2;position:relative;width:74%;transform:translateY(calc((var(--p) - .5)*-50px))}.threshold h2{font-family:var(--display);font-size:clamp(52px,6.7vw,110px);font-weight:700;line-height:1.06;letter-spacing:-.06em;margin:35px 0 25px;max-width:940px}.threshold h2 em{font-family:var(--serif);font-size:1.3em;font-weight:500;line-height:.8;color:#ffa87e;letter-spacing:-.04em}.threshold h2>span{color:#fcc271;display:inline-block;opacity:calc(.25 + var(--p)*.85);transform:translateX(calc((1 - var(--p))*28px))}.threshold-copy{font-size:13px;line-height:1.85;color:#eddbef}.halo{position:absolute;width:50vw;height:50vw;border:1px solid #f6d5b144;border-radius:50%;left:55%;top:13%;transform:translateX(calc(var(--p)*-150px)) rotate(calc(var(--p)*120deg));box-shadow:0 0 75px #ad62c71f,inset 0 0 50px #e099ad15}.halo:before{content:'';position:absolute;inset:12%;border:1px solid #f6d5b122;border-radius:50%}.halo:after{content:'';width:20px;height:20px;position:absolute;top:15%;left:13%;background:#fcc271;border-radius:50%;box-shadow:0 0 40px #fcc27177}.halo-two{width:36vw;height:36vw;left:68%;top:29%;transform:translateY(calc(var(--p)*100px)) rotate(calc(var(--p)*-80deg))}.floating-ticket{position:absolute;right:15%;bottom:16%;z-index:3;background:#f3ae8d;color:#572741;padding:22px 36px;transform:rotate(calc(-12deg + var(--p)*20deg)) translateY(calc(var(--p)*-45px));box-shadow:10px 20px 50px #17072f66;clip-path:polygon(0 0,100% 0,100% 40%,94% 50%,100% 60%,100% 100%,0 100%,0 60%,6% 50%,0 40%)}.floating-ticket b{display:block;font-family:var(--display);font-size:57px;line-height:1.1}.floating-ticket span{font-size:7px;letter-spacing:.16em}.threshold-line{position:absolute;bottom:0;left:50%;height:12%;width:1px;background:linear-gradient(transparent,#f9b588)}.journey-scene{height:155svh;position:relative;--p:0}.scene-sticky{height:100svh;min-height:720px;position:sticky;top:0;overflow:hidden;isolation:isolate}.scene-copy{position:absolute;z-index:5;right:9%;top:50%;transform:translateY(calc(-50% + (var(--p) - .5)*-32px));width:38%;max-width:660px}.chapter-tag{font-size:9px;letter-spacing:.19em}.scene-copy h2{font-family:var(--display);font-size:clamp(50px,5.3vw,94px);line-height:1;letter-spacing:-.065em;font-weight:600;margin:29px 0 25px}.scene-copy h2 em{font-family:var(--serif);font-size:1.19em;font-weight:500;line-height:1.05;letter-spacing:-.045em}.scene-copy>p{font-size:13px;line-height:1.9;max-width:390px;opacity:.92}.discover{margin-top:16px;background:none;display:flex;align-items:center;gap:30px;border-bottom:1px solid currentColor;padding:12px 0;font-size:12px}.discover span{width:38px;height:38px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:22px;transition:transform .4s,background .4s}.discover:hover span{transform:rotate(45deg)}.story-link{display:block;margin-top:25px;font-size:10px;line-height:1.7;max-width:335px;text-decoration:none;opacity:.77}.story-link:hover{opacity:1;text-decoration:underline}.scene-floor{position:absolute;bottom:30px;left:7%;right:7%;display:flex;justify-content:space-between;gap:30px;font-size:7px;letter-spacing:.15em;z-index:5}.ghost-word{position:absolute;top:14%;left:-4%;font-family:var(--display);font-size:24vw;font-weight:800;line-height:1;letter-spacing:-.08em;white-space:nowrap;opacity:.09;transform:translateX(calc(var(--p)*-150px));pointer-events:none}.scene-visual{position:absolute;z-index:2;left:7%;width:40%;height:68%;top:18%;transform:translate3d(calc(var(--mx)*-12px),calc((var(--p) - .5)*-50px + var(--my)*-10px),0)}.city .scene-sticky{background:#ff8a69;color:#3e233c}.scene-wash{position:absolute;inset:0;background:radial-gradient(ellipse at 13% 90%,#e6549799,transparent 60%),radial-gradient(ellipse at 90% 10%,#ffd298,transparent 65%)}.city-sun{position:absolute;top:7%;left:22%;width:35vw;height:35vw;background:#ffd28a;border-radius:50%;box-shadow:0 0 100px #ffc684aa;transform:translateY(calc(var(--p)*-55px))}.city-visual .image-shell{height:88%;width:100%;overflow:hidden;border-radius:45% 45% 4px 4px;transform:rotate(calc(-5deg + var(--p)*9deg));box-shadow:0 20px 80px #6b254944}.image-shell img{width:100%;height:110%;object-fit:cover;object-position:60% center;transform:translateY(calc(var(--p)*-5%)) scale(1.03)}.visual-ring{position:absolute;width:70%;aspect-ratio:1;border:1px solid #5e315b66;border-radius:50%;left:-15%;bottom:-3%;transform:rotate(calc(var(--p)*90deg))}.visual-ring:before{content:'';width:18px;height:18px;border-radius:50%;background:#873d6b;position:absolute;top:25%;left:6%}.photo-caption{position:absolute;bottom:4%;left:20%;font-size:7px;letter-spacing:.2em}.floating-word{font-family:var(--serif);font-style:italic;position:absolute;bottom:5%;left:-8%;font-size:13vw;color:#fff0c9;line-height:.8;transform:rotate(-12deg) translateY(calc(var(--p)*25px));text-shadow:3px 5px 20px #64304722;z-index:3}.coast .scene-sticky{background:#097788;color:#f9ffe6}.coast-sky{position:absolute;inset:0;background:linear-gradient(150deg,#128493 10%,#0b586d 55%,#052b49)}.sun-disc{position:absolute;top:5%;right:10%;width:24vw;height:24vw;border-radius:50%;background:radial-gradient(circle at 35% 25%,#fff29b,#ffbd55 70%);box-shadow:0 0 90px #ffe56433;transform:translateY(calc(var(--p)*70px))}.coast-visual{position:absolute;left:0;top:0;width:58%;height:100%;clip-path:polygon(0 0,83% 0,100% 50%,85% 100%,0 100%);transform:translateX(calc((var(--p) - .5)*-20px))}.coast-visual img{width:100%;height:100%;object-fit:cover;object-position:45% center;transform:scale(calc(1.08 + var(--p)*.13)) translate3d(calc(var(--mx)*8px),calc(var(--my)*10px),0);filter:saturate(1.35)}.coast-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#02718100 25%,#077182aa 85%,#06576b)}.sand-layer{position:absolute;bottom:-25%;left:37%;width:70%;height:55%;border-radius:50%;background:#89d6b5;filter:blur(2px);transform:rotate(-18deg) translateY(calc(var(--p)*-20px));opacity:.12}.wave{position:absolute;left:-30%;bottom:-70%;width:140%;height:100%;border:1px solid #baf3dd55;border-radius:48%;transform:rotate(calc(12deg + var(--p)*-10deg));animation:wave 16s ease-in-out infinite;pointer-events:none}.wave-two{bottom:-73%;left:-10%;animation-delay:-8s}.coast-outline{position:absolute;left:-7%;top:10%;font-family:var(--display);font-size:18vw;font-weight:800;letter-spacing:-.06em;color:transparent;-webkit-text-stroke:1px #d1ffc266;transform:translateX(calc(var(--p)*-80px));z-index:3;pointer-events:none}.coast .scene-copy{right:7%;width:39%;top:56%}.coast-handwritten{position:absolute;bottom:15%;left:10%;font-family:var(--serif);font-style:italic;line-height:.85;font-size:6vw;z-index:3;transform:rotate(-10deg) translateY(calc(var(--p)*-40px))}.villages .scene-sticky{background:#f8a6c3;color:#58224f}.village-orbits{position:absolute;inset:0;overflow:hidden}.village-orbits i{position:absolute;left:0;top:-20%;width:80vw;height:80vw;border:1px solid #9436792f;border-radius:50%;transform:rotate(calc(var(--p)*120deg))}.village-orbits i:nth-child(2){inset:6% auto auto 10%;width:65vw;height:65vw}.village-orbits i:nth-child(3){inset:17% auto auto 21%;width:45vw;height:45vw}.village-orbits i:after{content:'';position:absolute;left:15%;top:13%;width:12px;height:12px;background:#fff0c4;border-radius:50%}.villages .ghost-word{top:20%;opacity:.075}.village-visual{width:33%;left:12%;height:64%;top:22%}.arch-photo{height:95%;width:100%;overflow:hidden;border-radius:50% 50% 0 0;position:relative;transform:rotate(calc(2deg - var(--p)*6deg));box-shadow:0 25px 60px #5e224933}.arch-photo img{width:100%;height:115%;object-fit:cover;object-position:45% center;transform:scale(1.1) translateY(calc(var(--p)*-6%));filter:brightness(1.25) saturate(1.05)}.arch-shadow{position:absolute;inset:-4% -7% 3%;border:1px solid #85336577;border-radius:50% 50% 0 0;transform:rotate(calc(-4deg + var(--p)*10deg))}.arch-caption{position:absolute;bottom:-1%;left:15%;font-size:7px;letter-spacing:.2em}.small-orb{width:125px;height:125px;position:absolute;top:8%;left:-16%;background:radial-gradient(circle at 30% 25%,#fff3b5,#ffa878 60%,#dd5b85);border-radius:50%;box-shadow:15px 25px 40px #8f365822;transform:translate3d(calc(var(--mx)*20px),calc(var(--p)*-35px),0);z-index:4}.mountains .scene-sticky{background:#aeda9b;color:#153f3c}.mountain-light{position:absolute;inset:0;background:radial-gradient(ellipse at 15% 10%,#edf29c,transparent 60%),linear-gradient(125deg,transparent 45%,#54b79977)}.mountain-contours{position:absolute;right:-18%;bottom:-30%;width:85vw;color:#277d6477;transform:rotate(calc(var(--p)*12deg))}.mountain-contours svg{width:100%;stroke-width:1}.mountain-collage{position:absolute;left:8%;top:20%;width:38%;height:63%;perspective:1000px}.mountain-slice{position:absolute;height:100%;width:38%;overflow:hidden;box-shadow:12px 18px 35px #184f3e22;transform-style:preserve-3d}.mountain-slice img{height:110%;width:300%;max-width:none;object-fit:cover;object-position:center center}.slice-one{left:0;top:5%;transform:rotate(-7deg) translateY(calc(var(--p)*-45px))}.slice-one img{transform:translateX(-5%)}.slice-two{left:34%;top:-3%;transform:rotate(3deg) translateY(calc(var(--p)*35px))}.slice-two img{transform:translateX(-34%)}.slice-three{left:68%;top:8%;transform:rotate(9deg) translateY(calc(var(--p)*-65px))}.slice-three img{transform:translateX(-65%)}.vertical-word{position:absolute;left:-8%;top:0;font-family:var(--display);font-weight:700;writing-mode:vertical-rl;transform:rotate(180deg);font-size:10px;letter-spacing:.3em}.flamenco .scene-sticky{background:#201241;color:#ffdeb0}.flamenco-glow{position:absolute;inset:0;background:radial-gradient(ellipse at 10% 30%,#853b7877,transparent 65%),radial-gradient(ellipse at 85% 100%,#dc4c5677,transparent 65%)}.flamenco-visual{position:absolute;left:15%;top:14%;width:30%;height:75%;transform:rotate(calc(-5deg + var(--p)*8deg)) translateY(calc(var(--p)*-20px));overflow:hidden;box-shadow:0 20px 80px #11072099;border-radius:4px}.flamenco-visual img{width:100%;height:100%;object-fit:cover;filter:sepia(.22);mix-blend-mode:screen}.vinyl{position:absolute;left:-7%;top:12%;width:45vw;height:45vw;border-radius:50%;background:repeating-radial-gradient(circle,#20122e 0px,#20122e 3px,#714278 4px,#20122e 5px);box-shadow:inset 0 0 40px #08051d,0 0 50px #b8569722;display:grid;place-items:center;animation:spin 38s linear infinite}.vinyl>i{position:absolute;width:25%;height:25%;border:1px solid #f3829c;border-radius:50%;background:#d76f87}.vinyl b{position:relative;z-index:2;font-family:var(--display);text-align:center;font-size:1.4vw;line-height:1.5;color:#49223f}.equalizer{position:absolute;bottom:4%;left:6%;right:6%;height:60px;display:flex;gap:14px;align-items:center;justify-content:center;opacity:.18}.equalizer i{display:block;width:3px;height:100%;background:#ffbd87;animation:equalize 2.1s ease-in-out infinite alternate;transform-origin:center}.equalizer i:nth-child(3n){animation-duration:1.3s;animation-delay:-.8s}.equalizer i:nth-child(3n+1){animation-duration:1.7s;animation-delay:-1.2s}.equalizer i:nth-child(4n){animation-delay:-.3s}.afterglow{background:#ff895d;color:#5b2941;text-align:center;position:relative;padding:120px 8% 100px;overflow:hidden;isolation:isolate}.afterglow-sun{position:absolute;width:650px;height:650px;max-width:85vw;max-height:85vw;left:50%;top:-150px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,#ffd094,#ffb477);z-index:-1;box-shadow:0 0 150px #ffb47766}.afterglow h2{font-family:var(--display);font-size:clamp(45px,6.2vw,100px);line-height:1.05;font-weight:600;letter-spacing:-.06em;margin:35px 0}.afterglow h2 em{font-family:var(--serif);font-weight:500;font-size:1.2em}.afterglow-copy{font-size:13px;line-height:1.85;margin:25px 0 35px}.pill{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;padding:19px 30px;border:1px solid currentColor;border-radius:40px;background:transparent;font-size:12px;text-decoration:none;transition:background .3s,color .3s,transform .3s}.pill:hover{transform:translateY(-3px)}.pill.primary{background:#562943;color:#fff0cf;border-color:#562943}.pill span{font-size:20px}.travel-notes{margin:65px auto 0;max-width:780px;text-align:left}.travel-notes details{border-top:1px solid #5b294144;padding:0 0 10px}.travel-notes details:last-child{border-bottom:1px solid #5b294144}.travel-notes summary{padding:20px 0 10px;font-size:14px;cursor:pointer;display:flex;justify-content:space-between;gap:20px;list-style:none}.travel-notes summary span{font-size:20px}.travel-notes p{font-size:12px;line-height:1.85;max-width:650px}.travel-notes a{font-size:11px;margin-right:20px;display:inline-block;margin-bottom:10px}.maker{background:#241741;position:relative;overflow:hidden;isolation:isolate;padding:110px 8% 80px}.maker-aurora{position:absolute;inset:-20%;background:radial-gradient(ellipse at 80% 25%,#ff746a77,transparent 43%),radial-gradient(ellipse at 5% 65%,#047e8866,transparent 45%),radial-gradient(ellipse at 50% 100%,#8455a177,transparent 50%);animation:aurora 20s ease-in-out infinite alternate;z-index:-1}.maker h2{font-family:var(--display);font-weight:600;font-size:clamp(60px,8vw,140px);letter-spacing:-.07em;line-height:.98;margin:45px 0}.maker h2 em{font-family:var(--serif);font-weight:500;font-size:1.2em;color:#ffa280}.maker-bottom{display:flex;align-items:center;justify-content:space-between;gap:60px}.maker-bottom>p{max-width:520px;font-size:13px;line-height:1.95;color:#eddcf0}.maker-cta{white-space:nowrap;color:#ffc798;border-color:#ffc79888}.service-constellation{margin-top:90px;padding-top:35px;border-top:1px solid #fff6df33;display:grid;grid-template-columns:1fr 1.3fr;gap:10%}.constellation-heading h3{font-family:var(--serif);font-size:40px;font-weight:500;line-height:1.12;margin:10px 0 20px}.constellation-heading p{font-size:11px;color:#dcb8d3;max-width:260px;line-height:1.8}.service-lines a{display:flex;gap:16px;align-items:center;padding:15px 0;border-bottom:1px solid #fff6df22;text-decoration:none;font-family:var(--display);font-size:20px;transition:padding .3s,color .3s}.service-lines a>span{font-family:'DM Sans',sans-serif;font-size:8px;opacity:.65}.service-lines small{margin-left:auto;font-family:'DM Sans',sans-serif;font-size:9px;opacity:.75}.service-lines a:hover{padding-left:10px;color:#ffa280}.project-line{margin-top:65px;border-top:1px solid #fff6df33;padding-top:28px;display:flex;gap:30px;align-items:center;flex-wrap:wrap}.project-line>p{font-size:11px;max-width:200px;margin-right:auto;line-height:1.8}.project-line>a{text-decoration:none;font-size:12px;display:flex;gap:12px;align-items:center}.project-line small{font-size:7px;opacity:.6}.project-line>a:hover{text-decoration:underline}footer{padding:55px 8% 30px;background:#0c3642;color:#dcf2cf}.footer-top{display:flex;justify-content:space-between;align-items:center}.footer-top>a{font-family:var(--serif);font-style:italic;font-size:clamp(35px,5vw,74px);text-decoration:none}.footer-top>a span{font-family:'DM Sans',sans-serif;font-size:.5em;display:inline-block;vertical-align:middle;margin-left:20px}.footer-top button{background:transparent;font-size:10px;border-bottom:1px solid #dcf2cf66;padding:10px 0}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #dcf2cf33;padding-top:25px;margin-top:40px;font-size:7px;letter-spacing:.13em}.footer-bottom a{text-decoration:none}dialog{border:0;padding:0;max-height:90svh;background:#fff2d9;color:#3e2941;overflow-y:auto;width:min(960px,92vw);box-shadow:0 25px 100px #08051c55}dialog::backdrop{background:#071726c9;backdrop-filter:blur(16px)}dialog[open]{animation:dialog-in .4s cubic-bezier(.2,.8,.2,1)}.dialog-close{position:absolute;top:22px;right:22px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff2d9;color:#3e2941;z-index:4;font-size:20px}.dialog-image{width:100%;height:320px;object-fit:cover}.dialog-text{padding:35px 45px 45px}.dialog-text h2,.planner h2,.credits-inner h2{font-family:var(--serif);font-size:70px;font-weight:500;line-height:.9;margin:20px 0 25px;letter-spacing:-.04em}.dialog-text>p{font-size:15px;line-height:1.85;max-width:770px}.dialog-columns{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:25px}.dialog-columns h3{font-size:9px;letter-spacing:.12em}.dialog-columns p{font-size:12px;line-height:1.85}.dialog-source{display:inline-block;font-size:11px;margin-top:25px}.navigation-dialog{position:fixed;inset:0;width:100%;max-width:none;height:100svh;max-height:none;margin:0;background:radial-gradient(ellipse at 90% 80%,#85417866,transparent 65%),#142b45;color:#fff0d4;padding:75px 12%;border:0}.navigation-links{margin:30px 0 35px}.navigation-links a{display:flex;align-items:center;gap:20px;text-decoration:none;font-family:var(--display);font-size:clamp(28px,4vw,60px);line-height:1.35;font-weight:600;letter-spacing:-.04em;transition:color .3s,transform .3s}.navigation-links a>span{font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:0;margin-right:10px;opacity:.55}.navigation-links em{font-family:var(--serif);font-weight:500;margin-left:auto;color:#ffb092;font-size:.8em}.navigation-links a:hover{color:#ffb092;transform:translateX(12px)}.navigation-dialog>.dialog-close{background:transparent;color:#fff0d4;right:5%;top:28px}.planner-inner,.credits-inner{padding:55px 55px 45px}.planner h2,.credits-inner h2{font-size:64px}.planner h2 em,.credits-inner h2 em{color:#c45b65}.route-tabs{display:flex;gap:10px;border-bottom:1px solid #3e294133;margin-top:30px}.route-tabs button{background:transparent;font-size:12px;padding:18px 25px;border-bottom:2px solid transparent}.route-tabs [aria-selected=true]{color:#c45b65;border-color:#c45b65}#route-panel{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:35px 0}.route-step>span{font-size:8px;letter-spacing:.07em;color:#a35968}.route-step h3{font-family:var(--serif);font-size:29px;font-weight:600;line-height:1.1;margin:15px 0}.route-step p{font-size:12px;line-height:1.8}.route-step a{font-size:10px}.planner-note{font-size:10px;line-height:1.85;margin:30px 0}.planner .pill{font-size:11px;padding:12px 22px}#copy-status{display:inline-block;font-size:10px;margin:15px}.credits-inner p{font-size:13px;line-height:1.85}.credits-inner h3{font-size:11px;letter-spacing:.06em;margin-top:30px}.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s,transform 1.1s cubic-bezier(.2,.7,.2,1)}.reveal.visible{opacity:1;transform:translateY(0)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bob{50%{transform:translateY(8px)}}@keyframes breath{50%{transform:scale(.85);opacity:.7}}@keyframes wave{50%{translate:20px -15px;scale:1.03}}@keyframes equalize{0%{transform:scaleY(.15)}50%{transform:scaleY(.9)}100%{transform:scaleY(.3)}}@keyframes aurora{to{transform:translate(5%,-4%) rotate(8deg) scale(1.08)}}@keyframes dialog-in{from{opacity:0;transform:translateY(25px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}body.motion-paused .hero-art,body.motion-paused .hero-title,body.motion-paused .hero-orbit{transform:none}body.motion-paused .scene-visual{transform:none}
@media(min-width:1700px){.scene-copy>p{font-size:16px;max-width:480px}.scene-copy{right:10%}.scene-copy h2{font-size:5.3vw}.story-link{font-size:12px;max-width:430px}.chapter-tag{font-size:11px}}
@media(max-width:1000px){.scene-copy{right:7%;width:40%}.scene-copy h2{font-size:5.9vw}.scene-visual{left:5%;width:42%}.village-visual{left:9%;width:35%}.scene-copy>p{font-size:12px}.chapter-rail{right:15px}.maker-bottom{gap:35px}.maker-cta{font-size:11px;padding:16px 22px}.service-lines small{font-size:8px;max-width:145px;text-align:right}.service-lines a{font-size:17px}.scene-sticky{min-height:680px}}
@media(max-width:700px){.topbar{padding:22px 6%}.brand{font-size:19px;gap:9px}.brand-symbol{font-size:33px}.brand small{font-size:6px}.top-actions{gap:18px}.top-actions button{font-size:8px;gap:7px}.motion-label{display:none}.top-actions i{width:20px;height:9px}.chapter-rail{right:10px;gap:14px}.chapter-rail span{display:none}.chapter-rail i{width:4px;height:4px}.hero{min-height:640px}.hero-art{inset:-2% -38% -2% -35%}.hero-art img{object-position:58% center}.hero-title{left:6%;top:36%}.hero h1{font-size:38vw;line-height:.75}.hero h1>span{font-size:7.3vw;padding-left:0;margin-top:22px}.hero-title>p{font-size:12px}.hero-kicker{left:7%;top:25%;font-size:7px}.hero-kicker span:last-child{display:none}.hero-orbit{width:100px;height:100px;top:15%;right:10%}.hero-orbit>span{font-size:37px}.hero-bottom{bottom:9%;left:7%;right:8%;gap:15px}.enter{font-size:7px;gap:10px}.enter small{font-size:9px;max-width:100px;line-height:1.6}.enter-arrow{width:37px;height:53px;font-size:20px}.plan-trigger{max-width:125px;text-align:left;font-size:10px;line-height:1.5;position:relative;padding-right:20px}.plan-trigger span{margin:0;position:absolute;right:0;top:15px;font-size:18px}.art-label{font-size:6px;left:7%;right:auto}.threshold{height:155svh}.threshold-sticky{min-height:600px}.threshold-words{width:82%;padding-bottom:70px}.threshold h2{font-size:9.8vw;line-height:1.1;margin:25px 0}.threshold-copy{font-size:11px;line-height:1.9}.mini{font-size:7px;line-height:1.7;letter-spacing:.15em}.halo{width:90vw;height:90vw;left:28%;top:25%}.halo-two{width:70vw;height:70vw;left:48%;top:40%}.floating-ticket{right:14%;bottom:12%;padding:14px 25px}.floating-ticket b{font-size:38px}.floating-ticket span{font-size:6px}.journey-scene{height:145svh}.scene-sticky{min-height:760px}.scene-copy{left:9%;right:9%;width:auto;max-width:none;top:auto;bottom:8%;transform:translateY(calc((var(--p) - .5)*-15px))}.chapter-tag{font-size:7px}.scene-copy h2{font-size:9.5vw;margin:15px 0 12px;line-height:.98}.scene-copy>p{font-size:11px;line-height:1.8;max-width:420px;margin:12px 0}.discover{margin-top:0;padding:7px 0;font-size:10px;gap:30px}.discover span{width:29px;height:29px;font-size:18px}.story-link{font-size:8px;margin-top:14px;max-width:340px}.scene-visual{left:17%;top:12%;width:65%;height:40%;transform:translate3d(calc(var(--mx)*-5px),calc((var(--p) - .5)*-20px),0)}.city-visual .image-shell{height:94%;border-radius:43% 43% 3px 3px}.city-sun{width:66vw;height:66vw;left:32%;top:4%}.visual-ring{left:-18%;bottom:-13%;width:55%}.floating-word{font-size:23vw;bottom:-4%;left:-12%}.photo-caption{bottom:-7%;left:30%;font-size:6px}.ghost-word{font-size:35vw;top:11%}.scene-floor{font-size:6px;bottom:24px;left:9%;right:10%}.scene-floor span:last-child{display:none}.coast-visual{width:100%;height:53%;clip-path:polygon(0 0,100% 0,100% 80%,50% 100%,0 83%);transform:translateY(calc(var(--p)*-15px))}.coast-visual:after{background:linear-gradient(transparent 40%,#066478dd)}.coast-outline{top:10%;left:-5%;font-size:30vw;transform:translateX(calc(var(--p)*-35px))}.sun-disc{top:9%;right:7%;width:35vw;height:35vw;z-index:2;opacity:.88}.coast .scene-copy{left:9%;right:9%;width:auto;top:auto;bottom:10%}.coast-handwritten{bottom:auto;top:33%;font-size:11vw;left:8%}.village-visual{left:27%;width:48%;top:10%;height:40%}.arch-photo{height:100%}.arch-caption{bottom:-7%;font-size:6px;left:13%}.small-orb{width:70px;height:70px;left:-22%;top:20%}.village-orbits i{width:120vw;height:120vw;left:-15%;top:-8%}.village-orbits i:nth-child(2){width:95vw;height:95vw;left:0;top:0}.village-orbits i:nth-child(3){width:70vw;height:70vw;left:18%;top:10%}.mountain-collage{top:12%;left:20%;width:58%;height:36%}.vertical-word{font-size:7px;left:-12%}.mountain-contours{width:140vw;right:-70%;bottom:0}.flamenco-visual{left:40%;top:11%;width:41%;height:42%}.vinyl{width:76vw;height:76vw;left:-13%;top:10%}.vinyl b{font-size:3vw}.equalizer{height:35px;gap:9px;bottom:4%}.afterglow{padding:90px 9% 75px}.afterglow h2{font-size:9.3vw;margin:25px 0}.afterglow-copy{font-size:11px;line-height:1.9}.afterglow-copy br{display:none}.afterglow-sun{top:-90px}.pill{font-size:11px;padding:16px 24px;gap:35px}.travel-notes{margin-top:45px}.travel-notes summary{font-size:12px}.travel-notes p{font-size:11px}.travel-notes a{font-size:10px}.maker{padding:80px 9% 55px}.maker h2{font-size:13vw;margin:35px 0}.maker-bottom{display:block}.maker-bottom>p{font-size:12px}.maker-cta{margin-top:20px}.service-constellation{margin-top:55px;grid-template-columns:1fr;gap:25px}.constellation-heading h3{font-size:32px}.service-lines a{font-size:16px}.service-lines small{font-size:8px;max-width:150px}.project-line{display:block;margin-top:45px}.project-line>p{max-width:none;margin-bottom:25px}.project-line>a{padding:15px 0;border-top:1px solid #ffffff22;font-size:11px}.project-line>a>span{margin-left:auto}footer{padding:35px 9% 25px}.footer-top{display:block}.footer-top>a{font-size:45px}.footer-top button{margin-top:20px}.footer-bottom{flex-wrap:wrap;font-size:6px;gap:20px;line-height:1.6}.footer-bottom>span:last-child{display:none}.navigation-dialog{padding:75px 9% 40px}.navigation-links a{font-size:7.5vw;margin-bottom:14px;gap:10px}.navigation-links a>span{margin-right:5px;font-size:7px}.navigation-links em{font-size:.8em}.navigation-dialog>.pill{font-size:10px}.dialog-image{height:220px}.dialog-text{padding:25px}.dialog-text h2{font-size:55px}.dialog-text>p{font-size:13px}.dialog-columns{grid-template-columns:1fr;gap:8px}.dialog-columns p{font-size:11px}.planner-inner,.credits-inner{padding:45px 25px 30px}.planner h2,.credits-inner h2{font-size:50px}.route-tabs{margin-top:20px}.route-tabs button{padding:15px 20px;font-size:11px}#route-panel{grid-template-columns:1fr;gap:18px;margin:25px 0}.route-step h3{font-size:27px;margin:10px 0}.route-step p{font-size:11px}.planner-note{font-size:9px}.credits-inner p{font-size:12px}.cursor{display:none}}
@media(max-height:720px) and (min-width:701px){.scene-sticky{min-height:100svh}.scene-copy h2{font-size:4.8vw}.scene-copy>p{font-size:11px}.scene-copy h2{margin:20px 0}.story-link{margin-top:15px;font-size:9px}.hero{min-height:580px}.threshold-sticky{min-height:100svh}.threshold h2{font-size:6vw}}
@media(hover:none){.cursor{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.hero-art,.hero-title,.hero-orbit,.scene-visual,.coast-visual,.coast-visual img,.arch-photo,.arch-shadow,.mountain-slice,.flamenco-visual{transform:none!important}.journey-scene,.threshold{height:auto}.scene-sticky,.threshold-sticky{position:relative;min-height:800px}.threshold h2>span{opacity:1;transform:none}.reveal{opacity:1;transform:none}.cursor{display:none}#dust{display:none}}
body.tab-hidden *,body.tab-hidden *:before,body.tab-hidden *:after{animation-play-state:paused!important}
@media(max-width:700px) and (prefers-reduced-motion:no-preference){.scene-sticky{height:100svh;min-height:640px}.scene-visual{top:12%;height:34%}.village-visual{top:11%;height:34%}.flamenco-visual{top:11%;height:36%}.mountain-collage{height:31%;top:12%}.coast-visual{height:48%}.scene-copy{bottom:8%}.coast .scene-copy{bottom:9%}.photo-caption{bottom:-6%}.arch-caption{bottom:-8%}}
@media(max-width:700px) and (max-height:700px){.scene-copy h2{font-size:8.8vw;margin:12px 0 10px}.scene-copy>p{font-size:10px;line-height:1.7}.story-link{font-size:7px;margin-top:10px}.discover{font-size:9px;padding:5px 0}.discover span{width:27px;height:27px}.threshold-words{padding-bottom:30px}.threshold h2{font-size:9vw}.threshold-copy{font-size:10px}.floating-ticket{bottom:10%}}
/* One shared camera and one continuous scroll timeline. */
.journey-marker{position:absolute;width:1px;height:1px;pointer-events:none}.journey-track{position:relative}
.continuity-orb,.journey-ending{display:none}
body.continuous-journey .journey-track{height:var(--track-height,100svh);position:relative}
body.continuous-journey .journey-stage{position:sticky;top:0;height:var(--stage-height,100svh);overflow:hidden;isolation:isolate;background:#381b69;--orb-x:76%;--orb-y:25%;--orb-size:180px;--orb-color:#ffc28a;--ending:0}
body.continuous-journey [data-scene]{position:absolute;inset:0;width:100%;height:100%;min-height:0;overflow:hidden;--p:0;--enter:0;--exit:0;--copy-alpha:1;will-change:opacity}
body.continuous-journey [data-scene]:nth-of-type(1){z-index:1}
body.continuous-journey [data-scene]:nth-of-type(2){z-index:2}
body.continuous-journey [data-scene]:nth-of-type(3){z-index:3}
body.continuous-journey [data-scene]:nth-of-type(4){z-index:4}
body.continuous-journey [data-scene]:nth-of-type(5){z-index:5}
body.continuous-journey [data-scene]:nth-of-type(6){z-index:6}
body.continuous-journey [data-scene]:nth-of-type(7){z-index:7}
body.continuous-journey .scene-sticky,body.continuous-journey .threshold-sticky{position:absolute;inset:0;height:100%;min-height:0}
body.continuous-journey .scene-copy,body.continuous-journey .threshold-words{opacity:var(--copy-alpha);translate:calc(var(--enter)*35px - var(--exit)*35px) calc(var(--enter)*55px - var(--exit)*65px);will-change:transform,opacity}
body.continuous-journey .scene-floor{opacity:var(--copy-alpha)}
body.continuous-journey .hero-title,body.continuous-journey .hero-bottom,body.continuous-journey .hero-kicker,body.continuous-journey .hero-orbit,body.continuous-journey .art-label{opacity:calc(1 - var(--exit));translate:0 calc(var(--exit)*-90px)}
body.continuous-journey .hero-art{transform:scale(calc(1.04 + var(--hp)*.2)) translate3d(calc(var(--mx)*-10px),calc(var(--my)*-10px - var(--hp)*50px),0)}
body.continuous-journey .hero-title{transform:translate3d(calc(var(--mx)*-9px),calc(var(--hp)*-120px),0)}
body.continuous-journey .scene-visual{translate:calc(var(--enter)*-110px + var(--exit)*90px) calc(var(--enter)*80px - var(--exit)*100px);scale:calc(1 + var(--enter)*.1 + var(--exit)*.12);will-change:transform,opacity}
body.continuous-journey .city-visual{transform:translate3d(calc(var(--mx)*-12px),calc((var(--p) - .5)*-160px + var(--my)*-10px),0)}
body.continuous-journey .city-visual .image-shell{transform:rotate(calc(-9deg + var(--p)*18deg))}
body.continuous-journey .city-sun{transform:translate3d(calc(var(--p)*100px),calc(var(--p)*-160px),0) scale(calc(1 + var(--p)*.3))}
body.continuous-journey .floating-word{transform:rotate(calc(-16deg + var(--p)*14deg)) translateY(calc(var(--p)*-90px));opacity:calc(1 - var(--exit))}
body.continuous-journey .coast-visual{translate:calc(var(--enter)*-120px + var(--exit)*100px) calc(var(--enter)*55px - var(--exit)*75px);transform:scale(calc(1 + var(--exit)*.12));will-change:transform}
body.continuous-journey .coast-visual img{transform:scale(calc(1.08 + var(--p)*.26)) translate3d(calc(var(--mx)*8px),calc(var(--my)*10px - var(--p)*35px),0)}
body.continuous-journey .sun-disc{transform:translate3d(calc(var(--p)*-140px),calc(var(--p)*100px),0) scale(calc(1 + var(--exit)*.3))}
body.continuous-journey .coast-handwritten{translate:0 calc(var(--enter)*45px - var(--exit)*90px);opacity:var(--copy-alpha)}
body.continuous-journey .village-visual{transform:translate3d(calc(var(--mx)*-12px),calc((var(--p) - .5)*-155px + var(--my)*-10px),0)}
body.continuous-journey .arch-photo{transform:rotate(calc(7deg - var(--p)*16deg))}
body.continuous-journey .arch-shadow{transform:rotate(calc(-12deg + var(--p)*26deg))}
body.continuous-journey .small-orb{transform:translate3d(calc(var(--mx)*20px + var(--p)*90px),calc(var(--p)*-120px),0)}
body.continuous-journey .mountain-collage{translate:calc(var(--enter)*-85px + var(--exit)*70px) calc(var(--enter)*60px - var(--exit)*85px);scale:calc(1 + var(--exit)*.1);will-change:transform}
body.continuous-journey .slice-one{transform:rotate(calc(-12deg + var(--p)*10deg)) translateY(calc(var(--p)*-160px))}
body.continuous-journey .slice-two{transform:rotate(calc(8deg - var(--p)*12deg)) translateY(calc(var(--p)*100px))}
body.continuous-journey .slice-three{transform:rotate(calc(16deg - var(--p)*7deg)) translateY(calc(var(--p)*-200px))}
body.continuous-journey .flamenco-visual{translate:calc(var(--enter)*-100px + var(--exit)*100px) calc(var(--enter)*80px - var(--exit)*100px);transform:rotate(calc(-10deg + var(--p)*20deg)) scale(calc(1 + var(--p)*.1));will-change:transform}
body.continuous-journey .vinyl{translate:calc(var(--enter)*-140px + var(--p)*100px) calc(var(--p)*-85px);scale:calc(1 + var(--exit)*.2)}
body.continuous-journey .ghost-word,body.continuous-journey .coast-outline{translate:calc(var(--enter)*150px - var(--exit)*200px) 0;opacity:calc(.1*(1 - var(--exit)))}
body.continuous-journey .coast-outline{opacity:calc(1 - var(--exit))}
body.continuous-journey .continuity-orb{display:block;position:absolute;left:var(--orb-x);top:var(--orb-y);width:var(--orb-size);height:var(--orb-size);transform:translate(-50%,-50%) rotate(var(--journey-turn));border-radius:50%;border:1px solid var(--orb-color);box-shadow:0 0 90px color-mix(in srgb,var(--orb-color) 20%,transparent),inset 0 0 70px color-mix(in srgb,var(--orb-color) 12%,transparent);color:var(--orb-color);opacity:.28;z-index:9;pointer-events:none;mix-blend-mode:screen;will-change:transform,left,top}
.continuity-orb i{position:absolute;inset:12%;border:1px solid currentColor;border-radius:50%}.continuity-orb i:nth-child(2){inset:24%}.continuity-orb i:nth-child(3){width:12px;height:12px;inset:14% auto auto 14%;background:currentColor;box-shadow:0 0 20px currentColor}
body.continuous-journey .journey-ending{display:block;position:absolute;inset:0;z-index:8;background:radial-gradient(ellipse at 50% 15%,#ffcb91,transparent 60%),#ff895d;opacity:var(--ending);pointer-events:none}
@media(max-width:700px){body.continuous-journey .scene-visual{translate:calc(var(--enter)*-45px + var(--exit)*40px) calc(var(--enter)*35px - var(--exit)*45px)}body.continuous-journey .city-visual,body.continuous-journey .village-visual{transform:translateY(calc((var(--p) - .5)*-65px))}body.continuous-journey .scene-copy,body.continuous-journey .threshold-words{translate:0 calc(var(--enter)*25px - var(--exit)*30px)}body.continuous-journey .slice-one{transform:rotate(calc(-9deg + var(--p)*6deg)) translateY(calc(var(--p)*-70px))}body.continuous-journey .slice-two{transform:rotate(calc(6deg - var(--p)*9deg)) translateY(calc(var(--p)*45px))}body.continuous-journey .slice-three{transform:rotate(calc(13deg - var(--p)*5deg)) translateY(calc(var(--p)*-85px))}body.continuous-journey .mountain-collage{translate:calc(var(--enter)*-40px + var(--exit)*30px) calc(var(--enter)*25px - var(--exit)*40px)}body.continuous-journey .flamenco-visual{translate:calc(var(--enter)*-45px + var(--exit)*45px) calc(var(--enter)*35px - var(--exit)*45px)}body.continuous-journey .coast-visual{translate:calc(var(--enter)*-35px + var(--exit)*40px) calc(var(--enter)*25px - var(--exit)*35px)}body.continuous-journey .continuity-orb{opacity:.22}}
@media(prefers-reduced-motion:reduce){.journey-marker{position:relative}.journey-stage{position:relative}.continuity-orb,.journey-ending{display:none}}
body.continuous-journey .continuity-orb{left:0;top:0;transform:translate3d(var(--orb-x),var(--orb-y),0) translate(-50%,-50%) rotate(var(--journey-turn));will-change:transform}
@media(prefers-reduced-motion:reduce){.journey-marker{position:absolute}}

/* Until the first timeline render, later chapters cannot cover the opening. */
body.journey-booting [data-scene]:not(#panel-inicio){visibility:hidden;pointer-events:none}
