/*
Theme Name: Legal Landing
Author: Custom
Version: 1.0
*/


/* =========================
   RESET
========================= */

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;

    color: #002347;
    background: #ffffff;

    font-family: "Open Sans", Arial, sans-serif;
}

img {
    max-width: 100%;
    height: auto;
}

a {
    text-decoration: none;
}


/* =========================================================
   HEADER
========================================================= */

.site-header {
    position: sticky;
    top: 0;
    z-index: 9999;

    width: 100%;

    font-family: "Open Sans", Arial, sans-serif;
}


/* =========================================================
   WORDPRESS ADMIN BAR
========================================================= */

body.admin-bar .site-header {
    top: 32px;
}


/* =========================================================
   DESKTOP TOP HEADER
========================================================= */

.site-header__desktop-top {
    width: 100%;
    height: 99px;

    background: #314263;
}


.site-header__desktop-inner {
    width: 100%;
    max-width: 1440px;
    height: 99px;

    margin: 0 auto;
    padding: 0 145px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    box-sizing: border-box;
}


/* =========================================================
   LOGO
========================================================= */

.site-logo {
    display: flex;
    align-items: center;

    flex-shrink: 0;

    text-decoration: none;
}


.site-logo--desktop {
    width: 238px;
    height: 80px;
}


.site-logo--desktop img {
    width: 238px;
    height: 80px;

    display: block;

    object-fit: contain;
    object-position: left center;
}


/* =========================================================
   DESKTOP CONTACT
========================================================= */

.header-contact {
    min-width: 290px;

    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;

    color: #ffffff;
    text-align: right;
}


.header-contact__title,
.header-contact__language {
    margin: 0;

    color: #ffffff;

    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 26px;
}


.header-contact__phone {
    margin: 0;

    color: #ffffff;

    font-size: 24px;
    font-style: normal;
    font-weight: 400;
    line-height: 31.2px;

    text-decoration: none;

    transition:
        color 0.2s ease,
        opacity 0.2s ease;
}


.header-contact__phone:hover {
    color: #e8ae00;
}


/* =========================================================
   DESKTOP NAVIGATION
========================================================= */

.site-nav {
    position: relative;
    z-index: 3;

    width: 100%;
    height: 50px;

    background: #002347;
}


.site-nav__inner {
    width: 1150px;
    height: 50px;

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        94px
        163px
        158px
        178px
        141px
        40px
        246px
        130px;

    align-items: stretch;
}


.site-nav__link {
    height: 50px;

    display: flex;
    align-items: center;
    justify-content: flex-start;

    color: #ffffff;

    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 50px;

    text-decoration: none;
    white-space: nowrap;

    transition: color 0.2s ease;
}


.site-nav__link:hover {
    color: #e8ae00;
}


.site-nav__arrow {
    display: none;
}


.site-nav__link--home {
    grid-column: 1;
}


.site-nav__link--investigation {
    grid-column: 2;
}


.site-nav__link--results {
    grid-column: 3;
}


.site-nav__link--records {
    grid-column: 4;
}


.site-nav__link--contact-text {
    grid-column: 5;
}


.site-nav__link--faq {
    grid-column: 6;
}


.site-nav__spacer {
    grid-column: 7;
}


.site-nav__contact {
    grid-column: 8;

    width: 130px;
    height: 50px;

    padding: 0 23px;

    display: flex;
    align-items: center;
    justify-content: center;

    box-sizing: border-box;

    color: #000000;
    background: #e8ae00;

    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 50px;

    text-decoration: none;
    white-space: nowrap;

    transition: background 0.2s ease;
}


.site-nav__contact:hover {
    background: #d4a000;
}


/* =========================================================
   MOBILE ELEMENTS
========================================================= */

.site-header__mobile-top,
.site-header__mobile-main,
.site-header__backdrop {
    display: none;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1199px) and (min-width: 769px) {

    .site-header__desktop-inner {
        padding-right: 40px;
        padding-left: 40px;
    }


    .site-nav__inner {
        width: 100%;

        padding: 0 40px;

        display: flex;
        align-items: center;
        justify-content: space-between;

        box-sizing: border-box;
    }


    .site-nav__spacer {
        display: none;
    }


    .site-nav__contact {
        flex: 0 0 130px;
    }
}


/* =========================================================
   MOBILE HEADER
========================================================= */

@media (max-width: 768px) {

    html {
        scroll-padding-top: 96px;
    }


    body.site-menu-open {
        overflow: hidden;
    }


    .site-header {
        height: 96px;

        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    }


    body.admin-bar .site-header {
        top: 46px;
    }


    /* Hide desktop header */

    .site-header__desktop-top {
        display: none;
    }


    /* =====================================================
       MOBILE TOP STRIP
    ===================================================== */

    .site-header__mobile-top {
        position: relative;
        z-index: 20;

        width: 100%;
        height: 32px;

        display: block;

        background: #314263;
    }


    .site-header__mobile-top-inner {
        width: 100%;
        height: 32px;

        padding: 0 23px;

        display: flex;
        align-items: center;
        justify-content: flex-start;

        gap: 4px;

        box-sizing: border-box;
    }


    .site-header__mobile-top-link {
        height: 12px;

        display: flex;
        align-items: center;

        color: #ffffff;

        font-size: 12px;
        font-style: normal;
        font-weight: 700;
        line-height: 12px;

        text-decoration: none;
        white-space: nowrap;
    }


    /* =====================================================
       MOBILE MAIN LINE
    ===================================================== */

    .site-header__mobile-main {
        position: relative;
        z-index: 20;

        width: 100%;
        height: 64px;

        display: block;

        background: #002347;
    }


    .site-header__mobile-main-inner {
        width: 100%;
        height: 64px;

        padding: 0 15px 0 16px;

        display: flex;
        align-items: center;

        box-sizing: border-box;
    }


    /* Mobile logo */

    .site-logo--mobile {
        width: 111px;
        height: 32px;

        margin-right: auto;
    }


    .site-logo--mobile img {
        width: 111px;
        height: 32px;

        display: block;

        object-fit: contain;
        object-position: left center;
    }


    /* Mobile Contact Us */

    .site-header__mobile-contact {
        width: 130px;
        height: 40px;

        margin-left: 8px;
        padding: 0 28px;

        display: flex;
        align-items: center;
        justify-content: center;

        box-sizing: border-box;

        color: #000000;
        background: #e8ae00;

        border-radius: 4px;

        font-size: 14px;
        font-style: normal;
        font-weight: 500;
        line-height: 16px;

        text-align: center;
        text-decoration: none;
        white-space: nowrap;

        transition: background 0.2s ease;
    }


    .site-header__mobile-contact:hover {
        background: #d4a000;
    }


    /* Mobile menu button */

    .site-header__menu-toggle {
        width: 48px;
        height: 40px;

        margin: 0 0 0 8px;
        padding: 0;

        display: flex;
        align-items: center;
        justify-content: center;

        flex: 0 0 48px;

        background: #314263;
        border: 0;
        border-radius: 4px;

        cursor: pointer;
    }


    .site-header__menu-icon {
        position: relative;

        width: 20px;
        height: 20px;

        display: block;
    }


    .site-header__menu-icon span {
        position: absolute;
        left: 2px;

        width: 16px;
        height: 2px;

        display: block;

        background: #ffffff;
        border-radius: 2px;

        transform-origin: center;

        transition:
            top 0.25s ease,
            opacity 0.2s ease,
            transform 0.25s ease;
    }


    .site-header__menu-icon span:nth-child(1) {
        top: 4px;
    }


    .site-header__menu-icon span:nth-child(2) {
        top: 9px;
    }


    .site-header__menu-icon span:nth-child(3) {
        top: 14px;
    }


    /* Open state: one horizontal line */

    .site-header--menu-open
    .site-header__menu-icon span:nth-child(1) {
        top: 9px;

        opacity: 0;
    }


    .site-header--menu-open
    .site-header__menu-icon span:nth-child(2) {
        top: 9px;

        opacity: 1;
        transform: none;
    }


    .site-header--menu-open
    .site-header__menu-icon span:nth-child(3) {
        top: 9px;

        opacity: 0;
    }


    /* =====================================================
       MOBILE NAVIGATION
    ===================================================== */

    .site-nav {
        position: fixed;
        top: 96px;
        left: 0;
        z-index: 15;

        width: 100%;
        height: 420px;

        padding: 40px 18px 40px 17px;

        display: block;

        box-sizing: border-box;

        overflow: hidden;

        background: #002347;

        opacity: 0;
        visibility: hidden;

        transform: translateY(-12px);
        pointer-events: none;

        transition:
            opacity 0.25s ease,
            visibility 0.25s ease,
            transform 0.25s ease;
    }


    body.admin-bar .site-nav {
        top: 142px;
    }


    .site-header--menu-open .site-nav {
        opacity: 1;
        visibility: visible;

        transform: translateY(0);
        pointer-events: auto;
    }


    .site-nav__inner {
        width: 100%;
        height: 340px;

        margin: 0;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        grid-template-columns: none;
    }


    .site-nav__link {
        position: relative;

        width: 100%;
        height: 64px;

        padding: 0;

        display: flex;
        align-items: flex-start;
        justify-content: space-between;

        box-sizing: border-box;

        color: #ffffff;

        border-bottom: 1px solid rgba(255, 255, 255, 0.12);

        font-size: 24px;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;

        text-decoration: none;
        white-space: normal;
    }


    .site-nav__link-text {
        display: block;
    }


    .site-nav__arrow {
        width: 16px;
        height: 16px;

        margin-top: 7px;

        display: block;

        flex: 0 0 16px;

        fill: none;
        stroke: rgba(255, 255, 255, 0.4);
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;

        transition:
            stroke 0.2s ease,
            transform 0.2s ease;
    }


    .site-nav__link:hover {
        color: #e8ae00;
    }


    .site-nav__link:hover .site-nav__arrow {
        stroke: #e8ae00;
    }


    .site-nav__link--home {
        color: #e8ae00;
    }


    .site-nav__link--home .site-nav__arrow {
        stroke: #e8ae00;
    }


    /* Case Results is not present in mobile Figma */

    .site-nav__link--results {
        display: none;
    }


    .site-nav__spacer,
    .site-nav__contact {
        display: none;
    }


    /* =====================================================
       PAGE BACKDROP
    ===================================================== */

    .site-header__backdrop {
        position: fixed;
        top: 96px;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 10;

        width: 100%;
        height: calc(100dvh - 96px);

        margin: 0;
        padding: 0;

        display: block;

        background: rgba(0, 0, 0, 0.4);
        border: 0;

        opacity: 0;
        visibility: hidden;

        cursor: pointer;
        pointer-events: none;

        transition:
            opacity 0.25s ease,
            visibility 0.25s ease;
    }


    body.admin-bar .site-header__backdrop {
        top: 142px;

        height: calc(100dvh - 142px);
    }


    .site-header--menu-open .site-header__backdrop {
        opacity: 1;
        visibility: visible;

        pointer-events: auto;
    }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 374px) {

    .site-header__mobile-top-inner {
        padding-right: 12px;
        padding-left: 12px;
    }


    .site-header__mobile-top-link {
        font-size: 10px;
    }


    .site-header__mobile-main-inner {
        padding-right: 10px;
        padding-left: 12px;
    }


    .site-logo--mobile,
    .site-logo--mobile img {
        width: 96px;
    }


    .site-header__mobile-contact {
        width: 116px;

        padding-right: 15px;
        padding-left: 15px;
    }


    .site-header__menu-toggle {
        margin-left: 6px;
    }


    .site-nav {
        padding-right: 16px;
        padding-left: 16px;
    }
}
/* =========================================================
   MOBILE HEADER VISUAL FIX
========================================================= */

