/* Phase 4 pages: About, Clients, Industries, Projects, News. Shared pieces (hero, lists, bands) are in sections.css. */

.section--flush{padding-block-start:0}
.section--flush-top{padding-block-start:0}
.empty-note{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;color:var(--alu-2)}
.shead--single{grid-template-columns:minmax(0,1fr)}

/* ---------- chips: industry solutions, project filters ---------- */
.chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.chips a{display:inline-flex;align-items:center;min-block-size:44px;padding:8px 16px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--line);font-size:15px;text-decoration:none;transition:background .25s,box-shadow .25s,color .25s}
.chips a:hover{box-shadow:inset 0 0 0 1.5px var(--blue);color:var(--blue)}
.chips a[aria-current=true]{background:var(--blue);color:var(--snow);box-shadow:none}

/* ---------- about: approach statement ---------- */
.about-story-grid{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:32px;align-items:start}
.statement{margin:0;font:500 clamp(21px,2.1vw,31px)/1.7 var(--font-body);color:var(--alu);max-inline-size:40ch}

/* ---------- about: vision + mission ---------- */
.vm{padding-block:var(--sp-section) 0}
.vm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.vm-card{position:relative;overflow:hidden;border-radius:22px;padding:clamp(28px,4vw,56px);background:var(--paper)}
.vm-card h2{font-size:var(--fs-h3);margin-block-end:18px}
.vm-card p{font-size:var(--fs-lead);line-height:1.85}
.vm-card--vision{background:var(--blue-deep);color:var(--snow)}
.vm-card--vision::after{content:"";position:absolute;inset-inline-end:-60px;inset-block-end:-50px;inline-size:260px;aspect-ratio:3/2;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 160'%3E%3Cg fill='none' stroke='white' stroke-opacity='.16'%3E%3Cpath d='M0 150 L70 40 L95 70 L120 30 L240 150'/%3E%3C/g%3E%3Cg fill='white' fill-opacity='.22'%3E%3Crect x='66' y='36' width='8' height='8'/%3E%3Crect x='116' y='26' width='8' height='8'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;pointer-events:none}

/* ---------- about: values (numbered rows, not cards) ---------- */
.values-title{font-size:var(--fs-h2);margin-block-end:clamp(28px,4vw,48px)}
.values-list{list-style:none;margin:0;padding:0;border-block-start:1.5px solid var(--alu)}
.values-list li{display:grid;grid-template-columns:90px minmax(0,.8fr) minmax(0,1.4fr);gap:24px;align-items:baseline;padding-block:28px;border-block-end:1px solid var(--line)}
.values-list .no{font:700 18px var(--en);font-stretch:118%;color:var(--blue-soft)}
.values-list h3{font:600 clamp(20px,1.9vw,26px)/1.35 var(--font-body);margin:0;color:var(--blue-deep)}
.values-list p{margin:0;color:var(--alu-2)}

/* ---------- about: managing director's message ---------- */
.md-letter{padding-block:0 var(--sp-section)}
.md-letter-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:start}
.md-letter-photo{position:sticky;inset-block-start:calc(var(--header-h) + var(--admin-bar-h) + 24px)}
.md-letter-photo :is(img,.slot){inline-size:100%;aspect-ratio:4/5;block-size:auto;object-fit:cover;border-radius:22px}
.md-letter-text h2{font-size:var(--fs-h2);line-height:1.2;margin-block-end:10px}
.md-letter-en{font-size:15px;color:var(--alu-2);margin-block-end:32px}
.md-letter-text>p:not(.kicker,.md-letter-en,.md-letter-sign){font-size:var(--fs-lead);line-height:1.9;margin-block-end:1.2em;max-inline-size:62ch}
.md-letter-sign{display:flex;flex-direction:column;gap:4px;margin-block-start:36px;padding-block-start:22px;border-block-start:1.5px solid var(--alu);font-size:15px;color:var(--alu-2)}
.md-letter-sign b{font-size:20px;font-weight:700;color:var(--alu)}

/* ---------- clients + brands logo grid ---------- */
.logos+.logos{padding-block-start:0}
.logos-title{font-size:var(--fs-h3);margin-block-end:28px}
.logo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));gap:14px}
.logo-grid li{display:flex;align-items:center;justify-content:center;aspect-ratio:3/2;padding:24px;border-radius:18px;background:var(--paper)}
.logo-grid a{display:flex;align-items:center;justify-content:center;inline-size:100%;block-size:100%;text-decoration:none}
.logo-grid img{max-inline-size:100%;max-block-size:80px;inline-size:auto;block-size:auto;object-fit:contain}
.logo-name{font:700 clamp(18px,1.6vw,22px)/1.3 var(--en);font-stretch:118%;color:var(--alu-2);text-align:center}

