/* Estilos de las páginas SEO generadas por seo_generar.py (categorías,
   productos, blog). Se apoya en beta.css (header, footer, tarjetas de
   producto, botones base) -- acá solo va lo propio de estas páginas.
   Creado el 21/09/2026. */
.seo-main{padding-top:26px;padding-bottom:70px;color:var(--text)}
.seo-crumbs{margin-bottom:22px;color:var(--muted);font-size:13px}
.seo-crumbs a{color:#126c64;font-weight:700;text-decoration:none}
.seo-crumbs a:hover{text-decoration:underline}
.seo-main h1{font-family:'Archivo Black',sans-serif;font-size:clamp(28px,4.4vw,44px);line-height:1.08;letter-spacing:-.02em;margin:0 0 14px}
.seo-main h2{font-size:clamp(20px,2.6vw,26px);line-height:1.2;margin:34px 0 12px;letter-spacing:-.01em}
.seo-main h3{font-size:18px;margin:22px 0 8px}
.seo-head{margin-bottom:24px}
.seo-lead{font-size:clamp(16px,2vw,19px);line-height:1.6;color:#33424b;max-width:820px;margin:0 0 14px}
.seo-meta{color:var(--muted);font-size:14px;margin:0 0 16px}
.seo-note{color:var(--muted);font-size:13px;margin:0 0 14px}
.seo-more{margin-top:16px;color:var(--muted);font-size:14px}
.seo-more a{color:#126c64;font-weight:800}
.seo-section{margin-top:38px}

/* Botones */
.seo-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}
.seo-btn{display:inline-block;border:0;border-radius:12px;padding:13px 20px;background:var(--orange);color:#1c1105;font-weight:800;font-size:15px;text-decoration:none;cursor:pointer;font-family:inherit}
.seo-btn:hover{filter:brightness(.96)}
.seo-btn-sec{background:#fff;color:var(--navy);border:1px solid var(--line)}
.seo-btn-wa{background:#20c978;color:#042116}
.seo-cta{margin:30px 0}

/* Grillas de tarjetas (reusa .product-card de beta.css) */
.seo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
a.seo-card{display:block;color:inherit;text-decoration:none}
a.seo-card:hover{border-color:#b9c8c2;box-shadow:0 8px 22px rgba(4,22,34,.09)}
.seo-card .product-image{aspect-ratio:1.25}
.seo-card .product-image img{width:100%;height:100%;object-fit:contain;padding:14px}
@media(max-width:900px){.seo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.seo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}}

/* Subcategorías / guías */
.seo-subcats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.seo-subcats a{display:inline-block;padding:9px 14px;border:1px solid var(--line);border-radius:99px;background:#fff;color:var(--navy);font-weight:700;font-size:14px;text-decoration:none}
.seo-subcats a:hover{border-color:var(--orange)}
.seo-subcats span{color:var(--muted);font-weight:600}
.seo-guias{margin:0;padding-left:20px;line-height:1.9}
.seo-guias a{color:#126c64;font-weight:700}

/* Producto */
.seo-product-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:34px;align-items:start}
.seo-gallery{border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px;display:grid;place-items:center}
.seo-gallery img{width:100%;height:auto;max-height:520px;object-fit:contain}
.seo-sku{color:var(--muted);font-size:13px;font-weight:700;letter-spacing:.04em;margin:0 0 12px}
.seo-price small{display:block;color:var(--muted);font-size:13px}
.seo-price strong{display:block;font-size:clamp(32px,5vw,42px);font-weight:800;letter-spacing:-.04em;margin:2px 0 10px}
.seo-pay{list-style:none;margin:0 0 12px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fbfdfc;line-height:1.9}
.seo-off{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:99px;background:#e8f8f1;color:#137251;font-size:11px;font-weight:800}
.seo-stock{font-weight:800;margin:0 0 6px}
.seo-stock.ok{color:#137251}.seo-stock.no{color:#b23c31}
.seo-added{padding:12px 14px;border-radius:12px;background:#e8f8f1;color:#0f5a41;font-weight:700}
.seo-added a{color:#0f5a41;text-decoration:underline}
.seo-benefits{margin:18px 0 0;padding-left:18px;color:#33424b;line-height:1.8;font-size:14px}
.seo-ficha{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;line-height:1.65;overflow-x:auto}
.seo-ficha table{max-width:100%}
@media(max-width:820px){.seo-product-grid{grid-template-columns:1fr;gap:20px}}

/* Blog */
.seo-posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:8px 0 30px}
.seo-post{display:flex;gap:16px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;color:inherit;text-decoration:none;transition:.18s}
.seo-post:hover{border-color:#b9c8c2;box-shadow:0 8px 22px rgba(4,22,34,.09)}
.seo-post-img{flex:0 0 132px;height:106px;border-radius:12px;background:#fff;border:1px solid #edf1ef;display:grid;place-items:center;overflow:hidden}
.seo-post-img img{width:100%;height:100%;object-fit:contain;padding:8px}
.seo-post-body h2{font-size:17px;line-height:1.28;margin:0 0 6px}
.seo-post-body p{margin:0 0 8px;color:#4a5962;font-size:14px;line-height:1.5}
.seo-post-body span{color:var(--muted);font-size:12px;font-weight:700}
@media(max-width:820px){.seo-posts{grid-template-columns:1fr}.seo-post-img{flex-basis:104px;height:92px}}

.seo-article{max-width:820px}
.seo-body section{margin-top:6px}
.seo-body p,.seo-body li{line-height:1.7;font-size:16.5px}
.seo-body ul,.seo-body ol{padding-left:22px;margin:10px 0 14px}
.seo-body li{margin-bottom:7px}
.seo-body a,.seo-lead a,.seo-faq a{color:#126c64;font-weight:700}
.seo-summary{border:1px solid #cfe5dc;background:#f0faf5;border-radius:16px;padding:16px 20px;margin:0 0 22px}
.seo-summary h2{font-size:15px;margin:0 0 8px;text-transform:uppercase;letter-spacing:.08em;color:#167467}
.seo-summary ul{margin:0;padding-left:20px}
.seo-summary li{line-height:1.6;margin-bottom:6px}
.seo-hero{margin:8px 0 26px;text-align:center}
.seo-hero img{width:100%;max-width:520px;height:auto;max-height:340px;object-fit:contain;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
.seo-hero figcaption{margin-top:8px;color:var(--muted);font-size:13px}
.seo-hero figcaption a{color:#126c64;font-weight:700}
.seo-inline-media{margin:20px 0 26px;text-align:center}
.seo-inline-media img{display:block;width:100%;max-width:560px;height:auto;max-height:390px;object-fit:contain;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px}
.seo-inline-media figcaption{max-width:620px;margin:8px auto 0;color:var(--muted);font-size:13px;line-height:1.5}
.seo-media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin:20px 0 28px}
.seo-media-grid .seo-inline-media{margin:0}
.seo-media-grid .seo-inline-media img{height:260px;padding:12px}
.seo-table{overflow-x:hidden;margin:14px 0 18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.seo-table table{border-collapse:collapse;width:100%;font-size:14.5px;min-width:0;table-layout:auto}
.seo-table th{background:#0c2434;color:#fff;text-align:left;padding:10px 12px;font-weight:700}
.seo-table td{padding:10px 12px;border-top:1px solid #edf1ef;vertical-align:top;line-height:1.5}
.seo-table tbody tr:nth-child(even) td{background:#fafcfb}
.seo-faq details{border:1px solid var(--line);border-radius:12px;background:#fff;margin-bottom:8px;padding:0 16px}
.seo-faq summary{cursor:pointer;font-weight:800;padding:14px 0}
.seo-faq details p{margin:0 0 14px;line-height:1.65}
.seo-fuentes ul{padding-left:20px;line-height:1.8;font-size:14px;word-break:break-word}
.seo-fuentes a{color:#126c64}

/* Reseñas (solo aparecen si resenas.json tiene datos reales) */
.seo-reviews{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:12px 0}
.seo-review{margin:0;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fff}
.seo-review blockquote{margin:0 0 10px;line-height:1.6;color:#26343d}
.seo-review figcaption{color:var(--muted);font-size:13px;font-weight:700}
.seo-rating{font-size:18px;margin:6px 0}
.seo-rating strong{color:#c77700}
.seo-glossary{display:grid;gap:10px;margin:18px 0}.seo-glossary details{border:1px solid #dce8e5;border-radius:14px;background:#f8fbfa;overflow:hidden}.seo-glossary summary{cursor:pointer;padding:14px 17px;color:#102f3a;font-size:1.03rem;list-style-position:inside}.seo-glossary details[open] summary{background:#eaf8f4;border-bottom:1px solid #dce8e5}.seo-glossary details p{margin:0;padding:14px 17px;line-height:1.68}.seo-glossary summary::marker{color:#078b71}

/* sin scroll horizontal en celular */
.seo-table th,.seo-table td{overflow-wrap:anywhere;word-break:normal}
@media(max-width:600px){.seo-table table{font-size:13px}.seo-table th,.seo-table td{padding:8px 7px}}
html,body{max-width:100%;overflow-x:hidden}
.seo-wrap img,article img,pre,code{max-width:100%}
pre{overflow-x:auto}
article a,.seo-wrap a,main a,li a,p a{overflow-wrap:anywhere}
