/* ============================================================
   DONNELLY MECHANICAL — TALK TO A TECH
   Page-scoped CSS. Loaded by page-talk-to-a-tech.php template.
   All selectors scoped to .ttt-page to prevent theme conflicts.
   ============================================================ */

/* ============================================================
   HERO — with stretch_row (not stretch_row_content_no_spaces)
   stretch_row gives us:
   - Full-bleed background (navy extends edge to edge)
   - Content naturally constrained by WP Bakery's default container
   - No inline pixel widths injected by JavaScript
   So we just style the hero with padding + a centered inner max-width.
   ============================================================ */

.ttt-page .ttt-hero.ttt-hero {
  background: #002439 !important;
  color: #ffffff !important;
  position: relative !important;
  overflow: hidden !important;
  padding-top: 160px !important;
  padding-bottom: 100px !important;
  max-width: 1140px;
  margin: 0 auto;
}

@media (max-width: 1270px) {
	.ttt-page .ttt-hero.ttt-hero {
		padding-top: 120px !important;
	}
}

@media (max-width: 991px) {
	.ttt-page .ttt-hero.ttt-hero {
		padding-top: 50px !important;
		padding-bottom: 70px !important;
	  }
}

/* Mobile padding adjustment */
@media (max-width: 900px) {
  .ttt-page .ttt-hero .vc_col-sm-7 {
    margin-bottom: 40px !important;
  }
}

.ttt-page {
  --ttt-navy: #002439;
  --ttt-navy-80: #1a3a4d;
  --ttt-green: #70BD95;
  --ttt-green-dark: #5ba87e;
  --ttt-white: #ffffff;
  --ttt-off: #f6f8f9;
  --ttt-line: #e2e7ea;
  --ttt-text: #1a2a33;
  --ttt-muted: #5a6b75;

  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: var(--ttt-text);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

.ttt-page *,
.ttt-page *::before,
.ttt-page *::after { box-sizing: border-box; }

.ttt-page img { max-width: 100%; height: auto; display: block; }

/* WP Bakery default neutralizations */
.ttt-page .wpb_text_column,
.ttt-page .wpb_content_element { margin-bottom: 0 !important; }
.ttt-page .wpb_text_column > .wpb_wrapper > p:only-child { margin: 0; }
.ttt-page .vc_row { margin-left: 0; margin-right: 0; }

/* ========== HERO ROW ========== */
.ttt-page .ttt-hero {
  background: var(--ttt-navy) !important;
  color: var(--ttt-white);
  position: relative;
  overflow: hidden;
  padding: 80px 24px 100px !important;
}
.ttt-page .ttt-hero::before {
  content: "";
  position: absolute;
  top: -200px; right: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(112,189,149,0.18) 0%, rgba(112,189,149,0) 70%);
  pointer-events: none;
}
/* ============================================================
   HERO CONTAINER — targets actual WP Bakery markup in donnelly-v3
   DOM structure confirmed via DevTools:
   .ttt-hero (our section)
     > .vc_row-full-width.vc_clearfix  (stretch wrapper)
     > .vc_col-sm-7.wpb_column.vc_column_container
         > .vc_column-inner
           > .wpb_wrapper
             > .wpb_text_column.ttt-eyebrow
             > .wpb_text_column.ttt-hero-h1
             etc.
     > .vc_col-sm-5.wpb_column.vc_column_container
         > .vc_column-inner
           > .wpb_wrapper
             > [form card]
   ============================================================ */

/* The hero section itself — give it internal horizontal padding so content
   can never touch the viewport edge. The stretch_row setting kills row padding
   so we apply it to the section wrapper instead. */
