/* Batch 17 (2026-10-02): artistic review fixes. Loads after every route sheet.
   S1 headings, S2 buttons, S3 dates, S4 and S7 plaid, S5 strips, S6 container, then per-page fixes. */
:root{--om17-red:#ef2435;--om17-mint:#68f8b3;--om17-ink:#0a0a0a;--om17-container:min(1200px,100% - 96px);
  --om17-h1:clamp(2.75rem,3.5vw + 1rem,4.5rem);--om17-h2:clamp(2.25rem,5.5vw,3.5rem);--om17-h3:clamp(1.5rem,3.5vw,2rem);
  --om17-stroke:clamp(3px,.08em,6px);--om17-gap:80px;
  --om17-well:0 0 0 1px rgba(255,64,80,.9),inset 0 1px 0 rgba(255,255,255,.12),0 0 18px rgba(239,36,53,.28)}
@media(max-width:767px){:root{--om17-gap:56px;--om17-container:calc(100% - 32px)}}

/* ---------- S7 + S4: one continuous plaid, one dim, footer last ---------- */
html{background:#050505!important}
html:root body.om-mvp.om-mvp.om-mvp{background:transparent!important;background-color:transparent!important;background-image:none!important;position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
body.om-mvp::before{content:"";position:fixed;inset:-480px;z-index:-2;pointer-events:none;background:linear-gradient(rgba(12,7,8,.35),rgba(12,7,8,.35)),url('./journey-weave-tile.jpg') 0 0/187px 186px repeat;background-color:#d1d1d1;background-blend-mode:multiply;animation:om17-drift 14s ease-in-out infinite alternate;will-change:transform}
body.om-mvp::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,0) 0,rgba(0,0,0,.55) 8%,rgba(0,0,0,.55) 92%,rgba(0,0,0,0) 100%)}
@keyframes om17-drift{from{transform:translate3d(0,0,0)}to{transform:translate3d(-140px,-70px,0)}}
@media(prefers-reduced-motion:reduce){body.om-mvp::before{animation:none}}
/* The per-route plaid layers and per-main dims retire in favor of the shared layer. */
body.om-mvp .omhm26-root::before,body.om-mvp .omhm26-root::after,body.om-mvp main::before,body.om-mvp #hero::before{background:none!important;animation:none!important;display:none!important}
body.om-mvp .omhm26-root,body.om-mvp main,body.om-mvp .omhm26-root.omhm26-journey{background:transparent!important;background-image:none!important}
body.om-mvp>.omhm26-root,body.om-mvp>main,body.om-mvp>#top{flex:1 0 auto;min-width:0;align-self:stretch}
body.om-mvp footer.om-site-footer{margin-bottom:0}
body.om-mvp .om-site-community{margin-bottom:0}
body.om-mvp>footer.om-site-footer{margin-top:auto;flex:0 0 auto}

