/* Elementor-page-only CSS, gated to Elementor pages via the functions.php enqueue. */

.container, .container-fluid {
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
}

/* ===== POST IMPORT STYLING ===== */

#content > .container,
.e-con>.e-con-inner {
  width:100% !important;
  max-width:none !important;
}


.e-con>.e-con-inner > .e-child  > .e-child {
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  width: min(1180px, calc(100% - 36px));
}

.elementor h1, .elementor h2 {
    font-weight: 600 !important;
    text-transform: none !important;
}

/* === Transparent floating header === */

/* Make header bars transparent so the page shows through.
   .fixed is included: the theme still adds it on scroll, but the header is
   never sticky now, so it must stay transparent in that state too. */
header,
#headertop,
#headertop.fix,
#headertop.fixed {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-color: transparent !important;
}

#headertop .i2g-logo-subtitle {
    color: #ffffff !important;
}

#trigger .lines, #trigger .lines:before, #trigger .lines:after {
    background: #ffffff !important;
}

/* Float the bars over the page content (keeps internal layout intact) */
header {
  position: absolute !important;
  top: 100px !important;   /* sits below #headertop; adjust if needed */
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
}

/* Header overlays the hero and scrolls away with the page; it is never sticky.
   .fixed is included so the theme's scroll class stays inert. The `body` prefix
   outranks the sitewide "#headertop.fixed{position:static}" rule in style.css,
   which switches the header off on non-Elementor pages. top:auto cancels the
   parent theme's "#headertop.fixed{top:0}". */
body #headertop,
body #headertop.fix,
body #headertop.fixed {
  position: absolute !important;
  top: auto !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 99999 !important;
}

ul.topmenu>li>a.vbplogin {
    color: #101820 !important;
  font-weight: 600;
}

