/* Events uses the existing NoSh marketing type, colours and Wednesday hero. */
.events-main{max-width:1180px;margin:auto;padding:48px 28px 80px;color:var(--ink)}
.events-list-main{max-width:1140px;margin:auto;padding:72px 28px 88px}
.events-list-section+.events-list-section{margin-top:80px}
.events-list-section .section-heading{max-width:730px;margin-bottom:44px}
.events-list-section .section-heading h2{font-size:clamp(2.2rem,4.4vw,3.5rem);line-height:1.08}
.event-learn-more{align-self:center;padding:.6rem .25rem;color:var(--brand-dark);font-size:.9rem;font-weight:800;text-underline-offset:4px}
.event-list{border-top:1px solid var(--line)}
.event-row{display:grid;grid-template-columns:160px minmax(0,1fr) 170px;gap:28px;padding:32px 0;border-bottom:1px solid var(--line);align-items:start}
.event-row-photo{margin:4px 0 0;overflow:hidden;border-radius:8px;background:#e9eff0}
.event-row-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center 60%}
.event-row-date{margin:0 0 8px;color:var(--brand-dark);font-size:.84rem;font-weight:800;letter-spacing:.02em}
.event-row h3{margin:0 0 7px;font:400 clamp(1.6rem,2.6vw,2rem)/1.15 Georgia,serif}
.event-row h3 a{color:var(--ink);text-decoration:none}
.event-row h3 a:hover,.event-row h3 a:focus-visible{color:var(--brand-dark)}
.event-row-copy p{margin-top:0}
.event-row-collaboration{margin-bottom:8px;font-size:.82rem;font-weight:800;color:var(--muted)}
.event-row-tagline{margin-bottom:8px;font-weight:800}
.event-row-description{max-width:570px;margin-bottom:12px;color:var(--muted);font-size:.94rem;line-height:1.65}
.event-row-venue,.event-row-time{margin-bottom:3px;font-size:.86rem}
.event-row-action{display:flex;flex-direction:column;align-items:flex-end;gap:9px;padding-top:4px;text-align:right;font-size:.92rem}
.event-availability{color:var(--brand-dark);font-size:.88rem;font-weight:700}
.event-text-link{display:inline-block;color:var(--brand-dark);font-weight:800;text-decoration:none;text-underline-offset:4px}
.event-text-link:hover,.event-text-link:focus-visible{text-decoration:underline}
.event-row-action .event-text-link{margin-top:16px}
.events-empty{margin:0;padding:32px 0;text-align:center;color:var(--muted);border-bottom:1px solid var(--line)}
.event-back{display:inline-block;margin-bottom:28px;color:var(--brand-dark);font-size:.9rem;text-decoration:none}
.event-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.event-hero h1{font:500 clamp(2.6rem,4.5vw,4.2rem)/1.04 Georgia,serif;letter-spacing:-.035em;margin:12px 0 18px}
.event-hero figure,.event-gallery figure{margin:0}
.event-hero figure img{width:100%;height:auto;display:block;border-radius:14px}
.event-tagline{font-size:1.18rem;font-weight:800;margin:0 0 24px}
.event-collaboration{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:16px;align-items:center;margin:24px 0 28px;padding:20px 0;border-top:1px solid var(--line)}
.event-presenter{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;font-size:.9rem}
.event-presenter img{display:block;width:88px;height:88px;object-fit:contain;border-radius:8px}
.event-collaboration-times{font:400 2rem Georgia,serif;color:var(--muted)}
.event-partner{display:flex;align-items:center;gap:18px;margin:24px 0;line-height:1.7}
.event-partner img{width:72px;height:72px;object-fit:contain;border-radius:50%}
.event-facts{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}
.event-facts>div{display:grid;grid-template-columns:60px minmax(0,1fr);gap:14px;padding:9px 0;font-size:.94rem}
.event-facts dd{margin:0;font-weight:700}
.event-facts dt{color:var(--muted)}
.event-price{font-size:1.7rem;font-weight:800;margin:20px 0 4px}
.event-ticket-cta{margin-top:8px;font-size:.96rem}
.event-ticket-cta:disabled{background:#dcecef;color:#52676a;cursor:not-allowed;box-shadow:none;transform:none}
.event-sales-status{margin:8px 0 0;color:var(--muted);font-size:.85rem}
.event-copy,.event-extra{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:64px 0;align-items:start}
.event-copy h2,.event-extra h2{font:400 clamp(1.8rem,3.3vw,2.6rem)/1.15 Georgia,serif;margin:0 0 24px}
.event-copy p,.event-extra p{line-height:1.75;margin:0 0 18px}
.event-included{background:#eef9fa;padding:32px;border-radius:14px}
.event-included ul{list-style:none;padding:0;margin:0}
.event-included li{position:relative;padding:13px 0 13px 26px;border-bottom:1px solid #d1e8e9;line-height:1.6}
.event-included li:before{content:'✓';position:absolute;left:0;color:var(--brand-dark);font-weight:800}
.event-included .event-included-footer{margin:22px 0 0;font-weight:800;font-size:.92rem}
.event-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}
.event-gallery img{width:100%;height:auto;display:block;border-radius:14px}
.event-gallery-single{grid-template-columns:1fr;max-width:820px;margin:0 auto}
.event-caption{max-width:820px;margin:12px auto 0;font-size:.78rem;line-height:1.6;color:var(--muted)}
.event-extra{padding-bottom:12px}
.event-directions{padding:30px;border:1px solid var(--line);border-radius:14px}
.event-directions address{font-style:normal;line-height:1.85;margin-bottom:24px}
.muted{font-size:.86rem;line-height:1.6;color:var(--muted)}
.event-registration{max-width:760px;margin:56px auto 0;padding:32px;background:#f4f5ee;border-radius:14px}
.event-registration h2{font:400 2rem/1.2 Georgia,serif;margin:0 0 18px}
.event-registration form{display:grid;gap:18px}
.event-registration label{display:grid;gap:8px;font-weight:700}
.event-registration input,.event-registration select{width:100%;padding:12px;border:1px solid #9baea4;border-radius:7px;font:inherit;background:white}
.event-registration small{font-weight:400}
.event-registration .event-consent{display:block;font-size:14px;font-weight:400}
.event-consent input{width:auto}
.event-preview{padding:14px;text-align:center;background:#ffdf9b;color:#573d00;font-weight:700;font-size:.9rem}
.event-error{padding:16px;background:#fff0df;border:1px solid #d99356}
.event-admin-images{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.event-admin-images img{max-width:100%;max-height:120px}
.event-confirmation dl>div{margin:14px 0}
.event-confirmation dd{margin:0;font-weight:700}
@media(max-width:900px){.event-row{grid-template-columns:130px minmax(0,1fr);gap:22px}.event-row-action{grid-column:2;align-items:flex-start;text-align:left;flex-direction:row;flex-wrap:wrap;gap:12px 18px;padding-top:0}.event-row-action .event-text-link{margin-top:0}.event-hero{gap:28px}.event-copy,.event-extra{gap:28px}.event-presenter img{width:76px;height:76px}}
@media(max-width:650px){.events-main{padding:24px 18px 52px}.events-list-main{padding:48px 18px 56px}.events-list-section+.events-list-section{margin-top:56px}.events-list-section .section-heading{margin-bottom:30px}.event-row{grid-template-columns:96px minmax(0,1fr);gap:14px;padding:26px 0}.event-row-photo img{aspect-ratio:1;object-position:center}.event-row h3{font-size:1.5rem}.event-row-date{font-size:.76rem}.event-row-collaboration{font-size:.74rem}.event-row-description{font-size:.86rem}.event-row-action{grid-column:1/-1;align-items:center;gap:10px 18px;justify-content:space-between;font-size:.85rem}.event-row-action .event-text-link{margin-left:auto}.event-hero,.event-copy,.event-extra,.event-gallery{grid-template-columns:1fr}.event-hero{gap:26px}.event-hero>figure{max-width:420px;margin:auto}.event-hero h1{font-size:clamp(2.65rem,12vw,3.5rem)}.event-collaboration{gap:12px}.event-presenter img{width:80px;height:80px}.event-copy{padding:40px 0;gap:30px}.event-included,.event-directions{padding:24px}.event-extra{padding-top:40px;gap:24px}.event-registration{padding:24px;margin-top:40px}.event-preview{font-size:.77rem;line-height:1.5}.event-gallery{max-width:440px;margin:auto}.event-facts>div{grid-template-columns:54px minmax(0,1fr);gap:12px}.event-ticket-cta{width:100%;text-align:center}}

/* Approved public Events content and location presentation. */
.wednesday-info{display:grid;gap:10px;padding:0;margin:0 0 24px;list-style:none;font-size:1rem;line-height:1.5}
.wednesday-info li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start}
.wednesday-info svg,.event-location-pin{width:18px;height:18px;margin-top:3px;fill:none;stroke:var(--brand-dark);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.wednesday-info strong{font-weight:800}
.event-location{display:inline-flex;align-items:flex-start;gap:8px;max-width:100%}
.event-location>span{min-width:0}
.event-location-pin{flex:0 0 18px}
.event-partner-link{color:inherit;text-decoration:none;border-radius:8px}
.event-partner-link:hover strong,.event-partner-link:focus-visible strong{text-decoration:underline;text-underline-offset:4px}
.event-partner-link:focus-visible{outline:2px solid var(--brand-dark);outline-offset:5px}
#event-interest-form a[href="/privacy"]{color:var(--ink);color:color-mix(in srgb,var(--brand-dark) 90%,var(--ink));font-weight:700;text-decoration:underline;text-underline-offset:3px}
#event-interest-form a[href="/privacy"]:hover{color:var(--ink);text-decoration-thickness:2px}
#event-interest-form a[href="/privacy"]:focus-visible{outline:3px solid var(--brand);outline-offset:3px;text-decoration-thickness:2px}

.event-row-action .event-interest-cta{padding:.65rem .85rem;font-size:.82rem;text-align:center}

/* Booking details use the existing theme and remain separate from interest acknowledgements. */
.event-confirmation a:not(.site-button){color:var(--brand-dark);text-underline-offset:3px}
.event-confirmation a:not(.site-button):hover{color:#115d66;text-decoration-thickness:2px}
.event-confirmation a:focus-visible{outline:3px solid var(--brand);outline-offset:4px;text-decoration-thickness:2px}
.event-confirmation .event-booking-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:28px 0}
.event-confirmation .event-booking-summary>div{margin:0;padding:16px;border:1px solid var(--line);border-radius:8px;background:var(--paper);min-width:0}
.event-booking-wide{grid-column:1/-1}
.event-booking-detail dt{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.82rem;margin-bottom:6px}
.event-booking-detail dt svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:var(--brand-dark);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.event-booking-detail dd{overflow-wrap:anywhere;line-height:1.6}
@media(max-width:650px){.event-confirmation .event-booking-summary{grid-template-columns:1fr}.event-booking-detail dt{font-size:.85rem}.event-confirmation .event-booking-summary>div{padding:14px}}

/* Event-specific operational responsibility copy, never a liability waiver. */
.event-responsibility{margin:24px 0;padding:18px 20px;border-left:3px solid var(--brand);background:#eef9fa;border-radius:0 8px 8px 0;font-size:.9rem;line-height:1.65}
.event-responsibility p{margin:0 0 14px}.event-responsibility p:last-child{margin-bottom:0}
@media(max-width:650px){.event-responsibility{padding:16px;font-size:.88rem}}

/* Scoped editor guidance; other NoSh admin screens keep their existing styles. */
.event-admin-heading{border-bottom:1px solid var(--line);padding-bottom:12px;scroll-margin-top:20px}
.event-admin-heading h2{margin:0 0 8px}
.event-admin-heading p,.event-admin-editor small{margin:0;color:var(--muted);font-size:.9rem;line-height:1.6;font-weight:400}
.event-admin-editor label{align-content:start}
.event-admin-editor input,.event-admin-editor select,.event-admin-editor textarea{min-width:0}
.event-admin-tools{scroll-margin-top:20px}
.event-admin-tools a{color:var(--blue-dark);text-underline-offset:3px}
.event-admin-tools a:hover{color:#115d66;text-decoration-thickness:2px}
.event-admin-tools a:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.event-admin-tools label{margin-top:16px}
.event-admin-date-list,.event-admin-ticket-list{list-style:none;padding:0;margin:16px 0}
.event-admin-date-list li,.event-admin-ticket-list li{padding:12px 0;border-bottom:1px solid var(--line)}
.event-admin-ticket-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.event-admin-selected{margin-left:8px;font-size:.8rem;color:var(--muted)}
@media(max-width:700px){.event-admin-tools .actions{align-items:stretch}.event-admin-tools .actions button{flex:1 1 100%}.event-admin-ticket-list li{align-items:flex-start}.event-admin-tools input{min-width:0}}

/* Booking review keeps the agreed disclosures accessible without dominating. */
.event-checkout{max-width:760px;margin:24px auto 0}
.event-checkout h1{font:400 clamp(1.8rem,4vw,2.5rem)/1.2 Georgia,serif;margin:0 0 12px}
.event-checkout .event-checkout-title{font:400 1.6rem/1.25 Georgia,serif;margin:26px 0 8px}
.event-checkout-date,.event-checkout-reference{color:var(--muted);font-size:.9rem}
.event-checkout-items{border-block:1px solid var(--line);margin:20px 0}
.event-checkout-items>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0}
.event-checkout-items small{display:block;margin-top:5px;color:var(--muted)}
.event-checkout-total{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:20px 0}
.event-checkout-total strong{font-size:1.9rem;color:var(--brand-dark)}
.event-checkout-reference{overflow-wrap:anywhere}
.event-checkout-collector{font-size:.88rem;line-height:1.6;margin:14px 0}
.event-checkout .site-button{width:100%;margin:8px 0}
.event-checkout-disclosures{border-top:1px solid var(--line);margin-top:24px;padding-top:16px;font-size:.88rem;line-height:1.6}
.event-checkout-disclosures p{margin:0 0 10px}
.event-checkout-disclosures details,.event-checkout-terms{margin-top:12px;font-size:.9rem;line-height:1.6}
.event-checkout-terms summary,.event-checkout-disclosures summary{cursor:pointer;color:var(--brand-dark);font-weight:700;padding:8px 0}
.event-checkout-terms summary:focus-visible,.event-checkout-disclosures summary:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.event-confirmation>form+.site-button{margin-top:16px}
@media(max-width:650px){.event-checkout{padding:24px 20px}.event-checkout-title{font-size:1.45rem}.event-checkout-items>div{gap:12px}.event-checkout-total strong{font-size:1.7rem}}
