/*
Theme Name: Garaje Alemán
Theme URI: https://garajealeman.com
Author: Garaje Alemán
Description: Tema de bloques liviano para un blog de autos alemanes. Tokens editables desde Estilos, zonas de AdSense sin saltos de diseño, patrones de afiliados y tres variaciones de estilo.
Version: 1.0.1
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: garaje-aleman
Tags: blog, block-themes, full-site-editing, dark, one-column, two-columns, right-sidebar, custom-colors, custom-logo, editor-style
*/

/* Atajos a los colores de Estilos (theme.json). No escribir colores fijos aquí. */
:root{--ga-fondo:var(--wp--preset--color--fondo);--ga-superficie:var(--wp--preset--color--superficie);--ga-elevado:var(--wp--preset--color--elevado);--ga-linea:var(--wp--preset--color--linea);--ga-texto:var(--wp--preset--color--texto);--ga-suave:var(--wp--preset--color--texto-suave);--ga-plata:var(--wp--preset--color--plata);--ga-acento:var(--wp--preset--color--acento);--ga-acento-texto:var(--wp--preset--color--acento-texto)}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{height:auto;max-width:100%}
:focus-visible{outline:2px solid var(--ga-acento);outline-offset:2px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Reinicio de márgenes dentro de contenedores flex/grid del tema */
.ga-home-top>*,.ga-single>*,.ga-checklist>*,.ga-footer__cols>*,.ga-brand__head>*,.ga-brand>*,.ga-brands>*,.ga-header__inner>*,.ga-list__body>*,.ga-cards li>*,.ga-list li>*,.ga-hero li>*,.ga-producto>*,.ga-nota>*{margin-block:0}

/* Utilidades */
.ga-main{padding-block:clamp(20px,3vw,32px) clamp(40px,5vw,56px)}
.ga-main>*+*{margin-block-start:clamp(32px,4vw,44px)}
.ga-label{font-size:13px;color:var(--ga-suave);padding-bottom:12px;border-bottom:1px solid var(--ga-linea)}
.ga-eyebrow,.ga-eyebrow a{font-size:13px;color:var(--ga-acento);text-decoration:none}
.ga-eyebrow .wp-block-post-terms__separator{color:var(--ga-suave)}
.ga-date,.ga-lectura,.ga-meta{font-size:13px;color:var(--ga-suave)}
.ga-meta{gap:8px 16px}
.ga-codes{display:flex;flex-wrap:wrap;gap:6px}
.ga-codes .wp-block-post-terms__separator{display:none}
.ga-codes a{font-size:13px;color:var(--ga-plata);border:1px solid var(--ga-linea);border-radius:3px;padding:4px 8px;text-decoration:none;font-variant-numeric:tabular-nums}
.ga-codes a:hover{border-color:var(--ga-acento);color:var(--ga-acento)}
.wp-block-post-title a{color:inherit;text-decoration:none}
.wp-block-post-title a:hover{color:var(--ga-acento)}

/* Cabecera (fija) */
.wp-site-blocks>header.wp-block-template-part{position:sticky;top:0;z-index:50}
.admin-bar .wp-site-blocks>header.wp-block-template-part{top:var(--wp-admin--admin-bar--height,32px)}
.ga-header{background:var(--ga-fondo);border-bottom:1px solid var(--ga-linea)}
.ga-header__inner{min-height:68px;gap:20px}
.ga-logo,.ga-logo a{font-size:17px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--ga-texto);text-decoration:none;white-space:nowrap;margin:0}
.ga-nav{flex:1;font-size:15px;font-weight:500}
.ga-nav .wp-block-navigation-item__content{color:var(--ga-plata);text-decoration:none;min-height:44px;display:flex;align-items:center}
.ga-nav .wp-block-navigation-item__content:hover,.ga-nav .current-menu-item>.wp-block-navigation-item__content{color:var(--ga-texto)}
.ga-nav .current-menu-item>.wp-block-navigation-item__content{box-shadow:inset 0 -2px 0 var(--ga-acento)}
.wp-block-navigation__responsive-container-open,.wp-block-navigation__responsive-container-close{min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center;color:var(--ga-texto)}
.ga-cta .wp-block-button__link{padding:10px 16px;font-size:14px;white-space:nowrap}
.ga-search .wp-block-search__button{background:transparent;color:var(--ga-plata);border:1px solid var(--ga-linea);border-radius:4px;min-width:44px;min-height:44px;padding:0;display:flex;align-items:center;justify-content:center}
.ga-search .wp-block-search__button svg{fill:currentColor}
.wp-block-search__input{background:var(--ga-superficie);border:1px solid var(--ga-linea);border-radius:4px;color:var(--ga-texto);min-height:48px;padding:0 14px;font:inherit}
.wp-block-search__inside-wrapper{gap:8px}
@media (max-width:860px){.ga-cta{display:none}}
@media (max-width:599px){.ga-header__inner{min-height:56px;gap:4px}.ga-logo,.ga-logo a{font-size:15px}.ga-nav{order:3;flex:0}}

