/* ============================================================
   Varma Construction Logistics — brand stylesheet
   Two directions on one page:
     .dir-a  Full hi-vis  (light base, yellow full-bleed fields)
     .dir-b  Yellow + ink (charcoal base, yellow signature accent)
   ============================================================ */

:root{
  --yellow:#F2E90C;
  --yellow-deep:#D8D000;     /* hover / pressed yellow */
  --yellow-ink:#C7BF00;      /* yellow text on light, if needed */
  --ink:#2B2B2B;             /* soft near-black (brand) */
  --ink-900:#1C1C1C;         /* deepest canvas (dir B) */
  --ink-800:#242424;
  --ink-700:#2E2E2E;
  --paper:#FFFFFF;
  --bone:#F4F3EC;            /* warm light text on dark */
  --warm:#F6F6F1;            /* warm grey section on light */

  --r-pill:9999px;
  --r-lg:18px;
  --r-md:12px;
  --r-sm:8px;

  --space-section: clamp(72px, 9vw, 132px);
  --container: 1200px;
  --gutter: clamp(20px, 5vw, 48px);

  --ease:cubic-bezier(.32,.72,0,1);
  --ease-out:cubic-bezier(.16,1,.3,1);

  font-family:"Poppins", system-ui, sans-serif;
}

/* ---------- THEME A : FULL HI-VIS (light) ---------- */
.dir-a{
  --bg:#FFFFFF;
  --bg-alt:var(--warm);
  --surface:#FFFFFF;
  --surface-2:var(--warm);
  --text:var(--ink);
  --text-muted:#6E6E68;
  --border:rgba(43,43,43,.14);
  --border-strong:rgba(43,43,43,.30);
  --accent:var(--yellow);
  --on-accent:var(--ink);

  --hero-bg:var(--yellow);
  --hero-text:var(--ink);
  --hero-muted:rgba(43,43,43,.72);
  --mark: url('assets/varma_mark_charcoal.png');
  --lockup: url('assets/varma_lockup_charcoal.png');

  --nav-bg:rgba(255,255,255,.82);
  --nav-text:var(--ink);
  --nav-border:rgba(43,43,43,.10);

  --btn-primary-bg:var(--ink);       /* on a yellow hero, ink button pops */
  --btn-primary-text:var(--yellow);
  --btn-primary-bg-hover:#000;

  --break-bg:var(--yellow);          /* full-bleed yellow section breaks */
  --break-text:var(--ink);
}

/* ---------- THEME B : YELLOW + INK (dark) ---------- */
.dir-b{
  --bg:var(--ink-900);
  --bg-alt:#181818;
  --surface:#242424;
  --surface-2:#202020;
  --text:var(--bone);
  --text-muted:rgba(244,243,236,.60);
  --border:rgba(255,255,255,.10);
  --border-strong:rgba(243,233,13,.42);
  --accent:var(--yellow);
  --on-accent:var(--ink-900);

  --hero-bg:var(--ink-900);
  --hero-text:var(--bone);
  --hero-muted:rgba(244,243,236,.62);
  --mark: url('assets/varma_mark_yellow.png');
  --lockup: url('assets/varma_lockup_white.png');

  --nav-bg:rgba(28,28,28,.72);
  --nav-text:var(--bone);
  --nav-border:rgba(255,255,255,.08);

  --btn-primary-bg:var(--yellow);
  --btn-primary-text:var(--ink-900);
  --btn-primary-bg-hover:#fff;

  --break-bg:var(--yellow);          /* yellow break still appears, sparingly */
  --break-text:var(--ink);
}

/* ---------- RESET ---------- */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  transition:background .4s var(--ease), color .4s var(--ease);
}
h1,h2,h3,h4{margin:0;line-height:1.04;letter-spacing:-.02em;font-weight:700;}
p{margin:0;}
a{color:inherit;text-decoration:none;}
img{display:block;max-width:100%;}
::selection{background:var(--yellow);color:var(--ink);}

