/*
 * TNYI About Us
 * Scoped to .about-page so this page can share the homepage chrome without
 * inheriting the old About Us layout rules in style.css.
 */
.about-page {
  --about-navy: #131f45;
  --about-navy-deep: #0e1834;
  --about-blue: #1e42af;
  --about-orange: #d04f26;
  --about-ink: #1b2333;
  --about-body: #4b5468;
  --about-muted: #7c8598;
  --about-line: #e4e7ef;
  --about-soft: #f6f7fb;
  --about-blue-soft: #ebf1fc;
  --about-max: 1240px;
  --about-font: "Montserrat-Regular", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--about-ink);
  background: var(--about-soft);
  font-family: var(--about-font);
  overflow: hidden;
}

.about-page *,
.about-page *::before,
.about-page *::after { box-sizing: border-box; }
.about-page h1,
.about-page h2,
.about-page h3,
.about-page p { margin: 0; }
.about-page img { max-width: 100%; }
.about-page a { text-decoration: none; }
.about-page :focus-visible { outline: 3px solid var(--about-orange); outline-offset: 3px; border-radius: 6px; }
.about-container { max-width: var(--about-max); margin: 0 auto; padding: 0 32px; }
.about-section { position: relative; padding: 96px 0; scroll-margin-top: 88px; }

