:root{
    --main-bg-color:#FAFAFA;
    --accent-bg-color:#F1F6F9;
    --accent-color:#B5D7F2;
    --deep-accent-color:#2380CC;
}

@font-face {
    font-family: 'Montserrat Italic'; /* Название, по которому мы будем обращаться к шрифту */
    src: 
    url('fonts/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
}

@font-face {
    font-family: 'Montserrat'; /* Название, по которому мы будем обращаться к шрифту */
    src: 
    url('fonts/Montserrat-VariableFont_wght.ttf') format('truetype');
}

@font-face {
    font-family: 'Roboto Italic'; /* Название, по которому мы будем обращаться к шрифту */
    src: 
    url('fonts/Roboto-Italic-VariableFont_wght.ttf') format('truetype');
}

@font-face {
    font-family: 'Roboto'; /* Название, по которому мы будем обращаться к шрифту */
    src: 
    url('fonts/Roboto-VariableFont_wght.ttf') format('truetype');
}

body {
    font-family: Roboto;
    background-color: var(--main-bg-color);
}
h1, h2, h3, h4, h5, h6{
    font-family: Montserrat;
    font-weight: 600;
    color: black;
}

h1{
    font-size: calc(1rem + 2vw);
}

#examples-section {
    scroll-margin-top: 70px; 
  }

.custom-navbar{
    position: fixed;
    width: 100%;               
    z-index: 1000;              
  
    color: var(--deep-accent-color);
    font-family: Montserrat;
    font-weight: 600;
    line-height: 80%;

  background-color: var(--main-bg-color);      
  padding: 10px 20px;         
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.custom-navbar .navbar-toggler {
    border-color: rgba(255, 255, 255, 0.1);
  }
  .custom-navbar .navbar-toggler-icon {
    background-image: url(../images/bars-solid-full.svg);
  }
.title-section h1{
    position: relative;
    font-size: calc(1rem + 3.5vw);
    z-index: 2;
}
.title-section p{
    position: relative;
    margin-bottom: .5rem;
    font-size: calc((1rem + 3.5vw) / 2);
    color: #464646;
    z-index: 2;
}

.btn-more{
    display: inline-block;
    padding: 1rem;
    font-family: Montserrat;
    font-size: calc((1rem + 3.5vw) / 2);
    font-weight: 600;
    color: white;
    text-decoration: none;
    background-color: var(--deep-accent-color);
    border-radius: 1rem;
}

.btn-more:visited{
    color: white;
    text-decoration: none;
}
.btn-more:hover{
    color: white;
    text-decoration: none;
}

.btn-more-arrow{
    display: inline-block;
    text-decoration: none;
}

.btn-more-arrow:visited{
    text-decoration: none;
}
.btn-more-arrow:hover{
    text-decoration: none;
}
.btn-more-arrow img{
    width: 30vw;
    max-width: 96px;
}

.corner-img {
    position: absolute;
    width: 35vw;
    max-width: 450px;
    min-width: 280px;
    height: auto;
    object-fit: cover;
    transition: all 0.3s ease; 
  }
.corner-img.left{
    bottom: -150px;
    left:-50px;
}

.corner-img.right{
    top: -150px;
    right:-50px;
}

  .translate-middle-mobile-left {
    transform: translate(-20%, -10%);
  }
  
  .translate-middle-mobile-right {
    transform: translate(20%, 10%);
  }
  
  @media (min-width: 576px) {
    .translate-middle-mobile-left,
    .translate-middle-mobile-right {
      transform: none;
    }
  }

.work-number{
    width: 100%;
    max-width: 10vw;
    font-family: Montserrat;
    font-size: calc(1rem + 5.5vw);
    font-weight: 400;
    line-height: 90%;
}
.work-divider{
    border: none; 
    border-top: 3px solid black;
    opacity: 1;
}

.bg-accent{
    background-color: var(--accent-bg-color);
}
.card-project{
    height: 100%;
    border-radius: 1rem;
    border:0px;
    background-color: var(--main-bg-color);

}
.colored-icon{
    filter: invert(36%) sepia(99%) saturate(458%) hue-rotate(164deg) brightness(102%) contrast(91%);
}

.img-width-150px{
    width: 150px; 
    object-fit: cover; 
    margin: 0 auto;
}
.grid-item{
    position: relative;

}
.grid-item img {
    width: 100%;
    height: 100%;
    object-fit: cover; 
    border-radius: 12px;
  }

  .grid-item span {
    position: absolute;
    left: 1rem;
    bottom: 0.8rem;
    color:white;
    font-weight: 600;
  }

  .gallery-grid {
    display: grid;
    grid-template-columns: 1fr; 
    gap: 12px;                  
    padding: 10px;
  }
  @media (min-width: 992px) {
    .gallery-grid {
      grid-template-columns: repeat(3, 1fr); 
      grid-auto-rows: 300px; 
      gap: 16px;
    }
    .item-1 { grid-row: span 1; }
  
    .item-2 { 
      grid-column: span 2; 
      grid-row: span 2; 
    }

    .item-3 { grid-row: span 2; }

    .item-4 { grid-row: span 1; }

    .item-5 { grid-row: span 2; }

    .item-6 { grid-column: span 2; }

    .item-8 { 
        grid-column: span 2; 
        grid-row: span 2; 
    }

    }
.card-gradient{
    position: absolute; 
    top:0; 
    left:0; 
    height:100%;
    width: 100%; 
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 60%);
    border-radius: 12px;
}

footer h3{
    font-family: Montserrat;
    color: white;
}

.footer-bg{
    background-color: var(--deep-accent-color);
    color: white;
}
.footer-icon{
    filter: invert(100%);
    height: 32px;
    width: 32px;

}