/*
Theme Name: Tech2Fix Business
Theme URI: https://www.tech2fix.com.au/
Author: OpenAI Codex
Author URI: https://openai.com/
Description: A modern block theme for Tech2Fix focused on IT services, digital solutions, and AI automation for Australian businesses.
Requires at least: 6.5
Tested up to: 6.8
Requires PHP: 7.4
Version: 1.6.9
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: tech2fix-business
Tags: block-patterns, full-site-editing, custom-colors, wide-blocks
*/

:root {
  --tech2fix-bg: #071521;
  --tech2fix-bg-soft: #10253b;
  --tech2fix-ink: #122235;
  --tech2fix-text: #edf7ff;
  --tech2fix-muted: #9bb0c3;
  --tech2fix-line: rgba(155, 176, 195, 0.16);
  --tech2fix-primary: #21d4fd;
  --tech2fix-primary-deep: #159ecf;
  --tech2fix-mint: #7af8d0;
  --tech2fix-accent: #ffc978;
  --tech2fix-surface: rgba(245, 250, 253, 0.96);
  --tech2fix-surface-soft: rgba(245, 250, 253, 0.08);
  --tech2fix-surface-dark: rgba(8, 20, 31, 0.95);
  --tech2fix-shadow: 0 28px 80px rgba(0, 0, 0, 0.26);
  --tech2fix-radius-xl: 34px;
  --tech2fix-radius-lg: 24px;
  --tech2fix-radius-md: 18px;
}

body {
  color: var(--tech2fix-text);
  background:
    radial-gradient(circle at 20% 0%, rgba(33, 212, 253, 0.16), transparent 24%),
    radial-gradient(circle at 90% 15%, rgba(122, 248, 208, 0.14), transparent 18%),
    linear-gradient(180deg, #05111c 0%, #071521 42%, #0a1826 100%);
  font-family: "Manrope", "Aptos", "Segoe UI", system-ui, sans-serif;
}

.wp-site-blocks {
  min-height: 100vh;
}

.tech2fix-shell {
  width: min(1360px, calc(100% - 48px));
  margin: 20px auto 56px;
}

.tech2fix-shell.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.tech2fix-page-wrap.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.tech2fix-section-gap.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.tech2fix-page-surface.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.tech2fix-dark-surface.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.tech2fix-surface.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: none !important;
}

.tech2fix-page-surface .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: none !important;
}

.tech2fix-header-wrap,
.tech2fix-surface,
.tech2fix-dark-surface,
.tech2fix-accent-surface,
.tech2fix-soft-surface,
.tech2fix-service-card,
.tech2fix-usecase-card,
.tech2fix-industry-card,
.tech2fix-process-card,
.tech2fix-city-cloud,
.tech2fix-contact-panel,
.tech2fix-quote-card,
.tech2fix-case-card,
.tech2fix-faq-card,
.tech2fix-metric-card,
.tech2fix-page-surface {
  border: 1px solid var(--tech2fix-line);
  box-shadow: var(--tech2fix-shadow);
}

.tech2fix-header-wrap {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 28px;
  padding: 16px 18px;
  border-radius: 42px;
  background: rgba(8, 21, 33, 0.82);
  backdrop-filter: blur(18px);
  position: sticky;
  top: 16px;
  z-index: 20;
  align-items: center;
}

.tech2fix-header-wrap .wp-block-navigation-item__label,
.tech2fix-header-wrap .wp-block-site-title a {
  color: var(--tech2fix-text);
}

.tech2fix-header-wrap a {
  text-decoration: none;
}

.tech2fix-header-wrap a:hover,
.tech2fix-footer a:hover {
  color: var(--tech2fix-mint);
}

.tech2fix-logo-mark {
  display: inline-flex;
  align-items: center;
  font-weight: 800;
  letter-spacing: -0.03em;
  font-size: 1.55rem;
}

.tech2fix-logo-mark::before {
  content: "";
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--tech2fix-primary), var(--tech2fix-mint));
  box-shadow: 0 0 0 6px rgba(33, 212, 253, 0.12);
}

