/* Event-page repairs retain the campaign's existing fonts and artwork. */
[data-event-dock][hidden]{display:none!important}
.af-weekend .o2-card a{background:#f8f3e9;border-color:#c8b58c;color:#211c15}
.af-weekend .o2-card__title{color:#211c15;line-height:1.25}
.af-weekend .o2-card__day,.af-weekend .o2-card .icon{color:#80601e}
.af-weekend .o2-card__tag{color:#514b42}
.th-craft .th-craft__photo{display:block;position:static;margin:0;overflow:visible}
.th-craft .th-craft__photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain}
@media(max-width:719px){
 body.o2.has-o2-dock,body.affair{padding-bottom:calc(84px + env(safe-area-inset-bottom,0px))}
 [data-event-dock]{background:#0d0b09;border-top:1px solid #997333;padding:.6rem 1rem calc(.6rem + env(safe-area-inset-bottom,0px));box-shadow:none}
 [data-event-dock] .o2-btn{min-height:48px;font-size:.95rem}
 .af-weekend .o2-card a{background:transparent;gap:1rem}
 .af-weekend .o2-card__title{font-size:clamp(1.1rem,4.5vw,1.4rem)}
 .af-weekend .o2-card__day{font-size:.7rem;line-height:1.4}
}
@media(max-width:700px){
 .af-hero{padding-top:59vw;padding-bottom:1.5rem}
 .af-hero__copy>.o2-eyebrow{margin-top:0;font-size:.65rem;letter-spacing:.2em}
 .af-hero__copy .af-date{margin-block:.6rem}
 .af-hero__copy .af-place{margin-block:1rem}
 .af-hero__copy .o2-actions{gap:.75rem;align-items:center}
 .af-hero__copy .af-small{margin-bottom:0}
}

.af-mobile-buy .o2-btn{width:100%;justify-content:center}
