/* Scroll-led homepage */
:root{--navy:#091c35;--sky:#a0daee;--blue:#2551ad;--ink:#11223b;--paper:#f8fbfc;--purple:#3055ac;--line:#d8e2ea;--lime:#bbebff;--muted:#4c6278}
body{background:var(--paper)}header{position:sticky;top:0;background:transparent;border:0;padding-top:10px;margin-bottom:-10px;z-index:10;pointer-events:none}.header{pointer-events:auto;min-height:64px;padding:0 15px;border:1px solid #d8e5ee;border-radius:999px;background:#ffffffeb;backdrop-filter:blur(16px);box-shadow:0 8px 35px #09274d0e}.header .logo span{border-radius:50%;background:var(--navy);color:#a4e4f7}.header .button,.motion-hero .button{border-radius:999px}.dark{background:var(--navy)}.dark:hover{background:#244e9a}.scroll-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;background:#276ac5;transform-origin:left;transform:scaleX(0);z-index:20;pointer-events:none}.motion-hero{position:relative;isolation:isolate;overflow:hidden;margin-top:-64px;background:#faffff}.hero-glow{position:absolute;inset:-8% -13% -10%;z-index:-1;background:radial-gradient(ellipse 57% 67% at 55% 26%,#9bdff1 0 48%,#bad5f5 65%,#dce3fa 76%,#faffff 91%);transform:translateY(var(--glow-y,0px))}.motion-hero-inner{min-height:max(640px,100svh);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;position:relative;padding-block:clamp(115px,17vh,188px) 128px}.motion-hero-content{align-self:center}.motion-hero h1{font-size:clamp(76px,11vw,158px);margin:18px 0 24px;font-weight:600;line-height:.83;letter-spacing:-.098em;animation:motion-in .8s both}.motion-hero h1 em{font-style:normal;color:var(--blue)}.motion-hero p{max-width:420px;font-size:clamp(17px,2.1vw,22px);animation:motion-in .8s .12s both}.hero-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin-top:28px;animation:motion-in .8s .2s both}.scroll-link{font-weight:700;font-size:14px}.scroll-link span{margin-left:5px}.hero-price{border-top:1px solid #9bb4cd;padding-top:10px;min-width:155px}.hero-price span{display:block;font-size:13px}.hero-price strong{font:600 clamp(35px,5vw,61px)/1.1 var(--head);letter-spacing:-.08em}.scroll-indicator{position:absolute;bottom:34px;left:0;display:grid;place-items:center;width:46px;height:46px;border:1px solid #9bb4cd;border-radius:50%;transition:background .2s}.scroll-indicator:hover{background:white}.manifesto{background:var(--sky);min-height:75svh;display:grid;place-items:center;text-align:center;padding:120px 0}.manifesto h2{font-size:clamp(42px,7.1vw,96px);line-height:.96;margin:20px auto;max-width:1100px;font-weight:600}.manifesto p{font-size:clamp(16px,2vw,21px)}.stories{background:var(--navy);color:white}.scene{min-height:min(85svh,800px);display:grid;grid-template-columns:1fr 1fr}.scene-copy{display:flex;align-items:flex-start;flex-direction:column;justify-content:center;padding:clamp(32px,7vw,120px)}.scene-copy h2{font-size:clamp(42px,6.1vw,86px);line-height:.96;font-weight:600;margin:18px 0}.scene-copy p{color:#c4d6e8;font-size:clamp(16px,1.6vw,20px);max-width:410px;margin-bottom:22px}.scene-copy .eyebrow{color:#a3dbf2}.scene .light{color:white;border-color:#85a3c0}.scene .light:hover{background:#193b60}.scene-media{margin:0;position:relative;overflow:hidden;background:#23435d;min-height:330px}.scene-media img{position:absolute;width:100%;height:110%;top:-5%;object-fit:cover;transform:translateY(var(--parallax,0px));filter:saturate(.8)}.scene:nth-child(even) .scene-media{grid-column:1;grid-row:1}.scene:nth-child(even) .scene-copy{grid-column:2;grid-row:1}.landing-section{padding-block:clamp(48px,8vw,110px)}.landing-section .section-heading h2,.process-preview h2{margin-top:8px;font-size:clamp(40px,6vw,75px);font-weight:600}.landing-section .search{margin:0 0 18px}.landing-section .category{min-height:150px}.project-photo{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;transition:transform .65s cubic-bezier(.2,.65,.2,1)}.project:hover .project-photo{transform:scale(1.06)}.project-caption-art{position:absolute;left:7%;bottom:9%;color:white;font:700 10cqw/.9 var(--head);letter-spacing:-.07em;text-shadow:0 2px 20px #000}.photo-north img{filter:brightness(.72) saturate(.85)}.photo-coffee img{filter:brightness(.75)}.process-preview{display:grid;grid-template-columns:1fr 1fr;gap:36px;border-top:1px solid var(--line)}.process-preview .button{margin-top:20px}.process-preview ol{padding:0;margin:0;list-style:none}.process-preview li{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:15px 0}.process-preview li span{color:var(--blue);font-weight:700}.process-preview li p{margin-top:5px}.callout{background:#bceafa}.motion-ready [data-reveal],.motion-ready [data-stagger]>*{opacity:0;transform:translateY(30px);transition:opacity .75s ease,transform .8s cubic-bezier(.2,.7,.25,1);transition-delay:var(--delay,0ms)}.motion-ready .revealed,.motion-ready [data-stagger].revealed>*{opacity:1;transform:none}.motion-ready .scene-copy[data-reveal]{transform:translateY(25px)}.motion-ready .scene-copy.revealed{transform:none}.motion-ready .scene-media img{clip-path:inset(0 0 12% 0);transition:clip-path .9s cubic-bezier(.2,.7,.25,1)}.motion-ready .scene.in-view img{clip-path:inset(0)}@keyframes motion-in{from{opacity:0;transform:translateY(22px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}#studio,#service-catalog,#selected-work,.catalog-group{scroll-margin-top:85px}.mobile-project{display:none}@media(max-width:960px){.mobile-project{display:inline}.motion-hero-inner{padding-bottom:100px}}@media(max-width:690px){.header{border-radius:20px;min-height:52px}.header nav{padding:0 2px 12px}.motion-hero{margin-top:-52px}.motion-hero-inner{min-height:90svh;grid-template-columns:1fr;align-content:center;padding-block:106px 95px;gap:28px}.motion-hero h1{font-size:clamp(67px,16vw,105px)}.hero-price{width:max-content}.scroll-indicator{bottom:22px}.manifesto{min-height:61svh;padding:80px 0}.scene,.process-preview{grid-template-columns:1fr}.scene:nth-child(even) .scene-media,.scene:nth-child(even) .scene-copy{grid-column:auto;grid-row:auto}.scene-media{min-height:300px}.scene-copy{padding:42px 24px}.landing-section{padding-block:49px}}@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal],.motion-ready [data-stagger]>*{opacity:1;transform:none}.scene-media img,.hero-glow{transform:none!important;clip-path:none!important}}
/* Editorial redesign */
:root{--paper:#f5f9fd;--ink:#12223a;--navy:#102742;--purple:#1563bc;--blue:#1563bc;--line:#d0deec;--lime:#5de7fb;--muted:#4b6077;--head:Archivo,Arial,sans-serif;--body:"DM Sans",Arial,sans-serif}
h1,h2,h3{letter-spacing:-.065em}h3{font-size:clamp(16px,2.3vw,21px);line-height:1.2}
.header{border-radius:13px;background:#f7fbfff5;border-color:#cfdfef;min-height:61px;box-shadow:0 7px 20px #120c1a18}
.logo{font-size:15px;letter-spacing:-.085em}.header .logo span,.footer .logo span{background:var(--ink);color:var(--lime);border-radius:8px}.header .button,.motion-hero .button,.button{border-radius:6px}
.eyebrow{letter-spacing:.125em}.eyebrow i{background:#23b7f3}
.motion-hero{margin-top:-61px;background:#071423;color:#f4fbff}
.hero-glow{background:radial-gradient(ellipse at 78% 38%,#14589f 0%,#123354 42%,#071423 75%);inset:-15% -5%}
.motion-hero-inner{min-height:0;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:clamp(22px,4vw,64px);padding-block:clamp(112px,15vh,165px) 22px}
.motion-hero .eyebrow{color:#b3d5f4}.motion-hero h1{font-size:clamp(41px,6.2vw,91px);line-height:.98;letter-spacing:-.09em;font-weight:650;margin:20px 0 23px}.motion-hero h1 em{color:var(--lime)}
.motion-hero p{color:#b9d5ef;font-size:clamp(16px,1.55vw,21px)}.motion-hero .dark{background:var(--lime);border-color:var(--lime);color:#062039}.motion-hero .dark:hover{background:#fff}.scroll-link:hover{text-decoration:underline}.hero-actions{margin-top:25px}
.hero-editorial{position:relative;isolation:isolate;overflow:hidden;background:#196ebc;margin:0;border-radius:13px;aspect-ratio:1.06;min-height:270px;border:1px solid #5e9ddb;animation:motion-in .95s .11s both}
.hero-editorial img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:48% 55%;filter:grayscale(1) contrast(1.18);mix-blend-mode:luminosity;opacity:.77}
.hero-image-grid{position:absolute;inset:0;background:linear-gradient(0deg,#110b1c 0,transparent 31%),repeating-linear-gradient(90deg,transparent 0 calc(25% - 1px),#e8d9ff32 calc(25% - 1px) 25%)}
.hero-orbit{position:absolute;right:8%;top:9%;width:clamp(58px,8vw,108px);aspect-ratio:1;display:grid;place-items:center;border:1px solid #e5d8fa;border-radius:50%;color:var(--lime)}.hero-orbit b{font:400 clamp(39px,5vw,74px)/1 Arial,sans-serif;animation:orbit 28s linear infinite}
.hero-editorial figcaption{position:absolute;inset:auto 6% 6%;display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#fff}.hero-editorial figcaption span+span{font-size:22px}
.hero-footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid #315577;padding-top:14px;color:#b9d5ef;font-size:13px}.hero-footer strong{color:#9dedff;margin-left:5px}.scroll-progress{background:var(--lime)}
.landing-section .section-heading h2,.process-preview h2{font-size:clamp(31px,5.05vw,69px);line-height:1.02}.landing-section .section-heading{margin-bottom:24px}.landing-section .search{border-radius:6px}.category,.panel,.project{border-radius:9px}.landing-section .category{padding:20px;min-height:180px}.category small{display:block;margin-top:12px;color:#174d8c;font-weight:700}.landing-section .category:nth-child(2){background:#e4f1ff;border-color:#c5def5}.landing-section .category:nth-child(5){background:#e5f8ff;border-color:#c9eaf7}
.work-band{background:#e8f2fc}.work-band .project-grid{grid-template-columns:1.2fr 1fr 1fr}.work-band .art{aspect-ratio:1.22}.work-band .project-info{background:#f8fcff}.work-band .section{padding-block:clamp(49px,7vw,90px)}
.stories{background:#0b2137}.scene{min-height:min(70svh,690px);border-bottom:1px solid #274961}.scene-copy h2{font-size:clamp(31px,4.7vw,68px);line-height:1.04}.scene-copy p{color:#bbd9f1}.scene-copy .eyebrow{color:#a1eeff}.scene .light{border-color:#6698c4}.scene .light:hover{background:#144573}.scene-media img{filter:saturate(.82)}.process-preview h2{font-weight:650}.process-preview li span,.steps li span,.text-link{color:#1563bc}.callout{background:var(--lime);border-radius:10px}.callout h2{font-size:clamp(29px,4vw,54px)}.tint{background:#e9f4ff;border-color:#cfe4f8}.intro h1{font-size:clamp(35px,6.1vw,82px);line-height:1.03}.panel h2{font-size:clamp(23px,3.3vw,40px)}.catalog-group h2{font-size:clamp(19px,3vw,32px)}footer{background:#e9f2fb}@keyframes orbit{to{transform:rotate(360deg)}}
@media(max-width:850px){.motion-hero h1{font-size:clamp(39px,7vw,65px)}}@media(max-width:690px){.header{min-height:52px}.motion-hero{margin-top:-52px}.motion-hero-inner{grid-template-columns:1fr;padding-block:94px 20px;gap:21px}.motion-hero h1{font-size:clamp(39px,9.8vw,67px);margin:14px 0}.hero-editorial{aspect-ratio:1.55;min-height:0}.hero-footer{font-size:12px}.hero-footer .scroll-link{font-size:12px}.work-band .project-grid{grid-template-columns:1fr 1fr}.work-band .project-grid article:first-child{grid-column:1/-1}.work-band .project-grid article:first-child .art{aspect-ratio:1.6}.landing-section .category{min-height:0;padding:13px}.landing-section .category h3{font-size:15px}.landing-section .category p{font-size:13px}.logo{font-size:14px}}@media(max-width:430px){.work-band .project-grid{grid-template-columns:1fr}.hero-footer strong{margin-left:1px}}
.motion-hero h1,.motion-hero p{animation-name:hero-type-in}
@keyframes hero-type-in{from{transform:translateY(14px)}to{transform:none}}
.motion-ready #service-catalog .section-heading[data-reveal]:not(.revealed){opacity:.88;transform:translateY(8px)}
/* Interactive project showcase and shared page motion */
.studio-hero .hero-glow{background:radial-gradient(ellipse at 74% 42%,#165aaa 0%,#15395c 37%,#071423 73%)}
.studio-hero .motion-hero-inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(22px,4vw,56px);padding-block:clamp(102px,13vh,145px) 23px}
.studio-hero h1{font-size:clamp(58px,8vw,125px);line-height:.83;letter-spacing:-.105em;margin:22px 0 27px;animation:none}
.studio-hero h1>span,.studio-hero h1 em{display:block;animation:line-enter .7s cubic-bezier(.18,.75,.22,1) both}.studio-hero h1>span:nth-child(2){animation-delay:.09s}.studio-hero h1 em{animation-delay:.18s}
@keyframes line-enter{from{transform:translateY(.22em) skewY(-2deg)}to{transform:none}}
.showcase{min-width:0;position:relative;animation:showcase-enter .9s cubic-bezier(.2,.7,.2,1) both}
@keyframes showcase-enter{from{transform:translateY(18px) scale(.98)}to{transform:none}}
.showcase-top,.showcase-controls{display:flex;align-items:center;justify-content:space-between;gap:9px}.showcase-top{padding:0 2px 9px;font-size:13px;color:#c9e3f6}.showcase-link{font-weight:650;color:#bcf1ff}.showcase-link:hover{text-decoration:underline}
.showcase-frame{position:relative;isolation:isolate;overflow:hidden;min-height:310px;aspect-ratio:1.34;border:1px solid #74afe978;border-radius:13px;background:#11375b;perspective:850px;transition:background .45s}
.showcase-frame[data-scene=brand]{background:#174e88}.showcase-frame[data-scene=pack]{background:#195975}
.stage-grid{position:absolute;inset:0;background:radial-gradient(circle at var(--px,50%) var(--py,50%),#73b2f366,transparent 50%),repeating-linear-gradient(90deg,transparent 0 calc(12.5% - 1px),#a4d9ff20 calc(12.5% - 1px) 12.5%),repeating-linear-gradient(0deg,transparent 0 calc(16.66% - 1px),#a4d9ff1e calc(16.66% - 1px) 16.66%);pointer-events:none}
.stage-motion{position:absolute;inset:0;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .18s ease-out}
.stage-panel{position:absolute;inset:0;animation:project-enter .65s cubic-bezier(.2,.7,.2,1) both}
@keyframes project-enter{from{opacity:.65;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
.stage-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45;filter:saturate(.62);mask-image:linear-gradient(#000 15%,#000b 67%,transparent)}
.panel-pack img{opacity:.56;object-position:center 43%}
.stage-label{position:absolute;left:6%;bottom:6%;color:white;font-size:clamp(17px,2.5vw,27px);line-height:1;font-weight:750;letter-spacing:-.05em}
.stage-label small{display:block;margin-top:6px;font-size:11px;color:#c2e1fa;font-weight:500;letter-spacing:0}
.site-mock,.brand-print,.pack-print{position:absolute;box-shadow:10px 18px 44px #12091b80}
.site-mock{left:16%;top:13%;width:62%;height:59%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:0 8%;transform:rotate(-8deg);background:linear-gradient(140deg,#edf5e6,#98bdac);color:#14232a;border-radius:8px;overflow:hidden}
.mock-bar{position:absolute;top:0;inset-inline:0;display:flex;justify-content:space-between;padding:3% 6%;background:#f3f7ec;border-bottom:1px solid #c7dac5;font-size:clamp(6px,1vw,10px);font-weight:700}
.site-mock b{font:800 clamp(26px,4.5vw,62px)/.87 var(--head);letter-spacing:-.095em}.mock-button{font-size:clamp(7px,1vw,11px);font-weight:700;margin-top:6%}
.stage-sticker{position:absolute;right:12%;top:17%;display:grid;place-items:center;width:clamp(42px,6vw,86px);aspect-ratio:1;background:var(--lime);color:#0a2440;border-radius:50%;font:700 clamp(25px,4vw,51px)/1 var(--head);transform:rotate(13deg);box-shadow:0 10px 24px #09051166}
.brand-print{left:18%;top:11%;width:57%;height:61%;display:grid;align-content:end;padding:5%;transform:rotate(-9deg);background:#defa80;color:#1c1720}.brand-print span{font:850 clamp(27px,5vw,74px)/.78 var(--head);letter-spacing:-.10em}.brand-print i{position:absolute;top:6%;right:8%;font-style:normal;font-size:clamp(18px,3vw,40px)}
.pack-print{left:35%;top:12%;width:33%;height:62%;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-9deg);border-radius:7px 7px 13px 13px;background:#f0ad8e;color:#422235}.pack-print span{font:800 clamp(17px,3.25vw,49px)/1 var(--head);letter-spacing:-.09em}.pack-print small{font-size:9px;font-weight:650;margin-top:5px}
.showcase-controls{justify-content:flex-start;flex-wrap:wrap;padding-top:10px}.showcase-controls button{border:1px solid #74afe985;border-radius:999px;padding:7px 14px;background:transparent;color:#def1ff;font-size:12px;font-weight:700}.showcase-controls button:hover{border-color:#def1ff}.showcase-controls button[aria-pressed=true]{background:var(--lime);color:#09243b;border-color:var(--lime)}
.showcase :focus-visible{outline-color:#b4f5ff}.project .arrow,.project-info>span,.category .arrow{transition:transform .24s}.category:hover .arrow,.project a:hover .project-info>span{transform:translate(3px,-3px)}
.interior-page .intro{margin-top:24px;margin-bottom:25px;border-radius:14px;overflow:hidden;isolation:isolate;position:relative;padding:clamp(30px,6vw,86px) clamp(22px,5vw,74px);background:#0a2039;color:#faf7fd;animation:none}
.interior-page .intro::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 100% 10%,#1b5ea6,transparent 65%),repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),#89c5f720 calc(10% - 1px) 10%);pointer-events:none}
.interior-page .intro h1{color:#a3efff;max-width:1040px;animation:line-enter .6s both}.interior-page .intro p{color:#cce7ff;animation:line-enter .65s .08s both}.interior-page .intro .eyebrow{color:#d1eaff}
.interior-page .scroll-progress{background:#2168c3}.interior-page .steps li,.interior-page .faq details,.interior-page .service,.interior-page .panel{transition:background-color .25s,border-color .25s,box-shadow .25s}.interior-page .steps li:hover,.interior-page .faq details[open]{background:#ebf5ff}.interior-page .service:hover,.interior-page .panel:focus-within{border-color:#80acd9;box-shadow:0 10px 22px #25142d12}
.motion-ready .interior-enter{animation:interior-enter .63s cubic-bezier(.2,.7,.2,1) both;animation-delay:var(--delay,0ms)}
@keyframes interior-enter{from{transform:translateY(15px);opacity:.65}to{transform:none;opacity:1}}
@media(max-width:1050px){.studio-hero h1{font-size:clamp(48px,8.4vw,91px)}.showcase-frame{min-height:250px}}
@media(max-width:690px){.studio-hero .motion-hero-inner{grid-template-columns:1fr;padding-block:90px 22px;gap:22px}.studio-hero h1{font-size:clamp(58px,12vw,93px);margin:15px 0 21px}.showcase-frame{min-height:215px;aspect-ratio:1.45}.site-mock b{font-size:clamp(27px,8vw,50px)}.brand-print span{font-size:clamp(31px,9vw,57px)}.pack-print span{font-size:clamp(20px,6vw,40px)}.stage-label{font-size:20px}.interior-page .intro{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.stage-motion{transform:none}.studio-hero h1>span,.studio-hero h1 em,.showcase,.stage-panel,.interior-page .intro h1,.interior-page .intro p,.motion-ready .interior-enter{animation:none}.showcase-frame,.stage-motion{transition:none}}

/* Depth, typography, and the service matrix */
@font-face{font-family:Archivo;src:url('fonts/archivo.woff2') format('woff2');font-weight:400 900;font-display:swap}
@font-face{font-family:"DM Sans";src:url('fonts/dmsans.woff2') format('woff2');font-weight:400 800;font-display:swap}
:root{--head:Archivo,Arial,sans-serif;--body:"DM Sans",Arial,sans-serif}
h1,h2{letter-spacing:-.07em}.studio-hero h1{font-weight:800;letter-spacing:-.085em}.logo{letter-spacing:-.055em}
.header,.category,.service,.panel,.project,.callout,.showcase-frame,.interior-page .intro,.feature-art{border-radius:2px}
.button,.header .button,.motion-hero .button,.showcase-controls button,.search,.landing-section .search,.category .icon{border-radius:3px}
.header .logo span,.footer .logo span{border-radius:3px}
.depth-particles{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.studio-hero .hero-glow,.interior-page .intro::after{z-index:-2}.studio-hero .hero-glow{background:radial-gradient(ellipse at 68% 48%,#135bab,#14395b 46%,#071424 76%)}
.studio-hero h1>span:not(.forming-word),.studio-hero h1>em{animation:none}
.forming-word{display:inline-block;max-width:100%}
.words-formed .forming-word{animation:word-form .68s cubic-bezier(.22,.78,.23,1) both;animation-delay:var(--word-delay)}
@keyframes word-form{from{opacity:.30;transform:translate3d(0,.28em,0) scale(.90)}to{opacity:1;transform:none}}
.words-formed .shining-word{color:#1356a6;background:linear-gradient(115deg,#114581 0%,#1356a6 36%,#2b80e9 49%,#114581 62%,#1356a6 100%);background-size:250% 100%;background-clip:text;-webkit-text-fill-color:transparent;animation:word-form .68s cubic-bezier(.22,.78,.23,1) both,word-sheen 1.45s ease-out both;animation-delay:var(--word-delay),calc(var(--word-delay) + .40s)}
.studio-hero .words-formed .shining-word,.interior-page .intro .words-formed .shining-word,.scene .words-formed .shining-word{color:#a3efff;background-image:linear-gradient(115deg,#52dbfa 0%,#79e6ff 36%,#edfaff 49%,#79dfff 63%,#52dbfa 100%)}
@keyframes word-sheen{from{background-position:100% 50%}to{background-position:0 50%}}
.scene-media img{transform:translate3d(0,calc(var(--parallax,0px) + var(--depth-shift,0px)),0) scale(var(--depth-zoom,1));transform-origin:50% 55%}
.stage-panel>img{transform:scale(var(--depth-zoom,1));transform-origin:50% 44%}
.landing-section .category-grid,.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;align-items:stretch;border-top:1px solid #c5d9ec;border-left:1px solid #c5d9ec}
.landing-section .category-grid>.category,.service-grid>.service{border:0;border-right:1px solid #c5d9ec;border-bottom:1px solid #c5d9ec;border-radius:0;min-width:0;margin:0;padding:clamp(17px,2.4vw,31px);height:100%;display:flex;align-items:flex-start;flex-direction:column}
.landing-section .category-grid>.category:hover,.service-grid>.service:hover{background:#eaf5ff;box-shadow:inset 0 -3px #2672c9;transform:none}
.landing-section .category-grid>.category{min-height:190px}
.landing-section .category-grid>.category p{flex:1}.landing-section .category-grid>.category h3{line-height:1.15}
.service-grid>.service{min-height:165px}.service-grid>.service p{flex:1}.service-grid>.service h3{overflow-wrap:anywhere}
@media(max-width:850px){.landing-section .category-grid,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.landing-section .category-grid,.service-grid{grid-template-columns:minmax(0,1fr)}.landing-section .category-grid>.category,.service-grid>.service{min-height:0}.studio-hero h1{font-size:clamp(49px,13vw,76px)}}
@media(prefers-reduced-motion:reduce){.depth-particles{display:none}.forming-word,.words-formed .shining-word{animation:none!important;background:none!important;-webkit-text-fill-color:currentColor}.stage-panel>img,.scene-media img{transform:none!important}}


/* Scroll-controlled zoom sequence and page objects */
.zoom-journey{--zoom-progress:0;--orbit-scale:.72;--orbit-turn:-42deg;--orbit-lift:32px;--orbit-color:#56e4fb;background:#09182b;color:#f9f2ff;position:relative}
.zoom-journey.zoom-active{min-height:235svh}
.zoom-pin{display:grid;align-items:center;min-height:70svh;padding:44px 0}
.zoom-active .zoom-pin{position:sticky;top:82px;min-height:min(77svh,740px);padding:22px 0}
.zoom-layout{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:center;gap:clamp(24px,6vw,92px)}
.zoom-copy .eyebrow{color:#a2c9eb}.zoom-copy h2{font-size:clamp(43px,6.4vw,92px);line-height:.95;margin:15px 0 22px;color:#fff;max-width:10ch}
.zoom-copy h2 .shining-word{background-image:linear-gradient(115deg,#52dbfa 0%,#79e6ff 36%,#edfaff 49%,#79dfff 63%,#52dbfa 100%)}
.zoom-chapters{list-style:none;margin:0;padding:0;border-top:1px solid #345b7d}
.zoom-chapters li{border-bottom:1px solid #345b7d}.zoom-chapters a{display:grid;grid-template-columns:2.7ch 1fr auto;gap:12px;padding:11px 0;color:#c8e4f9;align-items:center;font-weight:650;font-size:clamp(13px,1.5vw,18px)}
.zoom-chapters a span{color:#9bc6ea;font:550 12px/1 var(--body)}.zoom-chapters a i{font-style:normal}
.zoom-chapters [aria-current=step] a,.zoom-chapters a:hover{color:#9bebff}.zoom-chapters [aria-current=step] a span{color:inherit}
.zoom-stage{min-width:0;isolation:isolate;position:relative;overflow:hidden;aspect-ratio:1.20;min-height:270px;border:1px solid #366993;border-radius:2px;background:radial-gradient(ellipse at 55% 46%,#1b4e7e 0%,#102e50 48%,#0a1c33 88%);perspective:750px}
.zoom-grid{position:absolute;inset:-22%;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),#9ed6ff29 calc(10% - 1px) 10%),repeating-linear-gradient(0deg,transparent 0 calc(10% - 1px),#9ed6ff24 calc(10% - 1px) 10%);transform:translateY(calc(var(--orbit-lift) * -.4)) scale(calc(1 + var(--zoom-progress) * .42)) rotateX(19deg);mask-image:radial-gradient(#000 10%,transparent 72%)}
.zoom-orbit{position:absolute;inset:13%;transform-style:preserve-3d;transform:translateY(var(--orbit-lift)) rotateY(var(--orbit-turn)) rotateX(-12deg) scale(var(--orbit-scale));color:var(--orbit-color)}
.zoom-ring{position:absolute;left:50%;top:50%;width:85%;aspect-ratio:1;border:1px solid currentColor;border-radius:50%;box-shadow:0 0 18px #f0d4fc42;transform-style:preserve-3d}
.ring-a{transform:translate(-50%,-50%) rotateX(62deg) rotateZ(12deg)}
.ring-b{transform:translate(-50%,-50%) rotateY(66deg) rotateZ(15deg)}
.ring-c{transform:translate(-50%,-50%) rotateX(-48deg) rotateY(-28deg)}
.zoom-core{position:absolute;left:50%;top:50%;width:28%;aspect-ratio:1;display:grid;place-items:center;transform:translate(-50%,-50%) rotateY(calc(var(--orbit-turn) * -.70));background:linear-gradient(135deg,#fcf5fa,var(--orbit-color) 70%);border-radius:4px;color:#241b29;box-shadow:0 0 45px #e9d5fc68}
.zoom-core b{font:600 clamp(32px,7vw,90px)/1 var(--head)}
.zoom-satellite{position:absolute;display:block;width:8%;aspect-ratio:1;background:var(--orbit-color);border-radius:50%;box-shadow:0 0 18px currentColor}
.sat-a{left:18%;top:26%;transform:translateZ(55px)}.sat-b{right:17%;bottom:25%;transform:translateZ(-62px) scale(.62)}
.zoom-meter{position:absolute;inset:auto 6% 7%;height:2px;background:#8dccfa47}.zoom-meter span{display:block;height:100%;background:var(--orbit-color);transform-origin:left;transform:scaleX(var(--zoom-progress))}
.zoom-journey[data-phase="1"]{--orbit-color:#68b8ff}.zoom-journey[data-phase="2"]{--orbit-color:#a5f4ff}
.page-object{position:absolute;z-index:-1;right:clamp(-50px,2vw,46px);top:0;width:clamp(185px,31vw,450px);aspect-ratio:1;pointer-events:none;opacity:.42;transform:translate(8%,-24%) rotate(var(--object-spin,0deg)) scale(var(--object-scale,1));color:#8bd8ff}
.page-object i{position:absolute;inset:16%;border:1px solid currentColor;transform:rotate(27deg) skew(8deg);box-shadow:0 0 18px #69bfff30}
.page-object i:nth-child(2){inset:24%;transform:rotate(54deg) skew(-6deg)}
.page-object i:nth-child(3){inset:33%;background:#62d9ff60;transform:rotate(81deg)}
.page-object[data-shape="orbit"] i{border-radius:50%;transform:scaleX(.55) rotate(-18deg)}.page-object[data-shape="orbit"] i:nth-child(2){transform:scaleX(.72) rotate(45deg)}
.page-object[data-shape="diamond"] i{transform:rotate(45deg)}.page-object[data-shape="diamond"] i:nth-child(2){transform:rotate(25deg)}
@media(max-width:690px){.zoom-journey.zoom-active{min-height:205svh}.zoom-active .zoom-pin{top:65px;min-height:min(76svh,670px);padding:16px 0}.zoom-layout{grid-template-columns:1fr;gap:16px}.zoom-copy h2{font-size:clamp(33px,8.4vw,57px);margin:7px 0 11px;max-width:15ch}.zoom-chapters a{padding:7px 0}.zoom-stage{aspect-ratio:1.8;min-height:150px;max-height:31svh}.zoom-core b{font-size:clamp(26px,7vw,52px)}.page-object{opacity:.26}}
@media(max-height:650px){.zoom-active .zoom-pin{position:relative;top:auto;min-height:0}.zoom-journey.zoom-active{min-height:0}}
@media(prefers-reduced-motion:reduce){.zoom-journey.zoom-active{min-height:0}.zoom-active .zoom-pin{position:static;min-height:0}.zoom-orbit,.zoom-grid,.page-object{transform:none}.zoom-meter{display:none}}

.page-object i{animation:object-assemble .8s cubic-bezier(.22,.75,.25,1) both}.page-object i:nth-child(2){animation-delay:.11s}.page-object i:nth-child(3){animation-delay:.22s}@keyframes object-assemble{from{opacity:.15;scale:.62}to{opacity:1;scale:1}}
@media(prefers-reduced-motion:reduce){.page-object i{animation:none}}


/* Cursor-controlled sweep, clipped to the letters */
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
  .words-formed .shining-word{--shine-base:#1356a6;--shine-hot:#1479ed}
  :is(.studio-hero,.interior-page .intro,.scene,.zoom-copy) .words-formed .shining-word{--shine-base:#52dbfa;--shine-hot:#f1fbff}
  .forming-heading.words-formed .shining-word.cursor-lit{
    --sweep-color:color-mix(in srgb,var(--shine-hot) var(--shine-level,0%),var(--shine-base));
    background-image:linear-gradient(108deg,var(--shine-base) calc(var(--shine-x,50%) - 13%),var(--sweep-color) var(--shine-x,50%),var(--shine-base) calc(var(--shine-x,50%) + 13%));
    background-size:100% 100%;
  }
}


/* WebBuiltEasy brand */
.header{background:#071a2df5;border-color:#285374;color:#eaf7ff;box-shadow:0 7px 24px #07192f44}
.header .button{border-color:#69d9f8;color:#eafaff}.header .button:hover{background:#123451;border-color:#9aeaff}
.header nav a:hover,.header nav a[aria-current="page"]{color:#72e6fc}
.header .menu{color:#eaf7ff}
.brand-mark,.header .logo .brand-mark,.footer .logo .brand-mark{position:relative;display:inline-block;overflow:hidden;width:37px;height:31px;flex:none;background:none;border-radius:0;vertical-align:middle}
.brand-mark img{position:absolute;display:block;width:428.45%;max-width:none;height:auto;left:-164.22%;top:-15.87%}
.header .logo{color:#f6fbff;font-size:17px;white-space:nowrap;gap:10px}
.footer{color:#e5f4ff}.footer p,.footer small{color:#b3cde3}.footer nav a:hover{color:#7ce7ff}
footer{background:#081a2d;border-top-color:#245379}
.footer .logo{gap:0}.brand-lockup{position:relative;display:block;width:210px;height:102px;overflow:hidden}
.brand-lockup img{position:absolute;width:390px;height:auto;max-width:none;left:-92px;top:-11px}
.studio-hero .motion-hero-content .eyebrow i{background:#32d9ff}
.studio-hero h1 em{color:#55dfff}
.studio-hero .motion-hero-content .dark{background:linear-gradient(110deg,#5de7fb,#31bfff);color:#08213b}
.studio-hero .motion-hero-content .dark:hover{background:#a2f2ff}
.zoom-core .brand-mark{width:66%;height:auto;aspect-ratio:478/397}
.zoom-core{background:#102c4d;box-shadow:0 0 35px #5de7fb45}
@media(max-width:480px){.header .logo{font-size:15px;gap:6px}.header .logo .brand-mark{width:32px;height:27px}}

.footer .logo .brand-lockup{display:block;width:210px;height:102px;background:none;border-radius:0}.studio-hero .hero-actions{animation-name:hero-type-in}


/* Light brand treatment */
:root{--paper:#f5faff;--ink:#122a45;--muted:#405d77;--line:#cbdfee;--purple:#1465ba;--blue:#1465ba;--lime:#75dcf8;--navy:#1559a4}
html,body{background:#f5faff;color:var(--ink)}
.header{background:#fffffff5;color:#142f4d;border-color:#c5dcec;box-shadow:0 8px 28px #17518012}
.header .logo,.header .menu{color:#173b60}.header .button{color:#1357a5;border-color:#8ab9e7}
.header .button:hover{background:#ebf7ff;border-color:#317ecc}.header nav a:hover,.header nav a[aria-current="page"]{color:#095eaf}
footer{background:#eaf5ff;border-top-color:#c8e0f3}.footer,.footer .logo{color:#173b60}.footer p,.footer small{color:#405d77}.footer nav a:hover{color:#095eaf}
.studio-hero{background:#f3faff;color:#17314e}.studio-hero .hero-glow{background:radial-gradient(ellipse at 72% 28%,#d6f3ff 0%,#e9f5ff 43%,#f9fcff 76%)}
.studio-hero .motion-hero-inner{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);padding-block:clamp(98px,12vw,145px) 28px;gap:clamp(25px,4.5vw,68px)}
.studio-hero .eyebrow,.studio-hero p,.hero-footer{color:#3c5873}.studio-hero h1{font-size:clamp(47px,6.8vw,100px);line-height:1.02;letter-spacing:-.069em;margin-block:15px 20px}
.studio-hero h1 em{color:#1662b9;font-style:normal}.studio-hero .hero-actions .dark,.dark{background:#1763b8;color:#fff;border-color:#1763b8}.studio-hero .hero-actions .dark:hover,.dark:hover{background:#0d50a0;color:#fff}
.hero-footer{border-color:#bfd9ee}.hero-footer strong{color:#1459a7}
.showcase{padding:13px;background:#ffffffc9;border:1px solid #c6def2;box-shadow:0 18px 40px #2167a01b}
.showcase-top,.showcase-link{color:#174675}.showcase-frame,.showcase-frame[data-scene]{border-color:#b9d7ef;background:#e2f4ff}
.showcase-frame[data-scene=brand]{background:#e1edff}.showcase-frame[data-scene=pack]{background:#e4f8fa}
.stage-grid{background:repeating-linear-gradient(90deg,transparent 0 calc(12.5% - 1px),#3785c629 calc(12.5% - 1px) 12.5%),repeating-linear-gradient(0deg,transparent 0 calc(16.66% - 1px),#3785c625 calc(16.66% - 1px) 16.66%)}
.stage-label,.stage-label small{color:#163b5f}.stage-panel img{opacity:.24}.site-mock{background:linear-gradient(135deg,#fff,#d7f2ff);box-shadow:5px 13px 34px #15528830}
.stage-sticker{background:#82e3fa;color:#16477b;box-shadow:0 5px 19px #16477b22}.showcase-controls button{color:#1a4d7f;border-color:#9dc3e7}.showcase-controls button:hover{border-color:#1965b8}.showcase-controls button[aria-pressed=true]{background:#d8f4ff;color:#16477b;border-color:#60b5df}
.zoom-journey{background:#eaf5ff;color:#153554}.zoom-journey.zoom-active{min-height:0}.zoom-active .zoom-pin,.zoom-pin{position:relative;top:auto;min-height:0;padding:clamp(34px,6vw,76px) 0}
.zoom-layout{grid-template-columns:minmax(0,1fr) minmax(0,.58fr);gap:clamp(20px,6vw,90px)}.zoom-copy .eyebrow,.zoom-copy h2{color:#123c66}
.zoom-copy h2{max-width:none;font-size:clamp(32px,5vw,71px);line-height:1.08;margin-block:10px 15px}
.zoom-chapters,.zoom-chapters li{border-color:#accde7}.zoom-chapters a,.zoom-chapters a span,.zoom-chapters [aria-current=step] a,.zoom-chapters a:hover{color:#174e88}
.zoom-chapters [aria-current=step] a{background:#d4effe}.zoom-stage{background:radial-gradient(ellipse at center,#fff,#daf0fd 62%,#d0e7fc);border-color:#accde7;aspect-ratio:1.52;min-height:185px}
.zoom-grid{background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),#4b9ed740 calc(10% - 1px) 10%),repeating-linear-gradient(0deg,transparent 0 calc(10% - 1px),#4b9ed730 calc(10% - 1px) 10%)}
.zoom-journey,.zoom-journey[data-phase="1"],.zoom-journey[data-phase="2"]{--orbit-color:#277bc4}.zoom-core{background:#f3fbff;box-shadow:0 0 30px #87cce052}
.stories{background:#f4f9ff;color:#173554}.scene{border-color:#c3ddef}.scene-copy p,.scene-copy .eyebrow{color:#355c81}
.scene .light{color:#154e88;border-color:#83b4da}.scene .light:hover{background:#e1f4ff}.scene-media{background:#dbeffa}
.interior-page .intro{background:#eaf5ff;color:#143558;overflow:visible}
.interior-page .intro::after{background:radial-gradient(ellipse at 100% 10%,#cbeaff,transparent 68%);border-radius:inherit}
.interior-page .intro h1,.interior-page .intro p,.interior-page .intro .eyebrow{color:#173e69}
.page-object{right:0;max-width:30%;transform:translateY(-5%) rotate(var(--object-spin,0deg)) scale(var(--object-scale,1));transform-origin:75% 25%;opacity:.18;color:#1970ba}
h1,h2,h3,.forming-heading{overflow-wrap:anywhere;line-height:1.1;letter-spacing:-.055em}.forming-word{line-height:1.13;padding-block:.055em;margin-block:-.055em}
.studio-hero .motion-hero-content,.scene-copy,.zoom-copy,.intro,.steps li>div,.section-heading>div{min-width:0}
:is(.studio-hero,.interior-page .intro,.scene,.zoom-copy) .words-formed .shining-word{color:#145caa;--shine-base:#145caa;--shine-hot:#248bce;background-image:linear-gradient(112deg,#145caa 0%,#145caa 33%,#348cd2 50%,#145caa 67%,#145caa 100%)}
:is(.studio-hero,.interior-page .intro,.scene,.zoom-copy) .forming-heading.words-formed .shining-word.cursor-lit{background-image:linear-gradient(108deg,var(--shine-base) calc(var(--shine-x,50%) - 13%),var(--sweep-color) var(--shine-x,50%),var(--shine-base) calc(var(--shine-x,50%) + 13%))}
.depth-particles{opacity:.28}
@media(max-width:690px){.studio-hero .motion-hero-inner,.zoom-layout{grid-template-columns:minmax(0,1fr)}.studio-hero h1{font-size:clamp(43px,11vw,67px)}.showcase{padding:9px}.zoom-stage{max-height:none}.page-object{right:5%;max-width:28%}}
