/* ============================================================
   QUINTA DA JULIANA — CSS GLOBAL v1.0
   Child theme: hello-elementor-child
   ============================================================ */

:root{
  /* Paleta v2.0 — extraída da logo e das artes oficiais dos rótulos */
  --qj-gold:#C9A15A;          /* ouro da logo */
  --qj-gold-light:#D8B875;
  --qj-gold-deep:#B08A45;     /* ouro queimado (Terra) */
  --qj-graphite:#4A4A4A;      /* cinza da logo */
  --qj-dark:#14100F;          /* preto vinho (fundo Terra) */
  --qj-black:#121010;
  --qj-wine:#7A1F2B;          /* vermelho vinho vivo (La belle Ju) */
  --qj-wine-deep:#5A0F1B;
  --qj-rose:#E8A28B;          /* salmão */
  --qj-peach:#F6DBC9;         /* pêssego claro (fundo rosé) */
  --qj-blush:#FBF0E7;         /* rosé quase-branco */
  --qj-copper:#C97B4A;        /* cobre da cápsula */
  --qj-offwhite:#F7F3EC;
  --qj-ivory:#F4EDE0;         /* marfim quente (fundo Alvorada) */
  --qj-cream:#EFE6D3;
  --qj-olive:#5C6B3C;         /* oliva profundo — cor de display (Alvorada) */
  --qj-olive-soft:#6F733F;
  --qj-olive-dark:#41502A;
  --qj-white:#FFFFFF;
  --qj-font-title:'Cormorant Garamond',Georgia,serif;
  --qj-font-body:'Montserrat',Helvetica,Arial,sans-serif;
  --qj-radius:2px;
  --qj-arch:180px 180px 3px 3px;  /* arco de garrafa/janela de adega */
  --qj-transition:all .35s ease;
  /* PROIBIDO em qualquer elemento: lilás, roxo, violeta, azul frio */
}

/* ---------- Base ---------- */
body{
  font-family:var(--qj-font-body);
  font-weight:400;
  color:var(--qj-graphite);
  background:var(--qj-offwhite);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.qj-title-serif{
  font-family:var(--qj-font-title);
  font-weight:600;
  color:var(--qj-dark);
  letter-spacing:.04em;
  line-height:1.15;
}
h1{font-size:clamp(2.1rem,5vw,3.6rem);text-transform:uppercase;}
h2{font-size:clamp(1.7rem,4vw,2.6rem);text-transform:uppercase;}
h3{font-size:clamp(1.3rem,3vw,1.8rem);}
p{line-height:1.75;font-weight:400;}
a{transition:var(--qj-transition);}

/* ---------- Linha dourada decorativa ---------- */
.qj-gold-line{
  width:64px;height:1px;background:var(--qj-gold);
  display:block;margin:22px auto;position:relative;
}
.qj-gold-line::after{
  content:"";position:absolute;left:50%;top:-3px;
  width:7px;height:7px;transform:translateX(-50%) rotate(45deg);
  background:var(--qj-gold);
}
.qj-gold-line--left{margin-left:0;}
.qj-gold-line--left::after{left:0;transform:rotate(45deg);}

/* ---------- Seções ---------- */
.qj-section-light{background:var(--qj-offwhite);padding:96px 24px;}
.qj-section-dark{background:var(--qj-dark);padding:96px 24px;}
.qj-section-dark h1,.qj-section-dark h2,.qj-section-dark h3{color:var(--qj-white);}
.qj-section-dark p{color:rgba(247,243,236,.82);}
.qj-section-dark .qj-eyebrow{color:var(--qj-gold-light);}
.qj-section-wine{background:var(--qj-wine);padding:96px 24px;}
.qj-section-wine h2,.qj-section-wine p{color:var(--qj-offwhite);}
.qj-eyebrow{
  font-family:var(--qj-font-body);font-size:.72rem;font-weight:500;
  letter-spacing:.32em;text-transform:uppercase;color:var(--qj-gold);
  display:block;margin-bottom:14px;
}

/* ---------- Botões ---------- */
.qj-button-primary,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #respond input#submit.alt{
  font-family:var(--qj-font-body);
  font-size:.8rem;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--qj-dark)!important;
  background:var(--qj-gold)!important;
  border:1px solid var(--qj-gold)!important;
  border-radius:var(--qj-radius);
  padding:16px 38px;line-height:1;
  display:inline-block;text-align:center;cursor:pointer;
  transition:var(--qj-transition);
}
.qj-button-primary:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover{
  background:transparent!important;
  color:var(--qj-gold)!important;
}
.qj-button-outline,
.woocommerce a.button,
.woocommerce button.button{
  font-family:var(--qj-font-body);
  font-size:.8rem;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase;
  color:var(--qj-dark);
  background:transparent;
  border:1px solid var(--qj-gold);
  border-radius:var(--qj-radius);
  padding:15px 34px;line-height:1;
  display:inline-block;text-align:center;cursor:pointer;
  transition:var(--qj-transition);
}
.qj-button-outline:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover{
  background:var(--qj-gold);color:var(--qj-dark);
}
.qj-section-dark .qj-button-outline{color:var(--qj-offwhite);}
.qj-section-dark .qj-button-outline:hover{color:var(--qj-dark);}

/* ---------- Cards de produto ---------- */
.qj-product-card,
.woocommerce ul.products li.product{
  background:var(--qj-white);
  border:1px solid rgba(201,161,90,.35);
  border-radius:var(--qj-radius);
  padding:34px 26px 30px;
  text-align:center;
  transition:var(--qj-transition);
  position:relative;
}
.qj-product-card:hover,
.woocommerce ul.products li.product:hover{
  transform:translateY(-6px);
  border-color:var(--qj-gold);
  box-shadow:0 22px 44px -18px rgba(20,16,15,.22);
}
.woocommerce ul.products li.product img{
  margin:0 auto 18px;max-height:340px;width:auto;object-fit:contain;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
  font-family:var(--qj-font-title);
  font-size:1.35rem;font-weight:600;color:var(--qj-dark);
  letter-spacing:.03em;padding:6px 0 2px;
}
.qj-product-type{
  font-size:.68rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--qj-gold);font-weight:500;display:block;margin-bottom:6px;
}
.woocommerce ul.products li.product .price{
  color:var(--qj-wine);font-weight:500;font-size:1.05rem;
  font-family:var(--qj-font-body);display:block;margin:10px 0 16px;
}
.woocommerce ul.products li.product .button{margin-top:4px;}

/* ---------- Grid da loja ---------- */
.woocommerce ul.products{gap:28px;}
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering select{
  font-family:var(--qj-font-body);font-size:.8rem;color:var(--qj-graphite);
}

