.library{max-width:1160px;margin:0 auto;padding:0 20px 70px}.library-intro{padding:62px 0 32px}.library-intro h1{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.12;margin:13px 0 18px;font-family:Georgia,serif}.library-intro>p{max-width:730px;color:#516374;font-size:1.1rem}.library-tools{margin-top:26px;max-width:540px}.library-tools label{display:block;font-size:.82rem;font-weight:800;letter-spacing:.03em;margin-bottom:7px}.library-tools input{font:inherit;width:100%;min-width:0;border:1px solid #b9c5cc;border-radius:14px;padding:14px;background:white}.library-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.library-card{background:white;border:1px solid #e4e1d8;border-radius:20px;overflow:hidden;box-shadow:0 8px 24px rgba(2,28,45,.06)}.library-card[hidden]{display:none}.library-image{display:block;aspect-ratio:16/9;overflow:hidden;background:#dfebe9}.library-image img{width:100%;height:100%;object-fit:cover;display:block}.library-card-body{padding:22px}.library-category{font-size:.74rem;font-weight:800;letter-spacing:.05em;color:#886513;text-transform:uppercase}.library-card h2{font-family:Georgia,serif;font-size:1.65rem;margin:12px 0 6px;line-height:1.15}.library-card h2 a{text-decoration:none;color:#0b233a}.library-card p{color:#53687a;margin:0 0 20px}.library-cta{display:inline-block;background:#082239;color:white;text-decoration:none;border-radius:14px;padding:12px 17px;font-weight:750;margin-right:9px;margin-bottom:8px}.library-cta.secondary{background:#e4edf1;color:#0b243c}.library-next{margin-top:36px;padding:28px;border-radius:20px;background:#e7eff3}.library-next h2{margin:0;font-family:Georgia,serif}.guide-directory-callout{max-width:930px;margin:auto;padding:18px 0 24px}.guide-directory-callout h2{font-size:clamp(1.8rem,4vw,3.1rem);font-family:Georgia,serif;margin:9px 0}.guide-directory-callout p{max-width:720px;color:#5c6b78;margin-bottom:20px}@media(max-width:650px){.library-intro{padding-top:36px}.library-grid{grid-template-columns:1fr;gap:16px}.library-card-body{padding:18px}.library-next{padding:20px}.library{padding-inline:16px}}

/* Editorial guide navigation: responsive and independent of catalog scripts */
.guide-topic-overview{padding:18px 20px;margin:22px 0 28px;border:1px solid #ded8c7;border-radius:18px;background:#fffdf8}
.guide-topic-overview h3{margin:0 0 6px;font-size:1.2rem}.guide-topic-overview p{margin:0 0 14px;line-height:1.6}
.guide-topic-links{display:flex;flex-wrap:wrap;gap:9px}.guide-topic-links a{display:inline-flex;align-items:center;padding:9px 12px;border:1px solid #bcb39b;border-radius:999px;color:#08223b;font-size:.9rem;font-weight:650;text-decoration:none;background:#fff}
.guide-topic-links a:hover{background:#f2ead9}.guide-topic-heading{font-size:clamp(1.25rem,3vw,1.65rem);line-height:1.3;margin:38px 0 14px;scroll-margin-top:110px;color:#08223b}
@media(max-width:600px){.guide-topic-overview{padding:16px}.guide-topic-links{display:grid;grid-template-columns:1fr 1fr}.guide-topic-links a{border-radius:12px;min-height:44px}.guide-topic-heading{margin-top:30px}}

/* V24: long-form editorial sections, independent of catalog and planner. */
.guide-depth-editorial{margin:30px 0 38px;max-width:920px}.guide-depth-lead{background:#f0e9d8;border-left:4px solid #ad882c;padding:18px 22px;border-radius:12px;margin-bottom:26px}.guide-depth-lead h2{margin:0 0 5px;font-size:clamp(1.45rem,3.3vw,2rem)}.guide-depth-lead p{margin:0;color:#445564}.guide-depth-block{margin:24px 0;padding:0 2px}.guide-depth-block h3{font-size:clamp(1.15rem,2.5vw,1.45rem);line-height:1.3;margin:0 0 10px;color:#08223b}.guide-depth-block p{font-size:1.02rem;line-height:1.8;margin:0 0 13px;max-width:78ch}.guide-depth-faq{margin:33px 0}.guide-depth-faq h3{font-size:1.4rem}.guide-faq-item{background:#fff;border:1px solid #dedbd2;border-radius:12px;margin:8px 0;padding:0 17px}.guide-faq-item summary{cursor:pointer;list-style:none;font-weight:700;padding:14px 0;line-height:1.45}.guide-faq-item summary::-webkit-details-marker{display:none}.guide-faq-item summary:after{content:' +';float:right;color:#a58328}.guide-faq-item[open] summary:after{content:' −'}.guide-faq-item p{margin:0 0 16px;color:#344858}.guide-depth-sources{border-top:1px solid #d4d0c6;padding-top:14px;font-size:.88rem}.guide-depth-sources h3{font-size:1rem;margin:0}.guide-depth-sources ul{margin:8px 0 0;padding-left:22px}.guide-depth-sources a{overflow-wrap:anywhere}@media(max-width:600px){.guide-depth-lead{padding:15px}.guide-depth-block p{font-size:1rem;line-height:1.75}}

/* V24: long-form editorial sections, independent of catalog and planner. */
.guide-depth-editorial{margin:30px 0 38px;max-width:920px}.guide-depth-lead{background:#f0e9d8;border-left:4px solid #ad882c;padding:18px 22px;border-radius:12px;margin-bottom:26px}.guide-depth-lead h2{margin:0 0 5px;font-size:clamp(1.45rem,3.3vw,2rem)}.guide-depth-lead p{margin:0;color:#445564}.guide-depth-block{margin:24px 0;padding:0 2px}.guide-depth-block h3{font-size:clamp(1.15rem,2.5vw,1.45rem);line-height:1.3;margin:0 0 10px;color:#08223b}.guide-depth-block p{font-size:1.02rem;line-height:1.8;margin:0 0 13px;max-width:78ch}.guide-depth-faq{margin:33px 0}.guide-depth-faq h3{font-size:1.4rem}.guide-faq-item{background:#fff;border:1px solid #dedbd2;border-radius:12px;margin:8px 0;padding:0 17px}.guide-faq-item summary{cursor:pointer;list-style:none;font-weight:700;padding:14px 0;line-height:1.45}.guide-faq-item summary::-webkit-details-marker{display:none}.guide-faq-item summary:after{content:' +';float:right;color:#a58328}.guide-faq-item[open] summary:after{content:' −'}.guide-faq-item p{margin:0 0 16px;color:#344858}.guide-depth-sources{border-top:1px solid #d4d0c6;padding-top:14px;font-size:.88rem}.guide-depth-sources h3{font-size:1rem;margin:0}.guide-depth-sources ul{margin:8px 0 0;padding-left:22px}.guide-depth-sources a{overflow-wrap:anywhere}@media(max-width:600px){.guide-depth-lead{padding:15px}.guide-depth-block p{font-size:1rem;line-height:1.75}}

/* V24: long-form editorial sections, independent of catalog and planner. */
.guide-depth-editorial{margin:30px 0 38px;max-width:920px}.guide-depth-lead{background:#f0e9d8;border-left:4px solid #ad882c;padding:18px 22px;border-radius:12px;margin-bottom:26px}.guide-depth-lead h2{margin:0 0 5px;font-size:clamp(1.45rem,3.3vw,2rem)}.guide-depth-lead p{margin:0;color:#445564}.guide-depth-block{margin:24px 0;padding:0 2px}.guide-depth-block h3{font-size:clamp(1.15rem,2.5vw,1.45rem);line-height:1.3;margin:0 0 10px;color:#08223b}.guide-depth-block p{font-size:1.02rem;line-height:1.8;margin:0 0 13px;max-width:78ch}.guide-depth-faq{margin:33px 0}.guide-depth-faq h3{font-size:1.4rem}.guide-faq-item{background:#fff;border:1px solid #dedbd2;border-radius:12px;margin:8px 0;padding:0 17px}.guide-faq-item summary{cursor:pointer;list-style:none;font-weight:700;padding:14px 0;line-height:1.45}.guide-faq-item summary::-webkit-details-marker{display:none}.guide-faq-item summary:after{content:' +';float:right;color:#a58328}.guide-faq-item[open] summary:after{content:' −'}.guide-faq-item p{margin:0 0 16px;color:#344858}.guide-depth-sources{border-top:1px solid #d4d0c6;padding-top:14px;font-size:.88rem}.guide-depth-sources h3{font-size:1rem;margin:0}.guide-depth-sources ul{margin:8px 0 0;padding-left:22px}.guide-depth-sources a{overflow-wrap:anywhere}@media(max-width:600px){.guide-depth-lead{padding:15px}.guide-depth-block p{font-size:1rem;line-height:1.75}}
/* V24 FAQs remain visible HTML, not additional master-place accordions. */
.guide-faq-item{padding:13px 17px}.guide-faq-item h4{font-size:1rem;line-height:1.45;margin:0 0 5px;color:#08223b}.guide-faq-item p{margin:0 0 4px;line-height:1.65}.guide-faq-item h4:after{content:none}

/* v28: editorial hub enhancements; isolated to guide library */
.library-subheading{font-size:clamp(1.3rem,2.5vw,1.8rem);margin:0 0 1.2rem}.library-research-note{max-width:1100px;margin:0 auto 2rem;padding:1.2rem clamp(18px,4vw,36px);border:1px solid #ddd7c6;border-radius:18px;background:#fffdf8}.library-research-note h2{font-size:1.3rem;margin:.2rem 0 .5rem}.library-research-note p{line-height:1.7;margin:0}

/* v43 candidate guides (no images until image rights confirmed) */
.pp-candidate-visual{display:flex;align-items:flex-end;min-height:155px;padding:18px 20px;background:linear-gradient(125deg,#0b2d44,#317476);font-size:.75rem;font-weight:800;letter-spacing:.12em;color:#f0e3c3;text-decoration:none}.pp-candidate-card{min-width:0}.pp-candidate-card h2{overflow-wrap:anywhere}.pp-candidate-visual:focus-visible{outline:3px solid #d2a957;outline-offset:-4px}
