    .gallery {
      display: grid;
      grid-template-columns: repeat(12, 1fr);
      gap: 14px;
    }

    .thumb {
      grid-column: span 3;
      position: relative;
      aspect-ratio: 4 / 3;
      overflow: hidden;
      background: #0e1016;
      box-shadow: 0 8px 18px rgba(0, 0, 0, .25);
      transition: transform .2s ease, box-shadow .2s ease;
      cursor: zoom-in;
    }

    @media (max-width: 1100px) {
      .thumb {
        grid-column: span 4;
      }
    }

    @media (max-width: 800px) {
      .thumb {
        grid-column: span 6;
      }
    }

    @media (max-width: 520px) {
      .thumb {
        grid-column: span 12;
      }
    }

    .thumb img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
      transform: translateZ(0);
      border-radius: 12px;
    }

    .thumb:hover {
      transform: translateY(-6px);
      box-shadow: 0 14px 28px rgba(0, 0, 0, .35);
    }

    .lightbox {
      position: fixed;
      inset: 0;
      display: none;
      align-items: center;
      justify-content: center;
      background: rgba(0, 0, 0, .85);
      z-index: 1000;
      padding: 24px;
    }

    .lightbox.open {
      display: flex;
    }

    .lightbox img {
      max-width: 100%;
      max-height: 100%;
      width: auto;
      height: auto;
      border-radius: 12px;
      box-shadow: 0 20px 60px rgba(0, 0, 0, .6);
      cursor: zoom-out;
    }

    .lightbox .close {
      position: absolute;
      top: 14px;
      right: 14px;
      background: rgba(255, 255, 255, .1);
      border: 1px solid rgba(255, 255, 255, .2);
      color: var(--text);
      padding: 8px 10px;
      border-radius: 999px;
      cursor: pointer;
      font-size: 14px;
      backdrop-filter: blur(6px);
    }

    .section-title {
      margin: 8px 0 16px;
      font-size: clamp(18px, 2.4vw, 22px);
      color: var(--muted);
    }

    .photo-wrapper {
      position: relative;
      display: inline-block;
      overflow: hidden;
      cursor: pointer;
      border-radius: 12px;
      overflow: hidden;
    }

    .photo-wrapper img,
    .photo-wrapper video {
      width: 100%;
      height: auto;
      display: block;
      border-radius: 12px;
      transition: border-radius 0.3s ease;
    }

    .photo-wrapper video {
      position: absolute;
      top: 0;
      left: 0;
      opacity: 0;
      transition: opacity 0.5s ease;
      pointer-events: none;
    }

    .video-modal {
      position: fixed;
      inset: 0;
      background: rgba(0, 0, 0, .9);
      display: none;
      align-items: center;
      justify-content: center;
      z-index: 2000;
    }

    .video-modal.open {
      display: flex;
    }

    .video-modal video {
      max-width: 90%;
      max-height: 90%;
      border-radius: 12px;
      box-shadow: 0 0 30px rgba(0, 0, 0, .6);
    }

    .video-modal .close {
      position: absolute;
      top: 20px;
      right: 30px;
      font-size: 32px;
      color: #fff;
      cursor: pointer;
      font-family: Arial, sans-serif;
      z-index: 2001;
      background: rgba(0, 0, 0, 0.5);
      width: 40px;
      height: 40px;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .three-columns {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 30px;
      padding: 0px 0px;
      background-color: #0a1225;
      align-items: stretch;
    }

    .three-columns .column {
      display: flex;
      flex-direction: column;
      border: 1px solid #34495e;
      border-radius: 12px;
      background: #fff;
      padding: 0px;
      margin: 0px 0;
      box-shadow: 0 4px 8px rgba(255, 255, 255, 0.3);
      cursor: pointer;
      transition: all 0.3s ease;
      height: fit-content;
      flex: 1;
      box-sizing: border-box;
      align-items: center;
      justify-content: flex-start;
      color: #0a1225;
    }

    .three-columns .column:hover {
      transform: translateY(-5px);
      box-shadow: 0 8px 16px rgba(253, 253, 253, 0.4);
    }

    .three-columns:last-of-type .column p {
      text-align: center;
    }

    ******************************/ .two-columns-left .column.foto-column,
    .three-columns .column {
      padding: 0 !important;
      margin: 0;
      border: none !important;
      background: transparent !important;
      box-shadow: none !important;
      cursor: default;
    }

    .two-columns-left .column.foto-column:hover,
    .three-columns .column:hover {
      transform: none !important;
      box-shadow: none !important;
    }

    .two-columns-left .column.foto-column .photo-gallery,
    .three-columns .column .photo-wrapper {
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%;
    }

    .two-columns-left .column.foto-column .photo-wrapper,
    .three-columns .column .photo-wrapper {
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%;
      border-radius: 12px;
      overflow: hidden;
    }

    .three-columns {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 30px;
      padding: 40px 20px;
      background-color: #0a1225;
      align-items: stretch;
    }

    .certificates-slider {
      display: flex;
      gap: 20px;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
      margin: 40px 0;
    }

    .certificates-slider .photo {
      flex: 0 1 auto;
      max-width: 45%;
      height: auto;
      border-radius: 12px;
      box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
    }

    /* Адаптивность для мобильных устройств */
    @media (max-width: 768px) {
      .certificates-slider {
        flex-direction: column;
        gap: 30px;
      }

      .certificates-slider .photo {
        max-width: 100%;
      }
    }

    .width-image-large {
      max-width: 800px;
      width: 100%;
      height: auto;
      display: block;
      margin: 20px auto;
      border-radius: 8px;
    }

    .leon-columns .wide-column {
      display: flex;
      justify-content: center;
      align-items: center;
    }

    .leon-columns .leon-article-content {
      max-width: 800px;
      margin: 0 auto;
    }

    .dark-overlay {
      position: absolute;
      top: 0;
      right: 0;
      left: auto;
      width: 70%;
      height: 100%;
      background: linear-gradient(to left, rgb(0, 0, 0), rgba(0, 0, 0, 0));
      pointer-events: none;
    }

    .main-overlay-text {
      position: absolute;
      top: 25%;
      right: 60px;
      left: auto;
      transform: translateY(-50%);
      color: #d6ae68;
      font-family: 'Cormorant Garamond', serif;
      font-size: 6em;
      font-weight: 600;
      text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);
      line-height: 0.8;
      z-index: 2;
      margin-bottom: 0;
      text-align: left;
      max-width: 600px;
      width: 100%;
    }

    .sub-overlay-text {
      position: absolute;
      top: 55%;
      right: 60px;
      left: auto;
      transform: translateY(-50%);
      color: #fcfce7;
      font-family: 'Open Sans', sans-serif;
      font-size: 1.2em;
      font-weight: 400;
      line-height: 1.5;
      max-width: 600px;
      text-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);
      z-index: 2;
      margin: 0;
      text-align: left;
    }

    @media (max-width: 1200px) {
  .main-overlay-text {
    right: 50px;
    font-size: 5em;
  }
  .sub-overlay-text {
    right: 50px;
  }
}

