.about-page {
    overflow-x: clip;
    background: #fff;
    color: #08214d
}

.about-page em {
    color: #0872ee;
    font-style: normal
}

.about-page h1,
.about-page h2,
.about-page h3 {
    letter-spacing: -.035em
}

.about-pill {
    display: inline-flex;
    align-items: center;
    padding: 7px 14px;
    border: 1px solid #bdd9f8;
    border-radius: 20px;
    background: rgba(255, 255, 255, .86);
    color: #0870e8;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .09em
}

.about-kicker {
    display: flex;
    align-items: center;
    gap: 11px;
    color: #0871e8;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .16em
}

.about-kicker:before {
    width: 30px;
    height: 2px;
    background: #0871e8;
    content: ""
}

.about-copy h2,
.about-values-heading h2 {
    margin: 14px 0 15px;
    font-size: clamp(36px, 3.8vw, 56px);
    line-height: 1.08
}

.about-copy>p {
    margin: 0;
    color: #5e7696;
    font-size: 16px;
    line-height: 1.65
}

.about-hero {
    position: relative;
    padding: 55px 0 45px;
    background: radial-gradient(circle at 76% 32%, rgba(76, 162, 255, .2), transparent 35%), linear-gradient(145deg, #fff, #eef7ff)
}

.about-hero:before {
    position: absolute;
    inset: 0;
    content: "";
    pointer-events: none;
    background: linear-gradient(125deg, transparent 75%, rgba(30, 139, 255, .08))
}

.about-hero>.tsl-container {
    position: relative
}

.about-hero__grid {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 42px;
    align-items: center
}

.about-hero__copy h1 {
    margin: 20px 0 16px;
    font-size: clamp(44px, 4vw, 58px);
    line-height: 1.04
}

.about-hero__copy>p {
    max-width: 590px;
    margin: 0;
    color: #597393;
    font-size: 16px;
    line-height: 1.65
}

.about-actions {
    display: flex;
    gap: 13px;
    margin-top: 26px
}

.about-actions a {
    display: flex;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0 27px;
    border: 1px solid #0871ed;
    border-radius: 11px;
    background: linear-gradient(135deg, #1688ff, #0762e7);
    color: #fff;
    font-weight: 800
}

.about-actions a:last-child {
    background: #fff;
    color: #0871ed
}

.about-actions svg {
    width: 18px
}

.about-actions a:last-child svg {
    transform: rotate(90deg)
}

.about-hero__stats {
    display: flex;
    gap: 0;
    margin-top: 42px
}

.about-hero__stats>div {
    display: flex;
    min-width: 170px;
    align-items: center;
    gap: 12px;
    padding: 0 22px;
    border-left: 1px solid #cfdeef
}

.about-hero__stats>div:first-child {
    padding-left: 0;
    border: 0
}

.about-hero__stats svg {
    width: 42px;
    height: 42px;
    padding: 11px;
    border-radius: 50%;
    background: #e8f3ff;
    color: #0871e8
}

.about-hero__stats b,
.about-hero__stats small {
    display: block
}

.about-hero__stats b {
    color: #0871e8;
    font-size: 21px
}

.about-hero__stats small {
    color: #697e99;
    font-size: 15px;
    font-weight: 500
}

.about-hero__visual {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 250px;
    overflow: hidden;
    min-height: 580px;
    border-radius: 25px;
    background: #073a7b;
    box-shadow: 0 20px 45px rgba(8, 64, 128, .13)
}

.about-hero__visual>figure {
    height: 100%;
    margin: 0
}

.about-hero__visual>figure img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.about-hero__visual>aside {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 55px 24px 24px;
    background: linear-gradient(160deg, #174d87, #07336b);
    color: #fff
}

.about-hero__visual>aside>span {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2
}

.about-hero__visual>aside>p {
    color: #d3e4f6;
    font-size: 15px;
    line-height: 1.55
}

.about-hero__visual>aside img {
    width: 100%;
    height: 140px;
    border: 1px solid rgba(255, 255, 255, .7);
    border-radius: 12px;
    object-fit: cover
}

.about-video {
    position: absolute;
    bottom: 28px;
    left: 38px;
    display: flex;
    align-items: center;
    gap: 13px;
    color: #fff;
    font-size: 15px;
    font-weight: 750
}

.about-video:before {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #0871ed;
    content: ""
}

.about-video {
    font-size: 0
}

.about-video:after {
    position: absolute;
    left: 22px;
    border-width: 8px 0 8px 13px;
    border-style: solid;
    border-color: transparent transparent transparent #0871ed;
    content: ""
}

.about-video span {
    font-size: 15px
}

.about-service-strip {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin-top: 28px;
    padding: 22px 25px;
    border: 1px solid #d8e7f5;
    border-radius: 18px;
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 12px 30px rgba(13, 67, 127, .06)
}

.about-service-strip>div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 24px;
    border-left: 1px solid #d8e5f2
}

.about-service-strip>div:first-child {
    border: 0
}

.about-service-strip svg {
    width: 42px;
    height: 42px;
    padding: 10px;
    border-radius: 50%;
    background: #eaf4ff;
    color: #0871ed
}

.about-service-strip strong,
.about-service-strip small {
    display: block
}

.about-service-strip strong {
    font-size: 15px
}

.about-service-strip small {
    margin-top: 3px;
    color: #71839d;
    font-size: 15px
}

.about-foundation {
    padding: 75px 0;
    background: linear-gradient(150deg, #fff, #f4f9ff)
}

.about-split {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 65px;
    align-items: center
}

.about-feature-image {
    position: relative;
    height: 465px;
    margin: 0
}

.about-feature-image>img {
    width: 100%;
    height: 100%;
    border-radius: 28px;
    object-fit: cover
}

.about-feature-image figcaption {
    position: absolute;
    right: 22px;
    bottom: 22px;
    max-width: 290px;
    padding: 19px 22px;
    border: 1px solid #7cb7f3;
    border-radius: 16px;
    background: rgba(5, 54, 119, .9);
    color: #fff;
    font-size: 15px;
    line-height: 1.6
}

.about-metrics {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-top: 28px
}

.about-metrics span {
    padding: 14px;
    border: 1px solid #d9e7f5;
    border-radius: 12px;
    background: #fff
}

.about-metrics b,
.about-metrics small {
    display: block
}

.about-metrics b {
    color: #0871ed;
    font-size: 15px
}

.about-metrics small {
    margin-top: 3px;
    color: #70849f;
    font-size: 15px
}

.about-values-heading {
    display: grid;
    grid-template-columns: 1.2fr .8fr auto;
    gap: 30px;
    align-items: end;
    margin-top: 65px
}

.about-values-heading h2 {
    font-size: 38px
}

.about-values-heading>p {
    margin: 0;
    color: #667d99;
    font-size: 15px;
    line-height: 1.55
}

.about-values-heading>a {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 11px 18px;
    border: 1px solid #bad7f7;
    border-radius: 22px;
    color: #0871ed;
    font-size: 15px;
    font-weight: 750
}

.about-values-heading svg {
    width: 15px
}

.about-value-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-top: 25px
}

.about-value-grid article {
    position: relative;
    min-height: 405px;
    padding: 27px 24px;
    border: 1px solid #dbe8f5;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(13, 67, 127, .06)
}

.about-value-number {
    display: inline-grid;
    width: 39px;
    height: 39px;
    place-items: center;
    border-radius: 11px;
    background: #eaf4ff;
    color: #0871ed;
    font-weight: 800
}

.about-value-grid article>i {
    position: absolute;
    top: 20px;
    right: 22px;
    display: grid;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 50%;
    background: #eaf4ff;
    color: #0871ed
}

.about-value-grid article>i svg {
    width: 28px
}

.about-value-grid h3 {
    margin: 16px 0 9px;
    font-size: 23px;
    line-height: 1.15
}

.about-value-grid p {
    min-height: 94px;
    margin: 0;
    color: #657c99;
    font-size: 15px;
    line-height: 1.55
}

.about-value-grid ul {
    margin: 18px 0 0;
    padding: 0;
    list-style: none
}

.about-value-grid li {
    position: relative;
    margin: 9px 0;
    padding-left: 26px;
    color: #385878;
    font-size: 15px
}

.about-value-grid li:before {
    position: absolute;
    left: 0;
    display: grid;
    width: 17px;
    height: 17px;
    place-items: center;
    border-radius: 50%;
    background: #0871ed;
    color: #fff;
    content: "✓";
    font-size: 10px
}

.about-culture {
    padding: 75px 0;
    background: radial-gradient(circle at 90% 20%, rgba(74, 158, 255, .15), transparent 28%), #fff
}

.about-assertion {
    display: grid;
    grid-template-columns: .75fr 1.25fr;
    gap: 55px;
    align-items: center
}

.about-assertion>figure {
    position: relative;
    height: 440px;
    margin: 0
}

.about-assertion>figure>img {
    width: 100%;
    height: 100%;
    border-radius: 25px;
    object-fit: cover
}

.about-assertion figcaption {
    position: absolute;
    right: -15px;
    bottom: 25px;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 17px 22px;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 15px 35px rgba(10, 60, 120, .14)
}

.about-assertion figcaption svg {
    width: 42px;
    height: 42px;
    padding: 11px;
    border-radius: 50%;
    background: #eaf4ff;
    color: #0871ed
}

.about-assertion figcaption b,
.about-assertion figcaption small {
    display: block
}

.about-assertion figcaption small {
    font-size: 15px
}

.about-mini-values {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 28px
}

.about-mini-values span,
.about-culture-values span {
    padding: 13px;
    border: 1px solid #dce8f5;
    border-radius: 11px;
    background: #fff
}

.about-mini-values svg,
.about-culture-values svg {
    width: 35px;
    height: 35px;
    padding: 8px;
    border-radius: 50%;
    background: #eaf4ff;
    color: #0871ed
}

.about-mini-values b,
.about-mini-values small,
.about-culture-values b,
.about-culture-values small {
    display: block
}

.about-mini-values b,
.about-culture-values b {
    font-size: 15px
}

.about-mini-values small,
.about-culture-values small {
    margin-top: 3px;
    color: #71849d;
    font-size: 15px
}

.about-culture-row {
    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 45px;
    align-items: center;
    margin-top: 50px;
    padding: 28px;
    border-radius: 30px;
    background: linear-gradient(145deg, #f7fbff, #fff);
    box-shadow: 0 15px 40px rgba(16, 68, 128, .06)
}

.about-culture-row>figure {
    position: relative;
    height: 390px;
    margin: 0
}

.about-culture-row>figure>img {
    width: 100%;
    height: 100%;
    border-radius: 22px;
    object-fit: cover
}

.about-culture-row figcaption {
    position: absolute;
    right: 18px;
    bottom: 18px;
    left: 18px;
    padding: 20px;
    border-radius: 15px;
    background: rgba(255, 255, 255, .94);
    color: #12315c;
    font-size: 15px;
    font-weight: 650
}

.about-culture-values {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 9px;
    margin-top: 25px
}

.about-commitment {
    display: grid;
    grid-template-columns: .52fr 1.48fr;
    align-items: center;
    margin-top: 45px;
    overflow: hidden;
    border: 1px solid #d9e7f5;
    border-radius: 22px;
    background: #fff
}

.about-commitment>figure {
    height: 260px;
    margin: 0
}

.about-commitment>figure img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.about-commitment>div {
    padding: 28px
}

.about-commitment h2 {
    margin: 0 0 8px;
    font-size: 24px
}

.about-commitment>div>p {
    margin: 0;
    color: #607896;
    font-size: 15px
}

.about-commitment>div>div {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    margin-top: 24px
}

.about-commitment span {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px;
    border: 1px solid #dce8f5;
    border-radius: 11px
}

.about-commitment svg {
    width: 32px;
    color: #0871ed
}

.about-commitment b,
.about-commitment small {
    display: block
}

.about-commitment b {
    font-size: 15px
}

.about-commitment small {
    font-size: 15px;
    color: #71849d
}

.about-summary-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 22px;
    margin-top: 45px
}

.about-summary-grid article {
    min-height: 350px;
    padding: 28px;
    border: 1px solid #dbe8f5;
    border-radius: 20px;
    background: linear-gradient(145deg, #fff, #f4f9ff)
}

.about-summary-grid h2 {
    margin: 19px 0 10px;
    font-size: 29px;
    line-height: 1.2
}

.about-summary-grid p {
    color: #607896;
    font-size: 15px;
    line-height: 1.65
}

.about-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 19px 0
}

.about-tags span {
    padding: 7px 12px;
    border: 1px solid #c8def5;
    border-radius: 18px;
    color: #0d4d9b;
    font-size: 15px;
    font-weight: 700
}

.about-summary-grid article>a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 10px;
    padding: 11px 18px;
    border: 1px solid #bdd8f6;
    border-radius: 22px;
    color: #0871ed;
    font-size: 15px;
    font-weight: 750
}

.about-summary-grid article>a svg {
    width: 15px
}

.about-summary-grid blockquote {
    margin: 18px 0;
    padding: 15px;
    border-left: 4px solid #0871ed;
    background: #fff;
    color: #12315d;
    font-size: 15px;
    font-weight: 750
}

.about-summary-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 27px
}

