/* Shared spatial language: the three editorial pages. */
body:not([data-page=portfolio]) .hero{isolation:isolate;position:relative;overflow:hidden;background:radial-gradient(ellipse at 82% 40%,#12638d 0%,#063d5c 35%,#032b46 76%);color:#fff}
body:not([data-page=portfolio]) .hero:before{content:'';position:absolute;z-index:-1;inset:-20%;background:repeating-radial-gradient(ellipse at 80% 48%,transparent 0 68px,#83cde813 69px 70px,transparent 71px 104px);transform:rotate(-14deg);pointer-events:none}
body:not([data-page=portfolio]) .hero:after{content:'';position:absolute;z-index:-1;width:520px;height:520px;border-radius:50%;background:#4cafd333;filter:blur(90px);right:-140px;top:180px;pointer-events:none}
body:not([data-page=portfolio]) .hero h1,body:not([data-page=portfolio]) .hero h1 em{color:#fff}body:not([data-page=portfolio]) .hero h1 em{color:#f8b41e}
body:not([data-page=portfolio]) .hero p{color:#c4ddeb}body:not([data-page=portfolio]) .hero small,body:not([data-page=portfolio]) .hero-bottom,body:not([data-page=portfolio]) .breadcrumb{color:#a2c6dc}
body:not([data-page=portfolio]) .hero .eyebrow{color:#f8b41e}body:not([data-page=portfolio]) .hero .btn-outline{border-color:#93bfd955;color:#e2f1f9;background:#ffffff06;backdrop-filter:blur(12px)}
body:not([data-page=portfolio]) .hero-bottom{border-color:#9fc9df26}
.hero-collage,.subhero-image{perspective:1300px;transform-style:preserve-3d;isolation:isolate}
.hero-collage:before,.subhero-image:before{content:'';position:absolute;inset:10% -5%;border:1px solid #91d7ed25;border-radius:50%;transform:rotateX(65deg) rotateZ(-24deg);box-shadow:0 0 80px #41b5d615;pointer-events:none}
.hero-collage .hero-card{border:1px solid #a9daed75;box-shadow:0 35px 70px #00152885,0 0 35px #76d0ef16;transform-style:preserve-3d;will-change:transform}
.hero-collage .hero-card.main{width:44%;height:79%;left:29%;top:9%;transform:rotateY(-13deg) rotateZ(-5deg);z-index:3}
.hero-collage .hero-card.back{width:41%;height:69%;left:1%;top:3%;transform:translateZ(-90px) rotateY(26deg) rotateZ(-13deg)}
.hero-collage .hero-card.front{width:35%;height:63%;right:0;bottom:0;transform:translateZ(45px) rotateY(-20deg) rotateZ(9deg);z-index:4}
.hero-collage .hero-card img{width:100%;height:100%;object-fit:contain;background:#fff}
.collage-label{color:#d5efff!important;background:#082f48bd!important;backdrop-filter:blur(18px);border:1px solid #afd9ee36;border-radius:5px;z-index:5}
.subhero-image{min-height:480px}.subhero-image>img{position:relative;z-index:2;box-shadow:0 30px 65px #00172870;border:1px solid #a3d6ef55;max-width:82%;margin-inline:auto;display:block;border-radius:12px;object-fit:cover;transform:rotateY(-8deg) rotateZ(-2deg)}
.hero-satellite{position:absolute;width:37%;height:58%;top:25%;border:4px solid #fff;border-radius:7px;background:white;padding:0;overflow:hidden;box-shadow:0 24px 45px #001d3290;cursor:pointer;transform-style:preserve-3d}
.hero-satellite img{width:100%;height:100%;object-fit:contain}.satellite-left{left:-2%;z-index:1;transform:rotateY(25deg) rotateZ(-13deg) translateZ(-40px);top:5%}.satellite-right{right:-2%;z-index:3;transform:rotateY(-20deg) rotateZ(9deg) translateZ(45px);top:44%}
.subhero-image .image-label{z-index:4;max-width:85%;background:#08334bdd;color:white;border:1px solid #acdaed55;backdrop-filter:blur(18px);box-shadow:0 18px 30px #00172c40}
.depth-gallery{position:relative;isolation:isolate;overflow:hidden;margin-inline:-35px;padding:20px 0 24px;color:#fff;touch-action:pan-y}
.depth-stage{height:540px;position:relative;perspective:1400px;transform-style:preserve-3d}
.depth-card{position:absolute;left:50%;top:25px;width:310px;height:435px;padding:5px;background:#fff;border:1px solid #c1dfeb88;border-radius:8px;box-shadow:0 38px 70px #001122a0;cursor:pointer;transform:translateX(-50%);overflow:hidden;transition:box-shadow .3s;will-change:transform}
.depth-card img{width:100%;height:100%;object-fit:contain;background:#fff}.depth-card>span{position:absolute;bottom:0;left:0;right:0;padding:48px 18px 16px;background:linear-gradient(transparent,#032b46f5);text-align:left;display:grid;gap:5px;color:#fff}.depth-card small{font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#f8b41e}.depth-card strong{font-size:14px}.depth-card.is-current{box-shadow:0 40px 80px #00111cc0,0 0 40px #68c1e529}
.depth-aura{position:absolute;width:80%;height:70%;left:10%;top:10%;border-radius:50%;background:radial-gradient(ellipse,#3d98bf45,transparent 66%);filter:blur(25px);z-index:-1}
.depth-gallery:after{content:'';position:absolute;width:75%;height:60px;left:12%;top:470px;border-radius:50%;border:1px solid #a0d0e82a;transform:rotateX(55deg);pointer-events:none;z-index:-1}
.depth-controls{display:flex;align-items:center;justify-content:center;gap:22px;position:relative;z-index:4}.depth-controls button{width:48px;height:48px;border:1px solid #8fbcd250;background:#ffffff09;color:#fff;border-radius:50%;cursor:pointer;font-size:20px;flex-shrink:0}.depth-controls button:hover{background:#f8b41e;color:#033759}.depth-caption{text-align:center;min-width:170px;max-width:45%;font-size:12px}.depth-hint{text-align:center;font-size:9px!important;color:#9cbfd4!important;margin-top:15px!important}
.service{position:relative;border-radius:7px;transform-style:preserve-3d}.service:before{content:'';position:absolute;inset:-12px;background:radial-gradient(circle at var(--pointer-x,50%) var(--pointer-y,30%),#0273b112,transparent 75%);opacity:0;transition:opacity .4s;pointer-events:none}.service:hover:before{opacity:1}.service-icon{transform:translateZ(15px)}
.process{position:relative}.process:before{content:'';position:absolute;top:20px;left:0;width:calc(var(--process-progress,0) * 100%);height:1px;background:linear-gradient(90deg,#f8b41e,#0273b1);opacity:.4;pointer-events:none}.step{position:relative}.step .number{background:var(--bg,#fff);position:relative;padding-right:15px;width:max-content}
.section-head h2{perspective:600px}.audience{overflow:hidden}.audience>img{will-change:transform}.contact{position:relative;isolation:isolate;overflow:hidden}.contact:after{content:'';width:380px;height:380px;border:1px solid #f8b41e38;border-radius:50%;position:absolute;right:-150px;top:-120px;box-shadow:0 0 0 50px #f8b41e08,0 0 0 100px #f8b41e05;z-index:-1}
@media(max-width:850px){.subhero-image{min-height:430px;max-width:540px}.subhero-image>img{height:360px}.hero-satellite{height:60%}.satellite-right{top:32%}.depth-stage{height:500px}.depth-card{width:280px;height:395px}.depth-gallery:after{top:420px}}
@media(max-width:580px){body:not([data-page=portfolio]) .hero{background:radial-gradient(ellipse at 80% 80%,#125d83,#032b46 70%)}.hero-collage .hero-card.main{height:83%;width:47%;top:5%;left:27%}.hero-collage .hero-card.back{width:42%;left:0;height:72%}.hero-collage .hero-card.front{width:36%;height:67%;right:0;bottom:0}.hero-collage{height:340px;margin-top:28px;margin-bottom:25px}.subhero-image{min-height:375px;margin-top:10px;margin-bottom:20px}.subhero-image>img{height:300px;max-width:82%}.hero-satellite{height:61%;width:37%;border-width:3px}.satellite-left{top:8%;left:0}.satellite-right{top:34%;right:0}.subhero-image .image-label{font-size:8px;bottom:2px}.depth-gallery{margin-inline:-20px;padding-top:0}.depth-stage{height:430px;perspective:1000px}.depth-card{width:228px;height:325px;top:25px}.depth-gallery:after{top:355px}.depth-controls{gap:12px}.depth-caption{min-width:0;font-size:11px;max-width:52%}.depth-card strong{font-size:12px}.depth-hint{font-size:8px!important}.process:before{display:none}}
@media(prefers-reduced-motion:reduce){.hero-collage .hero-card,.depth-card,.audience>img{will-change:auto}.hero-collage:before,.subhero-image:before{display:none}}
