:root{--cream:#fbf8f2;--paper:#fffdf9;--pink:#e58ab3;--pink2:#f8d9e7;--brown:#593832;--soft:#a37e75;--lilac:#d9d1ed;--green:#dfeadb;--line:#eadfd5;--shadow:0 25px 70px rgba(89,56,50,.11)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--brown);font-family:"DM Sans",sans-serif}body.lock{overflow:hidden}button,input,select,textarea{font:inherit}button,a{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{width:min(1120px,calc(100% - 42px));margin:auto}.topbar{background:#f7eee7;border-bottom:1px solid var(--line);font-size:11px;color:var(--soft)}.topbar-inner{display:flex;justify-content:center;position:relative;padding:8px}.topbar button{position:absolute;right:0;top:4px;border:1px solid var(--line);background:#fff;border-radius:99px;padding:5px 11px;color:var(--brown);font-size:10px;font-weight:800}.header{position:sticky;top:0;z-index:20;background:rgba(251,248,242,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(234,223,213,.7)}.nav{height:74px;display:flex;align-items:center;gap:28px}.logo{font:600 24px "Playfair Display",serif;white-space:nowrap}.logo>span:last-child span{color:var(--pink)}.logo-mark{display:inline-grid;place-items:center;width:30px;height:30px;margin-right:7px;border-radius:50%;background:var(--pink2);color:var(--pink);font-family:Arial}.nav-links{display:flex;gap:28px;margin:auto;font-size:12px;color:var(--soft);font-weight:700}.nav-links a:hover{color:var(--brown)}.nav-tools{display:flex;gap:8px;align-items:center}.round-btn,.cart-btn,.admin-btn{border:1px solid var(--line);background:#fffaf7;color:var(--brown);border-radius:99px;height:38px;padding:0 12px;font-size:11px}.round-btn b,.cart-btn b{font-size:9px;color:var(--pink)}.cart-btn{background:var(--pink);border-color:var(--pink);color:#fff}.admin-btn{background:transparent}.mobile-menu{display:none;border:0;background:none;font-size:22px}.hero{position:relative;overflow:hidden;min-height:660px}.hero-grid{min-height:660px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;position:relative}.blob{position:absolute;filter:blur(25px);border-radius:50%;opacity:.65}.blob-pink{width:330px;height:330px;background:#f8d9e7;right:-80px;top:40px}.blob-lilac{width:270px;height:270px;background:#e5dff3;left:-90px;bottom:20px}.blob-green{width:230px;height:230px;background:#e4eedf;right:25%;bottom:-90px}.pill,.eyebrow{font-size:10px;font-weight:800;letter-spacing:.12em;color:#a75e7e}.pill{display:inline-flex;gap:7px;padding:8px 13px;border-radius:99px;background:var(--pink2)}.hero h1{font:500 clamp(54px,7vw,88px)/.93 "Playfair Display",serif;letter-spacing:-.055em;margin:22px 0;color:var(--brown)}em{font-style:normal;color:var(--pink)}.hero-copy p{max-width:520px;color:var(--soft);line-height:1.85;font-size:15px}.hero-actions{display:flex;gap:12px;margin:25px 0}.btn{border:0;border-radius:99px;padding:14px 21px;font-weight:800;font-size:11px;display:inline-flex;justify-content:center;align-items:center;gap:7px}.primary{background:var(--pink);color:#fff;box-shadow:0 12px 28px rgba(229,138,179,.25)}.primary:hover{transform:translateY(-2px)}.ghost{background:#fff;border:1px solid var(--line);color:var(--brown)}.full{width:100%}.trust-row{display:flex;gap:8px;align-items:center;font-size:10px;color:#9b7770}.hero-art{position:relative;min-height:520px}.hero-photo{position:absolute;inset:20px 20px 20px 0;border:14px solid #f4eee7;border-radius:48% 52% 50% 45%;overflow:hidden;box-shadow:var(--shadow);transform:rotate(-2deg)}.hero-photo img{width:100%;height:100%;object-fit:cover}.float-card{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);padding:11px 15px;border-radius:15px;display:flex;gap:7px;align-items:center;font-size:17px;color:var(--pink);animation:float 4s ease-in-out infinite}.float-card small{font-size:9px;color:var(--soft);font-weight:800}.fc1{left:-25px;bottom:75px}.fc2{right:-5px;top:70px;animation-delay:1s}.hero-sticker{position:absolute;right:10px;bottom:25px;width:90px;height:90px;border-radius:50%;background:#fff5bf;display:grid;place-items:center;text-align:center;font-size:11px;font-weight:900;line-height:1.1;transform:rotate(10deg);box-shadow:var(--shadow)}@keyframes float{50%{transform:translateY(-8px) rotate(2deg)}}.quick-stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:22px;background:#fffaf7;overflow:hidden;box-shadow:var(--shadow);position:relative;z-index:2;margin-top:-30px}.quick-stats div{text-align:center;padding:20px;border-right:1px solid var(--line)}.quick-stats div:last-child{border:0}.quick-stats strong{display:block;font:600 28px "Playfair Display",serif}.quick-stats span{font-size:9px;color:var(--soft);text-transform:uppercase;letter-spacing:.08em}.section{padding:105px 0}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:25px}.section-head h2,.promo-card h2,.story h2,.custom-section h2,.tracker-card h2,.contact h2{font:500 clamp(38px,5vw,58px)/.98 "Playfair Display",serif;letter-spacing:-.045em;margin:10px 0}.section-head p,.promo-card p,.story p,.custom-copy p,.tracker-card p,.contact p{color:var(--soft);line-height:1.8;max-width:650px}.shop-actions{display:flex;gap:8px}.shop-actions select{border:1px solid var(--line);background:#fff;border-radius:99px;padding:0 14px;color:var(--soft);font-size:11px}.filter-row{display:flex;gap:8px;margin-bottom:25px}.filter{border:1px solid var(--line);background:transparent;border-radius:99px;padding:10px 15px;font-size:10px;color:var(--soft)}.filter.active{background:var(--brown);color:#fff;border-color:var(--brown)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.25s;box-shadow:0 8px 30px rgba(89,56,50,.05)}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-img{height:235px;position:relative;overflow:hidden;background:#f4eee7}.product-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover img{transform:scale(1.04)}.tag{position:absolute;left:12px;top:12px;background:#fffaf7;padding:6px 9px;border-radius:99px;font-size:8px;font-weight:900;color:#a75e7e}.heart{position:absolute;right:12px;top:12px;width:32px;height:32px;border:0;border-radius:50%;background:#fffaf7;color:var(--brown);font-size:18px}.heart.liked{background:var(--pink);color:#fff}.product-info{padding:15px}.product-info h3{font:600 20px "Playfair Display",serif;margin:0}.details{border:0;background:none;padding:4px 0;color:#a75e7e;font-size:9px;font-weight:800}.product-info p{font-size:11px;color:var(--soft);min-height:32px;line-height:1.5}.product-meta{display:flex;justify-content:space-between;align-items:center;margin-top:14px}.product-meta strong{font-size:13px}.add{border:0;background:var(--pink2);color:#9c5877;border-radius:99px;padding:9px 12px;font-size:9px;font-weight:900}.stock{display:block;margin-top:9px;color:#6d9a73;font-size:8px}.promo-wrap{padding-bottom:30px}.promo-card{border-radius:32px;background:#f6dce8;min-height:360px;padding:55px;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;position:relative}.promo-card p{max-width:520px}.gift-art{position:relative;min-height:250px}.gift-box{position:absolute;width:210px;height:160px;background:#f1a9c5;border-radius:18px;bottom:20px;left:50%;transform:translateX(-50%);box-shadow:0 25px 50px rgba(160,83,117,.18)}.gift-box:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:24px;transform:translateX(-50%);background:#fff0f6}.gift-art>span{position:absolute;font-size:30px;color:#fff}.gift-art>span:nth-child(2){left:15%;top:20%}.gift-art>span:nth-child(3){right:12%;top:12%}.gift-art>span:nth-child(4){right:22%;bottom:20%}.story-grid,.custom-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.story-art{min-height:470px;background:#eee8f5;border-radius:48% 52% 46% 54%;position:relative;display:grid;place-items:center;overflow:hidden}.story-art>span{font:700 17px "DM Sans";letter-spacing:.2em;text-align:center}.story-cookie{position:absolute;width:135px;height:110px;border-radius:50%;background:#f5c9d9;box-shadow:inset 0 -10px 0 rgba(160,94,120,.08),0 18px 30px rgba(89,56,50,.12);display:grid;place-items:center;font-size:34px;color:#fff}.s1{left:14%;top:19%;transform:rotate(-12deg)}.s2{right:12%;top:30%;background:#d7cdef;transform:rotate(14deg)}.s3{left:35%;bottom:16%;background:#f6df91;transform:rotate(7deg)}.feature-list{display:grid;gap:10px;margin-top:25px}.feature-list span{font-size:11px;color:var(--soft)}.gallery .centered{text-align:center;display:block}.centered p{margin-inline:auto}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-auto-rows:240px;gap:14px}.gallery-grid figure{margin:0;position:relative;overflow:hidden;border-radius:22px}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-grid figure:hover img{transform:scale(1.05)}.gallery-grid figcaption{position:absolute;left:12px;bottom:12px;background:#fffaf7e8;padding:7px 10px;border-radius:99px;font-size:9px}.g-tall{grid-row:span 2}.g-wide{grid-column:span 2}.custom-section{background:#f7efe8}.order-form{background:#fff;border:1px solid var(--line);border-radius:25px;padding:25px;box-shadow:var(--shadow)}label{display:block;font-size:10px;font-weight:800;color:var(--soft);margin-bottom:13px}input,select,textarea{width:100%;border:1px solid var(--line);background:#fffaf7;border-radius:12px;padding:12px 13px;color:var(--brown);outline:0;margin-top:6px}input:focus,select:focus,textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px var(--pink2)}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-status{color:#6d9a73;font-size:10px}.mini-note{display:inline-block;background:#fffaf7;border:1px solid var(--line);padding:11px 14px;border-radius:99px;font-size:10px;color:var(--soft)}.tracker-card{display:grid;grid-template-columns:1fr .8fr;gap:40px;align-items:center;background:#e7efe3;border-radius:30px;padding:45px}.tracker-form{background:#fffaf7;padding:18px;border-radius:18px}.tracker-form input{margin:0 0 8px}.tracker-form button{width:100%}#trackingResult{min-height:18px;font-size:10px}.track-ok{color:#6d9a73;margin-right:6px}.contact{padding-top:65px}.contact-cards{display:grid;gap:10px}.contact-cards>a,.contact-cards>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;display:grid;grid-template-columns:35px 1fr;align-items:center}.contact-cards small{grid-column:2;color:var(--soft);font-size:10px}.contact-cards span{font-weight:800}.footer{border-top:1px solid var(--line);padding:28px 0;display:flex;justify-content:space-between;align-items:center;color:var(--soft);font-size:10px}.footer .logo{color:var(--brown);font-size:20px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}.overlay{position:fixed;inset:0;background:rgba(55,32,27,.28);z-index:40;opacity:0;pointer-events:none;transition:.25s}.overlay.show{opacity:1;pointer-events:auto}.drawer,.search-panel{position:fixed;z-index:50;right:-440px;top:0;height:100dvh;width:min(430px,100%);background:var(--paper);box-shadow:-20px 0 70px rgba(0,0,0,.15);transition:.35s;padding:25px;display:flex;flex-direction:column}.drawer.open,.search-panel.open{right:0}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:16px}.drawer-head h2,.search-panel h2{font:500 34px "Playfair Display",serif;margin:0}.close{border:0;background:#f5ece7;border-radius:50%;width:35px;height:35px;font-size:22px;color:var(--brown)}#cartItems,.favoriteItems{overflow:auto;flex:1}.cart-row,.fav-row{display:grid;grid-template-columns:62px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);align-items:center}.cart-row img,.fav-row img{width:62px;height:62px;border-radius:13px;object-fit:cover}.cart-row h4{margin:0 0 3px;font-size:12px}.cart-row small,.fav-row small{display:block;color:var(--soft);font-size:9px}.qty{display:flex;align-items:center;gap:8px;margin-top:8px}.qty button{width:25px;height:25px;border:1px solid var(--line);border-radius:50%;background:#fff}.remove{border:0;background:none;font-size:20px;color:#b28d84}.drawer-foot{border-top:1px solid var(--line);padding-top:15px}.drawer-foot>div{display:flex;justify-content:space-between;margin-bottom:12px;font-size:13px}.whatsapp{background:#e8f3e9;color:#4e8c60;margin-top:8px}.empty-search{text-align:center;color:var(--soft);padding:40px 10px;font-size:11px}.fav-row{grid-template-columns:55px 1fr}.fav-row img{width:55px;height:55px}.fav-row span,.fav-row small{display:block}.text-btn{border:0;background:none;color:#a75e7e;font-size:9px;font-weight:800;padding:4px 0}.search-panel{padding-top:65px}.search-panel input{font-size:13px;margin:20px 0}.search-result{display:flex;width:100%;gap:10px;align-items:center;text-align:left;border:0;background:none;padding:9px 0}.search-result img{width:45px;height:45px;border-radius:10px;object-fit:cover}.search-result span{font-size:11px}.search-result small{display:block;color:var(--soft);margin-top:3px}.modal{position:fixed;inset:0;background:rgba(55,32,27,.35);z-index:60;display:none;place-items:center;padding:20px}.modal.show{display:grid}.modal-card{background:var(--cream);border-radius:28px;box-shadow:0 35px 100px rgba(0,0,0,.25);max-height:94dvh;overflow:auto;position:relative}.product-modal{width:min(900px,100%);padding:25px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.detail-img{aspect-ratio:1;border-radius:22px;overflow:hidden}.detail-img img{width:100%;height:100%;object-fit:cover}.detail-grid h2{font:500 clamp(40px,5vw,60px)/.95 "Playfair Display",serif;margin:15px 0}.detail-grid p{color:var(--soft);line-height:1.8}.detail-price{font-size:23px;font-weight:800;margin:20px 0}.chips{display:flex;flex-wrap:wrap;gap:6px}.chips span{background:#fff;border:1px solid var(--line);padding:8px 10px;border-radius:99px;font-size:9px;color:var(--soft)}.detail-buy{display:flex;gap:10px;margin-top:24px}.detail-buy .btn{flex:1}.checkout-modal{width:min(1000px,100%);padding:24px}.checkout-brand{font:600 20px "Playfair Display",serif}.checkout-brand span{color:var(--pink)}.checkout-brand b{font:800 8px "DM Sans";letter-spacing:.15em;background:#fff0a9;padding:5px 7px;border-radius:99px;margin-left:7px}.progress{display:flex;align-items:center;justify-content:center;gap:9px;margin:22px}.progress span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#eadfd5;color:var(--soft);font-size:10px;font-weight:800}.progress span.active{background:var(--pink);color:#fff}.progress i{width:60px;height:1px;background:var(--line)}.checkout-layout{display:grid;grid-template-columns:1.35fr .75fr;gap:18px}.checkout-main{min-width:0}.demo-banner{background:#edf5ed;color:#568661;border-radius:12px;padding:10px;font-size:9px;margin-bottom:12px}.checkout-step{display:none;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px}.checkout-step.active{display:block}.checkout-step h3{font:500 25px "Playfair Display",serif;margin:0 0 15px}.ship{display:flex!important;align-items:center;gap:9px;border:1px solid var(--line);border-radius:13px;padding:10px;margin-bottom:7px;cursor:pointer}.ship.selected{border-color:var(--pink);box-shadow:0 0 0 2px var(--pink2)}.ship input{width:auto;margin:0}.ship span{flex:1}.ship small{display:block;font-weight:400;margin-top:2px}.credit-card{height:185px;border-radius:21px;padding:20px;background:linear-gradient(135deg,#593832,#a56d7f 55%,#e6a9bf);color:#fff;position:relative;overflow:hidden;margin-bottom:15px;box-shadow:0 18px 40px rgba(89,56,50,.2)}.shine{position:absolute;width:260px;height:260px;border-radius:50%;background:#fff2;right:-90px;top:-130px}.card-top,.card-bottom{display:flex;justify-content:space-between;position:relative;z-index:1;font-size:10px;letter-spacing:.12em}.credit-card>#visualNumber{position:relative;z-index:1;margin-top:38px;font-size:21px;letter-spacing:.1em}.card-bottom{margin-top:18px}.promo{border:0;background:var(--pink2);color:#9c5877;border-radius:99px;padding:8px 12px;font-size:9px;font-weight:800}.promo-message{font-size:9px;color:#6d9a73;min-height:14px}.tiny{font-size:9px;color:var(--soft)}.step-actions{display:flex;gap:8px;margin-top:12px}.step-actions .ghost{width:110px}.step-actions .primary{flex:1}.checkout-summary{background:#f7efe8;border:1px solid var(--line);border-radius:18px;padding:18px;height:max-content;position:sticky;top:5px}.checkout-summary h3{font:500 24px "Playfair Display",serif;margin:0 0 12px}.summary-item{display:grid;grid-template-columns:42px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line);font-size:9px}.summary-item img{width:42px;height:42px;border-radius:9px;object-fit:cover}.summary-item small{display:block;color:var(--soft);margin-top:2px}.sum,.total{display:flex;justify-content:space-between;padding:9px 0;font-size:11px}.discount{color:#5f936b}.total{border-top:1px solid var(--line);margin-top:5px;padding-top:13px;font-size:16px;font-weight:800}.safe{background:#e8f3e9;color:#4f8c60;border-radius:10px;padding:8px;text-align:center;font-size:8px;margin-top:8px}.processing,.success{display:none;text-align:center;padding:80px 20px}.processing.show,.success.show{display:block}.spinner{width:62px;height:62px;border:5px solid var(--pink2);border-top-color:var(--pink);border-radius:50%;animation:spin .8s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.processing h3,.success h3{font:500 32px "Playfair Display",serif}.processing p,.success p{color:var(--soft)}.success{position:relative;overflow:hidden}.success-icon{width:90px;height:90px;background:#e8f3e9;color:#5f936b;border-radius:50%;display:grid;place-items:center;font-size:46px;margin:auto;animation:pop .65s cubic-bezier(.17,.89,.32,1.35)}.success.celebrate .success-icon{animation:successBounce .9s cubic-bezier(.17,.89,.32,1.35)}.success.celebrate .success-label{animation:fadeUp .55s .12s both}.success.celebrate h3{animation:fadeUp .55s .2s both}.success.celebrate p{animation:fadeUp .55s .28s both}.success.celebrate .receipt{animation:fadeUp .55s .36s both}.success.celebrate #doneCheckout{animation:fadeUp .55s .44s both}.success-label{font-size:9px;letter-spacing:.18em;font-weight:900;color:#5f936b;margin-top:14px}.receipt{max-width:330px;margin:20px auto;padding:14px;background:#f7efe8;border-radius:13px;display:flex;justify-content:space-between;font-size:10px}.payment-confetti{position:absolute;left:50%;top:118px;z-index:3;font-size:23px;color:var(--pink);pointer-events:none;animation:confetti 1.25s cubic-bezier(.2,.8,.2,1) forwards}.payment-confetti:nth-child(3n){color:#d8cbea}.payment-confetti:nth-child(4n){color:#d6e5d1}.payment-confetti:nth-child(5n){color:#e5b46e}@keyframes pop{0%{transform:scale(.2);opacity:0}70%{transform:scale(1.08)}100%{transform:scale(1);opacity:1}}@keyframes successBounce{0%{transform:scale(.25) rotate(-12deg);opacity:0}55%{transform:scale(1.16) rotate(5deg);opacity:1}75%{transform:scale(.94) rotate(-2deg)}100%{transform:scale(1) rotate(0)}}@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes confetti{0%{opacity:0;transform:translate(-50%,0) scale(.5) rotate(0)}12%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--x)),var(--y)) rotate(var(--r)) scale(1.15)}}.admin-modal{width:min(1050px,100%);padding:25px}.admin-head{display:flex;justify-content:space-between;align-items:flex-start}.admin-head h2{font:500 40px "Playfair Display",serif;margin:8px 0}.admin-head p{color:var(--soft);font-size:11px}.demo-pill{background:#fff0a9;padding:8px 11px;border-radius:99px;font-size:8px;font-weight:900}.admin-tabs{display:flex;gap:7px;border-bottom:1px solid var(--line);margin:20px 0}.admin-tab{border:0;background:none;padding:11px 13px;color:var(--soft);font-size:10px;font-weight:800}.admin-tab.active{color:var(--brown);border-bottom:2px solid var(--pink)}.admin-view{display:none}.admin-view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metrics>div{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px}.metrics span,.metrics small{display:block;color:var(--soft);font-size:9px}.metrics strong{display:block;font:600 26px "Playfair Display",serif;margin:7px 0}.chart-card{margin-top:14px;background:#f7efe8;border-radius:18px;padding:18px}.chart-head{display:flex;justify-content:space-between}.bars{height:180px;display:flex;align-items:end;gap:15px;padding:20px 10px 0}.bars i{display:block;flex:1;background:linear-gradient(#e58ab3,#f4c9d9);border-radius:8px 8px 2px 2px}.chart-labels{display:flex;gap:15px}.chart-labels span{flex:1;text-align:center;font-size:8px;color:var(--soft)}.admin-table{border:1px solid var(--line);border-radius:15px;overflow:auto}.order-row{min-width:720px;display:grid;grid-template-columns:1.2fr .9fr .8fr .8fr 1fr;gap:10px;padding:12px;border-bottom:1px solid var(--line);font-size:9px;align-items:center}.order-row select{margin:0;padding:7px}.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.inventory-item{display:grid;grid-template-columns:48px 1fr auto;gap:9px;align-items:center;background:#fff;border:1px solid var(--line);padding:9px;border-radius:13px}.inventory-item img{width:48px;height:48px;border-radius:10px;object-fit:cover}.inventory-item small{display:block;color:var(--soft);font-size:8px}.inventory-item strong{font-size:14px}.inventory-item strong.low{color:#c87869}.coupon-create{display:flex;gap:8px;margin-bottom:12px}.coupon-create input{margin:0}.coupon-row{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);background:#fff;padding:12px;border-radius:12px;margin-bottom:7px;font-size:10px}.coupon-row button{border:0;background:none;font-size:18px}.toast{position:fixed;z-index:100;left:50%;bottom:25px;transform:translate(-50%,20px);background:var(--brown);color:#fff;padding:11px 16px;border-radius:99px;font-size:10px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:980px){.nav-links{display:none;position:absolute;top:74px;left:0;right:0;background:var(--cream);padding:20px;flex-direction:column}.nav-links.open{display:flex}.mobile-menu{display:block}.admin-btn{display:none}.hero-grid,.story-grid,.custom-grid,.contact-grid,.checkout-layout,.tracker-card{grid-template-columns:1fr}.hero-art{min-height:430px}.product-grid{grid-template-columns:repeat(2,1fr)}.section-head{display:block}.shop-actions{margin-top:15px}.metrics{grid-template-columns:repeat(2,1fr)}.inventory-grid{grid-template-columns:repeat(2,1fr)}.checkout-summary{position:static}.promo-card{grid-template-columns:1fr}.gift-art{min-height:190px}}@media(max-width:620px){.wrap{width:min(100% - 28px,1120px)}.nav{gap:9px}.logo{font-size:20px}.nav-tools .round-btn:first-child{display:none}.hero-grid{min-height:auto;padding:75px 0}.hero h1{font-size:55px}.hero-actions{flex-direction:column}.hero-art{min-height:330px}.hero-photo{inset:10px 0}.quick-stats{grid-template-columns:1fr 1fr;margin-top:0}.quick-stats div:nth-child(2){border-right:0}.quick-stats div:nth-child(3),.quick-stats div:nth-child(4){border-top:1px solid var(--line)}.product-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:230px}.g-tall,.g-wide{grid-column:auto;grid-row:auto}.two,.detail-grid{grid-template-columns:1fr}.promo-card{padding:35px 25px}.tracker-card{padding:30px 22px}.footer{flex-direction:column;gap:10px;text-align:center}.metrics,.inventory-grid{grid-template-columns:1fr}.coupon-create{flex-direction:column}.topbar-inner{padding-right:45px}.detail-buy{flex-direction:column}.progress i{width:25px}.checkout-modal{padding:16px}.admin-head h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none}.float-card{animation:none}}

/* ===== CookieDoll: etapa 3 / pago exitoso ===== */
.checkout-modal .progress span:nth-of-type(3){transition:transform .3s ease, box-shadow .3s ease, background .3s ease}
.checkout-modal .progress span:nth-of-type(3).active{animation:stage3Pulse 1s ease-in-out infinite;box-shadow:0 0 0 7px rgba(229,138,179,.14)}
@keyframes stage3Pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.18)}}
.processing{display:none;text-align:center;padding:75px 20px;min-height:430px;align-content:center}
.processing.show{display:grid;place-items:center}
.processing .payment-orbit{position:relative;width:120px;height:120px;margin:0 auto 20px}
.processing .spinner{position:absolute;inset:0;width:120px;height:120px;border:7px solid var(--pink2);border-top-color:var(--pink);border-right-color:#d9d1ed;border-radius:50%;animation:spin .75s linear infinite}
.processing .payment-orbit::before,.processing .payment-orbit::after{content:'♡';position:absolute;left:50%;top:50%;font-size:25px;color:var(--pink);animation:orbitHeart 1.4s ease-in-out infinite}
.processing .payment-orbit::after{content:'✦';color:#d9d1ed;animation-delay:.7s}
.processing .payment-center{position:absolute;inset:24px;border-radius:50%;background:#fff;display:grid;place-items:center;font-size:30px;box-shadow:0 10px 30px rgba(89,56,50,.1);animation:centerBeat 1s ease-in-out infinite}
@keyframes orbitHeart{0%{transform:translate(-50%,-50%) rotate(0) translateX(47px) rotate(0);opacity:.3}50%{opacity:1}100%{transform:translate(-50%,-50%) rotate(360deg) translateX(47px) rotate(-360deg);opacity:.3}}
@keyframes centerBeat{0%,100%{transform:scale(.92)}50%{transform:scale(1.06)}}
.processing h3{animation:fadeUp .5s both}.processing p{animation:fadeUp .5s .12s both}
.success{min-height:430px;padding:65px 20px;display:none;text-align:center;position:relative;overflow:hidden}
.success.show{display:block}
.success.celebrate .success-icon{animation:successBounce 1s cubic-bezier(.17,.89,.32,1.35) both}
.success.celebrate .success-label{animation:fadeUp .55s .25s both}
.success.celebrate h3{animation:fadeUp .55s .38s both}
.success.celebrate p{animation:fadeUp .55s .5s both}
.success.celebrate .receipt{animation:receiptPop .65s .62s both}
.success.celebrate #doneCheckout{animation:fadeUp .55s .78s both}
@keyframes receiptPop{0%{opacity:0;transform:translateY(18px) scale(.9)}70%{transform:translateY(-3px) scale(1.02)}100%{opacity:1;transform:translateY(0) scale(1)}}
.payment-confetti{animation:confetti 1.8s cubic-bezier(.2,.8,.2,1) forwards!important;font-size:27px;text-shadow:0 4px 10px rgba(89,56,50,.08)}
/* ==========================================================================
   ANIMACIÓN DINÁMICA DE PAYMENT SUCCESSFUL
   ========================================================================== */

.success {
  text-align: center;
  padding: 20px 10px;
}

.success.active {
  animation: popIn 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards;
}

/* Icono y Contenedor del Checkmark Dinámico */
.success-icon-wrapper {
  position: relative;
  width: 90px;
  height: 90px;
  margin: 0 auto 16px auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.success-circle {
  width: 80px;
  height: 80px;
  background: #ff6b8b;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  animation: pulseGlow 2s infinite;
}

.checkmark-svg {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: block;
  stroke-width: 4;
  stroke: #ff6b8b; /* Color rosado pastel dinámico de CookieDoll */
  stroke-miterlimit: 10;
  box-shadow: inset 0px 0px 0px #ff6b8b;
  animation: fillCircle 0.4s ease-in-out 0.4s forwards, scaleCheck 0.3s ease-in-out 0.9s forwards;
}

.checkmark-circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke-width: 4;
  stroke-miterlimit: 10;
  stroke: #ffffff;
  fill: none;
  animation: strokeCircle 0.6s cubic-bezier(0.65, 0, 0.45, 1) forwards;
}

.checkmark-check {
  transform-origin: 50% 50%;
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  stroke: #ffffff;
  stroke-width: 4;
  stroke-linecap: round;
  animation: strokeCheck 0.3s cubic-bezier(0.65, 0, 0.45, 1) 0.8s forwards;
}

/* Estallido de Confeti pastel */
.confetti-burst {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 1;
}

.confetti-burst span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  opacity: 0;
  animation: burst 0.6s ease-out 0.7s forwards;
}

.confetti-burst span:nth-child(1) { background: #ffb6c1; --tx: -40px; --ty: -40px; }
.confetti-burst span:nth-child(2) { background: #b5ead7; --tx: 40px; --ty: -40px; }
.confetti-burst span:nth-child(3) { background: #e2f0cb; --tx: -50px; --ty: 20px; }
.confetti-burst span:nth-child(4) { background: #c7ceea; --tx: 50px; --ty: 20px; }
.confetti-burst span:nth-child(5) { background: #ffdac1; --tx: 0px; --ty: -55px; }
.confetti-burst span:nth-child(6) { background: #ff9aa2; --tx: 0px; --ty: 55px; }
.confetti-burst span:nth-child(7) { background: #b5ead7; --tx: -45px; --ty: -10px; }
.confetti-burst span:nth-child(8) { background: #c7ceea; --tx: 45px; --ty: -10px; }

/* Animación de la Etiqueta PAYMENT SUCCESSFUL */
.success-label {
  letter-spacing: 2px;
  font-weight: 800;
  color: #ff6b8b;
  opacity: 0;
  animation: slideUpFade 0.4s ease-out 0.6s forwards;
}

.success h3, .success p, .success .receipt, .success #doneCheckout {
  opacity: 0;
  animation: slideUpFade 0.4s ease-out 0.7s forwards;
}

/* Keyframes */
@keyframes strokeCircle {
  100% { stroke-dashoffset: 0; }
}

@keyframes strokeCheck {
  100% { stroke-dashoffset: 0; }
}

@keyframes fillCircle {
  100% { box-shadow: inset 0px 0px 0px 40px #ff6b8b; }
}

@keyframes scaleCheck {
  0%, 100% { transform: none; }
  50% { transform: scale3d(1.15, 1.15, 1); }
}

@keyframes burst {
  0% { transform: translate(-50%, -50%) scale(0); opacity: 1; }
  100% { transform: translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) scale(1); opacity: 0; }
}

@keyframes pulseGlow {
  0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(255, 107, 139, 0.18); }
  50% { transform: scale(1.03); box-shadow: 0 0 15px 5px rgba(255, 107, 139, 0.28); }
}

@keyframes slideUpFade {
  from { transform: translateY(12px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

@keyframes popIn {
  0% { transform: scale(0.8); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}