/* =================================================================
   STOIKA — Tienda (WooCommerce)
   Mismos tokens, escala y reglas que templates/portada.php.
   Paleta Materia · GFS Didot / Archivo / JetBrains Mono ·
   sin sombras · sin degradados · píldora 1000px · tarjeta 16px · imagen 32px
   Solo se carga en tienda, producto, carrito, checkout y mi cuenta.
   ================================================================= */

:root{
  --ink:#1A1512;        /* Búfalo */
  --carbon:#2E2622;     /* Carbón */
  --bone:#F5F1EA;       /* Hueso — lienzo */
  --stone:#E7E1D6;      /* Piedra */
  --gold:#C49E57;       /* Oro — solo sobre oscuro */
  --gold-deep:#8A6A28;  /* Oro profundo — sobre claro */
  --pewter:#766D65;     /* Ceniza */
  --on-dark:rgba(245,241,234,.66);
  --line:rgba(26,21,18,.13);
  --line-strong:rgba(26,21,18,.28);
  --line-dark:rgba(245,241,234,.15);
  --error:#9A4A2C;      /* Barro: avisos de error sin rojo chillante */
  --max:1200px;
  --pad:24px;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --serif:'GFS Didot',Georgia,serif;
  --sans:'Archivo',-apple-system,'Helvetica Neue',sans-serif;
}

/* ---------------- Base ---------------- */
body.stoika{
  margin:0;background:var(--bone);color:var(--ink);
  font-family:var(--sans);font-weight:400;font-size:17px;line-height:1.55;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
.stoika *,.stoika *::before,.stoika *::after{box-sizing:border-box;}
.stoika img{display:block;max-width:100%;height:auto;}
.stoika a{color:inherit;text-decoration:none;}
.stoika .wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad);}
.stoika .screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;
  margin:-1px;overflow:hidden;padding:0;position:absolute!important;word-wrap:normal!important;}
.stoika p{margin:0 0 1em;}
.stoika h1,.stoika h2,.stoika h3,.stoika h4{margin:0;font-weight:400;}

/* ---------------- Tipografía ---------------- */
.stoika .d{font-family:var(--serif);font-weight:400;line-height:1.04;letter-spacing:-.02em;}
.stoika .lab{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.10em;
  text-transform:uppercase;line-height:1.4;color:var(--gold-deep);display:block;}
.stoika .dark .lab{color:var(--gold);}
.stoika .body{font-size:17px;line-height:1.55;color:var(--pewter);max-width:46ch;}
.stoika .dark .body{color:var(--on-dark);}
.stoika .code{display:inline-block;font-family:var(--mono);font-weight:500;font-size:10.5px;
  letter-spacing:.14em;text-transform:uppercase;border:1.5px solid var(--line);
  border-radius:1000px;padding:6px 13px;color:var(--pewter);}
.stoika .arw{font-family:var(--mono);font-size:12px;}
.stoika .tlink{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11.5px;
  letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:3px;}

/* ---------------- Botones (incluye los de WooCommerce) ---------------- */
.stoika .btn,
.stoika .button,
.stoika button[type="submit"],
.stoika input[type="submit"]{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  font-family:var(--sans);font-weight:600;font-stretch:88%;font-size:14px;line-height:1.2;
  letter-spacing:.08em;text-transform:uppercase;cursor:pointer;
  padding:16px 30px;border-radius:1000px;border:1.5px solid var(--ink);
  background:var(--ink);color:var(--bone);white-space:nowrap;
  transition:background .2s,color .2s,border-color .2s;-webkit-appearance:none;appearance:none;
}
.stoika .btn:hover,.stoika .button:hover,
.stoika button[type="submit"]:hover,.stoika input[type="submit"]:hover{background:var(--gold);border-color:var(--gold);color:var(--ink);}
.stoika .button:disabled,.stoika .button.disabled,.stoika button:disabled{opacity:.4;cursor:not-allowed;}
.stoika .button:disabled:hover,.stoika .button.disabled:hover{background:var(--ink);border-color:var(--ink);color:var(--bone);}
/* secundarios: actualizar carrito, aplicar cupón */
.stoika button[name="update_cart"],
.stoika button[name="apply_coupon"],
.stoika .woocommerce-Button--previous,
.stoika .woocommerce-button.view{background:transparent;color:var(--ink);border-color:var(--line-strong);}
.stoika button[name="update_cart"]:hover,
.stoika button[name="apply_coupon"]:hover{background:transparent;border-color:var(--ink);color:var(--ink);}
.stoika .dark .btn-fill{background:var(--gold);border-color:var(--gold);color:var(--ink);}
.stoika .dark .btn-fill:hover{background:var(--bone);border-color:var(--bone);}

/* ---------------- Formularios ---------------- */
.stoika label{display:block;font-family:var(--mono);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--pewter);margin-bottom:8px;line-height:1.4;}
.stoika label.checkbox,.stoika label.woocommerce-form__label-for-checkbox,
.stoika .woocommerce-form__label-for-checkbox{display:flex;align-items:flex-start;gap:10px;
  font-family:var(--sans);font-size:15px;letter-spacing:0;text-transform:none;color:var(--ink);cursor:pointer;}
