:root{--ink:#252521;--muted:#777872;--line:#e6e6e1;--soft:#f6f6f3;--white:#fff;--heading:'Space Grotesk',Arial,sans-serif;--body:Inter,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:calc(14px * var(--ui-scale,1))/1.65 var(--body)}button,input,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button,a,select{transition:background-color .16s ease,border-color .16s ease,color .16s ease}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}input[type=checkbox]{accent-color:var(--ink)}h1,h2,h3{font-family:var(--heading);font-weight:500;line-height:1.25;letter-spacing:-.65px}h1{font-size:calc(32px * var(--ui-scale,1));margin:0}h2{font-size:calc(22px * var(--ui-scale,1));margin:0 0 18px}h3{font-size:calc(17px * var(--ui-scale,1));margin:0 0 7px}p{margin:0 0 16px}::selection{background:#e7e7df}.skip{position:absolute;top:-70px;left:20px;padding:10px;background:var(--ink);color:white;z-index:100}.skip:focus{top:10px}.site-header{height:74px;border-bottom:1px solid var(--line);background:#fff}.header-inner{height:100%;display:flex;align-items:center;gap:48px;max-width:1400px;margin:auto;padding:0 32px}.brand{font:650 calc(24px * var(--ui-scale,1))/1 var(--heading);letter-spacing:-1px;text-decoration:none!important}.header-inner>nav{height:100%;display:flex;gap:30px;align-items:stretch}.header-inner>nav a{display:flex;align-items:center;font-size:calc(14px * var(--ui-scale,1));border-bottom:2px solid transparent;padding-top:2px;text-decoration:none}.header-inner>nav a[aria-current=page]{border-bottom-color:var(--ink)}.page{max-width:1180px;margin:0 auto;padding:44px 32px 64px;min-height:calc(100dvh - 150px)}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px}.page-heading p{margin:8px 0 0;color:var(--muted);font-size:calc(14px * var(--ui-scale,1))}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #deded8;border-radius:7px;background:#fff;min-height:38px;padding:8px 14px;font-size:calc(13px * var(--ui-scale,1));font-weight:400;line-height:1.5;white-space:nowrap;text-decoration:none!important}.button:hover{background:var(--soft);border-color:#c7c7bf}.button.primary,.button[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.button.primary:hover,.button[aria-pressed=true]:hover{background:#45453e}.filters{display:flex;gap:24px;border-bottom:1px solid var(--line);margin:0 0 4px;overflow:auto;white-space:nowrap}.filters a{padding:0 0 13px;color:var(--muted);font-size:calc(13px * var(--ui-scale,1));border-bottom:2px solid transparent;text-decoration:none}.filters a[aria-current=page]{color:var(--ink);border-color:var(--ink)}.story-list{max-width:100%}.story-row{display:grid;grid-template-columns:110px 1fr;gap:24px;border-bottom:1px solid var(--line);padding:26px 0}.story-row>time{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);padding-top:2px;font-variant-numeric:tabular-nums}.story-meta{display:flex;gap:8px;color:var(--muted);font-size:calc(12px * var(--ui-scale,1));margin-bottom:8px}.story-row h2{font-size:calc(21px * var(--ui-scale,1));letter-spacing:-.45px;margin:0 0 8px}.story-row p{font-size:calc(14px * var(--ui-scale,1));color:#686962;line-height:1.65;margin:0;max-width:800px}.crumbs{display:flex;gap:8px;flex-wrap:wrap;font-size:calc(12px * var(--ui-scale,1));color:var(--muted);margin:-9px 0 28px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:64px}.project-intro{margin:0 0 34px}.project-intro>p{margin-top:14px;max-width:710px}.status{display:inline-flex;align-items:center;gap:7px;font-size:calc(12px * var(--ui-scale,1));color:#66675f;white-space:nowrap}.status:before{content:"";width:5px;height:5px;background:currentColor;border-radius:50%}.content-section{margin-top:36px}.content-section h2{font-size:calc(22px * var(--ui-scale,1));margin:0 0 16px}.content-section:first-child{margin-top:0}.fact-table{width:100%;border-collapse:collapse;font-size:calc(13px * var(--ui-scale,1));table-layout:fixed}.fact-table th,.fact-table td{padding:14px 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:anywhere}.fact-table th{font-weight:400;color:var(--muted);width:30%;padding-right:18px}.fact-table td:nth-child(2){width:36%}.fact-table th strong{display:block;color:var(--ink);font-weight:500;margin-top:5px}.fact-table .fact-source{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);padding-left:20px;width:34%}.sources-rail{border-left:1px solid var(--line);padding-left:25px;align-self:start}.sources-rail h2{font-size:calc(17px * var(--ui-scale,1));margin:0 0 12px}.source-row{display:block;padding:15px 0;border-bottom:1px solid var(--line);font-size:calc(13px * var(--ui-scale,1));line-height:1.65}.source-row>span{display:block}.source-row small{display:block;font-size:calc(12px * var(--ui-scale,1));color:var(--muted);margin-top:5px}.quiet-note{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);line-height:1.7;margin-top:20px}.scope-note{background:var(--soft);border-radius:5px;font-size:calc(13px * var(--ui-scale,1));color:#62635d;padding:13px 16px;margin:20px 0}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.timeline time{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);font-variant-numeric:tabular-nums}.timeline h3{font-size:calc(16px * var(--ui-scale,1));letter-spacing:-.25px}.timeline p{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);margin:0}.evidence-details{margin-top:28px;border-bottom:1px solid var(--line)}.evidence-details>summary{padding:15px 0;cursor:pointer;font-size:calc(13px * var(--ui-scale,1))}.evidence-details[open]{padding-bottom:12px}.reading-column{max-width:780px;margin:auto}.article-meta{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);margin-bottom:17px}.article h1{font-size:calc(36px * var(--ui-scale,1));letter-spacing:-1px;max-width:760px;margin:0 0 22px}.article-lead{font-size:calc(18px * var(--ui-scale,1));line-height:1.7;margin-bottom:16px}.article .quiet-note{margin-top:10px}.article .content-section{margin-top:35px}.related-project{margin-top:32px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:25px;align-items:center}.muted{font-size:calc(12px * var(--ui-scale,1));color:var(--muted)}.related-project h2{font-size:calc(21px * var(--ui-scale,1));margin:7px 0}.project-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:1fr 190px auto;gap:25px;align-items:center;padding:23px 0;border-bottom:1px solid var(--line)}.project-row h2{font-size:calc(21px * var(--ui-scale,1));margin:0 0 6px}.project-row p{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);margin:0}.project-row .button{min-width:124px}.dashboard-layout{display:grid;grid-template-columns:240px minmax(0,1fr);border:1px solid var(--line);border-radius:14px;overflow:hidden;min-height:560px}.settings{padding:28px 24px;background:var(--soft);border-right:1px solid var(--line)}.settings fieldset{border:0;padding:0;margin:0 0 27px}.settings legend{font-size:calc(13px * var(--ui-scale,1));font-weight:600;margin-bottom:10px}.settings label{display:flex;align-items:center;gap:9px;font-size:calc(13px * var(--ui-scale,1));padding:7px 0}.settings input{width:15px;height:15px;margin:0;flex-shrink:0}.settings p{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);line-height:1.65;margin:0}.dashboard-content{padding:28px 32px}.dashboard-content h2{font-size:calc(22px * var(--ui-scale,1))}.saved-project{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 0;border-bottom:1px solid var(--line)}.saved-project a{font-weight:500}.saved-project p{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);margin:5px 0 0}.saved-project button{border:0;background:none;color:var(--muted);font-size:calc(12px * var(--ui-scale,1));padding:8px 0 8px 12px}.saved-project button:hover{text-decoration:underline}.empty{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);padding:15px 0;line-height:1.8}.empty b{display:block;font-weight:500;color:var(--ink);font-size:calc(14px * var(--ui-scale,1));margin-bottom:5px}.empty a{text-decoration:underline;text-underline-offset:4px;display:inline-block;margin-top:9px;color:var(--ink)}.dashboard-events{margin-top:36px}.section-heading{margin-bottom:6px}.section-heading h2{margin-bottom:6px}.section-heading p{color:var(--muted);font-size:calc(12px * var(--ui-scale,1));margin:0}.dashboard-content .story-row{grid-template-columns:84px 1fr;gap:17px;padding:21px 0}.dashboard-content .story-row h2{font-size:calc(18px * var(--ui-scale,1))}.dashboard-content .story-row p{font-size:calc(13px * var(--ui-scale,1))}.report-controls{margin-top:36px}.report-controls h2{margin-bottom:20px}.report-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.report-form label{font-size:calc(13px * var(--ui-scale,1))}.report-form select{border:1px solid #deded8;border-radius:7px;padding:9px 12px;background:white;font-size:calc(13px * var(--ui-scale,1));max-width:100%}.report-actions{margin-top:12px}.report-preview{border-top:1px solid var(--line);margin-top:28px;padding-top:25px}.report-preview h3{font-size:calc(22px * var(--ui-scale,1))}.report-preview h4{font-family:var(--heading);font-size:calc(17px * var(--ui-scale,1));font-weight:500;margin-bottom:10px}.report-preview p,.report-preview li{font-size:calc(13px * var(--ui-scale,1));line-height:1.8}.report-preview li{margin-bottom:14px}.report-preview a{text-decoration:underline;text-underline-offset:3px}.report-preview .meta{font-size:calc(12px * var(--ui-scale,1));color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:23px 32px;display:flex;justify-content:space-between;gap:20px;font-size:calc(12px * var(--ui-scale,1));color:var(--muted);max-width:1400px;margin:auto}.site-footer nav{display:flex;gap:22px}.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:8px;padding:12px 18px;z-index:100;max-width:calc(100% - 32px);font-size:calc(13px * var(--ui-scale,1));box-shadow:0 3px 14px #00000012}[hidden]{display:none!important}.view-enter{animation:enter .18s ease-out}@keyframes enter{from{opacity:.65;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.detail-layout{gap:32px;grid-template-columns:minmax(0,1fr) 225px}.dashboard-layout{grid-template-columns:220px minmax(0,1fr)}.dashboard-content{padding:25px}.project-row{grid-template-columns:1fr 150px auto;gap:18px}.header-inner{gap:35px}}@media(max-width:700px){.site-header{height:106px}.header-inner{display:block;padding:20px 20px 0}.brand{font-size:calc(23px * var(--ui-scale,1))}.header-inner>nav{height:49px;gap:25px;margin-top:10px}.header-inner>nav a{font-size:calc(13px * var(--ui-scale,1));padding:0 0 4px}.page{padding:28px 20px 40px;min-height:calc(100dvh - 190px)}h1{font-size:calc(28px * var(--ui-scale,1))}.page-heading{align-items:start;flex-direction:column;gap:17px;margin-bottom:25px}.page-heading p{font-size:calc(13px * var(--ui-scale,1));margin-top:6px}.actions{gap:7px}.button{font-size:calc(12px * var(--ui-scale,1));padding:8px 12px;min-height:36px}.filters{gap:22px;margin-right:-20px;padding-right:20px}.filters a{font-size:calc(12px * var(--ui-scale,1))}.story-row{display:block;padding:22px 0}.story-row>time{display:block;font-size:calc(11px * var(--ui-scale,1));margin-bottom:8px}.story-meta{font-size:calc(11px * var(--ui-scale,1));margin-bottom:7px}.story-row h2{font-size:calc(20px * var(--ui-scale,1));line-height:1.3;margin-bottom:8px}.story-row p{font-size:calc(13px * var(--ui-scale,1))}.crumbs{font-size:calc(11px * var(--ui-scale,1));gap:6px;margin:0 0 23px}.detail-layout{display:block}.project-intro{margin-bottom:28px}.project-intro>p{font-size:calc(13px * var(--ui-scale,1))}.content-section{margin-top:30px}.content-section h2{font-size:calc(21px * var(--ui-scale,1))}.fact-table{font-size:calc(12px * var(--ui-scale,1))}.fact-table th{width:28%;padding-right:10px}.fact-table td:nth-child(2){width:35%}.fact-table .fact-source{font-size:calc(11px * var(--ui-scale,1));padding-left:10px;width:37%}.timeline li{display:block;padding:19px 0}.timeline time{display:block;margin-bottom:8px;font-size:calc(11px * var(--ui-scale,1))}.timeline h3{font-size:calc(16px * var(--ui-scale,1))}.sources-rail{border-left:0;border-top:1px solid var(--line);padding:25px 0 0;margin-top:30px}.article h1{font-size:calc(29px * var(--ui-scale,1));letter-spacing:-.7px}.article-lead{font-size:calc(16px * var(--ui-scale,1))}.article-meta{font-size:calc(11px * var(--ui-scale,1))}.related-project{display:block;padding:20px 0}.related-project .actions{margin-top:17px}.project-row{grid-template-columns:1fr auto;gap:13px;padding:20px 0}.project-row>div{grid-column:1 / -1}.project-row h2{font-size:calc(21px * var(--ui-scale,1))}.project-row p{font-size:calc(12px * var(--ui-scale,1))}.project-row .button{min-width:118px}.status{font-size:calc(11px * var(--ui-scale,1))}.dashboard-layout{display:flex;flex-direction:column;border-radius:10px}.settings{border-right:0;border-bottom:1px solid var(--line);padding:20px}.settings fieldset{margin-bottom:20px}.settings label{font-size:calc(12px * var(--ui-scale,1));padding:6px 0}.settings p{font-size:calc(11px * var(--ui-scale,1))}.dashboard-content{padding:24px 20px}.dashboard-content h2{font-size:calc(20px * var(--ui-scale,1))}.dashboard-content .story-row{display:block;padding:20px 0}.dashboard-content .story-row h2{font-size:calc(18px * var(--ui-scale,1))}.dashboard-content .story-row p{font-size:calc(12px * var(--ui-scale,1))}.saved-project{align-items:start;gap:10px}.saved-project a{font-size:calc(13px * var(--ui-scale,1))}.saved-project button{padding-top:0;flex-shrink:0}.saved-project p{font-size:calc(11px * var(--ui-scale,1))}.report-form{display:block}.report-form label{display:block;margin-bottom:8px}.report-form select{width:100%;margin-bottom:10px}.report-form .button{width:100%}.report-actions{display:grid;grid-template-columns:1fr}.report-preview ul{padding-left:18px}.site-footer{padding:22px 20px;display:block;font-size:calc(11px * var(--ui-scale,1))}.site-footer nav{margin-top:10px}.quiet-note{font-size:calc(11px * var(--ui-scale,1))}.scope-note{font-size:calc(12px * var(--ui-scale,1));padding:12px 13px}.source-row{font-size:calc(12px * var(--ui-scale,1))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media print{.site-header,.site-footer,.settings,.page-heading,.dashboard-events,#saved-heading,#saved-projects,.report-form,.report-actions,.report-controls>h2,.toast{display:none!important}.page{max-width:none;padding:0}.dashboard-layout{display:block;border:0;min-height:0}.dashboard-content{padding:0}.report-controls{margin:0}.report-preview{border:0;margin:0;padding:0}.report-preview[hidden]{display:none!important}body{font-size:calc(12px * var(--ui-scale,1))}}

.settings>summary{display:none}@media(max-width:700px){.settings>summary{display:list-item;font-size:calc(13px * var(--ui-scale,1));font-weight:500;cursor:pointer}.settings[open]>summary{margin-bottom:22px}}
/* A wrapped title keeps one continuous touch target, including the line gap. */
.story-row h2>a,.project-row h2>a,.timeline h3>a{display:block}
@media(max-width:700px){.evidence-details .fact-table tr{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:4px 16px;padding:15px 0;border-bottom:1px solid var(--line)}.evidence-details .fact-table th{grid-column:1;grid-row:1;width:auto;padding:0;border:0}.evidence-details .fact-table td:nth-child(2){grid-column:1;grid-row:2;width:auto;padding:0;border:0;color:var(--muted)}.evidence-details .fact-table .fact-source{grid-column:2;grid-row:1 / span 2;width:auto;padding:0;border:0}}

/* Magazine: editorial images, existing typography and quiet borders. */
:root{--building:#ad5835;--design:#347c82;--planning:#7760a2;--adopted:#5b7394}
.status:before{background:var(--stage-color,var(--muted))}.building{--stage-color:var(--building)}.design{--stage-color:var(--design)}.planning{--stage-color:var(--planning)}.adopted{--stage-color:var(--adopted)}
.magazine-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:40px;padding:12px 0 48px;border-bottom:1px solid var(--line)}.feature{min-width:0}.feature-image{display:block;overflow:hidden;background:var(--soft);border-radius:3px}.feature-image img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;transition:transform .25s ease}.feature-image:hover img{transform:scale(1.015)}.feature h2{font:500 calc(30px * var(--ui-scale,1))/1.18 var(--heading);letter-spacing:-.7px;margin:14px 0}.feature h2 a{text-decoration:none;display:block}.feature h2 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.feature-copy>.story-meta{margin-top:18px;gap:15px}.feature-copy>p{max-width:600px;color:var(--muted);font-size:calc(14px * var(--ui-scale,1));line-height:1.7;margin:12px 0 16px}.image-credit{font-size:calc(9px * var(--ui-scale,1));color:var(--muted);margin:6px 0 0;line-height:1.5}.image-credit a{text-decoration:none}.feature-side{display:grid;gap:27px}.feature-small{display:grid;grid-template-columns:155px minmax(0,1fr);gap:0 20px;align-content:start}.feature-small>.feature-image{grid-column:1;grid-row:1;align-self:start}.feature-small>.image-credit{grid-column:1;grid-row:2}.feature-small>.feature-copy{grid-column:2;grid-row:1/span 2}.feature-small .feature-copy>.story-meta{margin-top:0;display:flex;flex-wrap:wrap;gap:5px 12px}.feature-small .feature-copy>.story-meta .status{font-size:calc(10px * var(--ui-scale,1))}.feature-small h2{font-size:calc(22px * var(--ui-scale,1));margin:10px 0}.feature-small .feature-copy>p{font-size:calc(12px * var(--ui-scale,1));line-height:1.65;margin:8px 0 13px}.read-link{font-size:calc(12px * var(--ui-scale,1));text-decoration:none;border-bottom:1px solid var(--line);padding-bottom:3px}.read-link:hover{border-color:var(--ink)}.news-lower{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:64px;padding-top:40px}.news-lower h2,.project-index h2{font:500 calc(22px * var(--ui-scale,1))/1.3 var(--heading);margin:0}.news-lower .story-row h2{font-size:calc(20px * var(--ui-scale,1))}.project-index-item{display:block;border-bottom:1px solid var(--line);padding:22px 0;text-decoration:none}.project-index-item>span:first-child{display:block;font:500 calc(18px * var(--ui-scale,1))/1.4 var(--heading);margin-bottom:6px}.project-index-item>.status{margin-right:12px}.project-index-item small{display:block;color:var(--muted);margin-top:9px;font-size:calc(11px * var(--ui-scale,1))}.project-index-item:hover>span:first-child{text-decoration:underline}.project-index>.quiet-note{margin:20px 0}.project-picture{margin:25px 0 0}.project-picture img{display:block;width:100%;height:auto;aspect-ratio:1.6;object-fit:cover;border-radius:3px}.project-picture figcaption{display:flex;justify-content:space-between;gap:10px;font-size:calc(10px * var(--ui-scale,1));color:var(--muted);margin-top:8px;flex-wrap:wrap}.project-picture figcaption a{text-decoration:none}.data-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:20px 0 0}.data-facts>div{padding:17px 0;border-top:1px solid var(--line)}.data-facts dt{font-size:calc(12px * var(--ui-scale,1));color:var(--muted)}.data-facts dd{font:500 calc(24px * var(--ui-scale,1))/1.3 var(--heading);margin:8px 0}.data-facts small,.data-facts a{display:block;font-size:calc(10px * var(--ui-scale,1));color:var(--muted);margin-top:5px}.data-facts a{text-decoration:none}.insight{padding:20px 0;border-bottom:1px solid var(--line)}.insight h3{font:500 calc(18px * var(--ui-scale,1))/1.4 var(--heading);margin:0 0 10px}.insight p,.boundary-note>p{font-size:calc(13px * var(--ui-scale,1));line-height:1.85;color:var(--muted)}.boundary-note .section-heading{align-items:start;gap:20px}.boundary-note .read-link{white-space:nowrap}
@media(max-width:1100px){.magazine-grid{gap:28px;grid-template-columns:1.35fr 1fr}.feature-small{grid-template-columns:110px minmax(0,1fr);gap:0 15px}.feature-small h2{font-size:calc(20px * var(--ui-scale,1))}.feature-small .feature-copy>p{display:none}.news-lower{gap:35px}}
@media(max-width:700px){.magazine-grid{display:block;padding:0 0 30px}.feature-lead h2{font-size:calc(28px * var(--ui-scale,1));letter-spacing:-.5px}.feature-copy>p{font-size:calc(13px * var(--ui-scale,1))}.feature-side{margin-top:30px;gap:24px}.feature-small{grid-template-columns:110px minmax(0,1fr);gap:0 17px;padding-top:24px;border-top:1px solid var(--line)}.feature-small .image-credit{font-size:calc(8px * var(--ui-scale,1))}.feature-small .feature-copy>p{display:none}.feature-small h2{font-size:calc(20px * var(--ui-scale,1));margin:9px 0 12px}.feature-small .story-meta>a{font-size:calc(10px * var(--ui-scale,1))}.feature-small .story-meta .status{display:none}.news-lower{display:block;padding-top:30px}.news-lower .section-heading{align-items:center;gap:10px}.news-lower .section-heading>.muted{font-size:calc(10px * var(--ui-scale,1))}.project-index{margin-top:35px;padding-top:30px;border-top:1px solid var(--line)}.data-facts{gap:0 16px}.data-facts dd{font-size:calc(21px * var(--ui-scale,1))}.project-picture figcaption{font-size:calc(9px * var(--ui-scale,1))}.boundary-note .section-heading{display:block}.boundary-note .read-link{display:inline-block;margin-top:12px}}
@media(prefers-reduced-motion:reduce){.feature-image img{transition:none}.feature-image:hover img{transform:none}}

