/* =============================================================
   Swiss Hyp AG — Home-specific · Editorial v3
   ============================================================= */

/* ---------- Editorial full-bleed ---------- */
.editorial-bleed{
  position:relative;min-height:580px;
  background:var(--ink);color:#fff;overflow:hidden;isolation:isolate;
}
.editorial-bleed__img{
  position:absolute;inset:0;z-index:-2;
  width:100%;height:100%;object-fit:cover;object-position:center 45%;
  filter:saturate(.78) contrast(1.05) brightness(.72);
  transform:scale(1.02);
}
.editorial-bleed::before{
  content:"";position:absolute;inset:0;z-index:-1;
  background:
    linear-gradient(90deg, rgba(11,12,14,.92) 0%, rgba(11,12,14,.55) 48%, rgba(11,12,14,.2) 100%),
    linear-gradient(180deg, rgba(11,12,14,.3) 0%, rgba(11,12,14,0) 40%, rgba(11,12,14,.55) 100%);
}
@media (max-width:900px){
  .editorial-bleed::before{background:linear-gradient(180deg, rgba(11,12,14,.82) 0%, rgba(11,12,14,.6) 45%, rgba(11,12,14,.92) 100%)}
}
.editorial-bleed__inner{padding:104px 0;display:grid;grid-template-columns:1fr;max-width:620px}
@media (max-width:720px){ .editorial-bleed__inner{padding:76px 0;max-width:none} }

.editorial-bleed__stamp{
  display:inline-flex;align-items:center;gap:12px;
  color:#fff;font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;font-weight:600;
  align-self:flex-start;margin-bottom:18px;
}
.editorial-bleed__stamp::before{content:"";width:28px;height:1px;background:var(--red)}