.about-summary-stats b {
    padding-left: 20px;
    border-left: 1px solid #d4e1ef;
    color: #0871ed;
    font-size: 22px
}

.about-summary-stats small {
    display: block;
    color: #71849d;
    font-size: 15px;
    font-weight: 500
}

@media(max-width:1100px) {
    .about-hero__grid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .about-hero__copy {
        max-width: 820px
    }

    .about-hero__visual {
        min-height: 520px
    }

    .about-service-strip {
        display: flex;
        overflow-x: auto
    }

    .about-service-strip>div {
        flex: 0 0 230px
    }

    .about-split,
    .about-assertion {
        gap: 35px
    }

    .about-value-grid {
        grid-template-columns: 1fr 1fr
    }

    .about-values-heading {
        grid-template-columns: 1fr auto
    }

    .about-values-heading>p {
        grid-column: 1/-1;
        grid-row: 2
    }

    .about-culture-values {
        grid-template-columns: 1fr 1fr
    }

    .about-commitment>div>div {
        grid-template-columns: 1fr 1fr
    }
}

@media(max-width:800px) {
    .about-hero {
        padding-top: 35px
    }

    .about-hero__copy h1 {
        font-size: 48px
    }

    .about-hero__visual {
        grid-template-columns: 1fr 190px;
        min-height: 430px
    }

    .about-hero__visual>aside {
        padding: 30px 15px
    }

    .about-hero__visual>aside>span {
        font-size: 17px
    }

    .about-hero__visual>aside img {
        height: 105px
    }

    .about-hero__stats {
        overflow-x: auto
    }

    .about-hero__stats>div {
        flex: 0 0 180px
    }

    .about-split,
    .about-assertion,
    .about-culture-row,
    .about-commitment {
        grid-template-columns: 1fr
    }

    .about-feature-image,
    .about-assertion>figure {
        height: 360px
    }

    .about-values-heading {
        grid-template-columns: 1fr
    }

    .about-values-heading>a {
        width: max-content
    }

    .about-assertion>.about-copy {
        order: 1
    }

    .about-assertion>figure {
        order: 2
    }

    .about-culture-row {
        padding: 18px
    }

    .about-culture-row>figure {
        height: 320px
    }

    .about-commitment>figure {
        height: 260px
    }

    .about-summary-grid {
        grid-template-columns: 1fr
    }
}

