:root{--cream:#fff8fc;--paper:#ffffff;--coral:#7c3aed;--coral-dark:#5b21b6;--yellow:#ffd166;--cocoa:#24133d;--ink:#2d2038;--green:#138b87;--muted:#716678;--line:rgba(61,35,83,.13);--shadow:0 24px 70px rgba(64,35,94,.15);--sans:'DM Sans',Arial,sans-serif;--display:'Fraunces',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);line-height:1.6}body.locked{overflow:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip{position:fixed;top:-100px;left:16px;z-index:500;background:#fff;padding:10px 15px}.skip:focus{top:16px}.eyebrow{margin:0 0 13px;color:var(--coral-dark);font-size:.71rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.button{min-height:52px;padding:0 23px;border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:12px;font-weight:800;cursor:pointer;transition:.25s}.button.primary{background:var(--coral);color:#fff;box-shadow:0 12px 30px rgba(216,95,73,.24)}.button.primary:hover{background:var(--coral-dark);transform:translateY(-2px)}.button.soft{background:rgba(255,255,255,.92);color:var(--cocoa)}.text-link{color:var(--coral-dark);font-weight:800;display:inline-flex;gap:10px;align-items:center}.text-link:hover{gap:15px}.section{padding:110px 0}
.demo-bar{height:34px;background:var(--cocoa);color:#f8e9dd;padding:0 max(24px,calc((100vw - 1200px)/2));display:flex;align-items:center;justify-content:space-between;font-size:.67rem;letter-spacing:.1em;text-transform:uppercase}.demo-bar div{display:flex;gap:22px}.demo-bar a,.demo-bar button{border:0;background:none;color:#fff;font-size:inherit;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.demo-bar a:hover,.demo-bar button:hover{color:var(--yellow)}
.site-header{height:88px;position:sticky;top:0;z-index:80;background:rgba(255,249,239,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.header-inner{height:100%;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:12px;margin-right:auto}.brand svg{width:48px;height:48px;fill:none;stroke:var(--coral);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.brand span{display:grid;line-height:1}.brand strong{font:700 1.37rem var(--display);color:var(--cocoa)}.brand small{margin-top:7px;color:var(--green);font-size:.55rem;font-weight:800;letter-spacing:.18em}.main-nav{display:flex;gap:25px;align-items:center}.main-nav a{font-size:.84rem;font-weight:700;position:relative}.main-nav a::after{content:'';position:absolute;left:0;right:100%;bottom:-9px;height:2px;background:var(--coral);transition:.2s}.main-nav a:hover::after{right:0}.header-actions{display:flex;align-items:center;gap:9px}.icon-button,.cart-button{height:45px;border:1px solid var(--line);background:var(--paper);display:flex;align-items:center;justify-content:center;cursor:pointer}.icon-button{width:45px;border-radius:50%}.icon-button svg,.cart-button svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8}.cart-button{position:relative;border-radius:999px;padding:0 13px 0 18px;gap:9px;color:#fff;background:var(--cocoa);border-color:var(--cocoa);font-weight:700}.cart-button b{position:absolute;right:-5px;top:-8px;width:21px;height:21px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--cocoa);font-size:.68rem}.menu-toggle{display:none;border:0;background:none}.menu-toggle span{display:block;width:24px;height:2px;background:var(--cocoa);margin:5px}.search-panel{position:absolute;left:0;right:0;top:88px;background:#fff;padding:18px 0;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}.search-panel .wrap{display:flex;gap:12px}.search-panel label{flex:1}.search-panel input{width:100%;height:52px;border:1px solid var(--line);padding:0 18px;outline:none}.search-panel input:focus{border-color:var(--coral)}.search-panel button{width:52px;border:0;background:var(--cocoa);color:#fff;font-size:1.5rem}
.hero{min-height:670px;position:relative;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,249,239,.98) 0%,rgba(255,249,239,.91) 30%,rgba(255,249,239,.28) 58%,rgba(255,249,239,0) 76%)}.hero-content{position:relative;z-index:2;padding:84px 0 70px}.hero-content h1{font:700 clamp(3.5rem,6.4vw,6.4rem)/.93 var(--display);letter-spacing:-.045em;max-width:680px;margin:0;color:var(--cocoa)}.hero-content>p:not(.eyebrow){font-size:1.08rem;color:#5f514b;max-width:520px;margin:27px 0}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero-proof{display:flex;gap:28px;flex-wrap:wrap;margin-top:52px}.hero-proof span{padding-left:14px;border-left:2px solid var(--yellow);color:var(--muted);font-size:.72rem}.hero-proof b{display:block;color:var(--cocoa);font-size:.79rem}.benefit-strip{background:var(--green);color:#fff}.benefit-strip .wrap{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.78rem;font-weight:700}
.section-head{display:grid;grid-template-columns:1.1fr .7fr;gap:70px;align-items:end;margin-bottom:40px}.section-head h2,.occasion-copy h2,.builder-intro h2,.story-copy h2,.faq-grid h2{font:700 clamp(2.8rem,5vw,5rem)/.98 var(--display);letter-spacing:-.035em;color:var(--cocoa);margin:0}.section-head>p{margin:0;color:var(--muted)}.shop-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{min-height:40px;padding:0 17px;border:1px solid var(--line);border-radius:999px;background:transparent;color:var(--cocoa);cursor:pointer;font-weight:700}.filters button.active,.filters button:hover{background:var(--cocoa);color:#fff}.shop-tools>span{font-size:.77rem;color:var(--muted)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:var(--paper);border:1px solid rgba(68,39,31,.1);overflow:hidden;position:relative;transition:.25s}.product-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(68,39,31,.12)}.product-card figure{height:285px;margin:0;overflow:hidden;position:relative;background:#f2e4d8}.product-card img{width:100%;height:100%;object-fit:cover;transition:.55s}.product-card:hover img{transform:scale(1.035)}.product-badge{position:absolute;top:13px;left:13px;background:var(--yellow);color:var(--cocoa);padding:6px 9px;border-radius:999px;font-size:.62rem;font-weight:800}.quick-view{position:absolute;inset:auto 13px 13px 13px;height:41px;border:0;background:rgba(255,255,255,.94);color:var(--cocoa);font-weight:800;cursor:pointer;transform:translateY(60px);transition:.25s}.product-card:hover .quick-view{transform:none}.product-body{padding:20px}.product-category{font-size:.62rem;font-weight:800;letter-spacing:.12em;color:var(--coral-dark);text-transform:uppercase}.product-body h3{font:700 1.45rem/1.1 var(--display);margin:7px 0;color:var(--cocoa)}.product-body p{font-size:.78rem;color:var(--muted);margin:0 0 14px;min-height:38px}.product-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.product-price span{display:block;font-size:.62rem;color:var(--muted)}.product-price strong{font-size:1.1rem;color:var(--cocoa)}.add-button{width:42px;height:42px;border-radius:50%;border:0;background:var(--coral);color:#fff;font-size:1.25rem;cursor:pointer}.add-button:hover{background:var(--coral-dark)}.empty-state{text-align:center;padding:70px}.empty-state span{font-size:3rem}.empty-state h3{font:700 2rem var(--display);margin:10px}.empty-state p{color:var(--muted)}.empty-state button{border:0;background:none;color:var(--coral-dark);font-weight:800;cursor:pointer}
.occasion{background:#f7dfd4}.occasion-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;align-items:center}.occasion-copy>p:not(.eyebrow){color:var(--muted);max-width:520px}.occasion-copy ul{list-style:none;padding:20px 0;margin:22px 0;border-top:1px solid rgba(68,39,31,.13)}.occasion-copy li{display:flex;gap:14px;align-items:center;padding:11px 0;border-bottom:1px solid rgba(68,39,31,.13);font-weight:700}.occasion-copy li span{color:var(--coral-dark);font-size:.67rem}.occasion figure{margin:0;position:relative}.occasion figure img{width:100%;height:610px;object-fit:cover;border-radius:48% 48% 0 0}.occasion figcaption{position:absolute;left:-28px;bottom:30px;background:var(--paper);padding:18px 22px;box-shadow:var(--shadow)}.occasion figcaption b,.occasion figcaption span{display:block}.occasion figcaption b{font:700 1.25rem var(--display)}.occasion figcaption span{font-size:.72rem;color:var(--muted)}
.builder{background:var(--cocoa);color:#fff}.builder-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px}.builder .eyebrow{color:var(--yellow)}.builder-intro h2{color:#fff}.builder-intro>p:not(.eyebrow){color:#d4c4ba}.builder-preview{margin-top:45px;padding:35px;background:rgba(255,255,255,.06);text-align:center}.cake-illustration{width:210px;height:160px;margin:auto;position:relative}.cake-illustration span{position:absolute;left:20px;right:20px;bottom:12px;height:84px;border-radius:12px 12px 24px 24px;background:linear-gradient(#7e3e2c,#54271e);box-shadow:inset 0 14px rgba(255,255,255,.12)}.cake-illustration span::before{content:'';position:absolute;left:-10px;right:-10px;bottom:-12px;height:18px;border-radius:50%;background:#f0d8c7}.cake-illustration i{position:absolute;left:32px;right:32px;bottom:94px;height:29px;border-radius:50% 50% 35% 35%;background:#fff4dc;box-shadow:0 8px #f0b8a8}.builder-preview small{color:#a99488}.builder-form{background:var(--paper);color:var(--ink);padding:44px}.builder-form fieldset{border:0;margin:0 0 33px;padding:0}.builder-form legend{font:700 1.3rem var(--display);margin-bottom:15px}.builder-form legend span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yellow);font:800 .72rem var(--sans);margin-right:8px}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.choice-grid label{position:relative}.choice-grid input{position:absolute;opacity:0}.choice-grid label>span{min-height:63px;padding:10px;border:1px solid var(--line);display:grid;place-items:center;text-align:center;font-size:.8rem;font-weight:700;cursor:pointer}.choice-grid label>span small{display:block;color:var(--muted)}.choice-grid input:checked+span{border-color:var(--coral);background:#fff0e9;color:var(--coral-dark);box-shadow:inset 0 0 0 1px var(--coral)}.message-field{display:grid;gap:5px}.message-field input{height:52px;border:1px solid var(--line);padding:0 14px;outline:none}.message-field small{text-align:right;color:var(--muted);font-size:.68rem}.builder-total{border-top:1px solid var(--line);padding-top:28px;display:flex;align-items:center;justify-content:space-between;gap:20px}.builder-total span,.builder-total strong{display:block}.builder-total span{font-size:.72rem;color:var(--muted)}.builder-total strong{font:700 2rem var(--display);color:var(--cocoa)}
.story-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:75px;align-items:center}.story figure{margin:0;position:relative}.story figure img{width:100%;height:590px;object-fit:cover}.story figure span{position:absolute;left:24px;bottom:24px;background:var(--yellow);padding:12px 16px;font-weight:800;font-size:.75rem}.story-copy>p:not(.eyebrow){color:var(--muted)}.story-values{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:30px;border-top:1px solid var(--line)}.story-values article{padding:19px 12px 19px 0;border-bottom:1px solid var(--line)}.story-values article:nth-child(even){padding-left:18px;border-left:1px solid var(--line)}.story-values strong,.story-values span{display:block}.story-values strong{color:var(--cocoa)}.story-values span{font-size:.72rem;color:var(--muted);margin-top:3px}
.faq-section{background:#f4eadc}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.faq-grid>div:first-child>p:not(.eyebrow){color:var(--muted)}.faqs details{border-bottom:1px solid rgba(68,39,31,.18)}.faqs summary{list-style:none;padding:21px 0;display:flex;justify-content:space-between;gap:20px;font-weight:800;cursor:pointer}.faqs summary::-webkit-details-marker{display:none}.faqs summary span{color:var(--coral);font-size:1.3rem}.faqs details[open] summary span{transform:rotate(45deg)}.faqs details p{margin:0 0 22px;color:var(--muted)}
.site-footer{position:relative;background:var(--green);color:#fff;padding:78px 0 25px}.footer-scallop{position:absolute;left:0;right:0;top:-11px;height:22px;background:radial-gradient(circle at 11px -1px,transparent 12px,var(--green) 13px) 0 0/22px 22px repeat-x}.footer-grid{display:grid;grid-template-columns:1.3fr .55fr .9fr 1fr;gap:55px}.site-footer .brand strong{color:#fff}.site-footer .brand small{color:#ffd785}.site-footer .brand svg{stroke:#ffd785}.footer-brand p{color:#c8d7d0;max-width:330px}.footer-grid nav,.footer-grid>div:not(.footer-brand){display:grid;align-content:start;gap:10px}.footer-grid>nav strong,.footer-grid>div>strong{font:700 1.25rem var(--display);margin-bottom:8px}.footer-grid nav a,.footer-grid>div>span{color:#c8d7d0;font-size:.82rem}.footer-order p{color:#c8d7d0;margin:0}.footer-order button{min-height:48px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:transparent;color:#fff;padding:0 17px;cursor:pointer;font-weight:700}.footer-order button:hover{background:#fff;color:var(--green)}.footer-bottom{margin-top:58px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:20px;color:#9fb7ab;font-size:.68rem}.footer-bottom b{color:#fff}
.cart-drawer{position:fixed;z-index:200;right:0;top:0;bottom:0;width:min(470px,100%);background:var(--paper);transform:translateX(105%);transition:.35s;display:flex;flex-direction:column;box-shadow:-30px 0 70px rgba(40,22,16,.2)}.cart-drawer.open{transform:none}.cart-drawer>header{padding:26px 28px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.cart-drawer header span{font-size:.62rem;letter-spacing:.14em;color:var(--coral-dark);font-weight:800}.cart-drawer h2{font:700 2rem var(--display);margin:0;color:var(--cocoa)}.cart-drawer header button{border:0;background:none;font-size:2rem;cursor:pointer}.cart-items{padding:10px 28px;overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:78px 1fr auto;gap:13px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-item img{width:78px;height:78px;object-fit:cover}.cart-item h3{font:700 1rem var(--display);margin:0}.cart-item small{color:var(--muted);display:block}.cart-item strong{font-size:.82rem}.quantity{display:flex;align-items:center;gap:9px;margin-top:8px}.quantity button{width:25px;height:25px;border:1px solid var(--line);background:#fff;cursor:pointer}.remove-item{border:0;background:none;color:var(--coral-dark);cursor:pointer;font-size:.68rem;padding:0}.cart-empty{margin:auto;text-align:center;padding:45px}.cart-empty>span{font-size:3rem}.cart-empty h3{font:700 1.7rem var(--display);margin:8px}.cart-empty p{color:var(--muted)}.cart-empty button{border:0;background:none;color:var(--coral-dark);font-weight:800;cursor:pointer}.cart-drawer>footer{padding:24px 28px;border-top:1px solid var(--line);background:#fff}.cart-drawer>footer>div{display:flex;justify-content:space-between}.cart-drawer>footer strong{font:700 1.6rem var(--display)}.cart-drawer>footer small{display:block;color:var(--muted);margin:3px 0 18px}.cart-drawer>footer .button{width:100%}.clear-cart{width:100%;border:0;background:none;color:var(--muted);margin-top:10px;cursor:pointer}.scrim{position:fixed;inset:0;z-index:150;background:rgba(42,25,20,.52);backdrop-filter:blur(3px)}
dialog{border:0;padding:0;color:var(--ink);box-shadow:0 35px 100px rgba(49,28,22,.32)}dialog::backdrop{background:rgba(42,25,20,.65);backdrop-filter:blur(4px)}.dialog-close{position:absolute;right:16px;top:14px;z-index:3;border:0;background:rgba(255,255,255,.9);width:38px;height:38px;border-radius:50%;font-size:1.5rem;cursor:pointer}.product-dialog{width:min(980px,calc(100% - 28px));max-height:92vh}.product-dialog-grid{display:grid;grid-template-columns:1fr 1fr}.product-dialog figure{margin:0;min-height:650px}.product-dialog figure img{width:100%;height:100%;object-fit:cover}.dialog-copy{padding:58px 50px;overflow:auto}.dialog-copy h2{font:700 3rem/1 var(--display);color:var(--cocoa);margin:0 0 16px}.dialog-copy>p:not(.eyebrow){color:var(--muted)}.dialog-meta{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.dialog-meta span{padding:6px 10px;background:#f6eadf;font-size:.68rem}.dialog-copy fieldset{border:0;padding:0;margin:27px 0}.dialog-copy legend{font-weight:800;margin-bottom:10px}.dialog-copy fieldset label{display:block;margin-bottom:7px;border:1px solid var(--line);padding:11px;cursor:pointer}.dialog-copy fieldset label:has(input:checked){border-color:var(--coral);background:#fff2eb}.dialog-note{display:grid;gap:7px;font-weight:700;font-size:.75rem}.dialog-note input{height:48px;border:1px solid var(--line);padding:0 12px}.dialog-buy{display:flex;align-items:center;justify-content:space-between;margin-top:28px}.dialog-buy strong{font:700 2rem var(--display);color:var(--cocoa)}
.checkout-dialog{width:min(760px,calc(100% - 28px));max-height:94vh;padding:50px;overflow:auto}.checkout-head h2{font:700 3.4rem/1 var(--display);margin:0;color:var(--cocoa)}.checkout-head>p:not(.eyebrow){color:var(--muted)}.checkout-options{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:27px 0}.checkout-options label{position:relative}.checkout-options input{position:absolute;opacity:0}.checkout-options span{display:grid;border:1px solid var(--line);padding:15px;cursor:pointer}.checkout-options small{color:var(--muted)}.checkout-options input:checked+span{border-color:var(--coral);background:#fff2eb}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-grid label{display:grid;gap:6px;font-size:.7rem;font-weight:800}.form-grid input,.form-grid select{height:49px;border:1px solid var(--line);padding:0 12px;background:#fff}.form-grid .wide{grid-column:1/-1}.payment{border:0;padding:25px 0;margin:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.payment legend{font-weight:800;padding-top:24px}.payment label{display:inline-flex;margin:10px 8px 0 0}.payment span{padding:9px 12px;border:1px solid var(--line);cursor:pointer;font-size:.75rem}.payment input{position:absolute;opacity:0}.payment input:checked+span{background:var(--cocoa);color:#fff}.checkout-summary{display:flex;justify-content:space-between;align-items:end;margin:20px 0}.checkout-summary strong{font:700 2rem var(--display)}.checkout-submit{width:100%}.secure-note{display:block;text-align:center;color:var(--muted);margin-top:12px}.order-success{position:fixed;inset:0;z-index:300;background:rgba(42,25,20,.78);display:grid;place-items:center;padding:20px}.order-success[hidden]{display:none}.order-success>div{width:min(600px,100%);background:var(--paper);padding:55px;text-align:center}.success-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;margin:0 auto 22px;background:#dce9df;color:var(--green);font-size:1.5rem}.order-success h2{font:700 3rem/1 var(--display);margin:0 0 15px;color:var(--cocoa)}.order-success>div>p:not(.eyebrow){color:var(--muted)}.order-code{margin:23px 0;padding:16px;background:#f6eadf}.order-code span,.order-code strong{display:block}.order-code span{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-dark)}.order-code strong{font:700 2rem var(--display)}.text-button{display:block;margin:15px auto;border:0;background:none;color:var(--coral-dark);font-weight:800;cursor:pointer}.order-success small{display:block;color:var(--muted)}
.demo-info{position:fixed;inset:0;z-index:350;background:rgba(42,25,20,.72);display:grid;place-items:center;padding:20px}.demo-info[hidden]{display:none}.demo-info>div{position:relative;background:var(--paper);padding:48px;width:min(560px,100%)}.demo-info h2{font:700 2.6rem/1 var(--display);color:var(--cocoa)}.demo-info li{margin:9px 0}.demo-info>div>button{position:absolute;right:15px;top:12px;border:0;background:none;font-size:1.6rem;cursor:pointer}.demo-info>div>p:last-child{color:var(--muted);font-size:.76rem}.toast{position:fixed;left:50%;bottom:25px;z-index:400;transform:translate(-50%,120px);opacity:0;background:var(--cocoa);color:#fff;padding:13px 19px;border-radius:999px;box-shadow:var(--shadow);transition:.3s;font-size:.78rem}.toast.show{transform:translate(-50%,0);opacity:1}
@media(max-width:1000px){.main-nav{display:none;position:absolute;left:0;right:0;top:88px;background:var(--paper);padding:25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:block}.product-grid{grid-template-columns:repeat(2,1fr)}.occasion-grid,.builder-grid,.story-grid{gap:45px}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.benefit-strip .wrap{overflow:auto;justify-content:flex-start;white-space:nowrap}.section-head{grid-template-columns:1fr;gap:20px}}
@media(max-width:760px){.wrap{width:min(100% - 30px,1200px)}.demo-bar>span{display:none}.demo-bar{justify-content:flex-end}.site-header{height:76px}.main-nav,.search-panel{top:76px}.header-inner{gap:10px}.brand strong{font-size:1.12rem}.brand svg{width:40px;height:40px}.brand small{font-size:.48rem}.cart-button span{display:none}.hero{min-height:780px;align-items:flex-start}.hero-image{object-position:64% center}.hero-shade{background:linear-gradient(180deg,rgba(255,249,239,.97) 0%,rgba(255,249,239,.86) 53%,rgba(255,249,239,.15) 78%)}.hero-content{padding-top:65px}.hero-content h1{font-size:3.6rem}.hero-proof{margin-top:35px;gap:13px}.section{padding:80px 0}.section-head h2,.occasion-copy h2,.builder-intro h2,.story-copy h2,.faq-grid h2{font-size:3rem}.occasion-grid,.builder-grid,.story-grid,.faq-grid{grid-template-columns:1fr}.occasion figure{order:-1}.occasion figure img{height:470px}.occasion figcaption{left:15px}.builder-grid{gap:35px}.builder-form{padding:28px 20px}.story figure img{height:450px}.product-dialog-grid{grid-template-columns:1fr}.product-dialog figure{min-height:330px;height:330px}.dialog-copy{padding:35px 24px}.dialog-copy h2{font-size:2.4rem}.checkout-dialog{padding:38px 22px}.checkout-head h2{font-size:2.7rem}.footer-bottom{display:grid}.product-dialog{overflow:auto}.product-dialog-grid{min-height:0}}
@media(max-width:520px){.product-grid{grid-template-columns:1fr}.product-card figure{height:340px}.shop-tools{align-items:flex-start;flex-direction:column}.choice-grid{grid-template-columns:1fr}.builder-total{align-items:stretch;flex-direction:column}.builder-total .button{width:100%}.story-values{grid-template-columns:1fr}.story-values article:nth-child(even){padding-left:0;border-left:0}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.form-grid,.checkout-options{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.payment label{display:flex;margin-right:0}.payment span{width:100%}.order-success>div{padding:38px 22px}.order-success h2{font-size:2.4rem}.cart-items{padding:10px 18px}.cart-drawer>header,.cart-drawer>footer{padding-left:20px;padding-right:20px}}

/* Identidad Dulce Barrio v2: uva, frambuesa, mantequilla y turquesa */
.demo-bar{background:linear-gradient(90deg,#24133d,#5b21b6);color:#fff}
.demo-bar a:hover,.demo-bar button:hover{color:#ffd166}
.site-header{height:104px;padding:12px 0;background:transparent;border:0;pointer-events:none}
.header-inner{height:80px;padding:0 13px 0 15px;gap:14px;background:rgba(255,255,255,.94);border:1px solid rgba(91,33,182,.1);border-radius:24px;box-shadow:0 14px 45px rgba(61,35,83,.14);backdrop-filter:blur(20px);pointer-events:auto}
.site-header .brand{margin-right:0;gap:10px}
.site-header .brand svg{width:48px;height:48px;padding:9px;border-radius:15px;background:linear-gradient(145deg,#8b5cf6,#ec4899);stroke:#fff;box-shadow:0 9px 20px rgba(124,58,237,.25)}
.site-header .brand strong{font-size:1.27rem;color:#24133d}
.site-header .brand small{color:#7c3aed}
.delivery-chip{height:49px;padding:0 13px;border:0;border-left:1px solid rgba(61,35,83,.11);background:transparent;display:flex;align-items:center;gap:8px;color:#24133d;cursor:pointer;text-align:left}
.delivery-chip>svg{width:20px;fill:none;stroke:#ec4899;stroke-width:1.8}
.delivery-chip>span{display:grid;line-height:1.12}.delivery-chip small{font-size:.5rem;font-weight:800;letter-spacing:.1em;color:#8a7d91}.delivery-chip b{font-size:.69rem;white-space:nowrap}.delivery-chip i{font-style:normal;color:#7c3aed}
.main-nav{margin-left:auto;gap:3px;padding:5px;background:#f6f0ff;border-radius:999px}
.main-nav a{padding:8px 12px;border-radius:999px;font-size:.76rem;color:#4a3a57}
.main-nav a::after{display:none}.main-nav a:hover{background:#fff;color:#5b21b6;box-shadow:0 5px 15px rgba(91,33,182,.1)}
.icon-button{border:0;background:#f6f0ff;color:#5b21b6}.cart-button{height:49px;border:0;background:linear-gradient(135deg,#7c3aed,#ec4899);box-shadow:0 9px 22px rgba(124,58,237,.24)}.cart-button b{background:#ffd166;color:#24133d;border:2px solid #fff}
.search-panel{top:98px;width:min(960px,calc(100% - 48px));left:50%;right:auto;transform:translateX(-50%);padding:13px;border:1px solid rgba(91,33,182,.11);border-radius:18px;box-shadow:0 22px 60px rgba(61,35,83,.2);pointer-events:auto}.search-panel .wrap{width:100%}.search-panel button{border-radius:12px;background:#7c3aed}
.hero-shade{background:linear-gradient(90deg,rgba(255,248,252,.98) 0%,rgba(255,248,252,.91) 30%,rgba(255,248,252,.25) 59%,rgba(255,248,252,0) 76%)}
.hero-content h1{color:#24133d}.hero-content>p:not(.eyebrow){color:#65546f}.hero-proof span{border-left-color:#ec4899}.benefit-strip{background:linear-gradient(90deg,#0f8580,#19a9a3)}
.occasion{background:#f1e9ff}.faq-section{background:#e8f8f6}.product-card figure{background:#f2eafd}.product-badge{background:#ffd166}.builder{background:linear-gradient(145deg,#24133d 0%,#3b1761 58%,#512273 100%)}
.choice-grid input:checked+span,.checkout-options input:checked+span{background:#f4edff}.dialog-meta span,.order-code{background:#f3ecff}.payment input:checked+span{background:#5b21b6}.site-footer{background:#102e39}.footer-scallop{background:radial-gradient(circle at 11px -1px,transparent 12px,#102e39 13px) 0 0/22px 22px repeat-x}.site-footer .brand svg{stroke:#ffd166}.site-footer .brand small{color:#72e0da}.footer-order button:hover{color:#102e39}
@media(max-width:1160px){.delivery-chip{display:none}.main-nav a{padding:8px 10px}.header-inner{gap:9px}}
@media(max-width:1000px){.site-header{height:92px;padding:8px 0}.header-inner{height:76px}.main-nav{top:88px;left:24px;right:24px;margin:0;padding:20px;border-radius:20px;box-shadow:0 20px 55px rgba(61,35,83,.18)}.main-nav a{width:100%;padding:12px 14px}.search-panel{top:88px}}
@media(max-width:760px){.site-header{height:84px;padding:7px 0}.header-inner{height:70px;border-radius:19px}.site-header .brand svg{width:43px;height:43px;border-radius:13px}.main-nav,.search-panel{top:80px}.search-panel{width:calc(100% - 30px)}.hero-shade{background:linear-gradient(180deg,rgba(255,248,252,.98) 0%,rgba(255,248,252,.86) 53%,rgba(255,248,252,.14) 78%)}}
@media(max-width:430px){.site-header .brand small{display:none}.site-header .brand strong{font-size:1rem}.icon-button{display:none}.header-inner{padding-left:10px}.cart-button{padding-left:13px}}

/* Hero editorial v2 */
.hero-v2{min-height:0;display:block;position:relative;padding:68px 0 0;background:radial-gradient(circle at 8% 14%,rgba(236,72,153,.1),transparent 24%),linear-gradient(135deg,#fff8fc 0%,#fbf8ff 62%,#f2ebff 100%);overflow:hidden}
.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(124,58,237,.14) 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(90deg,#000,transparent 37%);opacity:.65}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.86fr 1.14fr;gap:65px;align-items:center;min-height:610px}
.hero-copy{padding:25px 0 75px}.hero-kicker{display:inline-flex;align-items:center;gap:9px;margin:0 0 22px;padding:8px 12px;border:1px solid rgba(124,58,237,.18);border-radius:999px;background:#fff;color:#6d28d9;font-size:.65rem;font-weight:800;letter-spacing:.12em}.hero-kicker span{color:#ec4899}
.hero-copy h1{max-width:590px;margin:0;font:700 clamp(3.8rem,5.8vw,6.25rem)/.91 var(--display);letter-spacing:-.052em;color:#24133d}.hero-copy h1 em{position:relative;display:block;color:#ec4899;font-style:normal;z-index:1}.hero-copy h1 em::after{content:'';position:absolute;left:2px;right:4%;bottom:5px;height:15px;background:#ffd166;z-index:-1;transform:rotate(-1deg);border-radius:999px;opacity:.9}
.hero-copy>p:not(.hero-kicker){max-width:535px;margin:28px 0;color:#695b71;font-size:1.04rem}.hero-v2 .hero-actions{align-items:center}.hero-secondary{display:inline-flex;align-items:center;gap:10px;color:#5b21b6;font-weight:800}.hero-secondary>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f0e7ff;font-size:1.2rem}.hero-trust{display:flex;align-items:center;gap:14px;margin-top:42px}.trust-faces{display:flex}.trust-faces span{width:38px;height:38px;margin-left:-8px;border:3px solid #fff;border-radius:50%;display:grid;place-items:center;background:#7c3aed;color:#fff;font-size:.62rem;font-weight:800}.trust-faces span:first-child{margin-left:0;background:#138b87}.trust-faces span:nth-child(2){background:#ec4899}.trust-faces span:last-child{background:#ffd166;color:#24133d}.hero-trust p,.hero-trust b,.hero-trust small{display:block;margin:0}.hero-trust b{color:#24133d;font-size:.78rem}.hero-trust small{color:#817487;font-size:.69rem}
.hero-visual{position:relative;height:610px}.hero-blob{position:absolute;width:82%;height:88%;right:-8%;top:0;border-radius:48% 52% 35% 65%/55% 35% 65% 45%;background:linear-gradient(145deg,#7c3aed,#ec4899 72%);transform:rotate(5deg)}.hero-blob::after{content:'';position:absolute;width:115px;height:115px;right:7%;bottom:3%;border-radius:50%;background:#ffd166;box-shadow:0 0 0 18px rgba(255,209,102,.2)}
.hero-photo{position:absolute;inset:20px 8px 55px 35px;margin:0;overflow:hidden;border-radius:34px 150px 34px 34px;border:7px solid #fff;box-shadow:0 28px 70px rgba(51,24,72,.24);background:#fff}.hero-v2 .hero-image{position:static;width:100%;height:100%;object-fit:cover;object-position:67% center}.hero-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(36,19,61,.28))}.hero-photo figcaption{position:absolute;z-index:2;right:28px;top:27px;display:flex;align-items:center;gap:9px;padding:9px 13px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 10px 25px rgba(36,19,61,.14)}.hero-photo figcaption i{width:9px;height:9px;border-radius:50%;background:#24b875;box-shadow:0 0 0 4px rgba(36,184,117,.13)}.hero-photo figcaption b,.hero-photo figcaption small{display:block}.hero-photo figcaption b{font-size:.69rem;color:#24133d}.hero-photo figcaption small{font-size:.58rem;color:#776b80}
.hero-product-card{position:absolute;z-index:4;left:-34px;bottom:17px;width:365px;display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:12px;padding:11px;background:rgba(255,255,255,.96);border:1px solid rgba(124,58,237,.12);border-radius:22px;box-shadow:0 20px 55px rgba(36,19,61,.23);backdrop-filter:blur(14px)}.hero-product-card>img{width:76px;height:76px;border-radius:15px;object-fit:cover}.hero-product-card>div>span{font-size:.52rem;font-weight:800;letter-spacing:.1em;color:#7c3aed}.hero-product-card>div>strong{display:block;font:700 1.04rem var(--display);color:#24133d;line-height:1.15}.hero-product-card>div>p{margin:2px 0 0;color:#817487;font-size:.61rem}.hero-product-buy{text-align:right}.hero-product-buy>b{display:block;color:#24133d}.hero-product-buy>button{width:34px;height:34px;border:0;border-radius:50%;background:#ec4899;color:#fff;cursor:pointer}.hero-product-buy>button:hover{background:#7c3aed}
.hero-delivery-card{position:absolute;z-index:4;right:-22px;bottom:115px;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:18px;background:#24133d;color:#fff;box-shadow:0 16px 35px rgba(36,19,61,.24)}.hero-delivery-card>span{font-size:1.25rem}.hero-delivery-card p,.hero-delivery-card b,.hero-delivery-card small{display:block;margin:0}.hero-delivery-card b{font-size:.71rem}.hero-delivery-card small{font-size:.6rem;color:#cbbadd}
.hero-bottom{position:relative;z-index:3;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(91,33,182,.14)}.hero-bottom>span{padding:22px 22px 24px;border-right:1px solid rgba(91,33,182,.14);color:#807287;font-size:.68rem}.hero-bottom>span:last-child{border-right:0}.hero-bottom b{display:block;color:#24133d;font-size:.76rem}
@media(max-width:1100px){.hero-grid{gap:30px;grid-template-columns:.9fr 1.1fr}.hero-copy h1{font-size:4.7rem}.hero-product-card{left:-10px}.hero-delivery-card{right:0}.hero-photo{left:20px}}
@media(max-width:820px){.hero-v2{padding-top:35px}.hero-grid{grid-template-columns:1fr;gap:0}.hero-copy{padding:20px 0 42px;text-align:center}.hero-kicker{margin-left:auto;margin-right:auto}.hero-copy h1{max-width:680px;margin:auto;font-size:4.6rem}.hero-copy>p:not(.hero-kicker){margin:25px auto}.hero-v2 .hero-actions,.hero-trust{justify-content:center}.hero-visual{height:590px}.hero-photo{inset:15px 25px 55px}.hero-blob{width:84%;right:3%}.hero-product-card{left:0}.hero-delivery-card{right:3%}}
@media(max-width:600px){.hero-v2{padding-top:25px}.hero-copy h1{font-size:3.55rem;line-height:.94}.hero-copy h1 em::after{height:10px}.hero-copy>p:not(.hero-kicker){font-size:.92rem}.hero-v2 .hero-actions{align-items:stretch;flex-direction:column}.hero-v2 .hero-actions .button{width:100%}.hero-secondary{justify-content:center}.hero-trust{margin-top:30px;text-align:left}.hero-visual{height:510px}.hero-photo{inset:10px 0 74px;border-width:5px;border-radius:25px 100px 25px 25px}.hero-photo figcaption{right:15px;top:15px}.hero-blob{height:78%;right:-10%;top:6%}.hero-product-card{left:8px;right:8px;bottom:19px;width:auto;grid-template-columns:64px 1fr auto}.hero-product-card>img{width:64px;height:64px}.hero-delivery-card{display:none}.hero-bottom{grid-template-columns:1fr}.hero-bottom>span{border-right:0;border-bottom:1px solid rgba(91,33,182,.14);padding:14px 5px}.hero-bottom>span:last-child{border-bottom:0}}

/* Checkout y pago online demostrativo */
.checkout-dialog{width:min(920px,calc(100% - 28px));padding:0;background:#f8f5fc}
.checkout-head{padding:42px 48px 30px;background:#fff;border-bottom:1px solid var(--line)}.checkout-head h2{font-size:3.1rem}.checkout-head>p:not(.eyebrow){margin-bottom:23px}.checkout-steps{display:flex;gap:0;margin:0;padding:0;list-style:none}.checkout-steps li{position:relative;display:flex;align-items:center;gap:8px;padding-right:38px;color:#978b9e;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em}.checkout-steps li:not(:last-child)::after{content:'';position:absolute;right:10px;width:18px;height:1px;background:#d8cedf}.checkout-steps li span{width:28px;height:28px;border:1px solid #d8cedf;border-radius:50%;display:grid;place-items:center}.checkout-steps li.done{color:#138b87}.checkout-steps li.done span{background:#138b87;border-color:#138b87;color:#fff}.checkout-steps li.active{color:#5b21b6}.checkout-steps li.active span{background:#7c3aed;border-color:#7c3aed;color:#fff}
#checkoutForm{padding:28px 48px 44px}.checkout-block{padding:28px;background:#fff;border:1px solid rgba(91,33,182,.09);border-radius:20px;margin-bottom:16px}.block-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:21px}.block-title>span{width:32px;height:32px;flex:none;border-radius:10px;display:grid;place-items:center;background:#f0e7ff;color:#6d28d9;font-size:.67rem;font-weight:800}.block-title h3{font:700 1.45rem var(--display);margin:0;color:#24133d}.block-title p{margin:0;color:#817487;font-size:.7rem}.checkout-options{margin:0 0 22px}.payment-modern{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:0;border:0}.payment-modern label{display:block;margin:0}.payment-modern .pay-choice{width:100%;min-height:66px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;display:grid;align-content:center;background:#fff;color:#24133d}.payment-modern .pay-choice b,.payment-modern .pay-choice small{display:block}.payment-modern .pay-choice b{font-size:.8rem}.payment-modern .pay-choice small{color:#817487;font-size:.59rem}.payment-modern input:checked+.pay-choice{color:#fff;border-color:transparent;box-shadow:0 9px 22px rgba(91,33,182,.18)}.payment-modern input:checked+.yape{background:#742284}.payment-modern input:checked+.plin{background:#09a8aa}.payment-modern input:checked+.card{background:linear-gradient(135deg,#24133d,#5b21b6)}.payment-modern input:checked+.pickup{background:#138b87}.payment-modern input:checked+.pay-choice small{color:rgba(255,255,255,.72)}
.pay-panel{margin-top:18px;padding:22px;border-radius:17px;background:#f5f0fa;border:1px solid rgba(91,33,182,.1)}.pay-panel[hidden]{display:none}.wallet-panel{display:grid;grid-template-columns:145px 1fr;gap:24px;align-items:center}.fake-qr{width:145px;height:145px;padding:12px;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(36,19,61,.1)}.fake-qr span{display:block;width:100%;height:100%;background:repeating-conic-gradient(#24133d 0 25%,transparent 0 50%) 0 0/18px 18px;mask:radial-gradient(circle at 50% 50%,transparent 0 10px,#000 11px)}.wallet-panel>div:last-child{display:grid}.pay-panel-label{font-size:.62rem;font-weight:800;letter-spacing:.1em;color:#6d28d9}.wallet-panel>div>strong{font:700 2rem var(--display);color:#24133d}.wallet-panel p{margin:2px 0 12px;color:#817487;font-size:.72rem}.wallet-panel label,.card-fields label{display:grid;gap:5px;font-size:.67rem;font-weight:800}.wallet-panel input,.card-fields input{height:45px;border:1px solid #d7cae0;background:#fff;padding:0 12px;outline:none}.wallet-panel input:focus,.card-fields input:focus{border-color:#7c3aed}
.card-panel{display:grid;grid-template-columns:1fr 1.15fr;gap:24px;align-items:center}.demo-card{min-height:178px;border-radius:18px;padding:22px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(145deg,#24133d,#7c3aed 65%,#ec4899);color:#fff;box-shadow:0 15px 35px rgba(91,33,182,.22)}.demo-card span,.demo-card small{font-size:.58rem;letter-spacing:.12em}.demo-card b{font-size:1rem;letter-spacing:.08em}.card-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.card-fields .wide{grid-column:1/-1}.card-fields small{color:#817487;font-size:.61rem}.pickup-panel{display:flex;align-items:center;gap:15px}.pickup-panel>span{font-size:2.2rem}.pickup-panel strong{color:#24133d}.pickup-panel p{margin:3px 0;color:#817487;font-size:.72rem}
.checkout-summary{margin:19px 0;padding:21px 25px;display:grid;background:#24133d;color:#fff;border-radius:18px}.checkout-summary>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;color:#cfc2d9;font-size:.75rem}.checkout-summary .checkout-grand{margin-top:8px;padding-top:13px;border-top:1px solid rgba(255,255,255,.15);align-items:end;color:#fff}.checkout-grand strong{font:700 2rem var(--display)}.checkout-submit{min-height:60px}.success-actions{display:grid;justify-items:center;gap:3px}.success-actions .button{min-width:280px}
@media(max-width:700px){.checkout-head{padding:38px 22px 25px}.checkout-head h2{font-size:2.65rem}.checkout-steps li{padding-right:19px;font-size:.56rem}.checkout-steps li:not(:last-child)::after{display:none}#checkoutForm{padding:20px 14px 32px}.checkout-block{padding:21px 16px}.payment-modern{grid-template-columns:1fr 1fr}.wallet-panel,.card-panel{grid-template-columns:1fr}.fake-qr{margin:auto}.demo-card{max-width:340px;width:100%;margin:auto}.card-fields{grid-template-columns:1fr}.card-fields .wide{grid-column:auto}}
