/* MPR Group — main.css */

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ── Tokens ── */
:root{
  --red:#C8102E;
  --red-dk:#a00d24;
  --red-lt:#fdf0f2;
  --red-mid:#e8b4bc;
  --black:#111318;
  --text:#1e2330;
  --muted:#6b7280;
  --light:#f8f9fb;
  --border:#e8eaed;
  --white:#fff;
  --sh:0 2px 20px rgba(0,0,0,.07);
  --sh-hv:0 16px 48px rgba(0,0,0,.13);
  --font:'Plus Jakarta Sans',system-ui,sans-serif;
  --wrap:1200px;
  --pad:2rem;
}

html{scroll-behavior:smooth;overflow-x:hidden}
body{font-family:var(--font);background:var(--white);color:var(--text);overflow-x:hidden}

/* ── NAV ── */
#nav{position:fixed;inset:0 0 auto;z-index:200;height:68px;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);transition:box-shadow .3s}
#nav.scrolled{box-shadow:0 2px 24px rgba(0,0,0,.08)}

.nav-inner{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);height:68px;display:flex;align-items:center;justify-content:space-between}

/* Logo image — sized to fit the 68px nav bar with comfortable padding */
.nav-logo{text-decoration:none;display:flex;align-items:center;flex-shrink:0}
.nav-logo-img{height:44px;width:auto;display:block;object-fit:contain}
.nav-links{display:flex;align-items:center;gap:2.2rem;list-style:none}
.nav-links a{text-decoration:none;color:var(--muted);font-size:.85rem;font-weight:500;transition:color .2s}
.nav-links a:hover{color:var(--red)}
.nav-links .cta a{background:var(--red);color:var(--white)!important;padding:.5rem 1.25rem;border-radius:8px;font-weight:700;font-size:.82rem;box-shadow:0 2px 10px rgba(200,16,46,.25);transition:background .2s,transform .15s}
.nav-links .cta a:hover{background:var(--red-dk);transform:translateY(-1px)}

.burger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px}
.burger span{display:block;width:22px;height:2px;background:var(--black);border-radius:2px;transition:transform .3s,opacity .3s}
.burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

#drawer{display:none;position:fixed;inset:68px 0 0;z-index:199;background:rgba(255,255,255,.98);padding:2rem var(--pad);flex-direction:column;gap:1.2rem}
#drawer.open{display:flex}
#drawer a{color:var(--text);text-decoration:none;font-size:1.1rem;font-weight:600;padding:.5rem 0;border-bottom:1px solid var(--border)}
#drawer .dcta{background:var(--red);color:var(--white)!important;padding:.85rem;border-radius:10px;text-align:center;border-bottom:none;margin-top:.4rem}

/* ── HERO ── */

/* hero-clip: clips the large blobs so they don't cause
   horizontal scroll. The wave is placed OUTSIDE this wrapper
   so it's not clipped. */
.hero-clip{overflow:hidden;position:relative}

.hero{
  padding:140px 0 120px;
  background:linear-gradient(160deg,#fff 0%,var(--red-lt) 55%,#fff5f6 100%);
  position:relative;
  overflow:hidden; /* back to hidden — clip handles containment */
  min-height:90vh;display:flex;align-items:center;
}
.hero-blob-1,.hero-blob-2{position:absolute;border-radius:50%;pointer-events:none}
.hero-blob-1{top:-140px;right:-100px;width:680px;height:680px;background:radial-gradient(circle,rgba(200,16,46,.08) 0%,transparent 65%)}
.hero-blob-2{bottom:-60px;left:8%;width:380px;height:380px;background:radial-gradient(circle,rgba(200,16,46,.05) 0%,transparent 65%)}

/* Dot grid overlay */
.hero-grid{
  position:absolute;inset:0;pointer-events:none;opacity:.3;
  background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);
  background-size:56px 56px;
  mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 20%,transparent 100%);
  -webkit-mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,#000 20%,transparent 100%);
}