@media(max-width:550px) {
    .about-hero__copy h1 {
        font-size: clamp(32px, 8.7vw, 39px);
        line-height: 1.1
    }

    .about-hero__copy>p,
    .about-copy>p {
        font-size: 15px
    }

    .about-actions {
        display: grid
    }

    .about-actions a {
        width: 100%
    }

    .about-hero__visual {
        display: block;
        min-height: 0
    }

    .about-hero__visual>figure {
        height: 330px
    }

    .about-hero__visual>aside {
        display: grid;
        grid-template-columns: 1fr 1fr;
        padding: 20px
    }

    .about-hero__visual>aside>span,
    .about-hero__visual>aside>p {
        grid-column: 1/-1
    }

    .about-video {
        bottom: 185px
    }

    .about-service-strip {
        margin-top: 18px
    }

    .about-split {
        gap: 30px
    }

    .about-copy h2 {
        font-size: 37px
    }

    .about-metrics {
        grid-template-columns: 1fr 1fr
    }

    .about-feature-image {
        height: 300px
    }

    .about-values-heading h2 {
        font-size: 33px
    }

    .about-value-grid {
        grid-template-columns: 1fr
    }

    .about-value-grid article {
        min-height: 0
    }

    .about-value-grid p {
        min-height: 0
    }

    .about-mini-values {
        grid-template-columns: 1fr
    }

    .about-culture-values {
        grid-template-columns: 1fr 1fr
    }

    .about-commitment>div>div {
        grid-template-columns: 1fr
    }

    .about-summary-stats b {
        padding-left: 10px;
        font-size: 18px
    }
}

