/* ============================================================
   Santa Cannabis: ponte entre o design system e os blocos.

   O santa.css é o design system aprovado (gerado do styles.css).
   Aqui fica só o que muda porque a marcação agora vem dos blocos
   do core e do WooCommerce: invólucros, navegação, busca, listas,
   cartões de post e de produto, carrinho, checkout e a Minha conta.
   Escrito à mão; o scripts/tema.py não toca neste arquivo.
   ============================================================ */


/* ---------- 1. Invólucros dos blocos ---------- */

.wp-site-blocks { padding: 0; }
:where(.wp-site-blocks) > * { margin-block: 0; }
:where(.wp-block-group, .wp-block-image, .wp-block-buttons, .wp-block-list, .wp-block-quote, .wp-block-details, .wp-block-query) { margin-block: 0; }
figure.wp-block-image { margin: 0; }
.wp-block-image img { height: auto; }
.wp-block-image a { display: contents; }

/* Parágrafos que eram <span> no design system não ganham o respiro de "p + p"
   (o santa.css já gera p:not(.sc-p) + p:not(.sc-p)). */

/* Lista que virou grupo (passos, linha do tempo): sem marcador e sem recuo */
.sc-list { list-style: none; margin: 0; padding: 0; }

/* A última seção da página respira antes do rodapé (no design system: main > seção) */
.wp-block-post-content > .sc-section--tight:last-child,
.wp-block-post-content > .sc-page-hero:last-child,
.wp-block-post-content > .sc-hero:last-child { padding-bottom: var(--section); }

/* Cartão inteiro clicável: o link fica no título e se estica sobre o cartão */
.sc-has-stretch { position: relative; }
.sc-stretch, .sc-stretch:hover, .sc-stretch:focus { color: inherit; text-decoration: none; }
.sc-stretch::after { content: ""; position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.sc-stretch:focus-visible { outline: none; }
.sc-has-stretch:has(.sc-stretch:focus-visible) { outline: 3px solid var(--purple); outline-offset: 3px; }

/* Ícone que era <span> com SVG: o tamanho segue o do design system */
.sc-feature__icon.sc-io::before, .sc-step__icon.sc-io::before, .sc-links__ico.sc-io::before { width: 22px; height: 22px; }

/* Imagens dentro dos componentes ocupam a moldura como antes */
.sc-photo.wp-block-image, .sc-product__media .wp-block-image, .sc-post__media.wp-block-image { margin: 0; }
.sc-photo.wp-block-image img { height: 100%; }
.sc-category__media .wp-block-image, .sc-post__media .wp-block-image { height: 100%; margin: 0; }
.sc-category__media .wp-block-image img, .sc-post__media .wp-block-image img { width: 100%; height: 100%; object-fit: cover; }


/* ---------- 2. Cabeçalho ---------- */

/* O template part <header> envolve a faixa e a barra. Ele gruda no topo e a faixa sai de cena:
   o JS mede a faixa (--topbar-h). Com a barra do WordPress, desce a altura dela. */
header.wp-block-template-part {
  position: sticky; z-index: 50;
  top: calc(var(--wp-admin--admin-bar--height, 0px) - var(--topbar-h, 36px));
}
.sc-header { position: relative; top: auto; }
.sc-topbar p { margin: 0; }
.sc-topbar .sc-container { flex-wrap: wrap; column-gap: var(--s-5); row-gap: 0; padding-block: .35em; }
.sc-logo.wp-block-image img { width: 156px; height: auto; }
@media (max-width: 520px) { .sc-logo.wp-block-image img { width: 132px; } }

/* Navegação do core no lugar do menu do design system */
.sc-header__bar > .sc-logo { order: 1; }
.sc-header__bar > .sc-header__actions { order: 2; }
.sc-header__bar > .sc-nav { order: 3; }
.sc-nav.wp-block-navigation { display: flex; gap: 0; }
.sc-nav .wp-block-navigation__container { gap: var(--s-1); }
.sc-nav .wp-block-navigation-item__content { display: inline-flex; align-items: center; min-height: 40px; padding: 0 .85em; border-radius: var(--r-btn); color: var(--ink); text-decoration: none; font-size: var(--text-sm); font-weight: 500; }
.sc-nav .wp-block-navigation-item__content:hover { background: #F2F3F7; color: var(--ink); }
.sc-nav .current-menu-item > .wp-block-navigation-item__content { color: var(--purple); }
.sc-nav .sc-nav__portal { display: none; }

/* Botão de abrir o menu: o mesmo desenho do .sc-icon-btn */
.sc-nav .wp-block-navigation__responsive-container-open,
.sc-nav .wp-block-navigation__responsive-container-close {
  width: 44px; height: 44px; display: inline-grid; place-items: center;
  border: 1px solid var(--line); border-radius: 14px; background: var(--white); color: var(--ink);
}
.sc-nav .wp-block-navigation__responsive-container-close { position: absolute; top: var(--s-4); right: var(--gutter); left: auto; }
.sc-nav .wp-block-navigation__responsive-container-open svg,
.sc-nav .wp-block-navigation__responsive-container-close svg { width: 22px; height: 22px; }

@media (max-width: 1099px) {
  .sc-header__bar { gap: var(--s-2); }
  .sc-header__bar > .sc-header__actions { margin-left: auto; }
  .sc-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: inline-grid; }
  .sc-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
@media (min-width: 1100px) {
  .sc-header__bar > .sc-nav { order: 2; margin-left: var(--s-5); }
  .sc-header__bar > .sc-header__actions { order: 3; margin-left: auto; }
  .sc-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; }
  .sc-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: block; position: relative; background: transparent; padding: 0; z-index: auto; }
}

