/* ============================================================
   EZEWAG OVERSEAS  -  Design System v3.0 | Final Production
   Fonts: Plus Jakarta Sans (display) - Inter (body)
   Palette: Navy #071b32 - Gold #d0a94f - Ivory #f7f4ed
   ============================================================ */

/* ---- TOKENS ---------------------------------------------------------------------------------------------- */
:root {
  --navy-950: #071b32;
  --navy-900: #0b2748;
  --navy-800: #123b67;
  --blue-500: #387aa6;
  --gold-600: #b88a2d;
  --gold-500: #d0a94f;
  --gold-400: #dbbe7a;
  --gold-200: #f0e4c0;
  --ivory: #f7f4ed;
  --ivory-dark: #ece8df;
  --white: #ffffff;
  --ink: #0f1923;
  --body: #3d4a57;
  --muted: #6b7c8e;
  --border: rgba(11,39,72,.09);
  --border-md: rgba(11,39,72,.15);
  --shadow-sm: 0 2px 12px rgba(7,27,50,.05);
  --shadow-md: 0 8px 32px rgba(7,27,50,.10);
  --shadow-lg: 0 20px 60px rgba(7,27,50,.13);
  --shadow-xl: 0 32px 90px rgba(7,27,50,.18);
  --r-sm: 6px;
  --r: 10px;
  --r-lg: 16px;
  --r-xl: 24px;
  --max: 1240px;
  --font-display: "Plus Jakarta Sans","Inter",sans-serif;
  --font-body: "Inter",system-ui,-apple-system,sans-serif;
  --ease: cubic-bezier(.16,1,.3,1);
  --ease-out: cubic-bezier(0,0,.2,1);
  --nav-h: 76px;
}

/* ---- RESET -------------------------------------------------------------------------------------------------- */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body {
  background:var(--ivory); color:var(--ink);
  font-family:var(--font-body); font-size:17px; line-height:1.68;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
body.menu-open { overflow:hidden; }
a { color:inherit; text-decoration:none; }
img,video { max-width:100%; display:block; }
button,input,select,textarea { font:inherit; }
main { background:var(--ivory); }
ul { list-style:none; }
.skip-link {
  position:fixed; top:14px; left:14px; z-index:9999;
  transform:translateY(-160%);
  background:var(--gold-500); color:var(--navy-950);
  padding:10px 16px; border-radius:var(--r); font-weight:700;
  transition:transform .2s var(--ease);
}
.skip-link:focus { transform:translateY(0); outline:3px solid var(--white); }
:focus-visible { outline:2px solid var(--gold-500); outline-offset:3px; }

/* ---- LAYOUT ------------------------------------------------------------------------------------------------ */
.container { width:min(var(--max), 100% - 48px); margin-inline:auto; }
section { padding:clamp(48px,6vw,72px) 0; position:relative; overflow:visible; }
.section-white { background:var(--white); }
.section-light,.section-ash { background:var(--ivory); }
.dark-band { background:var(--navy-950); color:var(--white); }
.section-navy { background:var(--navy-900); color:var(--white); }
.dark-band .section-lead,.section-navy .section-lead,
.dark-band-photo .section-lead { color:rgba(255,255,255,.74); }
.dark-band .eyebrow,.section-navy .eyebrow { color:var(--gold-400); }

/* ---- TYPOGRAPHY ---------------------------------------------------------------------------------------- */
h1,h2,h3 {
  font-family:var(--font-display); color:inherit;
  line-height:1.06; letter-spacing:-.01em; font-weight:700;
}
h1 { font-size:clamp(2.4rem,5vw,5rem); max-width:900px; font-weight:800; }
h2 { font-size:clamp(1.9rem,3.5vw,3.6rem); max-width:860px; }
h3 { font-size:clamp(1.1rem,1.8vw,1.5rem); line-height:1.22; }
p { margin:0 0 16px; color:var(--body); max-width:72ch; line-height:1.68; }
p:last-child { margin-bottom:0; }
.eyebrow {
  display:inline-block; margin:0 0 12px;
  color:var(--gold-500); font-weight:700;
  font-size:.72rem; text-transform:uppercase; letter-spacing:.15em;
  font-family:var(--font-body);
}
.section-heading { display:grid; gap:6px; margin-bottom:52px; }
.section-heading h2 { margin-bottom:8px; }
.section-lead { font-size:clamp(1rem,1.3vw,1.15rem); color:var(--body); max-width:640px; line-height:1.7; }
.hero-lead { font-size:clamp(1rem,1.4vw,1.2rem); color:rgba(255,255,255,.82); max-width:660px; line-height:1.68; }
.text-link {
  color:var(--navy-900); font-weight:700;
  display:inline-flex; align-items:center; gap:6px;
  border-bottom:1.5px solid currentColor;
  transition:gap .2s var(--ease),color .2s;
}
.text-link:hover { color:var(--gold-600); gap:10px; }
.text-link::after { content:"->"; }

/* ---- WORD FADE ------------------------------------------------------------------------------------------ */
.word-fade {
  display:inline-block; opacity:0; transform:translateY(16px);
  animation:wordRise .55s var(--ease) both;
  animation-delay:calc(var(--word-index,0)*65ms + 280ms);
}
@keyframes wordRise { to { opacity:1; transform:translateY(0); } }

/* ---- BUTTONS ---------------------------------------------------------------------------------------------- */
.btn,button[type="submit"],.cta-button,.nav-cta {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  min-height:48px; padding:0 26px;
  border-radius:999px; border:1.5px solid transparent;
  font-family:var(--font-body); font-weight:700; font-size:14px; line-height:1;
  cursor:pointer; text-decoration:none; white-space:nowrap;
  transition:transform .22s var(--ease),background .22s,border-color .22s,box-shadow .22s,color .22s;
}
.btn-primary,button[type="submit"],.cta-button {
  background:var(--gold-500); color:var(--navy-950)!important; border-color:var(--gold-500);
  box-shadow:0 4px 16px rgba(208,169,79,.22);
}
.btn-primary:hover,button[type="submit"]:hover,.cta-button:hover {
  background:var(--gold-400); border-color:var(--gold-400);
  transform:translateY(-2px); box-shadow:0 8px 24px rgba(208,169,79,.35);
}
.btn-secondary {
  background:transparent; color:var(--white)!important;
  border-color:rgba(255,255,255,.40);
}
.btn-secondary:hover { background:rgba(255,255,255,.1); border-color:rgba(255,255,255,.7); transform:translateY(-1px); }
.section-light .btn-secondary,.section-white .btn-secondary,.section-ash .btn-secondary {
  color:var(--navy-900)!important; border-color:rgba(11,39,72,.22);
}
.section-light .btn-secondary:hover,.section-white .btn-secondary:hover { background:rgba(11,39,72,.06); }
.btn-light {
  background:rgba(255,255,255,.12); color:var(--white)!important;
  border-color:rgba(255,255,255,.30);
}
.btn-light:hover { background:rgba(255,255,255,.2); transform:translateY(-1px); }
.btn-ghost {
  background:transparent; color:var(--navy-900)!important; border-color:var(--border-md);
}
.btn-ghost:hover { background:rgba(11,39,72,.04); }
.nav-cta {
  background:var(--gold-500); color:var(--navy-950)!important;
  border-color:var(--gold-500); min-height:40px; padding:0 20px; font-size:13px;
}
.nav-cta:hover { background:var(--gold-400); transform:translateY(-1px); }
.btn::after,.nav-cta::after { content:"->"; transition:transform .2s var(--ease); }
.btn:hover::after,.nav-cta:hover::after { transform:translateX(4px); }
.btn-secondary::after,.btn-ghost::after,.btn-light::after { content:"->"; }

/* ---- NAVIGATION ---------------------------------------------------------------------------------------- */
.site-nav {
  position:fixed; inset:0 0 auto 0; z-index:1000;
  min-height:var(--nav-h);
  padding:0 clamp(24px,4vw,60px);
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  color:var(--white);
  background:linear-gradient(180deg,rgba(7,27,50,.70) 0%,transparent 100%);
  border-bottom:1px solid transparent;
  transition:min-height .28s var(--ease),background .28s,color .28s,border-color .28s,box-shadow .28s;
}
.site-nav.is-scrolled,
body:not(.lead-gen-home) .site-nav {
  min-height:66px; color:var(--ink);
  background:rgba(247,244,237,.97);
  backdrop-filter:blur(24px) saturate(1.4);
  -webkit-backdrop-filter:blur(24px) saturate(1.4);
  border-bottom-color:var(--border);
  box-shadow:0 4px 24px rgba(7,27,50,.07);
}
.nav-logo,.footer-logo { display:inline-flex; align-items:center; flex:0 0 auto; }
.site-logo-img { width:auto; height:clamp(38px,5vw,52px); max-width:190px; object-fit:contain; }
.site-nav.is-scrolled .site-logo-img,
body:not(.lead-gen-home) .site-logo-img { height:42px; }
.nav-links {
  display:flex; align-items:center; justify-content:flex-end;
  gap:2px; list-style:none; flex:1;
}
.nav-links > li { position:relative; }
.nav-links > li > a {
  min-height:42px; display:inline-flex; align-items:center;
  border-radius:999px; padding:0 13px;
  color:currentColor; font-size:13.5px; font-weight:600;
  transition:background .2s,color .2s;
}
.nav-links > li > a:hover { background:rgba(255,255,255,.14); }
.site-nav.is-scrolled .nav-links > li > a:hover,
body:not(.lead-gen-home) .nav-links > li > a:hover { background:rgba(11,39,72,.07); }

/* ---- DROPDOWN  -  fixed hover gap so it doesn't close ---- */
.has-menu { position:relative; }
/* Invisible bridge so mouse can travel from link to dropdown */
.has-menu::after {
  content:""; position:absolute; top:100%; left:0; right:0; height:16px;
}
.nav-dropdown {
  position:absolute; top:calc(100% + 8px); left:50%;
  transform:translateX(-50%) translateY(6px);
  min-width:290px; padding:8px;
  border:1px solid var(--border); border-radius:var(--r-lg);
  background:rgba(255,255,255,.99); color:var(--ink);
  box-shadow:var(--shadow-xl);
  opacity:0; pointer-events:none;
  transition:opacity .18s var(--ease),transform .18s var(--ease);
}
.has-menu:hover .nav-dropdown,
.has-menu:focus-within .nav-dropdown {
  opacity:1; pointer-events:auto; transform:translateX(-50%) translateY(0);
}
.nav-dropdown a {
  display:grid; gap:2px; min-height:auto;
  border-radius:var(--r-sm); padding:10px 12px; white-space:normal;
  color:var(--ink); transition:background .15s;
}
.nav-dropdown a:hover { background:var(--ivory); }
.nav-dropdown span { font-size:13.5px; font-weight:700; color:var(--navy-900); }
.nav-dropdown small { color:var(--body); font-size:12px; line-height:1.4; }

/* Mobile hamburger */
.site-menu-toggle {
  display:none; width:44px; height:44px;
  border:1.5px solid rgba(255,255,255,.35); border-radius:999px;
  background:rgba(255,255,255,.08); cursor:pointer;
  align-items:center; justify-content:center; flex-direction:column; gap:5px;
}
.site-nav.is-scrolled .site-menu-toggle,
body:not(.lead-gen-home) .site-menu-toggle { border-color:var(--border-md); background:transparent; }
.site-menu-toggle span {
  width:20px; height:1.5px; background:currentColor; border-radius:2px;
  transition:transform .25s var(--ease), opacity .2s var(--ease);
}
.site-menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(6.5px) rotate(45deg); }
.site-menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.site-menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-6.5px) rotate(-45deg); }
.nav-scrim {
  position:fixed; inset:0; z-index:900;
  background:rgba(7,27,50,.48); opacity:0; pointer-events:none;
  transition:opacity .25s var(--ease);
}
.nav-scrim.is-visible { opacity:1; pointer-events:auto; }

/* ---- HOME HERO ------------------------------------------------------------------------------------------ */
.home-cinematic-hero {
  min-height:clamp(560px,68vh,760px); padding:0;
  display:flex; align-items:center; overflow:hidden;
  background:transparent; color:var(--white); position:relative; z-index:1;
}
.home-cinematic-hero::after {
  display:none;
}
.hero-ambient { position:absolute; inset:0; overflow:hidden; }
.hero-ambient-grid {
  position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(208,169,79,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(208,169,79,.06) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:radial-gradient(ellipse 60% 70% at 70% 50%,rgba(0,0,0,.9),transparent 75%);
  -webkit-mask-image:radial-gradient(ellipse 60% 70% at 70% 50%,rgba(0,0,0,.9),transparent 75%);
}
.hero-ambient-orb {
  position:absolute; border-radius:50%; filter:blur(60px);
  opacity:.5; animation:ambientDrift 14s ease-in-out infinite;
}
.hero-ambient-orb-1 {
  width:420px; height:420px; top:-10%; right:8%;
  background:radial-gradient(circle,rgba(208,169,79,.22),transparent 70%);
}
.hero-ambient-orb-2 {
  width:360px; height:360px; bottom:-12%; right:28%;
  background:radial-gradient(circle,rgba(194,56,127,.16),transparent 70%);
  animation-delay:-7s;
}
@keyframes ambientDrift {
  0%,100% { transform:translate(0,0) scale(1); }
  50% { transform:translate(-26px,18px) scale(1.08); }
}
@media (prefers-reduced-motion:reduce) {
  .hero-ambient-orb { animation:none; }
}

.hero-overlay {
  position:absolute; inset:0;
  background:
    linear-gradient(90deg,rgba(7,27,50,.96) 0%,rgba(7,27,50,.74) 42%,rgba(7,27,50,.18) 80%),
    linear-gradient(0deg,var(--navy-950) 0%,rgba(7,27,50,0) 38%);
}

/* ---- GLOBE -------------------------------------------------------------------------------------------------- */
.hero-globe-wrap {
  position:absolute; right:6%; top:50%; transform:translateY(-50%);
  width:clamp(340px,38vw,560px); aspect-ratio:1/1;
  display:flex; align-items:center; justify-content:center;
  z-index:2; pointer-events:none;
  animation:globeFloat 6s ease-in-out infinite;
}
@keyframes globeFloat {
  0%,100% { transform:translateY(calc(-50% + 0px)); }
  50% { transform:translateY(calc(-50% - 16px)); }
}
@keyframes orbitSpin { to { transform:rotate(360deg); } }

/* ---- HERO COPY  -  FIX: proper centering not hugging left ---- */
.hero-copy-shell {
  position:relative; z-index:3;
  padding:calc(var(--nav-h) + 84px) 0 100px;
  /* max-width controls text width, NOT left indent */
}
.hero-copy-shell > * { max-width:680px; }
.home-cinematic-hero h1 {
  font-size:clamp(2.8rem,5.8vw,6rem); max-width:840px;
  color:var(--white); animation:riseIn .75s var(--ease) .35s both;
}
.home-cinematic-hero .eyebrow { animation:riseIn .65s var(--ease) .22s both; }
.home-cinematic-hero .hero-lead { animation:riseIn .65s var(--ease) .50s both; margin:16px 0 0; }
.home-cinematic-hero .hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin-top:28px; animation:riseIn .65s var(--ease) .65s both; }
.hero-trust-line { margin-top:22px; color:rgba(255,255,255,.52); font-size:.88rem; letter-spacing:.02em; animation:riseIn .65s var(--ease) .78s both; }
@keyframes riseIn { from{opacity:0;transform:translateY(20px);} to{opacity:1;transform:translateY(0);} }

/* Orbs  -  decorative (used in inner page heroes) */
.hero-orb-1,.hero-orb-2 {
  position:absolute; border-radius:50%; pointer-events:none; z-index:0;
}
.hero-orb-1 {
  width:520px; height:520px; right:-120px; top:-100px;
  background:radial-gradient(ellipse,rgba(184,138,45,.08) 0%,transparent 65%);
}
.hero-orb-2 {
  width:360px; height:360px; left:10%; bottom:-60px;
  background:radial-gradient(ellipse,rgba(56,122,166,.08) 0%,transparent 65%);
}


/* ---- TRUST STRIP -------------------------------------------------------------------------------------- */
.trust-strip-section { padding:clamp(16px,2.4vw,26px) 0; background:var(--ivory); }
.trust-strip {
  display:grid; grid-template-columns:repeat(4,1fr); gap:16px;
}
.trust-strip > div {
  position:relative; padding:26px 22px; background:var(--white);
  border:1px solid var(--border); border-radius:var(--r-lg);
  box-shadow:0 8px 24px rgba(7,27,50,.05);
  transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s var(--ease);
}
.trust-strip > div::before {
  content:""; position:absolute; left:22px; top:0; width:28px; height:3px;
  background:var(--gold-500); border-radius:0 0 3px 3px;
}
.trust-strip > div:hover {
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(7,27,50,.10);
  border-color:rgba(208,169,79,.35);
}
.trust-strip strong {
  display:block; font-family:var(--font-display);
  font-size:.92rem; font-weight:700; color:var(--navy-900); margin:8px 0 5px;
}
.trust-strip span { color:var(--body); font-size:.88rem; line-height:1.5; }