/* Miniaturas: imagen destacada o código de chasis/motor */
.ga-thumb{margin:0;border:1px solid var(--ga-linea);border-radius:4px;overflow:hidden;background:var(--ga-elevado)}
.ga-thumb img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.ga-thumb--hero img{aspect-ratio:16/9}
.ga-thumb--sm img{aspect-ratio:4/3}
.ga-thumb--fallback a{display:flex;align-items:center;justify-content:center;aspect-ratio:16/10;container-type:inline-size;text-decoration:none}
.ga-thumb--hero.ga-thumb--fallback a{aspect-ratio:16/9}
.ga-thumb--sm.ga-thumb--fallback a{aspect-ratio:4/3}
.ga-thumb--fallback span{font-weight:600;font-size:26cqw;line-height:1;letter-spacing:-.04em;color:color-mix(in srgb,var(--ga-plata) 22%,var(--ga-elevado))}

/* Tarjetas */
.ga-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:32px 28px}
.ga-cards li{display:flex;flex-direction:column;gap:10px;margin:0}
.ga-cards .wp-block-post-title,.ga-cards h3{font-size:19px;font-weight:500;line-height:1.3;text-wrap:pretty}
.ga-cards h3 a{color:inherit;text-decoration:none}
@media (min-width:560px){.ga-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:861px){.ga-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Inicio: destacado + lo último (escritorio = revista, móvil = editorial) */
.ga-home-top{display:grid;grid-template-columns:minmax(0,1fr);gap:36px}
.ga-hero .wp-block-post-template,.ga-list{list-style:none;margin:0;padding:0}
.ga-hero li{display:flex;flex-direction:column;gap:14px}
.ga-hero .wp-block-post-title{font-size:clamp(30px,4vw,42px);font-weight:600;line-height:1.08;letter-spacing:-.015em;text-wrap:balance}
.ga-hero__excerpt p{font-size:clamp(17px,1.4vw,19px);color:var(--ga-plata);margin:0;max-width:62ch}
.ga-hero__excerpt .wp-block-post-excerpt__more-text{display:none}
.ga-hero__more{display:none}
.ga-latest{display:flex;flex-direction:column;gap:20px}
.ga-latest>*{margin:0}
.ga-list{display:flex;flex-direction:column;gap:20px;counter-reset:ga}
.ga-list li{display:grid;grid-template-columns:112px minmax(0,1fr);gap:14px;align-items:start;margin:0;counter-increment:ga}
.ga-list__body{display:flex;flex-direction:column;gap:6px}
.ga-list .wp-block-post-title{font-size:16px;font-weight:500;line-height:1.3}
@media (min-width:861px){.ga-home-top{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:40px}}
@media (max-width:559px){
  .ga-hero .ga-thumb{display:none}
  .ga-hero{padding-block:16px 8px}
  .ga-hero .wp-block-post-title{font-size:32px}
  .ga-hero__more{display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:4px;background:var(--ga-acento);color:var(--ga-acento-texto);font-weight:500;text-decoration:none}
  .ga-list{gap:0}
  .ga-list li{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:16px 0;border-top:1px solid var(--ga-linea)}
  .ga-list li::before{content:counter(ga,decimal-leading-zero);color:var(--ga-acento);font-size:14px;padding-top:3px}
  .ga-list .ga-thumb{display:none}
  .ga-list .wp-block-post-title{font-size:19px}
  .ga-list .ga-date{display:none}
  .ga-label{border-bottom:0;padding-bottom:0}
}

/* Marcas */
.ga-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ga-tile{display:flex;flex-direction:column;gap:6px;padding:16px;min-height:44px;background:var(--ga-superficie);border:1px solid var(--ga-linea);border-radius:4px;text-decoration:none}
.ga-tile strong{font-weight:600;font-size:16px;color:var(--ga-texto)}
.ga-tile span{font-size:13px;color:var(--ga-suave)}
.ga-tile:hover{border-color:var(--ga-acento)}
@media (min-width:560px){.ga-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:861px){.ga-tiles{grid-template-columns:repeat(6,minmax(0,1fr))}}
.ga-brands{display:flex;flex-direction:column;gap:clamp(32px,4vw,44px)}
.ga-brand{display:flex;flex-direction:column;gap:24px}
.ga-brand__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;padding-bottom:16px;border-bottom:1px solid var(--ga-linea)}
.ga-brand__head h2{font-size:30px}
.ga-brand__head h2 a{color:inherit;text-decoration:none}
.ga-brand__more a{font-size:15px;font-weight:500;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
/* En celular: cada marca muestra su último artículo (antes se ocultaban todas las secciones) */
@media (max-width:559px){.ga-brands .ga-cards li:nth-child(n+2){display:none}.ga-brand__head h2{font-size:24px}}

/* Checklist (captura de correo) */
.ga-checklist{background:var(--ga-acento);color:var(--ga-acento-texto);border-radius:6px;padding:clamp(24px,4vw,40px);display:grid;grid-template-columns:minmax(0,1fr);gap:20px 40px;align-items:center}
.ga-checklist h2,.ga-checklist h3{color:inherit;font-size:clamp(22px,3vw,30px);line-height:1.15}
.ga-checklist p{margin:8px 0 0;font-size:17px}
.ga-form{display:flex;flex-wrap:wrap;gap:8px}
.ga-form input{flex:1 1 200px;min-width:0;min-height:48px;padding:0 14px;border:1px solid transparent;border-radius:4px;background:#fff;color:#111;font:inherit;font-size:16px}
.ga-form button{min-height:48px;padding:0 20px;border:0;border-radius:4px;background:var(--ga-fondo);color:var(--ga-texto);font:inherit;font-weight:500;cursor:pointer}
@media (min-width:861px){.ga-checklist:not(.ga-checklist--compacta){grid-template-columns:minmax(0,1.3fr) minmax(0,1fr)}}
.ga-checklist--compacta{padding:22px;gap:14px}
.ga-checklist--compacta h3{font-size:19px}
.ga-checklist--compacta .ga-form{flex-direction:column}
.ga-checklist--compacta .ga-form input{flex:none}
.ga-pronto{font-size:16px;font-weight:500}
.ga-pronto--admin{font-size:13px;font-weight:400;opacity:.8}
.ga-form-embed{min-width:0;max-width:100%}

/* Entrada individual */
.ga-migas{font-size:13px;color:var(--ga-suave);display:flex;flex-wrap:wrap;gap:8px;min-width:0}
.ga-migas a{color:var(--ga-suave);text-decoration:none}
.ga-migas a:hover{color:var(--ga-texto)}
.ga-migas [aria-current]{color:var(--ga-plata);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:40ch}
.ga-main>.ga-migas+*{margin-block-start:20px}
.ga-single{display:grid;grid-template-columns:minmax(0,1fr);gap:48px;align-items:start}
.ga-article{display:flex;flex-direction:column;gap:22px;min-width:0}
.ga-article>*{margin:0}
.ga-article h1.wp-block-post-title{font-size:clamp(30px,4.4vw,46px);line-height:1.08;letter-spacing:-.015em;text-wrap:balance}
.ga-content{font-size:clamp(17px,1.25vw,19px);line-height:1.7}
.ga-content>*{max-width:68ch}
.ga-content>*+*{margin-block-start:1.1em}
.ga-content h2{font-size:clamp(22px,2.4vw,28px);margin-block-start:1.6em}
.ga-content h3{font-size:clamp(19px,2vw,22px);margin-block-start:1.4em}
.ga-content .wp-block-table{overflow-x:auto}
.ga-single>.wp-block-template-part,.ga-sidebar{display:none}
/* Barra lateral: solo el anuncio A4 queda fijo al hacer scroll. Antes toda la barra era fija
   y medía más que la pantalla, así que la parte de abajo del anuncio 300×600 nunca se veía. */
@media (min-width:861px){
  .ga-single{grid-template-columns:minmax(0,1fr) 300px;gap:56px}
  .ga-single>.wp-block-template-part{display:flex;flex-direction:column;gap:32px;align-self:stretch}
  .ga-single>.wp-block-template-part>*{margin:0}
  .ga-single>.wp-block-template-part>.ga-ad--a4{position:sticky;top:96px}
  .admin-bar .ga-single>.wp-block-template-part>.ga-ad--a4{top:128px}
}
.ga-rel{display:flex;flex-direction:column;gap:20px}
.ga-rel__title{font-size:24px;margin:0}

/* Zonas de anuncio: altura reservada para evitar saltos (CLS) */
.ga-ad{display:flex;flex-direction:column;gap:6px;margin-block:28px;clear:both;max-width:100%}
.ga-ad__label{font-size:11px;color:var(--ga-suave)}
/* display:block (no flex): los anuncios adaptables de AdSense miden el ancho del contenedor;
   dentro de un flex centrado quedaban en 0 px y no cargaban ("availableWidth=0"). */
.ga-ad__slot{min-height:280px;display:block;width:100%;text-align:center;overflow:hidden}
.ga-ad--a6 .ga-ad__slot{min-height:250px}
.ga-ad--a4{display:none}
@media (min-width:861px){.ga-ad--a1 .ga-ad__slot{min-height:250px}.ga-ad--a4{display:flex}.ga-ad--a4 .ga-ad__slot{min-height:600px}}
.ga-article>.ga-ad,.ga-main>.ga-ad{margin-block:0}

/* Patrones */
.ga-producto{background:var(--ga-superficie);border:1px solid var(--ga-linea);border-radius:6px;padding:clamp(20px,3vw,28px);display:flex;flex-direction:column;gap:10px;margin-block:32px!important}
.ga-producto__label{font-size:13px;color:var(--ga-suave)}
.ga-producto h3{font-size:21px;line-height:1.25}
.ga-producto__ventaja{font-size:16px;color:var(--ga-plata);padding-left:20px;position:relative}
.ga-producto__ventaja::before{content:"+";position:absolute;left:0;color:var(--ga-acento)}
.ga-producto__tiendas,.ga-producto__nota{font-size:13px;color:var(--ga-suave)}
.ga-producto .wp-block-buttons{margin-top:6px}
.ga-nota{border:1px solid color-mix(in srgb,var(--ga-plata) 25%,var(--ga-fondo));border-radius:6px;overflow:hidden;padding:0!important}
.ga-nota__titulo{background:var(--ga-elevado);padding:10px 18px;font-size:13px;color:var(--ga-acento)}
.ga-nota>p:not(.ga-nota__titulo){padding:14px 18px;font-size:17px;line-height:1.6}
.ga-aviso{font-size:14px;line-height:1.6;color:var(--ga-suave);border-top:1px solid var(--ga-linea);padding-top:16px;max-width:68ch}
.ga-aviso--top{border-top:0;padding:10px 14px;background:var(--ga-superficie);border-left:2px solid var(--ga-acento);border-radius:0 4px 4px 0}
.ga-fecha-legal{font-size:14px;color:var(--ga-suave)}
.ga-tabla-motores,.ga-ficha{border:1px solid var(--ga-linea);border-radius:4px;overflow-x:auto}
.ga-tabla-motores table,.ga-ficha table{border-collapse:collapse;width:100%;font-size:16px}
.ga-tabla-motores table{min-width:520px}
.ga-tabla-motores th,.ga-tabla-motores td,.ga-ficha th,.ga-ficha td{border:0;border-top:1px solid var(--ga-linea);padding:12px 16px;text-align:left;vertical-align:middle}
.ga-tabla-motores thead th{border-top:0;background:var(--ga-superficie);font-size:12px;font-weight:500;color:var(--ga-suave)}
.ga-tabla-motores td:first-child,.ga-ficha td:first-child{font-weight:600;color:var(--ga-plata);white-space:nowrap}
.ga-ficha tr:first-child td{border-top:0}
.ga-riesgo{display:inline-flex;align-items:center;gap:8px;font-size:13px}
.ga-riesgo::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.ga-riesgo--bajo{color:var(--wp--preset--color--riesgo-bajo)}
.ga-riesgo--medio{color:var(--wp--preset--color--riesgo-medio)}
.ga-riesgo--alto{color:var(--wp--preset--color--riesgo-alto)}
.ga-proscontras h3{font-size:17px}
.ga-proscontras .wp-block-column{background:var(--ga-superficie);border:1px solid var(--ga-linea);border-radius:6px;padding:20px}
.ga-pros{color:var(--wp--preset--color--riesgo-bajo)!important}
.ga-contras{color:var(--wp--preset--color--riesgo-alto)!important}

/* Archivo, búsqueda, 404 */
.ga-archive-head{display:flex;flex-direction:column;gap:16px;padding-bottom:32px;border-bottom:1px solid var(--ga-linea)}
.ga-archive-head>*{margin:0}
.ga-archive-head h1{font-size:clamp(40px,7vw,72px);letter-spacing:-.02em;line-height:1}
.ga-archive-head .wp-block-term-description{font-size:clamp(17px,1.4vw,19px);color:var(--ga-plata);max-width:60ch}
.ga-archive-head .wp-block-term-description p{margin:0}
.wp-block-query-pagination{gap:6px;margin-top:40px}
.wp-block-query-pagination a,.wp-block-query-pagination .page-numbers{min-width:44px;min-height:44px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ga-linea);border-radius:4px;color:var(--ga-plata);text-decoration:none}
.wp-block-query-pagination .page-numbers.current{background:var(--ga-acento);border-color:var(--ga-acento);color:var(--ga-acento-texto)}
.wp-block-query-pagination .page-numbers.dots{border:0}
.ga-404{text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;padding-block:clamp(24px,6vw,64px)}
.ga-404>*{margin:0}
.ga-404__num{font-size:clamp(96px,14vw,160px);font-weight:600;letter-spacing:-.05em;line-height:1;color:color-mix(in srgb,var(--ga-plata) 22%,var(--ga-fondo))}
.ga-404 .wp-block-search{width:100%;max-width:520px}
.ga-404 .ga-tiles{width:100%;max-width:900px;margin-top:16px}

/* Pie de página */
.ga-footer{background:color-mix(in srgb,var(--ga-fondo) 80%,#000);border-top:1px solid var(--ga-linea);color:var(--ga-suave);padding-block:40px 28px;font-size:15px}
.ga-footer a{color:var(--ga-suave);text-decoration:none}
.ga-footer a:hover{color:var(--ga-texto)}
.ga-footer__cols{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}
.ga-footer__cols>div>*{margin:0}
.ga-footer__cols>div{display:flex;flex-direction:column;gap:10px}
.ga-footer__titulo{font-size:13px;color:var(--ga-plata)}
.ga-footer__links{line-height:2.4}
.ga-footer__bottom{font-size:13px;border-top:1px solid var(--ga-linea);padding-top:20px;margin-top:32px!important}
@media (min-width:560px){.ga-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:861px){.ga-footer__cols{grid-template-columns:minmax(0,2fr) repeat(3,minmax(0,1fr));gap:40px}.ga-footer__links{line-height:2}}
