/*
Theme Name: ICONIK
Theme URI: https://iconik.com.ar
Description: Child theme de Astra para ICONIK — accesorios mayoristas. Sistema de diseño "quiet luxury" de Gise (Altéa Digital Studio). Sharp 0px, Inter, paleta neutral.
Author: Altéa Digital Studio
Template: astra
Version: 1.0.0
Text Domain: iconik
*/

/* ============================================================
   ICONIK — DESIGN TOKENS (sistema de diseño de Gise)
   Fuente: DESIGN.md + code.html (Stitch, versión final = todo Inter)
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&display=swap');

:root {
  --ik-primary:#121212; --ik-charcoal:#262626; --ik-on-primary:#fff;
  --ik-background:#fff; --ik-soft-grey:#f5f5f5; --ik-warm-beige:#e8e2d9;
  --ik-secondary:#a89470; --ik-secondary-soft:#f7e0b7;
  --ik-on-surface:#1c1b1b; --ik-on-surface-variant:#444748;
  --ik-outline:#747878; --ik-outline-variant:#c4c7c7;
  --ik-surface-container:#f1edec; --ik-error:#ba1a1a;

  --ik-font-sans:'Inter',system-ui,-apple-system,sans-serif;
  --ik-font-serif:'Playfair Display',Georgia,serif; /* solo wordmark/logo */

  --ik-track-nav:0.15em; --ik-track-wide:0.2em; --ik-track-label:0.05em;

  --ik-container-max:1280px; --ik-gutter:24px;
  --ik-margin-desktop:64px; --ik-margin-tablet:32px; --ik-margin-mobile:20px;
  --ik-section-gap:120px;

  --ik-radius:0px; --ik-border:1px solid var(--ik-outline-variant);
  --ik-img-ratio:0.5625; /* 01/09/2026: 9:16 vertical, como la referencia que mando ICONIK (antes 0.67) */
}

/* ============================================================
   RESET — anula redondeos de Astra/Woo, tipografía base
   ============================================================ */
body.iconik, .iconik * { box-sizing:border-box; }
body.iconik, .iconik :where(button,input,select,a,div,img,.ast-button,.woocommerce *) {
  border-radius: var(--ik-radius) !important;
}
.iconik .ik-round { border-radius:9999px !important; }

body.iconik {
  font-family: var(--ik-font-sans);
  font-size:16px; line-height:24px;
  color: var(--ik-primary); background: var(--ik-background);
  overflow-x:hidden;
}
.iconik h1,.iconik h2,.iconik h3,.iconik .ik-headline {
  font-family: var(--ik-font-sans); font-weight:700;
  text-transform:uppercase; letter-spacing:var(--ik-track-wide); color:var(--ik-primary);
}
.iconik a { color:inherit; text-decoration:none; }

/* Astra: ocultar header/footer nativos por si quedan activos */
.iconik .site-header, .iconik .ast-above-header, .iconik .ast-below-header,
.iconik footer.site-footer { display:none !important; }

/* utilidades */
.ik-container{ max-width:var(--ik-container-max); margin-inline:auto; padding-inline:var(--ik-margin-desktop); }
.ik-nav-link{ font-size:12px; font-weight:500; text-transform:uppercase; letter-spacing:var(--ik-track-nav); }
.ik-label{ font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:var(--ik-track-label); color:var(--ik-on-surface-variant); }

/* ============================================================
   1. ANNOUNCEMENT BAR (texto deslizante)
   ============================================================ */
.ik-announce{ width:100%; background:var(--ik-soft-grey); height:40px; display:flex; align-items:center;
  overflow:hidden; white-space:nowrap; border-bottom:var(--ik-border); position:relative; z-index:60; }
.ik-announce__track{ display:flex; width:max-content; animation:ik-slide 55s linear infinite; will-change:transform; }
.ik-announce__track span{ font-size:12px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); color:var(--ik-on-surface-variant); white-space:nowrap; padding-right:64px; }
@keyframes ik-slide{ from{transform:translateX(0);} to{transform:translateX(-50%);} }

/* ============================================================
   2. HEADER (sticky, hamburguesa | logo centrado | search+cart)
   ============================================================ */
.ik-header{ position:sticky; top:0; z-index:50; background:rgba(255,255,255,.95);
  backdrop-filter:blur(12px); border-bottom:var(--ik-border); transition:box-shadow .3s; }
.ik-header.ik-scrolled{ box-shadow:0 1px 2px rgba(0,0,0,.05); }
.ik-header__inner{ display:flex; align-items:center; justify-content:space-between;
  height:80px; max-width:var(--ik-container-max); margin-inline:auto; padding-inline:var(--ik-margin-desktop); }
.ik-header__col{ flex:1; display:flex; align-items:center; }
.ik-header__col--right{ justify-content:flex-end; gap:24px; }
.ik-header__logo{ font-family:var(--ik-font-serif); font-size:24px; letter-spacing:.02em; }
.ik-header__logo img{ height:34px; width:auto; object-fit:contain; }
.ik-icon-btn{ background:none; border:0; cursor:pointer; padding:8px; position:relative; line-height:0; color:var(--ik-primary); }
.ik-icon-btn .material-symbols-outlined{ font-size:24px; color:var(--ik-primary); }
.ik-cart-count{ position:absolute; top:2px; right:0; background:var(--ik-primary); color:#fff;
  font-size:9px; font-weight:700; width:16px; height:16px; display:flex; align-items:center; justify-content:center; }

/* ============================================================
   3. SIDE MENU (off-canvas izquierda + overlay glass)
   ============================================================ */
.ik-sidenav{ position:fixed; inset-block:0; left:0; width:320px; max-width:85vw; background:#fff; z-index:100;
  transform:translateX(-100%); transition:transform .5s ease-in-out; border-right:var(--ik-border);
  box-shadow:6px 0 40px rgba(0,0,0,.12); display:flex; flex-direction:column; padding:48px; }
.ik-sidenav.ik-open{ transform:translateX(0); }
.ik-sidenav__head{ display:flex; justify-content:space-between; align-items:center; margin-bottom:48px; }
.ik-sidenav__brand{ font-family:var(--ik-font-serif); font-size:24px; }
.ik-sidenav nav{ display:flex; flex-direction:column; gap:24px; overflow-y:auto; }
.ik-sidenav nav a{ font-size:12px; text-transform:uppercase; letter-spacing:var(--ik-track-wide);
  color:var(--ik-on-surface-variant); transition:transform .3s, color .3s; }
.ik-sidenav nav a:hover{ transform:translateX(8px); color:var(--ik-primary); }
.ik-sidenav__pages{ margin-top:24px; padding-top:24px; border-top:var(--ik-border); display:flex; flex-direction:column; gap:20px; }
.ik-overlay{ position:fixed; inset:0; background:rgba(0,0,0,.2); backdrop-filter:blur(4px); z-index:90;
  opacity:0; pointer-events:none; transition:opacity .5s; }
.ik-overlay.ik-open{ opacity:1; pointer-events:auto; }

/* ============================================================
   4. BOTONES
   ============================================================ */
.ik-btn-primary{ display:inline-block; width:100%; text-align:center; background:var(--ik-primary); color:#fff;
  font-size:12px; text-transform:uppercase; letter-spacing:.3em; padding:22px 32px; border:0; cursor:pointer;
  transition:background .3s, transform .1s; }
.ik-btn-primary:hover{ background:var(--ik-charcoal); }
.ik-btn-primary:active{ transform:scale(.99); }
.ik-btn-ghost{ display:inline-block; background:transparent; color:var(--ik-primary); border:1px solid var(--ik-primary);
  font-size:12px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); padding:16px 32px; cursor:pointer;
  transition:background .3s,color .3s; }
.ik-btn-ghost:hover{ background:var(--ik-primary); color:#fff; }

/* ============================================================
   5. CATÁLOGO (archive) — título, tabs, grid
   ============================================================ */
.ik-archive-head{ text-align:center; padding-block:48px 16px; }
.ik-archive-head h1{ font-family:var(--ik-font-serif)!important; font-weight:400!important; font-size:56px!important;
  text-transform:none!important; letter-spacing:0!important; }
.ik-archive-head .ik-season{ font-size:11px; letter-spacing:var(--ik-track-wide); text-transform:uppercase; color:var(--ik-on-surface-variant); margin-top:8px; }
.ik-cat-bar{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;
  padding-block:20px; border-bottom:var(--ik-border); margin-bottom:48px; }
.ik-cat-tabs{ display:flex; gap:24px; flex-wrap:wrap; }
.ik-cat-tabs a{ font-size:12px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); color:var(--ik-on-surface-variant); padding-bottom:4px; }
.ik-cat-tabs a.ik-active,.ik-cat-tabs a:hover{ color:var(--ik-primary); border-bottom:1px solid var(--ik-primary); }
.ik-cat-tools{ display:flex; gap:24px; }
.ik-cat-tools button{ background:none; border:0; cursor:pointer; font-size:12px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); color:var(--ik-on-surface-variant); }

