/* ============================================
   BurstMarketplace · Design System v3
   White, sharp, confident. Black + Burst orange.
   ============================================ */

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

:root{
  /* Palette */
  --bg:#FFFFFF;            /* pure white */
  --bg-2:#FAFAF9;          /* near white. Slight warm. Subtle section break. */
  --ink:#0A0A0A;           /* near black */
  --ink-1:#171717;
  --ink-2:#404040;         /* secondary text */
  --ink-3:#737373;         /* tertiary */
  --ink-4:#A3A3A3;         /* muted */
  --rule:#E5E5E5;          /* hairlines */
  --rule-2:#D4D4D4;
  --tint:#F5F5F5;          /* subtle fill */
  --accent:#F05A1A;        /* BURST orange */
  --accent-2:#C84412;
  --accent-tint:#FFEEDF;
  --accent-glow:#FF7A3A;
  --dark:#0A0A0A;
  --dark-2:#171717;
  --dark-rule:rgba(255,255,255,.10);
  --ok:#16A34A;

  /* Type. Geist for everything. */
  --ff:'Geist', -apple-system, system-ui, sans-serif;
  --fm:'Geist Mono', ui-monospace, 'SF Mono', monospace;

  /* Layout */
  --container:1480px;
  --gutter:clamp(20px, 4vw, 64px);
  --nav-h:88px;
}

html{scroll-behavior:smooth;}
body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--ff);
  font-size:16px;
  line-height:1.55;
  font-feature-settings:"ss01","cv11";
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
  font-weight:400;
}

::selection{background:var(--accent);color:var(--bg);}
::-webkit-scrollbar{width:10px;height:10px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--rule);border-radius:0;}
::-webkit-scrollbar-thumb:hover{background:var(--ink-4);}

/* ── Type tokens ──────────────────────────── */

.eyebrow{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-3);
  font-weight:500;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
.eyebrow::before{
  content:'';
  width:24px; height:1px;
  background:var(--accent);
}

h1,.h1{
  font-family:var(--ff);
  font-weight:600;
  font-size:clamp(2.8rem, 7.5vw, 7.5rem);
  line-height:.94;
  letter-spacing:-.035em;
  color:var(--ink);
}
h1 .accent,.h1 .accent{color:var(--accent);}

h2,.h2{
  font-family:var(--ff);
  font-weight:600;
  font-size:clamp(2.6rem, 6vw, 5.4rem);
  line-height:.98;
  letter-spacing:-.028em;
  color:var(--ink);
}
h2 .accent,.h2 .accent{color:var(--accent);}

h3,.h3{
  font-family:var(--ff);
  font-weight:600;
  font-size:clamp(1.4rem, 2.4vw, 2rem);
  line-height:1.1;
  letter-spacing:-.018em;
}

h4,.h4{
  font-family:var(--ff);
  font-size:1.1rem;
  font-weight:600;
  letter-spacing:-.01em;
  line-height:1.3;
}

p{color:var(--ink-2);}
.lede{
  font-size:clamp(1.05rem, 1.3vw, 1.2rem);
  line-height:1.55;
  color:var(--ink-2);
  max-width:62ch;
  font-weight:400;
}
.lede-lg{
  font-size:clamp(1.4rem, 2vw, 1.85rem);
  line-height:1.35;
  letter-spacing:-.01em;
  color:var(--ink);
  font-weight:500;
  max-width:32ch;
}
.muted{color:var(--ink-3);}
a{color:inherit;}

/* ── Container & sections ──────────────────── */

.wrap{
  max-width:var(--container);
  margin:0 auto;
  padding:0 var(--gutter);
}
section{padding:clamp(64px, 8vw, 128px) 0;}
section.tight{padding:clamp(48px, 6vw, 88px) 0;}
.divider{border-top:1px solid var(--rule);}
.section-head{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
  margin-bottom:clamp(48px, 6vw, 80px);
}
/* Ensure consecutive panels and sections have breathing room */
.panel-dark + section,
.panel-fire + section,
section + .panel-dark,
section + .panel-fire{margin-top:0;}
section + section{padding-top:0;}
@media(min-width:900px){
  .section-head.split{
    grid-template-columns:1.5fr 1fr;
    gap:64px;
    align-items:end;
  }
}

/* ── Navigation ────────────────────────────── */

.nav{
  position:fixed; top:0; left:0; right:0;
  height:var(--nav-h);
  z-index:80;
  background:rgba(255,255,255,.92);
  backdrop-filter:saturate(180%) blur(16px);
  -webkit-backdrop-filter:saturate(180%) blur(16px);
  border-bottom:1px solid var(--rule);
}
.nav-inner{
  height:100%;
  max-width:var(--container);
  margin:0 auto;
  padding:0 var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:32px;
}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
  color:var(--ink);
  cursor:pointer;
}
.brand-logo{
  height:34px;
  width:auto;
  display:block;
}
.nav-menu{
  display:flex;
  gap:6px;
  list-style:none;
}
.nav-menu a{
  font-size:.93rem;
  font-weight:500;
  color:var(--ink-2);
  padding:10px 16px;
  text-decoration:none;
  cursor:pointer;
  transition:color .15s ease;
  white-space:nowrap;
}
.nav-menu a:hover{color:var(--ink);}
.nav-menu a.on{color:var(--accent);}
.nav-cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.92rem;
  font-weight:500;
  color:var(--bg);
  background:var(--ink);
  padding:13px 24px;
  text-decoration:none;
  border:1px solid var(--ink);
  transition:background .2s ease, border-color .2s ease;
  border-radius:100px;
  white-space:nowrap;
}
.nav-cta::after{content:'';width:5px;height:5px;border-radius:50%;background:var(--accent);}
.nav-cta:hover{background:var(--accent);border-color:var(--accent);}
.nav-cta:hover::after{background:var(--bg);}
.nav-toggle{
  display:none;
  background:transparent;
  border:1px solid var(--rule);
  padding:8px 12px;
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  cursor:pointer;
  border-radius:100px;
}

/* ── Pages (SPA) ──────────────────────────── */

.page{display:none;padding:0;}
.page.active{display:block;}
main{padding-top:var(--nav-h);}

/* ── Buttons ──────────────────────────────── */

.btn{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-family:var(--ff);
  font-size:.92rem;
  font-weight:500;
  padding:14px 26px;
  text-decoration:none;
  cursor:pointer;
  border:1px solid transparent;
  transition:all .2s ease;
  white-space:nowrap;
  border-radius:100px;
}
.btn::after{
  content:'';
  width:6px;height:6px;border-radius:50%;
  background:currentColor;
  transition:transform .2s ease;
  opacity:.6;
}
.btn:hover::after{transform:translateX(2px);opacity:1;}
.btn-ink{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.btn-ink::after{background:var(--accent);opacity:1;}
.btn-ink:hover{background:var(--accent);border-color:var(--accent);}
.btn-ink:hover::after{background:var(--bg);}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--rule-2);}
.btn-ghost:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.btn-ghost:hover::after{background:var(--accent);}
.btn-paper{background:var(--bg);color:var(--ink);border-color:var(--bg);}
.btn-paper::after{background:var(--accent);opacity:1;}
.btn-paper:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);}
.btn-paper:hover::after{background:var(--bg);}
.btn-fire{background:var(--accent);color:var(--bg);border-color:var(--accent);}
.btn-fire::after{background:var(--bg);opacity:1;}
.btn-fire:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);}

.lnk{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:.92rem;
  font-weight:500;
  color:var(--ink);
  text-decoration:none;
  cursor:pointer;
  transition:color .15s, gap .15s;
}
.lnk::after{
  content:'';
  width:14px; height:1px;
  background:var(--accent);
  transition:width .2s;
}
.lnk:hover{color:var(--accent);gap:10px;}
.lnk:hover::after{width:22px;}

