/* ══════════════════════════════════════════════════════════════════
   IA en Primera Plana — blog frontend (v0.7.0)
   ══════════════════════════════════════════════════════════════════
   Este archivo contiene TODO el styling del blog. Porteado 1:1 del
   mockup-blog-v3.html, con tres ajustes:
     1. Todo está scopeado a `body.gf-iapp-standalone` para no pisar
        nada del theme activo.
     2. Todas las classes del mockup se prefijaron con `gf-` para
        evitar colisiones con clases genéricas del theme (.card,
        .filter, .masthead, etc.).
     3. Los tokens del mockup se mapearon a CSS vars con namespace
        `--gf-*` así `dynamic-css.php` puede sobreescribirlos desde
        el Customizer.

   Tres vistas:
     - .gf-blog-home      → archive (v1 del mockup — home editorial)
     - .gf-blog-article   → single (v2 del mockup — artículo c/ sidebar)
     - .gf-blog-seccion   → taxonomy (v3 del mockup — sección / pilar)

   Las tres comparten nav, masthead-mini, section-rule, cards, footer.
   ══════════════════════════════════════════════════════════════════ */

/* ═══════════════════════════════════════════════
   DESIGN TOKENS — defaults editables vía Customizer
   dynamic-css.php inyecta overrides con los mismos nombres.
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone {
  /* FAMILIAS */
  --gf-f-body: "Gilroy","Outfit","Inter",system-ui,-apple-system,sans-serif;
  --gf-f-serif: "Fraunces", Georgia, serif;

  /* TAMAÑOS */
  --gf-f-hero: 130px;
  --gf-f-masthead-sub: 34px;
  --gf-f-title: 64px;
  --gf-f-title-sec: 110px;
  --gf-f-h2: 30px;
  --gf-f-h3: 24px;
  --gf-f-dek: 30px;
  --gf-f-body-sz: 22px;
  --gf-f-body-lg: 24px;
  --gf-f-label: 16px;
  --gf-f-label-lg: 18px;
  --gf-f-small: 14px;

  /* PESOS / line-height / letter-spacing */
  --gf-w-hero: 900;
  --gf-w-head: 800;
  --gf-w-body: 400;
  --gf-w-nav: 500;
  --gf-w-btn: 700;
  --gf-w-label: 700;
  --gf-lh-hero: 0.88;
  --gf-lh-body: 1.75;
  --gf-ls-hero: -5px;

  /* PALETA */
  --gf-c-bg: #fdfdfc;
  --gf-c-bg-alt: #f3f3f1;
  --gf-c-ink: #0a0a0a;
  --gf-c-ink-2: #161616;
  --gf-c-line: #c0c0c0;
  --gf-c-mute: #555;
  --gf-c-mute-2: #8b8b8b;
  --gf-c-accent: #CC785C;
  --gf-c-accent-soft: #f5e6df;
  --gf-c-accent-dark: #B86549;

  /* ANCHO */
  --gf-wrap: 88%;
  --gf-wrap-max: 1680px;

  /* LÍNEAS */
  --gf-line: 2px solid var(--gf-c-ink);
  --gf-line-light: 2px solid var(--gf-c-line);
  --gf-line-accent: 2px solid var(--gf-c-accent);
}

/* ═══════════════════════════════════════════════
   BODY RESET — solo dentro del scope standalone
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone {
  margin: 0;
  padding: 0;
  font-family: var(--gf-f-body);
  font-size: var(--gf-f-body-sz);
  font-weight: var(--gf-w-body);
  line-height: var(--gf-lh-body);
  color: var(--gf-c-ink);
  background: var(--gf-c-bg);
  -webkit-font-smoothing: antialiased;
}
body.gf-iapp-standalone * { box-sizing: border-box; }
body.gf-iapp-standalone a { color: inherit; text-decoration: none; }
body.gf-iapp-standalone img { max-width: 100%; display: block; }
body.gf-iapp-standalone button { font-family: inherit; }

/* grano de papel */
body.gf-iapp-standalone::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  opacity: .04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* reading progress bar — solo en single */
body.gf-iapp-standalone .gf-progress {
  position: fixed;
  top: 0;
  left: 0;
  height: 4px;
  width: 0%;
  background: var(--gf-c-accent);
  z-index: 200;
  transition: width .1s;
}