/* grid de productos (loop + relacionados) */
.iconik ul.products,.ik-grid{ display:grid!important; grid-template-columns:repeat(4,1fr)!important; gap:var(--ik-gutter)!important; margin:0!important; padding:0!important; list-style:none; }
.iconik ul.products li.product,.ik-card{ width:auto!important; margin:0!important; float:none!important; text-align:center; }
.iconik ul.products li.product::before{ display:none; }
.ik-card__img,.iconik ul.products li.product a img{ aspect-ratio:var(--ik-img-ratio); width:100%; object-fit:cover; object-position:center; /* 01/09/2026 (pedido ICONIK via Gise): cover para que la foto LLENE el rectangulo como en la referencia; mas grandes y parejas. Reemplaza el contain de Gise 20/07 (dejaba bandas blancas). Las miniaturas ya vienen 9:16 de 600px desde WooCommerce, asi que el recorte lo hace Woo al centro */
  background:var(--ik-surface-container); margin-bottom:24px!important; transition:transform .7s ease; }
.iconik ul.products li.product:hover img{ transform:scale(1.04); } /* zoom mas suave, con contain el 1.1 hacia desbordar */
.iconik ul.products li.product .woocommerce-loop-product__title,.ik-card__title{ font-size:12px!important; font-weight:600; text-transform:uppercase; letter-spacing:var(--ik-track-nav); padding:0!important; }
.iconik ul.products li.product .price,.ik-card__price{ font-size:18px!important; color:var(--ik-on-surface-variant)!important; font-weight:400!important; }
.iconik ul.products li.product .button{ display:none; } /* sin "añadir" en el loop, estilo editorial */
.ik-loadmore-wrap{ text-align:center; padding-block:80px; }

/* ============================================================
   6. SINGLE PRODUCT (ficha)
   ============================================================ */
.iconik .ik-single{ max-width:var(--ik-container-max); margin-inline:auto; padding-inline:var(--ik-margin-desktop); padding-block:48px; }
.ik-breadcrumb{ display:flex; gap:8px; align-items:center; margin-bottom:48px; font-size:11px; text-transform:uppercase; letter-spacing:.08em; color:var(--ik-on-surface-variant); }
.ik-breadcrumb .ik-current{ color:var(--ik-primary); font-weight:700; }
.ik-single__grid{ display:grid; grid-template-columns:7fr 5fr; gap:var(--ik-gutter); align-items:start; }
.ik-single__gallery img{ width:100%; object-fit:cover; }
.iconik .ik-single__summary{ position:sticky; top:128px; }
.iconik .ik-single__summary .product_title{ font-size:32px!important; font-weight:700; text-transform:uppercase; letter-spacing:var(--ik-track-wide); line-height:1.15; }
.iconik .ik-single__summary .price{ font-size:28px!important; font-weight:700!important; color:var(--ik-primary)!important; padding-block:16px; border-bottom:var(--ik-border); display:block; }
.ik-iva{ font-size:11px; color:var(--ik-on-surface-variant); letter-spacing:.05em; margin-left:8px; }
/* talles cuadrados / swatches (estilado base; swatches reales vía plugin de variaciones) */
.iconik .variations td.value select{ border:1px solid var(--ik-outline-variant)!important; padding:12px; text-transform:uppercase; }
.iconik .single_add_to_cart_button{ width:100%!important; background:var(--ik-primary)!important; color:#fff!important;
  text-transform:uppercase!important; letter-spacing:.3em!important; padding:22px!important; font-size:12px!important; margin-top:16px; }
.iconik .single_add_to_cart_button:hover{ background:var(--ik-charcoal)!important; }
.ik-accordion{ border-top:var(--ik-border); margin-top:32px; }
.ik-accordion details{ border-bottom:var(--ik-border); padding-block:16px; }
.ik-accordion summary{ display:flex; justify-content:space-between; align-items:center; cursor:pointer; list-style:none; font-size:11px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); }
.ik-accordion summary::-webkit-details-marker{ display:none; }
.ik-accordion .ik-acc-body{ padding-top:16px; font-size:14px; line-height:1.8; color:var(--ik-on-surface-variant); }
.ik-related{ border-top:var(--ik-border); margin-top:var(--ik-section-gap); padding-top:var(--ik-section-gap); }
.ik-related h2{ text-align:center; font-size:40px; letter-spacing:var(--ik-track-wide); margin-bottom:80px; }

/* ============================================================
   7. FOOTER (4 columnas) + WHATSAPP
   ============================================================ */
