:root{--bg:#090b16;--surface:#171b2e;--text:#f8f9ff;--muted:#bfc5d5;--accent:#ffbc57}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.65 Arial,sans-serif}a{color:inherit}nav{background:#0b0d1e;position:sticky;top:0;z-index:5;border-bottom:1px solid #ffffff24}.wrap{max-width:1160px;margin:auto;padding:0 22px}.bar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{font-weight:900;font-size:22px;text-decoration:none;letter-spacing:.05em}.brand span,.eyebrow{color:var(--accent)}.menu{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.menu a{text-decoration:none;font-size:14px}.btn{display:inline-block;border:0;border-radius:7px;background:var(--accent);color:#101422!important;text-decoration:none;font-weight:800;padding:13px 20px;cursor:pointer}.btn.alt{background:transparent;border:1px solid #8490a9;color:white!important}.hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden;background:#171b2e}.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#090b16ee,#090b16a8 52%,#090b1644)}.hero>.wrap{position:relative;z-index:2;width:100%}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:900}h1{font-size:clamp(42px,6.5vw,82px);line-height:1.08;letter-spacing:-.05em;max-width:870px;margin:20px 0}h2{font-size:clamp(30px,4vw,51px);line-height:1.12;letter-spacing:-.035em;margin:12px 0 22px}h3{line-height:1.22}p{color:var(--muted)}.lead{font-size:19px;max-width:730px}.actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:25px}.section{padding:78px 0}.section.alt{background:#101425}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:30px}.card{background:var(--surface);border:1px solid #ffffff29;border-radius:12px;overflow:hidden}.card img{width:100%;aspect-ratio:16/10;object-fit:cover}.card .inner{padding:24px}.card h3{font-size:22px;margin:5px 0}.card a{color:#ffce85}.pill{display:inline-block;padding:5px 10px;border-radius:18px;background:#ffffff14;font-size:12px;color:#d3d9ea}.split{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:40px}.split img{width:100%;border-radius:14px}.video{width:100%;aspect-ratio:16/9;border-radius:12px;background:#000}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:6px;margin:13px 0}label{font-size:13px;font-weight:700}input,select,textarea{font:inherit;background:#1d243a;color:white;border:1px solid #56617a;border-radius:7px;padding:12px;width:100%}textarea{min-height:105px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent)}.contact{background:#1b2640;padding:32px;border-radius:14px}footer{border-top:1px solid #ffffff27;padding:30px 0;color:#bdc4d2;font-size:14px}footer a{color:#ffd18a}.space{margin-top:24px}a:focus-visible,button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}@media(max-width:800px){.cards,.split,.formgrid{grid-template-columns:1fr}.menu{gap:10px}.menu a{font-size:12px}.section{padding:55px 0}.hero{min-height:580px}.contact{padding:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Cinematic hero image animation with native MP4 transition */
.cinematic-hero{isolation:isolate;overflow:hidden;background:#090b16}
.cinematic-hero .hero-art{position:absolute;inset:-5%;z-index:0;background:url('/assets/solomon1.jpg') center 43%/cover no-repeat;animation:icon-kenburns 22s ease-in-out infinite alternate;transform-origin:54% 46%;filter:saturate(1.14) contrast(1.04)}
.cinematic-hero .hero-glow{position:absolute;inset:0;z-index:1;background:radial-gradient(ellipse at 78% 27%,#ffb95129,transparent 54%);animation:icon-glow 7s ease-in-out infinite alternate;pointer-events:none}
.cinematic-hero video{z-index:0;opacity:0;transition:opacity 1.8s ease;filter:saturate(1.08)}
.cinematic-hero.reel-ready video{opacity:1}
.cinematic-hero:after{z-index:2;background:linear-gradient(90deg,#080a16ec 2%,#080a16c4 43%,#080a164d 88%),linear-gradient(0deg,#080a1675,transparent 34%)}
.cinematic-hero>.wrap{z-index:3}
@keyframes icon-kenburns{from{transform:scale(1) translate3d(-.7%,0,0)}to{transform:scale(1.14) translate3d(1.4%,-1.5%,0)}}
@keyframes icon-glow{from{opacity:.45}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.cinematic-hero .hero-art,.cinematic-hero .hero-glow{animation:none}.cinematic-hero video{display:none}}

/* Live portal video: preserve full ring and cloaked character, no artificial zoom */
.cinematic-hero .hero-art{inset:0;background:#0b111c;animation:none;filter:none}
.cinematic-hero .hero-glow{opacity:.15;animation:none}
.cinematic-hero video{object-fit:contain;background:#0b111c;filter:none}
.cinematic-hero:after{background:linear-gradient(90deg,#070c18ae 0%,#070c1870 34%,transparent 73%)}
@media(max-width:800px){.cinematic-hero video{object-fit:cover;object-position:center}}
@media(prefers-reduced-motion:reduce){.cinematic-hero video{display:block;opacity:1}}

/* Full browser viewport cinematic hero: 2026-11-01 */
body:has(.portal-viewport) nav{position:absolute;top:0;left:0;right:0;width:100%;z-index:30;background:linear-gradient(180deg,rgba(5,9,21,.65),transparent)!important;border:0!important}
.portal-viewport{position:relative;width:100%;max-width:none;height:100vh;height:100svh;min-height:0;display:flex;align-items:center;overflow:hidden;background:#0b111c}
.portal-viewport video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;opacity:1;filter:none;transition:none;background:#0b111c}
.portal-viewport .hero-art{display:none}
.portal-viewport .hero-glow{display:none}
.portal-viewport:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,8,18,.72),rgba(4,8,18,.33) 40%,transparent 80%)}
.portal-viewport>.wrap{z-index:2;width:100%;padding-top:90px;padding-bottom:35px}
.portal-viewport h1{max-width:740px;font-size:clamp(43px,6vw,85px)}
@media(max-width:800px){.portal-viewport{height:100svh;min-height:0}.portal-viewport video{object-fit:cover;object-position:54% 50%}.portal-viewport>.wrap{padding-top:105px}.portal-viewport h1{font-size:clamp(38px,10vw,62px)}}
@media(prefers-reduced-motion:reduce){.portal-viewport video{display:block;opacity:1}}
