header {
    position: absolute;      
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;             
    background-color: transparent; 
}

header .header-buttons a {
    color: #fff;             
    text-decoration: none;
    padding: 10px 20px;
}

.photo-section {
    position: relative;
    display: flex;
}

.photo-section .photo {
    width: 50%;
    height: 100%;
    object-fit: cover;
}

.breadcrumbs {
    position: absolute;
    top: 1.04vw;
    left: 1.04vw;
    font-size: 0.73vw;
    color: #fff;
    z-index: 5;
}
.breadcrumbs a {
    color: #fff;
    text-decoration: none;
}
.breadcrumbs span {
    opacity: 0.8;
}

.wrapper {
  position: absolute;
  width: 32vw;
  height: 70%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sticker {
  position: absolute;
  top: -2.08vw;
  left: 80%;
  transform: translateX(-50%);
  z-index: 1;
}

.overlay-block {
  position: relative;
  background: #fff;
  padding: 1.3vw 6.15vw 1vw 6.15vw;
  box-shadow: 0 0.21vw 0.78vw rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  text-align: center;
  z-index: 5;
  height: 100%;
  width: 100%;
  overflow: visible;
}

.text-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: space-between; 
  align-items: center;            
  text-align: center;  
}

.text1 {
    text-transform: uppercase;
    font-size: 0.73vw;
}

.center-texts {
    display: flex;
    flex-direction: column;
    gap: 0.52vw;
}

.text2 {
    text-transform: uppercase;
    font-size: 3.2vw;
    font-weight: bold;
    font-family: Bebas Neue, sans-serif;
}

.text3 {
    text-transform: uppercase;
    font-size: 0.73vw;
}

.text4 {
    font-size: 0.63vw;
}

.intro-section {
  position: relative;
  background: white;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;   
  padding: 1.56vw 0;
  box-sizing: border-box;
}

.highlight-text {
  font-size: 10vw;
  font-weight: bold;
  color: white;
  text-align: left;
  margin: 2.08vw 0 0.52vw 0;
  text-transform: uppercase;
  text-shadow: 1px 1px 0.31vw rgba(0, 0, 0, 0.1);
  align-self: flex-start; 
  line-height: 1;
  position: relative; 
  z-index: 1;
}

.bottom-center-text {
  font-size: 0.93vw;
  color: black;
  text-align: left;
  margin: 0;
  width: 20vw;
  font-weight: bold;
  position: absolute; 
  bottom: 3vh;    
  left: 45vw;         
  z-index: 2;        
  background: transparent; 
}

.product-spotlight {
  position: relative;
  height: 80vh; 
  background: url('/about-svyataya/img/about_banner3.webp') center/cover no-repeat;
  overflow: visible;
}

.gallery-overlay {
  display: flex;
  flex-direction: column; 
  gap: 0.78vw;
  position: absolute;
  top: 46%;
  right: 10%;
  transform: translateY(-50%);
  background: white;
  padding: 1.25vw;
  z-index: 10; 
  box-shadow: 0.21vw 0.21vw 1.04vw rgba(0,0,0,0.2);
}

.gallery-item {
  text-align: center;
  color: #212121;
  font-size: 0.63vw;
}

.gallery-item img {
  width: 18vw;
  display: block;
  object-fit: cover;
  margin-bottom: 0.31vw;
  border: 2px solid white; 
}

.gallery-text-row {
  display: flex;
  justify-content: space-between; 
  width: 100%; 
  align-items: center;
}

.gallery-item a {
  color: #212121;
  text-decoration: underline;
}

.hero-text-section {
  padding: 6.25vw 1.04vw;
}
.hero-text-label {
  text-transform: uppercase;
  font-size: 0.93vw;
  max-width: 430px;
  font-weight: bold;
}
.hero-text-title {
  margin-top: 1.56vw;
  text-transform: uppercase;
  font-size: 2.2vw;
  font-weight: bold;
}

.content-section {
  display: flex;
  flex-wrap: wrap;
}
.content-left,
.content-right {
  width: 50%;
}