.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter);}
.section{padding-block:var(--space-section);}

/* ---------- TYPE HELPERS ---------- */
.eyebrow{
  font-size:.74rem;font-weight:600;text-transform:uppercase;
  letter-spacing:.18em;color:var(--text-muted);
  display:inline-flex;align-items:center;gap:.6em;
}
.eyebrow::before{
  content:"";width:22px;height:2px;background:var(--accent);display:inline-block;
}
.h2{font-size:clamp(1.9rem,3.6vw,3.1rem);font-weight:700;letter-spacing:-.025em;}
.lead{font-size:clamp(1.05rem,1.5vw,1.25rem);color:var(--text-muted);max-width:60ch;line-height:1.55;}
.kicker{color:var(--text-muted);max-width:62ch;}
.num{font-weight:700;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:.95;}

/* ---------- BUTTONS ---------- */
.btn{
  --_bg:transparent;--_fg:var(--text);--_bd:var(--border-strong);
  display:inline-flex;align-items:center;gap:.55em;
  font-family:inherit;font-size:1rem;font-weight:600;
  padding:.85em 1.4em;border-radius:var(--r-pill);
  background:var(--_bg);color:var(--_fg);border:1.5px solid var(--_bd);
  cursor:pointer;transition:transform .08s var(--ease), background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);
  white-space:nowrap;
}
.btn:active{transform:scale(.97);}
.btn .arr{transition:transform .2s var(--ease);}
.btn:hover .arr{transform:translateX(3px);}
.btn-primary{--_bg:var(--btn-primary-bg);--_fg:var(--btn-primary-text);--_bd:var(--btn-primary-bg);}
.btn-primary:hover{--_bg:var(--btn-primary-bg-hover);--_bd:var(--btn-primary-bg-hover);}
.btn-ghost{--_bg:transparent;--_fg:var(--text);--_bd:var(--border-strong);}
.btn-ghost:hover{--_bd:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);}
.btn-lg{font-size:1.05rem;padding:1em 1.7em;}

/* ---------- NAV ---------- */
.nav{
  position:sticky;top:0;z-index:50;
  background:var(--nav-bg);color:var(--nav-text);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  border-bottom:1px solid var(--nav-border);
  transition:background .4s var(--ease), border-color .4s var(--ease);
}
.nav-inner{display:flex;align-items:center;gap:20px;height:72px;}
.brand{display:flex;align-items:center;gap:11px;}
.brand .mark{width:34px;height:34px;background:var(--mark) center/contain no-repeat;}
.brand .word{font-weight:700;font-size:1.4rem;letter-spacing:-.01em;color:var(--nav-text);}
.nav-links{display:flex;gap:2px;margin-left:10px;}
.nav-links a{
  font-size:.93rem;font-weight:500;color:var(--nav-text);opacity:.78;white-space:nowrap;
  padding:.5em .7em;border-radius:var(--r-sm);transition:opacity .15s,background .15s;
}
.nav-links a:hover{opacity:1;background:color-mix(in srgb,var(--text) 7%,transparent);}
.nav-right{margin-left:auto;display:flex;align-items:center;gap:14px;}

