/* Сброс стилей и базовые настройки */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: 'Montserrat', sans-serif;
    overflow-x: auto;
    overflow-y: auto;
    background: white;
}

.container {
    position: relative;
    width: 1920px;
    height: 3932px;
    background: white;
}

/* Фоновые блоки */
.bg-block {
    position: absolute;
}

.bg-block1 {
    top: 2245px;
    left: 0;
    width: 1920px;
    height: 930px;
    background: #374e39;
}

.bg-block2 {
    top: 912px;
    left: 1px;
    width: 1920px;
    height: 328px;
    background: #050505;
}

.bg-block3 {
    top: 0;
    left: 1px;
    width: 1920px;
    height: 912px;
    background: #374e39;
}

/* Шапка с логотипом */
.header-section {
    position: absolute;
    top: 34px;
    left: 1px;
    width: 1922px;
    height: 2211px;
}

.vector1 {
    position: absolute;
    top: 2px;
    left: 41px;
    width: 58px;
    height: 60px;
}

.header-logo {
    position: absolute;
    top: 0;
    left: 114px;
    font-family: 'AmoreCTT-Regular', Helvetica;
    color: #e0dac8;
    font-size: 48px;
    font-weight: normal;
    line-height: normal;
    letter-spacing: 0;
}

/* Нижний логотип */
.footer-logo-section {
    position: absolute;
    top: 1273px;
    left: 11px;
    width: 476px;
    height: 75px;
    display: flex;
    gap: 14.9px;
    align-items: center;
}

.logo-icon {
    width: 58.24px;
    height: 60.3px;
    margin-top: 7.8px;
    margin-left: -1.1px;
}

.footer-logo-text {
    width: 402px;
    height: 75px;
    font-family: 'AmoreCTT-Regular', Helvetica;
    color: #050505;
    font-size: 48px;
    font-weight: normal;
    line-height: normal;
    letter-spacing: 0;
}

/* PORTFOLIO текст с обводкой */
.portfolio-stroke-container {
    position: absolute;
    top: 390px;
    left: 408px;
    width: 1111px;
    height: 617px;
}

.portfolio-stroke {
    position: absolute;
    width: 1104px;
    font-family: 'Lakki_Reddy-Regular', Helvetica;
    font-weight: normal;
    font-size: 210px;
    letter-spacing: 0;
    line-height: normal;
    white-space: nowrap;
    -webkit-text-stroke: 3px #f6c55a;
    color: transparent;
}

.stroke1 {
    top: -3px;
    left: -0.5px;
}

.stroke2 {
    top: 398px;
    left: -3px;
}

.stroke3 {
    top: 196px;
    left: -3px;
}

/* Основной PORTFOLIO текст */
.portfolio-main-text {
    position: absolute;
    top: 198px;
    left: 409px;
    width: 1104px;
    font-family: 'Lakki_Reddy-Regular', Helvetica;
    font-weight: normal;
    font-size: 210px;
    letter-spacing: 0;
    line-height: normal;
    white-space: nowrap;
    color: #e0dac8;
}

/* Фото и векторы */
.mask-group {
    position: absolute;
    top: 299px;
    left: 169px;
    width: 690px;
    height: 776px;
}

.vector-icon {
    position: absolute;
}

.vector2 {
    top: 438px;
    left: 126px;
    width: 60px;
    height: 61px;
}

.vector4 {
    top: 1037px;
    left: 831px;
    width: 60px;
    height: 61px;
}

.vector3 {
    top: 346px;
    left: 142px;
    width: 98px;
    height: 94px;
}

/* Контактный блок */
.contact-box {
    position: absolute;
    top: 540px;
    left: 1153px;
    width: 359px;
    height: 272px;
    background: #374e39;
}

.contact-info {
    position: absolute;
    top: 606px;
    left: 1229px;
    width: 283px;
    font-family: 'Montserrat', sans-serif;
    font-size: 27px;
    letter-spacing: 0;
    line-height: normal;
    color: #fbf8ee;
}

.medium {
    font-weight: 500;
}

.regular {
    font-weight: 400;
}

/* About me */
.about-me {
    position: absolute;
    top: 967px;
    left: 58px;
    width: 403px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 20px;
    letter-spacing: 0;
    line-height: normal;
    color: #e0dac8;
}

/* Круг для скролла */
.scroll-circle {
    position: absolute;
    top: 1131px;
    left: 865px;
    width: 190px;
    height: 190px;
    background: #fdad14;
    border-radius: 95px;
}