.trust-signal-section {
  background:
    linear-gradient(rgba(244,239,228,.94),rgba(244,239,228,.94)),
    var(--ivory);
  padding:clamp(42px,5vw,66px) 0;
}
.trust-signal-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.trust-signal-card {
  min-height:100%;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  background:var(--white);
  padding:24px;
  box-shadow:var(--shadow-sm);
}
.trust-signal-card span {
  display:block;
  margin-bottom:10px;
  color:var(--gold-600);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.trust-signal-card strong {
  display:block;
  color:var(--navy-900);
  font-size:1.02rem;
  line-height:1.42;
}
.trust-signal-card p {
  margin:10px 0 0;
  color:var(--body);
  font-size:.9rem;
  line-height:1.6;
}
.trust-signal-card blockquote {
  margin:0;
  color:var(--navy-900);
  font-family:var(--font-display);
  font-size:1.18rem;
  font-weight:700;
  line-height:1.38;
}
.trust-signal-card cite {
  display:block;
  margin-top:14px;
  color:var(--body);
  font-size:.84rem;
  font-style:normal;
}

/* ---- IMPACT VISUAL (full-bleed) ---------------------------------------------------------- */
.impact-visual-section {
  position:relative; z-index:1;
  min-height:clamp(380px,46vh,520px);
  display:flex; align-items:center; justify-content:center;
  background:transparent;
  text-align:center; overflow:hidden;
}
.impact-visual-copy { position:relative; z-index:1; max-width:760px; }
.impact-visual-copy .eyebrow { color:var(--gold-400); }
.impact-visual-copy h2 {
  color:var(--white); font-size:clamp(1.7rem,3.4vw,2.6rem); line-height:1.28; margin-top:8px;
}

/* ---- DARK BAND PHOTO (reusable: dark photo+overlay section, any page) ---- */
.dark-band-photo { position:relative; overflow:hidden; color:var(--white); }
.dark-band-photo-bg {
  position:absolute; inset:0; background-size:cover; background-position:center;
  transform:scale(1.04); will-change:transform;
}
.dark-band-photo-overlay {
  position:absolute; inset:0;
  background:linear-gradient(180deg,rgba(7,27,50,.90),rgba(7,27,50,.94));
}
.dark-band-photo > .container { position:relative; z-index:1; }
.dark-band-photo > .container > .section-heading .eyebrow,
.dark-band-photo > .container > .eyebrow { color:var(--gold-400); }
.dark-band-photo > .container > .section-heading h2,
.dark-band-photo > .container > h2 { color:var(--white); }
.dark-band-photo > .container > .section-heading p:not(.eyebrow) { color:rgba(255,255,255,.74); }

/* ---- GLOBAL REACH MAP (true fixed background, whole-page scroll, no text/labels) ---- */
.site-map-bg {
  position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none;
  background:transparent;
  perspective:1400px;
}
.site-map-bg::before {
  content:none;
}
.site-map-bg::after {
  content:""; position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(90deg,rgba(7,27,50,.20),rgba(7,27,50,.08) 46%,rgba(7,27,50,.16)),
    linear-gradient(180deg,rgba(7,27,50,.08),rgba(7,27,50,.16));
}
.site-map-bg-img {
  position:absolute; inset:-10%; z-index:0;
  background-image:url('/ezewag-website-assets/images/world-trade-route-map.webp');
  background-repeat:no-repeat;
  background-size:min(100vw,200vh) auto;
  background-position:50% 50%;
  transform:perspective(1400px) rotateX(0deg) rotateY(0deg) scale(1.02);
  transform-origin:center center;
  transition:background-position .55s cubic-bezier(.22,.61,.36,1),transform .55s cubic-bezier(.22,.61,.36,1);
  will-change:background-position,transform;
}
main, .site-footer { position:relative; z-index:1; }
@media (prefers-reduced-motion:reduce) {
  .site-map-bg-img { transition:none; }
}

/* ---- PAGE HEROES (inner pages) ---------------------------------------------------------- */
.page-hero,.services-hero,.blog-hero,.team-page-hero {
  min-height:480px; display:flex; align-items:flex-end;
  padding:calc(var(--nav-h) + 80px) 0 80px;
  overflow:hidden; background-color:var(--navy-950); color:var(--white);
  position:relative;
}
.page-hero::before,.services-hero::before,.blog-hero::before,.team-page-hero::before {
  content:""; position:absolute; inset:0;
  background-image:
    linear-gradient(90deg,rgba(7,27,50,.94) 0%,rgba(7,27,50,.62) 52%,rgba(7,27,50,.80) 100%),
    var(--hero-image,linear-gradient(135deg,#071b32,#123b67));
  background-size:cover; background-position:center;
  transform:scale(var(--hero-zoom,1.04));
  will-change:transform;
}
.page-hero > *,.services-hero > *,.blog-hero > *,.team-page-hero > * { position:relative; z-index:1; }
.page-hero p,.services-hero p,.blog-hero p,.team-page-hero p { color:rgba(255,255,255,.80); }


/* Services hero layout */
.services-hero-layout,.blog-hero-grid {
  display:grid; grid-template-columns:minmax(0,1.1fr) minmax(260px,.8fr);
  gap:48px; align-items:end;
}
.services-hero-visual {
  border:1px solid rgba(255,255,255,.15); border-radius:var(--r-lg);
  background:rgba(255,255,255,.08); backdrop-filter:blur(12px);
  padding:24px; box-shadow:var(--shadow-xl);
}
.visual-route-card { margin-bottom:12px; border:1px solid rgba(255,255,255,.12); border-radius:var(--r); background:rgba(255,255,255,.07); padding:16px; }
.visual-route-card:last-child { margin-bottom:0; }
.visual-route-card span { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.12em; color:var(--gold-400); }
.visual-route-card strong { display:block; font-size:13px; color:var(--white); margin:4px 0; }
.visual-route-card small { font-size:11px; color:rgba(255,255,255,.52); line-height:1.5; }
.services-hero-tags,.blog-tags {
  display:flex; flex-wrap:wrap; gap:8px; margin:18px 0;
}
.services-hero-tags span {
  border:1px solid rgba(255,255,255,.20); border-radius:999px;
  padding:6px 14px; color:rgba(255,255,255,.88); font-size:12px; font-weight:600;
}
.visual-node {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:40px; height:40px; border-radius:999px;
  background:rgba(184,138,45,.15); color:var(--gold-400); font-weight:800; margin-bottom:14px;
}

/* Premium connected service pages */
.service-suite-nav {
  padding:0; background:var(--white); border-bottom:1px solid var(--border);
  position:relative; z-index:3;
}
.service-suite-nav .container {
  display:grid; grid-template-columns:repeat(6,minmax(0,1fr));
  gap:0; border-left:1px solid var(--border);
}
.service-suite-nav a {
  min-height:118px; padding:22px 18px;
  display:flex; flex-direction:column; justify-content:center; gap:5px;
  border-right:1px solid var(--border);
  background:var(--white);
  transition:background .2s var(--ease),transform .2s var(--ease),box-shadow .2s var(--ease);
}
.service-suite-nav a:hover,.service-suite-nav a.is-active {
  background:linear-gradient(180deg,#fff,var(--ivory));
  transform:translateY(-2px); box-shadow:0 12px 30px rgba(7,27,50,.07);
}
.service-suite-nav strong {
  color:var(--navy-900); font-family:var(--font-display);
  font-size:.94rem; line-height:1.25;
}
.service-suite-nav span {
  color:var(--body); font-size:.78rem; line-height:1.45;
}
.service-decision-band {
  background:
    linear-gradient(90deg,rgba(7,27,50,.96),rgba(7,27,50,.88)),
    url('/ezewag-website-assets/images/ezewag-globe-hero.webp') center/cover;
  color:var(--white);
}
.service-decision-band h2,.service-decision-band h3 { color:var(--white); }
.service-decision-band p { color:rgba(255,255,255,.72); }
.service-decision-grid {
  display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:42px; align-items:start;
}
.service-decision-list {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;
}
.service-decision-list article {
  border:1px solid rgba(255,255,255,.13); border-radius:var(--r-lg);
  background:rgba(255,255,255,.07); padding:22px;
}
.service-decision-list strong {
  display:block; color:var(--gold-400); font-size:.78rem; letter-spacing:.08em; margin-bottom:10px;
}
.service-decision-list h3 { font-size:1rem; margin-bottom:8px; }
.service-decision-list p { font-size:.88rem; margin:0; line-height:1.6; }
.service-output-strip {
  padding:0; background:var(--ivory);
}
.service-output-strip .container {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--border); border-radius:var(--r-lg);
  background:var(--white); box-shadow:var(--shadow-sm); overflow:hidden;
}
.service-output-strip article {
  padding:26px 22px; border-right:1px solid var(--border);
}
.service-output-strip article:last-child { border-right:0; }
.service-output-strip strong {
  display:block; color:var(--navy-900); font-family:var(--font-display);
  font-size:1rem; line-height:1.28; margin-bottom:8px;
}
.service-output-strip span {
  display:block; color:var(--gold-600); font-size:.72rem; font-weight:800;
  letter-spacing:.1em; text-transform:uppercase; margin-bottom:8px;
}
.service-output-strip p { color:var(--body); font-size:.88rem; margin:0; line-height:1.55; }
.detailed-service-card {
  position:relative; overflow:hidden;
  transition:box-shadow .3s var(--ease),border-color .3s var(--ease);
}
.detailed-service-card:hover {
  box-shadow:0 18px 40px rgba(7,27,50,.14),0 0 0 1px rgba(208,169,79,.28);
  border-color:rgba(208,169,79,.4);
}
.detailed-service-card::after {
  content:""; position:absolute; inset:auto 18px 0 18px; height:3px;
  background:linear-gradient(90deg,var(--gold-500),rgba(56,122,166,.35));
  transform:scaleX(0); transform-origin:left; transition:transform .24s var(--ease);
}
.detailed-service-card:hover::after { transform:scaleX(1); }
.process-layout,.audience-layout,.resource-category-layout {
  display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
  gap:56px; align-items:start;
}
.process-left,.audience-copy { position:sticky; top:calc(var(--nav-h) + 32px); }
.process-flow {
  display:grid; gap:14px;
}
.process-step {
  display:grid; grid-template-columns:auto 1fr; gap:0 18px;
  padding:24px; border:1px solid var(--border); border-radius:var(--r-lg);
  background:var(--white); box-shadow:var(--shadow-sm);
}
.process-number {
  grid-row:1 / span 3; width:42px; height:42px; display:grid; place-items:center;
  border-radius:50%; background:rgba(184,138,45,.10); color:var(--gold-600);
  font-weight:800; font-size:.8rem;
}
.process-step h3 { color:var(--navy-900); font-size:1.05rem; margin-bottom:6px; }
.process-step p { color:var(--body); font-size:.9rem; margin:0 0 8px; }
.process-step strong { color:var(--navy-800); font-size:.84rem; }
.audience-grid article {
  background:var(--white); border:1px solid var(--border); border-radius:var(--r-lg);
  padding:24px; box-shadow:var(--shadow-sm);
}
.audience-grid article h3 { color:var(--navy-900); margin-bottom:8px; }
.audience-grid article p { font-size:.9rem; color:var(--body); margin:0; }
.case-proof-section {
  background:var(--white);
}
.case-proof-grid {
  display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  gap:46px; align-items:start;
}
.case-proof-list {
  display:grid; gap:14px;
}
.case-proof-list article {
  border:1px solid var(--border); border-radius:var(--r-lg); padding:22px;
  background:var(--ivory); box-shadow:var(--shadow-sm);
}
.case-proof-list span {
  color:var(--gold-600); font-weight:800; font-size:.76rem; letter-spacing:.08em; text-transform:uppercase;
}
.case-proof-list p { margin:8px 0 0; color:var(--body); font-size:.92rem; }
.market-pill-grid a {
  border:1.5px solid var(--border-md); border-radius:999px;
  padding:9px 18px; color:var(--navy-800); font-size:.88rem; font-weight:700;
  background:var(--white);
  transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease);
}
.market-pill-grid a:hover {
  background:var(--navy-900); color:var(--white); border-color:var(--navy-900);
  transform:translateY(-2px);
}
.faq-list { display:grid; gap:12px; }
.faq-item {
  border:1px solid var(--border); border-radius:var(--r-lg);
  background:var(--white); padding:0 20px; box-shadow:var(--shadow-sm);
}
.faq-item summary {
  cursor:pointer; padding:18px 0; color:var(--navy-900);
  font-family:var(--font-display); font-weight:700;
}
.faq-item p { padding:0 0 18px; color:var(--body); font-size:.92rem; }

/* Services overview page */
.service-proof-strip { padding:34px 0; }
.service-proof-grid {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0;
  border:1px solid var(--border); border-radius:var(--r-lg);
  overflow:hidden; background:var(--white); box-shadow:var(--shadow-sm);
}
.service-proof-card {
  padding:24px 22px; border-right:1px solid var(--border);
}
.service-proof-card:last-child { border-right:0; }
.service-proof-card span {
  display:block; color:var(--gold-600); font-weight:800;
  font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:8px;
}
.service-proof-card strong {
  display:block; color:var(--navy-900); font-family:var(--font-display);
  font-size:1rem; line-height:1.35;
}
.service-menu-panel {
  display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:28px; align-items:center; margin-bottom:34px;
  border:1px solid var(--border); border-radius:var(--r-xl);
  background:var(--white); box-shadow:var(--shadow-sm);
  padding:clamp(24px,4vw,36px);
}
.service-menu-panel h3 { color:var(--navy-900); margin-bottom:8px; }
.service-menu-panel p { color:var(--body); font-size:.92rem; margin:0; }
.service-menu-panel-dark {
  background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.14);
  box-shadow:none; backdrop-filter:blur(10px);
}
.service-menu-panel-dark h3 { color:var(--white); }
.service-menu-panel-dark p { color:rgba(255,255,255,.72); }
.service-path-tags {
  display:flex; flex-wrap:wrap; gap:10px; justify-content:flex-end;
}
.service-path-tags a {
  border:1px solid var(--border-md); border-radius:999px;
  padding:9px 14px; background:var(--ivory); color:var(--navy-800);
  font-size:.84rem; font-weight:700;
  transition:background .2s,color .2s,border-color .2s,transform .2s var(--ease);
}
.service-path-tags a:hover {
  background:var(--navy-900); color:var(--white); border-color:var(--navy-900);
  transform:translateY(-2px);
}
.service-menu-panel-dark .service-path-tags a {
  background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.16); color:rgba(255,255,255,.82);
}
.service-menu-panel-dark .service-path-tags a:hover {
  background:var(--gold-500); border-color:var(--gold-500); color:var(--navy-950);
}
.single-service-flow {
  display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px;
  margin-bottom:44px;
}
.service-flow-step {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:20px 16px; box-shadow:var(--shadow-sm);
}
.service-flow-step strong {
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:50%; margin-bottom:12px;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  font-size:.78rem;
}
.service-flow-step p { color:var(--body); font-size:.84rem; line-height:1.55; margin:0; }
.single-service-flow-dark .service-flow-step {
  background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.13); box-shadow:none;
}
.single-service-flow-dark .service-flow-step p { color:rgba(255,255,255,.68); }
.service-photo-rows { display:grid; gap:22px; }
.service-photo-row {
  display:grid; grid-template-columns:minmax(260px,.72fr) minmax(0,1fr);
  gap:30px; align-items:stretch;
  padding:24px; border:1px solid var(--border);
  border-radius:var(--r-xl); background:var(--white); box-shadow:var(--shadow-sm);
}
.service-photo-row.reverse { grid-template-columns:minmax(0,1fr) minmax(260px,.72fr); }
.service-photo-row.reverse .service-photo { order:2; }
.service-photo {
  min-height:300px; border-radius:var(--r-lg); overflow:hidden;
  background:
    linear-gradient(180deg,rgba(7,27,50,.18),rgba(7,27,50,.58)),
    url('/ezewag-website-assets/images/service-card-market-research.webp') center/cover,
    url('/ezewag-website-assets/images/ezewag-og-image-optimized.jpg') center/cover;
}
#service-photo-1 { background-image:linear-gradient(180deg,rgba(7,27,50,.18),rgba(7,27,50,.58)),url('/ezewag-website-assets/images/service-card-market-research.webp'),url('/ezewag-website-assets/images/ezewag-globe-hero.webp'); }
#service-photo-2 { background-image:linear-gradient(180deg,rgba(7,27,50,.16),rgba(7,27,50,.54)),url('/ezewag-website-assets/images/service-card-buyer-development.webp'),url('/ezewag-website-assets/images/ezewag-og-image-optimized.jpg'); }
#service-photo-3 { background-image:linear-gradient(180deg,rgba(7,27,50,.18),rgba(7,27,50,.58)),url('/ezewag-website-assets/images/service-card-documentation.webp'),url('/ezewag-website-assets/images/ezewag-globe-hero.webp'); }
#service-photo-4 { background-image:linear-gradient(180deg,rgba(7,27,50,.18),rgba(7,27,50,.58)),url('/ezewag-website-assets/images/service-card-pricing.webp'),url('/ezewag-website-assets/images/ezewag-globe-hero.webp'); }
#service-photo-5 { background-image:linear-gradient(180deg,rgba(7,27,50,.16),rgba(7,27,50,.54)),url('/ezewag-website-assets/images/service-card-market-entry.webp'),url('/ezewag-website-assets/images/ezewag-og-image-optimized.jpg'); }
#service-photo-6 { background-image:linear-gradient(180deg,rgba(7,27,50,.18),rgba(7,27,50,.58)),url('/ezewag-website-assets/images/service-card-business-expansion.webp'),url('/ezewag-website-assets/images/ezewag-globe-hero.webp'); }
.service-photo-content {
  align-self:center; padding:8px 4px;
}
.service-photo-content h3 { color:var(--navy-900); margin-bottom:14px; }
.service-photo-content p { color:var(--body); font-size:.94rem; margin-bottom:10px; }
.service-section-cta {
  margin-top:36px; padding:30px;
  border:1px solid var(--border); border-radius:var(--r-xl);
  background:var(--white); box-shadow:var(--shadow-sm);
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.service-section-cta h3 { color:var(--navy-900); margin-bottom:6px; }
.service-section-cta p { color:var(--body); margin:0; }
.business-expansion-section {
  background:
    linear-gradient(90deg,rgba(7,27,50,.96),rgba(7,27,50,.88)),
    url('/ezewag-website-assets/images/ezewag-globe-hero.webp') center/cover;
  color:var(--white);
}
.business-expansion-layout {
  display:grid; grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr);
  gap:44px; align-items:start;
}
.business-expansion-copy {
  position:sticky; top:calc(var(--nav-h) + 32px);
}
.business-expansion-copy h2 { color:var(--white); }
.business-expansion-copy p { color:rgba(255,255,255,.74); }
.business-expansion-copy .text-link { color:var(--gold-400); }
.business-expansion-grid {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px;
}
.business-expansion-grid article {
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.13);
  border-radius:var(--r-lg); padding:22px;
}
.business-expansion-grid h3 { color:var(--white); font-size:1rem; margin-bottom:9px; }
.business-expansion-grid p { color:rgba(255,255,255,.68); font-size:.88rem; margin-bottom:7px; }
.business-expansion-grid p strong { color:var(--gold-400); }
.service-anchor-alias {
  position:absolute; width:1px; height:1px; overflow:hidden; pointer-events:none;
}
/* blog-hero-grid aside */
.blog-signal-card {
  border:1px solid rgba(255,255,255,.15); border-radius:var(--r-lg);
  background:rgba(255,255,255,.08); backdrop-filter:blur(12px);
  padding:24px; box-shadow:var(--shadow-xl);
}
.blog-signal-card strong { display:block; font-size:15px; color:var(--white); margin-bottom:14px; }
.blog-signal-card p.eyebrow { margin-bottom:8px; }
.hero-path-card { border:1px solid rgba(255,255,255,.12); border-radius:var(--r-lg); background:rgba(255,255,255,.07); padding:20px; }