/* ---------- HERO ---------- */
.hero{
  background:var(--hero-bg);color:var(--hero-text);
  position:relative;overflow:hidden;
  padding-block:clamp(64px,11vw,128px);
  transition:background .4s var(--ease), color .4s var(--ease);
}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(32px,5vw,72px);align-items:center;}
.hero h1{
  font-size:clamp(2.6rem,6.4vw,5.4rem);font-weight:700;letter-spacing:-.035em;line-height:1.0;
}
.hero h1 .accentword{color:var(--accent);}
.dir-a .hero h1 .accentword{color:var(--ink);} /* on yellow, keep ink */
.hero .support{
  margin-top:26px;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.5;
  color:var(--hero-muted);max-width:46ch;font-weight:400;
}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}
/* hero buttons recolour to suit each field */
.dir-a .hero .btn-primary{--_bg:var(--ink);--_fg:var(--yellow);--_bd:var(--ink);}
.dir-a .hero .btn-primary:hover{--_bg:#000;--_bd:#000;}
.dir-a .hero .btn-ghost{--_bd:rgba(43,43,43,.45);--_fg:var(--ink);}
.dir-a .hero .btn-ghost:hover{--_bd:var(--ink);background:rgba(43,43,43,.08);}
.dir-b .hero .btn-ghost{--_bd:rgba(255,255,255,.28);}

/* hero side mark / proof */
.hero-mark{
  aspect-ratio:1;background:var(--mark) center/contain no-repeat;
  width:min(100%,420px);margin-inline:auto;
  filter:drop-shadow(0 30px 60px rgba(0,0,0,.18));
  animation:orbit-in 1.1s var(--ease-out) both;
}
.dir-a .hero-mark{filter:none;}
@keyframes orbit-in{from{opacity:0;transform:rotate(-25deg) scale(.85);}to{opacity:1;transform:none;}}

.hero-proof{
  margin-top:clamp(48px,6vw,72px);padding-top:28px;
  border-top:1px solid color-mix(in srgb,var(--hero-text) 18%,transparent);
  display:flex;flex-wrap:wrap;align-items:center;gap:14px 30px;
}
.hero-proof .label{font-size:.72rem;text-transform:uppercase;letter-spacing:.16em;font-weight:600;opacity:.6;}
.hero-proof .name{font-weight:600;font-size:.98rem;opacity:.92;}
.hero-proof .dot{width:4px;height:4px;border-radius:50%;background:currentColor;opacity:.35;}

/* status pill */
.status-pill{
  display:inline-flex;align-items:center;gap:9px;
  padding:.5em .95em;border-radius:var(--r-pill);font-size:.85rem;font-weight:600;
  background:color-mix(in srgb,var(--hero-text) 10%,transparent);
  border:1px solid color-mix(in srgb,var(--hero-text) 18%,transparent);
  margin-bottom:24px;
}
.status-pill .blip{width:8px;height:8px;border-radius:50%;background:#1eae5b;position:relative;}
.dir-a .status-pill{background:rgba(43,43,43,.08);border-color:rgba(43,43,43,.18);}
.status-pill .blip::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:#1eae5b;opacity:.35;animation:ping 1.8s var(--ease) infinite;}
@keyframes ping{0%{transform:scale(1);opacity:.4;}80%,100%{transform:scale(2.4);opacity:0;}}

/* ---------- SECTION HEADER ---------- */
.sec-head{max-width:64ch;margin-bottom:clamp(36px,4vw,56px);}
.sec-head .h2{margin-top:14px;}
.sec-head .lead{margin-top:18px;}

/* ---------- SERVICES ---------- */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(248px,1fr));gap:14px;}
.svc{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:26px 24px;display:flex;flex-direction:column;gap:11px;
  transition:border-color .18s var(--ease), transform .18s var(--ease), background .18s;
  position:relative;overflow:hidden;
}
.svc:hover{border-color:var(--border-strong);transform:translateY(-3px);}
.svc .ico{
  width:46px;height:46px;border-radius:var(--r-md);display:grid;place-items:center;
  background:var(--accent);color:var(--ink);flex:none;
}
.dir-b .svc .ico{color:var(--ink-900);}
.svc .ico svg{width:26px;height:26px;}
.svc h3{font-size:1.18rem;font-weight:600;letter-spacing:-.01em;}
.svc p{color:var(--text-muted);font-size:.95rem;line-height:1.5;}
.svc .idx{position:absolute;top:22px;right:26px;font-size:.8rem;font-weight:600;color:var(--text-muted);opacity:.5;letter-spacing:.05em;}

