.route-about{--bg:#101010;--ink:#fff;--muted:#aaa;background:#101010;color:#fff}
.route-about .own-navigation{font-family:OwnHeader,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1;letter-spacing:normal}
.route-about .own-navigation .on-close{padding:0}
.route-about .own-footer{font-family:OwnFooter,Arial,sans-serif;font-size:16px;font-weight:450;line-height:1;letter-spacing:normal}
.route-about .own-footer h3{letter-spacing:normal}
.route-about .own-footer-company p{line-height:inherit}
.route-about main{overflow:clip}

.ab-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:max(720px,100svh);padding:clamp(150px,22svh,220px) 0 36px;background:#101010;color:#fff;overflow:hidden}
.ab-iris{position:absolute;top:50%;right:max(-12vw,calc((100vw - 1600px) / 2 - 8vw));z-index:-1;width:min(62vw,94svh);aspect-ratio:1;transform:translateY(-47%);touch-action:pan-y}
.ab-iris canvas{display:block;width:100%;height:100%}
.ab-hero-copy .oa-index{color:#ffffff8c}
.ab-hero-copy h1{max-width:min(11.5em,52vw);margin:18px 0 0;font-size:clamp(44px,min(5.4vw,10svh),92px);line-height:.96;letter-spacing:-.05em;text-wrap:balance}
.ab-hero-copy h1 span{display:block}
.ab-hero-aside{display:grid;gap:22px;justify-items:start;max-width:min(470px,40vw);margin-top:clamp(24px,4svh,44px)}
.ab-hero-aside p{margin:0;font-size:18px;line-height:1.45;color:#ffffffd9;text-wrap:balance}
.ab-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:48px;font-size:13px;color:#ffffffa6}

.ab-work{padding:128px 0 136px;background:#f2f2f2;color:#121212}
.ab-work-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 64px;align-items:end}
.ab-work-head .oa-index{grid-column:1/-1;color:#8a8a8a}
.ab-work-head h2{margin:0;font-size:clamp(40px,4.6vw,76px);line-height:1;letter-spacing:-.045em}
.ab-work-head>p:last-child{max-width:520px;margin:0;font-size:17px;line-height:1.55;color:#4a4a4a}
.ab-lists{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;margin-top:72px}
.ab-list-label{margin:0 0 14px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8a8a8a}
.ab-list{margin:0;padding:0;list-style:none;border-top:1px solid #12121226}
.ab-row{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(0,1.6fr) 24px;gap:20px;align-items:center;min-height:76px;padding:12px 8px;border-bottom:1px solid #12121226;color:#121212;transition:background-color .2s}
.ab-row:hover{background:#e6e6e6}
.ab-row:focus-visible{outline:2px solid #121212;outline-offset:-2px}
.ab-row-name{font-size:22px;line-height:1.15;letter-spacing:-.02em}
.ab-row-note{font-size:14px;line-height:1.45;color:#5e5e5e}
.ab-row-go{justify-self:end;color:#717171;transition:transform .2s var(--ease),color .2s}
.ab-row:hover .ab-row-go{color:#121212;transform:translateX(4px)}

.ab-people{padding:128px 0 136px;background:#101010;color:#fff}
.ab-people .oa-section-head>p{max-width:420px;color:#ffffffa6}
.ab-persons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:56px 0 0;padding:0;list-style:none}
.ab-photo{aspect-ratio:4/3;margin-bottom:24px;overflow:hidden;background:#1a1a1a;clip-path:var(--closed);transition:clip-path 1.3s var(--ease)}
.ab-photo.is-open{clip-path:var(--open)}
.ab-photo img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.08);transition:transform 1.6s var(--ease)}
.ab-photo.is-open img{transform:none}
.ab-person .oa-index{color:#ffffff8c}
.ab-person h3{margin:12px 0 10px;font-size:clamp(24px,2.2vw,32px);line-height:1.1;letter-spacing:-.03em}
.ab-person p:not(.oa-index){max-width:380px;margin:0 0 16px;font-size:15px;line-height:1.55;color:#ffffffa6}
.ab-person .oa-text-link{color:#fff}

.ab-belief{padding:clamp(120px,16vw,200px) 0;background:#f2f2f2;color:#121212}
.ab-belief .oa-index{color:#8a8a8a}
.ab-belief h2{margin:20px 0 40px;font-size:clamp(52px,8vw,148px);line-height:.94;letter-spacing:-.055em}
.ab-belief h2 span{display:block}
.ab-belief h2 span+span{color:#8a8a8a}
.ab-belief-body{max-width:620px;margin:0 0 0 auto;font-size:19px;line-height:1.55;color:#4a4a4a}

.ab-company{padding:112px 0;background:#101010;color:#fff}
.ab-company-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:48px;align-items:start}
.ab-company .oa-index{color:#ffffff8c}
.ab-company h2{margin:16px 0 0;font-size:clamp(40px,4.4vw,72px);line-height:1;letter-spacing:-.045em}
.ab-facts{margin:0;border-top:1px solid #ffffff26}
.ab-facts>div{display:grid;grid-template-columns:minmax(140px,.5fr) minmax(0,1.5fr);gap:20px;padding:18px 0;border-bottom:1px solid #ffffff26}
.ab-facts dt{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:#ffffff8c}
.ab-facts dd{margin:0;font-size:16px;line-height:1.5;color:#fff;font-variant-numeric:tabular-nums}
.ab-facts a{color:#fff;border-bottom:1px solid #ffffff4d;transition:border-color .2s}
.ab-facts a:hover{border-color:#fff}
.ab-facts a:focus-visible{outline:2px solid #fff;outline-offset:3px}

@media(max-width:1000px){
 .ab-iris{top:56px;right:50%;width:min(110vw,560px);transform:translateX(50%)}
 .ab-hero{justify-content:flex-end;padding-top:0}
 .ab-hero-copy{padding-top:clamp(380px,62svh,560px)}
 .ab-hero-aside{max-width:520px}
 .ab-work-head,.ab-company-grid{grid-template-columns:minmax(0,1fr)}
 .ab-lists{grid-template-columns:minmax(0,1fr)}
 .ab-persons{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media(max-width:760px){
 .ab-iris{top:64px;width:min(118vw,520px)}
 .ab-hero{min-height:max(720px,100svh)}
 .ab-hero-copy{padding-top:clamp(330px,52svh,440px)}
 .ab-hero-copy h1{max-width:none;font-size:clamp(40px,11vw,60px)}
 .ab-hero-aside p{font-size:16px}
 .ab-hero-foot{margin-top:28px;margin-bottom:76px}
 .ab-work,.ab-people,.ab-company{padding:80px 0}
 .ab-lists{margin-top:48px}
 .ab-row{grid-template-columns:minmax(0,1fr) 20px;grid-template-areas:"n g" "t .";row-gap:6px;min-height:0;padding:16px 0}
 .ab-row-name{grid-area:n;font-size:20px}
 .ab-row-note{grid-area:t}
 .ab-row-go{grid-area:g}
 .ab-persons{grid-template-columns:minmax(0,1fr);gap:48px}
 .ab-belief-body{margin:0;font-size:17px}
 .ab-facts>div{grid-template-columns:minmax(0,1fr);gap:6px}
}
@media(prefers-reduced-motion:reduce){
 .ab-photo,.ab-photo img,.ab-row,.ab-row-go,.ab-facts a{transition:none}
}
