/*
 Theme Name:     WildcatSEO
 Author:         Wildcat SEO
 Author URI:     https://wildcatseo.com
 Template:       Divi
 Version:        1.01
 Description:   A Child Theme built using the elegantmarketplace.com Child theme maker
Developed by Andrew Palmer for Elegant Marketplace www.elegantmarketplace.com Free to use and duplicate as many times as you like
 Wordpress Version: 5.4.6
*/


/* ----------- PUT YOUR CUSTOM CSS BELOW THIS LINE -- DO NOT EDIT ABOVE THIS LINE --------------------------- */

/* =========================================================
   Trace Digital Marketing — homepage styling (tdm-*)
   Edit text/images in the Divi Builder; edit the look here.
   ========================================================= */

:root{
  --tdm-navy:#0B1B3B;
  --tdm-navy-2:#08152E;
  --tdm-accent:#1FC8B0;
  --tdm-blue:#5B8DEF;
  --tdm-ink:#0E2038;
  --tdm-panel:#F3F6F9;
  --tdm-line:#E4E9EF;
  --tdm-muted:#5B6B76;
}

/* Hide the default page title on the front page */
.home .et_pb_title_container,.page-id-20 .et_pb_title_container,
.home h1.entry-title,.page-id-20 h1.entry-title{ display:none; }

/* ---------- Headings / eyebrows / lead ---------- */
.tdm-eyebrow{ text-transform:uppercase; letter-spacing:2.5px; font-size:12px; font-weight:700; color:var(--tdm-accent); margin:0 0 14px; }
.tdm-head h2,.tdm-hero-text h1{ line-height:1.12; margin:0 0 18px; font-weight:700; color:var(--tdm-ink); }
.tdm-head em,.tdm-hero-text em{ font-style:normal; color:var(--tdm-accent); }
.tdm-blue{ color:var(--tdm-blue); }
.tdm-lead{ color:var(--tdm-muted); font-size:18px; line-height:1.6; max-width:760px; }