/* Team page hero specific */
.team-page-hero-card { max-width:680px; }
.team-page-hero-card h1 { color:var(--white); margin-bottom:16px; }

/* ---- PROOF / METRICS ------------------------------------------------------------------------------ */
.rating-proof-section { background:var(--white); position:relative; overflow:hidden; }
.metric-card {
  background:var(--ivory); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:26px 22px;
  transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.metric-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); border-color:rgba(184,138,45,.28); }
.metric-card strong {
  display:block; font-family:var(--font-display);
  font-size:clamp(2rem,3.5vw,3rem); font-weight:800;
  color:var(--navy-900); line-height:1; margin-bottom:8px;
}
.metric-card span { color:var(--body); font-size:.88rem; line-height:1.5; }

/* ---- SERVICE CARDS ---------------------------------------------------------------------------------- */
.services-section { background:var(--white); }
.service-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:clamp(22px,3vw,34px);
  box-shadow:var(--shadow-sm); position:relative; overflow:hidden;
  transition:transform .24s var(--ease),box-shadow .24s,border-color .24s;
}
.service-card::before {
  content:""; position:absolute; inset:0 0 auto 0; height:3px;
  background:linear-gradient(90deg,var(--gold-500),transparent);
  transform:scaleX(0); transform-origin:left;
  transition:transform .3s var(--ease);
}
.service-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.28); }
.service-card:hover::before { transform:scaleX(1); }
.service-card h3 { font-size:1.1rem; margin-bottom:10px; color:var(--navy-900); }
.service-card p { color:var(--body); margin-bottom:14px; font-size:.93rem; }
.service-card a {
  color:var(--navy-900); font-weight:700; font-size:.88rem;
  display:inline-flex; align-items:center; gap:6px;
  transition:gap .2s var(--ease),color .2s;
}
.service-card a::after { content:"->"; color:var(--gold-600); }
.service-card a:hover { color:var(--gold-600); gap:10px; }

/* ---- PROCESS STEPS ---------------------------------------------------------------------------------- */
.process-section { background:var(--ivory); }
.conversion-step-grid {
  display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; position:relative;
}
.conversion-step-grid::before {
  content:""; position:absolute;
  top:20px; left:calc(100%/12); right:calc(100%/12);
  height:1px; background:linear-gradient(90deg,transparent,var(--border-md),transparent);
  z-index:0;
}
.conversion-step-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:22px 18px;
  box-shadow:var(--shadow-sm); position:relative; z-index:1;
  transition:transform .22s var(--ease),box-shadow .22s;
}
.conversion-step-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-md); }
.conversion-step-card > span {
  display:inline-flex; align-items:center; justify-content:center;
  width:34px; height:34px; border-radius:50%;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  font-weight:800; font-size:.78rem; margin-bottom:12px;
}
.conversion-step-card h3 { font-size:.95rem; margin-bottom:7px; color:var(--navy-900); }
.conversion-step-card p { font-size:.86rem; color:var(--body); line-height:1.55; margin:0; }
.section-mini-cta,.hero-actions,.form-submit-row {
  display:flex; flex-wrap:wrap; gap:14px; align-items:center;
}
.section-mini-cta { margin-top:40px; }
.compact-mini-cta { margin-top:24px; }

/* ---- PACKAGES -------------------------------------------------------------------------------------------- */
.packages-section { background:var(--ivory); }
.package-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.package-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:clamp(22px,3vw,34px);
  box-shadow:var(--shadow-sm);
  transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.package-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.28); }
.package-card > span:first-child {
  display:inline-block; margin-bottom:12px;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  border-radius:var(--r-sm); padding:4px 11px;
  font-size:.72rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase;
}
.package-card h3 { font-size:1.15rem; margin-bottom:10px; color:var(--navy-900); }
.package-card p { color:var(--body); font-size:.9rem; margin-bottom:14px; }
.package-card p strong { color:var(--navy-800); font-weight:700; }
.package-card ul { padding-left:0; margin-bottom:20px; display:grid; gap:7px; }
.package-card li { color:var(--body); font-size:.9rem; padding-left:18px; position:relative; line-height:1.5; }
.package-card li::before {
  content:""; position:absolute; left:0; top:9px;
  width:6px; height:6px; border-radius:50%; background:var(--gold-500);
}

/* ---- INDUSTRY PILLS -------------------------------------------------------------------------------- */
.industries-preview-section { background:var(--ivory); }
.market-pill-grid { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:32px; }
.market-pill-grid span {
  border:1.5px solid var(--border-md); border-radius:999px;
  padding:9px 18px; color:var(--navy-800); font-size:.88rem; font-weight:600;
  background:var(--white);
  transition:background .2s,border-color .2s,color .2s,transform .2s var(--ease);
}
.market-pill-grid span:hover {
  background:var(--navy-900); color:var(--white); border-color:var(--navy-900);
  transform:translateY(-2px);
}

/* ---- GENERIC CARD BASE -------------------------------------------------------------------------- */

.next-step,.contact-form-card,.contact-copy,
.contact-next-steps,.detailed-service-card,.proof-point-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:clamp(20px,3vw,32px);
  box-shadow:var(--shadow-sm);
  transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.detailed-service-card:hover,.proof-point-card:hover {
  transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.28);
}
.service-number {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:40px; height:40px; border-radius:50%;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  font-weight:800; font-size:.8rem; margin-bottom:14px;
}
.detailed-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.detailed-service-card h3 { font-size:1.05rem; margin-bottom:8px; color:var(--navy-900); }
.detailed-service-card p { color:var(--body); font-size:.9rem; margin:0; }

/*  -  Decorative 3D card accents (CSS-only, reuse existing reveal/stagger engine)  -  */
.doc-fan-grid,.price-stack-grid,.scan-grid,.network-grid,.route-grid { perspective:1200px; }
.scan-grid .detailed-service-card.reveal {
  transform:translateY(-26px) rotateX(-12deg) scale(.95);
  transform-origin:top center;
}
.scan-grid .detailed-service-card.reveal.visible,
.scan-grid .detailed-service-card.reveal.is-visible {
  transform:translateY(0) rotateX(0deg) scale(1);
}
.network-grid .detailed-service-card.reveal {
  transform:translateY(22px) rotateY(10deg) scale(.94);
  transform-origin:right center;
}
.network-grid .detailed-service-card.reveal:nth-child(even) {
  transform:translateY(22px) rotateY(-10deg) scale(.94);
  transform-origin:left center;
}
.network-grid .detailed-service-card.reveal.visible,
.network-grid .detailed-service-card.reveal.is-visible {
  transform:translateY(0) rotateY(0deg) scale(1);
}
.route-grid .detailed-service-card.reveal {
  transform:translateX(36px) rotateY(-14deg) scale(.95);
  transform-origin:left center;
}
.route-grid .detailed-service-card.reveal.visible,
.route-grid .detailed-service-card.reveal.is-visible {
  transform:translateX(0) rotateY(0deg) scale(1);
}
.scan-grid .detailed-service-card:hover,
.network-grid .detailed-service-card:hover,
.route-grid .detailed-service-card:hover {
  transform:translateY(-5px) scale(1.015);
  transition:transform .3s var(--ease);
}
.doc-fan-grid .detailed-service-card.reveal {
  transform:translateY(22px) rotateY(-10deg) rotateX(4deg) scale(.94);
  transform-origin:left center;
}
.doc-fan-grid .detailed-service-card.reveal.visible,
.doc-fan-grid .detailed-service-card.reveal.is-visible {
  transform:translateY(0) rotateY(0deg) scale(1);
}
.price-stack-grid .detailed-service-card.reveal {
  transform:translateY(34px) rotateX(10deg) scale(.95);
  transform-origin:bottom center;
}
.price-stack-grid .detailed-service-card.reveal.visible,
.price-stack-grid .detailed-service-card.reveal.is-visible {
  transform:translateY(0) rotateX(0deg) scale(1);
}
.doc-fan-grid .detailed-service-card:hover,
.price-stack-grid .detailed-service-card:hover {
  transform:translateY(-5px) scale(1.015);
  transition:transform .3s var(--ease);
}

/*  -  Decorative hero accents: network pulse (buyer development) + radar ping (market research)  -  */
@media (prefers-reduced-motion:no-preference) {
  .hero-photo-buyer-development .services-hero-visual .visual-route-card { position:relative; }
  .hero-photo-buyer-development .services-hero-visual .visual-route-card:not(:last-child)::after {
    content:""; position:absolute; left:32px; top:100%; width:1px; height:16px;
    background:linear-gradient(180deg,var(--gold-500),transparent);
    animation:networkPulse 2.4s ease-in-out infinite;
  }
  @keyframes networkPulse { 0%,100% { opacity:.25; } 50% { opacity:1; } }

  .hero-photo-market-research .services-hero-visual .visual-node { position:relative; }
  .hero-photo-market-research .services-hero-visual .visual-node::after {
    content:""; position:absolute; inset:-6px; border-radius:50%;
    border:1px solid var(--gold-400); opacity:0;
    animation:radarPing 2.6s ease-out infinite;
  }
  .hero-photo-market-research .services-hero-visual .visual-node:nth-child(2)::after { animation-delay:1.1s; }
  .hero-photo-documentation .services-hero-visual .visual-node { position:relative; }
  .hero-photo-documentation .services-hero-visual .visual-node::after {
    content:""; position:absolute; inset:-6px; border-radius:50%;
    border:1px solid var(--gold-400); opacity:0;
    animation:radarPing 2.6s ease-out infinite;
  }
  .hero-photo-documentation .services-hero-visual .visual-node:nth-child(2)::after { animation-delay:1.1s; }
  .hero-photo-pricing .services-hero-visual .visual-route-card,
  .hero-photo-market-entry .services-hero-visual .visual-route-card { position:relative; }
  .hero-photo-pricing .services-hero-visual .visual-route-card:not(:last-child)::after,
  .hero-photo-market-entry .services-hero-visual .visual-route-card:not(:last-child)::after {
    content:""; position:absolute; left:32px; top:100%; width:1px; height:16px;
    background:linear-gradient(180deg,var(--gold-500),transparent);
    animation:networkPulse 2.4s ease-in-out infinite;
  }
  @keyframes radarPing {
    0% { transform:scale(1); opacity:.7; }
    100% { transform:scale(1.9); opacity:0; }
  }
}

/* ---- PROOF POINTS ------------------------------------------------------------------------------------ */
.proof-point-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.proof-point-card > span {
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  font-weight:800; font-size:.8rem; margin-bottom:14px;
}
.proof-point-card h3 { font-size:1rem; margin-bottom:8px; color:var(--navy-900); }
.proof-point-card p { color:var(--body); font-size:.9rem; margin:0; line-height:1.6; }

/* ---- FINAL CTA CARD -------------------------------------------------------------------------------- */
.case-placeholder-section { background:var(--white); }
.final-cta-card {
  background:linear-gradient(rgba(7,27,50,.62),rgba(7,27,50,.74));
  color:var(--white);
  border-radius:var(--r-xl); padding:clamp(36px,5vw,60px);
  display:flex; align-items:center; justify-content:space-between;
  gap:40px; flex-wrap:wrap; position:relative; overflow:hidden;
}
.final-cta-card::before {
  content:""; position:absolute; right:-80px; top:-80px;
  width:340px; height:340px; border-radius:50%;
  background:radial-gradient(ellipse,rgba(208,169,79,.12) 0%,transparent 65%);
  pointer-events:none;
}
@media (prefers-reduced-motion:no-preference) {
  .final-cta-card::before { animation:ctaGlowPulse 4.5s ease-in-out infinite; }
  @keyframes ctaGlowPulse {
    0%,100% { opacity:.7; transform:scale(1); }
    50% { opacity:1; transform:scale(1.12); }
  }
}
.final-cta-copy p.eyebrow { color:var(--gold-400); }
.final-cta-copy h2 { color:var(--white); max-width:600px; }
.final-cta-copy p:not(.eyebrow) { color:rgba(255,255,255,.72); }
.final-cta-actions { display:flex; gap:14px; flex-wrap:wrap; align-items:center; flex-shrink:0; }

/* ---- FAQ ------------------------------------------------------------------------------------------------------ */
.faq-section { background:var(--white); }
.faq-layout { display:grid; grid-template-columns:1fr 1.4fr; gap:72px; align-items:start; }
.sticky-col { position:sticky; top:calc(var(--nav-h) + 24px); }
.faq-list { display:grid; gap:10px; }
.faq-item {
  background:var(--ivory); border:1px solid var(--border);
  border-radius:var(--r-lg); overflow:hidden;
  transition:border-color .2s;
}
.faq-item[open] { border-color:rgba(184,138,45,.28); background:var(--white); }
.faq-item summary {
  padding:18px 22px; cursor:pointer;
  font-weight:700; font-size:.95rem; color:var(--navy-900);
  list-style:none; display:flex; justify-content:space-between; align-items:center; gap:16px;
}
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after {
  content:"+"; font-size:1.4rem; line-height:1; font-weight:300;
  color:var(--gold-500); flex-shrink:0; transition:transform .2s var(--ease);
}
.faq-item[open] summary::after { transform:rotate(45deg); }
.faq-item > p { padding:0 22px 18px; color:var(--body); font-size:.93rem; line-height:1.65; max-width:none; }

/* ---- DECISION PROOF -------------------------------------------------------------------------------- */
/* (background now handled by .dark-band-photo, see DARK BAND PHOTO block) */

