/*
 * Human Brand Clarity Session 0.47.0
 * Art direction: Aurelia core design system.
 * The page now shares the homepage palette, typography, organic botanicals,
 * rounded editorial cards and button language instead of a separate HBCS look.
 * Scope stays inside .hbcs-root; global header/footer are untouched.
 */

body.ad-hbcs-standalone{
  margin:0!important;
  padding:0!important;
  background:#faf5ef!important;
  color:#272222!important;
  overflow-x:hidden!important;
}
body.ad-hbcs-standalone .ad-skip{display:none!important}
main.ad-hbcs-page{
  display:block!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#faf5ef!important;
  color:#272222!important;
}

.hbcs-root{
  --hb-rose:var(--ad-rose,#a76969);
  --hb-rose-dark:var(--ad-rose-dark,#874a4c);
  --hb-rose-soft:var(--ad-rose-soft,#d9b9ad);
  --hb-plum:var(--ad-plum,#531d20);
  --hb-cream:var(--ad-cream,#faf5ef);
  --hb-cream-2:var(--ad-cream-2,#f4e9e0);
  --hb-paper:var(--ad-paper,#fffaf6);
  --hb-blush:var(--ad-blush,#eddacf);
  --hb-sage:var(--ad-sage,#82836f);
  --hb-ink:var(--ad-ink,#272222);
  --hb-muted:var(--ad-muted,#655b57);
  --hb-border:var(--ad-border,rgba(120,77,62,.14));
  --hb-shadow:var(--ad-shadow,0 12px 35px rgba(120,77,62,.055));
  --hb-font:var(--ad-font,'Lora',Georgia,'Times New Roman',serif);
  --hb-ui:var(--ad-ui,'Lora',Georgia,'Times New Roman',serif);
  --e-global-color-primary:#531d20!important;
  --e-global-color-secondary:#874a4c!important;
  --e-global-color-text:#272222!important;
  --e-global-color-accent:#a76969!important;
  position:relative!important;
  left:50%!important;
  display:block!important;
  width:100vw!important;
  max-width:100vw!important;
  margin:0!important;
  padding:0!important;
  transform:translateX(-50%)!important;
  overflow:hidden!important;
  background:var(--hb-cream)!important;
  color:var(--hb-ink)!important;
  font-family:var(--hb-font)!important;
  -webkit-font-smoothing:antialiased!important;
  text-rendering:optimizeLegibility!important;
}
.hbcs-template-root .hbcs-root{
  left:auto!important;
  width:100%!important;
  max-width:100%!important;
  transform:none!important;
}
.hbcs-root,.hbcs-root *{box-sizing:border-box!important}
.hbcs-root .elementor-element,
.hbcs-root .elementor-widget,
.hbcs-root .elementor-widget-container,
.hbcs-root .e-con{min-width:0!important}
.hbcs-root>.e-con,
.hbcs-root .hbcs-section{width:100%!important;max-width:none!important;margin:0!important;padding-left:0!important;padding-right:0!important}
.hbcs-root .elementor-widget,.hbcs-root .elementor-widget-container{margin:0!important}
.hbcs-root p{margin:0!important}
.hbcs-root img{display:block!important;max-width:100%!important;height:auto!important}
.hbcs-root a{text-decoration:none!important}
.hbcs-root h1,
.hbcs-root h2,
.hbcs-root h3,
.hbcs-root .elementor-heading-title{
  margin:0!important;
  padding:0!important;
  color:var(--hb-plum)!important;
  font-family:var(--hb-font)!important;
  font-weight:500!important;
  text-transform:none!important;
}
.hbcs-root .elementor-widget-text-editor,
.hbcs-root .elementor-widget-text-editor p{
  color:var(--hb-muted)!important;
  font-family:var(--hb-font)!important;
}
.hbcs-root .hbcs-style-anchor{display:none!important}
.hbcs-root .hbcs-section{position:relative!important;isolation:isolate!important}
.hbcs-root .hbcs-shell{
  position:relative!important;
  z-index:2!important;
  width:min(90.2%,1320px)!important;
  max-width:1320px!important;
  margin-inline:auto!important;
  padding:0!important;
}
.hbcs-root .hbcs-svg{display:inline-flex!important;align-items:center!important;justify-content:center!important;color:var(--hb-rose-dark)!important}
.hbcs-root .hbcs-svg svg{display:block!important;width:100%!important;height:100%!important;fill:none!important;stroke:currentColor!important;stroke-linecap:round!important;stroke-linejoin:round!important;stroke-width:1.35!important}
.hbcs-root .hbcs-svg svg *{fill:none!important;stroke:currentColor!important}

/* Shared editorial type system: identical family and tone to the homepage. */
.hbcs-root .hbcs-kicker,.hbcs-root .hbcs-kicker p{
  color:var(--hb-rose-dark)!important;
  font-family:var(--hb-ui)!important;
  font-size:clamp(11px,.9vw,14px)!important;
  line-height:1.1!important;
  font-weight:600!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
.hbcs-root .hbcs-script,.hbcs-root .hbcs-script p{
  color:var(--hb-rose-dark)!important;
  font-family:var(--hb-font)!important;
  font-style:italic!important;
  font-weight:400!important;
  letter-spacing:-.015em!important;
}
.hbcs-root .hbcs-section-title{max-width:900px!important}
.hbcs-root .hbcs-section-title .elementor-heading-title{
  text-align:left!important;
  font-size:clamp(40px,3.45vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
}
.hbcs-root .hbcs-section-title:before{
  content:"";
  display:block;
  width:54px;
  height:1px;
  margin:0 0 17px;
  background:var(--hb-rose);
  opacity:.68;
}
.hbcs-root .hbcs-section-intro{
  max-width:770px!important;
  margin:14px 0 0!important;
  text-align:left!important;
}
.hbcs-root .hbcs-section-intro,
.hbcs-root .hbcs-section-intro p{
  color:var(--hb-muted)!important;
  font-size:clamp(15px,1.15vw,18px)!important;
  line-height:1.52!important;
}

/* Buttons intentionally mirror .ad-btn from the homepage. */
.hbcs-root .hbcs-primary-button .elementor-button,
.hbcs-root .hbcs-final-button .elementor-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:9px 28px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:linear-gradient(165deg,var(--hb-rose),var(--hb-rose-dark))!important;
  box-shadow:none!important;
  color:#fff!important;
  font-family:var(--hb-ui)!important;
  font-size:clamp(12px,1vw,15px)!important;
  font-weight:500!important;
  line-height:1.3!important;
  letter-spacing:0!important;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important;
}
.hbcs-root .hbcs-primary-button .elementor-button:hover,
.hbcs-root .hbcs-final-button .elementor-button:hover{
  transform:translateY(-2px)!important;
  background:var(--hb-rose-dark)!important;
  box-shadow:0 7px 18px rgba(119,64,59,.18)!important;
}
.hbcs-root .hbcs-primary-button .elementor-button-text,
.hbcs-root .hbcs-final-button .elementor-button-text{color:#fff!important}

/* 0.42: small Elementor-owned accents are visible again, now restrained and brand-aligned. */
.hbcs-root .hbcs-deco{
  display:block!important;
  position:absolute!important;
  z-index:3!important;
  width:132px!important;
  max-width:none!important;
  opacity:.46!important;
  pointer-events:none!important;
  filter:saturate(.82)!important;
}
.hbcs-root .hbcs-deco .elementor-widget-container,
.hbcs-root .hbcs-deco img{width:100%!important;height:auto!important}

/* ============================================================
   HERO — same vocabulary as homepage hero
   ============================================================ */
.hbcs-root .hbcs-hero{
  position:relative!important;
  overflow:hidden!important;
  padding:52px 0 60px!important;
  background:radial-gradient(ellipse at 30% 24%,rgba(255,255,255,.5),transparent 64%),var(--hb-cream)!important;
}
.hbcs-root .hbcs-hero:before{
  content:"";
  position:absolute;
  inset:-88px 0 0;
  z-index:0;
  background:url('../images/hero-waves.svg') center/100% 100% no-repeat;
  opacity:.72;
  pointer-events:none;
}
.hbcs-root .hbcs-hero:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:url('../images/paper-grain.svg');
  opacity:.055;
  mix-blend-mode:multiply;
  pointer-events:none;
}
.hbcs-root .hbcs-hero-grid{
  position:relative!important;
  z-index:2!important;
  display:grid!important;
  grid-template-columns:minmax(0,.96fr) minmax(460px,1.04fr)!important;
  gap:clamp(38px,4.4vw,70px)!important;
  align-items:center!important;
  width:min(85.7%,1250px)!important;
  max-width:1250px!important;
  min-height:570px!important;
  margin:0 auto!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.hbcs-root .hbcs-hero-grid>.e-con{width:auto!important;max-width:none!important;margin:0!important;flex:none!important}
.hbcs-root .hbcs-hero-copy{
  position:relative!important;
  z-index:4!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  padding:34px 0!important;
  overflow:visible!important;
  background:transparent!important;
}
.hbcs-root .hbcs-hero-copy:after{display:none!important}
.hbcs-root .hbcs-hero-title{margin-top:12px!important}
.hbcs-root .hbcs-hero-title .elementor-heading-title{
  font-size:clamp(58px,5.15vw,78px)!important;
  line-height:.92!important;
  letter-spacing:-.05em!important;
  white-space:normal!important;
}
.hbcs-root .hbcs-hero-title:after{
  content:"";
  display:block;
  width:72px;
  height:1px;
  margin-top:20px;
  background:var(--hb-rose);
  opacity:.72;
}
.hbcs-root .hbcs-hero-subtitle{margin-top:18px!important;max-width:610px!important}
.hbcs-root .hbcs-hero-subtitle .elementor-heading-title{
  color:var(--hb-plum)!important;
  font-size:clamp(23px,2vw,31px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  font-weight:500!important;
}
.hbcs-root .hbcs-hero-body{max-width:610px!important;margin-top:17px!important}
.hbcs-root .hbcs-hero-body,.hbcs-root .hbcs-hero-body p{
  color:var(--hb-muted)!important;
  font-size:clamp(15px,1.2vw,18px)!important;
  line-height:1.48!important;
}
.hbcs-root .hbcs-hero-badges{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:11px!important;
  width:100%!important;
  max-width:650px!important;
  margin-top:25px!important;
}
.hbcs-root .hbcs-badge{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:7px!important;
  width:auto!important;
  min-height:96px!important;
  padding:13px 11px 12px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.hbcs-root .hbcs-badge-icon{width:42px!important;max-width:42px!important;flex:0 0 42px!important}
.hbcs-root .hbcs-badge-icon .elementor-widget-container{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#e9cbbc,#f7ede5)!important;
  color:#754840!important;
}
.hbcs-root .hbcs-badge-icon .hbcs-svg{width:22px!important;height:22px!important;color:#754840!important}
.hbcs-root .hbcs-badge-text,.hbcs-root .hbcs-badge-text p{
  color:#514744!important;
  font-size:13px!important;
  line-height:1.22!important;
  white-space:normal!important;
}
.hbcs-root .hbcs-hero-actions{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:17px!important;
  margin-top:20px!important;
}
.hbcs-root .hbcs-price,.hbcs-root .hbcs-price p{
  color:var(--hb-muted)!important;
  font-family:var(--hb-ui)!important;
  font-size:14px!important;
  line-height:1.3!important;
}
.hbcs-root .hbcs-price strong{color:var(--hb-plum)!important;font-weight:600!important}
.hbcs-root .hbcs-hero-visual{
  position:relative!important;
  z-index:3!important;
  min-height:560px!important;
  overflow:visible!important;
  background:transparent!important;
}
.hbcs-root .hbcs-hero-visual:before{
  content:"";
  position:absolute;
  z-index:0;
  left:3%;
  top:0;
  width:78%;
  height:100%;
  border-radius:50% 50% 18px 18px / 24% 24% 18px 18px;
  background:linear-gradient(180deg,#ead7cf 0%,#f1e4dc 100%);
}
.hbcs-root .hbcs-hero-image{
  position:absolute!important;
  z-index:2!important;
  left:8%!important;
  bottom:0!important;
  width:72%!important;
  height:94%!important;
  overflow:hidden!important;
  border-radius:48% 48% 14px 14px / 22% 22% 14px 14px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  box-shadow:0 20px 48px rgba(84,51,48,.11)!important;
}
.hbcs-root .hbcs-hero-image .elementor-widget-container{width:100%!important;height:100%!important}
.hbcs-root .hbcs-hero-image img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 40%!important;
}
.hbcs-root .hbcs-hero-botanical{
  position:absolute!important;
  z-index:3!important;
  right:0!important;
  bottom:-5px!important;
  width:128px!important;
  opacity:.48!important;
  transform:rotate(-6deg)!important;
  pointer-events:none!important;
}
.hbcs-root .hbcs-hero-script{
  position:absolute!important;
  z-index:5!important;
  right:0!important;
  top:50px!important;
  width:220px!important;
  padding:22px 22px 20px!important;
  border:1px solid rgba(255,255,255,.82)!important;
  border-radius:22px!important;
  background:rgba(255,250,246,.91)!important;
  box-shadow:0 16px 42px rgba(84,51,48,.10)!important;
  transform:rotate(-2deg)!important;
  backdrop-filter:blur(6px)!important;
}
.hbcs-root .hbcs-hero-script,.hbcs-root .hbcs-hero-script p{
  color:var(--hb-rose-dark)!important;
  font-size:clamp(23px,1.8vw,29px)!important;
  line-height:1.02!important;
}
.hbcs-root .hbcs-hero-books{
  position:absolute!important;
  z-index:4!important;
  right:24px!important;
  bottom:30px!important;
  width:190px!important;
}
.hbcs-root .hbcs-book-stack{display:grid!important;gap:4px!important}
.hbcs-root .hbcs-book-stack span{
  display:block!important;
  width:max-content!important;
  max-width:100%!important;
  padding:5px 12px!important;
  border:1px solid rgba(135,74,76,.15)!important;
  background:rgba(255,250,246,.86)!important;
  color:var(--hb-rose-dark)!important;
  font-family:var(--hb-ui)!important;
  font-size:9px!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.12em!important;
}
.hbcs-root .hbcs-book-stack span:nth-child(2){margin-left:12px!important;background:rgba(237,218,207,.9)!important}
.hbcs-root .hbcs-book-stack span:nth-child(3){margin-left:24px!important;background:rgba(244,233,224,.94)!important}

/* ============================================================
   CHALLENGE — clean diagnosis cards, same icon language as home
   ============================================================ */
.hbcs-root .hbcs-challenge{
  padding:82px 0 86px!important;
  overflow:hidden!important;
  background:var(--hb-paper)!important;
}
.hbcs-root .hbcs-challenge:before{
  content:"";
  position:absolute;
  left:-92px;
  bottom:-88px;
  z-index:0;
  width:230px;
  height:380px;
  background:url('../images/botanical-rose.svg') center/contain no-repeat;
  opacity:.18;
  transform:rotate(24deg);
  pointer-events:none;
}
.hbcs-root .hbcs-challenge-title{max-width:1040px!important}
.hbcs-root .hbcs-challenge-title .elementor-heading-title{font-size:clamp(38px,3.15vw,50px)!important}
.hbcs-root .hbcs-challenge .hbcs-section-intro{max-width:850px!important}
.hbcs-root .hbcs-grid{display:grid!important;width:100%!important}
.hbcs-root .hbcs-challenge-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
  margin-top:36px!important;
}
.hbcs-root .hbcs-card{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  min-height:270px!important;
  padding:27px 24px 25px!important;
  overflow:hidden!important;
  border:1px solid var(--hb-border)!important;
  border-radius:22px!important;
  background:rgba(255,250,246,.84)!important;
  box-shadow:var(--hb-shadow)!important;
}
.hbcs-root .hbcs-card:after{
  content:"";
  position:absolute;
  right:-34px;
  bottom:-54px;
  width:115px;
  height:175px;
  background:url('../images/botanical-rose.svg') center/contain no-repeat;
  opacity:.075;
  transform:rotate(-16deg);
  pointer-events:none;
}
.hbcs-root .hbcs-card-icon{
  width:54px!important;
  max-width:54px!important;
  margin-bottom:18px!important;
}
.hbcs-root .hbcs-card-icon .elementor-widget-container{
  display:grid!important;
  place-items:center!important;
  width:54px!important;
  height:54px!important;
  border:1px solid rgba(255,255,255,.78)!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#e9cbbc,#f7ede5)!important;
  color:#754840!important;
}
.hbcs-root .hbcs-card-icon .hbcs-svg{width:29px!important;height:29px!important;color:#754840!important}
.hbcs-root .hbcs-card-title .elementor-heading-title{
  color:var(--hb-plum)!important;
  font-size:clamp(21px,1.6vw,25px)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
}
.hbcs-root .hbcs-card-body{margin-top:10px!important;position:relative!important;z-index:1!important}
.hbcs-root .hbcs-card-body,.hbcs-root .hbcs-card-body p{
  color:var(--hb-muted)!important;
  font-size:14px!important;
  line-height:1.48!important;
}

/* ============================================================
   AUDIT — photographic editorial split, not abstract artwork
   ============================================================ */
.hbcs-root .hbcs-audit{
  padding:88px 0!important;
  overflow:hidden!important;
  background:linear-gradient(115deg,#f7ebe7 0%,var(--hb-cream-2) 100%)!important;
}
.hbcs-root .hbcs-audit:after{
  content:"";
  position:absolute;
  right:-65px;
  top:12px;
  z-index:0;
  width:190px;
  height:360px;
  background:url('../images/botanical.svg') center/contain no-repeat;
  opacity:.32;
  transform:rotate(-8deg);
  pointer-events:none;
}
.hbcs-root .hbcs-audit-grid{
  display:grid!important;
  grid-template-columns:minmax(380px,.92fr) minmax(0,1.08fr)!important;
  grid-template-areas:"art main" "art side"!important;
  gap:22px 64px!important;
  align-items:center!important;
}
.hbcs-root .hbcs-audit-grid>.e-con,.hbcs-root .hbcs-audit-grid>.elementor-widget{width:auto!important;max-width:none!important;margin:0!important;flex:none!important}
.hbcs-root .hbcs-audit-art{
  grid-area:art!important;
  position:relative!important;
  min-height:510px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.7)!important;
  border-radius:72px 58px 70px 54px!important;
  background:var(--hb-paper)!important;
  box-shadow:0 18px 46px rgba(84,51,48,.09)!important;
}
.hbcs-root .hbcs-audit-art-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
.hbcs-root .hbcs-audit-art-image .elementor-widget-container{width:100%!important;height:100%!important}
.hbcs-root .hbcs-audit-art-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;transform:scale(1.02)!important}
.hbcs-root .hbcs-audit-art:after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  background:linear-gradient(145deg,transparent 55%,rgba(255,250,246,.18));
  pointer-events:none;
}
/* 0.47: safety guard for cached/pre-migration Elementor data.
   The strategy message already lives inside the artwork and must not be duplicated. */
.hbcs-root .hbcs-audit-art-premium .hbcs-audit-note{display:none!important}
.hbcs-root .hbcs-audit-botanical{
  position:absolute!important;
  z-index:3!important;
  right:-20px!important;
  bottom:-42px!important;
  width:145px!important;
  opacity:.42!important;
  transform:rotate(-12deg)!important;
  pointer-events:none!important;
}
.hbcs-root .hbcs-audit-books{display:none!important}
.hbcs-root .hbcs-audit-main{grid-area:main!important;align-self:end!important;padding-top:10px!important}
.hbcs-root .hbcs-audit-title{max-width:630px!important}
.hbcs-root .hbcs-audit-title .elementor-heading-title{font-size:clamp(42px,3.6vw,56px)!important}
.hbcs-root .hbcs-audit-body{max-width:650px!important;margin-top:18px!important}
.hbcs-root .hbcs-audit-body,.hbcs-root .hbcs-audit-body p{color:#514b48!important;font-size:16px!important;line-height:1.55!important}
.hbcs-root .hbcs-audit-callout{
  max-width:620px!important;
  margin-top:22px!important;
  padding:16px 0 16px 22px!important;
  border-left:2px solid var(--hb-rose)!important;
}
.hbcs-root .hbcs-audit-callout,.hbcs-root .hbcs-audit-callout p{
  color:var(--hb-rose-dark)!important;
  font-size:clamp(20px,1.65vw,25px)!important;
  font-style:italic!important;
  line-height:1.18!important;
}
.hbcs-root .hbcs-audit-side{
  grid-area:side!important;
  align-self:start!important;
  max-width:650px!important;
  padding:18px 20px!important;
  border:1px solid rgba(120,77,62,.10)!important;
  border-radius:16px!important;
  background:rgba(255,250,246,.58)!important;
}
.hbcs-root .hbcs-audit-side,.hbcs-root .hbcs-audit-side p{color:var(--hb-muted)!important;font-size:14px!important;line-height:1.5!important}

/* ============================================================
   SESSION — structured service cards
   ============================================================ */
.hbcs-root .hbcs-session{
  padding:88px 0 94px!important;
  overflow:hidden!important;
  background:var(--hb-paper)!important;
}
.hbcs-root .hbcs-session:after{
  content:"";
  position:absolute;
  right:-70px;
  bottom:-92px;
  width:225px;
  height:400px;
  background:url('../images/botanical-green.svg') center/contain no-repeat;
  opacity:.12;
  transform:rotate(-15deg);
  pointer-events:none;
}
.hbcs-root .hbcs-session-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:16px!important;
  margin-top:34px!important;
}
.hbcs-root .hbcs-session-card{
  min-height:220px!important;
  padding:28px 30px 27px 104px!important;
  justify-content:center!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,#fffaf6 0%,rgba(244,233,224,.64) 100%)!important;
}
.hbcs-root .hbcs-session-card:after{opacity:.05!important}
.hbcs-root .hbcs-session-card .hbcs-card-icon{
  position:absolute!important;
  left:28px!important;
  top:30px!important;
  margin:0!important;
}
.hbcs-root .hbcs-session-card:nth-child(even) .hbcs-card-icon .elementor-widget-container{
  background:linear-gradient(135deg,rgba(130,131,111,.17),rgba(255,250,246,.9))!important;
  color:var(--hb-sage)!important;
}
.hbcs-root .hbcs-session-card:nth-child(even) .hbcs-card-icon .hbcs-svg{color:var(--hb-sage)!important}

/* ============================================================
   FIT — compact two-column composition, aligned with site language
   ============================================================ */
.hbcs-root .hbcs-fit{
  padding:80px 0 84px!important;
  overflow:hidden!important;
  background:linear-gradient(115deg,#f7ebe7 0%,#faefec 100%)!important;
}
.hbcs-root .hbcs-fit:before{
  content:"";
  position:absolute;
  left:-62px;
  bottom:-125px;
  z-index:0;
  width:235px;
  height:420px;
  background:url('../images/botanical-rose.svg') center/contain no-repeat;
  opacity:.20;
  transform:rotate(30deg);
  pointer-events:none;
}
.hbcs-root .hbcs-fit-shell{
  display:grid!important;
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important;
  grid-template-areas:"title cards" "intro cards" "note cards"!important;
  column-gap:68px!important;
  align-items:start!important;
}
.hbcs-root .hbcs-fit-shell>.elementor-widget,.hbcs-root .hbcs-fit-shell>.e-con{width:auto!important;max-width:none!important;margin:0!important;flex:none!important}
.hbcs-root .hbcs-fit .hbcs-section-title{grid-area:title!important;max-width:470px!important}
.hbcs-root .hbcs-fit .hbcs-section-title .elementor-heading-title{font-size:clamp(42px,3.55vw,56px)!important}
.hbcs-root .hbcs-fit .hbcs-section-intro{grid-area:intro!important;max-width:440px!important;margin-top:22px!important}
.hbcs-root .hbcs-fit-grid{
  grid-area:cards!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  width:100%!important;
}
.hbcs-root .hbcs-fit-pill{
  position:relative!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:15px!important;
  min-height:132px!important;
  padding:24px 25px!important;
  overflow:hidden!important;
  border:1px solid rgba(120,77,62,.12)!important;
  border-radius:20px!important;
  background:rgba(255,250,246,.84)!important;
  box-shadow:0 12px 32px rgba(120,77,62,.045)!important;
}
.hbcs-root .hbcs-fit-pill:before{
  content:"";
  position:absolute;
  left:24px;
  top:0;
  width:44px;
  height:1px;
  background:var(--hb-rose);
  opacity:.78;
}
.hbcs-root .hbcs-fit-pill:nth-child(even):before{background:var(--hb-sage)!important}
.hbcs-root .hbcs-fit-check{width:42px!important;max-width:42px!important;flex:0 0 42px!important}
.hbcs-root .hbcs-pill-check{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  border-radius:50%!important;
  background:rgba(167,105,105,.12)!important;
  color:var(--hb-rose-dark)!important;
  font-family:var(--hb-ui)!important;
  font-size:18px!important;
  font-weight:600!important;
}
.hbcs-root .hbcs-fit-pill:nth-child(even) .hbcs-pill-check{background:rgba(130,131,111,.13)!important;color:var(--hb-sage)!important}
.hbcs-root .hbcs-fit-text,.hbcs-root .hbcs-fit-text p{
  color:#4d4542!important;
  font-size:16px!important;
  line-height:1.28!important;
}
.hbcs-root .hbcs-fit-note{
  grid-area:note!important;
  align-self:end!important;
  max-width:390px!important;
  margin-top:28px!important;
  padding:18px 0 0 22px!important;
  border-left:1px solid rgba(167,105,105,.62)!important;
  transform:none!important;
}
.hbcs-root .hbcs-fit-note,.hbcs-root .hbcs-fit-note p{
  color:var(--hb-rose-dark)!important;
  font-size:clamp(24px,2vw,31px)!important;
  line-height:1.02!important;
}

/* ============================================================
   RECEIVE — benefits grid using homepage-style icon circles
   ============================================================ */
.hbcs-root .hbcs-receive{
  padding:88px 0 94px!important;
  overflow:hidden!important;
  background:var(--hb-cream)!important;
}
.hbcs-root .hbcs-receive:before{
  content:"";
  position:absolute;
  inset:auto 0 0;
  z-index:0;
  height:230px;
  background:url('../images/process-waves.svg') center bottom/100% 100% no-repeat;
  opacity:.46;
  pointer-events:none;
}
.hbcs-root .hbcs-receive-grid{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:36px!important;
}
.hbcs-root .hbcs-receive-card{
  min-height:300px!important;
  padding:26px 22px 24px!important;
  text-align:left!important;
  background:rgba(255,250,246,.88)!important;
}
.hbcs-root .hbcs-receive-card .hbcs-card-icon .elementor-widget-container{background:linear-gradient(135deg,#e9cbbc,#f7ede5)!important}
.hbcs-root .hbcs-receive-card:nth-child(even) .hbcs-card-icon .elementor-widget-container{background:linear-gradient(135deg,rgba(130,131,111,.17),rgba(255,250,246,.92))!important}
.hbcs-root .hbcs-receive-card:nth-child(even) .hbcs-card-icon .hbcs-svg{color:var(--hb-sage)!important}

/* ============================================================
   WHY — photo-led editorial section inspired by About/Home
   ============================================================ */
.hbcs-root .hbcs-why{
  padding:88px 0 96px!important;
  overflow:hidden!important;
  background:linear-gradient(120deg,#f3e5df 0%,#fffaf6 52%,#eef0e9 100%)!important;
}
.hbcs-root .hbcs-why:after{
  content:"";
  position:absolute;
  right:-54px;
  bottom:-94px;
  z-index:0;
  width:245px;
  height:425px;
  background:url('../images/botanical-green.svg') center/contain no-repeat;
  opacity:.19;
  transform:rotate(-10deg);
  pointer-events:none;
}
.hbcs-root .hbcs-why-grid{
  display:grid!important;
  grid-template-columns:minmax(390px,.88fr) minmax(0,1.12fr)!important;
  gap:58px!important;
  align-items:stretch!important;
  margin-top:36px!important;
}
.hbcs-root .hbcs-why-grid>.e-con{width:auto!important;max-width:none!important;margin:0!important;flex:none!important}
.hbcs-root .hbcs-why-image-wrap{
  position:relative!important;
  min-height:590px!important;
  overflow:visible!important;
}
.hbcs-root .hbcs-why-image-wrap:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:88%;
  height:100%;
  border-radius:48% 48% 22px 22px / 20% 20% 22px 22px;
  background:var(--hb-blush);
}
.hbcs-root .hbcs-why-image{
  position:absolute!important;
  z-index:2!important;
  left:5%!important;
  bottom:0!important;
  width:78%!important;
  height:96%!important;
  overflow:hidden!important;
  border-radius:47% 47% 18px 18px / 19% 19% 18px 18px!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 18px 42px rgba(84,51,48,.10)!important;
}
.hbcs-root .hbcs-why-image .elementor-widget-container{width:100%!important;height:100%!important}
.hbcs-root .hbcs-why-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 36%!important}
.hbcs-root .hbcs-why-script{
  position:absolute!important;
  z-index:4!important;
  right:0!important;
  bottom:50px!important;
  width:200px!important;
  padding:18px 19px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  border-radius:20px!important;
  background:rgba(255,250,246,.91)!important;
  box-shadow:0 12px 28px rgba(84,51,48,.08)!important;
  transform:rotate(-4deg)!important;
}
.hbcs-root .hbcs-why-script,.hbcs-root .hbcs-why-script p{font-size:27px!important;line-height:1!important}
.hbcs-root .hbcs-credentials-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  align-content:center!important;
}
.hbcs-root .hbcs-credential{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:12px!important;
  min-height:250px!important;
  padding:25px 23px!important;
  border:1px solid rgba(120,77,62,.12)!important;
  border-radius:20px!important;
  background:rgba(255,250,246,.82)!important;
  box-shadow:0 12px 30px rgba(120,77,62,.045)!important;
}
.hbcs-root .hbcs-credential-icon{width:50px!important;max-width:50px!important;flex:0 0 50px!important}
.hbcs-root .hbcs-credential-icon .elementor-widget-container{
  display:grid!important;
  place-items:center!important;
  width:50px!important;
  height:50px!important;
  border-radius:50%!important;
  background:rgba(237,218,207,.72)!important;
}
.hbcs-root .hbcs-credential-icon .hbcs-svg{width:27px!important;height:27px!important}
.hbcs-root .hbcs-credential-copy{display:flex!important;flex-direction:column!important;gap:8px!important}
.hbcs-root .hbcs-credential-title .elementor-heading-title{font-size:21px!important;line-height:1.08!important;letter-spacing:-.025em!important}
.hbcs-root .hbcs-credential-body,.hbcs-root .hbcs-credential-body p{color:var(--hb-muted)!important;font-size:13.5px!important;line-height:1.48!important}

/* ============================================================
   HOW — warm process strip inspired by homepage process section
   ============================================================ */
.hbcs-root .hbcs-how{
  padding:84px 0 96px!important;
  overflow:hidden!important;
  background:var(--hb-paper)!important;
}
.hbcs-root .hbcs-how:before{
  content:"";
  position:absolute;
  inset:auto 0 0;
  z-index:0;
  height:250px;
  background:url('../images/process-waves.svg') center bottom/100% 100% no-repeat;
  opacity:.58;
  pointer-events:none;
}
.hbcs-root .hbcs-how:after{
  content:"";
  position:absolute;
  right:-22px;
  bottom:0;
  z-index:1;
  width:140px;
  height:230px;
  background:url('../images/botanical.svg') center/contain no-repeat;
  opacity:.54;
  transform:rotate(8deg);
  pointer-events:none;
}
.hbcs-root .hbcs-steps-grid{
  position:relative!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  margin-top:36px!important;
}
.hbcs-root .hbcs-step{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:16px!important;
  min-height:245px!important;
  padding:27px 26px!important;
  border:1px solid rgba(120,77,62,.12)!important;
  border-radius:20px!important;
  background:rgba(255,250,246,.88)!important;
  box-shadow:var(--hb-shadow)!important;
}
.hbcs-root .hbcs-step-number{width:52px!important;max-width:52px!important}
.hbcs-root .hbcs-step-num{
  display:grid!important;
  place-items:center!important;
  width:52px!important;
  height:52px!important;
  border-radius:50%!important;
  background:linear-gradient(135deg,#e9cbbc,#f7ede5)!important;
  color:var(--hb-rose-dark)!important;
  font-family:var(--hb-font)!important;
  font-size:25px!important;
  font-style:italic!important;
  line-height:1!important;
}
.hbcs-root .hbcs-step:nth-child(2) .hbcs-step-num{background:rgba(130,131,111,.14)!important;color:var(--hb-sage)!important}
.hbcs-root .hbcs-step-copy{display:flex!important;flex-direction:column!important;gap:9px!important}
.hbcs-root .hbcs-step-title .elementor-heading-title{font-size:23px!important;line-height:1.08!important;letter-spacing:-.025em!important}
.hbcs-root .hbcs-step-body,.hbcs-root .hbcs-step-body p{color:var(--hb-muted)!important;font-size:14px!important;line-height:1.48!important}

/* ============================================================
   FAQ — calm editorial cards
   ============================================================ */
.hbcs-root .hbcs-faq{
  padding:84px 0 90px!important;
  overflow:hidden!important;
  background:linear-gradient(115deg,rgba(255,255,255,.24),rgba(237,218,207,.22)),var(--hb-cream)!important;
}
.hbcs-root .hbcs-faq-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  margin-top:34px!important;
}
.hbcs-root .hbcs-faq-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:16px!important;
  min-height:250px!important;
  padding:25px 24px!important;
  border:1px solid rgba(120,77,62,.12)!important;
  border-radius:20px!important;
  background:rgba(255,250,246,.82)!important;
  box-shadow:0 12px 32px rgba(120,77,62,.04)!important;
}
.hbcs-root .hbcs-faq-icon{width:48px!important;max-width:48px!important;flex:0 0 48px!important}
.hbcs-root .hbcs-faq-icon .elementor-widget-container{
  display:grid!important;
  place-items:center!important;
  width:48px!important;
  height:48px!important;
  border-radius:50%!important;
  background:rgba(237,218,207,.72)!important;
}
.hbcs-root .hbcs-faq-icon .hbcs-svg{width:25px!important;height:25px!important}
.hbcs-root .hbcs-faq-copy{display:flex!important;flex-direction:column!important;gap:9px!important}
.hbcs-root .hbcs-faq-question .elementor-heading-title{font-size:21px!important;line-height:1.1!important;letter-spacing:-.025em!important}
.hbcs-root .hbcs-faq-answer,.hbcs-root .hbcs-faq-answer p{color:var(--hb-muted)!important;font-size:14px!important;line-height:1.5!important}

/* ============================================================
   FINAL CTA — brand-colored close, still using homepage button language
   ============================================================ */
.hbcs-root .hbcs-final-cta{
  padding:74px 0 82px!important;
  overflow:hidden!important;
  background:var(--hb-paper)!important;
}
.hbcs-root .hbcs-final-inner{
  position:relative!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:42px!important;
  min-height:300px!important;
  padding:54px 62px!important;
  overflow:hidden!important;
  border:1px solid rgba(120,77,62,.12)!important;
  border-radius:28px!important;
  background:linear-gradient(120deg,var(--hb-cream-2) 0%,var(--hb-blush) 100%)!important;
  box-shadow:0 18px 46px rgba(84,51,48,.07)!important;
}
.hbcs-root .hbcs-final-inner:before{
  content:"";
  position:absolute;
  right:-35px;
  bottom:-100px;
  width:230px;
  height:400px;
  background:url('../images/botanical-rose.svg') center/contain no-repeat;
  opacity:.26;
  transform:rotate(-14deg);
  pointer-events:none;
}
.hbcs-root .hbcs-final-inner:after{
  content:"";
  position:absolute;
  right:205px;
  top:-92px;
  width:145px;
  height:270px;
  background:url('../images/botanical.svg') center/contain no-repeat;
  opacity:.24;
  transform:rotate(32deg);
  pointer-events:none;
}
.hbcs-root .hbcs-final-copy,.hbcs-root .hbcs-final-script{position:relative!important;z-index:2!important}
.hbcs-root .hbcs-final-copy{flex:1 1 auto!important;width:auto!important;max-width:920px!important}
.hbcs-root .hbcs-final-inner>.e-con,.hbcs-root .hbcs-final-inner>.elementor-widget{width:auto!important;max-width:none!important;margin:0!important}
.hbcs-root .hbcs-final-title .elementor-heading-title{
  color:var(--hb-plum)!important;
  font-size:clamp(40px,3.45vw,54px)!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
.hbcs-root .hbcs-final-body{max-width:720px!important;margin-top:16px!important}
.hbcs-root .hbcs-final-body,.hbcs-root .hbcs-final-body p{color:#514744!important;font-size:16px!important;line-height:1.48!important}
.hbcs-root .hbcs-final-actions{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:18px!important;margin-top:24px!important}
.hbcs-root .hbcs-final-price,.hbcs-root .hbcs-final-price p{color:var(--hb-muted)!important;font-family:var(--hb-ui)!important;font-size:14px!important}
.hbcs-root .hbcs-final-price strong{color:var(--hb-plum)!important}
.hbcs-root .hbcs-final-script{flex:0 0 190px!important;width:190px!important;text-align:center!important;transform:rotate(-5deg)!important}
.hbcs-root .hbcs-final-script,.hbcs-root .hbcs-final-script p{color:var(--hb-rose-dark)!important;font-size:31px!important;line-height:1!important}


/* ============================================================
   0.42 WOW LAYER — richer page-wide graphic rhythm
   Decorative only: no text, CTA, section order or Elementor content changes.
   ============================================================ */
.hbcs-root .hbcs-hero-grid:before,
.hbcs-root .hbcs-hero-grid:after,
.hbcs-root .hbcs-challenge .hbcs-shell:after,
.hbcs-root .hbcs-audit-grid:before,
.hbcs-root .hbcs-audit-grid:after,
.hbcs-root .hbcs-session .hbcs-shell:before,
.hbcs-root .hbcs-fit-shell:after,
.hbcs-root .hbcs-receive .hbcs-shell:after,
.hbcs-root .hbcs-why .hbcs-shell:before,
.hbcs-root .hbcs-how .hbcs-shell:after,
.hbcs-root .hbcs-faq .hbcs-shell:before,
.hbcs-root .hbcs-final-copy:before,
.hbcs-root .hbcs-final-script:before{
  content:"";
  position:absolute;
  pointer-events:none;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}

/* Hero: orbit + petal constellation frames the editorial photo without covering copy. */
.hbcs-root .hbcs-hero-grid:before{
  z-index:1;
  right:-176px;
  top:-122px;
  width:520px;
  height:520px;
  background-image:url('../images/hbcs-deco-orbit.svg');
  opacity:.48;
  transform:rotate(10deg);
}
.hbcs-root .hbcs-hero-grid:after{
  z-index:1;
  left:-158px;
  bottom:-122px;
  width:320px;
  height:248px;
  background-image:url('../images/hbcs-deco-petals.svg');
  opacity:.24;
  transform:rotate(-12deg);
}

/* Section-to-section thread gives the long page a deliberate visual cadence. */
.hbcs-root .hbcs-challenge .hbcs-shell:after{
  z-index:0;
  left:14%;
  bottom:-84px;
  width:88%;
  height:180px;
  background-image:url('../images/hbcs-deco-thread.svg');
  opacity:.20;
}
.hbcs-root .hbcs-session .hbcs-shell:before{
  z-index:0;
  right:-190px;
  top:-112px;
  width:420px;
  height:420px;
  background-image:url('../images/hbcs-deco-orbit.svg');
  opacity:.24;
  transform:rotate(-18deg);
}
.hbcs-root .hbcs-fit-shell:after{
  z-index:0;
  left:18%;
  bottom:-104px;
  width:92%;
  height:190px;
  background-image:url('../images/hbcs-deco-thread.svg');
  opacity:.18;
  transform:rotate(-2deg);
}
.hbcs-root .hbcs-how .hbcs-shell:after{
  z-index:0;
  left:4%;
  top:46px;
  width:94%;
  height:150px;
  background-image:url('../images/hbcs-deco-thread.svg');
  opacity:.13;
}

/* Audit: the new high-resolution artwork gets an architectural halo and micro-spark. */
.hbcs-root .hbcs-audit-grid{position:relative!important}
.hbcs-root .hbcs-audit-grid:before{
  z-index:0;
  left:-188px;
  top:-150px;
  width:610px;
  height:476px;
  background-image:url('../images/hbcs-deco-arches.svg');
  opacity:.58;
}
.hbcs-root .hbcs-audit-grid:after{
  z-index:1;
  right:4%;
  top:-76px;
  width:156px;
  height:132px;
  background-image:url('../images/hbcs-deco-spark.svg');
  opacity:.34;
  transform:rotate(9deg);
}
.hbcs-root .hbcs-audit-grid>.e-con,
.hbcs-root .hbcs-audit-grid>.elementor-widget{position:relative!important;z-index:2!important}
.hbcs-root .hbcs-audit-art{
  box-shadow:0 24px 62px rgba(84,51,48,.13)!important;
}
.hbcs-root .hbcs-audit-art:before{
  content:"";
  position:absolute;
  z-index:3;
  inset:14px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:60px 48px 58px 44px;
  pointer-events:none;
}
.hbcs-root .hbcs-audit-art-image img{
  transform:scale(1.005)!important;
  image-rendering:auto!important;
}

/* Reintroduced Elementor sparks, each placed in negative space instead of over content. */
.hbcs-root .hbcs-challenge-spark{right:-26px!important;top:-48px!important;width:126px!important;transform:rotate(8deg)!important}
.hbcs-root .hbcs-fit-shell>.hbcs-fit-spark{left:-74px!important;top:44%!important;width:138px!important;max-width:none!important;opacity:.34!important;transform:rotate(-16deg)!important}
.hbcs-root .hbcs-receive-spark{right:-52px!important;top:-56px!important;width:142px!important;transform:rotate(12deg)!important}
.hbcs-root .hbcs-how-spark{left:-58px!important;bottom:-40px!important;width:132px!important;opacity:.34!important;transform:rotate(-8deg)!important}
.hbcs-root .hbcs-faq-spark{right:-38px!important;top:-54px!important;width:140px!important;transform:rotate(12deg)!important}

/* Benefits / credentials get botanical line-art depth behind the grids. */
.hbcs-root .hbcs-receive .hbcs-shell:after{
  z-index:0;
  right:-180px;
  bottom:-146px;
  width:390px;
  height:300px;
  background-image:url('../images/hbcs-deco-petals.svg');
  opacity:.24;
  transform:rotate(9deg);
}
.hbcs-root .hbcs-why .hbcs-shell:before{
  z-index:0;
  right:-182px;
  top:-92px;
  width:560px;
  height:438px;
  background-image:url('../images/hbcs-deco-arches.svg');
  opacity:.42;
  transform:rotate(4deg);
}
.hbcs-root .hbcs-faq .hbcs-shell:before{
  z-index:0;
  left:-214px;
  bottom:-170px;
  width:430px;
  height:430px;
  background-image:url('../images/hbcs-deco-orbit.svg');
  opacity:.22;
  transform:rotate(14deg);
}

/* A little more depth on the card surfaces, without changing content or sizing. */
.hbcs-root .hbcs-card,
.hbcs-root .hbcs-fit-pill,
.hbcs-root .hbcs-credential,
.hbcs-root .hbcs-step,
.hbcs-root .hbcs-faq-card{
  background-image:
    radial-gradient(circle at 91% 12%,rgba(167,105,105,.10) 0 3px,transparent 3.8px),
    radial-gradient(circle at 95% 18%,rgba(130,131,111,.10) 0 2px,transparent 2.8px)!important;
  background-repeat:no-repeat!important;
}
.hbcs-root .hbcs-session-card{
  background-image:
    radial-gradient(circle at 93% 13%,rgba(167,105,105,.09) 0 3px,transparent 3.8px),
    linear-gradient(135deg,#fffaf6 0%,rgba(244,233,224,.64) 100%)!important;
}
.hbcs-root .hbcs-receive-card{background-color:rgba(255,250,246,.88)!important}

/* Final CTA: richer blush/sage light, plus a quiet constellation around the script. */
.hbcs-root .hbcs-final-inner{
  background:
    radial-gradient(circle at 83% 18%,rgba(255,255,255,.48),transparent 28%),
    radial-gradient(circle at 8% 92%,rgba(130,131,111,.13),transparent 24%),
    linear-gradient(120deg,var(--hb-cream-2) 0%,var(--hb-blush) 100%)!important;
}
.hbcs-root .hbcs-final-copy:before{
  z-index:0;
  left:-82px;
  top:-82px;
  width:156px;
  height:132px;
  background-image:url('../images/hbcs-deco-spark.svg');
  opacity:.24;
  transform:rotate(-10deg);
}
.hbcs-root .hbcs-final-copy>*{position:relative!important;z-index:1!important}
.hbcs-root .hbcs-final-script:before{
  z-index:0;
  left:50%;
  top:50%;
  width:270px;
  height:270px;
  background-image:url('../images/hbcs-deco-orbit.svg');
  opacity:.18;
  transform:translate(-50%,-50%) rotate(-14deg);
}
.hbcs-root .hbcs-final-script .elementor-widget-container{position:relative!important;z-index:1!important}

/* Hover polish is additive and only appears on devices that actually hover. */
@media (hover:hover) and (pointer:fine){
  .hbcs-root .hbcs-card,
  .hbcs-root .hbcs-fit-pill,
  .hbcs-root .hbcs-credential,
  .hbcs-root .hbcs-step,
  .hbcs-root .hbcs-faq-card{transition:transform .24s ease,box-shadow .24s ease!important}
  .hbcs-root .hbcs-card:hover,
  .hbcs-root .hbcs-fit-pill:hover,
  .hbcs-root .hbcs-credential:hover,
  .hbcs-root .hbcs-step:hover,
  .hbcs-root .hbcs-faq-card:hover{transform:translateY(-4px)!important;box-shadow:0 18px 42px rgba(120,77,62,.09)!important}
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1180px){
  .hbcs-root .hbcs-hero-grid{grid-template-columns:minmax(0,1fr) minmax(390px,.92fr)!important;gap:36px!important;width:min(90.2%,1080px)!important}
  .hbcs-root .hbcs-hero-title .elementor-heading-title{font-size:clamp(54px,5.5vw,70px)!important}
  .hbcs-root .hbcs-hero-badges{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:520px!important}
  .hbcs-root .hbcs-badge{min-height:76px!important;padding:8px!important;flex-direction:row!important;align-items:center!important}
  .hbcs-root .hbcs-challenge-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hbcs-root .hbcs-receive-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .hbcs-root .hbcs-receive-card:nth-child(4),.hbcs-root .hbcs-receive-card:nth-child(5){min-height:250px!important}
  .hbcs-root .hbcs-fit-shell{column-gap:44px!important}
  .hbcs-root .hbcs-why-grid{gap:38px!important}
}

@media (max-width:900px){
  .hbcs-root .hbcs-shell{width:min(91%,760px)!important}
  .hbcs-root .hbcs-hero{padding:36px 0 52px!important}
  .hbcs-root .hbcs-hero-grid{grid-template-columns:1fr!important;width:min(91%,760px)!important;min-height:auto!important;gap:22px!important}
  .hbcs-root .hbcs-hero-copy{padding:28px 0 10px!important}
  .hbcs-root .hbcs-hero-title .elementor-heading-title{font-size:clamp(52px,9vw,72px)!important}
  .hbcs-root .hbcs-hero-subtitle .elementor-heading-title{font-size:clamp(23px,4.2vw,30px)!important}
  .hbcs-root .hbcs-hero-visual{min-height:620px!important;max-width:660px!important;width:100%!important;margin:0 auto!important}
  .hbcs-root .hbcs-hero-script{right:14px!important;top:48px!important}
  .hbcs-root .hbcs-hero-botanical{right:8px!important}
  .hbcs-root .hbcs-challenge,.hbcs-root .hbcs-audit,.hbcs-root .hbcs-session,.hbcs-root .hbcs-fit,.hbcs-root .hbcs-receive,.hbcs-root .hbcs-why,.hbcs-root .hbcs-how,.hbcs-root .hbcs-faq{padding:68px 0 74px!important}
  .hbcs-root .hbcs-audit-grid{grid-template-columns:1fr!important;grid-template-areas:"main" "art" "side"!important;gap:26px!important}
  .hbcs-root .hbcs-audit-art{min-height:480px!important;max-width:700px!important;width:100%!important}
  .hbcs-root .hbcs-session-grid{grid-template-columns:1fr!important}
  .hbcs-root .hbcs-fit-shell{grid-template-columns:1fr!important;grid-template-areas:"title" "intro" "cards" "note"!important;row-gap:0!important}
  .hbcs-root .hbcs-fit-grid{margin-top:30px!important}
  .hbcs-root .hbcs-fit-note{margin-top:26px!important}
  .hbcs-root .hbcs-receive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .hbcs-root .hbcs-why-grid{grid-template-columns:1fr!important}
  .hbcs-root .hbcs-why-image-wrap{min-height:570px!important;max-width:660px!important;width:100%!important;margin:0 auto!important}
  .hbcs-root .hbcs-credentials-grid{max-width:760px!important;margin:0 auto!important}
  .hbcs-root .hbcs-steps-grid{grid-template-columns:1fr!important}
  .hbcs-root .hbcs-step{min-height:0!important}
  .hbcs-root .hbcs-faq-grid{grid-template-columns:1fr!important}
  .hbcs-root .hbcs-faq-card{min-height:0!important}
  .hbcs-root .hbcs-final-inner{padding:46px 42px!important;gap:28px!important}
  .hbcs-root .hbcs-final-script{flex-basis:150px!important;width:150px!important;font-size:27px!important}
}

@media (max-width:640px){
  .hbcs-root .hbcs-shell{width:calc(100% - 36px)!important}
  .hbcs-root .hbcs-section-title .elementor-heading-title{font-size:36px!important;line-height:1.02!important}
  .hbcs-root .hbcs-section-intro,.hbcs-root .hbcs-section-intro p{font-size:16px!important;line-height:1.45!important}
  .hbcs-root .hbcs-hero{padding:20px 0 42px!important}
  .hbcs-root .hbcs-hero-grid{width:calc(100% - 36px)!important}
  .hbcs-root .hbcs-hero-copy{padding-top:22px!important}
  .hbcs-root .hbcs-hero-title .elementor-heading-title{font-size:50px!important;line-height:.94!important}
  .hbcs-root .hbcs-hero-subtitle{margin-top:16px!important}
  .hbcs-root .hbcs-hero-subtitle .elementor-heading-title{font-size:23px!important}
  .hbcs-root .hbcs-hero-body,.hbcs-root .hbcs-hero-body p{font-size:16px!important}
  .hbcs-root .hbcs-hero-badges{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin-top:20px!important}
  .hbcs-root .hbcs-badge{min-height:68px!important;padding:7px 2px!important;gap:8px!important}
  .hbcs-root .hbcs-badge-icon{width:36px!important;max-width:36px!important;flex-basis:36px!important}
  .hbcs-root .hbcs-badge-icon .elementor-widget-container{width:36px!important;height:36px!important}
  .hbcs-root .hbcs-badge-icon .hbcs-svg{width:19px!important;height:19px!important}
  .hbcs-root .hbcs-badge-text,.hbcs-root .hbcs-badge-text p{font-size:12px!important}
  .hbcs-root .hbcs-primary-button,.hbcs-root .hbcs-final-button{width:100%!important}
  .hbcs-root .hbcs-primary-button .elementor-button,.hbcs-root .hbcs-final-button .elementor-button{width:100%!important;min-height:50px!important;padding-inline:18px!important}
  .hbcs-root .hbcs-price{width:100%!important}
  .hbcs-root .hbcs-hero-visual{min-height:490px!important}
  .hbcs-root .hbcs-hero-visual:before{left:2%!important;width:92%!important}
  .hbcs-root .hbcs-hero-image{left:5%!important;width:84%!important;height:94%!important}
  .hbcs-root .hbcs-hero-script{top:22px!important;right:0!important;width:170px!important;padding:15px!important;border-radius:17px!important}
  .hbcs-root .hbcs-hero-script,.hbcs-root .hbcs-hero-script p{font-size:21px!important}
  .hbcs-root .hbcs-hero-botanical{width:96px!important;opacity:.34!important}
  .hbcs-root .hbcs-hero-books{display:none!important}
  .hbcs-root .hbcs-challenge,.hbcs-root .hbcs-audit,.hbcs-root .hbcs-session,.hbcs-root .hbcs-fit,.hbcs-root .hbcs-receive,.hbcs-root .hbcs-why,.hbcs-root .hbcs-how,.hbcs-root .hbcs-faq{padding:56px 0 62px!important}
  .hbcs-root .hbcs-challenge-grid,.hbcs-root .hbcs-fit-grid,.hbcs-root .hbcs-receive-grid,.hbcs-root .hbcs-credentials-grid{grid-template-columns:1fr!important}
  .hbcs-root .hbcs-card,.hbcs-root .hbcs-receive-card{min-height:0!important}
  .hbcs-root .hbcs-session-card{min-height:0!important;padding:24px 22px 24px 88px!important}
  .hbcs-root .hbcs-session-card .hbcs-card-icon{left:20px!important;top:23px!important}
  .hbcs-root .hbcs-audit-art{min-height:390px!important;border-radius:44px 38px 44px 36px!important}
  .hbcs-root .hbcs-fit-pill{min-height:100px!important;padding:20px!important}
  .hbcs-root .hbcs-fit-note,.hbcs-root .hbcs-fit-note p{font-size:25px!important}
  .hbcs-root .hbcs-why-image-wrap{min-height:480px!important}
  .hbcs-root .hbcs-why-image-wrap:before{width:96%!important}
  .hbcs-root .hbcs-why-image{left:4%!important;width:88%!important}
  .hbcs-root .hbcs-why-script{right:0!important;bottom:30px!important;width:165px!important;padding:14px!important}
  .hbcs-root .hbcs-why-script,.hbcs-root .hbcs-why-script p{font-size:23px!important}
  .hbcs-root .hbcs-credential{min-height:0!important}
  .hbcs-root .hbcs-final-cta{padding:54px 0 62px!important}
  .hbcs-root .hbcs-final-inner{width:calc(100% - 36px)!important;min-height:0!important;padding:36px 24px!important;border-radius:22px!important;flex-direction:column!important;align-items:flex-start!important}
  .hbcs-root .hbcs-final-title .elementor-heading-title{font-size:36px!important}
  .hbcs-root .hbcs-final-actions{width:100%!important;flex-direction:column!important;align-items:flex-start!important}
  .hbcs-root .hbcs-final-script{width:100%!important;flex-basis:auto!important;text-align:left!important;transform:rotate(-3deg)!important}
  .hbcs-root .hbcs-final-inner:after{display:none!important}
}


/* 0.42 decorative responsive guardrails. */
@media (max-width:900px){
  .hbcs-root .hbcs-deco{opacity:.32!important;width:108px!important}
  .hbcs-root .hbcs-hero-grid:before{right:-170px;top:-80px;width:420px;height:420px;opacity:.32}
  .hbcs-root .hbcs-hero-grid:after{left:-115px;bottom:-92px;width:250px;height:195px;opacity:.18}
  .hbcs-root .hbcs-audit-grid:before{left:-160px;top:250px;width:460px;height:360px;opacity:.36}
  .hbcs-root .hbcs-audit-grid:after{right:-18px;top:210px;width:120px;height:102px;opacity:.24}
  .hbcs-root .hbcs-session .hbcs-shell:before{right:-190px;top:-72px;width:350px;height:350px;opacity:.18}
  .hbcs-root .hbcs-fit-shell:after,.hbcs-root .hbcs-how .hbcs-shell:after{opacity:.11}
  .hbcs-root .hbcs-why .hbcs-shell:before{right:-230px;top:260px;width:480px;height:376px;opacity:.26}
  .hbcs-root .hbcs-faq .hbcs-shell:before{left:-210px;bottom:-180px;width:360px;height:360px;opacity:.16}
  .hbcs-root .hbcs-challenge-spark,.hbcs-root .hbcs-receive-spark,.hbcs-root .hbcs-faq-spark{right:0!important}
  .hbcs-root .hbcs-fit-shell>.hbcs-fit-spark{left:0!important;width:108px!important}
  .hbcs-root .hbcs-how-spark{left:0!important}
}

@media (max-width:640px){
  .hbcs-root .hbcs-deco{width:84px!important;opacity:.24!important}
  .hbcs-root .hbcs-fit-shell>.hbcs-fit-spark{width:84px!important}
  .hbcs-root .hbcs-hero-grid:before{right:-158px;top:180px;width:330px;height:330px;opacity:.22}
  .hbcs-root .hbcs-hero-grid:after{display:none}
  .hbcs-root .hbcs-challenge .hbcs-shell:after,
  .hbcs-root .hbcs-fit-shell:after,
  .hbcs-root .hbcs-how .hbcs-shell:after{display:none}
  .hbcs-root .hbcs-audit-grid:before{left:-170px;top:240px;width:360px;height:282px;opacity:.22}
  .hbcs-root .hbcs-audit-grid:after{display:none}
  .hbcs-root .hbcs-audit-art:before{inset:10px;border-radius:36px 31px 36px 29px}
  .hbcs-root .hbcs-session .hbcs-shell:before{right:-205px;top:20px;width:300px;height:300px;opacity:.12}
  .hbcs-root .hbcs-receive .hbcs-shell:after{right:-180px;bottom:-115px;width:300px;height:235px;opacity:.16}
  .hbcs-root .hbcs-why .hbcs-shell:before{right:-235px;top:360px;width:390px;height:305px;opacity:.16}
  .hbcs-root .hbcs-faq .hbcs-shell:before{left:-205px;bottom:-150px;width:300px;height:300px;opacity:.12}
  .hbcs-root .hbcs-final-copy:before{left:-64px;top:-62px;width:120px;height:102px;opacity:.18}
  .hbcs-root .hbcs-final-script:before{width:220px;height:220px;opacity:.12}
}

@media (prefers-reduced-motion:reduce){
  .hbcs-root .elementor-button{transition:none!important}
}


/* 0.44.0 — typography contract mirrored here because HBCS CSS is intentionally
   reprinted after global styles by the existing Elementor fidelity lock. */
.hbcs-root.hbcs-root.hbcs-root{
  --hb-font:'Lora',Georgia,'Times New Roman',serif!important;
  --hb-ui:'Lora',Georgia,'Times New Roman',serif!important;
  --hb-script:'Lora',Georgia,'Times New Roman',serif!important;
  --hb-h1:clamp(48px,4.45vw,64px);
  --hb-h2:clamp(36px,3.05vw,44px);
  --hb-h3:clamp(24px,1.95vw,28px);
  --hb-h4:clamp(20px,1.55vw,22px);
  --hb-body:clamp(17px,1.25vw,18px);
  --hb-secondary:clamp(15px,1.1vw,16px);
  --hb-cta:clamp(16px,1.05vw,17px);
  --hb-price:clamp(22px,1.95vw,28px);
  --hb-label:clamp(14px,1.1vw,16px);
}
.hbcs-root.hbcs-root.hbcs-root,
.hbcs-root.hbcs-root.hbcs-root :where(p,li,span,a,strong,em,small,label,input,textarea,select,button,h1,h2,h3,h4,h5,h6,.elementor-heading-title,.elementor-button,.elementor-button-text){
  font-family:var(--hb-font)!important;
}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root h1{font-size:var(--hb-h1)!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root h2{font-size:var(--hb-h2)!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root h3{font-size:var(--hb-h3)!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root h4{font-size:var(--hb-h4)!important}
/* HBCS subtitle is visually a deck/subtitle even though Elementor stores it as H2. */
.hbcs-root.hbcs-root.hbcs-root.hbcs-root .hbcs-hero-subtitle .elementor-heading-title{font-size:clamp(28px,2vw,31px)!important;line-height:1.08!important}
/* Dense card/step/FAQ H3s use the compact end of the approved H3 scale. */
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(.hbcs-card-title h3,.hbcs-credential-title h3,.hbcs-step-title h3,.hbcs-faq-question h3){font-size:clamp(24px,1.72vw,25px)!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(
  .hbcs-hero-body,.hbcs-hero-body p,
  .hbcs-section-intro,.hbcs-section-intro p,
  .hbcs-audit-copy p,.hbcs-session-copy p,.hbcs-fit-copy p,.hbcs-receive-copy p,.hbcs-why-copy p,.hbcs-how-copy p
){font-size:var(--hb-body)!important;line-height:1.62!important;font-weight:400!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(
  .hbcs-kicker,.hbcs-kicker p,.hbcs-badge-text,.hbcs-badge-text p,
  .hbcs-card-body,.hbcs-card-body p,.hbcs-audit-side,.hbcs-audit-side p,.hbcs-step-body,.hbcs-step-body p,.hbcs-card-meta,.hbcs-book-stack span,
  .hbcs-credential-body,.hbcs-credential-body p,.hbcs-faq-answer,.hbcs-faq-answer p,
  small,figcaption,cite
){font-size:var(--hb-secondary)!important;font-weight:400!important}
/* Script notes remain decorative display copy rather than being flattened to secondary/body sizes. */
.hbcs-root.hbcs-root.hbcs-root.hbcs-root .hbcs-script p{font-size:inherit!important;line-height:inherit!important;font-weight:inherit!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(.hbcs-primary-button .elementor-button,.hbcs-final-button .elementor-button,.elementor-button){font-size:var(--hb-cta)!important;border-radius:999px!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(.hbcs-price,.hbcs-price p,.hbcs-final-price,.hbcs-final-price p){font-size:var(--hb-price)!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(label,legend){font-size:var(--hb-label)!important;font-weight:400!important}
.hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),textarea,select){font-size:16px!important;font-weight:400!important}
@media(max-width:767px){
  .hbcs-root.hbcs-root.hbcs-root{
    --hb-h1:clamp(32px,9vw,40px);
    --hb-h2:clamp(28px,7.5vw,32px);
    --hb-h3:clamp(20px,6vw,24px);
    --hb-h4:clamp(18px,5vw,20px);
    --hb-body:clamp(16px,4.2vw,17px);
    --hb-secondary:clamp(14px,3.8vw,16px);
    --hb-cta:16px;
    --hb-price:clamp(20px,5.8vw,24px);
    --hb-label:clamp(14px,3.8vw,16px);
  }
  .hbcs-root.hbcs-root.hbcs-root.hbcs-root .hbcs-hero-subtitle .elementor-heading-title{font-size:clamp(20px,5.8vw,23px)!important}
  .hbcs-root.hbcs-root.hbcs-root.hbcs-root :where(.hbcs-card-title h3,.hbcs-credential-title h3,.hbcs-step-title h3,.hbcs-faq-question h3){font-size:clamp(20px,5vw,22px)!important}
}
