/* Editora Visionária — acabamentos finais de produção. */
@media (max-width:767px){
  html body .elementor-128 .elementor-element.elementor-element-209daa39{
    background:#0B1424!important;
    background-color:#0B1424!important;
    border:1px solid rgba(198,161,91,.55)!important;
  }
  html body .elementor-128 .elementor-element.elementor-element-5c5bf5d3:has(.elementor-menu-toggle.elementor-active) .elementor-element.elementor-element-209daa39{
    background:#0B1424!important;
    background-color:#0B1424!important;
  }
  html body .elementor-128 .elementor-element.elementor-element-209daa39 .elementor-element-74e2769b a,
  html body .elementor-128 .elementor-element.elementor-element-209daa39 .elementor-element-74e2769b a::after{
    color:#FFFAF0!important;
  }
  html body .elementor-128 .elementor-element.elementor-element-209daa39 .elementor-element-74e2769b svg{
    color:#C6A15B!important;
    fill:#C6A15B!important;
  }
}

.ev-shipping-calculator{
  margin:24px 0 4px;
  padding:22px 0;
  border-top:1px solid #DED5C8;
  border-bottom:1px solid #DED5C8;
}
.ev-shipping-calculator h2{
  margin:0 0 6px;
  color:#0B1424;
  font-family:"Cinzel",serif;
  font-size:18px;
  line-height:1.3;
}
.ev-shipping-intro{
  margin:0 0 14px;
  color:#514A43;
  font-size:14px;
  line-height:1.5;
}
.ev-shipping-form label{
  display:block;
  margin-bottom:6px;
  color:#0B1424;
  font-size:13px;
  font-weight:700;
}
.ev-shipping-fields{
  display:flex;
  align-items:stretch;
  gap:8px;
}
.ev-shipping-fields input{
  width:min(190px,100%);
  min-height:46px;
  padding:10px 12px;
  border:1px solid #BEB3A4;
  border-radius:0;
  background:#FFFDF9;
  color:#0B1424;
}
.ev-shipping-fields button{
  min-height:46px;
  padding:10px 18px;
  border:1px solid #0B1424;
  border-radius:0;
  background:#0B1424;
  color:#FFFAF0;
  font-weight:700;
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease;
}
.ev-shipping-fields button:hover,
.ev-shipping-fields button:focus-visible{
  background:#C6A15B;
  color:#0B1424;
}
.ev-shipping-fields input:focus-visible,
.ev-shipping-fields button:focus-visible{
  outline:3px solid rgba(198,161,91,.45);
  outline-offset:2px;
}
.ev-shipping-fields button[disabled]{
  cursor:progress;
  opacity:.65;
}
.ev-shipping-result{
  min-height:0;
  margin-top:12px;
  color:#0B1424;
  font-size:14px;
  line-height:1.55;
}
.ev-shipping-result.is-success{
  padding-left:12px;
  border-left:3px solid #C6A15B;
}
.ev-shipping-result.is-error{
  color:#8A2E2E;
}
.ev-shipping-result strong{font-weight:800}
.ev-shipping-note{display:block;margin-top:4px;color:#6B6258;font-size:12px}
@media(max-width:480px){
  .ev-shipping-fields{display:grid;grid-template-columns:minmax(0,1fr) auto}
  .ev-shipping-fields input{width:100%;min-width:0}
}

/* Cadastro PF/PJ e identificação fiscal. */
.ev-registration-page,
.ev-registration-status{
  width:min(1120px,calc(100% - 40px));
  margin:56px auto 72px;
}
.ev-registration-header{
  max-width:720px;
  margin-bottom:30px;
}
.ev-registration-kicker,
.ev-cart-fiscal-kicker{
  margin:0 0 7px;
  color:#8A6A2F;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ev-registration-header h1,
.ev-registration-status h1{
  margin:0 0 10px;
  color:#0B1424;
}
.ev-registration-page .woocommerce{
  max-width:760px;
}
.ev-registration-page .u-column1{
  display:none!important;
}
.ev-registration-page .u-column2{
  float:none!important;
  width:100%!important;
  padding:30px;
  border:1px solid #DED5C8;
  background:#FFFDF9;
}
.ev-registration-page .woocommerce-form-register{
  margin:0;
  padding:0;
  border:0;
}
.ev-fiscal-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 16px;
  margin:16px 0 8px;
}
.ev-fiscal-fields>.form-row,
.ev-fiscal-fields>[data-ev-person-section]{
  min-width:0;
}
.ev-fiscal-fields>.form-row:first-child{
  grid-column:1/-1;
}
.ev-fiscal-fields [data-ev-person-section][hidden]{
  display:none!important;
}
.ev-fiscal-fields .form-row{
  margin:0 0 14px;
}
.ev-fiscal-fields input,
.ev-fiscal-fields select{
  width:100%;
  min-height:48px;
  border:1px solid #BEB3A4;
  border-radius:0;
  background:#FFF;
  color:#0B1424;
}
.ev-account-fiscal-fields{
  margin:28px 0;
  padding:22px;
  border:1px solid #DED5C8;
}
.ev-account-fiscal-fields legend{
  padding:0 8px;
  color:#0B1424;
  font-family:"Cinzel",serif;
  font-weight:700;
}
.ev-account-fiscal-note{
  margin:0 0 8px;
  color:#625A51;
  font-size:14px;
}

/* Carrinho: dados fiscais e orçamento B2B. */
.ev-cart-fiscal{
  display:grid;
  grid-template-columns:minmax(220px,.7fr) minmax(340px,1fr);
  gap:30px;
  width:min(1180px,calc(100% - 40px));
  margin:42px auto 26px;
  padding:28px;
  border:1px solid #DED5C8;
  background:#FFFDF9;
}
.ev-cart-fiscal-copy h2{
  margin:0 0 8px;
  color:#0B1424;
  font-size:25px;
}
.ev-cart-fiscal-copy p:last-child{
  margin:0;
  color:#625A51;
}
.ev-cart-fiscal-form .ev-fiscal-fields{
  margin-top:0;
}
.ev-save-fiscal,
.ev-whatsapp-quote,
.ev-business-account .button{
  min-height:46px;
  padding:12px 18px!important;
  border:1px solid #0B1424!important;
  border-radius:0!important;
  background:#0B1424!important;
  color:#FFFAF0!important;
  font-weight:800!important;
  text-decoration:none!important;
}
.ev-save-fiscal:hover,
.ev-save-fiscal:focus-visible,
.ev-business-account .button:hover,
.ev-business-account .button:focus-visible{
  border-color:#C6A15B!important;
  background:#C6A15B!important;
  color:#0B1424!important;
}
.ev-business-quote{
  grid-column:1/-1;
  margin-top:6px;
  padding:20px;
  border-left:4px solid #25D366;
  background:#F4FBF6;
}
.ev-business-quote h3{margin:0 0 5px;color:#0B1424}
.ev-business-quote p{margin:0 0 14px;color:#514A43}
.ev-whatsapp-quote{
  display:inline-flex!important;
  align-items:center;
  border-color:#176B3A!important;
  background:#176B3A!important;
}
.ev-whatsapp-quote:hover,
.ev-whatsapp-quote:focus-visible{
  border-color:#0F512B!important;
  background:#0F512B!important;
  color:#FFF!important;
}
.ev-business-account{
  margin:28px 0;
  padding:24px;
  border-left:4px solid #C6A15B;
  background:#FAF7F0;
}
.ev-business-account h2{margin-top:0;color:#0B1424}
.ev-order-type{
  display:inline-block;
  padding:4px 8px;
  border:1px solid #BEB3A4;
  color:#0B1424;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.ev-order-type-pj{
  border-color:#C6A15B;
  background:#F7F0DF;
}

/* Contraste consistente no carrinho, minicarrinho e checkout. */
.wp-block-woocommerce-cart .wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.elementor-menu-cart__footer-buttons .elementor-button,
.elementor-menu-cart__footer-buttons .elementor-button--view-cart,
.elementor-menu-cart__footer-buttons .elementor-button--checkout{
  border:1px solid #0B1424!important;
  background:#0B1424!important;
  color:#FFFAF0!important;
  text-decoration:none!important;
}
.wp-block-woocommerce-cart .wc-block-cart__submit-button:hover,
.wp-block-woocommerce-cart .wc-block-cart__submit-button:focus-visible,
.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:focus-visible,
.elementor-menu-cart__footer-buttons .elementor-button:hover,
.elementor-menu-cart__footer-buttons .elementor-button:focus-visible{
  border-color:#C6A15B!important;
  background:#C6A15B!important;
  color:#0B1424!important;
}
.wp-block-woocommerce-cart .wc-block-cart__submit-button:focus-visible,
.wc-block-components-checkout-place-order-button:focus-visible,
.elementor-menu-cart__footer-buttons .elementor-button:focus-visible,
.ev-save-fiscal:focus-visible,
.ev-whatsapp-quote:focus-visible{
  outline:3px solid rgba(198,161,91,.5)!important;
  outline-offset:3px;
}

/* Recomendações exibidas quando o carrinho está vazio. */
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link{
  border:1px solid #0B1424!important;
  background:#0B1424!important;
  color:#FFFAF0!important;
  font-weight:700!important;
  text-decoration:none!important;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible{
  border-color:#C6A15B!important;
  background:#C6A15B!important;
  color:#0B1424!important;
}
.wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart .wp-block-button__link:focus-visible{
  outline:3px solid rgba(198,161,91,.5)!important;
  outline-offset:3px;
}

/* Campos do Checkout Blocks: reserva espaço real para o rótulo flutuante. */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-combobox .wc-block-components-combobox-control input,
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__select{
  min-height:56px!important;
  padding:25px 42px 8px 12px!important;
  line-height:1.25!important;
  color:#0B1424!important;
}
.wc-block-checkout .wc-block-components-text-input label,
.wc-block-checkout .wc-block-components-combobox .wc-block-components-combobox-control label,
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__label{
  top:7px!important;
  left:10px!important;
  transform:none!important;
  max-width:calc(100% - 52px);
  margin:0!important;
  padding:0 2px!important;
  background:#FFF!important;
  color:#514A43!important;
  font-size:12px!important;
  line-height:1.25!important;
  white-space:nowrap;
  z-index:2!important;
}
.wc-block-checkout .wc-block-components-text-input.is-active label,
.wc-block-checkout .wc-block-components-text-input.has-error label{
  transform:none!important;
}
.wc-block-checkout .wc-blocks-components-select .wc-blocks-components-select__expand{
  right:12px!important;
}

/*
 * Controles de escolha do Checkout Blocks.
 * O CSS do gateway aplica padding de campo de texto a todos os inputs e faz
 * rádio/checkbox avançarem sobre o rótulo. Mantemos o controle visual em
 * 18px; a linha completa do WooCommerce continua sendo a área clicável.
 */
.wc-block-checkout .wc-block-components-radio-control__input,
.wc-block-checkout .wc-block-components-checkbox__input{
  box-sizing:border-box!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  padding:0!important;
  margin:0!important;
}

/* Rodapé: contatos e perfil da editora/autora. */
.ev-footer-contact-links{
  display:grid;
  gap:7px;
  margin:16px 0 20px!important;
}
.ev-footer-contact-links a{
  color:#E9E1D2!important;
  overflow-wrap:anywhere;
  text-decoration:none;
}
.ev-footer-contact-links a:hover,
.ev-footer-contact-links a:focus-visible{color:#C6A15B!important}
.ev-footer-editor{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:12px;
  align-items:center;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(198,161,91,.35);
}
.ev-footer-editor-photo{
  width:72px!important;
  height:72px!important;
  margin:0!important;
  border:2px solid #C6A15B;
  border-radius:50%!important;
  object-fit:cover;
  object-position:15% center;
}
.ev-footer-editor-role{
  display:block;
  color:#C6A15B;
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ev-footer-editor strong{
  display:block;
  margin:2px 0 7px;
  color:#FFF9ED;
  font-size:14px;
}
.ev-footer-socials{display:flex;gap:8px}
.ev-footer-socials a{
  display:inline-flex;
  width:32px;
  height:32px;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(198,161,91,.65);
  border-radius:50%;
  color:#FFF9ED!important;
  text-decoration:none;
}
.ev-footer-socials a:hover,
.ev-footer-socials a:focus-visible{
  background:#C6A15B;
  color:#0B1424!important;
}

/* Atendimento flutuante. */
.ev-floating-whatsapp{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:9997;
  display:inline-flex;
  min-height:54px;
  align-items:center;
  gap:9px;
  padding:11px 16px;
  border:2px solid #FFF;
  border-radius:999px;
  background:#176B3A;
  color:#FFF!important;
  box-shadow:0 8px 26px rgba(0,0,0,.24);
  font-size:14px;
  font-weight:800;
  text-decoration:none!important;
}
.ev-floating-whatsapp svg{
  width:27px;
  height:27px;
  fill:currentColor;
}
.ev-floating-whatsapp:hover,
.ev-floating-whatsapp:focus-visible{
  background:#0F512B;
  color:#FFF!important;
  transform:translateY(-2px);
}
.ev-floating-whatsapp:focus-visible{
  outline:3px solid #C6A15B;
  outline-offset:3px;
}

@media(max-width:767px){
  .ev-registration-page,
  .ev-registration-status,
  .ev-cart-fiscal{width:min(100% - 24px,1180px);margin-top:28px}
  .ev-registration-page .u-column2{padding:20px 16px}
  .ev-fiscal-fields,
  .ev-cart-fiscal{grid-template-columns:1fr}
  .ev-cart-fiscal{gap:20px;padding:20px 16px}
  .ev-business-quote{grid-column:auto}
  .wp-block-woocommerce-cart .wc-block-cart__submit-button{min-height:52px!important}
  .ev-floating-whatsapp{right:12px;bottom:12px;width:54px;height:54px;padding:11px}
  .ev-floating-whatsapp span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
}