.tech2fix-button,
.wp-block-button.tech2fix-button .wp-block-button__link {
  border-radius: 999px;
  padding: 0.95rem 1.35rem;
  font-weight: 800;
  color: #07202d;
  background: linear-gradient(135deg, var(--tech2fix-primary), var(--tech2fix-primary-deep) 58%, #128973);
  box-shadow: 0 18px 36px rgba(33, 212, 253, 0.22);
}

.tech2fix-button.is-style-outline .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-block-button__link {
  background: transparent;
  color: var(--tech2fix-text);
  border: 1px solid var(--tech2fix-line);
  box-shadow: none;
}

.tech2fix-eyebrow {
  text-transform: uppercase;
  letter-spacing: 0.16em;
  font-size: 0.78rem;
  font-weight: 800;
  color: var(--tech2fix-primary);
}

.tech2fix-eyebrow.is-mint {
  color: var(--tech2fix-mint);
}

.tech2fix-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(360px, 0.88fr);
  gap: 32px;
  align-items: stretch;
}

.tech2fix-hero > .wp-block-column,
.tech2fix-dark-surface .wp-block-column {
  min-width: 0;
}

.tech2fix-surface,
.tech2fix-dark-surface,
.tech2fix-accent-surface,
.tech2fix-soft-surface,
.tech2fix-contact-panel {
  padding: clamp(24px, 3vw, 40px);
  border-radius: var(--tech2fix-radius-xl);
}

.tech2fix-surface {
  background: linear-gradient(180deg, rgba(17, 40, 58, 0.88), rgba(10, 27, 43, 0.92));
  backdrop-filter: blur(14px);
}

.tech2fix-soft-surface {
  background: linear-gradient(180deg, rgba(13, 31, 47, 0.92), rgba(8, 22, 36, 0.92));
}

.tech2fix-dark-surface {
  background:
    linear-gradient(180deg, rgba(8, 20, 31, 0.95), rgba(12, 27, 42, 0.95)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.16), transparent);
  color: var(--tech2fix-text);
  overflow: hidden;
  position: relative;
}

.tech2fix-dark-surface::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -80px;
  width: 240px;
  height: 240px;
  background: radial-gradient(circle, rgba(122, 248, 208, 0.18), transparent 68%);
}

.tech2fix-accent-surface {
  background: linear-gradient(135deg, rgba(18, 52, 74, 0.92), rgba(13, 39, 57, 0.95));
}

.tech2fix-hero h1,
.tech2fix-page-title {
  letter-spacing: -0.05em;
  line-height: 0.9;
}

.tech2fix-hero h1 {
  font-size: clamp(3.25rem, 5vw, 6rem) !important;
  max-width: 10ch;
}

.tech2fix-dark-surface h3 {
  font-size: clamp(2rem, 3vw, 3.4rem) !important;
  line-height: 1.05;
  max-width: 11ch;
}

.tech2fix-lead {
  color: #d8e9f6;
  font-size: clamp(1.05rem, 1.2vw, 1.24rem);
}

.tech2fix-muted {
  color: var(--tech2fix-muted);
}

.tech2fix-surface p:not(.tech2fix-eyebrow),
.tech2fix-accent-surface p:not(.tech2fix-eyebrow),
.tech2fix-dark-surface .tech2fix-muted,
.tech2fix-dark-surface p,
.tech2fix-soft-surface p:not(.tech2fix-eyebrow) {
  color: var(--tech2fix-muted);
}

.tech2fix-pill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.tech2fix-pill-list li {
  margin: 0;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(33, 212, 253, 0.11);
  color: #d8f6ff;
  font-weight: 700;
}

.tech2fix-hero-actions {
  gap: 16px;
  margin-bottom: 14px;
}

.tech2fix-hero-actions .wp-block-button {
  margin: 0;
}

.tech2fix-hero-actions .wp-block-button__link {
  min-width: 250px;
  justify-content: center;
  box-shadow: 0 12px 26px rgba(33, 212, 253, 0.16);
}

.tech2fix-hero-pills {
  margin-top: 10px;
}

.tech2fix-stat-grid,
.tech2fix-service-grid,
.tech2fix-usecase-grid,
.tech2fix-industry-grid,
.tech2fix-process-grid,
.tech2fix-outcome-grid,
.tech2fix-proof-grid,
.tech2fix-quote-grid {
  display: grid;
  gap: 18px;
}