.stoika .required{color:var(--gold-deep);text-decoration:none;border:0;}
.stoika .optional{text-transform:none;letter-spacing:0;}
.stoika input[type="text"],.stoika input[type="email"],.stoika input[type="tel"],
.stoika input[type="password"],.stoika input[type="number"],.stoika input[type="search"],
.stoika textarea,.stoika select,
.stoika .select2-container .select2-selection--single{
  width:100%;font-family:var(--sans);font-size:16px;color:var(--ink);
  background:var(--bone);border:1.5px solid var(--line-strong);border-radius:12px;
  padding:14px 16px;line-height:1.3;transition:border-color .2s;-webkit-appearance:none;appearance:none;
}
.stoika textarea{min-height:110px;resize:vertical;}
.stoika input:focus,.stoika textarea:focus,.stoika select:focus{outline:none;border-color:var(--ink);}
.stoika select{
  padding-right:44px;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231A1512' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;
}
.stoika input[type="checkbox"],.stoika input[type="radio"]{accent-color:var(--ink);width:18px;height:18px;margin:2px 0 0;flex:none;}
.stoika .woocommerce-invalid input,.stoika .woocommerce-invalid select{border-color:var(--error);}
.stoika .form-row{margin:0 0 20px;padding:0;}
.stoika .description{font-size:13.5px;line-height:1.5;color:var(--pewter);margin-top:8px;display:block;}
.stoika .woocommerce-input-wrapper{display:block;}

.stoika .woocommerce-checkout-review-order-table + #payment,.stoika #payment{background:transparent;}
/* select2 (país y estado en el checkout): base que normalmente trae select2.css */
.select2-hidden-accessible{border:0!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;height:1px!important;
  overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;white-space:nowrap!important;}
