/* About only. The accepted R1 shell, body palette and inner icons remain shared. */
.about-vc2 { padding-bottom:0; }
.about-vc2 .inner-hero--about { --hero-height:40cqw; --photo-width:55%; --copy-width:46%; --photo-y:50%; background:linear-gradient(120deg,#0d3447,#2f667a 55%,#8caeb8); }
.about-vc2 .inner-hero--about::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(105deg,#0b3042 0%,#1e536a 27%,rgba(32,82,104,.96) 40%,rgba(32,82,104,.70) 52%,transparent 75%); }
.about-vc2 .inner-hero-photo::after { display:none; }
.about-vc2 .inner-hero-photo { mask-image:linear-gradient(90deg,transparent,#000 32%); }
.about-vc2 .inner-hero-tagline { max-width:24ch; }
.about-story { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.35fr); gap:72px; padding-block:52px 32px; scroll-margin-top:24px; }
.about-vc2 .about-story h2 { max-width:16ch; }
.about-story p:last-child,.about-vc2 .about-value p,.about-space p:last-child,.about-respect p,.about-next p { margin-bottom:0; }
.about-values { padding-block:0 34px; }
.about-vc2 .about-values > h2 { font-size:32px; }
.about-values__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:44px; }
.about-value { border-top:1px solid var(--inner-line); padding-top:24px; }
.about-value .inner-round-icon { margin-bottom:20px; }
.about-vc2 .about-value h3 { margin-bottom:10px; }
.about-value p { font-size:18px; line-height:1.5; }
.about-learning { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.08fr); gap:52px; align-items:center; padding-block:0 34px; }
.about-learning__photo { aspect-ratio:1400 / 933; border-radius:5px; overflow:hidden; }
.about-learning__photo picture,.about-learning__photo img { display:block; width:100%; height:100%; }
.about-learning__photo img { object-fit:contain; }
.about-learning .text-link,.about-address .text-link,.about-policy-links .text-link,.about-next .text-link { font-size:18px; }
.about-space { padding-block:0 24px; }
.about-space__panel { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,.82fr); gap:40px; padding:32px 38px; border:1px solid var(--inner-line); border-radius:6px; background:#faecd4; align-items:center; }
.about-space p,.about-respect p { font-size:18px; line-height:1.5; }
.about-vc2 .about-space h2 { font-size:34px; margin-bottom:14px; }
.about-address { padding:26px; border:1px solid var(--inner-line); border-radius:5px; background:var(--inner-paper); }
.about-address address { font-style:normal; font-size:18px; margin-bottom:18px; }
.about-address address a { display:inline-block; margin-top:10px; }
.about-address__links { display:flex; flex-wrap:wrap; gap:12px 20px; align-items:center; }
.about-respect { padding-block:0 24px; }
.about-respect__panel { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:40px; padding:26px 32px; border:1px solid var(--inner-line); border-radius:6px; background:#f3f3e3; }
.about-vc2 .about-respect h2 { font-size:28px; margin-bottom:10px; }
.about-policy-links { display:flex; flex-direction:column; gap:12px; justify-content:center; }
.about-next { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:32px; align-items:center; padding-block:0 34px; }
.about-vc2 .about-next h2 { font-size:34px; margin-bottom:10px; }
.about-next p { font-size:18px; }
.about-next__links { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.about-next__links .text-link { grid-column:1 / -1; }
@media(min-width:768px) and (max-width:1119px) {
 .about-vc2 .inner-hero--about { --hero-height:480px; --photo-width:55%; --copy-width:48%; --photo-y:42%; }
 .about-vc2 .inner-hero h1 { font-size:48px; }
 .about-vc2 .inner-hero-tagline { font-size:28px; }
 .about-vc2 .inner-hero__intro { font-size:18px; }
 .about-story { gap:32px; }
 .about-values__grid { gap:24px; }
 .about-learning { gap:28px; }
 .about-space__panel { padding:26px; gap:26px; grid-template-columns:1.2fr 1fr; }
 .about-address { padding:20px; }
 .about-next { grid-template-columns:1fr; }
}
@media(max-width:767px) {
 .about-vc2 .inner-hero__layout { display:flex; min-height:560px; padding-block:26px; align-items:flex-start; }
 .about-vc2 .inner-hero__copy { width:62%; padding:0; }
 .about-vc2 .inner-hero h1 { font-size:38px; white-space:nowrap; }
 .about-vc2 .inner-hero-tagline { font-size:24px; line-height:1.15; }
 .about-vc2 .inner-hero__intro { font-size:17px; line-height:1.5; }
 .about-vc2 .inner-hero .eyebrow { font-size:11px; letter-spacing:.12em; }
 .about-vc2 .inner-hero-photo { position:absolute; inset:auto 0 0 auto; width:72%; height:440px; aspect-ratio:auto; z-index:-2; mask-image:linear-gradient(90deg,transparent,#000 30%),linear-gradient(180deg,transparent,#000 18%); mask-composite:intersect; }
 .about-vc2 .inner-hero-photo img { object-position:60% 50%; }
 .about-vc2 .inner-hero--about::before { background:linear-gradient(112deg,#0c3449 0%,rgba(20,72,94,.98) 27%,rgba(25,78,100,.91) 48%,rgba(25,78,100,.12) 80%,transparent); }
 .about-vc2 .inner-hero__actions .btn { min-width:0; width:100%; max-width:170px; padding-inline:14px; }
 .about-story,.about-learning,.about-space__panel,.about-respect__panel,.about-next { grid-template-columns:1fr; }
 .about-story { gap:22px; padding-block:30px; }
 .about-vc2 h2 { font-size:31px; }
 .about-vc2 p { font-size:17px; }
 .about-values__grid { grid-template-columns:1fr; gap:24px; }
 .about-value { display:flex; align-items:flex-start; gap:18px; padding-top:22px; }
 .about-value .inner-round-icon { margin:0; }
 .about-vc2 .about-values > h2 { font-size:28px; }
 .about-value p { font-size:16px; }
 .about-learning { gap:24px; padding-bottom:28px; }
 .about-space__panel { padding:22px; gap:24px; }
 .about-vc2 .about-space h2 { font-size:29px; }
 .about-address { padding:20px; }
 .about-address address,.about-address .text-link { font-size:16px; }
 .about-address__links { display:flex; flex-direction:column; align-items:stretch; }
 .about-address__links .text-link { justify-content:center; }
 .about-respect__panel { padding:22px; gap:18px; }
 .about-vc2 .about-respect h2 { font-size:26px; }
 .about-policy-links { flex-direction:row; justify-content:flex-start; gap:20px; }
 .about-policy-links .text-link { font-size:16px; }
 .about-next { gap:20px; padding-bottom:30px; }
 .about-vc2 .about-next h2 { font-size:30px; }
 .about-next__links { grid-template-columns:1fr; }
}