.ttt-page .ttt-hero {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

/* Create a centered 1200px wrapper by targeting the WP Bakery row element
   directly (skipping the stretch wrapper which is a sibling clearfix div). */
.ttt-page .ttt-hero .wpb_row,
.ttt-page .ttt-hero > .vc_row {
  max-width: 1200px;
  margin-left: auto !important;
  margin-right: auto !important;
  position: relative;
  z-index: 1;
}

/* Column widths and gutters on desktop.
   Using 60% / 40% split — wider left for headline + copy, narrower form column,
   with comfortable gutter between them. */
@media (min-width: 901px) {
  .ttt-page .ttt-hero .vc_col-sm-7 {
    width: 60% !important;
    flex: 0 0 60% !important;
    max-width: 60% !important;
  }
  .ttt-page .ttt-hero .vc_col-sm-5 {
    width: 40% !important;
    flex: 0 0 40% !important;
    max-width: 40% !important;
  }
  .ttt-page .ttt-hero .vc_col-sm-7 > .vc_column-inner {
    padding-right: 40px !important;
  }
  .ttt-page .ttt-hero .vc_col-sm-5 > .vc_column-inner {
    padding-left: 0 !important;
  }
}



/* Mobile: reset and stack with breathing room */
@media (max-width: 900px) {
  .ttt-page .ttt-hero {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .ttt-page .ttt-hero .vc_col-sm-7 { margin-bottom: 40px; }
	.ttt-page .ttt-form-card { max-width: 100% !important;}
}

/* Eyebrow — hidden per client request */
.ttt-page .ttt-eyebrow {
  display: none !important;
}

/* Hero H1 */
.ttt-page .ttt-hero-h1 h1 {
  font-size: clamp(34px, 3.2vw, 46px) !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 24px !important;
  color: var(--ttt-white) !important;
  max-width: 580px;
}
.ttt-page .ttt-accent { color: var(--ttt-green) !important; }

/* Hero sub */
.ttt-page .ttt-hero-sub .wpb_wrapper,
.ttt-page .ttt-hero-sub p {
  font-size: 17px !important;
  line-height: 1.55 !important;
  color: rgba(255,255,255,0.82) !important;
  max-width: 560px;
  margin: 0 0 32px !important;
}

/* ========== BUTTONS (HTML anchors inside vc_column_text) ========== */
.ttt-page a.ttt-btn,
.ttt-page .ttt-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 16px 28px;
  font-family: 'Roboto', sans-serif;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.3px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  text-decoration: none !important;
  transition: transform 0.15s ease, background 0.15s ease, box-shadow 0.15s ease, color 0.15s ease, border-color 0.15s ease;
  margin-right: 16px;
  margin-bottom: 16px;
}

.ttt-page a.ttt-btn-primary {
  background: var(--ttt-green) !important;
  color: var(--ttt-navy) !important;
}
.ttt-page a.ttt-btn-primary:hover {
  background: var(--ttt-green-dark) !important;
  color: var(--ttt-navy) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(112,189,149,0.3);
}

.ttt-page a.ttt-btn-ghost {
  background: transparent !important;
  color: var(--ttt-white) !important;
  border: 2px solid rgba(255,255,255,0.35) !important;
  padding: 14px 26px;
}
.ttt-page a.ttt-btn-ghost:hover {
  border-color: var(--ttt-green) !important;
  color: var(--ttt-green) !important;
}

/* Button row container */
.ttt-page .ttt-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  margin-bottom: 40px;
}
.ttt-page .ttt-cta-row a.ttt-btn { margin-right: 0; margin-bottom: 0; }

/* ========== TRUST ROW ========== */
.ttt-page .ttt-hero-trust {
  display: flex;
  gap: 32px;
  flex-wrap: wrap;
  padding-top: 28px;
  margin-top: 8px;
  border-top: 1px solid rgba(255,255,255,0.15);
}
.ttt-page .ttt-trust-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  color: rgba(255,255,255,0.75);
}
.ttt-page .ttt-trust-item .ttt-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--ttt-green);
}

