*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',Roboto,Oxygen,Ubuntu,sans-serif;line-height:1.75;color:#333;background:#f0f2f5}
.Hero_box__46btR{max-width:860px;margin:0 auto;padding:0 20px}
.Sidebar_inner__5jy9L{background:#fff;padding:28px 0;margin-bottom:32px;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.Sidebar_inner__5jy9L h1{font-size:22px;font-weight:700;margin-bottom:2px}
.Sidebar_inner__5jy9L p{font-size:14px;color:#666}
.Sidebar_inner__5jy9L a{color:#333;text-decoration:none;font-size:18px;font-weight:700}
.Footer_link__7t5Jy{display:flex;flex-direction:column;gap:20px}
.Banner_main__dWqx0{background:#fff;border-radius:12px;box-shadow:0 1px 6px rgba(0,0,0,.06);padding:24px 28px;transition:transform .15s,box-shadow .15s}
.Banner_main__dWqx0:hover{transform:translateY(-2px);box-shadow:0 4px 16px rgba(0,0,0,.1)}
.Banner_main__dWqx0 h2{font-size:19px;margin-bottom:6px}
.Banner_main__dWqx0 h2 a{color:#1a1a1a;text-decoration:none}
.Banner_main__dWqx0 .Footer_row__BzunK{font-size:12px;color:#999;margin-bottom:8px}
.Banner_main__dWqx0 p{font-size:14px;color:#555;margin-bottom:12px}
.Footer_main__6C7i7{display:inline-block;background:#5865f2;color:#fff;padding:6px 16px;border-radius:20px;font-size:13px;font-weight:600;text-decoration:none}
.Footer_main__6C7i7:hover{background:#4752c4}
.Module_wrapper__5IcEe{padding-bottom:60px}
.Module_wrapper__5IcEe h1{font-size:30px;font-weight:700;margin-bottom:8px}
.Module_wrapper__5IcEe time{font-size:12px;color:#999;display:block;margin-bottom:24px}
.Module_wrapper__5IcEe h2{font-size:22px;margin:32px 0 12px}
.Module_wrapper__5IcEe h3{font-size:18px;margin:24px 0 8px}
.Module_wrapper__5IcEe p{margin-bottom:16px}
.Module_wrapper__5IcEe ul,.Module_wrapper__5IcEe ol{margin:0 0 16px 24px}
.Module_wrapper__5IcEe a{color:#5865f2}
.Module_wrapper__5IcEe img{max-width:100%;height:auto;border-radius:12px;margin:16px 0}
.Post_item__EbSpq{padding:24px 0;margin-top:40px;text-align:center;font-size:12px;color:#999}
.Post_item__EbSpq a{color:#999;text-decoration:none}
.Grid_main__Gwdr4{background:#e8eaf0;border-radius:8px;padding:12px 16px;margin-bottom:20px;font-size:13px;color:#888;font-style:italic}
.Post_body__jP3Yt{background:#fff8e1;border-radius:8px;padding:12px 16px;margin-top:24px;font-size:12px;color:#9e8600}
.Layout_body__HU9lv{display:inline-block;background:#f0f2f7;border-radius:12px;padding:4px 12px;margin:-18px 0 24px;font-size:12px;color:#777}
.Layout_head__KsEvS{text-align:center;margin:0 0 24px}
.Header_wrapper__WuBO3{max-width:100%;height:auto;border-radius:12px}
.Post_head__636GV{margin-top:32px;padding-top:20px;border-top:1px solid #e0e0e0}
.Post_head__636GV h3{font-size:16px;font-weight:700;margin-bottom:12px}
.crd-related-list{display:flex;flex-direction:column;gap:8px}
.crd-related-link{display:block;background:#fff;border-radius:8px;padding:10px 14px;color:#333;text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,.06);font-size:14px}
.crd-related-link:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}
.Content_row__yxBQ0{display:flex;flex-direction:column;gap:8px;margin-top:20px}
.Sidebar_section__Jz9lF{display:block;background:#fff;border-radius:8px;padding:10px 16px;color:#1a1a1a;text-decoration:none;box-shadow:0 1px 3px rgba(0,0,0,.05);font-size:15px}
.Sidebar_section__Jz9lF:hover{box-shadow:0 2px 8px rgba(0,0,0,.1)}
/* === Theme === */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700&family=Playfair+Display:wght@400;700&display=swap');
body{font-family:'Montserrat',sans-serif;color:#2D2D2D;background:#FDF8F5}
.Sidebar_inner__5jy9L{background:#4A2C40;color:#fff}
.Sidebar_inner__5jy9L h1{font-family:'Playfair Display',serif;color:#fff}
.Sidebar_inner__5jy9L p{color:rgba(255,255,255,.75)}
.Sidebar_inner__5jy9L a{color:#fff;text-decoration:none}
.card h2{font-family:'Playfair Display',serif}
.card h2 a{color:#4A2C40}
.card h2 a:hover{color:#D68C8C}
.read-more{color:#D68C8C}
.article-content h1{font-family:'Playfair Display',serif}
.article-content h2{font-family:'Playfair Display',serif}
.article-content a{color:#D68C8C}
.article-content img{border-radius:8px}
.affiliate-disclosure{border-radius:8px}
.ymyl-disclaimer{border-radius:8px}
/* === Custom === */
/*
 * xt-lifting-es — custom.css
 * Palette  : ciruela profundo + oro rosado (#2D1B22 / #C89B7B) — la calma
 *            de una cabina al final del día, la luz cálida de la lámpara
 *            sobre la solución de perming
 * Fonts    : Playfair Display (heading) + Montserrat (body)
 * Template : card
 * Distinct de pt-lash-es (café-cobre #3B2A1E/#C17817, Fraunces+Nunito Sans, magazine)
 */

/* @font-face — declared inline; the top-of-file @import is dropped by the
   deploy concatenation (custom.css lands after style rules), so webfonts
   must be loaded position-independently. */
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKdFvUDQ.ttf) format('truetype');}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKebukDQ.ttf) format('truetype');}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFvD-vYSZviVYUb_rj3ij__anPXJzDwcbmjWBN2PKeiukDQ.ttf) format('truetype');}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_qiTbtY.ttf) format('truetype');}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/playfairdisplay/v40/nuFRD-vYSZviVYUb_rj3ij__anPXDTnCjmHKM4nYO7KN_naUbtY.ttf) format('truetype');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-.ttf) format('truetype');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:500;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-.ttf) format('truetype');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-.ttf) format('truetype');}
@font-face{font-family:'Montserrat';font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-.ttf) format('truetype');}

/* ─── Design tokens ─────────────────────────────────────────── */
:root {
  --color-bg:               #F4E9E1;
  --color-card:             #FCF6F0;
  --color-hero:             #F1DDD0;
  --color-surface:          #F3DFD4;
  --color-surface-alt:      #EDE6DD;
  --color-moment:           #5C6B4A;
  --color-text:             #2E2027;
  --color-text-muted:       #7A6670;
  --color-heading:          #2D1B22;
  --color-accent:           #C89B7B;
  --color-accent-hover:     #A97A5C;
  --color-accent-light:     #E0C4AC;
  --color-accent-secondary: #8C5E6A;
  --color-border:           #E4D2C4;
  --color-link:             #C89B7B;
  --color-link-hover:       #A97A5C;

  --font-heading:        'Playfair Display', Georgia, serif;
  --font-body:           'Montserrat', system-ui, sans-serif;
  --font-size-base:      17px;
  --font-size-sm:        15px;
  --font-size-h1:        2.3rem;
  --font-size-h2:        1.7rem;
  --font-size-h3:        1.3rem;
  --font-weight-heading: 600;
  --font-weight-body:    400;
  --line-height-body:    1.7;
  --line-height-heading: 1.3;

  --border-radius:       12px;
  --spacing-section:     3rem;
  --max-width-content:   68ch;
  --max-width-layout:    900px;
}

/* ─── Base ──────────────────────────────────────────────────── */
:root body {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-family: var(--font-body);
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-body);
  line-height: var(--line-height-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

:root main,
:root .site-content {
  max-width: var(--max-width-layout);
  margin-inline: auto;
  padding-inline: 1.5rem;
}

/* ─── Headings ──────────────────────────────────────────────── */
:root h1,
:root h2,
:root h3,
:root h4 {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
  color: var(--color-heading);
  line-height: var(--line-height-heading);
  margin-top: 0;
  margin-bottom: 0.6em;
}

:root h1 { font-size: var(--font-size-h1); }
:root h2 { font-size: var(--font-size-h2); }
:root h3 { font-size: var(--font-size-h3); }
:root h4 { font-size: 1.1rem; }

/* ─── Paragraphs ────────────────────────────────────────────── */
:root p {
  max-width: var(--max-width-content);
  margin-block: 0 1.1em;
}

:root .entry-content p,
:root .post-content p,
:root article p {
  max-width: var(--max-width-content);
  line-height: var(--line-height-body);
}

/* ─── Links ─────────────────────────────────────────────────── */
:root a {
  color: var(--color-link);
  text-decoration: underline;
  text-decoration-color: var(--color-accent-light);
  text-underline-offset: 3px;
  transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

:root a:hover {
  color: var(--color-link-hover);
  text-decoration-color: var(--color-accent-hover);
}

/* ─── Lists ─────────────────────────────────────────────────── */
:root ul,
:root ol {
  max-width: var(--max-width-content);
  padding-inline-start: 1.5rem;
  margin-block: 0 1.1rem;
}

:root li {
  margin-block: 0.4rem;
  line-height: var(--line-height-body);
}

:root ul li::marker {
  color: var(--color-accent-secondary);
}

:root ol li::marker {
  color: var(--color-accent);
  font-family: var(--font-heading);
  font-weight: var(--font-weight-heading);
}

/* ─── Blockquote ────────────────────────────────────────────── */
:root blockquote {
  max-width: var(--max-width-content);
  margin-inline: 0;
  margin-block: 1.85rem;
  padding: 1.15rem 1.5rem;
  border-left: 3px solid var(--color-accent-secondary);
  background-color: var(--color-surface-alt);
  border-radius: 0 var(--border-radius) var(--border-radius) 0;
  color: var(--color-text);
  font-family: var(--font-heading);
  font-style: italic;
  font-size: 1.05rem;
}

:root blockquote p {
  margin-bottom: 0;
  max-width: none;
}

/* ─── Cards (template: card) ────────────────────────────────── */
:root .card,
:root .post-card,
:root article.card {
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  padding: 1.5rem;
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

:root .card:hover,
:root .post-card:hover {
  box-shadow: 0 4px 20px rgba(45, 27, 34, 0.12);
  transform: translateY(-2px);
}

:root .card-grid,
:root .posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.5rem;
  margin-block: var(--spacing-section);
}

:root .card h2,
:root .card h3,
:root .post-card h2,
:root .post-card h3 {
  font-size: 1.2rem;
  margin-bottom: 0.5rem;
  color: var(--color-heading);
}

:root .card p,
:root .post-card p {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  margin-bottom: 0;
  max-width: none;
}

/* ─── Site header ───────────────────────────────────────────── */
:root .site-header,
:root header.site-header {
  background-color: var(--color-bg);
  border-bottom: 1px solid var(--color-border);
  padding-block: 1.25rem;
}

:root .site-title,
:root .site-header .site-title a {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--color-heading);
  text-decoration: none;
}

:root .site-description,
:root .site-header .site-description {
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
  margin-top: 0.2rem;
}

/* ─── Navigation ────────────────────────────────────────────── */
:root .site-nav a,
:root nav.main-navigation a {
  color: var(--color-text-muted);
  font-size: var(--font-size-sm);
  text-decoration: none;
  transition: color 0.2s ease;
}

:root .site-nav a:hover,
:root nav.main-navigation a:hover {
  color: var(--color-accent);
}

/* ─── Card template top banner ──────────────────────────────── */
:root .Sidebar_inner__5jy9L {
  background-color: var(--color-heading);
  border-bottom: 1px solid var(--color-border);
  padding-block: calc(var(--spacing-section) * 1.4);
  text-align: center;
}

:root .Sidebar_inner__5jy9L h1 {
  font-size: clamp(1.8rem, 5vw, var(--font-size-h1));
  color: #FFFFFF;
  max-width: 26ch;
  margin-inline: auto;
}

:root .Sidebar_inner__5jy9L p {
  color: rgba(255, 255, 255, 0.75);
  max-width: 52ch;
  margin-inline: auto;
  font-size: 1.05rem;
}

:root .Sidebar_inner__5jy9L a {
  color: var(--color-accent-light);
  text-decoration: none;
}

/* ─── Article content ───────────────────────────────────────── */
:root .article-content h1,
:root .article-content h2,
:root .article-content h3 {
  font-family: var(--font-heading);
  color: var(--color-heading);
}

:root .article-content a {
  color: var(--color-accent);
}

:root .article-content img {
  border-radius: var(--border-radius);
  max-width: 100%;
  height: auto;
}

/* ─── Footer ────────────────────────────────────────────────── */
:root .site-footer,
:root footer.site-footer {
  background-color: var(--color-surface);
  border-top: 1px solid var(--color-border);
  padding-block: 2rem;
  font-size: var(--font-size-sm);
  color: var(--color-text-muted);
}

:root .site-footer a {
  color: var(--color-text-muted);
  text-decoration: underline;
}

:root .site-footer a:hover {
  color: var(--color-accent);
}

/* ─── Section spacing ───────────────────────────────────────── */
:root section {
  padding-block: var(--spacing-section);
}

/* ─── Utilities ─────────────────────────────────────────────── */
:root .text-muted   { color: var(--color-text-muted); }
:root .text-accent  { color: var(--color-accent); }
:root .bg-surface   { background-color: var(--color-surface); }
:root .read-more    { color: var(--color-accent); font-size: var(--font-size-sm); }

/* ============================================================= *
 * v.6d8136 — layout revision
 * Live build is the Next-module flavour: stable class names
 * (.Footer_link__7t5Jy grid wrapper, .Banner_main__dWqx0 cards,
 * .Footer_main__6C7i7 pill, .Content_row__yxBQ0 archive tail,
 * .Sidebar_inner__5jy9L masthead, .Module_wrapper__5IcEe article).
 * masthead-bg.jpg is 404 → plum band; article-hero.jpg is live → strips.
 * Moment colour #5C6B4A (olive) used in exactly 2 places:
 * masthead rule + hero drop cap.
 * ============================================================= */

/* ─── Masthead: plum band + serif-italic wordmark + manifesto ── */
:root .Sidebar_inner__5jy9L {
  background: linear-gradient(135deg, #2D1B22 0%, #3C2530 55%, #4A2E3A 100%);
  border-bottom: 2px solid var(--color-moment);   /* moment · place 1 */
  box-shadow: 0 1px 4px rgba(45, 27, 34, 0.28);
  padding-block: 44px 36px;
  margin-bottom: 56px;
  text-align: center;
}
:root .Sidebar_inner__5jy9L .Hero_box__46btR::before {
  content: "LIFTING \00B7 LAMINADO \00B7 CABINA";
  display: block;
  font: 500 11px/1.4 var(--font-body);
  letter-spacing: 0.34em;
  text-transform: uppercase;
  color: var(--color-accent-light);
  margin-bottom: 0.85rem;
}
:root .Sidebar_inner__5jy9L h1,
:root .Sidebar_inner__5jy9L h1 a,
:root .Sidebar_inner__5jy9L span a {
  font-family: var(--font-heading);
  font-style: italic;
  font-weight: 600;
  font-size: clamp(2rem, 5vw, 2.7rem);
  color: #F5E3D6;
  line-height: 1.1;
  margin: 0;
  text-decoration: none;
}
:root .Sidebar_inner__5jy9L p {
  max-width: 46ch;
  margin: 0.7rem auto 0;
  font-family: var(--font-heading);
  font-style: italic;
  font-size: 1.02rem;
  line-height: 1.5;
  color: rgba(245, 227, 214, 0.74);
}

/* ─── Homepage card list (single-column feature stack) ───────── */
:root .Footer_link__7t5Jy {
  gap: 2.4rem;
  margin-bottom: 5rem;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0 {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 1px 4px rgba(45, 27, 34, 0.05);
  padding: 30px 36px;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:hover {
  box-shadow: 0 6px 22px rgba(45, 27, 34, 0.10);
}
/* kicker / meta line */
:root .Footer_link__7t5Jy .Footer_row__BzunK {
  font: 600 12px/1.4 var(--font-body);
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-accent-secondary);
  margin-bottom: 0.9rem;
}
/* card title */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0 h2 {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.42rem;
  line-height: 1.25;
  margin: 0 0 0.7rem;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0 h2 a {
  color: var(--color-heading);
  text-decoration: none;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0 h2 a:hover {
  color: var(--color-accent-secondary);
}
/* excerpt */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0 h2 + p {
  max-width: 64ch;
  font-size: 15.5px;
  line-height: 1.62;
  color: var(--color-text);
  margin: 0 0 1.3rem;
}

/* CTA pill — ghost by default so the accent isn't a solid block ×30 */
:root .Footer_main__6C7i7 {
  background: transparent;
  color: var(--color-accent-secondary);
  border: 1px solid var(--color-accent-secondary);
  padding: 8px 20px;
  border-radius: 22px;
  font: 600 11.5px/1 var(--font-body);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  transition: background 0.18s ease, color 0.18s ease;
}
:root .Footer_main__6C7i7:hover {
  background: var(--color-accent-secondary);
  color: #F7ECE4;
}

/* ─── HERO: the one loud voice (first card) ──────────────────── */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child {
  background: var(--color-hero);
  border: 1px solid var(--color-accent);
  padding: 42px 46px 40px;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child .Footer_row__BzunK::before {
  content: "\00DALTIMO ENSAYO \00B7 ";
  color: var(--color-accent-hover);
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child .Footer_row__BzunK::after {
  content: " \00B7 VER\00D3NICA CABRERA \00B7 CABINA EN GUAYAQUIL";
  color: var(--color-text-muted);
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child h2 {
  font-size: clamp(2rem, 4.4vw, 2.7rem);
  line-height: 1.12;
  margin-bottom: 1rem;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child h2 + p {
  font-size: 1.18rem;
  line-height: 1.55;
  max-width: 60ch;
}
/* drop cap — moment · place 2 */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child h2 + p::first-letter {
  float: left;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 3.4em;
  line-height: 0.72;
  padding: 0.06em 0.12em 0 0;
  color: var(--color-moment);
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child .Footer_main__6C7i7 {
  background: var(--color-accent-secondary);
  color: #F7ECE4;
  border-color: var(--color-accent-secondary);
  padding: 11px 26px;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child .Footer_main__6C7i7:hover {
  background: var(--color-heading);
  border-color: var(--color-heading);
}

/* ─── EDITOR'S PICKS band (cards 2–3) ────────────────────────── */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(2) {
  position: relative;
  margin-top: 5rem;
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(2)::before {
  content: "LECTURAS PARA EMPEZAR";
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(100% + 1.7rem);
  font: 600 13px/1.4 var(--font-body);
  letter-spacing: 0.26em;
  text-transform: uppercase;
  color: var(--color-accent-secondary);
  padding-bottom: 0.7rem;
  border-bottom: 1px solid var(--color-border);
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(2),
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(3) {
  border-left: 3px solid var(--color-accent);
}

/* ─── STRIP 1: section break before the Journal (card 4) ─────── */
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(4) {
  position: relative;
  margin-top: calc(200px + 6.5rem);
}
:root .Footer_link__7t5Jy > .Banner_main__dWqx0:nth-child(4)::before {
  content: "EN ORDEN DE ESCRITURA";
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(100% + 2.6rem);
  height: 200px;
  border-radius: 10px;
  background: linear-gradient(rgba(20, 24, 28, 0.55), rgba(20, 24, 28, 0.25)),
              url("/theme-assets/article-hero.jpg") center 30% / cover;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F7ECE4;
  font: 600 13px/1.4 var(--font-body);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55);
}

/* ─── STRIP 2 + magazine index (archive tail) ────────────────── */
:root .Content_row__yxBQ0 {
  position: relative;
  margin-top: calc(210px + 6.5rem);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px 16px;
  align-items: stretch;
}
:root .Content_row__yxBQ0::before {
  content: "EL ARCHIVO";
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(100% + 2.6rem);
  height: 210px;
  border-radius: 10px;
  background: linear-gradient(rgba(20, 24, 28, 0.55), rgba(20, 24, 28, 0.25)),
              url("/theme-assets/article-hero.jpg") center 70% / cover;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #F7ECE4;
  font: 600 13px/1.4 var(--font-body);
  letter-spacing: 0.32em;
  text-transform: uppercase;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.55);
}
/* archive tail cards — same visual system as the top journal cards:
   cream paper, hairline border, 10px radius, subtle shadow, hover lift */
:root .Content_row__yxBQ0 > .Sidebar_section__Jz9lF {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  border-radius: 10px;
  box-shadow: 0 1px 4px rgba(45, 27, 34, 0.05);
  padding: 20px 22px;
  font-family: var(--font-heading);
  font-size: 1rem;
  line-height: 1.4;
  color: var(--color-heading);
  text-decoration: none;
  transition: box-shadow 0.2s ease, transform 0.2s ease, color 0.2s ease;
}
:root .Content_row__yxBQ0 > .Sidebar_section__Jz9lF a {
  color: var(--color-heading);
  text-decoration: none;
}
:root .Content_row__yxBQ0 > .Sidebar_section__Jz9lF:hover {
  color: var(--color-accent-secondary);
  box-shadow: 0 6px 22px rgba(45, 27, 34, 0.10);
  transform: translateY(-2px);
}
:root .Content_row__yxBQ0 > .Sidebar_section__Jz9lF:hover a {
  color: var(--color-accent-secondary);
}

/* ─── Footer ─────────────────────────────────────────────────── */
:root .Post_item__EbSpq {
  border-top: 1px solid var(--color-border);
  margin-top: 5rem;
  color: var(--color-text-muted);
}
:root .Post_item__EbSpq a {
  color: var(--color-accent-secondary);
}

/* ============================================================= *
 * Article page (.Module_wrapper__5IcEe)
 * ============================================================= */
:root main.Module_wrapper__5IcEe h1 {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(2rem, 4.6vw, 2.9rem);
  line-height: 1.12;
  color: var(--color-heading);
  margin-bottom: 0.5rem;
}
:root main.Module_wrapper__5IcEe time {
  font-family: var(--font-body);
  font-size: 12px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--color-text-muted);
}
/* S6 — persona anchor: byline + location appended to the date meta line */
:root main.Module_wrapper__5IcEe time::after {
  content: " \00B7 POR VER\00D3NICA CABRERA \00B7 CABINA EN GUAYAQUIL";
  color: var(--color-text-muted);
}
:root main.Module_wrapper__5IcEe article > p {
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-text);
  max-width: 66ch;
}
/* first-paragraph drop cap for editorial signature */
:root main.Module_wrapper__5IcEe article > p:first-of-type::first-letter {
  float: left;
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: 3.2em;
  line-height: 0.72;
  padding: 0.05em 0.11em 0 0;
  color: var(--color-accent-secondary);
}
:root main.Module_wrapper__5IcEe h2 {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.7rem;
  color: var(--color-heading);
  margin: 2.6rem 0 0.8rem;
  text-align: center;
}
/* dinkus divider above each h2 section */
:root main.Module_wrapper__5IcEe h2::before {
  content: "\2726\00A0\00A0\2726\00A0\00A0\2726";
  display: block;
  font-size: 0.7rem;
  letter-spacing: 0.3em;
  color: var(--color-accent);
  text-align: center;
  margin-bottom: 1.4rem;
}
:root main.Module_wrapper__5IcEe h3 {
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 1.28rem;
  color: var(--color-heading);
  margin: 2rem 0 0.6rem;
}
:root main.Module_wrapper__5IcEe article a {
  color: var(--color-accent-secondary);
  text-decoration: underline;
  text-decoration-color: var(--color-accent-light);
  text-underline-offset: 3px;
}
:root main.Module_wrapper__5IcEe article a:hover {
  color: var(--color-accent-hover);
}

/* M10 — affiliate CTA visibility (iter2 refix — drop the :has() dependency):
   iter1 re-scoped this rule to `main:has(> h1)` to mark the article page. But
   `:has()` is silently dropped in this project's deploy/render pipeline (see the
   top-of-file constraint), so the ENTIRE selector never matched — the affiliate
   links (`/pick/main`, `/pick/alt-N`) fell back to plain underlined prose links
   and no pill rendered, exactly the failure the reviewer re-flagged.
   Proof the module hash is stable in the live build: every other article rule
   here — h1, drop cap, dinkus, the `.Post_body__jP3Yt` caution box, the
   `.Post_head__636GV` related block — is scoped via `.Module_wrapper__5IcEe`
   and the reviewer confirms all of them render. So re-scope the pill to that
   SAME proven class. The homepage's <main> is `Hero_box__46btR` WITHOUT
   `Module_wrapper__5IcEe`, so this stays article-only; and `/pick/` anchors
   never appear on the homepage anyway. Match the affiliate anchors anywhere in
   the article main (no dependence on the inner `<article>` wrapper). Specificity
   (0,3,2) beats the prose-link rule (0,2,3) so the pill wins the cascade; the
   plain http Wikipedia references stay ordinary inline links. */
:root main.Module_wrapper__5IcEe a[href^="/pick/"],
:root main.Module_wrapper__5IcEe a[href^="/try/"],
:root main.Module_wrapper__5IcEe a[href^="/go/"],
:root main.Module_wrapper__5IcEe a[href^="/ref/"],
:root main.Module_wrapper__5IcEe a[href^="/out/"] {
  display: inline-block;
  margin: 3px 1px;
  padding: 7px 18px;
  background: var(--color-accent-secondary);
  color: #F7ECE4;
  border: 1px solid var(--color-accent-secondary);
  border-radius: 22px;
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.35;
  text-decoration: none;
  box-shadow: 0 1px 4px rgba(45, 27, 34, 0.10);
  transition: background 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
}
:root main.Module_wrapper__5IcEe a[href^="/pick/"]:hover,
:root main.Module_wrapper__5IcEe a[href^="/try/"]:hover,
:root main.Module_wrapper__5IcEe a[href^="/go/"]:hover,
:root main.Module_wrapper__5IcEe a[href^="/ref/"]:hover,
:root main.Module_wrapper__5IcEe a[href^="/out/"]:hover {
  background: var(--color-heading);
  border-color: var(--color-heading);
  color: #F7ECE4;
  box-shadow: 0 4px 14px rgba(45, 27, 34, 0.18);
}

:root main.Module_wrapper__5IcEe .Header_wrapper__WuBO3 {
  border-radius: 10px;
  box-shadow: 0 2px 12px rgba(45, 27, 34, 0.10);
}

/* affiliate / note disclosure box — was pale text on faint pink */
:root .Post_body__jP3Yt {
  background: var(--color-surface-alt);
  border: 1px solid var(--color-border);
  border-left: 4px solid var(--color-accent-secondary);
  border-radius: 8px;
  padding: 16px 20px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--color-text);
}
:root .Post_body__jP3Yt strong {
  color: var(--color-heading);
}

/* related-articles module */
:root .Post_head__636GV {
  border-top: 1px solid var(--color-border);
  margin-top: 3.5rem;
}
:root .Post_head__636GV h3 {
  font-family: var(--font-body);
  font-weight: 600;
  font-size: 13px;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--color-accent-secondary);
}
:root .Post_head__636GV .crd-related-link {
  background: var(--color-card);
  border: 1px solid var(--color-border);
  border-radius: 8px;
  box-shadow: none;
  color: var(--color-heading);
  font-family: var(--font-heading);
  font-size: 15px;
  padding: 12px 16px;
}
:root .Post_head__636GV .crd-related-link:hover {
  border-color: var(--color-accent);
  color: var(--color-accent-secondary);
}

/* ─── Article H2/H3 rhythm on the card-template preview ───────── */
:root article h2,
:root article h3 {
  margin-top: 2.2em;
  margin-bottom: 0.5em;
}

/* ─── Mobile ─────────────────────────────────────────────────── */
@media (max-width: 600px) {
  :root .Footer_link__7t5Jy > .Banner_main__dWqx0 { padding: 24px 22px; }
  :root .Footer_link__7t5Jy > .Banner_main__dWqx0:first-child { padding: 30px 24px; }
  :root .Content_row__yxBQ0 { grid-template-columns: 1fr; }
}


/* related-articles-nav-fix v1 */
:root main > nav p,
:root main > section p {
  line-height: 1.85;
  margin: 0;
}
:root main > nav a,
:root main > section a {
  display: inline-block;
  margin: 0 4px;
  padding: 0 2px;
}


/* mobile-overflow-fix v1 */
:root html, :root body { overflow-x: hidden; max-width: 100%; }
@media (max-width: 920px) {
  :root main > * { max-width: 100%; }
  :root main { overflow-x: hidden; }
}


/* mobile-overflow-fix v2 */
@media (max-width: 640px) {
  :root main,
  :root main > article,
  :root main > div,
  :root main > section,
  :root main > nav {
    box-sizing: border-box;
    max-width: 100%;
    width: 100%;
  }
  :root main > article > *,
  :root main > div > *,
  :root main > section > *,
  :root main > nav > * {
    max-width: 100%;
  }
  :root main h1,
  :root main h2,
  :root main h3,
  :root main h4 {
    overflow-wrap: break-word;
    word-break: normal;
  }
  /* Any 3+ col grid inside main → 1 col on mobile */
  :root main :is(ul, ol, section, div, nav)[style*="grid-template-columns"],
  :root main > section > ul,
  :root main > nav > ul,
  :root main > div > ul {
    grid-template-columns: 1fr !important;
  }
  /* Any CSS multi-column layout → 1 col on mobile */
  :root main :is(ul, ol, section, div, p) {
    columns: 1;
  }
  /* Article body images stay inside viewport */
  :root main img,
  :root main figure {
    max-width: 100%;
    height: auto;
  }
}


/* mobile-padding-fix v1 */
@media (max-width: 640px) {
  :root main {
    padding-left: 20px;
    padding-right: 20px;
  }
}


/* premium-upgrade v1 */
/* premium editorial upgrade — style=Kinfolk-minimal overlay=25% grid=equal scale=dramatic family=astro-grid */

/* ── HERO STRIPS: site-level atmospheric photos (overlay 25%) ── */
:root main:not(:has(> h1)) > div:has(> div)::before {
  background:
    linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 55%, rgba(0,0,0,0.25) 100%),
    url("/theme-assets/premium-hero-strip-1.webp") center 40% / cover no-repeat;
  min-height: 340px; padding-bottom: 26px; align-items: flex-end;
  text-shadow: 0 1px 12px rgba(0,0,0,0.55); color: #fff;
}
:root main:not(:has(> h1)) > div:has(> div)::after {
  background:
    linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 55%, rgba(0,0,0,0.25) 100%),
    url("/theme-assets/premium-hero-strip-2.webp") center 45% / cover no-repeat;
  min-height: 340px; padding-bottom: 26px; align-items: flex-end;
  text-shadow: 0 1px 12px rgba(0,0,0,0.55); color: #fff;
}


/* ── CARD 1: featured full-row with 300px photo header (via card-own background, NOT ::before —
    leaves ::before free for existing site's M2 label / meta content). ── */
:root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(1) {
  grid-column: 1 / -1;
  position: relative;      /* anchor for existing site's ::before label if it uses absolute */
  overflow: visible;       /* let above-card labels render without clipping */
  padding: 320px 44px 40px !important;
  border-radius: 8px;
  background:
    url("/theme-assets/premium-hero-card-1.webp") no-repeat center top / 100% 300px,
    var(--bg) !important;
  margin-top: 60px !important;  /* room for above-card M2 label (existing site convention) */
}

/* ── CARDS 2-4: medium with 180px photo header (background technique, ::before untouched) ── */
:root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(2) {
  padding: 200px 32px 32px !important;
  border-radius: 8px;
  background:
    url("/theme-assets/premium-hero-card-2.webp") no-repeat center top / 100% 180px,
    var(--bg) !important;
}
:root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(3) {
  padding: 200px 32px 32px !important;
  border-radius: 8px;
  background:
    url("/theme-assets/premium-hero-card-3.webp") no-repeat center top / 100% 180px,
    var(--bg) !important;
}
:root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(4) {
  padding: 200px 32px 32px !important;
  border-radius: 8px;
  background:
    url("/theme-assets/premium-hero-card-4.webp") no-repeat center top / 100% 180px,
    var(--bg) !important;
}

/* ── Article page: drop cap + dinkus dividers ── */
:root main:has(> h1) > article > p:first-of-type::first-letter {
  font-family: var(--fh), Georgia, serif;
  font-size: 76px; line-height: 0.9; color: var(--primary);
  float: left; margin: 6px 12px 0 0; padding: 0; font-weight: 400;
}
:root main:has(> h1) > article > h2 + p ~ h2::before {
  content: "✦ ✦ ✦";
  display: block; text-align: center; color: var(--accent);
  font-size: 12px; letter-spacing: 0.3em; margin-bottom: 24px;
  font-weight: 400;
}

/* ── Mobile responsive: adjust photo heights via background-size on the card itself ── */
@media (max-width: 720px) {
  :root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(1) {
    padding: 240px 22px 28px !important;
    background:
      url("/theme-assets/premium-hero-card-1.webp") no-repeat center top / 100% 220px,
      var(--bg) !important;
  }
  :root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(2) {
    padding: 180px 22px 26px !important;
    background:
      url("/theme-assets/premium-hero-card-2.webp") no-repeat center top / 100% 160px,
      var(--bg) !important;
  }
  :root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(3) {
    padding: 180px 22px 26px !important;
    background:
      url("/theme-assets/premium-hero-card-3.webp") no-repeat center top / 100% 160px,
      var(--bg) !important;
  }
  :root main:not(:has(> h1)) > div:has(> div) > div:nth-of-type(4) {
    padding: 180px 22px 26px !important;
    background:
      url("/theme-assets/premium-hero-card-4.webp") no-repeat center top / 100% 160px,
      var(--bg) !important;
  }
  :root main:not(:has(> h1)) > div:has(> div)::before,
  :root main:not(:has(> h1)) > div:has(> div)::after { min-height: 240px; }
  :root main:has(> h1) > article > p:first-of-type::first-letter { font-size: 60px; }
}

