/* =====================================================================
   Help4Injured — site styles for Astra + Elementor + Contact Form 7
   Paste into: Appearance → Customize → Additional CSS
   Apply classes in Elementor: select a container/widget → Advanced → CSS Classes
   ===================================================================== */
:root{
  --h4i-navy:#0A2F66; --h4i-navy-900:#061D42; --h4i-navy-700:#123E80;
  --h4i-red:#D2152A; --h4i-red-600:#B30F22; --h4i-blue:#1F7FD4; --h4i-sky:#EAF3FD; --h4i-sky-2:#D6E8FB;
  --h4i-ink:#0F1E3A; --h4i-ink-soft:#2B3D5E; --h4i-muted:#5B6B85;
  --h4i-soft:#F5F8FC; --h4i-line:#E2E8F1; --h4i-line-2:#CFD9E7;
  --h4i-ok:#14804A; --h4i-ok-soft:#E5F5EC; --h4i-danger:#B3261E;
  --h4i-r-md:16px; --h4i-r-lg:24px; --h4i-r-xl:32px;
  --h4i-shadow-sm:0 1px 2px rgba(10,47,102,.06),0 2px 8px -2px rgba(10,47,102,.08);
  --h4i-shadow-md:0 2px 4px rgba(10,47,102,.04),0 16px 40px -16px rgba(10,47,102,.22);
  --h4i-shadow-lg:0 30px 70px -30px rgba(6,29,66,.45);
}
body{-webkit-font-smoothing:antialiased;color:var(--h4i-ink)}
:focus-visible{outline:3px solid var(--h4i-blue);outline-offset:3px}
@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
.h4i-hidden{display:none!important}