/* ========== FORM CARD ========== */
.ttt-page .ttt-form-card {
  background: var(--ttt-white);
  color: var(--ttt-text);
  border-radius: 8px;
  padding: 36px;
  box-shadow: 0 20px 50px rgba(0,0,0,0.25);
  position: relative;
  scroll-margin-top: 100px;
  max-width: 480px;
  margin-left: auto;
  margin-right: 0;
}
.ttt-page .ttt-form-card::before {
  content: "";
  position: absolute;
  top: -4px; left: 0; right: 0;
  height: 4px;
  background: var(--ttt-green);
  border-radius: 8px 8px 0 0;
}
.ttt-page .ttt-form-card h2 {
  font-size: 22px !important;
  font-weight: 900 !important;
  color: var(--ttt-navy) !important;
  margin: 0 0 6px !important;
  letter-spacing: -0.01em;
}
.ttt-page .ttt-form-card .ttt-form-sub {
  font-size: 14px !important;
  color: var(--ttt-muted) !important;
  margin: 0 0 24px !important;
}
.ttt-page .ttt-form-card .ttt-form-footer {
  font-size: 12px !important;
  color: var(--ttt-muted) !important;
  margin: 14px 0 0 !important;
  text-align: center;
}

/* HubSpot form overrides inside the form card */
.ttt-page .ttt-form-card .hs-form {
  font-family: 'Roboto', sans-serif;
}
.ttt-page .ttt-form-card .hs-form-field { margin-bottom: 16px; }
.ttt-page .ttt-form-card .hs-form-field > label {
  display: block;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--ttt-navy) !important;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 6px !important;
}
.ttt-page .ttt-form-card .hs-input {
  width: 100% !important;
  padding: 12px 14px !important;
  font-family: 'Roboto', sans-serif !important;
  font-size: 15px !important;
  border: 1.5px solid var(--ttt-line) !important;
  border-radius: 4px !important;
  background: var(--ttt-white) !important;
  color: var(--ttt-text) !important;
}
.ttt-page .ttt-form-card .hs-input:focus {
  outline: none;
  border-color: var(--ttt-green) !important;
}
.ttt-page .ttt-form-card textarea.hs-input {
  resize: vertical;
  min-height: 80px;
}
.ttt-page .ttt-form-card .hs-button,
.ttt-page .ttt-form-card input[type="submit"].hs-button {
  width: 100% !important;
  background: var(--ttt-navy) !important;
  color: var(--ttt-white) !important;
  padding: 16px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  transition: background 0.15s;
  margin-top: 8px !important;
  font-family: 'Roboto', sans-serif !important;
}
.ttt-page .ttt-form-card .hs-button:hover,
.ttt-page .ttt-form-card input[type="submit"].hs-button:hover {
  background: var(--ttt-navy-80) !important;
}
.ttt-page .ttt-form-card .hs-error-msgs { list-style: none; padding: 0; margin: 4px 0 0; }
.ttt-page .ttt-form-card .hs-error-msgs label { color: #c0392b; font-size: 12px; }

/* ========== PHONE STRIP ========== */
.ttt-page .ttt-phone-strip {
  background: var(--ttt-green) !important;
  padding: 24px 24px !important;
}
.ttt-page .ttt-phone-strip-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
  text-align: center;
  max-width: 1200px;
  margin: 0 auto;
}

.ttt-page .ttt-phone-strip-inner p {
	margin-bottom: 0;
}
.ttt-page .ttt-phone-label {
  font-size: 15px;
  font-weight: 500;
  color: var(--ttt-navy);
}
.ttt-page .ttt-phone-number,
.ttt-page a.ttt-phone-number {
  font-size: 28px;
  font-weight: 900;
  letter-spacing: -0.01em;
  text-decoration: none !important;
  color: var(--ttt-navy) !important;
}
.ttt-page a.ttt-phone-number:hover {
  text-decoration: underline !important;
  color: var(--ttt-navy) !important;
}
.ttt-page .ttt-phone-divider {
  width: 1px;
  height: 24px;
  background: rgba(0,36,57,0.25);
}

/* ========== GENERIC SECTION ========== */
.ttt-page .ttt-section { padding: 90px 24px !important; }
.ttt-page .ttt-section > .vc_row,
.ttt-page .ttt-section .vc_column-inner { max-width: 1200px; margin: 0 auto; }

