/*
Theme Name: Oniro Ultra Concept
Theme URI: https://oniro.ae
Author: ChatGPT
Description: Oniro v5 brand polish based on v4-11 baseline with solid brand background, embedded Hello Kooky fonts, clean hero/cloud sections, box sales notice, and Half & Half flavor card.
Version: 5.0.0
License: GPL-2.0+
Text Domain: oniro-ultra
*/

:root{
  --bg:#120c13; --cream:#fff6c9; --pink:#e59ac1; --hot:#ff5cad; --choco:#513024; --ink:#140d12;
  --card:rgba(255,246,201,.12); --glass:rgba(255,255,255,.08); --shadow:rgba(0,0,0,.4);
  --font:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);background:var(--bg);color:#fff;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;background:var(--site-bg, radial-gradient(circle at 10% 10%,rgba(255,92,173,.22),transparent 30%),radial-gradient(circle at 90% 5%,rgba(255,246,201,.14),transparent 28%),linear-gradient(135deg,#10070d,#2b1721 50%,#11090d));background-size:cover;background-position:center;z-index:-3}
body:after{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:84px 84px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),rgba(0,0,0,.18));z-index:-2}
.grain{position:fixed;inset:0;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");z-index:9999;mix-blend-mode:soft-light}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:22px 54px;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to bottom,rgba(0,0,0,.72),rgba(0,0,0,.12));backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.12)}
.brand{display:flex;align-items:center;text-decoration:none;color:#fff;gap:12px}.brand img{max-width:145px;max-height:74px;object-fit:contain}.brand .fallback{font-weight:900;font-size:34px;letter-spacing:-.08em}.nav{display:flex;gap:20px;align-items:center}.nav a{color:#fff;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.03em;opacity:.9;position:relative}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--pink);transition:.28s}.nav a:hover:after{right:0}.nav a:hover{opacity:1}.contact-btn,.menu-toggle{border:0;border-radius:16px;background:#fff;color:#111;padding:14px 22px;font-weight:900;text-decoration:none;box-shadow:0 14px 36px rgba(0,0,0,.25)}.menu-toggle{display:none;font-size:24px;padding:9px 14px}
.ultra-section{position:relative;min-height:1080px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:130px 6vw 90px}.section-shell{width:min(1660px,92vw);margin:auto}.hero{min-height:100vh;padding:0}.hero-slider{position:absolute;inset:0;background:#050505}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease,transform 6s ease;transform:scale(1.04)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-slide video,.hero-slide img{width:100%;height:100%;object-fit:cover;filter:contrast(1.08) saturate(1.05)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),transparent 44%,rgba(0,0,0,.38)),linear-gradient(to top,rgba(18,12,19,.96),transparent 45%)}.hero-copy{position:relative;z-index:4;width:min(1040px,86vw);margin-left:7vw;margin-right:auto;padding-top:100px}.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:9px 14px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(18px)}.hero h1{text-transform:uppercase;margin:22px 0 22px}.hero h1 span{display:block}.hero p{max-width:700px}.slider-arrows{position:absolute;z-index:6;inset:auto 52px 70px auto;display:flex;gap:14px}.slider-arrows button{width:58px;height:58px;border-radius:50%;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff;font-size:28px;backdrop-filter:blur(18px);cursor:pointer}.slider-dots{position:absolute;z-index:6;left:7vw;bottom:75px;display:flex;gap:12px}.slider-dots button{width:36px;height:7px;border-radius:999px;border:0;background:rgba(255,255,255,.28)}.slider-dots button.active{background:var(--pink);width:70px}
.cloud-section{background:linear-gradient(135deg,rgba(255,246,201,.98),rgba(255,216,235,.94));color:var(--ink)}.cloud-stage{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.cloud-copy h2{margin:0;transform-origin:center;animation:cloudBounce 3.5s ease-in-out infinite}.cloud-copy p{margin-top:30px}.cloud-video,.full-media{width:100%;height:100%;min-height:760px;border-radius:46px;overflow:hidden;box-shadow:0 35px 90px rgba(0,0,0,.24);background:rgba(255,255,255,.2)}.cloud-video video,.cloud-video img,.full-media video,.full-media img{width:100%;height:100%;object-fit:contain;display:block}@keyframes cloudBounce{0%,100%{transform:translateY(0) rotate(-1deg) scale(1)}35%{transform:translateY(-14px) rotate(1.4deg) scale(1.035)}70%{transform:translateY(7px) rotate(-.7deg) scale(.99)}}
.favorites,.shop{background:linear-gradient(180deg,rgba(255,246,201,.92),rgba(255,236,249,.88));color:var(--ink)}.section-title{margin:0 0 48px;text-align:center}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(260px,500px));gap:46px;justify-content:center;align-items:start}.shop .product-grid{grid-template-columns:repeat(3,minmax(260px,500px));gap:38px 46px}.product-card{position:relative;min-height:650px;border-radius:34px;padding:18px;background:linear-gradient(145deg,rgba(255,255,255,.64),rgba(255,255,255,.18));border:2px solid rgba(230,156,194,.55);box-shadow:0 22px 55px color-mix(in srgb, var(--shadow) 80%, transparent);transform-style:preserve-3d;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease}.product-card:before{content:"";position:absolute;inset:10px;border-radius:26px;background:linear-gradient(135deg,rgba(255,255,255,.25),transparent 45%);pointer-events:none;opacity:.75}.product-card:hover{transform:translateY(-12px) rotateX(2deg);box-shadow:0 36px 80px color-mix(in srgb, var(--shadow) 96%, transparent);border-color:var(--hot)}.product-media{height:500px;border-radius:26px;overflow:hidden;background:rgba(229,154,193,.22);display:flex;align-items:center;justify-content:center;position:relative;z-index:1}.product-media img{width:100%;height:100%;object-fit:cover;display:block}.product-placeholder{font-size:26px;font-weight:950;color:#d989b4;text-align:center;padding:30px}.product-info{text-align:center;padding:16px 4px 0;position:relative;z-index:2}.product-info h3{margin:0 0 12px}.cart-row{display:flex;gap:10px;justify-content:center;align-items:center}.qty{width:74px;border:2px solid rgba(0,0,0,.2);border-radius:12px;padding:11px;text-align:center;font-weight:900}.add-btn{border:0;border-radius:13px;background:#fff;padding:13px 18px;cursor:pointer;box-shadow:0 9px 0 rgba(0,0,0,.15)}
.baking{background:rgba(0,0,0,.82);padding:0;min-height:1080px}.baking-slider{position:absolute;inset:0;background:#040304}.baking-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease,transform 5s ease;transform:scale(1.025)}.baking-slide.active{opacity:1;transform:scale(1)}.baking-slide video,.baking-slide img{width:100%;height:100%;object-fit:cover;display:block}.baking-progress{position:absolute;left:8vw;right:8vw;bottom:52px;height:5px;background:rgba(255,255,255,.16);border-radius:99px;overflow:hidden}.baking-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--pink),#fff6c9);border-radius:99px}.baking-progress.run span{animation:bakingBar 7s linear forwards}@keyframes bakingBar{from{width:0}to{width:100%}}
.shop{min-height:auto;padding-top:150px;padding-bottom:150px}
.perfect{background:radial-gradient(circle at 20% 15%,rgba(255,92,173,.23),transparent 36%),linear-gradient(135deg,#11070d,#2a1520 52%,#0c0708);padding:0;min-height:1080px}.perfect-shell{height:1080px;position:relative;display:flex;flex-direction:column;justify-content:center}.perfect-title{position:relative;z-index:4;margin:0 0 70px;text-align:center}.perfect-bg-orb{position:absolute;width:620px;height:620px;border-radius:50%;right:-140px;top:120px;background:radial-gradient(circle,rgba(229,154,193,.26),transparent 68%);filter:blur(4px)}.perfect-card-stage{position:relative;min-height:650px}.perfect-card{position:absolute;width:min(430px,30vw);padding:18px 18px 26px;border-radius:36px;background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.18);box-shadow:0 34px 120px rgba(0,0,0,.42);backdrop-filter:blur(18px);transition:.35s}.perfect-card:hover{transform:translateY(-18px) rotate(0deg)!important;border-color:rgba(229,154,193,.8)}.perfect-card-1{left:4%;top:70px;transform:rotate(-8deg)}.perfect-card-2{left:36%;top:0;transform:rotate(5deg)}.perfect-card-3{right:5%;top:115px;transform:rotate(-3deg)}.perfect-img-wrap{height:460px;border-radius:27px;overflow:hidden;background:rgba(255,246,201,.12);display:grid;place-items:center}.perfect-img-wrap img{width:100%;height:100%;object-fit:cover;display:block}.perfect-card h3{text-align:center;margin:22px 0 0}.why{background:linear-gradient(135deg,rgba(255,246,201,.96),rgba(255,235,247,.9));color:#111;padding:0;min-height:1080px}.why-shell{height:1080px;display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.why-quote-card{position:relative;padding:80px 70px;background:rgba(255,246,201,.42);border:8px solid rgba(229,154,193,.65);border-style:solid;border-radius:80px 80px 55px 55px;box-shadow:0 28px 80px rgba(0,0,0,.12)}.why-quote-card:before{content:"";position:absolute;inset:20px;border:5px solid rgba(229,154,193,.55);border-radius:70px 70px 46px 46px;transform:rotate(-3deg);pointer-events:none}.why-title{position:relative;margin:0 0 38px;text-align:center;z-index:2}.why-body{position:relative;text-align:center;z-index:2}.quote-mark{position:absolute;color:#dbbd66;font-size:140px;font-weight:900;line-height:1;opacity:.72}.quote-left{left:36px;top:20px}.quote-right{right:35px;bottom:12px}.why-image-wrap{min-height:720px;display:grid;place-items:center}.why-image-wrap img{max-width:100%;max-height:860px;object-fit:contain;filter:drop-shadow(0 40px 70px rgba(0,0,0,.22))}.dark-note{color:#111;border-color:rgba(0,0,0,.25)}
.cart-float{position:fixed;right:36px;bottom:34px;z-index:1200;width:82px;height:82px;border-radius:50%;border:0;background:#fff;color:#222;font-size:30px;box-shadow:0 24px 70px rgba(0,0,0,.35);cursor:pointer}.cart-count{position:absolute;right:-4px;top:-2px;background:var(--hot);color:#fff;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:950}.cart-modal{position:fixed;inset:0;z-index:2000;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.62);backdrop-filter:blur(14px);padding:20px}.cart-modal.open{display:flex}.cart-box{width:min(620px,94vw);background:linear-gradient(145deg,#fff6c9,#ffe2ef);color:#111;border-radius:34px;padding:32px;box-shadow:0 50px 140px rgba(0,0,0,.48)}.cart-head{display:flex;justify-content:space-between;align-items:center}.cart-head h3{font-size:34px;margin:0;font-weight:950}.close-cart{border:0;background:#111;color:#fff;width:42px;height:42px;border-radius:50%;font-size:22px}.cart-items{margin:22px 0;display:grid;gap:12px}.cart-item{display:flex;justify-content:space-between;gap:14px;padding:14px;border-radius:18px;background:rgba(255,255,255,.6);font-weight:850}.send-order{display:block;text-align:center;text-decoration:none;background:#111;color:#fff;border-radius:18px;padding:18px;font-weight:950}.site-footer{min-height:450px;background:linear-gradient(135deg,#d98db6,#e9a1c8);color:#fff;display:flex;align-items:center}.footer-grid{width:min(1560px,88vw);margin:auto;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:60px;align-items:center}.footer-logo img{max-width:300px}.footer-logo .fallback{font-size:92px;font-weight:950;letter-spacing:-.08em}.footer-logo p{font-size:26px;font-weight:950;margin:10px 0}.footer-nav{display:grid;gap:11px}.footer-nav a{color:#fff;text-decoration:none;font-weight:800}.footer-contact{font-size:24px;font-weight:950;line-height:1.8}.mobile-panel{display:none}.mobile-panel.open{display:grid;position:fixed;top:88px;left:16px;right:16px;z-index:1300;background:rgba(0,0,0,.82);border:1px solid rgba(255,255,255,.18);border-radius:24px;padding:22px;gap:14px;backdrop-filter:blur(18px)}.mobile-panel a{color:#fff;text-decoration:none;font-weight:900;padding:10px}.empty-note{padding:50px;border:2px dashed rgba(255,255,255,.25);border-radius:32px;text-align:center;font-size:28px;font-weight:950;color:rgba(255,255,255,.6)}
@media(max-width:1100px){.perfect-card-stage{display:grid;grid-template-columns:1fr;gap:26px;min-height:0}.perfect-card{position:relative;left:auto!important;right:auto!important;top:auto!important;width:100%;transform:rotate(0deg)!important}.perfect-img-wrap{height:auto;aspect-ratio:1/1}.perfect-shell{height:auto;min-height:100svh;padding:130px 0 80px}.why-shell{height:auto;min-height:100svh;grid-template-columns:1fr;padding:120px 0 70px}.why-image-wrap{min-height:auto}.why-image-wrap img{max-height:520px}}
@media(max-width:900px){.site-header{padding:12px 18px}.brand img{max-width:118px}.nav{display:none}.menu-toggle{display:block}.contact-btn{padding:12px 16px}.ultra-section{min-height:100svh;padding:110px 22px 60px}.hero-copy{margin:0 auto;padding:120px 20px 0}.slider-arrows{right:20px;bottom:32px}.slider-dots{left:22px;bottom:45px}.cloud-stage{grid-template-columns:1fr;gap:25px}.cloud-copy h2{text-align:center}.cloud-copy p{text-align:center}.cloud-video,.full-media{min-height:55svh;border-radius:26px}.product-grid,.shop .product-grid{grid-template-columns:1fr;gap:32px}.product-card{min-height:auto}.product-media{height:auto;aspect-ratio:500/650}.baking{min-height:100svh}.baking-slide video,.baking-slide img{object-fit:cover}.baking-progress{left:22px;right:22px;bottom:28px}.perfect{min-height:auto}.perfect-title{margin-bottom:36px}.why{min-height:auto}.why-quote-card{padding:76px 28px 60px;border-radius:48px}.quote-mark{font-size:90px}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-logo img{margin:auto}.footer-contact{font-size:18px}.cart-float{width:66px;height:66px;right:18px;bottom:18px}}

/* === Oniro final polish requested edits === */
.brand{display:flex!important;align-items:center!important;min-width:116px;position:relative;z-index:4}.brand img{display:block!important;width:auto!important;max-width:180px!important;max-height:92px!important;object-fit:contain!important;opacity:1!important;visibility:visible!important}.site-header{overflow:visible!important}.site-header .brand .fallback{display:block!important;color:#fff!important}
.cloud-video{background:transparent!important;box-shadow:none!important;border:0!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;padding:0!important;outline:0!important}.cloud-video:before,.cloud-video:after{display:none!important}.cloud-video video,.cloud-video img{background:transparent!important;box-shadow:none!important;border:0!important;filter:none!important}
.product-info h3{position:relative;z-index:5;text-align:center;max-width:92%;margin-left:auto;margin-right:auto;overflow:visible!important;white-space:normal!important;word-break:break-word!important}.product-card{overflow:visible!important}.product-media{overflow:hidden!important}.product-info{position:relative;z-index:8;padding-top:18px!important;background:linear-gradient(180deg,rgba(255,248,252,.72),rgba(255,255,255,.82));border-radius:0 0 28px 28px;backdrop-filter:blur(10px)}
.site-footer{position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,#d984b1 0%,#e9a3c9 42%,#d98db6 76%,#f0b4d2 100%);background-size:220% 220%;animation:oniroFooterFlow 12s ease-in-out infinite}.site-footer:before{content:"";position:absolute;inset:-35%;z-index:-2;background:radial-gradient(circle at 20% 45%,rgba(255,255,255,.30),transparent 26%),radial-gradient(circle at 80% 30%,rgba(255,246,201,.22),transparent 25%),radial-gradient(circle at 70% 90%,rgba(255,255,255,.16),transparent 30%);filter:blur(14px);animation:oniroFooterGlow 14s ease-in-out infinite alternate}.site-footer:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent,rgba(255,255,255,.16),transparent);transform:translateX(-120%);animation:oniroFooterSheen 7s ease-in-out infinite}.footer-orb{position:absolute;width:260px;height:260px;border-radius:50%;background:rgba(255,255,255,.13);filter:blur(7px);pointer-events:none;animation:oniroFloatOrb 9s ease-in-out infinite}.footer-orb-one{left:8%;top:18%}.footer-orb-two{right:10%;bottom:8%;animation-delay:-3s}.footer-logo p{display:none!important}.footer-logo img{display:block;filter:drop-shadow(0 18px 25px rgba(0,0,0,.10));animation:oniroFooterLogo 4.8s ease-in-out infinite}.footer-nav a,.footer-contact a,.footer-contact-title{display:block;color:#fff!important;text-decoration:none!important;font-size:22px!important;line-height:1.65!important;font-weight:850!important;text-shadow:0 10px 24px rgba(0,0,0,.16);transition:transform .28s ease,opacity .28s ease,text-shadow .28s ease}.footer-contact{font-size:22px!important;line-height:1.65!important;font-weight:850!important}.footer-contact strong{font-size:22px!important}.footer-nav a:hover,.footer-contact a:hover{transform:translateX(8px);opacity:.86;text-shadow:0 13px 28px rgba(0,0,0,.22)}
.why{background:linear-gradient(135deg,rgba(255,246,201,.98),rgba(255,235,247,.92))!important}.why-shell{gap:72px}.why-quote-card{border:0!important;border-radius:72px!important;padding:86px 82px!important;background:linear-gradient(145deg,rgba(255,253,224,.78),rgba(255,238,247,.72))!important;box-shadow:0 36px 95px rgba(107,71,86,.18),inset 0 0 0 3px rgba(229,154,193,.54),inset 0 0 0 18px rgba(255,255,255,.18)!important;transform:rotate(-1.6deg);overflow:visible!important}.why-quote-card:before{content:""!important;position:absolute!important;inset:22px!important;border:4px solid rgba(229,154,193,.60)!important;border-radius:58px!important;transform:rotate(2.5deg)!important;pointer-events:none!important}.why-quote-card:after{content:"";position:absolute;left:8%;right:8%;bottom:-18px;height:34px;border-radius:50%;background:rgba(0,0,0,.12);filter:blur(20px);z-index:-1}.why-title,.why-body{position:relative;z-index:3}.why-title{margin-bottom:34px!important}.why-body{max-width:850px;margin:0 auto}.quote-mark{z-index:1!important;font-size:108px!important;color:#d9bc68!important;opacity:.54!important;text-shadow:none!important;pointer-events:none}.quote-left{left:42px!important;top:28px!important}.quote-right{right:44px!important;bottom:20px!important}.why-image-wrap img{animation:oniroWhyFloat 6s ease-in-out infinite;filter:drop-shadow(0 46px 65px rgba(66,44,48,.24))}
@keyframes oniroFooterFlow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes oniroFooterGlow{0%{transform:translate3d(-2%,0,0) scale(1)}100%{transform:translate3d(2%,-2%,0) scale(1.04)}}@keyframes oniroFooterSheen{0%,35%{transform:translateX(-120%)}60%,100%{transform:translateX(120%)}}@keyframes oniroFloatOrb{0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-22px) scale(1.05)}}@keyframes oniroFooterLogo{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes oniroWhyFloat{0%,100%{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-14px) rotate(1deg)}}
@media(max-width:900px){.brand img{max-width:126px!important;max-height:72px!important}.cloud-video{min-height:auto!important}.footer-nav a,.footer-contact a,.footer-contact-title,.footer-contact{font-size:18px!important;line-height:1.75!important}.footer-nav a:hover,.footer-contact a:hover{transform:translateY(-3px)}.why-quote-card{padding:76px 26px 58px!important;border-radius:40px!important;transform:rotate(0deg)}.why-quote-card:before{inset:14px!important;border-radius:30px!important;transform:rotate(1deg)!important}.quote-mark{font-size:70px!important}.quote-left{left:18px!important;top:18px!important}.quote-right{right:18px!important;bottom:14px!important}}

/* Final cart and Why section cleanup */
.cart-item{align-items:center!important;padding:14px 14px 14px 18px!important;}
.cart-item-text{display:flex;align-items:center;justify-content:space-between;gap:14px;flex:1;min-width:0;}
.cart-item-text span{overflow-wrap:anywhere;}
.remove-cart-item{width:34px;height:34px;border:0;border-radius:50%;background:#111;color:#fff;font-size:20px;font-weight:900;line-height:1;cursor:pointer;box-shadow:0 10px 22px rgba(0,0,0,.22);transition:transform .22s ease,background .22s ease;flex:0 0 auto;}
.remove-cart-item:hover{transform:scale(1.08) rotate(8deg);background:#e65fa8;}
.cart-empty{padding:18px;border-radius:18px;background:rgba(255,255,255,.5);text-align:center;font-weight:900;color:rgba(17,17,17,.62);}
.send-order.disabled{opacity:.45;pointer-events:none;}
.why-quote-card{background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;border-radius:0!important;padding:90px 72px!important;transform:none!important;}
.why-quote-card:before,.why-quote-card:after{display:none!important;content:none!important;}
.why-title,.why-body{position:relative;z-index:3;}
.quote-mark{z-index:2!important;color:#d9bc68!important;opacity:.58!important;text-shadow:none!important;pointer-events:none!important;}
.quote-left{left:18px!important;top:12px!important;}
.quote-right{right:26px!important;bottom:10px!important;}
@media(max-width:900px){
  .cart-item{gap:10px!important;}
  .cart-item-text{align-items:flex-start;flex-direction:column;gap:4px;}
  .remove-cart-item{width:32px;height:32px;font-size:19px;}
  .why-quote-card{padding:78px 22px 72px!important;}
  .quote-left{left:2px!important;top:8px!important;}
  .quote-right{right:4px!important;bottom:8px!important;}
}

/* v4.6 - Product action area alignment polish for Favorites + Shop */
.favorites .product-info,
.shop .product-info{
  margin:0 auto!important;
  width:calc(100% - 18px)!important;
  min-height:154px!important;
  padding:22px 18px 24px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:14px!important;
  border-radius:0 0 28px 28px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.82),rgba(255,246,251,.94))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.68)!important;
}
.favorites .product-info h3,
.shop .product-info h3{
  margin:0!important;
  min-height:1.15em!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1.05!important;
}
.favorites .cart-row,
.shop .cart-row{
  width:100%!important;
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  gap:16px!important;
  margin:0!important;
  padding:0!important;
}
.favorites .qty,
.shop .qty{
  width:88px!important;
  height:54px!important;
  padding:0 10px!important;
  border-radius:16px!important;
  border:2px solid rgba(17,17,17,.18)!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 10px 22px rgba(0,0,0,.08)!important;
  font-weight:900!important;
  line-height:54px!important;
  text-align:center!important;
  flex:0 0 auto!important;
}
.favorites .add-btn,
.shop .add-btn{
  height:54px!important;
  min-width:148px!important;
  padding:0 24px!important;
  border-radius:16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 10px 0 rgba(0,0,0,.12),0 18px 30px rgba(0,0,0,.08)!important;
  transform:none!important;
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important;
  flex:0 0 auto!important;
}
.favorites .add-btn:hover,
.shop .add-btn:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 13px 0 rgba(0,0,0,.10),0 24px 34px rgba(0,0,0,.12)!important;
}
.favorites .product-card,
.shop .product-card{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  padding-bottom:18px!important;
}
.favorites .product-media,
.shop .product-media{
  flex:0 0 auto!important;
}
@media(max-width:900px){
  .favorites .product-info,
  .shop .product-info{
    width:calc(100% - 14px)!important;
    min-height:138px!important;
    padding:18px 12px 20px!important;
    gap:12px!important;
  }
  .favorites .cart-row,
  .shop .cart-row{
    gap:10px!important;
    flex-wrap:nowrap!important;
  }
  .favorites .qty,
  .shop .qty{
    width:74px!important;
    height:48px!important;
    line-height:48px!important;
    border-radius:14px!important;
  }
  .favorites .add-btn,
  .shop .add-btn{
    min-width:132px!important;
    height:48px!important;
    padding:0 18px!important;
    border-radius:14px!important;
  }
}
@media(max-width:420px){
  .favorites .cart-row,
  .shop .cart-row{gap:8px!important;}
  .favorites .qty,
  .shop .qty{width:64px!important;}
  .favorites .add-btn,
  .shop .add-btn{min-width:118px!important;padding:0 14px!important;font-size:14px!important;}
}

/* v4.7 Architectural footer + product card refinement */
.site-footer{
  min-height:450px!important;
  padding:70px 5vw!important;
  align-items:center!important;
  border-top:1px solid rgba(255,255,255,.22)!important;
  background:
    radial-gradient(circle at 18% 18%,rgba(255,255,255,.28),transparent 26%),
    radial-gradient(circle at 86% 22%,rgba(255,246,201,.18),transparent 30%),
    linear-gradient(135deg,#d889b6 0%,#e7a0c6 45%,#d483b2 100%)!important;
}
.footer-grid{
  width:min(1540px,92vw)!important;
  display:grid!important;
  grid-template-columns:minmax(240px,.95fr) minmax(260px,.75fr) minmax(300px,.9fr)!important;
  gap:clamp(42px,6vw,120px)!important;
  align-items:center!important;
}
.footer-brand-block{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
}
.footer-logo{
  display:inline-flex!important;
  text-decoration:none!important;
}
.footer-logo img{
  width:min(360px,26vw)!important;
  max-width:360px!important;
  height:auto!important;
  filter:drop-shadow(0 18px 32px rgba(70,20,45,.2))!important;
}
.footer-nav,
.footer-contact{
  display:grid!important;
  gap:16px!important;
  justify-items:start!important;
  align-content:center!important;
}
.footer-nav a,
.footer-contact a,
.footer-contact-title{
  font-size:clamp(18px,1.45vw,26px)!important;
  line-height:1.15!important;
  font-weight:900!important;
  letter-spacing:-.025em!important;
  color:#fff!important;
  text-decoration:none!important;
  text-shadow:0 9px 25px rgba(88,22,54,.18)!important;
  position:relative!important;
  width:max-content!important;
  max-width:100%!important;
}
.footer-nav a:before,
.footer-contact a:before{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:-6px;
  height:3px;
  border-radius:99px;
  background:rgba(255,255,255,.75);
  transition:right .28s ease;
}
.footer-nav a:hover:before,
.footer-contact a:hover:before{right:0;}
.footer-contact-title{margin-bottom:4px!important;}
.instagram-link{opacity:.96!important;}

.favorites .product-grid,
.shop .product-grid{
  align-items:stretch!important;
}
.favorites .product-card,
.shop .product-card{
  width:min(500px,100%)!important;
  min-height:auto!important;
  height:auto!important;
  padding:16px 16px 18px!important;
  border-radius:42px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.70),rgba(255,255,255,.30))!important;
  border:2px solid rgba(230,156,194,.60)!important;
  box-shadow:0 24px 70px rgba(69,42,55,.20), inset 0 1px 0 rgba(255,255,255,.72)!important;
  overflow:hidden!important;
}
.favorites .product-card:hover,
.shop .product-card:hover{
  transform:translateY(-8px)!important;
  box-shadow:0 34px 85px rgba(69,42,55,.28), inset 0 1px 0 rgba(255,255,255,.78)!important;
}
.favorites .product-media,
.shop .product-media{
  height:auto!important;
  aspect-ratio:500/650!important;
  max-height:560px!important;
  border-radius:32px!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)!important;
}
.favorites .product-info,
.shop .product-info{
  width:calc(100% - 18px)!important;
  margin:-2px auto 0!important;
  min-height:145px!important;
  padding:23px 18px 24px!important;
  border-radius:0 0 34px 34px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:17px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.93),rgba(255,248,252,.86))!important;
  box-shadow:0 -14px 30px rgba(255,255,255,.34),0 18px 36px rgba(60,35,47,.10)!important;
  backdrop-filter:blur(16px)!important;
}
.favorites .product-info h3,
.shop .product-info h3{
  min-height:auto!important;
  margin:0!important;
  max-width:100%!important;
  line-height:1.04!important;
  text-wrap:balance!important;
}
.favorites .cart-row,
.shop .cart-row{
  width:100%!important;
  max-width:330px!important;
  gap:14px!important;
  padding:0!important;
}
.favorites .qty,
.shop .qty{
  width:88px!important;
  height:56px!important;
  border-radius:18px!important;
  border:2px solid rgba(20,20,20,.16)!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.95),0 10px 22px rgba(0,0,0,.08)!important;
  font-size:18px!important;
}
.favorites .add-btn,
.shop .add-btn{
  min-width:158px!important;
  height:56px!important;
  border-radius:18px!important;
  box-shadow:0 12px 0 rgba(0,0,0,.13),0 20px 36px rgba(0,0,0,.08)!important;
  font-size:16px!important;
}

@media(max-width:1200px){
  .product-grid,.shop .product-grid{grid-template-columns:repeat(2,minmax(270px,500px))!important;}
}
@media(max-width:900px){
  .site-footer{
    min-height:auto!important;
    padding:70px 28px 86px!important;
  }
  .footer-grid{
    width:min(560px,94vw)!important;
    grid-template-columns:1fr!important;
    gap:42px!important;
    text-align:center!important;
    justify-items:center!important;
  }
  .footer-brand-block,
  .footer-nav,
  .footer-contact{
    justify-content:center!important;
    justify-items:center!important;
  }
  .footer-logo img{width:min(340px,78vw)!important;max-width:340px!important;}
  .footer-nav,.footer-contact{gap:18px!important;}
  .footer-nav a,.footer-contact a,.footer-contact-title{
    font-size:clamp(20px,6.2vw,31px)!important;
    line-height:1.1!important;
    width:auto!important;
  }
  .footer-nav a:before,.footer-contact a:before{left:50%;transform:translateX(-50%);width:0;right:auto;transition:width .28s ease;}
  .footer-nav a:hover:before,.footer-contact a:hover:before{width:80%;}
  .favorites .product-card,.shop .product-card{
    width:min(430px,96vw)!important;
    padding:14px!important;
    border-radius:34px!important;
    margin-inline:auto!important;
  }
  .favorites .product-media,.shop .product-media{
    border-radius:28px!important;
    max-height:none!important;
  }
  .favorites .product-info,.shop .product-info{
    width:calc(100% - 10px)!important;
    min-height:138px!important;
    padding:22px 13px!important;
    gap:16px!important;
    border-radius:0 0 30px 30px!important;
  }
  .favorites .cart-row,.shop .cart-row{max-width:300px!important;gap:12px!important;}
  .favorites .qty,.shop .qty{width:82px!important;height:54px!important;}
  .favorites .add-btn,.shop .add-btn{min-width:150px!important;height:54px!important;}
}
@media(max-width:430px){
  .favorites .product-card,.shop .product-card{width:100%!important;padding:12px!important;}
  .favorites .product-info,.shop .product-info{min-height:128px!important;padding:18px 10px!important;}
  .favorites .cart-row,.shop .cart-row{gap:9px!important;max-width:270px!important;}
  .favorites .qty,.shop .qty{width:72px!important;height:50px!important;font-size:16px!important;}
  .favorites .add-btn,.shop .add-btn{min-width:136px!important;height:50px!important;font-size:15px!important;padding:0 14px!important;}
}

/* v4.8 architectural footer + mobile card layout correction */
.site-footer{
  position:relative!important;
  min-height:450px!important;
  padding:92px 7vw!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 16% 18%,rgba(255,255,255,.18),transparent 28%),
    radial-gradient(circle at 86% 78%,rgba(255,246,201,.16),transparent 32%),
    linear-gradient(135deg,var(--footer-bg,#db92b8),#d885ae 46%,#e7a8c8)!important;
  border-top:1px solid rgba(255,255,255,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.30),0 -22px 70px rgba(36,18,28,.16)!important;
}
.site-footer:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.26;
  background-image:linear-gradient(120deg,rgba(255,255,255,.18),transparent 24%,rgba(255,255,255,.12) 48%,transparent 72%);
  background-size:240% 240%;animation:footerSilk 11s ease-in-out infinite;
}
.footer-wave{position:absolute;left:-8%;right:-8%;top:-80px;height:180px;background:radial-gradient(60% 90% at 50% 100%,rgba(255,255,255,.18),transparent 70%);filter:blur(12px);opacity:.75;}
.footer-orb{position:absolute;border-radius:999px;filter:blur(32px);opacity:.44;pointer-events:none;animation:footerFloat 8s ease-in-out infinite;}
.footer-orb-one{width:280px;height:280px;left:8%;bottom:-120px;background:rgba(255,246,201,.35)}
.footer-orb-two{width:360px;height:360px;right:9%;top:-170px;background:rgba(255,255,255,.20);animation-delay:-3s}
@keyframes footerSilk{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes footerFloat{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(18px,-14px,0) scale(1.04)}}
.footer-grid{
  position:relative;z-index:2;width:min(1680px,94vw);margin:0 auto!important;
  display:grid!important;grid-template-columns:minmax(280px,1.05fr) minmax(220px,.82fr) minmax(260px,.95fr)!important;
  gap:clamp(42px,6vw,110px)!important;align-items:center!important;
}
.footer-brand-block{display:flex!important;align-items:center!important;justify-content:flex-start!important;min-width:0!important;}
.footer-logo{display:inline-flex!important;align-items:center!important;text-decoration:none!important;transition:transform .35s ease,filter .35s ease!important;}
.footer-logo:hover{transform:translateY(-5px) scale(1.015);filter:drop-shadow(0 18px 26px rgba(255,255,255,.18));}
.footer-logo img{width:min(360px,28vw)!important;max-width:360px!important;height:auto!important;display:block!important;}
.footer-logo .fallback{font-size:70px!important;font-weight:950!important;letter-spacing:-.08em!important;color:#fff!important;}
.footer-nav,.footer-contact{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;position:relative!important;}
.footer-nav a,.footer-contact a{
  display:inline-flex!important;width:max-content!important;max-width:100%!important;position:relative!important;
  text-decoration:none!important;opacity:.96!important;transition:transform .25s ease,opacity .25s ease,filter .25s ease!important;
}
.footer-nav a:hover,.footer-contact a:hover{transform:translateX(7px);opacity:1!important;filter:drop-shadow(0 9px 14px rgba(255,255,255,.18));}
.footer-nav a:before,.footer-contact a:before{height:2px!important;bottom:-5px!important;background:rgba(255,255,255,.85)!important;}
.footer-contact-title{margin-bottom:10px!important;pointer-events:auto!important;}
.instagram-link:before{content:none!important;}
.instagram-link{margin-top:4px!important;padding:.46em .85em!important;border-radius:999px!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.22)!important;backdrop-filter:blur(12px)!important;}

.favorites .product-grid,.shop .product-grid{
  width:100%!important;display:grid!important;grid-template-columns:repeat(3,minmax(280px,500px))!important;
  gap:clamp(28px,3.5vw,54px)!important;justify-content:center!important;align-items:start!important;
}
.favorites .product-card,.shop .product-card{
  width:100%!important;max-width:500px!important;margin:0 auto!important;overflow:hidden!important;
  display:flex!important;flex-direction:column!important;min-height:auto!important;height:auto!important;
  padding:16px!important;border-radius:38px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.76),rgba(255,245,251,.32))!important;
  border:2px solid rgba(229,154,193,.62)!important;
  box-shadow:0 24px 62px rgba(62,40,54,.20), inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.favorites .product-media,.shop .product-media{
  width:100%!important;aspect-ratio:500/650!important;height:auto!important;max-height:none!important;flex:0 0 auto!important;
  border-radius:30px 30px 18px 18px!important;overflow:hidden!important;background:rgba(255,246,201,.45)!important;
}
.favorites .product-media img,.shop .product-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.favorites .product-info,.shop .product-info{
  width:100%!important;margin:0!important;min-height:168px!important;padding:24px 18px 26px!important;
  border-radius:0 0 30px 30px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:20px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(255,249,253,.90))!important;
  box-shadow:0 -10px 30px rgba(255,255,255,.42),0 16px 30px rgba(45,27,38,.10)!important;
  backdrop-filter:blur(16px)!important;
}
.favorites .product-info h3,.shop .product-info h3{margin:0!important;text-align:center!important;max-width:100%!important;overflow-wrap:anywhere!important;}
.favorites .cart-row,.shop .cart-row{display:grid!important;grid-template-columns:96px minmax(150px,1fr)!important;align-items:center!important;width:100%!important;max-width:360px!important;gap:16px!important;margin:0 auto!important;}
.favorites .qty,.shop .qty{width:96px!important;height:58px!important;border-radius:19px!important;}
.favorites .add-btn,.shop .add-btn{width:100%!important;min-width:0!important;height:58px!important;border-radius:19px!important;}

