/* This guide only; editable HTML/CSS, no frontend build. */
.cruising-tuscan-archipelago { --cg-sea: #315f65; }
.cruising-tuscan-archipelago main { overflow-wrap: anywhere; }
.cruising-tuscan-archipelago [id] { scroll-margin-top: 1.5rem; }
.cruising-tuscan-archipelago .cg-hero h1 { font-size: clamp(3rem, 6.5vw, 5.1rem); }
.cruising-tuscan-archipelago .ta-links { display: flex; flex-wrap: wrap; gap: .3rem 1.5rem; }
.cruising-tuscan-archipelago .cg-photo > a { display: block; }
.cruising-tuscan-archipelago .cg-photo img { height: auto; aspect-ratio: auto; border-radius: 3px; }
.cruising-tuscan-archipelago .cg-story { align-items: start; margin-top: 2rem; }
.cruising-tuscan-archipelago .cg-photo-credit a { font-size: .8rem; }
.cruising-tuscan-archipelago .cg-jump a,
.cruising-tuscan-archipelago .cg-link,
.cruising-tuscan-archipelago .footer-inner a { min-width: 44px; }
.cruising-tuscan-archipelago .ta-map { max-width: 420px; width: 100%; margin-inline: auto; }
.cruising-tuscan-archipelago .ta-maps { display: grid; gap: 2rem; align-items: start; margin-block: 2rem; }
.cruising-tuscan-archipelago .ta-places { list-style: none; padding: 0; margin: 1rem 0 0; }
.cruising-tuscan-archipelago .ta-places li { border-top: 1px solid var(--line); margin: 0; }
.cruising-tuscan-archipelago .ta-places a { display: block; padding-block: .65rem; min-height: 44px; text-decoration: none; }
.cruising-tuscan-archipelago .ta-places strong { color: var(--cg-sea); }
.cruising-tuscan-archipelago .ta-places span { display: block; font-size: 1rem; }
.cruising-tuscan-archipelago .ta-places a:hover strong { text-decoration: underline; }
.cruising-tuscan-archipelago .ta-detail { margin-top: 1.2rem; border-block: 1px solid var(--line); }
.cruising-tuscan-archipelago .ta-detail summary { padding-block: .8rem; min-height: 48px; cursor: pointer; font-size: 1rem; }
.cruising-tuscan-archipelago .ta-detail p { margin-block: .8rem; font-size: 1rem; }
.cruising-tuscan-archipelago .ta-detail a { display: flex; align-items: center; min-width: 44px; min-height: 44px; padding-block: .4rem; }
.cruising-tuscan-archipelago .cg-map-credit { display: flex; flex-wrap: wrap; gap: 0 1rem; }
.cruising-tuscan-archipelago .cg-map-credit a { min-width: 44px; }
.cruising-tuscan-archipelago .ta-reading { max-width: 49rem; }
.cruising-tuscan-archipelago .ta-columns { display: grid; gap: 2.5rem; margin-top: 2rem; align-items: start; }
.cruising-tuscan-archipelago .ta-columns h3 { margin-bottom: .7rem; }
.cruising-tuscan-archipelago .ta-columns .cg-photo { margin-top: 1.2rem; }
.cruising-tuscan-archipelago .ta-portrait { max-width: 360px; margin-inline: auto; }
.cruising-tuscan-archipelago .cg-source-grid { grid-template-columns: 1fr; }
@media (min-width: 700px) {
  .cruising-tuscan-archipelago .cg-hero { grid-template-columns: 1fr; }
  .cruising-tuscan-archipelago .cg-hero-copy { display: contents; }
  .cruising-tuscan-archipelago .cg-hero > .cg-photo { grid-row: 3; }
  .cruising-tuscan-archipelago .cg-hero .lede { max-width: 44rem; }
  .cruising-tuscan-archipelago .ta-maps,
  .cruising-tuscan-archipelago .ta-columns,
  .cruising-tuscan-archipelago .cg-source-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem; }
}
@media (min-width: 1000px) {
  .cruising-tuscan-archipelago .cg-hero { grid-template-columns: .9fr 1.1fr; gap: 3rem; }
  .cruising-tuscan-archipelago .cg-hero-copy { display: block; }
  .cruising-tuscan-archipelago .cg-hero > .cg-photo { grid-row: auto; }
  .cruising-tuscan-archipelago .cg-hero .lede { max-width: 28rem; }
  .cruising-tuscan-archipelago .cg-story { gap: 2.5rem; }
}
