/* FWI main-site rebuild — shared, scoped design system (Nov 2026). Applies only inside .fwi-page. */
.fwi-page{--fwi-ink:#0F1E3D;--fwi-muted:#4A5873;--fwi-line:#E3E9F2;--fwi-orange:#E8641B;--fwi-orange2:#FF8A1F;--fwi-navy:#00394c;--fwi-bg:#F6F8FC;--fwi-hero:#DCE7F5;--fwi-soft:#FFF4EC;font-family:'Nunito Sans',sans-serif;color:var(--fwi-ink)}
.fwi-page .e-con{--padding-top:0;--padding-bottom:0}
.fwi-sec{padding:72px 24px!important;--content-width:1240px}
.fwi-sec.fwi-alt{background:var(--fwi-bg)}
.fwi-sec.fwi-soft{background:var(--fwi-soft)}
.fwi-sec.fwi-tight{padding:48px 24px!important}
@media(max-width:767px){.fwi-sec{padding:48px 16px!important}.fwi-sec.fwi-tight{padding:36px 16px!important}}
/* hero */
.fwi-hero{background:var(--fwi-hero);padding:48px 24px!important;--content-width:1240px}
.fwi-hero-panel{background:#fff;border:1px solid var(--fwi-line);border-radius:22px;padding:52px 56px!important;box-shadow:0 18px 50px rgba(15,30,61,.08)}
@media(max-width:1024px){.fwi-hero-panel{padding:40px!important}}
@media(max-width:767px){.fwi-hero{padding:24px 14px!important}.fwi-hero-panel{padding:28px 22px!important}}
/* type */
.fwi-eyebrow .elementor-heading-title{display:inline-block;font:800 12.5px/1.2 'Nunito Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--fwi-orange);background:var(--fwi-soft);border:1px solid #F8D9C3;border-radius:999px;padding:7px 14px;margin:0}
.fwi-h1 .elementor-heading-title{font:900 clamp(32px,4vw,50px)/1.12 'Nunito Sans',sans-serif;letter-spacing:-.025em;color:var(--fwi-ink);margin:0}
.fwi-h1 .elementor-heading-title .fwi-accent{color:var(--fwi-orange)}
.fwi-h2 .elementor-heading-title{font:800 clamp(26px,3vw,38px)/1.18 'Nunito Sans',sans-serif;letter-spacing:-.02em;color:var(--fwi-ink);margin:0 0 10px}
.fwi-h3 .elementor-heading-title{font:700 20px/1.35 'Nunito Sans',sans-serif;color:var(--fwi-ink);margin:0 0 6px}
.fwi-lead .elementor-heading-title,.fwi-lead p{font:400 18px/1.65 'Nunito Sans',sans-serif;color:var(--fwi-muted);margin:0 0 8px}
.fwi-body p,.fwi-body li{font:400 16.5px/1.75 'Nunito Sans',sans-serif;color:#2C3A55;margin:0 0 14px}
.fwi-body strong{color:var(--fwi-ink)}
.fwi-body a{color:var(--fwi-orange);text-decoration:underline;text-underline-offset:3px}
.fwi-body a:focus-visible,.fwi-page a:focus-visible,.fwi-page button:focus-visible{outline:3px solid var(--fwi-orange);outline-offset:3px}
.fwi-c .elementor-heading-title,.fwi-c p{text-align:center}
.fwi-max .elementor-heading-title,.fwi-max p{max-width:820px;margin-left:auto;margin-right:auto}
.fwi-note .elementor-heading-title,.fwi-note p{font:600 15px/1.6 'Nunito Sans',sans-serif;color:var(--fwi-muted);background:#fff;border-left:4px solid var(--fwi-orange);border-radius:0 12px 12px 0;padding:12px 16px;margin:0}
/* lists */
.fwi-list .elementor-icon-list-item{margin-bottom:10px;align-items:flex-start}
.fwi-list .elementor-icon-list-icon{color:var(--fwi-orange);margin-top:3px}
.fwi-list .elementor-icon-list-text{font:400 16px/1.6 'Nunito Sans',sans-serif;color:#2C3A55}
/* buttons */
.fwi-btn .elementor-button{font:700 15px/1.2 'Nunito Sans',sans-serif;border-radius:999px;padding:15px 26px;transition:transform .25s ease,box-shadow .25s ease}
.fwi-btn .elementor-button:hover{transform:translateY(-2px)}
.fwi-btn-p .elementor-button{background:linear-gradient(135deg,var(--fwi-orange),var(--fwi-orange2));color:#fff;box-shadow:0 10px 24px rgba(232,100,27,.32)}
.fwi-btn-s .elementor-button{background:#fff;color:var(--fwi-ink);border:2px solid var(--fwi-ink)}
.fwi-btn-s .elementor-button:hover{background:var(--fwi-ink);color:#fff}
/* cards & grids */
.fwi-grid{display:flex;flex-wrap:wrap;gap:22px}
.fwi-grid>.e-con{flex:1 1 calc(33.333% - 15px);min-width:260px}
.fwi-grid.fwi-grid2>.e-con{flex-basis:calc(50% - 11px)}
.fwi-grid.fwi-grid4>.e-con{flex-basis:calc(25% - 17px);min-width:220px}
.fwi-card{background:#fff;border:1px solid var(--fwi-line);border-radius:18px;padding:26px!important;box-shadow:0 8px 24px rgba(15,30,61,.05);transition:box-shadow .3s ease,transform .3s ease}
.fwi-card:hover{box-shadow:0 16px 36px rgba(15,30,61,.1);transform:translateY(-3px)}
.fwi-card .elementor-icon{color:var(--fwi-orange);font-size:28px;margin-bottom:12px}
.fwi-card .fwi-h3 .elementor-heading-title{font-size:18.5px}
.fwi-card p{font:400 15.5px/1.65 'Nunito Sans',sans-serif;color:var(--fwi-muted);margin:0}
.fwi-card .fwi-limit p{font-size:14px;color:#6B7893;border-top:1px dashed var(--fwi-line);padding-top:10px;margin-top:12px}
/* step cards */
.fwi-step{position:relative;background:#fff;border:1px solid var(--fwi-line);border-radius:16px;padding:22px 22px 22px 64px!important}
.fwi-step .fwi-num .elementor-heading-title{position:absolute;left:18px;top:20px;width:34px;height:34px;border-radius:50%;background:var(--fwi-ink);color:#fff;font:800 15px/34px 'Nunito Sans',sans-serif;text-align:center;margin:0}
/* html components: flow, table, toc, zip */
.fwi-flow{counter-reset:s;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 18px;padding:0;list-style:none}
.fwi-flow li{counter-increment:s;background:#fff;border:1px solid var(--fwi-line);border-radius:14px;padding:16px 16px 16px 58px;position:relative;font:400 15px/1.55 'Nunito Sans',sans-serif;color:#2C3A55}
.fwi-flow li::before{content:counter(s);position:absolute;left:14px;top:14px;width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--fwi-orange),var(--fwi-orange2));color:#fff;font:800 14px/32px 'Nunito Sans',sans-serif;text-align:center}
.fwi-flow li b{display:block;color:var(--fwi-ink);font-weight:800;margin-bottom:3px}
.fwi-flow li.fwi-loop{grid-column:1/-1;background:var(--fwi-soft);border-color:#F8D9C3}
.fwi-flow li.fwi-loop::before{content:'↻';font-size:18px}
@media(max-width:900px){.fwi-flow{grid-template-columns:1fr 1fr}}@media(max-width:600px){.fwi-flow{grid-template-columns:1fr}}
.fwi-branches{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0;padding:0;list-style:none}
.fwi-branches li{background:#fff;border:1px dashed #C9D3E6;border-radius:12px;padding:14px 16px;font:400 14.5px/1.55 'Nunito Sans',sans-serif;color:#2C3A55}
.fwi-branches li b{color:var(--fwi-ink);display:block;margin-bottom:4px}
.fwi-branches li.fwi-opt{border-style:solid;border-color:#D7DEEB;background:#FAFBFE}
@media(max-width:900px){.fwi-branches{grid-template-columns:1fr}}
.fwi-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--fwi-line);border-radius:14px;overflow:hidden;font:400 15px/1.5 'Nunito Sans',sans-serif}
.fwi-table th{background:var(--fwi-ink);color:#fff;text-align:left;padding:12px 14px;font-weight:700}
.fwi-table td{padding:12px 14px;border-top:1px solid var(--fwi-line);color:#2C3A55;vertical-align:top}
.fwi-table tr.fwi-hl td{background:var(--fwi-soft);font-weight:700;color:var(--fwi-ink)}
.fwi-table caption{caption-side:bottom;text-align:left;font-size:13px;color:#6B7893;padding:10px 2px 0;line-height:1.5}
.fwi-table-wrap{overflow-x:auto}
.fwi-toc{background:#fff;border:1px solid var(--fwi-line);border-radius:14px;padding:16px 20px}
.fwi-toc b{display:block;font:800 13px/1.2 'Nunito Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--fwi-muted);margin-bottom:10px}
.fwi-toc ol{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px 18px}
.fwi-toc li a{font:600 14.5px/1.4 'Nunito Sans',sans-serif;color:var(--fwi-ink);text-decoration:none;border-bottom:1px solid transparent}
.fwi-toc li a:hover{border-bottom-color:var(--fwi-orange);color:var(--fwi-orange)}
.fwi-zip{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;list-style:none;margin:0;padding:0}
.fwi-zip li{background:#fff;border:1px solid var(--fwi-line);border-radius:14px;padding:16px;font:400 14.5px/1.55 'Nunito Sans',sans-serif;color:#2C3A55}
.fwi-zip li b{display:block;font-size:17px;font-weight:800;color:var(--fwi-ink)}
.fwi-zip li span{display:block;font-size:12.5px;color:var(--fwi-orange);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:6px}
@media(max-width:900px){.fwi-zip{grid-template-columns:1fr 1fr}}@media(max-width:600px){.fwi-zip{grid-template-columns:1fr}}
.fwi-src{font:400 13px/1.6 'Nunito Sans',sans-serif;color:#6B7893}
.fwi-src a{color:#6B7893}
/* faq */
.fwi-faq .elementor-accordion-item{border:1px solid var(--fwi-line)!important;border-radius:14px!important;overflow:hidden;margin-bottom:12px;background:#fff;box-shadow:0 6px 18px rgba(15,30,61,.05)}
.fwi-faq .elementor-tab-title{font:700 17px/1.4 'Nunito Sans',sans-serif;color:var(--fwi-ink);padding:18px 20px}
.fwi-faq .elementor-tab-title .elementor-accordion-icon{color:var(--fwi-orange)}
.fwi-faq .elementor-tab-content{font:400 15.5px/1.7 'Nunito Sans',sans-serif;color:#2C3A55;padding:0 20px 20px;border-top:0!important}
.fwi-faq .elementor-tab-content p{margin:0 0 10px}
/* closing cta */
.fwi-cta{background:var(--fwi-ink);border-radius:24px;padding:52px!important;color:#fff}
.fwi-cta .fwi-h2 .elementor-heading-title,.fwi-cta .fwi-h3 .elementor-heading-title{color:#fff}
.fwi-cta .fwi-body p,.fwi-cta .fwi-body li,.fwi-cta .fwi-list .elementor-icon-list-text{color:#D5DDEC}
.fwi-cta .fwi-list .elementor-icon-list-icon{color:var(--fwi-orange2)}
.fwi-cta .fwi-btn-s .elementor-button{background:transparent;color:#fff;border-color:#fff}
.fwi-cta .fwi-btn-s .elementor-button:hover{background:#fff;color:var(--fwi-ink)}
@media(max-width:767px){.fwi-cta{padding:30px 22px!important}}
/* unobtrusive mobile call bar */
.fwi-mobilebar{display:none}
@media(max-width:767px){.fwi-mobilebar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:90;gap:8px}.fwi-mobilebar a{flex:1;text-align:center;font:700 14px/1.2 'Nunito Sans',sans-serif;padding:13px 10px;border-radius:999px;text-decoration:none}.fwi-mobilebar a.p{background:var(--fwi-ink);color:#fff}.fwi-mobilebar a.s{background:#fff;color:var(--fwi-ink);border:2px solid var(--fwi-ink)}.fwi-page{padding-bottom:70px}}

/* fwi-num-fix: anchor the step number to the card, not the widget */
.fwi-step>.fwi-num,.fwi-step>.fwi-num>.elementor-widget-container{position:static!important}
.fwi-step>.fwi-num{margin:0!important}