/* ---- TEAM CARDS (fixed 3-col even grid) ---------------------------------------- */
.team-section,.team-member-section { background:var(--ivory); }
.section-heading.team-section-heading { margin-bottom:48px; }

/* 3-col grid  -  7 cards = 2 rows of 3 + 1 centered last */
.team-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:20px;
}
/* When last item is alone in row: center it */
.team-grid > article:last-child:nth-child(3n+1) {
  grid-column:2;
}
.team-grid > article:last-child:nth-child(3n+2) {
  /* perfectly placed, nothing needed */
}
.team-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); overflow:hidden;
  box-shadow:var(--shadow-sm);
  transition:transform .24s var(--ease),box-shadow .24s,border-color .24s;
  display:flex; flex-direction:column;
}
.team-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.28); }
.team-card-media {
  position:relative; overflow:hidden;
  aspect-ratio:3/4; background:var(--ivory-dark);
}
.team-card-media img,.team-photo {
  width:100%; height:100%; object-fit:cover; object-position:center top;
  transition:transform .5s var(--ease);
  display:block;
}
.team-card:hover .team-card-media img,
.team-card:hover .team-photo { transform:scale(1.04); }
/* Fallback avatar for team members without photo */
.team-avatar-fallback {
  width:100%; aspect-ratio:3/4;
  display:flex; align-items:center; justify-content:center;
  font-family:var(--font-display); font-size:3rem; font-weight:800;
  color:rgba(255,255,255,.9);
}
.team-avatar-fallback span { pointer-events:none; }
.team-category {
  position:absolute; bottom:0; left:0; right:0;
  background:linear-gradient(0deg,rgba(7,27,50,.82),transparent);
  color:rgba(255,255,255,.88); font-size:.72rem; font-weight:700;
  text-transform:uppercase; letter-spacing:.1em;
  padding:32px 16px 14px;
}
.team-card-body { padding:20px 22px 22px; flex:1; display:flex; flex-direction:column; }
.team-name { font-size:1.05rem; margin-bottom:4px; color:var(--navy-900); }
.team-role { font-size:.82rem; font-weight:600; color:var(--gold-600); margin-bottom:10px; }
.team-bio { font-size:.88rem; color:var(--body); line-height:1.6; margin-bottom:14px; }
.team-tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; }
.team-tags span {
  font-size:.72rem; font-weight:600; color:var(--muted);
  background:var(--ivory); border:1px solid var(--border);
  border-radius:999px; padding:3px 10px;
}
.team-card-link {
  display:inline-flex; align-items:center; gap:6px;
  margin-top:12px; font-size:.85rem; font-weight:700; color:var(--navy-900);
  border-bottom:1.5px solid transparent;
  transition:color .2s,gap .2s,border-color .2s;
}
.team-card-link::after { content:"->"; color:var(--gold-600); }
.team-card-link:hover { color:var(--gold-600); gap:10px; border-bottom-color:var(--gold-200); }
.team-card-upload .team-avatar-fallback { aspect-ratio:3/4; }

/* ---- INDUSTRIES PAGE ------------------------------------------------------------------------------ */
.industry-intro-section { background:var(--white); }
.industry-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }
.industry-intro-copy p { font-size:1rem; line-height:1.72; }

/* Industries card grid: 6 cards -> 3 col, 2 rows  */
.industries-grid-section { background:var(--navy-900); color:var(--white); padding:80px 0; }
.industry-card-grid {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px;
}
.industry-card {
  background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-lg); padding:28px 24px;
  transition:background .22s,border-color .22s,transform .22s var(--ease);
}
.industry-card:hover { background:rgba(255,255,255,.12); border-color:rgba(208,169,79,.35); transform:translateY(-3px); }
.industry-card > span {
  display:inline-flex; align-items:center; justify-content:center;
  width:36px; height:36px; border-radius:50%;
  background:rgba(184,138,45,.20); color:var(--gold-400);
  font-weight:800; font-size:.78rem; margin-bottom:14px;
}
.industry-card h3 { font-size:1.05rem; margin-bottom:8px; color:var(--white); }
.industry-card p { font-size:.88rem; color:rgba(255,255,255,.70); margin-bottom:12px; }
.industry-card ul { padding-left:0; display:grid; gap:6px; }
.industry-card li {
  font-size:.82rem; color:rgba(255,255,255,.60);
  padding-left:16px; position:relative; line-height:1.5;
}
.industry-card li::before {
  content:""; position:absolute; left:0; top:7px;
  width:5px; height:5px; border-radius:50%; background:var(--gold-500); opacity:.7;
}

/* Industry visual in hero */
.industries-visual {
  display:flex; flex-direction:column; gap:10px;
}
.industry-visual-card {
  border:1px solid rgba(255,255,255,.15); border-radius:var(--r);
  background:rgba(255,255,255,.08); backdrop-filter:blur(10px);
  padding:16px 20px;
}
.industry-visual-card small { font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--gold-400); display:block; margin-bottom:4px; }
.industry-visual-card strong { display:block; font-size:13px; color:var(--white); line-height:1.4; }
.industry-orbit {
  border:1px solid rgba(255,255,255,.15); border-radius:var(--r-lg);
  background:rgba(255,255,255,.06); padding:18px 20px;
  display:flex; flex-wrap:wrap; gap:8px;
}
.industry-orbit span {
  border:1px solid rgba(255,255,255,.20); border-radius:999px;
  padding:5px 12px; font-size:11px; font-weight:600; color:rgba(255,255,255,.80);
}

/* Industry route section */
.industry-route-section,.industry-market-section { background:var(--ivory); }
.industry-route-flow {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px;
}
.industry-route-flow article {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); padding:24px 20px; box-shadow:var(--shadow-sm);
}
.industry-route-flow article strong {
  display:inline-flex; align-items:center; justify-content:center;
  width:32px; height:32px; border-radius:50%;
  background:rgba(184,138,45,.12); color:var(--gold-600);
  font-size:.78rem; font-weight:800; margin-bottom:12px;
}
.industry-route-flow article h3 { font-size:.95rem; margin-bottom:6px; color:var(--navy-900); }
.industry-route-flow article p { font-size:.86rem; color:var(--body); line-height:1.55; margin:0; }
.industry-market-layout { display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:start; }

/* ---- AUTHORITY / ORG SECTIONS ------------------------------------------------------------ */

/* Org page specific */
.leadership-section { background:var(--white); }

/* ---- PROBLEM / AUDIENCE ------------------------------------------------------------------------ */
.problem-grid,.audience-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.problem-item { background:var(--ivory); border:1px solid var(--border); border-radius:var(--r-lg); padding:24px 22px; }
.problem-item h3 { color:var(--navy-900); margin-bottom:8px; font-size:1.05rem; }
.problem-item p { font-size:.9rem; color:var(--body); margin:0; }

/* ---- DARK BAND ------------------------------------------------------------------------------------------ */
#contact-steps-bg {
  background:linear-gradient(rgba(7,27,50,.88),rgba(7,27,50,.88)),url('/ezewag-website-assets/images/ezewag-globe-hero.webp') center/cover;
  color:var(--white);
}
#contact-steps-bg p,#contact-steps-bg span { color:rgba(255,255,255,.72); }
.dark-band .eyebrow { color:var(--gold-400); }
.dark-band h2 { color:var(--white); }
.dark-band p { color:rgba(255,255,255,.70); }
.dark-band .metric-card { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.12); }
.dark-band .metric-card strong { color:var(--white); }
.dark-band .metric-card span { color:rgba(255,255,255,.62); }

/* ---- CONTACT ---------------------------------------------------------------------------------------------- */
.contact-layout { display:grid; grid-template-columns:minmax(0,.9fr) minmax(340px,1fr); gap:28px; align-items:start; }
.contact-copy { display:flex; flex-direction:column; gap:20px; }
.contact-copy h3 { color:var(--navy-900); }
.contact-copy p { color:var(--body); }
.contact-form-card { padding:clamp(26px,4vw,40px); }
.contact-next-steps { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.next-step { text-align:center; }
.next-step-num {
  display:inline-flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%;
  background:rgba(184,138,45,.10); color:var(--gold-600);
  font-weight:800; font-size:.82rem; margin:0 auto 12px;
}
.next-step h3 { font-size:.95rem; margin-bottom:5px; color:var(--navy-900); }
.next-step p { font-size:.86rem; color:var(--body); margin:0; }
.next-step-text { display:grid; gap:6px; }
#contact-steps-bg .next-step-text strong {
  display:block;
  color:var(--navy-900);
  font-family:var(--font-display);
  font-size:1rem;
  line-height:1.25;
}
#contact-steps-bg .next-step-text span {
  display:block;
  color:var(--body);
  font-size:.88rem;
  line-height:1.58;
}
.next-step-arrow { display:none; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.form-full { grid-column:1/-1; }
.form-hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
label span { display:block; margin-bottom:5px; font-weight:600; color:var(--navy-900); font-size:.88rem; }
input,select,textarea {
  width:100%; border:1.5px solid var(--border-md);
  border-radius:var(--r); background:var(--white);
  color:var(--ink); min-height:46px; padding:11px 13px;
  transition:border-color .2s,box-shadow .2s;
}
input:focus,select:focus,textarea:focus {
  outline:none; border-color:var(--gold-500);
  box-shadow:0 0 0 3px rgba(208,169,79,.14);
}
textarea { min-height:130px; resize:vertical; }
.form-status { margin-top:12px; font-weight:700; font-size:.9rem; }
.form-status.is-success { color:#0b6b3a; }
.form-status.is-error { color:#a93226; }
.form-privacy-note { font-size:.82rem; color:var(--muted); margin-top:10px; }
.form-privacy-note a { color:var(--navy-900); font-weight:700; text-decoration:underline; }
.contact-map-embed {
  margin-top:16px;
  border:1px solid var(--border);
  border-radius:var(--r);
  overflow:hidden;
  background:var(--white);
}
.form-success-panel {
  grid-column:1/-1;
  background:#eaf5ef;
  border:1px solid #b2dfca;
  border-radius:var(--r);
  padding:16px 20px;
  margin-top:16px;
  color:#1a7a3c;
  font-size:.9rem;
  line-height:1.55;
}
.form-success-panel strong {
  display:block;
  margin-bottom:4px;
  color:#12602f;
}
.thank-you-main {
  min-height:60vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(120px,14vw,170px) 24px 72px;
  text-align:center;
  background:var(--ivory);
}
.thank-you-card {
  max-width:560px;
  margin:0 auto;
}
.thank-you-icon {
  width:64px;
  height:64px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 20px;
  border-radius:50%;
  background:#eaf5ef;
  color:#1a7a3c;
  font-size:28px;
  font-weight:800;
}
.thank-you-card h1 {
  margin-bottom:12px;
  color:var(--navy-900);
  font-size:clamp(1.5rem,3vw,2rem);
}
.thank-you-card p {
  color:var(--body);
  line-height:1.7;
}
.thank-you-note {
  margin:24px 0 18px;
  color:var(--muted) !important;
  font-size:.92rem;
}
.thank-you-home {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin-top:14px;
  color:var(--muted);
  font-size:.86rem;
  font-weight:700;
  text-decoration:underline;
}

.linkedin-link:focus-visible {
  color:#084f95;
  background:rgba(10,102,194,.08);
}

/* ---- BLOG (index.php styles, matching main design) ------------------ */
.blog-hero { background:var(--navy-950); color:var(--white); }
.blog-hero-grid {
  display:grid; grid-template-columns:minmax(0,1.05fr) minmax(280px,.7fr);
  gap:48px; align-items:center;
}
.blog-hero-grid h1 { color:var(--white); }
.blog-hero-grid p { color:rgba(255,255,255,.78); }
.blog-listing-section { background:var(--ivory); }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.blog-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-sm);
  display:flex; flex-direction:column;
  transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.blog-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.26); }
.blog-card-image {
  display:block; width:100%; aspect-ratio:1200/630;
  background:linear-gradient(135deg,var(--navy-900),var(--blue-500)); overflow:hidden;
}
.blog-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease); }
.blog-card:hover .blog-card-image img { transform:scale(1.04); }
.blog-card-body { padding:20px 22px; display:flex; flex-direction:column; flex:1; }
.blog-card-body h2 { font-size:clamp(1rem,1.5vw,1.25rem); margin:6px 0 10px; color:var(--navy-900); line-height:1.2; }
.blog-card-body p { font-size:.88rem; color:var(--body); line-height:1.65; margin-bottom:14px; }
.blog-card-link {
  margin-top:auto; color:var(--navy-900); font-weight:700; font-size:.88rem;
  display:inline-flex; align-items:center; gap:6px;
}
.blog-card-link::after { content:"->"; color:var(--gold-600); }
.blog-post-meta { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:14px; }
.blog-post-meta span {
  font-size:.8rem; font-weight:600; color:var(--muted);
  border:1px solid var(--border); border-radius:999px;
  background:var(--ivory); padding:4px 12px;
}
.blog-tags span {
  border:1px solid var(--border-md); border-radius:999px;
  padding:5px 12px; font-size:.78rem; font-weight:600; color:var(--body); background:var(--ivory);
}
.blog-pagination { display:flex; justify-content:center; gap:8px; margin-top:40px; }
.blog-pagination a,.blog-pagination span {
  display:grid; place-items:center; min-width:40px; height:40px;
  border:1px solid var(--border); border-radius:var(--r-sm);
  background:var(--white); font-weight:700; font-size:.88rem; color:var(--navy-900);
  transition:background .2s,border-color .2s;
}
.blog-pagination a:hover { background:var(--ivory); border-color:var(--border-md); }
.blog-pagination span { background:var(--gold-500); color:var(--navy-950); border-color:var(--gold-500); }
.blog-empty { border:1px solid var(--border); border-radius:var(--r-lg); padding:40px; background:var(--white); text-align:center; }
.blog-post-page { padding-top:calc(var(--nav-h) + 40px); background:var(--white); }
.blog-post-container { max-width:880px; }
.blog-post-header { margin:22px 0 28px; }
.blog-post-image { overflow:hidden; border:1px solid var(--border); border-radius:var(--r-lg); }
.blog-post-image img { width:100%; aspect-ratio:1200/630; object-fit:cover; display:block; }
.blog-post-content { margin-top:36px; color:var(--body); font-size:17px; line-height:1.78; }
.blog-post-content h2,.blog-post-content h3 { color:var(--navy-900); margin-top:32px; }
.blog-post-content a { color:var(--gold-600); font-weight:700; }
.blog-post-cta {
  margin-top:48px; padding:36px; border-radius:var(--r-lg);
  background:var(--ivory); border:1px solid var(--border);
}

/* ---- RESOURCE / CASE GRID -------------------------------------------------------------------- */
.resource-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.industry-card.resource-card,.resource-card {
  background:var(--white); border:1px solid var(--border);
  border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow-sm);
  transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.resource-card:hover { transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:rgba(184,138,45,.28); }
.resource-card h3 { margin-bottom:8px; color:var(--navy-900); font-size:1.05rem; }
.resource-card p { font-size:.88rem; color:var(--body); margin:0 0 12px; }
.resource-card a {
  color:var(--navy-900); font-weight:700; font-size:.88rem;
  display:inline-flex; align-items:center; gap:6px;
}
.resource-card a::after { content:"->"; color:var(--gold-600); }
.resource-meta { display:flex; flex-direction:column; gap:3px; margin-bottom:14px; }
.resource-meta strong { font-size:.8rem; font-weight:700; color:var(--gold-600); text-transform:uppercase; letter-spacing:.06em; }
.resource-meta small { font-size:.76rem; color:var(--body); }

