:root{--navy:#113a55;--teal:#087c82;--light:#eef5f6;--line:#d5e3e6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.55 system-ui,Arial;color:#173344}a{color:var(--teal)}.wrap{width:min(1150px,calc(100% - 36px));margin:auto}.top{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{font-size:19px;font-weight:800;text-decoration:none;color:var(--navy)}.brand small{display:block;letter-spacing:.25em;font-size:10px}nav{display:flex;gap:22px}nav a{text-decoration:none;font-size:14px;font-weight:700}.hero{background:linear-gradient(120deg,#113a55,#086c74);color:white;padding:85px 0}.hero h1{font-size:clamp(37px,5vw,65px);line-height:1.08;max-width:800px;letter-spacing:-.04em}.hero p:not(.eyebrow){max-width:690px;font-size:19px;color:#e0f1f3}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800;color:var(--teal)}.hero .eyebrow{color:#b2ebec}.cta{display:inline-block;background:#f0b85d;color:#183343;padding:14px 22px;border-radius:7px;font-weight:800;text-decoration:none;margin-top:14px}.section{padding:70px 0}.shade{background:var(--light)}h2{font-size:clamp(28px,3vw,39px);line-height:1.15;margin:8px 0 16px}h3{line-height:1.2}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;background:var(--light);padding:20px;border-radius:12px;margin-top:30px}.filters label{font-size:13px;font-weight:700}.filters input,.filters select{display:block;width:100%;padding:12px;margin-top:6px;border:1px solid #aabfc4;border-radius:6px;background:white}.filters button{align-self:end;padding:12px;border:1px solid var(--line);border-radius:6px;background:white}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.card,.guides article{padding:23px;border:1px solid var(--line);border-radius:10px;background:white}.card h3{margin:0 0 10px}.card p{font-size:14px;color:#56717d}.pill{display:inline-block;font-size:11px;background:#fff1d9;color:#76501b;border-radius:20px;padding:4px 9px;font-weight:700}.tags{font-size:12px;color:var(--teal);font-weight:700}.card a{font-weight:700;font-size:14px}.countybuttons{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:24px}.countybuttons button{background:white;border:1px solid var(--line);border-radius:6px;padding:10px;text-align:left;color:var(--navy);cursor:pointer}.countybuttons button:hover{border-color:var(--teal)}.guides{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.guides p{font-size:14px}footer{background:#0e2b3e;color:white;padding:45px 0}footer p{color:#bfd4dd}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e9a23b;outline-offset:3px}@media(max-width:850px){.cards{grid-template-columns:repeat(2,1fr)}.countybuttons{grid-template-columns:repeat(3,1fr)}.filters{grid-template-columns:1fr 1fr}}@media(max-width:580px){.top{display:block;padding:16px 0}nav{margin-top:14px;flex-wrap:wrap;gap:12px}.hero{padding:55px 0}.cards,.guides,.filters{grid-template-columns:1fr}.countybuttons{grid-template-columns:repeat(2,1fr)}.section{padding:50px 0}}

:root{--navy:#101d38;--teal:#1826a3}.hero{background:#101d38}.hero .eyebrow{color:#ff935e}.cta{background:#f26322;color:#101d38}.sponsor-banner{position:sticky;top:0;z-index:50;background:#fff;border-top:6px solid #1826a3;border-bottom:4px solid #f26322;box-shadow:0 3px 12px #101d3822;color:#14243d;font-family:Arial,sans-serif}.sponsor-inner{display:flex;align-items:center;gap:24px;padding:15px 0}.rfh-sponsor-logo{width:130px;height:auto;flex-shrink:0;display:block}.sponsor-copy{flex:1;min-width:0}.sponsor-inner p{font-size:15px;line-height:1.2;margin:0 0 5px}.sponsor-inner strong{display:block;font-size:clamp(25px,3vw,36px);font-weight:800;color:#1826a3;margin-top:3px;letter-spacing:-.025em}.rfh-slogan{display:block;font-size:16px;font-weight:750;color:#a6380a;margin-bottom:5px}.sponsor-sub{font-size:13px;display:block;color:#38465e}.sponsor-actions{display:flex;flex-direction:column;align-items:center;gap:8px;flex-shrink:0}.sponsor-cta{background:#f26322;color:#101d38;padding:13px 22px;border-radius:4px;font-size:17px;font-weight:800;text-decoration:none}.sponsor-cta:hover{background:#ff8040}.sponsor-phone{color:#1826a3;font-size:19px;font-weight:800;text-decoration:none}.card.sponsored{border:2px solid #1826a3;border-top:5px solid #f26322;background:#fff}.sponsor-tag{display:inline-block;background:#1826a3;color:#fff;font-size:11px;font-weight:800;letter-spacing:.07em;padding:5px 10px;border-radius:4px;margin-bottom:13px}.card details{font-size:13px;color:#56717d;margin:12px 0}.card summary{cursor:pointer}.card .actions{display:flex;gap:15px;flex-wrap:wrap}.card .service-area{font-size:12px}.card .pill{border-radius:6px}html{scroll-padding-top:170px}.hero{padding:65px 0}@media(max-width:700px){.sponsor-inner{gap:12px;flex-wrap:wrap;padding:10px 0}.rfh-sponsor-logo{width:80px}.sponsor-copy{flex-basis:calc(100% - 92px)}.sponsor-inner p{font-size:12px}.sponsor-inner strong{font-size:25px}.rfh-slogan{font-size:13px;margin-bottom:0}.sponsor-sub{display:none}.sponsor-actions{width:100%;flex-direction:row;justify-content:space-between;gap:10px}.sponsor-cta{padding:9px 13px;font-size:14px}.sponsor-phone{font-size:17px}.hero{padding:40px 0}html{scroll-padding-top:190px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Larger, clearer directory typography */
body{font-size:18px;color:#14243d}.brand{font-size:22px}.brand small{font-size:13px}nav a{font-size:17px}.eyebrow{font-size:18px;letter-spacing:.08em}.hero .eyebrow{font-size:clamp(22px,2.6vw,30px);letter-spacing:.035em;color:#ffad85}.hero p.hero-intro{font-size:clamp(24px,2.7vw,32px);line-height:1.4;font-weight:650;color:white;max-width:850px;margin-bottom:16px}.hero p.hero-note{font-size:18px;line-height:1.6;color:#dfe5f1;max-width:760px}h2{font-size:clamp(32px,3.8vw,46px)}h3{font-size:23px}.filters label{font-size:17px}.filters input,.filters select,.filters button{font:inherit;font-size:17px}.card p,.guides p{font-size:17px;color:#34475a;line-height:1.65}.card a{font-size:17px}.tags,.card .service-area,.card details{font-size:15px;color:#34475a}.pill,.sponsor-tag{font-size:13px}.countybuttons button{font:inherit;font-size:17px}.sponsor-sub{font-size:15px}footer small{font-size:15px}@media(max-width:700px){nav{flex-wrap:wrap;gap:14px}.top{flex-wrap:wrap;padding:16px 0}.hero p.hero-note{font-size:17px}.brand{font-size:20px}}

/* Consistent large-print treatment throughout the directory */
body{font-size:20px;font-weight:500;line-height:1.65}nav a{font-size:19px}.brand small{font-size:16px}.eyebrow{font-size:20px}h3{font-size:27px;font-weight:800}.card p,.guides p{font-size:20px;font-weight:500;color:#24364b;line-height:1.65}.card a{font-size:20px;font-weight:750}.tags,.card .service-area,.card details{font-size:18px;color:#24364b;font-weight:600}.pill,.sponsor-tag{font-size:17px;letter-spacing:.02em}.filters label{font-size:20px}.filters input,.filters select,.filters button{font-size:20px}.countybuttons button{font-size:20px;font-weight:700;padding:13px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card{overflow-wrap:anywhere}.card .actions{gap:18px}.guides{grid-template-columns:repeat(3,minmax(0,1fr))}footer strong{font-size:24px}footer p{font-size:20px;color:#e0e8f0}footer small{font-size:18px}.hero p.hero-note{font-size:20px}.sponsor-inner p{font-size:17px}.rfh-slogan,.sponsor-sub{font-size:18px}.sponsor-cta{font-size:19px}.sponsor-phone{font-size:21px}html{scroll-padding-top:210px}@media(max-width:850px){.guides{grid-template-columns:1fr}.countybuttons{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.cards{grid-template-columns:1fr}.sponsor-inner p{font-size:16px}.rfh-slogan{font-size:16px}.sponsor-cta{font-size:17px}.sponsor-phone{font-size:18px}.countybuttons{grid-template-columns:repeat(2,minmax(0,1fr))}}

.sponsor-bbb{width:230px;height:55px;overflow:hidden;flex-shrink:0}.sponsor-bbb img{display:block;width:230px;height:auto;transform:translateY(-16px)}@media(max-width:1100px){.sponsor-inner{gap:16px;flex-wrap:wrap}.sponsor-copy{flex:1}.sponsor-bbb{order:4;margin-left:auto;margin-right:auto}.sponsor-actions{margin-left:auto}}@media(max-width:700px){.sponsor-bbb{order:2}.sponsor-actions{order:3}.sponsor-bbb{width:230px;height:55px}html{scroll-padding-top:270px}}

.sponsor-sub{display:block;font-size:22px;font-weight:800;line-height:1.4;color:#101d38;margin-top:7px}@media(max-width:700px){.sponsor-sub{display:block;font-size:19px;line-height:1.35}html{scroll-padding-top:350px}}

/* Phone banner: deliberate rows, with normal page scrolling. */
@media(max-width:700px){
.sponsor-banner{position:relative;border-top-width:4px;border-bottom-width:3px}
.sponsor-inner{display:grid;grid-template-columns:68px minmax(0,1fr);gap:12px 14px;padding:16px 0;width:calc(100% - 32px)}
.rfh-sponsor-logo{grid-column:1;grid-row:1;width:68px;align-self:center}
.sponsor-copy{display:contents}
.sponsor-inner p{grid-column:2;grid-row:1;font-size:16px;margin:0;line-height:1.3}
.sponsor-inner strong{font-size:26px;line-height:1.12;letter-spacing:-.02em;margin-top:4px}
.rfh-slogan{display:none}
.sponsor-sub{grid-column:1/-1;grid-row:2;font-size:19px;line-height:1.45;margin:0;padding-top:10px;border-top:1px solid #dce1eb;text-align:center}
.sponsor-bbb{grid-column:1/-1;grid-row:3;order:initial;margin:0 auto;width:230px;height:55px}
.sponsor-actions{grid-column:1/-1;grid-row:4;order:initial;display:flex;flex-direction:column;gap:7px;margin:0;width:100%;align-items:stretch}
.sponsor-cta{display:block;text-align:center;font-size:19px;padding:12px 10px}
.sponsor-phone{font-size:21px;text-align:center}
html{scroll-padding-top:24px}
}

/* Mobile conversion and directory navigation improvements */
[hidden]{display:none!important}.card .actions a[href^="tel:"]{display:block;background:#1826a3;color:white;padding:12px 16px;border-radius:6px;text-decoration:none;text-align:center;width:100%;min-height:48px}.card .actions a{min-height:44px;display:inline-flex;align-items:center}.card.sponsored .actions a[href^="tel:"]{background:#f26322;color:#101d38}.more-button{display:block;margin:28px auto 0;padding:14px 20px;background:#1826a3;color:white;border:0;border-radius:6px;font:700 20px/1.4 Arial;min-height:48px;cursor:pointer;max-width:100%}.directory-shortcuts{text-align:center}.directory-shortcuts a{display:inline-block;padding:10px 0;font-weight:700}.footer-search{color:white;font-weight:700}.filters input,.filters select{min-width:0}.filters label{min-width:0}.card h3{scroll-margin-top:270px}@media(max-width:700px){.hero{padding:28px 0}.hero h1{font-size:38px;margin:16px 0}.hero .eyebrow{font-size:21px;margin:0}.hero p.hero-intro{font-size:24px;margin:16px 0}.section{padding:32px 0}.filters{padding:16px;margin-top:20px;gap:16px}.filters input{font-size:18px}.filters button{min-height:48px;font-weight:700}.top{padding:14px 0}nav{gap:8px 18px;margin-top:8px}nav a{min-height:44px;display:inline-flex;align-items:center;font-size:18px}.card{padding:20px}.card h3{scroll-margin-top:20px}.countybuttons button{min-height:48px;font-size:18px}.sponsor-inner{padding:12px 0;gap:8px 12px}.sponsor-actions{gap:4px}.sponsor-sub{font-size:18px}.sponsor-cta{font-size:18px}.sponsor-phone{font-size:20px}.sponsor-bbb{height:49px}footer{padding:30px 0}}

/* Compact persistent phone sponsor banner */
@media(max-width:700px){
.sponsor-banner{position:sticky;top:0;z-index:50}
.sponsor-inner{grid-template-columns:48px minmax(0,1fr);gap:6px 10px;padding:8px 0}
.rfh-sponsor-logo{width:48px}
.sponsor-inner p{font-size:14px;line-height:1.2}
.sponsor-inner strong{font-size:23px;margin-top:2px}
.sponsor-sub{font-size:16px;line-height:1.3;padding-top:5px;text-align:left}
.sponsor-bbb{display:block;grid-column:1/-1;grid-row:3;width:180px;height:37px;margin:0 auto}.sponsor-bbb img{width:180px;transform:translateY(-12px)}
.sponsor-actions{flex-direction:row;align-items:center;justify-content:space-between;gap:8px}
.sponsor-cta{font-size:16px;padding:10px 12px;min-height:44px;flex:1}
.sponsor-phone{font-size:17px;white-space:nowrap}
html{scroll-padding-top:270px}.card h3{scroll-margin-top:270px}
}
