:root {
  --navy-950: #06172f;
  --navy-900: #092344;
  --navy-800: #10345c;
  --gold-500: #d9ad50;
  --gold-300: #f1d58e;
  --cream: #f8f6f0;
  --white: #ffffff;
  --ink: #10223a;
  --muted: #5f6d7c;
  --line: rgba(9, 35, 68, .13);
  --shadow: 0 22px 60px rgba(6, 23, 47, .12);
  --radius: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--white);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 16px;
  line-height: 1.65;
}
body.nav-open { overflow: hidden; }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
.container { width: min(1160px, calc(100% - 40px)); margin: 0 auto; }
.eyebrow { color: var(--gold-500); font-size: .78rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; margin: 0; line-height: 1.08; color: var(--navy-950); }
h1 { font-size: clamp(2.8rem, 6vw, 5.5rem); letter-spacing: -.045em; }
h2 { font-size: clamp(2.15rem, 4.2vw, 3.75rem); letter-spacing: -.03em; }
h3 { font-size: 1.5rem; }
p { margin: 0; }

.topbar { background: var(--navy-950); color: #dbe5ef; font-size: .83rem; }
.topbar-inner { min-height: 39px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.topbar a { color: var(--gold-300); font-weight: 700; }
.site-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.96); backdrop-filter: blur(18px); border-bottom: 1px solid var(--line); }
.nav { min-height: 86px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { display: flex; align-items: center; gap: 13px; min-width: 230px; }
.brand img { width: 62px; height: 62px; border-radius: 50%; object-fit: cover; box-shadow: 0 5px 18px rgba(6,23,47,.14); }
.brand-copy { display: grid; line-height: 1.1; }
.brand-copy strong { color: var(--navy-900); font-size: .93rem; letter-spacing: .04em; }
.brand-copy span { color: var(--muted); font-size: .75rem; letter-spacing: .08em; margin-top: 5px; }
.nav-links { display: flex; align-items: center; gap: 27px; font-size: .92rem; font-weight: 700; color: var(--navy-800); }
.nav-links a:hover, .nav-links a.active { color: #a8791d; }
.nav-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--line); background: white; border-radius: 50%; color: var(--navy-900); font-size: 1.25rem; }

