/* KASBOKAR V124 — deep-space scroll experience */
:root{--v124-cyan:#7df3ff;--v124-violet:#a276ff;--v124-rose:#ff67bd;--v124-green:#83ffd1;--v124-void:#020207}
html{scroll-behavior:smooth}
body.site-v124,body.site-v123{background:var(--v124-void)}
body.experience-locked{overflow:hidden}
.auth-db-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}.auth-db-actions .button{flex:1;min-width:190px}

/* Cinematic entry — visible only when JavaScript can dismiss it. */
.experience-gate{display:none}
.has-js .experience-gate{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow:hidden;background:#020207;color:#fff;transition:opacity .7s ease,visibility .7s ease}
.experience-gate.is-leaving{opacity:0;visibility:hidden;pointer-events:none}
.experience-gate__sky{position:absolute;inset:-12%;background:radial-gradient(circle at 24% 28%,#6d37aa55,transparent 25%),radial-gradient(circle at 72% 66%,#176b7b44,transparent 23%),radial-gradient(circle at 50% 50%,#15101f 0,#030308 55%,#000 100%);filter:saturate(1.25)}
.experience-gate__sky:before,.experience-gate__sky:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.3px);background-size:57px 57px;opacity:.2;transform:rotate(12deg) scale(1.3);animation:v124-star-drift 22s linear infinite}
.experience-gate__sky:after{background-size:101px 101px;opacity:.12;transform:rotate(-18deg) scale(1.5);animation-duration:34s;animation-direction:reverse}
.experience-gate__sky i{position:absolute;left:50%;top:50%;border:1px solid #bfeeff24;border-radius:50%;transform:translate(-50%,-50%) rotate(-20deg)}
.experience-gate__sky i:nth-child(1){width:min(48vw,690px);aspect-ratio:1;box-shadow:0 0 100px #7148bc1f,inset 0 0 80px #00ddff12}
.experience-gate__sky i:nth-child(2){width:min(70vw,1020px);aspect-ratio:1;transform:translate(-50%,-50%) rotate(28deg) scaleY(.38);border-style:dashed;animation:v124-ring 18s linear infinite}
.experience-gate__sky i:nth-child(3){width:min(84vw,1280px);aspect-ratio:1;transform:translate(-50%,-50%) rotate(-12deg) scaleY(.22);border-color:#ff67bd1f;animation:v124-ring 27s linear infinite reverse}
.experience-gate__content{position:relative;width:min(760px,calc(100% - 42px));text-align:center}
.experience-gate__brand{position:fixed;top:clamp(24px,4vw,56px);right:clamp(24px,5vw,76px);display:flex;align-items:center;gap:13px;font:700 9px Arial;letter-spacing:.2em;color:#aaa4b4}
.experience-gate__brand img{filter:drop-shadow(0 0 24px #9b6dff66)}
.experience-gate__eyebrow{display:flex;align-items:center;justify-content:center;gap:12px;font:8px Arial;letter-spacing:.32em;color:#9991a7}
.experience-gate__eyebrow:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--v124-green);box-shadow:0 0 20px var(--v124-green)}
.experience-gate h2{font-size:clamp(45px,6.3vw,94px);line-height:1.5;letter-spacing:-4px;margin:22px 0 38px;text-shadow:0 12px 70px #000}
.experience-gate h2 em{font-style:normal;color:transparent;background:linear-gradient(100deg,#fff 4%,#c6b1ff 48%,#7df3ff 92%);background-clip:text;-webkit-background-clip:text}
.experience-gate__meter{width:min(420px,82vw);height:1px;margin:auto;background:#ffffff1c;overflow:hidden}
.experience-gate__meter i{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:right;background:linear-gradient(90deg,var(--v124-rose),var(--v124-violet),var(--v124-cyan));box-shadow:0 0 18px var(--v124-cyan)}
.experience-gate__status{width:min(420px,82vw);margin:11px auto 0;display:flex;justify-content:space-between;font:8px Arial;letter-spacing:.18em;color:#8d8697}.experience-gate__status span:first-child{font-size:12px;color:#fff}
.experience-gate__actions{margin-top:28px;display:flex;justify-content:center;align-items:center;gap:22px}.experience-gate__actions[hidden]{display:none}.experience-gate__actions>button:not(.button){border:0;border-bottom:1px solid #ffffff30;background:none;color:#aaa2b2;font:11px Estedad;padding:10px 2px;cursor:pointer}.experience-gate__actions>button:not(.button):hover{color:#fff}

/* Make the first viewport feel like the opening shot, not a regular banner. */
.home-hero-v123{background:radial-gradient(circle at 70% 42%,#301848 0,transparent 27%),radial-gradient(circle at 12% 90%,#05384955,transparent 26%),linear-gradient(155deg,#020207 0,#090711 46%,#020207 100%)}
.home-hero-v123:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49.85%,#ffffff0d 50%,transparent 50.15%),linear-gradient(#ffffff08 1px,transparent 1px);background-size:100% 100%,100% 16.666%;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 80%,transparent);opacity:.65}
.home-hero-v123 .hero-copy{position:relative;z-index:5}
.home-hero-v123 .hero-copy h1{filter:drop-shadow(0 14px 42px #000)}
.home-hero-v123 .hero-art{transform:translate3d(var(--mx,0),var(--my,0),0);transition:transform .15s linear}
.home-hero-v123 .hero-astronaut{filter:drop-shadow(0 40px 70px #000) drop-shadow(0 0 60px #8a5bd331)}
.home-hero-v123 .hero-nebula{mix-blend-mode:screen;filter:saturate(1.35) contrast(1.1)}
.home-hero-v123 .hero-bottom{font-family:Arial,Estedad,sans-serif;letter-spacing:.08em}

/* More depth and visual continuity through the sticky journey. */
.journey-sticky:after{content:"";position:absolute;z-index:4;inset:0;pointer-events:none;background:linear-gradient(180deg,#020207 0,transparent 14%,transparent 84%,#020207 100%)}
.journey-noise{opacity:.135}
.journey-hud{border-top:1px solid #ffffff12;padding-top:14px}
.journey-hud:after{content:"MOUSE / SCROLL CONTROL";position:absolute;left:50%;top:14px;transform:translateX(-50%);font:7px Arial;letter-spacing:.25em;color:#716b7a}
.journey-chapter{z-index:13}
.journey-chapter h2{max-width:780px;text-wrap:balance}
.journey-chapter p{border-right:1px solid #ffffff21;padding-right:17px}
.journey-chapter.chapter-left p{border-right:0;border-left:1px solid #ffffff21;padding-right:0;padding-left:17px}
.cinematic-journey[data-scene="1"] .journey-brand-hint{opacity:1;transform:none}
.journey-brand-hint{position:absolute;z-index:14;right:50%;bottom:34px;transform:translate(50%,8px);display:flex;align-items:center;gap:8px;color:#9891a1;font-size:9px;opacity:0;transition:.4s;pointer-events:none}.journey-brand-hint span{font-size:7px;color:var(--v124-cyan);text-shadow:0 0 12px var(--v124-cyan)}
.universe-labels a{transition:opacity .2s,border-color .25s,background .25s,box-shadow .25s,color .25s}.universe-labels a:hover,.universe-labels a:focus-visible,.universe-labels a.is-selected{color:#fff;background:#11101be8;border-color:var(--brand);box-shadow:0 0 0 1px color-mix(in srgb,var(--brand) 28%,transparent),0 0 30px color-mix(in srgb,var(--brand) 20%,transparent)}

/* Brand observation window inside the 20-planet scene. */
.journey-brand-panel{position:absolute;z-index:20;top:50%;right:clamp(22px,4vw,72px);width:min(370px,calc(100vw - 44px));padding:24px;border:1px solid color-mix(in srgb,var(--brand-accent,#7df3ff) 36%,transparent);background:linear-gradient(145deg,rgba(12,11,20,.93),rgba(5,5,10,.78));backdrop-filter:blur(24px) saturate(1.25);box-shadow:0 30px 90px #000b,0 0 55px color-mix(in srgb,var(--brand-accent,#7df3ff) 10%,transparent);transform:translate3d(125%,-50%,0);opacity:0;pointer-events:none;transition:transform .6s cubic-bezier(.16,1,.3,1),opacity .35s ease;direction:rtl}
.cinematic-journey[data-scene="1"] .journey-brand-panel[aria-hidden="false"]{transform:translate3d(0,-50%,0);opacity:1;pointer-events:auto}
.journey-brand-panel:before,.journey-brand-panel:after{content:"";position:absolute;width:15px;height:15px;border-color:var(--brand-accent,#7df3ff)}.journey-brand-panel:before{top:-1px;right:-1px;border-top:2px solid;border-right:2px solid}.journey-brand-panel:after{bottom:-1px;left:-1px;border-bottom:2px solid;border-left:2px solid}
.journey-brand-panel__close{position:absolute;top:15px;left:15px;width:31px;height:31px;border:1px solid #ffffff20;border-radius:50%;background:#ffffff08;color:#fff;font-size:18px;cursor:pointer}.journey-brand-panel__close:hover{border-color:var(--brand-accent);background:#ffffff11}
.journey-brand-panel__signal{display:flex;align-items:center;gap:8px;font:7px Arial;letter-spacing:.19em;color:#8f8998;direction:ltr}.journey-brand-panel__signal span{width:6px;height:6px;border-radius:50%;background:var(--brand-accent);box-shadow:0 0 15px var(--brand-accent);animation:v124-pulse 1.6s ease-in-out infinite}.journey-brand-panel__signal small{margin-left:auto;color:#fff}
.journey-brand-panel__planet{position:relative;width:92px;height:92px;margin:22px 0 16px;border:1px solid #ffffff13;border-radius:50%;display:grid;place-items:center}.journey-brand-panel__planet:before,.journey-brand-panel__planet:after{content:"";position:absolute;border:1px solid color-mix(in srgb,var(--brand-accent) 38%,transparent);border-radius:50%;inset:10px;transform:rotate(18deg) scaleY(.42)}.journey-brand-panel__planet:after{inset:-9px;transform:rotate(-28deg) scaleY(.23);border-style:dashed;animation:v124-ring 10s linear infinite}.journey-brand-panel__planet i{width:43px;height:43px;border-radius:50%;background:radial-gradient(circle at 34% 28%,#fff 0 2%,var(--brand-accent) 10%,#111124 68%);box-shadow:0 0 30px color-mix(in srgb,var(--brand-accent) 55%,transparent)}
.journey-brand-panel__kicker{font-size:10px;color:var(--brand-accent);letter-spacing:.04em}.journey-brand-panel h3{font-size:clamp(30px,3vw,46px);line-height:1.3;margin:7px 0 4px}.journey-brand-panel p{font-size:12px;line-height:2;color:#aca5b5;margin:10px 0 22px;min-height:48px}.journey-brand-panel__actions{display:flex;align-items:center;gap:18px}.journey-brand-panel__actions .button{min-height:46px;padding:0 18px;font-size:10px}.journey-brand-panel__actions>a:not(.button){color:#b3abbc;font-size:10px;border-bottom:1px solid #ffffff24;padding-bottom:6px}

/* Give every chapter after the universe a different silhouette. */
.brand-ribbon{border-block:1px solid #ffffff10;background:#05050a;box-shadow:0 30px 90px #000}
.intro-section{position:relative;overflow:hidden;min-height:76svh;align-items:center}.intro-section:before{content:"";position:absolute;inset:12% 35% -20% -12%;background:radial-gradient(circle,#7df3ff15,transparent 65%);pointer-events:none}.intro-section .circle-link{box-shadow:0 0 0 1px #ffffff10,0 0 70px #7df3ff10}
.section-radar{position:relative;background:linear-gradient(180deg,#06060b,#0a0812 45%,#06060b);overflow:hidden}.section-radar:before{content:"RADAR";position:absolute;left:-.04em;top:.04em;font:800 clamp(140px,28vw,470px)/.8 Arial;color:#ffffff07;letter-spacing:-.09em;pointer-events:none}
.section-services{background:radial-gradient(circle at 85% 40%,#47206422,transparent 28%),#08070c}.section-work{background:linear-gradient(145deg,#08070c 0,#10111c 48%,#08070c 100%)}.section-process{background:radial-gradient(circle at 15% 20%,#0a5d6c28,transparent 25%),#06060b}.section-faq{background:linear-gradient(180deg,#06060b,#0b0810)}
.section .shell{position:relative}.section-heading h2{max-width:900px;text-wrap:balance}
.reveal-on-scroll{opacity:0;transform:translateY(38px);filter:blur(7px);transition:opacity .8s ease,transform 1s cubic-bezier(.16,1,.3,1),filter .8s ease}.reveal-on-scroll.is-visible{opacity:1;transform:none;filter:none}

@keyframes v124-star-drift{to{transform:rotate(372deg) scale(1.3)}}
@keyframes v124-ring{to{rotate:360deg}}
@keyframes v124-pulse{50%{opacity:.4;transform:scale(.72)}}

@media(max-width:980px){
 .experience-gate h2{letter-spacing:-2.5px}.journey-brand-panel{right:28px;width:330px}.journey-hud:after{display:none}
}
@media(max-width:600px){
 .auth-db-actions{display:grid}.auth-db-actions .button{width:100%;min-width:0}
 .experience-gate__brand{top:20px;right:20px}.experience-gate h2{font-size:clamp(38px,11vw,56px);letter-spacing:-2px;line-height:1.55}.experience-gate__actions{display:grid;gap:8px}.experience-gate__actions .button{width:min(290px,82vw)}
 .home-hero-v123:before{opacity:.25}.journey-brand-hint{bottom:128px}.journey-brand-panel{top:auto;right:12px;bottom:145px;width:calc(100% - 24px);padding:18px;transform:translate3d(0,130%,0)}.cinematic-journey[data-scene="1"] .journey-brand-panel[aria-hidden="false"]{transform:none}.journey-brand-panel__planet{position:absolute;left:55px;top:27px;width:68px;height:68px;margin:0}.journey-brand-panel__planet i{width:33px;height:33px}.journey-brand-panel h3{font-size:30px}.journey-brand-panel p{font-size:11px;max-width:72%;min-height:0;margin-bottom:14px}.journey-brand-panel__actions .button{min-height:42px}.universe-labels a{width:28px;height:28px}.universe-labels a i{width:8px;height:8px}.universe-labels a.is-selected{width:32px;height:32px}.journey-chapter p{background:#03030799;padding:8px 12px;border:0!important}
}
@media(prefers-reduced-motion:reduce){.experience-gate__sky:before,.experience-gate__sky:after,.experience-gate__sky i,.journey-brand-panel__signal span,.journey-brand-panel__planet:after{animation:none}.reveal-on-scroll{opacity:1;transform:none;filter:none}.experience-gate,.journey-brand-panel{transition-duration:.01ms}}