.ttt-page .ttt-section-head h2,
.ttt-page .ttt-section-head-h2 h2 {
  text-align: center !important;
  font-size: clamp(28px, 3.5vw, 42px) !important;
  font-weight: 900 !important;
  color: var(--ttt-navy) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  margin: 0 auto 14px !important;
  max-width: 720px;
}
.ttt-page .ttt-section-head-p .wpb_wrapper,
.ttt-page .ttt-section-head-p p {
  text-align: center !important;
  font-size: 17px !important;
  color: var(--ttt-muted) !important;
  line-height: 1.55 !important;
  max-width: 720px;
  margin: 0 auto 56px !important;
}

/* ========== HOW IT WORKS ========== */
.ttt-page .ttt-how { background: var(--ttt-off) !important; }
.ttt-page .ttt-how .ttt-section-head h2 { color: var(--ttt-navy) !important; }

.ttt-page .ttt-step > .vc_column-inner,
.ttt-page .ttt-step > .wpb_wrapper {
  background: var(--ttt-white);
  border-radius: 8px;
  padding: 36px 30px !important;
  border: 1px solid var(--ttt-line);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  height: 100%;
}
.ttt-page .ttt-step:hover > .vc_column-inner,
.ttt-page .ttt-step:hover > .wpb_wrapper {
  transform: translateY(-4px);
  box-shadow: 0 12px 30px rgba(0,36,57,0.08);
}

/* Step number circle. CRITICAL: only style the inner p tag, NOT the
   .wpb_wrapper — the wrapper stretches full width and would turn the
   circle into an oval. Reset the wrapper to default block behavior. */
.ttt-page .ttt-step-num .wpb_wrapper {
  display: block !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  border-radius: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.ttt-page .ttt-step-num p,
.ttt-page .ttt-step-num .wpb_wrapper > p:first-child,
.ttt-page .ttt-step-num .wpb_wrapper > *:first-child {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px;
  max-width: 44px;
  background: var(--ttt-navy) !important;
  color: var(--ttt-green) !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  border-radius: 50% !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  flex-shrink: 0;
}

.ttt-page .ttt-step-h3 h3,
.ttt-page .ttt-step-h3 .wpb_wrapper > * {
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--ttt-navy) !important;
  margin: 0 0 10px !important;
  letter-spacing: -0.01em;
  text-align: left;
}

.ttt-page .ttt-step-p .wpb_wrapper,
.ttt-page .ttt-step-p p {
  font-size: 15px !important;
  color: var(--ttt-muted) !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

/* ========== INDUSTRIES ========== */
.ttt-page .ttt-industries {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 16px;
  max-width: 1200px;
  margin: 0 auto;
}
.ttt-page .ttt-industry {
  background: var(--ttt-white);
  border: 1.5px solid var(--ttt-line);
  border-radius: 6px;
  padding: 28px 16px;
  text-align: center;
  transition: all 0.2s ease;
}
.ttt-page .ttt-industry:hover {
  border-color: var(--ttt-green);
  transform: translateY(-2px);
}
.ttt-page .ttt-industry-icon {
  width: 40px;
  height: 40px;
  margin: 0 auto 14px;
  color: var(--ttt-green);
}
.ttt-page .ttt-industry-icon svg { width: 100%; height: 100%; }
.ttt-page .ttt-industry-name {
  font-size: 14px;
  font-weight: 700;
  color: var(--ttt-navy);
  line-height: 1.25;
}

/* ========== WHY DONNELLY ========== */
.ttt-page .ttt-why {
  background: var(--ttt-navy) !important;
  color: var(--ttt-white);
  position: relative;
  overflow: hidden;
}
.ttt-page .ttt-why::before {
  content: "";
  position: absolute;
  bottom: -300px; left: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(112,189,149,0.12) 0%, rgba(112,189,149,0) 70%);
  pointer-events: none;
}
.ttt-page .ttt-why .ttt-section-head h2,
.ttt-page .ttt-why .ttt-section-head-h2 h2 { color: var(--ttt-white) !important; }
.ttt-page .ttt-why .ttt-section-head-p p { color: rgba(255,255,255,0.7) !important; }