.select2-container{box-sizing:border-box;display:inline-block;margin:0;position:relative;vertical-align:middle;}
.select2-container .select2-selection--single{cursor:pointer;user-select:none;}
.select2-container .select2-selection__rendered{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.select2-container .select2-selection__arrow{display:none;}
.select2-container .select2-selection__clear{display:none;}
.select2-dropdown{display:block;position:absolute;left:-100000px;width:100%;z-index:1051;box-sizing:border-box;}
.select2-container--open .select2-dropdown{left:0;}
.select2-container--open .select2-dropdown--below{margin-top:4px;}
.select2-results{display:block;}
.select2-results__options{list-style:none;margin:0;padding:0;max-height:260px;overflow-y:auto;}
.select2-results__option{padding:10px 16px;user-select:none;font-size:15px;}
.select2-results__option[aria-selected="true"],.select2-results__option--selected{font-weight:600;}
.select2-search--dropdown{display:block;padding:10px;}
.select2-search--dropdown .select2-search__field{width:100%;box-sizing:border-box;font-size:16px;}
.select2-search--dropdown.select2-search--hide{display:none;}
.select2-close-mask{border:0;margin:0;padding:0;display:block;position:fixed;left:0;top:0;min-height:100%;min-width:100%;
  height:auto;width:auto;opacity:0;z-index:99;background-color:#fff;}
/* select2 (país y estado en el checkout) */
.stoika .select2-container{width:100%!important;}
.stoika .select2-container .select2-selection--single{height:auto;display:flex;align-items:center;padding-right:44px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231A1512' stroke-width='1.6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 18px center;}
.stoika .select2-container .select2-selection--single .select2-selection__rendered{padding:0;line-height:1.3;color:var(--ink);}
.stoika .select2-container .select2-selection--single .select2-selection__arrow{height:100%;right:12px;}
.select2-dropdown{border:1.5px solid var(--ink)!important;border-radius:12px!important;overflow:hidden;font-family:'Archivo',sans-serif;background:#F5F1EA;}
.select2-results__option--highlighted[aria-selected],.select2-results__option--highlighted{background:#1A1512!important;color:#F5F1EA!important;}
.select2-search--dropdown .select2-search__field{border:1.5px solid rgba(26,21,18,.28);border-radius:8px;padding:8px 10px;}

/* cantidad */
.stoika .quantity{display:inline-block;}
.stoika .quantity input.qty{width:84px;text-align:center;padding:14px 8px;border-radius:1000px;
  font-family:var(--mono);font-size:15px;-moz-appearance:textfield;}

/* ---------------- Aviso de envío (franja superior) ---------------- */
.s-aviso{background:var(--gold);color:var(--ink);text-align:center;padding:10px var(--pad);
  font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;
  display:flex;justify-content:center;gap:28px;flex-wrap:wrap;}
.s-aviso b{font-weight:500;}
.s-aviso-sec{opacity:.72;}

/* ---------------- Nav ---------------- */
.s-nav{position:sticky;top:0;z-index:80;background:var(--ink);border-bottom:1px solid var(--line-dark);}
.admin-bar .s-nav{top:32px;}
.s-nav .wrap{display:flex;align-items:center;gap:28px;height:78px;}
.s-nav .logo img{height:32px;width:auto;}
.s-nav ul{display:flex;gap:32px;list-style:none;margin:0 auto 0 24px;padding:0;}
.stoika .s-nav ul a,.stoika .s-nav-link{font-size:14px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;
  font-stretch:88%;color:rgba(245,241,234,.82);transition:color .2s;}
.stoika .s-nav ul a:hover,.stoika .s-nav-link:hover{color:var(--gold);}
.stoika .s-nav .btn{padding:12px 22px;font-size:11.5px;background:var(--gold);border-color:var(--gold);color:var(--ink);}
.stoika .s-nav .btn:hover{background:var(--bone);border-color:var(--bone);}

/* menú de tres líneas (solo celular y tablet) */
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;
  margin-left:-8px;padding:9px;background:none;border:0;cursor:pointer;flex:none;}
.burger span{display:block;width:22px;height:1.5px;background:#F5F1EA;border-radius:2px;
  transition:transform .25s,opacity .2s;}
.s-nav.open .burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.s-nav.open .burger span:nth-child(2){opacity:0;}
.s-nav.open .burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
.stoika .solo-movil{display:none;}
.s-carrito-n{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;
  border-radius:1000px;background:var(--ink);color:var(--bone);font-family:var(--mono);font-size:11px;
  letter-spacing:0;padding:0 6px;}

/* ---------------- Bandas ---------------- */
.s-main > section{padding:112px 0;}
.s-main > section.dark{background:var(--ink);color:var(--bone);}
.s-main > section.stone{background:var(--stone);}
.s-hero{padding:96px 0!important;}
.s-hero .lab{margin-bottom:22px;}
.s-hero h1{font-size:clamp(44px,6vw,72px);margin-bottom:24px;}

.stoika .split{display:grid;grid-template-columns:40% 1fr;gap:80px;align-items:start;}

/* cifras grandes */
.stoika .figs{display:flex;gap:48px;flex-wrap:wrap;margin-bottom:40px;}
.stoika .figs b{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(38px,4.4vw,56px);
  line-height:1;letter-spacing:-.02em;margin-bottom:10px;}
.stoika .figs em{font-style:normal;font-family:var(--mono);font-size:10px;letter-spacing:.15em;
  text-transform:uppercase;color:var(--pewter);}

/* ---------------- Tienda: tarjetas ---------------- */
.s-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.s-grid[data-n="2"]{grid-template-columns:repeat(2,1fr);max-width:880px;}
.s-grid[data-n="1"]{grid-template-columns:1fr;max-width:440px;}
.s-card{display:flex;flex-direction:column;background:var(--stone);border-radius:16px;overflow:hidden;}
.s-card-img{display:block;overflow:hidden;aspect-ratio:4/5;background:var(--ink);}
.s-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.3,1);}
.s-card:hover .s-card-img img{transform:scale(1.04);}
.s-card-body{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1;align-items:flex-start;}
.s-card h2{font-size:32px;margin:16px 0 10px;}
.s-card p{font-size:15px;line-height:1.55;color:var(--pewter);margin:0 0 20px;}
.s-card .code{border-color:var(--line-strong);}
.s-card-row{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;
  margin-top:auto;flex-wrap:wrap;}
.s-precio-sm{font-family:var(--serif);font-size:26px;letter-spacing:-.01em;color:var(--gold-deep);
  font-variant-numeric:tabular-nums;}
.stoika .s-card .btn{padding:13px 22px;font-size:12px;}
.s-desde{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--pewter);vertical-align:middle;margin-right:4px;}

.s-tres{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.s-tres > div{background:var(--stone);padding:34px 28px;}
.s-tres b{display:block;font-size:30px;margin:14px 0 10px;}
.s-tres p{margin:0;font-size:14.5px;line-height:1.6;color:var(--pewter);}

/* ---------------- Producto ---------------- */
.s-prod{padding:56px 0 112px!important;}
.s-migas{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--pewter);margin-bottom:32px;}
.s-migas a{border-bottom:1px solid currentColor;}
.s-migas span{margin:0 8px;opacity:.5;}
.s-prod-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;}
.s-prod-img{margin:0;border-radius:32px;overflow:hidden;background:var(--ink);position:sticky;top:120px;}
.s-prod-img img{width:100%;height:auto;}
.s-buy h1{font-size:clamp(48px,5.4vw,72px);margin:20px 0 20px;}
.s-corto p{font-size:17px;line-height:1.55;color:var(--pewter);max-width:46ch;}
.s-precio{font-family:var(--serif);font-size:clamp(34px,3.6vw,48px);letter-spacing:-.02em;
  color:var(--gold-deep);font-variant-numeric:tabular-nums;margin:8px 0 32px;line-height:1;}
.s-precio .s-desde{font-size:11px;}

