:root{
    --hero-text: #0B1431;
    --hero-text-contrast: #fff;
    --hero-primary: #12254A;
    --hero-primary-hover: #0e1d3a;
    --hero-outline: rgba(255,255,255,.85);
    --clr-text:#08090C;
    --clr-accent:#1a3563;
    --clr-muted:#a2a8b3;
    --clr-border:#dfe3ea;
    --sp-1:8px; --sp-2:12px; --sp-3:16px; --sp-4:24px; --sp-5:32px; --sp-6:48px;
}
body {
    font-family: Roboto, sans-serif;
}
.hero{
    font-family: Roboto, sans-serif;
    height: 660px;
    width: 100%;
    position: relative;
    isolation: isolate;
    min-height: clamp(520px, 70vh, 820px);
    color: var(--hero-text);
    display: grid;
    align-items: end;
    padding-block: clamp(48px, 8vh, 96px);
}

.hero__media{
    position:absolute;
    inset:0;
    z-index: 0;
    /*background-blend-mode: normal, luminosity, normal;*/
}

.hero__inner{
    /*width: var(--container);*/
    /*margin: 0 auto;*/
    /*padding-bottom: clamp(32px, 6vh, 64px);*/
    z-index: 1;
}

/* Badge */
.hero__badge{
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 6px 10px;
    /*background: rgba(255,255,255,.65);*/
    /*backdrop-filter: blur(4px);*/
    border-radius: 6px;
    margin-bottom: clamp(16px, 2vh, 24px);
}
.badge-flag{
    display:inline-grid;
    place-items:center;
    width: 18px; height: 18px;
    border-radius: 3px;
    overflow:hidden;
}
.badge-flag__icon{ display:block; }
.hero__badge-text{
    font-size: 16px;
    letter-spacing: .12em;
    font-weight: 400;
    color: #000;
    white-space: nowrap;
}

/* Title */
.hero__title{
    margin: 0 0 clamp(12px, 1.5vh, 16px);
    font-weight: 800;
    line-height: 88px;
    color: #000;
    letter-spacing: 0;
    text-transform: uppercase;
    font-size: 80px;
    max-width: 18ch;
    text-shadow: 0 1px 0 rgba(255,255,255,.12);
    z-index: 1;
}

.hero__subtitle{
    font-size: 24px;
    max-width: 60ch;
    color: #000;
}

/* Actions */
.hero__actions{
    display: flex;
    gap: 32px;
    flex-wrap: wrap;
}

/* Buttons */
.btn{
    font-family: Roboto, sans-serif;
    display: inline-flex;
    font-size: 18px;
    font-style: normal;
    font-weight: 700 !important;
    line-height: normal;
    text-transform: uppercase;
    height: 44px;
    padding: 8px 16px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    border-radius: unset !important;
}
.btn:focus{ outline: none; }
.btn:focus-visible{
    box-shadow: 0 0 0 3px rgba(255,255,255,.9), 0 0 0 6px rgba(18,37,74,.55);
}

/* Filled */
.btn--primary{
    background: #193661 !important;
    color: var(--hero-text-contrast) !important;
    border: 1px solid var(--hero-primary) !important;
}
.btn--primary:hover{ background: var(--hero-primary-hover) !important; transform: translateY(-1px); }
.btn--primary:active{ transform: translateY(0); }

.btn--outline{
    background: rgba(255,255,255,.84);
    color: #0b1431;
    border: 1px solid rgba(11,20,49,.15);
}
.btn--outline:hover{
    background: #fff;
    border-color: rgba(11,20,49,.35);
    transform: translateY(-1px);
}
.btn--outline:active{ transform: translateY(0); }

.banner.main-banner.top_banner {
    padding-top: 0;
}

/* Solutions block */

