/*
Theme Name: WCSEO
Theme URI: https://wildcatseo.com
Description: Wildcat SEO custom child theme for Divi. Keeps custom code/CSS safe across Divi parent theme updates.
Author: Wildcat SEO
Author URI: https://wildcatseo.com
Template: Divi
Version: 1.0.054235
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: wcseo
*/

/* Custom CSS — add overrides here if you want them separated from the Customizer Additional CSS. */

/* === WCSEO: contact page overrides === */
/* High specificity — wins against Divi default stylesheet because child theme loads last */

body.page-id-75 #page-container .et_pb_tabs,
body.page-id-75 .et_pb_section .et_pb_tabs {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls {
  background: #131b2e !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 6px !important;
  padding: 6px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  margin: 0 28px 24px !important;
  list-style: none !important;
}
body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls::after,
body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls::before { display: none !important; }

body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls li {
  flex: 1 1 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 10px !important;
  float: none !important;
  display: block !important;
}
body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls li a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 16px !important;
  color: #94a3b8 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  border: 0 !important;
  background: transparent !important;
}
body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls li.et_pb_tab_active {
  background: #f97316 !important;
  border: 0 !important;
}
body.page-id-75 .et_pb_tabs ul.et_pb_tabs_controls li.et_pb_tab_active a { color: #fff !important; }

body.page-id-75 .et_pb_tabs .et_pb_all_tabs {
  padding: 0 28px 28px !important;
  background: transparent !important;
  border: 0 !important;
}
body.page-id-75 .et_pb_tabs .et_pb_tab {
  background: transparent !important;
  padding: 0 !important;
  color: #cbd5e1 !important;
}

/* Lift the tabs UP into the form-card so it visually feels like ONE card with header + tabs + content */
body.page-id-75 .et_pb_column .et_pb_text + .et_pb_tabs {
  margin-top: -20px !important;
  background: #131b2e !important;
  border-radius: 0 0 18px 18px !important;
  border: 1px solid rgba(59,130,246,0.3) !important;
  border-top: 0 !important;
  padding: 12px 0 24px !important;
}

/* === Ninja Forms dark theme — highest specificity === */
body.page-id-75 .nf-form-cont,
body.page-id-75 .nf-form-cont * { background-color: transparent; }
body.page-id-75 .nf-form-cont { background: transparent !important; padding: 0 !important; }
body.page-id-75 .nf-form-fields-required { display: none !important; }
body.page-id-75 .nf-field-container { margin-bottom: 14px !important; }
body.page-id-75 .nf-field-label, body.page-id-75 .nf-field-label label { display: none !important; }
body.page-id-75 .nf-form-cont input[type="text"],
body.page-id-75 .nf-form-cont input[type="email"],
body.page-id-75 .nf-form-cont input[type="tel"],
body.page-id-75 .nf-form-cont input[type="url"],
body.page-id-75 .nf-form-cont textarea {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 10px !important;
  color: #f8fafc !important;
  padding: 14px 16px !important;
  font-size: 15px !important;
  width: 100% !important;
  box-shadow: none !important;
  height: auto !important;
  line-height: 1.4 !important;
}
body.page-id-75 .nf-form-cont input::placeholder,
body.page-id-75 .nf-form-cont textarea::placeholder { color: #64748b !important; opacity: 1 !important; }
body.page-id-75 .nf-form-cont input:focus,
body.page-id-75 .nf-form-cont textarea:focus { border-color: #3b82f6 !important; outline: 0 !important; box-shadow: 0 0 0 3px rgba(59,130,246,0.15) !important; }
body.page-id-75 .nf-form-cont .listcheckbox-wrap label,
body.page-id-75 .nf-form-cont .checkbox-wrap label,
body.page-id-75 .nf-form-cont label { color: #cbd5e1 !important; font-size: 14px !important; }
body.page-id-75 .nf-form-cont fieldset legend, body.page-id-75 .nf-form-cont fieldset { color: #f8fafc !important; border: 0 !important; }
body.page-id-75 .nf-form-cont input[type="button"],
body.page-id-75 .nf-form-cont .submit-wrap input,
body.page-id-75 .nf-form-cont input[type="submit"] {
  background: #3b82f6 !important;
  color: #fff !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: 16px 28px !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  cursor: pointer !important;
  width: 100% !important;
  box-shadow: 0 0 20px rgba(59,130,246,0.5) !important;
  margin-top: 8px !important;
  height: auto !important;
  text-shadow: none !important;
}
body.page-id-75 .nf-form-cont input[type="button"]:hover,
body.page-id-75 .nf-form-cont .submit-wrap input:hover { background: #2563eb !important; }
/* Two-column layout for email + phone */
body.page-id-75 .nf-form-cont .one-half { width: 48% !important; float: left !important; margin-right: 4% !important; }
body.page-id-75 .nf-form-cont .one-half:not(.first) { margin-right: 0 !important; }
body.page-id-75 .nf-form-cont .nf-row::after { content: ''; display: table; clear: both; }
/* Spam/recaptcha visible */
body.page-id-75 .nf-form-cont .g-recaptcha { margin: 8px 0 !important; }
/* Description text under SMS authorization — lighten */
body.page-id-75 .nf-form-cont .nf-help-text, body.page-id-75 .nf-form-cont .nf-after-form-content { color: #94a3b8 !important; font-size: 12px !important; line-height: 1.5 !important; }

/* === end contact page overrides === */

/* === WCSEO: hide default single-post title === */
/* Body classes confirmed: single single-post postid-1556 single-format-standard */
body.single h1.entry-title,
body.single-post h1.entry-title,
body.single .entry-title,
body.single-post .entry-title,
body.single .post-meta,
body.single-post .post-meta,
body.single .et_post_meta_wrapper,
body.single-post .et_post_meta_wrapper { display: none !important; }

/* Also remove any default top padding/margin from the post container so the Divi hero butts up against the header */
body.single-post #main-content,
body.single-post #main-content > .container { padding-top: 0 !important; }
body.single-post .et_pb_post,
body.single .et_pb_post { padding-top: 0 !important; margin-top: 0 !important; }
body.single-post .et_pb_post > .entry-content { padding-top: 0 !important; }
/* === end hide single-post title === */



/* === WCSEO: SEO grid responsive === */
.wcs-seo-grid { display: grid !important; grid-template-columns: repeat(5, 1fr) !important; gap: 16px !important; }
@media (max-width: 992px) { .wcs-seo-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 600px) { .wcs-seo-grid { grid-template-columns: repeat(2, 1fr) !important; } }
/* === end SEO grid responsive === */

/* === WCSEO: SEO tile hover effects === */
a.wcs-seo-tile { transition: transform 0.3s ease, border-color 0.3s ease, background 0.3s ease, box-shadow 0.3s ease !important; }
a.wcs-seo-tile:hover {
  transform: translateY(-6px) !important;
  border-color: rgba(59,130,246,0.5) !important;
  background: #1a2540 !important;
  box-shadow: 0 16px 40px rgba(59,130,246,0.18) !important;
  text-decoration: none !important;
}
a.wcs-seo-tile .wcs-seo-tile-icon { transition: transform 0.3s ease !important; }
a.wcs-seo-tile:hover .wcs-seo-tile-icon { transform: scale(1.15) !important; }
/* === end SEO tile hover === */



/* === WCSEO: navbar + logo size === */
body #logo, body.et_fixed_nav #logo {
  max-height: 91px !important;
  width: auto !important;
}
body #main-header { padding-top: 13px !important; padding-bottom: 13px !important; }
body .container.et_menu_container { min-height: 91px !important; }
body.et-fixed-header #logo, body.et-fixed-header #main-header #logo { max-height: 91px !important; }
body.et-fixed-header #main-header { padding-top: 13px !important; padding-bottom: 13px !important; }
/* === end navbar + logo size === */

/* === WCSEO: SEO grid wpautop guard === */
.wcs-seo-grid p:empty, .wcs-seo-tile p:empty { display: none !important; }
.wcs-seo-tile p { display: contents !important; }
.wcs-seo-grid > p { display: none !important; }
/* === end SEO grid guard === */

/* === Reputation playbook: 5 cards in one row (desktop), responsive collapse === */
.wcs-playbook-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (max-width: 1100px) { .wcs-playbook-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 720px) { .wcs-playbook-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 480px) { .wcs-playbook-grid { grid-template-columns: 1fr; } }

/* === Marketing Built Around Real Business Growth: KPI icon pills === */
.wcs-kpi-pill { transition: all 0.2s ease; }
.wcs-kpi-pill:hover { background: rgba(59,130,246,0.15) !important; border-color: rgba(59,130,246,0.5) !important; transform: translateY(-2px); }

/* === AI Search 4-card grid: equal heights, even spacing, responsive === */
.wcs-aisearch-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
@media (max-width: 700px) { .wcs-aisearch-grid { grid-template-columns: 1fr !important; } }