/* formulario de variantes de WooCommerce */
.s-buy form.cart{border-top:1px solid var(--line);padding-top:28px;}
.s-buy table.variations{width:100%;border-collapse:collapse;margin:0 0 8px;}
.s-buy table.variations tr{display:block;margin-bottom:20px;}
.s-buy table.variations th,.s-buy table.variations td{display:block;padding:0;text-align:left;}
.s-buy table.variations th label{margin-bottom:10px;}
.s-buy .reset_variations{display:inline-block;margin-top:12px;font-family:var(--mono);font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--pewter);border-bottom:1px solid currentColor;}
.s-buy .single_variation_wrap{margin-top:8px;}
.s-buy .woocommerce-variation{margin-bottom:22px;}
.s-buy .woocommerce-variation-description p{font-size:15px;color:var(--pewter);margin:0 0 10px;}
.s-buy .woocommerce-variation-price .price{font-family:var(--serif);font-size:40px;letter-spacing:-.02em;
  color:var(--ink);font-variant-numeric:tabular-nums;}
.s-buy .woocommerce-variation-availability p.stock{font-family:var(--mono);font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--pewter);}
.s-buy .woocommerce-variation-add-to-cart,
.s-buy form.cart:not(.variations_form){display:flex;gap:12px;align-items:center;flex-wrap:wrap;}
.s-buy .single_add_to_cart_button{flex:1;min-width:220px;}
.s-envio-nota{list-style:none;padding:24px 0 0;margin:28px 0 0;border-top:1px solid var(--line);
  display:flex;gap:10px 28px;flex-wrap:wrap;font-family:var(--mono);font-size:10.5px;
  letter-spacing:.13em;text-transform:uppercase;color:var(--pewter);}
.s-desc{max-width:62ch;}
.s-desc p,.s-desc li{font-size:16px;line-height:1.65;color:var(--ink);}
.s-desc ul{padding-left:18px;margin:0 0 1em;}
.s-desc strong{font-weight:600;}

/* ---------------- Páginas: carrito, checkout, cuenta ---------------- */
.s-pagina{padding:72px 0 112px!important;}
.s-head{margin-bottom:48px;}
.s-head .lab{margin-bottom:16px;}
.s-head h1{font-size:clamp(44px,5.4vw,64px);}
.s-woo h2,.s-woo h3{font-family:var(--serif);font-size:30px;letter-spacing:-.015em;line-height:1.1;margin:0 0 22px;}

/* avisos de WooCommerce */
.stoika .woocommerce-notices-wrapper:empty{display:none;}
.stoika .woocommerce-message,.stoika .woocommerce-info,.stoika .woocommerce-error{
  list-style:none;margin:0 0 32px;padding:18px 22px;border-radius:16px;
  border:1.5px solid var(--line-strong);background:transparent;font-size:15px;line-height:1.5;
  display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
}
.stoika .woocommerce-message{border-color:var(--gold);background:rgba(196,158,87,.08);}
.stoika .woocommerce-error{border-color:var(--error);display:block;}
.stoika .woocommerce-error li{margin:4px 0;}
.stoika .woocommerce-message .button,.stoika .woocommerce-info .button{order:2;padding:11px 20px;font-size:11.5px;}
.stoika .woocommerce-info a:not(.button),.stoika .woocommerce-message a:not(.button){border-bottom:1px solid currentColor;}
.stoika .woocommerce-NoticeGroup{grid-column:1/-1;}
/* avisos con el formato nuevo de WooCommerce (temas de bloques) */
.stoika .wc-block-components-notice-banner{display:flex;align-items:center;gap:14px;margin:0 0 24px;
  padding:16px 20px;border-radius:16px;border:1.5px solid var(--line-strong);font-size:15px;line-height:1.5;}
.stoika .wc-block-components-notice-banner > svg{width:22px;height:22px;flex:none;fill:currentColor;}
.stoika .wc-block-components-notice-banner.is-success{border-color:var(--gold);background:rgba(196,158,87,.08);}
.stoika .wc-block-components-notice-banner.is-error{border-color:var(--error);}
.stoika .wc-block-components-notice-banner.is-error > svg{fill:var(--error);}
.stoika .wc-block-components-notice-banner__content{flex:1;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.stoika .wc-block-components-notice-banner__content ul{margin:0;padding-left:18px;}
.stoika .wc-block-components-notice-banner__content .button{padding:11px 20px;font-size:11.5px;}
.stoika .wc-block-components-notice-banner a:not(.button){border-bottom:1px solid currentColor;}

/* tablas */
.stoika table.shop_table{width:100%;border-collapse:collapse;font-size:15.5px;}
.stoika table.shop_table th{font-family:var(--mono);font-weight:400;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--pewter);text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);}
.stoika table.shop_table td{padding:20px 12px;border-bottom:1px solid var(--line);vertical-align:middle;}
.stoika .woocommerce-Price-amount{font-variant-numeric:tabular-nums;}

/* Astra registra su propia versión de los estilos de WooCommerce (anchos 48 %, 55 %, 40 % y floats).
   El plugin los quita, y esto los neutraliza por si algún otro plugin los vuelve a meter. */