/* Stats */
.ttt-page .ttt-stat > .vc_column-inner,
.ttt-page .ttt-stat > .wpb_wrapper {
  text-align: center;
  padding: 28px 20px !important;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 6px;
  background: rgba(255,255,255,0.03);
  position: relative;
  z-index: 1;
  height: 100%;
}
.ttt-page .ttt-stat-num .wpb_wrapper,
.ttt-page .ttt-stat-num p {
  font-size: 44px !important;
  font-weight: 900 !important;
  color: var(--ttt-green) !important;
  line-height: 1 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 8px !important;
  text-align: center;
}
.ttt-page .ttt-stat-label .wpb_wrapper,
.ttt-page .ttt-stat-label p {
  font-size: 13px !important;
  color: rgba(255,255,255,0.75) !important;
  font-weight: 500 !important;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin: 0 !important;
  text-align: center;
}

.ttt-page .ttt-stats-row { margin-bottom: 56px !important; position: relative; z-index: 1; }

/* Reasons */
.ttt-page .ttt-reason {
  display: flex;
  gap: 16px;
  align-items: flex-start;
  margin-bottom: 24px;
}
.ttt-page .ttt-reason-check {
  flex-shrink: 0;
  width: 28px; height: 28px;
  border-radius: 50%;
  background: var(--ttt-green);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
}
.ttt-page .ttt-reason-check svg {
  width: 14px; height: 14px;
  color: var(--ttt-navy);
}
.ttt-page .ttt-reason h4 {
  font-size: 17px !important;
  font-weight: 700 !important;
  margin: 0 0 4px !important;
  color: var(--ttt-white) !important;
}
.ttt-page .ttt-reason p {
  font-size: 15px !important;
  color: rgba(255,255,255,0.72) !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

/* ========== FAQ — WP BAKERY ACCORDION OVERRIDES ========== */
.ttt-page .ttt-faqs { max-width: 800px !important; margin: 0 auto !important; }

/* Reset WP Bakery accordion containers */
.ttt-page .ttt-faqs .vc_tta-panels,
.ttt-page .ttt-faqs .vc_tta-panels-container {
  background: transparent !important;
  border: none !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* The + / − icon WP Bakery generates — .vc_tta-controls-icon on an <i> tag
   with ::before / ::after pseudo-elements forming the + and − glyphs.
   Position it on the RIGHT of each FAQ row, not the left. */
.ttt-page .ttt-faqs .vc_tta-panel-title {
  position: relative !important;
}
.ttt-page .ttt-faqs .vc_tta-panel-title > a {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding-left: 0 !important;
  padding-right: 40px !important;
}
.ttt-page .ttt-faqs .vc_tta-controls-icon {
  position: absolute !important;
  right: 0 !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 20px !important;
  height: 20px !important;
  color: var(--ttt-green) !important;
  border-color: var(--ttt-green) !important;
}
.ttt-page .ttt-faqs .vc_tta-controls-icon::before,
.ttt-page .ttt-faqs .vc_tta-controls-icon::after {
  border-color: var(--ttt-green) !important;
  background-color: var(--ttt-green) !important;
}

/* Remove the icon-position-left class effects */
.ttt-page .ttt-faqs .vc_tta-panel-title.vc_tta-controls-icon-position-left,
.ttt-page .ttt-faqs .vc_tta-controls-icon-position-left .vc_tta-controls-icon {
  padding-left: 0 !important;
  left: auto !important;
  right: 0 !important;
}

.ttt-page .ttt-faqs .vc_tta-panel { border: none !important; background: transparent !important; margin: 0 !important; }
.ttt-page .ttt-faqs .vc_tta-panels { background: transparent !important; border: none !important; }
.ttt-page .ttt-faqs .vc_tta-panels-container { background: transparent !important; }
.ttt-page .ttt-faqs .vc_tta-panel-heading {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--ttt-line) !important;
  border-radius: 0 !important;
  margin: 0 !important;
}
.ttt-page .ttt-faqs .vc_tta-panel-title > a {
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--ttt-navy) !important;
  padding: 20px 0 !important;
  background: transparent !important;
  border: none !important;
  font-family: 'Roboto', sans-serif !important;
}
.ttt-page .ttt-faqs .vc_tta-panel-title > a:hover { color: var(--ttt-navy) !important; }
.ttt-page .ttt-faqs .vc_tta-controls-icon {
  color: var(--ttt-green) !important;
  border-color: var(--ttt-green) !important;
}
.ttt-page .ttt-faqs .vc_tta-controls-icon::before,
.ttt-page .ttt-faqs .vc_tta-controls-icon::after { border-color: var(--ttt-green) !important; }
.ttt-page .ttt-faqs .vc_tta-panel-body {
  padding: 10px 0 20px !important;
  background: transparent !important;
  border: none !important;
  color: var(--ttt-muted) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  font-family: 'Roboto', sans-serif !important;
}
.ttt-page .ttt-faqs .vc_tta-panel-body p {
  color: var(--ttt-muted) !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
  margin: 0px 0 0 0 !important;
}