.scroll-text {
    position: absolute;
    top: 1193px;
    left: 891px;
    width: 140px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 24px;
    text-align: center;
    line-height: 36px;
    letter-spacing: 0;
    color: black;
}

/* RESUME текст с обводкой */
.resume-container {
    position: absolute;
    width: 39.88%;
    height: 15.66%;
    top: 54.76%;
    left: 54.84%;
}

.resume-stroke {
    position: absolute;
    font-family: 'Lakki_Reddy-Regular', Helvetica;
    font-weight: normal;
    font-size: 180px;
    letter-spacing: 0;
    line-height: normal;
    -webkit-text-stroke: 3px #f6c55a;
    color: transparent;
}

.resume1 {
    width: 99.09%;
    height: 24.10%;
    top: 0;
    left: 0;
    white-space: nowrap;
}

.resume2 {
    width: 90.64%;
    height: 48.55%;
    top: 50.96%;
    left: 0;
}

.resume3 {
    width: 99.09%;
    height: 24.10%;
    top: 25.24%;
    left: 0;
    white-space: nowrap;
}

/* Основной контент */
.hello-text {
    position: absolute;
    top: 1492px;
    left: 203px;
    width: 603px;
    font-family: 'AmoreCTT-Regular', Helvetica;
    color: #463c2f;
    font-size: 96px;
    line-height: 167.8px;
    font-weight: normal;
    letter-spacing: 0;
    text-shadow: 0px 0px 0px 4px #00000040;
}

.about-text {
    position: absolute;
    top: 1847px;
    left: 220px;
    width: 595px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 27px;
    line-height: 35.4px;
    letter-spacing: 0;
    color: #463c2f;
}

/* Серая рамка и круг */
.gray-frame {
    position: absolute;
    top: 1639px;
    left: 1127px;
    width: 530px;
    height: 458px;
    background: #374e39;
}

.gray-circle {
    position: absolute;
    top: 1686px;
    left: 1185px;
    width: 340px;
    height: 340px;
    background: #f7f1e6;
    border-radius: 170px;
}

/* Фото */
.foto {
    position: absolute;
    top: 1456px;
    left: 931px;
    width: 738px;
    height: 712px;
    aspect-ratio: 1.04;
    object-fit: cover;
}

/* Контакты блок */
.contacts-dark-box {
    position: absolute;
    top: 2097px;
    left: 1127px;
    width: 530px;
    height: 265px;
    background: #222222;
}

.contacts-title {
    position: absolute;
    top: 2127px;
    left: 1236px;
    width: 289px;
    font-family: 'AmoreCTT-Regular', Helvetica;
    color: white;
    font-size: 50px;
    line-height: 65.5px;
    font-weight: normal;
    letter-spacing: 0;
}

/* Векторы (скрытые) */
.hidden-vector {
    position: absolute;
    width: 0;
    height: 0;
}

.vector-single {
    top: 58.55%;
    left: 64.17%;
}

.vector-six {
    top: 56.15%;
    left: 64.01%;
}

.vector-five {
    top: 57.48%;
    left: 64.01%;
}

/* Контактная информация */
.contact-location {
    position: absolute;
    top: 2210px;
    left: 1268px;
    width: 224px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 31.5px;
    letter-spacing: 0;
    color: white;
}

.contact-number {
    position: absolute;
    top: 2295px;
    left: 1268px;
    width: 224px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 31.5px;
    letter-spacing: 0;
    color: white;
}

.contact-email {
    position: absolute;
    top: 2255px;
    left: 1269px;
    width: 267px;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 31.5px;
    letter-spacing: 0;
    color: white;
}

/* Прямоугольники */
.rectangle {
    position: absolute;
}

.rectangle34 {
    top: 1980px;
    left: 1455px;
    width: 290px;
    height: 92px;
}

.rectangle35 {
    top: 1793px;
    left: 1010px;
    width: 372px;
    height: 93px;
}

/* Даты */
.date-text {
    position: absolute;
    top: 1815px;
    left: 1077px;
    width: 238px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 27px;
    text-align: center;
    line-height: 35.4px;
    letter-spacing: 0;
    color: black;
}

.country-text {
    position: absolute;
    top: 1986px;
    left: 1481px;
    width: 238px;
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 400;
    font-size: 27px;
    text-align: center;
    line-height: 35.4px;
    letter-spacing: 0;
    color: black;
}

/* Шрифты (если кастомные) */
@font-face {
    font-family: 'AmoreCTT-Regular';
    src: url('./fonts/AmoreCTT-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Lakki_Reddy-Regular';
    src: url('./fonts/LakkiReddy-Regular.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}
