/* Hibrit — motion and editorial layer. No external animation dependencies. */
:root{--acid:#ff570b;--night:#11191b;--line:rgba(240,244,241,.16)}
html{scroll-behavior:auto}
body{background:#f6f3ed}
::selection{background:#ff570b;color:white}
.site-header{background:#f6f3ed;border-bottom:1px solid #d9d4cb;z-index:20}
.brand{letter-spacing:-1.5px}
.brand img{transition:transform .4s ease;border-radius:9px}
.brand:hover img{transform:rotate(-12deg)}
.nav-links a{position:relative;transition:color .2s}
.nav-links a:hover{color:var(--orange)}
.nav-cta{border:1px solid #bdc0b9;padding:11px 17px;border-radius:30px;transition:background .2s,color .2s,border-color .2s}
.nav-cta:hover{background:var(--ink);color:white;border-color:var(--ink)}
.button{border-radius:4px;min-height:52px;position:relative;overflow:hidden;transition:background .25s,box-shadow .25s,transform .25s}
.button span{transition:transform .25s}
.button:hover span,.text-link:hover span{display:inline-block;transform:translate(3px,-3px)}
.button:active{transform:scale(.98)}
.home .site-header{background:var(--night);color:#f6f3ed;border-color:var(--line)}
.home .nav-links{color:#adb6b3}
.home .nav-links a[aria-current="page"]{color:white}
.home .nav-cta{border-color:#4a5352}
.home .nav-cta:hover{color:#11191b;background:var(--cream)}
.home .hero{position:relative;background:var(--night);color:#f6f3ed;grid-template-columns:1.08fr .92fr;column-gap:2vw;padding:62px 8vw 28px;min-height:720px;isolation:isolate}
.home .hero:before{content:"";position:absolute;top:0;bottom:0;left:8vw;right:8vw;border-left:1px solid #ffffff07;border-right:1px solid #ffffff07;pointer-events:none;z-index:-1}
.hero-copy{position:relative;z-index:2;min-width:0}
.hero-kicker{font:500 10px 'DM Sans',sans-serif;letter-spacing:2px;color:#bcc4be;display:block;margin-bottom:26px}
.hero-kicker>span{color:var(--orange);padding:0 12px}
.home .hero-copy>.eyebrow{display:none}
.home .hero h1{font-size:clamp(60px,7.5vw,112px);line-height:.99;letter-spacing:-6px;margin:0 0 26px;font-weight:600}
.headline-line{display:block}
.headline-line em{color:var(--acid);font-style:normal}
.orange-dot{color:var(--acid)}
.home .hero-text{color:#aebbb6;font-size:15px;max-width:365px;line-height:1.7}
.home .hero-actions{margin-top:26px;gap:27px}
.home .button-dark{color:white;background:#df4200}
.home .button-dark:hover{background:#c93600;box-shadow:0 0 35px #ff570b26}
.home .text-link{font-size:13px}
.home .pitch-link{color:#aebbb6;font-size:11px;font-weight:400;margin-top:22px;border-bottom:1px solid #69706a;padding-bottom:4px}
.home .hero-art{height:530px;min-width:0;position:relative;display:block;perspective:1000px;align-self:center}
.orbital-scene{position:absolute;inset:0;transform:rotateX(var(--scene-y,0deg)) rotateY(var(--scene-x,0deg));transition:transform .35s ease-out;transform-style:preserve-3d}
.scene-grid{position:absolute;inset:5% -15%;background-image:linear-gradient(#bdcabc09 1px,transparent 1px),linear-gradient(90deg,#bdcabc09 1px,transparent 1px);background-size:43px 43px;mask-image:radial-gradient(ellipse,black,transparent 72%);transform:rotate(-12deg)}
.scene-glow{position:absolute;inset:5% -10%;background:radial-gradient(ellipse,#ff570b25,transparent 65%);filter:blur(15px)}
.scene-disc{position:absolute;inset:23% 18%;border-radius:50%;background:radial-gradient(circle at 35% 30%,#34413b,#152021 70%);box-shadow:0 22px 70px #0008,inset 1px 1px 0 #c9d2c522}
.scene-track{position:absolute;left:3%;top:9%;width:94%;height:82%;border:1px solid #a8b4a23b;border-radius:50%}
.track-a{transform:rotate(-33deg) rotateX(56deg);border-color:#ff7a2b9c;animation:orbit-a 24s linear infinite}
.track-b{transform:rotate(48deg) rotateX(58deg);border-color:#e2e8d74a;animation:orbit-b 29s linear infinite}
.track-c{inset:12% 7%;width:86%;height:76%;border:1px dashed #cdd5bb26;transform:rotate(-24deg)}
.scene-track:after{content:"";position:absolute;top:16%;left:12%;width:9px;height:9px;border-radius:50%;background:var(--acid);box-shadow:0 0 22px #ff570b88}
.track-b:after{background:#ede6d2;width:5px;height:5px}
.brand-tile{position:absolute;width:52%;aspect-ratio:1;left:24%;top:26%;border-radius:28px;background:#ff5000;box-shadow:8px 10px 0 #b53503,14px 20px 0 #0a0e0f,26px 35px 55px #0008,inset 1px 1px 0 #fff4;transform:rotate(-14deg);animation:tile-float 7s ease-in-out infinite}
.brand-tile img{width:100%;height:100%;object-fit:cover;border-radius:28px;display:block}
.tile-edge{position:absolute;inset:0;border-radius:28px;border:1px solid #ffc08b55;background:linear-gradient(130deg,#fff2,transparent 45%,#0001);pointer-events:none}
.satellite{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff9ce,#8f967f 35%,#1b2420 75%);box-shadow:6px 12px 20px #0006}
.satellite-a{width:40px;height:40px;top:18%;right:10%;animation:small-float 8s ease-in-out infinite}
.satellite-b{width:22px;height:22px;bottom:20%;left:8%;background:radial-gradient(circle at 25% 25%,#ffd78b,#ff570b 45%,#771700);animation:small-float 8s -4s ease-in-out infinite}
.scene-cross{position:absolute;font:300 21px monospace;color:#889587}
.cross-a{left:8%;top:10%}.cross-b{right:4%;bottom:15%}
.scene-tag{position:absolute;font:500 9px 'DM Sans',sans-serif;letter-spacing:1px;display:flex;align-items:center;gap:10px;z-index:3}
.tag-top{top:1%;right:0;background:#25302a88;color:#d0d8cb;border:1px solid #d3ddcc26;border-radius:25px;padding:10px 13px}
.signal-dot{width:5px;height:5px;border-radius:50%;background:#ff7a29;box-shadow:0 0 10px #ff7a2977}
.tag-bottom{bottom:9%;left:13%;border:1px solid #d3ddcc33;background:#18221d;padding:11px 16px;transform:rotate(-6deg)}
.tag-bottom i{color:var(--acid);font:normal 20px 'DM Sans',sans-serif}
.scene-coordinate{position:absolute;bottom:0;right:0;font-size:8px;letter-spacing:2px;color:#95a291}
.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:22px;margin-top:32px;font-size:9px;letter-spacing:1.3px;color:#aeb9ac}
.hero-bottom a{color:#e7e9df;letter-spacing:.2px;font-size:11px}
.hero-bottom a span{color:var(--acid);margin-left:10px}
.home .ticker{display:block;padding:0;overflow:hidden;background:var(--acid);color:#11191b;letter-spacing:2px}
.ticker-track{display:flex;width:max-content;animation:marquee 30s linear infinite}
.ticker-group{display:flex;flex-shrink:0;align-items:center;gap:clamp(30px,6vw,100px);padding:23px clamp(15px,3vw,50px)}
.ticker-group>span{font-size:12px;font-weight:700;white-space:nowrap}
.ticker-group i{font-size:20px;font-style:normal}
.ticker-group:after{content:"✦";font-size:20px}
.ticker:hover .ticker-track{animation-play-state:paused}
.home .solution{background:#182023;padding:85px 8vw 90px}
.home .solution-intro{align-items:flex-end}
.home .solution h2{font-size:clamp(40px,4.5vw,66px);line-height:1.05;margin:0}
.solution-intro .eyebrow{font-size:10px;letter-spacing:1.5px;color:#acb7b1}
.cards{gap:18px;perspective:1100px}
.service-card{background:linear-gradient(140deg,#25302e33,#10191844);border:1px solid #52605a66;border-radius:3px;min-height:315px;padding:30px;transform-style:preserve-3d;transition:transform .25s ease-out,border-color .25s,box-shadow .25s;isolation:isolate;overflow:hidden}
.service-card:before{content:"";position:absolute;inset:0;background:radial-gradient(350px circle at var(--light-x,50%) var(--light-y,50%),#ff702315,transparent 70%);opacity:0;transition:opacity .25s;pointer-events:none;z-index:-1}
.service-card:after{content:"";width:95px;height:95px;position:absolute;right:26px;top:28px;border:1px solid #c3cebf35;border-radius:50%;box-shadow:inset 0 0 0 15px #c3cebf05;transition:transform .6s,border-color .3s}
.service-card:nth-child(2):after{border-radius:12px;transform:rotate(-20deg);border-color:#ff570b66;box-shadow:12px 12px 0 -1px #182023,12px 12px 0 0 #c3cebf2e}
.service-card:nth-child(3):after{width:72px;height:72px;right:45px;box-shadow:30px 15px 0 -1px #182023,30px 15px 0 0 #c3cebf55}
.service-card:hover,.service-card:focus-visible{transform:perspective(900px) rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg)) translateY(-7px);border-color:#ff733dcc;box-shadow:0 22px 35px #0003}
.service-card:hover:before{opacity:1}
.service-card:hover:after{transform:rotate(25deg);border-color:var(--acid)}
.service-card .card-num{font-size:11px;color:#ff8145}
.service-card h3{margin-top:85px;font-size:32px;letter-spacing:-1px}
.service-card p{font-size:14px;line-height:1.65;color:#b0beb7;max-width:250px;margin-bottom:44px}
.service-card .card-label{font-size:10px;letter-spacing:.5px}
.service-card .card-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid #a0ae9b44;border-radius:50%;bottom:24px;font-size:20px;color:#ff8550}
.next-chapter{padding:65px 8vw;background:#eae6dd;position:relative;overflow:hidden}
.next-chapter>a{display:flex;justify-content:space-between;align-items:center;gap:25px;font:500 clamp(48px,6.5vw,92px)/1.05 'Space Grotesk',sans-serif;letter-spacing:-4px;margin:30px 0 40px}
.next-chapter em{color:#242d2d}
.next-arrow{flex:0 0 100px;aspect-ratio:1;border:1px solid #a3a99e;border-radius:50%;display:grid;place-items:center;font-size:65px;transition:transform .3s,background .3s,border-color .3s}
.next-chapter>a:hover .next-arrow{transform:rotate(45deg);background:var(--acid);border-color:var(--acid)}
.chapter-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #b9bbae;padding-top:20px;font-size:11px;color:#5a635b}
.chapter-bottom>span:last-child{font-size:9px;letter-spacing:1.5px}
footer{padding-top:44px;padding-bottom:35px}
.footer-nav a{transition:color .2s}.footer-nav a:hover{color:#ff8145}
.inner-page .detail-hero{position:relative;background:radial-gradient(ellipse at 90% 55%,#eadfd180,transparent 60%),var(--cream)}
.inner-page .detail-art{isolation:isolate}
.inner-page .detail-art:before{content:"";position:absolute;inset:5%;border:1px solid #d2c8b977;border-radius:50%;transform:rotate(-30deg) scaleY(.6);z-index:-1}
.product-object{animation:product-float 7s ease-in-out infinite}
.compass:before{animation:compass-turn 12s ease-in-out infinite}
.linked-circle{transition:transform .6s}
.detail-art:hover .linked-circle{transform:translateX(25px) rotate(-10deg)}
.detail-art:hover .linked-circle.second{transform:translateX(-25px)}
.info-grid article,.opportunity-card,.team-card{transition:transform .25s,border-color .25s,box-shadow .25s}
.info-grid article:hover{border-color:var(--orange);transform:translateY(-4px)}
.opportunity-card:hover{box-shadow:0 16px 30px #1820230d}
.page-cta{position:relative;overflow:hidden}
.page-cta:before{content:"";position:absolute;width:300px;height:300px;border:1px solid #fff3;border-radius:50%;right:15%;top:-100px;pointer-events:none}
.contact-form{background:#f7f5ef;padding:30px;border:1px solid #ddd6ca;border-radius:8px}
.contact-form input,.contact-form select,.contact-form textarea{transition:border-color .2s,background .2s}
.contact-form input:focus,.contact-form textarea:focus{background:#fff8}
.faq details{transition:background .25s,padding .25s}
.faq details[open]{background:#26302c80;padding:24px 20px}
.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.reveal-ready.is-visible{opacity:1;transform:translateY(0)}
.headline-line{animation:headline-in .85s both cubic-bezier(.2,.7,.2,1)}
.headline-line:nth-child(2){animation-delay:.09s}.headline-line:nth-child(3){animation-delay:.18s}
@keyframes headline-in{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes marquee{to{transform:translateX(-50%)}}
@keyframes tile-float{0%,100%{transform:translateY(0) rotate(-14deg)}50%{transform:translateY(-15px) rotate(-9deg)}}
@keyframes small-float{50%{transform:translateY(18px)}}
@keyframes orbit-a{from{transform:rotate(-33deg) rotateX(56deg)}to{transform:rotate(327deg) rotateX(56deg)}}
@keyframes orbit-b{from{transform:rotate(48deg) rotateX(58deg)}to{transform:rotate(-312deg) rotateX(58deg)}}
@keyframes product-float{50%{transform:translateY(-12px) rotate(-3deg)}}
@keyframes compass-turn{0%,100%{transform:rotate(35deg)}50%{transform:rotate(65deg)}}
@media(min-width:1600px){.home .hero{padding-top:80px;padding-bottom:32px}.home .hero-art{height:580px}.brand-tile{width:46%;left:27%}}
@media(max-width:1100px){.home .hero h1{font-size:clamp(60px,8vw,90px);letter-spacing:-4px}.home .hero-art{height:450px}.hero-kicker{font-size:9px}.tag-top{font-size:7px;right:-10px}.scene-tag{letter-spacing:.5px}.service-card{padding:24px}.service-card:after{width:65px;height:65px;right:24px}.service-card:nth-child(3):after{width:50px;height:50px;right:40px}}
@media(max-width:760px){
 .home .site-header{height:76px}.home .menu-toggle{color:#e5e8df;border-color:#647165}.home .nav-links{background:var(--night);border-color:#3b4740}.home .nav-links a[aria-current="page"]{color:#ff844a}
 .home .hero{grid-template-columns:1fr;padding:44px 7vw 22px;min-height:0}
 .home .hero h1{font-size:clamp(58px,12.8vw,90px);letter-spacing:-3px;line-height:1}
 .hero-kicker{margin-bottom:22px}.home .hero-text{font-size:14px;max-width:380px}.home .hero-actions{gap:24px}
 .home .hero-art{height:370px;width:100%;max-width:430px;margin:28px auto 0}
 .brand-tile{width:46%;left:27%;top:26%;border-radius:20px}.brand-tile img,.tile-edge{border-radius:20px}
 .scene-disc{inset:24% 22%}.scene-track{left:8%;width:84%;top:8%;height:80%}.track-c{inset:12% 10%;width:80%;height:75%}
 .tag-top{right:0;font-size:8px}.tag-bottom{left:10%;bottom:8%;font-size:8px}.scene-coordinate{font-size:7px}
 .hero-bottom{margin-top:12px;flex-wrap:wrap;gap:13px;font-size:8px;padding-top:16px}
 .ticker-group{gap:30px;padding:18px 15px}.ticker-group>span{font-size:10px}
 .home .solution{padding:55px 7vw}.home .solution-intro{display:block}.home .solution-intro .eyebrow{margin-bottom:25px}.home .solution h2{font-size:43px;letter-spacing:-2px}
 .service-card{min-height:285px;padding:26px}.service-card:after{width:80px;height:80px}.service-card:nth-child(3):after{width:60px;height:60px}.service-card h3{margin-top:65px}
 .next-chapter{padding:44px 7vw}.next-chapter>a{font-size:clamp(38px,8.5vw,60px);letter-spacing:-2px;gap:15px}.next-arrow{flex-basis:60px;font-size:38px}
 .chapter-bottom{flex-direction:column;gap:12px}.contact-form{padding:22px}.page-cta:before{right:-130px}
 .scene-track,.satellite,.brand-tile,.product-object,.compass:before{animation:none}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .reveal-ready{opacity:1;transform:none}.orbital-scene{transform:none}.service-card:hover{transform:none}
}
