/* =====================================================================
 * Pillar — Company page
 * Loaded only on pages using the "Pillar — Company" template.
 *
 * Stockholm note: the theme forces heading colors (h1 #5d5d5d, h2 #393939)
 * and link color (a #E6AE48), overriding anything inherited. Every heading
 * and link below therefore sets its color with !important to win.
 * ================================================================== */

.pillar-company{
  --ink:      #161616;
  --dark:     #17130d;          /* warm near-black band */
  --accent:   #e6ae48;
  --muted:    #6b6b6b;
  --hair:     #e4e4e1;
  --ph:       #efeae0;          /* image placeholder cream */
  --maxw:     2400px;
  --pad:      96px;
}
.pillar-company *,.pillar-company *::before,.pillar-company *::after{box-sizing:border-box;margin:0;padding:0;}
.pillar-company{
  font-family:'Barlow',sans-serif;color:var(--ink);background:#fff;line-height:1.6;
  -webkit-font-smoothing:antialiased;width:100%;max-width:100%;overflow-x:hidden;
}
.pillar-company h1,.pillar-company h2,.pillar-company h3{
  font-family:'Barlow',sans-serif;font-style:normal;text-transform:none;
}
.pillar-company p{margin:0;}
.pillar-company ul{list-style:none;padding-left:0;}
.pco-wrap{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}

/* The editorial display face: heavy, very tight, ragged. */
.pco-display{
  font-family:'Barlow',sans-serif;font-weight:800;font-style:normal;
  line-height:.95;letter-spacing:-.035em;text-transform:none;
}
.pco-eyebrow{
  font-size:12px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;
  color:var(--accent);margin-bottom:26px;
}

/* ---- 1 · HERO — editorial grid ----------------------------------------- */
.pco-hero{padding:170px 0 120px;}
.pco-hero__inner{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);
  display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:120px;align-items:start;
}
.pco-hero__lede,.pco-hero__lede p{font-size:17px;line-height:1.75;color:#3a3a3a;}
.pco-hero__lede p + p{margin-top:18px;}

/* key / value spec rows */
.pco-specs{margin-top:56px;border-top:1px solid var(--hair);}
.pco-spec{
  display:flex;justify-content:space-between;align-items:baseline;gap:24px;
  padding:16px 0;border-bottom:1px solid var(--hair);
}
.pco-spec__k{font-size:14px;font-weight:600;color:var(--ink);}
.pco-spec__v{font-size:12px;letter-spacing:.1em;color:var(--muted);text-align:right;}

.pillar-company .pco-hero__title{
  font-size:clamp(48px,6.2vw,92px);text-align:right;color:var(--ink)!important;
  align-self:start;padding-top:6px;
}
.pillar-company .pco-hero__title em{font-style:normal;color:var(--accent)!important;}

/* ---- 2 · CORE DNA — dark band ------------------------------------------ */
.pco-dna{background:var(--dark);color:#fff;padding:120px 0 130px;}
.pco-dna__inner{
  max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);
  display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:120px;align-items:start;
}
.pillar-company .pco-dna__heading{font-size:clamp(34px,3.4vw,52px);color:#fff!important;max-width:11ch;}
.pco-dna .pco-eyebrow{color:var(--accent);}
.pco-dna__body p{font-size:18px;line-height:1.72;color:rgba(255,255,255,.74);max-width:620px;}
.pco-dna__body p + p{margin-top:28px;}

/* ---- 3 · STATS — internal dividers only, no outer box ------------------- */
.pco-stats{padding:110px 0;border-bottom:1px solid var(--hair);}
.pco-stats__inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}
/* Mirrors .svc-ind__grid on the main services page, but on white. */
.pco-stats__grid{display:grid;grid-template-columns:repeat(4,1fr);}
.pco-stat{padding:34px 32px 40px 0;}
.pco-stat:not(:nth-child(4n+1)){border-left:1px solid var(--hair);padding-left:32px;}
.pco-stat__num{
  font-family:'Barlow',sans-serif;font-weight:800;font-size:56px;line-height:1;
  letter-spacing:-.04em;color:var(--ink);
}
.pco-stat__num i{font-style:normal;color:var(--accent);}
.pco-stat__label{margin-top:14px;font-size:15px;color:var(--muted);line-height:1.4;}

/* ---- 4 · TEAM ----------------------------------------------------------- */
.pco-team{padding:120px 0 130px;}
.pco-team__inner{max-width:var(--maxw);margin:0 auto;padding:0 var(--pad);}
.pco-team__head{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,420px);gap:120px;
  align-items:end;margin-bottom:56px;
}
.pillar-company .pco-team__heading{font-size:clamp(34px,3.4vw,52px);color:var(--ink)!important;max-width:14ch;}
.pco-team__note{font-size:16px;line-height:1.7;color:var(--muted);}
.pco-team__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;}
.pco-person__photo{
  position:relative;width:100%;aspect-ratio:3/4;background:var(--ph);
  background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.035) 0 10px,rgba(0,0,0,0) 10px 20px);
  overflow:hidden;margin-bottom:18px;
}
.pco-person__photo img{width:100%;height:100%;object-fit:cover;display:block;}
.pco-person__photo span{
  position:absolute;left:16px;bottom:14px;font-size:11px;letter-spacing:.14em;
  text-transform:uppercase;color:#a9a396;
}
.pillar-company .pco-person__name{font-size:17px;font-weight:700;color:var(--ink)!important;line-height:1.3;}
.pco-person__role{font-size:15px;color:var(--muted);margin-top:2px;}

