/* ========================================================================== 
   ALPACA LIFE CYCLE — /alpacas/lifecycle/
   Shared stylesheet for the lifecycle hub and all lifecycle child pages.
   Load after style.css and alpacas.css.
   ========================================================================== */

.lifecycle-head{ max-width:46rem; }

.lifecycle-stages{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  margin:3rem 0 .5rem;
  border:1px solid var(--fleece-beige);
  border-radius:var(--radius);
  overflow:hidden;
}

/* Adult page: a fourth visual rhythm within the same shared lifecycle stylesheet. */
.adult-page{ max-width:58rem; }
.adult-page .page-head,
.adult-page > .page-banner{ max-width:42rem; }
.adult-page .page-banner{ max-width:52rem; }
.adult-page .page-banner img{ aspect-ratio:3/1; }
.adult-glance{ display:grid; grid-template-columns:minmax(12rem,.8fr) minmax(0,2fr); gap:2rem; margin:3rem 0 4.5rem; padding:1.5rem; background:var(--fleece-card); border:1px solid var(--fleece-beige); border-left:3px solid #1F5C6B; border-radius:0 var(--radius) var(--radius) 0; }
.adult-glance h2{ margin:.15rem 0 0; font-size:1.5rem; }
.adult-glance dl{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:0; }
.adult-glance dl > div{ padding-top:.9rem; border-top:1px solid var(--fleece-beige); }
.adult-glance dt{ margin-bottom:.25rem; font-size:.6875rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--fleece-silver); }
.adult-glance dd{ margin:0; font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; font-weight:600; line-height:1.35; color:var(--fleece-bay); }
.adult-herd-life,.adult-care,.adult-roles,.adult-visits{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 3.5rem; align-items:center; margin:5rem 0; }
.adult-herd-life figure,.adult-roles figure,.adult-visits figure{ margin:0; }
.adult-herd-life img,.adult-roles img,.adult-visits img,.adult-collage img{ width:100%; border:1px solid var(--fleece-beige); border-radius:var(--radius); }
.adult-herd-life h2,.adult-care h2,.adult-roles h2,.adult-visits h2{ margin:.2rem 0 1rem; }
.adult-herd-life p,.adult-care p,.adult-roles p,.adult-visits p{ color:var(--fleece-brown); }
.adult-roles figure{ order:2; }
.adult-rhythm{ margin:0 calc(50% - 50vw) 4.5rem; padding:3rem max(1.25rem,calc((100vw - 58rem)/2)); background:#EAF1F0; border-top:1px solid #C9DDDA; border-bottom:1px solid #C9DDDA; }
.adult-rhythm > div{ max-width:42rem; margin:0 auto 1.75rem; }
.adult-rhythm h2{ margin:.15rem 0 0; }
.adult-rhythm ol{ display:grid; grid-template-columns:repeat(5,1fr); max-width:58rem; margin:0 auto; padding:0; list-style:none; }
.adult-rhythm li{ min-height:8rem; padding:1rem 1rem 1rem 1.125rem; border-left:1px solid #B7D0CC; }
.adult-rhythm li:last-child{ border-right:1px solid #B7D0CC; }
.adult-rhythm span,.adult-rhythm strong,.adult-rhythm small{ display:block; }
.adult-rhythm span{ margin-bottom:.7rem; font-size:.625rem; font-weight:600; letter-spacing:.1em; color:#1F5C6B; }
.adult-rhythm strong{ font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; color:var(--fleece-bay); }
.adult-rhythm small{ margin-top:.35rem; font-size:.75rem; line-height:1.4; color:var(--fleece-brown); }
.adult-care{ align-items:start; }
.adult-collage{ position:relative; padding:0 2.25rem 2.5rem 0; }
.adult-collage figure{ margin:0; }
.adult-collage-main img{ aspect-ratio:4/5; object-fit:cover; }
.adult-collage-detail{ position:absolute; right:0; bottom:0; width:52%; padding:.35rem; background:var(--fleece-white); box-shadow:var(--shadow-sm); }
.adult-collage-detail img{ border-radius:2px; }
.adult-roles-panel{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr); gap:2rem 3rem; margin:5rem 0; padding:2.5rem 3rem; background:#F1F0EA; border:1px solid #D9D6C9; border-left:4px solid #6C7566; border-radius:0 var(--radius) var(--radius) 0; }
.adult-roles-panel h2{ margin:.2rem 0 .75rem; }
.adult-roles-panel p{ margin:0; color:var(--fleece-brown); }
.adult-roles-panel ul{ margin:0; padding:0; list-style:none; }
.adult-roles-panel li{ padding:.55rem 0 .55rem 1.25rem; border-bottom:1px solid #D9D6C9; color:var(--fleece-brown); font-size:.875rem; }
.adult-roles-panel li::before{ content:"•"; margin-left:-1.1rem; margin-right:.65rem; color:#6C7566; }
.adult-roles-panel li:last-child{ border-bottom:0; }
@media (max-width:40rem){
  .adult-glance,.adult-glance dl,.adult-herd-life,.adult-care,.adult-roles,.adult-visits,.adult-roles-panel{ grid-template-columns:1fr; }
  .adult-glance{ gap:1.25rem; margin:2.5rem 0 3.5rem; padding:1.25rem; }
  .adult-glance dl{ gap:.2rem; }
  .adult-rhythm{ margin-bottom:3.5rem; padding-top:2.25rem; padding-bottom:2.25rem; }
  .adult-rhythm ol{ grid-template-columns:1fr; }
  .adult-rhythm li{ min-height:0; padding:.85rem 1rem; border-right:1px solid #B7D0CC; border-bottom:1px solid #B7D0CC; }
  .adult-rhythm li:last-child{ border-bottom:0; }
  .adult-rhythm span,.adult-rhythm strong,.adult-rhythm small{ display:inline; }
  .adult-rhythm span{ margin-right:.6rem; }
  .adult-rhythm small::before{ content:" — "; }
  .adult-herd-life,.adult-care,.adult-roles,.adult-visits,.adult-roles-panel{ gap:1.5rem; margin:3.75rem 0; }
  .adult-roles figure{ order:0; }
  .adult-roles-panel{ padding:1.75rem 1.25rem; }
  .adult-collage{ max-width:28rem; }
}

/* Lifespan page: direct answer first, then the care that supports a long life. */
.lifespan-page{ max-width:58rem; }
.lifespan-page .page-head,.lifespan-page > .page-banner{ max-width:42rem; }
.lifespan-page .page-banner{ max-width:52rem; }
.lifespan-page .page-banner img{ aspect-ratio:3/1; }
.lifespan-answer{ display:grid; grid-template-columns:minmax(14rem,1fr) minmax(0,1.2fr); gap:2rem 3rem; margin:3rem 0 4.5rem; padding:2rem; background:#F0F4F1; border:1px solid #D0DDD4; border-left:4px solid #53725F; border-radius:0 var(--radius) var(--radius) 0; }
.lifespan-answer h2{ margin:.15rem 0 .75rem; font-size:clamp(1.75rem,3vw,2.35rem); }
.lifespan-answer p{ margin-bottom:0; color:var(--fleece-brown); }
.lifespan-answer dl{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; align-self:end; margin:0; }
.lifespan-answer dl > div{ padding-top:.9rem; border-top:1px solid #C8D8CC; }
.lifespan-answer dt{ margin-bottom:.25rem; font-size:.6875rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--fleece-silver); }
.lifespan-answer dd{ margin:0; font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; font-weight:600; line-height:1.35; color:var(--fleece-bay); }
.lifespan-routine,.lifespan-wellness,.lifespan-senior{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 3.5rem; align-items:center; margin:5rem 0; }
.lifespan-routine figure,.lifespan-senior figure{ margin:0; }
.lifespan-routine img,.lifespan-senior img,.lifespan-collage img{ width:100%; border:1px solid var(--fleece-beige); border-radius:var(--radius); }
.lifespan-routine h2,.lifespan-wellness h2,.lifespan-senior h2{ margin:.2rem 0 1rem; }
.lifespan-routine p,.lifespan-wellness p,.lifespan-senior p{ color:var(--fleece-brown); }
.lifespan-factors{ margin:0 calc(50% - 50vw) 4.5rem; padding:3rem max(1.25rem,calc((100vw - 58rem)/2)); background:#F6F0E7; border-top:1px solid #E5D5C0; border-bottom:1px solid #E5D5C0; }
.lifespan-factors > div{ max-width:42rem; margin:0 auto 1.75rem; }
.lifespan-factors h2{ margin:.15rem 0 0; }
.lifespan-factors ol{ display:grid; grid-template-columns:repeat(5,1fr); max-width:58rem; margin:0 auto; padding:0; list-style:none; }
.lifespan-factors li{ min-height:8rem; padding:1rem 1rem 1rem 1.125rem; border-left:1px solid #DEC7A9; }
.lifespan-factors li:last-child{ border-right:1px solid #DEC7A9; }
.lifespan-factors span,.lifespan-factors strong,.lifespan-factors small{ display:block; }
.lifespan-factors span{ margin-bottom:.7rem; font-size:.625rem; font-weight:600; letter-spacing:.1em; color:#8E7256; }
.lifespan-factors strong{ font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; color:var(--fleece-bay); }
.lifespan-factors small{ margin-top:.35rem; font-size:.75rem; line-height:1.4; color:var(--fleece-brown); }
.lifespan-wellness{ align-items:start; }
.lifespan-collage{ position:relative; padding:0 2.25rem 2.5rem 0; }
.lifespan-collage figure{ margin:0; }
.lifespan-collage-main img{ aspect-ratio:4/5; object-fit:cover; }
.lifespan-collage-detail{ position:absolute; right:0; bottom:0; width:52%; padding:.35rem; background:var(--fleece-white); box-shadow:var(--shadow-sm); }
.lifespan-collage-detail img{ border-radius:2px; }
.lifespan-years{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr); gap:2rem 3rem; margin:5rem 0; padding:2.5rem 3rem; background:#EAF1F0; border:1px solid #C9DDDA; border-left:4px solid #1F5C6B; border-radius:0 var(--radius) var(--radius) 0; }
.lifespan-years h2{ margin:.2rem 0 .75rem; }
.lifespan-years p{ margin:0; color:var(--fleece-brown); }
.lifespan-years ul{ margin:0; padding:0; list-style:none; }
.lifespan-years li{ border-bottom:1px solid #C9DDDA; }
.lifespan-years li:last-child{ border-bottom:0; }
.lifespan-years a{ display:block; padding:.55rem 0; color:var(--fleece-brown); font-size:.875rem; }
.lifespan-senior figure{ order:2; }
@media (max-width:40rem){
  .lifespan-answer,.lifespan-answer dl,.lifespan-routine,.lifespan-wellness,.lifespan-senior,.lifespan-years{ grid-template-columns:1fr; }
  .lifespan-answer{ gap:1.25rem; margin:2.5rem 0 3.5rem; padding:1.5rem 1.25rem; }
  .lifespan-answer dl{ gap:.2rem; }
  .lifespan-factors{ margin-bottom:3.5rem; padding-top:2.25rem; padding-bottom:2.25rem; }
  .lifespan-factors ol{ grid-template-columns:1fr; }
  .lifespan-factors li{ min-height:0; padding:.85rem 1rem; border-right:1px solid #DEC7A9; border-bottom:1px solid #DEC7A9; }
  .lifespan-factors li:last-child{ border-bottom:0; }
  .lifespan-factors span,.lifespan-factors strong,.lifespan-factors small{ display:inline; }
  .lifespan-factors span{ margin-right:.6rem; }
  .lifespan-factors small::before{ content:" — "; }
  .lifespan-routine,.lifespan-wellness,.lifespan-senior,.lifespan-years{ gap:1.5rem; margin:3.75rem 0; }
  .lifespan-years{ padding:1.75rem 1.25rem; }
  .lifespan-senior figure{ order:0; }
  .lifespan-collage{ max-width:28rem; }
}
.lifecycle-stages a{
  display:flex;
  flex-direction:column;
  gap:.2rem;
  min-height:4.75rem;
  padding:.85rem .9rem;
  background:var(--fleece-card);
  border-right:1px solid var(--fleece-beige);
  color:var(--fleece-bay);
  font-family:var(--font-display);
  font-variation-settings:"SOFT" 70,"opsz" 28;
  font-size:1rem;
  font-weight:600;
  line-height:1.15;
  text-decoration:none;
  transition:background .2s var(--ease), color .2s var(--ease);
}
.lifecycle-stages a:last-child{ border-right:0; }
.lifecycle-stages a:hover{
  background:var(--fleece-white);
  color:var(--indigo);
}
.lifecycle-stages span{
  font-family:var(--font-body);
  font-size:.625rem;
  font-weight:600;
  letter-spacing:.1em;
  color:var(--fleece-silver);
}

.lifecycle-split{ scroll-margin-top:5.5rem; }
.lifecycle-split h2 a{
  color:inherit;
  text-decoration:none;
}
.lifecycle-split h2 a:hover{ color:var(--indigo); }

/* Birth page: visual breaks for the delivery sequence.
   Every selector is scoped to .birth-page, so these additions do not change
   the lifecycle hub or the other lifecycle child pages. */
.birth-page{ max-width:58rem; }
.birth-page .page-head,
.birth-page > .page-banner,
.birth-page > .birth-copy{ max-width:42rem; }
.birth-page .page-banner{ max-width:52rem; }
.birth-page .page-banner img{ aspect-ratio:3/1; }

.birth-glance{
  margin:3rem 0 4.5rem;
  padding:1.5rem;
  background:var(--fleece-card);
  border:1px solid var(--fleece-beige);
  border-left:3px solid var(--indigo);
  border-radius:0 var(--radius) var(--radius) 0;
}
.birth-glance-intro h2{ margin:.15rem 0 0; font-size:1.5rem; }
.birth-glance dl{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1rem;
  margin:1.5rem 0 0;
}
.birth-glance dl > div{ padding-top:.9rem; border-top:1px solid var(--fleece-beige); }
.birth-glance dt{
  margin-bottom:.25rem;
  font-size:.6875rem;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:var(--fleece-silver);
}
.birth-glance dd{
  margin:0;
  font-family:var(--font-display);
  font-variation-settings:"SOFT" 70,"opsz" 25;
  font-size:1rem;
  font-weight:600;
  line-height:1.35;
  color:var(--fleece-bay);
}

.birth-copy{ margin-bottom:4rem; }
.birth-copy h2{ margin-top:0; }

.birth-timeline{
  margin:0 calc(50% - 50vw) 4.5rem;
  padding:3rem max(1.25rem, calc((100vw - 58rem) / 2));
  background:var(--fleece-white);
  border-top:1px solid var(--fleece-beige);
  border-bottom:1px solid var(--fleece-beige);
}
.birth-timeline > div{ max-width:42rem; margin:0 auto 1.75rem; }
.birth-timeline h2{ margin:.15rem 0 0; }
.birth-timeline ol{
  display:grid;
  grid-template-columns:repeat(5, 1fr);
  max-width:58rem;
  margin:0 auto;
  padding:0;
  list-style:none;
}
.birth-timeline li{
  position:relative;
  min-height:8rem;
  padding:1rem 1rem 1rem 1.125rem;
  border-left:1px solid var(--fleece-beige);
}
.birth-timeline li:last-child{ border-right:1px solid var(--fleece-beige); }
.birth-timeline span,
.birth-timeline strong,
.birth-timeline small{ display:block; }
.birth-timeline span{ margin-bottom:.7rem; font-size:.625rem; font-weight:600; letter-spacing:.1em; color:var(--indigo); }
.birth-timeline strong{ font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; color:var(--fleece-bay); }
.birth-timeline small{ margin-top:.35rem; font-size:.75rem; line-height:1.4; color:var(--fleece-brown); }

.birth-preparation,
.birth-delivery,
.birth-first-hours,
.birth-veterinary{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:2rem 3.5rem;
  align-items:center;
  margin:5rem 0;
}
.birth-preparation figure,
.birth-delivery figure,
.birth-veterinary figure{ margin:0; }
.birth-preparation img,
.birth-delivery img,
.birth-veterinary img,
.birth-collage img{
  width:100%;
  border:1px solid var(--fleece-beige);
  border-radius:var(--radius);
}
.birth-preparation h2,
.birth-delivery h2,
.birth-first-hours h2,
.birth-veterinary h2{ margin:.2rem 0 1rem; }
.birth-preparation p,
.birth-delivery p,
.birth-first-hours p,
.birth-veterinary p{ color:var(--fleece-brown); }
.birth-delivery figure{ order:2; }

.birth-first-hours{ align-items:start; }
.birth-collage{ position:relative; padding:0 2.25rem 2.5rem 0; }
.birth-collage figure{ margin:0; }
.birth-collage-main img{ aspect-ratio:4/5; object-fit:cover; }
.birth-collage-detail{
  position:absolute;
  right:0;
  bottom:0;
  width:52%;
  padding:.35rem;
  background:var(--fleece-white);
  box-shadow:var(--shadow-sm);
}
.birth-collage-detail img{ border-radius:2px; }

.birth-callout{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(16rem, .9fr);
  gap:2rem 3rem;
  margin:5rem 0;
  padding:2.5rem 3rem;
  background:#E7F0EE;
  border:1px solid #C5D9D4;
  border-left:4px solid var(--indigo);
  border-radius:0 var(--radius) var(--radius) 0;
}
.birth-callout h2{ margin:.2rem 0 .75rem; }
.birth-callout p{ margin:0; color:var(--fleece-brown); }
.birth-callout ul{ margin:0; padding:0; list-style:none; }
.birth-callout li{ padding:.55rem 0 .55rem 1.25rem; border-bottom:1px solid #C5D9D4; color:var(--fleece-brown); font-size:.875rem; }
.birth-callout li::before{ content:"•"; margin-left:-1.1rem; margin-right:.65rem; color:var(--indigo); }
.birth-callout li:last-child{ border-bottom:0; }

@media (max-width:40rem){
  .lifecycle-stages{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .lifecycle-stages a{ min-height:4.25rem; }
  .lifecycle-stages a:nth-child(2){ border-right:0; }
  .lifecycle-stages a:nth-child(-n+4){ border-bottom:1px solid var(--fleece-beige); }
  .lifecycle-stages a:last-child{ grid-column:span 2; }
  .birth-glance{ margin:2.5rem 0 3.5rem; padding:1.25rem; }
  .birth-glance dl{ grid-template-columns:1fr; gap:.2rem; }
  .birth-timeline{ margin-bottom:3.5rem; padding-top:2.25rem; padding-bottom:2.25rem; }
  .birth-timeline ol{ grid-template-columns:1fr; }
  .birth-timeline li{ min-height:0; padding:.85rem 1rem; border-right:1px solid var(--fleece-beige); border-bottom:1px solid var(--fleece-beige); }
  .birth-timeline li:last-child{ border-bottom:0; }
  .birth-timeline span,
  .birth-timeline strong,
  .birth-timeline small{ display:inline; }
  .birth-timeline span{ margin-right:.6rem; }
  .birth-timeline small::before{ content:" — "; }
  .birth-preparation,
  .birth-delivery,
  .birth-first-hours,
  .birth-veterinary,
  .birth-callout{ grid-template-columns:1fr; gap:1.5rem; margin:3.75rem 0; }
  .birth-delivery figure{ order:0; }
  .birth-callout{ padding:1.75rem 1.25rem; }
  .birth-collage{ max-width:28rem; }
}

/* Growing and maturing page. Shared with the other lifecycle pages. */
.growing-page{ max-width:58rem; }
.growing-page .page-head,
.growing-page > .page-banner{ max-width:42rem; }
.growing-page .page-banner{ max-width:52rem; }
.growing-page .page-banner img{ aspect-ratio:3/1; }
.growing-glance{ display:grid; grid-template-columns:minmax(12rem,.8fr) minmax(0,2fr); gap:2rem; margin:3rem 0 4.5rem; padding:1.5rem; background:var(--fleece-card); border:1px solid var(--fleece-beige); border-left:3px solid #8E7256; border-radius:0 var(--radius) var(--radius) 0; }
.growing-glance h2{ margin:.15rem 0 0; font-size:1.5rem; }
.growing-glance dl{ display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin:0; }
.growing-glance dl > div{ padding-top:.9rem; border-top:1px solid var(--fleece-beige); }
.growing-glance dt{ margin-bottom:.25rem; font-size:.6875rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--fleece-silver); }
.growing-glance dd{ margin:0; font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; font-weight:600; line-height:1.35; color:var(--fleece-bay); }
.growing-herd,.growing-fleece,.growing-routines,.growing-maturity{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 3.5rem; align-items:center; margin:5rem 0; }
.growing-herd figure,.growing-routines figure,.growing-maturity figure{ margin:0; }
.growing-herd img,.growing-routines img,.growing-maturity img,.growing-collage img{ width:100%; border:1px solid var(--fleece-beige); border-radius:var(--radius); }
.growing-herd h2,.growing-fleece h2,.growing-routines h2,.growing-maturity h2{ margin:.2rem 0 1rem; }
.growing-herd p,.growing-fleece p,.growing-routines p,.growing-maturity p{ color:var(--fleece-brown); }
.growing-routines figure{ order:2; }
.growing-roadmap{ margin:0 calc(50% - 50vw) 4.5rem; padding:3rem max(1.25rem,calc((100vw - 58rem)/2)); background:#F5F0E9; border-top:1px solid #E5D7C7; border-bottom:1px solid #E5D7C7; }
.growing-roadmap > div{ max-width:42rem; margin:0 auto 1.75rem; }
.growing-roadmap h2{ margin:.15rem 0 0; }
.growing-roadmap ol{ display:grid; grid-template-columns:repeat(5,1fr); max-width:58rem; margin:0 auto; padding:0; list-style:none; }
.growing-roadmap li{ min-height:8rem; padding:1rem 1rem 1rem 1.125rem; border-left:1px solid #DDC7AD; }
.growing-roadmap li:last-child{ border-right:1px solid #DDC7AD; }
.growing-roadmap span,.growing-roadmap strong,.growing-roadmap small{ display:block; }
.growing-roadmap span{ margin-bottom:.7rem; font-size:.625rem; font-weight:600; letter-spacing:.1em; color:#8E7256; }
.growing-roadmap strong{ font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; color:var(--fleece-bay); }
.growing-roadmap small{ margin-top:.35rem; font-size:.75rem; line-height:1.4; color:var(--fleece-brown); }
.growing-fleece{ align-items:start; }
.growing-collage{ position:relative; padding:0 2.25rem 2.5rem 0; }
.growing-collage figure{ margin:0; }
.growing-collage-main img{ aspect-ratio:4/5; object-fit:cover; }
.growing-collage-detail{ position:absolute; right:0; bottom:0; width:52%; padding:.35rem; background:var(--fleece-white); box-shadow:var(--shadow-sm); }
.growing-collage-detail img{ border-radius:2px; }
.growing-checklist{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(16rem,.9fr); gap:2rem 3rem; margin:5rem 0; padding:2.5rem 3rem; background:#EFF3EE; border:1px solid #D2DDD1; border-left:4px solid #5F7560; border-radius:0 var(--radius) var(--radius) 0; }
.growing-checklist h2{ margin:.2rem 0 .75rem; }
.growing-checklist p{ margin:0; color:var(--fleece-brown); }
.growing-checklist ul{ margin:0; padding:0; list-style:none; }
.growing-checklist li{ padding:.55rem 0 .55rem 1.25rem; border-bottom:1px solid #D2DDD1; color:var(--fleece-brown); font-size:.875rem; }
.growing-checklist li::before{ content:"•"; margin-left:-1.1rem; margin-right:.65rem; color:#5F7560; }
.growing-checklist li:last-child{ border-bottom:0; }
@media (max-width:40rem){
  .growing-glance,.growing-glance dl,.growing-herd,.growing-fleece,.growing-routines,.growing-maturity,.growing-checklist{ grid-template-columns:1fr; }
  .growing-glance{ gap:1.25rem; margin:2.5rem 0 3.5rem; padding:1.25rem; }
  .growing-glance dl{ gap:.2rem; }
  .growing-roadmap{ margin-bottom:3.5rem; padding-top:2.25rem; padding-bottom:2.25rem; }
  .growing-roadmap ol{ grid-template-columns:1fr; }
  .growing-roadmap li{ min-height:0; padding:.85rem 1rem; border-right:1px solid #DDC7AD; border-bottom:1px solid #DDC7AD; }
  .growing-roadmap li:last-child{ border-bottom:0; }
  .growing-roadmap span,.growing-roadmap strong,.growing-roadmap small{ display:inline; }
  .growing-roadmap span{ margin-right:.6rem; }
  .growing-roadmap small::before{ content:" — "; }
  .growing-herd,.growing-fleece,.growing-routines,.growing-maturity,.growing-checklist{ gap:1.5rem; margin:3.75rem 0; }
  .growing-routines figure{ order:0; }
  .growing-checklist{ padding:1.75rem 1.25rem; }
  .growing-collage{ max-width:28rem; }
}

/* Cria page: a separate visual rhythm that uses the same shared stylesheet. */
.cria-page{ max-width:58rem; }
.cria-page .page-head,
.cria-page > .page-banner{ max-width:42rem; }
.cria-page .page-banner{ max-width:52rem; }
.cria-page .page-banner img{ aspect-ratio:3/1; }

.cria-glance{
  display:grid;
  grid-template-columns:minmax(12rem, .8fr) minmax(0, 2fr);
  gap:2rem;
  margin:3rem 0 4.5rem;
  padding:1.5rem;
  background:var(--fleece-card);
  border:1px solid var(--fleece-beige);
  border-left:3px solid #7B8C75;
  border-radius:0 var(--radius) var(--radius) 0;
}
.cria-glance h2{ margin:.15rem 0 0; font-size:1.5rem; }
.cria-glance dl{ display:grid; grid-template-columns:repeat(3, 1fr); gap:1rem; margin:0; }
.cria-glance dl > div{ padding-top:.9rem; border-top:1px solid var(--fleece-beige); }
.cria-glance dt{ margin-bottom:.25rem; font-size:.6875rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--fleece-silver); }
.cria-glance dd{ margin:0; font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; font-weight:600; line-height:1.35; color:var(--fleece-bay); }

.cria-first-weeks,
.cria-forage,
.cria-herd-life,
.cria-weaning{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:2rem 3.5rem;
  align-items:center;
  margin:5rem 0;
}
.cria-first-weeks figure,
.cria-herd-life figure,
.cria-weaning figure{ margin:0; }
.cria-first-weeks img,
.cria-herd-life img,
.cria-weaning img,
.cria-collage img{ width:100%; border:1px solid var(--fleece-beige); border-radius:var(--radius); }
.cria-first-weeks h2,
.cria-forage h2,
.cria-herd-life h2,
.cria-weaning h2{ margin:.2rem 0 1rem; }
.cria-first-weeks p,
.cria-forage p,
.cria-herd-life p,
.cria-weaning p{ color:var(--fleece-brown); }
.cria-herd-life figure{ order:2; }

.cria-pathway{
  margin:0 calc(50% - 50vw) 4.5rem;
  padding:3rem max(1.25rem, calc((100vw - 58rem) / 2));
  background:#F1F4EE;
  border-top:1px solid #D6DFD0;
  border-bottom:1px solid #D6DFD0;
}
.cria-pathway > div{ max-width:42rem; margin:0 auto 1.75rem; }
.cria-pathway h2{ margin:.15rem 0 0; }
.cria-pathway ol{ display:grid; grid-template-columns:repeat(5, 1fr); max-width:58rem; margin:0 auto; padding:0; list-style:none; }
.cria-pathway li{ min-height:8rem; padding:1rem 1rem 1rem 1.125rem; border-left:1px solid #C9D7C0; }
.cria-pathway li:last-child{ border-right:1px solid #C9D7C0; }
.cria-pathway span,
.cria-pathway strong,
.cria-pathway small{ display:block; }
.cria-pathway span{ margin-bottom:.7rem; font-size:.625rem; font-weight:600; letter-spacing:.1em; color:#5F7560; }
.cria-pathway strong{ font-family:var(--font-display); font-variation-settings:"SOFT" 70,"opsz" 25; font-size:1rem; color:var(--fleece-bay); }
.cria-pathway small{ margin-top:.35rem; font-size:.75rem; line-height:1.4; color:var(--fleece-brown); }

.cria-forage{ align-items:start; }
.cria-collage{ position:relative; padding:0 2.25rem 2.5rem 0; }
.cria-collage figure{ margin:0; }
.cria-collage-main img{ aspect-ratio:4/5; object-fit:cover; }
.cria-collage-detail{ position:absolute; right:0; bottom:0; width:52%; padding:.35rem; background:var(--fleece-white); box-shadow:var(--shadow-sm); }
.cria-collage-detail img{ border-radius:2px; }

.cria-weaning-panel{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(16rem, .9fr);
  gap:2rem 3rem;
  margin:5rem 0;
  padding:2.5rem 3rem;
  background:#F4EEE5;
  border:1px solid #E1D1BA;
  border-left:4px solid #8E7256;
  border-radius:0 var(--radius) var(--radius) 0;
}
.cria-weaning-panel h2{ margin:.2rem 0 .75rem; }
.cria-weaning-panel p{ margin:0; color:var(--fleece-brown); }
.cria-weaning-panel ul{ margin:0; padding:0; list-style:none; }
.cria-weaning-panel li{ padding:.55rem 0 .55rem 1.25rem; border-bottom:1px solid #E1D1BA; color:var(--fleece-brown); font-size:.875rem; }
.cria-weaning-panel li::before{ content:"•"; margin-left:-1.1rem; margin-right:.65rem; color:#8E7256; }
.cria-weaning-panel li:last-child{ border-bottom:0; }

@media (max-width:40rem){
  .cria-glance,
  .cria-glance dl,
  .cria-first-weeks,
  .cria-forage,
  .cria-herd-life,
  .cria-weaning,
  .cria-weaning-panel{ grid-template-columns:1fr; }
  .cria-glance{ gap:1.25rem; margin:2.5rem 0 3.5rem; padding:1.25rem; }
  .cria-glance dl{ gap:.2rem; }
  .cria-pathway{ margin-bottom:3.5rem; padding-top:2.25rem; padding-bottom:2.25rem; }
  .cria-pathway ol{ grid-template-columns:1fr; }
  .cria-pathway li{ min-height:0; padding:.85rem 1rem; border-right:1px solid #C9D7C0; border-bottom:1px solid #C9D7C0; }
  .cria-pathway li:last-child{ border-bottom:0; }
  .cria-pathway span,
  .cria-pathway strong,
  .cria-pathway small{ display:inline; }
  .cria-pathway span{ margin-right:.6rem; }
  .cria-pathway small::before{ content:" — "; }
  .cria-first-weeks,
  .cria-forage,
  .cria-herd-life,
  .cria-weaning,
  .cria-weaning-panel{ gap:1.5rem; margin:3.75rem 0; }
  .cria-herd-life figure{ order:0; }
  .cria-weaning-panel{ padding:1.75rem 1.25rem; }
  .cria-collage{ max-width:28rem; }
}