.tech2fix-stat-grid.wp-block-columns,
.tech2fix-service-grid.wp-block-columns,
.tech2fix-usecase-grid.wp-block-columns,
.tech2fix-industry-grid.wp-block-columns,
.tech2fix-process-grid.wp-block-columns,
.tech2fix-outcome-grid.wp-block-columns,
.tech2fix-proof-grid.wp-block-columns,
.tech2fix-quote-grid.wp-block-columns {
  display: grid !important;
  margin-bottom: 0;
  align-items: stretch !important;
}

.tech2fix-stat-grid.wp-block-columns > .wp-block-column,
.tech2fix-service-grid.wp-block-columns > .wp-block-column,
.tech2fix-usecase-grid.wp-block-columns > .wp-block-column,
.tech2fix-industry-grid.wp-block-columns > .wp-block-column,
.tech2fix-process-grid.wp-block-columns > .wp-block-column,
.tech2fix-outcome-grid.wp-block-columns > .wp-block-column,
.tech2fix-proof-grid.wp-block-columns > .wp-block-column,
.tech2fix-quote-grid.wp-block-columns > .wp-block-column {
  flex-basis: auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.tech2fix-stat-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tech2fix-service-grid,
.tech2fix-industry-grid,
.tech2fix-proof-grid,
.tech2fix-quote-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tech2fix-usecase-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.tech2fix-process-grid,
.tech2fix-outcome-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tech2fix-metric-card,
.tech2fix-service-card,
.tech2fix-usecase-card,
.tech2fix-industry-card,
.tech2fix-process-card,
.tech2fix-case-card,
.tech2fix-quote-card,
.tech2fix-faq-card,
.tech2fix-contact-panel {
  background:
    linear-gradient(180deg, rgba(15, 34, 51, 0.96), rgba(9, 24, 38, 0.96)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.1), transparent 55%);
  color: var(--tech2fix-text);
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(14px);
}

.tech2fix-metric-card::before,
.tech2fix-service-card::before,
.tech2fix-usecase-card::before,
.tech2fix-industry-card::before,
.tech2fix-process-card::before,
.tech2fix-case-card::before,
.tech2fix-quote-card::before,
.tech2fix-faq-card::before,
.tech2fix-contact-panel::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 3px;
  background: linear-gradient(90deg, var(--tech2fix-primary), var(--tech2fix-mint));
  opacity: 0.85;
}

.tech2fix-page-surface {
  background:
    linear-gradient(180deg, rgba(238, 246, 252, 0.98), rgba(228, 238, 246, 0.96)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.06), rgba(122, 248, 208, 0.05));
  color: var(--tech2fix-ink);
}

.tech2fix-outcome-box {
  height: 100%;
  padding: 22px;
  border-radius: var(--tech2fix-radius-lg);
  background: linear-gradient(180deg, rgba(18, 40, 59, 0.88), rgba(11, 28, 44, 0.88));
  border: 1px solid rgba(122, 248, 208, 0.08);
}

.tech2fix-dark-surface > .wp-block-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.tech2fix-metric-card,
.tech2fix-service-card,
.tech2fix-usecase-card,
.tech2fix-industry-card,
.tech2fix-process-card,
.tech2fix-case-card,
.tech2fix-quote-card,
.tech2fix-faq-card {
  height: 100%;
  padding: 24px;
  border-radius: var(--tech2fix-radius-lg);
}

.tech2fix-service-card h3,
.tech2fix-case-card h3 {
  font-size: clamp(1.45rem, 1.8vw, 1.9rem);
}

.tech2fix-quote-card p {
  font-size: 1.06rem;
  line-height: 1.8;
}

.tech2fix-metric-card strong,
.tech2fix-outcome-number,
.tech2fix-process-number {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: rgba(33, 212, 253, 0.12);
  color: #0e718f;
  font-weight: 800;
  margin-bottom: 1rem;
}

.tech2fix-dark-surface .tech2fix-outcome-number,
.tech2fix-dark-surface .tech2fix-process-number {
  color: var(--tech2fix-mint);
  background: rgba(33, 212, 253, 0.14);
}

.tech2fix-service-card h3,
.tech2fix-usecase-card h3,
.tech2fix-industry-card h3,
.tech2fix-process-card h3,
.tech2fix-case-card h3,
.tech2fix-quote-card h3,
.tech2fix-faq-card h3 {
  margin-top: 0;
  margin-bottom: 0.75rem;
  letter-spacing: -0.03em;
  color: var(--tech2fix-text);
}