/* ========== FINAL CTA ========== */
.ttt-page .ttt-final {
  background: linear-gradient(135deg, var(--ttt-navy) 0%, #003a5c 100%) !important;
  color: var(--ttt-white);
  text-align: center;
  padding: 90px 24px !important;
  position: relative;
  overflow: hidden;
}
.ttt-page .ttt-final::before {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 800px; height: 800px;
  transform: translate(-50%, -50%);
  background: radial-gradient(circle, rgba(112,189,149,0.08) 0%, rgba(112,189,149,0) 60%);
  pointer-events: none;
}
.ttt-page .ttt-final > .vc_row,
.ttt-page .ttt-final .vc_column-inner {
  max-width: 720px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.ttt-page .ttt-final-h2 h2 {
  font-size: clamp(25px, 4vw, 46px) !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 16px !important;
  color: var(--ttt-white) !important;
  text-align: center;
}
.ttt-page .ttt-final-p .wpb_wrapper,
.ttt-page .ttt-final-p p {
  font-size: 18px !important;
  color: rgba(255,255,255,0.8) !important;
  margin: 0 0 32px !important;
  text-align: center;
}
.ttt-page .ttt-final-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap;
}
.ttt-page .ttt-final-buttons a.ttt-btn { margin: 0; }

.ttt-page .ttt-section-head-h2 h2 {
    max-width: 991px;
}

/* ========== RESPONSIVE ========== */
@media (max-width: 900px) {
  .ttt-page .ttt-hero { padding: 60px 24px 70px !important; }
  .ttt-page .ttt-industries { grid-template-columns: repeat(3, 1fr); }
  .ttt-page .ttt-section { padding: 60px 24px !important; }
  .ttt-page .ttt-phone-strip-inner { flex-direction: column; gap: 8px; }
  .ttt-page .ttt-phone-divider { display: none; }
}

@media (max-width: 600px) {
	.ttt-page .ttt-section-head-h2 h2 {
		font-size: 22px !important;
	}
}

@media (max-width: 560px) {
  .ttt-page .ttt-industries { grid-template-columns: repeat(2, 1fr); }
  .ttt-page .ttt-hero-h1 h1 { font-size: 34px !important; }
  .ttt-page .ttt-form-card { padding: 28px 24px; }
  .ttt-page .ttt-form-card h2, .ttt-page .ttt-section-head-h2 h2 { font-size: 20px !important; }
}
@media (max-width: 585px) {
	.ttt-page .ttt-hero.ttt-hero {
		padding-top: 0 !important;
	}
}

@media (max-width: 460px) {
	.ttt-page .ttt-section-head-h2 h2 {
		font-size: 27px !important;
	}
}

@media (max-width: 415px) {
	.ttt-page .ttt-final-h2 h2 {
	  font-size: 20px !important;
	}
}

@media (max-width: 360px) {
	.ttt-page .ttt-final-h2 h2 {
	  font-size: 17px !important;
	}
}