/* ========================= STYLE GUIDE VARIABLES ========================= */
    :root {
      /* BRAND COLORS */
      --esp-brand: #FCB017;
      --esp-brand-text: #FCB017; 
      --esp-ink: #111111;
      --esp-text-muted: #424a57;
      --esp-line: rgba(0,0,0,.08);
      --esp-card-radius: 18px;
      
      /* SPACING (Desktop Defaults) */
      --sect-pad-top: 70px;
      --sect-pad-btm: 60px;
    }

    /* SPACING (Mobile Overrides) */
    @media (max-width: 768px) {
      :root {
        --sect-pad-top: 60px;
        --sect-pad-btm: 50px;
      }
    }

    /* ========================= GLOBAL RESET ========================= */
    body {
      margin: 0;
      font-family: Nunito, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
      background: #ffffff;
      color: var(--esp-ink);
      overflow-x: hidden;
    }

    /* ========================= HERO SECTION ========================= */
    .esp-locations-hero {
      --brand: #FCB017;
      --ink: #ffffff;
      --overlay: rgba(0,0,0,.64);
      
      position: relative;
      isolation: isolate;
      /* REQUEST: Desktop Banner 30vh */
      min-height: 30vh; 
      display: grid;
      place-items: center;
      color: var(--ink);
      
      /* BACKGROUND IMAGE */
      background:
        url("https://eaglesecurityprotection.co.uk/wp-content/uploads/2025/12/Service-banner.webp")
        center / cover no-repeat #222;
        
      padding-block: clamp(80px, 10vw, 120px);
    }

    .esp-locations-hero .esp-loc__overlay {
      position: absolute;
      inset: 0;
      background: var(--overlay);
      z-index: 0;
    }

    .esp-locations-hero .esp-loc__in {
      position: relative;
      z-index: 1;
      width: min(1200px, calc(100% - 40px));
      margin-inline: auto;
      text-align: left;
    }

    .esp-locations-hero .esp-loc__bar {
      display: inline-block;
      width: 88px; 
      height: 8px;
      background: var(--brand);
      border-radius: 6px;
      margin-bottom: 14px;
    }

    /* TYPOGRAPHY: H1 based on Style Guide */
    .esp-locations-hero .esp-loc__title {
      margin: 10px 0;
      font: 700 clamp(28px, 4vw, 40px)/1.2 Nunito, system-ui, sans-serif;
      color: #ffffff;
      max-width: 25ch;
    }
    
    /* TYPOGRAPHY: Lead Text based on Style Guide */
    .esp-locations-hero .esp-loc__lead {
      margin: 0 0 24px;
      font: 16px/1.7 Nunito, system-ui, sans-serif;
      max-width: 60ch;
      color: #f3f4f6;
    }

    /* BUTTONS */
  :root {
  --esp-brand: #FCB017;
  --esp-ink: #111111;
}

.esp-btn-group {
  display: flex;
  gap: 16px;
  margin-top: 28px;
  flex-wrap: wrap;
}

.esp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 28px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.03em;
  text-decoration: none;
  transition: 0.18s ease-in-out;
  cursor: pointer;
  text-align: center;
  border: 2px solid transparent;
}

.esp-btn-primary {
  background: var(--esp-brand);
  color: var(--esp-ink);
  border: 2px solid var(--esp-brand);
  box-shadow: 0 14px 34px rgba(252, 176, 23, 0.28);
}

.esp-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(252, 176, 23, 0.5);
  background: #fff;
  color:  var(--esp-brand);
}

.esp-btn-outline {
  background: var(--esp-brand);
  color: var(--esp-ink);
 
}

