:root{
  --green:#174d37;--green2:#286448;--lime:#b7d48a;--gold:#d9b66f;--gold2:#f0d9a0;
  --cream:#f7f0df;--dark:#090d0a;--muted:#c7c4b8;--card:#111813;--border:rgba(217,182,111,.34);
  --serif:Georgia,'Times New Roman',serif;--sans:Inter,Arial,Helvetica,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:radial-gradient(ellipse at 50% -15%,rgba(51,91,65,.32),transparent 48%),#090d0a;color:var(--cream);font-family:var(--sans);line-height:1.55}
body:before{position:fixed;inset:0;z-index:-1;content:'';pointer-events:none;background:radial-gradient(circle at 12% 24%,rgba(217,182,111,.045),transparent 23%),radial-gradient(circle at 90% 76%,rgba(37,94,63,.09),transparent 28%)}
.container{width:min(1160px,92%);margin-inline:auto}
.hidden{display:none!important}
button,input,select,textarea{font:inherit}
:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
/* Landing */
.landing{height:100dvh;min-height:100dvh;width:100%;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#080b09;text-align:center}
.landing-content{width:100%;height:100%;padding:clamp(10px,2.5vw,30px);display:flex;align-items:center;justify-content:center;position:relative}
.landing-logo{display:block;width:min(100%,1400px);height:auto;max-height:calc(100dvh - 24px);object-fit:contain;object-position:center;border-radius:18px;filter:drop-shadow(0 18px 38px #0009)}
.landing .btn{position:absolute;left:50%;bottom:clamp(22px,5vh,56px);transform:translateX(-50%);z-index:2;padding:15px 28px;white-space:nowrap;font-size:16px}
.landing .btn:hover{transform:translateX(-50%) translateY(-3px)}
body.home{min-height:100dvh;overflow:hidden}body.home>.hero,body.home>.mascot-section,body.home>.sticky,body.home>#cartButton,body.home>#cartPanel,body.home>main,body.home>.original,body.home>#qr,body.home>footer{display:none}
body.catalog .landing,body.catalog>.hero,body.catalog>.mascot-section,body.catalog>.original,body.catalog>#qr{display:none}
/* Hero and welcome */
.hero{min-height:630px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:55px 0;text-align:center;border-bottom:1px solid rgba(217,182,111,.14);background:radial-gradient(ellipse at 50% 8%,rgba(36,95,63,.35),transparent 58%),linear-gradient(180deg,#0d1711,#090d0a)}
.hero-inner{width:min(900px,94%);position:relative;z-index:2}
.hero:before{content:'';position:absolute;width:min(720px,90vw);height:440px;top:0;left:50%;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(217,182,111,.14),rgba(44,113,72,.13) 38%,transparent 72%);filter:blur(24px);pointer-events:none;animation:softGlow 7s ease-in-out infinite}
.logo{display:block;width:min(550px,90%);max-height:380px;margin:0 auto 10px;object-fit:contain;border-radius:22px;filter:drop-shadow(0 0 15px rgba(217,182,111,.22)) drop-shadow(0 18px 35px #0009);animation:logoFloat 6s ease-in-out infinite}
.splash{position:absolute;inset:0;pointer-events:none;z-index:1}.splash span{position:absolute;display:block;animation:dropFloat 7s ease-in-out infinite;filter:drop-shadow(0 3px 5px #0008)}
.splash .lemon{left:8%;top:24%;font-size:40px;animation-delay:-1s}.splash .strawberry{right:9%;top:31%;font-size:36px;animation-delay:-3s}.splash .passion{left:14%;bottom:23%;font-size:40px;animation-delay:-4s}.splash .ice{right:15%;bottom:20%;font-size:34px;animation-delay:-2s}.splash .drop-left,.splash .drop-right{width:8px;height:14px;border-radius:70% 30%;background:linear-gradient(135deg,#fff8cf,var(--gold));opacity:.75}.splash .drop-left{left:23%;top:38%}.splash .drop-right{right:23%;top:43%;animation-delay:-2.5s}
@keyframes softGlow{50%{opacity:.65;transform:translateX(-50%) scale(1.08)}}@keyframes logoFloat{50%{transform:translateY(-5px)}}@keyframes dropFloat{0%,100%{transform:translateY(0) rotate(-8deg);opacity:.72}50%{transform:translateY(-14px) rotate(8deg);opacity:1}}
.badge{display:inline-block;margin:12px 0 18px;padding:8px 16px;border:1px solid var(--border);border-radius:999px;color:var(--gold2);background:rgba(0,0,0,.25);font-size:12px;font-weight:800;letter-spacing:1.5px}
.hero h1{font-family:var(--serif);font-size:clamp(30px,5vw,58px);line-height:1.08;margin:8px 0 15px;color:var(--gold2);text-transform:uppercase;letter-spacing:1.2px;text-shadow:0 3px 25px rgba(217,182,111,.18)}
.hero p{color:#dedbd1;font-size:18px;margin:0 auto 22px;max-width:700px}.buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.featured-drink{width:min(570px,94%);margin:22px auto;padding:19px 22px;text-align:left;border:1px solid rgba(217,182,111,.48);border-radius:17px;background:linear-gradient(110deg,rgba(67,34,38,.78),rgba(16,50,33,.88));box-shadow:0 0 32px rgba(217,182,111,.09),0 16px 36px #0005}
.featured-drink strong{display:block;color:var(--gold2);font-size:11px;letter-spacing:1.6px;margin-bottom:6px}.featured-drink h2{margin:0;color:#fff;font-family:var(--serif);font-size:24px}.featured-drink p{font-size:14px;margin:5px 0 8px}.featured-price{color:var(--gold2);font-weight:800;font-size:16px}
/* Buttons/navigation */
.btn{border:1px solid transparent;border-radius:999px;padding:12px 19px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .25s,box-shadow .25s,filter .25s;box-shadow:0 8px 22px #0004}
.btn:hover{transform:translateY(-2px);filter:brightness(1.06)}.btn-gold{background:linear-gradient(120deg,#c5a35f,#f0d9a0,#c5a35f);background-size:200% auto;color:#172016;animation:buttonShine 5s linear infinite;box-shadow:0 0 20px rgba(217,182,111,.2),0 8px 22px #0004}@keyframes buttonShine{to{background-position:200% center}}.btn-green{background:linear-gradient(135deg,#287451,#45a171);color:white}.btn-dark{background:#121914;color:#eee;border-color:var(--border)}
.sticky{position:sticky;top:0;z-index:20;backdrop-filter:blur(16px);background:rgba(9,13,10,.92);border-bottom:1px solid rgba(217,182,111,.22);box-shadow:0 8px 24px #0004}
.nav{display:flex;gap:8px;align-items:center;justify-content:space-between;overflow:visible;padding:10px 0}.nav a{white-space:nowrap;text-decoration:none;color:#e9e4d6;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.035);border:1px solid transparent;font-size:14px;font-weight:700;transition:.2s}.nav a:hover,.nav a.active{border-color:var(--gold);color:var(--gold2)}.back-home{margin-right:0}
/* Menu intro and category navigation */
.section{padding:44px 0}.section-title{text-align:center;margin:0 0 22px;color:var(--gold2);font-family:var(--serif);font-size:clamp(27px,4vw,42px);letter-spacing:.3px}.section-sub{text-align:center;color:var(--muted);margin:-12px 0 24px}.menu-intro{margin-bottom:18px}.menu-intro .section-title{margin-bottom:8px}.menu-intro .section-sub{margin:0 0 20px}
.search{width:100%;padding:15px 18px;border-radius:13px;border:1px solid rgba(217,182,111,.33);background:rgba(16,25,19,.88);color:white;font-size:16px;outline:none;margin-bottom:16px;box-shadow:0 8px 24px #0003;transition:border-color .2s,box-shadow .2s}.search::placeholder{color:#a9ab9f}.search:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(217,182,111,.14),0 8px 24px #0004}
.search-empty{margin:0 0 22px;padding:16px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:12px;background:rgba(255,255,255,.025)}
.search-empty button{margin-left:8px;padding:6px 11px;border:1px solid var(--gold);border-radius:999px;background:transparent;color:var(--gold2);font-weight:800;cursor:pointer}
.category-nav{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin:4px 0 24px;padding:10px;border:1px solid rgba(217,182,111,.2);border-radius:16px;background:linear-gradient(135deg,rgba(17,32,22,.92),rgba(9,13,10,.78));box-shadow:0 10px 25px #0003}.category-nav a{display:inline-flex;align-items:center;gap:5px;padding:9px 13px;border:1px solid rgba(217,182,111,.2);border-radius:999px;background:rgba(255,255,255,.035);color:#e9e4d6;font-size:13px;font-weight:800;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s}.category-nav a:hover,.category-nav a.active{transform:translateY(-2px);color:#172016;background:linear-gradient(135deg,#c5a35f,#f0d9a0);border-color:var(--gold)}
/* Section labels */
.category{position:relative;display:flex;align-items:center;gap:12px;min-height:72px;margin:38px 0 16px;padding:13px 18px 13px 20px;overflow:hidden;border:1px solid rgba(217,182,111,.2);border-left:4px solid var(--gold);background:linear-gradient(105deg,rgba(217,182,111,.12),rgba(39,100,66,.08) 52%,rgba(255,255,255,.02));box-shadow:0 10px 26px #0003,inset 0 1px #ffffff0a;border-radius:12px;color:var(--gold2);font-family:var(--serif);font-size:clamp(20px,3vw,28px);transition:transform .25s,box-shadow .25s,border-color .25s}.category:hover{transform:translateX(3px);border-color:rgba(217,182,111,.62);box-shadow:0 14px 30px #0004,0 0 20px rgba(217,182,111,.06)}.category-icon{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:13px;background:rgba(0,0,0,.25);font-size:26px}.category span:not(.category-icon){position:relative;z-index:1}.category small{display:block;margin-left:auto;color:#c7c4b8;font-family:var(--sans);font-size:11px;font-weight:700;text-align:right}.category em{display:inline-block;margin-left:7px;padding:4px 7px;border-radius:999px;background:#774239;color:#fff;font-family:var(--sans);font-size:10px;font-style:normal;vertical-align:middle}.category-batidas{border-left-color:#c97882}.category-sorvete{border-left-color:#9ab4bd}.category-bebidas{border-left-color:#64a2a5}.category-sucos{border-left-color:#d39a5c}.category-extras{border-left-color:#a88bb9}.favorites-title{margin-top:28px}.favorites-sub{text-align:center;color:var(--muted);margin:-12px 0 20px}
/* Product grid/cards */
.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:19px}.card{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-width:0;background:linear-gradient(145deg,rgba(20,29,22,.98),rgba(12,17,13,.99));border:1px solid rgba(217,182,111,.24);border-radius:17px;padding:0 18px 17px;box-shadow:0 12px 28px #0004;transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s,border-color .3s}.card:hover{transform:translateY(-7px);border-color:rgba(217,182,111,.75);box-shadow:0 20px 38px #0007,0 0 18px rgba(217,182,111,.08)}.card::before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.045) 50%,transparent 70%);transform:translateX(-120%);transition:transform .7s}.card:hover::before{transform:translateX(120%)}
.drink-image{height:190px;flex:0 0 190px;margin:0 -18px 16px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:var(--drink-bg,linear-gradient(135deg,#173d25,#4d9a52));border-bottom:0}.drink-image::before,.drink-image::after{content:'';position:absolute;border-radius:50%;filter:blur(3px);pointer-events:none}.drink-image::before{width:180px;height:180px;background:rgba(255,255,255,.12);top:-105px;left:-35px}.drink-image::after{width:130px;height:130px;background:rgba(255,255,255,.08);bottom:-85px;right:-20px}.drink-image img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;position:relative;z-index:1;transition:transform .45s ease,filter .45s ease;filter:saturate(1.08) contrast(1.03)}.card:hover .drink-image img{transform:scale(1.055);filter:saturate(1.15) contrast(1.04)}.drink-cup,.image-fallback{position:relative;z-index:1;font-size:76px;line-height:1;filter:drop-shadow(0 9px 8px #0008);transform:rotate(-6deg)}.drink-label{position:absolute;bottom:10px;left:12px;z-index:2;color:#fff;font-size:11px;font-weight:900;letter-spacing:1px;text-transform:uppercase;text-shadow:0 2px 5px #000}.water-image{height:190px;flex-basis:190px;margin:0 -18px 16px;padding:0;background:linear-gradient(135deg,#173b3d,#557f77);border-radius:16px 16px 0 0;overflow:hidden}.water-image::before{width:220px;height:220px;top:-135px;left:50%;transform:translateX(-50%);background:rgba(255,255,255,.14)}.water-image .drink-label{display:none}.drink-image .drink-name-label{display:block!important;left:0;right:0;bottom:0;padding:22px 13px 11px;background:linear-gradient(0deg,rgba(4,10,6,.94),rgba(4,10,6,.58) 68%,transparent);color:#fff;font-family:var(--serif);font-size:clamp(13px,1.4vw,17px);font-weight:700;line-height:1.2;letter-spacing:.45px;text-align:left;text-transform:uppercase;text-shadow:0 2px 8px #000;pointer-events:none}.card h3{margin:0 0 8px;color:var(--gold2);font-family:var(--serif);font-size:20px;line-height:1.25;letter-spacing:.1px;transition:color .2s}.card:hover h3{color:#fff0c8}.card p{margin:5px 0;color:#d0d2c9;line-height:1.5;font-size:14px}.card .price{float:none;align-self:flex-start;display:inline-block;margin:0 0 10px;padding:5px 10px;border:1px solid rgba(217,182,111,.22);border-radius:999px;background:rgba(217,182,111,.1);color:var(--gold2);font-size:15px;font-weight:900}.water-card .water-caption{margin:0 0 5px;color:var(--gold2);font-family:var(--sans);font-size:16px;font-weight:800;white-space:normal}.water-card .water-description{margin:0 0 14px;color:var(--muted);font-size:14px}.water-card .water-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.water-card .price{float:none;display:inline-block;align-self:auto;margin:0;padding:6px 11px;border-radius:9px;background:linear-gradient(135deg,#c5a35f,#f0d9a0);color:#1a2119;font-size:16px;box-shadow:0 4px 12px rgba(217,182,111,.16)}.add-button{align-self:flex-end;margin-top:auto;width:38px;height:38px;flex:0 0 38px;border:1px solid var(--gold);border-radius:12px;background:#18271d;color:var(--gold2);font-size:24px;font-weight:600;line-height:1;cursor:pointer;transition:background .2s,color .2s,transform .2s,box-shadow .2s}.water-card .water-footer .add-button{align-self:auto;margin-top:0}.add-button:hover{background:var(--gold2);color:#172016;transform:scale(1.07);box-shadow:0 0 16px rgba(217,182,111,.24)}.recipe-options{display:grid;gap:7px;margin:12px 0 2px}.recipe-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.04);color:#dedbd1;font-size:13px;cursor:pointer;border:1px solid rgba(255,255,255,.06);transition:.2s}.recipe-option:has(input:checked){background:rgba(217,182,111,.12);border-color:var(--gold);color:#fff}.recipe-option input{accent-color:var(--gold);width:17px;height:17px;flex:0 0 auto}.recipe-option strong{color:var(--gold2);white-space:nowrap}.product-type{align-self:flex-start;display:inline-block;margin:0 0 8px;padding:4px 8px;border-radius:7px;background:rgba(217,182,111,.13);color:var(--gold2);font-size:10px;font-weight:900;letter-spacing:.7px;text-transform:uppercase}.card::after{content:'IMAGENS MERAMENTE ILUSTRATIVAS';display:block;margin-top:14px;color:#94968c;font-size:9px;text-align:center;letter-spacing:.45px}.card .drink-image img{cursor:zoom-in}.tag{display:inline-block;background:#824444;color:#fff;padding:4px 8px;border-radius:7px;font-size:11px;font-weight:900;margin-left:6px;vertical-align:middle}.premium{background:#523e65}
/* Dialogs, cart and notice */
.cart-button{flex:0 0 auto;border:1px solid rgba(255,255,255,.48);border-radius:999px;padding:10px 15px;background:linear-gradient(135deg,#c5a35f,#f0d9a0);color:#172016;font-weight:900;cursor:pointer;box-shadow:0 6px 18px #0005;transition:transform .2s,box-shadow .2s}.cart-button:hover{transform:translateY(-2px);box-shadow:0 12px 26px #0007}.cart-count{display:inline-grid;place-items:center;min-width:25px;height:25px;margin-left:6px;padding:0 5px;border-radius:50%;background:#7f3330;color:#fff}.cart-panel{display:none;position:fixed;right:18px;top:66px;z-index:29;width:min(410px,calc(100% - 36px));max-height:min(72vh,620px);overflow:auto;padding:22px;background:linear-gradient(160deg,rgba(23,35,26,.99),rgba(9,13,10,.99));border:1px solid rgba(217,182,111,.7);border-radius:18px;box-shadow:0 18px 55px #000b;animation:cartOpen .2s ease-out}.cart-panel.open{display:block}@keyframes cartOpen{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.cart-panel h2{margin:0 0 18px;padding-bottom:14px;color:var(--gold2);font-family:var(--serif);font-size:24px;border-bottom:1px solid rgba(217,182,111,.2)}.cart-empty{text-align:center;color:#c9d0c4;padding:25px 10px;background:rgba(255,255,255,.025);border:1px dashed rgba(217,182,111,.28);border-radius:12px}.cart-line{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.09)}.cart-line strong{display:block;color:#fff;font-size:15px;line-height:1.3}.cart-line small{display:block;color:#b9c3b8;margin-top:5px;font-size:12px}.cart-controls{display:flex;align-items:center;gap:8px;padding:4px;border:1px solid rgba(217,182,111,.27);border-radius:10px;background:rgba(0,0,0,.2)}.cart-controls span{min-width:19px;text-align:center;color:#fff;font-weight:900}.cart-controls button{width:28px;height:28px;border:0;border-radius:7px;background:#17261c;color:var(--gold2);font-size:17px;font-weight:900;cursor:pointer}.cart-total{display:flex;justify-content:space-between;margin:18px 0 14px;padding:15px 0;color:#fff;font-size:20px;font-weight:900;border-top:1px solid rgba(217,182,111,.2)}.cart-total span:last-child{color:var(--gold2);font-size:22px}.cart-footer{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin-top:12px}.cart-footer .btn{border-radius:11px}.cart-footer .btn-green{background:linear-gradient(135deg,#287451,#45a171);color:#fff}
.order-modal{display:none;position:fixed;inset:0;z-index:60;align-items:center;justify-content:center;padding:18px;background:rgba(0,0,0,.78);backdrop-filter:blur(5px)}.order-modal.open{display:flex}.order-form{position:relative;width:min(460px,100%);max-height:92vh;overflow:auto;padding:25px;border:1px solid var(--gold);border-radius:18px;background:linear-gradient(145deg,#17231a,#090d0a);box-shadow:0 18px 50px #000b}.order-form h2{margin:0 35px 5px 0;color:var(--gold2);font-family:var(--serif)}.order-help{margin:0 0 16px;color:var(--muted);font-size:14px}.order-summary{margin:0 0 18px;padding:14px;border:1px solid rgba(217,182,111,.28);border-radius:12px;background:rgba(0,0,0,.18)}.order-summary h3{margin:0 0 8px;color:var(--gold2);font-family:var(--serif);font-size:17px}.order-summary-items{display:grid;gap:6px;color:#e9e4d6;font-size:13px}.order-summary-line{display:flex;justify-content:space-between;gap:12px}.order-summary-total{display:flex;justify-content:space-between;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(217,182,111,.2);color:#fff;font-weight:900}.order-summary-total strong{color:var(--gold2)}.order-summary-details{margin:9px 0 0;color:var(--muted);font-size:12px}.order-form label{display:block;margin:14px 0 6px;color:#fff;font-weight:800;font-size:14px}.order-form input,.order-form select,.order-form textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:10px;background:#101a13;color:#fff;font:inherit;outline:none}.order-form textarea{resize:vertical;min-height:78px}.order-form input:focus,.order-form select:focus,.order-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(217,182,111,.12)}.order-form option{background:#101a13;color:#fff}.order-close,.image-modal button{position:absolute;top:14px;right:16px;width:38px;height:38px;border:1px solid var(--gold);border-radius:50%;background:#17261c;color:var(--gold2);font-size:24px;line-height:1;cursor:pointer}.order-submit{width:100%;margin-top:22px;background:#287451;color:#fff}
.toast{position:fixed;left:50%;bottom:82px;z-index:40;transform:translate(-50%,20px);opacity:0;pointer-events:none;padding:13px 18px;border:1px solid var(--gold);border-radius:999px;background:#17261c;color:var(--gold2);font-weight:800;box-shadow:0 10px 28px #0008;transition:.25s ease}.toast.show{opacity:1;transform:translate(-50%,0)}.image-modal{display:none;position:fixed;inset:0;z-index:50;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.88);cursor:zoom-out}.image-modal.open{display:flex}.image-modal img{max-width:min(100%,1000px);max-height:90vh;object-fit:contain;border-radius:14px;box-shadow:0 15px 45px #000b}.image-modal button{top:18px;right:20px;width:42px;height:42px;font-size:26px}
/* Mascot, original artwork, QR and footer */
.mascot-section{padding:48px 0;background:radial-gradient(circle at 18% 35%,rgba(37,94,63,.14),transparent 25%),radial-gradient(circle at 82% 25%,rgba(217,182,111,.12),transparent 28%),rgba(4,16,10,.4);border-block:1px solid rgba(217,182,111,.16)}.mascot-box{width:min(920px,94%);min-height:390px;margin:auto;padding:30px 42px;border:1px solid rgba(217,182,111,.4);border-radius:23px;background:linear-gradient(145deg,#141d16,#090d0a);box-shadow:0 18px 40px #0006;position:relative;text-align:center;overflow:hidden}.mascot-box:before,.mascot-box:after{position:absolute;opacity:.65;pointer-events:none}.mascot-box:before{content:'🍋';left:24px;top:35%;font-size:30px}.mascot-box:after{content:'🍓';right:26px;top:22%;font-size:28px}.mascot-kicker{margin:0 0 7px;color:var(--gold2);font-size:12px;font-weight:900;letter-spacing:1.5px;text-transform:uppercase}.mascot-box h2{margin:0;color:var(--gold2);font-family:var(--serif);font-size:clamp(25px,4vw,38px)}.mascot-content{display:grid;grid-template-columns:minmax(280px,1fr) minmax(260px,1fr);align-items:center;gap:22px;max-width:760px;margin:4px auto 0;text-align:left}.mascot-visual{position:relative;min-height:260px;display:grid;place-items:center}.mascot-visual:after{content:'✨';position:absolute;right:10%;top:18%;font-size:24px}.mascot-image{display:block;width:min(480px,110%);height:300px;margin:-2px auto -12px;object-fit:contain;filter:drop-shadow(0 18px 15px #0009);transform:scale(1.08);position:relative;z-index:1}.mascot-copy{text-align:left}.mascot-copy h3{margin:0;color:#fff;font-family:var(--serif);font-size:clamp(22px,3vw,30px);line-height:1.15}.mascot-copy h3 span{display:block;color:var(--gold2)}.mascot-box blockquote{margin:16px 0 0;max-width:300px;color:var(--muted);font-size:15px;font-weight:700;line-height:1.4}.mascot-box blockquote:before,.mascot-box blockquote:after{color:var(--gold2);font-size:26px}.mascot-box blockquote:before{content:'“';margin-right:3px}.mascot-box blockquote:after{content:'”';margin-left:3px}.mascot-caption{margin:18px 0 17px;color:var(--gold2);font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.5px}
.original{text-align:center}.original img{width:min(680px,100%);border-radius:14px;border:1px solid var(--border);box-shadow:0 15px 40px #0007}.original .original-logo{width:min(300px,70%);max-height:180px;object-fit:contain;border:0;box-shadow:none;margin:0 auto 12px;display:block}
.qr-box{max-width:520px;margin:0 auto;background:var(--card);border:1px solid var(--border);border-radius:18px;padding:25px;text-align:center}.qr-box p{color:var(--muted)}#qrcode{background:#fff;width:220px;height:220px;padding:10px;margin:18px auto;border-radius:12px}#qrcode img{width:200px!important;height:200px!important}.qr-url{width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);background:#090d0a;color:#fff}.age{margin-top:20px;font-size:12px;color:#aebdb3}.note{background:rgba(255,255,255,.025);border:1px solid rgba(217,182,111,.16);border-radius:12px;padding:15px;color:#dce8de;margin-top:22px}footer{padding:35px 0 55px;text-align:center;color:#aebdb3;border-top:1px solid rgba(217,182,111,.15);margin-top:25px}footer strong{color:var(--gold2);letter-spacing:1px}
@media(max-width:850px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.mascot-section{padding:30px 0}.mascot-box{min-height:0;padding:24px 18px 26px}.mascot-content{grid-template-columns:1fr;gap:0;text-align:center}.mascot-visual{min-height:225px}.mascot-image{height:245px;width:min(400px,112%);transform:scale(1.05)}.mascot-copy{text-align:center}.mascot-copy h3{font-size:24px}.mascot-box blockquote{margin:13px auto 0}.mascot-caption{margin:16px 0}.mascot-box:before{left:8px}.mascot-box:after{right:8px}}
@media(max-width:560px){.container{width:92%}.section{padding:30px 0}.grid{grid-template-columns:1fr;gap:14px}.hero{min-height:690px;padding:30px 0}.splash .lemon{left:2%;top:19%}.splash .strawberry{right:2%;top:27%}.splash .passion{left:4%;bottom:18%}.splash .ice{right:4%;bottom:16%}.splash .drop-left{left:12%}.splash .drop-right{right:12%}.landing-content{padding:0 10px 12px}.landing-logo{width:100%;max-height:calc(100dvh - 10px);border-radius:0}.landing .btn{bottom:24px;padding:14px 21px;font-size:15px}.nav{padding:9px 0}.nav a{padding:9px 12px;font-size:13px}.cart-button{padding:9px 12px;font-size:13px}.cart-panel{right:10px;top:58px;width:calc(100% - 20px);max-height:70vh;padding:18px;border-radius:16px}.cart-footer .btn{flex:1;justify-content:center}.category-nav{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-bottom:20px;padding:8px}.category-nav::-webkit-scrollbar{display:none}.category-nav a{flex:0 0 auto;padding:9px 11px;font-size:12px}.category{margin-top:28px;align-items:flex-start;padding:12px 14px;gap:10px;font-size:20px}.category-icon{flex-basis:39px;width:39px;height:39px;font-size:23px}.category small{position:absolute;left:63px;bottom:8px;margin:0;font-size:9px;text-align:left}.category em{font-size:9px;padding:3px 5px}.category span:not(.category-icon){line-height:1.1}.drink-image,.water-image{height:190px;flex-basis:190px}.card{padding-bottom:15px}.card:hover{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}

/* Refinos de conversão e leitura rápida no celular */
.landing-tagline{position:absolute;left:50%;bottom:clamp(78px,13vh,118px);z-index:2;width:max-content;max-width:calc(100% - 30px);margin:0;transform:translateX(-50%);color:#fff;font-size:clamp(14px,2.5vw,19px);font-weight:800;text-shadow:0 2px 12px #000}
.cart-button-total{white-space:nowrap}
.card>.drink-image{order:0}
.card>h3{order:1}
.card>.price{order:2}
.card>p{order:3}
.card>.product-type{order:1}
.card>.product-type+h3{order:2}
.card>.product-type~p{order:3}
.water-card>.water-footer{order:4}
.card>.recipe-options{order:4}
.card>.add-button{order:5}
@media(max-width:560px){
  .landing-tagline{bottom:76px;font-size:14px}
  .landing .btn{bottom:22px}
  .cart-button{padding:9px 11px;font-size:12px}
  .cart-button-total{font-size:11px}
  .drink-image,.water-image{height:150px;flex-basis:150px}
  .card{padding-inline:14px;padding-bottom:13px}
  .drink-image{margin-inline:-14px}
  .card h3{font-size:18px}
  .card .price{margin-bottom:7px}
  .add-button{width:44px;height:44px;flex-basis:44px;font-size:27px}
}

/* Tema de Halloween apenas na página do cardápio */
body.catalog{
  isolation:isolate;
  background:
    radial-gradient(ellipse at 50% 38%,rgba(3,8,5,.94) 0%,rgba(3,8,5,.78) 48%,rgba(3,8,5,.26) 100%),
    radial-gradient(circle at 88% 14%,rgba(174,39,16,.18) 0 5%,rgba(111,22,18,.1) 8%,transparent 22%),
    radial-gradient(ellipse at 0% 42%,rgba(31,190,58,.12),transparent 32%),
    radial-gradient(ellipse at 100% 62%,rgba(31,190,58,.1),transparent 30%),
    linear-gradient(180deg,rgba(9,11,9,.28),rgba(5,7,5,.48) 48%,rgba(8,11,8,.34)),
    url("https://uploads.onecompiler.io/44xjm9t7w/4538ztfsm/Bar%20de%20Halloween%20com%20Ne%C3%8C%C2%81voa%20Verde.png") center center / cover fixed no-repeat;
}
body.catalog::before{
  background:
    conic-gradient(from 225deg at 0% 0%,transparent 0 10deg,rgba(198,205,190,.09) 10.5deg 11deg,transparent 11.5deg 20deg,rgba(198,205,190,.07) 20.5deg 21deg,transparent 21.5deg),
    conic-gradient(from 225deg at 100% 0%,transparent 0 10deg,rgba(198,205,190,.09) 10.5deg 11deg,transparent 11.5deg 20deg,rgba(198,205,190,.07) 20.5deg 21deg,transparent 21.5deg),
    radial-gradient(ellipse at 10% 45%,rgba(57,255,20,.09),transparent 33%),
    radial-gradient(ellipse at 90% 54%,rgba(57,255,20,.08),transparent 32%),
    radial-gradient(circle at 84% 12%,rgba(255,92,31,.10),transparent 13%);
  opacity:.9;
}
body.catalog .sticky{
  position:sticky;
  background:rgba(5,8,6,.94);
  border-bottom-color:rgba(217,112,55,.24);
}
body.catalog .sticky::before{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-31px;
  height:32px;
  z-index:1;
  pointer-events:none;
  background:
    linear-gradient(#690d12,#690d12) 0 0/100% 4px no-repeat,
    linear-gradient(#690d12,#690d12) 9% 0/9px 21px no-repeat,
    radial-gradient(ellipse at center top,#690d12 0 65%,transparent 72%) 9% 17px/9px 12px no-repeat,
    linear-gradient(#861319,#861319) 24% 0/7px 13px no-repeat,
    radial-gradient(ellipse at center top,#861319 0 65%,transparent 72%) 24% 9px/7px 10px no-repeat,
    linear-gradient(#690d12,#690d12) 47% 0/11px 27px no-repeat,
    radial-gradient(ellipse at center top,#690d12 0 65%,transparent 72%) 47% 23px/11px 12px no-repeat,
    linear-gradient(#861319,#861319) 72% 0/8px 17px no-repeat,
    radial-gradient(ellipse at center top,#861319 0 65%,transparent 72%) 72% 13px/8px 10px no-repeat,
    linear-gradient(#690d12,#690d12) 91% 0/10px 23px no-repeat,
    radial-gradient(ellipse at center top,#690d12 0 65%,transparent 72%) 91% 19px/10px 11px no-repeat;
  filter:drop-shadow(0 3px 5px rgba(125,8,15,.45));
  animation:bloodDrip 4s ease-in-out infinite;
}
@keyframes bloodDrip{50%{transform:translateY(3px)}}
body.catalog .category-nav::before,
body.catalog .category-nav::after{
  content:'🧟‍♂️';
  position:fixed;
  top:42vh;
  z-index:1;
  pointer-events:none;
  opacity:.2;
  font-size:clamp(42px,7vw,78px);
  filter:drop-shadow(0 0 12px rgba(57,255,20,.22));
}
body.catalog .category-nav::before{
  left:-30px;
  transform:rotate(18deg) scaleX(-1);
}
body.catalog .category-nav::after{
  right:-30px;
  transform:rotate(-18deg);
}
body.catalog .menu-intro{position:relative}
body.catalog .menu-intro::before,
body.catalog .menu-intro::after{
  position:fixed;
  z-index:-1;
  pointer-events:none;
  opacity:.24;
  filter:drop-shadow(0 0 12px rgba(255,115,34,.3));
}
body.catalog .menu-intro::before{content:'🦇';top:16vh;right:5vw;font-size:30px}
body.catalog .menu-intro::after{content:'🍋  🍓  🥭';top:46vh;left:1vw;font-size:17px;writing-mode:vertical-rl}
body.catalog .category{
  border-color:rgba(217,145,72,.22);
  border-left-color:#b65a2b;
  background:linear-gradient(105deg,rgba(119,48,24,.16),rgba(24,78,37,.11) 52%,rgba(4,8,5,.7));
}
body.catalog .card{
  border-color:rgba(119,171,85,.25);
  background:linear-gradient(145deg,rgba(15,22,16,.97),rgba(7,10,8,.99));
}
body.catalog #cardapio{position:relative;isolation:isolate}
body.catalog #cardapio::before,
body.catalog #cardapio::after{
  position:fixed;
  z-index:-1;
  bottom:18px;
  font-size:clamp(38px,6vw,76px);
  line-height:1;
  opacity:.48;
  filter:drop-shadow(0 0 18px rgba(255,105,28,.34));
  pointer-events:none;
}
body.catalog #cardapio::before{content:'🎃';left:clamp(8px,3vw,42px)}
body.catalog #cardapio::after{content:'🎃';right:clamp(8px,3vw,42px)}
@media(max-width:560px){
  body.catalog #cardapio::before,
  body.catalog #cardapio::after{bottom:8px;font-size:38px;opacity:.35}
}
@media(prefers-reduced-motion:reduce){
  body.catalog *,body.catalog *::before,body.catalog *::after{scroll-behavior:auto}
}

/* Tema de Halloween também nas áreas e nos detalhes das bebidas */
body.catalog .section-title,
body.catalog .favorites-title{color:#f0b66f;text-shadow:0 0 18px rgba(255,89,24,.24)}
body.catalog .section-sub,
body.catalog .favorites-sub{color:#c5c9b9}
body.catalog .search{
  border-color:rgba(120,190,75,.42);
  background:rgba(5,10,7,.92);
  box-shadow:0 0 20px rgba(57,255,20,.06),0 8px 24px #0007;
}
body.catalog .category-nav{
  border-color:rgba(181,83,39,.34);
  background:linear-gradient(135deg,rgba(24,38,22,.96),rgba(8,11,8,.94));
}
body.catalog .category-nav a{border-color:rgba(120,190,75,.24)}
body.catalog .category-nav a:hover,
body.catalog .category-nav a.active{background:linear-gradient(135deg,#a84522,#d88b3e);color:#fff;border-color:#e59c50}
body.catalog .drink-image,
body.catalog .water-image{
  border-bottom-color:rgba(218,129,58,.48);
  box-shadow:inset 0 0 34px rgba(12,40,17,.34);
}
body.catalog .drink-image::before{background:rgba(255,155,65,.12)}
body.catalog .drink-image::after{background:rgba(57,255,20,.08)}
body.catalog .drink-image .drink-label{
  color:#ffe1a0;
  text-shadow:0 1px 5px #000,0 0 10px rgba(255,113,35,.45);
}
body.catalog .drink-image .drink-name-label{border-top:1px solid rgba(232,146,71,.26)}
body.catalog .card h3,
body.catalog .water-card .water-caption{color:#f0bd78}
body.catalog .card .price{
  border-color:rgba(220,142,68,.4);
  background:linear-gradient(135deg,rgba(100,42,22,.72),rgba(37,65,31,.78));
  color:#ffd28b;
}
body.catalog .water-card .price{background:linear-gradient(135deg,#a94d27,#e6a253);color:#17140d}
body.catalog .add-button{
  border-color:#a6cc67;
  background:linear-gradient(145deg,#20351e,#111a12);
  color:#d7ef9b;
  box-shadow:0 0 12px rgba(57,255,20,.09);
}
body.catalog .add-button:hover{background:linear-gradient(135deg,#9d4525,#d58b3c);color:#fff;border-color:#f0bb72}
body.catalog .product-type,
body.catalog .recipe-option:has(input:checked){
  border-color:rgba(218,129,58,.4);
  background:rgba(111,53,27,.28);
  color:#ffd28b;
}
body.catalog .recipe-option{border-color:rgba(120,190,75,.16);background:rgba(5,10,7,.58)}
body.catalog .recipe-option strong{color:#f2bd77}
body.catalog .tag{background:#87391f;color:#ffe3b2}
body.catalog .premium{background:#503351}
body.catalog .card::after{color:rgba(193,199,184,.48);font-size:8px;letter-spacing:.3px}

/* Detalhes finais do cardápio de Halloween */
body.catalog .grid{position:relative;isolation:isolate}
body.catalog .grid::before{
  content:'';
  position:absolute;
  z-index:-1;
  inset:-24px -18px;
  pointer-events:none;
  background:radial-gradient(ellipse at 15% 50%,rgba(57,255,20,.13),transparent 42%),radial-gradient(ellipse at 85% 58%,rgba(36,184,69,.11),transparent 44%);
  filter:blur(24px);
  animation:greenMist 12s ease-in-out infinite alternate;
}
@keyframes greenMist{to{transform:translate3d(0,-12px,0) scale(1.04);opacity:.68}}
body.catalog .card{
  border:1px solid rgba(94,255,72,.35);
  background-color:rgba(3,7,5,.84);
  background-image:
    repeating-conic-gradient(from 0deg at 0 0,transparent 0deg 9deg,rgba(175,255,169,.16) 9.4deg 9.9deg,transparent 10.3deg 20deg),
    repeating-conic-gradient(from 0deg at 100% 0,transparent 0deg 9deg,rgba(175,255,169,.13) 9.4deg 9.9deg,transparent 10.3deg 20deg),
    linear-gradient(145deg,rgba(12,18,13,.88),rgba(3,7,5,.88));
  background-size:48px 48px,48px 48px,100% 100%;
  background-position:top left,top right,center;
  background-repeat:no-repeat;
  box-shadow:0 0 12px rgba(57,255,20,.08),0 12px 28px rgba(0,0,0,.48);
}
body.catalog .card:hover,
body.catalog .card:active{
  border-color:rgba(255,132,49,.72);
  box-shadow:0 0 18px rgba(57,255,20,.2),0 0 26px rgba(255,111,35,.18),0 18px 35px rgba(0,0,0,.6);
}
body.catalog .card h3,
body.catalog .water-card .water-caption{color:#ffc16e;text-shadow:0 0 12px rgba(255,123,36,.18)}
body.catalog .card .price{
  border-color:rgba(255,143,58,.48);
  background:linear-gradient(135deg,rgba(107,42,17,.92),rgba(53,25,13,.94));
  color:#ffc16e;
  text-shadow:0 0 10px rgba(255,123,36,.46);
  box-shadow:0 0 13px rgba(255,104,27,.13);
}
body.catalog .water-card .price{background:linear-gradient(135deg,#9d451f,#e99140);color:#1c1008}
body.catalog .add-button{
  width:44px;height:44px;flex:0 0 44px;
  border:1px solid #83ff69;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#48c83d,#167326 72%);
  color:#f4ffe7;font-size:27px;
  box-shadow:0 0 13px rgba(57,255,20,.32),inset 0 1px rgba(255,255,255,.24);
  animation:addPulse 2.8s ease-in-out infinite;
}
body.catalog .add-button:hover{background:radial-gradient(circle at 35% 30%,#75ed55,#278a30);color:#fff;transform:scale(1.08)}
@keyframes addPulse{50%{box-shadow:0 0 19px rgba(57,255,20,.5),inset 0 1px rgba(255,255,255,.24)}}
body.catalog #cardapio>section[id]+section[id]::before{
  content:'🎃  ·  ·  🕸️  ·  ·  🎃';
  display:block;
  margin:22px 0 -20px;
  color:rgba(232,150,75,.58);
  font-size:15px;
  letter-spacing:2px;
  text-align:center;
  text-shadow:0 0 12px rgba(255,111,35,.24);
}
body.catalog #sucos .category-icon{background:rgba(105,43,22,.42)}
body.catalog #sucos .category>span:nth-child(2){color:#ffc16e}
@media(max-width:560px){
  body.catalog .grid::before{inset:-18px -10px;filter:blur(20px)}
  body.catalog .card{background-size:38px 38px,38px 38px,100% 100%}
  body.catalog .add-button{width:46px;height:46px;flex-basis:46px}
  body.catalog #cardapio>section[id]+section[id]::before{margin:16px 0 -18px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){
  body.catalog .grid::before,body.catalog .add-button{animation:none}
}

/* Os nomes já aparecem na legenda de cada bebida. */
.drink-image .drink-name-label{display:none!important}
