/* Section Styles */

.header-main {
      container-type: inline-size;
      container-name: header-main;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      padding: var(--space-l) var(--section-padding-x);
      background: transparent;
      transition: all 0.3s ease;
      z-index: 1000;
    }

    .header-main.scrolled {
      position: fixed;
      background: var(--bg-surface);
      box-shadow: var(--shadow-m);
      padding: var(--space-m) var(--section-padding-x);
    }

    .header-main__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: var(--space-l);
    }

    .header-main__logo {
      display: flex;
      align-items: center;
      text-decoration: none;
      z-index: 1001;
    }

    .header-main__logo-img {
      height: 4rem;
      width: auto;
      transition: height 0.3s ease;
    }

    .header-main.scrolled .header-main__logo-img {
      height: 3.2rem;
    }

    .header-main__nav {
      display: flex;
      gap: var(--space-3xl);
      align-items: center;
    }

    .header-main__link {
      color: var(--text-light);
      text-decoration: none;
      font-size: var(--text-m);
      font-weight: 500;
      position: relative;
      transition: color 0.3s ease;
    }

    .header-main.scrolled .header-main__link {
      color: var(--text-body);
    }

    .header-main__link::after {
      content: '';
      position: absolute;
      bottom: -0.4rem;
      left: 0;
      width: 0;
      height: 0.2rem;
      background: var(--text-light);
      transition: width 0.3s ease, background 0.3s ease;
    }

    .header-main.scrolled .header-main__link::after {
      background: var(--primary);
    }

    .header-main__link:hover {
      color: var(--text-light);
      opacity: 0.8;
    }

    .header-main.scrolled .header-main__link:hover {
      color: var(--primary);
      opacity: 1;
    }

    .header-main__link:hover::after {
      width: 100%;
    }

    /* Mobile Menu Button */
    .header-main__burger {
      display: none;
      flex-direction: column;
      gap: 0.5rem;
      background: none;
      border: none;
      cursor: pointer;
      padding: var(--space-xs);
      z-index: 1001;
    }

    .header-main__burger-line {
      width: 2.4rem;
      height: 0.2rem;
      background: var(--text-light);
      transition: all 0.3s ease;
      border-radius: 0.2rem;
    }

    .header-main.scrolled .header-main__burger-line {
      background: var(--text-body);
    }

    .header-main__burger.active .header-main__burger-line:nth-child(1) {
      transform: rotate(45deg) translate(0.6rem, 0.6rem);
    }

    .header-main__burger.active .header-main__burger-line:nth-child(2) {
      opacity: 0;
    }

    .header-main__burger.active .header-main__burger-line:nth-child(3) {
      transform: rotate(-45deg) translate(0.6rem, -0.6rem);
    }

    /* Mobile Menu */
    .header-main__mobile-menu {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      background: var(--bg-surface);
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      visibility: hidden;
      transition: all 0.3s ease;
      z-index: 1000;
    }

    .header-main__mobile-menu.active {
      opacity: 1;
      visibility: visible;
    }

    .header-main__mobile-nav {
      display: flex;
      flex-direction: column;
      gap: var(--space-2xl);
      align-items: center;
    }

    .header-main__mobile-link {
      color: var(--text-title);
      text-decoration: none;
      font-size: var(--text-2xl);
      font-weight: 600;
      transition: color 0.3s ease;
    }

    .header-main__mobile-link:hover {
      color: var(--primary);
    }

    /* Responsive */
    @container header-main (max-width: 768px) {
      .header-main__nav {
        display: none;
      }

      .header-main__burger {
        display: flex;
      }
    }