/* ---- 5 · CTA (gold band) ------------------------------------------------ */
.pco-cta{background:var(--accent);color:#fff;padding:150px 0;text-align:center;}
.pillar-company .pco-cta__title{
  font-family:'Barlow',sans-serif;font-weight:800;font-size:clamp(40px,5vw,80px);
  line-height:.98;letter-spacing:-.035em;max-width:15ch;color:#fff!important;margin:0 auto 48px;
}
.pillar-company .pco-cta__btn{
  display:inline-block;background:#fff;color:var(--ink)!important;font-size:16px;font-weight:600;
  letter-spacing:.3px;text-decoration:none;padding:22px 46px;transition:background .2s,color .2s;
}
.pillar-company .pco-cta__btn:hover{background:var(--ink);color:#fff!important;}

/* ---- Responsive --------------------------------------------------------- */
@media (max-width:1300px){
  .pillar-company{--pad:56px;}
  .pco-hero__inner,.pco-dna__inner{grid-template-columns:minmax(0,360px) minmax(0,1fr);gap:72px;}
  .pco-team__head{grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:72px;}
  .pco-stat{padding:28px 26px 32px 0;}
  .pco-stat:not(:nth-child(4n+1)){padding-left:26px;}
  .pco-stat__num{font-size:46px;}
  .pco-team__grid{gap:26px;}
}
@media (max-width:1100px){
  .pco-hero{padding:140px 0 90px;}
  .pco-hero__inner{grid-template-columns:1fr;gap:48px;}
  .pillar-company .pco-hero__title{text-align:left;order:-1;}
  .pco-dna__inner,.pco-team__head{grid-template-columns:1fr;gap:34px;align-items:start;}
  .pillar-company .pco-dna__heading,.pillar-company .pco-team__heading{max-width:18ch;}
  /* 2 columns — reset the 4-col dividers, re-apply on the 2-col rhythm */
  .pco-stats__grid{grid-template-columns:repeat(2,1fr);}
  .pco-stat:not(:nth-child(4n+1)){border-left:0;padding-left:0;}
  .pco-stat:not(:nth-child(2n+1)){border-left:1px solid var(--hair);padding-left:26px;}
  .pco-stat:nth-child(n+3){border-top:1px solid var(--hair);padding-top:32px;}
  .pco-team__grid{grid-template-columns:repeat(2,1fr);gap:32px;}
}
@media (max-width:780px){
  .pco-hero{padding:120px 0 70px;}
  .pco-dna{padding:80px 0 90px;}
  .pco-dna__body p{font-size:17px;}
  .pco-stats{padding:70px 0;}
  /* 1 column — horizontal rules between rows only */
  .pco-stats__grid{grid-template-columns:1fr;}
  .pco-stat{border-left:0!important;padding-left:0!important;}
  .pco-stat:not(:first-child){border-top:1px solid var(--hair);padding-top:32px;}
  .pco-team{padding:80px 0 90px;}
  .pco-team__grid{grid-template-columns:1fr;gap:40px;}
  .pco-person__photo{aspect-ratio:4/3;}
  .pco-cta{padding:100px 0;}
}
