/* =========================================================
   IRON LEGACY — HERITAGE KENNEL CATALOG SKIN
   Editorial magazine feel. Cream base, warm-black accents,
   oxblood + brass. Fraunces-style display serif + Inter body.
   ========================================================= */

:root,[data-theme="light"]{
  /* Heritage palette override */
  --color-bg:#f4efe4;              /* warm ivory/cream */
  --color-surface:#faf6ec;         /* lighter cream card */
  --color-surface-2:#ebe4d3;       /* deeper cream */
  --color-surface-offset:#ded4bf;
  --color-divider:#c9bfa8;
  --color-border:#b8ac93;

  --color-text:#1a1410;            /* warm near-black */
  --color-text-muted:#4a3f36;      /* espresso */
  --color-text-faint:#8a7d6d;
  --color-text-inverse:#f4efe4;

  --color-primary:#1a1410;
  --color-navy:#1a1410;
  --color-navy-deep:#0a0705;
  --color-navy-2:#241c15;
  --color-iron:#3a2f26;

  --color-accent:#8b1a1a;          /* oxblood */
  --color-accent-hover:#6b1010;
  --color-gold:#a67c2a;             /* brass */
  --color-gold-soft:#c69a48;

  --shadow-sm:0 1px 3px rgba(26,20,16,.06);
  --shadow-md:0 12px 40px rgba(26,20,16,.10);
  --shadow-lg:0 32px 96px rgba(26,20,16,.18);
}

[data-theme="dark"]{
  --color-bg:#12100c;
  --color-surface:#1a1611;
  --color-surface-2:#231e17;
  --color-surface-offset:#2c261d;
  --color-divider:#3a3226;
  --color-border:#4a3f30;
  --color-text:#f0e8d6;
  --color-text-muted:#c4b89e;
  --color-text-faint:#8a7d6d;
  --color-text-inverse:#12100c;
  --color-primary:#f0e8d6;
  --color-navy:#12100c;
  --color-navy-deep:#080604;
  --color-navy-2:#1e1a13;
  --color-iron:#2c261d;
  --color-accent:#c33232;
  --color-accent-hover:#a01d1d;
  --color-gold:#d4a548;
  --color-gold-soft:#e6bf65;
}

/* =========================================================
   Typography — editorial serif takes over
   ========================================================= */
body{
  font-family:"Inter","Helvetica Neue",system-ui,sans-serif;
  color:var(--color-text);
  background:var(--color-bg);
  font-feature-settings:"ss01","cv01","cv11";
}
h1,h2,h3,h4,.display,
.hero__grid h1,
.intro__text h2,
.section-head h2,
.testimonials h2,
.cta-band h2,
.why h2,
.why h2.display{
  font-family:"Playfair Display","Fraunces",Georgia,serif !important;
  font-weight:700 !important;
  letter-spacing:-.01em !important;
  line-height:1.1 !important;
  color:var(--color-text) !important;
  text-transform:none !important;
}

/* Hero legibility: force light text over dark image hero backgrounds (only when class is present) */
.page-hero.hero-dark h1,
.page-hero.hero-dark .lead,
.page-hero.hero-dark .eyebrow,
.essentials-hero h1,
.essentials-hero .lead,
.essentials-hero .eyebrow{
  color:#f4efe4 !important;
}
.page-hero.hero-dark h1,
.essentials-hero h1{
  text-shadow:0 2px 12px rgba(0,0,0,.55), 0 1px 2px rgba(0,0,0,.85) !important;
}
.page-hero.hero-dark .lead,
.essentials-hero .lead{
  color:rgba(244,239,228,.94) !important;
  text-shadow:0 1px 6px rgba(0,0,0,.6) !important;
}
.page-hero.hero-dark .eyebrow,
.essentials-hero .eyebrow{
  color:#e5c76d !important;
}
.page-hero.hero-dark h1 em,
.essentials-hero h1 em{
  color:#e5c76d !important;
}
h1 em, h2 em, h3 em, .hero__grid em,
.intro__text h2 em,
.section-head h2 em,
.testimonials h2 em,
.why h2 em{
  font-style:italic !important;
  color:var(--color-accent) !important;
  font-weight:700 !important;
  display:inline !important;
}
.eyebrow, .hero__eyebrow{
  font-family:"Inter",sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--color-gold);
  display:inline-block;
}
.eyebrow--light{color:var(--color-gold-soft)}

/* =========================================================
   Header — clean editorial nav
   ========================================================= */