/* Menu aberto no celular: tela cheia, como o painel do design system */
.sc-nav .wp-block-navigation__responsive-container.is-menu-open {
  padding: var(--s-4) var(--gutter) var(--s-6); background: var(--white); color: var(--ink);
}
.sc-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: var(--s-6); align-items: stretch; }
.sc-nav .is-menu-open .wp-block-navigation__container { flex-direction: column; align-items: stretch; gap: 0; width: 100%; }
.sc-nav .is-menu-open .wp-block-navigation-item { width: 100%; }
.sc-nav .is-menu-open .wp-block-navigation-item__content {
  width: 100%; justify-content: space-between; min-height: 0; padding: var(--s-4) 0; border-radius: 0;
  border-bottom: 1px solid var(--line); font-size: var(--text-2xl); font-weight: 400; letter-spacing: -0.03em;
}
.sc-nav .is-menu-open .wp-block-navigation-item__content:hover { background: transparent; color: var(--purple-700); }
.sc-nav .is-menu-open .sc-nav__portal { display: block; margin-top: var(--s-3); }
.sc-nav .is-menu-open .sc-nav__portal .wp-block-navigation-item__content {
  justify-content: center; min-height: 52px; padding: .8em 1.4em; border: 1px solid var(--line-strong); border-radius: var(--r-btn);
  font-size: var(--text-base); font-weight: 500; letter-spacing: 0;
}
.sc-nav .is-menu-open .sc-nav__portal--cheio .wp-block-navigation-item__content { background: var(--ink); border-color: var(--ink); color: var(--white); }
.sc-nav .is-menu-open .sc-nav__portal--cheio .wp-block-navigation-item__content:hover { background: #1E2134; color: var(--white); }

/* Ações do cabeçalho */
.sc-header__buttons { gap: var(--s-2); flex-wrap: nowrap; }
.sc-minicart .wc-block-mini-cart__button {
  width: 44px; height: 44px; padding: 0; display: inline-grid; place-items: center;
  border: 1px solid var(--line); border-radius: 14px; background: var(--white); color: var(--ink);
}
.sc-minicart .wc-block-mini-cart__button:hover { border-color: var(--ink); }
.sc-minicart .wc-block-mini-cart__badge { background: var(--purple); color: var(--white); font-size: 11px; }

/* WhatsApp flutuante some no checkout, onde cobriria campos no celular */
body.woocommerce-checkout .sc-whats { display: none; }


/* ---------- 3. Rodapé ---------- */

footer.wp-block-template-part, .sc-footer { margin: 0; }
.sc-footer__grid > div > .wp-block-heading { font-size: var(--text-xs); text-transform: uppercase; letter-spacing: .14em; font-weight: 500; color: var(--ink-mute); margin-bottom: var(--s-4); }
.sc-footer .wp-block-list { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--s-2); }
.sc-footer__about p { margin-top: var(--s-5); }
.sc-footer ul.sc-footer__social.wp-block-social-links { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-5) 0 0; padding: 0; }
.sc-footer__social .wp-social-link { margin: 0; border-radius: 14px; background: var(--white) !important; color: var(--ink) !important; border: 1px solid var(--line); }
.sc-footer__social .wp-social-link a { width: 44px; height: 44px; padding: 0; display: grid; place-items: center; }
.sc-footer__social .wp-social-link svg { width: 22px; height: 22px; fill: currentColor; }
.sc-footer__social .wp-social-link:hover { border-color: var(--ink); transform: none; }
.sc-footer__wordmark.wp-block-image { margin-top: var(--s-9); }
.sc-footer__wordmark.wp-block-image img { width: 100%; height: auto; }
.sc-footer__legal p { margin: 0; }


