/* Public content details only: keep catalogue, checkout and panel styles intact. */
.site-detail-page {
  max-width:1200px;margin:0 auto;padding:28px 24px 48px;
  font-size:15px;line-height:1.65;overflow-wrap:anywhere;
}
.site-detail-page :is(h1,h2,h3,h4,h5,h6) {
  font-family:'DM Sans',sans-serif;font-weight:600;line-height:1.35;letter-spacing:0;
  color:var(--ink);overflow-wrap:anywhere;
}
.site-detail-page :is(.detail-hero,.partner-profile-hero,.news-article,.partner-article-show) h1 {
  margin:8px 0 12px;font-size:30px;font-weight:600;line-height:1.3;letter-spacing:-.4px;
}
body main .site-detail-page :is(.section-title,.journey-offers-head) h2,
body main .site-detail-page .detail-grid-site :is(h2,h3),
.site-detail-page .destination-ticket-heading h2 {margin:0 0 12px;font-size:20px;line-height:1.4;font-weight:600;}
body main .site-detail-page .detail-grid-site h3 {margin-top:24px;font-size:17px;}
.site-detail-page .detail-grid-site :is(article,aside)>:first-child {margin-top:0;}
.site-detail-page :is(.overline,.section-title>div>span,.journey-offers-head>div>span) {
  font-size:11px;font-weight:600;line-height:1.5;letter-spacing:.06em;
}
.site-detail-page :is(.detail-hero>div>p,.partner-profile-hero p) {
  margin:0 0 16px;font-size:15px;line-height:1.65;color:var(--muted);
}
.site-detail-page .detail-hero {
  padding:0 0 28px;gap:28px;align-items:start;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.site-detail-page .detail-hero>div {min-width:0;}
.site-detail-page .detail-cover {height:auto;aspect-ratio:4/3;border-radius:18px;}
.site-detail-page .detail-hero dl {gap:10px;margin:20px 0;grid-template-columns:repeat(2,minmax(0,1fr));}
.site-detail-page .detail-hero dl>div,
.site-detail-page .destination-detail-copy dl .destination-map-card {min-width:0;padding:12px;border-radius:12px;}
.site-detail-page .detail-hero dt {font-size:12px;line-height:1.5;text-transform:none;}
.site-detail-page .detail-hero dd {margin:4px 0 0;font-size:14px;font-weight:500;line-height:1.55;}
.site-detail-page .detail-hero .detail-organizer-card dd a {font-weight:600;}
.site-detail-page .detail-organizer-card dd a>span:last-child {min-width:0;}
.site-detail-page .partner-byline {display:inline-block;margin:0 0 12px;font-size:13px;line-height:1.5;}
.site-detail-page .book-btn,
.site-detail-page .destination-trip-request>a,
.site-detail-page .partner-profile-actions a,
.site-detail-page .partner-guide-package-empty>a {
  display:inline-flex;align-items:center;justify-content:center;min-height:44px;
  padding:10px 16px;font-size:14px;font-weight:600;line-height:1.5;text-align:center;
}
.site-detail-page :is(.offline-ticket-notice,.empty-state) {padding:16px;font-size:14px;line-height:1.6;}
.site-detail-page :is(.offline-ticket-notice,.empty-state) :is(strong,span) {font-size:14px;line-height:1.6;}
.site-detail-page :is(.offline-ticket-notice,.empty-state) strong {font-weight:600;}
.site-detail-page .detail-grid-site {
  padding:24px 0;gap:28px;grid-template-columns:minmax(0,2fr) minmax(0,1fr);
  border-top:1px solid var(--line);
}
.site-detail-page .detail-grid-site>article {min-width:0;}
.site-detail-page .detail-grid-site>aside {
  min-width:0;padding:20px;border:1px solid var(--line);border-radius:16px;background:#f7faf8;
}
body main .site-detail-page>.site-section {width:100%;margin:0;padding:28px 0;}
body main .site-detail-page>.site-section.tint {padding:24px;border-radius:18px;}
body main .site-detail-page .section-title,
.site-detail-page .journey-offers-head {align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px;}
.site-detail-page .journey-offers-head h2 {margin-top:6px;}
.site-detail-page .journey-offers-head p {font-size:14px;line-height:1.6;}
.site-detail-page .journey-offers-head>b {font-size:12px;font-weight:500;}

/* Normalize pasted editor typography, including oversized inline font sizes.
   Content, links, emphasis and heading semantics are preserved. */
.site-detail-page :is(.prose,.news-prose),
.site-detail-page :is(.prose,.news-prose) :where(*) {
  font-family:'DM Sans',sans-serif!important;font-size:15px!important;line-height:1.7!important;
  letter-spacing:normal!important;overflow-wrap:anywhere;
}
.site-detail-page :is(.prose,.news-prose) {max-width:100%;overflow-x:auto;color:#4c5961;font-weight:400;}
.site-detail-page :is(.prose,.news-prose) :is(h1,h2),
.site-detail-page :is(.prose,.news-prose) :is(h1,h2) * {font-size:20px!important;line-height:1.4!important;font-weight:600!important;}
.site-detail-page :is(.prose,.news-prose) :is(h3,h4,h5,h6),
.site-detail-page :is(.prose,.news-prose) :is(h3,h4,h5,h6) * {font-size:17px!important;line-height:1.45!important;font-weight:600!important;}
.site-detail-page :is(.prose,.news-prose) :is(h1,h2,h3,h4,h5,h6) {margin:24px 0 10px;}
.site-detail-page :is(.prose,.news-prose) :is(p,ul,ol,blockquote,table) {margin:0 0 14px;}
.site-detail-page :is(.prose,.news-prose)>:first-child {margin-top:0;}
.site-detail-page :is(.prose,.news-prose)>:last-child {margin-bottom:0;}
.site-detail-page :is(.prose,.news-prose) :is(ul,ol) {padding-left:22px;}
.site-detail-page :is(.prose,.news-prose) li+li {margin-top:5px;}
.site-detail-page :is(.prose,.news-prose) blockquote {padding:12px 16px;border-left:3px solid #b8ddc6;background:#f5faf7;}
.site-detail-page :is(.prose,.news-prose) :is(img,video,iframe) {max-width:100%!important;}
.site-detail-page :is(.prose,.news-prose) :is(img,video) {height:auto!important;}
.site-detail-page :is(.prose,.news-prose) table {border-collapse:collapse;max-width:100%;}
.site-detail-page :is(.prose,.news-prose) :is(th,td) {padding:8px 10px;border:1px solid var(--line);text-align:start;}

.site-detail-page .destination-ticket-showcase {margin-top:20px;padding:16px;border-radius:16px;box-shadow:none;}
.site-detail-page .destination-ticket-heading {align-items:start;flex-wrap:wrap;gap:6px;}
.site-detail-page .destination-ticket-heading h2 {margin:0;}
.site-detail-page .destination-ticket-heading span {display:none;}
.site-detail-page .destination-ticket-heading>small {font-size:12px;font-weight:400;}
.site-detail-page .destination-ticket-option {padding:14px;gap:12px;grid-template-columns:minmax(0,1fr);}
.site-detail-page .destination-ticket-option h3 {margin:10px 0 6px;font-size:16px;font-weight:600;line-height:1.4;}
.site-detail-page .destination-ticket-badges span {font-size:11px;line-height:1.45;font-weight:500;text-transform:none;letter-spacing:0;}
.site-detail-page .destination-ticket-option p {display:block;max-width:none;overflow:visible;-webkit-line-clamp:unset;}
.site-detail-page .destination-ticket-option-action {display:flex;min-width:0;flex-wrap:wrap;justify-content:space-between;gap:10px;}
.site-detail-page .destination-ticket-option-action>small {display:none;}
.site-detail-page .destination-ticket-option-action>strong {margin:0;font-size:18px;font-weight:600;line-height:1.4;}
.site-detail-page .destination-ticket-option-action>a {min-height:44px;justify-content:center;padding:10px 14px;font-size:14px;font-weight:600;}
.site-detail-page .destination-ticket-empty {padding:14px;}
.site-detail-page .destination-ticket-empty :is(strong,span) {font-size:14px;line-height:1.6;}
.site-detail-page .destination-trip-request {margin:16px 0 24px;padding:20px;gap:16px;box-shadow:none;}
.site-detail-page .destination-trip-request>div {min-width:0;}
.site-detail-page .destination-trip-request span {display:none;}
.site-detail-page .destination-trip-request strong {font-size:16px;font-weight:600;line-height:1.5;}
.site-detail-page .destination-trip-request p {font-size:14px;line-height:1.65;}
.site-detail-page .event-ticket-coming-soon {margin:0 0 24px;padding:20px;gap:16px;}
.site-detail-page .event-ticket-coming-soon :is(strong,p) {font-size:15px;line-height:1.6;}
.site-detail-page .event-ticket-coming-soon span {font-size:11px;font-weight:600;}
.site-detail-page .event-venue-compact header>span {display:none;}
.site-detail-page .event-venue-compact header h3 {margin:0 0 8px;}
.site-detail-page .event-venue-compact header p {font-size:14px;line-height:1.6;}

.site-detail-page .partner-profile-hero {max-width:none;margin:0;padding:22px;gap:18px;border-radius:18px;}
.site-detail-page .partner-profile-hero>div {min-width:0;}
.site-detail-page .partner-profile-avatar {width:72px;height:72px;flex-basis:72px;font-size:26px;border-radius:18px;}
.site-detail-page .partner-profile-hero p {margin-bottom:0;font-size:14px;}
.site-detail-page .partner-guide-meta {gap:8px;margin-top:16px;}
.site-detail-page .partner-guide-meta>span {min-width:0;max-width:none;flex:1 1 180px;align-items:start;gap:8px;padding:10px 12px;}
.site-detail-page .partner-guide-meta small {font-size:12px;font-weight:400;text-transform:none;letter-spacing:0;}
.site-detail-page .partner-guide-meta strong {font-size:14px;font-weight:500;line-height:1.5;white-space:normal;overflow:visible;}
.site-detail-page .partner-guide-meta svg {margin-top:3px;}
.site-detail-page .partner-guide-rating {flex-wrap:wrap;gap:6px;margin-top:12px;}
.site-detail-page .partner-guide-rating strong {font-size:14px;font-weight:600;}
.site-detail-page .partner-guide-rating span {font-size:12px;}
.site-detail-page .partner-profile-actions {margin:14px 0 0;gap:8px;}
.site-detail-page .partner-profile-about blockquote {padding:18px 20px;font-size:15px;font-weight:400;line-height:1.7;}
.site-detail-page .partner-guide-package-empty {gap:12px;}
.site-detail-page .partner-guide-package-empty strong {font-size:15px;font-weight:600;line-height:1.5;}
.site-detail-page .partner-guide-package-empty p {font-size:14px;line-height:1.6;}
.site-detail-page .guide-gallery-compact-head strong {font-size:18px;font-weight:600;}
.site-detail-page .guide-gallery-compact-head span {font-size:12px;}
.site-detail-page .public-review-grid>article {padding:18px;box-shadow:none;}
.site-detail-page .public-review-grid>article>p {min-height:0;font-size:14px;line-height:1.7;}
.site-detail-page .public-review-grid footer strong {font-size:14px;font-weight:600;}
.site-detail-page .public-review-grid footer :is(span,small) {font-size:12px;line-height:1.5;}
.site-detail-page .review-summary {font-size:16px;font-weight:600;}
.site-detail-page .review-summary small {font-size:12px;font-weight:400;}
.site-detail-page .partner-article-grid {gap:16px;}
.site-detail-page .partner-article-grid article>div {padding:16px;}
.site-detail-page .partner-article-grid h3 {font-size:16px;line-height:1.45;font-weight:600;}
.site-detail-page .partner-article-grid p {font-size:14px;line-height:1.6;}
.site-detail-page .partner-article-grid small {font-size:12px;}
.site-detail-page .partner-article-grid a {display:inline-flex;min-height:44px;align-items:center;font-size:14px;font-weight:600;}
body main .site-detail-page .cards .card-body h3,
.site-detail-page .news-card-copy h3 {font-size:16px;font-weight:600;line-height:1.45;}
.site-detail-page .news-card-copy small {font-size:11px;font-weight:500;}
.site-detail-page .news-card-copy b {font-size:13px;font-weight:600;}

.site-detail-page.site-detail-article {max-width:920px;}
.site-detail-page :is(.news-article,.partner-article-show) {max-width:none;margin:0;padding:0;}
.site-detail-page :is(.news-article,.partner-article-show)>header {max-width:760px;margin:0 auto 24px;text-align:left;}
.site-detail-page :is(.news-article,.partner-article-show)>header>p {margin:0 0 12px;font-size:15px;line-height:1.7;}
.site-detail-page .news-article>header>span {font-size:11px;font-weight:600;letter-spacing:.06em;}
.site-detail-page .news-article>header>div {margin:12px 0 0;font-size:12px;line-height:1.6;}
.site-detail-page :is(.news-prose,.partner-article-content) {max-width:760px;margin:24px auto;}
.site-detail-page .news-cover {margin:0 0 24px;}
.site-detail-page :is(.news-cover img,.partner-article-cover) {border-radius:16px;}
.site-detail-page :is(.news-source,.news-tags,.news-cover figcaption) {font-size:12px;line-height:1.6;}

@media (max-width:900px) {
  .site-detail-page .detail-hero,
  .site-detail-page .detail-grid-site {grid-template-columns:minmax(0,1fr);gap:24px;}
  .site-detail-page .detail-cover {max-height:440px;}
  .site-detail-page .destination-trip-request {align-items:start;flex-direction:column;}
}
@media (max-width:760px) {
  body main .site-detail-page .site-section .cards,
  .site-detail-page .partner-article-grid,
  .site-detail-page .news-cards {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  body main .site-detail-page .cards .card-body,
  .site-detail-page .partner-article-grid article>div,
  .site-detail-page .news-card-copy {padding:12px;}
  body main .site-detail-page .cards .card-body h3,
  .site-detail-page .partner-article-grid h3,
  .site-detail-page .news-card-copy h3 {font-size:14px;line-height:1.45;}
  .site-detail-page .partner-article-grid p {font-size:12px;}
  .site-detail-page .news-card-image {height:auto;aspect-ratio:4/3;}
}
@media (max-width:600px) {
  .site-detail-page {padding:20px 16px 32px;font-size:14px;}
  .site-detail-page :is(.detail-hero,.partner-profile-hero,.news-article,.partner-article-show) h1 {font-size:24px;letter-spacing:-.2px;}
  body main .site-detail-page :is(.section-title,.journey-offers-head) h2,
  body main .site-detail-page .detail-grid-site :is(h2,h3),
  .site-detail-page .destination-ticket-heading h2 {font-size:18px;}
  body main .site-detail-page .detail-grid-site h3 {font-size:16px;}
  .site-detail-page :is(.detail-hero>div>p,.partner-profile-about blockquote) {font-size:14px;}
  .site-detail-page .detail-hero {padding-bottom:20px;gap:20px;}
  .site-detail-page .detail-cover {aspect-ratio:4/3;border-radius:14px;}
  .site-detail-page .detail-hero dl {grid-template-columns:minmax(0,1fr);margin:16px 0;gap:8px;}
  .site-detail-page .detail-grid-site {padding:20px 0;gap:20px;}
  .site-detail-page .detail-grid-site>aside {padding:16px;}
  body main .site-detail-page>.site-section {padding:20px 0;}
  body main .site-detail-page>.site-section.tint {padding:16px;}
  body main .site-detail-page .section-title {align-items:start;}
  body main .site-detail-page .section-title>a {flex-shrink:1;}
  .site-detail-page :is(.prose,.news-prose),
  .site-detail-page :is(.prose,.news-prose) :where(*) {font-size:14px!important;}
  .site-detail-page :is(.prose,.news-prose) :is(h1,h2),
  .site-detail-page :is(.prose,.news-prose) :is(h1,h2) * {font-size:18px!important;}
  .site-detail-page :is(.prose,.news-prose) :is(h3,h4,h5,h6),
  .site-detail-page :is(.prose,.news-prose) :is(h3,h4,h5,h6) * {font-size:16px!important;}
  .site-detail-page .destination-ticket-showcase {padding:12px;}
  .site-detail-page .destination-trip-request,
  .site-detail-page .event-ticket-coming-soon {padding:16px;}
  .site-detail-page .partner-profile-hero {padding:16px;gap:12px;align-items:start;}
  .site-detail-page .partner-profile-avatar {width:48px;height:48px;flex-basis:48px;border-radius:14px;font-size:22px;}
  .site-detail-page .partner-profile-actions a {flex:1 1 auto;font-size:13px;padding:10px 12px;}
  .site-detail-page .partner-guide-meta>span {flex-basis:100%;padding:10px;}
  .site-detail-page .partner-profile-about blockquote {padding:14px 16px;}
  .site-detail-page .partner-guide-package-empty {padding:14px;}
  .site-detail-page :is(.news-article,.partner-article-show)>header>p {font-size:14px;}
}