/* ---------- Página do produto ---------- */
.woocommerce div.product .product_title{
  font-family:var(--qj-font-title);font-size:clamp(1.8rem,4vw,2.6rem);
  color:var(--qj-dark);
}
.woocommerce div.product p.price{
  color:var(--qj-wine);font-size:1.5rem;font-family:var(--qj-font-body);
  font-weight:500;
}
.woocommerce div.product .woocommerce-product-details__short-description{
  font-size:1rem;color:var(--qj-graphite);margin:14px 0 22px;
}
.woocommerce div.product form.cart .button{padding:17px 44px;}
.woocommerce div.product form.cart div.quantity .qty{
  border:1px solid rgba(201,161,90,.5);height:50px;border-radius:var(--qj-radius);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--qj-wine);}
.woocommerce div.product .woocommerce-tabs .panel h2{
  font-size:1.4rem;text-transform:none;letter-spacing:.02em;
}

/* Bloco sensorial / ficha técnica */
.qj-ficha{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:2px;background:rgba(201,161,90,.25);border:1px solid rgba(201,161,90,.25);
  margin:18px 0;
}
.qj-ficha div{background:var(--qj-offwhite);padding:16px 18px;}
.qj-ficha strong{
  display:block;font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--qj-gold);margin-bottom:5px;font-weight:600;
}
.qj-ficha span{font-size:.92rem;color:var(--qj-dark);}

/* ---------- Cards de harmonização ---------- */
.qj-harmonization-card{
  background:var(--qj-white);
  border:1px solid rgba(201,161,90,.35);
  border-top:2px solid var(--qj-gold);
  border-radius:var(--qj-radius);
  padding:30px 26px;height:100%;
  transition:var(--qj-transition);
}
.qj-harmonization-card:hover{transform:translateY(-4px);border-color:var(--qj-gold);}
.qj-harmonization-card h4{
  font-family:var(--qj-font-title);font-size:1.25rem;color:var(--qj-wine);
  margin-bottom:12px;
}
.qj-harmonization-card ul{list-style:none;margin:0;padding:0;}
.qj-harmonization-card li{
  padding:7px 0;border-bottom:1px solid rgba(63,63,63,.08);
  font-size:.92rem;color:var(--qj-graphite);
}
.qj-harmonization-card li:last-child{border-bottom:0;}
.qj-harmonization-card li::before{content:"— ";color:var(--qj-gold);}

/* ---------- Avisos 18+ ---------- */
.qj-age-warning,.qj-badge-18{
  font-size:.78rem;letter-spacing:.06em;color:var(--qj-wine);
  border:1px solid rgba(90,15,27,.3);background:rgba(90,15,27,.05);
  padding:12px 16px;border-radius:var(--qj-radius);
  display:flex;align-items:center;gap:10px;margin:16px 0;
}
.qj-badge-18::before,.qj-age-warning::before{
  content:"18+";flex:0 0 auto;
  font-weight:700;font-size:.72rem;color:var(--qj-offwhite);
  background:var(--qj-wine);border-radius:50%;
  width:32px;height:32px;display:flex;align-items:center;justify-content:center;
}

/* ---------- Popup de idade ---------- */
.qj-agegate{
  position:fixed;inset:0;z-index:999999;
  background:rgba(20,16,15,.96);
  display:flex;align-items:center;justify-content:center;
  padding:24px;opacity:1;transition:opacity .4s ease;
}
.qj-agegate[hidden]{display:none;}
.qj-agegate__box{
  max-width:520px;width:100%;text-align:center;
  background:var(--qj-dark);
  border:1px solid rgba(201,161,90,.5);
  padding:56px 40px;border-radius:var(--qj-radius);
}
.qj-agegate__box .qj-gold-line{margin:18px auto 24px;}
.qj-agegate__box h2{
  color:var(--qj-offwhite);font-family:var(--qj-font-title);
  font-size:1.9rem;text-transform:uppercase;letter-spacing:.06em;
}
.qj-agegate__box p{color:rgba(247,243,236,.75);font-size:.92rem;margin:0 0 30px;}
.qj-agegate__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.qj-agegate__yes{composes:none;}
.qj-agegate__actions button{min-width:200px;}
.qj-agegate__no{
  background:transparent;border:1px solid rgba(247,243,236,.3);
  color:rgba(247,243,236,.7);
}
.qj-agegate__no:hover{border-color:var(--qj-rose);color:var(--qj-rose);}

