*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#162a2a;background:#fff;line-height:1.55}a{color:inherit;text-decoration:none}.container{width:min(1160px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid #e5eded}.nav{min-height:76px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;margin-right:auto}.brand-mark{width:42px;height:42px;border-radius:12px;background:#062424;color:#fff;display:grid;place-items:center;font-weight:900;font-size:13px;letter-spacing:.04em}.brand strong{display:block;font-size:15px;line-height:1.1}.brand span{display:block;color:#718080;font-size:11px;margin-top:3px}.nav nav{display:flex;gap:22px;font-size:14px;color:#405656}.nav nav a:hover,.lang:hover{color:#0b7776}.nav-actions{display:flex;align-items:center;gap:15px}.lang{font-size:14px;font-weight:700}.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:12px;padding:12px 18px;font-weight:800;cursor:pointer;transition:.2s transform,.2s box-shadow}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(6,36,36,.12)}.btn-primary{background:#062424;color:#fff}.btn-light{background:#fff;color:#062424}.btn-outline-light{border:1px solid rgba(255,255,255,.55);color:#fff;background:transparent}.btn-lg{padding:15px 22px}.btn-block{width:100%}.hero{position:relative;overflow:hidden;background:#eef6f5}.hero-bg{position:absolute;inset:0;background:radial-gradient(circle at 85% 20%,rgba(29,154,152,.2),transparent 32%),linear-gradient(120deg,#eef7f6,#f7fbfb 55%,#dceeed)}.hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .72fr;gap:70px;align-items:center;padding:72px 0 76px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.18em;color:#167b79;margin-bottom:12px}.hero h1{font-size:clamp(42px,6vw,72px);line-height:1.02;letter-spacing:-.045em;margin:0 0 22px;color:#062424}.hero h1 em{font-style:normal;color:#187e7c}.lead{font-size:19px;color:#536565;max-width:680px}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.trust-row{display:flex;flex-wrap:wrap;gap:14px;color:#536565;font-size:13px}.quote-card{background:#fff;border-radius:22px;padding:28px;box-shadow:0 20px 55px rgba(6,36,36,.14);border:1px solid #e2ebea}.quote-card h2{margin:0;font-size:28px}.quote-card p{color:#657575;margin-top:7px}.card-kicker{font-size:10px;letter-spacing:.18em;font-weight:900;color:#167b79}label{display:block;font-size:12px;font-weight:800;color:#365050;margin:12px 0}input,select{width:100%;padding:12px 13px;border:1px solid #d5e1e0;border-radius:10px;margin-top:6px;font:inherit;background:#fff;color:#1c3030}input:focus,select:focus{outline:2px solid rgba(22,123,121,.18);border-color:#167b79}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quote-card small{display:block;color:#879393;font-size:10px;line-height:1.4;margin-top:10px}.form-result{margin-top:12px;font-weight:800;font-size:13px}.service-strip{background:#062424;color:#fff}.service-strip-inner{display:flex;justify-content:space-between;gap:15px;overflow:auto;padding:16px 0;font-size:12px;font-weight:800;white-space:nowrap}.section{padding:92px 0}.section.alt{background:#f3f8f7}.section-heading{max-width:760px;margin-bottom:42px}.section-heading.centered{margin-left:auto;margin-right:auto;text-align:center}.section-heading h2,.split h2,.state-section h2,.cta-section h2{font-size:clamp(34px,4.4vw,54px);line-height:1.08;letter-spacing:-.035em;margin:0 0 14px;color:#062424}.section-heading p{color:#637373;font-size:17px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.insurance-card{border:1px solid #dfe9e8;border-radius:18px;padding:24px;background:#fff;transition:.2s}.insurance-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px rgba(6,36,36,.08)}.icon{font-size:30px;margin-bottom:16px}.insurance-card h3{margin:0 0 8px}.insurance-card p{color:#6a7979;font-size:14px;min-height:68px}.insurance-card a{font-size:13px;font-weight:900;color:#147a78}.split{display:grid;grid-template-columns:1fr .75fr;gap:75px;align-items:center}.check-list{display:grid;gap:15px;margin-top:28px}.check-list>div{display:flex;gap:15px;align-items:flex-start}.check-list b{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#dceeed;color:#0c7775;font-size:11px}.check-list span{font-size:14px;color:#647474}.check-list strong{color:#173232}.family-panel{min-height:430px;border-radius:28px;padding:42px;background:linear-gradient(145deg,#062424,#0c5251);color:#fff;display:flex;flex-direction:column;justify-content:end;box-shadow:0 25px 60px rgba(6,36,36,.18)}.family-panel .panel-badge{align-self:flex-start;margin-bottom:auto;border:1px solid rgba(255,255,255,.2);padding:12px;border-radius:14px;font-weight:900}.family-panel h3{font-size:34px;line-height:1.1;margin:0 0 10px}.family-panel p{color:#c4d8d7}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.steps>div{border-top:2px solid #dbe8e7;padding-top:18px}.steps span{font-weight:900;color:#147a78}.steps h3{font-size:18px;margin:14px 0 5px}.steps p{font-size:14px;color:#6b7a7a}.state-section{padding:80px 0;background:#eaf4f3}.state-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.state-grid a{background:#fff;border-radius:18px;padding:25px;border:1px solid #dce8e7;display:flex;justify-content:space-between;align-items:end;gap:10px}.state-grid strong{font-size:22px}.state-grid span{font-size:11px;color:#6d7d7d;text-align:right}.legal-note{font-size:11px;color:#718181;max-width:850px}.faq-section details{border-bottom:1px solid #dbe5e4;padding:20px 0}.faq-section summary{font-weight:900;cursor:pointer}.faq-section details p{color:#687878;max-width:800px}.narrow{max-width:880px}.cta-section{padding:70px 0;background:#062424;color:#fff}.cta-section h2{color:#fff}.cta-section p{color:#b8cfce}.cta-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}footer{background:#041919;color:#b6c8c7;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:45px}.footer-brand strong{color:#fff}.footer-grid h4{color:#fff;margin-top:0}.footer-grid a{display:block;font-size:13px;margin:9px 0}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:18px;display:flex;justify-content:space-between;gap:15px;font-size:11px}@media(max-width:900px){.nav nav{display:none}.hero-grid,.split{grid-template-columns:1fr;gap:40px}.cards{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.state-grid{grid-template-columns:1fr}.cta-grid{display:block}.cta-buttons{justify-content:flex-start;margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.nav{min-height:68px}.nav-actions .btn{display:none}.hero-grid{padding:45px 0}.hero h1{font-size:43px}.section{padding:65px 0}.cards{grid-template-columns:1fr}.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:8px}.form-two{grid-template-columns:1fr}}

