



    :root{
      --ink:#1F2935;
      --ink-2:#293746;
      --ink-3:#3a4a5b;
      --teal:#46C6C3;
      --teal-dark:#176B69;
      --green:#8AC646;
      --mist:#ECF9F9;
      --white:#FFFFFF;
      --paper:#F6FAFA;
      --paper-2:#F0F7F7;
      --line:#D9E7E7;
      --muted:#60707C;
      --muted-2:#84919B;
      --warning:#FFEEBF;
      --warning-text:#6B5217;
      --radius:26px;
      --radius-md:20px;
      --radius-sm:14px;
      --shadow:0 28px 70px rgba(31,41,53,.14);
      --shadow-sm:0 12px 34px rgba(31,41,53,.08);
      --max:1200px;
    }

    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      color:var(--ink);
      background:var(--white);
      font-family:Montserrat,"Montserrat Fallback",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      font-size:16px;
      line-height:1.65;
      -webkit-font-smoothing:antialiased;
      text-rendering:optimizeLegibility;
    }
    img,svg{display:block;max-width:100%}
    [hidden]{display:none!important}
    a{color:inherit;text-decoration:none}
    button,input,select,textarea{font:inherit}
    button,a{ -webkit-tap-highlight-color:transparent }
    :focus-visible{outline:3px solid var(--green);outline-offset:3px}

    .skip-link{
      position:fixed;left:16px;top:-80px;z-index:9999;
      padding:10px 14px;border-radius:10px;background:#fff;color:var(--ink);
      box-shadow:var(--shadow-sm);font-weight:800;transition:.2s ease;
    }
    .skip-link:focus{top:16px}
    .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

    .container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}
    .section{padding:94px 0}
    .section-sm{padding:72px 0}
    .paper{background:var(--paper)}
    .mist{background:var(--mist)}
    .dark{background:var(--ink);color:var(--white)}

    .eyebrow{
      display:inline-flex;align-items:center;gap:9px;margin:0 0 14px;
      color:var(--teal-dark);font-size:.76rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;
    }
    .eyebrow:before{content:"";width:26px;height:3px;border-radius:99px;background:var(--teal)}
    .eyebrow.light{color:#94E9E7}
    .eyebrow.light:before{background:#7adfdd}
    h1,h2,h3,h4,p{margin-top:0}
    h1{font-size:clamp(2.8rem,6vw,5.5rem);line-height:.98;letter-spacing:-.065em;margin-bottom:0;font-weight:850}
    h2{font-size:clamp(2.05rem,4vw,3.35rem);line-height:1.07;letter-spacing:-.045em;margin-bottom:0}
    h3{font-size:1.15rem;line-height:1.25;letter-spacing:-.02em;margin-bottom:0}
    p{margin-bottom:0}
    .lead{max-width:780px;color:var(--muted);font-size:clamp(1.04rem,1.6vw,1.22rem);margin-top:18px}
    .lead.light{color:rgba(255,255,255,.72)}
    .section-head{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:36px}
    .section-head .copy{max-width:760px}
    .section-head .side{max-width:310px;color:var(--muted);font-size:.92rem}
    .section-head.light .side{color:rgba(255,255,255,.62)}

    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:10px;
      min-height:52px;padding:0 21px;border:1px solid transparent;border-radius:13px;
      font-weight:850;letter-spacing:-.01em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
    }
    .btn:hover{transform:translateY(-2px)}
    .btn-primary{background:var(--green);color:#15210f;box-shadow:0 12px 24px rgba(138,198,70,.24)}
    .btn-primary:hover{background:#9cd65a}
    .btn-teal{background:var(--teal);color:#102f2f}
    .btn-dark{background:var(--ink);color:var(--white)}
    .btn-outline{border-color:#b8cccc;background:#fff;color:var(--ink)}
    .btn-ghost{border-color:rgba(255,255,255,.23);background:rgba(255,255,255,.05);color:#fff}
    .btn-arrow:after{content:"→";font-size:1.08em}
    .text-link{font-weight:850;color:var(--teal-dark)}
    .text-link:hover{text-decoration:underline}

    /* HEADER */
    .site-header{
      position:sticky;top:0;z-index:1000;background:rgba(31,41,53,.965);color:#fff;
      border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(14px);
    }
    .nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand{display:inline-flex;align-items:center;color:#fff;line-height:1}
    .brand img{display:block;width:145px;height:auto;max-height:32px;object-fit:contain}
    .nav-links{display:flex;align-items:center;gap:26px;font-size:.9rem;font-weight:750}
    .nav-links a{color:rgba(255,255,255,.8)}
    .nav-links a:hover{color:#fff}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .phone{font-weight:850;font-size:.88rem;color:#fff}
    .menu-btn{display:none;width:46px;height:46px;border:0;border-radius:12px;background:rgba(255,255,255,.09);color:#fff}
    .mobile-menu{display:none;background:var(--ink);border-top:1px solid rgba(255,255,255,.08);padding:10px 24px 22px}
    .mobile-menu a{display:block;color:rgba(255,255,255,.9);font-weight:750;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08)}
    .mobile-menu.open{display:block}

    /* HERO */
    .hero{
      position:relative;overflow:hidden;color:#fff;padding:82px 0 64px;
      background:
        radial-gradient(circle at 88% 16%,rgba(70,198,195,.20),transparent 31%),
        radial-gradient(circle at 10% 85%,rgba(138,198,70,.10),transparent 24%),
        var(--ink);
    }
    .hero:after{
      content:"";position:absolute;inset:-20%;pointer-events:none;opacity:.14;
      background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);
      background-size:72px 72px;transform:rotate(-7deg);mask-image:linear-gradient(to right,#000,transparent 75%);
    }
    .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.04fr .96fr;gap:64px;align-items:center}
    .hero-keyword{
      display:inline-flex;align-items:center;justify-content:center;
      width:274.984px;max-width:100%;padding:10px 14.5px;margin:0 0 20px;
      border:1px solid var(--teal);border-radius:12px;box-shadow:0 10px 30px rgba(0,18,65,.10);
      color:var(--teal);font-family:Montserrat,"Montserrat Fallback",sans-serif;font-size:18px;font-weight:600;
      line-height:1.2;letter-spacing:0;text-transform:uppercase;text-align:center;
    }
    .hero-tagline{
      display:block;color:var(--white);font-family:Montserrat,"Montserrat Fallback",sans-serif;
      font-size:38px;font-weight:800;line-height:40px;letter-spacing:0;margin:0;
    }
    .hero-tagline .teal{color:var(--teal)}
    .hero-copy{max-width:690px;margin-top:23px;color:rgba(255,255,255,.74);font-size:1.08rem}
    .hero-points{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;list-style:none;padding:0;margin:26px 0 30px}
    .hero-points li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;font-weight:700;color:rgba(255,255,255,.89)}
    .tick{flex:0 0 22px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:rgba(70,198,195,.14);border:1px solid rgba(70,198,195,.36);color:#92F0ED;font-size:.74rem;margin-top:2px}
    .hero-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center}

    
    
    
    
    
    

    /* QUOTE CARD */
    .quote-card{background:#fff;color:var(--ink);padding:28px;border-radius:27px;box-shadow:0 34px 86px rgba(0,0,0,.26);border:1px solid rgba(255,255,255,.16)}
    .quote-top{display:block;margin-bottom:20px}
    .quote-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}
    .quote-top h2{font-size:1.55rem;letter-spacing:-.035em}
    .quote-top p{width:100%;font-size:.8rem;color:var(--muted);margin-top:8px}
    .offer{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:#EEF8DE;border:1px solid #D4EAB6;color:#486C1C;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
    .stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:22px}
    .stepbar{height:5px;border-radius:99px;background:#E7EEEE}.stepbar.active{background:var(--teal)}
    .form-step{display:none}.form-step.active{display:block}
    .field-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
    .field{display:grid;gap:7px}.field.full{grid-column:1/-1}
    label,.field-label{font-size:.76rem;font-weight:850;color:#465461}.field-label{display:block}
    input,select,textarea{width:100%;border:1px solid #CAD9D9;border-radius:11px;background:#FBFDFD;color:var(--ink)}
    input,select{min-height:50px;padding:0 13px}textarea{min-height:92px;padding:12px 13px;resize:vertical}
    input::placeholder,textarea::placeholder{color:#6B7780}
    input:focus,select:focus,textarea:focus{outline:none;border-color:var(--teal-dark);box-shadow:0 0 0 3px rgba(70,198,195,.14)}
    .choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
    .choice{position:relative}.choice input{position:absolute;opacity:0;pointer-events:none}
    .choice label{display:block;text-align:center;padding:13px;border:1px solid #CAD9D9;border-radius:12px;background:#FBFDFD;cursor:pointer}
    .choice input:checked+label{border-color:var(--teal-dark);background:var(--mist);box-shadow:0 0 0 2px rgba(70,198,195,.12);color:#176B69}
    .form-footer{display:flex;gap:10px;margin-top:18px}.form-footer .btn{flex:1}
    .form-note{font-size:.71rem;color:#657481;margin-top:12px;line-height:1.45}

    /* TRUST STRIP */
    .trust-strip{background:#17212C;color:#fff;border-top:1px solid rgba(255,255,255,.06)}
    .trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}
    .trust-item{
      display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;column-gap:16px;
      min-height:112px;padding:20px 28px;border-right:1px solid rgba(255,255,255,.08);
    }
    .trust-item:last-child{border-right:0}
    .trust-item > div{min-width:0;display:flex;flex-direction:column;justify-content:center}
    .trust-item strong{display:block;color:#fff;font-size:.9rem;line-height:1.25;font-weight:800;letter-spacing:-.01em}
    .trust-item > div > span{display:block;color:rgba(255,255,255,.58);font-size:.72rem;line-height:1.4;margin-top:6px}

    /* INTRO / FEATURES */
    .intro-grid{display:grid;grid-template-columns:.98fr 1.02fr;gap:68px;align-items:center}
    .feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .feature{padding:22px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 9px 27px rgba(31,41,53,.04)}
    .iconbox{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;background:var(--mist);color:var(--teal-dark);font-weight:900;margin-bottom:16px}
    .feature p{color:var(--muted);font-size:.86rem;line-height:1.55;margin-top:8px}


    /* CARDS */
    .service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
    .service-card{min-height:244px;padding:24px;border-radius:20px;border:1px solid var(--line);background:#fff;display:flex;flex-direction:column;transition:.2s ease}
    .service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-sm);border-color:#BEDADA}
    .service-card .num{font-size:.69rem;letter-spacing:.12em;text-transform:uppercase;font-weight:900;color:var(--teal-dark)}
    .service-card h3{font-size:1.2rem;margin-top:18px}.service-card p{font-size:.86rem;color:var(--muted);margin-top:9px;line-height:1.55}
    .service-card .learn{margin-top:auto;padding-top:18px;font-size:.79rem;font-weight:900;color:var(--ink)}
    .service-card .learn span{color:var(--teal-dark)}

    .chooser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
    .chooser{padding:25px;border-radius:20px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05)}
    .chooser .label{display:inline-flex;padding:6px 8px;border-radius:8px;background:rgba(70,198,195,.12);color:#91E8E5;font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
    .chooser h3{margin-top:16px;color:#fff}.chooser p{margin-top:8px;color:rgba(255,255,255,.62);font-size:.85rem}.chooser a{display:inline-block;margin-top:18px;color:#9FEDEB;font-size:.8rem;font-weight:850}

    /* PROCESS */
    .process{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:38px;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff}
    .step{padding:26px;position:relative;border-right:1px solid var(--line)}.step:last-child{border-right:0}
    .step .step-no{display:inline-block;font-size:2.25rem;font-weight:900;letter-spacing:-.07em;line-height:1;color:var(--teal)}.step h3{margin-top:14px}.step p{margin-top:8px;color:var(--muted);font-size:.84rem;line-height:1.55}

    /* WHAT WE CARRY */
    .goods-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:36px}
    .carry-card{display:grid;grid-template-columns:58px minmax(0,1fr);gap:18px;align-items:center;min-height:144px;padding:22px 26px;border:1px solid rgba(31,41,53,.04);border-radius:24px;background:#fff;box-shadow:0 8px 28px rgba(31,41,53,.035)}
    .carry-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:rgba(70,198,195,.19);color:#2CA8AD}
    .carry-svg{display:block;width:30px;height:30px;max-width:32px;max-height:32px;color:currentColor}
    .carry-copy h3{font-size:1.02rem;line-height:1.22;letter-spacing:-.025em;margin:0;color:var(--ink)}
    .carry-copy h3 a:hover{color:var(--teal-dark);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:3px}
    .carry-copy p{margin-top:6px;color:var(--muted);font-size:.82rem;line-height:1.5}

    /* BUSINESS */
    .business-wrap{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
    .business-panel{background:var(--ink);color:#fff;border-radius:28px;padding:34px;box-shadow:var(--shadow);position:relative;overflow:hidden}
    .business-panel:after{content:"";position:absolute;right:-90px;top:-90px;width:230px;height:230px;border-radius:50%;border:42px solid rgba(70,198,195,.08)}
    .business-list{display:grid;gap:18px;margin-top:22px;position:relative;z-index:1}
    .business-item{display:grid;grid-template-columns:42px minmax(0,1fr);gap:16px;align-items:start}
    .business-item > .tick{
      width:42px;height:42px;min-width:42px;margin:0;
      display:grid;place-items:center;align-self:start;
      border-radius:50%;background:rgba(70,198,195,.13);
      border:1.5px solid rgba(70,198,195,.62);color:var(--teal);
      box-shadow:inset 0 0 0 1px rgba(70,198,195,.05);
    }
    .business-item > .tick svg{
      width:22px;height:22px;margin:0;display:block;
      fill:none;stroke:var(--teal);stroke-width:2.1;
      stroke-linecap:round;stroke-linejoin:round;
    }
    .business-item > div{min-width:0;padding-top:1px}
    .business-item > div > b{display:block;font-size:.94rem;line-height:1.3;color:#fff}
    .business-item > div > span{display:block;font-size:.78rem;line-height:1.65;color:rgba(255,255,255,.64);margin-top:5px}

    /* INDUSTRIES */
    .industry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:34px}
    .industry{padding:23px;border-radius:18px;background:#fff;border:1px solid var(--line)}
    .industry h3{font-size:1rem}.industry p{font-size:.8rem;color:var(--muted);margin-top:7px;line-height:1.5}.industry a{display:inline-block;margin-top:13px;font-size:.76rem;font-weight:850;color:var(--teal-dark)}

    /* COVERAGE */
    .coverage-wrap{position:relative;overflow:visible;display:grid;grid-template-columns:.98fr 1.02fr;gap:54px;align-items:center}
    .coverage-map{
      min-height:560px;border-radius:28px;background:linear-gradient(145deg,#DDF2F1,#F4FBFB);
      border:1px solid #CBE4E3;display:flex;align-items:center;justify-content:center;padding:24px;
      overflow:hidden;box-shadow:0 14px 38px rgba(31,41,53,.06)
    }
    .coverage-map #flextro-city-map{width:min(100%,410px);margin-inline:auto !important}
    .coverage-map-note{margin-top:10px;color:var(--muted);font-size:.75rem;text-align:center;line-height:1.45}
    .coverage-finder{margin-top:20px;padding:20px 20px 20px;background:
      radial-gradient(circle at 96% 92%,transparent 0 92px,rgba(70,198,195,.09) 93px 128px,transparent 129px),
      var(--ink);border-radius:24px;position:relative;overflow:visible;z-index:30;box-shadow:0 16px 36px rgba(31,41,53,.13)}
    .coverage-finder:after{display:none}
    .coverage-finder h3{position:relative;z-index:1;margin:0 0 12px;color:#fff;font-size:clamp(1.3rem,2vw,1.7rem);line-height:1.08;letter-spacing:-.035em;max-width:520px}
    .coverage-finder-field{position:relative;z-index:40}
    .coverage-finder-field input{width:100%;min-height:58px;padding:0 18px;border:2px solid #C6D3D4;border-radius:14px;background:#fff;color:var(--ink);font-size:clamp(.92rem,1.4vw,1.02rem);font-weight:500;box-shadow:0 1px 0 rgba(255,255,255,.5)}
    .coverage-finder-field input::placeholder{color:#6B7780}
    .coverage-finder-field input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 4px rgba(70,198,195,.16)}
    .coverage-search-results{display:none;position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:999;max-height:290px;overflow:auto;padding:7px;background:#fff;border:1px solid #D3E1E1;border-radius:15px;box-shadow:0 18px 40px rgba(18,29,39,.22)}
    .coverage-search-results.is-open{display:block}
    .coverage-search-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:0;border-radius:11px;background:#fff;color:var(--ink);font:inherit;font-size:.9rem;font-weight:750;text-align:left;cursor:pointer;transition:background .16s ease,color .16s ease}
    .coverage-search-option:hover,.coverage-search-option[aria-selected="true"]{background:var(--mist);color:#176B69}
    .coverage-search-option small{font-size:.67rem;font-weight:700;color:#657481;white-space:nowrap}
    .coverage-search-state{padding:13px 14px;color:#657481;font-size:.8rem;line-height:1.45}
    .coverage-search-state.loading:before{content:"";display:inline-block;width:12px;height:12px;margin-right:8px;border:2px solid #C9DDDC;border-top-color:var(--teal);border-radius:50%;vertical-align:-2px;animation:fxSearchSpin .7s linear infinite}
    @keyframes fxSearchSpin{to{transform:rotate(360deg)}}


#flextro-city-map,
#flextro-city-map * {
    box-sizing: border-box;
}

#flextro-city-map {
    --fx-bunker: #1F2935;
    --fx-turquoise: #46C6C3;
    --fx-green: #8AC646;
    --fx-azure: #ECF9F9;
    --fx-white: #FFFFFF;

    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: hidden;
    line-height: 0;
    font-family: "Montserrat","Montserrat Fallback", Arial, sans-serif;
}

#flextro-city-map-svg {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    overflow: visible;
}

.fx-map-shadow {
    fill: rgba(31, 41, 53, 0.04);
    pointer-events: none;
}

.fx-map-land {
    fill: #ECF9F9;
    stroke: #46C6C3;
    stroke-width: 1.5;
    vector-effect: non-scaling-stroke;
    pointer-events: none;
}

.fx-map-route {
    fill: none;
    stroke: rgba(70, 198, 195, 0.29);
    stroke-width: 1;
    stroke-dasharray: 4 7;
    stroke-linecap: round;
    vector-effect: non-scaling-stroke;
    pointer-events: none;
}

.fx-city-link {
    cursor: pointer;
    outline: none;
}

.fx-city-hit {
    fill: transparent;
    pointer-events: all;
}

.fx-city-halo {
    fill: rgba(70, 198, 195, 0.16);
    pointer-events: none;
    transition: fill .18s ease, r .18s ease;
}

.fx-city-dot {
    fill: #46C6C3;
    stroke: #FFFFFF;
    stroke-width: 1.8;
    vector-effect: non-scaling-stroke;
    pointer-events: none;
    filter: drop-shadow(0 2px 3px rgba(31, 41, 53, .20));
    transition: fill .18s ease, r .18s ease, filter .18s ease;
}

.fx-city-link:hover .fx-city-dot,
.fx-city-link:focus .fx-city-dot,
.fx-city-link.fx-active-city .fx-city-dot {
    fill: #8AC646;
    r: 5.8;
    filter: drop-shadow(0 3px 5px rgba(31, 41, 53, .24));
}

.fx-city-link:hover .fx-city-halo,
.fx-city-link:focus .fx-city-halo,
.fx-city-link.fx-active-city .fx-city-halo {
    fill: rgba(138, 198, 70, .22);
    r: 11;
}

.fx-smart-tooltip {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .12s ease, visibility .12s ease;
}

.fx-smart-tooltip.fx-visible {
    opacity: 1;
    visibility: visible;
}

.fx-smart-tooltip-box {
    fill: #1F2935;
    stroke: #8AC646;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
    filter: drop-shadow(0 6px 12px rgba(31, 41, 53, .18));
}

.fx-smart-tooltip-text {
    fill: #FFFFFF;
    font-family: "Montserrat","Montserrat Fallback", Arial, sans-serif;
    font-size: 10.5px;
    font-weight: 600;
    dominant-baseline: middle;
    text-anchor: middle;
}

/* Remove Elementor spacing around widget */
.elementor-widget-html:has(#flextro-city-map),
.elementor-widget-html:has(#flextro-city-map) .elementor-widget-container {
    margin: 0 !important;
    padding: 0 !important;
}

    /* COMPARISON */
    .compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:36px}
    .compare{padding:29px;border-radius:22px;border:1px solid var(--line);background:#fff}
    .compare.primary{border-color:#AEE0DE;box-shadow:0 17px 40px rgba(70,198,195,.10)}
    .compare .tag{display:inline-flex;padding:6px 9px;border-radius:999px;font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;background:var(--mist);color:var(--teal-dark)}
    .compare ul{list-style:none;padding:0;margin:21px 0 0;display:grid;gap:12px}
    .compare li{display:flex;gap:10px;font-size:.84rem;color:#53626E}.compare li:before{content:"✓";color:var(--teal-dark);font-weight:900}.compare.standard li:before{content:"•";color:#98A5AE}

    /* DELIVERY UPDATES */
    .updates-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:56px;align-items:center}
    .updates-ui{background:#fff;border:1px solid var(--line);border-radius:28px;padding:26px;box-shadow:var(--shadow)}
    .updates-top{display:flex;justify-content:space-between;gap:18px;align-items:center;padding-bottom:18px;border-bottom:1px solid var(--line)}
    .updates-top strong{font-size:.92rem}.updates-top span{font-size:.72rem;color:var(--teal-dark);font-weight:850;background:var(--mist);padding:6px 8px;border-radius:999px}
    .updates-map{height:170px;border-radius:18px;background:linear-gradient(145deg,#EEF8F8,#E7F3F3);margin:18px 0;position:relative;overflow:hidden}
    .updates-map:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(31,41,53,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(31,41,53,.05) 1px,transparent 1px);background-size:34px 34px}
    .updates-map.fx-update-panel{height:auto;min-height:170px;display:grid;align-content:center;gap:10px;padding:16px;background:linear-gradient(145deg,#EEF8F8,#E7F3F3)}
    .updates-map.fx-update-panel:before{display:none}
    .fx-update-row{position:relative;z-index:1;background:#fff;border:1px solid var(--line);border-radius:13px;padding:11px 13px;display:grid;gap:3px;box-shadow:0 5px 14px rgba(31,41,53,.05)}
    .fx-update-row b{font-size:.73rem;color:var(--ink)}
    .fx-update-row span{font-size:.66rem;color:var(--muted);line-height:1.45}
    .updates-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
    .updates-status{font-size:.67rem;color:var(--muted)}.updates-status b{display:block;color:var(--ink);font-size:.72rem;margin-bottom:3px}.updates-status.done b{color:var(--teal-dark)}
    .updates-benefits{display:grid;gap:13px;margin-top:24px}.updates-benefit{display:flex;gap:12px}.updates-benefit p{font-size:.82rem;color:var(--muted);margin-top:3px}

    /* FLEET — mirrors the current Flextro homepage vehicle carousel */
    .fleet-section{background:var(--white)}
    .fleet-intro{margin-bottom:34px}.fleet-cta{text-align:center;margin-top:28px}
    .fleet-cta .btn{min-width:235px}

    /* PRACTICAL */
    .practical-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
    .practical-card{padding:26px;border-radius:20px;border:1px solid var(--line);background:#fff}
    .practical-card p{font-size:.84rem;color:var(--muted);margin-top:9px;line-height:1.55}.practical-card a{display:inline-block;margin-top:17px;font-size:.78rem;font-weight:850;color:var(--teal-dark)}

    /* PROOF */
    .proof-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:46px;align-items:center}
    .stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.stat-card{padding:24px;border-radius:18px;background:#fff;border:1px solid var(--line)}
    .stat-card strong{display:block;font-size:2rem;letter-spacing:-.05em}.stat-card span{display:block;font-size:.76rem;color:var(--muted);margin-top:4px}
    .proof-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
    .case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
    .case-card{padding:27px;border-radius:20px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm)}
    .case-card .case-label{display:inline-flex;padding:6px 9px;border-radius:999px;background:var(--mist);color:var(--teal-dark);font-size:.66rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
    .case-card h3{margin-top:16px;font-size:1.05rem}.case-card p{margin-top:9px;color:var(--muted);font-size:.82rem;line-height:1.58}.case-card a{display:inline-block;margin-top:17px;color:var(--teal-dark);font-size:.78rem;font-weight:850}
    .pricing-factors{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}
    .pricing-factors li{position:relative;padding-left:18px;color:var(--muted);font-size:.78rem;line-height:1.45}.pricing-factors li:before{content:"";position:absolute;left:0;top:.62em;width:7px;height:7px;border-radius:50%;background:var(--teal)}
    .proof-note{font-size:.72rem;color:var(--muted);margin-top:12px}

    /* GUIDES */
    .guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
    .guide{border-radius:20px;overflow:hidden;border:1px solid var(--line);background:#fff}
    .guide-art{height:118px;background:linear-gradient(135deg,var(--ink),var(--ink-3));position:relative;overflow:hidden}
    .guide-art:before{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-45px;top:-62px;border:25px solid rgba(70,198,195,.2)}
    .guide-body{padding:21px}.guide-body .meta{font-size:.65rem;color:var(--teal-dark);font-weight:900;text-transform:uppercase;letter-spacing:.09em}.guide-body h3{margin-top:9px}.guide-body p{font-size:.78rem;color:var(--muted);margin-top:8px;line-height:1.5}.guide-body a{display:inline-block;margin-top:14px;font-size:.77rem;font-weight:850;color:var(--teal-dark)}

    /* FAQ */
    .faq-wrap{display:grid;grid-template-columns:.72fr 1.28fr;gap:52px;align-items:start}
    .faq-list{display:grid;gap:10px}
    details{border:1px solid var(--line);border-radius:15px;background:#fff;padding:0 18px}
    summary{list-style:none;cursor:pointer;padding:18px 34px 18px 0;font-weight:850;font-size:.9rem;position:relative}
    summary::-webkit-details-marker{display:none}
    summary:after{content:"+";position:absolute;right:0;top:14px;font-size:1.45rem;color:var(--teal-dark);font-weight:500}
    details[open] summary:after{content:"–"}
    details p{padding:0 0 18px;color:var(--muted);font-size:.84rem;line-height:1.58}

    /* FINAL CTA */
    .final-cta{padding:78px 0;background:var(--ink);color:#fff;position:relative;overflow:hidden}
    .final-cta:before{content:"";position:absolute;right:-170px;top:-220px;width:520px;height:520px;border-radius:50%;border:75px solid rgba(70,198,195,.07)}
    .cta-grid{position:relative;z-index:2;display:flex;justify-content:space-between;gap:40px;align-items:center}
    .cta-grid h2{max-width:760px}.cta-grid p{margin-top:12px;color:rgba(255,255,255,.65);max-width:690px}.cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}

    /* FOOTER */
    footer{background:#141D27;color:rgba(255,255,255,.7);padding:54px 0 28px}
    .footer-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:36px}
    .footer-brand p{font-size:.8rem;max-width:360px;margin-top:13px;line-height:1.55;color:rgba(255,255,255,.55)}
    .footer-col h3{font-size:.8rem;color:#fff;text-transform:uppercase;letter-spacing:.09em}.footer-col a{display:block;margin-top:9px;font-size:.77rem;color:rgba(255,255,255,.61)}.footer-col a:hover{color:#fff}
    .footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:38px;padding-top:22px;border-top:1px solid rgba(255,255,255,.09);font-size:.7rem;color:rgba(255,255,255,.52)}
    .footer-legal{display:flex;gap:16px;flex-wrap:wrap}.footer-legal a{color:rgba(255,255,255,.68)}.footer-legal a:hover{color:#fff;text-decoration:underline}
    .map-fallback{display:none;margin:18px 0 0;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--muted);font-size:.84rem;line-height:1.55}
    .map-fallback.is-visible{display:block}

    .mobile-bar{display:none}

    @media (prefers-reduced-motion: reduce){
      html{scroll-behavior:auto}
      *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
    }

    @media (max-width:1050px){
      .review-slide{flex-basis:calc((100% - 16px)/2)}
      .nav-links{display:none}.menu-btn{display:grid;place-items:center}.phone{display:none}
      .hero-grid,.intro-grid,.business-wrap,.coverage-wrap,.updates-grid,.proof-wrap{grid-template-columns:1fr;gap:40px}
      .hero{padding-top:62px}.quote-card{max-width:720px}.service-grid,.industry-grid,.guide-grid,.case-grid{grid-template-columns:repeat(2,1fr)}
      .goods-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-wrap{grid-template-columns:1fr}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-grid .footer-col:last-child{grid-column:2/4}
    }
    @media (max-width:760px){
      .review-slide{flex-basis:100%}
      .container{width:min(calc(100% - 28px),var(--max))}.section{padding:70px 0}.section-sm{padding:58px 0}
      .nav{min-height:70px}.nav-actions .btn{display:none}.brand img{width:132px}
      h1{font-size:clamp(2.7rem,13vw,4.3rem)}h2{font-size:clamp(1.8rem,9vw,2.65rem)}
      .hero{padding:48px 0 40px}.hero-keyword{width:177px;font-size:18px;margin-bottom:18px}.hero-tagline{font-size:27px;line-height:1.3}.hero-points{grid-template-columns:1fr}.hero-actions .btn{width:100%}
      .quote-card{padding:21px;border-radius:22px}.quote-top{display:block}.offer{display:inline-flex;margin-top:11px}
      .field-grid,.choice-grid{grid-template-columns:1fr}.field.full{grid-column:auto}
      .trust-grid{grid-template-columns:1fr 1fr}.trust-item{min-height:104px;padding:17px 16px;grid-template-columns:48px minmax(0,1fr);column-gap:13px}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.08)}.trust-item:last-child{grid-column:1/-1;border-right:0}
      .section-head{display:block}.section-head .side{margin-top:14px}.feature-grid,.service-grid,.chooser-grid,.process,.goods-grid,.industry-grid,.compare-grid,.practical-grid,.guide-grid,.case-grid{grid-template-columns:1fr}
      .process{border:0;gap:10px;background:transparent}.step{border:1px solid var(--line)!important;border-radius:16px;background:#fff;padding:21px}
      .coverage-map{min-height:0;padding:18px}.coverage-map #flextro-city-map{width:min(100%,350px)}.coverage-finder{padding:18px 16px;border-radius:20px}.coverage-finder h3{font-size:1.3rem;margin-bottom:10px}.coverage-finder-field input{min-height:54px;padding:0 16px;font-size:.96rem}
      .updates-timeline{grid-template-columns:1fr 1fr;gap:13px}.stat-grid{grid-template-columns:1fr 1fr}
      .cta-grid{display:block}.cta-actions{justify-content:flex-start;margin-top:24px}.cta-actions .btn{width:100%}
      .footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid .footer-col:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}
      .mobile-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:1100;background:#fff;border-top:1px solid var(--line);padding:8px;gap:8px;box-shadow:0 -10px 30px rgba(31,41,53,.12)}
      .mobile-bar .btn{min-height:46px;padding:0 12px;font-size:.82rem}.mobile-spacer{height:64px}
    }
    @media (max-width:460px){
      .trust-grid{grid-template-columns:1fr}.trust-item{min-height:92px;padding:16px 18px;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important}.trust-item:last-child{border-bottom:0!important}
      .stat-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-grid .footer-col:last-child{grid-column:auto}
    }
  

    /* =========================================================
       BRAND + ICON REFINEMENT
       Flextro Brand Book: Bunker #1F2935, Turquoise #46C6C3,
       White #FFFFFF, Atlantis #8AC646, Azure #ECF9F9.
       ========================================================= */
    .iconbox{
      width:50px;height:50px;min-width:50px;border-radius:14px;
      display:flex;align-items:center;justify-content:center;
      background:var(--mist);border:1px solid rgba(70,198,195,.42);
      color:var(--teal);margin:0 0 16px;line-height:1;
      box-shadow:none;
    }
    .iconbox svg{width:25px;height:25px;display:block;fill:none;stroke:var(--teal);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
    .iconbox svg.flextro-van-icon{width:31px;height:auto;fill:currentColor;stroke:none;color:var(--teal)}
    .feature{display:flex;flex-direction:column;align-items:flex-start}
    .feature .iconbox{align-self:flex-start}
    .updates-benefit{display:grid!important;grid-template-columns:50px minmax(0,1fr);gap:16px!important;align-items:start!important}
    .updates-benefit .iconbox{margin:0!important;align-self:start}
    .practical-card{display:flex;flex-direction:column;align-items:flex-start}
    .practical-card .iconbox{align-self:flex-start}
    .trust-item .trust-icon{
      width:48px;height:48px;min-width:48px;margin:0;border-radius:14px;
      display:grid;place-items:center;text-align:center;align-self:center;
      background:rgba(70,198,195,.13);border:1.5px solid rgba(70,198,195,.48);
      box-shadow:none;color:var(--teal);
    }
    .trust-item .trust-icon svg{
      width:23px;height:23px;margin:0;fill:none;stroke:var(--teal);stroke-width:2.1;
      stroke-linecap:round;stroke-linejoin:round;
    }
    .trust-item .trust-icon .trust-mark{
      display:block;margin:0;color:var(--teal);font-weight:800;line-height:1;
      letter-spacing:-.02em;transform:none;
    }
    .trust-item .trust-icon .trust-mark.small{font-size:.95rem}
    .trust-item .trust-icon .trust-mark.tiny{font-size:.76rem;letter-spacing:-.04em}
    .tick{display:flex;align-items:center;justify-content:center;padding:0}
    .tick svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}

    /* =========================================================
       LIVE-SITE HEADER TREATMENT
       Mirrors the floating light-azure navigation used live.
       ========================================================= */
    .site-header.live-header{position:absolute;top:20px;left:0;right:0;z-index:1000;background:transparent;border:0;backdrop-filter:none;color:#fff}
    .live-header-shell{width:min(calc(100% - 10%),1320px);max-width:1320px;min-height:76px;padding:0 36px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:var(--ink);display:flex;align-items:center;justify-content:space-between;gap:28px;box-shadow:0 10px 28px rgba(0,0,0,.16)}
    .live-brand{flex:0 0 auto}.live-brand img{width:156px;height:auto;max-height:36px;object-fit:contain}
    .live-nav{gap:28px;font-size:.88rem;font-weight:650;color:#fff}
    .live-nav>a,.live-nav-parent{color:rgba(255,255,255,.88)!important;padding:25px 0;display:flex;align-items:center;gap:5px}
    .live-nav>a:hover,.live-nav-parent:hover,.live-nav>a:focus-visible,.live-nav-parent:focus-visible{color:var(--teal)!important}
    .live-nav-item{position:relative}
    .live-mega{position:absolute;top:calc(100% - 2px);left:50%;transform:translateX(-50%) translateY(8px);width:min(780px,80vw);padding:24px;border-radius:16px;background:var(--ink);color:#fff;box-shadow:0 24px 60px rgba(31,41,53,.24);opacity:0;visibility:hidden;pointer-events:none;transition:.18s ease;z-index:50}
    .live-nav-item:hover .live-mega,.live-nav-item:focus-within .live-mega{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
    .live-mega-title{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--teal);font-weight:800;margin-bottom:14px}
    .live-mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px 16px}
    .live-mega-grid a{color:rgba(255,255,255,.88);padding:9px 10px;border-radius:8px;font-size:.8rem;font-weight:600}
    .live-mega-grid a:hover,.live-mega-grid a:focus-visible{background:rgba(70,198,195,.12);color:#fff}
    .live-nav-actions{gap:12px}
    .live-call{
      display:inline-flex;align-items:center;justify-content:center;gap:11px;
      min-height:54px;padding:0 22px;border-radius:18px;
      background:#2F9FA4;color:#fff!important;white-space:nowrap;
      font-size:1.02rem;font-weight:800;line-height:1;
      box-shadow:0 8px 18px rgba(47,159,164,.20);
      transition:background .18s ease,transform .18s ease,box-shadow .18s ease;
    }
    .live-call:hover,.live-call:focus-visible{background:#278B90;color:#fff!important;transform:translateY(-1px);box-shadow:0 10px 22px rgba(47,159,164,.28)}
    .live-call svg{width:22px;height:22px;flex:0 0 22px;fill:#fff;display:block}
    .live-header .menu-btn{background:var(--ink);border-radius:8px;width:44px;height:44px;padding:11px;border:0;display:none;flex-direction:column;justify-content:center;gap:5px}
    .live-header .menu-btn span{display:block;width:100%;height:2px;background:#fff;border-radius:4px}
    .live-mobile-menu{position:absolute;top:86px;left:20px;right:20px;max-height:calc(100vh - 110px);overflow:auto;background:var(--ink);border-radius:14px;padding:12px 20px 20px;box-shadow:0 24px 60px rgba(31,41,53,.28)}
    .live-mobile-menu a{color:#fff;padding:11px 0;border-color:rgba(255,255,255,.09)}
    .live-mobile-menu .mobile-subnav{padding:0 0 6px 14px;border-left:2px solid rgba(70,198,195,.3)}
    .live-mobile-menu .mobile-subnav a{font-size:.8rem;color:rgba(255,255,255,.74);padding:8px 0}
    .live-mobile-menu .mobile-call-link{color:var(--teal);font-weight:800;margin-top:5px}
    .hero{padding-top:132px}

    /* =========================================================
       LIVE-SITE FOOTER TREATMENT
       Mirrors the Azure footer, column labels and legal row.
       ========================================================= */
    .live-footer{background:#141D27;color:rgba(255,255,255,.78);padding:0;font-family:Montserrat,"Montserrat Fallback",ui-sans-serif,system-ui,sans-serif}
    .live-footer-main{padding-top:88px;padding-bottom:48px}
    .live-footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:34px;align-items:start}
    .live-footer-intro{max-width:300px}.live-footer-logo img{width:116px;height:auto;filter:none}
    .live-footer-intro h2{font-size:1.05rem;line-height:1.35;letter-spacing:-.02em;margin:22px 0 8px;color:#fff}
    .live-footer-intro p{font-size:.82rem;line-height:1.6;color:rgba(255,255,255,.58)}
    .live-socials{display:flex;gap:7px;margin-top:18px}.live-socials a{width:32px;height:32px;border-radius:6px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.72);font-size:.7rem;font-weight:800;text-transform:lowercase}.live-socials a svg{width:16px;height:16px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.live-socials a:first-child svg{fill:currentColor;stroke:none}.live-socials a:hover{background:var(--teal);border-color:var(--teal);color:var(--ink)}
    .live-footer-col h3{font-size:1rem;font-weight:700;color:#fff;margin:0 0 16px}.live-footer-col>a{display:block;margin:0 0 11px;color:rgba(255,255,255,.60);font-size:.78rem;line-height:1.45}.live-footer-col>a:hover{color:var(--teal);text-decoration:underline}
    .live-contact>a{display:flex;align-items:flex-start;gap:10px}.footer-contact-icon{flex:0 0 22px;width:22px;height:22px;display:flex;align-items:center;justify-content:center;color:var(--teal)}.footer-contact-icon svg{width:18px;height:18px;fill:none;stroke:var(--teal);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
    .live-footer-rule{height:3px;background:var(--teal);opacity:.65}
    .live-footer-bottom{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:rgba(255,255,255,.52);font-size:.76rem}.live-footer-bottom nav{display:flex;gap:22px}.live-footer-bottom a{color:rgba(255,255,255,.68)}.live-footer-bottom a:hover{text-decoration:underline;color:var(--teal)}

    @media(max-width:1100px){
      .live-nav{gap:18px;font-size:.82rem}.live-call{display:none}.live-footer-grid{grid-template-columns:1.25fr repeat(2,1fr)}.live-footer-intro{grid-row:span 2}.live-contact{grid-column:2/4}
    }
    @media(max-width:1050px){
      .site-header.live-header{top:12px}.live-header-shell{min-height:68px;padding:0 18px}.live-nav{display:none}.live-header .menu-btn{display:flex}.live-mobile-menu.open{display:block}.hero{padding-top:112px}
    }
    @media(max-width:700px){
      .live-header-shell{width:calc(100% - 28px)}.live-brand img{width:132px}.live-mobile-menu{left:14px;right:14px;top:74px}
      .live-footer-main{padding-top:62px;padding-bottom:38px}.live-footer-grid{grid-template-columns:1fr 1fr;gap:34px 24px}.live-footer-intro{grid-column:1/-1;grid-row:auto;max-width:100%}.live-contact{grid-column:1/-1}.live-footer-bottom{display:block;padding:18px 0}.live-footer-bottom nav{margin-top:10px;gap:16px;flex-wrap:wrap}
      .trust-item{align-items:center}.updates-benefit{grid-template-columns:46px minmax(0,1fr)}.updates-benefit .iconbox{width:46px;height:46px;min-width:46px}
    }
    @media(max-width:460px){.live-footer-grid{grid-template-columns:1fr}.live-contact{grid-column:auto}.live-footer-col h3{margin-bottom:12px}}

    /* Final production hardening */
    .hero-grid>*,.intro-grid>*,.business-wrap>*,.coverage-wrap>*,.updates-grid>*,.proof-wrap>*,
    .service-grid>*,.goods-grid>*,.industry-grid>*,.compare-grid>*,.practical-grid>*,.guide-grid>*,.case-grid>*{min-width:0}
    .practical-card{height:100%}
    .practical-card>a{margin-top:auto;padding-top:17px}
    .review-slide,.service-card,.carry-card,.industry,.case-card,.guide,.practical-card{overflow-wrap:anywhere}
    .planned-field-note{font-size:.7rem;color:var(--muted)}
    @media(max-width:600px){
      .reviews-top{align-items:flex-start;flex-direction:column}.reviews-controls{align-self:flex-end}
      .reviews-rating{align-items:flex-start}.review-meta{align-items:flex-start;flex-direction:column}
      .review-meta a{white-space:normal}.quote-top h2{font-size:1.35rem}.quote-card{width:100%}
      .coverage-search-option{align-items:flex-start;flex-direction:column;gap:3px}.coverage-search-option small{white-space:normal}
      .final-cta{padding-bottom:92px}
    }
    @media(max-width:380px){
      .container{width:min(calc(100% - 22px),var(--max))}
      .live-header-shell{width:calc(100% - 20px);padding-inline:14px}
      .quote-card{padding:18px}.service-card,.carry-card,.industry,.case-card,.practical-card,.guide-body{padding-left:19px;padding-right:19px}
      .mobile-bar{padding:7px}.mobile-bar .btn{font-size:.76rem}
    }



.optional{font-weight:600;color:var(--muted);font-size:.68rem}
  .guide-grid:has(.guide:nth-child(4)){grid-template-columns:repeat(4,1fr)}
  .stat-grid .stat-card strong{font-size:1.45rem}
  @media(max-width:1050px){.guide-grid:has(.guide:nth-child(4)){grid-template-columns:repeat(2,1fr)}}
  @media(max-width:760px){.guide-grid:has(.guide:nth-child(4)){grid-template-columns:1fr}}



/* Production final overrides */






.coverage-static-wrap{grid-template-columns:.88fr 1.12fr;align-items:stretch}
.coverage-copy{margin-top:17px;color:var(--muted);font-size:.9rem;max-width:720px}
.coverage-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}
.location-panel{height:100%;padding:30px;border-radius:28px;background:linear-gradient(145deg,#E8F8F7,#F7FCFC);border:1px solid #CBE4E3;box-shadow:0 14px 38px rgba(31,41,53,.06)}
.location-panel h3{font-size:1.55rem}.location-panel>p:not(.eyebrow){margin-top:10px;color:var(--muted);font-size:.84rem;line-height:1.55}
.location-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:22px}
.location-grid a{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 12px;border:1px solid #CDE3E2;border-radius:12px;background:#fff;color:var(--ink);font-size:.76rem;font-weight:800;transition:.18s ease}
.location-grid a:after{content:'→';color:var(--teal-dark)}.location-grid a:hover{border-color:var(--teal);background:var(--mist);transform:translateY(-1px)}
.proof-wrap .stat-card:last-child{grid-column:1/-1}
.form-note a{text-decoration:underline;text-underline-offset:2px;color:var(--teal-dark);font-weight:750}
/* Prevent long labels/URLs from creating horizontal overflow */
main,footer,.live-header-shell,.quote-card,.service-card,.carry-card,.industry,.practical-card,.case-card,.guide,.location-panel{min-width:0}
body{overflow-x:hidden}
@media (max-width:1050px){
  .coverage-static-wrap{grid-template-columns:1fr;gap:34px}.location-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  
}
@media (max-width:900px){
  .section-head{display:block}.section-head .side{max-width:720px;margin-top:14px}
  
  
  .chooser-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chooser-grid .chooser:last-child{grid-column:1/-1}
  .process{grid-template-columns:repeat(2,minmax(0,1fr))}
  .process .step{border-bottom:1px solid var(--line)}.process .step:nth-child(2n){border-right:0}.process .step:nth-last-child(-n+2){border-bottom:0}
  .practical-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.practical-card:last-child{grid-column:1/-1}
  .cta-grid{display:block}.cta-actions{justify-content:flex-start;margin-top:24px}
}
@media (max-width:760px){
  
  
  .hero-keyword{width:auto;max-width:100%;font-size:14px;padding:9px 12px}
  .chooser-grid{grid-template-columns:1fr}.chooser-grid .chooser:last-child{grid-column:auto}
  .practical-grid{grid-template-columns:1fr}.practical-card:last-child{grid-column:auto}
  .location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-panel{padding:22px;border-radius:22px}
  .coverage-actions .btn{width:100%}.proof-wrap .stat-card:last-child{grid-column:auto}
  input,select,textarea{font-size:16px}
}
@media (max-width:420px){.location-grid{grid-template-columns:1fr}}



/* =========================================================
   FLEXTRO — structure, trust and answer-layer components
   Built on the existing token set (--ink, --teal, --paper…)
   ========================================================= */

/* Breadcrumb ------------------------------------------------------------- */
.fx-breadcrumb{background:var(--white);border-bottom:1px solid var(--line)}
.fx-breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:8px;
  margin:0;padding:14px 0;list-style:none;font-size:.79rem;font-weight:650;color:var(--muted)}
.fx-breadcrumb li{display:flex;align-items:center;gap:8px}
.fx-breadcrumb li+li::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--line)}
.fx-breadcrumb a{color:var(--muted);text-decoration:none}
.fx-breadcrumb a:hover{color:var(--teal-dark);text-decoration:underline}
.fx-breadcrumb [aria-current]{color:var(--ink);font-weight:800}

/* Town / city finder, banded under the coverage section ------------------ */
.fx-finder-wrap{margin-top:52px}
.fx-finder{display:grid;grid-template-columns:1fr minmax(0,430px);gap:24px 40px;
  align-items:start;padding:30px 34px;border-radius:22px;background:var(--ink);
  box-shadow:0 18px 44px rgba(31,41,53,.18)}
.fx-finder-copy{padding-top:6px}
.fx-finder-label{display:block;color:#fff;font-size:1.28rem;font-weight:850;
  letter-spacing:-.03em;line-height:1.25}
.fx-finder-sub{margin:8px 0 0;color:rgba(255,255,255,.6);font-size:.84rem;
  line-height:1.55;max-width:46ch}
.fx-finder-field{position:relative;display:flex;align-items:center}
.fx-finder-field svg{position:absolute;left:16px;width:18px;height:18px;
  fill:none;stroke:var(--muted-2);stroke-width:1.9;stroke-linecap:round;pointer-events:none}
.fx-finder input{min-height:52px;padding:0 16px 0 46px;border-radius:13px;
  border:1px solid transparent;background:#fff;color:var(--ink);
  font-family:inherit;font-size:.9rem;font-weight:700}
.fx-finder input::placeholder{color:var(--muted-2);font-weight:600}
.fx-finder input:focus{outline:none;border-color:var(--teal);
  box-shadow:0 0 0 3px rgba(70,198,195,.4)}
.fx-finder input::-webkit-search-cancel-button{cursor:pointer}
.fx-finder-control{position:relative}
.fx-finder-results{position:absolute;top:100%;left:0;right:0;z-index:40;
  margin:8px 0 0;padding:6px;list-style:none;max-height:310px;overflow-y:auto;
  background:#fff;border:1px solid var(--line);border-radius:14px;
  box-shadow:0 22px 48px rgba(31,41,53,.22);overscroll-behavior:contain}
.fx-finder-results::-webkit-scrollbar{width:10px}
.fx-finder-results::-webkit-scrollbar-track{background:transparent}
.fx-finder-results::-webkit-scrollbar-thumb{background:#D3DEDE;border-radius:99px;
  border:3px solid #fff}
.fx-finder-results::-webkit-scrollbar-thumb:hover{background:#B9CACA}
.fx-finder-results a{display:flex;align-items:center;justify-content:space-between;
  gap:16px;min-height:46px;padding:11px 14px;border-radius:9px;
  color:var(--ink);text-decoration:none}
.fx-result-name{font-size:.9rem;font-weight:850;letter-spacing:-.01em}
.fx-result-kind{flex:0 0 auto;color:var(--muted);font-size:.76rem;font-weight:700}
.fx-finder-results a:hover,.fx-finder-results a:focus-visible{background:var(--paper-2);outline:none}
.fx-finder-results a:focus-visible .fx-result-name{color:var(--teal-dark)}
.fx-result-more{padding:10px 14px 8px;color:var(--muted);font-size:.74rem;
  font-weight:700;border-top:1px solid var(--line);margin-top:4px}
.fx-finder-note{margin:11px 2px 0;color:rgba(255,255,255,.66);
  font-size:.79rem;line-height:1.55}
.fx-finder-note a{color:var(--teal);font-weight:850}
.fx-finder-note a:hover{text-decoration:underline}
@media(max-width:900px){.fx-finder{grid-template-columns:1fr;gap:18px;padding:26px 24px}
  .fx-finder-wrap{margin-top:40px}
  .fx-finder-copy{padding-top:0}
  .fx-finder-label{font-size:1.12rem}}
@media(max-width:760px){.location-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.fx-finder{padding:22px 18px;border-radius:18px}}

/* Footer socials: filled brand marks, not stroked outlines */
.live-socials{gap:9px}
.live-socials a{width:34px;height:34px;border-radius:9px}
.live-socials a svg,.live-socials a:first-child svg{
  width:15px;height:15px;fill:currentColor;stroke:none}
.live-socials a{transition:background .15s,color .15s,border-color .15s}

/* Breadcrumb over the dark hero */
.fx-breadcrumb-hero{background:transparent;border-bottom:0}
.fx-breadcrumb-hero ol{padding:0 0 20px;color:rgba(255,255,255,.5)}
.fx-breadcrumb-hero a{color:rgba(255,255,255,.6)}
.fx-breadcrumb-hero a:hover{color:var(--teal)}
.fx-breadcrumb-hero li+li::before{background:rgba(255,255,255,.26)}
.fx-breadcrumb-hero [aria-current]{color:rgba(255,255,255,.94)}
.fx-breadcrumb-hero a:focus-visible{outline-color:var(--teal)}
@media(max-width:760px){.fx-breadcrumb-hero ol{padding-bottom:16px;font-size:.74rem}}

/* Process steps: numbers as chips, matching the icon language elsewhere -- */
.process .step{padding:30px 26px}
.process .step .step-no{display:grid;place-items:center;width:40px;height:40px;
  border-radius:13px;background:rgba(70,198,195,.11);border:1px solid rgba(70,198,195,.34);
  color:var(--teal-dark);font-size:.83rem;font-weight:800;letter-spacing:.01em;
  line-height:1;font-variant-numeric:tabular-nums}
.process .step h3{margin-top:20px;font-size:1.02rem;letter-spacing:-.02em}
.process .step p{margin-top:9px;font-size:.855rem;line-height:1.62}
@media(max-width:1024px){.process .step{padding:26px 22px}}
@media(max-width:620px){.process{grid-template-columns:1fr!important}
  .process .step{padding:22px 20px}
  .process .step .step-no{width:36px;height:36px;border-radius:12px}}

/* Trust strip: five single-line facts, generous spacing ------------------ */
.trust-grid.trust-grid-5{grid-template-columns:repeat(5,1fr)}
.trust-grid-5 .trust-item{min-height:0;padding:34px 16px;align-items:center;
  column-gap:15px;grid-template-columns:42px minmax(0,1fr);
  border-right:1px solid rgba(255,255,255,.07)}
.trust-grid-5 .trust-item:last-child{border-right:0}
.trust-grid-5 .trust-icon{width:42px;height:42px;min-width:42px;border-radius:13px;
  border-width:1px;border-color:rgba(70,198,195,.32);background:rgba(70,198,195,.10)}
.trust-grid-5 .trust-icon svg{width:20px;height:20px}
.trust-grid-5 .trust-item strong{font-size:.845rem;font-weight:700;line-height:1.4;
  letter-spacing:-.015em;color:rgba(255,255,255,.94)}
@media(max-width:1150px){.trust-grid.trust-grid-5{grid-template-columns:repeat(3,1fr)}
  .trust-grid-5 .trust-item:nth-child(3n){border-right:0}
  .trust-grid-5 .trust-item:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.07)}}
@media(max-width:760px){.trust-grid.trust-grid-5{grid-template-columns:1fr 1fr}
  .trust-grid-5 .trust-item{padding:24px 16px;border-right:1px solid rgba(255,255,255,.07)}
  .trust-grid-5 .trust-item:nth-child(2n){border-right:0}
  .trust-grid-5 .trust-item:nth-child(-n+4){border-bottom:1px solid rgba(255,255,255,.07)}
  .trust-grid-5 .trust-item:last-child{grid-column:1/-1;border-right:0}}
@media(max-width:460px){.trust-grid.trust-grid-5{grid-template-columns:1fr}
  .trust-grid-5 .trust-item{padding:20px 4px;border-right:0!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important}
  .trust-grid-5 .trust-item:last-child{border-bottom:0!important}}

/* Route animation centred beneath the hero CTAs -------------------------- */
/* Shared table -----------------------------------------------------------*/
.fx-table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;
  border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white)}
.fx-table{width:100%;border-collapse:collapse;font-size:.9rem;line-height:1.55;min-width:520px}
.fx-table caption{text-align:left}
.fx-table thead th{background:var(--ink);color:#fff;font-weight:800;font-size:.8rem;
  letter-spacing:-.01em;text-align:left;padding:15px 18px;vertical-align:bottom}
.fx-table thead th:first-child{border-top-left-radius:var(--radius-md)}
.fx-table thead th:last-child{border-top-right-radius:var(--radius-md)}
.fx-table tbody th,.fx-table tbody td{padding:14px 18px;border-top:1px solid var(--line);
  text-align:left;vertical-align:top}
.fx-table tbody th{font-weight:800;color:var(--ink);white-space:normal;width:26%}
.fx-table tbody td{color:var(--ink-3)}
.fx-table tbody tr:nth-child(even){background:var(--paper)}
.fx-table-compare tbody td:first-of-type{color:var(--ink);font-weight:650}
.fx-table-note{margin:14px 2px 0;color:var(--muted);font-size:.82rem;line-height:1.6}
.fx-table-note a{color:var(--teal-dark);font-weight:800}

/* At-a-glance answer block ---------------------------------------------- */
.fx-glance{background:var(--mist);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.fx-glance-wrap{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
.fx-glance-answer h2{margin:0 0 18px}
.fx-answer{margin:0;font-size:1.06rem;line-height:1.72;color:var(--ink-2);max-width:62ch}
.fx-answer-sub{margin:16px 0 0;font-size:.95rem;line-height:1.75;color:var(--ink-3);max-width:62ch}
.fx-glance-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.fx-facts{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);
  padding:26px 26px 22px;box-shadow:var(--shadow-sm)}
.fx-facts h3{margin:0 0 16px;font-size:1.05rem;letter-spacing:-.02em}
.fx-table-facts{min-width:0;font-size:.87rem}
.fx-table-facts tbody th{width:38%;font-weight:750;color:var(--muted);font-size:.82rem}
.fx-table-facts tbody th,.fx-table-facts tbody td{padding:11px 0}
.fx-table-facts tbody tr:nth-child(even){background:transparent}
.fx-table-facts tbody td{color:var(--ink)}
.fx-facts-note{margin:16px 0 0;color:var(--muted);font-size:.76rem;line-height:1.6}
@media(max-width:960px){.fx-glance-wrap{grid-template-columns:1fr;gap:34px}}
@media(max-width:540px){.fx-facts{padding:20px 18px 16px}
  .fx-table-facts tbody th{width:44%}.fx-glance-actions .btn{width:100%}}

/* Reviews: Google Business Profile band ---------------------------------- */
.fx-reviews{background:var(--mist);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.fx-rating-bar{display:flex;align-items:center;justify-content:space-between;
  gap:24px;flex-wrap:wrap;margin-bottom:26px}
.fx-rating-score{display:flex;align-items:center;gap:16px}
.fx-rating-score>strong{font-size:2.6rem;font-weight:900;letter-spacing:-.05em;
  line-height:1;color:var(--ink)}
.fx-rating-score .eyebrow{margin:0 0 7px}
.fx-rating-score .fx-stars{display:flex}
.fx-rating-meta{margin:6px 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}
.fx-stars{display:inline-flex;gap:3px;vertical-align:middle}
.fx-stars svg{width:15px;height:15px;fill:#F5A623;flex:none}
.fx-review-nav{display:flex;gap:9px}
.fx-review-arrow{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);
  background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;
  transition:.18s ease}
.fx-review-arrow svg{width:19px;height:19px;fill:none;stroke:currentColor;
  stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.fx-review-arrow:hover{border-color:var(--teal);color:var(--teal-dark)}
.fx-review-arrow:focus-visible{outline:3px solid var(--teal-dark);outline-offset:2px}
.fx-review-arrow[disabled]{opacity:.35;cursor:default}
.fx-review-viewport{overflow:hidden;margin:0 -4px;padding:4px}
.fx-review-track{display:flex;gap:22px;scroll-behavior:smooth;overflow-x:auto;
  scrollbar-width:none;-ms-overflow-style:none;scroll-snap-type:x mandatory}
.fx-review-track::-webkit-scrollbar{display:none}
.fx-review-track:focus-visible{outline:3px solid var(--teal-dark);outline-offset:4px;
  border-radius:var(--radius-md)}
.fx-review{flex:0 0 calc((100% - 44px)/3);min-width:0;scroll-snap-align:start;margin:0;
  display:flex;flex-direction:column;gap:18px;min-height:246px;
  background:#fff;border:1px solid var(--line);border-radius:var(--radius-md);
  padding:24px 26px 20px;box-shadow:0 10px 26px rgba(31,41,53,.05)}
.fx-review-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.fx-review-src{color:var(--teal-dark);font-size:.68rem;font-weight:900;
  text-transform:uppercase;letter-spacing:.09em}
.fx-review blockquote{margin:0;flex:1}
.fx-review blockquote p{margin:0;color:var(--ink);font-size:1rem;line-height:1.62;
  font-weight:650;letter-spacing:-.01em}
.fx-review figcaption{display:flex;align-items:baseline;justify-content:space-between;
  gap:12px;border-top:1px solid var(--line);padding-top:15px}
.fx-review figcaption>span{color:var(--muted);font-size:.72rem;font-weight:650;
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fx-review figcaption a{flex:0 0 auto;color:var(--teal-dark);font-size:.74rem;font-weight:850;
  text-decoration:none;white-space:nowrap}
.fx-review figcaption a::after{content:' →'}
.fx-review figcaption a:hover{text-decoration:underline}
.fx-review-foot{display:flex;align-items:center;justify-content:space-between;
  gap:24px;flex-wrap:wrap;margin-top:28px;padding-top:22px;
  border-top:1px solid var(--line)}
.fx-review-stats{display:flex;gap:38px;flex-wrap:wrap;margin:0}
.fx-review-stats>div{display:flex;flex-direction:column;gap:2px}
.fx-review-stats dt{color:var(--muted);font-size:.76rem;font-weight:700}
.fx-review-stats dd{margin:0;color:var(--ink);font-size:1.22rem;font-weight:900;
  letter-spacing:-.03em}
@media(max-width:1000px){.fx-review{flex-basis:calc((100% - 22px)/2)}}
@media(max-width:680px){.fx-review{flex-basis:100%;min-height:0}
  .fx-rating-score>strong{font-size:2.2rem}
  .fx-review-stats{gap:24px}}

/* Fleet table ------------------------------------------------------------ */
.fx-fleet-table{margin-top:34px;padding:26px 26px 22px;border-radius:var(--radius)}
.fx-fleet-table h3{margin:0 0 18px;font-size:1.12rem;letter-spacing:-.025em}
.fx-fleet-table .fx-table{min-width:600px}
@media(max-width:560px){.fx-fleet-table{padding:20px 18px 16px}}

/* Company block ---------------------------------------------------------- */
.fx-company{background:var(--paper-2);border-top:1px solid var(--line)}
.fx-company-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.fx-company-card{background:var(--white);border:1px solid var(--line);
  border-radius:var(--radius-md);padding:26px 24px}
.fx-company-card h3{margin:0 0 12px;font-size:.98rem;letter-spacing:-.02em}
.fx-company-card p{margin:0 0 12px;color:var(--ink-3);font-size:.88rem;line-height:1.7}
.fx-company-card .fx-org{font-weight:850;color:var(--ink)}
.fx-company-card a{color:var(--teal-dark);font-weight:800;text-decoration:none}
.fx-company-card a:hover{text-decoration:underline}
.fx-company-hours{color:var(--muted)!important;font-size:.8rem!important}

/* Full service directory, spanning the row */
.fx-company-card.fx-company-wide{grid-column:1/-1;padding:26px 28px 28px}
.fx-company-wide-head{display:flex;justify-content:space-between;align-items:baseline;
  gap:20px;flex-wrap:wrap;margin-bottom:18px}
.fx-company-wide-head h3{margin:0}
.fx-services-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  gap:13px 24px;margin:0;padding:0;list-style:none;font-size:.845rem}
.fx-services-list li{line-height:1.5}
.fx-services-list [aria-current]{display:inline-block;color:var(--ink);font-weight:850;
  border-bottom:2px solid var(--teal);padding-bottom:2px}
@media(max-width:1100px){.fx-services-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.fx-company-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.fx-services-list{grid-template-columns:1fr 1fr;gap:11px 18px}}
@media(max-width:600px){.fx-company-grid{grid-template-columns:1fr}
  .fx-services-list{grid-template-columns:1fr}
  .fx-company-card.fx-company-wide{padding:24px 22px}}

/* Hero: keyword pill, three-line H1, benefit list, route card ------------ */
.hero-keyword{display:flex;width:fit-content;max-width:100%;white-space:nowrap;
  padding:10px 18px;margin:0 0 20px}
.hero-h1{margin:0;color:var(--white);font-family:Montserrat,"Montserrat Fallback",sans-serif;font-weight:800;
  font-size:clamp(25px,2.35vw,32px);line-height:1.24;letter-spacing:-.015em}
.hero-h1 .teal{color:var(--teal)}
@media(max-width:900px){
  .hero-keyword{font-size:15px;padding:9px 14px;margin-bottom:18px}
  .hero-h1{font-size:clamp(23px,5.3vw,29px)}
}
@media(max-width:400px){.hero-keyword{white-space:normal;text-align:center}}

.hero-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 34px;margin:28px 0 32px}
.hero-points li{font-size:.875rem;font-weight:650;line-height:1.5;
  color:rgba(255,255,255,.92);align-items:center;gap:12px}
.hero-points li>span:last-child{max-width:27ch}
.hero-points .tick{margin-top:0}
@media(max-width:900px){.hero-points{grid-template-columns:1fr;gap:13px}
  .hero-points li>span:last-child{max-width:none}}

/* Focus visibility + reduced motion ------------------------------------- */
.fx-breadcrumb a:focus-visible,.fx-company-card a:focus-visible,
.fx-review a:focus-visible,.fx-table a:focus-visible{
  outline:3px solid var(--teal-dark);outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;
    transition-duration:.001ms!important}
}



/* Background rhythm: no two adjacent sections share a background --------- */
.section.paper,.section-sm.paper{background:var(--paper)}
.section.mist,.section-sm.mist{background:var(--mist)}
.fleet-section.paper{background:var(--paper)}
.fx-reviews.paper{background:var(--paper)}
.section-sm.white-sec{background:var(--white)}



/* Section heads: align the right-hand note with the lead paragraph --------
   .copy uses display:contents so the eyebrow, h2 and lead become direct grid
   items; the side note is then placed on the same grid row as the lead, so
   both paragraphs start on exactly the same line. */
@media (min-width:761px){
  .section-head.head-aligned{display:grid;grid-template-columns:minmax(0,1fr) 310px;
    column-gap:36px;align-items:start}
  .section-head.head-aligned>.copy{display:contents}
  .section-head.head-aligned>.copy>.eyebrow{grid-column:1;grid-row:1}
  .section-head.head-aligned>.copy>h2{grid-column:1;grid-row:2;max-width:760px}
  .section-head.head-aligned>.copy>.lead{grid-column:1;grid-row:3;max-width:760px}
  .section-head.head-aligned>.side{grid-column:2;grid-row:3;margin-top:18px;max-width:310px}
  .section-head.head-aligned.head-aligned-h2>.side{grid-row:2;margin-top:0}
}



/* Process steps: numbered word labels instead of number chips ------------ */
.process .step .step-no{display:block;width:auto;height:auto;border:0;background:none;
  border-radius:0;place-items:initial;color:var(--teal-dark);
  font-size:.78rem;font-weight:800;letter-spacing:.04em;line-height:1.2;
  font-variant-numeric:tabular-nums;white-space:nowrap}
.process .step h3{margin-top:12px}
@media(max-width:620px){
  .process .step .step-no{width:auto;height:auto;border-radius:0;font-size:.75rem}
}



/* Trusted-to-deliver band: heading, Google rating, sliding logo rail ---- */
.trusted-band{background:var(--white);border-bottom:1px solid var(--line)}
.trusted-head{margin-bottom:30px}
.trusted-copy h2{max-width:22ch}
.trusted-copy .lead{margin:0;max-width:70ch}.trusted-copy h2{margin:0 0 14px}
.trusted-copy .lead{margin:0;max-width:70ch}
.logo-marquee{position:relative;display:flex;gap:16px;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.logo-track{display:flex;flex:0 0 auto;gap:16px;margin:0;padding:0;list-style:none;
  animation:fx-logo-slide 42s linear infinite}
.logo-marquee:hover .logo-track,.logo-marquee:focus-within .logo-track{animation-play-state:paused}
@keyframes fx-logo-slide{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 16px))}}
.logo-tile{flex:0 0 auto;width:224px;height:150px;display:grid;place-items:center;
  padding:20px 18px 16px;border:1px solid var(--line);border-radius:var(--radius-md);
  background:var(--mist)}
.logo-tile:hover{border-color:rgba(70,198,195,.42);background:var(--white)}
.logo-tile img{max-width:88%;max-height:58px;width:auto;height:auto;object-fit:contain;
  transition:transform .18s}
.logo-tile img.logo-solid{max-height:78px;max-width:92%}
.logo-tile:hover img{transform:scale(1.04)}
@media(max-width:900px){.trusted-head{grid-template-columns:1fr;gap:22px}
  }
@media(max-width:560px){.logo-tile{width:186px;height:136px}
  .logo-tile img.logo-solid{max-height:66px}}
@media(prefers-reduced-motion:reduce){
  .logo-track{animation:none}
  .logo-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}
  .logo-marquee>.logo-track[aria-hidden="true"]{display:none}}



/* Vehicle grid (replaces the fleet carousel) ---------------------------- */
.veh-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.veh-card{display:flex;flex-direction:column;align-items:center;text-align:center;
  padding:26px 24px 24px;background:var(--mist);border:1px solid var(--line);
  border-radius:22px;transition:border-color .16s,box-shadow .16s,transform .16s}
.veh-card:hover{border-color:rgba(70,198,195,.45);box-shadow:var(--shadow-sm);transform:translateY(-2px)}
.veh-img{display:grid;place-items:center;height:126px;width:100%;margin-bottom:6px}
.veh-img img{max-width:88%;max-height:118px;width:auto;height:auto;object-fit:contain}
.veh-card h3{margin:0 0 12px;font-size:1.04rem;letter-spacing:-.02em}
.veh-dims{display:inline-block;margin:0 0 16px;padding:8px 16px;border-radius:999px;
  background:var(--teal-dark);color:#fff;font-size:.83rem;font-weight:800;
  letter-spacing:-.01em;white-space:nowrap}
.veh-specs{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;
  margin:0 0 14px;padding:0;list-style:none}
.veh-specs li{display:flex;align-items:center;gap:7px;font-size:.8rem;color:var(--ink-3)}
.veh-specs strong{font-weight:800;color:var(--ink)}
.veh-ic{display:grid;place-items:center;width:18px;height:18px;color:var(--teal-dark)}
.veh-ic svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round}
.veh-copy{margin:0 0 18px;font-size:.82rem;line-height:1.6;color:var(--muted);max-width:34ch}
.veh-cta{margin-top:auto;color:var(--teal-dark);font-size:.8rem;font-weight:850;text-decoration:none}
.veh-cta:hover{text-decoration:underline}
/* help tile */
.veh-help{background:var(--ink);border-color:var(--ink);justify-content:center;padding:34px 28px}
.veh-help:hover{border-color:var(--ink);transform:none}
.veh-help-ic{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;
  margin-bottom:18px;background:rgba(70,198,195,.16);border:1px solid rgba(70,198,195,.34);
  color:var(--teal)}
.veh-help-ic svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round}
.veh-help h3{color:#fff;font-size:1.06rem;margin-bottom:12px}
.veh-help p{margin:0 0 20px;font-size:.84rem;line-height:1.62;color:rgba(255,255,255,.76);max-width:34ch}
.veh-help .btn{margin-bottom:14px}
.veh-help-note{margin:0!important;font-size:.72rem!important;line-height:1.55;
  color:rgba(255,255,255,.52)!important}
@media(max-width:1000px){.veh-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.veh-grid{grid-template-columns:1fr;gap:16px}
  .veh-card{padding:22px 20px}.veh-img{height:110px}}



.veh-note{margin:24px 0 0;color:var(--muted);font-size:.78rem;line-height:1.65;max-width:88ch}
.veh-note a{font-size:.78rem}



/* Hero Google rating badge --------------------------------------------- */
.hero-rating{display:inline-flex;align-items:center;gap:12px;margin:0 0 22px;
  padding:10px 16px 10px 13px;border-radius:14px;text-decoration:none;
  background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);
  transition:background .16s,border-color .16s}
.hero-rating:hover{background:rgba(255,255,255,.11);border-color:rgba(70,198,195,.5)}
.hero-rating-g{width:20px;height:20px;flex:0 0 auto}
.hero-rating-body{display:block;line-height:1.2}
.hero-rating-top{display:flex;align-items:center;gap:8px}
.hero-rating-top strong{font-size:1rem;font-weight:850;color:#fff;letter-spacing:-.02em}
.hero-rating-stars{color:#FBBC05;font-size:.82rem;letter-spacing:1.5px;line-height:1}
.hero-rating-sub{display:block;margin-top:3px;font-size:.72rem;font-weight:700;
  color:rgba(255,255,255,.66)}
@media(max-width:900px){.hero-rating{margin-bottom:18px}}



.logo-fig{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:12px;margin:0;height:100%}
.logo-fig img{flex:0 0 auto}
.logo-name{font-size:.74rem;font-weight:800;letter-spacing:.02em;color:var(--ink-3);
  text-align:center;line-height:1.3}
@media(max-width:560px){.logo-name{font-size:.7rem}}



/* ==== Multi-drop additions, built on the same-day design system ==== */
/* .section-head sets gap:36px for its flex layout. .head-aligned switches it to
   grid but only overrides column-gap, so that 36px leaks in as a ROW gap on top
   of the eyebrow's 14px and the lead's 18px margins — leaving a ~50px hole
   between the H2 and the lead. Reset it so the stack matches a normal head. */
@media (min-width:761px){
  .section-head.head-aligned{row-gap:0}
}

.section.white-sec{background:var(--white)}

/* The logo marquee track pushes the document wide on narrow screens.
   The newest next-day page fixes this on body; same-day still has the bug. */
body{overflow-x:hidden}

/* Outline icons in the goods grid (same-day ships filled .carry-svg artwork) */
.carry-icon svg{width:29px;height:29px;fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round}

/* Route builder: collection point -> stops -> final drop-off */
.route-builder{display:grid;gap:14px}
.route-track{position:relative;display:grid;gap:12px}
.route-track:before{content:"";position:absolute;left:6px;top:14px;bottom:14px;width:2px;
  background:repeating-linear-gradient(var(--line) 0 5px,transparent 5px 10px)}
.route-field{position:relative;display:grid;grid-template-columns:14px minmax(0,1fr) auto;
  align-items:center;column-gap:14px}
.route-stops{display:grid;gap:12px}
.route-marker{width:14px;height:14px;border-radius:50%;background:#fff;
  border:3px solid var(--teal);box-shadow:0 0 0 4px var(--white)}
.route-field.is-pickup .route-marker{border-color:var(--teal-dark);background:var(--teal-dark)}
.route-field.is-dropoff .route-marker{border-radius:4px;border-color:var(--green);background:var(--green)}
.route-input{display:grid;gap:7px;min-width:0}
.route-remove{display:grid;place-items:center;width:34px;height:34px;margin-top:20px;
  border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);
  font-size:1rem;line-height:1;cursor:pointer;transition:.16s ease}
.route-remove:hover{border-color:#E6B0B0;color:#B4483F;background:#FDF6F6}
.route-add{display:inline-flex;align-items:center;gap:10px;justify-self:start;
  min-height:44px;padding:0 16px;border:1px dashed #B9D6D5;border-radius:12px;
  background:var(--mist);color:var(--teal-dark);font-size:.8rem;font-weight:850;
  cursor:pointer;transition:.16s ease}
.route-add:hover{border-style:solid;border-color:var(--teal);background:#E3F5F4}
.route-add-ic{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;
  background:var(--teal-dark);color:#fff;font-size:.9rem;line-height:1;font-weight:800}
.route-hint{margin:2px 0 0;font-size:.71rem;color:var(--muted);line-height:1.5}
@media(max-width:460px){.route-field{column-gap:10px}.route-remove{width:30px;height:30px}}

/* Five-step process (same-day ships four) */
.process.process-5{grid-template-columns:repeat(5,1fr)}
@media(max-width:1050px){.process.process-5{grid-template-columns:repeat(3,1fr)}
  .process.process-5 .step:nth-child(3){border-right:0}
  .process.process-5 .step:nth-child(-n+3){border-bottom:1px solid var(--line)}}
@media(max-width:900px){.process.process-5{grid-template-columns:repeat(2,1fr)}
  .process.process-5 .step{border-bottom:1px solid var(--line)}
  .process.process-5 .step:nth-child(3){border-right:1px solid var(--line)}
  .process.process-5 .step:nth-child(2n){border-right:0}
  .process.process-5 .step:last-child{border-bottom:0;grid-column:1/-1}}
@media(max-width:620px){.process.process-5{grid-template-columns:1fr}
  .process.process-5 .step{border-right:0}
  .process.process-5 .step:last-child{grid-column:auto}}

/* Route status panel — mirrors .fx-update-row from the same-day updates block */
.route-list{display:grid;gap:10px;margin:18px 0 0}
.route-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;align-items:center;
  background:#fff;border:1px solid var(--line);border-radius:13px;padding:11px 13px;
  box-shadow:0 5px 14px rgba(31,41,53,.05)}
.route-num{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;
  background:var(--mist);color:var(--teal-dark);font-size:.76rem;font-weight:900}
.route-row b{display:block;font-size:.78rem;color:var(--ink);line-height:1.3}
.route-row small{display:block;font-size:.68rem;color:var(--muted);line-height:1.45;margin-top:3px}
.status{font-size:.64rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;
  padding:5px 9px;border-radius:999px;background:var(--mist);color:var(--teal-dark);white-space:nowrap}
.status.planned{background:#EEF2F4;color:var(--muted)}

/* Coverage route-type cards — full-width row beneath the copy and panel */
.coverage-modes{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:34px}
@media(max-width:1050px){.coverage-modes{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.coverage-modes{grid-template-columns:1fr}}


/* Compact company / NAP line in the closing CTA (.cta-grid is flex, nowrap) */
.cta-grid{flex-wrap:wrap}
.cta-trust{flex:0 0 100%;width:100%;max-width:none!important;
  margin:30px 0 0;padding-top:22px;
  border-top:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.56);font-size:.74rem;line-height:1.7}
.cta-trust a{color:rgba(255,255,255,.78);text-decoration:underline;text-underline-offset:2px}
.cta-trust a:hover{color:#fff}
@media(max-width:900px){.cta-trust{margin-top:24px}}



    /* Page-level additions only. Everything else is inherited unchanged. */
    .location-grid .location-grid-item{display:flex;align-items:center;min-height:44px;
      padding:10px 12px;border:1px solid #CDE3E2;border-radius:12px;background:#fff;
      color:var(--ink);font-size:.76rem;font-weight:800;line-height:1.35}
    /* .carry-icon has no svg rule in the shared sheet, so stroke icons need one */
    .carry-icon .carry-svg{fill:none;stroke:currentColor;stroke-width:1.9;
      stroke-linecap:round;stroke-linejoin:round}
    /* .proof-actions is a flex row with no align-items; guards mixed-height children */
    .proof-actions{align-items:center}
    /* second heading inside the coverage panel, below the route-pattern grid */
    .location-panel .panel-sub{margin-top:26px;padding-top:22px;
      border-top:1px solid rgba(31,41,53,.09);font-size:1.05rem}

    /* --- Trust strip: six across. Copied from the urgent document courier
       page, which already carries six items in this strip. --- */
    .trust-grid.trust-grid-6{grid-template-columns:repeat(6,1fr)}
    .trust-grid-6 .trust-item{padding:34px 14px;column-gap:13px;
      grid-template-columns:38px minmax(0,1fr)}
    .trust-grid-6 .trust-icon{width:38px;height:38px;min-width:38px}
    .trust-grid-6 .trust-item strong{font-size:.8rem}
    .trust-grid-6 .trust-item:nth-child(5){border-right:1px solid rgba(255,255,255,.07)}
    .trust-grid-6 .trust-item:last-child{border-right:0}

    @media(max-width:1250px){
      .trust-grid.trust-grid-6{grid-template-columns:repeat(3,1fr)}
      .trust-grid-6 .trust-item{border-right:1px solid rgba(255,255,255,.07)}
      .trust-grid-6 .trust-item:nth-child(3n){border-right:0}
      .trust-grid-6 .trust-item:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.07)}
      .trust-grid-6 .trust-item strong{font-size:.845rem}
    }
    @media(max-width:760px){
      .trust-grid.trust-grid-6{grid-template-columns:1fr 1fr}
      .trust-grid-6 .trust-item{padding:24px 16px}
      .trust-grid-6 .trust-item:nth-child(3n){border-right:1px solid rgba(255,255,255,.07)}
      .trust-grid-6 .trust-item:nth-child(2n){border-right:0}
      .trust-grid-6 .trust-item:nth-child(-n+4){border-bottom:1px solid rgba(255,255,255,.07)}
      .trust-grid-6 .trust-item:last-child{grid-column:auto}
    }
    @media(max-width:460px){
      .trust-grid.trust-grid-6{grid-template-columns:1fr}
      .trust-grid-6 .trust-item{border-right:0!important;
        border-bottom:1px solid rgba(255,255,255,.07)!important}
      .trust-grid-6 .trust-item:last-child{border-bottom:0!important}
    }

    /* --- Chooser grid: four across. The shared sheet is built for three,
       and makes the last card full-width at the two-column breakpoint,
       which leaves an orphan when there are four cards. --- */
    .chooser-grid.chooser-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
    @media(max-width:1050px){
      .chooser-grid.chooser-grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
      .chooser-grid.chooser-grid-4 .chooser:last-child{grid-column:auto}
    }
    @media(max-width:640px){
      .chooser-grid.chooser-grid-4{grid-template-columns:1fr}
      .chooser-grid.chooser-grid-4 .chooser:last-child{grid-column:auto}
    }

    /* --- Service cards: the shared sheet sets min-height:244px, sized to leave
       room for a bottom "learn" link. The cards on this page carry no such link,
       so that min-height leaves 65-90px of dead space under the copy. Size to
       content instead, and restore the original wherever a link is present. --- */
    .service-grid .service-card{min-height:0}
    .service-grid .service-card:has(.learn){min-height:244px}

    /* --- Coverage panel accordion: the shared faq-list is built for a wide
       column. Inside the narrower panel it needs room above the first item and
       a looser line for the comma-separated place names. --- */
    .location-panel .faq-list{margin-top:16px}
    .location-panel .faq-list summary{padding-top:16px;padding-bottom:16px}
    .location-panel .faq-list p{padding-top:2px;padding-bottom:18px;line-height:1.78}
    .location-panel .panel-sub{margin-top:30px;padding-top:24px}

#coverage .location-panel{align-self:start}
#coverage .fx-finder-wrap{margin-top:64px}
#coverage .fx-finder{align-items:center}
@media(max-width:900px){#coverage .fx-finder{align-items:stretch}}
/* ================= FOOTER ================= */
.live-footer{background:var(--ink);color:#fff}
.fx-ft-main{padding-top:88px;padding-bottom:56px}
.fx-ft-grid{display:grid;grid-template-columns:1.65fr repeat(3,1fr) 1.15fr;gap:48px 36px;align-items:start}

/* brand + conversion block */
.fx-ft-brand{max-width:330px}
.fx-ft-logo img{width:126px;height:auto}
.fx-ft-eyebrow{font-size:1.3rem;letter-spacing:-.03em;margin:24px 0 10px;color:#fff}
.fx-ft-copy{margin:0;font-size:.84rem;line-height:1.65;color:rgba(255,255,255,.62)}
.fx-ft-ctas{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.fx-ft-cta{display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 20px;
  border-radius:12px;font-size:.83rem;font-weight:800;letter-spacing:-.01em;
  transition:background .16s,color .16s,border-color .16s,transform .16s}
.fx-ft-cta svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.9;
  stroke-linecap:round;stroke-linejoin:round}
.fx-ft-cta--primary{background:var(--teal);color:var(--ink)}
.fx-ft-cta--primary:hover{background:#5FD6D3;transform:translateY(-2px)}
.fx-ft-cta--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.22)}
.fx-ft-cta--ghost:hover{border-color:var(--teal);color:var(--teal);transform:translateY(-2px)}
.fx-ft-note{margin:18px 0 0;font-size:.76rem;line-height:1.55;color:rgba(255,255,255,.42)}

/* link groups */
.fx-ft-gh{margin:0 0 20px;font-size:.73rem;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;color:rgba(255,255,255,.46)}
.fx-ft-toggle{display:none}
.fx-ft-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.fx-ft-link{display:inline-flex;align-items:center;gap:7px;font-size:.83rem;line-height:1.4;
  color:rgba(255,255,255,.74);transition:color .15s,transform .15s}
.fx-ft-link:hover{color:var(--teal);text-decoration:none;transform:translateX(3px)}
.fx-ft-link--all{color:var(--teal);font-weight:800}

/* contact */
.fx-ft-clist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}
.fx-ft-clink{display:grid;grid-template-columns:22px minmax(0,1fr);gap:11px;align-items:start;
  font-size:.83rem;line-height:1.5;color:rgba(255,255,255,.78)}
.fx-ft-clink:hover{color:var(--teal);text-decoration:none}
.fx-ft-ci{width:20px;height:20px;margin-top:2px;fill:none;stroke:var(--teal);stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round}
.fx-ft-clabel{display:block;font-size:.66rem;font-weight:800;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:3px}
.fx-ft-hours{display:flex;align-items:center;gap:9px;margin:22px 0 0;font-size:.75rem;
  line-height:1.5;color:rgba(255,255,255,.5)}
.fx-ft-dot{flex:0 0 7px;width:7px;height:7px;border-radius:50%;background:var(--green);
  box-shadow:0 0 0 3px rgba(138,198,70,.18)}

/* socials */
.live-socials{gap:10px;margin-top:26px}
.live-socials a{width:40px;height:40px;border-radius:11px;background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.14);color:rgba(255,255,255,.82);
  transition:background .16s,color .16s,border-color .16s,transform .16s}
.live-socials a svg,.live-socials a:first-child svg{width:16px;height:16px;fill:currentColor;stroke:none}
.live-socials a:hover{background:var(--teal);border-color:var(--teal);color:var(--ink);transform:translateY(-2px)}

/* legal strip */
.fx-ft-legal-in{display:flex;align-items:center;justify-content:space-between;gap:24px;
  min-height:74px;padding:18px 0}
.fx-ft-legal-copy{margin:0;font-size:.76rem;line-height:1.6;color:rgba(255,255,255,.44)}
.fx-ft-legal-copy strong{color:rgba(255,255,255,.66);font-weight:750}
.fx-ft-legal-nav{display:flex;flex-wrap:wrap;gap:24px}
.fx-ft-legal-nav a{font-size:.76rem;color:rgba(255,255,255,.6)}
.fx-ft-legal-nav a:hover{color:var(--teal);text-decoration:underline}
.fx-ft-top{color:rgba(255,255,255,.44)!important}

@media(max-width:1120px){.fx-ft-grid{grid-template-columns:1.4fr repeat(2,1fr);gap:44px 32px}
  .fx-ft-brand{grid-column:1/-1;max-width:560px}}
@media(max-width:760px){.fx-ft-trust-in{grid-template-columns:1fr;gap:16px;padding:22px 0}
  .fx-ft-legal-in{flex-direction:column;align-items:flex-start;gap:14px}}
@media(max-width:620px){
  .fx-ft-main{padding-top:60px;padding-bottom:34px}
  .fx-ft-grid{grid-template-columns:1fr;gap:0}
  .fx-ft-brand{margin-bottom:34px}
  .fx-ft-group{border-top:1px solid rgba(255,255,255,.10)}
  .fx-ft-gh{margin:0}
  .fx-ft-gh>span{display:none}
  .fx-ft-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;
    gap:12px;padding:17px 0;background:none;border:0;cursor:pointer;
    font:inherit;font-size:.73rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;
    color:rgba(255,255,255,.72)}
  .fx-ft-toggle svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;
    stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
  .fx-ft-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
  .js .fx-ft-panel[hidden]{display:none}
  .fx-ft-panel{padding-bottom:20px}
}
.fx-ft-legal{background:rgba(0,0,0,.16)}
.fx-ft-contact .fx-ft-panel{padding-top:2px}
/* at-a-glance: centre the facts card against the taller copy column */
.fx-glance .fx-glance-wrap{align-items:center}
@media(max-width:900px){.fx-glance .fx-glance-wrap{align-items:stretch}}

/* ================= HEADER (mega menu) ================= */
.fx-header,.fx-mega,.fx-mobile{--navy:#1F2935;--deep:#17222D;--teal:#46C6C3;--white:#fff;
  --muted:#AEB7C0;--border:rgba(255,255,255,.12);--ease:180ms ease}
.fx-header a{color:inherit;text-decoration:none}
.fx-header *,.fx-mega *,.fx-mobile *{box-sizing:border-box}
.fx-header{position:sticky;top:0;z-index:9999;padding:2px 32px 0;background:rgba(23,34,45,.96);backdrop-filter:blur(16px)}
.fx-bar{max-width:2048px;min-height:118px;margin:auto;padding:16px 38px 16px 54px;display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(250px,1fr);align-items:center;gap:28px;border:1px solid var(--border);border-radius:18px;background:rgba(31,41,53,.98)}
.fx-logo{display:block;width:248px;height:auto}.fx-nav{justify-self:center}.fx-nav ul{display:flex;align-items:center;gap:clamp(24px,2.5vw,48px);list-style:none;margin:0;padding:0}
.fx-link,.fx-services-btn{position:relative;display:inline-flex;min-height:46px;align-items:center;gap:8px;border:0;padding:0;background:none;color:#EEF1F4;font:inherit;font-size:1rem;font-weight:760;white-space:nowrap;cursor:pointer;transition:color var(--ease)}
.fx-link:after,.fx-services-btn:after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:2px;background:var(--teal);transition:right var(--ease)}
.fx-link:hover,.fx-services-btn:hover,.fx-services-btn[aria-expanded=true]{color:var(--teal)}.fx-link:hover:after,.fx-services-btn:hover:after,.fx-services-btn[aria-expanded=true]:after{right:0}
.fx-chevron{transition:transform var(--ease)}.fx-services-btn[aria-expanded=true] .fx-chevron{transform:rotate(180deg)}
.fx-actions{justify-self:end;display:flex;align-items:center;gap:12px}.fx-quote{display:inline-flex;min-height:52px;align-items:center;padding:0 18px;border:1px solid rgba(70,198,195,.42);border-radius:14px;font-size:.9rem;font-weight:760;transition:.18s}.fx-quote:hover{color:var(--teal);background:rgba(70,198,195,.08)}
.fx-phone{display:inline-flex;min-height:84px;align-items:center;gap:15px;padding:0 28px;border-radius:28px;background:#267E85;font-size:clamp(1rem,1.18vw,1.25rem);font-weight:840;white-space:nowrap;transition:.18s}.fx-phone:hover{background:var(--teal);transform:translateY(-1px)}
.fx-mega-wrap{position:relative;max-width:2048px;margin:auto}.fx-mega{position:absolute;left:50%;top:14px;width:min(calc(100vw - 84px),1320px);transform:translate(-50%,-8px);visibility:hidden;opacity:0;pointer-events:none;transition:.16s}
.fx-mega[data-open=true]{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%,0)}.fx-mega-panel{display:grid;grid-template-columns:290px 1fr;overflow:hidden;border:1px solid rgba(255,255,255,.13);border-radius:18px;background:#202C38;box-shadow:0 24px 70px rgba(7,15,23,.35)}
.fx-mega-intro{padding:34px 28px;background:radial-gradient(circle at 90% 10%,rgba(70,198,195,.18),transparent 34%),#192631;border-right:1px solid rgba(255,255,255,.08)}.fx-kicker{margin:0 0 14px;color:var(--teal);font-size:.72rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.fx-mega-intro p{margin:15px 0 0;color:var(--muted);font-size:.87rem;line-height:1.65}
.fx-mega-actions{display:grid;gap:10px;margin-top:26px}.fx-mega-primary,.fx-mega-secondary{display:flex;min-height:46px;align-items:center;justify-content:center;border-radius:10px;font-size:.84rem;font-weight:780}.fx-mega-primary{background:var(--teal);color:#13212B}.fx-mega-secondary{border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.03)}.fx-mega-secondary:hover{color:var(--teal)}
.fx-mega-content{padding:30px 32px}.fx-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.fx-group ul{list-style:none;margin:0;padding:0}.fx-group li+li{margin-top:5px}
.fx-service{display:grid;grid-template-columns:32px 1fr;gap:11px;min-height:62px;margin:0 -8px;padding:9px 8px;border-radius:10px;transition:.18s}.fx-service:hover{background:rgba(255,255,255,.048);transform:translateX(2px)}.fx-icon{display:grid;width:32px;height:32px;place-items:center;border:1px solid rgba(70,198,195,.25);border-radius:9px;background:rgba(70,198,195,.07);color:var(--teal);font-size:.82rem;font-weight:850}
.fx-service strong{display:block;margin-top:1px;font-size:.88rem;line-height:1.25}.fx-service small{display:block;margin-top:4px;color:#94A0AB;font-size:.72rem;line-height:1.38}
.fx-mega-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:22px;padding-top:18px;border-top:1px solid rgba(255,255,255,.08);color:#96A2AC;font-size:.76rem}.fx-mega-foot a{color:var(--teal);font-weight:780}
.fx-mobile-toggle,.fx-mobile{display:none}
.fx-header a:focus-visible,.fx-header button:focus-visible{outline:3px solid var(--teal);outline-offset:3px;border-radius:7px}
@media(max-width:1420px){.fx-bar{padding-left:34px;padding-right:24px;grid-template-columns:minmax(210px,.9fr) auto minmax(215px,.9fr)}.fx-logo{width:220px}.fx-nav ul{gap:26px}.fx-quote{display:none}.fx-phone{min-height:72px;padding:0 22px;border-radius:24px}}
@media(max-width:1140px){.fx-header{padding:10px 16px 0}.fx-bar{min-height:88px;grid-template-columns:1fr auto;padding:14px 18px 14px 22px;border-radius:15px}.fx-logo{width:190px}.fx-nav,.fx-quote,.fx-phone,.fx-mega{display:none!important}.fx-mobile-toggle{display:grid;width:50px;height:50px;place-items:center;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.04);color:#fff;cursor:pointer}.fx-mobile{position:fixed;left:16px;right:16px;top:106px;max-height:calc(100dvh - 122px);overflow:auto;border:1px solid var(--border);border-radius:16px;background:#202C38;box-shadow:0 24px 70px rgba(7,15,23,.4)}.fx-mobile[data-open=true]{display:block}.fx-mobile-inner{padding:16px}.fx-mobile-link,.fx-mobile-services-btn{display:flex;width:100%;min-height:52px;align-items:center;justify-content:space-between;border:0;border-radius:10px;padding:0 13px;background:none;color:#F0F3F5;font:inherit;font-size:.96rem;font-weight:760;text-align:left}.fx-mobile-link:hover,.fx-mobile-services-btn:hover{background:rgba(255,255,255,.045)}.fx-mobile-services{display:none;margin:4px 0 10px;padding:12px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#1A2631}.fx-mobile-services[data-open=true]{display:block}.fx-mobile-group+.fx-mobile-group{margin-top:18px}.fx-mobile-group ul{list-style:none;margin:0;padding:0}.fx-mobile-service{display:flex;min-height:44px;align-items:center;padding:0 10px;border-radius:8px;color:#D7DEE4;font-size:.87rem;font-weight:650}.fx-mobile-service:hover{background:rgba(255,255,255,.045);color:#fff}.fx-mobile-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.09)}.fx-mobile-cta{display:flex;min-height:48px;align-items:center;justify-content:center;border-radius:10px;font-size:.84rem;font-weight:800}.fx-mobile-quote{background:var(--teal);color:#13212B}.fx-mobile-call{border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.04)}body.fx-menu-open{overflow:hidden}}
@media(max-width:520px){.fx-header{padding-left:10px;padding-right:10px}.fx-bar{min-height:78px;padding:12px 13px 12px 18px}.fx-logo{width:158px}.fx-mobile-toggle{width:46px;height:46px}.fx-mobile{left:10px;right:10px;top:96px;max-height:calc(100dvh - 106px)}.fx-mobile-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.fx-header *{transition-duration:.001ms!important}}
/* Footer CTAs mirror the header: outlined quote, teal phone pill */
.fx-ft-ctas{gap:12px;align-items:center}
.fx-ft-cta--primary{background:transparent;color:#fff;border:1px solid rgba(70,198,195,.42);
  min-height:52px;border-radius:14px;font-size:.9rem;font-weight:760}
.fx-ft-cta--primary:hover{color:var(--teal);background:rgba(70,198,195,.08);transform:none}
.fx-ft-cta--ghost{background:#267E85;color:#fff;border:0;min-height:60px;padding:0 26px;
  border-radius:26px;font-size:1.02rem;font-weight:840;gap:13px}
.fx-ft-cta--ghost svg{width:20px;height:20px;fill:currentColor;stroke:none}
.fx-ft-cta--ghost:hover{background:var(--teal);color:#fff;transform:translateY(-1px)}
.fx-ft-logo img{width:210px}
@media(max-width:620px){.fx-ft-cta--ghost{min-height:54px;font-size:.95rem}
  .fx-ft-logo img{width:170px}}
/* The reference header relied on a global body{color:#fff}, which cannot be
   used here — it would recolour the whole page. Set the colour on the header
   instead so every descendant that inherits still renders light-on-dark. */
.fx-header{color:#fff}
.fx-quote{color:#EEF1F4}
.fx-phone{color:#fff}
.fx-mega-panel,.fx-mega-intro .fx-mega-title,.fx-service strong,.fx-mega-secondary{color:#fff}
.fx-mobile,.fx-mobile-inner{color:#fff}
/* Header sized to match the previous Flextro bar (76px shell, 1320px max,
   156px logo, 54px call pill) rather than the reference's 118px demo scale. */
.fx-header{padding:12px 0 0}
.fx-bar{width:min(calc(100% - 10%),1320px);max-width:1320px;min-height:76px;
  padding:0 28px 0 30px;gap:22px;border-radius:16px;
  grid-template-columns:minmax(170px,1fr) auto minmax(180px,1fr)}
.fx-logo{width:156px;max-height:36px;object-fit:contain}
.fx-nav ul{gap:clamp(18px,1.9vw,32px)}
.fx-link,.fx-services-btn{min-height:40px;font-size:.88rem;font-weight:700}
.fx-quote{min-height:44px;padding:0 15px;border-radius:12px;font-size:.82rem}
.fx-phone{min-height:48px;padding:0 20px;gap:11px;border-radius:16px;
  font-size:.88rem;font-weight:800}
.fx-phone svg{width:19px;height:19px;flex:0 0 19px}
.fx-mega{top:10px;width:min(calc(100vw - 84px),1240px)}
@media(max-width:1420px){.fx-bar{padding-left:24px;padding-right:20px;
    grid-template-columns:minmax(150px,.9fr) auto minmax(160px,.9fr)}
  .fx-logo{width:146px}.fx-phone{min-height:46px;padding:0 17px;border-radius:15px}}
@media(max-width:1140px){.fx-header{padding:10px 14px 0}
  .fx-bar{min-height:68px;padding:0 16px 0 18px;border-radius:14px}
  .fx-logo{width:140px}
  .fx-mobile-toggle{width:44px;height:44px;border-radius:10px}
  .fx-mobile{top:86px;max-height:calc(100dvh - 100px)}}
@media(max-width:520px){.fx-bar{min-height:64px;padding:0 12px 0 14px}
  .fx-logo{width:126px}.fx-mobile-toggle{width:42px;height:42px}
  .fx-mobile{top:80px;max-height:calc(100dvh - 92px)}}
/* The previous header was position:absolute and floated over the hero, so the
   hero carried ~132px of top padding to clear it. The mega-menu header is
   sticky and occupies layout space, so that compensation is no longer needed. */
.hero{padding-top:64px}
@media(max-width:1050px){.hero{padding-top:52px}}
@media(max-width:760px){.hero{padding-top:40px}}
/* Footer scale: same layout, tighter. Reverses the oversizing applied when the
   brand block was matched to the header. */
.fx-ft-main{padding-top:64px;padding-bottom:40px}
.fx-ft-grid{gap:36px 30px}
.fx-ft-logo img{width:150px;max-height:34px;object-fit:contain}
.fx-ft-eyebrow{font-size:1.05rem;margin:18px 0 8px}
.fx-ft-copy{font-size:.79rem;line-height:1.6}
.fx-ft-ctas{gap:9px;margin-top:18px}
.fx-ft-cta--primary{min-height:42px;padding:0 15px;border-radius:11px;font-size:.79rem}
.fx-ft-cta--ghost{min-height:46px;padding:0 18px;border-radius:15px;font-size:.85rem;gap:10px}
.fx-ft-cta--ghost svg{width:17px;height:17px}
.fx-ft-note{margin-top:14px;font-size:.72rem}
.live-socials{gap:8px;margin-top:20px}
.live-socials a{width:34px;height:34px;border-radius:9px}
.live-socials a svg,.live-socials a:first-child svg{width:14px;height:14px}
.fx-ft-gh{margin:0 0 15px;font-size:.68rem;letter-spacing:.12em}
.fx-ft-list{gap:10px}
.fx-ft-link{font-size:.78rem}
.fx-ft-clist{gap:13px}
.fx-ft-clink{grid-template-columns:19px minmax(0,1fr);gap:10px;font-size:.78rem}
.fx-ft-ci{width:17px;height:17px}
.fx-ft-clabel{font-size:.62rem;margin-bottom:2px}
.fx-ft-hours{margin-top:17px;font-size:.71rem}
.fx-ft-legal-in{min-height:60px;padding:14px 0}
.fx-ft-legal-copy,.fx-ft-legal-nav a{font-size:.73rem}
@media(max-width:620px){.fx-ft-main{padding-top:48px;padding-bottom:28px}
  .fx-ft-logo img{width:132px}.fx-ft-cta--ghost{min-height:44px;font-size:.82rem}}
/* Hero: the keyword pill is the H1; the display line beneath it is an H2.
   Lock both so the tag change cannot alter their appearance. */
h1.hero-keyword{margin:0 0 20px;font-weight:800;line-height:1.2}
h2.hero-h1{margin:0}
/* Nav labels are presentational, not document structure — they are <p> now,
   so these selectors replace the old .fx-mega-intro h2 / .fx-group h3 /
   .fx-mobile-group h2 rules. */
.fx-mega-intro .fx-mega-title{margin:0;max-width:10ch;font-size:1.55rem;line-height:1.18;
  letter-spacing:-.025em;font-weight:800;color:#fff}
.fx-group .fx-group-title{margin:0 0 11px;color:#7FD7D4;font-size:.7rem;font-weight:850;
  letter-spacing:.11em;text-transform:uppercase}
.fx-mobile-group .fx-mgroup-title{margin:0 0 7px;color:#76D4D1;font-size:.68rem;
  font-weight:850;letter-spacing:.1em;text-transform:uppercase}


    /* Page-level additions only. Everything else is inherited unchanged. */
    .location-grid .location-grid-item{display:flex;align-items:center;min-height:44px;
      padding:10px 12px;border:1px solid #CDE3E2;border-radius:12px;background:#fff;
      color:var(--ink);font-size:.76rem;font-weight:800;line-height:1.35}
    /* .carry-icon has no svg rule in the shared sheet, so stroke icons need one */
    .carry-icon .carry-svg{fill:none;stroke:currentColor;stroke-width:1.9;
      stroke-linecap:round;stroke-linejoin:round}
    /* .proof-actions is a flex row with no align-items; guards mixed-height children */
    .proof-actions{align-items:center}
    /* second heading inside the coverage panel, below the route-pattern grid */
    .location-panel .panel-sub{margin-top:26px;padding-top:22px;
      border-top:1px solid rgba(31,41,53,.09);font-size:1.05rem}
    /* .hero-grid is align-items:center, so whenever the quote card is taller than
       the text column the text is pushed down by half the difference — 28px here,
       which reads as a gap under the breadcrumb. Top-align so the only space above
       the eyebrow is the breadcrumb's own padding. Hero padding-top is left alone. */
    .hero-breadcrumbed .hero-grid{align-items:start}
    /* .compare has no h3 or p rules of its own; the baselines paper over the first
       gap with an inline margin-top:16px on the heading. This page also puts a
       paragraph between heading and list, which global h3{margin-bottom:0} left
       flush. Set both properly instead of inlining. */
    .compare h3{margin-top:16px}
    .compare h3 + p{margin:9px 0 0;color:var(--muted);font-size:.86rem;line-height:1.6}


/* Injected responsive hardening layer — see comments inline. */
/* ==========================================================================
   Flextro — responsive hardening layer
   Additive only: nothing in the existing stylesheets is edited or removed.
   Covers mobile / tablet / laptop / desktop / wide screen.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Overflow safety net
   -------------------------------------------------------------------------- */

/* .sr-only is position:absolute with no positioned ancestor, so inside the
   horizontal review carousel its static position lands far to the right and
   inflates documentElement.scrollWidth. Anchoring it removes the phantom
   width without changing what screen readers announce. */
.sr-only{left:0 !important}

/* Give the carousel/marquee scrollers their own containing block so any
   absolutely positioned descendant is clipped with the rest of the track. */
.fx-review-track,.fx-review-viewport,.logo-marquee{position:relative}

/* Embedded media can never force a sideways scroll. */
img,svg,video,canvas,iframe,embed,object{max-width:100%}
video,canvas,iframe{height:auto}

/* Preformatted content scrolls inside itself rather than stretching the page. */
pre,code,kbd,samp{max-width:100%;overflow-x:auto}

/* Long unbroken strings (URLs, emails, order refs) wrap instead of overflowing
   their column on narrow screens. */
p,li,dd,dt,td,th,figcaption,blockquote,label,summary,
h1,h2,h3,h4,h5,h6,a{overflow-wrap:break-word}

/* Any table that is wider than its column stays reachable by scrolling. */
.fx-table-scroll{-webkit-overflow-scrolling:touch}

/* --------------------------------------------------------------------------
   2. Mobile — stop iOS Safari zooming the viewport on input focus
   Safari zooms whenever a focused field renders below 16px. The fields here
   are 14.4–15.4px, so focusing one shifts the whole page.
   -------------------------------------------------------------------------- */
@media (max-width:760px){
  input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),
  select,
  textarea{font-size:16px !important}
}

/* --------------------------------------------------------------------------
   3. Touch targets
   Applied only to touch pointers so mouse/desktop spacing is untouched.
   -------------------------------------------------------------------------- */
@media (pointer:coarse){
  .btn,button,[role=button],
  input[type=submit],input[type=button]{min-height:44px}

  /* Footer and nav links measure ~20px tall; padding lifts the hit area
     past the 24px WCAG 2.5.8 minimum without moving the text. */
  .fx-ft-link,.text-link,.veh-cta,.learn{padding-block:6px}

  .fx-mobile-toggle{min-width:44px;min-height:44px}
}

/* --------------------------------------------------------------------------
   4. Tablet — use the width that is actually there
   Between 700px and 1049px the hero checklist ran as a single column while
   half the row sat empty. It already pairs up at 1050px+; this extends the
   same pairing down into tablet portrait.
   -------------------------------------------------------------------------- */
@media (min-width:700px) and (max-width:1049px){
  .hero-points{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* --------------------------------------------------------------------------
   4b. "Nearby areas" grid on the city pages (London / Birmingham)
   The base rule `#nearby .location-grid.nearby-grid` scores 1,3,0 while the
   responsive overrides `#nearby .nearby-grid` score only 1,2,0 — so the grid
   stayed locked at five columns on every screen and the links overflowed on
   phones. The doubled class below matches the original intended breakpoints
   at a higher specificity, without touching the existing rules.
   -------------------------------------------------------------------------- */
#nearby .nearby-grid.nearby-grid.location-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1050px){
  #nearby .nearby-grid.nearby-grid.location-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:760px){
  #nearby .nearby-grid.nearby-grid.location-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:420px){
  #nearby .nearby-grid.nearby-grid.location-grid{grid-template-columns:1fr}
}
/* Let the flex label shrink instead of pushing the cell wider than its track. */
.location-grid a{min-width:0}
.location-grid a>*{min-width:0}

/* --------------------------------------------------------------------------
   5. Wide screens
   The content column was pinned at 1200px at every size above it, leaving
   ~680px of dead gutter on each side of a 2560px monitor. These step-ups let
   it breathe while keeping line length readable. Everything inside the
   container is fluid, so no inner layout needs changing.
   -------------------------------------------------------------------------- */
@media (min-width:1600px){ :root{--max:1320px} }
@media (min-width:2000px){ :root{--max:1440px} }

/* --------------------------------------------------------------------------
   6. Respect reduced-motion for the logo marquee at every size
   -------------------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .logo-track{animation:none !important}
}