.tech2fix-service-card p,
.tech2fix-industry-card p,
.tech2fix-process-card p,
.tech2fix-case-card p,
.tech2fix-quote-card p,
.tech2fix-faq-card p,
.tech2fix-contact-panel p {
  color: #c5d8e7;
}

.tech2fix-service-card ul,
.tech2fix-usecase-card ul,
.tech2fix-industry-card ul,
.tech2fix-process-card ul,
.tech2fix-clean-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
}

.tech2fix-service-card li,
.tech2fix-usecase-card li,
.tech2fix-industry-card li,
.tech2fix-process-card li,
.tech2fix-clean-list li {
  margin: 0 0 0.65rem;
}

.tech2fix-service-card li,
.tech2fix-industry-card li,
.tech2fix-process-card li,
.tech2fix-clean-list li {
  color: #c5d8e7;
}

.tech2fix-usecase-card li {
  color: #d7e6f2;
}

.tech2fix-service-card li::before,
.tech2fix-usecase-card li::before,
.tech2fix-clean-list li::before {
  content: "\2022";
  color: var(--tech2fix-primary);
  font-weight: 900;
  margin-right: 10px;
}

.tech2fix-case-tag {
  display: inline-flex;
  margin-bottom: 14px;
  padding: 8px 12px;
  border-radius: 999px;
  background: rgba(33, 212, 253, 0.12);
  color: #9eeeff;
  font-weight: 800;
  font-size: 0.85rem;
}

.tech2fix-quote-card cite {
  display: inline-block;
  margin-top: 0.75rem;
  font-style: normal;
  font-weight: 700;
  color: #9ab9ce;
}

.tech2fix-faq-stack {
  display: grid;
  gap: 16px;
}

.tech2fix-city-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 24px;
  border-radius: var(--tech2fix-radius-xl);
  background: linear-gradient(180deg, rgba(14, 35, 52, 0.92), rgba(8, 22, 36, 0.95));
}

.tech2fix-city-cloud span {
  display: inline-flex;
  padding: 12px 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, rgba(33, 212, 253, 0.11), rgba(122, 248, 208, 0.14));
  color: var(--tech2fix-text);
  font-weight: 700;
}

.tech2fix-section-gap {
  margin-top: clamp(22px, 4vw, 44px);
}

.tech2fix-page-wrap {
  width: min(1360px, calc(100% - 48px));
  margin: 36px auto 60px;
}

.tech2fix-page-surface {
  padding: clamp(24px, 3vw, 42px);
  border-radius: var(--tech2fix-radius-xl);
  width: 100%;
  box-sizing: border-box;
}

.tech2fix-page-title {
  margin-bottom: 0.35rem;
  color: var(--tech2fix-ink);
}

.tech2fix-page-surface h1,
.tech2fix-page-surface h2,
.tech2fix-page-surface h3,
.tech2fix-page-surface h4 {
  color: var(--tech2fix-ink);
}

.tech2fix-page-surface .tech2fix-lead,
.tech2fix-page-surface .tech2fix-muted {
  max-width: 760px;
}

.tech2fix-page-surface .tech2fix-service-grid,
.tech2fix-page-surface .tech2fix-proof-grid,
.tech2fix-page-surface .tech2fix-usecase-grid,
.tech2fix-page-surface .tech2fix-faq-stack {
  margin-top: 1.5rem;
}

.tech2fix-page-surface p,
.tech2fix-page-surface li {
  color: #4f6174;
}

.tech2fix-page-surface .tech2fix-service-card,
.tech2fix-page-surface .tech2fix-case-card,
.tech2fix-page-surface .tech2fix-faq-card,
.tech2fix-page-surface .tech2fix-contact-panel {
  background:
    linear-gradient(180deg, rgba(17, 40, 59, 0.96), rgba(10, 27, 42, 0.96)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.08), transparent 60%);
}

.tech2fix-page-surface img {
  border-radius: 28px;
  border: 1px solid rgba(18, 34, 53, 0.08);
}

