/* Mull only. Shared cruising-ground components remain unchanged. */
.cruising-mull-inner-hebrides { --cg-sea: #315a58; }
.cruising-mull-inner-hebrides main { overflow-wrap: break-word; }
.cruising-mull-inner-hebrides .cg-hero h1 { font-size: clamp(2.4rem, 5vw, 4rem); margin-block: .75rem 1.25rem; }
.cruising-mull-inner-hebrides .cg-hero-copy { display: block; }
.cruising-mull-inner-hebrides .cg-hero > .cg-photo { grid-row: auto; }
.cruising-mull-inner-hebrides .mull-hero-links { display: flex; flex-wrap: wrap; gap: .25rem 1.3rem; }
.cruising-mull-inner-hebrides .cg-photo > a { display: block; }
.cruising-mull-inner-hebrides .cg-photo img { border-radius: 3px; }
.cruising-mull-inner-hebrides .cg-jump a,
.cruising-mull-inner-hebrides .cg-link,
.cruising-mull-inner-hebrides .footer-inner a,
.cruising-mull-inner-hebrides .cg-map-credit a { min-width: 44px; }
.cruising-mull-inner-hebrides .mull-photo-work { display: block; margin-top: .4rem; font-size: .78rem; }
.cruising-mull-inner-hebrides .mull-portrait { width: min(100%, 300px); justify-self: center; }
.cruising-mull-inner-hebrides .mull-places { margin: 1rem 0 0; padding: 0; list-style: none; }
.cruising-mull-inner-hebrides .mull-places li { margin: 0; padding: .8rem 0; border-top: 1px solid var(--line); font-size: 1rem; }
.cruising-mull-inner-hebrides .mull-places strong { display: block; color: var(--cg-sea); }
.cruising-mull-inner-hebrides .mull-detail { margin-top: 1rem; border-block: 1px solid var(--line); }
.cruising-mull-inner-hebrides .mull-detail summary { min-height: 48px; padding-block: .8rem; cursor: pointer; font-size: 1rem; }
.cruising-mull-inner-hebrides .mull-detail p { margin-block: .4rem 1rem; font-size: 1rem; }
.cruising-mull-inner-hebrides .mull-detail a:not(.mull-map-link) { display: flex; align-items: center; min-height: 44px; padding-block: .4rem; }
.cruising-mull-inner-hebrides .cg-practical > strong,
.cruising-mull-inner-hebrides .cg-practical summary { font-size: 1rem; }
.cruising-mull-inner-hebrides .mull-intro { max-width: 49rem; }
.cruising-mull-inner-hebrides .mull-reading { max-width: 48rem; }
.cruising-mull-inner-hebrides .mull-reading h3 { margin-bottom: .8rem; }
.cruising-mull-inner-hebrides .mull-reading h3:not(:first-child) { margin-top: 2rem; }
.cruising-mull-inner-hebrides .mull-access { padding-left: 1rem; border-left: 2px solid var(--line); font-size: 1rem; line-height: 1.65; }
.cruising-mull-inner-hebrides .mull-columns { display: grid; gap: 2rem; margin-block: 2.5rem; }
.cruising-mull-inner-hebrides .mull-columns h3 { margin-bottom: .8rem; }
.cruising-mull-inner-hebrides .cg-story { align-items: start; }
.cruising-mull-inner-hebrides .cg-story > *,
.cruising-mull-inner-hebrides .mull-columns > * { min-width: 0; }
.cruising-mull-inner-hebrides .cg-base-grid { margin-top: 2rem; }
.cruising-mull-inner-hebrides .mull-alternatives { margin-top: 3rem; }
.cruising-mull-inner-hebrides .mull-alternatives > .cg-photo { margin-block: 1.5rem; }
.cruising-mull-inner-hebrides .mull-inset { max-width: 420px; margin: 1.5rem auto; }
.cruising-mull-inner-hebrides .mull-inset img { width: 100%; height: auto; }
.cruising-mull-inner-hebrides .mull-source-intro { padding-top: 1rem; }
@media (min-width: 700px) {
  .cruising-mull-inner-hebrides .cg-hero { grid-template-columns: 1fr; }
  .cruising-mull-inner-hebrides .cg-hero .lede { max-width: 42rem; }
  .cruising-mull-inner-hebrides .cg-source-grid { grid-template-columns: 1fr 1fr; }
  .cruising-mull-inner-hebrides .mull-alternatives { margin-top: 4rem; }
}
@media (min-width: 700px) and (max-width: 999px) {
  .cruising-mull-inner-hebrides .cg-story { grid-template-columns: 1fr; }
  .cruising-mull-inner-hebrides .cg-story-reverse > * { grid-column: auto; grid-row: auto; }
}
@media (min-width: 1000px) {
  .cruising-mull-inner-hebrides .cg-hero { grid-template-columns: .9fr 1.1fr; gap: 3rem; }
  .cruising-mull-inner-hebrides .cg-hero-copy { display: block; }
  .cruising-mull-inner-hebrides .cg-hero > .cg-photo { grid-row: auto; }
  .cruising-mull-inner-hebrides .cg-hero .lede { max-width: 28rem; }
  .cruising-mull-inner-hebrides .cg-base-grid { grid-template-columns: 1fr 1fr; gap: 3rem; }
  .cruising-mull-inner-hebrides .mull-columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 3rem; }
}

