:root{--paper:#f8f5ed;--white:#fffefa;--ink:#163c32;--muted:#57665b;--line:#d9dfd2;--red:#913e43;--light:#edf1e7}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:15px/1.55 system-ui,-apple-system,'Segoe UI',sans-serif}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:4px}[hidden]{display:none!important}.skip{position:absolute;left:15px;top:-80px;z-index:8;background:var(--ink);color:white;padding:12px}.skip:focus{top:12px}.topbar{max-width:1440px;padding:24px 5%;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;font-weight:700;letter-spacing:-.4px;font-size:20px;white-space:nowrap}.brand-mark{font-size:30px;margin-right:8px;color:var(--red);vertical-align:middle}.region{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid var(--ink);border-radius:6px;color:var(--white);background:var(--ink);padding:12px 18px;font-weight:600;text-decoration:none}.button:hover{background:#285246}.button.small{font-size:12px;padding:10px 14px}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:var(--light)}.hero{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:72px 5% 62px;gap:40px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.1px;margin:0 0 17px;color:var(--red)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:500;letter-spacing:-1.5px;line-height:1.08}h1{font-size:clamp(48px,6.4vw,88px);margin:0 0 23px}h1 em{font-weight:500;color:var(--red)}.intro{font-size:16px;color:var(--muted);line-height:1.8;margin:0}.hero-note{background:var(--light);border:1px solid #d7dfcf;border-radius:50% 50% 6px 6px;width:270px;min-height:260px;flex-shrink:0;padding:26px 24px 28px;text-align:center;transform:rotate(3deg);margin-right:24px}.hero-note .star{font-size:63px;color:var(--red);line-height:1.2}.hero-note p{font-family:Georgia,serif;font-size:23px;line-height:1.35;margin:12px 0}.hero-note>span:last-child{font-size:11px;color:var(--muted)}.browse{max-width:1320px;margin:auto;padding:35px 5% 60px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:27px}.section-heading .eyebrow{margin-bottom:10px}h2{font-size:37px;margin:0}.muted{color:var(--muted);font-size:12px}.coverage{color:var(--muted);font-size:12px;border-left:3px solid #b6c5ab;padding-left:12px;margin:0 0 23px}.filters{display:grid;grid-template-columns:2fr 1.15fr 1fr 1fr;gap:12px}.filters label,label.field{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:var(--muted)}input,select{width:100%;min-width:0;background:var(--white);border:1px solid #c9d2c4;padding:12px 13px;border-radius:5px;color:var(--ink);font-size:14px;height:47px}input::placeholder{color:#72796e}.quick-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:17px 0 26px}.chip{border:1px solid var(--line);border-radius:24px;background:transparent;color:var(--muted);padding:7px 14px;font-size:12px}.chip:hover{border-color:var(--ink)}.chip.active{background:var(--ink);border-color:var(--ink);color:white}.timezone{margin-left:auto;color:var(--muted);font-size:11px}.results-line{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding:15px 0 6px;color:var(--muted);font-size:12px}.results-line p{margin:0}.verified-key{font-size:10px}.event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:14px}.event-card{background:var(--white);border:1px solid var(--line);border-radius:8px;overflow:hidden;display:flex;flex-direction:column}.card-top{padding:26px 26px 20px}.card-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;letter-spacing:1.1px;text-transform:uppercase;color:var(--red);font-weight:700}.card-kicker .area{color:var(--muted);text-align:right}.event-card h3{font-family:Georgia,'Times New Roman',serif;font-size:27px;font-weight:500;line-height:1.2;letter-spacing:-.5px;margin:15px 0 12px}.description{font-size:14px;color:#42554a;margin:0 0 18px;line-height:1.7}.place{font-size:12px;line-height:1.6;margin:0 0 11px}.place strong{display:block;font-weight:600}.place a{color:var(--muted);text-decoration-color:#b5c1af;text-underline-offset:3px}.cost{font-size:12px;margin:10px 0 0}.booking,.event-note{font-size:12px;color:var(--muted);margin:7px 0 0}.event-note{border-left:2px solid var(--red);padding-left:10px;margin-top:12px}.schedule{padding:0 26px;flex:1}.schedule-heading{font-size:10px;letter-spacing:1.3px;font-weight:700;color:var(--muted);padding:11px 0 5px;border-top:1px solid var(--line)}.occurrence{padding:12px 0;border-bottom:1px solid #e5e8de}.occurrence:last-child{border-bottom:0}.date-line{display:flex;justify-content:space-between;align-items:start;gap:12px}.date-name{font-size:13px;font-weight:700}.time{font-size:12px;color:var(--muted);text-align:right}.occ-note{font-size:11px;color:var(--muted);margin:4px 0}.choices{display:flex;align-items:center;gap:7px;margin-top:9px}.choice{border:1px solid #d3dacd;background:transparent;border-radius:4px;color:var(--ink);font-size:11px;padding:6px 10px}.choice:hover{background:var(--light)}.choice.selected{background:var(--ink);color:white;border-color:var(--ink)}.choice.interested.selected{background:#f2e5d4;color:#693e13;border-color:#b28246}.calendar{margin-left:auto;background:transparent;border:0;color:var(--muted);font-size:10px;padding:5px;text-decoration:underline;text-underline-offset:3px}.attendance{margin:8px 0 0;font-size:11px;color:var(--muted);line-height:1.6}.attendance strong{color:var(--ink)}.card-bottom{padding:15px 26px;display:flex;align-items:center;justify-content:space-between;gap:15px;background:#f4f5ee;border-top:1px solid var(--line);margin-top:14px}.source-link{font-size:12px;font-weight:700;text-decoration:none}.source-link:hover{text-decoration:underline}.checked{font-size:10px;color:var(--muted)}.research{padding:10px 26px 15px;font-size:11px;color:var(--muted)}summary{cursor:pointer;color:var(--ink);font-weight:600}.research ul{padding-left:18px}.research a{overflow-wrap:anywhere}.review-row{display:flex;align-items:center;gap:10px;margin-top:15px}.review-badge{font-size:10px;padding:3px 8px;border-radius:4px;background:#e8eee2;color:#38503a}.review-badge.new{background:#eee9dc;color:#5c5133}.review-badge.changed{background:#f7e3d9;color:#7b352c}.review-button{font-size:10px;padding:3px 0;border:0;text-decoration:underline;background:transparent;color:var(--ink)}.review-help{font-size:10px;color:var(--muted);margin:4px 0 0}.empty{grid-column:1/-1;padding:55px 24px;text-align:center;border:1px dashed #bfccba;border-radius:8px;color:var(--muted)}.empty h3{font-family:Georgia,serif;font-size:26px;color:var(--ink);margin:0 0 10px}.empty p{margin:0 0 15px}.leads{margin-top:30px;padding:18px 22px;border:1px solid var(--line);border-radius:6px;font-size:12px;color:var(--muted)}.lead{border-top:1px solid var(--line);padding:12px 0}.lead p{margin:4px 0}.how{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:38px;padding:42px 5% 55px;max-width:1320px;margin:auto;border-top:1px solid var(--line)}.how h2{font-size:30px}.how h3{font-size:14px;margin:10px 0 8px}.how p:not(.eyebrow){font-size:12px;color:var(--muted);margin:0}.step{font-family:Georgia,serif;font-size:25px;color:var(--red)}footer{max-width:1440px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}footer .brand{font-size:15px}footer p{margin:0}.plan-bar{max-width:1188px;margin:0 auto 28px;padding:18px 22px;background:var(--ink);color:var(--white);border-radius:6px;display:flex;align-items:center;justify-content:space-between;gap:18px}.plan-bar strong{font-size:17px}.plan-bar p{font-size:12px;margin:2px 0 0;color:#d6e2d3}.plan-actions{display:flex;gap:8px;flex-wrap:wrap}.plan-actions button{color:var(--white);border:1px solid #6a887b;background:transparent;padding:7px 11px;border-radius:4px;font-size:11px}.plan-actions button:hover{background:#2b5143}dialog{border:1px solid var(--line);border-radius:10px;max-width:500px;width:calc(100% - 32px);padding:35px;background:var(--white);color:var(--ink);box-shadow:0 25px 100px #08251c40}dialog::backdrop{background:#163c3266;backdrop-filter:blur(3px)}dialog h2{font-size:34px;margin-bottom:22px}.dialog-close{position:absolute;right:12px;top:10px;border:0;background:none;font-size:27px;color:var(--muted)}dialog p{font-size:13px;color:var(--muted)}dialog form{display:grid;gap:16px}dialog label.field{font-size:12px}dialog .button{margin-top:4px}.saved-list{border-top:1px solid var(--line);padding-top:18px;margin-top:23px}.saved-list h3{font-size:13px}.saved-plan{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:9px 0;border-bottom:1px solid var(--line)}.saved-plan button{background:none;border:0;color:var(--ink);text-align:left;font-size:13px;text-decoration:underline;text-underline-offset:3px}.saved-plan .remove{color:var(--red);font-size:11px}.share-input{font-size:12px}.share-note{font-size:12px!important;line-height:1.6}.error{background:#fcebe7;color:#87302d!important;padding:11px;border-radius:5px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);z-index:10;padding:13px 22px;background:var(--ink);color:white;border-radius:6px;box-shadow:0 6px 30px #163c3233;font-size:13px;max-width:calc(100% - 30px);text-align:center}.toast.error{color:white!important;background:#913e43}.text-button{background:none;border:0;text-decoration:underline;color:var(--ink);padding:8px 0;font-size:12px}
@media(max-width:1000px){.region{display:none}.hero-note{width:225px;min-height:240px;margin-right:0}.plan-bar{margin-left:5%;margin-right:5%}.how{gap:24px;grid-template-columns:repeat(3,1fr)}.how-title{grid-column:1/-1}.how-title h2 br{display:none}.how-title .eyebrow{margin-bottom:10px}.filters{grid-template-columns:1.5fr 1fr}.card-top{padding:22px 20px 18px}.schedule{padding:0 20px}.card-bottom{padding:14px 20px}}@media(max-width:650px){.topbar{padding:17px 5%;gap:8px}.brand{font-size:17px}.brand-mark{font-size:25px;margin-right:3px}.topbar .button{padding:8px 10px;font-size:10px;gap:5px}.hero{padding-top:44px;padding-bottom:36px;gap:0}.hero-note{display:none}h1{font-size:58px}.intro{font-size:14px}.browse{padding-top:27px}.section-heading{align-items:start;flex-direction:column;gap:5px}.section-heading h2{font-size:33px}.section-heading .muted{margin:4px 0}.filters{gap:12px 9px}.search-field{grid-column:1/-1}.filters label:nth-child(2){grid-column:1/-1}.timezone{font-size:10px;width:100%;margin:5px 0 0}.quick-filters{gap:5px}.chip{padding:6px 10px;font-size:11px}.event-grid{grid-template-columns:1fr;gap:18px}.results-line{font-size:11px}.verified-key{max-width:125px;font-size:9px;text-align:right}.plan-bar{flex-direction:column;align-items:start;margin-top:0}.how{grid-template-columns:1fr;gap:24px;padding-top:32px}.how h3{display:inline;margin-left:12px}.how p:not(.eyebrow){margin-top:7px}.how-title h2{font-size:30px}footer{align-items:start;flex-wrap:wrap;gap:12px}footer p{order:3;width:100%}dialog{padding:30px 24px}.date-line{gap:8px}.time{font-size:11px}.date-name{font-size:12px}}
.change-diff{margin:10px 0 15px;border-left:2px solid var(--line);padding-left:12px}.change-diff dt{font-weight:700;color:var(--ink);text-transform:capitalize;margin-top:9px}.change-diff dd{margin:4px 0 0}.change-diff dd>span{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--red)}.change-diff pre{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 7px}

.more-dates{border-top:1px solid var(--line);padding-top:10px}.more-dates>summary{font-size:12px;padding:6px 0 11px;text-decoration:underline;text-underline-offset:3px}.more-dates .open-text{display:none}.more-dates[open] .closed-text{display:none}.more-dates[open] .open-text{display:inline}
