/**
 * Blog Automático — CSS del front-end de los artículos generados para grespiscina.com.
 *
 * Sistema de diseño "gpz-*", copiado del mismo sistema que ya usaba este sitio en sus artículos
 * (antes embebido inline dentro de cada post_content). Se sirve aquí como archivo externo
 * cacheable por el navegador (wp_enqueue_style, ver class-bap-assets.php) — mismo criterio que
 * en destockagecarrelage.com: un único archivo, una sola vez por visitante, en vez de repetir
 * ~12KB de CSS dentro de cada artículo.
 *
 * Los artículos publicados ANTES de este cambio siguen llevando su propio <style> inline (no se
 * tocan retroactivamente) — conviven sin problema con este archivo, simplemente duplican las
 * mismas reglas para ellos mismos.
 */
.post.post-detail .post-featured-section{display:none !important;}
/* El tema (goya-child/style.css) oculta ".related-posts" en TODO el sitio con
   ".post-share, .related-posts { display: none; }". Reactivamos ese bloque nativo del tema
   SOLO dentro de las páginas que contienen un artículo generado por este plugin (marcado por la
   clase ".gpz-article", exclusiva de estos artículos) — el resto del sitio (páginas de producto,
   artículos manuales antiguos, etc.) sigue con el bloque oculto tal cual estaba. Requiere
   soporte de :has() en el navegador (todos los navegadores modernos desde 2023 lo soportan). */
body:has(.gpz-article) .related-posts{display:block !important;}
/* Tarjetas del blog con altura desigual (bug real detectado el 20/08/2026): la miniatura de cada
   tarjeta usa "aspect-ratio:auto" del tema, es decir, hereda la proporción NATURAL de la imagen
   destacada de cada post — como no todas las imágenes generadas salen exactamente con la misma
   proporción (depende de cómo responda TinyPNG al recorte pedido), unas tarjetas salían más altas
   que otras y la rejilla del blog se veía descuadrada. Forzamos aquí SIEMPRE cuadrado 1:1 con
   recorte "cover" (nunca deforma, solo recorta los lados sobrantes) — así la rejilla queda
   uniforme pase lo que pase con el tamaño real del archivo de origen, sin depender de que el
   recorte del lado del servidor salga perfecto. */
.blog-post .post-gallery,
.blog-post .post-gallery img{aspect-ratio:1/1 !important;}
.blog-post .post-gallery img{width:100% !important;height:100% !important;object-fit:cover !important;}
/* Botones de filtro por categoría añadidos el 20/08/2026 en la página /blog/ (junto al botón
   "Actualidad" que ya existía) — centrados. El atributo css="" de WPBakery en el shortcode no
   sirve aquí porque esa regla se genera en un archivo CSS aparte que solo se regenera al guardar
   desde el editor visual, no al editar el contenido por REST — así que usamos el propio CSS del
   plugin (siempre cargado) apuntando a una clase real (el_class) en vez de eso. */
.bap-blog-cat-buttons{text-align:center !important;}