/* Shared geometry with localized labels; responsive variants share one layout. */
.cruising-mull-inner-hebrides .guide-map { display: block; width: 100%; height: auto; }
.cruising-mull-inner-hebrides .guide-map-overview { display: none; }

.cruising-mull-inner-hebrides .guide-preview-note { max-width: 70ch; font-size: .9rem; line-height: 1.5; margin-bottom: 1.5rem; }
.cruising-mull-inner-hebrides h1, .cruising-mull-inner-hebrides h2, .cruising-mull-inner-hebrides h3 { overflow-wrap: anywhere; hyphens: auto; }
@media (min-width: 700px) {
  .cruising-mull-inner-hebrides .guide-map-phone { display: none; }
  .cruising-mull-inner-hebrides .guide-map-overview { display: block; }
}
/* Keep the film-card text column shrinkable when readers enlarge text. */
.cruising-mull-inner-hebrides .cg-film { grid-template-columns: 1em minmax(0, 1fr) 1em; }
.cruising-mull-inner-hebrides .cg-film > span { min-width: 0; overflow-wrap: anywhere; }
@media (max-width: 699px) {
  .cruising-mull-inner-hebrides .cg-film > span:nth-child(2) { grid-column: 1 / -1; grid-row: 2; }
  .cruising-mull-inner-hebrides .cg-film > span:last-child { grid-column: 3; grid-row: 1; }
}
.cruising-mull-inner-hebrides .cg-photo-credit a { gap: .25em; }

/* Map labels retain their original positions; the linked list is the full-size phone alternative. */
.cruising-mull-inner-hebrides .mull-map-link { cursor: pointer; }
.cruising-mull-inner-hebrides .mull-map-hit,
.cruising-mull-inner-hebrides .mull-map-marker-hit { fill: transparent; stroke: transparent; pointer-events: all; }
.cruising-mull-inner-hebrides .mull-map-link:hover text,
.cruising-mull-inner-hebrides .mull-map-link:focus-visible text { text-decoration: underline; }
.cruising-mull-inner-hebrides .mull-map-link:focus-visible { outline: none; }
.cruising-mull-inner-hebrides .mull-map-link:focus-visible .mull-map-hit,
.cruising-mull-inner-hebrides .mull-map-link:focus-visible .mull-map-marker-hit { stroke: #244e55; stroke-width: 2; vector-effect: non-scaling-stroke; }
.cruising-mull-inner-hebrides .mull-places li { padding: 0; }
.cruising-mull-inner-hebrides .mull-places li > a { display: block; min-height: 44px; padding: .8rem 0; color: inherit; text-decoration: none; }
.cruising-mull-inner-hebrides .mull-places li > a:hover strong,
.cruising-mull-inner-hebrides .mull-places li > a:focus-visible strong { text-decoration: underline; }
.cruising-mull-inner-hebrides .mull-places li > a:focus-visible { outline: 2px solid var(--cg-sea); outline-offset: 3px; }
.cruising-mull-inner-hebrides [id] { scroll-margin-top: 1.5rem; }
