/* Shared patterns for interior (non-home) pages */

.page-hero{padding:150px var(--gutter) 70px;position:relative}
.page-hero__kicker{font:13px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.page-hero h1{font:600 var(--fs-hero)/1.05 var(--display);letter-spacing:-.03em;margin:20px 0 24px}
.page-hero h1 em{font-style:normal;color:var(--acid-deep)}
.page-hero p{max-width:560px;font-size:var(--fs-body-lg);color:var(--muted)}
.page-hero--dark{background:var(--ink);color:var(--paper)}
.page-hero--dark p{color:var(--muted-light)}
.page-hero--dark .page-hero__kicker{color:var(--muted-light)}

.split-block{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:start}
.split-block h2{font:600 var(--fs-h2)/1.15;letter-spacing:-.02em;margin:0 0 20px}
.split-block p{color:var(--muted);font-size:var(--fs-body-lg);max-width:480px;margin:0 0 20px}

.relation-badge{display:inline-flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:100px;padding:8px 18px 8px 8px;font:13px var(--mono);text-transform:uppercase;letter-spacing:.05em;margin-bottom:26px}
.relation-badge span{width:26px;height:26px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font-size:12px}

.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}
.capability-tile{position:relative;background:var(--paper);color:var(--ink);padding:32px 26px;min-height:220px;display:flex;flex-direction:column;justify-content:space-between;transition:background .4s ease}
.capability-tile:hover{background:var(--acid)}
.capability-tile span{font:13px var(--mono);color:var(--muted)}
.capability-tile h3{font:700 var(--fs-h3);letter-spacing:-.01em;text-transform:uppercase;margin:20px 0 0}
.capability-tile h3 small{text-transform:none}
.capability-icon{position:absolute;top:26px;right:26px;width:38px;height:38px;color:var(--muted);opacity:.55;transition:color .4s ease,opacity .4s ease,transform .5s var(--ease-out)}
.capability-tile:hover .capability-icon{color:var(--ink);opacity:.9;transform:translateY(-3px)}
.capability-icon svg{width:100%;height:100%}

.placeholder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line-light);border:1px solid var(--line-light)}
.placeholder-tile{background:var(--forest-soft);color:var(--muted-light);padding:36px 26px;min-height:190px;display:flex;flex-direction:column;justify-content:space-between}
.placeholder-tile span:first-child{font:13px var(--mono)}
.placeholder-tile span:last-child{font:13px var(--mono);text-transform:uppercase;letter-spacing:.05em;opacity:.6}

.process-rail{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.process-step{border-top:2px solid var(--line);padding-top:18px;transition:border-color .4s ease}
.process-step:hover{border-color:var(--acid-deep)}
.process-step span{font:13px var(--mono);color:var(--muted)}
.process-step h4{font:600 1.25rem/1.2 var(--display);letter-spacing:-.02em;margin:14px 0 8px}
.process-step p{font-size:14px;line-height:1.5;color:var(--muted);margin:0}

.stat-band{display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light)}
.stat-band div{flex:1;min-width:160px;padding:26px clamp(20px,3vw,36px);border-right:1px solid var(--line-light)}
.stat-band div:last-child{border-right:none}
.stat-band strong{display:block;font:600 clamp(1.8rem,3vw,2.6rem);letter-spacing:-.02em}
.stat-band span{font:13px var(--mono);text-transform:uppercase;color:var(--muted)}

.bank-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.bank-grid div{background:var(--paper);color:var(--ink);padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;gap:14px;min-height:104px;justify-content:center;font:500 15px var(--display);letter-spacing:-.02em;transition:background .3s ease,transform .3s ease}
.bank-grid div:hover{background:var(--acid);transform:translateY(-2px)}
.bank-logo{height:26px;width:auto;max-width:120px;object-fit:contain}

.logo-rail{display:flex;flex-wrap:wrap;gap:14px}
.logo-rail span{border:1px solid var(--line);border-radius:100px;padding:12px 22px;font:500 14px var(--display);letter-spacing:-.02em;transition:transform .35s var(--ease-out),background .35s ease}
.logo-rail span:hover{transform:translateY(-3px);background:var(--acid)}

.mini-heading{font:600 var(--fs-h2)/1.15 var(--display);letter-spacing:-.02em;margin:0 0 26px}
.strength-list{border-top:1px solid var(--ink)}
.strength-row{display:grid;grid-template-columns:.15fr 1fr;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:22px 0}
.strength-row:last-child{border-bottom:none}
.strength-row span{font:13px var(--mono)}
.strength-row h3{font:600 var(--fs-h3);margin:0;letter-spacing:-.02em}

@media(max-width:900px){
  .split-block{grid-template-columns:1fr;gap:40px}
  .capability-grid,.placeholder-grid{grid-template-columns:1fr 1fr}
  .process-rail{grid-template-columns:1fr 1fr}
  .stat-band div{border-right:none;border-bottom:1px solid var(--line-light)}
}
@media(max-width:600px){
  .capability-grid,.placeholder-grid,.process-rail{grid-template-columns:1fr}
}
