
/* Specification styles start */

* {
    box-sizing: border-box;
}
body {          
    padding: 0;
    margin: 0;
    font-family: 'Roboto', sans-serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1.4em;
}
main {
    padding: 30px 0;
    background: #e1e1e1;
}
header {
    padding: 30px 0;
    background: #eae88b;        
}
section {
    padding: 20px 0;     
}
footer {
    padding: 30px 0;
    background: #bababa;
}
.container {    
    max-width: 1400px;    
    margin: 0 auto;  
}

a {
    text-decoration: none;
    cursor: pointer;    
    display: block;
    color: inherit;
    margin: 0;
    padding: 0;
}
ul, li, span, p, h1, h2, h3, h4 {
    display: block;
    margin: 0;
    padding: 0;
    border: none;
}
img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.link {
    color: #210e8e;
}
.link:hover {
    color: #5141a8;
}
.button-link {
    padding: 5px 10px;      
    color: #fff;
    background: #210e8e;
    transition: all 0.5s ease;
    white-space: nowrap;
    border-radius: 5px;
}
.button-link:hover {
    background: #5141a8;
}
.button-links {    
    display: flex;
    justify-content: space-around;    
}
/* Specification styles end */

/* Universal blocks styles start */
/* Contacts block styles start */
.contacts {
    display: flex;
    justify-content: space-around;
    align-items: center;
  }
  .contacts a {
    font-size: 20px;
    line-height: 1.4em;
    opacity: 1;
    transition: all 0.5s ease;
  }
  .contacts a:hover, .copyright a:hover {
    opacity: 0.7;
  }
  .contacts .logo {
    width: 100px;
  }
/* Contacts block styles end */
/* phones block styles start */
.phones {
    display: flex; 
    gap: 40px;    
  }
  .phones a {     
    position: relative;    
  }
  .phones a::before {
    content: '';
    position: absolute;
    display: block;
    top: 50%;
    left: 0;
    transform: translate(-110%, -50%);
    width: 24px;
    height: 24px;
    background-size: 24px 24px;    
  }
  /* phones block styles end */
  /* Projects block styles start */
  .projects__title {
    text-align: center;
    font-size: 28px;
    line-height: 1.4em;
    font-weight: 500;
    margin-bottom: 20px;
  }
  .projects__list {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 20px;
}
  /* Project block Styles start */
  .project {
    padding: 5px;
    width: 48%;
    border: 1px solid #000;
    border-radius: 10px;
    background: #f2f2f2;
    display: flex;
    flex-direction: column;    
    justify-content: space-around;    
}
.project__title {    
    text-align: center;
    font-size: 20px;        
}
.project__info {      
    margin: 5px 0 10px;    
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.project__preview {         
    width: 35%;
    overflow: hidden;       
}
.project__description {    
    display: flex; 
    flex-direction: column;
    gap: 7px;
    width: 55%;   
}
.project__description li {
    position: relative;
    font-size: 15px;
    line-height: 1.2em;
    padding-left: 12px;
}
.project__description li::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #210e8e;
}
  /* Project block styles end */
  /* Projects block styles end */

  /* Review-wrap block styles start */
.review-wrap {    
    width: 70%;
    margin: 0 auto;
}
.review-wrap__title 
{
    font-size: 24px;
    line-height: 1.4em;
    text-align: center;
    margin-bottom: 20px;    
}
.videoWrapper {    
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;    
}
.videoWrapper iframe {
	position: absolute;	
	width: 100%;
	height: 100%;
}
/* Review-wrap block styles end */

/* Header-default block styles start */ 
  .header-default .phones a:nth-child(1)::before {  
    background-image: url("/assets/img/icon-telegram-black.svg");    
  }
  .header-default .phones a:nth-child(2)::before {
    background-image: url("/assets/img/icon-viber-black.svg");    
  }
/* Header-default block styles end */
/* footer block styles start */
.footer {
    color: #fff;
    background: #210e8e;
}
.footer .hr {
    width: 100%;
    height: 1px;
    background: #fff;
    margin: 20px 0;
  }
  .copyright {
    font-size: 15px;
    line-height: 1.4em;
    font-weight: 300;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center;
  }  
  .footer .phones a:nth-child(1)::before {  
    background-image: url("/assets/img/icon-telegram-white.svg");    
  }
  .footer .phones a:nth-child(2)::before {
    background-image: url("/assets/img/icon-viber-white.svg");    
  }
/* footer block styles end */
/* Universal blocks styles end */

