/* Tourdetail — Brandguide 2.0: Lora, Newsreader en één scrollvlak. */
body.page-body { background: var(--ttt-brand-cream); color: var(--ttt-brand-text); }
#tour-page .shop-tour { max-width: 1120px; grid-template-columns: minmax(220px,.7fr) minmax(0,1.3fr); gap: clamp(28px,5vw,64px); align-items: start; }
#tour-page .shop-tour-visual { position: sticky; top: 100px; align-self: start; padding: 0; }
html[data-embed="true"] #tour-page .shop-tour-visual { top: 16px; }
@media (min-width: 701px) {
  html[data-embed="true"], html[data-embed="true"] body { height: 100%; overflow: hidden; }
  html[data-embed="true"] #tour-page { height: 100dvh; padding: 24px; box-sizing: border-box; overflow: hidden; }
  html[data-embed="true"] #tour-page .shop-tour { height: 100%; min-height: 0; }
  html[data-embed="true"] #tour-page .shop-tour-body { height: 100%; min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding-right: 12px; }
  html[data-embed="true"] #tour-page .shop-tour-visual { position: static; }
  html[data-embed="true"] #tour-page .modal-phone { width: min(280px,calc((100dvh - 110px) * .5625)); }
}
#tour-page .modal-phone { width: 280px; max-width: 100%; height: auto; aspect-ratio: 9 / 16; margin: 0 auto; background: #26291f; border: 8px solid var(--ttt-brand-navy); border-radius: 32px; box-shadow: 0 12px 32px #0d172e26; }
#tour-page .modal-phone img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
#tour-page .modal-phone-notch { width: 64px; height: 14px; background: var(--ttt-brand-navy); }
#tour-page .modal-phone-caption { max-width: 280px; margin: 14px auto 0; font: italic 400 14px/1.5 var(--ttt-brand-display); color: var(--ttt-brand-text); opacity: 1; }
#tour-page .v2-eyebrow { color: var(--ttt-brand-gold-dark); font: 500 12px/1.4 var(--ttt-brand-reading); letter-spacing: .12em; }
#tour-page .v2-headline { color: var(--ttt-brand-navy); font: italic 500 clamp(34px,4vw,48px)/1.15 var(--ttt-brand-display); margin: 8px 0 20px; }
#tour-page .modal-facts { gap: 12px 20px; margin-bottom: 24px; }
#tour-page .modal-facts li { font: 400 15px/1.4 var(--ttt-brand-reading); letter-spacing: 0; text-transform: none; color: var(--ttt-brand-text); opacity: 1; }
#tour-page .modal-facts svg { width: 20px; height: 20px; color: var(--ttt-brand-gold-dark); flex-shrink: 0; }
#tour-page .modal-facts-bron { font: 400 13px/1.4 var(--ttt-brand-reading); letter-spacing: 0; color: var(--ttt-brand-text); opacity: .7; margin: -12px 0 24px; }
#tour-page .modal-story { font: 400 19px/1.55 var(--ttt-brand-reading); color: var(--ttt-brand-text); margin: 0 0 14px; max-width: 65ch; }
#tour-page .modal-story:first-of-type { font-weight: 500; }
#tour-page .taster { margin: 24px 0; padding: 22px; border: 1px solid var(--ttt-brand-line); border-radius: 18px; background: var(--ttt-brand-parchment); }
#tour-page .taster-label { font: 500 12px/1.4 var(--ttt-brand-reading); letter-spacing: .12em; color: var(--ttt-brand-gold-dark); margin: 0 0 14px; }
#tour-page .taster-title { font: 500 20px/1.3 var(--ttt-brand-display); color: var(--ttt-brand-navy); }
#tour-page .taster-hint, #tour-page .modal-buy-note { font: 400 16px/1.5 var(--ttt-brand-reading); font-style: normal; color: var(--ttt-brand-text); margin: 16px 0 0; }
#tour-page .taster-play { width: 52px; height: 52px; flex: 0 0 52px; background: var(--ttt-brand-gold); color: var(--ttt-brand-navy); }
#tour-page .taster-time { font: 400 14px/1.4 var(--ttt-brand-reading); }
#tour-page .modal-buy { margin-top: 24px; }
#tour-page .v2-btn { font: 600 17px/1.3 var(--ttt-brand-reading); letter-spacing: .04em; min-height: 48px; border-radius: 8px; }
#tour-page .v2-btn--solid { background: var(--ttt-brand-gold); color: var(--ttt-brand-navy); }
#tour-page button:focus-visible, #tour-page a:focus-visible { outline: 2px solid var(--ttt-brand-gold-dark); outline-offset: 4px; }
@media (max-width: 700px) {
  #tour-page .shop-tour { grid-template-columns: 1fr; gap: 28px; }
  #tour-page .shop-tour-visual { position: static; }
  #tour-page .modal-phone { width: 200px; height: auto; aspect-ratio: 9 / 16; }
  #tour-page .modal-story { font-size: 18px; }
  #tour-page .taster { padding: 18px; }
}