.editorial-bleed h2{
  font-family:var(--ff-serif);font-weight:500;font-size:clamp(32px,3.8vw,58px);
  line-height:1.06;color:#fff;margin:12px 0 22px;letter-spacing:-.022em;
}
.editorial-bleed h2 em{font-style:italic;color:#fff;font-weight:500}
.editorial-bleed p{font-size:15.5px;line-height:1.68;color:rgba(255,255,255,.85);margin:0 0 16px;max-width:54ch;letter-spacing:-.005em}
.editorial-bleed p strong{color:#fff;font-weight:500}
.editorial-bleed__signature{
  margin-top:32px;padding-top:26px;border-top:1px solid rgba(255,255,255,.18);
  display:flex;align-items:center;gap:16px;
}
.editorial-bleed__signature strong{display:block;font-family:var(--ff-serif);font-size:16px;color:#fff;font-weight:500;letter-spacing:-.005em}
.editorial-bleed__signature span{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.6);font-weight:600}

/* ---------- Partnerbanken — minimal editorial grid ---------- */
.banks{background:transparent;padding:0}
.banks__head{
  display:flex;flex-direction:column;align-items:center;text-align:center;
  gap:10px;margin-bottom:56px;
}
.banks__label{
  font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--mute);font-weight:600;
}
.banks__title{
  font-family:var(--ff-serif);font-weight:500;font-size:26px;
  color:var(--ink);margin:0;letter-spacing:-.01em;
}
.banks-grid{
  display:grid;grid-template-columns:repeat(5,1fr);gap:0;
  border-top:1px solid var(--line);border-left:1px solid var(--line);
}
@media (max-width:960px){ .banks-grid{grid-template-columns:repeat(3,1fr)} }
@media (max-width:560px){ .banks-grid{grid-template-columns:repeat(2,1fr)} }
.banks-grid__cell{
  aspect-ratio:16/9;
  display:flex;align-items:center;justify-content:center;
  padding:18px 24px;background:transparent;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  transition:background var(--dur) var(--ease);
}
.banks-grid__cell:hover{background:var(--paper-2)}
.banks-grid__cell img{
  max-width:100%;max-height:44px;width:auto;height:auto;object-fit:contain;
  filter:grayscale(1);opacity:.5;
  transition:filter var(--dur) var(--ease), opacity var(--dur) var(--ease);
}
.banks-grid__cell:hover img{filter:grayscale(0);opacity:1}

.banks-credentials{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  margin-top:0;border-top:1px solid var(--line);
}
@media (max-width:900px){ .banks-credentials{grid-template-columns:1fr;border-top:none} }
.bank-credential{
  display:flex;gap:18px;align-items:flex-start;color:var(--body);
  padding:36px 28px 34px 0;border-right:1px solid var(--line);
}
.bank-credential + .bank-credential{padding-left:28px}
.bank-credential:last-child{border-right:none}
@media (max-width:900px){
  .bank-credential{border-right:none;border-bottom:1px solid var(--line);padding:32px 0}
  .bank-credential + .bank-credential{padding-left:0}
  .bank-credential:last-child{border-bottom:none}
}
.bank-credential svg{color:var(--ink);flex:0 0 auto;margin-top:4px}
.bank-credential strong{
  display:block;font-family:var(--ff-serif);font-weight:500;font-size:19px;
  color:var(--ink);margin-bottom:6px;letter-spacing:-.005em;
}
.bank-credential span{font-size:14px;color:var(--body);line-height:1.68}

/* ---------- Awards ---------- */
.awards{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:1px solid var(--line);
}
@media (max-width:960px){ .awards{grid-template-columns:repeat(2,1fr)} }
@media (max-width:600px){ .awards{grid-template-columns:1fr} }

.award{
  position:relative;background:transparent;
  padding:36px 28px 32px 0;
  display:flex;flex-direction:column;align-items:flex-start;text-align:left;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  transition:background var(--dur) var(--ease);
}
.award + .award{padding-left:28px}
.award:nth-child(3n){border-right:none;padding-right:0}
@media (max-width:960px){
  .award{padding:32px 24px}
  .award + .award{padding-left:24px}
  .award:nth-child(3n){border-right:1px solid var(--line);padding-right:24px}
  .award:nth-child(2n){border-right:none;padding-right:0}
  .award:nth-child(2n+1){padding-left:0}
}
@media (max-width:600px){
  .award{border-right:none!important;padding:28px 0!important}
  .award + .award{padding-left:0!important}
}
.awards > .award:last-child{border-bottom:none}
@media (min-width:961px){ .awards > .award:nth-last-child(-n+3){border-bottom:none} }
.award:hover{background:var(--paper-2)}
.award__img{height:72px;width:100%;display:flex;align-items:center;justify-content:flex-start;margin:0 0 18px}
.award__img img{max-height:72px;max-width:130px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.7;transition:opacity var(--dur) var(--ease), filter var(--dur) var(--ease)}
.award:hover .award__img img{filter:grayscale(0);opacity:1}
.award h3{font-family:var(--ff-serif);font-weight:500;font-size:20px;line-height:1.22;color:var(--ink);margin:0 0 10px;letter-spacing:-.015em}
.award p{font-size:14px;line-height:1.65;color:var(--body);margin:0 0 16px;flex:1}
.award__source{
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--red);font-weight:600;
  padding-top:16px;border-top:1px solid var(--line);width:100%;
  display:inline-flex;align-items:center;gap:10px;
}
.award__source::before{content:"";width:14px;height:1px;background:var(--red)}

/* ---------- Section head split (with side link) ---------- */
.section__head--split{
  display:flex;justify-content:space-between;align-items:end;gap:24px;
  grid-template-columns:none;flex-wrap:wrap;max-width:none;
}
.section__head--split > div{max-width:640px}
.section__head--split .btn{flex-shrink:0}

/* ---------- Rate hero (Festgeld showcase) ---------- */
.rate-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}
@media (max-width:900px){ .rate-hero{grid-template-columns:1fr;gap:32px} }
.rate-hero__copy .h2{margin:0 0 16px}
.rate-hero__copy p{font-size:15.5px;line-height:1.65;color:var(--body);margin:0 0 22px;max-width:52ch;letter-spacing:-.005em}

/* ---------- Stat grid ---------- */
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line)}
@media (max-width:960px){ .stat-grid{grid-template-columns:repeat(2,1fr)} }
@media (max-width:520px){ .stat-grid{grid-template-columns:1fr} }
.stat{
  padding:36px 32px 34px 0;
  border-right:1px solid var(--line);
  display:flex;flex-direction:column;gap:10px;
}
.stat + .stat{padding-left:32px}
.stat:last-child{border-right:none;padding-right:0}
.stat__num{font-family:var(--ff-serif);font-weight:500;font-size:48px;line-height:1;color:var(--ink);letter-spacing:-.03em}
.stat__num em{color:var(--red);font-style:normal}
.stat__lbl{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--mute);font-weight:600}
.stat__desc{font-size:13.5px;color:var(--body);line-height:1.6;margin-top:8px}

