/* ── Hero ── */
.hero{position:relative;overflow:hidden}
.hero-bg-grid{position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,var(--divider) 0 1px,transparent 1px 80px),repeating-linear-gradient(90deg,var(--divider) 0 1px,transparent 1px 80px);pointer-events:none}
.hero-clock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:clamp(300px,48vw,580px);aspect-ratio:1;opacity:.11;pointer-events:none;user-select:none}
[data-theme="dark"] .hero-clock{opacity:.07}
#bg-clock{color:var(--navy);overflow:visible}
[data-theme="dark"] #bg-clock{color:#7faad4}
.hero-glow{position:absolute;top:-20%;right:0;width:55vw;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--orange) 10%,transparent),transparent 65%);pointer-events:none}
.hero-layout{position:relative;z-index:1;display:grid;gap:var(--s12);align-items:center}
.hero-eyebrow{opacity:0}
.h1{font-family:var(--font-d);font-size:var(--tx-hero);line-height:.93;letter-spacing:-.055em;font-weight:900;margin-top:var(--s4)}
.h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.14em;margin-bottom:-.14em}
.h1 .wi{display:inline-block;transform:translateY(115%);opacity:0}
.h1-accent{color:var(--orange)}
.hero-sub{font-size:var(--tx-lg);color:var(--muted);max-width:56ch;line-height:1.7;margin-top:var(--s6);opacity:0;transform:translateY(10px)}
.hero-ctas{margin-top:var(--s8);display:flex;flex-wrap:wrap;gap:var(--s3);opacity:0;transform:translateY(10px)}
.hero-tags{margin-top:var(--s6);display:flex;flex-wrap:wrap;gap:var(--s2);opacity:0}
.tag{padding:.38rem .8rem;border-radius:var(--r-xs);background:var(--surface);border:1px solid var(--border);font-size:var(--tx-xs);color:var(--muted);font-weight:600;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}

/* Hero panel */
.hero-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-lg);opacity:0;transform:translateX(26px)}
.panel-bar{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s5);background:var(--surf2);border-bottom:1px solid var(--border)}
.bar-dots{display:flex;gap:.375rem}
.bar-dot{width:10px;height:10px;border-radius:50%}
.bar-dot:nth-child(1){background:#ff5f56}.bar-dot:nth-child(2){background:#febc2e}.bar-dot:nth-child(3){background:#28c840}
.bar-title{font-size:var(--tx-xs);color:var(--muted);font-weight:600;letter-spacing:.06em;margin-left:auto}
.panel-body{padding:clamp(var(--s5),4vw,var(--s8));display:grid;gap:var(--s5)}
.panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s4)}
.panel-title{font-family:var(--font-d);font-size:var(--tx-xl);line-height:1.05;letter-spacing:-.04em;font-weight:900;max-width:13ch}
.signal{display:inline-flex;align-items:center;gap:var(--s2);flex-shrink:0;padding:.4rem .7rem;border-radius:var(--r-xs);background:color-mix(in srgb,#2a7241 10%,var(--surface));color:#2a7241;font-size:var(--tx-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.sig-dot{width:.45rem;height:.45rem;border-radius:50%;background:currentColor;flex-shrink:0;animation:sig-pulse 2s ease-in-out infinite}
@keyframes sig-pulse{0%,100%{box-shadow:0 0 0 0 color-mix(in srgb,currentColor 45%,transparent)}55%{box-shadow:0 0 0 5px transparent}}
.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s3)}
.kpi{padding:var(--s4);background:var(--navy-dk);border-radius:var(--r-md);border:1px solid rgba(255,255,255,.07)}
.kpi-l{font-size:var(--tx-xs);color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.08em}
.kpi-v{margin-top:var(--s2);font-size:var(--tx-xl);font-family:var(--font-d);font-weight:900;letter-spacing:-.04em;color:var(--orange);animation:neon-breathe 3.2s ease-in-out infinite}
.kpi:nth-child(2) .kpi-v{animation-delay:.8s}.kpi:nth-child(3) .kpi-v{animation-delay:1.6s}
.data-list{display:grid;gap:0}
.d-row{display:flex;justify-content:space-between;gap:var(--s4);padding:var(--s3) 0;border-bottom:1px solid var(--divider);font-size:var(--tx-sm);opacity:0;transform:translateX(-6px)}
.d-row:last-child{border-bottom:none}
.d-row strong{color:var(--text);font-weight:600}
.d-row span{color:var(--muted)}
@keyframes neon-breathe{0%,100%{text-shadow:0 0 2px rgba(255,255,255,.28),0 0 8px rgba(239,123,26,.55),0 0 18px rgba(239,123,26,.30),0 0 32px rgba(239,123,26,.14)}50%{text-shadow:0 0 1px rgba(255,255,255,.14),0 0 6px rgba(239,123,26,.35),0 0 13px rgba(239,123,26,.18),0 0 24px rgba(239,123,26,.08)}}