/* ---------- S1: heading system ---------- */
body.om-mvp :is(h1,h2):not(.home-accessible-title,#hm12-hero-sub,.story-chapter-head h2,.cta-head h2,.album-gift-body h2,.editorial-choice h2),
body.om-mvp :is(.ticket-comparison-day h3,.ticket-choice-copy h3,.editorial-choice h2,.om-headline-red){
  font-family:"OMHM Tomorrow",system-ui,sans-serif!important;font-weight:800!important;text-transform:uppercase!important;color:var(--om17-red)!important;
  -webkit-text-stroke:var(--om17-stroke) #fff!important;paint-order:stroke fill!important;text-shadow:0 4px 0 var(--om17-ink)!important;text-wrap:balance}
body.om-mvp :is(.ticket-comparison-day h3,.ticket-choice-copy h3,.editorial-choice h2){-webkit-text-stroke-width:clamp(2px,.05em,3px)!important;text-shadow:none!important}
body.om-mvp h1:not(.home-accessible-title){font-size:var(--om17-h1)!important;line-height:1!important}
body.om-mvp :is(.ticket-comparison-day h3,.ticket-choice-copy h3,.editorial-choice h2){font-size:var(--om17-h3)!important;line-height:1.1!important}
body.om-mvp :is(h2:not(.home-accessible-title,#hm12-hero-sub,.story-chapter-head h2,.cta-head h2,.album-gift-body h2,.editorial-choice h2,#home-highlights-title,#hm12-final-title,#archive-next-title,[id^=ab15-t])){font-size:var(--om17-h2);line-height:1.02}
body.om-mvp :is(h1,h2,.ticket-choice-copy h3,.ticket-comparison-day h3) :is(.om-headline-script,.review-script.om-headline-script,[class*=script]:not(#home-categories-title *),.ticket-intro h1>span){-webkit-text-stroke:0!important;paint-order:normal!important;color:#fff!important;text-shadow:none!important;font-family:"OMHM Backline",cursive!important;text-transform:none!important}
body.om-mvp :is(.om-site-kicker,.editorial-kicker,.om-site-call-kicker,[class*=eyebrow],[class*=kicker]){color:var(--om17-mint)!important}

/* ---------- S2: button system (10px rounded rectangles, never pills) ---------- */
body.om-mvp :is(.om-btn--primary,.journey-button:not(.journey-button--secondary),.ticket-action,.hm12-btn,.album-gift-browse,.editorial-actions a:first-child,.om-site-call-button,.om17-btn),
body.om-mvp :is(.journey-button--secondary,.om-btn--secondary,.editorial-actions a:not(:first-child),.om17-btn-secondary){
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:14px 24px;border:3px solid #fff!important;border-radius:10px!important;
  background:var(--om17-red)!important;background-image:none!important;color:#fff!important;font:700 18.72px/1.2 "OMHM Tomorrow",system-ui,sans-serif!important;letter-spacing:.03em;text-transform:uppercase;text-decoration:none;text-shadow:none!important;box-shadow:none!important;cursor:pointer;transition:none}
body.om-mvp :is(.journey-button--secondary,.om-btn--secondary,.editorial-actions a:not(:first-child),.om17-btn-secondary){background:transparent!important}
body.om-mvp :is(.om-btn--primary,.journey-button,.ticket-action,.hm12-btn,.album-gift-browse,.editorial-actions a,.om-site-call-button,.om17-btn,.om17-btn-secondary):hover{background:#c91a2a!important;color:#fff!important;border-color:#fff!important;transform:none}
body.om-mvp :is(.journey-button--secondary,.om-btn--secondary,.editorial-actions a:not(:first-child),.om17-btn-secondary):hover{background:rgba(255,255,255,.14)!important}
body.om-mvp :is(.om-btn--primary,.journey-button,.ticket-action,.hm12-btn,.album-gift-browse,.editorial-actions a,.om-site-call-button,.om17-btn,.om17-btn-secondary):active{transform:scale(.98)!important}
body.om-mvp :is(.om-btn--primary,.journey-button,.ticket-action,.hm12-btn,.album-gift-browse,.editorial-actions a,.om-site-call-button,.om17-btn,.om17-btn-secondary):focus-visible{outline:3px solid #fff;outline-offset:4px}
body.om-mvp .om-site-header .om-site-ticket{border-color:#ff000c!important}
@media(prefers-reduced-motion:reduce){body.om-mvp :is(.om-btn--primary,.journey-button,.ticket-action,.hm12-btn,.editorial-actions a):active{transform:none!important}}
/* No pills anywhere: the About chips become 10px rounded rectangles. */
body.om-mvp .ab15 .ab15-chips li{border-radius:10px!important}

/* ---------- S6: one container, section rhythm, mobile body token ---------- */
body.om-mvp main#journey-main>section:not(.journey-home-hero,.journey-section),
body.om-mvp main#journey-main>.ticket-preview,
body.om-mvp main#journey-main>.home-shop-separator,
body.om-mvp .om-site-community>section.om-site-newsletter-call,
body.om-mvp footer.om-site-footer{box-sizing:border-box;width:var(--om17-container)!important;max-width:none!important;margin-inline:auto!important}
body.om-mvp main#journey-main>.journey-section:not(.maker-applicant-page):is(.journey-home-benefits,.journey-home-highlights,.journey-home-plan-go),
body.om-mvp main#journey-main>section#makers,body.om-mvp main#journey-main>section#market-moments{box-sizing:border-box;width:var(--om17-container)!important;max-width:none!important;margin-inline:auto!important}
@media(min-width:768px){body.om-mvp main#journey-main>section:not(.journey-home-hero)+section,body.om-mvp .om-site-community{margin-block-start:var(--om17-gap)}}
@media(max-width:767px){body.om-mvp :is(.home-intro-copy p,.ticket-preview p,.om-strip p){font-size:16px;line-height:1.55;color:#f2f2f2}}

/* ---------- S5: strip component ---------- */
body.om-mvp :is(.om-strip,.home-intro-copy,.journey-home-benefit--text,.ticket-fees,.ticket-notes,.journey-well:not(.maker-applicant-page),.hm10-strip){
  box-sizing:border-box;background:var(--om17-ink)!important;background-image:none!important;border:3px solid var(--om17-red)!important;border-radius:12px!important;padding:20px 24px;text-align:center;box-shadow:var(--om17-well)!important;color:#fff}
body.om-mvp :is(.om-strip,.home-intro-copy,.ticket-notes,.hm10-strip) p{max-width:62ch!important;margin-inline:auto!important;font-size:16px;line-height:1.55;color:#f2f2f2;text-align:center!important}
body.om-mvp .home-intro-copy{max-width:820px;margin-inline:auto}
body.om-mvp .journey-home-benefit--text{display:flex!important;flex-direction:column;align-items:center;gap:8px;margin-inline:0;width:100%;box-sizing:border-box}
body.om-mvp .journey-home-benefit--text .journey-home-benefit-copy{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;background:none!important;border:0!important;box-shadow:none!important;padding:0!important}
body.om-mvp .journey-home-benefit--text .journey-home-benefit-copy::before,body.om-mvp .journey-home-benefit--text::before,body.om-mvp .journey-home-benefit--text::after{display:none!important}
body.om-mvp .journey-home-benefit-copy{text-align:center}
body.om-mvp .journey-home-benefit-copy p{margin-inline:auto;max-width:32ch}
body.om-mvp .journey-home-benefit--text .journey-home-benefit-copy p{max-width:62ch}
/* The ticket fee note and the notes aside read as strips; the children note, links bar and fine print merge into one. */
body.om-mvp .ticket-fees{padding:10px 20px;margin-block:12px}
body.om-mvp main>div.ticket-preview>:is(.ticket-children,.ticket-planning,.ticket-notes),body.om-mvp #tickets>.ticket-children{box-sizing:border-box;margin:0!important;border:3px solid var(--om17-red)!important;border-top-width:0!important;border-radius:0!important;background:var(--om17-ink)!important;text-align:center;padding:16px 24px;justify-content:center;box-shadow:none!important}
body.om-mvp main>div.ticket-preview>.ticket-planning{border-top-width:3px!important;border-radius:12px 12px 0 0!important;margin-top:var(--om17-gap)!important}
body.om-mvp main>div.ticket-preview>.ticket-notes{border-radius:0 0 12px 12px!important}
body.om-mvp #tickets>.ticket-children{border-top-width:3px!important;border-radius:12px!important;margin-top:20px!important}

/* ---------- Home ---------- */
body.om-mvp .home-hero-split{align-items:stretch!important}
body.om-mvp .home-hero-split .home-hero-panel{align-self:stretch;display:flex!important;flex-direction:column;justify-content:center;border:3px solid var(--om17-red)!important;border-radius:12px;box-shadow:var(--om17-well)}
body.om-mvp .home-hero-split .home-hero-panel h2{white-space:normal}
body.om-mvp .home-hero-panel .om17-nobr,body.om-mvp .om17-nobr{white-space:nowrap}
body.om-mvp p.ticket-planning{background:none!important;border:0!important;box-shadow:none!important;justify-content:center;padding:0;margin-block:24px 0}
body.om-mvp p.ticket-planning a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:240px;padding:14px 28px;border:3px solid #fff;border-radius:10px;background:var(--om17-red);color:#fff!important;font:700 18.72px/1.2 "OMHM Tomorrow",system-ui,sans-serif;letter-spacing:.03em;text-transform:uppercase;text-decoration:none!important}
body.om-mvp p.ticket-planning a:active{transform:scale(.98)}
body.om-mvp .category-panel-controls button{box-sizing:border-box;min-height:48px;padding:12px 24px;border:3px solid #fff!important;border-radius:10px!important;background:transparent!important;color:#fff!important;font:700 15px/1.2 "OMHM Tomorrow",system-ui,sans-serif!important;letter-spacing:.04em;text-transform:uppercase;box-shadow:none!important}
body.om-mvp .category-panel-controls button:active{transform:scale(.98)}
body.om-mvp .journey-home-plan-bar{position:relative;isolation:isolate;box-shadow:var(--om17-well)!important;border-radius:12px;grid-template-columns:1fr 1fr!important;align-items:center}
body.om-mvp .journey-home-plan-bar::before,body.om-mvp .journey-home-plan-bar::after{background:linear-gradient(90deg,rgba(10,10,10,.92),rgba(10,10,10,.78))!important;background-blend-mode:normal!important;z-index:-1}
body.om-mvp .journey-home-plan-bar .journey-kicker{color:var(--om17-mint)!important}
body.om-mvp .journey-home-plan-bar .journey-home-plan-actions{justify-content:center}
body.om-mvp .journey-home-plan-bar>.journey-home-plan-actions::after{content:"";display:block;width:min(100%,320px);aspect-ratio:2/1;margin-top:0;background:url('./journey-wreath.webp') center/contain no-repeat}

/* ---------- Newsletter band (every route) ---------- */
body.om-mvp .om-site-newsletter-call{background:var(--om17-ink)!important;border:3px solid var(--om17-red)!important;border-radius:12px!important;box-shadow:var(--om17-well)}
body.om-mvp .om-site-newsletter-call .om-site-call-kicker{color:var(--om17-mint)!important}
@media(min-width:992px){body.om-mvp .om-site-newsletter-call{display:grid!important;grid-template-columns:1.1fr .9fr;align-items:center;gap:32px}
 body.om-mvp .om-site-newsletter-call::after{content:"";grid-column:2;grid-row:1;justify-self:center;width:min(100%,360px);aspect-ratio:1/1;background:url('./journey-wreath.webp') center/contain no-repeat}}
body.om-mvp footer.om-site-footer{background:#000!important}

/* ---------- Tickets ---------- */
body.om-mvp .ticket-intro{grid-template-columns:1.1fr .9fr!important}
body.om-mvp .ticket-intro-photo{aspect-ratio:4/3!important;height:auto!important}
body.om-mvp .ticket-intro-photo img{object-fit:cover!important;object-position:20% 60%!important}
body.om-mvp .ticket-intro .ticket-location{font-size:15px;letter-spacing:.02em;color:var(--om17-mint);margin-block:6px 28px}
body.om-mvp .ticket-intro p:not(.ticket-kicker,.ticket-location){font-size:18px;max-width:52ch;line-height:1.5}
body.om-mvp #ticket-choice-title{text-align:center;background:none!important;box-shadow:none!important;border:0!important;margin-block:var(--om17-gap) 24px}
body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-offers .ticket-choice,body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-offers .ticket-choice.ticket-choice-og{display:grid!important;grid-template-columns:1fr!important;grid-template-areas:none!important;row-gap:12px;box-shadow:var(--om17-well)!important;border:3px solid var(--om17-red)!important;background:rgba(10,10,10,.92)!important}
body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-offers .ticket-choice .ticket-choice-art{aspect-ratio:auto!important;height:auto!important;width:100%!important;max-height:none;padding:0!important;justify-self:stretch;display:grid;place-items:center}
body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-choice-art img{width:auto!important;max-width:100%!important;height:auto!important;max-height:200px!important;object-fit:contain}
body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-offers .ticket-choice .ticket-choice-copy{width:100%;grid-column:auto!important;grid-row:auto!important}
body.om-mvp .omhm26-root.omhm26-journey .ticket-preview .ticket-offers .ticket-choice .ticket-choice-art{grid-column:auto!important;grid-row:auto!important}
@media(max-width:900px){body.om-mvp .ticket-intro{grid-template-columns:1fr!important}body.om-mvp .ticket-offers{grid-template-columns:1fr!important}}

/* ---------- Dates (S3), set by the script classes ---------- */
body.om-mvp .om17-date{display:block;font-family:"OMHM Backline",cursive!important;font-weight:400!important;font-size:clamp(1.3rem,2.2vw + .5rem,2.1rem)!important;line-height:1.1!important;color:#fff!important;text-transform:none!important;letter-spacing:0!important;white-space:nowrap;margin:6px 0 4px!important;text-align:inherit}
body.om-mvp .om17-meta{display:block;font:400 15px/1.4 "OMHM Tomorrow",system-ui,sans-serif;color:var(--om17-mint)}

/* ---------- Holiday Market ---------- */
body.om-mvp .omhm-gallery-photo,body.om-mvp .omhm-gallery-open img{object-fit:cover!important;object-position:50% 35%!important}
body.om-mvp :is(.omhm-gallery-caption span,.maker-accordion-caption>span,.omhm-gallery-caption){white-space:normal!important;overflow:visible!important;text-overflow:clip!important;display:block!important;-webkit-line-clamp:unset!important;max-height:none!important}
body.om-mvp .hm12-btn{margin-top:0}
body.om-mvp .celebration-replay,body.om-mvp .album-motion{display:none!important}
body.om-mvp .hm12-final .shell,body.om-mvp #archive-next-title~*{max-width:62ch}
@media(min-width:601px) and (max-width:1023px){body.om-mvp .omhm-gallery-stage{grid-auto-flow:column}}
body.om-mvp :is(.hz-head,.hm10-strip,.story-prose){text-align:center}
body.om-mvp .hm12-final .shell p{font-size:18px;line-height:1.6;color:#ececec}

/* ---------- Shopping Guide, Help, Makers, Privacy ---------- */
body.om-mvp .editorial-well,body.om-mvp .editorial-choice{box-shadow:var(--om17-well)}
body.om-mvp .editorial-choice{border:4px solid var(--om17-red)!important;border-radius:12px!important}
body.om-mvp .editorial-kicker{letter-spacing:.06em}
body.om-mvp .journey-support-page p{margin-block:0 16px}

/* ---------- Photo gallery ---------- */
html body.om-mvp .year-grid{display:grid!important;columns:auto!important;grid-template-columns:repeat(var(--album-columns,3),minmax(0,1fr))!important;gap:12px!important}
html body.om-mvp .year-grid .year-photo{display:block;margin:0!important;break-inside:auto}
html body.om-mvp .year-grid .year-photo img{width:100%!important;height:auto!important;aspect-ratio:4/3;object-fit:cover!important}
@media(max-width:600px){html body.om-mvp .year-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
body.om-mvp .album-mosaic-track:hover,body.om-mvp .album-mosaic:focus-within .album-mosaic-track{animation-play-state:paused}

html body.om-mvp .omhm26-root.omhm26-journey main#journey-main .ticket-preview section#tickets h2#ticket-choice-title{font-family:"OMHM Tomorrow",system-ui,sans-serif!important;font-weight:800!important;text-transform:uppercase!important;color:var(--om17-red)!important;-webkit-text-stroke:var(--om17-stroke) #fff!important;paint-order:stroke fill!important;text-shadow:0 4px 0 var(--om17-ink)!important;font-size:var(--om17-h2)!important;text-align:center}
body.om-mvp .ticket-intro-art,body.om-mvp .ticket-intro-photo{width:100%!important;max-width:none!important}

body.om-mvp .ticket-intro-art{margin-top:16px}
body.om-mvp .owner-draft-actions{flex-wrap:wrap}
body.om-mvp .owner-draft-actions .journey-button{white-space:nowrap}
@media(max-width:600px){
 body.om-mvp .ticket-comparison-choice{grid-template-columns:72px minmax(0,1fr)!important;column-gap:12px}
 body.om-mvp .ticket-comparison-choice .ticket-comparison-icon{width:72px!important}
 body.om-mvp .ticket-comparison-choice>strong{flex-direction:column!important;align-items:flex-start!important;gap:2px}
 body.om-mvp .ticket-comparison-choice>strong>span{white-space:nowrap;margin:0!important}
}

body.om-mvp :is(.journey-support-page,.maker-applicant-page) :is(.journey-kicker,.journey-eyebrow,p:first-child:not(.om17-date)){color:var(--om17-mint)!important}
body.om-mvp .editorial-hero .om17-date{margin:8px 0 14px!important}
body.om-mvp .editorial-choice .om17-date{font-size:1.6rem!important;color:var(--om17-mint)!important}
body.om-mvp .journey-section.journey-well{width:var(--om17-container)!important;max-width:880px!important;margin-inline:auto!important;padding:clamp(24px,4vw,40px) clamp(20px,4vw,48px)!important;box-sizing:border-box}
body.om-mvp .journey-well :is(h1,h2){margin-block:8px 16px!important}
body.om-mvp .journey-well p{max-width:62ch;margin-inline:auto;font-size:16px;line-height:1.55}

/* About: the OH10 H2 repeats the lockup below it; keep it for screen readers only. */
body.om-mvp #ab15-t8{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
body.om-mvp .hero-meta .om17-date{font-size:1.5rem!important}
body.om-mvp .maker-accordion-panel img{object-position:50% 35%!important}
@media(max-width:420px){body.om-mvp .om17-date{white-space:normal}body.om-mvp .editorial-choice .om17-date{font-size:1.3rem!important}}