/* ── HERO ──────────────────────────────────── */

.hero{
  padding-top:clamp(16px, 2vw, 32px);
  padding-bottom:clamp(40px, 5vw, 72px);
  position:relative;
}
.hero-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:48px;
  align-items:end;
}
@media(min-width:1000px){
  .hero-grid{
    grid-template-columns:1.5fr 1fr;
    gap:64px;
  }
}
.hero h1{
  letter-spacing:-.04em;
  margin-bottom:24px;
}
.hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:32px;
}
.hero-meta{
  display:flex;
  flex-direction:column;
  gap:24px;
}
.hero-meta-card{
  background:var(--tint);
  padding:24px;
  border-radius:14px;
  font-size:.92rem;
  color:var(--ink-2);
  line-height:1.55;
}
.hero-meta-card-head{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:10px;
  display:flex;
  align-items:center;
  gap:8px;
}
.hero-meta-card-head::before{
  content:'';
  width:6px; height:6px;
  border-radius:50%;
  background:var(--accent);
}

/* Big hero stat row */
.hero-stats{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:0;
  padding:48px 0;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  margin-top:clamp(56px, 7vw, 96px);
}
.hero-stat{
  padding:0 clamp(16px, 2vw, 32px);
  border-right:1px solid var(--rule);
}
.hero-stat:last-child{border-right:0;}
.hero-stat-num{
  font-size:clamp(2.4rem, 4.5vw, 4rem);
  font-weight:600;
  letter-spacing:-.035em;
  line-height:1;
  color:var(--ink);
  margin-bottom:14px;
}
.hero-stat-num .accent{color:var(--accent);}
.hero-stat-lbl{
  font-size:.82rem;
  color:var(--ink-3);
  line-height:1.45;
  max-width:24ch;
}
@media(max-width:900px){
  .hero-stats{grid-template-columns:1fr 1fr;gap:24px 0;}
  .hero-stat{padding:16px clamp(16px, 2vw, 24px);border-right:1px solid var(--rule);}
  .hero-stat:nth-child(2n){border-right:0;}
}
@media(max-width:520px){
  .hero-stats{grid-template-columns:1fr;}
  .hero-stat{border-right:0;border-bottom:1px solid var(--rule);padding-bottom:24px;}
  .hero-stat:last-child{border-bottom:0;}
}

/* ── PARTNER MARQUEE ───────────────────────── */

.marquee{
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  background:var(--bg);
  overflow:hidden;
  padding:36px 0;
  position:relative;
}
.marquee::before,
.marquee::after{
  content:'';
  position:absolute;
  top:0; bottom:0;
  width:80px;
  z-index:2;
  pointer-events:none;
}
.marquee::before{left:0;background:linear-gradient(90deg, var(--bg), transparent);}
.marquee::after{right:0;background:linear-gradient(-90deg, var(--bg), transparent);}
.marquee-track{
  display:flex;
  width:max-content;
  align-items:center;
  gap:80px;
  animation:scroll 30s linear infinite;
}
@keyframes scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}
.marquee-item{
  display:flex;
  align-items:center;
  justify-content:center;
  height:72px;
  min-width:200px;
  flex-shrink:0;
  line-height:0;
}
.marquee-item img{
  height:auto;
  max-height:56px;
  width:auto;
  max-width:220px;
  object-fit:contain;
  display:block;
  filter:grayscale(1) brightness(.4);
  opacity:.75;
  transition:filter .25s, opacity .25s;
  vertical-align:middle;
}
.marquee:hover .marquee-track{animation-play-state:paused;}
.marquee-item:hover img{filter:none;opacity:1;}

.marquee-head{
  text-align:center;
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:24px;
}

/* ── Numbered services rows ─────────────────── */

.services{
  border-top:1px solid var(--ink);
}
.svc-row{
  display:grid;
  grid-template-columns:64px 1fr 2.2fr auto;
  gap:clamp(20px, 4vw, 64px);
  padding:clamp(28px, 4vw, 48px) 0;
  border-bottom:1px solid var(--rule);
  align-items:start;
  cursor:pointer;
  transition:padding-left .25s ease;
  text-decoration:none;
  color:var(--ink);
}
.svc-row:last-child{border-bottom:1px solid var(--ink);}
.svc-row:hover{padding-left:24px;background:var(--tint);}
.svc-num{
  font-family:var(--fm);
  font-size:.82rem;
  color:var(--ink-3);
  font-weight:500;
  padding-top:6px;
  transition:color .2s;
}
.svc-row:hover .svc-num{color:var(--accent);}
.svc-title{
  font-family:var(--ff);
  font-size:clamp(1.5rem, 2.4vw, 2.2rem);
  font-weight:500;
  line-height:1.05;
  letter-spacing:-.02em;
  color:var(--ink);
}
.svc-desc{
  font-size:.95rem;
  color:var(--ink-3);
  line-height:1.55;
  max-width:60ch;
  padding-top:8px;
}
.svc-arrow{
  width:48px; height:48px;
  border:1px solid var(--rule-2);
  border-radius:50%;
  display:grid;place-items:center;
  font-size:1.2rem;
  color:var(--ink-2);
  transition:all .25s ease;
  flex-shrink:0;
}
.svc-row:hover .svc-arrow{
  background:var(--ink);
  color:var(--bg);
  border-color:var(--ink);
  transform:translate(4px,-4px) rotate(-12deg);
}

/* ── PLATFORM CARDS ────────────────────────── */

.platforms-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
}
.plat-card{
  background:var(--bg);
  padding:clamp(32px, 3vw, 48px);
  display:flex;
  flex-direction:column;
  min-height:420px;
  transition:background .2s;
}
.plat-card:hover{background:var(--tint);}
.plat-logo{
  height:36px;
  margin-bottom:32px;
  display:flex;
  align-items:center;
}
.plat-logo img{
  height:100%;
  width:auto;
  max-width:180px;
}
.plat-card h3{margin-bottom:14px;font-size:1.6rem;letter-spacing:-.02em;}
.plat-card-body{
  color:var(--ink-2);
  font-size:.95rem;
  line-height:1.55;
  margin-bottom:24px;
}
.plat-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:28px;
}
.tag{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.04em;
  color:var(--ink-2);
  padding:5px 10px;
  border:1px solid var(--rule);
  background:var(--bg);
  border-radius:100px;
  font-weight:500;
}
.plat-stat{
  margin-top:auto;
  padding-top:24px;
  border-top:1px solid var(--rule);
  display:flex;
  align-items:baseline;
  justify-content:space-between;
}
.plat-stat-num{
  font-size:2rem;
  font-weight:600;
  letter-spacing:-.025em;
  color:var(--ink);
}
.plat-stat-num .accent{color:var(--accent);}
.plat-stat-lbl{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
}

/* ── DARK INVERSE PANEL ────────────────────── */

.panel-dark{
  background:var(--dark);
  color:var(--bg);
  padding:clamp(80px, 10vw, 160px) 0;
  margin:clamp(40px, 6vw, 80px) auto;
  border-radius:24px;
  max-width:calc(100% - clamp(40px,8vw,128px));
}
.panel-dark h1,
.panel-dark h2,
.panel-dark h3,
.panel-dark h4{color:var(--bg);}
.panel-dark h1 .accent,
.panel-dark h2 .accent,
.panel-dark h3 .accent{color:var(--accent);}
.panel-dark p,
.panel-dark .lede{color:rgba(255,255,255,.72);}
.panel-dark .eyebrow{color:rgba(255,255,255,.55);}
.panel-dark .eyebrow::before{background:var(--accent);}
.panel-dark .muted{color:rgba(255,255,255,.55);}
.panel-dark .checks li{border-bottom-color:var(--dark-rule);color:rgba(255,255,255,.85);}
.panel-dark .lnk{color:var(--bg);}
.panel-dark .lnk:hover{color:var(--accent);}