ul.topmenu>li:nth-child(1) {
    background-color: #d8b46a !important;
    border-radius: 50px;
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Make the dark header text white (nested elements keep their own styling) */
.i2g-logo-subtitle,
#menu-main-menu-1 > li > a,
header nav > ul > li > a,
header .fa-search,
header i.fa-search {
  color: #ffffff !important;
}

.open .pagesidebar {
    background-color: #242b33;
}

.pagesidebar .mobile_icons {
    background: transparent;
}

.sub-menu {
    background-color: #1e262e !important;
}

/*---- FOOTER ------*/

.minimal footer, .elementor-page.minimal footer {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* Elementor-scoped design system (moved from style.css 2026-06-20). */
/* --dja-* tokens live in style.css; referenced here via var(). Inert off Elementor pages. */

/* ===== SHARED PRIMITIVES (index = source of truth) ===== */

/* Eyebrow + kicker primitives + label <p> fix moved to style.css (globals) 2026-06-20. */

/* Section-title + section-lead primitives moved to style.css (globals) 2026-06-20. */

/* .dja-btn design + variants moved to style.css (globals). */

body.minimal .pusher #course_search_submit,
#buddypress .item-list-tabs .dir-search input[type=submit] {
  display:none !important;
}

/* removed an orphan closing brace here (consolidation artifact). */

/* AI-to-Elementor grid-chunking helpers (.hte-*); generic, survive dump deletion. */

.hte-chunked-grid {
  display: flex !important;
  flex-direction: column !important;
  grid-template-columns: unset !important;
  grid-template-rows: unset !important;
}

.hte-chunked-grid > .elementor-element > .elementor-element {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

.hte-grid-row-keep {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
}

/* v2 wrapper: rounds/clips the portrait photo, separate from its gradient frame. */
.elementor .dja-portrait-media {
  display: block !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}

/* Button fix: .dja-*btn pill stays on the widget wrapper; inner <a> = transparent click layer. */
/* Wrapper drops its padding so the pill hugs the inner <a> (the click area). */
.elementor .dja-btn:has(> .elementor-button) {
  padding: 0 !important;
}

/* Inner <a>: transparent full-size click layer carrying the padding. */
.elementor .dja-btn > .elementor-button {
  width: 100% !important;
  height: 100% !important;
  align-self: stretch !important;
  margin: 0 !important;
  padding: 14px 24px !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: inherit !important;
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
  text-decoration: none !important;
  min-height: inherit !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Keep inner <a> transparent in all states so no second pill appears on hover/focus. */
.elementor .dja-btn > .elementor-button:hover,
.elementor .dja-btn > .elementor-button:focus,
.elementor .dja-btn > .elementor-button:focus-visible,
.elementor .dja-btn > .elementor-button:active {
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: inherit !important;
}

/* .dja-boxed: re-box a native container via padding (min 1180px, 18px gutter, bg full-bleed). */
.e-con.dja-boxed > .e-con-inner {
  padding-inline: max(18px, calc((100% - 1180px) / 2)) !important;
}

/* home_2026-06-19 per-page dump (authoritative). */
.elementor-widget__width-780px{width:min(780px,100%);max-width:780px}
.elementor-widget__width-700px{width:min(700px,100%);max-width:700px}
.elementor-widget__width-740px{width:min(740px,100%);max-width:740px}
.elementor-widget__width-760px{width:min(760px,100%);max-width:760px}
.elementor-widget__width-930px{width:min(930px,100%);max-width:930px}
.elementor .dja-button-row{display:flex !important;flex-wrap:wrap !important;gap:14px !important}
.elementor a.dja-btn{display:inline-flex !important;justify-content:center !important;align-items:center !important;min-height:48px !important;padding:14px 24px !important;border-radius:999px !important;font-size:0.92rem !important;font-weight:800 !important;line-height:1 !important;text-decoration:none!important;transition:all 0.28s ease !important;border:1px solid transparent !important;cursor:pointer !important;width:fit-content !important;}
.elementor a.dja-btn.gold{background:linear-gradient(135deg,#d8b46a,#b98d38) !important;color:#101820!important;box-shadow:0 14px 32px rgba(216,180,106,0.24) !important}
.elementor a.dja-btn.gold:hover{transform:translateY(-2px) !important;box-shadow:0 18px 42px rgba(216,180,106,0.34) !important}
.elementor a.dja-btn.light-outline{color:#f7f1e6!important;border-color:rgba(247,241,230,0.36) !important;background-color:rgba(255,255,255,0.04) !important}
.elementor a.dja-btn.light-outline:hover{border-color:#d8b46a !important;background-color:rgba(216,180,106,0.12) !important;color:#d8b46a!important}
.elementor a.dja-btn.dark-outline{color:#101820!important;border-color:rgba(16,24,32,0.18) !important;background-color:rgba(255,255,255,0.45) !important}
.elementor a.dja-btn.dark-outline:hover{border-color:#b98d38 !important;background-color:rgba(216,180,106,0.13) !important}
.elementor .dja-home-gateway{background-color:#fbf8f2 !important;overflow:hidden !important}
.elementor .dja-home-wrap{width:min(1180px,calc(100% - 36px)) !important;margin:0 auto !important}
/* .dja-eyebrow primitive moved to style.css (globals). */
/* .dja-section-title / .dja-section-lead primitives moved to style.css (globals). */
.elementor .dja-hero{position:relative !important;background:radial-gradient(circle at 15% 20%,rgba(216,180,106,0.18),transparent 32%),radial-gradient(circle at 85% 10%,rgba(247,241,230,0.08),transparent 28%),linear-gradient(135deg,#0b1117 0%,#101820 45%,#18242d 100%) !important;color:#f7f1e6 !important}
/* Transparent-header offset (2026-06-29). Keyed on the role class .dja-hero so it
   is depth-independent (any container nesting) and covers every page's top section,
   incl. .dja-about-page .dja-hero. Single knob: --dja-header-h (style.css :root,
   responsive). Overrides the native baked padding-top; survives WP Engine pulls. */
.elementor .dja-hero{padding-top:var(--dja-header-h) !important}
.elementor .dja-hero::after{content:"" !important;position:absolute !important;inset:0 !important;background-image:linear-gradient(rgba(255,255,255,0.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.035) 1px,transparent 1px) !important;background-size:54px 54px !important;-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,0.55),transparent 82%) !important;mask-image:linear-gradient(to bottom,rgba(0,0,0,0.55),transparent 82%) !important;pointer-events:none !important}
.elementor .dja-hero-inner{position:relative !important;z-index:2 !important;display:flex !important;gap:clamp(34px,5vw,70px) !important;align-items:center !important}
/* hero copy/visual flex ratios relocated to per-element Custom CSS; desktop rules removed. */
.elementor .dja-hero h1{font-size:clamp(2.65rem,6vw,5.7rem) !important;line-height:0.98 !important;letter-spacing:-0.065em !important;color:#f7f1e6 !important;max-width: min(780px, 100%) !important}
.elementor .dja-hero h1 span{color:#d8b46a !important}
.elementor .dja-hero-copy{font-size:clamp(1.05rem,1.55vw,1.25rem) !important;line-height:1.75 !important;color:rgba(247,241,230,0.82) !important;max-width: min(700px, 100%) !important;margin:0 !important}
.elementor .dja-hero-proof{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:14px !important;max-width: min(680px, 100%) !important}
.elementor .dja-proof-card{border-radius:22px !important;border:1px solid rgba(216,180,106,0.26) !important;background-color:rgba(255,255,255,0.055) !important;-webkit-backdrop-filter:blur(10px) !important;backdrop-filter:blur(10px) !important}
.elementor .dja-proof-card strong{display:block !important;color:#d8b46a !important;font-size:1.45rem !important;line-height:1 !important}
.elementor .dja-proof-card span{display:block !important;font-size:0.82rem !important;line-height:1.45 !important;color:rgba(247,241,230,0.76) !important}
.elementor .dja-hero-visual,.elementor .dja-meet-visual{position:relative !important}
.elementor .dja-portrait-card{border-radius:34px !important;background:linear-gradient(145deg,rgba(216,180,106,0.38),rgba(255,255,255,0.06)) !important;box-shadow:0 30px 70px rgba(0,0,0,0.38) !important;border:1px solid rgba(216,180,106,0.25) !important}
.elementor .dja-portrait-card img{width:100% !important;display:block !important;border-radius:24px !important;aspect-ratio:4/5 !important;object-fit:cover !important;object-position:center !important;filter:saturate(0.95) contrast(1.02) !important}
.elementor .dja-floating-note{position:absolute !important;left:-28px !important;bottom:34px !important;max-width:280px !important;border-radius:24px !important;background-color:rgba(247,241,230,0.96) !important;color:#101820 !important;box-shadow:0 22px 50px rgba(0,0,0,0.26) !important;border:1px solid rgba(216,180,106,0.4) !important}
.elementor .dja-floating-note strong{display:block !important;font-size:0.92rem !important;}
.elementor .dja-floating-note p{font-size:0.86rem !important;line-height:1.55 !important}
.elementor .dja-cred-strip{background-color:#f7f1e6 !important;border-bottom:1px solid rgba(16,24,32,0.08) !important}
.elementor .dja-cred-inner{display:flex !important;flex-wrap:wrap !important;align-items:center !important;justify-content:center !important;gap:14px 22px !important;text-align:center !important}
.elementor .dja-pathways{background:radial-gradient(circle at 5% 15%,rgba(216,180,106,0.12),transparent 28%),#fbf8f2 !important}
.elementor .dja-section-head{text-align:center !important;max-width: min(920px, 100%) !important}
.elementor .dja-pathway-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:20px !important}
.elementor .dja-path-card{position:relative !important;display:flex !important;flex-direction:column !important;min-height:440px !important;border-radius:32px !important;background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 20px 50px rgba(16,24,32,0.08) !important;overflow:hidden !important;transition:all 0.28s ease !important}
.elementor .dja-path-card::before{content:"" !important;position:absolute !important;inset:0 0 auto 0 !important;height:6px !important;background:linear-gradient(90deg,#d8b46a,#b98d38) !important}
.elementor .dja-path-card:hover{transform:translateY(-5px) !important;box-shadow:0 28px 70px rgba(16,24,32,0.13) !important}
.elementor .dja-path-icon {width:54px !important;height:54px !important;border-radius:18px !important;display:grid !important;place-items:center !important;background-color:rgba(216,180,106,0.16) !important;color:#b98d38 !important;font-size:1.35rem !important;margin-bottom:24px !important}
.elementor .dja-path-card h3{font-size:1.42rem !important;line-height:1.14 !important;color:#101820 !important;letter-spacing:-0.03em !important}
.elementor .dja-path-card p{font-size:0.96rem !important;line-height:1.68 !important;color:#61717a !important}
.elementor .dja-mini-list{list-style:none !important;margin:0 0 28px !important;padding:0 !important}
.elementor .dja-mini-list li{position:relative !important;padding-left:21px !important;margin-bottom:10px !important;font-size:0.9rem !important;line-height:1.5 !important;color:#40505a !important}
.elementor .dja-mini-list li::before{content:"" !important;position:absolute !important;left:0 !important;top:0.62em !important;width:7px !important;height:7px !important;border-radius:50% !important;background-color:#d8b46a !important}
.elementor .dja-path-card a.dja-btn{margin-top:auto !important;align-self:flex-start !important}
.elementor .dja-flagship.dark{background:radial-gradient(circle at 85% 15%,rgba(216,180,106,0.16),transparent 32%),linear-gradient(135deg,#0b1117,#101820 48%,#18242d) !important;color:#f7f1e6 !important}
.elementor .dja-flagship.light{background-color:#f7f1e6 !important}

.elementor .dja-feature-grid,.elementor .dja-meet-grid{display:flex !important;gap:clamp(34px,5vw,70px) !important;align-items:center !important}
/* feature-grid copy/panel flex ratios relocated to per-element Custom CSS. */
.elementor .dja-feature-copy{display:flex !important;flex-direction:column !important}
.elementor .dja-feature-copy h2{font-size:clamp(2rem,4vw,3.55rem) !important;line-height:1.04 !important;letter-spacing:-0.055em !important;margin:0 0 22px !important}
.elementor .dja-feature-copy h2.light{color:#f7f1e6 !important}
.elementor .dja-feature-copy h2.dark{color:#101820 !important}
.elementor .dja-feature-copy p{font-size:1.04rem !important;line-height:1.78 !important;color:#61717a !important;margin:0 0 18px !important}
.elementor .dja-feature-copy p.light{color:rgba(247,241,230,0.82) !important}
.elementor .dja-feature-panel{border-radius:34px !important;background-color:rgba(255,255,255,0.08) !important;border:1px solid rgba(216,180,106,0.28) !important;box-shadow:0 26px 70px rgba(0,0,0,0.25) !important}
.elementor .dja-feature-panel.light-panel{background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 26px 70px rgba(16,24,32,0.1) !important}
.elementor .dja-system-grid{gap:14px !important}
.elementor .dja-system-pill{border-radius:18px !important;border:1px solid rgba(216,180,106,0.26) !important;background-color:rgba(255,255,255,0.07) !important;color:#f7f1e6 !important}
.elementor .dja-system-pill.light-pill{background-color:rgba(247,241,230,0.65) !important;border-color:rgba(16,24,32,0.08) !important;color:#101820 !important}
.elementor .dja-system-pill strong{display:block !important;font-size:0.96rem !important}
.elementor .dja-system-pill span{display:block !important;font-size:0.82rem !important;line-height:1.45 !important;opacity:0.78 !important}
.elementor .dja-quote-card{border-radius:22px !important;background-color:rgba(216,180,106,0.13) !important;border:1px solid rgba(216,180,106,0.25) !important}
.elementor .dja-quote-card p{color:rgba(247,241,230,0.9) !important;font-size:1rem !important;line-height:1.65 !important}
.elementor .dja-quote-card.dark-text p{color:#101820 !important}
.elementor .dja-workwith{background-color:#fbf8f2 !important}
.elementor .dja-work-grid{display:grid !important;grid-template-columns:repeat(2,1fr) !important;gap:24px !important;margin-top:42px !important}
.elementor .dja-work-card{position:relative !important;display:flex !important;flex-direction:column !important;border-radius:34px !important;background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 20px 55px rgba(16,24,32,0.08) !important;overflow:hidden !important}
.elementor .dja-work-card::after{content:"" !important;position:absolute !important;right:-70px !important;top:-70px !important;width:180px !important;height:180px !important;border-radius:50% !important;background-color:rgba(216,180,106,0.13) !important}
.elementor .dja-work-card h3{position:relative !important;z-index:2 !important;font-size:clamp(1.6rem,3vw,2.25rem) !important;line-height:1.08 !important;letter-spacing:-0.04em !important;color:#101820 !important}
.elementor .dja-work-card p{position:relative !important;z-index:2 !important;font-size:1rem !important;line-height:1.75 !important;color:#61717a !important}
.elementor .dja-work-card .dja-button-row{position:relative !important;z-index:2 !important}
.elementor .dja-final-cta{background:radial-gradient(circle at 50% 0%,rgba(216,180,106,0.18),transparent 34%),linear-gradient(135deg,#101820,#0b1117) !important;text-align:center !important;color:#f7f1e6 !important}
.elementor .dja-final-cta .dja-home-wrap{display:flex !important;flex-direction:column !important;align-items:center !important}
.elementor .dja-final-cta h2{font-size:clamp(2rem,4.4vw,3.6rem) !important;line-height:1.05 !important;letter-spacing:-0.055em !important;color:#f7f1e6 !important}
.elementor .dja-final-cta p{max-width: min(740px, 100%) !important;font-size:1.08rem !important;line-height:1.75 !important;color:rgba(247,241,230,0.82) !important}
.elementor .dja-testimonials-section{position:relative !important;background:radial-gradient(circle at 10% 10%,rgba(216,180,106,0.12),transparent 30%),radial-gradient(circle at 90% 80%,rgba(16,24,32,0.08),transparent 34%),#fbf8f2 !important;overflow:hidden !important}
.elementor .dja-testimonials-head{max-width: min(900px, 100%) !important;text-align:center !important}
.elementor .dja-testimonials-eyebrow{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;color:var(--dja-gold) !important;font-size:0.78rem !important;font-weight:800 !important;letter-spacing:0.16em !important;text-transform:uppercase !important;margin-bottom:18px !important;width:fit-content !important;}
.elementor .dja-testimonials-eyebrow::before,.elementor .dja-testimonials-eyebrow::after{content:"" !important;width:34px !important;height:1px !important;background-color:#d8b46a !important;opacity:0.9 !important}
.elementor .dja-testimonials-head h2{font-size:clamp(2rem,4vw,3.4rem) !important;line-height:1.08 !important;letter-spacing:-0.045em !important;color:#101820 !important}
.elementor .dja-testimonials-head p{max-width: min(760px, 100%) !important;font-size:clamp(1rem,1.35vw,1.14rem) !important;line-height:1.75 !important;color:#61717a !important}
.elementor .dja-testimonials-grid{display:flex !important;gap:24px !important;align-items:stretch !important}
/* testimonials-grid main/side flex ratios relocated to per-element Custom CSS. */
.elementor .dja-testimonial-main{position:relative !important;border-radius:36px !important;background:radial-gradient(circle at 90% 10%,rgba(216,180,106,0.20),transparent 30%),linear-gradient(135deg,#f7f1e6,#ffffff) !important;color:#101820 !important;box-shadow:0 28px 75px rgba(16,24,32,0.16) !important;border:1px solid rgba(216,180,106,0.38) !important;overflow:hidden !important}
.elementor .dja-testimonial-main::before{content:"“" !important;position:absolute !important;top:-12px !important;left:28px !important;font-size:13rem !important;line-height:1 !important;font-family:Georgia,serif !important;color:rgba(216,180,106,0.22) !important;pointer-events:none !important;border: none;}
.elementor .dja-testimonial-main blockquote, .elementor .dja-testimonial-side blockquote {border:none;margin-left:0}
.elementor .dja-testimonial-tag{display:inline-flex !important;align-items:center !important;padding:8px 14px !important;border-radius:999px !important;background-color:rgba(16,24,32,0.08) !important;border:1px solid rgba(216,180,106,0.45) !important;color:#101820 !important;font-size:0.76rem !important;font-weight:800 !important;letter-spacing:0.12em !important;text-transform:uppercase !important;margin-bottom:26px !important;width:fit-content !important;}
.elementor .dja-testimonial-main blockquote p{font-size:clamp(1.25rem,2.15vw,1.85rem) !important;line-height:1.48 !important;letter-spacing:-0.025em !important;color:#101820 !important}
.elementor .dja-testimonial-main cite,.elementor .dja-testimonial-card cite{margin-top: 15px; display:block !important;font-style:normal !important}
.elementor .dja-testimonial-main cite strong{display:block !important;color:#b98d38 !important;font-size:1rem !important}
.elementor .dja-testimonial-main cite span{display:block !important;color:#61717a !important;font-size:0.9rem !important;line-height:1.5 !important}
.elementor .dja-testimonial-side{display:grid !important;gap:24px !important}
.elementor .dja-testimonial-card{position:relative !important;border-radius:30px !important;background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 20px 55px rgba(16,24,32,0.08) !important;overflow:hidden !important}
.elementor .dja-testimonial-card::before,.elementor .dja-proof-panel::before{content:"" !important;position:absolute !important;inset:0 0 auto 0 !important;height:5px !important;background:linear-gradient(90deg,#d8b46a,#b98d38) !important}
.elementor .dja-testimonial-card p{font-size:1rem !important;color:#24323a !important}
.elementor .dja-testimonial-card cite strong{display:block !important;color:#101820 !important;font-size:0.96rem !important}
.elementor .dja-testimonial-card cite span{display:block !important;color:#61717a !important;font-size:0.86rem !important;line-height:1.45 !important}
.elementor .dja-trust-bar{display:grid !important;grid-template-columns:repeat(4,1fr) !important;gap:14px !important}
.elementor .dja-trust-item{border-radius:22px !important;background-color:rgba(255,255,255,0.72) !important;border:1px solid rgba(16,24,32,0.08) !important;text-align:center !important}
.elementor .dja-trust-item strong{display:block !important;font-size:1.12rem !important;color:#101820 !important}
.elementor .dja-trust-item span,.elementor .dja-meet-marker p{display:block !important;font-size:0.82rem !important;line-height:1.45 !important;color:#61717a !important}
.elementor .dja-proof-panels{display:grid !important;grid-template-columns:1fr 1fr !important;gap:24px !important;align-items:stretch !important}
.elementor .dja-proof-panel, .elementor-page .dja-panel {position:relative !important;border-radius:34px !important;background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 22px 60px rgba(16,24,32,0.09) !important;overflow:hidden !important}
.elementor .dja-proof-panel.dark, .elementor-page .dja-panel.dark {background:radial-gradient(circle at 95% 0%,rgba(216,180,106,0.18),transparent 32%),linear-gradient(135deg,#101820,#18242d) !important;color:#f7f1e6 !important;border:1px solid rgba(216,180,106,0.26) !important}
/* .dja-proof-kicker primitive moved to style.css (globals). */
.elementor .dja-proof-panel h3{font-size:clamp(1.55rem,3vw,2.2rem) !important;line-height:1.1 !important;letter-spacing:-0.04em !important;color:#101820 !important}
.elementor .dja-proof-panel.dark h3{color:#f7f1e6 !important}
.elementor .dja-proof-panel p{font-size:0.98rem !important;line-height:1.72 !important;color:#61717a !important}
.elementor .dja-proof-panel.dark p{color:rgba(247,241,230,0.78) !important}
.elementor .dja-google-reviews-box{border-radius:24px !important;background-color:rgba(247,241,230,0.52) !important;border:1px solid rgba(216,180,106,0.26) !important}
.elementor .dja-google-reviews-box iframe,.elementor .dja-google-reviews-box img{max-width:100% !important}
.elementor .dja-google-reviews-box a{color:#b98d38 !important;font-weight:800 !important}
.elementor .dja-video-frame{position:relative !important;width:100% !important;aspect-ratio:16/9 !important;border-radius:24px !important;overflow:hidden !important;border:1px solid rgba(216,180,106,0.34) !important;box-shadow:0 18px 45px rgba(0,0,0,0.22) !important;background-color:#000 !important;margin-top:22px !important}
.elementor .dja-video-frame iframe{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;border:0 !important}
.elementor .dja-proof-note{border-radius:20px !important;background-color:rgba(216,180,106,0.12) !important;border:1px solid rgba(216,180,106,0.24) !important}
.elementor .dja-proof-note p{font-size:0.9rem !important;line-height:1.55 !important}
.elementor .dja-testimonials-cta{margin-top:42px !important}
.elementor .dja-testimonials-cta .dja-button-row{margin-top:0 !important}
.elementor .dja-meet-section{position:relative !important;background:radial-gradient(circle at 8% 12%,rgba(216,180,106,0.13),transparent 30%),radial-gradient(circle at 90% 80%,rgba(16,24,32,0.08),transparent 34%),#f7f1e6 !important;color:#24323a !important;overflow:hidden !important}
/* meet-grid visual/copy flex ratios relocated to per-element Custom CSS. */
.elementor .dja-meet-image-card{position:relative !important;border-radius:36px !important;background:linear-gradient(145deg,rgba(216,180,106,0.42),rgba(255,255,255,0.42)) !important;box-shadow:0 28px 75px rgba(16,24,32,0.16) !important;border:1px solid rgba(216,180,106,0.34) !important}
.elementor .dja-meet-image-card img{display:block !important;width:100% !important;border-radius:26px !important;aspect-ratio:4/5 !important;object-fit:cover !important;object-position:center !important}
.elementor .dja-meet-badge{position:absolute !important;right:-18px !important;bottom:34px !important;max-width:260px !important;padding:20px 22px !important;border-radius:24px !important;background:radial-gradient(circle at 95% 0%,rgba(216,180,106,0.18),transparent 35%),linear-gradient(135deg,#101820,#18242d) !important;color:#f7f1e6 !important;border:1px solid rgba(216,180,106,0.35) !important;box-shadow:0 24px 58px rgba(16,24,32,0.28) !important}
.elementor .dja-meet-badge strong{display:block !important;color:#d8b46a !important;font-size:1rem !important;line-height:1.25 !important;margin-bottom:8px !important}
.elementor .dja-meet-badge p{display:block !important;color:rgba(247,241,230,0.78) !important;font-size:0.86rem !important;line-height:1.5 !important}
.elementor .dja-meet-eyebrow{display:inline-flex !important;align-items:center !important;gap:10px !important;color:var(--dja-gold) !important;font-size:0.78rem !important;font-weight:850 !important;letter-spacing:0.16em !important;text-transform:uppercase !important;margin-bottom:18px !important;width:fit-content !important;}
.elementor .dja-meet-eyebrow::before{content:"" !important;width:34px !important;height:1px !important;background-color:var(--dja-gold) !important;opacity:0.85 !important}
.elementor .dja-meet-copy h2{font-size:clamp(2.1rem,4vw,3.65rem) ! important;line-height:1.04 ! important;letter-spacing:-0.055em ! important;color:#101820 ! important;margin:0 0 18px ! important}
.elementor .dja-meet-subtitle{font-size:clamp(1.05rem,1.5vw,1.24rem) ! important;line-height:1.7 ! important;color:#61717a ! important;margin:0 0 24px ! important;max-width: min(780px, 100%) ! important}
.elementor .dja-meet-copy p{color: var(--dja-text)}
.elementor .dja-meet-highlight{border-radius:26px !important;background-color:rgba(255,255,255,0.62) !important;border:1px solid rgba(216,180,106,0.30) !important;box-shadow:0 16px 42px rgba(16,24,32,0.06) !important}
.elementor .dja-meet-highlight p{font-size:1.04rem !important;line-height:1.72 !important;color:#101820 !important}
.elementor .dja-meet-highlight strong{color:#b98d38 !important}
.elementor .dja-meet-markers{gap:14px !important;margin:30px 0 0 !important}
.elementor .dja-meet-marker{border-radius:22px !important;background-color:#ffffff !important;border:1px solid rgba(16,24,32,0.08) !important;box-shadow:0 14px 36px rgba(16,24,32,0.06) !important}
.elementor .dja-meet-marker strong{display:block !important;color:#101820 !important;font-size:0.98rem !important;line-height:1.25 !important}
.elementor .dja-meet-quote-strip{border-radius:34px !important;background:radial-gradient(circle at 95% 0%,rgba(216,180,106,0.18),transparent 34%),linear-gradient(135deg,#101820,#18242d) !important;color:#f7f1e6 !important;border:1px solid rgba(216,180,106,0.28) !important;box-shadow:0 24px 65px rgba(16,24,32,0.16) !important}
.elementor .dja-meet-quote-strip p{max-width: min(930px, 100%) !important;text-align:center !important;color:rgba(247,241,230,0.9) !important;font-size:clamp(1.15rem,2vw,1.55rem) !important;line-height:1.58 !important;letter-spacing:-0.025em !important}
.elementor .dja-meet-quote-strip strong{color:#d8b46a !important}

/* about_2026-06-22 per-page family, scoped under .dja-about-page (no clash with home). */
/* Buttons in style.css; .hte-* above. Hero/intro/care 2-col flex ratios -> per-element CSS. */
.elementor .dja-about-page{font-family:inherit !important;color:#24323a !important;background-color:#fbf8f2 !important;overflow:hidden !important}
.elementor .dja-about-page *{box-sizing:border-box !important}
.elementor .dja-about-page a{text-decoration:none !important}
.elementor .dja-about-page .dja-about-wrap{width:min(1180px,calc(100% - 36px)) !important;margin:0 auto !important}
/* eyebrow + system-kicker unified to the global line style; resets the converter's inline pill. */
.elementor .dja-about-page .dja-eyebrow,.elementor .dja-about-page .dja-system-kicker{display:inline-flex !important;align-items:center !important;gap:10px !important;margin-bottom:18px !important;padding:0 !important;border:0 !important;border-radius:0 !important;background:none !important;color:#d8b46a !important;font-size:0.78rem !important;font-weight:700 !important;letter-spacing:0.16em !important;text-transform:uppercase !important;width:fit-content !important;}
.elementor .dja-about-page .dja-eyebrow::before,.elementor .dja-about-page .dja-system-kicker::before{content:"" !important;width:34px !important;height:1px !important;border-radius:0 !important;background-color:#d8b46a !important;box-shadow:none !important;opacity:0.9 !important}
/* the converter keeps the pill on an inner inline-styled <div>; reset it to the line look. */
.elementor .dja-about-page .dja-eyebrow > div,.elementor .dja-about-page .dja-system-kicker > div{padding:0 !important;border:0 !important;border-radius:0 !important;background:none !important;margin:0 !important;font-weight:700 !important;letter-spacing:0.16em !important}
/* section-label unified to the line eyebrow; text sits in a nested <p>, so style the <p> too. */
.elementor .dja-about-page .dja-section-label{display:inline-flex !important;align-items:center !important;gap:10px !important;margin-bottom:18px !important}
.elementor .dja-about-page .dja-section-label::before{content:"" !important;width:34px !important;height:1px !important;background-color:#d8b46a !important;opacity:0.9 !important}
.elementor .dja-about-page .dja-section-label.dja-section-label p{margin:0 !important;color:#d8b46a !important;font-size:0.78rem !important;font-weight:700 !important;letter-spacing:0.16em !important;text-transform:uppercase !important}
.elementor .dja-about-page h1,.elementor .dja-about-page h2,.elementor .dja-about-page h3{margin:0 !important;line-height:1.05 !important;color:#101820 !important}
.elementor .dja-about-page h1{font-size:clamp(2.6rem,5.4vw,5.45rem) !important;letter-spacing:-0.065em !important}
.elementor .dja-about-page h2{font-size:clamp(2rem,3.8vw,3.7rem) !important;letter-spacing:-0.055em !important}
.elementor .dja-about-page h3{font-size:clamp(1.2rem,1.65vw,1.55rem) !important;letter-spacing:-0.025em !important}
.elementor .dja-about-page strong{color:#101820 !important}
.elementor .dja-about-page .dja-hero{position:relative !important;background:radial-gradient(circle at 8% 12%,rgba(216,180,106,0.15),transparent 30%),radial-gradient(circle at 92% 70%,rgba(216,180,106,0.12),transparent 32%),linear-gradient(135deg,#0b1117,#101820 48%,#18242d) !important;color:#ffffff !important}
.elementor .dja-about-page .dja-hero-grid{position:relative !important;z-index:2 !important;display:flex !important;gap:clamp(34px,5vw,74px) !important;align-items:center !important}
.elementor .dja-about-page .dja-hero h1{color:#ffffff !important;max-width: min(820px, 100%) !important}
.elementor .dja-about-page .dja-hero h1 span{color:#d8b46a !important}
.elementor .dja-about-page .dja-hero-subtitle{margin-top:22px !important;color:rgba(255,255,255,0.78)!important;font-size:clamp(1.06rem,1.6vw,1.28rem)!important;max-width: min(760px, 100%) !important}
.elementor .dja-about-page .dja-hero-role{margin-top:20px !important;color:rgba(255,255,255,0.92)!important;font-weight:700 !important;font-size:1.02rem!important}
.elementor .dja-about-page .dja-hero-actions{display:flex !important;flex-wrap:wrap !important;gap:14px !important}
.elementor .dja-about-page .dja-hero-card{position:relative !important;border:1px solid rgba(216,180,106,0.28) !important;border-radius:34px !important;background-color:rgba(255,255,255,0.075) !important;box-shadow:0 28px 90px rgba(0,0,0,0.35) !important;backdrop-filter:blur(12px) !important}
.elementor .dja-about-page .dja-hero-image{min-height:520px !important;border-radius:26px !important;background:linear-gradient(to bottom,rgba(16,24,32,0.08),rgba(16,24,32,0.72)),url(https://drjoabbott.com/wp-content/uploads/IMG_7907.jpg) !important;background-size:cover !important;background-position:center !important;overflow:hidden !important}
.elementor .dja-about-page .dja-hero-badge{position:absolute !important;left:34px !important;right:34px !important;bottom:34px !important;border-radius:24px !important;background-color:rgba(11,17,23,0.86) !important;border:1px solid rgba(216,180,106,0.32) !important;box-shadow:0 16px 44px rgba(0,0,0,0.32) !important}
.elementor .dja-about-page .dja-hero-badge p{color:rgba(255,255,255,0.8)!important;font-size:0.95rem!important}
.elementor .dja-about-page .dja-hero-badge strong{display:block !important;color:#d8b46a !important;font-size:1.05rem !important}
.elementor .dja-about-page .dja-credential-strip{position:relative !important;z-index:4 !important}
.elementor .dja-about-page .dja-credential-grid{display:grid !important;grid-template-columns:repeat(4,1fr) !important;overflow:hidden !important;border-radius:28px !important;background-color:#ffffff !important;box-shadow:0 24px 70px rgba(16,24,32,0.16) !important;border:1px solid rgba(216,180,106,0.2) !important}
.elementor .dja-about-page .dja-credential{border-right:1px solid rgba(16,24,32,0.08) !important}
.elementor .dja-about-page .dja-credential:last-child{border-right:none !important}
.elementor .dja-about-page .dja-credential-number{display:block !important;color:#d8b46a !important;font-size:clamp(1.85rem,3vw,2.6rem) !important;font-weight:900 !important;line-height:1 !important;letter-spacing:-0.06em !important}
/* number text wrapped in <p> by the converter; restore its style over .dja-about-page p. */
.elementor .dja-about-page .dja-credential .dja-credential-number p{margin:0 !important;color:#d8b46a !important;font-size:clamp(1.85rem,3vw,2.6rem) !important;font-weight:900 !important;line-height:1 !important;letter-spacing:-0.06em !important}
.elementor .dja-about-page .dja-credential p{color:#61717a !important;font-size:0.92rem !important;line-height:1.5 !important}
.elementor .dja-about-page .dja-intro{padding:clamp(78px,8vw,116px)0 !important}
.elementor .dja-about-page .dja-intro-grid{display:flex !important;gap:clamp(30px,5vw,76px) !important;align-items:flex-start !important}
.elementor .dja-about-page .dja-intro-title{position:sticky !important;top:30px !important}
.elementor .dja-about-page .dja-intro-title p{margin-top:20px !important;max-width: min(470px, 100%) !important}
.elementor .dja-about-page .dja-intro-copy{display:grid !important;gap:18px !important}
.elementor .dja-about-page .dja-feature-list{display:grid !important;gap:14px !important}
.elementor .dja-about-page .dja-feature{border-radius:22px !important;background-color:#ffffff !important;border:1px solid rgba(216,180,106,0.22) !important;box-shadow:0 14px 34px rgba(16,24,32,0.06) !important}
.elementor .dja-about-page .dja-feature strong{display:block !important;font-size:1.04rem !important}
.elementor .dja-about-page .dja-systems{background:radial-gradient(circle at 16% 16%,rgba(216,180,106,0.13),transparent 32%),linear-gradient(135deg,#101820,#0b1117) !important}
.elementor .dja-about-page .dja-systems h2,.elementor .dja-about-page .dja-systems h3{color:#ffffff !important}
.elementor .dja-about-page .dja-systems p{color:rgba(255,255,255,0.76) !important}
.elementor .dja-about-page .dja-system-card{position:relative !important;min-height:420px !important;border-radius:32px !important;overflow:hidden !important;border:1px solid rgba(216,180,106,0.27) !important;background:linear-gradient(145deg,rgba(255,255,255,0.105),rgba(255,255,255,0.045)) !important;box-shadow:0 26px 76px rgba(0,0,0,0.24) !important}
.elementor .dja-about-page .dja-system-card::before{content:"" !important;position:absolute !important;inset:0 !important;background:radial-gradient(circle at 20% 18%,rgba(216,180,106,0.18),transparent 28%),linear-gradient(to bottom,transparent,rgba(0,0,0,0.22)) !important;pointer-events:none !important}
.elementor .dja-about-page .dja-system-card>*{position:relative !important;z-index:2 !important}
/* .dja-system-kicker line style folded into the .dja-eyebrow line rules above (was a pill). */
.elementor .dja-about-page .dja-system-card h3{font-size:clamp(1.55rem,2.2vw,2.25rem) !important}
.elementor .dja-about-page .dja-system-card p{max-width: min(560px, 100%) !important}
.elementor .dja-about-page .dja-system-points{display:grid !important;gap:10px !important;margin-top:24px !important}
.elementor .dja-about-page .dja-journey{background-color:#f7f1e6 !important}
.elementor .dja-about-page .dja-centred-head{max-width: min(850px, 100%) !important;text-align:center !important}
.elementor .dja-about-page .dja-timeline{display:grid !important;gap:18px !important;max-width: min(980px, 100%) !important;margin:0 auto !important}
.elementor .dja-about-page .dja-timeline-item{display:flex !important;gap:22px !important;border-radius:28px !important;background-color:#ffffff !important;border:1px solid rgba(216,180,106,0.22) !important;box-shadow:0 16px 42px rgba(16,24,32,0.07) !important}
.elementor .dja-about-page .dja-timeline-item>.dja-timeline-date{flex:0 0 180px !important}
.elementor .dja-about-page .dja-timeline-item>.dja-timeline-content{flex:1 1 0 !important;min-width:0 !important}
.elementor .dja-about-page .dja-timeline-date{color:#d8b46a !important;font-weight:900 !important;letter-spacing:-0.02em !important;font-size:1.18rem !important}
/* date text wrapped in <p> by the converter; restore its style over .dja-about-page p. */
.elementor .dja-about-page .dja-timeline-date p{margin:0 !important;color:#d8b46a !important;font-weight:900 !important;letter-spacing:-0.02em !important;font-size:1.18rem !important}
.elementor .dja-about-page .dja-timeline-content h3{margin-bottom:9px !important}
.elementor .dja-about-page .dja-care{background-color:#fbf8f2 !important}
.elementor .dja-about-page .dja-care-grid{display:flex !important;gap:clamp(28px,5vw,70px) !important;align-items:flex-start !important}
.elementor .dja-about-page .dja-care-panel{border-radius:34px !important;background-color:#101820 !important;color:#ffffff !important;box-shadow:0 24px 74px rgba(16,24,32,0.18) !important}
.elementor .dja-about-page .dja-care-panel h2{color:#ffffff !important}
.elementor .dja-about-page .dja-care-panel p{color:rgba(255,255,255,0.77) !important}
.elementor .dja-about-page .dja-care-cards{gap:18px !important}
.elementor .dja-about-page .dja-care-card{min-height:205px !important;border-radius:26px !important;background-color:#ffffff !important;border:1px solid rgba(216,180,106,0.22) !important;box-shadow:0 16px 42px rgba(16,24,32,0.065) !important}
.elementor .dja-about-page .dja-care-icon{display:grid !important;place-items:center !important;width:42px !important;height:42px !important;margin-bottom:18px !important;border-radius:15px !important;background-color:rgba(216,180,106,0.18) !important;color:#b98d38 !important;font-weight:900 !important}
.elementor .dja-about-page .dja-qualifications{background:linear-gradient(135deg,#101820,#18242d) !important}
.elementor .dja-about-page .dja-qualifications h2{color:#ffffff !important}
.elementor .dja-about-page .dja-qualifications p{color:rgba(255,255,255,0.76) !important}
.elementor .dja-about-page .dja-qual-grid{gap:18px !important;margin-top:36px !important}
.elementor .dja-about-page .dja-qual-card{border-radius:28px !important;border:1px solid rgba(216,180,106,0.25) !important;background-color:rgba(255,255,255,0.075) !important}
.elementor .dja-about-page .dja-qual-card h3{color:#d8b46a !important}
.elementor .dja-about-page .dja-qual-card ul{list-style:none !important;display:grid !important;gap:11px !important}
.elementor .dja-about-page .dja-qual-card li{position:relative !important;color:rgba(255,255,255,0.75) !important;line-height:1.5 !important;font-size:0.95rem !important}
.elementor .dja-about-page .dja-qual-card li::before{content:"" !important;position:absolute !important;left:0 !important;top:9px !important;width:7px !important;height:7px !important;border-radius:99px !important;background-color:#d8b46a !important}
.elementor .dja-about-page .dja-thesis{background-color:#f7f1e6 !important}
.elementor .dja-about-page .dja-thesis-card{position:relative !important;border-radius:36px !important;background:radial-gradient(circle at 12% 12%,rgba(216,180,106,0.18),transparent 32%),#ffffff !important;border:1px solid rgba(216,180,106,0.28) !important;box-shadow:0 24px 70px rgba(16,24,32,0.1) !important}
.elementor .dja-about-page .dja-thesis-card::before{content:"“" !important;position:absolute !important;top:18px !important;right:34px !important;color:rgba(216,180,106,0.22) !important;font-size:8rem !important;line-height:1 !important;font-family:Georgia,serif !important}
.elementor .dja-about-page .dja-thesis-card h2{max-width: min(960px, 100%) !important}
.elementor .dja-about-page .dja-thesis-card p{max-width: min(900px, 100%) !important}
.elementor .dja-about-page .dja-final-cta{background:radial-gradient(circle at 18% 18%,rgba(216,180,106,0.18),transparent 32%),linear-gradient(135deg,#0b1117,#101820) !important;color:#ffffff !important;text-align:center !important}
.elementor .dja-about-page .dja-final-cta .dja-about-wrap{display:flex !important;flex-direction:column !important;align-items:center !important}
.elementor .dja-about-page .dja-final-cta h2{color:#ffffff !important;max-width: min(900px, 100%) !important}
.elementor .dja-about-page .dja-final-cta p{max-width: min(760px, 100%) !important;color:rgba(255,255,255,0.78) !important}
.elementor .dja-about-page .dja-final-actions{display:flex !important;justify-content:center !important;flex-wrap:wrap !important;gap:14px !important}
/* Reset home .dja-hero::after mask leaking onto about bottom-fade ::after. */
.elementor .dja-about-page .dja-hero::after{-webkit-mask-image:none !important;mask-image:none !important}

.dja-yith-prodcuts .woocommerce-product-details__short-description {
    padding: 0 15px 15px;
}

dja-yith-prodcuts img.attachment-woocommerce_thumbnail.size-woocommerce_thumbnail {
    width: 100%;
    object-fit: cover;
    height: 200px;
    object-position: top center;
}


.dja-yith-prodcuts h2.woocommerce-loop-product__title {
    font-weight: 700 !important;
    font-size: 1.42rem;
    line-height: 1.14;
    margin: 0 !important;
    color: var(--dja-navy);
    letter-spacing: -0.03em;
    padding: 15px;
}

.dja-yith-prodcuts img + h2.woocommerce-loop-product__title {
  margin-top: 25px;
}

.dja-yith-prodcuts .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    list-style-type: none;
}

.dja-yith-prodcuts .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 400px;
    padding: 0;
    border-radius: 32px;
    background: #ffffff;
    border: 1px solid rgb(216 180 106);
    box-shadow: 0 20px 50px rgba(16,24,32,0.08);
    overflow: hidden;
    transition: all 0.28s ease;
}

.dja-yith-prodcuts .woocommerce ul.products li.product::before, .woocommerce-page ul.products li.product::before{
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 6px;
    background: linear-gradient(90deg, var(--dja-gold), var(--dja-gold-dark));
}

.dja-yith-prodcuts .woocommerce ul.products li.product a.i2g-more-info-btn {
    color: var(--dja-gold-dark);
    font-weight: 900;
    font-size: 0.88rem;
    text-align: right;
    padding: 0 25px 25px;
}

.dja-yith-prodcuts .woocommerce ul.products li .price {
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: #f9f3e7;
    color: var(--dja-gold-dark);
    font-size: 1.35rem;
    margin-bottom: 24px;
    position: absolute;
    right: 15px;
    top: 15px;
    padding: 15px;
}

button.btn.btn-primary.yith-wcan-filters-opener {
    margin-bottom: 25px;
    margin-top: -10px;
    width: 100%;
}

/* .woocommerce ul.products li.product a.i2g-more-info-btn {
background: linear-gradient(135deg, var(--dja-gold), var(--dja-gold-dark)) !important;
} */

body .dja-yith-prodcuts  a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart {
  display: none !important;
}

/* Convert the product list to a proper CSS grid */
.dja-yith-prodcuts ul.products.columns-3 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr);
    gap: 32px; /* horizontal and vertical gap */
    margin-left: 0 !important;
}

/* Make each product card fill the full grid cell and use flex column
   so content stacks and the button is pushed to the bottom */
.dja-yith-prodcuts ul.products.columns-3 li.product {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column;
    height: auto; /* let the grid row stretch all items equally */
}

/* The main product link (image + title + description + price) should grow
   to fill available space, pushing the buttons to the bottom */
.dja-yith-prodcuts ul.products.columns-3 li.product .woocommerce-LoopProduct-link {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

/* Stretch all items in a row to the same height via the grid */
.dja-yith-prodcuts ul.products.columns-3 {
    align-items: stretch;
}

.dja-yith-prodcuts .woocommerce ul.products li.product p {
    font-family: "Lato" !important;
    font-weight: 400 !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
  margin: 0;
    color: var(--dja-muted);
}

li.product_cat-publications img {
    height: 200px;
    object-fit: cover;
    width: 100%;
}

body.filters-in-modal .yith-wcan-filters.filters-modal {
      /* position: relative !important; */
    border-radius: 34px !important;
    background-color: #ffffff !important;
    border: 1px solid rgba(16,24,32,0.08) !important;
    box-shadow: 0 22px 60px rgba(16,24,32,0.09) !important;
    overflow: hidden !important;
    margin: 25px;
}

.yith-wcan-filters.filters-modal .close-button {
    font-size: 64px;
    top: 0;
}

/* Lift the YITH filter modal above its own backdrop.
   WPLMS wraps content in #content (z-index 2) inside .pusher (z-index 99),
   trapping the modal below YITH's body::after scrim (z-index 1001).
   Neutralize those two stacking contexts only while the modal is open. */
body.yith-wcan-preset-modal-open .pusher,
body.yith-wcan-preset-modal-open #content{
  z-index: auto !important;
}

body.yith-wcan-preset-modal-open #headertop{
  z-index: 1 !important;
}

/* ===== CONSOLIDATED RESPONSIVE MEDIA QUERIES =====
   Ordered descending by max-width so narrower breakpoints override wider ones
   (all rules use !important, so source order breaks the tie). */

@media (max-width:1120px) {
.elementor .dja-pathway-grid{grid-template-columns:repeat(2,1fr) !important}
.dja-yith-prodcuts ul.products.columns-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}
}

@media (max-width: 991px){
  /* Collapse the filter panel box but keep the YITH preset in the DOM */
  .dja-panel:has(.dja-yith-filters){
    padding: 0 !important;
    margin: 0 !important;
    min-height: 0 !important;
    background: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  /* Hide the orphaned heading and description, not the shortcode */
  .dja-panel:has(.dja-yith-filters) .elementor-widget-heading,
  .dja-panel:has(.dja-yith-filters) .elementor-widget-text-editor{
    display: none !important;
  }
}

@media (max-width:980px) {
/* home */
.elementor .dja-work-grid,.elementor .dja-proof-panels{grid-template-columns:1fr !important}
/* .elementor .dja-hero-inner,.elementor .dja-feature-grid,.elementor .dja-testimonials-grid,.elementor .dja-meet-grid{flex-direction:column !important;align-items:stretch !important} */
/* grid-children responsive flex:none relocated to per-element Custom CSS. */
.elementor .dja-hero-visual,.elementor .dja-meet-visual{max-width: min(560px, 100%) !important}
.elementor .dja-path-card{min-height:auto !important}
.elementor .dja-floating-note{left:18px !important;bottom:18px !important}
.elementor .dja-trust-bar,.elementor .dja-meet-markers{grid-template-columns:repeat(2,1fr) !important}
.elementor .dja-meet-badge{right:18px !important}
/* about */
.elementor .dja-about-page .dja-intro-grid,.elementor .dja-about-page .dja-care-grid{flex-direction:column !important;align-items:stretch !important}
.elementor .dja-about-page .dja-systems-grid{grid-template-columns:1fr !important}
.elementor .dja-about-page .dja-intro-title{position:relative !important;top:auto !important}
.elementor .dja-about-page .dja-credential-grid,.elementor .dja-about-page .dja-qual-grid{grid-template-columns:repeat(2,1fr) !important}
.elementor .dja-about-page .dja-hero-image{min-height:460px !important}
#headertop, #headertop.fix {top: 20px}
}

/* @media (max-width:900px) {
.dja-yith-prodcuts ul.products.columns-3 {
    grid-template-columns: repeat(2, 1fr);
    gap: 25px;
}
} */
@media (max-width:767px) {
.dja-yith-prodcuts ul.products.columns-3 {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
}
.dja-yith-prodcuts .woocommerce ul.products li .price {
    font-size: 16px !important;
    padding: 10px;
}
li.product_cat-publications img {
    height: 100px;
}
.dja-yith-prodcuts h2.woocommerce-loop-product__title {
    font-size: 18px;
}
.dja-yith-prodcuts .woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
    min-height: 300px;
}
}

@media (max-width:720px) {
.elementor .dja-about-page .dja-about-wrap{width:min(100% - 26px,1180px) !important}
.elementor .dja-about-page .dja-credential-grid,.elementor .dja-about-page .dja-care-cards,.elementor .dja-about-page .dja-qual-grid{grid-template-columns:1fr !important}
.elementor .dja-about-page .dja-credential{border-right:none !important;border-bottom:1px solid rgba(16,24,32,0.08) !important}
.elementor .dja-about-page .dja-credential:last-child{border-bottom:none !important}
.elementor .dja-about-page .dja-timeline-item{flex-direction:column !important}
.elementor .dja-about-page .dja-timeline-item>.dja-timeline-date,.elementor .dja-about-page .dja-timeline-item>.dja-timeline-content{flex:none !important}
.elementor .dja-about-page .dja-hero-badge{left:24px !important;right:24px !important;bottom:24px !important}
.elementor .dja-about-page .dja-final-cta .dja-about-wrap{align-items:stretch !important}
#headertop > .container {width: 90%;}
}

@media (max-width:680px) {
/* mobile hero padding-top now driven by --dja-header-h (style.css :root @767). */
.elementor .dja-hero-proof{grid-template-columns:1fr !important}
.elementor .dja-button-row{flex-direction:column !important}
.elementor a.dja-btn{width:100% !important}
.elementor .dja-final-cta .dja-home-wrap,.elementor .dja-testimonials-cta{align-items:stretch !important}
.elementor .dja-pathway-grid{grid-template-columns:1fr !important}
.elementor .dja-system-grid{grid-template-columns:1fr !important}
.elementor .dja-floating-note{position:relative !important;left:auto !important;bottom:auto !important;margin-top:16px !important;max-width:100% !important}
.elementor .dja-trust-bar{grid-template-columns:1fr !important}
.elementor .dja-testimonials-eyebrow::before,.elementor .dja-testimonials-eyebrow::after{width:22px !important}
.elementor .dja-proof-panel{padding:26px 20px !important}
.elementor .dja-google-reviews-box{padding:14px !important}
.elementor .dja-meet-markers{grid-template-columns:1fr !important}
.elementor .dja-meet-badge{position:relative !important;right:auto !important;bottom:auto !important;margin-top:16px !important;max-width:100% !important}
.elementor .dja-meet-highlight{padding:22px 20px !important}
}

@media (max-width:540px) {
.hte-chunked-grid.hte-chunked-grid-3col > .elementor-element,
.hte-chunked-grid.hte-chunked-grid-4col > .elementor-element {
  flex-direction: column !important;
}
.hte-chunked-grid.hte-chunked-grid-3col > .elementor-element > .elementor-element,
.hte-chunked-grid.hte-chunked-grid-4col > .elementor-element > .elementor-element {
  width: 100% !important;
  max-width: 100% !important;
  flex-basis: 100% !important;
  flex: 0 0 100% !important;
}
}