@media(min-width:701px){.feature-side{align-content:start;gap:28px}.feature-small{display:block}.feature-small .feature-image img{aspect-ratio:2.35}.feature-small .feature-copy>.story-meta{margin-top:12px}.feature-small .feature-copy>p{display:none}.feature-small h2{font-size:calc(22px * var(--ui-scale,1));margin:10px 0 14px}}
/* The catalogue extends the established magazine typography and spacing. */
.object-collection{margin:64px 0;border-top:1px solid var(--line);padding-top:30px}.object-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 22px}.object-card{min-width:0}.object-photo{display:block;position:relative;overflow:hidden;aspect-ratio:8/5;background:var(--soft);margin-bottom:14px}.object-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease-out}.object-photo:hover img{transform:scale(1.025)}.object-photo-label{position:absolute;bottom:0;left:0;padding:4px 7px;font-size:calc(9px * var(--ui-scale,1));line-height:1.4;color:#fff;background:#222722bf}.object-card .story-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:5px;font-size:calc(10px * var(--ui-scale,1))}.object-card h3{font:500 calc(20px * var(--ui-scale,1))/1.2 var(--heading);margin:10px 0}.object-card h3 a{text-decoration:none}.object-card p{font-size:calc(11px * var(--ui-scale,1));line-height:1.6;color:var(--muted);margin:0 0 5px}.object-card>small{font-size:calc(10px * var(--ui-scale,1));color:var(--muted)}.status.completed{color:#667769}.project-external .actions{gap:8px;flex-wrap:wrap}.project-external .button{font-size:calc(12px * var(--ui-scale,1))}.page>.filters{overflow:auto;white-space:nowrap}.object-collection>.quiet-note{margin-top:24px}
@media(max-width:1000px){.object-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.object-collection{margin:40px 0}.object-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.object-card h3{font-size:calc(18px * var(--ui-scale,1))}.object-card .story-meta{justify-content:flex-start;gap:8px}.object-photo-label{font-size:calc(8px * var(--ui-scale,1))}.object-collection .section-heading{align-items:start;gap:12px}.object-collection .section-heading .read-link{font-size:calc(11px * var(--ui-scale,1));white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.object-photo img{transition:none}.object-photo:hover img{transform:none}}
.object-collection{border-top:0;padding-top:0;margin-top:48px}.object-collection>.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:24px}
/* One shared favourite control for the map, catalogue and project pages. */
.heart-button{display:inline-grid!important;place-items:center;width:46px;min-width:46px;height:46px;padding:10px!important;border:1px solid var(--line);border-radius:50%;background:#fff!important;color:var(--ink)!important;cursor:pointer;transition:background .15s,color .15s,transform .15s}.heart-button svg{width:22px;height:22px;display:block}.heart-button[aria-pressed=true]{background:#edf1eb!important}.heart-button[aria-pressed=true] svg{fill:currentColor}.heart-button:active{transform:scale(.94)}.object-photo-wrap{position:relative}.object-photo-wrap .heart-button{position:absolute;right:9px;top:9px;z-index:1;box-shadow:0 1px 5px #0001}.object-photo-wrap .object-photo{margin-bottom:14px}
@media(prefers-reduced-motion:reduce){.heart-button{transition:none}.heart-button:active{transform:none}}
/* Project participants reuse the portal typography, imagery and sourced detail rows. */
.participant-heading{margin:32px 0 30px;max-width:900px}.participant-heading .eyebrow{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);margin:0 0 12px}.participant-heading h1{font:500 clamp(34px,5vw,60px)/1.1 var(--heading);letter-spacing:-1.7px;margin:0 0 20px;overflow-wrap:anywhere}.participant-heading>p:last-child{font-size:calc(16px * var(--ui-scale,1));color:var(--muted);line-height:1.6;margin:18px 0 0}.participant-badges{display:flex;flex-wrap:wrap;gap:8px}.participant-badges>span{border:1px solid var(--line);background:var(--soft);border-radius:5px;padding:7px 11px;font-size:calc(14px * var(--ui-scale,1))}
.participant-row{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding:16px 0}.participant-row>div{display:flex;flex-direction:column;gap:5px;min-width:0}.participant-row>div>span{color:var(--muted);font-size:calc(13px * var(--ui-scale,1))}.participant-row>div>a{font:500 calc(20px * var(--ui-scale,1))/1.35 var(--heading);text-decoration:none}.participant-row>div>a:hover{text-decoration:underline}.participant-row small{font-size:calc(12px * var(--ui-scale,1));color:var(--muted);line-height:1.5}.participant-source{font-size:calc(13px * var(--ui-scale,1));white-space:nowrap;color:var(--muted);text-decoration:none;min-width:44px;padding:14px 0;text-align:right}
.context-photo{margin:32px 0}.context-photo img{display:block;width:100%;height:auto;max-height:440px;object-fit:cover;border-radius:7px}.context-photo figcaption{padding:12px 0 0;color:var(--muted);font-size:calc(12px * var(--ui-scale,1));line-height:1.6}.context-photo figcaption p{font-size:calc(14px * var(--ui-scale,1));margin:0 0 6px;color:var(--ink)}.context-photo figcaption a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.participant-filters{display:flex;align-items:flex-end;gap:16px;margin:32px 0}.participant-filters label{display:flex;flex-direction:column;gap:9px;min-width:0;flex:1}.participant-filters label>span{font-size:calc(13px * var(--ui-scale,1));color:var(--muted)}.participant-filters input,.participant-filters select{width:100%;min-height:48px;padding:12px 14px;font:16px var(--body);color:var(--ink);border:1px solid var(--line);border-radius:6px;background:#fff}.participant-filters>span{font-size:calc(14px * var(--ui-scale,1));color:var(--muted);padding:15px 0;white-space:nowrap}
.participant-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:32px}.participant-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fff;transition:border-color .16s ease,box-shadow .16s ease}.participant-card:hover{border-color:#b9beb4;box-shadow:0 3px 14px #25252108}.participant-card-photo{display:block;position:relative;aspect-ratio:1.9;overflow:hidden;background:var(--soft)}.participant-card-photo img{display:block;width:100%;height:100%;object-fit:cover}.participant-card-photo>span{position:absolute;bottom:0;left:0;background:#fffffff0;font-size:calc(10px * var(--ui-scale,1));line-height:1.6;padding:5px 8px;color:var(--muted);border-radius:0 4px 0 0}.participant-card-copy{padding:18px 18px 20px}.participant-card-copy>p{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);line-height:1.6;margin:0 0 9px}.participant-card-copy h2{font:500 calc(24px * var(--ui-scale,1))/1.25 var(--heading);letter-spacing:-.4px;margin:0 0 14px}.participant-card-copy h2 a{text-decoration:none;display:flex;justify-content:space-between;gap:12px}.participant-card-copy h2 a>span{color:var(--muted);font:18px var(--body);padding-top:3px}.participant-card-copy>span{font-size:calc(14px * var(--ui-scale,1));color:var(--muted)}
.participant-evidence,.photo-credits{border-top:1px solid var(--line);padding:20px 0;margin:32px 0;font-size:calc(14px * var(--ui-scale,1))}.participant-evidence summary,.photo-credits summary{cursor:pointer;font-size:calc(16px * var(--ui-scale,1));line-height:1.6}.participant-evidence summary>span{color:var(--muted);margin-left:10px}.participant-evidence ul{list-style:none;padding:0}.participant-evidence li{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 0;border-bottom:1px solid var(--line)}.participant-evidence strong{display:block;font-size:calc(13px * var(--ui-scale,1));margin-top:7px}.participant-evidence p{margin:5px 0 0;color:var(--muted);line-height:1.6}.photo-credits li{margin:12px 0;line-height:1.65}.participant-grid>[hidden]{display:none}
@media(max-width:1000px){.participant-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.site-header nav{gap:20px}.site-header nav a{font-size:calc(15px * var(--ui-scale,1))}.participant-grid{grid-template-columns:1fr;gap:20px}.participant-filters{flex-wrap:wrap;gap:14px}.participant-filters label:first-child{flex-basis:100%}.participant-filters label:nth-child(2){flex:1}.participant-heading h1{font-size:calc(36px * var(--ui-scale,1));letter-spacing:-1px}.participant-heading{margin:24px 0}.participant-row>div>a{font-size:calc(21px * var(--ui-scale,1))}.participant-card-copy h2{font-size:calc(25px * var(--ui-scale,1))}.context-photo img{max-height:300px}.project-participants .section-heading{align-items:start;gap:12px}.project-participants .section-heading h2{margin:0}.project-participants .section-heading .read-link{font-size:calc(13px * var(--ui-scale,1));white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.participant-card{transition:none}}
.participant-projects .object-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.participant-projects .object-card small{font-size:calc(14px * var(--ui-scale,1))}.participant-projects .object-card p{font-size:calc(16px * var(--ui-scale,1));line-height:1.55}
@media(max-width:700px){.participant-projects .object-grid{grid-template-columns:1fr;gap:32px}.participant-projects .object-photo{aspect-ratio:1.9}.participant-projects .object-card h3{font-size:calc(25px * var(--ui-scale,1))}.participant-projects .story-meta{font-size:calc(14px * var(--ui-scale,1))}.participant-projects .section-heading{align-items:baseline;gap:12px}.participant-projects .section-heading>a{white-space:nowrap;font-size:calc(13px * var(--ui-scale,1))}}
/* Lennuruum reference: one continuous app bar and a separate fullscreen menu. */
.site-header{position:relative;background:#1d2420;color:#f2f4ee;border:0;margin:0;padding:0;height:64px}.site-header .header-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:none;height:64px;padding:10px 16px;margin:0;gap:16px}.site-header .brand{color:inherit;font:600 calc(25px * var(--ui-scale,1))/1 var(--heading);letter-spacing:-.9px;white-space:nowrap;text-decoration:none}.header-actions{display:flex;align-items:center;gap:8px;margin-left:auto}.header-radar{position:relative;display:grid;place-items:center;width:44px;height:44px;text-decoration:none;color:inherit}.header-radar svg,.app-menu-trigger svg{width:22px;height:22px}.header-radar>[data-nav-saved-count]{position:absolute;top:0;right:0;min-width:17px;height:17px;display:grid;place-items:center;padding:0 4px;border-radius:10px;background:#eef1e8;color:#1d2420;font-size:calc(10px * var(--ui-scale,1));line-height:1}.app-menu-trigger{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:0;border-radius:8px;background:#29312a;color:inherit;cursor:pointer}.site-header :is(a,button):focus-visible{outline:2px solid #c2d7b4;outline-offset:3px}
body.app-menu-open{overflow:hidden}.app-menu-dialog{position:fixed;inset:0;z-index:2000;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;background:#1d2420;color:#f2f4ee;overflow-y:auto;overscroll-behavior:contain;animation:app-menu-enter .16s ease-out;font:calc(16px * var(--ui-scale,1))/1.5 var(--body)}.app-menu-dialog::backdrop{background:#1d2420}.app-menu-dialog.is-closing{animation:app-menu-exit .14s ease-in forwards}.app-menu-dialog .menu-shell{width:min(100%,560px);margin:0 auto;padding:16px 22px 24px;padding-top:max(16px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.menu-heading{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#1d2420;margin:0 0 20px}.menu-heading h2{font:600 calc(26px * var(--ui-scale,1))/1.2 var(--heading);margin:0;letter-spacing:-.5px}.menu-close{width:44px;height:44px;border:0;border-radius:8px;padding:11px;background:#29312a;color:inherit;cursor:pointer}.menu-close svg{width:22px;height:22px}.menu-account-section{margin:0 0 20px;padding:16px;border:1px solid #485146;border-radius:10px;background:#252d26}.menu-account-summary{display:flex;align-items:center;gap:12px;margin-bottom:15px}.menu-avatar{flex:0 0 42px;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#344033;color:#f2f4ee;font:500 18px var(--heading)}.menu-account-summary>div{min-width:0}.menu-account-summary strong{display:block;font-size:calc(17px * var(--ui-scale,1));font-weight:500;overflow-wrap:anywhere}.menu-account-summary>div>span{display:block;color:#afb8aa;font-size:calc(13px * var(--ui-scale,1));margin-top:3px;overflow-wrap:anywhere}.menu-profile-button{display:block;padding:10px 14px;background:#f2f4ee;color:#1d2420!important;border:1px solid #d3d9ce;border-radius:6px;text-decoration:none;text-align:center;font-size:calc(15px * var(--ui-scale,1));line-height:1.5;min-height:44px}.menu-navigation{display:grid;margin:0 0 24px}.menu-navigation>a{display:flex;align-items:center;gap:12px;min-height:56px;padding:13px 2px;border-bottom:1px solid #485146;color:inherit;text-decoration:none;font-size:calc(17px * var(--ui-scale,1));line-height:1.5}.menu-navigation>a>svg{width:22px;height:22px;flex:none}.menu-navigation>a[aria-current=page]{background:#ffffff08}.menu-navigation>a:hover{background:#ffffff0b}.menu-navigation>a>span:not(.nav-chevron){flex:1}.menu-navigation small{font-size:calc(13px * var(--ui-scale,1));color:#afb8aa}.menu-navigation .nav-chevron{font-size:calc(25px * var(--ui-scale,1));color:#8d9988;margin-left:2px}.menu-secondary{border-top:1px solid #485146;padding-top:12px}.menu-secondary>a{display:inline-flex;align-items:center;min-height:44px;color:#d9dfd2;text-decoration:none;font-size:calc(14px * var(--ui-scale,1))}.app-menu-credit{margin:20px 0 0!important;padding:0!important;color:#aab4a5;font-size:calc(12px * var(--ui-scale,1))!important;line-height:1.5!important;text-align:left}.app-menu-credit a{color:inherit;text-decoration:underline;text-underline-offset:3px}.app-menu-dialog :is(a,button):focus-visible{outline:2px solid #c2d7b4;outline-offset:3px}
@keyframes app-menu-enter{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes app-menu-exit{to{opacity:0;transform:translateY(4px)}}
.profile-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:72px;max-width:1020px;margin:36px 0 64px}.profile-summary{min-width:0}.profile-avatar{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#edf1e8;color:#293528;font:500 25px var(--heading);margin-bottom:20px}.profile-summary h2{font:500 calc(26px * var(--ui-scale,1))/1.25 var(--heading);overflow-wrap:anywhere;margin:0 0 8px}.profile-summary>p{color:var(--muted);font-size:calc(15px * var(--ui-scale,1));line-height:1.6;margin:0 0 24px;overflow-wrap:anywhere}.profile-stat{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin:24px 0}.profile-stat strong{font:500 calc(26px * var(--ui-scale,1))/1 var(--heading)}.profile-stat>span:last-child{margin-left:auto}.profile-summary .quiet-note{font-size:calc(13px * var(--ui-scale,1));line-height:1.65}.profile-form{display:flex;flex-direction:column;gap:10px}.profile-form h2,.profile-radar-settings h2{font:500 calc(24px * var(--ui-scale,1))/1.3 var(--heading);margin:0 0 16px}.profile-form>label{font-size:calc(15px * var(--ui-scale,1));margin-top:9px}.profile-form>label>span{color:var(--muted);font-size:calc(13px * var(--ui-scale,1))}.profile-form input,.profile-form select{width:100%;min-height:48px;border:1px solid var(--line);border-radius:6px;padding:12px 14px;background:#fff;color:var(--ink);font:16px var(--body)}.profile-form-actions{margin-top:16px;display:flex;align-items:center;flex-wrap:wrap;gap:14px}.profile-form-actions .button{min-height:46px;font-size:calc(15px * var(--ui-scale,1))}.profile-form-actions p{font-size:calc(14px * var(--ui-scale,1));line-height:1.6;margin:0;color:#476346}.profile-form-actions p[data-state=error]{color:#93452c}.profile-radar-settings{margin-top:48px;scroll-margin-top:24px;border-top:1px solid var(--line);padding-top:30px}.profile-radar-settings>p{font-size:calc(15px * var(--ui-scale,1));line-height:1.6;color:var(--muted)}.profile-radar-settings .settings{border:0;padding:0;width:100%;margin:20px 0}.profile-radar-settings .settings label{font-size:calc(15px * var(--ui-scale,1));min-height:38px}.profile-radar-settings .settings fieldset{padding-top:10px}.profile-radar-settings .settings input{width:18px;height:18px}.profile-radar-settings .settings legend{font-size:calc(15px * var(--ui-scale,1))}.profile-radar-settings .settings summary{font-size:calc(16px * var(--ui-scale,1))}
@media(max-width:700px){.site-header,.site-header .header-inner{height:64px}.site-header .header-inner{padding:10px 12px}.site-header .brand{font-size:calc(25px * var(--ui-scale,1))}.profile-layout{grid-template-columns:1fr;gap:30px;margin-top:28px}.profile-summary{display:grid;grid-template-columns:64px minmax(0,1fr);column-gap:16px;align-items:center}.profile-avatar{grid-row:1/3;margin:0}.profile-summary h2{font-size:calc(25px * var(--ui-scale,1));margin:0 0 4px}.profile-summary>p{margin:0;font-size:calc(14px * var(--ui-scale,1))}.profile-stat,.profile-summary .quiet-note{grid-column:1/-1}.profile-stat{margin:22px 0 16px}.profile-summary .quiet-note{margin:0}.profile-radar-settings{margin-top:36px}.app-menu-dialog .menu-shell{padding-left:22px;padding-right:22px}}
@media(prefers-reduced-motion:reduce){.app-menu-dialog,.app-menu-dialog.is-closing{animation:none}}
.app-menu-dialog .menu-close:is(:hover,:focus-visible){background:#344033;color:#f2f4ee}
/* Project sections keep overview, evidence and discovery in distinct reading blocks. */
.project-sections{display:flex;gap:25px;overflow-x:auto;white-space:nowrap;border-bottom:1px solid var(--line);padding:0;margin:0 0 28px;scrollbar-width:thin}.project-sections a{display:inline-flex;align-items:center;min-height:48px;font-size:calc(15px * var(--ui-scale,1));color:var(--muted);text-decoration:none;border-bottom:2px solid transparent}.project-sections a:hover,.project-sections a:focus-visible{color:var(--ink);border-bottom-color:var(--ink)}.project-overview,.project-data-section,[id$="-people"],[id$="-history"],.related-projects{scroll-margin-top:24px}.project-overview .project-picture{margin-top:0}.project-overview .project-intro>p{font-size:calc(17px * var(--ui-scale,1));line-height:1.7}.project-summary-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;margin:26px 0}.project-summary-facts>div{min-width:0}.project-summary-facts dt{font-size:calc(13px * var(--ui-scale,1));line-height:1.5;color:var(--muted);margin:0 0 9px}.project-summary-facts dd{font:500 calc(25px * var(--ui-scale,1))/1.25 var(--heading);margin:0;overflow-wrap:anywhere}.project-summary-facts dd small{display:block;font:calc(13px * var(--ui-scale,1))/1.5 var(--body);color:var(--muted);margin-top:5px}.project-summary-facts dd>a{font-size:calc(17px * var(--ui-scale,1));text-decoration:none}.project-summary-facts .status{font-size:calc(14px * var(--ui-scale,1));line-height:1.6}.project-data-section{margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.project-group-heading{font:500 calc(27px * var(--ui-scale,1))/1.25 var(--heading);margin:0 0 26px}.project-data-section .content-section:first-of-type{margin-top:0}.project-data-section .content-section>h3,.project-data-section .section-heading>h3{font:500 calc(22px * var(--ui-scale,1))/1.3 var(--heading);margin:0 0 16px}.project-facts-details{padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:24px 0}.project-facts-details>summary{cursor:pointer;font-size:calc(16px * var(--ui-scale,1));line-height:1.6}.project-facts-details>summary>span{font-size:calc(13px * var(--ui-scale,1));color:var(--muted);margin-left:10px}.project-facts-details .fact-table{margin-top:16px}
.related-projects{margin:56px 0 32px;padding-top:30px;border-top:1px solid var(--line)}.related-project-group{margin:0 0 38px}.related-project-group .section-heading{margin-bottom:8px}.related-project-group h2{font:500 calc(27px * var(--ui-scale,1))/1.25 var(--heading);margin:0}.related-group-note{font-size:calc(14px * var(--ui-scale,1));line-height:1.6;color:var(--muted);margin:0 0 20px;max-width:760px}.related-group-note a{color:inherit;text-underline-offset:3px}.related-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.related-project-card{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;min-width:0;transition:border-color .16s ease,box-shadow .16s ease}.related-project-card:hover{border-color:#b9beb4;box-shadow:0 3px 14px #25252108}.related-card-photo{position:relative;background:var(--soft)}.related-card-photo>a{display:block;position:relative;aspect-ratio:1.9;overflow:hidden}.related-card-photo img{display:block;width:100%;height:100%;object-fit:cover}.related-card-photo>a>span{position:absolute;bottom:0;left:0;padding:4px 7px;border-radius:0 4px 0 0;background:#fffffff0;color:var(--muted);font:calc(10px * var(--ui-scale,1))/1.5 var(--body)}.related-card-photo .heart-button{position:absolute;right:8px;top:8px}.related-card-copy{padding:17px}.related-card-copy .status{font-size:calc(13px * var(--ui-scale,1))}.related-card-copy h3{font:500 calc(23px * var(--ui-scale,1))/1.25 var(--heading);letter-spacing:-.4px;margin:10px 0 8px}.related-card-copy h3 a{text-decoration:none;color:var(--ink)}.related-card-copy h3 a:hover{text-decoration:underline}.related-card-copy>p{font-size:calc(14px * var(--ui-scale,1));line-height:1.5;color:var(--muted);margin:0 0 12px}.related-card-copy>small{display:block;font-size:calc(13px * var(--ui-scale,1));line-height:1.5;color:var(--ink)}
@media(max-width:700px){.project-sections{gap:20px;margin-bottom:24px}.project-sections a{font-size:calc(14px * var(--ui-scale,1));min-height:46px}.project-summary-facts{gap:14px 20px;grid-template-columns:1fr 1fr}.project-summary-facts>div:first-child{grid-column:1/-1}.project-summary-facts dt{font-size:calc(13px * var(--ui-scale,1));margin-bottom:6px}.project-summary-facts .status{font-size:calc(15px * var(--ui-scale,1))}.project-summary-facts dd{font-size:calc(26px * var(--ui-scale,1))}.project-overview .project-intro>p{font-size:calc(16px * var(--ui-scale,1))}.project-group-heading,.related-project-group h2{font-size:calc(25px * var(--ui-scale,1))}.related-project-grid{grid-template-columns:1fr;gap:14px}.related-project-card{display:grid;grid-template-columns:116px minmax(0,1fr)}.related-card-photo>a{height:100%;min-height:160px;aspect-ratio:auto}.related-card-copy{padding:14px}.related-card-copy h3{font-size:calc(21px * var(--ui-scale,1));margin:7px 0}.related-card-copy>p{font-size:calc(13px * var(--ui-scale,1));margin-bottom:9px}.related-card-copy .status{font-size:calc(12px * var(--ui-scale,1))}.related-card-copy>small{font-size:calc(13px * var(--ui-scale,1))}.related-card-photo .heart-button{right:7px;top:7px;width:40px;min-width:40px;height:40px;padding:9px!important}.related-group-note{font-size:calc(13px * var(--ui-scale,1))}.related-projects{margin-top:38px}.project-data-section{margin-top:32px;padding-top:26px}}
@media(prefers-reduced-motion:reduce){.related-project-card{transition:none}}
/* Image administration follows the existing project cards and profile forms. */
.auth-box{border:1px solid var(--line,#dedfd9);border-radius:10px;padding:24px;margin:28px 0}.auth-box h2{font-size:calc(23px * var(--ui-scale,1));margin:0 0 12px}.auth-box p{color:var(--muted,#74776f)}
.admin-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:end;margin:28px 0}.admin-toolbar label{display:grid;gap:7px;font-size:calc(14px * var(--ui-scale,1))}.admin-toolbar select{min-height:44px;max-width:310px;border:1px solid #dcded8;border-radius:7px;background:#fff;padding:8px 12px;font:inherit}.admin-toolbar .primary{margin-left:auto}
.admin-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.admin-image-card{border:1px solid #dedfd9;border-radius:10px;overflow:hidden}.admin-image-preview{aspect-ratio:1.65;background:#f4f5f1;display:grid;place-items:center;overflow:hidden}.admin-image-preview img{width:100%;height:100%;object-fit:cover}.admin-image-body{padding:18px}.admin-image-body h2{font-size:calc(23px * var(--ui-scale,1));margin:10px 0}.admin-image-body p{font-size:calc(14px * var(--ui-scale,1));line-height:1.55}.admin-image-body .actions{justify-content:space-between;margin-top:18px}.admin-state{font-size:calc(12px * var(--ui-scale,1));color:#62675e}.admin-image-body .quiet-note{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.image-editor{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:0;border:0;border-radius:12px;color:#22271f;box-shadow:0 20px 90px #0003}.image-editor::backdrop{background:#10170f80;backdrop-filter:blur(2px)}.image-editor form{padding:26px;display:grid;gap:17px}.editor-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.editor-heading h2{font-size:calc(27px * var(--ui-scale,1));margin:0}.editor-heading button{width:44px;height:44px;border:0;background:#f3f4f0;border-radius:50%;font-size:calc(28px * var(--ui-scale,1))}.image-editor label{display:grid;gap:7px;font-size:calc(14px * var(--ui-scale,1))}.image-editor input,.image-editor textarea,.image-editor select{width:100%;min-height:44px;box-sizing:border-box;background:#fff;color:inherit;border:1px solid #d9dcd5;border-radius:7px;padding:10px;font:inherit}.image-editor small{font-size:calc(12px * var(--ui-scale,1));color:#74776f}.editor-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor-actions{display:flex;justify-content:space-between;gap:12px;position:sticky;bottom:-26px;background:#fff;padding:16px 0;margin-bottom:-10px}.danger{color:#a73622!important}#admin-feedback,#editor-feedback{min-height:24px;font-size:calc(14px * var(--ui-scale,1))}#admin-workspace[hidden],#auth-admin-link[hidden],#auth-logout[hidden]{display:none}
@media(max-width:700px){.admin-image-grid{grid-template-columns:1fr}.admin-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:12px}.admin-toolbar select{width:100%;max-width:100%}.admin-toolbar .primary{margin:0}.image-editor{width:100%;height:100dvh;max-height:100dvh;max-width:100%;margin:0;border-radius:0}.image-editor form{padding:20px}.editor-actions{bottom:-20px}.auth-box{padding:20px}}
@media(prefers-reduced-motion:no-preference){.image-editor[open]{animation:profile-enter .16s ease-out}.admin-image-card{transition:border-color .15s ease}.admin-image-card:hover{border-color:#a5aca0}}
/* Source claims: one complete fact per card, with scope and citation kept together. */
.evidence-details>summary{display:flex;align-items:center;gap:12px;list-style:none;font-size:calc(18px * var(--ui-scale,1));font-weight:500;line-height:1.4;padding:20px 0;cursor:pointer}
.evidence-details>summary::-webkit-details-marker{display:none}.evidence-details>summary::marker{content:""}.evidence-details>summary:after{content:"";width:7px;height:7px;flex:0 0 7px;border-right:1.5px solid;border-bottom:1.5px solid;transform:rotate(45deg);margin:0 3px 4px 6px}.evidence-details[open]>summary:after{transform:rotate(225deg);margin-top:7px}
.evidence-count{margin-left:auto;font-size:calc(13px * var(--ui-scale,1));font-weight:400;color:var(--muted);font-variant-numeric:tabular-nums}
.claim-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:2px 0 24px;padding:0}
.claim-card{display:flex;flex-direction:column;min-width:0;padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff;overflow-wrap:break-word;word-break:normal}
.claim-card dt{font-size:calc(14px * var(--ui-scale,1));line-height:1.45;color:var(--muted);margin:0 0 7px}.claim-card dd{margin:0;min-width:0}.claim-card .claim-value{font:500 calc(26px * var(--ui-scale,1))/1.3 var(--heading);letter-spacing:-.5px;color:var(--ink);overflow-wrap:break-word}.claim-card .claim-value-text{font-size:calc(21px * var(--ui-scale,1));letter-spacing:-.2px;line-height:1.4}.claim-card .claim-scope{font-size:calc(14px * var(--ui-scale,1));line-height:1.55;color:var(--muted);padding-top:8px;padding-bottom:17px}
.claim-card .claim-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;margin-top:auto;font-size:calc(12px * var(--ui-scale,1));line-height:1.5;color:var(--muted)}
.claim-reference{flex:1;min-width:100px}.claim-reference a{display:inline-block;color:var(--ink);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.claim-reference a:hover{text-decoration-color:var(--ink)}.claim-reference span{display:block;margin-top:3px}.claim-meta time,.claim-undated{white-space:nowrap;font-variant-numeric:tabular-nums}
@media(max-width:700px){.claim-list{grid-template-columns:minmax(0,1fr);gap:12px}.claim-card{padding:17px 18px}.claim-card dt{font-size:calc(15px * var(--ui-scale,1))}.claim-card .claim-value{font-size:calc(27px * var(--ui-scale,1))}.claim-card .claim-value-text{font-size:calc(21px * var(--ui-scale,1))}.claim-card .claim-meta{font-size:calc(13px * var(--ui-scale,1))}.evidence-details>summary{font-size:calc(18px * var(--ui-scale,1))}}
@media(prefers-reduced-motion:no-preference){.evidence-details[open] .claim-list{animation:claims-enter .16s ease-out}}

@keyframes claims-enter{from{opacity:.5;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}

/* Shared route loading and accessible announcements. */
.route-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:3000;background:var(--ink);transform:scaleX(0);transform-origin:left;opacity:0;pointer-events:none;transition:transform .14s ease,opacity .14s ease}.route-progress.active{opacity:1;transform:scaleX(.8)}
#route-view{min-width:0}#route-view[aria-busy=true]{cursor:progress}#main:focus{outline:none}
@media(prefers-reduced-motion:reduce){.route-progress{transition:none}}

.route-status.route-error{position:fixed;left:20px;right:20px;bottom:20px;width:auto;height:auto;clip:auto;overflow:visible;z-index:3100;padding:12px 16px;background:var(--ink);color:var(--white);border-radius:8px;font-size:14px}

/* Quiet card hearts: 30px visual, 44px touch target, independent of UI size. */
.object-photo-wrap .heart-button,.related-card-photo .heart-button{width:44px!important;min-width:44px!important;height:44px!important;padding:12px!important;right:3px;top:3px;border:0;background:transparent!important;box-shadow:none;isolation:isolate}
.object-photo-wrap .heart-button::before,.related-card-photo .heart-button::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--white,#fff);box-shadow:0 1px 4px #0002;z-index:-1}
.object-photo-wrap .heart-button svg,.related-card-photo .heart-button svg{width:19px!important;height:19px!important}
.object-photo-wrap .heart-button[aria-pressed=true]::before,.related-card-photo .heart-button[aria-pressed=true]::before{background:var(--soft,#edf1eb)}

/* A quiet, shared footer for all portal pages. */
.site-footer{display:block;max-width:none;margin:0;padding:0;background:var(--soft);border-top:1px solid var(--line);color:var(--ink);font-size:calc(14px * var(--ui-scale,1))}
.footer-inner{max-width:1180px;margin:auto;padding:48px 32px 24px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;padding-bottom:40px}
.footer-brand{display:inline-flex;align-items:center;text-decoration:none!important}.footer-brand .brand-logo{display:block;width:auto;height:32px;max-width:100%}.footer-intro p{max-width:290px;color:var(--muted);margin:16px 0 0;font-size:calc(14px * var(--ui-scale,1))}
.site-footer .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:4px;margin:0}.footer-links h2{font-family:var(--body);font-size:calc(14px * var(--ui-scale,1));font-weight:600;letter-spacing:0;margin:0 0 10px}.footer-links a{display:inline-flex;align-items:center;min-height:40px;color:var(--muted)}.footer-links a:hover{color:var(--ink)}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font-size:calc(12px * var(--ui-scale,1))}.footer-bottom p{margin:0}.footer-credit{display:flex;gap:24px;flex-wrap:wrap}.footer-credit a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.route-status.route-error{white-space:normal;margin:0}
@media(max-width:700px){.footer-inner{padding:36px 20px 24px}.footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 24px;padding-bottom:28px}.footer-intro{grid-column:1/-1}.footer-intro p{max-width:none}.footer-bottom{display:block}.footer-credit{margin-top:14px;justify-content:space-between;gap:12px}.footer-links a{min-height:44px}}

.related-all{margin-top:20px}

/* Facts lead the project, followed by images and source-based history. */
.project-primary-section{margin-bottom:36px}.project-primary-section .project-group-heading{margin-bottom:20px}.project-primary-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--white)}
.project-primary-facts>div{min-width:0;padding:20px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}.project-primary-facts dt{font-size:calc(13px * var(--ui-scale,1));line-height:1.45;color:var(--muted);margin-bottom:10px}.project-primary-facts dd{font:500 calc(22px * var(--ui-scale,1))/1.3 var(--heading);letter-spacing:-.4px;margin:0 0 8px;overflow-wrap:anywhere}.project-primary-facts dd .status{font:inherit;letter-spacing:inherit;white-space:normal}.project-primary-facts small{display:block;color:var(--muted);font-size:calc(12px * var(--ui-scale,1));line-height:1.5;margin-top:4px}.primary-fact-source{display:inline-block;font-size:calc(12px * var(--ui-scale,1));color:var(--muted);margin-top:8px;text-decoration:underline;text-underline-offset:3px}
.project-media-section{margin-bottom:40px;scroll-margin-top:24px}.project-media-section .section-heading h2{margin:0}.project-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}.project-photo-grid .project-picture{min-width:0;margin:0}.project-photo-grid .project-picture img{width:100%;height:auto;aspect-ratio:1.5;object-fit:cover;border-radius:8px}.project-photo-grid figcaption{display:flex;flex-direction:column;align-items:flex-start;font-size:calc(12px * var(--ui-scale,1));line-height:1.5;gap:4px;overflow-wrap:anywhere}.gallery-location{border-top:1px solid var(--line);margin-top:24px;padding-top:12px}.gallery-location summary{min-height:44px;cursor:pointer;color:var(--muted);display:list-item}.project-data-section>.project-intro{margin-bottom:28px}
@media(max-width:900px){.project-primary-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.project-primary-section{margin-bottom:28px}.project-primary-facts>div{padding:16px 14px}.project-primary-facts dd{font-size:calc(20px * var(--ui-scale,1));letter-spacing:-.3px}.project-primary-facts dt{font-size:calc(13px * var(--ui-scale,1))}.project-primary-facts small,.primary-fact-source{font-size:calc(12px * var(--ui-scale,1))}.project-photo-grid{gap:18px 12px}}
.inspector .project-primary-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.inspector .project-primary-facts>div{padding:16px 14px}.inspector .project-primary-facts dd{font-size:calc(20px * var(--ui-scale,1))}

.gallery-shared-note{margin:20px 0 0}
