/* Homepage layout. Scoped palette prevents saved legacy options from breaking contrast. */
body.home { background:#faf8f3; color:#25323a; }
body.home #navbar { background:#152b35; }
.bh-home { --maroon:#963b43; --maroon-dark:#152b35; --orange:#963b43; --terra:#963b43; --sand:#d5b779; --cream:#f2eee5; --white:#faf8f3; --brown:#182d36; --text:#25323a; --text-light:#58676c; padding-top:64px; font-size:16px; line-height:1.75; }
.bh-home .container { width:100%; max-width:1240px; padding-inline:clamp(20px,4vw,56px); margin-inline:auto; }
.bh-home section { padding:88px 0; scroll-margin-top:80px; }
.bh-home .section-header { margin-bottom:40px; }
.bh-home .section-title { font-size:clamp(30px,3.4vw,46px); line-height:1.16; letter-spacing:-.025em; }
.bh-home .section-subtitle { max-width:650px; line-height:1.75; }
.bh-home .section-label { color:#963b43; font-size:11px; letter-spacing:.19em; margin-bottom:16px; }
.bh-home .carpet-border { height:16px; overflow:hidden; opacity:.8; }
.bh-home .btn-primary,.bh-home .btn-outline,.bh-home .btn-ghost { display:inline-flex; align-items:center; justify-content:center; padding:14px 22px; min-height:48px; font-size:12px; line-height:1.4; letter-spacing:.05em; border-radius:4px; text-decoration:none; text-align:center; }
.bh-home .btn-primary { background:#963b43; color:#fff; border:1px solid #963b43; }
.bh-home .btn-outline { color:#182d36; border:1px solid #839096; background:transparent; }
.bh-home .btn-ghost { color:#faf8f3; border:1px solid #9faeae; }
.bh-home .bh-hero { height:155vh; min-height:780px; padding:0; position:relative; background:#faf8f3; }
.bh-hero-stage { position:sticky; top:64px; height:calc(100vh - 64px); min-height:640px; overflow:hidden; isolation:isolate; }
.bh-hero-scene,.bh-hero-wash { position:absolute; inset:0; overflow:hidden; }
.bh-hero-city,.bh-hero-park { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; will-change:transform,opacity; }
.bh-hero-city { transform:scale(1.04); }
.bh-hero-park { opacity:0; transform:scale(1.08); }
.bh-hero-wash { z-index:1; background:linear-gradient(90deg,#faf8f3 0%,#faf8f3 25%,rgba(250,248,243,.97) 37%,rgba(250,248,243,.75) 48%,rgba(250,248,243,.22) 63%,rgba(250,248,243,.03) 78%); }
.bh-hero-layer { position:absolute; z-index:2; pointer-events:none; will-change:transform,opacity; }
.bh-hero-picnic { width:min(70vw,1020px); right:-3%; bottom:-10%; opacity:0; filter:drop-shadow(0 12px 14px rgba(21,43,53,.18)); }
.bh-hero-grid { position:relative; z-index:3; height:100%; display:flex; align-items:center; }
.bh-hero-copy { max-width:570px; padding-bottom:4vh; }
.bh-hero-copy h1 { font-size:clamp(42px,4.8vw,68px); line-height:1.06; letter-spacing:-.045em; color:#182d36; margin:0 0 26px; }
.bh-hero-copy h1 em { color:#963b43; font-weight:400; }
.bh-hero-copy p { font-size:17px; line-height:1.8; max-width:440px; color:#58676c; }
.bh-scroll-link { display:inline-block; margin-top:32px; font-size:12px; letter-spacing:.08em; text-decoration:none; color:#58676c; border-bottom:1px solid rgba(88,103,108,.45); padding-bottom:4px; }
.bh-values-band { background:#eae5d8; border-block:1px solid #ded6c4; padding:22px 0; }
.bh-values-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; font-size:11px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; text-align:center; }
.bh-home .about-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:64px; }
.bh-home .about-img { overflow:hidden; border-radius:4px; }
.bh-home .about-img-inner { aspect-ratio:5/4; }
.bh-home .about-img-inner img { width:100%; height:100%; object-fit:cover; }
.bh-home .about-content p { margin-bottom:18px; }
.bh-home .about-values { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:24px; }
.bh-home .about-value { border-top:1px solid #d7cfbf; padding-top:14px; }
.bh-home .about-value h4 { font:700 13px/1.5 'Lato',sans-serif; color:#963b43; }
.bh-home .culture-grid,.bh-home .events-grid,.bh-home .news-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.bh-home .culture-card,.bh-home .event-card,.bh-home .news-card { background:#fff; border:1px solid #e2dfd7; border-radius:6px; overflow:hidden; box-shadow:none; min-width:0; }
.bh-home .culture-card-img { height:auto; aspect-ratio:4/3; }
.bh-home .culture-card-img-inner { display:none; }
.bh-home .culture-card-body,.bh-home .event-body,.bh-home .news-body { padding:26px; }
.bh-home .culture-card h3,.bh-home .event-card h3,.bh-home .news-card h3,.bh-home .resource-card h3 { font-size:23px; line-height:1.25; margin-bottom:14px; }
.bh-home .culture-card p,.bh-home .event-card p,.bh-home .news-card p { font-size:14px; line-height:1.8; color:#58676c; margin-bottom:20px; }
.bh-home .learn-more,.bh-home .read-more,.bh-home .resource-link { color:#963b43; font-size:12px; font-weight:700; text-decoration:none; }
.bh-home #history.history-story { background:#152b35 !important; }
.bh-home .history-story::before { display:none; }
.bh-home .timeline { position:relative; max-width:930px; margin:auto; padding:12px 0; }
.bh-home .timeline-line { position:absolute; top:0; bottom:0; width:2px; left:50%; background:#48616a; }
.bh-home .timeline-line-fill { width:100%; height:0; background:#d5b779; }
.bh-home .timeline-item { display:grid; grid-template-columns:1fr 110px 1fr; align-items:center; margin-bottom:36px; min-height:170px; position:relative; }
.bh-home .timeline-content { padding:28px; background:#203c47; border:1px solid #45606a; border-radius:4px; color:#faf8f3; }
.bh-home .timeline-content h3 { font-size:25px; line-height:1.2; margin:12px 0; color:#faf8f3; }
.bh-home .timeline-content p { color:#d0dadb; font-size:14px; line-height:1.8; }
.bh-home .tl-tag { color:#d5b779; font-size:10px; font-weight:700; letter-spacing:.18em; }
.bh-home .timeline-dot { position:relative; display:flex; justify-content:center; }
.bh-home .timeline-dot-inner { width:12px; height:12px; border-radius:50%; background:#d5b779; outline:8px solid #152b35; position:relative; }
.bh-home .timeline-year { display:none; }
.bh-home #resources { background:#eef0eb !important; }
.bh-home #resources .section-label { color:#963b43 !important; }
.bh-home #resources .section-title { color:#182d36 !important; }
.bh-home #resources .section-subtitle { color:#58676c !important; }
.bh-home .resources-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:24px; }
.bh-home .resource-card { background:#faf8f3; color:#182d36; border:1px solid #dce0d7; border-radius:4px; padding:32px; text-decoration:none; }
.bh-home .resource-icon { margin-bottom:22px; }
.bh-home .resource-card p { font-size:14px; color:#58676c; margin-bottom:22px; }
.bh-home .event-date-strip { background:#152b35; color:white; display:flex; align-items:baseline; gap:10px; padding:20px 26px; }
.bh-home .event-day { font-size:34px; font-weight:700; line-height:1; }
.bh-home .event-month { color:#d5b779; font-size:13px; }
.bh-home .event-loc { color:#58676c; font-size:12px; margin-bottom:12px; }
.bh-home .news-img { aspect-ratio:16/10; background:#eae5d8; overflow:hidden; }
.bh-home .news-img img,.bh-home .news-img-inner { width:100%; height:100%; object-fit:cover; }
.bh-home .news-tag { color:#963b43; text-transform:uppercase; font-size:10px; letter-spacing:.15em; margin-bottom:12px; }
.bh-home .cta-strip { background:#152b35 !important; }
.bh-home .cta-strip h2 { color:#faf8f3; }
@media(max-width:1100px) { body.home .nav-links { display:none; } body.home .hamburger { display:flex; } body.home .mobile-menu { display:block; } .bh-hero-grid { gap:30px; } }
@media(max-width:780px) {
 .bh-home section { padding:56px 0; }
 .bh-home .bh-hero { height:155svh; min-height:900px; }
 .bh-hero-stage { top:58px; height:calc(100svh - 58px); min-height:592px; }
 .bh-hero-grid,.bh-home .about-grid { grid-template-columns:1fr; gap:32px; }
 .bh-hero-copy { max-width:480px; align-self:center; padding-bottom:8vh; }
 .bh-hero-copy h1 { font-size:clamp(40px,8vw,60px); }
 .bh-hero-copy p { max-width:100%; }
 .bh-hero-wash { background:linear-gradient(90deg,#faf8f3 0%,rgba(250,248,243,.96) 46%,rgba(250,248,243,.36) 100%); }
 .bh-hero-picnic { width:110vw; bottom:-3%; right:-26%; }
 .bh-values-grid { grid-template-columns:1fr 1fr; font-size:10px; }
 .bh-home .culture-grid,.bh-home .events-grid,.bh-home .news-grid { grid-template-columns:1fr; }
 .bh-home .timeline-line { left:7px; }
 .bh-home .timeline-item { grid-template-columns:28px 1fr; gap:16px; margin-bottom:20px; }
 .bh-home .tl-empty { display:none; }
 .bh-home .timeline-dot { grid-column:1; grid-row:1; justify-content:flex-start; padding-left:2px; }
 .bh-home .timeline-content { grid-column:2; grid-row:1; padding:22px; }
 .bh-home .resources-grid { grid-template-columns:1fr; }
}
@media(prefers-reduced-motion:reduce) { .bh-home * { animation:none !important; transition:none !important; } .bh-home .bh-hero { height:auto; min-height:650px; } .bh-hero-stage { position:relative; top:0; } .bh-hero-city { opacity:0!important; } .bh-hero-park { opacity:1!important; transform:none!important; } .bh-hero-picnic { opacity:1!important; transform:none!important; } }
body.home footer { background:#10242c; color:#edf0eb; }
body.home footer h3,body.home footer h4 { color:#faf8f3; }
body.home footer a,body.home footer p { color:#c3cecc; }
body.home .nav-logo-icon { overflow:hidden; }
body.home .nav-logo-icon img { width:100%; height:100%; object-fit:contain; }
.bh-home .culture-card:focus-visible,.bh-home .resource-card:focus-visible { outline:3px solid #963b43; outline-offset:4px; }
