/* NICREA — cinematic depth, fine light, slow water. */
:root{--bg:#06181f;--line:rgba(157,210,214,.16)}
.header{background:linear-gradient(180deg,#041117c9,#04111719);border-bottom-color:#c2e4e518}
.hero{background:#05151d;min-height:820px}
.hero-image{display:block;background-image:url('assets/atmosphere.webp');background-position:72% center;opacity:.76;animation:scene 28s ease-in-out infinite alternate}
.hero-shade{background:linear-gradient(90deg,#04151df5 4%,#04151de0 30%,#04151d60 62%,#04151d30),linear-gradient(0deg,#06181f 0%,transparent 32%,#04151d25 85%);z-index:1}
.hero-grid{z-index:2;opacity:.28;background-size:120px 120px;mask-image:linear-gradient(90deg,#000,transparent 80%)}
.hero-copy{width:58%}.hero h1{font-size:clamp(62px,6.9vw,112px);line-height:1.18;letter-spacing:-.045em;text-shadow:0 8px 45px #00101670}
.hero h1>span{color:#a5e4df}.hero h1>span:after{height:1px;opacity:.6;animation:none;transform:scaleX(.58)}
.hero-lead{color:#deedee}.hero-detail{color:#a6c0c8}.eyebrow{font-size:13px;letter-spacing:.18em}
.poster-word{z-index:2;bottom:125px;font-size:clamp(110px,15vw,250px);opacity:.45;-webkit-text-stroke:1px #c7eeec26;animation-duration:50s}
.creative-device{right:6%;top:35%;width:28%;max-width:420px;min-height:330px;background:linear-gradient(135deg,#173e492b,#09202a47);border:1px solid #c3f0ec25;backdrop-filter:blur(7px);box-shadow:0 30px 100px #00101633;transform:translate(var(--pointer-x,0px),var(--pointer-y,0px))}
.creative-device:before{inset:17px;animation:none;border-color:#bdeee41b}.creative-device:after{inset:40px -24px;animation:none;border-style:solid;border-color:#c0ebe812;transform:rotate(-8deg)}
.device-top{padding:16px 20px;font-size:11px;letter-spacing:.08em}.device-top span:last-child{background:none;color:#b6d6d7;padding:0;font-size:12px}
#recompose{height:230px;padding:12px 72px}#recompose svg{filter:drop-shadow(0 12px 24px #2db9b729)}
.device-bottom{padding:13px 20px;border-top:1px solid #d3f4ee15}.device-bottom button{padding:8px 10px;background:transparent;font-size:12px;border-color:#c2e8e82e}
.hero-cross{z-index:2;opacity:.5;font-size:22px}.hero-bottom{background:none;border-top-color:#c2e6df26;color:#adbec4}
.ambient-rings{position:absolute;z-index:2;pointer-events:none;width:950px;height:950px;right:-260px;top:15%;opacity:.65}
.ambient-rings i,.contact-rings i{position:absolute;inset:0;border:1px solid #a6e3d937;border-radius:50%;animation:water-ring 15s linear infinite;transform:scale(.42);opacity:0}
.ambient-rings i:nth-child(2),.contact-rings i:nth-child(2){animation-delay:-5s}.ambient-rings i:nth-child(3),.contact-rings i:nth-child(3){animation-delay:-10s}
.service-ribbon{transform:none;background:#0c252e;border-block:1px solid #c8eee821;padding:20px 0}.service-ribbon>div{font-size:14px;font-weight:400;letter-spacing:.2em;color:#c3dadb;animation-duration:48s}.service-ribbon b{color:#69c4c1}
.section{position:relative}.services{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 88% 55%,#10424d50,transparent 56%),#06181f}
.flow-lines{position:absolute;left:-10%;top:0;width:120%;height:100%;z-index:-1;fill:none;stroke:#83cfcf;stroke-width:.7;opacity:.12;pointer-events:none;animation:flow-drift 22s ease-in-out infinite alternate}
.service-tabs{border-bottom-color:#abd5d52c}.service-tabs button{font-size:18px;padding:24px 18px}.service-tabs button:hover{transform:none;background:#aadbd90b}.service-tabs button[aria-selected=true]{background:linear-gradient(0deg,#85d4cc12,transparent);border-bottom-width:1px;color:#b4ebe3}
.service-panel{gap:70px;padding-top:52px}.service-content>p{color:#a9c0c8}.service-visual{border:1px solid #b8e6e329;background:linear-gradient(135deg,#102f3bdd,#09252ed9),url('assets/atmosphere.webp') 85% center/cover;box-shadow:0 30px 60px #00101833;min-height:380px}.service-visual:before{opacity:.4}.visual-modules{animation-duration:9s}.tags span{border-color:#afdbd526;background:#bce6df04}
.about{background:radial-gradient(ellipse at 95% 10%,#c9e6e5b0,transparent 60%),#eef4f4;overflow:hidden}.about:before{content:'';position:absolute;right:-120px;top:-150px;width:620px;height:620px;border:1px solid #36818b26;border-radius:50%;box-shadow:0 0 0 55px #36818b08,0 0 0 110px #36818b06;pointer-events:none}.about-intro,.about-columns{position:relative}.horizon{background:#ffffff69;border:1px solid #7ca1a235;box-shadow:0 20px 60px #345c6208}
.partners{background:linear-gradient(130deg,#102b35,#09202a)}.partner-list{border-top:1px solid #b4d5d226}.partner-list>div{border-color:#b4d5d226}.partner-list h3{font-weight:500}.partner-note{color:#9fb5bd}
.contact{isolation:isolate;overflow:hidden;background:linear-gradient(90deg,#06181ff5,#06181fcc),url('assets/atmosphere.webp') center 66%/cover}
.contact-rings{position:absolute;z-index:-1;width:900px;height:900px;right:-200px;top:-160px;pointer-events:none;opacity:.5}.contact-mark{opacity:.7;animation-duration:14s}.contact-links>a,.contact-links>button{border-color:#b7e1dd29}.contact-links strong{font-weight:500}.contact-links>a:hover,.contact-links>button:hover{background:#91d7d00a}
footer{background:#04131b}.primary{background:#a7e2dc;box-shadow:0 5px 30px #3faba716}.ghost{background:#0a22297a;border-color:#b7e2de55}
@keyframes water-ring{0%{transform:scale(.36);opacity:0}18%{opacity:.7}80%{opacity:.22}100%{transform:scale(1.1);opacity:0}}
@keyframes flow-drift{from{transform:translate3d(-2%,-2%,0)}to{transform:translate3d(2%,3%,0)}}
.hero-image{animation:none;transform:translate3d(0,calc(var(--hero-exit,0)*95px),0) scale(calc(1.04 + var(--hero-exit,0)*.08));will-change:transform}
.hero-copy{transform:translate3d(0,calc(var(--hero-exit,0)*-45px),0);opacity:calc(1 - var(--hero-exit,0)*.65)}
.ambient-rings{margin-top:calc(var(--hero-exit,0)*-80px)}
.services .flow-lines{stroke-dasharray:1600;stroke-dashoffset:calc((1 - var(--section-progress,0))*1100);transform:translateY(calc(var(--travel,0)*-35px))}
.service-visual{transform:translate3d(0,calc(var(--travel,0)*-35px),0);transition:box-shadow .4s}
.service-visual .visual-modules{rotate:calc(var(--travel,0)*14deg)}
.about:before{transform:translateY(calc(var(--travel,0)*75px))}
.horizon{transform:translateY(calc(var(--travel,0)*-25px))}
.contact-mark{rotate:calc(var(--travel,0)*32deg)}
.contact-rings{transform:translateY(calc(var(--travel,0)*-90px))}
.scroll-item{opacity:0;translate:0 25px;transition:opacity .8s var(--ease) var(--stagger,0ms),translate .8s var(--ease) var(--stagger,0ms),background .3s}
.scroll-item.is-in{opacity:1;translate:0 0}
.section-head:after{content:'';height:1px;width:100%;position:absolute;left:0;bottom:-20px;background:linear-gradient(90deg,#9bded858,transparent);transform:scaleX(var(--section-progress,0));transform-origin:left}
.section-head{position:relative}
.no-motion .hero-copy{transform:none;opacity:1}.no-motion .hero-image{transform:none}.no-motion .service-visual,.no-motion .horizon,.no-motion .contact-rings,.no-motion .about:before{transform:none}.no-motion .visual-modules,.no-motion .contact-mark{rotate:none}.no-motion .scroll-item{opacity:1;translate:none;transition:none}
@media(max-width:720px){.hero-image{transform:translateY(calc(var(--hero-exit,0)*35px)) scale(1.04)}.hero-copy{transform:translateY(calc(var(--hero-exit,0)*-18px));opacity:1}.service-visual{transform:none}.horizon{transform:none}.scroll-item{translate:0 14px}}
@media(prefers-reduced-motion:reduce){.scroll-item{opacity:1;translate:none}.hero-image,.hero-copy,.service-visual,.horizon,.contact-rings,.about:before{transform:none!important}.hero-copy{opacity:1}.visual-modules,.contact-mark{rotate:none!important}}
.no-motion .ambient-rings i,.no-motion .contact-rings i{animation:none;transform:scale(.8);opacity:.2}.no-motion .ambient-rings i:nth-child(2),.no-motion .contact-rings i:nth-child(2){transform:scale(.6)}.no-motion .ambient-rings i:nth-child(3),.no-motion .contact-rings i:nth-child(3){transform:scale(1)}
.no-motion .flow-lines,.no-motion .hero-image{animation:none}.no-motion .creative-device{transform:none}
@media(max-width:1050px){.creative-device{right:4%;width:33%;top:34%}.hero h1{font-size:clamp(60px,7.5vw,90px)}#recompose{padding:10px 48px}.service-panel{gap:35px}}
@media(max-width:720px){.header{background:#06181f80}.header nav{background:#071f29}.hero{height:auto;min-height:0;padding:140px 6% 120px}.hero-copy{width:100%}.hero h1{font-size:clamp(48px,10.5vw,75px);line-height:1.23}.hero-image{background-position:65% top;background-size:auto 105%;opacity:.52}.hero-shade{background:linear-gradient(180deg,#04151d70,#04151dc9 53%,#06181f),linear-gradient(90deg,#04151dab,transparent)}.creative-device{position:relative;top:auto;right:auto;margin:44px 0 0;width:100%;min-height:290px;max-width:none;background:#0d303963;backdrop-filter:blur(5px)}#recompose{height:215px;padding:8px 27%}.device-top{padding:16px}.device-bottom{padding:12px 16px}.device-top span:first-child{font-size:11px}.device-bottom>span{font-size:12px}.poster-word{font-size:140px;bottom:90px}.ambient-rings{width:680px;height:680px;right:-390px;top:27%}.hero-bottom{font-size:11px}.eyebrow{font-size:12px;letter-spacing:.1em}.section-head>p,.contact-top p{font-size:16px}.service-tabs button{font-size:16px;padding:20px 10px}.service-tabs button span{margin-right:8px}.service-visual{min-height:340px}.service-ribbon>div{font-size:13px}.flow-lines{opacity:.08}.contact-rings{right:-500px}.contact-links strong{font-size:16px}.about:before{opacity:.5}h2{letter-spacing:-.025em}}
@media(prefers-reduced-motion:reduce){.ambient-rings i,.contact-rings i{animation:none;opacity:.2;transform:scale(.8)}.flow-lines,.hero-image{animation:none}}
