@font-face {
	font-family: 'GolosText';
	src: url('../fonts/Golos_Text/static/GolosText-SemiBold.ttf') format('truetype');
	font-weight: 600;
	font-style: normal;
}

@font-face {
  font-family: 'Inter';
  src: url('../fonts/Inter/Inter-VariableFont_opsz,wght.ttf') format('truetype');
  font-weight: 100 900; 
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: 'Jost';
  src: url('../fonts/Jost/Jost-Italic-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900; 
  font-display: swap;
  font-style: normal;
}

@font-face {
  font-family: 'Stolzl';
  src: url('../fonts/Stolzl/stolzl_medium.otf') format('truetype');
  font-weight: 500; 
  font-style: normal;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Inter', sans-serif;
    font-weight: 400;   
    font-optical-sizing: auto;  
}

html,
body {
    width: 100%;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
}
html {
  font-size: 16px; 
}

body {
    background-color: #73B6FF4D;
}


.container-wrapper__white {
    width: 100%;
    background-color: #FFFFFF;
}
.container {
    position: relative;
    max-width: 1330px;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    padding: 0 15px;
}

a, a:active, a:visited, a:hover {
    color: inherit;
}

header {
    padding-top: 60px;
    padding-bottom: 30px;
}
.header_logos {
    display: flex;
    gap: 25px;
    justify-content: flex-start;
}
.header_logos a {
    line-height: 100%;
    text-decoration: none;
}
.header_logo {
    height: 45px;
}

@media (max-width: 770px) {
    header {
        padding-top: 15px;
        padding-bottom: 25px;
    }
    .header_logos {
        gap: 15px;
        flex-wrap: wrap;
    }
    .header_logo {
        height: 30px;
    }
}

.header_texts {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;

    margin-top: 110px;
    margin-bottom: 65px;
}

.header_label {
    font-family: 'Stolzl', sans-serif;

    font-weight: 500;
    line-height: 120%;
    font-size: 80px;
    font-size: clamp(2rem, 1.1111rem + 4.4444vw, 5rem);
    color: #000000;

    white-space: nowrap;
}
.header_label-logo {
    height: 0.9em; 
    width: auto;
}
.header_label::after {
    content: "16-17 апреля";
    font-family: 'Inter', sans-serif;
    background-color: #73B6FF;
    padding: 7px 25px;
    font-weight: 700;
    color:#FFFFFF;
    font-size: 40px;
    font-size: clamp(1.25rem, 0.8796rem + 1.8519vw, 2.5rem);
    white-space: nowrap;
    vertical-align: middle;
    display: inline-block;
    margin-top: -10px;
    line-height: 100%;
    margin-left: clamp(0rem, -0.7407rem + 3.7037vw, 2.5rem);
}

.header_caption {
    font-weight: 400;
    line-height: 125%;
    font-size: 20px;
    font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
    color: #000000;

    width: 100%;
    max-width: 340px;
}
.header_caption span {
    font-weight: 600;
}
@media (max-width: 1070px) {
    .header_texts {
        flex-direction: column;
        gap: 40px;
        margin-top: 60px;
    }
}
@media (max-width: 770px) {
    .header_label::after {
        display: block;
        margin-top: 20px;
        margin-left: 0;
        width: max-content;
    }
}

.header_quot {
    background-image: url("../img/dragunovaEkaterina2.jpg");
    background-repeat: no-repeat;
    background-size: 100% 100%;

    padding: 15px 30px;
    
    height: 486px;
    width: 720px;
    
    display: flex;
    flex-direction: column;
    justify-content: flex-end;

    float: right;
}
.header_quot-text {
    font-weight: 300;
    line-height: 120%;
    font-family: 'Jost', sans-serif;
    font-style: italic;

    width: 65%;

    /* font-size: 36px; */
    font-size: clamp(1rem, 0.6296rem + 1.8519vw, 2.25rem);
    color: #050505;

    position: absolute;
    margin-top: 50px;
}
.header_quot-text span {
    background-color: #8F3FBA;
    color: #FFFFFF;
    font-weight: 300;
    line-height: 120%;
    font-family: 'Jost', sans-serif;
    font-style: italic;
    font-size: clamp(1rem, 0.6296rem + 1.8519vw, 2.25rem);
    display: inline-block;
    padding: 0 3px 2px 6px;
}

.header_quot-author {
    font-weight: 400;
    line-height: 100%;
    font-size: clamp(0.75rem, 0.6759rem + 0.3704vw, 1rem);
    color: #000000;

    width: 100%;
    max-width: 320px;
}
.header_quot-author span {
    font-weight: 600;
    display: block;
    padding-bottom: 6px;
}

@media (max-width: 770px) {
    .header_quot {
        background-image: url("../img/dragunovaEkaterina2.jpg");
        background-size: cover;
        background-position: top right 45%;

        padding: 10px;
        
        height: 280px;
        width: 90%;
    }
    .header_quot-text {
        width: 60%;
        padding: 10px;
        margin-top: -40px;
    }
    .header_quot-author {
        max-width: 190px;
    }
}

.header-btn {
    font-weight: 400;
    line-height: 100%;
    font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
    color: #FFFFFF !important;
    padding: 18px 80px;
    border: 1px solid #08A1CB;
    background-color: #73B6FF;
    border-radius: 100px;
    cursor: pointer;
    outline: none;
    display: block;
    width:fit-content;
    margin-top: -60px;
    margin-bottom: 65px;
    white-space: nowrap;
    text-decoration: none;
    box-shadow: 0px 4px 4px 0px #00000040;
}
@media (max-width: 1115px) {
    .header-btn {
        margin-top: 30px;
    }
}
@media (max-width: 770px) {
    .header-btn {
        padding: 15px 45px;
        margin-bottom: 60px;
    }
}



.section-title {
    display: flex;
    align-items: center;
    gap: 110px;
}
.section-title .section-label {
    font-weight: 600;
    line-height: 120%;
    font-family: 'GolosText', sans-serif;
    font-size: clamp(1.25rem, 0.9537rem + 1.4815vw, 2.25rem);
    color: #000000;
    white-space: nowrap;
    flex-shrink: 0;
}
.section-line {
    flex-grow: 1;
    height: 1px;
    background-color: #090909;
}

@media (max-width: 770px) {
    .section-title {
        gap: 30px;
    }
}




.speakers {
    /* margin: 30px 0 60px; */
    padding: 45px 0;
}
.speakers-caption {
    font-weight: 400;
    line-height: 110%;
    font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
    color: #000000;
    width: 100%;
    max-width: 445px;
}
.speakers-caption span {
    background-color: #BA70D6;
    padding: 0 3px;
}

.speakers-list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 5%;
}
.speaker-item {
    /* max-width: 282px; */
    width: 21%;
    display: flex;
    flex-direction: column;
    margin-top: 65px;
}
.speaker-item__photo {
    max-width: 225px;
    width: 100%;
    align-self: flex-end;
}
.speaker-item__name {
    font-weight: 600;
    line-height: 120%;
    font-size: clamp(1.125rem, 1.088rem + 0.1852vw, 1.25rem);
    color: #141414;
    margin-bottom: 10px;
    text-transform: uppercase;
    margin-top: -15px;
    position: relative;
    z-index: 5;
}
.speaker-item__name::after {
    background-color: #BA70D6;
    height: 1em;
    width: 85%;
    position: absolute;
    content: "";
    right: 0;
    z-index: -1;
}
.speaker-item__job {
    font-weight: 400;
    line-height: 110%;
    font-size: clamp(0.75rem, 0.6944rem + 0.2778vw, 0.9375rem);
    color: #141414;
}
@media (max-width: 1200px) {
    .speaker-item__name {
        margin-top: 5px;
    }
}