@media(max-width:1200px){
  .favorites .product-grid,.shop .product-grid{grid-template-columns:repeat(2,minmax(280px,500px))!important;}
}
@media(max-width:900px){
  .site-footer{padding:72px 26px 96px!important;min-height:auto!important;}
  .footer-grid{grid-template-columns:1fr!important;width:min(560px,94vw)!important;gap:36px!important;text-align:center!important;justify-items:center!important;}
  .footer-brand-block{justify-content:center!important;}
  .footer-logo img{width:min(330px,78vw)!important;max-width:330px!important;}
  .footer-nav,.footer-contact{align-items:center!important;gap:19px!important;}
  .footer-nav a,.footer-contact a{width:auto!important;text-align:center!important;justify-content:center!important;}
  .footer-nav a:hover,.footer-contact a:hover{transform:translateY(-3px)!important;}
  .footer-nav a:before,.footer-contact a:before{left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:0!important;}
  .footer-nav a:hover:before,.footer-contact a:hover:before{width:82%!important;}
  .instagram-link{margin-top:6px!important;}

  .favorites .product-grid,.shop .product-grid{
    grid-template-columns:1fr!important;width:min(500px,94vw)!important;gap:34px!important;margin-inline:auto!important;
  }
  .favorites .product-card,.shop .product-card{width:100%!important;max-width:500px!important;border-radius:34px!important;padding:13px!important;}
  .favorites .product-info,.shop .product-info{min-height:154px!important;padding:22px 14px 24px!important;gap:18px!important;}
  .favorites .cart-row,.shop .cart-row{grid-template-columns:86px minmax(0,1fr)!important;max-width:318px!important;gap:13px!important;}
  .favorites .qty,.shop .qty{width:86px!important;height:56px!important;}
  .favorites .add-btn,.shop .add-btn{height:56px!important;white-space:nowrap!important;}
}
@media(max-width:430px){
  .favorites .product-grid,.shop .product-grid{width:94vw!important;gap:30px!important;}
  .favorites .product-card,.shop .product-card{padding:11px!important;border-radius:30px!important;}
  .favorites .product-media,.shop .product-media{border-radius:25px 25px 16px 16px!important;}
  .favorites .product-info,.shop .product-info{min-height:144px!important;padding:20px 10px 22px!important;}
  .favorites .cart-row,.shop .cart-row{grid-template-columns:76px minmax(0,1fr)!important;max-width:286px!important;gap:10px!important;}
  .favorites .qty,.shop .qty{width:76px!important;height:52px!important;}
  .favorites .add-btn,.shop .add-btn{height:52px!important;padding:0 12px!important;}
}