.hero-main {
      container-type: inline-size;
      container-name: hero-main;
      position: relative;
      min-height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }

    .hero-main__slider {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 0;
    }

    .hero-main__slide {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      opacity: 0;
      transition: opacity 1s ease-in-out;
    }

    .hero-main__slide--active {
      opacity: 1;
    }

    .hero-main__bg-img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .hero-main__overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(135deg,
        var(--dark-80) 0%,
        var(--dark-50) 50%,
        var(--dark-70) 100%
      );
    }

    .hero-main .container {
      position: relative;
      z-index: 1;
    }

    .hero-main__content {
      max-width: 80rem;
      margin: 0 auto;
      text-align: center;
      color: var(--text-light);
    }

    .hero-main__title {
      font-size: var(--text-5xl);
      font-weight: 600;
      line-height: 1.1;
      margin-bottom: var(--space-l);
      color: var(--text-light);
    }

    .hero-main__title-accent {
      color: var(--light-90);
      display: inline-block;
      font-weight: 600;
    }

    .hero-main__subtitle {
      font-size: var(--text-xl);
      line-height: 1.6;
      margin-bottom: var(--space-3xl);
      color: var(--light-90);
      max-width: 60rem;
      margin-left: auto;
      margin-right: auto;
    }

    .hero-main__cta {
      display: flex;
      gap: var(--space-l);
      flex-wrap: wrap;
      justify-content: center;
    }

    .hero-main .btn-outline {
      background: var(--light-10);
      color: var(--text-light);
      border-color: var(--light-30);
      backdrop-filter: blur(10px);
    }

    .hero-main .btn-outline:hover {
      background: var(--light-20);
      border-color: var(--light-50);
      color: var(--text-light);
    }

    /* Slider Navigation */
    .hero-main__nav {
      position: absolute;
      top: 50%;
      left: 0;
      right: 0;
      transform: translateY(-50%);
      display: flex;
      justify-content: space-between;
      padding: 0 var(--section-padding-x);
      z-index: 2;
      pointer-events: none;
    }

    .hero-main__nav-btn {
      pointer-events: auto;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background: var(--light-10);
      backdrop-filter: blur(10px);
      border: 0.1rem solid var(--light-30);
      color: var(--text-light);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: all 0.3s ease;
    }

    .hero-main__nav-btn:hover {
      background: var(--light-20);
      border-color: var(--light-50);
      transform: scale(1.1);
    }

    /* Slider Indicators */
    .hero-main__indicators {
      position: absolute;
      bottom: var(--space-3xl);
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: var(--space-m);
      z-index: 2;
    }

    .hero-main__indicator {
      width: 1.2rem;
      height: 1.2rem;
      border-radius: 50%;
      background: var(--light-30);
      border: none;
      cursor: pointer;
      transition: all 0.3s ease;
    }

    .hero-main__indicator--active {
      background: var(--text-light);
      transform: scale(1.2);
    }

    .hero-main__indicator:hover {
      background: var(--light-50);
    }

    /* Responsive */
    @container hero-main (max-width: 768px) {
      .hero-main {
        min-height: 90vh;
      }

      .hero-main__title {
        font-size: var(--text-4xl);
      }

      .hero-main__subtitle {
        font-size: var(--text-l);
      }

      .hero-main__nav-btn {
        width: 4rem;
        height: 4rem;
      }
    }

    @container hero-main (max-width: 480px) {
      .hero-main__title {
        font-size: var(--text-3xl);
      }

      .hero-main__subtitle {
        font-size: var(--text-m);
      }

      .hero-main__cta {
        flex-direction: column;
        width: 100%;
      }

      .hero-main__cta .btn {
        width: 100%;
        justify-content: center;
      }

      .hero-main__nav {
        padding: 0 var(--space-m);
      }

      .hero-main__nav-btn {
        width: 3.6rem;
        height: 3.6rem;
      }

      .hero-main__indicators {
        bottom: var(--space-2xl);
      }
    }