/* ═══════════════════════════════════════════════
   NAV MÍNIMA (se usa en las 3 vistas)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-iapp-nav {
  padding: 32px 0;
  width: var(--gf-wrap);
  max-width: var(--gf-wrap-max);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--gf-c-bg);
  position: relative;
  z-index: 3;
}
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-logo {
  font-family: var(--gf-f-body);
  font-size: 18px;
  font-weight: var(--gf-w-nav);
  letter-spacing: 1px;
  color: var(--gf-c-ink);
}
/* Nav links — full site navigation (mockup v3) */
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-links {
  display: flex;
  gap: 36px;
}
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-links a {
  font-size: var(--gf-f-label);
  font-weight: var(--gf-w-nav);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: color .3s;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-links a:hover,
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-links a.gf-active {
  color: var(--gf-c-accent);
}
/* Legacy back link (single/section templates) */
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-back {
  font-size: var(--gf-f-label);
  font-weight: var(--gf-w-nav);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  opacity: .6;
  color: var(--gf-c-ink);
  transition: opacity .3s, color .3s;
}
body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-back:hover { opacity: 1; color: var(--gf-c-accent); }

/* Hamburger button — hidden on desktop, shown on mobile/tablet */
body.gf-iapp-standalone .gf-hamburger {
  display: none;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  width: 28px;
  height: 28px;
  padding: 0;
  background: none;
  border: none;
  cursor: pointer;
  z-index: 1001;
}
body.gf-iapp-standalone .gf-hamburger span {
  display: block;
  width: 100%;
  height: 2px;
  background: var(--gf-c-ink);
  border-radius: 1px;
  transition: transform .3s, opacity .3s;
}
body.gf-iapp-standalone .gf-hamburger.gf-ham-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
body.gf-iapp-standalone .gf-hamburger.gf-ham-open span:nth-child(2) { opacity: 0; }
body.gf-iapp-standalone .gf-hamburger.gf-ham-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

/* Mobile menu overlay */
body.gf-iapp-standalone .gf-mob-menu {
  display: none;
  position: fixed;
  inset: 0;
  background: var(--gf-c-bg);
  z-index: 1000;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 32px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .3s;
}
body.gf-iapp-standalone .gf-mob-menu a {
  font-family: var(--gf-f-serif);
  font-size: 28px;
  font-weight: 700;
  color: var(--gf-c-ink);
  text-decoration: none;
  letter-spacing: -0.5px;
  transition: color .3s;
}
body.gf-iapp-standalone .gf-mob-menu a:hover,
body.gf-iapp-standalone .gf-mob-menu a.gf-active { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-mob-close {
  position: absolute;
  top: 24px;
  right: 24px;
  background: none;
  border: none;
  font-size: 36px;
  line-height: 1;
  color: var(--gf-c-ink);
  cursor: pointer;
  padding: 8px;
  z-index: 1002;
}
body.gf-iapp-standalone .gf-mob-close:hover { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-mob-menu.gf-mob-open {
  opacity: 1;
  pointer-events: auto;
}

/* ═══════════════════════════════════════════════
   WRAP (las tres vistas)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-wrap {
  width: var(--gf-wrap);
  max-width: var(--gf-wrap-max);
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* ═══════════════════════════════════════════════
   MASTHEAD GRANDE (v1 — home editorial)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-masthead-big { padding-top: 32px; border-top: var(--gf-line); }

body.gf-iapp-standalone .gf-dateline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 18px 0;
  border-bottom: var(--gf-line-light);
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
  gap: 16px;
  flex-wrap: wrap;
}
body.gf-iapp-standalone .gf-dateline .gf-left,
body.gf-iapp-standalone .gf-dateline .gf-right { display: flex; gap: 20px; align-items: center; }
body.gf-iapp-standalone .gf-dateline .gf-edicion { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-dateline .gf-dot {
  width: 10px;
  height: 10px;
  background: var(--gf-c-accent);
  border-radius: 50%;
  animation: gf-pulse 2s infinite;
}
@keyframes gf-pulse {
  0%,100% { transform: scale(1); opacity: 1; }
  50%     { transform: scale(1.4); opacity: .6; }
}

body.gf-iapp-standalone .gf-masthead-title {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-hero);
  font-weight: 900;
  line-height: var(--gf-lh-hero);
  letter-spacing: var(--gf-ls-hero);
  text-align: center;
  padding: 48px 0 16px;
  color: var(--gf-c-ink);
  margin: 0;
}
body.gf-iapp-standalone .gf-masthead-title em { font-style: italic; color: var(--gf-c-accent); font-weight: 700; }

body.gf-iapp-standalone .gf-masthead-sub {
  text-align: center;
  font-family: var(--gf-f-serif);
  font-style: italic;
  font-size: var(--gf-f-masthead-sub);
  color: var(--gf-c-mute);
  padding-bottom: 32px;
  letter-spacing: .2px;
  font-weight: 400;
  margin: 0;
}

body.gf-iapp-standalone .gf-masthead-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 22px 0;
  border-bottom: var(--gf-line);
  font-size: 15px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
  gap: 16px;
  flex-wrap: wrap;
}
body.gf-iapp-standalone .gf-masthead-meta .gf-ai-mark { display: flex; align-items: center; gap: 10px; color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-masthead-meta .gf-star { font-size: 18px; }

/* ═══════════════════════════════════════════════
   CARTA DEL EDITOR
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-editor-note {
  display: grid;
  grid-template-columns: 180px 1fr auto;
  gap: 32px;
  align-items: center;
  padding: 36px 0;
  border-bottom: var(--gf-line-light);
}
body.gf-iapp-standalone .gf-editor-note .gf-label {
  font-family: var(--gf-f-body);
  font-size: var(--gf-f-label-lg);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-editor-note .gf-msg {
  font-family: var(--gf-f-serif);
  font-size: 24px;
  line-height: 1.45;
  font-style: italic;
  font-weight: 500;
  color: var(--gf-c-ink);
  margin: 0;
}
body.gf-iapp-standalone .gf-editor-note .gf-sign {
  font-family: var(--gf-f-body);
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
  text-align: right;
  white-space: nowrap;
}

/* ═══════════════════════════════════════════════
   LA BIBLIOTECA — Evergreens (fondo blanco, cards grises)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-biblioteca {
  background: var(--gf-c-bg);
  color: var(--gf-c-ink);
  padding: 56px 0 48px;
  margin-top: 0;
}
body.gf-iapp-standalone .gf-biblioteca > .gf-wrap { border-top: var(--gf-line); padding-top: 48px; }
body.gf-iapp-standalone .gf-biblioteca-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: 36px;
  flex-wrap: wrap;
  gap: 16px;
}
body.gf-iapp-standalone .gf-bib-label {
  display: block;
  font-size: var(--gf-f-small);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-accent);
  margin-bottom: 8px;
}
body.gf-iapp-standalone .gf-biblioteca-head h2 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-h2);
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  margin: 0;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-bib-count {
  font-size: var(--gf-f-small);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
}
body.gf-iapp-standalone .gf-bib-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-auto-rows: 1fr;
  gap: 24px;
  padding: 4px 0 8px;
}
body.gf-iapp-standalone .gf-pager {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
  padding: 28px 0 0;
}
body.gf-iapp-standalone .gf-pager-btn {
  width: 48px;
  height: 48px;
  border: 1px solid var(--gf-c-line);
  background: var(--gf-c-bg);
  color: var(--gf-c-ink);
  font-size: 20px;
  cursor: pointer;
  transition: all .2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.gf-iapp-standalone .gf-pager-btn:hover:not(:disabled) {
  background: var(--gf-c-ink);
  color: var(--gf-c-bg);
  border-color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-pager-btn:disabled {
  opacity: .3;
  cursor: default;
}
body.gf-iapp-standalone .gf-pager-info {
  font-size: 14px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--gf-c-mute);
  min-width: 60px;
  text-align: center;
}
body.gf-iapp-standalone .gf-bib-card {
  min-height: 320px;
  background: var(--gf-c-bg-alt);
  border: 1px solid var(--gf-c-line);
  display: flex;
  cursor: pointer;
  transition: all .3s ease;
  position: relative;
  color: var(--gf-c-ink);
  text-decoration: none;
  overflow: hidden;
}
/* ─── Side-by-side layout: text left, image right ─── */
body.gf-iapp-standalone .gf-bib-text {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 28px;
  min-width: 0;
}
body.gf-iapp-standalone .gf-bib-img {
  width: 42%;
  flex-shrink: 0;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-bib-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .4s ease;
}
body.gf-iapp-standalone .gf-bib-card:hover .gf-bib-img img {
  transform: scale(1.04);
}
body.gf-iapp-standalone .gf-bib-card:hover {
  border-color: var(--gf-c-ink);
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0,0,0,0.06);
}
body.gf-iapp-standalone .gf-bib-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  margin-bottom: 20px;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-bib-num {
  font-family: var(--gf-f-serif);
  font-weight: 900;
  font-size: 36px;
  line-height: 1;
  color: var(--gf-c-accent);
  flex-shrink: 0;
}
body.gf-iapp-standalone .gf-bib-tag {
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-mute);
  border: 1px solid var(--gf-c-line);
  padding: 4px 8px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%;
}
body.gf-iapp-standalone .gf-bib-body { flex: 1; }
body.gf-iapp-standalone .gf-bib-body h3 {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 10px;
  color: var(--gf-c-ink);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-bib-body p {
  font-size: 15px;
  line-height: 1.45;
  color: var(--gf-c-mute);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-bib-foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--gf-c-line);
}
body.gf-iapp-standalone .gf-bib-foot span {
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--gf-c-mute);
}
body.gf-iapp-standalone .gf-bib-arrow {
  font-size: 20px;
  color: var(--gf-c-accent);
  transition: transform .2s;
}
body.gf-iapp-standalone .gf-bib-card:hover .gf-bib-arrow { transform: translateX(4px); }
body.gf-iapp-standalone .gf-bib-card:hover .gf-bib-body p,
body.gf-iapp-standalone .gf-bib-card:hover .gf-bib-foot span { color: var(--gf-c-ink); }
body.gf-iapp-standalone .gf-bib-card:hover .gf-bib-tag { color: var(--gf-c-ink); border-color: var(--gf-c-ink); }