/* v4.9 final fixes: footer contact live controls + clean card actions */
.site-footer .footer-contact a:not(.footer-contact-title){
  font-size:inherit;
}
/* remove the white action panel behind product name / qty / button */
.favorites .product-info,
.shop .product-info{
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  border-radius:0!important;
  min-height:auto!important;
  padding:22px 10px 8px!important;
}
.favorites .cart-row,
.shop .cart-row{
  margin-top:8px!important;
}
.favorites .qty,
.shop .qty,
.favorites .add-btn,
.shop .add-btn{
  box-shadow:none!important;
  filter:none!important;
}
.favorites .add-btn:hover,
.shop .add-btn:hover{
  transform:translateY(-2px)!important;
}
.site-footer .footer-contact a.instagram-link{cursor:pointer!important;}


/* v4.11 fixes: footer contact controls, clean cards, Instagram normal link */
body .site-footer .footer-contact .footer-contact-title,
body .site-footer .footer-contact a.footer-contact-title{
  font-size: var(--footer-contact-title-size, inherit) !important;
}
.favorites .product-info,
.shop .product-info{
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 18px 8px 6px !important;
  min-height: auto !important;
}
.favorites .product-info:before,.favorites .product-info:after,
.shop .product-info:before,.shop .product-info:after{display:none!important;content:none!important;}
.favorites .qty,.shop .qty,.favorites .add-btn,.shop .add-btn{
  box-shadow:none!important;
  filter:none!important;
  text-shadow:none!important;
}
.favorites .cart-row,.shop .cart-row{
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
}
.site-footer .footer-contact a.instagram-link{
  pointer-events:auto!important;
  cursor:pointer!important;
}