.esp-btn-outline:hover {
  background: #ffffff;
 color:  var(--esp-brand);
  border: 2px solid  var(--esp-brand);
}

    @media (max-width: 768px) {
      .esp-locations-hero {
        /* REQUEST: Mobile Banner 50vh + 50px Padding */
        min-height: 50vh; 
        padding-block: 50px;
        text-align: left;
      }
      .esp-locations-hero .esp-loc__in { 
        display: flex; 
        flex-direction: column; 
        align-items: flex-start;
      }
      .esp-locations-hero .esp-loc__bar { margin-bottom: 25px; }
      .esp-locations-hero .esp-loc__title { font-size: 28px; margin-top: 0; }
      
      .esp-btn-group {
        flex-direction: column;
        width: 100%;
      }
      .esp-btn {
        width: 100%;
        box-sizing: border-box;
      }
    }

    /* ========================= GENERAL LAYOUT ========================= */
    .esp-section {
      width: 100%;
      /* APPLIED SPACING GUIDE */
      padding-top: var(--sect-pad-top);
      padding-bottom: var(--sect-pad-btm);
    }
    
    .esp-section-grey {
      background-color: #fafafa;
    }
    
    .esp-container {
      max-width: 1200px;
      margin: 0 auto;
      padding: 0 24px;
    }
    
    .esp-container-narrow {
      max-width: 800px;
      margin: 0 auto;
      padding: 0 24px;
      text-align: center;
    }
    
    /* GRID SYSTEM */
    .esp-grid-2 {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 60px;
      align-items: center;
    }
    
    @media (max-width: 960px) {
      .esp-grid-2 {
        grid-template-columns: 1fr;
        gap: 40px;
      }
      .esp-order-mobile-2 { order: 2; }
      .esp-order-mobile-1 { order: 1; }
    }

    /* TYPOGRAPHY - Standardized to Style Guide */
    .esp-h2 {
      /* Matching Style Guide H2 */
      font: 700 clamp(28px, 4vw, 40px)/1.2 Nunito, system-ui, sans-serif;
      color: var(--esp-ink);
      margin-bottom: 24px;
      margin-top: 0;
    }
    
    .esp-h3 {
      font-size: clamp(20px, 3vw, 24px);
      font-weight: 700;
      color: var(--esp-ink);
      margin-bottom: 16px;
      margin-top: 0;
    }
    
    .esp-text {
      font-size: 16px;
      line-height: 1.7;
      color: var(--esp-text-muted);
      margin-bottom: 24px;
    }
    
    /* === IMAGE WRAPPER LOGIC === */
    .esp-img-wrap {
      border-radius: var(--esp-card-radius);
      overflow: hidden;
      box-shadow: 0 20px 40px rgba(0,0,0,0.15);
      background: #ddd;
      /* Style Guide: Added Brand Border */
      border: 2px solid var(--esp-brand);
      width: 100%;
      height: auto;
      position: relative;
      display: block;
    }
    
    .esp-img-wrap > img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    /* === SPECIAL LOGIC FOR 2-IMAGE STACK === */
    .esp-double-stack {
      display: flex;
      flex-direction: column;
      height: 100%;
      gap: 20px;
    }
    
    .esp-double-stack .esp-img-wrap {
      flex: 1;
      height: auto;
      min-height: 250px;
    }

    .esp-double-stack .esp-img-wrap img {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    /* LISTS */
    .esp-list {
      list-style: none;
      padding: 0;
      margin: 0 0 24px 0;
    }
    .esp-list li {
      position: relative;
      padding-left: 30px;
      margin-bottom: 14px;
      color: var(--esp-text-muted);
      font-size: 16px;
      line-height: 1.6;
    }
    .esp-list li::before {
      content: "✓";
      position: absolute;
      left: 0;
      top: 2px;
      color: var(--esp-brand);
      font-weight: 900;
      font-size: 18px;
    }
    .esp-list li strong {
      color: var(--esp-ink);
    }

    /* NUMBERED LIST (For Process) */
    .esp-process-list {
      list-style: none;
      counter-reset: esp-counter;
      padding: 0;
      margin: 0 0 24px 0;
    }
    .esp-process-list li {
      position: relative;
      padding-left: 48px;
      margin-bottom: 20px;
      color: var(--esp-text-muted);
      font-size: 16px;
      line-height: 1.6;
    }
    .esp-process-list li::before {
      counter-increment: esp-counter;
      content: counter(esp-counter);
      position: absolute;
      left: 0;
      top: 0;
      width: 32px;
      height: 32px;
      background: var(--esp-brand);
      color: var(--esp-ink);
      font-weight: 800;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 15px;
    }
    .esp-process-list li strong {
      display: block;
      color: var(--esp-ink);
      font-size: 18px;
      margin-bottom: 4px;
    }

    /* QUOTE BOX */
    .esp-quote-box {
      background: #fff;
      border-left: 4px solid var(--esp-brand);
      padding: 24px;
      margin: 20px 0;
      font-style: italic;
      color: #333;
      border-radius: 0 8px 8px 0;
      box-shadow: 0 4px 10px rgba(0,0,0,0.05);
      font-size: 16px;
      line-height: 1.6;
    }

    /* TRUST BADGES STRIP */
    .esp-trust-strip {
      display: flex;
      gap: 20px;
      justify-content: center;
      flex-wrap: wrap;
      color: var(--esp-text-muted);
      font-weight: 800;
      font-size: 15px;
      margin-top: 30px;
      padding-top: 30px;
      border-top: 1px solid var(--esp-line);
    }
    .esp-trust-strip span {
      display: inline-flex;
      align-items: center;
      gap: 6px;
      background: #fff;
      padding: 8px 16px;
      border-radius: 30px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.04);
    }