@media(prefers-reduced-motion:reduce) {
    .about-page * {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important
    }
}

.about-hero__copy,
.about-copy,
.about-values-heading>div {
    min-width: 0
}

.about-hero__copy>p,
.about-copy>p {
    max-width: 100%;
    overflow-wrap: anywhere
}

.about-service-strip small,
.about-hero__stats small,
.about-metrics small {
    font-size: 15px
}

.about-value-grid p {
    font-size: 15px
}

.about-value-grid li {
    font-size: 15px;
    line-height: 1.45
}

.about-mini-values b,
.about-culture-values b {
    font-size: 15px
}

.about-mini-values small,
.about-culture-values small,
.about-commitment small {
    font-size: 15px;
    line-height: 1.35
}

.about-commitment b {
    font-size: 15px
}

.about-summary-grid p {
    font-size: 15px
}

.about-summary-grid blockquote {
    font-size: 15px
}

.about-summary-stats small {
    font-size: 15px
}


/* About continuation: operating values, industries, people and customer stories. */
.about-operating,
.about-people {
    background: radial-gradient(ellipse at 90% 10%, #fff 0, transparent 45%), linear-gradient(135deg, #f8fcff, #eff7ff 60%, #fff)
}

.about-operating {
    padding: 64px 0 50px
}

.about-new-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 28px;
    margin-bottom: 28px
}

