.about-layout { padding-top: 18px; }
.back-home { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; color: var(--muted); font-size: 12px; }
.back-home svg { width: 16px; height: 16px; }
.eyebrow, .step-kicker { margin: 0 0 12px; color: var(--faint); font-size: 11px; font-weight: 600; line-height: 1.4; }
.about-hero { padding-top: 22px; padding-bottom: 40px; }
.about-hero h1 { font-size: 64px; line-height: 1.06; }
.about-hero .hero-details { padding-top: 27px; }
.about-hero .hero-description { font-size: 14px; line-height: 1.7; }
.about-hero .portfolio-button { margin-top: 0; }
.about-section { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 56px; padding: 36px 0; border-top: 1px solid var(--line); }
.about-page h2 { margin: 0; font-size: 32px; font-weight: 650; line-height: 1.2; scroll-margin-top: 28px; }
.about-copy { min-width: 0; }
.about-copy p, .about-list li { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.8; }
.about-copy p + p { margin-top: 16px; }
.about-copy strong { font-weight: 600; color: #e1e1e7; }
.about-copy a { color: #e1e1e7; text-decoration: underline; text-underline-offset: 5px; text-decoration-color: #ffffff50; }
.about-list { margin: 22px 0; padding: 0; list-style: none; }
.about-list li { position: relative; padding: 12px 0 12px 22px; border-top: 1px solid var(--line); }
.about-list li:last-child { border-bottom: 1px solid var(--line); }
.about-list li::before { position: absolute; top: 23px; left: 0; width: 4px; height: 4px; border-radius: 50%; background: #b9b9c2; content: ""; }
.about-copy .about-note { font-size: 12px; color: var(--faint); }
.about-service-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; min-width: 0; }
.about-service { min-width: 0; padding: 24px; border: 1px solid #ffffff20; border-bottom-color: #ffffff12; border-radius: 8px; background: linear-gradient(130deg, #ffffff09, #ffffff02 65%), var(--panel-base); box-shadow: 0 14px 36px #00000025, inset 0 1px 0 #ffffff08; }
.about-service:nth-child(even) { background: linear-gradient(125deg, #ffffff0e, #ffffff03 65%), #2d2f35; border-top-color: #ffffff30; }
.service-number { display: block; margin-bottom: 24px; color: var(--faint); font-size: 11px; font-variant-numeric: tabular-nums; }
.about-service h3 { margin: 0 0 12px; color: #e5e5eb; font-size: 19px; font-weight: 600; line-height: 1.3; }
.about-service p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.7; }
.about-cta { display: flex; justify-content: space-between; align-items: center; gap: 40px; margin-top: 38px; padding: 36px; border: 1px solid #ffffff26; border-bottom-color: #ffffff12; border-radius: 18px; background: linear-gradient(125deg, #ffffff13, #ffffff04 65%), var(--panel-raised); box-shadow: 0 26px 64px #0000004a, inset 0 1px 0 #ffffff20; }
.about-cta > div { max-width: 660px; }
.about-cta h2 { font-size: 30px; margin-bottom: 16px; }
.about-cta p:not(.step-kicker) { margin: 0; color: #c5c5cd; font-size: 14px; line-height: 1.75; }
.about-cta .portfolio-button { min-width: 180px; }
.about-page .home-footer { margin-top: 44px; border-top: 1px solid var(--line); }
.footer-social a[aria-current="page"] { color: #e1e1e7; }
@media (hover: hover) and (pointer: fine) {
  .back-home:hover { color: #fff; }
  .about-copy a:hover { text-decoration-color: #fff; }
}
@media (max-width: 1100px) {
  .about-hero h1 { font-size: 56px; }
  .about-section { gap: 32px; }
  .about-service { padding: 20px; }
}
@media (max-width: 900px) {
  .about-hero .hero-details { padding-top: 0; }
  .about-hero .hero-description { max-width: 560px; margin-top: 18px; }
  .about-hero .portfolio-button { margin-top: 22px; }
  .about-section { grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: 30px; }
  .about-page h2 { font-size: 28px; }
  .about-services { grid-template-columns: minmax(0, 1fr); }
  .service-number { margin-bottom: 16px; }
  .about-cta { padding: 28px; gap: 24px; }
}
@media (max-width: 760px) {
  .about-layout { padding-top: 12px; }
  .about-hero { padding-top: 18px; padding-bottom: 32px; }
  .about-hero h1 { font-size: 44px; }
  .about-hero .hero-description { margin-top: 18px; font-size: 14px; }
  .about-section { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 28px 0; }
  .about-page h2 { font-size: 27px; }
  .about-service-grid { gap: 14px; }
  .about-cta { flex-direction: column; align-items: stretch; padding: 26px; }
  .about-cta h2 { font-size: 27px; }
  .about-cta .portfolio-button { width: 100%; }
}
@media (max-width: 460px) {
  .about-hero h1 { font-size: 40px; }
  .about-service-grid { grid-template-columns: minmax(0, 1fr); }
  .about-service { padding: 24px; }
}
@media (max-width: 359px) {
  .about-hero h1 { font-size: 34px; }
  .about-page h2 { font-size: 24px; }
  .about-cta { padding: 20px; }
}
@media (prefers-reduced-transparency: reduce) {
  .about-service { background: var(--panel-base); }
  .about-service:nth-child(even), .about-cta { background: var(--panel-raised); }
}