/* ---------- Dark sections ---------- */
.tdm-dark h1,.tdm-dark h2,.tdm-dark h3,.tdm-dark h4,.tdm-dark p,.tdm-dark li{ color:#ffffff; }
.tdm-dark .tdm-head h2{ color:#fff; }
.tdm-dark .tdm-lead{ color:rgba(255,255,255,.72); }
.tdm-dark .tdm-eyebrow{ color:#5FE3D0; }

/* ---------- Buttons ---------- */
.tdm-btn .et_pb_button,.tdm-btn .et_pb_button:hover{ border-radius:8px; padding:14px 26px !important; font-size:15px; font-weight:700; transition:all .2s ease; }
.tdm-btn .et_pb_button:after,.tdm-btn .et_pb_button:before{ display:none !important; }
.tdm-btn-accent .et_pb_button{ background:var(--tdm-accent) !important; color:#062226 !important; border:2px solid var(--tdm-accent) !important; }
.tdm-btn-accent .et_pb_button:hover{ background:#17b3a0 !important; border-color:#17b3a0 !important; }
.tdm-btn-ghost .et_pb_button{ background:transparent !important; color:#fff !important; border:2px solid rgba(255,255,255,.35) !important; }
.tdm-btn-ghost .et_pb_button:hover{ border-color:#fff !important; }
.tdm-btn-dark .et_pb_button{ background:var(--tdm-navy) !important; color:#fff !important; border:2px solid var(--tdm-navy) !important; }
.tdm-btn-dark .et_pb_button:hover{ background:#12294f !important; }

/* ---------- Hero split ---------- */
.tdm-hero-text{ text-align:left; }
.tdm-hero-text h1{ font-size:clamp(32px,4.4vw,52px); color:#fff; }
.tdm-hero-text .tdm-lead{ color:rgba(255,255,255,.8); }
.tdm-hero .et_pb_button_module_wrapper{ display:inline-block; margin:6px 10px 0 0; }
.tdm-pills p{ display:flex; flex-wrap:wrap; gap:10px; margin:24px 0 0; }
.tdm-pills span{ border:1px solid rgba(255,255,255,.22); color:rgba(255,255,255,.85); padding:6px 14px; border-radius:999px; font-size:12.5px; }

/* Hero chart card */
.tdm-hcard{ height:100%; }
.tdm-hc{ background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:22px; }
.tdm-hc-top{ display:flex; justify-content:space-between; align-items:center; }
.tdm-hc-tag{ text-transform:uppercase; letter-spacing:2px; font-size:11px; font-weight:700; color:#5FE3D0; }
.tdm-hc-live{ font-size:10px; letter-spacing:1.5px; text-transform:uppercase; color:rgba(255,255,255,.6); border:1px solid rgba(255,255,255,.2); border-radius:999px; padding:3px 10px; }
.tdm-hc-title{ color:#fff !important; font-size:16px; font-weight:600; margin:12px 0 8px !important; }
.tdm-hc-chart{ width:100%; height:120px; display:block; }
.tdm-hc-legend{ list-style:none; margin:14px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:6px 16px; }
.tdm-hc-legend li{ display:flex; justify-content:space-between; font-size:12px; border-bottom:1px solid rgba(255,255,255,.08); padding:5px 0; }
.tdm-hc-legend span{ color:rgba(255,255,255,.85); }
.tdm-hc-legend em{ font-style:normal; color:rgba(255,255,255,.5); }
.tdm-hc-foot{ display:flex; gap:16px; margin-top:14px; }
.tdm-hc-foot div{ flex:1; background:rgba(255,255,255,.04); border-radius:10px; padding:10px 12px; font-size:12px; color:rgba(255,255,255,.75); }
.tdm-hc-foot b{ display:block; color:#5FE3D0; font-size:10px; text-transform:uppercase; letter-spacing:1px; margin-bottom:3px; font-weight:700; }

/* Hero steps row */
.tdm-herosteps{ margin-top:40px !important; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); }
.tdm-mini.et_pb_blurb{ background:transparent; text-align:left; padding:0; }
.tdm-mini .et_pb_module_header{ font-size:17px; color:#fff; margin:0; }
.tdm-mini .et_pb_module_header:before{ display:block; font-size:12px; font-weight:700; letter-spacing:1px; color:#5FE3D0; margin-bottom:8px; }

/* ---------- Number system ---------- */
.tdm-card .et_pb_module_header:before,.tdm-srow .et_pb_module_header:before{ display:block; font-size:13px; font-weight:700; letter-spacing:1px; color:var(--tdm-accent); margin-bottom:10px; }
.tdm-n1 .et_pb_module_header:before{ content:"01"; }
.tdm-n2 .et_pb_module_header:before{ content:"02"; }
.tdm-n3 .et_pb_module_header:before{ content:"03"; }
.tdm-n4 .et_pb_module_header:before{ content:"04"; }
.tdm-n5 .et_pb_module_header:before{ content:"05"; }
.tdm-n6 .et_pb_module_header:before{ content:"06"; }

/* ---------- Figures ---------- */
.tdm-figure img{ border-radius:16px; width:100%; }
.tdm-figure{ margin-top:26px; }

/* ---------- Cards (blurbs) ---------- */
.tdm-card.et_pb_blurb{ background:#fff; border:1px solid var(--tdm-line); border-radius:16px; padding:28px 26px; height:100%; text-align:left; }
.tdm-dark .tdm-card.et_pb_blurb{ background:rgba(255,255,255,.04); border-color:rgba(255,255,255,.14); }
.tdm-card .et_pb_blurb_content{ max-width:100%; }
.tdm-card .et_pb_module_header{ font-size:20px; font-weight:700; margin:0 0 10px; color:var(--tdm-ink); }
.tdm-dark .tdm-card .et_pb_module_header{ color:#fff; }
.tdm-card .et_pb_blurb_description p{ color:var(--tdm-muted); font-size:15.5px; line-height:1.6; }
.tdm-dark .tdm-card .et_pb_blurb_description p{ color:rgba(255,255,255,.72); }

/* Service tag pills */
.tdm-tags{ display:flex; flex-wrap:wrap; gap:8px; margin:14px 0 0; }
.tdm-tags span{ background:var(--tdm-panel); color:var(--tdm-ink); border:1px solid var(--tdm-line); padding:5px 12px; border-radius:999px; font-size:12.5px; }

/* ---------- Services horizontal rows ---------- */
.tdm-srow.et_pb_blurb{ background:#fff; border:1px solid var(--tdm-line); border-radius:14px; padding:24px 28px; margin-bottom:16px; text-align:left; }
.tdm-srow .et_pb_blurb_content{ max-width:100%; }
.tdm-srow .et_pb_blurb_container{ display:grid; grid-template-columns:240px 1fr; gap:8px 30px; align-items:start; }
.tdm-srow .et_pb_module_header{ font-size:22px; font-weight:700; color:var(--tdm-ink); margin:0; grid-row:1 / span 2; }
.tdm-srow .et_pb_blurb_description{ grid-column:2; }
.tdm-srow .et_pb_blurb_description p{ color:var(--tdm-muted); font-size:15.5px; line-height:1.6; margin:0 0 8px; }

/* ---------- TRACE timeline ---------- */
.tdm-trace5{ position:relative; }
.tdm-trace5:before{ content:""; position:absolute; top:28px; left:12%; right:12%; height:2px; background:rgba(255,255,255,.18); }
.tdm-trace.et_pb_blurb{ background:transparent; text-align:center; padding:0 8px; }
.tdm-trace .et_pb_blurb_container{ position:relative; }
.tdm-trace .et_pb_module_header{ color:#fff; font-size:18px; margin:14px 0 8px; }
.tdm-trace .et_pb_blurb_description p{ color:rgba(255,255,255,.7); font-size:13.5px; line-height:1.55; }
.tdm-trace .et_pb_blurb_container:before{ display:flex; align-items:center; justify-content:center; width:56px; height:56px; margin:0 auto; border-radius:50%; border:2px solid var(--tdm-accent); background:var(--tdm-navy); color:#fff; font-size:22px; font-weight:800; position:relative; z-index:1; }
.tdm-lT .et_pb_blurb_container:before{ content:"T"; }
.tdm-lR .et_pb_blurb_container:before{ content:"R"; }
.tdm-lA .et_pb_blurb_container:before{ content:"A"; }
.tdm-lC .et_pb_blurb_container:before{ content:"C"; }
.tdm-lE .et_pb_blurb_container:before{ content:"E"; }

/* ---------- Industry cards ---------- */
.tdm-icard .et_pb_blurb_description p{ margin:0 0 12px; color:var(--tdm-ink); font-size:15px; }
.tdm-k{ display:block; text-transform:uppercase; letter-spacing:1.4px; font-size:11px; font-weight:700; color:var(--tdm-muted); margin-bottom:2px; }
.tdm-dark .tdm-k{ color:#5FE3D0; }

/* ---------- Case study cards + charts ---------- */
.tdm-bars{ margin-bottom:16px; }
.tdm-bars svg{ width:100%; height:90px; display:block; }
.tdm-bars-lg svg{ height:210px; }
.tdm-case .tdm-badge{ display:inline-block; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.7); font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; padding:5px 10px; border-radius:6px; margin:0 0 12px; }
.tdm-case .et_pb_module_header{ margin-top:6px; }

/* ---------- Reporting chart column ---------- */
.tdm-rchart{ height:100%; display:flex; align-items:center; }
.tdm-rchart .tdm-bars{ width:100%; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:24px; margin:0; }

/* ---------- Engagement steps ---------- */
.tdm-scard .et_pb_module_header{ font-size:19px; }
.tdm-scard .et_pb_blurb_description p{ font-size:15px; }

/* ---------- Insight cards ---------- */
.tdm-note .et_pb_module_header{ font-size:18px; }
.tdm-feature-note.et_pb_blurb{ background:#fff; border:1px solid var(--tdm-line); border-left:4px solid var(--tdm-accent); border-radius:14px; padding:26px; margin-top:24px; text-align:left; }
.tdm-feature-note .et_pb_module_header{ font-size:22px; color:var(--tdm-ink); }

/* ---------- Production panels ---------- */
.tdm-panel{ background:#fff; border:1px solid var(--tdm-line); border-radius:16px; padding:26px 24px; height:100%; }
.tdm-panel-head{ font-size:14px; color:var(--tdm-ink); margin:0 0 16px; padding-bottom:14px; border-bottom:1px solid var(--tdm-line); }
.tdm-panel-head span{ display:block; text-transform:uppercase; letter-spacing:1.4px; font-size:11px; color:var(--tdm-accent); font-weight:700; margin-bottom:4px; }
.tdm-check{ list-style:none; margin:0; padding:0; }
.tdm-check li{ display:flex; justify-content:space-between; align-items:center; gap:12px; padding:9px 0; border-bottom:1px solid var(--tdm-panel); color:var(--tdm-ink); font-size:15px; }
.tdm-check li:before{ content:"\25CB"; color:var(--tdm-muted); margin-right:8px; }
.tdm-check li.done:before{ content:"\2713"; color:var(--tdm-accent); font-weight:700; }
.tdm-check li span{ font-size:12px; color:var(--tdm-muted); white-space:nowrap; }
.tdm-check li.done span{ color:var(--tdm-accent); }
.tdm-metrics{ list-style:none; margin:0; padding:0; }
.tdm-metrics li{ display:flex; justify-content:space-between; align-items:baseline; gap:8px; padding:14px 0; border-bottom:1px solid var(--tdm-panel); color:var(--tdm-ink); font-size:15px; }
.tdm-metrics li strong{ color:var(--tdm-accent); }
.tdm-metrics li span{ font-size:12px; color:var(--tdm-muted); }

/* ---------- Reporting bullets ---------- */
.tdm-bullets{ margin:18px 0 0; padding:0; list-style:none; max-width:640px; }
.tdm-bullets li{ padding:10px 0 10px 28px; position:relative; border-bottom:1px solid rgba(255,255,255,.12); }
.tdm-bullets li:before{ content:"\2192"; position:absolute; left:0; color:var(--tdm-accent); }

/* ---------- Strategy review / form ---------- */
.tdm-next{ margin-top:22px; }
.tdm-next ol{ margin:10px 0 0; padding-left:18px; color:rgba(255,255,255,.8); }
.tdm-next li{ margin:6px 0; }
.tdm-form-head h3{ color:#fff; font-size:24px; margin:6px 0 0; }
.tdm-form .et_pb_contact_field{ padding:0 0 14px !important; }
.tdm-form .et_pb_contact_field input,.tdm-form .et_pb_contact_field textarea,.tdm-form .et_pb_contact_field select{ background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.2) !important; color:#fff !important; border-radius:8px; padding:12px 14px; }
.tdm-form .et_pb_contact_field input::placeholder,.tdm-form .et_pb_contact_field textarea::placeholder{ color:rgba(255,255,255,.5) !important; }
.tdm-form .et_contact_bottom_container{ text-align:left; }
.tdm-form .et_pb_contact_submit{ border-radius:8px !important; font-weight:700 !important; }
.tdm-fine p{ font-size:12.5px; color:rgba(255,255,255,.55); margin-top:10px; }

/* ---------- Footer ---------- */
.tdm-foot{ text-align:left; }
.tdm-footlogo img{ width:180px; height:auto; margin-bottom:8px; }
.tdm-foot-text .tdm-lead{ color:rgba(255,255,255,.7); max-width:640px; }
.tdm-footcontact a{ color:#5FE3D0; text-decoration:none; }
.tdm-copy{ font-size:13px; color:rgba(255,255,255,.45); margin-top:10px; }

/* ---------- Responsive ---------- */
@media (max-width:980px){
  .tdm-trace5:before{ display:none; }
  .tdm-srow .et_pb_blurb_container{ grid-template-columns:1fr; gap:8px; }
  .tdm-srow .et_pb_module_header{ grid-row:auto; }
  .tdm-hc-legend{ grid-template-columns:1fr; }
}