@media (max-width: 1024px) {

    .site-header {
        width: 100%;
        height: 96px;
    }


    /* Верхняя полоска */

    .site-header__mobile-top {
        height: 32px;
    }


    .site-header__mobile-top-inner {
        height: 32px;

        padding: 0 23px;

        justify-content: flex-start;

        gap: 4px;
    }


    .site-header__mobile-top-link {
        width: auto;
        height: 12px;

        font-size: 12px;
        font-weight: 700;
        line-height: 12px;
    }
    /* =====================================================
   MOBILE TOP STRIP
===================================================== */

.site-header__mobile-top {
    position: relative;
    z-index: 20;

    width: 100%;
    height: 32px;

    display: block;

    background: #314263;
}

.site-header__mobile-top-inner {
    width: 100%;
    height: 32px;

    margin: 0;
    padding: 0 16px;

    display: flex;
    align-items: center;
    justify-content: flex-start;

    gap: 6px;

    box-sizing: border-box;

    overflow: hidden;
}

.site-header__mobile-top-link,
.site-header__mobile-top-phone,
.site-header__mobile-top-language {
    margin: 0;
    padding: 0;

    display: inline-flex;
    align-items: center;

    height: 32px;

    color: #ffffff;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 12px;
    font-style: normal;
    line-height: 32px;

    text-decoration: none;
    white-space: nowrap;
}

.site-header__mobile-top-link {
    font-weight: 700;
}

.site-header__mobile-top-phone {
    font-weight: 400;
}

.site-header__mobile-top-language {
    font-weight: 700;
}


    /* Основной хедер */

    .site-header__mobile-main {
        height: 64px;
    }


    .site-header__mobile-main-inner {
        height: 64px;

        padding: 0 15px 0 16px;
    }


    /* Логотип */

    .site-logo--mobile {
        width: 111px;
        height: 32px;

        margin: 0 auto 0 0;

        flex: 0 0 111px;
    }


    .site-logo--mobile img {
        width: 111px;
        height: 32px;

        object-fit: contain;
        object-position: left center;
    }


    /* Contact Us */

    .site-header__mobile-contact {
        width: 130px;
        height: 40px;

        margin: 0 8px 0 0;
        padding: 0;

        flex: 0 0 130px;

        font-size: 14px;
        font-weight: 500;
        line-height: 16px;
    }


    /* Бургер */

    .site-header__menu-toggle {
        width: 48px;
        height: 40px;

        margin: 0;
        padding: 0;

        flex: 0 0 48px;
    }


    /* Выпадающее меню */

    .site-nav {
        top: 96px;

        width: 100%;
        height: 420px;

        padding: 40px 18px 40px 17px;
    }


    .site-nav__inner {
        width: 100%;
        height: 340px;

        display: flex;
        flex-direction: column;
        align-items: stretch;
    }


    .site-nav__link {
        width: 100%;
        height: 64px;
        min-height: 64px;

        padding: 0;

        flex: 0 0 64px;

        align-items: flex-start;
        justify-content: space-between;

        font-size: 24px;
        font-weight: 600;
        line-height: 130%;
    }


    .site-nav__link-text {
        padding: 0;
    }


    .site-nav__arrow {
        width: 16px;
        height: 16px;

        margin: 7px 0 0;

        flex: 0 0 16px;
    }


    .site-nav__link--results {
        display: none;
    }


    .site-nav__spacer,
    .site-nav__contact {
        display: none;
    }
}
@media (max-width: 1024px) {

    .site-nav__inner {
        width: 100% !important;
        height: auto !important;

        margin: 0 !important;

        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;

        grid-template-columns: none !important;
        grid-template-rows: none !important;
    }

    .site-nav__link {
        width: 100% !important;
        height: 64px !important;
        min-height: 64px !important;

        margin: 0 !important;
        padding: 0 !important;

        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;

        flex: 0 0 64px !important;

        grid-column: auto !important;
        grid-row: auto !important;

        border-bottom: 1px solid rgba(255,255,255,.12) !important;

        font-family: "Open Sans", Arial, sans-serif !important;
        font-size: 24px !important;
        font-style: normal !important;
        font-weight: 600 !important;
        line-height: 130% !important;

        color: #FFFFFF !important;
        text-decoration: none !important;
        white-space: nowrap !important;

        transition:
            color .2s ease !important;
    }

    .site-nav__link-text {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-start !important;

        height: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        flex: 1 1 auto !important;
    }

    .site-nav__arrow {
        width: 16px !important;
        height: 16px !important;

        margin: 0 !important;

        display: block !important;
        align-self: center !important;

        flex: 0 0 16px !important;

        fill: none !important;
        stroke: rgb(255, 255, 255) !important;
        stroke-width: 2 !important;
        stroke-linecap: round !important;
        stroke-linejoin: round !important;

        transition:
            stroke .2s ease,
            transform .2s ease !important;
    }

    .site-nav__link:hover {
        color: #E8AE00 !important;
    }

    .site-nav__link:hover .site-nav__arrow {
        stroke: #E8AE00 !important;
    }

    .site-nav__link--home {
        color: #E8AE00 !important;
    }

    .site-nav__link--home .site-nav__arrow {
        stroke: #E8AE00 !important;
    }

    .site-nav__link--results,
    .site-nav__spacer,
    .site-nav__contact {
        display: none !important;
    }
}
/* =========================
   HERO
========================= */

.hero {
    width: 100%;
    height: 750px;

    background: #f5f5f5;
}

.hero__inner {
    position: relative;

    width: 100%;
    max-width: 1440px;
    height: 750px;

    margin: 0 auto;
}


/* =========================
   HERO CONTENT
========================= */

.hero__content {
    position: absolute;

    width: 651px;
    height: 497px;

    left: 112px;
    top: 126px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 60px;
}

.hero__main {
    width: 651px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 40px;
}

.hero__copy {
    width: 651px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
}


/* =========================
   HERO TITLE
========================= */

.hero__title {
    width: 622px;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 48px;
    font-style: normal;
    font-weight: 500;
    line-height: 1.3;
}


/* =========================
   HERO TEXT
========================= */

.hero__text {
    width: 628px;

    margin: 0;

    color: rgba(0, 35, 71, 0.8);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 1.4;
}


/* =========================
   HERO BUTTONS
========================= */

.hero__buttons {
    width: 606px;
    height: 56px;

    display: flex;
    align-items: center;

    gap: 16px;
}

