/* WP Form Style*/
/* Style input, textarea, and select fields */
.wpforms-form input,
.wpforms-form textarea,
.wpforms-form select {
  background-color: rgba(255,255,255,0.1) !important;
  color: #fff !important;
  border: 1px solid #444 !important;
  border-radius: 6px !important;
  padding: 10px 12px !important;
  font-size: 16px !important;
  width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;
}

/* Style placeholder text */
.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder {
  color: #bbb !important;
}

.wpforms-form .wpforms-submit-container {
  text-align: center;
}

.wpforms-form button[type="submit"] {
  margin-top: 1.5rem;
  padding: 0.75rem 1.5rem;
  background: #66ccffe5 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  font-size: 1rem !important;
  font-weight: bold !important;
  cursor: pointer !important;
  transition: background-color 0.3s ease !important;
  display: inline-block;
  text-align: center;
}

.wpforms-form button[type="submit"]:hover {
  background: #4da3e1 !important;
}

/* Base icon field container */
.wpforms-form .sa-input-icon {
  position: relative;
}

/* Style the icon */
.wpforms-form .sa-input-icon::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  left: 12px;
  transform: translateY(-50%);
  color: #bbb;
  font-size: 1rem;
  pointer-events: none;
}

/* Push input to make room for icon */
.wpforms-form .sa-input-icon input,
.wpforms-form .sa-input-icon textarea {
  padding-left: 2.25rem !important;
}

/* Specific icons per field (match field ID or field-specific class) */
.wpforms-form .sa-input-icon.name::before {
  content: "\f007"; /* fa-user */
}

.wpforms-form .sa-input-icon.phone::before {
  content: "\f879"; /* fa-phone-alt */
}

.wpforms-form .sa-input-icon.email::before {
  content: "\f0e0"; /* fa-envelope */
}

.wpforms-form .sa-input-icon.zip::before {
  content: "\f276"; /* fa-map-pin */
}

.wpforms-form .sa-input-icon.message::before {
  content: "\f4ad"; /* fa-comment-dots */
}

/* Reduce vertical spacing between form fields */
.wpforms-form .wpforms-field {
  margin-bottom: 1rem !important; /* reduce from WPForms default 1.5-2rem */
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.commercial-gallery-card { 
	display:block; 
	text-decoration:none; 
	color:inherit; 
}
	
.commercial-gallery-figure { 
	margin:0;
}
.commercial-gallery-title {
  margin-top:.5rem;
  font-size:.95rem;
  line-height:1.3;
  text-align:center;        
}
	
.commercial-gallery-card img { 
	display:block; 
	width:100%; 
	height:auto; 
	border-radius:6px; 
}
.commercial-gallery-card:hover .commercial-gallery-title { 
	text-decoration:underline; 
}

/* Service Area Services */

.services-section {
  background-color: #f9f9f9;
  padding: 4rem 1rem;
  text-align: center;
  color: #222;
}

.services-heading {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 2rem;
}

.services-grid {
  display: grid;
  gap: 2rem;
  grid-template-columns: repeat(1, 1fr); /* default mobile */
}

.services-grid a {
  text-decoration: none;
  color: #222;
}

@media (min-width: 600px) {
  .services-grid {
    grid-template-columns: repeat(2, 1fr); /* tablet */
  }
}

@media (min-width: 1024px) {
  .services-grid {
    grid-template-columns: repeat(4, 1fr); /* desktop */
  }
}

.service-card {
  background: #f9f9f9;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0,0,0,0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 6px 28px rgba(0,0,0,0.1);
}

.service-card img {
  width: 100%;
  height: 200px;
  object-fit: cover;
}

.service-card h3 {
  font-size: 1.25rem;
  padding: 1rem;
  margin: 0;
  background: #fff;
}


/* About Section */ 

.about-section {
  padding: 4rem 1rem;
  color: white;
}

.about-container {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 2rem;
  align-items: center;
}

.about-image {
  flex: 1 1 40%;
}

.about-image img {
  width: 100%;
  height: auto;
  border-radius: 12px;
  box-shadow: 0 0 20px rgba(0,0,0,0.05);
}

.about-content {
  flex: 1 1 55%;
}

.about-content h2,
.about-content p {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

.about-content h2 {
  font-size: 2rem;
  margin-bottom: 1rem;
  color: #1a1a1a;
}


.about-content p {
  font-size: 1.25rem;
  line-height: 1.6;
  margin-bottom: 1rem;
  color: #555555;
}

@media (max-width: 768px) {
  .about-container {
    flex-direction: column;
    text-align: center;
  }

  .about-content {
    padding: 0 .5rem;
  }

  .about-content p {
    font-size: 1.1rem;
    text-align: left;
  }
}