/* ---------- Swiss stamp ---------- */
.swiss-stamp{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;
  color:rgba(255,255,255,.8);font-weight:600;
}
.swiss-stamp__cross{width:16px;height:16px;background:var(--red);position:relative}
.swiss-stamp__cross::before,
.swiss-stamp__cross::after{content:"";position:absolute;background:#fff}
.swiss-stamp__cross::before{left:6px;right:6px;top:3px;bottom:3px}
.swiss-stamp__cross::after{top:6px;bottom:6px;left:3px;right:3px}

/* ---------- Legacy hero pillars compat ---------- */
.hero__pillars--compact{
  grid-template-columns:repeat(3,auto);justify-content:start;gap:16px 44px;
}
@media (max-width:640px){ .hero__pillars--compact{grid-template-columns:1fr} }

/* =============================================================
   NEW COMPONENTS — v4 (best-of-class competitor principles)
   ============================================================= */

/* ---------- Heritage moment (Pictet-style) ---------- */
.heritage{
  display:grid;grid-template-columns:1fr 1.35fr;gap:56px;align-items:end;
  padding-top:16px;
}
@media (max-width:900px){ .heritage{grid-template-columns:1fr;gap:32px} }

.heritage__left{position:relative}
.heritage__eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--red);font-weight:600;
  margin-bottom:16px;
}
.heritage__eyebrow::before{content:"";width:22px;height:1px;background:var(--red)}
.heritage__year{
  font-family:var(--ff-serif);font-weight:500;
  font-size:clamp(88px, 12.5vw, 180px);line-height:.85;color:var(--ink);
  letter-spacing:-.045em;margin:0;font-feature-settings:"lnum";
}
.heritage__year sup{
  font-family:var(--ff-sans);font-size:.14em;vertical-align:top;margin-left:10px;
  letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--red);
  display:inline-block;padding-top:16px;
}
.heritage__claim{
  font-family:var(--ff-serif);font-style:italic;font-weight:500;
  font-size:clamp(18px,2vw,26px);color:var(--ink);
  line-height:1.32;margin:18px 0 0;letter-spacing:-.01em;max-width:26ch;
}

.heritage__right{padding-bottom:10px}
.heritage__stats{
  display:grid;grid-template-columns:repeat(2,1fr);gap:0;
  border-top:1px solid var(--line);
}
.heritage__stats-item{
  padding:20px 22px 20px 0;
  border-right:1px solid var(--line);border-bottom:1px solid var(--line);
  display:flex;flex-direction:column;gap:6px;
}
.heritage__stats-item:nth-child(2n){padding-left:22px;border-right:none}
.heritage__stats-item:nth-last-child(-n+2){border-bottom:none}
@media (max-width:520px){
  .heritage__stats{grid-template-columns:1fr}
  .heritage__stats-item{padding:18px 0!important;border-right:none;border-bottom:1px solid var(--line)}
  .heritage__stats-item:last-child{border-bottom:none}
}
.heritage__stats-num{
  font-family:var(--ff-serif);font-weight:500;font-size:36px;line-height:1;color:var(--ink);
  letter-spacing:-.028em;
}
.heritage__stats-lbl{
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--red);font-weight:600;
}
.heritage__stats-desc{font-size:12.5px;color:var(--body);line-height:1.55;margin-top:2px}

/* ---------- Audience picker (Pictet-style client segmentation) ---------- */
.audience-picker{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:1px solid var(--line);
}
@media (max-width:900px){ .audience-picker{grid-template-columns:1fr} }
.audience-tile{
  position:relative;padding:44px 36px 38px 0;
  border-right:1px solid var(--line);
  display:flex;flex-direction:column;gap:0;
  transition:background var(--dur) var(--ease);
  color:var(--ink);text-decoration:none;overflow:hidden;
}
.audience-tile + .audience-tile{padding-left:36px}
.audience-tile:last-child{border-right:none;padding-right:0}
@media (max-width:900px){
  .audience-tile{border-right:none;border-bottom:1px solid var(--line);padding:36px 0!important}
  .audience-tile + .audience-tile{padding-left:0}
  .audience-tile:last-child{border-bottom:none}
}
.audience-tile::after{
  content:"→";position:absolute;top:44px;right:14px;
  font-size:18px;color:var(--mute);
  transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);
  font-family:var(--ff-sans);
}
.audience-tile:last-child::after{right:0}
.audience-tile:hover{background:var(--paper-2)}
.audience-tile:hover h3{color:var(--red)}
.audience-tile:hover::after{transform:translate(5px,-5px);color:var(--red)}

