/* ============================================================
   SEPACK — tienda (WooCommerce) con el lenguaje visual de la muestra
   ============================================================ */
.ls.spk-tienda,.ls.spk-pagina{padding:56px 0 96px;background:radial-gradient(80% 50% at 90% 0%,var(--soft) 0%,#fff 55%);min-height:40vh;}
.spk-contenido{font-size:16px;line-height:1.75;color:var(--tinta);}
.spk-contenido>*+*{margin-top:1em;}
.spk-contenido h2,.spk-contenido h3{margin-top:1.4em;}
.spk-contenido a{color:#1f6fa8;text-decoration:underline;text-underline-offset:3px;}
.spk-pagina-tienda .spk-contenido a{text-decoration:none;}

/* ---------- Botones de WooCommerce con la marca ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit,
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.wc-block-components-button:not(.is-link),.wp-element-button.wc-block-components-button{
  background:var(--grad-btn)!important;color:var(--tinta-btn)!important;border:none!important;border-radius:999px!important;
  font-family:var(--disp)!important;font-weight:700!important;font-size:13.5px!important;letter-spacing:.04em;text-transform:uppercase;
  padding:13px 22px!important;line-height:1.2!important;box-shadow:0 10px 24px -12px rgba(24,233,217,.8);transition:transform .15s,box-shadow .15s,filter .15s;}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.wc-block-components-button:not(.is-link):hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 14px 30px -12px rgba(24,233,217,.9);}
.woocommerce button.button.alt.disabled,.woocommerce button.button:disabled,.woocommerce button.button:disabled[disabled]{opacity:.45!important;transform:none;}
.woocommerce a.added_to_cart{display:inline-block;margin-left:10px;font:600 13px var(--body);color:#1f6fa8;}

/* ---------- Avisos ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-error,.woocommerce-noreviews,p.no-comments{
  border:1px solid var(--line)!important;border-left:4px solid var(--turquesa)!important;border-radius:var(--r);background:#fff!important;
  color:var(--tinta)!important;box-shadow:var(--sh-1);padding:16px 20px 16px 50px!important;font-size:15px;}
.woocommerce-message::before,.woocommerce-info::before{color:var(--azul)!important;top:16px!important;}
.woocommerce-error{border-left-color:#e2464b!important;}
.woocommerce-error::before{color:#e2464b!important;}
.woocommerce-message .button,.woocommerce-info .button{float:right;margin-left:12px;}

/* ---------- Filtros de categoría ---------- */
.spk-pills{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 14px;}
.spk-pills-sub{margin-bottom:22px;}
.spk-pill{display:inline-flex;align-items:center;gap:7px;padding:10px 16px;border-radius:999px;border:1px solid var(--line);background:#fff;
  font:600 13.5px/1 var(--body);color:var(--tinta);transition:.2s;box-shadow:0 4px 12px -8px rgba(9,20,36,.2);}
.spk-pill small{font-size:11px;color:var(--muted);font-weight:700;}
.spk-pill:hover{border-color:var(--turquesa);color:#0b6d86;}
.spk-pill.is-on{background:linear-gradient(145deg,#0d1b2e,#14325a);border-color:#0d1b2e;color:#fff;}
.spk-pill.is-on small{color:var(--turquesa);}
.spk-pills-sub .spk-pill{padding:8px 13px;font-size:12.5px;background:var(--soft);}
.spk-pill-premium{border-color:rgba(95,122,234,.4);}
.woocommerce .woocommerce-result-count{margin:10px 0 22px;color:var(--muted);font-size:14px;}
.woocommerce .woocommerce-ordering{margin:0 0 22px;}
.woocommerce .woocommerce-ordering select,.spk-pagina select,.woocommerce form .form-row select{
  appearance:none;-webkit-appearance:none;padding:11px 40px 11px 15px;border:1px solid var(--line);border-radius:var(--r-input);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%233fabe2' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center/14px;
  font:500 14px var(--body);color:var(--tinta);}

/* ---------- Grilla de productos ---------- */
.woocommerce ul.products,.woocommerce-page ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin:0 0 30px!important;padding:0;list-style:none;clear:both;}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important;}
.woocommerce ul.products.columns-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.woocommerce ul.products li.product,.woocommerce-page ul.products li.product{width:auto!important;margin:0!important;float:none!important;padding:0!important;}
.woocommerce ul.products li.spk-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;
  box-shadow:var(--sh-1);transition:transform .25s,box-shadow .25s,border-color .25s;}
.woocommerce ul.products li.spk-card:hover{transform:translateY(-5px);box-shadow:var(--sh-3);border-color:rgba(24,233,217,.55);}
.spk-card-ph{position:relative;display:block;aspect-ratio:4/3;overflow:hidden;background:#0a1626;}
.woocommerce ul.products li.product .spk-card-ph img{width:100%;height:100%;object-fit:cover;margin:0!important;transition:transform .5s;}
.woocommerce ul.products li.spk-card:hover .spk-card-ph img{transform:scale(1.06);}
.spk-badges{position:absolute;left:12px;top:12px;display:flex;gap:6px;flex-wrap:wrap;}
.spk-badge{font:700 10.5px/1 var(--body);letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:rgba(6,14,26,.78);color:#fff;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.18);}
.spk-badge-premium{background:linear-gradient(135deg,#d7dbe3,#9aa3b5 50%,#eef1f6);color:#0d1b2e;border-color:rgba(255,255,255,.6);}
.spk-card-bd{display:flex;flex-direction:column;gap:8px;padding:16px 18px 20px;flex:1;}
.spk-card-bd .proj-tag{align-self:flex-start;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#1f6fa8;border:1px solid rgba(63,171,226,.4);border-radius:999px;padding:4px 10px;}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--disp);font-size:16.5px!important;line-height:1.3;padding:0!important;margin:2px 0 0;color:var(--tinta);}
.woocommerce ul.products li.product .woocommerce-loop-product__title a:hover{color:#0b6d86;}
.spk-card-precio{font:700 17px var(--disp);color:var(--tinta);margin-top:auto;}
.spk-card-precio .woocommerce-Price-amount{color:#0d1b2e;}
.spk-desde{font:600 12px var(--body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-right:2px;}
.spk-por{font:500 13px var(--body);color:var(--muted);}
.spk-card-acc .button{width:100%;text-align:center;justify-content:center;margin-top:6px!important;}
.woocommerce span.onsale{background:var(--grad-btn);color:var(--tinta-btn);min-height:auto;min-width:auto;padding:6px 12px;border-radius:999px;line-height:1.2;font-size:11px;}

/* Paginación */
.woocommerce nav.woocommerce-pagination ul{border:none;display:flex;gap:8px;justify-content:center;}
.woocommerce nav.woocommerce-pagination ul li{border:none;}
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;border:1px solid var(--line);background:#fff;font-weight:700;color:var(--tinta);}
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover{background:#0d1b2e;color:#fff;border-color:#0d1b2e;}

/* ---------- Ficha de producto ---------- */
.woocommerce div.product{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:48px;align-items:start;}
.woocommerce div.product div.images,.woocommerce div.product div.summary{width:auto!important;float:none!important;margin:0!important;}
.woocommerce div.product .woocommerce-tabs,.woocommerce div.product .related,.woocommerce div.product .upsells{grid-column:1/-1;}
.woocommerce div.product div.images{border-radius:var(--r-lg);overflow:hidden;background:#fff;border:1px solid var(--line);box-shadow:var(--sh-2);position:sticky;top:110px;}
.woocommerce div.product div.images .flex-control-thumbs{display:flex;gap:8px;padding:10px;background:#fff;}
.woocommerce div.product div.images .flex-control-thumbs li{width:auto!important;flex:1 1 0;max-width:90px;}
.woocommerce div.product div.images .flex-control-thumbs li img{border-radius:10px;opacity:.55;aspect-ratio:1;object-fit:cover;}
.woocommerce div.product div.images .flex-control-thumbs li img.flex-active,.woocommerce div.product div.images .flex-control-thumbs li img:hover{opacity:1;outline:2px solid var(--turquesa);}
.woocommerce div.product .product_title{font-family:var(--disp);font-size:clamp(26px,3vw,36px);font-weight:800;line-height:1.15;color:var(--tinta);margin-bottom:12px;}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:#0d1b2e!important;font:800 28px var(--disp)!important;}
.woocommerce div.product .woocommerce-product-details__short-description{color:var(--tinta-soft);font-size:15.5px;line-height:1.7;margin:14px 0 18px;}
.spk-iva{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:600;color:#1f6fa8;margin:-4px 0 8px;}
.spk-iva svg{width:18px;height:18px;padding:3px;border-radius:50%;background:rgba(24,233,217,.2);stroke-width:3;}
.woocommerce div.product form.cart{margin:18px 0 22px;padding:22px;border:1px solid var(--line);border-radius:var(--r-lg);background:#fff;box-shadow:var(--sh-1);}
.woocommerce div.product form.cart .variations{margin-bottom:6px;border:none;}
.woocommerce div.product form.cart .variations th,.woocommerce div.product form.cart .variations td{display:block;padding:0;line-height:1.3;text-align:left;}
.woocommerce div.product form.cart .variations th label{font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.woocommerce div.product form.cart .variations td{padding:8px 0 16px;}
.woocommerce div.product form.cart .variations select.spk-oculto{position:absolute!important;opacity:0;pointer-events:none;width:1px!important;height:1px;}
.spk-opciones{display:flex;flex-wrap:wrap;gap:8px;}
.spk-opcion{padding:11px 15px;border-radius:12px;border:1.5px solid var(--line);background:var(--soft);font:600 14px var(--body);color:var(--tinta);cursor:pointer;transition:.18s;}
.spk-opcion:hover{border-color:var(--turquesa);}
.spk-opcion.is-on{background:linear-gradient(145deg,#0d1b2e,#14325a);border-color:#0d1b2e;color:#fff;box-shadow:0 8px 18px -10px rgba(9,20,36,.7);}
.spk-opcion:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through;}
.woocommerce div.product form.cart .reset_variations{font-size:13px;color:var(--muted);margin-top:6px;display:inline-block;}
.woocommerce div.product .woocommerce-variation-price{margin:4px 0 14px;}
.woocommerce div.product .woocommerce-variation-price .price{display:block;}
.spk-unitario{display:inline-block;margin-top:6px;font:500 14px var(--body);color:var(--muted);background:var(--soft);border-radius:8px;padding:6px 10px;}
.spk-unitario strong{color:#0d1b2e;}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart,.woocommerce div.product form.cart:not(.variations_form){display:flex;flex-wrap:wrap;align-items:center;gap:12px;}
.spk-qty-lbl{width:100%;font:700 12px var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);}
.woocommerce .quantity{display:inline-flex!important;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden;background:#fff;margin:0!important;}
.woocommerce .quantity .qty{width:56px;height:46px;border:none;text-align:center;font:700 16px var(--body);color:var(--tinta);-moz-appearance:textfield;background:transparent;}
.woocommerce .quantity .qty::-webkit-outer-spin-button,.woocommerce .quantity .qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.spk-qty-btn{width:42px;height:46px;border:none;background:var(--soft);font:700 20px/1 var(--body);color:var(--tinta);cursor:pointer;}
.spk-qty-btn:hover{background:rgba(24,233,217,.2);}
.woocommerce div.product form.cart .button{flex:1;min-width:200px;height:48px;}
.spk-medida-box{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:var(--r);background:linear-gradient(160deg,#0a1626,#0d1b2e);color:#fff;margin:4px 0 20px;}
.spk-medida-box .ic{flex:0 0 auto;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--grad-btn);}
.spk-medida-box .ic svg{width:24px;height:24px;stroke:var(--tinta-btn);}
.spk-medida-box strong{display:block;font:700 16px var(--disp);margin-bottom:3px;}
.spk-medida-box span{display:block;font-size:14px;color:rgba(255,255,255,.78);}
.spk-medida-box .acc{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.woocommerce div.product .product_meta{font-size:13.5px;color:var(--muted);display:grid;gap:4px;border-top:1px solid var(--line);padding-top:16px;}
.woocommerce div.product .product_meta a{color:#1f6fa8;}
.woocommerce div.product .woocommerce-tabs{margin-top:20px;}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 -1px!important;display:flex;gap:6px;}
.woocommerce div.product .woocommerce-tabs ul.tabs::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::before,.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:1px solid var(--line)!important;border-bottom:none!important;background:var(--soft)!important;border-radius:12px 12px 0 0!important;margin:0!important;padding:0!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:13px 20px!important;font:700 14px var(--disp)!important;color:var(--muted)!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:#fff!important;}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--tinta)!important;}
/* La clase .panel de las pestañas choca con el panel de cotización de la muestra: se neutraliza aquí */
.woocommerce div.product .woocommerce-tabs .panel{position:static!important;transform:none!important;width:auto!important;max-width:none!important;height:auto!important;
  top:auto!important;right:auto!important;z-index:auto!important;box-shadow:none!important;overflow:visible!important;transition:none!important;}
.woocommerce div.product .woocommerce-tabs .panel{background:#fff;border:1px solid var(--line);border-radius:0 var(--r) var(--r) var(--r);padding:26px 28px;margin:0!important;font-size:15.5px;line-height:1.75;color:var(--tinta-soft);}
.spk-ficha{list-style:none;margin:16px 0 0;display:grid;gap:8px;}
.spk-ficha li{padding-left:24px;position:relative;}
.spk-ficha li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border-radius:3px;background:var(--grad);}
.woocommerce table.shop_attributes{border:none;}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{border:none;border-bottom:1px solid var(--line);padding:12px 14px;font-style:normal;}
.woocommerce table.shop_attributes th{width:200px;color:var(--tinta);font-weight:700;}
.woocommerce table.shop_attributes tr:nth-child(even) td,.woocommerce table.shop_attributes tr:nth-child(even) th{background:var(--soft);}
.woocommerce div.product .related>h2,.woocommerce div.product .upsells>h2{font-family:var(--disp);font-size:28px;margin:40px 0 22px;}

/* ---------- Carrito y pago (bloques) ---------- */
.spk-pagina-tienda .wc-block-cart,.spk-pagina-tienda .wc-block-checkout{font-family:var(--body);}
.wc-block-components-main,.wc-block-components-sidebar{padding-top:6px;}
.wc-block-cart .wc-block-cart__totals-title,.wc-block-components-title,.wc-block-components-checkout-step__title{font-family:var(--disp)!important;font-weight:700!important;color:var(--tinta);}
.wc-block-components-sidebar .wc-block-components-panel,.wc-block-components-totals-wrapper,.wp-block-woocommerce-checkout-order-summary-block{border-color:var(--line)!important;}
.wp-block-woocommerce-checkout-order-summary-block,.wc-block-cart__sidebar .wp-block-woocommerce-cart-order-summary-block{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:6px 0;box-shadow:var(--sh-1);}
.wc-block-components-text-input input,.wc-block-components-combobox .wc-block-components-combobox-control input,.wc-blocks-components-select .wc-blocks-components-select__select,.wc-block-components-textarea{border-radius:var(--r-input)!important;border-color:#c9d9e4!important;}
.wc-block-components-text-input input:focus,.wc-blocks-components-select .wc-blocks-components-select__select:focus{box-shadow:0 0 0 2px rgba(24,233,217,.45)!important;border-color:var(--azul)!important;}
.wc-block-components-radio-control__option--checked-option-highlighted,.wc-block-components-radio-control-accordion-option--checked-option-highlighted{box-shadow:inset 0 0 0 2px var(--azul)!important;border-radius:var(--r)!important;}
.wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox]:checked{background:#0d1b2e;border-color:#0d1b2e;}
.wc-block-components-product-name{font-weight:700;color:var(--tinta)!important;}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,.wc-block-components-totals-footer-item .wc-block-components-totals-item__label{font-family:var(--disp);font-weight:800;}
.wc-block-cart-items__header{color:var(--muted);}
.wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{font-family:var(--disp);}

/* ---------- Carrito clásico, mi cuenta y formularios ---------- */
.woocommerce table.shop_table{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:#fff;border-collapse:separate;}
.woocommerce table.shop_table th{background:var(--soft);font:700 13px var(--body);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{border-color:var(--line)!important;padding:14px 16px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce-page form .form-row input.input-text{
  border:1px solid #c9d9e4;border-radius:var(--r-input);padding:12px 14px;font:15px var(--body);background:#fff;}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{outline:none;border-color:var(--azul);box-shadow:0 0 0 3px rgba(24,233,217,.25);}
.woocommerce form .form-row label{font-weight:600;font-size:13.5px;color:var(--tinta);}
.woocommerce form.login,.woocommerce form.register,.woocommerce form.checkout_coupon,.woocommerce form.lost_reset_password{border:1px solid var(--line)!important;border-radius:var(--r-lg)!important;background:#fff;box-shadow:var(--sh-1);padding:26px!important;}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:260px 1fr;gap:34px;align-items:start;}
.woocommerce-account .woocommerce>.woocommerce-notices-wrapper{grid-column:1/-1;}
.woocommerce-account:not(.logged-in) .woocommerce{display:block;}
.woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content{width:auto!important;float:none!important;}
.woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:10px;background:linear-gradient(160deg,#0a1626,#0d1b2e);border-radius:var(--r-lg);}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:12px 16px;border-radius:10px;color:rgba(255,255,255,.82);font:600 14.5px var(--body);}
.woocommerce-MyAccount-navigation ul li.is-active a,.woocommerce-MyAccount-navigation ul li a:hover{background:rgba(24,233,217,.14);color:var(--turquesa);}
.woocommerce-MyAccount-content{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px;box-shadow:var(--sh-1);}

/* ---------- Responsive ---------- */
@media(max-width:1100px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:900px){
  .woocommerce div.product{grid-template-columns:1fr;gap:28px;}
  .woocommerce div.product div.images{position:relative;top:auto;}
  .woocommerce-account .woocommerce{grid-template-columns:1fr;}
}
@media(max-width:780px){
  .woocommerce ul.products,.woocommerce-page ul.products,.woocommerce ul.products.columns-3{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
  .spk-card-bd{padding:12px 12px 14px;gap:6px;}
  .woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:14.5px!important;}
  .spk-card-precio{font-size:15px;}
  .spk-card-acc .button{font-size:11.5px!important;padding:11px 10px!important;}
  .spk-badge{font-size:9.5px;padding:5px 8px;}
  .ls.spk-tienda,.ls.spk-pagina{padding:36px 0 70px;}
  .woocommerce div.product form.cart{padding:16px;}
  .woocommerce div.product .woocommerce-tabs ul.tabs{overflow-x:auto;}
  .woocommerce div.product .woocommerce-tabs .panel{padding:20px;}
  .woocommerce .woocommerce-ordering,.woocommerce .woocommerce-result-count{float:none;}
}
@media(max-width:380px){.woocommerce ul.products,.woocommerce-page ul.products{grid-template-columns:1fr;}}
