/* ============ TOKENS ============ */
:root{
  --bg:#F8F9FD;
  --surface:#FFFFFF;
  --surface-alt:#EEF0FC;
  --surface-deep:#0B0F2B;
  --surface-deep-2:#12173B;
  --ink:#10172A;
  --ink-soft:#525B72;
  --ink-faint:#8991AC;
  --on-deep:#EDEFFA;
  --on-deep-soft:#A7ADCE;
  --primary:#3049F5;
  --primary-dark:#1E2FC7;
  --primary-tint:#E8EAFD;
  --emerald:#0FAE7C;
  --emerald-tint:#DEF6EC;
  --amber:#FF9F1C;
  --amber-tint:#FFF1DC;
  --border:#E4E8F5;
  --border-deep:#252A54;
  --radius-s:12px;
  --radius-m:20px;
  --radius-l:28px;
  --shadow-s:0 6px 16px -8px rgba(16,23,42,.12);
  --shadow-m:0 20px 40px -20px rgba(16,23,42,.22);
  --shadow-l:0 30px 60px -24px rgba(16,23,42,.28);
  --font-head:"Plus Jakarta Sans", sans-serif;
  --font-body:"Plus Jakarta Sans", sans-serif;
  --font-mono:"IBM Plex Mono", monospace;
}

