/**
 * kontak.css - Specific styling for Contact page
 */

.page-hero {
  padding: 140px 0 80px;
  background: radial-gradient(circle at 10% 20%, rgba(255, 79, 163, 0.02), transparent), var(--clr-bg);
  text-align: center;
  border-bottom: var(--brutal-border);
}

.breadcrumb {
  margin-bottom: var(--space-sm);
  font-size: var(--fs-xs);
  color: var(--clr-primary);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.breadcrumb a { color: var(--clr-primary); }
.breadcrumb .sep { margin: 0 10px; color: var(--br-border-dark); }
.breadcrumb .current { color: var(--clr-heading); }

.page-hero h1 { 
  font-size: clamp(2.6rem, 7vw, 4.2rem); 
  margin-bottom: 20px; 
  color: var(--clr-heading); 
  letter-spacing: -2px;
}

.contact-wrapper {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: var(--space-xl);
  align-items: start;
}

.contact-info-box {
  background: var(--clr-surface);
  border: var(--brutal-border);
  box-shadow: var(--brutal-shadow);
  border-radius: var(--radius-lg);
  padding: var(--space-xl);
}

.contact-info-box h2 {
  font-size: var(--fs-3xl);
  margin-bottom: var(--space-md);
}

.contact-info-list {
  display: flex;
  flex-direction: column;
  gap: var(--space-xl); /* Increased gap for better separation */
  margin-top: var(--space-xl);
  margin-bottom: var(--space-2xl);
}

.contact-info-item {
  display: flex;
  gap: var(--space-lg);
  align-items: center;
}

.contact-info-icon {
  width: 50px;
  height: 50px;
  background: var(--clr-primary-pastel);
  color: var(--clr-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  border: 2px solid var(--br-border-dark);
  flex-shrink: 0;
}

.contact-info-text span {
  display: block;
  font-size: var(--fs-xs);
  color: var(--clr-text-sec);
  text-transform: uppercase;
  letter-spacing: 1px;
  font-weight: var(--fw-bold);
}

.contact-info-text p {
  font-size: var(--fs-lg);
  color: var(--clr-heading);
  font-weight: var(--fw-semibold);
}

/* SOCIAL CONNECT */
.social-connect h4 {
  margin-bottom: var(--space-sm);
}

.social-links {
  display: flex;
  gap: var(--space-sm);
}

.social-btn {
  width: 45px;
  height: 45px;
  background: var(--clr-surface);
  border: 2px solid var(--br-border-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
  transition: var(--tr-base);
  color: var(--clr-heading);
}

.social-btn:hover {
  background: var(--clr-accent);
  transform: translateY(-3px);
  box-shadow: var(--brutal-shadow-sm);
}

/* CONTACT FORM */
.contact-form-card {
  background: var(--clr-surface);
  border: var(--brutal-border);
  box-shadow: var(--brutal-shadow-lg);
  border-radius: var(--radius-lg);
  padding: var(--space-xl);
}

.form-header {
  border-bottom: 2px dashed var(--clr-border);
  padding-bottom: 20px;
  margin-bottom: 30px;
}

.form-header h3 {
  font-size: var(--fs-xl);
  margin: 10px 0 5px;
}

.form-header p {
  font-size: var(--fs-sm);
  color: var(--clr-text-sec);
}

.form-tip {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: var(--fs-xs);
  color: var(--clr-text-sec);
  font-weight: 600;
  background: var(--clr-bg-alt);
  padding: 12px;
  border-radius: var(--radius-sm);
  border: 1px solid var(--clr-border);
}

.form-tip i {
  color: var(--clr-primary);
  flex-shrink: 0;
}

.form-group {
  margin-bottom: var(--space-md);
}

.form-group label {
  display: block;
  margin-bottom: var(--space-xs);
  font-weight: var(--fw-semibold);
  color: var(--clr-heading);
}

.form-control {
  width: 100%;
  padding: 1rem;
  background: var(--clr-bg);
  border: 2px solid var(--clr-border);
  border-radius: var(--radius-sm);
  font-family: inherit;
  transition: var(--tr-base);
}

.form-control:focus {
  outline: none;
  border-color: var(--clr-primary);
  box-shadow: 0 0 0 4px var(--clr-primary-pastel);
}

/* MAP SECTION */
.map-container {
  width: 100%;
  height: 450px;
  border: var(--brutal-border);
  box-shadow: var(--brutal-shadow);
  border-radius: var(--radius-lg);
  overflow: hidden;
  margin-top: var(--space-2xl);
}

.map-container iframe {
  width: 100%;
  height: 100%;
  border: none;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .contact-wrapper {
    grid-template-columns: 1fr;
    gap: var(--space-xl);
  }
  
  .map-container {
    height: 350px;
    margin-top: var(--space-xl);
  }
}

@media (max-width: 576px) {
  .contact-info-box, .contact-form-card {
    padding: 20px; /* More precise padding */
    box-shadow: 4px 4px 0 var(--br-border-dark); /* Further reduced shadow */
    margin: 0 5px; /* Slight margin to prevent hitting screen edge */
    width: auto;
    overflow: hidden;
  }
  
  .contact-info-text p {
    font-size: var(--fs-base);
    word-break: break-word; /* Prevent long text overflow */
  }

  .contact-info-item {
    gap: 12px;
  }

  .contact-info-icon {
    width: 38px;
    height: 38px;
  }

  .page-hero {
    padding: 100px 15px 40px;
  }

  .form-header h3 {
    font-size: var(--fs-lg);
  }
}

@media (max-width: 380px) {
  .contact-info-box, .contact-form-card {
    padding: 15px;
    box-shadow: 3px 3px 0 var(--br-border-dark);
  }
}
