/* About page */
.ab-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.ab-stats>div{position:relative;padding:34px 28px;border-radius:28px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);overflow:hidden;transition:transform .4s ease,border-color .4s ease}
.ab-stats>div:hover{transform:translateY(-6px);border-color:rgba(140,198,63,.45)}
.ab-stats>div:after{content:"";position:absolute;left:0;bottom:0;height:4px;width:0;background:linear-gradient(90deg,#328741,#B5E07A);transition:width 1.6s cubic-bezier(.22,1,.36,1) .2s}
.ab-stats>div.in:after{width:100%}
.ab-stats small{display:block;font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#B5E07A;margin-bottom:10px}
.ab-stats b{display:block;font-family:'Paytone One',sans-serif;font-weight:400;font-size:clamp(40px,4.4vw,64px);line-height:1;margin-bottom:12px}
.ab-stats span{font-size:15.5px;line-height:1.5;color:rgba(255,255,255,.82)}
@media (max-width:900px){.ab-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.ab-stats{grid-template-columns:1fr}}
.ab-pillars{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.ab-pillars>div{grid-column:span 2}
.ab-pillars>div:nth-child(4),.ab-pillars>div:nth-child(5){grid-column:span 3}
@media (max-width:900px){.ab-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.ab-pillars>div,.ab-pillars>div:nth-child(4){grid-column:span 1}.ab-pillars>div:nth-child(5){grid-column:span 2}}
@media (max-width:560px){.ab-pillars{grid-template-columns:1fr}.ab-pillars>div,.ab-pillars>div:nth-child(5){grid-column:auto}}
/* timeline */
.ab-tl{position:relative;margin-top:24px;padding:20px 0}
.ab-tl-line{position:absolute;left:50%;top:0;bottom:0;width:3px;margin-left:-1.5px;background:rgba(255,255,255,.1);border-radius:3px}
.ab-tl-fill{position:absolute;left:0;top:0;width:100%;height:0;background:linear-gradient(180deg,#328741,#8CC63F 70%,#B5E07A);border-radius:3px;box-shadow:0 0 18px rgba(140,198,63,.6)}
.ab-tl-item{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:96px;margin:0 0 34px}
.ab-tl-item:last-child{margin-bottom:0}
.ab-tl-dot{position:absolute;left:50%;top:30px;width:22px;height:22px;margin-left:-11px;border-radius:50%;background:#1E1D1D;border:3px solid rgba(255,255,255,.25);transition:border-color .5s ease,background-color .5s ease,box-shadow .5s ease,transform .5s cubic-bezier(.34,1.56,.64,1);z-index:1}
.ab-tl-item.on .ab-tl-dot{border-color:#8CC63F;background:#8CC63F;box-shadow:0 0 0 8px rgba(140,198,63,.18);transform:scale(1.1)}
.ab-tl-card{position:relative;padding:26px 30px;border-radius:24px;background:#2B2A2A;border:1px solid rgba(255,255,255,.07);opacity:0;transform:translateX(-60px);transition:opacity .8s ease,transform .8s cubic-bezier(.22,1,.36,1),border-color .4s ease,box-shadow .4s ease}
.ab-tl-item:nth-child(even) .ab-tl-card{grid-column:2;transform:translateX(60px)}
.ab-tl-item.on .ab-tl-card{opacity:1;transform:none}
.ab-tl-card:hover{border-color:rgba(140,198,63,.45);box-shadow:0 30px 50px -30px rgba(0,0,0,.8)}
.ab-tl-year{display:block;font-family:'Paytone One',sans-serif;font-size:clamp(30px,3vw,42px);line-height:1;margin-bottom:12px;background:linear-gradient(90deg,#3FB24F,#B5E07A);-webkit-background-clip:text;background-clip:text;color:transparent}
.ab-tl-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.ab-tl-card li{position:relative;padding-left:20px;font-size:16px;line-height:1.55;color:rgba(255,255,255,.88)}
.ab-tl-card li:before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:#6CB043}
.ab-tl-item.now .ab-tl-card{background:linear-gradient(135deg,#2E8B3E,#6CB043);border-color:transparent}
.ab-tl-item.now .ab-tl-year{background:none;color:#FFFFFF;-webkit-text-fill-color:#FFFFFF}
.ab-tl-item.now li{color:#FFFFFF}.ab-tl-item.now li:before{background:#FFFFFF}
.ab-tl-item.now.on .ab-tl-dot{animation:abPulse 2s ease-in-out infinite}
@keyframes abPulse{0%,100%{box-shadow:0 0 0 6px rgba(140,198,63,.25)}50%{box-shadow:0 0 0 16px rgba(140,198,63,0)}}
@media (min-width:761px){.ab-tl-item+.ab-tl-item{margin-top:-64px}}
@media (max-width:760px){.ab-tl-line{left:11px}.ab-tl-item{grid-template-columns:1fr;gap:0;padding-left:44px}.ab-tl-dot{left:11px}.ab-tl-item:nth-child(even) .ab-tl-card{grid-column:1}.ab-tl-card,.ab-tl-item:nth-child(even) .ab-tl-card{transform:translateY(30px)}}
@media (prefers-reduced-motion:reduce){.ab-tl-card{opacity:1;transform:none !important;transition:none}}
/* team */
.ab-team{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.ab-person{border-radius:30px;overflow:hidden;background:#FFFFFF;box-shadow:0 22px 50px -34px rgba(31,107,48,.6);display:flex;flex-direction:column;transition:transform .4s ease,box-shadow .4s ease}
.ab-photo{aspect-ratio:4/4.3;background-size:cover;background-position:center 20%;background-color:#DCE5D6;transition:transform .7s ease}
.ab-person>div:first-child{overflow:hidden}
.ab-person-in{padding:26px 28px 30px;display:flex;flex-direction:column;gap:8px}
.ab-person b{font-family:'Paytone One',sans-serif;font-weight:400;font-size:26px;line-height:1.1;color:#2B2A2A}
.ab-person em{font-style:normal;font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#328741}
.ab-person p{margin:6px 0 0;font-size:16px;line-height:1.65;color:#4A4848}
.ab-person:hover{transform:translateY(-8px);box-shadow:0 34px 60px -30px rgba(31,107,48,.6)}
.ab-person:hover .ab-photo{transform:scale(1.05)}
@media (max-width:900px){.ab-team{grid-template-columns:1fr;max-width:520px;margin:0 auto}}
/* offices */
.ab-offices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ab-office{position:relative;padding:32px 30px;border-radius:28px;background:#2B2A2A;border:1px solid rgba(255,255,255,.07);display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:transform .4s ease,border-color .4s ease}
.ab-office:before{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(140,198,63,.22),rgba(140,198,63,0) 70%);transition:transform .6s ease}
.ab-office:hover{transform:translateY(-8px);border-color:rgba(140,198,63,.45)}
.ab-office:hover:before{transform:scale(1.5)}
.ab-flag{width:52px;height:36px;border-radius:8px;object-fit:cover;box-shadow:0 6px 16px -6px rgba(0,0,0,.6)}
.ab-office small{font-size:13px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#8CC63F}
.ab-office b{font-family:'Paytone One',sans-serif;font-weight:400;font-size:28px;line-height:1.1}
.ab-office p{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,.85)}
.ab-office a{color:#B5E07A;text-decoration:none;font-weight:600}
.ab-office a:hover{text-decoration:underline}
@media (max-width:900px){.ab-offices{grid-template-columns:1fr}}
.ab-logos .rsheet{margin-top:0 !important;border-radius:0 !important;box-shadow:none !important;padding-bottom:72px !important}
/* timeline flags */
.ab-tl-card li.fl{display:flex;align-items:flex-start;gap:12px;padding-left:0}
.ab-tl-card li.fl:before{display:none}
.ab-fls{display:inline-flex;gap:4px;flex:0 0 auto;margin-top:1px}
.ab-fl-i{width:22px;height:22px;border-radius:50%;overflow:hidden;display:inline-flex;box-shadow:0 0 0 1.5px rgba(255,255,255,.35);transition:transform .35s cubic-bezier(.34,1.56,.64,1)}
.ab-tl-card li.fl:hover .ab-fl-i{transform:scale(1.15)}