.audience-tile__num{
  font-family:var(--ff-serif);font-style:italic;font-size:14px;
  color:var(--red);font-weight:600;margin-bottom:18px;padding-bottom:5px;
  border-bottom:1px solid var(--red);display:inline-block;align-self:flex-start;min-width:26px;
}
.audience-tile h3{
  font-family:var(--ff-serif);font-weight:500;font-size:26px;line-height:1.1;
  color:var(--ink);margin:0 0 10px;letter-spacing:-.02em;
  transition:color var(--dur) var(--ease);
}
.audience-tile p{font-size:14.5px;line-height:1.65;color:var(--body);margin:0 0 18px;flex:1}
.audience-tile__meta{
  padding-top:16px;border-top:1px solid var(--line);
  font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--mute);font-weight:600;
}

/* ---------- Partner voice (Pictet-style leadership quote) ---------- */
.partner-voice{
  padding:96px 0;background:var(--paper);position:relative;
}
.partner-voice__inner{
  display:grid;grid-template-columns:1fr 1.35fr;gap:64px;align-items:center;
  max-width:1160px;margin-inline:auto;
}
@media (max-width:960px){ .partner-voice__inner{grid-template-columns:1fr;gap:36px;max-width:600px} }

.partner-voice__portrait{
  position:relative;aspect-ratio:4/5;overflow:hidden;
  background:var(--bone);
}
.partner-voice__portrait img{
  width:100%;height:100%;object-fit:cover;object-position:center top;
  filter:saturate(.92) contrast(1.03);
}
.partner-voice__body{position:relative;padding-left:0}
.partner-voice__eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;
  color:var(--red);font-weight:600;margin-bottom:18px;
}
.partner-voice__eyebrow::before{content:"";width:22px;height:1px;background:var(--red)}
.partner-voice__quote{
  font-family:var(--ff-serif);font-weight:500;font-style:italic;
  font-size:clamp(22px,2.6vw,34px);line-height:1.26;color:var(--ink);
  margin:0 0 26px;letter-spacing:-.02em;position:relative;
}
.partner-voice__quote::before{
  content:"\201C";
  position:absolute;top:-.24em;left:-.4em;
  font-family:var(--ff-serif);font-style:italic;
  font-size:1.5em;color:var(--red);opacity:.28;
  line-height:1;
}
.partner-voice__attr{
  display:flex;flex-direction:column;gap:3px;
  padding-top:20px;border-top:1px solid var(--line);
}
.partner-voice__name{font-family:var(--ff-serif);font-weight:500;font-size:18px;color:var(--ink);letter-spacing:-.01em}
.partner-voice__role{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--red);font-weight:600}

/* ---------- Insights teaser (Pictet/Lombard/JB-style) ---------- */
.insights{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-top:1px solid var(--line);
}
@media (max-width:960px){ .insights{grid-template-columns:1fr} }
.insight-card{
  position:relative;padding:36px 28px 32px 0;
  border-right:1px solid var(--line);
  display:flex;flex-direction:column;gap:0;
  transition:background var(--dur) var(--ease);
  text-decoration:none;color:var(--ink);
}
.insight-card + .insight-card{padding-left:28px}
.insight-card:last-child{border-right:none;padding-right:0}
@media (max-width:960px){
  .insight-card{border-right:none;border-bottom:1px solid var(--line);padding:30px 0!important}
  .insight-card + .insight-card{padding-left:0}
  .insight-card:last-child{border-bottom:none}
}
.insight-card:hover{background:var(--paper-2)}
.insight-card__meta{
  display:flex;align-items:center;gap:10px;
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;
  color:var(--mute);font-weight:600;margin-bottom:18px;
}
.insight-card__meta strong{color:var(--red);font-weight:600}
.insight-card__meta span{color:var(--mute)}
.insight-card__meta::before{content:"";width:22px;height:1px;background:var(--red)}
.insight-card__title{
  font-family:var(--ff-serif);font-weight:500;font-size:21px;line-height:1.22;
  color:var(--ink);margin:0 0 12px;letter-spacing:-.015em;
  transition:color var(--dur) var(--ease);
}
.insight-card:hover .insight-card__title{color:var(--red)}
.insight-card__excerpt{font-size:14px;line-height:1.62;color:var(--body);margin:0 0 18px;flex:1}
.insight-card__cta{
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px;
  align-self:flex-start;transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease), gap var(--dur) var(--ease);gap:8px;display:inline-flex;align-items:center;
}
.insight-card:hover .insight-card__cta{color:var(--red);border-bottom-color:var(--red);gap:12px}