.s-woo .col2-set,.s-woo .col2-set .col-1,.s-woo .col2-set .col-2,
.s-woo #customer_details,.s-woo #order_review,.s-woo #order_review_heading,
.s-woo .cart-collaterals,.s-woo .cart-collaterals .cart_totals,.s-woo .cart-collaterals .cross-sells,
.s-woo .form-row-first,.s-woo .form-row-last,.s-woo .form-row-wide,
.s-woo .u-columns .u-column1,.s-woo .u-columns .u-column2,
.s-woo .woocommerce-MyAccount-navigation,.s-woo .woocommerce-MyAccount-content{width:auto!important;float:none!important;}
.s-woo .col2-set::before,.s-woo .col2-set::after{display:none!important;}
.s-woo input.input-text,.s-woo .woocommerce-input-wrapper,.s-woo .form-row select{width:100%!important;max-width:none;}
.s-woo .wc-stripe-express-checkout-element,.s-woo #wc-stripe-express-checkout-element{width:100%;}

/* carrito */
.s-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1fr) 400px;gap:56px;align-items:start;}
.s-cart .woocommerce > *,.s-checkout form.checkout > *,.s-cuenta .woocommerce > *{min-width:0;}
.s-cart .woocommerce > .woocommerce-notices-wrapper,
.s-cart .woocommerce > .cart-empty,
.s-cart .woocommerce > .return-to-shop,
.s-cart .woocommerce > .wc-empty-cart-message{grid-column:1/-1;}
.s-cart .return-to-shop{margin:0;}
.s-cart td.product-thumbnail{width:96px;}
.s-cart td.product-thumbnail img{width:80px;border-radius:12px;}
.s-cart td.product-name a{font-family:var(--serif);font-size:22px;letter-spacing:-.01em;}
.s-cart td.product-name dl.variation{margin:6px 0 0;font-family:var(--mono);font-size:10.5px;
  letter-spacing:.12em;text-transform:uppercase;color:var(--pewter);display:grid;grid-template-columns:auto 1fr;gap:2px 8px;}
.s-cart td.product-name dl.variation dt,.s-cart td.product-name dl.variation dd{margin:0;}
.s-cart td.product-name dl.variation dd p{margin:0;}
.s-cart td.product-remove{width:36px;}
.s-cart a.remove{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;
  border:1.5px solid var(--line-strong);border-radius:1000px;font-size:18px;line-height:1;color:var(--pewter);}
.s-cart a.remove:hover{border-color:var(--ink);color:var(--ink);}
.s-cart td.actions{border-bottom:0;padding-top:24px;}
.s-cart td.actions .coupon{display:inline-flex;gap:10px;align-items:center;margin-right:10px;}
.s-cart td.actions .coupon label{display:none;}
.s-cart td.actions .coupon input{width:200px;border-radius:1000px;padding:13px 18px;}
.s-cart td.actions > .button{float:right;}
.s-cart .cart-collaterals{position:sticky;top:120px;}
.s-cart .cart_totals,.s-checkout #order_review{background:var(--stone);border-radius:16px;padding:32px 28px;}
.s-cart .cart_totals h2{font-size:26px;}
.s-cart .cart_totals table.shop_table th,.s-checkout #order_review table.shop_table th{padding-left:0;}
.s-cart .cart_totals table.shop_table td{text-align:right;padding-right:0;}
.stoika tr.order-total td,.stoika tr.order-total th{border-bottom:0;}
.stoika tr.order-total .woocommerce-Price-amount{font-family:var(--serif);font-size:32px;letter-spacing:-.02em;}
.stoika ul#shipping_method,.stoika ul.woocommerce-shipping-methods{list-style:none;margin:0;padding:0;text-align:right;}
.stoika ul#shipping_method li{margin:0 0 6px;}
.stoika .woocommerce-shipping-destination,.stoika .woocommerce-shipping-calculator{font-size:13px;color:var(--pewter);margin:8px 0 0;}
.stoika .shipping-calculator-button{border-bottom:1px solid currentColor;}
.s-cart .wc-proceed-to-checkout{margin-top:24px;}
.s-cart .wc-proceed-to-checkout .checkout-button{width:100%;padding:18px 30px;}
.s-cart .wc-proceed-to-checkout > *:not(.checkout-button){width:100%;margin-top:12px;}
.s-cart #wc-stripe-express-checkout-button-separator{text-align:center;font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pewter);margin:16px 0 4px;}
.s-gratis{margin:0 0 22px;padding:14px 16px;border-radius:12px;border:1.5px dashed var(--gold-deep);
  font-size:14.5px;line-height:1.45;}
.s-gratis b{font-weight:600;}
.stoika .cart-empty{font-family:var(--serif);font-size:30px;border:0!important;padding:0!important;margin:0 0 24px!important;}

/* checkout */
.s-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 420px;column-gap:64px;row-gap:0;align-items:start;
  grid-template-areas:"exp exp" "sep sep" "not not" "cd orh" "cd or" "cd .";grid-template-rows:auto auto auto auto auto 1fr;}
.s-checkout form.checkout > *{grid-column:1/-1;}
.s-checkout #wc-stripe-express-checkout-element{grid-area:exp;margin-bottom:12px;}
.s-checkout #wc-stripe-express-checkout-button-separator{grid-area:sep;margin:0 0 32px;text-align:center;
  font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pewter);}
