/* Reference-inspired homepage. The existing content and functional controls are retained. */
html:root body.vc-reference-home {
  --hr-ink: #102f3b; --hr-muted: #617783; --hr-blue: #0578af;
  --hr-border: #e3edf1; --hr-green: #317f26;
  --vc-olive-gradient: linear-gradient(115deg,#36872a,#28771f);
  --vc-blue-gradient: linear-gradient(115deg,#eef8ff,#fff);
  --vc-olive-soft: #f0f8ed; --vc-olive-ink: #317f26;
  margin: 0; padding: 0 !important; color: var(--hr-ink);
  background: radial-gradient(ellipse at 5% 0%,#d5f0fb 0,transparent 42%),linear-gradient(140deg,#effaff,#dceff8 50%,#f3fafd) !important;
  font-family: Arial, Helvetica, sans-serif; line-height: 1.5;
}
html:root body.vc-reference-home .page {
  width: min(1280px,calc(100% - 48px)); max-width: 1280px !important;
  margin: 24px auto !important; padding: 0 !important; background: #fff;
  overflow: visible !important; border-radius: 14px;
  box-shadow: 0 12px 60px #16648f14;
}
html:root body.vc-reference-home :is(.container,.vc-container) { width: calc(100% - 64px) !important; max-width: 1152px !important; margin-inline: auto; padding-inline: 0 !important; }
html:root body.vc-reference-home .site-header {
  position: sticky !important; top: 0; left: auto !important; right: auto !important;
  width: 100% !important; transform: none !important; background: #fff !important;
  border-radius: 14px 14px 0 0; box-shadow: 0 4px 18px #11384708; z-index: 100;
}
html:root body.vc-reference-home .topbar { min-height: 28px !important; height: auto; padding: 4px 0 !important; color: #687d87 !important; background: #fff !important; border-bottom: 1px solid #eef3f5; font-size: 16px !important; }
html:root body.vc-reference-home .topbar :is(.topbar__item,.social-line) { font-size: 16px !important; color: #607580 !important; }
html:root body.vc-reference-home .topbar__group { gap: 16px !important; }
html:root body.vc-reference-home .topbar .icon { width: 14px; height: 14px; color: var(--hr-blue); }
html:root body.vc-reference-home .vc-socials--header { gap: 10px; }
html:root body.vc-reference-home .vc-socials--header .vc-social { width: 22px; height: 22px; min-width: 22px; padding: 0; border: 0; background: transparent !important; }
html:root body.vc-reference-home .vc-socials--header .vc-social img { width: 19px; height: 19px; }
html:root body.vc-reference-home .header { background: #fff !important; padding: 12px 0 !important; border: 0; }
html:root body.vc-reference-home .header > .container { gap: 20px !important; }
html:root body.vc-reference-home .brand { min-width: 176px; }
html:root body.vc-reference-home .brand__image { width: 176px !important; height: 42px !important; object-fit: contain; }
html:root body.vc-reference-home .menu { margin-left: auto; gap: 20px !important; }
html:root body.vc-reference-home .menu a { font-size: 16px !important; font-weight: 500; color: var(--hr-ink); }
html:root body.vc-reference-home :is(.btn,.vc-btn) {
  min-height: 42px !important; padding: 11px 20px !important; border: 1px solid #36872a !important;
  border-radius: 9px !important; background: var(--vc-olive-gradient) !important; color: #fff !important;
  font-size: 16px !important; font-weight: 600; line-height: 1.3 !important; box-shadow: 0 4px 12px #2f82211c !important;
  transition: box-shadow .18s, filter .18s; text-decoration: none;
}
html:root body.vc-reference-home :is(.btn,.vc-btn):hover { filter: brightness(.96); box-shadow: 0 5px 14px #2f82212d !important; }
html:root body.vc-reference-home :is(a,button,input):focus-visible { outline: 3px solid #087bad !important; outline-offset: 3px; }
html:root body.vc-reference-home :is(.hr-secondary,.vc-btn--secondary) { background: linear-gradient(125deg,#fff,#f3fbff) !important; color: #086e9f !important; border-color: #b7dce9 !important; box-shadow: 0 3px 9px #18688409 !important; }
html:root body.vc-reference-home .hr-header-cta { white-space: nowrap; font-size: 16px !important; min-height: 38px !important; padding: 10px 14px !important; }
html:root body.vc-reference-home main > :is(.vc-section,.services) { background: #fff !important; padding: 28px 0 !important; min-height: 0 !important; border: 0; }
html:root body.vc-reference-home main h2 { color: var(--hr-ink) !important; font-size: 26px !important; font-weight: 700; line-height: 1.2 !important; letter-spacing: -.65px; margin: 0 0 10px !important; }
html:root body.vc-reference-home :is(.section-head,.vc-section-head) { display: block !important; text-align: left !important; margin: 0 0 18px !important; }
html:root body.vc-reference-home :is(.vc-lead,.section-head > p:not(.eyebrow),.vc-section-head > p:not(.vc-section-kicker)) { margin: 0 0 18px !important; color: var(--hr-muted) !important; font-size: 16px !important; line-height: 1.5 !important; max-width: none !important; }
html:root body.vc-reference-home :is(.eyebrow,.vc-section-kicker,.badge) { width: fit-content; display: inline-flex; padding: 4px 9px !important; margin: 0 0 9px !important; border: 0 !important; border-radius: 20px; color: #0878a7 !important; background: #eaf7fc !important; font-size: 16px !important; line-height: 1.3; text-transform: uppercase; font-weight: 600; letter-spacing: .4px; }
html:root body.vc-reference-home .hero { min-height: 0 !important; padding: 32px 0 18px !important; background: #eff9fc !important; overflow: hidden; border: 0 !important; }
html:root body.vc-reference-home .hero > .container { position: relative; z-index: 2; display: block !important; }
html:root body.vc-reference-home .hero__content { max-width: 600px !important; width: 53% !important; margin: 0 !important; padding: 0 !important; position: relative; z-index: 2; }
html:root body.vc-reference-home .hero h1 { font-size: 45px !important; line-height: 1.06 !important; letter-spacing: -1.5px; margin: 9px 0 14px !important; color: #10303c !important; }
html:root body.vc-reference-home .hero__city { color: #35852b !important; background: none !important; }
html:root body.vc-reference-home .hero__lead { margin: 0 0 18px !important; color: #516b77 !important; font-size: 16px !important; line-height: 1.45 !important; }
html:root body.vc-reference-home .hero__lead span { color: #516b77 !important; }
html:root body.vc-reference-home .hero__visual { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; background: url('/assets/index2-html/hero-reference-20260916.png') right center / contain no-repeat !important; }
html:root body.vc-reference-home .hero__visual::before { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#f4fbfef5 0%,#f4fbfecd 32%,#f4fbfe00 58%); }
html:root body.vc-reference-home .hero__visual::after { display: none !important; }
html:root body.vc-reference-home .hr-hero-actions { display: flex; gap: 12px; margin: 0 0 20px; }
html:root body.vc-reference-home .hr-hero-actions .btn { display: inline-flex; gap: 20px; justify-content: center; align-items: center; }
html:root body.vc-reference-home .checks { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px !important; margin: 0 0 24px !important; }
html:root body.vc-reference-home .checks li { display: flex !important; gap: 7px !important; padding: 0 !important; margin: 0 !important; align-items: center; background: none !important; font-size: 16px !important; line-height: 1.4 !important; color: #465f68 !important; }
html:root body.vc-reference-home .hero-benefit__icon { width: 30px !important; height: 30px !important; flex: 0 0 30px; color: #398832 !important; background: #eff8eb !important; border: 0 !important; border-radius: 50%; }
html:root body.vc-reference-home .hero-benefit__icon .icon { width: 17px !important; height: 17px !important; }
html:root body.vc-reference-home .hero-callback { position: relative; display: grid !important; grid-template-columns: 1fr 1.5fr; gap: 16px !important; align-items: center; margin: 0 !important; padding: 16px 20px !important; max-width: none !important; border: 1px solid #e0ebed !important; border-radius: 12px !important; background: #ffffffed !important; box-shadow: 0 4px 14px #14364408 !important; }
html:root body.vc-reference-home .hero-callback h2 { font-size: 18px !important; letter-spacing: -.3px; margin: 0 0 5px !important; }
html:root body.vc-reference-home .hr-callback-copy > p { font-size: 16px !important; line-height: 1.4; margin: 0 !important; color: var(--hr-muted); }
html:root body.vc-reference-home .hero-callback__form { padding: 0 !important; margin: 0 !important; background: none !important; border: 0 !important; box-shadow: none !important; gap: 7px !important; }
html:root body.vc-reference-home .hero-callback__row { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
html:root body.vc-reference-home .hero-callback__phone { min-height: 42px !important; height: 42px; padding: 0 10px !important; background: #fff !important; border: 1px solid #d9e8ed !important; border-radius: 7px !important; }
html:root body.vc-reference-home .hero-callback__phone input { font-size: 16px !important; height: 40px !important; min-height: 0 !important; padding: 4px 0 !important; }
html:root body.vc-reference-home .hero-callback__consent { display: flex; align-items: center; margin: 0 !important; font-size: 16px !important; line-height: 1.4 !important; color: #657982 !important; }
html:root body.vc-reference-home .hero-callback__feedback:empty { display: none !important; }
html:root body.vc-reference-home .hero-callback > .hero-callback__feedback:not(:empty) { grid-column: 1/-1; }
html:root body.vc-reference-home .stats-wrap { margin: 0 !important; padding: 10px 0 !important; background: #fff !important; }
html:root body.vc-reference-home .stats { background: #fff !important; border: 0 !important; padding: 9px 0 !important; gap: 20px !important; box-shadow: none !important; }
html:root body.vc-reference-home .stat { border: 0 !important; padding: 0 !important; gap: 10px !important; }
html:root body.vc-reference-home .stat strong { font-size: 16px !important; line-height: 1.3; }
html:root body.vc-reference-home .stat span span { font-size: 16px !important; color: var(--hr-muted); }
html:root body.vc-reference-home .stat__icon { width: 32px; height: 32px; color: #478d39 !important; background: #f0f8ec !important; border-radius: 8px; }
html:root body.vc-reference-home :is(.vc-card,.service-card) { border: 1px solid #e8eff2 !important; border-radius: 10px !important; box-shadow: 0 3px 12px #17384807 !important; background: #fff !important; overflow: hidden; }
html:root body.vc-reference-home :is(.vc-grid-2,.vc-grid-3,.vc-grid-4,.service-grid) { gap: 14px !important; }
html:root body.vc-reference-home :is(.vc-interactive-filters,.vc-review-filters,.vc-service-filters) { gap: 7px !important; margin: 0 0 13px !important; }
html:root body.vc-reference-home :is(.vc-interactive-filters,.vc-review-filters,.vc-service-filters) > button { padding: 7px 12px !important; min-height: 34px !important; border: 1px solid #deedf3 !important; border-radius: 7px !important; background: #f7fcff !important; color: #426a7b !important; box-shadow: none !important; font-size: 16px !important; }
html:root body.vc-reference-home :is(.vc-interactive-filters,.vc-review-filters,.vc-service-filters) > button.is-active { background: var(--vc-olive-gradient) !important; color: #fff !important; border-color: #36872a !important; }
html:root body.vc-reference-home :is(.note,.vc-note) { background: linear-gradient(100deg,#f4fbff,#fafdfc) !important; border: 1px solid #e5eff3 !important; border-radius: 9px !important; box-shadow: none !important; margin: 16px 0 0 !important; padding: 12px 16px !important; gap: 15px !important; }
html:root body.vc-reference-home :is(.note,.vc-note) p { font-size: 16px !important; color: var(--hr-muted) !important; line-height: 1.5 !important; }
html:root body.vc-reference-home .vc-quiz { grid-template-columns: minmax(0,2.3fr) minmax(240px,1fr) !important; gap: 24px !important; }
html:root body.vc-reference-home .vc-quiz__main { border: 0 !important; border-radius: 0 !important; background: #fff !important; padding: 0 !important; box-shadow: none !important; }
html:root body.vc-reference-home .vc-quiz__summary { border: 1px solid #e6eff1 !important; background: linear-gradient(145deg,#f5fbff,#fff 60%,#f3f9ef) !important; border-radius: 12px !important; padding: 18px !important; box-shadow: 0 4px 16px #16374708 !important; }
html:root body.vc-reference-home .vc-quiz__summary > span { color: #52717b; font-size: 16px; text-transform: uppercase; }
html:root body.vc-reference-home .vc-quiz__summary h3 { margin: 6px 0 8px !important; font-size: 23px !important; }
html:root body.vc-reference-home .vc-quiz__summary dl { margin: 0 !important; font-size: 16px; }
html:root body.vc-reference-home .vc-quiz__summary dl > div { padding: 8px 0 !important; border-color: #e5edf0 !important; }
html:root body.vc-reference-home .vc-quiz__summary p { margin: 12px 0 0 !important; font-size: 16px !important; line-height: 1.45; color: #6a7f88; }
html:root body.vc-reference-home .vc-quiz__progress { height: 4px; background: #eaf3f7 !important; margin-bottom: 13px !important; }
html:root body.vc-reference-home .vc-quiz__progress span { background: var(--vc-olive-gradient) !important; }
html:root body.vc-reference-home .vc-quiz__step-label { font-size: 16px; color: #087aae; }
html:root body.vc-reference-home .vc-quiz__step h3 { font-size: 17px !important; line-height: 1.3; margin: 5px 0 12px !important; }
html:root body.vc-reference-home .vc-choice-grid { gap: 10px !important; }
html:root body.vc-reference-home .vc-choice { min-height: 76px !important; padding: 14px !important; border: 1px solid #dcebf1 !important; border-radius: 8px !important; background: #f5fbfe !important; color: #40616f !important; font-size: 16px !important; box-shadow: none !important; }
html:root body.vc-reference-home .vc-choice.is-active { background: #edf7e8 !important; border-color: #86bc74 !important; color: #316e26 !important; }
html:root body.vc-reference-home .vc-quiz__actions { margin-top: 14px !important; }
html:root body.vc-reference-home .vc-strip-nav button { background: #f2faff !important; border: 1px solid #c8e4f0 !important; color: #087aad !important; box-shadow: none !important; }
html:root body.vc-reference-home .service-grid.vc-card-strip { display: grid !important; grid-auto-flow: row !important; grid-auto-columns: auto !important; grid-template-columns: repeat(6,minmax(0,1fr)) !important; overflow: visible !important; padding: 0 !important; }
html:root body.vc-reference-home .vc-service-toolbar:has(.vc-service-filters) .vc-strip-nav { display: none !important; }
html:root body.vc-reference-home img.service-card__image[src] { height: 112px !important; min-height: 0 !important; aspect-ratio: auto !important; object-fit: contain !important; }
html:root body.vc-reference-home .service-card { display: flex; flex-direction: column; min-width: 0; }
html:root body.vc-reference-home .service-card__body { padding: 12px !important; gap: 9px !important; flex: 1; }
html:root body.vc-reference-home .service-card__top { display: block !important; min-height: 67px !important; margin: 0 !important; }
html:root body.vc-reference-home .service-card__top .icon { color: #0683b9 !important; width: 23px !important; height: 23px !important; margin-bottom: 5px; }
html:root body.vc-reference-home .service-card h3 { font-size: 16px !important; line-height: 1.25 !important; margin: 0 !important; }
html:root body.vc-reference-home .service-card__body > p { font-size: 16px !important; line-height: 1.45 !important; margin: 0 !important; color: #6c8089; }
html:root body.vc-reference-home .service-card .price { font-size: 16px !important; background: none !important; color: #336d27 !important; padding: 0 !important; border: 0 !important; min-height: 30px !important; }
html:root body.vc-reference-home .service-card .btn { min-height: 36px !important; padding: 8px !important; width: 100%; font-size: 16px !important; border-color: #c7e3ef !important; background: linear-gradient(110deg,#fff,#f4fbff) !important; color: #0877a8 !important; box-shadow: none !important; }
html:root body.vc-reference-home .vc-about__layout { grid-template-areas: 'content media' !important; grid-template-columns: 1.1fr 1fr !important; gap: 32px !important; align-items: center; }
html:root body.vc-reference-home .vc-about__media { grid-area: media; border-radius: 12px; overflow: hidden; box-shadow: none !important; }
html:root body.vc-reference-home .vc-about__media img { max-height: 285px !important; height: 285px !important; aspect-ratio: auto !important; object-fit: contain !important; }
html:root body.vc-reference-home .vc-about__content { grid-area: content; padding: 0 !important; gap: 12px !important; }
html:root body.vc-reference-home .vc-about__text { font-size: 16px !important; line-height: 1.65 !important; color: #5d7480 !important; }
html:root body.vc-reference-home :is(.vc-about__panel,.vc-about__cards .vc-card) { background: #fff !important; border-color: #e3eef2 !important; border-radius: 10px !important; box-shadow: 0 2px 12px #25485505 !important; padding: 16px !important; }
html:root body.vc-reference-home .vc-about__panel h3 { font-size: 17px !important; }
html:root body.vc-reference-home .vc-about__logos span { background: #f5fafd !important; color: #537481 !important; border-color: #e4eff3 !important; }
html:root body.vc-reference-home .vc-about__strip { border-radius: 10px !important; border: 1px solid #e5eff2 !important; background: linear-gradient(110deg,#f7fbfd,#f1f8ed) !important; }
html:root body.vc-reference-home .vc-promo { display: flex; flex-direction: column; background: #fff !important; padding: 0 !important; border-radius: 12px !important; }
html:root body.vc-reference-home .vc-promo > img[src] { width: 100%; height: 155px !important; aspect-ratio: auto !important; object-fit: contain !important; margin: 0 !important; }
html:root body.vc-reference-home .vc-promo h3 { margin: 14px 0 8px !important; padding: 0 18px !important; min-height: 40px !important; font-size: 17px !important; line-height: 1.25 !important; }
html:root body.vc-reference-home .vc-promo h3::before { color: #087eb1 !important; }
html:root body.vc-reference-home .vc-promo > p { padding: 0 18px !important; margin: 0 0 14px !important; font-size: 16px !important; line-height: 1.45 !important; color: #647e88; }
html:root body.vc-reference-home .vc-promo .vc-hero__badge { background: #f0f8e9 !important; color: #47712c !important; border: 1px solid #d0e3c1 !important; border-radius: 7px !important; font-size: 16px !important; padding: 6px 9px !important; top: 12px; left: 12px; }
html:root body.vc-reference-home .vc-promo__select { min-height: 38px !important; font-size: 16px !important; background: linear-gradient(110deg,#fff,#f2faff) !important; color: #0877a8 !important; border-color: #c3e0ec !important; box-shadow: none !important; }
html:root body.vc-reference-home .vc-promo.is-selected { border-color: #7cae6a !important; box-shadow: 0 0 0 2px #edf6e8 !important; }
html:root body.vc-reference-home .vc-benefit { display: grid; grid-template-columns: 34px 1fr; column-gap: 12px; padding: 16px !important; }
html:root body.vc-reference-home .vc-benefit > .icon { grid-column: 1; grid-row: 1/3; width: 30px; height: 30px; padding: 5px; border-radius: 8px; color: #4a9340 !important; background: #eef8e9; }
html:root body.vc-reference-home .vc-benefit h3 { grid-column: 2; margin: 0 0 6px !important; font-size: 16px !important; }
html:root body.vc-reference-home .vc-benefit p { grid-column: 2; margin: 0 !important; color: #687f89; font-size: 16px !important; line-height: 1.5 !important; }
html:root body.vc-reference-home .vc-logo-grid { grid-template-columns: repeat(9,minmax(0,1fr)) !important; gap: 8px !important; }
html:root body.vc-reference-home .vc-client { padding: 7px !important; min-height: 63px !important; border: 0 !important; box-shadow: none !important; background: #fff !important; }
html:root body.vc-reference-home .vc-client img { width: 100% !important; height: 44px !important; object-fit: contain !important; }
html:root body.vc-reference-home .vc-grid-4.vc-card-strip:has(.vc-equipment) { grid-auto-columns: calc((100% - 42px)/4) !important; scrollbar-color: #bedce9 transparent; }
html:root body.vc-reference-home .vc-equipment { display: flex; flex-direction: column; padding: 14px !important; }
html:root body.vc-reference-home .vc-equipment img[src] { position: static !important; order: -1; width: 100% !important; height: 112px !important; margin: 0 0 10px !important; object-fit: contain !important; aspect-ratio: auto !important; }
html:root body.vc-reference-home .vc-equipment h3 { font-size: 16px !important; line-height: 1.3 !important; }
html:root body.vc-reference-home .vc-equipment p { font-size: 16px !important; color: #647b86; margin: 0 !important; }
html:root body.vc-reference-home .vc-steps .vc-grid-3 { grid-template-columns: repeat(6,minmax(0,1fr)) !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step { padding: 12px !important; grid-template-rows: auto auto 1fr !important; gap: 8px !important; position: relative; }
html:root body.vc-reference-home .vc-steps--compact .vc-step img { height: 70px !important; object-fit: contain !important; border-radius: 7px !important; }
html:root body.vc-reference-home .vc-step__number { position: static !important; width: 26px !important; height: 26px !important; display: grid; place-items: center; font-size: 16px !important; background: #eaf6fb !important; color: #0a7aaa !important; border-radius: 50% !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step h3 { font-size: 16px !important; line-height: 1.25 !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step p { font-size: 16px !important; line-height: 1.45 !important; color: #687e88; }
html:root body.vc-reference-home #reviews .vc-review { padding: 0 !important; border-color: #e5eef1 !important; display: flex; flex-direction: column; }
html:root body.vc-reference-home #reviews .vc-review__object { order: 4; height: 75px !important; margin-top: auto; object-fit: contain; }
html:root body.vc-reference-home #reviews .vc-review__head { padding: 14px 14px 7px !important; gap: 9px !important; }
html:root body.vc-reference-home #reviews .vc-review__head h3 { font-size: 16px !important; margin: 0 0 3px !important; }
html:root body.vc-reference-home #reviews .vc-review__head span { font-size: 16px !important; }
html:root body.vc-reference-home #reviews .vc-review__rating { color: #be8205 !important; font-size: 16px; padding: 0 14px !important; margin: 0 !important; }
html:root body.vc-reference-home #reviews .vc-review > p { padding: 0 14px !important; font-size: 16px !important; line-height: 1.5 !important; margin: 8px 0 14px !important; color: #536f7c; }
html:root body.vc-reference-home #reviews .vc-stat { padding: 12px !important; background: #fbfdfb !important; border-color: #ebf2e7 !important; }
html:root body.vc-reference-home #reviews .vc-stat strong { font-size: 21px !important; }
html:root body.vc-reference-home .vc-faq-section > .vc-container { display: grid; grid-template-columns: 1fr 2fr; gap: 16px 36px; align-items: start; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-intro { grid-column: 1; }
html:root body.vc-reference-home .vc-faq-section .vc-grid-2 { grid-column: 2; grid-row: 1; gap: 0 !important; }
html:root body.vc-reference-home .vc-faq { background: #fff !important; border: 0 !important; border-bottom: 1px solid #e5edf1 !important; border-radius: 0 !important; box-shadow: none !important; padding: 0 !important; }
html:root body.vc-reference-home .vc-faq button { background: #fff !important; color: #234754 !important; min-height: 46px !important; font-size: 16px !important; padding: 11px 0 !important; }
html:root body.vc-reference-home .vc-faq button::after { color: #0a7aad !important; background: #f4fafd !important; border: 0 !important; font-size: 18px !important; }
html:root body.vc-reference-home .vc-faq__answer { padding: 0 28px 13px 0 !important; color: #687e87; }
html:root body.vc-reference-home .vc-faq__answer p { font-size: 16px !important; }
html:root body.vc-reference-home .vc-faq-section .vc-note { grid-column: 1/-1; margin-top: 0 !important; }
html:root body.vc-reference-home #contacts { padding: 28px 0 36px !important; background: #fff !important; }
html:root body.vc-reference-home #contacts > .vc-container { background: linear-gradient(110deg,#f1f8ec,#f5fbff) !important; border: 1px solid #e3eedf; border-radius: 14px; padding: 24px !important; width: calc(100% - 64px) !important; }
html:root body.vc-reference-home #contacts .vc-contacts__grid { grid-template-columns: 1.2fr 1.3fr .8fr !important; gap: 24px !important; }
html:root body.vc-reference-home #contacts .vc-contact-list { display: grid; grid-template-columns: 1fr 1fr; gap: 12px !important; margin-top: 14px; }
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card { background: transparent !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; border-radius: 0 !important; font-size: 16px !important; min-height: 0 !important; }
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card::before { display: none !important; }
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card > span { font-size: 16px !important; color: #75868b; margin: 0 0 3px !important; }
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card a { font-size: 16px !important; color: #2f5565 !important; overflow-wrap: anywhere; }
html:root body.vc-reference-home #contacts .vc-contacts__grid > .vc-contact-card { padding: 0 !important; border: 0 !important; box-shadow: none !important; background: none !important; }
html:root body.vc-reference-home #contacts .vc-form { background: #fff !important; border: 1px solid #e3edf1 !important; border-radius: 10px !important; padding: 16px !important; gap: 10px !important; box-shadow: 0 3px 12px #233f4205 !important; }
html:root body.vc-reference-home #contacts .vc-form label:not(.vc-form__check) { font-size: 16px !important; gap: 5px !important; }
html:root body.vc-reference-home #contacts .vc-form input:not([type='checkbox']):not([type='hidden']) { border: 1px solid #dce9ee !important; background: #fff !important; color: #234956 !important; min-height: 40px !important; height: 40px !important; font-size: 16px !important; border-radius: 6px !important; }
html:root body.vc-reference-home #contacts .vc-form__check { font-size: 16px !important; color: #6b7e87; line-height: 1.5; }
html:root body.vc-reference-home #contacts .vc-contacts__media { min-height: 0 !important; border: 0 !important; border-radius: 10px !important; overflow: hidden; }
html:root body.vc-reference-home #contacts .vc-contacts__media img { height: 260px !important; width: 100%; object-fit: contain !important; min-height: 0 !important; }
html:root body.vc-reference-home .vc-footer { background: #fff !important; padding: 28px 0 14px !important; border-top: 1px solid #ecf2f5; border-radius: 0 0 14px 14px; }
html:root body.vc-reference-home .vc-footer::after { display: none !important; }
html:root body.vc-reference-home .vc-footer__grid { grid-template-columns: 1.3fr 1fr 1fr 1.25fr !important; gap: 28px !important; }
html:root body.vc-reference-home .vc-footer__brand-logo { width: 160px !important; height: auto; }
html:root body.vc-reference-home .vc-footer h3 { font-size: 16px !important; margin: 0 0 11px !important; color: #234956 !important; }
html:root body.vc-reference-home .vc-footer :is(p,a,span) { font-size: 16px !important; color: #6b818d !important; line-height: 1.65 !important; }
html:root body.vc-reference-home .vc-footer__links { gap: 5px !important; }
html:root body.vc-reference-home .vc-footer__bottom { margin-top: 22px !important; padding-top: 12px !important; border-color: #eef3f5 !important; font-size: 16px !important; }
html:root body.vc-reference-home .vc-mobilebar { background: #fffffffa !important; box-shadow: 0 -3px 16px #133b4a10 !important; }
html:root body.vc-reference-home .vc-mobilebar a { background: var(--vc-olive-gradient) !important; color: #fff !important; border-radius: 8px !important; }
html:root body.vc-reference-home .vc-mobilebar a:first-child { background: #edf8ff !important; color: #096f9f !important; }
html:root body.vc-reference-home [hidden] { display: none !important; }
@media (max-width: 1150px) {
 html:root body.vc-reference-home .menu { gap: 13px !important; }
 html:root body.vc-reference-home .menu a { font-size: 16px !important; }
 html:root body.vc-reference-home .brand { min-width: 155px; }
 html:root body.vc-reference-home .brand__image { width: 155px !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 39px !important; }
 html:root body.vc-reference-home .service-grid.vc-card-strip { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .service-card__top { min-height: 0 !important; }
 html:root body.vc-reference-home .service-card__body > p { min-height: 52px; }
 html:root body.vc-reference-home .vc-logo-grid { grid-template-columns: repeat(6,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .vc-steps .vc-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home .page { width: calc(100% - 24px); margin: 12px auto !important; }
 html:root body.vc-reference-home :is(.container,.vc-container) { width: calc(100% - 40px) !important; }
 html:root body.vc-reference-home .header > .container { gap: 12px !important; }
 html:root body.vc-reference-home .menu { display: none !important; }
 html:root body.vc-reference-home .burger { display: flex !important; margin-left: auto; background: #f4fbff !important; border: 1px solid #dcecf3; width: 40px; height: 40px; }
 html:root body.vc-reference-home .hr-header-cta { margin-left: auto; }
 html:root body.vc-reference-home .hero__content { width: 58% !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 34px !important; }
 html:root body.vc-reference-home .hero__lead { font-size: 16px !important; }
 html:root body.vc-reference-home .hr-hero-actions { flex-wrap: wrap; gap: 8px; }
 html:root body.vc-reference-home .checks { grid-template-columns: 1fr 1fr; }
 html:root body.vc-reference-home .hero-callback { grid-template-columns: 1fr !important; gap: 12px !important; }
 html:root body.vc-reference-home .vc-quiz { grid-template-columns: 1.6fr 1fr !important; gap: 16px !important; }
 html:root body.vc-reference-home .vc-choice-grid { grid-template-columns: 1fr 1fr !important; }
 html:root body.vc-reference-home .vc-about__layout { gap: 20px !important; }
 html:root body.vc-reference-home .vc-about__media img { height: 320px !important; max-height: none !important; }
 html:root body.vc-reference-home .vc-about-details .vc-about__side { grid-template-columns: 1fr !important; }
 html:root body.vc-reference-home .vc-about__cards { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .vc-grid-4.vc-card-strip:has(.vc-equipment) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; grid-auto-flow: row !important; grid-auto-columns: auto !important; overflow: visible !important; }
 html:root body.vc-reference-home #reviews .vc-review-filters + .vc-grid-3 { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home #contacts > .vc-container { width: calc(100% - 40px) !important; padding: 20px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__grid { grid-template-columns: 1fr 1fr !important; gap: 18px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__media { grid-column: 1/-1; }
 html:root body.vc-reference-home #contacts .vc-contacts__media img { height: 150px !important; }
 html:root body.vc-reference-home .vc-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home { padding-bottom: 64px !important; }
 html:root body.vc-reference-home .page { width: 100%; margin: 0 !important; border-radius: 0; box-shadow: none; }
 html:root body.vc-reference-home .site-header { border-radius: 0; }
 html:root body.vc-reference-home :is(.container,.vc-container) { width: calc(100% - 32px) !important; }
 html:root body.vc-reference-home .topbar__group:first-child { display: none !important; }
 html:root body.vc-reference-home .topbar { min-height: 30px !important; }
 html:root body.vc-reference-home .topbar > .container { justify-content: flex-end !important; }
 html:root body.vc-reference-home .topbar .vc-header-contacts { width: 100%; justify-content: space-between; }
 html:root body.vc-reference-home .topbar .social-line { display: inline-flex !important; }
 html:root body.vc-reference-home .header { padding: 9px 0 !important; }
 html:root body.vc-reference-home .brand { min-width: 145px; }
 html:root body.vc-reference-home .brand__image { width: 145px !important; height: 35px !important; }
 html:root body.vc-reference-home .hr-header-cta { padding: 8px 9px !important; font-size: 16px !important; min-height: 34px !important; }
 html:root body.vc-reference-home .burger { margin-left: 0; width: 34px; height: 34px; min-width: 34px; }
 html:root body.vc-reference-home main > :is(.vc-section,.services) { padding: 24px 0 !important; }
 html:root body.vc-reference-home main h2 { font-size: 23px !important; letter-spacing: -.4px; }
 html:root body.vc-reference-home .hero { padding: 22px 0 16px !important; }
 html:root body.vc-reference-home .hero__content { width: 100% !important; max-width: none !important; padding-right: 0 !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 33px !important; line-height: 1.08 !important; max-width: 350px; }
 html:root body.vc-reference-home .hero__visual { background-position: 60% top !important; opacity: .23; }
 html:root body.vc-reference-home .hero__visual::before { background: linear-gradient(90deg,#f4fbfefe,#f4fbfec0) !important; }
 html:root body.vc-reference-home .hero__lead { font-size: 16px !important; }
 html:root body.vc-reference-home .hr-hero-actions { flex-wrap: nowrap; gap: 8px; margin-bottom: 16px; }
 html:root body.vc-reference-home .hr-hero-actions .btn { flex: 1; padding: 10px 8px !important; font-size: 16px !important; gap: 8px; }
 html:root body.vc-reference-home .checks { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px !important; margin-bottom: 18px !important; }
 html:root body.vc-reference-home .checks li { font-size: 16px !important; }
 html:root body.vc-reference-home .hero-callback { padding: 14px !important; gap: 10px !important; }
 html:root body.vc-reference-home .hero-callback h2 { font-size: 16px !important; }
 html:root body.vc-reference-home .hero-callback__row { grid-template-columns: 1fr !important; gap: 7px !important; }
 html:root body.vc-reference-home .hero-callback__consent { font-size: 16px !important; }
 html:root body.vc-reference-home .stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 14px !important; }
 html:root body.vc-reference-home .stats-wrap { padding: 10px 0 !important; }
 html:root body.vc-reference-home .stat strong { font-size: 16px !important; }
 html:root body.vc-reference-home .stat span span { font-size: 16px !important; }
 html:root body.vc-reference-home .vc-quiz { grid-template-columns: 1fr !important; gap: 16px !important; }
 html:root body.vc-reference-home .vc-choice { min-height: 58px !important; padding: 10px !important; }
 html:root body.vc-reference-home .vc-quiz__summary { padding: 14px !important; }
 html:root body.vc-reference-home .vc-quiz__summary h3 { font-size: 20px !important; }
 html:root body.vc-reference-home .service-grid.vc-card-strip { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
 html:root body.vc-reference-home img.service-card__image[src] { height: 96px !important; }
 html:root body.vc-reference-home .service-card__body { padding: 10px !important; }
 html:root body.vc-reference-home .service-card h3 { font-size: 16px !important; }
 html:root body.vc-reference-home .service-card__body > p { min-height: 0; font-size: 16px !important; }
 html:root body.vc-reference-home .service-card__top { min-height: 65px !important; }
 html:root body.vc-reference-home :is(.note,.vc-note) { flex-wrap: wrap; padding: 12px !important; }
 html:root body.vc-reference-home :is(.note,.vc-note) .btn { width: 100%; }
 html:root body.vc-reference-home .vc-about__layout { grid-template-areas: 'content' 'media' !important; grid-template-columns: 1fr !important; gap: 18px !important; }
 html:root body.vc-reference-home .vc-about__media img { height: 220px !important; }
 html:root body.vc-reference-home .vc-about__cards { grid-template-columns: 1fr !important; }
 html:root body.vc-reference-home .vc-about__strip { grid-template-columns: 1fr 1fr !important; gap: 14px !important; }
 html:root body.vc-reference-home :is(.hr-promotions,.hr-benefits) .vc-grid-3 { grid-template-columns: 1fr !important; }
 html:root body.vc-reference-home .vc-promo > img[src] { height: 165px !important; }
 html:root body.vc-reference-home .vc-logo-grid { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .vc-steps .vc-grid-3 { grid-template-columns: 1fr 1fr !important; gap: 10px !important; }
 html:root body.vc-reference-home #reviews .vc-review-filters + .vc-grid-3 { grid-template-columns: 1fr !important; }
 html:root body.vc-reference-home #reviews .vc-grid-3:has(.vc-stat) { grid-template-columns: 1fr !important; }
 html:root body.vc-reference-home .vc-faq-section > .vc-container { grid-template-columns: 1fr; gap: 0; }
 html:root body.vc-reference-home .vc-faq-section .vc-grid-2 { grid-column: 1; grid-row: 2; }
 html:root body.vc-reference-home .vc-faq-section .vc-note { margin-top: 16px !important; }
 html:root body.vc-reference-home #contacts > .vc-container { width: calc(100% - 32px) !important; padding: 16px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__grid { grid-template-columns: 1fr !important; gap: 18px !important; }
 html:root body.vc-reference-home #contacts .vc-contact-list { gap: 13px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__media { grid-column: 1; }
 html:root body.vc-reference-home #contacts .vc-form { padding: 14px !important; }
 html:root body.vc-reference-home .vc-footer__grid { gap: 24px 16px !important; }
 html:root body.vc-reference-home .vc-footer__grid > div:first-child { grid-column: 1/-1; }
 html:root body.vc-reference-home .vc-footer__bottom { display: flex; flex-direction: column; gap: 7px; align-items: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
 html:root body.vc-reference-home * { scroll-behavior: auto !important; transition: none !important; }
}
/* Composition corrections after the first visual comparison. */
html:root body.vc-reference-home .page > header { position: sticky !important; top: 0; inset-inline: auto !important; width: 100% !important; transform: none !important; border-radius: 14px 14px 0 0; background: #fff !important; z-index: 100; }
html:root body.vc-reference-home .header > .container { min-height: 42px !important; }
html:root body.vc-reference-home .topbar :is(.container,.topbar__item,.social-line) { min-height: 22px !important; }
html:root body.vc-reference-home .hero { height: auto !important; }
html:root body.vc-reference-home .hero > .container { min-height: 0 !important; }
html:root body.vc-reference-home .hero-callback { width: 100% !important; }
html:root body.vc-reference-home .checks li { flex-direction: row !important; }
html:root body.vc-reference-home main > .vc-section > .vc-container > :is(h2,.vc-lead) { text-align: left !important; }
html:root body.vc-reference-home .vc-faq button { text-align: left !important; justify-content: space-between !important; gap: 14px; }
html:root body.vc-reference-home .vc-faq button::before { display: none !important; }
html:root body.vc-reference-home .vc-quiz .vc-choice-grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
html:root body.vc-reference-home .vc-quiz__step { min-height: 125px !important; }
html:root body.vc-reference-home .vc-logo-grid { display: grid !important; width: 100%; overflow: visible !important; }
html:root body.vc-reference-home .vc-logo-grid .vc-client { width: auto !important; min-width: 0 !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-intro h2 { text-align: left !important; }
@media (max-width: 900px) {
 html:root body.vc-reference-home .vc-quiz .vc-choice-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .page > header { border-radius: 0; }
 html:root body.vc-reference-home .header > .container { min-height: 35px !important; }
}
/* Final sizing and responsive controls. */
html:root body.vc-reference-home { overflow-x: clip; }
html:root body.vc-reference-home .hero > .container { height: auto !important; }
html:root body.vc-reference-home .topbar :is(.container,.topbar__group,.vc-header-contacts,.social-line) { min-height: 22px !important; height: 22px !important; }
html:root body.vc-reference-home .topbar { padding: 4px 0 !important; }
html:root body.vc-reference-home .topbar .vc-socials { height: 22px; }
html:root body.vc-reference-home .hero-callback__phone { display: flex !important; align-items: center; gap: 7px; }
html:root body.vc-reference-home .hero-callback__phone > .icon { position: static !important; flex: 0 0 16px; width: 16px !important; height: 16px !important; transform: none !important; color: #4388a4 !important; }
html:root body.vc-reference-home .hero-callback__phone input { border: 0 !important; background: none !important; box-shadow: none !important; border-radius: 0 !important; padding: 0 !important; flex: 1; width: 100%; min-width: 0; }
html:root body.vc-reference-home .hero-callback__phone > .hero-callback__feedback:empty { display: none !important; }
html:root body.vc-reference-home .vc-quiz-section .vc-section-kicker { background: #edf8fd !important; border: 0 !important; color: #087bab !important; font-size: 16px !important; padding: 4px 9px !important; border-radius: 20px; }
html:root body.vc-reference-home .vc-benefit { min-height: 0 !important; }
html:root body.vc-reference-home .vc-benefit::before { grid-column: 1; grid-row: 1/3; width: 28px !important; height: 28px !important; margin: 0 !important; }
html:root body.vc-reference-home .vc-faq button::after { content: '+' !important; display: grid !important; place-items: center; flex: 0 0 22px; width: 22px; height: 22px; border-radius: 5px; }
html:root body.vc-reference-home .vc-faq.is-open button::after { content: '−' !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step { display: flex !important; flex-direction: column; }
html:root body.vc-reference-home .vc-steps--compact .vc-step img { order: 4; margin-top: auto; }
html:root body.vc-reference-home .vc-steps--compact .vc-step h3 { min-height: 34px; margin: 0 !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step p { margin: 0 0 6px !important; }
@media (max-width: 900px) {
 html:root body.vc-reference-home #home-equipment-cards { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; grid-auto-flow: row !important; grid-auto-columns: auto !important; overflow: visible !important; }
 html:root body.vc-reference-home #home-equipment-cards .vc-equipment { width: auto !important; min-width: 0 !important; height: auto !important; }
 html:root body.vc-reference-home .vc-service-toolbar:has(.vc-equipment-filters) .vc-strip-nav { display: none !important; }
 html:root body.vc-reference-home .vc-equipment-filters { overflow-x: auto; }
 html:root body.vc-reference-home #reviews .vc-review-filters { overflow-x: auto; }
 html:root body.vc-reference-home .mobile-menu { top: 88px !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero__visual { opacity: .35; }
 html:root body.vc-reference-home .hero-callback__form .hero-callback__submit { min-height: 40px !important; padding: 10px 8px !important; font-size: 16px !important; }
 html:root body.vc-reference-home .header > .container { gap: 9px !important; }
 html:root body.vc-reference-home .hr-header-cta { padding: 8px 7px !important; }
 html:root body.vc-reference-home .burger { padding: 7px !important; height: 34px !important; width: 34px !important; }
 html:root body.vc-reference-home .mobile-menu { top: 84px !important; }
}
@media (max-width: 1150px) {
 html:root body.vc-reference-home #home-services-cards { display: grid !important; grid-template-columns: none !important; grid-auto-flow: column !important; grid-auto-columns: calc((100% - 28px)/3) !important; overflow-x: auto !important; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #bbdce9 transparent; padding-bottom: 9px !important; }
 html:root body.vc-reference-home .vc-service-toolbar:has(.vc-service-filters) .vc-strip-nav { display: inline-flex !important; margin-bottom: 9px; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home #home-equipment-cards { display: grid !important; grid-template-columns: none !important; grid-auto-flow: column !important; grid-auto-columns: calc((100% - 14px)/2) !important; overflow-x: auto !important; scroll-snap-type: x mandatory; }
 html:root body.vc-reference-home .vc-service-toolbar:has(.vc-equipment-filters) .vc-strip-nav { display: inline-flex !important; margin-bottom: 9px; }
 html:root body.vc-reference-home #reviews .vc-review-filters + .vc-grid-3 { display: grid !important; overflow: visible !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home #home-services-cards { grid-auto-columns: 83% !important; gap: 12px !important; }
 html:root body.vc-reference-home .service-card__body > p { flex: 1; }
 html:root body.vc-reference-home .service-card__top { min-height: 0 !important; display: flex !important; gap: 7px !important; align-items: center; }
 html:root body.vc-reference-home .service-card__top .icon { flex: 0 0 22px; margin: 0; }
 html:root body.vc-reference-home #home-equipment-cards { grid-auto-columns: 83% !important; }
 html:root body.vc-reference-home #reviews .vc-review-filters + .vc-grid-3 { grid-template-columns: 1fr !important; overflow: visible !important; }
 html:root body.vc-reference-home #reviews .vc-review { width: auto !important; min-width: 0 !important; }
 html:root body.vc-reference-home .vc-strip-nav button { width: 40px !important; height: 40px !important; min-height: 40px !important; }
 html:root body.vc-reference-home .hero .badge { min-height: 26px !important; }
}
html:root body.vc-reference-home .vc-quiz-section .vc-kicker { background: #edf8fd !important; border: 0 !important; color: #087bab !important; font-size: 16px !important; padding: 4px 9px !important; border-radius: 20px; min-height: 0 !important; }
html:root body.vc-reference-home .hr-mobile-track-nav { display: none; }
html:root body.vc-reference-home .vc-step__toggle { background: #fff !important; color: #1c4b5c !important; border: 0 !important; box-shadow: none !important; border-radius: 0 !important; text-align: left; font-size: 16px !important; min-height: 30px !important; padding: 0 !important; }
html:root body.vc-reference-home .vc-step__toggle::after { color: #0878ad !important; }
@media (max-width: 600px) {
 html:root body.vc-reference-home :is(.hr-promotions,#reviews) .hr-mobile-carousel { display: grid !important; grid-template-columns: none !important; grid-auto-flow: column !important; grid-auto-columns: 85% !important; overflow-x: auto !important; scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #bcdde9 transparent; padding-bottom: 8px; gap: 12px !important; }
 html:root body.vc-reference-home .hr-mobile-carousel > * { scroll-snap-align: start; }
 html:root body.vc-reference-home .hr-mobile-track-nav { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; }
 html:root body.vc-reference-home .hr-mobile-track-nav > span { margin-right: auto; font-size: 16px; color: #647d87; }
 html:root body.vc-reference-home .hr-mobile-track-nav > button { width: 40px; height: 40px; padding: 0; border: 1px solid #c8e4f0; background: #f2faff; border-radius: 50%; color: #087aad; font-size: 23px; cursor: pointer; }
 html:root body.vc-reference-home .hr-mobile-track-nav > button:disabled { opacity: .4; cursor: default; }
 html:root body.vc-reference-home #reviews .vc-review { padding: 0 !important; }
 html:root body.vc-reference-home #reviews .vc-review__head { padding: 14px 14px 7px !important; }
 html:root body.vc-reference-home #reviews .vc-review__avatar { width: 34px !important; height: 34px !important; }
 html:root body.vc-reference-home #reviews .vc-review__head h3 { font-size: 16px !important; }
 html:root body.vc-reference-home #reviews .vc-review__object { height: 75px !important; }
 html:root body.vc-reference-home #reviews .vc-review > p { padding: 0 14px !important; font-size: 16px !important; }
}
html:root body.vc-reference-home #reviews #home-review-cards { display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
@media (max-width: 900px) {
 html:root body.vc-reference-home #reviews #home-review-cards { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home #reviews #home-review-cards { grid-template-columns: none !important; grid-auto-flow: column !important; grid-auto-columns: 85% !important; overflow-x: auto !important; }
}
html:root body.vc-reference-home .page { width: min(1280px,calc(100% - 48px)) !important; }
@media (max-width: 900px) {
 html:root body.vc-reference-home .page { width: calc(100% - 24px) !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .page { width: 100% !important; }
}
html:root body.vc-reference-home .vc-strip-nav button { border-radius: 50% !important; }
html:root body.vc-reference-home #reviews .vc-grid-3:has(.vc-stat) { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
html:root body.vc-reference-home #reviews .vc-stat { min-height: 0 !important; }
html:root body.vc-reference-home .note > p { font-weight: 400 !important; }
@media (max-width: 600px) {
 html:root body.vc-reference-home .services .note { display: grid !important; grid-template-columns: 24px minmax(0,1fr); align-items: start; gap: 10px !important; }
 html:root body.vc-reference-home .services .note > .icon { width: 24px; height: 24px; }
 html:root body.vc-reference-home .services .note > p { text-align: left !important; font-size: 16px !important; line-height: 1.4 !important; }
 html:root body.vc-reference-home .services .note > .btn { grid-column: 1/-1; }
 html:root body.vc-reference-home #reviews .vc-stat { display: flex !important; flex-direction: column; padding: 10px 6px !important; gap: 3px; text-align: center !important; }
 html:root body.vc-reference-home #reviews .vc-stat::before { width: 24px !important; height: 24px !important; margin: 0 0 3px !important; }
 html:root body.vc-reference-home #reviews .vc-stat strong { font-size: 20px !important; margin: 0 !important; }
 html:root body.vc-reference-home #reviews .vc-stat span { font-size: 16px !important; line-height: 1.4 !important; }
}
/* Follow the document order: calculator before services, without legacy flex ordering. */
html:root body.vc-reference-home .page > main { display: block !important; }
html:root body.vc-reference-home main h2 { text-align: left !important; }
@media (min-width: 601px) and (max-width: 1023px) {
 html:root body.vc-reference-home .hr-promotions .vc-grid-3 { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .hr-benefits .vc-grid-3 { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .vc-about-details .vc-about__side { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .vc-about__panel { padding: 12px !important; }
 html:root body.vc-reference-home .vc-about__panel h3 { font-size: 16px !important; }
 html:root body.vc-reference-home .vc-about__panel ul { font-size: 16px !important; line-height: 1.5 !important; padding-left: 14px; }
 html:root body.vc-reference-home .vc-about__logos span { font-size: 16px !important; }
 html:root body.vc-reference-home .vc-benefit h3 { font-size: 16px !important; }
 html:root body.vc-reference-home .vc-benefit p { font-size: 16px !important; }
}

/* Show the complete photograph at every breakpoint, without cover cropping. */
html:root body.vc-reference-home img.service-card__image[src],
html:root body.vc-reference-home .vc-promo > img[src],
html:root body.vc-reference-home .vc-equipment img[src],
html:root body.vc-reference-home .vc-steps--compact .vc-step img,
html:root body.vc-reference-home #reviews .vc-review__object {
 display: block; width: 100% !important; height: auto !important;
 min-height: 0 !important; max-height: none !important; aspect-ratio: auto !important;
 object-fit: contain !important; object-position: center; flex: 0 0 auto;
}
html:root body.vc-reference-home .vc-equipment img[src] { max-height: 210px !important; }
html:root body.vc-reference-home .vc-steps--compact .vc-step__details {
 height: auto !important; min-height: 0 !important; max-height: none !important;
 overflow: visible !important;
}
html:root body.vc-reference-home :is(.vc-about__media,.vc-contacts__media) {
 height: auto !important; min-height: 0 !important; max-height: none !important;
 background: transparent !important; align-self: center;
}
html:root body.vc-reference-home .vc-about__media img,
html:root body.vc-reference-home #contacts .vc-contacts__media img {
 display: block; width: auto !important; height: auto !important;
 min-height: 0 !important; max-width: 100% !important; aspect-ratio: auto !important;
 object-fit: contain !important; object-position: center; margin-inline: auto !important;
}
html:root body.vc-reference-home .vc-about__media img { max-height: 360px !important; }
html:root body.vc-reference-home #contacts .vc-contacts__media img { max-height: 320px !important; }
html:root body.vc-reference-home #reviews .vc-review__avatar { object-fit: contain !important; }
html:root body.vc-reference-home .hero__visual {
 background-size: contain !important; background-position: right center !important;
 opacity: 1;
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero__visual {
  position: relative !important; inset: auto !important; width: calc(100% - 32px) !important;
  height: auto !important; aspect-ratio: 1738 / 905; margin: 16px auto 0 !important;
  background-size: contain !important; background-position: center !important;
  opacity: 1 !important; border-radius: 10px !important;
 }
 html:root body.vc-reference-home .hero__visual::before { display: none !important; }
 html:root body.vc-reference-home .vc-about__media img { max-height: 340px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__media img { max-height: 280px !important; }
}
@media (max-width: 380px) {
 html:root body.vc-reference-home .header .brand { min-width: 125px; }
 html:root body.vc-reference-home .header .brand__image { width: 125px !important; }
 html:root body.vc-reference-home .header .hr-header-cta { max-width: 92px; white-space: normal; font-size: 16px !important; text-align: center; }
 html:root body.vc-reference-home .vc-footer a { overflow-wrap: anywhere; }
}

/* Clear section boundaries and a filled footer. */
html:root body.vc-reference-home main > :is(.vc-section,.services) {
 border-top: 1px solid #dbeaf1 !important; padding-block: 36px !important;
}
html:root body.vc-reference-home main > :is(.vc-section,.services):nth-of-type(even) {
 background: linear-gradient(115deg,#f2f9fd,#eaf5fc) !important;
}
html:root body.vc-reference-home .stats-wrap { border-bottom: 1px solid #e4eef3; }
html:root body.vc-reference-home .vc-footer {
 background: linear-gradient(115deg,#d6ebf6,#e7f3fa 65%,#e8f2e3) !important;
 border-top: 1px solid #bddae8 !important; padding: 36px 0 20px !important;
}
html:root body.vc-reference-home .vc-footer :is(p,a,span) { font-size: 16px !important; color: #355968 !important; }
html:root body.vc-reference-home .vc-footer h3 { font-size: 16px !important; color: #173d4d !important; }
html:root body.vc-reference-home .vc-footer__bottom { border-color: #c1dce8 !important; }
html:root body.vc-reference-home .vc-footer__bottom :is(a,span) { font-size: 16px !important; }
/* Translucent glass: keep both header rows transparent above the blurred surface. */
html:root body.vc-reference-home .page > header {
 background: rgba(255,255,255,.76) !important;
 -webkit-backdrop-filter: blur(20px) saturate(140%);
 backdrop-filter: blur(20px) saturate(140%);
 border-bottom: 1px solid rgba(196,221,233,.65);
 box-shadow: 0 5px 24px #123e510d;
}
html:root body.vc-reference-home :is(.topbar,.header) { background: transparent !important; }
html:root body.vc-reference-home .topbar { border-color: rgba(195,218,230,.45); }
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
 html:root body.vc-reference-home .page > header { background: rgba(255,255,255,.94) !important; }
}
/* Client marks need enough space to read the original raster logos. */
html:root body.vc-reference-home #clients .vc-logo-grid {
 display: grid !important; grid-template-columns: repeat(6,minmax(0,1fr)) !important;
 gap: 14px !important; overflow: visible !important;
}
html:root body.vc-reference-home #clients .vc-client {
 display: flex !important; flex-direction: column; align-items: center; justify-content: center;
 width: auto !important; min-width: 0 !important; min-height: 184px !important;
 padding: 12px !important; gap: 8px; background: #fff !important;
 border: 1px solid #deebf2 !important; border-radius: 12px !important;
 box-shadow: 0 3px 12px #1b4b6106 !important;
}
html:root body.vc-reference-home #clients .vc-client img {
 display: block; width: 100% !important; max-width: 100% !important;
 height: auto !important; min-height: 0 !important; max-height: 146px !important;
 aspect-ratio: auto !important; object-fit: contain !important; flex: 0 0 auto;
}
html:root body.vc-reference-home .hr-client-name {
 display: block; width: 100%; min-height: 20px; text-align: center;
 font-size: 16px; font-weight: 600; line-height: 1.4; color: #234b5d;
 overflow-wrap: anywhere;
}
/* Form text gets its own line height, space, and unrestricted wrapping. */
html:root body.vc-reference-home #contacts .vc-contacts__grid {
 grid-template-columns: minmax(0,1fr) minmax(0,1.15fr) minmax(0,.7fr) !important;
}
html:root body.vc-reference-home #contacts .vc-contacts__grid > *,
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card {
 min-width: 0 !important; max-width: 100%; overflow: visible !important;
}
html:root body.vc-reference-home #contacts .vc-form {
 width: 100%; min-width: 0; height: auto !important; min-height: 0; max-height: none !important;
 padding: 20px !important; gap: 16px !important; overflow: visible !important;
}
html:root body.vc-reference-home #contacts .vc-form label:not(.vc-form__check) {
 display: grid; min-width: 0; gap: 8px !important; margin: 0 !important;
 font-size: 16px !important; line-height: 1.5; color: #244b5d;
}
html:root body.vc-reference-home #contacts .vc-form input:not([type='checkbox']):not([type='hidden']) {
 box-sizing: border-box; width: 100%; min-width: 0 !important; max-width: 100%;
 height: 52px !important; min-height: 52px !important; padding: 12px 14px !important;
 font-size: 16px !important; line-height: 22px !important;
}
html:root body.vc-reference-home #contacts .vc-form input::placeholder { color: #687f8b; opacity: 1; }
html:root body.vc-reference-home #contacts .vc-form__hint {
 display: block; min-width: 0; font-size: 16px; line-height: 1.5; color: #5b7482;
 white-space: normal; overflow-wrap: anywhere;
}
html:root body.vc-reference-home #contacts .vc-form__check {
 display: grid !important; grid-template-columns: 18px minmax(0,1fr);
 align-items: start; gap: 10px; min-width: 0; max-width: 100%;
}
html:root body.vc-reference-home #contacts .vc-form__check input {
 width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 18px;
}
html:root body.vc-reference-home #contacts .vc-form__check > span {
 display: block; min-width: 0; font-size: 16px !important; line-height: 20px !important;
 white-space: normal; overflow-wrap: anywhere; color: #425f6e;
}
html:root body.vc-reference-home #contacts .vc-form button[type='submit'] {
 min-height: 48px !important; padding: 12px 16px !important; font-size: 16px !important;
 white-space: normal; line-height: 1.4 !important;
}
html:root body.vc-reference-home #contacts .vc-form__selection {
 min-width: 0; margin: 0; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere;
}
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card,
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card a {
 white-space: normal; overflow-wrap: anywhere; font-size: 16px !important; line-height: 1.5 !important;
}
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card > span { font-size: 16px !important; line-height: 1.4; }
@media (max-width: 900px) {
 html:root body.vc-reference-home #clients .vc-logo-grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home #clients .vc-client { min-height: 160px !important; padding: 10px !important; }
 html:root body.vc-reference-home #contacts .vc-contacts__grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home main > :is(.vc-section,.services) { padding-block: 28px !important; }
 html:root body.vc-reference-home #clients #home-client-cards {
  grid-template-columns: none !important; grid-template-rows: repeat(3,auto);
  grid-auto-flow: column; grid-auto-columns: calc((100% - 12px)/2);
  overflow-x: auto !important; gap: 12px !important; padding-bottom: 8px;
  scroll-snap-type: x mandatory; scrollbar-width: thin; scrollbar-color: #a7d1e6 transparent;
 }
 html:root body.vc-reference-home #clients .vc-client { min-height: 164px !important; padding: 8px !important; }
 html:root body.vc-reference-home #clients .vc-client img { max-height: 110px !important; }
 html:root body.vc-reference-home .hr-client-name { font-size: 16px; min-height: 36px; display: grid; align-items: center; }
 html:root body.vc-reference-home #contacts .vc-contacts__grid { grid-template-columns: minmax(0,1fr) !important; }
 html:root body.vc-reference-home #contacts .vc-form { padding: 16px !important; }
 html:root body.vc-reference-home #contacts .vc-form input:not([type='checkbox']):not([type='hidden']) { padding-inline: 10px !important; }
}

/* First-screen composition from the banner reference; preserve the company copy. */
html:root body.vc-reference-home .hero {
 padding: 0 !important; min-height: 0 !important; height: auto !important;
 background: linear-gradient(115deg,#f5fcff,#e3f4fc) !important; overflow: hidden;
}
html:root body.vc-reference-home .hr-banner-stage { position: relative; min-height: 420px; }
html:root body.vc-reference-home .hero .hr-banner-stage > .container {
 position: relative; z-index: 2; height: auto !important; min-height: 420px !important;
 padding: 38px 0 34px !important; display: block !important;
}
html:root body.vc-reference-home .hero .hero__content {
 width: 56% !important; max-width: 650px !important; padding: 0 !important;
}
html:root body.vc-reference-home .hero .badge {
 min-height: 0 !important; padding: 8px 13px !important; font-size: 16px !important;
 letter-spacing: .3px; background: #d5f0fc !important; color: #087eb0 !important;
 border-radius: 25px; margin: 0 0 14px !important;
}
html:root body.vc-reference-home .hero h1 {
 width: auto !important; max-width: none !important; margin: 0 0 20px !important;
 font-size: 56px !important; line-height: 1.06 !important; letter-spacing: -1.8px;
 font-weight: 800; color: #122d42 !important;
}
html:root body.vc-reference-home .hero .hero__city { color: #31842b !important; }
html:root body.vc-reference-home .hero .hero__lead {
 font-size: 18px !important; line-height: 1.5 !important; color: #496475 !important;
 margin: 0 0 26px !important;
}
html:root body.vc-reference-home .hero .hr-hero-actions { gap: 14px; margin: 0 !important; }
html:root body.vc-reference-home .hero .hr-hero-actions .btn {
 min-height: 52px !important; padding: 14px 22px !important; border-radius: 12px !important;
 font-size: 16px !important; box-shadow: 0 6px 18px #237e2320 !important;
}
html:root body.vc-reference-home .hero .hr-hero-actions .hr-primary {
 background: linear-gradient(110deg,#388429,#27751f) !important;
}
html:root body.vc-reference-home .hero .hr-hero-actions .hr-secondary {
 border-color: #b4ddee !important; background: linear-gradient(120deg,#fff,#f3fbff) !important;
 color: #087db3 !important; box-shadow: 0 5px 18px #1179a718 !important;
}
html:root body.vc-reference-home .hero .hero__visual {
 position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important;
 aspect-ratio: auto !important; margin: 0 !important; border-radius: 0 !important;
 background-size: contain !important; background-position: center !important; opacity: 1 !important; z-index: 1;
}
html:root body.vc-reference-home .hero .hero__visual::before {
 display: block !important; background: linear-gradient(90deg,#f4fbff 0%,#f4fbfff2 30%,#f4fbffb8 44%,#f4fbff00 64%) !important;
}
html:root body.vc-reference-home .hero .stats-wrap {
 position: absolute; top: 32px; right: 32px; width: 172px; margin: 0 !important;
 padding: 0 !important; border: 0 !important; background: none !important; z-index: 3;
}
html:root body.vc-reference-home .hero .stats-wrap .container { width: 100% !important; height: auto; min-height: 0; padding: 0 !important; }
html:root body.vc-reference-home .hero .stats {
 display: grid !important; grid-template-columns: 1fr !important; gap: 10px !important;
 padding: 0 !important; background: none !important;
}
html:root body.vc-reference-home .hero .stat {
 display: flex; align-items: center; gap: 9px !important; min-height: 74px; padding: 12px !important;
 border: 1px solid #ffffffa6 !important; border-radius: 16px; background: #ffffffe3 !important;
 box-shadow: 0 4px 20px #193c4e0a; backdrop-filter: blur(8px);
}
html:root body.vc-reference-home .hero .stat__icon {
 flex: 0 0 32px; width: 32px !important; height: 32px !important; border-radius: 50%;
 background: #e8f7ec !important; color: #468d39 !important;
}
html:root body.vc-reference-home .hero .stat:nth-child(odd) .stat__icon { color: #0a87b9 !important; background: #e7f6fd !important; }
html:root body.vc-reference-home .hero .stat strong { font-size: 18px !important; line-height: 1.2; }
html:root body.vc-reference-home .hero .stat span span { font-size: 16px !important; line-height: 1.35; color: #577583; }
html:root body.vc-reference-home .hr-banner-benefits {
 position: relative; z-index: 4; padding: 24px 0; border-radius: 18px;
 background: #fffffff7; box-shadow: 0 5px 22px #1664800a; border: 1px solid #edf5f8;
}
html:root body.vc-reference-home .hero .checks {
 display: grid !important; grid-template-columns: repeat(4,minmax(0,1fr));
 gap: 0 !important; margin: 0 !important; padding: 0 !important;
}
html:root body.vc-reference-home .hero .checks li {
 display: flex !important; align-items: center; gap: 13px !important; padding: 0 22px !important;
 font-size: 16px !important; line-height: 1.45 !important; font-weight: 600;
 color: #244859 !important; border-right: 1px solid #e5eff3; min-width: 0;
}
html:root body.vc-reference-home .hero .checks li:first-child { padding-left: 0 !important; }
html:root body.vc-reference-home .hero .checks li:last-child { border-right: 0; }
html:root body.vc-reference-home .hero .hero-benefit__icon {
 flex: 0 0 52px; width: 52px !important; height: 52px !important; border-radius: 50%;
 background: #eaf8e5 !important; color: #438e36 !important;
}
html:root body.vc-reference-home .hero .hero-benefit__icon .icon { width: 26px !important; height: 26px !important; }
html:root body.vc-reference-home .hr-banner-callback { padding: 20px 0 24px; background: #fff; }
html:root body.vc-reference-home .hr-banner-callback .hero-callback {
 background: linear-gradient(110deg,#f5fbfe,#fbfdf8) !important; border-color: #e1edf2 !important;
}
@media (max-width: 1150px) {
 html:root body.vc-reference-home .hero h1 { font-size: 46px !important; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 16px !important; }
 html:root body.vc-reference-home .hero .hero__content { width: 56% !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; padding: 12px 16px !important; }
 html:root body.vc-reference-home .hero .checks li { padding-inline: 12px !important; font-size: 16px !important; gap: 9px !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { flex-basis: 44px; width: 44px !important; height: 44px !important; }
 html:root body.vc-reference-home .hero .stats-wrap { width: 152px; right: 20px; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home .hr-banner-stage { min-height: 400px; }
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 400px !important; padding-block: 32px !important; }
 html:root body.vc-reference-home .hero .hero__content { width: 66% !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 41px !important; }
 html:root body.vc-reference-home .hero .hero__visual::before { background: linear-gradient(90deg,#f4fbfff5 0%,#f4fbffe8 42%,#f4fbff7a 62%,#f4fbff00 100%) !important; }
 html:root body.vc-reference-home .hero .stats-wrap { width: 144px; right: 16px; top: 32px; }
 html:root body.vc-reference-home .hero .stat { min-height: 68px; padding: 10px !important; gap: 6px !important; }
 html:root body.vc-reference-home .hero .stat strong { font-size: 16px !important; }
 html:root body.vc-reference-home .hero .checks li { padding-inline: 8px !important; font-size: 16px !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width: 36px !important; height: 36px !important; flex-basis: 36px; }
 html:root body.vc-reference-home .hero .hero-benefit__icon .icon { width: 20px !important; height: 20px !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .hr-banner-stage { min-height: 0; }
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 0 !important; padding: 24px 0 20px !important; }
 html:root body.vc-reference-home .hero .hero__content { width: 100% !important; max-width: none !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 36px !important; line-height: 1.08 !important; letter-spacing: -.8px; margin-bottom: 16px !important; }
 html:root body.vc-reference-home .hero .badge { font-size: 16px !important; padding: 6px 9px !important; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 16px !important; margin-bottom: 20px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions { gap: 8px; flex-wrap: nowrap; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { min-height: 46px !important; font-size: 16px !important; padding: 11px 9px !important; }
 html:root body.vc-reference-home .hero .hero__visual {
  position: relative !important; inset: auto !important; width: calc(100% - 32px) !important;
  height: auto !important; aspect-ratio: 1738 / 905 !important; margin: 0 auto !important;
  border-radius: 12px !important; background-size: contain !important;
 }
 html:root body.vc-reference-home .hero .hero__visual::before { display: none !important; }
 html:root body.vc-reference-home .hero .stats-wrap { position: static; width: calc(100% - 32px); margin: 16px auto !important; }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 8px !important; }
 html:root body.vc-reference-home .hero .stat { min-height: 64px; border-radius: 12px; }
 html:root body.vc-reference-home .hr-banner-benefits { padding: 18px 0; border-radius: 14px; }
 html:root body.vc-reference-home .hero .checks { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 8px !important; }
 html:root body.vc-reference-home .hero .checks li { border: 0; padding: 0 !important; font-size: 16px !important; gap: 8px !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width: 38px !important; height: 38px !important; flex-basis: 38px; }
 html:root body.vc-reference-home .hr-banner-callback { padding: 18px 0 20px; }
}
@media (max-width: 360px) {
 html:root body.vc-reference-home .hero h1 { font-size: 32px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; }
}
html:root body.vc-reference-home .hero .container { height: auto !important; min-height: 0 !important; }
html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 420px !important; }
@media (max-width: 900px) {
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 400px !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 0 !important; }
}
/* Keep compact metric cards aligned and avoid covering the photo on tablets. */
html:root body.vc-reference-home .hero .stat > span:not(.stat__icon) { display: block; min-width: 0; text-align: left; }
html:root body.vc-reference-home .hero .stat strong { display: block; margin: 0 0 4px !important; }
html:root body.vc-reference-home .hero .stat span span { display: block; margin: 0 !important; }
@media (min-width: 601px) and (max-width: 900px) {
 html:root body.vc-reference-home .hero .stats-wrap { position: relative; top: auto; right: auto; width: calc(100% - 40px); margin: 0 auto 18px !important; }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 8px !important; }
 html:root body.vc-reference-home .hero .hero__visual { height: 400px !important; inset: 0 0 auto !important; }
}
html:root body.vc-reference-home .hero .stats { align-items: stretch !important; }
html:root body.vc-reference-home .hero .hr-banner-calendar {
 flex: 0 0 20px; width: 20px; height: 20px; color: #0789bd;
 fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round;
}
html:root body.vc-reference-home .hero .hr-hero-actions .hr-secondary { gap: 10px; }
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero .hr-banner-calendar { flex-basis: 18px; width: 18px; height: 18px; }
 html:root body.vc-reference-home .hero .hr-hero-actions .hr-secondary { gap: 6px; }
}

/* Reference correction: the provided photographic scene, vivid buttons and single-line header. */
html:root body.vc-reference-home {
 background: radial-gradient(ellipse at 55% 0%,#c3eafb 0,transparent 46%),linear-gradient(125deg,#e6f6fd,#d4effb 50%,#f6fcff) !important;
}
html:root body.vc-reference-home .page { width: min(1280px,calc(100% - 76px)); margin: 56px auto 24px !important; border-radius: 18px; }
html:root body.vc-reference-home .site-header { border-radius: 18px 18px 0 0; }
html:root body.vc-reference-home .header { padding: 10px 0 !important; }
html:root body.vc-reference-home .header > .container { width: calc(100% - 48px) !important; max-width: none !important; gap: 18px !important; min-height: 50px; }
html:root body.vc-reference-home .brand { min-width: 210px; }
html:root body.vc-reference-home .brand__image { width: 210px !important; height: 50px !important; }
html:root body.vc-reference-home .menu { gap: 16px !important; }
html:root body.vc-reference-home .menu a { font-size: 16px !important; white-space: nowrap; }
html:root body.vc-reference-home .hr-header-contact { display: grid !important; gap: 3px !important; flex: 0 0 auto; grid-template-columns: auto auto; }
html:root body.vc-reference-home .hr-header-contact .social-line { grid-column: 1 / -1; grid-row: 1; display: flex; align-items: center; gap: 7px; color: #183245 !important; font-size: 16px !important; font-weight: 700; white-space: nowrap; }
html:root body.vc-reference-home .hr-header-contact .social-line .icon { width: 19px; height: 19px; color: #098ac1; }
html:root body.vc-reference-home .hr-header-contact .topbar__item { grid-column: 1 / -1; grid-row: 2; font-size: 16px; color: #637382; white-space: nowrap; }
html:root body.vc-reference-home .hr-header-contact .topbar__item .icon { display: none; }
html:root body.vc-reference-home .hr-header-contact .vc-socials { grid-column: 1 / -1; grid-row: 3; justify-content: center; gap: 12px; }
html:root body.vc-reference-home .vc-socials--header .vc-social { width: 17px; height: 17px; min-width: 17px; }
html:root body.vc-reference-home .vc-socials--header .vc-social img { width: 16px; height: 16px; }
html:root body.vc-reference-home .hr-header-cta { min-height: 44px !important; border-radius: 12px !important; padding-inline: 18px !important; background: linear-gradient(115deg,#70c94a,#328c25) !important; border-color: #75bf58 !important; font-size: 16px !important; box-shadow: 0 5px 18px #4ca43a26 !important; }
html:root body.vc-reference-home .hero { background: #f2faff !important; }
html:root body.vc-reference-home .hr-banner-stage { min-height: 430px; aspect-ratio: 2048 / 720; }
html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 430px !important; width: calc(100% - 92px) !important; max-width: none !important; padding: 26px 0 24px !important; }
html:root body.vc-reference-home .hero .hero__content { width: 56% !important; max-width: 620px !important; }
html:root body.vc-reference-home .hero .badge { font-size: 16px !important; padding: 8px 12px !important; margin-bottom: 12px !important; background: #cbeafa !important; }
html:root body.vc-reference-home .hero h1 { font-size: 52px !important; line-height: 1 !important; letter-spacing: -1.8px; margin-bottom: 12px !important; }
html:root body.vc-reference-home .hero .hr-banner-location { display: inline-block; color: #308331; font-size: 44px; line-height: 1.15; letter-spacing: -1.4px; }
html:root body.vc-reference-home .hero .hero__city { color: inherit !important; }
html:root body.vc-reference-home .hero .hero__lead { font-size: 18px !important; line-height: 1.35 !important; margin-bottom: 23px !important; color: #546777 !important; }
html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; padding: 14px 20px !important; min-height: 52px !important; border-radius: 13px !important; }
html:root body.vc-reference-home .hero .hr-hero-actions .hr-primary { background: linear-gradient(115deg,#69c743,#349227) !important; border-color: #6abe4c !important; box-shadow: 0 7px 18px #48aa3b29 !important; }
html:root body.vc-reference-home .hero .hr-hero-actions .hr-secondary { background: #ffffffeb !important; border: 2px solid #cae4f2 !important; color: #0c8ecb !important; box-shadow: 0 6px 18px #179aca1a !important; }
html:root body.vc-reference-home .hero .hero__visual { background-image: url('/assets/index2-html/hero-apartment-background-20261009.webp') !important; background-position: center !important; background-size: contain !important; }
html:root body.vc-reference-home .hero .hero__visual::before { display: none !important; }
html:root body.vc-reference-home .hr-banner-details { margin-top: 12px; color: #607486; font-size: 16px; }
html:root body.vc-reference-home .hr-banner-details .topbar__item { display: flex; gap: 6px; align-items: center; }
html:root body.vc-reference-home .hr-banner-details .icon { width: 14px; height: 14px; color: #0d8ec2; }
html:root body.vc-reference-home .hero .stats-wrap { right: 28px; top: 54px; width: 180px; }
html:root body.vc-reference-home .hero .stats { gap: 8px !important; }
html:root body.vc-reference-home .hero .stat { min-height: 72px; padding: 12px !important; border-radius: 16px; background: #ffffffed !important; gap: 10px !important; }
html:root body.vc-reference-home .hero .stat__icon { flex-basis: 40px; width: 40px !important; height: 40px !important; }
html:root body.vc-reference-home .hero .stat strong { font-size: 17px !important; }
html:root body.vc-reference-home .hero .stat span span { font-size: 16px !important; }
html:root body.vc-reference-home .hr-banner-benefits { padding: 25px 0; border-radius: 18px; box-shadow: 0 8px 22px #2586b50d; background: #ffffffed; }
html:root body.vc-reference-home .hr-banner-benefits .container { width: calc(100% - 92px) !important; max-width: none !important; }
html:root body.vc-reference-home .hero .checks li { font-size: 16px !important; gap: 13px !important; padding-inline: 20px !important; }
html:root body.vc-reference-home .hero .hero-benefit__icon { width: 58px !important; height: 58px !important; flex-basis: 58px; background: linear-gradient(130deg,#e3f7df,#f4fcf0) !important; color: #318b2e !important; }
html:root body.vc-reference-home .hero .hero-benefit__icon .icon { width: 28px !important; height: 28px !important; }
@media (max-width: 1190px) and (min-width: 901px) {
 html:root body.vc-reference-home .brand { min-width: 170px; }
 html:root body.vc-reference-home .brand__image { width: 170px !important; }
 html:root body.vc-reference-home .header > .container { gap: 12px !important; }
 html:root body.vc-reference-home .menu { gap: 11px !important; }
 html:root body.vc-reference-home .menu a { font-size: 16px !important; }
 html:root body.vc-reference-home .hr-header-cta { font-size: 16px !important; padding-inline: 12px !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 47px !important; }
 html:root body.vc-reference-home .hero .hr-banner-location { font-size: 40px; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 16px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; padding-inline: 14px !important; }
 html:root body.vc-reference-home .hero .stats-wrap { width: 152px; right: 20px; }
 html:root body.vc-reference-home .hero .checks li { padding-inline: 10px !important; font-size: 16px !important; gap: 10px !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width: 44px !important; height: 44px !important; flex-basis: 44px; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home .page { width: calc(100% - 32px); margin-top: 24px !important; }
 html:root body.vc-reference-home .header > .container { width: calc(100% - 32px) !important; gap: 14px !important; }
 html:root body.vc-reference-home .brand { min-width: 180px; }
 html:root body.vc-reference-home .brand__image { width: 180px !important; height: 44px !important; }
 html:root body.vc-reference-home .hr-banner-stage { min-height: 0; aspect-ratio: auto; }
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 400px !important; width: calc(100% - 48px) !important; padding-block: 26px !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 46px !important; }
 html:root body.vc-reference-home .hero .hr-banner-location { font-size: 38px; }
 html:root body.vc-reference-home .hero .hero__content { width: 65% !important; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 16px !important; }
 html:root body.vc-reference-home .hero .hero__visual { height: 400px !important; background-position: center right !important; }
 html:root body.vc-reference-home .hero .hero__visual::before { display: block !important; background: linear-gradient(90deg,#f4fbff 0%,#f4fbffed 35%,#f4fbff00 67%) !important; }
 html:root body.vc-reference-home .hero .stats-wrap { position: relative; top: auto; right: auto; width: calc(100% - 48px); margin: 0 auto 18px !important; }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .hero .stat { gap: 7px !important; padding: 9px !important; }
 html:root body.vc-reference-home .hero .stat__icon { width: 30px !important; height: 30px !important; flex-basis: 30px; }
 html:root body.vc-reference-home .hr-banner-benefits .container { width: calc(100% - 48px) !important; }
 html:root body.vc-reference-home .hero .checks li { font-size: 16px !important; gap: 9px !important; padding-inline: 8px !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width: 38px !important; height: 38px !important; flex-basis: 38px; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .page { width: 100%; margin: 0 !important; border-radius: 0; }
 html:root body.vc-reference-home .site-header { border-radius: 0; }
 html:root body.vc-reference-home .header > .container { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px !important; }
 html:root body.vc-reference-home .brand { min-width: 0; }
 html:root body.vc-reference-home .brand__image { width: 166px !important; height: 40px !important; }
 html:root body.vc-reference-home .hr-header-contact { grid-column: 1 / -1; grid-row: 2; grid-template-columns: 1fr auto; gap: 2px 8px !important; }
 html:root body.vc-reference-home .hr-header-contact .social-line { grid-column: 1; grid-row: 1; font-size: 16px !important; }
 html:root body.vc-reference-home .hr-header-contact .topbar__item { grid-column: 1; grid-row: 2; font-size: 16px; }
 html:root body.vc-reference-home .hr-header-contact .vc-socials { grid-column: 2; grid-row: 1 / 3; align-items: center; gap: 12px; }
 html:root body.vc-reference-home .vc-socials--header .vc-social { width: 22px; height: 22px; min-width: 22px; }
 html:root body.vc-reference-home .vc-socials--header .vc-social img { width: 20px; height: 20px; }
 html:root body.vc-reference-home .hr-header-cta { display: none; }
 html:root body.vc-reference-home .burger { grid-column: 2; grid-row: 1; }
 html:root body.vc-reference-home .hero .hr-banner-stage > .container { min-height: 0 !important; width: calc(100% - 32px) !important; padding: 24px 0 18px !important; }
 html:root body.vc-reference-home .hero .hero__content { width: 100% !important; }
 html:root body.vc-reference-home .hero h1 { font-size: 38px !important; line-height: 1.04 !important; margin-bottom: 14px !important; }
 html:root body.vc-reference-home .hero .hr-banner-location { font-size: 34px; letter-spacing: -.9px; }
 html:root body.vc-reference-home .hero .badge { font-size: 16px !important; padding: 7px 10px !important; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 16px !important; line-height: 1.4 !important; margin-bottom: 19px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; min-height: 46px !important; padding: 10px 8px !important; }
 html:root body.vc-reference-home .hr-banner-details { font-size: 16px; }
 html:root body.vc-reference-home .hero .hero__visual { height: auto !important; aspect-ratio: 2048 / 720 !important; width: calc(100% - 32px) !important; margin: 0 auto !important; }
 html:root body.vc-reference-home .hero .hero__visual::before { display: none !important; }
 html:root body.vc-reference-home .hero .stats-wrap { width: calc(100% - 32px); margin: 14px auto !important; }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .hr-banner-benefits { padding: 18px 0; }
 html:root body.vc-reference-home .hr-banner-benefits .container { width: calc(100% - 32px) !important; }
 html:root body.vc-reference-home .hero .checks li { font-size: 16px !important; padding: 0 !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width: 38px !important; height: 38px !important; flex-basis: 38px; }
}
@media (max-width: 360px) {
 html:root body.vc-reference-home .hero h1 { font-size: 35px !important; }
 html:root body.vc-reference-home .hero .hr-banner-location { font-size: 31px; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; }
}
/* Reset legacy minimum heights after moving the contact nodes out of the top bar. */
html:root body.vc-reference-home .hr-header-contact { height: auto !important; min-height: 0 !important; align-content: center; }
html:root body.vc-reference-home .hr-header-contact .social-line { min-height: 19px !important; height: 19px !important; }
html:root body.vc-reference-home .hr-header-contact .topbar__item { min-height: 13px !important; height: 13px !important; }
html:root body.vc-reference-home .hr-header-contact .vc-socials { min-height: 17px !important; height: 17px !important; }
html:root body.vc-reference-home .hr-banner-details .topbar__item { min-height: 16px !important; height: auto !important; }
@media (max-width: 600px) {
 html:root body.vc-reference-home .hr-header-contact .vc-socials { height: 24px !important; }
}
html:root body.vc-reference-home {
 background: radial-gradient(ellipse 1100px 550px at 50% -120px,#eefbff88,transparent 70%),linear-gradient(180deg,#c9ecfb 0px,#e7f7ff 750px,#f7fcff 1250px) !important;
}
html:root body.vc-reference-home .page { width: min(1280px,calc(100% - 76px)) !important; }
html:root body.vc-reference-home .hr-banner-stage { width: 100%; min-width: 0; max-width: 100%; }
html:root body.vc-reference-home .header { padding-block: 9px !important; }
html:root body.vc-reference-home .hr-header-contact { gap: 1px !important; }
@media (min-width: 1191px) {
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions .hr-primary { min-width: 250px; }
 html:root body.vc-reference-home .hero .hr-hero-actions .hr-secondary { min-width: 236px; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 19px !important; }
}
@media (min-width: 901px) and (max-width: 1060px) {
 html:root body.vc-reference-home .menu { display: none !important; }
 html:root body.vc-reference-home .burger { display: flex !important; }
 html:root body.vc-reference-home .hr-header-contact { margin-left: auto; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home .page { width: calc(100% - 24px) !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .page { width: 100% !important; }
}
/* The former fixed white overlay concealed the blue outer background. */
html:root body.vc-reference-home::before { display: none !important; }

@media (max-width: 600px) {
 html:root body.vc-reference-home .hero h1 { font-size: clamp(28px,8.2vw,32px) !important; }
 html:root body.vc-reference-home .hero h1 > br:first-of-type { display: none; }
 html:root body.vc-reference-home .hero .hr-banner-location { font-size: clamp(28px,8.2vw,32px); }
 html:root body.vc-reference-home .hero .hero__visual { background-image: url('/assets/index2-html/hero-apartment-background-20261009.webp') !important; height: 240px !important; aspect-ratio: auto !important; background-position: center !important; background-color: #eef8fc !important; }
 html:root body.vc-reference-home .hero .stat { min-height: 64px; }
}
/* Calculator layout follows the supplied reference, without its photograph. */
html:root body.vc-reference-home main > section.cc-calculator {
 padding: 28px 0 22px !important; background: linear-gradient(145deg,#eaf7ff,#f7fcff 75%) !important;
 scroll-margin-top: 88px; border-top: 1px solid #dceef9 !important;
}
html:root body.vc-reference-home .cc-calculator .vc-container { width: calc(100% - 48px) !important; max-width: 1160px !important; }
html:root body.vc-reference-home .cc-panel {
 padding: 26px 28px 24px; border-radius: 18px; border: 1px solid #fff;
 background: linear-gradient(125deg,#fffffffa,#fafdfffa); box-shadow: 0 10px 28px #268ac21c;
}
html:root body.vc-reference-home .cc-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 24px; }
html:root body.vc-reference-home .cc-heading h2 { font-size: 36px !important; line-height: 1.15 !important; letter-spacing: -1.3px; color: #122d4b !important; margin: 0 0 7px !important; font-weight: 800; }
html:root body.vc-reference-home .cc-heading h2 span { color: #2b8030; }
html:root body.vc-reference-home .cc-heading p { margin: 0; font-size: 16px; line-height: 1.4; color: #697b8d; }
html:root body.vc-reference-home .cc-fast { display: inline-flex; gap: 7px; align-items: center; justify-content: center; background: linear-gradient(110deg,#d9effe,#eaf6fe); border-radius: 24px; padding: 8px 12px; font-size: 16px; line-height: 1.3; color: #138bd4; white-space: nowrap; margin-top: 4px; }
html:root body.vc-reference-home .cc-icon { width: 24px; height: 24px; flex: 0 0 24px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; color: #1089d4; }
html:root body.vc-reference-home .cc-fast .cc-icon { width: 18px; height: 18px; flex-basis: 18px; fill: currentColor; stroke-width: 1; }
html:root body.vc-reference-home .cc-layout { display: grid; grid-template-columns: minmax(0,1fr) 260px; gap: 26px; align-items: stretch; }
html:root body.vc-reference-home .cc-controls { min-width: 0; }
html:root body.vc-reference-home .cc-row { display: grid; grid-template-columns: 156px minmax(0,1fr); gap: 16px; align-items: center; padding: 18px 0; margin: 0; min-width: 0; border: 0; border-bottom: 1px solid #eef2f6; }
html:root body.vc-reference-home .cc-row:first-child { padding-top: 6px; padding-bottom: 18px; }
html:root body.vc-reference-home .cc-row:last-child { border-bottom: 0; padding-bottom: 0; }
html:root body.vc-reference-home .cc-row-label { display: flex; gap: 10px; align-items: flex-start; min-width: 0; }
html:root body.vc-reference-home .cc-number { flex: 0 0 28px; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: linear-gradient(130deg,#059eea,#0873d9); font-size: 17px; font-weight: 700; color: #fff; line-height: 1; }
html:root body.vc-reference-home .cc-row-label strong { display: block; font-size: 16px; line-height: 1.2; color: #142e4b; margin: 4px 0 6px; }
html:root body.vc-reference-home .cc-row-label div > span { display: block; font-size: 16px; line-height: 1.4; color: #6e8193; }
html:root body.vc-reference-home .cc-row-body { min-width: 0; }
html:root body.vc-reference-home .cc-objects { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 8px; }
html:root body.vc-reference-home .cc-choice { position: relative; display: flex; align-items: center; justify-content: center; gap: 6px; min-width: 0; min-height: 66px; flex-direction: column; padding: 8px 5px; margin: 0; color: #283f59; border: 1px solid #edf1f4; background: linear-gradient(130deg,#fff,#fcfdff); border-radius: 11px; box-shadow: 0 2px 5px #213c5908; cursor: pointer; font-size: 16px; line-height: 1.2; }
html:root body.vc-reference-home .cc-choice .cc-icon { color: #7892a5; }
html:root body.vc-reference-home .cc-choice:has(input:checked) { border-color: #52b0eb; background: linear-gradient(130deg,#eefaff,#e4f3fe); color: #087fcb; box-shadow: 0 3px 8px #127ed51a; }
html:root body.vc-reference-home .cc-choice:has(input:checked) .cc-icon { color: #078ae0; }
html:root body.vc-reference-home .cc-radio, html:root body.vc-reference-home .cc-sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
html:root body.vc-reference-home .cc-choice:has(input:focus-visible),html:root body.vc-reference-home .cc-extra:has(input:focus-visible) { outline: 3px solid #1a93d3; outline-offset: 2px; }
html:root body.vc-reference-home .cc-kinds { display: grid; grid-template-columns: 1.15fr 1fr 1.05fr; gap: 8px; }
html:root body.vc-reference-home .cc-kinds .cc-choice { flex-direction: row; min-height: 42px; font-size: 16px; padding: 8px; gap: 6px; }
html:root body.vc-reference-home .cc-kinds .cc-choice .cc-icon { width: 19px; height: 19px; flex-basis: 19px; color: #178bd0; }
html:root body.vc-reference-home .cc-kinds .cc-choice:has(input:checked) { color: #348334; background: linear-gradient(130deg,#f0fff1,#e7f8e9); border-color: #83c88d; }
html:root body.vc-reference-home .cc-kinds .cc-choice:has(input:checked) .cc-icon { color: #398b37; }
html:root body.vc-reference-home .cc-area-layout { display: grid; grid-template-columns: minmax(0,1fr) 180px; gap: 12px 18px; align-items: center; }
html:root body.vc-reference-home .cc-area-value { display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-bottom: 10px; }
html:root body.vc-reference-home .cc-area-value button { display: grid; place-items: center; height: 34px; width: 34px; flex: 0 0 34px; padding: 0; border: 2px solid #e8edf2; border-radius: 50%; background: #fff; color: #0d8ed5; font-size: 24px; font-weight: 400; line-height: 1; cursor: pointer; }
html:root body.vc-reference-home .cc-area-value label { display: flex; justify-content: center; align-items: baseline; gap: 4px; min-width: 0; font-size: 16px; line-height: 1.1; font-weight: 700; color: #15334e; }
html:root body.vc-reference-home .cc-area-value input { width: 72px; min-width: 0; height: 40px; margin: 0; padding: 0; border: 0; box-shadow: none; border-radius: 0; background: none; color: #15334e; font: 700 27px/1.1 Arial,sans-serif; text-align: center; appearance: textfield; }
html:root body.vc-reference-home .cc-area-value input::-webkit-inner-spin-button,html:root body.vc-reference-home .cc-area-value input::-webkit-outer-spin-button { appearance: none; margin: 0; }
html:root body.vc-reference-home .cc-range { display: block; width: 100%; padding: 0; margin: 0; height: 6px; border: 0; border-radius: 10px; appearance: none; background: linear-gradient(90deg,#50ac3b var(--cc-range-fill,12%),#e0e8ef var(--cc-range-fill,12%)); cursor: pointer; }
html:root body.vc-reference-home .cc-range::-webkit-slider-thumb { appearance: none; width: 15px; height: 15px; border-radius: 50%; background: linear-gradient(120deg,#68bd43,#328f28); border: 2px solid #ddf6d5; box-shadow: 0 2px 6px #2e852d30; }
html:root body.vc-reference-home .cc-range::-moz-range-thumb { width: 12px; height: 12px; border-radius: 50%; background: #56ad35; border: 2px solid #ddf6d5; }
html:root body.vc-reference-home .cc-range-limits { display: flex; justify-content: space-between; gap: 10px; margin-top: 9px; color: #8c9bac; font-size: 16px; line-height: 1.3; }
html:root body.vc-reference-home .cc-area-hint { display: flex; align-items: flex-start; gap: 7px; padding: 11px 9px; background: linear-gradient(115deg,#edf8ff,#e8f5fe); border-radius: 10px; }
html:root body.vc-reference-home .cc-area-hint .cc-icon { flex-basis: 20px; width: 20px; height: 20px; }
html:root body.vc-reference-home .cc-area-hint strong { display: block; font-size: 16px; line-height: 1.3; color: #168ad0; margin-bottom: 4px; }
html:root body.vc-reference-home .cc-area-hint div > span { display: block; font-size: 16px; line-height: 1.45; color: #72879b; }
html:root body.vc-reference-home .cc-outside { grid-column: 1/-1; font-size: 16px; line-height: 1.4; color: #576d7f; }
html:root body.vc-reference-home .cc-extras { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; }
html:root body.vc-reference-home .cc-extra { display: flex; align-items: center; justify-content: center; gap: 5px; min-height: 46px; margin: 0; padding: 7px 4px; color: #405a70; font-size: 16px; line-height: 1.3; border-radius: 9px; border: 1px solid #eef2f5; background: #fff; box-shadow: 0 2px 6px #294a6706; cursor: pointer; }
html:root body.vc-reference-home .cc-extra .cc-icon { flex-basis: 18px; width: 18px; height: 18px; }
html:root body.vc-reference-home .cc-extra:last-child .cc-icon { color: #388c36; }
html:root body.vc-reference-home .cc-extra input { flex: 0 0 13px; width: 13px; height: 13px; margin: 0; accent-color: #369837; }
html:root body.vc-reference-home .cc-extra:has(input:checked) { border-color: #8bcd8c; background: #f0faf0; }
html:root body.vc-reference-home .cc-extra:has(input:disabled) { opacity: .45; cursor: default; }
html:root body.vc-reference-home .cc-rubbish { display: flex; gap: 6px; align-items: center; font-size: 16px; color: #718293; margin: 9px 0 0; }
html:root body.vc-reference-home .cc-rubbish input { width: 13px; height: 13px; margin: 0; accent-color: #369837; }
html:root body.vc-reference-home .cc-service select,html:root body.vc-reference-home .cc-extra-config select { width: 100%; min-width: 0; max-width: 100%; height: 44px; border: 1px solid #cfe6f1; border-radius: 10px; padding: 0 9px; background: #f8fcff; color: #2b5266; font-size: 16px; }
html:root body.vc-reference-home .cc-extra-config { display: grid; grid-template-columns: minmax(0,1fr) 94px; gap: 10px; margin-top: 12px; padding: 10px; border-radius: 10px; background: #f0f8fc; }
html:root body.vc-reference-home .cc-extra-config label { display: block; min-width: 0; font-size: 16px; color: #506f80; }
html:root body.vc-reference-home .cc-extra-config select { display: block; margin-top: 4px; height: 38px; font-size: 16px; }
html:root body.vc-reference-home .cc-extra-config input { width: 60px; max-width: 100%; height: 38px; margin-top: 4px; padding: 7px; border: 1px solid #cfe6f1; border-radius: 8px; font-size: 16px; background: #fff; color: #234957; }
html:root body.vc-reference-home .cc-extra-config label > span { display: inline-block; margin-left: 4px; font-size: 16px; }
html:root body.vc-reference-home .cc-summary { align-self: stretch; display: flex; flex-direction: column; padding: 20px 18px; min-width: 0; background: linear-gradient(145deg,#f4fbf3,#f4fafb); border: 4px solid #fff; border-radius: 17px; box-shadow: 0 0 18px #6aac7324; }
html:root body.vc-reference-home .cc-summary-label { font-size: 16px; font-weight: 700; line-height: 1.4; color: #1c3450; }
html:root body.vc-reference-home .cc-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 5px; margin-top: 13px; color: #2b7f2c; }
html:root body.vc-reference-home .cc-from { font-size: 19px; font-weight: 700; }
html:root body.vc-reference-home .cc-price strong { display: block; margin: 0; padding: 0; font-size: 45px; font-weight: 800; line-height: 1.08; letter-spacing: -1.5px; color: #2b7f2c; white-space: nowrap; }
html:root body.vc-reference-home .cc-price strong.cc-price--text { font-size: 25px; line-height: 1.25; white-space: normal; letter-spacing: -.7px; }
html:root body.vc-reference-home .cc-rate { display: inline-flex; width: fit-content; max-width: 100%; align-items: center; gap: 6px; background: #e2f5e6; padding: 5px 8px; border-radius: 7px; margin-top: 10px; font-size: 16px; line-height: 1.4; color: #388147; }
html:root body.vc-reference-home .cc-rate .cc-icon { color: #438d43; width: 16px; height: 16px; flex-basis: 16px; }
html:root body.vc-reference-home .cc-details { font-size: 16px; line-height: 1.5; color: #657e74; margin: 10px 0 0; }
html:root body.vc-reference-home .cc-summary-bottom { margin-top: 16px; padding-top: 13px; border-top: 1px solid #dfe9e9; }
html:root body.vc-reference-home .cc-summary-bottom > p { color: #758591; font-size: 16px; line-height: 1.45; margin: 0 0 14px; }
html:root body.vc-reference-home .cc-submit { width: 100%; display: flex; justify-content: space-between; align-items: center; min-height: 44px !important; padding: 12px 16px !important; border-radius: 11px !important; background: linear-gradient(115deg,#67c43f,#2d8a25) !important; border-color: #61b743 !important; font-size: 16px !important; box-shadow: 0 5px 12px #45983c24 !important; cursor: pointer; }
html:root body.vc-reference-home .cc-summary-bottom ul { list-style: none; padding: 0; margin: 18px 0 0; display: grid; gap: 12px; }
html:root body.vc-reference-home .cc-summary-bottom li { display: flex; align-items: center; gap: 8px; font-size: 16px; line-height: 1.4; color: #697b87; }
html:root body.vc-reference-home .cc-summary-bottom li .cc-icon { color: #399744; width: 20px; height: 20px; flex-basis: 20px; }
html:root body.vc-reference-home .cc-trust { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 26px; padding: 23px 24px 0; }
html:root body.vc-reference-home .cc-trust > div { display: flex; align-items: center; gap: 12px; min-width: 0; }
html:root body.vc-reference-home .cc-trust .cc-icon { width: 49px; height: 49px; padding: 11px; flex-basis: 49px; border-radius: 50%; color: #348d31; background: linear-gradient(135deg,#e9fbdc,#e9fbe9); }
html:root body.vc-reference-home .cc-trust p { margin: 0; line-height: 1.4; }
html:root body.vc-reference-home .cc-trust strong { display: block; color: #234455; font-size: 16px; }
html:root body.vc-reference-home .cc-trust p > span { display: block; font-size: 16px; color: #748899; margin-top: 4px; }
html:root body.vc-reference-home .cc-form-summary { display: block; grid-column: 1/-1; padding: 10px 12px; margin: 0 0 6px; border-radius: 9px; background: #edf8ff; color: #3e6475; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
html:root body.vc-reference-home .cc-form-feedback { font-size: 16px; line-height: 1.5; color: #346535; }
html:root body.vc-reference-home .cc-calculator [hidden],html:root body.vc-reference-home .cc-form-summary[hidden] { display: none !important; }
@media (max-width: 1190px) {
 html:root body.vc-reference-home .cc-panel { padding: 22px; }
 html:root body.vc-reference-home .cc-heading h2 { font-size: 32px !important; }
 html:root body.vc-reference-home .cc-heading p { font-size: 16px; }
 html:root body.vc-reference-home .cc-layout { gap: 18px; grid-template-columns: minmax(0,1fr) 240px; }
 html:root body.vc-reference-home .cc-row { grid-template-columns: 138px minmax(0,1fr); gap: 12px; }
 html:root body.vc-reference-home .cc-area-layout { grid-template-columns: minmax(0,1fr) 150px; gap: 12px; }
 html:root body.vc-reference-home .cc-kinds .cc-choice { font-size: 16px; padding-inline: 5px; }
 html:root body.vc-reference-home .cc-kinds .cc-choice .cc-icon { width: 16px; height: 16px; flex-basis: 16px; }
 html:root body.vc-reference-home .cc-extras { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 1050px) {
 html:root body.vc-reference-home .cc-fast { display: none; }
 html:root body.vc-reference-home .cc-layout { grid-template-columns: minmax(0,1fr) 230px; gap: 18px; }
 html:root body.vc-reference-home .cc-row { grid-template-columns: minmax(0,1fr); gap: 12px; padding-block: 16px; }
 html:root body.vc-reference-home .cc-row-label div { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
 html:root body.vc-reference-home .cc-row-label strong { margin: 0; font-size: 16px; }
 html:root body.vc-reference-home .cc-row-label { align-items: center; }
 html:root body.vc-reference-home .cc-extras { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 780px) {
 html:root body.vc-reference-home .cc-calculator .vc-container { width: calc(100% - 32px) !important; }
 html:root body.vc-reference-home .cc-panel { padding: 22px 18px; }
 html:root body.vc-reference-home .cc-heading h2 { font-size: 28px !important; }
 html:root body.vc-reference-home .cc-layout { grid-template-columns: minmax(0,1fr); gap: 22px; }
 html:root body.vc-reference-home .cc-row { grid-template-columns: 145px minmax(0,1fr); }
 html:root body.vc-reference-home .cc-row-label div { display: block; }
 html:root body.vc-reference-home .cc-row-label strong { margin-bottom: 5px; }
 html:root body.vc-reference-home .cc-summary { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 0 26px; }
 html:root body.vc-reference-home .cc-summary-label { grid-column: 1; }
 html:root body.vc-reference-home .cc-price,.cc-rate,.cc-details { grid-column: 1; }
 html:root body.vc-reference-home .cc-summary-bottom { grid-column: 2; grid-row: 1/5; margin: 0; padding: 0; border: 0; }
 html:root body.vc-reference-home .cc-summary-bottom ul { gap: 8px; margin-top: 12px; }
 html:root body.vc-reference-home .cc-trust { padding-inline: 8px; gap: 16px; }
 html:root body.vc-reference-home .cc-trust .cc-icon { width: 38px; height: 38px; flex-basis: 38px; padding: 8px; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home main > section.cc-calculator { padding: 24px 0 !important; scroll-margin-top: 115px; }
 html:root body.vc-reference-home .cc-panel { padding: 20px 16px; border-radius: 15px; }
 html:root body.vc-reference-home .cc-heading { margin-bottom: 20px; }
 html:root body.vc-reference-home .cc-heading h2 { font-size: 27px !important; line-height: 1.15 !important; letter-spacing: -.8px; }
 html:root body.vc-reference-home .cc-heading p { font-size: 16px; line-height: 1.5; }
 html:root body.vc-reference-home .cc-row { grid-template-columns: minmax(0,1fr); gap: 12px; padding-block: 17px; }
 html:root body.vc-reference-home .cc-row-label div { display: flex; align-items: center; gap: 10px; }
 html:root body.vc-reference-home .cc-row-label strong { margin: 0; }
 html:root body.vc-reference-home .cc-row-label div > span { font-size: 16px; }
 html:root body.vc-reference-home .cc-number { width: 26px; height: 26px; flex-basis: 26px; font-size: 16px; }
 html:root body.vc-reference-home .cc-objects { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
 html:root body.vc-reference-home .cc-choice { min-height: 62px; font-size: 16px; }
 html:root body.vc-reference-home .cc-kinds { grid-template-columns: minmax(0,1fr); gap: 8px; }
 html:root body.vc-reference-home .cc-kinds .cc-choice { font-size: 16px; min-height: 42px; justify-content: flex-start; padding-inline: 12px; }
 html:root body.vc-reference-home .cc-area-layout { grid-template-columns: minmax(0,1fr); gap: 14px; }
 html:root body.vc-reference-home .cc-area-hint { padding: 11px; }
 html:root body.vc-reference-home .cc-area-hint strong { font-size: 16px; }
 html:root body.vc-reference-home .cc-area-hint div > span { font-size: 16px; }
 html:root body.vc-reference-home .cc-extras { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
 html:root body.vc-reference-home .cc-extra { min-height: 46px; font-size: 16px; padding-inline: 8px; }
 html:root body.vc-reference-home .cc-extra input { width: 15px; height: 15px; flex-basis: 15px; }
 html:root body.vc-reference-home .cc-summary { display: flex; padding: 20px 18px; border-width: 3px; gap: 0; }
 html:root body.vc-reference-home .cc-price strong { font-size: 46px; }
 html:root body.vc-reference-home .cc-summary-bottom { margin-top: 16px; padding-top: 14px; border-top: 1px solid #dfe9e9; }
 html:root body.vc-reference-home .cc-summary-bottom > p { font-size: 16px; }
 html:root body.vc-reference-home .cc-summary-bottom li { font-size: 16px; }
 html:root body.vc-reference-home .cc-trust { grid-template-columns: minmax(0,1fr); padding: 22px 6px 0; gap: 16px; }
 html:root body.vc-reference-home .cc-trust strong { font-size: 16px; }
 html:root body.vc-reference-home .cc-trust p > span { font-size: 16px; }
 html:root body.vc-reference-home .cc-extra-config { grid-template-columns: minmax(0,1fr); }
 html:root body.vc-reference-home .cc-extra-config label:last-child { display: flex; align-items: center; gap: 8px; }
 html:root body.vc-reference-home .cc-extra-config input { margin: 0; }
}
/* Match the reference card dimensions; the omitted portrait leaves the card centered. */
html:root body.vc-reference-home main > section.cc-calculator {
 padding-top: 20px !important;
 background: linear-gradient(180deg,#edf9ffe0,#effaffed),url('/assets/templates/vita-cleaning/img/crops/contacts-room.jpg') center / cover no-repeat !important;
}
html:root body.vc-reference-home .cc-panel { max-width: 980px; margin-inline: auto; }
html:root body.vc-reference-home .cc-heading h2 { font-size: 40px !important; }
html:root body.vc-reference-home .cc-heading p { font-size: 17px; }
html:root body.vc-reference-home .cc-fast { font-size: 16px; }
html:root body.vc-reference-home .cc-row-label strong { font-size: 16px; }
html:root body.vc-reference-home .cc-price strong { font-size: 50px; }
html:root body.vc-reference-home .cc-area-value input { text-align: right; font-size: 30px; }
html:root body.vc-reference-home .cc-trust { max-width: 970px; margin-inline: auto; }
@media (max-width: 1190px) {
 html:root body.vc-reference-home .cc-heading h2 { font-size: 34px !important; }
 html:root body.vc-reference-home .cc-heading p { font-size: 16px; }
}
@media (max-width: 780px) {
 html:root body.vc-reference-home .cc-heading h2 { font-size: 28px !important; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .cc-heading h2 { font-size: 27px !important; }
 html:root body.vc-reference-home .cc-heading p { font-size: 16px; }
}
/* Third visual pass: align the result card above the numbered control rows as in the reference. */
@media (min-width: 1051px) {
 html:root body.vc-reference-home .cc-panel { padding-top: 19px; }
 html:root body.vc-reference-home .cc-heading { margin-bottom: 12px; }
 html:root body.vc-reference-home .cc-row:first-child { padding-top: 13px; }
 html:root body.vc-reference-home .cc-summary { margin-top: -17px; padding-top: 18px; padding-bottom: 18px; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .cc-kinds { grid-template-columns: repeat(2,minmax(0,1fr)); }
 html:root body.vc-reference-home .cc-kinds .cc-choice:first-child { grid-column: 1/-1; }
 html:root body.vc-reference-home .cc-kinds .cc-choice { justify-content: center; font-size: 16px; }
 html:root body.vc-reference-home .cc-row-label div { flex-wrap: wrap; gap: 3px 8px; }
}
html:root body.vc-reference-home #contacts .cc-form-feedback:empty { display: none; }
html:root body.vc-reference-home #contacts .vc-field-error { font-size: 16px; line-height: 1.5; color: #a13922; }

/* The glass header starts at the top edge on desktop, tablet and mobile. */
html:root body.vc-reference-home .page { margin-top: 0 !important; border-top-left-radius: 0; border-top-right-radius: 0; }
html:root body.vc-reference-home .page > header { top: 0 !important; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }
/* Buttons matched to the supplied green reference. Preserve every action and label. */
html:root body:is(body, .vc-reference-home) {
 --vc-button-gradient: linear-gradient(115deg,#6fc54a 0%,#35912c 100%);
 --vc-button-hover-gradient: linear-gradient(115deg,#65bb3e 0%,#2e8423 100%);
}
html:root body:is(body, .vc-reference-home) :is(.hero .hr-hero-actions .btn, .vc-promo:nth-child(even) .vc-btn, .btn, .vc-btn, .seo-btn, .vc-mobilebar a, button, input[type="submit"], input[type="button"]) {
 background: var(--vc-button-gradient) !important;
 color: #fff !important;
 border-color: #64b746 !important;
 border-radius: 13px !important;
 box-shadow: 0 5px 14px #459e3224 !important;
 text-shadow: 0 1px 1px #235e2220 !important;
 --vc-icon-color: #fff !important;
}
html:root body:is(body, .vc-reference-home) :is(.hero .hr-hero-actions .btn, .vc-promo:nth-child(even) .vc-btn, .btn, .vc-btn, .seo-btn, .vc-mobilebar a, button, input[type="submit"], input[type="button"]):hover {
 background: var(--vc-button-hover-gradient) !important;
 color: #fff !important;
}
html:root body:is(body, .vc-reference-home) :is(.hero .hr-hero-actions .btn, .vc-promo:nth-child(even) .vc-btn, .btn, .vc-btn, .seo-btn, .vc-mobilebar a, button, input[type="submit"], input[type="button"]):focus-visible {
 outline: 2px solid #246d26 !important;
 outline-offset: 3px;
}
html:root body:is(body, .vc-reference-home) :is(.hero .hr-hero-actions .btn, .vc-promo:nth-child(even) .vc-btn, .btn, .vc-btn, .seo-btn, .vc-mobilebar a, button, input[type="submit"], input[type="button"]):disabled {
 opacity: .5 !important;
 cursor: not-allowed !important;
}
/* Keep the selected filter distinguishable when every control has the same colour. */
html:root body:is(body, .vc-reference-home) :is(.vc-interactive-filters, .vc-review-filters, .vc-service-filters) button.is-active {
 outline: 2px solid #286d27 !important;
 outline-offset: -3px;
 box-shadow: inset 0 0 0 2px #ffffff70 !important;
}
html:root body:is(body, .vc-reference-home) :is(.btn, .vc-btn, .seo-btn)::before { --vc-icon-color: #fff !important; }
html:root body:is(body, .vc-reference-home) .burger span { background: #fff !important; }
html:root body:is(body, .vc-reference-home) .vc-step__toggle { padding-inline: 12px !important; }
html:root body:is(body, .vc-reference-home) .vc-step__toggle b { color: #fff !important; background: #ffffff26 !important; }
html:root body:is(body, .vc-reference-home) .vc-faq button::after { color: #fff !important; background: transparent !important; }
html:root body:is(body, .vc-reference-home) .vc-faq button::before { background: #fff !important; }
/* Circular utility controls retain their shape and tap target. */
html:root body:is(body, .vc-reference-home) :is(.cc-area-controls button, .vc-lightbox button, .hr-carousel-nav button) { border-radius: 50% !important; }
/* White icons and inner spacing keep the reference treatment readable. */
html:root body:is(body, .vc-reference-home) :is(.hero .hr-hero-actions .btn, .vc-promo:nth-child(even) .vc-btn, .btn, .vc-btn, .seo-btn, .vc-mobilebar a, button) :is(.icon, svg) { color: #fff !important; }
html:root body:is(body, .vc-reference-home) .vc-faq button { padding-inline: 14px !important; }
html:root body:is(body, .vc-reference-home) .vc-faq { margin-bottom: 8px !important; }

/* Header callback: native modal with a phone form, separate from the calculator. */
html:root body.vc-reference-home .hr-callback-dialog {
 position: fixed; inset: 0; width: min(440px,calc(100% - 32px)); max-width: 440px;
 max-height: calc(100dvh - 32px); margin: auto; padding: 32px;
 border: 1px solid #dcebf1; border-radius: 20px; background: linear-gradient(135deg,#fff,#f2faff);
 box-shadow: 0 20px 80px #103f4a40; overflow: auto; color: #102f3b;
}
html:root body.vc-reference-home .hr-callback-dialog::backdrop { background: #0c2c4266; backdrop-filter: blur(5px); }
html:root body.vc-reference-home .hr-callback-dialog h2 { margin: 0 42px 10px 0; font-size: 26px; line-height: 1.2; letter-spacing: -.5px; }
html:root body.vc-reference-home .hr-callback-dialog > p { margin: 0 0 22px; font-size: 16px; line-height: 1.55; color: #617783; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-close { position: absolute; top: 14px; right: 14px; width: 34px; height: 34px; padding: 0; display: grid; place-items: center; font-size: 26px; line-height: 1; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-form { display: flex; flex-direction: column; gap: 18px; margin: 0; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-phone { display: flex; flex-direction: column; gap: 8px; color: #254b59; font-size: 16px; font-weight: 600; }
html:root body.vc-reference-home .hr-callback-dialog input[type="tel"] { width: 100%; height: 48px; min-height: 48px; padding: 12px 14px; border: 1px solid #cae2ec; border-radius: 10px; color: #173544; background: #fff; font: inherit; font-size: 16px; }
html:root body.vc-reference-home .hr-callback-dialog input:focus-visible { outline: 2px solid #068fc6; outline-offset: 2px; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-consent { display: flex; align-items: flex-start; gap: 9px; font-size: 16px; line-height: 1.5; font-weight: 400; color: #617783; }
html:root body.vc-reference-home .hr-callback-dialog input[type="checkbox"] { width: 18px; height: 18px; min-height: 18px; flex: 0 0 18px; padding: 0; margin: 1px 0 0; accent-color: #39932d; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-consent a { text-decoration: underline; color: #287b38; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-submit { width: 100%; display: flex; justify-content: space-between; align-items: center; min-height: 48px !important; font-size: 16px !important; padding: 12px 18px !important; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-status:empty { display: none; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-success { color: #287b38; padding: 12px; border-radius: 10px; background: #edf8e8; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-error { color: #a12b35; }
html:root body.vc-reference-home .hr-callback-dialog .vc-field-error { color: #a12b35; font-size: 16px; line-height: 1.5; }
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-form[hidden] { display: none !important; }
html:root body.vc-reference-home.hr-callback-open { overflow: hidden !important; }
@media (max-width: 600px) {
 html:root body.vc-reference-home .header .hr-header-cta { display: flex !important; grid-column: 1 / -1; grid-row: 3; width: 100%; max-width: none !important; justify-content: center; min-height: 38px !important; padding: 8px 14px !important; font-size: 16px !important; }
 html:root body.vc-reference-home .mobile-menu { top: var(--hr-callback-header-height,148px) !important; }
 html:root body.vc-reference-home .hr-callback-dialog { padding: 26px 22px; }
 html:root body.vc-reference-home .hr-callback-dialog h2 { font-size: 24px; }
}

/* Clear FAQ answers and a prominent callback invitation. */
html:root body.vc-reference-home .vc-faq-section > .vc-container { grid-template-columns: minmax(0,1fr) minmax(0,2fr); gap: 24px 36px; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-intro h2 { margin: 0 0 12px !important; font-size: 28px !important; line-height: 1.25 !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-intro p { margin: 0 !important; font-size: 16px !important; line-height: 1.65 !important; }
html:root body.vc-reference-home .vc-faq-section .vc-grid-2 { display: grid !important; grid-template-columns: minmax(0,1fr) !important; gap: 12px !important; min-width: 0; }
html:root body.vc-reference-home .vc-faq-section .vc-faq { margin: 0 !important; border: 1px solid #dcebf2 !important; border-radius: 14px !important; overflow: hidden; background: #fff !important; box-shadow: 0 3px 12px #1a5d7809 !important; }
html:root body.vc-reference-home .vc-faq-section .vc-faq button { width: 100%; min-height: 54px !important; padding: 14px 18px !important; font-size: 16px !important; font-weight: 600 !important; line-height: 1.45 !important; text-align: left; }
html:root body.vc-reference-home .vc-faq-section .vc-faq button::after { flex-basis: 26px; width: 26px; height: 26px; border-radius: 8px; background: #ffffff26 !important; }
html:root body.vc-reference-home .vc-faq-section .vc-faq__answer { width: 100%; margin: 0 !important; padding: 16px 18px 18px !important; color: #45616d; background: #fff !important; }
html:root body.vc-reference-home .vc-faq-section .vc-faq__answer p { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; font-size: 16px !important; line-height: 1.65 !important; color: #45616d !important; background: transparent !important; border: 0 !important; border-radius: 0 !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-callback { display: grid !important; grid-template-columns: 64px minmax(0,1fr) auto; align-items: center; gap: 22px !important; width: 100%; margin: 2px 0 0 !important; padding: 26px 28px !important; border: 1px solid #cde5f0 !important; border-radius: 18px !important; background: linear-gradient(110deg,#fff 0%,#edf8ff 100%) !important; box-shadow: 0 8px 26px #216c8c0d !important; }
html:root body.vc-reference-home .hr-faq-callback-icon { display: grid; place-items: center; width: 64px; height: 64px; border-radius: 18px; background: linear-gradient(135deg,#d9f2ff,#eaf7ff); color: #058bbb; }
html:root body.vc-reference-home .hr-faq-callback-icon svg { width: 31px; height: 31px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-callback h3 { margin: 0 0 8px !important; font-size: 22px !important; line-height: 1.25 !important; font-weight: 700; color: #173e4e; letter-spacing: -.3px; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-callback p { margin: 0 !important; max-width: 560px; font-size: 16px !important; line-height: 1.6 !important; color: #536e7b !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-callback-button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; min-width: 200px; min-height: 50px !important; padding: 14px 20px !important; font-size: 16px !important; font-weight: 600; white-space: nowrap; }
@media (max-width: 900px) {
 html:root body.vc-reference-home .vc-faq-section > .vc-container { grid-template-columns: minmax(0,1fr); gap: 22px; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-intro { grid-column: 1; }
 html:root body.vc-reference-home .vc-faq-section .vc-grid-2 { grid-column: 1; grid-row: 2; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback { grid-template-columns: 56px minmax(0,1fr); gap: 16px !important; padding: 24px !important; }
 html:root body.vc-reference-home .hr-faq-callback-icon { width: 56px; height: 56px; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback-button { grid-column: 2; width: fit-content; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .vc-faq-section .hr-faq-intro h2 { font-size: 24px !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-intro p { font-size: 16px !important; }
 html:root body.vc-reference-home .vc-faq-section .vc-faq button { padding: 14px !important; font-size: 16px !important; }
 html:root body.vc-reference-home .vc-faq-section .vc-faq__answer { padding: 14px !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback { grid-template-columns: minmax(0,1fr); gap: 16px !important; padding: 22px !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback h3 { font-size: 21px !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback-button { grid-column: 1; width: 100%; min-width: 0; }
}
html:root body.vc-reference-home .hr-faq-callback-copy { text-align: left !important; }
@media (max-width: 600px) {
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback { grid-template-columns: 48px minmax(0,1fr); gap: 14px !important; }
 html:root body.vc-reference-home .hr-faq-callback-icon { width: 48px; height: 48px; border-radius: 14px; grid-column: 1; grid-row: 1; }
 html:root body.vc-reference-home .hr-faq-callback-copy { display: contents; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback h3 { grid-column: 2; grid-row: 1; margin: 0 !important; font-size: 20px !important; text-align: left !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback p { grid-column: 1 / -1; grid-row: 2; text-align: left !important; }
 html:root body.vc-reference-home .vc-faq-section .hr-faq-callback-button { grid-column: 1 / -1; grid-row: 3; }
}

@media (min-width: 901px) and (max-width: 1100px) {
 html:root body.vc-reference-home .hero .hero__visual { height: 430px !important; inset: 0 0 auto !important; }
}

/* Readable type and compact hero facts. Keep the current page composition. */
html:root body.vc-reference-home { font-size: 16px; line-height: 1.6; }
html:root body.vc-reference-home :is(p,li) { line-height: 1.6; }
html:root body.vc-reference-home :is(.btn,.vc-btn) { font-size: 16px !important; min-height: 46px !important; white-space: normal; }
html:root body.vc-reference-home :is(input:not([type='checkbox']):not([type='radio']):not([type='range']),select,textarea) { font-size: 16px !important; }
html:root body.vc-reference-home main h2 { font-size: 32px !important; line-height: 1.25 !important; }
html:root body.vc-reference-home :is(.vc-card,.service-card) h3 { font-size: 18px !important; line-height: 1.35 !important; }
html:root body.vc-reference-home #reviews .vc-review__head h3 { font-size: 18px !important; }
html:root body.vc-reference-home :is(.service-card__body,.vc-card) p { height: auto !important; max-height: none !important; -webkit-line-clamp: unset !important; overflow: visible !important; }
html:root body.vc-reference-home .service-card__body > p { min-height: 0 !important; }
html:root body.vc-reference-home .service-grid.vc-card-strip { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
html:root body.vc-reference-home .service-card :is(.service-card__top,.service-card__body) { padding: 16px !important; }
html:root body.vc-reference-home .service-card__body .btn { width: 100%; text-align: center; justify-content: center; }
html:root body.vc-reference-home .vc-steps .vc-grid-3 { grid-template-columns: repeat(3,minmax(0,1fr)) !important; }
html:root body.vc-reference-home :is(.badge,.eyebrow,.vc-hero__badge,.vc-form__hint,.hero-callback__consent,.hr-callback-consent,.vc-form__check,.cc-fast,.cc-rate,.cc-range-limits,.hr-client-name) { font-size: 14px !important; line-height: 1.5 !important; }
html:root body.vc-reference-home .hero-callback__consent :is(span,a),
html:root body.vc-reference-home #contacts .vc-form__check :is(span,a),
html:root body.vc-reference-home .hr-callback-dialog .hr-callback-consent :is(span,a) { font-size: 14px !important; line-height: 1.5 !important; }
html:root body.vc-reference-home .hero-callback h2 { font-size: 22px !important; }
html:root body.vc-reference-home .hr-callback-copy > p { font-size: 16px !important; }
html:root body.vc-reference-home .hero-callback__phone { min-height: 48px !important; height: auto; }
html:root body.vc-reference-home .hero-callback__phone input { height: 46px !important; font-size: 16px !important; }
html:root body.vc-reference-home .hero-callback__consent { align-items: flex-start; gap: 8px; }
html:root body.vc-reference-home .hero-callback__consent input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 2px; }
html:root body.vc-reference-home .header > .container { gap: 14px !important; }
html:root body.vc-reference-home .brand { min-width: 0; }
html:root body.vc-reference-home .brand__image { width: 190px !important; }
html:root body.vc-reference-home .menu { gap: 12px !important; }
html:root body.vc-reference-home .menu a { font-size: 14px !important; }
html:root body.vc-reference-home .header .hr-header-cta { font-size: 16px !important; min-height: 46px !important; padding: 11px 16px !important; }
html:root body.vc-reference-home .hr-header-contact .social-line { font-size: 16px !important; min-height: 24px !important; height: auto !important; }
html:root body.vc-reference-home .hr-header-contact .topbar__item { font-size: 14px !important; min-height: 20px !important; height: auto !important; line-height: 1.4; white-space: normal; }
html:root body.vc-reference-home .hr-banner-details .topbar__item { font-size: 14px !important; }
html:root body.vc-reference-home .hero .hero__lead { font-size: 20px !important; line-height: 1.5 !important; }
html:root body.vc-reference-home .hero .hr-hero-actions .btn { font-size: 16px !important; }
html:root body.vc-reference-home .vc-interactive-filters > button { font-size: 14px !important; min-height: 42px !important; padding: 10px 14px !important; }
html:root body.vc-reference-home .vc-strip-nav button { font-size: 22px !important; }
html:root body.vc-reference-home .vc-footer :is(p,a,span) { font-size: 16px !important; }
html:root body.vc-reference-home .vc-footer h3 { font-size: 18px !important; }
html:root body.vc-reference-home .vc-footer__bottom :is(a,span) { font-size: 14px !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-intro h2 { font-size: 32px !important; }
html:root body.vc-reference-home .vc-faq-section :is(.hr-faq-intro p,.vc-faq button,.vc-faq__answer p,.hr-faq-callback p) { font-size: 16px !important; line-height: 1.6 !important; }
html:root body.vc-reference-home .vc-faq-section .hr-faq-callback h3 { font-size: 22px !important; }
html:root body.vc-reference-home .cc-panel { max-width: 1152px; padding: 28px; }
html:root body.vc-reference-home .cc-layout { grid-template-columns: minmax(0,1fr) 280px; gap: 24px; }
html:root body.vc-reference-home .cc-row { grid-template-columns: 190px minmax(0,1fr); }
html:root body.vc-reference-home #cleaning-calculator .cc-area-value input { font-size: 32px !important; width: 86px; height: 44px; }
html:root body.vc-reference-home .cc-row-label div > span { font-size: 14px; }
html:root body.vc-reference-home .cc-choice { padding: 10px; min-height: 76px; font-size: 16px; }
html:root body.vc-reference-home .cc-kinds .cc-choice { font-size: 16px; padding: 10px; min-height: 52px; }
html:root body.vc-reference-home .cc-extras { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
html:root body.vc-reference-home .cc-extra { min-height: 56px; padding: 10px; font-size: 16px; }
html:root body.vc-reference-home .cc-extra input { flex-basis: 18px; width: 18px; height: 18px; }
html:root body.vc-reference-home .cc-area-hint strong { font-size: 14px; }
html:root body.vc-reference-home .cc-area-hint div > span { font-size: 14px; }
html:root body.vc-reference-home .cc-area-layout { grid-template-columns: minmax(0,1fr) 210px; }
html:root body.vc-reference-home .cc-summary-bottom :is(p,li) { font-size: 16px; }
html:root body.vc-reference-home .cc-trust { max-width: 1152px; }
html:root body.vc-reference-home .cc-trust strong { font-size: 16px; }
html:root body.vc-reference-home .cc-trust p > span { font-size: 14px; }
html:root body.vc-reference-home .cc-heading h2 { font-size: 36px !important; }
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card,
html:root body.vc-reference-home #contacts .vc-contact-list .vc-contact-card a { font-size: 16px !important; }

/* Compact facts: clean white cards, small flat icons and readable captions. */
html:root body.vc-reference-home .hero .stats-wrap { right: 24px; top: 50%; transform: translateY(-50%); width: 230px; border: 0; padding: 0 !important; }
html:root body.vc-reference-home .hero .stats { width: 100% !important; min-width: 0; gap: 8px !important; padding: 0 !important; background: transparent !important; }
html:root body.vc-reference-home .hero .stat { position: relative; display: grid !important; grid-template-columns: 28px minmax(0,1fr); grid-template-rows: auto auto; align-items: center; gap: 3px 9px !important; min-height: 72px; padding: 10px 12px !important; background: #fffffff2 !important; border: 1px solid #ddebf0 !important; border-radius: 12px !important; box-shadow: 0 3px 12px #183e4c0d !important; }
html:root body.vc-reference-home .hero .stat > span:last-child { display: contents; }
html:root body.vc-reference-home .hero .stat::before { display: none !important; }
html:root body.vc-reference-home .hero .stat__icon { grid-column: 1; grid-row: 1; display: grid; place-items: center; width: 28px !important; height: 28px !important; min-width: 28px; flex-basis: 28px; margin: 0 !important; border: 0 !important; border-radius: 8px !important; background: #e8f5fc !important; color: #067cae !important; box-shadow: none !important; }
html:root body.vc-reference-home .hero .stat:nth-child(odd) .stat__icon { background: #e8f5fc !important; color: #067cae !important; }
html:root body.vc-reference-home .hero .stat:nth-child(even) .stat__icon { background: #edf6e7 !important; color: #39842c !important; }
html:root body.vc-reference-home .hero .stat__icon .icon { width: 21px !important; height: 21px !important; stroke-width: 1.8; }
html:root body.vc-reference-home .hero .stat strong { grid-column: 2; grid-row: 1; display: block; margin: 0 !important; font-size: 25px !important; line-height: 1.15 !important; font-weight: 700 !important; letter-spacing: -.5px; color: #163f50 !important; white-space: nowrap; }
html:root body.vc-reference-home .hero .stat span span { grid-column: 1/-1; grid-row: 2; display: block; font-size: 14px !important; font-weight: 400; line-height: 1.35 !important; color: #4d6470 !important; white-space: normal; }
html:root body.vc-reference-home .price span,
html:root body.vc-reference-home .vc-about__logos span,
html:root body.vc-reference-home .vc-social span { font-size: 14px !important; }
html:root body.vc-reference-home .vc-about li span,
html:root body.vc-reference-home .vc-stat span { font-size: 16px !important; }
html:root body.vc-reference-home #about .vc-about__strip span,
html:root body.vc-reference-home #about-details .vc-about__strip span,
html:root body.vc-reference-home #reviews .vc-stat span { font-size: 16px !important; }
@media (max-width: 1320px) {
 html:root body.vc-reference-home .menu { display: none !important; }
 html:root body.vc-reference-home .burger { display: flex !important; margin-left: 0; }
 html:root body.vc-reference-home .hr-header-contact { margin-left: auto; }
 html:root body.vc-reference-home .cc-layout { grid-template-columns: minmax(0,1fr); }
 html:root body.vc-reference-home .cc-summary { margin: 0; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 0 24px; }
 html:root body.vc-reference-home .cc-summary-bottom { grid-column: 2; grid-row: 1 / 5; border: 0; margin: 0; padding: 0; }
}
@media (max-width: 1100px) {
 html:root body.vc-reference-home .hero .stats-wrap { position: relative !important; top: auto; right: auto; transform: none; width: calc(100% - 48px); margin: 0 auto 20px !important; }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(4,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .hero .stat { grid-template-columns: 28px minmax(0,1fr); gap: 3px 9px !important; }
 html:root body.vc-reference-home .hero .stat__icon { width: 28px !important; height: 28px !important; min-width: 28px; }
 html:root body.vc-reference-home .hero .stat strong { font-size: 23px !important; }
 html:root body.vc-reference-home .hr-banner-stage { aspect-ratio: auto !important; }
}
@media (max-width: 900px) {
 html:root body.vc-reference-home .hero .stats-wrap { width: calc(100% - 40px); }
 html:root body.vc-reference-home .hero .stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 18px !important; }
 html:root body.vc-reference-home .cc-row { grid-template-columns: minmax(0,1fr); }
 html:root body.vc-reference-home .cc-row-label div { display: flex; flex-wrap: wrap; gap: 4px 10px; }
 html:root body.vc-reference-home .cc-row-label strong { margin: 4px 0; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home main h2,
 html:root body.vc-reference-home .vc-faq-section .hr-faq-intro h2,
 html:root body.vc-reference-home .cc-heading h2 { font-size: 28px !important; line-height: 1.3 !important; }
 html:root body.vc-reference-home .hero-callback h2 { font-size: 22px !important; }
 html:root body.vc-reference-home .brand__image { width: 150px !important; }
 html:root body.vc-reference-home .header > .container { gap: 10px !important; }
 html:root body.vc-reference-home .hr-header-contact { margin-left: 0; }
 html:root body.vc-reference-home .hero .hero__lead { font-size: 18px !important; }
 html:root body.vc-reference-home .hero .hr-hero-actions { flex-direction: column; }
 html:root body.vc-reference-home .hero .hr-hero-actions .btn { width: 100%; min-height: 48px !important; }
 html:root body.vc-reference-home .hero .stats-wrap { width: calc(100% - 32px); margin: 14px auto !important; }
 html:root body.vc-reference-home .hero .stat { grid-template-columns: 24px minmax(0,1fr); min-height: 72px; padding: 8px !important; }
 html:root body.vc-reference-home .hero .stat__icon { width: 24px !important; height: 24px !important; min-width: 24px; }
 html:root body.vc-reference-home .hero .stat__icon .icon { width: 18px !important; height: 18px !important; }
 html:root body.vc-reference-home .hero .stat strong { font-size: 22px !important; }
 html:root body.vc-reference-home .service-grid.vc-card-strip { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .service-card :is(.service-card__top,.service-card__body) { padding: 12px !important; }
 html:root body.vc-reference-home .service-card__body .btn { padding-inline: 8px !important; }
 html:root body.vc-reference-home .vc-steps .vc-grid-3 { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-reference-home .cc-panel { padding: 20px 16px; }
 html:root body.vc-reference-home .cc-objects { grid-template-columns: repeat(3,minmax(0,1fr)); }
 html:root body.vc-reference-home .cc-kinds { grid-template-columns: minmax(0,1fr); }
 html:root body.vc-reference-home .cc-kinds .cc-choice:first-child { grid-column: auto; }
 html:root body.vc-reference-home .cc-area-layout { grid-template-columns: minmax(0,1fr); }
 html:root body.vc-reference-home .cc-summary { display: flex; gap: 0; padding: 18px 14px; }
 html:root body.vc-reference-home .cc-summary-bottom { margin-top: 14px; padding-top: 14px; border-top: 1px solid #dfe9e9; }
 html:root body.vc-reference-home .cc-trust { grid-template-columns: minmax(0,1fr); gap: 14px; }
 html:root body.vc-reference-home #contacts .vc-contact-list { grid-template-columns: minmax(0,1fr); }
}

/* Supplied portrait: keep the whole photograph visible beside the copy and facts. */
html:root body.vc-reference-home .hero .hero__visual { background-position: right 250px center !important; background-size: contain !important; background-color: #f4fbff !important; }
@media (max-width: 1100px) { html:root body.vc-reference-home .hero .hero__visual { background-position: right center !important; } }
@media (max-width: 600px) { html:root body.vc-reference-home .hero .hero__visual { background-position: center !important; } }

/* Continuous apartment photograph across the whole hero. */
html:root body.vc-reference-home .hero .hero__visual { width: 100% !important; background-size: cover !important; background-position: center top !important; background-color: #eef6fa !important; border-radius: 0 !important; }
html:root body.vc-reference-home .hero .hero__visual::before { display: block !important; background: linear-gradient(90deg,rgba(245,251,255,.94) 0%,rgba(245,251,255,.85) 29%,rgba(245,251,255,.50) 43%,rgba(245,251,255,0) 58%) !important; }
@media (max-width: 1100px) { html:root body.vc-reference-home .hero .hero__visual { background-position: center top !important; } }
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero .hero__visual { width: 100% !important; margin: 0 !important; background-position: 70% center !important; }
 html:root body.vc-reference-home .hero .hero__visual::before { display: none !important; }
}

/* Original lossless portrait is independent of the full-width apartment background. */
html:root body.vc-reference-home .hero .hero__visual { overflow: hidden; }
html:root body.vc-reference-home .hero .hero__visual::after {
 content: ''; display: block !important; position: absolute; top: 0; bottom: 0; right: 250px; width: auto; height: 100%; aspect-ratio: 1132 / 1294; z-index: 1;
 background: url('/assets/index2-html/hero-professional-smile-20261009.webp') center 31% / 100% auto no-repeat;
 mask-image: linear-gradient(90deg,transparent,#000 3%,#000 99%,transparent); -webkit-mask-image: linear-gradient(90deg,transparent,#000 3%,#000 99%,transparent);
}
@media (max-width: 1100px) {
 html:root body.vc-reference-home .hero .hero__visual::after { right: 12px; }
}
@media (max-width: 600px) {
 html:root body.vc-reference-home .hero .hero__visual::after { right: 12%; }
}

/* Feather the apartment seam while preserving original portrait details. */
html:root body.vc-reference-home .hero .hero__visual::after {
 mask-image: linear-gradient(90deg,transparent,#000 3%,#000 78%,transparent),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201132%201294%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cfilter%20id%3D%22edge%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2210%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cpath%20filter%3D%22url%28%23edge%29%22%20fill%3D%22white%22%20d%3D%22M790%20465%20C900%20465%20984%20548%201020%20622%20L1086%20709%20Q1088%20722%201071%20731%20C1093%20805%201117%20900%201114%20997%20C1114%201091%201096%201162%201050%201188%20L992%201193%20L1010%201294%20H790%20Z%22%2F%3E%3C%2Fsvg%3E");
 -webkit-mask-image: linear-gradient(90deg,transparent,#000 3%,#000 78%,transparent),url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201132%201294%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cfilter%20id%3D%22edge%22%20x%3D%22-20%25%22%20y%3D%22-20%25%22%20width%3D%22140%25%22%20height%3D%22140%25%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2210%22%2F%3E%3C%2Ffilter%3E%3C%2Fdefs%3E%3Cpath%20filter%3D%22url%28%23edge%29%22%20fill%3D%22white%22%20d%3D%22M790%20465%20C900%20465%20984%20548%201020%20622%20L1086%20709%20Q1088%20722%201071%20731%20C1093%20805%201117%20900%201114%20997%20C1114%201091%201096%201162%201050%201188%20L992%201193%20L1010%201294%20H790%20Z%22%2F%3E%3C%2Fsvg%3E");
 mask-size: 100% 100%; -webkit-mask-size: 100% 100%; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat;
 mask-composite: add; -webkit-mask-composite: source-over;
}
/* Compact translucent glass facts with clear alternating blue and olive accents. */
html:root body.vc-reference-home .hero .stat {
 background: linear-gradient(125deg,rgba(255,255,255,.74),rgba(231,248,255,.46)) !important;
 border: 1px solid rgba(255,255,255,.82) !important; border-radius: 15px !important;
 backdrop-filter: blur(16px) saturate(125%); -webkit-backdrop-filter: blur(16px) saturate(125%);
 box-shadow: inset 0 1px 0 rgba(255,255,255,.85),0 6px 20px rgba(24,68,84,.11) !important;
 overflow: hidden;
}
html:root body.vc-reference-home .hero .stat:nth-child(even) { background: linear-gradient(125deg,rgba(255,255,255,.76),rgba(237,249,224,.48)) !important; }
html:root body.vc-reference-home .hero .stat::before { content: ''; display: block !important; position: absolute; left: 0; top: 13px; bottom: 13px; width: 3px; height: auto; border-radius: 0 3px 3px 0; background: linear-gradient(#36c2ec,#078fc9); opacity: .9; }
html:root body.vc-reference-home .hero .stat:nth-child(even)::before { background: linear-gradient(#9aca59,#539b37); }
html:root body.vc-reference-home .hero .stat__icon,
html:root body.vc-reference-home .hero .stat:nth-child(odd) .stat__icon { background: linear-gradient(140deg,#27bde9,#0789c7) !important; color: #fff !important; border-radius: 9px !important; box-shadow: 0 3px 8px rgba(5,137,193,.16) !important; }
html:root body.vc-reference-home .hero .stat:nth-child(even) .stat__icon { background: linear-gradient(140deg,#9ac950,#519b35) !important; color: #fff !important; box-shadow: 0 3px 8px rgba(79,137,49,.16) !important; }
html:root body.vc-reference-home .hero .stat strong { color: #076b94 !important; }
html:root body.vc-reference-home .hero .stat:nth-child(even) strong { color: #477c2d !important; }
html:root body.vc-reference-home .hero .stat span span { color: #334f5e !important; }
@supports not (backdrop-filter:blur(1px)) { html:root body.vc-reference-home .hero .stat { background: rgba(248,253,255,.9) !important; } }

/* Five benefits: an even desktop row and complete rows on smaller screens. */
html:root body.vc-reference-home .hr-banner-benefits > .container { display:block !important; }
html:root body.vc-reference-home .hero .checks { width:100% !important; max-width:none !important; align-items:stretch !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important; }
html:root body.vc-reference-home .hero .checks li { gap:10px !important; padding-inline:12px !important; }
html:root body.vc-reference-home .hero .hero-benefit__icon { width:44px !important; height:44px !important; flex-basis:44px !important; }
html:root body.vc-reference-home .hero .checks .hero-benefit--payment small { display:block; margin-top:3px; font-size:14px; font-weight:400; line-height:1.35; color:#617783; }
@media(max-width:1100px) and (min-width:601px) {
 html:root body.vc-reference-home .hero .checks { grid-template-columns:repeat(6,minmax(0,1fr)) !important; row-gap:16px !important; }
 html:root body.vc-reference-home .hero .checks li { grid-column:span 2; padding-inline:10px !important; }
 html:root body.vc-reference-home .hero .checks li:nth-child(3) { border-right:0; }
 html:root body.vc-reference-home .hero .checks li:nth-child(n+4) { grid-column:span 3; }
 html:root body.vc-reference-home .hero .checks li:nth-child(4) { padding-left:0 !important; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width:38px !important; height:38px !important; flex-basis:38px !important; }
}
@media(max-width:600px) {
 html:root body.vc-reference-home .hero .checks { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:14px 8px !important; }
 html:root body.vc-reference-home .hero .checks li { padding:0 !important; gap:8px !important; }
 html:root body.vc-reference-home .hero .checks .hero-benefit--payment { grid-column:1/-1; justify-content:center; padding-top:12px !important; border-top:1px solid #e5eff3; }
 html:root body.vc-reference-home .hero .hero-benefit__icon { width:38px !important; height:38px !important; flex-basis:38px !important; }
}

/* Restore only calculator font sizes from the snapshot before the homepage type increase. */
html:root body.vc-reference-home #cleaning-calculator { font-size:14px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:36px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:16px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-fast { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-number { font-size:17px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-row-label strong { font-size:13px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-row-label div > span { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-choice { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-kinds .cc-choice { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-value button { font-size:24px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-value label { font-size:15px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-value input { font-size:27px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-range-limits { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-hint strong { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-hint div > span { font-size:9px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-outside { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra { font-size:9px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-rubbish { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-service select, html:root body.vc-reference-home .cc-extra-config select { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra-config label { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra-config select { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra-config input { font-size:13px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra-config label > span { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-summary-label { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-from { font-size:19px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-rate { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-details { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-summary-bottom > p { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-submit { font-size:13px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-summary-bottom li { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-trust strong { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-trust p > span { font-size:10px !important; }
@media (max-width: 1190px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:32px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:14px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-kinds .cc-choice { font-size:10px !important; }
}
@media (max-width: 1050px) {
html:root body.vc-reference-home #cleaning-calculator .cc-row-label strong { font-size:13px !important; }
}
@media (max-width: 780px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:28px !important; }
}
@media (max-width: 600px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:27px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:13px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-row-label div > span { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-number { font-size:15px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-choice { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-kinds .cc-choice { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-hint strong { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-hint div > span { font-size:10px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-extra { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-summary-bottom > p { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-summary-bottom li { font-size:11px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-trust strong { font-size:13px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-trust p > span { font-size:11px !important; }
}
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:40px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:17px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-fast { font-size:12px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-row-label strong { font-size:14px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-area-value input { font-size:30px !important; }
@media (max-width: 1190px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:34px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:15px !important; }
}
@media (max-width: 780px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:28px !important; }
}
@media (max-width: 600px) {
html:root body.vc-reference-home #cleaning-calculator .cc-heading h2 { font-size:27px !important; }
html:root body.vc-reference-home #cleaning-calculator .cc-heading p { font-size:13px !important; }
}
@media (max-width: 600px) {
html:root body.vc-reference-home #cleaning-calculator .cc-kinds .cc-choice { font-size:11px !important; }
}


/* A restrained glass signature for the company's ten years of experience. */
html:root body.vc-reference-home .hero .badge.hr-premium-badge {
 display:inline-flex !important; align-items:center; gap:11px !important;
 width:fit-content !important; max-width:100%; min-height:0 !important; box-sizing:border-box;
 padding:10px 14px !important; margin:0 0 18px !important;
 border:1px solid rgba(255,255,255,.92) !important; border-radius:14px !important;
 background:linear-gradient(115deg,rgba(255,255,255,.9),rgba(241,249,252,.76)) !important;
 box-shadow:0 5px 20px rgba(21,57,73,.065),inset 0 0 0 1px rgba(190,208,215,.35) !important;
 backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
 color:#254759 !important; font-size:16px !important; line-height:1.4 !important;
 font-weight:400 !important; letter-spacing:0 !important; text-transform:none !important;
}
html:root body.vc-reference-home .hero .hr-premium-badge__icon {
 display:grid; place-items:center; flex:0 0 32px; width:32px; height:32px;
 border:1px solid #ded5bf; border-radius:9px;
 background:linear-gradient(135deg,#fffdf8,#f4eedf); color:#937444;
}
html:root body.vc-reference-home .hero .hr-premium-badge__icon .icon {
 width:20px !important; height:20px !important; flex:none; stroke:currentColor !important; stroke-width:1.6; fill:none;
}
html:root body.vc-reference-home .hero .hr-premium-badge__copy {
 display:flex; flex-wrap:wrap; align-items:baseline; column-gap:6px; row-gap:1px; min-width:0;
 font-size:16px !important; line-height:1.4 !important; text-transform:none !important;
}
html:root body.vc-reference-home .hero .hr-premium-badge__copy strong {
 font-size:17px !important; font-weight:700; letter-spacing:-.2px; color:#193b4b; white-space:nowrap;
}
html:root body.vc-reference-home .hero .hr-premium-badge__text { font-size:16px !important; font-weight:400; color:#496775; }
@media(max-width:600px) {
 html:root body.vc-reference-home .hero .badge.hr-premium-badge { gap:10px !important; padding:9px 12px !important; margin-bottom:16px !important; }
 html:root body.vc-reference-home .hero .hr-premium-badge__copy { display:grid; grid-template-columns:minmax(0,1fr); gap:1px; }
 html:root body.vc-reference-home .hero .hr-premium-badge__text { font-size:15px !important; line-height:1.4; }
}