/* ── FIRE PANEL (orange CTA) ───────────────── */

.panel-fire{
  background:var(--accent);
  color:var(--ink);
  position:relative;
  overflow:hidden;
  padding:clamp(80px, 10vw, 140px) 0;
}
.panel-fire h2{
  color:var(--ink);
  max-width:18ch;
}
.panel-fire h2 .accent{color:var(--bg);}
.panel-fire .lede{color:rgba(10,10,10,.78);max-width:46ch;}
.panel-fire-grid{
  display:grid;
  grid-template-columns:1.4fr auto;
  gap:48px;
  align-items:end;
}
@media(max-width:800px){
  .panel-fire-grid{grid-template-columns:1fr;gap:32px;align-items:start;}
}

/* ── BIG NUMBERS BLOCK ─────────────────────── */

.bignums{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:0;
  border-top:1px solid var(--ink);
  border-bottom:1px solid var(--ink);
}
.bignum{
  padding:clamp(36px,5vw,72px) clamp(24px,3vw,40px);
  border-right:1px solid var(--rule);
}
.bignum:last-child{border-right:0;}
.bignum-n{
  font-size:clamp(3rem, 6vw, 5.5rem);
  font-weight:600;
  letter-spacing:-.04em;
  line-height:.9;
  color:var(--ink);
}
.bignum-n .accent{color:var(--accent);}
.bignum-lbl{
  font-size:.85rem;
  color:var(--ink-3);
  margin-top:20px;
  line-height:1.5;
  max-width:30ch;
}
@media(max-width:900px){
  .bignums{grid-template-columns:1fr 1fr;}
  .bignum{border-bottom:1px solid var(--rule);}
  .bignum:nth-child(2n){border-right:0;}
}
@media(max-width:520px){
  .bignums{grid-template-columns:1fr;}
  .bignum{border-right:0;}
}

/* ── EATALIAN PRODUCT HERO ─────────────────── */

.product-block{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
  background:var(--bg);
}
.product-body{
  padding:clamp(40px, 5vw, 80px);
  border-right:1px solid var(--rule);
}
.product-vis{
  background:linear-gradient(180deg, #1a1a1a 0%, #0A0A0A 100%);
  padding:clamp(48px, 6vw, 96px);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:24px;
  position:relative;
  min-height:480px;
}
.product-vis::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 60% 50% at 50% 100%, rgba(240,90,26,.25), transparent 70%),
    radial-gradient(ellipse 80% 60% at 50% 30%, rgba(240,90,26,.10), transparent 60%);
}
.product-img{
  width:240px;
  aspect-ratio:3/4;
  background:var(--bg);
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--ink-4);
  text-align:center;
  padding:20px;
  position:relative;
  z-index:1;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.5);
}
.product-img img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
.product-photo{
  position:relative;
  z-index:1;
  width:100%;
  max-width:380px;
  height:auto;
  border-radius:8px;
  box-shadow:0 30px 60px -20px rgba(0,0,0,.5);
  display:block;
}
.product-cap{
  position:relative;
  z-index:1;
  text-align:center;
  color:var(--bg);
}
.product-cap .nm{
  font-size:1.4rem;
  font-weight:600;
  letter-spacing:.02em;
}
.product-cap .sub{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(255,255,255,.6);
  margin-top:6px;
}
.product-flags{
  position:relative;z-index:1;
  display:flex; gap:6px; flex-wrap:wrap; justify-content:center;
}
.product-flag{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  color:rgba(255,255,255,.7);
  padding:5px 11px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:100px;
}
.product-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--fm);
  font-size:11px;
  font-weight:500;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--bg);
  background:var(--accent);
  padding:7px 14px;
  border-radius:100px;
  margin-bottom:24px;
}
.product-pill::before{
  content:'';
  width:6px;height:6px;border-radius:50%;background:var(--bg);
}
@media(max-width:900px){
  .product-block{grid-template-columns:1fr;}
  .product-body{border-right:0;border-bottom:1px solid var(--rule);}
}

/* ── DASH ──────────────────────────────────── */

.dash{
  background:var(--bg);
  border:1px solid var(--rule);
  border-radius:16px;
  overflow:hidden;
}
.dash-bar{
  padding:14px 18px;
  border-bottom:1px solid var(--rule);
  display:flex;
  align-items:center;
  gap:8px;
  background:var(--tint);
}
.dash-dot{width:8px;height:8px;border-radius:50%;background:var(--rule-2);}
.dash-lbl{
  margin-left:auto;
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
}
.dash-body{padding:24px;}
.dash-title{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:18px;
}
.dash-row{
  display:grid;
  grid-template-columns:96px 1fr 72px;
  gap:14px;
  align-items:center;
  margin-bottom:12px;
}
.dash-row span:first-child{font-size:.85rem;color:var(--ink-2);font-weight:500;}
.dash-track{
  height:6px;
  background:var(--tint);
  position:relative;
  border-radius:100px;
  overflow:hidden;
}
.dash-fill{
  height:100%;
  background:var(--ink);
  border-radius:100px;
}
.dash-fill.accent{background:var(--accent);}
.dash-val{
  font-size:.92rem;
  color:var(--ink);
  text-align:right;
  font-weight:500;
}
.dash-foot{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  border-top:1px solid var(--rule);
}
.dash-foot-cell{
  padding:18px 20px;
  border-right:1px solid var(--rule);
}
.dash-foot-cell:last-child{border-right:0;}
.dash-foot-num{
  font-size:1.4rem;
  font-weight:600;
  color:var(--ink);
  line-height:1;
  letter-spacing:-.02em;
}
.dash-foot-num .accent{color:var(--accent);}
.dash-foot-lbl{
  font-size:.72rem;
  color:var(--ink-3);
  margin-top:8px;
}

/* ── TWO COL ───────────────────────────────── */

.two{
  display:grid;
  grid-template-columns:1fr;
  gap:48px;
  align-items:start;
}
@media(min-width:900px){
  .two{grid-template-columns:1fr 1fr;gap:80px;}
  .two.flip > div:first-child{order:2;}
}

/* ── CHECKS / BULLETS ──────────────────────── */

