
  /* ===== RESET & BASE ===== */
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  :root{
    --brand:#004e93; --brand-deep:#00386b; --brand-light:#0a6ab5; --brand-navy:#062144;
    --accent:#FFCC33; --accent-soft:#ffe79a; --accent-deep:#e5a800;
    --ink:#0b1220; --ink-2:#334155; --muted:#64748b;
    --line:#e5e9f2; --bg:#ffffff; --bg-soft:#f7f9fc;
    --green:#10b981; --red:#ef4444; --purple:#7c3aed;
    --shadow-sm:0 1px 2px rgba(13,21,45,.06),0 1px 3px rgba(13,21,45,.08);
    --shadow-md:0 10px 24px -8px rgba(0,78,147,.18),0 4px 12px rgba(13,21,45,.06);
    --shadow-lg:0 30px 60px -20px rgba(0,78,147,.28),0 12px 30px -12px rgba(13,21,45,.12);
    --radius:14px; --radius-lg:20px;
  }
  html{scroll-behavior:smooth}
  body{font-family:'Inter',system-ui,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
  h1,h2,h3,h4,h5,h6{font-family:'Epilogue','Inter',system-ui,sans-serif;font-weight:800;letter-spacing:-0.02em}
  body.modal-open{overflow:hidden}
  img,svg{display:block;max-width:100%}
  a{color:inherit;text-decoration:none}
  button{font-family:inherit;cursor:pointer;border:none;background:none}
  .container{max-width:1200px;margin:0 auto;padding:0 24px}
  .visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

  /* ===== TOP STRIP ===== */
  .topstrip{background:var(--brand-navy);color:rgba(255,255,255,.8);font-size:12.5px;padding:8px 0}
  .topstrip-inner{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
  .topstrip a{display:inline-flex;gap:6px;align-items:center;color:inherit;transition:color .2s}
  .topstrip a:hover{color:var(--accent)}
  .topstrip-left{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
  .topstrip svg{opacity:.85}
  .topstrip-rating{display:inline-flex;align-items:center;gap:8px}
  .topstrip-rating .stars{color:var(--accent);letter-spacing:1px}

  /* ===== NAV ===== */
  nav.topnav{position:sticky;top:0;z-index:100;background:var(--brand);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 2px 12px rgba(0,0,0,.1)}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;max-width:1280px;margin:0 auto;gap:20px}
  .logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
  .logo img{height:42px;width:auto;display:block}
  .nav-links{display:flex;gap:2px;align-items:center;list-style:none}
  .nav-links>li{position:relative}
  .nav-item{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:10px;font-size:15px;font-weight:600;color:#fff;transition:background .2s;cursor:pointer;line-height:1}
  .nav-item:hover{background:rgba(255,255,255,.12)}
  .nav-links>li:hover>.nav-item,
  .nav-links>li:focus-within>.nav-item{background:rgba(0,0,0,.18)}
  .nav-item .caret{width:11px;height:11px;flex-shrink:0;transition:transform .25s;margin-left:2px}
  .nav-links>li:hover .caret{transform:rotate(180deg)}
  .mega{position:absolute;top:calc(100% + 12px);left:-12px;background:#fff;border-radius:16px;box-shadow:0 24px 64px -10px rgba(6,33,68,.32),0 12px 28px -6px rgba(13,21,45,.16);padding:32px 38px;border:1px solid rgba(6,33,68,.06);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s,transform .25s,visibility .25s;z-index:100}
  .mega::before{content:"";position:absolute;top:-7px;left:38px;width:14px;height:14px;background:#fff;transform:rotate(45deg);border-left:1px solid rgba(6,33,68,.06);border-top:1px solid rgba(6,33,68,.06)}
  .nav-links>li:hover .mega,
  .nav-links>li:focus-within .mega{opacity:1;visibility:visible;transform:translateY(0)}
  .mega-resources{left:auto;right:-12px;min-width:240px}
  .mega-resources::before{left:auto;right:38px}
  .mega .mega-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:32px}
  .mega-resources .mega-grid{grid-template-columns:minmax(220px,1fr)}
  .mega h4{font-size:13px;font-weight:800;color:var(--brand);letter-spacing:.14em;text-transform:uppercase;margin:0 0 18px;padding-bottom:10px;position:relative}
  .mega h4::after{content:"";position:absolute;left:0;bottom:0;width:36px;height:3px;background:var(--accent);border-radius:2px}
  .mega a{display:block;padding:9px 0;font-size:14.5px;font-weight:500;color:var(--ink);transition:color .2s,padding .2s;line-height:1.4}
  .mega a:hover{color:var(--brand);padding-left:4px}
  .nav-actions{display:flex;gap:10px;align-items:center}

  .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 22px;border-radius:999px;font-weight:600;font-size:14px;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap}
  .btn-cta{background:var(--accent);color:#1a1a1a;padding:12px 26px;box-shadow:0 4px 0 rgba(179,131,0,.4),0 8px 16px -4px rgba(255,204,51,.4)}
  .btn-cta:hover{transform:translateY(-1px);box-shadow:0 5px 0 rgba(179,131,0,.4),0 12px 22px -4px rgba(255,204,51,.55)}
  .btn-yellow,.btn-primary{background:var(--accent);color:#1a1a1a;box-shadow:0 4px 0 rgba(179,131,0,.4),0 8px 16px -4px rgba(255,204,51,.4)}
  .btn-yellow:hover,.btn-primary:hover{transform:translateY(-1px);box-shadow:0 5px 0 rgba(179,131,0,.4),0 12px 22px -4px rgba(255,204,51,.55)}
  .btn-primary:active{transform:translateY(2px);box-shadow:0 1px 0 rgba(179,131,0,.4),0 4px 8px -2px rgba(255,204,51,.3)}
  .btn-ghost-white{color:#fff;border:1.5px solid rgba(255,255,255,.3);background:transparent}
  .btn-ghost-white:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.55)}
  .btn-ghost{color:var(--brand)}
  .btn-ghost:hover{background:rgba(0,78,147,.06)}
  .btn-dark{background:var(--brand);color:#fff}
  .btn-dark:hover{background:var(--brand-deep)}
  .btn-lg{padding:15px 28px;font-size:15.5px;border-radius:999px}

  @media(max-width:1080px){.nav-links{display:none}}
  @media(max-width:720px){.header-badges{display:none}}

  /* ===== HERO ===== */
  .hero{position:relative;padding:60px 0 80px;
    background:
      radial-gradient(1000px 520px at 85% -10%,rgba(255,204,51,.22),transparent 60%),
      radial-gradient(900px 500px at 10% 100%,rgba(10,106,181,.5),transparent 60%),
      linear-gradient(135deg,#003872 0%,#004e93 50%,#005ea8 100%);
    color:#fff;overflow:hidden}
  .hero::before{content:"";position:absolute;inset:0;
    background:radial-gradient(ellipse 900px 500px at 50% 30%,rgba(255,255,255,.03),transparent 70%);
    pointer-events:none}
  .hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:50px;align-items:center;position:relative;z-index:1}

  .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);box-shadow:0 4px 14px -2px rgba(0,0,0,.2);font-size:13px;font-weight:500;color:rgba(255,255,255,.95);animation:fadeSlideIn .6s ease-out both}
  .eyebrow-badge{background:var(--accent);color:#1a1a1a;font-size:11px;font-weight:800;padding:3px 9px;border-radius:999px;letter-spacing:.04em}

  .hero h1{font-size:clamp(32px,4vw,50px);line-height:1.08;letter-spacing:-0.03em;font-weight:800;margin:18px 0 20px;color:#fff;animation:fadeSlideIn .7s ease-out .1s both}
  .hero h1 .highlight{position:relative;display:inline-block;color:var(--accent)}
  .hero h1 .highlight::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:14px;background:var(--accent);z-index:-1;opacity:.28;transform:skew(-8deg)}
  .hero .sub{font-size:18px;line-height:1.6;color:rgba(255,255,255,.82);max-width:560px;animation:fadeSlideIn .7s ease-out .2s both}

  .feature-chips{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px;max-width:580px;animation:fadeSlideIn .7s ease-out .3s both}
  .chip{display:flex;align-items:center;gap:10px;padding:10px 12px;background:rgba(255,255,255,.08);border-radius:10px;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(6px);font-size:12.5px;font-weight:600;color:#fff;transition:all .25s}
  .chip:hover{transform:translateY(-2px);background:rgba(255,255,255,.14);border-color:rgba(255,204,51,.4);box-shadow:0 8px 20px -6px rgba(0,0,0,.3)}
  .chip-ico{width:26px;height:26px;border-radius:7px;background:rgba(255,204,51,.18);border:1px solid rgba(255,204,51,.3);color:var(--accent);display:grid;place-items:center;flex-shrink:0}

  .hero-ctas{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap;animation:fadeSlideIn .7s ease-out .35s both}
  .hero-cta-primary{padding:15px 28px;font-size:15px;border-radius:999px}
  .hero-cta-ghost{display:inline-flex;align-items:center;gap:8px;padding:15px 26px;font-size:14.5px;font-weight:600;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);border-radius:999px;backdrop-filter:blur(6px);transition:all .22s}
  .hero-cta-ghost:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.38);transform:translateY(-1px)}

  .hero-trust{display:flex;gap:26px;margin-top:34px;flex-wrap:wrap;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);animation:fadeSlideIn .7s ease-out .5s both}
  .trust-item{display:flex;gap:10px;align-items:center}
  .trust-num{font-weight:800;font-size:24px;color:var(--accent);letter-spacing:-0.02em}
  .trust-label{font-size:12px;color:rgba(255,255,255,.7);line-height:1.25}

  /* ===== HERO DASHBOARD ===== */
  .hero-dash{position:relative;background:#fff;border-radius:20px;box-shadow:0 40px 80px -20px rgba(0,0,0,.45),0 20px 40px -12px rgba(0,0,0,.25);overflow:hidden;border:1px solid rgba(255,255,255,.6);animation:fadeSlideIn .8s ease-out .3s both;transform:perspective(1600px) rotateY(-4deg) rotateX(3deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
  .hero-dash:hover{transform:perspective(1600px) rotateY(-2deg) rotateX(1deg)}
  @media(max-width:980px){.hero-dash{transform:none}.hero-dash:hover{transform:none}}
  .hero-dash::before{content:"";position:absolute;inset:-3px;background:linear-gradient(135deg,rgba(255,204,51,.45),transparent 45%,rgba(10,106,181,.35));border-radius:22px;z-index:-1;filter:blur(14px);opacity:.75}
  .hd-top{background:var(--bg-soft);padding:11px 14px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--line)}
  .hd-dots{display:flex;gap:4px}
  .hd-dot{width:9px;height:9px;border-radius:50%}
  .hd-dot.r{background:#ff5f56}.hd-dot.y{background:#ffbd2e}.hd-dot.g{background:#27c93f}
  .hd-url{background:#fff;padding:4px 12px;border-radius:6px;font-family:'JetBrains Mono',monospace;font-size:11px;color:var(--muted);border:1px solid var(--line);margin-left:10px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hd-live{background:rgba(16,185,129,.12);color:var(--green);font-size:10px;font-weight:800;padding:4px 9px;border-radius:999px;display:inline-flex;gap:5px;align-items:center;letter-spacing:.06em}
  .hd-live .pulse-dot{width:6px;height:6px;background:var(--green);border-radius:50%;animation:pulse 1.5s ease-in-out infinite}
  .hd-body{padding:22px;background:linear-gradient(180deg,#fcfdff 0%,#f6f9fd 100%)}
  .hd-title-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}
  .hd-title-row .hd-label{font-size:10.5px;color:var(--muted);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
  .hd-title-row .hd-title{font-size:17px;font-weight:800;color:var(--ink);letter-spacing:-0.02em;margin-top:3px}
  .hd-ai-badge{background:linear-gradient(135deg,var(--accent),#ffa93f);color:#1a1a1a;font-size:10px;padding:5px 10px;border-radius:7px;font-weight:800;letter-spacing:.06em;display:inline-flex;align-items:center;gap:5px}
  .hd-ai-badge::before{content:"\2728";font-size:11px}

  .hd-kpis{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}
  .hd-kpi{background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 13px;position:relative;overflow:hidden}
  .hd-kpi::after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--brand);opacity:.12}
  .hd-kpi.accent::after{background:var(--accent);opacity:.5}
  .hd-kpi-lbl{font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.06em}
  .hd-kpi-val{font-size:24px;font-weight:800;color:var(--ink);letter-spacing:-0.025em;margin-top:3px;font-variant-numeric:tabular-nums;line-height:1}
  .hd-kpi-delta{font-size:10px;font-weight:700;margin-top:4px;display:flex;align-items:center;gap:3px}
  .hd-kpi-delta.up{color:var(--green)}.hd-kpi-delta.down{color:var(--red)}

  .hd-mix{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;margin-bottom:12px}
  .hd-mix-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
  .hd-mix-title{font-size:11px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.06em;font-weight:800}
  .hd-mix-sub{font-size:10px;color:var(--muted)}
  .hd-mix-row{display:grid;grid-template-columns:90px 1fr 32px;gap:8px;align-items:center;margin-bottom:7px}
  .hd-mix-row:last-child{margin-bottom:0}
  .hd-mix-lbl{font-size:11px;color:var(--ink-2);font-weight:600}
  .hd-mix-bar{height:7px;background:var(--bg-soft);border-radius:99px;overflow:hidden}
  .hd-mix-fill{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--brand),var(--brand-light));animation:barGrow 1.2s cubic-bezier(.2,.8,.2,1) both}
  .hd-mix-row:nth-child(2) .hd-mix-fill{animation-delay:.05s}
  .hd-mix-row:nth-child(3) .hd-mix-fill{animation-delay:.15s;background:linear-gradient(90deg,#1f7ac4,#3a96d9)}
  .hd-mix-row:nth-child(4) .hd-mix-fill{animation-delay:.25s;background:linear-gradient(90deg,var(--accent),#ffd66a)}
  .hd-mix-row:nth-child(5) .hd-mix-fill{animation-delay:.35s;background:linear-gradient(90deg,#7c3aed,#a374ff)}
  .hd-mix-val{font-size:11px;font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums;text-align:right}

  .hd-alerts{background:#fff;border:1px solid var(--line);border-radius:11px;padding:12px 14px}
  .hd-alerts-title{font-size:10px;color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:8px;display:flex;align-items:center;gap:6px}
  .hd-alerts-title .hd-at-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 1.5s ease-in-out infinite}
  .hd-alert{display:flex;gap:10px;align-items:center;font-size:12.5px;padding:7px 0;border-top:1px dashed var(--line)}
  .hd-alert:first-of-type{border-top:none;padding-top:0}
  .hd-alert-ic{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;flex-shrink:0;font-weight:900;font-size:12px;background:rgba(0,78,147,.08);color:var(--brand)}
  .hd-alert-text{flex:1;color:var(--ink);font-weight:600;line-height:1.35}
  .hd-alert-text small{display:block;font-weight:500;color:var(--muted);font-size:10.5px;margin-top:1px;letter-spacing:0}

  /* ===== BADGE STRIP ===== */
  .badge-row{display:grid;grid-template-columns:1.1fr repeat(4,1fr);gap:18px;align-items:center}
  .badge-label{font-family:'Epilogue',sans-serif;font-size:12px;font-weight:800;color:var(--ink-2);letter-spacing:.12em;line-height:1.5;text-transform:uppercase;padding-right:8px;border-right:1px solid var(--line)}
  .badge-label b{color:var(--ink);font-weight:900}
  .badge-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 12px;text-align:center}
  .badge-item:hover{transform:translateY(-1px)}
  .badge-platform{font-family:'Epilogue',sans-serif;font-size:15px;font-weight:800;color:var(--ink);line-height:1;letter-spacing:-.01em}
  .badge-platform .gg-g{color:#4285F4}
  .badge-platform .gg-o{color:#EA4335}
  .badge-platform .gg-o2{color:#FBBC05}
  .badge-platform .gg-g2{color:#34A853}
  .badge-platform .gg-l{color:#EA4335}
  .badge-platform .gg-e{color:#4285F4}
  .badge-platform.p-capterra{color:#FF7900}
  .badge-platform.p-g2{color:#FF492C}
  .badge-platform.p-ss{color:#1769FF}
  .badge-rating-row{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--ink-2)}
  .badge-rating-row .stars{color:var(--accent);letter-spacing:1.2px;font-size:13px;line-height:1}
  .badge-rating-row .rate{color:var(--ink);font-weight:800;font-variant-numeric:tabular-nums}
  .badge-rating-row .reviews{color:var(--muted);font-size:12px;font-weight:600}
  @media(max-width:980px){.badge-row{grid-template-columns:repeat(2,1fr)}.badge-label{grid-column:1/-1;text-align:center;border-right:0;border-bottom:1px solid var(--line);padding:0 0 14px}}
  @media(max-width:520px){.badge-row{grid-template-columns:1fr;gap:14px}}

  /* ===== METRICS DASHBOARD ===== */
  .metrics{padding:70px 0;background:var(--bg-soft);position:relative}
  .metrics::before{content:"";position:absolute;inset:0;background:radial-gradient(800px 400px at 50% 0%,rgba(0,78,147,.04),transparent 70%);pointer-events:none}
  .metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative;z-index:1}
  .metric-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.2,.8,.2,1)}
  .metric-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:rgba(0,78,147,.15)}
  .metric-card::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,var(--brand),var(--brand-light));transform:scaleX(0);transform-origin:left;transition:transform .4s}
  .metric-card:hover::before{transform:scaleX(1)}
  .metric-card.accent::before{background:linear-gradient(90deg,var(--accent),var(--accent-deep))}
  .metric-icon{width:42px;height:42px;border-radius:12px;background:rgba(0,78,147,.08);color:var(--brand);display:grid;place-items:center;margin-bottom:12px}
  .metric-card.accent .metric-icon{background:rgba(255,204,51,.18);color:var(--accent-deep)}
  .metric-val{font-family:'Epilogue',sans-serif;font-size:38px;font-weight:800;letter-spacing:-0.03em;color:var(--ink);line-height:1;font-variant-numeric:tabular-nums}
  .metric-val .unit{font-size:18px;color:var(--brand);margin-left:2px}
  .metric-lbl{font-size:13px;font-weight:700;color:var(--ink-2);margin-top:8px}
  .metric-sub{font-size:11.5px;color:var(--muted);margin-top:4px;line-height:1.4}
  @media(max-width:880px){.metrics-grid{grid-template-columns:repeat(2,1fr)}}

  /* ===== SECTION HEADS ===== */
  .section-head{text-align:center;max-width:780px;margin:0 auto 44px}
  .section-head .kicker{display:inline-block;font-size:12px;font-weight:800;color:var(--brand);background:rgba(0,78,147,.08);padding:6px 14px;border-radius:999px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:14px}
  .section-head h2{font-size:clamp(26px,2.6vw,36px);line-height:1.18;color:var(--ink);margin-bottom:14px}
  .section-head h2 em{font-style:normal;color:var(--brand);position:relative}
  .section-head .lead{font-size:16.5px;color:var(--ink-2);line-height:1.65}

  /* ===== INDUSTRY FILTER ===== */
  .filter-section{padding:36px 0 20px;background:#fff;position:sticky;top:74px;z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(6px);background:rgba(255,255,255,.96)}
  .filter-row{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;align-items:center}
  .filter-pill{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:#fff;border:1.5px solid var(--line);border-radius:999px;font-size:13px;font-weight:600;color:var(--ink-2);cursor:pointer;transition:all .22s cubic-bezier(.2,.8,.2,1);user-select:none}
  .filter-pill:hover{border-color:var(--brand);color:var(--brand);transform:translateY(-1px)}
  .filter-pill.active{background:var(--brand);color:#fff;border-color:var(--brand);box-shadow:0 6px 14px -4px rgba(0,78,147,.45)}
  .filter-pill .count{font-size:11px;font-weight:800;padding:2px 7px;border-radius:999px;background:rgba(0,78,147,.08);color:var(--brand);font-variant-numeric:tabular-nums}
  .filter-pill.active .count{background:rgba(255,204,51,.28);color:#1a1a1a}
  .filter-pill .ic{width:14px;height:14px;flex-shrink:0}

  /* ===== INDUSTRY SECTIONS ===== */
  .industries-wrap{padding:54px 0 80px;background:#fff}
  .industry-block{margin-bottom:54px;scroll-margin-top:140px;animation:fadeUp .6s cubic-bezier(.2,.8,.2,1) both}
  .industry-block.hidden{display:none}
  .industry-head{display:flex;align-items:center;gap:14px;margin-bottom:22px;padding-bottom:14px;border-bottom:2px solid var(--line);position:relative}
  .industry-head::after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--accent);border-radius:2px}
  .industry-ico{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,var(--brand),var(--brand-light));color:#fff;display:grid;place-items:center;box-shadow:0 6px 14px -4px rgba(0,78,147,.5);flex-shrink:0}
  .industry-ico svg{width:24px;height:24px}
  .industry-meta{flex:1;min-width:0}
  .industry-title{font-family:'Epilogue',sans-serif;font-size:22px;font-weight:800;color:var(--ink);letter-spacing:-0.02em;margin-bottom:3px}
  .industry-sub{font-size:13.5px;color:var(--muted);font-weight:500}
  .industry-count{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;color:var(--brand);background:rgba(0,78,147,.08);padding:6px 12px;border-radius:8px;letter-spacing:.04em;white-space:nowrap}

  .logo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
  .logo-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:26px 22px 18px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:210px;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.2,.8,.2,1);cursor:default}
  .logo-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(0,78,147,.0),rgba(255,204,51,.0));transition:all .3s;border-radius:inherit;pointer-events:none}
  .logo-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px -10px rgba(0,78,147,.18);border-color:rgba(0,78,147,.2)}
  .logo-card:hover::before{background:linear-gradient(135deg,rgba(0,78,147,.03),rgba(255,204,51,.06))}
  .logo-card img{width:auto;height:110px;max-width:92%;max-height:110px;object-fit:contain;object-position:center;display:block;margin:6px auto 0;filter:none;transition:transform .3s ease;position:relative;z-index:1;flex-shrink:0}
  .logo-card:hover img{transform:scale(1.04)}
  .logo-card .logo-name{font-size:13px;font-weight:700;color:var(--ink-1);margin-top:auto;padding-top:18px;text-align:center;position:relative;z-index:1;letter-spacing:.01em;line-height:1.3}
  .logo-card .lw-text-fallback,.logo-card.lw-text{font-family:'Epilogue',sans-serif;font-size:16px;font-weight:800;color:var(--brand);text-align:center;line-height:1.2;height:110px;display:flex;align-items:center;justify-content:center}
  .logo-card[data-featured="1"]{border-color:var(--accent);background:linear-gradient(180deg,#fffaeb 0%,#fff 60%)}
  .logo-card[data-featured="1"]::after{content:"\2605";position:absolute;top:12px;right:14px;color:var(--accent);font-size:15px;z-index:2}

  /* ===== VIDEO TESTIMONIALS ===== */
  .videos-section{padding:84px 0;background:#f7f9fc;color:var(--ink-1);position:relative;overflow:hidden}
  .videos-section::before{content:"";position:absolute;inset:0;background:
    radial-gradient(700px 350px at 10% 0%,rgba(0,78,147,.04),transparent 60%),
    radial-gradient(600px 300px at 90% 100%,rgba(255,204,51,.06),transparent 60%);
    pointer-events:none}
  .videos-section .section-head{position:relative;z-index:1}
  .videos-section .section-head .kicker{background:rgba(0,78,147,.08);color:var(--brand)}
  .videos-section .section-head h2{color:var(--ink-1)}
  .videos-section .section-head h2 em{color:var(--brand)}
  .videos-section .section-head .lead{color:var(--ink-2)}
  .videos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;position:relative;z-index:1}
  .video-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;cursor:pointer;transition:all .35s cubic-bezier(.2,.8,.2,1);position:relative;box-shadow:0 4px 18px -8px rgba(0,78,147,.12)}
  .video-card:hover{transform:translateY(-5px);border-color:rgba(0,78,147,.25);box-shadow:0 22px 50px -10px rgba(0,78,147,.22)}
  .video-thumb{position:relative;aspect-ratio:16/10;background:#e9eef5;overflow:hidden}
  .video-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
  .video-card:hover .video-thumb img{transform:scale(1.06)}
  .video-thumb::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.18) 100%);z-index:1;pointer-events:none}
  .video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:72px;height:72px;border-radius:50%;background:#fff;display:grid;place-items:center;z-index:2;box-shadow:0 12px 30px -6px rgba(0,0,0,.35);transition:all .3s}
  .video-card:hover .video-play{transform:translate(-50%,-50%) scale(1.08);background:var(--accent)}
  .video-play::after{content:"";width:0;height:0;border-style:solid;border-width:11px 0 11px 18px;border-color:transparent transparent transparent var(--brand);margin-left:4px;transition:border-color .3s}
  .video-card:hover .video-play::after{border-color:transparent transparent transparent #1a1a1a}

  /* Industry tag pill OVERLAID on top-left of video thumbnail */
  .video-tag-overlay{position:absolute;top:14px;left:14px;z-index:3;display:inline-flex;align-items:center;background:#fff;color:var(--ink-1);font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;padding:6px 12px;border-radius:6px;box-shadow:0 4px 10px -2px rgba(0,0,0,.18)}

  /* 247HRM x Customer logos OVERLAID on top-right of video thumbnail */
  .video-cobrand{position:absolute;top:14px;right:14px;z-index:3;display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.95);padding:6px 10px;border-radius:6px;box-shadow:0 4px 10px -2px rgba(0,0,0,.15);font-size:10px;font-weight:800;color:var(--brand);letter-spacing:.04em}
  .video-cobrand .cobrand-x{color:var(--ink-3);font-weight:600}

  /* WATCH button OVERLAID on bottom-right of video thumbnail */
  .video-watch-btn{position:absolute;bottom:14px;right:14px;z-index:3;display:inline-flex;align-items:center;gap:6px;background:var(--brand-navy);color:#fff;font-size:11px;font-weight:800;letter-spacing:.12em;padding:9px 14px;border-radius:6px;box-shadow:0 6px 14px -4px rgba(0,0,0,.35);transition:all .25s}
  .video-card:hover .video-watch-btn{background:var(--accent);color:#1a1a1a;transform:translateY(-1px)}

  .video-meta{padding:22px 22px 24px;position:relative;z-index:2;background:#fff}
  .video-name{font-family:'Epilogue',sans-serif;font-size:19px;font-weight:800;color:var(--ink-1);line-height:1.2;letter-spacing:-.01em;margin-bottom:5px}
  .video-role{font-size:12.5px;color:var(--ink-2);line-height:1.45;margin-bottom:16px;font-weight:500}
  .video-quote{font-size:13.5px;line-height:1.6;color:var(--ink-1);font-style:italic;padding-left:14px;border-left:3px solid var(--accent);margin:0;font-weight:400}

  .videos-foot{text-align:center;margin-top:40px;position:relative;z-index:1}
  .videos-foot-link{display:inline-flex;align-items:center;gap:10px;color:var(--brand);font-weight:700;font-size:14.5px;text-decoration:none;padding:12px 22px;border:1.5px solid rgba(0,78,147,.3);border-radius:999px;transition:all .25s;background:#fff}
  .videos-foot-link:hover{background:rgba(0,78,147,.05);border-color:var(--brand);transform:translateY(-1px)}
  .videos-foot-link svg{width:16px;height:16px}
  .cs-foot{text-align:center;margin-top:36px}
  @media(max-width:880px){.videos-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}}

  /* ===== CASE STUDIES ===== */
  .case-studies{padding:80px 0;background:#fff}
  .cs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
  .cs-card{background:linear-gradient(180deg,#fff 0%,var(--bg-soft) 100%);border:1px solid var(--line);border-radius:22px;padding:0;overflow:hidden;transition:all .35s cubic-bezier(.2,.8,.2,1);position:relative;display:flex;flex-direction:column}
  .cs-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -16px rgba(0,78,147,.22);border-color:rgba(0,78,147,.18)}
  .cs-top{padding:24px 28px 18px;display:flex;align-items:center;gap:16px;border-bottom:1px dashed var(--line)}
  .cs-logo-wrap{width:72px;height:72px;border-radius:14px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;padding:8px;flex-shrink:0}
  .cs-logo-wrap img{max-width:100%;max-height:100%;object-fit:contain}
  .cs-co{flex:1;min-width:0}
  .cs-co-name{font-family:'Epilogue',sans-serif;font-size:19px;font-weight:800;color:var(--ink);letter-spacing:-0.01em;line-height:1.2}
  .cs-co-meta{font-size:12.5px;color:var(--muted);margin-top:5px;font-weight:500}
  .cs-co-meta b{color:var(--brand);font-weight:700}
  .cs-industry-badge{display:inline-block;font-size:10.5px;font-weight:800;color:var(--brand);background:rgba(0,78,147,.08);padding:3px 9px;border-radius:6px;letter-spacing:.06em;text-transform:uppercase;margin-top:7px}

  .cs-body{padding:22px 28px 12px;flex:1;display:flex;flex-direction:column}
  .cs-stars{color:var(--accent);font-size:14px;letter-spacing:2px;margin-bottom:12px}
  .case-card-quote{font-size:15px;line-height:1.62;color:var(--ink);font-weight:500;position:relative;padding-left:18px;border-left:3px solid var(--accent);font-style:normal}
  .cs-modules{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}
  .cs-module{font-size:11px;font-weight:700;color:var(--ink-2);background:#fff;border:1px solid var(--line);padding:5px 10px;border-radius:6px}
  .cs-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:18px 28px;background:rgba(0,78,147,.04);border-top:1px solid var(--line)}
  .cs-stat{text-align:center}
  .cs-stat-val{font-family:'Epilogue',sans-serif;font-size:20px;font-weight:800;color:var(--brand);letter-spacing:-0.02em;font-variant-numeric:tabular-nums;line-height:1}
  .cs-stat-lbl{font-size:10.5px;color:var(--muted);font-weight:600;margin-top:5px;letter-spacing:.04em;text-transform:uppercase}
  @media(max-width:880px){.cs-grid{grid-template-columns:1fr}}

  /* ===== TEXT TESTIMONIALS ===== */
  .testi-section{padding:80px 0;background:var(--bg-soft)}
  .testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .testi-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;position:relative;transition:all .3s cubic-bezier(.2,.8,.2,1)}
  .testi-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px -12px rgba(0,78,147,.16);border-color:rgba(0,78,147,.16)}
  .testi-card .quote-mark{position:absolute;top:18px;right:24px;font-family:'Epilogue',sans-serif;font-size:60px;color:var(--accent);opacity:.32;line-height:1;font-weight:900}
  .testi-stars{color:var(--accent);font-size:14px;letter-spacing:2px;margin-bottom:14px}
  .testi-quote{font-size:14.5px;line-height:1.62;color:var(--ink);margin-bottom:18px;font-weight:500;font-style:normal}
  .testi-by{display:flex;flex-direction:column;gap:2px;padding-top:14px;border-top:1px dashed var(--line)}
  .testi-by-name{font-family:'Epilogue',sans-serif;font-weight:800;font-size:14px;color:var(--brand)}
  .testi-by-co{font-size:12px;color:var(--muted);font-weight:500}
  @media(max-width:980px){.testi-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:680px){.testi-grid{grid-template-columns:1fr;max-width:520px;margin:0 auto}}
  .testi-person{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px dashed var(--line)}
  .testi-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-light));color:#fff;font-family:'Epilogue',sans-serif;font-size:14px;font-weight:800;display:grid;place-items:center;flex-shrink:0;letter-spacing:.02em}
  .testi-name{font-size:13.5px;font-weight:800;color:var(--ink)}
  .testi-role{font-size:11.5px;color:var(--muted);font-weight:500;margin-top:1px}
  @media(max-width:980px){.testi-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:680px){.testi-grid{grid-template-columns:1fr}}

  /* ===== AWARDS ===== */
  .awards-section{padding:60px 0;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .awards-strip{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center}
  .aw-label{font-family:'Epilogue',sans-serif;font-size:12px;font-weight:800;color:var(--brand);letter-spacing:.16em;text-transform:uppercase;writing-mode:horizontal-tb;border-right:2px solid var(--accent);padding-right:24px}
  .aw-items{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
  .aw-item{display:flex;align-items:center;gap:10px;padding:14px 16px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;transition:all .25s}
  .aw-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm);border-color:rgba(255,204,51,.4)}
  .aw-icon{width:32px;height:32px;border-radius:8px;background:rgba(255,204,51,.18);color:var(--accent-deep);display:grid;place-items:center;font-size:14px;flex-shrink:0}
  .aw-text{font-size:11px;color:var(--ink-2);line-height:1.3}
  .aw-text b{display:block;color:var(--ink);font-size:12.5px;font-weight:800}
  .aw-text span{display:block;margin-top:2px}
  @media(max-width:980px){.awards-strip{grid-template-columns:1fr}.aw-label{border-right:none;border-bottom:2px solid var(--accent);padding-right:0;padding-bottom:10px}.aw-items{grid-template-columns:repeat(2,1fr)}}

  /* ===== FAQ ===== */
  .faq{padding:80px 0;background:var(--bg-soft)}
  .faq-list{max-width:880px;margin:0 auto}
  .faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:12px;overflow:hidden;transition:all .25s}
  .faq-item:hover{border-color:rgba(0,78,147,.18)}
  .faq-item summary{padding:20px 24px;font-family:'Epilogue',sans-serif;font-weight:700;font-size:16px;color:var(--ink);cursor:pointer;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-family:'Epilogue',sans-serif;font-size:24px;font-weight:300;color:var(--brand);transition:transform .25s}
  .faq-item[open] summary::after{transform:rotate(45deg)}
  .faq-item[open]{background:var(--bg-soft);border-color:rgba(0,78,147,.2)}
  .faq-item .a{padding:0 24px 22px;font-size:14.5px;color:var(--ink-2);line-height:1.65}

  /* ===== CTA FINAL ===== */
  .cta-final{padding:80px 0;background:linear-gradient(135deg,var(--brand-navy) 0%,var(--brand) 60%,var(--brand-light) 100%);color:#fff;text-align:center;position:relative;overflow:hidden}
  .cta-final::before{content:"";position:absolute;inset:0;background:
    radial-gradient(600px 300px at 20% 0%,rgba(255,204,51,.16),transparent 60%),
    radial-gradient(500px 300px at 80% 100%,rgba(10,106,181,.4),transparent 60%);
    pointer-events:none}
  .cta-final-inner{position:relative;z-index:1;max-width:720px;margin:0 auto}
  .cta-final h2{font-size:clamp(28px,3vw,40px);line-height:1.15;margin-bottom:16px;color:#fff}
  .cta-final h2 em{font-style:normal;color:var(--accent)}
  .cta-final p{font-size:16.5px;color:rgba(255,255,255,.82);margin-bottom:30px;line-height:1.55}
  .cta-final .btn-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
  .cta-final .btn-trust{display:flex;gap:32px;justify-content:center;flex-wrap:wrap;margin-top:34px;padding-top:28px;border-top:1px solid rgba(255,255,255,.14)}
  .cta-final .ct-item{display:flex;gap:8px;align-items:center;color:rgba(255,255,255,.82);font-size:13px;font-weight:500}
  .cta-final .ct-item svg{color:var(--accent);width:18px;height:18px;flex-shrink:0}

  /* ===== FOOTER ===== */
  footer{background:#0a1a30;color:rgba(255,255,255,.7);padding:64px 0 28px;border-top:3px solid var(--accent)}
  .foot-top{display:grid;grid-template-columns:1.6fr 1.1fr 1fr 1.1fr;gap:40px;margin-bottom:42px}
  .foot-logo{margin-bottom:18px}
  .foot-logo .lg-text{font-family:'Epilogue',sans-serif;font-weight:900;font-size:32px;letter-spacing:-.025em;color:var(--accent);display:inline-block;line-height:1}
  .foot-logo .lg-text sup{font-size:13px;color:rgba(255,204,51,.65);vertical-align:super;margin-left:2px;font-weight:700}
  .foot-addr{font-size:13.5px;line-height:1.65;margin:0 0 16px;color:rgba(255,255,255,.72);max-width:340px}
  .foot-contact{display:flex;flex-direction:column;gap:9px;margin-bottom:14px}
  .foot-contact a,.foot-contact-item{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;color:rgba(255,255,255,.78);transition:color .2s;line-height:1.4}
  .foot-contact a:hover{color:var(--accent)}
  .foot-contact .ic-wrap{width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;flex-shrink:0;transition:background .2s}
  .foot-contact a:hover .ic-wrap{background:rgba(255,204,51,.2)}
  .foot-contact svg{width:12px;height:12px;color:var(--accent)}
  .foot-offices{font-size:13px;color:rgba(255,255,255,.65);margin:14px 0 18px;line-height:1.6}
  .foot-offices b{color:#fff;font-weight:700;letter-spacing:.04em}
  .foot-social{display:flex;gap:10px;margin-top:6px}
  .foot-social a{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#fff;transition:all .22s}
  .foot-social a:hover{background:var(--accent);color:#1a1a1a;transform:translateY(-2px)}
  .foot-social svg{width:15px;height:15px}
  .foot-col h4{font-family:'Epilogue',sans-serif;font-size:13px;font-weight:800;color:#fff;letter-spacing:.14em;text-transform:uppercase;margin-bottom:22px;padding-bottom:14px;position:relative}
  .foot-col h4::after{content:"";display:block;position:absolute;bottom:0;left:0;width:36px;height:3px;background:var(--accent);border-radius:2px}
  .foot-col a{display:block;padding:6px 0;font-size:13.5px;color:rgba(255,255,255,.7);transition:color .2s,padding-left .22s}
  .foot-col a:hover{color:var(--accent);padding-left:4px}
  .foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);font-size:12.5px;color:rgba(255,255,255,.55);flex-wrap:wrap;gap:14px}
  .foot-bottom-links{display:flex;gap:18px}
  .foot-bottom-links a{color:rgba(255,255,255,.55);transition:color .2s}
  .foot-bottom-links a:hover{color:var(--accent)}
  @media(max-width:980px){.foot-top{grid-template-columns:1fr 1fr;gap:32px}}
  @media(max-width:560px){.foot-top{grid-template-columns:1fr}.foot-bottom{flex-direction:column;text-align:center}}

  /* ===== MODAL FORM ===== */
  .modal-backdrop{position:fixed;inset:0;z-index:200;background:rgba(0,20,45,.62);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .28s ease}
  .modal-backdrop.open{opacity:1;pointer-events:auto}
  .modal{background:#fff;border-radius:20px;max-width:520px;width:100%;max-height:96vh;overflow-y:auto;box-shadow:0 40px 100px rgba(0,0,0,.4);transform:scale(.96) translateY(14px);transition:transform .38s cubic-bezier(.2,.7,.2,1);position:relative}
  .modal-backdrop.open .modal{transform:scale(1) translateY(0)}
  .modal-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:50%;background:var(--bg-soft);display:grid;place-items:center;color:var(--ink-2);font-size:22px;line-height:1;transition:all .2s;z-index:2}
  .modal-close:hover{background:var(--line);color:var(--ink)}
  .modal-top{background:linear-gradient(135deg,var(--brand) 0%,var(--brand-light) 100%);color:#fff;padding:30px 34px 26px;border-radius:20px 20px 0 0;position:relative;overflow:hidden}
  .modal-top::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 0%,rgba(255,204,51,.22),transparent 55%);border-radius:inherit;pointer-events:none}
  .modal-eyebrow{display:inline-block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;background:rgba(255,204,51,.2);color:var(--accent);padding:5px 10px;border-radius:999px;position:relative}
  .modal-top h3{color:#fff;font-size:22px;font-weight:800;margin:12px 0 6px;position:relative;letter-spacing:-0.02em}
  .modal-top p{color:rgba(255,255,255,.82);font-size:14px;margin:0;position:relative;line-height:1.5}
  .modal-body{padding:26px 30px 28px}
  .modal-thanks{padding:50px 32px;text-align:center}
  .modal-thanks .tick{width:68px;height:68px;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-size:34px;margin:0 auto 18px;animation:tickPop .5s cubic-bezier(.2,1.4,.4,1)}
  .modal-thanks h3{font-size:1.35rem;color:var(--ink);margin-bottom:8px}
  .modal-thanks p{color:var(--ink-2);font-size:14.5px;line-height:1.55}

  .form-field{margin-bottom:14px;position:relative}
  .form-field label{display:block;font-size:11px;font-weight:700;color:var(--ink-2);margin-bottom:6px;letter-spacing:.04em;text-transform:uppercase}
  .form-field input,.form-field select,.form-field textarea{width:100%;padding:11px 14px;border:1.5px solid var(--line);border-radius:10px;font-family:inherit;font-size:14px;outline:none;transition:all .2s;background:#fff;color:var(--ink-1)}
  .form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(0,78,147,.1)}
  .form-field input.is-invalid,.form-field select.is-invalid,.form-field textarea.is-invalid{border-color:#d4351c;background:#fef6f5}
  .form-field input.is-invalid:focus,.form-field select.is-invalid:focus,.form-field textarea.is-invalid:focus{box-shadow:0 0 0 4px rgba(212,53,28,.12)}
  .form-field input.is-valid,.form-field select.is-valid,.form-field textarea.is-valid{border-color:#2e7d32}
  .form-err{display:none;color:#d4351c;font-size:12px;font-weight:600;line-height:1.4;margin-top:5px;padding-left:2px}
  .form-err.show{display:block;animation:errShake .3s cubic-bezier(.36,.07,.19,.97)}
  @keyframes errShake{0%,100%{transform:translateX(0)}25%{transform:translateX(-2px)}75%{transform:translateX(2px)}}
  .form-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%23004e93' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}
  .form-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .recaptcha-box{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;margin:6px 0 14px;font-size:13px;color:var(--ink-2)}
  .recaptcha-check{width:22px;height:22px;background:#fff;border:1.5px solid #c3cfd9;border-radius:4px;cursor:pointer;flex-shrink:0;position:relative;transition:all .2s}
  .recaptcha-check.checked{background:var(--brand);border-color:var(--brand)}
  .recaptcha-check.checked::after{content:"";position:absolute;left:6px;top:2px;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
  .recaptcha-logo{margin-left:auto;text-align:right;line-height:1}
  .r-brand{font-size:11px;font-weight:700;color:var(--muted)}
  .r-sub{font-size:9px;color:var(--muted);margin-top:1px}
  .form-submit{width:100%;padding:14px;font-size:15px;margin-top:2px}
  .form-tiny{font-size:11.5px;color:var(--muted);text-align:center;margin-top:10px;line-height:1.5}

  /* ===== VIDEO MODAL ===== */
  .video-modal{position:fixed;inset:0;z-index:200;background:rgba(0,10,30,.85);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:30px;opacity:0;pointer-events:none;transition:opacity .28s ease}
  .video-modal.open{opacity:1;pointer-events:auto}
  .vm-inner{position:relative;width:100%;max-width:960px;aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.6)}
  .vm-inner iframe{width:100%;height:100%;border:0}
  .vm-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--ink);font-size:22px;line-height:1;display:grid;place-items:center;cursor:pointer;transition:transform .2s}
  .vm-close:hover{transform:rotate(90deg)}

  /* ===== ANIMATIONS ===== */
  @keyframes fadeSlideIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
  @keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
  @keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.65}}
  @keyframes barGrow{from{width:0!important}}
  @keyframes tickPop{0%{transform:scale(0)}60%{transform:scale(1.15)}100%{transform:scale(1)}}
  @keyframes countUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
  @keyframes scrollLogos{from{transform:translateX(0)}to{transform:translateX(-50%)}}
  @media (prefers-reduced-motion: reduce){
    *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  }

  /* ===== REVEAL ON SCROLL ===== */
  .reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}
  .reveal.in{opacity:1;transform:translateY(0)}

  /* INDUSTRY NUDGE */
  .industry-nudge{margin-top:60px;background:var(--brand);background-image:linear-gradient(135deg,#004e93 0%,#003568 100%);border:1px solid rgba(255,204,51,.25);border-radius:20px;padding:40px 42px;color:#fff;position:relative;overflow:hidden;box-shadow:0 18px 40px -16px rgba(0,78,147,.45)}
  .industry-nudge::before{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;background:radial-gradient(circle,rgba(255,204,51,.22) 0%,transparent 70%);pointer-events:none}
  .industry-nudge::after{content:"";position:absolute;left:-40px;top:-40px;width:180px;height:180px;background:radial-gradient(circle,rgba(255,255,255,.06) 0%,transparent 70%);pointer-events:none}
  .industry-nudge-inner{display:flex;align-items:center;gap:32px;flex-wrap:wrap;justify-content:space-between;position:relative;z-index:1}
  .industry-nudge-text{flex:1;min-width:260px}
  .industry-nudge-h{font-family:'Epilogue',sans-serif;font-weight:800;font-size:26px;color:#fff;margin-bottom:10px;letter-spacing:-.01em;line-height:1.2}
  .industry-nudge p{color:rgba(255,255,255,.88);font-size:14.5px;line-height:1.6;margin:0}
  .industry-nudge .nudge-cta{flex-shrink:0;display:inline-flex;align-items:center;gap:10px;padding:16px 28px;background:var(--accent);color:#1a1a1a;font-weight:800;font-size:15px;letter-spacing:.01em;border-radius:999px;border:none;cursor:pointer;box-shadow:0 6px 0 rgba(179,131,0,.45),0 14px 26px -6px rgba(255,204,51,.55);transition:all .22s cubic-bezier(.2,.8,.2,1);white-space:nowrap}
  .industry-nudge .nudge-cta:hover{transform:translateY(-2px);box-shadow:0 8px 0 rgba(179,131,0,.45),0 18px 30px -6px rgba(255,204,51,.65)}
  .industry-nudge .nudge-cta:active{transform:translateY(2px);box-shadow:0 2px 0 rgba(179,131,0,.45),0 6px 12px -4px rgba(255,204,51,.4)}
  .industry-nudge .nudge-cta svg{width:18px;height:18px}

  /* AWARDS STRIP */
  .awards-section{padding:60px 0;background:var(--bg-soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
  .awards-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;max-width:1080px;margin:24px auto 0}
  .award-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 18px;text-align:center;transition:all .3s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column;align-items:center;gap:10px}
  .award-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 14px 28px -8px rgba(0,78,147,.12)}
  .award-ico{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#FFF5D6 0%,var(--accent) 100%);display:flex;align-items:center;justify-content:center;color:var(--brand)}
  .award-ico svg{width:24px;height:24px}
  .award-title{font-family:'Epilogue',sans-serif;font-weight:700;font-size:13px;color:var(--brand);line-height:1.3;letter-spacing:-.005em}
  .award-issuer{font-size:11.5px;color:var(--text-muted);font-weight:500}

  @media (max-width:980px){
    .awards-grid{grid-template-columns:repeat(3,1fr)}
  }
  @media (max-width:560px){
    .awards-grid{grid-template-columns:repeat(2,1fr)}
    .industry-nudge-inner{flex-direction:column;text-align:center;align-items:stretch}
  }

  /* ===== RESPONSIVE ===== */
  @media(max-width:980px){
    .hero{padding:48px 0 60px}
    .hero-grid{grid-template-columns:1fr;gap:36px}
    .hero-dash{max-width:520px;margin:0 auto}
    .feature-chips{grid-template-columns:1fr 1fr;max-width:100%}
    .industries-wrap{padding:40px 0 60px}
    .filter-section{padding:24px 0 14px;top:64px}
    .filter-row{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:6px;-webkit-overflow-scrolling:touch}
    .filter-pill{flex-shrink:0}
    .videos-section,.testi-section,.case-studies,.faq,.cta-final{padding:54px 0}
    .industry-head{flex-wrap:wrap;gap:10px}
    .industry-title{font-size:19px}
    .cs-stats{grid-template-columns:repeat(3,1fr)}
    .metrics-grid{gap:12px}
    .metric-val{font-size:30px}
  }
  @media(max-width:560px){
    .container{padding:0 18px}
    .hero h1{font-size:28px}
    .hero .sub{font-size:15.5px}
    .feature-chips{grid-template-columns:1fr}
    .logo-grid{grid-template-columns:repeat(2,1fr);gap:12px}
    .logo-card{padding:18px 14px 14px;min-height:160px}
    .logo-card img{height:80px;max-height:80px}
    .logo-card .lw-text-fallback{height:80px}
    .cs-top{flex-wrap:wrap}
    .cs-stats{grid-template-columns:repeat(3,1fr);gap:6px}
    .cs-stat-val{font-size:17px}
    .cta-final .btn-trust{gap:18px}
    .modal-top{padding:24px 22px 22px}
    .modal-body{padding:22px}
    .modal-top h3{font-size:18px}
  }


/* ===== MEDIUM LAYOUT OVERRIDE — section padding & heading sizes ===== */
section{padding:32px 0 !important}
.hero,header.hero,.hero-section{padding:40px 0 28px !important;min-height:auto !important}
.hero h1{font-size:24px !important;line-height:1.22 !important;margin:0 0 10px !important}
.hero p,.hero .sub,.hero-sub{font-size:14px !important;line-height:1.55 !important;margin:0 0 14px !important}
.hero .eyebrow,.hero-eyebrow{font-size:10.5px !important;margin:0 0 8px !important}

h1{font-size:22px !important;line-height:1.22 !important;margin:0 0 8px !important}
h2{font-size:20px !important;line-height:1.24 !important;margin:0 0 8px !important}
h3{font-size:16px !important;line-height:1.3 !important;margin:0 0 6px !important}
h4{font-size:12px !important;line-height:1.35 !important;margin:0 0 5px !important}
h5{font-size:11.5px !important;line-height:1.4 !important;margin:0 0 4px !important}
p{font-size:13.5px;line-height:1.55}

.section-head,.aag-head,.lnkmod-head,.cm-head{margin-bottom:20px !important}
.section-head h2,.aag-h,.aag-head h2{font-size:20px !important;line-height:1.22 !important;margin:0 0 6px !important}
.section-head .kicker,.aag-kicker,.eyebrow,.kicker{font-size:10px !important;letter-spacing:.12em}
.section-head p,.section-head .lead,.aag-sub,.lead{font-size:13px !important;line-height:1.55 !important;margin:0 !important}

.aag-num{font-size:26px !important;line-height:1.1 !important}
.aag-lbl{font-size:11.5px !important;line-height:1.35 !important}

.lnkmod-wrap{padding:28px 0 !important}
.lnkmod-head h2{font-size:19px !important}
.lnkmod-head p{font-size:12.5px !important}
.lnkmod-card{padding:14px 16px !important}
.lnkmod-card h3{font-size:13px !important;margin:0 0 4px !important}
.lnkmod-card p{font-size:12px !important;line-height:1.45 !important}
.lnkmod-arrow{top:14px !important;right:14px !important}

.trusted-by{padding:32px 0 !important}
.trusted-by .section-head h2,.trusted-by h2,.trusted-h{font-size:18px !important;margin:0 0 6px !important}
.trusted-by .section-head p,.trusted-by .lead,.trusted-sub{font-size:12.5px !important;margin:0 !important}
.logo-wall,.lw-grid{gap:14px !important}
.lw-item{padding:14px 14px !important;min-height:90px !important}
.lw-item img{max-height:58px !important}
.recognised-by{margin-top:24px !important;gap:14px !important}
.recognised-by-label,.rb-label{font-size:10px !important;letter-spacing:.12em}
.rb-item{padding:8px 14px !important;font-size:11.5px !important}

.ind-grid{gap:14px !important;margin-top:22px !important}
.ind-card{padding:16px !important;gap:10px !important;border-radius:12px !important}
.ind-top h3{font-size:14px !important}
.ind-block{padding:10px 12px !important}
.ind-label{font-size:10.5px !important;margin-bottom:6px !important}
.ind-block ul li{font-size:12px !important;line-height:1.5 !important;margin-bottom:3px !important}
.ind-proof{font-size:12px !important;line-height:1.5 !important;padding-top:3px !important}
.ind-stat{font-size:10.5px !important}
.ind-link{font-size:12px !important}

.faq-sources{padding:22px 24px !important;margin-top:24px !important}
.faq-sources-h{font-size:13px !important;margin:0 0 8px !important}
.faq-sources-intro{font-size:13px !important;margin:0 0 8px !important}
.faq-sources-list li{font-size:12.5px !important;line-height:1.55 !important;margin-bottom:5px !important}
.faq-sources-foot{font-size:12px !important;line-height:1.55 !important;margin-top:12px !important;padding-top:12px !important}

details summary{font-size:14px !important}
details p{font-size:13px !important;line-height:1.55 !important}

footer{padding-top:32px !important;padding-bottom:18px !important}
.foot-top{padding-bottom:22px !important;gap:26px !important}
.foot-brand .foot-logo img{height:34px !important}
.foot-addr{font-size:12px !important;line-height:1.55 !important;margin:0 0 10px !important}
.foot-contact a,.foot-offices,.foot-col a{font-size:12px !important}
.foot-col h4{font-size:11.5px !important;letter-spacing:.08em;margin:0 0 12px !important;padding-bottom:6px !important}
.foot-col a{padding:3px 0 !important}
.foot-bottom{padding-top:18px !important;font-size:11.5px !important}

.modal-top{padding:24px 28px 20px !important}
.modal-top h3,#modalTitle{font-size:20px !important;line-height:1.25 !important;margin:0 0 6px !important}
.modal-eyebrow{font-size:10px !important;padding:4px 9px !important;margin-bottom:8px !important}
.modal-top p{font-size:13px !important;line-height:1.5 !important}
.modal-body{padding:20px 28px 24px !important}
.form-field{margin-bottom:10px !important}
.form-field label{font-size:10.5px !important;margin-bottom:5px !important}
.form-field input,.form-field select,.form-field textarea{padding:9px 12px !important;font-size:13.5px !important;border-radius:8px !important}
.recaptcha-box{padding:10px 12px !important;margin:10px 0 12px !important;font-size:12px !important}
.form-submit,.btn-primary.form-submit{padding:11px 18px !important;font-size:13.5px !important}
.form-tiny{font-size:11.5px !important;margin-top:8px !important}

@media (max-width:980px){
  section{padding:24px 0 !important}
  .hero{padding:28px 0 20px !important}
  .hero h1{font-size:22px !important}
  h1{font-size:20px !important}
  h2{font-size:18px !important}
  .section-head h2{font-size:18px !important}
  .lnkmod-wrap{padding:22px 0 !important}
  footer{padding-top:24px !important}
  .modal-top{padding:18px 20px 14px !important}
  .modal-body{padding:16px 20px 18px !important}
}
@media (max-width:560px){
  section{padding:20px 0 !important}
  .hero h1{font-size:20px !important}
  h1{font-size:19px !important}
  h2{font-size:17px !important}
}


/* Footer certifications: uniform 70px height for visual balance */
.foot-certs{display:flex !important;flex-direction:column !important;gap:16px !important;align-items:flex-start !important;margin-top:4px}
.foot-cert-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.foot-cert{display:inline-flex !important;align-items:center;background:transparent !important;padding:0 !important;border-radius:0 !important;transition:transform .25s ease,filter .25s ease;flex-shrink:0;text-decoration:none}
.foot-cert:hover{transform:translateY(-2px);filter:drop-shadow(0 4px 10px rgba(255,204,51,.25))}
.foot-cert-row-bsi .foot-cert img{height:70px !important;width:auto !important;max-width:none !important;object-fit:contain !important;display:block}
.foot-cert-row-small .foot-cert img{height:70px !important;width:70px !important;max-width:70px !important;object-fit:contain !important;display:block;border-radius:50%}
@media(max-width:560px){
  .foot-cert-row-bsi .foot-cert img{height:60px !important}
  .foot-cert-row-small .foot-cert img{height:60px !important;width:60px !important;max-width:60px !important}
}

/* Badge strip: label centered on top, 4 review items below */
.badge-strip{background:radial-gradient(800px 300px at 90% 50%,rgba(255,204,51,.08),transparent 60%),radial-gradient(600px 300px at 10% 50%,rgba(0,78,147,.04),transparent 60%),linear-gradient(180deg,#fbfcff 0%,#f4f7fc 100%) !important;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 0 !important}
.badge-strip-inner{all:unset !important}
.badge-strip-label{display:block !important;text-align:center !important;font-size:12px !important;font-weight:700 !important;color:var(--muted) !important;letter-spacing:.12em !important;text-transform:uppercase !important;line-height:1.55 !important;max-width:780px !important;margin:0 auto 22px !important;padding:0 16px !important}
.badge-strip-label b{color:var(--brand) !important;font-weight:800}
.review-items{display:flex !important;justify-content:center !important;align-items:center !important;gap:42px !important;flex-wrap:wrap !important;max-width:1200px !important;margin:0 auto !important;padding:0 16px !important;grid-template-columns:initial !important}
.review-item{display:flex !important;flex-direction:column !important;gap:6px !important;padding:0 42px 0 0 !important;border:none !important;border-right:1px solid var(--line) !important;background:transparent !important;border-radius:0 !important;text-decoration:none !important;color:inherit !important;cursor:default !important}
.review-item:last-child{border-right:none !important;padding-right:0 !important}
.review-item:hover{transform:none !important;box-shadow:none !important;border-color:var(--line) !important}
.review-logo{height:22px;font-weight:700;color:var(--ink-2);font-size:17px;letter-spacing:-0.01em;display:flex;align-items:center;gap:0;line-height:1}
.review-logo.google span:nth-child(1){color:#4285F4}
.review-logo.google span:nth-child(2){color:#EA4335}
.review-logo.google span:nth-child(3){color:#FBBC04}
.review-logo.google span:nth-child(4){color:#4285F4}
.review-logo.google span:nth-child(5){color:#34A853}
.review-logo.google span:nth-child(6){color:#EA4335}
.review-logo.g2{color:#FF492C}
.review-logo.capterra{color:#FF9D28}
.review-logo.software{color:var(--brand)}
.review-stars{display:flex;gap:6px;align-items:center;font-size:13px;color:var(--muted) !important;white-space:nowrap}
.review-stars .stars{color:var(--accent) !important;letter-spacing:1px;font-size:13.5px}
.review-stars b{color:var(--ink) !important;font-weight:700;font-size:14px}
@media (max-width:960px){
  .review-items{gap:28px !important}
  .review-item{padding-right:28px !important}
}
@media (max-width:680px){
  .review-items{gap:20px !important}
  .review-item{padding-right:20px !important;border-right:none !important;border-bottom:1px solid var(--line) !important;padding-bottom:14px !important}
  .review-item:last-child{border-bottom:none !important;padding-bottom:0 !important}
  .badge-strip-label{font-size:11px !important}
}


/* ===== FOOTER CANONICAL CSS — defensive layer for consistent rendering ===== */
footer{background:#0a1a30 !important;color:rgba(255,255,255,.7) !important;padding:48px 0 24px !important;position:relative;overflow:hidden}
footer::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#004e93 0%,#FFCC33 50%,#004e93 100%)}
footer .container{max-width:1240px;margin:0 auto;padding:0 24px;width:auto}

.foot-top{display:grid !important;grid-template-columns:1.6fr 1fr 1fr 1.1fr !important;gap:36px !important;padding-bottom:32px !important;border-bottom:1px solid rgba(255,255,255,.08) !important}

.foot-brand{}
.foot-brand .foot-logo{margin-bottom:16px}
.foot-brand .foot-logo img{height:38px !important;width:auto !important;display:block !important;max-width:200px}
.foot-addr{font-size:12.5px !important;line-height:1.6 !important;margin:0 0 14px !important;color:rgba(255,255,255,.7);max-width:340px}
.foot-contact{display:flex !important;flex-direction:column !important;gap:8px !important;margin-bottom:12px}
.foot-contact a{display:inline-flex !important;align-items:center !important;gap:8px !important;font-size:12.5px !important;color:rgba(255,255,255,.85) !important;text-decoration:none !important;transition:color .2s}
.foot-contact a:hover{color:#FFCC33 !important}
.foot-contact svg{color:#FFCC33;flex-shrink:0}
.foot-offices{font-size:12.5px !important;color:rgba(255,255,255,.65);margin:0 0 14px;line-height:1.55}
.foot-offices b{color:rgba(255,255,255,.85);font-weight:700}
.foot-social{display:flex !important;gap:10px !important;flex-wrap:wrap !important;margin-top:10px}
.foot-social a{width:34px !important;height:34px !important;border-radius:50% !important;background:rgba(255,255,255,.08) !important;border:1px solid rgba(255,255,255,.12) !important;display:grid !important;place-items:center !important;color:#fff !important;text-decoration:none !important;transition:all .2s}
.foot-social a:hover{background:#FFCC33 !important;color:#0a1a30 !important;border-color:#FFCC33 !important;transform:translateY(-2px)}
.foot-social svg{stroke:currentColor;fill:currentColor;width:15px;height:15px}

.foot-col{}
.foot-col h4{font-size:12px !important;font-weight:800 !important;color:#fff !important;letter-spacing:.12em !important;text-transform:uppercase !important;margin:0 0 14px !important;padding-bottom:8px !important;position:relative}
.foot-col h4::after{content:"";display:block;position:absolute;bottom:0;left:0;width:28px;height:2px;background:#FFCC33}
.foot-col a{display:block !important;padding:4px 0 !important;font-size:12.5px !important;color:rgba(255,255,255,.7) !important;text-decoration:none !important;transition:color .2s,padding-left .22s}
.foot-col a:hover{color:#FFCC33 !important;padding-left:4px !important}

.foot-bottom{display:flex !important;justify-content:space-between !important;flex-wrap:wrap !important;gap:14px !important;padding-top:18px !important;margin-top:0 !important;font-size:11.5px !important;color:rgba(255,255,255,.55)}
.foot-bottom-links{display:flex !important;gap:18px !important;flex-wrap:wrap}
.foot-bottom-links a{color:rgba(255,255,255,.55) !important;text-decoration:none !important;transition:color .2s}
.foot-bottom-links a:hover{color:#FFCC33 !important}

@media (max-width:980px){
  .foot-top{grid-template-columns:1fr 1fr !important;gap:28px !important}
  .foot-brand{grid-column:1 / -1}
}
@media (max-width:560px){
  .foot-top{grid-template-columns:1fr !important;gap:22px !important}
  .foot-bottom{flex-direction:column;text-align:center}
}



/* ===== VIDEO TESTIMONIALS ===== */
  .vtesti-section{padding:84px 0;background:linear-gradient(180deg,#fff 0%,var(--bg-soft) 100%);position:relative;overflow:hidden}
  .vtesti-section::before{content:"";position:absolute;top:-100px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,rgba(255,204,51,0.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}
  .vtesti-head{text-align:center;max-width:780px;margin:0 auto 40px;position:relative;z-index:1}
  .vtesti-h{font-family:'Epilogue',sans-serif;font-size:clamp(26px,3.6vw,38px);font-weight:800;color:var(--brand-navy);line-height:1.15;margin:10px 0 14px;letter-spacing:-0.02em}
  .vtesti-sub{font-size:15px;color:var(--ink-2);line-height:1.6;margin:0 auto;max-width:680px}
  .vtesti-slider-wrap{position:relative;padding:0 8px}
  .vtesti-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 32px;scrollbar-width:thin;scrollbar-color:rgba(6,33,68,0.25) rgba(6,33,68,0.05);-webkit-overflow-scrolling:touch}
  .vtesti-track::-webkit-scrollbar{height:6px}
  .vtesti-track::-webkit-scrollbar-track{background:rgba(6,33,68,0.05);border-radius:3px}
  .vtesti-track::-webkit-scrollbar-thumb{background:rgba(6,33,68,0.25);border-radius:3px}
  .vtesti-track::-webkit-scrollbar-thumb:hover{background:rgba(6,33,68,0.4)}
  .vtesti-track:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:8px}
  .vt-card{flex:0 0 360px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 4px 14px rgba(6,33,68,0.06);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;display:flex;flex-direction:column;position:relative}
  .vt-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(6,33,68,0.14);border-color:rgba(255,204,51,0.5)}
  .vt-thumb{position:relative;aspect-ratio:16/9;background:var(--brand-navy);overflow:hidden;cursor:pointer}
  .vt-thumb img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .25s ease}
  .vt-card:hover .vt-thumb img{transform:scale(1.05);filter:brightness(0.92)}
  .vt-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;background:rgba(255,255,255,0.96);color:var(--brand);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 22px rgba(0,0,0,0.32);transition:all .25s ease;padding-left:5px;z-index:2}
  .vt-card:hover .vt-play{background:var(--accent);transform:translate(-50%,-50%) scale(1.08);color:var(--brand-navy);box-shadow:0 8px 26px rgba(255,204,51,0.5)}
  .vt-play:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  .vt-badge{position:absolute;top:12px;left:12px;background:rgba(255,255,255,0.95);color:var(--brand-navy);font-size:10.5px;font-weight:700;padding:5px 9px;border-radius:4px;letter-spacing:0.05em;text-transform:uppercase;z-index:2}
  .vt-duration{position:absolute;bottom:10px;right:10px;background:rgba(6,33,68,0.88);color:#fff;font-size:11px;font-weight:600;padding:4px 8px;border-radius:4px;letter-spacing:0.04em;text-transform:uppercase;z-index:2}
  .vt-meta{padding:18px 20px 22px;flex:1;display:flex;flex-direction:column}
  .vt-name{font-family:'Epilogue',sans-serif;font-size:17px;font-weight:800;color:var(--brand-navy);margin:0 0 3px;line-height:1.2;letter-spacing:-0.01em}
  .vt-role{font-size:12.5px;color:var(--muted);margin:0 0 12px;line-height:1.4;font-weight:500}
  .vt-quote{font-size:13.5px;color:var(--ink-2);line-height:1.5;margin:0 0 12px;font-style:italic;border-left:3px solid var(--accent);padding-left:12px}
  .vt-yt-link{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;color:var(--brand);text-decoration:none;margin-top:auto;padding-top:4px;letter-spacing:0.01em;transition:color .15s}
  .vt-yt-link:hover{color:var(--accent-deep);text-decoration:underline}
  .vt-yt-link svg{flex-shrink:0}

  .vtesti-arrow{position:absolute;top:32%;transform:translateY(-50%);width:50px;height:50px;border-radius:50%;background:#fff;border:1px solid var(--line);color:var(--brand-navy);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(6,33,68,0.14);z-index:3;transition:all .2s ease}
  .vtesti-arrow:hover:not(:disabled){background:var(--brand);color:#fff;border-color:var(--brand);transform:translateY(-50%) scale(1.08)}
  .vtesti-arrow:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
  .vtesti-arrow:disabled{opacity:0.35;cursor:not-allowed}
  .vtesti-prev{left:-22px}
  .vtesti-next{right:-22px}

  .vtesti-dots{display:flex;justify-content:center;gap:8px;margin-top:6px;flex-wrap:wrap;max-width:600px;margin-left:auto;margin-right:auto}
  .vtesti-dot{width:9px;height:9px;border-radius:50%;background:rgba(6,33,68,0.18);border:none;cursor:pointer;padding:0;transition:all .25s ease}
  .vtesti-dot:hover{background:rgba(6,33,68,0.35)}
  .vtesti-dot.active{background:var(--brand);width:28px;border-radius:5px}
  .vtesti-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

  /* Video lightbox modal */
  .vt-lightbox{position:fixed;inset:0;background:rgba(6,33,68,0.92);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:9999;display:none;align-items:center;justify-content:center;padding:24px;opacity:0;transition:opacity .25s ease}
  .vt-lightbox.open{display:flex;opacity:1}
  .vt-lightbox-inner{position:relative;width:100%;max-width:1100px;animation:vtLbIn .35s cubic-bezier(.2,.9,.3,1.2)}
  @keyframes vtLbIn{from{transform:scale(0.92);opacity:0}to{transform:scale(1);opacity:1}}
  .vt-lightbox-frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:14px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,0.5)}
  .vt-lightbox-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
  .vt-lightbox-close{position:absolute;top:-46px;right:0;width:38px;height:38px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.2);border-radius:50%;color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;padding:0}
  .vt-lightbox-close:hover{background:var(--accent);color:var(--brand-navy);border-color:var(--accent);transform:rotate(90deg)}
  .vt-lightbox-close:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
  .vt-lightbox-caption{margin-top:18px;text-align:center;color:rgba(255,255,255,0.9);font-size:14px}
  .vt-lightbox-caption strong{display:block;font-family:'Epilogue',sans-serif;font-size:18px;font-weight:700;color:#fff;margin-bottom:4px}
  .vt-lightbox-yt{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:9px 16px;background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.18);border-radius:999px;color:#fff;text-decoration:none;font-size:13px;font-weight:600;transition:.2s;letter-spacing:0.01em}
  .vt-lightbox-yt:hover{background:var(--accent);color:var(--brand-navy);border-color:var(--accent)}
  .vt-lightbox-yt svg{flex-shrink:0}
  @media(max-width:700px){
    .vt-lightbox{padding:16px}
    .vt-lightbox-close{top:-40px;width:34px;height:34px;font-size:22px}
  }
  body.vt-lb-open{overflow:hidden}

  @media(max-width:900px){
    .vt-card{flex:0 0 320px}
    .vtesti-prev{left:-8px}
    .vtesti-next{right:-8px}
    .vtesti-arrow{width:42px;height:42px}
    .vtesti-section{padding:60px 0}
  }
  @media(max-width:600px){
    .vt-card{flex:0 0 282px}
    .vtesti-arrow{display:none}
    .vtesti-track{padding-bottom:24px}
  }




/* pc-chrome v1 */
/* 1. kill the 1px sticky seam between the top strip and the main nav.
   The chrome CSS is injected twice with conflicting .topnav rules, so force
   a 1px overlap AND paint a navy bridge across the seam (never white).
   topstrip MUST stay position:sticky (it is a positioned element, so it still
   establishes the containing block for the ::after navy bridge) so the whole
   header pins to the top on scroll — do NOT revert it to position:relative. */
.topnav{margin-top:-1px !important}
.topstrip{position:sticky !important;top:0 !important;z-index:101}
.topstrip::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--brand-navy);pointer-events:none}
/* 2. footer tagline under the logo */
.foot-desc{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.62);margin:10px 0 4px;max-width:34ch}
/* 3. Products column in two balanced columns (h4 spans both) */
.foot-col-products{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.foot-col-products h4{grid-column:1 / -1}
@media (max-width:560px){.foot-col-products{grid-template-columns:1fr}}
/* 4. linked review cards keep the card styling */
a.trust-p{text-decoration:none;color:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s}
a.trust-p:hover{transform:translateY(-2px)}

/* feedback: clients logos as homepage-style scrolling marquee */
.logo-marquee{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.logo-marquee .marquee-track{display:flex;gap:18px;align-items:stretch;width:max-content;animation:clientsLogoMarquee 70s linear infinite}
.logo-marquee:hover .marquee-track{animation-play-state:paused}
.logo-marquee .marquee-track .logo-card{flex:0 0 210px}
@keyframes clientsLogoMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:560px){.logo-marquee .marquee-track .logo-card{flex:0 0 158px}}

a.review-item{text-decoration:none;color:inherit;cursor:pointer}

/* feedback: hero grid mobile overflow fix — let grid columns shrink instead of forcing track width past the viewport */
.hero-grid>*{min-width:0}
.hero-dash{max-width:100%}

/* feedback: mobile grid collapse fix — re-assert mobile collapse past the doubly-injected grid rules */
@media(max-width:768px){.testi-grid{grid-template-columns:1fr!important;max-width:560px;margin-left:auto;margin-right:auto}}

/* feedback: mobile safety net — no horizontal page scroll, responsive media */
html,body{overflow-x:clip}
img,svg,video,iframe{max-width:100%}

/* feedback: uniform type scale v2 — one font scale across every page (headings match 247hrm.com) */
body{font-family:'Inter',system-ui,sans-serif!important;font-size:16px!important;line-height:1.6!important}
p{font-size:16px!important;line-height:1.6!important}
h1,h2,h3,h4,h5,h6{font-family:'Epilogue',system-ui,sans-serif!important}
h1{font-size:clamp(28px,3.4vw,40px)!important;line-height:1.1!important}
h2{font-size:clamp(22px,2.6vw,30px)!important;line-height:1.2!important}
h3{font-size:clamp(17px,1.9vw,21px)!important;line-height:1.3!important}

/* feedback: h1 35px v1 — every page H1 (incl. hero) at a flat 35px */
h1{font-size:35px!important}
.hero h1,.ah-hero h1,.article h1,.legal-band h1{font-size:35px!important}

/* feedback: form sizes v2 — form headings 20px, fields 13px, field labels 10px (channel-partner scale) */
#demoModalTitle,#modalTitle,#formHeading,#demo-modal-title,.modal-h,.hf-h,.lead-card>h3,.form-card-top h2{font-size:20px!important;line-height:1.25!important}
.form-field input,.form-field select,.form-field textarea,.field input,.field select,.field textarea,.hf-field input,.hf-field select,.hf-field textarea,.mf-field input,.mf-field select,.mf-field textarea,.demo-input,.demo-select,.demo-textarea{font-size:13px!important}
.form-field label,.field label,.hf-field label,.mf-field label{font-size:10px!important}

/* feedback: section rhythm v1 — 50px top/bottom on content sections (heroes keep their padding) */
section:not(.hero):not(.ah-hero):not([class*="hero"]){padding-top:50px!important;padding-bottom:50px!important}

/* gpu-hardening-v1: GPU-compositing crash mitigation */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}*{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

















/* vtlb-fix */
/* Compact, always-visible video popup (modal lives at body end so no transformed
   ancestor traps the fixed positioning). Sized to fit every screen and keep the
   close button on-screen. */
.vt-lightbox{padding:16px !important}
.vt-lightbox-inner{max-width:640px !important;width:min(640px,94vw) !important}
.vt-lightbox-frame{max-height:62vh}
/* Solid, high-contrast close button pinned to the viewport corner so it's clearly
   visible at any popup/screen size. */
.vt-lightbox-close{position:fixed !important;top:14px !important;right:14px !important;width:44px !important;height:44px !important;background:#fff !important;color:#0b1220 !important;border:0 !important;opacity:1 !important;box-shadow:0 4px 16px rgba(0,0,0,.45) !important;font-size:26px !important;z-index:10001 !important}
.vt-lightbox-close:hover{background:var(--accent,#FFCC33) !important;color:#062144 !important;transform:rotate(90deg) !important}
@media(max-width:560px){.vt-lightbox-close{top:10px !important;right:10px !important;width:40px !important;height:40px !important}}
/* vtlb-fix-end */

/* hrm reveal-safe v2 */
@keyframes hrmRevealSafe{from{opacity:1;transform:translateY(24px)}to{opacity:1;transform:none}}
.reveal{animation:hrmRevealSafe .7s ease-out both}
@media(prefers-reduced-motion:reduce){.reveal{animation-duration:.01s}}

/* hrm hero no-fade v1 */
@keyframes hrmHeroNF{from{opacity:1;transform:translateY(16px)}to{opacity:1;transform:none}}
.hero .eyebrow,.hero>.eyebrow,.hero h1,.hero .sub,.hero .hero-sub,.hero-trust,.hero-ctas,.hero-cta,.hero-dash,.hero-card,.hero-visual,.hero-badges,.hero-stats{animation-name:hrmHeroNF!important}
@media(prefers-reduced-motion:reduce){.hero .eyebrow,.hero>.eyebrow,.hero h1,.hero .sub,.hero .hero-sub,.hero-trust,.hero-ctas,.hero-cta,.hero-dash,.hero-card,.hero-visual,.hero-badges,.hero-stats{animation-duration:.01s!important}}

/* hrm hero optional-fonts v1 */
/* AUTO-GENERATED by scripts/gen-hero-fonts.mjs — homepage hero LCP fonts. */
@font-face{font-family:'InterHero';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/epilogue-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/epilogue-800.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:900;font-display:optional;src:url(/fonts/epilogue-900.woff2) format('woff2')}
@font-face {font-family: "InterHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 90.4365%;descent-override: 22.518%;line-gap-override: 0%;size-adjust: 107.1194%;}
@font-face {font-family: "EpilogueHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 71.148%;descent-override: 21.1643%;line-gap-override: 0%;size-adjust: 111.0361%;}
.hero h1,.hero h1 .highlight,.hero h1 .strike,.mih-title{font-family:EpilogueHero, "EpilogueHero Fallback", Arial,system-ui,sans-serif!important}
.hero .sub,.hero-eyebrow,.hero-miniproof,.hero-miniproof-stat,.hero-cta-row .btn,.mih-sub{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
.hero .eyebrow,.hero .eyebrow-badge,.hero .chip,.hero .feature-chips,.hero .hero-sub,.hero-trust,.hero-ctas .btn,.hero-ctas button{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
/* end hrm hero optional-fonts */


/* vtlb-fix */
/* Compact, always-visible video popup (modal lives at body end so no transformed
   ancestor traps the fixed positioning). Sized to fit every screen and keep the
   close button on-screen. */
.vt-lightbox{padding:16px !important}
.vt-lightbox-inner{max-width:640px !important;width:min(640px,94vw) !important}
.vt-lightbox-frame{max-height:62vh}
/* Solid, high-contrast close button pinned to the viewport corner so it's clearly
   visible at any popup/screen size. */
.vt-lightbox-close{position:fixed !important;top:14px !important;right:14px !important;width:44px !important;height:44px !important;background:#fff !important;color:#0b1220 !important;border:0 !important;opacity:1 !important;box-shadow:0 4px 16px rgba(0,0,0,.45) !important;font-size:26px !important;z-index:10001 !important}
.vt-lightbox-close:hover{background:var(--accent,#FFCC33) !important;color:#062144 !important;transform:rotate(90deg) !important}
@media(max-width:560px){.vt-lightbox-close{top:10px !important;right:10px !important;width:40px !important;height:40px !important}}
/* vtlb-fix-end */


/* pc-chrome v1 */
/* 1. kill the 1px sticky seam between the top strip and the main nav.
   The chrome CSS is injected twice with conflicting .topnav rules, so force
   a 1px overlap AND paint a navy bridge across the seam (never white).
   topstrip MUST stay position:sticky (it is a positioned element, so it still
   establishes the containing block for the ::after navy bridge) so the whole
   header pins to the top on scroll — do NOT revert it to position:relative. */
.topnav{margin-top:-1px !important}
.topstrip{position:sticky !important;top:0 !important;z-index:101}
.topstrip::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--brand-navy);pointer-events:none}
/* 2. footer tagline under the logo */
.foot-desc{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.62);margin:10px 0 4px;max-width:34ch}
/* 3. Products column in two balanced columns (h4 spans both) */
.foot-col-products{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.foot-col-products h4{grid-column:1 / -1}
@media (max-width:560px){.foot-col-products{grid-template-columns:1fr}}
/* 4. linked review cards keep the card styling */
a.trust-p{text-decoration:none;color:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s}
a.trust-p:hover{transform:translateY(-2px)}

/* feedback: mobile safety net — no horizontal page scroll, responsive media */
html,body{overflow-x:clip}
img,svg,video,iframe{max-width:100%}

/* feedback: uniform type scale v2 — one font scale across every page (headings match 247hrm.com) */
body{font-family:'Inter',system-ui,sans-serif!important;font-size:16px!important;line-height:1.6!important}
p{font-size:16px!important;line-height:1.6!important}
h1,h2,h3,h4,h5,h6{font-family:'Epilogue',system-ui,sans-serif!important}
h1{font-size:clamp(28px,3.4vw,40px)!important;line-height:1.1!important}
h2{font-size:clamp(22px,2.6vw,30px)!important;line-height:1.2!important}
h3{font-size:clamp(17px,1.9vw,21px)!important;line-height:1.3!important}

/* feedback: h1 35px v1 — every page H1 (incl. hero) at a flat 35px */
h1{font-size:35px!important}
.hero h1,.ah-hero h1,.article h1,.legal-band h1{font-size:35px!important}

/* feedback: form sizes v2 — form headings 20px, fields 13px, field labels 10px (channel-partner scale) */
#demoModalTitle,#modalTitle,#formHeading,#demo-modal-title,.modal-h,.hf-h,.lead-card>h3,.form-card-top h2{font-size:20px!important;line-height:1.25!important}
.form-field input,.form-field select,.form-field textarea,.field input,.field select,.field textarea,.hf-field input,.hf-field select,.hf-field textarea,.mf-field input,.mf-field select,.mf-field textarea,.demo-input,.demo-select,.demo-textarea{font-size:13px!important}
.form-field label,.field label,.hf-field label,.mf-field label{font-size:10px!important}

/* feedback: section rhythm v1 — 50px top/bottom on content sections (heroes keep their padding) */
section:not(.hero):not(.ah-hero):not([class*="hero"]){padding-top:50px!important;padding-bottom:50px!important}

/* gpu-hardening-v1: GPU-compositing crash mitigation */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}*{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* hrm hero optional-fonts v1 */
/* AUTO-GENERATED by scripts/gen-hero-fonts.mjs — homepage hero LCP fonts. */
@font-face{font-family:'InterHero';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/epilogue-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/epilogue-800.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:900;font-display:optional;src:url(/fonts/epilogue-900.woff2) format('woff2')}
@font-face {font-family: "InterHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 90.4365%;descent-override: 22.518%;line-gap-override: 0%;size-adjust: 107.1194%;}
@font-face {font-family: "EpilogueHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 71.148%;descent-override: 21.1643%;line-gap-override: 0%;size-adjust: 111.0361%;}
.hero h1,.hero h1 .highlight,.hero h1 .strike,.mih-title{font-family:EpilogueHero, "EpilogueHero Fallback", Arial,system-ui,sans-serif!important}
.hero .sub,.hero-eyebrow,.hero-miniproof,.hero-miniproof-stat,.hero-cta-row .btn,.mih-sub{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
.hero .eyebrow,.hero .eyebrow-badge,.hero .chip,.hero .feature-chips,.hero .hero-sub,.hero-trust,.hero-ctas .btn,.hero-ctas button{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
/* end hrm hero optional-fonts */





/* pc-chrome v1 */
/* 1. kill the 1px sticky seam between the top strip and the main nav.
   The chrome CSS is injected twice with conflicting .topnav rules, so force
   a 1px overlap AND paint a navy bridge across the seam (never white).
   topstrip MUST stay position:sticky (it is a positioned element, so it still
   establishes the containing block for the ::after navy bridge) so the whole
   header pins to the top on scroll — do NOT revert it to position:relative. */
.topnav{margin-top:-1px !important}
.topstrip{position:sticky !important;top:0 !important;z-index:101}
.topstrip::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--brand-navy);pointer-events:none}
/* 2. footer tagline under the logo */
.foot-desc{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.62);margin:10px 0 4px;max-width:34ch}
/* 3. Products column in two balanced columns (h4 spans both) */
.foot-col-products{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.foot-col-products h4{grid-column:1 / -1}
@media (max-width:560px){.foot-col-products{grid-template-columns:1fr}}
/* 4. linked review cards keep the card styling */
a.trust-p{text-decoration:none;color:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s}
a.trust-p:hover{transform:translateY(-2px)}

/* vtlb-fix */
/* Compact, always-visible video popup (modal lives at body end so no transformed
   ancestor traps the fixed positioning). Sized to fit every screen and keep the
   close button on-screen. */
.vt-lightbox{padding:16px !important}
.vt-lightbox-inner{max-width:640px !important;width:min(640px,94vw) !important}
.vt-lightbox-frame{max-height:62vh}
/* Solid, high-contrast close button pinned to the viewport corner so it's clearly
   visible at any popup/screen size. */
.vt-lightbox-close{position:fixed !important;top:14px !important;right:14px !important;width:44px !important;height:44px !important;background:#fff !important;color:#0b1220 !important;border:0 !important;opacity:1 !important;box-shadow:0 4px 16px rgba(0,0,0,.45) !important;font-size:26px !important;z-index:10001 !important}
.vt-lightbox-close:hover{background:var(--accent,#FFCC33) !important;color:#062144 !important;transform:rotate(90deg) !important}
@media(max-width:560px){.vt-lightbox-close{top:10px !important;right:10px !important;width:40px !important;height:40px !important}}
/* vtlb-fix-end */

/* feedback: mobile safety net — no horizontal page scroll, responsive media */
html,body{overflow-x:clip}
img,svg,video,iframe{max-width:100%}

/* feedback: uniform type scale v2 — one font scale across every page (headings match 247hrm.com) */
body{font-family:'Inter',system-ui,sans-serif!important;font-size:16px!important;line-height:1.6!important}
p{font-size:16px!important;line-height:1.6!important}
h1,h2,h3,h4,h5,h6{font-family:'Epilogue',system-ui,sans-serif!important}
h1{font-size:clamp(28px,3.4vw,40px)!important;line-height:1.1!important}
h2{font-size:clamp(22px,2.6vw,30px)!important;line-height:1.2!important}
h3{font-size:clamp(17px,1.9vw,21px)!important;line-height:1.3!important}

/* feedback: h1 35px v1 — every page H1 (incl. hero) at a flat 35px */
h1{font-size:35px!important}
.hero h1,.ah-hero h1,.article h1,.legal-band h1{font-size:35px!important}

/* feedback: form sizes v2 — form headings 20px, fields 13px, field labels 10px (channel-partner scale) */
#demoModalTitle,#modalTitle,#formHeading,#demo-modal-title,.modal-h,.hf-h,.lead-card>h3,.form-card-top h2{font-size:20px!important;line-height:1.25!important}
.form-field input,.form-field select,.form-field textarea,.field input,.field select,.field textarea,.hf-field input,.hf-field select,.hf-field textarea,.mf-field input,.mf-field select,.mf-field textarea,.demo-input,.demo-select,.demo-textarea{font-size:13px!important}
.form-field label,.field label,.hf-field label,.mf-field label{font-size:10px!important}

/* feedback: section rhythm v1 — 50px top/bottom on content sections (heroes keep their padding) */
section:not(.hero):not(.ah-hero):not([class*="hero"]){padding-top:50px!important;padding-bottom:50px!important}

/* gpu-hardening-v1: GPU-compositing crash mitigation */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}*{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* hrm hero optional-fonts v1 */
/* AUTO-GENERATED by scripts/gen-hero-fonts.mjs — homepage hero LCP fonts. */
@font-face{font-family:'InterHero';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/epilogue-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/epilogue-800.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:900;font-display:optional;src:url(/fonts/epilogue-900.woff2) format('woff2')}
@font-face {font-family: "InterHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 90.4365%;descent-override: 22.518%;line-gap-override: 0%;size-adjust: 107.1194%;}
@font-face {font-family: "EpilogueHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 71.148%;descent-override: 21.1643%;line-gap-override: 0%;size-adjust: 111.0361%;}
.hero h1,.hero h1 .highlight,.hero h1 .strike,.mih-title{font-family:EpilogueHero, "EpilogueHero Fallback", Arial,system-ui,sans-serif!important}
.hero .sub,.hero-eyebrow,.hero-miniproof,.hero-miniproof-stat,.hero-cta-row .btn,.mih-sub{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
.hero .eyebrow,.hero .eyebrow-badge,.hero .chip,.hero .feature-chips,.hero .hero-sub,.hero-trust,.hero-ctas .btn,.hero-ctas button{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
/* end hrm hero optional-fonts */





/* pc-chrome v1 */
/* 1. kill the 1px sticky seam between the top strip and the main nav.
   The chrome CSS is injected twice with conflicting .topnav rules, so force
   a 1px overlap AND paint a navy bridge across the seam (never white).
   topstrip MUST stay position:sticky (it is a positioned element, so it still
   establishes the containing block for the ::after navy bridge) so the whole
   header pins to the top on scroll — do NOT revert it to position:relative. */
.topnav{margin-top:-1px !important}
.topstrip{position:sticky !important;top:0 !important;z-index:101}
.topstrip::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:3px;background:var(--brand-navy);pointer-events:none}
/* 2. footer tagline under the logo */
.foot-desc{font-size:12.5px;line-height:1.5;color:rgba(255,255,255,.62);margin:10px 0 4px;max-width:34ch}
/* 3. Products column in two balanced columns (h4 spans both) */
.foot-col-products{display:grid;grid-template-columns:1fr 1fr;column-gap:24px}
.foot-col-products h4{grid-column:1 / -1}
@media (max-width:560px){.foot-col-products{grid-template-columns:1fr}}
/* 4. linked review cards keep the card styling */
a.trust-p{text-decoration:none;color:inherit;cursor:pointer;transition:transform .18s,box-shadow .18s}
a.trust-p:hover{transform:translateY(-2px)}

/* feedback: mobile safety net — no horizontal page scroll, responsive media */
html,body{overflow-x:clip}
img,svg,video,iframe{max-width:100%}

/* feedback: uniform type scale v2 — one font scale across every page (headings match 247hrm.com) */
body{font-family:'Inter',system-ui,sans-serif!important;font-size:16px!important;line-height:1.6!important}
p{font-size:16px!important;line-height:1.6!important}
h1,h2,h3,h4,h5,h6{font-family:'Epilogue',system-ui,sans-serif!important}
h1{font-size:clamp(28px,3.4vw,40px)!important;line-height:1.1!important}
h2{font-size:clamp(22px,2.6vw,30px)!important;line-height:1.2!important}
h3{font-size:clamp(17px,1.9vw,21px)!important;line-height:1.3!important}

/* feedback: h1 35px v1 — every page H1 (incl. hero) at a flat 35px */
h1{font-size:35px!important}
.hero h1,.ah-hero h1,.article h1,.legal-band h1{font-size:35px!important}

/* feedback: form sizes v2 — form headings 20px, fields 13px, field labels 10px (channel-partner scale) */
#demoModalTitle,#modalTitle,#formHeading,#demo-modal-title,.modal-h,.hf-h,.lead-card>h3,.form-card-top h2{font-size:20px!important;line-height:1.25!important}
.form-field input,.form-field select,.form-field textarea,.field input,.field select,.field textarea,.hf-field input,.hf-field select,.hf-field textarea,.mf-field input,.mf-field select,.mf-field textarea,.demo-input,.demo-select,.demo-textarea{font-size:13px!important}
.form-field label,.field label,.hf-field label,.mf-field label{font-size:10px!important}

/* feedback: section rhythm v1 — 50px top/bottom on content sections (heroes keep their padding) */
section:not(.hero):not(.ah-hero):not([class*="hero"]){padding-top:50px!important;padding-bottom:50px!important}

/* gpu-hardening-v1: GPU-compositing crash mitigation */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}*{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}}

/* vtlb-fix */
/* Compact, always-visible video popup (modal lives at body end so no transformed
   ancestor traps the fixed positioning). Sized to fit every screen and keep the
   close button on-screen. */
.vt-lightbox{padding:16px !important}
.vt-lightbox-inner{max-width:640px !important;width:min(640px,94vw) !important}
.vt-lightbox-frame{max-height:62vh}
/* Solid, high-contrast close button pinned to the viewport corner so it's clearly
   visible at any popup/screen size. */
.vt-lightbox-close{position:fixed !important;top:14px !important;right:14px !important;width:44px !important;height:44px !important;background:#fff !important;color:#0b1220 !important;border:0 !important;opacity:1 !important;box-shadow:0 4px 16px rgba(0,0,0,.45) !important;font-size:26px !important;z-index:10001 !important}
.vt-lightbox-close:hover{background:var(--accent,#FFCC33) !important;color:#062144 !important;transform:rotate(90deg) !important}
@media(max-width:560px){.vt-lightbox-close{top:10px !important;right:10px !important;width:40px !important;height:40px !important}}
/* vtlb-fix-end */

/* hrm hero optional-fonts v1 */
/* AUTO-GENERATED by scripts/gen-hero-fonts.mjs — homepage hero LCP fonts. */
@font-face{font-family:'InterHero';font-style:normal;font-weight:400;font-display:optional;src:url(/fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:500;font-display:optional;src:url(/fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:600;font-display:optional;src:url(/fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:'InterHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:700;font-display:optional;src:url(/fonts/epilogue-700.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:800;font-display:optional;src:url(/fonts/epilogue-800.woff2) format('woff2')}
@font-face{font-family:'EpilogueHero';font-style:normal;font-weight:900;font-display:optional;src:url(/fonts/epilogue-900.woff2) format('woff2')}
@font-face {font-family: "InterHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 90.4365%;descent-override: 22.518%;line-gap-override: 0%;size-adjust: 107.1194%;}
@font-face {font-family: "EpilogueHero Fallback";src: local('Arial'), local('ArialMT');ascent-override: 71.148%;descent-override: 21.1643%;line-gap-override: 0%;size-adjust: 111.0361%;}
.hero h1,.hero h1 .highlight,.hero h1 .strike,.mih-title{font-family:EpilogueHero, "EpilogueHero Fallback", Arial,system-ui,sans-serif!important}
.hero .sub,.hero-eyebrow,.hero-miniproof,.hero-miniproof-stat,.hero-cta-row .btn,.mih-sub{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
.hero .eyebrow,.hero .eyebrow-badge,.hero .chip,.hero .feature-chips,.hero .hero-sub,.hero-trust,.hero-ctas .btn,.hero-ctas button{font-family:InterHero, "InterHero Fallback", Arial,system-ui,sans-serif!important}
/* end hrm hero optional-fonts */