/* ---------- 4. Busca, editorias e paginação ---------- */

.sc-search.wp-block-search .wp-block-search__inside-wrapper { position: relative; border: 0; padding: 0; }
.sc-search.wp-block-search .wp-block-search__inside-wrapper::before {
  content: ""; position: absolute; left: 1em; top: 50%; width: 1.2em; height: 1.2em; transform: translateY(-50%); color: var(--ink-mute);
  background: currentColor; -webkit-mask: var(--ico) center / contain no-repeat; mask: var(--ico) center / contain no-repeat;
}
.sc-search.wp-block-search { --ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E"); min-width: min(100%, 340px); }
.sc-search .wp-block-search__input {
  width: 100%; min-height: 52px; padding: .8em 1em .8em 2.8em; margin: 0;
  border: 1px solid var(--line-strong); border-radius: var(--r-full); background: var(--white);
  font: 400 var(--text-base)/1.4 var(--font-sans); color: var(--ink);
}
.sc-search .wp-block-search__input:focus { outline: none; border-color: var(--purple); box-shadow: 0 0 0 4px var(--purple-20); }

/* Editorias do blog e categorias da loja em pílulas */
.sc-cat-pills, .sc-cat-pills .wp-block-categories { display: flex; flex-wrap: wrap; gap: var(--s-2); list-style: none; margin: 0; padding: 0; }
.sc-cat-pills { margin-top: var(--s-6); }
.sc-cat-pills a {
  display: inline-flex; align-items: center; min-height: 40px; padding: .5em 1.1em;
  border: 1px solid var(--line); border-radius: var(--r-full); background: var(--white);
  color: var(--ink); font-size: var(--text-sm); font-weight: 500; text-decoration: none;
}
.sc-cat-pills a:hover { border-color: var(--ink); }
.sc-cat-pills .current-cat > a { background: var(--ink); border-color: var(--ink); color: var(--white); }
.sc-blog-list { padding-top: 0; }

.sc-pagination { gap: var(--s-2); margin-top: var(--s-8); }
.sc-pagination :is(.page-numbers, .wp-block-query-pagination-previous, .wp-block-query-pagination-next) {
  display: inline-flex; align-items: center; min-height: 40px; min-width: 40px; justify-content: center; padding: .5em 1.1em;
  border: 1px solid var(--line); border-radius: var(--r-full); color: var(--ink); font-size: var(--text-sm); font-weight: 500; text-decoration: none;
}
.sc-pagination .page-numbers.current { background: var(--ink); border-color: var(--ink); color: var(--white); }
.sc-pagination a:hover { border-color: var(--ink); }


/* ---------- 5. Posts ---------- */

.wp-block-post-template.sc-grid { list-style: none; margin: 0; padding: 0; row-gap: var(--s-8); }
.wp-block-post-template.sc-grid > li { margin: 0; }
.sc-post .sc-post__media { margin: 0; aspect-ratio: 3 / 2; }
.sc-post .sc-post__media img { width: 100%; height: 100% !important; object-fit: cover; }
.sc-post__meta { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-3); font-size: var(--text-sm); color: var(--ink-mute); }
.sc-post__meta .sc-tag a { color: inherit; text-decoration: none; position: relative; z-index: 2; }
.sc-post .wp-block-post-title { font-size: var(--text-xl); letter-spacing: -0.025em; }
.sc-post .wp-block-post-title a { color: var(--ink); text-decoration: none; }
.sc-post .wp-block-post-title a::after { content: ""; position: absolute; inset: 0; }

