/* Main guide destinations share Theme Studio's coastal colors and type. */
.spi-main-page { --spi-main-line: #bfd8d7; --spi-main-muted: #42656b; }
.spi-main-page > .spi-topic-hero { box-shadow: none; }
.spi-main-start { margin: 1.25rem 0 2rem; }
.spi-main-start__label { margin: 0 0 .65rem; color: var(--spi-ink, #073b4c); font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.spi-main-start > div { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: .8rem; }
.spi-main-start a { display: grid; align-content: start; gap: .55rem; padding: 1.2rem; border: 1px solid var(--spi-main-line); border-radius: 1rem; background: #fff; color: var(--spi-ink, #073b4c); text-decoration: none; }
.spi-main-start strong { display: flex; justify-content: space-between; gap: .5rem; font-size: 1.05rem; line-height: 1.4; }
.spi-main-start strong > span { color: var(--spi-sea, #087b83); }
.spi-main-start a > span { font-size: .94rem; line-height: 1.55; color: var(--spi-main-muted); }
.spi-main-start a:hover { background: #effaf6; border-color: var(--spi-sea, #087b83); }
.spi-main-reading { margin-block: 1.5rem 2rem; }
.spi-main-reading__copy { min-width: 0; }
.spi-main-reading__copy .spi-article { margin-top: 0; }
.spi-main-reading__copy .spi-page-contents { margin-top: 0; }
.spi-main-reading > .spi-curated-gallery { margin: 1.5rem 0 0; align-content: start; }
.spi-main-page .spi-card-grid { grid-template-columns: repeat(3,minmax(0,1fr)); align-items: stretch; }
.spi-main-page .spi-main-card { padding: 0; background: #fff; border: 1px solid var(--spi-main-line); box-shadow: none; }
.spi-main-page .spi-main-card::before { content: none; }
.spi-main-page .spi-main-card:hover { transform: none; border-color: var(--spi-sea, #087b83); background: #f3faf7; box-shadow: 0 4px 14px #073b4c0c; }
.spi-main-page .spi-main-card > a { display: flex; flex-direction: column; gap: .6rem; height: 100%; padding: 1.2rem; box-sizing: border-box; color: var(--spi-ink, #073b4c); text-decoration: none; }
.spi-main-card > a > strong { font-size: 1.08rem; line-height: 1.35; }
.spi-main-card > a > span { color: var(--spi-main-muted); font-size: .95rem; line-height: 1.55; font-weight: 400; }
.spi-main-card > a > .spi-main-card__more { margin-top: auto; padding-top: .35rem; color: var(--spi-sea, #087b83); font-weight: 750; }
.spi-main-page :is(.spi-main-card,.spi-main-start) a:focus-visible { outline: 3px solid #dc8b00; outline-offset: -4px; }
.spi-main-page .spi-page-contents { background: #eff8f5; border-color: var(--spi-main-line); box-shadow: none; }
.spi-main-page .spi-page-contents a { min-height: 44px; display: flex; align-items: center; padding-block: .35rem; box-sizing: border-box; }
.spi-main-page :is(h2,h3,[id^="guide-block-"]) { scroll-margin-top: calc(var(--spi-floating-header-height, 110px) + 1rem); }
@media (min-width: 1000px) {
  .spi-main-reading--with-photo { display: grid; grid-template-columns: minmax(0,1fr) minmax(15rem,21rem); gap: 2.5rem; align-items: start; }
  .spi-main-reading--with-photo .spi-article { max-width: none; }
  .spi-main-reading--with-photo > .spi-curated-gallery { margin-top: 0; grid-template-columns: minmax(0,1fr); }
  .spi-main-reading--with-photo .spi-curated-photo img { height: auto; max-height: 24rem; object-fit: contain; }
}
@media (max-width: 800px) { .spi-main-page .spi-card-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 600px) {
  .spi-main-start { margin: 1rem 0 1.5rem; }
  .spi-main-start > div { grid-template-columns: 1fr; gap: .6rem; }
  .spi-main-start a { padding: .9rem 1rem; gap: .25rem; }
  .spi-main-start a > span { font-size: .9rem; }
  .spi-main-page .spi-card-grid { grid-template-columns: 1fr; gap: .7rem; }
  .spi-main-page .spi-main-card > a { padding: 1rem; }
  .spi-main-reading { margin-block: 1rem 1.5rem; }
}