/* Hero */
.about-hero {
  position: relative;
  isolation: isolate;
  padding: 92px 0 112px;
  background: linear-gradient(180deg, #fff 0%, #f8faff 100%);
}
.about-hero::before,
.about-hero::after {
  content: "";
  position: absolute;
  z-index: -1;
  border-radius: 50%;
  pointer-events: none;
}
.about-hero::before { width: 460px; height: 460px; right: -210px; top: -170px; background: rgba(30, 66, 175, .07); }
.about-hero::after { width: 260px; height: 260px; left: -150px; bottom: -130px; background: rgba(208, 79, 38, .08); }
.about-hero__grid { display: grid; grid-template-columns: minmax(0, 1.03fr) minmax(380px, .97fr); gap: 72px; align-items: center; }
.about-hero__grid > * { min-width: 0; }
.about-hero__copy { max-width: 650px; padding: 18px 0; }
.about-eyebrow { display: inline-flex; align-items: center; gap: 10px; color: var(--about-orange); font: 700 13px/1.2 "Montserrat-Bold", sans-serif; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 18px; }
.about-eyebrow::before { content: ""; width: 28px; height: 3px; border-radius: 4px; background: currentColor; }
.about-hero h1 { max-width: 680px; color: var(--about-navy); font: 700 clamp(40px, 5vw, 66px)/1.1 "Montserrat-Bold", sans-serif; letter-spacing: -.035em; text-wrap: balance; }
.about-rule { display: block; width: 178px; height: 4px; margin: 28px 0 26px; border-radius: 4px; background: linear-gradient(90deg, var(--about-orange), #e99570); }
.about-hero__body { max-width: 630px; color: var(--about-body); font: 400 18px/1.8 var(--about-font); }
.about-hero__body p + p { margin-top: 14px; }
.about-hero__body p:last-child { color: var(--about-navy); font-style: italic; }
.about-hero__actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-top: 32px; }
.about-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 54px; border: 1.5px solid transparent; border-radius: 10px; padding: 16px 24px; font: 700 15px/1.2 "Montserrat-Bold", sans-serif; transition: background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.about-button--primary { color: #fff; background: var(--about-navy); box-shadow: 0 9px 22px rgba(19, 31, 69, .18); }
.about-button--primary:hover { color: #fff; background: var(--about-blue); transform: translateY(-2px); box-shadow: 0 12px 26px rgba(30, 66, 175, .24); }
.about-button--outline { color: var(--about-navy); border-color: rgba(30, 66, 175, .28); background: var(--about-blue-soft); box-shadow: 0 6px 16px rgba(30, 66, 175, .08); }
.about-button--outline:hover { color: #fff; border-color: var(--about-blue); background: var(--about-blue); transform: translateY(-2px); box-shadow: 0 12px 24px rgba(30, 66, 175, .2); }
.about-button i, .about-text-link i { transition: transform .2s ease; }
.about-button:hover i, .about-text-link:hover i { transform: translateX(3px); }
.about-text-link { display: inline-flex; align-items: center; gap: 10px; color: var(--about-navy); font: 700 14px/1 "Montserrat-Bold", sans-serif; }
.about-text-link:hover { color: var(--about-orange); }
.about-text-link:hover i { transform: translateY(3px); }
.about-hero__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 42px; color: var(--about-muted); font: 600 12px/1.4 "Montserrat-Medium", sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.about-hero__meta i { width: 4px; height: 4px; border-radius: 50%; background: var(--about-orange); }
.about-hero__visual { position: relative; }
.about-hero__visual::before { content: ""; position: absolute; top: 48px; right: -28px; width: 92%; height: 92%; border: 1px solid rgba(30, 66, 175, .16); border-radius: 24px; transform: rotate(4deg); }
.about-hero__visual-card { position: relative; z-index: 1; padding: 18px; border: 1px solid rgba(19, 31, 69, .08); border-radius: 24px 24px 24px 70px; background: #fff; box-shadow: 0 24px 60px rgba(19, 31, 69, .14); }
.about-hero__visual-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 4px 4px 16px 10px; }
.about-visual-label { color: var(--about-muted); font: 700 12px/1.3 "Montserrat-Bold", sans-serif; letter-spacing: .11em; text-transform: uppercase; }
.about-visual-mark { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 34px; color: #fff; border-radius: 50%; background: var(--about-orange); font-size: 13px; }
.about-hero__image { display: block; width: 100%; aspect-ratio: 1.08; border-radius: 15px 15px 15px 48px; object-fit: cover; background: var(--about-blue-soft); }
.about-hero__visual-note { display: flex; align-items: center; gap: 10px; padding: 17px 8px 4px; color: var(--about-navy); font: 700 15px/1.45 "Montserrat-Bold", sans-serif; }
.about-visual-dot { flex: 0 0 auto; width: 9px; height: 9px; border-radius: 50%; background: var(--about-orange); box-shadow: 0 0 0 5px rgba(208, 79, 38, .12); }
.about-scroll-cue { position: absolute; bottom: 28px; left: 50%; display: flex; align-items: center; gap: 9px; min-height: 42px; padding: 11px 16px; border: 1px solid var(--about-line); border-radius: 999px; transform: translateX(-50%); color: var(--about-navy); background: rgba(255, 255, 255, .92); box-shadow: 0 7px 18px rgba(19, 31, 69, .08); font: 700 11px/1.2 "Montserrat-Bold", sans-serif; letter-spacing: .13em; text-transform: uppercase; transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.about-scroll-cue:hover { color: #fff; border-color: var(--about-orange); background: var(--about-orange); box-shadow: 0 10px 22px rgba(208, 79, 38, .22); transform: translateX(-50%) translateY(-2px); }
.about-scroll-cue i { color: var(--about-orange); animation: about-scroll-cue 1.7s ease-in-out infinite; }
@keyframes about-scroll-cue { 0%, 100% { transform: translateY(0); } 55% { transform: translateY(5px); } }

/* Section headings */
.about-section-heading { max-width: 680px; margin-bottom: 52px; }
.about-section-heading--center { margin-right: auto; margin-left: auto; text-align: center; }
.about-section-heading--center .about-eyebrow { justify-content: center; }
.about-section-heading h2 { color: var(--about-navy); font: 700 clamp(30px, 3.2vw, 42px)/1.18 "Montserrat-Bold", sans-serif; letter-spacing: -.025em; text-wrap: balance; }
.about-section-lead { max-width: 620px; margin-top: 16px !important; color: var(--about-body); font: 400 18px/1.7 var(--about-font); }
.about-section-heading--center .about-section-lead { margin-right: auto; margin-left: auto; }

/* Values */
.about-values { background: var(--about-blue-soft); }
.about-values::before { content: "VALUES"; position: absolute; top: 30px; right: 2%; color: rgba(30, 66, 175, .045); font: 700 clamp(74px, 12vw, 170px)/1 "Montserrat-Bold", sans-serif; letter-spacing: -.08em; pointer-events: none; }
.about-values-grid { position: relative; z-index: 1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.about-value-card { position: relative; min-height: 250px; display: flex; flex-direction: column; justify-content: space-between; gap: 24px; padding: 27px 27px 24px; border: 1px solid rgba(19, 31, 69, .08); border-radius: 16px; background: #fff; box-shadow: 0 7px 20px rgba(19, 31, 69, .055); overflow: hidden; transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.about-value-card::after { content: ""; position: absolute; right: 0; bottom: 0; width: 92px; height: 92px; border-radius: 100% 0 0 0; background: rgba(208, 79, 38, .06); transition: transform .22s ease; }
.about-value-card:hover { border-color: rgba(208, 79, 38, .35); transform: translateY(-5px); box-shadow: 0 18px 34px rgba(19, 31, 69, .12); }
.about-value-card:hover::after { transform: scale(1.2); }
.about-value-card__number { position: relative; z-index: 1; color: var(--about-orange); font: 700 14px/1 "Montserrat-Bold", sans-serif; letter-spacing: .1em; }
.about-value-card h3 { position: relative; z-index: 1; color: var(--about-navy); font: 700 23px/1.25 "Montserrat-Bold", sans-serif; }
.about-card-rule { display: block; width: 54px; height: 3px; margin: 13px 0 15px; border-radius: 3px; background: var(--about-orange); }
.about-value-card p { position: relative; z-index: 1; color: var(--about-body); font: 400 16px/1.75 var(--about-font); }
.about-value-card__trigger { position: relative; z-index: 1; align-self: flex-start; display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 42px; padding: 11px 15px; color: var(--about-navy); border: 1px solid rgba(30, 66, 175, .2); border-radius: 8px; background: var(--about-blue-soft); cursor: pointer; font: 700 13px/1.2 "Montserrat-Bold", sans-serif; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease; }
.about-value-card__trigger i { font-size: 11px; transition: transform .2s ease; }
.about-value-card__trigger:hover, .about-value-card__trigger:focus-visible, .about-value-card:hover .about-value-card__trigger { color: #fff; border-color: var(--about-orange); background: var(--about-orange); box-shadow: 0 7px 16px rgba(208, 79, 38, .2); }
.about-value-card__trigger:hover i, .about-value-card__trigger:focus-visible i { transform: translateX(3px); }

/* Core value modal */
body.about-modal-open { overflow: hidden; }
.about-modal { position: fixed; z-index: 1100; inset: 0; display: grid; place-items: center; padding: 24px; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .22s ease, visibility .22s ease; }
.about-modal.is-open { visibility: visible; opacity: 1; pointer-events: auto; }
.about-modal__backdrop { position: absolute; inset: 0; background: rgba(14, 24, 52, .74); backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); cursor: pointer; }
.about-modal__dialog { position: relative; z-index: 1; width: min(100%, 650px); padding: 44px 46px 42px; border: 1px solid rgba(255, 255, 255, .14); border-radius: 20px 20px 20px 54px; background: #fff; box-shadow: 0 28px 80px rgba(7, 15, 40, .3); transform: translateY(12px) scale(.98); transition: transform .22s ease; }
.about-modal.is-open .about-modal__dialog { transform: translateY(0) scale(1); }
.about-modal__close { position: absolute; top: 17px; right: 17px; display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; color: var(--about-navy); border: 1px solid var(--about-line); border-radius: 50%; background: #fff; cursor: pointer; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.about-modal__close:hover, .about-modal__close:focus-visible { color: #fff; border-color: var(--about-orange); background: var(--about-orange); transform: rotate(5deg); }
.about-modal__dialog .about-eyebrow { margin-bottom: 15px; }
.about-modal__dialog h2 { max-width: 530px; padding-right: 28px; color: var(--about-navy); font: 700 clamp(28px, 4vw, 38px)/1.2 "Montserrat-Bold", sans-serif; }
.about-modal__rule { display: block; width: 76px; height: 4px; margin: 21px 0 22px; border-radius: 4px; background: var(--about-orange); }
.about-modal__content { color: var(--about-body); font: 400 17px/1.8 var(--about-font); }

/* History */
.about-history { color: #fff; background: radial-gradient(circle at 92% 0%, rgba(208, 79, 38, .18), transparent 38%), linear-gradient(155deg, var(--about-navy-deep) 0%, #152449 58%, #1b2c5e 100%); }
.about-history .about-section-heading { max-width: 720px; }
.about-section-heading--light h2 { color: #fff; }
.about-section-heading--light .about-section-lead { color: #dbe4f5; }
.about-section-heading--light .about-section-intro { color: #e2e8f5; font-size: 18px; line-height: 1.75; }
.about-section-heading--light .about-eyebrow { color: #ff9b78; }
.about-history-list { position: relative; display: flex; flex-direction: column; gap: 22px; }
.about-history-list::before { content: ""; position: absolute; top: 28px; bottom: 28px; left: 116px; width: 1px; background: linear-gradient(180deg, rgba(255, 155, 120, .8), rgba(143, 167, 232, .2)); }
.about-history-item { position: relative; display: grid; grid-template-columns: 88px 56px minmax(0, 1fr); gap: 0; align-items: start; }
.about-history-item__year { padding-top: 24px; color: #ff9b78; font: 700 23px/1.1 "Montserrat-Bold", sans-serif; letter-spacing: -.02em; }
.about-history-item__marker { position: relative; z-index: 1; display: flex; justify-content: center; padding-top: 29px; }
.about-history-item__marker span { width: 13px; height: 13px; border: 3px solid #ff9b78; border-radius: 50%; background: var(--about-navy); box-shadow: 0 0 0 6px rgba(208, 79, 38, .12); }
.about-history-item__card { width: 100%; max-width: 980px; padding: 20px 24px 22px; border: 1px solid rgba(255, 255, 255, .13); border-radius: 14px; background: rgba(255, 255, 255, .065); transition: background .2s ease, border-color .2s ease, transform .2s ease; }
.about-history-item:hover .about-history-item__card { border-color: rgba(255, 155, 120, .46); background: rgba(255, 255, 255, .1); transform: translateX(4px); }
.about-history-item__index { margin-bottom: 10px !important; color: #8fa7e8; font: 700 11px/1.2 "Montserrat-Bold", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.about-history-item h3 { color: #fff; font: 700 24px/1.35 "Montserrat-Bold", sans-serif; }
.about-history-item__content { display: block; margin-top: 11px; color: #c6cee4; font: 400 18px/1.75 var(--about-font); }
/* CMS rich text may contain spacer paragraphs, divs and an <hr>. Hide those
   layout artefacts so the two language blocks stay compact and readable. */
.about-history-item__content > hr,
.about-history-item__content > p:has(> br:only-child),
.about-history-item__content > div:has(> br:only-child) { display: none; }
.about-history-item__content > p { min-width: 0; margin: 0 !important; font-size: inherit !important; line-height: inherit !important; font-family: inherit !important; }
.about-history-item__content span { font-size: inherit !important; line-height: inherit !important; font-family: inherit !important; }
.about-history-item__content > p:nth-of-type(n + 2) { margin-top: 18px !important; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .18); }
.about-history-item__content p:last-child { font-style: italic; }

/* Team */
.about-team { background: #fff; }
.about-team-heading { display: flex; align-items: end; justify-content: space-between; gap: 28px; max-width: none; }
.about-slider-controls { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.about-slider-button { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: var(--about-navy); border: 1px solid var(--about-line); border-radius: 50%; background: #fff; cursor: pointer; transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease; }
.about-slider-button:hover, .about-slider-button:focus-visible { color: #fff; border-color: var(--about-orange); background: var(--about-orange); transform: translateY(-2px); }
.about-slider-button--filled { color: #fff; border-color: var(--about-navy); background: var(--about-navy); }
.about-slider-button--filled:hover, .about-slider-button--filled:focus-visible { border-color: var(--about-blue); background: var(--about-blue); }
.about-team-slider { margin: 0 -10px; }
.about-team-slider .slick-list { padding: 8px 0 16px; }
.about-team-slider .slick-track { display: flex; align-items: stretch; }
.about-team-slider .slick-slide { height: auto; }
.about-team-slider .slick-slide > div, .about-team-slide { height: 100%; }
.about-team-slide { display: flex; padding: 0 10px; }
.about-team-card { display: flex; width: 100%; height: 470px; flex-direction: column; overflow: hidden; border: 1px solid var(--about-line); border-radius: 16px; background: #fff; box-shadow: 0 7px 18px rgba(19, 31, 69, .055); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.about-team-card:hover { border-color: rgba(30, 66, 175, .24); transform: translateY(-4px); box-shadow: 0 18px 32px rgba(19, 31, 69, .12); }
.about-team-card__portrait { position: relative; flex: 0 0 265px; height: 265px; overflow: hidden; background: linear-gradient(145deg, #eaf1fd 0%, #dfe8f9 100%); }
.about-team-card__shape { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .55; }
.about-team-card__avatar { position: absolute; right: 11%; bottom: 0; width: 78%; height: 92%; object-fit: contain; object-position: bottom center; }
.about-team-card__copy { display: flex; min-height: 0; flex: 1 1 auto; flex-direction: column; padding: 22px 22px 24px; }
.about-team-card__label { margin-bottom: 9px !important; color: var(--about-orange); font: 700 11px/1.2 "Montserrat-Bold", sans-serif; letter-spacing: .12em; text-transform: uppercase; }
.about-team-card h3 { color: var(--about-navy); font: 700 22px/1.35 "Montserrat-Bold", sans-serif; }
.about-team-card__copy > p:last-child { margin-top: 9px; color: var(--about-body); font: 400 15px/1.65 var(--about-font); }

/* Profile */
.about-profile { background: var(--about-soft); }
.about-profile-card { padding: 54px 34px 34px; border: 1px solid var(--about-line); border-radius: 20px; background: #fff; box-shadow: 0 13px 32px rgba(19, 31, 69, .07); }
.about-profile-card .about-section-heading { margin-bottom: 32px; }
.about-profile-viewer { min-height: 520px; overflow: hidden; border: 1px solid var(--about-line); border-radius: 14px; background: #eef2fa; }
.about-profile-viewer ._df_book { min-height: 520px; }

@media (max-width: 1100px) {
  .about-hero__grid { gap: 45px; grid-template-columns: minmax(0, 1fr) minmax(340px, .82fr); }
  .about-values-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .about-section { padding: 76px 0; }
  .about-hero { padding: 68px 0 92px; }
  .about-hero__grid { grid-template-columns: 1fr; gap: 48px; }
  .about-hero__copy { max-width: 760px; }
  .about-hero__visual { max-width: 600px; width: 100%; margin: 0 auto; }
  .about-hero__image { aspect-ratio: 1.35; }
  .about-history-list::before { left: 82px; }
  .about-history-item { grid-template-columns: 62px 40px minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .about-container { padding: 0 20px; }
  .about-section { padding: 60px 0; }
  .about-hero { padding: 52px 0 82px; }
  .about-hero h1 { font-size: clamp(34px, 10.5vw, 48px); }
  .about-hero__body { font-size: 17px; line-height: 1.75; }
  .about-hero__actions { align-items: stretch; flex-direction: column; gap: 16px; }
  .about-button { width: 100%; }
  .about-text-link { justify-content: center; min-height: 42px; }
  .about-hero__meta { margin-top: 28px; gap: 9px; font-size: 11px; }
  .about-hero__visual-card { padding: 12px; border-radius: 18px 18px 18px 44px; }
  .about-hero__image { aspect-ratio: 1.16; border-radius: 11px 11px 11px 32px; }
  .about-hero__visual::before { top: 28px; right: -10px; border-radius: 18px; }
  .about-scroll-cue { bottom: 24px; }
  .about-section-heading { margin-bottom: 34px; }
  .about-section-heading h2 { font-size: 31px; }
  .about-section-lead { font-size: 16px; }
  .about-values-grid { grid-template-columns: 1fr; gap: 14px; }
  .about-value-card { min-height: 0; padding: 22px; }
  .about-value-card p { font-size: 15px; line-height: 1.7; }
  .about-team-heading { align-items: flex-start; flex-direction: column; gap: 22px; }
  .about-slider-controls { align-self: flex-end; }
  .about-team-card { height: 470px; }
  .about-history-list::before { left: 22px; top: 24px; bottom: 24px; }
  .about-history-item { grid-template-columns: 1fr; gap: 0; padding-left: 48px; }
  .about-history-item__year { padding-top: 0; margin-bottom: 10px; }
  .about-history-item__marker { position: absolute; top: 3px; left: 16px; padding-top: 0; }
  .about-history-item__card { padding: 20px; }
  .about-history-item h3 { font-size: 20px; }
  .about-history-item__content { display: block; font-size: 16px; line-height: 1.7; }
  .about-history-item__content > p:nth-of-type(n + 2) { margin-top: 14px !important; padding-top: 14px; border-top: 1px solid rgba(255, 255, 255, .18); }
  .about-modal { padding: 16px; }
  .about-modal__dialog { padding: 38px 24px 28px; border-radius: 16px 16px 16px 38px; }
  .about-modal__content { font-size: 16px; line-height: 1.7; }
  .about-profile-card { padding: 34px 14px 14px; border-radius: 16px; }
  .about-profile-viewer, .about-profile-viewer ._df_book { min-height: 400px; }
}
@media (max-width: 480px) {
  .about-container { padding-right: 18px; padding-left: 18px; }
  .about-hero { padding-top: 44px; }
  .about-hero h1 { font-size: clamp(32px, 10.8vw, 42px); }
  .about-eyebrow { font-size: 12px; }
  .about-hero__visual-note { font-size: 14px; }
  .about-section-heading h2 { font-size: 29px; }
  .about-history-item h3 { font-size: 20px; }
  .about-team-card h3 { font-size: 20px; }
  .about-profile-card { padding-right: 10px; padding-left: 10px; }
}
@media (max-width: 360px) {
  .about-container { padding-right: 15px; padding-left: 15px; }
  .about-hero h1 { font-size: 31px; }
  .about-hero__visual-card { padding: 10px; }
  .about-visual-label { font-size: 11px; }
  .about-hero__visual-note { padding-top: 14px; font-size: 13px; }
  .about-section-heading h2 { font-size: 27px; }
  .about-history-item { padding-left: 42px; }
  .about-history-list::before { left: 18px; }
  .about-history-item__marker { left: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .about-page *, .about-page *::before, .about-page *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

/* Approved copy sections */
.about-hero__body p { margin: 0 0 15px !important; }
.about-hero__body p:last-child { margin-bottom: 0 !important; }
.about-section-intro { max-width: 720px; margin: 16px auto 0; color: var(--about-body); font: 400 17px/1.75 var(--about-font); }
.about-perspective { background: #fff; }
.about-perspective__grid { display: grid; grid-template-columns: minmax(260px, .8fr) minmax(0, 1.2fr); gap: 68px; align-items: start; }
.about-perspective__grid .about-section-heading { margin-bottom: 0; }
.about-perspective__body { padding: 28px 0 0 30px; border-left: 4px solid var(--about-orange); color: var(--about-body); font: 400 18px/1.8 var(--about-font); }
.about-perspective__body p { margin: 0 0 18px !important; }
.about-perspective__body p:last-child { margin-bottom: 0 !important; }
.about-experts { background: var(--about-soft); }
.about-experts__card { max-width: 900px; padding: 48px 52px; border: 1px solid var(--about-line); border-radius: 20px; background: #fff; box-shadow: 0 13px 32px rgba(19, 31, 69, .07); }
.about-experts__card h2 { max-width: 640px; color: var(--about-navy); font: 700 clamp(29px, 3vw, 42px)/1.2 "Montserrat-Bold", sans-serif; }
.about-experts__card > p:last-child { max-width: 760px; margin-top: 18px !important; color: var(--about-body); font: 400 18px/1.8 var(--about-font); }
.about-profile__cta { display: inline-flex; margin-top: 24px; }
@media (max-width: 900px) {
  .about-perspective__grid { grid-template-columns: 1fr; gap: 28px; }
  .about-perspective__body { padding: 0 0 0 22px; }
}
@media (max-width: 640px) {
  .about-section-intro { font-size: 16px; }
  .about-perspective__body { font-size: 16px; line-height: 1.75; }
  .about-experts__card { padding: 32px 24px; }
  .about-experts__card > p:last-child { font-size: 16px; }
  .about-profile__cta { width: 100%; }
}
