/* ==========================================================
   Espuma Clara – estilos del tema hijo
   Luz de baño: blanco espuma, aguamarina, vidrio de mar y tinta teal.
   ========================================================== */
:root{
  --e-foam:#fbfdfc;
  --e-mist:#dff1ee;
  --e-mist-2:#eef8f6;
  --e-glass:#9fd3c7;
  --e-glass-d:#5fa99a;
  --e-ink:#12423f;
  --e-ink-2:#2d5d59;
  --e-muted:#5b7d79;
  --e-coral:#f2a490;
  --e-coral-l:#fbe3dc;
  --e-line:rgba(18,66,63,.1);
  --e-serif:"Fraunces",Georgia,"Times New Roman",serif;
  --e-sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;
  --e-r-lg:36px;
  --e-r:24px;
  --e-r-sm:16px;
  --e-wrap:1180px;
  --e-shadow:0 24px 50px -32px rgba(18,66,63,.35);
}

/* ---------- Base ---------- */
body.espuma{background:var(--e-foam);color:var(--e-ink);font-family:var(--e-sans);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
.espuma .site{overflow-x:clip}
.espuma h1,.espuma h2,.espuma h3,.espuma h4,.espuma .product_title,.espuma .entry-title{font-family:var(--e-serif);font-weight:400;color:var(--e-ink);letter-spacing:-.015em;line-height:1.12;font-optical-sizing:auto}
.espuma h1 em,.espuma h2 em{font-style:italic;font-weight:400;background:linear-gradient(transparent 68%,var(--e-coral-l) 68%,var(--e-coral-l) 92%,transparent 92%);padding:0 .08em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.espuma a{color:var(--e-ink-2);text-decoration:none;transition:color .2s}
.espuma a:hover{color:var(--e-glass-d)}
.espuma img{max-width:100%;height:auto}
.espuma-wrap{max-width:var(--e-wrap);margin:0 auto;padding:0 28px}
.espuma-eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--e-glass-d);margin:0 0 14px}
.espuma-eyebrow::before{content:"";width:22px;height:2px;border-radius:2px;background:var(--e-coral)}
.espuma-lead{font-size:18px;color:var(--e-muted);max-width:560px}
.espuma-ico{display:inline-block;vertical-align:middle;flex:none}
.espuma .site-content{padding-top:0}
.espuma .col-full{max-width:var(--e-wrap);padding:0 28px}
.home.espuma .col-full{max-width:none;padding:0}
.home.espuma .site-main{margin:0}
.espuma .site-main{margin-bottom:70px}
.espuma .screen-reader-text{position:absolute!important;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}
.espuma .skip-link:focus{clip:auto;width:auto;height:auto;z-index:200;background:#fff;padding:10px 16px;top:8px;left:8px}
.espuma :focus-visible{outline:2px solid var(--e-glass-d);outline-offset:3px}
.espuma-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.espuma-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--e-coral);box-shadow:0 0 0 4px rgba(242,164,144,.25);flex:none}

/* ---------- Burbujas ---------- */
.espuma-bubble{position:absolute;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.98) 0,rgba(255,255,255,.85) 10%,rgba(223,241,238,.55) 38%,rgba(159,211,199,.38) 78%,rgba(159,211,199,.55) 100%);
  box-shadow:inset -6px -10px 18px rgba(18,66,63,.07),inset 5px 5px 12px rgba(255,255,255,.9),0 14px 30px -18px rgba(18,66,63,.3);
  animation:espuma-float 9s ease-in-out infinite}
.espuma-bubble::after{content:"";position:absolute;width:22%;height:14%;left:24%;top:18%;border-radius:50%;background:rgba(255,255,255,.95);transform:rotate(-35deg)}
@keyframes espuma-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media (prefers-reduced-motion:reduce){.espuma-bubble{animation:none}}

