@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=DM+Sans:wght@400;500;600;700;800&display=swap');
.fec-event-page{--navy:#18244d;--yellow:#fff000;--pink:#ff42ae;--cyan:#43c7e8;--cream:#fffef0}.fec-event-page *{box-sizing:border-box}.fec-event-page{scroll-behavior:smooth;scroll-padding-top:24px}.fec-event-page{margin:0;color:var(--navy);background:var(--cream);font-family:'DM Sans',Arial,sans-serif;line-height:1.6}.fec-event-page a{color:inherit}.fec-event-page header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px max(5vw,20px);border-bottom:2px solid var(--navy)}.fec-event-page .brand{font-size:25px;font-weight:900;letter-spacing:-1px;text-decoration:none}.fec-event-page .brand small{display:block;font-size:10px;letter-spacing:3px;text-transform:uppercase}.fec-event-page .topline{text-align:center;background:var(--navy);color:white;font-size:12px;letter-spacing:1.2px;padding:8px 16px;font-weight:800}.fec-event-page .topline b{color:var(--yellow)}.fec-event-page .button{display:inline-block;background:var(--yellow);border:2px solid var(--navy);box-shadow:5px 5px 0 var(--navy);padding:13px 24px;text-align:center;font-size:14px;font-weight:900;text-transform:uppercase;text-decoration:none}.fec-event-page .button:focus-visible,.fec-event-page summary:focus-visible{outline:3px solid var(--pink);outline-offset:6px}.fec-event-page .wrap{max-width:1200px;margin:auto;padding:0 28px}.fec-event-page .hero{background:var(--navy);color:white;padding:36px 0 70px;background-image:radial-gradient(#ffffff12 1px,transparent 1px);background-size:12px 12px}.fec-event-page .art{display:block;width:100%;height:auto;border:2px solid var(--cyan);box-shadow:8px 8px 0 #080f2c}.fec-event-page .hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:64px;align-items:start;margin-top:46px}.fec-event-page .eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;text-transform:uppercase;margin:0 0 10px;color:var(--cyan)}.fec-event-page h1,.fec-event-page h2,.fec-event-page h3{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;text-transform:uppercase;line-height:.98;margin:0 0 20px;font-weight:800}.fec-event-page h1{font-size:clamp(58px,7vw,96px)}.fec-event-page h1 span{color:var(--yellow);text-shadow:3px 3px var(--pink)}.fec-event-page h2{font-size:clamp(38px,5vw,58px)}.fec-event-page h3{font-size:29px}.fec-event-page .lead{font-size:20px;max-width:570px}.fec-event-page .facts{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.fec-event-page .facts span{border:1px solid #ffffff66;padding:8px 13px;font-size:14px;font-weight:700}.fec-event-page .ticket{background:var(--cream);color:var(--navy);padding:30px;border:2px solid var(--navy);box-shadow:9px 9px 0 var(--cyan);position:relative}.fec-event-page .ticket .eyebrow{color:var(--navy)}.fec-event-page .price{font-size:62px;font-weight:900;letter-spacing:-3px;line-height:1.1}.fec-event-page .price span{font-size:17px;letter-spacing:0;font-weight:600}.fec-event-page .adult{display:inline-block;background:var(--pink);padding:3px 10px;font-weight:800;margin:12px 0}.fec-event-page .ticket ul{padding-left:20px;margin:14px 0 24px}.fec-event-page .ticket .button{width:100%}.fec-event-page .ticket .note{font-size:12px;line-height:1.5;margin-bottom:0}.fec-event-page .ribbon{background:var(--yellow);border-bottom:2px solid var(--navy);padding:16px 24px;text-align:center;font-weight:900;text-transform:uppercase;font-size:14px;letter-spacing:.5px}.fec-event-page .section{padding:70px 0}.fec-event-page .section .eyebrow{color:#4d5776}.fec-event-page .cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}.fec-event-page .card{background:white;border:2px solid var(--navy);padding:25px;box-shadow:5px 5px 0 var(--navy)}.fec-event-page .number{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--cyan);font-weight:900;margin-bottom:20px}.fec-event-page .card:nth-child(2n) .number{background:var(--yellow)}.fec-event-page .card:nth-child(3n) .number{background:var(--pink)}.fec-event-page .card p{font-size:15px;margin-bottom:0}.fec-event-page .story{background:#e4f8fc;border-block:2px solid var(--navy)}.fec-event-page .split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.fec-event-page .address{background:var(--navy);color:white;padding:32px;box-shadow:7px 7px 0 var(--pink)}.fec-event-page .address h3{color:var(--yellow)}.fec-event-page .address p:last-child{margin-bottom:0}.fec-event-page details{border-bottom:1px solid #18244d50;padding:19px 0}.fec-event-page summary{cursor:pointer;font-weight:800}.fec-event-page details p{margin-bottom:0;max-width:760px}.fec-event-page .closing{padding:55px 24px;text-align:center;background:var(--pink);border-block:2px solid var(--navy)}.fec-event-page .closing h2{max-width:650px;margin:0 auto 25px}.fec-event-page footer{padding:30px;text-align:center;font-size:12px}.fec-event-page .preview{padding:12px 20px;background:#e8eaf0;text-align:center;font-size:13px}.fec-event-page .mobile-cta{display:none}.fec-event-page .notice{background:var(--yellow);padding:14px;margin-top:20px;font-size:14px}.fec-event-page button{font-family:inherit;cursor:pointer}.fec-event-page button:disabled{cursor:default}.fec-event-page dialog{max-width:480px;width:calc(100% - 36px);border:3px solid var(--navy);padding:30px;background:var(--cream);color:var(--navy)}.fec-event-page dialog::backdrop{background:#18244dbb}.fec-event-page dialog h2{font-size:38px}@media(max-width:800px){.fec-event-page .hero-grid,.fec-event-page .split{grid-template-columns:1fr;gap:32px}.fec-event-page .cards{grid-template-columns:repeat(2,1fr)}.fec-event-page .hero{padding-top:24px}.fec-event-page .section{padding:48px 0}.fec-event-page .ticket{max-width:540px}.fec-event-page .mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:5;background:var(--cream);border-top:2px solid var(--navy);padding:10px 18px;gap:20px;align-items:center;justify-content:space-between}.fec-event-page .mobile-cta strong{font-size:18px}.fec-event-page .mobile-cta small{display:block;font-size:11px}.fec-event-page{padding-bottom:88px}.fec-event-page header .button{padding:10px 14px;font-size:11px}.fec-event-page .brand{font-size:21px}.fec-event-page .wrap{padding:0 20px}}@media(max-width:480px){.fec-event-page .cards{grid-template-columns:1fr}.fec-event-page .card{padding:22px}.fec-event-page .hero-grid{margin-top:30px}.fec-event-page h1{font-size:64px}.fec-event-page .ticket{padding:24px}.fec-event-page .facts{gap:7px}.fec-event-page .facts span{font-size:12px}.fec-event-page .lead{font-size:18px}}@media(prefers-reduced-motion:reduce){.fec-event-page{scroll-behavior:auto}}.fec-event-page .brand img{display:block;width:245px;max-width:100%;height:auto}.fec-event-page .brand{flex-shrink:0}@media(max-width:600px){.fec-event-page .brand img{width:170px}.fec-event-page header{gap:12px;padding:16px 20px}.fec-event-page header .button{padding:10px;font-size:10px}}@media(max-width:350px){.fec-event-page .brand img{width:140px}}
body.fec-event-shell{margin:0;background:#fffef0}.fec-event-page{overflow-wrap:anywhere}.fec-event-page .art{height:auto}@media(max-width:800px){body.fec-event-shell{padding-bottom:88px}.fec-event-page{padding-bottom:0}}
/* Keep the event shell's palette independent of theme heading/button rules. */
body.fec-event-shell .fec-event-page h1,body.fec-event-shell .fec-event-page h2,body.fec-event-shell .fec-event-page h3{color:var(--navy)}
body.fec-event-shell .fec-event-page .hero .event-hero-headline,body.fec-event-shell .fec-event-page .hero .event-name{color:#fff!important}
body.fec-event-shell .fec-event-page .event-hero-headline span{color:var(--yellow)!important;text-shadow:3px 3px var(--pink)}
body.fec-event-shell .fec-event-page .hero .event-name{font-size:36px}
body.fec-event-shell .fec-event-page .address h3{color:var(--yellow)!important}
body.fec-event-shell .fec-event-page a.button,body.fec-event-shell .fec-event-page a.button:hover,body.fec-event-shell .fec-event-page a.button:focus{background:var(--yellow)!important;color:var(--navy)!important;border:2px solid var(--navy);border-radius:0;box-shadow:5px 5px 0 var(--navy);font-weight:900;text-decoration:none}

.fec-event-page .event-store-picker{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:20px;padding:24px}.fec-event-page .event-store-picker [aria-current]{outline:4px solid #ff42ae;outline-offset:4px}

/* Shared visit sections; the established event hero and ticket layout stay intact. */
.fec-event-page [data-gallery-panel][hidden]{display:none!important}
.fec-event-page .event-gallery-tabs,.fec-event-page .event-link-row{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin:24px 0}
.fec-event-page .event-gallery-tabs .button{background:white;color:var(--navy)}
.fec-event-page .event-gallery-tabs [aria-pressed="true"]{background:var(--yellow);outline:3px solid var(--pink);outline-offset:4px}
.fec-event-page .event-photo-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding:8px 0 18px}
.fec-event-page .event-photo-track figure{margin:0;flex:0 0 44%;scroll-snap-align:start;border:2px solid var(--navy);box-shadow:5px 5px 0 var(--cyan)}
.fec-event-page .event-photo-track img{display:block;width:100%;height:340px;object-fit:cover}
.fec-event-page .event-gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0 24px}
.fec-event-page .event-gallery-controls .button{padding:8px 22px;font-size:22px}
.fec-event-page .event-food{background:var(--yellow);border-block:2px solid var(--navy)}
.fec-event-page .event-food-photos{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center}
.fec-event-page .event-food-photos img{width:100%;height:320px;object-fit:contain}
.fec-event-page .event-food-photos img:last-child{object-fit:cover;border:2px solid var(--navy);box-shadow:6px 6px 0 var(--pink);transform:rotate(3deg)}
.fec-event-page .event-location-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr));gap:28px}
.fec-event-page .event-moments{background:#e4f8fc;border-top:2px solid var(--navy)}
.fec-event-page .event-moment-image{display:block;position:relative;align-self:center;border:2px solid var(--navy);box-shadow:8px 8px 0 var(--pink)}
.fec-event-page .event-moment-image img{display:block;width:100%;height:auto}
.fec-event-page .event-moment-image span{display:block;padding:15px;background:var(--navy);color:white;font-weight:800;text-align:center}
.fec-event-page button:focus-visible,.fec-event-page .event-photo-track:focus-visible{outline:3px solid var(--pink);outline-offset:5px}
@media(max-width:600px){.fec-event-page .event-photo-track figure{flex-basis:85%}.fec-event-page .event-photo-track img{height:260px}.fec-event-page .event-food-photos img{height:230px}.fec-event-page .event-gallery-controls span{font-size:12px}}

.fec-event-page .event-food-heading{display:flex;align-items:center;gap:24px;margin-bottom:32px}
.fec-event-page .event-food-seal{display:block;width:145px;height:145px;object-fit:contain;flex:0 0 auto}
.fec-event-page .event-food-heading h2{margin-bottom:0}
.fec-event-page .event-food .split{align-items:center;gap:40px}
.fec-event-page .event-food-photos{align-items:center;gap:20px}
.fec-event-page .event-food-photos img{height:auto;max-height:310px;object-fit:contain}
.fec-event-page .event-food-photos img:last-child{height:auto;object-fit:contain;transform:rotate(2deg)}
@media(max-width:600px){.fec-event-page .event-food-heading{gap:14px}.fec-event-page .event-food-seal{width:80px;height:80px}.fec-event-page .event-food-heading h2{font-size:clamp(28px,6.5vw,38px)}.fec-event-page .event-food-photos img{height:auto;max-height:260px}}

.fec-event-page .event-food-photos{grid-template-columns:1fr;justify-items:center}.fec-event-page .event-food-photos img{max-width:360px}