/* ---------- WHY (three pillars) ---------- */
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;}
.pillar{padding:38px 34px;border-right:1px solid var(--border);}
.pillar:last-child{border-right:0;}
.pillar .pk{font-size:.74rem;text-transform:uppercase;letter-spacing:.16em;font-weight:600;color:var(--accent);}
.dir-a .pillar .pk{color:#9a9300;}
.pillar h3{font-size:1.45rem;font-weight:600;margin-top:12px;}
.pillar p{margin-top:12px;color:var(--text-muted);font-size:1rem;line-height:1.55;}

/* ---------- PROCESS (Planning / Execution / Control) ---------- */
.proc{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.proc .step{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);
  padding:34px 30px;position:relative;overflow:hidden;
  transition:border-color .18s var(--ease),transform .18s var(--ease);
}
.proc .step:hover{border-color:var(--border-strong);transform:translateY(-3px);}
.proc .step .n{
  font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--accent);font-variant-numeric:tabular-nums;display:flex;align-items:center;gap:10px;
}
.dir-a .proc .step .n{color:#9a9300;}
.proc .step .n b{font-size:1.7rem;letter-spacing:-.02em;color:var(--text);opacity:.18;font-weight:700;}
.proc .step h3{font-size:1.4rem;font-weight:600;margin-top:14px;letter-spacing:-.01em;}
.proc .step p{color:var(--text-muted);margin-top:12px;font-size:1rem;line-height:1.55;}

.guard{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;}
.guard .g{
  display:flex;gap:18px;align-items:flex-start;
  background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-lg);padding:26px 28px;
}
.dir-a .guard .g{background:var(--warm);}
.guard .g .gi{width:46px;height:46px;border-radius:var(--r-md);background:var(--accent);color:var(--ink);display:grid;place-items:center;flex:none;}
.dir-b .guard .g .gi{color:var(--ink-900);}
.guard .g h4{font-size:1.12rem;font-weight:600;letter-spacing:-.01em;}
.guard .g p{color:var(--text-muted);margin-top:6px;font-size:.96rem;line-height:1.5;}

/* ---------- SOCIAL VALUE PROGRAMME LIST ---------- */
.prog-wrap{margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--border);padding-top:clamp(32px,4vw,48px);}
.prog{display:grid;grid-template-columns:repeat(3,1fr);gap:2px 40px;margin-top:24px;list-style:none;padding:0;}
.prog li{display:flex;gap:11px;align-items:flex-start;padding:11px 0;font-size:1rem;line-height:1.4;border-bottom:1px solid var(--border);}
.prog li svg{flex:none;width:19px;height:19px;color:var(--accent);margin-top:2px;}
.dir-a .prog li svg{color:#9a9300;}

/* ---------- KEY PEOPLE ---------- */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.tm{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;transition:border-color .18s var(--ease),transform .18s var(--ease);}
.tm:hover{border-color:var(--border-strong);transform:translateY(-3px);}
.tm .photo{aspect-ratio:5/6;background:var(--surface-2) center/cover no-repeat;border-bottom:1px solid var(--border);}
.tm .meta{padding:22px 24px 24px;}
.tm .meta .nm{font-size:1.25rem;font-weight:600;letter-spacing:-.01em;}
.tm .meta .ti{color:var(--text-muted);font-size:.96rem;margin-top:4px;}
.tm .meta .ti b{color:var(--accent);font-weight:600;}
.dir-a .tm .meta .ti b{color:var(--ink);}

/* ---------- CONTACT CTA CARD ---------- */
.contact-cta{display:flex;flex-direction:column;gap:14px;}
.contact-cta .ct-head{font-size:1.5rem;font-weight:700;letter-spacing:-.02em;}
.contact-cta .ct-sub{color:var(--text-muted);font-size:1rem;line-height:1.55;margin-top:-4px;}
.contact-cta .big-btn{
  display:flex;align-items:center;gap:16px;padding:20px 22px;border-radius:var(--r-md);
  border:1.5px solid var(--border-strong);background:var(--surface-2);transition:.15s;
}
.dir-a .contact-cta .big-btn{background:#fff;}
.contact-cta .big-btn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);}
.contact-cta .big-btn .bi{width:46px;height:46px;border-radius:var(--r-md);background:var(--accent);color:var(--ink);display:grid;place-items:center;flex:none;}
.dir-b .contact-cta .big-btn .bi{color:var(--ink-900);}
.contact-cta .big-btn .bk{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-weight:600;line-height:1.2;}
.contact-cta .big-btn .bv{display:block;font-size:1.2rem;font-weight:600;margin-top:7px;letter-spacing:-.01em;line-height:1.3;}