.about-new-heading>div {
    min-width: 0
}

.about-new-heading h2 {
    margin: 16px 0 14px;
    font-size: clamp(29px, 3vw, 44px);
    line-height: 1.16;
    color: #081b4b
}

.about-new-heading p {
    max-width: 760px;
    margin: 0;
    color: #607799;
    font-size: 15px;
    line-height: 1.65
}

.about-operating__heading p {
    max-width: 650px
}

.about-signature {
    flex-shrink: 0;
    padding: 10px 12px 20px;
    border-bottom: 1px solid #82b2fb;
    color: #72a7f8;
    font-family: var(--tsl-font-heading);
    font-size: 22px;
    font-style: italic;
    line-height: 1.5;
    text-align: center;
    display: none;
    transform: rotate(-9deg)
}

.about-operating__values {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px
}

.about-operating__values article,
.about-team__values article {
    position: relative;
    padding: 24px 24px 46px;
    border: 1px solid #d9e8fc;
    border-radius: 18px;
    background: linear-gradient(140deg, #fff, rgba(255, 255, 255, .6));
    box-shadow: 0 12px 30px #1662aa06
}

.about-new-icon {
    display: inline-grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 15px;
    background: #e7f1ff;
    color: #0871ff
}

.about-new-icon svg {
    width: 27px;
    height: 27px
}

.about-operating__values article:nth-child(2) .about-new-icon {
    background: #fff3de;
    color: #ff9d1e
}

.about-operating__values article:nth-child(4) .about-new-icon {
    background: #e3f8f3;
    color: #08ba9b
}

.about-operating__values h3,
.about-team__values h3 {
    margin: 15px 0 8px;
    font-size: 20px;
    line-height: 1.25;
    color: #081b4b
}

.about-operating__values p,
.about-team__values p {
    margin: 0;
    color: #5c7598;
    font-size: 15px;
    line-height: 1.6
}

.about-operating__number {
    position: absolute;
    right: 20px;
    bottom: 12px;
    color: #d0e3ff;
    font-size: 28px;
    font-weight: 700
}

.about-difference {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    margin: 44px 0;
    border-radius: 36px;
    background: radial-gradient(ellipse at 95% 95%, #a2dbff, transparent 45%), linear-gradient(115deg, #07265b, #155bc7 67%, #349bff);
    color: #fff
}

.about-difference:before {
    position: absolute;
    z-index: -1;
    inset: -40% -10% -30% 36%;
    border: 60px solid #69b3ff14;
    border-radius: 50%;
    content: "";
    transform: rotate(-25deg)
}

.about-difference__grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 36px;
    padding-top: 40px;
    padding-bottom: 40px;
    align-items: stretch
}

.about-difference__copy {
    padding: 5px 0
}

.about-difference .about-pill {
    border-color: #ffffff30;
    background: #ffffff0c;
    color: #fff;
    font-size: 15px;
    letter-spacing: .03em
}

.about-difference h2 {
    max-width: 480px;
    margin: 16px 0;
    font-size: clamp(30px, 3vw, 43px);
    line-height: 1.14;
    color: #fff
}

.about-difference h2 em {
    color: #74d8ff
}

.about-difference__copy>p {
    margin: 0;
    color: #e1eafb;
    font-size: 15px;
    line-height: 1.65
}

.about-difference__sectors {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 11px;
    margin-top: 22px
}

.about-difference__sectors a {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 9px;
    min-height: 98px;
    padding: 14px;
    border: 1px solid #90caff45;
    border-radius: 15px;
    background: #a7d4ff0a;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.3;
    transition: background .2s
}

.about-difference__sectors a:hover {
    background: #ffffff20
}

.about-difference__sectors svg {
    width: 28px;
    height: 28px;
    color: #8fc8ff
}

.about-new-media {
    position: relative;
    overflow: hidden;
    min-width: 0;
    margin: 0;
    border: 1px solid #c4dfff;
    border-radius: 27px;
    background: #dcecff
}

.about-new-media>img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.about-difference .about-new-media {
    min-height: 500px
}

.about-new-media figcaption {
    position: absolute;
    right: 22px;
    bottom: 22px;
    left: 22px;
    display: flex;
    justify-content: flex-end
}

.about-media-link {
    display: flex;
    align-items: center;
    gap: 13px;
    padding: 17px 20px;
    border: 1px solid #ffffff8c;
    border-radius: 20px;
    background: #f8fcfff2;
    color: #092559;
    box-shadow: 0 8px 30px #073f7920
}

.about-media-link>span:nth-child(2) {
    min-width: 0
}

.about-media-link strong,
.about-media-link small {
    display: block
}

.about-media-link strong {
    font-size: 15px;
    line-height: 1.35
}

.about-media-link small {
    margin-top: 4px;
    color: #637a9c;
    font-size: 15px;
    line-height: 1.45
}

.about-media-link>svg {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    padding: 7px;
    border-radius: 50%;
    background: #e9f3ff;
    color: #0871ff
}

.about-play {
    display: grid;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(135deg, #1991ff, #0047ce);
    color: #fff;
    font-size: 20px
}

.about-play svg {
    width: 24px;
    height: 24px
}

.about-outline-link {
    display: inline-flex;
    flex-shrink: 0;
    align-items: center;
    gap: 12px;
    padding: 10px 18px;
    border: 1px solid #c3dcff;
    border-radius: 30px;
    background: #ffffffb3;
    color: #0871ff;
    font-size: 15px;
    font-weight: 600
}

.about-outline-link svg {
    width: 18px;
    height: 18px
}

.about-industries .about-new-heading {
    align-items: center
}

.about-industries .about-new-heading h2 {
    font-size: clamp(28px, 2.7vw, 38px)
}

.about-industries__grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 14px
}

.about-industries__grid>a {
    overflow: hidden;
    border: 1px solid #d9e8fc;
    border-radius: 15px;
    background: #fff;
    box-shadow: 0 12px 28px #277fcc06;
    transition: transform .2s
}

.about-industries__grid>a:hover {
    transform: translateY(-4px)
}

.about-industries__grid>a>img {
    display: block;
    width: 100%;
    height: 128px;
    object-fit: cover
}

.about-industries__body {
    position: relative;
    display: block;
    padding: 0 17px 18px
}

.about-industries__body .about-new-icon {
    width: 43px;
    height: 43px;
    margin-top: -16px;
    margin-bottom: 7px;
    border: 1px solid #d9e8fc;
    border-radius: 12px;
    background: #f5faff
}

.about-industries__body svg {
    width: 22px;
    height: 22px
}

.about-industries__body strong,
.about-industries__body small {
    display: block
}

.about-industries__body strong {
    font-size: 15px;
    color: #08214d
}

.about-industries__body small {
    margin-top: 5px;
    color: #607799;
    font-size: 15px;
    line-height: 1.5
}

.about-wide-quote {
    display: flex;
    align-items: center;
    gap: 25px;
    margin: 34px 0 0;
    padding: 26px 30px;
    border: 1px solid #d9e8fc;
    border-radius: 19px;
    background: radial-gradient(ellipse at 88% 120%, #c9e4ff, transparent 48%), #ffffff70
}

.about-wide-quote>span:first-child,
.about-team__quote>span {
    color: #187aff;
    font-family: var(--tsl-font-heading);
    font-size: 80px;
    line-height: .8
}

.about-wide-quote p {
    margin: 0;
    color: #3f5f8e;
    font-size: 15px;
    line-height: 1.65
}

.about-wide-quote cite {
    display: block;
    margin-top: 10px;
    color: #6580a4;
    font-size: 15px;
    font-style: normal
}

.about-wide-quote .about-signature {
    margin-left: auto
}

.about-team {
    overflow: hidden;
    padding: 65px 0 40px;
    background: radial-gradient(ellipse at 105% 100%, #daeeff, transparent 50%)
}

.about-team__grid {
    display: grid;
    grid-template-columns: 1fr 1.02fr;
    gap: 48px;
    align-items: start
}

.about-team .about-new-media {
    height: 590px
}

.about-team .about-new-media figcaption {
    justify-content: flex-start
}

.about-team .about-media-link {
    background: linear-gradient(110deg, #0069ffeb, #092d5ce6);
    color: #fff
}

.about-team .about-media-link small {
    color: #e2eeff
}

.about-team .about-play {
    background: #fff;
    color: #0675ff
}

.about-team .about-new-heading {
    margin-bottom: 22px
}

.about-team .about-new-heading h2 {
    font-size: clamp(28px, 3vw, 42px)
}

.about-team .about-pill {
    font-size: 15px;
    letter-spacing: .035em
}

.about-team__values {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px
}

.about-team__values article {
    padding: 20px
}

.about-team__values .about-new-icon {
    border-radius: 50%
}

.about-team__values h3 {
    font-size: 21px;
    margin-top: 12px
}

.about-team__quote {
    display: flex;
    gap: 16px;
    margin: 22px 0 0;
    padding: 25px 26px;
    border: 1px solid #d9e8fc;
    border-radius: 20px;
    background: #ffffffdb
}

.about-team__quote p {
    margin: 0;
    color: #294779;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.55
}

.about-team__quote cite {
    display: block;
    margin-top: 12px;
    text-align: right;
    color: #0871ff;
    font-size: 15px;
    font-style: normal
}

.about-team__stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 32px
}

.about-team__stats>div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 12px;
    border-right: 1px solid #d2e4fa
}

.about-team__stats>div:first-child {
    padding-left: 0
}

.about-team__stats>div:last-child {
    border: 0;
    padding-right: 0
}

.about-team__stats .about-new-icon {
    flex-shrink: 0;
    width: 46px;
    height: 46px
}

.about-team__stats b {
    display: block;
    color: #0871ff;
    font-size: 22px
}

.about-team__stats small {
    display: block;
    margin-top: 3px;
    color: #6e83a2;
    font-size: 15px;
    line-height: 1.4
}

.about-feedback {
    padding-top: 42px;
    padding-bottom: 65px
}

.about-feedback__controls {
    display: flex;
    gap: 15px
}

.about-feedback__controls[hidden] {
    display: none
}

.about-feedback__controls button {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border: 1px solid #d0e4ff;
    border-radius: 50%;
    background: #e7f2ff;
    color: #0871ff;
    cursor: pointer
}

.about-feedback__controls button:disabled {
    background: #fff;
    opacity: .45;
    cursor: default
}

.about-feedback__controls button:first-child svg {
    transform: rotate(180deg)
}

.about-feedback__controls svg {
    width: 24px;
    height: 24px
}

.about-feedback__track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: calc((100% - 60px)/4);
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scrollbar-width: thin;
    scrollbar-color: #c8ddf9 transparent;
    padding-bottom: 12px
}

.about-feedback__card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    min-width: 0;
    scroll-snap-align: start;
    border: 1px solid #d9e8fc;
    border-radius: 18px;
    background: #ffffffba
}

