.elementor-1414 .elementor-element.elementor-element-39c4f67{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:120px;--padding-left:0px;--padding-right:0px;}.elementor-1414 .elementor-element.elementor-element-f7a7a5e{--display:flex;--margin-top:40px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1414 .elementor-element.elementor-element-77aa6dd .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:44px;font-weight:600;}.elementor-1414 .elementor-element.elementor-element-0d6867b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;font-family:"Roboto", Sans-serif;font-size:15px;color:#4B5563;}.elementor-1414 .elementor-element.elementor-element-15ad564{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1414 .elementor-element.elementor-element-912e089{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-1414 .elementor-element.elementor-element-80130df{--display:flex;}.elementor-1414 .elementor-element.elementor-element-1cfa6c5{--display:flex;}.elementor-1414 .elementor-element.elementor-element-67cf5ef{--display:flex;}.elementor-1414 .elementor-element.elementor-element-b2c3922{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1414 .elementor-element.elementor-element-39c4f67{--content-width:1300px;}}/* Start custom CSS *//* =========================================================
   Pure Wave Polarizers — Contact Us Page
   Elementor + WPForms
   Clean consolidated CSS
   Includes the unified page heading and introduction styling
   ========================================================= */

/* =========================================================
   Page wrapper
   ========================================================= */

.thz-contact-page {
  --thz-blue: #0057c2;
  --thz-blue-2: #1473e6;
  --thz-border: #d1d5db;
  --thz-border-soft: #e5e7eb;
  --thz-card: #ffffff;
  --thz-soft: #f8fafc;
  --thz-soft-blue: #eff6ff;
  --thz-text: #111827;
  --thz-body: #1f2937;
  --thz-muted: #4b5563;
  --thz-placeholder: #9ca3af;
  --thz-radius: 8px;
  --thz-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
  --thz-heading-accent: #0183bd;

  max-width: none !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #ffffff !important;
  color: var(--thz-text) !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
}

.thz-contact-page > .e-con-inner {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 0 !important;
  max-width: 1300px !important;
  width: calc(100% - 32px) !important;
  margin: 0 auto !important;
  padding: 24px 0 0 !important;
  box-sizing: border-box !important;
}

/* =========================================================
   Unified page heading and introduction
   Matches the Request a Quote page
   ========================================================= */

