/* Landscape homepage and shared editorial styling. */
:root { --navy:#172c30; --navy-deep:#152627; --ink:#253331; --muted:#67736f; --border:#dde1dc; --border-strong:#b9c3bc; --wash:#f6f7f4; }
html { scroll-padding-top:24px; }
.site-header { height:106px; border-color:#e6e7e1; background:var(--wash); }
.header-inner,.page-shell,.footer-inner,.landscape-inner { width:calc(100% - 112px); max-width:1280px; margin-inline:auto; }
.header-inner { gap:32px; }
.brand-name { font-size:44px; letter-spacing:.01em; }
.brand-name.brand-wordmark { display:block; width:7.20em; height:auto; transform:none; }
.brand { color:#333333; }
.header-inner nav { gap:28px; }
.header-inner nav a { font-size:10px; letter-spacing:1.45px; font-weight:500; }
.source-tag { font-size:9px; letter-spacing:.09em; color:#7b837d; }
.source-tag span { background:#8a988c; width:4px; height:4px; }
.nav-active:after { height:1px; background:#172c30; bottom:24px; }

.landscape { position:relative; isolation:isolate; background:#fff; color:#fff; touch-action:pan-y pinch-zoom; }
.landscape-stage { position:relative; height:520px; overflow:hidden; background:#202d27 url('/assets/shore.f1d637e5f35f.webp') center 52% / cover; }
.landscape-slide { position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .85s ease,visibility .85s; pointer-events:none; }
.landscape-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; z-index:1; }
.landscape-photo,.landscape-shade { position:absolute; inset:0; width:100%; height:100%; }
.landscape-photo { object-fit:cover; object-position:50% 51%; }
.landscape-shade { background:linear-gradient(90deg,rgba(10,22,19,.42),rgba(12,22,19,.16) 48%,transparent 80%),linear-gradient(0deg,rgba(10,22,19,.6),transparent 30%); }
.landscape-inner { position:relative; height:100%; display:flex; align-items:flex-start; padding:86px 0 74px; z-index:1; }
.landscape-eyebrow { display:flex; align-items:center; gap:15px; font-family:'Montserrat',var(--font-body); text-transform:uppercase; letter-spacing:.19em; font-size:10px; line-height:1.6; font-weight:500; color:#eeeee3; margin:0 0 24px; }
.landscape-eyebrow>span { width:29px; height:1px; background:#d7d7bc; flex-shrink:0; }
.landscape button:focus-visible,.landscape a:focus-visible { outline-color:#fff; outline-offset:3px; }
.slide-perspective .landscape-photo { object-position:50% 63%; }
.slide-perspective .landscape-shade { background:linear-gradient(90deg,rgba(9,25,24,.72),rgba(9,25,24,.3) 65%,rgba(9,25,24,.08)),linear-gradient(0deg,rgba(9,25,24,.45),transparent 35%); }
.principle-copy { max-width:900px; }
.principle-title { margin:0; color:#fff; font-family:var(--font-brand); font-size:clamp(44px,4.3vw,62px); font-weight:400; line-height:1.13; letter-spacing:-.012em; text-wrap:balance; }
.principle-title>span { display:block; }
.principle-description { max-width:610px; margin-top:24px; color:#eef0e9; font-size:17px; font-weight:400; line-height:1.65; }
.slide-search .landscape-photo { object-position:50% 46%; }
.slide-search .landscape-shade { background:linear-gradient(90deg,rgba(9,28,29,.65),rgba(9,28,29,.3) 58%,rgba(9,28,29,.05)),linear-gradient(0deg,rgba(9,28,29,.62),transparent 30%); }
.quote-copy { max-width:845px; }
.quote-copy .landscape-eyebrow { margin-bottom:28px; }
.quote-copy blockquote { margin:0; }
.quote-copy blockquote>p { font-family:var(--font-brand); font-size:clamp(34px,3.4vw,46px); line-height:1.24; font-weight:400; letter-spacing:0; }
.quote-line { display:block; }
.quote-copy blockquote footer { margin-top:26px; color:#f5f5ee; font-size:16px; font-weight:500; letter-spacing:.035em; line-height:1.6; }
.landscape-bottom { min-height:42px; width:100%; display:flex; justify-content:center; align-items:center; background:#fff; }
.landscape-controls { display:flex; gap:6px; align-items:center; }
.landscape-controls button { position:relative; border:0; border-radius:50%; background:transparent; width:30px; height:40px; padding:0; color:#111; display:grid; place-items:center; }
.landscape-controls button:focus-visible { outline-color:#111; outline-offset:0; }
.landscape-controls [data-carousel-toggle]::before { content:''; position:absolute; box-sizing:border-box; width:22px; height:22px; border:1.25px solid currentColor; border-radius:50%; }
.landscape-controls [data-carousel-toggle]:hover::before { background:#f1f1f1; }
.landscape-controls svg { position:relative; width:13px; height:13px; }
.slide-markers { display:flex; }
.slide-markers button span { height:6px; width:6px; border-radius:50%; background:#c9c9c9; transition:background .3s; }
.slide-markers button:hover span { background:#999; }
.slide-markers button[aria-pressed=true] span { background:#111; }

.explorer { border-top:0; border-color:#dfe4de; margin-top:32px; padding:29px 31px 24px; }
.eyebrow { font-family:'Montserrat',var(--font-body); font-weight:500; font-size:9px; letter-spacing:.16em; color:#7b867b; }
.explorer h2 { font-family:var(--font-brand); font-size:34px; }
.explorer-heading { margin-bottom:20px; }
.search-hint { font-size:12px; color:#7a827d; }
.search-form { padding:5px 5px 5px 17px; border-color:#cbd3cc; }
.search-form input { font-size:14px; }
.button.primary { background:#253831; font-size:12px; min-height:43px; padding-inline:22px; }
.button.primary:hover:not(:disabled) { background:#354d42; }
.shortcut-button { border:0; border-bottom:1px solid #dce2d9; padding:5px 0; gap:15px; margin-right:19px; font-size:11px; }
.shortcut-button:hover { border-color:#506958; background:transparent; }
.shortcut-label { font-size:11px; color:#92998f; }
.shortcut-row { margin-top:14px; }
.welcome { margin:43px 0 52px; }
.welcome-intro h2 { font-family:var(--font-display); font-size:26px; font-weight:500; line-height:1.35; letter-spacing:.005em; }
.welcome-step h3 { font-family:var(--font-display); font-size:20px; font-weight:500; line-height:1.4; letter-spacing:.01em; }
.welcome-step p,.welcome-intro>p:last-child { font-size:12px; line-height:1.8; }
.step-number { font-family:var(--font-brand); color:#859580; }
.research-note { border:0; padding:0; margin-top:60px; }
.data-landscape { margin:0 0 32px; height:290px; overflow:hidden; position:relative; background:#263128; }
.data-landscape>img { width:100%; height:100%; object-fit:cover; object-position:50% 48%; display:block; }
.data-landscape:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(12,28,21,.6),transparent 90%); }
.data-landscape figcaption { position:absolute; z-index:1; top:0; left:38px; height:100%; display:flex; justify-content:center; flex-direction:column; color:#fff; }
.data-landscape .eyebrow { color:#e2e8d9; font-size:9px; margin-bottom:14px; }
.data-landscape-title { font-family:var(--font-brand); font-size:45px; line-height:1.15; }
.notes-heading h2 { font-family:var(--font-display); font-size:23px; font-weight:500; line-height:1.4; letter-spacing:.005em; }
.notes-grid p { font-size:12px; line-height:1.8; }
.notes-grid strong { color:#3c5146; }
.footer-inner { min-height:142px; }
.footer-inner p { font-size:11px; }
.footer-inner>span { font-size:10px; line-height:1.9; }
.footer-brand .brand-name { font-size:30px; }
.slide-shore .landscape-shade { background:linear-gradient(90deg,rgba(7,20,14,.62),rgba(7,20,14,.27) 72%),linear-gradient(0deg,rgba(7,20,14,.35),transparent 45%); }
.landscape .hero-explorer { width:min(790px,100%); border:0; padding:0; margin:0; background:none; box-shadow:none; }
.hero-explorer .explorer-heading { display:block; margin-bottom:25px; }
.landscape .hero-explorer .eyebrow { display:block; color:#e4eadf; margin-bottom:14px; }
.landscape .hero-explorer h2 { color:#fff; font-size:60px; line-height:1.12; letter-spacing:-.015em; }
.hero-explorer .search-hint { display:block; text-align:left; color:#e0e6df; margin-top:14px; font-size:13px; }
.hero-explorer .search-form { padding:7px 7px 7px 20px; border:1px solid #ffffffb3; background:#fff; }
.hero-explorer .search-form:focus-within { outline:2px solid #fff; outline-offset:4px; }
.hero-explorer .search-form input { height:44px; font-size:15px; }
.hero-explorer .search-form button { min-height:46px; }
.hero-explorer .shortcut-row { margin-top:20px; }
.hero-explorer .shortcuts { flex-wrap:nowrap; overflow-x:auto; scrollbar-width:thin; scrollbar-color:#ffffff70 transparent; padding-bottom:4px; }
.hero-explorer .shortcut-button { flex-shrink:0; white-space:nowrap; }
.hero-explorer .shortcut-label { color:#cdd8d1; }
.hero-explorer .shortcut-button { background:transparent; color:#fff; border:0; border-bottom:1px solid #ffffff73; }
.hero-explorer .shortcut-button:hover { background:#ffffff14; border-color:#fff; }
.hero-explorer .muted { color:#e0e6df; }
.page-shell>.search-results-panel { margin-top:28px; padding:24px; scroll-margin-top:24px; }

@media(min-width:1700px) { .landscape-stage { height:560px; } .landscape-inner { padding-top:100px; } }
@media(max-width:1120px) {
  .header-inner,.page-shell,.footer-inner,.landscape-inner { width:calc(100% - 64px); }
  .brand-name { font-size:39px; } .source-tag { display:none; }
  .header-inner nav a { font-size:10px; letter-spacing:1.2px; }
  .landscape-stage { height:510px; }
}
@media(max-width:800px) {
  .header-inner,.page-shell,.footer-inner,.landscape-inner { width:calc(100% - 40px); }
  .header-inner { gap:20px; } .brand-name { font-size:34px; }
  .header-inner nav { gap:20px; } .header-inner nav a { font-size:9px; letter-spacing:.8px; }
  .principle-title { font-size:46px; }
  .quote-copy { max-width:620px; }
  .quote-copy blockquote>p { font-size:40px; }
  .explorer { padding:26px; } .welcome-intro h2 { font-size:26px; }
  .data-landscape { height:255px; }
}
@media(max-width:680px) {
  .site-header { height:auto; }
  .header-inner { padding-top:20px; }
  .header-inner nav { margin-top:13px; gap:28px; }
  .header-inner nav a { min-height:43px; padding:6px 0 12px; font-size:10px; }
  .nav-active:after { bottom:0; }
  .landscape-stage { height:475px; }
  .landscape-inner { padding:48px 0 66px; }
  .landscape-photo { object-position:56% 50%; }
  .landscape-shade { background:linear-gradient(90deg,#0c1c1680,#0c1c1620),linear-gradient(0deg,#0c1c1699,transparent 40%); }
  .landscape-eyebrow { font-size:9px; letter-spacing:.12em; gap:10px; margin-bottom:23px; }
  .landscape-eyebrow>span { width:23px; }
  .slide-perspective .landscape-photo { object-position:48% 60%; }
  .slide-search .landscape-photo { object-position:57% 45%; }
  .slide-search .landscape-shade { background:linear-gradient(90deg,#0c252cad,#0c252c52),linear-gradient(0deg,#0c252cbb,transparent 45%); }
  .principle-title { font-size:40px; line-height:1.14; }
  .principle-description { max-width:32ch; margin-top:20px; font-size:15px; line-height:1.6; }
  .quote-copy blockquote>p { font-size:34px; line-height:1.18; text-wrap:balance; }
  .quote-line { display:inline; }
  .quote-copy .landscape-eyebrow { margin-bottom:22px; }
  .quote-copy blockquote footer { font-size:14px; margin-top:20px; letter-spacing:.025em; }
  .explorer { margin-top:25px; padding:23px 19px 18px; }
  .explorer h2 { font-size:32px; }
  .search-hint { font-size:11px; }
  .search-form { padding:9px; }
  .search-form input { font-size:16px; }
  .search-form .button { font-size:12px; min-height:43px; }
  .shortcut-button { font-size:10px; margin-right:6px; gap:9px; }
  .shortcut-label { font-size:10px; }
  .welcome { margin:35px 0 38px; }
  .welcome-step p,.welcome-intro>p:last-child { font-size:13px; }
  .welcome-step h3 { font-size:20px; }
  .research-note { margin-top:35px; }
  .data-landscape { height:250px; margin-bottom:25px; }
  .data-landscape figcaption { left:23px; right:23px; }
  .data-landscape-title { font-size:34px; }
  .landscape .hero-explorer h2 { font-size:43px; }
  .hero-explorer .explorer-heading { margin-bottom:21px; }
  .hero-explorer .search-hint { font-size:12px; line-height:1.7; margin-top:12px; }
  .hero-explorer .search-form { padding:9px; gap:8px; }
  .hero-explorer .search-form input { font-size:16px; height:35px; }
  .hero-explorer .search-form .button { min-height:43px; }
  .hero-explorer .shortcut-row { display:block; margin-top:16px; }
  .hero-explorer .shortcut-label { display:block; margin-bottom:5px; padding:0; font-size:10px; }
  .hero-explorer .shortcut-button { font-size:10px; margin-right:8px; min-height:34px; padding:5px 0; }
  .hero-explorer .shortcuts { gap:8px; }
  .page-shell>.search-results-panel { padding:18px; }
  .notes-heading h2 { font-size:22px; }
  .footer-inner { padding-bottom:44px; }
}
@media(max-width:380px) {
  .brand-name { font-size:30px; } .brand-symbol { width:36px; }
  .landscape-stage { height:470px; }
  .principle-title { font-size:35px; }
  .quote-copy blockquote>p { font-size:32px; }
  .landscape-inner { padding-top:42px; }
  .landscape-eyebrow { font-size:8px; }
}
@media(prefers-reduced-motion:reduce) { .landscape-slide { transition:none; } }

/* Approved October 8 layout and fixed masthead. */
.landscape{scroll-margin-top:-16px}

.landscape-stage{height:clamp(560px,50vw,720px)}
.landscape-inner{padding-top:clamp(86px,8vw,116px)}
.principle-title>span{display:block}
.principle-description,.quote-copy blockquote footer{font-family:var(--font-body);font-size:17px;font-weight:400;line-height:1.65;letter-spacing:0;color:#eef0e9}
@media(max-width:680px){.landscape-stage{height:475px}.landscape-inner{padding-top:48px}.principle-description,.quote-copy blockquote footer{font-size:15px;line-height:1.6}}
@media(max-width:380px){.landscape-stage{height:470px}.landscape-inner{padding-top:42px}}

html{scroll-padding-top:calc(var(--site-header-height,94px) + 16px)}
.site-header,.holdings-study .site-header{position:sticky;top:0;z-index:10;height:94px;background:var(--wash);border-bottom:0}
.site-header .nav-active::after{content:none}
.site-header .header-inner nav{gap:24px;margin-left:auto}
.site-header .header-inner nav a{font-family:'Montserrat',sans-serif;font-size:14px;font-weight:600;line-height:20px;letter-spacing:2px;text-transform:uppercase;color:#000;padding:20px 0}
.site-header .header-inner nav a:last-child{padding-right:0}
.site-header .header-inner nav a:hover{color:#60716a}
@media(max-width:960px){.site-header .header-inner nav a{font-size:12px;letter-spacing:1.5px}}
@media(max-width:760px){.holdings-study .site-header{height:auto}.holdings-study .header-inner{padding-block:16px;gap:12px}.holdings-study .header-inner nav{height:auto}.holdings-study .header-inner nav a{min-height:38px;padding-block:6px}}
@media(max-width:680px){.site-header{height:auto}.header-inner{padding-top:16px}.site-header .header-inner nav{margin-top:9px;gap:20px}.site-header .header-inner nav a{font-size:10px;letter-spacing:1.2px;line-height:20px;padding:6px 0 10px}}
@media(max-width:380px){.site-header .header-inner nav{gap:18px}.site-header .header-inner nav a{font-size:9px;letter-spacing:.8px}.holdings-study .brand-name{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