/* ---- FOOTER ------------------------------------------------------------------------------------------------ */
.site-footer { background:linear-gradient(rgba(7,27,50,.55),rgba(7,27,50,.85)); color:var(--white); padding:68px 0 0; position:relative; overflow:hidden; }
.site-footer::before {
  content:""; position:absolute; inset:0 0 auto 0; height:2px;
  background:linear-gradient(90deg,transparent,var(--gold-500) 20%,rgba(194,56,127,.7) 50%,var(--gold-500) 80%,transparent);
  background-size:200% 100%;
}
@media (prefers-reduced-motion:no-preference) {
  .site-footer::before { animation:footerSweep 8s linear infinite; }
  @keyframes footerSweep { 0% { background-position:200% 0; } 100% { background-position:0 0; } }
}
.footer-inner {
  display:grid; grid-template-columns:1.3fr repeat(3,.75fr) 1fr; gap:32px;
  width:min(var(--max),100% - 48px); margin-inline:auto;
}
.footer-logo .site-logo-img { height:52px; filter:brightness(1.15); }
.footer-tagline { color:rgba(255,255,255,.58); font-size:.88rem; margin:12px 0 18px; line-height:1.6; max-width:28ch; }
.footer-col-title { margin-bottom:14px; color:var(--gold-200); font-weight:700; text-transform:uppercase; letter-spacing:.1em; font-size:.7rem; }
.footer-col-links { list-style:none; padding:0; margin:0; display:grid; gap:9px; }
.footer-col-links a,.footer-contact a,.footer-consult { color:rgba(255,255,255,.68); font-size:.9rem; font-weight:500; transition:color .18s; }
.footer-col-links a:hover,.footer-contact a:hover { color:var(--gold-400); }
.footer-consult {
  display:inline-flex; min-height:42px; align-items:center;
  padding:0 16px; border:1px solid rgba(232,209,154,.32);
  border-radius:999px; margin-top:10px; color:rgba(255,255,255,.82)!important;
  transition:background .2s,border-color .2s;
}
.footer-consult:hover { background:rgba(208,169,79,.10); border-color:rgba(232,209,154,.55); }
.footer-contact a { display:block; }
.footer-contact p { color:rgba(255,255,255,.52); font-size:.86rem; margin-top:10px; line-height:1.6; max-width:none; }
.footer-bottom {
  display:flex; justify-content:space-between; gap:16px;
  align-items:center; flex-wrap:wrap;
  border-top:1px solid rgba(255,255,255,.10);
  margin-top:52px;
  padding:20px min(calc((100vw - var(--max))/2 + 24px),24px);
  color:rgba(255,255,255,.45); font-size:.82rem;
}

/* ---- ANIMATIONS ---------------------------------------------------------------------------------------- */
.reveal,.reveal-on-scroll {
  opacity:0; transform:translateY(26px) scale(.96);
  transition:opacity .7s var(--ease),transform .7s var(--ease);
  transition-delay:var(--reveal-delay,0ms);
}
.reveal.visible,.reveal.is-visible,
.reveal-on-scroll.visible,.reveal-on-scroll.is-visible {
  opacity:1; transform:translateY(0) scale(1);
}
.slide-left {
  opacity:0; transform:translateX(-36px);
  transition:opacity .7s var(--ease),transform .7s var(--ease);
  transition-delay:var(--reveal-delay,0ms);
}
.slide-right {
  opacity:0; transform:translateX(36px);
  transition:opacity .7s var(--ease),transform .7s var(--ease);
  transition-delay:var(--reveal-delay,0ms);
}
.slide-left.visible,.slide-left.is-visible,
.slide-right.visible,.slide-right.is-visible { opacity:1; transform:translateX(0); }
.scale-in {
  opacity:0; transform:scale(.9);
  transition:opacity .6s var(--ease),transform .6s var(--ease);
  transition-delay:var(--reveal-delay,0ms);
}
.scale-in.visible,.scale-in.is-visible { opacity:1; transform:scale(1); }

/* Globe on standalone sections */

/* ---- PHOTO / BG HELPERS ------------------------------------------------------------------------ */
.photo-section { background-color:var(--navy-950); }
.photo-zoom { overflow:hidden; }
.section-light-photo { color:var(--white); }
.dark-photo-industries-groups {
  background:linear-gradient(rgba(7,27,50,.88),rgba(7,27,50,.88)),url('/ezewag-website-assets/images/ezewag-og-image-optimized.jpg') center/cover;
}