.intro-split {
      container-type: inline-size;
      container-name: intro-split;
    }

    .intro-split__inner {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: var(--space-6xl);
      align-items: center;
    }

    .intro-split__content .badge {
      margin-bottom: var(--space-m);
    }

    .intro-split__title {
      font-size: var(--text-3xl);
      font-weight: 600;
      line-height: 1.1;
      margin-bottom: var(--space-l);
      color: var(--text-title);
    }

    .intro-split__text {
      font-size: var(--text-m);
      line-height: 1.8;
      margin-bottom: var(--space-l);
      color: var(--text-body);
    }

    .intro-split__text:last-of-type {
      margin-bottom: var(--space-3xl);
    }

    .intro-split__features {
      display: flex;
      flex-direction: column;
      gap: var(--space-xl);
    }

    .intro-split__feature {
      display: flex;
      gap: var(--space-l);
      align-items: flex-start;
    }

    .intro-split__feature-icon {
      width: 4.8rem;
      height: 4.8rem;
      background: var(--primary-10);
      border-radius: var(--radius-s);
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
    }

    .intro-split__feature-icon .lucide {
      color: var(--primary);
    }

    .intro-split__feature-title {
      font-size: var(--text-l);
      font-weight: 600;
      color: var(--text-title);
      margin-bottom: var(--space-xs);
    }

    .intro-split__feature-text {
      font-size: var(--text-s);
      line-height: 1.6;
      color: var(--text-body);
    }

    .intro-split__image-wrap {
      position: relative;
      height: 64rem;
      border-radius: var(--radius-l);
      overflow: hidden;
      box-shadow: var(--shadow-xl);
    }

    .intro-split__image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
    }

    .intro-split__image-overlay {
      position: absolute;
      bottom: 0;
      left: 0;
      right: 0;
      padding: var(--space-3xl);
      background: linear-gradient(to top, var(--dark-90) 0%, transparent 100%);
    }

    .intro-split__stat {
      text-align: center;
      color: var(--text-light);
    }

    .intro-split__stat-number {
      font-size: var(--text-5xl);
      font-weight: 600;
      line-height: 1;
      margin-bottom: var(--space-s);
      color: var(--text-light);
    }

    .intro-split__stat-label {
      font-size: var(--text-m);
      color: var(--light-90);
    }

    /* Responsive */
    @container intro-split (max-width: 968px) {
      .intro-split__inner {
        grid-template-columns: 1fr;
        gap: var(--space-4xl);
      }

      .intro-split__image-wrap {
        height: 48rem;
      }

      .intro-split__title {
        font-size: var(--text-3xl);
      }
    }

    @container intro-split (max-width: 640px) {
      .intro-split__title {
        font-size: var(--text-2xl);
      }

      .intro-split__text {
        font-size: var(--text-s);
      }

      .intro-split__image-wrap {
        height: 40rem;
      }

      .intro-split__stat-number {
        font-size: var(--text-4xl);
      }

      .intro-split__stat-label {
        font-size: var(--text-s);
      }
    }

.services-main {
      container-type: inline-size;
      container-name: services-main;
      background: var(--bg-body);
    }

    .services-main__header {
      text-align: center;
      max-width: 70rem;
      margin: 0 auto var(--space-5xl);
    }

    .services-main__header .badge {
      margin-bottom: var(--space-m);
    }

    .services-main__title {
      font-size: var(--text-3xl);
      font-weight: 600;
      line-height: 1.2;
      margin-bottom: var(--space-l);
      color: var(--text-title);
    }

    .services-main__subtitle {
      font-size: var(--text-l);
      line-height: 1.6;
      color: var(--text-body);
    }

    .services-main__grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: var(--space-2xl);
    }

    .services-main__card {
      background: var(--bg-surface);
      border: 1px solid var(--border-primary);
      border-radius: var(--radius-m);
      overflow: hidden;
      transition: all 0.4s ease;
      display: flex;
      flex-direction: column;
    }

    .services-main__card:hover {
      transform: translateY(-0.8rem);
      box-shadow: var(--shadow-xl);
      border-color: var(--primary-20);
    }

    .services-main__card--featured {
      border-color: var(--primary-30);
      box-shadow: var(--shadow-l);
    }

    .services-main__card--featured:hover {
      border-color: var(--primary-40);
    }

    .services-main__image-wrap {
      position: relative;
      width: 100%;
      height: 24rem;
      overflow: hidden;
    }

    .services-main__image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.4s ease;
    }

    .services-main__card:hover .services-main__image {
      transform: scale(1.05);
    }

    .services-main__icon-badge {
      position: absolute;
      top: var(--space-l);
      right: var(--space-l);
      width: 5.6rem;
      height: 5.6rem;
      background: var(--light);
      border-radius: var(--radius-s);
      display: flex;
      align-items: center;
      justify-content: center;
      box-shadow: var(--shadow-m);
      
      display: none;
    }

    .services-main__icon-badge .lucide {
      color: var(--primary);
    }

    .services-main__icon-badge--featured {
      background: var(--primary);
    }

    .services-main__icon-badge--featured .lucide {
      color: var(--light);
    }

    .services-main__content {
      padding: var(--space-2xl);
      flex: 1;
      display: flex;
      flex-direction: column;
    }

    .services-main__card-title {
      font-size: calc(var(--text-xl) * 1.1);
      font-weight: 600;
      color: var(--text-title);
      margin-bottom: var(--space-m);
    }

    .services-main__card-description {
      font-size: var(--text-m);
      line-height: 1.7;
      color: var(--text-body);
      margin-bottom: var(--space-xl);
    }

    .services-main__list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: var(--space-s);
      margin-top: auto;
    }

    .services-main__list-item {
      display: flex;
      align-items: center;
      gap: var(--space-s);
      font-size: var(--text-s);
      color: var(--text-body);
    }

    .services-main__list-item .lucide-sm {
      color: var(--primary);
      flex-shrink: 0;
    }

    /* Responsive */
    @container services-main (max-width: 968px) {
      .services-main__grid {
        grid-template-columns: 1fr;
      }

      .services-main__image-wrap {
        height: 32rem;
      }
    }

    @container services-main (max-width: 768px) {
      .services-main__title {
        font-size: var(--text-2xl);
      }

      .services-main__subtitle {
        font-size: var(--text-m);
      }
    }

