@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('fonts/inter-cyrillic.woff2') format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('fonts/inter-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root{
   --yellow:#FF8E5E; 
   --white: #fff ;
   --mainBg: #1E1E1E;
   --blackLight: rgba(0, 0, 0, 0.2);
   --dark: #1D1E22;
   --yellowLight: #FFC5B2;
   --border: rgba(255, 255, 255, 0.05);
   --gray: rgba(255, 255, 255, 0.5);
}


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

/* -------------------------------- main classes  --------------------------*/
body{
    background: var(--mainBg);
    overflow-x: hidden;
    padding-top: 80px; /* Высота header + небольшой зазор */
}


  
a{
    text-decoration: none;
}
.container{
    max-width: 1200px;
    margin: 0 auto;
    padding:0 10px;
}
.wrapper{
    display: flex;
    justify-content: space-between;
    align-items:center ;
    flex-wrap: wrap;
}
ul , ol{
    list-style: none;
}
.btn{
    padding: 15px 25px;
    border-radius: 60px;
    background: transparent;
    border:none;
    font-weight: bold;
    cursor: pointer;
}
.btn.btn-white{
    color: var(--white);
    border:1px solid var(--white);
    transition: all 0.5s;
}
.btn.btn-white:hover{
    color: var(--dark);
    background-color: var(--white);
    cursor: pointer;
}
.btn.btn-yellow{
    color:var(--dark);
    background-color: var(--yellow);
    transition: all 0.5s;
}
.btn.btn-yellow:hover{
    color:var(--yellow);
    background-color: var(--yellowLight);
}
img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* header */
header{
    border: 1px solid var(--border);
    padding: 20px 0;
}
.socials{
    display:flex;
    align-items: center;
    gap: 20px;
}
.socials ul {
    display: flex;
    gap: 10px;
}
.socials ul svg path{
    fill: var(--white);
}
.socials ul li:hover svg path{
    fill: var(--yellow);
}


/* main */
main{
    padding: 30px 0;
}
.main__content--left{
    width: 35%;
}
.main__content--right{
    width: 40%;
}
.main__content--smallTitle{
    color: var(--gray);
}
.main__content--smallTitle span{
    font-size: 40px;
    font-weight: 900;
    color: var(--white);
}
.main__content--title{
    font-size: 48px;
    font-weight: 900;
    color:var(--yellow);
}
.main__content--body{
    color:var(--white);
    padding: 20px 0;
    font-weight: bold;
}

.banner{
    background-color: var(--white);
    padding: 20px 0;
    transform: rotate(-3deg);
    margin: 30px 0;
}

.banner__content ul {
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    gap: 50px;
    font-weight: bold;
    font-size: 20px;
    overflow-x: scroll;
    text-transform: uppercase;
}
.banner__content ul::-webkit-scrollbar{
    display: none;
}
.banner__content ul li {
    position: relative;
}
.banner__content ul li::after{
    content: '*';
    position:absolute ;
    top: 0;
    font-size: 26px;
    color: var(--yellow);
    right: -50%;
}

/* about */
.about__content--left , .about__content--right{
    width: 45%;
    color: var(--white);
    padding: 50px 0;
}
.about__content--body{
    padding: 20px 0;
}
.heading{
    font-size: 36px;
    font-weight: 900;
    color: var(--white);
}
.heading span{
    color:var(--yellow);
}
.about__content--lists{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 20px 30px;
    padding: 20px 0;
}
.about__content--lists li{
    padding-left: 40px;
    position: relative;
}
.about__content--lists li::after , .about__content--lists li::before{
    content: '';
    width: 15px;
    height: 15px;
    position: absolute;
    border-radius: 50%;
    top: 3px;
}
.about__content--lists li::before{
    background-color: var(--yellow);
    left:0;
}
.about__content--lists li::after{
    background-color: var(--yellowLight);
    left:10px;
}
.about__content--lists li:hover::before{
    background-color: var(--yellowLight);
}
.about__content--lists li:hover::after{
    background-color: var(--yellow);
}


/* cv */
.cv{
    padding: 50px 0;
}
.cv .wrapper{
    gap: 30px;
}
.cv__content--card{
    border: 1px solid var(--border);
    padding: 20px;
    border-radius: 20px;
    color: var(--white);
    width: 48%;
    transition: all 0.5s;
    cursor: pointer;
}
.cv__content--card:hover{
    transform: scale(1.05 , 1.05);
}
.cv__content--card table{
    width: 100%;
    color: var(--gray);
    padding: 5px 0;
}
.cv__content--title{
    font-size: 34px;
}
.cv__content--item{
    padding:20px 0;
    border-bottom: 1px solid var(--border);
}
.cv__content--item:last-child{
    border: none;
}


/* skill */
.skill{
    padding: 50px 0;
    background-size: cover;
    color: var(--white);
    position: relative;
    z-index: 0;
}
.skill::after{
    content: '';
    width: 100%;
    height:100%;
    position: absolute;
    top:0;
    left: 0;
    background:var(--blackLight);
    z-index: -1;
    /* backdrop-filter: blur(10px); */
}
.skill__content--card{
    width: 31%;
    position: relative;
    background-color: var(--blackLight);
    padding:20px;
    border-radius:  20px;
    z-index: 0;
    overflow: hidden;
    margin: 20px 0;
}
.skill__content--card::after{
    content: '';
    width: 2%;
    height:100%;
    position: absolute;
    top:0;
    left: 0;
    background-color: var(--yellow);
    transition: all 0.5s;
    z-index: -1;
}
.skill__content--card:hover::after{
    width: 100%;
}