/* ---- RESPONSIVE ---------------------------------------------------------------------------------------- */
@media (max-width:1100px) {
  .footer-inner { grid-template-columns:1fr 1fr; gap:28px; }
  .conversion-step-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .industry-route-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:980px) {
  :root { --nav-h:64px; }
  section { padding:72px 0; }

  /* Mobile nav drawer */
  .site-menu-toggle { display:flex; }
  .nav-links {
    position:fixed; inset:0 0 0 auto; width:min(340px,90vw); z-index:1100;
    flex-direction:column; align-items:flex-start; justify-content:flex-start;
    background:rgba(5,20,38,.94); color:var(--white);
    backdrop-filter:blur(18px) saturate(1.2);
    -webkit-backdrop-filter:blur(18px) saturate(1.2);
    padding:calc(var(--nav-h) + 20px) 20px 40px; gap:2px;
    max-height:100svh; overflow-y:auto; overscroll-behavior:contain; transform:translateX(100%);
    transition:transform .3s var(--ease); box-shadow:var(--shadow-xl);
  }
  .nav-links.is-open { transform:translateX(0); }
  .nav-links > li { width:100%; }
  .nav-links > li > a { width:100%; justify-content:flex-start; padding:12px 14px; font-size:15px; border-radius:var(--r); color:var(--white); }
  .nav-dropdown {
    position:static; opacity:1; pointer-events:auto;
    transform:none!important; box-shadow:none; border:none;
    background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12);
    border-radius:var(--r); padding:6px; margin-top:4px;
    max-height:46svh; overflow-y:auto; overscroll-behavior:contain;
    display:none;
  }
  .has-menu.is-mobile-expanded .nav-dropdown { display:block; }
  .nav-dropdown a { color:var(--white); }
  .nav-dropdown a:hover,
  .nav-dropdown a[aria-current="page"] { background:rgba(208,169,79,.14); }
  .nav-dropdown span,
  .nav-dropdown a:hover span,
  .nav-dropdown a[aria-current="page"] span { color:var(--gold-400); }
  .nav-dropdown small,
  .nav-dropdown a[aria-current="page"] small { color:rgba(255,255,255,.68); }
  .has-menu::after { display:none; }
  .nav-cta { width:100%; justify-content:center; margin-top:10px; }

  /* Hero */
  .hero-globe-wrap { display:none; }
  .home-cinematic-hero { min-height:100svh; }
  .hero-copy-shell > * { max-width:100%; }

  /* Grids */
  .package-grid { grid-template-columns:1fr; }
  .faq-layout { grid-template-columns:1fr; gap:40px; }
  .sticky-col { position:static; }
  .conversion-step-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .services-hero-layout,.blog-hero-grid,.blog-hero-grid { grid-template-columns:1fr; }
  .services-hero-visual,.blog-signal-card { display:none; }
  .service-suite-nav .container { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .service-decision-grid,.process-layout,.audience-layout,.resource-category-layout,.case-proof-grid {
    grid-template-columns:1fr; gap:36px;
  }
  .process-left,.audience-copy { position:static; }
  .service-output-strip .container { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-decision-list { grid-template-columns:1fr; }
  .service-proof-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-menu-panel,.business-expansion-layout { grid-template-columns:1fr; }
  .business-expansion-copy { position:static; }
  .service-path-tags { justify-content:flex-start; }
  .single-service-flow { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .service-photo-row,.service-photo-row.reverse { grid-template-columns:1fr; }
  .service-photo-row.reverse .service-photo { order:0; }
  .contact-layout { grid-template-columns:1fr; }
  .contact-next-steps { grid-template-columns:1fr; }
  .detailed-service-grid,.proof-point-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-grid > article:last-child:nth-child(3n+1) { grid-column:auto; }
  .trust-strip { grid-template-columns:repeat(2,1fr); }
  .trust-signal-grid { grid-template-columns:1fr; }
  .industry-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .industry-intro-grid,.industry-market-layout { grid-template-columns:1fr; gap:36px; }
  .industry-route-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .resource-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:640px) {
  section { padding:56px 0; }
  .container { width:100%; padding-inline:20px; }
  h1 { font-size:2.3rem; }
  h2 { font-size:1.85rem; }
  .detailed-service-grid,.proof-point-grid,
  .team-grid,.industry-card-grid,.blog-grid,.resource-card-grid,
  .problem-grid,.audience-grid { grid-template-columns:1fr; }
  .conversion-step-grid { grid-template-columns:1fr; }
  .conversion-step-grid::before { display:none; }
  .service-suite-nav .container { grid-template-columns:1fr; border-left:0; }
  .service-suite-nav a { min-height:auto; border-right:0; border-bottom:1px solid var(--border); }
  .service-output-strip .container { grid-template-columns:1fr; }
  .service-proof-grid,.single-service-flow,.business-expansion-grid { grid-template-columns:1fr; }
  .service-proof-card { border-right:0; border-bottom:1px solid var(--border); }
  .service-proof-card:last-child { border-bottom:0; }
  .service-photo { min-height:220px; }
  .service-output-strip article { border-right:0; border-bottom:1px solid var(--border); }
  .service-output-strip article:last-child { border-bottom:0; }
  .process-step { grid-template-columns:1fr; }
  .process-number { grid-row:auto; margin-bottom:14px; }
  .trust-strip { grid-template-columns:1fr; }
  .trust-signal-card { padding:20px; }
  .industry-route-flow { grid-template-columns:1fr; }
  .final-cta-card { flex-direction:column; align-items:flex-start; }
  .team-grid > article:last-child:nth-child(3n+1) { grid-column:auto; }
}

/* Homepage map journey: one fixed map, transparent sections, readable glass content. */
body.lead-gen-home {
  background:transparent;
  color:#f8fbff;
}
body.lead-gen-home main,
body.lead-gen-home .section-white,
body.lead-gen-home .section-light,
body.lead-gen-home .section-ash,
body.lead-gen-home .trust-strip-section,
body.lead-gen-home .trust-signal-section,
body.lead-gen-home .rating-proof-section,
body.lead-gen-home .services-section,
body.lead-gen-home .process-section,
body.lead-gen-home .packages-section,
body.lead-gen-home .industries-preview-section,
body.lead-gen-home .case-placeholder-section,
body.lead-gen-home .faq-section,
body.lead-gen-home .final-cta-section {
  background:transparent !important;
}
body.lead-gen-home .home-cinematic-hero {
  min-height:100svh;
  align-items:flex-start;
}
body.lead-gen-home .site-nav {
  background:rgba(255,255,255,.05);
  border-bottom:0;
  box-shadow:none;
  backdrop-filter:blur(10px);
}
body.lead-gen-home .site-nav.is-scrolled {
  background:rgba(255,255,255,.05);
  border-bottom:0;
  box-shadow:none;
}
body.lead-gen-home .hero-ambient {
  display:none;
}
body.lead-gen-home .hero-overlay {
  background:transparent;
}
body.lead-gen-home .hero-copy-shell > * {
  max-width:920px;
}
body.lead-gen-home .hero-copy-shell {
  padding:clamp(116px,13vh,142px) 0 clamp(36px,5vh,58px);
}
body.lead-gen-home .home-cinematic-hero h1 {
  max-width:960px;
  font-size:clamp(2.65rem,4.45vw,5.05rem);
  line-height:1.02;
}
body.lead-gen-home .home-cinematic-hero .eyebrow {
  margin-bottom:14px;
  font-size:clamp(.78rem,.9vw,.98rem);
}
body.lead-gen-home .home-cinematic-hero .hero-lead {
  max-width:760px;
  margin-top:14px;
}
body.lead-gen-home .home-cinematic-hero .hero-actions {
  margin-top:20px;
}
body.lead-gen-home .hero-trust-line {
  margin-top:16px;
}
body.lead-gen-home .home-cinematic-hero .btn-secondary,
body.lead-gen-home .final-cta-card .btn-light {
  color:var(--ink)!important;
  border-color:rgba(255,255,255,.72);
  background:rgba(255,255,255,.05);
  backdrop-filter:blur(4px);
}
body.lead-gen-home .home-cinematic-hero .btn-secondary:hover,
body.lead-gen-home .final-cta-card .btn-light:hover {
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.72);
}
body.lead-gen-home .trust-strip-section,
body.lead-gen-home .trust-signal-section,
body.lead-gen-home .rating-proof-section,
body.lead-gen-home .services-section,
body.lead-gen-home .process-section,
body.lead-gen-home .packages-section,
body.lead-gen-home .industries-preview-section,
body.lead-gen-home .case-placeholder-section,
body.lead-gen-home .decision-proof-section,
body.lead-gen-home .faq-section,
body.lead-gen-home .final-cta-section {
  position:relative;
  z-index:1;
  background:rgba(255,255,255,.055)!important;
  border-top:1px solid rgba(232,209,154,.22);
  border-bottom:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(7px) saturate(1.08);
  -webkit-backdrop-filter:blur(7px) saturate(1.08);
}
body.lead-gen-home .trust-strip-section,
body.lead-gen-home .trust-signal-section,
body.lead-gen-home .rating-proof-section,
body.lead-gen-home .services-section,
body.lead-gen-home .process-section,
body.lead-gen-home .packages-section,
body.lead-gen-home .industries-preview-section,
body.lead-gen-home .case-placeholder-section,
body.lead-gen-home .faq-section {
  padding-top:clamp(72px,8vw,112px);
  padding-bottom:clamp(72px,8vw,112px);
}
body.lead-gen-home .trust-strip-section {
  padding-top:clamp(28px,4vw,48px);
}
body.lead-gen-home .section-heading,
body.lead-gen-home .faq-copy {
  padding:clamp(18px,3vw,30px);
  border:1px solid rgba(232,209,154,.36);
  border-radius:var(--r);
  background:rgba(255,255,255,.08);
  box-shadow:0 22px 54px rgba(0,0,0,.20);
  backdrop-filter:blur(10px) saturate(1.12);
  -webkit-backdrop-filter:blur(10px) saturate(1.12);
}
body.lead-gen-home .home-cinematic-hero h1,
body.lead-gen-home .section-heading h2,
body.lead-gen-home .dark-band-photo > .container > .section-heading h2,
body.lead-gen-home .faq-copy h2,
body.lead-gen-home .impact-visual-copy h2,
body.lead-gen-home .final-cta-copy h2,
body.lead-gen-home .trust-strip strong,
body.lead-gen-home .trust-signal-card strong,
body.lead-gen-home .trust-signal-card blockquote,
body.lead-gen-home .metric-card strong,
body.lead-gen-home .service-card h3,
body.lead-gen-home .conversion-step-card h3,
body.lead-gen-home .package-card h3,
body.lead-gen-home .proof-point-card h3,
body.lead-gen-home .faq-item summary {
  color:#f8fbff;
  text-shadow:0 3px 18px rgba(0,0,0,.78),0 1px 2px rgba(0,0,0,.90);
}
body.lead-gen-home .home-cinematic-hero .hero-lead,
body.lead-gen-home .hero-trust-line,
body.lead-gen-home .section-heading p:not(.eyebrow),
body.lead-gen-home .dark-band-photo > .container > .section-heading p:not(.eyebrow),
body.lead-gen-home .section-lead,
body.lead-gen-home .faq-copy p,
body.lead-gen-home .final-cta-copy p:not(.eyebrow) {
  color:rgba(248,251,255,.94);
  font-size:clamp(1rem,1.08vw,1.1rem);
  font-weight:600;
  text-shadow:0 2px 10px rgba(0,0,0,.82),0 1px 2px rgba(0,0,0,.88);
}
body.lead-gen-home .eyebrow {
  color:#f1d27a;
  font-weight:800;
  text-shadow:0 2px 10px rgba(0,0,0,.78),0 1px 2px rgba(0,0,0,.88);
}
body.lead-gen-home .trust-strip > div,
body.lead-gen-home .trust-signal-card,
body.lead-gen-home .metric-card,
body.lead-gen-home .service-card,
body.lead-gen-home .conversion-step-card,
body.lead-gen-home .package-card,
body.lead-gen-home .proof-point-card,
body.lead-gen-home .faq-item,
body.lead-gen-home .market-pill-grid span {
  background:rgba(255,255,255,.08);
  border-color:rgba(232,209,154,.34);
  box-shadow:0 18px 48px rgba(0,0,0,.20);
  backdrop-filter:blur(10px) saturate(1.12);
  -webkit-backdrop-filter:blur(10px) saturate(1.12);
}
body.lead-gen-home .trust-strip > div::before,
body.lead-gen-home .service-card::before {
  display:none;
}
body.lead-gen-home .trust-strip > div:hover,
body.lead-gen-home .trust-signal-card:hover,
body.lead-gen-home .metric-card:hover,
body.lead-gen-home .service-card:hover,
body.lead-gen-home .conversion-step-card:hover,
body.lead-gen-home .package-card:hover,
body.lead-gen-home .proof-point-card:hover {
  box-shadow:0 26px 62px rgba(0,0,0,.26);
  border-color:rgba(241,210,122,.68);
}

body.lead-gen-home .dark-band-photo-overlay {
  background:transparent;
  backdrop-filter:none;
}
body.lead-gen-home .final-cta-card {
  background:rgba(255,255,255,.08);
  border:1px solid rgba(232,209,154,.36);
  box-shadow:0 26px 62px rgba(0,0,0,.22);
  backdrop-filter:blur(10px) saturate(1.12);
  -webkit-backdrop-filter:blur(10px) saturate(1.12);
}
body.lead-gen-home .site-footer {
  background:rgba(255,255,255,.08);
  color:#f8fbff;
  border-top:1px solid rgba(232,209,154,.36);
  box-shadow:0 -18px 54px rgba(0,0,0,.18);
  backdrop-filter:blur(10px) saturate(1.12);
  -webkit-backdrop-filter:blur(10px) saturate(1.12);
}
body.lead-gen-home .footer-logo .site-logo-img {
  filter:none;
}
body.lead-gen-home .footer-tagline,
body.lead-gen-home .footer-contact p,
body.lead-gen-home .footer-bottom {
  color:rgba(248,251,255,.80);
}
body.lead-gen-home .footer-col-title {
  color:#f1d27a;
}
body.lead-gen-home .footer-col-links a,
body.lead-gen-home .footer-contact a,
body.lead-gen-home .footer-consult {
  color:rgba(248,251,255,.86)!important;
}
body.lead-gen-home .footer-bottom {
  border-top-color:rgba(255,255,255,.45);
}
body.lead-gen-home p,
body.lead-gen-home .trust-strip span,
body.lead-gen-home .metric-card span,
body.lead-gen-home .faq-item > p,
body.lead-gen-home .package-card li,
body.lead-gen-home .market-pill-grid span,
body.lead-gen-home .footer-bottom,
body.lead-gen-home .footer-tagline,
body.lead-gen-home .footer-contact p {
  color:rgba(248,251,255,.94);
  font-size:clamp(.98rem,1.02vw,1.08rem);
  font-weight:600;
  text-shadow:0 2px 10px rgba(0,0,0,.82),0 1px 2px rgba(0,0,0,.88);
}

body.lead-gen-home .trust-signal-card span,
body.lead-gen-home .trust-signal-card cite,
body.lead-gen-home .conversion-step-card > span,
body.lead-gen-home .package-card > span:first-child,
body.lead-gen-home .proof-point-card > span,
body.lead-gen-home .package-card p strong {
  color:#f1d27a;
  text-shadow:0 2px 10px rgba(0,0,0,.78),0 1px 2px rgba(0,0,0,.88);
}


body.lead-gen-home .conversion-step-card > span,
body.lead-gen-home .package-card > span:first-child,
body.lead-gen-home .proof-point-card > span {
  background:rgba(241,210,122,.14);
  border:1px solid rgba(241,210,122,.32);
}

body.lead-gen-home .service-card a,
body.lead-gen-home .text-link,
body.lead-gen-home .footer-col-links a:hover,
body.lead-gen-home .footer-contact a:hover,
body.lead-gen-home .footer-consult:hover {
  color:#f1d27a!important;
}

body.lead-gen-home .service-card a::after,
body.lead-gen-home .faq-item summary::after {
  color:#f1d27a;
}

body.lead-gen-home .btn-ghost,
body.lead-gen-home .btn-light,
body.lead-gen-home .home-cinematic-hero .btn-secondary,
body.lead-gen-home .final-cta-card .btn-light {
  color:#f8fbff!important;
  border-color:rgba(232,209,154,.52);
  background:rgba(255,255,255,.08);
  box-shadow:0 12px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

body.lead-gen-home .btn-ghost:hover,
body.lead-gen-home .btn-light:hover,
body.lead-gen-home .home-cinematic-hero .btn-secondary:hover,
body.lead-gen-home .final-cta-card .btn-light:hover {
  color:#f1d27a!important;
  border-color:rgba(241,210,122,.78);
  background:rgba(255,255,255,.12);
}

/* Homepage live-style color reset: normal ink/gold text over 5% glass. */
body.lead-gen-home {
  color:var(--ink);
}
body.lead-gen-home .trust-strip-section,
body.lead-gen-home .trust-signal-section,
body.lead-gen-home .rating-proof-section,
body.lead-gen-home .services-section,
body.lead-gen-home .process-section,
body.lead-gen-home .packages-section,
body.lead-gen-home .industries-preview-section,
body.lead-gen-home .case-placeholder-section,
body.lead-gen-home .decision-proof-section,
body.lead-gen-home .faq-section,
body.lead-gen-home .final-cta-section {
  background:transparent!important;
  border-top:0;
  border-bottom:0;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
body.lead-gen-home .section-heading,
body.lead-gen-home .faq-copy,
body.lead-gen-home .final-cta-card,
body.lead-gen-home .site-footer {
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.45);
  box-shadow:0 18px 48px rgba(0,0,0,.06);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
body.lead-gen-home .home-cinematic-hero h1,
body.lead-gen-home .section-heading h2,
body.lead-gen-home .dark-band-photo > .container > .section-heading h2,
body.lead-gen-home .faq-copy h2,
body.lead-gen-home .impact-visual-copy h2,
body.lead-gen-home .final-cta-copy h2,
body.lead-gen-home .trust-strip strong,
body.lead-gen-home .trust-signal-card strong,
body.lead-gen-home .trust-signal-card blockquote,
body.lead-gen-home .metric-card strong,
body.lead-gen-home .service-card h3,
body.lead-gen-home .conversion-step-card h3,
body.lead-gen-home .package-card h3,
body.lead-gen-home .proof-point-card h3,
body.lead-gen-home .faq-item summary,
body.lead-gen-home .footer-col-title {
  color:var(--ink);
  text-shadow:0 1px 2px rgba(255,255,255,.65);
}
body.lead-gen-home .home-cinematic-hero .hero-lead,
body.lead-gen-home .hero-trust-line,
body.lead-gen-home .section-heading p:not(.eyebrow),
body.lead-gen-home .dark-band-photo > .container > .section-heading p:not(.eyebrow),
body.lead-gen-home .section-lead,
body.lead-gen-home .faq-copy p,
body.lead-gen-home .final-cta-copy p:not(.eyebrow),
body.lead-gen-home p,
body.lead-gen-home .trust-strip span,
body.lead-gen-home .metric-card span,
body.lead-gen-home .faq-item > p,
body.lead-gen-home .package-card li,
body.lead-gen-home .footer-tagline,
body.lead-gen-home .footer-contact p {
  color:rgba(15,27,38,.94);
  text-shadow:0 1px 2px rgba(255,255,255,.52);
}
body.lead-gen-home .eyebrow {
  color:var(--ink);
  text-shadow:0 1px 2px rgba(255,255,255,.65);
}
body.lead-gen-home .trust-strip > div,
body.lead-gen-home .trust-signal-card,
body.lead-gen-home .metric-card,
body.lead-gen-home .service-card,
body.lead-gen-home .conversion-step-card,
body.lead-gen-home .package-card,
body.lead-gen-home .proof-point-card,
body.lead-gen-home .faq-item,
body.lead-gen-home .market-pill-grid span {
  background:rgba(255,255,255,.05);
  border-color:rgba(255,255,255,.45);
  box-shadow:0 16px 42px rgba(0,0,0,.06);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
body.lead-gen-home .trust-strip > div:hover,
body.lead-gen-home .trust-signal-card:hover,
body.lead-gen-home .metric-card:hover,
body.lead-gen-home .service-card:hover,
body.lead-gen-home .conversion-step-card:hover,
body.lead-gen-home .package-card:hover,
body.lead-gen-home .proof-point-card:hover {
  box-shadow:0 24px 58px rgba(0,0,0,.12);
  border-color:rgba(255,255,255,.72);
}
body.lead-gen-home .trust-signal-card span,
body.lead-gen-home .trust-signal-card cite,
body.lead-gen-home .conversion-step-card > span,
body.lead-gen-home .package-card > span:first-child,
body.lead-gen-home .proof-point-card > span,
body.lead-gen-home .package-card p strong,
body.lead-gen-home .service-card a::after,
body.lead-gen-home .faq-item summary::after {
  color:var(--gold-600);
  text-shadow:none;
}

body.lead-gen-home .conversion-step-card > span,
body.lead-gen-home .package-card > span:first-child,
body.lead-gen-home .proof-point-card > span {
  background:rgba(184,138,45,.10);
  border:0;
}
body.lead-gen-home .service-card a,
body.lead-gen-home .text-link {
  color:var(--navy-900)!important;
}
body.lead-gen-home .market-pill-grid span {
  color:var(--navy-800);
}
body.lead-gen-home .home-cinematic-hero .btn-secondary,
body.lead-gen-home .final-cta-card .btn-light,
body.lead-gen-home .btn-ghost {
  color:var(--ink)!important;
  border-color:rgba(255,255,255,.72);
  background:rgba(255,255,255,.05);
  box-shadow:none;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
body.lead-gen-home .home-cinematic-hero .btn-secondary:hover,
body.lead-gen-home .final-cta-card .btn-light:hover,
body.lead-gen-home .btn-ghost:hover {
  color:var(--ink)!important;
  border-color:rgba(255,255,255,.72);
  background:rgba(255,255,255,.10);
}
body.lead-gen-home .footer-col-links a,
body.lead-gen-home .footer-contact a,
body.lead-gen-home .footer-consult {
  color:rgba(32,43,52,.76)!important;
}

@media (max-width:760px) {
  .site-map-bg-img {
    inset:-10%;
    background-size:100vw auto;
  }
  body.lead-gen-home .hero-copy-shell {
    padding:calc(var(--nav-h) + 28px) 0 40px;
  }
  body.lead-gen-home .home-cinematic-hero h1 {
    font-size:clamp(2.25rem,12vw,3.7rem);
  }
  body.lead-gen-home .section-heading,
  body.lead-gen-home .faq-copy {
    padding:18px;
  }
}

@media print {
  .site-nav,.site-footer,.hero-globe-wrap { display:none; }
  section { padding:20px 0; }
  .reveal,.reveal-on-scroll,.slide-left,.slide-right,.scale-in { opacity:1; transform:none; }
}

/* Compact polish pass */
section { padding:72px 0; }
.section-heading { margin-bottom:34px; gap:4px; }
.section-heading h2 { margin-bottom:6px; }
.page-hero,.services-hero,.blog-hero,.team-page-hero {
  min-height:420px;
  padding:calc(var(--nav-h) + 58px) 0 58px;
}
.services-hero-layout,.blog-hero-grid {
  align-items:center;
  gap:clamp(26px,4vw,44px);
}
.services-hero h1,.page-hero h1 {
  max-width:820px;
  font-size:clamp(2.15rem,4.3vw,4.15rem);
  line-height:1.07;
}
.services-hero .section-lead,.services-hero .hero-lead {
  max-width:720px;
  font-size:clamp(.98rem,1.15vw,1.08rem);
}
.hero-actions { margin-top:22px; }
.services-hero-tags { margin:16px 0 0; }
.services-hero-visual {
  padding:20px;
  border-radius:var(--r);
}
.visual-route-card { padding:14px; }
.service-suite-nav a {
  min-height:96px;
  padding:18px 16px;
}
.service-suite-nav strong { font-size:.88rem; }
.service-suite-nav span { font-size:.74rem; }
.service-proof-strip { padding:24px 0; }
.service-proof-card { padding:20px; }
.detailed-service-grid,.problem-grid,.audience-grid,.proof-point-grid,.resource-card-grid {
  gap:14px;
}
.detailed-service-card,.problem-item,.audience-grid article,.case-proof-list article,.process-step {
  border-radius:var(--r);
  padding:22px;
}
.process-layout,.audience-layout,.resource-category-layout,.case-proof-grid {
  gap:38px;
}
.service-output-strip .container {
  border-radius:var(--r);
}
.service-output-strip article { padding:22px 20px; }
.service-decision-grid { gap:32px; }
.service-decision-list article { border-radius:var(--r); padding:20px; }
.final-cta-section { padding:54px 0; }
.final-cta-card {
  border-radius:18px;
  padding:clamp(28px,4vw,42px);
  align-items:center;
  gap:28px;
}
.final-cta-card::before {
  width:240px;
  height:240px;
  right:-70px;
  top:-90px;
}
.final-cta-copy {
  flex:1 1 520px;
}
.final-cta-copy h2 {
  max-width:760px;
  font-size:clamp(1.8rem,3.1vw,2.85rem);
  line-height:1.08;
}
.final-cta-copy p:not(.eyebrow) {
  max-width:700px;
  font-size:1rem;
  line-height:1.6;
}
.final-cta-actions {
  align-items:center;
  justify-content:flex-start;
}
.business-expansion-section {
  background:var(--ivory);
  color:var(--ink);
}
.business-expansion-section::before {
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:260px;
  background:linear-gradient(180deg,rgba(7,27,50,.08),rgba(7,27,50,0));
  pointer-events:none;
}
.business-expansion-layout {
  grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);
  gap:32px;
}
.business-expansion-copy {
  position:static;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--r);
  padding:clamp(24px,3vw,34px);
  box-shadow:var(--shadow-sm);
}
.business-expansion-copy h2 {
  color:var(--navy-900);
  font-size:clamp(1.65rem,2.6vw,2.5rem);
}
.business-expansion-copy p { color:var(--body); }
.business-expansion-copy .text-link { color:var(--navy-900); }
.service-menu-panel-dark {
  background:var(--white);
  border-color:var(--border);
  box-shadow:var(--shadow-sm);
}
.service-menu-panel-dark h3 { color:var(--navy-900); }
.service-menu-panel-dark p { color:var(--body); }
.service-menu-panel-dark .service-path-tags a {
  background:var(--ivory);
  border-color:var(--border-md);
  color:var(--navy-800);
}
.single-service-flow-dark .service-flow-step,
.business-expansion-grid article {
  background:var(--white);
  border-color:var(--border);
  box-shadow:var(--shadow-sm);
}

.business-expansion-grid h3 { color:var(--navy-900); }
.single-service-flow-dark .service-flow-step p,
.business-expansion-grid p { color:var(--body); }
.business-expansion-grid p strong { color:var(--gold-600); }
.business-expansion-grid article {
  border-radius:var(--r);
  position:relative;
  overflow:hidden;
}
.business-expansion-grid article::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--gold-500);
}
.business-expansion-grid h3 {
  font-size:.98rem;
}
.cs-trust-section,.problem-section,.trading-service-section,.audience-section,.process-section,.resource-category-section,.faq-section {
  padding:68px 0;
}

@media (max-width:980px) {
  section { padding:60px 0; }
  .page-hero,.services-hero,.blog-hero,.team-page-hero {
    min-height:380px;
    padding:calc(var(--nav-h) + 48px) 0 48px;
  }
  .business-expansion-layout { grid-template-columns:1fr; }
}

@media (max-width:640px) {
  section { padding:46px 0; }
  .page-hero,.services-hero,.blog-hero,.team-page-hero {
    min-height:auto;
    padding:calc(var(--nav-h) + 40px) 0 42px;
  }
  .services-hero h1,.page-hero h1 {
    font-size:2.05rem;
  }
  .final-cta-section { padding:40px 0; }
  .final-cta-card { padding:26px 22px; }
  .final-cta-copy h2 { font-size:1.82rem; }
}

/* Image 1 service header and Image 3 business expansion refinements */
:root {
  --service-header-bg: url('/ezewag-website-assets/images/hero-services.webp'), url('/ezewag-website-assets/images/ezewag-og-image-optimized.jpg');
}

.page-hero.reveal-on-scroll,
.services-hero.reveal-on-scroll,
.blog-hero.reveal-on-scroll,
.team-page-hero.reveal-on-scroll {
  opacity:1 !important;
  transform:none !important;
}

body:has(.service-suite-nav) .site-nav:not(.is-scrolled),
body:has(.hero-photo-services) .site-nav:not(.is-scrolled),
body:has(.hero-photo-market-research) .site-nav:not(.is-scrolled),
body:has(.hero-photo-buyer-development) .site-nav:not(.is-scrolled),
body:has(.hero-photo-documentation) .site-nav:not(.is-scrolled),
body:has(.hero-photo-pricing) .site-nav:not(.is-scrolled),
body:has(.hero-photo-market-entry) .site-nav:not(.is-scrolled),
body:has(.hero-photo-india) .site-nav:not(.is-scrolled),
body:has(.hero-photo-coimbatore) .site-nav:not(.is-scrolled) {
  min-height:102px;
  color:var(--white);
  background:rgba(5,20,38,.72);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:none;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

body:has(.service-suite-nav) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-services) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-market-research) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-buyer-development) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-documentation) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-pricing) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-market-entry) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-india) .site-nav:not(.is-scrolled) .site-logo-img,
body:has(.hero-photo-coimbatore) .site-nav:not(.is-scrolled) .site-logo-img {
  height:58px;
  max-width:210px;
}

body:has(.service-suite-nav) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-services) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-market-research) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-buyer-development) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-documentation) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-pricing) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-market-entry) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-india) .nav-links > li.has-menu > a[href="/services.html"],
body:has(.hero-photo-coimbatore) .nav-links > li.has-menu > a[href="/services.html"] {
  position:relative;
}

body:has(.service-suite-nav) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-services) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-market-research) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-buyer-development) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-documentation) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-pricing) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-market-entry) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-india) .nav-links > li.has-menu > a[href="/services.html"]::after,
body:has(.hero-photo-coimbatore) .nav-links > li.has-menu > a[href="/services.html"]::after {
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  bottom:3px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,var(--gold-500),transparent);
}

