.page-hero{background:#123B5D;color:#fff;position:relative;isolation:isolate}
.page-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,34,58,.95),rgba(18,59,93,.82) 50%,rgba(9,31,54,.30)),var(--hero-img) center 42%/cover}
.page-hero .wrap{padding-top:52px;padding-bottom:44px}
.page-hero h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(32px,4vw,50px);font-weight:600;line-height:1.15;margin:14px 0 16px;max-width:820px}
.page-hero p{font-size:17px;line-height:1.7;color:#E5EDF5;max-width:760px;margin:0}
.kicker{color:#E6B8C4;text-transform:uppercase;font-weight:700;font-size:12px;letter-spacing:1.7px}
.town-section{padding:38px 0 6px}
.town-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.town-head h2{font-family:'Playfair Display',Georgia,serif;font-size:31px;font-weight:600;margin:8px 0 0}
.town-head p{color:#64798D;font-size:14px;margin:0 0 4px;max-width:520px}
.fit-line{background:#FFF7E8;border:1px solid #EBD9AC;border-radius:10px;padding:13px 17px;font-size:14.5px;color:#6B5518;margin:0 0 20px}
.flight-band{background:#EDF2F7;border:1px solid #DCE5ED;border-radius:12px;padding:22px 26px;margin:30px 0 4px;display:flex;gap:26px;flex-wrap:wrap}
.flight-band div{min-width:150px}
.flight-band span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:1.2px;color:#9F1239;font-weight:700;margin-bottom:5px}
.flight-band b{font-size:16.5px;color:#123B5D}
.cta-band{background:#123B5D;border-radius:13px;color:#fff;text-align:center;padding:38px 26px;margin:44px 0 26px}
.cta-band h2{font-family:'Playfair Display',Georgia,serif;font-size:29px;margin:0 0 10px}
.cta-band p{color:#C4D6E7;margin:0 0 20px}
.cta-band a{display:inline-block;background:#9F1239;color:#fff;text-decoration:none;font-weight:700;padding:14px 28px;border-radius:8px}
.more-collections{font-size:14px;color:#64798D;margin:0 0 50px;text-align:center}
.more-collections a{color:#123B5D;font-weight:600}
/* The shared .cards rule reserves five columns, which left the right side of each guide section empty. */
.town-section .cards{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:980px){.town-section .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.town-section .cards{grid-template-columns:1fr}}
