/* Personal-site palette and type, shared with AI Pitch Catch-up. */
:root{--plum:#150d22;--plum-light:#251936;--accent:#bf8aea;--purple:#8952ba;--paper:#f6f2fa;--ink:#211a2b;--muted:#625b6c;--line:#e3dce9}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Work Sans',system-ui,sans-serif;line-height:1.6}a{color:inherit}button{font:inherit}[hidden]{display:none!important}::selection{background:var(--accent);color:var(--plum)}.wrap{max-width:1200px;margin-inline:auto;padding-inline:32px}.skip-link{position:absolute;left:16px;top:-100px;z-index:20;background:white;padding:12px}.skip-link:focus{top:12px}.header-in{max-width:1200px;margin:auto;padding:22px 32px;display:flex;gap:28px;align-items:center;justify-content:space-between}nav{display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center;justify-content:flex-end}nav a{font-size:11px;letter-spacing:.07em;text-transform:uppercase;color:#eee6f6;text-decoration:none}nav a:hover,nav a[aria-current]{color:var(--accent)}nav a[aria-current]{border-bottom:2px solid var(--accent);padding-block:5px}.hero{background:var(--plum);color:white;padding:66px 0 70px}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center}.eyebrow{margin:0 0 14px;font-size:11px;line-height:1.5;text-transform:uppercase;font-weight:700;letter-spacing:.15em;color:#754398}.hero .eyebrow,.connect-section .eyebrow{color:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(54px,6.4vw,86px);line-height:.99;letter-spacing:-.055em;font-weight:800;margin-bottom:25px;text-transform:uppercase}h1 span{color:var(--accent)}.intro{font-size:17px;line-height:1.75;color:#e0d5e9;max-width:47ch;margin-bottom:28px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:52px;padding:15px 22px;background:var(--purple);border:1px solid var(--purple);color:white;text-decoration:none;font-size:13px;font-weight:600;line-height:1.5;transition:background .2s}.button:hover{background:#75439f}.button span{font-size:20px;line-height:1}.host{color:white;font-size:12px;margin:27px 0 0;font-weight:600}.host span{display:block;color:#bfb0ce;font-size:11px;font-weight:400;margin-top:2px}.hero-art{margin:0}.hero-art img{width:100%;height:auto;display:block;border:1px solid #614377}.hero-art figcaption{font-size:10px;color:#bfb0ce;margin-top:9px;line-height:1.5}.series-line{background:var(--plum-light);color:#d5c5e4;font-size:11px;letter-spacing:.035em}.series-line .wrap{display:flex;justify-content:space-between;gap:20px;padding-block:17px}.section{padding-block:70px}.section-heading{display:flex;gap:32px;justify-content:space-between;align-items:end;margin-bottom:30px}.section-heading h2{font-size:clamp(29px,3vw,40px);line-height:1.15;letter-spacing:-.045em;margin:0;max-width:20ch}.section-heading>p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.section-heading>p strong{font-weight:500}.event-card{display:grid;grid-template-columns:1.2fr 1fr;background:white;border:1px solid var(--line)}.event-main{padding:38px}.tag{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#754398;margin-bottom:16px}.event-main h3{font-size:clamp(27px,3vw,37px);line-height:1.16;letter-spacing:-.04em;margin-bottom:20px}.event-context{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:28px}.event-facts{margin:0;display:grid;gap:24px}.event-facts>div{display:grid;grid-template-columns:54px 1fr;gap:15px}.event-facts dt{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#754398;padding-top:3px}.event-facts dd{font-size:14px;margin:0}.event-facts time,.event-facts span,.event-facts strong{display:block}.entrance{color:var(--muted);font-size:12px;margin-top:5px}.booking{background:#eee7f4;padding:38px;border-left:1px solid var(--line)}.booking .eyebrow{margin-bottom:14px}.price{margin-bottom:5px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.price strong{font-size:50px;letter-spacing:-.065em;line-height:1.1}.price span{font-size:12px;color:var(--muted)}.inclusions{font-size:14px;margin:10px 0}.fees{font-size:12px;line-height:1.65;color:var(--muted);margin-bottom:12px}.guest-limit{font-size:11px;letter-spacing:.035em;font-weight:600;margin-bottom:20px}.refund{border-top:1px solid #d8cce3;padding-top:17px;font-size:13px;line-height:1.7;margin-bottom:20px}.refund strong{font-weight:600}.booking-button{width:100%;text-align:left}.booking-button:disabled{background:#d8cbe3;color:#53445f;border-color:#c4b2d2;cursor:not-allowed;opacity:1}.booking-status{font-size:11px;font-weight:600;color:#5f4575;margin:9px 0 17px}.platform-note{font-size:11px;color:var(--muted);margin:0;line-height:1.8}.responsibility{grid-column:1/-1;padding:18px 38px;border-top:1px solid var(--line);font-size:11px;line-height:1.8;color:var(--muted)}.responsibility strong{color:var(--ink);font-weight:600}.themes-section{background:#eee7f3;border-block:1px solid var(--line)}.themes{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:36px}.themes li{padding:23px 0;border-top:1px solid #d2c5dd;display:grid;grid-template-columns:36px 1fr;gap:14px}.theme-month{text-transform:uppercase;color:#754398;font-size:11px;font-weight:700;padding-top:4px}.theme-title{font-size:15px;line-height:1.45;font-weight:600;display:block;min-height:44px}.theme-date{display:block;color:var(--muted);font-size:10px;margin-top:8px}.gallery-placeholder{display:flex;align-items:center;gap:30px;padding:48px;background:white;border:1px dashed #c2b1d0}.gallery-mark{color:#9563bb;font-size:56px;line-height:1}.gallery-placeholder h3{font-size:23px;letter-spacing:-.025em;margin-bottom:10px}.gallery-placeholder p{color:var(--muted);font-size:14px;margin-bottom:18px}.placeholder-label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#754398}.connect-section{background:var(--plum);color:white;padding-block:56px}.connect{display:flex;justify-content:space-between;align-items:center;gap:30px}.connect h2{font-size:clamp(32px,4vw,48px);line-height:1.15;letter-spacing:-.04em;margin-bottom:12px}.connect p:last-child{font-size:14px;color:#cbbcd6;margin:0}.connect .button{max-width:100%}footer{display:flex;justify-content:space-between;gap:20px;padding-block:28px;font-size:10px;color:var(--muted)}footer a{text-decoration:none}.notice{background:white;border:1px solid var(--line);padding:24px}
@media(max-width:1000px){.header-in{flex-wrap:wrap}nav{justify-content:flex-start}.hero-grid{gap:30px;grid-template-columns:1fr 1fr}.hero{padding-block:50px}.event-main,.booking{padding:28px}.themes{column-gap:24px}}
@media(max-width:700px){.wrap{padding-inline:22px}.header-in{padding:19px 22px;gap:18px}.header-in nav{gap:10px 18px}nav a{font-size:10px}.hero{padding:38px 0 30px}.hero-grid{grid-template-columns:1fr;gap:32px}h1{font-size:64px;max-width:10ch}.intro{font-size:16px;max-width:45ch}.hero-art{max-width:100%}.host{margin-top:22px}.hero-art figcaption{font-size:10px}.series-line .wrap{flex-wrap:wrap;gap:5px 20px;font-size:10px}.series-line span:nth-child(2){order:3;width:100%}.section{padding-block:46px}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:14px}.section-heading h2{max-width:24ch}.event-card{grid-template-columns:1fr}.event-main,.booking{padding:26px 23px}.booking{border-left:0;border-top:1px solid var(--line)}.event-main h3{font-size:29px}.event-facts>div{grid-template-columns:45px 1fr;gap:10px}.event-facts dd{font-size:13px}.responsibility{padding:18px 23px}.themes{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.themes li{grid-template-columns:1fr;gap:6px;padding-block:19px}.theme-title{font-size:14px;min-height:42px}.theme-date{font-size:10px}.gallery-placeholder{padding:28px 24px;gap:20px;align-items:flex-start}.gallery-mark{font-size:36px}.gallery-placeholder h3{font-size:21px}.gallery-placeholder p{font-size:13px}.connect{display:block}.connect .button{margin-top:26px;font-size:12px;padding-inline:17px;gap:20px}.connect-section{padding-block:43px}footer{flex-wrap:wrap;gap:12px}footer span{order:3;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.admission{font-size:13px;font-weight:600;line-height:1.7;margin-bottom:18px}.arrival-policy{font-size:12px;line-height:1.75;color:var(--ink);margin-top:12px;font-weight:600}.arrival-ticket{font-size:12px;line-height:1.75;color:var(--muted);margin-top:7px}

.event-card .hero-art figcaption{color:var(--muted)}
