/* Global theme alignment with homepage */
:root {
  --bp-primary:#051334;
  --bp-secondary:#304165;
  --bp-accent:#fb006f;
  --bp-surface:#f3f3f3;
  --bp-font:'Inter','Helvetica Neue',Arial,sans-serif;
}

body {
  background:#ffffff;
  color:var(--bp-primary);
  font-family:var(--bp-font);
  line-height:1.6;
}

a {
  color:var(--bp-accent);
  text-decoration:none;
}

a:hover,
a:focus {
  color:#d3005c;
  text-decoration:underline;
}

h1,h2,h3,h4,h5,h6,
.fusion-title h1,
.fusion-title h2,
.fusion-title h3,
.fusion-title h4,
.fusion-title h5,
.fusion-title h6 {
  color:var(--bp-primary);
  letter-spacing:-0.01em;
}

.fusion-text,
.fusion-builder-row p {
  color:var(--bp-secondary);
}

.fusion-button,
.canvas-contact,
.fusion-button-default {
  background:var(--bp-accent) !important;
  border-color:var(--bp-accent) !important;
  color:#ffffff !important;
  transition:transform .12s ease,box-shadow .12s ease;
}

.fusion-button:hover,
.canvas-contact:hover,
.fusion-button-default:hover {
  transform:translateY(-1px);
  box-shadow:0 10px 30px rgba(251,0,111,0.25);
}

.fusion-fullwidth {
  background-color:#ffffff;
}

.fusion-fullwidth[style*="--awb-background-color:#f3f3f3"],
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] {
  background-color:var(--bp-surface) !important;
}

.text-highlight {
  color:var(--bp-accent);
}

.fusion-breadcrumbs a,
.awb-menu__main-a,
.awb-menu__sub-a {
  color:var(--bp-primary);
}

.awb-menu__main-a:hover,
.awb-menu__sub-a:hover {
  color:var(--bp-accent);
}

/* Header navigation: match new site look */
.fusion-tb-header .awb-menu__main-a {
  color: rgba(255, 255, 255, 0.92) !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em;
  position: relative;
}

.fusion-tb-header .awb-menu__main-a:hover {
  color: #ffffff !important;
}

.fusion-tb-header .awb-menu__main-a::after {
  content: "";
  position: absolute;
  left: 8px;
  right: 8px;
  bottom: 2px;
  height: 2px;
  border-radius: 999px;
  background: var(--bp-accent);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.15s ease;
}

.fusion-tb-header .awb-menu__main-li:hover > .awb-menu__main-a::after,
.fusion-tb-header .awb-menu__main-li.current-menu-item > .awb-menu__main-a::after,
.fusion-tb-header .awb-menu__main-li.current-menu-ancestor > .awb-menu__main-a::after {
  transform: scaleX(1);
}

.fusion-tb-header .awb-menu__sub-ul {
  background: rgba(11, 28, 72, 0.98) !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.45) !important;
  padding: 8px !important;
  overflow: hidden;
}

.fusion-tb-header .awb-menu__sub-li {
  margin: 0 !important;
}

.fusion-tb-header .awb-menu__sub-a {
  color: rgba(255, 255, 255, 0.92) !important;
  padding: 10px 12px !important;
  border-radius: 12px !important;
  font-weight: 600 !important;
}

.fusion-tb-header .awb-menu__sub-a:hover {
  color: #ffffff !important;
  background: rgba(251, 0, 111, 0.14) !important;
}

.fusion-tb-header .fusion-button,
.fusion-tb-header .canvas-contact,
.fusion-tb-header .fusion-button-default {
  border-radius: 999px !important;
  box-shadow: 0 14px 34px rgba(251, 0, 111, 0.22);
}

.fusion-tb-header .fusion-button:hover,
.fusion-tb-header .canvas-contact:hover,
.fusion-tb-header .fusion-button-default:hover {
  box-shadow: 0 18px 44px rgba(251, 0, 111, 0.28);
}

.fusion-checklist .fusion-li-item .fusion-li-icon {
  color:var(--bp-accent);
}

