/* 1) Load REAL bold weights (so “bold” actually exists) */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Playfair+Display:wght@400;500;600;700;800;900&display=swap');

/* 2) FORCE the first big hero title on the homepage to be bold */
body.home .entry-content h1:first-of-type,
body.home .entry-content h2:first-of-type,
body.home .entry-content .wp-block-heading:first-of-type,
body.home .entry-content > :first-child .wp-block-heading,
body.home .entry-content > :first-child h1,
body.home .entry-content > :first-child h2,
body.home .entry-content > :first-child p:first-of-type {
font-family: "Playfair Display", Georgia, serif !important;
font-weight: 800 !important;
}

/* 3) Make sure the paragraph font is consistent too */
body {
font-family: "Inter", Arial, sans-serif !important;
}

.custom-logo-link img,
.site-logo-img img,
.wp-block-site-logo img {
filter: none !important;
-webkit-filter: none !important;
}
/* Remove Astra's logo container limits */
.ast-site-identity,
.site-branding,
.site-logo-img {
max-width: none !important;
width: auto !important;
}

/* Force the logo to a bigger width */
.ast-site-identity .custom-logo-link img,
.site-branding .custom-logo-link img,
.custom-logo-link img {
width: 260px !important;
max-width: 260px !important;
height: auto !important;
max-height: none !important;
}
/* Leadquery Section 1 */
#lq-growth-section{
  padding: 60px 0;
  background: #f5f7f6; /* CHANGE BACKGROUND COLOR HERE */
}

#lq-growth-section .lq-container{
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

#lq-growth-section .lq-grid{
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 32px;
  align-items: start;
}

#lq-growth-section .lq-title{
  margin: 0;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.12;
  font-weight: 800;
  color: #111827 !important; /* forces visibility */
}

#lq-growth-section .lq-text{
  margin: 0 0 14px;
  font-size: 18px;
  line-height: 1.65;
  color: #374151 !important; /* forces visibility */
}

#lq-growth-section .lq-text--muted{
  color: #6b7280 !important;
}

