/* La libreta V03 · Interior sobrio, en la misma línea de Servicios. */
body:has(.notebook-main--index) { background:var(--cream,#f2e8dc); }
main.notebook-main--index { background:var(--paper,#f8f2e9); color:var(--ink,#25221f); }
main.notebook-main--index .notebook-hero {
  display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);
  grid-template-areas:"eyebrow intro" "title intro"; gap:26px 6vw; align-items:center;
  padding:clamp(48px,5.5vw,80px) 4vw; min-height:0;
  background:var(--cream,#f2e8dc); border:0;
}
main.notebook-main--index .notebook-hero .notebook-eyebrow {
  grid-area:eyebrow; padding:0; margin:0; border:0;
  color:var(--terra,#a45131); font:700 10px/1.5 Arial,sans-serif;
  letter-spacing:.2em; text-transform:uppercase;
}
main.notebook-main--index .notebook-hero h1 {
  grid-area:title; margin:0; max-width:none; color:var(--ink,#25221f);
  font:400 clamp(60px,6.4vw,96px)/.97 Georgia,"Times New Roman",serif; letter-spacing:-.064em;
}
main.notebook-main--index .notebook-hero h1 em {
  display:block; margin-top:12px; font-size:.8em; line-height:1.1;
  letter-spacing:-.045em; color:var(--terra,#a45131);
}
.notebook-hero-bottom { grid-area:intro; align-self:center; }
main.notebook-main--index .notebook-intro {
  margin:0; padding:0; border:0; max-width:35ch; color:var(--ink,#25221f);
  font:400 clamp(21px,2vw,27px)/1.42 Georgia,"Times New Roman",serif; letter-spacing:-.02em;
  text-wrap:balance;
}
main.notebook-main--index .notebook-entries { padding:40px 4vw 80px; background:var(--paper,#f8f2e9); scroll-margin-top:130px; }
.notebook-section-heading { display:flex; justify-content:space-between; gap:24px; align-items:baseline; padding-bottom:22px; margin-bottom:44px; border-bottom:1px solid rgba(37,34,31,.26); }
.notebook-section-heading p { margin:0; color:var(--terra,#a45131); font:700 10px/1.5 Arial,sans-serif; text-transform:uppercase; letter-spacing:.16em; }
.notebook-section-heading span { color:#655d54; font:12px/1.5 Arial,sans-serif; }
main.notebook-main--index .notebook-entry { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:6vw; align-items:center; }
main.notebook-main--index .notebook-entry h2 { font-size:clamp(34px,3.5vw,52px); line-height:1.08; letter-spacing:-.045em; }
main.notebook-main--index .notebook-entry .notebook-eyebrow { font:700 10px/1.6 Arial,sans-serif; letter-spacing:.1em; }
main.notebook-main--index .notebook-meta { font:11px/1.6 Arial,sans-serif; gap:6px 16px; }
main.notebook-main--index .notebook-entry-excerpt { font:17px/1.7 Georgia,serif; max-width:48ch; color:#655d54; }
main.notebook-main--index .notebook-entry .notebook-link { min-height:48px; border-radius:2px; }
main.notebook-main--index .notebook-entry :is(h2 a,.notebook-link):focus-visible { outline:2px solid var(--terra,#a45131); outline-offset:6px; }
main.notebook-main--index .notebook-entry-quote {
  margin:0; padding:8px 0 8px 30px; min-height:0;
  border:0; border-left:1px solid var(--terra,#a45131);
  background:none; color:var(--ink,#25221f); box-shadow:none;
}
main.notebook-main--index .notebook-entry-quote::before,
main.notebook-main--index .notebook-entry-quote::after { content:none; }
main.notebook-main--index .notebook-entry-quote p { font-size:clamp(25px,2.5vw,36px); line-height:1.28; letter-spacing:-.025em; margin-bottom:24px; }
main.notebook-main--index .notebook-entry-quote cite { border:0; padding:0; color:var(--terra,#a45131); font:10px/1.5 Arial,sans-serif; letter-spacing:.12em; }
main.notebook-main--index .notebook-entry:not(:has(.notebook-entry-quote,.notebook-entry-image)) { grid-template-columns:1fr; max-width:850px; }
@media(max-width:800px) {
  main.notebook-main--index .notebook-hero { grid-template-columns:1fr; grid-template-areas:"eyebrow" "title" "intro"; padding:42px 6vw; gap:24px; }
  main.notebook-main--index .notebook-hero h1 { font-size:clamp(49px,10.5vw,72px); }
  main.notebook-main--index .notebook-intro { font-size:21px; }
  main.notebook-main--index .notebook-entries { padding:32px 6vw 60px; }
  .notebook-section-heading { margin-bottom:32px; flex-wrap:wrap; gap:8px; }
  main.notebook-main--index .notebook-entry { grid-template-columns:1fr; gap:36px; }
  main.notebook-main--index .notebook-entry h2 { font-size:clamp(32px,7.5vw,44px); }
  main.notebook-main--index .notebook-entry-quote { padding-left:22px; }
}