/* ---------- Botones ---------- */
.espuma-btn,.espuma .button,.espuma button.button,.espuma input[type=submit],.espuma .wc-block-components-button,.espuma a.checkout-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--e-ink);color:var(--e-foam)!important;border:0;border-radius:999px;padding:15px 30px;font-family:var(--e-sans);font-size:15px;font-weight:600;letter-spacing:.01em;line-height:1.2;text-transform:none;box-shadow:0 10px 24px -14px rgba(18,66,63,.6);transition:background .2s,color .2s,transform .2s;text-decoration:none;cursor:pointer}
.espuma-btn:hover,.espuma .button:hover,.espuma button.button:hover,.espuma input[type=submit]:hover{background:var(--e-coral);color:var(--e-ink)!important;transform:translateY(-1px)}
.espuma-btn--ghost{background:rgba(255,255,255,.6);color:var(--e-ink)!important;box-shadow:inset 0 0 0 1.5px var(--e-ink)}
.espuma-btn--ghost:hover{background:var(--e-ink);color:var(--e-foam)!important}
.espuma-btn--coral{background:var(--e-coral);color:var(--e-ink)!important}
.espuma-btn--coral:hover{background:var(--e-foam)}
.espuma-link{font-weight:600;font-size:15px;color:var(--e-ink)!important;border-bottom:2px solid var(--e-coral);padding-bottom:2px}
.espuma-pill{display:inline-flex;align-items:center;padding:9px 18px;border-radius:999px;background:var(--e-mist);color:var(--e-ink)!important;font-size:14px;font-weight:600}
.espuma-pill:hover{background:var(--e-coral)}

/* ---------- Barra superior ---------- */
.espuma-announce{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--e-ink);color:var(--e-mist);font-size:13px;font-weight:500;padding:9px 16px;text-align:center}
.espuma-announce a{color:var(--e-foam)!important;border-bottom:1px solid var(--e-coral)}