/* ---------- Botão flutuante WhatsApp ---------- */
.qj-whatsapp-float{
  position:fixed;right:22px;bottom:22px;z-index:99998;
  display:flex;align-items:center;gap:10px;
  background:#25D366;color:#fff!important;
  font-family:var(--qj-font-body);font-size:.82rem;font-weight:600;
  letter-spacing:.04em;text-decoration:none;
  padding:14px 20px;border-radius:60px;
  box-shadow:0 10px 28px -8px rgba(0,0,0,.4);
  transition:var(--qj-transition);
}
.qj-whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 16px 34px -8px rgba(0,0,0,.5);}
.qj-whatsapp-float svg{width:22px;height:22px;fill:#fff;}
@media(max-width:767px){
  .qj-whatsapp-float span{display:none;}
  .qj-whatsapp-float{padding:15px;}
}

/* ---------- Checkout / Carrinho ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{
  border:1px solid rgba(63,63,63,.25);background:#fff;
  padding:13px 14px;border-radius:var(--qj-radius);
  font-family:var(--qj-font-body);
}
.woocommerce form .form-row input.input-text:focus{border-color:var(--qj-gold);outline:none;}
.woocommerce-checkout h3,#order_review_heading{
  font-family:var(--qj-font-title);text-transform:uppercase;
  letter-spacing:.05em;font-size:1.3rem;
}
.woocommerce table.shop_table{
  border:1px solid rgba(201,161,90,.3);border-radius:var(--qj-radius);
}
.woocommerce table.shop_table th{
  font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--qj-graphite);
}
.woocommerce .woocommerce-info,.woocommerce .woocommerce-message{
  border-top-color:var(--qj-gold);
}

/* ---------- Header custom ---------- */
.qj-header{
  background:var(--qj-offwhite);
  border-bottom:1px solid rgba(201,161,90,.3);
  position:sticky;top:0;z-index:9990;
}
.qj-header__inner{
  max-width:1240px;margin:0 auto;padding:14px 24px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}

.qj-header__menu{display:flex;gap:34px;list-style:none;margin:0;padding:0;}
.qj-header__menu a{
  font-size:.78rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;
  color:var(--qj-dark);text-decoration:none;
}
.qj-header__menu a:hover{color:var(--qj-gold);}
.qj-header__actions{display:flex;align-items:center;gap:18px;}
.qj-header__cart{position:relative;color:var(--qj-dark);text-decoration:none;font-size:1.2rem;}
.qj-header__cart-count{
  position:absolute;top:-8px;right:-11px;
  background:var(--qj-wine);color:#fff;font-size:.62rem;font-weight:700;
  width:17px;height:17px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
}
.qj-header__toggle{display:none;background:none;border:0;cursor:pointer;padding:6px;}
.qj-header__toggle span{display:block;width:24px;height:2px;background:var(--qj-dark);margin:5px 0;}

/* ---------- Footer custom ---------- */
.qj-footer{background:var(--qj-dark);color:rgba(247,243,236,.75);}
.qj-footer__grid{
  max-width:1240px;margin:0 auto;padding:72px 24px 48px;
  display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px;
}
.qj-footer h5{
  font-family:var(--qj-font-body);font-size:.72rem;font-weight:600;
  letter-spacing:.28em;text-transform:uppercase;color:var(--qj-gold);
  margin-bottom:18px;
}
.qj-footer ul{list-style:none;margin:0;padding:0;}
.qj-footer li{margin-bottom:10px;}
.qj-footer a{color:rgba(247,243,236,.75);text-decoration:none;font-size:.88rem;}
.qj-footer a:hover{color:var(--qj-gold-light);}
.qj-footer__logo img{max-height:64px;margin-bottom:16px;}
.qj-footer__bottom{
  border-top:1px solid rgba(247,243,236,.12);
  text-align:center;padding:22px 24px;font-size:.75rem;
  color:rgba(247,243,236,.55);letter-spacing:.04em;
}

/* ---------- Responsividade ---------- */
@media(max-width:1199px){
  .qj-footer__grid{grid-template-columns:1fr 1fr;}
}
@media(max-width:1023px){
  .qj-header__menu{
    display:none;position:absolute;top:100%;left:0;right:0;
    background:var(--qj-offwhite);flex-direction:column;gap:0;
    border-bottom:1px solid rgba(201,161,90,.3);padding:10px 0;
  }
  .qj-header__menu.is-open{display:flex;}
  .qj-header__menu li{padding:13px 26px;}
  .qj-header__toggle{display:block;}
  .qj-header__buy{display:none;}
}
@media(max-width:767px){
  .qj-section-light,.qj-section-dark,.qj-section-wine{padding:64px 20px;}
  .qj-footer__grid{grid-template-columns:1fr;padding:56px 20px 36px;}
  .qj-button-primary,.qj-button-outline{width:100%;}
  .woocommerce ul.products li.product img{max-height:260px;}
  .qj-agegate__box{padding:42px 24px;}
  .qj-agegate__actions button{width:100%;}
}

/* ---------- Acessibilidade / toque ---------- */
button,a.button,.qj-button-primary,.qj-button-outline{min-height:44px;}
:focus-visible{outline:2px solid var(--qj-gold);outline-offset:2px;}

/* ---------- Utilidades ---------- */
.qj-text-center{text-align:center;}
.qj-mt-0{margin-top:0;}
.qj-max-narrow{max-width:720px;margin-left:auto;margin-right:auto;}

/* ============================================================
   v1.1 — INTERAÇÕES PREMIUM (padrão editorial)
   Timings padronizados: menu .1s · ícones .2s · drawers .3s · imagens .4s
   ============================================================ */

/* ---------- Header shrink-on-scroll ---------- */
.qj-header{transition:all .3s ease;}
.qj-header--scrolled{
  background:rgba(247,243,236,.92);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:0 6px 24px -12px rgba(20,16,15,.25);
}
.qj-header--scrolled .qj-header__inner{padding-top:8px;padding-bottom:8px;}
.qj-header--scrolled .qj-header__logo img{max-height:44px;}
.qj-header__logo img{transition:max-height .3s ease;}

/* ---------- Hero com vídeo ---------- */
.qj-hero-video{position:relative;overflow:hidden;}
.qj-hero-video video{
  position:absolute;inset:0;width:100%;height:100%;
  object-fit:cover;z-index:0;
}
.qj-hero-video::after{
  content:"";position:absolute;inset:0;z-index:1;
  background:linear-gradient(rgba(20,16,15,.55),rgba(20,16,15,.75));
}
.qj-hero-video>*:not(video){position:relative;z-index:2;}

/* ---------- Tabs de filtro da loja ---------- */
.qj-shop-tabs{
  display:flex;gap:8px;justify-content:center;flex-wrap:wrap;
  margin:0 0 40px;padding:0;list-style:none;
}
.qj-shop-tabs button{
  background:none;border:0;cursor:pointer;position:relative;
  font-family:var(--qj-font-body);font-size:.75rem;font-weight:600;
  letter-spacing:.24em;text-transform:uppercase;color:var(--qj-graphite);
  padding:12px 18px;transition:color .2s ease;
}
.qj-shop-tabs button::after{
  content:"";position:absolute;left:50%;bottom:6px;
  width:0;height:1px;background:var(--qj-gold);
  transform:translateX(-50%);transition:width .3s ease;
}
.qj-shop-tabs button:hover{color:var(--qj-wine);}
.qj-shop-tabs button.is-active{color:var(--qj-wine);}
.qj-shop-tabs button.is-active::after{width:calc(100% - 36px);}
.woocommerce ul.products li.product.qj-hide{display:none!important;}
.woocommerce ul.products li.product{animation:qjFadeUp .45s ease both;}

/* ---------- Selo de premiação / badge no card ---------- */
.qj-badge-award{
  position:absolute;top:16px;right:16px;z-index:3;
  width:56px;height:56px;object-fit:contain;
  filter:drop-shadow(0 4px 10px rgba(20,16,15,.25));
}

/* ---------- Esgotado ---------- */
.woocommerce ul.products li.product.outofstock img{opacity:.45;filter:grayscale(.6);}
.woocommerce ul.products li.product.outofstock::before{
  content:"Esgotado";position:absolute;top:20px;left:50%;transform:translateX(-50%);
  z-index:3;background:var(--qj-dark);color:var(--qj-offwhite);
  font-size:.66rem;font-weight:600;letter-spacing:.26em;text-transform:uppercase;
  padding:8px 18px;border:1px solid var(--qj-gold);
}

/* ---------- Cart drawer (mini-carrinho lateral) ---------- */
.qj-drawer-overlay{
  position:fixed;inset:0;z-index:99990;background:rgba(20,16,15,.55);
  opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;
}
.qj-cart-drawer{
  position:fixed;top:0;right:0;bottom:0;z-index:99991;
  width:min(420px,92vw);background:var(--qj-offwhite);
  transform:translateX(100%);transition:transform .3s ease;
  display:flex;flex-direction:column;
  box-shadow:-18px 0 48px -18px rgba(20,16,15,.4);
}
body.qj-drawer-open .qj-drawer-overlay{opacity:1;visibility:visible;}
body.qj-drawer-open .qj-cart-drawer{transform:translateX(0);}
body.qj-drawer-open{overflow:hidden;}
.qj-cart-drawer__head{
  display:flex;align-items:center;justify-content:space-between;
  padding:22px 26px;border-bottom:1px solid rgba(201,161,90,.35);
}
.qj-cart-drawer__head h4{
  font-family:var(--qj-font-title);font-size:1.15rem;letter-spacing:.08em;
  text-transform:uppercase;margin:0;
}
.qj-cart-drawer__close{
  background:none;border:0;cursor:pointer;font-size:1.4rem;line-height:1;
  color:var(--qj-graphite);transition:color .2s ease;padding:6px;
}
.qj-cart-drawer__close:hover{color:var(--qj-wine);}
.qj-cart-drawer__body{flex:1;overflow-y:auto;padding:20px 26px;}
.qj-cart-drawer__body .woocommerce-mini-cart{list-style:none;margin:0;padding:0;}
.qj-cart-drawer__body .woocommerce-mini-cart li{
  display:flex;gap:14px;align-items:center;
  padding:14px 0;border-bottom:1px solid rgba(63,63,63,.1);position:relative;
}
.qj-cart-drawer__body .woocommerce-mini-cart img{
  width:56px;height:72px;object-fit:contain;float:none;margin:0;
}
.qj-cart-drawer__body .woocommerce-mini-cart .remove{
  position:absolute;right:0;top:14px;color:var(--qj-wine)!important;
}
.qj-cart-drawer__body .woocommerce-mini-cart__total{
  display:flex;justify-content:space-between;padding:18px 0 0;
  font-weight:600;color:var(--qj-dark);border-top:1px solid rgba(201,161,90,.35);margin-top:12px;
}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons{
  display:flex;flex-direction:column;gap:10px;margin:18px 0 0;
}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons a{width:100%;}
.qj-cart-drawer__body .woocommerce-mini-cart__empty-message{
  text-align:center;color:var(--qj-graphite);padding:40px 0;
}
.qj-cart-drawer__footer{
  padding:14px 26px 20px;font-size:.72rem;color:var(--qj-graphite);
  border-top:1px solid rgba(201,161,90,.2);text-align:center;letter-spacing:.04em;
}

/* ---------- Toast (produto adicionado) ---------- */
.qj-toast{
  position:fixed;left:50%;bottom:96px;z-index:99995;
  transform:translate(-50%,20px);opacity:0;visibility:hidden;
  background:var(--qj-dark);color:var(--qj-offwhite);
  border:1px solid var(--qj-gold);border-radius:var(--qj-radius);
  padding:14px 26px;font-size:.82rem;letter-spacing:.06em;
  transition:all .3s ease;max-width:92vw;text-align:center;
}
.qj-toast.is-visible{transform:translate(-50%,0);opacity:1;visibility:visible;}
.qj-toast strong{color:var(--qj-gold-light);font-weight:600;}

/* ---------- Reveal on scroll ---------- */
.qj-reveal{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease;}
.qj-reveal.is-visible{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .qj-reveal{opacity:1;transform:none;transition:none;}
  .qj-header,.qj-cart-drawer{transition:none;}
}

/* ---------- Keyframes ---------- */
@keyframes qjFadeUp{from{opacity:0;transform:translateY(18px);}to{opacity:1;transform:none;}}
@keyframes qjPulseGold{0%,100%{box-shadow:0 0 0 0 rgba(201,161,90,.45);}50%{box-shadow:0 0 0 10px rgba(201,161,90,0);}}
.qj-pulse{animation:qjPulseGold 2.4s ease infinite;}

/* ============================================================
   v2.0 — CAMADA DE IDENTIDADE (logo + artes oficiais dos rótulos)
   Cada vinho tem um universo cromático próprio:
   Alvorada = marfim + oliva + botânica (manhã)
   La belle Ju = pêssego + salmão + vinho vivo (entardecer)
   Terra = preto + ouro + vinho profundo (noite/adega)
   ============================================================ */

/* ---------- Base marfim quente (substitui o off-white frio) ---------- */
body{background:var(--qj-ivory);}
.qj-section-light{background:var(--qj-ivory);}
h1,h2,h3,.qj-title-serif{color:var(--qj-olive-dark);}
.qj-section-dark h1,.qj-section-dark h2,.qj-section-dark h3{color:var(--qj-offwhite);}

/* ---------- Display bicolor (padrão das artes: verbo + nome em ouro) ---------- */
.qj-display{
  font-family:var(--qj-font-title);font-weight:600;line-height:1.06;
  color:var(--qj-olive-dark);letter-spacing:.02em;
}
.qj-display em,.qj-display .gold{
  font-style:normal;color:var(--qj-gold-deep);display:block;
  font-size:1.28em;letter-spacing:.01em;
}
.qj-section-dark .qj-display{color:var(--qj-offwhite);}
.qj-section-dark .qj-display em{color:var(--qj-gold);}

/* ---------- Ornamento de videira (divisor-assinatura, no lugar da linha seca) ---------- */
.qj-ornament{
  display:flex;align-items:center;justify-content:center;gap:14px;
  margin:24px auto;color:var(--qj-gold);
}
.qj-ornament::before,.qj-ornament::after{
  content:"";height:1px;width:64px;
  background:linear-gradient(to right,transparent,var(--qj-gold));
}
.qj-ornament::after{background:linear-gradient(to left,transparent,var(--qj-gold));}
.qj-ornament svg,.qj-ornament .qj-ornament-diamond{
  width:9px;height:9px;background:var(--qj-gold);transform:rotate(45deg);flex:0 0 auto;
  box-shadow:16px 0 0 -3px var(--qj-gold),-16px 0 0 -3px var(--qj-gold);
}

/* ---------- Raio de sol (eyebrow Alvorada / seções claras) ---------- */
.qj-sunray{position:relative;padding-top:34px;}
.qj-sunray::before{
  content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);
  width:56px;height:28px;
  background:
    radial-gradient(circle at 50% 100%,var(--qj-gold) 0 3px,transparent 4px),
    conic-gradient(from 250deg at 50% 100%,transparent 0 8deg,var(--qj-gold) 8deg 10deg,transparent 10deg 28deg,var(--qj-gold) 28deg 30deg,transparent 30deg 48deg,var(--qj-gold) 48deg 50deg,transparent 50deg 68deg,var(--qj-gold) 68deg 70deg,transparent 70deg 88deg,var(--qj-gold) 88deg 90deg,transparent 90deg 108deg,var(--qj-gold) 108deg 110deg,transparent 110deg);
  opacity:.9;
}