/* === Oniro v5 brand edits from v4-11 baseline === */
html, body{
  background:#fcf9d2!important;
}
body:before,
body:after,
.grain{
  display:none!important;
  content:none!important;
  background:none!important;
}
.ultra-section,
.favorites,
.shop,
.why,
.cloud-section{
  background:#fcf9d2!important;
}
.hero:after{
  display:none!important;
  content:none!important;
  background:none!important;
}
.hero h1,
.hero h1 span,
.section-title,
.product-info h3{
  text-transform:none!important;
}
.hero-slide video,
.hero-slide img{
  filter:none!important;
}
.cloud-section{
  padding:0!important;
  min-height:1080px!important;
  overflow:hidden!important;
}
.cloud-full-video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
.cloud-full-video video,
.cloud-full-video img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  display:block!important;
  background:transparent!important;
  box-shadow:none!important;
}
.shop-box-notice{
  width:min(900px,90vw);
  margin:-26px auto 50px;
  text-align:center;
  font-weight:900;
  font-size:clamp(18px,2vw,30px);
  line-height:1.25;
  color:#f5a0c5;
  text-shadow:0 4px 0 rgba(255,255,255,.75);
}
.half-card{
  --half-bg:none;
  grid-column:1 / -1;
  width:min(1540px,100%);
  margin:62px auto 0;
  min-height:560px;
  border-radius:46px;
  padding:34px;
  display:grid;
  grid-template-columns:minmax(360px,1.1fr) minmax(420px,.9fr);
  gap:38px;
  align-items:center;
  background:linear-gradient(135deg,rgba(255,255,255,.68),rgba(255,255,255,.24)),var(--half-bg);
  background-size:cover;
  background-position:center;
  border:2px solid rgba(245,160,197,.62);
  box-shadow:0 24px 70px rgba(113,49,78,.18);
  color:#24151d;
  overflow:hidden;
  position:relative;
}
.half-card:before{
  content:"";
  position:absolute;
  inset:-35%;
  background:radial-gradient(circle at 20% 20%,rgba(245,160,197,.22),transparent 30%),radial-gradient(circle at 85% 80%,rgba(252,249,210,.7),transparent 32%);
  pointer-events:none;
}
.half-card > *{position:relative;z-index:1;}
.half-visual{
  min-height:500px;
  border-radius:34px;
  display:grid;
  place-items:center;
  background:rgba(252,249,210,.5);
  border:1px solid rgba(245,160,197,.45);
  overflow:hidden;
}
.half-box-img{
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  transition:opacity .25s ease,transform .35s ease;
}
.half-content h3{
  margin:0 0 12px;
  color:#f5a0c5;
  font-size:clamp(34px,5vw,82px);
  line-height:.92;
  letter-spacing:-.06em;
  font-weight:900;
}
.half-content p{
  margin:0 0 24px;
  color:#4b2b39;
  font-size:clamp(17px,1.5vw,24px);
  font-weight:800;
}
.half-flavors{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.half-flavor{
  border:1px solid rgba(245,160,197,.5);
  background:rgba(255,255,255,.55);
  border-radius:18px;
  padding:10px;
  min-height:94px;
  cursor:pointer;
  font-weight:900;
  color:#341c28;
  display:grid;
  gap:6px;
  place-items:center;
  transition:transform .22s ease,border-color .22s ease,background .22s ease;
}
.half-flavor:hover,
.half-flavor.selected{
  transform:translateY(-3px);
  border-color:#f5a0c5;
  background:#fff;
}
.half-flavor img{
  width:58px;
  height:58px;
  object-fit:contain;
}
.half-picked{
  margin:18px 0;
  display:grid;
  gap:8px;
  color:#4b2b39;
  font-weight:900;
}
.half-picked strong{color:#f5a0c5;}
.half-cart-row{justify-content:flex-start!important;}
.site-footer{
  --footer-bg:#fcf9d2!important;
  background:#fcf9d2!important;
  color:#f5a0c5!important;
  transition:background .55s ease,color .55s ease;
}
.site-footer a,
.site-footer .footer-contact-title,
.site-footer .fallback{
  color:#f5a0c5!important;
  transition:color .55s ease,transform .25s ease;
}
.site-footer a:hover{transform:translateX(5px);}
body.footer-inverted .site-footer{
  background:#f5a0c5!important;
  color:#fcf9d2!important;
}
body.footer-inverted .site-footer a,
body.footer-inverted .site-footer .footer-contact-title,
body.footer-inverted .site-footer .fallback{
  color:#fcf9d2!important;
}
.footer-nav a:before,
.footer-contact a:before{background:currentColor!important;}
@media(max-width:900px){
  .cloud-section{min-height:100svh!important;}
  .cloud-full-video video,
  .cloud-full-video img{object-fit:contain!important;}
  .product-grid,
  .shop .product-grid,
  .favorites .product-grid{grid-template-columns:1fr!important;gap:34px!important;}
  .product-card{width:min(500px,92vw)!important;margin-inline:auto!important;}
  .half-card{grid-template-columns:1fr!important;padding:20px;border-radius:30px;min-height:auto;}
  .half-visual{min-height:320px;}
  .half-flavors{grid-template-columns:repeat(2,minmax(0,1fr));}
  .half-cart-row{justify-content:center!important;}
}


/* v5.1 precise requested fixes: brand header, clean hero, transparent half-half, footer contact visibility */
.grain{display:none!important;opacity:0!important;}
body{background:#fcf9d2!important;}
body:before,body:after{display:none!important;content:none!important;}
.ultra-section{background:#fcf9d2!important;}
.hero{background:#000!important;}
.hero:after{display:none!important;content:none!important;background:none!important;}
.hero-slide video,.hero-slide img{filter:none!important;}
.hero h1{text-transform:none!important;}

.site-header{
  background:#fcf9d2!important;
  color:#f5a0c5!important;
  border-bottom:1px solid rgba(245,160,197,.38)!important;
  box-shadow:0 10px 34px rgba(64,45,55,.08)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  transition:background .35s ease,color .35s ease,box-shadow .35s ease!important;
}
.site-header .nav a,.site-header .mobile-panel a{color:#f5a0c5!important;text-shadow:none!important;}
.site-header .contact-btn{background:#f5a0c5!important;color:#fcf9d2!important;text-shadow:none!important;box-shadow:0 10px 24px rgba(245,160,197,.22)!important;}
.site-header .menu-toggle{background:#f5a0c5!important;color:#fcf9d2!important;box-shadow:0 10px 24px rgba(245,160,197,.22)!important;}
body.header-inverted .site-header{background:#f5a0c5!important;color:#fcf9d2!important;border-bottom-color:rgba(252,249,210,.46)!important;box-shadow:0 12px 38px rgba(245,160,197,.22)!important;}
body.header-inverted .site-header .nav a,body.header-inverted .mobile-panel a{color:#fcf9d2!important;}
body.header-inverted .site-header .contact-btn,body.header-inverted .site-header .menu-toggle{background:#fcf9d2!important;color:#f5a0c5!important;}
@media(max-width:900px){
  .mobile-panel{background:#f5a0c5!important;border-color:rgba(252,249,210,.5)!important;}
  .mobile-panel a{color:#fcf9d2!important;}
}

.cloud-section{background:#fcf9d2!important;}
.cloud-stage{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:none!important;}
.cloud-copy{display:none!important;}
.cloud-video{width:100%!important;height:100svh!important;min-height:100svh!important;display:flex!important;align-items:center!important;justify-content:center!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;}
.cloud-video video,.cloud-video img{width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important;}

/* Half & Half: reference layout matching provided design */
.half-card{
  --half-bg:none;
  grid-column:1 / -1;
  width:min(1740px,94vw)!important;
  margin:78px auto 0!important;
  min-height:710px!important;
  padding:56px 70px!important;
  display:grid!important;
  grid-template-columns:minmax(560px,1.16fr) minmax(560px,.84fr)!important;
  gap:56px!important;
  align-items:center!important;
  position:relative!important;
  overflow:hidden!important;
  border-radius:54px!important;
  border:3px solid rgba(245,160,197,.64)!important;
  box-shadow:0 28px 75px rgba(70,45,56,.18)!important;
  background:#fcf9d2!important;
  color:#24151d!important;
  isolation:isolate!important;
}
.half-card:before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  z-index:0!important;
  inset:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 96% 7%, rgba(245,160,197,.60) 0 6%, transparent 6.4%),
    radial-gradient(circle at 102% 91%, rgba(245,160,197,.60) 0 12%, transparent 12.5%),
    radial-gradient(circle at 2% 96%, rgba(245,160,197,.50) 0 13%, transparent 13.5%),
    linear-gradient(104deg, transparent 0 45%, rgba(245,160,197,.62) 45.1% 73%, transparent 73.1% 100%)!important;
}
.half-card:after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:28px!important;
  border-radius:42px!important;
  border:0!important;
  background:rgba(252,249,210,.12)!important;
  pointer-events:none!important;
  z-index:0!important;
}
.half-card > *{position:relative!important;z-index:1!important;}
.half-visual{
  min-height:590px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  overflow:visible!important;
}
.half-visual:before,.half-visual:after,.half-content:before,.half-content:after{display:none!important;content:none!important;}
.half-box-img{
  width:100%!important;
  height:100%!important;
  max-height:620px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 34px 26px rgba(82,58,37,.20))!important;
  transform:translateX(-10px)!important;
  transition:opacity .18s ease,transform .28s ease!important;
}
.half-content{
  align-self:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  padding:0!important;
}
.half-content h3{
  margin:0 0 20px!important;
  max-width:600px!important;
  color:#f5a0c5!important;
  font-weight:900!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
  font-size:clamp(54px,5.35vw,110px)!important;
  text-shadow:0 5px 0 rgba(88,62,66,.20)!important;
}
.half-content p{
  margin:0 0 38px!important;
  color:#3b2431!important;
  font-size:clamp(22px,1.75vw,34px)!important;
  line-height:1.22!important;
  font-weight:900!important;
  max-width:640px!important;
}
.half-flavors{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px 22px!important;
  background:rgba(252,249,210,.72)!important;
  border:3px solid rgba(245,160,197,.78)!important;
  border-radius:38px!important;
  box-shadow:0 22px 28px rgba(54,40,38,.22)!important;
  padding:28px 34px!important;
  max-width:660px!important;
  margin:0 0 30px!important;
}
.half-flavor{
  min-height:150px!important;
  padding:8px 10px 10px!important;
  border:0!important;
  border-radius:22px!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  cursor:pointer!important;
  display:grid!important;
  place-items:center!important;
  gap:8px!important;
  color:#1f1720!important;
  transition:transform .22s ease, filter .22s ease, background .22s ease!important;
}
.half-flavor:hover,.half-flavor.selected{
  transform:translateY(-7px) scale(1.035)!important;
  background:rgba(255,255,255,.28)!important;
  filter:drop-shadow(0 14px 16px rgba(245,160,197,.30))!important;
}
.half-flavor img{
  width:94px!important;
  height:94px!important;
  object-fit:contain!important;
  background:transparent!important;
  filter:drop-shadow(0 10px 11px rgba(68,44,38,.18))!important;
}
.half-flavor span{
  text-align:center!important;
  text-transform:uppercase!important;
  font-size:17px!important;
  line-height:1.06!important;
  max-width:145px!important;
}
.half-picked{
  margin:24px 0 26px!important;
  display:grid!important;
  gap:9px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.half-picked span,.half-picked strong{font-size:22px!important;font-weight:900!important;line-height:1.15!important;}
.half-picked span{color:#35232d!important;}
.half-picked strong{color:#f5a0c5!important;}
.half-cart-row{
  justify-content:center!important;
  gap:24px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  max-width:560px!important;
}
.half-cart-row .qty{
  width:135px!important;
  height:74px!important;
  border-radius:24px!important;
  border:3px solid rgba(196,196,196,.75)!important;
  background:#fff!important;
  box-shadow:none!important;
  font-weight:900!important;
  text-align:center!important;
}
.half-cart-row .add-btn{
  min-width:330px!important;
  height:74px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
}
@media(max-width:1100px){
  .half-card{grid-template-columns:1fr!important;padding:34px 22px!important;gap:20px!important;border-radius:34px!important;min-height:auto!important;width:min(720px,94vw)!important;}
  .half-card:before{background:radial-gradient(circle at 100% 0, rgba(245,160,197,.48) 0 13%, transparent 13.5%),linear-gradient(155deg, transparent 0 43%, rgba(245,160,197,.48) 43.2% 69%, transparent 69.2% 100%)!important;}
  .half-card:after{inset:14px!important;border-radius:24px!important;}
  .half-visual{min-height:300px!important;}
  .half-box-img{max-height:360px!important;transform:none!important;}
  .half-content h3{text-align:center!important;font-size:clamp(42px,13vw,70px)!important;max-width:none!important;}
  .half-content p{text-align:center!important;font-size:18px!important;margin-bottom:22px!important;}
  .half-flavors{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;padding:16px!important;border-radius:24px!important;margin-inline:auto!important;width:100%!important;max-width:560px!important;}
  .half-flavor{min-height:118px!important;padding:7px!important;}
  .half-flavor img{width:66px!important;height:66px!important;}
  .half-flavor span{font-size:12px!important;}
  .half-picked{max-width:560px!important;margin-inline:auto!important;}
  .half-picked span,.half-picked strong{font-size:16px!important;}
  .half-cart-row{max-width:560px!important;margin-inline:auto!important;gap:14px!important;flex-wrap:nowrap!important;}
  .half-cart-row .qty{width:96px!important;height:58px!important;border-radius:18px!important;}
  .half-cart-row .add-btn{min-width:0!important;flex:1!important;height:58px!important;border-radius:18px!important;}
}
@media(max-width:520px){
  .half-card{padding:28px 12px!important;width:94vw!important;}
  .half-flavors{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .half-cart-row{flex-direction:column!important;align-items:stretch!important;}
  .half-cart-row .qty,.half-cart-row .add-btn{width:100%!important;}
}

.site-footer{background:#f5a0c5!important;color:#fcf9d2!important;border-top:0!important;box-shadow:none!important;}
.site-footer:before,.site-footer:after,.footer-orb,.footer-wave{display:none!important;content:none!important;}
.site-footer .footer-nav a,.site-footer .footer-contact a,.site-footer .footer-contact-title,.site-footer .footer-contact{color:#fcf9d2!important;text-shadow:none!important;opacity:1!important;}
.site-footer .instagram-link{border-color:rgba(252,249,210,.45)!important;background:rgba(252,249,210,.08)!important;color:#fcf9d2!important;}
body.footer-inverted .site-footer{background:#fcf9d2!important;color:#f5a0c5!important;}
body.footer-inverted .site-footer .footer-nav a,body.footer-inverted .site-footer .footer-contact a,body.footer-inverted .site-footer .footer-contact-title,body.footer-inverted .site-footer .footer-contact{color:#f5a0c5!important;}
body.footer-inverted .site-footer .instagram-link{border-color:rgba(245,160,197,.42)!important;background:rgba(245,160,197,.08)!important;color:#f5a0c5!important;}

@media(max-width:900px){
  .half-card{padding:42px 18px!important;display:grid!important;grid-template-columns:1fr!important;gap:26px!important;}
  .half-visual{min-height:auto!important;}
  .half-content{padding:0!important;}
  .half-flavors{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;}
  .half-flavor{min-height:106px!important;padding:10px!important;}
}

/* v5.3 Half & Half focused fix: keep existing layout, wrap inside a clean editable card */
.half-card{
  grid-column:1 / -1!important;
  width:min(1680px,94vw)!important;
  margin:70px auto 0!important;
  padding:56px 72px 60px!important;
  min-height:auto!important;
  display:grid!important;
  grid-template-columns:minmax(360px,.86fr) minmax(540px,1.14fr)!important;
  gap:58px!important;
  align-items:center!important;
  border-radius:44px!important;
  border:2px solid rgba(245,160,197,.72)!important;
  background:var(--half-bg), #fcf9d2!important;
  background-size:cover!important;
  background-position:center!important;
  box-shadow:0 26px 55px rgba(72,46,58,.18)!important;
  overflow:hidden!important;
  position:relative!important;
  color:#24151d!important;
}
.half-card:before,
.half-card:after{display:none!important;content:none!important;}
.half-card > *{position:relative!important;z-index:1!important;}
.half-visual{
  min-height:430px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.half-box-img{
  width:100%!important;
  max-width:600px!important;
  height:auto!important;
  max-height:500px!important;
  object-fit:contain!important;
  transform:translateX(-42px)!important;
  filter:drop-shadow(0 28px 24px rgba(74,54,30,.18))!important;
}
.half-content{padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.half-content h3{margin:0 0 14px!important;}
.half-content p{margin:0 0 28px!important;max-width:700px!important;}
.half-flavors{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:28px 34px!important;
  margin:0 0 34px!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  max-width:720px!important;
}
.half-flavor{
  min-height:112px!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:18px!important;
}
.half-flavor:hover,.half-flavor.selected{
  background:rgba(255,255,255,.30)!important;
  transform:translateY(-4px)!important;
  filter:none!important;
}
.half-flavor img{width:76px!important;height:76px!important;object-fit:contain!important;filter:drop-shadow(0 8px 10px rgba(45,25,20,.14))!important;}
.half-picked{margin:22px 0 26px!important;gap:7px!important;background:transparent!important;border:0!important;box-shadow:none!important;}
.half-cart-row{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:18px!important;
  max-width:560px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  margin:0!important;
}
.half-cart-row .qty{
  width:116px!important;
  height:68px!important;
  border-radius:22px!important;
  border:3px solid rgba(198,198,198,.78)!important;
  background:#fff!important;
  box-shadow:none!important;
  font-weight:900!important;
  font-size:22px!important;
  text-align:center!important;
  color:#111!important;
}
.half-cart-row .add-btn{
  min-width:300px!important;
  height:68px!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
  border:0!important;
  font-weight:900!important;
  color:#111!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
@media(max-width:1100px){
  .half-card{grid-template-columns:1fr!important;padding:42px 24px 46px!important;gap:28px!important;width:min(760px,94vw)!important;}
  .half-visual{min-height:300px!important;justify-content:center!important;}
  .half-box-img{max-width:540px!important;max-height:360px!important;transform:none!important;}
  .half-content h3,.half-content p{text-align:center!important;margin-inline:auto!important;}
  .half-flavors{margin-inline:auto!important;max-width:620px!important;gap:18px!important;}
  .half-picked{max-width:620px!important;margin-inline:auto!important;}
  .half-cart-row{margin-inline:auto!important;justify-content:center!important;}
}
@media(max-width:620px){
  .half-card{padding:30px 16px 34px!important;border-radius:30px!important;}
  .half-flavors{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px 8px!important;}
  .half-flavor{min-height:92px!important;}
  .half-flavor img{width:58px!important;height:58px!important;}
  .half-cart-row{gap:12px!important;flex-wrap:nowrap!important;width:100%!important;}
  .half-cart-row .qty{width:88px!important;height:56px!important;border-radius:18px!important;font-size:18px!important;flex:0 0 88px!important;}
  .half-cart-row .add-btn{min-width:0!important;height:56px!important;border-radius:18px!important;flex:1 1 auto!important;}
}


/* v5.5 final focused fixes: Half & Half spacing, no selected labels, footer contact visibility, footer logo independent */
.half-content h3{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  width:100%!important;
  max-width:720px!important;
}
.half-picked{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
.half-cart-row{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:42px!important;
  column-gap:42px!important;
  margin:34px auto 0!important;
  max-width:620px!important;
  width:100%!important;
}
.half-cart-row .qty{
  flex:0 0 120px!important;
  width:120px!important;
  height:68px!important;
  margin:0!important;
  border:3px solid rgba(198,198,198,.82)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.half-cart-row .add-btn{
  flex:0 1 330px!important;
  min-width:260px!important;
  width:330px!important;
  height:68px!important;
  margin:0!important;
  border:3px solid rgba(198,198,198,.82)!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:none!important;
}
.half-box-img{
  transition:none!important;
}
.site-footer,
.site-footer *{
  text-shadow:none!important;
}
.site-footer .footer-contact,
.site-footer .footer-contact a,
.site-footer .footer-contact-title,
.site-footer .instagram-link{
  color:#fcf9d2!important;
  opacity:1!important;
  visibility:visible!important;
}
.site-footer .instagram-link{
  border-color:rgba(252,249,210,.52)!important;
  background:rgba(252,249,210,.10)!important;
}
body.footer-inverted .site-footer,
body.footer-inverted .site-footer .footer-contact,
body.footer-inverted .site-footer .footer-contact a,
body.footer-inverted .site-footer .footer-contact-title,
body.footer-inverted .site-footer .instagram-link{
  color:#fcf9d2!important;
}
body.footer-inverted .site-footer{
  background:#f5a0c5!important;
}
@media(max-width:900px){
  .half-cart-row{
    gap:22px!important;
    column-gap:22px!important;
    max-width:520px!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
  }
  .half-cart-row .qty{
    flex:0 0 96px!important;
    width:96px!important;
    height:58px!important;
  }
  .half-cart-row .add-btn{
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    height:58px!important;
  }
}
@media(max-width:520px){
  .half-cart-row{
    gap:16px!important;
    column-gap:16px!important;
  }
  .half-cart-row .qty{
    flex:0 0 84px!important;
    width:84px!important;
  }
}

/* v5.7 hard fix: Half & Half qty/add spacing must never collapse */
.half-card .half-cart-row{
  display:grid!important;
  grid-template-columns:120px 330px!important;
  justify-content:center!important;
  align-items:center!important;
  column-gap:44px!important;
  gap:0 44px!important;
  margin:34px auto 0!important;
  width:100%!important;
  max-width:494px!important;
}
.half-card .half-cart-row .qty{
  width:120px!important;
  min-width:120px!important;
  height:68px!important;
  margin:0!important;
}
.half-card .half-cart-row .add-btn,
.half-card .half-cart-row .half-add{
  width:330px!important;
  min-width:330px!important;
  height:68px!important;
  margin:0!important;
}
@media(max-width:700px){
  .half-card .half-cart-row{grid-template-columns:90px minmax(0,1fr)!important;column-gap:24px!important;max-width:100%!important;}
  .half-card .half-cart-row .qty{width:90px!important;min-width:90px!important;height:58px!important;}
  .half-card .half-cart-row .add-btn,.half-card .half-cart-row .half-add{width:100%!important;min-width:0!important;height:58px!important;}
}

/* v5.12 menu cards: regular product cards are menu-only. Half & Half remains orderable. */
.favorites .menu-product-card,
.shop .menu-product-card{
  cursor:pointer;
}
.favorites .menu-product-card .cart-row,
.shop .menu-product-card .cart-row{
  display:none!important;
}
.favorites .menu-product-card .product-info,
.shop .menu-product-card .product-info{
  min-height:160px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  padding:22px 18px!important;
}
.favorites .menu-product-card .product-info h3,
.shop .menu-product-card .product-info h3{
  margin:0!important;
}
.product-ingredients{
  margin:0!important;
  max-width:92%;
  font-family:'Montserrat',system-ui,sans-serif;
  font-size:15px;
  line-height:1.35;
  font-weight:700;
  color:#2d1822;
  text-align:center;
  text-shadow:none;
}
.product-popup-modal{
  position:fixed;
  inset:0;
  z-index:2100;
  display:none;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(16,10,14,.62);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.product-popup-modal.open{display:flex;}
.product-popup-box{
  width:min(980px,94vw);
  max-height:90vh;
  overflow:auto;
  position:relative;
  display:grid;
  grid-template-columns:minmax(260px,440px) 1fr;
  gap:32px;
  align-items:center;
  border-radius:38px;
  padding:32px;
  background:#fcf9d2;
  border:2px solid #f5a0c5;
  box-shadow:0 40px 120px rgba(0,0,0,.36);
}
.product-popup-close{
  position:absolute;
  top:18px;
  right:18px;
  width:42px;
  height:42px;
  border:0;
  border-radius:999px;
  background:#111;
  color:#fff;
  font-size:24px;
  font-weight:900;
  cursor:pointer;
  z-index:2;
}
.product-popup-image{
  border-radius:28px;
  overflow:hidden;
  background:rgba(245,160,197,.18);
  min-height:320px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.product-popup-image img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
  display:block;
}
.product-popup-content h3{
  margin:0 0 18px;
  font-size:clamp(34px,4vw,62px);
  line-height:.95;
  color:#f5a0c5;
  font-weight:950;
  text-transform:none;
}
.product-popup-content p{
  margin:0;
  font-size:clamp(18px,2vw,28px);
  line-height:1.45;
  font-weight:700;
  color:#2d1822;
}
@media(max-width:800px){
  .product-popup-box{
    grid-template-columns:1fr;
    gap:20px;
    padding:22px;
    border-radius:28px;
  }
  .product-popup-image{min-height:auto;aspect-ratio:1/1.15;border-radius:22px;}
  .product-popup-image img{min-height:0;aspect-ratio:1/1.15;}
  .product-popup-content h3{text-align:center;}
  .product-popup-content p{text-align:center;}
  .product-ingredients{font-size:14px;}
}

/* v5.13 single flavor box preview card - uses existing Half & Half layout without changing current design */
.box-card{margin-bottom:0!important;}
.box-card .box-selected-text{margin:18px 0 0;font-weight:900;color:#3a2631;}
.box-card .box-selected-text strong{color:#f5a0c5;}
.box-card .box-card-img{transition:none!important;}
.box-card .box-flavor.selected{outline:2px solid rgba(245,160,197,.9);outline-offset:4px;}
.half-order-note{margin:0 0 20px!important;font-weight:800;color:#3a2631;}

/* v5.15 Half & Half two-step box builder */
.half-card:not(.box-card) .half-flavor.pending{
  outline:3px solid rgba(245,160,197,.78)!important;
  outline-offset:6px!important;
  transform:translateY(-4px)!important;
}
.half-card:not(.box-card) .half-flavor.first-selected img,
.half-card:not(.box-card) .half-flavor.second-selected img{
  filter:drop-shadow(0 12px 20px rgba(245,160,197,.45))!important;
}
.half-card:not(.box-card) .half-step-add[disabled],
.half-card:not(.box-card) .half-add[disabled]{
  opacity:.52!important;
  cursor:not-allowed!important;
}
.half-card:not(.box-card) .half-step-add.ready,
.half-card:not(.box-card) .half-add.ready{
  opacity:1!important;
  cursor:pointer!important;
}
.half-card:not(.box-card) .half-cart-row{
  grid-template-columns:110px 220px 300px!important;
  gap:0 24px!important;
  column-gap:24px!important;
  max-width:700px!important;
}
.half-card:not(.box-card) .half-cart-row .qty{
  width:110px!important;
  min-width:110px!important;
}
.half-card:not(.box-card) .half-cart-row .half-step-add{
  width:220px!important;
  min-width:220px!important;
}
.half-card:not(.box-card) .half-cart-row .half-add{
  width:300px!important;
  min-width:300px!important;
}
@media(max-width:900px){
  .half-card:not(.box-card) .half-cart-row{
    grid-template-columns:88px minmax(120px,1fr) minmax(140px,1.1fr)!important;
    gap:12px!important;
    max-width:100%!important;
  }
  .half-card:not(.box-card) .half-cart-row .qty,
  .half-card:not(.box-card) .half-cart-row .half-step-add,
  .half-card:not(.box-card) .half-cart-row .half-add{
    width:100%!important;
    min-width:0!important;
  }
}
@media(max-width:560px){
  .half-card:not(.box-card) .half-cart-row{
    grid-template-columns:84px 1fr!important;
  }
  .half-card:not(.box-card) .half-cart-row .half-add{
    grid-column:1 / -1!important;
  }
}
