:root{
  --ink:#171512;
  --muted:#6f6a62;
  --cream:#f4efe6;
  --paper:#fffdf9;
  --line:#ddd4c6;
  --accent:#b97a45;
  --accent-dark:#8f5830;
  --green:#1f7a4d;
  --shadow:0 20px 60px rgba(32,25,17,.12);
  --radius:24px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,system-ui,sans-serif;line-height:1.45}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(18px,4vw,56px);background:rgba(255,253,249,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(221,212,198,.7)}
.brand{display:flex;gap:10px;align-items:center;color:var(--ink);text-decoration:none}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ink);color:white;font-family:"Playfair Display",serif;font-weight:700;letter-spacing:-.03em}
.brand-text{display:flex;flex-direction:column;line-height:1.05;letter-spacing:.08em}.brand-text strong{font-size:.9rem}.brand-text small{font-size:.57rem;margin-top:4px;color:var(--muted)}
.cart-button{border:0;background:var(--ink);color:white;border-radius:999px;padding:10px 14px 10px 16px;font-weight:700;cursor:pointer}.cart-badge{display:inline-grid;place-items:center;min-width:24px;height:24px;margin-left:6px;padding:0 6px;border-radius:999px;background:white;color:var(--ink);font-size:.78rem}
.hero{min-height:72vh;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:44px;align-items:end;padding:clamp(54px,8vw,120px) clamp(20px,7vw,110px);background:linear-gradient(135deg,#f7f1e8 0%,#fffdf9 55%,#eee2d4 100%)}
.hero-content{max-width:780px}.eyebrow{display:inline-block;font-size:.72rem;letter-spacing:.18em;font-weight:800;color:var(--accent-dark);margin-bottom:12px}.hero h1,.section-heading h2,.cart-header h2,.checkout-top h2{font-family:"Playfair Display",serif;letter-spacing:-.035em}.hero h1{font-size:clamp(2.8rem,7vw,6.8rem);line-height:.92;margin:0;max-width:900px}.hero-subtitle{font-size:clamp(1rem,1.8vw,1.3rem);color:var(--muted);max-width:600px;margin:26px 0}.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.hero-note{font-family:"Playfair Display",serif;font-style:italic;color:var(--muted)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:14px;border:1px solid transparent;padding:12px 18px;font-weight:800;text-decoration:none;cursor:pointer;transition:.2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--ink);color:white}.btn-secondary{background:white;color:var(--ink);border-color:var(--line)}.btn-whatsapp{background:var(--green);color:white}.btn-full{width:100%}
.hero-panel{background:rgba(23,21,18,.94);color:white;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);display:grid;gap:18px}.hero-panel div{padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.14)}.hero-panel div:last-child{border-bottom:0;padding-bottom:0}.hero-panel strong,.hero-panel span{display:block}.hero-panel strong{font-family:"Playfair Display",serif;font-size:1.16rem}.hero-panel span{margin-top:5px;color:#d8d0c4;font-size:.88rem}
.section{padding:clamp(70px,9vw,120px) clamp(20px,7vw,110px)}.section-heading{max-width:720px;margin-bottom:34px}.section-heading.compact{margin-bottom:26px}.section-heading h2{font-size:clamp(2.2rem,5vw,4.2rem);line-height:1;margin:0 0 14px}.section-heading p{color:var(--muted);font-size:1.05rem}
.products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.product-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white;box-shadow:0 8px 30px rgba(40,30,20,.05)}.product-visual{aspect-ratio:4/3;background:linear-gradient(145deg,#e7d5c0,#f9f4ec);display:grid;place-items:center;position:relative}.product-visual img{width:100%;height:100%;object-fit:cover}.product-placeholder{display:grid;place-items:center;width:54%;aspect-ratio:.72;border-radius:12px 12px 20px 20px;background:var(--ink);color:white;font-family:"Playfair Display",serif;font-size:1.5rem;text-align:center;padding:20px;box-shadow:0 18px 30px rgba(0,0,0,.18)}.product-placeholder small{font-family:Manrope,sans-serif;font-size:.58rem;letter-spacing:.13em;opacity:.65}.product-body{padding:22px}.product-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.product-title-row h3{font-family:"Playfair Display",serif;font-size:1.7rem;margin:0}.product-price{font-weight:800;white-space:nowrap}.product-desc{color:var(--muted);font-size:.92rem;margin:6px 0 18px}.control-label{font-size:.78rem;font-weight:800;margin:14px 0 7px;display:block}.segmented{display:flex;gap:8px;flex-wrap:wrap}.segmented button{flex:1;min-width:92px;border:1px solid var(--line);background:white;border-radius:12px;padding:10px;cursor:pointer;font-weight:700}.segmented button.active{background:var(--ink);border-color:var(--ink);color:white}.method-wrap{margin-top:12px}.method-wrap select,.quantity-row select{width:100%;min-height:46px;border:1px solid var(--line);border-radius:12px;background:white;padding:0 12px}.helper{margin:8px 0 0;color:var(--accent-dark);font-size:.82rem}.product-actions{display:grid;grid-template-columns:88px 1fr;gap:10px;margin-top:18px}.quantity-row select{text-align:center}.product-actions .btn{width:100%}
.how-section{background:var(--ink);color:white}.how-section .eyebrow{color:#d7a579}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.steps article{border:1px solid rgba(255,255,255,.16);border-radius:20px;padding:22px}.steps span{color:#d7a579;font-weight:800;font-size:.74rem}.steps h3{font-family:"Playfair Display",serif;font-size:1.35rem;margin:24px 0 8px}.steps p{color:#c8c2b9;font-size:.9rem;margin:0}
.overlay{position:fixed;inset:0;background:rgba(16,14,12,.52);z-index:90;backdrop-filter:blur(4px)}.cart-drawer{position:fixed;top:0;right:0;z-index:100;width:min(460px,100vw);height:100dvh;background:var(--paper);box-shadow:-20px 0 60px rgba(0,0,0,.18);transform:translateX(105%);transition:transform .28s ease;display:flex;flex-direction:column}.cart-drawer.open{transform:translateX(0)}.cart-header,.checkout-top{display:flex;justify-content:space-between;align-items:flex-start;padding:24px;border-bottom:1px solid var(--line)}.cart-header h2,.checkout-top h2{margin:0;font-size:2rem}.icon-button{width:42px;height:42px;border:1px solid var(--line);background:white;border-radius:50%;font-size:1.6rem;cursor:pointer}.cart-items{padding:18px;overflow:auto;flex:1}.cart-item{display:grid;grid-template-columns:1fr auto;gap:8px;padding:16px 0;border-bottom:1px solid var(--line)}.cart-item h4{margin:0;font-family:"Playfair Display",serif;font-size:1.12rem}.cart-meta{font-size:.82rem;color:var(--muted);margin-top:5px}.cart-controls{display:flex;gap:8px;align-items:center;margin-top:10px}.qty-btn,.remove-btn{border:1px solid var(--line);background:white;border-radius:9px;min-width:34px;height:34px;cursor:pointer}.remove-btn{color:#8b342d;padding:0 10px}.cart-price{text-align:right;font-weight:800}.cart-empty{text-align:center;padding:70px 30px;color:var(--muted)}.cart-empty strong{display:block;color:var(--ink);font-family:"Playfair Display",serif;font-size:1.4rem}.cart-footer{border-top:1px solid var(--line);padding:20px}.total-row{display:flex;justify-content:space-between;font-size:1.08rem}.total-row strong{font-size:1.35rem}.freight-note,.form-note{font-size:.78rem;color:var(--muted)}.link-button{display:block;width:100%;border:0;background:transparent;margin-top:12px;text-decoration:underline;cursor:pointer}.hidden{display:none!important}
.checkout-modal{position:fixed;inset:0;z-index:110;background:rgba(16,14,12,.72);display:none;padding:18px;overflow:auto}.checkout-modal.open{display:grid;place-items:center}.checkout-shell{width:min(760px,100%);background:var(--paper);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}.progress{display:grid;grid-template-columns:34px 1fr 34px 1fr 34px;align-items:center;padding:20px 28px 0}.progress span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line);background:white;font-size:.8rem;font-weight:800}.progress span.active{background:var(--ink);color:white;border-color:var(--ink)}.progress i{height:1px;background:var(--line)}.checkout-step{display:none;padding:28px}.checkout-step.active{display:block}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:grid;gap:7px;font-size:.78rem;font-weight:800}.field-wide{grid-column:1/-1}.field input,.field textarea{width:100%;border:1px solid var(--line);background:white;border-radius:12px;padding:13px 14px;min-height:46px;outline:none}.field input:focus,.field textarea:focus{border-color:var(--accent)}.field.invalid input{border-color:#b6382f}.delivery-choice{border:0;padding:0;margin:0 0 18px}.delivery-choice legend{font-family:"Playfair Display",serif;font-size:1.45rem;font-weight:700;margin-bottom:14px}.choice-card{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:15px;padding:15px;margin-bottom:10px;cursor:pointer}.choice-card input{margin-top:4px}.choice-card strong,.choice-card small{display:block}.choice-card small{margin-top:4px;color:var(--muted)}.step-actions{display:flex;justify-content:flex-end;margin-top:24px}.step-actions.split{justify-content:space-between;gap:12px}.order-review{border:1px solid var(--line);border-radius:16px;padding:18px;margin-bottom:20px}.review-line{display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-bottom:1px solid var(--line)}.review-line:last-child{border-bottom:0}.review-line small{display:block;color:var(--muted)}.review-total{font-size:1.2rem;font-weight:800}
.footer{display:flex;justify-content:space-between;gap:20px;align-items:end;padding:34px clamp(20px,7vw,110px);border-top:1px solid var(--line);color:var(--muted);font-size:.85rem}.footer strong,.footer span{display:block}.footer strong{color:var(--ink);letter-spacing:.08em}.footer p{margin:0}
@media (max-width:900px){.hero{grid-template-columns:1fr;min-height:auto}.hero-panel{grid-template-columns:repeat(3,1fr)}.hero-panel div{border-bottom:0;border-right:1px solid rgba(255,255,255,.14);padding:0 14px 0 0}.hero-panel div:last-child{border-right:0}.products-grid{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.topbar{padding:10px 14px}.brand-mark{width:38px;height:38px}.brand-text small{display:none}.cart-button{font-size:.78rem;padding:8px 10px}.hero{padding:58px 18px 42px;gap:28px}.hero h1{font-size:clamp(2.65rem,14vw,4.3rem)}.hero-subtitle{margin:18px 0 22px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-panel{grid-template-columns:1fr;gap:0;padding:20px}.hero-panel div{border-right:0;border-bottom:1px solid rgba(255,255,255,.14);padding:13px 0}.hero-panel div:first-child{padding-top:0}.section{padding:64px 18px}.products-grid{grid-template-columns:1fr}.product-visual{aspect-ratio:16/10}.product-body{padding:18px}.steps{grid-template-columns:1fr}.field-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.checkout-modal{padding:0}.checkout-shell{min-height:100dvh;border-radius:0}.checkout-step{padding:22px 18px}.checkout-top{padding:18px}.progress{padding:16px 20px 0}.step-actions.split{flex-direction:column-reverse}.step-actions .btn{width:100%}.footer{flex-direction:column;align-items:flex-start}.cart-drawer{width:100vw}.product-actions{grid-template-columns:92px 1fr}}


/* V3 — experiência de preenchimento */
.field-error{display:none;font-size:.72rem;font-weight:600;color:#a5332b;margin-top:-2px}
.field.invalid .field-error{display:block}
.field-hint{font-size:.7rem;font-weight:500;color:var(--muted);line-height:1.35}
.field-hint.error{color:#a5332b}
.field-hint.success{color:var(--green)}
.field input[readonly]{background:#f7f3ed;color:var(--muted)}


/* V4 — identidade visual Rafa Palma */
:root{
  --rp-bg:#E8D8C8;
  --rp-paper:#FBF7F2;
  --rp-dark:#151515;
  --rp-dark-2:#171310;
  --rp-rust:#954430;
  --rp-rust-dark:#6F321F;
  --rp-cream:#F1E6D8;
  --rp-muted:#624F41;
  --rp-line:#D8C8BA;
}

html,body{background:var(--rp-paper);color:var(--rp-dark)}
body{font-family:Arial,Helvetica,sans-serif}
.site-header,.topbar,header{
  background:var(--rp-dark-2)!important;
  color:var(--rp-cream)!important;
}
.brand{display:flex;align-items:center;min-width:150px}
.brand img{
  display:block;
  width:148px;
  height:auto;
  max-height:82px;
  object-fit:contain;
  object-position:left center;
}
.hero{
  background:
    radial-gradient(circle at 82% 22%,rgba(149,68,48,.13),transparent 26%),
    linear-gradient(135deg,#fbf7f2 0%,#f1e6d8 100%)!important;
  border-bottom:1px solid var(--rp-line);
}
.hero .eyebrow,.section-kicker,.eyebrow{
  color:var(--rp-rust)!important;
  letter-spacing:.15em;
  font-size:.75rem;
  font-weight:800;
}
.hero h1{
  color:var(--rp-dark)!important;
  font-size:clamp(2.65rem,7vw,5.6rem);
  line-height:.94;
  letter-spacing:-.055em;
  max-width:900px;
}
.hero-copy{
  color:#332a25!important;
  font-size:clamp(1rem,2vw,1.25rem);
  max-width:720px;
}
.hero-script{
  margin-top:.45rem;
  color:var(--rp-rust)!important;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.35rem,3vw,2.15rem);
  font-style:italic;
}
.btn-primary,.primary,.checkout-actions .primary{
  background:var(--rp-rust)!important;
  color:#fff!important;
  border-color:var(--rp-rust)!important;
  box-shadow:none!important;
}
.btn-primary:hover,.primary:hover{background:var(--rp-rust-dark)!important}
.btn-secondary,.secondary{
  background:transparent!important;
  color:var(--rp-rust-dark)!important;
  border-color:var(--rp-rust)!important;
}
.trust-strip{
  max-width:1180px;
  margin:-22px auto 38px;
  padding:0 22px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  position:relative;
  z-index:3;
}
.trust-strip>div{
  background:var(--rp-dark-2);
  color:var(--rp-cream);
  padding:20px 22px;
  border-right:1px solid rgba(241,230,216,.16);
}
.trust-strip>div:first-child{border-radius:18px 0 0 18px}
.trust-strip>div:last-child{border-radius:0 18px 18px 0;border-right:0}
.trust-strip strong{display:block;font-size:.96rem}
.trust-strip span{display:block;margin-top:4px;color:#bda99a;font-size:.78rem;line-height:1.35}

.product-card,.card,.cart-panel,.checkout-card{
  background:#fffdfa!important;
  border:1px solid var(--rp-line)!important;
  box-shadow:0 12px 32px rgba(23,19,16,.06)!important;
}
.product-card{
  border-radius:22px!important;
  overflow:hidden;
}
.product-card h3{color:var(--rp-dark)!important}
.price,.product-price{color:var(--rp-rust-dark)!important}
.product-image,.product-media{
  background:
    linear-gradient(135deg,rgba(149,68,48,.10),rgba(241,230,216,.8)),
    #f4ede5!important;
}
.product-image::after,.product-media::after{
  content:"RAFA PALMA";
  font-family:Georgia,'Times New Roman',serif;
  letter-spacing:.08em;
  color:rgba(111,50,31,.22);
  font-weight:700;
}
.choice,.option-chip,.pill{
  border-color:#d8c8ba!important;
  background:#fffdfa!important;
}
.choice.active,.option-chip.active,.pill.active{
  border-color:var(--rp-rust)!important;
  background:#f3e7da!important;
  color:var(--rp-rust-dark)!important;
}

.drawer,.cart-drawer{
  background:#fffdfa!important;
}
.cart-total,.total-line strong{color:var(--rp-rust-dark)!important}
.checkout-step-indicator .active,.step.active{
  background:var(--rp-rust)!important;
  border-color:var(--rp-rust)!important;
}
.field input,.field textarea,.field select,
input,textarea,select{
  border-color:#d8c8ba;
  background:#fffdfa;
}
.field input:focus,.field textarea:focus,.field select:focus,
input:focus,textarea:focus,select:focus{
  border-color:var(--rp-rust)!important;
  box-shadow:0 0 0 3px rgba(149,68,48,.12)!important;
  outline:none!important;
}
footer,.site-footer{
  background:var(--rp-dark-2)!important;
  color:var(--rp-cream)!important;
}

@media(max-width:760px){
  .brand img{width:118px;max-height:66px}
  .hero{padding-top:42px!important}
  .hero h1{font-size:clamp(2.4rem,11vw,3.6rem);line-height:.96}
  .hero-copy{font-size:1rem}
  .hero-script{font-size:1.35rem}
  .trust-strip{
    grid-template-columns:1fr;
    margin:-10px auto 26px;
    padding:0 16px;
  }
  .trust-strip>div{
    border-right:0;
    border-bottom:1px solid rgba(241,230,216,.13);
    padding:16px 18px;
  }
  .trust-strip>div:first-child{border-radius:16px 16px 0 0}
  .trust-strip>div:last-child{border-radius:0 0 16px 16px;border-bottom:0}
}

/* preserva a paleta clara oficial mesmo com aparelho em modo escuro */
:root{color-scheme:only light}
@media(prefers-color-scheme:dark){
  html,body,input,select,textarea,button{color-scheme:light!important}
}


/* V5 — integração com rafapalma.com.br */
.topbar{
  min-height:84px;
  padding-top:10px!important;
  padding-bottom:10px!important;
}
.brand img{
  width:164px!important;
  max-height:62px!important;
  object-fit:contain;
  object-position:left center;
}
.topbar-actions{display:flex;align-items:center;gap:16px}
.back-site{
  color:#d8c8ba;
  text-decoration:none;
  font-size:.78rem;
  font-weight:700;
  white-space:nowrap;
}
.back-site:hover{color:#fff}
.cart-button{
  background:#954430!important;
  border-color:#954430!important;
  color:#fff!important;
}
@media(max-width:680px){
  .topbar{min-height:74px;padding:8px 14px!important}
  .brand img{width:124px!important;max-height:52px!important}
  .back-site{display:none}
  .topbar-actions{gap:8px}
  .cart-button{padding:10px 12px!important;font-size:.82rem!important}
}


/* V6 — compactação geral */
.hero{
  padding-top:64px!important;
  padding-bottom:46px!important;
}
.hero h1{
  font-size:clamp(2.35rem,5.2vw,4.55rem)!important;
  line-height:.98!important;
  max-width:760px!important;
}
.hero-actions{margin-top:22px!important}
.hero-panel{margin-top:24px!important}
.trust-strip{
  margin:-14px auto 22px!important;
}
section{
  scroll-margin-top:90px;
}
#cafes,.products-section{
  padding-top:54px!important;
  padding-bottom:54px!important;
}
#cafes .section-head,.products-section .section-head{
  margin-bottom:28px!important;
}
.product-grid,.products-grid{
  gap:22px!important;
}
.how-it-works,.steps-section,.process-section{
  padding-top:58px!important;
  padding-bottom:54px!important;
}
.how-it-works h2,.steps-section h2,.process-section h2{
  font-size:clamp(2.2rem,4.4vw,4rem)!important;
  margin-bottom:24px!important;
}
.steps-grid,.process-grid{
  gap:16px!important;
}
.step-card,.process-card{
  padding-top:24px!important;
  padding-bottom:24px!important;
}
.site-footer{
  padding:28px 0!important;
  border-top:1px solid rgba(241,230,216,.22);
}
.footer-shell{
  max-width:1120px;
  margin:0 auto;
  padding:0 24px;
  display:flex;
  justify-content:space-between;
  gap:32px;
  align-items:flex-end;
}
.footer-brand{
  display:flex;
  flex-direction:column;
  gap:4px;
  font-size:.9rem;
  line-height:1.45;
}
.footer-brand strong{
  font-size:1rem;
  letter-spacing:.06em;
}
.footer-brand a{
  color:inherit;
  text-decoration:none;
}
.footer-brand a:hover{text-decoration:underline}
.footer-reach{
  font-weight:700;
  white-space:nowrap;
}
@media(max-width:760px){
  .hero{padding-top:34px!important;padding-bottom:32px!important}
  .hero h1{font-size:clamp(2.15rem,10vw,3.15rem)!important;line-height:.98!important}
  .trust-strip{margin:-8px auto 18px!important}
  #cafes,.products-section{padding-top:38px!important;padding-bottom:42px!important}
  .how-it-works,.steps-section,.process-section{padding-top:42px!important;padding-bottom:40px!important}
  .footer-shell{flex-direction:column;align-items:flex-start;gap:18px;padding:0 18px}
  .footer-reach{white-space:normal}
}


/* V7 — revisão final de alturas e respiros */

/* Abertura: aproxima o conteúdo do cabeçalho */
.hero{
  padding-top:28px!important;
  padding-bottom:34px!important;
  min-height:auto!important;
}
.hero-content{
  padding-top:0!important;
  margin-top:0!important;
}
.hero .eyebrow{
  margin-top:0!important;
}
.hero h1{
  margin-top:14px!important;
  margin-bottom:18px!important;
}
.hero-subtitle,.hero-copy{
  margin-top:0!important;
  margin-bottom:0!important;
}
.hero-actions{
  margin-top:22px!important;
  margin-bottom:0!important;
}
.hero-panel{
  margin-top:0!important;
}

/* Mantém a seção de produtos como aprovada na V6 */
#cafes,.products-section{
  padding-top:54px!important;
  padding-bottom:54px!important;
}

/* Seção preta do passo a passo: remove altura excessiva */
.how-it-works,.steps-section,.process-section{
  min-height:auto!important;
  padding-top:42px!important;
  padding-bottom:38px!important;
}
.how-it-works .section-inner,
.steps-section .section-inner,
.process-section .section-inner{
  padding-top:0!important;
  padding-bottom:0!important;
}
.how-it-works .section-kicker,
.steps-section .section-kicker,
.process-section .section-kicker{
  margin-top:0!important;
  margin-bottom:14px!important;
}
.how-it-works h2,.steps-section h2,.process-section h2{
  margin-top:0!important;
  margin-bottom:20px!important;
}
.steps-grid,.process-grid{
  margin-top:0!important;
  margin-bottom:0!important;
}
.step-card,.process-card{
  min-height:0!important;
  padding:20px 22px!important;
}

/* Rodapé mais próximo da seção anterior */
.site-footer{
  margin-top:0!important;
  padding-top:24px!important;
  padding-bottom:24px!important;
}
.footer-shell{
  min-height:0!important;
}

@media(max-width:760px){
  .hero{
    padding-top:22px!important;
    padding-bottom:28px!important;
  }
  .hero h1{
    margin-top:10px!important;
    margin-bottom:14px!important;
  }
  .how-it-works,.steps-section,.process-section{
    padding-top:32px!important;
    padding-bottom:30px!important;
  }
  .step-card,.process-card{
    padding:18px!important;
  }
  .site-footer{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
}


/* V8 — compactação específica do bloco preto "Escolha. Confira. Envie." */
.how-it-works,
.steps-section,
.process-section{
  min-height:0!important;
  height:auto!important;
  padding-top:18px!important;
  padding-bottom:18px!important;
}

.how-it-works .section-inner,
.steps-section .section-inner,
.process-section .section-inner{
  min-height:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
}

.how-it-works .section-kicker,
.steps-section .section-kicker,
.process-section .section-kicker{
  margin-top:0!important;
  margin-bottom:10px!important;
}

.how-it-works h2,
.steps-section h2,
.process-section h2{
  margin-top:0!important;
  margin-bottom:16px!important;
}

.steps-grid,
.process-grid{
  margin-top:0!important;
  margin-bottom:0!important;
}

.step-card,
.process-card{
  margin-bottom:0!important;
}

@media(max-width:760px){
  .how-it-works,
  .steps-section,
  .process-section{
    padding-top:20px!important;
    padding-bottom:20px!important;
  }
}


/* V9 — compra contínua: adiciona sem interromper e resumo fixo */
.add-btn.added{
  background:#2f5b43!important;
  border-color:#2f5b43!important;
}

.quick-cart{
  position:fixed;
  left:50%;
  bottom:18px;
  transform:translateX(-50%);
  z-index:80;
  width:min(560px,calc(100vw - 32px));
  min-height:58px;
  border:0;
  border-radius:16px;
  padding:10px 12px 10px 18px;
  background:#171310;
  color:#fff;
  box-shadow:0 16px 40px rgba(0,0,0,.24);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  cursor:pointer;
  font:inherit;
}
.quick-cart.hidden{display:none!important}
.quick-cart span{
  font-size:.88rem;
  font-weight:700;
  text-align:left;
}
.quick-cart strong{
  background:#954430;
  border-radius:11px;
  padding:11px 14px;
  font-size:.78rem;
  white-space:nowrap;
}
@media(min-width:761px){
  .quick-cart{bottom:22px}
}
@media(max-width:760px){
  .quick-cart{
    bottom:10px;
    width:calc(100vw - 20px);
    min-height:56px;
    border-radius:14px;
    padding-left:14px;
  }
  .quick-cart strong{padding:10px 12px}
  body{padding-bottom:76px}
}


/* V10 — escolha segura da moagem */
.method-select.needs-attention{
  border-color:#954430!important;
  box-shadow:0 0 0 3px rgba(149,68,48,.14)!important;
}
.method-help{
  margin-top:6px;
  font-size:.74rem;
  line-height:1.4;
  color:#624f41;
}


/* V11 — equilíbrio das seções + novo design do resumo do pedido */

/* Faixa de diferenciais: respiro equivalente acima e abaixo */
.trust-strip{
  margin-top:30px!important;
  margin-bottom:30px!important;
}

/* Passo a passo: conteúdo visualmente centralizado */
.how-it-works,
.steps-section,
.process-section{
  padding-top:28px!important;
  padding-bottom:28px!important;
}

/* Resumo flutuante como um único cartão legível em fundos claros e escuros */
.quick-cart{
  background:#fbf7f2!important;
  color:#171310!important;
  border:1px solid #d8c8ba!important;
  box-shadow:0 12px 34px rgba(23,19,16,.18)!important;
  padding:9px 10px 9px 16px!important;
}
.quick-cart::before{
  content:"MEU PEDIDO";
  display:block;
  position:absolute;
  left:16px;
  top:7px;
  font-size:.58rem;
  letter-spacing:.11em;
  font-weight:800;
  color:#954430;
}
.quick-cart span{
  padding-top:11px;
  color:#171310!important;
}
.quick-cart strong{
  background:#954430!important;
  color:#fff!important;
  border-radius:10px!important;
}
@media(max-width:760px){
  .quick-cart::before{display:none}
  .quick-cart span{padding-top:0}
  .trust-strip{margin-top:20px!important;margin-bottom:20px!important}
}


/* V12 — correção definitiva de alturas */

/* 1) Espaço entre faixa preta de diferenciais e "Escolha seu café" */
.trust-strip{
  margin-bottom:12px!important;
}
#cafes,
.products-section{
  padding-top:30px!important;
}

/* 2) Bloco "Simples do início ao fim" — remover qualquer altura herdada */
.how-it-works,
.steps-section,
.process-section,
section.how-it-works,
section.steps-section,
section.process-section{
  min-height:unset!important;
  height:auto!important;
  max-height:none!important;
  padding-top:26px!important;
  padding-bottom:26px!important;
  margin-top:0!important;
  margin-bottom:0!important;
  display:block!important;
}

.how-it-works > *,
.steps-section > *,
.process-section > *{
  min-height:0!important;
}

.how-it-works .container,
.steps-section .container,
.process-section .container,
.how-it-works .section-inner,
.steps-section .section-inner,
.process-section .section-inner{
  min-height:0!important;
  height:auto!important;
  padding-top:0!important;
  padding-bottom:0!important;
  margin-top:0!important;
  margin-bottom:0!important;
}

.how-it-works .section-kicker,
.steps-section .section-kicker,
.process-section .section-kicker{
  margin-top:0!important;
  margin-bottom:10px!important;
}

.how-it-works h2,
.steps-section h2,
.process-section h2{
  margin-top:0!important;
  margin-bottom:18px!important;
}

.steps-grid,
.process-grid{
  margin-top:0!important;
  margin-bottom:0!important;
  align-items:stretch!important;
}

.step-card,
.process-card{
  min-height:0!important;
  height:auto!important;
  margin:0!important;
}

/* reduz eventuais espaçadores invisíveis/decorações internas */
.how-it-works::before,
.how-it-works::after,
.steps-section::before,
.steps-section::after,
.process-section::before,
.process-section::after{
  min-height:0!important;
}

/* Rodapé encosta de forma equilibrada após a seção */
.site-footer{
  margin-top:0!important;
}

@media(max-width:760px){
  .trust-strip{margin-bottom:10px!important}
  #cafes,.products-section{padding-top:24px!important}
  .how-it-works,
  .steps-section,
  .process-section{
    padding-top:22px!important;
    padding-bottom:22px!important;
  }
}


/* V13 — correção no seletor real da seção "SIMPLES DO INÍCIO AO FIM" */
section.how-section.section{
  padding-top:34px!important;
  padding-bottom:34px!important;
  min-height:0!important;
  height:auto!important;
}

section.how-section .section-heading.compact{
  margin-top:0!important;
  margin-bottom:22px!important;
}

section.how-section .steps{
  margin-top:0!important;
  margin-bottom:0!important;
}

section.how-section .steps article{
  padding:20px 22px!important;
  min-height:0!important;
}

section.how-section .steps h3{
  margin-top:20px!important;
}

/* Mobile */
@media(max-width:620px){
  section.how-section.section{
    padding-top:28px!important;
    padding-bottom:28px!important;
  }
}


/* V16 — refinamento EXCLUSIVAMENTE MOBILE
   Desktop V15 preservado integralmente */
@media (max-width: 620px){

  /* Hero: preservar tipografia, apenas compactar respiros */
  .hero{
    padding-top:28px!important;
    padding-bottom:26px!important;
  }

  /* Quadro escuro do hero */
  .hero-panel,
  .hero-card{
    padding-top:20px!important;
    padding-bottom:20px!important;
  }
  .hero-panel > *,
  .hero-card > *{
    margin-top:0;
  }

  /* Faixa de diferenciais: menos altura vertical */
  .trust-strip{
    margin-top:18px!important;
  }
  .trust-strip > div,
  .trust-strip article{
    padding-top:14px!important;
    padding-bottom:14px!important;
  }

  /* Produtos: preservar cards, reduzir somente respiros da seção */
  #cafes,
  .products-section{
    padding-top:22px!important;
    padding-bottom:28px!important;
  }

  /* Seção "Simples do início ao fim" */
  section.how-section.section{
    padding-top:24px!important;
    padding-bottom:24px!important;
  }

  section.how-section .section-heading.compact{
    margin-bottom:16px!important;
  }

  section.how-section .steps{
    gap:10px!important;
  }

  section.how-section .steps article{
    padding:15px 17px!important;
    min-height:0!important;
  }

  section.how-section .steps article .step-number,
  section.how-section .steps article .number{
    margin-bottom:7px!important;
  }

  section.how-section .steps h3{
    margin-top:8px!important;
    margin-bottom:5px!important;
  }

  section.how-section .steps p{
    margin-top:0!important;
    margin-bottom:0!important;
  }

  /* Rodapé: espaço suficiente para a barra flutuante do pedido */
  .site-footer{
    padding-bottom:92px!important;
  }
}


/* V17 — compactação fina EXCLUSIVAMENTE MOBILE
   Desktop e controles de compra preservados */
@media (max-width: 620px){

  /* Hero: mantém o tamanho do título e melhora apenas o ritmo vertical */
  .hero{
    padding-top:22px!important;
    padding-bottom:20px!important;
  }
  .hero .eyebrow,
  .hero .kicker{
    margin-bottom:14px!important;
  }
  .hero h1{
    margin-bottom:14px!important;
  }
  .hero .lead,
  .hero .subtitle{
    margin-bottom:18px!important;
  }
  .hero-actions{
    gap:14px!important;
    margin-top:0!important;
  }

  /* Quadro de informações do hero */
  .hero-panel,
  .hero-card{
    padding:16px 18px!important;
    margin-top:20px!important;
  }
  .hero-panel > div,
  .hero-card > div{
    padding-top:13px!important;
    padding-bottom:13px!important;
  }

  /* Faixa Torra / Grãos ou moído / Envio */
  .trust-strip{
    margin-top:14px!important;
    margin-bottom:8px!important;
  }
  .trust-strip > div,
  .trust-strip article{
    padding-top:11px!important;
    padding-bottom:11px!important;
  }

  /* Cabeçalho da seção de cafés: aproxima o primeiro card */
  #cafes,
  .products-section{
    padding-top:18px!important;
    padding-bottom:24px!important;
  }
  #cafes .section-heading,
  .products-section .section-heading{
    margin-bottom:18px!important;
  }
  #cafes .section-heading h2,
  .products-section .section-heading h2{
    margin-bottom:10px!important;
  }

  /* IMPORTANTE: não reduzir botões/inputs dos cards de compra */
  .product-card button,
  .product-card select,
  .product-card input{
    min-height:44px;
  }

  /* Processo final: principal compactação */
  section.how-section.section{
    padding-top:20px!important;
    padding-bottom:20px!important;
  }
  section.how-section .section-heading.compact{
    margin-bottom:14px!important;
  }
  section.how-section .steps{
    gap:8px!important;
  }
  section.how-section .steps article{
    padding:12px 16px!important;
    min-height:0!important;
  }
  section.how-section .steps article .step-number,
  section.how-section .steps article .number{
    margin:0 0 5px!important;
  }
  section.how-section .steps h3{
    margin:5px 0 4px!important;
  }
  section.how-section .steps p{
    margin:0!important;
    line-height:1.35!important;
  }
}


/* V18 — simplificação exclusiva do mobile
   Desktop preservado exatamente como está */
@media (max-width: 620px){

  .hero-panel,
  .hero-card{
    display:none!important;
  }

  .hero{
    padding-bottom:18px!important;
  }

  .trust-strip{
    margin-top:14px!important;
    margin-bottom:10px!important;
  }

  #cafes,
  .products-section{
    padding-top:18px!important;
  }
}


/* V19 — orientação para moagem quando o cliente não sabe o método */
.guidance-wrap{margin-top:12px}
.guidance-input{
  width:100%;
  resize:vertical;
  min-height:78px;
  border:1px solid #d8c8ba;
  border-radius:12px;
  padding:12px 13px;
  background:#fffdfa;
  color:#171310;
  font:inherit;
  line-height:1.4;
}
.guidance-input:focus{
  outline:none;
  border-color:#954430;
  box-shadow:0 0 0 3px rgba(149,68,48,.12);
}
.guidance-input.needs-attention{
  border-color:#954430!important;
  box-shadow:0 0 0 3px rgba(149,68,48,.14)!important;
}
.guidance-help{
  margin:6px 0 0;
  font-size:.72rem;
  line-height:1.4;
  color:#624f41;
}
.cart-guidance{
  display:inline-block;
  margin-top:4px;
}


/* V20 — lembrar dados neste dispositivo */
.remember-data{
  display:flex!important;
  align-items:flex-start;
  gap:10px;
  padding:12px 14px;
  border:1px solid #d8c8ba;
  border-radius:12px;
  background:#fbf7f2;
  cursor:pointer;
}
.remember-data input{
  margin-top:3px;
  width:18px;
  height:18px;
  accent-color:#954430;
  flex:0 0 auto;
}
.remember-data span{
  display:flex;
  flex-direction:column;
  gap:3px;
  line-height:1.35;
}
.remember-data strong{
  font-size:.86rem;
}
.remember-data small{
  color:#624f41;
  font-size:.72rem;
}


/* TESTE DE DESCRIÇÃO — somente Meu Jeito */
.coffee-preview{margin:2px 0 16px;padding:13px 14px;background:#f8f1e8;border:1px solid var(--line);border-radius:14px}
.coffee-notes{margin:0 0 7px;font-size:.86rem;line-height:1.45;color:var(--ink);font-weight:650}
.coffee-score{display:block;font-size:.84rem;color:var(--accent-dark);margin-bottom:7px}
.coffee-details-toggle{border:0;background:transparent;padding:0;color:var(--accent-dark);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.coffee-details{margin-top:12px;padding-top:11px;border-top:1px solid var(--line);font-size:.8rem;line-height:1.45;color:var(--muted)}
.coffee-details p{margin:0 0 6px}.coffee-details strong{color:var(--ink)}
@media(max-width:620px){.coffee-preview{padding:12px;margin-bottom:14px}.coffee-notes{font-size:.84rem}.coffee-details{font-size:.78rem}}


/* V23 — número de identificação do pedido */
.order-id-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
  padding:14px 16px;
  border:1px solid #d8c8ba;
  border-radius:12px;
  background:#fbf7f2;
}
.order-id-card span{
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.08em;
  color:#624f41;
}
.order-id-card strong{
  font-size:1rem;
  color:#954430;
  white-space:nowrap;
}
@media(max-width:620px){
  .order-id-card{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
  }
}
.product-card.pending-add{box-shadow:0 0 0 2px rgba(180,120,35,.55)}
.product-card.pending-add .add-btn{animation:pendingPulse 1.4s ease-in-out infinite}
@keyframes pendingPulse{50%{transform:scale(1.025)}}

/* V24 — Tipografia oficial Rafa Palma no site de pedidos */
@font-face{
  font-family:"Rafa Freehouse";
  src:url("/assets/fonts/Freehouse-Regular.ttf") format("truetype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:"Rafa Chandler42";
  src:url("/assets/fonts/Chandler42 Regular.otf") format("opentype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face{
  font-family:"Rafa Bahnschrift";
  src:url("/assets/fonts/BAHNSCHRIFT.TTF") format("truetype");
  font-style:normal;
  font-weight:100 900;
  font-display:swap;
}

body,
button,input,select,textarea,
.topbar,.btn,.eyebrow,.product-desc,.control-label,
.cart-meta,.field,.footer{
  font-family:"Rafa Bahnschrift",Bahnschrift,"Arial Narrow",Arial,sans-serif !important;
}

.hero h1,
.section-heading h2,
.cart-header h2,
.checkout-top h2,
.product-title-row h3,
.steps h3,
.cart-item h4,
.cart-empty strong,
.delivery-choice legend,
.hero-panel strong,
.product-placeholder,
.brand-mark,
.product-image::after,
.product-media::after{
  font-family:"Rafa Freehouse",Georgia,serif !important;
  font-weight:400 !important;
}

.hero-note,
.hero-script{
  font-family:"Rafa Chandler42",Georgia,serif !important;
  font-style:normal !important;
  font-weight:400 !important;
}

.product-placeholder small{
  font-family:"Rafa Bahnschrift",Bahnschrift,"Arial Narrow",Arial,sans-serif !important;
}


/* V12 — ajustes temporários de embalagens e título Procedência */
.size-btn.unavailable,
.size-btn:disabled{
  opacity:.38 !important;
  cursor:not-allowed !important;
  background:#eee7df !important;
  color:#776e65 !important;
  border-color:#d8cec4 !important;
  text-decoration:line-through;
  box-shadow:none !important;
}

@media (max-width:700px){
  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:clamp(1.35rem,7.2vw,1.72rem) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    overflow-wrap:anywhere;
    max-width:100%;
  }

  .product-title-row{
    gap:8px !important;
  }
  .product-title-row h3{
    min-width:0;
  }
  .product-price{
    flex:0 0 auto;
  }
}


/* V13 — correção definitiva do card Procedência no mobile */
@media (max-width:700px){

  /* Nome dentro da embalagem ilustrativa */
  .product-card[data-product-id="procedencia"] .product-placeholder{
    width:54% !important;
    max-width:210px !important;
    padding:12px 8px !important;
    font-size:clamp(.92rem,4.2vw,1.12rem) !important;
    line-height:1 !important;
    letter-spacing:-.02em !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:clip !important;
    box-sizing:border-box !important;
  }

  .product-card[data-product-id="procedencia"] .product-placeholder small{
    font-size:.52rem !important;
    letter-spacing:.12em !important;
  }

  /* Título e preço abaixo da embalagem */
  .product-card[data-product-id="procedencia"] .product-title-row{
    display:grid !important;
    grid-template-columns:minmax(0,1fr) auto !important;
    align-items:start !important;
    column-gap:10px !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:clamp(1.08rem,5.2vw,1.32rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.01em !important;
    max-width:100% !important;
    min-width:0 !important;
    overflow:hidden !important;
    white-space:nowrap !important;
  }

  .product-card[data-product-id="procedencia"] .product-price{
    font-size:.94rem !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    padding-top:2px !important;
  }
}

/* Telefones mais estreitos */
@media (max-width:390px){
  .product-card[data-product-id="procedencia"] .product-placeholder{
    font-size:.88rem !important;
    padding-left:6px !important;
    padding-right:6px !important;
  }
  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:1.05rem !important;
  }
  .product-card[data-product-id="procedencia"] .product-price{
    font-size:.88rem !important;
  }
}


/* V14 — Procedência: preserva a estrutura original do card no mobile */
@media (max-width:700px){

  /* Embalagem volta à mesma proporção visual dos demais cafés */
  .product-card[data-product-id="procedencia"] .product-placeholder{
    width:54% !important;
    max-width:none !important;
    aspect-ratio:.72 !important;
    padding:14px 10px !important;
    font-size:clamp(1.08rem,4.9vw,1.28rem) !important;
    line-height:1 !important;
    letter-spacing:-.025em !important;
    white-space:nowrap !important;
    overflow:visible !important;
    text-overflow:clip !important;
  }

  .product-card[data-product-id="procedencia"] .product-placeholder small{
    font-size:.58rem !important;
    letter-spacing:.13em !important;
  }

  /* Linha do nome/preço volta ao layout original, igual aos outros cards */
  .product-card[data-product-id="procedencia"] .product-title-row{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:10px !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:clamp(1.28rem,5.8vw,1.48rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.025em !important;
    max-width:none !important;
    min-width:0 !important;
    overflow:visible !important;
    white-space:nowrap !important;
  }

  .product-card[data-product-id="procedencia"] .product-price{
    font-size:1rem !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    padding-top:2px !important;
    flex:0 0 auto !important;
  }
}

/* Samsung/telefones mais estreitos */
@media (max-width:390px){
  .product-card[data-product-id="procedencia"] .product-placeholder{
    font-size:1.08rem !important;
    padding-left:8px !important;
    padding-right:8px !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:1.25rem !important;
  }

  .product-card[data-product-id="procedencia"] .product-price{
    font-size:.95rem !important;
  }
}


/* V16 — correção apenas do card Procedência no desktop */
@media (min-width:701px){

  .product-card[data-product-id="procedencia"] .product-placeholder{
    font-size:clamp(.88rem,1.18vw,1.04rem) !important;
    line-height:1 !important;
    letter-spacing:-.035em !important;
    white-space:nowrap !important;
    padding-left:8px !important;
    padding-right:8px !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:8px !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row h3{
    font-size:clamp(.92rem,1.35vw,1.12rem) !important;
    line-height:1.02 !important;
    letter-spacing:-.03em !important;
    white-space:nowrap !important;
    min-width:0 !important;
  }

  .product-card[data-product-id="procedencia"] .product-price{
    flex:0 0 auto !important;
    white-space:nowrap !important;
    font-size:.86rem !important;
    padding-top:2px !important;
  }
}


/* CAPA PADRÃO RAFA PALMA - arte preta aprovada */
.product-cover{
  width:54%;
  aspect-ratio:.70;
  position:relative;
  overflow:hidden;
  border-radius:12px 12px 20px 20px;
  box-shadow:0 18px 30px rgba(0,0,0,.18);
  background:#08090c;
}
.product-cover img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

.product-card[data-product-id="procedencia"] .product-cover-name,
.product-card[data-product-id="merecimento"] 
.product-card[data-product-id="dois-caminhos"] 

@media(max-width:700px){
  .product-cover{
    width:54%;
    max-width:none;
  }
  
  .product-card[data-product-id="procedencia"] .product-cover-name,
  .product-card[data-product-id="merecimento"] 
  .product-card[data-product-id="dois-caminhos"] 
}


/* AJUSTE — nomes textuais dos cafés menores nos cards */
.product-title-row h3{
  font-family:"Rafa Freehouse",Georgia,serif !important;
  font-size:1.08rem !important;
  line-height:1.02 !important;
  letter-spacing:-.015em !important;
  white-space:nowrap !important;
  margin:0 !important;
  min-width:0 !important;
}

.product-title-row{
  gap:10px !important;
}

.product-price{
  flex:0 0 auto !important;
  font-size:.86rem !important;
}

/* Nomes mais compridos */
.product-card[data-product-id="procedencia"] .product-title-row h3,
.product-card[data-product-id="merecimento"] .product-title-row h3{
  font-size:1rem !important;
}

.product-card[data-product-id="dois-caminhos"] .product-title-row h3{
  font-size:.96rem !important;
}

@media(max-width:700px){
  .product-title-row h3{
    font-size:1.28rem !important;
  }

  .product-card[data-product-id="procedencia"] .product-title-row h3,
  .product-card[data-product-id="merecimento"] .product-title-row h3{
    font-size:1.18rem !important;
  }

  .product-card[data-product-id="dois-caminhos"] .product-title-row h3{
    font-size:1.12rem !important;
  }

  .product-price{
    font-size:.95rem !important;
  }
}



/* AJUSTE FINAL MOBILE — capa contida na área bege com respiro */
@media (max-width:700px){
  .product-visual{
    aspect-ratio:auto !important;
    min-height:0 !important;
    padding:22px 0 26px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .product-cover{
    width:48% !important;
    max-width:205px !important;
    margin:0 auto !important;
    flex:0 0 auto !important;
  }
}

@media (max-width:390px){
  .product-visual{
    padding-top:20px !important;
    padding-bottom:24px !important;
  }

  .product-cover{
    width:47% !important;
    max-width:190px !important;
  }
}

/* V25 — desktop com o mesmo respiro bege da capa no mobile */
@media (min-width:701px){
  .product-visual{
    aspect-ratio:auto !important;
    min-height:0 !important;
    padding:18px 0 20px !important;
    box-sizing:border-box !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .product-cover{
    width:48% !important;
    max-width:185px !important;
    margin:0 auto !important;
    flex:0 0 auto !important;
  }
}

.stock-alert{font-weight:700;color:#8b4228;margin:.5rem 0}.add-btn:disabled{opacity:.55;cursor:not-allowed}#estoque-status{font-size:.85rem;margin:0 0 1rem}