*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important;}
}
body{
  font-family:var(--font-body);
  background:var(--bg);
  color:var(--ink);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img,svg{display:block; max-width:100%;}
a{color:inherit; text-decoration:none;}
ul{list-style:none;}
button{font-family:inherit; cursor:pointer; border:none; background:none;}
.container{
  width:100%;
  max-width:1180px;
  margin:0 auto;
  padding:0 24px;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--primary);
  background:var(--primary-tint);
  padding:7px 16px 7px 12px;
  border-radius:999px;
  white-space:nowrap;
  max-width:100%;
}
@media (max-width:480px){
  .eyebrow{ font-size:10.5px; letter-spacing:.02em; padding:6px 12px 6px 10px; gap:6px; }
}
@media (max-width:360px){
  .eyebrow{ font-size:9.5px; }
}
.eyebrow.on-deep{ color:#B9C3FF; background:rgba(255,255,255,0.07); }
.eyebrow .dot{width:6px; height:6px; border-radius:50%; background:var(--primary);}
.eyebrow.on-deep .dot{background:#7C8CFF;}

h1,h2,h3,h4{
  font-family:var(--font-head);
  color:var(--ink);
  letter-spacing:-0.02em;
  line-height:1.08;
  font-weight:800;
}
h2{ font-size:clamp(28px, 4vw, 42px); }
h3{ font-size:20px; font-weight:700; letter-spacing:-0.01em;}
p{ color:var(--ink-soft); font: inherit; }
.section-tag{
  font-size:13px; font-weight:700; color:var(--ink-faint);
  text-transform:uppercase; letter-spacing:.08em; margin-bottom:14px; display:block;
}
.section-head{ max-width:640px; margin-bottom:48px; }
.section-head p{ margin-top:14px; font-size:17px; }
.section{ padding:96px 0; }
@media (max-width:768px){ .section{ padding:64px 0; } }

/* Buttons — pilled */
.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:15px 28px;
  border-radius:999px;
  font-weight:700;
  font-size:15px;
  white-space:nowrap;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.btn-primary{
  background:var(--primary); color:#fff;
  box-shadow:0 14px 28px -12px rgba(48,73,245,.55);
}
.btn-primary:hover{ background:var(--primary-dark); transform:translateY(-2px); box-shadow:0 18px 34px -12px rgba(48,73,245,.6); }
.btn-ghost{
  background:var(--surface); color:var(--ink); border:1px solid var(--border);
}
.btn-ghost:hover{ transform:translateY(-2px); box-shadow:var(--shadow-s); }
.btn-on-deep{ background:#fff; color:var(--surface-deep); }
.btn-on-deep:hover{ transform:translateY(-2px); background:#EDEFFA; }
.btn-sm{ padding:11px 20px; font-size:14px; }

/* ============ NAV ============ */
header.nav{
  position:sticky; top:0; z-index:100;
  background:rgba(248,249,253,0.85);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.nav-inner{
  display:flex; align-items:center; justify-content:space-between;
  padding:16px 24px; max-width:1180px; margin:0 auto;
}
.logo{ display:flex; align-items:center; gap:10px; font-weight:800; font-size:19px; letter-spacing:-0.02em; }
.logo-mark{
  width:34px; height:34px; border-radius:10px;
  background:linear-gradient(155deg, var(--primary), #6A4CF5);
  display:flex; align-items:center; justify-content:center;
  color:#fff; font-family:var(--font-mono); font-weight:600; font-size:15px;
  box-shadow:0 8px 16px -6px rgba(48,73,245,.5);
}
.nav-links{ display:flex; align-items:center; gap:34px; }
.nav-links a{ font-size:14.5px; font-weight:600; color:var(--ink-soft); transition:color .15s ease; }
.nav-links a:hover{ color:var(--ink); }
.nav-cta{ display:flex; align-items:center; gap:18px; }
.nav-toggle{
  display:none; width:38px; height:38px; position:relative; flex-shrink:0;
  border-radius:10px; transition:background .2s ease;
}
.nav-toggle .bar{
  position:absolute; left:9px; width:20px; height:2px; background:var(--ink); border-radius:2px;
  transition:transform .32s cubic-bezier(.4,0,.2,1), opacity .2s ease, top .32s cubic-bezier(.4,0,.2,1);
}
.nav-toggle .bar:nth-child(1){ top:13px; }
.nav-toggle .bar:nth-child(2){ top:19px; }
.nav-toggle .bar:nth-child(3){ top:25px; }
.nav-toggle.open .bar:nth-child(1){ top:19px; transform:rotate(45deg); }
.nav-toggle.open .bar:nth-child(2){ opacity:0; }
.nav-toggle.open .bar:nth-child(3){ top:19px; transform:rotate(-45deg); }

.nav-overlay{
  position:fixed; inset:0; top:66px; background:rgba(16,23,42,0.32);
  opacity:0; pointer-events:none; transition:opacity .32s ease; z-index:98;
}
.nav-overlay.show{ opacity:1; pointer-events:auto; }

@media (max-width:860px){
  .nav-links{
    position:fixed; top:66px; left:0; bottom:0; width:78%; max-width:320px;
    background:var(--surface);
    flex-direction:column; align-items:flex-start; gap:0;
    padding:14px 28px 32px;
    box-shadow:var(--shadow-l);
    transform:translateX(-100%);
    transition:transform .38s cubic-bezier(.4,0,.2,1);
    z-index:99; overflow-y:auto;
  }
  .nav-links.open{ transform:translateX(0); }
  .nav-links.closing{ transform:translateX(100%); }
  .nav-links a{ width:100%; padding:14px 0; border-bottom:1px solid var(--border); }
  .nav-cta .btn-ghost{ display:none; }
  .nav-toggle{ display:block; }
}

/* ============ HERO ============ */
.hero{ padding:64px 0 40px; }
@media (max-width:640px){ .hero{ padding:28px 0 32px; } }
.hero-grid{
  display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center;
}
@media (max-width:980px){ .hero-grid{ grid-template-columns:1fr; gap:48px; } }

.hero-copy h1{ font-size:clamp(34px, 5.4vw, 56px); margin:20px 0 20px; }
.hero-copy h1 em{ font-style:normal; color:var(--primary); }
.hero-copy p.lead{ font-size:18px; max-width:520px; margin-bottom:32px; }
.hero-actions{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:36px; }
.hero-proof{ display:flex; align-items:center; gap:14px; }
.avatar-stack{ display:flex; }
.avatar-stack span{
  width:34px; height:34px; border-radius:50%; border:2.5px solid var(--bg);
  margin-left:-10px; display:flex; align-items:center; justify-content:center;
  font-family:var(--font-mono); font-size:11px; font-weight:600; color:#fff;
}
.avatar-stack span:first-child{ margin-left:0; }
.hero-proof-text{ font-size:13.5px; color:var(--ink-soft); }
.hero-proof-text strong{ color:var(--ink); }
.hero-proof-text .stars{ color:var(--amber); letter-spacing:1px; }

/* Signature element: live console card */
.console{
  background:var(--surface-deep);
  border-radius:var(--radius-l);
  padding:22px;
  box-shadow:var(--shadow-l);
  position:relative;
  overflow:hidden;
}
.console::before{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,0.06) 1px, transparent 0);
  background-size:22px 22px;
  pointer-events:none;
}
.console-topbar{ display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; position:relative; }
.console-dots{ display:flex; gap:6px; }
.console-dots span{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,0.14); }
.console-label{ font-family:var(--font-mono); font-size:12px; color:var(--on-deep-soft); display:flex; align-items:center; gap:7px; }
.live-dot{ width:7px; height:7px; border-radius:50%; background:var(--emerald); box-shadow:0 0 0 rgba(15,174,124,.6); animation:pulse 2.2s ease-in-out infinite; }
@keyframes pulse{
  0%{ box-shadow:0 0 0 0 rgba(15,174,124,.55); }
  70%{ box-shadow:0 0 0 8px rgba(15,174,124,0); }
  100%{ box-shadow:0 0 0 0 rgba(15,174,124,0); }
}

.console-row{
  background:var(--surface-deep-2);
  border:1px solid var(--border-deep);
  border-radius:16px;
  padding:16px;
  margin-bottom:12px;
  position:relative;
}
.console-row-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.platform-chip{ display:flex; align-items:center; gap:8px; font-weight:700; font-size:13.5px; color:var(--on-deep); }
.platform-ico{ width:22px; height:22px; border-radius:6px; display:flex; align-items:center; justify-content:center; }
.status-pill{
  font-family:var(--font-mono); font-size:11px; font-weight:600; color:var(--emerald);
  background:rgba(15,174,124,.14); padding:4px 10px; border-radius:999px;
}
.console-metrics{ display:grid; grid-template-columns:repeat(3, 1fr); gap:10px; margin-bottom:14px; }
.metric{ }
.metric-label{ font-size:10.5px; color:var(--on-deep-soft); text-transform:uppercase; letter-spacing:.06em; margin-bottom:4px; }
.metric-value{ font-family:var(--font-mono); font-size:16px; font-weight:600; color:var(--on-deep); }
.metric-value.up{ color:var(--emerald); }
.spark{ display:flex; align-items:flex-end; gap:3px; height:28px; }
.spark i{
  flex:1; background:linear-gradient(180deg, #6A7CFF, var(--primary)); border-radius:3px 3px 1px 1px;
  transform-origin:bottom; animation:grow .8s ease forwards; opacity:0;
}
@keyframes grow{ from{ transform:scaleY(0); opacity:0; } to{ transform:scaleY(1); opacity:1; } }

.console-footnote{
  display:flex; align-items:center; gap:8px; font-family:var(--font-mono); font-size:11px; color:var(--on-deep-soft);
  padding-top:12px; position:relative;
}

/* ============ TRUST STRIP ============ */
.trust-strip{ padding:44px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.trust-strip .container{
  display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap;
}
.trust-item{ display:flex; align-items:center; gap:12px; }
.trust-item .num{ font-family:var(--font-mono); font-size:26px; font-weight:600; color:var(--ink); }
.trust-item .label{ font-size:13px; color:var(--ink-faint); max-width:110px; line-height:1.3; }
.badge-pair{ display:flex; gap:10px; align-items:center; }
.cert-badge{
  display:flex; align-items:center; gap:8px; padding:9px 14px; border:1px solid var(--border);
  border-radius:999px; font-size:13px; font-weight:600; color:var(--ink-soft); background:var(--surface);
}

/* ============ SERVICES ============ */
.services-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
@media (max-width:860px){ .services-grid{ grid-template-columns:1fr; } }
.service-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-l);
  padding:36px; box-shadow:var(--shadow-s); transition:transform .2s ease, box-shadow .2s ease;
}
.service-card:hover{ transform:translateY(-4px); box-shadow:var(--shadow-m); }
.service-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:22px; }
.service-icon{ width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center; }
.service-icon.google{ background:var(--primary-tint); }
.service-icon.meta{ background:var(--emerald-tint); }
.service-card h3{ font-size:23px; margin-bottom:10px; }
.service-card > p{ margin-bottom:22px; font-size:15px; }
.service-list{ display:grid; grid-template-columns:1fr 1fr; gap:10px 16px; }
.service-list li{ display:flex; align-items:center; gap:9px; font-size:14px; color:var(--ink-soft); font-weight:500; }
.service-list li svg{ flex-shrink:0; }

/* ============ AI ENGINE (deep section) ============ */
.ai-section{ background:var(--surface-deep); color:var(--on-deep); position:relative; overflow:hidden; }
.ai-section::before{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,0.05) 1px, transparent 0);
  background-size:26px 26px; pointer-events:none;
}
.ai-section .section-head h2{ color:#fff; }
.ai-section .section-head p{ color:var(--on-deep-soft); }
.ai-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:20px; position:relative; }
@media (max-width:980px){ .ai-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .ai-grid{ grid-template-columns:1fr; } }
.ai-card{
  background:var(--surface-deep-2); border:1px solid var(--border-deep); border-radius:var(--radius-m);
  padding:26px 22px; transition:transform .2s ease, border-color .2s ease;
}
.ai-card:hover{ transform:translateY(-4px); border-color:#3A4180; }
.ai-card .idx{ font-family:var(--font-mono); font-size:12px; color:#7C8CFF; margin-bottom:16px; display:block; }
.ai-card h4{ color:#fff; font-size:16.5px; margin-bottom:10px; font-weight:700; }
.ai-card p{ color:var(--on-deep-soft); font-size:14px; }

/* ============ PROCESS / SCROLL JOURNEY ============ */
.process-section{
  background:var(--surface-deep);
  color:var(--on-deep);
  overflow:hidden;
  position:relative;
}
.process-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 15% 12%, rgba(48,73,245,.16), transparent 30%),
    radial-gradient(circle at 86% 78%, rgba(106,76,245,.12), transparent 28%);
  pointer-events:none;
}
.process-section .section-tag{ color:#8FA0FF; }
.process-section .section-head{ position:relative; z-index:2; }
.process-section .section-head h2{ color:#fff; max-width:660px; }
.process-journey{
  --journey-progress:0;
  position:relative;
  min-height:1500px;
  margin-top:58px;
  padding:0 0 28px;
}
.process-track,
.process-track-fill{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:2px;
  transform:translateX(-50%);
  border-radius:999px;
}
.process-track{
  background:repeating-linear-gradient(to bottom, rgba(167,173,206,.35) 0 5px, transparent 5px 10px);
}
.process-track-fill{
  bottom:auto;
  height:calc(var(--journey-progress) * 100%);
  background:linear-gradient(180deg,#7C8CFF 0%,#3049F5 62%,#6A4CF5 100%);
  box-shadow:0 0 18px rgba(76,96,255,.75);
  transition:height .08s linear;
  z-index:1;
}
.process-track-fill::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:14px;
  height:14px;
  transform:translateX(-50%);
  border-radius:50%;
  background:#AEB8FF;
  box-shadow:0 0 0 6px rgba(48,73,245,.18),0 0 24px rgba(124,140,255,.95);
}
.process-step{
  position:absolute;
  width:calc(50% - 62px);
  z-index:2;
}
.process-step:nth-of-type(1){ top:0; left:0; }
.process-step:nth-of-type(2){ top:300px; right:0; }
.process-step:nth-of-type(3){ top:600px; left:0; }
.process-step:nth-of-type(4){ top:900px; right:0; }
.process-step:nth-of-type(5){ top:1200px; left:0; }
.process-step.is-right{ text-align:left; }
.process-step-card{
  position:relative;
  background:linear-gradient(180deg,rgba(18,23,59,.96),rgba(11,15,43,.96));
  border:1px solid rgba(124,140,255,.2);
  border-radius:24px;
  padding:30px;
  box-shadow:0 24px 60px -34px rgba(0,0,0,.85);
  transition:transform .45s cubic-bezier(.2,.8,.2,1),border-color .35s ease,box-shadow .35s ease;
}
.process-step.reached .process-step-card{
  transform:translateY(-4px);
  border-color:rgba(124,140,255,.58);
  box-shadow:0 28px 70px -32px rgba(48,73,245,.58);
}
.process-kicker{
  display:block;
  color:#8FA0FF;
  font-size:12px;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.process-step h4{ color:#fff; font-size:25px; margin-bottom:12px; }
.process-step p{ color:var(--on-deep-soft); font-size:14.5px; line-height:1.72; }
.process-num-bg{
  position:absolute;
  top:-44px;
  font:800 132px/1 var(--font-head);
  color:rgba(255,255,255,.025);
  pointer-events:none;
  user-select:none;
}
.process-step:not(.is-right) .process-num-bg{ right:10px; }
.process-step.is-right .process-num-bg{ right:10px; }
.process-node{
  position:absolute;
  left:50%;
  width:18px;
  height:18px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:#0B0F2B;
  border:2px solid #5F6A91;
  box-shadow:0 0 0 5px rgba(11,15,43,.96);
  z-index:3;
  transition:background .25s ease,border-color .25s ease,box-shadow .25s ease,transform .25s ease;
}
.process-node[data-step="1"]{ top:90px; }
.process-node[data-step="2"]{ top:390px; }
.process-node[data-step="3"]{ top:690px; }
.process-node[data-step="4"]{ top:990px; }
.process-node[data-step="5"]{ top:1290px; }
.process-node.reached{
  background:#8796FF;
  border-color:#C8CEFF;
  box-shadow:0 0 0 6px rgba(48,73,245,.18),0 0 26px rgba(124,140,255,.95);
}
.process-node.blink{ animation:processBlink .9s cubic-bezier(.16,1,.3,1) 1; }
@keyframes processBlink{
  0%{ transform:translate(-50%,-50%) scale(1); box-shadow:0 0 0 6px rgba(48,73,245,.2),0 0 24px rgba(124,140,255,.75); }
  38%{ transform:translate(-50%,-50%) scale(1.55); box-shadow:0 0 0 15px rgba(48,73,245,.04),0 0 42px rgba(124,140,255,1); }
  72%{ transform:translate(-50%,-50%) scale(.94); }
  100%{ transform:translate(-50%,-50%) scale(1); }
}
@media (max-width:760px){
  .process-section .section-head{ margin-bottom:34px; }
  .process-journey{ min-height:1510px; margin-top:34px; padding-left:54px; }
  .process-track,.process-track-fill{ left:16px; transform:none; }
  .process-track-fill::after{ left:1px; transform:translateX(-50%); }
  .process-node{ left:17px; }
  .process-step,
  .process-step:nth-of-type(1),
  .process-step:nth-of-type(2),
  .process-step:nth-of-type(3),
  .process-step:nth-of-type(4),
  .process-step:nth-of-type(5){ left:54px; right:auto; width:calc(100% - 54px); text-align:left; }
  .process-step:nth-of-type(1){ top:0; }
  .process-step:nth-of-type(2){ top:300px; }
  .process-step:nth-of-type(3){ top:600px; }
  .process-step:nth-of-type(4){ top:900px; }
  .process-step:nth-of-type(5){ top:1200px; }
  .process-step-card{ padding:24px 22px; border-radius:20px; }
  .process-step h4{ font-size:22px; }
  .process-num-bg{ font-size:100px; top:-30px; right:8px !important; }
}
@media (max-width:420px){
  .process-journey{ padding-left:42px; }
  .process-step,
  .process-step:nth-of-type(n){ left:42px; width:calc(100% - 42px); }
  .process-step-card{ padding:22px 18px; }
}


/* ============ ACHIEVEMENTS & AWARDS ============ */
.awards-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(48,73,245,.12), transparent 30%),
    radial-gradient(circle at 88% 82%, rgba(15,174,124,.10), transparent 28%),
    var(--bg);
}
.awards-section::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(48,73,245,.09) 1px, transparent 0);
  background-size:26px 26px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
  pointer-events:none;
}
.awards-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:32px;
  margin-bottom:42px;
  position:relative;
  z-index:1;
}
.awards-head .section-head{ margin-bottom:0; }
.awards-count{
  display:flex;
  align-items:center;
  gap:12px;
  flex-shrink:0;
  padding:12px 16px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(10px);
  border-radius:999px;
  box-shadow:var(--shadow-s);
  color:var(--ink-soft);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.awards-count strong{
  color:var(--primary);
  font:700 18px/1 var(--font-mono);
}
.awards-bento{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-template-areas:
    "a a a a a b b b c c c c"
    "a a a a a b b b c c c c"
    "a a a a a b b b d d d d"
    "a a a a a b b b d d d d"
    "e e e e f f f f g g g g"
    "e e e e f f f f g g g g";
  grid-auto-rows:112px;
  gap:18px;
  position:relative;
  z-index:1;
}
.award-card{
  --mx:50%;
  --my:50%;
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(228,232,245,.95);
  border-radius:24px;
  background:rgba(255,255,255,.82);
  backdrop-filter:blur(14px);
  box-shadow:0 20px 45px -32px rgba(16,23,42,.32);
  isolation:isolate;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s ease,box-shadow .3s ease;
}
.award-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(260px circle at var(--mx) var(--my),rgba(48,73,245,.14),transparent 48%);
  opacity:0;
  transition:opacity .3s ease;
  z-index:-1;
}
.award-card::after{
  content:attr(data-index);
  position:absolute;
  right:16px;
  bottom:10px;
  font:700 11px/1 var(--font-mono);
  color:var(--ink-faint);
  letter-spacing:.08em;
}
.award-card:hover{
  transform:translateY(-6px);
  border-color:rgba(48,73,245,.34);
  box-shadow:0 28px 55px -30px rgba(48,73,245,.34);
}
.award-card:hover::before{ opacity:1; }
.award-card img{
  width:min(74%,220px);
  height:min(72%,150px);
  object-fit:contain;
  filter:saturate(.92) contrast(1.02);
  transition:transform .4s cubic-bezier(.2,.8,.2,1),filter .35s ease;
}
.award-card:hover img{ transform:scale(1.055); filter:saturate(1.05) contrast(1.04); }
.award-card:nth-child(1){ grid-area:a; }
.award-card:nth-child(2){ grid-area:b; }
.award-card:nth-child(3){ grid-area:c; }
.award-card:nth-child(4){ grid-area:d; }
.award-card:nth-child(5){ grid-area:e; }
.award-card:nth-child(6){ grid-area:f; }
.award-card:nth-child(7){ grid-area:g; }
.award-card.featured{
  background:linear-gradient(150deg,#111735,#0B0F2B);
  border-color:rgba(124,140,255,.28);
}
.award-card.featured::before{
  background:radial-gradient(340px circle at var(--mx) var(--my),rgba(124,140,255,.24),transparent 50%);
}
.award-card.featured::after{ color:rgba(237,239,250,.42); }
.award-card.featured img{
  width:min(74%,280px);
  height:min(68%,220px);
  filter:drop-shadow(0 16px 26px rgba(0,0,0,.28));
}
.awards-note{
  margin-top:20px;
  font-size:12.5px;
  color:var(--ink-faint);
  position:relative;
  z-index:1;
}
@media (max-width:980px){
  .awards-bento{ grid-template-columns:repeat(6,1fr); grid-auto-rows:108px; }
  .award-card.featured{ grid-column:span 3; grid-row:span 3; }
    .award-card.wide,.award-card.medium{ grid-column:span 3; grid-row:span 2; }
  .award-card.compact,.award-card.slim{ grid-column:span 3; grid-row:span 2; }
}
@media (max-width:680px){
  .awards-head{ align-items:flex-start; flex-direction:column; gap:20px; margin-bottom:30px; }
  .awards-count{ padding:10px 14px; }
  .awards-bento{
    grid-template-columns:repeat(2,1fr);
    grid-template-areas:
      "a a"
      "a a"
      "b c"
      "d e"
      "f g";
    grid-auto-rows:126px;
    gap:12px;
  }
  .award-card{ border-radius:18px; }
  .award-card img{ width:72%; height:68%; }
  .award-card.featured img{ width:68%; height:70%; }
  .award-card::after{ right:11px; bottom:8px; font-size:9px; }
}

/* ============ FULL-WIDTH IMPACT / ACHIEVEMENT STRIP ============ */
.impact-section{
  position:relative;
  overflow:hidden;
  background:#fff;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.impact-section::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(48,73,245,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(48,73,245,.035) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(90deg,transparent 0,black 18%,black 82%,transparent 100%);
  pointer-events:none;
}
.impact-section::after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-230px;
  top:-250px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(48,73,245,.12),rgba(48,73,245,0) 68%);
  pointer-events:none;
}
.impact-inner{
  width:100%;
  max-width:1540px;
  margin:0 auto;
  padding:clamp(76px,8vw,124px) clamp(24px,6vw,96px);
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(560px,.95fr);
  align-items:stretch;
  gap:clamp(54px,7vw,118px);
  position:relative;
  z-index:1;
}
.impact-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  max-width:670px;
}
.impact-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:max-content;
  margin-bottom:22px;
  color:var(--primary);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.impact-label::before{
  content:"";
  width:30px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--primary),#7C8CFF);
}
.impact-copy h2{
  max-width:650px;
  font-size:clamp(36px,4.6vw,68px);
  line-height:1.02;
  letter-spacing:-.045em;
  margin-bottom:24px;
}
.impact-copy h2 span{
  color:var(--primary);
}
.impact-copy p{
  max-width:620px;
  font-size:clamp(16px,1.35vw,19px);
  line-height:1.78;
}
.impact-foot{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:30px;
  color:var(--ink-soft);
  font-size:13px;
  font-weight:700;
}
.impact-foot-mark{
  width:42px;
  height:42px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:var(--primary-tint);
  color:var(--primary);
  box-shadow:inset 0 0 0 1px rgba(48,73,245,.1);
}
.impact-stats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-self:stretch;
  border:1px solid var(--border);
  border-radius:30px;
  overflow:hidden;
  background:rgba(255,255,255,.84);
  box-shadow:0 34px 80px -52px rgba(16,23,42,.38);
  backdrop-filter:blur(14px);
}
.impact-stat{
  min-height:230px;
  padding:clamp(28px,3vw,44px);
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  transition:background .28s ease,transform .28s ease;
}
.impact-stat:nth-child(odd){ border-right:1px solid var(--border); }
.impact-stat:nth-child(-n+2){ border-bottom:1px solid var(--border); }
.impact-stat::after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:0;
  height:3px;
  background:linear-gradient(90deg,var(--primary),#7C8CFF);
  transition:width .38s cubic-bezier(.2,.8,.2,1);
}
.impact-stat:hover{
  background:linear-gradient(145deg,#fff,var(--primary-tint));
}
.impact-stat:hover::after{ width:100%; }
.impact-icon{
  width:50px;
  height:50px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:var(--primary);
  background:var(--primary-tint);
  box-shadow:inset 0 0 0 1px rgba(48,73,245,.1);
}
.impact-value{
  display:block;
  margin-top:32px;
  color:var(--ink);
  font-family:var(--font-head);
  font-size:clamp(38px,4vw,58px);
  font-weight:800;
  line-height:1;
  letter-spacing:-.05em;
}
.impact-name{
  display:block;
  margin-top:10px;
  color:var(--ink-soft);
  font-size:14px;
  font-weight:700;
}
@media (max-width:1080px){
  .impact-inner{ grid-template-columns:1fr; }
  .impact-copy{ max-width:820px; }
}
@media (max-width:640px){
  .impact-inner{ padding:68px 20px; gap:40px; }
  .impact-copy h2{ font-size:38px; }
  .impact-stats{ border-radius:22px; grid-template-columns:1fr; }
  .impact-stat{ min-height:190px; padding:28px; }
  .impact-stat:nth-child(odd){ border-right:0; }
  .impact-stat:nth-child(-n+3){ border-bottom:1px solid var(--border); }
  .impact-value{ font-size:44px; }
}

/* ============ LANDING PAGE SHOWCASE / SCROLLABLE PREVIEWS ============ */
.landing-showcase{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(48,73,245,.08), transparent 28%),
    radial-gradient(circle at 88% 78%, rgba(15,174,124,.07), transparent 28%),
    #F6F8FC;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.landing-showcase::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px,rgba(48,73,245,.07) 1px,transparent 0);
  background-size:28px 28px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
  pointer-events:none;
}
.landing-showcase .section-head{max-width:760px; position:relative; z-index:1;}
.landing-showcase-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  position:relative;
  z-index:1;
}
.lp-preview-card{
  min-width:0;
  border:1px solid rgba(214,220,237,.95);
  background:rgba(255,255,255,.9);
  border-radius:24px;
  padding:12px;
  box-shadow:0 22px 50px -34px rgba(16,23,42,.35);
  transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
.lp-preview-card:hover{
  transform:translateY(-6px);
  border-color:rgba(48,73,245,.32);
  box-shadow:0 30px 62px -34px rgba(48,73,245,.28);
}
.lp-browser{
  position:relative;
  height:620px;
  overflow:hidden;
  border:1px solid #E2E6F2;
  border-radius:17px;
  background:#fff;
}
.lp-browser-bar{
  position:absolute;
  inset:0 0 auto 0;
  height:42px;
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 13px;
  background:rgba(248,249,253,.96);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #E7EAF3;
  z-index:3;
}
.lp-browser-bar i{width:8px;height:8px;border-radius:50%;background:#CFD5E5;display:block;}
.lp-browser-bar i:nth-child(1){background:#FF6B67;}
.lp-browser-bar i:nth-child(2){background:#F5BE4F;}
.lp-browser-bar i:nth-child(3){background:#61C454;}
.lp-browser-title{
  margin-left:7px;
  min-width:0;
  color:var(--ink-faint);
  font:600 10px/1 var(--font-mono);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.lp-scroll-window{
  position:absolute;
  inset:42px 0 0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(48,73,245,.45) transparent;
  scroll-behavior:smooth;
}
.lp-scroll-window::-webkit-scrollbar{width:6px;}
.lp-scroll-window::-webkit-scrollbar-track{background:transparent;}
.lp-scroll-window::-webkit-scrollbar-thumb{background:rgba(48,73,245,.42);border-radius:999px;}
.lp-scroll-window img{
  width:100%;
  height:auto;
  max-width:none;
  display:block;
}
.lp-scroll-hint{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:4;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(48,73,245,.14);
  border-radius:999px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(10px);
  color:var(--primary);
  font-size:10px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  box-shadow:0 8px 20px -12px rgba(48,73,245,.45);
  pointer-events:none;
}
.lp-scroll-hint svg{animation:lpNudge 1.8s ease-in-out infinite;}
@keyframes lpNudge{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}
.lp-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 6px 4px;}
.lp-card-meta h3{font-size:15px;line-height:1.25;}
.lp-card-meta span{flex-shrink:0;color:var(--primary);font:700 10px/1 var(--font-mono);letter-spacing:.08em;}
@media (max-width:1120px){
  .landing-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .lp-browser{height:560px;}
}
@media (max-width:640px){
  .landing-showcase-grid{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns:min(84vw,360px);
    grid-template-columns:none;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    padding-bottom:12px;
    margin-right:-24px;
  }
  .lp-preview-card{scroll-snap-align:start;}
  .lp-browser{height:520px;}
}

/* ============ REVIEWS / FEATURED TESTIMONIAL SLIDER ============ */
.testimonials-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 20%,rgba(48,73,245,.11),transparent 28%),
    radial-gradient(circle at 88% 82%,rgba(106,76,245,.09),transparent 26%),
    #F3F5FC;
}
.testimonials-section::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px,rgba(48,73,245,.08) 1px,transparent 0);
  background-size:30px 30px;
  mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent);
  pointer-events:none;
}
.testimonial-shell{
  position:relative;
  z-index:1;
  border:1px solid rgba(228,232,245,.96);
  border-radius:32px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(18px);
  box-shadow:0 34px 90px -56px rgba(16,23,42,.46);
  overflow:hidden;
}
.testimonial-stage{ position:relative; min-height:520px; }
.testimonial-slide{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:minmax(280px,.78fr) minmax(0,1.65fr);
  gap:clamp(42px,6vw,86px);
  align-items:center;
  padding:clamp(34px,5vw,70px);
  opacity:0;
  visibility:hidden;
  transform:translateX(28px);
  transition:opacity .55s ease,transform .55s cubic-bezier(.2,.8,.2,1),visibility .55s;
}
.testimonial-slide.active{ opacity:1; visibility:visible; transform:translateX(0); }
.testimonial-visual{ position:relative; min-height:340px; }
.testimonial-photo{
  position:absolute;
  inset:0 38px 34px 0;
  border-radius:26px;
  overflow:hidden;
  display:flex;
  align-items:flex-end;
  padding:28px;
  isolation:isolate;
  box-shadow:0 28px 60px -34px rgba(16,23,42,.5);
}
.testimonial-photo::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 68% 24%,rgba(255,255,255,.28),transparent 16%),
    linear-gradient(145deg,var(--portrait-a),var(--portrait-b));
  z-index:-2;
}
.testimonial-photo::after{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  right:-54px;
  top:-48px;
  border-radius:50%;
  border:42px solid rgba(255,255,255,.12);
  z-index:-1;
}
.testimonial-monogram{
  font:800 clamp(70px,8vw,118px)/1 var(--font-head);
  letter-spacing:-.08em;
  color:rgba(255,255,255,.92);
  text-shadow:0 12px 30px rgba(0,0,0,.14);
}
.testimonial-company{
  position:absolute;
  top:20px;
  left:22px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.24);
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
}
.testimonial-rating{
  position:absolute;
  right:0;
  bottom:0;
  display:flex;
  align-items:center;
  gap:4px;
  padding:15px 20px;
  border-radius:999px;
  background:#fff;
  color:var(--amber);
  font-size:17px;
  letter-spacing:2px;
  box-shadow:0 18px 36px -20px rgba(16,23,42,.36);
}
.testimonial-content{ position:relative; padding:8px 0 82px; }
.testimonial-label{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--primary);
  font-size:12px;
  font-weight:800;
  letter-spacing:.13em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.testimonial-label::before{ content:""; width:28px; height:2px; background:var(--primary); border-radius:999px; }