.checks{
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:0;
  margin-top:24px;
}
.checks li{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  font-size:.95rem;
  color:var(--ink-2);
  line-height:1.55;
  padding:14px 0;
  border-bottom:1px solid var(--rule);
}
.checks li:last-child{border-bottom:0;}
.checks li::before{
  content:'';
  width:14px; height:14px;
  border-radius:50%;
  flex-shrink:0;
  margin-top:4px;
  background:var(--accent-tint);
  position:relative;
  background-image:url("data:image/svg+xml,%3Csvg width='8' height='7' viewBox='0 0 8 7' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 3.5L3 5.5L7 1' stroke='%23F05A1A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:center;
}
.checks li b{color:var(--ink);font-weight:600;}

/* ── TABS ──────────────────────────────────── */

.tabs{
  display:flex;
  gap:0;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
  position:sticky;
  top:var(--nav-h);
  background:var(--bg);
  z-index:50;
}
.tab{
  flex:1;
  padding:20px 24px;
  background:transparent;
  border:none;
  border-right:1px solid var(--rule);
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:12px;
  font-family:var(--ff);
  font-size:.95rem;
  font-weight:500;
  color:var(--ink-3);
  text-align:left;
  transition:background .15s, color .15s;
}
.tab:last-child{border-right:0;}
.tab:hover{background:var(--tint);color:var(--ink);}
.tab.on{color:var(--ink);background:var(--tint);}
.tab.on::before{
  content:'';
  width:7px;height:7px;border-radius:50%;
  background:var(--accent);
}
.tab-code{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  color:var(--ink-3);
  margin-left:auto;
  font-weight:400;
}
.tab.on .tab-code{color:var(--accent);}

.tabpane{display:none;}
.tabpane.on{display:block;}

/* ── Service detail block ──────────────────── */

.svc-block{
  display:grid;
  grid-template-columns:1fr;
  gap:48px;
  padding:clamp(64px, 8vw, 120px) 0;
  border-bottom:1px solid var(--rule);
}
@media(min-width:1000px){
  .svc-block{grid-template-columns:1.1fr 1fr;gap:96px;}
  .svc-block.flip > div:first-child{order:2;}
}
.svc-block:last-child{border-bottom:0;}

.detail-card{
  background:var(--bg);
  border:1px solid var(--rule);
  border-radius:16px;
  padding:32px;
  position:relative;
  box-shadow:0 1px 0 rgba(0,0,0,.02), 0 8px 24px -12px rgba(0,0,0,.08);
}
.detail-card-bar{
  height:44px;
  background:var(--tint);
  border-bottom:1px solid var(--rule);
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 18px;
}
.detail-card-bar::before,
.detail-card-bar::after,
.detail-card-bar i{
  content:'';
  width:9px;height:9px;border-radius:50%;
  background:var(--rule-2);
}
.detail-card-bar i{display:block;}
.detail-card-bar span{
  margin-left:auto;
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
}
.detail-card-body{padding:28px 32px;}
.detail-card-head{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.detail-card-head .live{
  font-size:10px;
  font-weight:500;
  color:var(--ok);
  letter-spacing:.08em;
  padding:3px 9px;
  border:1px solid var(--ok);
  border-radius:100px;
  background:rgba(22,163,74,.06);
  text-transform:uppercase;
}
.detail-card-foot{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  border-top:1px solid var(--rule);
}
.detail-card-foot > *{
  padding:18px 24px;
  border-right:1px solid var(--rule);
}
.detail-card-foot > *:last-child{border-right:0;}
.detail-card-foot .num{
  font-size:1.4rem;
  font-weight:600;
  letter-spacing:-.02em;
  color:var(--ink);
  line-height:1;
}
.detail-card-foot .num .accent{color:var(--accent);}
.detail-card-foot .lbl{
  font-family:var(--fm);
  font-size:10px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-top:8px;
}
.timeline{display:flex;flex-direction:column;gap:0;}
.timeline-row{
  display:grid;
  grid-template-columns:120px 1fr;
  gap:20px;
  padding:16px 0;
  border-bottom:1px solid var(--rule);
}
.timeline-row:last-child{border-bottom:0;padding-bottom:0;}
.timeline-when{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--accent);
  font-weight:500;
}
.timeline-what{
  font-family:var(--ff);
  font-size:1rem;
  font-weight:500;
  color:var(--ink);
  line-height:1.3;
}

.score-row{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:14px;
}
.score-head{
  display:flex;
  justify-content:space-between;
  font-size:.85rem;
  color:var(--ink-2);
}
.score-head b{color:var(--ink);font-weight:600;}

/* ── Value blocks (Retail Media) ───────────── */

.value-blocks{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
}
.value-block{
  padding:clamp(36px,4vw,56px);
  background:var(--bg);
  transition:background .2s;
}
.value-block:hover{background:var(--tint);}
.value-block h3{margin-bottom:18px;font-size:clamp(1.5rem,2.6vw,2.2rem);line-height:1.05;}
.value-block p{font-size:.96rem;color:var(--ink-2);line-height:1.6;margin-bottom:14px;}
.value-stat{
  display:flex;
  align-items:baseline;
  gap:14px;
  padding-top:24px;
  margin-top:24px;
  border-top:1px solid var(--rule);
}
.value-stat-num{
  font-size:2.4rem;
  font-weight:600;
  line-height:1;
  color:var(--accent);
  letter-spacing:-.03em;
}
.value-stat-lbl{
  font-size:.85rem;
  color:var(--ink-3);
  line-height:1.45;
}
@media(max-width:900px){
  .value-blocks{grid-template-columns:1fr;}
}

/* ── Founder cards ─────────────────────────── */

.founders{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
}
.founder{
  padding:clamp(36px,4vw,56px);
  background:var(--bg);
  display:grid;
  grid-template-columns:auto 1fr;
  gap:32px;
  align-items:start;
}
.founder-photo{
  width:130px;
  aspect-ratio:4/5;
  background:linear-gradient(135deg, var(--tint), var(--accent-tint));
  border-radius:8px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:10px;
  font-family:var(--fm);
  font-size:9px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-4);
  flex-shrink:0;
}
.founder-photo img{
  width:100%;height:100%;object-fit:cover;border-radius:6px;
}
.founder-name{
  font-size:1.65rem;
  font-weight:600;
  line-height:1.05;
  letter-spacing:-.025em;
  color:var(--ink);
}
.founder-role{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.04em;
  color:var(--accent);
  margin-top:8px;
  margin-bottom:18px;
  font-weight:500;
}
.founder-bio{
  font-size:.92rem;
  color:var(--ink-2);
  line-height:1.6;
}
.founder-li{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.85rem;
  font-weight:500;
  color:var(--ink);
  text-decoration:none;
  margin-top:16px;
  padding:6px 12px;
  border:1px solid var(--rule-2);
  border-radius:100px;
  transition:all .2s;
}
.founder-li:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);}
.founder-li::after{content:'→';font-size:.95rem;}
@media(max-width:900px){
  .founders{grid-template-columns:1fr;}
}
@media(max-width:520px){
  .founder{grid-template-columns:1fr;gap:18px;}
  .founder-photo{width:96px;}
}

/* ── Offices ───────────────────────────────── */

.offices{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1px;
  background:var(--rule);
  border:1px solid var(--rule);
  border-radius:24px;
  overflow:hidden;
}
.office{
  padding:clamp(28px,3vw,40px);
  background:var(--bg);
  display:flex;
  flex-direction:column;
  gap:14px;
  min-height:240px;
}
.office-flag{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  margin-bottom:14px;
}
.office-flag .code{
  font-size:2.4rem;
  font-weight:600;
  color:var(--accent);
  line-height:1;
  letter-spacing:-.04em;
}
.office-flag .country{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-3);
}
.office-entity{
  font-size:1.15rem;
  font-weight:600;
  color:var(--ink);
  letter-spacing:-.015em;
  line-height:1.2;
}
.office-addr{
  font-size:.85rem;
  color:var(--ink-2);
  line-height:1.6;
  margin-top:auto;
}
@media(max-width:900px){.offices{grid-template-columns:1fr;}}

/* ── Story timeline ────────────────────────── */

.story{
  display:flex;
  flex-direction:column;
  border-top:1px solid var(--rule);
}
.story-row{
  display:grid;
  grid-template-columns:160px 1fr 1.6fr;
  gap:48px;
  padding:40px 0;
  border-bottom:1px solid var(--rule);
  align-items:start;
}
.story-year{
  font-size:2rem;
  font-weight:600;
  color:var(--accent);
  letter-spacing:-.03em;
  line-height:1;
}
.story-row h4{
  font-size:1.3rem;
  font-weight:600;
  letter-spacing:-.018em;
  line-height:1.15;
  color:var(--ink);
}
.story-row p{font-size:.95rem;color:var(--ink-2);line-height:1.6;}
@media(max-width:900px){
  .story-row{grid-template-columns:1fr;gap:14px;padding:28px 0;}
}

/* ── Quote ─────────────────────────────────── */