@media (max-width: 850px) {
    
    .speaker-item__name {
        margin-top: -5px;
        margin-bottom: 5px;
    }
    .speakers-list {
        column-gap: 10%;
        justify-content: center;
    }
    .speaker-item {
        width: 45%;
        margin-top: 35px;
    }
    .speaker-item__photo {
        width: 75%;
    }
}

@media (max-width: 770px) {
    .speakers {
        /* margin: 30px 0 35px; */
        padding: 35px 0;
    }
}

.programms {
    padding: 30px 0 50px; 
}


.programms-list {
    display: flex;
    flex-direction: row;
    gap: 100px;
    align-items: stretch;
    justify-content: space-between;
    margin: 100px 0 85px;
}
.programms-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    flex: 1;

    background-color: #FCFCFC;
    border: 1px solid #000000;
    border-radius: 35px;

    gap: 40px;
    padding: 50px 50px 20px 50px;
}
.programms-item__btn {
    font-weight: 300;
    line-height: 100%;
    font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
    color: #FFFFFF !important;
    width: fit-content;
    padding: 12px 60px;
    border: 1px solid #BA70D6;
    background-color: #BA70D6;
    border-radius: 100px;
    cursor: pointer;
    outline: none;
    display: block;
    margin-top: -90px;
    white-space: nowrap;
    box-shadow: 0px 4px 4px 0px #00000040;
    text-decoration: none;
    text-align: center;
}
.programms-item__caption {
    font-weight: 600;
    line-height: 100%;
    font-size: clamp(1.125rem, 1.088rem + 0.1852vw, 1.25rem);
    color: #000000;
    margin-bottom: 10px;
}
.programms-item__list {
    font-weight: 400;
    line-height: 140%;
    font-size: clamp(1.125rem, 1.088rem + 0.1852vw, 1.25rem);
    color: #000000;
    margin-left: 20px;
}
.programms-item__link {
    font-weight: 600;
    line-height: 100%;
    font-size: clamp(1.125rem, 1.088rem + 0.1852vw, 1.25rem);
    color: #BA70D6 !important;
    text-transform: uppercase;
    text-decoration: underline;
    align-self: flex-end;
}