.gallery-projects {
      container-type: inline-size;
      container-name: gallery-projects;
    }

    .gallery-projects__header {
      text-align: center;
      max-width: 70rem;
      margin: 0 auto var(--space-5xl);
    }

    .gallery-projects__header .badge {
      margin-bottom: var(--space-m);
    }

    .gallery-projects__title {
      font-size: var(--text-3xl);
      font-weight: 600;
      line-height: 1.2;
      margin-bottom: var(--space-l);
      color: var(--text-title);
    }

    .gallery-projects__subtitle {
      font-size: var(--text-l);
      line-height: 1.6;
      color: var(--text-body);
    }

    .gallery-projects__grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(32rem, 1fr));
      gap: var(--space-l);
    }

    .gallery-projects__item {
      position: relative;
      aspect-ratio: 4 / 3;
      overflow: hidden;
      border-radius: var(--radius-m);
      cursor: pointer;
      background: var(--bg-surface);
    }

    .gallery-projects__image {
      width: 100%;
      height: 100%;
      object-fit: cover;
      transition: transform 0.4s ease, filter 0.3s ease;
    }

    .gallery-projects__item:hover .gallery-projects__image {
      transform: scale(1.05);
      filter: brightness(0.85);
    }

    .gallery-projects__zoom {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%) scale(0.8);
      width: 5.6rem;
      height: 5.6rem;
      background: var(--light);
      border: none;
      border-radius: 50%;
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      opacity: 0;
      transition: all 0.3s ease;
      pointer-events: none;
    }

    .gallery-projects__item:hover .gallery-projects__zoom {
      opacity: 1;
      transform: translate(-50%, -50%) scale(1);
    }

    .gallery-projects__zoom .lucide {
      color: var(--primary);
      width: 2.4rem;
      height: 2.4rem;
    }

    /* Lightbox */
    .gallery-projects__lightbox {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background: var(--dark-95);
      z-index: 10000;
      display: flex;
      align-items: center;
      justify-content: center;
      opacity: 0;
      visibility: hidden;
      transition: all 0.3s ease;
      backdrop-filter: blur(10px);
    }

    .gallery-projects__lightbox.active {
      opacity: 1;
      visibility: visible;
    }

    .gallery-projects__lightbox-image {
      max-width: 90vw;
      max-height: 85vh;
      object-fit: contain;
      border-radius: var(--radius-m);
      box-shadow: var(--shadow-xl);
    }

    .gallery-projects__lightbox-close,
    .gallery-projects__lightbox-prev,
    .gallery-projects__lightbox-next {
      position: absolute;
      width: 5.6rem;
      height: 5.6rem;
      background: var(--light);
      border: none;
      border-radius: var(--radius-s);
      display: flex;
      align-items: center;
      justify-content: center;
      cursor: pointer;
      transition: all 0.3s ease;
      z-index: 10001;
    }

    .gallery-projects__lightbox-close:hover,
    .gallery-projects__lightbox-prev:hover,
    .gallery-projects__lightbox-next:hover {
      background: var(--primary);
    }

    .gallery-projects__lightbox-close:hover .lucide,
    .gallery-projects__lightbox-prev:hover .lucide,
    .gallery-projects__lightbox-next:hover .lucide {
      color: var(--light);
    }

    .gallery-projects__lightbox-close {
      top: var(--space-2xl);
      right: var(--space-2xl);
    }

    .gallery-projects__lightbox-prev {
      left: var(--space-2xl);
    }

    .gallery-projects__lightbox-next {
      right: var(--space-2xl);
    }

    /* Responsive */
    @container gallery-projects (max-width: 768px) {
      .gallery-projects__grid {
        grid-template-columns: 1fr;
      }

      .gallery-projects__title {
        font-size: var(--text-2xl);
      }

      .gallery-projects__subtitle {
        font-size: var(--text-m);
      }

      .gallery-projects__lightbox-close,
      .gallery-projects__lightbox-prev,
      .gallery-projects__lightbox-next {
        width: 4.8rem;
        height: 4.8rem;
      }

      .gallery-projects__lightbox-close {
        top: var(--space-l);
        right: var(--space-l);
      }

      .gallery-projects__lightbox-prev {
        left: var(--space-l);
      }

      .gallery-projects__lightbox-next {
        right: var(--space-l);
      }
    }

