.preview-notice{padding:10px;background:#172c3d;color:#fff;text-align:center;font:14px/1.4 Arial,sans-serif}
*,*::before,*::after{box-sizing:border-box}
img,video{max-width:100%}
a:focus-visible,button:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #f9b233;outline-offset:4px}
@media(max-width:600px){.page-measure{max-width:100%;width:100%;padding-left:16px;padding-right:16px}.layout-band{max-width:100%}.entry-control{max-width:100%}.locality-window{width:calc(100vw - 32px);max-width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:600px){
 .horizon-cover{padding:0}.opening-scene{padding:24px 0}#riders-masthead{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
 .opening-scene .narrow-track{width:auto;flex:1 1 180px;min-width:0}.opening-scene .primary-route{display:none}
 .opening-scene .hotline-link{text-align:left}.hotline-link a{display:inline-block;padding:10px 14px;white-space:nowrap}
 .opening-copy{width:100%;padding:0}.opening-copy h1{font-size:clamp(34px,9vw,46px);line-height:1.12;padding-top:40px;overflow-wrap:anywhere}
 .story-panel,.program-section,.tariff-region{padding-left:0;padding-right:0}.image-carousel{max-width:100%}
 #mobile{min-width:0;width:min(100%,360px)}.lead-window{width:calc(100% - 24px);max-width:560px;max-height:calc(100dvh - 24px);overflow:auto}
}
img{height:auto}.image-frame{flex:0 0 100%;width:100%;height:auto;align-self:flex-start}
@media(max-width:600px){
 .page-scroll section{padding-left:0;padding-right:0}
 .layout-band>.layout-cell{width:100%!important;max-width:100%;min-width:0;padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important}
 .merit-deck .compact-track,.lead-fields .half-track{padding:0!important;width:100%!important}
 h1,h2,h3,h4,p,li,.rating-mark{overflow-wrap:anywhere}
 .chapter-caption{font-size:29px;line-height:1.2}.lead-fields form{width:100%;max-width:100%}
}
.footage-tile{display:inline-flex;align-items:flex-end;min-height:420px;height:auto;padding:24px;vertical-align:top}
.footage-tile>div{width:100%}.footage-tile p{margin-bottom:18px}.footage-tile .action-pill{padding:12px 24px;max-width:100%}
@media(max-width:600px){.footage-tile{min-height:360px;margin:10px 0;width:100%;padding:22px}}
/* Advantages: shared edges and consistent space inside each card. */
.merit-deck>.layout-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;align-items:start}
.merit-deck>.layout-band>.compact-track{width:100%!important;min-width:0;padding:clamp(20px,2.5vw,36px)!important;margin:0!important}
.merit-deck>.layout-band>.broad-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%!important;min-width:0;padding:0!important;margin:0!important}
.merit-deck .broad-track>.content-tile{width:100%!important;height:100%;margin:0!important;padding:28px 24px;line-height:1.55}
.merit-deck .compact-track h2{margin:0 0 20px;padding:0}
.merit-deck .compact-track p{margin:0 0 18px;line-height:1.55}
.merit-deck .compact-track p:last-child{margin-bottom:0}
.merit-deck .compact-track ul{padding:0;margin:20px 0 24px;list-style:none}
.merit-deck .compact-track li{margin:0 0 12px;padding-left:32px;background-size:22px 22px;background-position:left 3px;line-height:1.55}
.merit-deck .compact-track li:last-child{margin-bottom:0}
.merit-deck .caption-label{margin-bottom:16px;line-height:1.3}
.merit-deck .caption-label img{margin-bottom:18px}
@media(max-width:968px){.merit-deck>.layout-band{grid-template-columns:minmax(0,1fr)}}
@media(max-width:639px){.merit-deck>.layout-band,.merit-deck>.layout-band>.broad-track{gap:20px}.merit-deck>.layout-band>.broad-track{grid-template-columns:minmax(0,1fr)}.merit-deck .broad-track>.content-tile{padding:24px 20px}}
/* Price panel: keep content clear of the rounded edges at every width. */
.tariff-region>.layout-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}
.tariff-region>.layout-band>.tariff-amount{width:100%!important;min-width:0;margin:0!important;padding:28px 32px!important}
.tariff-region>.layout-band>.questions-area{width:100%!important;min-width:0;margin:0!important;padding:0!important}
.tariff-amount .section-caption{margin:0 0 12px;padding:0;line-height:1.25}
.tariff-amount table{border-collapse:collapse;width:100%;margin:0}
.tariff-amount table td{padding:18px 0;vertical-align:top;line-height:1.5}
.tariff-amount table td:first-child{padding-right:24px;overflow-wrap:break-word}
.tariff-amount table td:last-child{white-space:nowrap;text-align:right}
.tariff-amount .rating-mark{margin:20px 0 0;padding:0;font-size:14px;line-height:1.5}
@media(max-width:968px){.tariff-region>.layout-band{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:600px){.tariff-region>.layout-band>.tariff-amount{padding:24px 20px!important}.tariff-amount table td{padding:16px 0;font-size:16px}.tariff-amount table td:first-child{padding-right:16px}.tariff-region>.layout-band{gap:24px}}
/* Contact form spacing and a menu trigger anchored to the header. */
.lead-fields>.layout-band{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;padding:40px 36px}
.lead-fields>.layout-band>.layout-cell{width:100%!important;min-width:0;padding:0!important;margin:0!important}
.lead-fields h2{padding:0;margin:0 0 20px;line-height:1.25}.lead-fields p{margin:0 0 18px;line-height:1.55}.lead-fields p:last-child{margin-bottom:0}
.lead-fields .enquiry-channel{display:grid;gap:16px;width:100%;margin:0;text-align:left}
.lead-fields .entry-group{margin:0;padding:0}.lead-fields .entry-control{width:100%;margin:0;padding:14px 16px;min-height:50px;box-sizing:border-box}
.lead-fields .lead-submit{width:100%;margin:0;padding:14px 20px;min-height:50px}
.lead-fields .rating-mark{padding:0;margin:2px 0 0;font-size:14px;line-height:1.5}
#riders-masthead{position:relative}
#hamburger{border:0;background:transparent;cursor:pointer;padding:10px;line-height:0}
#invis{border:0;background:transparent;cursor:pointer;padding:4px 12px;line-height:1}
@media(max-width:1060px){#hamburger{position:absolute;top:0;right:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center}#hamburger img{width:24px;height:24px;margin:0}#riders-masthead{padding-right:56px}.opening-scene .hotline-link a{max-width:100%;font-size:15px;padding:10px}}
@media(max-width:968px){.lead-fields>.layout-band{grid-template-columns:minmax(0,1fr);gap:28px}}
@media(max-width:600px){.page-scroll .lead-fields{padding:24px 16px}.lead-fields>.layout-band{padding:24px 20px;gap:24px}#riders-masthead{padding-right:64px}#hamburger{right:12px;top:0}.closing-region{padding:0 16px 24px}.closing-region .layout-band{gap:16px}.closing-region .align-end{text-align:left}}

.enquiry-channel a.action-pill { display:inline-flex; justify-content:center; align-items:center; max-width:100%; box-sizing:border-box; white-space:normal; text-align:center; padding:14px 20px; }
/* Keep the rider inside the frame; reserve an unobstructed photo on narrow screens. */
section.horizon-cover{background-position:right top}
@media(max-width:600px){
 section.horizon-cover{background-color:#9d9ee1;background-image:linear-gradient(to bottom,#9d9ee1,transparent 80px),url(top.webp);background-size:100% 360px,auto 360px;background-position:right bottom;background-repeat:no-repeat;padding-bottom:360px}
 .horizon-cover .opening-copy{width:100%;max-width:100%}
 .horizon-cover .opening-copy h1{padding-top:40px}
}

/* Reserve identical portrait frames before metadata arrives. */
.featured-note>.layout-band{display:grid;grid-template-columns:minmax(0,1fr);gap:32px}
.featured-note .broad-track{width:100%;padding:0;max-width:960px;margin:0 auto}
.featured-note .chapter-caption{width:100%;max-width:900px}
.screening-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;width:100%;max-width:960px;margin:0 auto;align-items:start}
.screening-gallery video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;min-width:0;padding:0;margin:0;border-radius:12px;background:#11162b;box-shadow:0 12px 30px #15233d33}
@media(max-width:600px){.screening-gallery{grid-template-columns:minmax(0,1fr);max-width:340px;gap:24px}.featured-note>.layout-band{gap:24px}.featured-note .broad-track{margin:0!important}}
.featured-note{background-attachment:scroll}

.rider-enquiry{display:grid;gap:16px;max-width:100%;text-align:left}
.rider-enquiry label{display:grid;gap:6px;color:#172d50;font-size:16px;line-height:1.4}
.rider-enquiry input:not([type=hidden]):not([type=checkbox]){width:100%;margin:0;color:#172d50;border:1px solid #a7a0b8;border-radius:7px;background:#fff;padding:12px 14px}
.rider-enquiry .rider-agreement{display:flex;align-items:flex-start;gap:10px;font-size:13px}
.rider-agreement input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0}
.rider-enquiry button{margin:0;max-width:100%;white-space:normal}
.rider-result{color:#172d50;font-size:15px;line-height:1.4;margin:0}
.rider-enquiry button:disabled{opacity:.65;cursor:wait}