.hero-button {
    width: 295px;
    height: 56px;

    padding: 16px 23px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 0;
    border-radius: 4px;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;

    text-align: center;
    white-space: nowrap;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.hero-button:hover {
    transform: translateY(-1px);
}

.hero-button--primary {
    color: #000000;
    background: #e8ae00;
}

.hero-button--primary:hover {
    background: #d4a000;
}

.hero-button--secondary {
    color: #002347;
    background: rgba(0, 35, 71, 0.2);
}

.hero-button--secondary:hover {
    background: rgba(0, 35, 71, 0.28);
}


/* =========================
   HERO BENEFITS
========================= */

.hero__benefits {
    width: 511px;

    display: grid;
    grid-template-columns: 244px 200px;

    column-gap: 67px;
    row-gap: 20px;
}

.hero-benefit {
    min-height: 22px;

    display: flex;
    align-items: center;

    gap: 8px;
}

.hero-benefit__icon {
    position: relative;

    width: 20px;
    min-width: 20px;
    height: 20px;

    display: block;

    border: 2px solid #ffffff00;
}

.hero-benefit__icon::after {
    content: "";

    position: absolute;

    width: 9px;
    height: 5px;

    left: 3px;
    top: 4px;

    border-left: 2px solid #002347;
    border-bottom: 2px solid #002347;

    transform: rotate(-45deg);
}

.hero-benefit__text {
    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 1.4;

    white-space: nowrap;
}


/* =========================
   HERO IMAGE
========================= */

.hero__image {
    position: absolute;

    width: 492px;
    height: 654px;

    left: 836px;
    top: 48px;

    overflow: hidden;
}

.hero__image img {
    width: 492px;
    height: 654px;

    display: block;

    object-fit: cover;
    object-position: center;
}

@media (max-width:768px){

.hero{
    height:auto;
    padding:40px 0 24px;
    background:#F5F5F5;
}

.hero__inner{
    width:344px;
    max-width:344px;
    height:auto;
    margin:0 auto;
    position:relative;
}

.hero__content{
    position:relative;

    left:auto;
    top:auto;

    width:344px;
    height:auto;

    display:flex;
    flex-direction:column;

    gap:40px;
}

.hero__main{
    width:344px;

    display:flex;
    flex-direction:column;

    gap:40px;
}

.hero__copy{
    width:344px;

    display:flex;
    flex-direction:column;

    gap:16px;
}

.hero__title{
    width:344px;

    margin:0;

    color:#002347;

    font-family:"Open Sans",sans-serif;
    font-size:34px;
    font-weight:600;
    line-height:130%;

    letter-spacing:0;
}

.hero__text{
    width:344px;

    margin:0;

    color:rgba(0,35,71,.8);

    font-family:"Open Sans",sans-serif;
    font-size:15px;
    font-weight:400;
    line-height:150%;
}

.hero__buttons{
    width:344px;
    height:auto;

    display:flex;
    flex-direction:column;

    gap:16px;
}

.hero-button{
    width:344px;
    height:52px;

    margin:0;
    padding:14px 23px;

    display:flex;
    align-items:center;
    justify-content:center;

    box-sizing:border-box;

    border-radius:4px;

    font-size:14px;
    font-weight:700;
    line-height:24px;
}

.hero-button--primary{
    background:#E8AE00;
    color:#000;
}

.hero-button--secondary{
    background:rgba(0,35,71,.2);
    color:#002347;
}

.hero__image{
    position:relative;

    order:2;

    width:344px;
    height:306px;

    left:auto;
    top:auto;

    overflow:hidden;

    border-radius:0;
}

.hero__image img{
    width:344px;
    height:306px;

    display:block;

    object-fit:cover;
    object-position:center;
}
.hero__benefits{
    position:absolute;

    left:20px;
    bottom:20px;

    z-index:5;

    width:304px;

    display:flex;
    flex-direction:column;

    gap:4px;
}

.hero-benefit{
    width:304px;
    height:34px;

    padding:8px 12px;

    display:flex;
    align-items:center;

    gap:8px;

    box-sizing:border-box;

    background:rgba(255,255,255,.24);

    -webkit-backdrop-filter:blur(20px);
    backdrop-filter:blur(20px);
}

.hero-benefit__icon{
    position:relative;

    width:12px;
    height:12px;
    min-width:12px;

    border:none;
}

.hero-benefit__icon::before{
    content:"✓";

    position:absolute;
    left:0;
    top:-3px;

    color:#fff;

    font-size:14px;
    font-weight:700;
    line-height:12px;
}

.hero-benefit__icon::after{
    display:none;
}

.hero-benefit__text{
    flex:1;

    color:#FFF;

    font-family:"Open Sans",sans-serif;
    font-size:13px;
    font-style:normal;
    font-weight:600;
    line-height:140%;

    white-space:nowrap;
}

}

/* =========================
   FOOTER
========================= */

.site-footer {
    width: 100%;

    padding: 40px 20px;

    background: #002347;
}

.site-footer__inner {
    max-width: 1440px;

    margin: 0 auto;

    text-align: center;
}

.site-footer p {
    margin: 0;

    color: #ffffff;

    font-size: 14px;
}


/* =========================
   SMALL DESKTOP
========================= */

@media (max-width: 1200px) {

    .site-header__top-inner {
        padding: 0 50px;
    }

    .site-nav__inner {
        width: calc(100% - 100px);

        display: flex;
        align-items: center;

        gap: 24px;
    }

    .site-nav__link {
        font-size: 14px;
    }

    .site-nav__spacer {
        flex: 1;
    }

    .site-nav__contact {
        margin-left: auto;
    }

    .hero {
        height: auto;
        min-height: 700px;

        padding: 70px 50px;
    }

    .hero__inner {
        height: auto;
        min-height: 560px;

        display: grid;
        grid-template-columns: minmax(0, 1.2fr) minmax(360px, 0.8fr);
        align-items: center;

        gap: 50px;
    }

    .hero__content {
        position: static;

        width: auto;
        height: auto;
    }

    .hero__main,
    .hero__copy,
    .hero__title,
    .hero__text,
    .hero__buttons {
        width: 100%;
    }

    .hero__title {
        font-size: 42px;
    }

    .hero__buttons {
        height: auto;
    }

    .hero-button {
        width: auto;
        flex: 1;
    }

    .hero__image {
        position: static;

        width: 100%;
        height: 540px;
    }

    .hero__image img {
        width: 100%;
        height: 540px;
    }
}


/* =========================
   TABLET
========================= */

@media (max-width: 900px) {

    .site-header__top-inner {
        padding: 0 24px;
    }

    .site-nav {
        height: auto;
    }

    .site-nav__inner {
        width: 100%;
        height: auto;

        display: grid;
        grid-template-columns: repeat(2, 1fr);

        gap: 0;
    }

    .site-nav__link,
    .site-nav__contact {
        width: 100%;
        height: 50px;

        margin: 0;
        padding: 0 15px;

        justify-content: center;

        border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    }

    .site-nav__spacer {
        display: none;
    }

    .site-nav__contact {
        grid-column: 1 / -1;
    }

    .hero {
        padding: 60px 24px;
    }

    .hero__inner {
        display: flex;
        flex-direction: column;

        gap: 45px;
    }

    .hero__content {
        width: 100%;
    }

    .hero__title {
        max-width: 650px;

        font-size: 40px;
    }

    .hero__text {
        max-width: 650px;
    }

    .hero__benefits {
        width: 100%;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        column-gap: 30px;
    }

    .hero__image {
        width: 100%;
        height: 520px;
    }

    .hero__image img {
        width: 100%;
        height: 520px;
    }
}


/* =========================
   MOBILE
========================= */

@media (max-width: 600px) {

    .site-header__top {
        height: auto;
    }

    .site-header__top-inner {
        height: auto;
        min-height: 130px;

        padding: 12px 20px;

        flex-direction: column;

        gap: 4px;
    }

    .site-logo {
        width: 180px;
        height: 62px;
    }

    .site-logo img {
        width: 180px;
        height: 62px;
    }

    .header-contact {
        min-width: 0;

        align-items: center;

        text-align: center;
    }

    .header-contact__title,
    .header-contact__language {
        font-size: 14px;
        line-height: 18px;
    }

    .header-contact__phone {
        font-size: 18px;
        line-height: 23px;
    }

    .site-nav__inner {
        grid-template-columns: 1fr;
    }

    .site-nav__contact {
        grid-column: auto;
    }

    .hero {
        padding: 45px 20px;
    }

    .hero__main {
        gap: 30px;
    }

    .hero__title {
        font-size: 34px;
        line-height: 1.25;
    }

    .hero__text {
        font-size: 16px;
    }

    .hero__buttons {
        flex-direction: column;
    }

    .hero-button {
        width: 100%;
        flex: none;

        white-space: normal;
    }

    .hero__benefits {
        grid-template-columns: 1fr;

        row-gap: 16px;
    }

    .hero-benefit__text {
        white-space: normal;
    }

    .hero__image {
        height: 430px;
    }

    .hero__image img {
        height: 430px;
    }
}
/* =========================
   LEGAL RIGHTS
========================= */

.legal-rights {
    width: 100%;
    min-height: 400px;

    display: flex;
    align-items: center;

    background: #ffffff;
}

.legal-rights__inner {
    width: 100%;
    max-width: 1440px;

    margin: 0 auto;
    padding: 100px 112px;

    display: grid;
    grid-template-columns: 451px 547px;
    align-items: start;

    column-gap: 219px;
}


/* =========================
   LEGAL RIGHTS TITLE
========================= */

.legal-rights__title {
    width: 451px;
    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;

    display: flex;
    align-items: center;
}


/* =========================
   LEGAL RIGHTS TEXT
========================= */

.legal-rights__content {
    width: 547px;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0;
}

.legal-rights__content p {
    margin: 0 0 20px;
}

.legal-rights__content p:last-child {
    margin-bottom: 0;
}

/* =========================
   LEGAL RIGHTS RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .legal-rights__inner {
        padding: 90px 50px;

        grid-template-columns: minmax(300px, 451px) minmax(400px, 547px);

        column-gap: 80px;
    }

    .legal-rights__heading,
    .legal-rights__title,
    .legal-rights__content {
        width: 100%;
    }

}

@media (max-width: 900px) {

    .legal-rights {
        min-height: auto;
    }

    .legal-rights__inner {
        padding: 70px 24px;

        grid-template-columns: 1fr;

        row-gap: 35px;
    }

    .legal-rights__title {
        font-size: 36px;
    }

}

@media (max-width:600px){

    .legal-rights{
        min-height:auto;

        padding:0;
    }

    .legal-rights__inner{
        width:344px;

        margin:0 auto;
        padding:56px 0;

        display:flex;
        flex-direction:column;
        align-items:flex-start;

        gap:40px;
    }

    .legal-rights__title{
        width:344px;

        margin:0;

        color:#002347;

        font-family:"Open Sans",Arial,sans-serif;
        font-size:28px;
        font-style:normal;
        font-weight:600;
        line-height:130%;
    }

    .legal-rights__content{
        width:343px;

        color:#002347;

        font-family:"Open Sans",Arial,sans-serif;
        font-size:15px;
        font-style:normal;
        font-weight:400;
        line-height:150%;
    }

    .legal-rights__content p{
        margin:0 0 22px;
    }

    .legal-rights__content p:last-child{
        margin-bottom:0;
    }

}
/* =========================
   LEGAL TEAM
========================= */

.legal-team {
    width: 100%;
    height: 502px;

    background: #f5f5f5;
}

.legal-team__inner {
    width: 100%;
    max-width: 1440px;
    height: 502px;

    margin: 0 auto;
    padding: 40px 112px;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 48px;
}


/* =========================
   LEGAL TEAM TITLE
========================= */

.legal-team__title {
    width: 660px;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;

    text-align: center;
}


/* =========================
   LEGAL TEAM GRID
========================= */

.legal-team__grid {
    width: 1216px;

    display: grid;
    grid-template-columns: repeat(4, 286px);

    gap: 24px;
}


/* =========================
   LEGAL TEAM CARD
========================= */

.legal-team-card {
    width: 286px;
    min-height: 166px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 32px;
}

.legal-team-card__icon {
    width: 48px;
    min-width: 48px;
    height: 48px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #002347;
    background: #f5f5f5;

    border-radius: 4px;
}

.legal-team-card__icon svg {
    width: 32px;
    height: 32px;

    display: block;
}

.legal-team-card__content {
    width: 286px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
}

.legal-team-card__title {
    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: 0;
}

.legal-team-card__text {
    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0;
}


/* =========================
   LEGAL TEAM BUTTON
========================= */

.legal-team__button {
    display: inline-flex;
    justify-content: center;
    align-items: center;

    width: 344px;
    height: 52px;

    margin: 0 0 40px;

    padding: 14px 23px;
    gap: 10px;

    background: #E8AE00;
    border-radius: 4px;

    color: #000;
    text-decoration: none;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    line-height: 24px;

    transition:
        background .2s ease,
        transform .2s ease;
}

.legal-team__button:hover {
    background: #d4a000;
    transform: translateY(-1px);
}

/* =========================
   LEGAL TEAM RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .legal-team {
        height: auto;
    }

    .legal-team__inner {
        height: auto;

        padding: 60px 50px;
    }

    .legal-team__grid {
        width: 100%;

        grid-template-columns: repeat(2, minmax(0, 1fr));

        column-gap: 40px;
        row-gap: 50px;
    }

    .legal-team-card,
    .legal-team-card__content {
        width: 100%;
    }

}

@media (max-width: 700px) {

    .legal-team {
        width: 100%;
        height: 690px;

        padding: 0;

        background: #f5f5f5;
    }

    .legal-team__inner {
        width: 100%;
        max-width: 376px;
        height: 690px;

        margin: 0 auto;
        padding: 40px 16px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 40px;

        box-sizing: border-box;
    }

    .legal-team__title {
        width: 344px;
        max-width: 100%;

        margin: 0;

        color: #002347;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 28px;
        font-style: normal;
        font-weight: 500;
        line-height: 130%;

        text-align: left;
    }

    .legal-team__grid {
        width: 344px;
        max-width: 100%;
        height: 370px;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .legal-team-card {
        width: 344px;
        max-width: 100%;
        min-height: 0;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: row;
        align-items: flex-start;

        gap: 16px;
    }

    .legal-team-card:nth-child(1),
    .legal-team-card:nth-child(2),
    .legal-team-card:nth-child(3) {
        height: 86px;
        flex: 0 0 86px;
    }

    .legal-team-card:nth-child(4) {
        height: 64px;
        flex: 0 0 64px;
    }

    .legal-team-card__icon {
        width: 48px;
        min-width: 48px;
        height: 48px;

        margin: 0;
        padding: 0;

        display: flex;
        align-items: center;
        justify-content: center;

        flex: 0 0 48px;

        background: transparent;
        border-radius: 4px;
    }

    .legal-team-card__icon img,
    .legal-team-card__icon svg {
        width: 40px !important;
        height: 40px !important;

        max-width: none;

        display: block;

        object-fit: contain;
    }

    .legal-team-card__content {
        width: 280px;
        max-width: calc(100% - 64px);

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;

        flex: 0 0 280px;
    }

    .legal-team__title {
    width: 344px;
    max-width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 28px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;

    text-align: left;
}

.legal-team-card__icon {
    width: 56px;
    min-width: 56px;
    height: 56px;

    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 56px;

    background: transparent;
    border-radius: 4px;
}

.legal-team-card__icon img,
.legal-team-card__icon svg {
    width: 48px !important;
    height: 48px !important;

    max-width: none !important;

    display: block;

    object-fit: contain;
}

.legal-team-card__content {
    width: 272px;
    max-width: calc(100% - 72px);

    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;

    flex: 1 1 auto;
}

.legal-team-card__title {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 17px;
    font-style: normal;
    font-weight: 600 !important;
    line-height: 130%;

    text-align: left;
}

.legal-team-card__text {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 400 !important;
    line-height: 140%;

    text-align: left;
}

    .legal-team-card__text {
        width: 100%;

        margin: 0;

        color: #002347;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 300 !important;
        line-height: 140%;

        text-align: left;
    }

    .legal-team__inner{
    width:100%;
    max-width:376px;
    height:690px;

    margin:0 auto;
    padding:40px 16px;
    box-sizing:border-box;

    display:flex;
    flex-direction:column;
    justify-content:space-between;
    align-items:flex-start;

    background:#F5F5F5;
}
}
/* =========================
   TRUST LOGOS
========================= */

.trust-logos {
    width: 100%;

    padding: 100px 115px;

    background: #ffffff;

    overflow: hidden;
}

.trust-logos__inner {
    width: 100%;
    max-width: 1210px;

    margin: 0 auto;

    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));

    align-items: center;

    column-gap: 60px;
}


/* =========================
   TRUST LOGO ITEM
========================= */

.trust-logo {
    width: 100%;
    min-width: 0;
    height: 100px;

    display: flex;
    align-items: center;
    justify-content: center;
}

.trust-logo img {
    width: 150px;
    max-width: 100%;
    height: 100px;

    display: block;

    object-fit: contain;
    object-position: center;
}


/* Первый логотип */

.trust-logo:first-child img {
    width: 151px;
}


/* Второй логотип */

.trust-logo:nth-child(2) img {
    width: 152px;
}


/* Последний логотип не выходит вправо */

.trust-logo:last-child {
    justify-content: flex-end;
}

.trust-logo:last-child img {
    width: 150px;
    max-width: 150px;
}


/* =========================
   TRUST LOGOS RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .trust-logos {
        padding: 80px 50px;
    }

    .trust-logos__inner {
        max-width: none;

        grid-template-columns: repeat(3, minmax(0, 1fr));

        column-gap: 40px;
        row-gap: 40px;
    }

    .trust-logo:last-child {
        justify-content: center;
    }

}

@media (max-width: 700px) {

    .trust-logos {
        padding: 60px 24px;
    }

    .trust-logos__inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        column-gap: 20px;
        row-gap: 32px;
    }

}

@media (max-width: 420px) {

    .trust-logos {
        padding: 50px 20px;
    }

    .trust-logos__inner {
        grid-template-columns: 1fr;
    }

}

/* =========================
   WHO CAN FILE A CLAIM
========================= */

