:root{--wine:#9D735C;--wine-dark:#341522;--cream:#fbf7f0;--champagne:#e2c79f;--pink:#f1e7e4;--ink:#292024;--muted:#786c6d;--line:#e6ddd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'Jost',Arial,sans-serif;font-size:16px;font-weight:400;color:var(--ink);background:var(--cream)}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #bb8a5b;outline-offset:3px}.hidden{display:none!important}.announcement{background:var(--wine);color:#f8eee7;text-align:center;padding:10px 15px;font-size:10px;letter-spacing:.24em;font-weight:700}.header{height:88px;background:rgba(251,247,240,.97);display:flex;align-items:center;justify-content:space-between;gap:15px;padding:0 5%;position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(84,37,56,.08)}.brand{display:flex;align-items:center;gap:12px;color:var(--wine);font-size:20px;letter-spacing:.1em;font-weight:700;white-space:nowrap}.brand em,.footer-brand em{font-style:normal;font-weight:400}.brand-mark{display:grid;place-items:center;border:1.5px solid var(--wine);border-radius:50%;width:44px;height:44px;font-family:'Playfair Display',serif;font-size:26px;position:relative}.brand-mark span{font-size:12px;position:absolute;right:0;top:1px;background:var(--cream)}.nav{display:flex;align-items:center;gap:36px;font-size:12px;letter-spacing:.02em}.nav a:hover{color:#985b70}.header-actions{display:flex;gap:16px;align-items:center}.icon-btn{border:0;background:none;color:var(--wine);font-size:27px}.cart-trigger{background:none;border:0;color:var(--wine);font-size:13px;font-weight:700}.cart-trigger span{background:var(--wine);color:white;border-radius:100px;padding:4px 8px;margin-left:6px}.hero{min-height:650px;height:calc(100svh - 120px);max-height:920px;position:relative;background:#41222b;display:flex;align-items:center;overflow:hidden}.hero video{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 46%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,12,21,.78),rgba(48,21,30,.27) 78%),linear-gradient(0deg,rgba(16,7,13,.3),transparent 50%)}.hero-content{position:relative;z-index:1;max-width:690px;margin-left:10%;color:white}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.24em;color:#9c6c6f}.eyebrow.light{color:var(--champagne)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1{font-size:clamp(67px,8vw,138px);line-height:1.02;margin:20px 0}h1 i,h2 i{font-weight:400}.hero-content p{max-width:430px;font-size:16px;line-height:1.8;color:#f3e9e3;margin-bottom:30px}.btn{border:0;border-radius:2px;padding:17px 26px;display:inline-flex;align-items:center;justify-content:center;gap:28px;font-size:12px;font-weight:700;letter-spacing:.07em;transition:transform .2s,opacity .2s}.btn:hover{transform:translateY(-2px);opacity:.91}.btn.cream{background:var(--cream);color:var(--wine)}.btn.dark{background:var(--wine);color:#fff}.wide{width:100%}.hero-scroll{position:absolute;bottom:30px;right:5%;z-index:2;color:white;font-size:10px;letter-spacing:.24em}.advantages{display:flex;justify-content:space-evenly;gap:12px;flex-wrap:wrap;padding:22px;background:#ede2dc;color:var(--wine);font-size:11px;letter-spacing:.07em}.section{padding:100px max(5%,calc((100vw - 1320px)/2))}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:34px}.section-head h2,.promo h2,.last-cta h2{font-size:clamp(39px,5vw,66px);line-height:1.15;margin:11px 0}.section-head p{color:var(--muted);line-height:1.7;font-size:14px}.section-flower{font-family:Georgia,serif;font-size:90px;color:#c3a1a5}.filters{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:12px;margin-bottom:30px}.filters select,.search-box{height:47px;min-width:0;border:1px solid var(--line);background:#fff;padding:0 15px;color:var(--ink);font-size:12px}.search-box{display:flex;align-items:center;gap:10px;font-size:23px}.search-box input{width:100%;border:0;outline:0;background:transparent;font-size:12px}.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-card{min-width:0}.product-image{height:350px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#eee0de}.product-image img{width:100%;height:100%;object-fit:cover}.product-image:before{content:'';width:210px;height:210px;background:rgba(255,255,255,.42);border-radius:50%;filter:blur(3px);position:absolute}.product-image .mock-bottle{z-index:1;width:115px;height:182px;border:6px solid rgba(255,255,255,.3);background:linear-gradient(135deg,rgba(255,255,255,.9),rgba(255,255,255,.3));box-shadow:14px 17px 24px #5d32452a;position:relative;border-radius:15px 15px 23px 23px;display:flex;justify-content:center;align-items:center}.mock-bottle:before{content:'';width:50px;height:23px;position:absolute;top:-28px;background:linear-gradient(120deg,#ad875e,#e3cba9,#94734b);border-radius:3px 3px 0 0}.mock-bottle span{text-align:center;color:#5a3a45;font-family:Georgia,serif;font-size:19px;letter-spacing:.1em}.product-image.rose{background:#ecd9d9}.product-image.peach{background:#e9d9cd}.product-image.wine{background:#d3bfc5}.product-image.sage{background:#dce5dc}.product-image.gold{background:#e9dfc6}.product-image.blush{background:#eee2e0}.tag{position:absolute;top:17px;left:16px;background:#fff;color:var(--wine);font-size:10px;padding:7px 11px;z-index:2;letter-spacing:.07em}.product-info{padding:18px 2px}.product-info small{color:var(--muted);font-size:11px}.product-info h3{font-size:24px;margin:9px 0 7px}.product-info .sub{font-size:12px;color:var(--muted);margin:0 0 12px}.product-info strong{display:block;font-size:17px;color:var(--wine);margin-bottom:13px}.add-btn{width:100%;padding:12px;border:1px solid var(--wine);color:var(--wine);background:transparent;font-weight:700;font-size:12px}.add-btn:hover{background:var(--wine);color:#fff}.add-btn:disabled{opacity:.5;cursor:not-allowed}.empty{padding:50px;text-align:center;color:var(--muted)}.promo{display:grid;grid-template-columns:1fr 1fr;background:#e9dcd5;min-height:450px}.promo-art{background:radial-gradient(circle at 50% 50%,#e9c6c3,#aa7580);display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;color:#fff}.promo-art>span{font-family:'Playfair Display';font-size:clamp(90px,14vw,230px);opacity:.2;line-height:.6}.abstract-bottle{font-size:180px;line-height:1;opacity:.6}.promo-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:65px 12%}.promo-copy p{font-size:14px;line-height:1.8;color:var(--muted);max-width:380px}.how .centered{display:block;text-align:center}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:50px;text-align:center}.steps>div{border-top:1px solid var(--line);padding:35px 10px}.steps b{font-family:'Playfair Display';font-size:48px;color:#bd969b;font-weight:400}.steps h3{font-size:29px;margin:20px 0 10px}.steps p{color:var(--muted);font-size:13px;line-height:1.8}.last-cta{text-align:center;background:var(--wine);color:white;padding:90px 20px}.last-cta h2{margin:20px 0 28px}footer{padding:50px 5% 24px;text-align:center;background:var(--wine-dark);color:#f9e6d9}.footer-brand{font-size:25px;letter-spacing:.11em;font-weight:700}.footer-links{display:flex;justify-content:center;gap:35px;font-size:12px;margin:28px 0}.footer-links a:hover{text-decoration:underline}footer p{opacity:.75;font-size:12px;margin-top:15px}footer small{opacity:.5;font-size:11px}.overlay{position:fixed;inset:0;background:#1d0d1599;z-index:49}.drawer{position:fixed;right:0;top:0;bottom:0;transform:translateX(101%);transition:transform .25s;background:var(--cream);width:min(440px,100vw);z-index:50;display:flex;flex-direction:column;padding:25px}.drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:15px}.drawer-head h2{margin:0;font-size:32px}.drawer-head span{font:14px 'Jost';color:var(--muted)}.cart-items{flex:1;overflow:auto}.cart-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:20px 0;border-bottom:1px solid var(--line)}.cart-item h3{font-size:19px;margin:0 0 8px}.cart-item p{font-size:12px;color:var(--muted)}.cart-item button{border:1px solid var(--line);background:#fff;padding:4px 10px}.cart-bottom{border-top:1px solid var(--line);padding-top:18px}.cart-total{display:flex;justify-content:space-between;font-size:17px;margin-bottom:18px}.cart-bottom small{display:block;text-align:center;color:var(--muted);font-size:10px;line-height:1.6;margin-top:12px}.modal-wrap{position:fixed;inset:0;z-index:60;background:#170b13aa;display:flex;align-items:center;justify-content:center;padding:15px;overflow:auto}.modal{position:relative;background:var(--cream);width:min(520px,100%);max-height:calc(100vh - 30px);overflow:auto;padding:35px}.modal h2{font-size:35px;margin:12px 0}.modal p{font-size:13px;color:var(--muted);line-height:1.6}.modal-x{position:absolute;right:18px;top:18px;border:0;background:none;font-size:22px}.modal form{display:grid;gap:15px;margin-top:20px}.modal label,.admin-form label{display:grid;gap:6px;font-size:12px;font-weight:700}.modal input,.modal textarea,.admin-form input,.admin-form textarea,.admin-form select{width:100%;padding:12px;border:1px solid var(--line);background:white;color:var(--ink);border-radius:2px}.modal textarea{resize:vertical}.error{color:#a92b39!important}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:80;background:var(--wine);color:#fff;padding:15px 25px;box-shadow:0 8px 30px #0003;text-align:center;max-width:90vw;font-size:13px}
@media(max-width:900px){.nav{display:none}.hero{height:70svh;min-height:550px}.hero-content{margin-left:6%;max-width:520px;margin-right:6%}.filters{grid-template-columns:1fr 1fr}.search-box{grid-column:span 2}.products{grid-template-columns:repeat(2,minmax(0,1fr))}.promo{grid-template-columns:1fr 1fr}.section{padding:65px 5%}.product-image{height:300px}}
@media(max-width:600px){.announcement{font-size:8px}.header{height:65px;padding:0 5%}.brand{font-size:15px;gap:8px}.brand-mark{width:35px;height:35px;font-size:22px}.icon-btn{font-size:23px}.cart-trigger{font-size:11px}.hero{height:82svh;max-height:800px;min-height:550px;align-items:flex-end}.hero video{object-position:center center}.hero-shade{background:linear-gradient(0deg,rgba(30,12,21,.87),rgba(30,12,21,.15) 78%)}.hero-content{margin:0 7% 85px}.hero-content p{font-size:13px}.hero h1{font-size:clamp(62px,14vw,88px)}.hero-scroll{font-size:8px}.advantages{padding:15px;gap:12px;font-size:9px}.section{padding:58px 5%}.section-head h2{font-size:42px}.section-flower{display:none}.filters{grid-template-columns:1fr 1fr;gap:8px}.filters select,.search-box{font-size:11px;padding:0 7px}.products{gap:13px}.product-image{height:225px}.product-image .mock-bottle{transform:scale(.69)}.product-info h3{font-size:20px}.product-info strong{font-size:14px}.product-info{padding:12px 0}.promo{grid-template-columns:1fr}.promo-art{height:230px}.promo-copy{padding:40px 8%}.steps{grid-template-columns:1fr;gap:0}.steps>div{padding:23px 10px}.last-cta h2{font-size:42px}.footer-links{gap:18px;flex-wrap:wrap}.modal{padding:25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Volta storefront — shared cart and admin components retain their base styles. */
.storefront{--wine:#9D735C;--wine-dark:#452032;--cream:#F7F3EB;--champagne:#D5BC8D;--line:#e4d9cd;background:var(--cream);color:#392b30}
.storefront section[id]{scroll-margin-top:108px}.storefront .announcement{background:var(--wine);font-size:10px;padding:11px 16px;letter-spacing:.2em}.storefront .header{height:90px;background:var(--cream);padding:0 6%;border-bottom:1px solid var(--line)}.storefront .brand{font-size:21px;letter-spacing:.13em}.storefront .brand-mark{border-color:var(--wine);width:45px;height:45px}.storefront .nav{gap:30px;font-size:13px}.storefront .header-actions{gap:20px}.storefront .cart-trigger{border:1px solid #d6bfc1;border-radius:30px;padding:10px 14px}.storefront .icon-btn{min-width:44px;min-height:44px}.storefront .hero{height:calc(100svh - 126px);min-height:590px;max-height:850px}.storefront .hero video{object-position:center 44%}.storefront .hero-shade{background:linear-gradient(90deg,#29101dd9 0%,#38162480 48%,#38162408 100%),linear-gradient(0deg,#27151d55,transparent 40%)}.storefront .hero-content{margin-left:9%;max-width:750px;padding:35px 0}.storefront h1{font-size:clamp(76px,8.6vw,128px);letter-spacing:-.055em;line-height:1.03;margin:24px 0}.storefront h1 i{color:#f0d7bb}.storefront .hero-content p{font-size:17px;max-width:450px;line-height:1.8;margin:26px 0 34px}.storefront .btn{border-radius:4px;font-size:12px;min-height:52px;padding:16px 26px}.storefront .hero .btn{background:var(--champagne);color:#482335;min-width:190px}.storefront .hero-scroll{right:6%;bottom:26px;letter-spacing:.18em}.storefront .brand-ribbon{background:#eadbc9;display:flex;justify-content:center;align-items:center;gap:45px;padding:22px;color:var(--wine);font-size:11px;letter-spacing:.12em}.storefront .brand-ribbon span:last-child{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:20px;letter-spacing:0}.storefront .section{padding:86px max(6%,calc((100vw - 1240px)/2))}.storefront .section-head{gap:28px;align-items:flex-end;margin-bottom:35px}.storefront .section-head h2{font-size:clamp(38px,4.2vw,57px);letter-spacing:-.035em;line-height:1.18;margin:12px 0 14px}.storefront .section-head p{margin:0;font-size:14px}.storefront .eyebrow{font-size:10px;letter-spacing:.2em;color:var(--wine)}.storefront .eyebrow.light{color:var(--champagne)}.storefront h2 i{color:var(--wine)}.storefront .text-link{font-size:12px;color:var(--wine);border-bottom:1px solid #b08a93;padding:10px 0;white-space:nowrap}.storefront .products{gap:26px}.storefront .product-card{background:#fffcf7;border:1px solid #e7ded3;border-radius:7px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .2s,transform .2s}.storefront .product-card:hover{box-shadow:0 12px 28px #9D735C10;transform:translateY(-3px)}.storefront .product-image{height:310px}.storefront .product-image img{position:relative;object-fit:contain;padding:15px;z-index:1}.storefront .product-image:before{width:235px;height:235px;background:#fff6;filter:none}.storefront .mock-bottle{transform:rotate(-7deg);box-shadow:20px 25px 30px #56333d24}.storefront .product-info{padding:23px;display:flex;flex-direction:column;flex:1}.storefront .product-info small{font-size:10px;text-transform:uppercase;letter-spacing:.09em;line-height:1.6}.storefront .product-info h3{font-size:26px;line-height:1.2;margin:10px 0}.storefront .product-info .sub{font-size:12px;line-height:1.6;margin-bottom:18px}.storefront .product-info strong{font-size:18px;font-weight:600;margin-top:auto;margin-bottom:18px}.storefront .add-btn{border-radius:3px;background:var(--wine);color:white;min-height:46px;padding:12px;font-size:12px}.storefront .add-btn:hover{background:var(--wine-dark)}.storefront .tag{top:16px;left:16px;background:var(--cream);font-size:9px;letter-spacing:.1em;border-radius:2px;padding:8px 10px}.storefront .price-section{background:#ede0d0}.storefront .price-ranges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.storefront .price-ranges>a{padding:32px;background:var(--cream);border:1px solid #d8c4b0;border-radius:5px;transition:background .2s}.storefront .price-ranges>a:nth-child(2){background:var(--wine);color:var(--cream);border-color:var(--wine)}.storefront .price-ranges>a:hover{outline:2px solid #af8690;outline-offset:3px}.storefront .price-ranges small{font-size:9px;letter-spacing:.16em}.storefront .price-ranges h3{font-size:27px;margin:25px 0 32px;line-height:1.4}.storefront .price-ranges h3 span{display:block;font-size:34px}.storefront .range-action{border-top:1px solid #ad85875c;padding-top:19px;display:flex;justify-content:space-between;font-size:12px}.storefront .range-action b{font-size:20px;font-weight:400}.storefront .catalog-note{font:italic 19px 'Playfair Display',Georgia,serif;color:var(--wine)}.storefront .filters{gap:10px;margin-bottom:32px}.storefront .filters select,.storefront .search-box{height:50px;border-radius:4px;background:#fffcf7}.storefront .new-section{background:#f0e5df}.storefront .edition-label{font-size:9px;letter-spacing:.13em;color:var(--wine);border:1px solid #bc9ca4;border-radius:40px;padding:12px 18px;white-space:nowrap}.storefront .benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;text-align:center;margin-top:45px}.storefront .benefits article{padding:12px 25px}.storefront .benefits article+article{border-left:1px solid #ddcdc5}.storefront .benefits article>span{font-size:32px;color:var(--wine);display:block;margin-bottom:22px}.storefront .benefits h3{font-size:25px;margin-bottom:12px}.storefront .benefits p{font-size:13px;line-height:1.8;color:var(--muted);max-width:290px;margin:auto}.storefront footer{background:var(--wine);text-align:left;padding:58px 6% 22px}.storefront .footer-top{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:start}.storefront .footer-brand{font-size:24px}.storefront footer p{line-height:1.9;opacity:.8}.storefront .footer-invitation{font:32px/1.3 'Playfair Display',Georgia,serif;letter-spacing:-.02em}.storefront .footer-invitation i{color:var(--champagne)}.storefront .footer-links{display:grid;gap:18px;margin:0;font-size:12px}.storefront .footer-bottom{max-width:1240px;margin:40px auto 0;padding-top:20px;border-top:1px solid #ffffff30;display:flex;justify-content:space-between;gap:18px;font-size:11px}.storefront footer small{opacity:.8}.storefront .drawer{box-shadow:-15px 0 50px #32101c20}.storefront .cart-item button{min-height:38px;min-width:38px;border-radius:3px}.storefront textarea:focus-visible{outline:2px solid #bb8a5b;outline-offset:3px}
@media(max-width:900px){.storefront .header{height:78px}.storefront .hero{min-height:570px;height:72svh}.storefront .hero-content{margin-left:7%}.storefront .section{padding:64px 5%}.storefront .product-image{height:260px}.storefront .product-info{padding:18px}.storefront .curated-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.storefront .curated-grid .product-info h3{font-size:22px}.storefront .price-ranges>a{padding:24px}.storefront .price-ranges h3 span{font-size:28px}.storefront .benefits article{padding:8px}.storefront .catalog-note{display:none}}
@media(max-width:600px){.storefront section[id]{scroll-margin-top:90px}.storefront .announcement{font-size:8px;letter-spacing:.13em;padding:10px}.storefront .header{height:72px;padding:0 4%;gap:8px}.storefront .brand{font-size:14px;gap:8px;letter-spacing:.08em}.storefront .brand-mark{width:33px;height:33px;font-size:22px}.storefront .header-actions{gap:3px}.storefront .cart-trigger{padding:8px 9px;font-size:11px}.storefront .cart-trigger span{margin-left:3px;padding:3px 6px}.storefront .hero{height:76svh;min-height:550px;max-height:760px;align-items:flex-end}.storefront .hero-content{margin:0 7% 55px;padding:0}.storefront .hero video{object-position:center}.storefront .hero-shade{background:linear-gradient(0deg,#301221ed 0%,#30122166 65%,#30122115 100%)}.storefront h1{font-size:clamp(61px,15vw,86px);margin:20px 0;letter-spacing:-.045em}.storefront .hero .eyebrow{font-size:8px;letter-spacing:.15em}.storefront .hero-content p{font-size:14px;line-height:1.75;margin:20px 0 25px;max-width:330px}.storefront .hero-scroll{font-size:8px;bottom:20px}.storefront .brand-ribbon{padding:16px;gap:15px}.storefront .brand-ribbon span:first-child{font-size:8px;letter-spacing:.08em}.storefront .brand-ribbon span:last-child{font-size:14px}.storefront .section{padding:52px 5%}.storefront .section-head{align-items:flex-start;flex-direction:column;gap:8px;margin-bottom:26px}.storefront .section-head h2{font-size:38px;margin:10px 0 12px}.storefront .section-head p{font-size:13px}.storefront .section-head.centered{display:block}.storefront .text-link{font-size:11px}.storefront .products,.storefront .curated-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.storefront .curated-grid .product-card:last-child:nth-child(odd){display:none}.storefront .product-image{height:200px}.storefront .product-image:before{width:155px;height:155px}.storefront .product-image .mock-bottle{transform:scale(.68) rotate(-7deg)}.storefront .product-info{padding:14px 11px}.storefront .product-info h3,.storefront .curated-grid .product-info h3{font-size:20px;line-height:1.2}.storefront .product-info small{font-size:8px;letter-spacing:.04em}.storefront .product-info .sub{font-size:11px;margin-bottom:13px}.storefront .product-info strong{font-size:15px;margin-bottom:13px}.storefront .add-btn{font-size:10px;letter-spacing:0;padding:10px 5px;min-height:44px}.storefront .tag{top:10px;left:9px;font-size:8px;padding:6px 7px}.storefront .price-ranges{grid-template-columns:1fr;gap:12px}.storefront .price-ranges>a{padding:24px}.storefront .price-ranges h3{margin:15px 0 20px;font-size:24px}.storefront .price-ranges h3 span{display:inline;font-size:30px}.storefront .range-action{padding-top:14px}.storefront .filters{grid-template-columns:1fr 1fr}.storefront .filters select,.storefront .search-box{font-size:12px}.storefront .search-box{grid-column:span 2}.storefront .search-box input{font-size:16px}.storefront .edition-label{font-size:8px;padding:9px 14px}.storefront .benefits{grid-template-columns:1fr;gap:26px;margin-top:30px}.storefront .benefits article{padding:0 10px 26px}.storefront .benefits article+article{border-left:0;border-top:1px solid var(--line);padding-top:26px}.storefront .benefits article>span{margin-bottom:13px}.storefront footer{padding:42px 6% 22px}.storefront .footer-top{grid-template-columns:1fr;gap:25px}.storefront .footer-invitation{font-size:30px}.storefront .footer-links{display:flex;gap:20px;justify-content:flex-start;flex-wrap:wrap}.storefront .footer-bottom{margin-top:28px}.storefront .modal input,.storefront .modal textarea{font-size:16px}.storefront .drawer{padding:20px}.storefront .modal{padding:28px 22px}}
.storefront .section-head.centered{display:block;text-align:center}
.storefront .drawer{width:min(440px,100%)}
/* Readability and viewport balance at 100% zoom; limited to the storefront. */
.storefront .hero{height:clamp(480px,60svh,560px);min-height:0;max-height:560px}
.storefront .hero video{object-fit:cover;object-position:center 44%}
.storefront .hero-content{padding:24px 0;max-width:680px}
.storefront h1{font-size:clamp(66px,6.3vw,92px);margin:18px 0;line-height:1.04}
.storefront .hero-content p{font-size:16px;line-height:1.65;margin:20px 0 25px;max-width:470px}
.storefront .nav{font-size:15px;gap:26px}
.storefront .section{padding-top:56px;padding-bottom:56px}
.storefront .section-head{margin-bottom:28px}
.storefront .section-head p,.storefront .benefits p,.storefront footer p{font-size:16px;line-height:1.7}
.storefront .text-link,.storefront .range-action,.storefront .footer-links,.storefront .filters select,.storefront .search-box input{font-size:15px}
.storefront .eyebrow,.storefront .edition-label,.storefront .price-ranges small{font-size:13px;letter-spacing:.1em}
.storefront .hero-scroll{font-size:12px;letter-spacing:.12em}
.storefront .brand-ribbon{padding:17px 20px;gap:30px}
.storefront .brand-ribbon span:first-child{font-size:13px;letter-spacing:.08em}
.storefront .product-image{height:280px}
.storefront .product-info{padding:20px}
.storefront .product-info small{font-size:13px;letter-spacing:.04em;text-transform:none;line-height:1.6}
.storefront .product-info h3{font-size:26px;line-height:1.25;margin:10px 0}
.storefront .product-info .sub{font-size:15px;line-height:1.6;margin-bottom:16px}
.storefront .product-info strong{font-size:20px;margin-bottom:16px}
.storefront .add-btn{font-size:15px;min-height:48px;padding:12px 10px;line-height:1.4}
.storefront .hero .btn{font-size:15px;letter-spacing:.03em}
.storefront .tag{font-size:12px;letter-spacing:.05em}
.storefront .price-ranges>a{padding:26px}
.storefront .price-ranges h3{margin:20px 0 24px}
.storefront .benefits{margin-top:30px;gap:24px}
.storefront .benefits article{padding:8px 18px}
.storefront .benefits article>span{margin-bottom:16px}
.storefront .footer-bottom{font-size:14px}
.storefront .footer-bottom small{font-size:14px}
@media(min-width:901px) and (max-height:800px){.storefront .hero{height:480px}.storefront .selection-section{padding-top:36px}}
@media(min-width:601px) and (max-width:900px){
 .storefront .products,.storefront .curated-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .storefront .curated-grid .product-info h3{font-size:25px}
 .storefront .hero{height:clamp(460px,60svh,520px)}
 .storefront .hero-content{margin-left:7%;margin-right:7%}
 .storefront .section{padding-top:46px;padding-bottom:46px}
 .storefront .price-ranges{grid-template-columns:1fr}
 .storefront .price-ranges h3 span{display:inline}
}
@media(max-width:600px){
 .storefront .hero{height:clamp(470px,72svh,560px);min-height:0;max-height:560px}
 .storefront .hero-content{margin:0 7% 48px;padding:0}
 .storefront .hero video{object-position:center 48%}
 .storefront h1{font-size:clamp(56px,13vw,72px);margin:16px 0}
 .storefront .hero .eyebrow{font-size:12px;letter-spacing:.08em}
 .storefront .hero-content p{font-size:16px;line-height:1.6;margin:18px 0 22px}
 .storefront .hero-scroll{font-size:11px;bottom:18px}
 .storefront .brand-ribbon{flex-wrap:wrap;gap:9px 14px;padding:15px}
 .storefront .brand-ribbon span:first-child{font-size:12px}
 .storefront .brand-ribbon span:last-child{font-size:17px}
 .storefront .section{padding-top:40px;padding-bottom:40px}
 .storefront .section-head p{font-size:16px}
 .storefront .products,.storefront .curated-grid{gap:16px}
 .storefront .curated-grid .product-card:last-child:nth-child(odd){display:flex}
 .storefront .product-info{padding:18px}
 .storefront .product-info h3,.storefront .curated-grid .product-info h3{font-size:25px}
 .storefront .product-image{height:240px}
 .storefront .product-image:before{width:200px;height:200px}
 .storefront .product-image .mock-bottle{transform:scale(.85) rotate(-7deg)}
 .storefront .tag{font-size:12px;padding:7px 10px}
 .storefront .price-ranges small{font-size:12px}
 .storefront .filters select{font-size:15px}
 .storefront .search-box input{font-size:16px}
 .storefront .edition-label{font-size:12px;white-space:normal;line-height:1.5}
 .storefront .benefits article{padding:0 10px 20px}
 .storefront .footer-links{font-size:15px}
}
@media(max-width:480px){.storefront .products,.storefront .curated-grid{grid-template-columns:1fr}}
@media(min-width:481px) and (max-width:600px){.storefront .product-info{padding:15px}.storefront .product-info h3,.storefront .curated-grid .product-info h3{font-size:23px}}
@media(max-width:600px) and (max-height:650px){.storefront .hero{height:460px}.storefront h1{font-size:54px}}
/* Individual product pages reuse the storefront cart and visual identity. */
.storefront .product-detail{padding-top:32px}
.product-breadcrumb{display:flex;flex-wrap:wrap;gap:12px;color:var(--muted);font-size:14px;line-height:1.6;margin-bottom:32px}
.product-breadcrumb a{color:var(--wine)}
.product-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:start}
.product-gallery,.product-summary{min-width:0}
.storefront .detail-main-image{height:auto;aspect-ratio:1/1;border-radius:6px}
.storefront .detail-main-image img{height:100%;padding:24px;object-fit:contain}
.storefront .detail-main-image .mock-bottle{transform:scale(1.4) rotate(-7deg)}
.gallery-thumbnails{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.gallery-thumb{width:76px;height:76px;padding:5px;border:1px solid var(--line);background:#fffcf7;border-radius:4px}
.gallery-thumb.selected{border:2px solid var(--wine)}
.gallery-thumb img{width:100%;height:100%;object-fit:contain}
.photo-note{color:var(--muted);font-size:14px;line-height:1.6;margin-top:14px}
.storefront .product-summary h1{font-size:clamp(34px,3.4vw,52px);line-height:1.15;letter-spacing:-.025em;margin:14px 0 20px}
.detail-price{font-size:26px;font-weight:600;color:var(--wine);margin-bottom:14px}
.availability{font-size:14px;color:#44634b}.availability.sold-out{color:var(--wine)}
.detail-description,.set-contents p,.set-contents li,.delivery-note p{font-size:16px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.storefront .product-summary h2{font-size:24px;margin:0 0 12px;letter-spacing:-.01em}
.set-contents{padding:22px 0;margin-top:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.set-contents ul{padding-left:22px;margin:0}.set-contents p{margin:0}
.detail-buy{margin:24px 0}.detail-buy label{font-size:15px;display:block;margin-bottom:10px}
.detail-buy-controls{display:flex;gap:12px}.detail-buy-controls input{width:80px;min-width:0;border:1px solid var(--line);border-radius:4px;background:#fffcf7;padding:12px;font-size:16px}
.detail-buy-controls .btn{flex:1;font-size:15px;letter-spacing:0}
.detail-buy-controls button:disabled{opacity:.5;cursor:not-allowed}
.quantity-hint,#productBuyMessage,#shareMessage{font-size:14px;line-height:1.6;overflow-wrap:anywhere;margin:10px 0 0}
.delivery-note{padding:20px;background:#ede0d0;border-radius:5px}
.delivery-note p{margin-bottom:12px}.delivery-note a{color:var(--wine);font-size:15px;text-decoration:underline;text-underline-offset:4px}
.share-product{border:0;background:none;margin-top:18px;cursor:pointer}
.related-section{margin-top:56px}
.storefront .product-info h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.storefront a.product-image:focus-visible{outline-offset:-4px}
@media(max-width:900px){.product-layout{gap:30px}.gallery-thumb{width:64px;height:64px}.detail-buy-controls{flex-wrap:wrap}.detail-buy-controls .btn{min-width:170px}}
@media(max-width:600px){.product-layout{grid-template-columns:1fr;gap:28px}.product-breadcrumb{margin-bottom:22px}.storefront .product-summary h1{font-size:36px}.related-section{margin-top:40px}.storefront .detail-main-image .mock-bottle{transform:scale(1.05) rotate(-7deg)}.storefront .product-detail{padding-top:24px}.detail-buy-controls{flex-wrap:nowrap}.detail-buy-controls .btn{min-width:0;padding:12px}.gallery-thumb{width:64px;height:64px}}
/* Prices reuse the hero's Playfair Display italic, weight 400. */
.storefront .product-info strong,
.storefront .detail-price,
.storefront .cart-unit-price,
.storefront .cart-item strong,
.storefront #cartTotal{
 font-family:'Playfair Display',Georgia,serif;
 font-style:italic;
 font-weight:400;
 color:var(--wine);
 font-variant-numeric:lining-nums;
}
.storefront .cart-unit-price{font-size:16px}
.storefront .cart-item strong{font-size:19px}
.storefront #cartTotal{font-size:23px}
/* Keep the existing filter layout with one additional classification control. */
@media(min-width:901px){.storefront .filters{grid-template-columns:2fr repeat(4,minmax(0,1fr))}}
/* Complementary type: retain display headings, product names, prices and wordmark. */
.brand,.footer-brand{font-family:'DM Sans',Arial,sans-serif}
.announcement,.eyebrow,.cart-trigger,.btn,.add-btn,.modal label{font-weight:600}
.storefront .nav,.storefront .text-link,.storefront .filters select{font-weight:400}
.storefront .tag,.storefront .product-info small{font-weight:500}
.storefront .modal label,.storefront .modal p,.storefront .cart-item p{font-size:15px}
.storefront .modal input,.storefront .modal textarea{font-weight:400;line-height:1.5}
/* Symmetric tracks keep the navigation centered independently of side widths. */
.storefront .header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.storefront .header>.brand{justify-self:start}
.storefront .header>.nav{justify-self:center}
.storefront .header>.header-actions{justify-self:end}
.storefront .cart-trigger{white-space:nowrap}
.brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.brand-choice{display:flex;flex-direction:column;justify-content:space-between;gap:28px;padding:28px;background:var(--cream);border:1px solid #d8c4b0;border-radius:5px;color:var(--wine);min-width:0;transition:box-shadow .2s}
.brand-choice>span:first-child{font:500 28px/1.3 'Playfair Display',Georgia,serif;overflow-wrap:anywhere}
.brand-choice-action{display:flex;justify-content:space-between;gap:14px;font-size:15px}
.brand-choice:hover{box-shadow:0 8px 24px #9D735C14}
@media(max-width:1100px){.storefront .header{grid-template-columns:minmax(0,1fr) auto;height:auto;min-height:90px;padding-top:10px;padding-bottom:10px;row-gap:6px}.storefront .header>.nav{display:flex;grid-column:1/-1;grid-row:2;gap:26px;flex-wrap:wrap;justify-content:center}.storefront .nav a{display:inline-flex;align-items:center;min-height:40px}.storefront section[id]{scroll-margin-top:145px}}
@media(max-width:900px){.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.storefront .header>.nav{gap:16px}.storefront .header{min-height:110px}.brand-grid{gap:14px}.brand-choice{padding:20px;gap:22px}.brand-choice>span:first-child{font-size:25px}}
@media(max-width:380px){.storefront .header{padding-left:3%;padding-right:3%;column-gap:6px}.storefront .header-actions .icon-btn{min-width:36px;width:36px;padding:0}.brand-grid{grid-template-columns:1fr}}
.storefront .footer-links .footer-social-link{display:inline-flex;align-items:center;gap:9px}
.footer-social-icon{display:block;flex-shrink:0}
/* Sequential benefit entrance: 0, 0.5 and 1 seconds after entering the viewport. */
.storefront #beneficios .benefits-animate{overflow:hidden}
.storefront #beneficios .benefits-animate>article{opacity:0;transform:translateX(48px)}
.storefront #beneficios .benefits-animate.is-visible>article{opacity:1;transform:translateX(0);transition:opacity .7s ease,transform .7s cubic-bezier(.22,.61,.36,1)}
.storefront #beneficios .benefits-animate.is-visible>article:nth-child(2){transition-delay:.5s}
.storefront #beneficios .benefits-animate.is-visible>article:nth-child(3){transition-delay:1s}
@media(prefers-reduced-motion:reduce){.storefront #beneficios .benefits-animate>article{opacity:1;transform:none;transition:none}}
/* Short scroll entrances retain the existing layout and benefit timing. */
.storefront .scroll-reveal{opacity:0;transform:translateY(20px)}
.storefront .scroll-reveal.scroll-revealed{opacity:1;transform:translateY(0);transition:opacity .55s ease var(--reveal-delay,0s),transform .55s cubic-bezier(.22,.61,.36,1) var(--reveal-delay,0s)}
.storefront .brand-choice{transition:box-shadow .2s,translate .2s}
.storefront .hero .btn>span,.storefront .brand-choice-action>span{display:inline-block;transition:transform .2s}
@media(hover:hover) and (pointer:fine){
 .storefront .brand-choice:hover{translate:0 -3px}
 .storefront .hero .btn:hover>span,.storefront .brand-choice:hover .brand-choice-action>span{transform:translate(2px,-2px)}
 
}
@media(max-width:600px){.storefront .scroll-reveal:not(.scroll-revealed){transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){
 .storefront .scroll-reveal{opacity:1;transform:none;transition:none}
 .storefront .brand-choice,.storefront .hero .btn>span,.storefront .brand-choice-action>span{translate:none;transition:none;transform:none}
}
/* Notifications occupy their own space instead of floating over actionable content. */
.storefront .toast{position:static;inset:auto;transform:none;max-width:100%;margin:12px 0 0;padding:10px 14px;font-size:14px;line-height:1.5;box-shadow:none;overflow-wrap:anywhere}
.storefront .notification-slot{flex-shrink:0}
.storefront #cartNotice .toast{margin:12px 0}
.storefront #cartNotice{max-height:24svh;overflow-y:auto}
.storefront #cartItems{min-height:0;overscroll-behavior:contain}
.storefront .drawer{transition:transform .24s ease,visibility 0s .24s;visibility:hidden;pointer-events:none}
.storefront .drawer.open{visibility:visible;pointer-events:auto;transition:transform .24s ease,visibility 0s}
.storefront #cartOverlay{opacity:1;visibility:visible;transition:opacity .16s ease,visibility 0s}
.storefront #cartOverlay.hidden{display:block!important;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility 0s .24s}
.storefront .drawer,.storefront .modal{overscroll-behavior:contain}
.storefront .detail-main-image .gallery-crossfade{position:absolute;inset:0;z-index:2;pointer-events:none}
/* Entrance uses transform; hover uses the independent translate property. */
.storefront .product-card,.storefront .brand-choice{translate:0 0;transition:translate .18s ease,box-shadow .18s ease}
.storefront .product-card:hover{transform:none}
.storefront :is(.product-card,.brand-choice).scroll-reveal{opacity:0;transform:translateY(20px);transition:none}
.storefront :is(.product-card,.brand-choice).scroll-reveal.scroll-revealed{opacity:1;transform:translateY(0);transition:opacity .45s ease var(--reveal-delay,0s),transform .45s cubic-bezier(.22,.61,.36,1) var(--reveal-delay,0s),translate .18s ease,box-shadow .18s ease}
@media(hover:hover) and (pointer:fine){.storefront .product-card:hover{translate:0 -3px}}
@media(max-width:600px){.storefront :is(.product-card,.brand-choice).scroll-reveal:not(.scroll-revealed){transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){
 .storefront .drawer,.storefront .drawer.open,.storefront #cartOverlay,.storefront #cartOverlay.hidden{transition:none}
 .storefront :is(.product-card,.brand-choice),.storefront :is(.product-card,.brand-choice).scroll-reveal,.storefront :is(.product-card,.brand-choice).scroll-reveal.scroll-revealed{opacity:1;transform:none;translate:none;transition:none}
}
@media(prefers-reduced-motion:reduce){.storefront .product-card:hover,.storefront .brand-choice:hover{transform:none;translate:none;transition:none}}

/* One entrance per page load; transforms leave the title's layout intact. */
.storefront .hero h1 i{
 display:inline-block;
 animation:hero-word-entrance 650ms cubic-bezier(0.22,1,0.36,1) both;
}
@keyframes hero-word-entrance{
 from{transform:translateY(30px);opacity:0}
 to{transform:translateY(0);opacity:1}
}
@media(prefers-reduced-motion:reduce){
 .storefront .hero h1 i{animation:none;transform:none;opacity:1}
}