.about-feedback__card>blockquote {
    position: relative;
    flex: 1;
    margin: 0;
    padding: 25px 20px 20px 34px;
    color: #647c9e;
    font-size: 15px;
    font-style: italic;
    line-height: 1.6
}

.about-feedback__card>blockquote:before {
    position: absolute;
    top: 18px;
    left: 15px;
    content: '“';
    font-size: 30px;
    font-family: var(--tsl-font-heading);
    color: #6ba6fb
}

.about-feedback__author {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 0 18px 20px
}

.about-feedback__author>img,
.about-feedback__author>span {
    display: grid;
    flex-shrink: 0;
    width: 58px;
    height: 58px;
    place-items: center;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #0857c2;
    color: #fff;
    object-fit: cover;
    box-shadow: 0 2px 12px #0b52a515
}

.about-feedback__author strong {
    display: block;
    color: #0e2a60;
    font-size: 15px;
    line-height: 1.35
}

.about-feedback__author small {
    display: block;
    margin-top: 4px;
    color: #6b80a0;
    font-size: 15px;
    line-height: 1.4
}

.about-feedback__photo {
    height: 185px;
    overflow: hidden;
    border-radius: 15px 15px 0 0
}

.about-feedback__photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.about-operating a:focus-visible,
.about-people a:focus-visible,
.about-people button:focus-visible,
.about-feedback__track:focus-visible {
    outline: 3px solid #2390ff;
    outline-offset: 4px
}

