/* Loved Ever After library: calm, readable, mobile first. Uses the tokens in lea.css. */
.libwide{max-width:var(--max);margin:0 auto}
.narrowish{max-width:44rem}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem .5rem;padding:0;margin:var(--s3) 0 var(--s3);font-size:var(--fs-small);color:var(--ink-soft)}
.crumbs li+li::before{content:"›";margin-right:.5rem;color:var(--ink-soft)}
.crumbs a{color:var(--ink)}
.crumbs [aria-current]{color:var(--ink-soft)}
.libhero{padding:var(--s5) 0 var(--s4);max-width:46rem}
.libhero h1{margin:var(--s2) 0 var(--s3)}
.libhero .cta{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s4)}
.secgrid,.paths,.cards,.results,.furtherhelp ul,.related ul{list-style:none;padding:0;margin:0}
.secgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:var(--s3);margin:var(--s3) 0 var(--s5)}
.secgrid a{display:flex;flex-direction:column;gap:.35rem;height:100%;padding:var(--s3);border:1.5px solid var(--line);border-radius:var(--radius);background:var(--white);text-decoration:none;color:var(--ink)}
.secgrid a:hover,.secgrid a:focus-visible{border-color:var(--amber-deep);background:var(--paper)}
.secgrid .t{font:600 1.2rem/1.3 var(--display)}
.secgrid .d{font-size:var(--fs-small)}
.secgrid .c{font-size:var(--fs-small);color:var(--ink-soft);margin-top:auto}
.starthere{background:var(--stone);border-radius:var(--radius);padding:var(--s4);margin:var(--s4) 0 var(--s5)}
.starthere h2{margin-top:0}
.paths{display:grid;grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:var(--s3)}
.path{background:var(--white);border-radius:var(--radius);padding:var(--s3)}
.path h3{font-size:var(--fs-h3);margin:0 0 .4rem}
.path p{margin:0 0 .6rem;font-size:var(--fs-small)}
.path ul{list-style:none;padding:0;margin:0}
.path li{padding:.35rem 0;border-top:1px solid var(--line)}
.feature{border-left:4px solid var(--amber);padding:var(--s2) 0 var(--s2) var(--s3);margin:var(--s4) 0;max-width:46rem}
.feature h2{font-size:var(--fs-h3);margin:.3rem 0}
.feature p{margin:0}
.libsearch{margin:var(--s4) 0;max-width:40rem}
.libsearch label{display:block;font-weight:700;margin-bottom:.4rem}
.libsearch input{width:100%}
.results li{padding:var(--s2) 0;border-bottom:1px solid var(--line)}
.results a{font-weight:700}
.results .small{display:block}
.cards li{padding:var(--s3) 0;border-top:1px solid var(--line)}
.cards h3{font-size:var(--fs-h3);margin:0 0 .3rem}
.cards p{margin:.2rem 0}
.taglist{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;padding:0;margin:var(--s2) 0 var(--s3)}
.taglist a{display:inline-flex;align-items:center;min-height:2.25rem;padding:0 .8rem;border-radius:999px;background:var(--stone);text-decoration:none;color:var(--ink);font-size:var(--fs-small)}
.taglist a:hover,.taglist a:focus-visible{background:var(--butter)}
.furtherhelp,.sources,.related{margin:var(--s5) 0 var(--s3);padding-top:var(--s3);border-top:1px solid var(--line)}
.furtherhelp li{padding:.5rem 0}
.sources ol{padding-left:1.25rem}
.sources li{font-size:var(--fs-small);margin:.3rem 0}
.disclaimer{background:var(--stone);border-radius:var(--radius);padding:var(--s3)}
.libnote{max-width:46rem;color:var(--ink-soft)}
.libpost .byline{margin-bottom:var(--s2)}
.libsections{margin-top:var(--s5)}
@media print{.crumbs,.newsletter,.related,.taglist,.site nav,footer nav,.libsearch{display:none}a[href^="http"]::after{content:" (" attr(href) ")";font-size:.8em;word-break:break-all}}
.printbtn{margin:var(--s3) 0}
@media print{.printbtn,.furtherhelp{display:none}.libpost li{break-inside:avoid}.libpost h2{break-after:avoid}body{font-size:11pt}}
.cltools{background:var(--stone);border-radius:var(--radius);padding:var(--s3);margin:var(--s4) 0}
.cltools label{display:block;font-weight:700;margin-bottom:.4rem}
.cltools select{min-height:2.75rem;font:inherit;padding:0 .6rem;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--white);max-width:100%}
.checklist{list-style:none;padding:0}
.checklist li{display:grid;grid-template-columns:auto 1fr;gap:.25rem .75rem;align-items:start;padding:var(--s2) 0;border-top:1px solid var(--line)}
.checklist input{width:1.4rem;height:1.4rem;margin-top:.2rem;accent-color:var(--amber-deep)}
.checklist label{display:flex;flex-direction:column;gap:.2rem;font-weight:400}
.checklist li>a{grid-column:2;font-size:var(--fs-small)}
.checklist input:checked+label strong{text-decoration:line-through;text-decoration-color:var(--ink-soft)}
@media print{.cltools button,.cltools .small{display:none}.checklist li>a::after{content:" (" attr(href) ")"}}
.libwide section:not(.starthere):not(.newsletter),.prose section:not(.newsletter){padding:var(--s3) 0 0}
/* v2 (23 Oct 2026): photo-led, calm, sentence case */
.band.tight{padding:var(--s4) 0}
.pcards.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:72rem){.pcards.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:38rem){.pcards.four{grid-template-columns:1fr}}
.phero .choosehead{font-size:1.375rem;margin:var(--s4) 0 var(--s2)}
.phero.home .choices{grid-template-columns:1fr 1fr}
@media (max-width:30rem){.phero.home .choices{grid-template-columns:1fr}}
.phero.home .choices a{min-height:4rem;font-size:1.1875rem}
.phero .libsearch{margin:var(--s4) 0 0}
.libsearch input{min-height:3.5rem;font-size:var(--fs-body);border:2px solid var(--field);border-radius:var(--radius-pill);padding:0 1.25rem}
.results{max-width:40rem}
.results a{display:inline-flex;min-height:2.75rem;align-items:center}
.tagsend{margin-top:var(--s4)}
.tagsend .small{margin-bottom:.25rem;color:var(--ink-soft)}
.backlinks{display:flex;flex-wrap:wrap;gap:var(--s2);margin:var(--s4) 0 0;max-width:none}
.secmore{padding-top:var(--s3)}
.libnote{max-width:46rem;color:var(--ink-soft);margin:var(--s4) 0}
.libpost .lede{font-size:1.3125rem;line-height:1.55;margin:0 0 var(--s2)}
.libpost .byline{margin-bottom:0}
.libpost .related .pcards{grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr))}
.libpost .related .pcard .d{display:none}
.prose h1{font-size:clamp(2.25rem,5vw,3.25rem)!important;line-height:1.08}
.prose .crumbs ol{margin-top:0}
.furtherhelp li{padding:var(--s2) 0;border-top:1px solid var(--line)}
.furtherhelp li a{font-weight:700}
.sources ol{padding-left:1.4rem}
.sources li{margin:.5rem 0;word-break:break-word}
@media print{.inshort{border:1px solid #999}.tagsend,.backlinks,.related{display:none}details.more{border:0}details.more>.in{display:block}}
@media (max-width:38rem){
  .related .pcard a,.pcards.compact .pcard a{flex-direction:row;align-items:stretch}
  .related .pcard .photo{flex:none;width:7.5rem;aspect-ratio:auto;min-height:7.5rem}
  .related .pcard .body{padding:var(--s2)}
  .related .pcard .t{font-size:1.1875rem}
}
.crumbs li:last-child{color:var(--ink-soft)}
.taglist{padding-left:0!important}
.phero.home .choices{grid-template-columns:1fr}
.phero.home .choices a{min-height:3.75rem}
.narrowish{max-width:none}
@media (min-width:52rem){
  .newsletter{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:var(--s5);align-items:start;padding:var(--s5)!important}
  .newsletter>h2,.newsletter>p{grid-column:1}
  .newsletter>form,.newsletter>.nl-done{grid-column:2;grid-row:1/span 3}
}
.prose .newsletter{display:block!important;padding:var(--s4)!important}
.prose section.inshort{padding:var(--s3) var(--s4)!important}
@media (max-width:38rem){.prose section.inshort{padding:var(--s3)!important}}
.libwide .choices,.band .choices{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr))}
.artgrid{display:grid;grid-template-columns:minmax(0,46rem) minmax(0,1fr);gap:var(--s6);align-items:start}
.toc{position:sticky;top:var(--s4);margin-top:calc(var(--s5) + 4rem);padding:var(--s3);border-left:3px solid var(--amber);max-width:19rem}
.toc ol{list-style:none;padding:0;margin:0}
.toc li a{display:flex;align-items:center;min-height:2.75rem;padding:.2rem 0;color:var(--ink);text-decoration:none;line-height:1.3;font-size:var(--fs-small)}
.toc li a:hover{text-decoration:underline}
.toc .fh{font-weight:700;margin:0 0 .25rem}
@media (max-width:72rem){.artgrid{display:block}.toc{display:none}}
@media (min-width:44rem) and (max-width:60rem){.pcards:not(.four){grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3) var(--s2)}.pcard .body{padding:var(--s2)}.pcard .t{font-size:1.25rem}}
@media (max-width:38rem){.crumbs li[aria-current]{display:none}}