/* Artigo */
.sc-article__head { padding-bottom: var(--s-7); }
.sc-article__tag { justify-self: start; }
.sc-article__tag a { color: inherit; text-decoration: none; }
.sc-article__title { font-size: clamp(2.25rem, 5.5vw, var(--text-4xl)); }
.sc-article__author { padding-top: var(--s-4); border-top: 1px solid var(--line); }
.sc-article__by { font-weight: 500; }
.sc-article__byline .sc-muted { font-size: var(--text-sm); }
.sc-article__cover { margin: 0; border-radius: var(--r-panel); aspect-ratio: 21 / 9; }
@media (max-width: 700px) { .sc-article__cover { aspect-ratio: 4 / 3; } }
.sc-article__cover img { width: 100%; height: 100% !important; object-fit: cover; }
.sc-page-body { padding-top: 0; }


/* ---------- 6. Estilos de bloco (painel do editor) ---------- */

.is-style-faixa-nevoa { background: #F5F6F9; }
.is-style-faixa-noite { background: var(--night); color: var(--white); }
.is-style-painel-verde, .is-style-painel-azul, .is-style-painel-roxo { border-radius: var(--r-panel); padding: clamp(1.5rem, 5vw, 4rem); }
.is-style-painel-verde { background: var(--green-10); }
.is-style-painel-azul { background: var(--blue-20); }
.is-style-painel-roxo { background: var(--purple-10); }
.is-style-gradiente { background: url('../img/gradiente-01.webp') center / cover var(--blue); color: var(--ink); box-shadow: inset 0 0 0 100vmax rgba(255, 255, 255, .45); position: relative; isolation: isolate; }
.is-style-gradiente::after { content: ""; position: absolute; inset: 0; z-index: -1; background-image: var(--grain); background-size: 220px; mix-blend-mode: overlay; opacity: .6; pointer-events: none; }
p.is-style-sobrelinha { display: inline-flex; align-items: center; gap: .6em; font-size: var(--text-xs); font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--ink-soft); }
p.is-style-abertura { font-size: var(--text-lg); line-height: 1.5; color: var(--ink-soft); max-width: 60ch; }
.wp-block-button.is-style-contorno > .wp-block-button__link { --btn-bg: var(--white); --btn-fg: var(--ink); --btn-bd: var(--line-strong); }
.wp-block-button.is-style-roxo > .wp-block-button__link { --btn-bg: var(--purple); --btn-fg: var(--white); --btn-bd: var(--purple); }
.wp-block-button.is-style-roxo > .wp-block-button__link:hover { --btn-bg: var(--purple-700); --btn-bd: var(--purple-700); }


/* ---------- 7. Loja (WooCommerce) ---------- */