@media (max-width: 992px) {
  .main-overlay-text {
    right: 40px;
    font-size: 4em;
    top: 30%;
  }
  .sub-overlay-text {
    right: 40px;
    top: 50%;
    font-size: 1.1em;
  }
}

@media (max-width: 768px) {
  .main-overlay-text {
    right: 20px;
    left: auto;
    font-size: 3.2em;
    top: 55%;
    max-width: 90%;
  }
  
  .sub-overlay-text {
    right: 20px;
    left: auto;
    top: 72%;
    max-width: 85%;
    font-size: 1.1em;
  }
  
.dark-overlay {
    width: 100%;
    right: 0;
    left: auto;
    background: linear-gradient(to top, 
      rgba(0,0,0,0.9) 0%, 
      rgba(0,0,0,0.7) 10%, 
      rgba(0,0,0,0.4) 20%, 
      rgba(0,0,0,0) 50%);
  }
}

@media (max-width: 576px) {
  .main-overlay-text {
    right: 15px;
    font-size: 2.8em;
    top: 52%;
  }
  
  .sub-overlay-text {
    right: 15px;
    top: 74%;
    font-size: 1em;
    max-width: 88%;
  }
  
.dark-overlay {
    width: 100%;
    right: 0;
    left: auto;
    background: linear-gradient(to top, 
      rgba(0,0,0,0.9) 0%, 
      rgba(0,0,0,0.7) 15%, 
      rgba(0,0,0,0.4) 25%, 
      rgba(0,0,0,0) 45%);
  }
}

@media (max-width: 480px) {
  .main-overlay-text {
    right: 15px;
    font-size: 2.4em;
    top: 48%;
  }
  
  .sub-overlay-text {
    right: 15px;
    top: 75%;
    font-size: 0.95em;
    max-width: 92%;
  }
  
  .dark-overlay {
    width: 95%;
  }
}