.claim-types {
    width: 100%;
    height: 708px;

    background: #ffffff;
}

.claim-types__inner {
    width: 100%;
    max-width: 1440px;
    height: 708px;

    margin: 0 auto;
    padding: 100px 112px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 48px;
}
/* ==========================================
   WHO CAN FILE — DESKTOP / MOBILE SWITCH
========================================== */

.claim-mobile {
    display: none;
}


/* ==========================================
   WHO CAN FILE — MOBILE
========================================== */

@media (max-width: 700px) {

    /*
     * Скрываем существующую компьютерную секцию.
     */

    .claim-types {
        display: none !important;
    }


    /*
     * Показываем отдельную мобильную секцию.
     */

    .claim-mobile {
        display: block;
        width: 100%;
        overflow: hidden;
        background: #ffffff;
    }

    .claim-mobile,
    .claim-mobile * {
        box-sizing: border-box;
    }

    .claim-mobile__inner {
        width: 100%;
        max-width: 376px;
        margin: 0 auto;
        padding: 40px 16px;
    }


    /* Header */

    .claim-mobile__header {
        width: 344px;
        max-width: 100%;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .claim-mobile__title {
        width: 100%;
        margin: 0;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 28px;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;

        color: #002347;
    }

    .claim-mobile__intro {
        width: 100%;
        margin: 0;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;

        color: rgba(0, 35, 71, 0.8);
    }


    /* Slider */

    .claim-mobile__viewport {
        width: 344px;
        max-width: 100%;

        margin-top: 40px;

        overflow: hidden;
        touch-action: pan-y;
    }

    .claim-mobile__track {
        display: flex;
        flex-direction: row;
        align-items: flex-start;

        gap: 16px;

        width: max-content;

        transform: translate3d(0, 0, 0);
        transition: transform 0.4s ease;

        will-change: transform;
    }

    .claim-mobile__slide {
        width: 292px;
        min-width: 292px;
        flex: 0 0 292px;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 24px;
    }


    /* Image */

    .claim-mobile__image {
        position: relative;

        width: 292px;
        height: 220px;

        overflow: hidden;

        background: #ffffff;
    }

    .claim-mobile__image img {
        position: absolute;
        top: 50%;
        left: 50%;

        width: 292px;
        height: 292px;

        display: block;

        object-fit: cover;
        object-position: center;

        transform: translate(-50%, -50%);

        filter: grayscale(100%);
    }


    /* Card content */

    .claim-mobile__content {
        width: 292px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .claim-mobile__card-title {
        width: 100%;
        margin: 0;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 17px;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;

        color: #002347;
    }

    .claim-mobile__card-text {
        width: 100%;
        margin: 0;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 400;
        line-height: 140%;

        color: #002347;
    }


    /* Controls */

    .claim-mobile__controls {
        width: 344px;
        max-width: 100%;
        height: 40px;

        margin-top: 40px;

        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .claim-mobile__arrow {
        width: 48px;
        height: 40px;

        padding: 8px 12px;

        display: flex;
        align-items: center;
        justify-content: center;

        border: 0;
        border-radius: 4px;

        background: #e8eaed;
        color: #002347;

        cursor: pointer;
        appearance: none;
    }

    .claim-mobile__arrow svg {
        width: 24px;
        height: 24px;

        display: block;

        fill: none;
        stroke: currentColor;
        stroke-width: 2;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .claim-mobile__arrow:disabled {
        opacity: 0.45;
        cursor: default;
    }


    /* Dots */

    .claim-mobile__dots {
        width: 72px;
        height: 8px;

        display: flex;
        align-items: center;
        justify-content: center;

        gap: 8px;
    }

    .claim-mobile__dot {
        width: 8px;
        height: 8px;
        min-width: 8px;

        margin: 0;
        padding: 0;

        border: 0;
        border-radius: 110px;

        background: rgba(0, 35, 71, 0.16);

        cursor: pointer;

        transition:
            width 0.25s ease,
            background-color 0.25s ease;
    }

    .claim-mobile__dot.is-active {
        width: 24px;
        background: #002347;
    }
}



/* =========================
   CLAIM SECTION HEADER
========================= */

.claim-types__header {
    width: 1216px;
    height: 104px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 111px;
}

.claim-types__title {
    width: 536px;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;
}

.claim-types__intro {
    width: 569px;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: 0;
}


/* =========================
   CLAIM CARDS GRID
========================= */

.claim-types__grid {
    width: 1216px;

    display: grid;
    grid-template-columns: repeat(4, 292px);

    align-items: start;

    gap: 16px;
}


/* =========================
   CLAIM CARD
========================= */

.claim-card {
    width: 292px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 24px;
}

.claim-card__image {
    width: 292px;
    height: 220px;

    overflow: hidden;

    background: #ffffff;
}

.claim-card__image img {
    width: 292px;
    height: 220px;

    display: block;

    object-fit: cover;
    object-position: center;
}

.claim-card__content {
    width: 292px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
}


/* =========================
   CLAIM CARD TYPOGRAPHY
========================= */

.claim-card__title {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;
}

.claim-card__text {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: 0;
}


/* =========================
   RESPONSIVE — CLAIM TYPES
========================= */

@media (max-width: 1200px) {

    .claim-types {
        height: auto;
    }

    .claim-types__inner {
        height: auto;

        padding: 80px 50px;
    }

    .claim-types__header,
    .claim-types__grid {
        width: 100%;
    }

    .claim-types__header {
        height: auto;

        display: grid;
        grid-template-columns: minmax(320px, 1fr) minmax(420px, 1fr);

        gap: 60px;
    }

    .claim-types__title,
    .claim-types__intro {
        width: 100%;
    }

    .claim-types__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 50px 30px;
    }

    .claim-card,
    .claim-card__image,
    .claim-card__content {
        width: 100%;
    }

    .claim-card__image {
        height: 280px;
    }

    .claim-card__image img {
        width: 100%;
        height: 280px;
    }

}

@media (max-width: 800px) {

    .claim-types__inner {
        padding: 70px 24px;
    }

    .claim-types__header {
        grid-template-columns: 1fr;

        gap: 28px;
    }

    .claim-types__title {
        font-size: 36px;
    }

    .claim-types__grid {
        grid-template-columns: 1fr;

        gap: 45px;
    }

    .claim-card__image {
        height: 360px;
    }

    .claim-card__image img {
        height: 360px;
    }

}

@media (max-width: 500px) {

    .claim-types__inner {
        padding: 55px 20px;
    }

    .claim-types__title {
        font-size: 32px;
    }

    .claim-types__intro,
    .claim-card__text {
        font-size: 15px;
    }

    .claim-card__image {
        height: 250px;
    }

    .claim-card__image img {
        height: 250px;
    }

}
/* =========================
   INVESTIGATION
========================= */

.investigation {
    width: 100%;

    padding: 100px 115px;

    background: #002347;
}

.investigation__inner {
    width: 100%;
    max-width: 1210px;

    margin: 0 auto;

    display: flex;
    align-items: center;

    gap: 67px;
}


/* =========================
   INVESTIGATION CONTENT
========================= */

.investigation__content {
    width: 608px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 48px;
}

.investigation__main {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 40px;
}

.investigation__copy {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
}


/* =========================
   INVESTIGATION TITLE
========================= */

.investigation__title {
    width: 100%;

    margin: 0;

    color: #ffffff;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;
}


/* =========================
   INVESTIGATION TEXT
========================= */

.investigation__text {
    width: 100%;

    margin: 0;

    color: rgba(255, 255, 255, 0.7);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: 0;
}


/* =========================
   INVESTIGATION STATS
========================= */

.investigation__stats {
    width: 491px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 20px;
}

.investigation__stats-row {
    width: 491px;

    display: grid;
    grid-template-columns: 259px 200px;
    align-items: center;

    gap: 32px;
}

.investigation-stat {
    min-height: 60px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 4px;
}

.investigation-stat__value {
    margin: 0;

    color: #ffffff;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0;
}

.investigation-stat__label {
    margin: 0;

    color: rgba(255, 255, 255, 0.7);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px;
    letter-spacing: 0;
}

.investigation__divider {
    width: 491px;
    height: 1px;

    background: rgba(255, 255, 255, 0.12);
}


/* =========================
   INVESTIGATION BUTTON
========================= */

.investigation__button {
    width: 295px;
    height: 56px;

    padding: 16px 23px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #000000;
    background: #e8ae00;

    border-radius: 4px;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0;

    text-align: center;
    white-space: nowrap;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}

.investigation__button:hover {
    background: #d4a000;
    transform: translateY(-1px);
}


/* =========================
   INVESTIGATION IMAGE
========================= */

.investigation__image {
    width: 535px;
    min-width: 535px;
    height: 524px;

    overflow: hidden;

    background: #ebeaea;
}

.investigation__image img {
    width: 535px;
    height: 524px;

    display: block;

    object-fit: cover;
    object-position: center;
}


/* =========================
   INVESTIGATION RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .investigation {
        padding: 80px 50px;
    }

    .investigation__inner {
        max-width: none;

        display: grid;
        grid-template-columns: minmax(0, 1.1fr) minmax(360px, 0.9fr);

        gap: 50px;
    }

    .investigation__content {
        width: 100%;
    }

    .investigation__image {
        width: 100%;
        min-width: 0;
        height: 500px;
    }

    .investigation__image img {
        width: 100%;
        height: 500px;
    }

}

@media (max-width: 900px) {

    .investigation {
        padding: 70px 24px;
    }

    .investigation__inner {
        display: flex;
        flex-direction: column;

        gap: 45px;
    }

    .investigation__content {
        gap: 40px;
    }

    .investigation__stats,
    .investigation__stats-row,
    .investigation__divider {
        width: 100%;
    }

    .investigation__stats-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .investigation__image {
        height: 500px;
    }

    .investigation__image img {
        height: 500px;
    }

}

/* ==========================================
   INVESTIGATION — MOBILE 376px
========================================== */

@media (max-width: 600px) {

    .investigation,
    .investigation * {
        box-sizing: border-box;
    }

    .investigation {
        width: 100%;
        min-height: 605px;

        margin: 0;
        padding: 40px 16px;

        background: #002347;
    }

    .investigation__inner {
        width: 100%;
        max-width: 344px;
        min-height: 525px;

        margin: 0 auto;
        padding: 0;

        display: block;
    }


    /* Фото на мобильном полностью скрыто */

    .investigation__image {
        display: none !important;
    }


    /* Основная колонка */

    .investigation__content {
        width: 100%;
        max-width: 344px;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 40px;
    }

    .investigation__main {
        width: 100%;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 20px;
    }


    /* Заголовок и описание */

    .investigation__copy {
        width: 100%;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .investigation__title {
        width: 100%;
        min-height: 72px;

        margin: 0;
        padding: 0;

        color: #ffffff;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 28px;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;
        letter-spacing: 0;
    }

    .investigation__text {
        width: 100%;
        min-height: 161px;

        margin: 0;
        padding: 0;

        color: rgba(255, 255, 255, 0.7);

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;
        letter-spacing: 0;
    }


    /* Статистика — два столбца и два ряда */

    .investigation__stats {
        width: 100%;
        height: 164px;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 20px;
    }

    .investigation__stats-row {
        width: 100%;

        margin: 0;
        padding: 0;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: start;

        gap: 0;
    }

    .investigation__stats-row:first-child {
        min-height: 53px;
    }

    .investigation__stats-row:last-child {
        min-height: 71px;
    }

    .investigation-stat {
        width: 100%;
        min-width: 0;
        min-height: 0;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;

        gap: 4px;
    }

    .investigation-stat__value {
        width: 100%;

        margin: 0;
        padding: 0;

        color: #ffffff;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 22px;
        font-style: normal;
        font-weight: 600;
        line-height: 140%;
        letter-spacing: 0;
    }

    .investigation-stat__label {
        width: 100%;
        max-width: 160px;

        margin: 0;
        padding: 0;

        color: rgba(255, 255, 255, 0.7);

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 13px;
        font-style: normal;
        font-weight: 400;
        line-height: 140%;
        letter-spacing: 0;
    }

    .investigation__divider {
        width: 100%;
        height: 1px;

        margin: 0;

        border: 0;
        background: rgba(255, 255, 255, 0.12);
    }


    /* Кнопка */

    .investigation__button {
        width: 100%;
        height: 52px;
        min-height: 52px;

        margin: 0;
        padding: 14px 23px;

        display: flex;
        align-items: center;
        justify-content: center;

        color: #000000;
        background: #e8ae00;

        border: 0;
        border-radius: 4px;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: 24px;
        letter-spacing: 0;

        text-align: center;
        text-decoration: none;
        white-space: nowrap;
    }

    .investigation__button:hover {
        background: #e8ae00;
        transform: none;
    }
}

/* =========================
   SETTLEMENTS
========================= */

.settlements {
    width: 100%;

    padding: 100px 115px;

    background: #ffffff;
}

.settlements__inner {
    width: 100%;
    max-width: 1210px;

    margin: 0 auto;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 40px;
}


/* =========================
   SETTLEMENTS HEADER
========================= */

.settlements__header {
    width: 833px;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 16px;
}

.settlements__title {
    width: 833px;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
    letter-spacing: 0;

    text-align: center;
}

.settlements__intro {
    width: 833px;

    margin: 0;

    color: #000000;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: 0;

    text-align: center;
}


/* =========================
   SETTLEMENTS GRID
========================= */

.settlements__grid {
    width: 100%;

    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    gap: 8px;
}


/* =========================
   SETTLEMENT CARD
========================= */

.settlement-card {
    min-height: 142px;

    padding: 32px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    gap: 4px;

    background: #f5f5f5;

    border: 1px solid rgba(0, 35, 71, 0.12);
}

.settlement-card__amount {
    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0;
}

.settlement-card__text {
    margin: 0;

    color: rgba(0, 35, 71, 0.7);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 15px;
    font-style: normal;
    font-weight: 300;
    line-height: 20px;
    letter-spacing: 0;
}


/* =========================
   SETTLEMENTS RESPONSIVE
========================= */

@media (max-width: 1200px) {

    .settlements {
        padding: 80px 50px;
    }

    .settlements__inner {
        max-width: none;
    }

    .settlements__header,
    .settlements__title,
    .settlements__intro {
        width: 100%;
    }

    .settlements__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 16px;
    }

}

/* ==========================================
   SETTLEMENTS MOBILE
========================================== */

@media (max-width: 600px) {

    .settlements {
        padding: 40px 16px;
        background: #ffffff;
    }

    .settlements__inner {
        width: 100%;
        max-width: 344px;

        margin: 0 auto;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 40px;
    }


    /* =========================
       HEADER
    ========================= */

    .settlements__header {
        width: 100%;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;

        text-align: left;
    }

    .settlements__title {
        width: 100%;

        margin: 0;

        color: #002347;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 28px;
        font-style: normal;
        font-weight: 500;
        line-height: 130%;
        letter-spacing: 0;

        text-align: left;
    }

    .settlements__title br {
        display: none;
    }

    .settlements__intro {
        width: 100%;

        margin: 0;

        color: #000000;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 15px;
        font-style: normal;
        font-weight: 300;
        line-height: 140%;
        letter-spacing: 0;

        text-align: left;
    }


    /* =========================
       GRID
    ========================= */

    .settlements__grid {
        width: 100%;

        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 8px;

        margin: 0;
        padding: 0;

        align-items: stretch;
    }


    /* =========================
       CARD
    ========================= */

    .settlement-card {
        min-height: 124px;

        padding: 16px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;

        gap: 4px;

        background: #f5f5f5;

        border: 1px solid rgba(0, 35, 71, 0.12);
        border-radius: 0;

        box-shadow: none;
        transition: none;
    }

    .settlement-card:hover {
        transform: none;
        box-shadow: none;
    }


    /* =========================
       AMOUNT
    ========================= */

    .settlement-card__amount {
        margin: 0;

        color: #002347;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 24px;
        font-style: normal;
        font-weight: 500;
        line-height: 140%;
        letter-spacing: 0;

        flex: none !important;
    }


    /* =========================
       TEXT
    ========================= */

    .settlement-card__text {
        margin: 0;

        color: rgba(0, 35, 71, 0.7);

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 13px;
        font-style: normal;
        font-weight: 300;
        line-height: 18px;
        letter-spacing: 0;

        flex: none !important;
        display: block !important;
        align-items: initial !important;
    }

    .settlement-card > * {
        flex: none !important;
    }
}

/* ==========================================
   INVESTIGATION FOUND
========================================== */

.investigation-found,
.investigation-found * {
    box-sizing: border-box;
}

.investigation-found {
    position: relative;

    width: 100%;
    margin: 0;

    overflow: hidden;

    background: #f5f5f5;
}

.investigation-found__inner {
    position: relative;

    width: 100%;
    max-width: 1440px;
    min-height: 938px;

    margin: 0 auto;
    padding: 32px 115px 96px;

    display: flex;
    flex-direction: column;
    align-items: center;

    z-index: 1;
}


/* ==========================================
   VISUAL — DESKTOP
========================================== */

.investigation-found__visual {
    position: relative;

    width: 100%;
    height: 448px;

    margin: 0;
    padding: 0;

    flex: 0 0 448px;

    z-index: 1;
}

.investigation-found__building {
    position: absolute;

    top: 0;
    left: 50%;

    width: 628px;
    height: 628px;
    max-width: none;

    margin: 0;
    padding: 0;

    display: block;

    object-fit: contain;
    object-position: center top;

    transform: translateX(-50%);

    pointer-events: none;

    z-index: 1;
}


/* ==========================================
   TAGS — DESKTOP
========================================== */

.investigation-tag {
    position: absolute;

    height: 32px;
    min-height: 32px;

    margin: 0;
    padding: 4px 8px;

    display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;

    gap: 8px;

    color: #ffffff;
    background: #002347;

    border: 0;
    border-radius: 8px;

    font-family: "Inter", "Open Sans", Arial, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 24px;
    letter-spacing: -0.08px;

    white-space: nowrap;

    z-index: 5;
}

.investigation-tag img {
    position: static;

    width: 16px;
    height: 16px;
    min-width: 16px;

    margin: 0;
    padding: 0;

    flex: 0 0 16px;

    display: block;

    object-fit: contain;
    object-position: center;

    transform: none;
}

.investigation-tag span {
    margin: 0;
    padding: 0;

    color: #ffffff;

    font: inherit;
    white-space: nowrap;
}

.investigation-tag--abuse {
    top: 368px;
    left: 204px;

    width: 130px;
}

.investigation-tag--rights {
    top: 281px;
    left: 347px;

    width: 141px;
}

.investigation-tag--accountability {
    top: 249px;
    left: 646px;

    width: 136px;
}

.investigation-tag--legal {
    top: 320px;
    right: 214px;

    width: 132px;
}

.investigation-tag--ag {
    top: 404px;
    left: 50%;

    width: 149px;

    transform: translateX(-50%);
}


/* ==========================================
   CONTENT — DESKTOP
========================================== */

.investigation-found__content {
    position: relative;

    width: 100%;
    max-width: 833px;

    margin: 32px auto 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 32px;

    z-index: 10;
}

.investigation-found__copy {
    position: relative;

    width: 100%;

    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: center;

    gap: 24px;

    z-index: 10;
}

.investigation-found__title {
    position: relative;

    width: 100%;

    margin: 0;
    padding: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 32px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: 0;

    text-align: center;

    z-index: 10;
}

.investigation-found__text {
    position: relative;

    width: 100%;

    margin: 0;
    padding: 0;

    color: rgba(0, 35, 71, 0.8);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: 0;

    text-align: center;

    z-index: 10;
}

.investigation-found__text p {
    width: 100%;

    margin: 0 0 18px;
    padding: 0;

    color: inherit;

    font: inherit;
    text-align: inherit;
}

.investigation-found__text p:last-child {
    margin-bottom: 0;
}


/* ==========================================
   BUTTON — DESKTOP
========================================== */

.investigation-found__button {
    position: relative;

    width: 295px;
    min-width: 295px;
    height: 56px;
    min-height: 56px;

    margin: 0;
    padding: 16px 23px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #000000;
    background: #e8ae00;

    border: 0;
    border-radius: 4px;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: 0;

    text-align: center;
    text-decoration: none;
    white-space: nowrap;

    box-shadow: none;

    transition:
        background-color 0.2s ease,
        transform 0.2s ease;

    z-index: 10;
}

.investigation-found__button:hover {
    color: #000000;
    background: #d4a000;

    transform: translateY(-1px);
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1200px) and (min-width: 601px) {

    .investigation-found__inner {
        min-height: auto;

        padding: 40px 50px 80px;
    }

    .investigation-found__visual {
        height: 430px;

        flex-basis: 430px;
    }

    .investigation-found__building {
        width: 580px;
        height: 580px;
    }

    .investigation-tag--abuse {
        top: 350px;
        left: 5%;
    }

    .investigation-tag--rights {
        top: 270px;
        left: 22%;
    }

    .investigation-tag--accountability {
        top: 240px;
        left: 58%;
    }

    .investigation-tag--legal {
        top: 305px;
        right: 5%;
    }

    .investigation-tag--ag {
        top: 390px;
    }

    .investigation-found__content {
        width: 100%;
        max-width: 833px;

        margin-top: 24px;
    }
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {

    .investigation-found {
        width: 100%;

        margin: 0;
        padding: 40px 16px;

        overflow: hidden;

        background: #f5f5f5;
    }

    .investigation-found__inner {
        width: 100%;
        max-width: 343px;
        min-height: 0;

        margin: 0 auto;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: stretch;
    }


    /* ==========================================
       VISUAL — MOBILE
    ========================================== */

    .investigation-found__visual {
        position: relative;

        width: 300px;
        height: 300px;

        margin: 0 auto;
        padding: 0;

        flex: 0 0 300px;

        overflow: hidden;
    }

    .investigation-found__building {
        position: absolute;

        top: 0;
        left: 0;

        width: 300px;
        height: 300px;
        max-width: none;

        margin: 0;
        padding: 0;

        display: block;

        object-fit: contain;
        object-position: center;

        transform: none;

        opacity: 1;

        z-index: 1;
    }

    .investigation-found__visual::after {
        content: "";

        position: absolute;

        left: 0;
        right: 0;
        bottom: 0;

        width: 100%;
        height: 125px;

        pointer-events: none;

        background: linear-gradient(
            180deg,
            rgba(245, 245, 245, 0) 0%,
            rgba(245, 245, 245, 0.65) 48%,
            #f5f5f5 82%,
            #f5f5f5 100%
        );

        z-index: 2;
    }


    /* ==========================================
       TAGS — MOBILE
    ========================================== */

    .investigation-tag {
        position: absolute;

        left: 50%;
        right: auto;

        height: 32px;
        min-height: 32px;

        margin: 0;
        padding: 4px 8px;

        display: flex;
        align-items: center;
        justify-content: center;

        gap: 8px;

        background: #002347;
        color: #ffffff;

        border: 0;
        border-radius: 8px;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 500;
        line-height: 24px;
        letter-spacing: -0.08px;

        white-space: nowrap;

        transform: translateX(-50%);

        z-index: 5;
    }

    .investigation-tag img {
        position: static;

        width: 16px;
        height: 16px;
        min-width: 16px;

        margin: 0;
        padding: 0;

        flex: 0 0 16px;

        display: block;

        object-fit: contain;

        transform: none;
    }

    .investigation-tag span {
        margin: 0;
        padding: 0;

        color: #ffffff;

        font: inherit;
        white-space: nowrap;
    }

    .investigation-tag--rights {
        top: 50px;
        left: 50%;

        width: 149px;

        transform: translateX(-50%);
    }

    .investigation-tag--accountability {
        top: 98px;
        left: 50%;

        width: 136px;

        transform: translateX(-50%);
    }

    .investigation-tag--abuse {
        top: 146px;
        left: 50%;

        width: 130px;

        transform: translateX(-50%);
    }

    .investigation-tag--legal {
        top: 194px;
        left: 50%;
        right: auto;

        width: 132px;

        transform: translateX(-50%);
    }

    .investigation-tag--ag {
        top: 242px;
        left: 50%;

        width: 149px;

        transform: translateX(-50%);
    }


    /* ==========================================
       CONTENT — MOBILE
    ========================================== */

    .investigation-found__content {
        width: 100%;
        max-width: none;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: stretch;

        gap: 40px;
    }

    .investigation-found__copy {
        width: 100%;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .investigation-found__title {
        width: 100%;

        margin: 0;
        padding: 0;

        color: #002347;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 28px;
        font-style: normal;
        font-weight: 600;
        line-height: 130%;
        letter-spacing: 0;

        text-align: left;
    }

    .investigation-found__text {
        width: 100%;

        margin: 0;
        padding: 0;

        display: flex;
        flex-direction: column;
        align-items: flex-start;

        gap: 16px;

        color: rgba(0, 35, 71, 0.8);

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 15px;
        font-style: normal;
        font-weight: 400;
        line-height: 150%;
        letter-spacing: 0;

        text-align: left;
    }

    .investigation-found__text p {
        width: 100%;

        margin: 0;
        padding: 0;

        color: inherit;

        font: inherit;
        text-align: inherit;
    }


    /* ==========================================
       BUTTON — MOBILE
    ========================================== */

    .investigation-found__button {
        width: 100%;
        min-width: 0;
        height: 52px;
        min-height: 52px;

        margin: 0;
        padding: 14px 23px;

        display: flex;
        align-items: center;
        justify-content: center;

        background: #e8ae00;
        color: #000000;

        border: 0;
        border-radius: 4px;

        font-family: "Open Sans", Arial, sans-serif;
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: 24px;
        letter-spacing: 0;

        text-align: center;
        text-decoration: none;
        white-space: nowrap;

        box-shadow: none;
        transform: none;
    }

    .investigation-found__button:hover,
    .investigation-found__button:focus {
        color: #000000;
        background: #e8ae00;

        box-shadow: none;
        transform: none;
    }
}

/* ==========================================
   RECORDS SECTION
========================================== */

.records-section,
.records-section * {
    box-sizing: border-box;
}

.records-section {
    width: 100%;
    margin: 0;

    background: #ffffff;
}

.records-section__inner {
    width: 100%;
    max-width: 1440px;

    margin: 0 auto;
    padding: 100px 112px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 84px;
}


/* ==========================================
   CONTENT
========================================== */

.records-section__content {
    width: 536px;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 48px;

    flex: 0 0 536px;
}

.records-section__copy {
    width: 100%;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;
}

.records-section__title {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;

    text-align: left;
}

.records-section__description {
    width: 100%;

    margin: 0;

    color: rgba(0, 35, 71, 0.8);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;

    text-align: left;
}


/* ==========================================
   LIST
========================================== */

.records-section__list-block {
    width: 348px;
    max-width: 100%;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 19px;
}

.records-section__list-title {
    width: 100%;

    margin: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 20px;
    font-style: normal;
    font-weight: 500;
    line-height: 130%;
}

.records-section__list {
    width: 100%;

    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 16px;

    list-style: none;
}

.records-section__list-item {
    width: 100%;

    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;

    gap: 12px;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 300;
    line-height: 140%;
}

.records-section__check {
    width: 24px;
    height: 24px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #ffffff;
    background: #002347;

    border-radius: 50%;

    flex: 0 0 24px;
}

.records-section__check svg {
    width: 16px;
    height: 16px;

    display: block;
}


/* ==========================================
   LOOKUP
========================================== */

.records-lookup {
    position: relative;

    width: 535px;
    height: 628px;

    margin: 0;
    padding: 24px;

    display: flex;
    flex-direction: column;
    align-items: stretch;

    background: #ffffff;

    border: 1px solid #d5d7da;

    flex: 0 0 535px;

    overflow: hidden;
}


/* ==========================================
   SEARCH
========================================== */

.records-lookup__search-area {
    width: 100%;

    padding-bottom: 24px;

    border-bottom: 1px solid #d5d7da;

    flex: 0 0 auto;
}

.records-lookup__search {
    width: 100%;
    height: 40px;

    padding: 8px 12px;

    display: flex;
    align-items: center;

    gap: 8px;

    background: #ffffff;

    border: 1px solid #d5d7da;
    border-radius: 8px;

    box-shadow: 0 1px 2px rgba(10, 13, 18, 0.05);
}

.records-lookup__search:focus-within {
    border-color: #002347;

    box-shadow:
        0 1px 2px rgba(10, 13, 18, 0.05),
        0 0 0 3px rgba(0, 35, 71, 0.08);
}

.records-lookup__search-icon {
    width: 16px;
    height: 16px;

    color: rgba(0, 35, 71, 0.6);

    flex: 0 0 16px;
}

.records-lookup__input {
    width: 100%;
    min-width: 0;
    height: 24px;

    margin: 0;
    padding: 0;

    color: #002347;
    background: transparent;

    border: 0;
    outline: 0;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 24px;
}

.records-lookup__input::placeholder {
    color: rgba(0, 35, 71, 0.6);

    opacity: 1;
}


/* ==========================================
   FILTERS
========================================== */

.records-lookup__filters-wrapper {
    width: 100%;
    height: 36px;

    margin-top: 16px;

    display: flex;
    align-items: center;

    gap: 8px;

    flex: 0 0 36px;
}

.records-lookup__filters {
    width: calc(100% - 32px);
    height: 36px;

    display: flex;
    align-items: center;

    gap: 8px;

    overflow-x: auto;
    overflow-y: hidden;

    scrollbar-width: none;
    scroll-behavior: smooth;
}

.records-lookup__filters::-webkit-scrollbar {
    display: none;
}

.records-lookup__filter {
    width: auto;
    min-width: 71px;
    height: 36px;

    margin: 0;
    padding: 8px 16px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    color: #002347;
    background: rgba(0, 35, 71, 0.1);

    border: 0;
    border-radius: 49px;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;

    white-space: nowrap;

    cursor: pointer;

    flex: 0 0 auto;
}

.records-lookup__filter:first-child {
    min-width: 50px;
}

.records-lookup__filter:hover {
    background: rgba(0, 35, 71, 0.18);
}

.records-lookup__filter--active,
.records-lookup__filter--active:hover {
    color: #ffffff;
    background: #002347;
}

.records-lookup__arrow {
    width: 24px;
    height: 24px;

    margin: 0;
    padding: 0;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #002347;
    background: transparent;

    border: 0;

    cursor: pointer;

    flex: 0 0 24px;
}

.records-lookup__arrow svg {
    width: 24px;
    height: 24px;

    display: block;
}


/* ==========================================
   GRID
========================================== */

.records-lookup__grid {
    width: 100%;
    min-height: 0;

    margin-top: 20px;
    padding-right: 8px;

    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-auto-rows: 138px;

    gap: 8px;

    align-content: start;

    flex: 1 1 auto;

    overflow-x: hidden;
    overflow-y: auto;

    scrollbar-width: thin;
    scrollbar-color: rgba(0, 35, 71, 0.3) transparent;
}

.records-lookup__grid::-webkit-scrollbar {
    width: 5px;
}

.records-lookup__grid::-webkit-scrollbar-track {
    background: transparent;
}

.records-lookup__grid::-webkit-scrollbar-thumb {
    background: rgba(0, 35, 71, 0.3);

    border-radius: 10px;
}


/* ==========================================
   CARD
========================================== */

.records-card {
    width: 100%;
    min-width: 0;
    height: 138px;

    margin: 0;
    padding: 16px;

    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-between;

    gap: 16px;

    background: #f5f5f5;

    overflow: hidden;
}

.records-card__content {
    width: 100%;
    min-width: 0;
    height: 54px;

    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 8px;

    flex: 0 0 54px;
}

.records-card__name {
    width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;

    color: #002347;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.records-card__years {
    width: 100%;
    min-width: 0;

    margin: 0;
    padding: 0;

    color: rgba(0, 35, 71, 0.6);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px;

    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.records-card__button {
    width: 100%;
    height: 36px;

    margin: 0;
    padding: 8px 16px;

    display: flex;
    align-items: center;
    justify-content: center;

    color: #002347;
    background: rgba(0, 35, 71, 0.1);

    border: 0;
    border-radius: 0;

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;

    text-align: center;

    cursor: pointer;

    flex: 0 0 36px;
}

.records-card__button:hover {
    color: #ffffff;
    background: #002347;
}

.records-lookup__empty {
    grid-column: 1 / -1;

    padding: 24px;

    color: rgba(0, 35, 71, 0.7);

    font-family: "Open Sans", Arial, sans-serif;
    font-size: 15px;
    font-weight: 300;
    line-height: 150%;

    text-align: center;
}


/* ==========================================
   TABLET
========================================== */

@media (max-width: 1200px) {

    .records-section__inner {
        padding: 80px 50px;

        gap: 50px;
    }

    .records-section__content {
        width: calc(50% - 25px);

        flex-basis: calc(50% - 25px);
    }

    .records-lookup {
        width: calc(50% - 25px);

        flex-basis: calc(50% - 25px);
    }
}

@media (max-width: 900px) {

    .records-section__inner {
        padding: 70px 32px;

        flex-direction: column;
        align-items: stretch;

        gap: 48px;
    }

    .records-section__content {
        width: 100%;
        max-width: 650px;

        margin: 0 auto;

        flex-basis: auto;
    }

    .records-lookup {
        width: 100%;
        max-width: 535px;

        margin: 0 auto;

        flex-basis: auto;
    }
}


/* ==========================================
   MOBILE
========================================== */

@media (max-width: 600px) {

    .records-section {
        overflow: hidden !important;
    }

    .records-section__inner {
        width: 100% !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 40px 16px 80px !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;

        gap: 40px !important;
    }

    .records-section__content {
        width: 100% !important;
        max-width: 343px !important;

        margin: 0 auto !important;

        gap: 40px !important;

        flex: none !important;
    }

    .records-section__copy {
        gap: 16px !important;
    }

    .records-section__title {
        font-size: 28px !important;
        font-weight: 500 !important;
        line-height: 130% !important;
    }

    .records-section__description {
        color: rgba(0, 35, 71, 0.8) !important;

        font-size: 15px !important;
        font-weight: 300 !important;
        line-height: 150% !important;
    }

    .records-section__list-block {
        width: 100% !important;
        max-width: 348px !important;

        gap: 19px !important;
    }

    .records-section__list-title {
        font-size: 17px !important;
        font-weight: 500 !important;
        line-height: 130% !important;
    }

    .records-section__list {
        gap: 16px !important;
    }

    .records-section__list-item {
        gap: 12px !important;

        font-size: 15px !important;
        font-weight: 300 !important;
        line-height: 150% !important;
    }

    .records-section__check {
        width: 24px !important;
        height: 24px !important;

        flex: 0 0 24px !important;
    }


    /* ==========================================
       LOOKUP MOBILE
    ========================================== */

    .records-section .records-lookup {
        width: 100% !important;
        max-width: 343px !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 auto !important;
        padding: 12px !important;

        display: block !important;

        flex: none !important;

        border: 1px solid #d5d7da !important;

        overflow: visible !important;
    }

    .records-section .records-lookup__search-area {
        width: 100% !important;

        margin: 0 !important;
        padding: 0 0 12px !important;

        border-bottom: 1px solid #d5d7da !important;
    }

    .records-section .records-lookup__search {
        width: 100% !important;
        height: 40px !important;

        margin: 0 !important;
        padding: 8px 12px !important;
    }

    .records-section .records-lookup__filters-wrapper {
        width: 100% !important;
        height: 36px !important;

        margin: 12px 0 0 !important;

        display: flex !important;

        flex: none !important;
    }


    /* ==========================================
   GRID MOBILE — ВНУТРЕННИЙ СКРОЛЛ
========================================== */

.records-section .records-lookup__grid {
    position: static !important;

    width: calc(100% - 24px) !important;
    height: 507px !important;
    min-height: 507px !important;
    max-height: 507px !important;

    margin: 12px !important;
    padding: 0 6px 0 0 !important;

    display: flex !important;
    flex-direction: column !important;

    gap: 8px !important;

    align-content: initial !important;
    align-items: stretch !important;

    flex: 0 0 507px !important;

    overflow-x: hidden !important;
    overflow-y: auto !important;

    scroll-behavior: smooth !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(0, 35, 71, 0.3) transparent !important;

    transform: none !important;
}

.records-section .records-lookup__grid::-webkit-scrollbar {
    display: block !important;
    width: 5px !important;
}

.records-section .records-lookup__grid::-webkit-scrollbar-track {
    background: transparent !important;
}

.records-section .records-lookup__grid::-webkit-scrollbar-thumb {
    background: rgba(0, 35, 71, 0.3) !important;
    border-radius: 10px !important;
}


    /* ==========================================
       CARD MOBILE
    ========================================== */

    .records-section .records-card {
        position: relative !important;

        width: 100% !important;
        min-width: 0 !important;
        height: 124px !important;
        min-height: 124px !important;
        max-height: 124px !important;

        margin: 0 !important;
        padding: 12px !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: space-between !important;

        gap: 8px !important;

        background: #f5f5f5 !important;

        overflow: hidden !important;

        transform: none !important;
    }

    .records-section .records-card__content {
        width: 100% !important;
        min-width: 0 !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;

        margin: 0 !important;
        padding: 0 !important;

        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;

        gap: 4px !important;

        flex: 0 0 auto !important;

        overflow: visible !important;

        transform: none !important;
    }

    .records-section .records-card__name {
        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 14px !important;
        font-weight: 500 !important;
        line-height: 20px !important;
    }

    .records-section .records-card__years {
        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 13px !important;
        font-weight: 300 !important;
        line-height: 18px !important;
    }

    .records-section .records-card__button {
        width: 100% !important;
        height: 36px !important;
        min-height: 36px !important;

        margin: 0 !important;
        padding: 8px 6px !important;

        font-size: 14px !important;
        font-weight: 500 !important;
        line-height: 20px !important;

        flex: 0 0 36px !important;

        transform: none !important;
    }
}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 360px) {

    .records-section__inner {
        padding-right: 12px !important;
        padding-left: 12px !important;
    }

    .records-section__content,
    .records-section .records-lookup {
        max-width: 100% !important;
    }

    .records-section .records-lookup {
        padding: 10px !important;
    }

    .records-section .records-card {
        padding: 10px !important;
    }

    .records-section .records-card__name {
        font-size: 13px !important;
    }

    .records-section .records-card__years {
        font-size: 12px !important;
    }
}

/* =========================================================
   FAQ SECTION
========================================================= */

.faq-section {
    width: 100%;

    padding: 100px 0;

    box-sizing: border-box;

    background: #ffffff;
}


.faq-section__inner {
    width: calc(100% - 48px);
    max-width: 900px;

    margin: 0 auto;
}


.faq-section__title {
    margin: 0 0 48px;

    color: #002347;

    font-family: "Open Sans", sans-serif;
    font-size: 40px;
    font-weight: 500;
    line-height: 1.3;
    text-align: center;
}


/* =========================================================
   ACCORDION
========================================================= */

.faq-accordion {
    width: 100%;
    padding-bottom: 48px;
}


.faq-accordion__item {
    width: 100%;
}


.faq-accordion__question {
    position: relative;

    display: flex;

    width: 100%;
    min-height: 63px;

    padding: 15px 48px 15px 20px;

    box-sizing: border-box;

    align-items: center;
    justify-content: space-between;

    color: #002347;

    background: transparent;

    border: 0;
    border-top: 1px solid #747474;

    cursor: pointer;

    text-align: left;

    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}


.faq-accordion__question:hover {
    background: rgba(0, 35, 71, 0.025);
}


.faq-accordion__question:focus-visible {
    outline: 2px solid #8a6700;
    outline-offset: 2px;
}


.faq-accordion__item.is-open
.faq-accordion__question {
    box-shadow:
        inset 0 5px 0 #8a6700;
}


.faq-accordion__question-text {
    display: block;

    color: #002347;

    font-family: "Open Sans", sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.6;
}


/* =========================================================
   PLUS / MINUS
========================================================= */

.faq-accordion__icon {
    position: absolute;

    top: 50%;
    right: 10px;

    display: block;

    width: 24px;
    height: 24px;

    flex: 0 0 24px;

    transform: translateY(-50%);
}


.faq-accordion__icon::before,
.faq-accordion__icon::after {
    position: absolute;

    top: 50%;
    left: 50%;

    display: block;

    content: "";

    background: #747474;

    transform: translate(-50%, -50%);

    transition:
        opacity 0.2s ease,
        transform 0.2s ease;
}


.faq-accordion__icon::before {
    width: 14px;
    height: 2px;
}


.faq-accordion__icon::after {
    width: 2px;
    height: 14px;
}


.faq-accordion__item.is-open
.faq-accordion__icon::after {
    opacity: 0;

    transform:
        translate(-50%, -50%)
        rotate(90deg);
}


/* =========================================================
   ANSWERS
========================================================= */

.faq-accordion__answer {
    width: 100%;

    overflow: hidden;

    transition:
        height 0.35s ease;
}


.faq-accordion__answer[hidden] {
    display: none;
}


.faq-accordion__answer-inner {
    padding: 12px 20px 28px;

    box-sizing: border-box;
}


.faq-accordion__answer p {
    margin: 0;

    color: #000000;

    font-family: "Open Sans", sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6;
}


/* =========================================================
   LAST ITEM
========================================================= */

.faq-accordion__item:last-child
.faq-accordion__question {
    border-bottom: 0;
}

.faq-accordion__item:last-child.is-open
.faq-accordion__question {
    border-bottom: 0;
}

.faq-accordion__item:last-child.is-open
.faq-accordion__answer {
    border-bottom: 0;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

    .faq-section {
        padding: 80px 0;
    }


    .faq-section__title {
        font-size: 36px;
    }


    .faq-accordion__question-text,
    .faq-accordion__answer p {
        font-size: 18px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 600px) {

    .faq-section {
        padding: 60px 0;
    }


    .faq-section__inner {
        width: calc(100% - 32px);
    }


    .faq-section__title {
        margin-bottom: 32px;

        font-size: 30px;
    }

    .faq-accordion{
        padding-bottom:48px;
    }


    .faq-accordion__question {
        min-height: 58px;

        padding:
            14px
            42px
            14px
            12px;
    }


    .faq-accordion__question-text {
        font-size: 15px;
        line-height: 1.45;
    }


    .faq-accordion__icon {
        right: 8px;

        width: 22px;
        height: 22px;
    }


    .faq-accordion__answer-inner {
        padding:
            12px
            12px
            22px;
    }


    .faq-accordion__answer p {
        font-size: 15px;
        line-height: 1.55;
    }
}
/* =========================================================
   TAKE THE FIRST STEP
========================================================= */

.first-step-section {
    width: 100%;

    padding: 60px 0;

    box-sizing: border-box;

    background: #f5f5f5;
}


.first-step-section__inner {
    display: grid;

    grid-template-columns:
        minmax(0, 528px)
        minmax(420px, 535px);

    width: calc(100% - 48px);
    max-width: 1216px;

    min-height: 269px;

    margin: 0 auto;

    align-items: center;

    gap: 153px;
}


/* =========================================================
   FIRST STEP CONTENT
========================================================= */

.first-step-section__content {
    width: 100%;
}


.first-step-section__title {
    margin: 0 0 16px;

    color: #002347;

    font-family: "Open Sans", sans-serif;
    font-size: 40px;
    font-weight: 500;
    line-height: 1.3;
}


.first-step-section__description {
    max-width: 528px;

    margin: 0;

    color: rgba(0, 35, 71, 0.7);

    font-family: "Open Sans", sans-serif;
    font-size: 18px;
    font-weight: 300;
    line-height: 1.4;
}


/* =========================================================
   FORM CARD
========================================================= */

.first-step-form-card {
    width: 100%;

    min-width: 0;

    background: #ffffff;

    box-shadow:
        0 12px 35px rgba(0, 35, 71, 0.06);
}


.first-step-form-card__header {
    display: flex;

    min-height: 79px;

    padding: 24px;

    box-sizing: border-box;

    align-items: center;

    border-bottom: 1px solid #d5d7da;
}


.first-step-form-card__title {
    margin: 0;

    color: #000000;

    font-family: "Open Sans", sans-serif;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.3;
}


/* =========================================================
   FORM
========================================================= */

.first-step-form {
    display: flex;

    width: 100%;

    padding: 24px;

    box-sizing: border-box;

    flex-direction: column;

    gap: 24px;
}


.first-step-form__row {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 24px;
}


.first-step-form__field {
    position: relative;

    display: flex;

    min-width: 0;

    flex-direction: column;

    gap: 6px;
}


.first-step-form__label {
    color: #414651;

    font-family: "Open Sans", sans-serif;
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
}


.first-step-form__label span {
    color: #002347;
}


/* =========================================================
   INPUT
========================================================= */

.first-step-form__input {
    display: block;

    width: 100%;
    height: 40px;

    padding: 8px 12px;

    box-sizing: border-box;

    color: #002347;

    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 300;
    line-height: 24px;

    background: #ffffff;

    border: 1px solid #d5d7da;
    border-radius: 8px;

    box-shadow:
        0 1px 2px rgba(10, 13, 18, 0.05);

    outline: none;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}


.first-step-form__input::placeholder {
    color: rgba(0, 35, 71, 0.6);

    opacity: 1;
}


.first-step-form__input:focus {
    border-color: #002347;

    box-shadow:
        0 0 0 3px rgba(0, 35, 71, 0.1);
}


.first-step-form__input.is-invalid {
    border-color: #b42318;

    background: #fffafa;

    box-shadow:
        0 0 0 3px rgba(180, 35, 24, 0.08);
}


/* =========================================================
   ERROR
========================================================= */

.first-step-form__error {
    display: block;

    color: #b42318;

    font-family: "Open Sans", sans-serif;
    font-size: 12px;
    font-weight: 300;
    line-height: 1.35;
}


.first-step-form__error:empty {
    display: none;
}


/* =========================================================
   BUTTON
========================================================= */

.first-step-form__submit {
    display: flex;

    width: 100%;
    min-height: 56px;

    padding: 16px 32px;

    box-sizing: border-box;

    align-items: center;
    justify-content: center;

    color: #000000;

    background: #e8ae00;

    border: 0;
    border-radius: 4px;

    cursor: pointer;

    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;

    transition:
        background-color 0.2s ease,
        transform 0.2s ease,
        opacity 0.2s ease;
}


.first-step-form__submit:hover {
    background: #f0b600;
}


.first-step-form__submit:active {
    transform: translateY(1px);
}


.first-step-form__submit:focus-visible {
    outline: 3px solid rgba(232, 174, 0, 0.35);
    outline-offset: 3px;
}


.first-step-form__submit:disabled {
    cursor: not-allowed;

    opacity: 0.7;
}


.first-step-form__loader {
    display: none;

    width: 18px;
    height: 18px;

    box-sizing: border-box;

    border: 2px solid rgba(0, 0, 0, 0.25);
    border-top-color: #000000;
    border-radius: 50%;

    animation:
        first-step-loader-spin 0.7s linear infinite;
}


.first-step-form__submit.is-loading
.first-step-form__submit-text {
    display: none;
}


.first-step-form__submit.is-loading
.first-step-form__loader {
    display: block;
}


@keyframes first-step-loader-spin {

    to {
        transform: rotate(360deg);
    }
}


/* =========================================================
   FORM NOTICES
========================================================= */

.first-step-form__notice {
    margin: 20px 24px 0;
    padding: 12px 14px;

    font-family: "Open Sans", sans-serif;
    font-size: 13px;
    font-weight: 300;
    line-height: 1.5;

    border-radius: 4px;
}


.first-step-form__notice--success {
    color: #075e35;

    background: #ecfdf3;

    border: 1px solid #abefc6;
}


.first-step-form__notice--error {
    color: #912018;

    background: #fef3f2;

    border: 1px solid #fecdca;
}


/* =========================================================
   SITE FOOTER
========================================================= */

.site-footer {
    width: 100%;

    min-height: 309px;

    padding: 30px 0 70px;

    box-sizing: border-box;

    background: #ffffff;

    border-top: 1px solid #cecfcf;
}


/* =========================================================
   FOOTER LOGO
========================================================= */

.site-footer__logo-wrapper {
    display: flex;

    width: 100%;
    min-height: 111px;

    padding: 0 24px 30px;

    box-sizing: border-box;

    align-items: center;
    justify-content: center;

    border-bottom: 1px solid #cecfcf;
}


.site-footer__logo-link {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    color: #002347;

    text-decoration: none;
}


.site-footer__logo-image {
    display: block;

    width: auto;
    max-width: 238px;
    height: auto;
    max-height: 80px;

    object-fit: contain;
}


.site-footer__logo-fallback {
    display: flex;

    flex-direction: column;

    align-items: center;
    justify-content: center;

    color: #002347;
}


.site-footer__logo-name {
    font-family: "Open Sans", sans-serif;
    font-size: 38px;
    font-weight: 500;
    line-height: 0.9;
    letter-spacing: -1.5px;
}


.site-footer__logo-subtitle {
    margin-top: 3px;

    font-family: "Open Sans", sans-serif;
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
}


/* =========================================================
   FOOTER NAVIGATION
========================================================= */

.site-footer__navigation {
    display: flex;

    width: calc(100% - 48px);
    max-width: 900px;

    margin: 67px auto 0;

    align-items: center;
    justify-content: center;
}


.site-footer__menu {
    display: flex;

    margin: 0;
    padding: 0;

    align-items: center;
    justify-content: center;

    gap: 28px;

    list-style: none;
}


.site-footer__menu-item {
    margin: 0;
    padding: 0;
}


.site-footer__menu-link {
    position: relative;

    display: inline-block;

    color: #8a6700;

    font-family: "Open Sans", sans-serif;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.6;

    text-decoration: none;

    transition:
        color 0.2s ease;
}


.site-footer__menu-link::after {
    position: absolute;

    right: 0;
    bottom: -3px;
    left: 0;

    display: block;

    height: 1px;

    content: "";

    background: currentColor;

    transform: scaleX(0);
    transform-origin: right center;

    transition:
        transform 0.25s ease;
}


.site-footer__menu-link:hover {
    color: #002347;
}


.site-footer__menu-link:hover::after,
.site-footer__menu-link:focus-visible::after {
    transform: scaleX(1);
    transform-origin: left center;
}


.site-footer__menu-link:focus-visible {
    outline: 2px solid #8a6700;
    outline-offset: 5px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1100px) {

    .first-step-section__inner {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(410px, 535px);

        gap: 64px;
    }


    .first-step-section__title {
        font-size: 34px;
    }


    .site-footer__menu {
        gap: 22px;
    }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 850px) {

    .first-step-section {
        padding: 70px 0;
    }


    .first-step-section__inner {
        grid-template-columns: 1fr;

        width: calc(100% - 32px);

        gap: 40px;
    }


    .first-step-section__content {
        max-width: 600px;
    }


    .first-step-section__title {
        font-size: 32px;
    }


    .first-step-section__description {
        font-size: 16px;
    }


    .site-footer {
        padding-bottom: 55px;
    }


    .site-footer__navigation {
        margin-top: 50px;
    }


    .site-footer__menu {
        flex-wrap: wrap;

        gap: 16px 26px;
    }
}


@media (max-width: 600px) {

    .first-step-section {
        padding: 55px 0;
    }


    .first-step-form-card__header {
        min-height: auto;

        padding: 20px;
    }


    .first-step-form-card__title {
        font-size: 21px;
    }


    .first-step-form {
        padding: 20px;
    }


    .first-step-form__row {
        grid-template-columns: 1fr;

        gap: 18px;
    }


    .site-footer__logo-wrapper {
        min-height: 105px;
    }


    .site-footer__logo-name {
        font-size: 32px;
    }


    .site-footer__logo-subtitle {
        font-size: 17px;
    }


    .site-footer__navigation {
        width: calc(100% - 32px);

        margin-top: 42px;
    }


    .site-footer__menu {
        gap: 14px 20px;
    }


    .site-footer__menu-link {
        font-size: 14px;
    }
}

/* Отступ между формой заявки и футером */
.site-footer {
    margin-top: 80px;
}

/* =========================================================
   FINAL MOBILE OVERRIDES — FIGMA 375/376
========================================================= */

@media (max-width: 600px) {

    /* RECORDS */
    .records-section,
    .records-section * {
        box-sizing: border-box;
    }

    .records-section__inner {
        width: 100%;
        min-height: 0;
        margin: 0;
        padding: 40px 16px 80px;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }

    .records-section__content {
        width: 100%;
        max-width: 343px;
        margin: 0 auto;
        gap: 40px;
    }

    .records-section__copy {
        gap: 16px;
    }

    .records-section__title {
        font-size: 28px;
        font-weight: 500;
        line-height: 130%;
    }

    .records-section__description {
        color: rgba(0, 35, 71, 0.8);
        font-size: 15px;
        font-weight: 300;
        line-height: 150%;
    }

    .records-section__list-block {
        width: 100%;
        max-width: 348px;
        gap: 19px;
    }

    .records-section__list-title {
        font-size: 17px;
        font-weight: 500;
        line-height: 130%;
    }

    .records-section__list {
        gap: 16px;
    }

    .records-section__list-item {
        gap: 12px;
        font-size: 15px;
        font-weight: 300;
        line-height: 150%;
    }

    .records-section__check {
        width: 24px;
        height: 24px;
        flex-basis: 24px;
    }

    .records-lookup {
        width: calc(100% + 8px);
        max-width: 351px;
        height: 668px;
        min-height: 668px;
        margin: 0 -4px;
        padding: 12px;
        flex-basis: auto;
        border: 1px solid #d5d7da;
    }

    .records-lookup__search-area {
        padding-bottom: 12px;
    }

    .records-lookup__filters-wrapper {
        margin-top: 12px;
    }

    .records-lookup__grid {
        margin-top: 16px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-auto-rows: 138px;
        gap: 8px;
        max-height: 504px;
    }

    .records-card {
        height: 138px;
        padding: 12px;
        gap: 12px;
    }

    .records-card__content {
        height: auto;
        gap: 6px;
    }

    .records-card__name,
    .records-card__years {
        font-size: 14px;
        font-weight: 500;
        line-height: 20px;
    }

    .records-card__button {
        height: 36px;
        padding: 8px 12px;
        font-size: 14px;
        font-weight: 500;
        line-height: 20px;
    }

    /* CONSULTATION */
    .consultation-section {
        width: 100%;
        padding: 40px 16px 17px;
        background: #002347;
    }

    .consultation-section__inner {
        width: 100%;
        max-width: 344px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }

    .consultation-section__content {
        width: 100%;
        padding: 0;
    }

    .consultation-section__title {
        margin: 0 0 16px;
        font-size: 28px;
        font-weight: 500;
        line-height: 130%;
    }

    .consultation-section__description {
        max-width: none;
        margin: 0;
        font-size: 15px;
        font-weight: 300;
        line-height: 150%;
    }

    .consultation-form-card {
        width: calc(100% - 1px);
        min-height: 828px;
        margin-left: 0;
        box-shadow: none;
    }

    .consultation-form-card__header {
        min-height: 46px;
        padding: 12px;
    }

    .consultation-form-card__title {
        font-size: 17px;
        font-weight: 500;
        line-height: 130%;
    }

    .consultation-form {
        padding: 24px 12px 12px;
        gap: 24px;
    }

    .consultation-form__fields {
        gap: 24px;
    }

    .consultation-form__row {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .consultation-form__label,
    .consultation-form__choice-title {
        font-size: 14px;
        font-weight: 500;
        line-height: 20px;
    }

    .consultation-form__input,
    .consultation-form__textarea {
        font-size: 16px;
        font-weight: 300;
        line-height: 24px;
    }

    .consultation-form__contact-choice {
        gap: 6px;
    }

    .consultation-form__radio-text {
        font-size: 16px;
        font-weight: 300;
        line-height: 24px;
    }

    .consultation-form__submit {
        min-height: 52px;
        padding: 14px 23px;
        font-size: 14px;
        line-height: 24px;
    }

    /* FAQ */
    .faq-section {
        padding: 80px 0 0;
    }

    .faq-section__inner {
        width: 100%;
        max-width: 375px;
    }

    .faq-section__title {
        width: calc(100% - 32px);
        margin: 0 auto 48px;
        font-size: 28px;
        font-weight: 500;
        line-height: 130%;
        text-align: center;
    }

    .faq-accordion__question {
        min-height: 84px;
        padding: 18px 40px 18px 10px;
    }

    .faq-accordion__question-text {
        font-size: 18px;
        font-weight: 700;
        line-height: 32px;
    }

    .faq-accordion__icon {
        right: 10px;
        width: 24px;
        height: 48px;
    }

    .faq-accordion__icon::before {
        width: 17px;
        height: 2px;
    }

    .faq-accordion__icon::after {
        width: 2px;
        height: 17px;
    }

    .faq-accordion__item.is-open .faq-accordion__question {
        min-height: 100px;
    }

    .faq-accordion__answer-inner {
        padding: 12px 20px 18px;
    }

    .faq-accordion__answer p {
        font-size: 15px;
        font-weight: 300;
        line-height: 150%;
    }

    /* FIRST STEP */
    .first-step-section {
        padding: 40px 16px;
        background: #f5f5f5;
    }

    .first-step-section__inner {
        width: 100%;
        max-width: 343px;
        min-height: 0;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 40px;
    }

    .first-step-section__content {
        width: 100%;
        max-width: none;
    }

    .first-step-section__title {
        margin: 0 0 16px;
        font-size: 28px;
        font-weight: 500;
        line-height: 130%;
    }

    .first-step-section__description {
        max-width: none;
        font-size: 15px;
        font-weight: 300;
        line-height: 150%;
    }

    .first-step-form-card {
        width: 100%;
        min-height: 314px;
        box-shadow: none;
    }

    .first-step-form-card__header {
        min-height: 46px;
        padding: 12px;
    }

    .first-step-form-card__title {
        font-size: 17px;
        font-weight: 500;
        line-height: 130%;
    }

    .first-step-form {
        padding: 24px 12px 12px;
        gap: 24px;
    }

    .first-step-form__row {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .first-step-form__label {
        font-size: 14px;
        font-weight: 500;
        line-height: 20px;
    }

    .first-step-form__input {
        font-size: 16px;
        font-weight: 300;
        line-height: 24px;
    }

    .first-step-form__submit {
        min-height: 52px;
        padding: 14px 23px;
        font-size: 14px;
        line-height: 24px;
    }

    /* FOOTER */
    .site-footer {
        min-height: 273px;
        margin-top: 0;
        padding: 0 0 43px;
        border-top: 1px solid #cecfcf;
    }

    .site-footer__logo-wrapper {
        min-height: 113px;
        padding: 18px 24px;
    }

    .site-footer__logo-image {
        max-width: 220px;
        max-height: 76px;
    }

    .site-footer__logo-name {
        font-size: 32px;
        font-weight: 500;
    }

    .site-footer__logo-subtitle {
        font-size: 17px;
        font-weight: 300;
    }

    .site-footer__navigation {
        width: calc(100% - 24px);
        max-width: 351px;
        margin: 40px auto 0;
    }

    .site-footer__menu {
        flex-wrap: wrap;
        justify-content: center;
        gap: 24px;
    }

    .site-footer__menu-link {
        font-size: 16px;
        font-weight: 500;
        line-height: 26px;
    }
}

@media (max-width: 380px) {
    .records-lookup {
        width: 100%;
        margin: 0;
    }

    .records-card {
        padding: 10px;
    }

    .records-card__name,
    .records-card__years {
        font-size: 13px;
    }
}