/*
Theme Name: National Insurance Solutions
Author: National Insurance Solutions
Description: Native PHP WordPress conversion of the NIS version 12 website, with Arizona coverage pages and an interactive quote checklist.
Version: 1.6.0
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: national-insurance-solutions
License: GPL v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
  --navy-950: #061426;
  --navy-900: #0a2038;
  --navy-800: #123451;
  --navy-700: #1b4965;
  --gold-500: #d6a647;
  --gold-400: #e4bc68;
  --gold-200: #f4dfae;
  --cream: #f8f3e8;
  --sand: #eee4d2;
  --ink: #102234;
  --slate: #526474;
  --white: #ffffff;
  --background: #ffffff;
  --foreground: #102234;
  --card: #ffffff;
  --card-foreground: #102234;
  --popover: #ffffff;
  --popover-foreground: #102234;
  --primary: #0a2038;
  --primary-foreground: #ffffff;
  --secondary: #f8f3e8;
  --secondary-foreground: #102234;
  --muted: #f1f4f6;
  --muted-foreground: #5f6f7c;
  --accent: #f4dfae;
  --accent-foreground: #102234;
  --destructive: #b42318;
  --border: #dce3e8;
  --input: #cdd7de;
  --ring: #d6a647;
  --radius: 0.75rem;
}



* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--background); color: var(--ink); font-family: "Avenir Next", Avenir, "Segoe UI", Helvetica, Arial, sans-serif; font-size: 16px; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
img { max-width: 100%; height: auto; }
h1, h2, h3, p { margin-top: 0; }
h1, h2 { font-family: Georgia, "Times New Roman", serif; color: var(--navy-950); line-height: 1.08; letter-spacing: -0.03em; }
h1 { font-size: clamp(2.8rem, 6vw, 5.5rem); font-weight: 500; }
h2 { font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 500; }
h3 { color: var(--navy-900); line-height: 1.28; }
p { color: var(--slate); }
svg { flex: 0 0 auto; }

.container { width: min(1180px, calc(100% - 40px)); margin-inline: auto; }
.section { padding: 100px 0; }
.section-light { background: #fff; }
.section-cream { background: var(--cream); }
.eyebrow { margin-bottom: 14px; color: #9a6818; font-size: .78rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.eyebrow-light { color: var(--gold-400); }
.small-copy { font-size: .875rem; line-height: 1.6; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 16px; top: -80px; z-index: 1000; padding: 12px 18px; background: #fff; color: var(--navy-950); border-radius: 8px; box-shadow: 0 8px 30px #0003; }
.skip-link:focus { top: 16px; }

.launch-bar { background: var(--navy-950); color: #dce9f2; font-size: .82rem; }
.launch-bar-inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.launch-bar-inner span, .launch-bar-inner a { display: inline-flex; align-items: center; gap: 8px; }
.launch-bar-inner a { color: var(--gold-400); font-weight: 700; }
.site-header { position: sticky; top: 0; z-index: 40; border-bottom: 1px solid #dce3e8; background: #fffc; backdrop-filter: blur(16px); }
.nav-shell { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; align-items: center; gap: 12px; min-width: 255px; }
.brand-mark { width: 54px; height: 58px; display: grid; place-items: center; flex: 0 0 auto; }
.brand-mark img { width: 52px; height: 56px; object-fit: contain; }
.brand-words { display: flex; flex-direction: column; color: var(--navy-950); font-size: .83rem; line-height: 1.2; text-transform: uppercase; letter-spacing: .08em; }
.brand-words strong { font-family: Georgia, serif; font-size: 1.22rem; font-weight: 600; letter-spacing: .05em; }
.desktop-nav { display: flex; align-items: center; gap: clamp(16px, 2vw, 30px); }
.desktop-nav a { padding: 29px 0 27px; color: #263c4d; font-size: .92rem; font-weight: 700; border-bottom: 3px solid transparent; }
.desktop-nav a:hover, .desktop-nav a:focus-visible { color: var(--navy-950); border-color: var(--gold-500); }
.nav-actions { display: flex; align-items: center; }
.header-phone { display: inline-flex; align-items: center; gap: 7px; margin-right: 14px; color: var(--navy-900); font-size: .86rem; font-weight: 800; white-space: nowrap; }
.header-phone svg { color: #9a6818; }
.mobile-menu-button { display: none; border: 0; background: transparent; color: var(--navy-950); padding: 10px; }
.mobile-sheet { background: #fff; border-color: #dce3e8; }
.mobile-nav { display: grid; gap: 8px; padding: 12px 20px 24px; }
.mobile-nav > a:not(.button) { padding: 14px 4px; border-bottom: 1px solid #e6ebee; color: var(--navy-900); font-weight: 700; }

.button { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 12px 20px; border: 1px solid transparent; border-radius: 8px; font-size: .92rem; font-weight: 800; line-height: 1.2; text-align: center; transition: transform .2s ease, background .2s ease, border-color .2s ease; }
.button:hover { transform: translateY(-2px); }
.button:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid #f0c868; outline-offset: 3px; }
.button-gold { background: var(--gold-500); color: #102234; box-shadow: 0 9px 26px #2b1f0a2e; }
.button-gold:hover { background: var(--gold-400); }
.button-navy { background: var(--navy-950); color: #fff; }
.button-ghost { border-color: #ffffff70; background: #ffffff12; color: #fff; }
.button-ghost:hover { background: #ffffff25; }
.button-full { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 8px; color: var(--navy-800); font-weight: 800; }
.text-link:hover { color: #9a6818; }

.home-hero { min-height: 720px; display: grid; position: relative; isolation: isolate; background: url('assets/images/national-landscape-hero.webp') center 46% / cover no-repeat; }
.home-hero-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #061426f7 0%, #061426d9 38%, #0614266e 63%, #06142636 100%), linear-gradient(0deg, #0614267a, transparent 40%); }
.home-hero-grid { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); gap: clamp(42px, 7vw, 90px); align-items: center; padding-block: 105px; }
.home-hero-copy { max-width: 690px; }
.home-hero h1 { max-width: 620px; margin-bottom: 24px; color: #fff; text-shadow: 0 4px 30px #06142699; }
.hero-lead { max-width: 650px; color: #eef4f8; font-size: 1.18rem; line-height: 1.75; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.hero-proof { display: flex; flex-wrap: wrap; gap: 12px 24px; margin-top: 35px; color: #eaf2f7; font-size: .9rem; font-weight: 700; }
.hero-proof span { display: inline-flex; align-items: center; gap: 7px; }
.hero-proof svg { color: var(--gold-400); }
.hero-review-card { padding: 30px; border: 1px solid #ffffff52; border-radius: 18px; background: #fffffff0; box-shadow: 0 30px 80px #03101c66; backdrop-filter: blur(14px); }
.hero-review-card h2 { margin: 15px 0 12px; font-size: 2.25rem; }
.card-kicker { display: inline-flex; align-items: center; gap: 7px; color: #9a6818; font-size: .78rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.quick-links { display: grid; gap: 8px; margin: 24px 0; }
.quick-links a { min-height: 50px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 14px; border: 1px solid #dce4e9; border-radius: 8px; background: #fff; color: var(--navy-900); font-weight: 750; }
.quick-links a:hover { border-color: var(--gold-500); background: #fcf8ef; }

.confidence-strip { background: var(--navy-900); color: #fff; }
.confidence-grid { min-height: 112px; display: grid; grid-template-columns: repeat(3,1fr); align-items: center; }
.confidence-grid > div { display: flex; align-items: center; gap: 16px; padding: 16px 28px; border-right: 1px solid #ffffff20; }
.confidence-grid > div:last-child { border-right: 0; }
.confidence-grid svg { color: var(--gold-400); }
.confidence-grid span { display: grid; color: #b9c8d3; font-size: .83rem; }
.confidence-grid strong { color: #fff; font-size: .97rem; }

.narrow-heading { max-width: 760px; margin-bottom: 50px; text-align: center; }
.narrow-heading > p:last-child { max-width: 650px; margin-inline: auto; font-size: 1.05rem; }
.coverage-tabs { gap: 24px; }
.coverage-tab-list { width: 100% !important; height: auto !important; display: grid !important; grid-template-columns: repeat(4, 1fr); gap: 8px; padding: 8px !important; border: 1px solid #dfe5e9; border-radius: 12px !important; background: #f4f6f7 !important; }
.coverage-tab-trigger { min-height: 58px !important; padding: 12px !important; border-radius: 8px !important; color: #405464 !important; }
.coverage-tab-trigger[data-state="active"] { background: var(--navy-950) !important; color: #fff !important; box-shadow: 0 8px 20px #0a20382b !important; }
.coverage-tab-panel { min-height: 230px; display: grid !important; grid-template-columns: auto 1fr auto; align-items: center; gap: 28px; padding: 42px; border: 1px solid #dce3e8; border-radius: 16px; background: linear-gradient(135deg,#fff,#fbf7ef); box-shadow: 0 18px 50px #1022340d; }
.coverage-tab-panel h3 { margin: 0 0 10px; font-family: Georgia, serif; font-size: clamp(1.7rem,3vw,2.5rem); font-weight: 500; }
.coverage-tab-panel p { max-width: 700px; margin-bottom: 0; }
.tab-icon, .icon-box { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 13px; background: var(--gold-200); color: var(--navy-900); }

.split-heading { display: grid; grid-template-columns: 1.05fr .75fr; gap: 70px; align-items: end; margin-bottom: 50px; }
.split-heading h2 { margin-bottom: 0; }
.split-heading > p { font-size: 1.05rem; }
.audience-grid, .product-card-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.audience-card, .product-card { min-height: 255px; padding: 26px; border: 1px solid #e0d8c9; border-radius: 13px; background: #fff; box-shadow: 0 12px 35px #3b2e160b; }
.audience-card h3, .product-card h3 { margin: 24px 0 10px; font-size: 1.12rem; }
.audience-card p, .product-card p { font-size: .94rem; }
.product-card { display: flex; flex-direction: column; }
.product-card .text-link { margin-top: auto; }

.process-section { background: var(--navy-950); }
.process-section h2 { max-width: 700px; color: #fff; }
.process-intro { margin-bottom: 48px; }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid #ffffff25; }
.process-grid article { padding: 34px 28px 0 0; border-right: 1px solid #ffffff25; }
.process-grid article:not(:first-child) { padding-left: 28px; }
.process-grid article:last-child { border-right: 0; }
.process-grid span { color: var(--gold-400); font-size: .78rem; font-weight: 800; letter-spacing: .12em; }
.process-grid h3 { margin: 15px 0 10px; color: #fff; font-size: 1.25rem; }
.process-grid p { color: #b7c6d1; font-size: .92rem; }

.national-panel { min-height: 460px; display: grid; grid-template-columns: 1.18fr .82fr; overflow: hidden; border-radius: 18px; background: var(--cream); box-shadow: 0 24px 70px #10223420; }
.national-panel-image { min-height: 460px; background: url('assets/images/national-landscape-hero.webp') center / cover no-repeat; }
.national-panel-copy { display: flex; flex-direction: column; justify-content: center; padding: 54px; }
.national-panel-copy h2 { font-size: clamp(2rem,3.4vw,3rem); }
.national-panel-copy .text-link { margin-top: 12px; }
.area-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 80px; align-items: center; }
.area-tags { display: flex; flex-wrap: wrap; gap: 10px; }
.area-tags span, .area-tags a { display: inline-flex; align-items: center; gap: 6px; padding: 10px 14px; border: 1px solid #d8cfbe; border-radius: 999px; background: #fff; color: var(--navy-800); font-size: .88rem; font-weight: 700; }
.faq-grid { display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; }
.faq-list { border-top: 1px solid #d8e0e5; }
.faq-item { border-color: #d8e0e5; }
.faq-trigger { padding: 22px 2px !important; color: var(--navy-900); font-size: 1rem !important; text-decoration: none !important; }
.faq-content { color: var(--slate); font-size: .97rem !important; }
.section-cta-wrap { padding-block: 0 100px; background: #fff; }
.section-cta { min-height: 285px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 60px; padding: 50px; border-radius: 18px; background: linear-gradient(120deg, var(--navy-950), var(--navy-800)); box-shadow: 0 24px 70px #0a203830; }
.section-cta h2 { margin-bottom: 14px; color: #fff; font-size: clamp(2rem,4vw,3.2rem); }
.section-cta p:not(.eyebrow) { max-width: 720px; margin-bottom: 0; color: #c3d0d9; }
.cta-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }

.page-hero { min-height: 575px; position: relative; isolation: isolate; display: grid; background-position: center; background-size: cover; }
.page-hero-national { background-image: url('assets/images/national-landscape-hero.webp'); }
.page-hero-arizona { background-image: url('assets/images/arizona-desert-hero.webp'); }
.page-hero-overlay { position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#061426f2 0%,#061426d6 47%,#0614265c 76%,#0614262f 100%); }
.page-hero-content { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding-block: 80px; }
.page-hero h1 { max-width: 800px; margin-bottom: 22px; color: #fff; font-size: clamp(2.7rem,5vw,4.8rem); }
.page-hero-body { max-width: 720px; color: #e5edf2; font-size: 1.12rem; }
.hero-points { display: flex; flex-wrap: wrap; gap: 12px 22px; margin: 18px 0 0; padding: 0; list-style: none; color: #e8f0f5; font-size: .9rem; font-weight: 750; }
.hero-points li { display: flex; align-items: center; gap: 7px; }
.hero-points svg { color: var(--gold-400); }
.content-split { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: center; }
.check-list { display: grid; gap: 14px; margin: 0; padding: 0; list-style: none; }
.check-list li { min-height: 52px; display: flex; align-items: center; gap: 13px; padding: 12px 15px; border: 1px solid #ded6c8; border-radius: 9px; background: #fff; color: #263c4d; font-weight: 650; }
.check-list svg { width: 20px; color: #a67321; }
.check-list.compact li { min-height: auto; padding: 8px 0; border: 0; background: transparent; }
.comparison-stack { display: grid; gap: 14px; }
.comparison-stack article { padding: 24px; border: 1px solid #ded6c8; border-radius: 12px; background: #fff; }
.comparison-stack article h3 { margin-bottom: 8px; }
.comparison-stack article p { margin-bottom: 0; }

.detail-hero { padding: 100px 0; background: radial-gradient(circle at 86% 20%,#2c5674 0,#102f49 28%,#061426 66%); color: #fff; }
.detail-hero-grid { display: grid; grid-template-columns: 1.25fr .55fr; gap: 80px; align-items: center; }
.detail-hero h1 { max-width: 830px; color: #fff; font-size: clamp(2.8rem,5.6vw,5rem); }
.detail-hero-grid > div > p:not(.eyebrow) { max-width: 740px; color: #d6e1e8; font-size: 1.12rem; }
.detail-hero aside { padding: 28px; border: 1px solid #ffffff2b; border-radius: 15px; background: #ffffff0c; }
.detail-hero aside > svg { color: var(--gold-400); }
.detail-hero aside h2 { margin: 16px 0 9px; color: #fff; font-size: 1.75rem; }
.detail-hero aside p { margin-bottom: 0; color: #c4d0d8; }
.notice-card { display: grid; grid-template-columns: .75fr 1.25fr; gap: 70px; align-items: center; padding: 42px; border-left: 5px solid var(--gold-500); border-radius: 12px; background: #f4f6f7; }
.notice-card h2 { margin-bottom: 0; font-size: 2rem; }
.notice-card > p { margin-bottom: 0; }
.guide-link-panel, .local-service-panel { display: grid; grid-template-columns: 1fr auto; gap: 50px; align-items: center; padding: 42px; border: 1px solid #dce3e8; border-radius: 16px; background: linear-gradient(135deg,#fff,#fbf7ef); box-shadow: 0 18px 50px #1022340d; }
.guide-link-panel h2, .local-service-panel h2 { margin-bottom: 12px; font-size: clamp(2rem,3.3vw,3rem); }
.guide-link-panel p:last-child, .local-service-panel p:last-child { margin-bottom: 0; }
.local-service-panel { grid-template-columns: 1fr .8fr; }
.official-links { display: grid; gap: 12px; }
.official-links a { display: flex; align-items: center; gap: 8px; color: var(--navy-800); font-weight: 800; }
.official-links a:hover { color: #9a6818; }

.about-story { display: grid; grid-template-columns: 1.05fr .95fr; gap: 70px; align-items: center; }
.about-image { min-height: 490px; border-radius: 18px; background: url('assets/images/arizona-desert-hero.webp') 67% center / cover no-repeat; box-shadow: 0 20px 55px #10223422; }
.article-feature-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 20px; }
.article-feature-card { min-height: 390px; display: flex; flex-direction: column; padding: 32px; border: 1px solid #dce3e8; border-radius: 15px; background: linear-gradient(145deg,#fff,#fbf7ef); box-shadow: 0 16px 45px #1022340c; }
.article-feature-card .icon-box { margin-bottom: 24px; }
.article-feature-card h2 { margin-bottom: 14px; font-size: clamp(1.7rem,2.6vw,2.35rem); }
.article-card-meta { margin: auto 0 18px; padding-top: 18px; color: #6c7a85; font-size: .84rem; font-weight: 700; }
.resource-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.resource-card { min-height: 260px; display: flex; flex-direction: column; padding: 28px; border: 1px solid #dce3e8; border-radius: 13px; background: #fff; }
.resource-card > svg { color: #a67321; }
.resource-card h2 { margin: 22px 0 10px; font-family: inherit; font-size: 1.15rem; font-weight: 800; letter-spacing: 0; }
.resource-card .text-link { margin-top: auto; }
.article-hero { padding: 82px 0 88px; background: radial-gradient(circle at 86% 20%,#2c5674 0,#102f49 28%,#061426 66%); }
.article-hero-inner { max-width: 940px; }
.article-hero h1 { max-width: 900px; margin-bottom: 24px; color: #fff; font-size: clamp(2.8rem,5.6vw,5rem); }
.article-summary { max-width: 810px; color: #dce7ed; font-size: 1.15rem; line-height: 1.75; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 34px; color: #c4d3dc; font-size: .82rem; }
.breadcrumbs a:hover { color: var(--gold-400); }
.article-meta { display: flex; flex-wrap: wrap; gap: 12px 26px; margin-top: 28px; color: #e5edf2; font-size: .88rem; font-weight: 700; }
.article-meta span { display: inline-flex; align-items: center; gap: 8px; }
.article-meta svg { color: var(--gold-400); }
.article-layout { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 80px; align-items: start; }
.article-copy { max-width: 780px; }
.article-copy > section { margin-top: 54px; }
.article-copy h2 { margin-bottom: 18px; font-size: clamp(2rem,3.4vw,2.85rem); }
.article-copy p { font-size: 1.05rem; line-height: 1.8; }
.article-copy ul { display: grid; gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; }
.article-copy li { display: flex; align-items: flex-start; gap: 11px; padding: 13px 15px; border: 1px solid #e0d8c9; border-radius: 9px; background: #fbf8f1; color: #2a4050; font-weight: 650; }
.article-copy li svg { margin-top: 3px; color: #a67321; }
.article-callout { display: grid; gap: 5px; padding: 24px; border-left: 5px solid var(--gold-500); border-radius: 10px; background: var(--cream); }
.article-callout strong { color: var(--navy-950); font-size: 1.08rem; }
.article-callout span { color: var(--slate); }
.article-disclaimer { margin-top: 54px; padding: 22px; border: 1px solid #dce3e8; border-radius: 10px; background: #f5f7f8; color: var(--slate); font-size: .9rem; }
.article-sources { padding-top: 8px; border-top: 1px solid #dce3e8; }
.article-sources h2 { font-family: inherit; font-size: 1.35rem; font-weight: 800; letter-spacing: 0; }
.article-sources a { display: flex; align-items: center; gap: 8px; width: fit-content; margin-top: 12px; color: var(--navy-800); font-weight: 800; }
.article-sources a:hover { color: #9a6818; }
.article-sidebar { position: sticky; top: 145px; display: grid; gap: 18px; }
.sidebar-card { padding: 26px; border: 1px solid #dce3e8; border-radius: 13px; background: #fff; box-shadow: 0 16px 40px #1022340d; }
.sidebar-card h2 { margin-bottom: 12px; font-size: 1.85rem; }
.sidebar-card .button { margin-top: 10px; }
.sidebar-links a { display: block; padding: 11px 0; border-bottom: 1px solid #e2e7ea; color: var(--navy-800); font-size: .92rem; font-weight: 750; }
.sidebar-links a:last-child { border-bottom: 0; }
.sidebar-links a:hover { color: #9a6818; }
.related-article-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(250px,1fr)); gap: 18px; }
.related-article-grid article { min-height: 245px; display: flex; flex-direction: column; padding: 27px; border: 1px solid #ded6c8; border-radius: 13px; background: #fff; }
.related-article-grid h3 { margin-bottom: 10px; font-family: Georgia,serif; font-size: 1.55rem; font-weight: 500; }
.related-article-grid .text-link { margin-top: auto; }
.claims-steps { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.claims-steps article { min-height: 280px; padding: 24px; border: 1px solid #dce3e8; border-radius: 12px; background: #fff; }
.claims-steps article > span { display: block; color: #a67321; font-size: .76rem; font-weight: 800; letter-spacing: .12em; }
.claims-steps article > svg { margin: 32px 0 14px; color: var(--navy-800); }
.claims-steps h2 { font-family: inherit; font-size: 1.1rem; font-weight: 800; letter-spacing: 0; }
.claims-steps p { font-size: .91rem; }

.contact-hero { padding: 90px 0 155px; background: radial-gradient(circle at 80% 15%,#2b5573,#0e2d47 35%,#061426 73%); }
.contact-intro { max-width: 850px; text-align: center; }
.contact-hero h1 { margin-bottom: 20px; color: #fff; }
.contact-hero p:not(.eyebrow) { color: #d6e1e8; font-size: 1.1rem; }
.contact-intro .hero-actions { justify-content: center; }
.large-phone { display: block; margin: 4px 0 18px; color: var(--navy-900); font-family: Georgia, serif; font-size: clamp(1.8rem, 3vw, 2.6rem); font-weight: 700; line-height: 1.1; }
.contact-email { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 18px; color: var(--navy-800); font-weight: 800; overflow-wrap: anywhere; }
.planner-layout { display: grid; grid-template-columns: 1.35fr .65fr; gap: 30px; margin-top: -125px; align-items: start; }
.planner-card, .contact-status { padding: 34px; border: 1px solid #dce3e8; border-radius: 16px; background: #fff; box-shadow: 0 22px 60px #1022341c; }
.planner-tabs { width: 100% !important; display: grid !important; grid-template-columns: 1fr 1fr; margin-bottom: 28px; }
.planner-card h2 { font-size: 2.25rem; }
.coverage-options { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; margin-top: 24px; border: 0; padding: 0; }
.coverage-choice { min-height: 50px; display: flex; align-items: center; gap: 10px; padding: 11px 13px; border: 1px solid #d6dfe5; border-radius: 9px; background: #fff; color: var(--navy-800); text-align: left; font-weight: 700; cursor: pointer; }
.coverage-choice:hover { border-color: var(--gold-500); }
.coverage-choice.active { border-color: var(--gold-500); background: #fbf4e6; color: var(--navy-950); }
.coverage-choice > span:first-child { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 6px; background: #edf1f3; }
.coverage-choice.active > span:first-child { background: var(--gold-500); }
.choice-dot { width: 7px; height: 7px; border-radius: 999px; background: #9badb9; }
.planner-summary { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; margin-top: 28px; padding: 18px; border-radius: 11px; background: var(--cream); }
.summary-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 10px; background: var(--navy-900); color: var(--gold-400); }
.planner-summary span, .planner-summary strong { display: block; }
.planner-summary span { color: var(--slate); font-size: .8rem; }
.planner-summary strong { color: var(--navy-900); }
.planner-result { margin-top: 18px; padding: 22px; border: 1px solid #d8e2e7; border-radius: 11px; background: #f7fafb; }
.planner-result h3 { margin-bottom: 14px; }
.planner-result ul { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px 16px; margin: 0 0 18px; padding: 0; list-style: none; }
.planner-result li { display: flex; align-items: flex-start; gap: 8px; color: #344b5c; font-size: .9rem; }
.planner-result li svg { margin-top: 3px; color: #9a6818; }
.planner-result p { margin-bottom: 0; padding-top: 16px; border-top: 1px solid #dce3e8; font-size: .86rem; }
.planner-call { margin-top: 16px; }
.contact-status .icon-box { margin-bottom: 22px; }
.contact-status h2 { font-size: 2rem; }
.contact-note { display: flex; gap: 10px; margin-top: 24px; padding: 15px; border-radius: 9px; background: var(--navy-950); color: #fff; font-size: .86rem; }
.contact-note svg { color: var(--gold-400); }

.legal-hero { padding: 80px 0; background: var(--navy-950); }
.legal-hero h1 { color: #fff; font-size: clamp(2.6rem,5vw,4.5rem); }
.legal-hero p:not(.eyebrow) { color: #bdcad3; }
.legal-copy { max-width: 820px; }
.legal-copy h2 { margin: 42px 0 12px; font-size: 1.7rem; }

.site-footer { background: #04101d; color: #e4ecf2; }
.footer-grid { display: grid; grid-template-columns: 1.55fr .7fr .7fr 1fr; gap: 60px; padding-block: 72px; }
.site-footer .brand { margin-bottom: 22px; }
.site-footer .brand-mark { filter: drop-shadow(0 3px 8px #0008); }
.site-footer .brand-words { color: #fff; }
.footer-brand > p { max-width: 390px; }
.site-footer h2 { margin-bottom: 18px; color: var(--gold-400); font-family: inherit; font-size: .82rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.site-footer p { color: #aebdca; font-size: .9rem; }
.site-footer a:not(.brand) { display: block; padding: 5px 0; color: #dce6ed; font-size: .9rem; }
.site-footer .footer-phone { display: inline-flex !important; align-items: center; gap: 8px; margin: 4px 0 12px; color: var(--gold-400) !important; font-size: 1rem !important; font-weight: 800; }
.site-footer .footer-email { display: inline-flex !important; align-items: center; gap: 8px; margin: 0 0 12px; overflow-wrap: anywhere; }
.site-footer a:not(.brand):hover { color: var(--gold-400); }
.status-pill { display: inline-flex; padding: 6px 10px; border: 1px solid #ffffff25; border-radius: 999px; color: #c8d4dd; font-size: .74rem; font-weight: 700; }
.footer-bottom { display: flex; justify-content: space-between; gap: 40px; padding-block: 24px; border-top: 1px solid #ffffff17; }
.footer-bottom p { max-width: 550px; margin: 0; font-size: .76rem; }

@media (max-width: 1040px) {
  .desktop-nav { display: none; }
  .mobile-menu-button { display: inline-flex; }
  .home-hero-grid { grid-template-columns: 1fr .72fr; gap: 35px; }
  .audience-grid, .product-card-grid { grid-template-columns: repeat(2,1fr); }
  .claims-steps { grid-template-columns: repeat(3,1fr); }
  .footer-grid { grid-template-columns: 1.5fr repeat(2, .75fr); }
  .footer-grid > div:last-child { grid-column: 1 / -1; }
}

@media (max-width: 820px) {
  .section { padding: 76px 0; }
  .home-hero { min-height: auto; }
  .home-hero-grid { grid-template-columns: 1fr; padding-block: 85px; }
  .home-hero-copy { max-width: 650px; }
  .hero-review-card { max-width: 560px; }
  .confidence-grid { grid-template-columns: 1fr; padding-block: 12px; }
  .confidence-grid > div { border-right: 0; border-bottom: 1px solid #ffffff20; }
  .confidence-grid > div:last-child { border-bottom: 0; }
  .coverage-tab-list { grid-template-columns: repeat(2,1fr); }
  .coverage-tab-panel { grid-template-columns: auto 1fr; }
  .coverage-tab-panel .text-link { grid-column: 2; }
  .split-heading, .content-split, .faq-grid, .area-grid, .about-story, .detail-hero-grid, .planner-layout, .article-layout, .guide-link-panel, .local-service-panel { grid-template-columns: 1fr; gap: 42px; }
  .article-sidebar { position: static; grid-template-columns: repeat(2,1fr); }
  .process-grid { grid-template-columns: repeat(2,1fr); }
  .process-grid article:nth-child(2) { border-right: 0; }
  .process-grid article:nth-child(3) { padding-left: 0; }
  .national-panel { grid-template-columns: 1fr; }
  .national-panel-image { min-height: 360px; }
  .national-panel-copy { padding: 40px; }
  .resource-grid { grid-template-columns: repeat(2,1fr); }
  .notice-card, .section-cta { grid-template-columns: 1fr; gap: 25px; }
  .section-cta-wrap { padding-bottom: 76px; }
  .section-cta .cta-actions { justify-content: flex-start; }
  .planner-layout { margin-top: -105px; }
  .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; gap: 35px; }
}

@media (max-width: 620px) {
  .container { width: min(100% - 28px, 1180px); }
  .launch-bar-inner { min-height: 44px; }
  .launch-bar-inner > span { display: none; }
  .launch-bar-inner { justify-content: center; }
  .nav-shell { min-height: 72px; }
  .brand { min-width: 0; }
  .brand-mark { width: 46px; height: 46px; }
  .brand-words span { font-size: .69rem; }
  .brand-words strong { font-size: 1.02rem; }
  .desktop-quote { display: none; }
  .header-phone span { display: none; }
  .header-phone { margin-right: 4px; padding: 10px; }
  .home-hero-grid { padding-block: 65px; }
  .home-hero h1 { font-size: 3.15rem; }
  .home-hero-shade { background: linear-gradient(90deg,#061426f5,#061426b8),linear-gradient(0deg,#061426aa,transparent); }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero-review-card { padding: 23px; }
  .coverage-tab-list { grid-template-columns: 1fr; }
  .coverage-tab-panel { grid-template-columns: 1fr; padding: 28px; }
  .coverage-tab-panel .text-link { grid-column: 1; }
  .audience-grid, .product-card-grid, .resource-grid, .claims-steps, .article-feature-grid, .article-sidebar { grid-template-columns: 1fr; }
  .article-hero { padding: 64px 0; }
  .article-hero h1 { font-size: 2.75rem; }
  .article-copy p { font-size: 1rem; }
  .audience-card, .product-card { min-height: 0; }
  .process-grid { grid-template-columns: 1fr; }
  .process-grid article, .process-grid article:not(:first-child), .process-grid article:nth-child(3) { padding: 26px 0; border-right: 0; border-bottom: 1px solid #ffffff20; }
  .process-grid article:last-child { border-bottom: 0; }
  .national-panel-image, .about-image { min-height: 300px; }
  .national-panel-copy { padding: 30px 24px; }
  .page-hero { min-height: 540px; }
  .page-hero h1 { font-size: 2.9rem; }
  .detail-hero { padding: 72px 0; }
  .coverage-options, .planner-result ul { grid-template-columns: 1fr; }
  .planner-summary { grid-template-columns: auto 1fr; }
  .planner-summary .button { grid-column: 1 / -1; }
  .planner-card, .contact-status { padding: 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; }
  .footer-grid > div:last-child { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; gap: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

.area-tags a:hover { border-color: var(--navy-800); text-decoration: underline; }
.area-tags a:focus-visible { outline: 3px solid var(--navy-800); outline-offset: 3px; }

:focus-visible { outline: 3px solid #9a6818; outline-offset: 4px; }
main { scroll-margin-top: 100px; }
.planner-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 18px; }
.license-note { padding-block: 0 24px; }

.community-breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; padding-block: 18px; color: var(--navy-800); font-size: .875rem; }
.community-breadcrumbs a { text-decoration: underline; }
/* Native WordPress and accessible HTML controls. */
[hidden] { display: none !important; }
.nis-menu { display:flex; align-items:center; gap:clamp(14px,1.6vw,25px); list-style:none; padding:0; margin:0; }
.nis-menu li { position:relative; }
.nis-menu .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:220px; padding:14px; margin:0; list-style:none; background:white; box-shadow:0 8px 20px #0002; }
.nis-menu li:hover > .sub-menu,.nis-menu li:focus-within > .sub-menu { display:block; }
.nis-menu .sub-menu a { display:block; padding:8px; }
.mobile-nav .nis-menu { display:block; width:100%; }
.mobile-nav .nis-menu a { display:block; padding:10px; }
.mobile-nav .sub-menu { display:block; position:static; box-shadow:none; padding:0 0 0 18px; }
.coverage-tab-trigger { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.coverage-tab-trigger,.planner-tabs button { cursor:pointer; font:inherit; min-height:48px; padding:12px 18px; border:1px solid #dce3e8; background:#f1f4f6; color:var(--navy-900); border-radius:8px; }
.planner-tabs button[aria-selected="true"] { background:var(--navy-900); color:#fff; }
.coverage-tab-trigger[aria-selected="true"] { background:var(--navy-900); color:#fff; }
.faq-trigger { cursor:pointer; display:list-item; padding:20px 0; font-weight:750; }
.faq-content { padding-bottom:12px; }
.button:disabled { cursor:not-allowed; opacity:.5; transform:none; }
.nis-menu a { overflow-wrap:normal; }
.admin-bar .site-header { top:32px; }
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}
@media(min-width:1041px){#nis-mobile-nav{display:none!important}}
@media(max-width:1040px){body:not(.nis-js) #nis-mobile-nav{display:block!important}body:not(.nis-js) .mobile-menu-button{display:none}}

.nis-business-hours { margin-block:20px; }
.nis-business-hours h3 { font-family:inherit; font-size:1rem; margin-bottom:8px; }
.site-footer .nis-business-hours h3 { color:var(--gold-400); }


/* NIS 1.1 conversion forms and commercial depth */
.lead-form-shell{margin:32px auto;padding:clamp(22px,4vw,42px);border:1px solid var(--border);border-radius:22px;background:linear-gradient(180deg,#fff 0%,#f8f3e8 100%);box-shadow:0 18px 48px rgba(6,20,38,.08)}
.lead-form-intro{max-width:780px;margin-bottom:24px}.lead-form-intro h2{margin:.25rem 0 .65rem}.micro-trust{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:14px;font-weight:700;color:var(--navy-800)}
.nis-lead-form{display:grid;gap:18px}.nis-lead-form label,.nis-lead-form fieldset{display:grid;gap:7px;font-weight:700;color:var(--ink)}.nis-lead-form input,.nis-lead-form select,.nis-lead-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--input);border-radius:10px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}.nis-lead-form input:focus,.nis-lead-form select:focus,.nis-lead-form textarea:focus{outline:3px solid rgba(214,166,71,.28);border-color:var(--gold-500)}
.form-grid{display:grid;gap:16px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.checkbox-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-card,.check-row{display:flex!important;gap:9px!important;align-items:flex-start!important}.check-card{border:1px solid var(--border);border-radius:10px;padding:11px;background:#fff}.check-card input,.check-row input{width:auto;margin-top:3px}.consent-box{display:grid;gap:12px;padding:16px;border-radius:12px;background:#fff;border:1px solid var(--border)}.submit-wide{width:100%;justify-content:center}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}.form-notice{padding:14px 16px;border-radius:10px;margin:0 0 18px}.form-notice.success{background:#eaf7ef;border:1px solid #99d5ad}.form-notice.error{background:#fff1f0;border:1px solid #f0a19a}
.commercial-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.commercial-link-grid a{display:block;padding:18px;border:1px solid var(--border);border-radius:14px;background:#fff;text-decoration:none;color:var(--ink)}.commercial-link-grid a:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(6,20,38,.08)}.commercial-link-grid strong{display:block;color:var(--navy-800);margin-bottom:6px}.evidence-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:24px 0}.evidence-strip>div{padding:16px;border-radius:12px;background:#fff;border:1px solid var(--border)}
@media(max-width:900px){.form-grid.four,.commercial-link-grid,.evidence-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.form-grid.two,.form-grid.four,.commercial-link-grid,.evidence-strip,.checkbox-grid{grid-template-columns:1fr}.lead-form-shell{border-radius:14px;padding:20px 15px}}

.nis-context-disclosure{margin:1.25rem auto;padding:1rem 1.1rem;border:1px solid var(--gold-200);border-radius:var(--radius);background:var(--cream);font-size:.94rem;line-height:1.55}
.footer-legal-links{margin-top:.75rem}
.footer-legal-links a{text-decoration:underline;text-underline-offset:3px}

.protection-cross-sell{border-top:1px solid var(--border);}

.city-link-grid{columns:3;column-gap:2rem}.city-link-grid li{break-inside:avoid;margin:.35rem 0}@media(max-width:760px){.city-link-grid{columns:1}}

.nis-local-depth{border-top:1px solid var(--border)}
.nis-local-depth .cta-panel{margin:2rem 0;padding:1.35rem;border-radius:var(--radius);background:var(--navy);color:#fff}
.nis-local-depth .cta-panel h3{color:#fff;margin-top:0}
.nis-local-depth .cta-panel p{color:#fff}
.nis-next-steps{padding-top:1.5rem;padding-bottom:1.5rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.nis-next-steps p{line-height:2}

/* Keep descriptive navigation labels readable; use the compact menu below 1280px. */
@media (min-width:1280px) {
 .nav-shell { gap:18px; }
 .desktop-nav .nis-menu { gap:16px; }
 .desktop-nav a { white-space:nowrap; font-size:.85rem; }
 .nav-actions .header-phone { display:none; }
 .nav-actions .desktop-quote { white-space:nowrap; }
}
@media (min-width:1041px) and (max-width:1279px) {
 .desktop-nav { display:none; }
 .mobile-menu-button { display:inline-flex; }
 #nis-mobile-nav:not([hidden]) { display:grid!important; }
 body:not(.nis-js) #nis-mobile-nav { display:grid!important; }
 body:not(.nis-js) .mobile-menu-button { display:none; }
}