.solutions-v2{background:#fff;padding: 64px 0;}
.sv2__inner{max-width:1440px;margin:0 auto;padding:0 24px 64px 24px;}

.sv2__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px;}
.sv2__overline{display:inline-block;font:700 12px/1.2 system-ui, -apple-system, Segoe UI, Roboto; letter-spacing:.08em; text-transform:uppercase; color:#CB2128; margin-bottom:8px;}
.sv2__title{margin:0;font:700 48px/1.15 system-ui, -apple-system, Segoe UI, Roboto; color:#08090C; letter-spacing:.01em;}
.sv2__all{display:inline-block;background:#233156;color:#fff;text-decoration:none;font:700 18px/1 system-ui, -apple-system, Segoe UI, Roboto; padding:12px 18px;white-space:nowrap;
    transition: .36s;}
.sv2__all:hover {
    background: var(--hero-primary-hover) !important;
    transform: translateY(-1px);
}
.sv2__wrap{overflow:hidden;}
.sv2__track{
    display:grid;
    grid-auto-flow:column;
    grid-auto-columns: 150px;
    gap:20px;
    margin:16px 0 0;
    padding:0;
    list-style:none;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
}

.sv2__track{
    overflow-x: auto;
    -ms-overflow-style: none;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
}
.sv2__track::-webkit-scrollbar{
    width: 0;
    height: 0;
}
.sv2__item{scroll-snap-align:start;}
.sv2__card{position:relative;display:block;width:150px;height:150px;border-radius:2px;overflow:hidden;}
.sv2__card img{
    width:100%;height:100%;object-fit:cover;display:block;
}
.sv2__label{
    display: none;
    position:absolute;left:6px;bottom:6px;background:rgba(31,51,87,.92);color:#fff;
    padding:6px 8px;border-radius:2px;font:700 11px/1.1 system-ui, -apple-system, Segoe UI, Roboto; text-transform:uppercase; letter-spacing:.02em;
}

.sv2__controls{display:flex;align-items:center;justify-content:space-between;margin-top:14px;}
.sv2__dots{display:flex;gap:10px;}
.sv2__dot{
    width:8px;height:8px;border-radius:50%;background:#c6ccd9;opacity:.9;transition:opacity .2s ease, transform .2s ease;
}
.sv2__dot.is-active{background:#233156; opacity:1; transform:scale(1.05);}
.sv2__arrows{display:flex;gap:12px;}
a.sv2__arrow{
    width:36px;height:36px;background:#fff;
    color:#233156; font:700 16px/1 system-ui,-apple-system,Segoe UI,Roboto;
    display:grid; place-items:center; text-decoration:none; cursor:pointer;
    user-select:none;
}

#sv2__track{
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    scroll-padding-inline: 16px;
}
#sv2__track > *{ scroll-snap-align: start; }

.sv2__arrow:hover{ background:#f6f8fb; border-color:#cfd6e1; }
.sv2__arrow:active{ transform:scale(.98); }
.sv2__arrow:focus-visible{ outline:2px solid #233156; outline-offset:2px; }

@media (max-width: 900px){
    .sv2__title{font-size:36px}
    .sv2__track{grid-auto-columns:140px}
    .sv2__card{width:140px;height:104px}
}
@media (max-width: 600px){
    .sv2__head{flex-direction:column;align-items:flex-start}
    .sv2__track{grid-auto-columns:132px;gap:16px}
    .sv2__card{width:132px;height:96px}
}
@media (max-width: 720px){
    .hero{
        align-items: end;
    }
    .hero__media{
        background-position: 70% 40%;
    }
    .btn{
        width: 100%;
        justify-content: center;
        --padY: 16px;
    }
}

@media (max-width: 768px) {
    .hero__title {
        font-size: 32px;
        line-height: 40px;
        font-weight: 800;
    }

    .hero__subtitle {
        font-size: 16px;
        line-height: 20px;
        font-weight: 400;
        max-width: 290px;
    }

    .btn{
        font-size: 14px;
        line-height: 18px;
    }

    .hero__badge {
        padding: 0;
        margin-bottom: 10px;
        font-size: 14px;
        gap: 5px;
        align-items: start;
    }

    .hero__badge-text {
        font-size: 14px;
    }

    .hero__actions {
        gap: 16px;
    }
}

/* Personalized program */

.prog-split{background:#162949;color:#fff;}

.prog__form {
    max-width: 464px;
}
.prog__choice {
    min-width: 220px;
}

.prog__inner{max-width:1440px;margin:0 auto;padding:64px 24px;display:grid;gap:32px;grid-template-columns: 0.9fr 1.1fr;}
@media (max-width:980px){.prog__inner{grid-template-columns:1fr;gap:24px;padding:40px 20px}}
.prog__overline{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#c6cfeb;margin-bottom:6px}
.prog__title{margin:0 0 12px;font-size:36px;font-weight:500;}
@media (max-width:640px){.prog__title{font-size:30px}}
.prog__lead{margin:0 0 20px;font-size:18px;line-height:1.6;color:#d7deea;max-width:560px}
.prog__label{display:block;margin:14px 0 8px;font-size:13px;font-weight:600;color:#cbd4ee}
.prog__choices{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:18px;justify-content: space-between}
.prog__choice{
    background: transparent;
    color: #fff;
    border: 2px solid rgba(255,255,255,.35);
    border-radius: 4px;
    padding: 12px 42px;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition:
            background-color .22s ease,
            border-color     .22s ease,
            color            .22s ease;
}

.prog__choice:hover{
    border-color:#545454;
    background:#fff;
    color:#171A1B;
}

.prog__choice.is-active{border-color:#bdb79e;box-shadow:inset 0 0 0 1px rgba(189,183,158,.6)}
.prog__cta{display:inline-block;
    width: 100%;
    text-align: center;
    font-size: 18px;background:#B8B195;color:#fff !important;text-decoration:none;font-weight:700;padding:8px 16px;
    transition: background-color .22s ease,
    border-color     .22s ease,
    color            .22s ease;
}

.prog__cta:hover {
    background: #fff;
    border: 1px solid #B8B195;
    color: #1A3663 !important;
}

.prog__right{display:flex;justify-content:center}

.vscroll{
    width:100%;
    max-width:560px;
    height:clamp(320px, 48vh, 420px);
    position:relative;
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:y proximity;
    touch-action: pan-y;
    -ms-overflow-style:none;
    scrollbar-width:none;
    cursor: pointer;
}
.vscroll::-webkit-scrollbar{ width:0; height:0; }
.vscroll.is-drag, .vscroll.is-drag *{ user-select: none; }
.vscroll:active{ cursor: pointer; }
.vscroll__track{
    height: 100%;
    display:flex;
    flex-direction:column;
    gap:16px;
    min-height:100%;
}

.vcard{
    flex:0 0 80%;
    min-height:220px;
    position:relative;
    overflow:hidden;
    scroll-snap-align:start;
}
.vcard img{ width:100%; height:100%; display:block; object-fit: cover;position: relative;
    z-index: 0; }

.vcard::after{
    content:"";
    position:absolute; inset:0;
    background: linear-gradient(235deg, rgba(7, 38, 80, 0.00) 15.1%, rgba(7, 38, 80, 0.90) 91.95%);
    pointer-events:none;
    z-index: 1;
}

.vcard__overlay{
    position:absolute; inset:0;
    display:flex; flex-direction:column;
    justify-content: space-between;
    padding:24px;
    color:#fff;
    z-index: 2;
}
.vcard__head{ margin-bottom:8px; }
.vcard__icon{ width:40px; height:auto; margin-bottom:12px; opacity:.95; }
.vcard__title{
    margin:0;
    font-weight:600;
    text-transform:uppercase;
    font-size:20px;
    max-width: 100px;
}
.vcard__text{
    margin-top:auto;
    max-width:min(520px, 78%);
    font-size:16px;
    color:#e9eef6;
    font-weight: 300;
}

.vcard__text{margin:0;color:#d8dfec;font-size:14px;line-height:1.5;max-width:360px}

/* Logo block */

.logo-strip{
    background:#ffffff;
    padding:64px 0;
}
.logo-strip__inner{
    max-width:1440px;
    margin:0 auto;
    padding:0 24px 64px 24px;
}
.logo-strip__list{
    display:flex;
    align-items:center;
    gap:120px;
    list-style:none;
    margin:0;
    padding:0;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    cursor:grab;
    touch-action:pan-x;
    scrollbar-width:none;
    -ms-overflow-style:none;
}
.logo-strip__item{
    flex:0 0 auto;
    scroll-snap-align:start;
}
.logo-strip__logo{
    height:54px;
    width:auto;
    display:block;
    opacity:1;
    filter:grayscale(100%) contrast(0.9);
    transition:opacity .2s ease, filter .2s ease, transform .04s ease;
}
/*.logo-strip__logo:hover{*/
/*    opacity:1;*/
/*    filter:none;*/
/*    transform:translateY(-1px);*/
/*}*/

@media (max-width:1024px){
    .logo-strip__list{ gap:90px; }
    .logo-strip__logo{ height:48px; }
}
@media (max-width:768px){
    .logo-strip{ padding:22px 0; }
    .logo-strip__list{ gap:60px; }
    .logo-strip__logo{ height:40px; }
}
@media (max-width:480px){
    .logo-strip__list{ gap:40px; }
    .logo-strip__logo{ height:34px; }
}

.pdp{background:#ffffff;}
.pdp__inner{
    max-width:1440px; margin:0 auto; padding:0 24px 64px 24px;
    display:grid; grid-template-columns: 1.1fr 0.9fr; gap:32px;
}
@media (max-width: 980px){
    .pdp__inner{grid-template-columns: 1fr; gap:20px; padding:16px;}
}

.pdp__figure{margin:0; overflow:hidden; background:#f3f5f9;}
.pdp__image{width:100%; height:auto; display:block; object-fit:cover;}

.pdp__overline{
    display:inline-block; text-transform:uppercase; letter-spacing:.08em;
    color:#CB2128; font-weight:700; font-size:12px; margin-bottom:8px;
}
.pdp__title{
    margin:0 0 10px; font-size:36px; line-height:1.2; font-weight:800; color:#203055;
}
.pdp__subtitle{
    margin:0 0 16px; font-size:16px; line-height:1.6; color:#657096; max-width:560px;
}

.pdp__badges{display:flex; flex-wrap:wrap; gap:8px; margin:0 0 14px; padding:0; list-style:none;}
.pdp__badge{
    display:inline-flex; align-items:center; gap:6px;
    padding:6px 10px; border:1px solid #dfe4ee; border-radius:8px;
    font-size:12px; color:#556086; background:#f6f8fc; font-weight:600;
}

.pdp__rating{display:flex; align-items:center; gap:10px; margin-bottom:16px;}
.pdp__stars{display:inline-flex; gap:4px;}
.pdp__reviews{font-size:13px; color:#8b95ad}

.product__main-body_content {
    padding-top: 16px;
}

.card-product-order__icons-block {
    display: flex;
    flex-direction: column;
    font-size: 10px;
    justify-content: center;
    text-align: center;
}

.pdp__buy{display:grid; grid-template-columns: 1fr auto; gap:14px; align-items:center; margin:6px 0 18px;}
.pdp__pricewrap{display:flex; align-items:center; gap:8px;}
.pdp__price{font-size:22px; font-weight:800; color:#223158;}
.pdp__infoicon{
    position:relative; width:18px; height:18px; border-radius:50%;
    display:grid; place-items:center; font-weight:700; font-size:11px; color:#223158;
    border:1px solid #cfd5e3; cursor:default;
}
.pdp__tooltip{
    position:absolute; left:50%; bottom:125%; transform:translateX(-50%); white-space:nowrap;
    background:#1f2b4a; color:#fff; padding:6px 8px; border-radius:4px; font-size:12px;
    opacity:0; pointer-events:none; transition:opacity .15s ease; box-shadow:0 6px 18px rgba(12,22,44,.15);
}
.pdp__infoicon:hover .pdp__tooltip,
.pdp__infoicon:focus .pdp__tooltip{opacity:1}

.pdp__qty{display:inline-flex; align-items:center; border:1px solid #e1e6ef; border-radius:6px; overflow:hidden;}
.pdp__qtybtn{
    width:40px; height:40px; background:#f8fafc; border:0; color:#4b5575; font-size:18px; cursor:pointer;
}
.pdp__qtybtn:active{transform:scale(.98)}
.pdp__qtyinput{
    width:52px; height:40px; border:0; text-align:center; font-weight:700; color:#223158;
    -moz-appearance:textfield;
}
.pdp__qtyinput::-webkit-outer-spin-button,
.pdp__qtyinput::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }

.pdp__cart{
    font-size: 18px;
    grid-column: 1 / -1;
    height:46px; border:0; cursor:pointer;
    background:#2a3353; color:#fff; font-weight:700; letter-spacing:.02em;
    transition:opacity .18s ease, transform .04s ease;
}
.pdp__cart:hover{opacity:.93}
.pdp__cart:active{transform:translateY(1px)}

/*.pdp__thumbs{*/
/*    display:flex; gap:18px; list-style:none; padding:8px 0 0; margin:10px 0 0;*/
/*}*/
/*.pdp__thumb{*/
/*    width:84px; height:84px; border:2px solid transparent; border-radius:50%;*/
/*    padding:0; background:transparent; cursor:pointer; position:relative;*/
/*    display:grid; place-items:center; transition:transform .06s ease, box-shadow .2s ease, border-color .2s ease;*/
/*}*/
/*.pdp__thumb img{*/
/*    width:78px; height:78px; border-radius:50%; object-fit:cover; display:block;*/
/*}*/
/*.pdp__thumb:hover{transform:translateY(-1px)}*/
/*.pdp__thumb.is-active{*/
/*    border-color:#d94a41;*/
/*    box-shadow:0 0 0 6px rgba(217,74,65,.25);*/
/*}*/

@media (max-width: 640px){
    .pdp__title{font-size:28px}
    .pdp__thumb{width:70px;height:70px}
    .pdp__thumb img{width:64px;height:64px}
}

/*  Review section  */
.sab-v2{background:#fff;}
.sabv2__inner{max-width:1440px; margin:0 auto; padding:0 24px 64px 24px;}

.sabv2__head{display:grid; grid-template-columns:1fr auto; gap:24px; align-items:end; margin-bottom:18px;}
.sabv2__overline{
    display:inline-block; margin-bottom:10px; font-size:12px; font-weight:700;
    letter-spacing:.08em; text-transform:uppercase; color:#CB2128;
}
.sabv2__title{
    margin:0; font-size:44px; font-weight:700; color:#1f3357;
}
.sabv2__desc{margin:0; max-width:620px; color:#38445d; opacity:.9; font-size:16px; line-height:1.7;}
.sabv2__cta{
    display:inline-block; background:#233156; color:#fff; text-decoration:none;
    padding:12px 18px; font-weight:700; font-size:18px; height:max-content;
    transition: .36s;
}

.sabv2__cta:hover {
    background: var(--hero-primary-hover) !important;
    transform: translateY(-1px);
}
.sabv2__grid{
    list-style:none; margin:28px 0 0; padding:0;
    display:grid; grid-template-columns:repeat(4, 1fr); gap:24px;
    align-items:start; text-align:center;
}

.sabv2-card{display:flex; flex-direction:column; align-items:center; gap:10px;}
.sabv2-card__photo{
    width:180px; height:180px; border-radius:50%;
    border:2px solid #cbbf9b; display:grid; place-items:center;
    background:#fff;
}
.sabv2-card__photo img{
    width:172px; height:172px; border-radius:50%; object-fit:cover; display:block;
}
.sabv2-card__name{
    display:flex; align-items:center; justify-content:center; gap:8px;
    color:#1f3357; font-weight:800; font-size:16px; letter-spacing:.01em;
}
.sabv2-card__role{margin:0; color:#5a678c; font-size:14px; line-height:1.55; max-width:280px;}

@media (max-width:1100px){
    .sabv2__title{font-size:24px}
    .sabv2__grid{grid-template-columns:repeat(2, 1fr);}
}
@media (max-width:640px){
    .sabv2__head{grid-template-columns:1fr; gap:12px}
    .sabv2__cta{order:3}
    .sabv2__grid{grid-template-columns:1fr;}
    .sabv2-card__photo{width:160px; height:160px}
    .sabv2-card__photo img{width:160px; height:160px}
}

/* Insights Banner  */
.insights-hero{
    position: relative;
    min-height: clamp(420px, 70vh, 720px);
    color: #fff;
    overflow: hidden;
}

.insights-hero::before{
    content: "";
    position: absolute;
    inset: 0;
    background:
            linear-gradient(90deg, rgba(15,28,58,0.85) 0%,
            rgba(15,28,58,0.65) 28%,
            rgba(15,28,58,0.25) 55%,
            rgba(15,28,58,0.00) 85%);
    pointer-events: none;
}

.insights-hero__inner{
    position: relative;
    max-width: 1440px;
    margin: 0 auto;
    padding:0 24px 64px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    min-height: inherit;
    justify-content: flex-end;
}

.insights-hero__overline{
    display: inline-block;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #cfd6ea;
}

.insights-hero__title{
    margin: 0;
    max-width: 760px;
    font-size: clamp(28px, 4.2vw, 48px);
    line-height: 1.15;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
    text-wrap: balance;
}

.insights-hero__btn{
    display: inline-block;
    width: fit-content;
    margin-top: 8px;
    background: #B8B195;
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    font-size: 18px;
    letter-spacing: .02em;
    padding: 12px 18px;
    transition: opacity .2s ease, transform .04s ease;
}
.insights-hero__btn:hover{ opacity: .92; }
.insights-hero__btn:active{ transform: translateY(1px); }

@media (max-width: 640px){
    .insights-hero__inner{ padding: 36px 16px; }
    .insights-hero__title{ max-width: 520px; }
}

/*  Community  */
.community{
    background:#fff;
    margin-top: 64px;
}
.community__inner{max-width:1440px;margin:0 auto;padding:0 24px 64px 24px;}

.community__top{
    display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:18px;
}
.community__overline{
    display:inline-block;margin-bottom:8px;font-size:12px;font-weight:700;
    letter-spacing:.08em;text-transform:uppercase;color:#CB2128;
}
.community__title{
    margin:0 0 6px;font-size:44px;line-height:1.15;font-weight:900;color:#1f3357;
    letter-spacing:.01em;text-wrap:balance;
}

.community__actions{display:flex;align-items:center;gap:12px}
.community__arrows{display:flex;gap:8px}
.community__arrow{
    width:38px;height:38px;border:1px solid #e0e6f0;border-radius:8px;background:#fff;cursor:pointer;
    display:grid;place-items:center;transition:background .2s ease,border-color .2s ease,transform .04s ease;
}
.community__arrow:hover{background:#f6f8fb;border-color:#cfd6e1}
.community__arrow:active{transform:scale(.98)}
.community__join{
    font-size: 18px;
    display:inline-block;background:#253154;color:#fff;text-decoration:none;font-weight:700;
    padding:10px 16px;letter-spacing:.02em;
    transition: .36s;
}

.community__join:hover{
    background: var(--hero-primary-hover) !important;
    transform: translateY(-1px);
}

.community__scroller{overflow:hidden}
.community__list{
    list-style:none;margin:12px 0 0;padding:0;
    display:flex;gap:22px;overflow-x:auto;-webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
}
.post{flex:0 0 auto;scroll-snap-align:start}

.post__card{
    background:#fff;
    overflow:hidden;
    width:360px;
}
.post__media img{
    width:100%;height:480px;object-fit:cover;display:block;
}
.post__foot{
    display:flex;align-items:center;gap:10px;padding:12px 14px;background:#fff;
    border-top:1px solid #e9eef6;
}
.post__avatar{
    width:28px;height:28px;border-radius:50%;object-fit:cover;display:block;
    box-shadow:0 0 0 2px #fff, 0 0 0 3px #e5eaf3;
}
.post__user{font-weight:700;font-size:14px;color:#263a63}

.community__list{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
    overflow: visible;
}

.post{ flex: 0 0 auto; }
.post__card{ width: 100%; }

.post__media{
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 9 / 16;
    overflow: hidden;
    background: #000;
    border-radius: 6px;
}

.post__media > img,
.post__media > video{
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.post__foot{
    display:flex; align-items:center; gap:10px;
    padding:12px 14px; border-top:1px solid #e9eef6; background:#fff;
}
.post__foot img{ width:28px; height:28px; border-radius:50%; object-fit:cover; }

.reel{
    position: relative;
    width: min(100%, 420px);
    aspect-ratio: 9 / 16;
    border-radius: 8px;
    overflow: hidden;
    background:#000;
}

.reel__video{
    position:absolute; inset:0;
    width:100%; height:100%;
    object-fit:cover;
    display:block;
}

.reel__btn{
    position:absolute; right:12px; bottom:12px;
    width:44px; height:44px;
    border: 0;
    border-radius: 50%; cursor:pointer;
    display:grid; place-items:center;
    background: #D9D9D9;
    color:#08090C;
    transition:background-color .2s ease, transform 60ms ease;
}
.reel__btn:hover{ background:#DEE8F8; }
.reel__btn:active{ transform:translateY(1px) scale(.98); }
.reel__btn:focus-visible{ outline:2px solid #fff; outline-offset:2px; }

.ic{ width:22px; height:22px; fill:currentColor; }
.ic--play{ display:none; }

.reel[data-state="paused"] .ic--pause{ display:none; }
.reel[data-state="paused"] .ic--play { display:block; }

@media (max-width:1100px){ .community__list{ grid-template-columns: repeat(3, 1fr); } }
@media (max-width:760px){  .community__list{ grid-template-columns: repeat(2, 1fr); } }
@media (max-width:480px){  .community__list{ grid-template-columns: 1fr; } }

@media (max-width: 1024px){
    .community__title{font-size:36px}
    .post__card{width:320px}
    .post__media img{height:420px}
    .sabv2__grid {
        gap: 8px;
    }

    .product__main-body_content {
        font-size: 18px;
    }
}
@media (max-width: 720px){
    .community__top{grid-template-columns:1fr;gap:10px}
    .community__actions{justify-content:flex-start}
    .post__card{width:280px}
    .post__media img{height:380px}
}

/*  Badges block  */
.icons-strip{background:#fff; padding:64px 0;}
.icons-strip__inner{max-width:1440px;margin:0 auto;}

.hscroll{
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
}

.hscroll > *{ scroll-snap-align: center; }
.hscroll::-webkit-scrollbar{ height:0 }
.hscroll.is-drag{ cursor:grabbing; user-select:none }

.hscroll img{ -webkit-user-drag:none; user-select:none }

.icons-strip__list{
    display:grid;
    grid-template-columns: repeat(8, minmax(120px, 1fr));
    gap:50px 70px;
    list-style:none; margin:0; padding:0;
    align-items:start;
    justify-items:center;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    cursor:grab;
    touch-action:pan-x;
    scrollbar-width:none;
    -ms-overflow-style:none;
}

.icons-item{ text-align:center; }
/*.icons-item__icon{*/
/*    position:relative;*/
/*    width:74px; height:74px;*/
/*    border-radius:50%;*/
/*    display:grid; place-items:center;*/
/*    margin:0 auto 8px;*/
/*    color:#1f3357;*/
/*    border:1px solid #cbbf9b;*/
/*    background:#fff;*/
/*    box-shadow:0 1px 0 rgba(0,0,0,.02);*/
/*}*/
/*.icons-item__icon::after{*/
/*    content:"";*/
/*    position:absolute; inset:-2px;*/
/*    border-radius:50%;*/
/*    background:conic-gradient(#c1b389 0 28deg, transparent 28deg 360deg);*/
/*    -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 0);*/
/*    mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 0);*/
/*    pointer-events:none;*/
/*}*/

.icon{ display:block; color:#20365f; }

.icons-item__label{
    font-size:12px; line-height:1.4; color:#334266; max-width:110px; margin:0 auto;
}

/*@media (max-width: 1200px){ section.icons-strip .icons-strip__list{ grid-template-columns: repeat(6, minmax(110px,1fr)); } }*/
/*@media (max-width: 900px){  section.icons-strip .icons-strip__list{ grid-template-columns: repeat(4, minmax(110px,1fr)); } }*/
/*@media (max-width: 600px){  section.icons-strip .icons-strip__list{ grid-template-columns: repeat(3, minmax(90px,1fr)); } }*/
/*@media (max-width: 420px){  section.icons-strip .icons-strip__list{ grid-template-columns: repeat(2, minmax(90px,1fr)); } }*/

/* News section */
.press-split{background:#fff;}
.press-split__inner{max-width:1440px;margin:0 auto;padding:0 24px 64px 24px;}
.press-split__overline{
    display:inline-block;margin-bottom:8px;font-size:12px;font-weight:700;
    letter-spacing:.08em;text-transform:uppercase;color:#CB2128;
}
.press-split__title{
    margin:0 0 14px;font-size:48px;font-weight:700;color:#1f3357;
}

.press-split__grid{
    display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;
}

.press-feature{position:relative;}
.press-feature__link{display:block;color:inherit;text-decoration:none;border-radius:2px;overflow:hidden;background:#f2f4f8;}
.press-feature__figure{margin:0;aspect-ratio: 16/15;overflow:hidden;}
.press-feature__figure img{width:100%;height:100%;object-fit:cover;display:block;}
.press-feature__overlay{
    position:relative;margin-top:-180px;
    padding:18px 18px 18px; color:#fff;
    background: linear-gradient(180deg, rgba(8,16,34,0) 0%, rgba(8,16,34,.65) 38%, rgba(8,16,34,.85) 100%);
}
@media (max-width: 900px){ .press-feature__overlay{ margin-top:-100px; } }

.press-feature__headline{
    margin:0 0 8px;font-size:18px;line-height:1.35;font-weight:800;text-transform:uppercase;letter-spacing:.01em;
}
.press-feature__excerpt{margin:0 0 10px;font-size:14px;line-height:1.6;opacity:.95;max-width:900px;}
.press-feature__bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.press-feature__logos img{height:18px;width:auto;margin-right:12px;opacity:.9}
.press-feature__more{font-size:12px;font-weight:800;letter-spacing:.02em;text-transform:uppercase}

.press-side{list-style:none;margin:0;padding:0;display:grid;gap:18px;}
.press-side__item{background:#fff;border-radius:2px;}
.press-side__link{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;color:inherit;text-decoration:none;}
.press-side__media{
    /*aspect-ratio: 16/9;*/
    overflow:hidden;border-radius:2px;background:#f2f4f8;}
.press-side__media img{width:100%;height:100%;object-fit:cover;display:block;}
.press-side__content{padding-top:2px;}
.press-side__headline{
    margin:0 0 6px;font-size:18px;font-weight:700;text-transform:uppercase;color:#27406b;
}
.press-side__excerpt{margin:0 0 8px;font-size:18px;color:#5b6889;font-weight: 300;
    line-height: 150%;}
.press-side__meta{display:flex;align-items:center;justify-content:flex-end;}
.press-side__logo{height:40px;width:auto;}
.press-side__more{font-size:16px;font-weight:700;text-transform:uppercase;color:#27406b}

.press-feature__link:hover .press-feature__headline,
.press-side__link:hover .press-side__headline{ text-decoration:underline; }

@media (max-width: 1100px){
    .press-split__title{font-size:36px}
}
@media (max-width: 880px){
    .press-split__grid{grid-template-columns:1fr;gap:20px;}
    .press-side__link{grid-template-columns:140px 1fr;}
}
@media (max-width: 560px){
    .press-side__link{grid-template-columns:1fr;gap:10px;}
    .press-side__media{
        /*aspect-ratio: 16/9;*/
    }
}

.wcps{ background:#fff; }
.wcps-swiper{ --pad:24px; padding: var(--pad); }
.wcps-grid{ display:grid; grid-template-columns: 1.05fr 1fr; gap:28px; align-items:start; }
.wcps-media{ border:1px solid #e8e8e8; overflow:hidden;}
.wcps-img{ width:100%; height:100%; object-fit:cover; display:block; }
.wcps-title{ margin:0 0 6px; font-size:32px; line-height:1.15; font-weight:800; color:#263a63; }
.wcps-rating{ display:flex; align-items:center; gap:10px; margin:6px 0 14px; }
.wcps-reviews{ color:#7b87a6; font-size:14px; }
.wcps-lead{ color:#223; opacity:.85; margin:6px 0 12px; }
.wcps-bullets{ list-style:none; padding:0; margin:0 0 10px; display:grid; gap:8px; }
.wcps-bullets li{ display:flex; align-items:flex-start; gap:10px; color:#2a3557; }
.wcps-bullet-ico{ width:18px; height:18px; background:#d9d2b3; color:#fff; border-radius:50%; display:inline-grid; place-items:center; font-weight:800; font-size:12px; line-height:1; }
.wcps-more a{
    font-size: 18px;font-weight:700; color:#193661; text-decoration:none; }
.wcps-more a:hover{ text-decoration:underline; }
.wcps-buy{ display:flex; align-items:center; gap:16px; margin-top:18px; flex-wrap:wrap; }
.wcps-price{ font-size:22px; font-weight:800; color:#233156; min-width:80px; }
.wcps-qty{ display:flex; align-items:center; border:1px solid #d9dfea; border-radius:4px; overflow:hidden; }
.wcps-qty__btn{ width:36px; height:44px; border:0; background:#fff; font-size:20px; line-height:1; cursor:pointer; }
.wcps-qty__input{ width:48px; height:38px; border:0; text-align:center; outline:none; font-weight:700;
    padding-left: 15px;
    font-size: 20px;
}
.wcps-add{
    font-size: 18px;background:#2D3654; color:#fff; padding:12px 18px;height: 44px;text-decoration:none; font-weight:700; }
.wcps-add:hover{ opacity:.92; }
.wcps-bottom{ display:flex; width: 50%;float: right; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; }
.wcps-pagination{ position:static !important; }
.wcps-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
}

.wcps .review-overall-rating .review-stars {
    padding-left: 0;
}

.wcps .product__main-row {
    margin: 16px 0;
}
.wcps .accordion-flat__head {
    padding-left: 0;
}

.wcps .accordion-flat__head::before {
    display: none;
}

.wcps .product__main-row .accordion-flat__row {
    margin-bottom: 16px;
}

.accordion-head-wrapper {
    display: flex;
    flex-direction: row;
    gap: 8px;
}

@media (max-width: 1024px) {
    .wcps .wcps-media {
        width: auto;
    }
}

@media (max-width: 980px){
    .wcps-grid{ grid-template-columns:1fr; }
    .wcps-title{ font-size:26px; }
}

.wcps-bottom{ display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:22px; }

.wcps-pagination{ position:static !important; display:flex; align-items:center; gap:10px; }
.wcps-pagination .swiper-pagination-bullet{
    width:10px; height:10px; border-radius:50%;
    background:#cfd3df; opacity:1; margin:0; padding:0; border:0;
}
.wcps-pagination .swiper-pagination-bullet > span{ display:none; } /* внутренний спан не обязателен – оставили на будущее */

.wcps-pagination .swiper-pagination-bullet-active{
    width:38px; height:10px; border-radius:999px; background:#596487;
}

.wcps-prev,.wcps-next{
    width:48px; height:48px; background:#fff; border-radius:8px; cursor:pointer; font-size:20px;display: inline-grid;
}

.wcps{ max-width: 1280px; margin: 0 auto; }

.wcps-media{
    position: relative;
    width: clamp(260px, 90vmin, 520px);
    aspect-ratio: 1 / 1;
    height: auto;
    max-width: 100%;
    border: 1px solid #e8e8e8;
    border-radius: 4px;
    overflow: hidden;
    background: #f6f8fa;
}

.wcps-media .wcps-img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
    display: block;
}

.wcps-prev, .wcps-next {
    justify-content: center;
    align-items: center;
}

.sabv2-card__photo, .sabv2-card__role {
    justify-self: center;
}

.added_to_cart.wc-forward {
    display: none;
}

.sabv2-card__desc {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    padding: 24px 32px;
    gap: 8px;
}

/*.sabv2__inner .wcps-nav, .community .wcps-nav {*/
/*    display: none;*/
/*}*/

@media (max-width: 1300px) {
    .wcps-bottom {
        float: left;
        /*width: 100%;*/
    }
}

@media (min-width: 769px){
    .js-mobile-slider:not(.is-enabled) .swiper-wrapper{
        display:grid;
        grid-template-columns:repeat(4, 1fr);
        gap:24px;
    }
    .js-mobile-slider:not(.is-enabled) .swiper-slide{ width:auto !important; }
    .js-mobile-slider .swiper-pagination{ display:none; }
    .sabv2__inner .wcps-nav, .community .wcps-nav {
        display: none;
    }
}

@media (max-width: 768px){
    .js-mobile-slider{ overflow:hidden; width:100%; max-width:100%; }
    .js-mobile-slider .swiper-wrapper{ height:auto; }
    .js-mobile-slider .swiper-slide{
        height:auto;
        aspect-ratio: 16 / 9;
    }
    .js-mobile-slider .swiper-slide .post__media img{
        display:block; width:100%; height:100%; object-fit:cover;
    }
    .js-mobile-slider .swiper-wrapper{ -ms-overflow-style:none; scrollbar-width:none; }
    .js-mobile-slider .swiper-wrapper::-webkit-scrollbar{ width:0; height:0; }

    .sabv2__grid, .community__list {
        gap: 0;
    }

    .product__main-row {
        display: none;
    }
}

/* ====== Footer ====== */
.site-footer{ background:#072650; color:#fff; }
.site-footer { overflow-wrap: anywhere; word-break: break-word; }
.site-footer img,
.site-footer input,
.site-footer button,
.site-footer .footer__formrow,
.site-footer .footer__newsletter { max-width: 100%; }
.footer__inner{
    max-width:1440px; margin:0 auto; padding:64px 24px 24px;
    display:grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap:28px;
}

.footer__inner > * { min-width: 0; }

.footer__overline{
    display:inline-block; font-size:20px; font-weight:700; letter-spacing:.08em;
    text-transform:uppercase; color:#F5F5DC; margin-bottom:10px;
}
.footer__title{ margin:0 0 6px; font-weight:900; font-size:36px; line-height:1.2; letter-spacing:.01em; }
.footer__text{ margin:0 0 12px; color:#c8d1e3;
    font-size: 16px; }

.footer__label{ display:block; font-size:11px; color:#aebad4; margin-bottom:6px; }
.footer__formrow{ display:flex; gap:12px; align-items:center; }
.footer__input{
    flex:1 1 auto; height:44px; padding:0 12px; border-radius:6px; border:1px solid #dfe5f2; color:#1c2740;
    font-size: 16px;
}
.footer__btn{
    height:44px; padding:0 16px; border:0; cursor:pointer;
    font-size: 18px;
    background:#B8B195; color:#fff; font-weight:700; letter-spacing:.02em;
}
.footer__btn:hover{ opacity:.92; }

.footer__address{ margin-top:96px; }
.footer__addr-title{ margin:0 0 8px; font-size:20px; color:#F5F5DC; }
.footer__addr{ margin:0; display:flex; align-items:flex-start; gap:8px; color:#e7ecf6;
    font-size: 20px;
    font-weight: 400;
    min-width: 456px;
}

.footer__cols{ display:contents; }
.footer__col-title{ margin:0 0 10px; font-size:20px; font-weight:700; color:#F5F5DC; }
.footer__links{ list-style:none; margin:0; padding:0; display:grid; gap:8px; }
.footer__links a{ color:#fff; text-decoration:none;
    font-size: 20px;
    font-weight: 400; }
.footer__links a:hover{ text-decoration:underline; }
.footer__links svg{ margin-right:8px; vertical-align:-3px; position: relative; top: 2px;}

.site-footer .footer__bottom{
    max-width:1440px; margin:16px auto 0; padding:18px 24px 64px;
    border-top:1px solid rgba(255,255,255,.25);
    display:flex; align-items:flex-end; justify-content:space-between; gap:20px;
    background: #072650;
}
.footer__inner .footer__logo{ height:56px; width:auto; display:block; }
.footer__payments{ text-align:right; }
.footer__payments img{ height:20px; width:auto; margin-left:10px; vertical-align:middle; }
.footer__copy{ margin-top:8px; font-size:12px; color:#c8d1e3; }

@media (max-width: 980px){
    .footer__inner{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px){
    .footer__inner{ grid-template-columns: 1fr; gap:22px; }
    .footer__formrow{ flex-direction:column; align-items:stretch; }
    .footer__btn{ width:100%; }
    .footer__bottom{ flex-direction:column; align-items:flex-start; gap:12px; }
    .footer__payments{ text-align:left; }
}

.footer__inner{
    display:grid;
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    column-gap: 150px;
    row-gap: 32px;
}

.footer__cols{
    display:grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    column-gap: 28px;
    row-gap: 32px;
}

.footer__inner > *{ min-width:0; }

@media (max-width: 980px){
    .footer__inner{
        grid-template-columns: 1fr;
        column-gap: 0;
    }
    .footer__cols{ grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 640px){
    .footer__cols{ grid-template-columns: 1fr; }
}

@supports not (aspect-ratio: 1 / 1) {
    .wcps-media::before{
        content:"";
        display:block;
        padding-top:56.25%;
    }
    .wcps-media{ height:auto; }
    .wcps-media .wcps-img{
        position:absolute; inset:0;
        width:100%; height:100%; object-fit:cover;
    }
}

/*.wcps, .wcps .wcps-swiper { width:100%; max-width:100%; }*/

@media (max-width: 1024px){
    .wcps .wcps-swiper .swiper-wrapper > .swiper-slide{
        width:100% !important;
        flex: 0 0 100% !important;
    }

    .wcps-bottom {
        width: 100%;
    }

    .community__list {
        gap: 0;
    }

    .prog__choices {
        flex-wrap: nowrap;
    }

    .vscroll {
        height: 330px;
    }

    .footer__inner {
        column-gap: 70px;
    }

    .pdp__inner .wcps-bottom {
        padding: 16px;
    }
}

@media (max-width: 980px) {
    .prog__right {
        justify-content: flex-start;
    }
}

@media (max-width: 768px){
    .wcps .wcps-swiper{
        width:100vw !important;
        max-width:100vw !important;
        margin-left:calc(50% - 50vw);
        margin-right:calc(50% - 50vw);
        overflow:hidden;
    }
    .wcps .wcps-swiper .swiper-wrapper > .swiper-slide{
        width:100vw !important;
        flex:0 0 100vw !important;
    }
    .wcps .swiper-slide img,
    .wcps .swiper-slide iframe,
    .wcps .swiper-slide .slide-inner{
        max-width:100% !important;
        width:100% !important;
        height:auto;
    }

    .wcps-info {
        padding: 16px;
    }
    .site-footer {
        margin-bottom: 73px;
    }
}


@media (max-width: 420px){
    .wcps .wcps-swiper{ padding-left:0; padding-right:0; }
}

@media (max-width: 480px){
    .wcps-media{ height: clamp(200px, 40vh, 380px); }
}

@media (max-width: 500px) {
    .hero {
        padding-bottom: 72px;
    }

    .hero .container--padding-medium {
        padding-left: 16px;
        padding-right: 16px;
    }

    .hero .btn {
        font-size: 14px;
    }

    .hero__actions {
        flex-direction: row;
        gap: 8px;
    }

    .hero__actions a {
        max-width: 48%;
        padding: 8px 16px;
    }

    .solutions-v2 {
        padding: 32px 0;
    }

    .sv2__title {
        font-size: 24px;
    }

    .sv2__all {
        font-size: 18px;
    }

    .sv2__inner {
        padding: 0 16px;
    }

    .prog__overline {
        font-weight: 400;
    }

    .prog__title {
        font-size: 22px;
    }

    .prog__lead {
        font-size: 14px;
    }

    .prog__label {
        font-size: 14px;
    }

    .prog__choices {
        flex-direction: row;
        gap: 8px;
    }

    .prog__choice {
        max-width: 48%;
        width: 48%;
        min-width: unset;
        font-size: 14px;
        padding: 12px 14px;
    }

    .prog__inner {
        padding: 16px;
    }

    .vcard {
        margin-bottom: 10px;
    }

    .vscroll__track {
        display: block;
    }

    .vscroll {
        height: unset;
        height: 100%;
    }

    section.icons-strip .icons-strip__list {
        gap: 24px;
    }

    .pdp__inner {
        padding: 0;
        padding-bottom: 16px;
    }

    .wcps-info {
        padding: 16px;
        display: grid;
    }

    .wcps-add {
        width: 100%;
        text-align: center;
    }

    .wcps-bottom {
        padding: 24px 16px 32px;
        float: none;
        width: 100%;
        margin: 0;
    }

    .wcps-prev, .wcps-next {
        justify-content: center;
        align-items: center;
    }

    .wcps-more {
        order: 4;
        text-align: center;
        font-size: 18px;
        display: none;
    }

    .sabv2__title {
        font-size: 24px;
    }

    .sabv2__cta {
        text-align: center;
        max-width: 50%;
    }

    .insights-hero {
        min-height: 50vh;
    }

    .insights-hero__inner {
        justify-content: center;
    }

    .insights-hero__overline {
        font-weight: 400;
    }

    .insights-hero__title {
        font-size: 24px;
    }

    .community {
        margin-top: 32px;
    }

    .community__title {
        font-size: 24px;
    }

    .post__card {
        width: 100%;
    }

    .community__inner {
        padding: 0 16px 52px 16px;
    }

    .press-split__title {
        font-size: 24px;
    }

    .sabv2-card__photo {
        border: none;
        border-radius: unset;
    }
    .sabv2-card__photo img {
        border-radius: unset;
    }

    .sabv2-card__desc {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        max-width: 300px;
        margin: 0 auto;
        padding: 24px;
        background: #DEE8F8;
    }

    .sabv2__inner .wcps-nav, .community .wcps-nav {
        display: grid;
    }

    .footer__addr {
        min-width: unset;
        font-size: 14px;
    }

    .footer__address {
        margin-top: 64px;
    }

    .footer__inner {
        padding-left: 16px;
        padding-right: 16px;
    }

    .footer__links {
        grid-template-columns: 1fr 1fr;
        font-size: 14px;
        gap: 25px;
    }

    .footer__col-title {
        margin-bottom: 32px;
    }

    .site-footer .footer__bottom {
        padding-bottom: 32px;
        align-items: flex-start;
    }

    .wcps .wcps-media {
        width: clamp(260px, 100vmin, 520px);
    }

    .reel {
        width: auto;
    }

    .footer__title {
        font-size: 22px;
        margin-bottom: 16px;
    }

    .footer__text {
        margin-bottom: 16px;
    }

    .wcps-buy {
        justify-content: space-between;
    }

    .wcps-qty__input {
        padding-left: 0;
    }
}