/* BCC landmark collection: field-atlas typography, quiet diagram space. */
.page-landmarks { --max: 1360px; --ink-3: #585f57; }
.lm-heading { display:flex; justify-content:space-between; align-items:end; gap:32px; padding-block:46px 32px; }
.lm-kicker { font:600 11px/1.5 var(--sans); letter-spacing:.13em; text-transform:uppercase; color:var(--clay); margin:0 0 10px; }
.lm-heading h1 { font:500 clamp(42px,5vw,70px)/1.06 var(--serif); letter-spacing:-.035em; }
.lm-heading>p { color:var(--ink-2); font-size:14px; line-height:1.7; margin:0 0 3px; }
.lm-exhibit { border-top:1px solid var(--rule-2); }
.lm-index { display:flex; gap:0; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; padding-block:15px; }
.lm-index a { display:flex; align-items:baseline; gap:8px; flex:0 0 auto; padding:9px 18px; border-right:1px solid var(--rule); font-size:12px; line-height:1.35; text-decoration:none; }
.lm-index a:first-child { padding-left:0; }
.lm-index a[aria-current] { color:var(--clay); font-weight:650; }
.lm-number { font:11px var(--mono); color:var(--ink-3); }
.lm-index a[aria-current] .lm-number { color:var(--clay); }
.lm-exhibit-body { display:grid; grid-template-columns:minmax(0,1fr) 310px; border:1px solid var(--rule-2); }
.lm-visual { min-width:0; background:#eae4d9; display:flex; flex-direction:column; }
.lm-stage { height:570px; flex:1 0 570px; min-height:420px; position:relative; overflow:hidden; isolation:isolate; background:radial-gradient(ellipse at 48% 44%,#f6f1e8,#e6dfd2); }
.lm-canvas,.lm-poster { position:absolute; inset:0; display:block; width:100%; height:100%; }
.lm-canvas { touch-action:pan-y; cursor:grab; }
.lm-canvas:active { cursor:grabbing; }
.lm-canvas:focus-visible { outline-offset:-5px; }
.lm-poster { object-fit:contain; }
.lm-stage-label { position:absolute; top:14px; left:17px; display:grid; gap:3px; padding:7px; background:#eee8dd; pointer-events:none; }
.lm-stage-label span:first-child { font:500 20px/1.2 var(--serif); }
.lm-stage-label span:last-child { color:var(--ink-2); font:11px/1.5 var(--mono); }
.lm-north { position:absolute; right:19px; top:17px; width:32px; text-align:center; font:11px var(--mono); pointer-events:none; }
.lm-north svg { display:block; width:32px; height:40px; fill:var(--forest); stroke:var(--forest); stroke-width:1.5; }
.lm-north span { display:block; }
.lm-scale { position:absolute; left:23px; bottom:20px; width:180px; font:10px/1.5 var(--mono); background:#eee8dd; pointer-events:none; }
.lm-scale svg { display:block; width:180px; height:22px; stroke:var(--ink-2); fill:none; stroke-width:1.4; }
.lm-scale span { display:block; padding-left:10px; }
.lm-loading { position:absolute; left:22px; right:22px; bottom:70px; max-width:410px; font-size:12px; padding:10px 13px; background:rgba(250,247,239,.94); border:1px solid var(--rule); }
.lm-loading:has([data-status]:empty) { display:none; }
.lm-loading p { margin:0; }
.lm-loading progress { display:block; width:100%; height:5px; margin-top:10px; accent-color:var(--clay); }
.lm-loading button { margin-top:10px; min-height:40px; }
.lm-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:12px 18px; border-top:1px solid var(--rule); }
.lm-control-group { display:flex; flex-wrap:wrap; gap:5px; }
.lm-exhibit button { border:1px solid var(--rule-2); border-radius:3px; background:transparent; color:var(--ink); padding:9px 11px; cursor:pointer; font:500 12px/1.3 var(--sans); min-height:38px; }
.lm-exhibit button:hover { background:var(--paper); }
.lm-exhibit button[aria-pressed="true"] { background:var(--forest); border-color:var(--forest); color:var(--paper); }
.lm-exhibit button:disabled { opacity:.45; cursor:wait; }
.lm-zoom button { min-width:38px; }
.lm-help,.lm-render-note { padding:0 22px; color:var(--ink-2); font:11px/1.65 var(--sans); margin:0 0 9px; }
.lm-render-note { padding-bottom:12px; margin:0; }
.lm-companion { border-left:1px solid var(--rule-2); padding:26px 24px; background:var(--card); }
.lm-companion h2 { font:500 31px/1.15 var(--serif); letter-spacing:-.02em; margin-bottom:16px; }
.lm-lede { font-size:14px; line-height:1.75; color:var(--ink-2); }
.lm-options { margin-top:22px; padding-top:20px; border-top:1px solid var(--rule); }
.lm-options fieldset { padding:0; border:0; margin:0 0 16px; }
.lm-options legend,.lm-detail,.lm-share label { font:600 11px/1.5 var(--sans); color:var(--ink-2); margin-bottom:8px; }
.lm-materials { display:flex; flex-wrap:wrap; gap:5px; }
.lm-materials button { padding:8px 9px; font-size:11px; }
.lm-detail { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.lm-detail select { font:12px var(--sans); min-height:36px; max-width:160px; padding:5px 8px; background:var(--card); border:1px solid var(--rule-2); color:var(--ink); }
.lm-detail-note { font:10px/1.6 var(--mono); color:var(--ink-3); margin-bottom:20px; }
.lm-learning { border-top:1px solid var(--rule); padding-top:20px; }
.lm-learning h3 { font:500 18px/1.4 var(--serif); margin-bottom:12px; }
.lm-learning-tabs { display:flex; gap:5px; margin-bottom:12px; }
.lm-learning [data-panel] { font-size:12px; line-height:1.7; color:var(--ink-2); }
.lm-learning [data-panel] p { margin-bottom:7px; }
.lm-learning input[type="range"] { display:block; width:100%; margin-block:12px; accent-color:var(--clay); min-height:24px; }
.lm-check { display:flex; align-items:center; gap:8px; min-height:34px; }
.lm-check input { accent-color:var(--clay); width:17px; height:17px; }
.lm-limit { font-size:11px; line-height:1.75; color:var(--ink-2); border-left:2px solid #c49671; padding-left:12px; margin-top:22px; }
.lm-read-link { font-size:11px; font-weight:600; }
.lm-share { margin-top:22px; display:grid; grid-template-columns:1fr auto; gap:6px; }
.lm-share label { grid-column:1/-1; margin:0; }
.lm-share input { min-width:0; width:100%; padding:7px; background:var(--paper); border:1px solid var(--rule); font:10px var(--mono); color:var(--ink-2); }
.lm-share button { font-size:10px; padding:7px; min-height:34px; }
.lm-share [role="status"] { grid-column:1/-1; font-size:11px; }
.lm-profile { display:grid; grid-template-columns:310px minmax(0,1fr); gap:35px; align-items:center; border:1px solid var(--rule-2); border-top:0; padding:25px 30px; background:var(--card); }
.lm-profile h3 { font:500 23px/1.3 var(--serif); margin-bottom:12px; }
.lm-profile p { font-size:12px; color:var(--ink-2); }
.lm-profile svg { display:block; width:100%; max-height:290px; color:var(--clay); }
.lm-profile svg text { font:10px var(--mono); fill:var(--ink-2); }
.lm-profile svg .axis { stroke:#b8afa0; fill:none; }
.lm-reading { margin-top:90px; }
.lm-section-heading { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:end; padding-bottom:34px; border-bottom:1px solid var(--rule-2); }
.lm-section-heading h2,.lm-method h2,.lm-existing h2 { font:500 clamp(30px,3.4vw,43px)/1.16 var(--serif); letter-spacing:-.025em; }
.lm-section-heading>p { font-size:14px; color:var(--ink-2); margin:0; max-width:450px; }
.lm-study { display:grid; grid-template-columns:1fr 1fr; gap:55px; padding-block:46px; border-bottom:1px solid var(--rule); scroll-margin-top:25px; }
.lm-study figure { margin:0; align-self:start; }
.lm-study figure img { display:block; width:100%; background:#eae4d9; aspect-ratio:4/3; object-fit:contain; }
.lm-study figcaption { font:10px/1.6 var(--mono); color:var(--ink-3); padding-top:9px; }
.lm-study h3 { font:500 32px/1.15 var(--serif); margin:0 0 16px; letter-spacing:-.015em; }
.lm-study-copy p { font-size:13px; line-height:1.8; color:var(--ink-2); }
.lm-study-copy .lm-study-lede { font:400 19px/1.6 var(--serif); color:var(--ink); }
.lm-boundary { border-left:2px solid #c49671; padding-left:13px; }
.lm-study details { border-top:1px solid var(--rule); border-bottom:1px solid var(--rule); padding-block:12px; margin-block:18px; font-size:12px; }
.lm-study summary,.lm-source-list summary { cursor:pointer; font-weight:600; }
.lm-study dl { display:grid; grid-template-columns:120px 1fr; gap:12px 15px; font-size:11px; line-height:1.7; }
.lm-study dt { color:var(--ink-3); }
.lm-study dd { margin:0; }
.lm-open { font-size:12px; font-weight:650; }
.lm-method { display:grid; grid-template-columns:1fr 1fr; gap:65px; padding-block:70px; border-bottom:1px solid var(--rule-2); }
.lm-method h2 { margin-bottom:25px; }
.lm-method h3 { font:500 25px/1.3 var(--serif); margin:30px 0 18px; }
.lm-method p,.lm-existing p { font-size:14px; line-height:1.85; color:var(--ink-2); }
.lm-existing { padding-block:52px; }
.lm-existing h2 { margin-bottom:20px; }
.lm-existing>p { max-width:820px; }
.lm-existing nav { display:flex; flex-wrap:wrap; gap:20px 34px; font-size:13px; font-weight:600; }
.lm-source-list { border-top:1px solid var(--rule-2); padding-block:25px; font-size:12px; }
.lm-source-list ol { padding-left:22px; max-width:1000px; }
.lm-source-list li { margin-block:15px; line-height:1.8; }
.lm-source-list li span { color:var(--ink-3); }
.lm-footer { border-top:1px solid var(--rule-2); display:flex; flex-wrap:wrap; justify-content:space-between; gap:15px; padding-block:30px; font-size:11px; color:var(--ink-2); }
.lm-capture .site-header,.lm-capture .lm-heading,.lm-capture .lm-index,.lm-capture .lm-companion,.lm-capture .lm-toolbar,.lm-capture .lm-help,.lm-capture .lm-render-note,.lm-capture .lm-reading,.lm-capture .lm-method,.lm-capture .lm-existing,.lm-capture .lm-source-list,.lm-capture .lm-footer,.lm-capture .lm-profile,.lm-capture .lm-stage-label,.lm-capture .lm-north,.lm-capture .lm-scale { display:none!important; }
.lm-capture .lm-stage { position:fixed; inset:0; width:100vw; height:100vh; border:0; }
@media(min-width:1700px){.lm-stage{height:650px}}
@media(max-width:1050px){.lm-exhibit-body{grid-template-columns:minmax(0,1fr) 275px}.lm-companion{padding:22px 18px}.lm-stage{height:550px}.lm-toolbar{padding:12px}.lm-control-group{gap:3px}.lm-control-group button{padding:8px}.lm-heading{align-items:start}.lm-heading>p{max-width:260px}.lm-study{gap:30px}.lm-section-heading{gap:35px}}
@media(max-width:760px){.lm-heading{display:block;padding-block:28px 25px}.lm-heading h1{font-size:44px}.lm-heading>p{max-width:none;margin-top:19px;font-size:12px}.lm-index{margin-right:calc(-1*var(--gutter));padding-block:10px}.lm-index a{padding:11px 15px;font-size:12px}.lm-exhibit-body{display:block}.lm-stage{height:440px;flex:0 0 auto;min-height:360px}.lm-companion{border-left:0;border-top:1px solid var(--rule-2);padding:24px}.lm-companion h2{font-size:29px}.lm-lede{font-size:14px;max-width:550px}.lm-toolbar{padding:12px;gap:9px}.lm-exhibit button{min-height:44px}.lm-options{margin-top:15px;padding-top:16px}.lm-materials button{font-size:12px;padding:10px 14px}.lm-detail{justify-content:start;margin-top:18px}.lm-detail-note{font-size:11px}.lm-learning h3{font-size:20px}.lm-learning [data-panel]{font-size:13px}.lm-help,.lm-render-note{font-size:10px;padding-inline:15px}.lm-stage-label{left:17px;top:17px}.lm-stage-label span:first-child{font-size:18px}.lm-stage-label span:last-child{font-size:10px}.lm-limit,.lm-read-link{font-size:12px}.lm-profile{display:block;padding:24px}.lm-profile svg{margin-top:20px}.lm-profile p{font-size:12px}.lm-reading{margin-top:58px}.lm-section-heading{display:block;padding-bottom:26px}.lm-section-heading>p{margin-top:18px}.lm-study{display:flex;flex-direction:column;gap:23px;padding-block:30px}.lm-study h3{font-size:30px}.lm-study-copy p{font-size:14px}.lm-study-copy .lm-study-lede{font-size:20px}.lm-study dl{grid-template-columns:90px 1fr;font-size:12px}.lm-study details,.lm-open{font-size:13px}.lm-method{display:block;padding-block:48px}.lm-method h3{margin-top:35px}.lm-existing{padding-block:38px}.lm-existing nav{gap:18px}.lm-footer{display:block;font-size:10px}}
@media(max-width:390px){.lm-heading h1{font-size:38px}.lm-stage{height:370px;min-height:340px}.lm-companion{padding:20px 17px}.lm-toolbar{gap:8px}.lm-control-group button{font-size:11px;padding:7px}.lm-north{right:12px}.lm-scale{left:12px}.lm-stage-label{max-width:215px}.lm-study dl{display:block}.lm-study dt{font-weight:600;margin-top:12px}.lm-study dd{margin-top:3px}}
@media(prefers-reduced-motion:reduce){.page-landmarks{scroll-behavior:auto}.page-landmarks *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