/* Card/section polish */
.fusion-column-wrapper,
.fusion-column-inner-bg {
  border-radius:12px;
  overflow:hidden;
}

.fusion-imageframe img {
  border-radius:8px;
}

/* Testimonial section with dark blue background and white margins */
.fusion-builder-row-14 {
  background-color: #051334 !important;
  margin-left: 60px !important;
  margin-right: 60px !important;
  margin-bottom: 60px !important;
  padding: 60px 0 !important;
  border-radius: 0 !important;
}

.fusion-builder-row-14 .fusion-builder-row {
  max-width: 100% !important;
}

.fusion-builder-row-14 .rev_slider_wrapper {
  background-color: #051334;
}

/* Ensure white background shows around the section */
body {
  background-color: #ffffff;
}

/* Ensure all content is visible - override any hiding rules */
/* Only override visibility/opacity, don't force display types */
.post-content,
#content,
#main,
.fusion-text,
.fusion-column-wrapper,
.fusion-builder-row,
.fusion-fullwidth {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Override any max-height or height:0 that might hide content */
.post-content,
#content,
#main,
.fusion-text,
.fusion-column-wrapper {
  max-height: none !important;
  min-height: auto !important;
  height: auto !important;
}

/* Ensure content isn't clipped by overflow:hidden on column wrappers */
.fusion-column-wrapper {
  overflow: visible !important;
}

/* Make sure text content is visible and has proper color */
.post-content p,
.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.post-content li,
.fusion-text p,
.fusion-text h1,
.fusion-text h2,
.fusion-text h3,
.fusion-text h4,
.fusion-text h5,
.fusion-text h6,
.fusion-text li {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Ensure headings are visible */
.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6,
.fusion-text h1,
.fusion-text h2,
.fusion-text h3,
.fusion-text h4,
.fusion-text h5,
.fusion-text h6,
.fusion-title h1,
.fusion-title h2,
.fusion-title h3,
.fusion-title h4,
.fusion-title h5,
.fusion-title h6 {
  visibility: visible !important;
  opacity: 1 !important;
  display: block !important;
}

/* Ensure paragraphs and lists are visible */
.post-content p,
.fusion-text p,
.post-content ul,
.post-content ol,
.post-content li,
.fusion-text ul,
.fusion-text ol,
.fusion-text li {
  visibility: visible !important;
  opacity: 1 !important;
}

/* Header fixes - keep blue background and prevent underlapping */
.fusion-tb-header {
  position: relative !important;
  z-index: 20051 !important;
}

/* Minimize header size for desktop devices */
@media (min-width: 1000px) {
  /* Keep header at fixed height - compensate for larger logo by removing padding */
  .fusion-tb-header .fusion-fullwidth {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    height: 66px !important; /* Fixed height to match original minimized header */
    max-height: 66px !important;
    overflow: visible !important;
  }
  
  /* Ensure header row fits within fixed height */
  .fusion-tb-header .fusion-builder-row {
    min-height: auto !important;
    height: 100% !important;
    align-items: center !important;
  }
  
  /* Make logo 20% bigger (103px) - preserve aspect ratio, header stays 66px */
  .fusion-tb-header .fusion-image-element img,
  .fusion-tb-header img[alt*="Digital Growth Studios"],
  .fusion-tb-header img[src*="DGSlogotrans"],
  .fusion-tb-header .wp-image-7642 {
    height: 103px !important; /* 20% bigger than 86px */
    max-height: 103px !important;
    width: auto !important;
    max-width: 103px !important; /* Square logo, so width = height */
    aspect-ratio: 1 / 1 !important; /* Force square aspect ratio */
    object-fit: contain !important;
    object-position: left center !important;
    image-rendering: -webkit-optimize-contrast !important;
    image-rendering: crisp-edges !important;
    image-rendering: auto !important;
  }
  
  /* Override any width/height attributes from HTML */
  .fusion-tb-header img[width],
  .fusion-tb-header img[height] {
    width: auto !important;
    height: 103px !important;
  }
  
  /* Prevent container from stretching the logo */
  .fusion-tb-header .fusion-image-element,
  .fusion-tb-header .fusion-column-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
  }
  
  .fusion-tb-header .fusion-image-element a {
    display: inline-block !important;
    line-height: 0 !important;
  }
  
  /* Reduce navigation font size and spacing */
  .fusion-tb-header .awb-menu,
  .fusion-tb-header .awb-menu__main-ul {
    font-size: 15px !important;
    gap: 30px !important;
    min-height: 32px !important;
  }
  
  .fusion-tb-header .awb-menu__main-a {
    font-size: 15px !important;
    padding: 6px 8px !important;
  }
  
  /* Reduce button padding */
  .fusion-tb-header .fusion-button,
  .fusion-tb-header .canvas-contact,
  .fusion-tb-header .fusion-button-default {
    padding: 8px 14px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
  
  /* Reduce column margins and spacing */
  .fusion-tb-header .fusion-layout-column {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  
  .fusion-tb-header .fusion-builder-row {
    align-items: center !important;
  }
  
  /* Reduce overall header height */
  .fusion-tb-header .fusion-column-wrapper {
    padding: 0 !important;
  }
}

.fusion-tb-header .fusion-fullwidth {
  background-color: #051334 !important;
  background: #051334 !important;
}

.fusion-tb-header .fusion-fullwidth,
.fusion-tb-header .fusion-builder-row,
.fusion-tb-header .fusion-layout-column,
.fusion-tb-header .fusion-column-wrapper {
  background-color: #051334 !important;
  background: #051334 !important;
}

/* Ensure header stays on top and content doesn't overlap */
.fusion-tb-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 20051 !important;
}

/* Add padding to main content to prevent underlapping */
main#main {
  position: relative !important;
  z-index: 1 !important;
}

.post-content {
  position: relative !important;
  z-index: 1 !important;
}

/* Ensure sections don't overlap header */
.fusion-fullwidth:not(.fusion-tb-header .fusion-fullwidth) {
  position: relative !important;
  z-index: 1 !important;
}

/* Ensure testimonial and content sections have backgrounds */
.rev_slider_wrapper,
.rs-module-wrap {
  background-color: #051334 !important;
  background: #051334 !important;
}

/* Ensure fusion-fullwidth sections with testimonials have dark blue background */
.fusion-fullwidth:has(.rev_slider_wrapper),
.fusion-fullwidth:has(rs-module-wrap),
.fusion-fullwidth:has(.testimonial) {
  background-color: #051334 !important;
}

/* Ensure sections with content but no explicit background get white background */
.fusion-fullwidth:not([style*="--awb-background-color"]):not([style*="background-color"]):not(.fusion-tb-header .fusion-fullwidth) {
  background-color: #ffffff !important;
}

/* Fix text color on white background sections - ensure dark text */
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h1,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h2,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h3,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h4,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h5,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] h6,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] p,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] li,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] .fusion-text,
.fusion-fullwidth[style*="--awb-background-color:#ffffff"] .fusion-title {
  color: #051334 !important;
}

.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] .fusion-text,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] .fusion-text,
.fusion-fullwidth[style*="--awb-background-color:#051334"] .fusion-text,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] .fusion-text,
.fusion-fullwidth[style*="background-color:#051334"] .fusion-text,
.fusion-fullwidth[style*="background-color:#0c1428"] .fusion-text {
  color: #ffffff !important;
}

.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h1,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h2,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h3,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h4,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h5,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] h6,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h1,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h2,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h3,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h4,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h5,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] h6,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h1,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h2,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h3,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h4,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h5,
.fusion-fullwidth[style*="--awb-background-color:#051334"] h6,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h1,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h2,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h3,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h4,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h5,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] h6 {
  color: #ffffff !important;
}

.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] p,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color5)"] li,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] p,
.fusion-fullwidth[style*="--awb-background-color:var(--awb-color7)"] li,
.fusion-fullwidth[style*="--awb-background-color:#051334"] p,
.fusion-fullwidth[style*="--awb-background-color:#051334"] li,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] p,
.fusion-fullwidth[style*="--awb-background-color:#0c1428"] li {
  color: #ffffff !important;
}