.quote{
  padding:clamp(64px,8vw,128px) 0;
  text-align:center;
  border-top:1px solid var(--rule);
  border-bottom:1px solid var(--rule);
}
.quote-mark{
  font-size:clamp(4rem,8vw,7rem);
  color:var(--accent);
  line-height:.7;
  font-weight:600;
  margin-bottom:24px;
}
.quote-text{
  font-size:clamp(1.6rem,3.2vw,2.6rem);
  font-weight:500;
  line-height:1.2;
  color:var(--ink);
  max-width:24ch;
  margin:0 auto 32px;
  letter-spacing:-.025em;
}
.quote-text .accent{color:var(--accent);}
.quote-attr{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--ink-3);
}

/* ── Form ──────────────────────────────────── */

.form{
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width:520px;
}
.field{display:flex;flex-direction:column;gap:6px;}
.field label{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--ink-3);
  font-weight:500;
}
.field input,
.field select,
.field textarea{
  font-family:var(--ff);
  font-size:.95rem;
  color:var(--ink);
  background:transparent;
  border:none;
  border-bottom:1px solid var(--rule);
  padding:10px 0;
  outline:none;
  transition:border-color .15s;
  -webkit-appearance:none;
  border-radius:0;
}
.field input:focus,
.field select:focus,
.field textarea:focus{border-color:var(--accent);}
.field textarea{resize:vertical;min-height:120px;line-height:1.55;}
.field input::placeholder,
.field textarea::placeholder{color:var(--ink-4);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
@media(max-width:600px){.form-row{grid-template-columns:1fr;}}
.form-success{
  display:none;
  padding:18px 22px;
  background:var(--accent-tint);
  border:1px solid var(--accent);
  color:var(--accent-2);
  font-size:.92rem;
  border-radius:8px;
}
.form-success.show{display:block;}

/* ── FOOTER ────────────────────────────────── */

footer{
  background:var(--bg);
  border-top:1px solid var(--ink);
}

.foot-hero{
  background:var(--tint);
  border-bottom:1px solid var(--rule);
  padding:clamp(56px,7vw,96px) 0;
}
.foot-hero-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:48px;
  align-items:end;
}
@media(max-width:900px){.foot-hero-grid{grid-template-columns:1fr;gap:32px;align-items:start;}}
.foot-hero h2{
  font-size:clamp(2.4rem,5vw,4.4rem);
  letter-spacing:-.03em;
  line-height:.95;
}
.foot-hero-actions{
  display:flex;
  flex-direction:column;
  gap:18px;
  align-items:flex-start;
}
.foot-email{
  font-size:clamp(1.15rem,1.8vw,1.4rem);
  font-weight:500;
  color:var(--ink);
  text-decoration:none;
  letter-spacing:-.018em;
  border-bottom:1px solid var(--ink);
  padding-bottom:2px;
  transition:color .15s, border-color .15s;
}
.foot-email:hover{color:var(--accent);border-color:var(--accent);}

.foot-grid{
  display:grid;
  grid-template-columns:1.8fr 1fr 1fr 1fr;
  gap:64px;
  padding:clamp(56px,7vw,80px) 0;
  border-bottom:1px solid var(--rule);
}
@media(max-width:900px){
  .foot-grid{grid-template-columns:1fr 1fr;gap:40px;}
}
.foot-brand .lede{font-size:.95rem;margin-top:18px;max-width:36ch;}
.foot-brand .brand-logo{height:30px;}
.foot-social{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:24px;
}
.foot-social a{
  font-size:.78rem;
  font-weight:500;
  padding:7px 14px;
  border:1px solid var(--rule-2);
  border-radius:100px;
  text-decoration:none;
  color:var(--ink-2);
  transition:all .15s;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.foot-social a::after{content:'↗';opacity:.5;font-size:.85rem;}
.foot-social a:hover{background:var(--ink);color:var(--bg);border-color:var(--ink);}

.foot-col h5{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:var(--ink-3);
  margin-bottom:20px;
  font-weight:500;
}
.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:10px;}
.foot-col a{
  font-size:.92rem;
  color:var(--ink-2);
  text-decoration:none;
  cursor:pointer;
  transition:color .15s;
}
.foot-col a:hover{color:var(--accent);}

/* Offices coordinated card layout. Dark treatment. */
.foot-offices{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--dark-rule);
  border:1px solid var(--dark);
  border-radius:20px;
  overflow:hidden;
  margin:48px 0;
  background-color:var(--dark);
}
@media(max-width:900px){.foot-offices{grid-template-columns:1fr;}}
.foot-office{
  padding:36px 28px;
  background:var(--dark);
  display:flex;
  flex-direction:column;
  gap:14px;
  position:relative;
  overflow:hidden;
  transition:background .25s;
}
.foot-office::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 100% 0%, rgba(240,90,26,.12), transparent 60%);
  pointer-events:none;
  opacity:0;
  transition:opacity .3s;
}
.foot-office:hover::before{opacity:1;}
.foot-office-flag{
  display:flex;
  align-items:baseline;
  gap:14px;
  margin-bottom:12px;
  position:relative;
}
.foot-office-flag .code{
  font-size:2.4rem;
  font-weight:600;
  letter-spacing:-.04em;
  color:var(--accent);
  line-height:1;
}
.foot-office-flag .ctry{
  font-family:var(--fm);
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.55);
}
.foot-office-name{
  font-size:1.1rem;
  font-weight:600;
  color:var(--bg);
  letter-spacing:-.015em;
  position:relative;
}
.foot-office-addr{
  font-size:.85rem;
  color:rgba(255,255,255,.65);
  line-height:1.65;
  margin-top:auto;
  position:relative;
}

.foot-bottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:18px;
  padding:32px 0;
  border-top:1px solid var(--rule);
  font-size:.82rem;
  color:var(--ink-3);
}
.foot-legal{
  display:flex;
  gap:24px;
  flex-wrap:wrap;
}
.foot-legal a{
  color:var(--ink-3);
  text-decoration:none;
  transition:color .15s;
}
.foot-legal a:hover{color:var(--accent);}

/* ── Cookie banner ─────────────────────────── */

.cookies{
  position:fixed;
  bottom:24px; left:24px; right:24px;
  z-index:90;
  max-width:560px;
  background:var(--ink);
  color:var(--bg);
  padding:22px 24px;
  display:flex;
  flex-direction:column;
  gap:14px;
  font-size:.9rem;
  line-height:1.55;
  transform:translateY(140%);
  transition:transform .3s ease;
  border-radius:14px;
}
.cookies.show{transform:translateY(0);}
.cookies p{color:rgba(255,255,255,.78);}
.cookies a{color:var(--bg);text-decoration:underline;}
.cookies-actions{display:flex;gap:10px;flex-wrap:wrap;}
.cookies-btn{
  font-family:var(--ff);
  font-size:.82rem;
  font-weight:500;
  padding:9px 18px;
  border:1px solid rgba(255,255,255,.25);
  background:transparent;
  color:var(--bg);
  cursor:pointer;
  transition:background .15s, color .15s;
  border-radius:100px;
}
.cookies-btn:hover{background:var(--bg);color:var(--ink);}
.cookies-btn.primary{background:var(--bg);color:var(--ink);border-color:var(--bg);}
.cookies-btn.primary:hover{background:var(--accent);color:var(--bg);border-color:var(--accent);}

@media(max-width:900px){
  .eat-gallery{grid-template-columns:1fr 1fr !important;}
}
@media(max-width:520px){
  .eat-gallery{grid-template-columns:1fr !important;}
}

/* Retail media feature blocks responsive */
@media(max-width:1000px){
  .rm-feat,.rm-feat-flip{grid-template-columns:1fr !important;}
  .rm-feat > div:first-child,.rm-feat-flip > div:first-child{border-right:0 !important;border-bottom:1px solid var(--rule);}
}

