/*
|--------------------------------------------------------------------------
| Gillingham Storage Contacts Page CSS
|--------------------------------------------------------------------------
| Candidate: contacts width baseline v4
| Purpose: make the Contacts form use the same width rhythm as the locked
| notice / vacate baseline while keeping the current dark-blue styling.
|--------------------------------------------------------------------------
*/

/* 1. Page shell */
body,
.site,
.site-content,
.content-area,
.site-main,
.inside-article,
.entry-content,
.entry-content > .elementor {
  background: #123e6d !important;
}

.inside-article {
  box-shadow: none !important;
  padding: 0 !important;
}

.entry-header,
.entry-title {
  display: none !important;
}

.site-content {
  padding-top: clamp(40px, 5vw, 72px) !important;
  padding-bottom: clamp(56px, 6vw, 88px) !important;
}

/* 2. Main layout */
.entry-content > .elementor,
.entry-content > .elementor > .elementor-element,
.entry-content > .elementor > .elementor-section,
.entry-content > .elementor > .e-con {
  background: transparent !important;
}

.entry-content > .elementor > .elementor-element:first-child > .e-con-inner,
.entry-content > .elementor > .elementor-section:first-child > .elementor-container,
.entry-content > .elementor > .e-con:first-child > .e-con-inner {
  max-width: 1560px !important;
  margin: 0 auto !important;
}

/* 3. Heading + form width rhythm */
.elementor-widget-heading,
.elementor-widget-wpforms {
  width: min(100%, 620px) !important;
  max-width: 620px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.elementor-widget-heading {
  margin-bottom: 24px !important;
}

.elementor-widget-heading .elementor-widget-container,
.elementor-widget-wpforms .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
}

.elementor-widget-heading .elementor-heading-title {
  margin: 0 !important;
  color: #0ea5e9 !important;
  font-family: "Nunito", sans-serif !important;
  font-size: clamp(44px, 4vw, 60px) !important;
  font-weight: 700 !important;
  line-height: 1.04 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

/* 4. WPForms shell */
.elementor-widget-wpforms .wpforms-container,
.elementor-widget-wpforms .wpforms-form,
.elementor-widget-wpforms .wpforms-field-container {
  width: 100% !important;
  max-width: none !important;
}

.elementor-widget-wpforms .wpforms-container {
  margin: 0 !important;
}

.elementor-widget-wpforms .wpforms-field {
  margin: 0 0 14px !important;
  padding: 0 !important;
}

.elementor-widget-wpforms .wpforms-field:last-of-type {
  margin-bottom: 0 !important;
}

/* 5. Inputs */
.elementor-widget-wpforms .wpforms-field input,
.elementor-widget-wpforms .wpforms-field select,
.elementor-widget-wpforms .wpforms-field textarea,
.elementor-widget-wpforms .iti,
.elementor-widget-wpforms .iti input {
  width: 100% !important;
  max-width: none !important;
  min-height: 64px !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  color: #123e6d !important;
  font-family: "Nunito", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  box-shadow: none !important;
}

.elementor-widget-wpforms .wpforms-field textarea {
  min-height: 188px !important;
  padding-top: 18px !important;
  resize: vertical !important;
}

.elementor-widget-wpforms .wpforms-field input::placeholder,
.elementor-widget-wpforms .wpforms-field textarea::placeholder,
.elementor-widget-wpforms .wpforms-field select {
  color: rgba(18, 62, 109, 0.58) !important;
}

/* 6. Phone field */
.elementor-widget-wpforms .iti {
  display: block !important;
}

.elementor-widget-wpforms .iti__flag-container {
  display: flex !important;
  align-items: center !important;
  height: 64px !important;
}

.elementor-widget-wpforms .iti__selected-country {
  height: 64px !important;
  padding-left: 14px !important;
  padding-right: 10px !important;
}

/* 7. Button */
.elementor-widget-wpforms .wpforms-submit-container {
  margin-top: 22px !important;
  padding: 0 !important;
}

.elementor-widget-wpforms .wpforms-submit {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 190px !important;
  height: 58px !important;
  padding: 0 32px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #ff8a3d !important;
  color: #ffffff !important;
  font-family: "Nunito", sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  box-shadow: 0 16px 36px rgba(255, 138, 61, 0.34) !important;
}

.elementor-widget-wpforms .wpforms-submit:hover {
  transform: none !important;
  background: #ff8a3d !important;
}

/* 8. Tablet / mobile */
@media (max-width: 1024px) {
  .elementor-widget-heading,
  .elementor-widget-wpforms {
    width: min(100%, 100%) !important;
    max-width: none !important;
  }

  .elementor-widget-heading .elementor-heading-title {
    font-size: clamp(34px, 8vw, 46px) !important;
  }
}
