:root{
  --ewing-navy:#09183d;
  --ewing-navy-2:#0c1d48;
  --ewing-accent:#c89b2f;
  --ewing-accent-2:#e0b33f;
  --ewing-paper:#fbfaf7;
  --ewing-stone:#f1efeb;
  --ewing-ink:#0b1838;
  --ewing-copy:#526078;
  --ewing-line:#d8dbe1;
  --ewing-serif:Georgia,"Times New Roman",serif;
  --ewing-sans:Arial,"Helvetica Neue",sans-serif;
  --ewing-container:1300px;
}

.elementor-widget-ewing-hero>.elementor-widget-container,
.elementor-widget-ewing-businesses>.elementor-widget-container,
.elementor-widget-ewing-coverage>.elementor-widget-container,
.elementor-widget-ewing-why>.elementor-widget-container,
.elementor-widget-ewing-process>.elementor-widget-container,
.elementor-widget-ewing-carriers>.elementor-widget-container,
.elementor-widget-ewing-testimonials>.elementor-widget-container,
.elementor-widget-ewing-quote>.elementor-widget-container{margin:0!important;padding:0!important}

.ewing-section,.ewing-section *{box-sizing:border-box}
.ewing-section{position:relative;width:100%;font-family:var(--ewing-sans);font-size:16px;line-height:1.68;color:var(--ewing-copy);overflow:hidden}
.ewing-container{width:min(calc(100% - 64px),var(--ewing-container));margin:0 auto;position:relative;z-index:2}
.ewing-section h1,.ewing-section h2,.ewing-section h3,.ewing-section p{margin-top:0}
.ewing-section h1,.ewing-section h2,.ewing-section h3{font-family:var(--ewing-serif);font-weight:400;color:var(--ewing-ink);line-height:1.06;letter-spacing:-.026em}
.ewing-section h2{font-size:44px;margin-bottom:22px;max-width:760px;text-wrap:balance}
.ewing-section h3{font-size:18px;line-height:1.28;letter-spacing:-.012em;font-weight:600}
.ewing-eyebrow{margin:0 0 16px;font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.27em;font-weight:800;color:var(--ewing-accent)}
.ewing-section-head{max-width:760px;margin-bottom:48px}
.ewing-center-head{max-width:850px;margin:0 auto 52px;text-align:center}
.ewing-center-head h2{margin-left:auto;margin-right:auto}
.ewing-center-head p{max-width:760px;margin:0 auto;font-size:14px;line-height:1.72}
.ewing-center{text-align:center}