@media(max-width:1100px) {
    .about-operating__values {
        gap: 16px
    }

    .about-operating__values article {
        padding: 20px 18px 42px
    }

    .about-difference__grid {
        gap: 25px
    }

    .about-difference__sectors a {
        padding: 10px;
        font-size: 15px
    }

    .about-industries__grid {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }

    .about-industries__grid>a>img {
        height: 160px
    }

    .about-team__grid {
        gap: 28px
    }

    .about-team .about-new-media {
        height: 540px
    }

    .about-team__stats>div {
        gap: 7px;
        padding: 0 8px
    }

    .about-team__stats .about-new-icon {
        width: 34px;
        height: 38px
    }

    .about-team__stats .about-new-icon svg {
        width: 23px
    }

    .about-team__stats b {
        font-size: 20px
    }

    .about-team__values article {
        padding: 17px
    }

    .about-feedback__track {
        grid-auto-columns: calc((100% - 40px)/3)
    }
}

@media(max-width:800px) {

    .about-operating,
    .about-team {
        padding-top: 45px
    }

    .about-operating__heading>.about-signature {
        display: none
    }

    .about-operating__values {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .about-difference {
        border-radius: 25px
    }

    .about-difference__grid,
    .about-team__grid {
        grid-template-columns: 1fr
    }

    .about-difference h2 {
        max-width: 620px
    }

    .about-difference .about-new-media {
        min-height: 0;
        height: 430px
    }

    .about-difference__sectors a {
        min-height: 90px;
        padding: 15px;
        font-size: 15px
    }

    .about-new-heading {
        align-items: flex-start;
        flex-direction: column
    }

    .about-industries .about-new-heading {
        align-items: flex-start
    }

    .about-team .about-new-media {
        height: 480px
    }

    .about-team__stats {
        margin-bottom: 15px
    }

    .about-wide-quote .about-signature {
        display: none
    }

    .about-feedback__track {
        grid-auto-columns: calc((100% - 20px)/2)
    }

    .about-feedback__controls {
        align-self: flex-end
    }

    .about-team__stats small {
        font-size: 15px
    }
}

@media(max-width:480px) {
    .about-operating {
        padding-top: 35px
    }

    .about-operating__values {
        gap: 12px
    }

    .about-operating__values article {
        padding: 17px 14px 40px
    }

    .about-operating__values h3 {
        font-size: 18px
    }

    .about-operating__values p {
        font-size: 15px
    }

    .about-new-heading h2 {
        font-size: 30px
    }

    .about-new-heading p {
        font-size: 15px
    }

    .about-signature {
        font-size: 18px
    }

    .about-difference__grid {
        padding-top: 28px;
        padding-bottom: 28px
    }

    .about-difference__sectors {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .about-difference__sectors a {
        flex-direction: row;
        align-items: center;
        justify-content: flex-start;
        min-height: 68px
    }

    .about-difference .about-new-media {
        height: 330px
    }

    .about-new-media figcaption {
        right: 12px;
        bottom: 12px;
        left: 12px
    }

    .about-media-link {
        width: 100%;
        gap: 10px;
        padding: 13px;
        border-radius: 15px
    }

    .about-media-link>svg {
        margin-left: auto
    }

    .about-media-link strong {
        font-size: 15px
    }

    .about-play {
        width: 40px;
        height: 40px
    }

    .about-industries__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px
    }

    .about-industries__grid>a>img {
        height: 120px
    }

    .about-industries__body {
        padding: 0 12px 16px
    }

    .about-wide-quote {
        gap: 14px;
        padding: 24px 18px
    }

    .about-wide-quote p {
        font-size: 15px
    }

    .about-team .about-new-media {
        height: 380px
    }

    .about-team__stats {
        gap: 8px
    }

    .about-team__stats>div {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
        padding: 0 7px
    }

    .about-team__stats small {
        font-size: 15px
    }

    .about-team__values {
        gap: 12px
    }

    .about-team__values article {
        padding: 15px
    }

    .about-team__values h3 {
        font-size: 18px;
        overflow-wrap: anywhere
    }

    .about-team__values p {
        font-size: 15px
    }

    .about-team__quote {
        padding: 22px 17px;
        gap: 10px
    }

    .about-team__quote p {
        font-size: 15px
    }

    .about-feedback__track {
        grid-auto-columns: 86%
    }

    .about-feedback__controls button {
        width: 44px;
        height: 44px
    }

    .about-feedback {
        padding-bottom: 40px
    }
}