/* enquiry form (contact card) */
.enq-form{margin-top:22px;}
.enq-form .eg2{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.enq-form .efld{margin-top:14px;}
.enq-form label{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;font-weight:600;color:var(--text-muted);margin-bottom:7px;}
.enq-form .req{color:var(--accent);}
.enq-form input,.enq-form textarea{
  width:100%;font-family:inherit;font-size:1rem;color:var(--text);
  background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--r-sm);
  padding:.8em .9em;transition:border-color .15s,box-shadow .15s;
}
.dir-a .enq-form input,.dir-a .enq-form textarea{background:#fff;}
.enq-form textarea{resize:vertical;min-height:88px;}
.enq-form input::placeholder,.enq-form textarea::placeholder{color:var(--text-muted);opacity:.7;}
.enq-form input:focus,.enq-form textarea:focus{
  outline:none;border-color:var(--accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 35%,transparent);
}
.enq-form .btn-primary{
  width:100%;justify-content:center;margin-top:22px;
  --_bg:var(--accent);--_fg:var(--ink);--_bd:var(--accent);
}
.dir-b .enq-form .btn-primary{--_fg:var(--ink-900);}
.enq-form .enq-err{display:none;margin-top:14px;font-size:.9rem;line-height:1.5;color:#ff7a6e;}
.dir-a .enq-form .enq-err{color:#cf3b2f;}
.enq-form .enq-err a{color:inherit;font-weight:600;text-decoration:underline;}
.enq-ok{display:none;text-align:center;padding:26px 0 8px;}
.enq-ok .tick{
  width:60px;height:60px;border-radius:50%;background:var(--accent);color:var(--ink);
  display:grid;place-items:center;margin:0 auto 18px;
}
.dir-b .enq-ok .tick{color:var(--ink-900);}
.enq-ok .ct-sub{margin-top:10px;}
.enq-ok a{color:inherit;font-weight:600;text-decoration:underline;}
@media(max-width:560px){
  .enq-form .eg2{grid-template-columns:1fr;gap:0;}
}
.contact-cta .reg-line{margin-top:6px;font-size:.86rem;color:var(--text-muted);line-height:1.5;}

/* ---------- SECTION BREAK (full-bleed yellow band) ---------- */
.break{background:var(--break-bg);color:var(--break-text);padding-block:clamp(48px,6vw,84px);}
.break .big{font-size:clamp(1.8rem,4vw,3.4rem);font-weight:700;letter-spacing:-.03em;line-height:1.05;max-width:20ch;}
.break .sub{margin-top:18px;font-size:1.1rem;max-width:52ch;opacity:.82;}

/* ---------- SOCIAL VALUE ---------- */
.sv-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,72px);align-items:center;}
.stat-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:30px;}
.stat{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:24px 24px 22px;
}
.dir-a .stat{background:var(--surface-2);}
.stat .num{font-size:clamp(2.6rem,5vw,3.6rem);color:var(--text);}
.stat .num em{color:var(--accent);font-style:normal;}
.dir-a .stat .num em{color:var(--ink);}
.stat .cap{margin-top:8px;font-size:.95rem;color:var(--text-muted);line-height:1.4;}

