/* 110KMPS / SIGNAL — visual skin; loaded after the foundational Gutenberg theme CSS.
   The brand stage is vector/CSS-driven by default; no remote assets or trackers. */
:root { color-scheme: dark; }
body { --kmps-lime:#C5FF79; --kmps-ink:#080B10; --kmps-line:rgba(202,221,233,.14); --kmps-text:#F5F7F5; background:#080B10; }
::selection { color:#080B10; background:#C5FF79; }
.container--wide { max-width: 1500px; }
.site-header,.site-header.is-scrolled { background:rgba(8,11,16,.95); border-bottom:1px solid var(--kmps-line); box-shadow:none; backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); }
.site-header__inner { gap:1.5rem; }
.site-brand__wordmark { color:#F5F7F5; font-weight:850; font-size:clamp(1.5rem,1.8vw,2rem); letter-spacing:-.095em; }
.site-brand__wordmark::after { content:none; display:none; }
.site-brand__wordmark:hover { color:var(--kmps-lime); }
.site-nav__menu { gap:.3rem clamp(.6rem,1.65vw,2rem); font-size:.78rem; font-weight:730; letter-spacing:.045em; text-transform:uppercase; }
.site-nav__menu a { color:#C8D1D7; }
.site-nav__menu a:hover,.site-nav__menu a[aria-current],.site-nav__menu .current-menu-item>a { color:var(--kmps-lime); }
/* Homepage hero */
.kmps-hero { position:relative; min-height:auto; background:radial-gradient(ellipse 70% 95% at 94% 37%,rgba(78,106,97,.12),transparent 71%),#080B10; overflow:hidden; border-bottom:0; }
.kmps-hero::before { content:""; position:absolute; inset:0; width:auto; background-image:linear-gradient(rgba(151,196,194,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(151,196,194,.025) 1px,transparent 1px); background-size:84px 84px; border:0; pointer-events:none; }
.hero__aurora { position:absolute; top:-26rem; left:34%; width:55vw; height:55vw; border-radius:50%; background:radial-gradient(circle,rgba(157,238,171,.09),transparent 65%); filter:blur(24px); pointer-events:none; }
.kmps-hero .hero__inner { display:block; padding-top:1.15rem; padding-bottom:0; }
.hero__topline,.hero__bottomline { display:flex; justify-content:space-between; align-items:center; gap:1rem; color:#7F969A; font-size:.66rem; font-weight:750; letter-spacing:.16em; }
.hero__topline { padding-block:1rem; border-bottom:1px solid var(--kmps-line); }
.hero__topline >span:first-child,.signal-stage__header>span:first-child { display:flex; align-items:center; gap:.65rem; }
.kmps-pulse { display:inline-block; flex:none; width:.43rem; height:.43rem; background:var(--kmps-lime); border-radius:100%; box-shadow:0 0 0 4px rgba(197,255,121,.1),0 0 16px rgba(197,255,121,.4); }
.hero__grid { display:grid; grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr); align-items:center; gap:clamp(2rem,4vw,5rem); min-height:clamp(660px,76svh,900px); padding-block:clamp(3rem,6vw,6.7rem); }
.kmps-hero .hero__content { max-width:740px; min-width:0; align-items:flex-start; }
.hero__eyebrow { color:var(--kmps-lime); font-size:.68rem; font-weight:800; letter-spacing:.18em; line-height:1.8; text-transform:uppercase; margin-bottom:clamp(1.75rem,3.8vw,4rem); }
.kmps-hero .hero__title { max-width:11ch; font-size:clamp(4.2rem,6.6vw,8.2rem); line-height:.91; letter-spacing:-.085em; font-weight:820; overflow-wrap:normal; word-break:normal; text-wrap:balance; }
.kmps-hero .hero__title em { color:var(--kmps-lime); display:inline; font-style:normal; }
.kmps-hero .hero__copy { display:block; margin-top:clamp(1.5rem,3vw,3rem); max-width:540px; }
.kmps-hero .hero__statement { max-width:32ch; font-size:clamp(1.25rem,1.8vw,1.65rem); line-height:1.25; letter-spacing:-.035em; font-weight:570; }
.kmps-hero .hero__text { max-width:55ch; color:#A8B6BC; font-size:.96rem; line-height:1.75; margin-top:1.35rem; }
.kmps-hero .hero__actions { margin-top:clamp(1.7rem,2.7vw,3.2rem); gap:.9rem 1.35rem; }
.kmps-hero .hero__primary { background:var(--kmps-lime); border-color:var(--kmps-lime); color:#09120A; font-weight:820; min-height:3.45rem; padding-inline:1.4rem; border-radius:3px; text-transform:uppercase; font-size:.73rem; letter-spacing:.085em; }
.kmps-hero .hero__primary:hover { color:#09120A; background:#DAFFAA; border-color:#DAFFAA; }
.kmps-hero .hero__secondary { color:#E7EDEF; font-size:.78rem; font-weight:720; letter-spacing:.04em; }
.kmps-hero .hero__secondary:hover { color:var(--kmps-lime); }
.hero__meta { display:flex; flex-wrap:wrap; gap:clamp(.7rem,2vw,2.3rem); margin-top:clamp(2rem,4vw,4rem); color:#64747D; font-size:.65rem; font-weight:750; letter-spacing:.1em; }
.kmps-hero .hero__visual { min-width:0; width:100%; transform:none; position:relative; }
.signal-stage { position:relative; isolation:isolate; width:100%; padding:10px; border:1px solid rgba(201,227,229,.23); border-radius:17px; background:linear-gradient(135deg,#242F33,#0D131A 34%,#111B22 84%); box-shadow:0 30px 90px rgba(0,0,0,.45),0 0 70px rgba(166,242,194,.04); }
.signal-stage::after { position:absolute; z-index:-1; content:""; width:70%; height:65%; right:-10%; bottom:-12%; background:rgba(169,242,207,.13); filter:blur(75px); pointer-events:none; }
.signal-stage__header,.signal-stage__footer { display:flex; justify-content:space-between; align-items:center; gap:.7rem; min-height:38px; padding-inline:.85rem; color:#8F9FA4; font-size:.57rem; font-weight:790; letter-spacing:.12em; white-space:nowrap; }
.signal-stage__header .kmps-pulse { width:.32rem; height:.32rem; }
.signal-stage__screen { isolation:isolate; position:relative; overflow:hidden; aspect-ratio:1 / 1.02; border:1px solid rgba(175,204,210,.16); border-radius:8px; background:#122223; }
.signal-stage__screen::after { content:""; position:absolute; z-index:5; inset:0; pointer-events:none; background:linear-gradient(to bottom,transparent 55%,rgba(0,0,0,.2)),repeating-linear-gradient(to bottom,transparent 0px,transparent 3px,rgba(0,0,0,.055) 4px); opacity:.65; }
.signal-stage__video { position:absolute; z-index:1; inset:0; display:block; width:100%; height:100%; object-fit:cover; }
.signal-stage__grid { position:absolute; z-index:2; inset:0; background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:44px 44px; opacity:.33; pointer-events:none; }
.signal-scene { position:absolute; z-index:3; inset:0; display:flex; flex-direction:column; justify-content:space-between; padding:clamp(1.1rem,2.25vw,2.5rem); overflow:hidden; color:#F7FBF8; }
.signal-scene--cricket { background:radial-gradient(ellipse 130% 75% at 90% 40%,rgba(148,205,89,.24),transparent 48%),linear-gradient(139deg,rgba(11,52,42,.96),rgba(8,23,29,.9) 73%); }
.signal-scene--cinema { background:radial-gradient(ellipse 100% 95% at 89% 78%,rgba(252,114,73,.31),transparent 60%),linear-gradient(136deg,rgba(37,27,55,.97),rgba(19,18,33,.91) 80%); }
.signal-stage--video .signal-scene--cricket { background:linear-gradient(120deg,rgba(7,25,22,.74),rgba(7,25,22,.23)); }
.signal-stage--video .signal-scene--cinema { background:linear-gradient(120deg,rgba(29,15,36,.76),rgba(29,15,36,.25)); }
.signal-scene__corner,.signal-scene__bottom { position:relative; z-index:3; display:flex; justify-content:space-between; gap:1rem; color:#C8D3C7; font-size:clamp(.5rem,.68vw,.65rem); font-weight:800; letter-spacing:.14em; }
.signal-scene__corner span { color:var(--kmps-lime); }
.signal-scene__main { position:relative; z-index:3; display:flex; flex-direction:column; align-items:flex-start; gap:1.1rem; padding-block:1rem; }
.signal-scene__pill { display:inline-flex; padding:.44rem .65rem; border:1px solid rgba(237,252,241,.45); color:#EAF1E8; font-size:clamp(.58rem,.72vw,.72rem); font-weight:780; letter-spacing:.12em; }
.signal-scene__main strong { font-size:clamp(2.1rem,3.4vw,4.4rem); line-height:.94; letter-spacing:-.07em; font-weight:850; }
.signal-scene__subtitle { max-width:30ch; color:#E4EFE8; font-size:clamp(.73rem,.88vw,.93rem); line-height:1.45; }
.signal-scene__orb { position:absolute; z-index:-1; width:75%; aspect-ratio:1; top:5%; right:-21%; border-radius:50%; border:2px solid rgba(197,255,121,.5); box-shadow:inset 0 0 0 38px rgba(197,255,121,.035),inset 0 0 0 39px rgba(197,255,121,.12),inset 0 0 0 98px rgba(197,255,121,.035),inset 0 0 0 99px rgba(197,255,121,.12),0 0 90px rgba(188,240,106,.16); transform:rotate(-12deg); }
.signal-scene__orb::before { content:""; position:absolute; width:110%; height:3px; background:linear-gradient(90deg,transparent,#C5FF79,transparent); top:49%; left:-5%; transform:rotate(-31deg); }
.signal-scene__frames { position:absolute; z-index:-1; inset:16% -15% auto 26%; height:68%; transform:rotate(-23deg); display:flex; gap:3%; }
.signal-scene__frames i { flex:1; border:2px solid rgba(253,163,124,.5); background:linear-gradient(90deg,rgba(250,154,109,.11),rgba(247,126,91,.03)); box-shadow:inset 0 0 25px rgba(249,128,88,.07); }
.signal-stage__footer { min-height:35px; color:#87999E; }
.signal-stage__progress { height:2px; flex:1; max-width:32%; background:#374847; overflow:hidden; }
.signal-stage__progress i { display:block; height:100%; width:35%; background:var(--kmps-lime); }
.hero__visual-caption { display:flex; justify-content:flex-end; margin-top:1rem; color:#788C91; font-size:.6rem; font-weight:750; letter-spacing:.16em; }
.hero__visual-caption span { color:var(--kmps-lime); padding:0 .7rem; }
.hero__bottomline { padding-block:1.4rem; border-top:1px solid var(--kmps-line); }
.hero__scroll-arrow { color:var(--kmps-lime); font-size:1rem; padding-left:.35rem; }
.focus-strip { background:#151C22; border-top:1px solid #2E383D; border-bottom:1px solid #2E383D; }
.focus-strip__inner { display:flex; justify-content:space-between; align-items:center; gap:2rem; min-height:86px; }
.focus-strip__label { color:var(--kmps-lime); font-size:.67rem; font-weight:800; letter-spacing:.17em; white-space:nowrap; }
.focus-strip__list { display:flex; justify-content:space-around; flex:1; padding:0; margin:0; list-style:none; }
.focus-strip__item { display:flex; gap:.9rem; align-items:center; color:#D4DFDD; font-size:.68rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.focus-strip__index { color:var(--kmps-lime); font-size:.67rem; }
.focus-strip__tail { color:var(--kmps-lime); font-size:1.5rem; }
/* Product portfolio */
.brands { background:#0B1016; color:#F5F7F5; padding-block:clamp(5rem,9vw,10rem); }
.brands>.container { max-width:1500px; }
.brands__head { align-items:end; gap:2rem; margin-bottom:clamp(2rem,4vw,4rem); }
.brands__head::before { content:"/ PORTFOLIO 001 — 002"; display:block; grid-column:1/-1; color:var(--kmps-lime); font-size:.67rem; font-weight:770; letter-spacing:.18em; margin-bottom:1.7rem; }
.brands__title { font-size:clamp(3rem,5.8vw,6.75rem); line-height:.94; font-weight:790; letter-spacing:-.065em; max-width:13ch; }
.brands__intro { max-width:30rem; color:#9DAFB6; font-size:clamp(.95rem,1.25vw,1.16rem); line-height:1.7; }
.brand-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(1rem,2vw,2rem); }
.brands .brand-card { display:flex; flex-direction:column; min-height:clamp(350px,36vw,490px); padding:clamp(1.35rem,2.75vw,3rem); background:#17242B; border:1px solid #3A4A4B; color:#F9FBF7; border-radius:5px; overflow:hidden; isolation:isolate; box-shadow:none; }
.brands .brand-card--extraslip { background:radial-gradient(ellipse 70% 120% at 90% 32%,rgba(223,185,58,.24),transparent 75%),linear-gradient(135deg,#2B2A20,#181F21); border-color:rgba(248,204,74,.27); }
.brands .brand-card--retakeone { background:radial-gradient(ellipse 75% 120% at 95% 25%,rgba(254,123,73,.25),transparent 75%),linear-gradient(135deg,#31232A,#1D2026); border-color:rgba(252,126,88,.25); }
.brands .brand-card::before { position:absolute; content:""; z-index:-1; width:58%; height:82%; top:15%; right:-18%; border:1px solid rgba(255,255,255,.14); border-radius:50%; box-shadow:0 0 0 45px rgba(255,255,255,.023),0 0 0 47px rgba(255,255,255,.08),0 0 0 97px rgba(255,255,255,.02),0 0 0 99px rgba(255,255,255,.05); transform:rotate(-24deg); opacity:1; }
.brands .brand-card--retakeone::before { border-radius:5px; transform:rotate(25deg); top:10%; width:50%; }
.brands .brand-card::after { position:absolute; content:""; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.22),transparent); pointer-events:none; }
.brands .brand-card__top { margin-bottom:auto; }
.brands .brand-card__num { color:#CFD6D5; font-size:.68rem; font-weight:760; letter-spacing:.15em; }
.brands .brand-card__arrow { display:grid; place-items:center; width:2.9rem; height:2.9rem; border:1px solid rgba(255,255,255,.32); border-radius:50%; color:white; }
.brands .brand-card__category { color:#D8E0DC; font-size:.68rem; letter-spacing:.18em; font-weight:800; }
.brands .brand-card__name { margin-block:.65rem 1rem; font-size:clamp(2.9rem,4.8vw,5.7rem); font-weight:820; line-height:1; letter-spacing:-.07em; }
.brands .brand-card__summary { color:#C9D3CE; max-width:37ch; font-size:clamp(.95rem,1.18vw,1.1rem); line-height:1.55; }
.brands .brand-card__site { margin-top:clamp(1.5rem,3vw,2.75rem); padding-top:1.2rem; border-top:1px solid rgba(240,250,242,.27); font-size:.78rem; font-weight:750; }
.brands .brand-card--extraslip .brand-card__site .icon { color:#F4CB56; }
.brands .brand-card--retakeone .brand-card__site .icon { color:#FA986F; }
.brands .brand-card:hover { transform:translateY(-5px); box-shadow:0 26px 75px rgba(0,0,0,.28); }
.brands .brand-card__link:hover { color:inherit; }
/* Publisher philosophy */
.statement { padding-block:clamp(5rem,8vw,9rem); background:var(--kmps-lime); color:#101912; }
.statement__grid { align-items:center; }
.statement__title { font-size:clamp(2.8rem,5.4vw,6rem); line-height:1; font-weight:820; letter-spacing:-.065em; }
.statement__text { color:#243329; font-size:clamp(1.05rem,1.45vw,1.35rem); line-height:1.7; }
.intro { background:#111821; color:#F5F7F5; padding-block:clamp(5rem,8vw,9rem); }
.intro__heading { font-size:clamp(2.8rem,4.8vw,5.6rem); line-height:1.02; font-weight:780; letter-spacing:-.065em; }
.intro__text { color:#BBC7C8; }
.intro .link-arrow { color:var(--kmps-lime); }
/* Supporting pages and editorial sections */
.section.is-surface:not(.statement) { background:#151D26; }
.section.is-light { background:#F5F7F5; color:#0A1016; }
.page-hero { background:linear-gradient(120deg,#0D171D,#101A20); }
.site-footer { background:#080B10; border-top:1px solid var(--kmps-line); }
.site-footer__wordmark { font-weight:870; font-size:clamp(2.4rem,5vw,5.5rem); letter-spacing:-.09em; line-height:1; }
.site-footer__summary { max-width:34ch; }
.site-footer__heading { color:var(--kmps-lime); font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; }
.site-footer__bottom-strip { border-top:1px solid var(--kmps-line); }
/* Motion stays purely decorative and is disabled for reduced-motion users. */
@keyframes kmps-cricket { 0%,43% {opacity:1;visibility:visible} 50%,93% {opacity:0;visibility:hidden} 100% {opacity:1;visibility:visible} }
@keyframes kmps-cinema { 0%,43% {opacity:0;visibility:hidden} 50%,93% {opacity:1;visibility:visible} 100% {opacity:0;visibility:hidden} }
@keyframes kmps-glide { from {transform:translate(-3%,2%) rotate(-12deg)} to {transform:translate(7%,-6%) rotate(8deg)} }
@keyframes kmps-progress { from {transform:translateX(-105%)} to {transform:translateX(390%)} }
@media (prefers-reduced-motion:no-preference) {
 .signal-scene--cricket { animation:kmps-cricket 12s steps(1,end) infinite; }
 .signal-scene--cinema { animation:kmps-cinema 12s steps(1,end) infinite; opacity:0; }
 .signal-scene__orb { animation:kmps-glide 11s ease-in-out alternate infinite; }
 .signal-stage__progress i { animation:kmps-progress 12s linear infinite; }
}
@media (prefers-reduced-motion:reduce) { .signal-scene--cinema {display:none} .signal-scene--cricket {opacity:1} .brands .brand-card:hover { transform:none; } }
@media (max-width:76rem) {
 .hero__grid { gap:2rem; min-height:620px; }
 .kmps-hero .hero__title { font-size:clamp(3.7rem,6.2vw,6.5rem); }
 .signal-scene__main strong { font-size:clamp(2rem,3.4vw,3.3rem); }
}
@media (max-width:59.99rem) {
 .site-nav__menu { font-size:clamp(1.7rem,6vw,2.5rem); }
 .hero__grid { grid-template-columns:1fr; min-height:0; gap:3.25rem; padding-block:4rem 3rem; }
 .hero__visual { max-width:680px; margin:auto; }
 .signal-stage__screen { aspect-ratio:1.15/1; }
 .kmps-hero .hero__title { max-width:12ch; font-size:clamp(4rem,11vw,7rem); }
 .signal-scene__main strong { font-size:clamp(2.6rem,7vw,5rem); }
 .hero__topline-edition,.hero__bottomline>span:last-child {display:none;}
 .focus-strip__inner {flex-wrap:wrap; padding-block:1.2rem; gap:.85rem;}
 .focus-strip__list {justify-content:flex-start; gap:1.5rem; flex-wrap:wrap;}
 .focus-strip__tail {display:none;}
 .brands__head {display:block;}
 .brands__intro {margin-top:1rem;}
}
@media (max-width:40rem) {
 .hero__grid { padding-top:3rem; }
 .kmps-hero .hero__title { font-size:clamp(3.7rem,14vw,5.3rem); }
 .hero__topline { font-size:.56rem; }
 .hero__meta { font-size:.53rem; }
 .hero__visual { width:100%; }
 .signal-stage { padding:6px; border-radius:10px; }
 .signal-stage__header,.signal-stage__footer { font-size:.49rem; padding-inline:.35rem; }
 .signal-stage__screen { aspect-ratio:1 / 1.03; }
 .signal-scene { padding:1rem; }
 .signal-scene__main { gap:.7rem; }
 .signal-scene__main strong { font-size:clamp(2.1rem,8vw,3.4rem); }
 .signal-scene__subtitle { font-size:.71rem; }
 .signal-scene__orb { width:88%; right:-33%; }
 .brand-cards { grid-template-columns:1fr; }
 .brands .brand-card { min-height:360px; padding:1.75rem; }
 .brands .brand-card__name {font-size:clamp(3.1rem,12vw,5rem);}
 .focus-strip__list { flex-basis:100%; gap:1rem; }
 .focus-strip__item { font-size:.6rem; }
 .hero__actions { align-items:stretch; }
 .kmps-hero .hero__primary { width:100%; }
}
@media print { .signal-stage__screen {height:280px;} .signal-scene--cinema {display:none;} .signal-scene--cricket {opacity:1;} }
@media (max-width:40rem) {
 .brands__title { max-width:100%; font-size:clamp(2.65rem,11.4vw,3.45rem); }
 .statement__title { font-size:clamp(2.45rem,10vw,3.5rem); }
 .intro__heading { font-size:clamp(2.45rem,9.6vw,3.2rem); }
 .intro__text { font-size:1.1rem; line-height:1.7; }
}
