.site-header{position:fixed;top:20px;z-index:70;max-width:1280px;background:linear-gradient(135deg,#060b13d9,#03070ec7);backdrop-filter:blur(26px) saturate(125%);-webkit-backdrop-filter:blur(26px) saturate(125%);box-shadow:0 12px 40px #0005,inset 0 1px #8edcff0c;border-color:#c3e6ff1c}
.site-header .desktop-nav{display:flex;align-items:center;gap:5px}
.site-header .nav-link,.nav-services>summary{position:relative;border-radius:30px;padding:12px 16px;color:#bdc6d5;font-size:14px;font-weight:500;line-height:1.5;transition:background .25s,color .25s;white-space:nowrap}
.site-header .nav-link:hover,.nav-services>summary:hover,.nav-services[open]>summary{color:#e2f8ff;background:#55ccff12}
.site-header [aria-current=page],.nav-services>summary.is-current{color:#91e5ff;background:#3cbce510}
.site-header .nav-link[aria-current=page]::after{content:"";position:absolute;left:calc(50% - 10px);right:calc(50% - 10px);bottom:5px;height:2px;border-radius:5px;background:var(--accent);box-shadow:0 0 10px #40d5ff60}
.nav-services{position:static}
.nav-services>summary,.mobile-services>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none}
.site-header summary::-webkit-details-marker{display:none}
.nav-chevron{display:block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .25s}
details[open]>summary>.nav-chevron{transform:translateY(2px) rotate(225deg)}
.mega-menu{position:absolute;top:calc(100% + 12px);left:0;right:0;padding:30px;background:linear-gradient(125deg,#121b2afa,#11131cfa 70%);border:1px solid #b6e9ff24;border-radius:30px;box-shadow:0 35px 100px #0009;backdrop-filter:blur(25px);animation:menu-reveal .22s ease both}
.mega-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:17px}
.mega-columns{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.mega-group>p{font-size:12px;letter-spacing:1.8px;color:#8e9caf;margin:0 12px 12px}
.mega-link{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:16px;border:1px solid transparent;border-radius:18px;position:relative;overflow:hidden;isolation:isolate;transition:border-color .2s,background .2s}
.mega-link:hover,.mega-link:focus-visible{border-color:#74dfff33;background:#40d5ff08}
.mega-link strong{font-size:17px;line-height:1.4;color:#f2f6fb;font-weight:600;display:block}
.mega-link small{display:block;font-size:12px;color:#93a0b6;margin-top:3px}
.mega-link>span:last-child{color:#75dcff;font-size:22px;transition:transform .25s}
.mega-link:hover>span:last-child{transform:translate(3px,-3px)}
.mega-all{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff12;margin:20px 12px 0;padding-top:19px;font-size:14px;color:#b6edff!important}
.site-header .nav-contact{min-height:49px;padding:12px 22px;color:#041b25;background:#b9eeff;box-shadow:inset 0 1px #fff;transition:box-shadow .3s,background .3s}
.site-header .nav-contact:hover{background:#def7ff;box-shadow:0 0 24px #40d5ff28,inset 0 1px #fff}
.mobile-menu{display:none}
.nav-open{overflow:hidden}
@keyframes menu-reveal{from{opacity:0;transform:translateY(-7px);filter:blur(4px)}to{opacity:1;transform:none;filter:none}}
.service-detail-link{display:flex;align-items:center;gap:40px;width:fit-content;margin-top:28px;font-size:14px;color:var(--accent);border-bottom:1px solid #40d5ff38;padding-bottom:7px}
.content-panel .service-detail-link{color:#104858;border-color:#10485838}
.portfolio-note a{color:#b4e7f5;margin-left:8px}
.inner-page{background:radial-gradient(ellipse 800px 600px at 85% 100px,#08192c80,transparent),var(--bg)}
.page-hero.section{padding-top:180px;padding-bottom:75px;position:relative}
.breadcrumbs{display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:12px;color:#77879d;margin-bottom:45px}
.breadcrumbs a{color:#a9b6c9}
.breadcrumbs a:hover{color:var(--accent)}
.breadcrumbs [aria-current=page]{color:#d9e7f7}
.page-hero .eyebrow{color:#9cdff3;font-size:12px;letter-spacing:1.8px}
.page-hero h1{font-size:clamp(48px,6.7vw,99px);font-weight:600;line-height:1.08;letter-spacing:-.065em;margin:0;max-width:1100px;text-wrap:balance}
.page-hero h1>span{color:#81cde9;background:linear-gradient(110deg,#c6ecfa,#64cef2 55%,#5d91de);background-clip:text;-webkit-text-fill-color:transparent}
.page-lede{font-size:21px;line-height:1.75;color:#a7b4c6;max-width:760px;margin:30px 0 0}
.inner-page .section{max-width:1320px}
.inner-page h2{font-size:clamp(32px,3.7vw,53px);line-height:1.14;letter-spacing:-.05em}
.inner-page h3{letter-spacing:-.6px}
.services-catalog{padding-top:35px}
.catalog-heading{margin-bottom:30px}
.catalog-heading .eyebrow{font-size:12px;color:#85c7dc}
.catalog-heading.secondary{margin-top:90px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.glow-card,.mega-link{position:relative;overflow:hidden;isolation:isolate}
.glow-card::before,.mega-link::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(320px circle at var(--hover-x,50%) var(--hover-y,50%),#3aa4d51e,transparent 75%);opacity:0;transition:opacity .3s}
.glow-card:hover::before,.mega-link:hover::after,.glow-card:focus-visible::before{opacity:1}
.service-card{padding:30px;border:1px solid #abc8ff17;border-radius:30px;background:linear-gradient(145deg,#151d2b,#10131a 60%);display:flex;flex-direction:column;min-height:400px;transition:transform .3s,border-color .3s,box-shadow .3s}
.service-card:hover{transform:translateY(-5px);border-color:#76dbff55;box-shadow:0 22px 60px #0004}
.service-card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:48px;color:#8494ab;font-size:12px}
.service-card-meta>span:last-child{font-size:25px;color:#a6e6ff;transition:transform .3s}
.service-card:hover .service-card-meta>span:last-child{transform:translate(4px,-4px)}
.service-card>.eyebrow{font-size:11px;letter-spacing:1.4px;color:#86b9cc;margin-bottom:17px}
.service-card h2{font-size:30px;line-height:1.2;margin:0 0 20px;letter-spacing:-1.2px}
.service-card>p:not(.eyebrow){font-size:16px;line-height:1.7;color:#9facbf;margin:0 0 35px}
.service-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;color:#aee6f8;margin-top:auto;border-top:1px solid #ffffff12;padding-top:20px}
.editorial-section{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:65px;padding-bottom:65px;border-top:1px solid #ffffff0e}
.editorial-section h2{max-width:470px}
.editorial-copy p{font-size:17px;line-height:1.85;color:#a3b0c2;margin:0 0 22px}
.section-label{margin-bottom:35px}
.scope-section{padding-top:45px;padding-bottom:50px}
.scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.scope-card{padding:32px;border:1px solid #8fbbff15;border-radius:28px;background:#111620}
.scope-number{display:block;font-size:12px;color:#71b7d0;letter-spacing:1px;margin-bottom:35px}
.scope-card h3{font-size:24px;line-height:1.3;font-weight:500;margin:0 0 18px}
.scope-card p{font-size:16px;line-height:1.75;color:#9eacbf;margin:0;max-width:500px}
.process-section{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:75px}
.process-intro>p:not(.eyebrow){font-size:17px;line-height:1.85;color:#a4b0c1;margin:25px 0;max-width:490px}
.text-link{display:inline-flex;align-items:center;gap:25px;font-size:14px;border-bottom:1px solid #83ddff45;padding:7px 0;color:#9cdff4}
.text-link:hover{color:#e2f7ff;border-color:#e2f7ff}
.process-list{list-style:none;padding:0;margin:0}
.process-list>li{display:flex;gap:25px;padding:30px 0;border-top:1px solid #ffffff19}
.process-list>li:first-child{padding-top:0;border:0}
.process-list>li>span{font-size:12px;color:#71bdd8;padding-top:6px}
.process-list h3{font-size:24px;font-weight:500;line-height:1.3;margin:0 0 15px}
.process-list p{font-size:16px;color:#9dacbf;line-height:1.8;margin:0}
.related-section{padding-top:35px}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:35px}
.related-grid .service-card{min-height:330px}
.related-grid .service-card-meta{margin-bottom:25px}
.page-cta{border-radius:38px;background:radial-gradient(ellipse at 90% 90%,#103e5980,transparent 65%),#101823;border:1px solid #9edfff20;text-align:center;margin:25px auto 100px!important;max-width:calc(1320px - 100px)!important;padding:65px 40px!important}
.page-cta .eyebrow{font-size:12px}
.page-cta h2{max-width:850px;margin:0 auto 30px;font-size:clamp(34px,4.7vw,66px)}
.page-cta .pill{min-height:54px}
.portfolio-section{padding-top:30px}
.portfolio-status{color:#9fa9b8;letter-spacing:1px;font-size:12px;line-height:1.8;max-width:720px;margin:0 0 30px}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.portfolio-grid>.work-card{width:100%;min-width:0;flex:none}
.portfolio-grid .card-image{height:340px;border-radius:28px}
.portfolio-grid .card-type{font-size:54px;left:25px}
.portfolio-grid .card-two .card-type{font-size:44px}
.portfolio-grid .preview-tag{font-size:9px;left:25px;top:25px;max-width:170px}
.portfolio-grid .card-caption h3{font-size:23px}
.portfolio-grid .card-caption p{font-size:12px}
.portfolio-context{display:grid;grid-template-columns:1fr 1fr;gap:70px;border-top:1px solid #ffffff16;margin-top:80px;padding-top:45px}
.portfolio-context p{color:#a2b0c2;font-size:17px;line-height:1.85;margin:0}
.agency-story{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:80px;padding-top:45px}
.agency-story p:not(.eyebrow){font-size:17px;line-height:1.85;color:#a5b2c4;margin:25px 0}
.agency-symbol{display:grid;place-items:center;min-height:400px;background:radial-gradient(ellipse,#0b35504a,transparent 70%);gap:30px}
.agency-symbol img{width:240px;height:auto;filter:drop-shadow(0 0 60px #40d5ff15)}
.agency-symbol span{font-size:11px;letter-spacing:2px;color:#7799ac}
.agency-method{padding-top:45px}
.method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:40px 0 30px}
.contact-grid{padding-top:25px;display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contact-channel{padding:40px;border-radius:30px;border:1px solid #99caff24;background:#111927;min-height:270px;transition:border-color .25s,transform .25s}
.contact-channel:hover{border-color:#74dbff77;transform:translateY(-3px)}
.contact-channel .eyebrow{display:block;font-size:12px;color:#92c6d8}
.contact-channel h2{font-size:clamp(25px,3vw,40px);line-height:1.3;letter-spacing:-1.1px;overflow-wrap:anywhere}
.contact-channel p{font-size:16px;color:#a1b1c5;margin-top:20px}
.channel-arrow{display:block;font-size:28px;color:#8fe0fb;margin-top:25px}
.location-channel{grid-column:1/-1;background:radial-gradient(ellipse at 90% 80%,#0c3b504a,transparent 65%),#11151e}
.location-channel address{font-size:18px;font-style:normal;color:#b9c6d6;line-height:1.8;margin-top:27px}
.location-link{display:flex;align-items:center;gap:25px;color:#9cddf3;font-size:14px;margin-top:25px}
.contact-notes{padding-top:25px;padding-bottom:100px}
.contact-notes>p:not(.eyebrow){font-size:18px;color:#9eafc4;line-height:1.8;max-width:700px;margin:27px 0}
.error-actions{display:flex;gap:20px;padding-top:0;padding-bottom:100px}
.site-footer{max-width:1340px;padding:60px 50px 110px;margin:auto;border-top:1px solid #ffffff12}
.footer-top{display:grid;grid-template-columns:1.15fr .65fr 1.4fr 1fr;gap:45px}
.footer-top nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footer-top nav>p,.footer-contact>p{font-size:11px;letter-spacing:1.5px;color:#879bb2;margin:0 0 15px}
.footer-top nav>a,.footer-contact>a{font-size:14px;color:#b0bdcd;line-height:1.6}
.footer-top a:hover{color:#b1edff}
.footer-contact>span{font-size:13px;color:#8596ad;margin-top:8px}
.footer-brand>p{font-size:14px;color:#8496ae;line-height:1.8;margin-top:25px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:65px;padding-top:25px;border-top:1px solid #ffffff0d}
.footer-bottom>span,.footer-bottom>a{font-size:12px;color:#8f9bae}
.footer-bottom .motion-toggle{font-size:12px}
.paused .service-card:hover,.paused .contact-channel:hover{transform:none}
@media(max-width:1100px){.site-header{width:calc(100% - 50px)}.site-header .nav-link,.nav-services>summary{padding:11px 12px}.site-header .nav-contact{padding:11px 17px;gap:15px}.site-header .brand img{width:150px}.service-grid{gap:16px}.service-card{padding:25px}.service-card h2{font-size:26px}.editorial-section,.process-section{gap:45px}.portfolio-grid{grid-template-columns:1fr 1fr}.portfolio-grid>.work-card:last-child{grid-column:1/-1;max-width:calc(50% - 12px)}.method-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:1fr 1fr;gap:45px}.page-cta{margin-left:50px!important;margin-right:50px!important}}
@media(max-width:850px){.site-header{height:68px;top:16px;left:16px;transform:none;width:calc(100% - 32px);padding:0 22px}.site-header .desktop-nav,.site-header .nav-contact{display:none}.mobile-menu{display:block}.mobile-menu>summary{display:flex;align-items:center;gap:12px;list-style:none;cursor:pointer;font-size:14px;color:#d9e9f7;padding:14px 0 14px 15px}.mobile-menu>summary>i{width:20px;height:10px;border-top:1px solid #a9e7ff;border-bottom:1px solid #a9e7ff;position:relative;transition:transform .25s}.mobile-menu[open]>summary>i{transform:rotate(-45deg);height:0;border-bottom:none}.mobile-menu[open]>summary>i::before{content:"";position:absolute;left:0;right:0;top:-1px;height:1px;background:#a9e7ff;transform:rotate(90deg)}.mobile-drawer{position:absolute;top:calc(100% + 10px);left:0;right:0;padding:25px;max-height:calc(100svh - 118px);overflow-y:auto;overscroll-behavior:contain;border:1px solid #92d3ff28;border-radius:25px;background:linear-gradient(145deg,#142033fc,#10131cfc);box-shadow:0 35px 90px #000c;backdrop-filter:blur(25px);animation:menu-reveal .2s both}.site-header .mobile-drawer nav{display:flex;flex-direction:column;gap:0}.mobile-main-link,.mobile-services>summary{font-size:23px!important;letter-spacing:-.6px;line-height:1.35;color:#e3ecf6!important;padding:15px 7px;border-bottom:1px solid #ffffff0d}.mobile-main-link[aria-current=page]{color:#8edfff!important;background:transparent!important}.mobile-services>div{padding:8px 0 17px}.mobile-service-link{display:block;font-size:14px!important;color:#adc2d6!important;padding:10px 15px;border-radius:12px}.mobile-service-link:hover,.mobile-service-link[aria-current=page]{color:#a4eaff!important;background:#40d5ff0c}.mobile-email{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:14px;color:#a3dff4;margin-top:25px;padding:10px 7px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:30px}.service-card-meta{margin-bottom:30px}.service-card h2{font-size:32px}.service-card>p:not(.eyebrow){max-width:600px}.editorial-section,.process-section,.agency-story{grid-template-columns:1fr;gap:30px}.agency-symbol{min-height:300px}.agency-symbol img{width:200px}.footer-top{gap:40px 30px}}
@media(max-width:700px){.home-page .hero{padding-top:145px}.home-page .hero .eyebrow{font-size:9px;letter-spacing:1px;max-width:300px;margin-left:auto;margin-right:auto}.home-page .hero-description{font-size:15px}.page-hero.section{padding-top:125px;padding-bottom:55px}.breadcrumbs{font-size:12px;gap:8px;margin-bottom:35px;line-height:1.7}.page-hero .eyebrow{font-size:11px;letter-spacing:1.4px;margin-bottom:23px}.page-hero h1{font-size:clamp(40px,11vw,62px);line-height:1.14;letter-spacing:-.055em;overflow-wrap:break-word}.page-lede{font-size:17px;line-height:1.8;margin-top:25px}.inner-page h2{font-size:34px;line-height:1.18}.services-catalog{padding-top:10px}.catalog-heading .eyebrow{font-size:10px}.catalog-heading.secondary{margin-top:60px}.service-card{padding:27px;border-radius:26px}.service-card h2{font-size:30px}.service-card>.eyebrow{font-size:10px}.service-card-meta{margin-bottom:30px}.service-card>p:not(.eyebrow){font-size:16px}.editorial-section{padding-top:40px;padding-bottom:35px;gap:25px}.editorial-copy p{font-size:16px;line-height:1.85}.scope-section{padding-top:30px;padding-bottom:30px}.scope-grid{grid-template-columns:1fr;gap:16px}.scope-card{padding:28px;border-radius:25px}.scope-number{margin-bottom:25px}.scope-card h3{font-size:23px}.process-section{padding-top:40px;padding-bottom:45px;gap:40px}.process-intro>p:not(.eyebrow){font-size:16px}.process-list>li{gap:20px;padding:25px 0}.process-list h3{font-size:22px}.related-section{padding-top:30px;padding-bottom:55px}.related-grid{grid-template-columns:1fr;gap:17px}.related-grid .service-card{min-height:0}.page-cta{margin:0 16px 65px!important;padding:45px 25px!important;border-radius:28px}.page-cta .eyebrow{font-size:10px;letter-spacing:1px}.page-cta h2{font-size:36px;line-height:1.15}.page-cta .pill{font-size:14px;gap:18px;max-width:100%;text-align:left}.portfolio-grid{grid-template-columns:1fr;gap:35px}.portfolio-grid>.work-card:last-child{grid-column:auto;max-width:none}.portfolio-grid .card-image{height:350px}.portfolio-grid .card-type{font-size:62px}.portfolio-grid .card-two .card-type{font-size:49px}.portfolio-context{grid-template-columns:1fr;gap:25px;margin-top:60px;padding-top:30px}.portfolio-context p{font-size:16px}.portfolio-status{font-size:10px;letter-spacing:.6px}.agency-story{padding-top:15px}.agency-story p:not(.eyebrow){font-size:16px}.agency-symbol span{font-size:9px;letter-spacing:1px}.agency-method{padding-top:20px}.method-grid{grid-template-columns:1fr;gap:16px;margin-top:30px}.contact-grid{grid-template-columns:1fr;gap:18px;padding-top:10px}.contact-channel{padding:28px;min-height:0;border-radius:26px}.contact-channel h2{font-size:27px}.contact-channel .eyebrow{font-size:11px}.contact-channel p{font-size:15px}.location-channel{grid-column:auto}.location-channel h2{font-size:30px}.location-channel address{font-size:16px}.contact-notes{padding-top:0;padding-bottom:70px}.contact-notes>p:not(.eyebrow){font-size:16px}.site-footer{padding:40px 24px 90px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-brand{grid-column:1/-1}.footer-brand .brand img{width:155px}.footer-brand p{margin-top:18px}.footer-contact{grid-column:1/-1}.footer-top nav>a,.footer-contact>a{font-size:13px}.footer-top nav>p,.footer-contact>p{font-size:10px;letter-spacing:1px}.footer-bottom{flex-wrap:wrap;gap:15px;margin-top:40px;padding-top:25px}.footer-bottom>span{flex-basis:100%}.footer-bottom>a{margin-left:auto}.service-detail-link{font-size:14px}.error-actions{flex-direction:column;align-items:flex-start;padding-top:0}.text-link{font-size:14px;gap:15px}}
@media(prefers-reduced-motion:reduce){.mega-menu,.mobile-drawer{animation:none}.service-card:hover,.contact-channel:hover{transform:none}.glow-card::before,.mega-link::after{display:none}}

.work-card{display:block;text-decoration:none}
/* Pearl and ice sections give the dark scenes room to breathe. */
.light-surface{background:linear-gradient(135deg,#f1f5f6,#e2eef3);color:#102634;border-radius:40px}
.products-section.section{padding:70px 55px;margin:35px auto 100px;max-width:1220px}
.products-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:20px 65px;margin-bottom:45px}
.products-intro>.eyebrow{grid-column:1/-1;color:#406e81;margin:0}
.products-intro h2{font-size:clamp(38px,4.5vw,66px);line-height:1.12;letter-spacing:-.055em;margin:0}
.products-intro h2>span{color:#6c8f9e}
.products-intro>p:last-child{font-size:17px;line-height:1.85;color:#54707e;align-self:end;margin:0}
.product-feature{display:grid;grid-template-columns:1fr 1fr;background:#fff9;border:1px solid #fff;border-radius:30px;overflow:hidden;min-height:365px}
.product-feature-copy{padding:40px;position:relative;z-index:2}
.product-status{display:inline-flex;align-items:center;gap:8px;font-size:10px;letter-spacing:1.1px;line-height:1.5;color:#507b8c}
.product-status::before{content:"";width:5px;height:5px;border-radius:50%;background:#5c9eb9}
.product-feature h3{font-size:57px;letter-spacing:-3px;font-weight:700;line-height:1.1;margin:27px 0 20px}
.product-feature h3>span{color:#80a1ae}
.product-feature-copy>p{color:#52717f;font-size:16px;line-height:1.8;max-width:450px;margin:0 0 25px}
.product-button{background:#153748;color:#f0faff;font-size:14px;min-height:50px}
.product-button:hover{background:#24556b}
.product-word-art{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 75% 30%,#edfbff,#bce1ef 80%);min-height:320px}
.product-word-art>strong{font-size:110px;letter-spacing:-8px;font-weight:800;color:#19485e;z-index:1}
.product-word-art>strong>span{font-size:54px;letter-spacing:-4px}
.product-word-art>small{font-size:10px;letter-spacing:3px;margin-top:10px;color:#4c7a8c;z-index:1}
.product-orbit{position:absolute;width:300px;height:300px;border:1px solid #fff9;border-radius:50%;transform:rotate(-25deg) scaleY(.52);box-shadow:0 0 0 35px #ffffff20,0 0 0 70px #ffffff10}
.products-upcoming{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px}
.upcoming-product{padding:32px;background:#ffffff5e;border:1px solid #fff9;border-radius:28px}
.upcoming-top{display:flex;align-items:center;justify-content:space-between;gap:15px}
.upcoming-top>span:last-child{font-size:9px;letter-spacing:1px;color:#7b97a4}
.upcoming-product h3{font-size:34px;font-weight:600;letter-spacing:-1.3px;margin:35px 0 16px}
.upcoming-product>p{font-size:15px;line-height:1.8;color:#5b7683;margin:0;max-width:420px}
.products-more{color:#215d78;border-color:#76a5b9;margin-top:32px}
.products-more:hover{color:#071f31;border-color:#071f31}
.products-page .products-section{margin-top:0}
.products-philosophy{display:grid;grid-template-columns:1fr 1fr;gap:22px 70px;padding-top:0}
.products-philosophy>.eyebrow{grid-column:1/-1}
.products-philosophy>p:not(.eyebrow){font-size:18px;line-height:1.85;color:#9fb6c7;margin:0}
.products-philosophy>.text-link{grid-column:2}
.home-page .social-section>.section-intro{background:linear-gradient(130deg,#eff4f5,#dbeaf0);color:#102b3b;border-radius:38px;padding:60px}
.home-page .social-section>.section-intro .eyebrow{color:#497587}
.home-page .social-section>.section-intro .soft{color:#075369;background-image:linear-gradient(105deg,#075369 0%,#086c86 52%,#0b5bad 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}
.home-page .social-section>.section-intro>p:last-child{color:#57717f}
.page-cta.section{background:radial-gradient(ellipse at 85% 90%,#b4e1f599,transparent 70%),#eaf0f2;color:#102b3c;border:1px solid #fff9}
.page-cta .eyebrow{color:#557c8f}
.page-cta .primary{background:#15374a;color:#eefaff}
.page-cta .primary:hover{background:#28566d}
.service-page .scope-section,.agency-page .agency-story,.case-page .case-results,.contact-page .contact-notes{background:linear-gradient(135deg,#f0f4f5,#e0edf2);color:#173344;border-radius:38px;margin:35px auto 65px;max-width:1220px;padding:55px}
.service-page .scope-section .eyebrow,.agency-page .agency-story .eyebrow,.case-page .case-results .eyebrow,.contact-page .contact-notes .eyebrow{color:#477184}
.scope-section .scope-card{background:#ffffffa8;border-color:#fff}
.scope-section .scope-card p{color:#577180}
.scope-section .scope-number{color:#538599}
.agency-page .agency-story .soft,.case-page .case-results .soft,.contact-page .contact-notes .soft{color:#718d9d}
.agency-page .agency-story p:not(.eyebrow),.case-page .case-results>div>p:not(.eyebrow),.contact-page .contact-notes>p:not(.eyebrow){color:#54707f}
.agency-page .agency-story .text-link,.contact-page .contact-notes .text-link{color:#265d78;border-color:#7d9eac}
.case-page .case-pending{color:#507b90}
.agency-page .agency-symbol{background:radial-gradient(ellipse,#73c4e044,transparent 70%)}
.agency-page .agency-symbol span{color:#4b8195}
.portfolio-context{background:#e7eff3;color:#16384b;border:0;border-radius:30px;padding:40px}
.portfolio-context p{color:#54707f}
@media(min-width:851px) and (max-width:1050px){.site-header .desktop-nav{gap:0}.site-header .nav-link,.nav-services>summary{padding:10px}.site-header .nav-contact{padding:10px 15px;font-size:12px;gap:10px}.site-header .brand img{width:130px}}
@media(max-width:1300px) and (min-width:701px){.products-section.section,.service-page .scope-section,.agency-page .agency-story,.case-page .case-results,.contact-page .contact-notes{margin-left:40px;margin-right:40px}.product-feature-copy{padding:30px}.product-word-art>strong{font-size:85px}.product-word-art>strong>span{font-size:42px}}
@media(max-width:850px){.products-intro{grid-template-columns:1fr;gap:20px}.products-intro>p:last-child{max-width:650px}.product-feature-copy{padding:30px}.product-feature h3{font-size:47px}.products-philosophy{grid-template-columns:1fr;gap:20px}.products-philosophy>.text-link{grid-column:1}.products-philosophy>p:not(.eyebrow){font-size:16px}}
@media(max-width:700px){.products-section.section{margin:15px 16px 65px;padding:38px 22px;border-radius:28px}.products-intro{margin-bottom:28px}.products-intro h2{font-size:37px}.products-intro>p:last-child{font-size:16px;line-height:1.8}.product-feature{grid-template-columns:1fr;border-radius:24px}.product-feature-copy{padding:27px 23px}.product-feature h3{font-size:48px}.product-feature-copy>p{font-size:15px}.product-word-art{min-height:235px}.product-word-art>strong{font-size:88px}.product-word-art>strong>span{font-size:48px}.products-upcoming{grid-template-columns:1fr;gap:15px;margin-top:15px}.upcoming-product{padding:26px 23px;border-radius:24px}.upcoming-product h3{font-size:30px;margin-top:28px}.product-status{font-size:9px;letter-spacing:.8px}.upcoming-product>p{font-size:14px}.products-more{font-size:13px}.home-page .social-section>.section-intro{padding:35px 25px;border-radius:28px}.home-page .social-section>.section-intro h2{font-size:34px}.home-page .social-section>.section-intro>p:last-child{font-size:15px}.service-page .scope-section,.agency-page .agency-story,.case-page .case-results,.contact-page .contact-notes{margin:20px 16px 45px;padding:35px 23px;border-radius:28px}.portfolio-context{padding:30px 25px;border-radius:27px}.service-page .scope-section h2,.case-page .case-results h2,.contact-page .contact-notes h2{font-size:32px}.scope-section .scope-card{padding:25px}.agency-page .agency-story h2{font-size:32px}.products-philosophy{padding-top:0}}
/* The hidden encounter shares the hero's torch; only the local portal glows. */
.hero-light{width:360px;height:360px;background:radial-gradient(circle,#aeefff22 0%,#73d9ff18 15%,#2779b511 38%,transparent 66%)}
.hero-light::before{inset:35px;filter:blur(7px);opacity:.55}
.hero-light::after{inset:65px;filter:blur(10px);opacity:.35}
.hero.torch-searching .hero-light{opacity:1;transform:translate3d(calc(var(--search-x) - 50%),calc(var(--search-y) - 50%),0)}
.ufo-visitor{position:absolute;left:0;top:0;z-index:-1;pointer-events:none;opacity:.65;will-change:transform;isolation:isolate}
.ufo-canvas{display:block;width:100%;height:100%;pointer-events:none}
.ufo-portal{position:absolute;width:145px;height:145px;z-index:-1;pointer-events:none;border:2px solid #79ddffa6;border-radius:50%;background:radial-gradient(ellipse,#03101cec 25%,#14679566 55%,#8ae6ff55 61%,transparent 69%);box-shadow:0 0 30px #2bb9ff55,inset 0 0 24px #5acfff66;will-change:transform,opacity}
.ufo-portal::after{content:"";position:absolute;inset:12px -5px;border:1px solid #8ae8ff55;border-radius:50%;transform:rotate(35deg) scaleY(.4)}
.paused .ufo-visitor,.paused .ufo-portal{visibility:hidden}
@media(hover:none),(pointer:coarse){.hero.torch-searching .hero-light{display:block;width:260px;height:260px}}
@media(prefers-reduced-motion:reduce){.ufo-visitor,.ufo-portal,.hero.torch-searching .hero-light{display:none}}
.case-notice{display:flex;align-items:center;gap:35px;padding-top:0;padding-bottom:35px}
.case-notice>span{font-size:10px;letter-spacing:1.3px;color:#81bdd0;white-space:nowrap;border:1px solid #71c5df28;border-radius:30px;padding:10px 15px}
.case-notice>p{font-size:13px;line-height:1.75;color:#8699ac;max-width:670px;margin:0}
.case-cover-wrap{padding-top:0;padding-bottom:35px}
.case-cover{position:relative;min-height:570px;overflow:hidden;border-radius:38px;background:#102a3b;isolation:isolate}
.case-cover::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 20%,#7ce4ff35,transparent 65%);z-index:-1}
.case-cover.case-social{background:#b6eeff;color:#093449}
.case-cover.case-identity{background:#172238}
.case-visual-label{position:absolute;left:40px;top:35px;font-size:11px;letter-spacing:1.8px;z-index:2}
.case-cover-type{position:absolute;top:50%;left:5%;transform:translateY(-50%);font-weight:700;font-size:clamp(55px,8vw,120px);line-height:.98;letter-spacing:-.07em;z-index:2;max-width:80%}
.case-cover-type>span{display:block}
.case-cover-type>span:last-child{color:#8be7ff}
.case-social .case-cover-type>span:last-child{color:#327a9a}
.case-cover>img{position:absolute;right:-10%;top:5%;width:75%;height:90%;object-fit:contain;mix-blend-mode:screen;opacity:.62;transform:rotate(-15deg)}
.case-social>img{mix-blend-mode:multiply;opacity:.28;transform:rotate(20deg)}
.case-cover-index{position:absolute;bottom:35px;left:40px;letter-spacing:2px;font-size:12px}
.case-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-top:5px;padding-bottom:65px}
.case-facts span{font-size:10px;color:#7894aa;letter-spacing:1.5px}
.case-facts p{font-size:15px;color:#c3d2df;margin:12px 0 0}
.case-gallery-section{padding-top:30px}
.case-gallery-intro{font-size:17px;color:#95a9bd;line-height:1.8;max-width:690px;margin:25px 0 35px}
.case-gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:30px}
.case-gallery-item{margin:0;min-width:0}
.case-tile-1{grid-column:1/-1}
.case-tile-art{height:440px;overflow:hidden;border-radius:30px;position:relative;background:radial-gradient(ellipse at 80% 20%,#234b6990,transparent 70%),#101d2b;isolation:isolate;display:grid;place-items:center}
.case-tile-art img{width:75%;height:90%;object-fit:contain;mix-blend-mode:screen;opacity:.65;position:absolute;z-index:-1}
.case-tile-art span{font-size:clamp(35px,6vw,82px);line-height:1;letter-spacing:-.055em;font-weight:700;color:#def8ff;text-align:center;max-width:90%}
.case-tile-1 .case-tile-art{height:510px}
.case-tile-1 .case-tile-art img{right:-6%;transform:rotate(25deg);width:70%}
.case-tile-1 .case-tile-art span{justify-self:start;margin-left:7%;max-width:65%}
.case-tile-2 .case-tile-art{background:#a2eaff}
.case-tile-2 .case-tile-art img{width:32%;height:45%;mix-blend-mode:multiply;opacity:.3;top:10%}
.case-tile-2 .case-tile-art span{color:#0c4053;font-size:clamp(30px,4.5vw,66px);align-self:end;margin-bottom:45px}
.case-tile-3 .case-tile-art{background:#0b101b}
.case-gallery-item figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin:17px 3px 0}
.case-gallery-item figcaption>span{font-size:15px;color:#d6e9f4}
.case-gallery-item figcaption>small{font-size:11px;color:#788fa5;line-height:1.7}
.case-deliverables{display:flex;justify-content:space-between;gap:45px;border-top:1px solid #ffffff14;margin-top:50px;padding-top:30px}
.case-deliverables>span{font-size:11px;letter-spacing:1px;color:#7fa3b9;padding-top:8px}
.case-deliverables ul{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;list-style:none;margin:0;padding:0;max-width:750px}
.case-deliverables li{font-size:13px;color:#b1c9da;border:1px solid #8bcdf222;border-radius:30px;padding:9px 16px}
.case-results{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:35px}
.case-results>div>p:not(.eyebrow){font-size:18px;line-height:1.85;color:#9fb3c7;margin:0 0 25px}
.case-pending{font-size:12px;color:#80b7cd;display:inline-flex;gap:10px;align-items:center}
.case-pending::before{content:"";width:5px;height:5px;border-radius:50%;background:#82c6df}
.case-connections{padding-top:10px}
.case-connections>div{display:flex;flex-wrap:wrap;gap:15px}
.case-connections .pill{font-size:14px}
.case-next{padding-top:0}
.case-next-link{display:block;padding:45px;border:1px solid #8ed8ff26;border-radius:32px;background:radial-gradient(ellipse at 80% 90%,#0d476366,transparent 60%),#101b28;transition:border-color .3s}
.case-next-link:hover{border-color:#8ed8ff77}
.case-next-title{font-size:clamp(32px,4.6vw,64px);letter-spacing:-.055em;display:flex;justify-content:space-between;gap:25px;line-height:1.15}
.case-next-title>span{color:#a3eaff}
.case-next>.text-link{margin-top:25px}
@media(max-width:700px){.case-notice{display:block;padding-bottom:25px}.case-notice>span{display:inline-block;margin-bottom:15px}.case-cover{min-height:390px;border-radius:27px}.case-visual-label{left:25px;top:25px;font-size:9px;letter-spacing:1px}.case-cover-type{font-size:14vw;left:8%;max-width:85%}.case-cover>img{width:110%;right:-40%;top:15%;height:75%}.case-cover-index{bottom:25px;left:25px}.case-facts{grid-template-columns:1fr 1fr;gap:28px;padding-bottom:40px}.case-facts p{font-size:13px}.case-gallery-section{padding-top:0}.case-gallery-intro{font-size:16px}.case-gallery{grid-template-columns:1fr;gap:28px}.case-tile-1{grid-column:auto}.case-tile-art,.case-tile-1 .case-tile-art{height:360px;border-radius:25px}.case-tile-art span{font-size:12vw}.case-tile-1 .case-tile-art span{max-width:75%}.case-tile-1 .case-tile-art img{width:120%;right:-30%}.case-tile-2 .case-tile-art span{font-size:12vw}.case-deliverables{display:block;margin-top:35px}.case-deliverables ul{justify-content:flex-start;margin-top:20px;gap:10px}.case-deliverables li{font-size:12px}.case-results{grid-template-columns:1fr;gap:20px;padding-top:10px}.case-results>div>p:not(.eyebrow){font-size:16px}.case-next-link{padding:30px 25px;border-radius:25px}.case-next-title{font-size:34px}.case-next-link .eyebrow{font-size:10px}.case-connections .pill{font-size:13px}}

/* Light chapters span the viewport; the content keeps the same reading width. */
.home-page .social-section,
.products-section.section,
.service-page .scope-section,
.agency-page .agency-story,
.case-page .case-results,
.contact-page .contact-notes,
.portfolio-context.section,
.page-cta.section{
  width:100%;max-width:none!important;
  margin:0!important;border:0;border-radius:0;
  padding:90px max(40px,calc((100% - 1120px)/2))!important;
  background:linear-gradient(120deg,#f1f5f6,#e1edf2);color:#153345;
}
.home-page .social-section>.section-intro{background:none;border:0;border-radius:0;padding:0;margin-bottom:55px}
.home-page .social-section .strategy-panel,.home-page .social-section .campaign-panel{color:#f4f7fb}
.home-page .social-section .content-panel{border:1px solid #bedce6}
.products-page .products-philosophy{padding-top:100px}
.portfolio-context.section{grid-template-columns:1fr 1fr}
@media(max-width:700px){
  .home-page .social-section,
  .products-section.section,
  .service-page .scope-section,
  .agency-page .agency-story,
  .case-page .case-results,
  .contact-page .contact-notes,
  .portfolio-context.section,
  .page-cta.section{padding:60px 22px!important;border-radius:0}
  .home-page .social-section>.section-intro{padding:0;margin-bottom:32px}
  .products-page .products-philosophy{padding-top:65px}
  .portfolio-context.section{grid-template-columns:1fr}
}

/* Umenù's real launch artwork supplies its logo and product screens. */
.product-umenu{display:block;border-color:#4b19ba1a;background:#fff}
.product-visual{margin:0;background:#4915c0;line-height:0}
.product-visual img{display:block;width:100%;height:auto;aspect-ratio:2560/1124;object-fit:contain}
.product-umenu .product-feature-copy{display:grid;grid-template-columns:1fr auto;column-gap:40px;padding:36px 40px 40px}
.product-umenu .product-status{grid-column:1/-1;color:#603d9f}
.product-umenu .product-status::before{background:#ff4163}
.product-umenu h3{grid-column:1/-1;font-size:40px;letter-spacing:-1.8px;margin:18px 0 20px;color:#31126e}
.product-umenu h3>span{color:#9a7cc1}
.product-umenu .product-feature-copy>p{max-width:650px;margin:0;color:#666171}
.product-umenu .product-button{align-self:center;background:#4915c0;white-space:nowrap}
.product-umenu .product-button:hover{background:#371098}
.product-umenu .product-button:focus-visible{outline-color:#ff4163}
@media(max-width:700px){.product-umenu .product-feature-copy{display:block;padding:28px 24px}.product-umenu h3{font-size:36px;margin:19px 0 18px}.product-umenu .product-button{margin-top:25px}.product-umenu .product-feature-copy>p{font-size:15px}.product-umenu .product-visual img{min-height:0}}

.content-scenes.section{padding-top:35px;padding-bottom:95px}
.scene-heading{display:flex;justify-content:space-between;align-items:center;gap:35px;margin-bottom:35px}
.scene-heading>.eyebrow{color:#85bfd5;font-size:11px;margin:0}
.scene-heading>p:last-child{font-size:28px;line-height:1.2;letter-spacing:-1px;color:#b5ccda;margin:0}
.scene-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:30px;align-items:start}
.scene-photo{margin:0;min-width:0;overflow:hidden;position:relative;border-radius:32px;background:#111c25;isolation:isolate}
.scene-photo img{display:block;width:100%;height:430px;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.scene-photo:first-child img{object-position:85% 50%}
.scene-photo:hover img{transform:scale(1.035)}
.scene-photo::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#04090fc9);pointer-events:none;z-index:0}
.scene-photo figcaption{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;color:#f2f8fb;font-size:18px;letter-spacing:-.5px}
.scene-photo-offset{margin-top:65px}
.scene-photo-offset img{height:410px}
.stock-note{color:#7c90a1;font-size:11px;letter-spacing:.25px;line-height:1.7;margin:20px 0 0}
.agency-photo{margin:0;align-self:center;min-width:0}
.agency-photo img{display:block;width:100%;height:450px;object-fit:cover;border-radius:28px}
.agency-photo figcaption{font-size:11px;color:#668393;line-height:1.7;margin:16px 0 0}
@media(max-width:850px){.scene-grid{gap:20px}.scene-photo img{height:350px}.scene-photo-offset img{height:330px}.agency-photo img{height:400px}.agency-photo{width:100%;max-width:650px}}
@media(max-width:700px){.content-scenes.section{padding-top:35px;padding-bottom:60px}.scene-heading{align-items:flex-start;margin-bottom:25px;gap:20px}.scene-heading>.eyebrow{font-size:9px;max-width:120px;line-height:1.8}.scene-heading>p:last-child{font-size:23px}.scene-grid{grid-template-columns:1fr;gap:18px}.scene-photo{border-radius:25px}.scene-photo img{height:320px}.scene-photo-offset{margin-top:0}.scene-photo-offset img{height:270px}.scene-photo figcaption{left:24px;bottom:25px;font-size:17px}.stock-note{font-size:10px;margin-top:17px}.agency-photo img{height:330px;border-radius:24px}.agency-photo figcaption{font-size:10px}}
@media(prefers-reduced-motion:reduce){.scene-photo:hover img{transform:none}}
.paused .scene-photo:hover img{transform:none}
.agency-photo img{object-position:50% 55%}
.stock-note a,.agency-photo figcaption a{text-decoration:underline;text-underline-offset:3px}

/* The same social identity on every route. */
.footer-top .footer-socials{flex-direction:row;flex-wrap:wrap;gap:8px 16px;margin-top:25px}
.footer-top .footer-socials>a{display:inline-flex;align-items:center;gap:6px;font-size:14px;color:#c1d9e6;padding:7px 0;border-bottom:1px solid #87dfff30}
.footer-socials>a:hover{color:#8be5ff;border-color:#8be5ff}
.footer-socials>a:focus-visible,.contact-socials>a:focus-visible{outline:2px solid #8be5ff;outline-offset:6px;border-radius:3px}
.contact-social-section{padding-top:15px;padding-bottom:85px}
.contact-social-section>.eyebrow{color:#8acde2;font-size:12px}
.contact-socials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:35px}
.contact-socials>a{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px;border:1px solid #a9d9f12e;border-radius:24px;background:#0e1720;color:#e4f2fa;font-size:23px;transition:background .25s,border-color .25s}
.contact-socials>a:hover{background:#132c39;border-color:#89dfff8a}
.contact-socials>a>span:nth-child(2){color:#83ddfa;font-size:28px}

/* Original service imagery, with a readable foreground over full-width covers. */
.service-hero.page-hero.section{max-width:none;min-height:780px;padding:165px max(40px,calc((100% - 1120px)/2)) 105px;isolation:isolate;overflow:hidden;background:#050b13}
.service-hero-media{position:absolute;inset:0;z-index:-2;overflow:hidden}
.service-hero-media>img,.service-hero-media>.ambient-video{display:block;width:100%;height:100%;object-fit:cover;object-position:70% 50%}
.service-hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#040910ed 0%,#040910cc 39%,#04091035 100%),linear-gradient(0deg,#070709,transparent 35%)}
.service-hero h1{max-width:980px;font-size:clamp(46px,6.3vw,92px);text-wrap:balance}
.service-hero .page-lede{max-width:660px;color:#c7d4df}
.service-hero .breadcrumbs{color:#a1b6c5}
.service-hero .breadcrumbs a{color:#d6e3ed}
.service-visual-note{position:absolute;right:max(40px,calc((100% - 1120px)/2));bottom:28px;color:#b6c9d5;font-size:12px;letter-spacing:.4px}
.service-card-media{margin:-30px -30px 25px;overflow:hidden;background:#10232d;aspect-ratio:1.65;flex-shrink:0}
.service-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.service-card:hover .service-card-media img{transform:scale(1.04)}
.service-card .service-card-meta{margin-bottom:22px}
.visual-note{font-size:12px;line-height:1.7;color:#94aaba;margin:20px 0 0}
.agency-photo figcaption{font-size:14px;line-height:1.6}
.agency-photo figcaption>span{display:block;font-size:12px;color:#5d7889;margin-top:5px}
.ambient-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;pointer-events:none;transition:opacity .65s}
.ambient-video.is-playing{opacity:1}
.paused .ambient-video{opacity:0}
@media(max-width:1100px){.service-card-media{margin:-25px -25px 23px}.service-hero.page-hero.section{padding-top:160px;min-height:730px}}
@media(max-width:850px){.service-card-media{margin:-30px -30px 25px}}
@media(max-width:700px){
  .contact-social-section{padding-bottom:60px}
  .contact-socials{grid-template-columns:1fr;gap:12px;margin-top:25px}
  .contact-socials>a{font-size:21px;padding:24px;border-radius:21px}
  .footer-top .footer-socials{gap:8px 18px;margin-top:15px}
  .service-hero.page-hero.section{min-height:760px;padding:130px 24px 85px}
  .service-hero h1{font-size:clamp(42px,10.6vw,66px);line-height:1.09;letter-spacing:-.055em}
  .service-hero .page-lede{font-size:18px;line-height:1.7}
  .service-hero-media>img,.service-hero-media>.ambient-video{object-position:65% 50%}
  .service-hero-media::after{background:linear-gradient(90deg,#040910d9,#0409109c),linear-gradient(0deg,#070709,transparent 60%)}
  .service-visual-note{right:24px;bottom:25px}
  .service-card-media{margin:-27px -27px 23px}
  .visual-note{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.service-card:hover .service-card-media img{transform:none}.ambient-video{display:none}}
.paused .service-card:hover .service-card-media img{transform:none}

.reviews{position:relative;isolation:isolate}
.reviews-heading,.review-grid,.reviews-bottom{position:relative;z-index:1}
.review-sign-word{position:relative;z-index:2}
.review-sign-word{color:#40d5ff;-webkit-text-fill-color:#40d5ff}
.typing-ready{display:inline-block;position:relative;max-width:100%;vertical-align:bottom}
.typewriter-layout{display:block;opacity:0}
.typewriter-ink{position:absolute;inset:0;-webkit-text-fill-color:currentColor}
.typing-caret{color:#40d5ff;-webkit-text-fill-color:#40d5ff;font-weight:400}
.typing-complete .typing-caret{animation:typing-cursor 1s steps(1,end) infinite}
.page-hero h1>span.typing-ready{background:none;-webkit-text-fill-color:currentColor}
@keyframes typing-cursor{0%,45%{opacity:1}46%,100%{opacity:0}}
.paused .typing-caret{animation:none;opacity:1}
@media(prefers-reduced-motion:reduce){.typing-caret{animation:none;opacity:1}}

.connection-word{color:var(--accent);-webkit-text-fill-color:var(--accent)}
.connection-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.connection-gate{display:none}
.connection-stage{position:relative;background:var(--bg)}
.connection-reveal{background:#c8f1fc;color:#123849}
.connection-reveal .expertise{width:100%;min-height:100svh;align-items:center}
.connection-reveal .expertise .eyebrow{color:#477184}
.connection-reveal .expertise-intro>p:last-child,.connection-reveal .expertise-item p{color:#456c7d}
.connection-reveal .connection-word{color:#087696;-webkit-text-fill-color:#087696}
.connection-reveal .expertise-item{border-color:#21495c30}
.connection-reveal .expertise-item i{color:#087696}
.connection-ready{height:calc(var(--connection-height,100svh) + var(--connection-travel,110svh))}
.connection-ready .connection-stage{position:sticky;top:0;height:var(--connection-height,100svh);overflow:hidden;isolation:isolate}
.connection-ready .connection-reveal{position:absolute;inset:0;clip-path:url(#connection-wifi-clip)}
.connection-ready .connection-gate{display:block;position:absolute;left:24px;right:24px;top:17%;z-index:1;text-align:center;pointer-events:none;opacity:var(--connection-intro,1)}
.connection-gate-title{font-size:clamp(42px,5.5vw,88px);line-height:1.12;letter-spacing:-.065em;font-weight:600;margin:0}
.connection-gate .eyebrow{font-size:12px;color:#90afc3;margin-bottom:24px}
.connection-open .connection-reveal{clip-path:none}
.connection-open .connection-gate{opacity:0}
.paused .connection-sequence{height:auto!important}
.paused .connection-stage{position:relative;height:auto!important;overflow:visible}
.paused .connection-reveal{position:relative;clip-path:none}
.paused .connection-gate{display:none}
@media(max-width:700px){.connection-ready .connection-gate{top:18%;left:22px;right:22px}.connection-gate-title{font-size:10.5vw}.connection-gate .eyebrow{font-size:11px}.connection-reveal .expertise{padding-top:65px;padding-bottom:65px}.connection-reveal .expertise-list{padding-top:30px}}
@media(prefers-reduced-motion:reduce){.connection-sequence{height:auto!important}.connection-stage{position:relative!important;height:auto!important;overflow:visible!important}.connection-reveal{position:relative!important;clip-path:none!important}.connection-gate{display:none!important}}

/* A solid signal before the content appears, with light outside its edges. */
.connection-glow{display:none;position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:2;opacity:var(--connection-glow,1)}
.connection-ready .connection-glow{display:block}
.connection-ready .connection-glow[hidden]{display:none}
.connection-glow{filter:drop-shadow(0 0 3px #e6faff) drop-shadow(0 0 11px #20cfffcc)}
.connection-glow-shape{fill:#55d9ff;stroke:#e0faff;stroke-width:1.25;vector-effect:non-scaling-stroke;paint-order:stroke fill}
.connection-pulsing .connection-glow{animation:wifi-breathe 2.3s ease-in-out infinite}
.connection-ready .connection-reveal .expertise{opacity:var(--connection-content,0)}
.connection-open .connection-reveal .expertise{opacity:1}
.connection-open .connection-glow{display:none}
@keyframes wifi-breathe{0%,100%{filter:drop-shadow(0 0 2px #e6faff) drop-shadow(0 0 8px #20cfffaa)}50%{filter:brightness(1.3) drop-shadow(0 0 4px #f0fcff) drop-shadow(0 0 15px #20cfff) drop-shadow(0 0 26px #16c5ff99)}}
.paused .connection-glow{display:none}
.paused .connection-reveal .expertise{opacity:1}
@media(prefers-reduced-motion:reduce){.connection-glow{display:none!important}.connection-reveal .expertise{opacity:1!important}}

/* Covers face into a true 3D cylinder, with a level center line. */
.motion-ready .hex-sequence.has-reels{height:420svh}
.motion-ready .has-reels .hex-message{position:absolute;z-index:5;top:12%;left:6%;right:6%;width:auto;max-width:none;margin:0}
.motion-ready .has-reels .hex-message h2{font-size:clamp(40px,5.5vw,86px);line-height:1.03}
.motion-ready .has-reels .hex-message>.eyebrow{margin-bottom:18px}
.motion-ready .has-reels .hex-message>p:not(.eyebrow){opacity:1;color:#184c61;font-size:16px;line-height:1.55;max-width:760px;margin:18px auto 0}
.motion-ready .has-reels .hex-signature{opacity:var(--gallery-copy,1)}
.motion-ready .has-reels .social-flight{perspective:var(--gallery-perspective,1000px);perspective-origin:50% 66%;transform-style:preserve-3d;pointer-events:none}
/* This overlay is a flat sibling of the 3D scene: no card can pierce it. */
.motion-ready .has-reels .social-flight::after{content:none}
.motion-ready .has-reels .hex-stage::after{content:"";position:absolute;inset:0;z-index:4;pointer-events:none;opacity:var(--gallery-edge,0);background:linear-gradient(90deg,var(--accent) 0%,var(--accent) 3%,rgba(64,213,255,.96) 5%,rgba(64,213,255,.6) 9%,rgba(64,213,255,0) 16%,rgba(64,213,255,0) 84%,rgba(64,213,255,.6) 91%,rgba(64,213,255,.96) 95%,var(--accent) 97%,var(--accent) 100%)}
.motion-ready .has-reels .social-reel{left:50%;top:66%;width:var(--gallery-card-width,240px);aspect-ratio:4/5;opacity:var(--reel-opacity,0);transform:translate(-50%,-50%) translate3d(var(--reel-x,0px),var(--reel-y,0px),var(--reel-z,0px)) rotateY(var(--reel-turn,0deg));pointer-events:auto;backface-visibility:hidden;border-radius:24px;box-shadow:0 22px 42px #07354435;transition:filter .3s}
.motion-ready .has-reels .social-reel:hover{filter:brightness(1.08)}
.social-reel>img{object-position:50% 50%}
.reel-source-link{position:absolute;inset:0;z-index:4;border-radius:inherit}
.reel-source-link:focus-visible{outline-offset:-5px}
.social-reel:has(.reel-source-link:focus-visible){filter:brightness(1.12)}
.motion-ready .has-reels .social-reel figcaption{padding:19px}
.motion-ready .has-reels .social-reel figcaption strong{font-size:16px}
.motion-ready .has-reels .social-reel figcaption span{font-size:12px}
@media(max-width:700px){.motion-ready .has-reels .hex-message{top:14%;left:22px;right:22px}.motion-ready .has-reels .hex-message h2{font-size:12vw}.motion-ready .has-reels .hex-message>p:not(.eyebrow){font-size:14px;line-height:1.5;margin-top:16px}.motion-ready .has-reels .hex-stage::after{background:linear-gradient(90deg,var(--accent) 0%,var(--accent) 2%,rgba(64,213,255,0) 14%,rgba(64,213,255,0) 86%,var(--accent) 98%,var(--accent) 100%)}.motion-ready .has-reels .social-reel{top:65%;border-radius:21px}.motion-ready .has-reels .social-reel figcaption{padding:15px}.motion-ready .has-reels .social-reel figcaption strong{font-size:14px}}
@media(max-height:600px) and (min-width:701px){.motion-ready .has-reels .hex-message{top:19%}.motion-ready .has-reels .hex-message h2{font-size:38px}.motion-ready .has-reels .hex-message>.eyebrow{font-size:10px;margin-bottom:10px}.motion-ready .has-reels .hex-message>p:not(.eyebrow){font-size:15px;line-height:1.5;max-width:520px;margin-top:14px}.motion-ready .has-reels .social-reel{top:70%}.motion-ready .has-reels .social-reel figcaption{padding:12px}.motion-ready .has-reels .social-reel figcaption strong{font-size:13px}.motion-ready .has-reels .social-reel figcaption span{display:none}}
.paused .hex-sequence.has-reels{height:auto}
.paused .has-reels .hex-message{position:relative;top:auto;left:auto;right:auto;order:-1;margin-bottom:40px}
.paused .has-reels .hex-message>p:not(.eyebrow){opacity:1}
.paused .has-reels .hex-signature{opacity:1}
.paused .has-reels .social-flight{perspective:none;transform-style:flat}
.paused .has-reels .social-reel{left:auto;top:auto;width:auto;opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.motion-ready .hex-sequence.has-reels{height:auto}.motion-ready .has-reels .hex-message{position:relative;top:auto;left:auto;right:auto;order:-1;margin-bottom:40px}.motion-ready .has-reels .hex-message>p:not(.eyebrow){opacity:1}.motion-ready .has-reels .social-flight{perspective:none;transform-style:flat}.motion-ready .has-reels .social-reel{left:auto;top:auto;width:auto;opacity:1;transform:none}}

.gallery-copy{display:none}
.motion-ready .has-reels .gallery-copy{display:block}
.paused .has-reels .gallery-copy{display:none}
@media(prefers-reduced-motion:reduce){.motion-ready .has-reels .gallery-copy{display:none}}

.paused .has-reels .hex-stage::after{display:none}
@media(prefers-reduced-motion:reduce){.motion-ready .has-reels .hex-stage::after{display:none}}

@media(prefers-reduced-motion:reduce){.motion-ready .has-reels .hex-signature{opacity:1}}

/* Home: natural scrolling stacks the three services like a deck of cards. */
.home-page .social-panels{position:relative}
.home-page .social-panels.stack-ready{gap:clamp(48px,10svh,100px);padding-bottom:15svh}
.home-page .stack-ready .social-panel{position:sticky;top:var(--stack-top,116px);z-index:var(--stack-order,1);transform:scale(var(--stack-scale,1));transform-origin:50% 0;filter:brightness(var(--stack-shade,1));transition:none;box-shadow:0 -16px 44px #15334516}
.expertise-item summary{transition:color .25s}
.expertise-item[data-expanded="false"] summary{color:inherit}
.expertise-item[data-expanded="false"] i{transform:rotate(0)}
.connection-reveal .expertise-item[open] summary{color:#075f78}
.connection-reveal .expertise-item[data-expanded="false"] summary{color:inherit}
.home-page .work-client-card .card-image{height:clamp(320px,49svh,580px)}
@media(max-width:799px){.home-page .work-client-card .card-image{height:clamp(400px,54svh,480px)}}
@media(prefers-reduced-motion:reduce){.home-page .stack-ready .social-panel{position:relative;top:auto;transform:none;filter:none}.expertise-item summary,.expertise-item i{transition:none}}
@media(min-width:800px){.home-page .work-sticky{padding-top:112px;padding-bottom:30px}.home-page .work-client-card .card-image{height:clamp(290px,min(49svh,calc(100svh - 390px)),580px)}}

/* Keep the introduction readable while the covers rotate below it. */
@media(max-height:800px) and (min-width:701px){
  .motion-ready .has-reels .hex-message{top:17%}
  .motion-ready .has-reels .hex-message h2{font-size:clamp(34px,8svh,64px)}
  .motion-ready .has-reels .hex-message>.eyebrow{display:none}
  .motion-ready .has-reels .hex-message>.hex-description{font-size:15px;line-height:1.5;margin-top:14px;max-width:740px}
}
@media(max-height:740px) and (max-width:700px){
  .motion-ready .has-reels .hex-message h2{font-size:10.5vw}
  .motion-ready .has-reels .hex-message>.eyebrow{display:none}
  .motion-ready .has-reels .hex-message>.hex-description{font-size:13px;line-height:1.5;margin-top:12px}
}

/* Direct service actions inside the home accordion. */
.expertise-action{padding:6px 0 4px}
.expertise-service-link{min-height:46px;max-width:100%;padding:12px 20px;gap:16px;font-size:14px;line-height:1.45;background:#40d5ff;color:#04232d}
.expertise-service-link:hover{background:#9feaff;transform:translateY(-2px)}
.connection-reveal .expertise-service-link{background:#075f78;color:#fff}
.connection-reveal .expertise-service-link:hover{background:#08485e}
.expertise-service-link:focus-visible{outline-color:#087696;outline-offset:4px}
@media(prefers-reduced-motion:reduce){.expertise-service-link{transition:none}.expertise-service-link:hover{transform:none}}

/* Reserve a full caption row instead of shrinking and clipping the carousel. */
.home-page .work-track{padding-bottom:16px}
@media(min-width:800px){
  .home-page:not(.paused) .work-sticky{display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding-bottom:104px}
  .home-page:not(.paused) .work-viewport,.home-page:not(.paused) .work-track,.home-page:not(.paused) .work-card{height:100%;min-height:0}
  .home-page:not(.paused) .work-card{display:flex;flex-direction:column}
  .home-page:not(.paused) .work-client-card .card-image{height:auto;min-height:0;flex:1 1 0}
  .home-page:not(.paused) .card-caption{flex:0 0 auto}
}
@media(min-width:800px) and (max-height:800px){
  .home-page:not(.paused) .work-sticky{padding-top:104px;padding-bottom:96px}
  .home-page .work-heading{margin-bottom:20px}
  .home-page .work-heading h2{font-size:clamp(34px,5.5svh,44px)}
  .home-page .work-heading .eyebrow{margin-bottom:8px}
  .home-page .work-bottom{padding-top:14px}
}
@media(prefers-reduced-motion:reduce){
  .home-page:not(.paused) .work-sticky{display:flex;height:auto;max-height:none}
  .home-page:not(.paused) .work-viewport,.home-page:not(.paused) .work-track,.home-page:not(.paused) .work-card{height:auto}
  .home-page:not(.paused) .work-client-card .card-image{height:clamp(320px,49svh,580px);flex:none}
}
