:root{--paper:#f7f4ef;--ink:#252321;--muted:#6d6963;--line:#ded8cf;--blue:#ba263b;--lime:#f1e1dc;--green:#292724;--radius:18px;--accent:#ba263b;--serif:'Instrument Serif',Georgia,serif}
body{font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper)}h1,h2,h3,h4{font-family:'DM Sans',Arial,sans-serif}h1,h2{font-weight:500}h2 em,h3 em,.page-intro h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;font-style:italic}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #ba263b99;outline-offset:5px}.announcement{background:#eee7df;color:#60534a;font-size:9px;letter-spacing:.7px;border-bottom:1px solid #ded5ca}.announcement .wrap{padding:9px 0}.announcement a{color:var(--accent);font-weight:600}.nav{background:#f7f4eff5;border-color:#ded8cfa0;backdrop-filter:blur(16px)}.nav-inner{min-height:84px}.brand{font-family:'DM Sans',Arial,sans-serif;font-size:19px;font-weight:700;letter-spacing:-.8px;gap:11px}.brand-symbol{width:63px;height:auto;max-height:28px;object-fit:contain;flex-shrink:0}.brand-domain{font-weight:450;color:#62564d}.brand small{font-size:6px;letter-spacing:1.6px;color:#62564d;margin-top:1px;font-weight:500}.nav-links{gap:27px;font-size:12px}.nav-links .button{font-size:11px;min-height:43px;padding:10px 16px}.button{font-size:12px;min-height:48px;border-radius:6px;gap:22px;font-weight:550;transition:background .18s ease,transform .18s ease,box-shadow .18s ease}.button.primary{background:var(--accent);border-color:var(--accent);color:#98283b}.button.dark{background:#292724;border-color:#292724;color:#fffaf7}.button.light{background:#fff8f0;border-color:#fff8f0;color:#292724}.button:hover{box-shadow:0 5px 14px #3b241813;transform:translateY(-2px)}.button.primary:hover{background:#a51f33;border-color:#a51f33}.text-link{font-size:12px;font-weight:500;gap:20px}.eyebrow{font:500 9px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.35px;color:#62564d;gap:9px}.eyebrow:before{width:5px;height:5px;background:var(--accent)}.section{padding:85px 0}.section-heading{margin-bottom:35px}.section-heading h2{font-size:clamp(37px,4.2vw,58px);line-height:1.03;letter-spacing:-2.3px}.section-heading p{font-size:13px;line-height:1.9}.tint-section{background:#efeae3;border-color:#ded6cb}.pill.light{background:#fff9ee;border-color:#fff9ee;color:#40362e}.featured-art{background:#ead8ce}.feature-type>span{color:var(--accent)}.featured{border-radius:16px}.featured-copy>p,.event-meta{color:#62564d}.featured-copy .text-link{color:#98283b}.final-cta{background:#f0e1d9;border-radius:14px;padding:70px 25px}.final-cta .eyebrow{color:#62564d}.final-cta h2{font-size:clamp(40px,5vw,68px);line-height:1.03;font-weight:450;letter-spacing:-2.6px;margin:25px auto}.final-cta h2 em{color:var(--accent)}.final-cta p{font-size:13px;line-height:1.9;color:#62564d;max-width:650px}.footer{margin-top:80px;padding:50px 0 24px;border-color:#d8d0c5}.footer-top{grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footer-top .brand{font-size:21px}.footer-top .brand-symbol{width:71px}.footer-top p{font-size:12px;line-height:1.9;color:#62564d}.footer-top h3{font-size:9px;letter-spacing:1.4px;color:#62564d}.footer-top a:not(.brand){font-size:12px;color:#62564d;margin:12px 0}.footer-bottom{border-color:#ded5ca;font-size:9px;color:#62564d}.page-intro{padding-top:55px}.page-intro h1{font-weight:500;letter-spacing:-3px;line-height:1.03}.page-intro>p{color:#62564d;font-size:16px}.detail-panel,.inquiry,.share-kit,.tier,.event-sidebar,.flyer-card{background:#fffcf7;border-color:#ded5c9;border-radius:12px}.tier.featured-tier{background:var(--green)}.tier .amount,.event-sidebar .price{font-family:'DM Sans',Arial,sans-serif}.tier p,.tier ul,.detail-panel p{color:#62564d}.info-note{background:#eee4d8;border-color:#bfa38d;color:#62564d}.info-note.blue{background:#f3e2df;border-color:var(--accent);color:#62564d}.empty-calendar{border-color:#d3c4b5;color:#62564d}.day-card{border-color:#dfd3c5;background:#fffbf5}.day-card small{color:var(--accent)}.faq-list details{border-color:#d9cfc2}.faq-list summary{font-size:15px;font-weight:500;padding:22px 35px 22px 0}.faq-list details p{font-size:13px;color:#62564d}.inquiry input,.inquiry select,.inquiry textarea,input,select,textarea{border-color:#d6ccbe;background:#fffdf9}.inquiry>p,.form-footer p,.section-note{color:#62564d}.inline-link{color:var(--accent);border-bottom-color:#ba263b55}.resource-item,.resource-list{border-color:#ded4c6}.share-kit>p{color:#62564d}.toast{background:#302823}.organizer-shell{--blue:#ba263b}.menu-button{border-color:#ddd2c6;background:#fffaf3}.mobile-register{border-top-color:#d8c8b9!important}
@media(max-width:1100px){.nav-links{gap:18px}.brand{font-size:18px}.brand-symbol{width:54px}}
@media(max-width:850px){.nav-inner{min-height:74px}.brand{font-size:19px}.brand-symbol{width:57px}.nav-links{background:var(--paper)}.nav-links .button{font-size:13px}.section{padding:65px 0}.announcement .wrap{font-size:8px}.brand small{font-size:6px;letter-spacing:1.2px}}
@media(max-width:580px){.wrap{width:calc(100% - 38px)}.brand{font-size:17px;gap:8px}.brand-symbol{width:49px}.brand small{font-size:5.5px;letter-spacing:.8px}.section{padding:50px 0}.section-heading h2{font-size:39px;letter-spacing:-1.7px}.page-intro h1{font-size:44px;letter-spacing:-2px}.page-intro>p{font-size:14px}.final-cta{padding:45px 21px}.final-cta h2{font-size:43px;letter-spacing:-1.8px}.footer-top{grid-template-columns:1fr 1fr;gap:27px}.footer-top>div:first-child{grid-column:1/-1}.footer-top .brand{font-size:23px}.footer-top .brand-symbol{width:64px}.button{font-size:11px;padding:12px 17px}.text-link{font-size:11px}}
.button.primary{color:#fffaf7}.menu-button{min-width:44px;min-height:44px}
.breadcrumbs{color:#62564d;font-size:12px}.nav-links{font-size:13px}.button,.nav-links .button{font-size:13px}.text-link{font-size:13px}.brand small{font-size:8px;letter-spacing:1px}.announcement{font-size:10px}.footer-top a:not(.brand){font-size:13px}.footer-top h3{font-size:11px}.footer-bottom{font-size:11px}
.event-sidebar .detail-row>small{color:#62564d;font-size:11px}
@media(max-width:600px){.brand small{font-size:7px;letter-spacing:.65px}.announcement .wrap{font-size:9px}.button,.text-link{font-size:12px}.page-intro>p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button:hover{transform:none}.nav{backdrop-filter:none}}