.site-header{
  background:var(--color-bg) !important;
  border-bottom:1px solid var(--color-divider) !important;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.site-header .bar{padding:var(--space-4) 0}
.site-nav > ul{
  display:flex !important;
  gap:var(--space-8) !important;
  align-items:center;
  list-style:none;
  margin:0;
  padding:0;
}
.site-nav > ul > li{margin:0 !important;padding:0 !important}
.site-nav ul.nav-submenu{list-style:none;margin:0}
@media (max-width:1024px){
  .site-nav > ul{flex-direction:column !important;align-items:stretch !important;gap:0 !important;width:100%}
  .site-nav ul.nav-submenu{flex-direction:column !important;align-items:stretch !important;width:100% !important;gap:0 !important}
  .site-nav ul.nav-submenu li{width:100% !important;display:block !important;flex:0 0 auto !important}
}
.site-nav a{
  font-family:"Inter",sans-serif !important;
  font-size:.78rem !important;
  font-weight:500 !important;
  letter-spacing:.1em !important;
  text-transform:uppercase !important;
  color:var(--color-text) !important;
  padding:var(--space-2) 0 !important;
  border-bottom:1px solid transparent !important;
  transition:all var(--transition-interactive);
  white-space:nowrap;
}
.site-nav a:hover, .site-nav a[aria-current="page"]{
  color:var(--color-accent) !important;
  border-bottom-color:var(--color-accent) !important;
}
@media (max-width:1024px){
  /* Force light text in mobile drawer regardless of theme (drawer bg is always dark navy) */
  .site-nav a{color:#f4efe6 !important;padding:var(--space-4) !important;border-bottom:1px solid color-mix(in oklab,#fff 8%,transparent) !important;white-space:normal !important}
  .site-nav a:hover, .site-nav a[aria-current="page"]{color:#d6a948 !important}
  .site-nav .nav-parent{color:#f4efe6 !important}
  .site-nav .nav-caret{color:#f4efe6 !important;opacity:.7}
  .site-nav .nav-submenu a{color:#f4efe6 !important;padding:var(--space-3) var(--space-6) !important;background:color-mix(in oklab,#000 25%,var(--color-navy));border-bottom-color:transparent !important}
  .site-nav .nav-submenu__label{color:color-mix(in oklab,#fff 60%,transparent) !important;font-size:.65rem !important;padding:var(--space-2) var(--space-6) var(--space-1) !important;border-bottom:none !important}
}

/* =========================================================
   Buttons — refined rectangular, no aggressive fills
   ========================================================= */
.btn{
  font-family:"Inter",sans-serif;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  padding:1rem 1.75rem;
  border-radius:2px;
  border:1px solid transparent;
  transition:all var(--transition-interactive);
  display:inline-flex;
  align-items:center;
  gap:.6rem;
}
.btn--primary{
  background:var(--color-accent);
  color:#fff;
  border-color:var(--color-accent);
}
.btn--primary:hover{
  background:var(--color-accent-hover);
  border-color:var(--color-accent-hover);
}
.btn--ghost, .btn--outline{
  background:transparent;
  color:var(--color-text);
  border:1px solid var(--color-text);
}
.btn--ghost:hover, .btn--outline:hover{
  background:var(--color-text);
  color:var(--color-bg);
}

/* =========================================================
   HERO — magazine cover, full-bleed cinematic photo
   ========================================================= */
.hero{
  background:none;
  padding:0;
  position:relative;
  overflow:hidden;
}
.hero .hero__stripe{display:none}
.hero .hero__grid{
  display:block;
  padding:0;
  position:relative;
}
.hero__cover{
  position:relative;
  width:100%;
  min-height:88vh;
  background:
    linear-gradient(90deg, rgba(15,13,11,.82) 0%, rgba(15,13,11,.6) 30%, rgba(15,13,11,.25) 60%, rgba(15,13,11,0) 100%),
    linear-gradient(180deg, rgba(15,13,11,.28) 0%, rgba(15,13,11,0) 40%, rgba(15,13,11,.55) 100%),
    url('./assets/enzo-gate-morning-fog.jpg?v=20260720a') center right/cover no-repeat #0f0d0b;
  display:flex;
  align-items:flex-end;
  padding:var(--space-24) 0 var(--space-16);
}
.hero__cover-inner{
  position:relative;
  z-index:2;
  max-width:var(--content-wide);
  margin:0 auto;
  padding:0 var(--space-8);
  width:100%;
  color:#f4efe4;
}
.hero__eyebrow{
  color:var(--color-gold-soft);
  border:1px solid rgba(214,169,72,.55);
  padding:.5rem 1rem;
  display:inline-block;
  margin-bottom:var(--space-8);
  background:rgba(15,13,11,.35);
  backdrop-filter:blur(4px);
}
.hero .hero__headline,
.hero h1.hero__headline,
h1.hero__headline{
  font-family:"Playfair Display",Georgia,serif !important;
  font-weight:500 !important;
  font-size:clamp(2.5rem, 1.6rem + 4.2vw, 5rem) !important;
  line-height:1.05 !important;
  letter-spacing:-.015em !important;
  color:#f4efe4 !important;
  text-transform:none !important;
  margin:0 0 var(--space-8) !important;
  max-width:100% !important;
  padding:0 !important;
  text-shadow:0 2px 24px rgba(0,0,0,.55);
}
.hero .hero__headline::before,
.hero .hero__headline::after{display:none !important;content:none !important}
.hero__headline .line{
  display:block !important;
  color:#f4efe4 !important;
  font-family:"Playfair Display",Georgia,serif !important;
  font-style:normal !important;
  font-weight:500 !important;
  text-transform:none !important;
}
.hero__headline .accent,
.hero__headline .line.accent{
  color:var(--color-gold-soft) !important;
  font-style:italic !important;
  display:block !important;
  font-weight:500 !important;
}
.hero__sub{
  font-family:"Inter",sans-serif;
  font-size:1.05rem;
  line-height:1.6;
  color:#e0d7c4;
  max-width:52ch;
  margin:0 0 var(--space-8);
  font-weight:400;
}
.hero__actions{
  display:flex;
  gap:var(--space-4);
  flex-wrap:wrap;
  margin-bottom:var(--space-10);
}
.hero__actions .btn--ghost{
  color:#f4efe4;
  border-color:rgba(244,239,228,.55);
}
.hero__actions .btn--ghost:hover{
  background:#f4efe4;
  color:#1a1410;
}
.hero__badges{
  display:flex;
  flex-wrap:wrap;
  gap:var(--space-3) var(--space-6);
  padding:0;
  margin:0;
  list-style:none;
  color:#c4b89e;
  font-family:"Inter",sans-serif;
  font-size:.72rem;
  font-weight:500;
  letter-spacing:.22em;
  text-transform:uppercase;
}
.hero__badges li{
  display:flex;
  align-items:center;
  gap:.5rem;
}
.hero__badges li::before{
  content:"";
  width:6px;
  height:6px;
  background:var(--color-gold-soft);
  border-radius:50%;
  display:inline-block;
}
@media (max-width:768px){
  .hero__cover{
    min-height:auto;
    padding:var(--space-16) 0 var(--space-10);
    background:
      linear-gradient(180deg, rgba(15,13,11,.35) 0%, rgba(15,13,11,.65) 55%, rgba(15,13,11,.9) 100%),
      url('./assets/enzo-gate-morning-fog.jpg?v=20260720a') center center/cover no-repeat #0f0d0b;
  }
  .hero__headline{max-width:100%}
}

/* =========================================================
   Section base — magazine spread rhythm
   ========================================================= */
main section{padding:var(--space-24) 0}
main section.compact{padding:var(--space-20) 0}
.wrap{max-width:var(--content-wide);margin:0 auto;padding:0 var(--space-8)}
.section-head.center{text-align:center;max-width:640px;margin:0 auto var(--space-16)}
.section-head h2{font-size:clamp(2rem, 1.4rem + 2vw, 3.5rem);margin-top:var(--space-3)}
.section-head p{color:var(--color-text-muted);font-size:1.05rem;line-height:1.65;margin-top:var(--space-4)}

/* Thin gold rule between sections */
.rule-gold{
  width:60px;
  height:1px;
  background:var(--color-gold);
  border:0;
  margin:var(--space-6) auto;
}
.rule-gold--left{margin-left:0;margin-right:auto}

/* =========================================================
   Intro / two-column with big dog portrait area
   ========================================================= */
.intro{
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:var(--space-16);
  align-items:center;
}
.intro__text .eyebrow{margin-bottom:var(--space-2)}
.intro__text h2{font-size:clamp(2rem, 1.4rem + 2vw, 3.25rem);margin-bottom:var(--space-6)}
.intro__text p{color:var(--color-text-muted);font-size:1.05rem;line-height:1.75;margin-bottom:var(--space-5);max-width:60ch}
.intro__text .link{color:var(--color-accent);font-weight:600;border-bottom:1px solid currentColor;padding-bottom:2px}
.intro__photo{
  aspect-ratio:4/5;
  background:
    linear-gradient(180deg, rgba(15,13,11,0) 55%, rgba(15,13,11,.35) 100%),
    url('./assets/enzo-head-study-v2.jpg?v=20260720a') center 20%/cover no-repeat #1a1410;
  position:relative;
  border-radius:2px;
  box-shadow:var(--shadow-lg);
}
.intro__photo::after{
  content:"IRON LEGACY";
  position:absolute;
  bottom:var(--space-6);
  left:var(--space-6);
  color:#f4efe4;
  font-family:"Inter",sans-serif;
  font-size:.7rem;
  letter-spacing:.32em;
  font-weight:600;
}
.intro__photo .placeholder{display:none}
.intro__photo--personal::after{display:none !important}
@media (max-width:900px){
  .intro{grid-template-columns:1fr;gap:var(--space-10)}
  .intro__photo{aspect-ratio:16/10}
}

/* =========================================================
   Pillars — editorial numbered grid (magazine style)
   ========================================================= */
.pillars-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:0;
  border-top:1px solid var(--color-border);
  border-left:1px solid var(--color-border);
}
.pillar{
  padding:var(--space-10) var(--space-8);
  border-right:1px solid var(--color-border);
  border-bottom:1px solid var(--color-border);
  background:var(--color-surface);
  position:relative;
  transition:all var(--transition-interactive);
}
.pillar:hover{background:var(--color-surface-2)}
.pillar__num{
  font-family:"Playfair Display",Georgia,serif;
  font-style:italic;
  font-size:2rem;
  color:var(--color-gold);
  margin-bottom:var(--space-4);
  font-weight:500;
  letter-spacing:0;
}
.pillar h3{
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.35rem;
  font-weight:500;
  color:var(--color-text);
  margin-bottom:var(--space-3);
  line-height:1.25;
}
.pillar p{color:var(--color-text-muted);font-size:.95rem;line-height:1.65}
@media (max-width:1100px){
  .pillars-grid[style*="repeat(5"]{grid-template-columns:repeat(3,1fr) !important}
}
@media (max-width:900px){
  .pillars-grid{grid-template-columns:repeat(2, 1fr) !important}
  .pillars-grid[style*="repeat(5"]{grid-template-columns:repeat(2,1fr) !important}
}
@media (max-width:600px){
  .pillars-grid,
  .pillars-grid[style*="repeat(5"]{grid-template-columns:1fr !important}
}

/* Section with cream-2 surface */
main section[style*="surface-2"]{
  background:var(--color-surface-2) !important;
  border-top:1px solid var(--color-divider) !important;
  border-bottom:1px solid var(--color-divider) !important;
}

/* =========================================================
   Why / breed section
   ========================================================= */
.why{
  display:grid;
  grid-template-columns:1.3fr 1fr;
  gap:var(--space-16);
  align-items:start;
}
.why h2, .why h2.display{
  font-family:"Playfair Display",Georgia,serif;
  font-style:normal;
  font-weight:500;
  text-transform:none;
  letter-spacing:-.01em;
}
.why__list{display:flex;flex-direction:column;gap:var(--space-8)}
.why__item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:var(--space-5);
  align-items:start;
  padding-bottom:var(--space-6);
  border-bottom:1px solid var(--color-divider);
}
.why__item:last-child{border-bottom:0}
.why__icon{
  width:44px;
  height:44px;
  border-radius:50%;
  background:transparent;
  border:1px solid var(--color-gold);
  color:var(--color-gold);
  display:grid;
  place-items:center;
  flex-shrink:0;
}
.why__item h3{
  font-family:"Playfair Display",Georgia,serif;
  font-size:1.2rem;
  font-weight:500;
  margin-bottom:var(--space-2);
  color:var(--color-text);
}
.why__item p{color:var(--color-text-muted);line-height:1.65;font-size:.98rem}
.why__visual{
  aspect-ratio:3/4;
  background:
    linear-gradient(180deg, rgba(15,13,11,0) 60%, rgba(15,13,11,.4) 100%),
    url('./assets/enzo-standard-stack-v2.jpg?v=20260720a') center center/cover no-repeat #1a1410;
  border-radius:2px;
  box-shadow:var(--shadow-lg);
  position:relative;
}
.why__visual .placeholder{display:none}
@media (max-width:900px){
  .why{grid-template-columns:1fr;gap:var(--space-10)}
  .why__visual{aspect-ratio:16/9}
}

/* =========================================================
   Stats — refined magazine-style
   ========================================================= */
.stats{
  background:var(--color-navy);
  color:var(--color-text-inverse);
  border-top:1px solid var(--color-gold);
  border-bottom:1px solid var(--color-gold);
  padding:var(--space-16) 0;
}
.stats__grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:var(--space-6);
  text-align:center;
}
.stat__num{
  font-family:"Playfair Display",Georgia,serif;
  font-weight:500;
  font-size:clamp(2.5rem, 1.5rem + 3vw, 4rem);
  color:var(--color-gold-soft);
  letter-spacing:-.02em;
  line-height:1;
  margin-bottom:var(--space-2);
}
.stat__label{
  font-family:"Inter",sans-serif;
  font-size:.75rem;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#d6cbb3;
  font-weight:500;
}
@media (max-width:700px){
  .stats__grid{grid-template-columns:repeat(2, 1fr);gap:var(--space-10)}
}

/* =========================================================
   Testimonials — editorial pull quotes
   ========================================================= */
.testimonials{
  background:var(--color-surface);
  padding:var(--space-24) 0;
  border-top:1px solid var(--color-divider);
}
.testimonials .section-head h2{
  font-family:"Playfair Display",Georgia,serif;
  font-style:italic;
  font-weight:700 !important;
  color:#0f0d0b !important;
}
.testimonial-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:var(--space-10);
  max-width:1000px;
  margin:0 auto;
}
.testimonial{
  padding:var(--space-10) var(--space-8);
  background:transparent;
  border-left:1px solid var(--color-gold);
  position:relative;
}
.testimonial::before{
  content:"\201C";
  position:absolute;
  top:-.2em;
  left:var(--space-6);
  font-family:"Playfair Display",Georgia,serif;
  font-size:4.5rem;
  color:var(--color-gold);
  line-height:1;
  opacity:.65;
}
.testimonial__stars{
  color:var(--color-gold);
  font-size:.9rem;
  letter-spacing:.2em;
  margin-bottom:var(--space-4);
}
.testimonial__quote{
  font-family:"Playfair Display",Georgia,serif;
  font-style:italic;
  font-size:1.25rem;
  line-height:1.5;
  color:var(--color-text);
  margin-bottom:var(--space-5);
  font-weight:400;
}
.testimonial__attr{
  font-family:"Inter",sans-serif;
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--color-gold);
  font-weight:600;
}
@media (max-width:800px){
  .testimonial-grid{grid-template-columns:1fr;gap:var(--space-6)}
}

/* =========================================================
   CTA band — dark warm-black with gold rule
   ========================================================= */
.cta-band{
  background:var(--color-navy) !important;
  color:#f4efe4 !important;
  padding:var(--space-20) 0 !important;
  position:relative;
  text-align:center;
}
.cta-band .wrap{padding:0 var(--space-8)}
.cta-band__inner{text-align:center;max-width:640px;margin:0 auto;padding:var(--space-6) 0;position:relative}
.cta-band__inner::before, .cta-band__inner::after{
  content:"";
  display:block;
  width:60px;
  height:1px;
  background:var(--color-gold);
  margin:0 auto var(--space-6);
}
.cta-band__inner::after{margin:var(--space-6) auto 0}
.cta-band .eyebrow{color:var(--color-gold-soft) !important;margin-bottom:var(--space-4);display:inline-block}
.cta-band h2{
  font-family:"Playfair Display",Georgia,serif !important;
  font-weight:500 !important;
  font-size:clamp(1.75rem, 1.2rem + 2vw, 2.75rem) !important;
  color:#f4efe4 !important;
  margin:0 0 var(--space-5) !important;
  line-height:1.2 !important;
  text-transform:none !important;
}
.cta-band p{
  color:#d6cbb3 !important;
  font-size:1.05rem !important;
  line-height:1.65 !important;
  margin:0 auto var(--space-8) !important;
  max-width:52ch !important;
}
.cta-band .btn{margin:0 auto}

/* =========================================================
   Footer — refined
   ========================================================= */
.site-footer{
  background:var(--color-navy-deep);
  color:#d6cbb3;
  padding:var(--space-16) 0 var(--space-8);
  border-top:2px solid var(--color-gold);
}
.site-footer h4{
  font-family:"Playfair Display",Georgia,serif;
  font-style:italic;
  color:var(--color-gold-soft);
  font-size:1.1rem;
  font-weight:500;
  margin-bottom:var(--space-4);
  text-transform:none;
  letter-spacing:0;
}
.site-footer a{color:#d6cbb3;transition:color .2s}
.site-footer a:hover{color:var(--color-gold-soft)}
.footer__grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr 1fr;
  gap:var(--space-10);
  padding-bottom:var(--space-10);
  border-bottom:1px solid rgba(214,169,72,.15);
}
.footer__bottom{
  padding-top:var(--space-6);
  display:flex;
  justify-content:space-between;
  gap:var(--space-4);
  flex-wrap:wrap;
  font-size:.78rem;
  color:#8a7d6d;
  letter-spacing:.1em;
  text-transform:uppercase;
}
@media (max-width:1000px){
  .footer__grid{grid-template-columns:1fr 1fr;gap:var(--space-8)}
}
@media (max-width:640px){
  .footer__grid{grid-template-columns:1fr}
}

/* =========================================================
   Placeholders — hide, we're using real photos
   ========================================================= */
.placeholder{display:none}

/* Section head left variant */
.section-head:not(.center){
  max-width:640px;
  margin-bottom:var(--space-12);
}
.section-head:not(.center) h2{
  margin-top:var(--space-3);
  font-size:clamp(2rem, 1.4rem + 2vw, 3.25rem);
}

/* Reveal animation — disable in favor of instant visibility */
.reveal,
.js-ready .reveal,
.js-ready .reveal.in{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
}

/* Utility overrides */
.mt-4{margin-top:var(--space-4)}
.mt-8{margin-top:var(--space-8)}

/* Pre-screening block (Contact + Waiting List) */
.prescreen{
  max-width:840px;margin:0 auto;padding:var(--space-8) var(--space-6);
  background:var(--color-surface-2);border:1px solid var(--color-border);
  border-radius:var(--radius-lg);
}
.prescreen .eyebrow{color:var(--color-accent);display:block;margin-bottom:var(--space-3)}
.prescreen h2{
  font-family:var(--font-serif);font-style:italic;font-weight:700 !important;
  font-size:clamp(1.75rem,3vw,2.25rem);line-height:1.15;margin:0 0 var(--space-4);
  color:#000000 !important;
}
.prescreen__intro{
  font-size:var(--text-base);line-height:1.7;color:var(--color-text);
  margin:0 0 var(--space-6);max-width:64ch;
}
.prescreen__list{
  list-style:none;counter-reset:pre;padding:0;margin:0;
  display:grid;gap:var(--space-3);
}
.prescreen__list li{
  counter-increment:pre;position:relative;padding-left:2.75rem;
  font-size:var(--text-base);line-height:1.55;color:var(--color-text);
  padding-top:2px;
}
.prescreen__list li::before{
  content:counter(pre,decimal-leading-zero);
  position:absolute;left:0;top:0;
  font-family:var(--font-serif);font-style:italic;font-weight:500;
  font-size:1.125rem;color:var(--color-accent);
  letter-spacing:0.02em;
}
.prescreen__note{
  margin:var(--space-6) 0 0;font-size:var(--text-sm);color:var(--color-text-muted);
  font-style:italic;line-height:1.6;
}

/* Process steps (Waiting List page) */
.process-steps{
  display:grid;gap:var(--space-6);max-width:900px;margin:0 auto;
}
.process-step{
  display:grid;grid-template-columns:auto 1fr;gap:var(--space-6);
  padding:var(--space-6) 0;border-bottom:1px solid var(--color-border);
}
.process-step:last-child{border-bottom:none}
.process-step__num{
  font-family:var(--font-serif);font-style:italic;font-weight:500;
  font-size:clamp(2.5rem,5vw,3.5rem);line-height:1;color:var(--color-accent);
  min-width:3.5rem;
}
.process-step__body h3{
  font-family:var(--font-serif);font-style:italic;font-weight:500;
  font-size:clamp(1.375rem,2.2vw,1.75rem);line-height:1.2;
  margin:0 0 var(--space-3);color:var(--color-heading);
}
.process-step__body p{
  font-size:var(--text-base);line-height:1.7;color:var(--color-text);
  margin:0 0 var(--space-3);max-width:60ch;
}
.process-step__body p:last-child{margin-bottom:0}
.process-step__body .link{color:var(--color-accent);text-decoration:underline}
@media (max-width:640px){
  .process-step{grid-template-columns:1fr;gap:var(--space-3)}
  .process-step__num{font-size:2.5rem}
}
