 /* =============================================
       VARIABLES & RESET
    ============================================= */
 :root {
     --color-bg: #1a1a1a;
     --color-surface: #111111;
     --color-accent: #cc1f1f;
     --color-accent-hover: #e02222;
     --color-text: #e8e8e8;
     --color-muted: #999999;
     --color-border: #2a2a2a;
     --color-white: #ffffff;
     --font-heading: 'Georgia', 'Times New Roman', serif;
     --font-body: system-ui, -apple-system, 'Segoe UI', sans-serif;
     --transition: 150ms ease;
 }



 /* =============================================
       FOOTER
    ============================================= */

 footer {
     width: 100%;

 }

 .footer {
     background: var(--color-surface);
     border-top: 3px solid var(--color-accent);
     margin-top: 56px;
 }

 .footer__inner {
     max-width: 1280px;
     margin: 0 auto;
     padding: 48px 24px 32px;
     display: grid;
     grid-template-columns: 200px 1fr 300px;
     gap: 40px;
     align-items: start;
 }

 /* =============================================
       COL 1 — LOGO + CONTACTO
    ============================================= */

 .footer__logo {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 64px;
     height: 64px;
     /* background: var(--color-bg); */
     border-radius: 4px;
     margin-bottom: 28px;
 }

 .footer__logo svg {
     width: 44px;
     height: 44px;
 }

 .contact-list {
     list-style: none;
     display: flex;
     flex-direction: column;
     gap: 16px;
     padding-left: 0;
 }

 .contact-item__label {
     display: block;
     font-size: 10px;
     font-weight: 700;
     letter-spacing: 0.12em;
     text-transform: uppercase;
     color: var(--color-muted);
     margin-bottom: 4px;
 }

 .contact-item__value {
     font-size: 13px;
     color: var(--color-text);
     line-height: 1.5;
 }

 .contact-item__value a {
     color: inherit;
     text-decoration: none;
     transition: color var(--transition);
 }

 .contact-item__value a:hover {
     color: var(--color-accent);
 }

 /* Redes sociales */
 .social-row {
     display: flex;

     gap: 10px;
     margin-top: 24px;
 }

 .social-link {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 34px;
     height: 34px;
     border: 1px solid var(--color-border);
     border-radius: 50%;
     color: var(--color-muted);
     text-decoration: none;
     transition: border-color var(--transition), color var(--transition), background var(--transition);
 }

 .social-link:hover {
     border-color: var(--color-accent);
     color: var(--color-white);
     background: var(--color-accent);
 }

 .social-link svg {
     width: 16px;
     height: 16px;
 }

 /* =============================================
       COL 2 — SECCIONES (2 columnas internas)
    ============================================= */
 .footer__nav {
     display: grid;
     grid-template-columns: 1fr 1fr;
     gap: 0 24px;
 }

 .nav-col__title {
     display: none;
     /* sin título visible, solo estructura */
 }

 .nav-list {
     list-style: none;
     display: flex;
     flex-direction: column;
     padding-left: 0;
 }

 .nav-list__item a {
     display: flex;
     align-items: center;
     justify-content: space-between;
     padding: 9px 0;
     font-size: 13px;
     color: var(--color-muted);
     text-decoration: none;
     border-bottom: 1px solid var(--color-border);
     transition: color var(--transition), padding-left var(--transition);
     gap: 8px;
 }

 .nav-list__item a:hover {
     color: var(--color-white);
     /* padding-left: 6px; */
 }

 .nav-list__item a .arrow {
     flex-shrink: 0;
     opacity: 0.35;
     font-size: 11px;
     transition: opacity var(--transition), transform var(--transition);
 }

 .nav-list__item a:hover .arrow {
     opacity: 1;
     /* transform: translateX(3px); */
 }

 /* "Ver todo" especial */
 .nav-list__item--highlight a {
     color: var(--color-accent);
     font-weight: 600;
 }

 /* Bloque premios */
 .awards-block {
     margin-top: 28px;
     grid-column: 1 / -1;
 }

 .awards-block__title {
     font-size: 10px;
     letter-spacing: 0.12em;
     text-transform: uppercase;
     color: var(--color-muted);
     font-weight: 700;
     margin-bottom: 12px;
 }

 .awards-logos {
     display: flex;
     align-items: center;
     gap: 20px;
     flex-wrap: wrap;
 }

 .awards-logos img {
     height: 36px;
     width: auto;
     opacity: 0.6;
     filter: grayscale(1) brightness(1.4);
     transition: opacity var(--transition);
 }

 .awards-logos img:hover {
     opacity: 1;
 }

 /* =============================================
       COL 3 — REVISTA + OTRAS
    ============================================= */
 .footer__magazine {}

 .edition-badge {
     display: flex;
     align-items: center;
     gap: 8px;
     margin-bottom: 12px;
 }

 .edition-badge__dot {
     width: 8px;
     height: 8px;
     border-radius: 50%;
     background: var(--color-accent);
     flex-shrink: 0;
 }

 .edition-badge__text {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 0.08em;
     text-transform: uppercase;
     color: var(--color-muted);
 }

 .magazine-card {
     display: grid;
     grid-template-columns: 80px 1fr;
     gap: 14px;
     align-items: start;
     margin-bottom: 20px;
 }

 .magazine-card__cover {
     width: 80px;
     height: 104px;
     object-fit: cover;
     border-radius: 2px;
     background: var(--color-border);
     display: block;
 }

 .magazine-card__cover-placeholder {
     width: 80px;
     height: 104px;
     background: linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%);
     border-radius: 2px;
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 10px;
     color: var(--color-muted);
     text-align: center;
     line-height: 1.3;
     padding: 8px;
     border: 1px solid var(--color-border);
 }

 .magazine-card__info {}

 .magazine-card__title {
     font-family: var(--font-heading);
     font-size: 14px;
     font-weight: 700;
     color: var(--color-white);
     line-height: 1.3;
     margin-bottom: 6px;
 }

 .magazine-card__subtitle {
     font-size: 11px;
     color: var(--color-muted);
     line-height: 1.5;
     margin-bottom: 10px;
 }

 .subscribe-price {
     font-size: 12px;
     color: var(--color-muted);
     margin-bottom: 10px;
 }

 .subscribe-price strong {
     color: var(--color-white);
 }

 .subscribe-price .bianual {
     text-decoration: line-through;
     opacity: 0.6;
 }

 .btn-subscribe {
     display: inline-block;
     background: var(--color-accent);
     color: var(--color-white);
     font-size: 12px;
     font-weight: 700;
     letter-spacing: 0.04em;
     padding: 8px 18px;
     border-radius: 3px;
     text-decoration: none;
     border: none;
     cursor: pointer;
     transition: background var(--transition), transform var(--transition);
 }

 .btn-subscribe:hover {
     background: var(--color-accent-hover);
     transform: translateY(-1px);
 }

 /* Otras revistas */
 .other-magazines__title {
     font-size: 11px;
     font-weight: 700;
     letter-spacing: 0.1em;
     text-transform: uppercase;
     color: var(--color-muted);
     margin-bottom: 10px;
 }

 .other-magazines__grid {
     display: flex;
     gap: 8px;
 }

 .other-mag {
     flex: 1;
     height: 64px;
     border-radius: 3px;
     background: var(--color-border);
     display: flex;
     align-items: center;
     justify-content: center;
     font-size: 9px;
     font-weight: 700;
     color: var(--color-muted);
     letter-spacing: 0.06em;
     text-transform: uppercase;
     text-decoration: none;
     transition: background var(--transition), color var(--transition);
     border: 1px solid transparent;
 }

 .other-mag:hover {
     background: var(--color-bg);
     border-color: var(--color-accent);
     color: var(--color-white);
 }

 /* =============================================
       FOOTER BOTTOM
    ============================================= */
 .footer__bottom {
     border-top: 1px solid var(--color-border);
     margin-top: 32px;
     padding-top: 20px;
     font-size: 11px;
     color: var(--color-muted);
     line-height: 1.6;
 }

 /* =============================================
       RESPONSIVE
    ============================================= */
 @media (max-width: 1024px) {
     .footer__inner {
         grid-template-columns: 180px 1fr;
         grid-template-rows: auto auto;
     }

     .footer__magazine {
         grid-column: 1 / -1;
         display: grid;
         grid-template-columns: 1fr 1fr;
         gap: 24px;
     }
 }


 @media (max-width: 640px) {
     .footer__inner {
         grid-template-columns: 1fr;
     }

     .footer__magazine {
         grid-template-columns: 1fr;
     }

     .footer__nav {
         grid-template-columns: 1fr;
     }

     .social-row {
         justify-content: center;
     }

     .footer__brand {
         text-align: center;
     }

 }