/* Pixel world map — SVG inlined as data URI, very subtle */
.hero-worldmap{
  position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1000 500'%3E%3Cg fill='%23C8102E' opacity='0.12'%3E%3C!-- North America --%3E%3Crect x='80' y='70' width='6' height='6'/%3E%3Crect x='92' y='70' width='6' height='6'/%3E%3Crect x='104' y='70' width='6' height='6'/%3E%3Crect x='72' y='82' width='6' height='6'/%3E%3Crect x='80' y='82' width='6' height='6'/%3E%3Crect x='92' y='82' width='6' height='6'/%3E%3Crect x='104' y='82' width='6' height='6'/%3E%3Crect x='116' y='82' width='6' height='6'/%3E%3Crect x='128' y='82' width='6' height='6'/%3E%3Crect x='64' y='94' width='6' height='6'/%3E%3Crect x='72' y='94' width='6' height='6'/%3E%3Crect x='80' y='94' width='6' height='6'/%3E%3Crect x='92' y='94' width='6' height='6'/%3E%3Crect x='104' y='94' width='6' height='6'/%3E%3Crect x='116' y='94' width='6' height='6'/%3E%3Crect x='128' y='94' width='6' height='6'/%3E%3Crect x='140' y='94' width='6' height='6'/%3E%3Crect x='60' y='106' width='6' height='6'/%3E%3Crect x='72' y='106' width='6' height='6'/%3E%3Crect x='80' y='106' width='6' height='6'/%3E%3Crect x='92' y='106' width='6' height='6'/%3E%3Crect x='104' y='106' width='6' height='6'/%3E%3Crect x='116' y='106' width='6' height='6'/%3E%3Crect x='128' y='106' width='6' height='6'/%3E%3Crect x='140' y='106' width='6' height='6'/%3E%3Crect x='60' y='118' width='6' height='6'/%3E%3Crect x='72' y='118' width='6' height='6'/%3E%3Crect x='80' y='118' width='6' height='6'/%3E%3Crect x='92' y='118' width='6' height='6'/%3E%3Crect x='104' y='118' width='6' height='6'/%3E%3Crect x='116' y='118' width='6' height='6'/%3E%3Crect x='128' y='118' width='6' height='6'/%3E%3Crect x='72' y='130' width='6' height='6'/%3E%3Crect x='80' y='130' width='6' height='6'/%3E%3Crect x='92' y='130' width='6' height='6'/%3E%3Crect x='104' y='130' width='6' height='6'/%3E%3Crect x='80' y='142' width='6' height='6'/%3E%3Crect x='92' y='142' width='6' height='6'/%3E%3C!-- South America --%3E%3Crect x='112' y='194' width='6' height='6'/%3E%3Crect x='120' y='194' width='6' height='6'/%3E%3Crect x='128' y='194' width='6' height='6'/%3E%3Crect x='108' y='206' width='6' height='6'/%3E%3Crect x='116' y='206' width='6' height='6'/%3E%3Crect x='124' y='206' width='6' height='6'/%3E%3Crect x='132' y='206' width='6' height='6'/%3E%3Crect x='108' y='218' width='6' height='6'/%3E%3Crect x='116' y='218' width='6' height='6'/%3E%3Crect x='124' y='218' width='6' height='6'/%3E%3Crect x='132' y='218' width='6' height='6'/%3E%3Crect x='112' y='230' width='6' height='6'/%3E%3Crect x='120' y='230' width='6' height='6'/%3E%3Crect x='128' y='230' width='6' height='6'/%3E%3Crect x='116' y='242' width='6' height='6'/%3E%3Crect x='124' y='242' width='6' height='6'/%3E%3Crect x='120' y='254' width='6' height='6'/%3E%3C!-- Europe --%3E%3Crect x='424' y='70' width='6' height='6'/%3E%3Crect x='432' y='70' width='6' height='6'/%3E%3Crect x='440' y='70' width='6' height='6'/%3E%3Crect x='448' y='70' width='6' height='6'/%3E%3Crect x='456' y='70' width='6' height='6'/%3E%3Crect x='416' y='82' width='6' height='6'/%3E%3Crect x='424' y='82' width='6' height='6'/%3E%3Crect x='432' y='82' width='6' height='6'/%3E%3Crect x='440' y='82' width='6' height='6'/%3E%3Crect x='448' y='82' width='6' height='6'/%3E%3Crect x='456' y='82' width='6' height='6'/%3E%3Crect x='464' y='82' width='6' height='6'/%3E%3Crect x='472' y='82' width='6' height='6'/%3E%3Crect x='408' y='94' width='6' height='6'/%3E%3Crect x='416' y='94' width='6' height='6'/%3E%3Crect x='424' y='94' width='6' height='6'/%3E%3Crect x='432' y='94' width='6' height='6'/%3E%3Crect x='440' y='94' width='6' height='6'/%3E%3Crect x='448' y='94' width='6' height='6'/%3E%3Crect x='456' y='94' width='6' height='6'/%3E%3Crect x='464' y='94' width='6' height='6'/%3E%3Crect x='472' y='94' width='6' height='6'/%3E%3Crect x='416' y='106' width='6' height='6'/%3E%3Crect x='424' y='106' width='6' height='6'/%3E%3Crect x='432' y='106' width='6' height='6'/%3E%3Crect x='440' y='106' width='6' height='6'/%3E%3Crect x='448' y='106' width='6' height='6'/%3E%3Crect x='456' y='106' width='6' height='6'/%3E%3Crect x='424' y='118' width='6' height='6'/%3E%3Crect x='432' y='118' width='6' height='6'/%3E%3Crect x='440' y='118' width='6' height='6'/%3E%3Crect x='432' y='130' width='6' height='6'/%3E%3Crect x='440' y='130' width='6' height='6'/%3E%3C!-- Africa --%3E%3Crect x='424' y='154' width='6' height='6'/%3E%3Crect x='432' y='154' width='6' height='6'/%3E%3Crect x='440' y='154' width='6' height='6'/%3E%3Crect x='448' y='154' width='6' height='6'/%3E%3Crect x='416' y='166' width='6' height='6'/%3E%3Crect x='424' y='166' width='6' height='6'/%3E%3Crect x='432' y='166' width='6' height='6'/%3E%3Crect x='440' y='166' width='6' height='6'/%3E%3Crect x='448' y='166' width='6' height='6'/%3E%3Crect x='456' y='166' width='6' height='6'/%3E%3Crect x='416' y='178' width='6' height='6'/%3E%3Crect x='424' y='178' width='6' height='6'/%3E%3Crect x='432' y='178' width='6' height='6'/%3E%3Crect x='440' y='178' width='6' height='6'/%3E%3Crect x='448' y='178' width='6' height='6'/%3E%3Crect x='416' y='190' width='6' height='6'/%3E%3Crect x='424' y='190' width='6' height='6'/%3E%3Crect x='432' y='190' width='6' height='6'/%3E%3Crect x='440' y='190' width='6' height='6'/%3E%3Crect x='424' y='202' width='6' height='6'/%3E%3Crect x='432' y='202' width='6' height='6'/%3E%3Crect x='428' y='214' width='6' height='6'/%3E%3C!-- Asia --%3E%3Crect x='488' y='70' width='6' height='6'/%3E%3Crect x='500' y='70' width='6' height='6'/%3E%3Crect x='512' y='70' width='6' height='6'/%3E%3Crect x='524' y='70' width='6' height='6'/%3E%3Crect x='536' y='70' width='6' height='6'/%3E%3Crect x='548' y='70' width='6' height='6'/%3E%3Crect x='480' y='82' width='6' height='6'/%3E%3Crect x='492' y='82' width='6' height='6'/%3E%3Crect x='504' y='82' width='6' height='6'/%3E%3Crect x='516' y='82' width='6' height='6'/%3E%3Crect x='528' y='82' width='6' height='6'/%3E%3Crect x='540' y='82' width='6' height='6'/%3E%3Crect x='552' y='82' width='6' height='6'/%3E%3Crect x='564' y='82' width='6' height='6'/%3E%3Crect x='576' y='82' width='6' height='6'/%3E%3Crect x='480' y='94' width='6' height='6'/%3E%3Crect x='492' y='94' width='6' height='6'/%3E%3Crect x='504' y='94' width='6' height='6'/%3E%3Crect x='516' y='94' width='6' height='6'/%3E%3Crect x='528' y='94' width='6' height='6'/%3E%3Crect x='540' y='94' width='6' height='6'/%3E%3Crect x='552' y='94' width='6' height='6'/%3E%3Crect x='564' y='94' width='6' height='6'/%3E%3Crect x='576' y='94' width='6' height='6'/%3E%3Crect x='588' y='94' width='6' height='6'/%3E%3Crect x='480' y='106' width='6' height='6'/%3E%3Crect x='492' y='106' width='6' height='6'/%3E%3Crect x='504' y='106' width='6' height='6'/%3E%3Crect x='516' y='106' width='6' height='6'/%3E%3Crect x='528' y='106' width='6' height='6'/%3E%3Crect x='540' y='106' width='6' height='6'/%3E%3Crect x='552' y='106' width='6' height='6'/%3E%3Crect x='564' y='106' width='6' height='6'/%3E%3Crect x='576' y='106' width='6' height='6'/%3E%3Crect x='488' y='118' width='6' height='6'/%3E%3Crect x='500' y='118' width='6' height='6'/%3E%3Crect x='512' y='118' width='6' height='6'/%3E%3Crect x='524' y='118' width='6' height='6'/%3E%3Crect x='536' y='118' width='6' height='6'/%3E%3Crect x='548' y='118' width='6' height='6'/%3E%3C!-- Australia --%3E%3Crect x='568' y='230' width='6' height='6'/%3E%3Crect x='580' y='230' width='6' height='6'/%3E%3Crect x='560' y='242' width='6' height='6'/%3E%3Crect x='572' y='242' width='6' height='6'/%3E%3Crect x='584' y='242' width='6' height='6'/%3E%3Crect x='596' y='242' width='6' height='6'/%3E%3Crect x='560' y='254' width='6' height='6'/%3E%3Crect x='572' y='254' width='6' height='6'/%3E%3Crect x='584' y='254' width='6' height='6'/%3E%3Crect x='596' y='254' width='6' height='6'/%3E%3Crect x='568' y='266' width='6' height='6'/%3E%3Crect x='580' y='266' width='6' height='6'/%3E%3C!-- Greenland --%3E%3Crect x='160' y='46' width='6' height='6'/%3E%3Crect x='172' y='46' width='6' height='6'/%3E%3Crect x='160' y='58' width='6' height='6'/%3E%3Crect x='172' y='58' width='6' height='6'/%3E%3Crect x='184' y='58' width='6' height='6'/%3E%3C/g%3E%3C/svg%3E");
  background-size:cover;
  background-position:center 30%;
  background-repeat:no-repeat;
  opacity:1;
}