/* Heading container */
.thz-contact-page .elementor-element-f7a7a5e {
  --padding-top: 0 !important;
  --padding-right: 0 !important;
  --padding-bottom: 0 !important;
  --padding-left: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Add thz-contact-title to the heading widget. The element ID is retained
   as a fallback so the styling also works before that class is added. */
.thz-contact-page .thz-contact-title,
.thz-contact-page .elementor-element-77aa6dd,
.thz-contact-page .thz-contact-title .elementor-widget-container,
.thz-contact-page .elementor-element-77aa6dd .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.thz-contact-page .thz-contact-title,
.thz-contact-page .elementor-element-77aa6dd {
  margin-bottom: 20px !important;
}

.thz-contact-page .thz-contact-title .elementor-heading-title,
.thz-contact-page .elementor-element-77aa6dd .elementor-heading-title {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #232b36 !important;
  font-family: "Montserrat", "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 42px !important;
  font-weight: 600 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.02em !important;
}

.thz-contact-page .thz-contact-title .elementor-heading-title::after,
.thz-contact-page .elementor-element-77aa6dd .elementor-heading-title::after {
  content: "" !important;
  display: block !important;
  width: 70px !important;
  height: 3px !important;
  margin-top: 18px !important;
  border-radius: 999px !important;
  background: var(--thz-heading-accent) !important;
}

/* Full-width introductory copy below the short heading rule */
.thz-contact-page .thz-contact-intro,
.thz-contact-page .thz-contact-intro .elementor-widget-container {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
}

.thz-contact-page .thz-contact-intro {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

.thz-contact-page .thz-contact-intro p {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #374151 !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.6 !important;
}

/* Remove unwanted Elementor padding from the main contact layout only */
.thz-contact-page .thz-contact-main-grid,
.thz-contact-page .thz-contact-side,
.thz-contact-page .thz-contact-form-card,
.thz-contact-page .thz-contact-info-card,
.thz-contact-page .thz-why-card,
.thz-contact-page .thz-connect-card,
.thz-contact-page .thz-contact-help-strip {
  --padding-top: 0 !important;
  --padding-right: 0 !important;
  --padding-bottom: 0 !important;
  --padding-left: 0 !important;
}

/* =========================================================
   Main two-column layout
   ========================================================= */

.thz-contact-page .thz-contact-main-grid {
  display: grid !important;
  grid-template-columns: 785px 490px !important;
  gap: 25px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 1300px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.thz-contact-page .thz-contact-form-card {
  grid-column: 1 !important;
  width: 100% !important;
  max-width: 785px !important;
}

.thz-contact-page .thz-contact-side {
  grid-column: 2 !important;
  display: grid !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 490px !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* =========================================================
   Cards
   ========================================================= */

.thz-contact-page .thz-contact-card,
.thz-contact-page .thz-contact-form-card,
.thz-contact-page .thz-contact-info-card,
.thz-contact-page .thz-why-card,
.thz-contact-page .thz-connect-card {
  background: var(--thz-card) !important;
  border: 1px solid var(--thz-border) !important;
  border-radius: var(--thz-radius) !important;
  box-shadow: var(--thz-shadow) !important;
  padding: 24px !important;
  margin: 0 !important;
}

.thz-contact-page .thz-connect-card {
  margin-top: 25px !important;
}

.thz-contact-page .thz-contact-help-strip {
  margin-top: 25px !important;
}

/* =========================================================
   Card headings and icon circles
   ========================================================= */

.thz-contact-page .thz-card-heading {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  color: var(--thz-text) !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 18pt !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.thz-contact-page .thz-card-heading svg {
  box-sizing: content-box !important;
  width: 18px !important;
  height: 18px !important;
  padding: 9px !important;
  border-radius: 999px !important;
  background: var(--thz-soft-blue) !important;
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
  flex: 0 0 auto !important;
}

.thz-contact-page .thz-card-intro-text,
.thz-contact-page .thz-card-intro-text p {
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: var(--thz-body) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

/* =========================================================
   WPForms base
   ========================================================= */

.thz-contact-page #wpforms-1410,
.thz-contact-page #wpforms-form-1410 {
  margin: 0 !important;
  padding: 0 !important;
}

.thz-contact-page #wpforms-1410 .wpforms-field-container {
  margin: 0 !important;
  padding: 0 !important;
}

.thz-contact-page #wpforms-1410 .wpforms-field {
  margin: 0 0 14px !important;
  padding: 0 !important;
}

/* First-row WPForms layout field: Full Name | Email | Company */
.thz-contact-page #wpforms-1410-field_10-container {
  display: block !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  pointer-events: auto !important;
}

.thz-contact-page #wpforms-1410 .wpforms-field-layout,
.thz-contact-page #wpforms-1410 .wpforms-field-layout-rows,
.thz-contact-page #wpforms-1410 .wpforms-layout-row {
  margin: 0 !important;
  padding: 0 !important;
}

.thz-contact-page #wpforms-1410 .wpforms-layout-column {
  min-width: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide only honeypot / anti-spam fields */
.thz-contact-page #wpforms-1410-field_1-container,
.thz-contact-page #wpforms-1410-field_11-container {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: -1000 !important;
}

/* Labels */
.thz-contact-page #wpforms-1410 .wpforms-field-label {
  margin: 0 0 6px !important;
  color: var(--thz-text) !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
}

.thz-contact-page #wpforms-1410 .wpforms-required-label {
  color: var(--thz-blue) !important;
}