/* portfolio */
.portfolio{
    padding: 50px 0;
}
.portfolio .wrapper{
    padding: 30px 0;
    gap: 30px ;
}
.portfolio__content--item{
    width: 270px;
    height:270px;
    border-radius: 10px;
    overflow: hidden;
}
.portfolio__content--item img{
    width:100%;
    height:auto;
    transition: all 10s ease;
}
.portfolio__content--item:hover img{
    transform: translateY(-80%);
}

/* footer */
footer{
    padding: 50px 0;
    background-color: var(--dark);
}
footer .wrapper{
    flex-direction: column;
    justify-content: center;
    width: 50%;
    text-align: center;
    margin: 0 auto;
}
footer h3{
    font-size: 26px;
    color: var(--white);
    margin-bottom: 20px;
}

/* copyright */
.copyright{
    padding: 20px 0;
    text-align: center;
    color: var(--gray);
}

/* media */
@media (max-width:768px){
    .wrapper{
        flex-wrap: wrap;
        gap: 20px;
    }
    .main__content--left , .main__content--right , .about__content--left , .about__content--right{
        width: 100%;
    }
    .cv .wrapper , .portfolio .wrapper{
        justify-content: center;
    }
    .cv__content--card{
        width:70%;
    }
    .skill__content--card{
        width: 48%;
    }
    footer .wrapper{
        width: 80%;
    }
}
@media (max-width:510px){
    .skill__content--card{
        width: 100%;
    }
}







button {
    padding: 10px 20px;
    background-color: #ff7a50;
    border: none;
    border-radius: 20px;
    color: white;
    font-weight: bold;
    cursor: pointer;
    margin: 30px;
    transition: background-color 0.3s ease;
  }

  button:hover {
    background-color: #ff5c30;
  }

  /* Модальное окно */
  .modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0; top: 0;
    width: 100%; height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    justify-content: center;
    align-items: center;
  }

  .modal-content {
    background-color: #1a1a1a;
    width: 80%;
    max-width: 700px;
    display: flex;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 0 20px rgba(0,0,0,0.5);
  }

  .modal-text {
    flex: 1;
    padding: 20px;
    text-align: left;
    color: #fff;
  }

  .modal-text h2 {
    margin-top: 0;
  }

  .modal-image {
    flex: 1;
  }

  .close-btn {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 30px;
    color: white;
    cursor: pointer;
  }

  




  @media (max-width: 600px) {
    .modal-image {
      display: none;
    }
  
    .modal-content {
      flex-direction: column;
      width: 90%;
    }
  
    .modal-text {
      padding: 20px;
      font-size: 14px;
      line-height: 1.5;
    }
  }

  
  
  .o {
    color: #FF8E5E;
    font-weight: bold;
  }

  .p {
    border-radius: 35px;
  }




  .rotating-banner {
    background: white;
    overflow: hidden;
    transform: rotate(-3deg);
    padding: 10px 0;
  }
  
  .rotating-track {
    display: flex;
    animation: scrollText 15s linear infinite;
    width: max-content;
  }
  
  .rotating-text {
    display: flex;
    gap: 60px; /* расстояние между словами */
    font-weight: bold;
    font-size: 18px;
  }
  
  .rotating-text li {
    list-style: none;
    color: black;
    white-space: nowrap;
  }
  
  @keyframes scrollText {
    0% {
      transform: translateX(0%);
    }
    100% {
      transform: translateX(-50%);
    }
  }


.rotating-text li.o {
    color:#FF8E5E;
    font-weight: bold;
  }



  
  .footer a {
    color:FF8E5E;
    text-decoration: none;
    transition: 0.3s;
  }
  
  .footer a:hover {
    color: #FF8E5E;
  }
   




  header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #1a1a1a;
    padding: 1rem 2rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
    box-shadow: 0 4px 10px rgba(0,0,0,0.5);
  }
  
  header h1 {
    color: #FF8E5E;
    font-size: 1.5rem;
  }
  
  header nav a {
    color: white;
    margin-left: 1rem;
    transition: 0.3s;
  }
  
  header nav a:hover {
    color: #FF8E5E;
  }
  
  /* Hero Section */
  .hero {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 6rem 2rem 3rem;
    max-width: 1200px;
    margin: auto;
  }
  
  .hero-text {
    max-width: 600px;
  }
  
  .hero-text h2 {
    font-size: 2.5rem;
    color: #FF8E5E;
    margin-bottom: 1rem;
  }
  
  .hero-text p {
    font-size: 1.1rem;
    margin-bottom: 1.5rem;
  }
  
  .btn {
    background-color: #FF8E5E;
    color: #0f0f0f;
    padding: 0.75rem 1.5rem;
    border: none;
    border-radius: 30px;
    font-weight: bold;
    cursor: pointer;
    transition: 0.3s;
  }
  
  .btn:hover {
    background-color: #ffa981;
  }
  
  .hero img {
    max-width: 400px;
    border-radius: 20px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.4);
  }
  
  /* Responsive */
  @media (max-width: 768px) {
    .hero {
      flex-direction: column;
      text-align: center;
    }
  
    .hero img {
      margin-top: 2rem;
    }
  }


  header.scrolled {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.7);
    background-color: #1a1a1a;
  }
  
  /* Прятать хедер */
  header.hide {
    transform: translateY(-100%);
  }