/* Stronger colour direction and a distinct, accessible text-motion layer. */
:root {
  --bg: #050509;
  --panel: #0e0d19;
  --ink: #ffffff;
  --muted: #c2bdd0;
  --purple: #ad7bff;
  --cyan: #36e4ed;
  --border: rgba(185,162,255,.23);
}
body:after { opacity: .012; }
.header { position:fixed; transition:background .35s,backdrop-filter .35s; }
.header.scrolled { background:rgba(5,5,9,.92); backdrop-filter:blur(16px); border-color:rgba(173,123,255,.23); }
.header nav a { color:#eee9fa; }
.header .wordmark { color:white; }
.nav-contact { border-color:#8c50ff; background:#7129e5; box-shadow:0 0 28px #7733ed26; font-weight:600; }
.nav-contact:hover { background:#8741fa; }
.quick-motion { background:none; border:0; padding:10px 0 10px 15px; font-size:12px; color:#d6c9f0; white-space:nowrap; }
.hero { background:#050509; }
.hero-grid { z-index:0; opacity:1; background:linear-gradient(90deg,transparent 49.9%,#a679ff15 50%,transparent 50.1%),radial-gradient(ellipse at 78% 35%,#7734f85c,transparent 54%),radial-gradient(ellipse at 100% 95%,#005f734d,transparent 45%); }
.hero-grid:after { content:''; position:absolute; inset:15% 0 0 40%; background:radial-gradient(ellipse,#6226e72b,transparent 68%); animation:light-drift 9s ease-in-out infinite alternate; }
.hero-topline { position:relative; z-index:2; color:#cac2dd; }
.hero-copy { width:64%; margin-top:9vh; }
.hero-copy .eyebrow { color:#ccb3ff; }
.hero h1 { font-weight:650; letter-spacing:-.067em; font-size:clamp(74px,8.9vw,145px); text-shadow:0 5px 35px #0005; }
.hero h1 em { color:#b484ff; font-family:'Manrope',Arial,sans-serif; font-weight:650; font-style:normal; letter-spacing:-.055em; }
.hero-description { color:#f1edf9; }
.hero-description>span { color:#c9bfd9; }
.hero .text-link { border-bottom:0; background:#7827eb; border-radius:2px; padding:16px 24px; color:white; font-weight:600; box-shadow:0 8px 40px #7626e536; transition:background .25s,box-shadow .25s; }
.hero .text-link:hover { background:#913cff; box-shadow:0 8px 48px #7626e570; }
.hero-portrait { right:6%; top:23%; width:37%; height:65%; transform:rotate(0); border:1px solid #a279ff7a; box-shadow:16px 16px 0 #4b188470,0 0 80px #732ae52b; translate:0 var(--hero-drift,0px); }
.hero-portrait img,.hero-portrait:hover img { filter:saturate(1.05) contrast(1.04); transform:scale(1.015); }
.hero-portrait:after { background:linear-gradient(180deg,transparent 55%,#090313ed); }
.hero-portrait figcaption { left:25px; bottom:25px; }
.hero-portrait figcaption span { font-size:10px; color:#ddd2f5; }
.hero-portrait figcaption strong { font-size:23px; }
.hero-watermark { z-index:0; color:#8e5bdd0b; -webkit-text-stroke:1px #9d6bf83b; translate:var(--hero-word-drift,0px) 0; }
.hero-bottom { z-index:4; color:#c4b7d8; }
.hero-bottom a span { display:inline-block; animation:scroll-cue 2.4s ease-in-out infinite; }
.eyebrow { color:#c7b5e8; }
.statement { background:#411aa7; position:relative; overflow:hidden; }
.statement:before { content:''; position:absolute; height:2px; top:0; left:0; right:0; background:linear-gradient(90deg,#b16fff,#3cdef9); }
.statement h2 { font-weight:550; }
.statement h2>span { color:inherit; }
.statement h2 .motion-token { transition:color .12s linear; }
.statement .eyebrow,.statement .chapter-marker { color:#e1d5ff; }
.statement-bottom p { color:#e6ddfa; }
.section-heading h2,.team h2 { font-weight:550; }
.venture-row { position:relative; }
.venture-row:hover { background:#6d2cda17; }
.venture-name>span { color:#ad7bff; }
.venture-row:first-child .venture-name>span { color:#729dff; }
.venture-row:last-child .venture-name>span { color:#36e4ed; }
.venture-name small,.venture-number,.venture-row>p { color:#c4bdd2; }
.venture-tag { color:#d7c7f8; }
.round-arrow { border-color:#8451cf; background:#56249725; }
.venture-row:hover .round-arrow { color:white; background:#7827eb; }
.infrastructure { background:#081d30; border-top:1px solid #26c4e349; border-bottom:1px solid #26c4e326; }
.infra-copy>p:not(.eyebrow) { color:#c4d8e5; }
.locations span { color:#80d9ec; }
.infra-image { box-shadow:14px 14px 0 #0a4361; }
.infra-image img { filter:saturate(1.05) contrast(1.03); }
.infra-image figcaption { color:white; }
.expertise-item { transition:background .4s; }
.expertise-item:hover { background:#27144533; }
.expertise-item>span { color:#b78eff; }
.expertise-item h3 { font-weight:550; }
.tags span { color:#dbceef; border-color:#8954c650; }
.team-photo img { filter:saturate(1) contrast(1.035); }
.team-photo { border:1px solid #7860966b; }
.stats strong { color:#b68aff; }
.stats>div:last-child strong { color:var(--cyan); }
.belief { background:#35107b; border-color:#9262dc; }
.belief h2 em { color:#c7a5ff; }
.belief-note { color:#e1d4f3; }
.signature { color:#fff; }
.contact { background:radial-gradient(ellipse at 0 80%,#2f104638,transparent 55%),#050509; }
.contact h2 em { color:#b283ff; }
.contact-form { background:#100c1c; border:1px solid #7f42c74a; padding:32px; }
.send-button { background:#7629df; color:white; box-shadow:0 5px 25px #591dc132; }
.send-button:hover { background:#8b3af1; }
.contact-form input,.contact-form select,.contact-form textarea { color:white; border-color:#9e7ac563; font-size:16px; }
.contact-form input::placeholder,.contact-form textarea::placeholder { color:#b7a9c9; }
.form-note { color:#c0b4d1; }
.email-link:hover { color:var(--purple); }
.film-stage { --film-accent:#ad7bff; }
.film-photo img { filter:saturate(1.05) contrast(1.06); }
.film-shade { background:linear-gradient(90deg,#030308f5 0%,#030308e6 25%,#03030877 51%,#03030808 77%),linear-gradient(0deg,#030308e8,transparent 38%); }
.film-meta { top:112px; color:#eee3ff; }
.film-meta:after { content:''; height:2px; position:absolute; left:0; right:0; top:38px; background:var(--film-accent); opacity:.8; transform-origin:left; transform:scaleX(var(--scene-progress,0)); }
.film-text { top:51%; }
.film-year { color:var(--film-accent); -webkit-text-stroke:0; opacity:.85; font-size:clamp(80px,11vw,165px); font-weight:650; }
.film-text h2 { font-weight:600; }
.film-text>p:last-child { color:#e0dce9; }
.film-text h2 .motion-word { padding-bottom:.13em; margin-bottom:-.13em; }
.film-controls { background:#05050975; border-top:1px solid #b894ff2b; padding-top:15px; }
.chapter-tabs button { color:#c7bfd5; }
.chapter-tabs button.active { color:var(--film-accent); }
.intro>div span { color:#a968ff; }
.intro { background:#050509; }
.reading-progress { background:linear-gradient(90deg,#8c30ff,#40eaff); box-shadow:0 0 12px #aa55ff80; }
.motion-word { display:inline-block; vertical-align:top; overflow:clip; padding-top:.08em; padding-bottom:.16em; margin-top:-.08em; margin-bottom:-.16em; white-space:nowrap; }
.motion-token { display:inline-block; transform-origin:0 100%; }
#statement-title .motion-word { overflow:visible; }
.motion-off .motion-token { transform:none!important; opacity:1!important; }
.motion-off .hero-portrait,.motion-off .hero-watermark { translate:none!important; }
.header .wordmark span { color:#ad7bff; }
@keyframes light-drift { from{transform:translate(-4%,-3%) scale(1)} to{transform:translate(4%,4%) scale(1.15)} }
@keyframes scroll-cue { 0%,100%{transform:translateY(0)} 50%{transform:translateY(6px)} }
@media(min-width:1600px) { .hero-copy{margin-top:12vh} }
@media(max-width:1100px) {
  .hero-copy{margin-top:100px}
  .hero-portrait{width:40%;right:5%;height:57%;top:29%}
  .header nav{gap:20px}
  .header{gap:15px}
  .nav-contact span{margin-left:12px}
  .contact-form{padding:25px}
}
@media(max-width:700px) {
  .header{gap:8px;padding:0 20px;height:76px;background:#050509a6;backdrop-filter:blur(12px)}
  .header .wordmark{font-size:27px}
  .nav-contact{margin-right:0;margin-left:auto;padding:9px 11px}
  .nav-contact span{margin-left:6px}
  .quick-motion{font-size:10px;padding:10px 4px}
  .header nav{background:#120922}
  .hero-copy{margin-top:44px;width:100%}
  .hero h1{font-size:clamp(58px,15vw,102px);line-height:1.07}
  .hero-portrait{position:relative;right:auto;top:auto;width:80%;height:370px;margin:44px 8px 22px auto;box-shadow:10px 10px 0 #4b188499;translate:none}
  .hero-portrait figcaption span{font-size:9px}
  .hero-portrait figcaption strong{font-size:21px}
  .hero-grid{background:radial-gradient(ellipse at 80% 45%,#6022c754,transparent 65%)}
  .hero-description{font-size:15px}
  .hero-bottom{font-size:10px}
  .hero .text-link{font-size:14px;padding:14px 20px}
  .statement h2{font-size:clamp(30px,7.25vw,49px)}
  .film-meta{top:106px;font-size:10px}
  .film-text{top:49%}
  .film-year{font-size:83px;margin-bottom:20px}
  .film-text h2{font-size:38px;line-height:1.15}
  .film-shade{background:linear-gradient(90deg,#030308e6,#03030880),linear-gradient(0deg,#030308f5,transparent 75%)}
  .film-text>p:last-child{font-size:15px}
  .film-controls{bottom:22px}
  .chapter-tabs button span{font-size:10px}
  .infra-image{box-shadow:8px 8px 0 #0a4361}
  .contact-form{padding:25px 20px}
  .contact h2{font-size:clamp(45px,13vw,61px)}
  .contact-star{font-size:40px;margin-left:10px}
  .motion-word{padding-bottom:.13em;margin-bottom:-.13em}
}
@media(max-width:380px) {
  .header .wordmark{font-size:23px}
  .nav-contact{font-size:11px}
  .quick-motion{font-size:9px}
  .film-text h2{font-size:33px}
  .film-text>p:last-child{font-size:14px;line-height:1.6}
}
@media(prefers-reduced-motion:reduce) {
  .hero-portrait,.hero-watermark{translate:none!important}
  .motion-token{transform:none!important;opacity:1!important}
}