/* ---------- Cabecera ---------- */
.espuma-header{position:sticky;top:0;z-index:50;background:rgba(251,253,252,.88);-webkit-backdrop-filter:saturate(1.4) blur(12px);backdrop-filter:saturate(1.4) blur(12px);border-bottom:1px solid var(--e-line)}
.espuma-header__inner{display:flex;align-items:center;gap:24px;height:78px}
.espuma-logo{display:inline-flex;align-items:center;gap:10px;color:var(--e-ink)!important;flex:none}
.espuma-logo img{max-height:52px;width:auto}
.espuma-logo__mark{position:relative;width:30px;height:30px;border-radius:50%;flex:none;background:radial-gradient(circle at 32% 30%,#fff 0,var(--e-mist) 35%,var(--e-glass) 100%);box-shadow:inset -3px -4px 6px rgba(18,66,63,.12)}
.espuma-logo__mark::after{content:"";position:absolute;width:13px;height:13px;border-radius:50%;right:-7px;top:-5px;background:radial-gradient(circle at 35% 30%,#fff 0,var(--e-coral-l) 45%,var(--e-coral) 100%)}
.espuma-logo__text{font-family:var(--e-serif);font-size:27px;font-weight:500;letter-spacing:-.02em;line-height:1;color:var(--e-ink)}
.espuma-logo__text em{font-style:italic;font-weight:400;color:var(--e-glass-d)}
.espuma-nav{flex:1;display:flex;justify-content:center}
.espuma-nav__top,.espuma-nav__cta{display:none}
.espuma-menu{display:flex;gap:4px;list-style:none;margin:0;padding:5px;background:var(--e-mist-2);border-radius:999px}
.espuma-menu li{margin:0}
.espuma-menu a{display:block;white-space:nowrap;color:var(--e-ink)!important;font-size:14px;font-weight:600;padding:8px 18px;border-radius:999px;transition:background .2s}
.espuma-menu a:hover,.espuma-menu .current-menu-item>a,.espuma-menu .current_page_item>a{background:#fff;box-shadow:0 4px 12px -6px rgba(18,66,63,.25)}
.espuma-actions{display:flex;align-items:center;gap:12px;flex:none}
.espuma-action{color:var(--e-ink)!important;position:relative;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;transition:background .2s}
.espuma-action:hover{background:var(--e-mist)}
.espuma-cart-count{position:absolute;top:2px;right:0;background:var(--e-coral);color:var(--e-ink);font-size:10px;min-width:17px;height:17px;border-radius:9px;display:grid;place-items:center;font-weight:700}
.espuma-cart-count.is-empty{display:none}
.espuma-burger,.espuma-nav__close{display:none;background:none;border:0;padding:8px;color:var(--e-ink);cursor:pointer;border-radius:50%}
.espuma-scrim{position:fixed;inset:0;background:rgba(18,66,63,.35);z-index:55}
.espuma-scrim[hidden]{display:none}

/* ---------- Héroe ---------- */
.espuma-hero{position:relative;overflow:hidden;background:radial-gradient(1000px 520px at 85% 20%,var(--e-mist) 0,transparent 60%),radial-gradient(700px 420px at 0% 100%,var(--e-mist-2) 0,transparent 70%),var(--e-foam)}
.espuma-hero__inner{position:relative;z-index:1;display:grid;grid-template-columns:1.08fr .92fr;gap:56px;align-items:center;min-height:620px;padding-top:64px;padding-bottom:110px}
.espuma-tag{display:inline-flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--e-line);border-radius:999px;padding:7px 16px 7px 14px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 22px;color:var(--e-ink)}
.espuma-hero h1{font-size:clamp(40px,5.4vw,72px);margin:0 0 22px}
.espuma-hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.espuma-hero__art{position:relative;aspect-ratio:1/1;max-width:500px;width:100%;justify-self:center}
.espuma-hero__disc{position:absolute;inset:6%;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,#fff 0,var(--e-mist) 45%,var(--e-glass) 100%);box-shadow:inset -20px -30px 60px rgba(18,66,63,.12),inset 20px 20px 40px rgba(255,255,255,.8),0 40px 80px -40px rgba(18,66,63,.45)}
.espuma-hero__img{width:74%;height:74%;object-fit:contain;filter:drop-shadow(0 20px 26px rgba(18,66,63,.18))}
.espuma-bubble--a1{width:22%;height:22%;left:-2%;top:6%}
.espuma-bubble--a2{width:13%;height:13%;right:2%;top:2%;animation-delay:-3s}
.espuma-bubble--a3{width:17%;height:17%;right:-3%;bottom:14%;animation-delay:-5s}
.espuma-bubble--a4{width:8%;height:8%;left:10%;bottom:6%;animation-delay:-2s}
.espuma-bubble--h1{width:180px;height:180px;left:-70px;top:120px;opacity:.6}
.espuma-bubble--h2{width:46px;height:46px;left:44%;top:40px;animation-delay:-4s}
.espuma-bubble--h3{width:26px;height:26px;left:38%;bottom:150px;animation-delay:-6s}
.espuma-wave{position:absolute;left:-10%;right:-10%;bottom:-1px;height:80px;background:var(--e-foam);border-radius:50% 50% 0 0/100% 100% 0 0}

/* ---------- Secciones ---------- */
.espuma-section{position:relative;padding:96px 0}
.espuma-section--mist{background:linear-gradient(180deg,var(--e-mist-2),var(--e-mist))}
.espuma-section--foam{background:var(--e-foam)}
.espuma-section--wl{padding-top:40px}
.espuma-head{margin-bottom:40px}
.espuma-head h2{font-size:clamp(32px,3.8vw,50px);margin:0}
.espuma-head--row{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.espuma-head--center{text-align:center}
.espuma-head--center .espuma-lead{margin:16px auto 0}
.espuma-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px}
.espuma-chips li{background:var(--e-mist);border-radius:999px;padding:12px 22px;font-family:var(--e-serif);font-size:20px}

/* Historia */
.espuma-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}
.espuma-story__art{position:relative;aspect-ratio:1/1;max-width:440px;width:100%;justify-self:center}
.espuma-story__circle{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 25%,#fff 0,var(--e-foam) 30%,var(--e-glass) 100%);box-shadow:inset -24px -30px 60px rgba(18,66,63,.12),0 40px 80px -40px rgba(18,66,63,.4)}
.espuma-story__quote{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--e-serif);font-size:clamp(34px,4vw,48px);color:var(--e-ink);text-align:center;line-height:1}
.espuma-story__quote em{font-style:italic;color:var(--e-ink-2)}
.espuma-story__quote small{display:block;margin-top:14px;font-family:var(--e-sans);font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--e-ink-2)}
.espuma-bubble--s1{width:84px;height:84px;right:-10px;top:-10px}
.espuma-bubble--s2{width:40px;height:40px;left:6%;bottom:4%;animation-delay:-4s}
.espuma-story__text h2{font-size:clamp(30px,3.4vw,46px);margin:0 0 22px}
.espuma-story__text p{color:var(--e-ink-2);margin:0 0 16px}
.espuma-sign{font-family:var(--e-serif);font-style:italic;font-size:26px;color:var(--e-ink)!important;margin-top:26px!important}
.espuma-sign span{font-family:var(--e-sans);font-style:normal;font-size:14px;color:var(--e-muted)}

/* Pasos */
.espuma-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:26px;position:relative}
.espuma-steps::before{content:"";position:absolute;left:12%;right:12%;top:31px;border-top:2px dashed var(--e-glass)}
.espuma-steps li{position:relative;text-align:center;padding:0 6px}
.espuma-steps__n{position:relative;display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border-radius:50%;font-family:var(--e-serif);font-style:italic;font-size:28px;color:var(--e-ink);background:radial-gradient(circle at 32% 28%,#fff 0,var(--e-mist) 45%,var(--e-glass) 100%);box-shadow:0 0 0 8px var(--e-foam),inset -4px -6px 10px rgba(18,66,63,.1)}
.espuma-steps h3{font-size:22px;margin:0 0 8px}
.espuma-steps p{margin:0;color:var(--e-muted);font-size:15px}

/* Valores */
.espuma-values{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.espuma-value{position:relative;background:#fff;border:1px solid var(--e-line);border-radius:var(--e-r);padding:28px 24px 26px}
.espuma-value__ico{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--e-mist);color:var(--e-ink);margin-bottom:16px}
.espuma-badge{position:absolute;top:22px;right:20px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--e-coral-l);color:#8a4334;border-radius:999px;padding:4px 10px}
.espuma-badge--on{background:var(--e-mist);color:var(--e-ink)}
.espuma-value h3{font-size:22px;margin:0 0 6px}
.espuma-value p{margin:0;font-size:15px;color:var(--e-muted)}

/* ---------- Lista de espera ---------- */
.espuma-wlb{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center;background:var(--e-ink);color:var(--e-mist);border-radius:var(--e-r-lg);padding:64px}
.espuma-wlb--center{grid-template-columns:1fr;text-align:center;justify-items:center}
.espuma-wlb__text{position:relative;z-index:1}
.espuma-wlb h2{color:var(--e-foam)!important;font-size:clamp(30px,3.6vw,46px);margin:0 0 14px}
.espuma-wlb h2 em{background:linear-gradient(transparent 70%,rgba(242,164,144,.45) 70%,rgba(242,164,144,.45) 92%,transparent 92%)}
.espuma-wlb p{margin:0;color:var(--e-mist)}
.espuma-wlb .espuma-eyebrow{color:var(--e-glass)}
.espuma-bubble--wlb1{width:240px;height:240px;right:-80px;top:-90px;opacity:.25}
.espuma-bubble--wlb2{width:70px;height:70px;left:46%;bottom:-20px;opacity:.3;animation-delay:-4s}
.espuma-wl{position:relative;z-index:1;scroll-margin-top:110px}
.espuma-wl__row{display:flex;gap:8px;background:#fff;border-radius:999px;padding:6px;box-shadow:0 14px 30px -20px rgba(0,0,0,.4)}
.espuma .espuma-wl__row input[type=email]{flex:1;min-width:0;border:0!important;background:transparent!important;border-radius:999px!important;padding:12px 18px;font-size:16px;color:var(--e-ink);box-shadow:none!important}
.espuma-wl__row .espuma-btn{padding:13px 26px;flex:none}
.espuma-wlb .espuma-wl__row .espuma-btn{background:var(--e-coral);color:var(--e-ink)!important}
.espuma-wlb .espuma-wl__row .espuma-btn:hover{background:var(--e-ink)!important;color:var(--e-foam)!important}
.espuma-wl__consent{display:flex;gap:10px;align-items:flex-start;margin-top:14px;font-size:13px;line-height:1.5;cursor:pointer}
.espuma-wl__consent input{margin-top:2px;width:17px;height:17px;flex:none;accent-color:var(--e-glass-d)}
.espuma-wlb .espuma-wl__consent{color:var(--e-mist)}
.espuma-wlb .espuma-wl__consent a{color:var(--e-foam)!important;text-decoration:underline;text-decoration-color:var(--e-coral)}
.espuma-wl__msg{border-radius:var(--e-r-sm);padding:12px 16px;margin:0 0 14px;font-size:14px;font-weight:600}
.espuma-wl__msg--ok{background:var(--e-mist);color:var(--e-ink)}
.espuma-wl__msg--error{background:var(--e-coral-l);color:#7a3426}
/* Variante ficha de producto */
.espuma-wl--product{background:linear-gradient(160deg,var(--e-mist-2),var(--e-mist));border:1px solid var(--e-line);border-radius:var(--e-r);padding:24px;margin:26px 0 18px}
.espuma-wl__title{display:flex;align-items:center;gap:10px;font-family:var(--e-serif);font-size:24px;margin:0 0 4px;color:var(--e-ink)}
.espuma-wl__text{font-size:15px;color:var(--e-muted);margin:0 0 16px}
.espuma-wl--product .espuma-wl__consent{color:var(--e-ink-2)}
.espuma-wl--product .espuma-wl__consent a{text-decoration:underline}

/* ---------- Precio "Próximamente" ---------- */
.espuma-soon{display:inline-flex;align-items:center;gap:8px;background:var(--e-mist);color:var(--e-ink);border-radius:999px;padding:5px 14px 5px 12px;font-family:var(--e-sans);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;line-height:1.4}
.espuma-soon::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--e-coral)}

/* ===== WooCommerce: listados ===== */
.espuma ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:0!important;padding:0}
.espuma ul.products::before,.espuma ul.products::after{display:none!important}
.espuma ul.products li.product{width:auto!important;float:none!important;margin:0!important;text-align:left;background:#fff;border:1px solid var(--e-line);border-radius:var(--e-r);padding:12px 12px 22px;transition:transform .3s,box-shadow .3s;display:flex;flex-direction:column}
.espuma ul.products li.product:hover{transform:translateY(-4px);box-shadow:var(--e-shadow)}
.espuma ul.products li.product a.woocommerce-LoopProduct-link{display:block;color:var(--e-ink)}
.espuma ul.products li.product img{display:block;width:100%;aspect-ratio:1/1;object-fit:contain;padding:7%;box-sizing:border-box;border-radius:calc(var(--e-r) - 8px);margin:0 0 18px!important;background:radial-gradient(circle at 35% 30%,#fff 0,var(--e-mist-2) 40%,var(--e-mist) 100%);transition:transform .4s}
.espuma ul.products li.product:hover img{transform:scale(1.02)}
.espuma ul.products li.product .woocommerce-loop-product__title{font-family:var(--e-serif);font-size:21px!important;font-weight:400;color:var(--e-ink);padding:0 10px!important;margin:0 0 10px;line-height:1.2}
.espuma ul.products li.product .price{display:block;padding:0 10px;color:var(--e-ink)!important;font-weight:700;font-size:16px;margin-bottom:14px}
.espuma ul.products li.product .price del{color:var(--e-muted);opacity:.7;font-weight:400}
.espuma ul.products li.product .button{margin:auto 10px 0;align-self:flex-start;padding:11px 20px;font-size:13px}
.espuma-card-link{margin:auto 10px 0;font-size:14px;font-weight:700;color:var(--e-ink)!important;border-bottom:2px solid var(--e-coral);align-self:flex-start;padding-bottom:1px}
.espuma ul.products li.product .onsale,.espuma span.onsale{background:var(--e-coral);color:var(--e-ink);border:0;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:4px 12px;min-height:0;min-width:0;line-height:1.6;top:20px;left:20px;right:auto}
.espuma .woocommerce-result-count,.espuma .woocommerce-ordering select{font-size:14px;color:var(--e-muted)}
.espuma .woocommerce-ordering select{border:1px solid var(--e-line);border-radius:999px;padding:9px 16px;background:#fff}
.espuma .storefront-sorting{border:0;margin-bottom:24px;padding:0}
.espuma .woocommerce-products-header,.espuma .page-title{padding:44px 0 10px}
.espuma .woocommerce-products-header__title,.espuma h1.page-title{font-size:clamp(36px,4.4vw,56px)}
.espuma .woocommerce-breadcrumb{background:none;padding:22px 0 0;font-size:13px;color:var(--e-muted);margin:0}
.espuma .woocommerce-breadcrumb a{color:var(--e-muted)}
.espuma nav.woocommerce-pagination ul,.espuma nav.woocommerce-pagination ul li{border:0}
.espuma nav.woocommerce-pagination ul li .page-numbers{border-radius:999px;background:var(--e-mist-2);color:var(--e-ink);margin:0 3px}
.espuma nav.woocommerce-pagination ul li .page-numbers.current{background:var(--e-ink);color:var(--e-foam)}
.espuma-shop-note{display:flex;gap:14px;align-items:flex-start;background:var(--e-mist-2);border:1px solid var(--e-line);border-radius:var(--e-r);padding:18px 22px;margin:10px 0 30px;font-size:15px}
.espuma-shop-note .espuma-dot{margin-top:9px}
.espuma-shop-note p{margin:0;color:var(--e-ink-2)}

/* ===== Ficha de producto ===== */
.espuma.single-product div.product{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 64px;padding-top:30px;position:relative}
.espuma.single-product div.product>*{grid-column:1/-1;min-width:0}
.espuma.single-product div.product>.woocommerce-product-gallery{grid-column:1;width:auto!important;float:none!important;margin:0 0 50px!important;border-radius:var(--e-r-lg);overflow:hidden;background:radial-gradient(circle at 35% 30%,#fff 0,var(--e-mist-2) 40%,var(--e-mist) 100%);align-self:start}
.espuma.single-product div.product>.summary{grid-column:2;width:auto!important;float:none!important;margin:0 0 50px!important}
.espuma.single-product div.product>.onsale{position:absolute}
.espuma.single-product .woocommerce-product-gallery img{aspect-ratio:1/1;object-fit:contain;padding:6%;box-sizing:border-box;background:transparent}
.espuma.single-product .woocommerce-product-gallery .flex-control-thumbs{padding:0 16px 16px;display:flex;gap:10px}
.espuma.single-product .woocommerce-product-gallery .flex-control-thumbs li{width:72px!important;margin:0!important;float:none!important}
.espuma.single-product .woocommerce-product-gallery .flex-control-thumbs img{padding:4px;border-radius:12px;background:#fff}
.espuma.single-product .woocommerce-product-gallery__trigger{background:#fff;border-radius:50%}
.espuma.single-product div.product .product_title{font-size:clamp(34px,3.6vw,50px);margin-bottom:14px}
.espuma.single-product div.product p.price{font-size:24px;color:var(--e-ink);font-weight:700;margin-bottom:18px}
.espuma.single-product div.product .woocommerce-product-details__short-description{color:var(--e-ink-2);font-size:16px}
.espuma.single-product div.product form.cart{display:flex;gap:12px;align-items:stretch;margin:26px 0 8px;border:0;padding:0}
.espuma.single-product div.product form.cart .quantity input{height:100%;min-height:52px;border:1px solid var(--e-line);border-radius:999px;width:84px;background:#fff;text-align:center}
.espuma.single-product div.product form.cart .single_add_to_cart_button{flex:1;padding:16px 26px}
.espuma.single-product div.product form.variations_form{display:block}
.espuma-info{list-style:none;margin:20px 0 26px;padding:0;display:grid;gap:10px;font-size:14px}
.espuma-info li{display:flex;align-items:center;gap:12px;color:var(--e-ink);background:#fff;border:1px solid var(--e-line);border-radius:999px;padding:8px 18px 8px 8px}
.espuma-info .espuma-ico{width:34px;height:34px;padding:7px;border-radius:50%;background:var(--e-mist);color:var(--e-ink);box-sizing:border-box}
.espuma.single-product .product_meta{font-size:13px;color:var(--e-muted);border-top:1px solid var(--e-line);padding-top:16px}
.espuma .woocommerce-tabs{border-top:1px solid var(--e-line);padding-top:30px}
.espuma .woocommerce-tabs ul.tabs{border:0;display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:0 0 24px}
.espuma .woocommerce-tabs ul.tabs li{border:0;margin:0}
.espuma .woocommerce-tabs ul.tabs li a{display:block;padding:9px 20px;border-radius:999px;background:var(--e-mist-2);font-weight:600;font-size:14px;color:var(--e-ink)}
.espuma .woocommerce-tabs ul.tabs li.active a{background:var(--e-ink);color:var(--e-foam)}
.espuma .woocommerce-tabs ul.tabs li.active::after,.espuma .woocommerce-tabs ul.tabs li::after{display:none}
.espuma .woocommerce-tabs .panel{width:auto;float:none;max-width:760px}
.espuma .woocommerce-tabs .panel h2:first-of-type{font-size:28px}
.espuma .related>h2,.espuma .upsells>h2{font-size:36px;margin-bottom:24px}
.espuma .storefront-product-pagination{display:none}

/* ===== Formularios, carrito, avisos ===== */
.espuma input[type=text],.espuma input[type=email],.espuma input[type=tel],.espuma input[type=password],.espuma input[type=number],.espuma input[type=search],.espuma textarea,.espuma select,.espuma .select2-container .select2-selection{border:1px solid var(--e-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;padding:12px 14px;color:var(--e-ink);font-family:var(--e-sans)}
.espuma input:focus,.espuma textarea:focus,.espuma select:focus{border-color:var(--e-glass-d)!important}
.espuma table.shop_table{border-radius:var(--e-r-sm);overflow:hidden;border:1px solid var(--e-line)}
.espuma table.shop_table th{background:var(--e-mist-2);font-weight:600}
.espuma .woocommerce-message,.espuma .woocommerce-info,.espuma .woocommerce-error,.espuma .woocommerce-noreviews,.espuma p.no-comments{border-radius:var(--e-r-sm);background:var(--e-mist-2);color:var(--e-ink);border-left:4px solid var(--e-glass)}
.espuma .woocommerce-error{border-left-color:var(--e-coral)}
.espuma .woocommerce-message .button,.espuma .woocommerce-info .button{padding:8px 16px;font-size:13px}
.espuma .woocommerce-message::before,.espuma .woocommerce-info::before{color:var(--e-glass-d)}

/* ===== Páginas de contenido ===== */
.espuma.page:not(.home) .entry-content,.espuma.page:not(.home) .entry-header{max-width:800px;margin-left:auto;margin-right:auto}
.espuma.page:not(.home) .entry-header{padding-top:56px;text-align:center;border:0}
.espuma.page:not(.home) .entry-title{font-size:clamp(34px,4.4vw,54px)}
.espuma .entry-content h2{font-size:30px;margin-top:44px}
.espuma .entry-content h3{font-size:22px}
.espuma .entry-content p,.espuma .entry-content li{color:var(--e-ink-2)}
.espuma .hentry{margin-bottom:40px;border:0}
.espuma.woocommerce-cart .entry-content,.espuma.woocommerce-checkout .entry-content,.espuma.woocommerce-account .entry-content{max-width:none}

/* ===== Pie ===== */
.espuma-footer{position:relative;overflow:hidden;background:var(--e-ink);color:var(--e-mist);padding:80px 0 0;font-size:14px;border-radius:var(--e-r-lg) var(--e-r-lg) 0 0;margin-top:20px}
.espuma-bubble--f1{width:260px;height:260px;right:-90px;top:-100px;opacity:.12}
.espuma-bubble--f2{width:60px;height:60px;left:38%;bottom:60px;opacity:.12;animation-delay:-5s}
.espuma-footer__grid{position:relative;display:grid;grid-template-columns:1.5fr 1fr 1fr 1.1fr;gap:40px}
.espuma-footer h4{font-family:var(--e-sans);font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--e-glass);margin:8px 0 18px}
.espuma-footer ul{list-style:none;margin:0;padding:0}
.espuma-footer li{margin-bottom:10px}
.espuma-footer a{color:var(--e-foam)!important}
.espuma-footer a:hover{color:var(--e-coral)!important}
.espuma-footer .espuma-logo__text{color:var(--e-foam)}
.espuma-footer .espuma-logo__text em{color:var(--e-glass)}
.espuma-footer__brand p{max-width:330px;margin:18px 0}
.espuma-footer__contact li{display:flex;align-items:center;gap:10px;word-break:break-word}
.espuma-footer__contact .espuma-ico{width:18px;height:18px;color:var(--e-glass)}
.espuma-footer__legal{position:relative;border-top:1px solid rgba(223,241,238,.16);margin-top:56px;padding-top:22px;padding-bottom:28px;font-size:12px;color:rgba(223,241,238,.75)}
.espuma-footer__legal p{margin:0}

/* Aviso de cookies */
.espuma-cookies{position:fixed;right:20px;bottom:20px;max-width:390px;background:#fff;color:var(--e-ink);border:1px solid var(--e-line);border-radius:var(--e-r);box-shadow:0 24px 50px -24px rgba(18,66,63,.45);padding:20px 22px;z-index:100;font-size:14px}
.espuma-cookies[hidden]{display:none}
.espuma-cookies p{margin:0 0 12px}
.espuma-cookies a{text-decoration:underline}
.espuma-cookies button{background:var(--e-ink);color:var(--e-foam);border:0;border-radius:999px;padding:10px 22px;font-size:13px;font-weight:600;cursor:pointer;font-family:var(--e-sans)}
.espuma-cookies button:hover{background:var(--e-coral);color:var(--e-ink)}

/* ===== Responsive ===== */
@media (max-width:1024px){
  .espuma-values{grid-template-columns:repeat(2,1fr)}
  .espuma-steps{grid-template-columns:repeat(2,1fr);row-gap:40px}
  .espuma-steps::before{display:none}
  .espuma-footer__grid{grid-template-columns:1fr 1fr}
  .espuma-wlb{grid-template-columns:1fr;padding:48px}
  .espuma-menu a{padding:8px 13px}
}
@media (max-width:860px){
  .espuma-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:var(--e-foam)}
  .espuma-burger{display:inline-flex}
  .espuma-nav{position:fixed;top:0;bottom:0;left:0;width:min(86vw,360px);display:block;background:var(--e-foam);z-index:60;padding:22px 24px 30px;transform:translateX(-105%);transition:transform .3s ease,visibility .3s;box-shadow:20px 0 50px -20px rgba(18,66,63,.35);overflow-y:auto;border-radius:0 var(--e-r-lg) var(--e-r-lg) 0;visibility:hidden}
  .espuma-nav.is-open{transform:none;visibility:visible}
  .espuma-nav__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}
  .espuma-nav__top .espuma-logo__text{font-size:24px}
  .espuma-nav__close{display:inline-flex;background:var(--e-mist)}
  .espuma-nav__cta{display:flex;margin-top:28px;width:100%}
  .espuma-menu{flex-direction:column;gap:6px;background:none;padding:0;border-radius:0}
  .espuma-menu a{font-family:var(--e-serif);font-weight:400;font-size:26px;padding:10px 16px;border-radius:var(--e-r-sm)}
  .espuma-menu a:hover,.espuma-menu .current-menu-item>a,.espuma-menu .current_page_item>a{background:var(--e-mist);box-shadow:none}
  .espuma-header__inner{height:66px;gap:8px}
  .espuma-logo{margin-right:auto}
  .espuma-logo__text{font-size:23px}
  .espuma-logo__mark{width:24px;height:24px}
  .espuma-logo__mark::after{width:10px;height:10px;right:-5px}
  .espuma-hide-sm{display:none!important}
  .espuma-hero__inner{grid-template-columns:1fr;min-height:0;padding-top:30px;padding-bottom:90px;gap:20px}
  .espuma-hero__art{max-width:340px;order:-1}
  .espuma-story{grid-template-columns:1fr;gap:40px}
  .espuma-story__art{max-width:320px}
  .espuma ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
  .espuma ul.products li.product{padding:8px 8px 18px;border-radius:var(--e-r-sm)}
  .espuma ul.products li.product img{border-radius:12px;margin-bottom:12px!important}
  .espuma ul.products li.product .woocommerce-loop-product__title{font-size:17px!important;padding:0 6px!important}
  .espuma ul.products li.product .price{padding:0 6px}
  .espuma ul.products li.product .button{margin:auto 6px 0;padding:10px 14px;font-size:12px}
  .espuma-card-link{margin:auto 6px 0;font-size:13px}
  .espuma .espuma-soon{font-size:10px;padding:4px 10px 4px 9px;letter-spacing:.06em}
  .espuma.single-product div.product{grid-template-columns:minmax(0,1fr)}
  .espuma.single-product div.product>.woocommerce-product-gallery,.espuma.single-product div.product>.summary{grid-column:1}
  .espuma.single-product div.product>.woocommerce-product-gallery{margin-bottom:26px!important;border-radius:var(--e-r)}
  .espuma-section{padding:70px 0}
  .espuma-head--row{flex-direction:column;align-items:flex-start}
  .espuma-footer{border-radius:var(--e-r) var(--e-r) 0 0}
}
@media (max-width:560px){
  .espuma-wrap,.espuma .col-full{padding:0 16px}
  .espuma-announce{font-size:12px;padding:8px 12px}
  .espuma-hero h1{font-size:clamp(34px,10vw,44px)}
  .espuma-lead{font-size:16px}
  .espuma-hero__cta .espuma-btn{flex:1 1 100%}
  .espuma-bubble--h1{width:110px;height:110px;left:-50px}
  .espuma-values,.espuma-steps{grid-template-columns:1fr}
  .espuma-steps li{text-align:left;padding-left:84px;min-height:64px}
  .espuma-steps__n{position:absolute;left:0;top:0;margin:0}
  .espuma-wlb{padding:36px 20px;border-radius:var(--e-r)}
  .espuma-wl__row{flex-direction:column;border-radius:var(--e-r-sm);padding:6px}
  .espuma-wl__row .espuma-btn{width:100%}
  .espuma-wl--product{padding:20px 16px}
  .espuma-footer__grid{grid-template-columns:1fr;gap:28px}
  .espuma.single-product div.product form.cart{flex-wrap:wrap}
  .espuma-cookies{left:12px;right:12px;bottom:12px;max-width:none}
  .espuma-chips li{font-size:17px;padding:10px 18px}
}
.espuma .woocommerce-product-gallery__image img,.espuma .woocommerce-product-gallery__image a{display:block;width:100%!important;height:auto}