.s-checkout form.checkout > .woocommerce-NoticeGroup{grid-area:not;}
.s-checkout #customer_details{grid-area:cd;}
.s-checkout #order_review_heading{grid-area:orh;margin:0 0 18px;}
.s-checkout #order_review{grid-area:or;position:sticky;top:120px;}
.s-checkout .woocommerce-form-login-toggle .woocommerce-info,
.s-checkout .woocommerce-form-coupon-toggle .woocommerce-info{font-size:14.5px;}
.s-checkout form.login,.s-checkout form.checkout_coupon{border:1.5px solid var(--line);border-radius:16px;
  padding:24px;margin:0 0 32px;}
.s-checkout form.checkout_coupon{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;}
.s-checkout form.checkout_coupon p{margin:0;}
.s-checkout .col2-set .col-1,.s-checkout .col2-set .col-2{width:auto;float:none;}
.s-checkout .col2-set .col-2{margin-top:32px;}
.stoika .woocommerce-billing-fields__field-wrapper,
.stoika .woocommerce-shipping-fields__field-wrapper,
.stoika .woocommerce-address-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;}
.stoika .form-row-wide,.stoika .woocommerce-billing-fields__field-wrapper .form-row:not(.form-row-first):not(.form-row-last),
.stoika .woocommerce-shipping-fields__field-wrapper .form-row:not(.form-row-first):not(.form-row-last),
.stoika .woocommerce-address-fields__field-wrapper .form-row:not(.form-row-first):not(.form-row-last){grid-column:1/-1;}
.s-checkout #ship-to-different-address{font-size:inherit;margin:0 0 18px;}
.s-checkout #ship-to-different-address label{font-family:var(--serif);font-size:24px;letter-spacing:-.01em;
  text-transform:none;color:var(--ink);display:flex;gap:12px;align-items:center;}
.s-checkout .woocommerce-account-fields{margin-top:8px;}
.s-checkout .woocommerce-account-fields p.create-account{margin:0 0 18px;}
.s-checkout #order_review table.shop_table td.product-name{font-size:15px;}
.s-checkout #order_review table.shop_table td.product-total,
.s-checkout #order_review table.shop_table tfoot td{text-align:right;padding-right:0;}
.s-checkout #order_review .product-quantity{font-family:var(--mono);font-size:12px;color:var(--pewter);}
.s-checkout #order_review dl.variation{margin:4px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--pewter);display:grid;grid-template-columns:auto 1fr;gap:2px 8px;}
.s-checkout #order_review dl.variation dt,.s-checkout #order_review dl.variation dd,.s-checkout #order_review dl.variation p{margin:0;}
.stoika #payment ul.payment_methods{list-style:none;margin:28px 0 0;padding:0;border-top:1px solid var(--line);}
.stoika #payment ul.payment_methods li{padding:16px 0;border-bottom:1px solid var(--line);}
.stoika #payment ul.payment_methods li > label{display:inline-flex;align-items:center;gap:10px;margin:0 0 0 8px;
  font-family:var(--sans);font-size:16px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink);}
.stoika #payment ul.payment_methods li > input{vertical-align:middle;}
.stoika #payment ul.payment_methods li img{display:inline-block;max-height:22px;width:auto;}
.stoika #payment .payment_box{margin-top:12px;font-size:14px;line-height:1.55;color:var(--pewter);}
.stoika #payment .payment_box p:last-child{margin-bottom:0;}
.stoika #payment .place-order{margin:24px 0 0;}
.stoika .woocommerce-privacy-policy-text p,.stoika .woocommerce-terms-and-conditions-wrapper{font-size:13px;line-height:1.5;color:var(--pewter);}
.stoika .woocommerce-privacy-policy-text a,.stoika .woocommerce-terms-and-conditions-link{border-bottom:1px solid currentColor;}
.stoika #place_order{width:100%;padding:19px 30px;margin-top:8px;}

/* gracias */
.s-gracias .woocommerce-thankyou-order-received{font-size:19px;line-height:1.55;max-width:52ch;margin-bottom:40px;}
.stoika ul.woocommerce-order-overview,.stoika ul.order_details{list-style:none;padding:0;margin:0 0 48px;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.stoika ul.woocommerce-order-overview li,.stoika ul.order_details li{background:var(--bone);padding:22px;
  font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--pewter);}
.stoika ul.woocommerce-order-overview li strong,.stoika ul.order_details li strong{display:block;margin-top:8px;
  font-family:var(--serif);font-size:20px;letter-spacing:-.01em;text-transform:none;color:var(--ink);font-weight:400;}
.stoika .woocommerce-order-details,.stoika .woocommerce-customer-details{margin-bottom:48px;}
.stoika .woocommerce-customer-details address{font-style:normal;line-height:1.7;border:1.5px solid var(--line);
  border-radius:16px;padding:24px;}
