.event-home-link { display:block; margin-top:20px; font-size:13px; color:var(--green); text-decoration:underline; text-underline-offset:6px; }
.event-home-link span { margin-left:12px; }
.event-hero { display:grid; grid-template-columns:1fr 1fr; }
.event-hero-copy { padding:65px 10% 65px 12%; }
.event-tag { color:var(--accent); font-size:12px; margin-bottom:15px; }
.event-hero h1 { font-size:clamp(32px,3.2vw,50px); font-weight:500; line-height:1.6; letter-spacing:.03em; }
.event-hero h2 { font-family:inherit; font-size:19px; margin:24px 0 16px; font-weight:600; }
.event-hero-copy>p:not(.eyebrow):not(.event-tag):not(.event-hint) { font-size:14px; line-height:2; }
.event-hero figure { position:relative; min-width:0; }
.event-hero img { width:100%; height:100%; object-fit:cover; }
.event-hero figcaption { position:absolute; bottom:18px; left:20px; font-size:10px; color:white; background:#342e25aa; padding:3px 8px; }
.event-hint { margin-top:16px; font-size:11px; color:var(--muted); }
.event-program { padding-top:85px; padding-bottom:85px; }
.event-section-intro { margin:20px 0 34px; color:var(--muted); font-size:13px; }
.event-program-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
.event-program-grid article { border-top:1px solid var(--line); padding-top:24px; }
.event-program-grid article>span { color:var(--accent); font-size:12px; }
.event-program-grid h3 { font-size:23px; margin:12px 0; }
.event-program-grid p { font-size:13px; line-height:2; }
.event-outline { background:var(--green); color:var(--cream); }
.event-outline-inner { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding-top:65px; padding-bottom:65px; }
.event-outline .eyebrow { color:#d8c393; }
.event-outline h2 { font-size:30px; }
.event-outline p { font-size:13px; margin-top:20px; }
.event-outline dl { margin:0; }
.event-outline dl>div { display:grid; grid-template-columns:130px 1fr; padding:14px 0; border-bottom:1px solid #ffffff30; font-size:13px; gap:12px; }
.event-outline dd { margin:0; }
.event-outline dt { color:#d8c393; }
.event-apply { display:grid; grid-template-columns:0.85fr 1.15fr; gap:75px; padding-top:90px; padding-bottom:90px; scroll-margin-top:30px; }
.event-apply-copy p:not(.eyebrow) { margin-top:25px; font-size:13px; line-height:2.1; }
.event-allergy { color:var(--muted); }
.event-form-panel { background:var(--paper); padding:40px; border-radius:5px; min-width:0; }
.event-form-panel h3 { font-size:25px; }
.event-form-note { font-size:12px; margin:10px 0 24px; }
.event-label { display:block; margin:20px 0 8px; font-size:14px; font-weight:600; }
.event-label span, .event-form-panel legend span, .event-consent b { color:#884a30; font-size:10px; margin-left:10px; font-weight:500; }
.event-form-panel input:not([type=checkbox]):not([type=hidden]), .event-form-panel select { width:100%; border:1px solid #b4ad9e; border-radius:3px; padding:12px; background:#fffefa; color:var(--ink); font:inherit; font-size:16px; min-height:48px; }
.event-form-panel input:focus-visible, .event-form-panel select:focus-visible, .event-form-panel button:focus-visible { outline:3px solid #ad613d; outline-offset:3px; }
.event-field-help { font-size:11px; margin-top:8px; color:var(--muted); }
.event-form-panel fieldset { border:0; padding:0; margin:24px 0; min-width:0; }
.event-form-panel legend { font-size:14px; font-weight:600; margin-bottom:10px; }
.event-counts { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.event-counts label { font-size:12px; }
.event-counts select { display:block; margin-top:6px; }
.event-privacy { background:#faf7ef; padding:18px; margin-top:28px; }
.event-privacy h4 { margin:0 0 8px; font-size:12px; }
.event-privacy p { font-size:11px; line-height:2; }
.event-consent { display:flex; gap:12px; align-items:flex-start; margin-top:22px; font-size:12px; cursor:pointer; }
.event-consent input { width:20px; height:20px; flex-shrink:0; margin:2px 0 0; accent-color:var(--green); }
.event-submit { width:100%; border:0; cursor:pointer; font-family:inherit; margin-top:25px; min-height:55px; }
.event-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.event-errors { background:#fff3ed; color:#833b25; border:1px solid #c8967c; padding:18px; font-size:13px; margin:20px 0; }
.event-errors ul { padding-left:20px; }
.event-success>span { display:inline-grid; place-items:center; background:var(--green); color:white; width:48px; height:48px; border-radius:50%; margin-bottom:22px; font-size:24px; }
.event-success p { font-size:14px; margin-top:20px; }
@media (max-width:900px) {
    .event-hero-copy { padding:45px 8%; }
    .event-hero h1 { font-size:34px; }
    .event-outline-inner,.event-apply { gap:35px; }
    .event-program-grid { gap:22px; }
    .event-program-grid h3 { font-size:20px; }
    .event-form-panel { padding:26px; }
}
@media (max-width:700px) {
    .event-hero { grid-template-columns:1fr; }
    .event-hero-copy { padding:42px 7%; }
    .event-hero h1 { font-size:clamp(27px,7.5vw,40px); }
    .event-hero h2 { font-size:18px; }
    .event-tag { font-size:10px; }
    .event-hero figure { height:280px; }
    .event-hero .button { font-size:12px; gap:20px; }
    .event-program { padding-top:55px; padding-bottom:55px; }
    .event-program h2 { font-size:26px; }
    .event-program-grid { grid-template-columns:1fr; gap:25px; }
    .event-program-grid h3 { font-size:24px; }
    .event-outline-inner { grid-template-columns:1fr; gap:25px; padding-top:45px; padding-bottom:45px; }
    .event-outline h2 { font-size:25px; }
    .event-outline dl>div { grid-template-columns:1fr; gap:3px; }
    .event-outline dt { font-size:11px; }
    .event-apply { grid-template-columns:1fr; padding-top:55px; padding-bottom:55px; gap:30px; }
    .event-apply h2 { font-size:28px; }
    .event-form-panel { padding:25px 19px; }
    .event-form-panel h3 { font-size:21px; }
    .event-counts { gap:14px; }
    .event-home-link { font-size:12px; }
}
