/* About page additions. Shared site styling remains in style.css. */
.about-page .about-hero { padding-top: 76px; padding-bottom: 62px; gap: 64px; }
.about-page .about-hero h1 { font-size: clamp(44px, 4.8vw, 69px); }
.about-page .about-hero p { max-width: 550px; font-size: 16px; line-height: 1.85; }
.about-page .actions { flex-wrap: wrap; gap: 22px; }
.about-story-link { display: inline-flex; align-items: center; gap: 12px; font-size: 12px; color: #bac8e8; padding: 10px 0; }
.about-story-link:hover { color: #fff; }
.about-story-link span { color: #89abff; }
.about-page .about-identity { min-width: 0; aspect-ratio: 1 / 1.05; padding: 29px; border-color: #416bb0; background: radial-gradient(ellipse at 75% 30%, #3769d978, transparent 62%), linear-gradient(145deg, #1d3e8d, #101c3a); border-radius: 10px; box-shadow: 0 25px 80px #0002; }
.about-identity::after { content: ''; position: absolute; width: 340px; height: 340px; border: 1px solid #8faeff26; border-radius: 50%; right: -155px; bottom: -100px; }
.identity-topline { position: relative; font-size: 8px; letter-spacing: 1.5px; color: #d5e1ff; display: flex; align-items: center; gap: 9px; }
.identity-signal { width: 6px; height: 6px; border-radius: 50%; background: #9fbeff; box-shadow: 0 0 14px #92b7ff; flex-shrink: 0; }
.identity-monogram { display: flex; align-items: center; justify-content: center; gap: 28px; flex: 1; padding: 25px 0; }
.about-page .identity-monogram strong { font-family: Manrope, Arial, sans-serif; font-size: clamp(110px, 12vw, 170px); letter-spacing: -17px; font-weight: 650; align-self: auto; }
.identity-bracket { font-size: 65px; font-weight: 400; color: #98baff6b; line-height: 1; }
.identity-signature { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding-bottom: 24px; }
.identity-signature > span { font-family: Manrope, Arial, sans-serif; font-size: 22px; letter-spacing: -.7px; }
.about-page .identity-signature small { font-size: 7px; line-height: 1.9; letter-spacing: 1.2px; text-align: right; color: #bdd0f7; }
.identity-disciplines { border-top: 1px solid #88a9ef42; padding-top: 17px; display: flex; justify-content: space-between; gap: 8px; font-size: 7px; letter-spacing: 2px; color: #b0c9ff; }
.about-facts { max-width: 1267px; margin: 0 auto; padding: 28px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--line); width: 88%; }
.about-facts > div { padding: 0 30px; border-right: 1px solid var(--line); }
.about-facts > div:first-child { padding-left: 0; }
.about-facts > div:last-child { border: 0; }
.about-facts .eyebrow { font-size: 8px; letter-spacing: 1.7px; color: #829bd0; }
.about-facts p { font-family: Manrope, Arial, sans-serif; font-size: 17px; letter-spacing: -.4px; margin: 8px 0 3px; }
.about-facts div > span:last-child { font-size: 12px; color: var(--muted); }
.about-section { max-width: 1440px; padding: 86px 6%; margin: auto; }
.about-section h2 { font-size: clamp(31px, 3.2vw, 45px); margin-top: 22px; }
.about-perspective { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; }
.about-lead { max-width: 350px; color: #bac8e2; margin-top: 25px; font-size: 16px; line-height: 1.85; }
.about-copy > p { color: var(--muted); font-size: 14px; line-height: 1.95; margin: 0 0 19px; }
.about-belief { margin-top: 27px; border-left: 2px solid #628dff; padding: 4px 0 4px 22px; display: flex; align-items: center; gap: 18px; }
.about-belief > span { font-size: 40px; color: #82a4ff; line-height: 1; }
.about-belief p { margin: 0; color: #b7c8ee; font-size: 17px; line-height: 1.6; }
.about-belief strong { color: #f3f6ff; font-weight: 500; }
.about-expertise { padding-top: 0; }
.about-expertise .section-head { border-top: 1px solid var(--line); padding-top: 67px; margin-bottom: 32px; }
.about-expertise .section-head .button { white-space: nowrap; }
.expertise-item { display: grid; grid-template-columns: 28px minmax(170px, .85fr) minmax(0, 1.4fr) 25px; align-items: start; gap: 28px; padding: 30px 0; border-top: 1px solid var(--line); }
.expertise-item:last-child { border-bottom: 1px solid var(--line); }
.expertise-number { color: #7a9df0; font-size: 10px; padding-top: 5px; }
.expertise-item h3 { font-size: 23px; line-height: 1.35; letter-spacing: -.7px; transition: color .2s; }
.expertise-item:hover h3 { color: #8bacff; }
.expertise-item p { font-size: 14px; line-height: 1.8; color: var(--muted); margin: 0 0 15px; max-width: 500px; }
.expertise-item ul { list-style: none; display: flex; flex-wrap: wrap; gap: 6px 9px; margin: 0; padding: 0; }
.expertise-item li { border: 1px solid #293d64; background: #15234366; border-radius: 4px; color: #b6c9ef; padding: 3px 8px; font-size: 9px; letter-spacing: .2px; }
.expertise-arrow { color: #8bacff; font-size: 24px; line-height: 1.4; text-align: right; }
.about-collaboration { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding-top: 0; padding-bottom: 76px; }
.about-collaboration-intro > p { font-size: 14px; color: var(--muted); line-height: 1.9; max-width: 405px; margin: 24px 0 18px; }
.about-principles { background: linear-gradient(145deg, #14274b, #101a32); border: 1px solid #2b4168; border-radius: 8px; padding: 12px 27px; }
.about-principles article { display: flex; gap: 20px; padding: 23px 0; border-bottom: 1px solid #2b3c5d; }
.about-principles article:last-child { border: 0; }
.about-principles article > span { white-space: nowrap; color: #7da0f6; font-size: 10px; padding-top: 3px; }
.about-principles h3 { font-size: 18px; letter-spacing: -.4px; line-height: 1.4; }
.about-principles p { margin: 10px 0 0; font-size: 12px; color: #a8b8d5; line-height: 1.9; }
.about-faq { display: grid; grid-template-columns: 1fr 1fr; gap: 90px; padding-top: 0; padding-bottom: 90px; }
.about-faq > div:first-child { padding-top: 15px; }
.about-faq h2 { font-size: clamp(30px, 2.8vw, 39px); }
.about-questions details { border-bottom: 1px solid var(--line); }
.about-questions details:first-child { border-top: 1px solid var(--line); }
.about-questions summary { list-style: none; display: flex; justify-content: space-between; align-items: center; gap: 20px; cursor: pointer; padding: 23px 0; font-size: 14px; line-height: 1.6; }
.about-questions summary::-webkit-details-marker { display: none; }
.about-questions summary > span { font-size: 23px; font-weight: 400; color: #82a4ff; transition: transform .2s; }
.about-questions details[open] summary > span { transform: rotate(45deg); }
.about-questions summary:hover { color: #9ebbff; }
.about-questions summary:focus-visible { outline: 2px solid #7ca1ff; outline-offset: 4px; border-radius: 2px; }
.about-questions details p { margin: -2px 27px 23px 0; color: var(--muted); font-size: 13px; line-height: 1.9; }
@media (max-width: 1050px) {
  .about-page .about-hero { gap: 35px; }
  .about-page .about-hero h1 { font-size: 49px; }
  .about-page .about-identity { padding: 23px; }
  .identity-monogram { gap: 14px; }
  .identity-bracket { font-size: 50px; }
  .identity-signature { align-items: flex-start; flex-direction: column; }
  .about-page .identity-signature small { text-align: left; }
  .identity-topline { font-size: 6px; letter-spacing: 1px; }
  .about-facts > div { padding-inline: 22px; }
  .about-facts p { font-size: 15px; }
  .about-perspective, .about-collaboration, .about-faq { gap: 45px; }
  .expertise-item { gap: 20px; }
  .expertise-item h3 { font-size: 21px; }
}
@media (max-width: 760px) {
  .about-page .about-hero { padding-top: 46px; padding-bottom: 42px; gap: 38px; }
  .about-page .about-hero h1 { font-size: clamp(39px, 8.5vw, 55px); }
  .about-page .about-hero p { font-size: 15px; }
  .about-page .actions { gap: 12px 20px; margin-top: 25px; }
  .about-page .about-identity { max-width: none; min-height: 0; aspect-ratio: 1.25 / 1; padding: 24px; }
  .identity-topline { font-size: 7px; letter-spacing: 1.3px; }
  .identity-monogram { gap: 30px; padding: 15px 0 24px; }
  .about-page .identity-monogram strong { font-size: 120px; letter-spacing: -13px; }
  .identity-signature { flex-direction: row; align-items: center; padding-bottom: 18px; }
  .about-page .identity-signature small { text-align: right; font-size: 6px; }
  .identity-signature > span { font-size: 21px; }
  .identity-disciplines { padding-top: 14px; font-size: 7px; letter-spacing: 1.5px; }
  .about-facts { grid-template-columns: 1fr; padding-block: 0; }
  .about-facts > div, .about-facts > div:first-child { padding: 22px 0; border-right: 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 1fr 1.3fr; gap: 3px 15px; align-items: center; }
  .about-facts > div:last-child { border: 0; }
  .about-facts .eyebrow { grid-row: 1 / 3; font-size: 7px; letter-spacing: 1.1px; }
  .about-facts p { font-size: 14px; margin: 0; }
  .about-facts div > span:last-child { grid-column: 2; font-size: 10px; }
  .about-section { padding-block: 50px; }
  .about-section h2 { font-size: 33px; margin-top: 18px; }
  .about-perspective, .about-collaboration, .about-faq { grid-template-columns: 1fr; gap: 27px; }
  .about-lead { font-size: 15px; max-width: none; margin: 20px 0 0; }
  .about-copy > p { font-size: 14px; }
  .about-belief { margin-top: 23px; }
  .about-expertise { padding-top: 0; padding-bottom: 50px; }
  .about-expertise .section-head { padding-top: 42px; margin-bottom: 20px; }
  .about-expertise .section-head .button { margin-top: 15px; }
  .expertise-item { grid-template-columns: 23px 1fr 22px; gap: 13px; padding: 25px 0; }
  .expertise-item h3 { font-size: 21px; }
  .expertise-item > div { grid-column: 2; grid-row: 2; }
  .expertise-arrow { grid-column: 3; grid-row: 1; font-size: 22px; }
  .expertise-item p { font-size: 13px; }
  .expertise-item ul { gap: 6px; }
  .expertise-item li { font-size: 8px; padding: 3px 6px; }
  .about-collaboration { padding-top: 0; padding-bottom: 50px; }
  .about-collaboration-intro > p { max-width: none; }
  .about-principles { padding: 6px 21px; }
  .about-principles article { gap: 15px; }
  .about-principles h3 { font-size: 18px; }
  .about-faq { padding-top: 0; padding-bottom: 55px; gap: 25px; }
  .about-faq > div:first-child { padding-top: 0; }
  .about-faq h2 { font-size: 31px; }
  .about-questions summary { font-size: 13px; padding-block: 21px; }
}