.testimonial-content h2{ font-size:clamp(34px,4.4vw,58px); margin-bottom:24px; letter-spacing:-.045em; }
.testimonial-quote{
  position:relative;
  max-width:750px;
  font-size:clamp(17px,1.7vw,22px);
  line-height:1.72;
  color:var(--ink-soft);
  margin-bottom:30px;
}
.testimonial-quote::before{
  content:"“";
  position:absolute;
  left:-30px;
  top:-30px;
  font:800 78px/1 Georgia,serif;
  color:rgba(48,73,245,.10);
  pointer-events:none;
}
.testimonial-person{
  border-top:1px solid var(--border);
  padding-top:24px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.testimonial-name{ font-size:17px; font-weight:800; color:var(--ink); }
.testimonial-role{ margin-top:4px; font-size:13px; color:var(--ink-faint); }
.google-proof{
  display:flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:var(--surface-alt);
  font-size:11px;
  font-weight:800;
  color:var(--ink-soft);
  white-space:nowrap;
}
.testimonial-controls{
  position:absolute;
  right:clamp(34px,5vw,70px);
  bottom:clamp(30px,4vw,52px);
  display:flex;
  align-items:center;
  gap:14px;
  z-index:4;
}
.testimonial-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid var(--border);
  color:var(--ink);
  box-shadow:var(--shadow-s);
  transition:transform .2s ease,background .2s ease,color .2s ease;
}
.testimonial-arrow:hover{ transform:translateY(-2px); background:var(--primary); color:#fff; border-color:var(--primary); }
.testimonial-dots{
  display:flex;
  align-items:center;
  gap:9px;
  padding:12px 16px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.86);
  border-radius:999px;
}
.testimonial-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  border:1.5px solid var(--primary);
  transition:width .25s ease,background .25s ease;
}
.testimonial-dot.active{ width:24px; border-radius:999px; background:var(--primary); }
@media (max-width:860px){
  .testimonial-stage{ min-height:740px; }
  .testimonial-slide{ grid-template-columns:1fr; gap:32px; align-content:start; padding:34px; }
  .testimonial-visual{ min-height:280px; max-width:420px; width:100%; }
  .testimonial-photo{ inset:0 30px 28px 0; }
  .testimonial-content{ padding-bottom:86px; }
  .testimonial-quote::before{ left:-10px; }
}
@media (max-width:560px){
  .testimonial-shell{ border-radius:24px; }
  .testimonial-stage{ min-height:790px; }
  .testimonial-slide{ padding:22px; gap:24px; }
  .testimonial-visual{ min-height:250px; }
  .testimonial-photo{ inset:0 20px 24px 0; border-radius:20px; padding:22px; }
  .testimonial-rating{ padding:12px 15px; font-size:14px; }
  .testimonial-content h2{ font-size:34px; }
  .testimonial-quote{ font-size:16px; line-height:1.65; }
  .testimonial-person{ align-items:flex-start; flex-direction:column; }
  .testimonial-controls{ left:22px; right:auto; bottom:22px; }
  .testimonial-arrow{ width:40px; height:40px; }
}