.button { display: inline-flex; justify-content: center; align-items: center; gap: 10px; min-height: 50px; padding: 0 23px; border-radius: 999px; background: var(--gold-500); color: var(--navy-950); border: 1px solid var(--gold-500); font-weight: 800; box-shadow: 0 8px 24px rgba(217,173,80,.22); transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.button:hover { transform: translateY(-2px); background: #e5bd68; box-shadow: 0 12px 30px rgba(217,173,80,.29); }
.button.secondary { background: transparent; border-color: rgba(255,255,255,.45); color: white; box-shadow: none; }
.button.secondary:hover { border-color: var(--gold-300); background: rgba(255,255,255,.07); }
.button.light { background: white; border-color: white; color: var(--navy-900); box-shadow: none; }
.button.small { min-height: 44px; padding: 0 19px; }

.hero { position: relative; overflow: hidden; background: linear-gradient(125deg, var(--navy-950), #0b315b 73%, #194a78); color: white; }
.hero::before { content:""; position:absolute; inset:auto -9% -45% auto; width:680px; height:680px; border:1px solid rgba(241,213,142,.22); border-radius:50%; box-shadow: 0 0 0 55px rgba(241,213,142,.035), 0 0 0 110px rgba(241,213,142,.025); }
.hero-grid { min-height: 670px; display: grid; grid-template-columns: 1.1fr .9fr; align-items: center; gap: 65px; padding: 76px 0; position: relative; z-index: 1; }
.hero h1 { color: white; max-width: 780px; }
.hero h1 em { color: var(--gold-300); font-style: normal; }
.hero-copy > p { margin-top: 25px; max-width: 655px; color: #d8e2ed; font-size: 1.12rem; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 13px; margin-top: 35px; }
.hero-proof { display: flex; gap: 28px; margin-top: 42px; padding-top: 25px; border-top: 1px solid rgba(255,255,255,.18); color: #d8e2ed; font-size: .9rem; }
.hero-proof strong { display: block; color: white; font-size: 1.1rem; }
.hero-mark { width:min(100%,470px); margin:0 auto; padding:28px; border:1px solid rgba(241,213,142,.35); border-radius:32px; background:linear-gradient(145deg,rgba(255,255,255,.11),rgba(255,255,255,.035)); box-shadow:0 30px 80px rgba(0,0,0,.24); backdrop-filter:blur(12px); }
.hero-mark-logo { width:200px; height:200px; margin:-78px auto 24px; border-radius:50%; padding:8px; background:white; box-shadow:0 20px 50px rgba(0,0,0,.25); }
.hero-mark-logo img { width:100%; height:100%; border-radius:50%; object-fit:cover; }
.hero-mark-copy { padding:8px 8px 4px; }
.hero-mark-copy h2 { color:white; font-size:clamp(1.8rem,3vw,2.6rem); margin:8px 0 24px; text-align:center; }
.hero-mark-copy .eyebrow { display:block; text-align:center; }
.hero-mark-copy ul { list-style:none; margin:0; padding:0; display:grid; gap:11px; }
.hero-mark-copy li { border-top:1px solid rgba(255,255,255,.16); padding-top:11px; color:#dce6f0; font-weight:700; }

.enrollment-section { position:relative; overflow:hidden; padding:42px 0 20px; background:linear-gradient(110deg,#06172f 0%,#0d3762 54%,#0b2443 100%); color:white; isolation:isolate; }
.enrollment-motion { position:absolute; inset:0; z-index:-1; overflow:hidden; }
.enrollment-motion span { position:absolute; width:360px; height:360px; border-radius:50%; border:1px solid rgba(241,213,142,.28); box-shadow:0 0 0 38px rgba(241,213,142,.035),0 0 0 76px rgba(241,213,142,.025); animation:enrollmentDrift 12s ease-in-out infinite alternate; }
.enrollment-motion span:nth-child(1) { top:-230px; left:-70px; }
.enrollment-motion span:nth-child(2) { right:18%; bottom:-310px; animation-delay:-4s; animation-duration:15s; }
.enrollment-motion span:nth-child(3) { width:220px; height:220px; right:-80px; top:12px; animation-delay:-7s; animation-duration:10s; }
.enrollment-banner { display:grid; grid-template-columns:1fr 220px; gap:44px; align-items:center; padding:38px 42px; border:1px solid rgba(241,213,142,.42); border-radius:28px; background:linear-gradient(120deg,rgba(255,255,255,.12),rgba(255,255,255,.045)); box-shadow:0 28px 70px rgba(0,0,0,.22); backdrop-filter:blur(12px); transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease; }
.enrollment-banner:hover { transform:translateY(-4px); border-color:var(--gold-300); box-shadow:0 34px 80px rgba(0,0,0,.3); }
.enrollment-copy { display:grid; grid-template-columns:auto 1fr; align-items:center; column-gap:24px; }
.enrollment-kicker { grid-column:1 / -1; color:var(--gold-300); font-size:.79rem; font-weight:900; letter-spacing:.17em; text-transform:uppercase; margin-bottom:16px; }
.obamacare-badge { grid-row:2 / span 2; width:198px; min-height:145px; padding:12px; display:grid; place-items:center; background:white; border-radius:24px; box-shadow:0 15px 35px rgba(0,0,0,.2); }
.obamacare-badge img { width:100%; height:auto; object-fit:contain; margin:auto; }
.enrollment-copy h2 { color:white; font-size:clamp(2rem,4vw,3.7rem); max-width:720px; }
.enrollment-copy p { grid-column:2; color:#d7e3ee; max-width:700px; margin-top:13px; font-size:1.02rem; }
.enrollment-cta { grid-column:2; width:max-content; margin-top:22px; display:inline-flex; align-items:center; gap:12px; color:var(--navy-950); background:var(--gold-300); border-radius:999px; padding:12px 20px; font-weight:900; }
.enrollment-cta b { font-size:1.3rem; line-height:1; }
.enrollment-qr { display:flex; flex-direction:column; align-items:center; text-align:center; }
.qr-frame { background:white; padding:10px; border-radius:18px; box-shadow:0 16px 40px rgba(0,0,0,.26); animation:qrPulse 2.8s ease-in-out infinite; }
.qr-frame img { width:148px; height:148px; image-rendering:auto; }
.enrollment-qr strong { color:white; margin-top:14px; }
.enrollment-qr span { color:#bcd0e2; font-size:.78rem; }
.enrollment-disclaimer { color:#aebfd0; text-align:center; font-size:.72rem; padding:13px 20px 0; }
@keyframes enrollmentDrift { from { transform:translate3d(-12px,-8px,0) scale(.95); } to { transform:translate3d(24px,18px,0) scale(1.08); } }
@keyframes qrPulse { 0%,100% { transform:scale(1); } 50% { transform:scale(1.035); } }

.enrollment-float { position:fixed; left:22px; bottom:22px; z-index:29; display:grid; gap:1px; padding:13px 20px; border:1px solid rgba(255,255,255,.45); border-radius:18px; background:linear-gradient(120deg,#112e69,#126ca1); color:white; text-align:left; box-shadow:0 16px 45px rgba(6,23,47,.34); cursor:pointer; transition:transform .2s ease,box-shadow .2s ease; animation:floatAttention 4s ease-in-out infinite; }
.enrollment-float:hover { transform:translateY(-3px); box-shadow:0 20px 52px rgba(6,23,47,.42); }
.enrollment-float span { color:#dcecf8; font-size:.74rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.enrollment-float strong { font-size:.94rem; }
.enrollment-modal[hidden] { display:none; }
.enrollment-modal { position:fixed; inset:0; z-index:100; display:grid; place-items:center; padding:22px; }
.enrollment-modal-backdrop { position:absolute; inset:0; background:rgba(2,11,24,.76); backdrop-filter:blur(9px); animation:modalFade .25s ease both; }
.enrollment-dialog { position:relative; width:min(920px,100%); max-height:min(720px,calc(100vh - 44px)); overflow:auto; display:grid; grid-template-columns:.88fr 1.12fr; border:1px solid rgba(255,255,255,.35); border-radius:28px; background:white; box-shadow:0 36px 100px rgba(0,0,0,.44); animation:modalRise .42s cubic-bezier(.2,.8,.2,1) both; }
.enrollment-close { position:absolute; right:14px; top:14px; z-index:3; width:43px; height:43px; display:grid; place-items:center; border:1px solid rgba(9,35,68,.16); border-radius:50%; background:rgba(255,255,255,.94); color:var(--navy-900); font-size:1.8rem; line-height:1; cursor:pointer; box-shadow:0 8px 22px rgba(6,23,47,.14); }
.enrollment-close-mobile { display:none; }
.enrollment-dialog-visual { position:relative; min-height:520px; display:grid; place-items:center; padding:55px 34px; overflow:hidden; background:radial-gradient(circle at 50% 35%,#fff 0 24%,#eff8ff 25% 43%,transparent 44%),linear-gradient(145deg,#082956,#0d6e9f); }
.enrollment-dialog-visual::before,.enrollment-dialog-visual::after { content:""; position:absolute; border:1px solid rgba(255,255,255,.24); border-radius:50%; animation:campaignOrbit 9s linear infinite; }
.enrollment-dialog-visual::before { width:360px; height:360px; }
.enrollment-dialog-visual::after { width:460px; height:460px; animation-direction:reverse; animation-duration:13s; }
.enrollment-dialog-visual img { position:relative; z-index:1; width:min(350px,90%); height:auto; object-fit:contain; margin:auto; filter:drop-shadow(0 18px 28px rgba(0,0,0,.18)); }
.enrollment-live { position:absolute; top:24px; left:24px; z-index:2; padding:8px 12px; border-radius:999px; background:#f5222d; color:white; font-size:.72rem; font-weight:900; letter-spacing:.12em; box-shadow:0 8px 24px rgba(245,34,45,.35); }
.enrollment-live::before { content:""; display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:white; animation:livePulse 1.4s ease infinite; }
.enrollment-date-card { position:absolute; left:26px; bottom:25px; z-index:2; display:grid; grid-template-columns:auto auto; align-items:center; gap:0 10px; padding:14px 17px; border-radius:16px; background:white; color:var(--navy-950); box-shadow:0 16px 35px rgba(0,0,0,.24); transform:rotate(-2deg); }
.enrollment-date-card strong { align-self:end; color:#e42531; font-size:.8rem; letter-spacing:.12em; }
.enrollment-date-card b { grid-row:1 / span 2; grid-column:2; font-size:2.45rem; line-height:1; }
.enrollment-date-card span { font-size:.72rem; font-weight:800; color:var(--muted); }
.enrollment-dialog-copy { display:flex; flex-direction:column; justify-content:center; padding:62px 54px 48px; }
.enrollment-dialog-copy h2 { margin-top:10px; font-size:clamp(2.2rem,4.4vw,3.7rem); }
.enrollment-dialog-copy > p { margin-top:18px; color:var(--muted); }
.enrollment-dialog-copy ul { list-style:none; display:grid; gap:10px; margin:22px 0 0; padding:0; color:var(--navy-800); font-weight:750; }
.enrollment-dialog-copy li::before { content:"✓"; display:inline-grid; place-items:center; width:23px; height:23px; margin-right:9px; border-radius:50%; background:#eaf4fb; color:#086b9e; font-size:.72rem; }
.enrollment-dialog-actions { display:grid; gap:12px; margin-top:27px; }
.enrollment-primary { background:#e52430; border-color:#e52430; color:white; box-shadow:0 10px 28px rgba(229,36,48,.22); }
.enrollment-primary:hover { background:#c91723; }
.enrollment-phone { text-align:center; color:var(--navy-800); font-weight:900; }
.enrollment-dialog-copy .enrollment-private-note { margin-top:22px; padding-top:17px; border-top:1px solid var(--line); font-size:.72rem; line-height:1.5; color:#6c7784; }
body.modal-open { overflow:hidden; }
@keyframes modalFade { from { opacity:0; } to { opacity:1; } }
@keyframes modalRise { from { opacity:0; transform:translateY(24px) scale(.97); } to { opacity:1; transform:none; } }
@keyframes campaignOrbit { from { transform:rotate(0deg) scale(.95); } 50% { transform:rotate(180deg) scale(1.06); } to { transform:rotate(360deg) scale(.95); } }
@keyframes livePulse { 50% { opacity:.38; transform:scale(.8); } }
@keyframes floatAttention { 0%,82%,100% { transform:translateY(0); } 88% { transform:translateY(-6px); } 94% { transform:translateY(0); } }

.trust-strip { border-bottom: 1px solid var(--line); background: var(--white); }
.trust-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.trust-item { padding: 25px 24px; border-right: 1px solid var(--line); text-align: center; color: var(--navy-800); font-weight: 800; font-size: .91rem; }
.trust-item:last-child { border-right: 0; }
.trust-item span { color: var(--gold-500); margin-right: 7px; }

.section { padding: 105px 0; }
.section.soft { background: var(--cream); }
.section.dark { background: var(--navy-950); color: white; }
.section.dark h2, .section.dark h3 { color: white; }
.section-heading { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: end; margin-bottom: 50px; }
.section-heading p { color: var(--muted); max-width: 650px; font-size: 1.04rem; }
.section.dark .section-heading p { color: #b9c9d9; }

.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.service-card { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 31px; min-height: 285px; display: flex; flex-direction: column; transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.service-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: rgba(217,173,80,.55); }
.service-number { width: 45px; height: 45px; border-radius: 50%; background: #f7edda; color: #9a6a0e; display:grid; place-items:center; font-size:.75rem; font-weight:900; letter-spacing:.08em; margin-bottom:24px; }
.service-card p { color: var(--muted); margin: 14px 0 24px; }
.text-link { margin-top: auto; color: #96680d; font-weight: 800; }
.text-link::after { content:" →"; }

.split { display:grid; grid-template-columns: 1fr 1fr; gap: 80px; align-items: center; }
.feature-photo { position: relative; min-height: 570px; border-radius: 26px; overflow: hidden; box-shadow: var(--shadow); background:#e8edf4; }
.feature-photo img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; object-position:center 12%; }
.feature-card { position:absolute; right:20px; bottom:20px; left:20px; background:rgba(6,23,47,.94); color:white; padding:23px 25px; border-radius:17px; backdrop-filter:blur(10px); }
.feature-card strong { display:block; font-family:Georgia,serif; font-size:1.25rem; color:var(--gold-300); }
.principles-panel { background:linear-gradient(145deg,var(--navy-950),#123c68); color:white; padding:44px; border-radius:28px; box-shadow:var(--shadow); }
.principles-panel h3 { color:white; font-size:2.25rem; margin:10px 0 32px; }
.principle { display:grid; gap:3px; padding:18px 0; border-top:1px solid rgba(255,255,255,.16); }
.principle strong { color:var(--gold-300); }
.principle span { color:#cbd7e4; }
.brand-story { min-height:520px; border-radius:28px; background:linear-gradient(145deg,var(--navy-950),#123c68); color:white; padding:48px; display:grid; align-content:center; justify-items:center; text-align:center; box-shadow:var(--shadow); }
.brand-story img { width:min(280px,80%); border-radius:50%; box-shadow:0 18px 45px rgba(0,0,0,.27); margin-bottom:30px; }
.brand-story h3 { color:white; margin:9px 0 14px; font-size:2rem; }
.brand-story p { color:#cbd7e4; max-width:430px; }
.team-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:28px; }
.team-card { display:grid; grid-template-columns:.82fr 1.18fr; background:white; border:1px solid var(--line); border-radius:var(--radius); overflow:hidden; min-height:430px; box-shadow:0 14px 40px rgba(6,23,47,.08); }
.team-photo { min-height:430px; background:#e9edf2; overflow:hidden; }
.team-photo img { width:100%; height:100%; object-fit:cover; object-position:center top; }
.team-copy { padding:36px; display:flex; flex-direction:column; justify-content:center; }
.team-copy h3 { font-size:2rem; margin:10px 0 18px; }
.team-copy p { color:var(--muted); }
.copy-stack { display:grid; gap:22px; }
.copy-stack p { color:var(--muted); }
.check-list { list-style:none; margin: 5px 0 8px; padding:0; display:grid; gap:14px; }
.check-list li { display:flex; gap:13px; align-items:flex-start; color:var(--navy-800); font-weight:700; }
.check-list li::before { content:"✓"; width:26px; height:26px; flex:0 0 26px; display:grid; place-items:center; border-radius:50%; background:#f7edda; color:#946307; font-size:.78rem; }

.process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; }
.process-step { padding-top:24px; border-top:1px solid rgba(255,255,255,.22); }
.process-step span { color:var(--gold-300); font-weight:900; letter-spacing:.14em; font-size:.78rem; }
.process-step h3 { margin:14px 0 12px; }
.process-step p { color:#b9c9d9; }

.testimonial { max-width: 860px; margin: 0 auto; text-align:center; }
.testimonial blockquote { font-family:Georgia,serif; color:var(--navy-900); font-size:clamp(1.55rem,3vw,2.35rem); line-height:1.42; margin:0; }
.testimonial cite { display:block; margin-top:24px; color:var(--muted); font-style:normal; font-weight:800; }

.cta-panel { background:linear-gradient(120deg,var(--navy-950),#123c68); color:white; border-radius:30px; padding:62px; display:flex; justify-content:space-between; align-items:center; gap:40px; box-shadow:var(--shadow); position:relative; overflow:hidden; }
.cta-panel::after { content:""; position:absolute; width:300px; height:300px; border:1px solid rgba(217,173,80,.34); border-radius:50%; right:-100px; top:-155px; }
.cta-panel h2 { color:white; max-width:700px; }
.cta-panel p { color:#cbd7e4; margin-top:15px; }

.page-hero { background:var(--navy-950); color:white; padding:90px 0 82px; position:relative; overflow:hidden; }
.page-hero h1 { color:white; max-width:850px; }
.page-hero p { color:#cbd7e4; max-width:720px; font-size:1.08rem; margin-top:24px; }
.page-hero::after { content:""; position:absolute; right:-80px; bottom:-190px; width:430px; height:430px; border:1px solid rgba(217,173,80,.32); border-radius:50%; }
.detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.detail-card { border:1px solid var(--line); border-radius:var(--radius); padding:34px; background:white; }
.detail-card p { color:var(--muted); margin-top:13px; }
.detail-card ul { margin:18px 0 0; padding-left:20px; color:var(--muted); }
.notice { margin-top:35px; padding:24px 27px; background:#f7edda; border-left:4px solid var(--gold-500); color:#5b4a29; border-radius:0 14px 14px 0; }

.contact-grid { display:grid; grid-template-columns:.78fr 1.22fr; gap:55px; align-items:start; }
.contact-card { background:var(--navy-950); color:white; border-radius:var(--radius); padding:36px; }
.contact-card h2 { color:white; font-size:2.2rem; }
.contact-card p { color:#cbd7e4; margin:17px 0 28px; }
.contact-list { display:grid; gap:19px; }
.contact-list a, .contact-list div { border-top:1px solid rgba(255,255,255,.16); padding-top:18px; }
.contact-list small { display:block; color:var(--gold-300); font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.contact-list strong { display:block; margin-top:5px; }
.consultation-panel { border:1px solid var(--line); border-radius:var(--radius); padding:28px; box-shadow:var(--shadow); background:white; }
.consultation-panel h2 { font-size:2rem; }
.consultation-panel > p { margin-top:12px; color:var(--muted); }
.consultation-embed { display:block; width:100%; height:765px; border:0; margin-top:12px; background:white; }
.consultation-panel .consultation-note { font-size:.875rem; line-height:1.6; }
.consultation-note a { color:var(--navy-800); text-decoration:underline; font-weight:700; }
.form { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.field { display:grid; gap:7px; }
.field.full { grid-column:1 / -1; }
.field label { font-weight:800; color:var(--navy-800); font-size:.9rem; }
.field input, .field select, .field textarea { width:100%; border:1px solid #ccd5df; border-radius:12px; min-height:52px; padding:12px 14px; color:var(--ink); background:white; }
.field textarea { min-height:135px; resize:vertical; }
.field input:focus, .field select:focus, .field textarea:focus { outline:3px solid rgba(217,173,80,.2); border-color:var(--gold-500); }
.consent { grid-column:1 / -1; display:flex; align-items:flex-start; gap:10px; color:var(--muted); font-size:.82rem; }
.consent input { margin-top:5px; }
.form-status { grid-column:1 / -1; min-height:24px; color:#176b42; font-weight:700; }

.site-footer { background:#041226; color:#b8c6d6; padding:70px 0 24px; }
.footer-grid { display:grid; grid-template-columns:1.25fr .75fr .75fr; gap:60px; }
.footer-brand { display:flex; gap:17px; align-items:center; color:white; }
.footer-brand img { width:76px; height:76px; border-radius:50%; object-fit:cover; }
.footer-copy { max-width:430px; margin-top:20px; }
.footer-col h3 { color:white; font-family:inherit; font-size:.92rem; text-transform:uppercase; letter-spacing:.12em; margin-bottom:18px; }
.footer-col { display:grid; align-content:start; gap:10px; }
.footer-col a:hover { color:var(--gold-300); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.12); margin-top:50px; padding-top:23px; display:flex; justify-content:space-between; gap:25px; font-size:.82rem; }

.reveal { opacity:0; transform:translateY(18px); transition:opacity .65s ease, transform .65s ease; }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 900px) {
  .topbar-inner span:first-child { display:none; }
  .topbar-inner { justify-content:center; }
  .nav-toggle { display:block; }
  .nav-links { display:none; position:fixed; inset:126px 0 auto 0; background:white; padding:28px 20px 38px; flex-direction:column; align-items:stretch; box-shadow:0 25px 35px rgba(6,23,47,.14); }
  .nav-links.open { display:flex; }
  .nav-links .button { text-align:center; }
  .hero-grid { grid-template-columns:1fr; padding:65px 0 85px; }
  .hero-copy { text-align:center; }
  .hero-copy > p { margin-left:auto; margin-right:auto; }
  .hero-actions, .hero-proof { justify-content:center; }
  .hero-mark { margin-top:50px; }
  .enrollment-banner { grid-template-columns:1fr 180px; gap:28px; padding:34px; }
  .enrollment-copy { grid-template-columns:120px 1fr; column-gap:20px; }
  .obamacare-badge { width:150px; min-height:112px; }
  .qr-frame img { width:130px; height:130px; }
  .enrollment-dialog { grid-template-columns:.8fr 1.2fr; }
  .enrollment-dialog-copy { padding:56px 38px 42px; }
  .section-heading { grid-template-columns:1fr; gap:18px; }
  .service-grid { grid-template-columns:repeat(2,1fr); }
  .split, .contact-grid { grid-template-columns:1fr; }
  .feature-photo { min-height:520px; }
  .team-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
  .footer-grid > :first-child { grid-column:1 / -1; }
}

@media (max-width: 620px) {
  .container { width:min(100% - 28px,1160px); }
  .brand-copy span { display:none; }
  .brand img { width:52px; height:52px; }
  .nav { min-height:72px; }
  .nav-links { inset:111px 0 auto 0; }
  h1 { font-size:clamp(2.55rem,13vw,3.65rem); }
  .hero-grid { gap:55px; min-height:auto; }
  .hero-proof { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .hero-mark-logo { width:170px; height:170px; }
  .enrollment-section { padding-top:26px; }
  .enrollment-banner { grid-template-columns:1fr; padding:27px 22px; text-align:center; }
  .enrollment-copy { display:flex; flex-direction:column; }
  .enrollment-kicker { margin-bottom:13px; }
  .obamacare-badge { width:180px; min-height:125px; margin-bottom:22px; }
  .enrollment-copy p { margin-top:14px; }
  .enrollment-cta { margin-left:auto; margin-right:auto; }
  .enrollment-qr { padding-top:24px; border-top:1px solid rgba(255,255,255,.15); }
  .trust-grid { grid-template-columns:1fr 1fr; }
  .trust-item:nth-child(2) { border-right:0; }
  .trust-item:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .section { padding:76px 0; }
  .service-grid, .detail-grid, .process-grid { grid-template-columns:1fr; }
  .team-card { grid-template-columns:1fr; }
  .team-photo { min-height:390px; max-height:520px; }
  .service-card { min-height:auto; }
  .cta-panel { padding:40px 28px; flex-direction:column; align-items:flex-start; }
  .form { grid-template-columns:1fr; }
  .consultation-panel { padding:20px 14px; }
  .consultation-embed { height:845px; }
  .field.full, .consent, .form-status { grid-column:auto; }
  .footer-grid { grid-template-columns:1fr; gap:35px; }
  .footer-grid > :first-child { grid-column:auto; }
  .footer-bottom { flex-direction:column; }
  .enrollment-float { left:12px; bottom:12px; max-width:calc(100% - 102px); }
  .enrollment-modal { padding:10px; align-items:center; }
  .enrollment-dialog { grid-template-columns:1fr; min-height:0; max-height:calc(100dvh - 20px); overflow-y:auto; border-radius:24px 24px 18px 18px; }
  .enrollment-close { display:none; }
  .enrollment-close-mobile { position:absolute; z-index:6; display:flex; align-items:center; justify-content:center; gap:8px; top:calc(16px + env(safe-area-inset-top, 0px)); right:calc(16px + env(safe-area-inset-right, 0px)); min-height:48px; padding:8px 14px; border:1px solid var(--line); border-radius:999px; background:white; color:var(--navy-950); box-shadow:0 8px 26px rgba(0,0,0,.25); font-weight:800; cursor:pointer; }
  .enrollment-close-mobile span { font-size:1.5rem; line-height:1; }
  .enrollment-close-mobile:focus-visible { outline:3px solid var(--gold-500); outline-offset:3px; }
  .enrollment-dialog-visual { min-height:225px; padding:28px; }
  .enrollment-live { top:76px; left:14px; }
  .enrollment-dialog-visual img { width:220px; }
  .enrollment-live { top:14px; left:14px; }
  .enrollment-date-card { left:14px; bottom:13px; padding:9px 12px; }
  .enrollment-date-card b { font-size:1.8rem; }
  .enrollment-dialog-copy { padding:35px 24px 28px; }
  .enrollment-dialog-copy h2 { font-size:2.25rem; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { transition:none !important; animation:none !important; }
  .reveal { opacity:1; transform:none; }
}

/* Community event announcement and expanded navigation. */
.opening-announcement{background:#fbf2de;border-bottom:1px solid #e1c68c;padding:16px 0}.opening-announcement>.container{display:flex;justify-content:space-between;align-items:center;gap:20px}.opening-announcement strong{display:block;color:var(--navy-950)}.opening-announcement span{display:block;font-size:.875rem;color:#536174}.nav-links{gap:18px}
@media(min-width:901px) and (max-width:1120px){.brand-copy{display:none}.brand{min-width:62px}.nav{gap:18px}.nav-links{gap:16px}}
@media(max-width:620px){.opening-announcement>.container{align-items:flex-start;flex-direction:column;gap:12px}}

/* Grand Opening invitation */
.event-float { background:linear-gradient(120deg,#0c2544,#183d63); border-color:#dfb653; }
.event-float[hidden] { display:none; }
.event-float span { color:#f1d58e; }
.event-modal .enrollment-dialog { grid-template-columns:.95fr 1.05fr; }
.event-modal .event-invitation { padding:20px; min-height:0; background:#f7f1e6; }
.event-invitation::before,.event-invitation::after { display:none; }
.event-modal .event-invitation img { width:100%; max-height:610px; object-fit:contain; filter:none; border-radius:8px; }
.event-modal .enrollment-dialog-copy { padding:48px 38px 36px; }
.event-modal .enrollment-dialog-copy h2 { font-size:clamp(2rem,3.6vw,3rem); }
.event-popup-details { display:grid; gap:6px; margin-top:23px; padding:18px 0; border-block:1px solid var(--line); color:var(--navy-900); }
.event-popup-details strong { font-size:1.1rem; }
.event-popup-details address { margin-top:7px; font-style:normal; line-height:1.6; }
.event-primary { background:var(--gold-300); border-color:var(--gold-300); color:var(--navy-950); }
.event-calendar { text-align:center; font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.event-confetti { position:fixed; inset:0; z-index:110; overflow:hidden; pointer-events:none; }
.event-confetti i { position:absolute; top:-25px; width:9px; height:15px; opacity:0; animation:eventConfettiFall 4s linear forwards; }
.event-confetti i:nth-child(3n) { border-radius:50%; width:10px; height:10px; }
@keyframes eventConfettiFall { 0% { opacity:1; transform:translate3d(0,0,0) rotate(0); } 85% { opacity:1; } 100% { opacity:0; transform:translate3d(var(--drift),110vh,0) rotate(var(--turn)); } }
@media (max-width:620px) {
  .event-modal .enrollment-dialog { grid-template-columns:1fr; }
  .event-modal .event-invitation { padding:18px 24px; }
  .event-modal .event-invitation img { max-height:250px; }
  .event-modal .enrollment-dialog-copy { padding:26px 24px; }
  .event-modal .enrollment-close-mobile { position:fixed; }
}
@media (prefers-reduced-motion:reduce) { .event-confetti { display:none; } .event-float { animation:none; } }

.careers-hero { background:linear-gradient(120deg,#06172f,#173a5a); color:white; }
.careers-hero h1 { color:white; }
.careers-hero p { color:#d8e3ed; }
.careers-hero .button { margin-top:25px; }
.careers-layout { display:grid; grid-template-columns:1.1fr .9fr; gap:64px; align-items:start; }
.career-description > p { margin-top:20px; color:var(--muted); }
.career-description h3 { margin-top:32px; margin-bottom:12px; font-size:1.35rem; }
.career-description ul { padding-left:22px; display:grid; gap:10px; color:var(--muted); }
.career-tags { display:flex; flex-wrap:wrap; gap:8px; margin:22px 0; }
.career-tags span { background:#f6f0e2; padding:7px 12px; border-radius:30px; color:var(--navy-800); font-size:.8rem; font-weight:750; }
.career-growth { margin-top:32px; padding:25px; border-left:3px solid var(--gold-500); background:var(--surface); }
.career-growth h3 { margin-top:0; }
.career-apply { border:1px solid var(--line); border-radius:24px; padding:30px 20px; background:white; box-shadow:0 16px 45px rgba(6,23,47,.06); scroll-margin-top:110px; }
.career-apply > p { color:var(--muted); margin:15px 0; }
.career-apply iframe { border:0; width:100%; min-height:720px; }
.career-help { text-align:center; font-size:.85rem; overflow-wrap:anywhere; }
@media(max-width:1100px) { .nav-links { gap:14px; } .nav-links > a { font-size:.85rem; } }
@media(max-width:900px) { .careers-layout { grid-template-columns:1fr; gap:36px; } }

.career-apply iframe { min-height:1150px; }

/* Scrolling enrollment announcement */
.enrollment-ticker{position:relative;overflow:hidden;padding:12px 86px 12px 0}
.enrollment-ticker-track{display:flex;width:max-content;animation:reijEnrollmentScroll 32s linear infinite;will-change:transform}
.enrollment-ticker-group{display:flex;align-items:center;justify-content:center;gap:28px;flex-shrink:0;min-width:100vw;padding:0 36px;white-space:nowrap}
.enrollment-ticker strong,.enrollment-ticker span{display:inline-block}
.enrollment-ticker .button{flex-shrink:0}
.enrollment-ticker-pause{position:absolute;right:12px;top:50%;transform:translateY(-50%);z-index:1;border:1px solid #d5ba7f;background:#fbf2de;color:var(--navy-950);border-radius:999px;padding:8px 12px;cursor:pointer;font:inherit;font-size:.8rem}
.enrollment-ticker:hover .enrollment-ticker-track,.enrollment-ticker:focus-within .enrollment-ticker-track,.enrollment-ticker.is-paused .enrollment-ticker-track{animation-play-state:paused}
@keyframes reijEnrollmentScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:620px){.enrollment-ticker-group{gap:20px;padding:0 28px}.enrollment-ticker strong{font-size:.95rem}.enrollment-ticker-track{animation-duration:30s}}
@media(prefers-reduced-motion:reduce){.enrollment-ticker{padding:16px}.enrollment-ticker-track{animation:none;width:100%}.enrollment-ticker-group{min-width:0;width:100%;white-space:normal;flex-wrap:wrap;gap:12px;padding:0;text-align:center}.enrollment-ticker-group[aria-hidden="true"],.enrollment-ticker-pause{display:none}}

/* Prominent branded enrollment announcement */
.enrollment-ticker{background:linear-gradient(100deg,#06172f,#123b5d);border-top:3px solid #d9ad50;border-bottom:3px solid #d9ad50;padding:17px 88px 17px 0;box-shadow:0 6px 20px rgba(6,23,47,.12)}
.enrollment-ticker-group{gap:24px;padding:0 32px;min-height:46px}
.enrollment-ticker .ticker-alert-badge{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;background:#e9c66e;color:#06172f;border-radius:6px;padding:11px 14px;font-weight:900;font-size:.78rem;letter-spacing:.09em;line-height:1.2}
.enrollment-ticker .ticker-alert-badge svg{flex-shrink:0}
.enrollment-ticker strong{color:#fff;font-size:1.05rem;font-weight:900;letter-spacing:.055em;line-height:1.3}
.enrollment-ticker .ticker-date{color:#f3d790;font-size:1rem;font-weight:900;letter-spacing:.035em}
.enrollment-ticker .ticker-detail{color:#e6edf5;font-size:.9rem}
.enrollment-ticker .button{background:#e9c66e;border-color:#e9c66e;color:#06172f;padding:12px 20px;font-size:.9rem;font-weight:900;box-shadow:none}
.enrollment-ticker .button:hover{background:#ffe5a6;border-color:#ffe5a6}
.enrollment-ticker-pause{right:10px;background:#06172f;color:#f3d790;border-color:#728193;box-shadow:0 0 0 10px #06172f}
@media(max-width:620px){.enrollment-ticker{padding-top:14px;padding-bottom:14px}.enrollment-ticker-group{gap:20px}.enrollment-ticker strong{font-size:.95rem}.enrollment-ticker .ticker-date{font-size:.92rem}}
@media(prefers-reduced-motion:reduce){.enrollment-ticker{padding:20px 14px}.enrollment-ticker-group{gap:14px}.enrollment-ticker strong{width:100%}}

/* Entire enrollment banner links to coverage options. */
.enrollment-ticker-link{display:block;color:inherit;text-decoration:none;cursor:pointer}
.enrollment-ticker{padding-right:0}
.enrollment-ticker-link:focus-visible{outline:3px solid #fff;outline-offset:-7px}
.enrollment-ticker-link:hover .enrollment-ticker{background:linear-gradient(100deg,#0b2544,#194c70)}
.enrollment-ticker-link:focus-within .enrollment-ticker-track{animation-play-state:paused}
.enrollment-ticker .ticker-coverage-cta{display:inline-block;background:#e9c66e;color:#06172f;border:1px solid #e9c66e;border-radius:999px;padding:12px 20px;font-size:.9rem;font-weight:900;flex-shrink:0}

/* Events navigation includes the past-event gallery. */
.nav-events{position:relative}.nav-events summary{list-style:none;display:flex;align-items:center;gap:7px;cursor:pointer;color:var(--navy-800);font-size:inherit;font-weight:700;padding:8px 0}.nav-events summary::-webkit-details-marker{display:none}.nav-events summary:hover,.nav-events[open] summary{color:#a8791d}.nav-events summary svg{transition:transform .15s}.nav-events[open] summary svg{transform:rotate(180deg)}
.nav-event-submenu{position:absolute;top:calc(100% + 8px);left:-18px;min-width:195px;background:#fff;border:1px solid #e4dfd3;border-top:3px solid #d4b263;border-radius:10px;box-shadow:0 14px 35px #07172f24;padding:8px;z-index:100}.nav-event-submenu a{display:block;white-space:nowrap;padding:12px 13px;border-radius:6px;color:var(--navy-800)}.nav-event-submenu a:hover,.nav-event-submenu a:focus-visible{background:#f6f0e2;color:#825b0e}.nav-events:not([open]) .nav-event-submenu{display:none}
.footer-events-group{display:flex;flex-direction:column;gap:8px}.footer-events-group .footer-event-child{padding-left:13px;font-size:.9em}
@media(min-width:901px) and (max-width:1100px){.nav-events summary{font-size:.85rem}}
@media(max-width:900px){.nav-links{max-height:calc(100dvh - 126px);overflow-y:auto}.nav-events summary{padding:0;justify-content:space-between}.nav-event-submenu{position:static;min-width:0;margin-top:12px;padding:5px 8px;border:0;border-left:2px solid #d4b263;border-radius:0;background:#faf7ef;box-shadow:none}.nav-event-submenu a{white-space:normal;padding:11px 12px}}
@media(max-width:620px){.nav-links{max-height:calc(100dvh - 111px)}}

/* Service navigation, directory and detail pages */
.nav-service-submenu{min-width:300px;max-height:70dvh;overflow-y:auto}.nav-service-submenu a{padding:10px 13px;font-size:.88rem}.nav-service-submenu .service-overview-link{font-weight:850;border-bottom:1px solid #e4dfd3;margin-bottom:5px;color:#946c1b}.service-detail-link{display:flex;flex-direction:column;position:relative;transition:transform .2s,box-shadow .2s,border-color .2s}.service-detail-link h2{font-size:1.65rem;margin-top:14px}.service-detail-link:hover{transform:translateY(-4px);border-color:#cda953;box-shadow:0 14px 35px #07172f12}.service-detail-link:focus-visible{outline:3px solid #cda953;outline-offset:4px}.service-explore{margin-top:auto;padding-top:28px;display:flex;justify-content:space-between;color:#946c1b;font-weight:800}.service-back{display:block;color:#f0cf87;margin-bottom:32px;font-weight:700}.service-page-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:65px;align-items:start}.service-copy-block{margin-bottom:42px}.service-copy-block h2{font-size:2rem;margin-bottom:18px}.service-copy-block p,.service-inclusions,.service-steps{color:var(--muted);line-height:1.85}.service-inclusions{list-style:none;padding:0;display:grid;gap:13px}.service-inclusions li{padding:15px 20px;border-left:3px solid #d4b263;background:#f8f5ed;border-radius:0 10px 10px 0}.service-steps{padding-left:22px}.service-steps li{padding:8px 0 8px 8px}.service-appointment{position:sticky;top:118px;background:linear-gradient(145deg,#06172f,#143957);color:white;padding:32px;border-radius:22px;border-top:4px solid #d4b263;box-shadow:0 18px 45px #06172f1a}.service-appointment h2{font-size:2rem;color:white;margin:15px 0}.service-appointment>p,.service-office p{color:#d2dce8;line-height:1.75}.service-appointment .button{display:block;text-align:center;margin-top:16px;padding:15px 12px}.service-contact-button{background:transparent!important;color:#f0cf87!important;border:1px solid #d4b263!important}.service-phone{display:block;font-size:1.35rem;color:#f0cf87;font-weight:800;margin-top:26px}.service-office{margin-top:27px;padding-top:23px;border-top:1px solid #ffffff2b}.service-office p{margin-top:10px;font-size:.9rem}.service-appointment small{display:block;color:#b9c9d9;margin-top:22px;line-height:1.6}.business-links{display:grid;gap:10px}.business-links a{padding:17px 20px;border:1px solid #ded8c9;border-radius:10px;display:flex;justify-content:space-between;font-weight:700}.business-links a:hover{background:#f8f5ed}@media(max-width:900px){.service-page-layout{grid-template-columns:1fr;gap:35px}.service-appointment{position:static}.nav-service-submenu{min-width:0;max-height:none}.nav-services summary{padding:8px 0}.nav-links.open{overscroll-behavior:contain}}@media(max-width:620px){.service-page-hero{padding:55px 0}.service-copy-block h2{font-size:1.65rem}.service-appointment{padding:26px}.service-page-layout{gap:28px}.service-inclusions li{padding:13px 16px}}

.health-quote-panel{padding:32px;border:1px solid #dac58f;border-top:4px solid #d4b263;border-radius:18px;background:#faf7ef;margin-bottom:45px}.health-quote-panel h2{font-size:2rem;margin:15px 0}.health-quote-panel>p{color:var(--muted);line-height:1.8;margin-bottom:22px}.health-quote-panel>.button{display:inline-flex;gap:16px}.health-quote-qr{display:flex;width:240px;max-width:100%;flex-direction:column;align-items:center;gap:12px;margin-top:28px;color:#0a203e;font-weight:750;text-align:center}.health-quote-qr img{display:block;width:200px;height:200px;max-width:100%;object-fit:contain;box-sizing:content-box;padding:16px;background:#fff;border-radius:12px;box-shadow:0 6px 22px #07172f10}.health-quote-panel .health-quote-note{font-size:.82rem;margin:25px 0 0}@media(max-width:620px){.health-quote-panel{padding:24px}.health-quote-panel h2{font-size:1.7rem}}