/* ---------- Moldura editorial com cantos em losango ---------- */
.qj-frame-gold{
  position:relative;border:1px solid rgba(201,161,90,.5);
  border-radius:var(--qj-radius);padding:34px 30px;
}
.qj-frame-gold::before,.qj-frame-gold::after{
  content:"";position:absolute;width:8px;height:8px;background:var(--qj-ivory);
  border:1px solid var(--qj-gold);transform:rotate(45deg);
}
.qj-frame-gold::before{top:-5px;left:50%;margin-left:-5px;}
.qj-frame-gold::after{bottom:-5px;left:50%;margin-left:-5px;}

/* ---------- Imagens em arco (adega/garrafa — nada de retângulo seco) ---------- */
.qj-arch-img,.qj-arch-img img{border-radius:var(--qj-arch);overflow:hidden;}
.woocommerce ul.products li.product img{border-radius:120px 120px 3px 3px;background:transparent;}

/* ---------- Cards de produto: universo por categoria ---------- */
.woocommerce ul.products li.product{
  border-radius:14px 14px 3px 3px;
  border:1px solid rgba(201,161,90,.4);
  background:var(--qj-white);
  overflow:hidden;position:relative;
}
.woocommerce ul.products li.product::before{
  content:"";position:absolute;inset:8px;pointer-events:none;z-index:1;
  border:1px solid rgba(201,161,90,.28);border-radius:10px 10px 2px 2px;
  transition:border-color .4s ease;
}
.woocommerce ul.products li.product:hover::before{border-color:rgba(201,161,90,.7);}