/* hard reset for theme/Elementor hover colors inside Ewing sections */
.ewing-section a:not(.ewing-btn){color:var(--ewing-navy)!important}
.ewing-section a:not(.ewing-btn):hover,.ewing-section a:not(.ewing-btn):focus{color:var(--ewing-accent)!important}
.ewing-btn{position:relative;display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 26px;border:1px solid transparent!important;border-radius:6px!important;font:700 13px/1 var(--ewing-sans)!important;letter-spacing:.01em;text-decoration:none!important;transition:transform .3s cubic-bezier(.2,.7,.2,1),box-shadow .3s ease,background-color .3s ease,color .3s ease,border-color .3s ease!important;overflow:hidden;isolation:isolate}
.ewing-btn:hover,.ewing-btn:focus{transform:translateY(-3px);text-decoration:none!important}
.ewing-btn::after{content:"";position:absolute;inset:-3px auto -3px -45%;width:34%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);transition:left .65s cubic-bezier(.2,.7,.2,1);z-index:-1}
.ewing-btn:hover::after{left:125%}
.ewing-btn-gold,.ewing-btn-gold:visited{background:var(--ewing-accent)!important;color:#09183d!important;border-color:var(--ewing-accent)!important;box-shadow:0 14px 32px rgba(0,0,0,.2)}
.ewing-btn-gold:hover,.ewing-btn-gold:focus{background:var(--ewing-accent-2)!important;color:#09183d!important;border-color:var(--ewing-accent-2)!important;box-shadow:0 18px 40px rgba(0,0,0,.26)}
.ewing-btn-ghost,.ewing-btn-ghost:visited{border-color:rgba(255,255,255,.48)!important;color:#fff!important;background:rgba(5,18,54,.28)!important;backdrop-filter:blur(7px)}
.ewing-btn-ghost:hover,.ewing-btn-ghost:focus{background:rgba(255,255,255,.1)!important;border-color:rgba(255,255,255,.78)!important;color:#fff!important}
.ewing-btn-outline,.ewing-btn-outline:visited{border-color:#b7bdca!important;color:var(--ewing-ink)!important;background:#fff!important}
.ewing-btn-outline:hover,.ewing-btn-outline:focus{border-color:var(--ewing-accent)!important;color:var(--ewing-ink)!important;background:#fffdf7!important;box-shadow:0 12px 28px rgba(9,24,61,.09)}
.ewing-btn-navy,.ewing-btn-navy:visited{background:var(--ewing-navy)!important;color:#fff!important;border-color:var(--ewing-navy)!important;cursor:pointer;box-shadow:0 12px 28px rgba(9,24,61,.17)}
.ewing-btn-navy:hover,.ewing-btn-navy:focus{background:var(--ewing-navy-2)!important;color:#fff!important;border-color:var(--ewing-accent)!important;box-shadow:0 16px 34px rgba(9,24,61,.24)}

/* Hero — full viewport feel, full bleed background */
.ewing-hero{min-height:calc(100svh - 106px);display:flex;align-items:center;padding:0;background:#07183f;color:#fff;isolation:isolate}
.ewing-hero-bg{position:absolute;inset:-2%;background-image:var(--ewing-hero-image);background-size:cover;background-position:center 48%;z-index:-2;animation:ewingKenBurns 18s ease-in-out infinite alternate;will-change:transform}
.ewing-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,18,54,.88) 0%,rgba(5,18,54,.78) 43%,rgba(5,18,54,.47) 70%,rgba(5,18,54,.2) 100%)}
.ewing-hero::after{content:"";position:absolute;inset:auto 0 0;height:1px;background:rgba(255,255,255,.1)}
.ewing-hero-inner{padding-top:56px;padding-bottom:56px}
.ewing-hero-copy{width:740px;max-width:64%}
.ewing-hero h1{font-size:64px;line-height:1.01;color:#fff;margin:0 0 28px;max-width:740px;text-wrap:balance}
.ewing-hero-description{color:#e1e6ef;max-width:650px;margin:0 0 30px;font-size:16px;line-height:1.72}
.ewing-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
.ewing-proof-row{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.ewing-proof{display:flex;align-items:center;gap:8px;color:#e4e8f0;font-size:12px;font-weight:600}
.ewing-proof-dot{width:12px;height:12px;border:1px solid var(--ewing-accent);border-radius:50%;position:relative;flex:0 0 auto;box-shadow:0 0 0 3px rgba(200,155,47,.08)}
.ewing-proof-dot::after{content:"";position:absolute;inset:3px;border-radius:50%;background:var(--ewing-accent)}
.ewing-phone-icon{font-size:15px;transform:rotate(-35deg)}
@keyframes ewingKenBurns{from{transform:scale(1.015) translate3d(0,var(--ewing-parallax,0px),0)}to{transform:scale(1.075) translate3d(-.8%,calc(.4% + var(--ewing-parallax,0px)),0)}}

/* Businesses */
.ewing-businesses{padding:96px 0 66px;background:var(--ewing-paper)}
.ewing-businesses .ewing-section-head{margin-bottom:44px}
.ewing-business-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--ewing-line);background:#fff;box-shadow:0 16px 42px rgba(9,24,61,.035)}
.ewing-business-card{min-height:166px;padding:30px 30px;border-right:1px solid var(--ewing-line);border-bottom:1px solid var(--ewing-line);transition:background .3s ease,transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease;position:relative}
.ewing-business-card:nth-child(3n){border-right:0}.ewing-business-card:nth-last-child(-n+3){border-bottom:0}
.ewing-business-card:hover{z-index:1;background:#fffdfa;transform:translateY(-5px);box-shadow:0 18px 42px rgba(9,24,61,.1)}
.ewing-business-card h3{margin:0 0 12px}.ewing-business-card p{font-size:14px;line-height:1.64;margin:0}
.ewing-micro-note{margin:20px 0 0;font-size:11px;color:#858d9d}

/* Coverage */
.ewing-coverage{padding:92px 0;background:var(--ewing-stone)}
.ewing-coverage-grid{display:grid;grid-template-columns:1fr 1.16fr;gap:64px;align-items:start}
.ewing-coverage-intro>p{max-width:540px;font-size:14.5px;line-height:1.68;margin-bottom:30px}
.ewing-media-card{position:relative;height:420px;border-radius:12px;overflow:hidden;box-shadow:0 22px 46px rgba(9,24,61,.13)}
.ewing-media-card::after,.ewing-why-image::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.14) 48%,transparent 65%);transform:translateX(-120%);transition:transform .9s cubic-bezier(.2,.7,.2,1);pointer-events:none}
.ewing-media-card:hover::after,.ewing-why-image:hover::after{transform:translateX(120%)}
.ewing-media-card img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.ewing-media-card:hover img{transform:scale(1.045);filter:saturate(1.06) contrast(1.02)}
.ewing-coverage-list{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid #d8dbe1;background:#fff;box-shadow:0 18px 40px rgba(9,24,61,.035)}
.ewing-coverage-list article{min-height:146px;padding:25px 26px 22px;border-right:1px solid #d8dbe1;border-bottom:1px solid #d8dbe1;transition:background .3s ease,transform .3s ease,box-shadow .3s ease;position:relative}
.ewing-coverage-list article:nth-child(2n){border-right:0}.ewing-coverage-list article:nth-last-child(-n+2){border-bottom:0}.ewing-coverage-list article:hover{z-index:1;background:#fffdfa;transform:translateY(-3px);box-shadow:0 16px 30px rgba(9,24,61,.07)}
.ewing-coverage-list h3{font-size:17px;margin:0 0 10px}.ewing-coverage-list p{font-size:13.5px;line-height:1.62;margin:0}

/* Why */
.ewing-why{padding:96px 0;background:var(--ewing-paper)}
.ewing-why-grid{display:grid;grid-template-columns:1fr 1.08fr;gap:72px;align-items:center}
.ewing-why-image{position:relative;height:440px;border-radius:12px;overflow:hidden;box-shadow:0 22px 46px rgba(9,24,61,.12)}
.ewing-why-image img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit;transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .5s ease}.ewing-why-image:hover img{transform:scale(1.04);filter:saturate(1.04)}
.ewing-why-copy h2{max-width:610px;margin-bottom:34px}
.ewing-why-features{display:grid;grid-template-columns:repeat(2,1fr);gap:34px 42px}
.ewing-why-features article{display:grid;grid-template-columns:30px 1fr;gap:14px;align-items:start}
.ewing-feature-icon{width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:var(--ewing-accent);font-size:18px}.ewing-feature-icon svg{fill:currentColor;width:18px;height:18px}
.ewing-why-features h3{font-family:var(--ewing-sans);font-size:14px;font-weight:800;line-height:1.3;margin:0 0 8px;letter-spacing:0}.ewing-why-features p{font-size:13px;line-height:1.62;margin:0}

/* Process */
.ewing-process{padding:88px 0 82px;background:var(--ewing-navy);color:#cbd3e0}
.ewing-process .ewing-section-head{margin-bottom:52px}.ewing-process .ewing-eyebrow{color:var(--ewing-accent)}.ewing-process h2{color:#fff;margin-bottom:0}
.ewing-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}
.ewing-process-grid article{position:relative;padding-top:28px;border-top:1px solid rgba(255,255,255,.14);transition:transform .3s ease,border-color .3s ease}
.ewing-process-grid article:hover{transform:translateY(-5px);border-color:var(--ewing-accent)}
.ewing-step-number{font-family:var(--ewing-serif);font-size:28px;line-height:1;color:var(--ewing-accent);margin-bottom:24px}
.ewing-process-grid h3{font-family:var(--ewing-sans);font-size:14px;font-weight:800;color:#fff;letter-spacing:0;line-height:1.32;margin:0 0 11px}.ewing-process-grid p{font-size:13px;line-height:1.64;color:#cbd3e0;margin:0}

/* Carriers */
.ewing-carriers{padding:92px 0 78px;background:var(--ewing-paper)}
.ewing-carriers .ewing-center-head{margin-bottom:46px}
.ewing-carrier-grid{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--ewing-line);background:#fff;box-shadow:0 14px 34px rgba(9,24,61,.035)}
.ewing-carrier-tile{height:94px;display:flex;align-items:center;justify-content:center;border-right:1px solid var(--ewing-line);padding:14px;color:#8f98aa;font-size:10px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;transition:background .3s ease,transform .3s ease,color .3s ease}
.ewing-carrier-tile:last-child{border-right:0}.ewing-carrier-tile:hover{background:#fffdfa;transform:translateY(-4px);color:var(--ewing-navy)}.ewing-carrier-tile img{max-width:88%;max-height:54px;object-fit:contain;border-radius:10px}

/* Testimonials */
.ewing-testimonials{padding:76px 0 82px;background:var(--ewing-stone)}
.ewing-testimonials .ewing-center-head{margin-bottom:48px}
.ewing-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ewing-testimonial-card{background:#fff;min-height:210px;padding:32px 30px;border:1px solid rgba(9,24,61,.05);border-radius:10px;box-shadow:0 16px 34px rgba(9,24,61,.08);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s ease,border-color .35s ease}
.ewing-testimonial-card:hover{transform:translateY(-7px);box-shadow:0 24px 48px rgba(9,24,61,.13);border-color:rgba(200,155,47,.38)}
.ewing-quote-mark{width:24px;height:24px;color:var(--ewing-accent);font-size:20px;margin-bottom:18px}
.ewing-testimonial-card p{font-size:13.5px;line-height:1.72;margin:0 0 22px}.ewing-testimonial-card strong{font-size:12px;color:var(--ewing-ink);font-weight:800}

/* Quote */
.ewing-quote{padding:98px 0 92px;background:var(--ewing-paper)}
.ewing-quote-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:96px;align-items:start}
.ewing-quote-copy p{font-size:14.5px;line-height:1.72;max-width:520px;margin-bottom:30px}
.ewing-form-card{background:#fff;border:1px solid #d8dce4;border-radius:12px;box-shadow:0 22px 48px rgba(9,24,61,.1);padding:36px}
.ewing-quote-form{display:grid;grid-template-columns:repeat(2,1fr);gap:18px 20px}.ewing-field{display:flex;flex-direction:column;gap:8px}.ewing-field-full{grid-column:1/-1}.ewing-field label{font-size:11px;color:var(--ewing-ink);font-weight:800}
.ewing-field input,.ewing-field select,.ewing-field textarea{width:100%;border:1px solid #cbd2dd!important;background:#fff!important;color:#15213c!important;border-radius:6px!important;padding:12px 14px!important;font:14px/1.4 var(--ewing-sans)!important;outline:none;box-shadow:none!important;transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease}.ewing-field input,.ewing-field select{height:50px}.ewing-field textarea{min-height:126px;resize:vertical}.ewing-field input:focus,.ewing-field select:focus,.ewing-field textarea:focus{border-color:var(--ewing-accent)!important;box-shadow:0 0 0 4px rgba(200,155,47,.13)!important;transform:translateY(-1px)}
.ewing-quote-form button.ewing-btn,.ewing-quote-form button.ewing-btn:hover,.ewing-quote-form button.ewing-btn:focus,.ewing-quote-form button.ewing-btn:active{background:var(--ewing-navy)!important;color:#fff!important;border-color:var(--ewing-navy)!important;appearance:none!important;-webkit-appearance:none!important}
.ewing-quote-form button.ewing-btn:hover,.ewing-quote-form button.ewing-btn:focus{background:var(--ewing-navy-2)!important;border-color:var(--ewing-accent)!important;color:#fff!important}
.ewing-form-note{font-size:10px!important;margin:12px 0 0!important;color:#838d9f!important}.ewing-honeypot{position:absolute!important;left:-99999px!important;opacity:0!important;pointer-events:none!important}.ewing-form-status{padding:12px 14px;margin-bottom:18px;border-radius:7px;font-size:13px}.ewing-form-status.success{background:#eef6f2;color:#245744;border:1px solid #d9ebe2}.ewing-form-status.error{background:#fff8e8;color:#6c551a;border:1px solid #ead9ad}

/* Premium reveal / stagger */
.ewing-reveal,.ewing-animate-item{opacity:0;transform:translate3d(0,28px,0);transition:opacity .78s cubic-bezier(.2,.7,.2,1),transform .78s cubic-bezier(.2,.7,.2,1);transition-delay:var(--ewing-delay,0ms);will-change:opacity,transform}
.ewing-animate-item{transform:translate3d(0,24px,0) scale(.988)}
.ewing-reveal.is-visible,.ewing-animate-item.is-visible,.elementor-editor-active .ewing-reveal,.elementor-editor-active .ewing-animate-item{opacity:1;transform:none}
.ewing-section h2{transition:letter-spacing .45s ease}.ewing-section:hover h2{letter-spacing:-.032em}

@media (prefers-reduced-motion:reduce){.ewing-reveal,.ewing-animate-item,.ewing-btn,.ewing-hero-bg,.ewing-media-card img,.ewing-why-image img,.ewing-media-card::after,.ewing-why-image::after{animation:none!important;transition:none!important;transform:none!important}}

@media (max-width:1180px){
  :root{--ewing-container:1040px}.ewing-container{width:min(calc(100% - 54px),var(--ewing-container))}.ewing-hero h1{font-size:56px}.ewing-hero-copy{max-width:70%}.ewing-coverage-grid{gap:42px}.ewing-why-grid{gap:48px}.ewing-quote-grid{gap:58px}.ewing-process-grid{gap:26px}
}
@media (max-width:920px){
  .ewing-section h2{font-size:39px}.ewing-hero{min-height:720px}.ewing-hero-copy{max-width:78%}.ewing-hero h1{font-size:52px}.ewing-business-card{padding:25px 22px}.ewing-business-card p{font-size:13px}.ewing-coverage-list article{padding:22px 20px}.ewing-coverage-list p{font-size:12.5px}.ewing-why-features{gap:26px 28px}.ewing-quote-grid{grid-template-columns:.9fr 1.1fr;gap:36px}.ewing-form-card{padding:28px}
}
@media (max-width:767px){
  .ewing-container{width:min(calc(100% - 32px),100%)}.ewing-section h2{font-size:34px;line-height:1.08}.ewing-eyebrow{font-size:9px;letter-spacing:.22em;margin-bottom:12px}.ewing-section{font-size:14px}
  .ewing-hero{min-height:calc(100svh - 85px);align-items:flex-end;padding:0}.ewing-hero::before{background:linear-gradient(180deg,rgba(5,18,54,.22) 0%,rgba(5,18,54,.52) 34%,rgba(5,18,54,.94) 72%,rgba(5,18,54,.99) 100%)!important}.ewing-hero-bg{background-position:62% center}.ewing-hero-inner{padding-top:120px;padding-bottom:54px}.ewing-hero-copy{width:100%;max-width:100%}.ewing-hero h1{font-size:clamp(40px,11vw,52px);line-height:1.01;margin-bottom:21px}.ewing-hero-description{font-size:14px;line-height:1.65}.ewing-hero-actions{display:grid;grid-template-columns:1fr;gap:10px;margin-bottom:25px}.ewing-btn{width:100%;min-height:50px}.ewing-proof-row{display:grid;grid-template-columns:1fr;gap:9px}.ewing-proof{font-size:11px}
  .ewing-businesses{padding:72px 0 56px}.ewing-section-head{margin-bottom:32px}.ewing-business-grid{grid-template-columns:1fr}.ewing-business-card,.ewing-business-card:nth-child(n){border-right:0;border-bottom:1px solid var(--ewing-line);min-height:0;padding:24px}.ewing-business-card:last-child{border-bottom:0}.ewing-business-card p{font-size:13.5px}
  .ewing-coverage{padding:72px 0}.ewing-coverage-grid{grid-template-columns:1fr;gap:34px}.ewing-coverage-intro>p{font-size:13.5px}.ewing-media-card{height:290px;border-radius:12px}.ewing-coverage-list{grid-template-columns:1fr}.ewing-coverage-list article,.ewing-coverage-list article:nth-child(n){border-right:0;border-bottom:1px solid #d8dbe1;min-height:0}.ewing-coverage-list article:last-child{border-bottom:0}.ewing-coverage-list h3{font-size:16px}.ewing-coverage-list p{font-size:13px}
  .ewing-why{padding:72px 0}.ewing-why-grid{grid-template-columns:1fr;gap:40px}.ewing-why-image{height:320px;border-radius:12px}.ewing-why-features{grid-template-columns:1fr;gap:24px}.ewing-why-features h3{font-size:14px}.ewing-why-features p{font-size:13px}
  .ewing-process{padding:72px 0}.ewing-process-grid{grid-template-columns:1fr;gap:30px}.ewing-process-grid article{padding-top:18px}.ewing-step-number{margin-bottom:14px}.ewing-process-grid h3{font-size:14px}.ewing-process-grid p{font-size:13px}
  .ewing-carriers{padding:72px 0}.ewing-center-head{margin-bottom:36px}.ewing-carrier-grid{grid-template-columns:repeat(2,1fr)}.ewing-carrier-tile{height:82px;border-bottom:1px solid var(--ewing-line)}.ewing-carrier-tile:nth-child(2n){border-right:0}.ewing-carrier-tile:nth-last-child(-n+2){border-bottom:0}
  .ewing-testimonials{padding:72px 0}.ewing-testimonial-grid{grid-template-columns:1fr;gap:16px}.ewing-testimonial-card{min-height:0;padding:27px 24px}.ewing-testimonial-card p{font-size:13.5px}
  .ewing-quote{padding:72px 0 82px}.ewing-quote-grid{grid-template-columns:1fr;gap:38px}.ewing-quote-copy p{font-size:13.5px}.ewing-quote-copy .ewing-btn{width:auto}.ewing-form-card{padding:24px 18px;border-radius:12px}.ewing-quote-form{grid-template-columns:1fr;gap:16px}.ewing-field-full{grid-column:auto}.ewing-field input,.ewing-field select{height:48px}
}
@media (max-width:420px){
  .ewing-container{width:min(calc(100% - 24px),100%)}.ewing-section h2{font-size:31px}.ewing-hero h1{font-size:39px}.ewing-hero-inner{padding-bottom:46px}.ewing-media-card{height:250px}.ewing-why-image{height:280px}.ewing-carrier-grid{grid-template-columns:1fr}.ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){border-right:0;border-bottom:1px solid var(--ewing-line)}.ewing-carrier-tile:last-child{border-bottom:0}.ewing-quote-copy .ewing-btn{width:100%}
}

/* =========================================================
   v1.0.3 — Premium hero, mobile hero rebuild & cinematic motion
   ========================================================= */
.ewing-hero{
  min-height:calc(100svh - 106px);
  overflow:hidden;
  background:#061437;
}
.ewing-hero-bg{
  inset:-3%;
  background-position:center 46%;
  filter:saturate(1.05) contrast(1.035);
  animation-duration:22s;
}
.ewing-hero-bg::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(circle at var(--ewing-glow-x,78%) var(--ewing-glow-y,33%),rgba(226,178,62,.20) 0,rgba(226,178,62,.07) 18%,transparent 38%),
    radial-gradient(circle at 38% 58%,rgba(56,92,174,.16),transparent 36%);
  opacity:.72;
  transition:background-position .2s linear;
  animation:ewingAuraFloat 9s ease-in-out infinite alternate;
}
.ewing-hero-bg::after{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(3,10,30,.08),transparent 38%,rgba(3,10,30,.24) 100%);
}
.ewing-hero::before{
  background:
    linear-gradient(90deg,rgba(4,15,45,.94) 0%,rgba(5,18,54,.86) 35%,rgba(5,18,54,.58) 61%,rgba(5,18,54,.24) 82%,rgba(5,18,54,.10) 100%),
    linear-gradient(180deg,rgba(2,9,29,.12) 0%,transparent 58%,rgba(2,9,29,.44) 100%)!important;
}
.ewing-hero::after{height:94px;background:linear-gradient(180deg,transparent,rgba(4,14,39,.24));border-bottom:1px solid rgba(255,255,255,.08)}
.ewing-hero-inner{padding-top:66px;padding-bottom:68px}
.ewing-hero-copy{
  width:790px;max-width:66%;position:relative;padding:18px 0 18px 30px;
  isolation:isolate;
}
.ewing-hero-copy::before{
  content:"";position:absolute;left:0;top:18px;width:2px;height:88px;border-radius:99px;
  background:linear-gradient(180deg,var(--ewing-accent),rgba(200,155,47,.12));
  box-shadow:0 0 28px rgba(200,155,47,.25);
  transform-origin:top;animation:ewingAccentGrow .9s cubic-bezier(.2,.75,.2,1) both .12s;
}
.ewing-hero-copy::after{
  content:"";position:absolute;z-index:-1;left:-8%;top:-16%;width:88%;height:128%;pointer-events:none;
  background:radial-gradient(ellipse at 36% 48%,rgba(3,13,42,.32),transparent 68%);filter:blur(8px);
}
.ewing-hero .ewing-eyebrow{display:flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.29em;margin-bottom:18px}
.ewing-hero .ewing-eyebrow::after{content:"";width:54px;height:1px;background:linear-gradient(90deg,var(--ewing-accent),transparent);transform-origin:left;animation:ewingLineDraw 1s cubic-bezier(.2,.75,.2,1) both .45s}
.ewing-hero h1{font-size:68px;line-height:.995;letter-spacing:-.038em;max-width:790px;margin-bottom:27px;text-shadow:0 5px 34px rgba(0,0,0,.22)}
.ewing-hero-description{max-width:660px;font-size:16.5px;line-height:1.72;color:#e8ebf2;margin-bottom:31px;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.ewing-hero-actions{gap:13px;margin-bottom:27px}
.ewing-hero .ewing-btn{min-height:54px;border-radius:9px!important;padding:0 28px;box-shadow:0 16px 38px rgba(0,0,0,.18)}
.ewing-hero .ewing-btn-gold{box-shadow:0 16px 38px rgba(0,0,0,.24),0 0 0 1px rgba(255,218,112,.08) inset}
.ewing-hero .ewing-btn-ghost{background:rgba(7,23,62,.34)!important;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%)}
.ewing-proof-row{gap:10px 12px}
.ewing-proof{
  min-height:34px;padding:0 12px;border:1px solid rgba(255,255,255,.11);border-radius:999px;
  background:rgba(8,24,62,.28);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);
  font-size:11px;box-shadow:0 8px 22px rgba(0,0,0,.10);
}
.ewing-proof-dot{width:10px;height:10px;box-shadow:0 0 0 3px rgba(200,155,47,.07)}
.ewing-proof-dot::after{inset:3px}

/* Hero entrance choreography */
.ewing-hero .ewing-eyebrow{animation:ewingHeroEnter .72s cubic-bezier(.16,.8,.25,1) both .06s}
.ewing-hero h1{animation:ewingHeroEnter .92s cubic-bezier(.16,.8,.25,1) both .16s}
.ewing-hero-description{animation:ewingHeroEnter .78s cubic-bezier(.16,.8,.25,1) both .30s}
.ewing-hero-actions{animation:ewingHeroEnter .72s cubic-bezier(.16,.8,.25,1) both .42s}
.ewing-proof-row{animation:ewingHeroEnter .72s cubic-bezier(.16,.8,.25,1) both .54s}
@keyframes ewingHeroEnter{from{opacity:0;transform:translate3d(0,24px,0);filter:blur(5px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes ewingAccentGrow{from{opacity:0;transform:scaleY(0)}to{opacity:1;transform:scaleY(1)}}
@keyframes ewingLineDraw{from{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}
@keyframes ewingAuraFloat{from{opacity:.48;transform:translate3d(-1%,0,0) scale(1)}to{opacity:.78;transform:translate3d(1%,1%,0) scale(1.035)}}

/* Richer scroll reveals — still lightweight and Elementor-safe */
.ewing-reveal,.ewing-animate-item{transition-duration:.88s;transition-timing-function:cubic-bezier(.16,.8,.25,1)}
.ewing-reveal.ewing-from-left{transform:translate3d(-42px,12px,0)}
.ewing-reveal.ewing-from-right{transform:translate3d(42px,12px,0)}
.ewing-reveal.ewing-from-scale,.ewing-animate-item.ewing-from-scale{transform:translate3d(0,24px,0) scale(.965)}
.ewing-reveal.ewing-from-left.is-visible,.ewing-reveal.ewing-from-right.is-visible,.ewing-reveal.ewing-from-scale.is-visible,.ewing-animate-item.ewing-from-scale.is-visible{transform:none}
.ewing-business-card,.ewing-coverage-list article,.ewing-process-grid article,.ewing-carrier-tile,.ewing-testimonial-card{will-change:transform}
.ewing-business-grid,.ewing-coverage-list,.ewing-carrier-grid{border-radius:12px;overflow:hidden}

@media(max-width:1180px){
  .ewing-hero h1{font-size:60px}.ewing-hero-copy{max-width:71%;width:720px}.ewing-proof{font-size:10.5px}
}
@media(max-width:920px){
  .ewing-hero{min-height:740px}.ewing-hero h1{font-size:54px}.ewing-hero-copy{max-width:79%;width:690px}.ewing-hero-inner{padding-top:62px;padding-bottom:62px}
}
@media(max-width:767px){
  .ewing-hero{min-height:820px;align-items:center;padding:0;background:#061437}
  .ewing-hero-bg{inset:-2%;background-position:59% 42%;filter:saturate(1.04) contrast(1.04)}
  .ewing-hero-bg::before{background:radial-gradient(circle at 71% 22%,rgba(224,174,54,.16),transparent 29%),radial-gradient(circle at 50% 65%,rgba(34,65,139,.13),transparent 40%)}
  .ewing-hero::before{background:linear-gradient(180deg,rgba(4,15,45,.32) 0%,rgba(4,15,45,.48) 31%,rgba(4,15,45,.77) 58%,rgba(4,15,45,.96) 100%)!important}
  .ewing-hero::after{height:120px;background:linear-gradient(180deg,transparent,rgba(4,14,39,.34))}
  .ewing-hero-inner{display:flex;align-items:center;padding-top:52px;padding-bottom:72px}
  .ewing-hero-copy{
    width:100%;max-width:100%;padding:26px 21px 22px;
    background:linear-gradient(145deg,rgba(7,23,61,.80),rgba(5,18,54,.60));
    border:1px solid rgba(255,255,255,.14);border-radius:20px;
    box-shadow:0 28px 78px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.08);
    backdrop-filter:blur(12px) saturate(115%);-webkit-backdrop-filter:blur(12px) saturate(115%);
  }
  .ewing-hero-copy::before{left:21px;top:0;width:80px;height:3px;background:linear-gradient(90deg,var(--ewing-accent),rgba(200,155,47,0));box-shadow:0 0 24px rgba(200,155,47,.2)}
  .ewing-hero-copy::after{left:0;top:0;width:100%;height:100%;background:linear-gradient(130deg,rgba(255,255,255,.035),transparent 45%);filter:none;border-radius:inherit}
  .ewing-hero .ewing-eyebrow{font-size:9px;letter-spacing:.235em;margin-bottom:14px;gap:9px}
  .ewing-hero .ewing-eyebrow::after{width:34px}
  .ewing-hero h1{font-size:clamp(37px,10.8vw,46px);line-height:1.015;letter-spacing:-.04em;margin-bottom:18px;text-wrap:pretty}
  .ewing-hero-description{font-size:14px;line-height:1.62;margin-bottom:22px;color:#eef1f6}
  .ewing-hero-actions{grid-template-columns:1fr;gap:9px;margin-bottom:18px}
  .ewing-hero .ewing-btn{min-height:50px;border-radius:10px!important}
  .ewing-proof-row{display:grid;grid-template-columns:1fr;gap:7px}
  .ewing-proof{min-height:32px;width:100%;font-size:10.5px;padding:0 11px;background:rgba(4,15,45,.30)}
}
@media(max-width:420px){
  .ewing-hero{min-height:790px}
  .ewing-hero-inner{padding-top:38px;padding-bottom:66px}
  .ewing-hero-copy{padding:23px 17px 19px;border-radius:18px}
  .ewing-hero-copy::before{left:17px}
  .ewing-hero h1{font-size:clamp(34px,10.4vw,40px);line-height:1.02;margin-bottom:16px}
  .ewing-hero-description{font-size:13.5px;line-height:1.58;margin-bottom:20px}
  .ewing-hero .ewing-btn{min-height:48px;font-size:12px!important}
  .ewing-proof{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
  .ewing-hero .ewing-eyebrow,.ewing-hero h1,.ewing-hero-description,.ewing-hero-actions,.ewing-proof-row,.ewing-hero-copy::before,.ewing-hero .ewing-eyebrow::after,.ewing-hero-bg::before{animation:none!important;opacity:1!important;filter:none!important;transform:none!important}
}


/* =========================================================
   v1.1.0 — Client revision: compact flow, OK/TX, carriers, slider
   ========================================================= */
.elementor-widget-ewing-service-area>.elementor-widget-container{margin:0!important;padding:0!important}

/* Header is taller in v1.1.0; keep hero nearly full viewport below it */
.ewing-hero{min-height:calc(100svh - 134px)}
.ewing-hero h1{max-width:680px;font-size:72px}
.ewing-hero-copy{max-width:62%;width:720px}
.ewing-hero-description{max-width:610px}

/* Compact business list — names only as requested */
.ewing-businesses{padding:74px 0 68px}
.ewing-businesses-layout{display:grid;grid-template-columns:.92fr 1.28fr;gap:72px;align-items:center}
.ewing-businesses .ewing-section-head{margin:0}
.ewing-business-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ewing-business-list li{min-height:68px;display:flex;align-items:center;gap:14px;margin:0;padding:15px 18px;border:1px solid var(--ewing-line);border-radius:12px;background:#fff;box-shadow:0 10px 28px rgba(9,24,61,.035);transition:transform .32s cubic-bezier(.2,.7,.2,1),box-shadow .32s ease,border-color .32s ease}
.ewing-business-list li:hover{transform:translateY(-4px);border-color:rgba(200,155,47,.55);box-shadow:0 16px 34px rgba(9,24,61,.09)}
.ewing-business-list strong{font-family:var(--ewing-serif);font-size:18px;line-height:1.25;font-weight:600;color:var(--ewing-ink)}
.ewing-business-check{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 26px;border-radius:50%;background:rgba(200,155,47,.12);color:#9c7419;font-size:13px;font-weight:900}

/* Highly visible but compact service-area band */
.ewing-service-area{padding:0;background:var(--ewing-navy)!important;color:#fff;overflow:visible}
.ewing-service-area-shell{min-height:242px;display:grid;grid-template-columns:1.25fr auto auto;gap:42px;align-items:center;padding:42px 44px;border-radius:0;background:
 linear-gradient(120deg,rgba(255,255,255,.035),transparent 42%),
 radial-gradient(circle at 75% 15%,rgba(200,155,47,.14),transparent 30%)}
.ewing-service-area .ewing-eyebrow{margin-bottom:13px}
.ewing-service-area h2{color:#fff!important;font-size:38px;margin:0 0 13px;max-width:630px}
.ewing-service-area p{color:#cfd6e5!important;margin:0;max-width:670px;font-size:14px;line-height:1.65}
.ewing-state-pills{display:flex;gap:12px}
.ewing-state-pill{width:116px;height:116px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:16px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.065);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 18px 38px rgba(0,0,0,.12);backdrop-filter:blur(8px)}
.ewing-state-pill span{font:700 31px/1 var(--ewing-serif);color:var(--ewing-accent);letter-spacing:-.04em}
.ewing-state-pill strong{margin-top:9px;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.ewing-service-area .ewing-btn{white-space:nowrap}

/* Slightly reduced vertical rhythm to keep page shorter */
.ewing-coverage{padding:76px 0}
.ewing-why{padding:78px 0}
.ewing-carriers{padding:70px 0}
.ewing-testimonials{padding:66px 0}
.ewing-quote{padding:82px 0 88px}
.ewing-coverage-grid{gap:54px}
.ewing-media-card{height:390px;border-radius:14px}
.ewing-why-image{height:430px;border-radius:14px}
.ewing-why-image img{object-position:center 44%}

/* 16 compact carrier/company tiles */
.ewing-carrier-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));border:1px solid var(--ewing-line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 16px 42px rgba(9,24,61,.035)}
.ewing-carrier-tile{height:104px;padding:12px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;border-right:1px solid var(--ewing-line);border-bottom:1px solid var(--ewing-line);background:#fff;transition:transform .3s cubic-bezier(.2,.7,.2,1),background .3s ease,box-shadow .3s ease;position:relative}
.ewing-carrier-tile:nth-child(8n){border-right:0}.ewing-carrier-tile:nth-last-child(-n+8){border-bottom:0}
.ewing-carrier-tile:hover{z-index:2;transform:translateY(-4px);background:#fffdfa;box-shadow:0 15px 30px rgba(9,24,61,.10)}
.ewing-carrier-tile img{max-width:120px;max-height:48px;width:auto;height:auto;object-fit:contain;filter:saturate(.94);transition:filter .25s ease,transform .25s ease}
.ewing-carrier-tile:hover img{filter:saturate(1.08);transform:scale(1.025)}
.ewing-carrier-mark{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(200,155,47,.34);background:rgba(200,155,47,.10);color:#8d6816;font-size:10px;font-weight:900;letter-spacing:.02em}
.ewing-carrier-tile strong{font-size:11px;line-height:1.2;color:var(--ewing-ink);font-family:var(--ewing-sans);font-weight:800}

/* One-review-at-a-time testimonial carousel */
.ewing-testimonial-slider{position:relative;max-width:900px;margin:0 auto;padding:0 68px 34px}
.ewing-testimonial-viewport{overflow:hidden;border-radius:16px}
.ewing-testimonial-track{position:relative;min-height:250px}
.ewing-testimonial-card{position:absolute;inset:0;min-height:250px;display:flex;flex-direction:column;justify-content:center;padding:42px 52px;border:1px solid #dfe2e8;border-radius:16px;background:#fff;box-shadow:0 20px 48px rgba(9,24,61,.08);opacity:0;visibility:hidden;transform:translate3d(28px,0,0) scale(.985);transition:opacity .5s ease,transform .55s cubic-bezier(.16,.8,.25,1),visibility .5s ease}
.ewing-testimonial-card.is-active{position:relative;opacity:1;visibility:visible;transform:none}
.ewing-testimonial-card p{max-width:720px;margin:0 0 22px;font:400 20px/1.55 var(--ewing-serif);color:var(--ewing-ink)}
.ewing-testimonial-card strong{font-size:12px;text-transform:uppercase;letter-spacing:.10em;color:#667085}
.ewing-quote-mark{font:700 54px/1 var(--ewing-serif);color:var(--ewing-accent);height:34px;margin-bottom:12px}
.ewing-slider-arrow{position:absolute;top:50%;width:46px;height:46px;margin-top:-38px;border:1px solid #d9dde4!important;border-radius:50%!important;background:#fff!important;color:var(--ewing-navy)!important;font-size:18px;font-weight:700;cursor:pointer;box-shadow:0 10px 28px rgba(9,24,61,.08);transition:transform .25s ease,border-color .25s ease,background .25s ease;z-index:3}
.ewing-slider-arrow:hover,.ewing-slider-arrow:focus{transform:translateY(-2px);border-color:var(--ewing-accent)!important;background:#fffdfa!important;color:var(--ewing-navy)!important}.ewing-slider-prev{left:0}.ewing-slider-next{right:0}
.ewing-slider-dots{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:center;gap:8px}
.ewing-slider-dot{width:8px;height:8px;padding:0!important;border:0!important;border-radius:50%!important;background:#b8bfcc!important;cursor:pointer;transition:width .25s ease,background .25s ease;border-radius .25s ease}
.ewing-slider-dot.is-active{width:26px;border-radius:999px!important;background:var(--ewing-accent)!important}

/* Keep all visible images consistently premium */
.ewing-media-card,.ewing-why-image,.ewing-media-card img,.ewing-why-image img{border-radius:14px}

@media(max-width:1180px){
  .ewing-hero h1{font-size:62px}.ewing-hero-copy{max-width:68%}
  .ewing-businesses-layout{gap:48px}.ewing-service-area-shell{grid-template-columns:1fr auto;gap:30px}.ewing-service-area .ewing-btn{grid-column:1/-1;width:max-content}.ewing-carrier-grid{grid-template-columns:repeat(4,1fr)}.ewing-carrier-tile:nth-child(n){border-right:1px solid var(--ewing-line);border-bottom:1px solid var(--ewing-line)}.ewing-carrier-tile:nth-child(4n){border-right:0}.ewing-carrier-tile:nth-last-child(-n+4){border-bottom:0}
}
@media(max-width:920px){
  .ewing-hero{min-height:720px}.ewing-hero h1{font-size:54px}
  .ewing-businesses-layout{grid-template-columns:1fr;gap:28px}.ewing-businesses .ewing-section-head{max-width:650px}
  .ewing-service-area-shell{grid-template-columns:1fr;padding:40px 0;min-height:0}.ewing-service-area .ewing-btn{grid-column:auto}.ewing-state-pills{justify-content:flex-start}
}
@media(max-width:767px){
  .ewing-hero{min-height:710px}.ewing-hero-inner{padding-top:34px;padding-bottom:50px}.ewing-hero h1{font-size:clamp(38px,11vw,48px)}
  .ewing-businesses{padding:58px 0}.ewing-business-list{grid-template-columns:1fr}.ewing-business-list li{min-height:58px;padding:13px 15px}.ewing-business-list strong{font-size:17px}
  .ewing-service-area-shell{padding:34px 0;gap:24px}.ewing-service-area h2{font-size:32px}.ewing-state-pill{width:104px;height:104px}.ewing-state-pill span{font-size:28px}
  .ewing-coverage,.ewing-why{padding:64px 0}.ewing-carriers{padding:58px 0}.ewing-testimonials{padding:58px 0}.ewing-quote{padding:66px 0 76px}
  .ewing-carrier-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:12px;-webkit-overflow-scrolling:touch}.ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){flex:0 0 44%;height:98px;border-right:1px solid var(--ewing-line);border-bottom:0;scroll-snap-align:start}.ewing-carrier-tile:last-child{border-right:0}
  .ewing-testimonial-slider{padding:0 0 56px}.ewing-testimonial-track{min-height:280px}.ewing-testimonial-card{min-height:280px;padding:34px 28px}.ewing-testimonial-card p{font-size:18px}.ewing-slider-arrow{top:auto;bottom:0;margin:0;width:42px;height:42px}.ewing-slider-prev{left:calc(50% - 100px)}.ewing-slider-next{right:calc(50% - 100px)}.ewing-slider-dots{bottom:16px;pointer-events:none}.ewing-slider-dot{pointer-events:auto}
}
@media(max-width:420px){
  .ewing-hero{min-height:680px}.ewing-hero h1{font-size:38px}.ewing-hero-copy{padding:22px 16px 18px}
  .ewing-state-pills{display:grid;grid-template-columns:1fr 1fr}.ewing-state-pill{width:100%;height:96px}
  .ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){flex-basis:58%}
  .ewing-testimonial-card{padding:30px 22px}.ewing-testimonial-card p{font-size:17px}
}
@media(prefers-reduced-motion:reduce){
  .ewing-testimonial-card,.ewing-slider-arrow,.ewing-slider-dot,.ewing-business-list li,.ewing-carrier-tile,.ewing-state-pill{transition:none!important;animation:none!important}
}


/* ============================================================
   v1.1.1 — Carrier symbols, personal-lines indication, polish
   ============================================================ */
.ewing-businesses-layout{grid-template-columns:.9fr 1.1fr}
.ewing-personal-insurance{grid-column:1/-1;margin-top:8px;display:grid;grid-template-columns:1.35fr auto;gap:36px;align-items:center;padding:24px 28px;border:1px solid rgba(200,155,47,.35);border-radius:16px;background:linear-gradient(115deg,#0a1a41 0%,#10275d 62%,#0d224f 100%);box-shadow:0 18px 42px rgba(9,24,61,.12);position:relative;overflow:hidden}
.ewing-personal-insurance:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-160px;background:radial-gradient(circle,rgba(224,179,63,.24),rgba(224,179,63,0) 68%);pointer-events:none}
.ewing-personal-kicker{display:block;margin-bottom:6px;color:#e1b342;font-size:10px;letter-spacing:.18em;font-weight:900}
.ewing-personal-insurance h3{margin:0 0 5px!important;color:#fff!important;font:600 24px/1.18 var(--ewing-serif)}
.ewing-personal-insurance p{margin:0!important;color:#d8dfec!important;font-size:13px;line-height:1.55;max-width:690px}
.ewing-personal-products{display:flex;gap:10px;position:relative;z-index:1}
.ewing-personal-products>span{min-width:104px;height:68px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 15px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.075);backdrop-filter:blur(7px);color:#fff;transition:transform .3s ease,background .3s ease,border-color .3s ease}
.ewing-personal-products>span:hover{transform:translateY(-3px);background:rgba(255,255,255,.12);border-color:rgba(224,179,63,.5)}
.ewing-personal-products b{font-size:12px;letter-spacing:.02em}
.ewing-mini-icon{width:22px;height:22px;display:inline-block;position:relative;color:#e4b53d}
.ewing-icon-home:before{content:"⌂";position:absolute;inset:-4px 0 0;font-size:26px;line-height:22px;text-align:center;font-style:normal}
.ewing-icon-auto:before{content:"◆";position:absolute;inset:0;font-size:15px;line-height:22px;text-align:center;font-style:normal;border:1px solid currentColor;border-radius:6px}
.ewing-icon-life:before{content:"♥";position:absolute;inset:0;font-size:19px;line-height:22px;text-align:center;font-style:normal}

/* Carrier grid: real website symbols + names, no initials */
.ewing-carrier-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:0}
.ewing-carrier-tile{height:118px;gap:10px;padding:13px 8px}
.ewing-carrier-logo-shell{width:58px;height:58px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#fff;border:1px solid #e4e7ec;box-shadow:0 6px 16px rgba(9,24,61,.07);overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}
.ewing-carrier-logo-shell img{width:46px!important;height:46px!important;max-width:46px!important;max-height:46px!important;object-fit:contain!important;border-radius:8px!important;filter:none!important}
.ewing-carrier-tile:hover .ewing-carrier-logo-shell{transform:scale(1.05);box-shadow:0 10px 22px rgba(9,24,61,.11)}
.ewing-carrier-tile strong{font-size:10.5px;line-height:1.25;letter-spacing:.015em;text-transform:none;max-width:130px}
.ewing-carrier-note{margin:14px auto 0!important;text-align:center;color:#7c879b!important;font-size:10px!important;line-height:1.45!important}

@media(max-width:1180px){.ewing-personal-insurance{grid-template-columns:1fr}.ewing-personal-products{justify-content:flex-start}.ewing-carrier-grid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:767px){
 .ewing-personal-insurance{padding:24px 20px;gap:22px;border-radius:14px}.ewing-personal-insurance h3{font-size:22px}.ewing-personal-products{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.ewing-personal-products>span{min-width:0;height:62px;padding:0 8px;flex-direction:column;gap:2px}
 .ewing-carrier-grid{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible}.ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){height:108px;flex:none;border-right:1px solid var(--ewing-line);border-bottom:1px solid var(--ewing-line)}.ewing-carrier-tile:nth-child(2n){border-right:0}.ewing-carrier-tile:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:420px){.ewing-personal-products b{font-size:11px}.ewing-carrier-logo-shell{width:52px;height:52px}.ewing-carrier-logo-shell img{width:42px!important;height:42px!important}}

/* ============================================================
   v1.1.3 — Full mobile responsive pass
   ============================================================ */
@media(max-width:767px){
  html,body{overflow-x:hidden}
  .ewing-section{overflow:hidden}
  .ewing-container{width:min(calc(100% - 32px),100%);max-width:100%}
  .ewing-section h2{font-size:clamp(30px,8.2vw,38px);line-height:1.08;letter-spacing:-.032em;margin-bottom:18px;text-wrap:balance}
  .ewing-center-head{margin-bottom:30px}
  .ewing-center-head p{font-size:13.5px;line-height:1.62}
  .ewing-eyebrow{font-size:9px;line-height:1.35;letter-spacing:.20em;margin-bottom:10px}

  /* Mobile hero: no fixed CTA overlap, compact cinematic card, readable image crop. */
  .ewing-hero{min-height:auto!important;align-items:stretch!important;padding:0!important;background:#07163a}
  .ewing-hero-bg{inset:-1%!important;background-position:64% 38%!important;animation-duration:26s;transform-origin:center center}
  .ewing-hero::before{background:linear-gradient(180deg,rgba(4,14,41,.22) 0%,rgba(4,14,41,.40) 27%,rgba(4,14,41,.78) 56%,rgba(4,14,41,.96) 82%,#061437 100%)!important}
  .ewing-hero::after{height:72px!important;background:linear-gradient(180deg,transparent,rgba(4,14,39,.38))!important}
  .ewing-hero-inner{display:flex!important;align-items:flex-end!important;min-height:calc(100svh - 106px);padding-top:clamp(170px,43vh,330px)!important;padding-bottom:34px!important}
  .ewing-hero-copy{width:100%!important;max-width:100%!important;padding:22px 18px 19px!important;border-radius:18px!important;background:linear-gradient(145deg,rgba(7,23,61,.88),rgba(5,18,54,.72))!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 22px 60px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.07)!important;backdrop-filter:blur(10px) saturate(112%);-webkit-backdrop-filter:blur(10px) saturate(112%)}
  .ewing-hero-copy::before{left:18px!important;top:0!important;width:72px!important;height:3px!important}
  .ewing-hero-copy::after{left:0!important;top:0!important;width:100%!important;height:100%!important;border-radius:inherit!important;background:linear-gradient(130deg,rgba(255,255,255,.035),transparent 48%)!important;filter:none!important}
  .ewing-hero .ewing-eyebrow{font-size:8.5px!important;letter-spacing:.20em!important;margin-bottom:11px!important;gap:8px!important;white-space:normal}
  .ewing-hero .ewing-eyebrow::after{width:28px!important;flex:0 0 28px}
  .ewing-hero h1{font-size:clamp(35px,10.2vw,47px)!important;line-height:1.015!important;letter-spacing:-.043em!important;margin-bottom:15px!important;max-width:100%!important;text-wrap:balance}
  .ewing-hero-description{font-size:13.5px!important;line-height:1.58!important;margin-bottom:18px!important;max-width:100%!important;color:#eef1f6!important}
  .ewing-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-bottom:16px!important}
  .ewing-hero .ewing-btn{width:100%!important;min-height:48px!important;padding:0 18px!important;border-radius:9px!important;font-size:12px!important}
  .ewing-proof-row{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .ewing-proof{width:100%!important;min-height:30px!important;padding:5px 10px!important;font-size:10px!important;line-height:1.35!important;border-radius:10px!important}

  /* What we insure + personal lines */
  .ewing-businesses{padding:52px 0 48px!important}
  .ewing-businesses-layout{grid-template-columns:1fr!important;gap:24px!important}
  .ewing-businesses .ewing-section-head{margin:0!important}
  .ewing-business-list{grid-template-columns:1fr!important;gap:9px!important}
  .ewing-business-list li{min-height:54px!important;padding:12px 14px!important;gap:11px!important;border-radius:10px!important}
  .ewing-business-list strong{font-size:16px!important;line-height:1.25!important}
  .ewing-business-check{width:24px!important;height:24px!important;flex-basis:24px!important;font-size:12px!important}
  .ewing-personal-insurance{grid-template-columns:1fr!important;gap:18px!important;margin-top:0!important;padding:20px 17px!important;border-radius:14px!important}
  .ewing-personal-kicker{font-size:8.5px!important;letter-spacing:.16em!important}
  .ewing-personal-insurance h3{font-size:21px!important;line-height:1.16!important}
  .ewing-personal-insurance p{font-size:12.5px!important;line-height:1.55!important}
  .ewing-personal-products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;width:100%}
  .ewing-personal-products>span{min-width:0!important;height:58px!important;padding:5px!important;flex-direction:column!important;gap:1px!important;border-radius:10px!important}

  /* State coverage band */
  .ewing-service-area-shell{min-height:0!important;grid-template-columns:1fr!important;gap:20px!important;padding:30px 0!important}
  .ewing-service-area h2{font-size:clamp(29px,8vw,36px)!important;line-height:1.08!important;margin-bottom:11px!important}
  .ewing-service-area p{font-size:13px!important;line-height:1.58!important}
  .ewing-state-pills{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;width:100%}
  .ewing-state-pill{width:100%!important;height:88px!important;border-radius:13px!important}
  .ewing-state-pill span{font-size:27px!important}.ewing-state-pill strong{font-size:10px!important;margin-top:6px!important}
  .ewing-service-area .ewing-btn{width:100%!important;min-height:48px!important}

  /* Coverage */
  .ewing-coverage{padding:52px 0!important}
  .ewing-coverage-grid{grid-template-columns:1fr!important;gap:26px!important}
  .ewing-coverage-intro>p{font-size:13px!important;line-height:1.6!important;margin-bottom:22px!important}
  .ewing-media-card{height:clamp(220px,65vw,300px)!important;border-radius:12px!important}
  .ewing-coverage-list{grid-template-columns:1fr!important;border-radius:12px!important}
  .ewing-coverage-list article,.ewing-coverage-list article:nth-child(n){min-height:0!important;padding:18px 17px!important;border-right:0!important;border-bottom:1px solid var(--ewing-line)!important}
  .ewing-coverage-list article:last-child{border-bottom:0!important}
  .ewing-coverage-list h3{font-size:15.5px!important;margin-bottom:7px!important}.ewing-coverage-list p{font-size:12.5px!important;line-height:1.55!important}

  /* Why Ewing */
  .ewing-why{padding:52px 0!important}
  .ewing-why-grid{grid-template-columns:1fr!important;gap:28px!important}
  .ewing-why-image{height:clamp(260px,82vw,360px)!important;border-radius:12px!important}
  .ewing-why-image img{object-position:center 42%!important}
  .ewing-why-copy h2{margin-bottom:24px!important}
  .ewing-why-features{grid-template-columns:1fr!important;gap:18px!important}
  .ewing-why-features article{grid-template-columns:28px 1fr!important;gap:11px!important}
  .ewing-why-features h3{font-size:13.5px!important;margin-bottom:5px!important}.ewing-why-features p{font-size:12.5px!important;line-height:1.55!important}

  /* Carriers */
  .ewing-carriers{padding:50px 0!important}
  .ewing-carrier-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:hidden!important;border-radius:12px!important}
  .ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){height:106px!important;min-width:0!important;padding:10px 6px!important;border-right:1px solid var(--ewing-line)!important;border-bottom:1px solid var(--ewing-line)!important}
  .ewing-carrier-tile:nth-child(2n){border-right:0!important}.ewing-carrier-tile:nth-last-child(-n+2){border-bottom:0!important}
  .ewing-carrier-logo-shell{width:50px!important;height:50px!important;border-radius:11px!important}.ewing-carrier-logo-shell img{width:40px!important;height:40px!important;max-width:40px!important;max-height:40px!important}
  .ewing-carrier-tile strong{font-size:10px!important;line-height:1.2!important;max-width:100%!important;overflow-wrap:anywhere}
  .ewing-carrier-note{font-size:9.5px!important;line-height:1.45!important;margin-top:12px!important}

  /* Testimonials */
  .ewing-testimonials{padding:50px 0!important}
  .ewing-testimonial-slider{padding:0 0 52px!important;max-width:100%!important}
  .ewing-testimonial-track{min-height:0!important}
  .ewing-testimonial-card{min-height:250px!important;padding:28px 20px!important;border-radius:14px!important}
  .ewing-testimonial-card p{font-size:17px!important;line-height:1.48!important;margin-bottom:18px!important}
  .ewing-testimonial-card strong{font-size:10.5px!important;line-height:1.4!important}
  .ewing-quote-mark{font-size:46px!important;height:30px!important;margin-bottom:8px!important}
  .ewing-slider-arrow{top:auto!important;bottom:0!important;margin:0!important;width:40px!important;height:40px!important}
  .ewing-slider-prev{left:calc(50% - 92px)!important}.ewing-slider-next{right:calc(50% - 92px)!important}
  .ewing-slider-dots{bottom:15px!important}

  /* Quote form */
  .ewing-quote{padding:52px 0 58px!important}
  .ewing-quote-grid{grid-template-columns:1fr!important;gap:28px!important}
  .ewing-quote-copy p{font-size:13px!important;line-height:1.6!important;margin-bottom:20px!important}
  .ewing-quote-copy .ewing-btn{width:100%!important}
  .ewing-form-card{padding:20px 16px!important;border-radius:12px!important;box-shadow:0 16px 38px rgba(9,24,61,.08)!important}
  .ewing-quote-form{grid-template-columns:1fr!important;gap:14px!important}
  .ewing-field,.ewing-field-full{grid-column:auto!important;min-width:0}
  .ewing-field label{font-size:10.5px!important}
  .ewing-field input,.ewing-field select,.ewing-field textarea{font-size:16px!important;padding:11px 12px!important;border-radius:7px!important}
  .ewing-field input,.ewing-field select{height:48px!important}.ewing-field textarea{min-height:112px!important}
  .ewing-quote-form button.ewing-btn{width:100%!important;min-height:49px!important}
}

@media(max-width:420px){
  .ewing-container{width:min(calc(100% - 24px),100%)}
  .ewing-hero-inner{min-height:calc(100svh - 102px);padding-top:clamp(150px,40vh,280px)!important;padding-bottom:24px!important}
  .ewing-hero-copy{padding:20px 15px 17px!important;border-radius:16px!important}
  .ewing-hero-copy::before{left:15px!important}
  .ewing-hero h1{font-size:clamp(32px,9.8vw,39px)!important}
  .ewing-hero-description{font-size:13px!important}
  .ewing-personal-products b{font-size:10.5px!important}
  .ewing-state-pill{height:82px!important}
  .ewing-testimonial-card{padding:25px 17px!important}.ewing-testimonial-card p{font-size:16px!important}
  .ewing-form-card{padding:18px 13px!important}
}

@media(max-width:350px){
  .ewing-container{width:min(calc(100% - 20px),100%)}
  .ewing-hero h1{font-size:31px!important}
  .ewing-personal-products{grid-template-columns:1fr!important}
  .ewing-personal-products>span{height:46px!important;flex-direction:row!important;gap:7px!important}
  .ewing-carrier-grid{grid-template-columns:1fr!important}
  .ewing-carrier-tile,.ewing-carrier-tile:nth-child(n){border-right:0!important;border-bottom:1px solid var(--ewing-line)!important}
  .ewing-carrier-tile:last-child{border-bottom:0!important}
}

/* Tablet portrait safety pass: prevent two-column sections becoming cramped around 768–900px. */
@media(min-width:768px) and (max-width:900px){
  .ewing-container{width:min(calc(100% - 48px),100%)}
  .ewing-coverage-grid{grid-template-columns:1fr!important;gap:34px!important}
  .ewing-media-card{height:380px!important}
  .ewing-why-grid{grid-template-columns:1fr!important;gap:38px!important}
  .ewing-why-image{height:430px!important;max-width:680px}
  .ewing-quote-grid{grid-template-columns:1fr!important;gap:38px!important}
  .ewing-quote-copy{max-width:680px}
  .ewing-form-card{max-width:760px;width:100%}
}

/* ============================================================
   v1.1.4 — REAL DEVICE MOBILE FIX
   Root issue addressed in PHP: viewport meta is guaranteed.
   These rules intentionally use final high-specificity overrides so a
   phone cannot fall back to a compressed two-column desktop composition.
   ============================================================ */
@media (max-width: 767px) {
  html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    overflow-x: clip;
  }
  body {
    overflow-x: clip !important;
  }
  .ewing-section,
  .ewing-section *,
  .ewing-site-header,
  .ewing-site-footer,
  .ewing-global-header-shell,
  .ewing-global-footer-shell {
    box-sizing: border-box;
  }
  .ewing-container {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  /* Hero: one clean full-width mobile composition, not a squeezed desktop card. */
  .elementor-widget-ewing-hero,
  .elementor-widget-ewing-hero > .elementor-widget-container,
  .ewing-hero {
    width: 100% !important;
    max-width: none !important;
  }
  .ewing-hero {
    min-height: min(860px, calc(100svh - 100px)) !important;
    display: flex !important;
    align-items: flex-end !important;
    position: relative !important;
    isolation: isolate !important;
    overflow: hidden !important;
  }
  .ewing-hero-bg {
    inset: 0 !important;
    background-size: cover !important;
    background-position: 60% center !important;
    transform: scale(1.025);
    filter: saturate(1.04) contrast(1.04) brightness(.92) !important;
  }
  .ewing-hero::before {
    background:
      linear-gradient(180deg, rgba(4,13,38,.16) 0%, rgba(4,13,38,.22) 23%, rgba(4,13,38,.56) 48%, rgba(4,13,38,.91) 72%, #061437 100%) !important;
  }
  .ewing-hero-inner {
    width: 100% !important;
    min-height: min(860px, calc(100svh - 100px)) !important;
    display: flex !important;
    align-items: flex-end !important;
    padding-top: clamp(250px, 50svh, 390px) !important;
    padding-bottom: 24px !important;
  }
  .ewing-hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 22px 18px 18px !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, rgba(7,22,58,.91), rgba(5,17,49,.78)) !important;
    box-shadow: 0 22px 54px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08) !important;
    backdrop-filter: blur(12px) saturate(115%);
    -webkit-backdrop-filter: blur(12px) saturate(115%);
  }
  .ewing-hero-copy::before {
    left: 18px !important;
    top: 0 !important;
    width: 74px !important;
    height: 3px !important;
  }
  .ewing-hero-copy::after {
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    border-radius: inherit !important;
    background: linear-gradient(135deg, rgba(255,255,255,.04), transparent 45%) !important;
    filter: none !important;
  }
  .ewing-hero .ewing-eyebrow {
    font-size: 9px !important;
    line-height: 1.35 !important;
    letter-spacing: .19em !important;
    margin: 0 0 12px !important;
  }
  .ewing-hero h1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 14px !important;
    font-size: clamp(36px, 10.5vw, 46px) !important;
    line-height: 1.01 !important;
    letter-spacing: -.042em !important;
    text-wrap: balance !important;
  }
  .ewing-hero-description {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }
  .ewing-hero-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin: 0 0 14px !important;
  }
  .ewing-hero .ewing-btn {
    width: 100% !important;
    max-width: none !important;
    min-height: 50px !important;
    justify-content: center !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    border-radius: 10px !important;
  }
  .ewing-proof-row {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }
  .ewing-proof {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 32px !important;
    padding: 6px 10px !important;
    font-size: 10.5px !important;
    border-radius: 10px !important;
  }

  /* What We Insure: force a vertical mobile flow. */
  .elementor-widget-ewing-businesses,
  .elementor-widget-ewing-businesses > .elementor-widget-container,
  .ewing-businesses,
  .ewing-businesses .ewing-container,
  .ewing-businesses-layout {
    width: 100% !important;
    max-width: 100% !important;
  }
  .ewing-businesses {
    padding: 48px 0 44px !important;
  }
  .ewing-businesses-layout {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 20px !important;
  }
  .ewing-businesses .ewing-section-head {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  .ewing-businesses .ewing-section-head h2 {
    max-width: 330px !important;
    margin: 0 !important;
    font-size: clamp(31px, 9vw, 38px) !important;
    line-height: 1.04 !important;
  }
  .ewing-business-list {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
    margin: 2px 0 0 !important;
  }
  .ewing-business-list li {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 56px !important;
    padding: 13px 14px !important;
    gap: 12px !important;
    border-radius: 11px !important;
  }
  .ewing-business-list strong {
    min-width: 0 !important;
    font-size: 16.5px !important;
    line-height: 1.22 !important;
    overflow-wrap: anywhere;
  }
  .ewing-personal-insurance {
    order: 3 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 2px 0 0 !important;
  }

  /* Defensive one-column rules for every major section at phone width. */
  .ewing-coverage-grid,
  .ewing-why-grid,
  .ewing-quote-grid {
    grid-template-columns: 1fr !important;
  }
  .ewing-coverage-list,
  .ewing-why-features,
  .ewing-quote-form {
    min-width: 0 !important;
  }
  .ewing-media-card,
  .ewing-why-image,
  .ewing-form-card,
  .ewing-testimonial-slider,
  .ewing-carrier-grid {
    width: 100% !important;
    max-width: 100% !important;
  }
}

@media (max-width: 420px) {
  .ewing-container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .ewing-hero-inner {
    min-height: min(820px, calc(100svh - 96px)) !important;
    padding-top: clamp(220px, 46svh, 350px) !important;
    padding-bottom: 18px !important;
  }
  .ewing-hero-copy {
    padding: 20px 15px 16px !important;
    border-radius: 16px !important;
  }
  .ewing-hero-copy::before { left: 15px !important; }
  .ewing-hero h1 {
    font-size: clamp(33px, 10.2vw, 40px) !important;
  }
  .ewing-hero-description { font-size: 13px !important; }
  .ewing-businesses .ewing-section-head h2 {
    max-width: 310px !important;
    font-size: clamp(30px, 9.2vw, 35px) !important;
  }
}

@media (max-width: 350px) {
  .ewing-container {
    padding-left: 11px !important;
    padding-right: 11px !important;
  }
  .ewing-hero h1 { font-size: 31px !important; }
  .ewing-hero-copy { padding-left: 13px !important; padding-right: 13px !important; }
  .ewing-business-list strong { font-size: 15.5px !important; }
}

/* v1.1.4 refinement: keep the complete hero message inside a normal phone viewport
   while preserving enough truck photography above the content panel. */
@media (max-width: 767px) {
  .ewing-hero-inner {
    padding-top: clamp(170px, 24svh, 220px) !important;
  }
}

/* Tablet portrait: avoid the same compressed side-by-side business composition. */
@media (min-width: 768px) and (max-width: 900px) {
  .ewing-businesses-layout {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    gap: 26px !important;
  }
  .ewing-businesses .ewing-section-head {
    width: 100% !important;
    max-width: 650px !important;
    margin: 0 !important;
  }
  .ewing-business-list {
    width: 100% !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .ewing-personal-insurance {
    width: 100% !important;
    margin-top: 0 !important;
  }
}

/* ============================================================
   v1.1.5 — Personal-lines placement refinement
   The Home / Auto / Life indication is now its own editorial band instead
   of an icon-card block inside What We Insure. Text-first treatment avoids
   the generic "AI icon" look and keeps the commercial section focused.
   ============================================================ */
.elementor-widget-ewing-personal-lines>.elementor-widget-container{margin:0!important;padding:0!important}
.ewing-personal-lines{padding:0;background:#fbfaf7;border-top:1px solid rgba(11,24,56,.08);border-bottom:1px solid rgba(11,24,56,.08)}
.ewing-personal-lines-shell{min-height:236px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(480px,.95fr);gap:70px;align-items:center;padding:48px 0;position:relative}
.ewing-personal-lines-copy{max-width:680px}
.ewing-personal-lines .ewing-eyebrow{margin-bottom:10px}
.ewing-personal-lines h2{margin:0 0 12px!important;max-width:650px;font:600 38px/1.08 var(--ewing-serif);letter-spacing:-.025em;color:var(--ewing-ink)!important}
.ewing-personal-lines p{margin:0!important;max-width:660px;font-size:14px;line-height:1.7;color:#5a6475!important}
.ewing-personal-lines-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(11,24,56,.16);border-bottom:1px solid rgba(11,24,56,.16)}
.ewing-personal-lines-list li{min-width:0;min-height:112px;margin:0;padding:20px 22px;display:flex;flex-direction:column;justify-content:center;gap:15px;border-right:1px solid rgba(11,24,56,.14);position:relative;background:transparent;transition:background .3s ease,transform .3s ease}
.ewing-personal-lines-list li:last-child{border-right:0}
.ewing-personal-lines-list li:after{content:"";position:absolute;left:22px;bottom:-1px;width:0;height:2px;background:var(--ewing-accent);transition:width .35s cubic-bezier(.2,.7,.2,1)}
.ewing-personal-lines-list li:hover{background:rgba(255,255,255,.72)}
.ewing-personal-lines-list li:hover:after{width:calc(100% - 44px)}
.ewing-personal-lines-number{font:800 10px/1 var(--ewing-sans);letter-spacing:.16em;color:#b4851d}
.ewing-personal-lines-list strong{font:600 18px/1.22 var(--ewing-serif);color:var(--ewing-ink);letter-spacing:-.01em}

@media(max-width:1180px){
  .ewing-personal-lines-shell{grid-template-columns:1fr;gap:30px;padding:42px 0}
  .ewing-personal-lines-copy{max-width:760px}
  .ewing-personal-lines-list{max-width:780px;width:100%}
}
@media(max-width:767px){
  .ewing-personal-lines{padding:0!important}
  .ewing-personal-lines-shell{min-height:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:26px!important;padding:38px 0!important}
  .ewing-personal-lines-copy{width:100%!important;max-width:100%!important}
  .ewing-personal-lines h2{max-width:330px!important;font-size:clamp(30px,8.8vw,36px)!important;line-height:1.05!important;margin-bottom:11px!important}
  .ewing-personal-lines p{font-size:13px!important;line-height:1.62!important}
  .ewing-personal-lines-list{width:100%!important;max-width:100%!important;display:block!important;border-top:1px solid rgba(11,24,56,.16)!important;border-bottom:1px solid rgba(11,24,56,.16)!important}
  .ewing-personal-lines-list li{width:100%!important;min-height:64px!important;padding:14px 2px!important;display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;border-right:0!important;border-bottom:1px solid rgba(11,24,56,.12)!important}
  .ewing-personal-lines-list li:last-child{border-bottom:0!important}
  .ewing-personal-lines-list li:after{left:0!important;bottom:-1px!important}
  .ewing-personal-lines-list li:hover:after{width:100%!important}
  .ewing-personal-lines-number{font-size:9.5px!important}
  .ewing-personal-lines-list strong{font-size:17px!important;line-height:1.2!important}
}