body:has(.service-suite-nav) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-services) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-market-research) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-buyer-development) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-documentation) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-pricing) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-market-entry) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-india) .site-nav:not(.is-scrolled) .nav-cta,
body:has(.hero-photo-coimbatore) .site-nav:not(.is-scrolled) .nav-cta {
  min-height:54px;
  padding:0 28px;
  border-radius:8px;
  background:linear-gradient(180deg,#f1ca7b,#d0a047);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 12px 34px rgba(0,0,0,.22);
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) {
  display:block !important;
  min-height:650px;
  padding:calc(var(--nav-h) + 104px) 0 74px;
  background:var(--navy-950);
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore)::before {
  background-image:
    linear-gradient(90deg,rgba(5,20,38,.96) 0%,rgba(5,20,38,.82) 36%,rgba(5,20,38,.42) 70%,rgba(5,20,38,.72) 100%),
    linear-gradient(180deg,rgba(5,20,38,.16),rgba(5,20,38,.72)),
    var(--service-header-bg);
  background-position:center;
  background-size:cover;
  transform:none;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore)::after {
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 70% 40%,rgba(208,169,79,.16),transparent 26%),
    linear-gradient(180deg,transparent 72%,rgba(5,20,38,.42));
  pointer-events:none;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-layout {
  grid-template-columns:minmax(0,1.04fr) minmax(360px,.78fr);
  gap:clamp(48px,6vw,92px);
  align-items:center;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .eyebrow {
  color:var(--gold-500);
  font-size:.82rem;
  letter-spacing:.28em;
  margin-bottom:22px;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) h1 {
  max-width:760px;
  font-size:clamp(3rem,4.9vw,5.55rem);
  line-height:1.08;
  letter-spacing:-.035em;
  text-shadow:0 18px 44px rgba(0,0,0,.32);
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .section-lead {
  max-width:760px;
  color:rgba(255,255,255,.78);
  font-size:1.02rem;
  line-height:1.68;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-tags span {
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:0 14px;
  border-color:rgba(255,255,255,.28);
  background:rgba(6,24,45,.42);
  color:rgba(255,255,255,.9);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.services-hero-tags span::before {
  content:"";
  color:var(--gold-500);
  font-size:1rem;
  line-height:1;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .hero-actions .btn {
  min-height:52px;
  min-width:220px;
  border-radius:8px;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .hero-actions .btn-secondary {
  border-radius:999px;
  background:rgba(6,24,45,.26);
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-visual {
  align-self:center;
  padding:26px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:18px;
  background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.055));
  box-shadow:0 30px 90px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.16);
  backdrop-filter:blur(18px) saturate(1.25);
  -webkit-backdrop-filter:blur(18px) saturate(1.25);
}

.services-hero-visual .visual-node {
  width:42px;
  min-width:42px;
  height:42px;
  margin:0 8px 18px 0;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.08);
  color:var(--white);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}

.services-hero-visual .visual-node:first-child {
  background:linear-gradient(180deg,#f0c46f,#d0a047);
  color:var(--navy-950);
}

.services-hero-visual .visual-route-card {
  display:grid;
  grid-template-columns:74px minmax(0,1fr);
  grid-auto-rows:auto;
  column-gap:18px;
  align-items:center;
  margin-bottom:16px;
  padding:24px 24px 24px 18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(255,255,255,.055);
}

.services-hero-visual .visual-route-card::before {
  content:"";
  grid-row:1 / span 3;
  display:grid;
  place-items:center;
  width:64px;
  height:64px;
  border-radius:999px;
  color:var(--gold-500);
  font-size:1.55rem;
  border:1px solid rgba(255,255,255,.18);
  background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.18),rgba(255,255,255,.04));
  box-shadow:0 14px 34px rgba(0,0,0,.22);
}

.services-hero-visual .visual-route-card:nth-of-type(4)::before {
  content:"->";
}

.services-hero-visual .visual-route-card span,
.services-hero-visual .visual-route-card strong,
.services-hero-visual .visual-route-card small {
  grid-column:2;
}

.services-hero-visual .visual-route-card span {
  color:var(--gold-500);
  letter-spacing:.24em;
  font-size:.68rem;
}

.services-hero-visual .visual-route-card strong {
  font-size:1.02rem;
  line-height:1.35;
}

.services-hero-visual .visual-route-card small {
  color:rgba(255,255,255,.72);
  font-size:.88rem;
}

.service-suite-nav {
  padding:28px 0;
  background:var(--white);
  border-bottom:1px solid var(--border);
}

.service-suite-nav .container {
  width:min(1540px,100% - 64px);
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  border-left:0;
}

.service-suite-nav a {
  position:relative;
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 16px;
  gap:14px;
  align-items:center;
  min-height:126px;
  padding:20px 18px;
  border:1px solid var(--border-md);
  border-radius:10px;
  background:var(--white);
  box-shadow:0 9px 24px rgba(7,27,50,.07);
}

.service-suite-nav a::before {
  content:"📊";
  display:grid;
  place-items:center;
  width:54px;
  height:54px;
  border-radius:999px;
  background:#fbf2df;
  color:var(--navy-900);
  font-size:1.55rem;
}

.service-suite-nav a:nth-child(2)::before { content:"🌐"; }
.service-suite-nav a:nth-child(3)::before { content:"📋"; }
.service-suite-nav a:nth-child(4)::before { content:"⚖️"; }
.service-suite-nav a:nth-child(5)::before { content:"🗺️"; }
.service-suite-nav a:nth-child(6)::before { content:"☰"; }

.service-suite-nav a::after {
  content:"->";
  color:var(--gold-600);
  font-size:1.15rem;
}

.service-suite-nav strong,
.service-suite-nav span {
  grid-column:2;
}

.service-suite-nav strong {
  font-size:.98rem;
  line-height:1.2;
}

.service-suite-nav span {
  font-size:.8rem;
  line-height:1.45;
}

.service-suite-nav a:hover,
.service-suite-nav a.is-active {
  background:#fffdf8;
  transform:translateY(-4px);
  border-color:rgba(208,169,79,.42);
  box-shadow:0 18px 38px rgba(7,27,50,.10);
}

.business-expansion-section {
  padding:78px 0 88px;
  background:
    radial-gradient(circle at 8% 8%,rgba(208,169,79,.09),transparent 30%),
    linear-gradient(180deg,#faf7f0 0%,#f7f4ed 100%);
  color:var(--ink);
}

.business-expansion-section::before {
  content:none;
}

.business-expansion-layout {
  display:grid;
  grid-template-columns:minmax(280px,.54fr) minmax(0,1fr);
  gap:32px;
  align-items:start;
}

.business-expansion-section .business-expansion-main {
  display:contents;
}

.business-expansion-copy {
  grid-column:1;
  grid-row:1;
  position:relative;
  min-height:410px;
  padding:44px 42px;
  background:var(--white);
  border:1px solid rgba(11,39,72,.08);
  border-radius:14px;
  box-shadow:0 20px 55px rgba(7,27,50,.10);
}

.business-expansion-copy .eyebrow {
  position:relative;
  color:var(--gold-600);
  margin-bottom:22px;
}

.business-expansion-copy .eyebrow::after,
.business-expansion-copy h2::after {
  content:"";
  display:block;
  width:58px;
  height:2px;
  margin-top:14px;
  background:var(--gold-500);
}

.business-expansion-copy h2 {
  max-width:360px;
  color:var(--navy-950);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(2rem,3vw,3.05rem);
  line-height:1.03;
  letter-spacing:-.035em;
}

.business-expansion-copy p {
  color:#172537;
  font-size:.96rem;
  line-height:1.78;
  margin-top:26px;
}

.business-expansion-copy .text-link {
  margin-top:28px;
  border-bottom:0;
  color:var(--navy-950);
  font-size:1.05rem;
}

.business-expansion-copy .text-link::after {
  content:"->";
  color:var(--gold-600);
  font-size:1.9rem;
  line-height:1;
}

.business-expansion-section .service-menu-panel-dark {
  grid-column:2;
  grid-row:1;
  min-height:410px;
  margin:0;
  padding:54px 46px;
  grid-template-columns:minmax(0,.78fr) minmax(360px,1fr);
  gap:42px;
  align-items:center;
  background:
    radial-gradient(circle at 82% 20%,rgba(56,122,166,.24),transparent 36%),
    linear-gradient(135deg,#071b32 0%,#08213d 56%,#0b2748 100%);
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  box-shadow:0 22px 58px rgba(7,27,50,.18);
}

.business-expansion-section .service-menu-panel-dark .eyebrow {
  color:var(--gold-400);
}

.business-expansion-section .service-menu-panel-dark .eyebrow::after {
  content:"";
  display:block;
  width:36px;
  height:2px;
  margin-top:14px;
  background:var(--gold-500);
}

.business-expansion-section .service-menu-panel-dark h3 {
  max-width:330px;
  color:var(--white);
  font-size:clamp(1.65rem,2.35vw,2.3rem);
  line-height:1.08;
}

.business-expansion-section .service-menu-panel-dark p {
  max-width:330px;
  color:rgba(255,255,255,.82);
  line-height:1.75;
  font-size:.98rem;
}

.business-expansion-section .service-path-tags {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}

.business-expansion-section .service-path-tags a {
  min-height:58px;
  justify-content:flex-start;
  display:flex;
  align-items:center;
  gap:10px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(240,196,111,.72);
  background:rgba(255,255,255,.035);
  color:var(--white);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}

.business-expansion-section .service-path-tags a::before {
  content:"";
  color:var(--gold-500);
  font-size:1.25rem;
}

.business-expansion-section .service-path-tags a:nth-child(2)::before { content:""; }
.business-expansion-section .service-path-tags a:nth-child(3)::before { content:"->"; }
.business-expansion-section .service-path-tags a:nth-child(4)::before { content:""; }
.business-expansion-section .service-path-tags a:nth-child(5)::before { content:""; }
.business-expansion-section .service-path-tags a:nth-child(6)::before { content:""; }

.consulting-section-label {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:24px;
  margin:46px 0 0;
  color:var(--gold-600);
  font-weight:800;
  font-size:.9rem;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.consulting-section-label::before,
.consulting-section-label::after {
  content:"";
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-500));
}

.consulting-section-label::after {
  background:linear-gradient(90deg,var(--gold-500),transparent);
}

.business-expansion-section .single-service-flow-dark {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:38px;
  margin:28px 16px 8px;
}

.business-expansion-section .single-service-flow-dark .service-flow-step {
  position:relative;
  min-height:288px;
  padding:30px 24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  background:var(--white);
  border:1px solid rgba(11,39,72,.08);
  border-radius:6px;
  box-shadow:0 12px 28px rgba(7,27,50,.10);
}

.business-expansion-section .single-service-flow-dark .service-flow-step:not(:last-child)::after {
  content:">";
  position:absolute;
  right:-28px;
  top:50%;
  transform:translateY(-50%);
  color:var(--gold-600);
  font-size:3rem;
  line-height:1;
}

.business-expansion-section .single-service-flow-dark .service-flow-step strong {
  width:34px;
  height:34px;
  margin:0 0 26px;
  background:linear-gradient(180deg,#f2ca75,#d4a64c);
  color:var(--navy-950);
  font-weight:800;
}

.business-expansion-section .single-service-flow-dark .service-flow-step::before {
  content:"";
  order:2;
  color:var(--navy-950);
  font-size:3rem;
  line-height:1;
  margin-bottom:22px;
}

.business-expansion-section .single-service-flow-dark .service-flow-step:nth-child(2)::before { content:""; }
.business-expansion-section .single-service-flow-dark .service-flow-step:nth-child(3)::before { content:""; }
.business-expansion-section .single-service-flow-dark .service-flow-step:nth-child(4)::before { content:""; }
.business-expansion-section .single-service-flow-dark .service-flow-step:nth-child(5)::before { content:""; }

.business-expansion-section .single-service-flow-dark .service-flow-step p {
  order:4;
  color:#263647;
  font-size:.96rem;
  line-height:1.7;
}

.consulting-areas-label {
  margin-top:44px;
}

.business-expansion-section .business-expansion-grid {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:28px;
}

.business-expansion-section .business-expansion-grid article {
  position:relative;
  min-height:250px;
  padding:40px 30px 30px;
  background:var(--white);
  border:1px solid rgba(11,39,72,.08);
  border-radius:6px;
  box-shadow:0 12px 28px rgba(7,27,50,.08);
}

.business-expansion-section .business-expansion-grid article::before {
  content:"";
  position:static;
  display:grid;
  place-items:center;
  width:56px;
  height:56px;
  margin-bottom:20px;
  border-radius:999px;
  background:#fbf2df;
  color:var(--gold-600);
  font-size:1.55rem;
}

.business-expansion-section .business-expansion-grid article:nth-child(2)::before { content:""; }
.business-expansion-section .business-expansion-grid article:nth-child(3)::before { content:"->"; }
.business-expansion-section .business-expansion-grid article:nth-child(4)::before { content:""; }
.business-expansion-section .business-expansion-grid article:nth-child(5)::before { content:""; }
.business-expansion-section .business-expansion-grid article:nth-child(6)::before { content:""; }

.business-expansion-section .business-expansion-grid h3 {
  max-width:310px;
  color:var(--navy-950);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.45rem;
  line-height:1.08;
  margin-bottom:24px;
}

.business-expansion-section .business-expansion-grid p {
  color:#1e2e40;
  font-size:.98rem;
  line-height:1.75;
  margin-bottom:18px;
}

.business-expansion-section .business-expansion-grid p strong {
  color:var(--gold-600);
}

@media (max-width:1180px) {
  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-layout {
    grid-template-columns:1fr;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-visual {
    max-width:620px;
  }

  .service-suite-nav .container {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .business-expansion-layout {
    grid-template-columns:1fr;
  }

  .business-expansion-copy,
  .business-expansion-section .service-menu-panel-dark {
    grid-column:1;
  }

  .business-expansion-section .service-menu-panel-dark {
    grid-row:auto;
  }

  .business-expansion-section .single-service-flow-dark {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .business-expansion-section .single-service-flow-dark .service-flow-step::after {
    content:none !important;
  }
}

@media (max-width:760px) {
  body:has(.service-suite-nav) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-services) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-market-research) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-buyer-development) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-documentation) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-pricing) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-market-entry) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-india) .site-nav:not(.is-scrolled),
  body:has(.hero-photo-coimbatore) .site-nav:not(.is-scrolled) {
    min-height:74px;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) {
    min-height:auto;
    padding:calc(var(--nav-h) + 58px) 0 46px;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) h1 {
    font-size:2.35rem;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-visual {
    display:none;
  }

  .service-suite-nav {
    padding:18px 0;
  }

  .service-suite-nav .container {
    width:min(100% - 32px, var(--max));
    grid-template-columns:1fr;
  }

  .business-expansion-section {
    padding:52px 0;
  }

  .business-expansion-copy,
  .business-expansion-section .service-menu-panel-dark {
    min-height:auto;
    padding:30px 24px;
  }

  .business-expansion-section .service-menu-panel-dark {
    grid-template-columns:1fr;
  }

  .business-expansion-section .service-path-tags {
    grid-template-columns:1fr;
  }

  .consulting-section-label {
    grid-template-columns:1fr;
    text-align:center;
    gap:12px;
  }

  .consulting-section-label::before,
  .consulting-section-label::after {
    width:100%;
  }

  .business-expansion-section .single-service-flow-dark,
  .business-expansion-section .business-expansion-grid {
    grid-template-columns:1fr;
    margin-inline:0;
  }
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-layout > div:first-child {
  justify-self:start;
  width:100%;
  max-width:760px;
  text-align:left !important;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) h1 {
  width:100%;
  max-width:700px;
  text-align:left !important;
  font-weight:700;
  font-size:clamp(3rem,3.85vw,4.35rem);
  line-height:1.08;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .section-lead,
.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .services-hero-tags,
.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .hero-actions {
  max-width:720px;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout {
  display:flex !important;
  width:calc(100vw - 128px) !important;
  max-width:1460px !important;
  margin-inline:auto !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(48px,5vw,92px) !important;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout > div:first-child {
  flex:0 1 760px !important;
  max-width:760px !important;
  margin:0 !important;
  text-align:left !important;
}

.services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout > .services-hero-visual {
  flex:0 0 520px !important;
  width:520px !important;
  max-width:520px !important;
}

@media (max-width:1180px) {
  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout {
    width:calc(100% - 48px);
    max-width:var(--max);
    display:grid !important;
    grid-template-columns:1fr;
    justify-content:start;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout > .services-hero-visual {
    width:100% !important;
    max-width:620px !important;
  }
}

@media (max-width:760px) {
  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) .container.services-hero-layout {
    width:100%;
    padding-inline:20px;
  }

  .services-hero:is(.hero-photo-services,.hero-photo-market-research,.hero-photo-buyer-development,.hero-photo-documentation,.hero-photo-pricing,.hero-photo-market-entry,.hero-photo-india,.hero-photo-coimbatore) h1 {
    font-size:2.35rem;
  }
}

/* Direct service-hero alignment for all service pages */
.services-hero .container.services-hero-layout {
  display:flex !important;
  position:relative;
  z-index:1;
  width:calc(100vw - 128px) !important;
  max-width:1460px !important;
  margin-inline:auto !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(48px,5vw,92px) !important;
}

.services-hero .hero-orb-1,
.services-hero .hero-orb-2 {
  position:absolute !important;
  z-index:0 !important;
}

.services-hero .container.services-hero-layout > :first-child {
  flex:0 1 760px !important;
  width:100% !important;
  max-width:760px !important;
  margin:0 !important;
  text-align:left !important;
}

.services-hero .container.services-hero-layout h1,
.services-hero .container.services-hero-layout .eyebrow,
.services-hero .container.services-hero-layout .section-lead,
.services-hero .container.services-hero-layout .services-hero-tags,
.services-hero .container.services-hero-layout .hero-actions {
  text-align:left !important;
  margin-left:0 !important;
  margin-right:auto !important;
}

.services-hero .container.services-hero-layout h1 {
  width:100% !important;
  max-width:700px !important;
  font-size:clamp(3rem,3.8vw,4.3rem) !important;
  line-height:1.08 !important;
}

.services-hero .container.services-hero-layout .section-lead {
  max-width:720px !important;
}

.services-hero .container.services-hero-layout > .services-hero-visual {
  flex:0 0 520px !important;
  width:520px !important;
  max-width:520px !important;
}

.business-expansion-section.reveal-on-scroll,
.business-expansion-section .reveal {
  opacity:1 !important;
  transform:none !important;
}

@media (min-width:901px) {
  .business-expansion-layout {
    display:grid !important;
    width:calc(100vw - 16px) !important;
    max-width:1180px !important;
    margin-inline:auto !important;
    grid-template-columns:360px minmax(0,1fr) !important;
    gap:24px !important;
    align-items:start !important;
  }

  .business-expansion-copy {
    grid-column:1 !important;
    grid-row:1 !important;
    top:0 !important;
    min-height:410px !important;
    padding:34px 30px !important;
  }

  .business-expansion-copy h2 {
    max-width:320px !important;
    font-size:1.68rem !important;
    line-height:1.08 !important;
  }

  .business-expansion-copy p {
    font-size:.82rem !important;
    line-height:1.56 !important;
    margin-top:20px !important;
  }

  .business-expansion-copy .text-link {
    margin-top:22px !important;
    font-size:.98rem !important;
  }

  .business-expansion-section .business-expansion-main {
    grid-column:2 !important;
    grid-row:1 !important;
  }

  .business-expansion-section .service-menu-panel-dark {
    grid-column:2 !important;
    grid-row:1 !important;
    min-height:410px !important;
    padding:46px 25px !important;
    grid-template-columns:220px minmax(300px,1fr) !important;
    gap:24px !important;
  }

  .business-expansion-section .single-service-flow-dark {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:30px !important;
  }

  .business-expansion-section .single-service-flow-dark .service-flow-step {
    min-height:300px !important;
    padding:28px 18px !important;
  }

  .business-expansion-section .single-service-flow-dark .service-flow-step p {
    font-size:.88rem !important;
    line-height:1.58 !important;
  }

  .business-expansion-section .single-service-flow-dark .service-flow-step::after {
    content:"\203A" !important;
  }

  .business-expansion-section .single-service-flow-dark .service-flow-step:last-child::after {
    content:none !important;
  }
}

@media (max-width:1180px) {
  .services-hero .container.services-hero-layout {
    display:grid !important;
    width:calc(100% - 48px) !important;
    max-width:var(--max) !important;
    grid-template-columns:1fr !important;
  }

  .services-hero .container.services-hero-layout > .services-hero-visual {
    width:100% !important;
    max-width:620px !important;
  }
}

@media (max-width:760px) {
  .services-hero .container.services-hero-layout {
    width:100% !important;
    padding-inline:20px !important;
  }

  .services-hero .container.services-hero-layout h1 {
    font-size:2.35rem !important;
  }
}

/* Global home-style navigation */
.site-nav,
.site-nav.is-scrolled,
body:not(.lead-gen-home) .site-nav {
  min-height:92px !important;
  color:var(--white) !important;
  background:
    linear-gradient(180deg,rgba(5,20,38,.92) 0%,rgba(5,20,38,.64) 100%) !important;
  border-bottom:1px solid rgba(255,255,255,.14) !important;
  box-shadow:none !important;
  backdrop-filter:blur(14px) saturate(1.2) !important;
  -webkit-backdrop-filter:blur(14px) saturate(1.2) !important;
  transform:translateY(0);
  transition:
    transform .28s var(--ease),
    min-height .28s var(--ease),
    background .28s var(--ease),
    border-color .28s var(--ease) !important;
}

.site-nav.is-hidden {
  transform:translateY(-110%) !important;
  pointer-events:none;
}

.site-nav:focus-within {
  transform:translateY(0) !important;
  pointer-events:auto;
}

.site-nav .site-logo-img,
.site-nav.is-scrolled .site-logo-img,
body:not(.lead-gen-home) .site-logo-img {
  height:52px !important;
  max-width:190px;
}

.site-nav .nav-cta,
.site-nav.is-scrolled .nav-cta,
body:not(.lead-gen-home) .site-nav .nav-cta {
  min-height:54px !important;
  padding:0 28px !important;
  border-radius:999px !important;
  color:var(--navy-950) !important;
  background:linear-gradient(180deg,#f1ca7b,#d0a047) !important;
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:0 12px 34px rgba(0,0,0,.18) !important;
}

@media (min-width:981px) {
  .site-nav .nav-links > li > a,
  .site-nav.is-scrolled .nav-links > li > a,
  body:not(.lead-gen-home) .site-nav .nav-links > li > a {
    color:var(--white) !important;
    background:transparent !important;
    position:relative;
  }

  .site-nav .nav-links > li > a:hover {
    color:var(--white) !important;
    background:rgba(255,255,255,.10) !important;
  }

  .site-nav .nav-links > li > a[aria-current="page"]::after,
  .site-nav .nav-links > li.has-menu > a.is-active-parent::after {
    content:"";
    position:absolute;
    left:18px;
    right:18px;
    bottom:2px;
    height:2px;
    border-radius:999px;
    background:linear-gradient(90deg,transparent,var(--gold-500),transparent);
  }
}

.site-nav .nav-dropdown {
  border-color:rgba(208,169,79,.22);
}

.site-nav .nav-dropdown a[aria-current="page"],
.site-nav .nav-dropdown a:hover {
  background:rgba(208,169,79,.10);
}

.site-nav .nav-dropdown a[aria-current="page"] span,
.site-nav .nav-dropdown a:hover span {
  color:var(--gold-600);
}

.site-nav .nav-dropdown a[aria-current="page"] small {
  color:var(--navy-900);
}

body.lead-gen-home .site-nav,
body.lead-gen-home .site-nav.is-scrolled {
  color:var(--ink) !important;
  background:transparent !important;
  border-bottom-color:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (min-width:981px) {
  body.lead-gen-home .site-nav .nav-links > li > a,
  body.lead-gen-home .site-nav.is-scrolled .nav-links > li > a {
    color:var(--ink) !important;
    font-size:15px !important;
    font-weight:800 !important;
    text-shadow:0 1px 2px rgba(255,255,255,.65);
  }

  body.lead-gen-home .site-nav .nav-links > li > a:hover {
    color:var(--ink) !important;
    background:rgba(255,255,255,.16) !important;
  }

  body.lead-gen-home .site-nav .nav-cta,
  body.lead-gen-home .site-nav.is-scrolled .nav-cta {
    color:var(--navy-950) !important;
    background:linear-gradient(180deg,#f1ca7b,#d0a047) !important;
    border-color:rgba(255,255,255,.18) !important;
    font-size:14.5px !important;
    font-weight:800 !important;
    text-shadow:none;
  }
}

@media (max-width:980px) {
  .site-nav,
  .site-nav.is-scrolled,
  body:not(.lead-gen-home) .site-nav {
    min-height:74px !important;
  }

  .site-nav .site-logo-img,
  .site-nav.is-scrolled .site-logo-img,
  body:not(.lead-gen-home) .site-logo-img {
    height:42px !important;
  }

  .site-nav .site-menu-toggle,
  .site-nav.is-scrolled .site-menu-toggle,
  body:not(.lead-gen-home) .site-menu-toggle {
    color:var(--white);
    border-color:rgba(255,255,255,.35);
    background:rgba(255,255,255,.08);
  }

  .site-nav .nav-links {
    color:var(--white);
  }

  .site-nav .nav-links > li > a {
    color:var(--white) !important;
  }

  .site-nav .nav-dropdown small,
  .site-nav .nav-dropdown a[aria-current="page"] small {
    color:rgba(255,255,255,.68) !important;
  }
}

/* Global page rhythm and CTA spacing */
main > section:not(.page-hero):not(.services-hero):not(.service-suite-nav):not(.service-proof-strip) {
  padding-top:clamp(76px,7vw,104px);
  padding-bottom:clamp(76px,7vw,104px);
}

.section-heading {
  gap:14px !important;
  margin-bottom:clamp(44px,5vw,64px) !important;
}

.section-heading > * {
  margin-bottom:0 !important;
}

.section-heading .section-lead {
  margin-top:2px;
}

.final-cta-section {
  padding-top:clamp(72px,7vw,96px) !important;
  padding-bottom:clamp(72px,7vw,96px) !important;
}

.final-cta-card {
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center !important;
  gap:clamp(44px,6vw,88px) !important;
  padding:clamp(44px,5vw,64px) !important;
}

.final-cta-copy {
  display:grid;
  gap:clamp(14px,1.7vw,22px);
  min-width:0;
}

.final-cta-copy > * {
  margin:0 !important;
}

.final-cta-copy h2 {
  max-width:720px !important;
  line-height:1.12 !important;
}

.final-cta-copy p:not(.eyebrow) {
  max-width:760px !important;
  line-height:1.72 !important;
}

.final-cta-actions {
  justify-content:flex-end;
  gap:16px !important;
}

@media (max-width:980px) {
  main > section:not(.page-hero):not(.services-hero):not(.service-suite-nav):not(.service-proof-strip) {
    padding-top:64px;
    padding-bottom:64px;
  }

  .final-cta-card {
    grid-template-columns:1fr;
    gap:30px !important;
  }

  .final-cta-actions {
    justify-content:flex-start;
  }
}

@media (max-width:640px) {
  main > section:not(.page-hero):not(.services-hero):not(.service-suite-nav):not(.service-proof-strip) {
    padding-top:52px;
    padding-bottom:52px;
  }

  .final-cta-section {
    padding-top:52px !important;
    padding-bottom:52px !important;
  }

  .final-cta-card {
    padding:30px 22px !important;
  }
}

/* Audit pass: conversion, touch, and mobile stability */
.floating-whatsapp {
  position:fixed;
  right:clamp(16px,3vw,28px);
  bottom:clamp(18px,3vw,28px);
  z-index:120;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:54px;
  padding:0 20px 0 12px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:linear-gradient(180deg,#1f9d61,#147244);
  color:var(--white);
  font-family:var(--font-display);
  font-size:.92rem;
  font-weight:800;
  line-height:1;
  box-shadow:0 18px 44px rgba(8,29,54,.28);
  transform:translateY(0);
  transition:transform .24s var(--ease),box-shadow .24s var(--ease),background .24s var(--ease);
}

.floating-whatsapp:hover,
.floating-whatsapp:focus-visible {
  color:var(--white);
  transform:translateY(-2px);
  box-shadow:0 22px 52px rgba(8,29,54,.34);
}

.floating-whatsapp__icon {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:50%;
  background:rgba(255,255,255,.16);
  color:var(--white);
  font-size:.72rem;
  letter-spacing:.04em;
}

.floating-whatsapp__text {
  white-space:nowrap;
}

a,
button,
input,
select,
textarea {
  touch-action:manipulation;
}

.btn,
button[type="submit"],
.cta-button,
.nav-cta,
.footer-consult,
.team-card-link,
.blog-card-link,
.market-pill-grid a,
.service-suite-nav a {
  min-height:44px;
}

.site-footer a,
.nav-dropdown a {
  min-height:44px;
}

.team-card,
.resource-card,
.blog-card,
.industry-card,
.service-card,
.metric-card,
.final-cta-card {
  min-width:0;
}

@media (max-width:760px) {
  input,
  select,
  textarea {
    font-size:16px;
  }

  .btn,
  button[type="submit"],
  .cta-button,
  .nav-cta {
    width:100%;
    justify-content:center;
  }

  .hero-actions,
  .final-cta-actions {
    width:100%;
  }

  .floating-whatsapp {
    right:16px;
    bottom:16px;
    width:56px;
    min-height:56px;
    padding:0;
  }

  .floating-whatsapp__text {
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }

  .floating-whatsapp__icon {
    width:38px;
    height:38px;
  }
}

/* Mobile nav: light, spacious side panel with focused submenus.
   Note: the fix that neutralises .site-nav's backdrop-filter (which would
   otherwise create a containing block and break this drawer's fixed
   positioning) lives in premium-skin.css, not here — it needs to win a
   specificity tie against a same-weight rule that's defined there. */
@media (max-width:980px) {
  .site-nav #site-navigation.nav-links {
    position:fixed !important;
    top:0 !important;
    right:0 !important;
    bottom:0 !important;
    left:auto !important;
    width:min(360px,88vw) !important;
    max-width:88vw !important;
    max-height:100svh !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:10px !important;
    padding:calc(var(--nav-h) + 26px) 20px 28px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain !important;
    color:var(--navy-900) !important;
    background:var(--ivory) !important;
    border-left:1px solid var(--border) !important;
    border-top:0 !important;
    box-shadow:-24px 0 70px rgba(11,39,72,.18) !important;
    opacity:0 !important;
    pointer-events:none !important;
    transform:translateX(108%) !important;
    transition:opacity .24s var(--ease),transform .24s var(--ease) !important;
  }

  .site-nav #site-navigation.nav-links.is-open {
    opacity:1 !important;
    pointer-events:auto !important;
    transform:translateX(0) !important;
  }

  .site-nav #site-navigation.nav-links > li,
  .site-nav #site-navigation.nav-links > li > a {
    width:100% !important;
  }

  .site-nav #site-navigation.nav-links > li > a {
    min-height:52px !important;
    justify-content:flex-start !important;
    border-radius:12px !important;
    padding:16px !important;
    color:var(--navy-900) !important;
    background:transparent !important;
    font-size:15px !important;
    font-weight:600 !important;
  }

  .site-nav #site-navigation.nav-links > li > a[aria-current="page"],
  .site-nav #site-navigation.nav-links > li.has-menu > a.is-active-parent {
    color:var(--gold-600) !important;
    background:rgba(219,190,122,.22) !important;
  }

  .site-nav #site-navigation.nav-links.has-mobile-submenu > li:not(.is-mobile-expanded) {
    display:none !important;
  }

  .site-nav #site-navigation.nav-links.has-mobile-submenu > li.is-mobile-expanded > a {
    min-height:52px !important;
    color:var(--gold-600) !important;
    background:rgba(219,190,122,.22) !important;
  }

  .site-nav #site-navigation.nav-links.has-mobile-submenu > li.is-mobile-expanded > a::before {
    content:"<";
    margin-right:8px;
    color:var(--gold-600);
    font-size:20px;
    line-height:1;
  }

  .site-nav #site-navigation .nav-dropdown {
    position:static !important;
    display:none !important;
    width:100% !important;
    max-height:none !important;
    margin:4px 0 10px !important;
    padding:6px !important;
    overflow:visible !important;
    transform:none !important;
    opacity:1 !important;
    pointer-events:auto !important;
    border:1px solid var(--border) !important;
    border-radius:14px !important;
    background:var(--white) !important;
    box-shadow:0 4px 18px rgba(11,39,72,.06) !important;
  }

  .site-nav #site-navigation .has-menu.is-mobile-expanded > .nav-dropdown {
    display:block !important;
  }

  .site-nav #site-navigation .nav-dropdown a {
    min-height:46px !important;
    color:var(--navy-900) !important;
    border-radius:10px !important;
    padding:10px 12px !important;
    gap:0 !important;
  }

  .site-nav #site-navigation .nav-dropdown span {
    color:var(--gold-600) !important;
    font-size:13.5px !important;
  }

  .site-nav #site-navigation .nav-dropdown small {
    display:none !important;
  }

  .site-nav #site-navigation .nav-cta {
    justify-content:center !important;
    margin-top:16px !important;
    color:var(--navy-950) !important;
    background:linear-gradient(180deg,#f1ca7b,#d0a047) !important;
  }
}

@media print {
  .floating-whatsapp {
    display:none !important;
  }
}