/* BurstAnalytics dark feature grid responsive */
@media(max-width:900px){
  .ba-grid{grid-template-columns:1fr !important;gap:48px !important;}
}

/* Marquee text fallback (for brands without SVG logo on hand) */
.marquee-text{
  font-family:var(--ff);
  font-size:1.5rem;
  font-weight:600;
  letter-spacing:-.02em;
  color:var(--ink-2);
  text-transform:uppercase;
  height:36px;
  display:flex;
  align-items:center;
  opacity:.55;
  transition:opacity .25s, color .25s;
}
.marquee-item:hover .marquee-text{opacity:1;color:var(--ink);}

/* ── Burst sunburst (smaller, more elegant) ── */

.burst-mark{
  display:inline-block;
  width:14px; height:14px;
  background:var(--accent);
  border-radius:50%;
  position:relative;
  vertical-align:middle;
}
.burst-mark::before,
.burst-mark::after{
  content:'';
  position:absolute;
  inset:-3px;
  border-radius:50%;
  border:1px solid var(--accent);
  opacity:.5;
}
.burst-mark::after{inset:-6px;opacity:.2;}

/* ── Responsive ────────────────────────────── */

@media(max-width:1000px){
  .platforms-grid{grid-template-columns:1fr;}
  .svc-row{grid-template-columns:48px 1fr auto;gap:18px;}
  .svc-desc{grid-column:1 / -1;padding-top:0;}
  .svc-row:hover{padding-left:12px;}
}
@media(max-width:1080px){
  .nav-menu{display:none;}
  .nav-toggle{display:inline-flex;}
  .nav.open .nav-menu{
    display:flex;
    position:fixed;
    top:var(--nav-h);left:0;right:0;
    background:var(--bg);
    flex-direction:column;
    padding:24px var(--gutter);
    gap:0;
    border-bottom:1px solid var(--rule);
  }
  .nav.open .nav-menu a{
    padding:14px 0;
    border-bottom:1px solid var(--rule);
    font-size:1rem;
  }
  .nav.open .nav-menu a:last-child{border-bottom:0;}
}
@media(max-width:760px){
  .tabs{flex-direction:column;}
  .tab{border-right:0;border-bottom:1px solid var(--rule);}
  .tab:last-child{border-bottom:0;}
  .foot-grid{grid-template-columns:1fr;gap:32px;}
  .cookies{left:16px;right:16px;bottom:16px;padding:18px;}
}

/* Wordmark text for marquee (mimics brand styles) */
.wm{
  font-family:var(--ff);
  font-size:1.6rem;
  line-height:1;
  letter-spacing:-.02em;
  display:flex;
  align-items:center;
  height:36px;
  color:var(--ink-2);
  opacity:.75;
  transition:opacity .2s, color .2s;
  font-weight:600;
}
.marquee-item:hover .wm{opacity:1;color:var(--ink);}
.wm-noon{font-weight:500;text-transform:lowercase;letter-spacing:-.04em;}
.wm-allegro{font-weight:600;text-transform:lowercase;letter-spacing:-.03em;}
.wm-bol{font-weight:700;text-transform:lowercase;letter-spacing:-.05em;}
.wm-bol i{font-style:normal;color:var(--accent);font-weight:700;}
.wm-kaufland{font-weight:700;text-transform:none;letter-spacing:-.025em;}

