.contact-hero {
   border-bottom-left-radius: 50px;
   border-bottom-right-radius: 50px;
   width: 100%;
   height: 60vh;
   background: linear-gradient(rgba(0,0,0,.7), rgba(0,0,0,.7)), url(../images/sample.jpg);
   background-size: cover;
   background-position: center;
   display: flex;
   flex-direction: column;
   align-items: center;
   position: relative;
}

.contact-hero-content {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%);
   text-align: center;
   color: var(--light);
   width: 80%;
}

.contact-hero-content h1 {
   font: 700 4rem var(--heading);
   margin-bottom: 1rem;
   text-shadow: 0 2px 10px rgba(0,0,0,.5);
}

.contact-hero-content p {
   font: 1.5rem var(--sub_heading);
   text-shadow: 0 1px 3px rgba(0,0,0,.5);
}

.contact-section {
   padding: 5% 15%;
   background-color: var(--light);
}

.contact-container {
   display: flex;
   gap: 50px;
   margin-top: 50px;
}

.contact-info {
   flex: 1;
}

.contact-info h2 {
   margin-bottom: 20px;
   color: var(--primary-dark);
}

main .contact-info p {
   margin-bottom: 30px;
   color: var(--gray);
   line-height: 1.8;
}

p.text {
   width: 100%;
   text-align: center;
}

.contact-details {
   margin-bottom: 30px;
}

.contact-detail {
   display: flex;
   align-items: center;
   margin-bottom: 25px;
}

.contact-icon,
.social-links-contact a {
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
}

.contact-icon {
   min-width: 50px;
   height: 50px;
   background: var(--primary);
   margin-right: 15px;
   color: var(--light);
   font-size: 20px;
}

main .contact-text {
   font: 1.1rem var(--sub_heading);
   color: var(--light);
   display: flex;
   align-items: center;
}

.social-links-contact i {
   color: var(--primary);
}

main .contact-text strong,
.form-group label {
   color: var(--dark);
   display: block;
}

.social-links-contact {
   display: flex;
   gap: 15px;
   margin-top: 30px;
}

.social-links-contact a {
   width: 45px;
   height: 45px;
   background: var(--light-gray);
   transition: all 0.3s ease;
}

.social-links-contact a:hover {
   background: var(--primary);
   transform: translateY(-3px);
}

.social-links-contact a:hover i {
   color: var(--light);
}

.contact-form {
   flex: 1;
   background: var(--light);
   padding: 5%;
   border-radius: 15px;
   box-shadow: 0 10px 30px rgba(0,0,0,.1);
}

.form-group {
   margin-bottom: 25px;
}

.form-group label {
   margin-bottom: 8px;
   font: 1rem var(--sub_heading);
}

.form-group input,
.form-group select,
.form-group textarea {
   width: 100%;
   padding: 14px 20px;
   border: 1px solid var(--light-gray);
   border-radius: 8px;
   font: 1rem var(--sub_heading);
   transition: all 0.3s ease;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
   outline: 0;
   border-color: var(--primary);
   box-shadow: 0 0 0 3px rgba(26,115,232,.1);
}

.form-group textarea {
   height: 150px;
   resize: vertical;
}

.form-btn {
   display: block;
   width: 100%;
   background: var(--primary);
   color: var(--light);
   padding: 15px;
   border-radius: 8px;
   font: 1.1rem var(--sub_heading);
   font-weight: 600;
   transition: all 0.3s ease;
   border: 0;
   cursor: pointer;
}

.form-btn:hover {
   background: var(--primary-dark);
   transform: translateY(-3px);
   box-shadow: 0 10px 20px rgba(26,115,232,.2);
}

@media (max-width: 1200px) {
   .contact-container {
      flex-direction: column;
   }
   
   .contact-form,
   .contact-info {
      width: 100%;
   }
}

@media (max-width: 768px) {
   .contact-hero-content h1 {
      font-size: 2.5rem;
   }
   
   .contact-hero-content p {
      font-size: 1.2rem;
   }
   
   .contact-section {
      padding: 10% 5%;
   }
   
   .contact-text strong {
      font-size: 0.8rem;
   }
}

@media (max-width: 480px) {
   .contact-hero-content h1 {
      font-size: 2rem;
   }
}
/* Štýlovanie bloku bez ikon (Meno, IČO, DIČ) */
.contact-business-info {
   margin-bottom: 35px; /* Medzera medzi textom a ikonami pod ním */
}

.contact-business-info h3 {
   font-size: 1.3rem;
   margin-bottom: 5px;
   color: var(--dark);
   font-weight: 700;
}

.contact-business-info p {
   margin-bottom: 2px !important; /* Aby boli IČO a DIČ tesne pod sebou */
   font-size: 1.1rem;
   color: var(--dark);
   font-weight: 500;
}

/* Uisti sa, že ikony a detaily majú stále tvoj pôvodný štýl */
.contact-details {
   margin-top: 20px;
}