.stoika .woocommerce-customer-details--phone,.stoika .woocommerce-customer-details--email{margin:6px 0 0;}
.stoika .woocommerce-bacs-bank-details h2,.stoika .wc-bacs-bank-details-heading{font-size:24px;}
.stoika ul.wc-bacs-bank-details{list-style:none;padding:0;}

/* mi cuenta */
.s-cuenta .woocommerce:has(> .woocommerce-MyAccount-navigation){display:grid;grid-template-columns:240px 1fr;gap:64px;align-items:start;}
.s-cuenta .woocommerce > .woocommerce-notices-wrapper{grid-column:1/-1;}
.stoika .password-input{position:relative;display:block;}
.stoika .password-input input{padding-right:52px;}
.stoika button.show-password-input{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:32px;height:32px;
  padding:0;border:0;border-radius:1000px;background:transparent center/20px no-repeat;cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23766D65' stroke-width='1.6'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");}
.stoika button.show-password-input.display-password{opacity:.5;}
.stoika .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line);}
.stoika .woocommerce-MyAccount-navigation li a{display:block;padding:14px 0;border-bottom:1px solid var(--line);
  font-family:var(--mono);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--pewter);}
.stoika .woocommerce-MyAccount-navigation li.is-active a,.stoika .woocommerce-MyAccount-navigation li a:hover{color:var(--ink);}
.stoika .woocommerce-MyAccount-navigation li.is-active a::before{content:"— ";color:var(--gold-deep);}
.stoika .woocommerce-MyAccount-content > p{max-width:60ch;}
.stoika .woocommerce-MyAccount-content a:not(.button){border-bottom:1px solid currentColor;}
.stoika #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
.stoika #customer_login .u-column1,.stoika #customer_login .u-column2{width:auto;float:none;}
.stoika form.woocommerce-form-login,.stoika form.woocommerce-form-register,.stoika form.lost_reset_password{
  border:1.5px solid var(--line);border-radius:16px;padding:32px;max-width:560px;}
.stoika .woocommerce-form-login__rememberme{margin:0 0 18px;}
.stoika .lost_password a{font-size:14px;border-bottom:1px solid currentColor;}
.stoika .woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.stoika .woocommerce-Address-title{display:flex;justify-content:space-between;align-items:baseline;gap:16px;}
.stoika .woocommerce-Address-title a{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;}
.stoika .woocommerce-Address address{font-style:normal;line-height:1.7;}
.stoika table.woocommerce-orders-table .button{padding:10px 18px;font-size:11px;}
.stoika mark{background:transparent;color:var(--ink);font-weight:600;}

/* bloqueo mientras WooCommerce recalcula */
.stoika .blockUI.blockOverlay{background:var(--bone)!important;opacity:.6!important;}

/* ---------------- Páginas legales ---------------- */
.s-legal{max-width:68ch;}
.s-legal h2{font-family:var(--serif);font-size:30px;letter-spacing:-.015em;line-height:1.15;margin:56px 0 18px;}
.s-legal h2:first-child{margin-top:0;}
.s-legal p,.s-legal li{font-size:16.5px;line-height:1.7;}
.s-legal ul{padding-left:20px;margin:0 0 1.2em;}
.s-legal li{margin-bottom:6px;}
.s-legal a{border-bottom:1px solid currentColor;}
.s-legal strong{font-weight:600;}

/* ---------------- Footer ---------------- */
.s-footer{background:var(--ink);color:var(--bone);padding:88px 0 40px;border-top:1px solid var(--line-dark);}
.s-footer .fgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:64px;}
.s-footer .logo img{height:32px;width:auto;margin-bottom:24px;}
.s-footer h4{font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gold);margin:0 0 20px;font-weight:400;}
.s-footer ul{list-style:none;margin:0;padding:0;}
.s-footer li{margin-bottom:13px;font-size:14.5px;color:rgba(245,241,234,.7);}
.s-footer li a:hover{color:var(--gold);}
.s-footer .tag{font-size:14.5px;color:rgba(245,241,234,.7);max-width:32ch;line-height:1.65;}
.s-footer .fbot{border-top:1px solid var(--line-dark);padding-top:28px;display:flex;justify-content:space-between;
  gap:16px;flex-wrap:wrap;font-family:var(--mono);font-size:10px;letter-spacing:.12em;
  text-transform:uppercase;color:rgba(245,241,234,.42);}