/* Alvorada — marfim + oliva */
.woocommerce ul.products li.product.product_cat-vinhos-brancos{
  background:linear-gradient(180deg,var(--qj-ivory) 0%,var(--qj-white) 70%);
}
.product_cat-vinhos-brancos .qj-product-type{color:var(--qj-olive);}
.product_cat-vinhos-brancos .woocommerce-loop-product__title{color:var(--qj-olive-dark);}

/* La belle Ju — pêssego + vinho vivo */
.woocommerce ul.products li.product.product_cat-vinhos-roses{
  background:linear-gradient(180deg,var(--qj-blush) 0%,var(--qj-white) 70%);
}
.product_cat-vinhos-roses .qj-product-type{color:var(--qj-copper);}
.product_cat-vinhos-roses .woocommerce-loop-product__title{color:var(--qj-wine);}

/* Terra — noite + ouro */
.woocommerce ul.products li.product.product_cat-vinhos-tintos{
  background:linear-gradient(180deg,#1b1514 0%,var(--qj-black) 100%);
  border-color:rgba(201,161,90,.55);
}
.product_cat-vinhos-tintos .woocommerce-loop-product__title{color:var(--qj-gold)!important;}
.product_cat-vinhos-tintos .qj-product-type{color:var(--qj-gold-light);}
.product_cat-vinhos-tintos .price{color:var(--qj-offwhite)!important;}

/* ---------- Escala sensorial (corpo/acidez/persistência — arte Terra) ---------- */
.qj-scale{display:flex;align-items:center;gap:12px;font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;}
.qj-scale .qj-scale-dots{display:flex;gap:6px;}
.qj-scale .qj-scale-dots i{
  width:11px;height:11px;border-radius:50%;
  border:1px solid var(--qj-gold);display:block;
}
.qj-scale .qj-scale-dots i.on{background:var(--qj-gold);}

/* ---------- Ícones circulares de ficha (artes: linha fina em círculo) ---------- */
.qj-ico-circle{
  width:58px;height:58px;border-radius:50%;
  border:1.5px solid var(--qj-olive);color:var(--qj-olive);
  display:flex;align-items:center;justify-content:center;margin:0 auto 12px;
}
.qj-section-dark .qj-ico-circle{border-color:var(--qj-gold);color:var(--qj-gold);}

/* ---------- Botões v2: filete interno (padrão rótulo premium) ---------- */
.qj-button-primary,.woocommerce a.button.alt,.woocommerce button.button.alt{
  box-shadow:inset 0 0 0 1px rgba(20,16,15,.18);
}
.qj-button-primary:hover{box-shadow:inset 0 0 0 1px var(--qj-gold);}

/* ---------- Harmonização: cards com aquarela (padrão rosé) ---------- */
.qj-harmonization-card{border-radius:12px 12px 3px 3px;}
.qj-harmonization-card h4{color:var(--qj-olive-dark);}
.qj-harmonization-card.is-rose h4{color:var(--qj-wine);}
.qj-harmonization-card.is-rose{background:var(--qj-blush);border-top-color:var(--qj-copper);}
.qj-harmonization-card.is-terra{background:#1b1514;border-color:rgba(201,161,90,.5);}
.qj-harmonization-card.is-terra h4{color:var(--qj-gold);}
.qj-harmonization-card.is-terra li{color:rgba(247,243,236,.85);border-bottom-color:rgba(247,243,236,.08);}

/* ---------- Página do produto Terra: modo noturno automático ---------- */
.single-product .product_cat-vinhos-tintos div.product .product_title{color:var(--qj-gold-deep);}

/* ---------- Header/Footer alinhados ao marfim ---------- */
.qj-header{background:var(--qj-ivory);}
.qj-header--scrolled{background:rgba(244,237,224,.92);}
.qj-agegate__box h2{color:var(--qj-offwhite);}

/* ---------- Ajustes de aviso (sem tons frios) ---------- */
.qj-age-warning,.qj-badge-18{background:rgba(122,31,43,.06);border-color:rgba(122,31,43,.28);color:var(--qj-wine);}
.qj-age-warning::before,.qj-badge-18::before{background:var(--qj-wine);}


/* ---------- Full-bleed no Hello theme ---------- */
body .site-main,main.site-main,.page .site-main{margin:0 !important;padding:0 !important;max-width:100% !important;width:100% !important;}
.site-main h1.entry-title,.page .entry-title{display:none;}
body.page .entry-content,.site-main .page-content{margin:0;padding:0;max-width:100%;}


/* ---------- Logo JPEG sobre marfim + garrafas sem corte ---------- */
.qj-header__logo img{mix-blend-mode:multiply;max-height:104px;width:auto;}
.qj-header--scrolled .qj-header__logo img{max-height:72px;}
.woocommerce ul.products li.product img{width:100%!important;max-width:100%;height:340px!important;object-fit:contain!important;object-position:center center;border-radius:0;margin:14px auto 18px;display:block;}
.qj-footer__logo img{filter:brightness(0) invert(0.95);opacity:.95;max-height:110px;width:auto;}


/* ---------- Pagina de produto: galeria contida ---------- */
.single-product div.product .woocommerce-product-gallery{max-width:430px;margin:0 auto 30px;}
.single-product div.product .woocommerce-product-gallery__wrapper{background:transparent;}
.single-product div.product .woocommerce-product-gallery__image img{width:100%!important;height:auto!important;max-height:560px;object-fit:contain;}
.single-product div.product .flex-control-thumbs img{max-height:90px;width:auto;object-fit:contain;}
@media(min-width:1024px){.single-product div.product div.summary{padding-top:10px;}}


/* ============ v2.1 VITRINE PREMIUM ============ */
/* Palco de luz + sombra real nas garrafas */
.woocommerce ul.products li.product img{filter:drop-shadow(0 28px 26px rgba(20,16,15,.25));transition:transform .45s ease;}
.woocommerce ul.products li.product:hover img{transform:scale(1.05) translateY(-8px);}
.woocommerce ul.products li.product.product_cat-vinhos-brancos,.woocommerce ul.products li.product.product_cat-vinhos-roses{background-image:radial-gradient(circle at 50% 34%,rgba(255,255,255,.95) 0%,rgba(255,255,255,0) 62%),linear-gradient(180deg,var(--qj-ivory) 0%,var(--qj-white) 78%);}
.woocommerce ul.products li.product.product_cat-vinhos-roses{background-image:radial-gradient(circle at 50% 34%,rgba(255,255,255,.95) 0%,rgba(255,255,255,0) 62%),linear-gradient(180deg,var(--qj-blush) 0%,var(--qj-white) 78%);}
.woocommerce ul.products li.product.product_cat-vinhos-tintos{background-image:radial-gradient(circle at 50% 34%,rgba(201,161,90,.22) 0%,rgba(201,161,90,0) 60%),linear-gradient(180deg,#1b1514 0%,var(--qj-black) 100%);}
.woocommerce ul.products li.product .woocommerce-loop-product__title{margin-top:8px;}
.woocommerce ul.products li.product .price{letter-spacing:.06em;}

/* ---------- Harmonizacoes: par garrafa + mesa ---------- */
.qj-pair{display:grid;grid-template-columns:minmax(300px,400px) 1fr;gap:56px;align-items:center;max-width:1180px;margin:0 auto;}
.qj-pair--flip .qj-pair__media{order:2;}
.qj-pair__media{position:relative;border-radius:200px 200px 6px 6px;padding:56px 30px 30px;text-align:center;border:1px solid rgba(201,161,90,.45);}
.qj-pair__media.is-alvorada{background:linear-gradient(180deg,#FFFFFF 0%,var(--qj-ivory) 100%);}
.qj-pair__media.is-rose{background:linear-gradient(180deg,#FFF6F0 0%,var(--qj-peach) 100%);}
.qj-pair__media.is-terra{background:linear-gradient(180deg,#241c1a 0%,var(--qj-black) 100%);}
.qj-pair__media img{max-height:430px;width:auto;max-width:88%;filter:drop-shadow(0 32px 30px rgba(20,16,15,.32));transition:transform .5s ease;}
.qj-pair:hover .qj-pair__media img{transform:translateY(-8px);}
.qj-temp{position:absolute;top:auto;bottom:-16px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--qj-dark);color:var(--qj-gold-light);font-size:.64rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;padding:9px 18px;border:1px solid rgba(201,161,90,.55);border-radius:30px;}
.qj-food-card{border-radius:16px;overflow:hidden;background:var(--qj-white);border:1px solid rgba(201,161,90,.45);display:grid;grid-template-columns:220px 1fr;box-shadow:0 22px 40px -24px rgba(20,16,15,.25);margin:26px 0;}
.qj-food-card img{width:100%;height:100%;min-height:210px;object-fit:cover;display:block;}
.qj-food-card__body{padding:24px 28px;}
.qj-food-card__body h4{font-family:var(--qj-font-title);font-size:1.2rem;color:var(--qj-olive-dark);margin:0 0 10px;}
.qj-food-card__body ul{list-style:none;margin:0;padding:0;}
.qj-food-card__body li{padding:7px 0;border-bottom:1px solid rgba(63,63,63,.08);font-size:.92rem;color:var(--qj-graphite);}
.qj-food-card__body li:last-child{border-bottom:0;}
.qj-food-card__body li::before{content:"— ";color:var(--qj-gold);}
.qj-food-card.is-rose .qj-food-card__body h4{color:var(--qj-wine);}
.qj-food-card.is-terra{background:#1b1514;border-color:rgba(201,161,90,.5);}
.qj-food-card.is-terra .qj-food-card__body h4{color:var(--qj-gold);}
.qj-food-card.is-terra .qj-food-card__body li{color:rgba(247,243,236,.85);border-bottom-color:rgba(247,243,236,.1);}
@media(max-width:980px){
.qj-pair{grid-template-columns:1fr;gap:40px;}
.qj-pair--flip .qj-pair__media{order:0;}
.qj-pair__media{max-width:300px;margin:0 auto;padding:40px 22px 24px;}
.qj-pair__media img{max-height:320px;}
.qj-food-card{grid-template-columns:1fr;}
.qj-food-card img{height:190px;min-height:0;}
}


/* ============ v2.2 FLUXO DE COMPRA PREMIUM + MOBILE APP ============ */
/* Rosé proporcional (flip) */
.qj-pair--flip{grid-template-columns:1fr minmax(300px,400px);}
@media(max-width:980px){.qj-pair--flip{grid-template-columns:1fr;}}

/* Header: icone conta */
.qj-header__account{color:var(--qj-dark);display:inline-flex;align-items:center;transition:color .2s ease;}
.qj-header__account:hover{color:var(--qj-gold-deep);}

/* Drawer: itens e botoes */
.qj-cart-drawer__body .woocommerce-mini-cart img{width:64px;height:86px;}
.qj-cart-drawer__body .woocommerce-mini-cart li a:not(.remove){font-family:var(--qj-font-title);font-size:1.02rem;color:var(--qj-dark);text-decoration:none;line-height:1.3;}
.qj-cart-drawer__body .woocommerce-mini-cart .quantity{display:block;color:var(--qj-wine);font-weight:600;font-size:.9rem;margin-top:4px;}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons a{display:block;text-align:center;padding:15px 20px;border-radius:var(--qj-radius);font-size:.8rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;text-decoration:none;}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons a:first-child{border:1px solid var(--qj-gold);color:var(--qj-dark);}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons a.checkout{background:var(--qj-gold);color:var(--qj-dark);}
.qj-cart-drawer__body .woocommerce-mini-cart__buttons a.checkout:hover{background:var(--qj-gold-deep);}

/* Página do carrinho */
.woocommerce-cart .site-main{max-width:1180px!important;margin:0 auto!important;padding:56px 24px 80px!important;}
.woocommerce-cart h1.entry-title{display:block!important;font-size:2rem;margin-bottom:26px;}
.woocommerce-cart table.shop_table{background:var(--qj-white);}
.woocommerce-cart .cart_totals{background:var(--qj-white);border:1px solid rgba(201,161,90,.4);border-radius:12px;padding:26px;}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:var(--qj-gold)!important;color:var(--qj-dark)!important;letter-spacing:.2em;text-transform:uppercase;font-size:.82rem;}

/* Checkout (blocks) */
.woocommerce-checkout .site-main{max-width:1180px!important;margin:0 auto!important;padding:48px 24px 90px!important;}
.wc-block-components-checkout-step__title,.wp-block-woocommerce-checkout h2,.wc-block-components-title{font-family:var(--qj-font-title)!important;letter-spacing:.06em;color:var(--qj-olive-dark)!important;}
.wc-block-components-text-input input,.wc-block-components-combobox .components-combobox-control__suggestions-container input,.wc-block-components-select .components-custom-select-control__button{border:1px solid rgba(63,63,63,.3)!important;border-radius:3px!important;background:#fff!important;}
.wc-block-components-text-input input:focus{border-color:var(--qj-gold)!important;box-shadow:0 0 0 1px var(--qj-gold)!important;}
.wc-block-components-checkout-place-order-button{background:var(--qj-gold)!important;color:var(--qj-dark)!important;border:1px solid var(--qj-gold)!important;border-radius:3px!important;font-weight:600!important;letter-spacing:.2em!important;text-transform:uppercase!important;padding:18px 28px!important;}
.wc-block-components-checkout-place-order-button:hover{background:var(--qj-gold-deep)!important;}
.wc-block-components-sidebar .wc-block-components-panel,.wc-block-components-sidebar-layout .wc-block-components-sidebar{background:var(--qj-white);border:1px solid rgba(201,161,90,.4);border-radius:12px;}
.wc-block-components-order-summary{padding:10px 6px;}

/* Minha conta premium */
.woocommerce-account .site-main{max-width:1180px!important;margin:0 auto!important;padding:56px 24px 90px!important;}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:270px 1fr;gap:36px;align-items:start;}
.woocommerce-account.woocommerce-lost-password .woocommerce,.woocommerce-account:not(.logged-in) .woocommerce{display:block;max-width:520px;margin:0 auto;}
.woocommerce-MyAccount-navigation{background:var(--qj-white);border:1px solid rgba(201,161,90,.45);border-radius:14px;padding:14px;}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;}
.woocommerce-MyAccount-navigation li{margin:0;}
.woocommerce-MyAccount-navigation li a{display:block;padding:14px 16px;border-radius:9px;color:var(--qj-graphite);text-decoration:none;font-size:.86rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:all .2s ease;border-left:2px solid transparent;}
.woocommerce-MyAccount-navigation li a:hover{background:var(--qj-ivory);color:var(--qj-olive-dark);}
.woocommerce-MyAccount-navigation li.is-active a{background:var(--qj-ivory);border-left:2px solid var(--qj-gold);color:var(--qj-olive-dark);font-weight:600;}
.woocommerce-MyAccount-content{background:var(--qj-white);border:1px solid rgba(201,161,90,.45);border-radius:14px;padding:34px 36px;}
.woocommerce-MyAccount-content a{color:var(--qj-wine);}
.woocommerce-account .woocommerce-Button,.woocommerce-account button.button{background:var(--qj-gold)!important;color:var(--qj-dark)!important;}
/* Login/cadastro */
.woocommerce-account form.login,.woocommerce-account form.register{background:var(--qj-white);border:1px solid rgba(201,161,90,.45);border-radius:16px;padding:40px 38px;box-shadow:0 30px 60px -30px rgba(20,16,15,.25);}
.woocommerce-account form.login .form-row input,.woocommerce-account form.register .form-row input{width:100%;}
.woocommerce-account h2{font-size:1.5rem;text-transform:none;letter-spacing:.02em;}

/* Mobile: produtos em 1 coluna, sem quebra */
@media(max-width:767px){
.woocommerce ul.products,.woocommerce-page ul.products{display:block!important;}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:100%!important;float:none!important;margin:0 0 26px!important;}
.woocommerce ul.products li.product img{height:280px!important;}
.woocommerce-account .woocommerce{grid-template-columns:1fr;}
.woocommerce-MyAccount-content{padding:24px 20px;}
}

/* Tab bar mobile (app-like) */
.qj-tabbar{display:none;}
@media(max-width:767px){
.qj-tabbar{position:fixed;left:0;right:0;bottom:0;z-index:99997;display:grid;grid-template-columns:repeat(5,1fr);background:rgba(244,237,224,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid rgba(201,161,90,.5);padding:8px 4px calc(8px + env(safe-area-inset-bottom));}
.qj-tabbar a{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;color:var(--qj-graphite);font-size:.58rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:4px 0;}
.qj-tabbar a svg{width:22px;height:22px;}
.qj-tabbar a:active,.qj-tabbar a:hover{color:var(--qj-gold-deep);}
.qj-tabbar__badge{position:absolute;top:0;left:calc(50% + 6px);background:var(--qj-wine);color:#fff;font-style:normal;font-size:.58rem;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;}
body{padding-bottom:74px;}
.qj-whatsapp-float{bottom:92px;}
.qj-header__account{display:none;}
}


/* v2.2.1 refinos finais */
.woocommerce-account .woocommerce{grid-template-columns:270px minmax(0,1fr);}
.woocommerce-account .woocommerce > .woocommerce-notices-wrapper,.woocommerce-account .woocommerce > .woocommerce-message,.woocommerce-account .woocommerce > .woocommerce-info{grid-column:1 / -1;}
.woocommerce-MyAccount-navigation{width:100%;}
.woocommerce-MyAccount-content{min-width:0;}
.product_cat-vinhos-tintos .button{color:var(--qj-gold)!important;border-color:var(--qj-gold)!important;}
.product_cat-vinhos-tintos .button:hover{background:var(--qj-gold)!important;color:var(--qj-dark)!important;}
.qj-cart-drawer__body .woocommerce-mini-cart li{padding-right:26px;}


/* ============================================================
   v3.0 — A VINÍCOLA editorial (.qj-story) + fix Minha Conta login
   ============================================================ */
.qj-story{display:grid;grid-template-columns:minmax(300px,520px) 1fr;gap:64px;align-items:center;max-width:1180px;margin:0 auto;text-align:left;padding:0 8px}
.qj-story--flip{grid-template-columns:1fr minmax(300px,520px)}
.qj-story--flip .qj-story__media{grid-column:2;grid-row:1}
.qj-story--flip .qj-story__body{grid-column:1;grid-row:1}
.qj-story__media{position:relative}
.qj-story__media img{width:100%;height:auto;display:block;border-radius:18px;box-shadow:0 34px 70px -34px rgba(18,16,16,.6)}
.qj-story__media::after{content:"";position:absolute;inset:12px;border:1px solid rgba(201,161,90,.5);border-radius:12px;pointer-events:none}
.qj-story__body .qj-gold-line{margin-left:0}
.qj-story__body h2{margin-top:6px}
.qj-section-dark .qj-story__media img{box-shadow:0 34px 70px -30px rgba(0,0,0,.85)}
@media(max-width:900px){
  .qj-story,.qj-story--flip{grid-template-columns:1fr;gap:30px;text-align:center}
  .qj-story--flip .qj-story__media,.qj-story--flip .qj-story__body{grid-column:1;grid-row:auto}
  .qj-story--flip .qj-story__media{order:-1}
  .qj-story__body .qj-gold-line{margin-left:auto}
}

/* --- Minha Conta: página de login/cadastro (visitante) sem o grid de conta logada --- */
body.woocommerce-account:not(.logged-in) .woocommerce{display:block!important;max-width:1020px;margin:0 auto;grid-template-columns:none!important}
.woocommerce-account .col2-set{display:grid!important;grid-template-columns:1fr 1fr;gap:36px;max-width:1020px;margin:0 auto;float:none;width:100%}
.woocommerce-account .col2-set .u-column1,.woocommerce-account .col2-set .u-column2,.woocommerce-account .col2-set .col-1,.woocommerce-account .col2-set .col-2{width:100%!important;float:none!important;max-width:none!important;margin:0;box-sizing:border-box}
.woocommerce-account .col2-set form.login,.woocommerce-account .col2-set form.register{width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box;height:100%}
.woocommerce-account form .form-row{width:100%;box-sizing:border-box}
.woocommerce-account form .woocommerce-Input,.woocommerce-account form input[type=text],.woocommerce-account form input[type=email],.woocommerce-account form input[type=password]{width:100%!important;box-sizing:border-box}
.woocommerce-account form .password-input{width:100%;display:block}
.woocommerce-account .col2-set h2{font-size:1.5rem;margin-bottom:18px}
@media(max-width:820px){.woocommerce-account .col2-set{grid-template-columns:1fr;gap:24px}}

/* fix: clearfix do Woo vira item de grid no col2-set */
.woocommerce-account .col2-set::before,.woocommerce-account .col2-set::after{content:none!important;display:none!important}
.woocommerce-account .col2-set .u-column1,.woocommerce-account .col2-set .col-1{grid-column:1;grid-row:1}
.woocommerce-account .col2-set .u-column2,.woocommerce-account .col2-set .col-2{grid-column:2;grid-row:1}
@media(max-width:820px){
  .woocommerce-account .col2-set .u-column1,.woocommerce-account .col2-set .col-1{grid-column:1;grid-row:auto}
  .woocommerce-account .col2-set .u-column2,.woocommerce-account .col2-set .col-2{grid-column:1;grid-row:auto}
}


/* ============================================================
   v3.1 — POLIMENTO MOBILE GLOBAL (age gate, respiro, botões, conta)
   ============================================================ */
@media(max-width:767px){
  .qj-agegate{padding:18px}
  .qj-agegate__box{padding:36px 20px 30px}
  .qj-agegate__box h2{font-size:1.32rem;letter-spacing:.05em;line-height:1.25}
  .qj-agegate__box p{font-size:.86rem;line-height:1.65;margin-bottom:22px}
  .qj-agegate__actions{flex-direction:column;gap:10px}
  .qj-agegate__actions button{min-width:0;width:100%;white-space:normal;font-size:.76rem;letter-spacing:.08em;padding:15px 10px}
  .qj-section-light,.qj-section-dark{padding:64px 20px!important}
  .qj-section-wine{padding:84px 20px!important}
  .qj-max-narrow{padding:0}
  .qj-section-light h1,.qj-section-dark h1,.qj-section-wine h1{font-size:1.9rem;line-height:1.18}
  .qj-section-light h2,.qj-section-dark h2,.qj-section-wine h2,.qj-story__body h2{font-size:1.5rem;line-height:1.22}
  .qj-display{font-size:1.65rem!important}
  .qj-eyebrow{font-size:.66rem;letter-spacing:.2em}
  .qj-button-primary,.qj-button-outline{white-space:normal;max-width:100%;font-size:.78rem;padding:14px 22px;line-height:1.4}
  .qj-story{gap:22px;padding:0}
  .qj-story__media::after{inset:8px}
  .qj-story__media img{border-radius:12px}
  .qj-pair{gap:22px}
  .woocommerce-account .col2-set form.login,.woocommerce-account .col2-set form.register{height:auto;padding:26px 18px}
  .woocommerce-account .col2-set h2{font-size:1.3rem;margin-bottom:10px}
  .qj-tabbar span{font-size:.56rem;letter-spacing:.02em}
}


/* ============================================================
   v3.1 — POLIMENTO MOBILE GLOBAL (age gate, respiro, botões, conta)
   ============================================================ */
@media(max-width:767px){
  /* Age gate */
  .qj-agegate{padding:18px}
  .qj-agegate__box{padding:36px 20px 30px}
  .qj-agegate__box h2{font-size:1.32rem;letter-spacing:.05em;line-height:1.25}
  .qj-agegate__box p{font-size:.86rem;line-height:1.65;margin-bottom:22px}
  .qj-agegate__actions{flex-direction:column;gap:10px}
  .qj-agegate__actions button{min-width:0;width:100%;white-space:normal;font-size:.76rem;letter-spacing:.08em;padding:15px 10px}

  /* Respiro consistente das seções */
  .qj-section-light,.qj-section-dark{padding:64px 20px!important}
  .qj-section-wine{padding:84px 20px!important}
  .qj-max-narrow{padding:0}

  /* Tipografia das seções */
  .qj-section-light h1,.qj-section-dark h1,.qj-section-wine h1{font-size:1.9rem;line-height:1.18}
  .qj-section-light h2,.qj-section-dark h2,.qj-section-wine h2,.qj-story__body h2{font-size:1.5rem;line-height:1.22}
  .qj-display{font-size:1.65rem!important}
  .qj-eyebrow{font-size:.66rem;letter-spacing:.2em}

  /* Botões nunca estouram */
  .qj-button-primary,.qj-button-outline{white-space:normal;max-width:100%;font-size:.78rem;padding:14px 22px;line-height:1.4}

  /* Blocos editoriais */
  .qj-story{gap:22px;padding:0}
  .qj-story__media::after{inset:8px}
  .qj-story__media img{border-radius:12px}
  .qj-pair{gap:22px}

  /* Minha conta */
  .woocommerce-account .col2-set form.login,.woocommerce-account .col2-set form.register{height:auto;padding:26px 18px}
  .woocommerce-account .col2-set h2{font-size:1.3rem;margin-bottom:10px}

  /* Tab bar: rótulos sempre cabem */
  .qj-tabbar span{font-size:.56rem;letter-spacing:.02em}
}
