/* Ewing Reference-Match Homepage v4.1.0 — approved master layout */
.ew4-home-root{box-sizing:border-box;position:relative;width:100%;font-family:var(--ew4-body,Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif);color:var(--ew4-text,#071a37);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.ew4-home-root *{box-sizing:border-box}.ew4-home-root a{text-decoration:none}.ew4-home-root img,.ew4-home-root svg{display:block}.ew4-container{width:min(calc(100% - 64px),var(--ew4-container,1240px));margin-inline:auto}.ew4-section{position:relative}.ew4-eyebrow{font:800 10px/1.2 var(--ew4-body);letter-spacing:.11em;text-transform:uppercase;color:#c8891c;margin-bottom:11px}.ew4-section-head{text-align:center;margin:0 auto 31px}.ew4-section-head h2{font:800 clamp(30px,2.55vw,42px)/1.06 var(--ew4-heading);letter-spacing:-.038em;color:var(--ew4-text);margin:0}.ew4-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:27px}.ew4-btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;min-height:47px;padding:0 21px;border-radius:5px;font:900 10px/1 var(--ew4-body);letter-spacing:.018em;text-transform:uppercase;white-space:nowrap;transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.ew4-btn:hover{transform:translateY(-2px)}.ew4-btn-gold{color:#061a36;background:linear-gradient(135deg,var(--ew4-gold-light,#f4d47c),var(--ew4-gold,#e9b84f));box-shadow:0 10px 26px rgba(233,184,79,.23)}.ew4-btn-ghost{color:#fff;border:1px solid rgba(255,255,255,.72);background:rgba(2,15,34,.23)}.ew4-btn-dark{color:#fff;border:1px solid var(--ew4-gold);background:#061a36;box-shadow:0 9px 25px rgba(6,26,54,.28)}.ew4-btn-outline{color:#071a37;border:1px solid #d3d9e2;background:#fff}.ew4-btn-light{color:#071a37;border:1px solid #dfe4eb;background:#fff}
.ew4-animate-ready .ew4-reveal{opacity:0;transform:translateY(20px);transition:opacity .72s cubic-bezier(.2,.7,.25,1),transform .72s cubic-bezier(.2,.7,.25,1);transition-delay:var(--delay,0ms)}.ew4-animate-ready .ew4-reveal.is-visible{opacity:1;transform:none}

/* 01 HERO */
.ew4-hero{min-height:595px;color:#fff;overflow:hidden;background:linear-gradient(90deg,#04152f 0%,#061a36 50%,#071d3a 100%)}
.ew4-hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(3,17,38,.995) 0%,rgba(4,22,47,.985) 31%,rgba(4,22,47,.76) 50%,rgba(4,22,47,.25) 73%,rgba(4,22,47,.04) 100%),linear-gradient(0deg,rgba(2,14,31,.78) 0%,rgba(2,14,31,.08) 42%),var(--ew4-hero-image);background-repeat:no-repeat;background-size:100% 100%,100% 100%,62% 100%;background-position:center,center,right center;filter:saturate(.96) contrast(1.05)}
.ew4-hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 83% 22%,rgba(239,185,77,.18),transparent 29%),linear-gradient(180deg,rgba(255,255,255,.025),transparent 35%)}
.ew4-hero-inner{position:relative;z-index:2;min-height:505px;display:flex;align-items:center;padding-top:12px}.ew4-hero-copy{max-width:650px}.ew4-hero .ew4-eyebrow{color:#efbd58;margin-bottom:14px}.ew4-hero h1{margin:0;font:800 clamp(50px,4.75vw,68px)/.99 var(--ew4-heading);letter-spacing:-.047em;color:#fff;max-width:650px;text-shadow:0 8px 32px rgba(0,0,0,.18)}.ew4-hero-copy>p{max-width:510px;margin:20px 0 0;font-size:14px;line-height:1.75;color:rgba(255,255,255,.88)}.ew4-phone-mini{font-size:13px}.ew4-trust-wrap{position:relative;z-index:3}.ew4-trust-strip{height:78px;display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;border-top:1px solid rgba(255,255,255,.12);background:rgba(3,17,37,.44);backdrop-filter:blur(5px)}.ew4-trust-item{display:flex;align-items:center;gap:12px;padding:0 20px;color:#fff;border-right:1px solid rgba(255,255,255,.1);font-size:10px;font-weight:750;line-height:1.35}.ew4-trust-item:last-child{border-right:0}.ew4-trust-icon{width:37px;height:37px;flex:0 0 37px;display:grid;place-items:center;color:var(--ew4-gold);border:1px solid rgba(233,184,79,.7);border-radius:6px}.ew4-trust-icon svg{width:23px;height:23px;stroke:currentColor!important;fill:none!important}.ew4-trust-icon img{width:23px;height:23px;object-fit:contain}

/* 02 BUSINESSES */
.ew4-businesses{padding:67px 0 48px;background:#fff}.ew4-businesses .ew4-section-head{margin-bottom:29px}.ew4-business-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.ew4-business-card{overflow:hidden;border:1px solid #e0e5ec;border-radius:7px;background:#fff;box-shadow:0 7px 20px rgba(16,37,69,.045);transition:transform .26s ease,box-shadow .26s ease}.ew4-business-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(16,37,69,.12)}.ew4-business-photo{display:block;height:143px;background:#e8edf3;overflow:hidden}.ew4-business-photo img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}.ew4-business-card:hover img{transform:scale(1.035)}.ew4-business-body{padding:18px 16px 20px}.ew4-business-card h3{font:800 13px/1.25 var(--ew4-heading);margin:0 0 8px;color:#071a37}.ew4-business-card p{font-size:10.5px;line-height:1.62;color:#607087;margin:0;min-height:53px}.ew4-card-link{display:inline-flex;align-items:center;gap:6px;margin-top:12px;color:#c57f17;font-size:10px;font-weight:800}.ew4-card-link span{font-size:13px}

/* 03 COVERAGE */
.ew4-coverage{padding:0 0 42px;background:#fff}.ew4-coverage-panel{overflow:visible;position:relative;padding:39px 34px 29px;border-radius:8px;background:radial-gradient(circle at 5% 0%,rgba(47,91,155,.4),transparent 28%),linear-gradient(145deg,#061a36,#0a2c55);box-shadow:0 13px 34px rgba(4,26,55,.16)}.ew4-coverage-panel:after{content:"";position:absolute;right:-78px;top:-139px;width:285px;height:285px;border-radius:50%;border:1px solid rgba(255,255,255,.07);pointer-events:none}.ew4-coverage .ew4-section-head{margin-bottom:24px}.ew4-coverage .ew4-section-head .ew4-eyebrow{color:#efbc56}.ew4-coverage .ew4-section-head h2{color:#fff;font-size:33px}.ew4-coverage-grid{position:relative;z-index:2;display:grid;grid-template-columns:repeat(6,1fr)}.ew4-coverage-item{text-align:center;padding:17px 12px 18px;border-right:1px solid rgba(255,255,255,.13);color:#fff}.ew4-coverage-item:last-child{border-right:0}.ew4-coverage-icon{height:53px;display:flex;align-items:center;justify-content:center;color:var(--ew4-gold);margin-bottom:9px}.ew4-coverage-icon svg{width:42px;height:42px;stroke:currentColor!important;fill:none!important}.ew4-coverage-icon img{width:42px;height:42px;object-fit:contain}.ew4-coverage-item h3{margin:0 0 7px;font:750 10.5px/1.25 var(--ew4-heading)}.ew4-coverage-item p{margin:0;color:rgba(255,255,255,.7);font-size:8.9px;line-height:1.55}.ew4-coverage-action{position:relative;z-index:3;display:flex;justify-content:center;margin-bottom:-51px;margin-top:14px}

/* 04 WHY */
.ew4-why{padding:72px 0 56px;background:#fff}.ew4-why-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:58px;align-items:center}.ew4-why-copy{max-width:450px}.ew4-why-copy h2{margin:0;max-width:370px;font:800 39px/1.03 var(--ew4-heading);letter-spacing:-.038em;color:#071a37}.ew4-why-copy>p{margin:15px 0 21px;color:#65758b;font-size:12px;line-height:1.72}.ew4-why ul{list-style:none;margin:0 0 25px;padding:0;display:grid;gap:10px}.ew4-why li{display:flex;gap:10px;align-items:flex-start;color:#3f4f66;font-size:10.8px;line-height:1.48}.ew4-why li span{color:#d18d21;font-weight:900}.ew4-why-media{position:relative;height:370px;border-radius:8px;overflow:visible;box-shadow:0 15px 37px rgba(12,33,62,.13);transform:perspective(1000px) rotateX(calc(var(--ew4-my,0)*-1.1deg)) rotateY(calc(var(--ew4-mx,0)*1.4deg));transition:transform .16s linear}.ew4-why-media>img{width:100%;height:100%;object-fit:cover;border-radius:8px}.ew4-experience-badge{position:absolute;left:-33px;bottom:18px;width:137px;min-height:126px;padding:14px;border-radius:8px;background:linear-gradient(145deg,#0b2c55,#061a36);color:#fff;text-align:center;border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 34px rgba(3,18,39,.25)}.ew4-badge-icon{width:32px;height:32px;margin:0 auto 6px;display:grid;place-items:center;color:var(--ew4-gold)}.ew4-badge-icon svg{width:29px;height:29px;stroke:currentColor!important;fill:none!important}.ew4-experience-badge strong{display:block;font:800 28px/1 var(--ew4-heading)}.ew4-experience-badge small{display:block;margin-top:6px;color:rgba(255,255,255,.7);font-size:8.5px;line-height:1.25}

/* 05 PROCESS */
.ew4-process{padding:22px 0 52px;background:#fff}.ew4-process-shell{padding:31px 29px;border:1px solid #e4e9ef;border-radius:9px;background:#fff;box-shadow:0 9px 30px rgba(14,35,67,.055)}.ew4-process .ew4-section-head{margin-bottom:27px}.ew4-process .ew4-section-head h2{font-size:30px}.ew4-process-layout{display:grid;grid-template-columns:1fr 270px;gap:31px;align-items:stretch}.ew4-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:19px;align-items:center}.ew4-step{position:relative;text-align:center;padding:0 9px}.ew4-step:not(:last-child):after{content:"";position:absolute;top:31px;left:calc(50% + 36px);width:calc(100% - 72px);border-top:1px dashed #aab5c5}.ew4-step-num{position:absolute;z-index:4;top:19px;left:calc(50% - 43px);width:23px;height:23px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#061a36;font-size:9px;font-weight:800}.ew4-step-icon{position:relative;z-index:3;width:64px;height:64px;margin:0 auto 12px;border:1px solid #dce2e9;border-radius:50%;display:grid;place-items:center;color:#061a36;background:#fff;box-shadow:0 7px 18px rgba(5,26,54,.08)}.ew4-step-icon svg{width:33px;height:33px;stroke:currentColor!important;fill:none!important}.ew4-step-icon img{width:32px;height:32px;object-fit:contain}.ew4-step h3{margin:0 0 6px;font:750 10.8px/1.25 var(--ew4-heading)}.ew4-step p{margin:0;color:#68788f;font-size:8.9px;line-height:1.55}.ew4-call-card{padding:23px 23px;border-radius:8px;background:linear-gradient(145deg,#0a2b52,#061a36);color:#fff;display:flex;flex-direction:column;justify-content:center}.ew4-call-icon{width:38px;height:38px;color:var(--ew4-gold)}.ew4-call-icon svg{width:36px;height:36px;stroke:currentColor!important;fill:none!important}.ew4-call-card h3{margin:9px 0 8px;font:800 20px/1.04 var(--ew4-heading);letter-spacing:-.026em}.ew4-call-card p{margin:0 0 14px;color:rgba(255,255,255,.73);font-size:9px;line-height:1.55}.ew4-call-card .ew4-btn{min-height:39px;font-size:9px}

/* 06 CARRIERS */
.ew4-carriers{padding:34px 0 43px;background:#fff}.ew4-carriers .ew4-section-head{margin-bottom:23px}.ew4-carriers .ew4-section-head h2{font-size:28px}.ew4-carrier-row{display:grid;grid-template-columns:28px repeat(6,1fr) 28px;align-items:center;gap:17px}.ew4-slider-arrow{color:#a0abba;font-size:29px;text-align:center}.ew4-carrier-logo{height:53px;display:flex;align-items:center;justify-content:center;filter:grayscale(1);opacity:.78;transition:filter .2s ease,opacity .2s ease,transform .2s ease}.ew4-carrier-logo:hover{filter:none;opacity:1;transform:translateY(-2px)}.ew4-carrier-logo img{max-width:130px;max-height:43px;object-fit:contain}.ew4-carrier-logo span{font:800 12px/1 var(--ew4-heading);letter-spacing:-.02em;color:#4c5562}

/* 07 TESTIMONIAL */
.ew4-testimonial{overflow:hidden;padding:43px 0 39px;color:#fff;background:linear-gradient(145deg,#061a36,#0a2b52)}.ew4-testimonial-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 25% 40%,rgba(255,255,255,.027),transparent 22%),linear-gradient(135deg,transparent 45%,rgba(255,255,255,.024) 45%,rgba(255,255,255,.024) 46%,transparent 46%);background-size:auto,45px 45px;opacity:.72}.ew4-testimonial-inner{position:relative;z-index:2;text-align:center;max-width:780px}.ew4-quote-mark{color:var(--ew4-gold);font:800 39px/1 Georgia,serif;margin-bottom:3px}.ew4-testimonial p{margin:0 auto 12px;max-width:710px;font-size:16px;line-height:1.58;color:#fff}.ew4-stars{color:var(--ew4-gold);letter-spacing:.12em;font-size:11px}.ew4-testimonial strong{display:block;margin-top:4px;font-size:9px}.ew4-testimonial small{display:block;color:rgba(255,255,255,.56);font-size:7.5px}.ew4-dots{display:flex;justify-content:center;gap:5px;margin-top:11px}.ew4-dots span{width:4px;height:4px;border-radius:50%;background:rgba(255,255,255,.25)}.ew4-dots span:first-child{background:var(--ew4-gold)}

/* 08 FINAL CTA */
.ew4-final-cta{overflow:hidden;padding:29px 0;background:#f8fafc;border-top:1px solid #edf0f4}.ew4-cta-grid{display:grid;grid-template-columns:240px 1fr 215px;gap:34px;align-items:center;min-height:142px}.ew4-cta-image{height:130px;overflow:hidden}.ew4-cta-image img{width:100%;height:100%;object-fit:cover;object-position:center}.ew4-final-cta .ew4-eyebrow{font-size:8.5px;margin-bottom:7px}.ew4-final-cta h2{margin:0;font:800 30px/1.05 var(--ew4-heading);letter-spacing:-.037em;color:#071a37}.ew4-final-cta p{margin:9px 0 0;max-width:500px;color:#68778d;font-size:9.5px;line-height:1.58}.ew4-cta-actions{display:grid;gap:9px}.ew4-cta-actions .ew4-btn{min-height:41px;font-size:9px}.ew4-cta-watermark{position:absolute;right:2.5%;top:50%;transform:translateY(-50%);width:205px;height:112px;background-repeat:no-repeat;background-position:center;background-size:contain;opacity:.035;filter:grayscale(1)}

@media(max-width:1024px){.ew4-container{width:min(calc(100% - 42px),var(--ew4-container,1240px))}.ew4-hero{min-height:570px}.ew4-hero-inner{min-height:490px}.ew4-hero-bg{background-size:100% 100%,100% 100%,68% 100%;background-position:center,center,72% center}.ew4-hero-copy{max-width:520px}.ew4-hero h1{font-size:56px}.ew4-business-grid{grid-template-columns:repeat(3,1fr)}.ew4-coverage-grid{grid-template-columns:repeat(3,1fr)}.ew4-coverage-item{border-bottom:1px solid rgba(255,255,255,.1)}.ew4-coverage-item:nth-child(3n){border-right:0}.ew4-why-grid{grid-template-columns:1fr 1.25fr;gap:40px}.ew4-why-copy h2{font-size:35px}.ew4-process-layout{grid-template-columns:1fr 235px}.ew4-carrier-row{grid-template-columns:24px repeat(3,1fr) 24px}.ew4-carrier-logo:nth-of-type(n+5){display:none}.ew4-cta-grid{grid-template-columns:190px 1fr 185px;gap:24px}}
@media(max-width:767px){.ew4-container{width:min(calc(100% - 30px),var(--ew4-container,1240px))}.ew4-section-head{margin-bottom:23px}.ew4-section-head h2{font-size:29px}.ew4-eyebrow{font-size:9px}.ew4-hero{min-height:auto}.ew4-hero-bg{background-image:linear-gradient(0deg,rgba(3,17,38,.99) 0%,rgba(3,17,38,.94) 56%,rgba(3,17,38,.3) 100%),var(--ew4-hero-image);background-size:100% 100%,115% auto;background-position:center,68% top}.ew4-hero-inner{min-height:580px;align-items:flex-end;padding:205px 0 36px}.ew4-hero-copy{max-width:none}.ew4-hero h1{font-size:43px;line-height:1.01}.ew4-hero-copy>p{font-size:13px}.ew4-buttons{display:grid;grid-template-columns:1fr;max-width:270px}.ew4-trust-strip{height:auto;grid-template-columns:1fr;padding:12px 0}.ew4-trust-item{min-height:49px;border-right:0;padding:5px 0}.ew4-businesses{padding:47px 0 36px}.ew4-business-grid{display:flex;overflow-x:auto;gap:12px;padding-bottom:9px;scroll-snap-type:x mandatory;scrollbar-width:none}.ew4-business-grid::-webkit-scrollbar{display:none}.ew4-business-card{flex:0 0 80%;scroll-snap-align:start}.ew4-business-photo{height:155px}.ew4-coverage{padding-bottom:38px}.ew4-coverage-panel{padding:29px 18px 21px}.ew4-coverage .ew4-section-head h2{font-size:29px}.ew4-coverage-grid{grid-template-columns:1fr;gap:8px}.ew4-coverage-item{display:grid;grid-template-columns:46px 1fr;align-items:center;text-align:left;padding:11px 12px;border:1px solid rgba(255,255,255,.15)!important;border-radius:6px}.ew4-coverage-icon{height:auto;margin:0}.ew4-coverage-icon svg{width:30px;height:30px}.ew4-coverage-item h3{margin:0;font-size:11px}.ew4-coverage-item p{display:none}.ew4-coverage-action{margin-bottom:-43px;margin-top:18px}.ew4-why{padding:60px 0 46px}.ew4-why-grid{grid-template-columns:1fr;gap:30px}.ew4-why-copy{max-width:none}.ew4-why-copy h2{font-size:34px}.ew4-why-media{height:300px}.ew4-experience-badge{left:12px;bottom:12px;width:117px;min-height:108px}.ew4-experience-badge strong{font-size:24px}.ew4-process{padding:17px 0 42px}.ew4-process-shell{padding:27px 18px}.ew4-process-layout{grid-template-columns:1fr;gap:25px}.ew4-steps{grid-template-columns:1fr;gap:19px}.ew4-step{display:grid;grid-template-columns:61px 1fr;text-align:left;gap:13px;align-items:center}.ew4-step:not(:last-child):after{display:none}.ew4-step-num{left:-4px;top:-2px}.ew4-step-icon{grid-row:1/3;margin:0}.ew4-step h3{font-size:12px;margin:0}.ew4-step p{font-size:9.5px}.ew4-call-card{padding:23px}.ew4-carriers{padding:26px 0 32px}.ew4-carriers .ew4-section-head h2{font-size:25px}.ew4-carrier-row{grid-template-columns:18px repeat(2,1fr) 18px;gap:10px}.ew4-carrier-logo:nth-of-type(n+4){display:none}.ew4-testimonial{padding:37px 0}.ew4-testimonial p{font-size:14px}.ew4-final-cta{padding:28px 0}.ew4-cta-grid{grid-template-columns:1fr;gap:18px}.ew4-cta-image{height:170px;border-radius:7px}.ew4-final-cta h2{font-size:31px}.ew4-cta-actions{grid-template-columns:1fr 1fr}.ew4-cta-watermark{right:-45px;bottom:-10px;top:auto;transform:none}}
@media(max-width:420px){.ew4-hero h1{font-size:38px}.ew4-cta-actions{grid-template-columns:1fr}.ew4-business-card{flex-basis:87%}}
@media(prefers-reduced-motion:reduce){.ew4-home-root *{transition-duration:.001ms!important;animation:none!important}.ew4-animate-ready .ew4-reveal{opacity:1!important;transform:none!important}}
.elementor-editor-active .ew4-reveal,.elementor-editor-active .ew4-animate-ready .ew4-reveal{opacity:1!important;transform:none!important}.elementor-editor-active .ew4-business-grid{overflow:visible}

/* =========================================================
   v4.2.0 REFERENCE-FIDELITY CORRECTION LAYER
   Keeps the original approved proportions while fixing
   Elementor boxed-parent compression and interaction drift.
   ========================================================= */

/* A. Make every Ewing section use the viewport even when Elementor/theme
      wraps the widget in a boxed container. */
.ew4-home-root{
  width:100vw;
  max-width:100vw;
  margin-left:calc(50% - 50vw);
  margin-right:calc(50% - 50vw);
  overflow-x:clip;
}
.elementor-widget:has(> .elementor-widget-container > .ew4-home-root){margin-block:0!important}
.e-con:has(> .elementor-element > .elementor-widget-container > .ew4-home-root){--row-gap:0px!important;row-gap:0!important}

/* B. No hover jump. Keep geometry pixel-stable. */
.ew4-btn,.ew4-business-card,.ew4-business-photo img,.ew4-carrier-logo{transform:none!important}
.ew4-btn:hover{transform:none!important}
.ew4-business-card:hover{transform:none!important;box-shadow:0 9px 25px rgba(16,37,69,.08);border-color:#d8dee7}
.ew4-business-card:hover img{transform:none!important}
.ew4-carrier-logo:hover{transform:none!important;filter:grayscale(1);opacity:.9}
.ew4-why-media{transform:none!important}

/* C. Hero composition: same image, but scaled/positioned like the master. */
.ew4-hero-bg{
  background-image:
    linear-gradient(90deg,rgba(3,17,38,.995) 0%,rgba(4,22,47,.985) 31%,rgba(4,22,47,.69) 49%,rgba(4,22,47,.22) 70%,rgba(4,22,47,.035) 100%),
    linear-gradient(0deg,rgba(2,14,31,.66) 0%,rgba(2,14,31,.05) 42%),
    var(--ew4-hero-image);
  background-size:100% 100%,100% 100%,57% 100%;
  background-position:center,center,right center;
  filter:saturate(1.02) contrast(1.035) brightness(1.035);
}
.ew4-hero h1{font-size:clamp(48px,4.15vw,60px);max-width:580px;letter-spacing:-.044em;line-height:1.005}
.ew4-hero-copy{max-width:580px}
.ew4-hero-copy>p{max-width:490px}

/* D. Trust row is open in the reference — no boxed toolbar treatment. */
.ew4-trust-strip{border-top:0;background:transparent;backdrop-filter:none}
.ew4-trust-item{border-right:0;padding-inline:18px;font-size:10.4px}
.ew4-trust-icon{border:0;border-radius:0;width:39px;height:39px;flex-basis:39px;color:var(--ew4-gold)}
.ew4-trust-icon svg,.ew4-trust-icon img{width:28px;height:28px}

/* E. Card content stays exactly in place. Only tiny readability correction. */
.ew4-business-card h3{font-size:13.2px}
.ew4-business-card p{font-size:10.6px}

/* F. Coverage icons in the master are stronger/larger gold line icons. */
.ew4-coverage-icon{height:57px;color:var(--ew4-gold)}
.ew4-coverage-icon svg,.ew4-coverage-icon img{width:47px;height:47px}
.ew4-coverage-item h3{font-size:10.8px}
.ew4-coverage-item p{font-size:9px}

/* G. Why section: preserve original geometry, only match the badge authority. */
.ew4-experience-badge{width:145px;min-height:134px;padding:15px}
.ew4-experience-badge strong{font-size:30px}

/* H. Process: slightly stronger icon circles/text without growing the section. */
.ew4-step-icon{width:68px;height:68px}
.ew4-step-icon svg{width:35px;height:35px}
.ew4-step-num{top:21px;left:calc(50% - 46px)}
.ew4-step:not(:last-child):after{top:33px;left:calc(50% + 39px);width:calc(100% - 78px)}
.ew4-step h3{font-size:11px}
.ew4-step p{font-size:9px}

/* I. Carriers: reference logos are more visible, but do not shift on hover. */
.ew4-carrier-logo{height:57px;opacity:.84}
.ew4-carrier-logo img{max-width:143px;max-height:47px}

/* J. Testimonial: add reference arrows while preserving original band height. */
.ew4-testimonial{display:flex;align-items:center}
.ew4-testimonial p{font-size:16.3px}
.ew4-testimonial-arrow{position:absolute;z-index:3;top:50%;transform:translateY(-50%);color:var(--ew4-gold);font:300 38px/1 Arial,sans-serif;opacity:.9;pointer-events:none}
.ew4-testimonial-prev{left:max(22px,calc((100vw - var(--ew4-container))/2 + 6px))}
.ew4-testimonial-next{right:max(22px,calc((100vw - var(--ew4-container))/2 + 6px))}

/* K. Final CTA: the reference truck begins at the viewport edge. */
.ew4-final-cta{min-height:150px;padding:0}
.ew4-final-cta>.ew4-cta-image{position:absolute;z-index:1;left:0;top:0;bottom:0;width:29vw;height:auto;overflow:hidden}
.ew4-final-cta>.ew4-cta-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,250,252,0) 58%,#f8fafc 100%)}
.ew4-final-cta>.ew4-cta-image img{width:100%;height:100%;object-fit:cover;object-position:center}
.ew4-cta-grid{position:relative;z-index:2;grid-template-columns:1fr 215px;gap:34px;min-height:150px;padding-left:255px}
.ew4-cta-watermark{opacity:.04}

/* L. Responsive correction. */
@media(max-width:1024px){
  .ew4-home-root{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
  .ew4-hero-bg{background-size:100% 100%,100% 100%,63% 100%;background-position:center,center,right center}
  .ew4-hero h1{font-size:54px;max-width:520px}
  .ew4-final-cta>.ew4-cta-image{width:31vw}
  .ew4-cta-grid{padding-left:205px;grid-template-columns:1fr 185px;gap:24px}
}
@media(max-width:767px){
  .ew4-home-root{overflow-x:hidden}
  .ew4-hero-bg{background-image:linear-gradient(0deg,rgba(3,17,38,.99) 0%,rgba(3,17,38,.93) 55%,rgba(3,17,38,.28) 100%),var(--ew4-hero-image);background-size:100% 100%,118% auto;background-position:center,70% top;filter:saturate(1.02) contrast(1.02)}
  .ew4-hero h1{font-size:42px;max-width:none}
  .ew4-trust-item{padding-inline:0}
  .ew4-testimonial-arrow{display:none}
  .ew4-final-cta{padding:28px 0}
  .ew4-final-cta>.ew4-cta-image{position:relative;left:auto;top:auto;bottom:auto;width:100%;height:170px;border-radius:7px;overflow:hidden}
  .ew4-final-cta>.ew4-cta-image:after{display:none}
  .ew4-cta-grid{grid-template-columns:1fr;padding-left:0;min-height:0;gap:18px}
}
/* v4.2 responsive carrier count correction. */
@media(max-width:1024px) and (min-width:768px){.ew4-carrier-logo:nth-of-type(n+4){display:none!important}}
@media(max-width:767px){.ew4-carrier-logo:nth-of-type(n+3){display:none!important}}

/* =========================================================
   v4.3.0 PREMIUM POLISH + RESPONSIVE/EDITOR STABILITY
   Fixes: hero composition/height flow, premium cards,
   coverage CTA placement, real carrier artwork, working
   testimonial slider, balanced bottom CTA, editor preview.
   ========================================================= */

/* Editor preview must always remain visible. Animation is frontend-only. */
html.ew4-editor-mode .ew4-reveal,
body.elementor-editor-active .ew4-reveal,
.elementor-editor-active .ew4-reveal,
.elementor-element-edit-mode .ew4-reveal,
.elementor-editor-preview .ew4-reveal{
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
}
html.ew4-editor-mode .ew4-business-grid,
body.elementor-editor-active .ew4-business-grid{overflow:visible!important}

/* 01 — Hero: no hard split/seam; the image spans the hero and is darkened
   progressively on the copy side. Hero height control now grows the content
   naturally instead of leaving dead space below the trust row. */
.ew4-hero{
  display:flex;
  flex-direction:column;
  min-height:595px;
  isolation:isolate;
}
.ew4-hero-bg{
  background-image:
    linear-gradient(90deg,rgba(2,15,34,.99) 0%,rgba(3,18,39,.96) 27%,rgba(4,22,47,.79) 44%,rgba(4,22,47,.34) 62%,rgba(4,22,47,.08) 82%,rgba(4,22,47,.03) 100%),
    linear-gradient(0deg,rgba(2,14,31,.72) 0%,rgba(2,14,31,.11) 45%,rgba(2,14,31,.04) 100%),
    var(--ew4-hero-image);
  background-size:100% 100%,100% 100%,cover;
  background-position:center,center,70% center;
  filter:saturate(1.05) contrast(1.055) brightness(1.02);
}
.ew4-hero-inner{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  align-items:center;
  padding-top:35px;
  padding-bottom:30px;
}
.ew4-hero-copy{max-width:590px}
.ew4-hero h1{max-width:590px;font-size:clamp(50px,4vw,62px);line-height:1.01}
.ew4-hero-copy>p{font-size:14px;line-height:1.7;max-width:500px}
.ew4-hero .ew4-buttons{margin-top:29px;gap:15px}
.ew4-hero .ew4-btn{min-height:49px;padding-inline:23px}
.ew4-trust-wrap{z-index:3;width:min(calc(100% - 64px),var(--ew4-container,1240px));padding:0 0 30px}
.ew4-trust-strip{height:auto;min-height:72px;align-items:center}
.ew4-trust-item{min-height:58px;padding:7px 16px;gap:11px;font-size:10.6px}
.ew4-trust-icon{width:36px;height:36px;flex-basis:36px}
.ew4-trust-icon svg,.ew4-trust-icon img{width:27px;height:27px}

/* 02 — Premium business cards. Geometry stays fixed on hover. */
.ew4-businesses{padding-top:72px;padding-bottom:56px}
.ew4-business-grid{gap:19px}
.ew4-business-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:318px;
  overflow:hidden;
  border:1px solid #dce3ec;
  border-radius:11px;
  background:linear-gradient(180deg,#fff 0%,#fff 74%,#fbfcfe 100%);
  box-shadow:0 12px 32px rgba(8,31,63,.075);
}
.ew4-business-card:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  border-radius:inherit;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
}
.ew4-business-card:hover{
  transform:none!important;
  border-color:#cfd8e4;
  box-shadow:0 17px 42px rgba(8,31,63,.12);
}
.ew4-business-photo{height:158px;position:relative;background:#e8edf3}
.ew4-business-photo:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 58%,rgba(2,18,39,.08) 100%);
}
.ew4-business-photo img{object-position:center center;filter:saturate(1.04) contrast(1.025)}
.ew4-business-body{display:flex;flex:1;flex-direction:column;padding:19px 17px 20px}
.ew4-business-card h3{font-size:13.5px;margin-bottom:8px}
.ew4-business-card p{font-size:10.7px;line-height:1.58;min-height:0}
.ew4-card-link{margin-top:auto;padding-top:18px;font-size:10.2px}

/* 03 — Coverage CTA: controlled, centered overlap without clipping or
   strange negative space. */
.ew4-coverage{padding-bottom:64px}
.ew4-coverage-panel{padding-bottom:50px;overflow:visible}
.ew4-coverage-action{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:-22px;
  transform:translateX(-50%);
  width:max-content;
  max-width:calc(100% - 32px);
  margin:0;
}
.ew4-coverage-action .ew4-btn{
  min-height:48px;
  padding:0 25px;
  border-radius:5px;
  border-color:var(--ew4-gold);
  box-shadow:0 11px 28px rgba(4,25,52,.2);
}

/* 06 — Exact carrier artwork from the approved reference, shown cleanly. */
.ew4-carriers{padding:39px 0 45px}
.ew4-carrier-row{grid-template-columns:26px repeat(6,minmax(0,1fr)) 26px;gap:20px}
.ew4-carrier-logo{
  height:62px;
  opacity:.9;
  filter:grayscale(1);
  padding:6px 5px;
}
.ew4-carrier-logo img{
  width:auto;
  height:auto;
  max-width:150px;
  max-height:50px;
  object-fit:contain;
}
.ew4-carrier-logo:hover{opacity:.98!important;filter:grayscale(1)!important}
.ew4-slider-arrow{font-size:30px;color:#aab5c4}

/* 07 — Real functional testimonial slider, balanced vertical space. */
.ew4-testimonial{
  position:relative;
  display:flex;
  align-items:center;
  min-height:250px;
  padding:46px 0 44px;
}
.ew4-testimonial-inner{max-width:790px;width:100%}
.ew4-testimonial-stage{position:relative;min-height:133px;display:grid;align-items:center}
.ew4-testimonial-slide{grid-area:1/1;text-align:center;opacity:0;transform:translateY(7px);transition:opacity .28s ease,transform .28s ease}
.ew4-testimonial-slide.is-active{opacity:1;transform:none}
.ew4-testimonial-slide[hidden]{display:none!important}
.ew4-testimonial p{font-size:16.2px;line-height:1.56;margin-bottom:12px}
.ew4-testimonial-arrow{
  appearance:none;
  -webkit-appearance:none;
  border:0;
  background:transparent;
  width:48px;
  height:64px;
  display:grid;
  place-items:center;
  cursor:pointer;
  pointer-events:auto;
  padding:0;
  top:50%;
  transform:translateY(-50%);
  font-size:42px;
  transition:opacity .18s ease,color .18s ease;
}
.ew4-testimonial-arrow:hover,.ew4-testimonial-arrow:focus-visible{color:#f4d47c;opacity:1;outline:none}
.ew4-dots{margin-top:14px;gap:7px}
.ew4-dot{
  appearance:none;
  -webkit-appearance:none;
  width:6px;
  height:6px;
  padding:0;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.28);
  cursor:pointer;
}
.ew4-dot.is-active{background:var(--ew4-gold);box-shadow:0 0 0 3px rgba(233,184,79,.12)}

/* 08 — Final CTA: balanced top/bottom breathing room, no content/image
   overlap on wide screens, and predictable responsive stacking. */
.ew4-final-cta{
  position:relative;
  display:block;
  min-height:176px;
  padding:0;
  overflow:hidden;
}
.ew4-final-cta>.ew4-cta-image{
  position:absolute;
  z-index:1;
  left:0;
  top:0;
  bottom:0;
  width:29vw;
  height:auto;
  min-width:255px;
  max-width:560px;
  overflow:hidden;
}
.ew4-final-cta>.ew4-cta-image:after{background:linear-gradient(90deg,rgba(248,250,252,0) 50%,rgba(248,250,252,.62) 78%,#f8fafc 100%)}
.ew4-final-cta>.ew4-cta-image img{object-position:54% center}
.ew4-final-cta .ew4-cta-grid{
  width:100%;
  max-width:none;
  min-height:176px;
  margin:0;
  padding-top:31px;
  padding-right:max(32px,calc((100vw - var(--ew4-container))/2));
  padding-bottom:31px;
  padding-left:calc(29vw + 42px);
  display:grid;
  grid-template-columns:minmax(0,1fr) 215px;
  gap:40px;
  align-items:center;
}
.ew4-cta-copy{max-width:590px}
.ew4-final-cta h2{font-size:31px}
.ew4-final-cta p{font-size:10px;line-height:1.6}
.ew4-cta-actions{gap:10px}
.ew4-cta-watermark{right:2%;width:190px;opacity:.035}

/* Laptop / tablet */
@media(max-width:1280px){
  .ew4-hero-bg{background-position:center,center,72% center}
  .ew4-business-grid{gap:15px}
  .ew4-business-photo{height:150px}
  .ew4-carrier-row{gap:14px}
  .ew4-final-cta .ew4-cta-grid{padding-left:calc(31vw + 32px);grid-template-columns:minmax(0,1fr) 195px;gap:26px}
  .ew4-final-cta>.ew4-cta-image{width:31vw}
}
@media(max-width:1024px){
  .ew4-hero-inner{padding-top:30px;padding-bottom:24px}
  .ew4-hero-bg{background-size:100% 100%,100% 100%,cover;background-position:center,center,72% center}
  .ew4-hero h1{font-size:52px;max-width:520px}
  .ew4-trust-wrap{width:min(calc(100% - 42px),var(--ew4-container,1240px));padding-bottom:24px}
  .ew4-business-grid{grid-template-columns:repeat(3,1fr)}
  .ew4-business-card{min-height:305px}
  .ew4-carrier-logo{height:60px}
  .ew4-final-cta>.ew4-cta-image{width:33vw}
  .ew4-final-cta .ew4-cta-grid{padding-left:calc(33vw + 28px);padding-right:24px;grid-template-columns:minmax(0,1fr) 180px;gap:22px}
  .ew4-final-cta h2{font-size:28px}
}

/* Mobile */
@media(max-width:767px){
  .ew4-hero{min-height:auto!important;display:block}
  .ew4-hero-bg{
    background-image:linear-gradient(0deg,rgba(3,17,38,.99) 0%,rgba(3,17,38,.94) 56%,rgba(3,17,38,.35) 100%),var(--ew4-hero-image);
    background-size:100% 100%,auto 53%;
    background-position:center,72% top;
  }
  .ew4-hero-inner{min-height:575px;padding:205px 0 32px;align-items:flex-end}
  .ew4-hero h1{font-size:42px}
  .ew4-trust-wrap{width:min(calc(100% - 30px),var(--ew4-container,1240px));padding-bottom:18px}
  .ew4-trust-strip{grid-template-columns:1fr;gap:0}
  .ew4-trust-item{min-height:48px;padding:5px 0}

  .ew4-businesses{padding:50px 0 42px}
  .ew4-business-card{flex-basis:84%;min-height:325px;border-radius:10px}
  .ew4-business-photo{height:168px}
  .elementor-editor-active .ew4-business-grid,.elementor-element-edit-mode .ew4-business-grid{display:flex!important;overflow-x:auto!important}

  .ew4-coverage{padding-bottom:58px}
  .ew4-coverage-panel{padding-bottom:42px}
  .ew4-coverage-action{bottom:-21px;max-width:calc(100% - 26px)}
  .ew4-coverage-action .ew4-btn{white-space:normal;text-align:center;min-height:46px;padding:11px 18px}

  .ew4-carriers{padding:31px 0 36px}
  .ew4-carrier-row{grid-template-columns:18px repeat(2,minmax(0,1fr)) 18px;gap:9px}
  .ew4-carrier-logo{height:55px;padding:6px 2px}
  .ew4-carrier-logo img{max-width:118px;max-height:43px}

  .ew4-testimonial{min-height:290px;padding:48px 0 46px}
  .ew4-testimonial-stage{min-height:155px}
  .ew4-testimonial p{font-size:14.5px;padding-inline:4px}
  .ew4-testimonial-arrow{display:grid;width:35px;font-size:34px}
  .ew4-testimonial-prev{left:5px}
  .ew4-testimonial-next{right:5px}
  .ew4-testimonial-inner{padding-inline:25px}

  .ew4-final-cta{min-height:0;padding:34px 0 36px}
  .ew4-final-cta>.ew4-cta-image{
    position:relative;
    width:min(calc(100% - 30px),var(--ew4-container,1240px));
    min-width:0;
    max-width:none;
    height:190px;
    margin:0 auto 24px;
    border-radius:9px;
  }
  .ew4-final-cta>.ew4-cta-image:after{display:none}
  .ew4-final-cta .ew4-cta-grid{
    width:min(calc(100% - 30px),var(--ew4-container,1240px));
    min-height:0;
    margin:0 auto;
    padding:0;
    grid-template-columns:1fr;
    gap:23px;
  }
  .ew4-final-cta h2{font-size:30px}
  .ew4-cta-actions{grid-template-columns:1fr;max-width:100%}
  .ew4-cta-watermark{right:-40px;bottom:0;top:auto;transform:none;width:180px}
}
@media(max-width:420px){
  .ew4-business-card{flex-basis:90%}
  .ew4-testimonial-inner{padding-inline:29px}
  .ew4-final-cta>.ew4-cta-image{height:170px}
}

/* v4.3.0 hero composite fidelity + animation safety final overrides */
.ew4-hero-bg{
  background-image:
    linear-gradient(90deg,rgba(2,15,34,.34) 0%,rgba(3,18,39,.22) 38%,rgba(4,22,47,.08) 62%,rgba(4,22,47,0) 100%),
    linear-gradient(0deg,rgba(2,14,31,.42) 0%,rgba(2,14,31,.04) 48%,rgba(2,14,31,0) 100%),
    var(--ew4-hero-image);
  background-size:100% 100%,100% 100%,cover;
  background-position:center,center,center center;
  filter:saturate(1.03) contrast(1.035) brightness(1.02);
}
.ew4-animate-ready .ew4-reveal{
  opacity:1!important;
  transform:none!important;
  transition:none!important;
}
.ew4-animate-ready .ew4-reveal.is-visible{animation:ew4SoftReveal .58s cubic-bezier(.2,.7,.25,1) both}
@keyframes ew4SoftReveal{from{opacity:.88;transform:translateY(9px)}to{opacity:1;transform:none}}
html.ew4-editor-mode .ew4-reveal,
body.elementor-editor-active .ew4-reveal,
.elementor-editor-active .ew4-reveal,
.elementor-element-edit-mode .ew4-reveal,
.elementor-editor-preview .ew4-reveal{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}
@media(max-width:767px){
  .ew4-hero-bg{
    background-image:linear-gradient(0deg,rgba(3,17,38,.96) 0%,rgba(3,17,38,.83) 50%,rgba(3,17,38,.25) 100%),var(--ew4-hero-image);
    background-size:100% 100%,auto 100%;
    background-position:center,68% top;
  }
}