/* Pages styles start */
/* Main page styles start */
.main__title {
    text-align: center;
    font-size: 30px;
    line-height: 1.4em;
    margin-bottom: 20px;    
}
/* Services part styles start */
/* .main__services .container {    
    display: flex;
    flex-direction: column;
    align-items: center;
} */
.main__services .list { 
    margin: 0 auto; 
    width: max-content;  
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.main__services .item {    
    position: relative;
    display: flex;
    gap: 10px;
    align-items: center;
    font-size: 20px;
    line-height: 1.4em;
    font-weight: 500;
    padding-left: 8px;
}
.main__services .item::before {    
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(-100%,-50%);
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #210e8e;
}
.main__services .item span:last-child {    
    font-size: 16px;
    line-height: 1.4em;
    font-weight: 300;
}
/* Services part styles end */
/* training-projects part styles start */

.main__training-projects .projects__title {    
    font-size: 24px;
    line-height: 1.4em;    
}
/* training-projects part styles end */
/* Main page styles end */


/* About-project page styles start */
.about-project__title {
    text-align: center;
    font-size: 28px;
    line-height: 1.4em;
    font-weight: 500;
    margin-bottom: 20px;
}
/* about-project__header part styles start */
.about-project__header .info {       
    display: flex;
    justify-content: space-around;
    align-items: center;
}
.about-project__header .preview {       
    width: 45%;
    overflow: hidden;       
}
.about-project__header .description {     
    width: 52%;
    font-size: 15px;
    line-height: 1.4em;
}
/* about-project__header part styles end */
/*about-project__tasks part  styles start */
.about-project__tasks .wrap {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: center;
}
.about-project__tasks .title {
    font-size: 24px;
    line-height: 1.4em;
    text-align: center;    
}
.about-project__tasks .list {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.about-project__tasks .item {    
    position: relative; 
    padding-left: 20px;
}
.about-project__tasks .item::before {    
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: #210e8e;
}
/* about-project__tasks part styles end */

/* About-project page styles start */


/* Portfolio styles start */
.portfolio__title {
    text-align: center;
    margin-bottom: 20px;
    font-size: 28px;
    line-height: 1.4em;
}
/* Developper styles start */
.developper__wrap {    
    display: flex;
    align-items: center;
    justify-content: space-around;
}
.developper__photo {
    overflow: hidden;
    width: 24%;
}
.developper__list {
    width: max-content;    
    position: relative;    
    display: flex;
    flex-direction: column;    
    gap: 10px;
}
.developper-diplom {   
    position: absolute;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    z-index: 2;
}
.developper-diplom button {
    display: block;
    border: none;   
    position: absolute;
    top: 0;
    right: 0;    
    width: 8%;
    height: 8%;   
    background: url("/assets/img/close-94.png") no-repeat center center / cover;
    cursor: pointer;
}
.developper__item {    
    font-weight: 500;
}
.developper__item ul li {
    position: relative;
    font-size: 14px;
    line-height: 1.4em;
    font-weight: 400;
    padding-left: 12px;
}
.developper__item ul li::before {    
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0,-50%);
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #210e8e;
}
.developper__item span {
    display: inline;
    cursor: pointer;
}
/* developper styles end */
.portfolio__templates .container {
    display: flex;
    flex-direction: column;
    align-items: center;
}
/* Portfolio styles end */
/* Pages styles end */


/* Responsive start */

/* 1251px - 1400px  normal desctops start */
@media screen and (max-width: 1400px) {	
 .container {
        max-width: 1250px;
    }           
}
/* 1251px - 1400px  normal desctops end */

/* 993px - 1250px small desctops start */
@media screen and (max-width: 1250px) {
 .container {
        max-width: 992px;
    }      
}
/* 993px - 1250px small desctops end */

/* 769px - 992px  tablets start */
@media screen and (max-width: 992px) {
     .container {
        max-width: 768px;
    }
    .project {
        width: 80%;
    }  
    .about-project__header .info {       
        flex-direction: column; 
        gap: 15px;    
    }
    .about-project__header .preview, .about-project__header .description {       
        width: 80%;            
    }
    

    
          
}
/* 769px - 992px  tablets end */

/* 577px - 768px big phones start */
@media screen and (max-width: 768px) {
     .container {
        max-width: 576px;
    }
    .contacts {
        flex-direction: column;
        align-items: center;        
        gap: 10px;        
      }
    .project {
        width: 95%;        
    }
      .project__info {        
        flex-direction: column;
        gap: 20px;
    }
    .project__preview, 
    .project__description {
        width: 100%;
        text-align: center;
    }
    .developper__wrap {
        flex-direction: column;
        gap: 20px;
    }
    .developper__photo {
        width: 60%;
    }
    .developper__list {
        width: 95%;
    } 
    .review-wrap {    
        width: 75%;        
    }     
 }    
    
/* 577px - 768px big phones end */

/*   421px - 576px normal phones start*/
@media screen and (max-width: 576px) { 
     .container {
        max-width: 420px;
    }
    .main__title {
        font-size: 24px;
        line-height: 1.4em;
    }    
    .main__services .item {        
        font-size: 18px;
        line-height: 1.4em;
        font-weight: 500;
    }
    .main__services .item span:last-child {    
        font-size: 14px;
        line-height: 1.4em;
        font-weight: 300;
    }
    .main__services .item::before {         
        transform: translate(-80%,-50%);
        width: 14px;
        height: 14px;    
    } 
    .review-wrap {    
        width: 80%;        
    }                   
  
}        

/*   421px - 576px normal phones end*/

/*  371px - 420px  small phones start */
@media screen and (max-width: 420px) { 
    .container {
            max-width: 370px;
        }
    .phones {
        flex-direction: column;
        gap: 10px;
    }
    .main__services .item {        
        font-size: 15px;
        line-height: 1.4em;
        font-weight: 500;
    }
    .main__services .item span:last-child {    
        font-size: 12px;
        line-height: 1.4em;
        font-weight: 300;
    }
   
    .copyright a {
        font-size: 12px;
        line-height: 1.4em;
    }

    .about-project__header .title {
        font-size: 22px;
        line-height: 1.4em;
    }   
    .about-project__header .preview, .about-project__header .description {       
        width: 90%;            
    } 
    .review-wrap {    
        width: 85%;        
    }   
            
} 

/*  371px - 420px  small phones end */

/* 300px - 370px extra-small phones start*/
@media screen and (max-width: 370px) { 
    .container {
        max-width: 318px;        
    }
    .main__title {
        font-size: 20px;
        line-height: 1.4em;
    }
    .main__services .item::before {         
        transform: translate(-70%,-50%);
        width: 12px;
        height: 12px;    
    }
    
    .about-project__header .title {
        font-size: 20px;
        line-height: 1.4em;
    }    
    .about-project__header .preview, .about-project__header .description {       
        width: 95%;            
    }  
    .review-wrap {         
        width: 98%;        
    }  
}
/* 320px - 370px extra-small phones end*/
/* Responsive end */