.ik-footer{ background:#fff; border-top:var(--ik-border); padding-block:80px; }
.ik-footer__cols{ max-width:var(--ik-container-max); margin-inline:auto; padding-inline:var(--ik-margin-desktop);
  display:grid; grid-template-columns:repeat(4,1fr); gap:48px; }
.ik-footer__title{ font-size:11px; text-transform:uppercase; letter-spacing:var(--ik-track-wide); margin-bottom:32px; }
.ik-footer__col nav{ display:flex; flex-direction:column; gap:20px; }
.ik-footer__col nav a{ color:var(--ik-on-surface-variant); font-size:16px; transition:color .3s; display:flex; align-items:center; gap:12px; }
.ik-footer__col nav a:hover{ color:var(--ik-primary); }
.ik-footer__map{ aspect-ratio:1; border:var(--ik-border); position:relative; overflow:hidden; background:var(--ik-surface-container); }
.ik-footer__map img{ width:100%; height:100%; object-fit:cover; }
.ik-footer__map iframe{ width:100%; height:100%; border:0; display:block; filter:grayscale(1) contrast(1.02); }
.ik-footer__pin{ position:absolute; bottom:16px; left:16px; right:16px; background:rgba(255,255,255,.95);
  padding:12px; font-size:10px; text-transform:uppercase; letter-spacing:var(--ik-track-nav); border:1px solid rgba(196,199,199,.3); font-weight:600; }
.ik-footer__social{ display:flex; gap:24px; }
.ik-footer__social a svg{ width:20px; height:20px; fill:var(--ik-on-surface-variant); transition:fill .3s; }
.ik-footer__social a:hover svg{ fill:var(--ik-primary); }
.ik-footer__copy{ text-align:center; border-top:var(--ik-border); padding-top:32px; margin-top:64px;
  font-size:10px; text-transform:uppercase; letter-spacing:var(--ik-track-wide); color:var(--ik-on-surface-variant); }
.ik-whatsapp{ position:fixed; bottom:24px; right:24px; z-index:80; display:flex; align-items:center; text-decoration:none; }
.ik-whatsapp__ico{ position:relative; flex:0 0 auto; width:58px; height:58px; border-radius:9999px;
  background:#25D366; display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 20px rgba(37,211,102,.32), 0 2px 6px rgba(0,0,0,.18);
  transition:transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease; }
.ik-whatsapp__ico svg{ width:30px; height:30px; fill:#fff; display:block; }
.ik-whatsapp__ico::after{ content:""; position:absolute; inset:-2px; border-radius:9999px;
  border:2px solid rgba(37,211,102,.55); pointer-events:none; animation:ikWaRing 2.6s ease-out infinite; }
@keyframes ikWaRing{ 0%{ transform:scale(1); opacity:.6; } 70%{ transform:scale(1.6); opacity:0; } 100%{ transform:scale(1.6); opacity:0; } }
.ik-whatsapp__label{ max-width:0; overflow:hidden; white-space:nowrap; opacity:0; box-sizing:border-box;
  font-family:"Inter", -apple-system, system-ui, sans-serif; font-size:13px; font-weight:500; letter-spacing:.01em; color:#0b1418;
  background:#fff; border-radius:9999px; box-shadow:0 4px 14px rgba(0,0,0,.14); padding:0; margin:0;
  transition:max-width .3s ease, opacity .25s ease, padding .3s ease, margin .3s ease; }
.ik-whatsapp:hover .ik-whatsapp__ico, .ik-whatsapp:focus-visible .ik-whatsapp__ico{
  transform:scale(1.06); box-shadow:0 10px 26px rgba(37,211,102,.4), 0 3px 8px rgba(0,0,0,.24); }
.ik-whatsapp:hover .ik-whatsapp__label, .ik-whatsapp:focus-visible .ik-whatsapp__label{
  max-width:180px; opacity:1; padding:10px 18px; margin-right:12px; }
@media (max-width:768px){ .ik-whatsapp{ bottom:20px; right:20px; } .ik-whatsapp__label{ display:none; } .ik-whatsapp__ico{ width:54px; height:54px; } }
@media (prefers-reduced-motion:reduce){ .ik-whatsapp__ico::after{ animation:none; opacity:0; } .ik-whatsapp__ico{ transition:none; } }

/* ============================================================
   8. WOOCOMMERCE — botones/badges genéricos a tokens
   ============================================================ */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  background:var(--ik-primary)!important; color:#fff!important; text-transform:uppercase!important; letter-spacing:var(--ik-track-nav)!important; border-radius:0!important; }
.woocommerce span.onsale{ background:var(--ik-secondary)!important; color:#fff!important; border-radius:0!important; }

/* ============================================================
   9. RESPONSIVE
   ============================================================ */
.material-symbols-outlined{ font-variation-settings:'FILL' 0,'wght' 300,'GRAD' 0,'opsz' 24; vertical-align:middle; }
@media (max-width:1024px){
  .ik-container,.ik-header__inner,.ik-footer__cols,.iconik .ik-single{ padding-inline:var(--ik-margin-tablet); }
}
@media (max-width:768px){
  .iconik ul.products,.ik-grid{ grid-template-columns:repeat(2,1fr)!important; }
  .ik-single__grid{ grid-template-columns:1fr; }
  .iconik .ik-single__summary{ position:static; }
  .ik-footer__cols{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  :root{ --ik-section-gap:72px; }
  .ik-container,.ik-header__inner,.ik-footer__cols,.iconik .ik-single{ padding-inline:var(--ik-margin-mobile); }
  .ik-archive-head h1{ font-size:36px!important; }
  .ik-related h2{ font-size:28px; }
}

/* ============================================================
   10. HOME (front-page.php) — hero, mayorista, categorías, newsletter
   ============================================================ */
/* Botón ghost claro (sobre fondos oscuros/imágenes) */
.ik-btn-ghost--light { color:#fff; border-color:#fff; }
.ik-btn-ghost--light:hover { background:#fff; color:var(--ik-primary); }

/* Hero slider */
.ik-hero { position:relative; width:100%; overflow:hidden; }
.ik-hero__track { display:flex; transition:transform 1s ease-in-out; }
.ik-hero__slide { position:relative; min-width:100%; aspect-ratio:16/9; background-size:cover; background-position:center;
  background-color:var(--ik-charcoal); display:flex; align-items:center; justify-content:center; }
.ik-hero__overlay { position:absolute; inset:0; background:rgba(0,0,0,.25); z-index:1; }
.ik-hero__content { position:relative; z-index:2; text-align:center; color:#fff; padding-inline:var(--ik-margin-mobile); }
.ik-hero__title { font-family:var(--ik-font-serif)!important; font-weight:400!important; font-size:var(--ik-display-lg);
  color:#fff!important; text-transform:uppercase; letter-spacing:var(--ik-track-wide); margin-bottom:24px; }
.ik-hero__arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:3; background:none; border:0; cursor:pointer;
  color:rgba(255,255,255,.85); opacity:.75; filter:drop-shadow(0 1px 6px rgba(0,0,0,.45)); transition:opacity .4s,color .3s; }
.ik-hero:hover .ik-hero__arrow { opacity:1; }
.ik-hero__arrow:hover { color:#fff; }
.ik-hero__arrow .material-symbols-outlined { font-size:40px; }
.ik-hero__arrow--left { left:32px; } .ik-hero__arrow--right { right:32px; }
.ik-hero__dots { position:absolute; bottom:40px; left:50%; transform:translateX(-50%); display:flex; gap:16px; z-index:3; }
.ik-hero__dot { height:2px; width:48px; border:0; cursor:pointer; background:rgba(255,255,255,.3); transition:background .5s; }
.ik-hero__dot.ik-active { background:#fff; }
.ik-hero-spacer { padding-block:48px; background:#fff; }
@media (max-width:768px){ .ik-hero__arrow .material-symbols-outlined{ font-size:30px; } .ik-hero__arrow--left{ left:6px; } .ik-hero__arrow--right{ right:6px; } }

/* Banda mayorista */
.ik-wholesale { position:relative; padding-block:96px; padding-inline:var(--ik-margin-desktop);
  background-size:cover; background-position:center; overflow:hidden; }
.ik-wholesale__overlay { position:absolute; inset:0; background:rgba(0,0,0,.6); z-index:0; }
.ik-wholesale__inner { position:relative; z-index:1; max-width:768px; margin-inline:auto; text-align:center; color:#fff; }
.ik-wholesale__title { font-family:var(--ik-font-serif)!important; font-weight:400!important; font-size:clamp(30px,4.5vw,48px);
  line-height:1.15; text-transform:none!important; letter-spacing:0!important; color:#fff!important; margin-bottom:24px; }
.ik-wholesale__text { font-size:14px; line-height:1.8; color:rgba(255,255,255,.85); margin-bottom:40px; max-width:600px; margin-inline:auto; }

/* Carrusel de categorías */
.ik-cats { padding-block:var(--ik-section-gap); overflow:hidden; }
.ik-cats__head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:48px;
  padding-inline:var(--ik-margin-desktop); }
.ik-cats__title { font-family:var(--ik-font-serif)!important; font-weight:400!important; font-size:var(--ik-headline-lg);
  text-transform:none!important; letter-spacing:0!important; }
.ik-cats__nav { display:flex; gap:16px; }
.ik-cats__arrow { padding:4px; border:1px solid var(--ik-outline-variant); background:none; cursor:pointer; transition:border-color .3s; }
.ik-cats__arrow:hover { border-color:var(--ik-primary); }
.ik-cats__track { display:flex; gap:var(--ik-gutter); padding-inline:var(--ik-margin-desktop);
  overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
.ik-cats__track::-webkit-scrollbar { display:none; }
.ik-cat-card { min-width:320px; scroll-snap-align:start; }
.ik-cat-card__img { aspect-ratio:2/3; overflow:hidden; margin-bottom:24px; background:var(--ik-surface-container); }
.ik-cat-card__img img { width:100%; height:100%; object-fit:cover; transition:transform 1s ease; }
.ik-cat-card:hover .ik-cat-card__img img { transform:scale(1.05); }
.ik-cat-card__title { font-size:var(--ik-nav-link); font-weight:500; text-transform:uppercase;
  letter-spacing:var(--ik-track-nav); text-align:center; transition:color .3s; }
@media (max-width:768px){ .ik-cats__head { padding-inline:var(--ik-margin-mobile); } .ik-cats__track { padding-inline:var(--ik-margin-mobile); } .ik-cat-card { min-width:75vw; } }

/* Newsletter */
.ik-newsletter { position:relative; padding-block:64px; padding-inline:var(--ik-margin-mobile);
  background:var(--ik-primary); background-size:cover; background-position:center; overflow:hidden; }
.ik-newsletter__overlay { position:absolute; inset:0; background:rgba(0,0,0,.4); z-index:0; }
.ik-newsletter__inner { position:relative; z-index:1; max-width:var(--ik-container-max); margin-inline:auto;
  display:flex; flex-direction:column; align-items:center; text-align:center; color:#fff; }
.ik-newsletter__title { font-family:var(--ik-font-serif)!important; font-weight:400!important; font-size:var(--ik-headline-lg);
  text-transform:none!important; letter-spacing:0!important; color:#fff!important; margin-bottom:16px; }
.ik-newsletter__text { font-size:var(--ik-body-md); opacity:.9; margin-bottom:40px; max-width:512px; }
.ik-newsletter__form { width:100%; max-width:448px; border-bottom:1px solid rgba(255,255,255,.3); padding-bottom:8px; display:flex; align-items:center; }
.ik-newsletter__form input { background:transparent; border:0; width:100%; color:#fff; outline:none;
  font-size:var(--ik-label-sm); text-transform:uppercase; letter-spacing:var(--ik-track-nav); }
.ik-newsletter__form input::placeholder { color:rgba(255,255,255,.7); }
.ik-newsletter__form button { background:none; border:0; color:#fff; cursor:pointer; transition:transform .3s; }
.ik-newsletter__form button:hover { transform:translateX(4px); }


/* ============================================================
   11. FIX layout full-width + hero fundido (evita overflow horizontal)
   ============================================================ */
html, body { overflow-x: hidden; max-width: 100%; }
.ik-home { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); overflow-x: hidden; }
.ik-hero { position: relative; width: 100%; overflow: hidden; aspect-ratio: 16/9; background-color: var(--ik-charcoal); }
.ik-hero__track { position: absolute; inset: 0; display: block; transform: none !important; }
.ik-hero__slide { position: absolute; inset: 0; min-width: 0; opacity: 0; transition: opacity 1s ease-in-out; display: flex; align-items: center; justify-content: center; background-size: cover; background-position: center; }
.ik-hero__slide.ik-active { opacity: 1; }
@media (max-width:768px){ .ik-hero { aspect-ratio: 3/4; } }

.ik-hero__slide:first-child { opacity: 1; }

/* === Ajustes UI: ocultar Asistente CAST + separar back-to-top del WhatsApp === */
#aubLauncher, #aubPanel { display: none !important; }
#ast-scroll-top.ast-scroll-top-icon, #ast-scroll-top { bottom: 96px !important; right: 20px !important; z-index: 70 !important; }


/* === Credito Altea en footer === */
.ik-footer__by a { color: var(--ik-gold, #A89470); text-decoration: none; letter-spacing: .04em; }
.ik-footer__by a:hover { text-decoration: underline; }


/* === Video assets del home (hero + categorias) â€” Gise === */
.ik-hero__slide{ position:absolute; inset:0; overflow:hidden; }
.ik-hero__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.ik-hero__slide .ik-hero__overlay{ position:absolute; inset:0; z-index:1; }
.ik-hero__slide .ik-hero__content{ position:relative; z-index:2; }
.ik-cat-card__img{ position:relative; overflow:hidden; }
.ik-cat-card__img video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }


/* === Catalogo / archivo de categoria (Gise) === */
.ik-catalog{ max-width:1440px; margin:0 auto; padding:0 4vw 90px; }
.ik-catalog__head{ text-align:center; padding:64px 0 26px; }
.ik-catalog__title{ font-family:'Cormorant Garamond','Playfair Display',Georgia,serif !important; font-weight:600 !important; text-transform:uppercase; font-size:clamp(2.2rem,5vw,3.4rem); letter-spacing:.06em; margin:0; }
.ik-catalog__sub{ font-size:.7rem; letter-spacing:.34em; text-transform:uppercase; color:#a89c91; margin:8px 0 0; }
.ik-catalog__bar{ display:flex; justify-content:center; align-items:center; gap:14px; flex-wrap:wrap; margin-bottom:0; }
.ik-catalog__tabs{ display:flex; gap:13px; flex-wrap:wrap; justify-content:center; }
.ik-catalog__tabs a{ font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:#7a6f65; text-decoration:none; padding-bottom:4px; border-bottom:1px solid transparent; transition:.2s; }
.ik-catalog__tabs a.ik-active,.ik-catalog__tabs a:hover{ color:#1a1a1a; border-color:#1a1a1a; }
.ik-catalog__tools{ display:flex; gap:24px; justify-content:flex-start; border-top:1px solid #ece7e1; padding-top:18px; margin-top:18px; margin-bottom:28px; }
.ik-catalog__tool{ background:none; border:0; cursor:pointer; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; color:#1a1a1a; display:inline-flex; align-items:center; gap:6px; }
.ik-catalog__tool .material-symbols-outlined{ font-size:18px; }
/* P11 21-ago (Gise): mas aire entre tarjetas ahora que estan las pastillas de color */
.ik-catalog__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:56px 28px; }
.ik-prod-card{ display:block; text-decoration:none; color:inherit; }
.ik-prod-card__img{ position:relative; aspect-ratio:9/16; overflow:hidden; background:#f3efea; } /* 01/09/2026 (pedido ICONIK via Gise): de 3/4 a 9/16 vertical, como la referencia que mandaron: fotos mas grandes y rectangulares. El img ya usa object-fit:cover */
.ik-prod-card__img img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.ik-prod-card:hover .ik-prod-card__img img{ transform:scale(1.04); }
.ik-prod-card__name{ font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; font-weight:500; margin:12px 0 4px; }
.ik-prod-card__price{ font-size:.8rem; color:#7a6f65; }
/* P11 21-ago (pedido Gise): paleta de colores disponibles debajo de cada tarjeta */
.ik-prod-card__dots{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px; margin-top:9px; }
.ik-prod-card__dot{ width:11px; height:11px; border-radius:50%; border:1px solid rgba(0,0,0,.16); box-shadow:inset 0 1px 2px rgba(0,0,0,.10); display:inline-block; }
.ik-prod-card__dot-more{ font-size:.62rem; letter-spacing:.06em; color:#9a8f84; line-height:1; }
.ik-catalog__more{ text-align:center; margin-top:52px; }
.ik-catalog__empty{ grid-column:1/-1; text-align:center; padding:70px 0; color:#a89c91; }
@media(max-width:980px){ .ik-catalog__grid{ grid-template-columns:repeat(2,1fr); } }


/* === Pagina de producto (Gise) === */
.ik-product{ max-width:1440px; margin:0 auto; padding:40px 4vw 0; }
.ik-product__crumbs{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-bottom:44px;
  font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; color:#7a6f65; }
.ik-product__crumbs a{ color:inherit; text-decoration:none; transition:color .2s; }
.ik-product__crumbs a:hover{ color:var(--ik-primary); }
.ik-product__crumbs span{ font-size:.6rem; }
.ik-product__crumbs strong{ color:var(--ik-primary); font-weight:700; }

.ik-product__grid{ display:grid; grid-template-columns:7fr 5fr; gap:48px; align-items:start; }
.ik-product__main{ aspect-ratio:3/4; overflow:hidden; background:#f3efea; }
.ik-product__main img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s ease; }
.ik-product__main:hover img{ transform:scale(1.05); }
.ik-product__thumbs{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:16px; }
.ik-product__thumb{ aspect-ratio:3/4; overflow:hidden; background:#f3efea; }
.ik-product__thumb img{ width:100%; height:100%; object-fit:cover; display:block; }

.ik-product__panel{ position:sticky; top:128px; }
.ik-product__head{ border-bottom:1px solid var(--ik-outline-variant); padding-bottom:28px; margin-bottom:28px; }
.ik-product__title{ font-size:clamp(1.3rem,2.4vw,1.9rem); letter-spacing:var(--ik-track-wide); line-height:1.35; margin:0 0 14px; }
.ik-product__price{ font-size:1.55rem; font-weight:700; color:var(--ik-primary); margin:0; }
.ik-iva{ font-size:.62rem; font-weight:600; letter-spacing:var(--ik-track-label); text-transform:uppercase;
  color:#7a6f65; vertical-align:middle; margin-left:6px; }

/* form nativo de WooCommerce estilizado (variaciones, qty, boton) */
.ik-product__buy form.cart{ display:flex; flex-direction:column; gap:20px; }
.ik-product__buy table.variations{ width:100%; border:0; margin:0; }
.ik-product__buy table.variations td,.ik-product__buy table.variations th{ border:0; padding:6px 0; vertical-align:middle; }
.ik-product__buy table.variations label{ font-size:.68rem; font-weight:600; letter-spacing:.14em;
  text-transform:uppercase; color:#7a6f65; }
.ik-product__buy select{ -webkit-appearance:none; appearance:none; width:100%; background:transparent;
  border:0; border-bottom:1px solid var(--ik-outline-variant); padding:10px 2px; font-size:.74rem;
  letter-spacing:.12em; text-transform:uppercase; color:var(--ik-primary); cursor:pointer; transition:border-color .2s; }
.ik-product__buy select:focus{ outline:none; border-color:var(--ik-primary); }
.ik-product__buy .reset_variations{ font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; color:#7a6f65; }
.ik-product__buy .woocommerce-variation-price .price{ font-size:1.1rem; font-weight:700; color:var(--ik-primary); }
.ik-product__buy .quantity input.qty{ width:84px; padding:14px 8px; text-align:center; background:transparent;
  border:1px solid var(--ik-outline-variant); font-size:.85rem; }
.ik-product__buy .quantity input.qty:focus{ outline:none; border-color:var(--ik-primary); }
.ik-product__buy .single_add_to_cart_button{ width:100%; background:var(--ik-primary); color:var(--ik-on-primary);
  border:0; padding:22px 16px; font-size:12px; font-weight:500; letter-spacing:.3em; text-transform:uppercase;
  cursor:pointer; transition:background .3s, transform .1s; }
.ik-product__buy .single_add_to_cart_button:hover{ background:var(--ik-charcoal); }
.ik-product__buy .single_add_to_cart_button:active{ transform:scale(.99); }
.ik-product__buy .single_add_to_cart_button.disabled{ opacity:.4; cursor:not-allowed; }
.ik-product__buy p.stock{ font-size:.68rem; letter-spacing:.12em; text-transform:uppercase; color:#7a6f65; }
.ik-product__buy p.stock.out-of-stock{ color:var(--ik-error); }

/* descripcion + acordeones */
.ik-product__info{ margin-top:32px; padding-top:28px; border-top:1px solid var(--ik-outline-variant); }
.ik-product__desc p{ font-size:.95rem; line-height:1.75; color:var(--ik-on-surface-variant); margin:0 0 14px; }
.ik-product__acc{ margin-top:18px; border-top:1px solid var(--ik-outline-variant); }
.ik-acc{ border-bottom:1px solid var(--ik-outline-variant); padding:18px 0; }
.ik-acc summary{ display:flex; justify-content:space-between; align-items:center; cursor:pointer;
  list-style:none; font-size:.7rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; color:var(--ik-primary); }
.ik-acc summary::-webkit-details-marker{ display:none; }
.ik-acc summary .material-symbols-outlined{ font-size:20px; transition:transform .3s; }
.ik-acc[open] summary .material-symbols-outlined{ transform:rotate(180deg); }
.ik-acc__body{ padding-top:16px; font-size:.86rem; line-height:1.9; color:var(--ik-on-surface-variant); }
.ik-acc__body p{ margin:0 0 10px; }
.ik-acc__body ul{ margin:0; padding-left:18px; }

/* relacionados */
.ik-product__related{ padding:var(--ik-section-gap) 0 90px; margin-top:var(--ik-section-gap);
  border-top:1px solid var(--ik-outline-variant); }
.ik-product__related-title{ text-align:center; font-size:clamp(1.2rem,2.2vw,1.7rem);
  letter-spacing:var(--ik-track-wide); margin:0 0 64px; }

/* notices de Woo (agregado al carrito, errores) */
.ik-product .woocommerce-message,.ik-product .woocommerce-error,.ik-product .woocommerce-info{
  border:1px solid var(--ik-outline-variant); border-left:2px solid var(--ik-primary); background:var(--ik-soft-grey);
  padding:14px 18px; margin-bottom:28px; font-size:.78rem; letter-spacing:.06em; list-style:none; }

@media (max-width:900px){
  .ik-product__grid{ grid-template-columns:1fr; gap:32px; }
  .ik-product__panel{ position:static; }
  .ik-product__crumbs{ margin-bottom:24px; }
}


/* ============================================================
   12. PÁGINAS INFO (Quiénes somos, Cómo comprar, Seguimiento,
   FAQs, Políticas de cambio) — sistema editorial .ikp
   Tokens del theme + tipografía Stitch en px explícitos.
   ============================================================ */
.ikp{ max-width:var(--ik-container-max); margin-inline:auto; padding-inline:var(--ik-margin-desktop); color:var(--ik-primary); }
.ikp *{ box-sizing:border-box; }

/* tipografía del sistema (Stitch) */
.ikp-display{ font-family:var(--ik-font-serif); font-weight:400; font-size:48px; line-height:54px; letter-spacing:-.02em; text-transform:none; color:var(--ik-primary); margin:0; }
.ikp-h2{ font-family:var(--ik-font-serif); font-weight:400; font-size:40px; line-height:48px; text-transform:none; letter-spacing:0; color:var(--ik-primary); margin:0; }
.ikp-h3{ font-family:var(--ik-font-serif); font-weight:400; font-size:24px; line-height:32px; text-transform:none; letter-spacing:0; color:var(--ik-primary); margin:0; }
.ikp-lead{ font-family:var(--ik-font-sans); font-weight:400; font-size:18px; line-height:28px; color:var(--ik-on-surface-variant); margin:0; }
.ikp-body{ font-family:var(--ik-font-sans); font-weight:400; font-size:16px; line-height:24px; color:var(--ik-on-surface-variant); margin:0; }
.ikp-label{ font-family:var(--ik-font-sans); font-weight:600; font-size:11px; line-height:14px; letter-spacing:.05em; text-transform:uppercase; color:var(--ik-on-surface-variant); }
.ikp-num{ font-family:var(--ik-font-serif); font-weight:400; font-size:64px; line-height:1; color:var(--ik-outline-variant); display:block; }

/* hero de página (encabezado) */
.ikp-hero{ padding-block:96px 0; }
.ikp-hero--center{ text-align:center; }
.ikp-hero--center .ikp-lead{ margin-inline:auto; max-width:640px; }
.ikp-hero__lead{ margin-top:24px; max-width:560px; }

/* secciones / divisores */
.ikp-sec{ padding-block:80px; }
.ikp-rule{ border:0; border-top:var(--ik-border); margin:0; }

/* Quiénes somos — 2 columnas */
.ikp-about{ display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:start; padding-block:64px; }
.ikp-about__media{ aspect-ratio:3/4; overflow:hidden; background:var(--ik-surface-container); border:var(--ik-border); }
.ikp-about__media img{ width:100%; height:100%; object-fit:cover; display:block; filter:grayscale(1) contrast(1.02); }
.ikp-about__text{ display:flex; flex-direction:column; gap:28px; padding-top:8px; }

/* fila de valores */
.ikp-values{ display:grid; grid-template-columns:repeat(4,1fr); gap:32px; padding-block:40px; border-block:var(--ik-border); }
.ikp-values span{ font-family:var(--ik-font-sans); font-weight:500; font-size:12px; letter-spacing:.15em; text-transform:uppercase; color:var(--ik-on-surface-variant); text-align:center; }

/* CTA box gris (Quiénes somos) */
.ikp-ctabox{ background:var(--ik-surface-container); padding:64px 24px; text-align:center; margin-block:72px; }
.ikp-ctabox__title{ font-family:var(--ik-font-sans); font-size:28px; line-height:1.2; margin:0 0 8px; }
.ikp-ctabox__min{ font-family:var(--ik-font-sans); font-style:normal; font-size:22px; color:var(--ik-on-surface-variant); margin:0 0 32px; }

/* pasos en grid (Cómo comprar) */
.ikp-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:56px 32px; padding-block:72px; }
.ikp-step__num{ font-family:var(--ik-font-serif); font-size:56px; line-height:1; color:var(--ik-outline-variant); display:block; margin-bottom:16px; }
.ikp-step__title{ font-family:var(--ik-font-serif); font-size:22px; line-height:1.25; margin:0 0 12px; color:var(--ik-primary); }

/* pasos centrados (Seguimiento) */
.ikp-track{ max-width:620px; margin-inline:auto; }
.ikp-track__item{ text-align:center; padding-block:40px; border-top:var(--ik-border); }
.ikp-track__item:first-child{ border-top:0; }
.ikp-track__num{ font-family:var(--ik-font-sans); font-weight:600; font-size:12px; letter-spacing:.15em; color:var(--ik-on-surface-variant); display:block; margin-bottom:16px; }
.ikp-track__title{ font-family:var(--ik-font-serif); font-size:24px; margin:0 0 16px; }
.ikp-track__title + .ikp-body{ max-width:520px; margin-inline:auto; }

/* notas importantes (Cómo comprar) */
.ikp-notes{ max-width:760px; }
.ikp-notes__h{ font-family:var(--ik-font-serif); font-size:24px; margin:0; padding-bottom:20px; border-bottom:var(--ik-border); }
.ikp-notes__item{ padding-block:24px; border-bottom:var(--ik-border); display:flex; gap:10px; }
.ikp-notes__item::before{ content:"•"; color:var(--ik-on-surface-variant); }

/* CTA centrado con botón (Seguimiento / Políticas) */
.ikp-cta{ text-align:center; padding-block:96px; }
.ikp-cta__title{ font-family:var(--ik-font-serif); font-size:36px; line-height:1.2; margin:0 0 32px; }
.ikp-wa{ display:inline-flex; align-items:center; gap:12px; background:var(--ik-primary); color:#fff; font-size:12px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; padding:20px 48px; transition:background .3s; }
.ikp-wa:hover{ background:var(--ik-charcoal); }
.ikp-wa .material-symbols-outlined{ font-size:18px; }

/* FAQs — acordeón agrupado por categoría */
.ikp-faqs{ padding-block:56px 0; }
.ikp-faq-group{ display:grid; grid-template-columns:200px 1fr; gap:32px; padding-top:32px; }
.ikp-faq-group__label{ font-family:var(--ik-font-sans); font-weight:500; font-size:12px; letter-spacing:.15em; text-transform:uppercase; color:var(--ik-outline); padding-top:28px; }
.ikp-faq-list{ display:flex; flex-direction:column; }
.ikp-faq{ border-top:var(--ik-border); padding:0; }
.ikp-faq:last-child{ border-bottom:var(--ik-border); }
.ikp-faq summary{ display:flex; justify-content:space-between; align-items:center; gap:24px; cursor:pointer; list-style:none; padding:28px 0; font-family:var(--ik-font-sans); font-weight:500; font-size:16px; letter-spacing:.04em; text-transform:uppercase; color:var(--ik-primary); }
.ikp-faq summary::-webkit-details-marker{ display:none; }
.ikp-faq summary .material-symbols-outlined{ font-size:22px; color:var(--ik-on-surface-variant); transition:transform .3s; flex:0 0 auto; }
.ikp-faq[open] summary .material-symbols-outlined{ transform:rotate(180deg); }
.ikp-faq__a{ padding:0 0 28px; max-width:680px; }

/* Políticas — 4 bloques en grid 2col con bordes editoriales */
.ikp-policy{ display:grid; grid-template-columns:1fr 1fr; border-top:var(--ik-border); }
.ikp-policy__cell{ padding:48px; border-bottom:var(--ik-border); transition:background .5s; }
.ikp-policy__cell:nth-child(odd){ border-right:var(--ik-border); }
.ikp-policy__cell:hover{ background:var(--ik-soft-grey); }
.ikp-policy__num{ font-family:var(--ik-font-sans); font-weight:600; font-size:11px; letter-spacing:.05em; color:var(--ik-outline-variant); display:block; margin-bottom:16px; }

/* requisitos (lista check) */
.ikp-reqs{ display:grid; grid-template-columns:5fr 7fr; gap:24px; padding-block:96px; }
.ikp-reqs__title{ position:sticky; top:96px; }
.ikp-req{ display:flex; gap:16px; padding-bottom:24px; border-bottom:var(--ik-border); margin-bottom:24px; }
.ikp-req .material-symbols-outlined{ color:var(--ik-outline); flex:0 0 auto; }
.ikp-req__t{ font-family:var(--ik-font-sans); font-weight:500; font-size:16px; text-transform:uppercase; letter-spacing:.04em; color:var(--ik-primary); margin:0 0 6px; }

/* disclaimer destacado */
.ikp-disclaimer{ background:var(--ik-surface-container); border:var(--ik-border); padding:80px 24px; text-align:center; margin-bottom:96px; }
.ikp-disclaimer p{ font-family:var(--ik-font-serif); font-size:24px; line-height:1.5; color:var(--ik-on-surface); max-width:640px; margin:0 auto; }

/* responsive páginas info */
@media (max-width:1024px){
  .ikp{ padding-inline:var(--ik-margin-tablet); }
}
@media (max-width:768px){
  .ikp-display{ font-size:32px; line-height:40px; }
  .ikp-h2{ font-size:28px; line-height:36px; }
  .ikp-hero{ padding-block:56px 0; }
  .ikp-about{ grid-template-columns:1fr; gap:32px; }
  .ikp-values{ grid-template-columns:1fr 1fr; gap:24px; }
  .ikp-steps{ grid-template-columns:1fr 1fr; gap:40px 24px; }
  .ikp-faq-group{ grid-template-columns:1fr; gap:8px; }
  .ikp-faq-group__label{ padding-top:0; }
  .ikp-policy{ grid-template-columns:1fr; }
  .ikp-policy__cell{ padding:36px 0; border-right:0 !important; }
  .ikp-reqs{ grid-template-columns:1fr; gap:32px; padding-block:56px; }
  .ikp-reqs__title{ position:static; }
  .ikp-cta__title{ font-size:28px; }
}
@media (max-width:520px){
  .ikp{ padding-inline:var(--ik-margin-mobile); }
  .ikp-values{ grid-template-columns:1fr; }
  .ikp-steps{ grid-template-columns:1fr; }
}


/* ============================================================
   3b. MENU LATERAL - arbol de categorias jerarquico (acordeon)
   ============================================================ */
.ik-sidenav nav{ flex:1 1 auto; min-height:0; overflow-y:auto; }
.ik-nav__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:24px; }
.ik-nav__list--l1{ gap:14px; margin-top:14px; padding-left:16px; border-left:1px solid var(--ik-border); }
.ik-nav__list--l2{ gap:12px; margin-top:12px; padding-left:14px; }
.ik-nav__item{ display:flex; flex-direction:column; }
.ik-nav__row{ display:flex; align-items:center; justify-content:space-between; gap:8px; }
.ik-nav__link{ flex:1 1 auto; }
.ik-nav__list--l1 .ik-nav__link{ font-size:11px; color:var(--ik-on-surface-variant); letter-spacing:var(--ik-track-nav); }
.ik-nav__list--l2 .ik-nav__link{ font-size:10px; }
.ik-nav__toggle{ background:none; border:0; cursor:pointer; padding:2px 4px; line-height:0; color:var(--ik-on-surface-variant); transition:transform .35s, color .3s; flex:0 0 auto; }
.ik-nav__toggle .material-symbols-outlined{ font-size:18px; }
.ik-nav__toggle:hover{ color:var(--ik-primary); }
.ik-nav__item.ik-open > .ik-nav__row .ik-nav__toggle{ transform:rotate(180deg); }
.ik-nav__sub{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s ease; }
.ik-nav__sub > div{ overflow:hidden; min-height:0; }
.ik-nav__item.ik-open > .ik-nav__sub{ grid-template-rows:1fr; }


/* ============================================================
   FIX overlap hero: el contenido (texto + boton) NO hace crossfade.
   Solo el fondo/video se funde, asi nunca se ven dos textos a la vez.
   ============================================================ */
.ik-hero__slide .ik-hero__content{ transition: none; }
.ik-hero__slide:not(.ik-active) .ik-hero__content{ opacity: 0; }
.ik-hero__slide.ik-active .ik-hero__content{ opacity: 1; }


/* ============================================================
   FIXES (Gise): contraste botones info, foto local en color, logo menu
   ============================================================ */
.iconik a.ikp-wa, .iconik a.ik-btn-primary{ color:#fff; }
.iconik a.ikp-wa .material-symbols-outlined{ color:#fff; }
.ikp-about__media img{ filter:none; }
.ik-sidenav__brand a{ display:inline-block; line-height:0; }
.ik-sidenav__brand .custom-logo{ width:150px; height:auto; display:block; }


/* Banner (imagen destacada Astra) en paginas info: tamano de banner, no gigante. */
#main:has(.ikp) .ast-single-post-featured-section.post-thumb{ max-height:480px; overflow:hidden; margin-bottom:0; }
#main:has(.ikp) .ast-single-post-featured-section.post-thumb img{ width:100%; height:480px; object-fit:cover; object-position:center; display:block; }


/* Footer: distancia entre columnas mas proporcionada (Gise #5) */
.ik-footer__cols{
  max-width: 1200px;
  margin-inline: auto;
  padding-inline: 0;
  column-gap: 64px;
  align-items: start;
}


/* === Ajustes Gise: titulo info, barra menu, mapa color, redes color === */
#main:has(.ikp) .entry-title { display: none; }
#ik-sidenav::-webkit-scrollbar, #ik-sidenav ::-webkit-scrollbar { width: 5px; height: 5px; }
#ik-sidenav::-webkit-scrollbar-track, #ik-sidenav ::-webkit-scrollbar-track { background: transparent; }
#ik-sidenav::-webkit-scrollbar-thumb, #ik-sidenav ::-webkit-scrollbar-thumb { background: rgba(0,0,0,.12); border-radius: 10px; }
#ik-sidenav::-webkit-scrollbar-thumb:hover, #ik-sidenav ::-webkit-scrollbar-thumb:hover { background: rgba(0,0,0,.22); }
#ik-sidenav, #ik-sidenav * { scrollbar-width: thin; scrollbar-color: rgba(0,0,0,.12) transparent; }
.ik-footer__map iframe { filter: none !important; }
.ik-footer__social a[aria-label="Facebook"] svg, .ik-footer__social a[aria-label="Facebook"] svg path { fill: #1877F2; }
.ik-footer__social a[aria-label="Instagram"] svg, .ik-footer__social a[aria-label="Instagram"] svg path { fill: #E4405F; }
.ik-footer__social a[aria-label="TikTok"] svg, .ik-footer__social a[aria-label="TikTok"] svg path { fill: #010101; }


/* === Responsive mobile/tablet (Gise): hero, categorias, footer === */
@media (max-width: 1024px) {
  .ik-footer__cols { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 767px) {
  .ik-hero { aspect-ratio: auto !important; height: 72vh !important; min-height: 460px !important; }
  .ik-hero__track, .ik-hero__slide { height: 100% !important; }
  .ik-hero__slide img, .ik-hero__slide video { width: 100% !important; height: 100% !important; object-fit: cover !important; }
  .ik-hero__arrow { top: 50% !important; bottom: auto !important; transform: translateY(-50%) !important; background: rgba(0,0,0,.3) !important; border-radius: 50% !important; width: 38px !important; height: 38px !important; display: flex !important; align-items: center !important; justify-content: center !important; padding: 0 !important; }
  .ik-hero__arrow:focus, .ik-hero__arrow:active, .ik-hero__arrow:hover { background: rgba(0,0,0,.3) !important; }
  .ik-hero__arrow--left { left: 10px !important; right: auto !important; }
  .ik-hero__arrow--right { right: 10px !important; left: auto !important; }
  .ik-hero__dots { position: absolute !important; left: 0 !important; right: 0 !important; bottom: 14px !important; top: auto !important; }
  .ik-cat-card { min-width: 43vw !important; width: 43vw !important; }
}
@media (max-width: 640px) {
  .ik-footer__cols { grid-template-columns: 1fr !important; gap: 30px !important; }
  .ik-footer__map { width: 100% !important; max-width: 260px; }
  .ik-footer, .ik-footer * { overflow-wrap: anywhere; }
}


/* === WooCommerce Mi Cuenta: titulos de direccion no cortar palabras === */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3,
.woocommerce-Address-title h2,
.woocommerce-Address-title h3 {
  font-size: 20px !important;
  letter-spacing: .08em !important;
  line-height: 1.35 !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}


/* === Mobile fixes v2 (Gise): footer padding + hero apaisado === */
@media (max-width: 640px) {
  .ik-footer__cols { padding-left: 22px !important; padding-right: 22px !important; max-width: 100% !important; box-sizing: border-box !important; }
  .ik-footer__map { max-width: 100% !important; width: 100% !important; }
}
@media (max-width: 767px) {
  .ik-hero { aspect-ratio: 3 / 2 !important; height: auto !important; min-height: 0 !important; }
  .ik-hero__track { height: 100% !important; }
  .ik-hero__slide { height: 100% !important; background-size: cover !important; background-position: center center !important; }
  .ik-hero__slide video, .ik-hero__slide img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center center !important; }
}


/* === Mobile fixes v3 (Gise): footer sin overflow + hero banner completo === */
@media (max-width: 640px) {
  html, body { overflow-x: hidden !important; }
  .ik-footer__cols { grid-template-columns: 1fr !important; gap: 26px !important; padding-left: 20px !important; padding-right: 20px !important; max-width: 100% !important; box-sizing: border-box !important; }
  .ik-footer__col { min-width: 0 !important; }
  .ik-footer__map { width: 100% !important; max-width: 100% !important; }
  .ik-footer__map iframe { width: 100% !important; max-width: 100% !important; border: 0 !important; }
  .ik-footer__copy { padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; max-width: 100% !important; }

  /* P11 22-ago (Gise): en el celular el WhatsApp flotante y la flecha de subir
     tapaban el "TODOS LOS DERECHOS RESERVADOS / DESIGN BY ALTEA". Se le reserva
     espacio al pie, se achican un poco los botones y la flecha se sube. */
  .ik-footer { padding-bottom: 24px !important; }
  .ik-footer__copy { padding-bottom: 84px !important; margin-top: 40px !important; padding-top: 24px !important; line-height: 1.9 !important; }
  .ik-footer__copy .ik-footer__by { display: block !important; margin-top: 4px !important; }
  .ik-whatsapp { bottom: 16px !important; right: 16px !important; }
  .ik-whatsapp__ico { width: 50px !important; height: 50px !important; }
  .ik-whatsapp__ico svg { width: 26px !important; height: 26px !important; }
  #ast-scroll-top, #ast-scroll-top.ast-scroll-top-icon { bottom: 78px !important; right: 16px !important; }
}


/* === Mobile fixes v4 (Gise): sacar hueco bajo hero + apretar secciones === */
@media (max-width: 767px) {
  .ik-hero-spacer { display: none !important; }
  .ik-wholesale { padding-top: 40px !important; padding-bottom: 40px !important; }
  .ik-cats { padding-top: 44px !important; padding-bottom: 40px !important; }
  .ik-newsletter { padding-top: 40px !important; padding-bottom: 44px !important; }
}


/* === Mobile fixes v5 (Gise): centrar contenido/boton del hero === */
@media (max-width: 767px) {
  .ik-hero__slide { display: flex !important; flex-direction: column !important; align-items: center !important; justify-content: center !important; text-align: center !important; }
  .ik-hero__content { position: relative !important; width: 100% !important; max-width: 100% !important; margin: 0 auto !important; box-sizing: border-box !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; }
  .ik-hero__content > * { margin-left: auto !important; margin-right: auto !important; text-align: center !important; }
}


/* === Mobile fixes v6 (Gise): centrar boton hero - neutralizar offsets === */
@media (max-width: 767px) {
  .ik-hero__track { transform: none !important; }
  .ik-hero__slide { display: flex !important; align-items: center !important; justify-content: center !important; transform: none !important; left: 0 !important; right: 0 !important; }
  .ik-hero__content { position: relative !important; transform: none !important; left: 0 !important; right: 0 !important; margin: 0 auto !important; width: 100% !important; max-width: 100% !important; padding-left: 20px !important; padding-right: 20px !important; box-sizing: border-box !important; display: block !important; text-align: center !important; float: none !important; }
  .ik-hero__content > * { float: none !important; margin-left: auto !important; margin-right: auto !important; transform: none !important; position: static !important; left: auto !important; right: auto !important; }
}

/* === Mobile fixes v7 (Gise): boton hero centrado + banda mayorista mobile === */
@media (max-width: 767px) {
  .ik-hero__content { display: block !important; text-align: center !important; }
  .ik-hero__content .ik-btn-ghost { display: block !important; width: -moz-fit-content !important; width: fit-content !important; max-width: 88% !important; margin-left: auto !important; margin-right: auto !important; float: none !important; position: relative !important; left: auto !important; right: auto !important; transform: none !important; }
  .ik-wholesale { padding-left: 20px !important; padding-right: 20px !important; }
  .ik-wholesale__inner { margin-left: 0 !important; max-width: 100% !important; width: 100% !important; box-sizing: border-box !important; }
  .ik-wholesale__title { font-size: 28px !important; line-height: 1.25 !important; }
  .ik-wholesale__text { font-size: 15px !important; }
}


/* === Mobile fixes v8 (Gise): slide sin aspect-ratio 16/9 (causaba overflow del hero) === */
@media (max-width: 767px) {
  .ik-hero__slide { aspect-ratio: auto !important; }
}


/* ============================================================
   Catálogo — barra de categorías con SUBCATEGORÍAS desplegables
   Mismo patrón acordeón que el menú lateral. data-cat / data-parent.
   ============================================================ */
.ik-catalog__tabs .ik-cat{ display:inline-flex; align-items:center; gap:1px; }
.ik-catalog__tabs .ik-cat__link{ display:inline-block; }
.ik-cat__toggle{ background:none; border:0; padding:0 2px; margin:0; cursor:pointer; line-height:0; color:var(--ik-on-surface-variant); transition:transform .35s, color .25s; flex:0 0 auto; }
.ik-cat__toggle .material-symbols-outlined{ font-size:18px; }
.ik-cat__toggle:hover{ color:var(--ik-primary); }
.ik-cat.ik-open .ik-cat__toggle{ transform:rotate(180deg); color:var(--ik-primary); }

/* Sub-fila: oculta por defecto; se despliega con .ik-open (grid 0fr->1fr animado) */
.ik-catalog__subtabs{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s ease; }
.ik-catalog__subtabs > .ik-catalog__subinner{ overflow:hidden; min-height:0; }
.ik-catalog__subtabs.ik-open{ grid-template-rows:1fr; }
.ik-catalog__subinner{ display:flex; flex-wrap:wrap; justify-content:center; gap:16px 24px; align-items:center; padding:16px 0 2px; }
.ik-catalog__subinner a{ font-size:11px; letter-spacing:var(--ik-track-nav); text-transform:uppercase; color:var(--ik-on-surface-variant); transition:color .25s; white-space:nowrap; }
.ik-catalog__subinner a:hover, .ik-catalog__subinner a.ik-active{ color:var(--ik-primary); }
.ik-catalog__subinner a.ik-active{ font-weight:600; }

/* Mobile: barra y sub-fila con scroll horizontal, sin romper el ancho */
@media (max-width:768px){
  .ik-catalog__subinner{ flex-wrap:nowrap; overflow-x:auto; -webkit-overflow-scrolling:touch; gap:18px; }
  .ik-catalog__subinner::-webkit-scrollbar{ display:none; }
}


/* ===== GISE Fase1 + hero (overrides) ===== */
.ik-hero__dots{ display:none !important; }                                        /* sacar los 3 rectangulos del banner */
.ik-header__logo img{ height:17px !important; }                                   /* logo -50% (era 34px) */
.ik-icon-btn, .ik-icon-btn .material-symbols-outlined{ color:#000 !important; }   /* hamburguesa/lupa/carrito en negro */
.ik-announce__track{ animation-duration:90s !important; }                         /* franja mas lenta (era 55s) */



/* ---- Gise Fase3: pastillas de color en producto ---- */
.ik-product__colors{margin:14px 0 18px;}
.ik-product__colors-label{display:block;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#777;margin:0 0 9px;}
.ik-color-pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.ik-color-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 12px 5px 6px;border:1px solid #e4e4e4;border-radius:999px;font-size:13px;line-height:1;color:#222;background:#fff;}
.ik-color-pill.is-text{padding-left:12px;color:#444;}
.ik-color-pill__dot{width:17px;height:17px;border-radius:50%;border:1px solid rgba(0,0,0,.18);box-shadow:inset 0 1px 2px rgba(0,0,0,.12);flex:0 0 auto;}
.ik-color-pill__name{white-space:nowrap;}


/* ============================================================
   MI CUENTA / REGISTRO (woocommerce my-account) — tipografia de marca
   El template de my-account es nativo de Woo y NO va envuelto en .iconik,
   asi que sus encabezados ("Iniciar sesion" / "Registrarme") y el form
   heredaban la tipografia default de Astra (off-brand). Lo alineamos al
   sistema del tema con los mismos tokens (Inter + tratamiento editorial).
   ============================================================ */
.woocommerce-account .woocommerce h2,
.woocommerce-account .u-columns h2,
.woocommerce-account .u-column1 h2,
.woocommerce-account .u-column2 h2{
  font-family:var(--ik-font-sans);
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:var(--ik-track-wide);
  color:var(--ik-primary);
  font-size:22px;
  line-height:1.2;
}
.woocommerce-account .woocommerce-form,
.woocommerce-account .woocommerce-form label,
.woocommerce-account .woocommerce-form input,
.woocommerce-account .woocommerce-form button,
.woocommerce-account .woocommerce-form-register,
.woocommerce-account .woocommerce-form-login{
  font-family:var(--ik-font-sans);
}
.woocommerce-account .woocommerce-form-register__submit,
.woocommerce-account .woocommerce-form-login__submit{
  font-family:var(--ik-font-sans);
  text-transform:uppercase;
  letter-spacing:var(--ik-track-nav);
}



/* ============================================================
   GISE BATCH (19/06) - ajustes finos (VERSION COMPU / desktop)
   ============================================================ */
@media (min-width:922px){
  /* INICIO 1: logo del header -50% (293px -> 146px) */
  .custom-logo{ max-width:146px !important; height:auto !important; }
  /* INICIO 3: achicar el recuadro del hover en las flechas del hero */
  .ik-hero__arrow{ width:56px !important; height:56px !important; }
  /* QUIENES SOMOS 1: titulo -25% (48px -> 36px) */
  .page-id-1224 .ikp-display{ font-size:36px !important; }
  /* SEGUIMIENTO 1: numero de los pasos +10% (12px -> 13.2px) */
  .ikp-track__num{ font-size:13.2px !important; }
  /* CARRITO 2: achicar titulos de producto (16px -> 13px) */
  .woocommerce-cart .cart_item td.product-name a{ font-size:13px !important; }
}


/* ===== FIX MOBILE UIUX categorias (subcat accordion + titulo banner) — 2026-06 ===== */
@media (max-width:768px){
  .ik-catalog__subtabs:not(.ik-open){ display:none !important; }
  .ik-catalog__subtabs.ik-open{ display:block !important; }
  .ik-catalog__subinner{ display:flex !important; flex-wrap:wrap !important; overflow:visible !important; justify-content:center !important; gap:9px 14px !important; padding:12px 12px 2px !important; max-width:100% !important; }
  .ik-catalog__subinner a{ font-size:10.5px !important; white-space:nowrap; }
  .ast-archive-entry-banner .ast-container h1{ font-size:clamp(22px,7vw,32px) !important; line-height:1.12 !important; letter-spacing:3px !important; word-break:break-word; overflow-wrap:anywhere; }
}


/* ===== GISE cambios 2 (idioma + logo + hero mobile) — 2026-06 ===== */
.trp-floating-switcher{ display:none !important; }
@media (max-width:768px){
  .custom-logo{ max-width:73px !important; height:auto !important; }
  .ik-wholesale__text{ font-size:13px !important; }
}


/* Hover 2da foto en tarjetas del catalogo (pedido Gise 13/07/2026) */
.ik-prod-card__img{ position:relative; overflow:hidden; }
.ik-prod-card__img .ik-prod-card__img2{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .35s ease; z-index:2; }
.ik-prod-card:hover .ik-prod-card__img2, .ik-prod-card:focus-within .ik-prod-card__img2{ opacity:1; }

/* P11 Gise 13/07/2026: catalogo casi al ancho completo de pantalla (tarjetas mas grandes) */
main.ik-catalog{ max-width:none; padding-left:2.5vw; padding-right:2.5vw; }

/* Buscador del header (lupa) - pedido Gise jul-2026 */
.ik-search{ position:fixed; top:0; left:0; right:0; z-index:1200; background:#fff; border-bottom:1px solid #e8e4de; transform:translateY(-110%); transition:transform .28s ease; box-shadow:0 8px 30px rgba(0,0,0,.08); }
.ik-search.ik-open{ transform:translateY(0); }
.ik-search__form{ display:flex; align-items:center; gap:12px; max-width:880px; margin:0 auto; padding:18px 20px; }
.ik-search__icon{ color:#8a8378; }
.ik-search__input{ flex:1; border:0; outline:0; font-size:1.05rem; letter-spacing:.04em; background:transparent; color:#141414; min-width:0; }
.ik-search__input::placeholder{ color:#b5ada1; }
.ik-search__go{ border:1px solid #141414; background:#141414; color:#fff; padding:9px 22px; font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; cursor:pointer; }
.ik-search__go:hover{ background:#000; }
#ik-search-close{ flex:0 0 auto; }

/* SKU en ficha de producto - pedido Gise jul-2026 */
.ik-product__sku{ margin:2px 0 6px; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:#8a8378; }