/* ---------- Newsletter (Lombard Odier / Pictet-style) ---------- */
.newsletter{
  padding:72px 0;background:var(--bone);border-top:1px solid var(--line);
}
.newsletter__inner{
  display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;max-width:1160px;margin-inline:auto;
}
@media (max-width:900px){ .newsletter__inner{grid-template-columns:1fr;gap:28px} }
.newsletter__eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--red);font-weight:600;margin-bottom:14px;
}
.newsletter__eyebrow::before{content:"";width:22px;height:1px;background:var(--red)}
.newsletter__title{
  font-family:var(--ff-serif);font-weight:500;
  font-size:clamp(24px,2.8vw,38px);line-height:1.1;letter-spacing:-.022em;
  color:var(--ink);margin:0 0 12px;
}
.newsletter__title em{font-style:italic;color:var(--ink);font-weight:500}
.newsletter__sub{font-size:14.5px;line-height:1.62;color:var(--body);margin:0;max-width:44ch}
.newsletter__form{
  display:grid;grid-template-columns:1fr auto;gap:0;align-items:end;
  border-bottom:1px solid var(--ink);padding-bottom:12px;
}
.newsletter__input{
  border:0;background:transparent;padding:10px 0;font-size:15px;
  font-family:inherit;color:var(--ink);outline:none;
  letter-spacing:-.005em;
}
.newsletter__input::placeholder{color:var(--mute-2)}
.newsletter__submit{
  display:inline-flex;align-items:center;gap:10px;
  padding:10px 0 10px 18px;background:transparent;
  color:var(--ink);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;
  cursor:pointer;transition:color var(--dur) var(--ease), gap var(--dur) var(--ease);
}
.newsletter__submit:hover{color:var(--red);gap:14px}
.newsletter__meta{margin-top:12px;font-size:11.5px;color:var(--mute);line-height:1.6;letter-spacing:.005em}
.newsletter__meta a{color:var(--ink);border-bottom:1px solid var(--line);transition:border-color var(--dur) var(--ease)}
.newsletter__meta a:hover{border-bottom-color:var(--ink)}

/* ---------- Signature tagline ---------- */
.tagline{
  display:inline-flex;align-items:center;gap:14px;
  font-family:var(--ff-serif);font-style:italic;
  font-size:15px;color:var(--red);letter-spacing:-.005em;
}
.tagline::before,.tagline::after{content:"";width:20px;height:1px;background:var(--red)}
.tagline--light{color:rgba(255,255,255,.85)}
.tagline--light::before,.tagline--light::after{background:rgba(255,255,255,.5)}

/* ---------- Link arrow ---------- */
.link-arrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
  color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:3px;
  transition:color var(--dur) var(--ease), gap var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.link-arrow:hover{color:var(--red);border-bottom-color:var(--red);gap:16px}

/* =============================================================
   v6 — Simplified, editorial, asymmetric
   ============================================================= */

