:root{--navy:#081b51;--blue:#1534a0;--orange:#ff941b;--cream:#fff6e9;--ink:#10214a;--muted:#5e6780;--display:"Arial Rounded MT Bold","Trebuchet MS",sans-serif;--body:"Avenir Next",Arial,sans-serif;--motion:5s}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--cream);font-family:var(--body)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,summary{outline-offset:5px}button,summary{cursor:pointer}.wrap{max-width:1220px;margin:auto;padding:0 40px}.top{background:var(--cream);color:var(--ink)}.top-inner{height:104px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brands{display:flex;gap:28px;align-items:center}.brand{display:flex;align-items:center;gap:12px}.brand span{font-size:9px;letter-spacing:1.5px;font-weight:800;max-width:70px}.brand img{display:block;object-fit:contain}.oh{width:72px;height:72px;border-radius:50%}.up{width:104px;height:74px}.ll{width:70px;height:70px;border-radius:50%}.divider{height:38px;width:1px;background:#d5cebf}.nav{display:flex;gap:25px;align-items:center;font-size:13px;font-weight:700}
.button{display:inline-flex;justify-content:center;align-items:center;gap:15px;background:var(--orange);border:1px solid #ffb754;border-radius:12px;padding:18px 25px;color:var(--ink);font-weight:800;font-size:15px;box-shadow:0 5px 0 #ba5a12,0 12px 23px #03134222;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 8px 0 #ba5a12,0 17px 25px #03134230}.button:active{transform:translateY(3px);box-shadow:0 1px 0 #ba5a12}.nav .button{padding:13px 18px;box-shadow:none;font-size:12px}
.hero{position:relative;min-height:735px;overflow:hidden;background:var(--navy);isolation:isolate}.hero-art{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:center 64%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#081b51 0%,#081b51ef 23%,#081b5199 41%,#081b5105 66%),linear-gradient(0deg,#0411374d,transparent 50%)}#halloween-scene{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.hero-inner{position:relative;z-index:3;padding-top:55px;padding-bottom:48px}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#ffe3af;font-size:11px;letter-spacing:2.4px;text-transform:uppercase;font-weight:800}.dot{width:7px;height:7px;background:var(--orange);border-radius:50%;box-shadow:0 0 15px #ffae5c}.hero h1{font-family:var(--display);font-size:100px;font-weight:900;line-height:.92;letter-spacing:-4px;margin:28px 0 29px;width:540px;text-shadow:0 6px 0 #00000026,0 16px 40px #01133933}.hero h1 .or{display:inline-block;background:var(--orange);color:#fff7e9;padding:1px 15px 9px;font-size:50px;letter-spacing:-2px;border-radius:12px;transform:rotate(-7deg);vertical-align:middle;box-shadow:0 5px 0 #b65713}.hero h1 small{display:block;font-size:59px;letter-spacing:-2px;color:#ffc273;margin-top:18px}.gift-promise{display:flex;align-items:center;gap:20px}.gift-promise p{font-size:18px;line-height:1.45;color:#ffda9f;margin:0}.gift-promise strong{font-family:var(--display);font-size:26px;color:#fff5e5}.hero-subtitle{max-width:415px;font-size:13px;line-height:1.65;color:#d3ddf5;margin:18px 0 0}.event-details{display:flex;gap:22px;font-size:13px;margin:24px 0 26px;line-height:1.6}.event-details strong{display:block;color:#fff}.event-details span{color:#c8d4ff}.hero-mini{font-size:10px;color:#c9d4ed;margin-top:19px}.motion-toggle{position:absolute;z-index:5;right:24px;top:24px;border:1px solid #ffffff5c;background:#071748a6;backdrop-filter:blur(8px);color:#fff5e5;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;font-weight:900}.motion-toggle:hover{background:#193881}
.gift-cube{position:relative;width:48px;height:48px;transform-style:preserve-3d;transform:perspective(350px) rotateX(-15deg) rotateY(-22deg) rotateZ(5deg);animation:cube-float var(--motion) ease-in-out infinite;flex:none;margin:4px 7px 3px 0}.gift-cube i{position:absolute;display:block;width:48px;height:48px;border:1px solid #ffdc8a;backface-visibility:hidden}.cube-front{background:linear-gradient(90deg,#ffac31 40%,#fff1bb 40%,#fff1bb 56%,#ffad35 56%);transform:translateZ(24px);border-radius:4px;box-shadow:inset 0 -7px 0 #e5771c}.cube-right{background:linear-gradient(#e88317 43%,#ffe5a4 43%,#ffe5a4 59%,#ee901e 59%);transform:rotateY(90deg) translateZ(24px)}.cube-top{background:linear-gradient(90deg,#ffc264 40%,#fff1bb 40%,#fff1bb 56%,#ffc264 56%);transform:rotateX(90deg) translateZ(24px)}.gift-cube .cube-bow{width:35px;height:18px;border:5px solid #fff3c9;border-radius:50%;transform:translate3d(6px,-12px,14px) rotate(-10deg);box-shadow:0 1px 2px #e7821c}
@keyframes cube-float{0%,100%{transform:perspective(350px) translateY(0) rotateX(-15deg) rotateY(-22deg) rotateZ(5deg)}50%{transform:perspective(350px) translateY(-7px) rotateX(-9deg) rotateY(10deg) rotateZ(-4deg)}}
.highlights{background:#0a1a48;padding:45px 0 48px;scroll-margin-top:25px}.kicker{font-size:10px;letter-spacing:2px;font-weight:900;color:#af5301;text-transform:uppercase}.highlights .kicker{color:#ffbe73}.highlights-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.highlights h2{font-family:var(--display);font-size:29px;letter-spacing:-.8px;margin:10px 0 0}.event-pill{font-size:11px;border:1px solid #526087;border-radius:30px;padding:9px 14px;color:#d8e2ff;white-space:nowrap}.highlight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;perspective:1100px}.highlight-card{border:1px solid #39476e;background:linear-gradient(145deg,#ffffff0e,#ffffff03);border-radius:18px;padding:25px;position:relative;transition:transform .3s,box-shadow .3s;transform-style:preserve-3d;display:grid;grid-template-columns:36px 1fr;gap:13px 14px;align-content:start}.highlight-card:hover{transform:rotateY(-3deg) rotateX(3deg) translateY(-7px);box-shadow:8px 16px 25px #030b292b}.card-icon{height:36px;width:36px;border-radius:11px;background:linear-gradient(145deg,#ffc263,#ed841b);box-shadow:inset 0 2px 0 #ffdd92,0 4px 0 #8c490f;color:#122453;display:grid;place-items:center;font-size:26px;transform:translateZ(18px) rotate(-8deg)}.highlight-card h3{font-size:14px;margin:1px 0 10px;color:#fff1db;line-height:1.5}.highlight-card p{font-size:12px;line-height:1.8;color:#bdc9e5;margin:0}.card-tag{grid-column:2;font-size:9px;letter-spacing:1px;text-transform:uppercase;font-weight:800;color:#ffc07b;margin-top:2px}
.signup{background:var(--cream);color:var(--ink);padding:68px 0;border-top:4px solid var(--orange)}.signup-grid{display:grid;grid-template-columns:.92fr 1fr;gap:76px}.signup-copy{padding-top:13px}.signup h2{font-family:var(--display);font-size:47px;line-height:1.14;letter-spacing:-1.5px;margin:16px 0 20px}.signup h2 em{font-style:normal;color:#d86c04}.intro{font-size:15px;line-height:1.8;color:var(--muted);max-width:400px;margin:0 0 31px}.contest-panel{border-top:1px solid #e5d6c1;padding-top:27px;scroll-margin-top:25px}.contest-panel h3{font-family:var(--display);font-size:30px;letter-spacing:-.7px;margin:12px 0}.contest-description{font-size:13px;line-height:1.8;color:var(--muted);max-width:360px;margin:0}.simple-date{font-size:12px;color:var(--muted);margin:18px 0 24px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.simple-date span{background:#e5ead8;color:#496524;border-radius:5px;font-size:8px;letter-spacing:.5px;font-weight:800;padding:5px 7px}.simple-prize{display:flex;flex-wrap:wrap;align-items:center;gap:14px}.simple-prize strong{font-family:var(--display);font-size:47px;color:#d96d06;letter-spacing:-1.8px}.simple-prize span{font-size:12px;color:var(--muted);max-width:95px;line-height:1.65}.first-prize{font-size:11px;color:var(--muted);margin:12px 0}.first-prize strong{color:var(--ink);font-weight:700}.prize-details{margin-top:10px;font-size:12px;color:var(--muted)}.prize-details summary{padding:8px 0;color:var(--ink);font-weight:700}.prize-details dl{margin:16px 0 0}.prize-details dl div{padding:11px 0;border-top:1px solid #e9ddcd}.prize-details dt{font-weight:700;color:var(--ink);margin-bottom:4px}.prize-details dd{margin:0;line-height:1.5}.contest-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;font-weight:800;color:#1638a1;margin-top:20px;border-bottom:1px solid #bdc6e1;padding-bottom:5px}
.form-card{background:#fffdf8;border:1px solid #e7dac9;border-radius:22px;padding:30px;box-shadow:0 6px 0 #eaddca,0 22px 36px #664a2112;align-self:start;scroll-margin-top:22px}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:10px}.form-kicker{font-size:8px;letter-spacing:1.4px;font-weight:800;color:#a05611}.form-head h3{margin:10px 0 7px;font-size:25px;letter-spacing:-.6px;font-family:var(--display)}.form-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.6}.form-star{font-size:45px;color:#ff9d26;text-shadow:2px 3px 0 #f9cf8f;transform:rotate(12deg)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label.field{display:block;font-size:11px;font-weight:800;margin-bottom:17px}label.field input,label.field select{display:block;margin-top:8px;width:100%;padding:13px 12px;border:1px solid #d7d3cb;border-radius:8px;background:#fffefa;color:var(--ink);font-size:13px;height:46px}input::placeholder{color:#989baa}.days-title{font-size:11px;font-weight:800;margin:0 0 10px}.days{display:flex;gap:8px;margin-bottom:22px;flex-wrap:wrap}.day{position:relative;cursor:pointer}.day input{position:absolute;opacity:0}.day span{display:block;padding:11px 14px;background:white;border:1px solid #d9d6d0;border-radius:8px;font-size:11px;font-weight:800}.day input:checked+span{background:#fff0dc;border-color:#d78022;color:#a84d00}.day input:focus-visible+span{outline:2px solid #12359c;outline-offset:3px}.contest-option{background:#eef0ff;border:1px solid #d7dcf6;border-radius:12px;padding:17px;margin-bottom:17px}.check{display:flex;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;cursor:pointer}.check input{accent-color:#143daf;width:17px;height:17px;flex:none;margin:2px 0 0}.contest-option strong{font-size:13px;display:block}.contest-option small{font-size:11px;color:#5d6784}.pet-list{margin-top:15px;border-top:1px solid #d5daf0;padding-top:14px}.pet-list[hidden]{display:none}.pet-line{display:flex;gap:8px;align-items:center;margin-bottom:8px}.pet-line input{width:100%;padding:12px;border:1px solid #cbd1ec;border-radius:7px;background:#fff;font-size:12px}.add-pet{background:none;border:0;color:#1638a1;font-size:12px;font-weight:800;padding:6px 0}.remove-pet{background:transparent;border:0;color:#555;padding:8px;font-size:18px}.marketing{color:var(--muted);font-size:11px;margin:15px 0 20px}.submit{width:100%;margin-bottom:16px}.form-foot{text-align:center;color:var(--muted);font-size:10px;line-height:1.6;margin:0}.preview-status{padding:12px;background:#fff0dc;color:#8b4200;border-radius:7px;font-size:12px;line-height:1.6}
.footer{background:#051135;padding:24px 0;color:#acb9d7;font-size:11px;text-align:center}.mobile-sticky{display:none}[data-motion="paused"] .gift-cube{animation-play-state:paused}
@media(max-width:1000px){.brands{gap:15px}.brand span{display:none}.nav a:not(.button){display:none}.signup-grid{gap:34px}.highlight-card{padding:19px;grid-template-columns:1fr}.card-tag{grid-column:1}.hero h1{font-size:86px}.hero h1 small{font-size:50px}}
@media(max-width:600px){.wrap{padding:0 23px}.top-inner{height:88px;gap:0}.brands{gap:14px}.oh{width:54px;height:54px}.up{width:86px;height:61px}.ll{width:49px;height:49px}.divider{height:29px}.nav{display:none}.hero{min-height:823px}.hero-art{top:auto;bottom:0;height:350px;width:100%;object-position:68% center}.shade{background:linear-gradient(180deg,#081b51 0%,#081b51 51%,#081b51c9 60%,#081b5100 72%)}.hero-inner{padding-top:29px;padding-bottom:290px}.eyebrow{font-size:8px;letter-spacing:1.5px}.hero h1{font-size:69px;letter-spacing:-3px;width:auto;margin:24px 0 25px}.hero h1 .or{font-size:34px;padding:0 10px 6px;letter-spacing:-1px}.hero h1 small{font-size:41px;letter-spacing:-1.5px;margin-top:13px}.gift-promise{gap:17px}.gift-promise p{font-size:14px}.gift-promise strong{font-size:21px}.gift-cube{width:38px;height:38px;margin-left:5px}.gift-cube i{width:38px;height:38px}.cube-front{transform:translateZ(19px)}.cube-right{transform:rotateY(90deg) translateZ(19px)}.cube-top{transform:rotateX(90deg) translateZ(19px)}.gift-cube .cube-bow{width:29px;height:16px;border-width:4px;transform:translate3d(4px,-9px,12px) rotate(-10deg)}.hero-subtitle{font-size:11px;margin-top:18px;max-width:310px}.event-details{font-size:11px;gap:19px;margin:20px 0 21px}.hero .button{font-size:13px;padding:15px 21px}.hero-mini{font-size:8px;margin-top:17px}.motion-toggle{width:29px;height:29px;top:20px;right:18px;font-size:11px}.highlights{padding:31px 0 34px}.highlights-heading{margin-bottom:20px}.highlights h2{font-size:24px;line-height:1.3;max-width:240px}.highlights-heading .event-pill{display:none}.highlight-grid{grid-template-columns:1fr;gap:13px}.highlight-card{padding:18px 17px;grid-template-columns:34px 1fr;gap:8px 14px;border-radius:14px}.card-tag{grid-column:2;font-size:8px}.card-icon{height:32px;width:32px;font-size:22px}.highlight-card h3{font-size:13px;margin-bottom:7px}.highlight-card p{font-size:11px;line-height:1.7}.signup{padding:37px 0 41px}.signup-grid{grid-template-columns:1fr;gap:31px}.signup-copy{padding-top:0}.signup h2{font-size:35px;margin:14px 0 16px}.intro{font-size:13px;margin:0 0 24px}.contest-panel{padding-top:23px}.contest-panel h3{font-size:28px}.contest-description{font-size:12px}.simple-date{font-size:11px;margin:17px 0 16px}.simple-prize strong{font-size:43px}.simple-prize span{font-size:11px;max-width:100px}.first-prize{font-size:10px}.prize-details{font-size:11px}.contest-link{font-size:11px;margin-top:17px}.form-card{padding:23px 19px;border-radius:17px}.form-head h3{font-size:23px}.form-head p{font-size:10px}.form-kicker{font-size:7px;letter-spacing:1px}.form-star{font-size:32px}.field-grid{gap:12px}.owner-fields{grid-template-columns:1fr;gap:0}.days{gap:7px}.day span{padding:10px 11px}.form-head{margin-bottom:23px}.footer{padding:24px 0 98px;font-size:10px}.mobile-sticky{position:fixed;bottom:0;left:0;right:0;z-index:5;background:#fff6e9f5;padding:10px 20px 15px;display:flex;justify-content:space-between;gap:12px;align-items:center;box-shadow:0 -4px 25px #06174325;backdrop-filter:blur(8px);color:var(--ink)}.mobile-sticky strong{font-size:10px;display:block;max-width:185px;line-height:1.5}.mobile-sticky small{font-size:9px;color:var(--muted)}.mobile-sticky .button{padding:13px 18px;font-size:12px;box-shadow:none;border-radius:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gift-cube{animation:none}.button,.highlight-card{transition:none}.highlight-card:hover,.button:hover{transform:none}}
/* Interactive 3D gift; lid and bow share one hinge. */
.gift-trigger{position:relative;border:0;background:none;padding:5px 7px 17px 0;color:#ffe0a7;flex:none;min-width:60px;min-height:73px;perspective:500px}.gift-trigger .gift-cube{display:block;margin:0;pointer-events:none}.gift-lid{position:absolute;inset:0;display:block;transform-style:preserve-3d;transform-origin:50% 0;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.gift-trigger.is-open .gift-lid{transform:translate3d(-4px,-29px,-4px) rotateZ(-18deg) rotateX(-22deg)}.gift-trigger.is-open .gift-cube{animation-play-state:paused}.gift-hint{position:absolute;bottom:0;left:-2px;font-size:7px;letter-spacing:1.6px;font-weight:800;white-space:nowrap}.gift-cube .gift-spark{width:auto;height:auto;border:0;color:#ffe6a9;font-style:normal;opacity:0;font-size:20px;transition:transform .55s,opacity .35s}.spark-one{left:8px;top:0}.spark-two{left:25px;top:6px}.is-open .spark-one{opacity:1;transform:translate3d(-16px,-37px,30px) rotate(15deg)}.is-open .spark-two{opacity:1;transform:translate3d(23px,-24px,30px) scale(.65)}.gift-promise{position:relative}.gift-reveal{position:absolute;z-index:7;left:40px;top:calc(100% - 206px);background:#fff5e4;border:1px solid #ffc472;box-shadow:0 8px 30px #020d354d;border-radius:12px;padding:15px 20px;color:#172249;min-width:245px}.gift-reveal[hidden]{display:none}.gift-reveal span{display:block;font-size:12px;margin-bottom:8px}.gift-reveal a{font-size:13px;font-weight:800;color:#984b00;text-decoration:underline;text-underline-offset:4px}.gift-trigger:focus-visible{outline:2px solid #ffd28b;border-radius:8px}@media(max-width:600px){.gift-trigger{min-width:48px;min-height:63px;padding-bottom:18px}.gift-trigger .gift-cube{margin-left:5px}.gift-hint{font-size:6px;left:1px}.gift-reveal{left:23px;top:430px;min-width:240px}.gift-trigger.is-open .gift-lid{transform:translate3d(-3px,-24px,-4px) rotateZ(-18deg) rotateX(-22deg)}}@media(prefers-reduced-motion:reduce){.gift-lid,.gift-cube .gift-spark{transition:none}}

.gift-reveal{left:80px;top:0;min-width:245px;padding:13px 16px}@media(max-width:600px){.gift-reveal{left:65px;top:-2px;min-width:0;width:250px;max-width:calc(100vw - 111px);padding:12px}.gift-reveal a{font-size:12px}.gift-reveal span{font-size:11px}}

/* Keep the event, activities and RSVP together in one continuous layout. */
.hero{min-height:685px}.hero-inner{padding-top:40px;padding-bottom:88px}.hero h1{font-size:88px;margin:24px 0}.hero h1 small{font-size:52px}.signup{padding:0 0 38px;border-top:0;background:linear-gradient(180deg,#081b51 0,#081b51 46px,#fff6e9 46px)}.signup-grid{position:relative;top:-46px;margin-bottom:-46px;gap:40px}.signup-copy{padding:26px;background:#fff6e9;border:1px solid #e7dac9;border-radius:20px;align-self:start}.compact-highlights{display:grid;gap:13px;font-size:12px;font-weight:700;margin-bottom:24px;color:#39496e}.contest-panel{padding-top:23px}.contest-panel h3{font-size:29px}.form-card{padding:26px}.footer{padding:18px 0}
@media(max-width:600px){.hero{min-height:800px}.hero-inner{padding-top:29px;padding-bottom:280px}.hero h1{font-size:69px;margin:24px 0}.hero h1 small{font-size:41px}.signup{padding:0 0 32px;background:#fff6e9}.signup-grid{top:0;margin-bottom:0;gap:22px;padding-top:24px}.signup-copy{padding:0;border:0;background:none}.compact-highlights{display:flex;flex-wrap:wrap;gap:10px 17px;font-size:10px;margin-bottom:20px}.contest-panel{padding-top:19px}.contest-description{display:none}.contest-panel h3{font-size:25px}.simple-date{margin:12px 0}.simple-prize strong{font-size:35px}.contest-link{display:none}.form-card{padding:23px 19px}.footer{padding:20px 0 98px}}
/* Full event journey: useful information across distinct, spacious sections. */
.long-section{padding:78px 0;scroll-margin-top:20px}.long-section h2,.closing h2{font-family:var(--display);font-size:46px;line-height:1.14;letter-spacing:-1.5px;margin:15px 0 22px}.long-section h2 em{font-style:normal;color:#d86c04}.section-intro{font-size:15px;line-height:1.85;max-width:460px;color:var(--muted);margin:0}.section-heading{margin-bottom:36px}.section-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.gift-section{background:var(--cream);color:var(--ink)}.gift-layout{display:grid;grid-template-columns:.9fr 1fr;gap:82px;align-items:center}.gift-art{height:460px;background:radial-gradient(circle,#ffe4bb 0,#fff3e0 61%);border-radius:44% 56% 48% 52%;position:relative;display:grid;place-items:center;perspective:900px;overflow:hidden}.gift-orbit{position:absolute;width:330px;height:330px;border:1px dashed #e4bd88;border-radius:50%;transform:rotateX(58deg) rotateZ(-20deg)}.orbit-two{transform:rotateX(25deg) rotateY(45deg)}.gift-star{position:absolute;color:#dc7918;text-shadow:2px 4px 0 #e5bb88;font-size:48px}.star-a{left:47px;top:75px;transform:rotate(14deg)}.star-b{right:40px;bottom:94px;font-size:30px}.big-present{width:165px;height:175px;position:relative;background:linear-gradient(90deg,#ffb23c 0,#ffb23c 40%,#fff2c7 40%,#fff2c7 57%,#f49b27 57%);border-radius:9px;transform:rotate(-9deg) rotateY(-17deg);box-shadow:18px 17px 0 #ce701c,28px 30px 33px #d8882838;animation:present-bob 6s ease-in-out infinite}.present-lid{position:absolute;top:-15px;left:-7px;right:-7px;height:38px;border-radius:7px;background:linear-gradient(90deg,#ffc565 40%,#fff2c7 40%,#fff2c7 57%,#ffc565 57%);box-shadow:7px 5px 0 #e98a20}.present-bow{position:absolute;font-size:88px;font-weight:bold;color:#fff2c7;top:-84px;left:38px;text-shadow:1px 4px 0 #e09c42}.gift-art-caption{position:absolute;bottom:48px;font-size:9px;letter-spacing:2px;font-weight:800;color:#a96625}.gift-steps{list-style:none;padding:0;margin:26px 0 30px;display:grid;gap:21px}.gift-steps li{display:flex;gap:16px;align-items:start}.gift-steps li>span{display:grid;place-items:center;width:34px;height:34px;flex:none;border:1px solid #e1c198;border-radius:50%;font-size:11px;font-weight:800;color:#a55e1e}.gift-steps strong{font-size:14px}.gift-steps p{font-size:12px;line-height:1.7;color:var(--muted);margin:5px 0 0}@keyframes present-bob{50%{transform:translateY(-12px) rotate(-4deg) rotateY(12deg)}}
.activities{background:#f4e8d5;color:var(--ink)}.activity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.activity-card{border:1px solid #e2d1b5;border-radius:18px;background:#fffaf1;overflow:hidden;transition:transform .25s,box-shadow .25s}.activity-card:hover{transform:translateY(-7px);box-shadow:0 15px 28px #7e57251a}.activity-visual{height:155px;position:relative;display:grid;place-items:center;overflow:hidden;background:#132658}.activity-copy{padding:23px 20px}.activity-label{font-size:8px;letter-spacing:1.4px;font-weight:800;color:#9b570e}.activity-copy h3{font-family:var(--display);font-size:19px;line-height:1.25;margin:12px 0}.activity-copy p{font-size:12px;line-height:1.85;color:var(--muted);margin:0 0 21px}.activity-date{font-size:9px;font-weight:800;color:#a65c15}.mini-pumpkin{width:91px;height:86px;border-radius:47%;background:radial-gradient(ellipse at 30% 20%,#ffc453,#f18311 67%);box-shadow:inset -12px -9px 0 #cf5b11,10px 15px 20px #04102d44;transform:rotate(-8deg);font-size:40px;color:#301539;display:grid;place-items:center}.mini-pumpkin:before{content:'';position:absolute;width:12px;height:17px;background:#49622c;top:-14px;border-radius:5px;transform:rotate(12deg)}.visual-label{position:absolute;bottom:16px;font-size:8px;letter-spacing:2px;color:#ffe8b5;font-weight:800}.balloon-visual{background:#273162}.balloon{position:absolute;display:grid;place-items:center;width:54px;height:68px;border-radius:50%;font-size:24px;font-style:normal;color:#203151;box-shadow:inset 5px 3px 0 #ffffff44,5px 7px 13px #070e2f44}.balloon:after{content:'';position:absolute;top:68px;height:78px;border-left:1px solid #ffcb98;transform:rotate(12deg)}.orange-balloon{background:#ffa322;left:23%;top:36px;transform:rotate(-15deg)}.violet-balloon{background:#c37eea;right:19%;top:41px;transform:rotate(18deg)}.yellow-balloon{background:#ffde68;top:17px;left:42%}.market-visual{background:#172b58}.stall-roof{position:absolute;top:36px;width:146px;height:39px;background:repeating-linear-gradient(90deg,#f3e0bb 0,#f3e0bb 24px,#ef9a32 24px,#ef9a32 48px);transform:perspective(150px) rotateX(25deg);border-radius:5px 5px 12px 12px;box-shadow:0 5px 0 #8a521d}.stall-window{position:absolute;top:78px;width:132px;height:39px;border:4px solid #9e642e;display:flex;align-items:center;justify-content:space-around;color:#ffd66a;background:#213160}.trick-visual{background:#3a2859}.trick-ghost{position:relative;width:67px;height:85px;border-radius:50% 50% 28% 28%;background:linear-gradient(130deg,#fff7de,#dcc4b0);box-shadow:7px 8px 0 #080d332e;font-family:var(--display);color:#342443;display:grid;place-items:center;font-size:20px;transform:rotate(10deg)}.candy{position:absolute;width:20px;height:15px;background:#ffb546;border-radius:6px;box-shadow:-6px 0 0 #d88a20,6px 0 0 #d88a20}.candy-one{left:28px;top:40px;transform:rotate(-22deg)}.candy-two{right:24px;top:47px;transform:rotate(25deg);background:#db86b7}.candy-three{bottom:24px;left:36px;transform:rotate(15deg)}
.contest-long{background:radial-gradient(ellipse at 90% 5%,#273675,transparent 65%),#0a1947;color:#fff4e4}.contest-long .kicker{color:#ffbc73}.contest-long-top{display:flex;justify-content:space-between;align-items:center;gap:55px}.contest-long h2{font-size:56px}.contest-long .section-intro{color:#c5cfeb;max-width:530px}.contest-badges{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.contest-badges span{font-size:11px;border:1px solid #4b5a81;padding:9px 12px;border-radius:7px;color:#e4ebff}.contest-badges .free-entry{border-color:#e49c43;color:#ffd59d;font-size:9px;font-weight:800}.contest-total{text-align:right;flex:none}.contest-total>span{font-size:9px;letter-spacing:2px;color:#ffc689;font-weight:800}.contest-total strong{display:block;font-family:var(--display);font-size:73px;letter-spacing:-3px;color:#ff9d29;margin-top:9px}.contest-total p{font-size:12px;color:#c5cfeb;margin:8px 0}.prize-podium{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:end;margin:46px 0 31px}.podium{text-align:center;padding:29px 18px 25px;border:1px solid #465478;border-radius:17px;background:linear-gradient(135deg,#ffffff0d,#ffffff02);box-shadow:0 6px 0 #061235}.podium.first{padding-top:42px;border-color:#d09a52;background:linear-gradient(135deg,#ff9f251f,#ff9f2507)}.prize-place{font-size:9px;letter-spacing:1px;color:#ffd08d;font-weight:800}.podium strong{display:block;font-family:var(--display);font-size:35px;color:#ffdbac;margin-top:18px}.podium p{font-size:12px;color:#c3ceec;margin:7px 0 23px}.podium>div{border-top:1px solid #526080;padding-top:16px;font-size:11px;color:#d5def1}.consolation .prize-place{font-size:8px}.contest-how{border-top:1px solid #3b496f;padding-top:27px;display:flex;justify-content:space-between;align-items:center;gap:35px}.contest-how strong{font-size:16px}.contest-how p{font-size:12px;line-height:1.8;color:#c3ceec;max-width:615px;margin-bottom:0}.contest-how .button{flex:none;font-size:13px}
.programme{background:#fff6e9;color:var(--ink)}.programme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.day-card{background:#fffdfa;border:1px solid #e6d6bf;border-radius:18px;overflow:hidden}.date-block{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#ffdcad;padding:20px}.date-block span{font-size:9px;letter-spacing:1px;font-weight:800;color:#8b4e12}.date-block strong{font-family:var(--display);font-size:48px;color:#bf5c08}.day-card>div:last-child{padding:24px}.day-card h3{font-size:19px;font-family:var(--display);margin:0 0 19px}.day-card ul{padding-left:17px;margin:0;font-size:12px;line-height:1.8;color:var(--muted)}.day-card li{margin:11px 0}.day-note{margin:20px 0 0;border-top:1px solid #eadfce;padding-top:16px;font-size:11px;font-weight:700;color:#98551a;line-height:1.7}
.signup.long-section{background:#f4e8d5;border:0;padding:75px 0}.signup.long-section .signup-grid{top:0;margin:0 auto;gap:76px}.rsvp-copy{padding-top:18px}.rsvp-reminders{display:grid;gap:22px;margin-top:34px}.rsvp-reminders>div{display:flex;gap:16px}.rsvp-reminders>div>span{font-size:24px;color:#d48125;flex:none;width:28px}.rsvp-reminders p{font-size:12px;color:var(--muted);line-height:1.8;margin:0;max-width:360px}.rsvp-reminders strong{display:block;color:var(--ink);font-size:14px;margin-bottom:5px}.rsvp-event-note{border-top:1px solid #dfcdb2;margin-top:33px;padding-top:23px;font-size:12px;line-height:1.85;color:var(--muted)}.rsvp-event-note strong{color:var(--ink)}
.visit{background:#fff6e9;color:var(--ink)}.visit-grid{display:grid;grid-template-columns:.88fr 1fr;gap:75px}.location-card{background:#102458;padding:36px;border-radius:22px;color:#fff3e0;align-self:start}.location-card .kicker{color:#ffbd72}.location-card h2{font-size:43px}.location-card h2 em{color:#ffc279}.location-floor{font-size:13px;line-height:1.9;color:#c2cdec;margin-top:30px}.location-floor strong{font-size:19px;color:#fff0d4}.location-card>p{font-size:12px;line-height:1.9;color:#c2cdec;max-width:310px}.location-hours{display:grid;gap:8px;padding:22px 0;margin:23px 0;border-top:1px solid #526086;border-bottom:1px solid #526086;font-size:12px;color:#c2cdec}.location-hours strong{color:#ffdbab}.location-card .button{font-size:12px}.location-card p.location-note{font-size:10px;margin:25px 0 0}.faq h2{font-size:31px;line-height:1.3;margin-bottom:28px}.faq details{border-bottom:1px solid #e1d2bc;padding:21px 0}.faq summary{font-size:13px;font-weight:700;color:#15294d;line-height:1.65}.faq details p{font-size:12px;line-height:1.9;color:var(--muted);padding-left:16px;margin-bottom:0}.closing{text-align:center;background:radial-gradient(ellipse at 50% 0%,#263674,#081745 75%);padding:65px 0 70px;color:#fff2dd}.closing .kicker{color:#ffc07b;font-size:9px}.closing h2{font-size:46px;margin:22px 0 31px}.footer{padding:22px 0}.long-section .button{margin-top:4px}[data-motion="paused"] .big-present{animation-play-state:paused}
@media(max-width:1000px){.activity-grid{grid-template-columns:1fr 1fr}.gift-layout,.visit-grid{gap:35px}.gift-art{height:360px}.contest-total strong{font-size:58px}.contest-long-top{gap:30px}.signup.long-section .signup-grid{gap:35px}.programme-grid{gap:13px}.date-block{padding:15px}.date-block span{font-size:7px}.prize-podium{gap:12px}.podium{padding:24px 12px}.podium strong{font-size:29px}}
@media(max-width:600px){.long-section{padding:43px 0}.long-section h2{font-size:33px;letter-spacing:-1px;margin:14px 0 18px}.section-intro{font-size:13px;line-height:1.85}.gift-layout{grid-template-columns:1fr;gap:28px}.gift-art{height:270px;max-width:350px;width:100%;margin:auto}.big-present{width:112px;height:120px;box-shadow:13px 12px 0 #ce701c,20px 25px 27px #d8882838}.present-lid{height:29px;top:-11px}.present-bow{font-size:64px;top:-61px;left:23px}.gift-orbit{width:240px;height:240px}.gift-art-caption{bottom:28px;font-size:7px}.gift-star{font-size:30px}.star-a{left:39px;top:50px}.star-b{right:35px;bottom:69px;font-size:23px}.gift-steps{margin:25px 0;gap:20px}.gift-steps strong{font-size:13px}.gift-steps p{font-size:11px}.long-section .button{font-size:12px;padding:16px 20px}.section-heading{margin-bottom:27px}.section-heading p{font-size:12px}.activity-grid{gap:12px}.activity-visual{height:120px}.activity-copy{padding:17px 14px}.activity-label{font-size:7px;letter-spacing:.9px}.activity-copy h3{font-size:16px}.activity-copy p{font-size:10px;line-height:1.85;margin-bottom:16px}.activity-date{font-size:8px}.mini-pumpkin{width:66px;height:63px;font-size:30px}.visual-label{font-size:6px;bottom:12px}.balloon{width:36px;height:48px;font-size:18px}.balloon:after{top:48px;height:55px}.orange-balloon{left:15%;top:33px}.violet-balloon{right:13%;top:41px}.yellow-balloon{left:37%;top:17px}.stall-roof{width:110px;height:30px;top:25px}.stall-window{top:61px;width:102px;height:29px}.trick-ghost{width:48px;height:67px;font-size:16px}.candy{width:13px;height:10px;box-shadow:-4px 0 0 #d88a20,4px 0 0 #d88a20}.candy-one{left:14px;top:31px}.candy-two{right:13px;top:37px}.candy-three{bottom:19px;left:21px}.contest-long-top{display:block}.contest-long h2{font-size:39px}.contest-badges{gap:7px;margin-top:20px}.contest-badges span{font-size:9px;padding:8px 9px}.contest-total{text-align:left;margin-top:32px}.contest-total strong{font-size:61px}.contest-total>span{font-size:8px}.contest-total p{font-size:11px}.prize-podium{grid-template-columns:1fr 1fr;gap:12px;margin-top:28px;align-items:stretch}.podium,.podium.first{padding:23px 13px 19px}.prize-place{font-size:8px}.podium strong{font-size:28px;margin-top:16px}.podium p{font-size:10px;margin-bottom:19px}.podium>div{font-size:9px;line-height:1.8;padding-top:13px}.consolation .prize-place{font-size:7px}.contest-how{display:block;padding-top:24px}.contest-how strong{font-size:14px}.contest-how p{font-size:11px;margin-bottom:22px}.programme-grid{grid-template-columns:1fr;gap:16px}.day-card{display:grid;grid-template-columns:87px 1fr}.date-block{display:flex;flex-direction:column;justify-content:center;padding:16px 8px;gap:13px}.date-block strong{font-size:44px}.date-block span{font-size:7px;letter-spacing:.8px}.day-card>div:last-child{padding:23px 18px}.day-card h3{font-size:17px;margin-bottom:13px}.day-card ul{font-size:11px}.day-card li{margin:7px 0}.day-note{font-size:10px;margin-top:15px;padding-top:13px}.signup.long-section{padding:43px 0}.signup.long-section .signup-grid{gap:30px;padding-top:0}.rsvp-copy{padding-top:0}.rsvp-reminders{gap:20px;margin-top:25px}.rsvp-reminders strong{font-size:13px}.rsvp-reminders p{font-size:11px}.rsvp-event-note{margin-top:25px;padding-top:19px;font-size:11px}.visit-grid{grid-template-columns:1fr;gap:37px}.location-card{padding:28px}.location-card h2{font-size:36px}.location-floor{margin-top:20px}.location-floor strong{font-size:17px}.location-card>p{font-size:11px}.location-hours{margin:19px 0;padding:20px 0;font-size:11px}.location-card p.location-note{font-size:10px}.faq h2{font-size:28px;margin-bottom:19px}.faq details{padding:19px 0}.faq summary{font-size:12px}.faq details p{font-size:11px}.closing{padding:43px 0 48px}.closing h2{font-size:34px}.closing .kicker{font-size:7px;letter-spacing:1.3px}.closing .button{font-size:12px}.footer{padding:23px 0 98px}}
@media(prefers-reduced-motion:reduce){.big-present{animation:none}.activity-card{transition:none}.activity-card:hover{transform:none}}
@media(max-width:600px){.activity-grid{grid-template-columns:1fr}.activity-card{display:grid;grid-template-columns:110px 1fr}.activity-visual{height:100%;min-height:210px}.activity-copy{padding:22px 17px}.activity-copy h3{font-size:18px}.activity-copy p{font-size:12px;line-height:1.75}.activity-date{font-size:9px}.activity-label{font-size:7px}.visual-label{bottom:20px}.stall-roof{width:92px}.stall-window{width:86px}.balloon{width:32px;height:43px}.orange-balloon{left:9%;top:58px}.violet-balloon{right:9%;top:72px}.yellow-balloon{left:36%;top:35px}.candy-one{left:10px}.candy-two{right:10px}.mini-pumpkin{width:65px}.trick-ghost{width:51px;height:72px}}
/* Shorter copy, with location kept as a compact final strip. */
.long-section{padding-top:58px;padding-bottom:58px}.gift-steps{gap:17px}.activity-copy{padding-top:20px;padding-bottom:20px}.activity-copy h3{margin:10px 0}.activity-copy p{margin-bottom:16px}.visit-grid{display:block}.location-card{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:12px 30px;align-items:center;padding:30px 36px}.location-card>.kicker{grid-column:1/-1}.location-card h2{margin:0;font-size:33px;grid-row:2/5}.location-floor{margin:0;grid-column:2;grid-row:2}.location-card>p:not(.location-note){margin:0;grid-column:2;grid-row:3;font-size:11px}.location-hours{margin:0;padding:0;border:0;grid-column:3;grid-row:2}.location-card>.button{grid-column:3;grid-row:3;justify-self:start;padding:13px 16px}.location-card p.location-note{grid-column:2/4;grid-row:4;margin:4px 0 0}.signup.long-section{padding-top:58px;padding-bottom:58px}.rsvp-event-note{margin-top:25px}
@media(max-width:600px){.long-section,.signup.long-section{padding-top:36px;padding-bottom:36px}.location-card{display:block;padding:26px}.location-card h2{margin:15px 0 20px;font-size:32px}.location-floor{margin-bottom:12px}.location-card>p:not(.location-note){margin-bottom:20px}.location-hours{margin-bottom:20px}.location-card p.location-note{margin-top:20px}.activity-visual{min-height:175px}.activity-copy{padding:20px 16px}}

/* Display the original poster photographs with CSS viewports, preserving source pixels. */
.poster-photo{display:block;position:relative;aspect-ratio:4/3;height:auto;min-height:0;overflow:hidden;background:#132658}.poster-photo img{position:absolute;max-width:none;height:auto;display:block}.poster-pumpkin img{width:353.611%;left:-44.444%;top:-209.259%}.poster-balloons img{width:353.611%;left:-207.222%;top:-207.037%}.poster-trick img{width:353.611%;left:-30.556%;top:-359.259%}.poster-costume img{width:454.643%;left:-296.429%;top:-490.476%}
@media(max-width:600px){.activity-grid{grid-template-columns:1fr 1fr}.activity-card{display:block}.activity-visual.poster-photo{height:auto;min-height:0;aspect-ratio:4/3}.activity-copy{padding:18px 14px}.activity-copy h3{font-size:17px}.activity-copy p{font-size:11px}.activity-date{font-size:8px}}

.activity-visual.poster-photo img{width:100%;height:100%;left:0;top:0;object-fit:cover;object-position:center}

/* Consistent activity card rows and date alignment. */
.activity-card{display:flex;flex-direction:column}.activity-copy{flex:1;display:grid;grid-template-rows:22px 54px 1fr auto;gap:10px}.activity-copy h3,.activity-copy p{margin:0}.activity-copy p{min-height:48px}.activity-date{display:block;margin-top:18px;line-height:1.6}
@media(max-width:600px){.activity-card{display:flex}.activity-copy{grid-template-rows:18px 48px 1fr auto;gap:8px}.activity-copy p{min-height:62px}.activity-date{margin-top:12px}}

.rsvp-confirmation h3{font-family:var(--display);font-size:30px;margin-top:0}.rsvp-confirmation p{font-size:13px;line-height:1.8;overflow-wrap:anywhere}.rsvp-confirmation p strong{color:var(--ink)}.submit:disabled{opacity:.6;cursor:wait}

.activity-brand{position:absolute;left:14px;bottom:14px;width:64px;height:64px;border-radius:50%;overflow:hidden;z-index:2;box-shadow:0 3px 12px #0003;background:#fff4ee}.activity-visual.poster-photo .activity-brand-ollie img{position:static;width:100%;height:100%;object-fit:contain}.activity-visual.poster-photo .activity-brand-believe img{position:absolute;width:145.1%;height:auto;max-width:none;left:-25.5%;top:-8.8%;object-fit:initial}.activity-brand-believe{background:#ffef00}
@media(max-width:600px){.activity-brand{width:48px;height:48px;left:9px;bottom:9px}}
