/* ========================= 1. BASE SITE STYLES (HEADER/FOOTER) ========================= */
    :root{
      --esp-brand:#FCB017;
      --esp-ink:#111111;
      --esp-text:#222222;
      --esp-line:rgba(0,0,0,.08);
      --esp-dark:#000000;
      --esp-contact-radius:18px;
    }
    html, body {
      height: 100%;
      margin: 0;
      padding: 0;
      font-family:Nunito,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
      background:#fff;
      color:#111827;
      line-height: 1.6;
    }
    img{max-width:100%; height:auto; display:block}
    
    /* Wrapper to handle sticky footer logic */
    .esp-page-wrap {
      display: flex;
      flex-direction: column;
      min-height: 100vh; 
      padding-top: 100px; /* Space for absolute header */
      box-sizing: border-box;
    }

 
    /* ========================= LANDING PAGE CONTENT STYLES ========================= */
    /* Tokens for LP */
    :root{
      --brand:#FCB017; --ink:#111827; --text:#374151; --line:rgba(0,0,0,.12); --mx:1100px;
      --subtle:#fafafa; --focus:rgba(252,176,23,.30);
    }
    
    /* Reusable Content Styles */
    .chip{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:#fff;border:1px solid #e5e7eb;box-shadow:0 1px 0 rgba(0,0,0,.03) inset, 0 2px 10px rgba(0,0,0,.04);font:700 13px/1 Nunito;letter-spacing:.08em;text-transform:uppercase;color:#b45309}
    .chip--icon{ gap:8px; }
    .u-underline{width:120px;height:6px;border-radius:4px;background:var(--brand);margin:12px 0}
    .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:999px;border:2px solid var(--brand);font:700 15px/1 Nunito;text-decoration:none;background:var(--brand);color:#111;transition:background .2s,color .2s,transform .2s,box-shadow .2s}
    .btn:focus-visible{outline:0; box-shadow:0 0 0 3px var(--focus)}
    .btn:hover{background:#fff;color:var(--brand);transform:translateY(-1px);box-shadow:0 12px 26px rgba(252,176,23,.18)}
    
    /* --- UPDATED SPACING SECTION --- */
    /* Enforced Spacing: 60px/50px (Mobile), 70px/60px (Desktop) */
    .section {
        padding: 60px 16px 50px;
    }
    @media (min-width: 960px) {
        .section {
            padding: 70px 16px 60px;
        }
    }
    /* ------------------------------ */

    .wrap{max-width:var(--mx);margin:0 auto;  
}

    /* Ninja Background Class */
    .ninja{
         background: radial-gradient(1200px 400px at 50% -10%, #FFF7E3 0%, rgba(255,247,227,0) 60%), #fff;
    }
    
    /* Hero */
    .hero-min{position:relative;text-align:center; padding-top: 40px;}
    
    .hero-min::before{content:"";position:absolute;top:0;left:0;right:0;height:10px;background:linear-gradient(90deg,#FFC956 0%, #FCB017 40%, #F4A90C 100%)}
    .hero-title{font:700 clamp(28px,5.2vw,46px)/1.08 Nunito;color:#1f2937;margin:18px 0 0;letter-spacing:-.015em}
    .hero-min p.lead{font:600 clamp(15px,2.8vw,18px)/1.65 Nunito;color:rgba(31,41,55,.9);margin:14px auto 0;max-width:72ch}
    .cta-row{margin-top:clamp(18px,3vw,26px);display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
    .divider{height:1px;width:min(560px,90%);margin:clamp(16px,3vw,24px) auto 0;background:linear-gradient(90deg,transparent,rgba(0,0,0,.1),transparent)}
    .hero-underline{width:150px;height:6px;border-radius:4px;background:var(--brand);display:block;margin:14px auto 0 !important}
    
    /* Trust Badges in Hero */
    .trust{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px 10px;justify-content:center;font:700 12px/1 Nunito;color:#111}
    .trust .badge{padding:6px 10px;border-radius:999px;background:#fff;border:1px solid rgba(0,0,0,.10); font-weight:700; font-size:12px;}

    /* Problem */
    .problem-v2{
      position:relative;
      /* Updated to match Enforced Spacing */
      padding: 60px 16px 50px;
    }
    @media (min-width: 960px) {
        .problem-v2 {
            padding: 70px 16px 60px;
        }
    }

    .problem-v2__in{ max-width:var(--mx); margin:0 auto; }
    .problem-v2__chip{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;font:700 12.5px/1 Nunito;letter-spacing:.06em;text-transform:uppercase;color:#b45309;box-shadow:0 2px 10px rgba(0,0,0,.04)}
    .problem-v2__h2{margin:12px 0 0;font:700 clamp(26px,4.6vw,42px)/1.12 Nunito;color:#111;letter-spacing:-.01em}
    .problem-v2__underline{width:160px;height:6px;border-radius:999px;background:var(--brand);margin:14px 0 0}
    .problem-v2__lead{margin:14px 0 0;max-width:100%;font:600 clamp(15px,2.6vw,18px)/1.7 Nunito;color:var(--text)}
    
    /* Grid for sidebar layout */
    .problem-v2__grid{display:grid;gap:24px;margin-top:clamp(20px,3vw,28px);grid-template-columns:1fr;}
    @media (min-width:960px){
        .problem-v2__grid{ 
            grid-template-columns:1.8fr 1fr; 
            align-items: stretch;
        }
    }
    
    .issues-v2{display:grid;gap:14px; grid-template-columns:1fr}
    @media (min-width:720px){.issues-v2{ grid-template-columns:repeat(2,minmax(0,1fr)); }}
    
    .issue-v2{
        display:grid;grid-template-columns:auto 1fr;gap:12px;padding:16px;
        border:1.5px solid var(--line);border-radius:14px;background:#fff;
        box-shadow:0 6px 18px rgba(0,0,0,.04);transition:border-color .2s, transform .18s, box-shadow .2s;
       align-content: center;
    }
    .issue-v2:hover{ border-color:var(--brand); transform:translateY(-2px); box-shadow:0 14px 28px rgba(252,176,23,.16) }
    .issue-v2__dot{width:18px;height:18px;border-radius:999px;margin-top:3px;background:var(--brand);box-shadow:0 0 0 4px rgba(252,176,23,.20)}
    .issue-v2 h3{margin:0 0 6px;font:700 16px/1.25 Nunito;color:#111}
    .issue-v2 p{margin:0;font:600 14.5px/1.6 Nunito;color:#475569}

    /* Yellow Box logic for ISO requirements */
    .problem-v2__aside {
        border: 2px solid #FFE1A6;
        background: #FFF9EA;
        border-radius: 16px;
        padding: 20px;
        box-shadow: 0 10px 24px rgba(252,176,23,.15);
        display: flex;
        flex-direction: column;
        gap: 8px;
        height: 100%;
        box-sizing: border-box;
    }
    .aside__title{margin:0 0 8px;font:700 18px/1.25 Nunito;color:#7C4A00}
    
    .aside__row{
        display:grid; grid-template-columns:auto 1fr; gap:10px; 
        align-items:center;
        padding: 8px 10px;
        border-radius:12px; background:#fff; border:1px dashed #FFD37A
    }
    .aside__badge{display:inline-grid;place-items:center;min-width:36px;height:36px;padding:0 8px;border-radius:999px;background:#FCB017;color:#111;font:700 11px/1 Nunito;text-transform:uppercase;}
    .aside__text{margin:0;font:700 13.5px/1.45 Nunito;color:#334155}
    
    /* Solution */
    .sol h2{font:700 clamp(24px,4.4vw,36px)/1.15 Nunito;color:#111;margin:14px 0 0}
    .cards{margin-top:clamp(18px,3.2vw,26px);display:grid;gap:16px;grid-template-columns:1fr}
    @media(min-width:880px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
    .card{border:2px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;padding:18px;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:flex-start;transition:border-color .2s, box-shadow .2s, transform .2s; align-content: center;}
    .card:hover{border-color:var(--brand);box-shadow:0 10px 24px rgba(252,176,23,.15);transform:translateY(-2px)}
    .glyph{font-size:22px;line-height:1;display:grid;place-items:center}
    .card h3{margin:0;font:700 18px/1.2 Nunito;color:#111}
    .card p{margin:6px 0 0;font:600 14px/1.6 Nunito;color:#374151}

    /* 4-step */
    /* Removed specific background here to use .ninja class */
    .steps-v3__title{font:700 clamp(24px,4.4vw,36px)/1.15 Nunito;color:#111;margin:14px 0 0}
    .steps-v3__grid{position:relative;display:grid;gap:16px;margin-top:clamp(18px,3vw,26px);list-style:none;padding:0;grid-template-columns:1fr}
    @media (min-width:960px){.steps-v3__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
    .stepv3{position:relative;display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;padding:18px;border:1.5px solid rgba(0,0,0,.10);border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(0,0,0,.04);transition:transform .2s, box-shadow .2s, border-color .2s;align-content: center;}
    .stepv3:hover{transform:translateY(-2px);box-shadow:0 16px 30px rgba(252,176,23,.16);border-color:var(--brand)}
    .stepv3__num{inline-size:42px;block-size:42px;display:grid;place-items:center;border-radius:999px;background:var(--brand);color:#111;font:700 16px/1 Nunito;box-shadow:0 0 0 6px rgba(252,176,23,.20)}
    .stepv3__h{margin:0 0 6px;font:700 18px/1.2 Nunito;color:#111}
    .stepv3__p{margin:0;font:600 14.5px/1.65 Nunito;color:#374151}

    /* Expert */
    .avatar{width:84px;height:84px;border-radius:999px;object-fit:cover;border:2px solid #eee}
    .quote{border:1px solid #eee;border-radius:16px;background:#fafafa;margin: auto;padding:16px}
    
    /* Expert Section Responsive Layout */
    .expert-container {
      display: grid;
      grid-template-columns: 1fr;
      gap: 16px;
    }
    
    .expert-bio {
      display: flex;
      flex-direction: column;
      align-items: center;
      text-align: center;
      gap: 16px;
    }
    
    .expert-bio__text h3 {
      margin: 0;
    }
    
    /* Desktop Override for Expert */
    @media (min-width: 700px) {
      .expert-bio {
        display: grid;
        grid-template-columns: 84px 1fr;
        align-items: center;
        text-align: left;
      }
      .expert-bio__text h3 {
        text-align: left;
      }
    }

    /* Trust strip */
    .esp-trust-logo {
      display: block; margin: 0 auto; max-height: 140px; width: auto; max-width: 100%; object-fit: contain;
    }
    .esp-trust{
      --tc-yellow:#FCB017; --tc-ink:#0f172a; --tc-line:rgba(0,0,0,.06);
      /* Updated to match Enforced Spacing (Horizontal 0 as per original design for full width content) */
      padding: 60px 0 50px;
    }
    @media (min-width: 960px) {
        .esp-trust {
            padding: 70px 0 60px;
        }
    }

    @media (max-width: 480px) {
      .esp-trust{
        padding: 60px 0 50px;
      }
    }


    .esp-trust .esp-trust-in{ max-width:1100px; margin:0 auto; padding:0 16px; }
    .tc-eyebrow{
      display:inline-flex;align-items:center;gap:8px; padding:8px 14px;border:2px solid var(--line);border-radius:999px;
      font:700 12px/1 Nunito;letter-spacing:.06em;text-transform:uppercase; color:var(--tc-yellow);background:#fff;margin:0 0 10px;
    }
    .esp-trust h2{ margin:0 0 8px; text-align:center; color:#000; font: 700 clamp(28px, 4vw, 40px)/1.2 Nunito, system-ui, sans-serif; }
    .esp-trust p{ margin:0 0 40px; text-align:center; color:#475569; font:600 14.5px/1.55 Nunito,system-ui; }
    .esp-trust-grid{ display:grid; gap:18px; grid-template-columns:repeat(2,1fr); max-width:1100px; margin:0 auto; padding-inline:16px; }
    @media (min-width:960px){ .esp-trust-grid{ grid-template-columns:repeat(4,1fr); } }
    .esp-trust-card{
      display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px;
      min-height:150px; padding:16px; border:2px solid var(--tc-yellow); border-radius:16px; background:#fff;
      box-shadow:0 8px 20px rgba(0,0,0,.06); transition:all .25s ease; text-decoration:none; color:inherit;
    }

    /* Lead form (ORIGINAL LAYOUT + FLOATING LABELS) */
 :root{ --wm-brand:#FCB017; --wm-ink:#2A2A2A; --wm-text:#3E3D3D; --wm-line:rgba(0,0,0,.10); --wm-max:1100px; }
    .wm-chip{ display:inline-flex;align-items:center;gap:8px; padding:6px 14px;border:1px solid var(--wm-line);border-radius:999px; background:#fff;font:700 12px/1 Nunito,system-ui; text-transform:uppercase;letter-spacing:.5px;color: #ff8c00c7; }
    .wm-h2{ font:700 clamp(22px,4vw,34px)/1.15 Nunito,system-ui; color:var(--wm-ink);margin:12px 0 0; }
    .wm-underline{ width:120px;height:6px;border-radius:4px; background:var(--wm-brand);margin:12px 0; }
    .wm-sub{ font: 16px/1.6 Nunito,system-ui;color:rgba(62,61,61,.92); max-width:109ch; }
    .wm-btn{ display:inline-flex;align-items:center;justify-content:center;gap:8px; padding:14px 28px;border-radius:999px;text-decoration:none; font:700 14px/1 Nunito,system-ui;border:2px solid var(--wm-brand); background:var(--wm-brand);color:#111; box-shadow:0 12px 26px rgba(0,0,0,.08); transition:background-color .18s,color .18s,transform .18s,border-color .18s,box-shadow .18s; }
    .wm-btn:hover{ background:#fff; color:var(--wm-brand); border-color:var(--wm-brand); box-shadow:0 12px 26px rgba(252,176,23,.18); transform:translateY(-1px); }
    
    /* --- MODIFIED SECTION: FORM BACKGROUND & SHADOW --- */
    .wm-lead{ 
        /* Used same gradient as .ninja class */
        background: #fff;
        /* Updated to match Enforced Spacing */
        padding: 60px 16px 50px;
    }
    @media (min-width: 960px) {
        .wm-lead {
            padding: 70px 16px 60px;
        }
    }

    .wm-lead__in{ max-width:var(--wm-max);margin:0 auto; }
    
    .wm-form{ 
        margin-top:12px;
        border:1px solid var(--wm-line);
        border-radius:16px; 
        background:#fff;
        padding:20px;
        display:grid;
        gap:16px; 
        /* Added Shadow here */
        box-shadow: 0 12px 32px rgba(0,0,0,0.08);
    }
    /* -------------------------------------------------- */

    .wm-row{display:grid;gap:12px}
    .wm-row--2{grid-template-columns:1fr}
    @media(min-width:880px){ .wm-row--2{grid-template-columns:1fr 1fr} }
    .wm-field{display:grid;gap:6px}

    /* --- Floating Label Styles --- */
    .wm-field.floating {
      position: relative;
      margin-bottom: 0;
    }
    .wm-form input, .wm-form textarea{ 
        font:700 14px/1.3 'Nunito', sans-serif !important; /* FORCED NUNITO */
        color:var(--wm-ink); 
        background:#fff; border:1px solid var(--wm-line); 
        border-radius:12px; padding:16px 16px 12px; /* Increased padding for float */
        outline:none; width: auto;
        transition: all 0.2s ease;
        box-sizing: border-box; /* Ensure padding doesn't break width */
        width: 100%;
    }
    .wm-form textarea{min-height:110px;resize:vertical}

    /* Floating Label Logic */
    .wm-field.floating label {
      position: absolute;
      top: 16px;
      left: 14px;
      font-size: 14px;
      font-family: 'Nunito', sans-serif !important; /* FORCED NUNITO */
      color: #666;
      font-weight: 700;
      pointer-events: none;
      transition: all 0.2s ease-out;
      background-color: transparent;
      padding: 0 4px;
    }

    /* Input Focus or Value Present State */
    .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: var(--wm-brand);
      background-color: #fff; /* Mask line behind label */
      font-weight: 700;
      left: 12px;
    }

    /* Filter-like Focus Glow */
    .wm-form input:focus, .wm-form textarea:focus{ 
        border-color:var(--wm-brand); 
        box-shadow: 0 0 0 4px rgba(252, 176, 23, 0.25);
        background-color: #fff;
        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; }
    
    /* UPDATED: Flex container to force inline display without wrapping */
    .wm-fine{ 
        display:flex;
        flex-wrap:nowrap; /* Prevent wrapping */
        gap:10px;
        align-items:center; 
        margin-top:8px;
        font:700 12px/1.4 Nunito,system-ui; 
        color:rgba(62,61,61,.9); 
        white-space: nowrap; /* Keep text on one line if space permits, or handle overflow */
    }
    
    /* Responsive adjustment for very small screens if needed */
    @media (max-width: 600px) {
        .wm-fine {
            flex-wrap: wrap; /* Allow wrapping only on mobile if absolutely necessary */
            white-space: normal;
            justify-content: center;
            text-align: center;
        }
    }

    .wm-contact a,.wm-link{ color:#fcb017;text-decoration:none;border-bottom:1px dashed rgba(252,176,23,.6); }
    .wm-contact a:hover,.wm-link:hover{border-bottom-color:#fcb017}
    .wm-vh{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
    @media (max-width: 480px) { .wm-actions{ justify-content: center; } }


  
    /* ========================= UPDATED BLOG LAYOUT - FULL WIDTH ========================= */
    .esp-container { flex: 1; display: flex; flex-direction: column; width: 100%; }
    
    /* Layout Wrapper */
    .esp-blog-layout {
      width: 100%; 
      margin: 0; 
      padding: 0;
    }
    
    /* Main Content Column */
    .wrap-blog {
      width: 100%;
      min-width: 0;
      margin: 0;
      padding: 0;
      background: #fff;
      border: none;
      border-radius: 0;
      box-shadow: none;
      overflow: hidden;
    }
    /* Updated wrap-blog section spacing to match enforced rules */
    .wrap-blog .section { 
        padding: 60px 16px 50px;
    }
    @media (min-width: 960px) {
        .wrap-blog .section {
            padding: 70px 16px 60px;
        }
    }

    .wrap-blog .wrap { max-width: 1200px; padding: 0; margin: 0 auto; }
    .wrap-blog .hero-min { padding-top: 90px; }
    
    @media (prefers-reduced-motion: reduce){
      *{transition:none!important;animation:none!important;scroll-behavior:auto!important}
    }

/* ===== LOCKED SCOPE ===== */
            .esp.mg-faqs-birmingham.v2{
              all: revert;
              --brand:#FCB017; --ink:#111; --line:#d9d9d9;
              font-family: Nunito, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";
              color:#222; 
              /* UPDATED: Added Gradient Background here to match .ninja class */
              background: radial-gradient(1200px 400px at 50% -10%, #FFF7E3 0%, rgba(255,247,227,0) 60%), #fff;
              
              /* Updated to match Enforced Spacing: 60/50 Mobile, 70/60 Desktop */
              padding: 60px 16px 50px;
              
              border: none;
              scroll-margin-top:100px;
            }
            @media (min-width: 960px) {
                .esp.mg-faqs-birmingham.v2 {
                    padding: 70px 16px 60px;
                }
            }

            .esp.mg-faqs-birmingham.v2 *{ box-sizing:border-box; font-family:inherit; }
            .esp.mg-faqs-birmingham.v2 .wrap{ max-width:1100px; margin:0 auto; }

            .esp.mg-faqs-birmingham.v2 .head{ position:relative; padding-left:18px; margin-bottom:8px; }
            .esp.mg-faqs-birmingham.v2 .head::before{
              content:""; position:absolute; left:0; top:6px; bottom:6px; width:4px; border-radius:4px;
              background:linear-gradient(180deg,var(--brand),#ffd06a);
            }

            .esp.mg-faqs-birmingham.v2 .eyebrow{
              display:inline-flex; align-items:center; gap:8px;
              padding:6px 14px; border:1px solid var(--line); border-radius:999px;
              font-weight:700; font-size:12px; letter-spacing:.06em; text-transform:uppercase;
              color:var(--brand); background:#fff; margin:0 0 10px;
            }

            #mg-faqs-bham-title{
              margin:0 0 10px; font-weight:700; color:var(--ink);
              font-size:clamp(22px,4.4vw,30px); line-height:1.15; letter-spacing:-.01em;
            }

            .esp.mg-faqs-birmingham.v2 .list{ display:grid; gap:12px; }
            .esp.mg-faqs-birmingham.v2 details{
              border:1px solid var(--line); border-radius:14px; background:#fff; overflow:hidden;
              transition:border-color .15s, box-shadow .15s, transform .15s;
            }
            .esp.mg-faqs-birmingham.v2 details[open],
            .esp.mg-faqs-birmingham.v2 details:hover{ border-color:var(--brand); box-shadow:0 10px 22px rgba(0,0,0,.06); transform:translateY(-1px); }

            .esp.mg-faqs-birmingham.v2 summary{
              list-style:none; cursor:pointer; outline:none;
              display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center;
              padding:14px 16px; font-weight:700; color:#111; font-size:16px;
            }
            .esp.mg-faqs-birmingham.v2 summary::-webkit-details-marker{ display:none; }

            /* ARROW STYLE */
            .esp.mg-faqs-birmingham.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-birmingham.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 0.2s ease;
                margin-bottom: 4px; /* Visual centering */
            }
            .esp.mg-faqs-birmingham.v2 details[open] .chev::after{ 
                transform: rotate(-135deg); 
                margin-bottom: -2px;
            }

            /* SMOOTH ANIMATION STYLES */
            .esp.mg-faqs-birmingham.v2 .answer{
              max-height: 0;
              opacity: 0;
              overflow: hidden;
              transition: max-height 0.3s ease-out, opacity 0.3s ease-out, padding 0.3s ease;
              padding: 0 16px; /* Collapsed padding */
              border-top: 1px solid transparent;
              font-size: 14.5px; line-height: 1.7; color: #333;
            }
            /* UPDATED: RESTORED OPACITY & MAX-HEIGHT to ensure it stays visible */
            .esp.mg-faqs-birmingham.v2 details[open] .answer {
              border-top: 1px solid var(--line);
              padding-bottom: 16px;
              opacity: 1; /* Essential */
              max-height: none; /* Essential */
            }
            .esp.mg-faqs-birmingham.v2 .answer p{ margin:12px 0 14px; }

/* Inline styles for iso-45001-certification.html */
.st-946c6b80 { margin:10px 0 0 !important; font:700 13px/1.4 Nunito !important; color:#374151 !important; }

/* === FAQ ACCORDION ? FAQS.HTML REFERENCE === */
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) .list{display:grid;gap:12px}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) details{margin:0;border:1px solid #d9d9d9;border-radius:14px;background:#fff;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) details[open],:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) details:hover{border-color:#fcb017;box-shadow:0 10px 22px rgba(0,0,0,.06);transform:translateY(-1px)}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;width:100%;margin:0;padding:14px 16px;border:0;border-radius:0;outline:0;list-style:none;background:#fff;color:#111;font:700 16px/1.45 Nunito,system-ui,sans-serif;text-align:left;cursor:pointer;box-shadow:none;appearance:none}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) summary::-webkit-details-marker{display:none}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) .chev{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;margin:0;border:1px solid #d9d9d9;border-radius:999px;background:#fff;color:transparent;font-size:0;line-height:1}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) .chev::after{content:"";display:inline-block;width:8px;height:8px;margin-bottom:4px;border-right:2.5px solid #fcb017;border-bottom:2.5px solid #fcb017;transform:rotate(45deg);transition:transform .2s ease,margin .2s ease}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) details[open] .chev::after{margin-bottom:-2px;transform:rotate(-135deg)}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) .answer{max-height:0;opacity:0;overflow:hidden;padding:0 16px;border-top:1px solid transparent;background:#fff;color:#333;font-size:14.5px;line-height:1.7;transition:max-height .3s ease-out,opacity .3s ease-out,padding .3s ease}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) details[open] .answer{max-height:none;opacity:1;padding-bottom:16px;border-top-color:#d9d9d9}
:is(.esp.mg-faqs-wm.v2,.esp.mg-faqs-birmingham.v2) .answer p{margin:12px 0 14px;padding:0;color:#333}

/* === 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;
}

/* === CONSULTANCY PRICING CARD === */
.st-539b047e { text-align:center !important; }
.st-7d712e65 { font:700 clamp(24px,4.4vw,36px)/1.15 Nunito,sans-serif !important; color:#111 !important; margin:14px 0 0 !important; }
.st-1cd906bc { margin:12px auto !important; }
.st-7b8a0882 { margin:24px auto 0 !important; max-width:500px !important; background:#fff !important; padding:30px !important; border-radius:16px !important; border:2px solid var(--brand,#FCB017) !important; box-shadow:0 10px 30px rgba(252,176,23,.15) !important; }
.st-1a5b8288 { margin:0 !important; font:700 22px/1.2 Nunito,sans-serif !important; color:#111 !important; }
.st-6ddc0463 { margin:10px 0 0 !important; font:600 15px/1.5 Nunito,sans-serif !important; color:#555 !important; }
.st-6c1bb122 { margin:20px 0 !important; font:700 42px/1 Nunito,sans-serif !important; color:var(--brand,#FCB017) !important; }
.st-3d5eeb87 { font-size:16px !important; color:#777 !important; font-weight:600 !important; }
.st-9288f766 { width:100% !important; box-sizing:border-box !important; }
/* Preserve the original centred final CTA after inline-style extraction. */
.st-13076d95 { text-align:center !important; }
.st-ca8ced99 { font:700 clamp(22px,4vw,32px)/1.2 Nunito !important; color:#111 !important; margin:0 0 8px !important; }
.st-4c40f894 { margin:0 auto 16px !important; max-width:70ch !important; }
