/* Titan Digital Hub brand overrides (loaded after the theme). */
:root {
  --tdh-bg: #020B1C;
  --tdh-surface: #071A38;
  --tdh-surface-2: #0B2348;
  --tdh-line: #1B3358;
  --tdh-ink: #FFFFFF;
  --tdh-muted: #AAB6C8;
  --tdh-accent: #087BFF;
  --tdh-highlight: #00D9FF;
}

/* Hard-coded orange inside theme SVG icons */
[fill="#F2520D" i], [fill="#F1520D" i], [fill="#FF6B1E" i], [fill="#FF4D00" i], [fill="#F2295B" i] { fill: var(--tdh-accent) !important; }
[stroke="#F2520D" i], [stroke="#F1520D" i], [stroke="#FF6B1E" i], [stroke="#FF4D00" i], [stroke="#F2295B" i] { stroke: var(--tdh-accent) !important; }
[fill="#FFC65E" i], [fill="#E7995F" i] { fill: var(--tdh-highlight) !important; }
[stroke="#FFC65E" i], [stroke="#E7995F" i] { stroke: var(--tdh-highlight) !important; }

/* Header email box: keep the address on one line */
.tdh-header-email .content, .tdh-header-email .content p, .tdh-header-email .content a { white-space: nowrap; }
.tdh-header-email .content a { color: var(--tdh-muted); font-size: 14px; }
.tdh-header-email .content a:hover { color: var(--tdh-highlight); }
/* Give the header's right-hand group room for the full email address */
.elementor-1790 .elementor-element-66af041,
.elementor-600 .elementor-element-db3692a,
.elementor-1267 .elementor-element-0926dd6 { --width: auto !important; width: auto !important; flex: 0 0 auto !important; }
.tdh-header-email { flex: 0 0 auto !important; min-width: max-content; }
.tdh-header-email .content, .tdh-header-email .content p { overflow: visible !important; text-overflow: clip !important; max-width: none !important; }
@media (max-width: 1280px) { .tdh-header-email { display: none !important; } }

/* Email links in body text never overflow on small screens */
.elementor-widget-text-editor a[href^="mailto:"], .elementor-widget-icon-box a[href^="mailto:"] { overflow-wrap: anywhere; }

/* Theme buttons: always readable */
.btn-theme-colored1, .btn.btn-theme-colored1 { color: #fff !important; }
.btn-theme-colored1:hover { color: var(--tdh-bg) !important; }

/* Dark page ground behind Elementor sections */
body, #wrapper, .main-content-area { background-color: var(--tdh-bg); }

/* Footer link lists */
.tdh-footer-links { list-style: none; margin: 0; padding: 0; }
.tdh-footer-links li { margin: 0 0 10px; }
.tdh-footer-links a { color: var(--tdh-muted); text-decoration: none; transition: color .2s; }
.tdh-footer-links a:hover { color: var(--tdh-highlight); }

/* Side push panel */
.side-panel-container, .side-panel-container .side-panel-wrap { background: var(--tdh-surface) !important; color: var(--tdh-muted); }

/* Contact form on dark backgrounds */
.tdh-form label { display: block; margin-bottom: 8px; color: #fff; font-weight: 500; font-size: 15px; }
.tdh-form .form-control, .tdh-form select, .tdh-form textarea {
  background: var(--tdh-bg) !important; color: #fff !important; border: 1px solid var(--tdh-line) !important;
  border-radius: 8px !important; padding: 13px 16px !important; font-size: 16px; width: 100%; box-shadow: none !important;
}
.tdh-form .form-control::placeholder, .tdh-form textarea::placeholder { color: #6F7F99; }
.tdh-form .form-control:focus, .tdh-form select:focus, .tdh-form textarea:focus { border-color: var(--tdh-accent) !important; outline: 2px solid rgba(8,123,255,.35); outline-offset: 0; }
.tdh-form select option { background: var(--tdh-bg); color: #fff; }
.tdh-form .wpcf7-submit { background: var(--tdh-accent) !important; color: #fff !important; border: 0 !important; border-radius: 999px !important; padding: 16px 34px !important; font-weight: 600; text-transform: uppercase; letter-spacing: 1.2px; cursor: pointer; }
.tdh-form .wpcf7-submit:hover { background: var(--tdh-highlight) !important; color: var(--tdh-bg) !important; }
.wpcf7 form .wpcf7-response-output { color: #fff; border-color: var(--tdh-accent); border-radius: 8px; }
.wpcf7-not-valid-tip { color: #ff8a8a; }

/* Text selection and focus in brand colours */
::selection { background: var(--tdh-accent); color: #fff; }
