/* Shared navigation and page shell. Original cinematic scenes remain intact. */
:root{--site-accent:#62dfd0;--site-violet:#a782f4}
.header{top:0;left:0;right:0;padding:13px 4%;height:88px;background:linear-gradient(180deg,rgba(7,9,16,.95),rgba(7,9,16,.78));backdrop-filter:blur(18px);border-bottom:1px solid #ffffff0d;pointer-events:auto;gap:22px}
.header .brand{background:transparent;border:0;padding:0;width:92px;height:58px;flex:0 0 92px}
.header .brand img{width:92px;height:58px;object-fit:contain}
.primary-site-nav{display:flex;justify-content:center;gap:clamp(15px,2.3vw,38px);margin-left:auto}
.primary-site-nav a{color:#d8d5e2;text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;padding:12px 0;position:relative}
.primary-site-nav a:hover,.primary-site-nav a[aria-current="page"]{color:#fff}
.primary-site-nav a[aria-current="page"]:after{content:"";position:absolute;bottom:3px;left:0;right:0;height:2px;background:var(--site-accent);box-shadow:0 0 12px #62dfd08a}
.header .header-right{gap:9px;flex-wrap:nowrap}.header-pill{font-size:11px!important}.header-wa,.site-wa{background:var(--site-accent);color:#071512;border:0;border-radius:999px;padding:12px 19px;cursor:pointer;font-weight:700;font-size:12px;white-space:nowrap}.header-wa:hover,.site-wa:hover{background:#9ff3e8;box-shadow:0 0 30px #62dfd025}
.header select{max-width:66px;padding:8px 6px!important;font-size:11px!important}
.header .menu-open{display:none}.header .start-presentation{border:1px solid #ffffff26;background:transparent;color:#ddd7ed}
.site-page-content{display:none}.site-cases-intro{display:none}
body[data-site-page="services"] .scene,body[data-site-page="about"] .scene,body[data-site-page="contact"] .scene{display:none!important}
body[data-site-page="cases"] .scene{display:none!important}
body[data-site-page="cases"] #work,body[data-site-page="cases"] #evidence,body[data-site-page="cases"] #film,body[data-site-page="cases"] #ai-ip{display:block!important}
body[data-site-page="services"] #site-services,body[data-site-page="about"] #site-about,body[data-site-page="contact"] #site-contact{display:block}
body[data-site-page="cases"] .site-cases-intro{display:block}
body:not([data-site-page="home"]) .scene-rail{display:none!important}
.site-cases-intro{padding:165px 8% 42px;background:radial-gradient(ellipse at 85% 30%,#5b2e9d26,transparent 65%);max-width:1600px;margin:auto}
.site-cases-intro>span,.home-services-preview .eyebrow{color:var(--site-violet);font-size:11px;letter-spacing:.24em}
.site-cases-intro h1{font-size:clamp(42px,5.5vw,78px);line-height:1.18;font-weight:600;letter-spacing:-.04em;margin:20px 0}
.site-cases-intro h1 em{color:var(--site-accent);font-style:normal}.site-cases-intro p{color:#aba5b8;line-height:1.8;font-size:14px}
.site-cases-jumps{display:flex;gap:11px;margin-top:30px;flex-wrap:wrap}.site-cases-jumps a{padding:10px 19px;border:1px solid #ffffff2b;border-radius:30px;color:#d8d3e1;text-decoration:none;font-size:12px}.site-cases-jumps a:hover{border-color:var(--site-accent);color:var(--site-accent)}
.home-services-preview{position:relative;background:radial-gradient(ellipse at 20% 40%,#672aa61a,transparent 70%),#080a11;padding:100px 8%;border-top:1px solid #ffffff0c;border-bottom:1px solid #ffffff0c}
.home-services-preview h2{font-size:clamp(30px,4vw,55px);font-weight:600;letter-spacing:-.035em;line-height:1.3;margin:19px 0 16px}.home-services-preview>p{font-size:14px;color:#a7a2b4;line-height:1.8}
.home-service-links{margin:42px 0 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.home-service-links a{display:flex;min-height:115px;flex-direction:column;justify-content:space-between;gap:22px;text-decoration:none;color:#eeeaf6;padding:21px;border:1px solid #8b63b935;border-radius:15px;background:linear-gradient(140deg,#52277516,transparent);transition:transform .3s,border-color .3s,background .3s}.home-service-links a:hover{transform:translateY(-5px);border-color:#8de4d3;background:#6a469c16}.home-service-links small{font-size:11px;letter-spacing:.1em;color:var(--site-violet)}.home-service-links b{font-size:14px;font-weight:500;display:flex;justify-content:space-between;gap:16px}.home-service-links i{font-style:normal;color:var(--site-accent)}
.home-preview-links{display:flex;gap:27px;flex-wrap:wrap}.home-preview-links a{color:var(--site-accent);font-size:13px;text-decoration:none;padding:7px 0}
.site-footer{display:none;border-top:1px solid #ffffff14;padding:36px 6%;background:#070910;align-items:center;gap:24px;justify-content:space-between;color:#aaa4b5;font-size:12px}.site-footer img{width:85px;height:48px;object-fit:contain}.site-footer a{color:#cfc9dc;text-decoration:none}.site-footer strong{font-size:12px;color:#eeeaf5;letter-spacing:.12em}.site-footer .footer-brand{display:flex;gap:20px;align-items:center}.site-footer .footer-brand div{display:grid;gap:7px}.site-footer nav{display:flex;gap:20px}body:not([data-site-page="home"]) .site-footer{display:flex}
.floating-wa{position:fixed;right:24px;bottom:24px;z-index:155;display:flex;align-items:center;gap:9px;border-radius:32px;padding:14px 19px;border:1px solid #8cf0e342;background:#0c302ee6;backdrop-filter:blur(14px);color:#a5f2e7;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 8px 32px #0006}.floating-wa img{width:21px;height:21px;filter:brightness(0) saturate(100%) invert(88%) sepia(21%) saturate(643%) hue-rotate(112deg)}
body.presenting .floating-wa,body:has(dialog[open]) .floating-wa{visibility:hidden}
body:not([data-site-page="home"]) .home-services-preview{display:none}
html{scroll-padding-top:95px}.scene{scroll-margin-top:0}
@media(max-width:1150px){.header{padding:12px 3%;gap:14px}.primary-site-nav{gap:18px}.primary-site-nav a{font-size:12px}.header .start-presentation{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0!important}.header .start-presentation b{display:none}.header-wa{padding:11px 15px;font-size:11px}}
@media(max-width:780px){.header{height:77px;padding:9px 5%;gap:10px}.header .brand,.header .brand img{width:74px;height:45px;flex-basis:74px}.primary-site-nav{display:none}.header .header-right{margin-left:auto;gap:8px}.header .menu-open{display:flex;gap:8px}.header .menu-open i{display:none}.header-wa{padding:10px 12px;font-size:10px}.header select{font-size:10px!important}.site-cases-intro{padding:124px 6% 20px}.site-cases-intro h1{font-size:40px}.site-cases-intro p{font-size:12px}.site-cases-jumps{gap:8px}.site-cases-jumps a{font-size:10px;padding:9px 13px}.home-services-preview{padding:70px 6%}.home-services-preview h2{font-size:31px}.home-service-links{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:28px}.home-service-links a{padding:17px;min-height:103px}.home-service-links b{font-size:12px;line-height:1.6}.home-services-preview>p{font-size:12px}.home-preview-links{gap:19px}.home-preview-links a{font-size:11px}.floating-wa{right:15px;bottom:16px;padding:12px 15px;font-size:10px}.site-footer{padding:30px 6% 88px;align-items:flex-start;flex-direction:column;gap:23px;font-size:11px}.site-footer nav{gap:22px}.menu-links .site-main-menu{font-size:25px}.menu-grid{overflow-y:auto;max-height:78svh}}
@media(prefers-reduced-motion:reduce){.home-service-links a{transition:none}}

@media(max-width:780px){.header .header-wa{display:none}.header .start-presentation{display:flex;width:34px;height:34px;padding:0!important}.header .start-presentation b{display:none}.header .start-presentation>span{font-size:11px}.header .header-right{gap:9px}}
.home-closing-wa{margin:18px 0 4px}.site-main-menu-links{border-bottom:1px solid #62dfd04d;padding-bottom:20px;margin-bottom:15px}.site-main-menu-links a{font-size:24px;line-height:1.8}.site-main-menu-links a[aria-current="page"]{color:#62dfd0}

body[data-site-page="home"]>footer.site-footer{display:none!important}body:not([data-site-page="home"])>footer.site-footer{display:flex!important}body[data-site-page="services"] .site-page-content:not(#site-services),body[data-site-page="about"] .site-page-content:not(#site-about),body[data-site-page="contact"] .site-page-content:not(#site-contact),body[data-site-page="home"] .site-page-content,body[data-site-page="cases"] .site-page-content{display:none!important}

/* Keep new-page content readable immediately, even while scroll animation initialises. */
.site-page-content.site-anim-ready .site-reveal{opacity:1}.site-page-content.site-anim-ready .site-reveal:not(.site-in){transform:translateY(14px)}