.hero-inner{
  display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center;
  width:100%;position:relative;z-index:1;
}

/* ── SHARED LAYOUT ── */
/* .wrap constrains content to max-width, with consistent horizontal padding */
.wrap{max-width:var(--wrap);margin:0 auto;padding-left:var(--pad);padding-right:var(--pad)}

.pill{display:inline-flex;align-items:center;gap:.5rem;background:var(--red-lt);border:1px solid var(--red-mid);color:var(--red);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.38rem .95rem;border-radius:100px;margin-bottom:1.4rem}
.pill-dot{width:5px;height:5px;border-radius:50%;background:var(--red)}
.hero h1{font-size:clamp(2.6rem,4.5vw,4rem);font-weight:800;line-height:1.1;letter-spacing:-.025em;color:var(--black);margin-bottom:1.4rem}
.hero h1 .red{color:var(--red)}
.hero-sub{font-size:1rem;color:var(--muted);line-height:1.85;max-width:500px;margin-bottom:2.4rem}
.hero-btns{display:flex;gap:.9rem;flex-wrap:wrap}

.btn{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;padding:.9rem 2rem;border-radius:10px;font-size:.875rem;font-weight:700;transition:background .2s,transform .2s,box-shadow .2s}
.btn-red{background:var(--red);color:var(--white);box-shadow:0 4px 16px rgba(200,16,46,.3)}
.btn-red:hover{background:var(--red-dk);transform:translateY(-2px);box-shadow:0 8px 24px rgba(200,16,46,.35)}
.btn-ghost{background:transparent;color:var(--text);border:1.5px solid var(--border)}
.btn-ghost:hover{border-color:var(--red);color:var(--red)}