/* Inline styles for keyholding-and-alarm-response.html */
.st-32530807 { display:block !important; width:60px !important; height:4px !important; background:var(--esp-brand) !important; margin-bottom:15px !important; }
.st-5356d82d { margin-top: 0 !important; margin-bottom: 30px !important; }
.st-322005a4 { font-size: 20px !important; font-style: normal !important; }
.st-92883553 { font-style: normal !important; margin-bottom: 0 !important; }
.st-2971427a { display:inline-block !important; width:60px !important; height:4px !important; background:var(--esp-brand) !important; margin-bottom:20px !important; }
.st-f1f81af9 { font-size: 18px !important; margin-bottom: 30px !important; }
.st-23aef89a { padding: 18px 40px !important; font-size: 18px !important; }
.esp { font-family: 'Nunito', sans-serif; color:#424a57; }
.esp .wrap, .esp .container { max-width: 1100px; margin: 0 auto; }
.esp .eyebrow, .esp .eyebrow-pill, .esp .sub, .wm-chip { display:inline-flex; align-items:center; gap:8px; padding:6px 14px; border:1px solid rgba(0,0,0,.1);
    border-radius:999px; font-weight:700; font-size:12px; letter-spacing:.05em; text-transform:uppercase;
    color:#ff8c00c7; background:#fff; margin:0 0 12px; }
.esp h1, .esp h2, .esp h3 { color:#111; }
.esp h1 { margin:10px 0 6px; font-weight:700; font-size:clamp(28px, 5vw, 42px); line-height:1.1; }
.esp h2 { font-size:clamp(28px, 4vw, 38px); font-weight:700; margin:0 0 10px; line-height:1.15; }
.esp h3 { font-size:20px; margin:0 0 10px; font-weight:700; line-height:1.3; }
.esp p { font-size:15.5px; line-height:1.65; color:#424a57; }
.esp .btn, .wm-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:14px 28px; border-radius:999px;
    background:#FCB017; color:#111; font-weight:700; text-decoration:none; border:2px solid #FCB017;
    box-shadow:0 4px 10px rgba(0,0,0,.08); transition:all .25s ease; cursor:pointer; }
.esp .btn:hover, .wm-btn:hover { background:#fff; color:#FCB017; transform:translateY(-2px); box-shadow:0 8px 16px rgba(0,0,0,.12); }
.esp .motto, .esp .quote, .esp .motto-style, .wm-motto { font-size:18px; font-style:italic; color:#424a57; border-left:5px solid #FCB017; margin:0 0 24px;
    font-weight:600; background:#fff; padding:16px 24px; border-radius:0 12px 12px 0;
    box-shadow:0 4px 12px rgba(0,0,0,.04); display:inline-block; line-height:1.4; text-align:left; }
.esp .card, .esp .item, .esp .step-card, .esp .kb-card, .esp details { background:#fff; border:1px solid #eee; border-radius:16px; transition:all .25s ease; }
.esp .card:hover, .esp .item:hover, .esp .step-card:hover, .esp .kb-card:hover, .esp details:hover, .esp details[open] { border-color:#FCB017; box-shadow:0 12px 24px rgba(0,0,0,.08); transform:translateY(-3px); }
.esp { text-align:center !important; }
.esp .motto, .esp .quote, .esp .motto-style, .wm-motto { margin-left:auto !important; margin-right:auto !important; font-size:16px !important; }
.esp.hero-guarding-wm { background:#fff; border-bottom:1px solid rgba(0,0,0,.05); }
.esp.hero-guarding-wm .container { padding:70px 16px 60px; text-align:center; }
.esp.hero-guarding-wm .subhead { margin:0 auto 14px; font-weight:700; color:#424a57; font-size:clamp(16px, 3vw, 20px); max-width:850px; }
.esp.hero-guarding-wm .lead { max-width:920px; margin:0 auto 24px; font-size:clamp(15px, 2.6vw, 17px); line-height:1.65; }
.esp.hero-guarding-wm .accred-strip { margin-top:32px; display:flex; flex-wrap:wrap; justify-content:center; gap:15px; opacity:.78; }
.esp.hero-guarding-wm .accred-text { font-size:13px; font-weight:700; color:#424a57; text-transform:uppercase; letter-spacing:.5px; }
.esp.hero-guarding-wm .sep-dot { color:#FCB017; }
.esp.why-matters { background:#fff; padding:70px 16px 60px; }
.esp.why-matters .wrap { display:grid; gap:30px; align-items:center; }
.esp.why-matters .wrap { grid-template-columns:1fr 1fr; }
.esp.why-matters .content-side { padding-right:20px; }
.esp.why-matters .desc { margin-bottom:24px; }
.esp.why-matters .list-side { display:grid; gap:14px; grid-auto-rows:1fr; }
.esp.why-matters .card { padding:18px; display:flex; gap:16px; align-items:center; min-height:110px; height:100%; }
.esp.why-matters .icon { background:rgba(252,176,23,.15); width:44px; height:44px; border-radius:50%; display:grid; place-items:center; color:#FCB017; flex-shrink:0; font-weight:900; }
.esp.why-matters .card p { margin:0; font-size:14.5px; }
.esp.why-matters .content-side { padding-right:0!important; }
.esp.why-matters .card { flex-direction:column!important;text-align:center!important;justify-content:center!important;padding:24px!important; }
.esp.core-duties { background:#fafafa; padding:70px 16px 60px; }
.esp.core-duties .header { text-align:left; max-width:880px; margin:0 0 40px; }
.esp.core-duties .points-strip { display:flex; flex-wrap:wrap; align-items:center; gap:12px; font-size:13px; font-weight:700; color:#424a57; text-transform:uppercase; letter-spacing:1px; }
.esp.core-duties .points-strip span { color:#FCB017; }
.esp.core-duties .grid { display:grid; grid-template-columns:1fr; gap:20px; margin-bottom:40px; }
.esp.core-duties .grid { grid-template-columns:repeat(2,1fr); }
.esp.core-duties .card { padding:22px; position:relative; overflow:hidden; }
.esp.core-duties .card .tag { display:block; color:#FCB017; font-weight:800; font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:8px; }
.esp.core-duties .card p { margin:0 0 12px; }
.esp.core-duties .card p:last-child { margin-bottom:0; }
.esp.core-duties .emergency-merged { background:#fff; border-radius:20px; padding:22px; border:2px solid #eee; border-left:6px solid #FCB017; text-align:left; }
.esp.core-duties .header, .esp.core-duties .emergency-merged { text-align:center!important;margin-left:auto!important;margin-right:auto!important; }
.esp.core-duties .points-strip { justify-content:center!important; }
.esp.process-wm { background:#fff; padding:70px 16px 60px; }
.esp.process-wm .head-box { text-align:center; margin-bottom:40px; }
.esp.process-wm .sub-h { font-size:18px; color:#424a57; margin-bottom:20px; }
.esp.process-wm .process-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:40px; }
.esp.process-wm .step-card { padding:30px 20px 24px; position:relative; text-align:left; }
.esp.process-wm .step-num { position:absolute; top:-15px; left:20px; background:#FCB017; color:#111; font-weight:800; font-size:14px; padding:6px 12px; border-radius:8px; box-shadow:0 4px 10px rgba(0,0,0,.1); }
.esp.process-wm .process-grid { grid-template-columns:1fr;gap:30px; }
.esp.process-wm .step-card { text-align:center; }
.esp.pricing-wm { background:#fafafa; padding:70px 16px 60px; }
.esp.pricing-wm .top-flex { display:flex; flex-wrap:wrap; justify-content:center; text-align:center; margin-bottom:40px; gap:20px; }
.esp.pricing-wm .card-grid { display:flex; justify-content:center; max-width:800px; margin:0 auto; }
.esp.pricing-wm .card { width:100%; max-width:650px; padding:30px; border-left:6px solid #FCB017; }
.esp.pricing-wm .rate-row { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid #f0f0f0; padding-bottom:16px; margin-bottom:16px; gap:18px; }
.esp.pricing-wm .rate-row:last-of-type { border-bottom:none; margin-bottom:0; }
.esp.pricing-wm .rate-lbl { font-weight:700; color:#333; font-size:16px; text-align:left; }
.esp.pricing-wm .rate-val { font-weight:800; color:#111; font-size:24px; text-align:right; }
.esp.pricing-wm .unit { font-size:14px; font-weight:500; color:#777; margin-left:2px; }
.esp.pricing-wm .note { font-size:13px; color:#777; margin-top:24px; line-height:1.6; }
.esp.pricing-wm .rate-row { display:block;text-align:center; }
.esp.pricing-wm .rate-lbl, .esp.pricing-wm .rate-val { text-align:center; }
.esp.calc-budget { background:#fff; padding:70px 16px 60px; }
.esp.calc-budget .wrap { max-width:800px; border:2px solid #e6e6e6; border-radius:20px; padding:30px; background:#fff; }
.esp.calc-budget h2 { text-align:center; margin:0 0 16px; }
.esp.calc-budget .center-motto { text-align:center; }
.esp.calc-budget .c-grid { display:grid; gap:20px; grid-template-columns:1fr; margin-bottom:30px; }
.esp.calc-budget .c-grid { grid-template-columns:1fr 1fr; }
.esp.calc-budget label { display:block; font-weight:700; margin-bottom:8px; font-size:14px; }
.esp.calc-budget select { width:100%; padding:13px 14px; border:1px solid #ddd; border-radius:8px; background:#fff; color:#111; font-size:16px; font-family:'Nunito', sans-serif; }
.esp.calc-budget .results-wrapper { display:flex; justify-content:center; width:100%; }
.esp.calc-budget .res-card { background:#fff; padding:24px; border-radius:12px; text-align:center; border:1px solid #eee; box-shadow:0 2px 8px rgba(0,0,0,.03); width:100%; max-width:400px; }
.esp.calc-budget .res-lbl { font-size:14px; color:#666; font-weight:700; text-transform:uppercase; letter-spacing:.5px; margin-bottom:8px; }
.esp.calc-budget .res-val { font-size:30px; font-weight:700; color:#111; }
.esp.calc-budget .disclaimer { font-size:12px; color:#999; margin-top:24px; text-align:center; }
.esp.knowledge-base { background:#fafafa; padding:70px 16px 60px; }
.esp.knowledge-base .head-box { text-align:center; margin-bottom:40px; }
.esp.knowledge-base .kb-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.esp.knowledge-base .kb-card { padding:30px; display:flex; flex-direction:column; height:100%; text-decoration:none; color:inherit; }
.esp.knowledge-base .read-link { font-size:14px; font-weight:800; color:#FCB017; text-decoration:none; text-transform:uppercase; letter-spacing:.5px; margin-top:auto; }
.esp.knowledge-base .kb-grid { grid-template-columns:1fr; }
.esp.why-eagle { background:#fff; padding:70px 16px 60px; }
.esp.why-eagle .wrap { text-align:center; }
.esp.why-eagle .grid { display:grid; gap:20px; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.esp.why-eagle .item { padding:30px 24px; text-align:left; }
.esp.why-eagle .check { color:#FCB017; flex-shrink:0; display:inline-flex; align-items:center; justify-content:center; font-weight:900; }
.esp.why-eagle .item { text-align:center; }
.esp.mg-cs-wm { background:#fafafa; padding:70px 16px 60px; }
.esp.mg-cs-wm .wrap { text-align:center; }
.esp.mg-cs-wm .head { margin-bottom:30px; }
.esp.mg-cs-wm .phases-grid { display:grid; gap:20px; grid-template-columns:1fr; }
.esp.mg-cs-wm .phases-grid { grid-template-columns:1fr 1fr 1fr; }
.esp.mg-cs-wm .phase-box { background:#fff; padding:20px; border-radius:16px; border:1px solid rgba(0,0,0,.05); border-left:4px solid #FCB017; text-align:left; transition:all .25s ease; }
.esp.mg-cs-wm .phase-box:hover { transform:translateY(-3px); box-shadow:0 12px 24px rgba(0,0,0,.08); }
.esp.mg-cs-wm .phase-title { font-size:17px; font-weight:700; text-transform:uppercase; letter-spacing:1px; margin-bottom:8px; display:block; color:#FCB017; }
.esp.mg-cs-wm .phase-box { text-align:center; }
.esp.coverage-wm { background:#fff; padding:70px 16px 60px; }
.esp.coverage-wm .wrap { text-align:center; }
.esp.coverage-wm .pill-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:14px; margin-top:30px; text-align:left; }
.esp.coverage-wm .pill { display:block; padding:18px; border-radius:16px; font-size:15px; font-weight:700; text-decoration:none; transition:all .2s ease; background:#fff; color:#111; border:1px solid #eee; box-shadow:0 4px 10px rgba(0,0,0,.04); }
.esp.coverage-wm .pill strong { color:#FCB017; display:block; margin-bottom:6px; }
.esp.coverage-wm .pill:hover { border-color:#FCB017; transform:translateY(-2px); box-shadow:0 8px 16px rgba(0,0,0,.1); }
.esp.related-links-strip .links-grid { display: grid; gap: 20px; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); }
.esp.related-links-strip h4 { font-size:15px; font-weight:800; text-transform:uppercase; letter-spacing:1px; color:#111; margin:0 0 12px; }
.esp.related-links-strip ul { list-style:none; padding:0; margin:0; }
.esp.related-links-strip li { margin-bottom:8px; font-size:14px; }
.esp.related-links-strip a { color:#424a57; text-decoration:none; transition:color .2s; }
.esp.related-links-strip a:hover { color:#FCB017; }
.esp.mg-faqs-wm.v2 { --brand:#FCB017; --ink:#111; --line:rgba(0,0,0,.10); background:#fafafa; padding:70px 16px 60px; scroll-margin-top:100px; }
.esp.mg-faqs-wm.v2 .head { text-align:center; margin-bottom:30px; }
.esp.mg-faqs-wm.v2 .list { display:grid; gap:12px; }
.esp.mg-faqs-wm.v2 details { overflow:hidden; }
.esp.mg-faqs-wm.v2 summary { list-style:none; cursor:pointer; display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; padding:16px 17px; font-weight:700; color:#111; font-size:17px; }
.esp.mg-faqs-wm.v2 summary::-webkit-details-marker { display:none; }
.esp.mg-faqs-wm.v2 .chev { width:24px; height:24px; display:grid; place-items:center; border-radius:999px; border:1px solid var(--line); color:var(--brand); }
.esp.mg-faqs-wm.v2 .chev::after { content:""; display:inline-block; width:8px; height:8px; border-right:2.5px solid var(--brand); border-bottom:2.5px solid var(--brand); transform:rotate(45deg); transition:transform .2s ease; margin-bottom:4px; }
.esp.mg-faqs-wm.v2 details[open] .chev::after { transform:rotate(-135deg); margin-bottom:-2px; }
.esp.mg-faqs-wm.v2 .answer { padding:0 16px 16px; border-top:1px solid var(--line); font-size:16px; line-height:1.7; color:#424a57; }
.esp.mg-faqs-wm.v2 .answer p { margin:16px 0 0; }
.wm-loading-icon { display:inline-block; width:16px; height:16px; border:2px solid #111; border-radius:50%; border-top-color:transparent; animation:wm-spin .8s linear infinite; margin-right:8px; }
.wm-btn.is-loading { opacity:.8; cursor:not-allowed; pointer-events:none; background-color:#e5a015; }
.wm-status.error { display:block; color:#dc2626; margin-bottom:10px; font-weight:700; }
.wm-lead { background:#fafafa; padding:clamp(50px,8vw,70px) 0; font-family:'Nunito', sans-serif; }
.wm-lead__in { width:min(100% - 32px, 1100px); margin:0 auto; }
.wm-h2 { font:700 clamp(22px,4vw,38px)/1.15 Nunito, system-ui; color:#111; margin:12px 0 0; }
.wm-sub { font:16px/1.6 Nunito, system-ui; color:rgba(62,61,61,.92); max-width:109ch; margin-bottom:20px; }
.wm-form { margin-top:12px; border:1px solid rgba(0,0,0,.10); border-radius:16px; background:#fff; padding:20px; display:grid; gap:16px; }
.wm-row { display:grid; gap:12px; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.wm-row--2 { grid-template-columns:1fr; }
.wm-row--2 { grid-template-columns:1fr 1fr; }
.wm-field { display:grid; gap:6px; }
.wm-field.floating { position:relative; margin-bottom:0; }
.wm-form input, .wm-form textarea, .wm-form select { font:700 14px/1.3 'Nunito', sans-serif !important; color:#111; background:#fff; border:1px solid rgba(0,0,0,.10); border-radius:12px; padding:16px 16px 12px; outline:none; width:100%; transition:all .2s ease; }
.wm-form textarea { min-height:110px; resize:vertical; }
.wm-field.floating label { position:absolute; top:16px; left:14px; font-size:14px; color:#424a57; font-weight:700; pointer-events:none; transition:all .2s ease-out; padding:0 4px; }
.wm-field.floating input:focus ~ label, .wm-field.floating input:not(:placeholder-shown) ~ label, .wm-field.floating textarea:focus ~ label, .wm-field.floating textarea:not(:placeholder-shown) ~ label { top:-9px; font-size:12px; color:#FCB017; background-color:#fff; left:12px; }
.wm-form input:focus, .wm-form textarea:focus, .wm-form select:focus { border-color:#FCB017; box-shadow:0 0 0 4px rgba(252,176,23,.25); transform:translateY(-1px); }
.wm-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:6px; }
.wm-status { display:none; color:#b91c1c; font:700 13px/1.4 Nunito, system-ui; margin:6px 0 2px; }
.wm-fine { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:8px; font:700 12px/1.4 Nunito, system-ui; color:rgba(62,61,61,.9); }
.wm-contact a, .wm-link, .wm-fine a { color:#fcb017; text-decoration:none; border-bottom:1px dashed rgba(252,176,23,.6); }
.wm-vh { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.wm-lead, .wm-lead__in { text-align:center!important; }
.wm-row, .wm-row--2 { display:flex!important;flex-direction:column!important;gap:20px!important; }
.wm-actions { justify-content:center!important; }
.wm-form { text-align:left!important; }

/* === GLOBAL FOOTER ACCESSIBLE CONTRAST === */
.esp-global-footer,.esp-global-footer p,.esp-global-footer span,.esp-global-footer strong{color:#f3f4f6!important}
.esp-global-footer a{color:#fff!important;text-decoration-color:#fcb017!important}
.esp-global-footer a:hover,.esp-global-footer a:focus{color:#fcb017!important}


/* === GLOBAL HONEYPOT VISIBILITY FIX === */
input[name="company_site"] {
  position: fixed !important;
  left: -10000px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}