/* Shared visitor experience. Retains the selected homepage composition. */
:root{--shrine-ink:#173f48;--shrine-sea:#f0f7f7;--shrine-line:#d8e3e4;--shrine-muted:#536e73;--shrine-accent:#b8644c}
body{color:#24373a;background:#fff}body:not(.home){background:#f9fbfa}
.skip-link{position:fixed;left:24px;top:-120px;z-index:1000;padding:12px 24px;background:#fff;color:var(--shrine-ink);border:2px solid var(--shrine-ink)}.skip-link:focus{top:12px}
#content:focus{outline:none}
a:focus-visible,button:focus-visible{outline:2px solid #a34b36;outline-offset:4px}
.nav a[aria-current],.footer nav a[aria-current]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
body:not(.home) .nav{font-size:16px;gap:20px}.nav a,.footer nav a{display:inline-flex;align-items:center;min-height:44px}.header-button,.footer-button,.menu-toggle{min-height:44px;display:inline-flex;align-items:center;justify-content:center;font-size:14px}.menu-toggle{display:none}
.breadcrumbs{width:min(1200px,calc(100% - 96px));margin:24px auto 0;color:var(--shrine-muted);font-size:14px;line-height:1.8}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:0 12px;margin:0;padding:0}.breadcrumbs li+li::before{content:'／';margin-right:12px;color:#809497}.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.publication-wrap{width:min(1200px,calc(100% - 96px));margin:0 auto;padding:48px 0 80px}.publication-detail{min-height:0}.page-heading{margin:0 0 40px}.publication-wrap h1{font-size:clamp(36px,3.8vw,55px);font-weight:500;line-height:1.5;margin:0 0 24px}.publication-wrap .section-label{font-size:14px;color:var(--shrine-muted);margin-bottom:16px}.publication-detail>.section-label{margin-bottom:16px}.publication-detail>time{display:block;font-size:14px;color:var(--shrine-muted);margin-bottom:16px}
.entry-content,.page-intro,.schedule-note{font-size:18px;line-height:1.9;max-width:40em;color:#24373a}.entry-content{margin-inline:auto}.entry-content p{font-size:inherit;line-height:inherit;margin:0 0 24px}.entry-content h2,.content-page .entry-content h2{font-size:30px;line-height:1.5;font-weight:500;margin:80px 0 24px;padding-top:24px;border-top:1px solid var(--shrine-line);scroll-margin-top:32px}.entry-content a{text-decoration:underline;text-underline-offset:4px}.page-intro{margin:0}.entry-content>p:first-child{margin-top:0}
.story-photo{width:100%;margin:40px auto}.story-photo img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.story-photo figcaption{font-size:14px;line-height:1.8;color:var(--shrine-muted);padding-top:12px}.page-lead-photo{margin:0 auto 48px}.page-lead-photo img{aspect-ratio:16/9;max-height:540px;object-position:center 45%}.story-photo--portrait{max-width:480px}.story-photo--portrait img{aspect-ratio:auto;max-height:none;object-fit:contain}.grounds-story{max-width:1000px}.grounds-story .entry-content{max-width:40em}.grounds-hero .grounds-hero-content{width:min(1200px,calc(100% - 96px))}.grounds-hero{margin-top:16px}.grounds-hero p{font-size:18px;line-height:1.9}.grounds-hero-shade{background:linear-gradient(90deg,rgba(23,63,72,.68),rgba(23,63,72,.12))}
.text-link,.home .text-link{min-height:44px;padding-block:10px;display:inline-flex;align-items:center;gap:20px;font-size:16px;line-height:1.6;color:var(--shrine-ink);border-color:#9bb6bb}.text-link::after{content:'\f344' / '';font-family:dashicons;color:var(--shrine-accent);flex:none}.text-link:hover{color:#914a37}.publication-back{margin-top:32px}
.related-pages{margin-top:64px;padding-top:32px;border-top:1px solid var(--shrine-line)}.related-pages h2{font-size:22px;font-weight:500;margin:0 0 24px;line-height:1.5}.related-pages>div{display:grid;grid-template-columns:1fr 1fr;gap:24px}.related-pages .text-link{justify-content:space-between;padding:16px 0}
.page-event-list{margin-top:80px;padding-top:32px;border-top:1px solid var(--shrine-line)}.page-event-list h2{font-size:30px;font-weight:500;margin:0 0 24px}.schedule-note{margin-bottom:32px}.event-row{display:grid;grid-template-columns:120px 190px minmax(0,1fr);gap:24px;align-items:start;padding:24px 0;border-bottom:1px solid var(--shrine-line);font-size:18px;line-height:1.9}.event-row h3{font-size:18px;line-height:1.9;margin:0;font-weight:500}.event-row p{font-size:16px;line-height:1.9;margin:0}.event-row .event-period{font-size:16px;color:var(--shrine-muted)}.event-row p a{display:flex;width:fit-content;align-items:center;min-height:44px;color:var(--shrine-ink);text-decoration:underline;text-underline-offset:4px;margin-top:8px}
.publication-list{margin-top:32px}.publication-list>a{padding:28px 0}.publication-list time{font-size:14px}.publication-list h2{font-size:26px;font-weight:500;line-height:1.5;margin:12px 0}.publication-list p{font-size:18px;line-height:1.9;margin:0;max-width:40em}.publication-list>a:focus-visible{outline-offset:6px}
.shrine-guide{min-width:0}.shrine-guide-link{display:flex;flex-direction:column;height:100%;color:inherit}.shrine-guide-link .shrine-guide-copy{flex:1}.shrine-guide-photo img{height:auto;aspect-ratio:3/2}.shrine-guide-link:hover .text-link{color:#914a37}.shrine-guide-link .text-link{margin-top:auto}.home .shrine-guide p{font-size:18px;line-height:1.9}.home .intro-layout p,.home .shrine-history-copy p{font-size:18px;line-height:1.9}
.access-section{padding:0;margin-top:40px;border:0;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:48px;align-items:start}.access-copy>p{font-size:18px;line-height:1.9;margin:0 0 24px}.access-list div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:16px;margin-bottom:16px}.access-list dt,.access-list dd{font-size:16px;line-height:1.9}.access-list dd{margin:0;color:#24373a;overflow-wrap:anywhere}.address-number{white-space:nowrap;overflow-wrap:normal}.map{width:100%;height:360px;border:1px solid var(--shrine-line)}.map-external{margin:16px 24px 0 0}.shrine-address p{overflow-wrap:anywhere}.shrine-address .text-link{margin-bottom:0}.home .shrine-address p{font-size:18px}
.footer,.home .footer{background:var(--shrine-ink);color:#fff;padding:40px max(24px,calc((100vw - 1360px)/2));gap:24px;min-height:0}.footer nav,.home .footer nav{font-size:16px;gap:8px 20px;flex-wrap:wrap}.footer small,.home .footer small{font-size:14px;color:#d3e1e3}.footer-brand,.home .footer-brand{font-size:24px}.footer-brand p{font-size:14px}.footer-button,.home .footer-button{font-size:16px}.footer a:focus-visible{outline-color:#fff}
@media(min-width:801px){.home .nav a{min-height:44px}.home .nav{font-size:max(16px,1.22vw)}body:not(.home) .site-header{grid-template-columns:auto 1fr;gap:20px;padding-inline:32px}body:not(.home) .header-button{display:none}}
@media(min-width:801px) and (max-width:1100px){body:not(.home) .nav{font-size:14px;gap:12px}.footer{grid-template-columns:1fr auto}.footer nav{grid-column:1/-1;order:2}}
@media(max-width:800px){.menu-toggle{display:inline-flex}.nav a{min-height:48px;font-size:16px}.breadcrumbs{width:calc(100% - 48px);margin-top:16px}.publication-wrap{width:calc(100% - 48px);padding:32px 0 56px}.publication-wrap h1{font-size:34px;margin-bottom:24px}.page-heading{margin-bottom:32px}.entry-content,.page-intro,.schedule-note{font-size:16px;line-height:1.9}.entry-content h2,.content-page .entry-content h2{font-size:27px;margin-top:56px;padding-top:24px}.page-lead-photo{margin-bottom:32px}.page-lead-photo img{aspect-ratio:3/2}.story-photo{margin-block:32px}.grounds-hero .grounds-hero-content{width:calc(100% - 48px)}.grounds-hero p{font-size:16px}.grounds-hero h1{font-size:36px}.related-pages{margin-top:48px}.related-pages>div{grid-template-columns:1fr;gap:8px}.related-pages h2{font-size:22px}.page-event-list{margin-top:56px}.page-event-list h2{font-size:27px}.event-row{grid-template-columns:90px minmax(0,1fr);gap:8px 16px}.event-row p{grid-column:2}.event-row h3,.event-row p,.event-row .event-period{font-size:16px}.publication-list h2{font-size:24px}.publication-list p{font-size:16px}.access-section{grid-template-columns:1fr;gap:32px;padding:0;margin-top:32px}.access-copy>p{font-size:16px}.access-list div{grid-template-columns:64px minmax(0,1fr);gap:12px}.map{height:300px;min-height:0}.home .intro-layout p,.home .shrine-history-copy p,.home .shrine-guide p{font-size:16px;line-height:1.9}.home .footer,.footer{display:flex;flex-direction:column;align-items:stretch;padding:32px 24px;gap:24px}.footer nav,.home .footer nav{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;font-size:16px}.footer nav a{min-height:44px}.footer small{align-self:flex-start}.home .footer-brand,.footer-brand{font-size:24px}.home .shrine-address p{font-size:16px}}

/* Keep the compact mobile header; period labels must remain readable. */
@media(max-width:800px){.site-header .header-button{display:none}.site-header .menu-toggle{justify-self:end;width:auto}.event-row .event-period{white-space:nowrap;font-size:14px}}
.grounds-hero p{max-width:40em}