.tech2fix-visual-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.tech2fix-visual-card {
  padding: 18px;
  border-radius: var(--tech2fix-radius-lg);
  background:
    linear-gradient(180deg, rgba(15, 34, 51, 0.96), rgba(9, 24, 38, 0.96)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.12), transparent 55%);
  border: 1px solid var(--tech2fix-line);
  box-shadow: var(--tech2fix-shadow);
}

.tech2fix-visual-card img {
  width: 100%;
  border-radius: 20px;
  margin-bottom: 14px;
}

.tech2fix-visual-card h3 {
  color: var(--tech2fix-text);
  margin-bottom: 0.5rem;
}

.tech2fix-visual-card p {
  color: #c5d8e7;
}

.tech2fix-footer {
  padding: 28px 0 16px;
}

.tech2fix-footer h5,
.tech2fix-footer p,
.tech2fix-footer a {
  color: var(--tech2fix-muted);
}

.tech2fix-footer .tech2fix-logo-mark {
  color: var(--tech2fix-text);
}

.tech2fix-brand-lockup,
.tech2fix-header-nav,
.tech2fix-header-actions {
  gap: 14px;
}

.tech2fix-brand-lockup {
  min-width: 0;
}

.tech2fix-brand-row {
  gap: 12px;
}

.tech2fix-brand-symbol {
  margin: 0;
  width: 46px;
  min-width: 46px;
}

.tech2fix-brand-symbol img {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 10px 24px rgba(33, 212, 253, 0.16));
}

.tech2fix-brand-row .tech2fix-logo-mark::before {
  display: none;
}

.tech2fix-brand-lockup .wp-block-site-title,
.tech2fix-header-nav p,
.tech2fix-header-actions p {
  margin: 0;
}

.tech2fix-header-nav {
  align-items: center;
  row-gap: 10px;
  justify-content: center;
}

.tech2fix-header-nav a {
  color: #d7e6f2;
  font-weight: 600;
}

.tech2fix-header-email a {
  color: var(--tech2fix-muted);
}

.tech2fix-header-actions {
  justify-content: flex-end;
}

.tech2fix-header-actions .wp-block-buttons {
  margin: 0;
}

.tech2fix-header-actions .wp-block-button__link {
  min-width: 210px;
}

.tech2fix-page-surface {
  background:
    linear-gradient(180deg, rgba(10, 24, 38, 0.97), rgba(8, 21, 34, 0.97)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.12), transparent 58%);
  color: var(--tech2fix-text);
  position: relative;
  overflow: hidden;
}

.tech2fix-page-surface::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--tech2fix-primary), var(--tech2fix-mint));
  opacity: 0.9;
}

.tech2fix-page-title,
.tech2fix-page-surface h1,
.tech2fix-page-surface h2,
.tech2fix-page-surface h3,
.tech2fix-page-surface h4 {
  color: var(--tech2fix-text);
}

.tech2fix-page-surface p,
.tech2fix-page-surface li {
  color: #bed2e3;
}

.tech2fix-page-surface a {
  color: var(--tech2fix-primary);
}

.tech2fix-page-surface img {
  border: 1px solid rgba(155, 176, 195, 0.16);
}

.tech2fix-page-surface .tech2fix-service-card,
.tech2fix-page-surface .tech2fix-case-card,
.tech2fix-page-surface .tech2fix-faq-card,
.tech2fix-page-surface .tech2fix-contact-panel {
  background:
    linear-gradient(180deg, rgba(15, 34, 51, 0.97), rgba(9, 24, 38, 0.97)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.12), transparent 60%);
}

.tech2fix-contact-stage .tech2fix-page-title {
  max-width: 16ch;
  margin-bottom: 1rem;
}

.tech2fix-page-surface .tech2fix-lead,
.tech2fix-page-surface .tech2fix-muted {
  max-width: 980px;
}

.tech2fix-contact-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  gap: 20px;
  align-items: start !important;
  margin-top: 2rem;
}