/* ---------- STORY (asymmetric intro) ---------- */
.story{
  display:grid;grid-template-columns:1fr 1.35fr;gap:80px;align-items:start;
}
@media (max-width:900px){ .story{grid-template-columns:1fr;gap:36px} }
.story__label{
  display:flex;flex-direction:column;gap:14px;
  padding-top:8px;
}
.story__eyebrow{
  font-family:var(--ff-sans);font-size:10px;letter-spacing:.32em;text-transform:uppercase;
  font-weight:600;color:var(--red);display:inline-flex;align-items:center;gap:14px;
}
.story__eyebrow::before{content:"";width:24px;height:1px;background:var(--red)}
.story__meta{
  font-family:var(--ff-serif);font-style:italic;font-size:17px;color:var(--body);
  line-height:1.45;max-width:22ch;margin:0;
}
.story__meta strong{color:var(--ink);font-style:normal;font-weight:500;letter-spacing:-.005em}
.story__body h2{
  font-family:var(--ff-serif);font-weight:500;
  font-size:clamp(28px,3.4vw,46px);line-height:1.08;letter-spacing:-.02em;
  color:var(--ink);margin:0 0 22px;
}
.story__body h2 em{font-style:italic;font-weight:500}
.story__body p{font-size:16px;line-height:1.7;color:var(--body);margin:0 0 16px;max-width:58ch}
.story__body p:last-of-type{margin-bottom:0}
.story__body p strong{color:var(--ink);font-weight:500}
.story__sig{
  display:inline-flex;align-items:center;gap:14px;margin-top:26px;
  font-size:10.5px;letter-spacing:.28em;text-transform:uppercase;font-weight:600;
  color:var(--mute);
}
.story__sig::before{content:"";width:32px;height:1px;background:var(--ink)}

/* ---------- PRINCIPLES (editorial three-column colophon) ---------- */
.principles{
  display:grid;grid-template-columns:repeat(3, 1fr);gap:40px 48px;
  padding:40px 0 4px;margin-top:40px;
  border-top:1px solid var(--line);
}
.principles__item{position:relative;padding-top:14px}
.principles__item::before{
  content:"";position:absolute;top:0;left:0;width:22px;height:1px;background:var(--red);
}
.principles__key{
  display:block;
  font-family:var(--ff-serif);font-weight:500;font-style:italic;
  font-size:clamp(19px,1.35vw,22px);line-height:1.15;
  color:var(--ink);letter-spacing:-.012em;margin-bottom:8px;
}
.principles__val{
  margin:0;color:var(--mute);
  font-size:14.5px;line-height:1.55;max-width:32ch;
}
@media (max-width:760px){
  .principles{grid-template-columns:1fr;gap:26px;padding:32px 0 4px;margin-top:28px}
  .principles__val{max-width:none}
}

/* ---------- SVC-LIST (numbered magazine list, no cards) ---------- */
.svc-list{list-style:none;padding:0;margin:0}
.svc-list__item{
  display:grid;grid-template-columns:80px 1fr auto;
  gap:32px;align-items:baseline;
  padding:32px 0 30px;border-bottom:1px solid var(--line);
  transition:background var(--dur) var(--ease), padding var(--dur) var(--ease);
}
.svc-list__item:first-child{border-top:1px solid var(--line)}
.svc-list__item:hover{background:var(--paper-2);padding-left:12px;padding-right:12px}
@media (max-width:720px){
  .svc-list__item{grid-template-columns:auto 1fr;gap:20px;padding:26px 0}
  .svc-list__item:hover{padding-left:0;padding-right:0}
}
.svc-list__num{
  font-family:var(--ff-serif);font-style:italic;font-weight:500;
  font-size:24px;color:var(--red);letter-spacing:-.02em;
}
.svc-list__body h3{
  font-family:var(--ff-serif);font-weight:500;font-size:26px;line-height:1.15;
  color:var(--ink);margin:0 0 8px;letter-spacing:-.018em;
  transition:color var(--dur) var(--ease);
}
.svc-list__item:hover .svc-list__body h3{color:var(--red)}
.svc-list__body p{font-size:15px;line-height:1.62;color:var(--body);margin:0;max-width:56ch}
.svc-list__tag{
  font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;
  color:var(--mute);white-space:nowrap;justify-self:end;padding-top:6px;
}
.svc-list__tag em{font-style:normal;color:var(--red);font-weight:600}
@media (max-width:720px){
  .svc-list__num{grid-row:1;grid-column:1}
  .svc-list__body{grid-row:1;grid-column:2}
  .svc-list__tag{grid-row:2;grid-column:1 / -1;justify-self:start;padding-top:8px}
}

/* ---------- QUOTES-STRIP (mixed testimonial layout) ---------- */
.quotes-strip{
  display:grid;grid-template-columns:1.35fr 1fr;gap:64px;align-items:start;
}
@media (max-width:900px){ .quotes-strip{grid-template-columns:1fr;gap:36px} }

