
:root{color-scheme:dark;--ink:#fff2f0;--muted:#b8a6a8;--bg:#100609;--panel:#1b0b10;--panel2:#240d14;--line:#591521;--red:#cf263c;--red-dark:#4a0e19;--red-bright:#e04452;--gold:#e7bda5;--green:#d6a3a2;--display:'Baloo 2','Arial Rounded MT Bold',sans-serif;--numbers:'Nunito',Arial,sans-serif;--body:'Nunito',Arial,sans-serif;--glow:0 0 18px rgba(174,18,40,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}body{min-height:100vh;margin:0;background:var(--bg);color:var(--ink);font:400 12px/1.55 var(--body);overflow-x:hidden}body::before{content:"";position:fixed;inset:0;z-index:-3;background:radial-gradient(ellipse at 50% 32%,rgba(112,15,33,.25),transparent 58%),var(--bg)}.site-noise{position:fixed;inset:0;z-index:8;opacity:.045;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}#ambient-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.46}body>.site-noise{z-index:1}body>#main{z-index:2}.floating-controls{z-index:20}.welcome-gate{z-index:50}.skip-link{position:absolute;z-index:70;left:10px;top:-80px;padding:9px;background:var(--red-bright);color:#fff7f4}.skip-link:focus{top:10px}button,input,select,textarea{font:inherit}button{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}a{color:inherit}
.floating-controls{position:fixed;z-index:20;top:10px;right:12px;display:flex;align-items:center;gap:5px}.icon-button{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;border:1px solid #842334;background:linear-gradient(145deg,#671827,#27080f);color:var(--gold);font-size:17px;cursor:pointer;box-shadow:0 0 10px rgba(177,25,48,.3)}.music-button{background:#1b0b10;border-color:#7c2633;color:var(--gold);font-size:18px}.music-status{position:absolute;top:38px;right:0;width:min(260px,calc(100vw - 32px));padding:6px 8px;border:1px solid #56202a;border-radius:5px;background:rgba(18,5,9,.97);color:#f8e6e3;font:600 9px/1.4 var(--body);text-align:right;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}.music-status:not(:empty){opacity:1;visibility:visible}.music-status[data-state="error"]{border-color:#e04b55;color:#ffc9c6}.music-status[data-state="playing"]{border-color:#b33c49;color:#f5dad5}
.button{min-height:40px;border:0;border-radius:8px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font:800 11px/1 var(--body);letter-spacing:.4px;cursor:pointer;transition:transform .2s,filter .2s}.button:hover{filter:brightness(1.1);transform:translateY(-1px)}.button-primary{background:linear-gradient(100deg,#681422,#bb263a 58%,#55101d);color:#fff4ef;border:1px solid #d49c8e;box-shadow:0 0 13px rgba(173,26,46,.35)}.button-small{min-height:30px;padding:0 10px;border-radius:20px;font-size:8px}.invitation-shell{position:relative;width:min(100% - 28px,440px);margin:7px auto 35px;display:grid;gap:10px;z-index:1}.birthday-top-glow,.birthday-bottom-glow{height:9px;text-align:center;color:#d1848c;font:700 8px/1 var(--body);letter-spacing:7px;text-shadow:0 0 9px rgba(179,29,48,.7)}.birthday-bottom-glow{position:absolute;left:0;right:0;bottom:3px;height:7px}
.hero-card,.event-card,.gallery-card,.rsvp-card{position:relative;overflow:hidden;border:1px solid #5a1724;border-radius:16px;background:linear-gradient(150deg,rgba(31,11,17,.98),rgba(12,5,8,.99));box-shadow:0 8px 22px rgba(0,0,0,.4),inset 0 0 22px rgba(156,25,43,.08)}.hero-card{padding:14px 13px 17px;text-align:center}.hero-backdrop{position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,rgba(112,25,38,.2),transparent 57%),linear-gradient(90deg,rgba(13,4,7,.96),rgba(31,10,16,.88),rgba(13,4,7,.96))}.hero-card>*:not(.hero-backdrop){position:relative;z-index:1}.hero-recipient{display:flex;justify-content:center;align-items:center;gap:4px;width:max-content;max-width:100%;margin:0 auto 7px;padding:3px 9px;border:1px solid #77303a;border-radius:20px;background:linear-gradient(90deg,#2a0c13,#48131e,#2a0c13);color:#f4dcda;font:800 6px/1.2 var(--body);letter-spacing:.25px}.recipient-flag{color:#dc797e}.hero-recipient strong{color:#fff}.invitation-heading{margin:0 0 8px;color:#fff1ee;font:800 11px/1.35 var(--body);letter-spacing:.45px}.birthday-emblem{width:min(100%,242px);margin:0 auto 8px;padding:14px 9px 7px;position:relative;border:2px solid #862432;border-radius:24px;background:linear-gradient(145deg,#36131b,#19080d 48%,#45111b);box-shadow:0 0 18px rgba(187,30,48,.32),inset 0 1px 3px rgba(255,235,231,.11)}.emblem-ribbon{position:absolute;top:-8px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:3px 10px;border:1px solid #b87570;border-radius:12px;background:linear-gradient(90deg,#4b101b,#981d30);color:#f8e1dc;font:800 5px var(--body);letter-spacing:.4px}.nameplate{min-height:52px;padding:5px 4px;display:grid;place-items:center;border:2px solid #d53446;border-radius:13px;background:linear-gradient(180deg,#351019,#19070c 54%,#5b111f);box-shadow:inset 0 2px 3px rgba(255,255,255,.12),inset 0 -5px 9px rgba(0,0,0,.5),0 5px 8px rgba(0,0,0,.32);color:#fff0ee;font:900 clamp(18px,6vw,25px)/.95 var(--display);letter-spacing:.35px;text-shadow:0 2px 2px rgba(0,0,0,.8);text-transform:uppercase}.nameplate span{max-width:100%;overflow-wrap:anywhere}.age-ribbon{width:max-content;max-width:100%;margin:5px auto 0;padding:3px 9px;display:flex;align-items:center;gap:4px;border:1px solid #c28c76;border-radius:14px;background:linear-gradient(100deg,#671623,#a91e32);color:#fff0e7;font:900 10px var(--display);box-shadow:0 2px 7px rgba(85,37,81,.3)}.age-ribbon strong{font:900 21px/.9 var(--numbers);color:#fff;text-decoration:underline;text-decoration-color:#e7bda5;text-underline-offset:2px}
/* Small user-supplied car motif, cropped into a scalloped frame. */.hero-photo-frame{position:relative;width:min(100%,300px);height:190px;margin:0 auto 9px;padding:5px;border:2px solid #a52a3b;border-radius:0;background:linear-gradient(145deg,#5d1722,#240911 50%,#741b2a);box-shadow:0 0 14px rgba(181,34,50,.27);overflow:hidden;clip-path:polygon(50% 0%,62% 8%,77% 4%,82% 17%,96% 23%,91% 39%,100% 50%,91% 62%,96% 78%,81% 84%,77% 97%,61% 92%,50% 100%,38% 92%,22% 97%,18% 83%,4% 77%,9% 61%,0% 50%,9% 38%,4% 22%,19% 16%,23% 4%,39% 8%)}.hero-photo-frame img{display:block;width:100%;height:100%;object-fit:cover;border-radius:0;clip-path:inherit;background:linear-gradient(135deg,#45121d,#a54d5b 50%,#4c101c)}.photo-caption{position:absolute;left:50%;bottom:13px;transform:translateX(-50%);padding:3px 9px;border-radius:20px;background:rgba(19,4,8,.9);color:#fff2ef;font:700 6px var(--body);letter-spacing:.35px;white-space:nowrap}.welcome-message{max-width:330px;margin:0 auto 8px;padding:5px 8px;border:1px solid #61232e;border-radius:7px;background:#17080d;color:#f0dfe0;font:600 6px/1.5 var(--body)}.countdown-panel{width:min(100%,260px);margin:0 auto;padding:7px 9px 5px;border:1px solid #63212d;border-radius:13px;background:rgba(15,4,8,.94)}.countdown-panel h2{margin:0 0 5px;color:#e7bda5;font:800 5px var(--body);letter-spacing:.55px}.countdown-sparkle{font-size:8px}.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px}.count-unit{min-width:0;padding:4px 1px 3px;border:1px solid #57202b;border-radius:8px;background:linear-gradient(145deg,#251017,#100609)}.count-unit span{display:block;font:700 9px/1.2 var(--numbers);font-variant-numeric:tabular-nums}.count-days span{color:#eb6470}.count-hours span{color:#e7bda5}.count-minutes span{color:#d1848c}.count-seconds span{color:#c69091}.count-unit small{display:block;margin-top:2px;color:#c0abad;font:700 4px var(--body);letter-spacing:.5px}.countdown-note{min-height:7px;margin:4px 0 0;color:#c0abad;font:500 5px var(--body)}
.event-card{min-height:144px;padding:12px 14px 15px;text-align:center;border-color:#862435;border-radius:16px;background:linear-gradient(150deg,#6d1626 0%,#42101b 45%,#16070b 100%);box-shadow:0 5px 18px rgba(0,0,0,.37),0 0 12px rgba(178,24,43,.22)}.date-display{margin:1px auto 7px;display:flex;justify-content:center;align-items:center;gap:5px;color:#e7bda5;font:900 10px/1 var(--display);text-shadow:0 2px 3px rgba(0,0,0,.35)}.date-display strong{padding:3px 5px;border:1px solid #a85054;border-radius:8px;background:#1d090e;color:#fff;font:800 10px var(--numbers);text-shadow:none}.time-pill{width:max-content;max-width:100%;margin:0 auto 8px;padding:4px 10px;border:1px solid #70303a;border-radius:16px;background:#1d090e;color:#e7bda5;font:700 6px var(--body)}.time-pill strong{color:#fff}.venue-panel{max-width:280px;margin:0 auto;padding:8px 9px 7px;border:1px solid rgba(218,150,145,.19);border-radius:12px;background:linear-gradient(145deg,#251016,#15070b);box-shadow:0 3px 10px rgba(0,0,0,.24)}.venue-label{margin:0 0 3px;color:#dc737b;font:800 5px var(--body);letter-spacing:.35px}.venue-panel h3{margin:0 0 2px;color:#e7bda5;font:800 9px var(--display)}.venue-panel>p:not(.venue-label){margin:0;color:#f1e2df;font:600 5px var(--body)}.map-link{width:max-content;max-width:100%;margin:5px auto 0;padding:4px 10px;display:flex;align-items:center;gap:4px;border:1px solid #c58d79;border-radius:18px;background:linear-gradient(90deg,#7b1928,#4c101b);color:#fff0e9;text-decoration:none;font:800 5px var(--body);letter-spacing:.15px}.map-link:hover{filter:brightness(1.12)}
.gallery-card{padding:10px 10px 9px;border-radius:16px}.gallery-heading{text-align:center;margin-bottom:7px}.section-kicker{margin:0 0 2px;color:#c87078;font:700 5px var(--body);letter-spacing:1px}.gallery-heading h2{margin:0;color:#e7bda5;font:800 10px var(--display);letter-spacing:.25px}.gallery-main{height:220px;position:relative;overflow:hidden;border:1px solid #682230;border-radius:12px;background:linear-gradient(135deg,#241016,#4d1522 55%,#15070b)}.gallery-main img{width:100%;height:100%;display:block;object-fit:contain;background:#100e18;opacity:0;transform:scale(1.045);transition:opacity 1.4s ease,transform 6s ease}.gallery-main img.is-visible{opacity:1;transform:scale(1)}.gallery-main.is-playing img.is-visible{animation:gallery-drift 6s ease-in-out both}.gallery-counter{position:absolute;z-index:2;top:4px;right:5px;padding:2px 5px;border-radius:4px;background:rgba(8,11,17,.75);color:#fff;font:700 6px var(--numbers)}.gallery-counter span:first-child{color:var(--yellow)}.gallery-arrow{position:absolute;z-index:2;top:50%;transform:translateY(-50%);width:21px;height:25px;padding:0;border:0;border-radius:50%;background:rgba(119,20,37,.96);color:#fff3ef;font:700 20px/1 var(--body);cursor:pointer}.gallery-arrow:hover{background:#b5293d}.gallery-arrow:disabled{opacity:.4;cursor:default}.gallery-prev{left:4px}.gallery-next{right:4px}.gallery-playback{position:absolute;z-index:3;right:5px;bottom:5px;width:23px;height:23px;padding:0;border:1px solid rgba(255,225,160,.72);border-radius:50%;background:rgba(34,20,44,.82);color:#ffe1a0;font:700 10px/1 var(--body);cursor:pointer;backdrop-filter:blur(5px)}.gallery-playback:hover{background:rgba(184,74,146,.95);color:#fff}.gallery-playback:disabled{opacity:.45;cursor:not-allowed}.gallery-thumbs{min-height:29px;display:flex;justify-content:center;gap:5px;margin-top:6px}.gallery-thumb{width:24px;height:23px;padding:1px;border:1px solid #51202a;border-radius:7px;opacity:.65;background:#16080d;cursor:pointer;overflow:hidden}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.gallery-thumb[aria-current="true"]{border:1px solid #d49b91;opacity:1;box-shadow:0 0 7px rgba(194,44,62,.42)}
.rsvp-card{padding:14px 13px;border-radius:16px;background:linear-gradient(150deg,#1c0b10,#100609)}.rsvp-heading{text-align:center;margin-bottom:10px}.rsvp-heading .section-kicker{color:#c9797e}.rsvp-heading h2{margin:0 0 3px;color:#fff0ee;font:800 11px/1.35 var(--body)}.rsvp-heading>p:last-child{margin:0;color:#c1adaf;font:500 6px var(--body)}.rsvp-form{max-width:300px;margin:0 auto}.field{display:grid;gap:3px;margin-bottom:6px}.field>span{color:#e7bda5;font:700 5px var(--body);letter-spacing:.35px}.field>span b{color:#eb6570}.field small{font:500 5px var(--body);color:#b8a0a4}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #61212d;border-radius:8px;background:#13070b;color:#fff1ef;padding:6px 7px;outline:none;font-size:6px}.field input:focus,.field select:focus,.field textarea:focus{border-color:#ce4d59;box-shadow:0 0 0 2px rgba(194,44,62,.18)}.field input::placeholder,.field textarea::placeholder{color:#a78e93}.field textarea{min-height:29px;resize:vertical}.form-row{display:grid;grid-template-columns:1.35fr .65fr;gap:5px}.rsvp-submit{width:100%;min-height:20px;margin-top:0;padding:0 8px;border:1px solid #c58d79;border-radius:12px;background:linear-gradient(90deg,#55101c,#a91f34,#55101c);color:#fff2ed;font:800 6px var(--body);letter-spacing:.15px}.privacy-note,.form-feedback{min-height:8px;font:500 5px var(--body);color:#b49ea3;margin:3px 0 0}.form-feedback{color:#d6a3a3}.wishes-area{margin-top:7px;padding-top:6px;border-top:1px solid #4d1c26}.wishes-area h3{margin:0 0 4px;color:#e7bda5;font:700 6px var(--body)}.wishes-area h3 span{color:#c1adaf}.wishes-area h3 b{color:#e7bda5}.wishes-list{display:grid;gap:4px;max-height:80px;overflow:auto}.wish-card{padding:5px 6px;border:1px solid #4e1b26;border-radius:8px;background:#14070b}.wish-top{display:flex;justify-content:space-between;gap:6px;font:700 5px var(--body)}.wish-top strong{color:#e7bda5;overflow-wrap:anywhere}.wish-status{color:#d0a2a0;white-space:nowrap}.wish-card p{margin:2px 0 0;color:#e0cece;font:500 5px var(--body);overflow-wrap:anywhere}.empty-wishes{margin:0;color:#b4a0a5;font:500 5px var(--body)}
.footer{padding:2px 4px 12px;text-align:center;color:#ad969b;font:600 5px/1.6 var(--body);letter-spacing:.6px}.footer p{margin:0;color:#ecd0ce;font-weight:700}.footer span{color:#ad969b}.footer span span{color:#e5b8a3}
.welcome-gate{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:18px;background:#100609;transition:opacity .45s,visibility .45s}.welcome-gate.is-hidden{opacity:0;visibility:hidden;pointer-events:none}.gate-card{width:min(310px,calc(100vw - 36px));min-height:307px;position:relative;text-align:center;padding:38px 21px 44px;background:linear-gradient(145deg,#321019,#18070c);border:1px solid #c99582;border-radius:24px;box-shadow:0 0 22px 7px rgba(155,18,38,.5),0 0 52px 18px rgba(94,9,22,.3),0 20px 65px rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center}.gate-check{position:absolute;left:20px;right:20px;height:7px;border-radius:5px;background-color:#16060a;background-image:radial-gradient(circle,#e8c3ad 1.3px,transparent 1.5px),radial-gradient(circle,#a8293b 1px,transparent 1.5px);background-size:12px 12px,12px 12px;background-position:0 0,6px 6px}.gate-check-top{top:19px}.gate-check-bottom{bottom:18px}.gate-ticket{display:inline-flex;align-items:center;justify-content:center;margin:4px 0 6px;padding:4px 12px;border:1px solid #c58d79;border-radius:99px;background:linear-gradient(90deg,#681523,#a82135);color:#fff0e7;font:800 7px/1.2 var(--body);letter-spacing:.55px}.gate-card h2{font:900 20px/1.17 var(--body);margin:0 0 11px;color:#fff1ee}.gate-recipient{width:100%;height:51px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid #57202a;border-radius:12px;background:#14070c}.gate-recipient span{color:#ccb7b8;font:500 7px var(--body)}.gate-recipient strong{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e7bda5;font:800 12px/1.2 var(--body);text-decoration:underline;text-decoration-color:#c93a4b;text-underline-offset:3px}.gate-copy{max-width:244px;min-height:29px;margin:10px 0 12px;color:#e8d7d7;font:500 8px/1.35 var(--body)}.gate-button{width:100%;min-height:40px;gap:5px;padding:0 6px;border:1px solid #d6a398;border-radius:18px;background:linear-gradient(100deg,#58111e,#aa2236 53%,#5a101d);color:#fff2ed;font:900 10px/1 var(--body);white-space:nowrap;box-shadow:0 0 17px rgba(151,19,39,.45);transition:filter .2s,transform .2s}.gate-button:hover{filter:brightness(1.12);transform:translateY(-1px)}.gate-button span{font-size:11px}
.admin-dialog{width:min(660px,calc(100% - 24px));max-width:none;max-height:min(90vh,850px);padding:0;border:1px solid rgba(197,133,126,.55);border-radius:14px;background:#1b0b10;color:var(--ink);box-shadow:0 30px 100px rgba(0,0,0,.75)}.admin-dialog::backdrop{background:rgba(7,2,4,.88);backdrop-filter:blur(5px)}.admin-form{padding:20px 22px 16px;max-height:inherit;overflow:auto}.admin-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #4d1c26;padding-bottom:13px}.admin-header .section-kicker,.admin-fields legend{margin:0 0 4px;color:#e7bda5}.admin-header h2{font:800 21px var(--display);margin:0}.close-admin{font-size:21px}.admin-intro{color:#c1adaf;font-size:10px;margin:11px 0 14px}.admin-fields fieldset{border:1px solid #57202b;border-radius:10px;padding:12px;margin:0 0 10px}.admin-fields legend{padding:0 6px;font:800 8px var(--body);letter-spacing:1px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.admin-fields .field{margin-bottom:9px}.admin-fields .field input,.admin-fields .field textarea{padding:8px;font-size:10px}.admin-fields .field>span{font-size:8px}.admin-feedback{min-height:15px;color:#ed9696;font-size:9px;margin:6px 0}.admin-feedback.success{color:#d6a3a3}.admin-actions{display:flex;justify-content:flex-end;gap:8px}.admin-actions .button{min-height:36px;font-size:9px}.admin-warning{color:#ad969b;font-size:8px;margin:10px 0 0;text-align:center}
.confetti-piece{position:fixed;top:-14px;width:6px;height:10px;z-index:45;pointer-events:none;animation:confetti-fall var(--fall-duration) ease-in forwards}@keyframes confetti-fall{to{transform:translate3d(var(--drift),105vh,0) rotate(620deg);opacity:.1}}
:focus-visible{outline:2px solid #f0c9b8;outline-offset:3px}button:disabled{opacity:.45;cursor:not-allowed}
@media(min-width:600px){.invitation-shell{width:min(100% - 40px,480px);margin-top:12px;gap:12px}.hero-card{padding:17px 16px 21px}.hero-photo-frame{height:205px;width:min(100%,330px)}.birthday-emblem{width:min(100%,270px)}.event-card{padding-top:15px;padding-bottom:17px}.gallery-main{height:260px}.rsvp-card{padding:18px 17px}.section-kicker{font-size:6px}.rsvp-heading h2{font-size:13px}.rsvp-form{max-width:340px}.field>span{font-size:6px}.field input,.field select,.field textarea{font-size:8px;padding:8px}.rsvp-submit{min-height:28px;font-size:7px}.wishes-area h3{font-size:7px}.wish-top,.wish-card p,.empty-wishes{font-size:6px}.countdown-panel h2{font-size:6px}.count-unit span{font-size:11px}.count-unit small{font-size:5px}.welcome-gate .gate-card{min-height:307px}}
@media(min-width:900px){.invitation-shell{width:440px;margin-top:12px}.floating-controls{right:max(14px,calc((100vw - 900px)/2))}.hero-photo-frame{height:220px;width:min(100%,340px)}.gallery-main{height:300px}}
@media(max-width:480px){.hero-photo-frame{height:170px;width:min(100%,260px)}}
@media(max-width:360px){.invitation-shell{width:calc(100% - 20px);margin-top:5px;gap:8px}.hero-card{padding:12px 9px 15px}.hero-photo-frame{width:min(100%,240px);height:155px}.birthday-emblem{width:min(100%,220px)}.event-card{padding-left:9px;padding-right:9px}.rsvp-card{padding:12px 9px}.floating-controls{top:7px;right:7px;gap:3px}.icon-button{width:28px;height:28px;font-size:14px}.button-small{min-height:27px}.gate-card{width:min(280px,calc(100vw - 32px));padding-left:16px;padding-right:16px}.gate-button{font-size:9px}}
@media(max-height:500px){.gate-card{min-height:0;padding-top:30px;padding-bottom:36px}.gate-check-top{top:13px}.gate-check-bottom{bottom:13px}.gate-copy{margin:6px 0}.gate-card h2{font-size:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.hero-photo-frame{box-shadow:none}.car-decoration{filter:grayscale(.15) brightness(.58)}}

/* Restore the previous celebratory purple-and-pink palette. */
:root{--ink:#fff;--muted:#a4abb8;--bg:#17101f;--panel:#21182c;--panel2:#292038;--line:#74406f;--red:#e878ae;--yellow:#ffe1a0;--orange:#f09ac8;--green:#a5e4cf;--glow:0 0 17px rgba(235,131,198,.35)}
body{background:#17101f;color:#fff}body::before{background:radial-gradient(ellipse at 50% 34%,rgba(151,86,143,.18),transparent 57%),#17101f}#ambient-canvas{opacity:.75}.site-noise{opacity:.08}.skip-link{background:#ffe1a0;color:#17101f}
.floating-controls .icon-button{border-color:#edbbdd;background:linear-gradient(145deg,#cb69ad,#774b98);color:#fff0bd;box-shadow:0 0 10px rgba(235,126,196,.28)}.music-button{background:#2b2038;border-color:rgba(255,225,160,.72);color:#ffe1a0}.music-status{border-color:#4b5362;background:rgba(9,12,19,.95);color:#e9edf1}.music-status[data-state="error"]{border-color:#d6433c;color:#ffc3b7}.music-status[data-state="playing"]{border-color:#18ba96;color:#a9f4de}.button-primary{background:linear-gradient(100deg,#e57eb8,#f6c980 58%,#d277b5);color:#35233d;border-color:#ffe5b0;box-shadow:0 0 12px rgba(230,142,203,.34)}
.birthday-top-glow,.birthday-bottom-glow{color:#ffd2ec;text-shadow:0 0 9px #fa78cd}.hero-card,.event-card,.gallery-card,.rsvp-card{border-color:#74406f;background:linear-gradient(150deg,rgba(27,24,43,.97),rgba(12,13,25,.98));box-shadow:0 8px 22px rgba(0,0,0,.3),inset 0 0 22px rgba(183,91,214,.045)}.hero-backdrop{background:radial-gradient(ellipse at 50% 42%,rgba(108,119,138,.27),transparent 55%),linear-gradient(90deg,rgba(12,13,19,.9),rgba(29,33,44,.75),rgba(12,13,19,.9))}.hero-recipient{border-color:#edbbe0;background:linear-gradient(90deg,#35233e,#614064,#35233e);color:#e9edf2}.recipient-flag{color:#ffe2a1}.invitation-heading{color:#f6f6f5}
.birthday-emblem{border-color:#f2c3e6;background:linear-gradient(145deg,#fff0f8 0%,#c97bb8 16%,#32223e 39%,#ffe3ef 58%,#765084 80%,#f7c6db 100%);box-shadow:0 0 18px rgba(241,143,209,.34),inset 0 1px 4px #fff}.emblem-ribbon{border-color:#ffe1a5;background:linear-gradient(90deg,#c854a7,#ec788e);color:#fff}.nameplate{border-color:#803f80;background:linear-gradient(180deg,#ffb6d8,#df6cac 54%,#a74d9e);color:#fff;text-shadow:0 2px 2px rgba(87,40,87,.45);box-shadow:inset 0 2px 3px rgba(255,255,255,.6),inset 0 -5px 9px rgba(75,30,82,.24),0 5px 8px rgba(0,0,0,.2)}.age-ribbon{border-color:#fff0b5;background:linear-gradient(100deg,#ffcf72,#f0829e);color:#fff}.age-ribbon strong{text-decoration-color:#fff0a9}.hero-photo-frame{border-color:#efbf8f;background:linear-gradient(145deg,#ffe0a0,#e782bd 50%,#9668b8);box-shadow:0 0 17px rgba(228,135,197,.35)}.photo-caption{background:rgba(34,20,44,.78);color:#fff}.welcome-message{border-color:#873339;background:#10111a;color:#e9e9ec}
.countdown-panel{border-color:#6e587d;background:rgba(6,10,17,.84)}.countdown-panel h2{color:#ffe18f}.count-unit{border-color:#5b476b;background:linear-gradient(145deg,#241d32,#100e1a)}.count-days span{color:#ffb1df}.count-hours span{color:#ffe1a0}.count-minutes span{color:#c4b4fa}.count-seconds span{color:#a5e4cf}.count-unit small,.countdown-note{color:#c4bdce}
.event-card{border-color:#e7afdc;background:linear-gradient(150deg,#b63b89 0%,#864b9e 43%,#171522 100%);box-shadow:0 5px 18px rgba(0,0,0,.3),0 0 12px rgba(237,112,196,.18)}.date-display{color:#ffe39a}.date-display strong{border-color:#ffe39a;background:#2b2036}.time-pill{border-color:#795777;background:#2a1d35;color:#ffe1a0}.venue-panel{border-color:rgba(255,211,235,.16);background:linear-gradient(145deg,#251c35,#171524)}.venue-label{color:#ffb4dd}.venue-panel h3{color:#ffdc9d}.venue-panel>p:not(.venue-label){color:#f0eaf1}.map-link{border-color:#ffe2a5;background:linear-gradient(90deg,#f3aacd,#f4ca82);color:#35243c}
.gallery-heading .section-kicker{color:#e99bc9}.gallery-heading h2{color:#ffe1a0}.gallery-main{border-color:#7c5c83;background:linear-gradient(135deg,#32303d,#80586e 55%,#33263e)}.gallery-arrow{background:rgba(184,74,146,.9);color:#fff}.gallery-arrow:hover{background:#f1b7d9}.gallery-thumb{border-color:#675274;background:#21182c}.gallery-thumb[aria-current="true"]{border-color:#ffe1a0;box-shadow:0 0 7px rgba(255,200,220,.5)}
.rsvp-card{background:linear-gradient(150deg,#211a2d,#12101d)}.rsvp-heading .section-kicker{color:#e4afd3}.rsvp-heading h2{color:#fff2f5}.rsvp-heading>p:last-child{color:#c3b5c6}.field>span{color:#ffe1a0}.field>span b{color:#ff9cae}.field small{color:#bbaabc}.field input,.field select,.field textarea{border-color:#695975;background:#171321;color:#fff4fa}.field input:focus,.field select:focus,.field textarea:focus{border-color:#ffe1a0;box-shadow:0 0 0 2px rgba(245,203,180,.13)}.field input::placeholder,.field textarea::placeholder{color:#a99caf}.rsvp-submit{border-color:#ffe4a5;background:linear-gradient(90deg,#c959a4,#ee93a3,#f4c875);color:#302139}.privacy-note,.form-feedback{color:#a99caf}.form-feedback{color:#a5e4cf}.wishes-area{border-top-color:#493b54}.wishes-area h3{color:#ffe1a0}.wishes-area h3 span{color:#c6b8cb}.wishes-area h3 b{color:#ffe1a0}.wish-card{border-color:#4e405c;background:#171321}.wish-top strong{color:#ffe1a0}.wish-status{color:#a5e4cf}.wish-card p{color:#ddd2df}.empty-wishes{color:#b7aabe}.footer{color:#a99caf}.footer p{color:#f4d5e7}.footer span{color:#a99caf}.footer span span{color:#ffe1a0}
.welcome-gate{background:#030617}.gate-card{background:linear-gradient(145deg,#36213f,#251831);border-color:#ffe1a0;box-shadow:0 0 22px 7px rgba(244,113,181,.45),0 0 52px 18px rgba(157,63,216,.2),0 20px 65px rgba(0,0,0,.48)}.gate-check{background-color:#21182d;background-image:radial-gradient(circle,#fff4dc 1.3px,transparent 1.5px),radial-gradient(circle,#f2a9dc 1px,transparent 1.5px)}.gate-ticket{border-color:#f6cce3;background:linear-gradient(90deg,#c34da6,#ee718f);color:#fff}.gate-card h2{color:#fff}.gate-recipient{border-color:#675478;background:#171426}.gate-recipient span{color:#d1c3d4}.gate-recipient strong{color:#ffe0a0;text-decoration-color:#ef99ce}.gate-copy{color:#f3e8e4}.gate-button{border-color:#fff0c3;background:linear-gradient(100deg,#db71b4,#f5bd78 53%,#d66bb5);color:#29172f;box-shadow:0 0 17px rgba(243,157,208,.42)}
.admin-dialog{border-color:rgba(255,225,160,.55);background:#21182c}.admin-dialog::backdrop{background:rgba(12,8,18,.84)}.admin-header{border-bottom-color:#493b54}.admin-header .section-kicker,.admin-fields legend{color:#ffe1a0}.admin-intro{color:#c1b4c7}.admin-fields fieldset{border-color:#51425f}.admin-feedback{color:#ffb3bf}.admin-feedback.success{color:#a5e4cf}.admin-warning{color:#a99caf}
@media(prefers-reduced-motion:reduce){.car-decoration{filter:grayscale(.15) brightness(.68)}}
/* End restored original purple/pink theme. */
@media(max-width:760px){.car-decoration{opacity:.16}}
@media(max-width:480px){.car-decoration{opacity:.14}}

/* Restore the small car decorations along the page margins. */
.car-decoration{position:fixed;z-index:1;pointer-events:none;background-image:url('assets/mcqueen-reference.png');background-repeat:no-repeat;background-size:cover;background-position:50% 55%;filter:saturate(.65) brightness(.68);-webkit-mask-image:radial-gradient(ellipse 62% 56% at 50% 53%,#000 45%,rgba(0,0,0,.66) 67%,transparent 100%);mask-image:radial-gradient(ellipse 62% 56% at 50% 53%,#000 45%,rgba(0,0,0,.66) 67%,transparent 100%)}
.car-decoration-1{left:calc(50% - 365px);top:15vh;width:122px;height:78px;opacity:.16}.car-decoration-2{left:calc(50% + 243px);top:29vh;width:112px;height:72px;opacity:.16;transform:scaleX(-1)}.car-decoration-3{left:calc(50% - 355px);top:46vh;width:118px;height:76px;opacity:.16}.car-decoration-4{left:calc(50% + 247px);top:62vh;width:110px;height:71px;opacity:.16;transform:scaleX(-1)}.car-decoration-5{left:calc(50% - 357px);top:78vh;width:116px;height:75px;opacity:.16}.car-decoration-6{left:calc(50% + 250px);top:91vh;width:108px;height:70px;opacity:.16;transform:scaleX(-1)}
@media(min-width:761px) and (max-width:1100px){.car-decoration-1{left:12px}.car-decoration-2{left:auto;right:12px}.car-decoration-3{left:10px}.car-decoration-4{left:auto;right:10px}.car-decoration-5{left:9px}.car-decoration-6{left:auto;right:9px}.car-decoration{width:88px;height:57px;opacity:.13}}
@media(max-width:760px){.car-decoration{width:62px;height:40px;opacity:.13}.car-decoration-1{left:4px;top:14vh}.car-decoration-2{left:auto;right:4px;top:29vh}.car-decoration-3{left:3px;top:45vh}.car-decoration-4{left:auto;right:3px;top:61vh}.car-decoration-5{left:4px;top:77vh}.car-decoration-6{left:auto;right:4px;top:91vh}}
@media(max-width:480px){.car-decoration{width:44px;height:29px;opacity:.12}.car-decoration-1{left:1px;top:13vh}.car-decoration-2{right:1px;top:28vh}.car-decoration-3{left:1px;top:44vh}.car-decoration-4{right:1px;top:60vh}.car-decoration-5{left:1px;top:76vh}.car-decoration-6{right:1px;top:90vh}}
@media(prefers-reduced-motion:reduce){.car-decoration{filter:grayscale(.15) brightness(.68)}.gallery-main img,.gallery-main img.is-visible{animation:none!important;transform:none;transition:none;opacity:1}.gallery-playback{display:none}}
@keyframes gallery-drift{0%{transform:scale(1.045) translate3d(0,0,0)}50%{transform:scale(1.075) translate3d(-.3%,.2%,0)}100%{transform:scale(1.045) translate3d(0,0,0)}}
@supports not (mask-image:radial-gradient(ellipse,#000,transparent)){.car-decoration{opacity:.08}}

/* Welcome gate inspired by the supplied midnight racing ticket reference. */
.welcome-gate{background:#030715}
.welcome-gate::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 36% 42% at 50% 51%,rgba(255,78,0,.34),rgba(255,135,0,.15) 48%,transparent 76%)}
.gate-card{z-index:1;width:min(360px,calc(100vw - 36px));min-height:0;padding:42px 25px 36px;border:1px solid #ffd400;border-radius:20px;background:linear-gradient(150deg,#301816,#211314 66%,#19121a);box-shadow:0 0 23px 8px rgba(255,63,0,.58),0 0 62px 23px rgba(255,130,0,.27),0 24px 70px rgba(0,0,0,.62);gap:0}
.gate-check{left:24px;right:24px;height:10px;border-radius:2px;background-color:#f5f2e8;background-image:linear-gradient(45deg,#101014 25%,transparent 25%,transparent 75%,#101014 75%,#101014),linear-gradient(45deg,#101014 25%,transparent 25%,transparent 75%,#101014 75%,#101014);background-position:0 0,5px 5px;background-size:10px 10px}
.gate-check-top{top:25px}.gate-check-bottom{bottom:24px}
.gate-ticket{margin:13px 0 9px;padding:4px 12px;border:1px solid #ffd400;background:linear-gradient(90deg,#d62416,#f04416);color:#ffd900;font:800 8px/1.2 var(--body);letter-spacing:.35px}
.gate-ticket::before,.gate-ticket::after{content:"✿";margin:0 4px;color:#ffd400;font-size:7px}
.gate-card h2{margin:0 0 15px;color:#fff;font:900 clamp(21px,5.8vw,26px)/1.05 var(--body);letter-spacing:.6px;text-transform:uppercase;text-shadow:0 2px 1px rgba(0,0,0,.35)}
.gate-recipient{height:62px;border:1px solid #7b2531;border-radius:13px;background:#050817;gap:3px}
.gate-recipient span{color:#b6bccb;font:600 9px/1.2 var(--body);text-transform:uppercase}
.gate-recipient strong{max-width:100%;padding:0 10px;color:#ffd400;font:900 clamp(13px,3.7vw,16px)/1.2 var(--body);text-decoration:none;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere}
.gate-copy{max-width:280px;min-height:0;margin:13px 0 18px;color:#d9dce5;font:500 10px/1.35 var(--body)}
.gate-button{width:100%;min-height:48px;padding:0 10px;border:1px solid #fff1aa;border-radius:14px;background:linear-gradient(100deg,#e4311d,#f17a00 48%,#f4c900 72%,#df2e1d);color:#090b14;font:900 clamp(9px,2.7vw,11px)/1.2 var(--body);letter-spacing:.25px;white-space:normal;box-shadow:0 0 20px rgba(255,111,0,.47);transition:filter .2s,transform .2s,box-shadow .2s}
.gate-button:hover{filter:brightness(1.08);transform:translateY(-1px);box-shadow:0 0 25px rgba(255,131,0,.62)}
.gate-button span{font-size:13px}
@media(max-width:360px){.gate-card{width:min(330px,calc(100vw - 28px));padding:40px 18px 33px}.gate-ticket{font-size:7px}.gate-card h2{font-size:21px}.gate-copy{font-size:9px}.gate-button{min-height:46px}}
@media(max-height:500px){.welcome-gate{overflow-y:auto}.gate-card{margin:auto;padding-top:38px;padding-bottom:33px}.gate-check-top{top:20px}.gate-check-bottom{bottom:19px}.gate-copy{margin:8px 0 12px}.gate-card h2{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.welcome-gate,.gate-card,.gate-button{transition:none}.welcome-gate::before{display:none}.gate-card{box-shadow:0 0 18px rgba(255,100,0,.24),0 20px 50px rgba(0,0,0,.6)}}

/* Birthday celebration theme for the invitation content after opening. */
:root{--ink:#f7f5f2;--muted:#a6adbd;--bg:#05070d;--panel:#111722;--panel2:#182130;--line:#8d2730;--red:#e52c27;--yellow:#ffd21c;--orange:#ff8a16;--green:#35d5b0;--glow:0 0 18px rgba(239,60,30,.3)}
html{background:#05070d}body{background:#05070d;color:#f7f5f2}body::before{background:radial-gradient(ellipse at 50% 12%,rgba(202,62,17,.13),transparent 48%),radial-gradient(circle at 12% 28%,rgba(240,35,33,.13) 0 5px,transparent 16px),radial-gradient(circle at 88% 62%,rgba(255,196,0,.12) 0 7px,transparent 20px),#05070d}#ambient-canvas{opacity:.5}.site-noise{opacity:.045}
.car-decoration{display:none!important}.invitation-shell{width:min(100% - 28px,440px);gap:10px}.birthday-top-glow,.birthday-bottom-glow{color:#ffd21c;text-shadow:0 0 9px rgba(255,150,0,.7)}
.hero-card,.event-card,.gallery-card,.rsvp-card{border:1px solid rgba(227,44,42,.8);border-radius:12px;background:linear-gradient(150deg,rgba(20,26,37,.97),rgba(8,11,18,.98));box-shadow:0 8px 22px rgba(0,0,0,.44),inset 0 0 20px rgba(255,150,0,.035)}
.hero-card{padding:14px 13px 17px}.hero-backdrop{background:radial-gradient(ellipse at 50% 42%,rgba(255,154,0,.15),transparent 57%),linear-gradient(90deg,rgba(11,15,23,.96),rgba(47,48,55,.78),rgba(11,15,23,.96))}.hero-recipient{border-color:#d79d16;background:#080c15;color:#f2e9d3}.recipient-flag{color:#ffd21c}.invitation-heading{color:#f4e2c5;text-shadow:0 0 12px rgba(255,113,16,.3)}
.birthday-emblem{width:min(100%,270px);padding:11px 9px 7px;border:1px solid #ffd21c;border-radius:16px;background:linear-gradient(145deg,#f4ead9 0%,#8893a2 18%,#18202b 44%,#d4d9df 70%,#252b35 100%);box-shadow:0 0 20px rgba(255,109,20,.25),inset 0 1px 4px rgba(255,255,255,.5)}.emblem-ribbon{border-color:#fff0ba;background:linear-gradient(90deg,#202937,#f7c829);color:#171820}.nameplate{border-color:#f1c330;border-radius:7px;background:linear-gradient(180deg,#f04b36,#a90e18 58%,#500e15);color:#fff;text-shadow:0 2px 2px rgba(0,0,0,.65);box-shadow:inset 0 2px 3px rgba(255,255,255,.18),inset 0 -5px 9px rgba(0,0,0,.5),0 5px 8px rgba(0,0,0,.3)}.age-ribbon{border-color:#ffda42;border-radius:7px;background:linear-gradient(100deg,#d51d20,#ef8b0d);color:#fff}.age-ribbon strong{color:#ffe02a;text-decoration-color:#ffe02a}.hero-photo-frame{border-color:#ffd21c;border-radius:10px;clip-path:none;background:linear-gradient(145deg,#ffd21c,#ee4032 50%,#151b26);box-shadow:0 0 16px rgba(241,83,23,.3)}.hero-photo-frame img{border-radius:5px;clip-path:none}.photo-caption{background:rgba(5,8,15,.88);color:#fff}.welcome-message{border-color:#7f2930;border-radius:8px;background:#0a0e17;color:#e6e3df}
.countdown-panel{border-color:#d92a2c;border-radius:12px;background:rgba(5,8,15,.9)}.countdown-panel h2{color:#ffd21c}.count-unit{border-color:#3e4b5b;border-radius:8px;background:linear-gradient(145deg,#15202d,#080c13)}.count-days span{color:#ff5145}.count-hours span{color:#ffd21c}.count-minutes span{color:#55d7e2}.count-seconds span{color:#45dc9d}.count-unit small,.countdown-note{color:#bec3cb}
.event-card{min-height:144px;border:1px solid #ffd21c;border-radius:10px;background:linear-gradient(150deg,#c81d24 0%,#9c111d 48%,#281017 100%);box-shadow:0 0 17px rgba(255,126,0,.18),0 5px 18px rgba(0,0,0,.45)}.date-display{color:#ffd21c}.date-display strong{border-color:#ffd21c;border-radius:5px;background:#080d16;color:#fff}.time-pill{border-color:#ffd21c;background:#0a0d15;color:#ffd21c}.venue-panel{border-color:#29364a;border-radius:9px;background:linear-gradient(145deg,#101827,#070b13)}.venue-label{color:#ffbd19}.venue-panel h3{color:#ffe047}.venue-panel>p:not(.venue-label){color:#eef0f4}.map-link{border-color:#ffd21c;background:linear-gradient(90deg,#ffd21c,#ff8b12);color:#14151b}
.gallery-card{background:linear-gradient(150deg,#111722,#080b12)}.gallery-heading .section-kicker{color:#ffbe16}.gallery-heading h2{color:#ffe047}.gallery-main{border-color:#4a596a;border-radius:9px;background:linear-gradient(135deg,#111925,#222b36 55%,#090d15)}.gallery-counter{background:rgba(4,7,13,.85);color:#fff}.gallery-counter span:first-child{color:#ffd21c}.gallery-arrow{background:rgba(213,34,37,.94);color:#fff}.gallery-arrow:hover{background:#ff8b12}.gallery-playback{border-color:#ffd21c;background:rgba(9,13,22,.88);color:#ffd21c}.gallery-playback:hover{background:#d92327;color:#fff}.gallery-thumb{border-color:#3f4c5d;background:#0e1520}.gallery-thumb[aria-current="true"]{border-color:#ffd21c;box-shadow:0 0 8px rgba(255,171,0,.45)}
.rsvp-card{background:linear-gradient(150deg,#111722,#080b12)}.rsvp-heading .section-kicker{color:#ffd21c}.rsvp-heading h2{color:#fff}.rsvp-heading>p:last-child{color:#c5c9d1}.field>span{color:#ffd21c}.field>span b{color:#ff6556}.field small{color:#b8bfcb}.field input,.field select,.field textarea{border-color:#3b4a60;background:#080d16;color:#fff}.field input:focus,.field select:focus,.field textarea:focus{border-color:#ffd21c;box-shadow:0 0 0 2px rgba(255,205,30,.16)}.field input::placeholder,.field textarea::placeholder{color:#939eae}.rsvp-submit{border-color:#ffe078;background:linear-gradient(90deg,#d51f26,#ee5a14,#f3bd15);color:#100e12}.privacy-note,.form-feedback{color:#b3bac6}.form-feedback{color:#50dcaa}.wishes-area{border-top-color:#354154}.wishes-area h3{color:#ffd21c}.wishes-area h3 span,.wish-status{color:#bfc7d2}.wishes-area h3 b,.wish-top strong{color:#ffe047}.wish-card{border-color:#374457;background:#0b1019}.wish-card p{color:#d6d9e0}.empty-wishes{color:#b4bdcb}.footer,.footer span{color:#9da7b7}.footer p,.footer span span{color:#ffe047}
.floating-controls .icon-button{border-color:#ffd21c;background:linear-gradient(145deg,#e73327,#b31820);color:#fff;box-shadow:0 0 10px rgba(255,111,0,.28)}.music-button{background:#0d1420;border-color:#ffd21c;color:#ffd21c}.music-status{border-color:#46556b;background:rgba(7,11,18,.96);color:#edf0f5}.button-primary{border-color:#ffe078;background:linear-gradient(100deg,#d51f26,#ed7510 58%,#f2c51a);color:#151117;box-shadow:0 0 12px rgba(255,132,0,.25)}
@media(max-width:480px){.invitation-shell{width:calc(100% - 20px)}.hero-card,.event-card,.gallery-card,.rsvp-card{border-radius:10px}}
@media(prefers-reduced-motion:reduce){body::before{background:#05070d}}

/* Runtime-safe colors configured in the local admin panel. */
body{background:var(--invite-bg,#05070d);color:var(--invite-text,#f7f5f2)}
body::before{background:radial-gradient(ellipse at 50% 12%,color-mix(in srgb,var(--invite-primary,#e52c27) 18%,transparent),transparent 48%),var(--invite-bg,#05070d)}
.hero-card,.gallery-card,.rsvp-card{border-color:var(--invite-border,#8d2730);background:linear-gradient(150deg,color-mix(in srgb,var(--invite-panel,#111722) 96%,white 4%),var(--invite-bg,#05070d))}
.event-card{border-color:var(--invite-accent,#ffd21c)}
.gallery-heading .section-kicker,.rsvp-heading .section-kicker{color:var(--invite-accent,#ffd21c)}
.gallery-heading h2,.wishes-area h3,.field>span{color:var(--invite-accent,#ffd21c)}
.gallery-main{border-color:var(--invite-border,#4a596a)}
.gallery-arrow{background:var(--invite-primary,#d52225)}.gallery-arrow:hover{background:var(--invite-accent,#ff8b12)}
.rsvp-submit,.map-link{background:linear-gradient(90deg,var(--invite-primary,#d51f26),var(--invite-accent,#f3bd15));color:var(--invite-bg,#101116)}
.admin-note{color:var(--invite-muted,#a6adbd)}
.mcqueen-decoration{position:fixed;z-index:1;top:50%;width:min(20vw,170px);aspect-ratio:1.65;transform:translateY(-50%);pointer-events:none;background:url('assets/mcqueen-reference.png') center/contain no-repeat;filter:drop-shadow(0 0 18px rgba(235,54,27,.45));opacity:.72}
.mcqueen-left{left:max(8px,calc(50% - 470px))}.mcqueen-right{right:max(8px,calc(50% - 470px));transform:translateY(-50%) scaleX(-1)}
@media(max-width:760px){.mcqueen-decoration{width:clamp(50px,13vw,84px);opacity:.22}.mcqueen-left{left:0}.mcqueen-right{right:0}}
@media(max-width:480px){.mcqueen-decoration{width:48px;opacity:.14}.mcqueen-left{left:-8px}.mcqueen-right{right:-8px}}
@media(prefers-reduced-motion:reduce){.mcqueen-decoration{filter:grayscale(.2);opacity:.12}}
/* Keep the black-and-white checkered party trim from the reference, without car artwork. */
.hero-card::after,.event-card::after{content:"";position:absolute;left:0;right:0;height:7px;z-index:3;pointer-events:none;background-color:#f4f1e8;background-image:linear-gradient(45deg,#11131a 25%,transparent 25%,transparent 75%,#11131a 75%,#11131a),linear-gradient(45deg,#11131a 25%,transparent 25%,transparent 75%,#11131a 75%,#11131a);background-position:0 0,5px 5px;background-size:10px 10px;opacity:.95}
.hero-card::after{top:0}.event-card::after{bottom:0}
.hero-card{padding-top:21px}.event-card{padding-bottom:22px}