/* ---------- Typography helpers ---------- */
.h4i-kicker .elementor-heading-title{display:inline-flex;align-items:center;gap:.5rem;font-size:.9rem!important;font-weight:700!important;color:var(--h4i-blue)!important;letter-spacing:0!important}
.h4i-kicker .elementor-heading-title::before{content:"";width:22px;height:3px;border-radius:2px;background:var(--h4i-red)}
.h4i-h1 .elementor-heading-title{font-size:clamp(2.3rem,5vw,3.85rem);line-height:1.06;font-weight:800;letter-spacing:-.025em;color:var(--h4i-navy)}
.h4i-red-text{color:var(--h4i-red)}
.h4i-h2 .elementor-heading-title{font-size:clamp(1.8rem,3.4vw,2.6rem);line-height:1.12;font-weight:800;letter-spacing:-.025em}
.h4i-lede,.h4i-lede p{font-size:1.15rem;line-height:1.6;color:var(--h4i-muted)}
.h4i-on-dark .elementor-heading-title{color:#fff!important}
.h4i-on-dark.h4i-lede,.h4i-on-dark.h4i-lede p,.h4i-on-dark p{color:#D2DEF0}

/* ---------- Buttons (Button widget → CSS class) ---------- */
[class*="h4i-btn-"] .elementor-button{border-radius:999px!important;font-weight:700!important;padding:16px 26px!important;min-height:50px;transition:background .15s,transform .15s}
.h4i-btn-red .elementor-button{background:var(--h4i-red)!important;color:#fff!important;box-shadow:0 10px 24px -10px rgba(210,21,42,.6)}
.h4i-btn-red .elementor-button:hover{background:var(--h4i-red-600)!important}
.h4i-btn-navy .elementor-button{background:var(--h4i-navy)!important;color:#fff!important}
.h4i-btn-outline .elementor-button{background:transparent!important;color:var(--h4i-ink)!important;border:2px solid var(--h4i-line-2)!important}
.h4i-btn-outline-white .elementor-button{background:transparent!important;color:#fff!important;border:2px solid rgba(255,255,255,.45)!important}
.h4i-btn-white .elementor-button{background:#fff!important;color:var(--h4i-navy)!important}

/* ---------- Pill tag (Text Editor widget) ---------- */
.h4i-pill-tag p{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--h4i-line);box-shadow:var(--h4i-shadow-sm);border-radius:999px;padding:.4rem .9rem .4rem .45rem;font-size:.88rem;font-weight:600;color:var(--h4i-ink-soft);margin:0}
.h4i-pill-tag p strong{background:var(--h4i-red);color:#fff;border-radius:999px;padding:.15rem .6rem;font-size:.78rem}
.h4i-on-dark.h4i-pill-tag p{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.2);color:#E3ECF8;box-shadow:none}

/* ---------- Sections ---------- */
.h4i-hero{background:radial-gradient(900px 500px at 85% -10%,var(--h4i-sky-2),transparent 60%),radial-gradient(700px 400px at -10% 110%,var(--h4i-sky),transparent 60%),#fff}
.h4i-soft{background:var(--h4i-soft)}
.h4i-band{border-block:1px solid var(--h4i-line);background:#fff}

/* ---------- Hero media (HTML widget: hero-media.html) ---------- */
.h4i-hero-media{position:relative}
.h4i-hero-media .frame{border-radius:var(--h4i-r-xl);overflow:hidden;aspect-ratio:1/1;box-shadow:var(--h4i-shadow-lg);background:var(--h4i-sky)}
.h4i-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.h4i-float{position:absolute;background:#fff;border-radius:var(--h4i-r-md);box-shadow:var(--h4i-shadow-md);padding:.85rem 1rem;display:flex;gap:.75rem;align-items:center;font-size:.9rem;line-height:1.35;border:1px solid var(--h4i-line)}
.h4i-float b{display:block;font-size:.98rem;color:var(--h4i-ink)}
.h4i-float span{color:var(--h4i-muted)}
.h4i-float .badge{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;flex:none}
.h4i-float .badge.green{background:var(--h4i-ok-soft);color:var(--h4i-ok)}
.h4i-float .badge.red{background:#FDE8EA;color:var(--h4i-red)}
.h4i-float .badge svg{width:22px;height:22px}
.h4i-float.f1{left:-24px;top:9%}
.h4i-float.f2{right:-18px;bottom:9%}
@media (max-width:1100px){.h4i-float.f1{left:12px}.h4i-float.f2{right:12px}}
@media (max-width:560px){.h4i-float{font-size:.82rem;padding:.65rem .8rem}}

/* Hero picker (HTML widget: hero-picker.html) */
.h4i-picker{background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-md);padding:1rem 1.1rem;box-shadow:var(--h4i-shadow-sm);max-width:36rem}
.h4i-picker p{margin:0 0 .65rem;font-weight:700;font-size:.92rem;color:var(--h4i-muted)}
.h4i-picks{display:flex;gap:.5rem;flex-wrap:wrap}
.h4i-pick{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.95rem;padding:.6rem 1rem;border-radius:999px;border:1px solid var(--h4i-line-2);background:var(--h4i-soft);color:var(--h4i-ink)!important;text-decoration:none!important;min-height:44px}
.h4i-pick:hover{border-color:var(--h4i-blue);background:var(--h4i-sky)}
.h4i-pick svg{width:18px;height:18px;color:var(--h4i-blue)}

/* ---------- Chip row (Icon List widget, layout Inline) ---------- */
.h4i-chips .elementor-icon-list-items{gap:.6rem;flex-wrap:wrap}
.h4i-chips .elementor-icon-list-item{background:var(--h4i-soft);border:1px solid var(--h4i-line);border-radius:999px;padding:.45rem .9rem!important;margin:0!important;font-weight:600;font-size:.92rem}
.h4i-chips .elementor-icon-list-item::after{display:none!important}
.h4i-chips .elementor-icon-list-icon i,.h4i-chips .elementor-icon-list-icon svg{color:var(--h4i-blue);fill:var(--h4i-blue)}

/* ---------- Photo cards (Container with background image) ---------- */
.h4i-photo-card{position:relative;min-height:500px;border-radius:var(--h4i-r-lg);overflow:hidden;justify-content:flex-end!important;box-shadow:var(--h4i-shadow-md);isolation:isolate}
.h4i-photo-card::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(6,29,66,0) 42%,rgba(6,29,66,.5) 64%,rgba(6,29,66,.95) 100%);pointer-events:none}
.h4i-photo-card > *{position:relative;z-index:1}
.h4i-photo-card .elementor-heading-title{color:#fff!important}
.h4i-photo-card p{color:#D9E4F5}
.h4i-photo-tag p{display:inline-block;margin:0;background:rgba(255,255,255,.16);backdrop-filter:blur(6px);border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:.3rem .8rem;font-size:.82rem;font-weight:700;color:#fff}

/* ---------- Cards ---------- */
.h4i-card{background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg);transition:box-shadow .2s,border-color .2s}
.h4i-card:hover{box-shadow:var(--h4i-shadow-md);border-color:transparent}
.h4i-wide-card{background:linear-gradient(120deg,var(--h4i-sky),#fff);border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg)}

/* Icon Box widget → class h4i-iconbox (icon position Top, alignment Left) */
.h4i-iconbox .elementor-icon-box-wrapper{text-align:left!important}
.h4i-iconbox .elementor-icon-box-icon{margin-bottom:1rem!important}
.h4i-iconbox .elementor-icon{width:52px;height:52px;border-radius:14px;background:var(--h4i-sky);color:var(--h4i-blue)!important;fill:var(--h4i-blue)!important;font-size:24px!important;display:grid!important;place-items:center;padding:0!important}
.h4i-iconbox .elementor-icon svg{width:24px;height:24px}
.h4i-iconbox .elementor-icon-box-title{font-size:1.15rem!important;font-weight:800!important;margin:0 0 .4rem!important;color:var(--h4i-ink)}
.h4i-iconbox .elementor-icon-box-description{color:var(--h4i-muted);font-size:.97rem;line-height:1.55}

/* Check list (Icon List widget, icon: check) */
.h4i-checks .elementor-icon-list-item{align-items:flex-start!important;padding-bottom:.85rem!important}
.h4i-checks .elementor-icon-list-icon{width:26px!important;height:26px;border-radius:50%;background:var(--h4i-ok-soft);display:grid!important;place-items:center;flex:none;margin-right:.6rem}
.h4i-checks .elementor-icon-list-icon i,.h4i-checks .elementor-icon-list-icon svg{color:var(--h4i-ok)!important;fill:var(--h4i-ok)!important;font-size:12px!important;width:12px!important}
.h4i-checks .elementor-icon-list-text{color:var(--h4i-ink)}
.h4i-on-dark.h4i-checks .elementor-icon-list-text{color:#fff;font-weight:600}
.h4i-on-dark.h4i-checks .elementor-icon-list-icon{background:rgba(61,220,132,.18)}
.h4i-on-dark.h4i-checks .elementor-icon-list-icon i,.h4i-on-dark.h4i-checks .elementor-icon-list-icon svg{color:#5BE39A!important;fill:#5BE39A!important}

/* Media image (Image widget) */
.h4i-media img{border-radius:var(--h4i-r-xl);box-shadow:var(--h4i-shadow-lg);aspect-ratio:4/3;object-fit:cover;width:100%}

/* ---------- Steps (HTML widget: steps.html) ---------- */
.h4i-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem;position:relative;list-style:none;margin:0;padding:0;counter-reset:st}
.h4i-steps::before{content:"";position:absolute;top:27px;left:12%;right:12%;border-top:2px dashed var(--h4i-line-2)}
.h4i-steps li{position:relative;text-align:center;padding:0 .5rem;counter-increment:st}
.h4i-steps li::before{content:counter(st);display:grid;place-items:center;width:56px;height:56px;margin:0 auto 1.1rem;border-radius:50%;background:var(--h4i-navy);color:#fff;font-weight:800;font-size:1.2rem;box-shadow:0 0 0 8px #fff;position:relative}
.h4i-steps li:last-child::before{background:var(--h4i-red)}
.h4i-steps b{display:block;font-size:1.06rem;margin-bottom:.35rem}
.h4i-steps span{display:block;color:var(--h4i-muted);font-size:.95rem;line-height:1.5}
@media (max-width:820px){.h4i-steps{grid-template-columns:1fr 1fr;row-gap:2rem}.h4i-steps::before{display:none}}
@media (max-width:480px){.h4i-steps{grid-template-columns:1fr}}

/* Numbered to-do list (HTML widget: todo-list.html) */
.h4i-todo{list-style:none;padding:0;margin:0;display:grid;gap:1rem;counter-reset:td}
.h4i-todo li{display:flex;gap:1rem;align-items:flex-start;counter-increment:td;background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-md);padding:1rem 1.2rem}
.h4i-todo li::before{content:counter(td);flex:none;width:34px;height:34px;border-radius:50%;background:var(--h4i-navy);color:#fff;font-weight:800;display:grid;place-items:center}
.h4i-todo b{display:block}
.h4i-todo span{color:var(--h4i-muted);font-size:.95rem}

/* Stats (HTML widget: stats.html) */
.h4i-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.h4i-stat{background:var(--h4i-soft);border:1px solid var(--h4i-line);border-radius:var(--h4i-r-md);padding:1rem 1.1rem}
.h4i-stat b{display:block;font-size:1.75rem;font-weight:800;color:var(--h4i-navy);letter-spacing:-.02em;line-height:1.1}
.h4i-stat span{font-size:.88rem;color:var(--h4i-muted);line-height:1.4;display:block}
@media (max-width:520px){.h4i-stats{grid-template-columns:1fr 1fr}.h4i-stat:last-child{grid-column:1/-1}}

/* ---------- Dark bands: alert + CTA (Containers) ---------- */
.h4i-alert,.h4i-cta{background:linear-gradient(120deg,var(--h4i-navy-900),var(--h4i-navy) 60%,var(--h4i-navy-700))!important;border-radius:var(--h4i-r-xl);position:relative;overflow:hidden;color:#fff}
.h4i-alert::after,.h4i-cta::after{content:"";position:absolute;width:640px;height:640px;right:-180px;top:-330px;border-radius:50%;border:60px solid rgba(91,168,238,.14);pointer-events:none}
.h4i-cta::before{content:"";position:absolute;width:420px;height:420px;left:-140px;bottom:-260px;border-radius:50%;background:radial-gradient(circle,rgba(210,21,42,.28),transparent 65%);pointer-events:none}
.h4i-alert > *,.h4i-cta > *{position:relative;z-index:1}
.h4i-alert .elementor-heading-title,.h4i-cta .elementor-heading-title{color:#fff!important}
.h4i-alert p,.h4i-cta p{color:#D9E4F5}
.h4i-big .elementor-heading-title{font-size:clamp(2.6rem,6vw,4rem)!important;font-weight:800!important;line-height:1!important;letter-spacing:-.03em}

/* ---------- Reviews + team ---------- */
.h4i-review .elementor-star-rating{color:#F5A524}
.h4i-flag p{display:inline-block;font-size:.8rem;font-weight:700;background:#FFF4D6;color:#7A5300;border-radius:999px;padding:.25rem .75rem;margin:0}
.h4i-doc{overflow:hidden}
.h4i-doc .elementor-widget-image img{aspect-ratio:4/3;object-fit:cover;width:100%;border-radius:0}

/* ---------- FAQ (Accordion widget, either version) ---------- */
.h4i-faq .elementor-accordion-item,.h4i-faq .e-n-accordion-item{background:#fff;border:1px solid var(--h4i-line)!important;border-radius:var(--h4i-r-md);margin-bottom:.75rem;overflow:hidden}
.h4i-faq .elementor-tab-title,.h4i-faq .e-n-accordion-item-title{padding:1.15rem 1.35rem!important;font-weight:700!important;font-size:1.03rem;border:0!important}
.h4i-faq .elementor-tab-content,.h4i-faq .e-n-accordion-item > [role="region"]{padding:0 1.35rem 1.25rem!important;border:0!important;color:var(--h4i-ink-soft)}
.h4i-faq .elementor-accordion-icon,.h4i-faq .e-n-accordion-item-title-icon{color:var(--h4i-blue)}

/* ---------- Map + info ---------- */
.h4i-map iframe{border-radius:var(--h4i-r-lg);border:1px solid var(--h4i-line)!important;min-height:320px}
.h4i-info .elementor-icon-list-icon{width:42px!important;height:42px;border-radius:12px;background:var(--h4i-sky);display:grid!important;place-items:center;flex:none;margin-right:.8rem}
.h4i-info .elementor-icon-list-icon i,.h4i-info .elementor-icon-list-icon svg{color:var(--h4i-blue)!important;fill:var(--h4i-blue)!important;font-size:18px!important;width:18px!important}
.h4i-info .elementor-icon-list-item{padding-bottom:1rem!important;align-items:center}

/* ---------- Landing pages ---------- */
.h4i-mini-header{border-bottom:1px solid var(--h4i-line);background:rgba(255,255,255,.95)}
.h4i-mini-header .elementor-widget-image img{max-height:52px;width:auto}
.h4i-lp-hero{position:relative;color:#fff}
.h4i-lp-hero .elementor-heading-title{color:#fff}
.h4i-form-card{background:#fff;border-radius:var(--h4i-r-lg);box-shadow:var(--h4i-shadow-lg);color:var(--h4i-ink)}
.h4i-form-card .elementor-heading-title{color:var(--h4i-ink)!important}
.h4i-form-card p{color:var(--h4i-muted)}
.h4i-symptoms{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.65rem}
.h4i-sym{display:flex;gap:.7rem;align-items:center;background:#fff;border:1px solid var(--h4i-line-2);border-radius:var(--h4i-r-md);padding:.85rem 1rem;cursor:pointer;font-weight:600;margin:0}
.h4i-sym:has(input:checked){border-color:var(--h4i-blue);background:var(--h4i-sky)}
.h4i-sym input{width:20px;height:20px;accent-color:var(--h4i-blue);margin:0}
.h4i-sym-result{margin-top:1.25rem;padding:1.1rem 1.25rem;border-radius:var(--h4i-r-md);background:var(--h4i-sky);border:1px solid var(--h4i-sky-2)}
.h4i-sym-result a{color:var(--h4i-blue);font-weight:700}

/* Pricing */
.h4i-price{background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg);position:relative}
.h4i-price-featured{border:2px solid var(--h4i-blue)!important;box-shadow:var(--h4i-shadow-md)}
.h4i-badge-top p{display:inline-block;margin:0;background:var(--h4i-blue);color:#fff;font-size:.78rem;font-weight:700;border-radius:999px;padding:.25rem .75rem}

/* Offer card */
.h4i-offer-card{background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-xl);overflow:hidden;box-shadow:var(--h4i-shadow-lg)}
.h4i-offer-top{background:linear-gradient(120deg,var(--h4i-red-600),var(--h4i-red))!important;color:#fff}
.h4i-offer-top .elementor-heading-title{color:#fff!important}
.h4i-offer-top p{color:#FFE1E4}

/* ---------- Funnel pages ---------- */
.h4i-funnel{background:linear-gradient(180deg,var(--h4i-sky) 0,var(--h4i-soft) 320px)}
.h4i-panel{background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg);box-shadow:var(--h4i-shadow-md)}
.h4i-ty dl{display:grid;grid-template-columns:max-content 1fr;gap:.5rem 1.25rem;margin:1rem 0 0}
.h4i-ty dt{color:var(--h4i-muted)}
.h4i-ty dd{margin:0;font-weight:600}

/* =====================================================================
   CONTACT FORM 7
   ===================================================================== */
.wpcf7 form{margin:0}
.wpcf7 *,.wpcf7 *::before,.wpcf7 *::after,.h4i-modal *,.h4i-consent *{box-sizing:border-box}
.wpcf7 .h4i-field{margin:0 0 1.1rem}
.wpcf7 label,.wpcf7 .h4i-legend{display:block;font-weight:600;font-size:.93rem;color:var(--h4i-ink)}
.wpcf7 .h4i-hint{font-weight:400;color:var(--h4i-muted);font-size:.84rem}
.wpcf7 .wpcf7-form-control-wrap{display:block;margin-top:.4rem}
.wpcf7 input[type=text],.wpcf7 input[type=tel],.wpcf7 input[type=email],.wpcf7 input[type=date],.wpcf7 input[type=number],.wpcf7 select,.wpcf7 textarea{
  width:100%;font:inherit;font-weight:500;font-size:1rem;color:var(--h4i-ink);background:#fff;border:1.5px solid var(--h4i-line-2);border-radius:12px;padding:.75rem .95rem;min-height:50px;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.wpcf7 textarea{min-height:100px;resize:vertical}
.wpcf7 input:focus,.wpcf7 select:focus,.wpcf7 textarea:focus{border-color:var(--h4i-blue);outline:none;box-shadow:0 0 0 4px rgba(31,127,212,.18)}
.wpcf7 .h4i-row2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
.wpcf7 .h4i-row3{display:grid;grid-template-columns:repeat(3,1fr);gap:0 1rem}
@media (max-width:600px){.wpcf7 .h4i-row2,.wpcf7 .h4i-row3{grid-template-columns:1fr}}

/* Radios + checkboxes as pill buttons */
.wpcf7 .wpcf7-radio,.wpcf7 .wpcf7-checkbox{display:flex;flex-wrap:wrap;gap:.5rem}
.wpcf7 .wpcf7-radio .wpcf7-list-item,.wpcf7 .wpcf7-checkbox .wpcf7-list-item{margin:0}
.wpcf7 .wpcf7-radio .wpcf7-list-item label,.wpcf7 .wpcf7-checkbox .wpcf7-list-item label{display:flex;align-items:center;gap:.5rem;border:1.5px solid var(--h4i-line-2);border-radius:12px;padding:.6rem 1rem;cursor:pointer;background:#fff;font-weight:600;min-height:46px;margin:0}
.wpcf7 .wpcf7-radio label:has(input:checked),.wpcf7 .wpcf7-checkbox label:has(input:checked){border-color:var(--h4i-blue);background:var(--h4i-sky)}
.wpcf7 input[type=radio],.wpcf7 input[type=checkbox]{accent-color:var(--h4i-blue);width:18px;height:18px;margin:0}
.wpcf7 .h4i-chipset .wpcf7-list-item label{border-radius:999px}
/* Big choice cards (booking step 1) */
.wpcf7 .h4i-choices .wpcf7-radio{display:grid;gap:.7rem}
.wpcf7 .h4i-choices .wpcf7-list-item label{min-height:68px;padding:1rem 1.15rem;border-radius:var(--h4i-r-md);font-size:1.05rem}
/* Acceptance */
.wpcf7 .wpcf7-acceptance .wpcf7-list-item{margin:0}
.wpcf7 .wpcf7-acceptance label{display:flex;gap:.65rem;align-items:flex-start;font-weight:400;font-size:.9rem;color:var(--h4i-ink-soft)}
.wpcf7 .wpcf7-acceptance input{margin-top:.15rem;flex:none}
/* Range */
.wpcf7 input[type=range]{width:100%;accent-color:var(--h4i-red)}
.wpcf7 .h4i-range-out{font-weight:800;font-size:1.3rem}
.wpcf7 .h4i-scale{display:flex;justify-content:space-between;font-size:.82rem;color:var(--h4i-muted)}

/* Submit + nav buttons */
.wpcf7 .wpcf7-submit,.h4i-next,.h4i-back{font:inherit;font-weight:700;font-size:1rem;border-radius:999px;padding:.85rem 1.6rem;min-height:50px;cursor:pointer;border:2px solid transparent;transition:background .15s}
.wpcf7 .wpcf7-submit,.h4i-next{background:var(--h4i-red)!important;color:#fff!important;box-shadow:0 10px 24px -10px rgba(210,21,42,.6)}
.wpcf7 .wpcf7-submit:hover,.h4i-next:hover{background:var(--h4i-red-600)!important}
.h4i-back{background:transparent;border-color:var(--h4i-line-2);color:var(--h4i-ink)}
.h4i-quick .wpcf7-submit{width:100%}
.wpcf7 .wpcf7-spinner{margin:0 0 0 .75rem}

/* Validation + responses */
.wpcf7 .wpcf7-not-valid,.wpcf7 [aria-invalid="true"]{border-color:var(--h4i-danger)!important}
.wpcf7-not-valid-tip,.h4i-err{color:var(--h4i-danger);font-size:.86rem;font-weight:600;margin-top:.35rem;display:block}
.wpcf7 form .wpcf7-response-output{border-radius:12px;margin:1rem 0 0;padding:.85rem 1rem;font-size:.93rem}
.wpcf7 form.sent .wpcf7-response-output{border-color:var(--h4i-ok);background:var(--h4i-ok-soft);color:#0F5132}
.h4i-secure{display:flex;align-items:center;justify-content:center;gap:.45rem;margin:1rem 0 0;font-size:.88rem;color:var(--h4i-muted)}

/* Multi-step engine */
.h4i-progress{margin:0 0 1.75rem}
.h4i-progress-label{display:flex;justify-content:space-between;font-size:.9rem;color:var(--h4i-muted);margin-bottom:.6rem;font-weight:600}
.h4i-track{height:8px;border-radius:999px;background:var(--h4i-line);overflow:hidden}
.h4i-fill{height:100%;width:0;border-radius:999px;background:linear-gradient(90deg,var(--h4i-blue),var(--h4i-navy));transition:width .35s ease}
.h4i-step{border:0;padding:0;margin:0;min-width:0}
.h4i-step-title{font-size:clamp(1.5rem,3vw,2rem);font-weight:800;letter-spacing:-.02em;margin:0 0 .35rem;color:var(--h4i-ink)}
.h4i-step-intro{color:var(--h4i-muted);margin:0 0 1.5rem}
.h4i-steps-js .h4i-step:not(.is-active){display:none}
.h4i-step-nav{display:flex;justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;flex-wrap:wrap}
.h4i-step-nav .h4i-back{margin-right:auto}
.h4i-steps-js .h4i-step-nav .wpcf7-submit{display:none}
.h4i-steps-js.is-last .h4i-step-nav .wpcf7-submit{display:inline-flex}
.h4i-steps-js.is-last .h4i-next{display:none}
.h4i-steps-js.is-first .h4i-back{visibility:hidden}
.h4i-summary,.h4i-review{background:var(--h4i-soft);border:1px solid var(--h4i-line);border-left:4px solid var(--h4i-blue);border-radius:var(--h4i-r-md);padding:1rem 1.25rem;margin-top:1rem}
.h4i-summary dl,.h4i-review dl{display:grid;grid-template-columns:max-content 1fr;gap:.45rem 1.25rem;margin:.5rem 0 0;font-size:.95rem}
.h4i-summary dt,.h4i-review dt{color:var(--h4i-muted)}
.h4i-summary dd,.h4i-review dd{margin:0;font-weight:600}
.h4i-review-block{border-top:1px solid var(--h4i-line);padding:1rem 0}
.h4i-review-block:first-child{border-top:0;padding-top:0}
.h4i-review-block h4{display:flex;justify-content:space-between;margin:0;font-size:1rem}
.h4i-review-block h4 button{background:none;border:0;color:var(--h4i-blue);font-weight:600;cursor:pointer;padding:0}
.h4i-done .mark{width:68px;height:68px;border-radius:50%;background:var(--h4i-ok);display:grid;place-items:center;margin-bottom:1.25rem;box-shadow:0 0 0 10px var(--h4i-ok-soft)}

/* =====================================================================
   SITE-WIDE ELEMENTS (printed by the PHP snippet)
   ===================================================================== */
.h4i-mobile-bar{position:fixed;left:0;right:0;bottom:0;z-index:9990;display:none;gap:.5rem;padding:.65rem .75rem calc(.65rem + env(safe-area-inset-bottom,0px));background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid var(--h4i-line)}
.h4i-mobile-bar a{flex:1;display:flex;align-items:center;justify-content:center;gap:.4rem;min-height:50px;border-radius:999px;font-weight:700;text-decoration:none!important}
.h4i-mobile-bar .call{border:2px solid var(--h4i-line-2);color:var(--h4i-ink)!important}
.h4i-mobile-bar .book{background:var(--h4i-red);color:#fff!important}
@media (max-width:760px){.h4i-mobile-bar{display:flex}body{padding-bottom:76px}}
body.h4i-infunnel .h4i-mobile-bar{display:none!important}
body.h4i-infunnel{padding-bottom:0}
.h4i-resume{position:sticky;top:0;z-index:9980;background:var(--h4i-navy);color:#fff;font-weight:600;font-size:.95rem}
.h4i-resume .in{max-width:1200px;margin:0 auto;padding:.7rem 1.25rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}
.h4i-resume a{background:var(--h4i-red);color:#fff!important;border-radius:999px;padding:.5rem 1.1rem;text-decoration:none!important}
.h4i-resume button{background:none;border:0;color:#fff;text-decoration:underline;cursor:pointer;margin-left:.75rem;font:inherit}
.h4i-consent{position:fixed;left:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:9995;max-width:420px;background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg);padding:1.25rem 1.35rem;box-shadow:var(--h4i-shadow-lg);font-size:.92rem;color:var(--h4i-ink)}
.h4i-consent .btns{display:flex;gap:.5rem;margin-top:.9rem;flex-wrap:wrap}
.h4i-consent button{font:inherit;font-weight:700;border-radius:999px;padding:.55rem 1.1rem;min-height:42px;cursor:pointer;border:2px solid var(--h4i-line-2);background:#fff;color:var(--h4i-ink)}
.h4i-consent button.yes{background:var(--h4i-navy);border-color:var(--h4i-navy);color:#fff}
@media (max-width:760px){.h4i-consent{left:.75rem;right:.75rem;bottom:calc(84px + env(safe-area-inset-bottom,0px));max-width:none}}
.h4i-modal{position:fixed;inset:0;z-index:9999;background:rgba(6,29,66,.55);backdrop-filter:blur(4px);display:grid;place-items:center;padding:1rem}
.h4i-modal .box{background:#fff;border-radius:var(--h4i-r-lg);max-width:460px;width:100%;padding:2rem;position:relative;box-shadow:var(--h4i-shadow-lg);max-height:90vh;overflow:auto}
.h4i-modal .x{position:absolute;right:.75rem;top:.6rem;background:none;border:0;font-size:1.6rem;cursor:pointer;color:var(--h4i-muted);width:44px;height:44px}
.h4i-modal h2{font-size:1.5rem;margin:0 0 .5rem}
.h4i-modal p.lead{color:var(--h4i-muted);margin:0 0 1rem}

/* Keep AI Engine's chat button above the mobile Call/Book bar on phones */
@media (max-width:760px){
  .mwai-chatbot-container .mwai-trigger,.mwai-open-button,.mwai-trigger{bottom:90px!important}
}

/* =====================================================================
   IMPORTED-TEMPLATE HELPERS
   Photos load from /wp-content/uploads/h4i/ (upload the "h4i" folder there).
   ===================================================================== */
.h4i-bg-truck{background:#0A2F66 url(/wp-content/uploads/h4i/truck.jpg) center 30%/cover no-repeat!important}
.h4i-bg-slip{background:#0A2F66 url(/wp-content/uploads/h4i/slip.jpg) center/cover no-repeat!important}
.h4i-bg-crash{background:#061D42 url(/wp-content/uploads/h4i/crash.jpg) center 40%/cover no-repeat!important}
.h4i-bg-braces{background:#061D42 url(/wp-content/uploads/h4i/braces.jpg) center/cover no-repeat!important}
.h4i-bg-crash,.h4i-bg-braces{position:relative;isolation:isolate}
.h4i-bg-crash::before,.h4i-bg-braces::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(100deg,rgba(6,29,66,.97) 0%,rgba(6,29,66,.88) 45%,rgba(6,29,66,.6) 100%);pointer-events:none}
.h4i-bg-crash > *,.h4i-bg-braces > *{position:relative;z-index:1}
.h4i-bg-wellness{background:linear-gradient(120deg,#0E4C96,#1F7FD4)!important}
.h4i-doc-ph{aspect-ratio:4/3;background:linear-gradient(135deg,var(--h4i-sky),var(--h4i-sky-2));display:grid;place-items:center;color:var(--h4i-navy);font-weight:800;font-size:2.4rem;text-align:center;line-height:1.1}
.h4i-doc-ph small{display:block;font-size:.8rem;font-weight:600;color:var(--h4i-muted)}
.h4i-logo img{max-height:52px;width:auto;display:block}
.h4i-media-html img{display:block}
.h4i-center,.h4i-center .elementor-heading-title{text-align:center}
.h4i-center.h4i-kicker .elementor-heading-title{justify-content:center}
.h4i-iconbox-side .elementor-icon-box-icon{margin-bottom:0!important}
.h4i-iconbox-side .elementor-icon-box-wrapper{display:flex;align-items:center;gap:1rem}
@media (max-width:600px){
  .h4i-mini-header .h4i-btn-outline{display:none!important}
  .h4i-mini-header .h4i-btn-red .elementor-button{padding:12px 18px!important;min-height:44px}
  .h4i-logo img{max-height:42px}
}

/* ===== Top bar, footer and header menu buttons (Help4Injured Setup page) ===== */
.h4i-topbar{background:#061D42;color:#C9D7EE;font-size:.86rem}
.h4i-topbar .in{max-width:1200px;margin:0 auto;padding:.5rem 20px;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.h4i-topbar b{color:#fff}.h4i-topbar a{color:#fff;font-weight:700;text-decoration:none}
.h4i-topbar .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3DDC84;margin-right:.45rem;box-shadow:0 0 0 3px rgba(61,220,132,.2)}
@media (max-width:760px){.h4i-topbar .hide-sm{display:none}}
.main-header-menu .h4i-menu-cta > .menu-link,.ast-header-break-point .h4i-menu-cta > .menu-link{background:var(--h4i-red);color:#fff!important;border-radius:999px;padding:.65rem 1.3rem!important;line-height:1.1;margin-left:.4rem;font-weight:700}
.main-header-menu .h4i-menu-cta > .menu-link:hover{background:var(--h4i-red-600)}
.main-header-menu .h4i-menu-phone > .menu-link{font-weight:800;color:var(--h4i-ink)!important}
.h4i-footer{background:var(--h4i-soft);border-top:1px solid var(--h4i-line);color:var(--h4i-muted);font-size:.95rem}
.h4i-footer .in{max-width:1200px;margin:0 auto;padding:3.5rem 20px 2rem}
.h4i-footer .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem}
.h4i-footer h4{color:var(--h4i-ink);font-size:1rem;margin:0 0 .9rem}
.h4i-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.h4i-footer a{color:inherit;text-decoration:none}.h4i-footer a:hover{color:var(--h4i-blue)}
.h4i-footer .tel{font-weight:700;color:var(--h4i-ink)}
.h4i-footer .brand img:first-child{height:46px;width:auto}
.h4i-footer .seal{width:72px;height:72px;margin-top:.5rem}
.h4i-footer .legal{margin:2.5rem 0 0;padding-top:1.5rem;border-top:1px solid var(--h4i-line);font-size:.85rem}
@media (max-width:820px){.h4i-footer .cols{grid-template-columns:1fr 1fr}}

/* Icon sizes (Elementor 4 draws icons as inline SVG) */
.h4i-chips .elementor-icon-list-items,.h4i-checks .elementor-icon-list-items,.h4i-info .elementor-icon-list-items{list-style:none;margin:0;padding:0}
.h4i-chips .elementor-icon-list-items{display:flex;flex-wrap:wrap}
.h4i-chips .elementor-icon-list-item{display:inline-flex;align-items:center;gap:.4rem}
.h4i-chips .elementor-icon-list-icon svg{width:16px!important;height:16px!important;fill:var(--h4i-blue)}
.h4i-checks .elementor-icon-list-icon svg{width:12px!important;height:12px!important;fill:var(--h4i-ok)}
.h4i-on-dark.h4i-checks .elementor-icon-list-icon svg{fill:#5BE39A}
.h4i-info .elementor-icon-list-icon svg{width:18px!important;height:18px!important;fill:var(--h4i-blue)}
.h4i-iconbox .elementor-icon svg{width:24px!important;height:24px!important;fill:var(--h4i-blue)}

/* Elementor sets overflow on every container; keep decorative shapes clipped */
.h4i-alert,.h4i-cta,.h4i-photo-card,.h4i-offer-card,.h4i-doc,.h4i-lp-hero,.h4i-hero{overflow:hidden!important}
.elementor-element.e-con.h4i-alert,.elementor-element.e-con.h4i-cta{--overflow:hidden}

/* Elementor containers set their own radius/height variables; these win */
.h4i-card,.h4i-wide-card,.h4i-photo-card,.h4i-price,.h4i-panel,.h4i-form-card{border-radius:var(--h4i-r-lg)!important}
.h4i-alert,.h4i-cta,.h4i-offer-card{border-radius:var(--h4i-r-xl)!important}
.e-con.h4i-photo-card{min-height:500px!important;--min-height:500px;justify-content:flex-end!important;--justify-content:flex-end}
.h4i-photo-card .elementor-heading-title{text-shadow:0 1px 12px rgba(6,29,66,.5)}
.h4i-photo-card p{text-shadow:0 1px 10px rgba(6,29,66,.6)}
.h4i-kicker .elementor-heading-title{text-transform:none!important}
.h4i-chips .elementor-icon-list-text{font-size:.92rem;font-weight:600}
@media (max-width:767px){.e-con.h4i-photo-card{min-height:440px!important;--min-height:440px}}

/* Photo backgrounds with built-in shading (Elementor uses ::before for its own overlays) */
.h4i-bg-truck{--h4i-bg:url(/wp-content/uploads/h4i/truck.jpg);--h4i-pos:center 30%}
.h4i-bg-slip{--h4i-bg:url(/wp-content/uploads/h4i/slip.jpg);--h4i-pos:center}
.h4i-bg-crash{--h4i-bg:url(/wp-content/uploads/h4i/crash.jpg);--h4i-pos:center 40%}
.h4i-bg-braces{--h4i-bg:url(/wp-content/uploads/h4i/braces.jpg);--h4i-pos:center}
.h4i-photo-card[class*="h4i-bg-"]{background:linear-gradient(180deg,rgba(6,29,66,0) 28%,rgba(6,29,66,.55) 56%,rgba(6,29,66,.95) 100%),var(--h4i-bg) var(--h4i-pos)/cover no-repeat #0A2F66!important}
.h4i-lp-hero.h4i-bg-crash,.h4i-lp-hero.h4i-bg-braces{background:linear-gradient(100deg,rgba(6,29,66,.97) 0%,rgba(6,29,66,.88) 45%,rgba(6,29,66,.6) 100%),var(--h4i-bg) var(--h4i-pos)/cover no-repeat #061D42!important}
.h4i-photo-card::before,.h4i-bg-crash::before,.h4i-bg-braces::before{display:none!important}

/* Typography (font file is loaded by the setup plugin / child theme) */
body,button,input,select,textarea{font-family:"Plus Jakarta Sans","Segoe UI",system-ui,-apple-system,Roboto,Arial,sans-serif}
body{font-size:17px;line-height:1.65}
.e-con .elementor-heading-title{font-family:inherit;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.e-con h3.elementor-heading-title{font-size:1.2rem}
.e-con.h4i-photo-card h3.elementor-heading-title{font-size:1.6rem}
.h4i-form-card .elementor-heading-title,.h4i-offer-top .elementor-heading-title{font-size:1.5rem!important}
.h4i-form-card p{font-size:.95rem}
.e-con .elementor-widget-text-editor{font-size:inherit}
/* Elementor resets image corners/shadows */
.h4i-media img{border-radius:var(--h4i-r-xl)!important;box-shadow:var(--h4i-shadow-lg)!important}
.h4i-logo img,.h4i-hero-media img{box-shadow:none!important}
.h4i-stars{color:#F5A524;font-size:1.15rem;letter-spacing:2px;margin:0!important;line-height:1}
.h4i-testimonial p{color:var(--h4i-ink-soft)}
.h4i-big .elementor-heading-title{white-space:normal}
@media (min-width:1025px){.h4i-big .elementor-heading-title{font-size:clamp(2.4rem,4vw,3.6rem)!important}}
.h4i-testimonial p.h4i-stars,.h4i-stars{color:#F5A524!important}

/* ===== Homepage header (Elementor Canvas) ===== */
.e-con.h4i-site-header{position:sticky;top:0;z-index:900;background:rgba(255,255,255,.96)!important;backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--h4i-line);overflow:visible!important}
.h4i-site-header .h4i-topbar{margin:0}
.elementor-widget-html:has(.h4i-topbar){width:auto!important;margin:0 calc(50% - 50vw)!important;max-width:none!important}
.h4i-nav{display:flex;gap:.25rem;align-items:center}
.h4i-nav a{text-decoration:none;font-weight:600;font-size:.97rem;padding:.55rem .8rem;border-radius:999px;color:var(--h4i-ink-soft);white-space:nowrap}
.h4i-nav a:hover{background:var(--h4i-sky);color:var(--h4i-ink)}
.h4i-nav-mobile{display:none;position:relative}
.h4i-nav-mobile summary{list-style:none;cursor:pointer;font-weight:700;border:1px solid var(--h4i-line-2);border-radius:999px;padding:.55rem 1rem;background:#fff}
.h4i-nav-mobile summary::-webkit-details-marker{display:none}
.h4i-nav-mobile nav{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--h4i-line);border-radius:16px;box-shadow:var(--h4i-shadow-md);padding:.5rem;display:grid;min-width:220px;z-index:950}
.h4i-nav-mobile nav a{padding:.75rem 1rem;border-radius:10px;text-decoration:none;font-weight:600;color:var(--h4i-ink)}
.h4i-nav-mobile nav a:hover{background:var(--h4i-sky)}
@media (max-width:1180px){.h4i-nav{display:none}.h4i-nav-mobile{display:block}.h4i-hide-tablet{display:none!important}}
@media (max-width:560px){.h4i-site-header .h4i-btn-red .elementor-button{padding:12px 16px!important;min-height:44px}}
.h4i-footer-el{max-width:1200px;margin:0 auto}
.h4i-footer-el .cols{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:2.5rem}
@media (max-width:820px){.h4i-footer-el .cols{grid-template-columns:1fr 1fr}}

/* ===== Built-in AI chat (Help4Injured Setup → Chat) ===== */
.h4i-chat-fab{position:fixed;right:1.1rem;bottom:calc(1.1rem + env(safe-area-inset-bottom,0px));z-index:9970;display:flex;align-items:center;gap:.6rem;background:var(--h4i-navy);color:#fff;border:0;border-radius:999px;padding:.85rem 1.25rem;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 14px 30px -10px rgba(6,29,66,.6)}
.h4i-chat-fab .dot{width:10px;height:10px;border-radius:50%;background:#3DDC84;box-shadow:0 0 0 3px rgba(61,220,132,.25)}
.h4i-chat{position:fixed;right:1.1rem;bottom:calc(1.1rem + env(safe-area-inset-bottom,0px));z-index:9975;width:min(390px,calc(100% - 1.5rem));height:min(620px,calc(100% - 7rem));background:#fff;border:1px solid var(--h4i-line);border-radius:var(--h4i-r-lg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--h4i-shadow-lg);font-size:15px;color:var(--h4i-ink)}
.h4i-chat-head{background:linear-gradient(120deg,var(--h4i-navy-900),var(--h4i-navy));color:#fff;padding:1rem;display:flex;align-items:center;gap:.75rem}
.h4i-chat-head b{display:block}.h4i-chat-head span{font-size:.82rem;color:#BCD0EC}
.h4i-chat-head button{margin-left:auto;background:rgba(255,255,255,.12);border:0;color:#fff;font-size:1.4rem;cursor:pointer;width:38px;height:38px;border-radius:50%;line-height:1}
.h4i-chat-log{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.65rem;background:var(--h4i-soft)}
.h4i-msg{max-width:86%;padding:.7rem .95rem;border-radius:16px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}
.h4i-msg.bot{background:#fff;border:1px solid var(--h4i-line);align-self:flex-start;border-bottom-left-radius:4px}
.h4i-msg.me{background:var(--h4i-navy);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.h4i-msg.alert{background:#FDECEA;color:#7A1A14;border:1px solid #F3B8B2;align-self:stretch;max-width:none}
.h4i-msg .acts{display:flex;gap:.4rem;flex-wrap:wrap;margin-top:.6rem}
.h4i-msg .acts a{display:inline-flex;align-items:center;min-height:40px;padding:.5rem .95rem;border-radius:999px;font-weight:700;text-decoration:none;font-size:.9rem}
.h4i-msg .acts a.book{background:var(--h4i-red);color:#fff}
.h4i-msg .acts a.call{border:2px solid var(--h4i-line-2);color:var(--h4i-ink)}
.h4i-chat-quick{display:flex;gap:.4rem;flex-wrap:wrap;padding:.6rem 1rem 0;background:var(--h4i-soft)}
.h4i-chat-quick button{font:inherit;font-size:.84rem;font-weight:600;padding:.4rem .8rem;border-radius:999px;border:1.5px solid var(--h4i-line-2);background:#fff;color:var(--h4i-ink);cursor:pointer}
.h4i-chat-form{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid var(--h4i-line);background:#fff;margin:0}
.h4i-chat-form input{flex:1;min-height:46px;border-radius:999px;border:1.5px solid var(--h4i-line-2);padding:0 1rem;font:inherit}
.h4i-chat-form button{min-height:46px;padding:.5rem 1.1rem;border-radius:999px;border:0;background:var(--h4i-red);color:#fff;font:inherit;font-weight:700;cursor:pointer}
.h4i-chat-note{font-size:.75rem;color:var(--h4i-muted);padding:0 1rem .65rem;background:#fff;margin:0}
@media (max-width:760px){
  .h4i-chat-fab{bottom:calc(84px + env(safe-area-inset-bottom,0px));padding:.65rem 1rem;right:.75rem}
  .h4i-chat-fab .long{display:none}
  .h4i-chat{right:.5rem;left:.5rem;width:auto;bottom:calc(78px + env(safe-area-inset-bottom,0px));height:calc(100% - 140px)}
  body.h4i-infunnel .h4i-chat-fab{bottom:calc(1rem + env(safe-area-inset-bottom,0px))}
}
.h4i-site-header .elementor-button{white-space:nowrap}
@media (max-width:1399px){.h4i-site-header .h4i-btn-outline{display:none!important}}