.santa-loja-aviso {
  position: relative; z-index: 60; padding: .6em var(--gutter); text-align: center;
  background: #FFF4D6; color: #5C3D00; font-size: var(--text-sm);
}
.santa-loja-aviso a { color: inherit; font-weight: 500; }

/* Grade e cartões de produto */
.sc-shop-filters { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-4); margin-bottom: var(--s-7); }
.sc-shop-filters .sc-cat-pills { margin: 0; }
.sc-shop-filters .wc-block-catalog-sorting select, .woocommerce-ordering select {
  min-height: 44px; padding: .5em 2.4em .5em 1em; border: 1px solid var(--line-strong); border-radius: var(--r-full); background-color: var(--white);
  font: 500 var(--text-sm)/1.2 var(--font-sans); color: var(--ink);
}
.sc-product .sc-product__media { margin: 0; aspect-ratio: 1; }
.sc-product .sc-product__media img { width: 100%; height: 100% !important; object-fit: contain; padding: 8%; }
.sc-product .sc-product__name, .sc-product .wp-block-post-title { margin: 0; font-size: var(--text-base); font-weight: 500; letter-spacing: -0.01em; }
.sc-product .wp-block-post-title a { color: var(--ink); text-decoration: none; }
.sc-product .wp-block-post-title a:hover { text-decoration: underline; text-underline-offset: .2em; }
.sc-product .sc-product__price, .sc-product .wc-block-components-product-price { margin: 0; text-align: left; font-size: var(--text-sm); color: var(--ink-soft); }

.wp-block-woocommerce-breadcrumbs.sc-breadcrumb { display: block; max-width: none; margin-inline: 0; font-size: var(--text-sm); color: var(--ink-mute); }
.wp-block-woocommerce-breadcrumbs.sc-breadcrumb a { color: var(--ink-soft); }
.sc-page-hero__inner > .wp-block-woocommerce-breadcrumbs { margin-bottom: var(--s-2); }

