/*
 Theme Name: BPC GreenLight Child
 Template: greenlight
 Description: Binghamton Pest Control child theme for GreenLight
 Version: 1.0.7
*/

/* === Base typography === */
body {
  font-family: 'Open Sans', sans-serif;
  color: #212121;
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'Montserrat', sans-serif;
}

/* === Selection color === */
::selection {
  background-color: #1B5E20;
  color: #fff;
}

/* === Nav fix: Greenshift inline <style> pushes fixed nav down === */
.rd-nav {
  margin-top: 0 !important;
  margin-block-start: 0 !important;
}
body.admin-bar .rd-nav {
  top: var(--wp-admin--admin-bar--height, 0px) !important;
}

/* === Ambient animations === */
@keyframes float {
  0% { transform: translateY(0px); }
  50% { transform: translateY(-10px); }
  100% { transform: translateY(0px); }
}
.animate-float {
  animation: float 6s ease-in-out infinite;
}

@keyframes pulse-soft {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.8; }
}
.animate-pulse-soft {
  animation: pulse-soft 3s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

/* === Card hover effects === */
.service-card-img {
  transition: transform 0.5s ease;
}
.service-card:hover .service-card-img {
  transform: scale(1.05);
}

/* === Glass panel === */
.glass-panel {
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* === Gravity Forms Styling === */
.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper select,
.gform_wrapper textarea {
  border: 1px solid #e5e7eb !important;
  border-radius: 0.75rem !important;
  padding: 0.75rem 1rem !important;
  font-size: 0.875rem !important;
  font-family: 'Open Sans', sans-serif !important;
  background-color: #F5F5F5 !important;
  width: 100% !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
.gform_wrapper input:focus,
.gform_wrapper select:focus,
.gform_wrapper textarea:focus {
  border-color: #1B5E20 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(27, 94, 32, 0.15) !important;
}
.gform_wrapper .gform_button,
.gform_wrapper input[type="submit"] {
  background-color: #E65100 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 0.75rem !important;
  padding: 1rem 1.5rem !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  font-family: 'Montserrat', sans-serif !important;
  cursor: pointer !important;
  width: 100% !important;
  transition: background-color 0.3s, transform 0.2s, box-shadow 0.3s !important;
  box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1) !important;
}
.gform_wrapper .gform_button:hover,
.gform_wrapper input[type="submit"]:hover {
  background-color: #BF360C !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 25px rgba(230, 81, 0, 0.3) !important;
}
.gform_wrapper .gfield_label {
  display: none !important;
}
.gform_wrapper .gfield_description,
.gform_wrapper .gform_validation_errors {
  font-family: 'Open Sans', sans-serif;
}
.gform_wrapper textarea {
  max-height: 5rem !important;
  min-height: 3rem !important;
  resize: none !important;
}
.gform_wrapper select {
  color: #6B7280 !important;
  line-height: normal !important;
  height: auto !important;
}
.gform_wrapper select:has(option:checked:not([value=""])) {
  color: #212121 !important;
}
.gform_wrapper .gfield {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.gform_wrapper .gform_fields {
  gap: 0.75rem !important;
}

/* === Zero out block-gap between all content blocks === */
.entry-content.is-layout-constrained > * + * {
  margin-block-start: 0 !important;
}
.wp-block-post-content > * + * {
  margin-block-start: 0 !important;
}
.wp-site-blocks > * + * {
  margin-block-start: 0 !important;
}

/* === FAQ accordion chevron rotation === */
details summary iconify-icon {
  transition: transform 0.2s ease;
}
details[open] summary iconify-icon {
  transform: rotate(180deg);
}
details summary {
  cursor: pointer;
}
details summary::-webkit-details-marker {
  display: none;
}
details > summary {
  list-style: none;
}

/* === Smooth scroll === */
html {
  scroll-behavior: smooth;
}
