/* Location landing pages — extends style.css + sections.css */

.location-page .hero{min-height:520px}
.location-page .hero-inner{padding-top:56px}
.location-page .hero h1{font-size:clamp(2.6rem,4.8vw,4.2rem);line-height:1.08;letter-spacing:-2.4px;max-width:18ch}
.location-page .hero-description{max-width:620px}
.location-page .hero-description.hero-description-secondary{margin-top:14px;font-size:1rem}
.location-page .hero-actions{flex-wrap:wrap}
.location-page .hero-location{flex-wrap:wrap}
.location-page .hero-location a{color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:3px}

.location-twin-falls .hero-photo{background-image:url('/assets/perrine-bridge.jpg')}
.location-wood-river .hero-photo{background-image:url('/assets/wood-river-valley-hero.jpg');background-position:center 40%}

.location-page .service-card{display:block}
.location-page .service-card ul{display:none}

.towns-section .town-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px;padding:0;list-style:none}
.towns-section .town-list li{background:white;border:1px solid var(--line);border-radius:6px;padding:12px 18px;font-family:Manrope,Arial,sans-serif;font-weight:700;font-size:.9375rem}
.towns-note{margin-top:22px;font-size:.9375rem;color:var(--muted);max-width:560px}

.why-section{background:var(--pale)}
.why-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:start}
.why-points{margin-top:28px;padding:0;list-style:none}
.why-points li{padding:18px 0;border-top:1px solid var(--line)}
.why-points li:last-child{border-bottom:1px solid var(--line)}
.why-points strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:1rem;margin-bottom:6px}
.why-points span{font-size:.9375rem;color:var(--muted);line-height:1.6}
.why-panel{background:var(--navy);color:white;padding:36px;border-radius:var(--radius)}
.why-panel .eyebrow{color:#c5e5f3}
.why-panel h3{font-size:1.75rem;letter-spacing:-1px;margin-bottom:16px}
.why-panel p{color:#c4d6e1;font-size:.9375rem}

.faq-section .faq-list{margin-top:36px;max-width:820px}
.faq-item{border-top:1px solid var(--line);padding:22px 0}
.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item h3{font-size:1.0625rem;letter-spacing:-.3px;margin-bottom:10px}
.faq-item p{font-size:.9375rem;color:var(--muted);line-height:1.65}

.contact-email{font-size:.9375rem;font-weight:600;text-decoration:underline;text-underline-offset:3px}

.footer-nap{border-top:1px solid var(--line);padding:18px 0;font-size:.8125rem;color:var(--muted);line-height:1.6}
.footer-nap a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}

.location-links{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:22px}
.location-links a{display:inline-flex;align-items:center;gap:8px;font-family:Manrope,Arial,sans-serif;font-size:.9375rem;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.location-links a:hover{color:var(--navy)}

@media(max-width:1050px){
  .why-layout{gap:38px}
}
@media(max-width:800px){
  .location-page .hero{min-height:560px}
  .why-layout{grid-template-columns:1fr;gap:38px}
}
@media(max-width:520px){
  .location-page .hero h1{font-size:clamp(2.2rem,9vw,3.2rem);letter-spacing:-1.5px;max-width:none}
  .location-page .hero-actions{flex-direction:column;align-items:flex-start;gap:22px}
}