/* Mobile */
@media (max-width: 900px){
  #lq-growth-section .lq-grid{
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
background: #f5f7f6;
/* ===== Site-wide mobile readability + spacing ===== */
@media (max-width: 768px) {

  /* Prevent horizontal scrolling */
  html, body { overflow-x: hidden; }

  /* Make big headings not explode on mobile */
  h1 { font-size: clamp(28px, 7vw, 40px); line-height: 1.1; }
  h2 { font-size: clamp(24px, 6vw, 34px); line-height: 1.15; }
  h3 { font-size: clamp(20px, 5vw, 28px); line-height: 1.2; }

  /* Paragraphs: comfortable size */
  p { font-size: 16px; line-height: 1.7; }

  /* If your sections use big vertical padding, reduce it */
  section, .wp-block-group, .wp-block-cover, .wp-block-columns {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  /* If you have a fixed/sticky header, make sure content isn't hiding under it */
  body { padding-top: env(safe-area-inset-top); }

  /* Make columns stack on mobile */
  .wp-block-columns { flex-wrap: wrap !important; }
  .wp-block-column { flex-basis: 100% !important; }
}

/* ===== Site-wide mobile readability + spacing ===== */
@media (max-width: 768px) {

  /* Prevent horizontal scrolling */
  html, body { overflow-x: hidden; }

  /* Make big headings not explode on mobile */
  h1 { font-size: clamp(28px, 7vw, 40px); line-height: 1.1; }
  h2 { font-size: clamp(24px, 6vw, 34px); line-height: 1.15; }
  h3 { font-size: clamp(20px, 5vw, 28px); line-height: 1.2; }

  /* Paragraphs: comfortable size */
  p { font-size: 16px; line-height: 1.7; }

  /* If your sections use big vertical padding, reduce it */
  section, .wp-block-group, .wp-block-cover, .wp-block-columns {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  /* If you have a fixed/sticky header, make sure content isn't hiding under it */
  body { padding-top: env(safe-area-inset-top); }

  /* Make columns stack on mobile */
  .wp-block-columns { flex-wrap: wrap !important; }
  .wp-block-column { flex-basis: 100% !important; }
}
/* ===== Mobile header cleanup (prevents overlap) ===== */
@media (max-width: 768px) {

  /* Hide the header CTA button that crowds mobile */
  a[href*="quote"],
  .header-button,
  .wp-block-button__link {
    display: none !important;
  }

  /* Make the header/nav stop overlapping the page content */
  header, .site-header, .wp-site-blocks > header {
    position: relative !important;
  }

  /* If your header is sticky/fixed, remove that on mobile */
  .is-sticky, .sticky-header, .header-sticky {
    position: relative !important;
    top: auto !important;
  }

  /* Give the first section room under the header */
  body.home .wp-site-blocks,
  body.home main,
  body.home #content {
    padding-top: 20px !important;
  }
}
@media (max-width: 768px) {
  a, button {
    /* hides only the specific button by its text-like class or container if your theme labels it */
  }
  .menu .button,
  .menu-item.button,
  .header-cta,
  .nav-cta {
    display:none !important;
  }
}
/* Leadquery — Make Custom HTML sections match site typography */
.lq-section, .lq-section * {
  font-family: inherit !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

@media (max-width: 768px) {

  /* Mobile spacing: stops the "awkward giant block" feel */
  .lq-section {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }

  /* Headings scale nicely on phones */
  .lq-section h1 {
    font-size: 34px !important;
    line-height: 1.12 !important;
    margin-bottom: 14px !important;
  }
  .lq-section h2 {
    font-size: 30px !important;
    line-height: 1.15 !important;
    margin-bottom: 14px !important;
  }

  /* Paragraphs: readable + not too wide */
  .lq-section p {
    font-size: 16px !important;
    line-height: 1.7 !important;
    margin-bottom: 14px !important;
    max-width: 100% !important;
  }

  /* If your section uses big desktop padding (like 220px), override it on mobile */
  .lq-section[style*="padding:220px"] {
    padding-top: 110px !important;
  }
}
* --- LeadQuery: mobile spacing + consistent fonts (Astra-friendly) --- */

/* 1) Fix the BIG empty space + font mismatch on the first section (mobile only) */
@media (max-width: 768px) {

/* Reduce the top padding/space on that first section */
.lq-hero-mobilefix{
padding-top: 18px !important;
padding-bottom: 26px !important;
}

/* Kill extra margins that usually create the “too much space” look */
.lq-hero-mobilefix h1,
.lq-hero-mobilefix h2,
.lq-hero-mobilefix h3{
margin-top: 0 !important;
margin-bottom: 14px !important;
}

.lq-hero-mobilefix p{
margin-top: 0 !important;
}

/* Force the same font system Astra uses site-wide */
.lq-hero-mobilefix,
.lq-hero-mobilefix p{
font-family: var(--ast-global-font-family, inherit) !important;
}

.lq-hero-mobilefix h1,
.lq-hero-mobilefix h2,
.lq-hero-mobilefix h3{
font-family: var(--ast-global-heading-font-family, var(--ast-global-font-family, inherit)) !important;
letter-spacing: normal !important;
}

/* Make text sizing feel like your other sections */
.lq-hero-mobilefix h1,
.lq-hero-mobilefix h2{
font-size: clamp(28px, 7vw, 40px) !important;
line-height: 1.1 !important;
}

.lq-hero-mobilefix p{
font-size: 16px !important;
line-height: 1.55 !important;
}
}

/* 2) Optional: keep fonts consistent on the next 2 sections too */
.lq-section-2, .lq-section-2 p,
.lq-section-3, .lq-section-3 p{
font-family: var(--ast-global-font-family, inherit) !important;
}
.lq-section-2 h1, .lq-section-2 h2, .lq-section-2 h3,
.lq-section-3 h1, .lq-section-3 h2, .lq-section-3 h3{
font-family: var(--ast-global-heading-font-family, var(--ast-global-font-family, inherit)) !important;
}
/* Mobile fix: reduce huge top spacing + make fonts consistent (Astra) */
@media (max-width: 768px){

/* 1) Reduce the giant top gap that often comes from Astra containers */
.home .site-content,
.home .ast-container,
.home .entry-content{
padding-top: 0 !important;
margin-top: 0 !important;
}

/* 2) Tighten first section spacing (common “hero” containers) */
.home .wp-block-cover,
.home .wp-block-group,
.home .wp-block-group__inner-container{
margin-top: 0 !important;
}

/* 3) Force consistent fonts across headings + paragraphs on Home */
.home h1, .home h2, .home h3, .home p, .home li{
font-family: var(--ast-global-font-family, inherit) !important;
}

/* 4) Make headings/paragraphs feel like the other sections */
.home h1, .home h2{
line-height: 1.12 !important;
margin-top: 0 !important;
margin-bottom: 14px !important;
}

.home p{
font-size: 16px !important;
line-height: 1.55 !important;
margin-top: 0 !important;
}
}
/* MOBILE ONLY: make the first hero section match the site fonts + remove extra top space */
@media (max-width: 768px){

/* 1) Fix the font mismatch on the FIRST section title */
.home h1,
.home h2,
.home h3 {
font-family: var(--ast-global-heading-font-family) !important;
}

/* 2) Tighten the top spacing on the FIRST section */
.home .wp-block-cover:first-of-type,
.home .wp-block-group:first-of-type,
.home .wp-block-uagb-container:first-of-type {
padding-top: 20px !important;
margin-top: 0 !important;
}

/* 3) Make that first hero headline size behave better on phones */
.home .wp-block-cover:first-of-type h1,
.home .wp-block-group:first-of-type h1,
.home .wp-block-uagb-container:first-of-type h1 {
font-size: 34px !important;
line-height: 1.15 !important;
letter-spacing: 0 !important;
}
}
/* MOBILE ONLY — force the FIRST hero headline to use the SAME heading font */
@media (max-width: 768px){

/* first big headline (whether it's a P or a heading) */
.home .wp-block-cover:first-of-type .wp-block-cover__inner-container > :first-child{
font-family: var(--ast-global-heading-font-family) !important;
font-weight: 700 !important;
letter-spacing: 0 !important;
}

/* make sure it stays sized like a headline on phones */
.home .wp-block-cover:first-of-type .wp-block-cover__inner-container > :first-child{
font-size: 34px !important;
line-height: 1.15 !important;
margin-top: 0 !important;
}

/* remove extra top space above that first section */
.home .wp-block-cover:first-of-type{
margin-top: 0 !important;
padding-top: 20px !important;
}
}
/* Force the FIRST homepage hero section to use the same font on desktop + mobile */
.home .wp-block-cover:first-of-type,
.home .wp-block-cover:first-of-type * {
font-family: var(--ast-global-heading-font-family, var(--ast-global-font-family, inherit)) !important;
}

/* If your hero is not a Cover block, also catch common containers */
.home .wp-block-group:first-of-type,
.home .wp-block-group:first-of-type * ,
.home .wp-block-uagb-container:first-of-type,
.home .wp-block-uagb-container:first-of-type * {
font-family: var(--ast-global-heading-font-family, var(--ast-global-font-family, inherit)) !important;
}
/* HOME: force the FIRST section ("Never miss...") to use the same font as the rest of the site */
body.home .entry-content > *:first-child,
body.home .entry-content > *:first-child *{
font-family: var(--ast-global-font-family) !important;
}

/* Make the first section heading weight match your other sections better */
body.home .entry-content > *:first-child h1,
body.home .entry-content > *:first-child h2,
body.home .entry-content > *:first-child h3{
font-weight: 800 !important;
}

/* Mobile: remove the extra dead space above that first section */
@media (max-width: 768px){
body.home .entry-content > *:first-child{
margin-top: 0 !important;
padding-top: 18px !important;
}
body.home .entry-content > *:first-child .wp-block-cover__inner-container,
body.home .entry-content > *:first-child .uagb-section__inner-wrap,
body.home .entry-content > *:first-child .uagb-container-inner-blocks-wrap{
padding-top: 18px !important;
}
}
/* HOME: make only the first line ("Never miss...") bold */
body.home .entry-content > *:first-child h1,
body.home .entry-content > *:first-child h2,
body.home .entry-content > *:first-child h3{
font-weight: 800 !important;
}

/* If that headline is NOT an H1/H2/H3 and is just a paragraph, this catches it too */
body.home .entry-content > *:first-child p:first-of-type{
font-weight: 800 !important;
}
/* =========================
LeadQuery – Global Fonts
========================= */

/* 1) Force consistent fonts site-wide */
body {
font-family: "Inter", Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading {
font-family: "Playfair Display", Georgia, serif !important;
font-weight: 700 !important;
letter-spacing: 0 !important;
}

/* 2) Normalize spacing so headings don’t create giant gaps */
h1, h2, h3, h4, h5, h6,
.wp-block-heading {
margin-top: 0 !important;
margin-bottom: 14px !important;
line-height: 1.05 !important;
}

p, .wp-block-paragraph {
margin-top: 0 !important;
margin-bottom: 16px !important;
line-height: 1.5 !important;
}

/* =========================
Home hero – fix top spacing
========================= */

/* Reduce “too much space at top” on homepage */
body.home .entry-content,
body.home .site-content,
body.home .site-main {
padding-top: 0 !important;
}

/* Tighten the first block/section spacing on homepage */
body.home .entry-content > :first-child {
margin-top: 0 !important;
padding-top: 24px !important;
}

/* If the hero is inside a Group/Container, tighten its padding */
body.home .wp-block-group:first-of-type,
body.home .wp-block-cover:first-of-type {
padding-top: 24px !important;
padding-bottom: 24px !important;
}

/* Mobile tweaks */
@media (max-width: 768px) {
body.home .entry-content > :first-child {
padding-top: 14px !important;
}

h1, .wp-block-heading {
line-height: 1.08 !important;
margin-bottom: 12px !important;
}
}
:root{
--lq-body-font: "Inter", Arial, sans-serif;
--lq-heading-font: "Playfair Display", Georgia, serif;
}

html, body,
.site, .site-content,
.entry-content, .wp-site-blocks,
p, li, a, span, div, label, input, textarea, button {
font-family: var(--lq-body-font) !important;
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading,
.entry-title {
font-family: var(--lq-heading-font) !important;
font-weight: 700 !important;
line-height: 1.12 !important;
}

p, ul, ol {
margin-top: 0 !important;
margin-bottom: 16px !important;
}

h1, h2, h3, h4, h5, h6,
.wp-block-heading {
margin-top: 0 !important;
margin-bottom: 14px !important;
}

.wp-block-group,
.wp-block-cover,
section {
padding-top: clamp(28px, 4vw, 56px) !important;
padding-bottom: clamp(28px, 4vw, 56px) !important;
}

@media (max-width: 768px){
.wp-block-cover,
.wp-block-group {
padding-top: 28px !important;
padding-bottom: 28px !important;
}
}
/* Mobile polish */
@media (max-width: 768px){

/* Prevent “giant headline” and awkward wraps */
h1, .wp-block-heading h1, .entry-content h1 {
font-size: clamp(30px, 7.5vw, 42px) !important;
line-height: 1.08 !important;
letter-spacing: -0.3px !important;
}
h2, .wp-block-heading h2, .entry-content h2 {
font-size: clamp(24px, 6.2vw, 34px) !important;
line-height: 1.12 !important;
}

/* Make paragraph text easier to read */
p, li {
font-size: 16px !important;
line-height: 1.55 !important;
}

/* Keep text from stretching edge-to-edge */
.entry-content,
.wp-site-blocks,
.wp-block-group__inner-container,
.wp-block-cover__inner-container {
padding-left: 18px !important;
padding-right: 18px !important;
}

/* Reduce “random huge gaps” between stacked sections */
.wp-block-group,
.wp-block-cover,
section {
padding-top: 22px !important;
padding-bottom: 22px !important;
}

/* If your hero has too much blank space at the top */
.wp-block-cover {
min-height: auto !important;
}
}
@media (max-width: 768px){
.tidio-chat-button, #tidio-chat, .tidio-chat {
transform: scale(0.92);
transform-origin: bottom right;
}
}
@media (max-width: 768px){
h1, h2, h3 {
hyphens: none !important;
overflow-wrap: normal !important;
word-break: normal !important;
}
}
/* Reduce mobile header height + logo size (Astra-friendly) */
@media (max-width: 768px) {
.main-header-bar {
padding-top: 8px !important;
padding-bottom: 8px !important;
min-height: 0 !important;
}

.custom-logo-link img,
.site-branding img {
max-height: 60px !important; /* adjust 50–70 if you want */
width: auto !important;
}
}
/* Make the top "Never..." hero align full-width like the "Growth..." section on mobile */
@media (max-width: 768px) {
.lq-hero {
width: 100% !important;
max-width: none !important;
margin-left: 0 !important;
margin-right: 0 !important;
}

/* If the theme adds inner padding that creates the “boxed” look */
.lq-hero .wp-block-group__inner-container,
.lq-hero .wp-block-cover__inner-container,
.lq-hero .wp-block-columns,
.lq-hero .wp-block-column {
max-width: none !important;
margin-left: 0 !important;
margin-right: 0 !important;
}
}
@media (max-width: 768px){
/* remove top space only on mobile */
.wp-site-blocks > *:first-child,
.site-content > *:first-child{
margin-top: 0 !important;
padding-top: 0 !important;
}
/* tighten the About section block */
.wp-block-group, .wp-block-cover, .wp-block-columns{
padding-top: 0 !important;
}
}
/* MOBILE: make the "Never..." hero full-width like the "Growth..." section */
@media (max-width: 768px){
.lq-hero{
width: 100% !important;
max-width: 100% !important;
margin-left: 0 !important;
margin-right: 0 !important;
}

/* If the theme is forcing a boxed inner width, remove it */
.lq-hero .wp-block-group__inner-container,
.lq-hero .wp-block-cover__inner-container{
max-width: 100% !important;
width: 100% !important;
}
}
/* MOBILE: make the "Never..." section full-width like the sections below */
@media (max-width: 768px){
.lq-hero{
width: 100vw !important;
max-width: 100vw !important;
margin-left: calc(50% - 50vw) !important;
margin-right: calc(50% - 50vw) !important;
padding-left: 22px !important;
padding-right: 22px !important;
box-sizing: border-box !important;
}
}
@media (max-width: 782px){
.about-hero{
padding-top: 24px !important;
padding-bottom: 24px !important;
margin-top: 0 !important;
}
}

/* Mobile: align the "Never miss..." section like Growth */
@media (max-width: 782px){
.hero-never{
padding-top: 24px !important;
padding-bottom: 24px !important;
}
.hero-never *{
text-align: left !important;
}
.hero-never{
padding-left: 22px !important;
padding-right: 22px !important;
}
}
/* Hide the default WordPress page title on the Contact page */
body.page-id-1418 .entry-title,
body.page-id-1418 h1.wp-block-post-title {
display: none !important;
}
/* Make the Contact page full-width and remove theme padding */
body.page-id-1418 .site-content,
body.page-id-1418 .content-area,
body.page-id-1418 .entry-content {
padding: 0 !important;
margin: 0 !important;
max-width: 100% !important;
}

/* Your custom section styling */
body.page-id-1418 .lq-contact{
background: linear-gradient(180deg, #14532d 0%, #166534 100%) !important;
color: #fff !important;
padding: 32px 18px 40px !important; /* less empty space */
}

body.page-id-1418 .lq-wrap{
max-width: 860px !important;
margin: 0 auto !important;
}

body.page-id-1418 .lq-title{
font-size: 44px !important; /* desktop size */
line-height: 1.08 !important;
margin: 0 0 18px 0 !important;
text-align: center !important;
}

body.page-id-1418 .lq-card{
background: rgba(255,255,255,0.10) !important;
border: 1px solid rgba(255,255,255,0.18) !important;
border-radius: 18px !important;
padding: 18px 18px 16px !important;
}

body.page-id-1418 .lq-card p{
margin: 0 0 12px 0 !important;
font-size: 16px !important;
line-height: 1.5 !important;
}

body.page-id-1418 .lq-card a{
color: #fff !important;
text-decoration: underline !important;
text-underline-offset: 3px !important;
}

body.page-id-1418 .lq-cta{
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
width: 100% !important;
margin-top: 10px !important;
padding: 14px 16px !important;
border-radius: 14px !important;
background: rgba(255,255,255,0.16) !important;
border: 1px solid rgba(255,255,255,0.22) !important;
color: #fff !important;
text-decoration: none !important;
font-weight: 700 !important;
}

/* Mobile sizing */
@media (max-width: 768px){
body.page-id-1418 .lq-title{ font-size: 32px !important; }
}
/* CONTACT page (post=1418): hide the big automatic page title */
body.page-id-1418 .entry-title,
body.page-id-1418 h1.entry-title,
body.page-id-1418 .wp-block-post-title,
body.page-id-1418 header.entry-header {
display: none !important;
}

/* Remove the extra top spacing the theme adds above the content */
body.page-id-1418 .site-content,
body.page-id-1418 .content-area,
body.page-id-1418 .entry-content {
padding-top: 0 !important;
margin-top: 0 !important;
}
body.page-id-1418 .entry-content > *:first-child{
margin-top: 0 !important;
}
