/* compliance-training-page.css — Phase 4 extraction 2026-04-17. */

/* §1 */
.skip-link{position:absolute;top:-100%;left:16px;z-index:9999;background:#07192E;color:#fff;padding:12px 24px;border-radius:0 0 8px 8px;font-family:"Inter",system-ui,sans-serif;font-size:14px;font-weight:600;text-decoration:none;transition:top .15s;}
    .skip-link:focus{top:0;}
    *,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
    :focus-visible{outline:2px solid #29ABE2;outline-offset:3px;border-radius:6px;}
    a,button,[role="button"]{cursor:pointer;transition:all 0.2s ease;}
    @media(max-width:768px){button,[role="button"]{min-height:44px;} input,select,textarea{min-height:44px;}}
    @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;} .reveal{opacity:1!important;transform:none!important;}}
    :root{
      --blue:#1479A3;--blue-dark:#1366A0;--navy:#07192E;--navy-2:#0D2B45;
      --accent:#F43F5E;--accent-dark:#BE123C;--accent-light:rgba(244,63,94,.12);
      --white:#FFFFFF;--off:#F4F8FC;--border:#E2ECF4;
      --text:#0D1829;--muted:#3D5266;--orange:#F97316;
      --font-h:'Poppins',system-ui,sans-serif;--font-b:'Inter',system-ui,sans-serif;
      --ease:cubic-bezier(.22,1,.36,1);
      --shadow-sm:0 1px 4px rgba(7,25,46,.06);
      --shadow-md:0 4px 24px rgba(7,25,46,.08),0 2px 8px rgba(7,25,46,.04);
      --shadow-lg:0 16px 56px rgba(7,25,46,.10),0 4px 16px rgba(7,25,46,.06);
      --shadow-xl:0 32px 80px rgba(7,25,46,.14),0 8px 24px rgba(7,25,46,.08);
      --glow-orange:0 0 0 1px rgba(249,115,22,.12),0 8px 24px rgba(249,115,22,.20);
    }
    html{scroll-behavior:smooth;font-size:16px;}
    body{font-family:var(--font-b);background:var(--white);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.6;}
    a{text-decoration:none;}
    /* Header styles inherited from assets/site.css (normalized 2026-04-07) */
    /* MOBILE DRAWER */
    .mob-overlay{display:none;position:fixed;inset:0;z-index:200;background:rgba(7,25,46,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .25s;pointer-events:none;}
    .mob-overlay.open{opacity:1;pointer-events:all;}
    .mob-drawer{position:fixed;top:0;right:-320px;bottom:0;z-index:250;width:300px;background:var(--white);box-shadow:var(--shadow-xl);transition:right .32s var(--ease);display:flex;flex-direction:column;}
    .mob-drawer.open{right:0;}
    .mob-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border);}
    .mob-head img{height:34px;}
    .mob-close{width:44px;height:44px;border:1px solid var(--border);background:var(--off);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--muted);transition:all .15s;font-family:system-ui;}
    .mob-close:hover{background:var(--border);color:var(--text);}
    .mob-nav{flex:1;padding:8px 0;overflow-y:auto;}
    .mob-nav a{display:flex;align-items:center;padding:15px 20px;font-size:15px;font-weight:500;color:var(--text);border-bottom:1px solid var(--off);transition:all .15s;}
    .mob-nav a:hover{background:var(--off);color:var(--blue-dark);padding-left:26px;}
    .mob-nav a.active{color:var(--accent-dark);font-weight:700;background:var(--accent-light);}
    .mob-footer{padding:18px 20px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:10px;}
    .mob-cta{font-size:14.5px;font-weight:700;text-align:center;text-decoration:none;padding:13px 24px;border-radius:10px;min-height:48px;display:flex;align-items:center;justify-content:center;transition:all .15s;}
    .mob-cta-primary{background:var(--orange);color:#fff;}
    a.mob-cta-primary{color:#fff!important;}
    .mob-cta-secondary{background:var(--off);color:var(--text);border:1px solid var(--border);}
    /* BREADCRUMB */
    .breadcrumb{max-width:1200px;margin:0 auto;padding:16px 32px 0;font-size:13px;color:var(--muted);}
    .breadcrumb a{color:var(--blue);text-decoration:none;}
    .breadcrumb a:hover{color:var(--blue-dark);}
    .breadcrumb span{margin:0 6px;opacity:.5;}
    /* HERO */
    .comp-hero{background-image:radial-gradient(rgba(244,63,94,.05) 1px,transparent 1px),radial-gradient(ellipse 70% 50% at 50% 40%,rgba(244,63,94,.07),transparent 70%),linear-gradient(160deg,var(--navy) 0%,var(--navy-2) 100%);background-size:20px 20px,100% 100%,100% 100%;position:relative;overflow:hidden;padding:52px 32px 48px;}
    .comp-hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:60px 60px;pointer-events:none;}
    .hero-bg-img{position:absolute;inset:0;background:image-set(url('/generated-images/compliance-training-hero.avif') type('image/avif'), url('/generated-images/compliance-training-hero.webp') type('image/webp'), url('/generated-images/compliance-training-hero.jpeg') type('image/jpeg')) center / cover no-repeat;animation:kenBurns 20s ease-in-out infinite alternate;will-change:transform;z-index:0;opacity:0.30;}
    @keyframes kenBurns{0%{transform:scale(1);}100%{transform:scale(1.05);}}
    .hero-orb-1{position:absolute;top:-20%;right:-10%;width:560px;height:560px;background:radial-gradient(circle,rgba(244,63,94,.12) 0%,transparent 70%);border-radius:50%;pointer-events:none;z-index:0;animation:orbDrift 14s ease-in-out infinite;}
    .hero-orb-2{position:absolute;bottom:-20%;left:-10%;width:480px;height:480px;background:radial-gradient(circle,rgba(190,18,60,.07) 0%,transparent 70%);border-radius:50%;pointer-events:none;z-index:0;}
    @keyframes orbDrift{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(22px,-16px) scale(1.07);}66%{transform:translate(-16px,10px) scale(.95);}}
    @media(prefers-reduced-motion:reduce){.hero-bg-img,.hero-orb-1{animation:none;}}
    .hero-container{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;position:relative;z-index:2;}
    .hero-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(244,63,94,.18);color:#FCA5A5;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:20px;}
    .hero-h1{font-family:var(--font-h);font-size:2.4rem;font-size:clamp(2.4rem,4.5vw,3.6rem);font-weight:800;line-height:1.1;letter-spacing:-.03em;color:var(--white);margin-bottom:18px;}
    .hero-cycle-wrap{display:inline-block;white-space:nowrap;vertical-align:baseline;line-height:1.1;}
    .hero-cycle-word{display:inline-block;background:linear-gradient(90deg,#F97316 0%,#9333EA 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
    @keyframes cycleExit{0%{opacity:1;transform:translateY(0);}100%{opacity:0;transform:translateY(-12px);}}
    @keyframes cycleEnter{0%{opacity:0;transform:translateY(12px);}100%{opacity:1;transform:translateY(0);}}
    .cycle-exit{animation:cycleExit .28s var(--ease) forwards;}
    .cycle-enter{animation:cycleEnter .32s var(--ease) forwards;}
    .hero-sub{font-size:18px;color:rgba(255,255,255,.75);max-width:540px;line-height:1.65;margin-bottom:28px;}
    .hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:36px;}
    .btn-primary{font-family:var(--font-b);font-size:16px;font-weight:600;color:#fff;background:var(--orange);padding:14px 28px;border-radius:12px;text-decoration:none;transition:all .2s var(--ease);min-height:52px;display:inline-flex;align-items:center;gap:8px;border:none;box-shadow:0 4px 14px rgba(249,115,22,.18);}
    .btn-primary:hover{background:var(--orange-deep);transform:translateY(-2px);}
    a.btn-primary{color:#fff!important;}
    .btn-ghost{font-size:16px;font-weight:600;color:#fff;background:transparent;padding:14px 28px;border-radius:12px;text-decoration:none;transition:all .2s var(--ease);min-height:52px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(255,255,255,.3);}
    .btn-ghost:hover{background:rgba(255,255,255,.1);transform:translateY(-2px);}
    a.btn-ghost{color:#fff!important;}
    .hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
    .hero-trust-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:16px 18px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);min-height:158px;box-sizing:border-box;}
    /* CLS guard: reserve 2-line height on the trust-chip row so font-swap wrap doesn't shift layout. */
    .hero-container .trust-row-canonical{min-height:86px;}
    .hero-trust-item strong{display:block;font-family:var(--font-h);font-size:14px;font-weight:700;color:#fff;margin-bottom:4px;}
    .hero-trust-item span{font-size:13px;color:rgba(255,255,255,.6);line-height:1.5;}
    /* Training progress visual */
    .hero-visual{display:flex;align-items:center;justify-content:center;}
    .training-card{width:100%;max-width:380px;background:rgba(255,255,255,.08);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.12);border-radius:20px;overflow:hidden;box-shadow:0 0 0 .5px rgba(255,255,255,.15),0 4px 24px rgba(0,0,0,.2);}
    .tc-header{padding:16px 20px 12px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;}
    .tc-title{font-family:var(--font-h);font-size:14px;font-weight:700;color:rgba(255,255,255,.9);}
    {font-size:11px;font-weight:600;background:rgba(244,63,94,.2);color:#FCA5A5;padding:4px 10px;border-radius:20px;}
    .training-modules{padding:14px 20px 18px;display:grid;gap:10px;}
    .module{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.06);}
    .module-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;}
    .module-name{font-size:13px;font-weight:500;color:rgba(255,255,255,.85);}
    .module-pct{font-size:12px;font-weight:700;color:#FCA5A5;}
    .progress-bar{height:4px;background:rgba(255,255,255,.1);border-radius:2px;overflow:hidden;}
    .progress-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--accent),#FF6B8A);}
    /* STATS */
    .stats-strip{padding:52px 32px;}
    .stats-container{max-width:1200px;margin:0 auto;}
    .stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
    .stat-card{background:var(--off);border:1px solid var(--border);border-radius:20px;padding:28px 24px;text-align:center;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s;}
    .stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--accent),var(--accent-dark));}
    .stat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);}
    .stat-num{font-family:var(--font-h);font-size:2rem;font-size:clamp(2rem,3vw,2.8rem);font-weight:800;line-height:1;margin-bottom:6px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
    {font-size:14px;color:var(--muted);line-height:1.4;}
    /* SECTIONS */
    .section{padding:72px 32px;}
    .section-alt{background:var(--off);}
    .sec{max-width:1200px;margin:0 auto;}
    /* Fix 2026-05-31: this page is svc-composed now, and the svc <section> bands
       reuse the .sec class. The legacy cap above was squeezing them to 1136px
       (32px section padding inside the 1200 cap), making this page narrow
       ("thin") vs every other service page. svc bands must be full-width with
       their inner capping at 1200 — match the siblings. Scoped so the legacy
       fallback template (plain .sec wrappers) is untouched. */
    main .sec[class*="svc-"]{max-width:none;}
    .sec-head{margin-bottom:48px;}
    .sec-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:var(--accent-light);color:var(--accent-dark);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px;}
    .sec-h2{font-family:var(--font-h);font-size:1.8rem;font-size:clamp(1.8rem,2.8vw,2.6rem);font-weight:800;line-height:1.15;letter-spacing:-.03em;color:var(--navy);margin-bottom:16px;}
    .sec-sub{font-size:17px;color:var(--muted);line-height:1.7;max-width:640px;}
    /* GOLDEN CARD pattern */
    .feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1180px;margin-left:auto;margin-right:auto}
    .feat-card{position:relative;padding:30px 28px 26px 36px;border-radius:10px;isolation:isolate;background:#FFFFFF;border:1px solid rgba(13,24,41,.09);box-shadow:0 1px 2px rgba(13,24,41,.04),0 8px 24px -12px rgba(13,24,41,.18),0 16px 40px -20px rgba(13,24,41,.12);transition:border-color 180ms ease-out,box-shadow 180ms ease-out,transform 180ms ease-out;overflow:hidden;--card-color:#1366A0;--card-rgb:23,121,184}
    .feat-card:nth-child(6n+1){--card-color:#1366A0;--card-rgb:23,121,184}
    .feat-card:nth-child(6n+2){--card-color:#7B21A2;--card-rgb:123,33,162}
    .feat-card:nth-child(6n+3){--card-color:#E8125C;--card-rgb:232,18,92}
    .feat-card:nth-child(6n+4){--card-color:#10B981;--card-rgb:16,185,129}
    .feat-card:nth-child(6n+5){--card-color:#F59E0B;--card-rgb:245,158,11}
    .feat-card:nth-child(6n+6){--card-color:#0EA5E9;--card-rgb:14,165,233}
    .feat-card::before{content:'';position:absolute;left:0;top:20px;bottom:20px;width:3px;background:linear-gradient(180deg,transparent 0%,var(--card-color) 15%,var(--card-color) 85%,transparent 100%);border-radius:0 3px 3px 0;transition:width 180ms ease-out,top 180ms ease-out,bottom 180ms ease-out;z-index:2}
    .feat-card::after{content:'';position:absolute;top:-80px;left:-80px;width:260px;height:260px;background:radial-gradient(circle,rgba(var(--card-rgb),.12) 0%,transparent 65%);pointer-events:none;z-index:0;opacity:.55;transition:opacity 180ms ease-out}
    .feat-card:hover{border-color:rgba(var(--card-rgb),.42);transform:translateY(-2px);box-shadow:0 1px 2px rgba(13,24,41,.05),0 14px 32px -14px rgba(var(--card-rgb),.22),0 18px 36px -18px rgba(13,24,41,.18)}
    .feat-card:hover::before{width:4px;top:10px;bottom:10px}
    .feat-card:hover::after{opacity:1}
    .feat-card > *{position:relative;z-index:1}
    /* Premium gradient SVG art slot — foreground illustration */
    .feat-icon{position:relative !important;top:auto;right:auto;width:64px !important;height:64px !important;background:none !important;border:none;border-radius:0;color:var(--card-color);opacity:1;margin:0 0 18px 0;padding:0;z-index:1;display:block;transition:transform 240ms ease-out}
    .feat-icon svg{width:100% !important;height:100% !important;overflow:visible}
    .feat-card:hover .feat-icon{transform:scale(1.04)}
    .feat-card h3{font-family:var(--font-h);font-size:22px;font-weight:800;letter-spacing:-.022em;color:#0D1829;line-height:1.15;margin:12px 0 10px;max-width:18ch}
    .feat-card p{font-family:var(--font-b);font-size:13.5px;font-weight:500;color:#5B6B7E;line-height:1.6;margin:0;max-width:42ch}
    /* STATE REQUIREMENTS */
    .state-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
    .state-card{background:var(--white);border:1px solid var(--border);border-radius:16px;padding:22px;display:flex;gap:16px;align-items:flex-start;box-shadow:var(--shadow-sm);}
    .state-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
    .state-icon.required{background:var(--accent-light);}
    .state-icon.required svg{stroke:var(--accent-dark);}
    .state-icon.recommended{background:rgba(41,171,226,.1);}
    .state-icon.recommended svg{stroke:var(--blue-dark);}
    .state-icon svg{width:22px;height:22px;fill:none;stroke-width:2;}
    .state-content h3{font-family:var(--font-h);font-size:1rem;font-weight:700;color:var(--navy);margin-bottom:6px;}
    .state-content p{font-size:13.5px;color:var(--muted);line-height:1.6;}
    {display:inline-block;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;margin-bottom:8px;}
    .state-tag.required{background:var(--accent-light);color:var(--accent-dark);}
    .state-tag.recommended{background:rgba(41,171,226,.1);color:var(--blue-dark);}
    /* COMPARISON */
    .compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
    .compare-col{border-radius:20px;padding:32px;border:1px solid;}
    .compare-col.without{background:#FFF5F5;border-color:#FCA5A5;}
    .compare-col.with{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);border-color:rgba(255,255,255,.1);}
    .compare-col h3{font-family:var(--font-h);font-size:1.15rem;font-weight:700;margin-bottom:20px;}
    .compare-col.without h3{color:#DC2626;}
    .compare-col.with h3{color:#fff;}
    .compare-list{display:grid;gap:12px;list-style:none;padding:0;margin:0;}
    .compare-list li{font-size:14.5px;line-height:1.5;display:flex;gap:10px;align-items:flex-start;}
    .compare-col.without .compare-list li{color:#7F1D1D;}
    .compare-col.with .compare-list li{color:rgba(255,255,255,.85);}
    .compare-list li::before{content:'';flex-shrink:0;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;margin-top:1px;}
    .compare-col.without .compare-list li::before{content:'✕';background:#FCA5A5;color:#DC2626;}
    .compare-col.with .compare-list li::before{content:'✓';background:rgba(34,197,94,.2);color:#86EFAC;}
    /* CTA BAND */
    .cta-section{padding:60px 32px;}
    .cta-band{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-2) 100%);border-radius:24px;padding:52px 48px;display:flex;align-items:center;justify-content:space-between;gap:32px;max-width:1200px;margin:0 auto;}
    .cta-band h2{font-family:var(--font-h);font-size:1.6rem;font-size:clamp(1.6rem,2.4vw,2.2rem);font-weight:800;color:#fff;margin-bottom:12px;}
    .cta-band p{font-size:16px;color:rgba(255,255,255,.72);max-width:52ch;line-height:1.65;}
    .cta-band-actions{display:flex;gap:14px;flex-shrink:0;flex-wrap:wrap;}
    /* FIX-7 2026-04-15: brand-orange on CTAs, was off-brand magenta. Updated 2026-05-19: #C2410C burnt → #F97316 bright per buttons rule. */
    .btn-accent, .btn-primary {font-size:16px;font-weight:700;color:#fff;background:#F97316;padding:14px 28px;border-radius:12px;text-decoration:none;min-height:52px;display:inline-flex;align-items:center;transition:all .2s;box-shadow:0 4px 16px rgba(249,115,22,.25);}
    .btn-accent:hover, .btn-primary:hover {transform:translateY(-2px);background:#9A330A;box-shadow:0 8px 24px rgba(249,115,22,.35);}
    a.btn-accent, a.btn-primary {color:#fff!important;}
    /* FAQ */
    .faq-grid{display:grid;gap:12px;max-width:860px;}
    details.faq-item{background:var(--white);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:box-shadow .2s;}
    details.faq-item[open]{box-shadow:var(--shadow-md);}
    details.faq-item summary{padding:22px 24px;cursor:pointer;list-style:none;font-family:var(--font-h);font-size:1.05rem;font-weight:700;color:var(--navy);display:flex;justify-content:space-between;align-items:center;}
    details.faq-item summary::-webkit-details-marker{display:none;}
    details.faq-item summary::after{content:'+';font-size:20px;font-weight:400;color:var(--muted);transition:transform .2s;}
    details.faq-item[open] summary::after{transform:rotate(45deg);}
    .faq-body{padding:0 24px 22px;font-size:15px;color:var(--muted);line-height:1.7;}
    /* ── FOOTER ──────────────────────────────────────────── */
    footer{background:#040E1A;padding:64px 32px 32px;color:rgba(255,255,255,.4);position:relative}
    footer::before{content:'';position:absolute;top:-120px;left:0;right:0;height:120px;background:linear-gradient(180deg,transparent 0%,#040E1A 100%);pointer-events:none}
    .ft{max-width:1200px;margin:0 auto}
    .ft-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}
    .ft-logo img{height:36px;width:auto;display:block;margin-bottom:14px}
    {font-family:var(--font-b);font-size:13.5px;color:rgba(255,255,255,.30);line-height:1.65;margin-bottom:20px}
    .ft-phone{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-b);font-size:14.5px;font-weight:700;color:var(--blue);text-decoration:none;transition:color .15s}
    .ft-phone:hover{color:#7DD4F5}
    .ft-col h3{font-family:var(--font-b);font-size:11px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:rgba(255,255,255,.22);margin-bottom:16px}
    .ft-col a{display:block;font-family:var(--font-b);font-size:14px;color:rgba(255,255,255,.65);text-decoration:none;margin-bottom:10px;transition:color .15s}
    .ft-col a:hover{color:#fff}
    .ft-bottom{border-top:1px solid rgba(255,255,255,.06);padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-family:var(--font-b);font-size:12.5px}
    .ft-legal{display:flex;gap:20px}
    .ft-legal a{color:rgba(255,255,255,.26);text-decoration:none;transition:color .15s}
    .ft-legal a:hover{color:#fff}
    /* REVEAL */
    .reveal{opacity:0;transform:translateY(24px);transition:opacity .6s var(--ease),transform .6s var(--ease);}
    .reveal.revealed{opacity:1;transform:none;}
    /* CALLBACK WIDGET */
    .callback-widget{position:fixed;bottom:96px;right:24px;z-index:400;display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
    .callback-trigger{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--blue-dark));border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(41,171,226,.4);transition:transform .2s,box-shadow .2s;}
    .callback-trigger:hover{transform:scale(1.08);box-shadow:0 8px 28px rgba(41,171,226,.5);}
    .callback-trigger svg{width:22px;height:22px;stroke:#fff;stroke-width:2;fill:none;}
    .callback-panel{background:#fff;border-radius:18px;box-shadow:var(--shadow-xl);padding:24px;width:280px;display:none;flex-direction:column;gap:12px;border:1px solid var(--border);}
    .callback-panel.open{display:flex;}
    .callback-panel h3{font-family:var(--font-h);font-size:1rem;font-weight:700;color:var(--navy);}
    .callback-panel p{font-size:13px;color:var(--muted);line-height:1.6;}
    .callback-panel input{border:1px solid var(--border);border-radius:10px;padding:11px 14px;font-size:14px;font-family:var(--font-b);color:var(--text);width:100%;outline:none;transition:border-color .15s;}
    .callback-panel input:focus{border-color:var(--blue);}
    .callback-submit{background:var(--blue);color:#fff;border:none;border-radius:10px;padding:12px;font-size:14px;font-weight:700;cursor:pointer;font-family:var(--font-b);transition:background .15s;}
    .callback-submit:hover{background:var(--blue-dark);}
    .callback-success{text-align:center;padding:8px 0;}
    .callback-success svg{width:40px;height:40px;stroke:var(--blue);stroke-width:1.5;fill:none;margin:0 auto 12px;display:block;}
    .callback-success h3{font-family:var(--font-h);font-size:.95rem;font-weight:700;color:var(--navy);margin-bottom:6px;}
    .callback-success p{font-size:13px;color:var(--muted);}
    /* MOB STICKY CTA */
    .mob-sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;z-index:190;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-top:1px solid rgba(226,236,244,.6);padding:12px 16px;gap:10px;box-shadow:0 -4px 20px rgba(7,25,46,.08);}
    .mob-cta-btn{font-size:14px;font-weight:700;padding:12px 18px;border-radius:10px;text-align:center;text-decoration:none;transition:all .15s;flex:1;display:flex;align-items:center;justify-content:center;}
    .mob-cta-primary{background:var(--orange);color:#fff;}
    a.mob-cta-primary{color:#fff!important;}
    .mob-cta-secondary{background:var(--off);color:var(--text);border:1px solid var(--border);}
    @media(min-width:769px){.mob-sticky-cta{display:none!important;}}
    /* ── TEAM OF SPECIALISTS SECTION ─────────────────────────── */
    .svc-advisor-sec { background: linear-gradient(180deg,#FFFFFF 0%,#F8FBFE 100%); position: relative; }
    .svc-advisor-sec::before { content:''; position:absolute; inset:0; background: radial-gradient(ellipse 60% 70% at 15% 30%, rgba(41,171,226,.06) 0%, transparent 60%), radial-gradient(ellipse 50% 60% at 85% 70%, rgba(249,115,22,.04) 0%, transparent 55%); pointer-events:none; }
    .svc-advisor-sec > * { position: relative; }
    .svc-advisor-sec .eyebrow {
      font-family: var(--font-b); font-size: 11px; font-weight: 700;
      letter-spacing: 1.5px; text-transform: uppercase; color: var(--blue-dark);
      margin-bottom: 10px;
    }
    .svc-advisor-sec .sec-h2 {
      font-family: var(--font-h); font-size: clamp(24px, 3.2vw, 36px);
      font-weight: 800; color: var(--navy); letter-spacing: -.6px; line-height: 1.2;
    }
    .sec-960 {
      max-width: 960px; margin: 0 auto; padding: 0 32px;
    }
    .svc-adv-layout { display: grid; grid-template-columns: 45fr 55fr; gap: 56px; align-items: center; }
    .svc-adv-photo-wrap { display: flex; justify-content: center; position: relative; }
    .svc-adv-photo-bg { display: none; }
    .svc-adv-photo { width: 100%; max-width: 360px; min-height: 380px; border-radius: 20px; background: #fff; border: 1px solid var(--border); box-shadow: 0 4px 14px rgba(7,25,46,.05), 0 24px 64px rgba(7,25,46,.10); display: flex; flex-direction: column; padding: 28px 26px 24px; position: relative; overflow: hidden; }
    .svc-adv-photo::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background: linear-gradient(90deg, var(--blue) 0%, var(--blue-dark) 100%); }
    .svc-adv-photo svg { display:none; }
    .adv-card-header { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
    .adv-card-avatar { width:56px; height:56px; border-radius:50%; background:linear-gradient(135deg,var(--blue) 0%,var(--blue-dark) 100%); color:#fff; display:flex; align-items:center; justify-content:center; font-family:var(--font-h); font-size:22px; font-weight:800; flex-shrink:0; overflow:hidden; }
    .adv-card-avatar img { width:100%; height:100%; object-fit:cover; display:block; border-radius:50%; }
    .adv-card-name { font-family:var(--font-h); font-size:17px; font-weight:700; color:var(--text); margin:0; line-height:1.2; }
    .adv-card-role { font-family:var(--font-b); font-size:13px; color:var(--muted); margin-top:3px; }
    .adv-card-status { display:inline-flex; align-items:center; gap:6px; padding:5px 11px; border-radius:999px; background:rgba(34,197,94,.12); color:#15803D; font-family:var(--font-h); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; margin-bottom:18px; align-self:flex-start; border:1px solid rgba(34,197,94,.28); }
    .adv-card-status::before { content:''; width:7px; height:7px; border-radius:50%; background:#22C55E; box-shadow:0 0 0 3px rgba(34,197,94,.18); }
    .adv-card-stats { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:18px; }
    .adv-card-stat { background:var(--off); border:1px solid var(--border); border-radius:10px; padding:12px 14px; }
    { font-family:var(--font-b); font-size:10px; font-weight:700; letter-spacing:.10em; text-transform:uppercase; color:var(--muted); }
    { font-family:var(--font-h); font-size:18px; font-weight:800; color:var(--text); margin-top:2px; line-height:1.1; }
    { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; padding-top:16px; border-top:1px solid var(--border); }
    { font-family:var(--font-b); font-size:11px; font-weight:600; color:var(--blue-dark); background:rgba(41,171,226,.10); border:1px solid rgba(41,171,226,.22); border-radius:999px; padding:4px 10px; }
    .svc-adv-text h2 { margin-bottom: 24px; }
    .svc-adv-text p { font-family: var(--font-b); font-size: 1rem; font-weight: 400; color: var(--text); line-height: 1.75; margin-bottom: 16px; }
    .svc-adv-pullquote { font-family: var(--font-h); font-weight: 600; font-size: 1.25rem; color: var(--navy); line-height: 1.45; padding-left: 20px; border-left: 3px solid var(--orange); margin: 24px 0; }
    .svc-adv-micro { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 28px; }
    .svc-adv-micro-item { display: flex; align-items: center; gap: 8px; font-family: var(--font-b); font-size: 0.875rem; font-weight: 500; color: var(--navy); }
    .svc-adv-micro-item svg { width: 18px; height: 18px; stroke: var(--green); fill: none; stroke-width: 2.5; flex-shrink: 0; }
    .svc-adv-cta { margin-top: 32px; display: flex; flex-direction: column; gap: 12px; }
    .svc-adv-cta .btn-orange-solid {
      display: inline-flex; align-items: center; gap: 8px;
      background: var(--orange); color: #fff; border: none; border-radius: 10px;
      padding: 14px 28px; font-family: var(--font-b); font-size: 15px; font-weight: 700;
      text-decoration: none; cursor: pointer; width: fit-content;
      transition: background .2s, transform .2s;
    }
    .svc-adv-cta .btn-orange-solid:hover { background: #EA580C; transform: translateY(-2px); }
    .svc-adv-team-link {
      font-family: var(--font-b); font-size: 13px; font-weight: 600;
      color: var(--blue); text-decoration: none; display: inline-flex; align-items: center; gap: 4px;
    }
    .svc-adv-team-link:hover { color: var(--blue-dark); text-decoration: underline; }
    @media(max-width:900px){.svc-adv-layout{grid-template-columns:1fr;gap:32px;text-align:center}.svc-adv-photo-wrap{order:-1}.svc-adv-pullquote{text-align:left}.svc-adv-micro{justify-content:center}.svc-adv-cta{align-items:center}}
    /* RESPONSIVE */
    @media(max-width:1024px){
      .hero-container,.compare-grid,.state-grid{grid-template-columns:1fr;}
      .hero-visual{display:none;}
      .stats-grid{grid-template-columns:repeat(2,1fr);}
      .feature-grid{grid-template-columns:repeat(2,1fr);}
      .ft-top{grid-template-columns:1fr 1fr 1fr;gap:32px}
      .cta-band{flex-direction:column;align-items:flex-start;}
    }
    @media(max-width:768px){
      .hd{padding:0 20px;}
      nav,.hd-right{display:none;}
      .ham{display:flex;}
      .comp-hero,.stats-strip,.section,.cta-section{padding-left:20px;padding-right:20px;}
      .hero-trust{grid-template-columns:1fr;}
      .stats-grid,.feature-grid{grid-template-columns:1fr;}
      .ft-top{grid-template-columns:1fr 1fr;gap:24px}
      .cta-band{padding:36px 28px;}
      .mob-sticky-cta{display:flex;}
    }

    /* ── BUTTON SHIMMER ─────────────────────────────────────
       Canonical .btn-primary shimmer now lives in buttons-v2.css (sitewide).
       Removed legacy infinite shimmer-sweep override that violated the
       no-continuous-animation rule (memory 2026-04-21). Kept .btn-accent
       since it isn't covered by buttons-v2.css. --- */
    .btn-accent{position:relative;overflow:hidden;}
    .btn-accent::after{
      content:'';position:absolute;top:0;left:0;width:60%;height:100%;
      background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.28) 50%,transparent 100%);
      transform:translateX(-200%) skewX(-20deg);
      animation:shimmer-sweep 3.5s ease-in-out infinite;pointer-events:none;
    }
    @keyframes shimmer-sweep{0%{transform:translateX(-200%) skewX(-20deg);}60%,100%{transform:translateX(380%) skewX(-20deg);}}

    /* ── CSS COMPLIANCE CALENDAR ICON ──────────────────── */
    .compliance-cal-icon {
      display: inline-flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      width: 52px;
      height: 52px;
      border-radius: 12px;
      overflow: hidden;
      border: 1.5px solid rgba(244,63,94,.3);
      background: var(--white);
      flex-shrink: 0;
    }
    .cal-icon-top {
      width: 100%;
      background: linear-gradient(135deg, var(--accent), var(--accent-dark));
      padding: 3px 0;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 4px;
    }
    .cal-icon-top::before,
    .cal-icon-top::after {
      content: '';
      width: 5px;
      height: 5px;
      border-radius: 50%;
      background: rgba(255,255,255,.7);
    }
    .cal-icon-body {
      flex: 1;
      display: flex;
      align-items: center;
      justify-content: center;
      font-family: var(--font-h);
      font-size: 18px;
      font-weight: 800;
      color: var(--accent-dark);
      line-height: 1;
    }

    /* ── AUDIT-READY STAT GRADIENT ──────────────────────── */
    .audit-stat {
      font-family: var(--font-h);
      font-size: 2.4rem;
      font-size: clamp(2.4rem,3.5vw,3.2rem);
      font-weight: 800;
      line-height: 1;
      background: linear-gradient(135deg, var(--accent) 0%, var(--accent-dark) 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-clip: text;
    }

    /* ── NAV OVERRIDE ──────────────── */
    /* ── HEADER ─────────────────────────────────────────── */
    header {
      position: sticky; top: 0; z-index: 300;
      background: linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 100%);
      backdrop-filter: blur(28px) saturate(1.8) brightness(1.02);
      -webkit-backdrop-filter: blur(28px) saturate(1.8) brightness(1.02);
      border-bottom: 1px solid rgba(226,236,244,.5);
      box-shadow: 0 1px 0 rgba(226,236,244,.5), 0 0 0 0.5px rgba(255,255,255,.8), 0 2px 12px rgba(7,25,46,.04), 0 4px 24px rgba(7,25,46,.03), 0 8px 32px rgba(7,25,46,.04);
      overflow: visible;
    }
    header::before {
      content: '';
      position: absolute;
      top: 0; left: 0; right: 0;
      height: 1px;
      background: rgba(255,255,255,.95);
      pointer-events: none;
      z-index: 1;
    }
    header::after {
      content: '';
      position: absolute;
      bottom: -8px; left: 0; right: 0;
      height: 8px;
      background: linear-gradient(180deg, rgba(7,25,46,.04) 0%, transparent 100%);
      pointer-events: none;
      z-index: -1;
    }
/* NAV CSS extracted to assets/site.css — see _scripts/extract_nav_css.py */
  /*callback-widget-mobile-hide-v1*/
@media (max-width: 767px) {
  .callback-widget { display: none !important; }
  .mob-sticky-cta { display: flex !important; }
}
/* reduced-motion-v1 */
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important;}}
/* mobile-qa-v1 */
@media (max-width: 767px) {
  .btn, button, .btn-primary, .btn-secondary, .btn-outline, .cta, [class*="btn-"], a.button, input[type="submit"], input[type="button"] {
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 12px 18px !important;
  }
  p, li, span, a, td, th, label, input, select, textarea, button, {
    font-size: max(14px, 1em) !important;
  }
  body, main, section, div, table, .container, .wrap, [class*="-wrap"], [class*="-grid"] {
    max-width: 100% !important;
  }
  img, video, iframe, svg { max-width: 100% !important; height: auto; }
  table { display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .mob-drawer, [class*="drawer"], .nav-drawer { width: 88vw !important; max-width: 320px !important; }
  html { overflow-x: hidden !important; }
}
@media (max-width: 359px) {
  .mob-drawer, [class*="drawer"], .nav-drawer { width: 96vw !important; max-width: 100vw !important; }
}
/* scroll-margin-anchor-v2 */
[id], section[id], h1[id], h2[id], h3[id], h4[id] { scroll-margin-top: 130px; }
    /* ── BORDER-RADIUS NORMALIZATION ─────────────── */
    .pain-card, .tier1-card, .tier2-card, .diff-card, .cap-card, .cross-card { border-radius: var(--r-md, 12px); }

/* §2 */
.which-one{background:#F4F8FC;padding:64px 32px;border-top:1px solid #E2ECF4;border-bottom:1px solid #E2ECF4}
    .which-one .wrap{max-width:1100px;margin:0 auto}
    .which-one .eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.12em;color:#BE123C;text-transform:uppercase;margin-bottom:10px;text-align:center}
    .which-one h2{font-family:'Poppins',sans-serif;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:#0D1829;text-align:center;margin:0 0 8px;line-height:1.2}
    .which-one .lede{text-align:center;color:#3D5266;max-width:680px;margin:0 auto 32px;font-size:15px;line-height:1.6}
    .which-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
    @media(max-width:780px){.which-grid{grid-template-columns:1fr}}
    .which-col{background:#fff;border:1px solid #E2ECF4;border-radius:16px;padding:28px;display:flex;flex-direction:column}
    .which-col.compliance{border-top:4px solid #F43F5E}
    .which-col.lms{border-top:4px solid #29ABE2}
    .which-col h3{font-family:'Poppins',sans-serif;font-size:1.2rem;font-weight:800;color:#0D1829;margin:0 0 4px}
    {font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px}
    .which-col{color:#BE123C}
    .which-col{color:#1366A0}
    .which-col ul{list-style:none;padding:0;margin:0 0 18px;display:flex;flex-direction:column;gap:10px;flex:1}
    .which-col li{font-size:14px;color:#3D5266;line-height:1.5;display:flex;gap:10px;align-items:flex-start}
    .which-col li::before{content:"•";color:inherit;font-weight:700;flex-shrink:0}
    .which-col.compliance li::before{color:#F43F5E}
    .which-col.lms li::before{color:#1479A3}
    .which-col .go{font-size:13px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:6px;margin-top:auto}
    .which-col.compliance .go{color:#BE123C}
    .which-col.lms .go{color:#1366A0}
    .which-cta{text-align:center;margin-top:28px}
    .which-cta a{display:inline-flex;align-items:center;gap:8px;background:#F97316;color:#fff;padding:14px 28px;border-radius:10px;font-weight:700;font-size:15px;text-decoration:none;transition:all .15s}
    .which-cta a:hover{background:#EA6C10;transform:translateY(-1px)}

/* §3 */
.sec-cross{background:#F4F8FC;padding:80px 32px}
.sec-cross .wrap{max-width:1100px;margin:0 auto}
{font-size:.78rem;font-weight:700;letter-spacing:.12em;color:#9A330A;text-transform:uppercase;margin-bottom:12px}
.sec-cross .sec-h2{font-size:clamp(1.8rem,3.4vw,2.4rem);font-weight:800;color:#0D1829;margin:0 0 32px;line-height:1.2}
.cross-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
@media(max-width:860px){.cross-grid{grid-template-columns:1fr}}
.cross-card{background:#fff;border:1px solid rgba(13,24,41,.08);border-radius:14px;padding:28px;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s,border-color .2s;display:block;position:relative;overflow:hidden}
.cross-card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#1E40AF,#3B82F6);transition:height .2s}
.cross-card:nth-child(2)::before{background:linear-gradient(90deg,#F97316,#EA580C)}
.cross-card:nth-child(3)::before{background:linear-gradient(90deg,#38B2AC,#1E40AF)}
.cross-card:hover{transform:translateY(-3px);box-shadow:0 12px 32px rgba(13,24,41,.1);border-color:rgba(13,24,41,.16)}
.cross-card:hover::before{height:5px}
.cross-card-icon{width:44px;height:44px;border-radius:10px;background:rgba(30,64,175,.08);display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.cross-card:nth-child(2) .cross-card-icon{background:rgba(249,115,22,.08)}
.cross-card:nth-child(3) .cross-card-icon{background:rgba(56,178,172,.08)}
.cross-card-icon svg{width:22px;height:22px;stroke:#1E40AF;fill:none;stroke-width:2}
.cross-card:nth-child(2) .cross-card-icon svg{stroke:#F97316}
.cross-card:nth-child(3) .cross-card-icon svg{stroke:#38B2AC}
.cross-card h3{font-size:1.15rem;font-weight:700;color:#0D1829;margin:0 0 10px}
.cross-card p{font-size:.92rem;line-height:1.55;color:#3D5266;margin:0 0 14px}
.cross-link{font-size:.88rem;font-weight:600;color:#1E40AF;display:inline-flex;align-items:center;gap:6px;transition:gap .2s}
.cross-card:hover .cross-link{gap:10px}

/* §4 */
@media (max-width: 1024px) {
  .cb-fab, .callback-trigger { bottom: calc(90px + env(safe-area-inset-bottom, 0px)) !important; }
  .cb-panel, .callback-panel { bottom: calc(160px + env(safe-area-inset-bottom, 0px)) !important; width: min(320px, 90vw) !important; }
  body { padding-bottom: calc(70px + env(safe-area-inset-bottom, 0px)); }
  .mob-sticky-cta { padding-bottom: env(safe-area-inset-bottom, 0px); }
}

/* COMPLIANCE TRAINING SIGNATURE — Module progress-fill reveal (2026-05-19 pass 10)

   Page's signature is the training-card with 5 progress bars per module.
   Staggered module entrance + progress-fill animation from 0 to target % on
   first paint, so the eye actually sees each module fill toward completion. */

.training-card .tc-title {
  position: relative;
  padding-left: 14px;
}
.training-card .tc-title::before {
  content: '';
  position: absolute; left: 0; top: 50%;
  width: 6px; height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: #10B981;
  box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.55);
  animation: ct-tracking-pulse 2.6s cubic-bezier(.4, 0, .6, 1) infinite;
}
@keyframes ct-tracking-pulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.55); }
  50%      { box-shadow: 0 0 0 6px rgba(16, 185, 129, 0); }
}

/* Module entrance + progress-fill animation from 0% width to target */
.training-modules .module {
  animation: ct-module-reveal .55s cubic-bezier(.22, 1, .36, 1) backwards;
}
.training-modules .module:nth-child(1) { animation-delay: .3s; }
.training-modules .module:nth-child(2) { animation-delay: .45s; }
.training-modules .module:nth-child(3) { animation-delay: .60s; }
.training-modules .module:nth-child(4) { animation-delay: .75s; }
.training-modules .module:nth-child(5) { animation-delay: .90s; }
@keyframes ct-module-reveal {
  from { opacity: 0; transform: translateX(-6px); }
  to   { opacity: 1; transform: translateX(0); }
}

/* Progress-fill grows from 0 to its inline-style width, then settles */
.training-modules .progress-fill {
  transform-origin: left center;
  animation: ct-fill-reveal 1.2s cubic-bezier(.22, 1, .36, 1) backwards;
}
.training-modules .module:nth-child(1) .progress-fill { animation-delay: .55s; }
.training-modules .module:nth-child(2) .progress-fill { animation-delay: .70s; }
.training-modules .module:nth-child(3) .progress-fill { animation-delay: .85s; }
.training-modules .module:nth-child(4) .progress-fill { animation-delay: 1.00s; }
.training-modules .module:nth-child(5) .progress-fill { animation-delay: 1.15s; }
@keyframes ct-fill-reveal {
  from { transform: scaleX(0); }
  to   { transform: scaleX(1); }
}

@media (prefers-reduced-motion: reduce) {
  .training-card .tc-title::before,
  .training-modules .module,
  .training-modules .progress-fill { animation: none !important; opacity: 1; transform: none; }
}

/* ── MOBILE OPTIMISATION PASS — 390px (2026-06-01) ──────────────────────────
   Scoped to max-width:767.98px so desktop layout is untouched.
   Fixes: mob-cta drawer buttons (14.5px→16px), mob-sticky-cta btn (14px→16px),
          body content reading text in feature cards, comparison list items,
          FAQ answer body, which-col list items, faq-body, svc-advisor text,
          and svc-handoff/step-body classes where they appear on this page. */
@media (max-width: 767.98px) {

  /* 1. Mobile drawer CTAs — raised from 14.5px to 16px */
  .mob-cta {
    font-size: 16px;
  }

  /* 2. Mob sticky CTA buttons — raised from 14px to 16px */
  .mob-cta-btn {
    font-size: 16px;
  }

  /* 3. Feature-card body copy — raised from 13.5px to 15px
        (.feat-card p is body reading text, not a mockup UI label) */
  .feat-card p {
    font-size: 15px;
  }

  /* 4. Comparison list items — raised from 14.5px to 15px */
  .compare-list li {
    font-size: 15px;
  }

  /* 5. Which-col list items — raised from 14px to 15px */
  .which-col li {
    font-size: 15px;
  }

  /* 6. FAQ answer body — raised from 15px to 16px (legal/policy reading text) */
  .faq-body {
    font-size: 16px;
  }

  /* 7. State-card body paragraph — raised from 13.5px to 15px */
  .state-content p {
    font-size: 15px;
  }

  /* 8. svc-handoff and svc-step-body classes that appear via shared partials
        (measured 12–15px; floor to 15px for content text, 13px for labels) */
  .svc-handoff-what,
  .svc-step-body {
    font-size: 15px;
  }

  .svc-handoff-from,
  .svc-handoff-to-label {
    font-size: 13px;
  }

  /* 9. Testimonial company span — raised from 13px to 14px (data/label class) */
  .svc-testimonial-pull__company {
    font-size: 14px;
  }

  /* 10. btn-tel phone link — raised from 14px to 16px */
  .btn-tel {
    font-size: 16px;
  }
}

