/* Shared by the new Baltic/Scandinavian guides only; no inherited-page changes. */
.bs-guide { --cg-sea: #24595b; overflow-wrap: anywhere; }
.bs-guide .cg-hero h1 { font-size: clamp(2.8rem, 6vw, 5rem); }
.bs-guide .bs-intro { max-width: 48rem; }
.bs-guide .bs-section { padding-block: 2.6rem; scroll-margin-top: 1.5rem; border-top: 1px solid var(--line); }
.bs-guide .bs-section h2 { margin-bottom: 1rem; }
.bs-guide :is(.bs-section, .bs-aside, .bs-next) > .eyebrow { margin: 0 0 .7rem; }
.bs-guide .bs-section h3 { margin-bottom: .7rem; }
.bs-guide .bs-copy { max-width: 48rem; }
.bs-guide .bs-copy p + p { margin-top: 1rem; }
.bs-guide .bs-story { display: grid; gap: 1.6rem; align-items: start; }
.bs-guide .bs-berth { margin-top: 1.3rem; padding: 1rem 1.15rem; background: #e9eee7; border-left: 3px solid #6b8980; }
.bs-guide .bs-berth h3, .bs-guide .bs-berth h4 { font: 600 1rem/1.5 var(--sans); margin: 0 0 .45rem; }
.bs-guide .bs-berth a { text-decoration-thickness: 1px; }
.bs-guide .bs-links { display: flex; flex-wrap: wrap; gap: .25rem 1.2rem; margin-top: .7rem; }
.bs-guide .bs-links a { display: inline-flex; align-items: center; min-height: 44px; }
.bs-guide .bs-maps { display: grid; gap: 2rem; margin-block: 1.5rem; align-items: start; }
.bs-guide .bs-map-card { min-width: 0; max-width: 600px; }
.bs-guide .bs-map-card h3 { margin-bottom: .8rem; font-size: 1.5rem; }
.bs-guide .bs-map { display: block; width: 100%; height: auto; border: 1px solid #b9ccc7; }
.bs-guide .bs-map-name { font: 23px var(--sans); fill: #193e47; stroke: #f6f4ed; stroke-width: 4px; stroke-linejoin: round; paint-order: stroke; }
.bs-guide .bs-map-region { font: italic 21px var(--serif); fill: #4b696c; }
.bs-guide .bs-map-dot { fill: #24595b; stroke: #fffdf5; stroke-width: 2px; }
.bs-guide .bs-map-hit { fill: transparent; }
.bs-guide .bs-map-area { fill: #fffdf5; fill-opacity: .22; stroke: #64857f; stroke-width: 1.5px; stroke-dasharray: 6 4; }
.bs-guide .bs-map a:hover .bs-map-dot, .bs-guide .bs-map a:focus .bs-map-dot { fill: #9b5a23; }
.bs-guide .bs-map a:hover .bs-map-name, .bs-guide .bs-map a:focus .bs-map-name { fill: #783f18; text-decoration: underline; }
.bs-guide .bs-map-scale { fill: none; stroke: #35555c; stroke-width: 2px; }
.bs-guide .bs-map-scale-label { font: 19px var(--sans); fill: #35555c; }
.bs-guide .bs-map-credit { font-size: .8rem; color: var(--muted); margin-top: .6rem; }
.bs-guide .bs-place-links { list-style: none; padding: 0; margin: .7rem 0 0; display: grid; gap: .25rem; }
.bs-guide .bs-place-links a { display: block; min-height: 44px; padding-block: .5rem; }
.bs-guide .bs-place-links span { color: var(--muted); }
.bs-guide .bs-overview { display: grid; gap: 1.75rem; align-items: start; }
.bs-guide .bs-islands { display: grid; gap: 1.6rem; margin-top: 1.7rem; }
.bs-guide .bs-islands article { min-width: 0; }
.bs-guide .bs-aside { background: #eee8da; padding: 1.4rem; margin-block: 2rem; }
.bs-guide .bs-aside h2 { font-size: 1.8rem; margin-bottom: .8rem; }
.bs-guide .bs-next { padding-block: 2rem 3rem; border-top: 1px solid var(--line); }
.bs-guide .bs-next h2 { font-size: 1.9rem; margin-bottom: .8rem; }
.bs-guide :where(p, li, figcaption, a) { overflow-wrap: break-word; }
@media (min-width: 760px) {
  .bs-guide .bs-maps { grid-template-columns: 1fr 1fr; }
  .bs-guide .bs-story { grid-template-columns: 1.12fr 1fr; gap: 2.5rem; }
  .bs-guide .bs-overview { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 2.5rem; }
  .bs-guide .bs-islands { grid-template-columns: 1fr 1fr; gap: 2rem; }
}
@media (prefers-reduced-motion: reduce) {
  .bs-guide { scroll-behavior: auto; }
}

.bs-guide .bs-data { margin-bottom: 2rem; font-size: .85rem; }
.bs-guide .bs-data summary { cursor: pointer; min-height: 44px; padding-block: .6rem; }
.bs-guide .bs-data p { max-width: 48rem; padding-bottom: 1rem; }