.hcards{display:flex;flex-direction:column;gap:.9rem}
.hcard{background:var(--white);border-radius:14px;border:1px solid var(--border);box-shadow:var(--sh);padding:1.2rem 1.5rem;display:flex;align-items:center;gap:1.1rem;transition:transform .3s,box-shadow .3s}
.hcard:hover{transform:translateX(5px);box-shadow:0 8px 28px rgba(0,0,0,.1)}
.hcard.red{background:var(--red);border-color:transparent}
.hcard-icon{width:42px;height:42px;border-radius:10px;flex-shrink:0;background:var(--red-lt);display:flex;align-items:center;justify-content:center;color:var(--red)}
.hcard.red .hcard-icon{background:rgba(255,255,255,.18);color:#fff}
.hcard-lbl{font-size:.68rem;color:var(--muted);font-weight:500;margin-bottom:.18rem;letter-spacing:.04em}
.hcard.red .hcard-lbl{color:rgba(255,255,255,.65)}
.hcard-val{font-size:.95rem;font-weight:700;color:var(--black)}
.hcard.red .hcard-val{color:#fff}

/* ── WAVE DIVIDERS ──
   Strategy: the wave SVG sits between sections with no background.
   The hero's gradient blends into #fff at the bottom naturally.
   The wave shape is the fill colour of the NEXT section.
   We use a negative margin on the SECTION AFTER the wave to pull
   it up, so the wave visually overlaps the bottom of the hero.
   This avoids any overflow/clipping conflicts entirely. */

.wave{display:block;width:100%;line-height:0;overflow:hidden;flex-shrink:0}

/* The wave-hero sits between hero-clip and the companies section.
   It has no background — page bg shows through.
   The companies section pulls up via margin-top to hide the gap. */
.wave-hero{
  display:block;width:100%;line-height:0;overflow:hidden;
  /* No margin tricks — background continuity is handled by
     the hero ending in near-white and the wave fill = #f8f9fb */
}

/* companies section: pull up to eliminate any gap after wave */
#companies{margin-top:0}

.wave-flip{display:block;width:100%;line-height:0;margin-top:-1px;overflow:hidden}


/* ── SECTIONS ── */
.sec{padding:6rem 0}
.bg-light{background:var(--light)}
.bg-black{background:var(--black);color:#fff}

.sec-hd{text-align:center;margin-bottom:3.5rem}
.eyebrow{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:.65rem}
.sec-hd h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;letter-spacing:-.02em;color:var(--black);margin-bottom:.65rem;line-height:1.2}
.sec-sub{font-size:.95rem;color:var(--muted);line-height:1.75;max-width:520px;margin:0 auto}

/* ── COMPANY CARDS ── */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}

.card{background:var(--white);border-radius:20px;border:1px solid var(--border);box-shadow:var(--sh);overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .3s,box-shadow .3s}
.card:hover{transform:translateY(-8px);box-shadow:var(--sh-hv)}
.card-bar{height:4px;background:var(--red)}
.card-logo-area{
  padding:1.8rem 2rem;
  background:#fff; /* white bg — logos have white background */
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  min-height:100px;
}
/* All company logos are 1600×1279 (ratio ~1.25).
   Give them a consistent display size. */
.card-logo-area img{
  max-height:64px;
  max-width:200px;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
.logo-ph{font-size:1.2rem;font-weight:800;color:var(--black);text-align:center;line-height:1.3}
.logo-ph span{color:var(--red)}
.logo-ph small{display:block;font-size:.72rem;font-weight:500;color:var(--muted);margin-top:.3rem;letter-spacing:.04em}
.card-body{padding:1.6rem 1.8rem 1.8rem;display:flex;flex-direction:column;flex:1}
.tag{display:inline-flex;align-items:center;background:var(--red-lt);color:var(--red);font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.26rem .7rem;border-radius:100px;margin-bottom:.9rem;width:fit-content}
.card-title{font-size:1.05rem;font-weight:800;color:var(--black);margin-bottom:.55rem;line-height:1.3}
.card-desc{font-size:.83rem;color:var(--muted);line-height:1.75;flex:1;margin-bottom:1.4rem}
.card-feats{list-style:none;margin-bottom:1.5rem}
.card-feats li{font-size:.79rem;color:var(--text);padding:.35rem 0;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.55rem}
.card-feats li:last-child{border-bottom:none}
.card-feats li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--red);flex-shrink:0}
.card-btn{display:flex;align-items:center;justify-content:space-between;background:var(--red);color:#fff;padding:.82rem 1.25rem;border-radius:10px;font-size:.8rem;font-weight:700;transition:background .2s}
.card-btn:hover{background:var(--red-dk)}
.arr{transition:transform .2s;display:inline-block}
.card:hover .arr,.wcard:hover .arr{transform:translateX(4px)}

/* ── WEBSHOP CARDS ── */
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem;max-width:900px;margin:0 auto}