.places{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.place{
  font-size:.9rem;font-weight:500;padding:.4em .85em;border-radius:var(--r-pill);
  border:1px solid var(--border);color:var(--text);
}
.place strong{color:var(--accent);font-weight:700;}
.dir-a .place strong{color:var(--ink);}

/* quote / endorsement */
.quote{
  background:var(--accent);color:var(--ink);border-radius:var(--r-lg);
  padding:clamp(34px,4vw,52px);position:relative;
}
.dir-b .quote{background:var(--surface);color:var(--text);border:1px solid var(--border-strong);}
.quote .qmark{font-size:5rem;line-height:.6;font-weight:800;opacity:.25;height:.5em;display:block;}
.quote blockquote{margin:0;font-size:clamp(1.3rem,2.3vw,1.9rem);font-weight:600;letter-spacing:-.02em;line-height:1.28;}
.quote .by{margin-top:22px;font-size:.95rem;font-weight:600;}
.quote .by span{display:block;font-weight:400;opacity:.7;margin-top:2px;}

/* honest note */
.honest{
  margin-top:26px;padding:20px 24px;border-left:3px solid var(--accent);
  background:var(--surface-2);border-radius:0 var(--r-sm) var(--r-sm) 0;
  font-size:1rem;color:var(--text-muted);line-height:1.55;max-width:60ch;
}
.dir-b .honest{background:var(--surface);}

/* ---------- FRESH FROM SITE ---------- */
.feed{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.post{
  background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;
  display:flex;flex-direction:column;transition:border-color .18s,transform .18s;
}
.post:hover{border-color:var(--border-strong);transform:translateY(-3px);}
.post .ph{
  aspect-ratio:16/10;background:var(--surface-2);position:relative;overflow:hidden;
  display:grid;place-items:center;border-bottom:1px solid var(--border);
}
.post .ph .glyph{width:46%;height:46%;background:var(--mark) center/contain no-repeat;opacity:.16;}
.post .ph .ptag{position:absolute;top:12px;left:12px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.12em;background:var(--accent);color:var(--ink);padding:.35em .7em;border-radius:var(--r-sm);}
.post .body{padding:22px 22px 24px;display:flex;flex-direction:column;gap:10px;flex:1;}
.post .date{font-size:.8rem;color:var(--text-muted);letter-spacing:.02em;}
.post h4{font-size:1.12rem;font-weight:600;line-height:1.25;}
.post p{font-size:.95rem;color:var(--text-muted);line-height:1.5;}
.post .more{margin-top:auto;font-weight:600;font-size:.92rem;color:var(--text);display:inline-flex;gap:.4em;align-items:center;}
.post .more .arr{color:var(--accent);}
.dir-a .post .more .arr{color:var(--ink);}

/* ---------- REGISTER LANE ---------- */
.register{background:var(--break-bg);color:var(--break-text);border-radius:0;}
.register .container{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(32px,5vw,64px);align-items:center;}
.register h2{font-size:clamp(2rem,4vw,3.2rem);font-weight:700;letter-spacing:-.03em;line-height:1.04;}
.register p{margin-top:18px;font-size:1.15rem;line-height:1.5;max-width:46ch;opacity:.85;}
.register .chk{display:flex;flex-direction:column;gap:12px;margin-top:8px;}
.register .chk li{display:flex;gap:12px;align-items:flex-start;font-weight:500;list-style:none;}
.register .chk svg{flex:none;width:24px;height:24px;margin-top:1px;}
.register-card{
  background:var(--ink);color:var(--bone);border-radius:var(--r-lg);padding:clamp(28px,3vw,40px);
}
.register-card .rt{font-size:1.3rem;font-weight:700;}
.register-card .rs{color:rgba(244,243,236,.6);margin-top:8px;font-size:.98rem;}
.register-card .field{margin-top:16px;}
.register-card label{font-size:.82rem;font-weight:600;color:rgba(244,243,236,.7);display:block;margin-bottom:7px;}
.register-card input,.register-card select{
  width:100%;font-family:inherit;font-size:1rem;color:var(--bone);
  background:rgba(255,255,255,.06);border:1.5px solid rgba(255,255,255,.14);
  border-radius:var(--r-sm);padding:.8em .9em;transition:border-color .15s;
}
.register-card input::placeholder{color:rgba(244,243,236,.4);}
.register-card input:focus,.register-card select:focus{outline:none;border-color:var(--yellow);}
.register-card .btn-primary{width:100%;justify-content:center;margin-top:18px;--_bg:var(--yellow);--_fg:var(--ink);--_bd:var(--yellow);}
.register-card .btn-primary:hover{--_bg:#fff;--_bd:#fff;}
.register-card .fine{margin-top:14px;font-size:.8rem;color:rgba(244,243,236,.45);line-height:1.45;}

/* ---------- CONTACT ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,5vw,64px);align-items:start;}
.contact-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:34px;}
.contact-list{display:flex;flex-direction:column;gap:4px;margin-top:8px;}
.contact-item{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--border);}
.contact-item:last-child{border-bottom:0;}
.contact-item .ci{width:42px;height:42px;border-radius:var(--r-md);background:var(--surface-2);display:grid;place-items:center;flex:none;color:var(--accent);}
.dir-a .contact-item .ci{color:var(--ink);background:var(--warm);}
.contact-item .ck{font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);font-weight:600;}
.contact-item .cv{font-size:1.1rem;font-weight:600;margin-top:3px;}

/* ---------- FOOTER ---------- */
.footer{background:var(--ink-900);color:var(--bone);padding-block:64px 40px;}
.footer .lock{width:120px;height:auto;background:var(--lockup);}
.foot-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;}
.foot-brand .word{display:flex;align-items:center;gap:10px;}
.foot-brand .word .m{width:34px;height:34px;background:var(--varma-foot-mark,url('assets/varma_mark_yellow.png')) center/contain no-repeat;}
.foot-brand .word b{font-size:1.4rem;font-weight:700;}
.foot-brand p{margin-top:16px;color:rgba(244,243,236,.55);max-width:34ch;font-size:.96rem;line-height:1.55;}
.foot-col h5{font-size:.76rem;text-transform:uppercase;letter-spacing:.14em;color:rgba(244,243,236,.5);font-weight:600;margin:0 0 16px;}
.foot-col a{display:block;padding:6px 0;color:rgba(244,243,236,.8);font-size:.96rem;}
.foot-col a:hover{color:var(--yellow);}
.foot-bottom{margin-top:48px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;color:rgba(244,243,236,.45);font-size:.85rem;}
.tagline-strip{color:var(--yellow);font-weight:600;letter-spacing:-.01em;}

/* ---------- SCROLL REVEAL ---------- */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out);}
.reveal.in{opacity:1;transform:none;}
.reveal.d1{transition-delay:.06s;}
.reveal.d2{transition-delay:.12s;}
.reveal.d3{transition-delay:.18s;}

@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1!important;transform:none!important;transition:opacity .12s;}
  .hero-mark{animation:none;}
  .status-pill .blip::after{animation:none;}
  html{scroll-behavior:auto;}
}

/* ---------- RESPONSIVE ---------- */
@media (max-width:920px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-mark{width:min(64%,300px);order:-1;}
  .sv-grid,.register .container,.contact-grid{grid-template-columns:1fr;}
  .pillars{grid-template-columns:1fr;}
  .pillar{border-right:0;border-bottom:1px solid var(--border);}
  .pillar:last-child{border-bottom:0;}
  .feed{grid-template-columns:1fr;}
  .proc{grid-template-columns:1fr;}
  .guard{grid-template-columns:1fr;}
  .prog{grid-template-columns:1fr 1fr;}
  .team{grid-template-columns:1fr;max-width:420px;}
  .team .tm .photo{aspect-ratio:16/10;}
  .foot-top{grid-template-columns:1fr;gap:32px;}
}
@media (max-width:1080px){
  .nav-links{display:none;}
}
@media (max-width:640px){
  .stat-row{grid-template-columns:1fr;}
}
