/* Living Atlas page system
   Extends atlas.css for the full Work index and shared case-study grammar.
   Project identity is expressed through evidence and a small accent variable, not a separate mini-brand. */

/* ---------- Work / full atlas ---------- */
.work-page .atlas-nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:5px}
.work-hero{padding-top:150px;padding-bottom:clamp(5rem,8vw,8rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;border-bottom:1px solid var(--ink)}
.work-hero .section-code{grid-column:1/3;margin-top:.8rem}
.work-hero-copy{grid-column:3/10}
.work-hero-copy h1{margin:0;font:400 clamp(4.4rem,7.8vw,8.6rem)/.86 var(--serif);letter-spacing:-.058em}
.work-hero-copy h1 em{font-style:italic;color:var(--rust)}
.work-hero-note{grid-column:10/13;align-self:end;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem;line-height:1.75}
.work-hero-note p{margin:0}

.atlas-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;padding-block:3rem;border-bottom:1px solid var(--line)}
.atlas-intro>p:first-child{grid-column:1/4;margin:0;font:500 .66rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--rust)}
.atlas-intro>p:last-child{grid-column:5/11;margin:0;font:400 clamp(1.35rem,2.1vw,2rem)/1.42 var(--serif)}

.full-atlas .work-heading{padding-top:clamp(5rem,8vw,8rem)}
.full-atlas .work-system{padding-top:1rem}
.coordinate-note{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;padding:1.1rem 0;border-bottom:1px solid var(--line-soft);font-size:.72rem;color:var(--muted)}
.coordinate-note span:nth-child(1){grid-column:1/4}.coordinate-note span:nth-child(2){grid-column:5/8}.coordinate-note span:nth-child(3){grid-column:9/13}