.wcard{background:var(--white);border-radius:20px;border:1px solid var(--border);box-shadow:var(--sh);overflow:hidden;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.wcard:hover{transform:translateY(-8px);box-shadow:var(--sh-hv)}
.wcard-top{
  height:150px;
  background:#fff;
  border-bottom:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  position:relative;overflow:hidden;
  padding:1.5rem 2rem;
}
/* Subtle red accent line at top */
.wcard-top::before{
  content:'';position:absolute;top:0;left:0;right:0;height:4px;
  background:var(--red);
}
/* Light decorative circle in corner */
.wcard-top::after{
  content:'';position:absolute;bottom:-40px;right:-40px;
  width:120px;height:120px;border-radius:50%;
  background:var(--red-lt);
  pointer-events:none;
}
.wcard-top img{
  max-height:72px;
  max-width:240px;
  width:auto;height:auto;
  object-fit:contain;
  position:relative;z-index:1;
  display:block;
}
.wcard-body{padding:1.6rem 1.9rem 2rem;display:flex;flex-direction:column;flex:1}
.wcard-title{font-size:1.1rem;font-weight:800;color:var(--black);margin-bottom:.5rem}
.wcard-url{font-size:.78rem;color:var(--red);font-weight:600;margin-bottom:.9rem}
.wcard-desc{font-size:.83rem;color:var(--muted);line-height:1.75;flex:1;margin-bottom:1.5rem}
.wcard-btn{display:flex;align-items:center;justify-content:space-between;background:var(--black);color:#fff;padding:.82rem 1.25rem;border-radius:10px;font-size:.8rem;font-weight:700;transition:background .2s}
.wcard-btn:hover{background:#2d2d2d}

/* ── ABOUT ── */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.about-h2{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:800;letter-spacing:-.02em;color:var(--black);margin-bottom:.8rem;line-height:1.2;text-align:left}
.about-grid .eyebrow{display:block}
.about-grid p{font-size:.93rem;color:var(--muted);line-height:1.85;margin-bottom:1.1rem}
.addr-box{margin-top:1.8rem;background:var(--white);border:1px solid var(--border);border-radius:14px;padding:1.4rem 1.6rem;display:flex;align-items:flex-start;gap:1rem}
.addr-icon{width:38px;height:38px;border-radius:10px;flex-shrink:0;background:var(--red-lt);display:flex;align-items:center;justify-content:center;color:var(--red)}
.addr-lbl{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem;font-weight:600}
.addr-val{font-size:.88rem;color:var(--text);font-weight:600;line-height:1.5}

.about-stat-box{background:linear-gradient(140deg,var(--red) 0%,#8b0d1f 100%);border-radius:22px;padding:2.8rem 2.6rem;color:#fff;position:relative;overflow:hidden}
.about-stat-box::before{content:'';position:absolute;top:-70px;right:-70px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.07)}
.about-stat-box::after{content:'';position:absolute;bottom:-90px;left:-50px;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.04)}
.stat-box-title{font-size:.95rem;font-weight:700;opacity:.85;margin-bottom:2rem;position:relative;z-index:1}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem 2rem;position:relative;z-index:1}
.stat-num{font-size:2.4rem;font-weight:800;line-height:1;margin-bottom:.3rem}
.stat-lbl{font-size:.75rem;opacity:.7}
.stat-hr{grid-column:span 2;height:1px;background:rgba(255,255,255,.15)}
.chips{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:2rem;position:relative;z-index:1}
.chip{background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);border-radius:100px;padding:.32rem .8rem;font-size:.7rem;font-weight:600}

/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.contact-left h2{color:#fff;text-align:left}
.contact-left .eyebrow{color:#f87171;display:block}
.contact-left > p{font-size:.93rem;color:#9ca3af;line-height:1.85;margin-top:.75rem}
.ci-list{display:flex;flex-direction:column;gap:.8rem;margin-top:2rem}
.ci{display:flex;align-items:center;gap:.95rem;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:1rem 1.25rem}
.ci-icon{width:36px;height:36px;border-radius:9px;flex-shrink:0;background:rgba(200,16,46,.18);display:flex;align-items:center;justify-content:center;color:#f87171}
.ci-lbl{font-size:.65rem;letter-spacing:.09em;text-transform:uppercase;color:#6b7280;margin-bottom:.15rem}
.ci-val{font-size:.88rem;color:#fff;font-weight:500}
.ci-val a{color:inherit;text-decoration:none}
.ci-val a:hover{color:#f87171}

.form-box{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:2.2rem}
.form-box h3{font-size:.95rem;font-weight:700;color:#fff;margin-bottom:1.6rem}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fg{margin-bottom:.95rem}
.fg label{display:block;font-size:.68rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:#6b7280;margin-bottom:.42rem}
.fg input,.fg textarea,.fg select{width:100%;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:9px;padding:.76rem 1rem;color:#fff;font-family:var(--font);font-size:.875rem;outline:none;transition:border-color .2s;-webkit-appearance:none;appearance:none}
.fg input::placeholder,.fg textarea::placeholder{color:#374151}
.fg input:focus,.fg textarea:focus,.fg select:focus{border-color:var(--red)}
.fg textarea{resize:vertical;min-height:88px}
.fg select option{background:#1f2937}

#form-msg{display:none;padding:.75rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;margin-bottom:1rem}
#form-msg.ok{background:rgba(34,197,94,.15);color:#16a34a;border:1px solid rgba(34,197,94,.3);display:block}
#form-msg.err{background:rgba(200,16,46,.12);color:var(--red);border:1px solid rgba(200,16,46,.25);display:block}

.form-submit{width:100%;background:var(--red);color:#fff;border:none;border-radius:10px;padding:.95rem;font-family:var(--font);font-size:.875rem;font-weight:700;cursor:pointer;box-shadow:0 4px 16px rgba(200,16,46,.3);margin-top:.3rem;transition:background .2s,transform .15s}
.form-submit:hover:not(:disabled){background:var(--red-dk);transform:translateY(-1px)}
.form-submit:disabled{opacity:.6;cursor:not-allowed}

/* Honeypot — visually hidden from humans, bots fill it */
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none;tabindex:-1}

/* reCAPTCHA badge — hide default badge (we mention it in the form label) */
.grecaptcha-badge{visibility:hidden!important}
#footer{background:#0b0d11;border-top:1px solid rgba(255,255,255,.05);padding:1.75rem 0}
.foot-inner{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}
/* Logo image in footer — inverted so it reads on dark background */
.foot-logo-link{text-decoration:none;display:flex;align-items:center;flex-shrink:0}
.foot-logo-img{height:30px;width:auto;display:block;object-fit:contain;filter:invert(1) brightness(0.65)}
.foot-copy{font-size:.72rem;color:#374151}
.foot-links{display:flex;gap:1.6rem;list-style:none}
.foot-links a{text-decoration:none;color:#374151;font-size:.72rem;transition:color .2s}
.foot-links a:hover{color:var(--red)}

/* ── ANIMATIONS ── */
.fu{opacity:0;transform:translateY(22px);animation:fu .65s ease forwards}
@keyframes fu{to{opacity:1;transform:translateY(0)}}
.d1{animation-delay:.05s}.d2{animation-delay:.15s}.d3{animation-delay:.28s}
.d4{animation-delay:.4s}.d5{animation-delay:.52s}

html.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .65s ease,transform .65s ease}
html.js .reveal.in{opacity:1;transform:none}
.delay1{transition-delay:.1s}
.delay2{transition-delay:.2s}
.delay3{transition-delay:.3s}

/* ── RESPONSIVE ── */
@media(max-width:1024px){
  .grid3{grid-template-columns:1fr 1fr}
}

@media(max-width:900px){
  .nav-links{display:none}
  .burger{display:flex}
  /* Give hero less bottom padding on mobile — wave is smaller */
  .hero{padding:120px 0 100px}
  .hero-inner{grid-template-columns:1fr}
  .hcards{display:none}
  .about-grid,.contact-grid{grid-template-columns:1fr;gap:3rem}
  .form-row{grid-template-columns:1fr}
}

@media(max-width:640px){
  /* Prevent any section from causing horizontal scroll */
  .sec,.bg-light,.bg-black{overflow-x:hidden}
  /* Single column for all grids */
  .grid3,.grid2{grid-template-columns:1fr}
  /* Slightly less padding on small screens */
  .sec{padding:3.5rem 0}
  /* Cards: don't let them be wider than the viewport */
  .card,.wcard{max-width:100%}
  /* Ensure card text doesn't overflow */
  .card-title,.wcard-title{word-break:break-word}
  /* Footer center-align on mobile */
  .foot-inner{justify-content:center;text-align:center}
  .foot-links{justify-content:center}
  /* Reduce hero font sizes slightly */
  .hero h1{font-size:clamp(2rem,8vw,2.8rem)}
  .hero-sub{font-size:.9rem}
  /* hero padding on small screens */
  .hero{padding:110px 0 80px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