/* Inputs and selects */
.thz-contact-page #wpforms-1410 input[type="text"],
.thz-contact-page #wpforms-1410 input[type="email"],
.thz-contact-page #wpforms-1410 input[type="tel"],
.thz-contact-page #wpforms-1410 input[type="url"],
.thz-contact-page #wpforms-1410 input[type="number"],
.thz-contact-page #wpforms-1410 select,
.thz-contact-page #wpforms-1410 textarea {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 42px !important;
  border: 1px solid var(--thz-border) !important;
  border-radius: var(--thz-radius) !important;
  background-color: #ffffff !important;
  color: var(--thz-text) !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  box-shadow: none !important;
}

/* Dropdown: keep only the WPForms/browser arrow */
.thz-contact-page #wpforms-1410 select {
  appearance: auto !important;
  -webkit-appearance: auto !important;
  -moz-appearance: auto !important;
  background-image: none !important;
  background-repeat: no-repeat !important;
  cursor: pointer !important;
}

/* Placeholder text */
.thz-contact-page #wpforms-1410 input::placeholder,
.thz-contact-page #wpforms-1410 textarea::placeholder {
  color: var(--thz-placeholder) !important;
  opacity: 1 !important;
}

/* Dropdown placeholder colour where supported */
.thz-contact-page #wpforms-1410 select:has(option.placeholder:checked) {
  color: var(--thz-placeholder) !important;
}

.thz-contact-page #wpforms-1410 select option {
  color: var(--thz-text) !important;
}

/* Focus */
.thz-contact-page #wpforms-1410 input:focus,
.thz-contact-page #wpforms-1410 select:focus,
.thz-contact-page #wpforms-1410 textarea:focus {
  border-color: var(--thz-blue-2) !important;
  box-shadow: 0 0 0 3px rgba(20, 115, 230, 0.12) !important;
  outline: none !important;
}

/* Message textarea */
.thz-contact-page #wpforms-1410 textarea {
  min-height: 120px !important;
  resize: vertical !important;
}

/* =========================================================
   File upload
   ========================================================= */

.thz-contact-page #wpforms-1410 .wpforms-uploader {
  background: var(--thz-soft) !important;
  border: 1px dashed var(--thz-border) !important;
  border-radius: var(--thz-radius) !important;
}

.thz-contact-page #wpforms-1410 .dz-message {
  min-height: 120px !important;
  padding: 22px !important;
  border-radius: var(--thz-radius) !important;
  background: var(--thz-soft) !important;
}

.thz-contact-page #wpforms-1410 .dz-message svg {
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
}

.thz-contact-page #wpforms-1410 .modern-title,
.thz-contact-page #wpforms-1410 .modern-title span {
  color: var(--thz-body) !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
}

/* =========================================================
   Security note and submit button
   Requires the small JS that moves field_9 into submit container
   ========================================================= */

.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Security note aligned left */
.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row #wpforms-1410-field_9-container {
  flex: 1 1 auto !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .thz-contact-security-note {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 10px 14px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--thz-border) !important;
  border-radius: var(--thz-radius) !important;
  background: var(--thz-soft) !important;
  color: var(--thz-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  text-align: left !important;
}

.thz-contact-page .thz-contact-security-note svg {
  box-sizing: content-box !important;
  width: 16px !important;
  height: 16px !important;
  padding: 7px !important;
  border-radius: 999px !important;
  background: var(--thz-soft-blue) !important;
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
  flex: 0 0 auto !important;
}

/* Submit button remains compact on right */
.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .wpforms-submit {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: none !important;
  min-width: 132px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 10px 18px !important;
  border: 1px solid var(--thz-blue) !important;
  border-radius: var(--thz-radius) !important;
  background: var(--thz-blue) !important;
  color: #ffffff !important;
  font-family: "Roboto", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 18px rgba(0, 87, 194, 0.18) !important;
  white-space: nowrap !important;
}

.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .wpforms-submit:hover,
.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .wpforms-submit:focus {
  background: var(--thz-blue-2) !important;
  border-color: var(--thz-blue-2) !important;
}

.thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .wpforms-submit-spinner {
  margin-left: 8px !important;
}