/* Display the supplied logo artwork without its generous outer margins. */
.logo-window{display:block;position:relative;overflow:hidden;width:210px;aspect-ratio:3 / 1;background:#fff;flex-shrink:0;border-radius:6px}
.logo-window img{position:absolute;width:150%;max-width:none;height:auto;left:-23%;top:-184%}
.panel-logo{align-self:flex-start;margin-bottom:auto;padding-bottom:24px}
.panel-logo .logo-window{width:240px;max-width:100%}
.license-details{display:flex;flex-wrap:wrap;gap:10px 24px;padding-top:28px;font-size:12px;color:#d8e7e6}
.license-details span{white-space:nowrap}
@media(max-width:600px){.logo-window{width:180px}.nav{gap:16px}.panel-logo .logo-window{width:210px}.license-details{flex-direction:column;gap:8px}}
/* Deployment review fixes: keyboard access, narrow layouts and honest quote handoff. */
[hidden]{display:none!important}section[id],#quote{scroll-margin-top:110px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #239c91;outline-offset:4px}.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:#fff;padding:12px 18px}.skip-link:focus{top:12px}.hero-copy,.quote-card,.split>div{min-width:0}.quote-card small{color:#526868;font-size:12px;line-height:1.55}.quote-card .btn-block{margin-top:20px}.legal-note{color:#536767;font-size:12px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.state-grid a{flex-direction:column;align-items:flex-start}.state-grid span{text-align:left;color:#536767}.logo-window{width:220px;aspect-ratio:2.85 / 1}.logo-window img{width:150%;left:-23%;top:-174%}.nav .brand{flex-shrink:0}.panel-logo{max-width:100%}.panel-logo .logo-window{width:240px}.footer-brand{width:fit-content}.cta-section .eyebrow{color:#88d6cd}#messagePreview{font-weight:400;background:#f1f7f6;border-radius:10px;padding:14px;font-size:14px;overflow-wrap:anywhere}.message-call{display:block;margin-top:12px;text-decoration:underline}.footer-grid a{width:fit-content}.nav nav{gap:16px}.nav{gap:20px}.btn{text-align:center}.family-panel{gap:12px}.family-panel h3{overflow-wrap:break-word}@media(max-width:1100px){.nav nav{display:none}}@media(max-width:900px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.cards{grid-template-columns:1fr}.logo-window{width:180px}.hero h1{font-size:clamp(34px,10vw,43px)}.quote-card{padding:22px}.family-panel{padding:26px}.family-panel h3{font-size:29px}.panel-logo .logo-window{width:210px}.state-grid strong{font-size:21px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Owner-approved brand: Fredoka, white background, deep teal typography and accents. */
:root{--brand:#042626;--page:#ffffff;--line:rgba(4,38,38,.17)}
body,input,select,button{font-family:'Fredoka',ui-sans-serif,system-ui,sans-serif}
body{background:var(--page);color:var(--brand);font-weight:400}
.site-header,.hero,.section.alt,.state-section,.cta-section,footer,.family-panel,.quote-card,.insurance-card,.state-grid a{background:var(--page);color:var(--brand)}
.hero-bg{display:none}
.hero h1,.hero h1 em,.section-heading h2,.split h2,.state-section h2,.cta-section h2,.lead,.section-heading p,.insurance-card p,.insurance-card a,.check-list span,.check-list strong,.family-panel p,.steps p,.steps span,.state-grid span,.legal-note,.faq-section details p,.cta-section p,.footer-brand strong,.footer-grid h4,.brand span,.nav nav,.eyebrow,.cta-section .eyebrow,.card-kicker,.quote-card p,.quote-card small,.trust-row,label,input,select,.license-details{color:var(--brand)}
.hero h1{font-weight:600;letter-spacing:-.035em}.hero h1 em{font-weight:400}.section-heading h2,.split h2,.state-section h2,.cta-section h2{font-weight:600}.btn,.lang,summary,.check-list strong,h3,h4{font-weight:600}.eyebrow,.card-kicker{font-weight:600;letter-spacing:.12em}
.btn-primary{background:var(--brand);color:#fff}.btn-light,.btn-outline-light{background:#fff;color:var(--brand);border:1px solid var(--brand)}.btn:hover{box-shadow:0 5px 16px rgba(4,38,38,.14)}
.site-header,.quote-card,.insurance-card,.state-grid a,.faq-section details,.steps>div,.footer-bottom{border-color:var(--line)}.quote-card{box-shadow:0 16px 48px rgba(4,38,38,.09)}
.family-panel{border:1px solid var(--line);box-shadow:0 16px 48px rgba(4,38,38,.07)}.check-list b{background:var(--brand);color:#fff}.section.alt,.state-section,.cta-section,footer{border-top:1px solid var(--line)}
footer,.footer-grid a:hover,.nav nav a:hover,.lang:hover{color:var(--brand)}.footer-bottom{border-top:1px solid var(--line)}#messagePreview{background:#fff;border:1px solid var(--line)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus,select:focus{outline-color:var(--brand)}

/* Prominent Spanish service and office contact. */
.spanish-banner{background:#042626;color:#fff}.spanish-banner-inner{display:flex;align-items:center;justify-content:center;gap:12px 28px;padding:12px 0;flex-wrap:wrap}.spanish-banner strong{font-size:18px;font-weight:600;letter-spacing:.06em}.spanish-banner a{color:#fff;font-size:15px}.spanish-banner a:hover{text-decoration:underline}.spanish-page-link{text-decoration:underline;text-underline-offset:3px}.spanish-banner a:focus-visible{outline-color:#fff}.office-contact{font-size:15px}section[id],#quote{scroll-margin-top:155px}@media(max-width:600px){.spanish-banner-inner{gap:4px;padding:10px 0;flex-direction:column;text-align:center}.spanish-banner strong{font-size:17px}.spanish-banner a{font-size:14px}section[id],#quote{scroll-margin-top:190px}}

/* Spanish banner palette requested by owner. */
.spanish-banner{background:#ffffff;color:#042626;border-top:1px solid rgba(4,38,38,.17);border-bottom:1px solid rgba(4,38,38,.17)}.spanish-banner a{color:#042626}.spanish-banner a:focus-visible{outline-color:#042626}

/* Founders and purpose, in the approved white/deep-teal palette. */
.story-section{background:#fff;color:#042626;border-top:1px solid rgba(4,38,38,.17)}.story-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:start}.story-heading h2{font-size:clamp(30px,3.6vw,46px);line-height:1.15;letter-spacing:-.025em;font-weight:600;margin:0 0 26px}.story-heading h2 span{display:block;font-weight:400;margin-top:10px}.story-dates{display:flex;flex-direction:column;gap:8px;font-size:14px}.story-copy p{font-size:18px;line-height:1.8;margin:0 0 24px}.story-copy strong{font-weight:600}.story-closing{border-left:3px solid #042626;padding-left:22px;font-weight:500}.nav nav{gap:13px;font-size:13px}@media(max-width:900px){.story-layout{grid-template-columns:1fr;gap:28px}}@media(max-width:600px){.story-copy p{font-size:17px}.story-closing{padding-left:16px}}

.official-contacts{flex-direction:column;align-items:stretch}.official-contacts a,.footer-grid a{overflow-wrap:anywhere}.official-contacts .btn{white-space:normal;font-size:16px}

/* Compact bilingual contact popup. */
.chat-widget{position:fixed;right:20px;bottom:20px;z-index:80;color:#042626;max-width:calc(100vw - 32px)}.chat-toggle{display:block;margin-left:auto;border:1px solid #042626;border-radius:999px;padding:14px 22px;background:#042626;color:#fff;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 6px 22px rgba(4,38,38,.18)}.chat-panel{position:relative;width:340px;max-width:100%;max-height:calc(100dvh - 110px);overflow:auto;background:#fff;border:1px solid rgba(4,38,38,.25);border-radius:18px;padding:26px;margin-bottom:12px;box-shadow:0 12px 36px rgba(4,38,38,.18)}.chat-panel h2{font-size:24px;line-height:1.2;margin:0 28px 14px 0}.chat-panel p{font-size:16px;line-height:1.5}.chat-panel small{display:block;margin-top:14px;font-size:12px;line-height:1.5}.chat-phone{font-weight:500}.chat-close{position:absolute;top:10px;right:10px;width:36px;height:36px;border:0;background:#fff;color:#042626;font-size:28px;cursor:pointer;border-radius:50%}.chat-toggle:focus-visible,.chat-close:focus-visible{outline:3px solid #042626;outline-offset:4px}body{padding-bottom:88px}@media(max-width:600px){.chat-widget{right:16px;bottom:16px}.chat-panel{width:320px;padding:22px}}

.quote-contact{border:0;padding:0;margin:22px 0 0;min-width:0}.quote-contact legend{font-size:18px;font-weight:500}.quote-card .required-note{font-size:12px;margin:4px 0 12px}.quote-contact .form-two>div{min-width:0}.quote-contact input{margin-top:0}#messagePreview{white-space:pre-wrap}

button:disabled{opacity:.65;cursor:not-allowed}

/* New wide logo (Oct 2026): show the whole image, no cropping */
.logo-window{aspect-ratio:auto!important;overflow:visible!important;background:transparent!important;border-radius:0!important}
.logo-window img{position:static!important;display:block;width:100%!important;max-width:100%!important;height:auto!important;left:auto!important;top:auto!important}
.site-header .logo-window{width:190px!important}
@media(max-width:600px){.site-header .logo-window{width:150px!important}}
.panel-logo .logo-window{width:280px!important;max-width:100%}
.footer-brand .logo-window{width:220px!important}
/* keep site-wide element styles from leaking into the rater */
#jfr-rater label{margin:0}
#jfr-rater select{margin:0;min-height:0}
#jfr-rater h2{font-size:clamp(28px,4vw,40px);margin:0 0 10px}

/* ===== Capitalization for quick scanning (Oct 2026) =====
   Headings, menus, buttons, labels, tabs, badges and phone numbers are shown in CAPITALS.
   Paragraphs, FAQ answers, fine print and email addresses stay in normal case for easy reading. */
h1,h2,h3,h4,.eyebrow,.card-kicker,.site-header nav a,.nav-actions a,.btn,button,label,legend,summary,
.insurance-card h3,.insurance-card a,.state-grid strong,.state-grid span,.trust-row span,.spanish-banner strong,.spanish-banner a,
.footer-grid h4,.footer-grid a,.license-details span,.footer-bottom a,.steps h3,.check-list strong,.story-dates span,.chat-toggle,.chat-phone,
.cta-buttons a,.message-call,select,
#jfr-rater .jfr-tab,#jfr-rater .jfr-lbl,#jfr-rater .jfr-field>label,#jfr-rater select,#jfr-rater .jfr-cta a,#jfr-rater .jfr-cta button,
#jfr-rater .jfr-split span,#jfr-rater .jfr-sub,#jfr-rater .jfr-seg button,#jfr-rater .jfr-lang button,#jfr-rater .jfr-eyebrow,#jfr-rater h2,
.agent-body h3,.agent-role,.agent-phone,.agent-actions a,.agent-chips span{text-transform:uppercase;letter-spacing:.03em}
h1{letter-spacing:.01em}
a[href^="mailto:"],.footer-grid a[href^="mailto:"],.cta-buttons a[href^="mailto:"]{text-transform:none!important}
#jfr-rater .jfr-check,#jfr-rater .jfr-check span,#jfr-rater .jfr-note,#jfr-rater .jfr-warn,#jfr-rater .jfr-lead,#jfr-rater .jfr-fine{text-transform:none!important}

/* Hero without the quote card (Oct 2026) */
.hero-grid{grid-template-columns:1fr!important}
.hero-copy{max-width:820px}

/* Larger, colorful 3D coverage icons (Microsoft Fluent Emoji, MIT license) */
.insurance-card .icon{width:104px;height:104px;font-size:0;line-height:0;margin-bottom:14px;background:none!important;border:0!important;box-shadow:none!important;padding:0!important;display:block}
.insurance-card .icon img{width:104px;height:104px;object-fit:contain;filter:drop-shadow(0 10px 14px rgba(4,38,38,.18));transition:transform .2s ease}
.insurance-card:hover .icon img{transform:translateY(-4px) scale(1.05)}
@media(max-width:600px){.insurance-card .icon,.insurance-card .icon img{width:88px;height:88px}}
@media(prefers-reduced-motion:reduce){.insurance-card .icon img{transition:none}.insurance-card:hover .icon img{transform:none}}

/* ===== Animated "Chat with us" button (Oct 2026) ===== */
.chat-toggle{position:relative;overflow:hidden;display:inline-flex;align-items:center;gap:10px;font-weight:700;letter-spacing:.03em;border-width:2px;
  animation:jfrChatColor 6s ease-in-out infinite,jfrChatPop 8s ease-in-out infinite;will-change:transform,opacity}
.chat-toggle::before{content:"";width:22px;height:22px;flex:0 0 22px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6 2 11c0 2.4 1 4.6 2.8 6.2L4 22l4.9-2.2c1 .3 2 .4 3.1.4 5.5 0 10-4 10-9S17.5 2 12 2zm-4 10a1.3 1.3 0 110-2.6A1.3 1.3 0 018 12zm4 0a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6zm4 0a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6z'/%3E%3C/svg%3E") no-repeat center/contain;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2C6.5 2 2 6 2 11c0 2.4 1 4.6 2.8 6.2L4 22l4.9-2.2c1 .3 2 .4 3.1.4 5.5 0 10-4 10-9S17.5 2 12 2zm-4 10a1.3 1.3 0 110-2.6A1.3 1.3 0 018 12zm4 0a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6zm4 0a1.3 1.3 0 110-2.6 1.3 1.3 0 010 2.6z'/%3E%3C/svg%3E") no-repeat center/contain}
.chat-toggle::after{content:"";position:absolute;top:-20%;left:-75%;width:45%;height:140%;pointer-events:none;
  background:linear-gradient(105deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.85) 50%,rgba(255,255,255,0) 100%);transform:skewX(-20deg);
  animation:jfrChatShine 3s ease-in-out infinite}
.chat-toggle:hover{animation-play-state:paused;filter:brightness(1.05)}
@keyframes jfrChatColor{
  0%,100%{background:#042626;border-color:#042626;color:#ffffff;box-shadow:0 6px 22px rgba(4,38,38,.25)}
  32%{color:#ffffff}
  36%{color:#042626}
  50%{background:#25D366;border-color:#25D366;color:#042626;box-shadow:0 0 0 6px rgba(37,211,102,.25),0 8px 26px rgba(37,211,102,.45)}
  64%{color:#042626}
  68%{color:#ffffff}}
@keyframes jfrChatShine{0%,55%{left:-75%}85%,100%{left:135%}}
@keyframes jfrChatPop{
  0%,68%,100%{opacity:1;transform:scale(1)}
  76%,84%{opacity:0;transform:scale(.8) translateY(8px)}
  92%{opacity:1;transform:scale(1.08)}
  96%{transform:scale(.98)}}
.chat-toggle[aria-expanded="true"],.chat-toggle:focus-visible{animation:none;opacity:1;transform:none;background:#042626;border-color:#042626;color:#ffffff}
.chat-toggle[aria-expanded="true"]::after,.chat-toggle:focus-visible::after{animation:none;display:none}
@media(prefers-reduced-motion:reduce){.chat-toggle,.chat-toggle::after{animation:none!important}.chat-toggle::after{display:none}}

/* ===== "Start a Quote" buttons: same animation as "Chat with us" (Oct 2026) ===== */
.nav-actions a.btn-primary[href="#jfr-rater"],.hero-buttons a.btn-primary[href="#jfr-rater"]{position:relative;overflow:hidden;border:2px solid #042626;
  animation:jfrChatColor 6s ease-in-out infinite,jfrChatPop 8s ease-in-out infinite;will-change:transform,opacity}
.nav-actions a.btn-primary[href="#jfr-rater"]::after,.hero-buttons a.btn-primary[href="#jfr-rater"]::after{content:"";position:absolute;top:-20%;left:-75%;width:45%;height:140%;pointer-events:none;
  background:linear-gradient(105deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.85) 50%,rgba(255,255,255,0) 100%);transform:skewX(-20deg);animation:jfrChatShine 3s ease-in-out infinite}
.nav-actions a.btn-primary[href="#jfr-rater"]:hover,.hero-buttons a.btn-primary[href="#jfr-rater"]:hover{animation-play-state:paused}
.nav-actions a.btn-primary[href="#jfr-rater"]:focus-visible,.hero-buttons a.btn-primary[href="#jfr-rater"]:focus-visible{animation:none;opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.nav-actions a.btn-primary[href="#jfr-rater"],.hero-buttons a.btn-primary[href="#jfr-rater"],
  .nav-actions a.btn-primary[href="#jfr-rater"]::after,.hero-buttons a.btn-primary[href="#jfr-rater"]::after{animation:none!important}}

#jfr-rater{scroll-margin-top:96px}
#agents,#insurance,#contact,#faq,#our-story,#why-us,#how-it-works{scroll-margin-top:96px}

/* ===== Hover color animations: contact info + coverage cards (Oct 2026) ===== */
@keyframes jfrFlow{0%{background-position:0% 50%}100%{background-position:300% 50%}}
@keyframes jfrIconHop{0%,100%{transform:translateY(-4px) scale(1.05) rotate(0)}30%{transform:translateY(-12px) scale(1.1) rotate(-6deg)}60%{transform:translateY(-6px) scale(1.07) rotate(4deg)}}

/* 1) Phone / email / WhatsApp BUTTONS: flowing teal-to-green fill */
.btn[href^="tel:"],.btn[href^="mailto:"],.btn[href*="wa.me"],.agent-actions a,#jfr-rater .jfr-cta a.jfr-call,.chat-panel a[href*="wa.me"]{
  transition:color .25s ease,background-color .25s ease,border-color .25s ease,box-shadow .25s ease,transform .2s ease}
.btn[href^="tel:"]:hover,.btn[href^="mailto:"]:hover,.btn[href*="wa.me"]:hover,.agent-actions a:hover,.chat-panel a[href*="wa.me"]:hover,
.btn[href^="tel:"]:focus-visible,.btn[href^="mailto:"]:focus-visible,.btn[href*="wa.me"]:focus-visible,.agent-actions a:focus-visible,.chat-panel a[href*="wa.me"]:focus-visible,
#jfr-rater .jfr-cta a.jfr-call:hover,#jfr-rater .jfr-cta a.jfr-call:focus-visible{
  background:linear-gradient(90deg,#042626,#0b5a4b,#128c7e,#0b5a4b,#042626)!important;background-size:300% 100%!important;
  color:#ffffff!important;border-color:#042626!important;transform:translateY(-2px);
  box-shadow:0 0 0 4px rgba(37,211,102,.30),0 10px 24px rgba(4,38,38,.22);animation:jfrFlow 2.4s linear infinite}

/* 2) Plain phone numbers & contact links: shimmering teal-to-green text */
.spanish-banner a[href^="tel:"],.footer-grid a[href^="tel:"],.footer-grid a[href^="mailto:"],.footer-grid a[href*="wa.me"],.agent-phone,.chat-phone,.license-details span{
  transition:color .25s ease,transform .2s ease}
.spanish-banner a[href^="tel:"]:hover,.footer-grid a[href^="tel:"]:hover,.footer-grid a[href^="mailto:"]:hover,.footer-grid a[href*="wa.me"]:hover,.agent-phone:hover,
.spanish-banner a[href^="tel:"]:focus-visible,.footer-grid a[href^="tel:"]:focus-visible,.footer-grid a[href^="mailto:"]:focus-visible,.agent-phone:focus-visible{
  background:linear-gradient(90deg,#042626,#128c7e,#1aa260,#128c7e,#042626);background-size:300% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent;
  animation:jfrFlow 2s linear infinite;display:inline-block;transform:translateY(-1px)}

/* 3) Coverage cards */
.insurance-card{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease,background .35s ease}
.insurance-card:hover,.insurance-card:focus-within{transform:translateY(-6px);border-color:#128c7e!important;
  background:linear-gradient(160deg,#ffffff 0%,#effcf4 100%)!important;
  box-shadow:0 0 0 3px rgba(37,211,102,.22),0 18px 40px rgba(18,140,126,.22)!important}
.insurance-card:hover h3,.insurance-card:focus-within h3{
  background:linear-gradient(90deg,#042626,#128c7e,#1aa260,#128c7e,#042626);background-size:300% 100%;
  -webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:jfrFlow 2.2s linear infinite}
.insurance-card:hover .icon img,.insurance-card:focus-within .icon img{animation:jfrIconHop 1.1s ease-in-out infinite;filter:drop-shadow(0 14px 16px rgba(18,140,126,.30))}
.insurance-card a{transition:color .25s ease,letter-spacing .25s ease}
.insurance-card:hover a,.insurance-card:focus-within a{color:#128c7e!important;letter-spacing:.06em}

@media(prefers-reduced-motion:reduce){
  .btn[href^="tel:"]:hover,.btn[href^="mailto:"]:hover,.agent-actions a:hover,#jfr-rater .jfr-cta a.jfr-call:hover,.chat-panel a[href*="wa.me"]:hover,
  .spanish-banner a[href^="tel:"]:hover,.footer-grid a:hover,.agent-phone:hover,.insurance-card:hover h3,.insurance-card:hover .icon img{animation:none!important}
  .insurance-card:hover,.btn:hover,.agent-actions a:hover{transform:none!important}}

/* ===== More visible header menu (Oct 2026) ===== */
.site-header nav a{font-size:15px;font-weight:700;letter-spacing:.04em;color:#042626!important;padding:8px 12px;border-radius:999px;border:1.5px solid transparent;
  white-space:nowrap;text-decoration:none;transition:color .2s ease,background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .15s ease}
.site-header .nav nav{gap:4px;font-size:15px;color:#042626}
.site-header nav a:hover,.site-header nav a:focus-visible{background:linear-gradient(90deg,#042626,#0b5a4b,#128c7e,#0b5a4b,#042626);background-size:300% 100%;
  color:#ffffff!important;border-color:#042626;box-shadow:0 0 0 3px rgba(37,211,102,.28);animation:jfrFlow 2.4s linear infinite;transform:translateY(-1px)}
.site-header nav a[aria-current="true"]{background:#042626;color:#ffffff!important;border-color:#042626}
.nav-actions .lang{font-size:15px;font-weight:700;letter-spacing:.04em;padding:8px 12px;border:1.5px solid #042626;border-radius:999px;color:#042626}
.nav-actions .lang:hover{background:#042626;color:#ffffff}
@media(max-width:1280px){.site-header nav a{font-size:14px;padding:7px 9px}.site-header .nav{gap:14px}}
/* Tablets & phones: show the menu as a swipeable row of buttons under the logo */
@media(max-width:1100px){
  .site-header .nav{flex-wrap:wrap;row-gap:6px;padding-bottom:10px}
  .site-header .nav nav{display:flex!important;order:3;flex:0 0 100%;width:100%;overflow-x:auto;gap:8px;padding:2px 2px 6px;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}
  .site-header .nav nav::-webkit-scrollbar{display:none}
  .site-header nav a{font-size:15px;padding:9px 14px;border:1.5px solid #042626;flex:0 0 auto;scroll-snap-align:start}
}
@media(prefers-reduced-motion:reduce){.site-header nav a:hover{animation:none;transform:none}}
/* Jumps from the menu land just below the sticky header */
:root{--hdr:140px}
section[id],main [id]{scroll-margin-top:calc(var(--hdr) + 8px)}
#jfr-rater{scroll-margin-top:calc(var(--hdr) + 8px)!important}
/* menu layout refinements */
.nav-actions .btn,.nav-actions .lang{white-space:nowrap}
@media(min-width:0px){
  .site-header .nav{flex-wrap:wrap;row-gap:4px;padding-bottom:10px}
  .site-header .nav nav{display:flex!important;order:3;flex:0 0 100%;width:100%;justify-content:center;flex-wrap:wrap;gap:6px}
  .site-header nav a{font-size:15px;padding:8px 14px;border:1.5px solid rgba(4,38,38,.35)}
}
@media(max-width:1100px){.site-header .nav nav{justify-content:flex-start;flex-wrap:nowrap}.site-header nav a{border-color:#042626}}
@media(max-width:600px){
  .spanish-banner .spanish-page-link{display:none}
  .spanish-banner-inner{flex-wrap:nowrap!important;gap:12px!important;justify-content:center;padding-top:6px;padding-bottom:6px}
  .spanish-banner strong,.spanish-banner a{font-size:13px}
}
#insurance,#our-story,#agents,#why-us,#how-it-works,#faq,#contact,#jfr-rater{scroll-margin-top:calc(var(--hdr) + 8px)!important}

/* ===== Agent cards a little smaller (Oct 2026) ===== */
.agents .agents-grid{max-width:960px;margin-left:auto;margin-right:auto;gap:22px;margin-top:28px}
.agent-body{padding:20px 18px;gap:8px}
.agent-body h3{font-size:clamp(22px,2.1vw,28px)}
.agent-role{font-size:14px}
.agent-blurb{font-size:15px;line-height:1.45}
.agent-phone{font-size:22px}
.agent-actions a{font-size:14px;padding:7px 13px}
.agent-chips span{font-size:12.5px;padding:4px 10px}
.agent-photo{border-right-width:6px}
@media(max-width:560px){.agents .agents-grid{max-width:420px}.agent-photo{border-bottom-width:6px}.agent-photo img{aspect-ratio:4/3.6}}
.agents .agents-grid{max-width:1060px}
.agent-card{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
.agent-body h3{font-size:clamp(22px,2vw,26px);white-space:nowrap}
.agent-role{font-size:13px;white-space:nowrap}
.agent-blurb{font-size:14.5px}
.agent-chips{gap:6px;padding-top:4px}
@media(max-width:1000px){.agents .agents-grid{max-width:560px}}
@media(max-width:560px){.agent-card{grid-template-columns:1fr}.agent-body h3{white-space:normal}}
.agent-body h3,.agent-role{white-space:normal!important}
.agent-body h3{font-size:clamp(21px,1.9vw,25px);line-height:1.08}
.chat-widget{will-change:transform}

/* Mailing address in footer (Oct 2026) */
.footer-address{font-style:normal;color:#042626;line-height:1.5;margin:6px 0 10px;font-size:15px}
.footer-address-label{display:block;font-weight:700;text-transform:uppercase;letter-spacing:.03em;font-size:13px}
.footer-address{font-size:14px;margin-top:8px}
