/* Three aligned editorial cards, following the supplied reference framework. */
.about.about--cards {
  display:block; min-height:0; margin:0; padding:72px 0 96px; background:#fff;
}
.about--cards .about-cards-inner { width:92%; max-width:1600px; }
.about-heading {
  display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,330px);
  align-items:end; gap:32px clamp(40px,4vw,64px);
  margin:0 0 34px; padding-bottom:30px; border-bottom:1px solid #dce5eb;
  text-align:left;
}
.about.about--cards h2,html[lang="en"] .about.about--cards h2 {
  display:flex; flex-wrap:wrap; column-gap:.14em;
  font-size:clamp(36px,3.3vw,52px); line-height:1.35;
  font-weight:500; letter-spacing:-.9px; color:#17384e;
}
.about-heading h2>span { display:block; white-space:nowrap; }
.about-heading h2>span:last-child { color:#0753a2; }
.about-heading-copy { max-width:330px; margin:0 0 3px; color:#6b7f8e; font-size:14px; line-height:1.9; }
.about-heading-copy>span { display:block; }
/* The outer card keeps the page reveal; only the inner layer rotates. */
.about-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.about-card { position:relative; min-width:0; perspective:1400px; }
.about-card-face {
  position:relative; min-width:0; padding:30px; border-radius:22px; background:#f0f2f3;
  display:flex; flex-direction:column; border:1px solid #e9eef1;
}
.about-card-back { background:linear-gradient(145deg,#f1f6fa,#e4eef6); margin-top:16px; }
.about-card-kicker { font-size:10px; line-height:1.6; letter-spacing:1.5px; color:#7b8e9b; margin-bottom:18px; }
.about-card h3 { color:#17384e; font-size:clamp(22px,2vw,30px); line-height:1.45; font-weight:500; letter-spacing:-.4px; min-height:2.9em; }
.about-card-visual { margin:20px 0 0; width:100%; aspect-ratio:1.45; overflow:hidden; border-radius:12px; background:#dce5eb; }
.about-card-visual img { width:100%; height:100%; object-fit:cover; }
.about-card:nth-child(1) .about-card-visual img { object-position:50% 55%; }
.about-card:nth-child(2) .about-card-visual img { object-position:65% 50%; }
.about-card:nth-child(3) .about-card-visual img { object-position:50% 48%; }
.about-card-metric { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px 16px; padding-top:28px; margin-top:auto; }
.about-card-metric strong { color:#0753a2; font-size:clamp(46px,4vw,60px); font-weight:500; line-height:1; letter-spacing:-2px; white-space:nowrap; }
.about-card-metric sup { font-size:.43em; vertical-align:super; letter-spacing:0; padding-left:3px; }
.about-card-metric>span { color:#6d818e; font-size:12px; line-height:1.65; }
.about-card-description { color:#607482; font-size:14px; line-height:1.85; margin:12px 0 23px; }
.about-card-details { display:grid; gap:8px; list-style:none; margin:0 0 24px; padding:0; }
.about-card-details li { display:grid; gap:4px; padding:12px 15px; background:#ffffff9c; border-radius:10px; }
.about-card-details b { color:#234a65; font-size:14px; font-weight:500; line-height:1.5; }
.about-card-details li>span { color:#718694; font-size:12px; line-height:1.65; }
.about-card-action {
  display:flex; width:100%; justify-content:center; align-items:center; margin-top:auto;
  min-height:48px; padding:12px 17px; border-radius:9px;
  background:#0753a2; color:#fff; font-size:14px; font-weight:500;
  transition:background .2s;
}
.about-card-action:hover { background:#123e6b; }
.about-flip-toggle { display:none; }
.about-card.is-flip-ready .about-card-rotor {
  display:grid; height:100%; transform-style:preserve-3d;
  transition:transform .72s cubic-bezier(.22,.65,.22,1);
}
.about-card.is-flip-ready .about-card-face {
  grid-area:1 / 1; padding-bottom:88px; backface-visibility:hidden; -webkit-backface-visibility:hidden;
}
.about-card.is-flip-ready .about-card-back { margin:0; transform:rotateY(180deg); }
.about-card.is-flipped .about-card-rotor { transform:rotateY(180deg); }
.about-card-face[inert] { pointer-events:none; }
.about-card.is-flip-ready .about-flip-toggle {
  position:absolute; left:30px; right:30px; bottom:24px;
  display:flex; align-items:center; justify-content:space-between; gap:15px;
  min-height:44px; padding:8px 0; color:#4c6b80; font-size:13px;
}
.about-flip-toggle svg { width:21px; height:21px; fill:none; stroke:currentColor; stroke-width:1.3; }
.about-flip-toggle:hover { color:#0753a2!important; }
.about-flip-toggle:focus-visible,.about-card-action:focus-visible { outline:2px solid #0753a2; outline-offset:5px; }
.about-card.is-flipped .about-flip-toggle { color:#476982; }
html[lang="en"] .about-card h3 { font-size:clamp(22px,1.95vw,29px); }
html[lang="en"] .about-card-metric>span { max-width:180px; }
@media(min-width:721px) and (max-width:1050px) {
  .about.about--cards { padding-top:56px; }
  .about-heading { grid-template-columns:1fr; gap:18px; padding-bottom:26px; margin-bottom:28px; }
  .about-heading-copy { max-width:560px; margin:0; }
  .about-card-grid { gap:14px; }
  .about-card-face { padding:24px 20px; border-radius:18px; }
  .about-card-kicker { font-size:8px; letter-spacing:1px; }
  .about-card h3,html[lang="en"] .about-card h3 { font-size:21px; }
  .about-card-description { font-size:13px; }
  .about-card-metric { display:block; padding-top:24px; }
  .about-card-metric>span { display:block; margin-top:12px; font-size:11px; }
  .about-card-details li { padding:11px; }
  .about-card-details b { font-size:13px; }
  .about-card-details li>span { font-size:11px; }
  .about-card-action { font-size:12px; padding-inline:12px; }
  .about-card.is-flip-ready .about-flip-toggle { left:20px; right:20px; font-size:12px; }
}
@media(max-width:720px) {
  .about.about--cards { padding:42px 0 56px; }
  .about--cards .about-cards-inner { width:calc(100% - 40px); max-width:520px; }
  .about-heading { grid-template-columns:1fr; gap:17px; margin-bottom:26px; padding-bottom:25px; }
  .about.about--cards h2,html[lang="en"] .about.about--cards h2 { display:block; font-size:32px; line-height:1.42; letter-spacing:-.5px; }
  .about-heading-copy { max-width:360px; font-size:13px; margin:0; line-height:1.85; }
  .about-card-grid { grid-template-columns:1fr; gap:20px; }
  .about-card-face { padding:25px; border-radius:20px; }
  .about-card-kicker { font-size:9px; letter-spacing:1.2px; margin-bottom:14px; }
  .about-card h3,html[lang="en"] .about-card h3 { font-size:25px; min-height:0; line-height:1.4; }
  .about-card-description { font-size:13px; margin:16px 0 20px; }
  .about-card-visual { aspect-ratio:1.4; margin-top:23px; }
  .about-card-metric { padding-top:26px; }
  .about-card-metric strong { font-size:46px; }
  .about-card-metric>span { font-size:11px; }
  html[lang="en"] .about-card-metric>span { max-width:160px; }
  .about-card-action { font-size:13px; }
  .about-card.is-flip-ready .about-flip-toggle { left:25px; right:25px; }
}
@media(prefers-reduced-motion:reduce) {
  .about-card.is-flip-ready .about-card-rotor { transition:none; transform:none; }
  .about-card.is-flip-ready .about-card-back { transform:none; }
  .about-card-face[inert] { visibility:hidden; }
  .about-card-action { transition:none; }
}
