/* Compact headers and distinct first-screen layouts for public sections. */
.topline{padding:6px 0;letter-spacing:.04em}.header-inner{min-height:82px;padding-block:12px;gap:20px}.brand img{width:50px;height:50px}.brand strong{font-size:1.5625rem}.desktop-nav{gap:23px}.desktop-nav .button.compact{min-height:42px;padding:9px 20px}.page-intro{padding-block:32px 24px}.page-intro .eyebrow{margin-bottom:12px}.page-intro h1{font-size:clamp(2.25rem,3.4vw,3.25rem);line-height:1.1;max-width:920px}.page-intro>p{margin-top:14px;font-size:1rem}.page-intro .actions{margin-top:20px}.section{padding-block:64px}.hero{padding-block:42px 58px}.hero-image{height:500px}.split-intro{display:grid;grid-template-columns:1.25fr 1fr;gap:40px;align-items:center}.split-intro>div{min-width:0}.intro-summary{border-left:1px solid var(--line);padding-left:28px}.intro-summary p{font-size:1rem;line-height:1.7}.intro-summary .eyebrow{margin-bottom:10px}.catalog-section{padding-bottom:64px}.filter-panel{margin-top:10px;padding:12px 0}.results-bar{padding:16px 0}.resource-grid{gap:34px 28px}.catalog-section .resource-card .editorial-cover{min-height:210px}.catalog-section .resource-meta{margin-top:16px}.catalog-section .resource-card h3{font-size:1.8125rem}.page-intro .agenda-switch{margin:0;justify-content:flex-end;gap:8px}.agenda-switch a{font-size:.875rem;padding:10px 16px;border:1px solid var(--line);background:#edf1ee;min-height:44px;display:inline-flex;align-items:center}.agenda-switch [aria-current=page]{background:var(--navy);color:var(--cream);border-color:var(--navy)}.agenda-switch a:hover{border-color:var(--blue)}.event-list{padding-top:8px;padding-bottom:64px}.agenda-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:18px}.agenda-heading h2{font-size:1.75rem}.agenda-heading p{font-size:.8125rem}.event-list .schedule-row{padding-block:22px}.event-list .schedule-row h3{font-size:1.9375rem}.visit-opening{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;padding-block:32px 28px}.visit-opening>div{min-width:0}.visit-opening .eyebrow{margin-bottom:12px}.visit-opening h1{font-size:clamp(2.5rem,3.8vw,3.75rem);line-height:1.05}.visit-opening>div>p{font-size:1rem;margin-top:16px}.visit-hours{background:#e8eeeb;padding:22px 28px;border-top:2px solid var(--blue)}.visit-hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.visit-hours .visit-time{border-bottom:0;padding:0}.visit-hours .visit-time h2{font:1.5rem/1.2 var(--serif);margin:5px 0 9px}.visit-hours .visit-time strong{font-size:1.25rem}.visit-hours>.small{margin-top:12px;font-size:.75rem}.visit-location{display:grid;grid-template-columns:1.4fr 1fr;gap:38px;padding-block:8px 56px;align-items:start}.visit-location>div{min-width:0}.visit-location .map-panel{margin-top:0}.visit-location .map-panel h2{font-size:1.75rem;padding:16px 20px}.visit-location .map-panel iframe{height:330px}.visit-location .map-panel>p{font-size:.75rem;padding:10px 16px}.visit-location .visit-info{padding-top:8px}.visit-location .visit-info h2{font-size:2rem;margin-bottom:12px}.visit-location .visit-info .eyebrow{margin-bottom:10px}.visit-location .visit-info>p{font-size:.9375rem}.visit-location .visit-info address{font-size:.9375rem;margin:12px 0 18px;line-height:1.7}.first-visit{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.first-visit h3{font-size:1.5rem}.first-visit p{font-size:.9375rem;line-height:1.7;margin-top:12px}.first-visit .actions{margin-top:16px;gap:18px}.visit-arrival{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;align-items:center;padding-block:36px;border-top:1px solid var(--line)}.visit-arrival h2{font-size:2rem}.visit-arrival p{font-size:1rem;margin-top:16px}.visit-arrival img{width:100%;height:230px;object-fit:cover;object-position:center 45%}.about-opening{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center;padding-block:32px}.about-opening>div{min-width:0}.about-opening .eyebrow{margin-bottom:12px}.about-opening h1{font-size:clamp(2.5rem,3.6vw,3.5rem);line-height:1.06;max-width:620px}.about-opening .rich-text{font-size:1rem;line-height:1.8;margin-top:18px;max-width:620px}.about-opening figure{height:280px}.about-opening img{height:100%;width:100%;object-fit:cover;object-position:center 45%;border-radius:72px 0 0 0}.about-opening .about-nav{margin-top:20px;gap:20px}.belief-layout{padding-block:36px 54px;gap:48px;grid-template-columns:1fr 1.5fr}.belief-intro h2{font-size:2.25rem}.belief-intro .eyebrow{margin-bottom:12px}.belief-intro p{margin-top:16px;font-size:.9375rem}.belief-intro .source-note{font-size:.8125rem;margin-bottom:18px}.belief-list details{padding-block:17px}.belief-list summary{font-size:1.625rem}.belief-list .rich-text{font-size:.9375rem;line-height:1.8;margin-top:14px}.consult-section{padding-top:8px;padding-bottom:58px}.consult-grid{gap:22px}.consult-card{position:relative;border:1px solid var(--line);padding:25px 28px;background:#edf1ee;transition:background .2s,border-color .2s}.consult-card:hover{background:#e4ece7;border-color:#879fa2}.consult-card .eyebrow{padding-right:32px;font-size:.6875rem;margin-bottom:12px}.consult-card h2{font-size:1.9375rem;max-width:490px}.consult-card p{font-size:.9375rem;margin:14px 0 18px;max-width:530px}.consult-number{position:absolute;right:24px;top:22px;font:1.3125rem var(--serif);color:#7a9598}.consult-note{margin-top:24px;padding-top:20px;font-size:.8125rem}.resource-detail{padding-top:28px}.detail-heading{margin-block:24px 30px}.detail-heading h1{font-size:clamp(2.25rem,3.8vw,3.5rem)}
@media(max-width:1100px){.desktop-nav{gap:17px}.brand strong{font-size:1.4375rem}.split-intro{gap:28px}.visit-opening{gap:30px}.about-opening{gap:32px}}
@media(max-width:850px){.header-inner{min-height:76px}.visit-opening,.about-opening{gap:28px}.visit-hours{padding:20px}.visit-location{gap:28px}.about-opening figure{height:260px}.visit-hours-grid{gap:16px}.visit-hours .visit-time h2{font-size:1.375rem}.split-intro{grid-template-columns:1fr}.intro-summary{border-left:0;padding-left:0}.page-intro .agenda-switch{justify-content:flex-start}.agenda-heading{margin-top:6px}.belief-layout{gap:28px}.consult-card{padding:22px}}
@media(max-width:700px){.topline{padding-block:5px}.header-inner{min-height:72px;padding-block:10px;gap:12px}.brand img{width:44px;height:44px}.brand strong{font-size:1.4375rem}.page-intro{padding-block:24px 20px}.page-intro h1{font-size:2.125rem}.page-intro>p{margin-top:12px}.split-intro{gap:14px}.intro-summary p{font-size:.9375rem}.section{padding-block:42px}.hero{padding-block:30px 42px}.hero-image{height:340px}.visit-opening{grid-template-columns:1fr;padding-block:24px 22px;gap:20px}.visit-opening h1{font-size:2.625rem}.visit-opening>div>p{margin-top:12px}.visit-hours{padding:18px 20px}.visit-hours .eyebrow{font-size:.6875rem}.visit-hours .visit-time h2{font-size:1.375rem}.visit-hours .visit-time strong{font-size:1.125rem}.visit-location{grid-template-columns:1fr;gap:24px;padding-block:0 36px}.visit-location .map-panel iframe{height:270px}.visit-location .visit-info h2{font-size:1.875rem}.visit-arrival{grid-template-columns:1fr;gap:22px;padding-block:28px}.visit-arrival img{height:220px}.about-opening{grid-template-columns:1fr;padding-block:24px;gap:24px}.about-opening h1{font-size:2.5rem}.about-opening .rich-text{font-size:.9375rem;margin-top:14px}.about-opening .about-nav{gap:16px;margin-top:18px}.about-opening figure{height:210px}.about-opening img{border-radius:48px 0 0 0}.belief-layout{padding-block:28px 40px;grid-template-columns:1fr;gap:24px}.belief-intro h2{font-size:2rem}.agenda-switch{gap:8px;flex-wrap:wrap}.agenda-switch a{font-size:.8125rem;padding-inline:13px}.agenda-heading{gap:8px;margin-bottom:14px}.agenda-heading h2{font-size:1.5rem}.event-list{padding-top:4px;padding-bottom:40px}.event-list .schedule-row{padding-block:18px}.event-list .schedule-row h3{font-size:1.625rem}.consult-section{padding-top:0}.consult-grid{gap:16px}.consult-card{padding:22px}.consult-card h2{font-size:1.75rem}.catalog-section .search-bar{gap:8px}.catalog-section .search-bar .button{width:auto;min-width:76px;padding-inline:14px;min-height:44px}.catalog-section .search-bar input{flex-basis:150px;font-size:.875rem}.filter-panel summary{font-size:.875rem}.results-bar{gap:10px;padding-block:14px}.results-bar>span:first-child{width:auto}.results-bar select{max-width:150px}.catalog-section .resource-card .editorial-cover{min-height:220px}.detail-heading h1{font-size:2.25rem}.detail-heading .detail-passage{margin-top:16px}.resource-detail{padding-top:22px}}
@media(max-width:360px){.brand strong{font-size:1.25rem}.brand img{width:40px;height:40px}.topline .wrap{flex-direction:row;gap:10px;font-size:.5625rem}.topline .wrap>span:last-child{text-align:right;max-width:190px;line-height:1.4}.page-intro h1{font-size:1.9375rem}.hero-image{height:290px}.visit-opening h1,.about-opening h1{font-size:2.25rem}.search-bar svg{margin-left:4px;width:17px}.catalog-section .search-bar input{flex-basis:100px}.catalog-section .search-bar .button{min-width:64px;padding-inline:9px}.results-bar label{width:auto;justify-content:initial}.results-bar>span:first-child{width:100%}.consult-card{padding:20px}.consult-card h2{font-size:1.625rem}}

.visit-opening h1 em{color:var(--blue);font-weight:400}@media(max-width:700px){.visit-hours .visit-time h2{font-size:1.1875rem}}
.recommendation-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.recommendation-heading strong{font-size:1rem}.remove-recommendation{min-height:44px;color:#8b392e}.recommendation-row{margin-block:18px}.desktop-nav{gap:20px;flex-wrap:nowrap;white-space:nowrap}@media(min-width:851px) and (max-width:1100px){.desktop-nav{gap:12px;font-size:.75rem}.header-inner{gap:16px}.desktop-nav .button.compact{padding-inline:14px}.header-inner .brand{gap:10px}.header-inner .brand strong{font-size:1.3125rem}}
@media(max-width:1000px){.desktop-nav{display:none}.mobile-menu{display:block}.header-inner .brand{max-width:calc(100% - 80px)}}
.admin-navigation{position:sticky;top:0;z-index:4;display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 30px;padding:12px;background:var(--cream);border:1px solid var(--line);box-shadow:0 4px 14px #123b490b}.admin-navigation a{font-size:.8125rem;padding:8px 12px;min-height:44px;display:flex;align-items:center;border:1px solid transparent}.admin-navigation a:hover{background:#e8eeeb}.admin-navigation [aria-current]{background:var(--navy);color:white}.admin-section fieldset[id],.admin-block[id]{scroll-margin-top:140px}.recommendation-image-editor{border-top:1px solid var(--line);padding-top:16px;display:grid;gap:12px}.recommendation-image-editor img{max-width:100%;width:320px;height:160px;object-fit:contain;background:#fff;border:1px solid var(--line)}[hidden]{display:none!important}.recommendation-image-editor button{justify-self:start}.recommendation-image-editor summary{font-size:.8125rem;cursor:pointer}.consult-card-image{margin:-25px -28px 24px;background:#fff;border-bottom:1px solid var(--line)}.consult-card-image img{width:100%;height:200px;object-fit:contain;padding:16px}.consult-card.has-image .consult-number{top:228px}.consult-card{overflow-wrap:anywhere}.admin-navigation~.eyebrow{margin-top:8px}@media(max-width:850px){.consult-card-image{margin:-22px -22px 22px}.consult-card.has-image .consult-number{top:225px}}@media(max-width:600px){.admin-navigation{flex-wrap:nowrap;overflow-x:auto;gap:4px;padding:6px}.admin-navigation a{flex-shrink:0;font-size:.75rem}.admin-section fieldset[id],.admin-block[id]{scroll-margin-top:78px}.consult-card-image img{height:160px}.consult-card.has-image .consult-number{top:184px}}@media(max-width:360px){.consult-card-image{margin:-20px -20px 20px}.consult-card.has-image .consult-number{top:180px}}
/* Photo navigation stays on the image edges, without a numbered control box. */
.hero-carousel .carousel-controls{inset:0;display:block;background:transparent;padding:0;pointer-events:none}
.hero-carousel .carousel-controls button{position:absolute;pointer-events:auto;border:1px solid #ffffff80;background:#103e4fcc;color:white;box-shadow:0 2px 10px #0003;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}
.hero-carousel .carousel-controls button:hover{background:var(--navy)}
.hero-carousel [data-prev],.hero-carousel [data-next]{top:50%;transform:translateY(-50%);border-radius:50%;font:2.5rem/1 Georgia,serif;padding:0 0 4px}
.hero-carousel [data-prev]{left:16px}.hero-carousel [data-next]{right:16px}
.hero-carousel .carousel-controls [data-pause]{right:16px;bottom:16px;border-radius:50%;font-size:1rem}
@media(max-width:700px){.hero-carousel [data-prev]{left:10px}.hero-carousel [data-next],.hero-carousel .carousel-controls [data-pause]{right:10px}}
