:root{color-scheme:dark;--bg:#0c1014;--surface:#12181e;--text:#f1f3f1;--muted:#a5afb7;--line:#2b3239;--accent:#c9dddc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a,input,textarea,select{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.08;letter-spacing:-.045em}.section-wrap{padding:100px max(5vw,24px)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;color:var(--accent);margin-bottom:24px}.header{position:absolute;top:0;z-index:5;width:100%;padding:25px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff20;background:linear-gradient(#080e1480,transparent)}.brand{display:block;width:175px}.brand img,.hero-logo{width:100%;height:auto;filter:invert(1);mix-blend-mode:screen}.header .brand{width:158px}.header nav{display:flex;gap:27px;align-items:center;font-size:.875rem}.header nav a:hover{color:#c9dddc}.nav-divider{height:18px;width:1px;background:#ffffff35}.nav-contact{border:1px solid #ffffff60;padding:8px 17px}.menu-toggle{display:none}.hero{position:relative;min-height:800px;height:94svh;max-height:1150px;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080e14e8 0%,#0a101a70 48%,#0a101a10 100%),linear-gradient(0deg,var(--bg),transparent 35%)}.hero-copy{position:relative;margin:105px 0 85px 8vw;max-width:690px}.hero-copy .eyebrow{margin-bottom:14px}.hero-logo{width:300px;max-width:70vw;display:block;margin-left:-11px;margin-bottom:22px}.hero h1{font-size:clamp(3.4rem,5.5vw,6rem)}.hero-description{color:#c3cbd0;margin-top:26px;font-size:1.08rem}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:14px 27px;border:1px solid transparent;font-size:.875rem;transition:background .2s}.light{background:var(--text);color:#141a20}.light:hover{background:var(--accent)}.hero .button{margin-top:30px}.hero-bottom{position:absolute;bottom:25px;left:5vw;right:5vw;display:flex;justify-content:space-between;align-items:center;color:#b3bcc4;font-size:.75rem;letter-spacing:.06em}.hero-coordinate{font-size:.75rem}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:45px}.section-heading h2,.platform h2{font-size:clamp(2.7rem,4vw,4.6rem)}.section-heading>p{font-size:1rem;color:var(--muted);padding-bottom:5px}.portals{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portal{position:relative;min-height:530px;border:0;background:#182029;color:white;text-align:left;padding:28px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.portal img,.gallery-item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}.portal:after,.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#00000045 0%,#07101930 25%,#060e16dc 100%)}.portal:hover img,.gallery-item:hover img{transform:scale(1.04)}.professional img{object-position:60%}.social img{object-position:50%}.entertainment img{object-position:74%}.portal-top,.portal-copy{position:relative;z-index:1;display:block}.portal-top{font-size:.75rem;color:#d8dfe3;display:flex;gap:16px;letter-spacing:.12em}.portal-verbs{font-size:clamp(2rem,2.7vw,3.3rem);letter-spacing:-.04em;line-height:1.1;display:block}.portal-description{display:block;margin-top:21px;color:#c4cdd3;font-size:.95rem;line-height:1.6}.portal-link{display:flex;justify-content:space-between;align-items:center;margin-top:32px;padding-top:17px;border-top:1px solid #ffffff40;font-size:.875rem}.portal-link>span{display:none}.platform{border-top:1px solid var(--line);display:grid;grid-template-columns:1.2fr 1fr;gap:10vw;background:var(--surface)}.platform h2 span{color:var(--muted)}.platform-intro>p:last-child{max-width:480px;color:var(--muted);margin-top:30px;font-size:1.05rem}.capabilities>div{position:relative;border-bottom:1px solid var(--line);padding:0 0 30px 42px;margin-bottom:30px}.capabilities>div:last-child{margin-bottom:0}.capabilities span{position:absolute;left:0;top:3px;font-size:.75rem;color:var(--muted)}.capabilities h3{font-size:1.6rem;letter-spacing:-.02em}.capabilities p{font-size:.95rem;color:var(--muted);margin-top:12px;max-width:400px}.gallery-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.gallery-item{position:relative;display:block;width:100%;min-height:290px;overflow:hidden;border:0;background:var(--surface);text-align:left;color:white}.gallery-large{min-height:598px}.gallery-side{display:grid;gap:18px}.gallery-item>span{position:absolute;z-index:1;left:30px;bottom:26px;font-size:1.6rem;line-height:1.25;letter-spacing:-.025em;right:25px}.gallery-item small{display:block;font-size:.75rem;letter-spacing:.12em;margin-bottom:11px;color:#d0d9df}.gallery-large img{object-position:75% center}.vision{background:#dce5e2;color:#162128}.vision .eyebrow{color:#52686a}.vision h2{font-size:clamp(2.7rem,6vw,6.5rem);line-height:1.1}.vision h2 span{color:#637a7b}.vision-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:45px}.vision-mark{font-size:5rem;line-height:1}.vision-bottom p{max-width:460px;color:#415657;font-size:1.05rem}.contact{padding-top:110px;padding-bottom:110px}.contact>div{display:flex;justify-content:space-between;gap:30px;align-items:center}.contact h2{font-size:clamp(2.8rem,5.4vw,5.7rem)}.contact>p:last-child{margin-top:28px;color:var(--muted)}footer.section-wrap{border-top:1px solid var(--line);padding-top:35px;padding-bottom:35px;display:flex;justify-content:space-between;align-items:center;gap:30px}footer p,footer>span{color:var(--muted);font-size:.75rem}dialog{padding:0;border:1px solid #3a444c;max-width:900px;width:calc(100% - 40px);max-height:90svh;background:var(--bg);color:var(--text)}dialog::backdrop{background:#03070bdd;backdrop-filter:blur(8px)}dialog>img{width:100%;height:270px;object-fit:cover}dialog .dialog-content{padding:40px}.dialog-content h2{font-size:clamp(2.2rem,4vw,3.5rem);margin-bottom:20px}.dialog-content>p:not(.eyebrow){color:var(--muted)}.close-dialog{position:absolute;right:15px;top:15px;background:#0b111de0;color:white;border:1px solid #ffffff50;width:44px;height:44px;z-index:2}.detail-items{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin:30px 0}.detail-items>div{padding:17px;background:var(--surface);border-top:1px solid var(--line)}.detail-items h3{font-size:1.1rem;letter-spacing:-.02em}.detail-items p{font-size:.875rem;color:var(--muted);margin-top:8px}#contact-dialog{max-width:640px}form{margin-top:25px;display:grid;gap:17px}label{font-size:.875rem;display:grid;gap:7px}input,select,textarea{width:100%;color:var(--text);background:var(--surface);border:1px solid #49535d;padding:12px;border-radius:0}textarea{resize:vertical}.local-note{font-size:.875rem}#form-result{white-space:pre-wrap;color:var(--accent);font-size:.875rem}body.dialog-open{overflow:hidden}
@media(min-width:1600px){.section-wrap{padding-left:max(5vw,calc((100vw - 1500px)/2));padding-right:max(5vw,calc((100vw - 1500px)/2))}}@media(max-width:1100px){.header nav{gap:16px}.header .brand{width:130px}.portal{padding:22px;min-height:490px}.hero-copy{margin-left:6vw}.hero-logo{width:260px}}@media(max-width:800px){.header{padding:15px 24px}.menu-toggle{display:block;border:1px solid #ffffff50;color:white;background:transparent;padding:8px 14px}.header nav{display:none;position:absolute;top:78px;left:0;right:0;padding:25px;background:#0c1014;flex-direction:column;align-items:stretch;gap:18px}.header nav.open{display:flex}.nav-divider{display:none}.hero{height:90svh;min-height:730px}.hero-copy{margin:110px 24px 95px}.hero-logo{width:240px}.hero h1{font-size:clamp(2.8rem,8vw,4.5rem)}.hero-image{object-position:68%}.hero-shade{background:linear-gradient(90deg,#080e14da,#080e1450),linear-gradient(0deg,var(--bg),transparent 45%)}.hero-bottom{left:24px;right:24px}.hero-coordinate{display:none}.section-wrap{padding:65px 24px}.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.section-heading .eyebrow{margin-bottom:16px}.portals{grid-template-columns:1fr}.portal{min-height:480px;padding:28px}.portal-verbs{font-size:2.7rem}.platform{grid-template-columns:1fr;gap:45px}.gallery-grid{grid-template-columns:1fr}.gallery-large{min-height:460px}.gallery-side{grid-template-columns:1fr 1fr}.gallery-item>span{font-size:1.3rem;left:20px;right:15px}.gallery-item small{font-size:.75rem}.vision h2{font-size:clamp(2.3rem,6.7vw,4rem)}.vision-bottom{gap:30px;align-items:flex-start}.vision-bottom p{font-size:1rem}.contact>div{align-items:flex-start;flex-direction:column}.contact h2{font-size:3.3rem}footer.section-wrap{flex-wrap:wrap;padding:30px 24px}footer p{width:100%;order:3}dialog .dialog-content{padding:28px 22px}.detail-items{grid-template-columns:1fr}}@media(max-width:450px){.hero-logo{width:220px}.hero-description{font-size:1rem}.gallery-side{grid-template-columns:1fr}.vision-mark{display:none}.hero-bottom{font-size:.7rem}.section-heading h2,.platform h2{font-size:2.7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand{mix-blend-mode:screen}

.header{mix-blend-mode:screen}
/* Supplied horizontal wordmark: crop its white margins in the layout,
   preserving both uploaded originals and the previous logo asset. */
.brand{position:relative;width:240px;height:56px;overflow:hidden;flex-shrink:0}
.brand img{position:absolute;top:50%;left:0;transform:translateY(-50%);width:100%;height:auto}
.header .brand{width:240px;height:56px}
.hero-logo{width:clamp(340px,47vw,650px);height:clamp(85px,11vw,145px);max-width:100%;object-fit:cover;object-position:center;margin-left:0;margin-bottom:32px}
.header{gap:28px}
@media(max-width:1100px){.header .brand{width:210px;height:50px}.header nav{gap:14px}.header{padding-left:24px;padding-right:24px}}
@media(max-width:950px) and (min-width:801px){.header nav{gap:11px;font-size:.8rem}.header .brand{width:180px;height:43px}.header{gap:15px}}
@media(max-width:800px){.header .brand{width:230px;height:54px}.header nav{top:85px}.hero-logo{width:min(100%,560px);height:110px;margin-bottom:28px}.hero-copy{max-width:calc(100% - 48px)}}
@media(max-width:450px){.header .brand{width:210px;height:50px}.header{gap:16px}.hero-logo{width:100%;height:78px}.hero-copy .eyebrow{font-size:.7rem}.brand{width:220px;height:52px}}

/* Image focal points keep people visible in compact crops. */
.professional img{object-position:24% 65%}
.social img{object-position:22% 55%}
.entertainment img{object-position:84% 55%}
.gallery-item[data-world="professional"] img{object-position:24% 65%}
.gallery-item[data-world="social"] img{object-position:28% 55%}
.gallery-item[data-world="entertainment"] img{object-position:84% 55%}
#world-dialog[data-world="professional"]>img{object-position:24% 70%}
#world-dialog[data-world="social"]>img{object-position:28% 45%}
#world-dialog[data-world="entertainment"]>img{object-position:84% 56%}
.form-honey{display:none}
.local-note a,.form-service a{text-decoration:underline;text-underline-offset:3px}
.form-service{font-size:.75rem;color:var(--muted)}
.thank-you-page{min-height:100svh;display:grid;place-items:center}
.thank-you-content{max-width:900px}
.thank-you-content .brand{margin-bottom:60px}
.thank-you-content h1{font-size:clamp(2.8rem,6vw,5rem)}
.thank-you-content>p:not(.eyebrow){margin:25px 0;color:var(--muted)}
@media(max-width:800px){.hero-image{object-position:84% center}}
/* Put the longer overlay above the people in these two scenes. */
.professional .portal-copy,.entertainment .portal-copy{position:absolute;top:80px;bottom:28px;left:28px;right:28px;margin:0;display:flex;flex-direction:column}
.professional .portal-link,.entertainment .portal-link{margin-top:auto}
.portal{min-height:560px}
@media(max-width:800px){.portal{min-height:540px}}

@media(max-width:800px){.social img{object-position:26% 55%}}

/* Compact symbol header; retain the full wordmark in the hero. */
.header{padding-top:14px;padding-bottom:14px}
.header .brand{width:90px;height:46px}
.header .brand img{width:146px;max-width:none;left:50%;top:50%;transform:translate(-50%,-50%)}
.hero .button{margin-top:10px}
@media(max-width:800px){
  .header{padding:10px 24px;gap:16px}
  .header .brand{width:76px;height:44px}
  .header .brand img{width:124px}
  .header nav{top:64px}
  .menu-toggle{width:44px;height:44px;padding:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0}
  .menu-toggle span{display:block;width:24px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
  .menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero-copy{margin-top:85px}
}

/* An open mobile menu covers the viewport without blending with hero text. */
@media(max-width:800px){
  body.menu-open{overflow:hidden}
  body.menu-open .header{position:fixed;inset:0 0 auto;mix-blend-mode:normal;background:transparent;isolation:isolate}
  body.menu-open .header::before{content:"";position:fixed;inset:0;z-index:-1;background:rgba(7,18,30,.94)}
  body.menu-open .header nav.open{position:absolute;top:64px;height:calc(100dvh - 64px);overflow-y:auto;background:transparent;padding:24px;gap:20px;font-size:1.1rem}
  body.menu-open .hero-copy,body.menu-open .hero-bottom{visibility:hidden}
}

/* Display the supplied artwork directly, cropping only its layout window. */
.logo-crop{position:relative;display:block;aspect-ratio:1260/245;width:100%;overflow:hidden}
.logo-crop img,.brand .logo-crop img{position:absolute;width:114.920635%;max-width:none;height:auto;left:-8.730159%;top:-81.632653%;transform:none;filter:invert(1);mix-blend-mode:screen}
.logo-crop.logo-icon{aspect-ratio:390/220}
.logo-crop.logo-icon img{width:371.282051%;left:-14.102564%;top:-249.090909%}
.brand,.header .brand{display:block;mix-blend-mode:screen}
.header .brand{width:82px;height:auto;overflow:visible}
.hero-logo{width:clamp(340px,47vw,650px);height:auto;filter:none;mix-blend-mode:screen;margin:0 0 32px;max-width:100%}
footer .brand,.thank-you-content .brand{width:240px;height:auto;overflow:visible}
@media(max-width:800px){.header .brand{width:76px}.hero-logo{width:min(100%,560px);height:auto;margin-bottom:28px}}
@media(max-width:450px){.hero-logo{width:100%;height:auto}}

.vision-mark.logo-crop{width:140px;flex:0 0 140px;font-size:initial;mix-blend-mode:multiply}
.vision-mark.logo-crop img{filter:none;mix-blend-mode:multiply}