.transfer-section{background:var(--forest);color:#f4efe6;padding-block:clamp(7rem,11vw,11rem)}
.transfer-heading{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;align-items:start;margin-bottom:4rem}
.transfer-heading .section-code{grid-column:1/3}.transfer-heading h2{grid-column:3/9;margin:0;font:400 clamp(3.2rem,5.8vw,6.2rem)/.94 var(--serif);letter-spacing:-.05em}.transfer-heading>p:last-child{grid-column:10/13;margin:0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.28);color:#ccd6cf;line-height:1.75}
.transfer-list{margin-left:calc((100% / 12) * 2);border-top:1px solid rgba(255,255,255,.24)}
.transfer-item{display:grid;grid-template-columns:1.05fr 72px 1.05fr 1.4fr;gap:1.5rem;align-items:center;padding:1.5rem 0;border-bottom:1px solid rgba(255,255,255,.24)}
.transfer-item strong{font:400 clamp(1.35rem,2.2vw,2.1rem) var(--serif)}
.transfer-item .transfer-arrow{text-align:center;color:#efb39f;font-size:1.4rem}
.transfer-item p{margin:0;color:#c7d0c9;font-size:.86rem;line-height:1.65}

.matrix-section{padding-block:clamp(7rem,11vw,11rem)}
.matrix-heading{display:grid;grid-template-columns:.9fr 1.4fr .7fr;gap:3rem;align-items:end;margin-bottom:3rem}
.matrix-heading h2{margin:0;font:400 clamp(3rem,5vw,5.4rem)/.96 var(--serif);letter-spacing:-.045em}.matrix-heading>p:last-child{margin:0;color:var(--muted);line-height:1.7}
.practice-matrix{width:100%;border-collapse:collapse;border-top:1px solid var(--ink)}
.practice-matrix th,.practice-matrix td{padding:1.2rem 1rem;border-bottom:1px solid var(--line);text-align:center;font-size:.76rem}
.practice-matrix th:first-child,.practice-matrix td:first-child{text-align:left;padding-left:0}
.practice-matrix thead th{font:500 .63rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.practice-matrix tbody th{font:500 .86rem var(--sans)}
.matrix-dot{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--rust)}
.matrix-dot.secondary{width:7px;height:7px;background:var(--blue);opacity:.65}
.matrix-key{display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;color:var(--muted);font-size:.7rem}.matrix-key span{display:flex;align-items:center;gap:.4rem}

.work-close{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;padding-block:clamp(7rem,11vw,11rem);border-top:1px solid var(--ink)}
.work-close .section-code{grid-column:1/3}.work-close blockquote{grid-column:3/10;margin:0;font:400 clamp(3.2rem,5.7vw,6.2rem)/.95 var(--serif);letter-spacing:-.05em}.work-close>div:last-child{grid-column:10/13;padding-top:1rem;border-top:1px solid var(--line);color:var(--muted);line-height:1.75}.work-close a{font-weight:600;text-underline-offset:5px}

/* ---------- Shared case-study grammar ---------- */
.atlas-case{--case-accent:var(--rust);--case-dark:var(--forest-2);background:var(--paper);color:var(--ink)}
.atlas-case .atlas-nav a[href="work.html"]{text-decoration:underline;text-underline-offset:5px}
.case-atlas-hero{min-height:92svh;padding-top:124px;padding-bottom:3rem;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;align-items:end;border-bottom:1px solid var(--line)}
.case-hero-copy{grid-column:1/7;align-self:center;padding:4rem 0}
.case-hero-copy .section-code{color:var(--case-accent)}
.case-hero-copy h1{max-width:900px;margin:1rem 0 1.4rem;font:400 clamp(4.1rem,7vw,7.6rem)/.88 var(--serif);letter-spacing:-.058em}
.case-hero-copy .case-lede{max-width:670px;margin:0;font:400 clamp(1.35rem,2vw,1.9rem)/1.42 var(--serif)}
.case-hero-media{grid-column:8/13;margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:flex-end;min-height:580px;overflow:hidden}
.case-hero-media img{width:100%;height:min(70vh,720px);object-fit:cover;background:#d8d2c7}
.case-hero-media figcaption{padding:.8rem 0 0;color:var(--muted);font-size:.68rem;line-height:1.55}
.case-coordinate{grid-column:1/13;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink);margin-top:2rem}
.case-coordinate>div{padding:1rem 1.2rem 0 0;border-right:1px solid var(--line)}
.case-coordinate>div+div{padding-left:1.2rem}.case-coordinate>div:last-child{border-right:0}
.case-coordinate dt{font:500 .61rem var(--mono);text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.case-coordinate dd{margin:.4rem 0 0;font:400 1.05rem/1.35 var(--serif)}

.case-grammar{position:sticky;z-index:30;top:76px;background:rgba(242,238,229,.94);backdrop-filter:blur(16px);border-bottom:1px solid var(--line-soft)}
.case-grammar-inner{display:flex;gap:1.3rem;align-items:center;overflow-x:auto;scrollbar-width:none;padding:.8rem 0}.case-grammar-inner::-webkit-scrollbar{display:none}
.case-grammar a{flex:0 0 auto;text-decoration:none;font:500 .62rem var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.case-grammar a:hover{color:var(--case-accent)}

.case-chapter{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;padding-block:clamp(6.5rem,10vw,10rem);border-bottom:1px solid var(--line)}
.case-rail{grid-column:1/4;position:sticky;top:150px;align-self:start;padding-right:2rem}.case-rail span{display:block;margin-bottom:.8rem;font:500 .62rem var(--mono);text-transform:uppercase;letter-spacing:.1em;color:var(--case-accent)}.case-rail p{max-width:240px;margin:0;color:var(--muted);font-size:.78rem;line-height:1.6}
.case-body{grid-column:4/11}.case-body.wide{grid-column:4/13}.case-body h2{max-width:900px;margin:0 0 2rem;font:400 clamp(3rem,5.3vw,5.8rem)/.96 var(--serif);letter-spacing:-.048em}.case-body>p{max-width:760px;color:var(--muted);font-size:1rem;line-height:1.85}.case-body .case-lead{max-width:850px;color:var(--ink);font:400 clamp(1.55rem,2.45vw,2.4rem)/1.35 var(--serif)}

.case-contributions{display:grid;grid-template-columns:1fr 1fr;margin-top:3.5rem;border-top:1px solid var(--ink);border-left:1px solid var(--ink)}
.case-contributions article{padding:1.6rem;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink)}.case-contributions span{font:500 .62rem var(--mono);color:var(--case-accent)}.case-contributions h3{margin:.7rem 0;font:400 1.7rem var(--serif)}.case-contributions p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.7}
.attribution-note{margin-top:1.5rem!important;font-size:.77rem!important;color:var(--muted)!important}

.case-system-band{padding-block:clamp(7rem,11vw,11rem);background:var(--case-dark);color:#f5f0e8}
.case-system-heading{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;margin-bottom:4rem}.case-system-heading .section-code{grid-column:1/3;color:#efb39f}.case-system-heading h2{grid-column:3/9;margin:0;font:400 clamp(3.1rem,5.6vw,6rem)/.95 var(--serif);letter-spacing:-.05em}.case-system-heading>p:last-child{grid-column:10/13;margin:0;padding-top:1rem;border-top:1px solid rgba(255,255,255,.28);color:#cad2cc;line-height:1.7}
.case-system-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.3);border-left:1px solid rgba(255,255,255,.3)}
.case-system-grid article{min-height:240px;padding:1.5rem;border-right:1px solid rgba(255,255,255,.3);border-bottom:1px solid rgba(255,255,255,.3);display:flex;flex-direction:column}.case-system-grid span{font:500 .61rem var(--mono);color:#efb39f}.case-system-grid h3{margin:auto 0 .7rem;font:400 1.7rem/1.1 var(--serif)}.case-system-grid p{margin:0;color:#c9d0ca;font-size:.82rem;line-height:1.65}

.case-evidence-band{padding-block:clamp(6rem,9vw,9rem);background:var(--paper-light)}
.case-evidence-heading{display:grid;grid-template-columns:.7fr 1.4fr .7fr;gap:3rem;align-items:end;margin-bottom:3rem}.case-evidence-heading h2{margin:0;font:400 clamp(3rem,5vw,5.4rem)/.96 var(--serif);letter-spacing:-.045em}.case-evidence-heading>p:last-child{margin:0;color:var(--muted);line-height:1.7}
.case-media-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.case-media-grid figure{margin:0}.case-media-grid figure.wide{grid-column:1/-1}.case-media-grid img{width:100%;height:clamp(320px,42vw,620px);object-fit:cover;background:#d8d2c7}.case-media-grid .wide img{height:clamp(380px,52vw,720px)}.case-media-grid figcaption{max-width:75ch;margin-top:.7rem;color:var(--muted);font-size:.72rem;line-height:1.6}

.case-outcomes{display:grid;margin-top:3rem;border-top:1px solid var(--line)}.case-outcomes>div{display:grid;grid-template-columns:.75fr 1.25fr;gap:3rem;padding:1.2rem 0;border-bottom:1px solid var(--line)}.case-outcomes strong{font:400 1.45rem var(--serif)}.case-outcomes p{margin:0;color:var(--muted);line-height:1.7}

.case-transfer{padding-block:clamp(7rem,11vw,11rem);background:var(--case-accent);color:#fff}
.case-transfer-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px}.case-transfer .section-code{grid-column:1/3;color:rgba(255,255,255,.76)}.case-transfer blockquote{grid-column:3/10;margin:0;font:400 clamp(3.1rem,5.6vw,6rem)/.95 var(--serif);letter-spacing:-.05em}.case-transfer-copy{grid-column:10/13;padding-top:1rem;border-top:1px solid rgba(255,255,255,.45)}.case-transfer-copy p{margin-top:0;line-height:1.75}.case-transfer-copy a{color:#fff;font-weight:600;text-underline-offset:5px}

.case-sources{padding-block:2rem 4rem;border-top:1px solid var(--line);color:var(--muted);font-size:.76rem}.case-sources strong{color:var(--ink)}.case-sources a{text-underline-offset:4px}

/* Project accents only. */
.case-iln{--case-accent:#416d82;--case-dark:#193748}
.case-hawaii{--case-accent:#a95339;--case-dark:#26342c}
.case-storimap{--case-accent:#8b5b8f;--case-dark:#251a2b}
.case-roman{--case-accent:#655b9a;--case-dark:#202344}
.case-webb{--case-accent:#b9613e;--case-dark:#2b1712}
.case-storimap .case-hero-media img,.case-webb .case-hero-media img{filter:saturate(1.05) contrast(1.02)}

@media(max-width:980px){
  .work-hero .section-code{grid-column:1/4}.work-hero-copy{grid-column:4/13}.work-hero-note{grid-column:4/11;margin-top:2.5rem}
  .atlas-intro>p:first-child{grid-column:1/4}.atlas-intro>p:last-child{grid-column:4/13}
  .transfer-list{margin-left:0}.transfer-item{grid-template-columns:1fr 42px 1fr}.transfer-item p{grid-column:1/-1}
  .matrix-heading{grid-template-columns:1fr}.matrix-heading>p:last-child{max-width:650px}
  .case-atlas-hero{min-height:auto}.case-hero-copy{grid-column:1/8}.case-hero-media{grid-column:8/13;min-height:460px}.case-coordinate{grid-template-columns:1fr 1fr}.case-coordinate>div:nth-child(2){border-right:0}.case-coordinate>div:nth-child(n+3){border-top:1px solid var(--line);padding-top:1rem}
  .case-rail{grid-column:1/4}.case-body,.case-body.wide{grid-column:4/13}
  .case-system-heading h2{grid-column:3/10}.case-system-heading>p:last-child{grid-column:10/13}.case-system-grid{grid-template-columns:1fr 1fr}
  .case-transfer blockquote{grid-column:3/10}.case-transfer-copy{grid-column:10/13}
}

@media(max-width:760px){
  .work-hero{padding-top:112px;display:block}.work-hero .section-code{margin-bottom:1rem}.work-hero-copy h1{font-size:clamp(3.4rem,14vw,5.8rem)}.work-hero-note{margin-top:2.5rem;max-width:620px}
  .atlas-intro{display:block}.atlas-intro>p:first-child{margin-bottom:1rem}.atlas-intro>p:last-child{font-size:1.35rem}
  .coordinate-note{display:none}.transfer-heading{display:block}.transfer-heading h2{margin:1rem 0 2rem}.transfer-heading>p:last-child{max-width:600px}.transfer-item{grid-template-columns:1fr;gap:.5rem}.transfer-item .transfer-arrow{text-align:left;transform:rotate(90deg);width:max-content}
  .practice-matrix{min-width:700px}.matrix-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.matrix-key{justify-content:flex-start}
  .work-close{display:block}.work-close blockquote{margin:1rem 0 2rem}.work-close>div:last-child{max-width:560px}
  .case-atlas-hero{display:block;padding-top:108px}.case-hero-copy{padding:3rem 0 2rem}.case-hero-copy h1{font-size:clamp(3.4rem,14vw,5.7rem)}.case-hero-media{min-height:0}.case-hero-media img{height:auto;max-height:680px}.case-coordinate{margin-top:2.5rem}
  .case-chapter{display:block}.case-rail{position:static;margin-bottom:2rem;padding-right:0}.case-rail p{max-width:520px}.case-body h2{font-size:clamp(2.8rem,11vw,4.8rem)}
  .case-contributions{grid-template-columns:1fr}.case-system-heading{display:block}.case-system-heading h2{margin:1rem 0 2rem}.case-system-heading>p:last-child{max-width:600px}.case-system-grid{grid-template-columns:1fr}
  .case-evidence-heading{grid-template-columns:1fr;gap:1rem}.case-media-grid{grid-template-columns:1fr}.case-media-grid figure.wide{grid-column:auto}.case-media-grid img,.case-media-grid .wide img{height:auto;max-height:720px;object-fit:contain}
  .case-outcomes>div{grid-template-columns:1fr;gap:.6rem}
  .case-transfer-grid{display:block}.case-transfer blockquote{margin:1rem 0 2rem}.case-transfer-copy{max-width:600px}
}

@media(max-width:560px){
  .case-coordinate{grid-template-columns:1fr}.case-coordinate>div{border-right:0!important;border-top:1px solid var(--line);padding:1rem 0!important}.case-coordinate>div:first-child{border-top:0}
  .case-grammar{top:70px}.case-grammar-inner{gap:1rem}
}

@media(prefers-reduced-motion:reduce){.work-node,.work-media img{transition:none!important}.work-node.is-muted{opacity:.42}}
