:root{--purple:#690394;--gold:#ebc56b;--ink:#36044f;--white:#fff;--muted:#f4eaf8}*{box-sizing:border-box}body{margin:0;color:white;font-family:Arial,Helvetica,sans-serif;background:#690394 url('/background.webp') center top/cover fixed}a{color:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{background:rgba(39,3,61,.92);border-bottom:1px solid #ffffff20}.nav-wrap{max-width:1160px;margin:auto;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:30px}.logo{width:145px;height:auto;display:block}nav{display:flex;gap:25px;align-items:center}nav a{text-decoration:none;font-size:14px;white-space:nowrap;padding:10px 0}nav a:hover{color:var(--gold)}.menu-toggle{display:none;background:none;color:white;border:1px solid #ffffff60;border-radius:8px;font-size:25px;width:46px;height:46px}main{max-width:1080px;margin:auto;padding:48px 28px 36px}.intro{text-align:center;margin-bottom:36px}.eyebrow{color:var(--gold);letter-spacing:2px;font-size:15px;text-transform:uppercase}h1,h2,h3{font-family:Georgia,'Times New Roman',serif}h1{font-size:clamp(44px,7vw,82px);line-height:1.02;margin:16px 0 22px;color:var(--gold);font-weight:600}.tagline{letter-spacing:2px;font-size:15px;line-height:1.7}.events{display:grid;gap:24px}.event-card{display:grid;grid-template-columns:47% 53%;background:#fff;border:1px solid white;border-radius:19px;overflow:hidden;color:var(--ink);box-shadow:0 12px 32px #29003a20}.event-image{position:relative;min-height:285px;overflow:hidden;display:block}.event-image img{width:100%;height:100%;object-fit:cover;position:absolute;transition:transform .3s}.event-image:hover img{transform:scale(1.035)}.badge{position:absolute;top:16px;left:16px;background:var(--purple);border-radius:12px;padding:12px 15px;text-align:center;color:white;line-height:1.2;box-shadow:0 4px 20px #0003}.badge b{display:block;font-size:31px}.badge span{font-size:13px}.event-body{padding:30px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.event-body h2{font-size:31px;line-height:1.15;margin:0 0 18px}.event-body p{line-height:1.65;margin:0 0 16px}.date{font-size:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:14px 24px;background:var(--purple);color:white;border:0;border-radius:10px;text-decoration:none;font-size:16px;font-weight:700;line-height:1.4}.button:hover{background:#8206b6}.event-body .button{margin-top:8px;width:100%}.food{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#fff;color:var(--ink);padding:25px 30px;border-radius:18px;margin-top:28px}.food h2{font-size:29px;margin:0 0 8px}.food p{margin:0;line-height:1.5}.food .button{white-space:nowrap}footer{max-width:1080px;margin:auto;padding:30px 28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:25px;line-height:1.7;font-size:14px;border-top:1px solid #ffffff35}footer a{text-underline-offset:4px}footer small{width:100%;opacity:.7}.back{display:inline-block;margin:0 0 24px;text-decoration:none}.detail{max-width:850px;margin:auto}.detail-hero{width:100%;max-height:470px;object-fit:cover;border-radius:18px}.detail h1{font-size:clamp(38px,6vw,64px)}.detail-info{display:flex;gap:25px;flex-wrap:wrap;padding:20px 0;border-top:1px solid #ffffff45;border-bottom:1px solid #ffffff45}.detail-content{font-size:18px;line-height:1.8;padding:14px 0}.detail-content h2{font-family:Arial,sans-serif;color:var(--gold);font-size:20px;text-transform:uppercase;letter-spacing:1px}.ticket-panel{background:#fff;color:var(--ink);padding:28px;border-radius:16px;text-align:center;margin:20px 0}.ticket-panel h2{margin:0 0 12px}.ticket-panel p{line-height:1.65}.ticket-panel .unavailable{display:inline-block;background:var(--purple);color:white;border-radius:10px;padding:15px 24px;font-weight:700}.image-note{font-size:12px;opacity:.75;margin-top:7px}.skip{position:absolute;top:-100px}.skip:focus{top:5px;left:10px;background:white;color:var(--purple);padding:10px;z-index:5}@media(max-width:850px){.nav-wrap{padding:17px 20px;flex-wrap:wrap;gap:10px}.logo{width:122px}.menu-toggle{display:block}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding-top:12px}nav.open{display:flex}nav a{padding:14px 5px;border-top:1px solid #ffffff25;font-size:16px}main{padding:30px 16px}.intro{margin-bottom:26px}.eyebrow{font-size:12px}.tagline{font-size:12px;letter-spacing:1px}h1{font-size:clamp(42px,10vw,66px)}.event-card{grid-template-columns:1fr}.event-image{min-height:0;aspect-ratio:1.55}.event-body{padding:23px}.event-body h2{font-size:29px}.food{flex-direction:column;align-items:stretch;padding:24px}.food h2{font-size:26px}.food .button{width:100%}footer{padding:24px 20px;font-size:13px;gap:23px}.detail-info{gap:13px;font-size:14px}.detail-content{font-size:16px}.detail-hero{aspect-ratio:1.25}.ticket-panel{padding:23px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* Food photography and footer links */
.food{display:grid;grid-template-columns:210px 1fr auto;padding:0 26px 0 0;overflow:hidden}.food-photo{width:100%;height:190px;object-fit:cover}.food-copy{padding:22px 0}.footer-link{display:inline-flex;align-items:center;gap:10px;min-height:44px}.footer-link svg{width:24px;height:24px;color:var(--gold);flex:none}@media(max-width:850px){.food{grid-template-columns:1fr;padding:0 0 24px;gap:0}.food-photo{height:auto;aspect-ratio:1.65}.food-copy{padding:22px 24px 18px}.food .button{width:auto;margin:0 24px}.event-image{aspect-ratio:1.5}}
/* Keep the complete Poetry artwork visible at every card width. */ .event-image img[src="/poetry-home.png"]{object-fit:contain;background:#290638} .detail-hero[src="/poetry-home.png"]{max-height:none;height:auto;object-fit:contain;aspect-ratio:auto}

/* Poetry event: original flyer and readable white information panel. */
.poetry-flyer{display:block;width:100%;height:auto;border-radius:18px 18px 0 0}.poetry-story{background:white;color:var(--ink);padding:36px 42px;border-radius:0 0 18px 18px;font-size:18px;line-height:1.8}.poetry-story h1{color:var(--purple);font-size:clamp(32px,5vw,48px);line-height:1.15;margin:0 0 25px}.poetry-story h2{font-family:Arial,Helvetica,sans-serif;font-size:23px;line-height:1.45;margin:0 0 22px}.poetry-story p{margin:0 0 22px}.poetry-story a:not(.button){color:var(--purple);font-weight:700;text-underline-offset:3px}.event-facts{padding:20px 0;margin:0 0 22px;list-style:none;border-top:1px solid #69039425;border-bottom:1px solid #69039425}.event-facts li{margin:8px 0}.poetry-motto{font-weight:700;color:var(--purple)}.ticket-link{min-width:260px}@media(max-width:850px){.poetry-story{padding:26px 22px;font-size:16px}.poetry-story h2{font-size:20px}.ticket-link{width:100%;min-width:0}}

.halloween-tickets{margin-top:32px;padding-top:28px;border-top:1px solid #69039425}.ot-iframe{width:100%;min-height:450px}.ot-iframe iframe{width:100%;max-width:100%;border:0}.ticket-fallback{font-size:14px;line-height:1.6;margin-top:18px!important}@media(max-width:600px){.halloween-tickets{margin-left:-12px;margin-right:-12px}.halloween-tickets>h2,.ticket-fallback{margin-left:12px;margin-right:12px}}

footer .social-links{display:flex;width:100%;justify-content:center;align-items:center;flex-direction:row;gap:18px;padding:18px 0 0;border-top:1px solid #ffffff25}footer .social-links a{display:flex;align-items:center;justify-content:center;width:48px;height:48px;padding:11px;border:1px solid #ebc56b99;border-radius:50%;color:var(--gold)}footer .social-links a:hover{background:#ffffff18;color:white}footer .social-links svg{width:25px;height:25px}

.contact-page{max-width:900px;margin:auto}.contact-intro{border-radius:18px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-map{width:100%;height:340px;border:0;border-radius:12px;margin:8px 0 18px}#contact-form{position:relative;display:flex;flex-direction:column;gap:10px}#contact-form label{font-weight:700}#contact-form input:not([type=hidden]),#contact-form textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #b798c5;border-radius:8px;padding:12px;width:100%}#contact-form textarea{resize:vertical}#contact-form .button{align-self:flex-start;margin-top:6px}#contact-form .form-privacy{font-size:13px;line-height:1.6;margin:8px 0}#contact-form .form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#form-status:empty{display:none}@media(max-width:600px){.contact-details{grid-template-columns:1fr;gap:0}.contact-map{height:280px}.contact-details a{overflow-wrap:anywhere}#contact-form .button{width:100%}}

/* Welcoming contact page with the real restaurant exterior. */
.contact-redesign{max-width:1120px}.contact-hero{position:relative;overflow:hidden;border-radius:22px;min-height:410px;background:#260c35}.contact-hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 52%;filter:brightness(.85) saturate(1.12)}.contact-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,4,43,.88),rgba(30,4,43,.32) 65%,transparent)}.contact-hero-copy{position:relative;z-index:1;padding:68px 48px;max-width:650px;color:white}.contact-hero-copy h1{font-size:clamp(36px,5vw,60px);line-height:1.06;margin:18px 0 24px}.contact-hero-copy p{line-height:1.7}.contact-hero-copy .eyebrow{font-size:12px;letter-spacing:2px;color:#f3d48a}.contact-columns{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;margin-top:24px;align-items:start}.contact-card{background:#fff;color:var(--ink);border-radius:20px;padding:32px;min-width:0;line-height:1.7}.contact-kicker{font-size:11px;letter-spacing:1.8px;font-weight:bold;color:var(--purple);margin:0 0 12px}.contact-card h2{font-size:30px;line-height:1.2;margin:0 0 20px;color:var(--purple)}.contact-card>p:not(.contact-kicker){margin:0 0 24px}.contact-actions{display:flex;flex-direction:column;gap:12px;margin:0 0 26px}.contact-actions a,.map-route{color:var(--purple);font-weight:700;text-decoration:none}.phone-contact{font-size:23px}.whatsapp-contact{display:flex;align-items:center;gap:10px;font-size:15px}.whatsapp-contact svg{width:26px;height:26px;flex:none}.contact-card .contact-map{height:270px;margin:0 0 12px}.contact-card #contact-form{gap:8px}.contact-card #contact-form input{margin-bottom:9px}.contact-card #contact-form textarea{min-height:150px}.contact-card #contact-form .button{width:100%}.contact-card a:hover{text-decoration:underline}@media(max-width:850px){.contact-columns{grid-template-columns:1fr}.contact-hero{min-height:360px}.contact-hero-copy{padding:36px 26px}.contact-hero:after{background:linear-gradient(90deg,rgba(30,4,43,.85),rgba(30,4,43,.25))}.contact-card{padding:26px 22px}.contact-card h2{font-size:27px}.contact-hero>img{object-position:56% center}}

.info-page{max-width:1120px;margin:auto}.info-heading{padding:12px 0 28px;text-align:center}.info-heading h1{font-size:clamp(38px,6vw,64px);margin:14px 0}.info-heading>p:last-child{font-size:18px;line-height:1.7}.info-split{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:start}.info-card{padding:38px;background:#fff;color:var(--ink);border-radius:20px;line-height:1.8}.info-card h2{font-size:30px;line-height:1.2;color:var(--purple);margin:0 0 20px}.info-card p+h2{margin-top:30px}.info-card p{margin:0 0 24px}.parking-list{padding-left:22px}.parking-list li{padding:8px 0}.address-box{border-left:3px solid var(--gold);padding:10px 20px;margin:26px 0}.short-video{aspect-ratio:9/16;background:#1d0928;border-radius:20px;overflow:hidden;max-width:390px;margin:auto}.short-video iframe{width:100%;height:100%;border:0}.video-link{text-align:center}.video-link a{color:white;text-underline-offset:4px}.team-intro{max-width:900px;margin:0 auto 38px}.apply-button{display:inline-flex;gap:12px;align-items:center}.apply-button svg{width:26px;height:26px;flex:none}.gallery-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.gallery-heading h2{font-size:32px;margin:0}.gallery-controls{display:flex;gap:10px}.gallery-controls button{border:1px solid #ebc56b;background:#fff;color:var(--purple);border-radius:50%;height:46px;width:46px;font-size:24px;cursor:pointer}.team-slider{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px 0 24px;scrollbar-color:#ebc56b #ffffff25}.team-slider figure{flex:0 0 calc((100% - 40px)/3);margin:0;scroll-snap-align:start;border-radius:16px;overflow:hidden;background:#fff}.team-slider img{width:100%;height:auto;display:block;aspect-ratio:2/3;object-fit:contain}.donation-highlight{display:flex;justify-content:center;align-items:center;gap:22px;background:#f5edf8;color:var(--purple);padding:24px;border-radius:14px;font-size:36px;margin:10px 0 26px}.donation-highlight strong{font-size:48px}@media(max-width:850px){.info-split{grid-template-columns:1fr}.info-card{padding:26px 22px}.info-card h2{font-size:26px}.team-slider figure{flex-basis:78%}.gallery-heading h2{font-size:25px}.info-heading{padding-top:0}.short-video{width:100%;max-width:360px}.apply-button{width:100%;justify-content:center}.donation-highlight{font-size:30px}.donation-highlight strong{font-size:40px}}

.parking-copy{max-width:850px;margin:30px auto 0}.cookie-choice{position:fixed;bottom:20px;left:20px;right:20px;max-width:650px;margin:auto;z-index:100;background:white;color:var(--ink);border:1px solid #dbc6e5;box-shadow:0 8px 40px #0004;border-radius:16px;padding:24px;font-size:15px;line-height:1.6}.cookie-choice[hidden]{display:none}.cookie-choice h2{font-size:22px;color:var(--purple);margin:0 0 8px}.cookie-choice p{margin:0 0 16px}.cookie-actions{display:flex;gap:12px;flex-wrap:wrap}.cookie-actions button{flex:1;min-width:180px;padding:12px;border-radius:8px;border:1px solid var(--purple);background:white;color:var(--purple);font:inherit;font-weight:bold;cursor:pointer}.cookie-settings{background:none;color:inherit;border:0;text-decoration:underline;cursor:pointer;font:inherit;padding:10px}.cookie-actions button:focus-visible,.cookie-settings:focus-visible{outline:3px solid #ca9f3a;outline-offset:3px}

.giving-photo{display:block;width:100%;height:auto;border-radius:20px;margin:0 0 32px}.team-gallery{margin-bottom:30px}.team-gallery .gallery-heading{justify-content:flex-end}

footer .footer-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