/* ---------- industries archive: alternating rows ---------- */
.ind-rows{display:grid;gap:clamp(48px,7vw,96px)}
.ind-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:center}
.ind-row:nth-child(even) .ind-row-media{order:2}
.ind-row-media{display:block;border-radius:22px;overflow:hidden}
.ind-row-media :is(img,.slot){display:block;inline-size:100%;aspect-ratio:4/3;block-size:auto;object-fit:cover;border-radius:0}
.ind-row:nth-child(even) .slot{background:radial-gradient(130% 90% at 80% 0%,oklch(58% 0.1 250),oklch(34% 0.1 258) 60%,var(--blue-night))}
.ind-row-body .no{font:700 18px var(--en);font-stretch:118%;color:var(--blue-soft)}
.ind-row-body h2{font-size:var(--fs-h3);margin-block:10px 16px}
.ind-row-body h2 a{text-decoration:none}
.ind-row-body h2 a:hover{color:var(--blue)}
.ind-row-body>p{color:var(--alu-2);max-inline-size:52ch;margin-block-end:22px}
.ind-row-body .chips{margin-block-end:26px}

/* ---------- projects archive ---------- */
.filters{display:grid;gap:18px;margin-block-end:clamp(36px,5vw,56px);padding-block-end:clamp(24px,3vw,36px);border-block-end:1px solid var(--line)}
.filter-group{display:grid;grid-template-columns:110px minmax(0,1fr);gap:16px;align-items:center}
.filter-label{font-size:14px;font-weight:600;color:var(--alu-2)}

/* ---------- project page ---------- */
.project-sheet-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(28px,5vw,72px);align-items:start}
.project-cover{margin:0}
.project-cover :is(img,.slot){display:block;inline-size:100%;aspect-ratio:16/10;block-size:auto;object-fit:cover;border-radius:22px}
.sheet-title{font-size:var(--fs-h4);margin-block-end:14px}
.sheet{margin:0;border-block-start:1.5px solid var(--alu)}
.sheet>div{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:16px;padding-block:14px;border-block-end:1px solid var(--line)}
.sheet dt{font-size:14px;color:var(--alu-2)}
.sheet dd{margin:0;font-weight:600;color:var(--alu)}
.sheet dd a{color:var(--blue)}
.project-scope{margin-block-start:clamp(40px,5vw,64px);max-inline-size:72ch}
.project-scope h2{font-size:var(--fs-h4);margin-block-end:12px}
.project-scope p{color:var(--alu-2)}

/* ---------- news ---------- */
.news-list{border-block-start:1.5px solid var(--alu)}
.news-item{display:grid;grid-template-columns:200px minmax(0,1fr) 240px;gap:clamp(20px,3vw,40px);align-items:start;padding-block:32px;border-block-end:1px solid var(--line)}
.news-item:not(:has(.news-media)){grid-template-columns:200px minmax(0,1fr)}
.news-when{display:flex;flex-direction:column;gap:4px;margin:0;font-size:14px;color:var(--alu-2)}
.news-when time{font-weight:600;color:var(--blue)}
.news-body h2{font-size:clamp(20px,1.9vw,26px);line-height:1.4;margin-block-end:10px}
.news-body h2 a{text-decoration:none}
.news-body h2 a:hover{color:var(--blue)}
.news-body p{color:var(--alu-2);max-inline-size:62ch}
.news-media img{display:block;inline-size:100%;aspect-ratio:4/3;block-size:auto;object-fit:cover;border-radius:14px}
.news-cover{margin:0 0 clamp(32px,4vw,56px)}
.news-cover img{inline-size:100%;block-size:auto;max-block-size:620px;object-fit:cover;border-radius:22px}
.news-back{margin-block-start:48px}

@media(max-width:1080px){
  .about-story-grid,.md-letter-grid,.project-sheet-grid,.ind-row{grid-template-columns:minmax(0,1fr)}
  .ind-row:nth-child(even) .ind-row-media{order:0}
  .md-letter-photo{position:static;max-inline-size:420px}
  .values-list li{grid-template-columns:56px minmax(0,1fr);row-gap:8px}
  .values-list p{grid-column:2}
  .news-item,.news-item:not(:has(.news-media)){grid-template-columns:minmax(0,1fr)}
  .news-media{order:-1;max-inline-size:420px}
}
@media(max-width:760px){
  .vm-grid{grid-template-columns:minmax(0,1fr)}
  .filter-group{grid-template-columns:minmax(0,1fr);gap:10px}
  .sheet>div{grid-template-columns:minmax(0,1fr);gap:4px}
}

/* Client tiles only; component brands retain their existing presentation. */
.logos--client .logo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.logos--client .logo-grid li{aspect-ratio:auto;block-size:140px;background:oklch(100% 0 0);padding:24px;min-inline-size:0}
.logos--client .logo-grid img{max-block-size:90px;max-inline-size:100%;object-fit:contain}
@media(max-width:900px){.logos--client .logo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.logos--client .logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.logos--client .logo-grid li{block-size:110px;padding:16px}.logos--client .logo-grid img{max-block-size:78px}}
