.contact-icons {
  display: flex;
  gap: 20px;
  margin-top: 20px;
  align-items: center;
}

.contact-icons img {
  width: 48px;
  height: auto;
  transition: transform 0.3s ease, filter 0.3s ease;
  cursor: pointer;
}

.contact-icons img:hover {
  transform: translateY(-5px) scale(1.05);
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.3));
}

/* Floating animation */
@keyframes float {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(-6px); }
}
.float { animation: float 3s ease-in-out infinite; }

/* Pulse animation */
@keyframes pulse {
  0%, 100% { transform: scale(1); }
  50%      { transform: scale(1.08); }
}
.pulse { animation: pulse 2s ease-in-out infinite; }

/* Glow animation */
@keyframes glow {
  0%, 100% { filter: drop-shadow(0 0 4px rgba(0, 150, 255, 0.5)); }
  50%      { filter: drop-shadow(0 0 12px rgba(0, 150, 255, 0.8)); }
}
.glow { animation: glow 2.5s ease-in-out infinite; }

/* Rotate animation */
@keyframes rotate {
  0%   { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}
.rotate { animation: rotate 8s linear infinite; }
.contact-section {
  display: flex;
  align-items: stretch;
  margin: 0;
  padding: 0;
}

.contact-card {
  flex: 0 0 400px;           
  padding: 20px;
  background: #fff;
  box-sizing: border-box;
  border-right: 1px solid #ddd;
}

.map {
  flex: 1;
  margin: 0;
  padding: 0;
  border: none;
  display: flex;             /* ensures child (iframe) fills */
}

.map iframe {
  flex: 1;                   /* take up all available space */
  width: 100% !important;
  height: auto;              /* prevents scrollbars */
  border: 0;
  margin: 0;
  padding: 0;
  display: block;            /* no inline whitespace */
}