/* Produto */
.sc-product-page__grid { align-items: start; }
.sc-product-page__title { font-size: clamp(2rem, 4vw, var(--text-3xl)); }
.sc-product-page__price, .sc-product-page__price .amount { font-size: var(--text-3xl); font-weight: 400; color: var(--ink); }
.sc-product-page__gallery .woocommerce-product-gallery__image img { border-radius: var(--r-panel); background: #F3F4F7; }
.sc-product-page .sc-tag a { color: inherit; text-decoration: none; }
.sc-product-content > * { max-width: none; }

/* Botões do WooCommerce com o desenho do .sc-btn */
.wc-block-components-button:not(.is-link), .single_add_to_cart_button, .woocommerce a.button, .woocommerce button.button, .woocommerce-Button {
  display: inline-flex; align-items: center; justify-content: center; gap: .65em; min-height: 48px; padding: .8em 1.4em;
  border: 1px solid var(--ink); border-radius: var(--r-btn); background: var(--ink); color: var(--white);
  font: 500 var(--text-base)/1.1 var(--font-sans); text-decoration: none; cursor: pointer;
  transition: background var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.wc-block-components-button:not(.is-link):hover, .single_add_to_cart_button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover { background: #1E2134; border-color: #1E2134; color: var(--white); }
.single_add_to_cart_button, .wc-block-components-checkout-place-order-button, .wc-block-cart__submit-button { background: var(--purple); border-color: var(--purple); }
.single_add_to_cart_button:hover, .wc-block-components-checkout-place-order-button:hover, .wc-block-cart__submit-button:hover { background: var(--purple-700); border-color: var(--purple-700); }

/* Campos do carrinho, do checkout e da conta com o desenho do .sc-input */
.wc-block-components-text-input input, .wc-block-components-combobox .components-combobox-control input,
.wc-blocks-components-select__select, .wc-block-components-textarea, .woocommerce form .input-text, .woocommerce form select {
  min-height: 52px; border: 1px solid var(--line-strong) !important; border-radius: var(--r-btn) !important; background: var(--white) !important;
  font-family: var(--font-sans) !important; color: var(--ink) !important;
}
.wc-block-components-text-input input:focus, .woocommerce form .input-text:focus { border-color: var(--purple) !important; box-shadow: 0 0 0 4px var(--purple-20) !important; outline: none; }
.wc-block-components-text-input label, .wc-block-components-combobox label { color: var(--ink-mute); }
.wc-block-components-radio-control__input:checked, .wc-block-components-checkbox__input:checked { background: var(--ink); border-color: var(--ink); }

/* Carrinho e checkout: título, caixas e resumo */
.sc-shop-title__h { font-size: clamp(2rem, 4vw, var(--text-3xl)); margin-bottom: var(--s-6); }
.sc-wc-page .wc-block-components-sidebar .wc-block-components-totals-wrapper,
.sc-wc-page .wp-block-woocommerce-checkout-order-summary-block,
.sc-wc-page .wc-block-cart__sidebar > * { border-color: var(--line); }
.sc-wc-page .wc-block-components-sidebar { background: #F5F6F9; border-radius: var(--r-card); padding: var(--s-5); }
.sc-wc-page .wc-block-components-checkout-step__title, .sc-wc-page .wc-block-cart__totals-title { font-weight: 500; letter-spacing: -0.02em; text-transform: none; }
.sc-wc-page .wc-block-components-product-name { color: var(--ink); font-weight: 500; text-decoration: none; }
.sc-wc-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value { font-size: var(--text-xl); }

/* Minha conta (tela clássica com o menu) */
.sc-wc-account .woocommerce { display: grid; gap: var(--s-7); }
@media (min-width: 960px) { .sc-wc-account .woocommerce { grid-template-columns: 260px minmax(0, 1fr); align-items: start; } }
.sc-wc-account .woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: var(--s-3); border: 1px solid var(--line); border-radius: var(--r-card); display: grid; gap: 2px; }
.sc-wc-account .woocommerce-MyAccount-navigation a { display: block; padding: .7em 1em; border-radius: var(--r-sm); color: var(--ink); text-decoration: none; font-size: var(--text-sm); font-weight: 500; }
.sc-wc-account .woocommerce-MyAccount-navigation a:hover { background: #F2F3F7; }
.sc-wc-account .woocommerce-MyAccount-navigation .is-active a { background: var(--ink); color: var(--white); }
.sc-wc-account .woocommerce-MyAccount-navigation, .sc-wc-account .woocommerce-MyAccount-content { float: none !important; width: auto !important; margin: 0 !important; }
.sc-wc-account .woocommerce-MyAccount-content { min-width: 0; }
.sc-wc-account .woocommerce::before, .sc-wc-account .woocommerce::after { display: none; }
.sc-wc-account table { width: 100%; border-collapse: collapse; font-size: var(--text-sm); }
.sc-wc-account th, .sc-wc-account td { padding: .8em .6em; border-bottom: 1px solid var(--line); text-align: left; }
.sc-wc-account .woocommerce-form-login, .sc-wc-account .woocommerce-form-register { display: grid; gap: var(--s-4); padding: var(--s-6); border: 1px solid var(--line); border-radius: var(--r-card); }
.sc-wc-account .u-columns { display: grid; gap: var(--s-6); }
@media (min-width: 900px) { .sc-wc-account .u-columns { grid-template-columns: 1fr 1fr; } }
.sc-wc-account .woocommerce .u-columns, .sc-wc-account .woocommerce > .woocommerce-notices-wrapper { grid-column: 1 / -1; }

/* Avisos do WooCommerce */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .wc-block-components-notice-banner {
  border-radius: var(--r-card) !important; border: 1px solid var(--line) !important; background: var(--blue-10) !important; color: var(--ink) !important;
}

/* Pedido recebido */
.sc-order { display: grid; gap: var(--s-7); }
.sc-order .wp-block-columns { gap: var(--s-7); }
.sc-order .sc-summary { background: #F5F6F9; border-radius: var(--r-card); padding: var(--s-6); }
.wc-block-order-confirmation-summary { border: 1px solid var(--line); border-radius: var(--r-card); padding: var(--s-5); margin-top: var(--s-6); background: rgba(255,255,255,.8); }


/* ---------- 8. Formulários dos plugins ---------- */

/* O shortcode entra dentro da caixa do formulário, como no design system */
.sc-formbox .wp-block-shortcode, .sc-formbox > p:empty { margin: 0; }


/* ---------- 9. Página limpa (links, ExpoTEA) ---------- */

.page-template-page-limpa .wp-site-blocks > main { min-height: 100vh; }


/* ---------- 10. Ícone + texto em parágrafo (eram <span> com SVG) ---------- */

p.sc-ib:not(:has(> a)), p.sc-ia:not(:has(> a)) { display: inline-flex; align-items: center; gap: .5em; }
p.sc-ib:not(:has(> a))::before { margin: 0; }
p.sc-ia:not(:has(> a))::after { margin: 0; }
.sc-hero__facts > p > span { display: inline; }

/* Com a loja oculta, a porta da loja sai e a outra ocupa a linha inteira */
.sc-doors > :only-child { grid-column: 1 / -1; }

/* Botões do cabeçalho: o core dá display ao invólucro, então a regra do design system
   (.sc-header__portal some antes de 1100 px; Associe-se some antes de 520 px) vai no invólucro */
.sc-header__buttons > .sc-header__portal { display: none; }
@media (min-width: 1100px) { .sc-header__buttons > .sc-header__portal { display: inline-block; } }
@media (max-width: 520px) { .sc-header__buttons > .sc-btn--associe { display: none; } }

/* Com o menu aberto, a barra perde o desfoque: backdrop-filter prende o painel fixo dentro dela */
.sc-header:has(.is-menu-open) { -webkit-backdrop-filter: none; backdrop-filter: none; background: var(--white); }
.sc-nav .wp-block-navigation__responsive-container.is-menu-open { z-index: 100; }

/* O CSS do WooCommerce (.woocommerce button.button.alt) é mais forte: o botão de comprar fica roxo */
.woocommerce :is(button, a).button.alt.single_add_to_cart_button, .woocommerce :is(button, a).button.alt { background: var(--purple); border-color: var(--purple); color: var(--white); border-radius: var(--r-btn); min-height: 48px; padding: .8em 1.4em; font-weight: 500; }
.woocommerce :is(button, a).button.alt:hover { background: var(--purple-700); border-color: var(--purple-700); color: var(--white); }
.sc-product-page__gallery .woocommerce-product-gallery__image { background: #F3F4F7; border-radius: var(--r-panel); overflow: hidden; }
.sc-product-page__gallery .woocommerce-product-gallery__image img { mix-blend-mode: multiply; }
.woocommerce .quantity .qty { min-height: 48px; width: 4.5em; border: 1px solid var(--line-strong); border-radius: var(--r-btn); font: 400 var(--text-base) var(--font-sans); color: var(--ink); }
.sc-product-page form.cart { display: flex; gap: var(--s-2); align-items: stretch; }
.sc-wc-account .woocommerce { max-width: none; }
.sc-wc-account .woocommerce-MyAccount-navigation li { padding: 0 !important; margin: 0 !important; border: 0 !important; }
.sc-wc-account .woocommerce-MyAccount-navigation li a { padding: .7em 1em !important; text-decoration: none !important; }
.sc-wc-account .woocommerce-MyAccount-navigation li::before, .sc-wc-account .woocommerce-MyAccount-navigation li a::before, .sc-wc-account .woocommerce-MyAccount-navigation li a::after { display: none !important; }
