:root{--green:#073d32;--red:#e13e3c;--gold:#f4c957;--cream:#fff9ee;--ink:#123e34}.preview-bar{background:#dd3c3b;color:white}.logo img{width:153px;height:82px}header{height:112px;background:var(--cream);position:relative;z-index:5;border:0}nav a{font-weight:700}.button{border-radius:100px;padding:16px 26px;transition:transform .25s,box-shadow .25s}.primary:hover,.gold:hover{box-shadow:0 8px 0 #0002;transform:translateY(-5px)}header>.primary{background:var(--red)}.hero{max-width:none;min-height:820px;padding-top:58px;color:#fff8e9;background:radial-gradient(ellipse at 50% 30%,#1a6752 0%,#0a4336 48%,#062e27 100%);isolation:isolate;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#f3df9d19 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(to bottom,black,transparent 85%)}.hero:after{content:'';position:absolute;inset:30px 30px 45px;border:1px solid #e9d99a22;border-radius:300px 300px 16px 16px;pointer-events:none;z-index:-1}.hero-copy{max-width:980px}.hero .eyebrow{color:#f6dfa1;letter-spacing:3px;margin-bottom:23px}.tiny-star{color:var(--gold)}.hero h1{line-height:.96;font-size:90px;letter-spacing:-.065em}.hero h1 .headline-top{display:block;color:#fff7e4;font-size:clamp(40px,5.6vw,78px);font-weight:600;letter-spacing:-.055em}.hero h1 .headline-main{display:block;color:#fff7e4;font-size:clamp(59px,7.8vw,112px);padding-top:8px;font-weight:800;white-space:nowrap}.hero h1 em{color:var(--gold);font-family:Georgia,serif;font-weight:400;letter-spacing:-.085em;position:relative;text-shadow:3px 4px 0 #073d32}.hero h1 em:after{content:'';position:absolute;left:3%;right:-5%;bottom:-9px;height:7px;border-radius:50%;background:var(--red);transform:rotate(-5deg)}.hero p{color:#dfebd9;margin-top:32px;font-size:15px}.hero .actions{margin-top:25px}.hero .primary{background:var(--red);color:white;box-shadow:0 5px 0 #6f24274d}.hero .outline{color:#fff7e4;border-color:#a8bba366;background:#ffffff08}.hero-note{color:#d5e5d0}.hero-note span{color:#f5c95c}.hero-bottom{margin-top:205px;color:#dce6cd;border-top:1px solid #fff3;font-size:9px;z-index:3}.gift-scene{z-index:1}.gift{box-shadow:15px 27px 35px #0004,inset -18px 0 0 #0002,inset 2px 2px 4px #ffffff55;animation-duration:6s}.gift:after{background-image:linear-gradient(130deg,#fff2,transparent 40%,#0001);box-shadow:0 8px 7px #0002,inset 0 2px 1px #fff3}.gift:before{background:linear-gradient(90deg,#ce9d36,#ffe8a0 40%,#e6b848 75%);box-shadow:2px 0 4px #0002}.gift b{filter:drop-shadow(2px 4px 2px #0003)}.hero .gift-green{width:158px;height:155px;top:440px;left:6%;background:#73a180;rotate:-17deg}.hero .gift-red{width:200px;height:185px;top:490px;right:5%;background:#eb514b;rotate:14deg}.hero .gift-gold{width:108px;height:115px;right:18%;top:570px;background:#eab83b;rotate:-11deg}.hero .gift-tag{left:21%;top:608px;color:#efdfbb;font-size:17px;rotate:-12deg}.hero .s1{left:9%;top:155px;color:var(--gold);font-size:60px}.hero .s2{right:11%;top:310px;color:#ddc98e;font-size:40px}.holiday-stamp{position:absolute;top:260px;left:4.5%;width:100px;height:100px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #efdfa9;border-radius:100%;rotate:-14deg;color:#efe3b6;font-size:8px;letter-spacing:1px;z-index:2}.holiday-stamp b{font-size:25px;line-height:1.5;color:var(--red)}.holiday-stamp span:last-child{font-size:6px}.ornament{position:absolute;right:7%;top:95px;width:54px;height:65px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff6,#ed4d46 20%,#9e2627 85%);box-shadow:8px 12px 20px #0003;transform-origin:50% -95px;animation:sway 8s ease-in-out infinite}.ornament:before{content:'';position:absolute;height:110px;width:1px;background:#e5c579;left:50%;bottom:100%}.ornament:after{content:'';position:absolute;top:-7px;left:20px;width:15px;height:9px;border-radius:3px;background:#d6b366}.ornament-two{right:15%;top:55px;width:32px;height:40px;background:radial-gradient(circle at 30% 25%,#fff9,#f6d369 30%,#a87e2e 90%);animation-delay:-3s}.ornament-two:after{width:10px;left:11px}.bridge-art{position:absolute;bottom:50px;left:0;width:100%;height:200px;stroke:#d2b967;stroke-width:2;opacity:.28;pointer-events:none;z-index:0}.bridge-art path:first-child{stroke-width:4}.joy-ribbon{background:var(--red);color:#fff3d9;overflow:hidden;rotate:-1.3deg;position:relative;z-index:3;width:100%;margin-top:-18px;border-top:5px solid var(--cream);border-bottom:5px solid var(--cream)}.joy-ribbon>div{font-family:Manrope,sans-serif;font-weight:800;font-size:15px;letter-spacing:2px;white-space:nowrap;padding:18px 0;animation:ribbon 38s linear infinite;width:max-content}.joy-ribbon span{color:var(--gold);margin:0 45px;font-size:21px}@keyframes ribbon{from{transform:translateX(0)}to{transform:translateX(-35%)}}@keyframes sway{0%,100%{rotate:-7deg}50%{rotate:7deg}}.intro{padding-top:95px;padding-bottom:60px;position:relative}.intro h2{font-size:clamp(40px,4.7vw,65px)}.intro .eyebrow{color:var(--red)}.intro h2 em{font-size:1.13em}.ways{border-bottom:0;gap:16px;padding-bottom:40px}.ways>a{border:0;background:#edeedb;border-radius:14px;padding:30px 23px;transition:transform .25s}.ways>a:hover{transform:translateY(-6px) rotate(-1deg)}.ways>a:nth-child(2){background:#f7dfd5}.ways>a:nth-child(3){background:#f7e9b8}.way-icon{font-size:37px}.section-title .eyebrow{color:var(--red)}.gallery{gap:28px;align-items:center;padding:15px 8px}.photo-space{border:10px solid white;border-bottom:38px solid white;box-shadow:0 12px 30px #38432915;rotate:-3deg;border-radius:4px;min-height:320px;transition:rotate .4s,transform .4s}.photo-space:nth-child(2){rotate:4deg;margin-top:40px}.photo-space:nth-child(3){rotate:-3deg;margin-top:-10px}.photo-space:hover{rotate:0deg;transform:translateY(-6px)}.photo-space:after{content:'';position:absolute;top:0;left:calc(50% - 25px);width:50px;height:15px;background:#f3d07188;rotate:-7deg}.photo-space.big{background:radial-gradient(circle at 50% 40%,#d4e7c5,#a6c9af)}.photo-space.pink{background:radial-gradient(circle at 50% 40%,#f8ded1,#edb6a8)}.photo-space.yellow{background:radial-gradient(circle at 50% 40%,#fff0bf,#edcf78)}.photo-icon{font-size:58px}.limo{background:#eceddd;width:100%;padding:75px max(5.5%,calc((100% - 1190px)/2));margin-top:50px;border-radius:70px 0 70px 0}.limo .eyebrow{color:var(--red)}.limo-panel{background:var(--cream);border:1px solid #d7ddc7;box-shadow:9px 10px 0 #d5d9bf;rotate:1deg}.video-section{border:0;padding-top:95px}.video-placeholder{border-radius:120px 18px 18px 18px;background:radial-gradient(circle at 70% 30%,#42856a,var(--green));box-shadow:12px 12px 0 #f2cf67;min-height:360px}.play-mark{background:#f2cb58;color:var(--green);border:0;box-shadow:0 0 0 10px #f2cb5817}.sponsor-home{border:0;margin-top:35px}.sponsor-strip{border-bottom:1px solid #d8ddcd;margin-bottom:20px}.sponsor-strip>span{opacity:.85}.quote-pending{background:#f5e6d9;width:100%;padding:65px 5.5%;position:relative}.quote-pending:before{content:'“';position:absolute;top:0;left:9%;font:180px Georgia;color:#e5c5b1;line-height:1.2}.quote-pending .eyebrow{color:var(--red)}.cta{margin-top:75px;border-radius:35px;background:radial-gradient(ellipse at top,#276b53,#083d32);border:6px solid #eadbb5;box-shadow:0 0 0 1px #cfc09b}.cta h2{font-size:clamp(40px,4.7vw,65px)}.cta:before{font-size:90px;left:7%}.cta:after{font-size:58px;right:7%}.pagehead{background:radial-gradient(ellipse at 50% 0%,#287254,#073d32);color:#fff5df;position:relative;overflow:hidden;border-bottom:7px solid var(--gold)}.pagehead:before{content:'✦';position:absolute;left:8%;top:70px;color:var(--gold);font-size:70px;rotate:-15deg}.pagehead:after{content:'✧';position:absolute;right:9%;bottom:40px;color:#d6ae5a;font-size:90px}.pagehead .eyebrow{color:var(--gold)}.pagehead p{color:#d6e5ce}.pagehead h1{font-size:clamp(45px,5.8vw,78px)}.board{border:0;border-top:4px solid #e3b847;box-shadow:0 5px 18px #173c3109}.board:nth-child(3n+2){border-top-color:#cd4a3d}.board:nth-child(3n){border-top-color:#4d8561}.initials{background:var(--green);color:#f9e7b6}.sponsor-name{border:1px solid #e3ddcb;box-shadow:4px 5px 0 #eee7d5;transition:transform .2s}.sponsor-name:hover{transform:translateY(-5px)}.sponsor-name span{background:#f8edce;border-radius:50%;width:40px;height:40px}.event-card{box-shadow:7px 9px 0 #e9dfc6;border:1px solid #e1d5b8}.event-art{background:var(--green);color:var(--gold);border-radius:70px 12px 12px 12px}.event-art.red{background:var(--red);color:#ffdf8a}.wish-art{border-radius:100px 20px 20px 20px;background:radial-gradient(circle,#357a5e,#073d32)}.contact-options a{border-left:5px solid var(--gold)}.contact-options a:nth-child(2){background:#f7e2d9;border-color:var(--red)}.contact-options a:nth-child(3){background:#f5e9c7;border-color:#a58225}footer{border-top:0}.footer-bottom{border-top-color:#dfd3b7}
@media(min-width:1600px){.hero .gift-green{left:calc(50% - 630px)}.hero .gift-red{right:calc(50% - 630px)}.hero .gift-gold{right:calc(50% - 440px)}.holiday-stamp{left:calc(50% - 620px)}}
@media(max-width:1100px){.hero h1 .headline-main{font-size:8vw}.hero .gift-green{left:2%;top:470px;scale:.8}.hero .gift-red{right:1%;top:490px;scale:.85}.hero .gift-gold{right:18%;top:575px;scale:.8}.holiday-stamp{top:350px;left:3%;width:75px;height:75px}.holiday-stamp span{font-size:6px}.holiday-stamp span:last-child{font-size:4.5px}.ornament-one{right:5%}.ornament-two{right:13%}.hero .spark{display:block}.hero .s1{left:5%;top:130px;font-size:30px}.hero .s2{right:5%;top:330px;font-size:30px}.hero .gift-tag{left:20%;font-size:13px}.ways>a{padding:24px 17px}.ways h3{font-size:16px}}
@media(max-width:760px){header{height:90px}.logo img{width:116px;height:65px}.hero{min-height:0;padding:45px 5.5% 0}.hero:after{inset:15px 12px 30px;border-radius:170px 170px 15px 15px}.hero .eyebrow{font-size:7px;letter-spacing:1.8px;max-width:260px;margin:0 auto 23px}.hero h1 .headline-top{font-size:9vw;line-height:1.2}.hero h1 .headline-main{font-size:11.4vw;white-space:normal;line-height:1.05;padding-top:0}.hero h1 em:after{height:4px;bottom:-4px}.hero p{font-size:13px;margin-top:25px}.hero .gift-scene{height:180px;margin:10px 0 0;z-index:1}.hero .gift-green{width:110px;height:108px;top:40px;left:5%;scale:.9}.hero .gift-red{width:120px;height:112px;right:4%;top:30px;scale:.9}.hero .gift-gold{width:70px;height:75px;right:40%;top:80px;scale:.9}.hero .gift-tag{display:none}.hero .spark{display:none}.holiday-stamp{display:none}.ornament-one{top:50px;right:4%;width:22px;height:28px}.ornament-one:after{width:8px;left:7px;top:-5px;height:6px}.ornament-two{display:none}.hero-bottom{margin:0;padding:18px 0 35px;font-size:7px}.bridge-art{bottom:35px;height:130px;width:150%;left:-25%;opacity:.2}.joy-ribbon>div{font-size:11px;padding:12px 0;letter-spacing:1px}.joy-ribbon span{margin:0 25px;font-size:14px}.intro{padding-top:65px;padding-bottom:40px}.ways{gap:10px;padding:0 0 35px}.ways>a{padding:24px;border:0}.ways h3{font-size:20px}.gallery{gap:16px;padding:10px 4px}.photo-space{min-height:210px;border-width:7px;border-bottom-width:28px}.photo-space.big{min-height:250px}.photo-space:nth-child(2){margin-top:0;rotate:3deg}.photo-space:nth-child(3){margin-top:0;rotate:-3deg}.photo-icon{font-size:40px}.limo{padding:50px 5.5%;border-radius:35px 0 35px 0;margin-top:15px}.limo-panel{rotate:0deg;box-shadow:5px 6px 0 #d5d9bf}.video-section{padding-top:55px}.video-placeholder{min-height:280px;border-radius:70px 15px 15px 15px;box-shadow:7px 7px 0 #f2cf67}.quote-pending{padding:50px 7%}.quote-pending:before{font-size:90px;left:3%;top:0;opacity:.7}.quote-pending h2{font-size:34px}.cta{padding:50px 18px;margin-top:50px;border-width:4px;border-radius:22px}.cta:before{font-size:30px;left:12px}.cta:after{font-size:25px;right:12px}.pagehead:before{font-size:25px;top:20px;left:5%}.pagehead:after{font-size:35px;right:4%;bottom:15px}.pagehead h1{font-size:43px}.pagehead .eyebrow{font-size:8px;letter-spacing:1.5px}.wish-art{border-radius:65px 15px 15px 15px}.sponsor-name h2{font-size:17px}.event-card{box-shadow:4px 5px 0 #e9dfc6}}
@media(prefers-reduced-motion:reduce){.joy-ribbon>div,.ornament{animation:none!important}}
html,body{overflow-x:clip}
/* Winter palette: bright whites, frosted blues and restrained seasonal texture. */
:root{--cream:#ffffff;--line:#dce9e7;--muted:#536e68}
body{background-color:#f7fcfd;background-image:radial-gradient(ellipse at 0% 35%,#dceff46b,transparent 50%),radial-gradient(ellipse at 100% 75%,#e0f2ef66,transparent 50%)}
header{background:#fff;border-bottom:1px solid #e3efed}.logo img{mix-blend-mode:normal}
.intro{isolation:isolate}.intro:before{content:'';position:absolute;inset:15px -15% 0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#e0f2f6 0%,#edf8fa88 35%,transparent 70%);border-radius:50%}.intro:after{content:'✧';position:absolute;right:4%;top:38%;font-size:42px;color:#94c1c5;rotate:13deg;z-index:-1}
.ways>a{background:#dfeee9;border:1px solid #c9e1d8}.ways>a:nth-child(2){background:#fce5e6;border-color:#f3cdd0}.ways>a:nth-child(3){background:#e0f0f8;border-color:#cce4ed}
.gallery{position:relative;isolation:isolate}.gallery:before{content:'';position:absolute;inset:0 -3% -25px;z-index:-1;background:radial-gradient(ellipse at 50% 60%,#dceff3aa,transparent 70%);border-radius:50%}.photo-space.big{background:radial-gradient(circle at 50% 40%,#e4f4ed,#add4c7)}.photo-space.pink{background:radial-gradient(circle at 50% 40%,#ffeef0,#eebfc8)}.photo-space.yellow{background:radial-gradient(circle at 50% 40%,#f2fbff,#b8dbe9)}
.limo{background-color:#e5f2f6;background-image:radial-gradient(#b2ced644 1px,transparent 1px),linear-gradient(130deg,#edf8fc,#def0ec);background-size:22px 22px,100% 100%}.limo-panel{background:#fff;border-color:#bfd9de;box-shadow:9px 10px 0 #c7e1e6}.road{border-color:#9abfc4}.limo-panel a{border-color:#bed5d7}
.sponsor-home{background:#fff;border:1px solid #e0eceb;border-radius:24px;padding:65px 35px;box-shadow:0 14px 50px #16453b04}.sponsor-strip{border-color:#dce9e7}.quote-pending{background:#e1f0ec;background-image:radial-gradient(ellipse at 10% 90%,#c3e2da88,transparent 45%),radial-gradient(ellipse at 90% 0%,#d2eaf0,transparent 45%);border-top:1px solid #d4e7e1;border-bottom:1px solid #d4e7e1;margin-top:60px}.quote-pending:before{color:#a8cfc1}.cta{border-color:#d4e7df;box-shadow:0 0 0 1px #b7d1c3,0 18px 45px #123e3410}
.board{background:#fff}.sponsor-name{background:#fff;border-color:#d5e5e8;box-shadow:4px 5px 0 #deedf1}.sponsor-name span{background:#e7f2f3;color:#507f72}.event-card{background:#fff;border-color:#d1e1e5;box-shadow:7px 9px 0 #deedf1}.contact-options a{background:#e1f0e9}.contact-options a:nth-child(2){background:#fbe6e8}.contact-options a:nth-child(3){background:#e1f1f8;border-color:#76a8b9}footer{background:#fff;max-width:none;border-top:1px solid #e1ecea}.footer-bottom{border-color:#dce9e7}
@media(max-width:760px){.intro:after{right:0;font-size:26px;top:25%}.intro:before{inset:0 -5%}.limo-panel{box-shadow:5px 6px 0 #c7e1e6}.sponsor-home{padding:45px 20px}.quote-pending{margin-top:40px}.event-card{box-shadow:4px 5px 0 #deedf1}}
/* Carry the approved hero atmosphere through the complete experience. */
body{background:#072f29;background-image:none}
main{color:#fff5df}main p{color:#cfddd1}main .muted{color:#b3cbc0}main .eyebrow{color:#edcf84}main .section-title .eyebrow{color:#edcf84}main .text{color:#f1d58f;border-color:#bba66666}main .small{color:#c6d9cb}
main>.section:not(.hero):not(.cta){position:relative;isolation:isolate}
.intro{max-width:none;width:100%;padding:90px max(7%,calc((100% - 850px)/2));background:radial-gradient(ellipse at 50% 35%,#216653 0%,#0b4035 48%,#072f29 100%);overflow:hidden}.intro:before{inset:22px 8%;border:1px solid #dcc68222;border-radius:50%;background:repeating-radial-gradient(ellipse at center,transparent 0 50px,#dbc5760b 51px 52px,transparent 53px 100px);z-index:-1}.intro:after{color:#e8c66e55;right:12%;top:28%;font-size:60px}.intro .eyebrow{color:#edcf84}.intro h2 em{color:#f2cf68}.intro p{color:#d4e3d7}.intro>.primary{background:#dc433f;color:white}
.ways{gap:20px;padding-top:15px;padding-bottom:65px}.ways>a,.ways>a:nth-child(2),.ways>a:nth-child(3){color:#fff1dc;border:1px solid #d5bd762c;background:linear-gradient(135deg,#245c4c,#123e34);box-shadow:0 12px 25px #0001}.ways>a:nth-child(2){background:linear-gradient(135deg,#973d3e,#682b30)}.ways>a:nth-child(3){background:linear-gradient(135deg,#22565a,#103b40)}.ways p{color:#d1ded2}.ways .way-icon{color:#f5d079}
.section:has(>.gallery){width:100%;padding:75px max(5.5%,calc((100% - 1190px)/2)) 95px;background-color:#103f40;background-image:radial-gradient(ellipse at 0% 0%,#2a686b99,transparent 55%),radial-gradient(#e3d29b1c 1px,transparent 1px);background-size:auto,32px 32px;overflow:hidden}.section:has(>.gallery):before{content:'';position:absolute;width:600px;height:600px;right:-300px;top:-260px;border:1px solid #ddc57833;border-radius:50%;box-shadow:0 0 0 40px #ddc57808,0 0 0 80px #ddc57806;z-index:-1}.gallery:before{background:none}.photo-space{color:#153e34;box-shadow:0 20px 35px #0003;border-color:#f5f8ef}.photo-space:after{background:#e9bb5d99}.photo-space>span:last-child{color:#36574b}
.limo{margin:0;border-radius:0;width:100%;padding:85px max(5.5%,calc((100% - 1190px)/2));background-color:#6f2930;background-image:radial-gradient(ellipse at 20% 35%,#aa4340 0%,transparent 70%),repeating-linear-gradient(135deg,transparent 0 26px,#ffdd9b07 27px 28px,transparent 29px 56px)}.limo .eyebrow{color:#f3d993}.limo-panel{color:#fff5de;background:linear-gradient(135deg,#173f37,#092d28);border:1px solid #dfbf6755;box-shadow:10px 12px 0 #421b244d}.limo-panel p{color:#d7e4d6}.limo-panel a{color:#f5d382;border-color:#dbbd6d66}.road{border-color:#b9a66c66}.limo-car{background:#d0af58}.limo-car i{background:#173f37}.road:after{color:#f1cc79}
.video-section{width:100%;padding:90px max(5.5%,calc((100% - 1190px)/2));background:radial-gradient(ellipse at 80% 50%,#245e49,#0b3a30 58%,#072f29);overflow:hidden}.video-section:before{content:'✧';position:absolute;right:6%;top:18px;font:110px Georgia;color:#d6be7155;z-index:-1}.video-placeholder{border:1px solid #edcf7766;box-shadow:12px 12px 0 #bd974c;background:radial-gradient(circle at 50% 0%,#3e8665,#0a3c30 80%)}.video-placeholder small{color:#cfddc8}
.sponsor-home{width:100%;margin:0;border:0;border-radius:0;padding:85px max(5.5%,calc((100% - 1190px)/2));background:radial-gradient(ellipse at 50% 10%,#1c5f4b,#082f28 70%);box-shadow:none;overflow:hidden}.sponsor-home:before{content:'';position:absolute;inset:24px;border:1px solid #dfc77b25;border-radius:180px 180px 20px 20px;z-index:-1;pointer-events:none}.sponsor-strip{grid-template-columns:repeat(3,1fr);gap:0;padding:35px 0 10px;border:0}.sponsor-strip>span{display:flex;align-items:center;justify-content:center;min-height:95px;padding:22px 18px;font-size:18px;color:#f4ebd5;opacity:1;border-bottom:1px solid #d7c38926;border-right:1px solid #d7c38926}.sponsor-strip>span:nth-child(3n){border-right:0}.sponsor-strip>span:nth-last-child(-n+3){border-bottom:0}
.quote-pending{margin:0;border:0;padding:80px 7%;background:radial-gradient(ellipse at center,#26634d,#0b4035 70%)}.quote-pending .eyebrow{color:#edcf84}.quote-pending:before{color:#bfa35e44}.cta{border-color:#cdb47466;margin-top:55px;margin-bottom:55px;background:radial-gradient(ellipse at top,#307354,#093d30);box-shadow:0 0 0 1px #d3bb6b33,0 15px 45px #0003}
.story{background:radial-gradient(ellipse at left,#1d5b48,transparent 70%)}.board-grid{gap:22px}.board{background:linear-gradient(145deg,#205445,#103e34);border-left:1px solid #bca35c33;border-right:1px solid #bca35c33;border-bottom:1px solid #bca35c33;box-shadow:0 10px 25px #0002}.board p{color:#cfddce}.initials{background:#d7b863;color:#153b2e}.section:has(>.board-grid){width:100%;padding:80px max(5.5%,calc((100% - 1190px)/2));background-image:radial-gradient(#d7c48511 1px,transparent 1px);background-size:28px 28px}
.sponsor-name{color:#fff1d4;background:linear-gradient(135deg,#245d49,#103e33);border-color:#d2bc7944;box-shadow:4px 5px 0 #0002}.sponsor-name span{background:#d8bd6a;color:#123d30}.event-card{background:linear-gradient(145deg,#205748,#10392f);border-color:#cdb16b55;box-shadow:7px 9px 0 #0002}.event-card p{color:#cfdfd2}.event-art{background:#0b3029;border:1px solid #d0b36d33}.tabs button{color:#e9e8cc;border-color:#c6bd8b55}.tabs button.active{background:#edcb75;color:#153c30;border-color:#edcb75}.wish-feature .primary{background:#e14742}.wish-art{box-shadow:10px 10px 0 #c1a15e44;border:1px solid #cbb76e55}.contact-options a{background:linear-gradient(130deg,#275e4b,#123c31)}.contact-options a:nth-child(2){background:linear-gradient(130deg,#963e3f,#632c30)}.contact-options a:nth-child(3){background:linear-gradient(130deg,#245a5d,#113c40)}.contact-options span{color:#d5e1d1}.contact-layout .primary{background:#d93f3b}
footer{background:#05251f;color:#f2e8c8;border-color:#c6ad6b33}.footer-main>p{color:#c1d3c6}.footer-main .logo{background:white;padding:10px;border-radius:12px;width:173px}.footer-bottom{color:#a6c0b1;border-color:#d3bd702b}.footer-main a:hover{color:#e0bd65}header{color:#163f35}
@media(max-width:760px){.intro{padding:65px 6%}.intro:before{inset:15px -25%;border-radius:50%}.intro:after{right:3%;font-size:30px;top:25%}.ways{padding-top:10px;padding-bottom:40px;gap:12px}.section:has(>.gallery){padding:50px 5.5% 60px}.limo{padding:55px 5.5%}.limo-panel{box-shadow:5px 6px 0 #421b244d}.video-section{padding:55px 5.5%}.video-section:before{font-size:50px;right:3%;top:10px}.sponsor-home{padding:60px 6%}.sponsor-home:before{inset:12px;border-radius:100px 100px 15px 15px}.sponsor-strip{grid-template-columns:1fr 1fr;padding-top:25px}.sponsor-strip>span{font-size:14px;min-height:95px;padding:20px 12px}.sponsor-strip>span:nth-child(3n){border-right:1px solid #d7c38926}.sponsor-strip>span:nth-child(2n){border-right:0}.sponsor-strip>span:nth-last-child(-n+3){border-bottom:1px solid #d7c38926}.sponsor-strip>span:nth-last-child(-n+2){border-bottom:0}.quote-pending{padding:55px 7%}.section:has(>.board-grid){padding:55px 5.5%}.board-grid{gap:12px}.footer-main .logo{width:135px;padding:8px}.footer-main .logo img{width:116px}.event-card{box-shadow:4px 5px 0 #0002}}
/* Santa-inspired balance: snowy white space between festive feature sections. */
body{background:#fff}main{color:#163f35}main p{color:#536e68}main .muted,main .small{color:#637b74}main .eyebrow,main .section-title .eyebrow{color:#ba343c}main .text{color:#174c3b;border-color:#aac7bb}
.hero{color:#fff5df}.hero p{color:#dfebd9}.hero .eyebrow{color:#f6dfa1}
.intro{background:radial-gradient(ellipse at 50% 40%,#fff 20%,#f0f8fa 100%);color:#173f35;overflow:visible}.intro:before{inset:25px 5%;border:0;border-radius:0;background:radial-gradient(#90bac51c 1.5px,transparent 1.5px);background-size:33px 33px;mask-image:radial-gradient(ellipse,transparent 35%,black 100%)}.intro:after{color:#9bbfc9;right:12%;font-size:45px}.intro p{color:#536e68}.intro .eyebrow{color:#ba343c}.intro h2 em{color:#d73f42;position:relative;display:inline-block}.intro h2 em:before{content:'';position:absolute;right:-14px;top:-27px;width:44px;height:34px;background:linear-gradient(135deg,#f05c57,#c52d36);border-radius:80% 15% 0 0;rotate:17deg;border-bottom:10px solid white;box-shadow:0 2px 2px #bdd4d555}.intro h2 em:after{content:'';position:absolute;right:-20px;top:-24px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 2px 3px #bdd4d588}
.ways{background:#fff}.ways>a,.ways>a:nth-child(2),.ways>a:nth-child(3){background:#fff;color:#163f35;border:1px solid #dce7e4;box-shadow:0 8px 25px #153f3406}.ways>a:nth-child(2){background:#fff0f0;border-color:#f5d6d7}.ways>a:nth-child(3){background:#f0f8fb;border-color:#d9e9ee}.ways p{color:#60756d}.ways .way-icon{color:#d43d43}
.section:has(>.gallery){background-color:#f5fafc;background-image:radial-gradient(ellipse at 0% 0%,#e1f0f5,transparent 65%),radial-gradient(#99b9c324 1px,transparent 1px);background-size:auto,28px 28px;color:#173f35;border-top:1px solid #e1eced}.section:has(>.gallery):before{border-color:#b6d1d74d;box-shadow:0 0 0 40px #bcdbe713,0 0 0 80px #bcdbe70b}.photo-space{box-shadow:0 14px 25px #173f3415}.photo-space:after{background:repeating-linear-gradient(45deg,#e8494988 0 7px,#fff9 7px 14px)}
.limo{color:#fff5df;background-color:#9b2736;background-image:radial-gradient(ellipse at 20% 35%,#c84748,transparent 70%),repeating-linear-gradient(135deg,transparent 0 26px,#ffdd9b07 27px 28px,transparent 29px 56px);border-bottom:8px solid transparent;border-image:repeating-linear-gradient(45deg,#d84246 0 12px,#fff 12px 24px) 8}.limo p{color:#f5dede}.limo .eyebrow{color:#ffdda1}.limo .text{color:#ffe6a6;border-color:#e6bb8066}.limo-panel{background:#fff;color:#243f35;border-color:#f6dada;box-shadow:9px 10px 0 #6c192744}.limo-panel p{color:#63756c}.limo-panel a{color:#a52e39;border-color:#e4b7bd}.road{border-color:#d4bbb8}.limo-car{background:#ce3d44}.limo-car i{background:#e4f4f3}.road:after{color:#c63943}
.video-section{background:#fff;color:#173f35}.video-section:before{color:#dc494355}.video-placeholder{color:#fff5df;background:radial-gradient(circle at 50% 0%,#386d58,#0b3c31);box-shadow:12px 12px 0 #efc362}.video-placeholder small{color:#cfddc8}.video-section p{color:#60746b}
.sponsor-home{background:#fff;color:#173f35;border-top:1px solid #e6eded}.sponsor-home:before{border-color:#da434332;border-radius:28px;inset:25px}.sponsor-home:after{content:'';position:absolute;left:calc(50% - 36px);top:19px;width:72px;height:12px;background:repeating-linear-gradient(45deg,#d74748 0 9px,#fff 9px 18px);border-radius:2px}.sponsor-strip>span{color:#264c3f;border-color:#dce7e2}.sponsor-strip>span:nth-child(3n){border-right:0}.quote-pending{color:#173f35;background:radial-gradient(ellipse at 10% 90%,#f5dddf66,transparent 55%),#fff4f4;border-top:1px solid #f4dfe0;border-bottom:1px solid #f4dfe0}.quote-pending .eyebrow{color:#b9313d}.quote-pending:before{color:#d9848c55}.quote-pending p{color:#775d60}
.cta{color:#fff8e9;background:radial-gradient(ellipse at 50% 0%,#de5050,#a52b3a 75%);border:4px solid white;box-shadow:0 0 0 1px #ebc6ca,0 18px 40px #9b273617;overflow:hidden;padding-bottom:95px}.cta p{color:#ffe7e2}.cta .eyebrow{color:#ffe2a1}.cta .actions{position:relative;z-index:2}.cta:before{content:'';left:0;top:auto;bottom:20px;right:0;height:22px;background:#412e31;rotate:0deg}.cta:after{content:'';left:calc(50% - 24px);right:auto;top:auto;bottom:13px;width:48px;height:36px;border:6px solid #f3cf69;border-radius:4px;background:#412e31;rotate:0deg}
.story{background:#fff}.board{color:#173f35;background:#fff;border-left:1px solid #e0e8e3;border-right:1px solid #e0e8e3;border-bottom:1px solid #e0e8e3;box-shadow:0 7px 25px #123f3508}.board p{color:#62766d}.initials{background:#e5f0e9;color:#174633}.section:has(>.board-grid){background-color:#f5fafb;background-image:radial-gradient(#84aab41c 1px,transparent 1px)}.sponsor-name{color:#173f35;background:#fff;border-color:#e7dbdd;box-shadow:4px 5px 0 #f8ecee}.sponsor-name span{background:#fce9e9;color:#bf3c45}.event-card{color:#173f35;background:#fff;border-color:#e6dcdb;box-shadow:7px 9px 0 #f5e9ea}.event-card p{color:#60766a}.tabs button{color:#174633;border-color:#cddfd6}.tabs button.active{background:#be3440;color:white;border-color:#be3440}.contact-options a{color:#173f35;background:#edf5f0}.contact-options a:nth-child(2){background:#fff0f0}.contact-options a:nth-child(3){background:#edf7fa}.contact-options span{color:#60766a}.wish-feature p{color:#536e68}.pagehead{color:#fff5df}.pagehead p{color:#d6e5ce}.pagehead .eyebrow{color:#f1d488}
@media(max-width:760px){.intro:after{right:3%;font-size:28px}.intro h2 em:before{width:30px;height:25px;top:-20px;right:-7px;border-bottom-width:7px}.intro h2 em:after{width:11px;height:11px;top:-19px;right:-13px}.sponsor-home:before{inset:12px;border-radius:18px}.sponsor-home:after{top:6px}.sponsor-strip>span:nth-child(3n){border-right:1px solid #dce7e2}.sponsor-strip>span:nth-child(2n){border-right:0}.sponsor-strip>span:nth-last-child(-n+3){border-bottom:1px solid #dce7e2}.sponsor-strip>span:nth-last-child(-n+2){border-bottom:0}.cta{padding-bottom:90px}.limo-panel{box-shadow:5px 6px 0 #6c192744}.event-card{box-shadow:4px 5px 0 #f5e9ea}}
.intro h2 em:before{right:-48px;top:0}.intro h2 em:after{right:-54px;top:3px}@media(max-width:760px){.intro h2 em:before{right:-28px;top:3px}.intro h2 em:after{right:-34px;top:4px}}
/* Light snow and a calm winter setting for the limo schedule. */
.limo{color:#173f35;background:#edf7fa;background-image:linear-gradient(145deg,#f8fcfd 0%,#e3f1f6 100%);border:0;border-image:none;overflow:hidden}.limo:before{content:'';position:absolute;left:-5%;right:-5%;bottom:-90px;height:150px;background:#fff;border-radius:50% 50% 0 0;z-index:-1}.limo .eyebrow{color:#bd3b42}.limo p{color:#526e68}.limo .text{color:#174c3b;border-color:#aac7bb}.limo-panel{background:#fff;border:1px solid #cfe3e8;box-shadow:9px 10px 0 #cfe4eb99}.limo-panel p{color:#63756c}.limo-panel a{color:#a52e39}.road{border-color:#b4cbd1}.road:after{color:#d3ac52}.hero,.pagehead{isolation:isolate}.snowfall{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;border-radius:inherit}.snowflake{position:absolute;top:-12px;left:var(--snow-left);width:var(--snow-size);height:var(--snow-size);border-radius:50%;background:white;opacity:0;animation:snowfall var(--snow-duration) linear var(--snow-delay) infinite;will-change:transform}.limo>.snowfall{z-index:-1}.limo .snowflake{background:#9bbfcd}.pagehead>.snowfall{z-index:-1}@keyframes snowfall{0%{transform:translate3d(0,-15px,0);opacity:0}8%{opacity:var(--snow-opacity)}88%{opacity:var(--snow-opacity)}100%{transform:translate3d(var(--snow-drift),850px,0);opacity:0}}
.hero .spark{animation:star-glow 5s ease-in-out infinite}.hero .s2{animation-delay:-2.5s}@keyframes star-glow{0%,100%{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}.play-mark{animation:soft-halo 5s ease-in-out infinite}@keyframes soft-halo{0%,100%{box-shadow:0 0 0 8px #f2cb5812}50%{box-shadow:0 0 0 18px #f2cb5805}}.limo-car{animation-duration:7s}.board,.sponsor-name,.event-card{transition:transform .25s,box-shadow .25s}.board:hover,.event-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #173f3412}
@media(max-width:760px){.limo-panel{box-shadow:5px 6px 0 #cfe4eb99}.snowflake:nth-child(n+13){display:none}}@media(prefers-reduced-motion:reduce){.snowfall{display:none}.spark,.play-mark{animation:none!important}}
/* North Pole friends and soft piled snow, with space around the content. */
.hero{padding-bottom:30px}.fluffy-snow{position:absolute;bottom:-2px;left:-2%;width:104%;height:48px;z-index:4;pointer-events:none;background:radial-gradient(ellipse 110px 42px at 6% 100%,#fff 98%,transparent),radial-gradient(ellipse 160px 35px at 22% 100%,#fff 98%,transparent),radial-gradient(ellipse 190px 44px at 44% 115%,#fff 98%,transparent),radial-gradient(ellipse 170px 38px at 69% 100%,#fff 98%,transparent),radial-gradient(ellipse 180px 45px at 92% 100%,#fff 98%,transparent);filter:drop-shadow(0 -5px 7px #cce5ef55)}.hero-bottom{padding-bottom:40px}.joy-ribbon{margin-top:0}
.intro.workshop{display:grid;grid-template-columns:1fr 1.05fr;gap:35px;align-items:center;text-align:left;padding:85px max(5.5%,calc((100% - 1190px)/2));background:radial-gradient(ellipse at 80% 60%,#e0f1f8 0%,transparent 55%),linear-gradient(#fff,#f8fcfd);overflow:hidden}.workshop:before{inset:0;background-size:35px 35px;mask-image:linear-gradient(to right,transparent,black)}.workshop:after{display:none}.workshop-copy{position:relative;z-index:2}.workshop h2{font-size:clamp(37px,4vw,56px);line-height:1.15}.workshop p{margin:25px 0 10px;max-width:530px}.workshop h2 em:before,.workshop h2 em:after{display:none}.north-scene{position:relative;padding:35px 0 10px;min-width:0;text-align:center;isolation:isolate}.north-scene img{width:115%;max-width:none;height:auto;display:block;position:relative;left:-7%;animation:friends-bob 8s ease-in-out infinite;filter:drop-shadow(0 15px 14px #4e758e13)}.north-sign{display:inline-block;padding:10px 22px;color:#fff8e5;font-size:15px;font-weight:700;background:#b83340;border:3px solid #fff;outline:1px solid #edced1;border-radius:8px;box-shadow:4px 5px 0 #e9ccd14d;rotate:4deg;position:relative;z-index:2}.north-sign:before{content:'✦';color:#f2cf68;margin-right:10px}.north-caption{display:block;font-family:Georgia,serif;font-style:italic;font-size:16px;color:#56766e;margin-top:5px}@keyframes friends-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
.limo{padding-top:105px;padding-bottom:100px}.limo:before{height:120px;bottom:-65px;left:-3%;right:-3%;border-radius:50% 50% 0 0;box-shadow:0 -12px 22px #fff8}.limo:after{content:'';position:absolute;left:0;right:0;bottom:0;height:38px;background:radial-gradient(ellipse 180px 40px at 10% 100%,white 98%,transparent),radial-gradient(ellipse 200px 40px at 40% 100%,white 98%,transparent),radial-gradient(ellipse 200px 50px at 70% 100%,white 98%,transparent),radial-gradient(ellipse 150px 40px at 98% 100%,white 98%,transparent);pointer-events:none}.limo-panel{position:relative;border-radius:24px;padding-top:60px;border:2px solid white;box-shadow:0 18px 40px #99b8c22b,7px 7px 0 #d9eaf0}.limo-panel:before{content:'';position:absolute;left:-6px;right:-6px;top:-8px;height:23px;border-radius:60% 35% 50% 30%;background:#fff;box-shadow:0 4px 6px #c5dce344}.workshop-plaque{position:absolute;left:50%;top:-39px;transform:translateX(-50%) rotate(-3deg);min-width:220px;padding:13px 24px;text-align:center;background:#b73340;border:4px solid #fff;border-radius:9px;color:#fff5df;box-shadow:3px 5px 0 #a1bec344;font-family:Georgia,serif;font-size:23px;line-height:1.15;z-index:2}.workshop-plaque small{display:block;font-family:'DM Sans',sans-serif;color:#ffe2bd;font-size:8px;letter-spacing:1.4px;margin-top:7px}.section:has(>.gallery){border-top:0;background-color:#edf7fa}.section:has(>.gallery):after{content:'';position:absolute;top:-1px;left:0;right:0;height:25px;pointer-events:none;background:radial-gradient(ellipse 90px 27px at 5% 0%,#fff 98%,transparent),radial-gradient(ellipse 180px 22px at 30% 0%,#fff 98%,transparent),radial-gradient(ellipse 200px 26px at 62% 0%,#fff 98%,transparent),radial-gradient(ellipse 160px 23px at 92% 0%,#fff 98%,transparent)}.pagehead{border-bottom:0;padding-bottom:85px}.pagehead:after{content:'';left:-2%;right:-2%;bottom:-3px;width:104%;height:33px;background:radial-gradient(ellipse 170px 32px at 8% 100%,#fff 98%,transparent),radial-gradient(ellipse 220px 30px at 35% 100%,#fff 98%,transparent),radial-gradient(ellipse 240px 30px at 67% 100%,#fff 98%,transparent),radial-gradient(ellipse 170px 34px at 95% 100%,#fff 98%,transparent);font-size:0}
@media(max-width:760px){.intro.workshop{grid-template-columns:1fr;padding:55px 6% 45px;gap:10px;text-align:center}.workshop h2{font-size:39px}.workshop p{margin:20px auto 10px}.north-scene{padding-top:20px;max-width:460px;margin:auto}.north-scene img{width:108%;left:-4%}.north-sign{font-size:13px;padding:8px 18px}.north-caption{font-size:14px}.hero{padding-bottom:18px}.hero-bottom{padding-bottom:35px}.fluffy-snow{height:30px}.limo{padding:55px 5.5% 80px;gap:70px}.limo-panel{padding-top:45px}.workshop-plaque{font-size:21px;min-width:210px}.pagehead{padding-bottom:65px}}
@media(prefers-reduced-motion:reduce){.north-scene img{animation:none!important}}
/* Welcoming North Pole friends in the approved centered hero. */
.hero-friends{position:absolute;width:390px;right:2.5%;bottom:68px;z-index:2;pointer-events:none;animation:friends-bob 8s ease-in-out infinite}.hero-friends img{display:block;width:100%;height:auto;filter:drop-shadow(0 12px 20px #001e2620)}.hero .gift-red,.hero .gift-gold{display:none}.hero .gift-green{top:auto;bottom:165px;width:140px;height:140px;left:7%}.hero .gift-tag{top:auto;bottom:120px;left:10%;font-size:15px}.hero .s2{top:410px;right:9%}.hero-bottom{z-index:3}.hero-friends:after{content:'';position:absolute;bottom:8px;left:10%;width:80%;height:20px;border-radius:50%;background:#effaff14;filter:blur(10px);z-index:-1}
@media(min-width:1500px){.hero-friends{right:calc(50% - 660px);width:420px}.hero .gift-green{left:calc(50% - 580px)}.hero .gift-tag{left:calc(50% - 570px)}}
@media(min-width:761px) and (max-width:1100px){.hero-friends{width:310px;right:1%;bottom:68px}.hero .gift-green{left:2%;bottom:160px;scale:.8}.hero .gift-tag{left:5%;bottom:125px}}
@media(max-width:760px){.hero>.gift-scene{display:none}.hero-friends{position:relative;right:auto;bottom:auto;width:min(330px,88%);margin:18px auto 0;animation-duration:8s}.hero-friends img{width:100%}.hero-bottom{margin-top:0}.hero .s2{display:none}.hero-note{margin-top:16px}.bridge-art{bottom:40px;opacity:.15}.hero .holiday-stamp{display:none}}
@media(prefers-reduced-motion:reduce){.hero-friends{animation:none!important}}
/* Compact hero with a raised snow edge and no decorative captions. */
.hero{min-height:650px;padding-top:40px;padding-bottom:110px}.hero .eyebrow{margin-bottom:18px}.hero h1 .headline-top{font-size:clamp(40px,5.2vw,70px)}.hero h1 .headline-main{font-size:clamp(59px,7.1vw,100px)}.hero p{margin-top:25px}.hero .actions{margin-top:24px}.hero:after{inset:22px 28px 28px}.hero-friends{width:300px;right:2.5%;bottom:20px}.hero .gift-green{width:115px;height:115px;left:6%;bottom:90px}.hero .s1{top:145px;font-size:42px}.hero .s2{top:370px;right:8%;font-size:30px}.hero .fluffy-snow{height:65px;background:radial-gradient(ellipse 160px 58px at 5% 100%,#fff 98%,transparent),radial-gradient(ellipse 240px 45px at 23% 115%,#fff 98%,transparent),radial-gradient(ellipse 250px 52px at 48% 115%,#fff 98%,transparent),radial-gradient(ellipse 250px 55px at 73% 120%,#fff 98%,transparent),radial-gradient(ellipse 200px 60px at 96% 100%,#fff 98%,transparent);z-index:1}.hero-friends{z-index:2}.hero .ornament-one{top:75px}.hero .ornament-two{top:42px}
@media(min-width:1500px){.hero-friends{right:calc(50% - 630px);width:330px}.hero .gift-green{left:calc(50% - 565px)}}
@media(min-width:761px) and (max-width:1100px){.hero{min-height:640px}.hero-friends{width:245px;right:1%;bottom:20px}.hero .gift-green{left:2%;bottom:85px}.hero h1 .headline-main{font-size:8vw}}
@media(max-width:760px){.hero{min-height:0;padding:30px 5.5% 25px}.hero .eyebrow{margin-bottom:18px}.hero h1 .headline-top{font-size:9vw}.hero h1 .headline-main{font-size:11.4vw}.hero p{margin-top:22px}.hero .actions{margin-top:20px}.hero-friends{position:relative;width:min(240px,75%);right:auto;bottom:auto;margin:14px auto 0}.hero .fluffy-snow{height:45px}.hero:after{inset:12px 10px 20px}.hero .ornament-one{top:40px}.hero .s1,.hero .s2{display:none}}

/* Homepage community video, framed to fit the landscape Facebook video. */
.home-video{padding:24px;background:linear-gradient(145deg,#e5f4f6,#fff);border:1px solid #d6e8e7;border-radius:38px;box-shadow:8px 8px 0 #f2cf67;max-width:620px;width:100%;margin:auto;text-align:center}.facebook-player{width:100%;max-width:560px;aspect-ratio:16/9;margin:auto;background:#073d32;border-radius:20px;overflow:hidden}.facebook-player iframe{display:block;width:100%;height:100%;border:0}.video-fallback{display:inline-block;margin-top:18px;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:4px}.video-section{align-items:center}@media(max-width:760px){.home-video{padding:15px;border-radius:25px;max-width:360px}.video-section{gap:36px}}

/* Larger left-hand video with supporting copy on the right. */
.video-section{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:48px;align-items:center;width:min(1320px,92%)}.video-section>div:nth-child(2){text-align:left;padding-top:0;min-width:0}.video-section .home-video{max-width:none;width:100%;padding:14px}.facebook-player{max-width:none;width:100%}.video-section .home-video iframe{width:100%;height:100%}.video-section h2{font-size:clamp(32px,3.5vw,48px)}
@media(max-width:900px){.video-section{gap:28px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}}
@media(max-width:760px){.video-section{grid-template-columns:1fr;gap:30px;width:89%}.video-section .home-video{padding:8px;border-radius:24px}.facebook-player{border-radius:17px}.video-section h2{font-size:36px}}
/* Community photo album. */
.collection-note{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.collection-note .eyebrow{margin:0;color:var(--red)}.collection-note p{font-size:13px}.photo-grid{columns:3;column-gap:24px}.gallery-photo{position:relative;display:block;break-inside:avoid;width:100%;padding:8px;margin:0 0 24px;border:1px solid #dbe9e6;background:white;border-radius:22px;box-shadow:0 7px 22px #123e340a;overflow:hidden;transition:transform .2s,box-shadow .2s}.gallery-photo:hover{transform:translateY(-4px);box-shadow:0 12px 24px #123e3420}.gallery-photo img{display:block;width:100%;height:auto;border-radius:15px}.gallery-photo>span{position:absolute;right:18px;bottom:18px;display:grid;place-items:center;width:34px;height:34px;background:#fff;border-radius:50%;color:var(--green);font-size:20px}.photo-lightbox{border:0;padding:0;background:#062e27f5;color:white;width:100vw;height:100dvh;max-width:100vw;max-height:100dvh;margin:0}.photo-lightbox::backdrop{background:#062e27ed}.photo-lightbox[open]{display:flex;align-items:center;justify-content:center}.photo-lightbox figure{margin:60px 70px;text-align:center;max-width:1200px}.photo-lightbox figure img{display:block;max-width:100%;max-height:76dvh;object-fit:contain;margin:auto;border-radius:8px}.photo-lightbox figcaption{padding-top:16px;color:#fff;font-size:14px}.photo-lightbox button{position:absolute;border:1px solid #ffffff66;border-radius:50%;background:#ffffff15;color:#fff;width:45px;height:45px;font-size:30px;display:grid;place-items:center;line-height:1}.lightbox-close{top:18px;right:22px}.lightbox-prev{left:16px;top:48%}.lightbox-next{right:16px;top:48%}body.gallery-open{overflow:hidden}
@media(max-width:1050px) and (min-width:761px){nav{gap:12px}nav a{font-size:12px}.photo-grid{columns:2}}
@media(max-width:760px){.photo-grid{columns:2;column-gap:12px}.gallery-photo{padding:5px;margin-bottom:12px;border-radius:14px}.gallery-photo img{border-radius:10px}.collection-note{display:block}.collection-note p{margin-top:8px}.photo-lightbox figure{margin:60px 48px}.photo-lightbox button{width:34px;height:34px}.lightbox-prev{left:6px}.lightbox-next{right:6px}.photo-lightbox figcaption{font-size:12px}.gallery-photo>span{width:25px;height:25px;right:12px;bottom:12px;font-size:16px}}
@media(prefers-reduced-motion:reduce){.gallery-photo{transition:none}}

.limo-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:16px;margin:0 0 26px}.collection-note{justify-content:flex-end}

/* Hero characters stand on the existing snowbank. */
.hero-friends{animation:none;width:340px;right:2%;bottom:18px}.hero-friends img{filter:none}.hero-friends:after{display:none}
@media(min-width:1500px){.hero-friends{right:calc(50% - 630px);width:360px}}
@media(min-width:761px) and (max-width:1100px){.hero-friends{width:270px;right:1%;bottom:18px}}
@media(max-width:760px){.hero-friends{position:relative;right:auto;bottom:auto;width:min(290px,85%);margin:10px auto -12px}.hero .fluffy-snow{height:48px}}

/* Santa and his helpers meet the hero snowline. */
.hero-friends{bottom:28px;width:365px;right:1%}
@media(min-width:1500px){.hero-friends{right:calc(50% - 635px);width:385px}}
@media(min-width:761px) and (max-width:1100px){.hero-friends{width:285px;right:0;bottom:28px}}
@media(max-width:760px){.hero-friends{width:min(300px,87%);right:auto;bottom:auto;margin:10px auto -6px}}
/* Supported charities and community causes. */
.charity-intro{max-width:730px;text-align:center;margin:0 auto 48px}.charity-intro .eyebrow{color:var(--red)}.charity-intro p{margin-top:22px}.charity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.charity-card{position:relative;padding:30px 25px;border:1px solid #d9e8e6;border-radius:22px;background:#fff;box-shadow:0 6px 20px #123e3406;border-top:4px solid #bcded5}.charity-card:nth-child(3n+2){border-top-color:#edc969}.charity-card:nth-child(3n){border-top-color:#eaa29f}.charity-heart{display:block;color:#c9483a;font-size:27px;line-height:1;margin-bottom:20px}.charity-card h2{font-size:21px;line-height:1.35;letter-spacing:-.025em}.charity-card p{margin-top:14px;font-size:13px}nav{gap:20px}
@media(min-width:761px) and (max-width:1100px){nav{gap:10px}nav a{font-size:11px}header{gap:12px;padding-left:3%;padding-right:3%}.logo img{width:130px}.charity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.charity-grid{grid-template-columns:1fr;gap:14px}.charity-card{padding:23px}.charity-intro{margin-bottom:30px}nav{gap:20px}}
a.charity-card{display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}a.charity-card:hover{transform:translateY(-4px);box-shadow:0 12px 26px #123e3418}.charity-visit{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:700;color:var(--green);padding-top:24px;margin-top:auto}.charity-visit>span{font-size:20px}@media(prefers-reduced-motion:reduce){a.charity-card{transition:none}}
/* Town-by-town donation directory */
.location-directory{max-width:1200px}.directory-intro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:36px}.directory-intro h2{font-size:clamp(30px,4vw,46px);margin:12px 0}.directory-intro p{max-width:560px}.directory-intro .button{flex-shrink:0}.location-tools{background:#edf6f8;border:1px solid #d8e9eb;border-radius:22px;padding:28px;margin-bottom:32px}.location-tools label{display:block;font-weight:800;margin-bottom:10px;font-size:18px}.location-tools input{width:100%;padding:17px 20px;border:1px solid #8aa9a2;border-radius:12px;font:inherit;background:white;color:var(--ink)}.location-tools input:focus{outline:3px solid var(--gold);outline-offset:3px}.location-tools p{font-size:13px;margin:14px 0 0}.town-grid{columns:3;column-gap:24px}.town-card{break-inside:avoid;margin:0 0 24px;background:#fff;border:1px solid #dce7e1;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px #073d3209}.town-card h2{background:var(--green);color:white;margin:0;padding:20px 22px;font-size:21px;letter-spacing:-.02em;border-bottom:4px solid var(--gold)}.town-card:nth-child(3n+2) h2{border-bottom-color:var(--red)}.town-card ul{list-style:none;padding:10px 20px;margin:0}.location-entry{padding:14px 0;border-bottom:1px solid #e8efeb;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.location-entry:last-child{border-bottom:0}.location-entry small{display:block;width:fit-content;background:#fff0b9;color:#644b0b;border-radius:6px;padding:4px 8px;font-size:11px;font-weight:800;margin-top:8px}.location-empty{padding:30px;text-align:center;background:#edf6f8;border-radius:16px}.town-card[hidden],.location-entry[hidden],.location-empty[hidden]{display:none!important}@media(max-width:950px){.town-grid{columns:2}.directory-intro{align-items:flex-start;flex-direction:column}}@media(max-width:600px){.town-grid{columns:1}.location-tools{padding:20px}.directory-intro .button{white-space:normal}.town-card h2{font-size:20px}}

@media(min-width:761px){header nav{flex-wrap:wrap;justify-content:center;column-gap:16px;row-gap:10px}header nav a{white-space:nowrap}}

.home-moments .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.home-moments .filled-polaroid{display:block;min-height:0;border:10px solid #fff;background:#fff;overflow:visible}.home-moments .filled-polaroid:before{display:none}.home-moments .filled-polaroid img{display:block;width:100%;height:auto}.home-moments .filled-polaroid b{display:block;text-align:center;padding:19px 6px 10px;font-size:15px}.home-moments .filled-polaroid:after{top:-16px;z-index:1}@media(max-width:760px){.home-moments .gallery{grid-template-columns:1fr;gap:32px;max-width:420px;margin:auto}.home-moments .filled-polaroid{border-width:8px}.home-moments .filled-polaroid b{font-size:15px}}

/* Consistent sponsor artwork in the original sponsor order. */
.sponsor-strip,.sponsor-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.sponsor-logo-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;background:#fff;border:1px solid #dce7e2;border-radius:20px;padding:22px 18px;text-align:center;color:#123e34;text-decoration:none;box-shadow:0 5px 0 #e9f1eb;transition:transform .2s,box-shadow .2s}.sponsor-art{width:100%;height:150px;display:flex;align-items:center;justify-content:center}.sponsor-art img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.sponsor-label{font-size:13px;font-weight:700;line-height:1.4;margin-top:20px}.sponsor-wordmark{font-size:27px;font-weight:800;letter-spacing:-1px}.sponsor-logo-card[href]:hover{transform:translateY(-4px);box-shadow:0 9px 0 #f4d782}.sponsor-logo-card:focus-visible{outline:3px solid #c83135;outline-offset:5px}@media(max-width:760px){.sponsor-strip,.sponsor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.sponsor-logo-card{padding:18px 12px}.sponsor-art{height:110px}.sponsor-label{font-size:12px}}@media(max-width:420px){.sponsor-strip,.sponsor-grid{grid-template-columns:1fr}.sponsor-art{height:140px}}@media(prefers-reduced-motion:reduce){.sponsor-logo-card{transition:none}}

/* High-contrast homepage sponsor names. */
.sponsor-home .sponsor-label{color:#000;opacity:1}

/* Donation page: existing Wix form in the site's holiday palette. */
.donation-section{max-width:1000px;margin:auto;padding-top:64px;padding-bottom:72px}
.donation-heading{text-align:center;max-width:680px;margin:0 auto 32px}
.donation-heading h2{margin:14px 0}.donation-heading p{line-height:1.7}
.donation-form-card{background:#fff;border:1px solid #e6dab7;border-top:6px solid #b81f35;border-radius:24px;box-shadow:0 16px 50px #174d3820;overflow:hidden;padding:24px}
.donation-form{display:block;width:100%;height:780px;border:0;background:#fff}
.donation-form-help{text-align:center;font-size:14px;line-height:1.7;margin:22px 0 56px}.donation-form-help a{color:#145b41;text-decoration:underline;text-underline-offset:3px}
.donation-alternatives{text-align:center;background:#edf6f8;border-radius:24px;padding:40px 24px}.donation-alternatives h2{margin:16px 0 24px}.donation-alternatives .actions{justify-content:center;flex-wrap:wrap}
@media(max-width:600px){.donation-section{padding-top:40px}.donation-form-card{padding:8px;border-radius:16px}.donation-form{height:900px}.donation-alternatives{padding:32px 16px}}

/* Compact trustee business affiliations. */
.board .trustee-affiliation{font-size:12px;line-height:1.6;margin-top:10px;color:#334c42}
.trustee-affiliation a{color:#145b41;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#9cb7a8}
.trustee-affiliation a:hover{color:#b42336;text-decoration-color:currentColor}

/* Contact form shares the donation page's holiday framing. */
.contact-form-section{max-width:1000px;padding-top:64px;padding-bottom:24px}
.contact-form-intro{max-width:700px;text-align:center;margin:0 auto 32px}.contact-form-intro h2{margin:14px 0 20px}.contact-form-intro p{line-height:1.7}.contact-form-intro .contact-address{font-size:14px;margin-top:20px}
.contact-form-embed{display:block;width:100%;height:900px;border:0;background:#fff}#contact-form{scroll-margin-top:24px}
@media(max-width:600px){.contact-form-section{padding-top:40px}.contact-form-embed{height:1050px}}

.contact-email{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.contact-form-intro .contact-email{display:inline-block;margin-top:8px;color:#145b41}footer .contact-email{display:inline-block;margin-top:10px;font-size:12px}

/* Homepage voices from our trustees. */
.trustee-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1240px;margin:36px auto 0;text-align:left;position:relative}
.trustee-quote{margin:0;padding:28px;background:#fff;border:1px solid #eedcdd;border-top:4px solid #c9483a;border-radius:16px;display:flex;flex-direction:column;box-shadow:0 8px 24px #59363808}
.trustee-quote blockquote{margin:0;flex:1}
.quote-pending .trustee-quote p{margin:0;color:#334c42;font-size:16px;line-height:1.8}
.trustee-quote figcaption{margin-top:24px;padding-top:18px;border-top:1px solid #eee3e3;font-weight:700;color:#173f35;font-size:15px}
@media(max-width:900px){.trustee-quotes{grid-template-columns:1fr;max-width:680px}.trustee-quote{padding:24px}}
