
:root { --ink:#10204b; --blue:#2449c5; --blue-dark:#14328f; --cyan:#27b7e8; --green:#17ad67; --mist:#f2f7fb; --line:#dce7f1; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:#fff; font-family:var(--font-geist), Arial, sans-serif; }
a { color:inherit; text-decoration:none; }
button, a { -webkit-tap-highlight-color:transparent; }
.service-strip { padding:9px 20px; text-align:center; color:#fff; background:linear-gradient(90deg,var(--blue-dark),#3159dc); font-size:.78rem; font-weight:700; letter-spacing:.04em; }
.site-header { max-width:1180px; margin:auto; padding:18px 28px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; align-items:center; gap:11px; }
.brand-mark { width:42px; height:42px; display:grid; place-items:center; border-radius:14px; color:#fff; background:linear-gradient(145deg,var(--cyan),var(--blue)); box-shadow:0 8px 22px #2449c52b; font-size:1.3rem; font-weight:900; }
.brand > span:last-child { display:flex; flex-direction:column; line-height:1; }
.brand strong { font-size:1.05rem; }
.brand small { margin-top:5px; color:var(--blue); font-size:.6rem; letter-spacing:.22em; font-weight:900; }
.header-action { padding:11px 17px; border:1px solid var(--line); border-radius:12px; font-size:.85rem; font-weight:800; }
.hero { min-height:610px; max-width:1180px; margin:0 auto; padding:64px 28px 74px; display:grid; grid-template-columns:1.08fr .92fr; align-items:center; gap:42px; }
.eyebrow { display:inline-block; color:var(--blue); font-size:.74rem; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }
.hero h1 { margin:16px 0 18px; max-width:680px; font-size:clamp(3rem,6.2vw,5.7rem); line-height:.94; letter-spacing:-.06em; }
.hero h1 em { color:var(--blue); font-style:normal; }
.hero-copy > p { max-width:590px; color:#54617f; font-size:1.08rem; line-height:1.7; }
.hero-actions { margin-top:30px; display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.primary-button { padding:16px 27px; border-radius:15px; color:#fff; background:linear-gradient(135deg,var(--blue),#173697); box-shadow:0 16px 30px #2449c53a; font-size:.92rem; font-weight:900; }
.open-status { display:flex; align-items:center; gap:8px; color:#2e4563; font-size:.84rem; font-weight:700; }
.open-status i { width:9px; height:9px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px #17ad6716; }
.trust-row { margin-top:40px; padding-top:25px; border-top:1px solid var(--line); display:flex; gap:28px; color:#69758d; font-size:.73rem; }
.trust-row span { display:flex; flex-direction:column; gap:4px; }
.trust-row b { color:var(--ink); font-size:.86rem; }
.hero-visual { min-height:455px; position:relative; display:grid; place-items:center; border-radius:44px; overflow:hidden; background:radial-gradient(circle at 50% 40%,#fff 0 15%,transparent 52%),linear-gradient(145deg,#eaf8ff,#e8efff); }
.halo { position:absolute; width:330px; height:330px; border:1px solid #fff; border-radius:50%; box-shadow:0 0 0 40px #ffffff70,0 0 0 80px #ffffff3d; }
.cylinder { width:92px; height:115px; position:relative; display:flex; align-items:center; justify-content:center; border-radius:27px 27px 22px 22px; color:#fff; background:linear-gradient(90deg,#0c79c5,#32c9f1 47%,#0872bd); box-shadow:inset 0 -10px 20px #005b9d44,0 18px 25px #164a8f2d; }
.cylinder::before { content:""; width:43px; height:25px; position:absolute; top:-18px; border:10px solid #188fd4; border-bottom:0; border-radius:9px 9px 0 0; }
.cylinder::after { content:""; width:70%; height:8px; position:absolute; bottom:-6px; border-radius:50%; background:#0b64a7; }
.cylinder i { position:absolute; inset:10px 9px auto; height:3px; border-radius:50%; background:#ffffff6e; }
.cylinder b { font-size:1.8rem; }
.cylinder small { margin:12px 0 0 2px; font-weight:800; }
.cylinder.large { width:185px; height:235px; border-radius:50px 50px 38px 38px; z-index:2; }
.cylinder.large::before { width:83px; height:48px; top:-34px; border-width:18px; border-bottom:0; }
.cylinder.large b { font-size:4rem; }
.cylinder.large small { font-size:1.2rem; }
.delivery-badge { position:absolute; right:25px; bottom:26px; z-index:3; padding:14px 17px; display:flex; flex-direction:column; border:1px solid #fff; border-radius:16px; background:#ffffffdc; box-shadow:0 12px 28px #234b8b1c; backdrop-filter:blur(10px); }
.delivery-badge strong { font-size:.86rem; }.delivery-badge span { margin-top:3px; color:#71809a; font-size:.68rem; }
.products-section { padding:82px max(28px,calc((100vw - 1124px)/2)); background:var(--mist); }
.section-heading { margin-bottom:30px; display:flex; align-items:end; justify-content:space-between; gap:24px; }
.section-heading h2 { margin:8px 0 0; font-size:clamp(2rem,4vw,3rem); letter-spacing:-.04em; }
.section-heading p { max-width:420px; color:#66748e; line-height:1.6; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.product-card { position:relative; min-height:380px; padding:24px; display:flex; flex-direction:column; border:1px solid #e3ebf3; border-radius:24px; background:#fff; box-shadow:0 12px 34px #18335c0a; }
.product-tag { position:absolute; top:18px; left:18px; z-index:2; padding:7px 10px; border-radius:20px; color:var(--blue-dark); background:#e7efff; font-size:.66rem; font-weight:900; }
.product-art { height:155px; display:flex; align-items:center; justify-content:center; gap:0; border-radius:18px; background:linear-gradient(145deg,#f0fbff,#e8efff); }
.product-art.duo .second { margin-left:-20px; transform:scale(.88) translateY(8px); }
.water-jug { width:80px; height:112px; position:relative; border-radius:18px 18px 25px 25px; background:linear-gradient(90deg,#1b9fd7,#64dcf2 48%,#1288c7); box-shadow:inset 0 0 0 7px #ffffff28,0 17px 22px #158dc42c; }
.water-jug::before { content:""; width:40px; height:15px; position:absolute; left:20px; top:-10px; border-radius:7px 7px 2px 2px; background:#148bc6; }
.water-jug i { position:absolute; inset:30px 10px auto; height:24px; border-top:2px solid #ffffff73; border-bottom:2px solid #ffffff73; }
.product-info { padding-top:20px; display:flex; flex:1; flex-direction:column; }
.product-info h3 { margin:0; font-size:1.04rem; }.product-info p { margin:7px 0 14px; color:#748199; font-size:.78rem; }
.product-info strong { margin-top:auto; font-size:1.45rem; letter-spacing:-.03em; }
.product-info button { margin-top:15px; padding:13px; border:0; border-radius:12px; color:#fff; background:var(--blue); font:inherit; font-size:.78rem; font-weight:900; cursor:pointer; }
@media(max-width:850px){.hero{grid-template-columns:1fr;padding-top:42px}.hero-visual{min-height:390px}.product-grid{grid-template-columns:1fr 1fr}.trust-row{gap:16px}.section-heading{align-items:start;flex-direction:column}}
@media(max-width:560px){.site-header{padding:15px 18px}.header-action{display:none}.hero{padding:45px 18px 60px}.hero h1{font-size:3.25rem}.hero-visual{min-height:350px;border-radius:30px}.cylinder.large{transform:scale(.82)}.trust-row{display:grid;grid-template-columns:1fr 1fr}.products-section{padding:62px 18px}.product-grid{grid-template-columns:1fr}.product-card{min-height:350px}.section-heading p{margin-top:0}}

/* Cardápio de delivery — mesma lógica visual do site de referência */
.delivery-menu { min-height:100vh; background:#eef3f8; }
.delivery-menu .service-strip { position:relative; z-index:20; background:linear-gradient(90deg,#102d87,#2354d6); }
.store-shell { max-width:980px; margin:22px auto 0; border-radius:26px; overflow:hidden; background:#fff; box-shadow:0 16px 50px #112b5e16; }
.store-cover { min-height:260px; position:relative; overflow:hidden; padding:45px 48px; display:flex; align-items:center; justify-content:space-between; color:#fff; background:radial-gradient(circle at 78% 25%,#53dbff 0 4%,transparent 30%),linear-gradient(135deg,#0e2a7a 0%,#2457d8 58%,#1aaee1 100%); }
.store-cover::before,.store-cover::after { content:""; position:absolute; border:1px solid #ffffff31; border-radius:50%; }
.store-cover::before { width:360px; height:360px; right:-80px; top:-140px; box-shadow:0 0 0 45px #ffffff0e,0 0 0 90px #ffffff0b; }
.store-cover::after { width:130px; height:130px; left:-45px; bottom:-70px; }
.cover-copy { max-width:470px; position:relative; z-index:2; display:flex; flex-direction:column; }
.cover-copy span { margin-bottom:10px; font-size:.72rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.cover-copy strong { font-size:clamp(2rem,5vw,4rem); line-height:.97; letter-spacing:-.055em; }
.cover-products { min-width:260px; position:relative; z-index:2; display:flex; align-items:flex-end; justify-content:center; gap:18px; transform:scale(1.25); }
.cover-products .water-jug { height:118px; }
.store-profile { position:relative; padding:72px 42px 34px; }
.store-logo { width:108px; height:108px; position:absolute; top:-54px; left:42px; display:grid; place-items:center; border:7px solid #fff; border-radius:28px; color:#fff; background:linear-gradient(145deg,#25c4ed,#204ac5); box-shadow:0 14px 28px #123d8d2e; }
.store-logo span { font-size:2.5rem; font-weight:950; }
.store-title-row { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.store-title-row h1 { margin:0; font-size:1.8rem; letter-spacing:-.035em; }
.store-title-row h1 i { width:21px; height:21px; display:inline-grid; place-items:center; border-radius:50%; color:#fff; background:var(--blue); font-size:.66rem; font-style:normal; vertical-align:4px; }
.store-title-row p { margin:7px 0 0; color:#71809a; font-size:.88rem; }
.cart-button { min-width:132px; padding:12px 13px 12px 17px; display:flex; align-items:center; justify-content:space-between; gap:12px; border:0; border-radius:14px; color:#fff; background:var(--blue); font:inherit; font-size:.78rem; font-weight:850; cursor:pointer; box-shadow:0 10px 24px #2449c52b; }
.cart-button b { min-width:25px; height:25px; display:grid; place-items:center; border-radius:9px; color:var(--blue); background:#fff; }
.store-meta { margin-top:24px; padding:16px 0; display:flex; align-items:center; gap:20px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:#64728d; font-size:.76rem; }
.store-meta b { color:var(--ink); }
.open-pill { margin-left:auto; padding:8px 12px; display:flex; align-items:center; gap:7px; border-radius:20px; color:#087845; background:#e6f8ef; font-weight:900; }
.open-pill i { width:7px; height:7px; border-radius:50%; background:#13aa62; }
.store-features { padding-top:25px; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.store-features article { min-height:82px; padding:15px; display:flex; align-items:center; gap:11px; border:1px solid var(--line); border-radius:15px; background:#f8fbfe; }
.store-features article > span { width:30px; height:30px; flex:0 0 auto; display:grid; place-items:center; border-radius:10px; color:#fff; background:var(--blue); font-size:.7rem; font-weight:900; }
.store-features div { display:flex; flex-direction:column; gap:4px; }.store-features b { font-size:.75rem; }.store-features small { color:#7b879c; font-size:.62rem; }
.category-bar { max-width:980px; position:sticky; top:0; z-index:10; margin:18px auto 0; padding:12px 18px; display:flex; gap:9px; overflow-x:auto; border-radius:18px 18px 4px 4px; background:linear-gradient(90deg,#173a9f,#2958d6); box-shadow:0 11px 26px #193f9e26; scrollbar-width:none; }
.category-bar::-webkit-scrollbar { display:none; }
.category-bar a { min-width:max-content; padding:10px 16px; border-radius:11px; color:#fff; background:#ffffff14; font-size:.76rem; font-weight:850; }
.category-bar a:hover,.category-bar a:focus-visible { background:#fff; color:var(--blue); outline:none; }
.menu-products { max-width:980px; margin:0 auto; padding:22px 0 40px; }
.menu-alert { margin-bottom:22px; padding:17px 20px; display:flex; align-items:center; gap:13px; border:1px solid #ccead9; border-radius:16px; color:#126b43; background:#effbf4; }
.menu-alert > span { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#18a964; font-weight:900; }
.menu-alert div { display:flex; flex-direction:column; gap:3px; }.menu-alert b { font-size:.83rem; }.menu-alert small { color:#62816f; font-size:.7rem; }
.menu-category { padding:8px 0 24px; scroll-margin-top:80px; }
.category-heading { padding:8px 4px 15px; display:flex; align-items:end; justify-content:space-between; }
.category-heading h2 { margin:0; font-size:1.35rem; letter-spacing:-.03em; }.category-heading p { margin:5px 0 0; color:#758199; font-size:.76rem; }.category-heading > span { color:#7c879b; font-size:.68rem; }
.menu-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.menu-product { min-height:215px; position:relative; padding:16px; display:flex; gap:17px; border:1px solid #dfe8f1; border-radius:19px; background:#fff; box-shadow:0 9px 25px #18335c08; transition:transform .2s ease,box-shadow .2s ease; }
.menu-product:hover { transform:translateY(-2px); box-shadow:0 14px 30px #18335c12; }
.menu-product .product-art { width:155px; height:auto; min-height:180px; flex:0 0 155px; gap:0; }
.menu-product .product-art .cylinder { transform:scale(.84); }.menu-product .product-art .cylinder.second { margin-left:-36px; transform:scale(.74) translateY(12px); }
.menu-product .product-art .water-jug { transform:scale(.84); }.menu-product .product-art .water-jug.second { margin-left:-50px; transform:scale(.72) translateY(12px); }
.menu-product .product-art.water-trio .water-jug { margin-left:-50px; }.menu-product .product-art.water-trio .water-jug:first-child { margin-left:0; }
.menu-product .product-art.combo { gap:8px; }.menu-product .product-art.combo .water-jug { transform:scale(.72) translateY(8px); }
.menu-product-info { min-width:0; padding:5px 2px 2px; display:flex; flex:1; flex-direction:column; }
.menu-product-info .product-tag { position:static; width:max-content; margin-bottom:10px; }
.menu-product-info h3 { margin:0; font-size:.96rem; line-height:1.3; }.menu-product-info > p { margin:6px 0 12px; color:#778399; font-size:.7rem; line-height:1.45; }
.price-line { margin-top:auto; display:flex; align-items:end; justify-content:space-between; gap:12px; }.price-line > div { display:flex; flex-direction:column; }.price-line del { color:#a0a9b7; font-size:.65rem; }.price-line strong { margin-top:3px; font-size:1.22rem; letter-spacing:-.03em; }
.price-line button { width:39px; height:39px; border:0; border-radius:12px; color:#fff; background:var(--blue); font-size:1.35rem; cursor:pointer; box-shadow:0 7px 16px #2449c52d; }
.free-delivery { margin-top:8px; color:#36704f; font-size:.62rem; }
.menu-info { max-width:980px; margin:0 auto; padding:48px; display:grid; grid-template-columns:.85fr 1.15fr; gap:55px; border-radius:26px; color:#fff; background:linear-gradient(135deg,#10296f,#2452c5); }
.eyebrow.light { color:#8ee6ff; }.info-heading h2 { margin:12px 0; font-size:2.5rem; line-height:1; letter-spacing:-.045em; }.info-heading p { color:#c7d7ff; line-height:1.6; }
.info-cards { display:grid; gap:10px; }.info-cards article { padding:16px; display:grid; grid-template-columns:34px 1fr; column-gap:12px; border:1px solid #ffffff20; border-radius:14px; background:#ffffff0b; }.info-cards article > b { grid-row:1/3; color:#76ddff; font-size:.7rem; }.info-cards h3 { margin:0; font-size:.85rem; }.info-cards p { margin:4px 0 0; color:#c8d6f3; font-size:.7rem; line-height:1.45; }
.menu-about,.menu-privacy { max-width:980px; margin:18px auto 0; padding:42px; display:grid; grid-template-columns:.85fr 1.15fr; gap:55px; border:1px solid #dfe8f1; border-radius:24px; background:#fff; }
.menu-about h2,.menu-privacy h2 { margin:10px 0 0; font-size:2rem; line-height:1.05; letter-spacing:-.04em; }.menu-about > p { margin:0; color:#66758e; line-height:1.65; }.menu-about > div:last-child { grid-column:2; display:flex; gap:13px; }.menu-about > div:last-child span { flex:1; display:flex; flex-direction:column; color:#7c8799; font-size:.65rem; }.menu-about > div:last-child b { margin-bottom:4px; color:var(--ink); font-size:.78rem; }
.menu-privacy { margin-bottom:30px; background:#f8fbfe; }.menu-privacy > div:last-child { display:grid; gap:12px; }.menu-privacy p { margin:0; color:#66758e; font-size:.78rem; line-height:1.55; }.menu-privacy p b { color:var(--ink); }
.delivery-menu footer { padding:38px max(20px,calc((100vw - 940px)/2)); display:grid; grid-template-columns:1fr auto; align-items:center; gap:15px; color:#cbd6ed; background:#0b1c4b; }
.footer-brand { color:#fff; }.delivery-menu footer > p { grid-column:1; margin:0; font-size:.72rem; }.delivery-menu footer > div { grid-column:2; grid-row:1/3; display:flex; gap:18px; font-size:.7rem; }.delivery-menu footer a:hover { color:#fff; }
.mobile-cart { display:none; }

/* Sacola e confirmação */
[hidden] { display:none !important; }
.overlay { position:fixed; inset:0; z-index:50; display:flex; justify-content:flex-end; background:#08173591; backdrop-filter:blur(5px); }
.overlay.centered { align-items:center; justify-content:center; padding:20px; }
.cart-drawer { width:min(460px,100%); height:100%; display:flex; flex-direction:column; background:#fff; box-shadow:-18px 0 50px #07152e30; }
.drawer-head { padding:25px; display:flex; align-items:flex-start; justify-content:space-between; gap:20px; border-bottom:1px solid var(--line); }.drawer-head h2 { margin:6px 0 0; font-size:1.35rem; }.drawer-head > button { width:38px; height:38px; border:0; border-radius:12px; color:#53617b; background:#eef3f8; font-size:1.5rem; cursor:pointer; }
.cart-items { padding:18px; flex:1; overflow:auto; }.empty-cart { padding:80px 20px; text-align:center; color:#758198; }.empty-cart b { color:var(--ink); }
.cart-item { padding:13px 0; display:flex; gap:14px; border-bottom:1px solid var(--line); }.cart-item .product-art { width:90px; height:90px; min-height:90px; flex:0 0 90px; overflow:hidden; }.cart-item .product-art > * { transform:scale(.5)!important; }.cart-item .product-art > .second { margin-left:-58px!important; }.cart-item > div:last-child { min-width:0; display:flex; flex:1; flex-direction:column; }.cart-item h3 { margin:4px 0 7px; font-size:.82rem; }.cart-item strong { font-size:.9rem; }
.quantity { margin-top:auto; display:flex; align-items:center; gap:9px; }.quantity button { width:28px; height:28px; border:1px solid var(--line); border-radius:9px; background:#fff; color:var(--blue); font-size:1rem; cursor:pointer; }.quantity span { min-width:18px; text-align:center; font-size:.8rem; font-weight:850; }
.drawer-total { padding:20px; border-top:1px solid var(--line); box-shadow:0 -10px 25px #1028500a; }.drawer-total > div { display:flex; align-items:center; justify-content:space-between; }.drawer-total > div b { font-size:1.3rem; }.drawer-total small { margin:7px 0 16px; display:block; color:#78849a; font-size:.67rem; line-height:1.4; }.drawer-total > button { width:100%; padding:14px; border:0; border-radius:12px; color:#fff; background:var(--blue); font:inherit; font-size:.8rem; font-weight:900; cursor:pointer; }.drawer-total .clear-cart { margin-top:7px; color:#778399; background:transparent; }
.checkout-modal { width:min(520px,100%); max-height:calc(100vh - 40px); overflow:auto; border-radius:23px; background:#fff; box-shadow:0 25px 70px #07152e48; }.checkout-modal form { padding:24px; display:grid; gap:15px; }.checkout-modal label { display:grid; gap:7px; color:#34415d; font-size:.73rem; font-weight:850; }.checkout-modal input,.checkout-modal select { width:100%; padding:13px 14px; border:1px solid #d7e1eb; border-radius:11px; outline:none; background:#fbfdff; color:var(--ink); font:inherit; }.checkout-modal input:focus,.checkout-modal select:focus { border-color:var(--blue); box-shadow:0 0 0 3px #2449c518; }.checkout-summary { padding:15px; display:flex; justify-content:space-between; border-radius:12px; background:#eef3ff; }.checkout-submit { padding:15px; border:0; border-radius:12px; color:#fff; background:var(--blue); font:inherit; font-weight:900; cursor:pointer; }.setup-note,.form-security,.copy-status { margin:0; text-align:center; font-size:.66rem; line-height:1.45; }.setup-note { color:#8a6414; }.form-security { color:#617089; }.copy-status { color:#087845; font-weight:800; }

@media(max-width:1000px){.store-shell,.category-bar,.menu-products,.menu-info,.menu-about,.menu-privacy{margin-left:18px;margin-right:18px}.menu-products{padding-left:0;padding-right:0}}
@media(max-width:760px){.store-shell{margin-top:10px;border-radius:20px}.store-cover{min-height:210px;padding:34px 27px}.cover-copy strong{font-size:2.35rem}.cover-products{min-width:180px;transform:scale(.9)}.store-profile{padding:66px 24px 24px}.store-logo{left:24px;width:96px;height:96px;top:-48px}.store-title-row{align-items:center}.store-title-row h1{font-size:1.35rem}.store-title-row p{font-size:.72rem}.store-meta{flex-wrap:wrap;gap:12px}.open-pill{margin-left:0}.store-features{grid-template-columns:1fr 1fr}.menu-grid{grid-template-columns:1fr}.menu-info,.menu-about,.menu-privacy{padding:30px;grid-template-columns:1fr;gap:24px}.menu-about>div:last-child{grid-column:1}.delivery-menu footer{grid-template-columns:1fr}.delivery-menu footer>div{grid-column:1;grid-row:auto;flex-wrap:wrap}.mobile-cart{position:fixed;z-index:30;right:16px;bottom:15px;left:16px;padding:15px 18px;display:flex;align-items:center;justify-content:space-between;border:0;border-radius:15px;color:#fff;background:linear-gradient(90deg,#173a9f,#2958d6);box-shadow:0 14px 34px #0d286a5e;font:inherit;font-size:.78rem;font-weight:900}.delivery-menu footer{padding-bottom:85px}}
@media(max-width:520px){.delivery-menu .service-strip{font-size:.64rem}.store-shell,.category-bar,.menu-products,.menu-info,.menu-about,.menu-privacy{margin-left:10px;margin-right:10px}.store-cover{min-height:175px;padding:27px 22px}.cover-copy span{font-size:.58rem}.cover-copy strong{font-size:1.75rem}.cover-products{min-width:125px;transform:scale(.65);margin-right:-22px}.store-profile{padding:58px 17px 20px}.store-logo{left:17px;width:82px;height:82px;top:-41px;border-radius:23px}.store-logo span{font-size:2rem}.store-title-row{display:block}.store-title-row .cart-button{position:absolute;top:12px;right:16px;min-width:112px}.store-title-row h1{padding-right:0;font-size:1.22rem}.store-title-row p{max-width:260px}.store-meta span:nth-child(2){display:none}.store-features{gap:8px}.store-features article{padding:12px 9px}.store-features article>span{width:27px;height:27px}.category-bar{margin-top:10px;border-radius:14px 14px 4px 4px}.menu-alert{margin-bottom:15px}.menu-product{min-height:190px;padding:12px;gap:12px}.menu-product .product-art{width:120px;min-height:165px;flex-basis:120px}.menu-product-info h3{font-size:.87rem}.price-line strong{font-size:1.08rem}.info-heading h2{font-size:2rem}.menu-about>div:last-child{flex-direction:column}.menu-about>div:last-child span{padding:10px 0;border-bottom:1px solid var(--line)}}

/* Interface baseada no cardápio Churrasco na Brasa, com identidade azul e assets de gás. */
@font-face { font-family:PoppinsLocal; src:url('fonts/poppins-regular.ttf') format('truetype'); font-weight:400; font-display:swap; }
@font-face { font-family:PoppinsLocal; src:url('fonts/poppins-bold.ttf') format('truetype'); font-weight:700 950; font-display:swap; }
.delivery-menu { color:#403f3f; background:#fff; font-family:PoppinsLocal,Arial,sans-serif; }
.reference-header { position:relative; padding-bottom:0; border-bottom:1px solid #f1f4f8; background:#fff; }
.reference-cover { height:210px; position:relative; background-image:linear-gradient(#07204e20,#07204e20),url('assets/gas/banner.webp'); background-position:center 54%; background-size:cover; }
.cover-rounding { height:68px; position:absolute; right:0; bottom:-1px; left:0; z-index:1; border-radius:42px 42px 0 0; background:#fff; }
.reference-logo { width:126px; height:126px; position:absolute; z-index:5; left:calc(50% - 63px); bottom:4px; overflow:hidden; border:5px solid #fff; border-radius:50%; background:#fff; box-shadow:0 0 14px #0000002a; }
.reference-logo img { width:100%; height:100%; object-fit:cover; }
.footer-logo { width:56px; height:56px; object-fit:cover; border:2px solid #ffffff3b; border-radius:15px; background:#02050a; }
.floating-status,.floating-cart { position:fixed; top:12px; z-index:40; border:0; color:#fff; background:#1555c7; box-shadow:0 2px 12px #071b4a4a; font:inherit; font-weight:900; }
.floating-status { left:12px; padding:10px 13px; display:flex; align-items:center; gap:7px; border-radius:9px; font-size:.68rem; }
.floating-status i { width:8px; height:8px; border-radius:50%; background:#5ef596; box-shadow:0 0 0 4px #5ef5962c; }
.floating-cart { width:44px; height:44px; right:12px; display:grid; place-items:center; border-radius:50%; font-size:1.05rem; cursor:pointer; }
.floating-cart b { min-width:19px; height:19px; position:absolute; top:-5px; right:-4px; display:grid; place-items:center; border:2px solid #fff; border-radius:50%; color:#1555c7; background:#fff; font-size:.58rem; }
.reference-store-info { padding:10px 15px 19px; display:flex; flex-direction:column; align-items:center; text-align:center; }
.reference-store-info h1 { margin:0; color:#1555c7; font-size:1.65rem; font-weight:900; letter-spacing:-.035em; }
.reference-store-info h1 i { width:19px; height:19px; display:inline-grid; place-items:center; border-radius:50%; color:#fff; background:#1555c7; font-size:.58rem; font-style:normal; vertical-align:4px; }
.reference-store-info > p { margin:4px 0 9px; color:#687386; font-size:.78rem; }
.reference-detail { padding:2px 0; font-size:.72rem; }
.reference-detail:first-of-type { color:#667085; }.reference-detail:first-of-type span { color:#087c3a; font-weight:700; }
.blue-menu-band { min-height:86px; padding:10px 15px; display:flex; flex-direction:column; align-items:center; justify-content:center; color:#fff; background:linear-gradient(90deg,#113b9d,#1e66db); }
.blue-menu-band > strong { margin-bottom:7px; font-size:.75rem; letter-spacing:.06em; }
.blue-menu-band > div { display:flex; align-items:center; justify-content:center; gap:8px; overflow-x:auto; }
.blue-menu-band a { padding:7px 15px; border-top:2px solid #fff; color:#fff; white-space:nowrap; font-size:.76rem; font-weight:800; }
.reference-products { width:100%; max-width:1200px; margin:0 auto; padding:20px 15px 45px; }
.reference-alert { margin-bottom:10px; padding:13px 16px; border:1px solid #c9ead8; border-radius:7px; color:#157342; background:#eaf8f0; text-align:center; font-size:.8rem; }
.reference-alert-blue { margin-bottom:22px; border-color:#c8d9ff; color:#1555c7; background:#eef4ff; }
.reference-category > h2 { margin:8px 0 14px; color:#1555c7; font-size:1.15rem; font-weight:700; }
.reference-grid { display:flex; flex-wrap:wrap; align-items:stretch; gap:18px; }
.reference-product { width:calc(50% - 9px); max-width:250px; min-height:390px; }
.reference-product > button { width:100%; height:100%; padding:0; display:flex; flex-direction:column; align-items:stretch; border:0; border-radius:17px; color:inherit; background:#fff; font:inherit; text-align:left; cursor:pointer; transition:.2s ease; }
.reference-product > button:hover,.reference-product > button:focus-visible { outline:0; background:#f8fafc; transform:translateY(-2px); }
.reference-product .product-art { width:100%; height:auto; aspect-ratio:1; min-height:0; overflow:hidden; border:1px solid #d5dce5; border-radius:19px; background:#f5f8fc; }
.reference-product .product-art img { width:100%; height:100%; object-fit:contain; }
.reference-product-copy { padding:11px 9px 14px; display:flex; flex:1; flex-direction:column; }
.reference-tag { width:max-content; margin-bottom:7px; padding:4px 8px; border-radius:7px; color:#1555c7; background:#eaf1ff; font-size:.58rem; font-weight:900; }
.reference-product h3 { margin:0 0 4px; color:#2e3644; font-size:.82rem; line-height:1.35; }
.reference-product small { color:#788394; font-size:.63rem; line-height:1.45; }
.delivery-note { margin-top:8px; color:#24744b; font-size:.68rem; }
.reference-price { margin-top:auto; padding-top:9px; font-size:.67rem; }.reference-price del { color:#db3845; }
.reference-product-copy > strong { color:#087c3a; font-size:1.12rem; }
.add-label { margin-top:9px; padding:8px 10px; border-radius:9px; color:#fff; background:#1555c7; text-align:center; font-size:.68rem; font-weight:900; }
.featured-product { width:100%; max-width:560px; }
.featured-product > button { padding:14px; display:grid; grid-template-columns:1fr 220px; gap:16px; border:2px solid #1555c7; box-shadow:0 8px 24px #1555c718; }
.featured-product .product-art { grid-column:2; grid-row:1; }.featured-product .reference-product-copy { grid-column:1; grid-row:1; }
.featured-product .reference-product-copy > strong { padding:3px 7px; width:max-content; border-radius:7px; color:#fff; background:#087c3a; font-size:1.25rem; }
.menu-info,.menu-about,.menu-privacy { max-width:1170px; }.menu-info { border-radius:18px; }.menu-about,.menu-privacy { border-radius:18px; }
.delivery-menu footer { margin-top:28px; background:#103d99; }
.cart-item .product-art img { width:100%; height:100%; object-fit:contain; }
.cart-item .product-art > img { transform:none!important; }

@media(max-width:650px){
  .reference-cover{height:172px}.cover-rounding{height:62px}.reference-logo{width:116px;height:116px;left:calc(50% - 58px);bottom:0}
  .reference-store-info{padding-top:7px}.reference-store-info h1{font-size:1.35rem}.reference-store-info>p{font-size:.7rem}
  .blue-menu-band{min-height:79px}.reference-products{padding:16px 12px 34px}.reference-grid{gap:10px}
  .reference-product{width:calc(50% - 5px);min-height:330px}.reference-product-copy{padding:9px 5px 12px}.reference-product h3{font-size:.73rem}.reference-product small{font-size:.58rem}.reference-tag{font-size:.52rem}
  .featured-product{width:100%;max-width:none}.featured-product>button{grid-template-columns:1fr 44%;gap:8px;padding:10px}.featured-product .reference-product-copy{padding:4px}.featured-product .add-label{font-size:.6rem}
}
@media(max-width:380px){.reference-product{width:100%;max-width:none}.featured-product>button{display:flex;flex-direction:column}.featured-product .product-art{order:0}.featured-product .reference-product-copy{order:1}}

/* Localização consentida e página interna de escolha de marcas. */
.detected-location { display:flex; align-items:center; gap:5px; color:#1555c7; font-weight:700; }
.detected-location.found { color:#087c3a; }
.location-card { margin:-9px 0 22px; padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:15px; border:1px solid #d8e2ee; border-radius:12px; background:#f8fbff; }
.location-card > div { display:flex; flex-direction:column; gap:3px; }.location-card b { color:#27364d; font-size:.78rem; }.location-card span { color:#1555c7; font-size:.72rem; font-weight:700; }.location-card small { color:#7a8799; font-size:.61rem; }
.location-card.found { border-color:#c9ead8; background:#effaf4; }.location-card.found span { color:#087c3a; }
.location-card button { flex:0 0 auto; padding:9px 12px; border:0; border-radius:9px; color:#fff; background:#1555c7; font:inherit; font-size:.66rem; font-weight:900; cursor:pointer; }
.product-page-overlay { position:fixed; inset:0; z-index:80; overflow-y:auto; color:#303746; background:#f8fafc; font-family:PoppinsLocal,Arial,sans-serif; }
.product-page-header { height:205px; position:relative; overflow:hidden; background:#124cad; }
.product-page-header > img { width:100%; height:100%; object-fit:cover; object-position:center 53%; }
.product-page-header > button { width:42px; height:42px; position:absolute; top:14px; left:14px; z-index:2; display:grid; place-items:center; border:0; border-radius:50%; color:#1555c7; background:#fff; box-shadow:0 3px 14px #07173542; font-size:1.25rem; cursor:pointer; }
.product-choice-content { width:min(680px,100%); margin:0 auto; padding:28px 20px 125px; }
.product-choice-title { display:grid; grid-template-columns:125px 1fr; align-items:center; gap:20px; }
.product-choice-title .product-art { width:125px; height:125px; overflow:hidden; border:1px solid #d9e0ea; border-radius:18px; background:#fff; }
.product-choice-title .product-art img { width:100%; height:100%; object-fit:contain; }
.product-choice-title > div:last-child > span { padding:5px 8px; border-radius:7px; color:#1555c7; background:#e8f0ff; font-size:.58rem; font-weight:900; }
.product-choice-title h1 { margin:9px 0 4px; color:#2c3442; font-size:1.48rem; line-height:1.2; letter-spacing:-.025em; }
.product-choice-title strong { color:#087c3a; font-size:1.02rem; }.product-choice-title p { margin:7px 0 0; color:#778294; font-size:.72rem; }
.brand-choice-section { margin-top:28px; }
.brand-choice-heading { padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:14px; border:1px solid #dce3eb; border-radius:13px 13px 0 0; background:#f0f2f5; }
.brand-choice-heading h2 { margin:0; color:#303746; font-size:.78rem; text-transform:uppercase; }.brand-choice-heading p { margin:3px 0 0; color:#798494; font-size:.64rem; }
.brand-choice-heading > span { padding:5px 8px; border-radius:6px; color:#fff; background:#1555c7; font-size:.52rem; font-weight:950; text-transform:uppercase; }
.brand-choice-list { overflow:hidden; border:1px solid #dce3eb; border-top:0; border-radius:0 0 13px 13px; background:#fff; }
.brand-choice-list label { padding:14px 16px; display:flex; align-items:center; justify-content:space-between; gap:15px; border-bottom:1px solid #e8edf3; cursor:pointer; transition:background .15s ease; }.brand-choice-list label:last-child { border-bottom:0; }.brand-choice-list label:hover { background:#f8fbff; }
.brand-choice-list label > span { display:flex; flex-direction:column; gap:3px; }.brand-choice-list b { font-size:.78rem; }.brand-choice-list small { color:#8a95a5; font-size:.62rem; }
.brand-choice-list input { width:22px; height:22px; flex:0 0 auto; accent-color:#1555c7; cursor:pointer; }
.observation-field { margin-top:28px; display:grid; gap:8px; color:#303746; font-size:.76rem; text-transform:uppercase; }
.observation-field textarea { width:100%; padding:14px; resize:vertical; border:1px solid #d7dfe8; border-radius:13px; outline:none; background:#fff; color:#303746; font:inherit; font-size:.76rem; text-transform:none; }.observation-field textarea:focus { border-color:#1555c7; box-shadow:0 0 0 3px #1555c714; }
.osm-credit { color:#929baa; font-size:.58rem; text-align:center; }
.product-choice-footer { position:fixed; right:0; bottom:0; left:0; z-index:82; padding:14px 20px; border-top:1px solid #dce4ec; background:#ffffffed; box-shadow:0 -8px 24px #14284912; backdrop-filter:blur(10px); }
.product-choice-footer button { width:min(640px,100%); height:56px; margin:0 auto; padding:0 21px; display:flex; align-items:center; justify-content:space-between; border:0; border-radius:15px; color:#fff; background:linear-gradient(90deg,#1248b2,#1c68dd); font:inherit; font-size:.8rem; font-weight:950; text-transform:uppercase; cursor:pointer; box-shadow:0 9px 22px #1555c733; }
.cart-brands { margin:-3px 0 7px; color:#5b6b83; font-size:.62rem; line-height:1.4; }
.online-payment-card { padding:14px; display:flex; align-items:center; gap:11px; border:1px solid #cbdcff; border-radius:12px; background:#f1f6ff; }
.online-payment-card > span { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#fff; box-shadow:0 4px 12px #1248b214; }
.online-payment-card > div { display:flex; flex-direction:column; gap:3px; }.online-payment-card b { color:#23416e; font-size:.73rem; }.online-payment-card small { color:#6d7f99; font-size:.62rem; }
.checkout-submit:disabled { cursor:wait; opacity:.68; }
.payment-status { min-height:18px; margin:0; color:#7d8798; text-align:center; font-size:.67rem; line-height:1.45; }.payment-status.unavailable { color:#9a6810; }.payment-status.error { color:#b42335; }
.pix-payment-box { display:grid; justify-items:center; gap:10px; padding:16px; border:1px solid #c8e8d5; border-radius:14px; background:#f2fff6; text-align:center; }.pix-payment-box > b { color:#17653c; }.pix-payment-box img { width:220px; height:220px; border-radius:8px; background:#fff; }.pix-payment-box button { padding:10px 14px; border:0; border-radius:10px; color:#fff; background:#16834a; font:inherit; font-size:.72rem; font-weight:800; cursor:pointer; }.pix-payment-box code { width:100%; max-height:74px; overflow:auto; padding:9px; border-radius:8px; color:#254632; background:#fff; font-size:.6rem; line-height:1.35; word-break:break-all; }.pix-payment-box small { color:#66816f; font-size:.64rem; }
.checkout-modal form.pix-ready > label,.checkout-modal form.pix-ready > .online-payment-card,.checkout-modal form.pix-ready > .checkout-summary,.checkout-modal form.pix-ready > .checkout-submit { display:none; }.checkout-modal form.pix-ready .pix-payment-box { margin-top:4px; padding:22px; }
.checkout-modal form.pix-loading > label,.checkout-modal form.pix-loading > .online-payment-card,.checkout-modal form.pix-loading > .checkout-summary,.checkout-modal form.pix-loading > .checkout-submit { display:none; }.pix-loading-box { display:grid; justify-items:center; gap:8px; min-height:170px; padding:30px 18px; border:1px solid #ceddff; border-radius:14px; background:#f4f7ff; text-align:center; }.pix-loading-box > span { color:#1855c9; font-size:2.4rem; line-height:1; animation:pix-spin 1.1s linear infinite; }.pix-loading-box > b { color:#173f91; }.pix-loading-box > small { color:#667694; font-size:.68rem; }@keyframes pix-spin { to { transform:rotate(360deg); } }

@media(max-width:560px){
  .location-card{align-items:flex-start}.location-card button{margin-top:2px}.product-page-header{height:150px}.product-choice-content{padding:22px 14px 115px}.product-choice-title{grid-template-columns:92px 1fr;gap:13px}.product-choice-title .product-art{width:92px;height:92px}.product-choice-title h1{font-size:1.12rem}.product-choice-title strong{font-size:.85rem}.brand-choice-section{margin-top:22px}.brand-choice-list label{padding:13px 14px}
}