.footer-main {
      container-type: inline-size;
      container-name: footer-main;
      background: var(--bg-surface);
      border-top: 1px solid var(--border-primary);
      padding: var(--space-6xl) var(--section-padding-x) var(--space-3xl);
    }

    .footer-main__grid {
      display: grid;
      grid-template-columns: 2fr 1.5fr 1.5fr 1fr;
      gap: var(--space-4xl);
      margin-bottom: var(--space-5xl);
    }

    /* Brand Section */
    .footer-main__brand {
      max-width: 32rem;
    }

    .footer-main__logo {
      height: 4rem;
      width: auto;
      margin-bottom: var(--space-l);
    }

    .footer-main__description {
      font-size: var(--text-s);
      line-height: 1.7;
      color: var(--text-body);
    }

    /* Section Titles */
    .footer-main__title {
      font-size: var(--text-l);
      font-weight: 600;
      color: var(--text-title);
      margin-bottom: var(--space-l);
    }

    /* Lists */
    .footer-main__list {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: var(--space-m);
    }

    .footer-main__list-item {
      display: flex;
      align-items: flex-start;
      gap: var(--space-s);
      font-size: var(--text-s);
      color: var(--text-body);
      line-height: 1.6;
    }

    .footer-main__list-item .lucide-sm {
      color: var(--primary);
      flex-shrink: 0;
      margin-top: 0.2rem;
    }

    .footer-main__list-item a {
      color: var(--text-body);
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .footer-main__list-item a:hover {
      color: var(--primary);
    }

    /* Opening Hours */
    .footer-main__hours {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: var(--space-m);
    }

    .footer-main__hours-item {
      display: flex;
      justify-content: space-between;
      align-items: center;
      font-size: var(--text-s);
      padding-bottom: var(--space-s);
      border-bottom: 1px solid var(--border-primary);
    }

    .footer-main__hours-item span {
      color: var(--text-body);
    }

    .footer-main__hours-item strong {
      color: var(--primary);
      font-weight: 600;
    }

    /* Links */
    .footer-main__links {
      list-style: none;
      display: flex;
      flex-direction: column;
      gap: var(--space-s);
    }

    .footer-main__link {
      font-size: var(--text-s);
      color: var(--text-body);
      text-decoration: none;
      transition: all 0.3s ease;
      display: inline-block;
    }

    .footer-main__link:hover {
      color: var(--primary);
      transform: translateX(0.4rem);
    }

    /* Bottom Bar */
    .footer-main__bottom {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding-top: var(--space-2xl);
      border-top: 1px solid var(--border-primary);
    }

    .footer-main__copyright {
      font-size: var(--text-xs);
      color: var(--text-body);
    }

    .footer-main__legal {
      display: flex;
      align-items: center;
      gap: var(--space-s);
    }

    .footer-main__legal-link {
      font-size: var(--text-xs);
      color: var(--text-body);
      text-decoration: none;
      transition: color 0.3s ease;
    }

    .footer-main__legal-link:hover {
      color: var(--primary);
    }

    .footer-main__separator {
      color: var(--border-primary);
    }

    /* Responsive */
    @container footer-main (max-width: 968px) {
      .footer-main__grid {
        grid-template-columns: 1fr 1fr;
        gap: var(--space-3xl);
      }

      .footer-main__brand {
        grid-column: 1 / -1;
        max-width: 100%;
      }
    }

    @container footer-main (max-width: 640px) {
      .footer-main__grid {
        grid-template-columns: 1fr;
      }

      .footer-main__bottom {
        flex-direction: column;
        gap: var(--space-m);
        text-align: center;
      }
    }

