 /* Smooth scrolling */
 html {
     scroll-behavior: smooth;

 }

 :root {
     --swiper-theme-color: rgb(0 88 73 / var(--tw-bg-opacity, 1));
 }

 /* Burger animation */
 .burger-line {
     transition: all 0.3s ease;
     transform-origin: center;
 }

 .burger-active .burger-line:nth-child(1) {
     transform: rotate(45deg) translate(5px, 5px);
 }

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

 .burger-active .burger-line:nth-child(3) {
     transform: rotate(-45deg) translate(5px, -5px);
 }

 /* Expandable text */
 .expandable-content {
     max-height: 150px;
     overflow: hidden;
     transition: max-height 0.5s ease;
 }

 .expandable-content.expanded {
     max-height: 2000px;
 }

 /* Messenger hover panel */
 .messenger-panel {
     transition: all 0.3s ease;
     transform: translateY(20px);
     opacity: 0;
     pointer-events: none;
 }

 .messenger-wrapper:hover .messenger-panel {
     transform: translateY(0);
     opacity: 1;
     pointer-events: auto;
 }

 /* Modal transitions */
 .modal {
     transition: opacity 0.3s ease, visibility 0.3s ease;
 }

 .modal.hidden {
     opacity: 0;
     visibility: hidden;
     pointer-events: none;
 }

 .modal:not(.hidden) {
     opacity: 1;
     visibility: visible;
     pointer-events: auto;
 }

 /* Custom scrollbar */
 ::-webkit-scrollbar {
     width: 8px;
 }

 ::-webkit-scrollbar-track {
     background: #f1f1f1;
 }

 ::-webkit-scrollbar-thumb {
     background: #005849;
     border-radius: 4px;
 }

 ::-webkit-scrollbar-thumb:hover {
     background: #003d33;
 }

 /* Focus styles */
 input:focus,
 textarea:focus,
 select:focus {
     outline: 2px solid #f2a654;
     outline-offset: 2px;
 }

 /* Card hover effects */
 .service-card,
 .advantage-card,
 .patent-card {
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .service-card:hover,
 .advantage-card:hover,
 .patent-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 20px 40px rgba(0, 88, 73, 0.15);
 }

 /* Gradient accents */
 .gradient-accent {
     background: linear-gradient(135deg, #005849 0%, #007a66 100%);
 }

 .gradient-text {
     background: linear-gradient(135deg, #f2a654 0%, #e69547 100%);
     -webkit-background-clip: text;
     -webkit-text-fill-color: transparent;
     background-clip: text;
 }

 .swiper-pagination {
     position: relative;
     margin: 15px auto 0;
 }

 .swiper-button-prev,
 .swiper-button-next {
     width: 50px;
     height: 50px;
     background: white;
     border-radius: 50%;
 }

 .swiper-button-prev::after,
 .swiper-button-next::after {
     font-size: 18px;
 }

 .stars-img {
     height: 450px;
 }

 .service-img {
     height: 600px;
 }

 .reviews-img {
     height: 400px;
 }

 .osnovatel-img {
     height: 400px;
 }

 .hero-img {
     max-height: 600px;
 }

 .license-img {}

 .licenzia {
     max-height: 500px;
 }

 .qr {
     max-height: 400px;
     margin: 0 0 0 auto;
 }

 .review-video {
     height: 500px;
 }

 .logo {
     max-width: 200px;
 }


 .hero-pattern {
     background-image: url('../images/hero.webp');
     background-position: 50% 0;
     background-size: cover;
 }

 .dostizhenie-img {
     height: 400px;
 }

 @media(max-width: 767px) {
     .serivce-title {}

     .review-video {
         height: 500px;
     }

     .qr {
         max-height: 250px;
         margin: 0 auto;
     }

     .hero-pattern {
         background-size: 1065px;
         background-repeat: no-repeat;
     }

     .dostizhenie-img {
         height: 400px;
     }
 }



 .typing-text {
     overflow: hidden;
     border-right: 2px solid rgba(20, 184, 166, 0.8);

     opacity: 0;
 }

 .typing-text.active {
     opacity: 1;
 }

 .typing-text.completed {
     border-right: none;
     white-space: normal;
 }

 .menu-open {
     transform: translateX(0);
 }

 .menu-closed {
     transform: translateX(-100%);
 }