/* Trust strip */
.trust-cells{display:grid;grid-template-columns:repeat(2,1fr);border-left:1px solid rgba(255,255,255,.07)}
.t-cell{padding:clamp(var(--s6),4vw,var(--s10)) clamp(var(--s5),3vw,var(--s8));border-right:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}
.t-cell:nth-child(n+3){border-bottom:none}
.t-num{font-family:var(--font-d);font-size:var(--tx-2xl);font-weight:900;letter-spacing:-.055em;color:var(--orange);line-height:1;animation:neon-breathe 3.2s ease-in-out infinite}
.t-cell:nth-child(2) .t-num{animation-delay:.8s}.t-cell:nth-child(3) .t-num{animation-delay:1.6s}.t-cell:nth-child(4) .t-num{animation-delay:2.4s}
.t-label{margin-top:var(--s2);font-size:var(--tx-sm);color:rgba(255,255,255,.65);font-weight:500}

/* Services */
.svc-grid{display:grid;gap:1px;background:var(--divider);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-top:var(--s10)}
.svc-card{background:var(--surface);padding:clamp(var(--s6),4vw,var(--s10));position:relative;overflow:hidden;cursor:default;opacity:0;transform:translateY(16px);transition:background var(--ti)}
.svc-card::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--orange);transform:scaleY(0);transform-origin:bottom;transition:transform 340ms var(--ease)}
.svc-card:hover{background:color-mix(in srgb,var(--orange) 3%,var(--surface))}
.svc-card:hover::before{transform:scaleY(1)}
.svc-n{font-family:var(--font-d);font-size:clamp(4rem,8vw,6rem);font-weight:900;letter-spacing:-.07em;line-height:1;color:color-mix(in srgb,var(--orange) 14%,var(--bg));margin-bottom:var(--s6);transition:color var(--ti)}
.svc-card:hover .svc-n{color:color-mix(in srgb,var(--orange) 32%,var(--bg))}
.svc-card h3{font-family:var(--font-d);font-size:clamp(1.1rem,1rem + .9vw,1.55rem);letter-spacing:-.03em;font-weight:900;margin-bottom:var(--s3);white-space:nowrap}
.svc-card p{color:var(--muted);font-size:var(--tx-base);max-width:50ch}
.svc-card ul{list-style:none;margin-top:var(--s5);display:grid;gap:var(--s2)}
.svc-card li{padding-left:1.4rem;position:relative;color:var(--muted);font-size:var(--tx-sm)}
.svc-card li::before{content:'→';position:absolute;left:0;color:var(--orange);font-weight:700}
.svc-vcio-inner{display:grid;gap:var(--s8)}
.vcio-badge{display:inline-flex;align-items:center;gap:var(--s2);padding:.35rem .8rem;margin-bottom:var(--s4);border-radius:var(--r-xs);background:color-mix(in srgb,var(--orange) 10%,var(--surface));color:var(--orange);font-size:var(--tx-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.svc-vcio ul{grid-template-columns:repeat(2,1fr)}

/* About */
.about-grid{display:grid;gap:var(--s8);align-items:start}
.diff-panel{padding:clamp(var(--s6),4vw,var(--s10));background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}
.diff-list{list-style:none;margin-top:var(--s6);display:grid;gap:0}
.diff-item{padding:var(--s5) 0;border-bottom:1px solid var(--divider)}
.diff-item:last-child{border-bottom:none;padding-bottom:0}
.diff-tag{display:block;font-size:var(--tx-xs);font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--orange);margin-bottom:var(--s2)}
.diff-text{color:var(--muted)}

/* Areas */
.areas-grid{display:grid;gap:var(--s8);align-items:start}
.area-list{margin-top:var(--s8);border-top:1px solid rgba(255,255,255,.08)}
.area-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid rgba(255,255,255,.08);font-size:var(--tx-lg);font-weight:700;color:#fff;transition:color var(--ti),padding-left var(--ti)}
.area-row:hover{color:var(--orange);padding-left:var(--s3)}
.area-tag{font-size:var(--tx-xs);color:rgba(255,255,255,.35);letter-spacing:.07em;text-transform:uppercase;font-weight:500}
.area-aside{padding:clamp(var(--s6),4vw,var(--s10));background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:var(--r-lg)}
.area-aside h3{font-family:var(--font-d);font-size:var(--tx-xl);letter-spacing:-.04em;font-weight:900;color:#fff;margin-bottom:var(--s4)}
.area-aside p{color:rgba(255,255,255,.65);line-height:1.75}

/* Process */
.process-track{display:grid;gap:1px;background:var(--divider);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;margin-top:var(--s10)}
.proc-step{background:var(--surface);padding:clamp(var(--s6),4vw,var(--s10));position:relative;overflow:hidden;opacity:0;transform:translateY(18px)}
.proc-bg{position:absolute;right:var(--s4);bottom:0;font-family:var(--font-d);font-size:clamp(5rem,10vw,9rem);font-weight:900;letter-spacing:-.07em;line-height:.85;color:color-mix(in srgb,var(--navy) 5%,transparent);pointer-events:none}
[data-theme="dark"] .proc-bg{color:color-mix(in srgb,#fff 4%,transparent)}
.proc-inner{position:relative;z-index:1}
.proc-tag{display:inline-block;padding:.3rem .65rem;margin-bottom:var(--s4);border-radius:var(--r-xs);background:color-mix(in srgb,var(--orange) 10%,var(--surface));color:var(--orange);font-size:var(--tx-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.proc-step h3{font-family:var(--font-d);font-size:var(--tx-xl);letter-spacing:-.04em;font-weight:900;max-width:13ch}
.proc-step p{margin-top:var(--s3);color:var(--muted);max-width:46ch}

/* Contact */
.contact-layout{display:grid;gap:var(--s8);align-items:start}
.cta-left .section-title{color:#fff;max-width:14ch}
.cta-left p{color:rgba(255,255,255,.7);margin-top:var(--s4);max-width:54ch;line-height:1.75}
.cta-actions{margin-top:var(--s8);display:flex;flex-wrap:wrap;gap:var(--s3)}
.contact-card{padding:clamp(var(--s6),4vw,var(--s8));background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);border-radius:var(--r-lg)}
.contact-card h3{font-family:var(--font-d);font-size:var(--tx-xl);font-weight:900;letter-spacing:-.04em;color:#fff;margin-bottom:var(--s5)}
.c-list{list-style:none;display:grid;gap:0}
.c-item{padding:var(--s4) 0;border-bottom:1px solid rgba(255,255,255,.07)}
.c-item:last-child{border-bottom:none;padding-bottom:0}
.c-lbl{display:block;font-size:var(--tx-xs);text-transform:uppercase;letter-spacing:.09em;color:rgba(255,255,255,.38);margin-bottom:3px}
.c-val{font-size:var(--tx-base);font-weight:700;color:#fff;transition:color var(--ti)}
a.c-val:hover{color:var(--orange)}

/* Responsive */
@media (min-width:600px){.trust-cells{grid-template-columns:repeat(4,1fr)}.t-cell:nth-child(n+2){border-bottom:none}}
@media (min-width:768px){
  .hero-layout{grid-template-columns:1.1fr minmax(380px,.9fr)}
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .svc-card.svc-vcio{grid-column:1/-1}
  .svc-vcio-inner{grid-template-columns:1fr 1fr;align-items:start}
  .svc-vcio ul{grid-template-columns:repeat(2,1fr)}
  .about-grid{grid-template-columns:1fr minmax(340px,.85fr)}
  .areas-grid{grid-template-columns:1fr minmax(320px,.8fr)}
  .process-track{grid-template-columns:repeat(3,1fr)}
  .contact-layout{grid-template-columns:1fr minmax(320px,.8fr)}
}
@media (max-width:767px){
  .kpi-row{grid-template-columns:1fr}
  .svc-vcio ul{grid-template-columns:1fr}
}