/* ─── Guía Práctica — dark card variant ─── */
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card {
  background: #161616;
  border-color: #2a2a2a;
  color: #fdfdfc;
}
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-num { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-tag {
  color: #c0c0c0;
  border-color: #444;
}
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-body h3 { color: #fdfdfc; }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-body p { color: #a0a0a0; }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-foot {
  border-top-color: #333;
}
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-foot span { color: #a0a0a0; }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card .gf-bib-arrow { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card:hover {
  border-color: var(--gf-c-accent);
  box-shadow: 0 4px 20px rgba(204,120,92,0.15);
}
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card:hover .gf-bib-body p,
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card:hover .gf-bib-foot span { color: #fdfdfc; }
body.gf-iapp-standalone .gf-biblioteca--guia .gf-bib-card:hover .gf-bib-tag { color: #fdfdfc; border-color: #fdfdfc; }

/* ═══════════════════════════════════════════════
   ÚLTIMAS PUBLICACIONES — Diarios grid
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-ultimas {
  padding-top: 0;
}
body.gf-iapp-standalone .gf-ultimas-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
  padding-bottom: 64px;
}
body.gf-iapp-standalone .gf-ult-card {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: transform .25s;
  color: var(--gf-c-ink);
  text-decoration: none;
  padding-bottom: 32px;
  border-bottom: 1px solid var(--gf-c-line);
}
body.gf-iapp-standalone .gf-ult-card:hover { transform: translateY(-4px); }
body.gf-iapp-standalone .gf-ult-card.gf-ult-featured {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 48px;
  align-items: start;
  padding-bottom: 48px;
  border-bottom: var(--gf-line);
}
body.gf-iapp-standalone .gf-ult-visual {
  aspect-ratio: 16/10;
  overflow: hidden;
  border: 2px solid var(--gf-c-ink);
  background: linear-gradient(135deg, #CC785C 0%, #161616 100%);
}
body.gf-iapp-standalone .gf-ult-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.gf-iapp-standalone .gf-ult-num {
  font-family: var(--gf-f-serif);
  font-weight: 800;
  font-size: 14px;
  color: var(--gf-c-accent);
  letter-spacing: 1px;
  margin-bottom: 4px;
  display: inline-block;
}
body.gf-iapp-standalone .gf-ult-kicker {
  display: inline-block;
  font-size: var(--gf-f-small);
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-left: 12px;
}
body.gf-iapp-standalone .gf-ult-content h3 {
  font-family: var(--gf-f-serif);
  font-size: 28px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.5px;
  margin: 8px 0 12px;
}
body.gf-iapp-standalone .gf-ult-featured .gf-ult-content h3 { font-size: 40px; letter-spacing: -1px; }
body.gf-iapp-standalone .gf-ult-dek {
  font-family: var(--gf-f-serif);
  font-size: 18px;
  line-height: 1.4;
  font-style: italic;
  color: var(--gf-c-mute);
  margin: 0 0 16px;
}
body.gf-iapp-standalone .gf-ult-meta {
  display: flex;
  gap: 8px;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
}
body.gf-iapp-standalone .gf-ultimas-empty {
  text-align: center;
  padding: 80px 0;
  color: var(--gf-c-mute);
}
body.gf-iapp-standalone .gf-ultimas-empty .gf-star {
  display: block;
  font-size: 32px;
  color: var(--gf-c-accent);
  margin-bottom: 16px;
}
body.gf-iapp-standalone .gf-ultimas-empty p {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-style: italic;
  max-width: 480px;
  margin: 0 auto;
  line-height: 1.4;
}

/* ═══════════════════════════════════════════════
   GUÍA PRÁCTICA — Sección home
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-guia-section {
  background: var(--gf-c-bg);
  padding: 0 0 32px;
}
body.gf-iapp-standalone .gf-guia-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  padding-bottom: 48px;
}
body.gf-iapp-standalone .gf-guia-card {
  display: flex;
  flex-direction: column;
  padding: 24px;
  border: 1px solid var(--gf-c-line);
  background: var(--gf-c-bg);
  text-decoration: none;
  color: var(--gf-c-ink);
  transition: all .3s ease;
}
body.gf-iapp-standalone .gf-guia-card:hover {
  border-color: var(--gf-c-ink);
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.06);
}
body.gf-iapp-standalone .gf-guia-card-num {
  font-family: var(--gf-f-serif);
  font-weight: 900;
  font-size: 24px;
  color: var(--gf-c-accent);
  margin-bottom: 4px;
}
body.gf-iapp-standalone .gf-guia-card-kicker {
  font-size: 11px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-mute);
  margin-bottom: 12px;
}
body.gf-iapp-standalone .gf-guia-card h3 {
  font-family: var(--gf-f-serif);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 8px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-guia-card-dek {
  font-size: 15px;
  line-height: 1.4;
  color: var(--gf-c-mute);
  margin: 0 0 auto;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-guia-card-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid var(--gf-c-line);
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 600;
  color: var(--gf-c-mute);
}
body.gf-iapp-standalone .gf-guia-card-arrow {
  font-size: 18px;
  color: var(--gf-c-accent);
  transition: transform .2s;
}
body.gf-iapp-standalone .gf-guia-card:hover .gf-guia-card-arrow { transform: translateX(4px); }

/* ═══════════════════════════════════════════════
   PORTADA (v1 — featured article)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-portada {
  padding: 80px 0;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 64px;
  align-items: start;
}
body.gf-iapp-standalone .gf-portada-text .gf-kicker {
  display: inline-block;
  font-size: var(--gf-f-label);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  padding-bottom: 8px;
  border-bottom: var(--gf-line-accent);
  margin-bottom: 28px;
}
body.gf-iapp-standalone .gf-portada-text h1 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-title);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -2px;
  color: var(--gf-c-ink);
  margin: 0 0 28px;
}
body.gf-iapp-standalone .gf-portada-text .gf-dek {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-dek);
  line-height: 1.4;
  font-weight: 400;
  font-style: italic;
  color: var(--gf-c-mute);
  margin: 0 0 36px;
  max-width: 640px;
}
body.gf-iapp-standalone .gf-portada-meta {
  display: flex;
  align-items: center;
  gap: 24px;
  flex-wrap: wrap;
  padding: 18px 0;
  border-top: var(--gf-line-light);
  border-bottom: var(--gf-line-light);
  font-size: var(--gf-f-small);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
}
body.gf-iapp-standalone .gf-portada-meta .gf-sep {
  width: 5px;
  height: 5px;
  background: var(--gf-c-mute);
  border-radius: 50%;
}
body.gf-iapp-standalone .gf-portada-tldr {
  margin-top: 36px;
  padding: 28px 32px;
  background: var(--gf-c-accent-soft);
  border-left: 5px solid var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-portada-tldr .gf-tldr-label {
  font-size: var(--gf-f-small);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-accent-dark);
  margin-bottom: 14px;
  display: block;
}
body.gf-iapp-standalone .gf-portada-tldr p {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-body-lg);
  line-height: 1.5;
  color: var(--gf-c-ink);
  font-weight: 500;
  margin: 0;
}
body.gf-iapp-standalone .gf-portada-tldr .gf-ai-credit {
  display: block;
  margin-top: 16px;
  font-family: var(--gf-f-body);
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent-dark);
  font-weight: 700;
}
body.gf-iapp-standalone .gf-portada-visual {
  position: relative;
  aspect-ratio: 4/5;
  background: linear-gradient(135deg, #CC785C 0%, #161616 100%);
  display: flex;
  align-items: flex-end;
  padding: 36px;
  border: 2px solid var(--gf-c-ink);
  overflow: hidden;
}
body.gf-iapp-standalone .gf-portada-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
body.gf-iapp-standalone .gf-portada-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E");
  mix-blend-mode: overlay;
  z-index: 1;
}
body.gf-iapp-standalone .gf-portada-visual .gf-caption {
  position: relative;
  z-index: 2;
  color: #fff;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-weight: 700;
  border-left: 3px solid var(--gf-c-accent);
  padding-left: 14px;
  max-width: 280px;
  line-height: 1.4;
}

/* ═══════════════════════════════════════════════
   SECTION RULE (separador de bloques)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-section-rule {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  padding: 48px 0 32px;
  border-top: var(--gf-line);
  margin-top: 0;
  gap: 16px;
  flex-wrap: wrap;
}
body.gf-iapp-standalone .gf-section-rule h2 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-h2);
  font-weight: 800;
  font-style: italic;
  color: var(--gf-c-ink);
  line-height: 1;
  padding-top: 24px;
  margin: 0;
}
body.gf-iapp-standalone .gf-section-rule .gf-count {
  font-size: var(--gf-f-small);
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
  white-space: nowrap;
  padding-top: 24px;
}

/* ═══════════════════════════════════════════════
   CARDS (guía-grid y sec-grid)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-guia-grid,
body.gf-iapp-standalone .gf-sec-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
  padding-bottom: 64px;
}
body.gf-iapp-standalone .gf-sec-grid { padding: 24px 0 96px; }

body.gf-iapp-standalone .gf-card {
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: transform .25s;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-card:hover { transform: translateY(-6px); }
body.gf-iapp-standalone .gf-card:hover .gf-thumb { border-color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-card .gf-thumb {
  aspect-ratio: 4/3;
  margin-bottom: 24px;
  border: 2px solid var(--gf-c-ink);
  position: relative;
  overflow: hidden;
  transition: border-color .25s;
  background: linear-gradient(135deg, #f3f3f1 0%, #CC785C 100%);
}
body.gf-iapp-standalone .gf-card .gf-thumb img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c1 { background: linear-gradient(135deg, #f3f3f1 0%, #CC785C 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c2 { background: linear-gradient(135deg, #161616 0%, #CC785C 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c3 { background: linear-gradient(135deg, #CC785C 0%, #f5e6df 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c4 { background: linear-gradient(135deg, #0a0a0a 0%, #555 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c5 { background: linear-gradient(135deg, #f5e6df 0%, #161616 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb.gf-c6 { background: linear-gradient(135deg, #c0c0c0 0%, #CC785C 100%); }
body.gf-iapp-standalone .gf-card .gf-thumb .gf-tag {
  position: absolute;
  top: 14px;
  left: 14px;
  background: var(--gf-c-bg);
  padding: 6px 12px;
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-ink);
  z-index: 2;
}
body.gf-iapp-standalone .gf-card .gf-kicker {
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-bottom: 12px;
}
body.gf-iapp-standalone .gf-card h3 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-h3);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -.5px;
  color: var(--gf-c-ink);
  margin: 0 0 14px;
}
body.gf-iapp-standalone .gf-card p {
  font-size: 18px;
  line-height: 1.5;
  color: var(--gf-c-mute);
  margin: 0 0 16px;
}
body.gf-iapp-standalone .gf-card .gf-meta {
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  font-weight: 700;
  margin-top: auto;
  padding-top: 16px;
  border-top: var(--gf-line-light);
}

/* ═══════════════════════════════════════════════
   DATO DEL DÍA
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-dato-dia {
  padding: 96px 0;
  text-align: center;
}
body.gf-iapp-standalone .gf-dato-dia .gf-label {
  display: inline-block;
  font-size: 15px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  padding: 8px 20px;
  border: 2px solid var(--gf-c-accent);
  margin-bottom: 40px;
}
body.gf-iapp-standalone .gf-dato-dia .gf-num {
  font-family: var(--gf-f-serif);
  font-size: 220px;
  font-weight: 900;
  line-height: .85;
  letter-spacing: -10px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-dato-dia .gf-num span { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-dato-dia .gf-copy {
  font-family: var(--gf-f-serif);
  font-size: 28px;
  font-style: italic;
  font-weight: 500;
  max-width: 780px;
  margin: 32px auto 0;
  color: var(--gf-c-mute);
  line-height: 1.4;
}
body.gf-iapp-standalone .gf-dato-dia .gf-source {
  margin-top: 28px;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  font-weight: 700;
}

/* ═══════════════════════════════════════════════
   BREVES
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-breves-wrap { padding: 64px 0; }
body.gf-iapp-standalone .gf-breves {
  background: var(--gf-c-ink-2);
  color: var(--gf-c-bg);
  padding: 56px 64px;
  border-top: var(--gf-line-accent);
}
body.gf-iapp-standalone .gf-breves-head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(255,255,255,.15);
  margin-bottom: 28px;
  flex-wrap: wrap;
  gap: 16px;
}
body.gf-iapp-standalone .gf-breves-head .gf-label {
  font-size: 15px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  display: block;
  margin-bottom: 8px;
}
body.gf-iapp-standalone .gf-breves-head h2 {
  font-family: var(--gf-f-serif);
  font-size: 44px;
  font-weight: 800;
  font-style: italic;
  line-height: 1;
  margin: 0;
}
body.gf-iapp-standalone .gf-breves-head .gf-ts {
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  font-weight: 700;
}
body.gf-iapp-standalone .gf-breve-item {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  gap: 24px;
  align-items: baseline;
  padding: 22px 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
  cursor: pointer;
  transition: padding-left .2s;
}
body.gf-iapp-standalone .gf-breve-item:last-child { border-bottom: none; }
body.gf-iapp-standalone .gf-breve-item:hover { padding-left: 12px; }
body.gf-iapp-standalone .gf-breve-item .gf-n {
  font-family: var(--gf-f-serif);
  font-size: 32px;
  font-weight: 800;
  color: var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-breve-item .gf-txt {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  line-height: 1.4;
  font-weight: 400;
}
body.gf-iapp-standalone .gf-breve-item .gf-txt b { font-weight: 700; color: var(--gf-c-bg); }
body.gf-iapp-standalone .gf-breve-item .gf-when {
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  font-weight: 700;
}

/* ═══════════════════════════════════════════════
   COURSE NUDGE (callout bajo Guía Práctica)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-course-nudge {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: center;
  padding: 36px 48px;
  margin: 48px 0 0;
  border: 1px solid var(--gf-c-line);
  background: var(--gf-c-bg-alt);
  transition: all .25s;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-course-nudge:hover { background: var(--gf-c-ink); color: var(--gf-c-bg); border-color: var(--gf-c-ink); }
body.gf-iapp-standalone .gf-course-nudge .gf-nudge-text {
  font-family: var(--gf-f-serif);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.4;
  color: inherit;
}
body.gf-iapp-standalone .gf-course-nudge .gf-nudge-text em { color: var(--gf-c-accent); font-style: italic; font-weight: 700; }
body.gf-iapp-standalone .gf-course-nudge .gf-nudge-text b  { color: var(--gf-c-accent); font-weight: 800; }
body.gf-iapp-standalone .gf-course-nudge .gf-nudge-btn {
  font-family: var(--gf-f-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 16px 24px;
  background: var(--gf-c-accent);
  color: #fff;
  border: 1px solid var(--gf-c-accent);
  transition: all .2s;
}
body.gf-iapp-standalone .gf-course-nudge:hover .gf-nudge-btn { background: transparent; color: #fff; }

/* ═══════════════════════════════════════════════
   FOOTER del blog — old-school
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-blog-footer {
  padding: 56px 0 44px;
  border-top: var(--gf-line);
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 32px;
  font-size: 14px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-blog-footer .gf-copy {
  text-align: left;
  font-family: var(--gf-f-body);
  font-weight: 500;
  letter-spacing: .3px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-blog-footer .gf-copy .gf-name {
  font-family: var(--gf-f-serif);
  font-style: italic;
  font-weight: 700;
  font-size: 18px;
  color: var(--gf-c-ink);
  margin-right: 6px;
}
body.gf-iapp-standalone .gf-blog-footer .gf-copy .gf-sep {
  display: inline-block;
  margin: 0 10px;
  color: var(--gf-c-mute);
  font-weight: 400;
}
body.gf-iapp-standalone .gf-blog-footer .gf-copy .gf-rights {
  font-size: 12px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 600;
}
body.gf-iapp-standalone .gf-blog-footer .gf-socials {
  display: flex;
  gap: 18px;
  justify-content: flex-end;
  align-items: center;
}
body.gf-iapp-standalone .gf-blog-footer .gf-socials a {
  color: var(--gf-c-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--gf-c-ink);
  transition: all .25s;
}
body.gf-iapp-standalone .gf-blog-footer .gf-socials a:hover {
  color: var(--gf-c-accent);
  border-color: var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-blog-footer .gf-socials svg { width: 18px; height: 18px; display: block; }

/* ═══════════════════════════════════════════════
   ARTICLE HEAD (v2 — single)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-article-head {
  padding: 72px 0 48px;
  border-bottom: var(--gf-line);
  text-align: left;
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 64px;
  align-items: start;
}
body.gf-iapp-standalone .gf-article-head .gf-head-text { max-width: 760px; }
body.gf-iapp-standalone .gf-art-kicker {
  font-size: var(--gf-f-label);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-bottom: 28px;
  display: inline-block;
  padding-bottom: 8px;
  border-bottom: var(--gf-line-accent);
}
body.gf-iapp-standalone .gf-article-head h1 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-title);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -2px;
  margin: 0 0 28px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-article-head .gf-dek {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-dek);
  line-height: 1.4;
  font-weight: 400;
  font-style: italic;
  color: var(--gf-c-mute);
  margin: 0 0 36px;
}
body.gf-iapp-standalone .gf-author-bar {
  display: flex;
  gap: 24px;
  align-items: center;
  padding-top: 24px;
  border-top: var(--gf-line-light);
  flex-wrap: wrap;
}
body.gf-iapp-standalone .gf-author-bar .gf-avatar {
  width: 60px;
  height: 60px;
  background: var(--gf-c-accent-soft);
  border: 2px solid var(--gf-c-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--gf-f-serif);
  font-weight: 800;
  font-size: 24px;
  color: var(--gf-c-accent-dark);
}
body.gf-iapp-standalone .gf-author-bar .gf-info { display: flex; flex-direction: column; gap: 6px; }
body.gf-iapp-standalone .gf-author-bar .gf-name { font-weight: 700; font-size: 16px; letter-spacing: .5px; }
body.gf-iapp-standalone .gf-author-bar .gf-meta {
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  font-weight: 600;
}
body.gf-iapp-standalone .gf-author-bar .gf-spacer { flex: 1; }
body.gf-iapp-standalone .gf-author-bar .gf-read-time {
  font-size: 14px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.gf-iapp-standalone .gf-article-head .gf-head-visual {
  aspect-ratio: 4/5;
  background: linear-gradient(135deg, #CC785C 0%, #161616 100%);
  border: 2px solid var(--gf-c-ink);
  position: relative;
  min-height: 440px;
  overflow: hidden;
}
body.gf-iapp-standalone .gf-article-head .gf-head-visual img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
body.gf-iapp-standalone .gf-article-head .gf-head-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E");
  mix-blend-mode: overlay;
  z-index: 1;
}

/* ═══════════════════════════════════════════════
   BODY + SIDEBAR (v2)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-art-layout {
  padding: 64px 0;
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
  gap: 80px;
  align-items: start;
}
body.gf-iapp-standalone .gf-art-main { min-width: 0; }
body.gf-iapp-standalone .gf-art-side {
  min-width: 0;
  position: sticky;
  top: 100px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}

/* TL;DR box */
body.gf-iapp-standalone .gf-art-tldr {
  margin-bottom: 48px;
  padding: 32px 36px;
  background: var(--gf-c-accent-soft);
  border-left: 5px solid var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-art-tldr .gf-lab {
  display: block;
  margin-bottom: 14px;
  font-size: var(--gf-f-small);
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent-dark);
  font-weight: 700;
}
body.gf-iapp-standalone .gf-art-tldr p {
  font-family: var(--gf-f-serif);
  font-size: 24px;
  line-height: 1.55;
  font-weight: 500;
  color: var(--gf-c-ink);
  margin: 0;
}
body.gf-iapp-standalone .gf-art-tldr .gf-credit {
  display: block;
  margin-top: 18px;
  font-family: var(--gf-f-body);
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent-dark);
  font-weight: 700;
}

/* Selector de lectura */
body.gf-iapp-standalone .gf-lectura {
  margin: 0 0 56px;
  padding: 28px 0;
  border-top: var(--gf-line);
  border-bottom: var(--gf-line);
}
body.gf-iapp-standalone .gf-lectura-lab {
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
}
body.gf-iapp-standalone .gf-lectura-lab .gf-ai { color: var(--gf-c-accent); font-size: 16px; }
body.gf-iapp-standalone .gf-lectura-title {
  font-family: var(--gf-f-serif);
  font-size: 32px;
  font-weight: 700;
  font-style: italic;
  margin-bottom: 22px;
}
body.gf-iapp-standalone .gf-lectura-opts { display: flex; gap: 12px; flex-wrap: wrap; }
body.gf-iapp-standalone .gf-lec-opt {
  padding: 18px 28px;
  border: 2px solid var(--gf-c-ink);
  background: var(--gf-c-bg);
  font-family: var(--gf-f-body);
  font-weight: 700;
  cursor: pointer;
  transition: all .2s;
  font-size: 18px;
  letter-spacing: .2px;
  min-width: 140px;
  text-align: center;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-lec-opt:hover { background: var(--gf-c-accent-soft); }
body.gf-iapp-standalone .gf-lec-opt.on { background: var(--gf-c-ink); color: var(--gf-c-bg); border-color: var(--gf-c-ink); }

/* Cuerpo del artículo */
body.gf-iapp-standalone .gf-art-body {
  font-family: var(--gf-f-body);
  font-size: var(--gf-f-body-sz);
  line-height: var(--gf-lh-body);
  color: var(--gf-c-ink);
  text-align: justify;
}
body.gf-iapp-standalone .gf-art-body p { margin: 0 0 28px; text-align: justify; }
/* Drop cap eliminado — primera letra igual que el resto */
body.gf-iapp-standalone .gf-art-body h2 {
  font-family: var(--gf-f-sans);
  font-size: 30px;
  font-weight: 700;
  margin: 40px 0 16px;
  letter-spacing: -0.3px;
  line-height: 1.25;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-art-body h3 {
  font-family: var(--gf-f-sans);
  font-size: 24px;
  font-weight: 700;
  margin: 32px 0 12px;
  letter-spacing: 0;
  line-height: 1.3;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-art-body blockquote {
  margin: 48px 0;
  padding: 32px 36px;
  border-left: 5px solid var(--gf-c-accent);
  background: var(--gf-c-accent-soft);
  font-family: var(--gf-f-serif);
  font-size: 30px;
  font-style: italic;
  font-weight: 500;
  line-height: 1.35;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-art-body ul,
body.gf-iapp-standalone .gf-art-body ol {
  margin: 0 0 28px;
  padding-left: 28px;
}
body.gf-iapp-standalone .gf-art-body li { margin-bottom: 12px; text-align: justify; }

/* CAFÉ box */
body.gf-iapp-standalone .gf-cafe-box {
  margin: 48px 0;
  background: var(--gf-c-bg-alt);
  border: 2px solid var(--gf-c-ink);
  padding: 32px 36px;
}
body.gf-iapp-standalone .gf-cafe-box .gf-lab {
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-bottom: 12px;
  display: block;
}
body.gf-iapp-standalone .gf-cafe-box .gf-formula {
  font-family: var(--gf-f-serif);
  font-size: 34px;
  font-weight: 800;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-cafe-box .gf-formula b,
body.gf-iapp-standalone .gf-cafe-box .gf-formula strong { color: var(--gf-c-accent); }

/* ═══════════════════════════════════════════════
   SIDEBAR modules
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-side-box {
  border: 2px solid var(--gf-c-ink);
  padding: 28px;
  background: var(--gf-c-bg);
}
body.gf-iapp-standalone .gf-side-box.gf-dark { background: var(--gf-c-ink-2); color: var(--gf-c-bg); }
body.gf-iapp-standalone .gf-side-box .gf-lab {
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--gf-c-accent);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.gf-iapp-standalone .gf-side-box h4 {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-weight: 700;
  font-style: italic;
  line-height: 1.2;
  margin: 0 0 16px;
}
body.gf-iapp-standalone .gf-side-box p {
  font-size: 14px;
  line-height: 1.5;
  margin: 0;
}
body.gf-iapp-standalone .gf-side-box .gf-cta-btn {
  display: inline-block;
  padding: 12px 20px;
  background: var(--gf-c-accent);
  color: #fff;
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  font-weight: 700;
  margin-top: 16px;
}

/* Progress box */
body.gf-iapp-standalone .gf-progress-box .gf-bar {
  height: 6px;
  background: var(--gf-c-bg-alt);
  margin-bottom: 10px;
  position: relative;
}
body.gf-iapp-standalone .gf-progress-box .gf-fill {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0%;
  background: var(--gf-c-accent);
  transition: width .15s;
}
body.gf-iapp-standalone .gf-progress-box .gf-info {
  display: flex;
  justify-content: space-between;
  font-size: 12px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
}

/* Author mini */
body.gf-iapp-standalone .gf-author-mini { display: flex; gap: 16px; align-items: center; }
body.gf-iapp-standalone .gf-author-mini .gf-ava {
  width: 56px;
  height: 56px;
  background: var(--gf-c-accent);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-weight: 800;
  flex-shrink: 0;
  border: 2px solid var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-author-mini .gf-info .gf-name { font-weight: 700; font-size: 15px; margin-bottom: 2px; }
body.gf-iapp-standalone .gf-author-mini .gf-info .gf-role {
  font-size: 12px;
  color: var(--gf-c-mute);
  letter-spacing: 1px;
  text-transform: uppercase;
  font-weight: 600;
}

/* Pull quote */
body.gf-iapp-standalone .gf-pull-quote {
  padding: 24px 0;
  border-top: var(--gf-line);
  border-bottom: var(--gf-line);
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-style: italic;
  line-height: 1.3;
  font-weight: 500;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-pull-quote .gf-pq-open,
body.gf-iapp-standalone .gf-pull-quote .gf-pq-close {
  font-size: 48px;
  color: var(--gf-c-accent);
  font-style: normal;
  line-height: 0;
  vertical-align: -16px;
}
body.gf-iapp-standalone .gf-pull-quote .gf-pq-open {
  margin-right: 4px;
}
body.gf-iapp-standalone .gf-pull-quote .gf-pq-close {
  margin-left: 4px;
}

/* ═══════════════════════════════════════════════
   QUESTIONS (preguntas pre-generadas)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-questions {
  margin: 64px 0 48px;
  background: var(--gf-c-ink-2);
  color: var(--gf-c-bg);
  padding: 56px 64px;
  border-top: var(--gf-line-accent);
}
body.gf-iapp-standalone .gf-questions .gf-lab {
  font-size: 14px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-bottom: 14px;
  display: block;
}
body.gf-iapp-standalone .gf-questions h3 {
  font-family: var(--gf-f-serif);
  font-size: 44px;
  font-weight: 800;
  font-style: italic;
  margin: 0 0 36px;
  line-height: 1.05;
}
body.gf-iapp-standalone .gf-q-item {
  display: grid;
  grid-template-columns: 60px 1fr 40px;
  gap: 20px;
  align-items: center;
  padding: 24px 0;
  border-top: 1px solid rgba(255,255,255,.12);
  cursor: pointer;
  transition: padding-left .2s;
}
body.gf-iapp-standalone .gf-q-item:hover { padding-left: 12px; }
body.gf-iapp-standalone .gf-q-item .gf-n {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-weight: 700;
  color: var(--gf-c-accent);
}
body.gf-iapp-standalone .gf-q-item .gf-q {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  line-height: 1.35;
  font-weight: 500;
}
body.gf-iapp-standalone .gf-q-item .gf-arr {
  font-size: 22px;
  color: var(--gf-c-accent);
  text-align: right;
}
body.gf-iapp-standalone .gf-q-answer {
  grid-column: 1 / -1;
  margin-top: 14px;
  padding: 18px 24px;
  background: rgba(255,255,255,.04);
  border-left: 3px solid var(--gf-c-accent);
  font-family: var(--gf-f-body);
  font-size: 16px;
  line-height: 1.6;
  color: #e8e8e8;
  display: none;
}
body.gf-iapp-standalone .gf-q-item.gf-open .gf-q-answer { display: block; }
body.gf-iapp-standalone .gf-q-foot {
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.08);
  font-size: 13px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute-2);
  text-align: center;
  font-weight: 600;
}
body.gf-iapp-standalone .gf-q-foot .gf-star { color: var(--gf-c-accent); }

/* ═══════════════════════════════════════════════
   NEXT article card
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-next-art {
  margin: 64px 0 80px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 32px;
  align-items: center;
  padding: 40px 48px;
  border: 2px solid var(--gf-c-ink);
  background: var(--gf-c-bg-alt);
  cursor: pointer;
  transition: all .25s;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-next-art:hover { background: var(--gf-c-ink); color: var(--gf-c-bg); }
body.gf-iapp-standalone .gf-next-art:hover .gf-next-lab { color: var(--gf-c-accent); }
body.gf-iapp-standalone .gf-next-lab {
  font-size: 13px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-mute);
  font-weight: 700;
  transition: color .25s;
}
body.gf-iapp-standalone .gf-next-title {
  font-family: var(--gf-f-serif);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.1;
}
body.gf-iapp-standalone .gf-next-arr { font-size: 32px; color: var(--gf-c-accent); }

/* ═══════════════════════════════════════════════
   VIEW 3 — SECCIÓN
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-sec-hero {
  padding: 48px 0 56px;
  border-bottom: var(--gf-line);
  text-align: center;
}
body.gf-iapp-standalone .gf-sec-hero .gf-sup {
  font-size: 15px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  margin-bottom: 24px;
  display: block;
}
body.gf-iapp-standalone .gf-sec-hero h1 {
  font-family: var(--gf-f-serif);
  font-size: var(--gf-f-title-sec);
  font-weight: 900;
  line-height: .88;
  letter-spacing: -4px;
  margin: 0 0 28px;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-sec-hero h1 em { color: var(--gf-c-accent); font-style: italic; }
body.gf-iapp-standalone .gf-sec-hero .gf-desc {
  font-family: var(--gf-f-serif);
  font-size: 28px;
  font-style: italic;
  color: var(--gf-c-mute);
  max-width: 760px;
  margin: 0 auto;
  line-height: 1.4;
}
body.gf-iapp-standalone .gf-sec-filters {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
  padding: 40px 0 48px;
}
body.gf-iapp-standalone .gf-filter {
  padding: 14px 24px;
  border: 2px solid var(--gf-c-ink);
  background: var(--gf-c-bg);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  cursor: pointer;
  transition: all .2s;
  color: var(--gf-c-ink);
}
body.gf-iapp-standalone .gf-filter:hover { background: var(--gf-c-accent-soft); }
body.gf-iapp-standalone .gf-filter.gf-on { background: var(--gf-c-ink); color: var(--gf-c-bg); }

/* ═══════════════════════════════════════════════
   PAGINATION (home + sección)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-pagination {
  display: flex;
  justify-content: center;
  gap: 12px;
  padding: 40px 0 80px;
  flex-wrap: wrap;
}
body.gf-iapp-standalone .gf-pagination a,
body.gf-iapp-standalone .gf-pagination span {
  padding: 12px 20px;
  border: 2px solid var(--gf-c-ink);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: all .2s;
  color: var(--gf-c-ink);
  background: var(--gf-c-bg);
}
body.gf-iapp-standalone .gf-pagination a:hover { background: var(--gf-c-accent-soft); }
body.gf-iapp-standalone .gf-pagination .current { background: var(--gf-c-ink); color: var(--gf-c-bg); }

/* ═══════════════════════════════════════════════
   EMPTY STATE (cuando no hay posts)
   ═══════════════════════════════════════════════ */
body.gf-iapp-standalone .gf-empty-state {
  padding: 96px 0;
  text-align: center;
  border-top: var(--gf-line-light);
  border-bottom: var(--gf-line-light);
  margin: 48px 0;
}
body.gf-iapp-standalone .gf-empty-state .gf-kicker {
  display: inline-block;
  font-size: 14px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--gf-c-accent);
  font-weight: 700;
  padding: 8px 20px;
  border: 2px solid var(--gf-c-accent);
  margin-bottom: 24px;
}
body.gf-iapp-standalone .gf-empty-state h2 {
  font-family: var(--gf-f-serif);
  font-size: 44px;
  font-weight: 800;
  font-style: italic;
  color: var(--gf-c-ink);
  margin: 0 0 20px;
  line-height: 1.1;
}
body.gf-iapp-standalone .gf-empty-state p {
  font-family: var(--gf-f-serif);
  font-size: 22px;
  font-style: italic;
  color: var(--gf-c-mute);
  max-width: 640px;
  margin: 0 auto 32px;
  line-height: 1.5;
}
body.gf-iapp-standalone .gf-empty-state .gf-cta {
  display: inline-block;
  padding: 16px 28px;
  background: var(--gf-c-ink);
  color: var(--gf-c-bg);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  border: 2px solid var(--gf-c-ink);
  transition: all .2s;
}
body.gf-iapp-standalone .gf-empty-state .gf-cta:hover { background: var(--gf-c-accent); border-color: var(--gf-c-accent); }

/* ═══════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════ */
@media (max-width: 1200px) {
  body.gf-iapp-standalone { --gf-wrap: 90%; }
  body.gf-iapp-standalone .gf-portada { grid-template-columns: 1fr; gap: 48px; }
  body.gf-iapp-standalone .gf-article-head { grid-template-columns: 1fr; gap: 48px; }
  body.gf-iapp-standalone .gf-article-head .gf-head-visual { order: -1; width: 100%; aspect-ratio: 16/9; }
  body.gf-iapp-standalone .gf-article-head .gf-head-text { max-width: none; }
  body.gf-iapp-standalone .gf-art-layout { grid-template-columns: 1fr; gap: 48px; }
  body.gf-iapp-standalone .gf-art-side { position: static; }
  body.gf-iapp-standalone .gf-biblioteca { padding: 48px 0; }
  body.gf-iapp-standalone .gf-bib-grid { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  body.gf-iapp-standalone .gf-bib-card { min-height: 260px; }
  body.gf-iapp-standalone .gf-bib-text { padding: 22px; }
  body.gf-iapp-standalone .gf-bib-img { width: 38%; }
  body.gf-iapp-standalone .gf-bib-body h3 { font-size: 18px; }
  body.gf-iapp-standalone .gf-sec-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 1024px) {
  /* Nav: hide links, show hamburger */
  body.gf-iapp-standalone .gf-iapp-nav .gf-iapp-links { display: none; }
  body.gf-iapp-standalone .gf-hamburger { display: flex; }
  body.gf-iapp-standalone .gf-mob-menu { display: flex; }

  body.gf-iapp-standalone {
    --gf-f-hero: 110px;
    --gf-f-title: 56px;
    --gf-f-h2: 36px;
    --gf-f-h3: 26px;
    --gf-f-body-sz: 20px;
    --gf-f-dek: 26px;
    --gf-f-masthead-sub: 28px;
    --gf-f-title-sec: 88px;
  }
  body.gf-iapp-standalone .gf-masthead-title { padding: 36px 0 12px; }
  body.gf-iapp-standalone .gf-masthead-sub { padding-bottom: 24px; }
  body.gf-iapp-standalone .gf-dato-dia .gf-num { font-size: 160px; }
  body.gf-iapp-standalone .gf-dato-dia { padding: 72px 0; }
  body.gf-iapp-standalone .gf-article-head { padding: 56px 0 40px; }
  body.gf-iapp-standalone .gf-art-body h2 { font-size: 26px; }
  body.gf-iapp-standalone .gf-art-body blockquote { font-size: 26px; padding: 28px 32px; }
  body.gf-iapp-standalone .gf-breves { padding: 40px 32px; }
  body.gf-iapp-standalone .gf-breves-head h2 { font-size: 36px; }
  body.gf-iapp-standalone .gf-questions { padding: 44px 40px; }
  body.gf-iapp-standalone .gf-questions h3 { font-size: 36px; }
  body.gf-iapp-standalone .gf-portada { padding: 56px 0; }
  body.gf-iapp-standalone .gf-portada-visual { aspect-ratio: 16/9; }
  body.gf-iapp-standalone .gf-biblioteca-head { flex-wrap: wrap; gap: 16px; }
  body.gf-iapp-standalone .gf-sec-hero { padding: 32px 0 40px; }
  body.gf-iapp-standalone .gf-sec-filters { padding: 32px 0 40px; }
  body.gf-iapp-standalone .gf-sec-grid { padding: 16px 0 72px; }
  body.gf-iapp-standalone .gf-section-rule { padding: 40px 0 28px; }
  body.gf-iapp-standalone .gf-next-art { padding: 32px 36px; }
  body.gf-iapp-standalone .gf-next-title { font-size: 26px; }
  body.gf-iapp-standalone .gf-cafe-box .gf-formula { font-size: 28px; }
  body.gf-iapp-standalone .gf-course-nudge { padding: 28px 32px; }
  body.gf-iapp-standalone .gf-course-nudge .gf-nudge-text { font-size: 20px; }
}

@media (max-width: 768px) {
  body.gf-iapp-standalone {
    --gf-f-hero: 56px;
    --gf-f-title: 38px;
    --gf-f-h2: 28px;
    --gf-f-h3: 22px;
    --gf-f-body-sz: 18px;
    --gf-f-body-lg: 20px;
    --gf-f-dek: 20px;
    --gf-f-masthead-sub: 20px;
    --gf-f-label: 13px;
    --gf-f-label-lg: 14px;
    --gf-f-small: 12px;
    --gf-f-title-sec: 48px;
    --gf-wrap: 90%;
    line-height: 1.65;
  }
  body.gf-iapp-standalone .gf-iapp-nav { padding: 20px 0; }
  body.gf-iapp-standalone .gf-masthead-big { padding-top: 20px; }
  body.gf-iapp-standalone .gf-masthead-title { padding: 24px 0 10px; letter-spacing: -2px; }
  body.gf-iapp-standalone .gf-masthead-sub { padding-bottom: 20px; }
  body.gf-iapp-standalone .gf-masthead-meta { flex-direction: column; gap: 10px; padding: 16px 0; font-size: 11px; }
  body.gf-iapp-standalone .gf-dateline { flex-direction: column; gap: 10px; font-size: 11px; padding: 14px 0; }
  body.gf-iapp-standalone .gf-dateline .gf-left,
  body.gf-iapp-standalone .gf-dateline .gf-right { gap: 10px; }
  body.gf-iapp-standalone .gf-bib-label { font-size: 10px; letter-spacing: 2px; }
  body.gf-iapp-standalone .gf-bib-num { font-size: 28px; }
  body.gf-iapp-standalone .gf-bib-tag { font-size: 9px; padding: 3px 8px; }
  body.gf-iapp-standalone .gf-biblioteca { padding: 36px 0; }
  body.gf-iapp-standalone .gf-biblioteca-head { flex-direction: column; align-items: flex-start; gap: 8px; }
  body.gf-iapp-standalone .gf-biblioteca-head h2 { font-size: 28px; letter-spacing: -1px; }
  body.gf-iapp-standalone .gf-bib-grid { grid-template-columns: 1fr; gap: 16px; }
  body.gf-iapp-standalone .gf-bib-card { min-height: auto; }
  body.gf-iapp-standalone .gf-bib-card.gf-has-thumb { flex-direction: column; }
  body.gf-iapp-standalone .gf-bib-card.gf-has-thumb .gf-bib-img { width: 100%; height: 200px; order: -1; }
  body.gf-iapp-standalone .gf-bib-text { padding: 20px; }
  body.gf-iapp-standalone .gf-bib-body h3 { font-size: 18px; }
  body.gf-iapp-standalone .gf-bib-body p { font-size: 14px; -webkit-line-clamp: 3; }
  body.gf-iapp-standalone .gf-pager-btn { width: 40px; height: 40px; font-size: 16px; }
  body.gf-iapp-standalone .gf-portada { padding: 40px 0; gap: 32px; }
  body.gf-iapp-standalone .gf-portada-text h1 { font-size: 38px; letter-spacing: -1px; }
  body.gf-iapp-standalone .gf-portada-visual { aspect-ratio: 4/3; padding: 24px; }
  body.gf-iapp-standalone .gf-portada-tldr { padding: 22px 24px; }
  body.gf-iapp-standalone .gf-portada-tldr p { font-size: 18px; }
  body.gf-iapp-standalone .gf-section-rule { padding: 32px 0 20px; flex-wrap: wrap; gap: 12px; }
  body.gf-iapp-standalone .gf-section-rule h2 { font-size: 30px; padding-top: 18px; }
  body.gf-iapp-standalone .gf-section-rule .gf-count { padding-top: 0; }
  body.gf-iapp-standalone .gf-sec-grid { grid-template-columns: 1fr; gap: 40px; padding-bottom: 40px; }
  body.gf-iapp-standalone .gf-course-nudge { grid-template-columns: 1fr; padding: 24px; gap: 16px; margin: 32px 0 0; }
  body.gf-iapp-standalone .gf-course-nudge .gf-nudge-text { font-size: 17px; }
  body.gf-iapp-standalone .gf-course-nudge .gf-nudge-btn { padding: 12px 18px; font-size: 12px; width: 100%; text-align: center; }
  body.gf-iapp-standalone .gf-dato-dia { padding: 56px 0; }
  body.gf-iapp-standalone .gf-dato-dia .gf-num { font-size: 88px; letter-spacing: -3px; }
  body.gf-iapp-standalone .gf-dato-dia .gf-copy { font-size: 20px; margin-top: 24px; }
  body.gf-iapp-standalone .gf-breves-wrap { padding: 40px 0; }
  body.gf-iapp-standalone .gf-breves { padding: 32px 22px; }
  body.gf-iapp-standalone .gf-breves-head { padding-bottom: 20px; margin-bottom: 20px; }
  body.gf-iapp-standalone .gf-breves-head h2 { font-size: 26px; }
  body.gf-iapp-standalone .gf-breve-item { grid-template-columns: 36px 1fr; gap: 14px; padding: 18px 0; }
  body.gf-iapp-standalone .gf-breve-item .gf-n { font-size: 24px; }
  body.gf-iapp-standalone .gf-breve-item .gf-txt { font-size: 17px; }
  body.gf-iapp-standalone .gf-breve-item .gf-when { grid-column: 2; grid-row: 2; font-size: 10px; }
  body.gf-iapp-standalone .gf-article-head { padding: 40px 0 32px; }
  body.gf-iapp-standalone .gf-article-head h1 { font-size: 40px; letter-spacing: -1px; }
  body.gf-iapp-standalone .gf-author-bar { flex-wrap: wrap; gap: 16px; }
  body.gf-iapp-standalone .gf-author-bar .gf-avatar { width: 48px; height: 48px; font-size: 20px; }
  body.gf-iapp-standalone .gf-art-layout { padding: 40px 0; gap: 40px; }
  body.gf-iapp-standalone .gf-art-tldr { padding: 22px 24px; margin-bottom: 32px; }
  body.gf-iapp-standalone .gf-art-tldr p { font-size: 19px; }
  body.gf-iapp-standalone .gf-lectura { padding: 22px 0; margin: 0 0 40px; }
  body.gf-iapp-standalone .gf-lectura-title { font-size: 24px; }
  body.gf-iapp-standalone .gf-lec-opt { padding: 14px 18px; font-size: 14px; min-width: 0; flex: 1; }
  body.gf-iapp-standalone .gf-art-body h2 { font-size: 22px; margin: 32px 0 12px; }
  body.gf-iapp-standalone .gf-art-body blockquote { font-size: 20px; padding: 22px 24px; margin: 32px 0; }
  body.gf-iapp-standalone .gf-cafe-box { padding: 24px 26px; margin: 32px 0; }
  body.gf-iapp-standalone .gf-cafe-box .gf-formula { font-size: 22px; }
  body.gf-iapp-standalone .gf-questions { padding: 32px 24px; margin: 40px 0 32px; }
  body.gf-iapp-standalone .gf-questions h3 { font-size: 26px; margin-bottom: 24px; }
  body.gf-iapp-standalone .gf-q-item { grid-template-columns: 40px 1fr 24px; gap: 14px; padding: 18px 0; }
  body.gf-iapp-standalone .gf-q-item .gf-n,
  body.gf-iapp-standalone .gf-q-item .gf-q { font-size: 17px; }
  body.gf-iapp-standalone .gf-next-art { grid-template-columns: 1fr; gap: 14px; padding: 24px 26px; margin: 48px 0 56px; }
  body.gf-iapp-standalone .gf-next-title { font-size: 22px; }
  body.gf-iapp-standalone .gf-sec-hero { padding: 28px 0 32px; }
  body.gf-iapp-standalone .gf-sec-hero h1 { font-size: 44px; letter-spacing: -1px; }
  body.gf-iapp-standalone .gf-sec-hero .gf-desc { font-size: 18px; }
  body.gf-iapp-standalone .gf-sec-filters { padding: 24px 0 28px; gap: 8px; }
  body.gf-iapp-standalone .gf-filter { padding: 10px 16px; font-size: 12px; }
  body.gf-iapp-standalone .gf-blog-footer { grid-template-columns: 1fr; text-align: center; gap: 24px; padding: 40px 0 32px; }
  body.gf-iapp-standalone .gf-blog-footer .gf-copy { text-align: center; }
  body.gf-iapp-standalone .gf-blog-footer .gf-copy .gf-sep { display: block; height: 0; visibility: hidden; margin: 4px 0; }
  body.gf-iapp-standalone .gf-blog-footer .gf-socials { justify-content: center; }
}
