/* Company identity and documented projects. Existing site tokens are retained. */
.identity-hero{background:var(--ink);color:var(--on-dark);padding:clamp(3.5rem,7vw,6rem) 0;overflow:hidden}
.identity-hero .eyebrow,.case-hero .eyebrow{color:var(--gold-hi)}
.identity-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.identity-hero h1{font-size:clamp(2.7rem,4.6vw,4.6rem);max-width:13ch}
.identity-hero .lead{color:var(--on-dark-muted);max-width:49ch}
.identity-mark{padding:3rem;border:1px solid var(--line-dark);background:var(--char);text-align:center;position:relative}
.identity-mark::before,.identity-mark::after{content:"";position:absolute;width:46px;height:46px;border-color:var(--gold);pointer-events:none}
.identity-mark::before{left:-1px;top:-1px;border-left:2px solid;border-top:2px solid}
.identity-mark::after{right:-1px;bottom:-1px;border-right:2px solid;border-bottom:2px solid}
.identity-mark img{width:min(100%,350px);margin:0 auto 2rem}
.identity-mark p{font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--on-dark-muted)}
.identity-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:2.5rem;border-top:1px solid var(--line-dark);padding-top:1.3rem}
.identity-facts div{padding-right:1.2rem}
.identity-facts strong{display:block;font-family:var(--font-display);font-size:1.65rem;font-weight:500;color:var(--gold-hi)}
.identity-facts span{font-size:.78rem;color:var(--on-dark-muted)}
.identity-body{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(2rem,6vw,5rem);align-items:start}
.identity-body h2{max-width:21ch}
.owner-card{padding:2rem;border:1px solid var(--line);background:var(--paper)}
.owner-card .owner-initials{font-family:var(--font-display);font-size:3.5rem;color:var(--gold-deep);line-height:1;margin-bottom:1.5rem}
.owner-card h3{font-family:var(--font-display);font-size:1.8rem;font-weight:500}
.owner-card .role{color:var(--gold-deep);font-size:.85rem;font-weight:600;margin-bottom:1.25rem}
.owner-card p{font-size:.94rem}
.evidence-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.evidence-card{padding:2rem;border:1px solid var(--line-dark);background:var(--char)}
.evidence-card .number{font-family:var(--font-display);font-size:2.1rem;color:var(--gold-hi);margin:.5rem 0 1rem;line-height:1.2}
.evidence-card h3{font-size:1rem}
.evidence-card p{font-size:.9rem;color:var(--on-dark-muted)}
.evidence-card a{color:var(--gold-hi);text-underline-offset:4px;font-size:.85rem}
.evidence-note{font-size:.8rem;color:var(--on-dark-muted);margin-top:1.5rem;max-width:85ch}
.evidence-note a{color:var(--gold-hi)}
.source-verification{margin-top:1.5rem;border-top:1px solid var(--line-dark);padding-top:1.2rem}
.source-verification summary{cursor:pointer;color:var(--gold-hi);font-size:.85rem;font-weight:600}
.source-verification .source-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.65rem;margin-top:1rem}
.source-verification label{grid-column:1/-1;font-size:.78rem;color:var(--on-dark-muted)}
.source-verification input{min-width:0;width:100%;border:1px solid var(--line-dark);border-radius:5px;padding:.6rem;color:var(--on-dark);background:var(--char);font:inherit;font-size:.75rem}
.source-verification button{min-height:44px;padding:.5rem .8rem;border:1px solid var(--gold);border-radius:5px;background:transparent;color:var(--gold-hi);font:inherit;font-size:.8rem;cursor:pointer}
.source-verification [role="status"]{grid-column:1/-1;min-height:1em;font-size:.75rem;color:var(--on-dark-muted)}
.accountability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;margin-top:2.5rem}
.accountability-grid article{border-top:2px solid var(--gold);padding-top:1.4rem}
.accountability-grid p{font-size:.96rem;color:var(--muted)}
.company-contact{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.company-contact address{font-style:normal;line-height:1.8;margin:1.25rem 0}
.projects-intro{padding:clamp(3.5rem,7vw,6rem) 0;background:var(--ink);color:var(--on-dark)}
.projects-intro .eyebrow{color:var(--gold-hi)}
.projects-intro h1{max-width:15ch;font-size:clamp(2.8rem,5vw,4.6rem)}
.projects-intro .lead{color:var(--on-dark-muted);max-width:65ch}
.project-privacy-note{font-size:.85rem;color:var(--on-dark-muted);margin-top:1.5rem}
.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.case-card{display:grid;grid-template-columns:.85fr 1.15fr;background:var(--paper);border:1px solid var(--line);overflow:hidden;text-decoration:none;min-height:420px}
.case-card figure{margin:0;position:relative;min-height:100%;overflow:hidden}
.case-card img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.case-card:hover img{transform:scale(1.025)}
.case-card .case-card-copy{padding:2rem;display:flex;flex-direction:column;align-items:flex-start}
.case-card .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:1rem}
.case-card .eyebrow::before{width:18px}
.case-card h2,.case-card h3{font-family:var(--font-display);font-size:1.65rem;font-weight:500;line-height:1.18;text-wrap:pretty}
.case-card p{font-size:.92rem;color:var(--muted)}
.case-card .case-outcome{padding-top:1rem;margin-top:auto;border-top:1px solid var(--line);font-size:.8rem;width:100%}
.case-card .case-outcome strong{display:block;color:var(--text);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.4rem}
.case-card .read-case{display:inline-block;margin-top:1rem;font-size:.85rem;font-weight:600;color:var(--gold-deep);border-bottom:1px solid currentColor}
.case-gallery-note{margin-top:1.8rem;max-width:75ch;font-size:.86rem;color:var(--muted)}
.company-strip{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.75rem 2rem;background:var(--char);color:var(--on-dark);margin-top:2rem}
.company-strip p{color:var(--on-dark-muted);font-size:.9rem;margin:.25rem 0 0}
.company-strip h3{margin:0;font-size:1.1rem}
.case-hero{background:var(--ink);color:var(--on-dark);padding:clamp(2.5rem,6vw,5rem) 0}
.case-hero-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,5vw,5rem);align-items:center}
.case-hero h1{font-size:clamp(2.6rem,4.3vw,4.1rem);max-width:17ch}
.case-hero .lead{color:var(--on-dark-muted)}
.case-hero figure{margin:0;background:var(--char)}
.case-hero figure img{width:100%;aspect-ratio:4/5;object-fit:cover}
.case-hero figcaption{padding:1rem 1.2rem;color:var(--on-dark-muted);font-size:.78rem}
.case-breadcrumbs{font-size:.78rem;color:var(--on-dark-muted);margin-bottom:1.5rem}
.case-breadcrumbs a{color:inherit;text-decoration:none}
.case-breadcrumbs a:hover{text-decoration:underline}
.case-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin:1.8rem 0}
.case-meta span{border:1px solid var(--line-dark);padding:.4rem .7rem;font-size:.75rem;color:var(--on-dark-muted)}
.case-body{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(2rem,5vw,5rem);align-items:start}
.case-narrative h2{font-size:clamp(1.9rem,3vw,2.6rem);margin-top:2.4rem}
.case-narrative h2:first-child{margin-top:0}
.case-narrative p{max-width:70ch}
.case-record{border:1px solid var(--line);padding:1.8rem;background:var(--paper)}
.case-record h2{font-family:var(--font-body);font-size:1rem;font-weight:650;letter-spacing:.01em}
.case-record dl{margin:0}
.case-record dt{font-size:.75rem;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-deep);margin-top:1.3rem}
.case-record dd{margin:.35rem 0 0;font-size:.9rem}
.case-record .textlink{margin-top:1.5rem}
.case-steps{list-style:none;padding:0;margin:2rem 0;counter-reset:case-step}
.case-steps li{counter-increment:case-step;position:relative;border-top:1px solid var(--line);padding:1.25rem 0 1.25rem 3.25rem}
.case-steps li::before{content:counter(case-step,decimal-leading-zero);position:absolute;left:0;top:1.3rem;color:var(--gold-deep);font-size:.85rem;font-weight:600}
.case-steps h3{font-size:1.05rem;margin:0 0 .4rem}
.case-steps p{font-size:.95rem;color:var(--muted)}
.case-result{background:var(--char);color:var(--on-dark);padding:2rem;margin-top:2rem}
.case-result .eyebrow{color:var(--gold-hi)}
.case-result h2{color:var(--on-dark);margin:0 0 1rem}
.case-result p{color:var(--on-dark-muted)}
.case-result .limit{font-size:.84rem;padding-top:1rem;border-top:1px solid var(--line-dark)}
.case-photos{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2rem}
.case-photos figure{margin:0;background:var(--paper);border:1px solid var(--line)}
.case-photos img{width:100%;aspect-ratio:3/4;object-fit:cover}
.case-photos figcaption{padding:1rem;font-size:.8rem;color:var(--muted)}
.case-source-note{font-size:.8rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1.4rem;margin-top:2rem}
.content-cta{padding:clamp(3rem,6vw,5rem) 0;background:var(--char);color:var(--on-dark)}
.content-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:3rem}
.content-cta h2{max-width:22ch;margin-bottom:.6rem}
.content-cta p{color:var(--on-dark-muted);max-width:55ch}
.content-cta .btn-row{flex-shrink:0}
@media(min-width:1060px) and (max-width:1210px){.nav a,.nav button{padding:.6rem .5rem}.site-header .wrap{gap:.8rem}.header-cta{padding:.8rem 1rem}}
@media(min-width:1060px){.mobile-nav.open{display:none}}
@media(max-width:1100px){.case-grid{gap:1.3rem}.case-card{grid-template-columns:1fr}.case-card figure{height:300px;min-height:0}.case-card figure img{object-position:center 48%}.case-card .case-card-copy{padding:1.6rem}.content-cta .wrap{align-items:flex-start;flex-direction:column}}
@media(max-width:850px){.identity-layout,.identity-body,.case-hero-layout,.case-body,.company-contact{grid-template-columns:1fr}.identity-mark{max-width:540px;width:100%}.evidence-grid{grid-template-columns:1fr}.accountability-grid{grid-template-columns:1fr;gap:1.5rem}.case-hero figure{max-width:520px;width:100%;margin:auto}.case-record{max-width:none}.company-strip{align-items:flex-start;flex-direction:column}.identity-hero h1{max-width:17ch}.case-hero h1{max-width:19ch}}
@media(max-width:600px){.case-grid,.case-photos{grid-template-columns:1fr}.identity-mark{padding:2rem}.identity-facts{gap:1rem}.identity-facts div{padding:0}.identity-facts strong{font-size:1.5rem}.identity-facts span{font-size:.75rem}.case-card{min-height:0;grid-template-columns:1fr}.case-card figure{height:310px}.case-hero figure img{aspect-ratio:4/5}.case-card h2,.case-card h3{font-size:1.8rem}.case-result,.case-record{padding:1.5rem}.company-strip{padding:1.5rem}.content-cta .btn-row{width:100%}.content-cta .btn{white-space:normal}.case-hero .btn-row{gap:.6rem}.case-hero .btn{padding:.8rem 1.05rem}}
@media(prefers-reduced-motion:reduce){.case-card img{transition:none}.case-card:hover img{transform:none}}
