

      /* Base styles */

      * {

        margin: 0;

        padding: 0;

        box-sizing: border-box;

        font-family: 'Roboto', sans-serif;

      }



      /* ===========================================
         UNIQUE OLIMPOSGAZAB HEADER STYLES
         =========================================== */

      .site-header { 
        background: linear-gradient(135deg, 
          rgba(3, 7, 30, 0.95) 0%, 
          rgba(20, 20, 50, 0.98) 50%, 
          rgba(3, 7, 30, 0.95) 100%);
        backdrop-filter: blur(20px);
        -webkit-backdrop-filter: blur(20px);
        border-bottom: 2px solid rgba(255, 0, 110, 0.3);
        position: sticky;
        top: 0;
        z-index: 1000;
        padding: 0;
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
        animation: headerSlideDown 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        overflow: hidden;
      }

      /* Header Animation */
      @keyframes headerSlideDown {
        0% {
          transform: translateY(-100%);
          opacity: 0;
        }
        100% {
          transform: translateY(0);
          opacity: 1;
        }
      }

      /* Animated Background Pattern */
      .site-header::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: 
          radial-gradient(circle at 20% 50%, rgba(255, 0, 110, 0.1) 0%, transparent 50%),
          radial-gradient(circle at 80% 20%, rgba(251, 86, 7, 0.1) 0%, transparent 50%),
          radial-gradient(circle at 40% 80%, rgba(255, 0, 110, 0.05) 0%, transparent 50%);
        animation: headerPatternMove 20s ease-in-out infinite;
        z-index: -1;
      }

      @keyframes headerPatternMove {
        0%, 100% { transform: translateX(0) translateY(0) rotate(0deg); }
        25% { transform: translateX(10px) translateY(-5px) rotate(1deg); }
        50% { transform: translateX(-5px) translateY(10px) rotate(-1deg); }
        75% { transform: translateX(5px) translateY(-10px) rotate(0.5deg); }
      }



      .header-content {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
        max-width: 1400px;
        margin: 0 auto;
        gap: 1rem;
        padding: 1.5rem 2rem;
        position: relative;
        z-index: 2;
        animation: headerContentFadeIn 1s ease-out 0.3s both;
      }

      @keyframes headerContentFadeIn {
        0% {
          opacity: 0;
          transform: translateY(20px);
        }
        100% {
          opacity: 1;
          transform: translateY(0);
        }
      }



      .site-branding {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-right: 1rem;
        flex-shrink: 1;
        min-width: 0;
        position: relative;
        animation: brandingGlow 3s ease-in-out infinite;
      }

      @keyframes brandingGlow {
        0%, 100% { 
          filter: drop-shadow(0 0 5px rgba(255, 0, 110, 0.3));
        }
        50% { 
          filter: drop-shadow(0 0 15px rgba(255, 0, 110, 0.6)) 
                  drop-shadow(0 0 25px rgba(251, 86, 7, 0.3));
        }
      }



      .site-title {
        margin: 0;
        font-size: 2.2rem;
        font-weight: 800;
        position: relative;
        background: linear-gradient(45deg, #ff006e, #fb5607, #ff006e);
        background-size: 200% 200%;
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        background-clip: text;
        animation: titleGradient 4s ease-in-out infinite;
        text-shadow: 0 0 30px rgba(255, 0, 110, 0.5);
        letter-spacing: 1px;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
      }

      @keyframes titleGradient {
        0%, 100% { 
          background-position: 0% 50%;
          transform: scale(1);
        }
        50% { 
          background-position: 100% 50%;
          transform: scale(1.02);
        }
      }

      .site-title:hover {
        transform: scale(1.05) translateY(-2px);
        filter: drop-shadow(0 5px 15px rgba(255, 0, 110, 0.4));
      }



      .site-nav {
        display: flex;
        align-items: center;
        flex-shrink: 0;
        position: relative;
        animation: navSlideIn 1s ease-out 0.6s both;
      }

      @keyframes navSlideIn {
        0% {
          opacity: 0;
          transform: translateX(50px);
        }
        100% {
          opacity: 1;
          transform: translateX(0);
        }
      }



      .site-title a {
        color: transparent;
        text-decoration: none;
        transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        position: relative;
        display: inline-block;
      }

      .site-title a::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: linear-gradient(45deg, #ff006e, #fb5607);
        border-radius: 8px;
        opacity: 0;
        transition: opacity 0.3s ease;
        z-index: -1;
      }

      .site-title a:hover::before {
        opacity: 0.1;
      }



      .site-title a:hover {
        transform: scale(1.05) translateY(-2px);
        filter: drop-shadow(0 5px 15px rgba(255, 0, 110, 0.4));
      }



      .site-domain {

        font-size: 0.9rem;

        color: var(--header-title-color, #666);

        opacity: 0.8;

        margin-top: 4px;

      }



      .site-nav {

        position: relative;

      }



      .menu-toggle {

        display: none;

        flex-direction: column;

        background: none;

        border: none;

        cursor: pointer;

        padding: 0.5rem;

        color: #1976d2;

      }



      .menu-toggle span {

        width: 25px;

        height: 3px;

        background: var(--header-link-color, #1976d2) !important;

        margin: 3px 0;

        transition: 0.3s;

      }



      .nav-menu {
        display: flex;
        list-style: none;
        margin: 0;
        padding: 0;
        gap: 0.8rem;
        align-items: center;
        position: relative;
      }

      .nav-menu::before {
        content: '';
        position: absolute;
        top: 50%;
        left: -10px;
        right: -10px;
        height: 2px;
        background: linear-gradient(90deg, 
          transparent 0%, 
          rgba(255, 0, 110, 0.3) 20%, 
          rgba(251, 86, 7, 0.3) 50%, 
          rgba(255, 0, 110, 0.3) 80%, 
          transparent 100%);
        transform: translateY(-50%);
        opacity: 0;
        transition: opacity 0.3s ease;
        z-index: -1;
      }

      .nav-menu:hover::before {
        opacity: 1;
      }



      .nav-menu li {

        margin: 0;

        list-style: none;

      }



      .nav-menu li a {

        all: unset;

        cursor: pointer;

      }



      .nav-menu a,
      .nav-link {
        color: #fb5607 !important;
        text-decoration: none !important;
        font-weight: 600;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        padding: 0.8rem 1.2rem;
        border-radius: 12px;
        background: rgba(255, 255, 255, 0.05) !important;
        display: inline-block;
        border: 1px solid rgba(255, 0, 110, 0.2) !important;
        box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
        font-size: 0.9rem;
        line-height: 1.4;
        white-space: nowrap;
        position: relative;
        overflow: hidden;
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
      }

      .nav-menu a::before,
      .nav-link::before {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, 
          transparent, 
          rgba(255, 0, 110, 0.2), 
          transparent);
        transition: left 0.5s ease;
        z-index: -1;
      }

      .nav-menu a:hover::before,
      .nav-link:hover::before {
        left: 100%;
      }



      .nav-menu a:hover,
      .nav-link:hover {
        color: #ffffff !important;
        background: linear-gradient(135deg, 
          rgba(255, 0, 110, 0.8) 0%, 
          rgba(251, 86, 7, 0.8) 100%) !important;
        transform: translateY(-3px) scale(1.05) !important;
        box-shadow: 0 8px 25px rgba(255, 0, 110, 0.4) !important;
        border-color: rgba(255, 0, 110, 0.6) !important;
      }



      /* ENHANCED ACTIVE LINK STYLES */
      .nav-link.active {
        background: linear-gradient(135deg, 
          rgba(255, 0, 110, 0.9) 0%, 
          rgba(251, 86, 7, 0.9) 100%) !important;
        color: #ffffff !important;
        font-weight: 700 !important;
        border-radius: 15px !important;
        padding: 0.8rem 1.5rem !important;
        box-shadow: 0 6px 20px rgba(255, 0, 110, 0.5) !important;
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
        transform: translateY(-2px) scale(1.02) !important;
        border: 2px solid rgba(255, 255, 255, 0.3) !important;
        position: relative;
        overflow: hidden;
      }

      .nav-link.active::after {
        content: '';
        position: absolute;
        top: 0;
        left: -100%;
        width: 100%;
        height: 100%;
        background: linear-gradient(90deg, 
          transparent, 
          rgba(255, 255, 255, 0.3), 
          transparent);
        animation: activeShimmer 2s ease-in-out infinite;
        z-index: 1;
      }

      @keyframes activeShimmer {
        0% { left: -100%; }
        50% { left: 100%; }
        100% { left: 100%; }
      }



      /* ===========================================
         MOBILE HEADER STYLES
         =========================================== */

      @media (max-width: 768px) {
        .site-header {
          padding: 0;
          background: linear-gradient(135deg, 
            rgba(3, 7, 30, 0.98) 0%, 
            rgba(20, 20, 50, 0.99) 50%, 
            rgba(3, 7, 30, 0.98) 100%);
          backdrop-filter: blur(25px);
          -webkit-backdrop-filter: blur(25px);
        }

        .header-content {
          padding: 1rem 1.5rem;
          gap: 0.5rem;
        }

        .site-title {
          font-size: 1.8rem;
          animation: mobileTitlePulse 3s ease-in-out infinite;
        }

        @keyframes mobileTitlePulse {
          0%, 100% { 
            transform: scale(1);
            filter: drop-shadow(0 0 8px rgba(255, 0, 110, 0.4));
          }
          50% { 
            transform: scale(1.03);
            filter: drop-shadow(0 0 15px rgba(255, 0, 110, 0.7));
          }
        }

        .menu-toggle {
          display: flex !important;
          flex-direction: column;
          justify-content: center;
          align-items: center;
          width: 50px;
          height: 50px;
          background: rgba(255, 0, 110, 0.1) !important;
          border: 2px solid rgba(255, 0, 110, 0.3) !important;
          border-radius: 12px !important;
          cursor: pointer !important;
          padding: 0 !important;
          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
          position: relative;
          overflow: hidden;
        }

        .menu-toggle::before {
          content: '';
          position: absolute;
          top: 0;
          left: -100%;
          width: 100%;
          height: 100%;
          background: linear-gradient(90deg, 
            transparent, 
            rgba(255, 0, 110, 0.2), 
            transparent);
          transition: left 0.5s ease;
        }

        .menu-toggle:hover::before {
          left: 100%;
        }

        .menu-toggle:hover {
          background: rgba(255, 0, 110, 0.2) !important;
          border-color: rgba(255, 0, 110, 0.6) !important;
          transform: scale(1.05);
          box-shadow: 0 4px 15px rgba(255, 0, 110, 0.3);
        }

        .menu-toggle span {
          background: linear-gradient(45deg, #ff006e, #fb5607) !important;
          width: 28px !important;
          height: 3px !important;
          margin: 3px 0 !important;
          display: block !important;
          border-radius: 2px !important;
          transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
          position: relative;
        }

        .menu-toggle.active span:nth-child(1) {
          transform: translateY(9px) rotate(45deg);
          background: #ffffff !important;
        }

        .menu-toggle.active span:nth-child(2) {
          opacity: 0;
          transform: scale(0);
        }

        .menu-toggle.active span:nth-child(3) {
          transform: translateY(-9px) rotate(-45deg);
          background: #ffffff !important;
        }

        .nav-menu {
          position: fixed;
          top: 0;
          left: 0;
          width: 100%;
          height: 100vh;
          background: linear-gradient(135deg, 
            rgba(3, 7, 30, 0.98) 0%, 
            rgba(20, 20, 50, 0.99) 50%, 
            rgba(3, 7, 30, 0.98) 100%);
          backdrop-filter: blur(25px);
          -webkit-backdrop-filter: blur(25px);
          flex-direction: column;
          justify-content: center;
          align-items: center;
          gap: 2rem;
          display: none;
          z-index: 999;
          animation: mobileMenuSlide 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }

        @keyframes mobileMenuSlide {
          0% {
            transform: translateX(-100%);
            opacity: 0;
          }
          100% {
            transform: translateX(0);
            opacity: 1;
          }
        }

        .nav-menu.active {
          display: flex !important;
        }

        .nav-menu a,
        .nav-link {
          font-size: 1.3rem !important;
          padding: 1.2rem 2.5rem !important;
          border-radius: 20px !important;
          background: rgba(255, 255, 255, 0.08) !important;
          border: 2px solid rgba(255, 0, 110, 0.3) !important;
          box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2) !important;
          width: 280px !important;
          text-align: center !important;
          animation: mobileNavItemFade 0.6s ease-out both;
        }

        @keyframes mobileNavItemFade {
          0% {
            opacity: 0;
            transform: translateY(30px);
          }
          100% {
            opacity: 1;
            transform: translateY(0);
          }
        }

        .nav-menu a:hover,
        .nav-link:hover {
          background: linear-gradient(135deg, 
            rgba(255, 0, 110, 0.8) 0%, 
            rgba(251, 86, 7, 0.8) 100%) !important;
          transform: translateY(-5px) scale(1.05) !important;
          box-shadow: 0 10px 30px rgba(255, 0, 110, 0.4) !important;
          border-color: rgba(255, 0, 110, 0.8) !important;
        }

        .nav-link.active {
          background: linear-gradient(135deg, 
            rgba(255, 0, 110, 0.9) 0%, 
            rgba(251, 86, 7, 0.9) 100%) !important;
          transform: translateY(-3px) scale(1.08) !important;
          box-shadow: 0 8px 25px rgba(255, 0, 110, 0.6) !important;
          border: 3px solid rgba(255, 255, 255, 0.4) !important;
        }

        .site-branding {
          margin-right: 0.5rem;
          flex-shrink: 1;
          min-width: 0;
        }
      }

      @media (max-width: 480px) {
        .site-title {
          font-size: 1.5rem;
        }

        .header-content {
          padding: 0.8rem 1rem;
        }

        .nav-menu a,
        .nav-link {
          font-size: 1.1rem !important;
          padding: 1rem 2rem !important;
          width: 250px !important;
        }
      }

      /* ===========================================
         ADDITIONAL HEADER EFFECTS
         =========================================== */

      /* Scroll effects */
      .site-header.scrolled {
        background: linear-gradient(135deg, 
          rgba(3, 7, 30, 0.98) 0%, 
          rgba(20, 20, 50, 0.99) 50%, 
          rgba(3, 7, 30, 0.98) 100%);
        backdrop-filter: blur(30px);
        -webkit-backdrop-filter: blur(30px);
        box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
        border-bottom: 2px solid rgba(255, 0, 110, 0.5);
      }

      /* Mobile menu animation classes */
      .nav-menu a.animate-in,
      .nav-link.animate-in {
        animation: mobileNavItemSlideIn 0.6s ease-out both;
      }

      @keyframes mobileNavItemSlideIn {
        0% {
          opacity: 0;
          transform: translateY(30px) scale(0.9);
        }
        100% {
          opacity: 1;
          transform: translateY(0) scale(1);
        }
      }

      /* Enhanced hover effects for desktop */
      @media (min-width: 769px) {
        .nav-menu a:hover,
        .nav-link:hover {
          animation: navItemPulse 0.6s ease-in-out;
        }

        @keyframes navItemPulse {
          0% { transform: translateY(-3px) scale(1.05); }
          50% { transform: translateY(-5px) scale(1.08); }
          100% { transform: translateY(-3px) scale(1.05); }
        }

        .site-title:hover {
          animation: titleGlow 0.8s ease-in-out;
        }

        @keyframes titleGlow {
          0%, 100% { 
            filter: drop-shadow(0 0 5px rgba(255, 0, 110, 0.3));
          }
          50% { 
            filter: drop-shadow(0 0 20px rgba(255, 0, 110, 0.8)) 
                    drop-shadow(0 0 30px rgba(251, 86, 7, 0.4));
          }
        }
      }

      /* Loading animation for header */
      .site-header.loading {
        animation: headerLoad 1.2s ease-out;
      }

      @keyframes headerLoad {
        0% {
          transform: translateY(-100%);
          opacity: 0;
        }
        50% {
          transform: translateY(-20%);
          opacity: 0.5;
        }
        100% {
          transform: translateY(0);
          opacity: 1;
        }
      }

      /* Enhanced mobile menu backdrop */
      .nav-menu.active::before {
        content: '';
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.3);
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);
        z-index: -1;
        animation: backdropFadeIn 0.3s ease-out;
      }

      @keyframes backdropFadeIn {
        0% { opacity: 0; }
        100% { opacity: 1; }
      }

      /* Performance optimizations */
      .site-header,
      .nav-menu,
      .nav-menu a,
      .nav-link {
        will-change: transform, opacity;
      }

      /* Reduced motion support */
      @media (prefers-reduced-motion: reduce) {
        .site-header,
        .site-title,
        .nav-menu a,
        .nav-link,
        .menu-toggle {
          animation: none !important;
          transition: none !important;
        }
        
        .site-title {
          background: #ff006e;
          -webkit-background-clip: text;
          background-clip: text;
          -webkit-text-fill-color: transparent;
          color: transparent;
        }
      }



      /* Styles for sections without cards */

      .section-nocards {

        background: linear-gradient(135deg, #f6f9fc 0%, #ffffff 100%);

        border-radius: 40px;

        padding: 5rem 3rem;

        margin: 4rem auto;

        max-width: 1400px;

        box-shadow: 0 30px 60px rgba(0,0,0,0.15);

        position: relative;

        overflow: hidden;

      }



      .section-nocards::before {

        content: "";

        position: absolute;

        top: 0;

        left: 0;

        right: 0;

        height: 8px;

        background: linear-gradient(90deg, #FF6B6B, #4ECDC4);

      }



      .section-nocards h2 {

        font-size: 3rem;

        font-weight: 900;

        text-align: center;

        margin-bottom: 3rem;

        background: linear-gradient(45deg, #2C3E50, #3498DB);

        -webkit-background-clip: text;

        -webkit-text-fill-color: transparent;

        text-transform: uppercase;

        letter-spacing: 3px;

        font-family: "Montserrat", sans-serif;

        text-shadow: 3px 3px 6px rgba(0,0,0,0.2);

      }



      .section-nocards p {

        font-size: 1.8rem;

        text-align: center;

        margin-bottom: 5rem;

        color: #34495E;

        font-family: "Playfair Display", serif;

        font-style: italic;

        line-height: 1.8;

        max-width: 800px;

        margin: 0 auto 5rem;

        padding: 0 1.5rem;

      }



      /* Styles for blocks in sections without cards */

      .section-nocards .service-block {

        background: rgba(255, 255, 255, 0.95);

        border-radius: 30px;

        padding: 4rem;

        box-shadow: 0 15px 45px rgba(0,0,0,0.08);

        border: 2px solid rgba(0,0,0,0.08);

        transition: all 0.6s cubic-bezier(0.4, 0, 0.2, 1);

        transform: translateY(0);

        margin-bottom: 4rem;

      }



      .section-nocards .service-block:hover {

        transform: translateY(-20px);

        box-shadow: 0 30px 60px rgba(0,0,0,0.15);

        border-color: #4ECDC4;

        border-width: 3px;

      }



      .section-nocards .service-block h3 {

        font-size: 2.8rem;

        font-weight: 800;

        margin-bottom: 2.5rem;

        color: #2C3E50;

        font-family: "Montserrat", sans-serif;

        border-bottom: 4px solid #4ECDC4;

        padding-bottom: 1.5rem;

      }



      .section-nocards .service-block p {

        font-size: 1.5rem;

        line-height: 2;

        color: #34495E;

        font-family: "Playfair Display", serif;

        white-space: pre-wrap;

        text-align: left;

        margin: 0;

      }



      /* Styles for sections without cards with images */

      .section-nocards.with-image {

        display: flex;

        flex-direction: row;

        align-items: flex-start;

        gap: 4rem;

      }



      .section-nocards.with-image .content {

        flex: 1;

      }



      .section-nocards.with-image .image-container {

        flex: 0 0 40%;

        position: relative;

        border-radius: 20px;

        overflow: hidden;

        box-shadow: 0 20px 40px rgba(0,0,0,0.15);

        transition: all 0.4s ease;

      }



      .section-nocards.with-image .image-container:hover {

        transform: translateY(-10px);

        box-shadow: 0 30px 60px rgba(0,0,0,0.2);

      }



      .section-nocards.with-image .image-container img {

        width: 100%;

        height: auto;

        display: block;

        transition: transform 0.4s ease;

      }



      .section-nocards.with-image .image-container:hover img {

        transform: scale(1.05);

      }



      /* Animations */

      @keyframes fadeInUp {

        from {

          opacity: 0;

          transform: translateY(20px);

        }

        to {

          opacity: 1;

          transform: translateY(0);

        }

      }



      .section-nocards .service-block {

        animation: fadeInUp 0.7s ease-out forwards;

      }



      /* Responsiveness */

      @media (max-width: 768px) {

        .section-nocards {

          padding: 3rem 1.5rem;

          margin: 2rem auto;

          border-radius: 20px;

        }



        .section-nocards h2 {

          font-size: 2rem;

          margin-bottom: 2rem;

        }



        .section-nocards p {

          font-size: 1.2rem;

          margin-bottom: 3rem;

        }



        .section-nocards .service-block {

          padding: 2rem;

          margin-bottom: 2rem;

        }



        .section-nocards .service-block h3 {

          font-size: 1.8rem;

          margin-bottom: 1.5rem;

        }



        .section-nocards .service-block p {

          font-size: 1.1rem;

          line-height: 1.6;

        }



        .section-nocards.with-image {

          flex-direction: column;

        }



        .section-nocards.with-image .image-container {

          flex: 0 0 100%;

          margin-bottom: 2rem;

        }

      }



      /* Other styles */

      header {

        position: fixed;

        top: 0;

        left: 0;

        right: 0;

        z-index: 1000;

      }



      nav {

        padding: 1rem;

        box-shadow: 0 2px 4px rgba(0,0,0,0.1);

      }



      .nav-container {

        max-width: 1200px;

        margin: 0 auto;

        display: flex;

        justify-content: space-between;

        align-items: center;

        padding: 0 1rem;

      }



      .logo {

        font-size: 1.5rem;

        font-weight: 700;

        text-decoration: none;

        white-space: nowrap;

        margin-right: 1rem;

        flex-shrink: 1;

        min-width: 0;

        overflow: hidden;

        text-overflow: ellipsis;

      }



      .domain {

        display: block;

        margin-top: 0.25rem;

        font-size: 0.9rem;

        font-weight: normal;

        opacity: 0.8;

        white-space: nowrap;

      }



      .nav-menu {

        display: flex;

        list-style: none;

        margin: 0;

        padding: 0;

        flex-wrap: nowrap;

      }



      .nav-menu li {

        margin-left: 2rem;

        white-space: nowrap;

      }



      .nav-menu a {

        text-decoration: none;

        position: relative;

        white-space: nowrap;

      }



      .nav-menu a::after {

        content: '';

        position: absolute;

        bottom: -5px;

        left: 0;

        width: 0;

        height: 2px;

        background-color: currentColor;

        transition: width 0.3s ease;

      }



      .nav-menu a:hover::after {

        width: 100%;

      }





      .menu-toggle span {

        display: block;

        width: 25px;

        height: 3px;

        background: var(--header-link-color, #333);

        margin: 5px 0;

        transition: all 0.3s ease;

      }



      @media (max-width: 768px) {



        .nav-menu {

          display: none !important;

          position: absolute;

          top: 100%;

          left: 0;

          right: 0;

          background: var(--menu-bg-color, #fff);

          padding: 1rem 0;

          flex-direction: column;

          box-shadow: 0 2px 8px rgba(0,0,0,0.15);

          z-index: 1001;

          border-bottom-left-radius: 12px;

          border-bottom-right-radius: 12px;

        }



        .nav-menu.active {

          display: flex !important;

        }



        .nav-menu li {

          margin: 0.5rem 0;

          width: 100%;

          text-align: center;

        }



        .nav-menu a {

          display: block;

          padding: 0.75rem 1rem;

          font-size: 1.1rem;

          font-weight: 500;

          color: var(--menu-link-color, #1976d2) !important;

          background: transparent;

          transition: color 0.3s;

        }



        .nav-menu a::after {

          display: none;

        }

        

        .nav-link.active {

          background: #1976d2 !important;

          color: #ffffff !important;

          font-weight: bold !important;

          border-radius: 20px !important;

          padding: 0.5rem 1rem !important;

          box-shadow: 0 2px 8px rgba(25, 118, 210, 0.3) !important;

          transition: all 0.3s ease !important;

        }

        @media (max-width: 1024px) {
          .site-nav ul {
            gap: 0.3rem;
          }
          
          .site-nav a {
            padding: 0.25rem 0.5rem;
            font-size: 0.9rem;
          }
        }



        .logo {

          font-size: 1.1rem;

          margin-right: 0.5rem;

          white-space: nowrap;

          flex-shrink: 1;

          min-width: 0;

          overflow: hidden;

          text-overflow: ellipsis;

        }

      }



      @media (max-width: 480px) {

        .nav-container {

          padding: 0 0.5rem;

        }



        .logo {

          font-size: 1rem;

        }



        .nav-menu a {

          font-size: 0.9rem;

        }

      }



      body {

        line-height: 1.6;

        color: #333;

        min-height: 100vh;

        display: flex;

        flex-direction: column;

        overflow-x: hidden;

        margin: 0;

        padding: 0;

        width: 100%;

      }



      /* ФИНАЛЬНЫЕ СТИЛИ ДЛЯ АКТИВНОЙ ССЫЛКИ */

      .nav-link.active {

        background: #1976d2 !important;

        color: #ffffff !important;

        font-weight: bold !important;

        border-radius: 20px !important;

        padding: 0.5rem 1rem !important;

        box-shadow: 0 2px 8px rgba(25, 118, 210, 0.3) !important;

        transition: all 0.3s ease !important;

      }

      

      /* Styles for image gallery */

      .section-gallery {

        position: relative;

        overflow: hidden;

        border-radius: 12px;

        box-shadow: 0 4px 12px rgba(0,0,0,0.15);

      }

      

      .gallery-img {

        width: 100%;

        height: 100%;

        object-fit: cover;

        transition: opacity 0.5s ease;

      }

      

      .gallery-dot {

        cursor: pointer;

        transition: background-color 0.3s ease;

      }

      

      /* Styles for images inside sections with text wrapping */

      section p + .section-gallery,

      section h2 + .section-gallery {

        margin-top: 1rem;

        margin-bottom: 1rem;

      }



      /* Styles for section borders */

      section {

        position: relative;

        padding: 6rem 0;

        margin: 2rem 0;

        overflow: hidden;

      }



      section:first-child {

        margin-top: 0;

      }



      section:last-child {

        margin-bottom: 0;

      }





      .site-overlay {

        position: fixed;

        top: 0;

        left: 0;

        width: 100%;

        height: 100%;

        z-index: -1;

      }



      main {

        flex: 1;

        padding-top: 60px;

        width: 100%;

        overflow-x: hidden;

      }



      .hero {

        height: 100vh;

        display: flex;

        align-items: center;

        justify-content: center;

        text-align: center;

        padding: 0 2rem;

        position: relative;

        overflow: hidden;

      }



      .hero {

        position: relative;

        overflow: hidden;

      }



      .hero-bg-animation {

        position: absolute;

        top: -5%;

        left: -5%;

        width: 110%;

        height: 110%;

        background-size: cover;

        background-position: center;

        background-repeat: no-repeat;

        z-index: -1;

        animation: heroBackgroundZoom 15s ease-in-out infinite;

      }



      @keyframes heroBackgroundZoom {

        0% { 

          transform: scale(1);

        }

        50% { 

          transform: scale(1.05);

        }

        100% { 

          transform: scale(1);

        }

      }



      @keyframes zoomIn {

        0% {

          transform: scale(1);

        }

        100% {

          transform: scale(1.1);

        }

      }



      .hero-overlay {

        position: absolute;

        top: 0;

        left: 0;

        right: 0;

        bottom: 0;

        z-index: 1;

        animation: fadeIn 1s ease-in-out;

      }



      @keyframes fadeIn {

        from {

          opacity: 0;

        }

        to {

          opacity: 1;

        }

      }



      .hero-content {

        max-width: 800px;

        z-index: 2;

        position: relative;

        animation: slideUp 1s ease-out;

      }



      @keyframes slideUp {

        from {

          transform: translateY(50px);

          opacity: 0;

        }

        to {

          transform: translateY(0);

          opacity: 1;

        }

      }



      .hero h1 {

        font-size: 2.5rem;

        margin-bottom: 0.5rem;

        line-height: 1.1;

        text-shadow: 2px 2px 4px rgba(0,0,0,0.3);

        animation: none !important;

      }



      .hero p {

        font-size: 1.2rem;

        margin-bottom: 1rem;

        line-height: 1.3;

        max-width: 600px;

        margin-left: auto;

        margin-right: auto;

        text-shadow: 1px 1px 2px rgba(0,0,0,0.3);

        animation: none !important;

      }



      .hero button {

        padding: 1rem 2rem;

        font-size: 1.1rem;

        border: none;

        border-radius: 4px;

        cursor: pointer;

        transition: all 0.3s ease;

        box-shadow: 0 2px 4px rgba(0,0,0,0.2);

        animation: none !important;

      }



      .hero button:hover {

        transform: translateY(-2px);

        box-shadow: 0 4px 8px rgba(0,0,0,0.3);

      }



      .section {

        padding: 6rem 1rem;

        width: 100%;

        box-sizing: border-box;

        position: relative;

        overflow: hidden;

        background-color: var(--section-background-color, transparent);

        z-index: 1;

      }



      .section[data-show-background="false"] {

        background-color: transparent !important;

        background-image: none !important;

      }



      .section[data-show-background="false"] .section-background-blur,

      .section[data-show-background="false"] .section-overlay {

        display: none !important;

      }



      .section-background-blur {

        position: absolute;

        top: 0;

        left: 0;

        right: 0;

        bottom: 0;

        background-size: cover;

        background-position: center;

        z-index: 0;

        animation: zoomIn 20s ease-in-out infinite alternate;

      }



      .section-container {

        position: relative;

        z-index: 2;

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .section-header {

        text-align: center;

        margin-bottom: 3rem;

      }

      .section-header h2 {

        font-size: 2.5rem;

        margin-bottom: 1rem;

        position: relative;

      }



      .section-header h2::after {

        content: '';

        position: absolute;

        bottom: -10px;

        left: 50%;

        transform: translateX(-50%);

        width: 50px;

        height: 3px;

        background-color: #1976d2;

        transition: width 0.3s ease-in-out;

      }



      .section-header h2:hover::after {

        width: 100px;

      }



      .section-header p {

        font-size: 1.2rem;

        max-width: 800px;

        margin: 0 auto;

        line-height: 1.6;

      }



      .about-section {

        display: flex;

        align-items: flex-start;

        gap: 2rem;

        padding: 2rem;

        position: relative;

        border-radius: 16px;

        background: linear-gradient(145deg, #ffffff, #f5f5f5);

        box-shadow: 0 4px 20px rgba(0,0,0,0.1);

      }





      .about-content {

        flex: 1;

        display: flex;

        flex-direction: column;

        gap: 1rem;

        padding-left: 1rem;

        text-align: left;

        position: relative;

      }



      .about-content::before {

        content: "";

        position: absolute;

        left: 0;

        top: 0;

        bottom: 0;

        width: 4px;

        background: linear-gradient(to bottom, #1976d2, #42a5f5);

        border-radius: 2px;

      }



      .about-content h2 {

        font-size: 2.5rem;

        font-weight: 700;

        margin-bottom: 1rem;

        text-align: left;

        position: relative;

      }



      .about-content h2::after {

        content: "";

        position: absolute;

        bottom: -8px;

        left: 0;

        width: 60px;

        height: 4px;

        background: linear-gradient(to right, #1976d2, #42a5f5);

        border-radius: 2px;

      }



      .about-content p {

        font-size: 1.1rem;

        line-height: 1.6;

        text-align: left;

      }



      .section-image {

        width: 100%;

        margin: 2rem auto;

        text-align: center;

        max-width: 800px;

      }



      .section-image img {

        width: 100%;

        height: auto;

        border-radius: 12px;

        box-shadow: 0 4px 12px rgba(0,0,0,0.15);

        transition: transform 0.3s ease;

      }



      .section-image img:hover {

        transform: scale(1.02);

      }



      @media (max-width: 768px) {

        .about-section {

          flex-direction: column;

        }

        

        .about-content {

          padding-left: 0;

          padding-top: 1rem;

        }

      }



      .section h2 {

        font-size: 2.5rem;

        margin-bottom: 1rem;

        text-align: center;

        position: relative;

      }



      .section h2::after {

        content: '';

        position: absolute;

        bottom: -10px;

        left: 50%;

        transform: translateX(-50%);

        width: 50px;

        height: 3px;

        background-color: #1976d2;

        transition: width 0.3s ease-in-out;

      }

      .section h2:hover::after {

        width: 100px;

      }

      .section p {

        font-size: 1.1rem;

        margin-bottom: 3rem;

        text-align: center;

        max-width: 800px;

        margin-left: auto;

        margin-right: auto;

      }



      /* Container for cards */

      .cards-container {

        display: grid;

        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

        gap: 2rem;

        padding: 1rem;

        position: relative;

        z-index: 2;

        pointer-events: auto;

      }



      @media (max-width: 1024px) {

        .cards-container {

          grid-template-columns: repeat(2, 1fr);

        }

      }



      @media (max-width: 768px) {

        .cards-container {

          grid-template-columns: 1fr;

        }

      }



      /* Basic card styles with animations */

      .card {

        transition: all 0.3s ease-in-out;

        padding: 1.5rem;

        display: flex;

        flex-direction: column;

        background-color: #ffffff;

        width: 100%;

        max-width: 280px;

        border-radius: 12px;

        overflow: hidden;

        height: 100%;

        margin: 1rem;

        position: relative;

        z-index: 2;

      }



      /* Service image styles for image cards */

      .service-image {

        width: 100%;

        overflow: hidden;

        position: relative;

        background: #f8f9fa;

        display: flex;

        align-items: center;

        justify-content: center;

        border-radius: 8px;

      }



      .service-image img {

        width: 100%;

        height: 100%;

        object-fit: cover;

        transition: transform 0.3s ease;

      }



      .service-image:hover img {

        transform: scale(1.05);

      }



      /* Card headings and text */

      .card-title {

        color: #1a237e;

        margin-bottom: 0.7rem;

        font-size: 1.5rem;

        font-weight: 600;

        transition: all 0.3s ease-in-out;

      }



      .card-text {

        color: #455a64;

        font-size: 1rem;

        line-height: 1.6;

        transition: all 0.3s ease-in-out;

      }



      /* Simple Card */

      .card.simple {

        background-color: transparent;

        border: 3px solid #e0e0e0;

      }



      .card.simple:hover {

        transform: scale(1.2);

        z-index: 3;

      }



      /* Elevated Card */

      .card.elevated {

        background-color: #ffffff;

        border: 3px solid #e0e0e0;

        box-shadow: 0 2px 4px rgba(0,0,0,0.1);

      }



      .card.elevated:hover {

        transform: rotate(3deg) scale(1.05);

        box-shadow: 0 8px 16px rgba(0,0,0,0.2);

        z-index: 3;

      }



      .card.elevated:hover .card-title {

        color: #1976d2;

        transform: translateX(4px);

      }



      /* Outlined Card */

      .card.outlined {

        background: linear-gradient(to right, #e8f5e9, #c8e6c9);

        border: 3px solid #e0e0e0;

      }



      .card.outlined:hover {

        transform: skew(-5deg) translateY(-5px);

        border-color: #1976d2;

        z-index: 3;

      }



      .card.outlined:hover .card-title {

        color: #1976d2;

      }



      /* Accent Card */

      .card.accent {

        background-color: #ffffff;

        border: 3px solid #e0e0e0;

        position: relative;

      }



      .card.accent::before {

        content: "";

        position: absolute;

        left: 0;

        top: 0;

        bottom: 0;

        width: 4px;

        background: linear-gradient(to bottom, #1976d2, #42a5f5);

        transition: width 0.3s ease-in-out;

        z-index: 1;

      }



      .card.accent:hover {

        transform: translateX(10px) translateY(-5px);

        box-shadow: 0 4px 12px rgba(0,0,0,0.15);

        z-index: 3;

      }



      .card.accent:hover::before {

        width: 6px;

      }



      .card.accent:hover .card-title {

        color: #1976d2;

      }



      /* Gradient Card */

      .card.gradient {

        background: linear-gradient(135deg, #ffffff 0%, #f5f5f5 100%);

        border: 3px solid #e0e0e0;

        box-shadow: 0 2px 4px rgba(0,0,0,0.1);

        transition: all 0.3s ease-in-out;

        position: relative;

        z-index: 2;

      }



      .card.gradient:hover {

        transform: scale(1.2);

        box-shadow: 0 8px 16px rgba(0,0,0,0.2);

        z-index: 3;

      }



      .card.gradient:hover h3 {

        color: #1976d2;

      }



      .card.gradient:hover p {

        color: #455a64;

      }



      /* Container for sections */

      .section-container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 2rem;

      }



      /* Section heading */

      .section-header {

        text-align: center;

        margin-bottom: 4rem;

      }



      .section-header h2 {

        font-size: 2.5rem;

        margin-bottom: 1rem;

        position: relative;

        display: inline-block;

      }



      .section-header p {

        font-size: 1.2rem;

        max-width: 800px;

        margin: 0 auto;

        line-height: 1.6;

      }



      @media (max-width: 768px) {

        .contact-grid {

          grid-template-columns: 1fr !important;

          gap: 1.5rem !important;

        }

      }



      .section-image img:hover {

        transform: scale(1.02);

      }



      .image-upload-control {

        margin-top: 1rem;

        display: flex;

        justify-content: flex-start;

      }







      @keyframes fadeInSection {

        from {

          opacity: 0;

          transform: translateY(20px);

        }

        to {

          opacity: 1;

          transform: translateY(0);

        }

      }



      .upload-button {

        display: flex;

        align-items: center;

        gap: 0.5rem;

        padding: 0.5rem 1rem;

        background-color: #1976d2;

        color: white;

        border: none;

        border-radius: 4px;

        cursor: pointer;

        transition: background-color 0.3s ease;

      }



      .upload-button:hover {

        background-color: #1565c0;

      }



      .upload-button i {

        font-size: 1.2rem;

      }



      @media (max-width: 768px) {

        .nav-container {

          padding: 0 0.5rem;

        }



        .logo {

          font-size: 1rem;

        }



        .nav-menu a {

          font-size: 0.9rem;

        }

      }



      .cards-container.cards-2 {

        max-width: 1200px;

        margin-left: auto;

        margin-right: auto;

        display: grid;

        grid-template-columns: repeat(2, 1fr);

        gap: 2rem;

      }

      .cards-container.cards-3 {

        max-width: 1200px;

        margin-left: auto;

        margin-right: auto;

        display: grid;

        grid-template-columns: repeat(3, 1fr);

        gap: 2rem;

      }

      

      @media (max-width: 1024px) {

        .cards-container.cards-2,

        .cards-container.cards-3 {

          grid-template-columns: 1fr;

        }

      }

      

      .cards-container.cards-2 .card,

      .cards-container.cards-3 .card {

        max-width: 100%;

        width: 100%;

      }



      .card, .section-image img, .about-image img {

        opacity: 0;

        transform: translateY(40px);

        transition: opacity 0.8s cubic-bezier(0.4,0,0.2,1), transform 0.8s cubic-bezier(0.4,0,0.2,1);

      }

      .card.animate-on-scroll, .section-image img.animate-on-scroll, .about-image img.animate-on-scroll {

        opacity: 1;

        transform: translateY(0);

      }





      @media (max-width: 1024px) {

        .no-card-section {

          flex-direction: column;

          align-items: center;

        }

        

        .no-card-section .about-image {

          min-width: 100%;

          max-width: 500px;

          margin: 0 auto 2rem auto;

          order: -1;

        }

        

        .no-card-section .about-content {

          width: 100%;

          text-align: center;

        }

        

        .no-card-section .about-content h2,

        .no-card-section .about-content p,

        .no-card-section .about-content div {

          text-align: center !important;

        }

        

        .no-card-section .about-content div br {

          display: none;

        }

        

        .no-card-section .about-content div strong {

          display: block;

          margin-top: 1rem;

          margin-bottom: 0.5rem;

        }

      }



      /* Styles for text in sections */

      .section h2 {

        font-size: 2.5rem;

        font-weight: 700;

        line-height: 1.2;

        letter-spacing: -0.01562em;

        text-transform: none;

        margin-bottom: 1.5rem;

        text-align: center;

        color: inherit;

        word-wrap: break-word;

      }



      .section p {

        font-size: 1.25rem;

        font-weight: 400;

        line-height: 1.5;

        letter-spacing: 0.00938em;

        text-align: center;

        margin-bottom: 2rem;

        color: inherit;

        max-width: 100%;

        word-wrap: break-word;

      }



      @media (max-width: 600px) {

        .section h2 {

          font-size: 2rem;

        }

        .section p {

          font-size: 1rem;

        }

      }



      @media (max-width: 960px) {

        .section h2 {

          font-size: 2.25rem;

        }

        .section p {

          font-size: 1.1rem;

        }

      }



      /* Multi-page specific styles */

      

      /* Site Header for multi-page */

      .site-header {

        background: #03071e;

        color: #ff006e;

        padding: 1rem 0;

        box-shadow: 0 2px 10px rgba(0,0,0,0.1);

        position: sticky;

        top: 0;

        z-index: 1000;

      }



      .site-header .container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .site-header .header-content {

        display: flex;

        justify-content: space-between;

        align-items: center;

      }



      .site-header .site-title {

        margin: 0;

        font-size: 1.8rem;

        font-weight: 700;

      }



      .site-header .site-title a {

        color: inherit;

        text-decoration: none;

      }



      .site-nav ul {

        display: flex;

        list-style: none;

        margin: 0;

        padding: 0;

        gap: 0.5rem;

        flex-wrap: wrap;

        align-items: center;

      }



      .site-nav a {

        color: #fb5607;

        text-decoration: none;

        font-weight: 500;

        padding: 0.3rem 0.6rem;

        border-radius: 8px;

        transition: all 0.3s ease;

        white-space: nowrap;

      }



      .site-nav a:hover,

      .site-nav a.active {

        background: rgba(255,255,255,0.1);

        transform: translateY(-2px);

      }





      .menu-toggle span {

        width: 100%;

        height: 3px;

        background: var(--header-link-color, #333);

        border-radius: 2px;

        transition: all 0.3s ease;

        transform-origin: center;

      }



      .menu-toggle.active span:nth-child(1) {

        transform: translateY(9px) rotate(45deg);

      }



      .menu-toggle.active span:nth-child(2) {

        opacity: 0;

      }



      .menu-toggle.active span:nth-child(3) {

        transform: translateY(-9px) rotate(-45deg);

      }



      /* Site Footer for multi-page */

      .site-footer {

        background: #2c3e50;

        color: white;

        margin-top: 4rem;

        padding: 3rem 0 1rem;

      }



      .footer-container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .footer-content {

        display: grid;

        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));

        gap: 2rem;

        margin-bottom: 2rem;

      }



      .footer-info h3 {

        color: #ecf0f1;

        margin-bottom: 1rem;

        font-size: 1.5rem;

        font-weight: 600;

      }



      .footer-info p {

        color: #bdc3c7;

        line-height: 1.6;

        margin-bottom: 0.5rem;

      }



      .footer-links h4,

      .footer-contact h4 {

        color: #ecf0f1;

        margin-bottom: 1rem;

        font-size: 1.2rem;

        font-weight: 600;

      }



      .footer-links ul {

        list-style: none;

        padding: 0;

      }



      .footer-links li {

        margin-bottom: 0.5rem;

      }



      .footer-links a {

        color: #bdc3c7;

        text-decoration: none;

        transition: color 0.3s ease;

      }



      .footer-links a:hover {

        color: #3498db;

      }



      .footer-contact p {

        color: #bdc3c7;

        margin-bottom: 0.5rem;

        line-height: 1.6;

      }



      .footer-bottom {

        border-top: 1px solid #34495e;

        padding-top: 1rem;

        text-align: center;

      }



      .footer-bottom p {

        color: #95a5a6;

        margin: 0;

        font-size: 0.9rem;

      }



      @media (max-width: 768px) {

        .footer-content {

          grid-template-columns: 1fr;

          gap: 1.5rem;

        }

        

        .footer-info,

        .footer-links,

        .footer-contact {

          text-align: center;

        }

      }



      /* Hero Section for index page */

      .hero-section {

        background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);

        color: white;

        padding: 4rem 0;

        text-align: center;

      }



      .hero-section .container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .hero-title {

        font-size: 3rem;

        font-weight: 700;

        margin-bottom: 1rem;

      }



      .hero-subtitle {

        font-size: 1.5rem;

        font-weight: 300;

        margin-bottom: 1rem;

        opacity: 0.9;

      }



      .hero-description {

        font-size: 1.2rem;

        margin-bottom: 2rem;

        opacity: 0.8;

      }



      .hero-button {

        display: inline-block;

        background: #ff6b6b;

        color: white;

        padding: 1rem 2rem;

        text-decoration: none;

        border-radius: 50px;

        font-weight: 600;

        transition: all 0.3s ease;

      }



      .hero-button:hover {

        background: #ff5252;

        transform: translateY(-2px);

        box-shadow: 0 5px 15px rgba(255, 107, 107, 0.4);

      }



      /* Sections Preview Grid */

      .sections-preview {

        padding: 4rem 0;

      }



      .sections-preview .container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .sections-preview h2 {

        text-align: center;

        font-size: 2.5rem;

        margin-bottom: 3rem;

        color: #2c3e50;

      }



      .preview-grid {

        display: grid;

        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

        gap: 2rem;

      }



      .preview-card {

        background: white;

        border-radius: 15px;

        padding: 2rem;

        box-shadow: 0 10px 30px rgba(0,0,0,0.1);

        transition: all 0.3s ease;

        border: 1px solid #e9ecef;

      }



      .preview-card:hover {

        transform: translateY(-10px);

        box-shadow: 0 20px 40px rgba(0,0,0,0.15);

      }



      .preview-card h3 {

        color: #2c3e50;

        font-size: 1.5rem;

        margin-bottom: 1rem;

      }



      .preview-card p {

        color: #6c757d;

        line-height: 1.6;

        margin-bottom: 1.5rem;

      }



      .preview-link {

        display: inline-block;

        background: #007bff;

        color: white;

        padding: 0.75rem 1.5rem;

        text-decoration: none;

        border-radius: 8px;

        font-weight: 500;

        transition: all 0.3s ease;

      }



      .preview-link:hover {

        background: #0056b3;

        transform: translateY(-2px);

      }



      /* Стили для выделенного раздела */

      .featured-section {

        position: relative;

        overflow: hidden;

      }



      .featured-content {

        position: relative;

        z-index: 2;

      }



      .featured-image {

        border-radius: 15px;

        overflow: hidden;

        box-shadow: 0 15px 35px rgba(0,0,0,0.1);

      }



      .featured-image img {

        width: 100%;

        height: auto;

        display: block;

        transition: transform 0.3s ease;

      }



      .featured-image:hover img {

        transform: scale(1.05);

      }



      .featured-button:hover {

        transform: translateY(-2px);

        box-shadow: 0 8px 25px rgba(25, 118, 210, 0.3);

      }



      /* Стили для разных режимов отображения разделов */

      .sections-preview.mode-cards .preview-grid {

        display: grid;

        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

        gap: 2rem;

      }







      /* Стили для превью контактов */

      .contact-preview {

        position: relative;

        overflow: hidden;

      }



      .contact-preview-content {

        position: relative;

        z-index: 2;

      }



      .contact-preview-button:hover {

        transform: translateY(-2px);

        box-shadow: 0 8px 25px rgba(255,255,255,0.2);

      }



      /* Адаптивность для новых режимов */

      @media (max-width: 768px) {

        .featured-content {

          grid-template-columns: 1fr !important;

          gap: 2rem !important;
        }

        .featured-section .container {
          padding: 0 1rem !important;
        }

        .featured-text h2 {
          font-size: 2rem !important;
          text-align: center !important;
        }

        .featured-text p {
          font-size: 1.1rem !important;
          text-align: center !important;
        }

        .featured-elements {
          text-align: center !important;
        }

        .featured-actions {
          text-align: center !important;
        }



        .sections-preview.mode-cards .preview-grid {

          grid-template-columns: 1fr;

        }



        .contact-preview-info {

          flex-direction: column;

          gap: 1rem;

        }


        .contact-preview-content {
          grid-template-columns: 1fr !important;
          gap: 2rem !important;
        }
      }



      /* Section Content Pages */

      .section-content {

        padding: 2rem 0;

      }



      .section-content .container {

        max-width: 1200px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .section-title {

        font-size: 2.5rem;

        color: #2c3e50;

        margin-bottom: 1rem;

        text-align: center;

      }



      .section-description {

        font-size: 1.2rem;

        color: #6c757d;

        text-align: center;

        margin-bottom: 3rem;

        line-height: 1.6;

      }



      .cards-grid {

        display: grid;

        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

        gap: 2rem;

      }



      .cards-grid .card {

        background: white;

        border-radius: 15px;

        padding: 2rem;

        box-shadow: 0 10px 30px rgba(0,0,0,0.1);

        transition: all 0.3s ease;

        border: 1px solid #e9ecef;

      }



      .cards-grid .card:hover {

        transform: translateY(-5px);

        box-shadow: 0 15px 35px rgba(0,0,0,0.15);

      }



      .card-title {

        color: #2c3e50;

        font-size: 1.3rem;

        margin-bottom: 1rem;

      }



      .card-content {

        color: #6c757d;

        line-height: 1.6;

      }



      /* Contact Section */

      .contact-section {

        padding: 2rem 0;

      }



      .contact-section .container {

        max-width: 800px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .contact-section h1 {

        font-size: 2.5rem;

        color: #2c3e50;

        text-align: center;

        margin-bottom: 2rem;

      }



      .contact-section p {

        font-size: 1.2rem;

        color: #6c757d;

        text-align: center;

        margin-bottom: 2rem;

        line-height: 1.6;

      }



      .contact-info {

        background: inherit; /* Наследует фон от родительского контейнера */

        border-radius: 15px;

        padding: 2rem;

        box-shadow: 0 4px 12px rgba(0,0,0,0.1), 0 1px 3px rgba(0,0,0,0.08);

        border: 1px solid rgba(255,255,255,0.1);

      }



      .contact-info p {

        margin-bottom: 1rem;

        text-align: left;

        font-size: 1.1rem;

      }



      .contact-info strong {

        color: #2c3e50;

      }



      /* Legal Content */

      .legal-content {

        padding: 2rem 0;

      }



      .legal-content .container {

        max-width: 900px;

        margin: 0 auto;

        padding: 0 1rem;

      }



      .legal-content h1 {

        font-size: 2.5rem;

        color: #2c3e50;

        text-align: center;

        margin-bottom: 2rem;

      }



      .legal-content .content {

        background: white;

        border-radius: 15px;

        padding: 2rem;

        box-shadow: 0 10px 30px rgba(0,0,0,0.1);

        border: 1px solid #e9ecef;

        line-height: 1.6;

        color: #495057;

      }

      /* Responsive design for multi-page */

      @media (max-width: 768px) {

        .site-header .header-content {

          flex-direction: row;

          justify-content: space-between;

          align-items: center;

        }





        .site-nav ul {

          position: fixed;

          top: 0;

          left: 0;

          width: 100%;

          height: 100vh;

          background: #03071e;

          flex-direction: column;

          justify-content: center;

          align-items: center;

          gap: 12px;

          transform: translateX(-100%);

          transition: transform 0.3s ease;

          z-index: 1000;

          box-shadow: 2px 0 10px rgba(0,0,0,0.1);

        }



        .nav-menu.active {

          transform: translateX(0);

        }



        .site-nav a {

          font-size: 1.2rem;

          padding: 1rem 2rem;

          border-radius: 10px;

          width: 200px;

          text-align: center;

        }



        .hero-title {

          font-size: 2rem;

        }



        .hero-subtitle {

          font-size: 1.2rem;

        }



        .sections-preview h2 {

          font-size: 2rem;

        }



        .preview-grid {

          grid-template-columns: 1fr;

        }



        .section-title {

          font-size: 2rem;

        }



        .cards-grid {

          grid-template-columns: 1fr;

        }

      }



      /* Enhanced section styles from EnhancedSectionEditor */

      



      /* Animation keyframes */

      @keyframes fadeIn {

        from { opacity: 0; }

        to { opacity: 1; }

      }

      

      @keyframes slideInLeft {

        from { transform: translateX(-100%); opacity: 0; }

        to { transform: translateX(0); opacity: 1; }

      }

      

      @keyframes slideInRight {

        from { transform: translateX(100%); opacity: 0; }

        to { transform: translateX(0); opacity: 1; }

      }

      

      @keyframes slideInUp {

        from { transform: translateY(100%); opacity: 0; }

        to { transform: translateY(0); opacity: 1; }

      }

      

      @keyframes slideInDown {

        from { transform: translateY(-100%); opacity: 0; }

        to { transform: translateY(0); opacity: 1; }

      }

      

      @keyframes zoomIn {

        from { transform: scale(0.8); opacity: 0; }

        to { transform: scale(1); opacity: 1; }

      }

      

      @keyframes bounce {

        0%, 20%, 53%, 80%, 100% { transform: translateY(0); }

        40%, 43% { transform: translateY(-20px); }

        70% { transform: translateY(-10px); }

        90% { transform: translateY(-4px); }

      }

      

      @keyframes pulse {

        0% { transform: scale(1); }

        50% { transform: scale(1.05); }

        100% { transform: scale(1); }

      }

      

      /* Chart Components */

      .chart-component {

        animation: fadeInUp 0.6s ease-out;

      }

      

      .chart-component canvas {

        border-radius: 8px;

        box-shadow: 0 2px 8px rgba(0,0,0,0.1);

      }

      

      .chart-component div[id^="chart-"] {

        border-radius: 8px;

        box-shadow: 0 2px 8px rgba(0,0,0,0.1);

      }

      

      @keyframes fadeInUp {

        from {

          opacity: 0;

          transform: translateY(30px);

        }

        to {

          opacity: 1;

          transform: translateY(0);

        }

      }

      /* Общие стили для счетчиков */
      .animated-counter {
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
      }
      
      .counter-description {
        word-break: break-word !important;
        overflow-wrap: break-word !important;
        hyphens: auto !important;
        text-align: center !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
      }

      /* Мобильные стили для счетчиков */
      @media (max-width: 768px) {
        .animated-counter {
          text-align: center !important;
          max-width: 100% !important;
          overflow: hidden !important;
          width: 100% !important;
          margin: 0 auto !important;
          padding: 1rem !important;
          box-sizing: border-box !important;
        }
        
        .counter-container {
          width: 100% !important;
          max-width: 100% !important;
          overflow: hidden !important;
          text-align: center !important;
          margin: 0 auto !important;
        }
        
        .counter-number-wrapper {
          width: 100% !important;
          max-width: 100% !important;
          justify-content: center !important;
          flex-wrap: wrap !important;
          text-align: center !important;
        }
        
        .counter {
          display: inline-block !important;
          text-align: center !important;
          width: auto !important;
          max-width: 100% !important;
        }
        
        .counter-suffix {
          display: inline-block !important;
          text-align: center !important;
          max-width: 100% !important;
        }
        
        .counter-description {
          text-align: center !important;
          width: 100% !important;
          max-width: 100% !important;
          margin: 0.5rem auto !important;
          display: block !important;
          word-break: break-word !important;
          overflow-wrap: break-word !important;
          hyphens: auto !important;
          line-height: 1.4 !important;
          padding: 0 5px !important;
          box-sizing: border-box !important;
        }
        
        .content-element.animated-counter {
          text-align: center !important;
          width: 100% !important;
          max-width: 100% !important;
          margin: 0 auto !important;
        }
      }

    