.quote-lead{
  position:relative;padding:0 0 0 44px;
}
.quote-lead::before{
  content:"\201C";
  font-family:var(--ff-serif);font-style:italic;
  font-size:120px;line-height:.75;color:var(--red);opacity:.22;
  position:absolute;top:-.1em;left:0;
}
.quote-lead__text{
  font-family:var(--ff-serif);font-style:italic;font-weight:400;
  font-size:clamp(22px,2.4vw,32px);line-height:1.32;color:var(--ink);
  margin:0 0 28px;letter-spacing:-.008em;
}
.quote-lead__attr{
  display:flex;flex-direction:column;gap:3px;
  padding-top:20px;border-top:1px solid var(--line);
}
.quote-lead__name{font-family:var(--ff-serif);font-weight:500;font-size:17px;color:var(--ink)}
.quote-lead__role{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--red);font-weight:600}

.quotes-mini{display:flex;flex-direction:column;gap:0}
.quote-mini{
  padding:22px 0;border-bottom:1px solid var(--line);
}
.quote-mini:first-child{border-top:1px solid var(--line)}
.quote-mini__text{
  font-family:var(--ff-serif);font-size:16px;line-height:1.55;color:var(--ink);
  margin:0 0 10px;letter-spacing:-.005em;
}
.quote-mini__attr{
  font-size:10.5px;letter-spacing:.14em;color:var(--mute);font-weight:600;
}
.quote-mini__attr strong{color:var(--ink);font-weight:600;letter-spacing:-.005em;font-size:12px}

/* ---------- INSIGHTS v2 (asymmetric 2-item, not grid) ---------- */
.insights-v2{
  display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start;
  border-top:1px solid var(--line);padding-top:36px;
}
@media (max-width:900px){ .insights-v2{grid-template-columns:1fr;gap:44px} }
.insight-lead{display:block;color:var(--ink);text-decoration:none}

/* Text-only lead article (no image) — clean editorial */
.insights-v2--text{grid-template-columns:1fr 1fr;gap:80px}
.insights-v2--text .insight-lead{
  padding-right:12px;border-right:1px solid var(--line);
}
.insights-v2--text .insight-lead__title{
  font-size:clamp(28px,2.8vw,40px);line-height:1.14;margin-bottom:18px;
}
.insights-v2--text .insight-lead__excerpt{font-size:16px;line-height:1.65;max-width:none;margin-bottom:22px}
.insight-lead__link{
  display:inline-flex;align-items:center;gap:10px;
  font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;
  color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:4px;
  transition:color var(--dur) var(--ease), border-color var(--dur) var(--ease);
}
.insight-lead:hover .insight-lead__link{color:var(--red);border-color:var(--red)}
@media (max-width:900px){
  .insights-v2--text{grid-template-columns:1fr;gap:44px}
  .insights-v2--text .insight-lead{padding-right:0;border-right:0;padding-bottom:28px;border-bottom:1px solid var(--line)}
}
.insight-lead__meta{
  font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:600;
  color:var(--red);margin-bottom:12px;display:inline-flex;align-items:center;gap:12px;
}
.insight-lead__meta::before{content:"";width:24px;height:1px;background:var(--red)}
.insight-lead__meta span{color:var(--mute);font-weight:600}
.insight-lead__title{
  font-family:var(--ff-serif);font-weight:500;
  font-size:clamp(24px,2.4vw,32px);line-height:1.18;color:var(--ink);
  margin:0 0 12px;letter-spacing:-.018em;transition:color var(--dur) var(--ease);
}
.insight-lead:hover .insight-lead__title{color:var(--red)}
.insight-lead__excerpt{font-size:15px;line-height:1.62;color:var(--body);margin:0;max-width:56ch}

.insight-side{display:flex;flex-direction:column;gap:0}
.insight-row{
  display:block;color:var(--ink);text-decoration:none;
  padding:22px 0;border-bottom:1px solid var(--line);
  transition:padding var(--dur) var(--ease);
}
.insight-row:first-child{border-top:1px solid var(--line)}
.insight-row:hover{padding-left:8px}
.insight-row__meta{
  font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--red);
  font-weight:600;margin-bottom:8px;
}
.insight-row__title{
  font-family:var(--ff-serif);font-weight:500;font-size:20px;line-height:1.28;color:var(--ink);
  margin:0;letter-spacing:-.014em;transition:color var(--dur) var(--ease);
}
.insight-row:hover .insight-row__title{color:var(--red)}