.programms-item:nth-of-type(2) .programms-item__btn {
    border: 1px solid #73B6FF;
    background-color: #73B6FF;
}
.programms-item:nth-of-type(2) .programms-item__link  {
    color: #73B6FF !important;
}


@media (max-width: 915px) {
    .programms-list {
        gap: 50px;
    }
}


.programms-item__btn {
    font-weight: 300;
    line-height: 100%;
    font-size: clamp(1rem, 0.9259rem + 0.3704vw, 1.25rem);
    color: #FFFFFF !important;
    width: fit-content;
    padding: 12px 60px;
    border: 1px solid #BA70D6;
    background-color: #BA70D6;
    border-radius: 100px;
    cursor: pointer;
    outline: none;
    display: block;
    margin-top: -90px;
    white-space: nowrap;
    box-shadow: 0px 4px 4px 0px #00000040;
    text-decoration: none;
    text-align: center;
}


@media (max-width: 870px) {
    .programms {
        padding: 25px 0 30px; 
    }
    .programms-list {
        flex-direction: column;
        gap: 80px;
        margin: 80px 0 60px;
    }
    .programms-item {
        gap: 30px;
        padding: 40px 40px 20px 30px;
    }
    .programms-item__btn {
        padding: 11px 50px;
        margin-top: -75px;
    }

}




.places {
    padding: 90px 0 80px;
}

.places-list {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row;
    gap: 45px;
}
.places-item {
    flex: 1;
}
.places-item__img {
    width: 100%;
    margin-bottom: 18px;
}
.places-item__caption {
    font-weight: 400;
    line-height: 120%;
    font-size: clamp(1.125rem, 1.0509rem + 0.3704vw, 1.375rem);
    color: #000000;
}
.places-item__point {
    height: 1.3em;
    vertical-align: middle;
    margin-top: -10px;
}
@media (max-width: 770px) {
    .places {
        padding: 45px 0 40px;
    }
    .places-list {
        flex-direction: column;
        gap: 40px;
    }
    .places-item__img {
        width: 100%;
        margin-bottom: 12px;
    }
}

footer {
    border-top: 1px solid #000000;
    padding: 30px 0 110px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: row;
    gap: 50px;
    margin-top: 80px;
}
.footer-texts {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.footer-texts__contacts {
    font-weight: 400;
    line-height: 110%;
    font-size: clamp(1.25rem, 0.9537rem + 1.4815vw, 2.25rem);
    color: #000000;
}
.footer-texts__email {
    font-weight: 300;
    line-height: 100%;
    font-size: clamp(1.125rem, 0.8657rem + 1.2963vw, 2rem);
    color: #000000;
    margin-bottom: 20px;
}
.footer-texts__email a {
    font-weight: 300;
    text-decoration: none;
}
.footer-texts__phone {
    font-weight: 300;
    line-height: 100%;
    font-size: clamp(1.125rem, 0.8657rem + 1.2963vw, 2rem);
    color: #000000;
}
.footer-texts__organizations {
    font-weight: 400;
    line-height: 130%;
    font-size: clamp(0.9375rem, 0.919rem + 0.0926vw, 1rem);
    color: #050505;
}

.footer-socials {
    display: flex;
    gap: 15px;
    flex-direction: row;
}
.footer-socials__icon {
    width: 70px;
}

@media (max-width: 770px) {
    footer {
        border-top: 1px solid #000000;
        padding: 30px 0 50px;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        flex-direction: row;
        flex-direction: column;
        gap: 30px;
        margin-top: 50px;
    }
    .footer-texts__email {
        margin-bottom: 10px;
    }
    .footer-socials__icon {
        width: 40px;
    }
}