@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Libre+Caslon+Display&display=swap');

/* Shared visual language. Original vector linework; no new photographic assets. */
.atlas-design {
  --atlas-paper:#f4f0e8; --atlas-sheet:#fffdf8; --atlas-ink:#203f38;
  --atlas-green:#174f45; --atlas-rule:#cdd3c8; --atlas-muted:#566b62;
  --atlas-display:'Libre Caslon Display',Georgia,'Times New Roman',serif;
  --atlas-numeral:'JetBrains Mono',ui-monospace,monospace;
  --atlas-accent:#276b5a; --atlas-tint:#e7eee5;
  background:var(--atlas-paper);color:var(--atlas-ink);
}
.atlas-design [data-design-category="Energy"]{--atlas-accent:#426948;--atlas-tint:#e7eee3}
.atlas-design [data-design-category="Medical"]{--atlas-accent:#366a89;--atlas-tint:#e8eff4}
.atlas-design [data-design-category="Cultural"]{--atlas-accent:#785573;--atlas-tint:#f0e8ed}
.atlas-design [data-design-category="Environmental"]{--atlas-accent:#477348;--atlas-tint:#e6eee2}
.atlas-design [data-design-category="Transport"]{--atlas-accent:#3b647c;--atlas-tint:#e6edf0}
.atlas-design [data-design-category="Research and Innovation"]{--atlas-accent:#6a5a91;--atlas-tint:#ece9f3}
.atlas-design [data-design-category="Industry and Manufacturing"]{--atlas-accent:#8b623e;--atlas-tint:#f1e9e0}
.atlas-design [data-design-category="Housing and Urban Development"]{--atlas-accent:#8a5c50;--atlas-tint:#f1e8e2}
.atlas-design :is(input,select,button){accent-color:var(--atlas-green)}
.atlas-design :is(a,button,input,select,summary):focus-visible{outline:2px solid #315f96;outline-offset:4px}
.atlas-design :is(time,.completion-value,.coordinates,.timeline-year-count){font-variant-numeric:tabular-nums}

/* Editorial pages retain their current width, controls and document order. */
.atlas-design .top{background:var(--atlas-sheet);border-bottom:1px solid var(--atlas-rule)}
.atlas-design .top .brand{font:400 28px/1.1 var(--atlas-display);letter-spacing:-.035em}
.atlas-design .top nav a{position:relative;text-decoration:none}
.atlas-design .top nav a[aria-current]::after{content:'';position:absolute;bottom:-9px;left:0;right:0;height:2px;background:var(--atlas-green)}
.atlas-design .main>h1,.atlas-design .news-masthead h1{font-family:var(--atlas-display);font-weight:400;letter-spacing:-.025em}
.atlas-design .main>h1{font-size:clamp(42px,5.5vw,68px);max-width:900px}
.atlas-design .main>p.eyebrow{font-size:11px;letter-spacing:.16em}
.atlas-design .view-switch a{border-radius:5px}
.atlas-design .index-form{border-radius:7px;border-color:var(--atlas-rule);box-shadow:0 2px 0 #203f3804}
.atlas-design .project-list li{position:relative;padding:21px 0;border-color:var(--atlas-rule)}
.atlas-design .project-list a{font-size:21px;font-weight:550;letter-spacing:-.02em;text-decoration:none}
.atlas-design .project-list a:hover{text-decoration:underline;text-decoration-thickness:1px}
.atlas-design .project-list .project-meta{font-size:13px}
.atlas-design .category-note{position:relative;isolation:isolate;border-radius:6px;padding:25px 28px;background:#e8ede3;border-block:1px solid #c8d5c6;overflow:hidden}
.atlas-design .category-note::after{content:'';position:absolute;z-index:-1;right:-35px;top:0;width:40%;height:100%;background:url('/atlas-weave.svg') right center/auto 160px;opacity:.18;mask-image:linear-gradient(90deg,transparent,#000)}
.atlas-design .category-quote{border-left-width:2px;border-color:#91a98b}
.atlas-design .category-quote p{font:400 26px/1.35 var(--atlas-display)}
.atlas-design .side{border-radius:6px;background:linear-gradient(145deg,#e8eee4,var(--atlas-sheet) 70%);border-top:3px solid var(--atlas-accent)}
.atlas-design .side h2{font:400 28px/1.1 var(--atlas-display);padding-bottom:16px;border-bottom:1px solid var(--atlas-rule)}
.atlas-design .side dt{font-size:11px;letter-spacing:.11em}
.atlas-design .side dd{line-height:1.5}
.atlas-design .article{border-radius:6px;border-color:var(--atlas-rule);background:var(--atlas-sheet)}
.atlas-design .article>h2{font:400 30px/1.15 var(--atlas-display)}
.atlas-design .footer{position:relative;border-color:var(--atlas-rule);background:var(--atlas-sheet)}
.atlas-design .footer::before{content:'';display:block;height:18px;background:url('/atlas-weave.svg') center/240px 80px;opacity:.21;margin:-28px 0 28px;border-bottom:1px solid var(--atlas-rule)}

/* News: compact masthead, editorial hierarchy, category colour in existing labels. */
.atlas-design .news-masthead{position:relative;isolation:isolate;padding-bottom:22px;margin-bottom:24px;border-bottom:1px solid var(--atlas-green)}
.atlas-design .news-masthead::after{content:'';position:absolute;z-index:-1;pointer-events:none;right:0;top:-12px;width:300px;height:120px;background:url('/atlas-weave.svg') right center/360px 120px;opacity:.28;mask-image:linear-gradient(90deg,transparent,#000)}
.atlas-design .news-masthead h1{font-size:clamp(50px,6.5vw,76px);margin-bottom:12px;max-width:70%}
.atlas-design .news-masthead .lead{font-size:16px;max-width:650px}
.atlas-design .news-story{border-radius:5px;box-shadow:0 3px 0 #243f3404;transition:border-color .18s,box-shadow .18s}
.atlas-design .news-story h2{font-family:var(--atlas-display);font-weight:400;font-size:30px;line-height:1.13;letter-spacing:-.01em}
.atlas-design .news-lead{background:#174b40;border-color:#174b40;padding:30px}
.atlas-design .news-lead h2{font-size:clamp(34px,3.9vw,48px);line-height:1.08}
.atlas-design .news-lead p{font-size:17px;line-height:1.65}
.atlas-design .news-lead-label{font-family:var(--atlas-numeral);font-size:10px;letter-spacing:.08em;margin-bottom:22px}
.atlas-design .news-support h2{font-size:28px}
.atlas-design .news-story-wide h2{font-size:34px}
.atlas-design .news-links a{border-radius:4px}
.atlas-design .news-category-label{border-radius:3px;letter-spacing:.035em}
.atlas-design .news-section-label{letter-spacing:.13em;font-size:11px}
.atlas-design .news-section-label::after{background:linear-gradient(90deg,#779b83,#c5cec1)}
.atlas-design .news-meta time{font-family:var(--atlas-numeral);font-size:11px;letter-spacing:-.03em}

/* Map: instrument-like controls, category-specific detail panel, same interactions. */
.atlas-design .app-shell{--background:#f4f0e8;--panel:rgba(255,253,248,.97);--text:#203f38;--green:#174f45;--muted:#566b62;--border:#cdd3c8;--shadow:0 8px 30px #203f3810,0 1px 3px #203f3808}
.atlas-design .panel{border-radius:10px}
.atlas-design .toolbar .brand h1{font-family:var(--atlas-display);font-size:31px;letter-spacing:-.035em}
.atlas-design .toolbar .brand-icon{color:var(--racing-green-soft,#cfe0da)}
.atlas-design .toolbar .category-wrap,.atlas-design .toolbar .search-wrap input{border-radius:5px;background:var(--atlas-sheet)}
.atlas-design .button{border-radius:5px}
.atlas-design .project-card{position:relative;isolation:isolate;border-top:3px solid var(--atlas-accent)}
.atlas-design .project-card::before{content:'';position:absolute;z-index:-1;pointer-events:none;right:0;top:36px;width:72%;height:100px;background:url('/atlas-weave.svg') right/300px 100px;opacity:.17;mask-image:linear-gradient(90deg,transparent,#000)}
.atlas-design .project-card .category-label{color:var(--atlas-accent);letter-spacing:.11em;font-size:10px}
.atlas-design .project-card>h2{font:400 35px/1.06 var(--atlas-display);letter-spacing:-.025em;margin-bottom:13px}
.atlas-design .project-card .category-glyph{border-radius:6px}
.atlas-design .project-card .profile-section{border-color:var(--atlas-rule)}
.atlas-design .project-card .profile-section>h3{text-transform:none;letter-spacing:-.01em;font:400 23px/1.2 var(--atlas-display);color:var(--atlas-ink)}
.atlas-design .project-card .completion-block{background:var(--atlas-tint);border:0;border-left:2px solid var(--atlas-accent);border-radius:0 5px 5px 0;padding:16px}
.atlas-design .project-card .completion-value{font:400 25px/1.3 var(--atlas-display)}
.atlas-design .news-heading h2{font:400 27px/1.1 var(--atlas-display);letter-spacing:-.015em}
.atlas-design .news-heading{border-bottom:1px solid var(--atlas-rule);padding-bottom:14px}
.atlas-design .news-column .news-item h3{font-family:var(--atlas-display);font-size:24px;line-height:1.15;font-weight:400}
.atlas-design .news-column .news-filter select{border-radius:4px}
.atlas-design .mobile-news-strip-title{font-family:var(--atlas-display)}

/* Existing timeline colour/status encoding remains intact. */
.atlas-design .timeline-year h2,.atlas-design .timeline-column h2{font-family:var(--atlas-display)}
.atlas-design .timeline-year-nav{border-radius:5px}
.atlas-design .timeline-item{border-radius:5px}
.atlas-design .timeline-tile-heading .timeline-title{font-family:var(--atlas-display);font-size:20px;font-weight:400;line-height:1.13}

/* About is the most expressive surface; policies retain their plainer layout. */
.atlas-design .info-page{background:var(--atlas-paper)}
.atlas-design .info-article h1{font:400 clamp(44px,7vw,72px)/1.02 var(--atlas-display);letter-spacing:-.025em}
.atlas-design .info-article h2{text-transform:none;letter-spacing:-.01em;font:400 30px/1.15 var(--atlas-display)}
.atlas-design .info-article:has(.about-intro){position:relative;isolation:isolate;border-radius:6px;border-top:3px solid var(--atlas-green);padding-top:40px}
.atlas-design .info-article:has(.about-intro)::before{content:'';position:absolute;z-index:-1;pointer-events:none;right:0;top:0;width:55%;height:190px;background:url('/atlas-weave.svg') right center/570px 190px;opacity:.22;mask-image:linear-gradient(90deg,transparent,#000)}
.atlas-design .about-intro{font-size:20px;line-height:1.6;color:#294c40;padding-bottom:25px;border-bottom:1px solid var(--atlas-rule);margin-bottom:30px}
.atlas-design .about-intro::first-letter{font:400 65px/.85 var(--atlas-display);float:left;padding:7px 9px 0 0;color:var(--atlas-green)}

@media(hover:hover){
  .atlas-design .news-story:hover{box-shadow:0 7px 22px #203f380c}
  .atlas-design .project-list li:hover{background:linear-gradient(90deg,#e6ede380,transparent 65%)}
}
@media(prefers-reduced-motion:no-preference){
  .atlas-design .project-card{animation:atlas-panel-arrive .24s cubic-bezier(.2,.7,.2,1) both}
  .atlas-design .news-column,.atlas-design .route-card{animation:atlas-panel-arrive .2s ease-out both}
  @keyframes atlas-panel-arrive{from{opacity:.6;transform:translateX(9px)}to{opacity:1;transform:translateX(0)}}
}
@media(max-width:720px){
  .atlas-design .top .brand{font-size:25px}
  .atlas-design .top nav a[aria-current]::after{display:none}
  .atlas-design .main>h1{font-size:43px;line-height:1.06}
  .atlas-design .news-masthead::after{width:130px;height:64px;top:-6px;background-size:192px 64px;opacity:.22}
  .atlas-design #atlas-news-page .news-masthead{margin-bottom:12px}
  .atlas-design #atlas-news-page .news-masthead h1{font:400 44px/1 var(--atlas-display);letter-spacing:-.025em;margin-bottom:0;max-width:78%}
  .atlas-design #atlas-news-page .news-story h2{font:400 28px/1.08 var(--atlas-display);letter-spacing:-.01em}
  .atlas-design #atlas-news-page .news-lead h2{font-size:33px}
  .atlas-design #atlas-news-page .news-story{box-shadow:none}
  .atlas-design .project-list a{font-size:19px}
  .atlas-design .category-note{padding:20px}
  .atlas-design .category-quote p{font-size:24px}
  .atlas-design .toolbar .brand h1{font-size:25px;letter-spacing:-.035em}
  .atlas-design .project-card>h2{font-size:32px}
  .atlas-design .info-article:has(.about-intro){padding-top:28px}
  .atlas-design .about-intro{font-size:18px}
}
@media(prefers-reduced-motion:reduce){
  .atlas-design .project-card,.atlas-design .news-column,.atlas-design .route-card{animation:none}
  .atlas-design .news-story{transition:none}
}

/* Preserve the established dark map rail, with contextual contrast and category details. */
.atlas-design .news-rail{background:#174b40}
.atlas-design .news-rail .project-card{border-top:3px solid var(--atlas-accent)}
.atlas-design .news-rail .project-card::before{filter:brightness(2);opacity:.25}
.atlas-design .news-rail .project-card .category-label{color:var(--racing-green-soft)}
.atlas-design .news-rail .project-card .profile-section{border-color:#cfe0da38}
.atlas-design .news-rail .project-card .profile-section>h3{color:var(--racing-cream)}
.atlas-design .news-rail .project-card>.muted{color:var(--racing-cream)}
.atlas-design .news-rail .project-card .completion-block{border-left:2px solid var(--atlas-accent)}
.atlas-design .news-rail .project-card .completion-block :is(h3,p,a,summary){color:var(--atlas-ink)}
.atlas-design .news-rail .project-card .profile-section.completion-block>h3{color:var(--atlas-ink)}
.atlas-design .news-rail .news-heading{border-color:#cfe0da38}
.atlas-design .news-rail .project-card{inset:auto;width:auto;max-height:none;overflow:visible}
.atlas-design .news-rail .project-card .category-glyph{background:var(--atlas-tint)!important;color:var(--atlas-accent)!important}
.atlas-design .news-rail .project-card .status-chip{color:var(--racing-cream)!important;background:#ffffff12!important;border:1px solid #cfe0da55}

/* A stable project title, followed by a separate milestone label. */
.atlas-design .timeline-name{display:flex;flex:1;min-width:0;flex-direction:column;gap:5px}
.atlas-design .timeline-milestone{display:block;font:500 12px/1.35 ui-sans-serif,system-ui,sans-serif;color:#52685e;letter-spacing:0}
.atlas-design .timeline-programme{margin:18px 0;padding-top:15px;border-top:1px solid #c6d4ca}
.atlas-design .timeline-programme h4{margin:0 0 8px;font:600 11px/1.4 ui-sans-serif,system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#52685e}
.atlas-design .timeline-programme ul{list-style:none;margin:0;padding:0}
.atlas-design .timeline-programme li{font-size:13px;padding:0;margin:0;border-bottom:1px solid #dce3d8}
.atlas-design .timeline-programme a{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;font-size:13px;text-decoration:none}
.atlas-design .timeline-programme strong{font-weight:600;white-space:nowrap}
.atlas-design .timeline-programme [aria-current]{border-left:2px solid var(--timeline-category);padding-left:9px}
.atlas-design .timeline-programme a:hover span{text-decoration:underline}
