.guide, .page {
    font-family: "Segoe UI", system-ui, sans-serif;
    color: #1c2430;
    background: #f6f1e8;
}
.guide { padding: 48px 20px 72px; }
.page { margin: 0; padding: 28px 20px 72px; }
.wrap { max-width: 760px; margin: 0 auto; }
.crumbs { font-size: 14px; margin: 0 0 18px; color: #5c6570; }
.crumbs a { color: #0f6e8c; }
h1 { font-size: 34px; line-height: 1.15; letter-spacing: -0.03em; font-weight: 650; margin: 0 0 12px; }
.lede { font-size: 18px; line-height: 1.5; margin: 0 0 22px; }
h2 { font-size: 22px; letter-spacing: -0.02em; margin: 32px 0 8px; }
p, li { font-size: 16.5px; line-height: 1.55; }
a { color: #0f6e8c; }
.beach-index { list-style: none; padding: 0; margin: 8px 0 0; }
.beach-index li { margin: 0; border-top: 1px solid #e3dacb; }
.beach-index a { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; text-decoration: none; }
.beach-index a:hover { text-decoration: underline; }
.beach-index small { color: #5c6570; }
.faq { margin: 0; }
.faq dt { font-weight: 650; margin-top: 14px; }
.faq dd { margin: 4px 0 0; }
.byline { margin-top: 28px; padding-top: 16px; border-top: 1px solid #e3dacb; color: #3d4652; }
.site-nav { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 28px; font-size: 15px; }
.flag-list { padding-left: 18px; }
.flag-list li { margin: 8px 0; }
