:root{--bg:#faf7f0;--fg:#4b4035;--card:#fffdf8;--muted:#766b5e;--primary:#a95f3b;--secondary:#8eae8d;--deep:#52705e;--cream:#faf7f0;--border:#e8dfd2;--shadow:0 18px 45px -22px rgba(70,50,30,.45);--radius:1rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:Arial,Helvetica,sans-serif}h1,h2,h3,h4{font-family:Georgia,"Times New Roman",serif;margin:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}
.container{width:min(1152px,calc(100% - 32px));margin:auto}
header{position:sticky;top:0;z-index:50;background:rgba(250,247,240,.92);backdrop-filter:blur(12px);border-bottom:1px solid rgba(232,223,210,.8)}
.nav{height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;font:24px Georgia,serif}.brand img{width:44px;height:44px;object-fit:contain}.navlinks{display:flex;gap:30px;font-size:14px;color:var(--muted)}.navlinks a:hover{color:var(--primary)}.pill{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer}.warm{background:linear-gradient(135deg,#a95f3b,#d79a58);color:white;box-shadow:var(--shadow)}
.hero{position:relative;min-height:620px;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(45,35,28,.8),rgba(45,35,28,.38),transparent)}.hero-content{position:relative;z-index:2;min-height:620px;display:flex;align-items:center;color:white}.hero-copy{max-width:620px}.eyebrow{display:inline-flex;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.14);font-size:12px;text-transform:uppercase;letter-spacing:.2em;backdrop-filter:blur(8px)}.hero h1{font-size:clamp(42px,6vw,70px);line-height:1.03;margin-top:24px}.hero p{font-size:18px;line-height:1.6;color:rgba(255,255,255,.88);margin:22px 0 0}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.ghost{border:1px solid rgba(255,255,255,.45);color:white;background:rgba(255,255,255,.05)}
section{scroll-margin-top:90px}.catalog{padding:90px 0;background:#f3eee5}.intro{max-width:700px}.kicker{font-size:12px;text-transform:uppercase;letter-spacing:.25em;color:var(--primary)}.intro h2{font-size:clamp(38px,5vw,54px);line-height:1.05;margin-top:12px}.intro p{color:var(--muted);line-height:1.7;margin-top:16px}.cat{margin-top:58px}.cat h3{font-size:30px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:22px}.card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--card);box-shadow:var(--shadow);transition:.25s transform}.card:hover{transform:translateY(-5px)}.imgwrap{aspect-ratio:4/3;overflow:hidden;background:#e8e0d3}.imgwrap img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover .imgwrap img{transform:scale(1.05)}.cardbody{display:flex;flex-direction:column;gap:12px;padding:18px;flex:1}.titleline{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.titleline h4{font-size:19px;line-height:1.15}.price{font:17px Georgia,serif;color:var(--primary);white-space:nowrap}ul{padding:0;margin:0;list-style:none;color:var(--muted);font-size:13px;line-height:1.55}li{display:flex;gap:7px;margin:3px 0}.leaf{color:var(--secondary)}.outline-btn{margin-top:auto;border:1px solid rgba(169,95,59,.35);border-radius:999px;padding:10px 14px;text-align:center;color:var(--primary);font-size:14px;font-weight:700;transition:.2s}.outline-btn:hover{background:var(--primary);color:white}
.steps{padding:90px 0;background:#ebe8df}.steps h2{font-size:clamp(38px,5vw,54px)}.stepgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:48px}.step{background:var(--card);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#a95f3b,#d79a58);color:white;font-size:20px}.step small{display:block;margin-top:22px;color:var(--primary);text-transform:uppercase;letter-spacing:.2em}.step h3{font-size:27px;margin-top:7px}.step p{color:var(--muted);line-height:1.6}
.store{padding:90px 0}.storebox{background:linear-gradient(135deg,#a95f3b,#d79a58);color:white;border-radius:32px;padding:60px;box-shadow:var(--shadow)}.storebox h2{font-size:clamp(38px,5vw,54px);max-width:700px;margin-top:18px}.storebox p{margin:12px 0 0;opacity:.9;line-height:1.5}.store-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.light{background:white;color:var(--primary)}.storebox .social{border:1px solid rgba(255,255,255,.5);color:white}
footer{background:var(--deep);color:var(--cream)}.footergrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:50px;padding:60px 0}.footerbrand{display:flex;align-items:center;gap:12px;font:28px Georgia,serif}.footerbrand img{width:56px;height:56px;object-fit:contain}footer p{color:rgba(250,247,240,.8);font-size:14px;line-height:1.6}.footer h3{font-size:22px;margin-bottom:14px}.footlink{display:flex;align-items:center;gap:10px;border-radius:999px;background:rgba(255,255,255,.1);padding:12px 16px;margin:10px 0;font-size:14px}.copy{border-top:1px solid rgba(255,255,255,.15);padding:20px;text-align:center;color:rgba(250,247,240,.6);font-size:12px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.navlinks{display:none}.footergrid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.container{width:min(100% - 24px,1152px)}.nav{height:64px}.brand{font-size:20px}.brand img{width:38px;height:38px}.hero,.hero-content{min-height:600px}.hero h1{font-size:44px}.catalog,.steps,.store{padding:65px 0}.grid,.stepgrid,.footergrid{grid-template-columns:1fr}.storebox{padding:38px 24px;border-radius:25px}}

/* Carrinho e agendamento */
.cart-pill{border:1px solid var(--border);background:#fffdf8;color:var(--fg);border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:7px;white-space:nowrap}.cart-pill:hover{border-color:var(--primary);color:var(--primary)}#cartCount{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--deep);color:white;display:inline-grid;place-items:center;font-size:12px}.cart-pill:focus-visible,.icon-close:focus-visible,.outline-btn:focus-visible{outline:3px solid rgba(169,95,59,.25);outline-offset:2px}
.cart-overlay,.schedule-overlay{position:fixed;inset:0;background:rgba(32,25,20,.48);opacity:0;visibility:hidden;transition:.25s;z-index:90}.cart-overlay.show,.schedule-overlay.show{opacity:1;visibility:visible}.cart-drawer{position:fixed;z-index:100;top:0;right:0;width:min(520px,100%);height:100dvh;background:var(--card);box-shadow:-20px 0 60px rgba(45,35,28,.22);transform:translateX(105%);transition:.3s;display:flex;flex-direction:column}.cart-drawer.open{transform:translateX(0)}.cart-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;border-bottom:1px solid var(--border)}.cart-head h2{font-size:32px;margin-top:4px}.icon-close{border:0;background:#f0ebe2;width:42px;height:42px;border-radius:50%;font-size:28px;line-height:1;cursor:pointer;color:var(--fg)}.cart-items{overflow:auto;padding:16px 24px;flex:1}.cart-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid var(--border);align-items:start}.cart-item img{width:72px;height:64px;object-fit:cover;border-radius:12px;background:#eee6da}.cart-item-info{min-width:0}.cart-item-info strong{display:block;font-family:Georgia,serif;font-size:16px}.cart-item-info>span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.item-subtotal{font-family:Georgia,serif;color:var(--primary);font-size:14px}.qty{display:flex;align-items:center;gap:7px;margin-top:10px}.qty button{border:1px solid var(--border);background:white;border-radius:8px;width:28px;height:28px;cursor:pointer}.qty .remove{width:auto;padding:0 8px;font-size:11px;color:#9b4c39}.cart-empty{text-align:center;padding:35px 24px;color:var(--muted);line-height:1.6}.cart-empty span{font-size:13px}.cart-summary{border-top:1px solid var(--border);padding:20px 24px;background:#fbf7ef}.cart-summary>div,.schedule-total{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.cart-summary strong,.schedule-total strong{font:22px Georgia,serif;color:var(--primary)}.full{width:100%;margin-top:8px}.outline-full{width:100%;border:1px solid rgba(169,95,59,.35);background:white;color:var(--primary);border-radius:999px;padding:12px 20px;font-weight:700;cursor:pointer}.outline-full:hover{background:var(--primary);color:white}
.schedule-overlay{z-index:120;display:grid;place-items:center;padding:20px}.schedule-modal{width:min(560px,100%);max-height:calc(100dvh - 40px);overflow:auto;background:var(--card);border-radius:26px;box-shadow:var(--shadow)}.modal-note{padding:20px 24px 0;color:var(--muted);line-height:1.55}.schedule-modal form{padding:20px 24px 24px}.schedule-modal label{display:block;font-weight:700;font-size:13px;color:var(--fg);margin-bottom:14px}.schedule-modal input,.schedule-modal textarea{width:100%;margin-top:7px;border:1px solid var(--border);background:#fff;border-radius:12px;padding:12px 13px;font:inherit;color:var(--fg);outline:none}.schedule-modal input:focus,.schedule-modal textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(169,95,59,.1)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.schedule-total{padding:14px 0;border-top:1px solid var(--border);margin-top:8px}
@media(max-width:1050px){.nav{gap:10px}.cart-pill{padding:9px 11px}.navlinks{gap:16px}}
@media(max-width:620px){.cart-pill{font-size:12px;padding:9px}.cart-drawer{width:100%}.cart-head{padding:18px}.cart-items{padding:12px 18px}.cart-summary{padding:16px 18px}.form-row{grid-template-columns:1fr}.schedule-modal .cart-head h2{font-size:27px}}
.customer-box{padding:16px 24px 10px;border-bottom:1px solid var(--border);background:#fffaf2}.customer-box-head{display:flex;flex-direction:column;gap:3px;margin-bottom:12px}.customer-box-head strong{font-family:Georgia,serif;font-size:18px;color:var(--fg)}.customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.customer-grid label{font-size:12px;font-weight:700;color:var(--fg)}.customer-grid input{display:block;width:100%;margin-top:6px;border:1px solid var(--border);background:white;border-radius:10px;padding:10px 11px;font:inherit;color:var(--fg);outline:none;box-sizing:border-box}.customer-grid input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(169,95,59,.1)}.customer-box small{display:block;color:var(--muted);font-size:11px;margin-top:10px;line-height:1.4}.cart-items{min-height:100px}@media(max-width:620px){.customer-box{padding:14px 18px 10px}.customer-grid{grid-template-columns:1fr}}
/* Tema compra online + retirada na loja */
:root{--checkout:#7f4f24;--checkout-soft:#f4eadc}
.storebox{background:linear-gradient(135deg,#6f4422,#b9783e)}
.cart-summary{background:#fbf3e8}
.payment-overlay{position:fixed;inset:0;background:rgba(32,25,20,.55);opacity:0;visibility:hidden;transition:.25s;z-index:140;display:grid;place-items:center;padding:20px}.payment-overlay.show{opacity:1;visibility:visible}.payment-modal{width:min(520px,100%);max-height:calc(100dvh - 40px);overflow:auto;background:var(--card);border-radius:26px;box-shadow:0 25px 80px rgba(0,0,0,.25)}.payment-body{padding:24px}.payment-total{display:flex;justify-content:space-between;align-items:center;padding:18px;border-radius:18px;background:var(--checkout-soft);margin-bottom:18px}.payment-total strong{font:26px Georgia,serif;color:var(--primary)}.pix-box{border:1px solid var(--border);border-radius:18px;padding:18px;text-align:center;background:#fff}.pix-label{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--muted);margin-bottom:8px}.pix-box strong{display:block;font-size:22px;letter-spacing:.03em;margin-bottom:14px;color:var(--fg)}.payment-steps{padding-left:22px;color:var(--muted);line-height:1.65}.payment-steps li{display:list-item;margin:8px 0}.payment-note{display:block;color:var(--muted);line-height:1.5;text-align:center;margin-top:14px}.payment-body .full{margin-top:10px}
@media(max-width:620px){.payment-modal{border-radius:20px}.payment-body{padding:18px}.pix-box strong{font-size:19px}}

.admin-access{font-size:11px;color:inherit;opacity:.25;text-decoration:none;margin:8px}.admin-access:hover{opacity:.7}

.delivery-choice{border:1px solid rgba(0,0,0,.12);border-radius:16px;padding:14px;margin:14px 0;display:flex;gap:18px;flex-wrap:wrap}.delivery-choice legend{font-weight:700;padding:0 6px}.delivery-choice label{display:flex;align-items:center;gap:7px}.delivery-choice input{width:auto}

/* ---- Novo cabeçalho e hero: identidade Kit Piquenique ---- */
.brand{display:flex;align-items:center;gap:12px;font:24px Georgia,serif}
.brand-badge{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#a95f3b,#d79a58);color:#fff;flex-shrink:0}
.brand-badge svg{width:26px;height:26px}
.brand-text{display:flex;flex-direction:column;line-height:1.15}
.brand-name{font:22px Georgia,serif;color:var(--fg)}
.brand-sub{font-family:Arial,Helvetica,sans-serif;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:2px}
.nav-icons{display:flex;align-items:center;gap:10px}
.icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid var(--border);background:#fff;color:var(--fg);cursor:pointer;transition:.2s}
.icon-btn svg{width:19px;height:19px}
.icon-btn:hover{border-color:var(--primary);color:var(--primary)}
.cart-icon-btn #cartCount{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 4px;border-radius:999px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;display:inline-grid;place-items:center;border:2px solid var(--bg)}

.hero:after{background:linear-gradient(180deg,rgba(20,15,10,.35),rgba(20,15,10,.55) 55%,rgba(20,15,10,.78))}
.hero .eyebrow{display:inline-flex;align-items:center}
.actions .pill{display:inline-flex;align-items:center;gap:8px}
.trust-row{display:flex;gap:34px;list-style:none;padding:0;margin:38px 0 0;border-top:1px solid rgba(255,255,255,.22);padding-top:24px}
.trust-row li{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;line-height:1.25;color:#fff}
.trust-row svg{flex-shrink:0;opacity:.9}
@media(max-width:620px){
  .brand-badge{width:38px;height:38px;border-radius:11px}.brand-badge svg{width:21px;height:21px}
  .brand-name{font-size:18px}.brand-sub{font-size:9px}
  .icon-btn{width:38px;height:38px}
  .trust-row{gap:20px;flex-wrap:wrap}
}


/* HERO PREMIUM — referência visual enviada pelo cliente */
header{position:absolute;top:0;left:0;width:100%;background:transparent;border-bottom:0;backdrop-filter:none;z-index:50;color:#fff}
header .nav{height:108px}
header .brand-name, header .brand-sub{color:#fff}
header .brand-badge{width:58px;height:58px;border-radius:0;background:transparent;color:#fff}
header .brand-badge svg{width:52px;height:52px}
header .icon-btn{width:48px;height:48px;border:0;background:transparent;color:#fff;box-shadow:none}
header .icon-btn svg{width:32px;height:32px}
header .icon-btn:hover{color:#fff;transform:translateY(-1px)}
header .cart-icon-btn #cartCount{background:#c8793c;border-color:transparent;top:-2px;right:-1px}
.hero{min-height:calc(100vh - 0px);height:760px;max-height:900px}
.hero-content{min-height:760px;align-items:center;padding-top:35px}
.hero-copy{max-width:690px;padding-bottom:15px}
.hero:after{background:linear-gradient(90deg,rgba(10,8,5,.82) 0%,rgba(20,14,8,.64) 38%,rgba(20,14,8,.12) 76%,rgba(20,14,8,.05) 100%)}
.hero h1{font-size:clamp(54px,6.1vw,88px);line-height:.96;letter-spacing:-.035em;margin-top:24px;text-shadow:0 3px 24px rgba(0,0,0,.2)}
.hero h1:after{content:"";display:block;width:145px;height:8px;border-radius:20px;background:#d78639;transform:rotate(-5deg);margin:20px 0 0 250px;box-shadow:0 4px 15px rgba(215,134,57,.35)}
.hero p{max-width:700px;font-size:19px;line-height:1.55;margin-top:28px;color:rgba(255,255,255,.92)}
.hero .eyebrow{background:rgba(184,102,43,.82);border:1px solid rgba(255,255,255,.08);padding:9px 16px;font-size:12px}
.actions{margin-top:34px;gap:14px}
.actions .pill{min-height:58px;padding:15px 25px;font-size:16px}
.actions .warm{background:linear-gradient(135deg,#c97432,#e5a35f);box-shadow:0 14px 35px rgba(72,39,18,.3)}
.actions .ghost{background:rgba(20,14,8,.18);border-color:rgba(255,255,255,.72);backdrop-filter:blur(5px)}
.trust-row{gap:36px;margin-top:42px;padding-top:22px;border-top-color:rgba(255,255,255,.25)}
.trust-row li{font-size:15px}
@media(max-width:900px){header .nav{height:88px}.hero{height:700px}.hero-content{min-height:700px}.hero h1{font-size:clamp(48px,8vw,72px)}}
@media(max-width:620px){header .nav{height:78px}.hero,.hero-content{min-height:720px;height:720px}.hero-content{padding-top:55px;align-items:center}.hero-copy{max-width:100%;padding-bottom:30px}.hero:after{background:linear-gradient(180deg,rgba(10,8,5,.62),rgba(10,8,5,.68) 45%,rgba(10,8,5,.78) 100%)}.hero h1{font-size:46px;line-height:.98;margin-top:20px}.hero h1:after{width:100px;height:6px;margin:16px 0 0 120px}.hero p{font-size:16px;line-height:1.5;margin-top:24px}.actions{margin-top:26px}.actions .pill{min-height:52px;padding:13px 19px;font-size:14px}.trust-row{gap:18px;margin-top:30px;padding-top:18px}.trust-row li{font-size:12px}.trust-row svg{width:17px;height:17px}header .brand-badge{width:43px;height:43px}header .brand-badge svg{width:40px;height:40px}header .brand-name{font-size:18px}header .brand-sub{font-size:8px}header .icon-btn{width:40px;height:40px}header .icon-btn svg{width:27px;height:27px}.nav-icons{gap:2px}}

/* =========================================================
   FIX FINAL — HERO + RESPONSIVIDADE PC / TABLET / CELULAR
   ========================================================= */

html, body { overflow-x: hidden; }

/* Cabeçalho sempre sobre o hero, sem empurrar nem colidir com o conteúdo */
header {
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  width: 100%;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  z-index: 20;
}
header .nav {
  width: min(1152px, calc(100% - 40px));
  min-height: 96px;
  height: 96px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
header .brand {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 11px;
  color: #fff;
}
header .brand-badge {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  background: transparent !important;
  color: #fff !important;
  border-radius: 0;
}
header .brand-badge svg { width: 48px; height: 48px; }
header .brand-text { min-width: 0; }
header .brand-name {
  display: block;
  color: #fff !important;
  font-size: 23px;
  line-height: 1.05;
  white-space: nowrap;
  text-shadow: 0 2px 12px rgba(0,0,0,.35);
}
header .brand-sub {
  display: block;
  color: rgba(255,255,255,.9) !important;
  font-size: 9px;
  line-height: 1.2;
  letter-spacing: .19em;
  white-space: nowrap;
}
header .nav-icons { flex: 0 0 auto; display: flex; align-items: center; gap: 12px; }
header .icon-btn {
  width: 46px;
  height: 46px;
  padding: 0;
  border: 0 !important;
  background: rgba(0,0,0,.08) !important;
  color: #fff !important;
  box-shadow: none !important;
  border-radius: 50%;
  backdrop-filter: blur(4px);
}
header .icon-btn svg { width: 30px; height: 30px; }
header .cart-icon-btn #cartCount {
  top: -3px;
  right: -3px;
  min-width: 19px;
  height: 19px;
  background: #c8793c;
  border: 2px solid rgba(255,255,255,.15);
}

/* Hero alinhado com a referência, sem sobreposição */
.hero {
  position: relative;
  min-height: 760px;
  height: min(100svh, 900px);
  overflow: hidden;
}
.hero > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(90deg,
      rgba(12,9,6,.84) 0%,
      rgba(18,12,7,.68) 34%,
      rgba(18,12,7,.22) 66%,
      rgba(18,12,7,.04) 100%);
}
.hero-content {
  position: relative;
  z-index: 2;
  width: min(1152px, calc(100% - 40px));
  min-height: 760px;
  height: 100%;
  margin: 0 auto;
  padding: 126px 0 56px;
  display: flex;
  align-items: center;
}
.hero-copy {
  width: min(100%, 690px);
  max-width: 690px;
  padding: 0;
  margin: 0;
}
.hero .eyebrow {
  margin: 0;
  max-width: 100%;
  color: #fff;
  background: rgba(190,108,49,.88);
  border: 0;
  padding: 8px 14px;
  font-size: 11px;
  line-height: 1.2;
  letter-spacing: .17em;
}
.hero h1 {
  max-width: 700px;
  margin: 22px 0 0;
  color: #fff;
  font-size: clamp(52px, 6.3vw, 88px);
  line-height: .97;
  letter-spacing: -.045em;
  text-shadow: 0 4px 22px rgba(0,0,0,.22);
}
.hero h1::after {
  content: "";
  display: block;
  width: 140px;
  height: 7px;
  margin: 20px 0 0 245px;
  border-radius: 999px;
  background: #df8939;
  transform: rotate(-4deg);
  box-shadow: 0 4px 14px rgba(223,137,57,.3);
}
.hero p {
  max-width: 680px;
  margin: 25px 0 0;
  color: rgba(255,255,255,.94);
  font-size: 18px;
  line-height: 1.55;
  text-shadow: 0 2px 12px rgba(0,0,0,.22);
}
.actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  margin: 30px 0 0;
}
.actions .pill {
  min-height: 56px;
  padding: 14px 24px;
  font-size: 15px;
  gap: 8px;
}
.actions .warm {
  background: linear-gradient(135deg,#c87331,#e4a15d);
  color: #fff;
  box-shadow: 0 14px 32px rgba(58,31,13,.3);
}
.actions .ghost {
  background: rgba(20,14,8,.2);
  color: #fff;
  border: 1px solid rgba(255,255,255,.72);
  backdrop-filter: blur(5px);
}
.trust-row {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 0;
  width: min(100%, 675px);
  margin: 38px 0 0;
  padding: 20px 0 0;
  list-style: none;
  border-top: 1px solid rgba(255,255,255,.26);
}
.trust-row li {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 38px;
  padding: 0 24px;
  color: #fff;
  font-size: 14px;
  line-height: 1.15;
  font-weight: 700;
  border-right: 1px solid rgba(255,255,255,.28);
}
.trust-row li:first-child { padding-left: 0; }
.trust-row li:last-child { border-right: 0; }
.trust-row svg { flex: 0 0 auto; }

/* Tablet */
@media (max-width: 900px) {
  header .nav { width: min(100% - 28px, 760px); min-height: 82px; height: 82px; }
  .hero { min-height: 720px; height: 760px; }
  .hero-content { width: min(100% - 28px, 760px); min-height: 720px; padding-top: 110px; padding-bottom: 40px; }
  .hero-copy { max-width: 650px; }
  .hero h1 { font-size: clamp(48px, 8vw, 70px); }
  .hero p { font-size: 17px; max-width: 620px; }
  .trust-row { width: 100%; }
}

/* Celular — duas colunas no catálogo e hero sem elementos sobrepostos */
@media (max-width: 620px) {
  header .nav {
    width: calc(100% - 24px);
    height: 74px;
    min-height: 74px;
    gap: 8px;
  }
  header .brand { gap: 7px; min-width: 0; }
  header .brand-badge { width: 39px; height: 39px; flex-basis: 39px; }
  header .brand-badge svg { width: 37px; height: 37px; }
  header .brand-name { font-size: 17px; }
  header .brand-sub { font-size: 7px; letter-spacing: .15em; }
  header .nav-icons { gap: 2px; }
  header .icon-btn { width: 38px; height: 38px; }
  header .icon-btn svg { width: 25px; height: 25px; }
  header .cart-icon-btn #cartCount { min-width: 17px; height: 17px; font-size: 10px; }

  .hero {
    min-height: 780px;
    height: auto;
  }
  .hero > img {
    object-position: 62% center;
  }
  .hero::after {
    background: linear-gradient(180deg,
      rgba(10,7,5,.66) 0%,
      rgba(10,7,5,.70) 42%,
      rgba(10,7,5,.82) 100%);
  }
  .hero-content {
    width: calc(100% - 28px);
    min-height: 780px;
    height: auto;
    padding: 108px 0 34px;
    align-items: flex-start;
  }
  .hero-copy { width: 100%; max-width: 100%; }
  .hero .eyebrow {
    font-size: 9px;
    letter-spacing: .13em;
    padding: 8px 10px;
  }
  .hero h1 {
    max-width: 100%;
    margin-top: 18px;
    font-size: clamp(42px, 12.5vw, 57px);
    line-height: .98;
    letter-spacing: -.045em;
  }
  .hero h1::after {
    width: 96px;
    height: 6px;
    margin: 16px 0 0 82px;
  }
  .hero p {
    max-width: 100%;
    margin-top: 21px;
    font-size: 15px;
    line-height: 1.48;
  }
  .actions {
    margin-top: 23px;
    gap: 9px;
  }
  .actions .pill {
    min-height: 50px;
    padding: 12px 16px;
    font-size: 14px;
  }
  .trust-row {
    width: 100%;
    margin-top: 27px;
    padding-top: 16px;
    gap: 0;
    justify-content: space-between;
  }
  .trust-row li,
  .trust-row li:first-child {
    flex: 1 1 33.333%;
    min-width: 0;
    padding: 0 8px;
    gap: 6px;
    font-size: 11px;
  }
  .trust-row li:first-child { padding-left: 0; }
  .trust-row li:last-child { padding-right: 0; }
  .trust-row svg { width: 16px; height: 16px; }

  /* Catálogo: 2 produtos por linha no celular */
  .grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  .card { min-width: 0; }
  .cardbody { padding: 13px 11px !important; }
  .card .titleline { display: block !important; }
  .card .titleline h4 { font-size: 16px; line-height: 1.15; margin-bottom: 6px; }
  .card .price { font-size: 15px; }
  .card ul { padding-left: 0; margin: 10px 0; }
  .card ul li { font-size: 11px; line-height: 1.35; }
  .outline-btn { width: 100%; padding: 10px 8px !important; font-size: 11px !important; }
}

@media (max-width: 380px) {
  header .brand-name { font-size: 15px; }
  header .brand-sub { font-size: 6px; }
  header .brand-badge { width: 35px; height: 35px; flex-basis: 35px; }
  header .brand-badge svg { width: 33px; height: 33px; }
  .hero-content { width: calc(100% - 22px); padding-top: 102px; }
  .hero h1 { font-size: 40px; }
  .actions .pill { padding: 11px 12px; font-size: 13px; }
  .trust-row li, .trust-row li:first-child { font-size: 10px; }
}


/* ===== HERO FINAL — referência enviada pelo cliente ===== */
html, body { overflow-x: hidden; }
header {
  position: absolute !important;
  top: 0 !important; left: 0 !important; right: 0 !important;
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  z-index: 50 !important;
}
header .nav {
  width: min(1500px, calc(100% - 120px)) !important;
  min-height: 112px !important;
  height: 112px !important;
}
header .brand { gap: 16px !important; }
header .brand-badge { width: 76px !important; height: 76px !important; flex-basis: 76px !important; }
header .brand-badge svg { width: 72px !important; height: 72px !important; }
header .brand-name { font-size: 48px !important; line-height: .98 !important; }
header .brand-sub { font-size: 11px !important; letter-spacing: .24em !important; text-align: center; }
header .nav-icons { gap: 18px !important; }
header .icon-btn { width: 54px !important; height: 54px !important; background: transparent !important; }
header .icon-btn svg { width: 39px !important; height: 39px !important; }
header .cart-icon-btn #cartCount { top: -2px !important; right: -4px !important; }

.hero {
  min-height: 100svh !important;
  height: max(760px, 100svh) !important;
  background: #22311b;
}
.hero > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.hero::after {
  background: linear-gradient(90deg,
    rgba(9,10,4,.88) 0%,
    rgba(12,12,5,.72) 30%,
    rgba(12,12,5,.28) 58%,
    rgba(12,12,5,.05) 100%) !important;
}
.hero-content {
  width: min(1500px, calc(100% - 120px)) !important;
  min-height: 100svh !important;
  height: 100% !important;
  padding: 158px 0 55px !important;
  align-items: flex-start !important;
}
.hero-copy { max-width: 720px !important; }
.hero .eyebrow {
  font-size: 13px !important;
  padding: 10px 17px !important;
  letter-spacing: .18em !important;
  background: rgba(190,108,49,.92) !important;
}
.hero h1 {
  max-width: 760px !important;
  font-size: clamp(58px, 5.7vw, 92px) !important;
  line-height: .97 !important;
  margin-top: 22px !important;
  letter-spacing: -.045em !important;
}
.hero h1::after {
  width: 160px !important;
  height: 8px !important;
  margin: 18px 0 0 310px !important;
}
.hero p {
  max-width: 690px !important;
  font-size: 20px !important;
  line-height: 1.55 !important;
  margin-top: 28px !important;
}
.actions { margin-top: 30px !important; }
.actions .pill { min-height: 60px !important; padding: 15px 28px !important; font-size: 17px !important; }
.trust-row { width: 690px !important; max-width: 100% !important; margin-top: 38px !important; padding-top: 20px !important; }
.trust-row li { font-size: 16px !important; padding-left: 25px !important; padding-right: 25px !important; }
.trust-row li:first-child { padding-left: 0 !important; }

@media (max-width: 1100px) and (min-width: 621px) {
  header .nav, .hero-content { width: calc(100% - 64px) !important; }
  header .brand-name { font-size: 38px !important; }
  header .brand-badge { width: 64px !important; height: 64px !important; flex-basis: 64px !important; }
  header .brand-badge svg { width: 60px !important; height: 60px !important; }
  .hero-content { padding-top: 140px !important; }
  .hero h1 { font-size: clamp(52px, 6.8vw, 76px) !important; }
}

@media (max-width: 620px) {
  header .nav {
    width: calc(100% - 24px) !important;
    height: 78px !important;
    min-height: 78px !important;
  }
  header .brand { gap: 7px !important; }
  header .brand-badge { width: 43px !important; height: 43px !important; flex-basis: 43px !important; }
  header .brand-badge svg { width: 40px !important; height: 40px !important; }
  header .brand-name { font-size: 18px !important; }
  header .brand-sub { font-size: 7px !important; letter-spacing: .15em !important; }
  header .nav-icons { gap: 2px !important; }
  header .icon-btn { width: 40px !important; height: 40px !important; }
  header .icon-btn svg { width: 27px !important; height: 27px !important; }

  .hero { min-height: 760px !important; height: 760px !important; }
  .hero > img { object-position: 63% center !important; }
  .hero::after {
    background: linear-gradient(180deg,
      rgba(9,10,4,.70) 0%,
      rgba(9,10,4,.66) 35%,
      rgba(9,10,4,.78) 100%) !important;
  }
  .hero-content {
    width: calc(100% - 28px) !important;
    min-height: 760px !important;
    padding: 105px 0 30px !important;
    align-items: flex-start !important;
  }
  .hero-copy { max-width: 100% !important; }
  .hero .eyebrow { font-size: 9px !important; padding: 8px 10px !important; }
  .hero h1 {
    font-size: clamp(41px, 12.5vw, 56px) !important;
    line-height: .98 !important;
    margin-top: 18px !important;
  }
  .hero h1::after { width: 95px !important; height: 6px !important; margin: 15px 0 0 80px !important; }
  .hero p { font-size: 15px !important; line-height: 1.5 !important; margin-top: 21px !important; }
  .actions { margin-top: 23px !important; gap: 8px !important; }
  .actions .pill { min-height: 50px !important; padding: 12px 15px !important; font-size: 14px !important; }
  .trust-row { width: 100% !important; margin-top: 28px !important; padding-top: 16px !important; }
  .trust-row li, .trust-row li:first-child { padding: 0 7px !important; font-size: 11px !important; }
  .grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 12px !important; }
}

/* Ícone do Instagram no cabeçalho */
header .instagram-top {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
header .instagram-top:hover {
  transform: translateY(-2px) scale(1.04);
}
header .instagram-top:focus-visible {
  outline: 2px solid rgba(255,255,255,.9);
  outline-offset: 3px;
}

/* STATUS DO PEDIDO */
.status-overlay{position:fixed;inset:0;background:rgba(18,12,8,.72);backdrop-filter:blur(8px);z-index:3000;display:none;align-items:center;justify-content:center;padding:20px}
.status-overlay.show{display:flex}
.status-modal{width:min(100%,500px);background:#fffaf3;border-radius:28px;padding:34px;text-align:center;box-shadow:0 25px 80px rgba(0,0,0,.35);animation:statusPop .25s ease}
.status-icon{width:78px;height:78px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;font-size:38px;background:rgba(207,125,53,.13)}
.status-modal h2{margin:7px 0 12px;font-size:30px;color:#35271f}.status-modal p{color:#65594f;line-height:1.6;margin:0 0 18px}
.status-card{text-align:left;background:#fff;border:1px solid rgba(207,125,53,.28);border-radius:18px;padding:16px 18px;margin:20px 0}.status-card span{display:block;font-size:11px;letter-spacing:1.5px;color:#9b7a5e;margin-bottom:7px}.status-card strong{display:block;color:#4b3727;margin-bottom:7px}.status-card small{display:block;color:#7b6b5d;line-height:1.45}.status-order{font-size:13px;color:#8b7765!important;margin-top:-6px!important}
.status-modal .full{width:100%;margin-top:10px}
@keyframes statusPop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:600px){.status-overlay{padding:14px}.status-modal{padding:28px 20px;border-radius:22px}.status-modal h2{font-size:25px}.status-icon{width:68px;height:68px;font-size:32px}}

.status-modal{max-width:480px}.status-body{padding:32px 26px;text-align:center}.status-icon{width:68px;height:68px;margin:0 auto 16px;border-radius:50%;display:grid;place-items:center;background:var(--checkout-soft);color:var(--primary);font-size:32px;font-weight:800}.status-body h2{font:clamp(30px,6vw,42px) Georgia,serif;margin:8px 0 12px;color:var(--fg)}.status-body>p{color:var(--muted);line-height:1.6;margin:0 auto 22px;max-width:390px}.status-card{text-align:left;border:1px solid var(--border);border-radius:18px;padding:18px;background:#fff;margin:18px 0}.status-card>span{display:block;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.status-card>strong{display:block;font-size:18px;margin:5px 0 16px;color:var(--fg)}.status-line{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:14px;padding:9px 0}.status-line i{display:block;width:12px;height:12px;border-radius:50%;background:#d9d4cd}.status-line.current{color:var(--primary);font-weight:700}.status-line.current i{background:var(--primary);box-shadow:0 0 0 5px rgba(184,117,62,.15)}@media(max-width:620px){.status-body{padding:26px 18px}.status-body h2{font-size:34px}.status-card{padding:15px}}
.status-line.done{color:#4b6b54;font-weight:600}.status-line.done i{background:#5f9a70;box-shadow:0 0 0 4px rgba(95,154,112,.12)}

/* AVISOS AMIGÁVEIS AO CLIENTE — substitui os alertas nativos do navegador */
.notice-overlay{position:fixed;inset:0;background:rgba(18,12,8,.68);backdrop-filter:blur(7px);z-index:4000;display:none;align-items:center;justify-content:center;padding:18px}
.notice-overlay.show{display:flex}
.notice-modal{width:min(100%,430px);background:#fffaf4;border:1px solid rgba(184,117,62,.2);border-radius:26px;padding:30px 26px;text-align:center;box-shadow:0 28px 90px rgba(0,0,0,.35);animation:noticePop .22s ease}
.notice-icon{width:68px;height:68px;margin:0 auto 13px;border-radius:50%;display:grid;place-items:center;background:rgba(207,125,53,.13);font-size:31px}
.notice-modal h2{margin:7px 0 10px;font:700 clamp(25px,5vw,32px) Georgia,serif;color:#35271f}
.notice-modal p{margin:0 auto 18px;max-width:360px;color:#65594f;line-height:1.6;font-size:15px}
.notice-modal .full{width:100%;margin-top:9px}
@keyframes noticePop{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:520px){.notice-overlay{padding:14px}.notice-modal{padding:25px 18px;border-radius:22px}.notice-icon{width:62px;height:62px}.notice-modal p{font-size:14px}}

/* Botão de acompanhamento do pedido no cabeçalho */
header .track-order-btn { position: relative; }
header .track-order-btn .track-dot { position:absolute; right:3px; top:4px; width:8px; height:8px; border-radius:50%; background:#d9914b; border:2px solid transparent; opacity:.95; }
header .track-order-btn.has-order .track-dot { background:#78b98a; box-shadow:0 0 0 3px rgba(120,185,138,.16); }
@media(max-width:620px){ header .track-order-btn .track-dot { right:2px; top:3px; width:7px; height:7px; } }

/* Histórico de pedidos do cliente */
.status-history-modal{width:min(100%,680px);max-height:min(88vh,820px);overflow:auto;text-align:left}
.status-history-modal .kicker,.status-history-modal>h2,.status-history-modal>p,.status-history-modal>.status-icon{text-align:center;display:block}
.status-history-modal>p{margin-bottom:14px}
.order-history{display:grid;gap:10px;margin:14px 0 16px}
.history-order{background:#fff;border:1px solid #e7ddd2;border-radius:16px;padding:14px;transition:.2s}
.history-order.current-order{border-color:#c47b45;box-shadow:0 0 0 2px rgba(196,123,69,.09)}
.history-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.history-head strong{display:block;color:#49362a;font-size:14px;letter-spacing:.2px}
.history-head small{display:block;color:#8b7c70;font-size:10px;margin-top:4px}
.history-status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;white-space:nowrap}
.history-status.awaiting_payment{background:#eee8e1;color:#75685d}
.history-status.awaiting_confirmation{background:#f7e5d1;color:#955526}
.history-status.confirmed{background:#dceee1;color:#2e6944}
.history-status.cancelled{background:#f5dddd;color:#922e2a}
.history-meta{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 9px;padding:9px 0;border-top:1px solid #eee5dd;border-bottom:1px solid #eee5dd;color:#786b60;font-size:11px}
.history-meta b{color:#4b3a30}
.history-items{display:grid;gap:5px}
.history-items>div{display:flex;justify-content:space-between;gap:10px;color:#5e5147;font-size:11px}
.history-items b{color:#4b3a30}
.history-note{display:block;margin-top:9px;color:#8a7a6e;font-size:10px;line-height:1.45}
.history-loading,.history-empty,.history-error{padding:28px 15px;border:1px dashed #d8c8ba;border-radius:15px;text-align:center;color:#84766a;font-size:12px}
.history-empty strong{display:block;color:#4b3a30;font-size:14px;margin-bottom:5px}
.history-empty span{display:block}
.history-error{border-color:#e0b5b0;color:#8d413a}
@media(max-width:620px){.status-history-modal{padding:22px 14px;max-height:92vh}.history-head{display:block}.history-status{margin-top:8px}.history-meta{grid-template-columns:1fr}.history-order{padding:12px}.status-history-modal h2{font-size:25px}}


.track-phone-form{margin:14px 0 18px;text-align:left}.track-phone-form label{display:block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.track-phone-row{display:flex;gap:8px}.track-phone-row input{min-width:0;flex:1;border:1px solid #e2d5c8;border-radius:12px;padding:12px 13px;background:#fff;font:inherit}.track-phone-row button{width:auto;padding:10px 16px;white-space:nowrap}.history-order{word-break:break-word}
@media(max-width:600px){.track-phone-row{flex-direction:column}.track-phone-row button{width:100%}}

/* Aviso de disponibilidade da loja */
.store-status-banner{position:fixed;top:86px;left:50%;transform:translateX(-50%);z-index:180;width:max-content;max-width:min(560px,calc(100% - 24px));display:flex;align-items:center;gap:10px;padding:9px 14px;border-radius:999px;background:#fffaf4;border:1px solid #ead4c2;box-shadow:0 10px 30px rgba(30,22,16,.16);pointer-events:none}.store-status-banner[hidden]{display:none}.store-status-icon{width:9px;height:9px;border-radius:50%;background:#bd7040;flex:0 0 9px;box-shadow:0 0 0 4px #f8eadf}.store-status-copy{min-width:0;display:flex;align-items:baseline;gap:7px}.store-status-copy strong{font-size:11px;color:var(--fg);white-space:nowrap}.store-status-copy span{font-size:10px;color:var(--muted);line-height:1.3}.store-status-banner.is-error{border-color:#eccaca;background:#fff8f8}.store-status-banner.is-error .store-status-icon{background:#b43b34;box-shadow:0 0 0 4px #fae7e5}@media(max-width:620px){.store-status-banner{top:74px;max-width:calc(100% - 18px);padding:8px 11px}.store-status-copy{gap:5px;display:block}.store-status-copy strong,.store-status-copy span{font-size:10px}.store-status-copy strong{margin-right:4px}}
.pickup-availability-hint{grid-column:1/-1;margin-top:-4px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface2);font-size:12px;color:var(--muted)}

/* Carrinho no estilo compacto da referência */
.cart-drawer{background:#fffaf7}
.cart-drawer .customer-box{display:none;flex:0 0 auto}
.cart-drawer.checkout-details-open .customer-box{display:block}
.cart-drawer .cart-head{padding:18px 18px 14px}
.cart-drawer .cart-head h2{font-size:28px;margin:0;font-family:Georgia,serif}
.cart-drawer .cart-head .kicker{display:none}
.cart-drawer .cart-items{padding:12px 18px;flex:1;min-height:0}
.cart-drawer .cart-item{grid-template-columns:54px 1fr auto;gap:2px 0;padding:12px 0;border-bottom:1px solid #eaded5;align-items:center}
.cart-drawer .cart-item img{width:54px;height:54px;border-radius:0;object-fit:cover}
.cart-drawer .cart-item-info{background:#74364d;color:#fff;padding:6px 7px;min-height:54px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.cart-drawer .cart-item-info strong{font-family:inherit;font-size:14px;color:#201813;line-height:1.15}
.cart-drawer .cart-item-info>span{color:#fff;font-size:11px;margin-top:4px}
.cart-drawer .cart-item .item-subtotal{padding-left:10px;color:#241a15;font-family:inherit;font-size:14px;white-space:nowrap}
.cart-drawer .qty{margin-top:3px;gap:4px}
.cart-drawer .qty button:not(.remove){display:none}
.cart-drawer .qty b{display:none}
.cart-drawer .qty .remove{border:0;background:transparent;color:#d06179;padding:0;width:auto;height:auto;font-size:11px;font-weight:800}
.cart-drawer .cart-summary{padding:16px 18px 14px;background:#fffaf7;border-top:1px solid #eaded5}
.cart-address{background:#dfeadb;color:#5d6759;border-radius:11px;padding:11px 12px;font-size:11px;line-height:1.45;margin-bottom:14px}
.cart-total-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;color:#74364d;font-weight:800}
.cart-total-row strong{font:700 18px Georgia,serif;color:#74364d}
.cart-availability[hidden]{display:none !important}.cart-availability{display:flex;align-items:center;gap:9px;background:#fff0ee;border:1px solid #efc9c5;border-radius:11px;padding:9px 11px;margin-bottom:10px;color:#8c3b35}
.cart-availability-dot{width:9px;height:9px;border-radius:50%;background:#b7433b;flex:0 0 auto}
.cart-availability strong{display:block;font-size:12px}
.cart-availability small{display:block;margin-top:2px;font-size:10px;line-height:1.35}
.cart-drawer #scheduleOrder{background:#ca5b78;border-color:#ca5b78;min-height:46px}
.cart-drawer #scheduleOrder.is-disabled,.cart-drawer #scheduleOrder:disabled{opacity:.55;cursor:not-allowed}
.cart-drawer #sendOrder{display:none}

/* Etapas visuais do acompanhamento */
.status-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin:14px 0 12px}
.status-step{min-width:0;border:1px solid #eaded5;border-radius:12px;padding:8px 4px;text-align:center;color:#806f63;font-size:9px;line-height:1.15;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.status-step i{width:8px;height:8px;border-radius:50%;background:#d8d0ca;display:block}
.status-step.done{color:#5b765f;background:#eef5ee;border-color:#d6e7d8;font-weight:700}
.status-step.done i{background:#65a26f}
.status-step.current{color:#74364d;background:#f8edf0;border-color:#d6a6b5;font-weight:800}
.status-step.current i{background:#74364d;box-shadow:0 0 0 4px rgba(116,54,77,.1)}
.status-step.cancelled-step{color:#9b3e39;background:#f9e9e7;border-color:#edc6c1}
.status-step.cancelled-step i{background:#b7433b}
.history-message{padding:12px 13px;border-left:3px solid #d7b79e;background:#fffaf7;margin-top:4px}
.history-message strong{display:block;color:#4c3a31;font-size:12px;margin-bottom:5px}
.history-message small{display:block;color:#8b7b70;font-size:10px;line-height:1.45}
.history-total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eaded5;margin-top:10px;padding-top:13px;color:#6f6259;font-size:12px}
.history-total strong{font:700 18px Georgia,serif;color:#30231d}
@media(max-width:620px){.status-steps{gap:3px}.status-step{font-size:8px;padding:7px 2px}.history-message{padding:11px}.cart-drawer .cart-items{padding-left:16px;padding-right:16px}}

/* Ajustes finais de responsividade */
@media (max-width: 700px){body{overflow-x:hidden}.cart-drawer{max-width:100vw}.payment-modal,.status-modal,.notice-modal,.status-history-modal{max-width:calc(100vw - 20px);box-sizing:border-box}.form-row{gap:10px}}

/* Horários públicos: botão moderno + painel sincronizado com MySQL */
.hours-overlay{position:fixed;inset:0;background:rgba(25,19,15,.48);opacity:0;visibility:hidden;transition:.22s;z-index:130;display:grid;place-items:center;padding:18px;backdrop-filter:blur(3px)}
.hours-overlay.show{opacity:1;visibility:visible}
.hours-modal{width:min(520px,100%);max-height:min(720px,calc(100dvh - 36px));overflow:auto;background:#fffaf7;border:1px solid rgba(169,95,59,.18);border-radius:26px;box-shadow:0 24px 70px rgba(35,25,19,.24)}
.hours-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:26px 26px 18px;border-bottom:1px solid #eaded5}
.hours-head h2{font:32px Georgia,serif;margin:5px 0 4px;color:var(--fg)}
.hours-head p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}
.hours-list{padding:12px 20px 18px}
.hours-row{display:grid;grid-template-columns:1fr auto 10px;align-items:center;gap:14px;padding:14px 6px;border-bottom:1px solid #eee3da}
.hours-row:last-child{border-bottom:0}
.hours-day{font-weight:700;font-size:14px;color:var(--fg)}
.hours-time{font-size:14px;color:var(--fg);font-variant-numeric:tabular-nums;white-space:nowrap}
.hours-time i{font-style:normal;color:#a98f80;padding:0 4px}
.hours-row.is-closed .hours-time{color:#9c8b80}
.hours-state{width:8px;height:8px;border-radius:50%;background:#6a8d70;box-shadow:0 0 0 4px #e7f0e7}
.hours-row.is-closed .hours-state{background:#b7aaa1;box-shadow:0 0 0 4px #eee9e5}
.hours-unavailable{margin:20px;padding:18px;border:1px dashed #ddc8bb;border-radius:16px;background:#fffdfb;color:var(--fg)}
.hours-unavailable strong,.hours-unavailable span{display:block}.hours-unavailable span{font-size:12px;color:var(--muted);margin-top:5px;line-height:1.45}
.hours-live{margin:18px 20px 4px;padding:12px 14px;border-radius:15px;display:flex;gap:10px;align-items:center;background:#edf4ed;border:1px solid #dbe8dc}
.hours-live.is-closed{background:#fff2ec;border-color:#f0d9cb}
.hours-live-dot{width:9px;height:9px;border-radius:50%;background:#63866b;box-shadow:0 0 0 4px #dce9dd;flex:0 0 9px}
.hours-live.is-closed .hours-live-dot{background:#b86b45;box-shadow:0 0 0 4px #f4dfd4}
.hours-live strong,.hours-live small{display:block}.hours-live strong{font-size:12px}.hours-live small{font-size:11px;color:var(--muted);margin-top:2px}
.hours-foot{padding:0 26px 22px;color:#9a8980;font-size:11px;line-height:1.45}
.hours-icon-btn{position:relative}
.hours-icon-btn:after{content:'';position:absolute;inset:5px;border:1px solid currentColor;border-radius:50%;opacity:.16;transition:.2s}
.hours-icon-btn:hover:after{inset:3px;opacity:.28}
@media(max-width:620px){.hours-overlay{padding:10px}.hours-modal{border-radius:22px;max-height:calc(100dvh - 20px)}.hours-head{padding:20px 18px 15px}.hours-head h2{font-size:28px}.hours-list{padding:8px 14px 14px}.hours-row{padding:13px 4px;grid-template-columns:1fr auto 8px}.hours-day,.hours-time{font-size:13px}.hours-live{margin:14px 14px 3px}.hours-foot{padding:0 18px 18px}}

/* Destaca o formulário quando algum dado obrigatório precisa ser corrigido. */
.cart-drawer .customer-box.customer-attention{animation:customerAttention 1.1s ease;box-shadow:inset 0 0 0 2px rgba(202,91,120,.55)}
@keyframes customerAttention{0%,100%{background:#fffaf2}35%{background:#fff0f3}70%{background:#fff7ef}}

/* Checkout simplificado: dados do cliente ficam no carrinho, sem modal de primeiro acesso. */
.customer-data-error{margin-top:10px;padding:10px 12px;border:1px solid rgba(169,95,59,.28);border-radius:10px;background:#fff4ee;color:#7d3426;font-size:12px;font-weight:700;line-height:1.4}
.customer-grid input.input-error{border-color:#b34732!important;box-shadow:0 0 0 3px rgba(179,71,50,.10)!important}

/* Checkout unificado: dados + retirada/devolução no próprio carrinho */
.checkout-pickup-block{margin-top:16px;padding-top:14px;border-top:1px solid var(--border)}
.checkout-pickup-block .customer-box-head{margin-bottom:8px}
.checkout-pickup-block .return-head{margin-top:14px}
.pickup-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pickup-grid label{font-size:12px;font-weight:700;color:var(--fg)}
.pickup-grid input{display:block;width:100%;margin-top:6px;border:1px solid var(--border);background:white;border-radius:10px;padding:10px 11px;font:inherit;color:var(--fg);outline:none;box-sizing:border-box}
.pickup-grid input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(169,95,59,.1)}
.pickup-grid input.input-error{border-color:#b34732!important;box-shadow:0 0 0 3px rgba(179,71,50,.10)!important}
#pickupAvailabilityHintCart{grid-column:1/-1;margin:0;padding:9px 10px}
@media(max-width:620px){.pickup-grid{grid-template-columns:1fr}.checkout-pickup-block{margin-top:14px;padding-top:12px}.cart-drawer.checkout-details-open .customer-box{flex:1 1 auto;max-height:none;overflow:auto}.cart-drawer.checkout-details-open .cart-items{flex:0 0 auto;max-height:26vh;overflow:auto}.cart-drawer .cart-summary{position:sticky;bottom:0;z-index:2}}
@media(max-width:380px){.pickup-grid{grid-template-columns:1fr}}
.checkout-notes{display:block;margin-top:12px;font-size:12px;font-weight:700;color:var(--fg)}
.checkout-notes textarea{display:block;width:100%;margin-top:6px;border:1px solid var(--border);background:white;border-radius:10px;padding:10px 11px;font:inherit;color:var(--fg);outline:none;resize:vertical;box-sizing:border-box}
.checkout-notes textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(169,95,59,.1)}
.history-pickup{display:flex;flex-wrap:wrap;gap:8px 16px;margin:10px 0;padding:10px 12px;border-radius:10px;background:#fff7ef;font-size:12px;color:var(--muted)}
.history-pickup b{color:var(--fg)}


/* Fluxo final do carrinho: itens primeiro; dados somente após "Finalizar pedido" */
.cart-drawer .customer-box[hidden]{display:none!important}
.cart-drawer.checkout-details-open .customer-box{display:block!important}
.cart-drawer:not(.checkout-details-open) .customer-box{display:none!important}
.cart-drawer:not(.checkout-details-open) .cart-items{flex:1 1 auto;max-height:none}
.cart-drawer.checkout-details-open .cart-items{flex:0 1 auto;max-height:30vh;overflow:auto}

/* Desktop: carrinho mais largo e campos confortáveis */
@media(min-width:821px){
  .cart-drawer{width:min(660px,calc(100vw - 48px))}
  .cart-drawer .cart-head{padding:22px 26px 18px}
  .cart-drawer .cart-items{padding:14px 26px}
  .cart-drawer .customer-box{padding:20px 26px 16px}
  .cart-drawer .cart-summary{padding:18px 26px 20px}
  .cart-drawer .customer-grid,.cart-drawer .pickup-grid{gap:12px 14px}
  .cart-drawer .customer-grid input,.cart-drawer .pickup-grid input,.cart-drawer .checkout-notes textarea{min-height:44px}
  .cart-drawer #scheduleOrder{min-height:50px;font-size:14px}
}

/* Celular: checkout em uma coluna e áreas fáceis de tocar */
@media(max-width:620px){
  .cart-drawer{width:100%;max-width:100vw}
  .cart-drawer .cart-head{padding:16px 16px 12px}
  .cart-drawer .cart-head h2{font-size:25px}
  .cart-drawer .cart-items{padding:10px 16px}
  .cart-drawer .customer-box{padding:15px 16px 12px}
  .cart-drawer .customer-grid,.cart-drawer .pickup-grid{grid-template-columns:1fr!important;gap:10px}
  .cart-drawer .customer-grid input,.cart-drawer .pickup-grid input{min-height:46px;font-size:16px}
  .cart-drawer .checkout-notes textarea{font-size:16px;min-height:74px}
  .cart-drawer .cart-summary{padding:13px 16px calc(14px + env(safe-area-inset-bottom));position:sticky;bottom:0;z-index:3}
  .cart-drawer #scheduleOrder{min-height:50px;font-size:14px}
  .cart-drawer.checkout-details-open .cart-items{max-height:24vh}
  .cart-drawer.checkout-details-open .customer-box{flex:1 1 auto;min-height:0;overflow-y:auto}
}


/* Adicionar produto sem interromper a compra: aviso discreto + destaque no carrinho */
.cart-added-toast{position:fixed;z-index:135;right:22px;top:92px;min-width:250px;max-width:min(360px,calc(100vw - 32px));padding:13px 16px;border:1px solid rgba(112,67,33,.15);border-radius:15px;background:#fffdf9;color:var(--fg);box-shadow:0 14px 42px rgba(48,39,31,.18);opacity:0;visibility:hidden;transform:translateY(-10px) scale(.98);pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.cart-added-toast.show{opacity:1;visibility:visible;transform:none}
.cart-added-toast strong{display:block;color:var(--primary);font-size:13px;line-height:1.3}
.cart-added-toast small{display:block;margin-top:3px;color:var(--muted);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-icon-btn.cart-bump{animation:cartBump .42s ease}
@keyframes cartBump{0%,100%{transform:scale(1)}45%{transform:scale(1.12)}70%{transform:scale(.97)}}
@media(max-width:620px){.cart-added-toast{top:auto;right:14px;left:14px;bottom:18px;max-width:none;min-width:0;text-align:center;padding:12px 14px}.cart-added-toast small{font-size:11px}}


/* Carrinho 2026-08-26: feedback mobile visível e quantidade por produto */
.card .add-cart{position:relative;overflow:visible;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .15s ease,padding .18s ease}
.card .add-cart.has-cart-qty{padding-right:58px;border-color:rgba(169,95,59,.58);background:#fffaf4}
.card .add-cart.has-cart-qty::after{content:attr(data-cart-qty);position:absolute;right:7px;top:50%;transform:translateY(-50%);min-width:38px;height:28px;padding:0 8px;border-radius:999px;display:grid;place-items:center;background:var(--primary);color:#fff;font-size:12px;font-weight:900;line-height:1;box-shadow:0 5px 14px rgba(112,67,33,.2)}
.cart-added-toast{z-index:9999!important}
@media(max-width:620px){
  .cart-added-toast{top:calc(env(safe-area-inset-top) + 72px)!important;bottom:auto!important;left:50%!important;right:auto!important;width:calc(100% - 28px);max-width:420px!important;transform:translate(-50%,-12px) scale(.98)!important;background:#fffdf9!important;border:1px solid rgba(169,95,59,.3)!important;box-shadow:0 16px 46px rgba(32,24,18,.28)!important;text-align:left!important;padding:13px 15px!important}
  .cart-added-toast.show{transform:translate(-50%,0) scale(1)!important}
  .cart-added-toast strong{font-size:13px!important}
  .card .add-cart.has-cart-qty{padding-right:54px}
  .card .add-cart.has-cart-qty::after{right:6px;min-width:35px;height:26px;font-size:11px}
}
\n/* Checkout schedule synced with admin/MySQL */\n.schedule-hint.is-error{color:#a83a31;font-weight:700}.schedule-hint.is-ok{color:#516a4d}.customer-box input[type="time"]:disabled{opacity:.58;cursor:not-allowed;background:#f1eee9}.customer-box input.input-error{border-color:#b94c43!important;box-shadow:0 0 0 2px rgba(185,76,67,.08)}\n

/* Regra de agendamento antecipado sincronizada com o painel ADM */
.booking-window-hint{grid-column:1/-1;margin:-1px 0 2px;padding:9px 10px;border-radius:10px;background:#f5f8f1;border:1px solid #dfe8d8;color:#51634d;font-size:11px;font-weight:700;line-height:1.4}


/* Área 3D de promoções */
.promo-catalog{margin:10px 0 34px;padding:22px;border-radius:26px;background:linear-gradient(145deg,#403026,#241b16);box-shadow:0 22px 46px rgba(49,31,20,.22),inset 0 1px 0 rgba(255,255,255,.08);position:relative;overflow:hidden;transform:translateZ(0)}
.promo-catalog:before{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-120px;top:-130px;background:rgba(235,190,112,.12)}
.promo-head{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px;color:#fff}.promo-head h3{margin:4px 0 4px;font-size:28px;color:#fff}.promo-head p{margin:0;color:#e8d9ce;font-size:12px}.promo-kicker{font-size:10px;font-weight:900;letter-spacing:.17em;color:#f1c785}.promo-3d-tag{padding:9px 13px;border-radius:10px;background:linear-gradient(145deg,#d89046,#a9512d);box-shadow:0 8px 0 #6d321d,0 14px 20px rgba(0,0,0,.2);font-size:11px;font-weight:950;letter-spacing:.1em;transform:translateY(-4px)}
.promo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;position:relative;z-index:1}.promo-card{background:#fff;border-radius:18px;overflow:hidden;box-shadow:0 12px 0 #d8c4b2,0 21px 28px rgba(0,0,0,.22);transform:translateY(-3px);transition:.18s ease}.promo-card:hover{transform:translateY(-7px);box-shadow:0 15px 0 #d8c4b2,0 26px 36px rgba(0,0,0,.25)}.promo-image{height:170px;position:relative;background:#eee;overflow:hidden}.promo-image img{width:100%;height:100%;object-fit:cover}.promo-badge{position:absolute;z-index:2;left:11px;top:11px;background:#b94e34;color:#fff;padding:6px 9px;border-radius:8px;font-size:10px;font-weight:950;box-shadow:0 4px 0 #79301f}.promo-body{padding:14px}.promo-body h4{margin:0 0 9px;font-size:16px}.promo-prices{display:flex;align-items:baseline;gap:8px}.promo-prices .old-price{text-decoration:line-through;color:#8f8176;font-size:12px}.promo-prices strong{font-size:22px;color:#a94731}.promo-validity{margin:8px 0 12px;padding:8px 9px;border-radius:9px;background:#fff5e8;color:#71513c;font-size:10px;font-weight:750}.promo-add{width:100%}
@media(max-width:850px){.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.promo-catalog{margin:8px -2px 28px;padding:15px;border-radius:20px}.promo-head{align-items:flex-start}.promo-head h3{font-size:22px}.promo-head p{max-width:230px}.promo-3d-tag{font-size:9px;padding:7px 9px;box-shadow:0 6px 0 #6d321d}.promo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.promo-card{border-radius:14px;box-shadow:0 8px 0 #d8c4b2,0 14px 20px rgba(0,0,0,.2)}.promo-image{height:118px}.promo-body{padding:10px}.promo-body h4{font-size:13px}.promo-prices{display:block}.promo-prices .old-price{display:block;font-size:10px}.promo-prices strong{font-size:18px}.promo-validity{font-size:9px;padding:7px}.promo-add{font-size:10px;padding:9px 6px}}

/* =========================================================
   VISUAL PREMIUM V4 — mais artesanal, 3D e promoções em faixa
   ========================================================= */
:root{
  --artisan-ink:#332319;
  --artisan-brown:#6d4227;
  --artisan-caramel:#c88445;
  --artisan-gold:#e9bd75;
  --artisan-sage:#5f7656;
  --artisan-paper:#fffaf2;
  --artisan-blush:#f7eee6;
}
body{
  background:
    radial-gradient(circle at 8% 8%,rgba(232,188,123,.20),transparent 28rem),
    radial-gradient(circle at 94% 22%,rgba(95,118,86,.15),transparent 26rem),
    linear-gradient(180deg,#fffaf4 0%,#f6eee6 44%,#fbf7ef 100%) !important;
  color:var(--artisan-ink);
  font-family:Inter,Arial,Helvetica,sans-serif;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  opacity:.35;
  background-image:
    linear-gradient(rgba(92,62,38,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(92,62,38,.025) 1px,transparent 1px);
  background-size:34px 34px;
}
.catalog{background:transparent !important;padding-top:72px !important;}
.catalog .intro{
  position:relative;
  padding:26px 0 4px;
}
.catalog .intro::before{
  content:"";
  position:absolute;
  left:-18px;
  top:10px;
  width:82px;
  height:82px;
  border-radius:28px;
  background:linear-gradient(145deg,rgba(232,188,123,.24),rgba(255,255,255,.1));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7);
  transform:rotate(-9deg);
  z-index:-1;
}
.kicker,.promo-kicker{color:#a15d33 !important;}
.intro h2,.cat h3{
  color:#2f2118;
  letter-spacing:-.025em;
}
.cat h3{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:4px;
}
.cat h3::before{
  content:"";
  width:36px;
  height:10px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--artisan-caramel),rgba(95,118,86,.75));
  box-shadow:0 5px 16px rgba(200,132,69,.25);
}
.grid{gap:24px !important;}
.card{
  border:1px solid rgba(123,83,50,.10) !important;
  background:linear-gradient(180deg,#fffdf8 0%,#fff8ef 100%) !important;
  border-radius:24px !important;
  box-shadow:
    0 22px 44px rgba(70,45,27,.13),
    0 5px 0 rgba(216,194,169,.8),
    inset 0 1px 0 rgba(255,255,255,.8) !important;
  transform:translateZ(0);
  transition:transform .22s ease,box-shadow .22s ease,filter .22s ease !important;
}
.card:hover{
  transform:translateY(-7px) rotateX(.8deg) !important;
  filter:saturate(1.03);
  box-shadow:
    0 30px 60px rgba(70,45,27,.18),
    0 8px 0 rgba(216,194,169,.95),
    inset 0 1px 0 rgba(255,255,255,.85) !important;
}
.imgwrap{
  border-radius:22px 22px 0 0;
  background:#eadfd1 !important;
  position:relative;
}
.imgwrap::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 55%,rgba(38,23,14,.26));
  pointer-events:none;
}
.cardbody{padding:19px !important;}
.titleline h4{font-family:Georgia,"Times New Roman",serif;font-size:20px;color:#322017;}
.price{font-weight:800;color:#9b512d !important;}
.outline-btn{
  border:0 !important;
  background:linear-gradient(135deg,#5f7656,#40553d) !important;
  color:#fff !important;
  border-radius:999px !important;
  box-shadow:0 8px 0 rgba(45,63,42,.55),0 16px 24px rgba(57,75,53,.18) !important;
  min-height:43px;
  cursor:pointer;
}
.outline-btn:hover{transform:translateY(-2px);box-shadow:0 10px 0 rgba(45,63,42,.55),0 20px 30px rgba(57,75,53,.24) !important;}
.outline-btn:active{transform:translateY(4px);box-shadow:0 4px 0 rgba(45,63,42,.55),0 10px 18px rgba(57,75,53,.16) !important;}

/* A promoção vira uma listra única, com movimento automático */
.promo-catalog.promo-strip-catalog{
  margin:8px 0 46px !important;
  padding:22px 0 24px !important;
  border-radius:30px !important;
  border:1px solid rgba(156,96,51,.14) !important;
  background:
    linear-gradient(135deg,rgba(255,250,244,.96),rgba(246,231,217,.96)),
    radial-gradient(circle at 18% 0,rgba(232,188,123,.35),transparent 24rem) !important;
  box-shadow:
    0 28px 60px rgba(69,43,26,.16),
    0 7px 0 rgba(223,205,184,.9),
    inset 0 1px 0 rgba(255,255,255,.9) !important;
  overflow:hidden;
  transform:none !important;
}
.promo-catalog.promo-strip-catalog::before{
  width:360px !important;
  height:360px !important;
  right:-120px !important;
  top:-180px !important;
  background:radial-gradient(circle,rgba(233,189,117,.25),transparent 70%) !important;
}
.promo-head{
  padding:0 24px;
  color:#342218 !important;
  align-items:flex-start !important;
}
.promo-head h3{
  color:#302017 !important;
  font-size:clamp(25px,3.5vw,38px) !important;
  letter-spacing:-.03em;
}
.promo-head p{color:#765c47 !important;font-size:13px !important;}
.promo-3d-tag{
  background:linear-gradient(145deg,#d98a42,#a94f2a) !important;
  color:white !important;
  border-radius:14px !important;
  box-shadow:0 7px 0 #7d371d,0 18px 28px rgba(126,64,31,.22) !important;
}
.promo-strip{
  position:relative;
  margin-top:18px;
  overflow:hidden;
  padding:7px 0 22px;
  mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);
}
.promo-track{
  display:flex;
  align-items:stretch;
  gap:16px;
  width:max-content;
  padding-left:24px;
  animation:promo-marquee 32s linear infinite;
  will-change:transform;
}
.promo-strip:hover .promo-track{animation-play-state:paused;}
.promo-single .promo-track{animation:none;width:auto;padding-right:24px;}
.promo-card.promo-card-strip{
  width:360px;
  min-height:174px;
  display:grid;
  grid-template-columns:142px 1fr;
  gap:0;
  flex:0 0 360px;
  border-radius:20px !important;
  overflow:hidden;
  background:rgba(255,255,255,.86) !important;
  border:1px solid rgba(132,83,47,.11) !important;
  box-shadow:0 16px 34px rgba(70,45,27,.13),0 4px 0 rgba(218,197,174,.85) !important;
  transform:none !important;
}
.promo-card.promo-card-strip:hover{transform:translateY(-4px) !important;}
.promo-card-strip .promo-image{height:100% !important;min-height:174px;background:#eadfd1;}
.promo-card-strip .promo-image img{height:100%;width:100%;object-fit:cover;}
.promo-card-strip .promo-badge{
  left:10px !important;
  top:10px !important;
  background:linear-gradient(135deg,#c25b37,#95361f) !important;
  box-shadow:0 4px 0 #6d2617 !important;
}
.promo-card-strip .promo-body{padding:15px 15px 14px !important;display:flex;flex-direction:column;justify-content:center;}
.promo-card-strip .promo-body h4{font-size:17px !important;color:#2f2118;margin-bottom:8px !important;}
.promo-card-strip .promo-prices{display:flex !important;align-items:baseline;gap:9px;}
.promo-card-strip .promo-prices .old-price{font-size:12px !important;color:#8b7869 !important;text-decoration-thickness:2px;}
.promo-card-strip .promo-prices strong{font-size:22px !important;color:#a4462d !important;}
.promo-card-strip .promo-validity{
  margin:9px 0 12px !important;
  padding:7px 9px !important;
  border-radius:999px !important;
  background:#fff2de !important;
  color:#6d4a32 !important;
  font-size:10px !important;
  width:max-content;
  max-width:100%;
}
.promo-card-strip .promo-add{min-height:37px !important;font-size:12px !important;box-shadow:0 6px 0 rgba(45,63,42,.55),0 12px 18px rgba(57,75,53,.15) !important;}
@keyframes promo-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-50% - 8px))}
}

.hero .eyebrow,.actions .pill,.trust-row li{letter-spacing:.02em;}
.hero-copy h1{letter-spacing:-.045em;}
.hero-copy p{max-width:590px;}
.storebox{
  background:
    linear-gradient(135deg,rgba(76,50,33,.92),rgba(174,101,49,.92)),
    url('img/hero-piquenique.jpeg') center/cover no-repeat !important;
  box-shadow:0 30px 70px rgba(67,43,26,.22),inset 0 1px 0 rgba(255,255,255,.22) !important;
}
@media(max-width:900px){
  .promo-card.promo-card-strip{width:310px;flex-basis:310px;grid-template-columns:118px 1fr;}
  .promo-card-strip .promo-image{min-height:162px;}
  .promo-track{animation-duration:26s;}
}
@media(max-width:620px){
  .catalog{padding-top:50px !important;}
  .promo-catalog.promo-strip-catalog{margin-left:-6px !important;margin-right:-6px !important;border-radius:22px !important;}
  .promo-head{padding:0 16px;}
  .promo-head p{max-width:250px;}
  .promo-3d-tag{font-size:9px !important;padding:7px 9px !important;}
  .promo-strip{mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);}
  .promo-track{gap:12px;padding-left:16px;animation-duration:22s;}
  .promo-card.promo-card-strip{width:275px;flex-basis:275px;grid-template-columns:104px 1fr;min-height:150px;border-radius:17px !important;}
  .promo-card-strip .promo-image{min-height:150px;}
  .promo-card-strip .promo-body{padding:12px !important;}
  .promo-card-strip .promo-body h4{font-size:14px !important;}
  .promo-card-strip .promo-prices{display:block !important;}
  .promo-card-strip .promo-prices strong{font-size:19px !important;display:block;}
  .promo-card-strip .promo-validity{font-size:9px !important;margin:7px 0 9px !important;}
  .grid{gap:15px !important;}
  .card{border-radius:20px !important;}
  .cardbody{padding:14px !important;}
  .titleline h4{font-size:17px;}
}
@media (prefers-reduced-motion: reduce){.promo-track{animation:none !important;}}


/* =========================================================
   V5 — visual mais limpo + carrossel de promoções corrigido no celular
   ========================================================= */
body{
  background:linear-gradient(180deg,#fffaf4 0%,#f7efe7 48%,#fffaf4 100%) !important;
}
body::before{opacity:.16 !important;}
.catalog .intro::before{opacity:.55 !important;box-shadow:none !important;}
.card{
  border:1px solid rgba(116,80,55,.12) !important;
  background:#fffdf8 !important;
  box-shadow:0 10px 24px rgba(65,43,28,.10) !important;
  transform:none !important;
}
.card:hover{
  transform:translateY(-3px) !important;
  box-shadow:0 14px 30px rgba(65,43,28,.13) !important;
  filter:none !important;
}
.imgwrap::after{background:linear-gradient(180deg,transparent 70%,rgba(38,23,14,.10)) !important;}
.outline-btn{
  background:linear-gradient(135deg,#607858,#496440) !important;
  box-shadow:0 8px 18px rgba(73,100,64,.20) !important;
  transform:none !important;
}
.outline-btn:hover{transform:translateY(-1px) !important;box-shadow:0 10px 22px rgba(73,100,64,.24) !important;}
.outline-btn:active{transform:translateY(1px) !important;box-shadow:0 5px 12px rgba(73,100,64,.18) !important;}

.promo-catalog.promo-strip-catalog{
  margin:8px 0 38px !important;
  padding:20px 0 22px !important;
  border-radius:24px !important;
  border:1px solid rgba(139,91,57,.13) !important;
  background:linear-gradient(180deg,#fffdf9 0%,#fbf3eb 100%) !important;
  box-shadow:0 10px 28px rgba(67,45,30,.11) !important;
  overflow:hidden !important;
}
.promo-catalog.promo-strip-catalog::before{opacity:.35 !important;filter:blur(2px);}
.promo-head{padding:0 22px !important;gap:10px !important;}
.promo-head h3{font-size:clamp(22px,3vw,30px) !important;line-height:1.08 !important;margin-bottom:6px !important;}
.promo-head p{font-size:12px !important;color:#765f4d !important;}
.promo-kicker{font-size:10px !important;letter-spacing:.14em !important;}
.promo-3d-tag{
  background:#fff1df !important;
  color:#9b512d !important;
  border:1px solid rgba(155,81,45,.18) !important;
  border-radius:999px !important;
  box-shadow:none !important;
  transform:none !important;
}
.promo-strip{
  margin-top:14px !important;
  padding:4px 0 14px !important;
  overflow:hidden !important;
  touch-action:pan-y !important;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent) !important;
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent) !important;
}
.promo-track{
  display:flex !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:14px !important;
  width:max-content !important;
  min-width:max-content !important;
  padding-left:22px !important;
  transform:translate3d(0,0,0);
  animation:promo-marquee 34s linear infinite !important;
  will-change:transform !important;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
@media (hover:hover) and (pointer:fine){
  .promo-strip:hover .promo-track{animation-play-state:paused !important;}
}
@media (hover:none), (pointer:coarse){
  .promo-strip:hover .promo-track,
  .promo-track:hover{animation-play-state:running !important;}
}
.promo-single .promo-track{animation:promo-marquee 34s linear infinite !important;width:max-content !important;}
.promo-card.promo-card-strip{
  width:340px !important;
  flex:0 0 340px !important;
  min-height:162px !important;
  grid-template-columns:132px 1fr !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(125,88,62,.12) !important;
  box-shadow:0 8px 20px rgba(61,42,29,.10) !important;
  transform:none !important;
}
.promo-card.promo-card-strip:hover{transform:translateY(-2px) !important;box-shadow:0 11px 24px rgba(61,42,29,.13) !important;}
.promo-card-strip .promo-image{min-height:162px !important;background:#efe3d6 !important;}
.promo-card-strip .promo-badge{
  background:#9f4e2d !important;
  box-shadow:none !important;
  border-radius:999px !important;
  padding:5px 8px !important;
  font-size:9px !important;
}
.promo-card-strip .promo-body{padding:13px 14px !important;}
.promo-card-strip .promo-body h4{font-size:16px !important;margin-bottom:7px !important;}
.promo-card-strip .promo-prices strong{font-size:20px !important;color:#9b4d2d !important;}
.promo-card-strip .promo-validity{
  background:#fff6ec !important;
  border:1px solid rgba(155,81,45,.10) !important;
  color:#6f5140 !important;
  box-shadow:none !important;
}
.promo-card-strip .promo-add{box-shadow:0 7px 15px rgba(73,100,64,.18) !important;min-height:36px !important;}
@keyframes promo-marquee{
  from{transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);}
  to{transform:translate3d(-50%,0,0);-webkit-transform:translate3d(-50%,0,0);}
}
@media(max-width:620px){
  .promo-catalog.promo-strip-catalog{margin-left:0 !important;margin-right:0 !important;border-radius:18px !important;padding-top:16px !important;}
  .promo-head{padding:0 14px !important;align-items:center !important;}
  .promo-head h3{font-size:20px !important;}
  .promo-head p{display:none !important;}
  .promo-3d-tag{font-size:8px !important;padding:6px 8px !important;}
  .promo-strip{padding-bottom:12px !important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent) !important;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent) !important;}
  .promo-track{gap:10px !important;padding-left:14px !important;animation:promo-marquee 18s linear infinite !important;}
  .promo-card.promo-card-strip{
    width:252px !important;
    flex-basis:252px !important;
    min-height:136px !important;
    grid-template-columns:92px 1fr !important;
    border-radius:15px !important;
    box-shadow:0 6px 16px rgba(61,42,29,.10) !important;
  }
  .promo-card-strip .promo-image{min-height:136px !important;}
  .promo-card-strip .promo-body{padding:10px !important;}
  .promo-card-strip .promo-body h4{font-size:13px !important;margin-bottom:5px !important;}
  .promo-card-strip .promo-prices .old-price{font-size:10px !important;}
  .promo-card-strip .promo-prices strong{font-size:17px !important;}
  .promo-card-strip .promo-validity{font-size:8px !important;padding:5px 7px !important;margin:6px 0 7px !important;}
  .promo-card-strip .promo-add{min-height:32px !important;font-size:10px !important;padding:7px 8px !important;}
}
@media (prefers-reduced-motion: reduce){
  .promo-track{animation:promo-marquee 52s linear infinite !important;}
}


/* =========================================================
   V6 — estrutura inspirada no Piquenique Events + catálogo original
   Corrige cor estranha, sombras pesadas e carrossel mobile.
   ========================================================= */
:root{
  --bg:#f7f1e8;
  --paper:#fffaf3;
  --paper2:#fbf4eb;
  --ink:#2f241c;
  --muted:#756758;
  --green:#405f3f;
  --green2:#5f7c58;
  --copper:#a5633b;
  --copper2:#c27b43;
  --line:rgba(83,62,42,.14);
  --soft-shadow:0 14px 34px rgba(55,38,24,.10);
  --radius:24px;
}
html,body{overflow-x:hidden!important;}
body{
  margin:0!important;
  background:var(--bg)!important;
  color:var(--ink)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  letter-spacing:0!important;
}
body::before,body::after,.catalog .intro::before,.catalog .intro::after,.promo-catalog::before,.promo-catalog::after{display:none!important;content:none!important;}
h1,h2,h3,h4,.brand-name{font-family:Georgia,"Times New Roman",serif!important;color:inherit;letter-spacing:-.035em;}
.container{width:min(1180px,calc(100% - 40px))!important;margin:0 auto!important;}

/* Cabeçalho na estrutura da referência */
header{
  position:absolute!important;top:0!important;left:0!important;right:0!important;z-index:60!important;
  background:linear-gradient(180deg,rgba(17,23,15,.72),rgba(17,23,15,0))!important;
  border:0!important;box-shadow:none!important;backdrop-filter:none!important;color:#fff!important;
}
header .nav{height:104px!important;min-height:104px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:26px!important;width:min(1180px,calc(100% - 40px))!important;}
.brand{gap:12px!important;color:#fff!important;min-width:0!important;}
.brand-badge{width:48px!important;height:48px!important;flex:0 0 48px!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:16px!important;color:#fff!important;backdrop-filter:blur(6px)!important;display:grid!important;place-items:center!important;}
.brand-badge svg{width:29px!important;height:29px!important;}
header .brand-name{font-size:27px!important;line-height:1!important;color:#fff!important;text-shadow:0 3px 18px rgba(0,0,0,.28)!important;}
header .brand-sub{font-size:9px!important;text-transform:uppercase!important;letter-spacing:.24em!important;color:rgba(255,255,255,.84)!important;margin-top:4px!important;}
.navlinks{display:flex!important;align-items:center!important;justify-content:center!important;gap:24px!important;margin-left:auto!important;font-size:13px!important;font-weight:800!important;color:rgba(255,255,255,.86)!important;}
.navlinks a,.navlink-button{color:inherit!important;background:transparent!important;border:0!important;padding:8px 0!important;font:inherit!important;cursor:pointer!important;white-space:nowrap!important;}
.navlinks a:hover,.navlink-button:hover{color:#fff!important;}
.nav-icons{gap:8px!important;}
header .icon-btn{width:44px!important;height:44px!important;background:rgba(255,255,255,.13)!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important;box-shadow:none!important;backdrop-filter:blur(7px)!important;}
header .icon-btn svg{width:22px!important;height:22px!important;}
header .cart-icon-btn #cartCount{background:#b96a3d!important;border:2px solid rgba(255,255,255,.7)!important;color:#fff!important;}

/* Hero parecido com Piquenique Events: mais editorial, sem tom artificial */
.hero{min-height:740px!important;height:740px!important;border-radius:0 0 34px 34px!important;overflow:hidden!important;background:#1c2519!important;}
.hero>img{object-fit:cover!important;object-position:center!important;filter:saturate(.93) contrast(.98)!important;}
.hero::after{content:""!important;display:block!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(28,24,18,.80) 0%,rgba(36,28,20,.56) 44%,rgba(36,28,20,.12) 76%,rgba(36,28,20,.06) 100%)!important;z-index:1!important;}
.hero-content{min-height:740px!important;height:740px!important;display:flex!important;align-items:center!important;padding:118px 0 58px!important;position:relative!important;z-index:2!important;color:#fff!important;}
.hero-copy{width:min(100%,690px)!important;max-width:690px!important;}
.hero .eyebrow{background:transparent!important;border:0!important;backdrop-filter:none!important;padding:0!important;border-radius:0!important;color:#f2d7bc!important;font-size:12px!important;letter-spacing:.28em!important;font-weight:850!important;}
.hero h1{font-size:clamp(48px,6.2vw,86px)!important;line-height:.98!important;margin:20px 0 0!important;text-shadow:0 5px 28px rgba(0,0,0,.20)!important;color:#fff!important;}
.hero h1::after{display:none!important;}
.hero p{max-width:620px!important;font-size:18px!important;line-height:1.72!important;color:rgba(255,255,255,.88)!important;margin:24px 0 0!important;}
.actions{display:flex!important;gap:13px!important;flex-wrap:wrap!important;margin-top:32px!important;}
.pill{border-radius:999px!important;font-weight:850!important;min-height:46px!important;box-shadow:none!important;transform:none!important;}
.actions .pill{padding:13px 22px!important;min-height:52px!important;}
.actions .warm,.pill.warm{background:var(--green)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 15px 30px rgba(13,30,15,.22)!important;}
.actions .ghost{background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.36)!important;color:#fff!important;}
.trust-row{display:flex!important;gap:18px!important;flex-wrap:wrap!important;margin-top:36px!important;padding:0!important;border:0!important;list-style:none!important;}
.trust-row li{min-width:120px!important;padding:14px 16px!important;border-radius:20px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.13)!important;color:#fff!important;font-size:13px!important;line-height:1.25!important;backdrop-filter:blur(7px)!important;}

/* bloco editorial entre hero e catálogo */
.memory-section{padding:58px 0!important;background:var(--bg)!important;}
.memory-grid{display:grid!important;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)!important;gap:40px!important;align-items:end!important;}
.memory-grid h2{font-size:clamp(34px,4vw,56px)!important;line-height:1.02!important;margin:12px 0 0!important;color:var(--ink)!important;}
.memory-grid p{margin:0!important;color:var(--muted)!important;line-height:1.75!important;font-size:16px!important;}
.kicker,.promo-kicker{font-size:11px!important;text-transform:uppercase!important;letter-spacing:.22em!important;color:var(--copper)!important;font-weight:900!important;}

/* Catálogo mantendo produtos/fotos/descrições, mas na estrutura limpa */
.catalog{background:linear-gradient(180deg,var(--bg) 0%,#fbf8f2 46%,var(--bg) 100%)!important;padding:18px 0 76px!important;}
.catalog .intro{max-width:760px!important;margin:0 0 30px!important;}
.catalog .intro h2{font-size:clamp(34px,4.3vw,58px)!important;line-height:1.02!important;margin:12px 0 0!important;color:var(--ink)!important;}
.catalog .intro p{font-size:16px!important;line-height:1.75!important;color:var(--muted)!important;}
.cat{margin-top:46px!important;}
.cat h3{display:flex!important;align-items:center!important;gap:16px!important;font-size:clamp(30px,3.3vw,46px)!important;line-height:1.05!important;margin:0 0 22px!important;color:var(--ink)!important;}
.cat h3::before{content:""!important;display:block!important;width:58px!important;height:9px!important;border-radius:999px!important;background:linear-gradient(90deg,#d49a55,#7b9a71)!important;}
.grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;align-items:stretch!important;}
.card{border-radius:26px!important;overflow:hidden!important;background:#fffaf3!important;border:1px solid var(--line)!important;box-shadow:var(--soft-shadow)!important;transform:none!important;filter:none!important;display:flex!important;flex-direction:column!important;min-height:100%!important;}
.card:hover{transform:translateY(-2px)!important;box-shadow:0 18px 38px rgba(55,38,24,.13)!important;}
.imgwrap{height:220px!important;border-radius:0!important;background:#eadccd!important;overflow:hidden!important;}
.imgwrap img{width:100%!important;height:100%!important;object-fit:cover!important;transform:none!important;filter:saturate(.96)!important;}
.imgwrap::after{display:none!important;}
.cardbody{padding:20px!important;display:flex!important;flex-direction:column!important;gap:14px!important;flex:1!important;}
.titleline{display:block!important;}
.titleline h4{font-size:24px!important;line-height:1.05!important;color:var(--ink)!important;margin:0 0 8px!important;}
.price{display:block!important;color:var(--copper)!important;font-size:22px!important;font-weight:900!important;font-family:Georgia,"Times New Roman",serif!important;}
.cardbody ul{display:block!important;margin:4px 0 0!important;padding:0!important;list-style:none!important;color:#71665d!important;font-size:14px!important;line-height:1.58!important;}
.cardbody li{display:flex!important;align-items:flex-start!important;gap:7px!important;margin:4px 0!important;}
.leaf{color:#7b9a71!important;font-size:13px!important;margin-top:1px!important;}
.outline-btn,.outline-full{border:0!important;border-radius:999px!important;background:var(--green)!important;color:#fff!important;box-shadow:none!important;font-weight:900!important;transform:none!important;}
.outline-btn{margin-top:auto!important;min-height:48px!important;width:100%!important;padding:12px 16px!important;font-size:14px!important;}
.outline-btn:hover,.outline-full:hover,.pill.warm:hover{transform:translateY(-1px)!important;filter:brightness(1.03)!important;box-shadow:0 12px 24px rgba(34,68,40,.16)!important;}
.outline-btn.has-cart-qty::after{background:var(--copper)!important;color:#fff!important;box-shadow:none!important;border-radius:999px!important;}

/* Promoções: faixa limpa e móvel por JavaScript, sem bloco pesado */
.promo-catalog.promo-strip-catalog{margin:0 0 50px!important;padding:30px 0 28px!important;background:#fffaf3!important;border:1px solid var(--line)!important;border-radius:28px!important;box-shadow:var(--soft-shadow)!important;overflow:hidden!important;position:relative!important;}
.promo-head{padding:0 28px!important;display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;color:var(--ink)!important;}
.promo-head h3{font-size:clamp(34px,4.2vw,58px)!important;line-height:1!important;margin:8px 0 6px!important;color:var(--ink)!important;}
.promo-head p{color:var(--muted)!important;font-size:15px!important;line-height:1.55!important;margin:0!important;display:block!important;}
.promo-3d-tag{background:#a75e36!important;color:#fff!important;border:0!important;border-radius:999px!important;box-shadow:none!important;transform:none!important;padding:10px 16px!important;font-size:11px!important;letter-spacing:.12em!important;font-weight:950!important;white-space:nowrap!important;}
.promo-strip{margin-top:24px!important;padding:4px 0 8px!important;overflow:hidden!important;overflow-x:hidden!important;touch-action:pan-y!important;-webkit-overflow-scrolling:auto!important;scrollbar-width:none!important;mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)!important;}
.promo-strip::-webkit-scrollbar{display:none!important;}
.promo-track{display:flex!important;flex-wrap:nowrap!important;gap:16px!important;align-items:stretch!important;width:max-content!important;min-width:max-content!important;padding:0 28px!important;animation:none!important;transform:none!important;will-change:auto!important;}
.promo-card.promo-card-strip{flex:0 0 430px!important;width:430px!important;min-height:185px!important;display:grid!important;grid-template-columns:180px 1fr!important;background:#fff!important;border:1px solid rgba(82,61,42,.13)!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 10px 26px rgba(55,38,24,.11)!important;transform:none!important;}
.promo-card.promo-card-strip:hover{transform:translateY(-2px)!important;box-shadow:0 14px 30px rgba(55,38,24,.14)!important;}
.promo-card-strip .promo-image{height:100%!important;min-height:185px!important;background:#e8dbcc!important;position:relative!important;}
.promo-card-strip .promo-image img{width:100%!important;height:100%!important;object-fit:cover!important;}
.promo-card-strip .promo-badge{left:13px!important;top:13px!important;background:#a75e36!important;border-radius:999px!important;box-shadow:none!important;color:#fff!important;font-size:10px!important;font-weight:950!important;padding:7px 10px!important;}
.promo-card-strip .promo-body{padding:18px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;}
.promo-card-strip .promo-body h4{font-size:24px!important;line-height:1.05!important;margin:0 0 9px!important;color:var(--ink)!important;}
.promo-card-strip .promo-prices{display:block!important;margin:0!important;}
.promo-card-strip .promo-prices .old-price{display:block!important;color:#8b7b6c!important;font-size:13px!important;text-decoration:line-through!important;text-decoration-thickness:2px!important;}
.promo-card-strip .promo-prices strong{display:block!important;color:#9c4e2e!important;font-size:25px!important;line-height:1.1!important;font-family:Georgia,"Times New Roman",serif!important;}
.promo-card-strip .promo-validity{display:block!important;width:100%!important;margin:12px 0!important;padding:8px 11px!important;border-radius:999px!important;background:#fff5e9!important;border:1px solid rgba(164,94,54,.10)!important;color:#6d5544!important;font-size:11px!important;font-weight:750!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.promo-card-strip .promo-add{min-height:42px!important;font-size:13px!important;padding:10px 14px!important;background:var(--green)!important;color:#fff!important;box-shadow:none!important;}

/* Seções inferiores, carrinho e modais com a mesma identidade */
.steps{background:#fffaf3!important;padding:72px 0!important;}
.steps h2{font-size:clamp(34px,4vw,54px)!important;color:var(--ink)!important;}
.step{background:#fff!important;border:1px solid var(--line)!important;border-radius:24px!important;box-shadow:var(--soft-shadow)!important;}
.step .icon{filter:none!important;}
.store{background:var(--bg)!important;padding:72px 0!important;}
.storebox{background:linear-gradient(135deg,rgba(51,72,45,.93),rgba(91,119,78,.88)),url('img/hero-piquenique.jpeg') center/cover!important;border-radius:30px!important;box-shadow:0 22px 50px rgba(39,55,35,.18)!important;}
footer{background:#2f241c!important;color:#f7efe6!important;}
.cart-drawer,.payment-modal,.status-modal,.notice-modal,.hours-modal{background:#fffaf3!important;color:var(--ink)!important;box-shadow:0 25px 80px rgba(30,20,12,.22)!important;}
.cart-head h2,.payment-modal h2,.status-modal h2,.notice-modal h2,.hours-modal h2{color:var(--ink)!important;}

@media(max-width:1040px){
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .navlinks{gap:16px!important;}
}
@media(max-width:820px){
  .navlinks{display:none!important;}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
  .memory-grid{grid-template-columns:1fr!important;gap:18px!important;}
  .promo-card.promo-card-strip{flex-basis:360px!important;width:360px!important;grid-template-columns:142px 1fr!important;}
  .promo-card-strip .promo-image{min-height:172px!important;}
}
@media(max-width:620px){
  .container{width:min(100% - 24px,1180px)!important;}
  header .nav{width:calc(100% - 24px)!important;height:78px!important;min-height:78px!important;gap:8px!important;}
  .brand-badge{width:38px!important;height:38px!important;flex-basis:38px!important;border-radius:13px!important;}
  .brand-badge svg{width:23px!important;height:23px!important;}
  header .brand-name{font-size:18px!important;}
  header .brand-sub{font-size:7.5px!important;letter-spacing:.18em!important;}
  .nav-icons{gap:4px!important;}
  header .icon-btn{width:37px!important;height:37px!important;}
  header .icon-btn svg{width:19px!important;height:19px!important;}
  .hero{height:620px!important;min-height:620px!important;border-radius:0 0 24px 24px!important;}
  .hero-content{height:620px!important;min-height:620px!important;padding:92px 0 38px!important;align-items:flex-end!important;}
  .hero::after{background:linear-gradient(180deg,rgba(23,18,13,.35) 0%,rgba(23,18,13,.62) 44%,rgba(23,18,13,.88) 100%)!important;}
  .hero .eyebrow{font-size:9px!important;letter-spacing:.20em!important;}
  .hero h1{font-size:40px!important;line-height:1!important;margin-top:14px!important;}
  .hero p{font-size:14px!important;line-height:1.58!important;margin-top:17px!important;}
  .actions{margin-top:22px!important;gap:10px!important;}
  .actions .pill{min-height:45px!important;padding:11px 16px!important;font-size:13px!important;}
  .trust-row{display:none!important;}
  .memory-section{padding:42px 0 24px!important;}
  .memory-grid h2{font-size:34px!important;}
  .memory-grid p{font-size:14px!important;}
  .catalog{padding:20px 0 56px!important;}
  .catalog .intro{margin-bottom:22px!important;}
  .catalog .intro h2{font-size:34px!important;}
  .catalog .intro p{font-size:14px!important;}
  .cat{margin-top:38px!important;}
  .cat h3{font-size:31px!important;margin-bottom:16px!important;gap:12px!important;}
  .cat h3::before{width:42px!important;height:8px!important;}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
  .card{border-radius:20px!important;box-shadow:0 8px 20px rgba(55,38,24,.10)!important;}
  .imgwrap{height:142px!important;}
  .cardbody{padding:14px!important;gap:10px!important;}
  .titleline h4{font-size:19px!important;}
  .price{font-size:19px!important;}
  .cardbody ul{font-size:12px!important;line-height:1.45!important;}
  .outline-btn{min-height:42px!important;padding:10px 9px!important;font-size:12px!important;}
  .outline-btn.has-cart-qty{padding-right:42px!important;}
  .outline-btn.has-cart-qty::after{right:7px!important;min-width:32px!important;height:28px!important;font-size:12px!important;}
  .promo-catalog.promo-strip-catalog{margin:0 0 38px!important;padding:20px 0 20px!important;border-radius:22px!important;}
  .promo-head{padding:0 16px!important;}
  .promo-head h3{font-size:32px!important;}
  .promo-head p{font-size:13px!important;display:block!important;max-width:250px!important;}
  .promo-3d-tag{padding:8px 11px!important;font-size:9px!important;}
  .promo-strip{margin-top:18px!important;padding-bottom:4px!important;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)!important;}
  .promo-track{gap:12px!important;padding:0 16px!important;animation:none!important;}
  .promo-card.promo-card-strip{flex:0 0 292px!important;width:292px!important;min-height:152px!important;grid-template-columns:108px 1fr!important;border-radius:20px!important;box-shadow:0 8px 20px rgba(55,38,24,.11)!important;}
  .promo-card-strip .promo-image{min-height:152px!important;}
  .promo-card-strip .promo-body{padding:12px!important;}
  .promo-card-strip .promo-body h4{font-size:18px!important;margin-bottom:6px!important;}
  .promo-card-strip .promo-prices .old-price{font-size:11px!important;}
  .promo-card-strip .promo-prices strong{font-size:20px!important;}
  .promo-card-strip .promo-validity{font-size:9px!important;padding:6px 8px!important;margin:8px 0!important;}
  .promo-card-strip .promo-add{min-height:36px!important;font-size:11px!important;padding:8px 10px!important;}
  .steps,.store{padding:54px 0!important;}
}
@media(max-width:390px){
  .grid{gap:10px!important;}
  .imgwrap{height:128px!important;}
  .titleline h4{font-size:17px!important;}
  .price{font-size:18px!important;}
  .cardbody{padding:12px!important;}
  .outline-btn{font-size:11px!important;}
}

/* =========================================================
   V7 — correção real PC + celular
   Cabeçalho limpo, catálogo sem sombra pesada e promoções
   arrastáveis + automáticas em mouse e touch.
   ========================================================= */
:root{
  --v7-paper:#f8f4ec;
  --v7-card:#fffdf8;
  --v7-ink:#30271f;
  --v7-muted:#74695f;
  --v7-green:#405d43;
  --v7-copper:#a45d39;
  --v7-line:rgba(68,52,39,.13);
}
html,body{background:var(--v7-paper)!important;overflow-x:hidden!important;}
body{color:var(--v7-ink)!important;}

/* Começo do site — mais próximo da estrutura do Piquenique Events */
header{
  position:sticky!important;
  top:0!important;
  z-index:80!important;
  background:rgba(255,253,248,.97)!important;
  border-bottom:1px solid var(--v7-line)!important;
  box-shadow:0 3px 16px rgba(35,29,24,.045)!important;
  color:var(--v7-ink)!important;
  backdrop-filter:blur(14px)!important;
}
.top-ribbon{
  display:block!important;
  background:#2f3c31!important;
  color:#f5efe6!important;
  border:0!important;
}
.top-ribbon-inner{
  min-height:32px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  font-size:11px!important;
  letter-spacing:.04em!important;
  opacity:.96!important;
}
header .nav{
  height:76px!important;
  min-height:76px!important;
  color:var(--v7-ink)!important;
}
.brand,header .brand-name{color:var(--v7-ink)!important;text-shadow:none!important;}
header .brand-sub{color:#85786d!important;}
.brand-badge{
  background:#f4eee3!important;
  border:1px solid var(--v7-line)!important;
  color:var(--v7-green)!important;
  backdrop-filter:none!important;
  box-shadow:none!important;
}
.navlinks{color:#61584f!important;}
.navlinks a:hover,.navlink-button:hover{color:var(--v7-copper)!important;}
header .icon-btn{
  background:#fff!important;
  border:1px solid var(--v7-line)!important;
  color:var(--v7-ink)!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
header .icon-btn:hover{background:#f5efe6!important;color:var(--v7-green)!important;}
header .cart-icon-btn #cartCount{background:var(--v7-copper)!important;border:2px solid #fff!important;}

.hero{
  height:min(680px,calc(100svh - 108px))!important;
  min-height:560px!important;
  border-radius:0!important;
  background:#243025!important;
}
.hero-content{
  height:100%!important;
  min-height:inherit!important;
  padding:72px 0 64px!important;
  align-items:center!important;
}
.hero::after{
  background:linear-gradient(90deg,rgba(29,27,22,.76) 0%,rgba(29,27,22,.49) 45%,rgba(29,27,22,.14) 78%,rgba(29,27,22,.04) 100%)!important;
}
.hero>img{filter:saturate(.96) contrast(1.02)!important;}
.hero-copy{max-width:650px!important;}
.hero h1{font-size:clamp(48px,6vw,78px)!important;letter-spacing:-.045em!important;line-height:.98!important;}
.hero p{max-width:570px!important;font-size:17px!important;line-height:1.62!important;}
.trust-row li{box-shadow:none!important;}
.memory-section{padding:48px 0 34px!important;}

/* Catálogo: elimina o efeito 'degrau'/3D que estava pesando no celular */
.catalog{background:var(--v7-paper)!important;padding:26px 0 68px!important;}
.card{
  background:var(--v7-card)!important;
  border:1px solid var(--v7-line)!important;
  box-shadow:0 3px 12px rgba(43,32,23,.055)!important;
  border-radius:20px!important;
}
.card:hover{transform:translateY(-2px)!important;box-shadow:0 8px 22px rgba(43,32,23,.09)!important;}
.imgwrap{background:#eee6da!important;}
.cardbody{background:transparent!important;}
.cat h3::before{height:4px!important;background:var(--v7-green)!important;}
.outline-btn,.outline-full,.pill.warm{box-shadow:none!important;}
.outline-btn:hover,.outline-full:hover,.pill.warm:hover{box-shadow:none!important;}
.outline-btn.has-cart-qty::after{box-shadow:none!important;}

/* Promoções: faixa única, limpa, arrastável e automática */
.promo-catalog.promo-strip-catalog{
  margin:0 0 42px!important;
  padding:24px 0 20px!important;
  background:#fffdf8!important;
  border:1px solid var(--v7-line)!important;
  border-radius:20px!important;
  box-shadow:0 3px 14px rgba(43,32,23,.055)!important;
}
.promo-head{padding:0 24px!important;align-items:center!important;}
.promo-head h3{font-size:clamp(30px,3.8vw,48px)!important;}
.promo-head p{max-width:560px!important;}
.promo-3d-tag{
  background:#efe5d7!important;
  color:#845137!important;
  border:1px solid rgba(132,81,55,.12)!important;
  box-shadow:none!important;
}
.promo-strip{
  position:relative!important;
  margin-top:18px!important;
  padding:2px 0 8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  touch-action:pan-y!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-behavior:auto!important;
  scrollbar-width:none!important;
  cursor:grab!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  mask-image:none!important;
  -webkit-mask-image:none!important;
  overscroll-behavior-x:contain!important;
}
.promo-strip.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important;}
.promo-strip::-webkit-scrollbar{display:none!important;}
.promo-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  min-width:max-content!important;
  gap:14px!important;
  padding:0 24px!important;
  transform:none!important;
  animation:none!important;
  will-change:auto!important;
}
.promo-card.promo-card-strip{
  flex:0 0 390px!important;
  width:390px!important;
  min-height:166px!important;
  grid-template-columns:150px 1fr!important;
  border-radius:18px!important;
  border:1px solid var(--v7-line)!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(43,32,23,.06)!important;
}
.promo-card.promo-card-strip:hover{transform:none!important;box-shadow:0 4px 13px rgba(43,32,23,.08)!important;}
.promo-card-strip .promo-image{min-height:166px!important;}
.promo-card-strip .promo-badge{background:var(--v7-copper)!important;box-shadow:none!important;}
.promo-card-strip .promo-body{padding:14px 16px!important;}
.promo-card-strip .promo-body h4{font-size:21px!important;}
.promo-card-strip .promo-prices strong{color:var(--v7-copper)!important;font-size:22px!important;}
.promo-card-strip .promo-validity{
  background:#f7f0e7!important;
  border:0!important;
  border-radius:9px!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.3!important;
}
.promo-card-strip .promo-add{background:var(--v7-green)!important;}
.promo-drag-hint{display:none!important;}

@media (max-width:1040px){
  .promo-card.promo-card-strip{flex-basis:350px!important;width:350px!important;grid-template-columns:135px 1fr!important;}
}

@media (max-width:820px){
  .top-ribbon-inner{font-size:10px!important;}
  header .nav{height:68px!important;min-height:68px!important;}
  .hero{height:560px!important;min-height:560px!important;}
  .hero-content{padding:48px 0!important;align-items:flex-end!important;}
  .hero::after{background:linear-gradient(180deg,rgba(25,22,18,.22),rgba(25,22,18,.48) 48%,rgba(25,22,18,.82) 100%)!important;}
  .hero-copy{max-width:590px!important;}
  .hero h1{font-size:50px!important;}
  .promo-card.promo-card-strip{flex-basis:320px!important;width:320px!important;grid-template-columns:120px 1fr!important;}
}

@media (max-width:620px){
  .container{width:min(100% - 24px,1180px)!important;}
  .top-ribbon-inner{min-height:28px!important;font-size:9px!important;letter-spacing:.025em!important;}
  .top-ribbon-inner span:first-child{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
  .top-ribbon-inner span:last-child{white-space:nowrap!important;}
  header .nav{width:calc(100% - 24px)!important;height:62px!important;min-height:62px!important;}
  .brand-badge{width:36px!important;height:36px!important;flex-basis:36px!important;border-radius:11px!important;}
  header .brand-name{font-size:17px!important;}
  header .brand-sub{display:none!important;}
  .nav-icons{gap:3px!important;}
  header .icon-btn{width:35px!important;height:35px!important;}
  .instagram-top{display:none!important;}

  .hero{height:500px!important;min-height:500px!important;}
  .hero-content{height:500px!important;min-height:500px!important;padding:36px 0 34px!important;}
  .hero h1{font-size:39px!important;line-height:1.01!important;margin-top:12px!important;}
  .hero p{font-size:14px!important;line-height:1.5!important;margin-top:15px!important;}
  .hero .eyebrow{font-size:8.5px!important;letter-spacing:.16em!important;}
  .actions{margin-top:18px!important;}
  .actions .pill{min-height:42px!important;padding:10px 14px!important;font-size:12px!important;}
  .memory-section{padding:30px 0 20px!important;}
  .memory-grid h2{font-size:30px!important;}
  .memory-grid p{font-size:13px!important;line-height:1.55!important;}

  .catalog{padding:14px 0 50px!important;}
  .catalog .intro{margin-bottom:18px!important;}
  .catalog .intro h2{font-size:31px!important;}
  .catalog .intro p{font-size:13px!important;line-height:1.55!important;}
  .cat{margin-top:32px!important;}
  .cat h3{font-size:28px!important;gap:9px!important;margin-bottom:14px!important;}
  .cat h3::before{width:28px!important;height:4px!important;}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .card{border-radius:15px!important;box-shadow:0 2px 8px rgba(43,32,23,.05)!important;}
  .imgwrap{height:130px!important;}
  .cardbody{padding:11px!important;gap:8px!important;}
  .titleline h4{font-size:17px!important;line-height:1.08!important;margin-bottom:5px!important;}
  .price{font-size:18px!important;}
  .cardbody ul{font-size:11px!important;line-height:1.36!important;}
  .cardbody li{gap:4px!important;margin:3px 0!important;}
  .outline-btn{min-height:38px!important;padding:8px 8px!important;border-radius:12px!important;}
  .card .add-cart{font-size:0!important;white-space:nowrap!important;}
  .card .add-cart::before{content:"Adicionar";font-size:11px!important;}
  .card .add-cart.has-cart-qty{padding-right:38px!important;}
  .outline-btn.has-cart-qty::after{right:5px!important;min-width:29px!important;height:25px!important;font-size:10px!important;}

  .promo-catalog.promo-strip-catalog{margin-bottom:30px!important;padding:18px 0 15px!important;border-radius:15px!important;}
  .promo-head{padding:0 14px!important;align-items:flex-start!important;}
  .promo-head h3{font-size:28px!important;margin-top:5px!important;}
  .promo-head p{font-size:11.5px!important;line-height:1.4!important;max-width:220px!important;}
  .promo-3d-tag{padding:6px 9px!important;font-size:8px!important;}
  .promo-strip{margin-top:14px!important;padding-bottom:5px!important;}
  .promo-track{gap:9px!important;padding:0 14px!important;}
  .promo-card.promo-card-strip{
    flex:0 0 min(82vw,300px)!important;
    width:min(82vw,300px)!important;
    min-height:140px!important;
    grid-template-columns:105px 1fr!important;
    border-radius:14px!important;
    box-shadow:0 2px 7px rgba(43,32,23,.055)!important;
  }
  .promo-card-strip .promo-image{min-height:140px!important;}
  .promo-card-strip .promo-badge{left:8px!important;top:8px!important;font-size:8px!important;padding:5px 7px!important;}
  .promo-card-strip .promo-body{padding:10px!important;}
  .promo-card-strip .promo-body h4{font-size:17px!important;margin-bottom:4px!important;}
  .promo-card-strip .promo-prices .old-price{font-size:10px!important;}
  .promo-card-strip .promo-prices strong{font-size:19px!important;}
  .promo-card-strip .promo-validity{font-size:8.5px!important;padding:5px 6px!important;margin:6px 0!important;}
  .promo-card-strip .promo-add{min-height:32px!important;font-size:10px!important;padding:6px 8px!important;border-radius:10px!important;}
  .promo-drag-hint{display:block!important;padding:7px 14px 0!important;color:#85786d!important;font-size:10px!important;}
}

@media (max-width:390px){
  .hero{height:470px!important;min-height:470px!important;}
  .hero-content{height:470px!important;min-height:470px!important;}
  .hero h1{font-size:35px!important;}
  .grid{gap:8px!important;}
  .imgwrap{height:118px!important;}
  .titleline h4{font-size:16px!important;}
  .price{font-size:17px!important;}
  .cardbody{padding:10px!important;}
  .promo-card.promo-card-strip{flex-basis:84vw!important;width:84vw!important;grid-template-columns:100px 1fr!important;}
}

/* pequenos acertos de proporção depois dos testes responsivos */
.grid{align-items:start!important;}
.card{min-height:0!important;height:auto!important;align-self:start!important;}
.promo-card-strip .promo-image img{pointer-events:none!important;-webkit-user-drag:none!important;user-select:none!important;}
@media(max-width:620px){
  .promo-3d-tag{display:none!important;}
  .promo-head{display:block!important;}
  .promo-head p{max-width:100%!important;}
}


/* =========================================================
   V8 — correções a partir dos screenshots reais (03/09/2026)
   - cards mobile sem buracos entre linhas
   - logo do cabeçalho visível
   - promoção por slide: automática + touch nativo + mouse drag
   - remove cortes permanentes e faixas de cor laterais
   ========================================================= */
body,.catalog,.memory-section{background:#f8f4ec!important;background-image:none!important;}
.brand-badge{overflow:hidden!important;padding:3px!important;background:#fffaf3!important;}
.brand-badge img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;}

.grid{align-items:stretch!important;}
.card{height:100%!important;min-height:100%!important;align-self:stretch!important;}
.cardbody{height:100%!important;}

.promo-catalog.promo-strip-catalog{overflow:hidden!important;background:#fffdf8!important;background-image:none!important;}
.promo-strip{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  touch-action:pan-x pan-y!important;
  -webkit-overflow-scrolling:touch!important;
  scroll-snap-type:x proximity!important;
  scroll-padding-inline:24px!important;
  overscroll-behavior-inline:contain!important;
  cursor:grab!important;
}
.promo-strip.is-dragging{cursor:grabbing!important;scroll-snap-type:none!important;}
.promo-track{animation:none!important;transform:none!important;will-change:auto!important;}
.promo-card.promo-card-strip{scroll-snap-align:start!important;scroll-snap-stop:normal!important;}
.promo-card[data-promo-clone="1"]{pointer-events:auto!important;}
.promo-drag-hint{display:none!important;}

@media(max-width:620px){
  .grid{align-items:stretch!important;}
  .card{height:100%!important;align-self:stretch!important;}
  .cardbody{height:100%!important;}
  .promo-catalog.promo-strip-catalog{margin-left:0!important;margin-right:0!important;border-radius:16px!important;}
  .promo-head{padding:0 14px!important;}
  .promo-head h3{font-size:27px!important;line-height:1.02!important;}
  .promo-head p{font-size:11.5px!important;line-height:1.38!important;}
  .promo-strip{scroll-padding-inline:14px!important;padding-bottom:8px!important;}
  .promo-track{padding:0 14px!important;gap:10px!important;}
  .promo-card.promo-card-strip{
    flex:0 0 min(84vw,310px)!important;
    width:min(84vw,310px)!important;
    min-height:146px!important;
    grid-template-columns:108px 1fr!important;
    border-radius:14px!important;
  }
  .promo-card-strip .promo-image{min-height:146px!important;}
  .promo-card-strip .promo-body{padding:10px 11px!important;}
  .promo-card-strip .promo-body h4{font-size:17px!important;line-height:1.02!important;}
  .promo-card-strip .promo-validity{white-space:normal!important;font-size:8.5px!important;line-height:1.25!important;}
  .promo-card-strip .promo-add{font-size:10px!important;min-height:34px!important;}
  .promo-drag-hint{display:block!important;padding:8px 14px 0!important;color:#87796d!important;font-size:10px!important;}
}

@media(max-width:390px){
  .promo-card.promo-card-strip{flex-basis:calc(100vw - 48px)!important;width:calc(100vw - 48px)!important;grid-template-columns:102px 1fr!important;}
}