/* Google proof badge pinned to the top-right of the featured slider */
.testimonial-google-badge{
  position:absolute;
  top:28px;
  right:32px;
  z-index:8;
  display:flex;
  align-items:center;
  gap:9px;
  padding:10px 15px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(228,232,245,.95);
  box-shadow:0 14px 30px -18px rgba(16,23,42,.38);
  backdrop-filter:blur(12px);
  font-size:11px;
  font-weight:800;
  color:var(--ink-soft);
  letter-spacing:.01em;
  white-space:nowrap;
}
.testimonial-google-badge .g-mark{
  width:22px;height:22px;border-radius:50%;display:grid;place-items:center;
  background:#fff;border:1px solid var(--border);color:#4285F4;font-weight:900;
}
@media(max-width:640px){
  .testimonial-google-badge{top:16px;right:16px;padding:8px 11px;font-size:10px}
  .testimonial-google-badge .g-mark{width:19px;height:19px}
}

/* ============ UPWORK VERIFIED REVIEWS ============ */
.upwork-reviews-section{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#FCFDFB 0%,#F7FAF6 48%,#FBFCFA 100%);
  color:var(--ink);
  border-top:1px solid #E7ECE5;
  border-bottom:1px solid #E7ECE5;
}
.upwork-reviews-section::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at 12% 18%,rgba(20,168,0,.12),transparent 26%),
    radial-gradient(circle at 86% 72%,rgba(20,168,0,.08),transparent 28%),
    linear-gradient(rgba(20,168,0,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(20,168,0,.025) 1px,transparent 1px);
  background-size:auto,auto,42px 42px,42px 42px;
  mask-image:linear-gradient(to bottom,transparent,black 10%,black 90%,transparent);
}
.upwork-reviews-section::after{
  content:"";position:absolute;right:-180px;top:120px;width:460px;height:460px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(20,168,0,.13),rgba(20,168,0,0) 70%);
  filter:blur(10px);
}
.upwork-wrap{position:relative;z-index:1}
.upwork-head{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end;margin-bottom:46px;
}
.upwork-head .section-tag{color:#118A0A}
.upwork-head h2{color:var(--ink);max-width:760px;font-size:clamp(36px,5vw,62px)}
.upwork-head p{color:var(--ink-soft);max-width:700px;margin-top:16px;font-size:17px;line-height:1.75}
.upwork-score{
  min-width:245px;padding:22px 24px;border-radius:24px;
  background:rgba(255,255,255,.82);border:1px solid rgba(20,168,0,.14);
  box-shadow:0 28px 65px -44px rgba(16,23,42,.34),0 0 38px rgba(20,168,0,.05);backdrop-filter:blur(12px);
}
.upwork-score-top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.upwork-score img{width:88px;height:30px;object-fit:contain;object-position:left center}
.upwork-score strong{font-size:30px;color:var(--ink);line-height:1}
.upwork-score .stars{display:block;color:#14A800;letter-spacing:2px;margin-top:14px}
.upwork-score small{display:block;color:var(--ink-faint);margin-top:7px}
.upwork-reviews-grid{
  display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;
}
.up-review-card{
  position:relative;min-height:250px;padding:28px;border-radius:24px;
  background:rgba(255,255,255,.88);
  border:1px solid #E4EAE1;
  box-shadow:0 22px 55px -42px rgba(16,23,42,.38);
  overflow:hidden;transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease,background .3s ease;
}
.up-review-card::before{
  content:"";position:absolute;left:0;top:0;width:100%;height:3px;
  background:linear-gradient(90deg,transparent,#14A800,transparent);opacity:.28;
}
.up-review-card::after{
  content:"";position:absolute;width:150px;height:150px;right:-85px;bottom:-85px;border-radius:50%;
  background:radial-gradient(circle,rgba(20,168,0,.11),transparent 68%);transition:transform .35s ease,opacity .35s ease;
}
.up-review-card:hover{transform:translateY(-6px);border-color:rgba(20,168,0,.24);box-shadow:0 30px 70px -44px rgba(20,168,0,.28),0 18px 50px -42px rgba(16,23,42,.3);background:#fff}
.up-review-card:hover::after{transform:scale(1.25);opacity:1}
.up-review-card.featured{grid-column:span 6;min-height:315px}
.up-review-card.standard{grid-column:span 3}
.up-review-card.wide{grid-column:span 4}
.up-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}
.up-person{min-width:0}
.up-person strong{display:block;color:var(--ink);font-size:15px;line-height:1.3}
.up-person span{display:block;color:var(--ink-faint);font-size:11.5px;margin-top:5px}
.up-stars{color:#14A800;letter-spacing:2px;font-size:14px;margin-bottom:14px}
.up-review-card h3{color:var(--ink);font-size:20px;margin-bottom:10px;line-height:1.28}
.up-review-card p{color:var(--ink-soft);font-size:13.5px;line-height:1.72}
.up-review-meta{display:flex;align-items:center;justify-content:flex-start;gap:12px;margin-top:22px;padding-top:16px;border-top:1px solid #E7ECE5;color:var(--ink-faint);font-size:10.5px}
.up-verified{
  display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border-radius:999px;
  background:#F7FFF5;border:1px solid rgba(20,168,0,.18);white-space:nowrap;
  box-shadow:0 0 0 1px rgba(20,168,0,.02),0 0 18px rgba(20,168,0,.08);
}
.up-verified img{width:56px;height:18px;object-fit:contain}
.up-verified em{font-style:normal;color:#118A0A;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
@media(max-width:1080px){
  .up-review-card.featured{grid-column:span 12}
  .up-review-card.standard,.up-review-card.wide{grid-column:span 6}
}
@media(max-width:760px){
  .upwork-head{grid-template-columns:1fr;align-items:start}
  .upwork-score{min-width:0;width:100%;max-width:320px}
  .up-review-card.featured,.up-review-card.standard,.up-review-card.wide{grid-column:span 12}
  .up-review-card{min-height:auto;padding:22px;border-radius:20px}
  .up-card-top{align-items:flex-start}
}

/* ============ CREDENTIALS ============ */
.cred-section{ background:var(--surface-alt); }
.cred-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:18px; }
@media (max-width:860px){ .cred-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:480px){ .cred-grid{ grid-template-columns:1fr; } }
.cred-card{ background:var(--surface); border-radius:var(--radius-m); padding:24px; box-shadow:var(--shadow-s); }
.cred-card .cred-icon{ width:42px; height:42px; border-radius:12px; background:var(--primary-tint); display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.cred-card h4{ font-size:15px; margin-bottom:6px; }
.cred-card p{ font-size:13px; }

/* ============ FAQ ============ */
.faq-list{ max-width:760px; }
.faq-item{ border-bottom:1px solid var(--border); }
.faq-q{
  width:100%; display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:22px 4px; text-align:left; font-weight:700; font-size:16px; color:var(--ink);
}
.faq-q .plus{ flex-shrink:0; width:26px; height:26px; border-radius:50%; border:1.5px solid var(--border); position:relative; transition:transform .2s ease, background .2s ease; }
.faq-q .plus::before, .faq-q .plus::after{ content:""; position:absolute; background:var(--ink-soft); top:50%; left:50%; transform:translate(-50%,-50%); }
.faq-q .plus::before{ width:10px; height:1.4px; }
.faq-q .plus::after{ width:1.4px; height:10px; transition:opacity .2s ease; }
.faq-item.open .plus{ transform:rotate(180deg); background:var(--primary); border-color:var(--primary); }
.faq-item.open .plus::before, .faq-item.open .plus::after{ background:#fff; }
.faq-item.open .plus::after{ opacity:0; }
.faq-a{ max-height:0; overflow:hidden; transition:max-height .25s ease; }
.faq-a p{ padding:0 4px 22px; font-size:14.5px; max-width:640px; }

/* ============ FINAL CTA / FORM ============ */
.cta-final{
  background:linear-gradient(155deg, var(--surface-deep), #171C46);
  border-radius:var(--radius-l);
  padding:56px 40px;
  color:var(--on-deep);
  display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center;
  position:relative; overflow:hidden;
}
@media (max-width:900px){ .cta-final{ grid-template-columns:1fr; padding:40px 24px; } }
.cta-final::before{
  content:""; position:absolute; inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,0.05) 1px, transparent 0);
  background-size:24px 24px; pointer-events:none;
}
.cta-final h2{ color:#fff; font-size:clamp(26px,3.4vw,34px); margin-bottom:14px; }
.cta-final p{ color:var(--on-deep-soft); font-size:15.5px; margin-bottom:22px; max-width:420px; }
.cta-points{ display:flex; flex-direction:column; gap:10px; }
.cta-points li{ display:flex; align-items:center; gap:10px; font-size:14px; color:var(--on-deep); }

.lead-form{
  background:var(--surface); border-radius:var(--radius-m); padding:26px; position:relative;
  box-shadow:var(--shadow-l);
}
.lead-form h4{ font-size:16px; margin-bottom:4px; }
.lead-form .sub{ font-size:13px; color:var(--ink-faint); margin-bottom:18px; }
.form-row{ display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:12px; }
.form-row.full{ grid-template-columns:1fr; }
.form-field label{ font-size:12px; font-weight:700; color:var(--ink-soft); display:block; margin-bottom:6px; }
.form-field input, .form-field select{
  width:100%; padding:12px 14px; border-radius:12px; border:1px solid var(--border);
  font-family:inherit; font-size:14px; background:var(--bg); color:var(--ink);
  transition:border-color .15s ease;
}
.form-field input:focus, .form-field select:focus{ outline:none; border-color:var(--primary); }
.lead-form .btn{ width:100%; margin-top:6px; }
.form-note{ font-size:11.5px; color:var(--ink-faint); margin-top:12px; text-align:center; }
.form-success{ display:none; text-align:center; padding:30px 10px; }
.form-success.show{ display:block; }
.form-success .tick{ width:52px; height:52px; border-radius:50%; background:var(--emerald-tint); display:flex; align-items:center; justify-content:center; margin:0 auto 16px; }
.form-success h4{ margin-bottom:6px; }
.form-success p{ font-size:13.5px; }

/* ============ FOOTER ============ */
footer{ border-top:1px solid var(--border); padding:56px 0 28px; }
.footer-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:40px; margin-bottom:48px; }
@media (max-width:860px){ .footer-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .footer-grid{ grid-template-columns:1fr; } }
.footer-brand p{ font-size:13.5px; margin:14px 0 18px; max-width:280px; }
.footer-col h5{ font-size:13px; font-weight:700; margin-bottom:16px; color:var(--ink); text-transform:uppercase; letter-spacing:.04em; }
.footer-col li{ margin-bottom:11px; }
.footer-col a{ font-size:14px; color:var(--ink-soft); transition:color .15s ease; }
.footer-col a:hover{ color:var(--primary); }
.footer-offices{ font-size:13.5px; color:var(--ink-soft); line-height:1.6; }
.social-row{ display:flex; gap:10px; margin-top:16px; }
.social-row a{
  width:36px; height:36px; border-radius:50%; border:1px solid var(--border); display:flex; align-items:center;
  justify-content:center; transition:.15s ease;
}
.social-row a:hover{ background:var(--primary); border-color:var(--primary); }
.social-row a:hover svg path{ fill:#fff; }
.footer-bottom{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; border-top:1px solid var(--border); padding-top:24px; font-size:12.5px; color:var(--ink-faint); }
.footer-bottom .legal{ display:flex; gap:20px; }

/* reveal on scroll */
.reveal{ opacity:0; transform:translateY(16px); transition:opacity .5s ease, transform .5s ease; }
.reveal.in{ opacity:1; transform:translateY(0); }

.svisible{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }


/* ============================================================
   MOBILE EXPERIENCE REFINEMENTS
   Desktop layouts above remain unchanged.
   ============================================================ */
.mobile-menu-head,.mobile-menu-cta,.awards-mobile-controls{display:none;}
.lp-load-status{
  position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);z-index:2;
  padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.9);
  border:1px solid var(--border);color:var(--ink-faint);font-size:10px;font-weight:800;
  letter-spacing:.05em;text-transform:uppercase;box-shadow:var(--shadow-s);pointer-events:none;
  transition:opacity .25s ease,visibility .25s ease;
}
.lp-scroll-window.is-preview-loaded .lp-load-status,
.lp-scroll-window.is-full-loaded .lp-load-status{opacity:0;visibility:hidden;}
.lp-progressive-image{transition:opacity .3s ease;}
.lp-progressive-image.is-loading{opacity:.55;}

@media (max-width:860px){
  header.nav{
    background:rgba(248,249,253,.96);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    z-index:300;
  }
  .nav-inner{padding:12px 18px;min-height:72px;}
  .nav-inner>.logo{font-size:17px;}
  .nav-inner>.logo .logo-mark{width:32px;height:32px;border-radius:10px;}
  .nav-cta{gap:10px;}
  .nav-toggle{
    display:block;width:56px;height:56px;border-radius:48%;background:#fff;
    box-shadow:0 16px 38px -18px rgba(16,23,42,.42),inset 0 0 0 1px rgba(228,232,245,.9);
    z-index:304;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
  }
  .nav-toggle:active{transform:scale(.95);}
  .nav-toggle .bar{
    left:50%;top:50%;height:3px;background:#1b1d26;border-radius:99px;
    transform:translate(-50%,-50%);transition:transform .38s cubic-bezier(.2,.8,.2,1),width .3s ease,opacity .2s ease;
  }
  .nav-toggle .bar:nth-child(1){width:24px;transform:translate(-50%,-6px);}
  .nav-toggle .bar:nth-child(2){width:15px;transform:translate(-78%,5px);}
  .nav-toggle.open{background:var(--surface-deep);box-shadow:0 18px 42px -18px rgba(11,15,43,.65);}
  .nav-toggle.open .bar{background:#fff;width:22px;}
  .nav-toggle.open .bar:nth-child(1){transform:translate(-50%,-50%) rotate(45deg);}
  .nav-toggle.open .bar:nth-child(2){transform:translate(-50%,-50%) rotate(-45deg);}

  .nav-overlay{
    position:fixed;inset:0;top:0;background:rgba(11,15,43,.48);
    -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
    z-index:301;opacity:0;visibility:hidden;pointer-events:none;
    transition:opacity .38s ease,visibility .38s ease;
  }
  .nav-overlay.show{opacity:1;visibility:visible;pointer-events:auto;}
  .nav-links{
    position:fixed;top:0;left:0;bottom:auto;width:min(88vw,370px);height:100dvh;max-width:none;
    display:flex;flex-direction:column;align-items:stretch;gap:0;
    padding:0 22px 26px;background:rgba(255,255,255,.98);
    box-shadow:30px 0 70px -35px rgba(11,15,43,.55);
    transform:translate3d(-105%,0,0);transition:transform .48s cubic-bezier(.22,1,.36,1);
    z-index:303;overflow-y:auto;overscroll-behavior:contain;
  }
  .nav-links.open{transform:translate3d(0,0,0);}
  .nav-links.closing{transform:translate3d(-105%,0,0);}
  .mobile-menu-head{
    min-height:86px;display:flex;align-items:center;justify-content:space-between;
    margin:0 -2px 14px;border-bottom:1px solid var(--border);
  }
  .mobile-menu-brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--ink);}
  .mobile-menu-brand .logo-mark{width:34px;height:34px;}
  .mobile-menu-close{
    width:42px;height:42px;border-radius:50%;background:var(--surface-alt);position:relative;
    box-shadow:inset 0 0 0 1px var(--border);
  }
  .mobile-menu-close span{position:absolute;left:50%;top:50%;width:17px;height:2px;background:var(--ink);border-radius:99px;}
  .mobile-menu-close span:first-child{transform:translate(-50%,-50%) rotate(45deg);}
  .mobile-menu-close span:last-child{transform:translate(-50%,-50%) rotate(-45deg);}
  .nav-links>a:not(.mobile-menu-cta){
    position:relative;width:100%;padding:16px 8px;border-bottom:1px solid rgba(228,232,245,.78);
    color:var(--ink);font-size:16px;font-weight:700;opacity:0;transform:translateX(-14px);
    transition:opacity .28s ease,transform .38s cubic-bezier(.2,.8,.2,1),color .2s ease;
  }
  .nav-links.open>a:not(.mobile-menu-cta){opacity:1;transform:none;}
  .nav-links.open>a:nth-of-type(1){transition-delay:.08s}.nav-links.open>a:nth-of-type(2){transition-delay:.11s}
  .nav-links.open>a:nth-of-type(3){transition-delay:.14s}.nav-links.open>a:nth-of-type(4){transition-delay:.17s}
  .nav-links.open>a:nth-of-type(5){transition-delay:.20s}.nav-links.open>a:nth-of-type(6){transition-delay:.23s}
  .nav-links.open>a:nth-of-type(7){transition-delay:.26s}
  .nav-links>a:not(.mobile-menu-cta)::after{content:'→';position:absolute;right:8px;color:var(--primary);opacity:.65;}
  .mobile-menu-cta{
    display:flex;align-items:center;justify-content:center;margin-top:auto;padding:15px 20px;border-radius:999px;
    background:var(--primary);color:#fff;font-size:14px;font-weight:800;
    box-shadow:0 18px 34px -18px rgba(48,73,245,.65);
  }
  body.nav-open{overflow:hidden;touch-action:none;}

  .hero{padding:34px 0 42px;}
  .hero-grid{gap:34px;}
  .hero-copy h1{font-size:clamp(38px,11vw,52px);line-height:1.02;margin:17px 0 20px;letter-spacing:-.045em;}
  .hero-copy p.lead{font-size:16px;line-height:1.7;margin-bottom:26px;}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:11px;margin-bottom:28px;}
  .hero-actions .btn{width:100%;min-height:54px;}
  .hero-proof{align-items:flex-start;flex-wrap:wrap;}
  .hero-proof-text{font-size:12.5px;line-height:1.55;max-width:220px;}
  .console{padding:16px;border-radius:22px;}
  .console-metrics{gap:6px;}
  .metric-value{font-size:14px;}.metric-label{font-size:9px;}

  .trust-strip{padding:26px 0;}
  .trust-strip .container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .trust-item{align-items:flex-start;flex-direction:column;gap:4px;padding:16px;border:1px solid var(--border);border-radius:16px;background:#fff;}
  .trust-item .num{font-size:22px;}.trust-item .label{max-width:none;font-size:11px;}
  .badge-pair{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px;}
  .cert-badge{justify-content:center;padding:10px 8px;font-size:11px;}

  .section{padding:68px 0;}
  .section-head{margin-bottom:32px;}
  .section-head p{font-size:15px;line-height:1.7;}
  .service-card{padding:24px;border-radius:22px;}
  .service-list{grid-template-columns:1fr;}
  .ai-grid{grid-template-columns:1fr;gap:14px;}
  .ai-card{padding:22px;}

  .process-journey{min-height:1430px;padding-left:42px;}
  .process-track,.process-track-fill{left:10px;}
  .process-node{left:11px;}
  .process-step,.process-step:nth-of-type(n){left:38px;width:calc(100% - 38px);}
  .process-step-card{padding:22px 18px;}
  .process-step h4{font-size:20px;line-height:1.25;}
  .process-step p{font-size:13px;line-height:1.65;}

  .impact-inner{padding:68px 20px;}
  .impact-copy h2{font-size:38px;}
  .impact-foot{align-items:flex-start;}

  .testimonial-stage{min-height:760px;}
  .testimonial-slide{padding:24px;}
  .upwork-head h2{font-size:38px;}
  .footer-bottom{align-items:flex-start;flex-direction:column;}
}

@media (max-width:680px){
  .container{padding:0 18px;}
  .eyebrow{white-space:normal;line-height:1.35;}
  .awards-head{gap:16px;}
  .awards-count{font-size:10px;}
  .awards-bento{
    display:flex;grid-template:none;gap:14px;overflow-x:auto;overflow-y:hidden;
    margin:0 -18px;padding:4px 18px 18px;scroll-snap-type:x mandatory;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
  }
  .awards-bento::-webkit-scrollbar{display:none;}
  .award-card,.award-card.featured,.award-card.tall,.award-card.wide,.award-card.medium,.award-card.compact,.award-card.slim{
    flex:0 0 min(82vw,320px);width:min(82vw,320px);height:270px;min-height:270px;
    grid-area:auto!important;grid-column:auto!important;grid-row:auto!important;
    border-radius:22px;scroll-snap-align:center;
  }
  .award-card img,.award-card.featured img{width:72%;height:68%;object-fit:contain;}
  .awards-mobile-controls{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:4px;}
  .awards-carousel-btn{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--border);color:var(--ink);font-size:20px;box-shadow:var(--shadow-s);}
  .awards-carousel-count{min-width:70px;text-align:center;font:700 11px/1 var(--font-mono);color:var(--ink-faint);}

  .landing-showcase-grid{margin-right:-18px;}
  .lp-browser{height:500px;}
  .lp-preview-card{padding:9px;border-radius:20px;}
  .lp-card-meta{padding:13px 4px 3px;}

  .impact-stats{grid-template-columns:1fr;}
  .impact-stat{min-height:175px;}
  .impact-stat:nth-child(n){border-right:0;}
  .impact-stat:not(:last-child){border-bottom:1px solid var(--border);}

  .testimonial-google-badge{max-width:calc(100% - 32px);}
  .testimonial-stage{min-height:820px;}
  .testimonial-visual{min-height:230px;}
  .testimonial-content h2{font-size:31px;}
  .upwork-score{max-width:none;}
  .form-row{grid-template-columns:1fr;}
  .cta-final{padding:34px 20px;}
}

@media (max-width:390px){
  .nav-inner{padding:10px 14px;}.nav-toggle{width:52px;height:52px;}
  .hero-copy h1{font-size:36px;}
  .trust-strip .container{grid-template-columns:1fr;}
  .badge-pair{grid-column:auto;grid-template-columns:1fr;}
  .award-card,.award-card.featured{flex-basis:84vw;width:84vw;height:248px;min-height:248px;}
}


/* ============ LANDING PREVIEW FIRST-PAINT FIX ============ */
/* Keep this section visible immediately instead of waiting for reveal animation. */
.landing-showcase .section-head.reveal,
.landing-showcase .lp-preview-card.reveal{
  opacity:1;
  transform:none;
}

/* A designed backdrop remains visible while the lightweight preview is decoding. */
.lp-scroll-window{
  background:
    linear-gradient(110deg, #f1f3f9 8%, #fafbfe 18%, #f1f3f9 33%);
  background-size:220% 100%;
  animation:lpPreviewSkeleton 1.35s linear infinite;
}

.lp-scroll-window.is-preview-loaded,
.lp-scroll-window.is-full-loaded{
  background:#fff;
  animation:none;
}

@keyframes lpPreviewSkeleton{
  to{ background-position-x:-220%; }
}

/* Never fade the current image while a replacement downloads in memory. */
.lp-progressive-image,
.lp-progressive-image.is-loading{
  opacity:1;
  min-height:100%;
  background:#f4f6fb;
}


/* ============ MOBILE NAV ICON + CTA READABILITY FIX ============ */
@media (max-width:860px){
  /* Restore the earlier classic three-line hamburger. */
  .nav-toggle{
    width:52px;
    height:52px;
    border-radius:50%;
    background:#fff;
    opacity:1;
    visibility:visible;
    transform:none;
    pointer-events:auto;
    transition:
      opacity .22s ease,
      transform .22s ease,
      box-shadow .22s ease,
      background .22s ease;
  }

  .nav-toggle .bar{
    position:absolute;
    left:50%;
    width:22px;
    height:2.5px;
    background:var(--ink);
    border-radius:999px;
    transform:translateX(-50%);
    opacity:1;
  }

  .nav-toggle .bar:nth-child(1){
    top:16px;
    width:22px;
    transform:translateX(-50%);
  }

  .nav-toggle .bar:nth-child(2){
    top:24px;
    width:22px;
    transform:translateX(-50%);
  }

  .nav-toggle .bar:nth-child(3){
    top:32px;
    width:15px;
    transform:translateX(-74%);
  }

  /*
   * Do not turn the hamburger into a second close icon.
   * The drawer already has one dedicated close button.
   */
  .nav-toggle.open{
    opacity:0;
    visibility:hidden;
    transform:scale(.82);
    pointer-events:none;
    background:#fff;
  }

  .nav-toggle.open .bar:nth-child(1),
  .nav-toggle.open .bar:nth-child(2),
  .nav-toggle.open .bar:nth-child(3){
    background:var(--ink);
    transform:translateX(-50%);
  }

  /* Keep the single close control inside the opened drawer. */
  .mobile-menu-close{
    display:block;
    flex:0 0 42px;
  }

  /* Ensure the menu CTA remains high-contrast and fully readable. */
  .nav-links .mobile-menu-cta{
    display:flex;
    width:100%;
    min-height:54px;
    align-items:center;
    justify-content:center;
    margin-top:auto;
    padding:15px 22px;
    border:0;
    border-radius:999px;
    background:linear-gradient(135deg,var(--primary),#5368ff);
    color:#fff !important;
    font-size:15px;
    line-height:1.2;
    font-weight:800;
    text-align:center;
    text-shadow:0 1px 1px rgba(0,0,0,.12);
    box-shadow:0 18px 36px -18px rgba(48,73,245,.62);
    opacity:1;
    transform:none;
  }

  .nav-links .mobile-menu-cta:hover,
  .nav-links .mobile-menu-cta:focus-visible{
    color:#fff !important;
    background:linear-gradient(135deg,var(--primary-dark),var(--primary));
  }
}

@media (max-width:390px){
  .nav-toggle{
    width:48px;
    height:48px;
  }

  .nav-toggle .bar:nth-child(1){top:14px;}
  .nav-toggle .bar:nth-child(2){top:22px;}
  .nav-toggle .bar:nth-child(3){top:30px;}
}


/* ============ COMPACT HORIZONTAL AWARDS ============ */
@media (min-width:681px){
  .awards-section{padding-top:74px;padding-bottom:74px;}
  .awards-head{margin-bottom:28px;align-items:center;}
  .awards-bento{
    display:grid;
    grid-template-columns:repeat(7,minmax(0,1fr));
    grid-template-areas:none;
    grid-auto-rows:none;
    gap:14px;
    overflow:visible;
  }
  .award-card,
  .award-card.featured,
  .award-card.tall,
  .award-card.wide,
  .award-card.medium,
  .award-card.compact,
  .award-card.slim{
    grid-area:auto !important;
    grid-column:auto !important;
    grid-row:auto !important;
    height:190px;
    min-height:190px;
    border-radius:20px;
    background:rgba(255,255,255,.92);
    border:1px solid rgba(219,225,241,.95);
    box-shadow:0 18px 34px -24px rgba(16,23,42,.34),0 8px 18px -16px rgba(48,73,245,.28);
    transform:none;
  }
  .award-card.featured{
    background:linear-gradient(155deg,#101632,#0B0F2B);
    border-color:rgba(124,140,255,.25);
  }
  .award-card img,
  .award-card.featured img{
    width:72%;
    height:68%;
    max-width:145px;
    max-height:118px;
    object-fit:contain;
  }
  .award-card:hover{
    transform:translateY(-7px) rotate(-.4deg);
    box-shadow:0 26px 48px -26px rgba(16,23,42,.42),0 16px 30px -20px rgba(48,73,245,.34);
  }
  .award-card:nth-child(even):hover{transform:translateY(-7px) rotate(.4deg);}
  .award-card::after{right:12px;bottom:10px;font-size:9px;}
}
@media (min-width:681px) and (max-width:1050px){
  .awards-bento{overflow-x:auto;grid-template-columns:repeat(7,150px);padding-bottom:10px;scrollbar-width:thin;}
  .award-card,.award-card.featured{height:180px;min-height:180px;}
}

/* ============ THREE-CARD GOOGLE REVIEWS ============ */
.compact-testimonials{padding:78px 0;background:linear-gradient(180deg,#F6F8FF 0%,#F2F5FC 100%);}
.compact-testimonials::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 12% 18%,rgba(48,73,245,.1),transparent 28%),radial-gradient(circle at 88% 82%,rgba(15,174,124,.07),transparent 25%);
}
.compact-testimonials .container{position:relative;z-index:1;}
.compact-testimonials-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:34px;}
.compact-testimonials-head h2{max-width:720px;}
.compact-google-badge{position:static;flex-shrink:0;}
.compact-testimonials-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.compact-testimonial-card{
  --review-accent:#3049F5;
  position:relative;overflow:hidden;min-height:360px;padding:28px;border-radius:24px;
  background:rgba(255,255,255,.9);border:1px solid rgba(222,227,242,.96);
  box-shadow:0 24px 55px -38px rgba(16,23,42,.4);
  display:flex;flex-direction:column;transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.compact-testimonial-card::before{content:"";position:absolute;left:0;top:0;width:100%;height:4px;background:linear-gradient(90deg,var(--review-accent),transparent 82%);}
.compact-testimonial-card::after{content:"“";position:absolute;right:18px;top:20px;font:800 72px/1 Georgia,serif;color:color-mix(in srgb,var(--review-accent) 10%,transparent);}
.compact-testimonial-card:hover{transform:translateY(-7px);border-color:color-mix(in srgb,var(--review-accent) 28%,#E4E8F5);box-shadow:0 30px 65px -38px color-mix(in srgb,var(--review-accent) 30%,rgba(16,23,42,.25));}
.compact-testimonial-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:28px;position:relative;z-index:1;}
.compact-review-chip{font-size:10.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--review-accent);background:color-mix(in srgb,var(--review-accent) 10%,white);padding:7px 10px;border-radius:999px;}
.compact-review-stars{color:var(--amber);letter-spacing:1px;font-size:14px;white-space:nowrap;}
.compact-testimonial-card h3{font-size:22px;line-height:1.25;margin-bottom:14px;max-width:90%;}
.compact-testimonial-card p{font-size:14px;line-height:1.75;flex:1;}
.compact-review-person{margin-top:24px;padding-top:18px;border-top:1px solid var(--border);}
.compact-review-person strong{display:block;color:var(--ink);font-size:15px;}
.compact-review-person span{display:block;margin-top:4px;color:var(--ink-faint);font-size:12px;}
@media(max-width:900px){
  .compact-testimonials-grid{grid-template-columns:1fr;}
  .compact-testimonial-card{min-height:auto;}
  .compact-testimonials-head{align-items:flex-start;flex-direction:column;}
}
@media(max-width:560px){
  .compact-testimonials{padding:64px 0;}
  .compact-testimonial-card{padding:22px;border-radius:20px;}
  .compact-testimonial-card h3{font-size:20px;}
  .compact-google-badge{align-self:flex-start;}
}

.footer-offices a{color:var(--primary);font-weight:700;}


/* ============ FINAL AUDIT SECTION SPACING ============ */
#contact{
  padding-bottom:120px;
}
@media (max-width:768px){
  #contact{ padding-bottom:84px; }
}

/* ============ AUDIT FORM SUBMISSION ============ */
.audit-honeypot{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  white-space:nowrap !important;
}

.audit-submit{
  position:relative;
  min-height:54px;
}
.audit-submit:disabled{
  cursor:wait;
  opacity:.92;
  transform:none;
}
.audit-submit-spinner{
  display:none;
  width:18px;
  height:18px;
  flex:0 0 18px;
  border:2px solid rgba(255,255,255,.38);
  border-top-color:#fff;
  border-radius:50%;
  animation:auditSpin .72s linear infinite;
}
.audit-submit.is-submitting .audit-submit-spinner{ display:block; }
@keyframes auditSpin{ to{ transform:rotate(360deg); } }

/* ============ GLASSMORPHISM SUCCESS MODAL ============ */
body.audit-modal-open{ overflow:hidden; }

.audit-modal{
  position:fixed;
  inset:0;
  z-index:1000;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .28s ease, visibility .28s ease;
}
.audit-modal.show{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
.audit-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(11,15,43,.44);
  backdrop-filter:blur(15px) saturate(125%);
  -webkit-backdrop-filter:blur(15px) saturate(125%);
}
.audit-modal-card{
  position:relative;
  z-index:1;
  width:min(92vw,520px);
  overflow:hidden;
  padding:48px 42px 38px;
  border:1px solid rgba(255,255,255,.58);
  border-radius:30px;
  background:
    radial-gradient(circle at 85% 10%,rgba(124,140,255,.20),transparent 34%),
    linear-gradient(145deg,rgba(255,255,255,.92),rgba(244,246,255,.78));
  box-shadow:
    0 36px 90px -34px rgba(11,15,43,.65),
    inset 0 1px 0 rgba(255,255,255,.8);
  text-align:center;
  transform:translateY(20px) scale(.96);
  transition:transform .38s cubic-bezier(.2,.9,.2,1);
}
.audit-modal.show .audit-modal-card{
  transform:translateY(0) scale(1);
}
.audit-modal-card::before{
  content:"";
  position:absolute;
  width:220px;
  height:220px;
  left:-105px;
  bottom:-130px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(48,73,245,.16),transparent 68%);
  pointer-events:none;
}
.audit-modal-close{
  position:absolute;
  top:18px;
  right:18px;
  width:40px;
  height:40px;
  border:1px solid rgba(48,73,245,.12);
  border-radius:50%;
  background:rgba(255,255,255,.62);
  box-shadow:0 10px 24px -16px rgba(16,23,42,.4);
  transition:transform .2s ease,background .2s ease;
}
.audit-modal-close:hover{
  transform:rotate(5deg) scale(1.04);
  background:#fff;
}
.audit-modal-close span{
  position:absolute;
  top:19px;
  left:11px;
  width:18px;
  height:2px;
  border-radius:999px;
  background:var(--ink);
}
.audit-modal-close span:first-child{ transform:rotate(45deg); }
.audit-modal-close span:last-child{ transform:rotate(-45deg); }

.audit-modal-icon{
  width:72px;
  height:72px;
  margin:0 auto 22px;
  display:grid;
  place-items:center;
  border-radius:22px;
  color:#fff;
  background:linear-gradient(145deg,var(--primary),#6A4CF5);
  box-shadow:0 18px 38px -18px rgba(48,73,245,.72);
}
.audit-modal-kicker{
  display:block;
  margin-bottom:10px;
  color:var(--primary);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.audit-modal-card h3{
  margin:0 auto 14px;
  max-width:400px;
  font-size:clamp(24px,4.5vw,34px);
  line-height:1.13;
}
.audit-modal-card p{
  max-width:410px;
  margin:0 auto;
  font-size:15px;
  line-height:1.7;
}
.audit-modal-progress{
  height:4px;
  margin-top:28px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(48,73,245,.10);
}
.audit-modal-progress span{
  display:block;
  width:100%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--primary),#7C8CFF);
  transform-origin:left;
  animation:auditModalTimer 3s linear forwards;
}
@keyframes auditModalTimer{
  from{ transform:scaleX(1); }
  to{ transform:scaleX(0); }
}
@media (max-width:560px){
  .audit-modal{ padding:18px; }
  .audit-modal-card{
    padding:44px 24px 30px;
    border-radius:24px;
  }
  .audit-modal-icon{
    width:64px;
    height:64px;
    border-radius:20px;
  }
}