.main-image-block {
  position: relative;
  width: 100%;
  height: 100%;
  background: url('/about-svyataya/img/loyal-program.png') center/cover no-repeat; 
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.image-label {
  width: 20px;
  position: absolute;
  top: 0.52vw;
  left: 0.52vw;
  color: white;
  padding: 0.21vw 0.42vw;
  text-transform: uppercase;
  font-size: 1.04vw;
  font-weight: bold;
  pointer-events: none;
}

.image-bottom-panel {
  color: white;
  padding: 0.52vw;
  display: flex;
  flex-direction: column;
  align-items: center; 
  justify-content: flex-end; 
  height: 96%; 
  text-align: center;
  z-index: 10;
}

.image-bottom-title {
  font-weight: 600;
  font-size: 2.7vw;
  text-transform: uppercase;
}

.image-bottom-subtitle {
  font-weight: 400;
  font-size: 1.9vw;
  margin-top: 0.21vw;
  text-transform: uppercase;
}

.btn-outline-white {
  border: 0.16vw solid #FAFAFA;
  background: transparent;
  color: #FAFAFA;
  padding: 1.1vw 0.63vw;
  margin-top: 1.56vw;
  cursor: pointer;
  width: 38vw;
  max-width: 100%;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.15vw;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0; 
}

.image-tile {
  position: relative;
  overflow: hidden;
}

.image-tile img {
  width: 100%;
  height: auto;
  display: block;
  vertical-align: bottom;
}

.tile-text {
  width: 20px;
  position: absolute;
  top: 0.52vw;
  left: 0.52vw;
  color: white;
  padding: 0.21vw 0.42vw;
  text-transform: uppercase;
  font-size: 1.04vw;
  font-weight: bold;
  pointer-events: none;
}

.navigation-section {
  width: 100%;
  padding: 3.4vw 0 2.6vw 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn-outline-black {
  border: 0.05vw solid black;
  background: transparent;
  color: black;
  padding: 0.63vw 5.5vw;
  cursor: pointer;
  text-transform: uppercase;
  font-size: 0.83vw;
}
.photo {
  width: 50%;
  display: inline-block;
}

.mobile-photo {
  display: none;
  width: 100%;
}

@media (max-width: 1024px) {
    .hero-text-label {
        font-size: 1.2vw;
    }

    .overlay-block {
        padding: 1vw 3.12vw;
    }

    .text2 {
        font-size: 2.6vw;
    }

    .text3 {
        font-size: 1.46vw;
    }
}

@media (max-width: 768px) {
    .gallery-overlay {
        right: 10%;
    }

    .gallery-item img {
        width: 20vw;
    }

    .overlay-block {
        padding: 0.78vw 1.56vw;
    }

    .text2 {
        font-size: 1.9vw;
    }

    .text3 {
        font-size: 1.04vw;
    }

    .sticker {
        top: -5.08vw;
    }
}

@media (max-width: 767px) {
    .navigation-section {
        padding: 6.4vw 0 6.6vw 0;
    }

    .hero-text-section {
        padding: 0 1.04vw 6.25vw 1.04vw;
    }

    .btn-outline-black {
        border: 0.3vw solid black;
        padding: 3vw 20vw;
        font-size: 2vw;
    }

    .btn-outline-white {
        padding: 3.3vw 0.63vw;
        width: 80vw;
        font-size: 1.5vw;
    }

    .image-bottom-title {
        font-weight: 900;
        font-size: 4.7vw;
    }

    .image-bottom-subtitle {
        font-size: 2.9vw;
    }

    .image-label,
    .tile-text {
        font-size: 2.04vw;
    }

    .main-image-block {
        height: 90vh;
    }

    .content-left,
    .content-right {
        width: 100%;
    }

    .text1,
    .text4 {
        font-size: 2.2vw;
    }

    .text2 {
        font-size: 8.6vw;
    }

    .text3 {
        font-size: 1.46vw;
    }

    .breadcrumbs {
        display: none;
    }

    .photo-section {
        display: block;
    }

    .photo-section .photo {
        display: none;
    }

    .mobile-photo {
        display: block;
        width: 100%;
    }

    .overlay-block {
        padding: 1.3vw 6.15vw 1vw 6.15vw;
        width: 100% !important;
        overflow: visible;
    }

    .sticker {
        top: -8.08vw;
    }

    .wrapper {
        width: 72vw;
        height: 50%;
        top: 55%;
    }

    .bottom-center-text {
        font-size: 1.8vw;
        width: 60vw;
        font-weight: bolder;
        bottom: -3vh;
        left: 2vw;
    }

    .highlight-text {
        font-size: 12vw;
    }

    .product-spotlight {
        margin: 90px 0 54px;
        background-image: url('/about-svyataya/img/about_banner3_mobile.png');
    }

    .gallery-item img {
        width: 28vw;
    }

    .gallery-item {
        font-size: 1.5vw;
    }

    .gallery-overlay {
        right: 3%;
    }

    .hero-text-label {
        font-size: 1.73vw;
        max-width: 270px;
    }

    .hero-text-title {
        margin-top: 20px;
        display: flex;
        flex-wrap: wrap;
    }

    .hero-text-title span {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        width: 100%;
        font-size: 3.73vw;
    }

    .hero-text-title span:last-child {
        margin-left: 18%;
    }
}

@media (max-width: 580px) {
    .btn-outline-black {
        font-size: 3vw;
    }

    .btn-outline-white {
        font-size: 2.5vw;
    }

    .image-bottom-title {
        font-size: 5.7vw;
    }

    .image-bottom-subtitle {
        font-size: 3.9vw;
    }

    .text1,
    .text4 {
        font-size: 2.2vw;
    }

    .text2 {
        font-size: 9.6vw;
    }

    .text3 {
        font-size: 2.46vw;
    }

    .bottom-center-text {
        font-size: 2.8vw;
        width: 70vw;
    }

    .highlight-text {
        font-size: 14vw;
    }
}

@media (max-width: 510px) {
    .gallery-item img {
        width: 32vw;
    }
}

@media (max-width: 480px) {
    .gallery-item img {
        width: 34vw;
    }
}

@media (max-width: 450px) {
    .navigation-section {
        padding: 6vw 0 8vw 0;
    }

    .gallery-item img {
        width: 36vw;
    }
}

@media (max-width: 375px) {
    .gallery-item img {
        width: 42vw;
    }
}
