/* PL Light · Contact page (post 24) scoped CSS.
   NATIVE-FIRST: layout, card chrome, gaps, alignment, badges, icon tints, and
   the CTA bg/overlay are all native Elementor element settings. This file holds
   ONLY documented gaps Elementor can't express. Each rule names its gap. */

/* gap: Elementor flex containers have no aspect-ratio crop. The RSM photo is a
   native background-image container (cover); this gives it a uniform 4:5 box. */
.pl-rsm-card .pl-rsm-media { aspect-ratio: 4 / 5; width: 100%; }

/* gap: 8-stop brand spectrum gradient (Elementor's gradient UI is 2-stop only). */
.pl-spectrum-divider .elementor-divider-separator {
  border: 0 !important;
  height: 2px;
  opacity: 0.7;
  background: linear-gradient(to right,
    #AD1F69 0%, #C42727 14.28%, #D16D32 28.57%, #E6B229 42.85%,
    #E5D129 57.14%, #B0C633 71.43%, #449A46 85.71%, #40A3A1 100%);
}
.pl-spectrum-divider .elementor-divider { line-height: 0; font-size: 0; }

/* gap: pseudo-element + blur (not an element setting). Teal glow on the dark HQ card. */
.pl-hq-card { position: relative; overflow: hidden; }
.pl-hq-card::before {
  content: "";
  position: absolute;
  top: -64px; right: -64px;
  width: 192px; height: 192px;
  border-radius: 50%;
  background: rgba(64, 163, 161, 0.20);
  filter: blur(48px);
  pointer-events: none;
  z-index: 0;
}
.pl-hq-card > .elementor-container { position: relative; z-index: 1; }

/* gap: Gravity Forms renders a shortcode, not an Elementor widget — its orbital
   theme markup can only be styled with scoped CSS. Form 4 = general inquiry. */
#gform_wrapper_4 { background: #fff; border: 1px solid #E5E5E3; padding: 28px; }
@media (min-width: 1024px) { #gform_wrapper_4 { padding: 36px; } }
#gform_wrapper_4 .gform_fields { grid-template-columns: 1fr 1fr !important; gap: 20px !important; }
#gform_wrapper_4 #field_4_7,
#gform_wrapper_4 .gfield--width-full { grid-column: 1 / -1 !important; }
#gform_wrapper_4 .gfield_label {
  font-size: 12px !important; font-weight: 600 !important; text-transform: uppercase;
  letter-spacing: .1em; color: #616160 !important;
}
#gform_wrapper_4 input[type=text],
#gform_wrapper_4 input[type=email],
#gform_wrapper_4 input[type=tel],
#gform_wrapper_4 select,
#gform_wrapper_4 textarea {
  width: 100% !important; padding: .7em 1em !important; border: 1px solid #E5E5E3 !important;
  border-radius: 0 !important; background: #fff !important; font-size: 15px !important; color: #1A1A1A !important;
}
#gform_wrapper_4 input:focus,
#gform_wrapper_4 select:focus,
#gform_wrapper_4 textarea:focus {
  outline: none !important; border-color: #40A3A1 !important; box-shadow: 0 0 0 3px rgba(64, 163, 161, .15) !important;
}
#gform_wrapper_4 .gform_footer input[type=submit],
#gform_wrapper_4 .gform_footer button {
  width: 100% !important; background: #40A3A1 !important; color: #fff !important; border: 0 !important;
  border-radius: 0 !important; padding: 14px !important; font-weight: 600 !important; font-size: 15px !important; cursor: pointer;
}
#gform_wrapper_4 .gform_footer input[type=submit]:hover,
#gform_wrapper_4 .gform_footer button:hover { background: #B85D2A !important; }