/* ---------------- Responsive ---------------- */
@media(max-width:1040px){
  .s-nav ul{display:none;}
  .s-nav .burger{display:flex;}
  .s-nav.open{background:var(--ink);}
  .s-nav.open ul{display:flex;flex-direction:column;gap:0;position:absolute;top:100%;left:0;right:0;margin:0;
    padding:4px var(--pad) 20px;background:var(--ink);border-bottom:1px solid var(--line-dark);}
  .s-nav.open ul a{display:block;padding:16px 0;border-bottom:1px solid var(--line-dark);font-size:15px;}
  .s-nav.open ul li:last-child a{border-bottom:0;}
  .stoika .s-nav .solo-movil{display:block;}
  .s-nav .wrap{gap:20px;}
  .s-nav-link{margin-left:auto;}
  .s-nav-cuenta{margin-left:0;}
  .s-grid{grid-template-columns:1fr 1fr;}
  .s-prod-grid,.stoika .split{grid-template-columns:1fr;gap:48px;}
  .s-prod-img{position:static;}
  .s-cart .woocommerce,.s-checkout form.checkout,.s-cuenta .woocommerce:has(> .woocommerce-MyAccount-navigation){grid-template-columns:1fr;gap:40px;}
  .s-checkout form.checkout{grid-template-areas:"exp" "sep" "not" "cd" "orh" "or";grid-template-rows:none;}
  .s-checkout #order_review_heading{margin-top:40px;}
  .s-checkout #order_review{position:static;}
  .s-cart .cart-collaterals{position:static;}
  .s-footer .fgrid{grid-template-columns:1fr 1fr;gap:40px;}
}
@media(max-width:782px){
  .admin-bar .s-nav{top:0;}
}
@media(max-width:720px){
  body.stoika{font-size:16px;}
  .s-main > section{padding:80px 0;}
  .s-hero{padding:72px 0!important;}
  .s-prod{padding:32px 0 80px!important;}
  .s-pagina{padding:48px 0 80px!important;}
  .s-nav .wrap{height:64px;gap:14px;}
  .s-nav .logo img{height:26px;}
  .s-nav-cuenta{display:none;}
  .s-aviso{gap:4px 18px;font-size:10.5px;}
  .s-grid,.s-tres,.stoika #customer_login,.stoika .woocommerce-Addresses{grid-template-columns:1fr;}
  .s-grid,.s-grid[data-n]{gap:24px;grid-template-columns:1fr;max-width:none;}
  .s-card-row{flex-direction:column;align-items:stretch;gap:14px;}
  .stoika .s-card .btn{width:100%;padding:16px 22px;font-size:13px;}
  .s-card-body{padding:20px 20px 22px;}
  .stoika .figs{gap:28px;}
  .s-prod-img{border-radius:20px;}
  .stoika .woocommerce-billing-fields__field-wrapper,
  .stoika .woocommerce-shipping-fields__field-wrapper,
  .stoika .woocommerce-address-fields__field-wrapper{grid-template-columns:1fr;}
  .s-footer .fgrid{grid-template-columns:1fr;}
  /* carrito en celular: cada producto como bloque */
  .s-cart table.cart,.s-cart table.cart tbody{display:block;width:100%;}
  .s-cart table.cart thead{display:none;}
  .s-cart table.cart tr.cart_item{display:grid;grid-template-columns:72px 1fr 30px;gap:6px 14px;
    padding:18px 0;border-bottom:1px solid var(--line);}
  .s-cart table.cart tr.cart_item td{display:block;border:0;padding:0;}
  .s-cart table.cart td.product-thumbnail{grid-row:1 / span 3;width:auto;}
  .s-cart table.cart td.product-thumbnail img{width:72px;}
  .s-cart table.cart td.product-remove{grid-column:3;grid-row:1;}
  .s-cart table.cart td.product-name{grid-column:2;grid-row:1;}
  .s-cart table.cart td.product-price{display:none;}
  .s-cart table.cart td.product-quantity,.s-cart table.cart td.product-subtotal{grid-column:2;}
  .s-cart table.cart td.product-subtotal{font-family:var(--serif);font-size:20px;}
  .s-cart table.cart td.actions{display:block;padding:20px 0 0;}
  .s-cart td.actions .coupon{display:flex;width:100%;margin:0 0 12px;}
  .s-cart table.cart tr:not(.cart_item){display:block;}
  .s-cart td.actions .coupon input{flex:1;width:auto;min-width:0;}
  .s-cart td.actions .coupon .button{flex:none;padding:14px 18px;}
  .s-cart td.actions > .button{float:none;width:100%;}
  .stoika td[data-title]::before{display:none;}
}


/* ---------------- Agotado (5.14) ---------------- */
.s-card-img,.s-prod-img{position:relative;}
.s-prod-img{position:sticky;}
.s-agotado{position:absolute;top:16px;left:16px;z-index:2;background:var(--bone);color:var(--ink);border:1px solid rgba(26,21,18,.14);
  font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;
  padding:9px 14px;border-radius:999px;}
.s-card.is-agotado .s-card-img img,.s-prod-img:has(.s-agotado) img{filter:grayscale(.35);opacity:.78;}
.s-card.is-agotado:hover .s-card-img img{transform:none;}
.stoika .btn-line{background:transparent;color:var(--ink);border:1px solid var(--line-strong);}
.stoika .btn-line:hover{background:var(--ink);color:var(--bone);border-color:var(--ink);}
.s-agotado-nota{width:100%;background:var(--stone);border-radius:16px;padding:22px 24px;margin:8px 0 4px;}
.s-agotado-nota b{display:block;font-family:var(--serif);font-weight:400;font-size:24px;margin-bottom:6px;}
.s-agotado-nota p{margin:0 0 18px;color:var(--pewter);font-size:15px;line-height:1.55;}
@media (max-width:1040px){ .s-prod-img{position:relative;} }
