 :root{--acid:#0884ff;--ink:#101522;--paper:#f8faff;--line:rgba(17,19,17,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.5 "DM Sans",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3,.logo,.footbrand,.ticker,.break,.stats strong{font-family:"Archivo Black",Impact,sans-serif;letter-spacing:-.065em}h2{font-size:clamp(3.4rem,8vw,9rem);line-height:.91}::selection{background:var(--acid);color:var(--ink)}:focus-visible{outline:3px solid #0884ff;outline-offset:4px}.topline{background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:9px 3vw;font-size:10px;font-weight:700;letter-spacing:.13em}.star{color:var(--acid)}.header{height:87px;display:flex;align-items:center;gap:30px;padding:0 3vw;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.logo{font-size:24px;letter-spacing:-.065em;display:flex;align-items:center;gap:10px;white-space:nowrap}.logo sup{font-family:Arial;font-size:9px;align-self:flex-start;padding-top:10px}.logo-icon{display:inline-flex;width:37px;height:37px;background:var(--ink);color:white;font-size:24px;align-items:center;justify-content:center;position:relative;overflow:hidden}.logo-icon span{position:absolute;font:12px Arial;color:var(--acid);bottom:1px;right:2px}.header nav{display:flex;gap:28px;margin:auto}.header nav a,.navcta{font-size:11px;font-weight:800;letter-spacing:.08em}.header nav a:hover{text-decoration:underline}.navcta{padding:15px 18px;background:var(--acid)}.navcta span{margin-left:14px;font-size:18px}.menu{display:none;background:none;border:0;font-size:24px}.hero{background:var(--acid);min-height:790px;padding:32px 3vw 46px;position:relative;overflow:hidden}.hero-top{display:flex;justify-content:space-between;font-size:11px;font-weight:800;letter-spacing:.08em}.pulse{display:inline-block;background:var(--ink);width:8px;height:8px;border-radius:50%;margin-right:8px}.hero h1{font-size:clamp(5.4rem,14.5vw,16.2rem);line-height:.79;margin:60px 0 45px;position:relative;z-index:2}.hero h1>span{padding-left:13vw}.hero h1 em,.contact h2 em{font-style:normal;color:var(--paper);-webkit-text-stroke:3px var(--ink);white-space:nowrap}.hero h1 .period{color:var(--ink);-webkit-text-stroke:0}.hero-bottom{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:end;position:relative;z-index:3}.hero-bottom>div{max-width:485px}.hero-bottom p{font-size:clamp(17px,2vw,23px);line-height:1.4}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:19px 23px;font-size:12px;font-weight:800;letter-spacing:.025em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-4px)}.button.dark{background:var(--ink);color:white}.button.dark span{color:var(--acid)}.button.outline{border:1px solid currentColor}.hero-feature{height:220px;display:flex;overflow:hidden;align-items:center;position:relative;border:5px solid var(--ink);max-width:430px;margin-left:auto;width:100%;transform:rotate(3deg)}.hero-feature img{width:100%;height:100%;object-fit:cover;object-position:center 40%;filter:grayscale(.2)}.hero-feature span{position:absolute;bottom:0;left:0;right:0;background:var(--ink);color:white;font-size:11px;letter-spacing:.1em;padding:13px}.hero-sticker{position:absolute;right:5vw;top:19%;font-weight:900;font-size:12px;line-height:1.1;text-align:center;background:var(--paper);border:2px solid var(--ink);border-radius:50%;padding:37px 20px;transform:rotate(15deg)}.hero-sticker span{display:block;font-size:21px}.ticker{background:var(--ink);color:var(--acid);overflow:hidden;white-space:nowrap;font-size:clamp(24px,4vw,54px);padding:17px 0}.ticker-inner{width:max-content;animation:ticker 25s linear infinite}@keyframes ticker{to{transform:translateX(-50%)}}.section-pad{padding:110px 5vw}.eyebrow{font-size:11px;letter-spacing:.13em;font-weight:800;margin-bottom:42px}.manifesto{background:var(--paper)}.manifesto-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:6vw;align-items:end}.manifesto h2 span{color:#78b9ff}.manifesto-side{padding-bottom:12px;max-width:400px}.manifesto-side p{font-size:20px}.manifesto-side p:first-child{font-weight:800}.textlink{font-size:12px;font-weight:800;border-bottom:2px solid;padding-bottom:8px;display:inline-block;margin-top:20px}.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:90px;border-top:2px solid var(--ink)}.stats>div{display:flex;flex-direction:column;padding:26px 0;border-right:1px solid var(--line)}.stats>div:last-child{border:0;padding-left:35px}.stats>div:nth-child(2){padding-left:35px}.stats strong{font-size:clamp(4rem,9vw,9rem);line-height:1}.stats strong span{color:#0884ff}.stats small{font-size:11px;font-weight:800;letter-spacing:.12em}.proof-note{font-size:11px;color:#666;margin-top:14px}.work{background:var(--ink);color:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px}.section-heading p{max-width:330px;font-size:18px}.work h2 i,.team h2 i{color:var(--acid);font-style:normal}.filterbar{display:flex;gap:8px;flex-wrap:wrap;margin:45px 0 32px}.filter{background:transparent;color:white;border:1px solid #555;padding:12px 17px;font-size:11px;font-weight:800}.filter.active,.filter:hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project{position:relative;overflow:hidden;aspect-ratio:9/14;background:#292a28;display:block}.project img{width:100%;height:100%;object-fit:cover;transition:transform .6s;display:block}.project:hover img{transform:scale(1.07)}.project:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.85))}.project .project-meta{position:absolute;bottom:0;left:0;right:0;z-index:1;padding:18px}.project .project-meta strong{display:block;font-weight:800;font-size:18px;line-height:1.2}.project small{font-size:10px;letter-spacing:.12em;color:#ccc}.project .project-arrow{position:absolute;right:15px;top:15px;z-index:2;background:var(--acid);color:black;width:37px;height:37px;display:grid;place-items:center;font-size:23px}.work-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:35px}.work-foot p{font-size:13px;color:#aaa}.break{background:#e0f0ff;padding:70px 5vw;text-align:center;display:flex;flex-direction:column;line-height:1.1}.break span{font:800 13px "DM Sans";letter-spacing:.18em}.break strong{font-size:clamp(3rem,9vw,9rem);letter-spacing:-.07em}.services{background:var(--acid)}.services h2 span{-webkit-text-stroke:2px var(--ink);color:transparent}.services-lead{max-width:470px;font-size:21px;margin:35px 0 60px}.service-list{border-top:3px solid var(--ink)}.service{display:grid;grid-template-columns:70px 1fr 50px;align-items:start;padding:30px 0;border-bottom:2px solid var(--ink);gap:30px;transition:padding .25s}.service:hover{padding-left:18px}.service>span{font-size:13px;font-weight:800}.service h3{font-size:clamp(2.8rem,6vw,7rem);line-height:.93;margin-bottom:20px}.service p{font-size:17px;max-width:530px}.service small{font-weight:800;letter-spacing:.1em}.service>b{font-size:42px;font-weight:400}.process{background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:65px}.steps>div{border-top:2px solid;padding-top:25px}.steps b{font-size:12px}.steps p{font-size:18px;margin-top:25px}.reviews{background:#eaf5ff}.reviews h2 em{font-style:normal;color:var(--paper);-webkit-text-stroke:2px var(--ink)}.reviewgrid{margin-top:70px;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.review{padding:32px;background:var(--paper);min-height:260px;display:flex;flex-direction:column;justify-content:space-between}.review .quote{font-size:clamp(17px,1.7vw,23px);line-height:1.35;font-weight:700}.review .who{font-size:12px;border-top:1px solid #bbb;padding-top:20px;font-weight:700}.review .who span{display:block;color:#666;font-weight:400}.team{background:var(--ink);color:var(--paper)}.teamgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:15px;margin-top:55px}.person img{width:100%;aspect-ratio:1;object-fit:cover;filter:grayscale(1);transition:filter .3s}.person:hover img{filter:none}.person strong{display:block;font-size:18px;margin-top:10px}.person small{font-size:11px;color:#aaa}.team-quote{display:flex;gap:5vw;align-items:center;border-top:1px solid #555;margin-top:60px;padding-top:25px}.team-quote span{min-width:130px;font-size:11px;color:var(--acid);font-weight:800}.team-quote p{font-size:clamp(1.6rem,3.3vw,3.8rem);font-weight:800;max-width:900px;line-height:1.15}.faq{background:var(--paper)}.faq details{border-top:1px solid var(--ink);padding:24px 0}.faq details:last-child{border-bottom:1px solid var(--ink)}.faq summary{font-weight:800;font-size:clamp(19px,2.5vw,30px);display:flex;justify-content:space-between;cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:30px;font-weight:400}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{max-width:630px;margin-top:20px}.contact{background:var(--acid)}.contact h2{font-size:clamp(4rem,10vw,12rem)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:60px}.contact-grid>div>p:first-child{font-size:clamp(20px,2.4vw,30px);font-weight:700;max-width:550px}.contact-link{display:block;font-weight:800;font-size:clamp(14px,2vw,23px);border-bottom:1px solid;padding:20px 0}.address{margin-top:45px;font-size:14px}.contact form{background:var(--paper);padding:32px}.formtag{font-size:12px;font-weight:800;margin-bottom:25px;letter-spacing:.08em}.contact label{display:block;font-size:12px;font-weight:800;margin-bottom:16px}.contact input,.contact select,.contact textarea{display:block;background:transparent;border:0;border-bottom:1px solid #888;width:100%;padding:13px 0;border-radius:0;outline-offset:2px;font-size:16px;margin-top:5px}.wide{width:100%;margin-top:8px}.formnote{font-size:11px;color:#666;margin:15px 0 0}.formnote a{text-decoration:underline}footer{background:var(--ink);color:var(--paper);padding:45px 3vw 25px;overflow:hidden}.footbrand{font-size:clamp(4.2rem,17vw,20rem);line-height:1;white-space:nowrap}.footbrand span{font:2vw Arial;vertical-align:top}.footbottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid #777;padding-top:24px;font-size:11px;font-weight:700;letter-spacing:.05em}.footbottom div{display:flex;flex-wrap:wrap;gap:25px}.mobilecta{display:none}@media(max-width:1050px){.header nav{gap:12px}.header nav a{font-size:10px}.project-grid{grid-template-columns:repeat(3,1fr)}.teamgrid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.topline{font-size:9px}.topline span:last-child{display:none}.header{height:69px}.logo{font-size:21px}.navcta{margin-left:auto;padding:13px}.menu{display:block}.header nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--paper);padding:25px 5vw;flex-direction:column;box-shadow:0 16px 25px #0002}.header nav.open{display:flex}.header nav a{font-size:15px;padding:8px}.hero{min-height:680px;padding:25px 5vw 40px}.hero-top span:last-child{display:none}.hero h1{font-size:clamp(4.4rem,17.5vw,8.5rem);margin:95px 0 45px}.hero h1>span{padding-left:7vw}.hero h1 em{-webkit-text-stroke:2px var(--ink);font-size:.78em}.hero-bottom{grid-template-columns:1fr;gap:35px}.hero-bottom p{font-size:18px}.hero-feature{width:60%;height:145px;margin:0 0 0 auto}.hero-sticker{top:22%;right:5%;font-size:8px;padding:20px 15px}.section-pad{padding:75px 5vw}h2{font-size:clamp(3rem,11vw,6rem)}.manifesto-layout,.contact-grid{grid-template-columns:1fr;gap:22px}.manifesto-side p{font-size:18px}.stats{margin-top:55px}.stats strong{font-size:clamp(2.2rem,10vw,5rem)}.stats>div,.stats>div:nth-child(2),.stats>div:last-child{padding:20px 8px}.stats small{font-size:9px}.section-heading{display:block}.section-heading p{margin-top:22px}.project-grid{grid-template-columns:repeat(2,1fr)}.project .project-meta{padding:12px}.project .project-meta strong{font-size:14px}.filter{padding:10px}.work-foot{display:block}.work-foot .button{margin-top:15px}.service{grid-template-columns:30px 1fr 25px;gap:12px}.service h3{font-size:clamp(2.3rem,9vw,4rem)}.service>b{font-size:25px}.steps,.reviewgrid{grid-template-columns:1fr 1fr}.teamgrid{grid-template-columns:repeat(3,1fr)}.team-quote{display:block}.team-quote p{margin-top:18px}.contact-grid{gap:35px}.footbottom{flex-direction:column}.footbrand{font-size:16vw}.mobilecta{display:block;position:fixed;bottom:12px;left:12px;right:12px;text-align:center;background:var(--ink);color:var(--acid);padding:15px;z-index:9;font-size:12px;font-weight:800;box-shadow:0 4px 25px #0005}footer{padding-bottom:90px}}@media(max-width:460px){.navcta{display:none}.menu{margin-left:auto}.hero h1{font-size:17vw}.hero-feature{width:74%}.project-grid{gap:9px}.reviewgrid{grid-template-columns:1fr}.teamgrid{grid-template-columns:repeat(2,1fr)}.service h3{font-size:9vw}.stats small{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Nexposure-aligned deep navy / electric blue / white theme. Exact source HEX values require original brand stylesheet for confirmation. */
.hero,.services,.contact{color:#fff;background:var(--acid)}.hero h1 em,.contact h2 em{color:transparent;-webkit-text-stroke:3px #fff}.hero h1 .period{color:#fff}.hero-feature{border-color:#fff}.hero-sticker{color:var(--ink)}.hero .button.dark,.contact .button.dark{background:#fff;color:var(--ink)}.hero .button.dark span{color:var(--ink)}.navcta,.filter.active,.filter:hover,.project .project-arrow{color:#fff}.service-list,.service{border-color:#fff}.services h2 span{-webkit-text-stroke:2px #fff}.stats strong span{color:var(--acid)}.contact form{color:var(--ink)}.break{background:#e0f0ff}.reviews{background:#eaf5ff}.ticker{color:#fff}.mobilecta{color:#fff}.work h2 i,.team h2 i{color:#58adff}.team-quote span{color:#58adff}@media(max-width:720px){.hero h1 em{-webkit-text-stroke:2px #fff}}

/* Native, responsive portfolio video dialog */
.project{cursor:default}.project-arrow{border:0;cursor:pointer;font-size:17px}.project-arrow:hover{transform:scale(1.07)}.video-note{font-size:12px;line-height:1.5;margin:15px 0;color:#b6bfd6}.video-note code{background:#29344e;padding:3px 5px}#video-dialog{background:#101522;color:white;border:1px solid #0884ff;padding:12px;box-shadow:0 25px 90px #000b;width:min(560px,95vw);max-height:94vh}#video-dialog::backdrop{background:rgba(0,0,0,.83)}#portfolio-player{display:block;width:100%;max-height:74vh;background:#000;aspect-ratio:9/16;object-fit:contain}.video-dialog-head{display:flex;gap:15px;justify-content:space-between;align-items:center;padding:10px 8px 16px;font-size:14px}.video-dialog-head button{background:#0884ff;color:#fff;border:0;padding:10px 14px;cursor:pointer}.video-dialog-head button:hover{background:#0884ff}#video-error{font-size:13px;margin:9px}#video-error a{text-decoration:underline;color:#88c5ff}

/* Inline SVG icon system & accessible entire-tile video buttons */
.ui-icon{width:1em;height:1em;display:inline-block;vertical-align:-.14em;flex-shrink:0}.logo-icon .ui-icon{font-size:12px}.hero-sticker .ui-icon{display:block;margin:.35em auto 0;font-size:21px}.ticker .ui-icon{vertical-align:middle;font-size:.75em;margin:0 .1em}.star .ui-icon{color:inherit}.project{appearance:none;border:0;padding:0;text-align:left;color:#fff;font:inherit;cursor:pointer;width:100%;border-radius:0;touch-action:manipulation}.project:focus-visible{outline:4px solid var(--accent,#0884ff);outline-offset:4px}.project .project-arrow{pointer-events:none}.project .project-arrow .ui-icon{width:19px;height:19px}.project-meta{pointer-events:none}.watch-label{display:block;font-weight:700;font-size:11px;letter-spacing:.12em;margin-top:9px}.menu .ui-icon{font-size:24px}.service>b .ui-icon{width:.85em;height:.85em}.video-dialog-head button .ui-icon{margin-right:5px}.video-note{color:#aaa;font-size:12px;margin-top:20px}#portfolio-player{display:block;width:100%;max-height:min(78vh,940px);height:auto;object-fit:contain;background:black}#video-dialog{max-width:min(92vw,980px)}

/* Reference-matched video tiles: neutral resting border and blue active preview */
.project-grid{gap:clamp(16px,2.1vw,30px)}
.project{border:1px solid #575d62!important;border-radius:18px!important;isolation:isolate;overflow:hidden;aspect-ratio:9/16;background:#080a0d;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;box-shadow:none;outline:none}
.project:hover,.project.is-hovered,.project:focus-visible{border-color:#0884ff!important;box-shadow:0 0 0 1px #0884ff,0 10px 34px rgba(0,139,255,.11)}
.project .project-poster,.project .project-preview{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;border-radius:inherit}
.project .project-preview{z-index:1;opacity:0;pointer-events:none;transition:opacity .18s ease}
.project.is-previewing .project-preview{opacity:1}
.project:after{content:none!important}
.project .project-meta{z-index:3;opacity:0;transition:opacity .2s ease;background:linear-gradient(transparent,rgba(0,0,0,.82));padding:44px 15px 17px}
.project:hover .project-meta,.project.is-hovered .project-meta,.project:focus-visible .project-meta{opacity:1}
.project .project-arrow{display:none!important}
.project .watch-label{display:flex;align-items:center;gap:8px;color:#0884ff;font-size:10px}
.project .watch-label svg{width:12px;height:12px}
@media(hover:none){.project .project-meta{opacity:1}.project .project-preview{display:none}}
@media(prefers-reduced-motion:reduce){.project,.project .project-preview,.project .project-meta{transition:none!important}}

/* Sticky original-brand navigation */
.header{position:sticky;top:0;z-index:1000;isolation:isolate;box-shadow:0 2px 12px rgba(16,21,34,.07);}
.logo-original{display:inline-flex;align-items:center;min-width:145px;min-height:50px;max-width:210px;}
.original-brand-logo{display:block;width:auto;max-width:100%;height:47px;object-fit:contain;object-position:left center;}
.logo-fallback{font-family:"Archivo Black",Impact,sans-serif;font-size:21px;letter-spacing:-.05em;}
.logo-fallback[hidden]{display:none!important;}
[id]{scroll-margin-top:105px;}
@media(max-width:720px){.header{top:0;min-height:69px}.logo-original{max-width:155px;min-width:115px}.original-brand-logo{height:37px}[id]{scroll-margin-top:86px;}}

/* Black translucent glass sticky header */
.header{
  background:rgba(7,9,13,.82);
  -webkit-backdrop-filter:blur(14px) saturate(130%);
  backdrop-filter:blur(14px) saturate(130%);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 8px 26px rgba(0,0,0,.16);
  color:#fff;
}
.header nav a{color:#f7f9ff;transition:color .18s ease}
.header nav a:hover,.header nav a:focus-visible{color:#78bfff}
.header .logo,.header .logo-fallback{color:#fff}
.header .menu{color:#fff}
.header .navcta{background:#0884ff;color:#fff}
.header .navcta:hover{background:#3199ff}
@media(max-width:720px){
  .header nav{background:rgba(7,9,13,.97);border-bottom:1px solid rgba(255,255,255,.15)}
  .header nav a{color:#fff}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
  .header{background:#080b10}
}

/* October 30 update: brand blue behind the dark translucent sticky header. */
.topline{background:#0884ff;color:#fff}
body{background:#0884ff}
.header{min-height:110px;height:110px;padding-block:10px}
.logo-original{max-width:315px;min-width:218px;min-height:76px}
.original-brand-logo{height:70.5px;max-height:70.5px;max-width:100%;width:auto}
.logo-fallback{font-size:31.5px}
/* Header is still dark translucent so the backdrop underneath shows through. */
@media(max-width:1050px){.logo-original{max-width:250px;min-width:175px}.original-brand-logo{height:58px;max-height:58px}.header{height:96px;min-height:96px}}
@media(max-width:720px){.header{height:88px;min-height:88px}.logo-original{min-width:145px;max-width:232px;min-height:57px}.original-brand-logo{height:55.5px;max-height:55.5px}.logo-fallback{font-size:25px}.header nav{top:88px}[id]{scroll-margin-top:102px}}
@media(max-width:380px){.logo-original{max-width:190px;min-width:125px}}

/* Update: black backgrounds and Nexposure blue glowing emphasis */
html,body{background:#050608;}
.topline{background:#050608;color:#fff;}
.hero,.services,.contact{background:#050608;color:#fff;}
/* Preserve the original translucent dark glass header over a black canvas. */
.header{background:rgba(5,6,8,.85);}
/* Brand glow on intentionally emphasized display words */
.hero h1 em,
.contact h2 em,
.reviews h2 em {
  color:#0884ff;
  -webkit-text-stroke:0;
  text-shadow:0 0 12px rgba(8,132,255,.66),0 0 32px rgba(8,132,255,.42),0 0 65px rgba(8,132,255,.23);
}
.work h2 i,.team h2 i,.manifesto h2 span {
  color:#0884ff;
  text-shadow:0 0 13px rgba(8,132,255,.5),0 0 32px rgba(8,132,255,.3);
}
.services h2 span {
  color:#0884ff;
  -webkit-text-stroke:0;
  text-shadow:0 0 12px rgba(8,132,255,.55),0 0 30px rgba(8,132,255,.32);
}
/* Buttons and other accents keep brand blue */
.hero .button.dark,.contact .button.dark{background:#0884ff;color:#fff;}
.hero .button.dark span,.contact .button.dark span{color:#fff;}
.hero-sticker{background:#0884ff;color:#fff;border-color:#0884ff;}
.hero-feature{border-color:#0884ff;}
.services .service-list,.services .service{border-color:rgba(255,255,255,.6);}
.services .service p,.contact-grid p{color:#e1e8f3;}
.contact form{background:#f8faff;color:#101522;}
.contact form .button.dark{background:#0884ff;color:white;}
@media(prefers-reduced-motion:reduce){
  .hero h1 em,.contact h2 em,.reviews h2 em,.work h2 i,.team h2 i,.services h2 span{ text-shadow:0 0 14px rgba(8,132,255,.35); }
}

/* White emphasis type with electric-blue outer aura */
.hero h1 em,.contact h2 em,.reviews h2 em,.work h2 i,.team h2 i,.manifesto h2 span,.services h2 span {
  color:#fff !important;
  -webkit-text-stroke:0 !important;
  text-shadow:0 0 10px rgba(8,132,255,.88), 0 0 24px rgba(8,132,255,.72), 0 0 52px rgba(8,132,255,.42), 0 0 90px rgba(8,132,255,.18) !important;
}
/* Enter-the-viewport animation: only attach styles after enhancement JS runs. */
@media(prefers-reduced-motion:no-preference){
  .motion-ready .fade-rise { opacity:0; filter:blur(9px); transform:translate3d(0,28px,0); transition:opacity 760ms cubic-bezier(.22,1,.36,1),filter 760ms cubic-bezier(.22,1,.36,1),transform 760ms cubic-bezier(.22,1,.36,1); transition-delay:var(--reveal-delay,0ms); }
  .motion-ready .fade-rise.is-visible { opacity:1;filter:blur(0);transform:translate3d(0,0,0); }
}
@media(prefers-reduced-motion:reduce){.fade-rise{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}

/* Minimal video tiles: footage only, neatly rounded edge. */
.project{border-radius:18px!important;border:1px solid rgba(255,255,255,.27)!important;background:#050608;box-shadow:none!important;transform:none!important;aspect-ratio:9/16;}
.project:after,.project .project-meta,.project-arrow,.project .watch-label{display:none!important;}
.project:hover,.project.is-hovered,.project:focus-visible{border-color:#0884ff!important;box-shadow:0 0 0 1px rgba(8,132,255,.65)!important;}
.project img,.project .project-preview{border-radius:17px!important;transform:none!important;object-fit:cover;}
.project:hover img{transform:none!important;}
/* Modal is purely a black canvas with a rounded portrait video. Close is an unobtrusive button overlay. */
#video-dialog{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important;width:fit-content!important;max-width:min(92vw,760px)!important;max-height:94dvh!important;overflow:visible;position:fixed;}
#video-dialog::backdrop{background:rgba(0,0,0,.94)}
#portfolio-player{display:block;width:auto!important;max-width:92vw!important;height:min(88dvh,900px)!important;max-height:88dvh!important;aspect-ratio:9/16!important;object-fit:contain!important;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:#000;overflow:hidden;}
#close-video{position:absolute;top:8px;right:8px;z-index:5;border:0;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;background:rgba(0,0,0,.45);color:#fff;cursor:pointer;backdrop-filter:blur(7px);padding:0;}
#close-video .ui-icon{width:18px;height:18px;margin:0;}
#close-video:hover,#close-video:focus-visible{background:#0884ff;}
#video-error:empty{display:none}#video-error{position:absolute;bottom:0;left:0;right:0;background:#101522;padding:12px;margin:0;}
@media(hover:none){.project .project-preview{display:none!important}}

/* Cinematic Z-axis typographic entrance */
.entrance{display:none;position:fixed;inset:0;z-index:9999;background:#050608;color:white;overflow:hidden;align-items:center;justify-content:center;perspective:1100px}
.intro-pending .entrance{display:flex}
.entrance-inner{width:100%;text-align:center;transform-style:preserve-3d;padding:30px 12px}
.entrance-words{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(6px,1.4vh,20px);perspective:900px}
.entrance-words>span{font:normal clamp(3.1rem,11vw,11rem)/.88 'Archivo Black',Impact,sans-serif;letter-spacing:-.075em;display:block;opacity:0;transform:translateZ(-850px) scale(.25);filter:blur(22px);will-change:transform,opacity,filter;white-space:nowrap}
.entrance-words>span:nth-child(3){font-size:clamp(2.5rem,9.2vw,9rem)}
.entrance-dot{color:#0884ff;text-shadow:0 0 28px #0884ff}
.entrance-brand{opacity:0;transform:translateY(25px);margin:clamp(25px,5vh,60px) auto 0;display:flex;justify-content:center;align-items:center;min-height:55px}
.entrance-brand img{height:clamp(44px,7vw,82px);width:auto;max-width:80vw;object-fit:contain}
.entrance-brand span{font:normal clamp(24px,4vw,47px) 'Archivo Black',Impact,sans-serif;letter-spacing:-.05em}
.entrance-skip{position:absolute;right:clamp(16px,3vw,45px);bottom:30px;color:#ccc;background:transparent;border:1px solid #595d65;border-radius:3px;padding:12px 16px;display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.08em;cursor:pointer}
.entrance-skip svg{width:15px;height:15px}
.entrance-skip:hover{border-color:#0884ff;color:#fff}
.intro-pending .hero h1,.intro-pending .hero-top,.intro-pending .hero-bottom,.intro-pending .hero-sticker{opacity:0}
.intro-run .entrance-words>span{animation:wordImpact .72s cubic-bezier(.13,.9,.25,1) both}
.intro-run .entrance-words>span:nth-child(1){animation-delay:.12s}
.intro-run .entrance-words>span:nth-child(2){animation-delay:.67s}
.intro-run .entrance-words>span:nth-child(3){animation-delay:1.22s}
.intro-run .entrance-brand{animation:brandArrive .45s ease-out 1.88s both}
.intro-run .entrance-inner{animation:introExit .43s cubic-bezier(.68,0,1,.55) 2.65s forwards}
.intro-run .entrance-skip{animation:skipExit .2s ease 2.65s forwards}
.intro-complete .hero h1{animation:heroMomentum .9s cubic-bezier(.18,.78,.25,1) both!important}
.intro-complete .hero-top{animation:heroMomentum .85s cubic-bezier(.18,.78,.25,1) .10s both!important}
.intro-complete .hero-bottom{animation:heroMomentum .9s cubic-bezier(.18,.78,.25,1) .20s both!important}
.intro-complete .hero-sticker{animation:stickerArrival .8s cubic-bezier(.18,.8,.3,1) .36s both!important}
@keyframes wordImpact{0%{opacity:0;transform:translateZ(-850px) scale(.25);filter:blur(22px)}70%{opacity:1;transform:translateZ(95px) scale(1.085);filter:blur(0)}87%{transform:translateZ(-20px) scale(.98)}100%{opacity:1;transform:translateZ(0) scale(1);filter:blur(0)}}
@keyframes brandArrive{from{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}
@keyframes introExit{from{transform:translateY(0);opacity:1}to{transform:translateY(-130vh);opacity:0}}
@keyframes skipExit{to{opacity:0}}
@keyframes heroMomentum{0%{opacity:0;transform:translateX(-120px);filter:blur(8px)}68%{opacity:1;transform:translateX(12px);filter:blur(0)}83%{transform:translateX(-5px)}100%{opacity:1;transform:translateX(0);filter:blur(0)}}
@keyframes stickerArrival{0%{opacity:0;transform:translateX(-90px) rotate(-12deg)}75%{opacity:1;transform:translateX(6px) rotate(18deg)}100%{opacity:1;transform:translateX(0) rotate(15deg)}}
@media(max-width:520px){.entrance-words>span{font-size:12.5vw}.entrance-words>span:nth-child(3){font-size:10.2vw}}
@media(prefers-reduced-motion:reduce){.entrance{display:none!important}.hero h1,.hero-top,.hero-bottom,.hero-sticker{opacity:1!important;animation:none!important}}

/* Viewer-side drop-in: words fall away from camera and settle onto the screen. */
.entrance{perspective:850px}
.entrance-words{perspective:850px;transform-style:preserve-3d}
.entrance-words>span{transform:translate3d(0,-18vh,780px) scale(2.6);transform-origin:center;filter:blur(20px);opacity:0;backface-visibility:hidden}
@keyframes wordImpact{
  0%{opacity:0;transform:translate3d(0,-18vh,780px) scale(2.6);filter:blur(24px)}
  32%{opacity:1;filter:blur(6px)}
  69%{opacity:1;transform:translate3d(0,13px,-28px) scale(.965);filter:blur(0)}
  82%{transform:translate3d(0,-7px,12px) scale(1.018)}
  100%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0)}
}
.entrance-words>span:nth-child(3){color:#0884ff;text-shadow:0 0 10px rgba(8,132,255,.8),0 0 32px rgba(8,132,255,.58),0 0 72px rgba(8,132,255,.4)}
.entrance-words>span:nth-child(3) .entrance-dot{color:inherit}
/* Sticky mobile CTA: only appears after the hero leaves the viewport. */
@media(max-width:720px){
  .mobilecta{background:#0884ff!important;color:#fff!important;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(20px);transition:opacity .25s ease,transform .25s ease,visibility .25s ease}
  .mobilecta.is-active{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce){.entrance-words>span{transform:none;filter:none}}
/* Refined physically weighted landing, with a small secondary bounce. */
.intro-run .entrance-words>span{animation-duration:.86s;animation-timing-function:linear;}
@keyframes wordImpact{
  0%{opacity:0;transform:translate3d(0,-25vh,840px) scale(2.85);filter:blur(25px)}
  24%{opacity:1;filter:blur(8px)}
  53%{transform:translate3d(0,24px,-35px) scale(.95);filter:blur(0);opacity:1}
  66%{transform:translate3d(0,-16px,22px) scale(1.029);filter:blur(0)}
  77%{transform:translate3d(0,7px,-9px) scale(.989)}
  89%{transform:translate3d(0,-3px,4px) scale(1.006)}
  100%{transform:translate3d(0,0,0) scale(1);opacity:1;filter:blur(0)}
}
/* White lettering with blue glow outside, never blue-filled. */
.entrance-words>span:nth-child(3),.entrance-words>span:nth-child(3) .entrance-dot{
  color:#fff!important;
  -webkit-text-stroke:0!important;
  text-shadow:0 0 9px rgba(8,132,255,.9),0 0 25px rgba(8,132,255,.65),0 0 56px rgba(8,132,255,.4)!important;
}

/* Original Nexposure client-logo reel */
.client-reel{background:#050608;color:#fff;padding:40px 0 42px;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.client-reel-heading{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;text-align:center;padding:0 18px;margin-bottom:27px;color:#a6aab3;font-size:11px;letter-spacing:.23em;font-weight:700}
.client-reel-count{color:#0884ff;font-size:10px;letter-spacing:.1em}
.client-reel-window{overflow:hidden;position:relative;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.client-reel-track{display:flex;width:max-content;animation:clientReelScroll 85s linear infinite;will-change:transform}
.clients-logo-set{display:flex;flex:0 0 auto;gap:48px;align-items:center;padding-right:48px}
.client-logo{width:168px;height:104px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.client-logo img{width:100%;height:100%;max-width:168px;max-height:100px;object-fit:contain;filter:none}
.logo-fallback{display:none;color:#e8ecf8;font-weight:800;text-align:center;line-height:1.15;font-size:15px}
.client-reel-window:hover .client-reel-track,.client-reel-window:focus-within .client-reel-track{animation-play-state:paused}
@keyframes clientReelScroll{to{transform:translateX(-50%)}}
@media(max-width:650px){.client-reel{padding:30px 0}.client-reel-heading{font-size:9px;margin-bottom:20px}.client-reel-count{display:none}.clients-logo-set{gap:25px;padding-right:25px}.client-logo{width:125px;height:78px}.client-logo img{max-width:125px;max-height:75px}}
@media(prefers-reduced-motion:reduce){.client-reel-track{animation:none!important}.client-reel-window{overflow-x:auto;mask-image:none;-webkit-mask-image:none}.clients-logo-set[aria-hidden=true]{display:none}}

/* Hero social proof metrics */
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(255,255,255,.32);margin-top:56px;padding-top:24px;gap:20px;position:relative;z-index:3;max-width:950px}
.hero-stat{display:flex;flex-direction:column;gap:5px}
.hero-stat strong{font-family:"Archivo Black",Impact,sans-serif;font-size:clamp(2.1rem,4.8vw,4.8rem);letter-spacing:-.06em;line-height:1;color:#fff}
.hero-stat span{font-size:clamp(9px,.95vw,12px);font-weight:800;letter-spacing:.12em;color:#9bcaff}
.intro-pending .hero-stats{opacity:0}
.intro-complete .hero-stats{animation:heroMomentum .9s cubic-bezier(.18,.78,.25,1) .32s both!important}
@media(max-width:720px){.hero-stats{gap:8px;margin-top:38px;padding-top:20px}.hero-stat strong{font-size:clamp(1.8rem,8vw,3rem)}.hero-stat span{font-size:9px;letter-spacing:.04em}}
@media(prefers-reduced-motion:reduce){.hero-stats{opacity:1!important;animation:none!important}}

/* Companion hero CTA */
.hero-bottom>div>.button{vertical-align:middle;margin:8px 10px 0 0}
.hero-secondary{background:transparent!important;color:#fff!important;border:1px solid rgba(255,255,255,.75);gap:22px}
.hero-secondary:hover,.hero-secondary:focus-visible{border-color:#0884ff;color:#fff!important;box-shadow:0 0 15px rgba(8,132,255,.2)}
.hero-secondary svg{width:16px;height:16px}
#video-dialog[open]{z-index:20000;display:flex;align-items:center;justify-content:center;flex-direction:column}
#video-dialog #portfolio-player{display:block;max-width:min(90vw,760px);max-height:86dvh;width:auto;height:auto;object-fit:contain;border-radius:18px;background:#000}
@media(max-width:720px){.hero-bottom>div>.button{margin:8px 8px 0 0;padding:14px 16px;font-size:11px}}

/* Featured video: local full-quality source, floating in-page PiP when scrolled past */
.hero-feature.hero-video-slot{transform:rotate(3deg);border:2px solid rgba(255,255,255,.35);border-radius:18px;overflow:hidden;height:270px;max-width:350px;background:#080a0c;display:block;position:relative;isolation:isolate}
.hero-video-unit{width:100%;height:100%;position:relative;background:#080a0c}
.hero-video-unit video{display:block;width:100%;height:100%;object-fit:cover}
.hero-video-audio{position:absolute;right:10px;bottom:10px;border:1px solid rgba(255,255,255,.35);border-radius:50%;width:38px;height:38px;background:rgba(0,0,0,.65);color:white;display:grid;place-items:center;z-index:2}
.hero-video-audio svg,.hero-dock-close svg{width:19px;height:19px}
.hero-video-dock[hidden]{display:none!important}
.hero-video-dock{position:fixed;bottom:24px;right:24px;width:min(230px,35vw);aspect-ratio:9/16;background:#000;border:1px solid rgba(8,132,255,.65);box-shadow:0 15px 50px rgba(0,0,0,.6),0 0 22px rgba(8,132,255,.25);border-radius:15px;overflow:hidden;z-index:900;animation:dockEnter .33s ease-out}
.hero-video-dock .hero-video-unit{height:100%}
.hero-video-dock .hero-video-unit video{object-fit:cover}
.hero-dock-close{position:absolute;top:8px;right:8px;z-index:6;width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:rgba(0,0,0,.72);color:#fff;display:grid;place-items:center}
.hero-video-dock .hero-video-audio{bottom:10px}
@keyframes dockEnter{from{opacity:0;transform:translateY(20px) scale(.92)}to{opacity:1;transform:none}}
@media(max-width:720px){.hero-feature.hero-video-slot{width:74%;height:230px}.hero-video-dock{bottom:85px;right:12px;width:145px;border-radius:12px}}
@media(prefers-reduced-motion:reduce){.hero-video-dock{animation:none}}

/* Reliable floating hero video: fixed positioning without reparenting the playing video */
.hero-video-unit.is-floating-pip{position:fixed!important;right:20px!important;bottom:20px!important;top:auto!important;left:auto!important;width:min(230px,38vw)!important;height:auto!important;aspect-ratio:9/16!important;z-index:400!important;border:1px solid rgba(255,255,255,.3);border-radius:16px!important;overflow:hidden;box-shadow:0 12px 48px #000b}.hero-video-unit.is-floating-pip video{width:100%;height:100%;object-fit:cover}.project-preview{pointer-events:none}#video-dialog video{max-height:88vh;max-width:100%;object-fit:contain}#video-dialog[open]{z-index:1000}

/* On-demand portfolio: poster-only cards. Videos are requested only on click. */
.project .project-poster{display:block;width:100%;height:100%;object-fit:cover;}
.project:hover,.project:focus-visible{border-color:#0884ff;}

/* Hero video upgrade: true 9:16 portrait viewport, visible local poster fallback */
.hero-feature.hero-video-slot{aspect-ratio:9/16!important;width:min(280px,100%)!important;max-width:280px!important;height:auto!important;min-height:0!important;transform:none!important;border-radius:18px!important;border:1px solid rgba(255,255,255,.28)!important;overflow:visible!important;background:#07090d!important;margin-left:auto!important;}
.hero-video-unit{aspect-ratio:9/16;overflow:hidden;border-radius:17px;}
.hero-video-unit video{width:100%;height:100%;object-fit:cover;aspect-ratio:9/16;background:#07090d;}
.hero-video-audio:disabled{opacity:.5;cursor:not-allowed;pointer-events:auto;}
.hero-retry-play{display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.5);border-radius:12px;padding:12px 16px;align-items:center;gap:8px;background:rgba(0,0,0,.82);color:#fff;z-index:3;cursor:pointer;font-size:11px;font-weight:800;letter-spacing:.08em;white-space:nowrap;}
.hero-retry-play.is-visible{display:flex;}
.hero-video-unit.is-floating-pip{width:min(205px,35vw)!important;height:auto!important;aspect-ratio:9/16!important;}
@media(max-width:720px){.hero-feature.hero-video-slot{width:min(235px,72vw)!important;max-width:235px!important;margin-left:auto!important}.hero-video-unit.is-floating-pip{width:145px!important;bottom:86px!important;}}

/* Video tilt and purely iconic poster fallback */
.hero-feature.hero-video-slot{transform:rotate(7deg)!important;transform-origin:center center!important;box-shadow:0 26px 55px rgba(0,0,0,.42)!important;transition:transform .35s ease, box-shadow .35s ease!important;}
.hero-feature.hero-video-slot:hover{transform:rotate(4deg) translateY(-6px)!important;box-shadow:0 32px 65px rgba(0,0,0,.55),0 0 24px rgba(8,132,255,.20)!important;}
.hero-retry-play{width:66px!important;height:66px!important;border-radius:50%!important;padding:0!important;justify-content:center!important;align-items:center!important;border:1px solid rgba(255,255,255,.7)!important;background:rgba(4,8,15,.72)!important;backdrop-filter:blur(9px)!important;box-shadow:0 0 25px rgba(8,132,255,.25)!important;}
.hero-retry-play svg{width:30px!important;height:30px!important;margin-left:4px!important;}
/* Intro: double-size logo rises up from below the entrance viewport */
.entrance-brand{overflow:visible!important;}
.entrance-brand img{height:clamp(88px,14vw,164px)!important;max-width:90vw!important;}
.entrance-brand span{font-size:clamp(48px,8vw,94px)!important;}
.intro-run .entrance-brand{animation:brandRiseFromBelow .76s cubic-bezier(.18,.84,.22,1) 1.88s both!important;}
@keyframes brandRiseFromBelow{0%{opacity:0;transform:translateY(105vh);filter:blur(12px)}78%{opacity:1;transform:translateY(-16px);filter:blur(0)}91%{transform:translateY(5px)}100%{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(max-width:720px){.hero-feature.hero-video-slot{transform:rotate(5deg)!important}.hero-feature.hero-video-slot:hover{transform:rotate(3deg) translateY(-4px)!important}.entrance-brand img{height:clamp(78px,19vw,135px)!important;max-width:84vw!important}}
@media(prefers-reduced-motion:reduce){.hero-feature.hero-video-slot,.hero-feature.hero-video-slot:hover{transition:none!important;transform:rotate(5deg)!important}.intro-run .entrance-brand{animation:none!important;opacity:1!important;transform:none!important;filter:none!important}}

/* Booking-page-matched intro and ambient particles */
/* Cinematic entrance, only displayed when JavaScript enables it */
    body.intro-active{overflow:hidden}
    .intro-screen{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;overflow:hidden;background:#080a0e;color:#fff;isolation:isolate}
    .intro-active .intro-screen{display:flex}
    .intro-screen::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(8,132,255,.12),transparent 62%);pointer-events:none}
    .intro-stage{position:relative;z-index:1;width:min(94vw,1000px);text-align:center;perspective:950px;transform-style:preserve-3d}
    .intro-word{display:block;font-family:'Archivo Black',Impact,sans-serif;font-weight:900;font-size:clamp(54px,12vw,148px);line-height:.94;letter-spacing:-.077em;opacity:0;transform-origin:center center;transform:translate3d(0,-140px,650px) scale(2.1) rotateX(-17deg);will-change:transform,opacity;white-space:nowrap}
    .intro-word.customers{color:#fff;text-shadow:0 0 12px rgba(8,132,255,.94),0 0 36px rgba(8,132,255,.73),0 0 90px rgba(8,132,255,.42)}
    .intro-logo{height:150px;max-width:min(88vw,800px);object-fit:contain;margin:32px auto 0;display:block;opacity:0;transform:translateY(115vh);will-change:transform,opacity}
    .intro-logo-fallback{display:none;font-family:'Archivo Black',Impact,sans-serif;font-size:clamp(42px,9vw,108px);letter-spacing:-.075em;line-height:1.2;margin:32px auto 0;opacity:0;transform:translateY(115vh)}
    .intro-logo-fallback .blue{color:#0884ff}
    .intro-screen.logo-error .intro-logo{display:none}.intro-screen.logo-error .intro-logo-fallback{display:block}
    .intro-skip{position:absolute;right:clamp(16px,4vw,56px);top:clamp(20px,5vw,48px);z-index:4;background:transparent;border:1px solid rgba(255,255,255,.42);border-radius:100px;padding:11px 18px;color:white;font-family:inherit;letter-spacing:.08em;font-size:11px;font-weight:800;cursor:pointer}
    .intro-skip:hover,.intro-skip:focus-visible{border-color:#0884ff;background:#0884ff;color:#fff}
    .intro-active .intro-word{animation:introImpact 620ms cubic-bezier(.15,.65,.22,1) forwards}
    .intro-active .intro-word:nth-child(2){animation-delay:550ms}
    .intro-active .intro-word:nth-child(3){animation-delay:1100ms}
    .intro-active .intro-logo,.intro-active .intro-logo-fallback{animation:introLogoRise 850ms cubic-bezier(.18,.72,.17,1) 1820ms both}
    .intro-active .intro-stage{animation:introExit 420ms cubic-bezier(.8,0,1,.4) 3020ms forwards}
    @keyframes introImpact{0%{opacity:0;transform:translate3d(0,-140px,650px) scale(2.1) rotateX(-17deg)}42%{opacity:1}62%{opacity:1;transform:translate3d(0,16px,-32px) scale(.96) rotateX(3deg)}77%{transform:translate3d(0,-10px,15px) scale(1.025) rotateX(-1deg)}88%{transform:translate3d(0,5px,0) scale(.996)}100%{opacity:1;transform:translate3d(0,0,0) scale(1) rotateX(0)}}
    @keyframes introLogoRise{0%{opacity:0;transform:translateY(115vh)}68%{opacity:1;transform:translateY(-19px)}82%{transform:translateY(8px)}100%{opacity:1;transform:translateY(0)}}
    @keyframes introExit{to{transform:translateY(-145vh);opacity:0}}
    .intro-active ~ *{} /* rest of page stays accessible if animation fails */
    body.intro-finishing .hero h1,body.intro-finishing .hero .hero-bottom{animation:bookingHeroEnter 790ms cubic-bezier(.15,.8,.18,1) both}
    body.intro-finishing .hero .hero-bottom{animation-delay:90ms}
    @keyframes bookingHeroEnter{0%{opacity:0;transform:translateX(-110px)}70%{opacity:1;transform:translateX(9px)}84%{transform:translateX(-4px)}100%{opacity:1;transform:translateX(0)}}
    @media(max-width:640px){.intro-word{font-size:clamp(39px,11.5vw,76px)}.intro-logo{height:120px;margin-top:24px}.intro-logo-fallback{font-size:clamp(30px,9vw,60px)}}
    @media(prefers-reduced-motion:reduce){.intro-screen{display:none!important}body.intro-active{overflow:auto}.intro-word,.intro-logo,.intro-logo-fallback{animation:none!important}body.intro-finishing .hero *{animation:none!important}}

    .header,.footer{position:relative;z-index:1}
  
  
body{isolation:isolate}
body > .topline,body > .header,body > main,body > footer,body > .mobilecta,body > .ticker{position:relative;z-index:1}
body > .intro-screen{z-index:1100}
html.intro-lock,html.intro-lock body{overflow:hidden}
@media(prefers-reduced-motion: reduce){html.intro-lock,html.intro-lock body{overflow:auto}}
