:root{--dark-bg:#111a17;--dark-bg-deep:#0b120f;--pine-surface:#16241fc7;--pine-surface-solid:#172621;--pine-card-bg:linear-gradient(155deg, #1b2b25d1, #0f1915eb);--terracotta:#b84a47;--terracotta-hover:#cf5653;--terracotta-glow:#b84a4766;--antique-gold:#dfc298;--antique-gold-bright:#f2ddba;--antique-gold-glow:#dfc29859;--gold:#dfc298;--gold-glow:#dfc29866;--forest-sage:#3e6353;--forest-sage-light:#5b8773;--cream-snow:#f7f3ed;--light-text:#f5efe6;--muted-text:#a4b5ad;--border-subtle:#dfc29838;--border-focus:#dfc29899;--primary-color:#b84a47;--secondary-color:#3e6353;--font-heading:"Playfair Display", "Cinzel", Georgia, serif;--font-serif:"Playfair Display", "Cinzel", serif;--font-body:"Outfit", "Montserrat", sans-serif;--font-magic:"Mountains of Christmas", cursive}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--dark-bg);color:var(--light-text);background:radial-gradient(at 50% 0,#1c3029 0%,#121c18 55%,#0c1411 100%) fixed;min-height:100vh;line-height:1.5;overflow-x:hidden}.snowflakes{pointer-events:none;z-index:10;width:100%;height:100%;position:fixed;top:0;left:0}.snowflake{opacity:.75;background:radial-gradient(circle,#fffef5 0%,#dfc298cc 100%);border-radius:50%;animation:linear infinite fall;position:absolute;top:-10px;box-shadow:0 0 6px #dfc29899}@keyframes fall{0%{opacity:.8;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(360deg)}}.glass{-webkit-backdrop-filter:blur(14px);border:1px solid var(--border-subtle);background:#14201cb8;border-radius:20px;box-shadow:0 10px 35px #00000073}.container{z-index:20;width:100%;max-width:1240px;margin:0 auto;padding:1.5rem 1.5rem 4rem;position:relative}#app{flex-direction:column;min-height:100vh;display:flex}.top-nav{z-index:100;-webkit-backdrop-filter:blur(12px);justify-content:center;width:100%;padding:1rem 1rem 0;display:flex;position:sticky;top:0}.top-nav-inner{background:#0e1714d1;border:1px solid #dfc29838;border-radius:50px;gap:.6rem;max-width:95vw;padding:.45rem .75rem;display:flex;overflow-x:auto;box-shadow:0 10px 30px #00000073}.top-nav-inner::-webkit-scrollbar{display:none}.nav-pill{color:#c9d8d1;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:50px;align-items:center;gap:.4rem;padding:.45rem 1.15rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .25s;display:inline-flex}.nav-pill:hover{color:#fff;background:#dfc29826;border-color:#dfc2984d}.nav-pill.active{background:var(--terracotta);color:#fff;box-shadow:0 4px 15px var(--terracotta-glow)}.nav-pill-gold{color:var(--antique-gold);border-color:#dfc29873}.nav-pill-gold:hover{color:#fff;background:#dfc29840}.hero-diorama-section{text-align:center;margin-top:1rem;margin-bottom:3.5rem}.diorama-frame{background:#0d1613;border:1.5px solid #dfc2984d;border-radius:26px;margin-bottom:2rem;position:relative;overflow:hidden;box-shadow:0 25px 60px #000000a6,0 0 40px #dfc2981f}.diorama-image-container{width:100%;height:480px;position:relative}@media (width<=850px){.diorama-image-container{height:380px}}@media (width<=600px){.diorama-image-container{height:320px}}.diorama-img{object-fit:cover;object-position:center bottom;filter:brightness(.92)contrast(1.05);width:100%;height:100%}.diorama-overlay{background:linear-gradient(#0e1714c7 0%,#0e171433 40%,#0e1714e0 100%);position:absolute;inset:0}.diorama-content{text-align:center;z-index:2;flex-direction:column;justify-content:center;align-items:center;padding:2rem 1.5rem;display:flex;position:absolute;inset:0}.star-flourish{color:var(--antique-gold);letter-spacing:8px;opacity:.9;text-shadow:0 0 10px var(--antique-gold-glow);margin-bottom:.3rem;font-size:.95rem}.diorama-title{font-family:var(--font-heading);color:var(--cream-snow);letter-spacing:2px;text-shadow:0 3px 15px #000c,0 0 25px #dfc29840;margin:.3rem 0;font-size:3.8rem;font-weight:700;line-height:1.1}@media (width<=600px){.diorama-title{font-size:2.6rem}}.diorama-subtitle{font-family:var(--font-heading);color:var(--antique-gold);letter-spacing:1px;text-shadow:0 2px 8px #000c;max-width:620px;margin-bottom:1.8rem;font-size:1.15rem;font-style:italic}@media (width<=600px){.diorama-subtitle{font-size:.95rem}}.countdown-container{flex-wrap:wrap;justify-content:center;gap:1.2rem;display:flex}.countdown-box{-webkit-backdrop-filter:blur(14px);background:#101a16cc;border:1px solid #dfc29847;border-radius:16px;min-width:90px;padding:.75rem 1.4rem;transition:transform .3s cubic-bezier(.2,.8,.2,1);box-shadow:0 10px 25px #0006}.countdown-box:hover{border-color:var(--antique-gold);box-shadow:0 15px 30px #00000080, 0 0 15px var(--antique-gold-glow);transform:translateY(-4px)}.countdown-box span.number{font-family:var(--font-heading);color:var(--cream-snow);font-size:2.3rem;font-weight:700;line-height:1}.countdown-box span.label{text-transform:uppercase;letter-spacing:2px;color:var(--antique-gold);margin-top:.3rem;font-size:.72rem;font-weight:600;display:block}.magic-pass-card{border:1px solid var(--border-subtle);text-align:center;background:linear-gradient(145deg,#1b2a24e0,#0f1814f5);border-radius:22px;max-width:700px;margin:0 auto;padding:2.2rem 2rem;position:relative;box-shadow:0 15px 45px #00000073,inset 0 0 50px #dfc2980d}.pass-corner{color:var(--antique-gold);opacity:.65;font-size:1.1rem;position:absolute}.pass-corner.tl{top:12px;left:14px}.pass-corner.tr{top:12px;right:14px}.pass-corner.bl{bottom:12px;left:14px}.pass-corner.br{bottom:12px;right:14px}.pass-title{color:var(--cream-snow);font-family:var(--font-heading);letter-spacing:1px;margin-bottom:.4rem;font-size:1.65rem}.pass-desc{color:var(--muted-text);margin-bottom:1.4rem;font-size:.95rem;line-height:1.5}.pass-code-section{border-top:1px dashed #dfc29840;margin-top:1.2rem;padding-top:1.2rem}.pass-code-label{color:#cbd8d1;margin-bottom:.6rem;font-size:.85rem}.pass-code-form{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.pass-input{text-align:center;text-transform:uppercase;border-color:#dfc29859!important;border-radius:50px!important;width:210px!important;font-size:.95rem!important}.catalog-section{margin-top:1rem}.catalog-header{text-align:center;margin-bottom:2.5rem}.section-title{font-family:var(--font-heading);color:var(--cream-snow);letter-spacing:2px;margin-bottom:.2rem;font-size:2.6rem;font-weight:700}@media (width<=600px){.section-title{font-size:2rem}}.section-subtitle{color:var(--muted-text);margin-bottom:1.5rem;font-size:.95rem}.filter-pills-row{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.2rem;display:flex}.filter-pill{color:#c9d8d1;font-family:var(--font-body);cursor:pointer;background:#16221eb3;border:1px solid #dfc29840;border-radius:50px;align-items:center;gap:.4rem;padding:.55rem 1.35rem;font-size:.85rem;font-weight:500;transition:all .25s;display:inline-flex}.filter-pill:hover{border-color:var(--antique-gold);color:#fff;background:#dfc2981f;transform:translateY(-2px)}.filter-pill.active{background:var(--terracotta);color:#fff;border-color:var(--terracotta);box-shadow:0 4px 15px var(--terracotta-glow)}.experiences-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;display:grid}.card{background:var(--pine-card-bg);border:1px solid var(--border-subtle);cursor:pointer;border-radius:22px;flex-direction:column;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s cubic-bezier(.2,.8,.2,1),border-color .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 30px #00000061}.card:hover{border-color:#dfc29899;transform:translateY(-8px);box-shadow:0 20px 50px #0000008c,0 0 25px #dfc29826}.card-img{object-fit:cover;border-bottom:1px solid #dfc29826;width:100%;height:230px;transition:transform .6s cubic-bezier(.2,.8,.2,1)}.card:hover .card-img{transform:scale(1.05)}.card-content{flex-direction:column;flex-grow:1;padding:1.6rem 1.6rem 1.8rem;display:flex}.card-content h3{font-family:var(--font-heading);color:var(--cream-snow);letter-spacing:.5px;margin-bottom:.4rem;font-size:1.55rem}.card-price{color:var(--antique-gold);letter-spacing:1px;text-transform:uppercase;margin-bottom:.8rem;font-size:.85rem;font-weight:700}.card-content p{color:var(--muted-text);flex-grow:1;margin-bottom:1.5rem;font-size:.92rem;line-height:1.6}.badge{z-index:5;text-transform:uppercase;letter-spacing:1px;border-radius:50px;padding:5px 14px;font-size:.75rem;font-weight:600;position:absolute;top:15px;right:15px;box-shadow:0 4px 12px #0006}.badge-free{background:var(--forest-sage);color:#fff;border:1px solid var(--forest-sage-light)}.badge-premium{color:var(--antique-gold);border:1px solid var(--antique-gold);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0e1714e0}.btn{font-family:var(--font-body);cursor:pointer;text-align:center;letter-spacing:.5px;border:none;border-radius:50px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.8rem;font-size:.95rem;font-weight:600;text-decoration:none;transition:all .3s cubic-bezier(.2,.8,.2,1);display:inline-flex}.btn-primary,.btn-terracotta{background:var(--terracotta);color:#fff;box-shadow:0 4px 15px var(--terracotta-glow)}.btn-primary:hover,.btn-terracotta:hover{background:var(--terracotta-hover);box-shadow:0 8px 25px var(--terracotta-glow);transform:translateY(-2px)}.btn-secondary,.btn-champagne{background:var(--antique-gold);color:#121c18;box-shadow:0 4px 15px var(--antique-gold-glow);font-weight:700}.btn-secondary:hover,.btn-champagne:hover{background:var(--antique-gold-bright);box-shadow:0 8px 25px var(--antique-gold-glow);transform:translateY(-2px)}.view{width:100%;animation:.5s ease-out fadeIn;display:none}.view.active{flex-direction:column;justify-content:center;min-height:calc(100vh - 8rem);display:flex}.form-container{border-radius:24px;max-width:650px;margin:0 auto;padding:2.2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:var(--antique-gold);margin-bottom:.5rem;font-weight:600;display:block}.form-control{color:#fff;width:100%;font-family:var(--font-body);background:#0c141199;border:1px solid #dfc29840;border-radius:12px;padding:.9rem 1.2rem;font-size:1rem;transition:all .3s}.form-control:focus{border-color:var(--antique-gold);box-shadow:0 0 15px var(--antique-gold-glow);background:#0c1411d9;outline:none}textarea.form-control{resize:vertical;min-height:150px}.back-btn{color:var(--muted-text);cursor:pointer;align-items:center;gap:.4rem;margin-bottom:2rem;font-size:.95rem;text-decoration:none;transition:color .3s;display:inline-flex}.back-btn:hover{color:var(--cream-snow)}.credential-wrapper{text-align:center;border:3px solid var(--antique-gold);background:linear-gradient(135deg,#182823,#1f352e);border-radius:18px;max-width:400px;margin:2rem auto;padding:2.2rem;position:relative;overflow:hidden;box-shadow:0 15px 40px #0009}.credential-wrapper:before{content:"❄";color:var(--antique-gold);opacity:.4;font-size:1.5rem;position:absolute;top:10px;left:15px}.credential-wrapper:after{content:"❄";color:var(--antique-gold);opacity:.4;font-size:1.5rem;position:absolute;top:10px;right:15px}.credential-header{font-family:var(--font-heading);color:var(--antique-gold);text-transform:uppercase;letter-spacing:2px;border-bottom:2px dashed #dfc29866;margin-bottom:1.5rem;padding-bottom:.5rem;font-size:1.5rem}.credential-photo{border:4px solid var(--antique-gold);z-index:1;background:#ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto 1.5rem;font-size:3rem;display:flex;position:relative;transform:translateZ(0);box-shadow:0 4px 10px #0006}.elf-name{font-family:var(--font-magic);color:#fff;text-shadow:2px 2px 4px #0009;margin-bottom:1rem;font-size:2.8rem}.credential-details{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);text-align:left;background:#0000004d;border:1px solid #dfc29840;border-radius:10px;padding:1.2rem}.detail-row{border-bottom:1px dashed #ffffff26;justify-content:space-between;margin-bottom:.6rem;padding-bottom:.6rem;display:flex}.detail-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-label{color:var(--muted-text);font-size:.95rem}.detail-value{color:var(--antique-gold);text-align:right;font-weight:700}.letter-animation-container{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:60vh;display:flex}.envelope{background:#d4a362;border-radius:4px;width:150px;height:100px;margin-bottom:2rem;animation:4s ease-in-out forwards flyToNorthPole;position:relative;box-shadow:0 10px 25px #0006}.envelope:before{content:"";border-top:50px solid #c29253;border-left:75px solid #0000;border-right:75px solid #0000;width:0;height:0;position:absolute;top:0;left:0}@keyframes flyToNorthPole{0%{opacity:1;transform:translateY(0)scale(1)rotate(0)}20%{opacity:1;transform:translateY(-20px)scale(1.1)rotate(-5deg)}80%{opacity:.5;transform:translateY(-300px)scale(.2)rotate(15deg)}to{opacity:0;transform:translateY(-500px)scale(0)rotate(20deg)}}.santa-response{font-family:var(--font-magic);color:#fff;text-align:center;border:2px solid var(--antique-gold);opacity:0;background:#b84a47eb;border-radius:20px;padding:3rem;font-size:2rem;animation:1s ease-out 4s forwards fadeInScale;display:none;box-shadow:0 15px 40px #00000080}.letter-paper{color:#2b1d0c;min-height:400px;line-height:32px;font-family:var(--font-magic);background-color:#fcf7ed;background-image:repeating-linear-gradient(#0000,#0000 31px,#e4d7c0 31px 32px);background-attachment:local;border:1px solid #d4c4a8;border-radius:12px;outline:none;padding:32px 2rem 2rem;font-size:1.8rem;position:relative;overflow-y:auto;box-shadow:inset 0 0 20px #0000000d,0 8px 25px #0000004d}.letter-toolbar{gap:1rem;margin-bottom:1rem;display:flex}.letter-toolbar button{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #dfc29859;border-radius:50px;padding:.5rem 1rem;font-weight:700;transition:all .2s}.letter-toolbar button:hover{background:#dfc2984d}.letter-paper img{border-radius:8px;max-width:100%;margin:10px 0;box-shadow:0 4px 10px #0003}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.mt-4{margin-top:2rem}.text-center{text-align:center}.music-btn{color:var(--antique-gold);cursor:pointer;z-index:100;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121c18d9;border:1px solid #dfc29866;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.5rem;transition:all .3s;display:flex;position:fixed;bottom:2rem;right:2rem;box-shadow:0 8px 25px #0006}.music-btn:hover{border-color:var(--antique-gold);background:#1b2b25f2;transform:scale(1.1)}.wizard-step{animation:.5s ease-out fadeIn;display:none}.wizard-step.active{display:block}.wizard-nav{justify-content:space-between;margin-top:2rem;display:flex}.game-scene{animation:.5s ease-out fadeIn;display:none}.game-scene.active{display:block}@keyframes fadeInOut{0%,to{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}@keyframes fallDown{0%{top:-50px;transform:rotate(0)}to{top:110%;transform:rotate(360deg)}}.certificate-wrapper{color:#2b1f07;text-align:center;background:radial-gradient(circle,#fffef5 0%,#f7eccb 65%,#e8d69f 100%);border:5px double #b8860b;border-radius:12px;max-width:650px;margin:0 auto;padding:1.8rem;box-shadow:0 15px 40px #00000080}.cert-border{border:2px dashed #b84a47;border-radius:6px;padding:2.2rem 1.8rem}.cert-title{font-family:var(--font-heading);color:#8b1e1e;margin-bottom:0;font-size:2.8rem;line-height:1}.cert-subtitle{font-family:var(--font-heading);color:#b8860b;text-transform:uppercase;letter-spacing:3px;margin-bottom:2rem;font-size:1.3rem}.cert-text{font-family:var(--font-body);margin-bottom:1rem;font-size:1.1rem;line-height:1.6}.cert-name{font-family:var(--font-magic);color:#1a472a;text-shadow:2px 2px 4px #d4af374d;margin:1rem 0;font-size:3.8rem}.cert-signature{flex-direction:column;align-items:center;margin-top:2.5rem;display:flex}.sign-name{font-family:var(--font-magic);color:#8b1e1e;font-size:2.5rem;line-height:.8}.sign-line{background:#555;width:200px;height:2px;margin:.5rem 0}.sign-title{color:#555;text-transform:uppercase;letter-spacing:1px;font-size:.85rem}.elf-ear{z-index:10;width:50px;height:70px;position:absolute;top:-20px}.left-ear{left:-20px;transform:rotate(-15deg)}.right-ear{right:-20px;transform:scaleX(-1)rotate(-15deg)}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#080e0cd9;justify-content:center;align-items:center;width:100vw;height:100vh;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:all}.modal-content{border:1.5px solid var(--antique-gold);text-align:center;background:linear-gradient(145deg,#1b2a24fa,#0f1814fa);border-radius:22px;width:90%;max-width:440px;padding:2.2rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);transform:scale(.85);box-shadow:0 25px 60px #000000b3,0 0 30px #dfc29833}.modal-overlay.active .modal-content{transform:scale(1)}.workshop-container{text-align:center;width:100%;max-width:820px;margin:0 auto}.workshop-stage{background:radial-gradient(circle,#233730b3 0%,#0e1714d9 70%);border:1px solid #dfc29840;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;margin:1.8rem 0;padding:2rem 1.5rem 1.5rem;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 30px #00000080,0 10px 30px #00000059}.workshop-spotlight{background:radial-gradient(circle, var(--live-toy-glow,#dfc29859) 0%, transparent 70%);filter:blur(20px);pointer-events:none;z-index:1;border-radius:50%;width:240px;height:240px;transition:all .4s;position:absolute}.workbench-toy{z-index:2;-webkit-user-select:none;user-select:none;font-size:5.5rem;transition:transform .35s cubic-bezier(.34,1.56,.64,1),filter .35s;animation:3.5s ease-in-out infinite floatToy;position:relative}@keyframes floatToy{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(2deg)}}.workbench-pedestal-base{z-index:2;background:radial-gradient(#dfc29880 0%,#0f1915cc 100%);border:1px solid #dfc29859;border-radius:50%;width:170px;height:18px;margin-top:.5rem;transition:all .3s;position:relative;box-shadow:0 4px 15px #0006}.workbench-tag{color:var(--light-text);z-index:2;background:#0e1714d9;border:1px solid #dfc2984d;border-radius:30px;align-items:center;gap:.6rem;margin-top:1rem;padding:.45rem 1.2rem;font-size:.9rem;display:inline-flex;position:relative;box-shadow:0 4px 12px #0000004d}.workbench-color-badge{border:1.5px solid #fff;border-radius:50%;width:14px;height:14px;display:inline-block;box-shadow:0 0 8px}.workshop-section-title{font-family:var(--font-heading);color:var(--antique-gold);justify-content:center;align-items:center;gap:.6rem;margin:1.6rem 0 .9rem;font-size:1.25rem;display:flex}.toys-grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:.85rem;margin-bottom:1.8rem;display:grid}.toy-card{cursor:pointer;-webkit-user-select:none;user-select:none;background:#16241fb3;border:1px solid #dfc29833;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;padding:.9rem .5rem;transition:all .25s cubic-bezier(.2,.8,.2,1);display:flex;position:relative;overflow:hidden}.toy-card:hover{border-color:var(--antique-gold);background:#1e3029d9;transform:translateY(-5px);box-shadow:0 8px 20px #0000004d}.toy-card .toy-emoji{margin-bottom:.3rem;font-size:2.7rem;transition:transform .25s,filter .25s}.toy-card:hover .toy-emoji{transform:scale(1.15)}.toy-card .toy-name{color:#c9d8d1;text-align:center;font-size:.78rem;font-weight:500;line-height:1.2}.toy-card.selected{border-color:var(--selected-color-border,var(--antique-gold));box-shadow:0 0 20px var(--selected-color-glow,#dfc29880);background:#243a32e6;transform:translateY(-5px)scale(1.05)}.toy-card.selected .toy-name{color:#fff;font-weight:600}.toy-card.selected:after{content:"✓";color:var(--selected-color-border,var(--antique-gold));font-size:.75rem;font-weight:700;position:absolute;top:6px;right:8px}.colors-grid{flex-wrap:wrap;justify-content:center;gap:.9rem;margin-bottom:2rem;display:flex}.color-swatch-item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:12px;flex-direction:column;align-items:center;gap:.4rem;min-width:65px;padding:.4rem;transition:transform .2s;display:flex}.color-swatch-item:hover{transform:translateY(-3px)}.color-dot{border:2px solid #ffffff40;border-radius:50%;width:44px;height:44px;transition:all .25s cubic-bezier(.175,.885,.32,1.275);position:relative;box-shadow:0 4px 10px #0006}.color-swatch-item:hover .color-dot{border-color:#ffffffb3;transform:scale(1.12)}.color-swatch-item.selected .color-dot{border-color:#fff;transform:scale(1.22);box-shadow:0 0 18px,0 0 0 3px #ffffffe6}.color-swatch-item .color-label{color:#b5c7bf;text-align:center;font-size:.72rem;transition:color .2s}.color-swatch-item.selected .color-label{color:#fff;text-shadow:0 0 8px #fff6;font-weight:600}.workshop-result-card{border:2px solid var(--antique-gold);background:linear-gradient(155deg,#1b2b25f2,#0f1915fa);border-radius:24px;padding:2.5rem 1.8rem;animation:.5s fadeIn;position:relative;overflow:hidden;box-shadow:0 20px 50px #0009,0 0 30px #dfc29840}.workshop-result-badge{background:var(--terracotta);color:#fff;letter-spacing:1px;text-transform:uppercase;box-shadow:0 4px 15px var(--terracotta-glow);border-radius:50px;margin-bottom:1.2rem;padding:.35rem 1.2rem;font-size:.8rem;font-weight:600;display:inline-block}.workshop-result-toy{margin:1rem 0;font-size:6.5rem;animation:.6s cubic-bezier(.175,.885,.32,1.275) popInToy;display:inline-block}@keyframes popInToy{0%{opacity:0;transform:scale(.3)rotate(-15deg)}70%{transform:scale(1.15)rotate(5deg)}to{opacity:1;transform:scale(1)rotate(0)}}.workshop-cert-seal{color:#1a2520;text-align:center;text-transform:uppercase;background:radial-gradient(circle,#dfc298,#a8834c);border:2px dashed #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:90px;height:90px;margin:1.2rem auto;font-size:.62rem;font-weight:700;line-height:1.15;display:flex;box-shadow:0 4px 15px #0006}.bakery-container{text-align:center;width:100%;max-width:820px;margin:0 auto}.bakery-stage{background:radial-gradient(circle,#412d1ebf 0%,#140f0ceb 80%);border:1.5px solid #dfc29859;border-radius:24px;flex-direction:column;align-items:center;margin:1.8rem 0;padding:2.2rem 1.5rem 1.8rem;display:flex;position:relative;box-shadow:inset 0 0 35px #0009,0 15px 40px #00000073}.cookie-plate{background:radial-gradient(circle at 35% 35%,#5a3d28,#2a1b12);border:4px solid #8d5b4c;border-radius:50%;justify-content:center;align-items:center;width:220px;height:220px;margin-bottom:1.2rem;transition:all .3s;display:flex;position:relative;box-shadow:0 10px 25px #0009,inset 0 0 20px #00000080}.cookie-plate.baking{animation:1.2s ease-in-out infinite alternate ovenBake;box-shadow:0 0 45px #ff6b35,inset 0 0 30px #ff3838}@keyframes ovenBake{0%{filter:brightness(1.1);transform:scale(.98)}to{filter:brightness(1.35)drop-shadow(0 0 20px #ff7b00);transform:scale(1.03)}}.cookie-stage-wrap{-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;width:170px;height:170px;display:flex;position:relative}.cookie-display-emoji{-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 10px #00000080);z-index:2;font-size:6.8rem;transition:transform .3s cubic-bezier(.34,1.56,.64,1),filter .3s;position:relative}.cookie-glaze-aura{pointer-events:none;filter:blur(14px);opacity:.55;z-index:1;border-radius:50%;transition:all .35s;position:absolute;inset:10px}.cookie-toppings-layer{pointer-events:none;z-index:8;width:100%;height:100%;position:absolute;inset:0}.cookie-pearl{border-radius:50%;width:14px;height:14px;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;transform:translate(-50%,-50%)scale(0);box-shadow:1px 2px 4px #00000080,inset -1.5px -1.5px 3px #00000059,inset 1.5px 1.5px 2px #ffffffe6}.cookie-sprinkle{transform-origin:50%;border-radius:4px;width:16px;height:5px;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;box-shadow:1px 1px 3px #0006,inset .5px .5px 1px #fffc}.cookie-star-particle{color:gold;text-shadow:0 0 8px #ffd700e6,0 0 14px #fffffff2;line-height:1;animation:2s ease-in-out infinite alternate twinkleTopping,.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes twinkleTopping{0%{opacity:.8;transform:translate(-50%,-50%)scale(.9)rotate(0)}to{opacity:1;filter:drop-shadow(0 0 8px #ffea79);transform:translate(-50%,-50%)scale(1.2)rotate(15deg)}}.cookie-choco-chip{filter:drop-shadow(1px 2px 2px #0009);font-size:1.3rem;line-height:1;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;transform:translate(-50%,-50%)scale(0)}.cookie-cherry-particle{filter:drop-shadow(1px 2px 4px #00000080);font-size:1.4rem;line-height:1;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;transform:translate(-50%,-50%)scale(0)}.cookie-snow-particle{color:#fff;filter:drop-shadow(0 0 4px #ffffffe6)drop-shadow(1px 2px 3px #0006);line-height:1;animation:.35s cubic-bezier(.175,.885,.32,1.275) forwards popTopping;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes popTopping{0%{opacity:0;transform:translate(-50%,-50%)scale(0)}75%{opacity:1;transform:translate(-50%,-50%)scale(1.25)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.bakery-tag{color:var(--light-text);background:#140f0ce6;border:1px solid #dfc29859;border-radius:30px;align-items:center;gap:.6rem;padding:.45rem 1.4rem;font-size:.9rem;display:inline-flex;box-shadow:0 4px 12px #0000004d}.shapes-grid,.toppings-grid{grid-template-columns:repeat(auto-fill,minmax(105px,1fr));gap:.85rem;margin-bottom:1.6rem;display:grid}.bakery-card-item{cursor:pointer;-webkit-user-select:none;user-select:none;background:#1e1814b3;border:1px solid #dfc29838;border-radius:16px;flex-direction:column;align-items:center;padding:.8rem .4rem;transition:all .25s;display:flex}.bakery-card-item:hover{border-color:var(--antique-gold);background:#2d221ad9;transform:translateY(-4px)}.bakery-card-item.selected{border-color:var(--antique-gold);background:#37261cf2;transform:translateY(-4px)scale(1.05);box-shadow:0 0 18px #dfc29873}.bakery-card-item .item-emoji{margin-bottom:.3rem;font-size:2.6rem;transition:transform .2s}.bakery-card-item:hover .item-emoji{transform:scale(1.15)}.bakery-card-item .item-label{color:#dfc298;text-align:center;font-size:.78rem;font-weight:500}.story-container{text-align:center;width:100%;max-width:860px;margin:0 auto}.storybook-card{border:1.5px solid var(--antique-gold);text-align:left;background:linear-gradient(155deg,#16221df2,#0c1411fa);border-radius:24px;margin-top:1.5rem;padding:2.5rem 2rem;position:relative;overflow:hidden;box-shadow:0 20px 50px #0009,0 0 30px #dfc29833}.storybook-reader-frame{color:#2b1f14;background:radial-gradient(circle at 50% 20%,#fffef7 0%,#fbf3dd 60%,#eeddae 100%);border:4px double #a8834c;border-radius:18px;margin-top:1.5rem;padding:2.5rem 2.2rem;position:relative;box-shadow:0 15px 45px #0009,inset 0 0 45px #a8834c40}.story-header-title{font-family:var(--font-heading);color:#7b1e1e;text-align:center;letter-spacing:1px;margin-bottom:.3rem;font-size:2.1rem}.story-chapter-badge{font-family:var(--font-heading);color:#8c6828;text-align:center;text-transform:uppercase;letter-spacing:3px;margin-bottom:1.5rem;font-size:.85rem;display:block}.story-paragraph{color:#382512;text-align:justify;margin-bottom:1.4rem;font-family:Playfair Display,Georgia,serif;font-size:1.15rem;line-height:1.85}.story-paragraph:first-letter{float:left;color:#8b1e1e;font-size:3.2rem;font-weight:700;line-height:.8;font-family:var(--font-heading);margin-top:.2rem;margin-right:.5rem}.story-controls{flex-wrap:wrap;justify-content:center;gap:1rem;margin-top:2rem;display:flex}.cal-container{width:100%;max-width:1050px;margin:0 auto}.cal-avatar-option{cursor:pointer;-webkit-user-select:none;user-select:none;background:#ffffff14;border:2px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:1.9rem;transition:all .25s;display:flex}.cal-avatar-option:hover{border-color:var(--gold);background:#d4af3733;transform:scale(1.15)}.cal-avatar-option.selected{border-color:var(--gold);box-shadow:0 0 15px var(--gold-glow);background:#d4af3759;transform:scale(1.18)}.cal-advent-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1.2rem;margin-top:1.8rem;display:grid}@media (width<=600px){.cal-advent-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.8rem}}.cal-day-card{text-align:center;cursor:pointer;background:linear-gradient(155deg,#182621e6,#0f1814f5);border:1px solid #d4af3740;border-radius:16px;flex-direction:column;align-items:center;padding:1.2rem .6rem;transition:all .3s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;overflow:hidden;box-shadow:0 4px 15px #0000004d}.cal-day-card:hover{border-color:var(--antique-gold);transform:translateY(-6px)scale(1.03);box-shadow:0 10px 25px #d4af3759}.cal-day-card .day-number{font-family:var(--font-heading);color:var(--antique-gold);text-shadow:0 0 8px #d4af3766;margin-bottom:.3rem;font-size:1.8rem;font-weight:700;line-height:1}.cal-day-card .day-icon{margin:.4rem 0;font-size:2.2rem;transition:transform .3s}.cal-day-card:hover .day-icon{transform:scale(1.2)rotate(6deg)}.cal-day-card .day-title{color:var(--text-color);-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.1rem;font-size:.8rem;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.cal-day-card .day-badge{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);background:#ffffff14;border-radius:12px;margin-top:.6rem;padding:3px 10px;font-size:.72rem;font-weight:600;transition:all .3s}.cal-day-card.completed{border:1.5px solid var(--antique-gold);background:linear-gradient(145deg,#234b38eb,#143024fa);box-shadow:0 4px 20px #3e635373}.cal-day-card.completed:hover{border-color:var(--antique-gold);box-shadow:0 10px 30px #d4af3773}.cal-day-card.completed .day-number{color:var(--antique-gold);text-shadow:0 0 10px #d4af3799}.cal-day-card.completed .day-badge{background:var(--terracotta);color:#fff;box-shadow:0 0 10px #b84a4780}.cal-modal{z-index:2000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;background:#0a100ed9;justify-content:center;align-items:center;width:100vw;height:100vh;padding:1.2rem;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.cal-modal.active{opacity:1;pointer-events:all}.cal-modal-content{border:1.5px solid var(--antique-gold);text-align:center;background:linear-gradient(145deg,#182621fa,#0f1814fa);border-radius:20px;width:100%;max-width:540px;padding:2.2rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);position:relative;transform:scale(.85);box-shadow:0 20px 60px #000000d9,0 0 35px #d4af3733}.cal-modal.active .cal-modal-content{transform:scale(1)}.cal-modal-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:1.3rem;transition:all .2s;display:flex;position:absolute;top:15px;right:18px}.cal-modal-close:hover{background:#ffffff40;transform:rotate(90deg)}.kindness-cert-wrapper{color:#2b1f07;background:radial-gradient(circle,#fffef2 0%,#f7eccb 65%,#e8d69f 100%);border:6px double #b8860b;border-radius:14px;max-width:780px;margin:0 auto;padding:3rem 2rem;position:relative;box-shadow:0 15px 50px #00000080,inset 0 0 60px #b8860b2e}.kindness-cert-border{border:2px solid #b8860b;border-radius:8px;padding:2.5rem 1.8rem;position:relative}.kindness-cert-corner{color:#b8860b;font-size:2rem;line-height:1;position:absolute}.kindness-cert-corner.tl{top:8px;left:8px}.kindness-cert-corner.tr{top:8px;right:8px}.kindness-cert-corner.bl{bottom:8px;left:8px}.kindness-cert-corner.br{bottom:8px;right:8px}.kindness-cert-title{font-family:var(--font-heading);color:#8b1e1e;text-shadow:1px 1px 2px #8b1e1e33;letter-spacing:2px;margin-bottom:.3rem;font-size:2.3rem}.kindness-cert-subtitle{font-family:var(--font-heading);color:#b8860b;letter-spacing:3px;text-transform:uppercase;margin-bottom:1.2rem;font-size:1.1rem}.kindness-cert-name{font-family:var(--font-magic);color:#164627;text-shadow:1px 1px 3px #00000026;margin:.8rem 0;font-size:3.8rem;line-height:1}.kindness-cert-text{color:#3d2f16;max-width:600px;margin:0 auto 1.5rem;font-size:1.05rem;line-height:1.6}.kindness-cert-seal{color:#fff;text-align:center;text-transform:uppercase;background:radial-gradient(circle,#d4af37,#996515);border:3px dashed #fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:90px;height:90px;margin:0 auto;font-size:.65rem;font-weight:700;line-height:1.2;display:flex;box-shadow:0 4px 15px #0000004d}.btn-whatsapp{justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:inline-flex;color:#fff!important;background:#25d366!important;border:1px solid #128c7e!important}.btn-whatsapp:hover{box-shadow:0 0 15px #25d36666;background:#1ebd5b!important}.cal-share-row{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:.5rem;display:flex}.cal-toast{border:1.5px solid var(--antique-gold);color:var(--text-color);z-index:9999;opacity:0;pointer-events:none;background:linear-gradient(135deg,#182621fa,#0f1814fa);border-radius:50px;align-items:center;gap:.6rem;padding:.9rem 1.6rem;font-size:.95rem;transition:all .35s cubic-bezier(.175,.885,.32,1.275);display:flex;position:fixed;bottom:30px;left:50%;transform:translate(-50%)translateY(100px);box-shadow:0 10px 30px #0009,0 0 20px #d4af3740}.cal-toast.show{opacity:1;pointer-events:all;transform:translate(-50%)translateY(0)}.cropper-container{-ms-touch-action:none;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;direction:ltr;font-size:0;line-height:0;position:relative}.cropper-container img{backface-visibility:hidden;image-orientation:0deg;width:100%;height:100%;display:block;min-width:0!important;max-width:none!important;min-height:0!important;max-height:none!important}.cropper-wrap-box,.cropper-canvas,.cropper-drag-box,.cropper-crop-box,.cropper-modal{position:absolute;inset:0}.cropper-wrap-box,.cropper-canvas{overflow:hidden}.cropper-drag-box{opacity:0;background-color:#fff}.cropper-modal{opacity:.5;background-color:#000}.cropper-view-box{outline:1px solid #3399ffbf;width:100%;height:100%;display:block;overflow:hidden}.cropper-dashed{opacity:.5;border:0 dashed #eee;display:block;position:absolute}.cropper-dashed.dashed-h{border-top-width:1px;border-bottom-width:1px;width:100%;height:33.3333%;top:33.3333%;left:0}.cropper-dashed.dashed-v{border-left-width:1px;border-right-width:1px;width:33.3333%;height:100%;top:0;left:33.3333%}.cropper-center{opacity:.75;width:0;height:0;display:block;position:absolute;top:50%;left:50%}.cropper-center:before,.cropper-center:after{content:" ";background-color:#eee;display:block;position:absolute}.cropper-center:before{width:7px;height:1px;top:0;left:-3px}.cropper-center:after{width:1px;height:7px;top:-3px;left:0}.cropper-face,.cropper-line,.cropper-point{opacity:.1;width:100%;height:100%;display:block;position:absolute}.cropper-face{background-color:#fff;top:0;left:0}.cropper-line{background-color:#39f}.cropper-line.line-e{cursor:ew-resize;width:5px;top:0;right:-3px}.cropper-line.line-n{cursor:ns-resize;height:5px;top:-3px;left:0}.cropper-line.line-w{cursor:ew-resize;width:5px;top:0;left:-3px}.cropper-line.line-s{cursor:ns-resize;height:5px;bottom:-3px;left:0}.cropper-point{opacity:.75;background-color:#39f;width:5px;height:5px}.cropper-point.point-e{cursor:ew-resize;margin-top:-3px;top:50%;right:-3px}.cropper-point.point-n{cursor:ns-resize;margin-left:-3px;top:-3px;left:50%}.cropper-point.point-w{cursor:ew-resize;margin-top:-3px;top:50%;left:-3px}.cropper-point.point-s{cursor:s-resize;margin-left:-3px;bottom:-3px;left:50%}.cropper-point.point-ne{cursor:nesw-resize;top:-3px;right:-3px}.cropper-point.point-nw{cursor:nwse-resize;top:-3px;left:-3px}.cropper-point.point-sw{cursor:nesw-resize;bottom:-3px;left:-3px}.cropper-point.point-se{cursor:nwse-resize;opacity:1;width:20px;height:20px;bottom:-3px;right:-3px}@media (width>=768px){.cropper-point.point-se{width:15px;height:15px}}@media (width>=992px){.cropper-point.point-se{width:10px;height:10px}}@media (width>=1200px){.cropper-point.point-se{opacity:.75;width:5px;height:5px}}.cropper-point.point-se:before{content:" ";opacity:0;background-color:#39f;width:200%;height:200%;display:block;position:absolute;bottom:-50%;right:-50%}.cropper-invisible{opacity:0}.cropper-bg{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC)}.cropper-hide{width:0;height:0;display:block;position:absolute}.cropper-hidden{display:none!important}.cropper-move{cursor:move}.cropper-crop{cursor:crosshair}.cropper-disabled .cropper-drag-box,.cropper-disabled .cropper-face,.cropper-disabled .cropper-line,.cropper-disabled .cropper-point{cursor:not-allowed}
