/* Approved ABOUT: carbon, lime and cream; live text and one-time entrance motion. */
.about-lime{--about-ink:#11130f;--about-lime:#dcf45b;--about-cream:#f5f2e9;background:var(--about-cream);color:var(--about-ink)}
.about-lime ::selection{background:var(--about-lime);color:var(--about-ink)}
.about-wrap{width:min(1760px,calc(100% - 8vw));margin-inline:auto}
.about-lime :focus-visible{outline:3px solid #568fe9;outline-offset:7px}
.about-opening{background:var(--about-ink);color:var(--about-cream);padding:clamp(42px,4.2vw,78px) 0 clamp(42px,4.7vw,86px)}
.about-kicker{font-size:clamp(14px,1.65vw,26px);font-weight:760;line-height:1.25;letter-spacing:-.02em}
.about-opening .about-kicker{color:var(--about-lime);margin-bottom:clamp(32px,3.4vw,62px)}
.about-title{font-size:clamp(62px,9.35vw,178px);font-weight:900;letter-spacing:-.058em;line-height:1.12;color:var(--about-cream)}
.about-title-row{display:block;overflow:clip;padding-block:.06em;margin-block:-.06em}
.about-title-line{display:block;white-space:nowrap}
.about-title-cluster{display:inline-block}
.about-accent{color:var(--about-lime)}
.about-opening-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:34px;margin-top:clamp(25px,2.8vw,52px)}
.about-lead{font-size:clamp(18px,2.1vw,33px);font-weight:430;line-height:1.48;letter-spacing:-.035em}
.about-lead>span{display:block}
.about-scroll-link{flex-shrink:0;width:62px;height:62px;display:flex;align-items:center;justify-content:center;color:var(--about-lime)}
.about-scroll-link .icon{width:58px;height:58px;transform:rotate(90deg);transition:translate .2s}
.about-scroll-link:hover .icon,.about-scroll-link:focus-visible .icon{translate:0 5px}
.about-connection{background:var(--about-lime);color:var(--about-ink);padding:clamp(18px,2.1vw,38px) 0;overflow:clip}
.about-connection-line{display:flex;align-items:center;justify-content:space-between;gap:clamp(10px,1.4vw,26px);font-size:clamp(32px,7.2vw,138px);font-weight:900;line-height:1;letter-spacing:-.055em;white-space:nowrap}
.about-connection-arrow{font-weight:500;font-size:.72em;letter-spacing:0}
.about-services{padding-top:clamp(40px,4.2vw,78px);padding-bottom:clamp(48px,5vw,92px);scroll-margin-top:120px}
.about-services .about-kicker{margin-bottom:clamp(20px,2vw,36px)}
.about-services h2{font-size:clamp(32px,4.8vw,88px);font-weight:870;line-height:1.2;letter-spacing:-.055em}
.about-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(38px,4.2vw,78px)}
.about-service{min-width:0;padding-inline:clamp(24px,3.4vw,62px);border-left:1px solid var(--about-ink)}
.about-service:first-child{border-left:0;padding-left:0}
.about-service:last-child{padding-right:0}
.about-service-number{display:block;font-size:clamp(80px,9.2vw,166px);font-weight:800;letter-spacing:-.08em;line-height:.9;color:transparent;-webkit-text-stroke:1.8px var(--about-ink);transition:color .35s,translate .35s}
.about-service-label{margin-top:14px;font-size:clamp(13px,1.5vw,25px);font-weight:800;line-height:1.3;letter-spacing:-.025em}
.about-service h3{margin:clamp(20px,2.1vw,38px) 0 clamp(16px,1.6vw,28px);font-size:clamp(25px,3.15vw,55px);font-weight:870;line-height:1.2;letter-spacing:-.055em;white-space:nowrap}
.about-service-description{font-size:clamp(15px,1.7vw,27px);line-height:1.6;letter-spacing:-.04em}
.about-closing{border-top:2px solid var(--about-ink);padding-top:clamp(32px,3vw,56px)}
.about-closing h2{font-size:clamp(30px,4.8vw,90px);line-height:1.22;letter-spacing:-.055em;font-weight:900}
.about-closing h2>span{display:inline-block}
.about-footer{padding-top:clamp(25px,2.5vw,48px);padding-bottom:clamp(28px,2.6vw,50px);font-size:clamp(12px,1.35vw,20px);line-height:1.4;letter-spacing:-.02em}
.about-footer strong{font-weight:800}
.about-motion-ready [data-about-reveal]{opacity:0;transform:translate3d(0,28px,0);transition:opacity .8s ease var(--about-delay,0ms),transform .9s cubic-bezier(.22,1,.36,1) var(--about-delay,0ms)}
.about-motion-ready .about-title-line{animation:about-title-enter .95s cubic-bezier(.22,1,.36,1) var(--about-delay,0ms) backwards}
.about-motion-ready [data-about-reveal].is-visible{opacity:1;transform:translate3d(0,0,0)}
.about-motion-ready .about-opening-bottom.is-visible .about-scroll-link{animation:about-arrow-nudge 1.6s ease-in-out 2 1.1s}
@keyframes about-arrow-nudge{0%,100%{transform:translateY(0)}50%{transform:translateY(8px)}}
/* Base headline styles stay visible when animation is disabled or finished. */
@keyframes about-title-enter{from{opacity:0;transform:translate3d(0,104%,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@media(hover:hover){.about-service:hover .about-service-number{color:var(--about-lime);translate:0 -3px}}
@media(max-width:1100px){
 .about-service{padding-inline:25px}.about-service h3{font-size:3.1vw}
 .about-service-description{font-size:1.65vw}.about-service-description br{display:none}
}
@media(max-width:800px){
 .about-wrap{width:calc(100% - 44px)}
 .about-title{font-size:9.15vw}.about-kicker{font-size:15px}
 .about-lead{font-size:17px}.about-scroll-link{width:44px;height:44px}.about-scroll-link .icon{width:40px;height:40px}
 .about-service{padding-inline:20px}.about-service h3{font-size:3.05vw}.about-service-label{font-size:12px}
 .about-service-number{font-size:10vw}.about-service-description{font-size:14px}
}
@media(max-width:600px){
 .about-opening{padding:42px 0 36px}.about-opening .about-kicker{font-size:12px;margin-bottom:30px}
 .about-title{font-size:clamp(38px,12.25vw,72px);line-height:1.16;letter-spacing:-.06em}
 .about-title-line{white-space:normal}.about-title-cluster{display:block}
 .about-opening-bottom{margin-top:27px;align-items:flex-start;gap:18px;flex-direction:column}
 .about-lead{font-size:16px;line-height:1.65}.about-lead>span+span{margin-top:5px}
 .about-scroll-link{align-self:flex-end;width:38px;height:38px}.about-scroll-link .icon{width:36px;height:36px}
 .about-connection{padding-block:23px}.about-connection-line{font-size:5.35vw;letter-spacing:-.035em;gap:8px}
 .about-connection-arrow{font-size:1em}
 .about-services{padding-top:38px;padding-bottom:40px;scroll-margin-top:90px}
 .about-services .about-kicker{font-size:12px;margin-bottom:20px}.about-services h2{font-size:8.5vw;line-height:1.3;max-width:10em}
 .about-service-grid{grid-template-columns:1fr;margin-top:30px}
 .about-service,.about-service:first-child,.about-service:last-child{display:grid;grid-template-columns:64px 1fr;column-gap:20px;padding:29px 0;border-left:0;border-top:1px solid #11130f50}
 .about-service-number{grid-column:1;grid-row:1 / 4;font-size:65px;line-height:1;letter-spacing:-.08em;-webkit-text-stroke-width:1.25px}
 .about-service-label{grid-column:2;font-size:11px;margin-top:0;line-height:1.2}
 .about-service h3{grid-column:2;font-size:27px;margin:10px 0 13px;white-space:normal}
 .about-service-description{grid-column:2;font-size:15px;line-height:1.6;letter-spacing:-.035em}
 .about-closing{padding-top:30px}.about-closing h2{font-size:9.4vw;line-height:1.3;letter-spacing:-.055em}.about-closing h2>span{display:block}
 .about-footer{font-size:11px;padding-top:28px;padding-bottom:30px}
 .about-motion-ready [data-about-reveal]{transition-delay:0ms}
}
@media(prefers-reduced-motion:reduce){
 .about-lime *{animation:none!important;transition:none!important}
 .about-motion-ready [data-about-reveal]{opacity:1;transform:none}
}