/* Partner certifications. Dark strip, horizontal row of white-pill badges. */
.certs{
  padding:clamp(40px,5vw,72px) 0;
  background:var(--dark);
  border-radius:24px;
  margin:clamp(32px,4vw,56px) clamp(20px,4vw,64px);
}
.certs h2{color:var(--bg);}
.certs h2 .accent{color:var(--accent);}
.certs-row{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
  max-width:1100px;
  margin:0 auto;
}
.cert-pill{
  background:#FFFFFF;
  border-radius:12px;
  padding:14px 20px;
  display:flex;
  align-items:center;
  justify-content:center;
  height:170px;
  transition:transform .2s;
}
.cert-pill:hover{transform:translateY(-2px);}
.cert-pill img{
  max-height:140px;
  max-width:96%;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
@media(max-width:880px){
  .certs-row{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:520px){
  .certs-row{grid-template-columns:1fr;}
  .cert-pill{height:96px;}
  .cert-pill img{max-height:64px;}
}

/* Walmart Solution Provider logo: bigger inside the same-size pill */
.cert-pill img[src*="cert-walmart.svg"],
.cert-pill img[src*="cert-walmart.png"]{
  max-height:165px;
  max-width:100%;
  transform:none;
}

/* Amazon Ads Verified Partner logo: bigger inside the same-size pill */
.cert-pill img[src*="cert-amazon-ads"]{
  max-height:230px;
  max-width:130%;
  transform:scale(1.15);
  transform-origin:center;
}


/* ============================================
   MOBILE PASS — comprehensive responsive fixes
   ============================================ */

/* Tablet (≤900px) */
@media (max-width: 900px) {
  :root{ --nav-h:64px; --gutter:20px; }
  .brand-logo{ height:26px; }
  .nav-cta{ padding:10px 16px; font-size:.82rem; }

  h1, .h1{ font-size:clamp(2.4rem, 9vw, 3.6rem) !important; line-height:1; letter-spacing:-.03em; }
  h2, .h2{ font-size:clamp(2rem, 7vw, 3rem) !important; line-height:1.05; }
  h3, .h3{ font-size:1.4rem !important; }
  .lede{ font-size:1rem; }
  .lede-lg{ font-size:1.4rem; }

  section{ padding:clamp(48px, 8vw, 72px) 0; }
  .hero{ padding-top:16px; padding-bottom:24px; }
  .section-head{ margin-bottom:32px; }
  .section-head.split{ grid-template-columns:1fr !important; gap:16px !important; align-items:start !important; }

  /* Two-col blocks collapse */
  .two, .two.flip{ grid-template-columns:1fr !important; gap:32px !important; }
  .two.flip > div:first-child{ order:initial; }
  .hero-grid{ grid-template-columns:1fr !important; gap:32px !important; }

  /* Tabs vertical */
  .tabs{ flex-direction:column; position:relative; top:auto; }
  .tab{ border-right:0; border-bottom:1px solid var(--rule); }

  /* Service block stack */
  .svc-block, .svc-block.flip{ grid-template-columns:1fr !important; gap:24px !important; padding:48px 0 !important; }
  .svc-block.flip > div:first-child{ order:initial; }

  /* Retail media feature blocks */
  .rm-feat, .rm-feat-flip{ grid-template-columns:1fr !important; }
  .rm-feat > div, .rm-feat-flip > div{ border-right:0 !important; padding:32px 24px !important; }
  .rm-feat > div:first-child, .rm-feat-flip > div:first-child{ border-bottom:1px solid var(--rule); }

  /* BurstAnalytics grid */
  .ba-grid{ grid-template-columns:1fr !important; gap:32px !important; }

  /* Grids of cards */
  .platforms-grid{ grid-template-columns:1fr !important; border-radius:16px; }
  .plat-card{ min-height:auto; padding:28px 24px; }
  .plat-card h3{ font-size:1.4rem; }
  .bignums{ grid-template-columns:1fr 1fr; }
  .bignum{ padding:28px 20px; }
  .bignum-n{ font-size:clamp(2.4rem, 9vw, 3.4rem); }
  .bignum:nth-child(2n){ border-right:0; }
  .bignum{ border-bottom:1px solid var(--rule); }

  /* Certs */
  .certs{ margin:24px 16px; padding:32px 0; border-radius:16px; }
  .certs h2{ font-size:1.4rem !important; padding:0 16px; }
  .certs-row{ grid-template-columns:1fr 1fr !important; gap:12px; padding:0 16px; }
  .cert-pill{ height:96px !important; padding:12px 16px !important; }
  .cert-pill img{ max-height:64px !important; max-width:90% !important; }
  .cert-pill img[src*="cert-amazon-ads"]{ max-height:120px !important; transform:scale(1.1) !important; }
  .cert-pill img[src*="cert-walmart.svg"], .cert-pill img[src*="cert-walmart.png"]{ max-height:90px !important; }

  /* Product hero — case study & home */
  .product-block{ grid-template-columns:1fr !important; border-radius:16px; }
  .product-body{ border-right:0 !important; border-bottom:1px solid var(--rule); padding:28px 24px !important; }
  .product-vis{ min-height:380px !important; padding:32px 24px !important; }
  .product-photo{ max-width:280px !important; }

  /* Numbered services rows */
  .svc-row{ grid-template-columns:42px 1fr !important; gap:14px !important; padding:24px 0 !important; }
  .svc-row:hover{ padding-left:8px !important; padding-right:8px !important; }
  .svc-title{ font-size:1.3rem !important; line-height:1.1; }
  .svc-desc{ grid-column:1 / -1 !important; font-size:.9rem; padding-top:6px !important; }
  .svc-arrow{ display:none !important; }

  /* Founders, offices */
  .founders{ grid-template-columns:1fr !important; border-radius:16px; }
  .founder{ grid-template-columns:1fr !important; gap:18px !important; padding:28px 24px !important; }
  .founder-photo{ width:96px; }
  .offices{ grid-template-columns:1fr !important; border-radius:16px; }
  .office{ padding:24px !important; min-height:auto !important; }

  /* Story timeline */
  .story-row{ grid-template-columns:1fr !important; gap:8px !important; padding:24px 0 !important; }
  .story-year{ font-size:1.4rem; }

  /* Detail cards */
  .detail-card{ padding:24px !important; }
  .timeline-row{ grid-template-columns:90px 1fr !important; gap:14px !important; padding:12px 0 !important; }

  /* Dashboards */
  .dash{ border-radius:12px; }
  .dash-row{ grid-template-columns:84px 1fr 56px !important; gap:10px !important; }
  .dash-row span:first-child{ font-size:.78rem; }
  .dash-val{ font-size:.82rem; }
  .dash-foot{ grid-template-columns:1fr 1fr; }
  .dash-foot-cell:nth-child(2n){ border-right:0; }
  .dash-foot-cell{ padding:14px 16px; }
  .dash-foot-num{ font-size:1.2rem; }

  /* Panels */
  .panel-dark{ margin:24px 16px; padding:48px 0; border-radius:16px; max-width:none; }
  .panel-fire, .foot-hero{ padding:48px 0 !important; }
  .panel-fire h2, .foot-hero h2{ font-size:2.2rem !important; }
  .panel-fire-grid, .foot-hero-grid{ grid-template-columns:1fr !important; gap:24px !important; align-items:start !important; }

  /* Marquee */
  .marquee{ padding:24px 0; }
  .marquee-item img{ max-height:32px !important; max-width:120px !important; }
  .marquee-item{ height:48px !important; min-width:140px !important; gap:0; }

  /* Hero stats */
  .hero-stats{ grid-template-columns:1fr 1fr; gap:0; padding:32px 0; margin-top:32px; }
  .hero-stat{ padding:16px 16px; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule); }
  .hero-stat:nth-child(2n){ border-right:0; }
  .hero-stat:nth-last-child(-n+2){ border-bottom:0; }

  /* Quote */
  .quote{ padding:48px 0; }
  .quote-text{ font-size:1.5rem; }

  /* Form */
  .form-row{ grid-template-columns:1fr !important; gap:14px; }

  /* Footer */
  .foot-grid{ grid-template-columns:1fr 1fr !important; gap:32px !important; padding:48px 0; }
  .foot-offices{ grid-template-columns:1fr !important; margin:32px 0; }
  .foot-bottom{ flex-direction:column; align-items:flex-start; padding:24px 0; }
  .foot-email{ font-size:1.1rem; }
  .foot-hero{ padding:48px 0; }

  /* Gallery */
  .eat-gallery{ grid-template-columns:1fr 1fr !important; gap:14px !important; }

  /* MOR coverage rows */
  .mor-coverage-row{ grid-template-columns:auto 1fr !important; }
}

/* Phone (≤520px) */
@media (max-width: 520px) {
  :root{ --gutter:16px; }
  h1, .h1{ font-size:clamp(2rem, 11vw, 2.8rem) !important; }
  h2, .h2{ font-size:clamp(1.7rem, 8vw, 2.2rem) !important; }
  h3, .h3{ font-size:1.2rem !important; }

  .hero-actions{ flex-direction:column; align-items:stretch; width:100%; }
  .hero-actions .btn{ justify-content:center; width:100%; }

  .bignums{ grid-template-columns:1fr; }
  .bignum{ border-right:0 !important; border-bottom:1px solid var(--rule); padding:24px 20px; }
  .bignum:last-child{ border-bottom:0; }
  .bignum-n{ font-size:2.6rem; }

  .certs-row{ grid-template-columns:1fr !important; }
  .cert-pill{ height:88px !important; }
  .cert-pill img{ max-height:60px !important; }
  .cert-pill img[src*="cert-amazon-ads"]{ max-height:110px !important; }

  .eat-gallery{ grid-template-columns:1fr !important; }

  .foot-grid{ grid-template-columns:1fr !important; }

  .product-photo{ max-width:220px !important; }
  .product-vis{ min-height:320px !important; }

  .hero-stats{ grid-template-columns:1fr; }
  .hero-stat{ border-right:0 !important; border-bottom:1px solid var(--rule); }
  .hero-stat:last-child{ border-bottom:0; }

  .marquee-item img{ max-height:28px !important; }

  .panel-fire h2, .foot-hero h2{ font-size:1.8rem !important; }
  .quote-text{ font-size:1.3rem; }
  .lede-lg{ font-size:1.2rem; }

  /* Tighter card paddings */
  .plat-card, .founder, .office, .step{ padding:22px 18px !important; }
  .detail-card{ padding:20px !important; }
}

/* Very small phone (≤375px) */
@media (max-width: 375px) {
  h1, .h1{ font-size:2rem !important; }
  h2, .h2{ font-size:1.6rem !important; }
  .nav-cta{ padding:8px 12px; font-size:.78rem; }
  .brand-logo{ height:22px; }
}


/* Mobile fix: How we work dark process panel + certs grid */
@media (max-width: 900px) {
  /* Process cards: force 1 col on mobile (Discovery/Audit/Launch/Scale was overflowing) */
  .dark-process,
  .panel-dark > .wrap > div[style*="grid-template-columns:repeat(4,1fr)"]{
    grid-template-columns:1fr !important;
  }

  /* Certs grid: 2 col on mobile, shorter pills so the section isn't a giant tower */
  .certs-row{ grid-template-columns:1fr 1fr !important; gap:10px !important; padding:0 14px !important; }
  .cert-pill{ height:88px !important; padding:10px 14px !important; }
  .cert-pill img{ max-height:58px !important; max-width:90% !important; }
  .cert-pill img[src*="cert-amazon-ads"]{ max-height:100px !important; transform:none !important; }
  .cert-pill img[src*="cert-walmart.svg"], .cert-pill img[src*="cert-walmart.png"]{ max-height:78px !important; }
  .certs{ margin:24px 12px !important; padding:36px 0 !important; }
}

@media (max-width: 520px) {
  .certs-row{ gap:8px !important; padding:0 12px !important; }
  .cert-pill{ height:76px !important; padding:8px 12px !important; }
  .cert-pill img{ max-height:50px !important; }
  .cert-pill img[src*="cert-amazon-ads"]{ max-height:90px !important; }
  .cert-pill img[src*="cert-walmart.svg"], .cert-pill img[src*="cert-walmart.png"]{ max-height:66px !important; }
}


/* MARQUEE: force animation always-on, even on reduced-motion + touch */
.marquee-track{
  animation:scroll 30s linear infinite !important;
  animation-play-state:running !important;
  will-change:transform;
}
.marquee:hover .marquee-track{
  animation-play-state:running !important;
}
@media (prefers-reduced-motion: reduce) {
  .marquee-track{
    animation:scroll 30s linear infinite !important;
    animation-play-state:running !important;
  }
}


/* Time zone strip — sits above offices grid */
.tz-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:32px clamp(20px,3vw,40px);
  margin-bottom:24px;
  background:var(--dark);
  border-radius:20px;
  color:var(--bg);
}
.tz{
  display:flex;
  align-items:center;
  gap:16px;
  flex:0 0 auto;
}
.tz-code{
  font-size:2.4rem;
  font-weight:600;
  letter-spacing:-.04em;
  color:var(--accent);
  line-height:1;
}
.tz-meta{display:flex;flex-direction:column;gap:4px;}
.tz-city{font-size:1.05rem;font-weight:600;color:var(--bg);letter-spacing:-.015em;}
.tz-time{font-family:var(--fm);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.55);}
.tz-line{
  flex:1;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
  position:relative;
}
.tz-line::before,
.tz-line::after{
  content:'';
  position:absolute;
  top:50%;
  width:6px; height:6px;
  background:var(--accent);
  border-radius:50%;
  transform:translateY(-50%);
}
.tz-line::before{left:0;}
.tz-line::after{right:0;}
@media(max-width:760px){
  .tz-strip{flex-direction:column;align-items:flex-start;gap:18px;padding:24px;}
  .tz-line{width:100%;height:1px;flex:0;}
  .tz-line::before,.tz-line::after{top:50%;}
}

