/* @generated by tools/build-css.mjs; edit assets/src/css instead. */
.about-page { color: #17242a; }
.about-container { width: min(1200px, calc(100% - 64px)); max-width: none; margin: 0 auto; }
.about-hero { padding: 88px 0 64px; background: #f4f7f6; }
.about-hero h1 { max-width: none; margin: 14px 0 24px; font-size: clamp(42px, 6vw, 78px); line-height: 1.04; letter-spacing: -.035em; }
.about-lead { max-width: none; margin: 0; color: #52636a; font-size: 21px; line-height: 1.65; }
.about-section { padding: 72px 0; }
.about-section--paper { background: #f4f7f6; }
.about-section--dark { color: #f4f7f6; background: #17242a; }
.about-section h2, .about-cta h2 { max-width: none; margin: 12px 0 24px; font-size: clamp(34px, 4vw, 56px); line-height: 1.08; letter-spacing: -.025em; }
.about-prose { max-width: none; }
.about-prose p, .about-intro, .about-split p, .about-cta p { max-width: none; color: #52636a; font-size: 17px; line-height: 1.8; }
.about-section--dark p { color: #c4d0d2; }
.about-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-top: 38px; }
.about-card { min-height: 240px; padding: 26px; border-top: 2px solid #d4e1df; background: #fff; }
.about-card__index { color: #8a9a9e; font-size: 13px; letter-spacing: .14em; }
.about-card h3 { margin: 36px 0 14px; font-size: 21px; line-height: 1.25; }
.about-card p, .about-process p { margin: 0; color: #617178; line-height: 1.7; }
.about-process { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 22px; margin-top: 38px; }
.about-process__item { padding-top: 18px; border-top: 1px solid #587078; }
.about-process__item > span { color: #d9e6e5; font-size: 28px; }
.about-process h3 { margin: 26px 0 12px; font-size: 19px; line-height: 1.3; }
.about-process p { color: #b7c7ca; font-size: 14px; }
.about-photo-groups { display: grid; gap: 34px; margin-top: 36px; }
.about-photo-group { padding: 0; }
.about-photo-group h3 { margin: 0 0 16px; font-size: 18px; line-height: 1.3; }
.about-photo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.about-photo-slot { position: relative; aspect-ratio: 4 / 3; min-height: 0; margin: 0; overflow: hidden; border: 1px solid #cbd9d7; background: linear-gradient(135deg, #eef3f2, #dce7e5); }
.about-photo-slot--certificates { background: #fff; }
.about-photo-slot img { width: 100%; height: 100%; object-fit: cover; }
.about-photo-slot--certificates img { object-fit: contain; }
.about-photo-slot.has-image::before, .about-photo-slot.has-image::after { display: none; }
.about-photo-slot::before, .about-photo-slot::after { position: absolute; content: ''; background: rgba(96, 119, 122, .18); }
.about-photo-slot::before { width: 140%; height: 1px; top: 50%; left: -20%; transform: rotate(-24deg); }
.about-photo-slot::after { width: 140%; height: 1px; top: 50%; left: -20%; transform: rotate(24deg); }
.about-photo-slot span { position: absolute; z-index: 1; top: 50%; left: 50%; display: grid; width: 54px; height: 54px; place-items: center; transform: translate(-50%, -50%); border: 1px solid rgba(23, 36, 42, .28); border-radius: 50%; color: #52636a; font-size: 13px; letter-spacing: .12em; background: rgba(244, 247, 246, .86); }
.about-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr); gap: 90px; align-items: start; }
.about-application-list { display: grid; grid-template-columns: 1fr 1fr; gap: 0 28px; margin: 26px 0 0; padding: 0; list-style: none; }
.about-application-list li { padding: 17px 0; border-bottom: 1px solid #d4e1df; font-weight: 650; }
.about-link { color: #17242a; font-weight: 700; text-decoration: none; }
.about-link span { display: inline-block; margin-left: 12px; transition: transform .2s ease; }
.about-link:hover span { transform: translateX(4px); }
.about-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin-top: 34px; }
.about-stats div { padding: 22px 0; border-top: 2px solid #cbd9d7; }
.about-stats strong, .about-stats span { display: block; }
.about-stats strong { font-size: 40px; line-height: 1; }
.about-stats span { margin-top: 12px; color: #617178; font-size: 14px; }
.about-cta { padding: 88px 0; color: #f4f7f6; background: #60777a; }
.about-cta p { color: #e0e9e8; }
.about-cta__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.about-cta .btn { border-color: #e4eeec; background: #e4eeec; color: #17242a; }
.about-cta .btn--ghost { background: transparent; color: #e4eeec; }
@media (max-width: 860px) { .about-hero { padding: 72px 0 56px; } .about-section { padding: 64px 0; } .about-card-grid, .about-process { grid-template-columns: repeat(2, minmax(0, 1fr)); } .about-process__item:last-child { grid-column: 1 / -1; } .about-split { grid-template-columns: 1fr; gap: 30px; } .about-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .about-container { width: min(100% - 32px, 1200px); } .about-hero { padding: 56px 0 48px; } .about-section, .about-cta { padding: 56px 0; } .about-card-grid, .about-process, .about-stats, .about-photo-grid { grid-template-columns: 1fr; } .about-process__item:last-child { grid-column: auto; } .about-application-list { grid-template-columns: 1fr; } }