/* =========================================================
   Contact information card
   ========================================================= */

.thz-contact-page .thz-info-list {
  display: grid !important;
  gap: 0 !important;
}

.thz-contact-page .thz-info-item {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  gap: 14px !important;
  padding: 18px 0 !important;
  border-bottom: 1px solid var(--thz-border-soft) !important;
}

.thz-contact-page .thz-info-item:first-of-type {
  padding-top: 0 !important;
}

.thz-contact-page .thz-info-item:last-of-type {
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}

.thz-contact-page .thz-info-item > svg {
  box-sizing: content-box !important;
  width: 16px !important;
  height: 16px !important;
  padding: 8px !important;
  border-radius: 999px !important;
  background: var(--thz-soft-blue) !important;
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
  margin-top: 0 !important;
}

.thz-contact-page .thz-info-item strong {
  display: block !important;
  margin: 0 0 4px !important;
  color: var(--thz-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.thz-contact-page .thz-info-item p {
  margin: 0 !important;
  color: var(--thz-body) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

/* =========================================================
   Why Contact Us card
   ========================================================= */

.thz-contact-page .thz-check-list {
  display: grid !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  list-style: none !important;
}

.thz-contact-page .thz-check-list li {
  position: relative !important;
  margin: 0 !important;
  padding-left: 24px !important;
  color: var(--thz-body) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

.thz-contact-page .thz-check-list li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: var(--thz-blue) !important;
  font-weight: 800 !important;
}

/* Need a Quote callout */
.thz-contact-page .thz-mini-callout {
  position: relative !important;
  padding: 16px 16px 16px 58px !important;
  border: 1px solid rgba(20, 115, 230, 0.22) !important;
  border-radius: var(--thz-radius) !important;
  background: var(--thz-soft-blue) !important;
}

.thz-contact-page .thz-mini-callout::before {
  content: "f0eb" !important;
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  position: absolute !important;
  left: 16px !important;
  top: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--thz-blue) !important;
  font-size: 15px !important;
}

.thz-contact-page .thz-mini-callout strong {
  display: block !important;
  margin: 0 0 5px !important;
  color: var(--thz-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.thz-contact-page .thz-mini-callout p {
  margin: 0 !important;
  color: var(--thz-body) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.thz-contact-page .thz-mini-callout a {
  color: var(--thz-blue) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.thz-contact-page .thz-mini-callout a:hover {
  color: var(--thz-blue-2) !important;
  text-decoration: underline !important;
}

/* Hide separate trailing Request a Quote link if still present outside the sentence */
.thz-contact-page .thz-mini-callout > a {
  display: none !important;
}

/* =========================================================
   Other Ways to Connect
   ========================================================= */

.thz-contact-page .thz-connect-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin-top: 18px !important;
}

.thz-contact-page .thz-connect-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  min-height: 150px !important;
  padding: 20px 16px !important;
  border: 1px solid var(--thz-border) !important;
  border-radius: var(--thz-radius) !important;
  background: #ffffff !important;
  color: var(--thz-text) !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease !important;
}

.thz-contact-page .thz-connect-item:hover {
  border-color: rgba(20, 115, 230, 0.45) !important;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.06) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

.thz-contact-page .thz-connect-item > svg {
  box-sizing: content-box !important;
  width: 22px !important;
  height: 22px !important;
  padding: 10px !important;
  margin-bottom: 12px !important;
  border-radius: 999px !important;
  background: var(--thz-soft-blue) !important;
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
}

.thz-contact-page .thz-connect-item strong {
  margin-bottom: 7px !important;
  color: var(--thz-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.thz-contact-page .thz-connect-item span {
  color: var(--thz-body) !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.thz-contact-page .thz-connect-item em {
  margin-top: auto !important;
  padding-top: 12px !important;
  color: var(--thz-blue) !important;
  font-size: 13px !important;
  font-style: normal !important;
  font-weight: 700 !important;
}

/* =========================================================
   Bottom help strip
   ========================================================= */

.thz-contact-page .thz-contact-help-strip {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 20px 24px !important;
  border: 1px solid rgba(20, 115, 230, 0.22) !important;
  border-radius: var(--thz-radius) !important;
  background: var(--thz-soft-blue) !important;
}

.thz-contact-page .thz-help-text {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.thz-contact-page .thz-help-text > svg {
  box-sizing: content-box !important;
  width: 20px !important;
  height: 20px !important;
  padding: 10px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: var(--thz-blue) !important;
  fill: var(--thz-blue) !important;
  flex: 0 0 auto !important;
}

.thz-contact-page .thz-help-text strong {
  display: block !important;
  margin: 0 0 3px !important;
  color: var(--thz-text) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
}

.thz-contact-page .thz-help-text p {
  margin: 0 !important;
  color: var(--thz-body) !important;
  font-size: 14px !important;
}

.thz-contact-page .thz-outline-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 10px 18px !important;
  border: 1px solid var(--thz-blue) !important;
  border-radius: var(--thz-radius) !important;
  background: #ffffff !important;
  color: var(--thz-blue) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.thz-contact-page .thz-outline-button:hover {
  background: var(--thz-soft-blue) !important;
  color: var(--thz-blue-2) !important;
  border-color: var(--thz-blue-2) !important;
  text-decoration: none !important;
}

/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1320px) {
  .thz-contact-page {
    max-width: none !important;
  }

  .thz-contact-page > .e-con-inner {
    width: calc(100% - 32px) !important;
    max-width: 1300px !important;
  }

  .thz-contact-page .thz-contact-main-grid {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.62fr) !important;
    max-width: 100% !important;
  }
}

@media (max-width: 767px) {
  .thz-contact-page > .e-con-inner {
    width: calc(100% - 28px) !important;
    padding-top: 8px !important;
  }

  .thz-contact-page .thz-contact-title,
  .thz-contact-page .elementor-element-77aa6dd {
    margin-bottom: 18px !important;
  }

  .thz-contact-page .thz-contact-title .elementor-heading-title,
  .thz-contact-page .elementor-element-77aa6dd .elementor-heading-title {
    font-size: 34px !important;
  }

  .thz-contact-page .thz-contact-title .elementor-heading-title::after,
  .thz-contact-page .elementor-element-77aa6dd .elementor-heading-title::after {
    margin-top: 14px !important;
  }

  .thz-contact-page .thz-contact-intro {
    margin-bottom: 20px !important;
  }

  .thz-contact-page .thz-contact-intro p {
    font-size: 15px !important;
  }
}

@media (max-width: 1000px) {
  .thz-contact-page .thz-connect-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  .thz-contact-page .thz-contact-main-grid {
    grid-template-columns: 1fr !important;
  }

  .thz-contact-page .thz-contact-form-card,
  .thz-contact-page .thz-contact-side {
    grid-column: 1 !important;
    max-width: none !important;
  }

  .thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .thz-contact-page #wpforms-form-1410 .wpforms-submit-container.thz-submit-row .wpforms-submit {
    width: 100% !important;
  }

  .thz-contact-page .thz-contact-help-strip {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .thz-contact-page .thz-outline-button {
    width: 100% !important;
  }
}

@media (max-width: 640px) {
  .thz-contact-page {
    max-width: none !important;
  }

  .thz-contact-page > .e-con-inner {
    width: calc(100% - 28px) !important;
    max-width: 1300px !important;
  }

  .thz-contact-page .thz-contact-card,
  .thz-contact-page .thz-contact-form-card,
  .thz-contact-page .thz-contact-info-card,
  .thz-contact-page .thz-why-card,
  .thz-contact-page .thz-connect-card {
    padding: 18px !important;
  }

  .thz-contact-page .thz-connect-grid {
    grid-template-columns: 1fr !important;
  }
}



/* =========================================================
   Contact form first-row alignment fix
   Full Name | Email Address | Company
   ========================================================= */

/* Remove WPForms layout row outer gutters */
.thz-contact-page #wpforms-1410-field_10-container .wpforms-field-layout-rows,
.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-row {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  width: 100% !important;
}

/* Remove all WPForms column padding first */
.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-column {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Add spacing only between columns, not outside the row */
.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-column:nth-child(2) {
  padding-left: 11px !important;
  padding-right: 11px !important;
}

.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-column:nth-child(1) {
  padding-left: 0 !important;
  padding-right: 11px !important;
}

.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-column:nth-child(3) {
  padding-left: 11px !important;
  padding-right: 0 !important;
}

/* Ensure the field wrappers inside columns do not add their own offsets */
.thz-contact-page #wpforms-1410-field_10-container .wpforms-field {
  margin: 0 !important;
  padding: 0 !important;
}





/* =========================================================
   Contact form first-row bottom spacing
   ========================================================= */

.thz-contact-page #wpforms-1410-field_10-container {
  margin-bottom: 14px !important;
}

.thz-contact-page #wpforms-1410-field_10-container .wpforms-field-layout-rows,
.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-row {
  margin-bottom: 0 !important;
}

.thz-contact-page #wpforms-1410-field_10-container .wpforms-field {
  margin-bottom: 0 !important;
}






/* =========================================================
   Contact form first-row layout row bottom spacing
   Targets actual WPForms layout row
   ========================================================= */

.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-row {
  margin-bottom: 14px !important;
}

/* Keep the individual fields inside the row from adding extra spacing */
.thz-contact-page #wpforms-1410-field_10-container .wpforms-layout-row .wpforms-field {
  margin-bottom: 0 !important;
}




/* Make contact information detail text lighter */
.thz-contact-page .thz-info-item p,
.thz-contact-page .thz-info-item p a {
  color: #4b5563 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.thz-contact-page .thz-info-item strong {
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

/* Need a Quote callout with real icon */
.thz-contact-page .thz-mini-callout {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  padding: 16px !important;
  border: 1px solid rgba(20, 115, 230, 0.22) !important;
  border-radius: 8px !important;
  background: #eff6ff !important;
}

/* Disable old pseudo-icon if it exists in earlier CSS */
.thz-contact-page .thz-mini-callout::before {
  content: none !important;
  display: none !important;
}

.thz-contact-page .thz-mini-callout i,
.thz-contact-page .thz-mini-callout svg {
  box-sizing: content-box !important;
  width: 16px !important;
  height: 16px !important;
  padding: 8px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0057c2 !important;
  fill: #0057c2 !important;
}

.thz-contact-page .thz-mini-callout strong {
  display: block !important;
  margin: 0 0 5px !important;
  color: #111827 !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.thz-contact-page .thz-mini-callout p {
  margin: 0 !important;
  color: #4b5563 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

.thz-contact-page .thz-mini-callout p a {
  color: #0057c2 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

.thz-contact-page .thz-mini-callout p a:hover {
  color: #1473e6 !important;
  text-decoration: underline !important;
}




/* Other Ways to Connect: three cards after removing LinkedIn */
.thz-contact-page .thz-connect-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}


/* =========================================================
   Section 4: force three boxes side by side
   ========================================================= */

.thz-contact-page .thz-connect-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  margin-top: 18px !important;
}

.thz-contact-page .thz-connect-grid .thz-connect-item {
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* Tablet */
@media (max-width: 900px) {
  .thz-contact-page .thz-connect-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Mobile */
@media (max-width: 640px) {
  .thz-contact-page .thz-connect-grid {
    grid-template-columns: 1fr !important;
  }
}



/* Message textarea default height, still resizable */
.thz-contact-page #wpforms-1410-field_6 {
  min-height: 172px !important;
  height: 172px !important;
  resize: vertical !important;
}





/* Section 1 intro text spacing: 18px total before the form */
.thz-contact-page .thz-contact-form-card .thz-card-intro-text {
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.thz-contact-page .thz-contact-form-card .thz-card-intro-text p {
  margin: 0 !important;
  padding: 0 !important;
}/* End custom CSS */