*{
    box-sizing:border-box
}

html,
body{
    width:100%;
    min-width:320px;
    margin:0;
    overflow-x:hidden
}

.mode-info-page{
    width:min(1560px,calc(100% - 40px));
    margin:0 auto;
    padding:44px 0 90px;
    color:#1d211e
}

.mode-info-hero{
    display:grid;
    grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);
    gap:16px;
    margin-bottom:18px
}

.mode-info-hero-main,
.mode-info-hero-side{
    border-radius:26px;
    min-width:0
}

.mode-info-hero-main{
    padding:clamp(28px,4vw,58px);
    background:#182019;
    color:#fff
}

.mode-info-hero-side{
    padding:clamp(24px,3vw,38px);
    background:#e8efe3;
    border:1px solid #d6e0d1;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:26px
}

.mode-kicker{
    display:block;
    margin-bottom:9px;
    font-size:11px;
    font-weight:900;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:#96b68a
}

.mode-info-hero h1{
    margin:0 0 16px;
    max-width:1000px;
    font-size:clamp(50px,6vw,82px);
    line-height:.95;
    letter-spacing:-.055em
}

.mode-info-hero-main p{
    max-width:850px;
    margin:0;
    color:#d6ded7;
    font-size:17px;
    line-height:1.7
}

.mode-info-hero-side strong{
    display:block;
    font-size:28px;
    line-height:1.1
}

.mode-info-hero-side p{
    margin:8px 0 0;
    color:#586358;
    line-height:1.6
}

.mode-info-layout{
    display:grid;
    grid-template-columns:260px minmax(0,1fr);
    gap:18px;
    align-items:start
}

.mode-info-nav{
    position:sticky;
    top:20px;
    display:grid;
    gap:7px;
    padding:18px;
    border-radius:20px;
    border:1px solid #dfddd7;
    background:#fff
}

.mode-info-nav strong{
    margin-bottom:6px;
    font-size:12px;
    letter-spacing:.1em;
    text-transform:uppercase
}

.mode-info-nav a{
    display:block;
    padding:10px 11px;
    border-radius:10px;
    text-decoration:none;
    color:#343a34;
    font-size:14px;
    font-weight:800
}

.mode-info-nav a:hover{
    background:#edf2e9
}

.mode-info-card{
    min-width:0;
    padding:clamp(25px,4vw,48px);
    border:1px solid #dfddd7;
    border-radius:26px;
    background:#fff
}

.mode-info-card section{
    padding:0 0 28px;
    margin:0 0 28px;
    border-bottom:1px solid #e8e5df
}

.mode-info-card section:last-child{
    border-bottom:0;
    margin-bottom:0;
    padding-bottom:0
}

.mode-info-card h2{
    margin:0 0 10px;
    font-size:clamp(25px,3vw,34px);
    letter-spacing:-.035em
}

.mode-info-card h3{
    margin:20px 0 7px;
    font-size:19px
}

.mode-info-card p,
.mode-info-card li{
    color:#555e55;
    font-size:17px;
    line-height:1.72
}

.mode-info-card ul{
    padding-left:22px
}

.mode-info-note{
    padding:16px 18px;
    border-radius:16px;
    background:#edf3e9;
    border:1px solid #d8e4d3;
    color:#445143;
    line-height:1.6
}

.mode-date{
    display:inline-flex;
    margin-top:16px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.1);
    font-size:12px;
    font-weight:800
}


/* CONTACT */

.mode-contact-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-bottom:18px
}

.mode-contact-option{
    padding:22px;
    border:1px solid #dfddd7;
    border-radius:20px;
    background:#fff
}

.mode-contact-option:nth-child(1){
    background:#edf3e9
}

.mode-contact-option:nth-child(2){
    background:#eaf3f5
}

.mode-contact-option:nth-child(3){
    background:#f2ebf7
}

.mode-contact-option span,
.mode-contact-option strong{
    display:block
}

.mode-contact-option span{
    margin-bottom:6px;
    font-size:10px;
    font-weight:900;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#687469
}

.mode-contact-option strong{
    font-size:21px
}

.mode-contact-option p{
    margin:8px 0 0;
    color:#626962;
    line-height:1.5
}

.mode-contact-form{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:15px
}

.mode-contact-form label{
    display:grid;
    gap:7px;
    min-width:0;
    color:#303630;
    font-size:13px;
    font-weight:900
}

.mode-contact-form .full{
    grid-column:1/-1
}

.mode-contact-form input,
.mode-contact-form textarea{
    width:100%;
    min-width:0;
    max-width:100%;
    border:1px solid #d7d6d0;
    border-radius:14px;
    padding:13px 14px;
    background:#fff;
    color:#171a17;
    font:inherit;
    font-size:15px
}

.mode-contact-form input{
    min-height:48px
}

.mode-contact-form textarea{
    min-height:180px;
    resize:vertical
}

.mode-contact-button{
    min-height:50px;
    border:0;
    border-radius:13px;
    padding:12px 20px;
    background:#1b211c;
    color:#fff;
    font-size:15px;
    font-weight:900;
    cursor:pointer
}

.mode-message{
    margin-bottom:16px;
    padding:15px 17px;
    border-radius:15px;
    font-weight:800
}

.mode-message.good{
    background:#e6f3e7;
    color:#285236
}

.mode-message.bad{
    background:#fff0ed;
    color:#7b342c
}

.mode-related-links{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:20px
}

.mode-related-links a{
    display:inline-flex;
    min-height:42px;
    align-items:center;
    padding:8px 13px;
    border-radius:11px;
    border:1px solid #d9d7d2;
    background:#fff;
    color:#262b27;
    text-decoration:none;
    font-weight:850
}


@media(max-width:900px){

    .mode-info-hero,
    .mode-info-layout{
        grid-template-columns:1fr
    }

    .mode-info-nav{
        position:static;
        grid-template-columns:repeat(2,minmax(0,1fr))
    }

    .mode-info-nav strong{
        grid-column:1/-1
    }

    .mode-contact-grid{
        grid-template-columns:1fr
    }
}

@media(max-width:680px){

    .mode-info-page{
        width:calc(100% - 20px);
        padding-top:18px
    }

    .mode-info-hero-main,
    .mode-info-hero-side,
    .mode-info-card{
        border-radius:20px
    }

    .mode-info-hero h1{
        font-size:clamp(38px,12vw,52px)
    }

    .mode-info-nav{
        grid-template-columns:1fr
    }

    .mode-info-nav strong{
        grid-column:1
    }

    .mode-contact-form{
        grid-template-columns:1fr
    }

    .mode-contact-form .full{
        grid-column:1
    }

    .mode-contact-button{
        width:100%
    }
}