/* Nav scroll state */
.nav{transition:height .22s ease, background .22s ease, box-shadow .22s ease, border-color .22s ease;}
.nav.scrolled{
  height:62px;
  background:rgba(255,255,255,.98);
  border-bottom:1px solid var(--rule-2);
  box-shadow:0 8px 30px -14px rgba(10,10,10,.35);
}
.nav.scrolled .brand-logo{height:28px;}
.nav.scrolled .nav-cta{padding:9px 18px;}

/* svc-block vertical center */
@media(min-width:1000px){
  .svc-block{align-items:center;}
}

/* Service dividers & model cards */
.svc-divider{display:flex;align-items:center;gap:20px;margin:clamp(56px,7vw,96px) 0 4px;}
.svc-divider .lbl{font-family:var(--fm);font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-weight:500;white-space:nowrap;}
.svc-divider .lbl b{color:var(--accent);font-weight:500;}
.svc-divider .line{flex:1;height:1px;background:var(--rule);}
.models{display:grid;grid-template-columns:1fr;gap:24px;margin-top:40px;}
@media(min-width:900px){.models{grid-template-columns:1fr 1fr;}}
.model-card{border:1px solid var(--rule);border-radius:16px;padding:32px;background:var(--bg);box-shadow:0 1px 0 rgba(0,0,0,.02),0 8px 24px -12px rgba(0,0,0,.08);display:flex;flex-direction:column;}
.model-card .mc-code{font-family:var(--fm);font-size:11px;letter-spacing:.08em;color:var(--accent);font-weight:500;}
.model-card h3{margin:12px 0 6px;font-size:1.55rem;letter-spacing:-.02em;}
.model-card .mc-sub{color:var(--ink-3);font-size:.95rem;margin-bottom:22px;}
.model-card .checks{margin-top:auto;}
.model-compare{margin-top:24px;border:1px solid var(--rule);border-radius:16px;overflow:hidden;}
.mc-row{display:grid;grid-template-columns:1.1fr 1fr 1fr;border-top:1px solid var(--rule);}
.mc-row:first-child{border-top:0;}
.mc-row > div{padding:13px 20px;font-size:.92rem;border-left:1px solid var(--rule);color:var(--ink-1);}
.mc-row > div:first-child{border-left:0;color:var(--ink-3);font-family:var(--fm);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;}
.mc-row.mc-head > div{background:var(--ink);color:var(--bg);font-weight:600;font-family:var(--ff);font-size:.95rem;letter-spacing:0;text-transform:none;}
.mc-row.mc-head > div small{display:block;font-family:var(--fm);font-size:10px;color:var(--accent);letter-spacing:.08em;font-weight:500;}
@media(max-width:640px){.mc-row{grid-template-columns:1fr;} .mc-row > div{border-left:0;border-top:1px solid var(--rule);} .mc-row > div:first-child{border-top:0;}}

/* Footer break & page bottom respacing */
.foot-hero{border-top:1px solid var(--rule);}
.page.active{padding-bottom:clamp(40px,5vw,72px);}

/* Office role line */
.office-role{font-size:.86rem;color:var(--ink-2);margin-top:10px;line-height:1.5;}
.office-role b{color:var(--accent);font-weight:500;}

/* Founder photo img fill */
.founder-photo{overflow:hidden;}
.founder-photo img{width:100%;height:100%;object-fit:cover;border-radius:6px;}


/* BurstAnalytics page styles */
.ba-certs-row{
  display:grid;
  grid-template-columns:repeat(6, 1fr);
  gap:14px;
  max-width:1100px;
  margin:0 auto;
}
.ba-cert{
  background:#FFFFFF;
  border:1px solid var(--rule);
  border-radius:12px;
  padding:14px 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  height:96px;
  transition:transform .2s, border-color .2s;
}
.ba-cert:hover{transform:translateY(-2px);border-color:var(--rule-2);}
.ba-cert img{
  max-height:60px;
  max-width:90%;
  width:auto;
  height:auto;
  object-fit:contain;
  display:block;
}
.ba-cert img[src*="cert-amazon-ads"]{max-height:90px;transform:scale(1.08);}
.ba-cert img[src*="cert-walmart.svg"],.ba-cert img[src*="cert-walmart.png"]{max-height:80px;}
@media(max-width:900px){.ba-certs-row{grid-template-columns:repeat(3,1fr);}}
@media(max-width:520px){.ba-certs-row{grid-template-columns:repeat(2,1fr);}.ba-cert{height:80px;}}

/* FAQ accordion */
.faq{
  display:flex;
  flex-direction:column;
  border-top:1px solid var(--rule);
  max-width:880px;
}
.faq-item{
  border-bottom:1px solid var(--rule);
  padding:0;
}
.faq-item summary{
  list-style:none;
  cursor:pointer;
  padding:24px 0;
  font-size:1.15rem;
  font-weight:500;
  letter-spacing:-.015em;
  color:var(--ink);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  transition:color .15s;
}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{
  content:'+';
  font-size:1.6rem;
  line-height:1;
  color:var(--accent);
  font-weight:400;
  transition:transform .25s;
}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item summary:hover{color:var(--accent);}
.faq-item p{
  padding:0 0 24px 0;
  margin:0;
  color:var(--ink-2);
  font-size:1rem;
  line-height:1.65;
  max-width:64ch;
}

/* BA CTA band (dark card on light page) */
.ba-cta-band{
  background:var(--dark);
  border-radius:24px;
  padding:clamp(48px,6vw,80px);
  color:var(--bg);
  position:relative;
  overflow:hidden;
}
.ba-cta-band::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 100% 0%, rgba(240,90,26,.18), transparent 60%);
  pointer-events:none;
}
.ba-cta-grid{
  position:relative;
  display:grid;
  grid-template-columns:1.4fr auto;
  gap:48px;
  align-items:end;
}
@media(max-width:800px){.ba-cta-grid{grid-template-columns:1fr;gap:32px;align-items:start;}}