/* ---------- TRUST BAND (banks + awards combined) ---------- */
.trust-band{
  display:grid;grid-template-columns:auto 1fr;gap:56px;align-items:center;
  padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
@media (max-width:900px){ .trust-band{grid-template-columns:1fr;gap:22px} }
.trust-band__label{
  font-family:var(--ff-serif);font-style:italic;font-size:16px;color:var(--ink);
  line-height:1.4;max-width:16ch;
}
.trust-band__label strong{font-style:normal;font-weight:500;letter-spacing:-.005em}
.trust-band__logos{
  display:flex;align-items:center;flex-wrap:wrap;gap:22px 40px;justify-content:flex-end;
}
@media (max-width:900px){ .trust-band__logos{justify-content:flex-start} }
.trust-band__logos img{
  max-height:32px;max-width:100px;width:auto;height:auto;object-fit:contain;
  filter:grayscale(1);opacity:.55;transition:opacity var(--dur) var(--ease),filter var(--dur) var(--ease);
}
.trust-band__logos img:hover{filter:grayscale(0);opacity:1}

/* ---------- COMBINED NEWSLETTER + CTA ---------- */
.close-band{
  background:var(--ink);color:#fff;padding:96px 0 88px;position:relative;overflow:hidden;
}
.close-band::before{
  content:"";position:absolute;top:0;left:0;width:88px;height:1px;background:var(--red);
}
.close-band__inner{
  display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:end;
  max-width:1180px;margin-inline:auto;
}
@media (max-width:900px){ .close-band__inner{grid-template-columns:1fr;gap:40px} }
.close-band__eyebrow{
  display:inline-flex;align-items:center;gap:12px;
  font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;font-weight:600;
  color:rgba(255,255,255,.7);margin-bottom:22px;
}
.close-band__eyebrow::before{content:"";width:24px;height:1px;background:var(--red)}
.close-band h2{
  font-family:var(--ff-serif);font-weight:500;
  font-size:clamp(30px,3.4vw,48px);line-height:1.06;letter-spacing:-.022em;
  color:#fff;margin:0 0 22px;
}
.close-band h2 em{font-style:italic;color:#fff;font-weight:500}
.close-band__sub{font-size:15.5px;line-height:1.65;color:rgba(255,255,255,.75);margin:0 0 26px;max-width:52ch}
.close-band__contacts{display:flex;flex-direction:column;gap:14px;font-size:14.5px}
.close-band__contact{
  display:inline-flex;align-items:center;gap:14px;color:#fff;
  transition:color var(--dur) var(--ease);letter-spacing:-.005em;
}
.close-band__contact:hover{color:var(--red)}
.close-band__contact::before{content:"";width:18px;height:1px;background:var(--red)}
.close-band__contact strong{font-weight:500;color:rgba(255,255,255,.7);min-width:82px;letter-spacing:.14em;text-transform:uppercase;font-size:10.5px}

.close-band__form-wrap{
  padding-left:0;
  padding-top:8px;
}
.close-band__form-label{
  display:block;font-size:10.5px;letter-spacing:.32em;text-transform:uppercase;
  color:rgba(255,255,255,.6);margin-bottom:14px;font-weight:600;
}
.close-band__form{
  display:grid;grid-template-columns:1fr auto;
  border-bottom:1px solid rgba(255,255,255,.35);padding-bottom:10px;
}
.close-band__input{
  background:transparent;border:0;outline:none;color:#fff;
  font-family:inherit;font-size:15.5px;padding:8px 0;
  letter-spacing:-.005em;
}
.close-band__input::placeholder{color:rgba(255,255,255,.4)}
.close-band__submit{
  background:transparent;color:#fff;
  padding:8px 0 8px 20px;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  font-weight:600;cursor:pointer;
  display:inline-flex;align-items:center;gap:10px;
  transition:color var(--dur) var(--ease), gap var(--dur) var(--ease);
}
.close-band__submit:hover{color:var(--red);gap:14px}
.close-band__note{
  margin-top:14px;font-size:11.5px;color:rgba(255,255,255,.45);line-height:1.55;
}
.close-band__note a{color:rgba(255,255,255,.75);border-bottom:1px solid rgba(255,255,255,.25);transition:border-color var(--dur) var(--ease)}
.close-band__note a:hover{border-bottom-color:#fff}

/* ---------- Kill unused legacy layouts on home ---------- */
.pillars.pillars--home-legacy{display:none}

