.page-header{position:relative;isolation:isolate;min-height:650px;color:#fff;background-image:var(--page-hero-image);background-position:center;background-size:cover;display:flex;flex-direction:column}
.page-header-shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(7,25,22,.62) 0%,rgba(7,25,22,.28) 45%,rgba(7,25,22,.82) 100%)}
.page-nav{position:relative;z-index:20;height:88px;border-bottom:1px solid rgba(255,255,255,.28)}
.page-nav .nav-links{z-index:30}
.page-hero{position:relative;z-index:1;width:min(1000px,calc(100% - 40px));padding:115px 0 80px;margin:auto auto 0}
.page-hero h1{font-size:clamp(3rem,7vw,6.5rem);max-width:1000px;letter-spacing:-.04em;text-wrap:balance;text-shadow:0 2px 28px rgba(0,0,0,.2)}
.page-hero p{font-size:1.25rem;color:rgba(255,255,255,.88);max-width:720px;margin-top:25px}
.page-content{padding:90px 0;background:var(--cream)}
.prose{max-width:900px}
.prose>h2{font-size:2.5rem;margin:65px 0 20px}
.prose>p{font-size:1.1rem}
.prose>p a,.prose li a,.prose article a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.prose>ul,.prose>ol{font-size:1.05rem;color:#40504c}
.prose>h2+p{color:#40504c}
.prose em{color:#58645f}
.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:42px 0}
.info-cards article,.guide-list article{padding:28px;background:#fff;border:1px solid var(--line);border-radius:14px}
.info-cards h3{font-size:1.55rem;margin-bottom:10px}
.info-cards p,.guide-list p{color:var(--muted)}
.guide-list{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.guide-list h2{font-size:1.75rem;margin-bottom:12px}
.guide-list h2 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.guide-list h2 a:hover{color:var(--coral)}
.guide-list h2 span{font-family:"Helvetica Neue",Arial,sans-serif;font-size:.7em}
.location-map{margin-top:75px}
.location-map>h2{font-size:2.5rem;margin:0 0 16px}
.location-map>p{max-width:720px;color:var(--muted);font-size:1.05rem}
.map-frame{overflow:hidden;margin-top:28px;border:1px solid var(--line);border-radius:18px;background:#e8dfd0;box-shadow:0 18px 45px rgba(23,51,47,.08)}
.map-frame iframe{display:block;width:100%;height:480px;border:0}
.faq details{background:#fff;border-bottom:1px solid var(--line);padding:22px 26px}
.faq summary{font-family:Georgia,serif;font-size:1.3rem;cursor:pointer}
.faq details p{color:var(--muted);margin:14px 0 0}
.policy-list{background:#fff;border-radius:16px;padding:36px}
.policy-list p{padding:16px 0;border-bottom:1px solid var(--line)}
.page-cta{margin-top:75px;padding:50px;background:#e8dfd0;border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:25px}
.page-cta h2{font-size:2.2rem}
.page-cta .button{flex:none}
@media(max-width:720px){.page-header{min-height:570px}
.page-nav{height:72px}
.page-nav .brand{max-width:190px}
.page-hero{width:min(100% - 28px,1000px);padding:80px 0 55px}
.page-hero p{font-size:1.08rem}
.info-cards,.guide-list{grid-template-columns:1fr}
.map-frame iframe{height:360px}
.page-cta{display:block;padding:30px}
.page-cta .button{margin-top:20px}
.page-content{padding:60px 0}
}

.page-header{background-image:none;overflow:hidden}
.page-header-media{position:absolute;z-index:-2;inset:0}
.page-header-media img{width:100%;height:100%;object-fit:cover}