.tech2fix-contact-grid > .wp-block-column {
  flex-basis: auto !important;
  width: auto !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.tech2fix-contact-form-panel,
.tech2fix-contact-detail {
  height: 100%;
}

.tech2fix-contact-stack {
  display: grid;
  gap: 18px;
}

.tech2fix-contact-form {
  display: grid;
  gap: 14px;
  margin-top: 1.5rem;
}

.tech2fix-contact-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.tech2fix-contact-form label {
  display: grid;
  gap: 8px;
  color: var(--tech2fix-text);
  font-weight: 700;
}

.tech2fix-contact-form input,
.tech2fix-contact-form select,
.tech2fix-contact-form textarea {
  width: 100%;
  border: 1px solid rgba(155, 176, 195, 0.2);
  border-radius: 16px;
  background: rgba(6, 18, 29, 0.88);
  color: var(--tech2fix-text);
  padding: 0.95rem 1rem;
  font: inherit;
  box-sizing: border-box;
}

.tech2fix-contact-form input::placeholder,
.tech2fix-contact-form textarea::placeholder {
  color: #88a0b3;
}

.tech2fix-contact-form input:focus,
.tech2fix-contact-form select:focus,
.tech2fix-contact-form textarea:focus {
  outline: none;
  border-color: rgba(33, 212, 253, 0.72);
  box-shadow: 0 0 0 3px rgba(33, 212, 253, 0.12);
}

.tech2fix-form-submit {
  appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 1rem 1.3rem;
  font: inherit;
  font-weight: 800;
  color: #06202c;
  background: linear-gradient(135deg, var(--tech2fix-primary), var(--tech2fix-primary-deep) 58%, #128973);
  box-shadow: 0 18px 36px rgba(33, 212, 253, 0.22);
  cursor: pointer;
}

.tech2fix-form-notice {
  margin-bottom: 1rem;
  padding: 0.95rem 1rem;
  border-radius: 16px;
  font-weight: 700;
}

.tech2fix-form-notice-success {
  background: rgba(122, 248, 208, 0.14);
  color: #cffff0;
  border: 1px solid rgba(122, 248, 208, 0.3);
}

.tech2fix-form-notice-error {
  background: rgba(255, 121, 121, 0.14);
  color: #ffd6d6;
  border: 1px solid rgba(255, 121, 121, 0.28);
}

.tech2fix-contact-stage .wpforms-container {
  margin-top: 1.5rem;
}

.tech2fix-contact-stage .wpforms-container .wpforms-form {
  display: grid;
  gap: 14px;
}

.tech2fix-contact-stage .wpforms-field-container {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
}

.tech2fix-contact-stage .wpforms-field {
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

.tech2fix-contact-stage .wpforms-field:nth-child(n + 3),
.tech2fix-contact-stage .wpforms-field.wpforms-field-textarea,
.tech2fix-contact-stage .wpforms-field.wpforms-field-select,
.tech2fix-contact-stage .wpforms-field.wpforms-field-radio,
.tech2fix-contact-stage .wpforms-field.wpforms-field-checkbox,
.tech2fix-contact-stage .wpforms-field.wpforms-field-html,
.tech2fix-contact-stage .wpforms-field.wpforms-field-pagebreak {
  grid-column: 1 / -1;
}

.tech2fix-contact-stage .wpforms-field-label {
  margin-bottom: 8px !important;
  color: var(--tech2fix-text) !important;
  font-weight: 700 !important;
}

.tech2fix-contact-stage .wpforms-field-label-inline,
.tech2fix-contact-stage .wpforms-field-sublabel {
  color: #c5d8e7 !important;
}

.tech2fix-contact-stage .wpforms-field input,
.tech2fix-contact-stage .wpforms-field select,
.tech2fix-contact-stage .wpforms-field textarea {
  width: 100% !important;
  max-width: none !important;
  border: 1px solid rgba(155, 176, 195, 0.2) !important;
  border-radius: 16px !important;
  background: rgba(6, 18, 29, 0.88) !important;
  color: var(--tech2fix-text) !important;
  padding: 0.95rem 1rem !important;
  font: inherit !important;
  box-sizing: border-box !important;
}

.tech2fix-contact-stage .wpforms-field input::placeholder,
.tech2fix-contact-stage .wpforms-field textarea::placeholder {
  color: #88a0b3 !important;
}

.tech2fix-contact-stage .wpforms-field input:focus,
.tech2fix-contact-stage .wpforms-field select:focus,
.tech2fix-contact-stage .wpforms-field textarea:focus {
  outline: none !important;
  border-color: rgba(33, 212, 253, 0.72) !important;
  box-shadow: 0 0 0 3px rgba(33, 212, 253, 0.12) !important;
}

.tech2fix-contact-stage .wpforms-submit-container {
  margin-top: 6px !important;
  padding: 0 !important;
}

.tech2fix-contact-stage .wpforms-submit {
  appearance: none !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 1rem 1.3rem !important;
  font: inherit !important;
  font-weight: 800 !important;
  color: #06202c !important;
  background: linear-gradient(135deg, var(--tech2fix-primary), var(--tech2fix-primary-deep) 58%, #128973) !important;
  box-shadow: 0 18px 36px rgba(33, 212, 253, 0.22) !important;
  cursor: pointer !important;
}

.tech2fix-contact-stage .wpforms-confirmation-container-full,
.tech2fix-contact-stage div[role="alert"].wpforms-error-container,
.tech2fix-contact-stage .wpforms-error-container {
  margin-bottom: 1rem !important;
  padding: 0.95rem 1rem !important;
  border-radius: 16px !important;
  font-weight: 700 !important;
  background: rgba(255, 121, 121, 0.14);
  color: #ffd6d6;
  border: 1px solid rgba(255, 121, 121, 0.28);
}

.tech2fix-contact-stage .wpforms-confirmation-container-full {
  background: rgba(122, 248, 208, 0.14);
  color: #cffff0;
  border-color: rgba(122, 248, 208, 0.3);
}

.tech2fix-contact-stage .wpforms-field input.wpforms-error,
.tech2fix-contact-stage .wpforms-field textarea.wpforms-error,
.tech2fix-contact-stage .wpforms-field select.wpforms-error {
  border-color: rgba(255, 121, 121, 0.5) !important;
}

.tech2fix-contact-stage .wpforms-field-description,
.tech2fix-contact-stage .wpforms-field-limit-text {
  color: #97aec1 !important;
}

.tech2fix-footer {
  padding: 34px clamp(24px, 3vw, 40px) 18px;
  border-radius: var(--tech2fix-radius-xl);
  background:
    linear-gradient(180deg, rgba(9, 24, 38, 0.97), rgba(7, 19, 31, 0.97)),
    linear-gradient(135deg, rgba(33, 212, 253, 0.12), transparent 60%);
  border: 1px solid var(--tech2fix-line);
  box-shadow: var(--tech2fix-shadow);
}

.tech2fix-footer .wp-block-columns {
  gap: 22px;
}

.tech2fix-footer .wp-block-buttons {
  margin-top: 1rem;
}

@media (max-width: 1080px) {
  .tech2fix-header-wrap {
    grid-template-columns: 1fr;
    gap: 18px;
    border-radius: 32px;
  }

  .tech2fix-header-nav,
  .tech2fix-header-actions {
    justify-content: flex-start;
  }

  .tech2fix-hero,
  .tech2fix-stat-grid,
  .tech2fix-service-grid,
  .tech2fix-usecase-grid,
  .tech2fix-process-grid,
  .tech2fix-outcome-grid,
  .tech2fix-proof-grid,
  .tech2fix-quote-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech2fix-visual-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech2fix-contact-grid,
  .tech2fix-contact-form-grid {
    grid-template-columns: 1fr;
  }

  .tech2fix-hero {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 782px) {
  .tech2fix-shell,
  .tech2fix-page-wrap {
    width: min(100% - 20px, 1360px);
  }

  .tech2fix-header-wrap {
    position: static;
    border-radius: 28px;
    grid-template-columns: 1fr;
  }

  .tech2fix-header-actions {
    width: 100%;
    justify-content: flex-start !important;
  }

  .tech2fix-hero,
  .tech2fix-stat-grid,
  .tech2fix-service-grid,
  .tech2fix-usecase-grid,
  .tech2fix-industry-grid,
  .tech2fix-process-grid,
  .tech2fix-outcome-grid,
  .tech2fix-proof-grid,
  .tech2fix-quote-grid {
    grid-template-columns: 1fr;
  }

  .tech2fix-visual-grid {
    grid-template-columns: 1fr;
  }

  .tech2fix-contact-grid,
  .tech2fix-contact-form-grid {
    grid-template-columns: 1fr;
  }

  .tech2fix-dark-surface > .wp-block-columns {
    grid-template-columns: 1fr;
  }

  .tech2fix-hide-mobile {
    display: none;
  }
}