.gpz-article{--ink:#2B2B2B;--ink-soft:#5B5F63;--gray-bg:#F7F8F9;--border:#E5E7EA;--blue:#0E76A8;--blue-dark:#0A5C82;--white-swatch:#FAF8F3;--beige-swatch:#D9C29C;--graylight-swatch:#C4CACC;--graydark-swatch:#5B6266;--black-swatch:#1B1C1E;--green-swatch:#7C8C6C;max-width:1140px;margin:0 auto;background:#FFFFFF;color:var(--ink);font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased;padding:0 20px;}
.gpz-article *{box-sizing:border-box;}
.gpz-article h1,.gpz-article h2,.gpz-article h3{font-family:'Poppins',sans-serif;color:var(--ink);line-height:1.25;font-weight:600;margin:0 0 .55em;}
.gpz-article h1{font-size:clamp(26px,4vw,36px);font-weight:700;}
.gpz-article h2{font-size:24px;margin-top:2.2em;}
.gpz-article h3{font-size:18px;margin-top:1.5em;}
.gpz-article p{margin:0 0 1.2em;color:var(--ink-soft);}
.gpz-article a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;font-weight:600;}
.gpz-article a:hover{color:var(--blue-dark);}
.gpz-breadcrumb{font-size:13px;color:#9B9FA3;margin:18px 0 22px;}
.gpz-breadcrumb a{color:#9B9FA3;font-weight:500;text-decoration:none;}
.gpz-breadcrumb a:hover{color:var(--blue);}
.gpz-hero{padding:8px 0 12px;border-bottom:1px solid var(--border);margin-bottom:28px;}
.gpz-hero .gpz-dek{font-size:17px;color:var(--ink-soft);margin-bottom:1.4em;}
.gpz-hero-photo{width:100%!important;height:360px!important;object-fit:cover;border-radius:10px;margin:0 0 30px;display:block;}
.gpz-article img{max-width:100%;height:auto;object-fit:cover;display:block;}
.gpz-inline-img{border-radius:8px;margin:1.4em auto;}
.gpz-table-wrap{overflow-x:auto;border:1px solid var(--black-swatch);border-radius:8px;margin:1.4em 0;}
.gpz-table{width:100%;border-collapse:collapse;min-width:640px;background:#fff;}
.gpz-table th,.gpz-table td{border:none !important;}
.gpz-table thead th{font-family:'Poppins',sans-serif;font-size:12px;letter-spacing:.03em;text-transform:uppercase;font-weight:600;text-align:left;color:var(--ink-soft);background:var(--gray-bg);padding:12px 16px;}
.gpz-table td{padding:14px 16px;vertical-align:top;font-size:14.5px;color:var(--ink-soft);}
.gpz-table td:first-child{font-weight:600;color:var(--ink);white-space:nowrap;}
.gpz-note{border:1px dashed var(--border);border-radius:8px;padding:14px 18px;font-size:13px;color:var(--ink-soft);margin:1.4em 0;background:var(--gray-bg);}
.gpz-card{border:1px solid var(--border);border-radius:8px;padding:20px 22px;margin:1.4em 0;background:#fff;}
.gpz-card h3{margin-top:0;}
.gpz-pros-cons{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:1.4em 0;}
.gpz-pros,.gpz-cons{border:1px solid var(--border);border-radius:8px;padding:14px 18px;background:var(--gray-bg);}
.gpz-pros{border-left:3px solid var(--blue);}
.gpz-cons{border-left:3px solid #C9CDD1;}
.gpz-pc-label{font-family:'Poppins',sans-serif;font-size:11px;font-weight:600;letter-spacing:.03em;text-transform:uppercase;display:block;margin-bottom:.5em;color:var(--blue);}
.gpz-cons .gpz-pc-label{color:#7A7F84;}
.gpz-pros-cons p{margin:0;font-size:14.5px;}
.gpz-icon-grid{display:flex;flex-wrap:wrap;gap:16px;margin:1.4em 0;}
.gpz-icon-box{flex:1 1 200px;min-width:160px;border:1px solid var(--border);border-radius:10px;padding:22px 18px;text-align:center;background:#fff;}
.gpz-icon-box .gpz-icon{width:34px;height:34px;margin:0 auto 12px;display:block;background-color:var(--blue);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;}
.gpz-icon-box[data-icon="check"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12l5 5L20 6'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="gota"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3C12 3 6 11 6 15a6 6 0 0 0 12 0c0-4-6-12-6-12z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3C12 3 6 11 6 15a6 6 0 0 0 12 0c0-4-6-12-6-12z'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="escudo"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8.5-7 10-4-1.5-7-5-7-10V6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l7 3v5c0 5-3 8.5-7 10-4-1.5-7-5-7-10V6z'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="reloj"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l4 2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l4 2'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="precio"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12l8-8h7a2 2 0 0 1 2 2v7l-8 8a2 2 0 0 1-3 0l-6-6a2 2 0 0 1 0-3z'/%3E%3Ccircle cx='15' cy='9' r='1.3'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12l8-8h7a2 2 0 0 1 2 2v7l-8 8a2 2 0 0 1-3 0l-6-6a2 2 0 0 1 0-3z'/%3E%3Ccircle cx='15' cy='9' r='1.3'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="hoja"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19c8 1 14-5 14-14C10 5 4 11 5 19z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 19c8 1 14-5 14-14C10 5 4 11 5 19z'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="casa"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7'/%3E%3Cpath d='M6 10v9h5v-5h2v5h5v-9'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11l8-7 8 7'/%3E%3Cpath d='M6 10v9h5v-5h2v5h5v-9'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="estrella"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.6 5.8 6.4.6-4.8 4.2 1.4 6.2L12 16.9 6.4 19.8l1.4-6.2L3 9.4l6.4-.6z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.6 5.8 6.4.6-4.8 4.2 1.4 6.2L12 16.9 6.4 19.8l1.4-6.2L3 9.4l6.4-.6z'/%3E%3C/svg%3E");}
.gpz-icon-box[data-icon="herramienta"] .gpz-icon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L4 17l3 3 5.3-5.3a4 4 0 0 0 5.4-5.4l-2.5 2.5-2-2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.7 6.3a4 4 0 0 0-5.4 5.4L4 17l3 3 5.3-5.3a4 4 0 0 0 5.4-5.4l-2.5 2.5-2-2z'/%3E%3C/svg%3E");}
.gpz-article ul{margin:0 0 1.2em;padding-left:0;list-style:none;}
.gpz-article ul li{position:relative;padding-left:22px;margin-bottom:.6em;color:var(--ink-soft);}
.gpz-article ul li::before{content:"";position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:1px;background:var(--blue);}
.gpz-btn{display:inline-block !important;background:var(--blue) !important;color:#fff !important;font-family:'Poppins',sans-serif;font-weight:600;font-size:14px !important;padding:12px 26px !important;border-radius:6px !important;text-decoration:none !important;margin:.6em 0 1.4em !important;opacity:1 !important;visibility:visible !important;}
.gpz-btn:hover{background:var(--blue-dark) !important;}
.gpz-faq{border-top:1px solid var(--border);margin-bottom:1.8em;}
.gpz-faq + .gpz-btn{margin-top:0.4em;}
.gpz-faq details{border-bottom:1px solid var(--border);padding:16px 2px;}
.gpz-faq summary{font-family:'Poppins',sans-serif;font-weight:600;font-size:15.5px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;color:var(--ink);}
.gpz-faq summary::-webkit-details-marker{display:none;}
.gpz-faq summary::after{content:"+";margin-left:auto;font-family:'Poppins',sans-serif;font-size:18px;color:var(--blue);font-weight:600;}
.gpz-faq details[open] summary::after{content:"\2013";}
.gpz-faq p{margin:.7em 0 0;padding-left:0;font-size:14.5px;}
.gpz-toc{border:1px solid var(--border);border-radius:8px;background:var(--gray-bg);padding:22px 24px;margin:0 0 2.2em;}
.gpz-toc-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border);}
.gpz-toc-title{font-family:'Poppins',sans-serif;font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);}
.gpz-toc-list{list-style:none;margin:0;padding:0;counter-reset:gpz-toc-counter;}
.gpz-toc-list li{counter-increment:gpz-toc-counter;margin-bottom:9px;}
.gpz-toc-list li:last-child{margin-bottom:0;}
.gpz-toc-list li a{display:flex;align-items:baseline;gap:10px;color:var(--ink-soft);text-decoration:none;font-weight:500;font-size:14.5px;}
.gpz-toc-list li a::before{content:counter(gpz-toc-counter);flex:none;width:20px;height:20px;border-radius:5px;background:#fff;border:1px solid var(--border);color:var(--blue);font-family:'Poppins',sans-serif;font-weight:600;font-size:11px;display:inline-flex;align-items:center;justify-content:center;}
.gpz-toc-list li a:hover{color:var(--blue-dark);}
@media (max-width:600px){.gpz-article{font-size:15px;}.gpz-pros-cons{grid-template-columns:1fr;}.gpz-icon-box{flex-basis:100%;}}
