/* Inner pages share the current homepage shell and visual language. */
html:root body.vc-unified-inner {
 --vc-dark:#102f3b; --vc-muted:#617783; --vc-blue:#0578af; --vc-border:#e3edf1;
 --vc-olive-ink:#317f26; --vc-olive-soft:#f0f8ed;
 --vc-olive-gradient:linear-gradient(115deg,#6fc54a,#35912c);
 margin:0; padding:0 !important; color:#102f3b; font:16px/1.6 Arial,Helvetica,sans-serif;
 background:radial-gradient(ellipse at 55% 0%,#c3eafb 0,transparent 46%),linear-gradient(125deg,#e6f6fd,#d4effb 50%,#f6fcff) !important;
}
html:root body.vc-unified-inner * { box-sizing:border-box; }
html:root body.vc-unified-inner::before { display:none !important; }
html:root body.vc-unified-inner [hidden] { display:none !important; }
html:root body.vc-unified-inner .page { width:min(1280px,calc(100% - 76px)); max-width:1280px !important; margin:0 auto 24px !important; padding:0 !important; background:#fff; border-radius:0 0 14px 14px; box-shadow:0 12px 60px #16648f14; overflow:visible !important; }
html:root body.vc-unified-inner :is(.container,.vc-container) { width:calc(100% - 64px) !important; max-width:1152px !important; margin-inline:auto; padding-inline:0 !important; }
html:root body.vc-unified-inner .vc-shared-header { position:sticky !important; inset:0 auto auto !important; width:100% !important; transform:none !important; z-index:100; padding:0 !important; background:rgba(255,255,255,.76) !important; backdrop-filter:blur(18px) saturate(125%); -webkit-backdrop-filter:blur(18px) saturate(125%); border-bottom:1px solid #dcecf5; border-radius:0 !important; box-shadow:0 5px 24px #123e510d; }
html:root body.vc-unified-inner .header { padding:9px 0 !important; border:0; background:transparent !important; }
html:root body.vc-unified-inner .header>.container { display:flex; align-items:center; width:calc(100% - 48px) !important; max-width:none !important; gap:14px !important; min-height:50px; }
html:root body.vc-unified-inner .brand { display:flex; min-width:0; flex:0 0 auto; padding:0; }
html:root body.vc-unified-inner .brand__image { display:block; width:190px !important; height:50px !important; object-fit:contain; }
html:root body.vc-unified-inner .menu { display:flex; align-items:center; margin-left:auto; gap:12px !important; }
html:root body.vc-unified-inner .menu a { display:flex; align-items:center; min-height:44px; padding:0 6px; font-size:14px !important; font-weight:500 !important; color:#102f3b; text-decoration:none; white-space:nowrap; }
html:root body.vc-unified-inner .menu a:hover,html:root body.vc-unified-inner .menu a[aria-current] { color:#287b38; }
html:root body.vc-unified-inner .hr-header-contact { display:grid !important; grid-template-columns:auto auto; gap:1px !important; flex:0 0 auto; padding:0; }
html:root body.vc-unified-inner .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-unified-inner .hr-header-contact .social-line .icon { width:19px; height:19px; color:#098ac1; }
html:root body.vc-unified-inner .hr-header-contact .topbar__item { grid-column:1/-1; grid-row:2; font-size:14px !important; line-height:1.4; color:#637382; white-space:nowrap; }
html:root body.vc-unified-inner .hr-header-contact .topbar__item .icon { display:none; }
html:root body.vc-unified-inner .hr-header-contact :is(.social-line,.topbar__item) { min-height:0 !important; padding:0 !important; margin:0 !important; text-decoration:none !important; }
html:root body.vc-unified-inner .hr-header-contact .topbar__item { min-height:20px !important; }
html:root body.vc-unified-inner .hr-header-contact .vc-socials { min-height:17px; height:17px; align-items:center; }
html:root body.vc-unified-inner .hr-header-contact .vc-socials { grid-column:1/-1; grid-row:3; justify-content:center; gap:12px; }
html:root body.vc-unified-inner .vc-socials--header .vc-social { width:17px; height:17px; min-height:17px; min-width:17px; padding:0; border:0; border-radius:0; background:transparent !important; }
html:root body.vc-unified-inner .vc-socials--header .vc-social img { width:16px; height:16px; flex-basis:16px; }
html:root body.vc-unified-inner :is(.btn,.vc-btn,.seo-btn,.vc-mobilebar a) { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:46px !important; padding:11px 20px !important; border:1px solid #71b757 !important; border-radius:13px !important; background:linear-gradient(115deg,#6fc54a,#35912c) !important; color:#fff !important; font:600 16px/1.3 Arial,Helvetica,sans-serif !important; text-decoration:none; box-shadow:0 5px 14px #459e3224 !important; white-space:normal; cursor:pointer; transition:filter .18s,box-shadow .18s; }
html:root body.vc-unified-inner :is(.btn,.vc-btn,.seo-btn):hover { filter:brightness(1.04); box-shadow:0 7px 18px #459e3230 !important; }
html:root body.vc-unified-inner .header .hr-header-cta { flex:0 0 auto; min-height:46px !important; padding:11px 16px !important; white-space:nowrap; }
html:root body.vc-unified-inner .burger { display:none !important; flex:0 0 auto; width:46px; height:46px; flex-direction:column; align-items:center; justify-content:center; gap:5px; padding:7px; border:1px solid #71b757; border-radius:13px; background:linear-gradient(115deg,#6fc54a,#35912c) !important; box-shadow:0 5px 14px #459e3224; cursor:pointer; }
html:root body.vc-unified-inner .burger span { display:block; width:20px; height:2px; border-radius:2px; background:#fff !important; }
html:root body.vc-unified-inner .mobile-menu { position:fixed; top:var(--hr-callback-header-height,84px) !important; bottom:0; left:0; width:100%; height:auto; z-index:99; padding:16px; overflow:auto; background:#e9f7fcf5; backdrop-filter:blur(16px); }
html:root body.vc-unified-inner .mobile-menu__panel { width:min(500px,100%); margin:0 auto; padding:22px; border:1px solid #dcebf2; border-radius:16px; background:#fff; box-shadow:0 10px 30px #17485a14; }
html:root body.vc-unified-inner .mobile-menu__nav { display:grid; gap:2px; }
html:root body.vc-unified-inner .mobile-menu__nav a { display:block; padding:11px 0; border-bottom:1px solid #e7f0f4; color:#102f3b; font-size:16px; font-weight:600; }
html:root body.vc-unified-inner .mobile-menu__contacts { display:grid; gap:16px; margin-top:18px; color:#102f3b; font-size:16px; }
html:root body.vc-unified-inner.mobile-menu-open,html:root body.vc-unified-inner.hr-callback-open { overflow:hidden !important; }
html:root body.vc-unified-inner :is(a,button,input,select,textarea):focus-visible { outline:3px solid #087bad !important; outline-offset:3px; }
html:root body.vc-unified-inner main { min-width:0; overflow:visible; }
html:root body.vc-unified-inner main>:is(.vc-page-section,.vc-section) { padding:36px 0 !important; background:#fff !important; border-top:1px solid #e5f0f5; min-height:0 !important; }
html:root body.vc-unified-inner main>:is(.vc-page-section,.vc-section):nth-of-type(even) { background:linear-gradient(125deg,#fafdff,#edf8fe) !important; }
html:root body.vc-unified-inner main :is(h1,h2,h3) { color:#102f3b; overflow-wrap:break-word; }
html:root body.vc-unified-inner main h1 { font-size:44px !important; line-height:1.1 !important; font-weight:700; letter-spacing:-1px; margin:0 0 18px !important; }
html:root body.vc-unified-inner main h2 { font-size:32px !important; line-height:1.25 !important; font-weight:700; letter-spacing:-.6px; margin:0 0 20px !important; }
html:root body.vc-unified-inner main h3 { font-size:18px !important; line-height:1.35 !important; margin-bottom:12px; }
html:root body.vc-unified-inner main :is(p,li) { font-size:16px !important; line-height:1.6 !important; }
html:root body.vc-unified-inner .vc-lead { font-size:16px !important; line-height:1.6 !important; margin:0 0 24px !important; color:#617783; }
html:root body.vc-unified-inner :is(.vc-section-head,.section-head) { margin-bottom:24px; gap:20px; }
html:root body.vc-unified-inner :is(.vc-page-hero,.hero) { padding:36px 0 !important; background:linear-gradient(125deg,#f5fbff,#eaf7fd) !important; }
html:root body.vc-unified-inner .vc-page-hero__grid { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:32px; align-items:center; }
html:root body.vc-unified-inner :is(.vc-page-hero__text,.hero__lead) { font-size:18px !important; line-height:1.6 !important; margin:0 0 24px !important; color:#546b7a; }
html:root body.vc-unified-inner :is(.vc-page-hero__eyebrow,.vc-page-label,.badge) { display:inline-flex; align-items:center; width:fit-content; max-width:100%; margin:0 0 16px !important; padding:8px 12px !important; background:#cbeafa !important; color:#047faf !important; border:0 !important; border-radius:999px !important; box-shadow:none !important; font-size:14px !important; line-height:1.4; font-weight:700; }
html:root body.vc-unified-inner .vc-page-hero__media { min-height:0; height:auto; aspect-ratio:4/3; border:1px solid #e3edf1; border-radius:18px; box-shadow:0 8px 24px #194e6710; background:#eff8fb; }
html:root body.vc-unified-inner .vc-page-hero__media img { display:block; width:100%; height:100%; min-height:0 !important; object-fit:contain !important; }
html:root body.vc-unified-inner .vc-page-hero__fact { max-width:70%; right:16px; bottom:16px; padding:12px 16px; border:1px solid #ffffffd9; border-radius:14px; background:linear-gradient(125deg,#ffffffbd,#edf9ff91) !important; backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); color:#234a5b; font-size:16px !important; font-weight:600; box-shadow:0 4px 16px #17485812; }
html:root body.vc-unified-inner :is(.vc-card,.vc-article-card,.vc-contact-card,.vc-gallery-card,.vc-about__panel,.vc-feature-card,.vc-form) { border:1px solid #e3edf1 !important; border-radius:14px !important; background:#fff !important; box-shadow:0 4px 16px #1f506b08 !important; }
html:root body.vc-unified-inner :is(.vc-article-card,.vc-contact-card,.vc-gallery-card,.vc-feature-card,.vc-card) { padding:20px; }
html:root body.vc-unified-inner :is(.vc-card,.vc-service,.vc-article-card,.vc-about__panel) :is(p,h3) { height:auto !important; max-height:none !important; -webkit-line-clamp:unset !important; }
html:root body.vc-unified-inner :is(.vc-grid-3,.vc-card-grid) { gap:20px; }
html:root body.vc-unified-inner .vc-card-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
html:root body.vc-unified-inner .vc-note { padding:20px !important; border:1px solid #e1edf2 !important; border-radius:14px !important; background:linear-gradient(120deg,#fff,#f1f9fe) !important; color:#617783; font-size:16px; }
html:root body.vc-unified-inner :is(.vc-feature-list,.checks) li { font-size:16px !important; }
html:root body.vc-unified-inner .vc-article-body { max-width:900px; }
html:root body.vc-unified-inner .vc-article-body h2 { margin:32px 0 16px !important; }
html:root body.vc-unified-inner :is(.vc-step,.vc-equipment,.vc-service) img { object-fit:contain !important; background:#f4fafd; }
html:root body.vc-unified-inner .vc-step img { height:180px !important; width:100%; border-radius:10px; }
html:root body.vc-unified-inner :is(.vc-about__media img,.vc-service__photo,.vc-contacts__media img,.vc-review__object) { object-fit:contain !important; background:#f3faff; }
html:root body.vc-unified-inner .vc-steps .vc-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
html:root body.vc-unified-inner .vc-step__number { color:#087eae; background:#e6f5fd; }
html:root body.vc-unified-inner :is(.vc-review__stars,.vc-review-card__stars) { color:#e9aa2e; }
html:root body.vc-unified-inner .vc-faq { border-radius:12px !important; margin-bottom:8px; padding:0 !important; }
html:root body.vc-unified-inner .vc-faq button { width:100%; padding:16px !important; background:transparent !important; border:0 !important; color:#173d4a !important; font:600 16px/1.4 Arial !important; box-shadow:none !important; }
html:root body.vc-unified-inner .vc-faq__answer { padding:0 16px 16px !important; }
html:root body.vc-unified-inner .vc-table-wrap { overflow-x:auto !important; max-width:100%; border:1px solid #dfebf1; border-radius:14px; box-shadow:0 4px 16px #1f506b08; }
html:root body.vc-unified-inner .vc-price-table { margin:0 !important; width:100%; background:#fff; }
html:root body.vc-unified-inner .vc-price-table :is(th,td) { font-size:16px !important; padding:16px 18px !important; line-height:1.5 !important; }
html:root body.vc-unified-inner .vc-price-table th { background:linear-gradient(115deg,#deeff8,#f0f8fd) !important; color:#143d4d !important; font-weight:700; }
html:root body.vc-unified-inner .vc-price-table tr:nth-child(even) td { background:#f3faff !important; }
html:root body.vc-unified-inner .vc-price-table td:last-child { color:#087aaa; }
html:root body.vc-unified-inner .vc-price-catalog h2 { font-size:28px !important; margin-top:30px !important; margin-bottom:20px !important; }
html:root body.vc-unified-inner .vc-form { padding:22px !important; gap:14px !important; }
html:root body.vc-unified-inner .vc-form :is(label,input,select,textarea) { font-size:16px !important; line-height:1.5; }
html:root body.vc-unified-inner .vc-form :is(input:not([type=checkbox]):not([type=hidden]),select,textarea) { width:100%; min-height:48px; padding:12px 14px; border:1px solid #d8e8ef; border-radius:10px; color:#173544; background:#fff; }
html:root body.vc-unified-inner .vc-form .vc-form__check { display:flex; align-items:flex-start; gap:9px; font-size:14px !important; }
html:root body.vc-unified-inner .vc-form input[type=checkbox] { width:18px; height:18px; flex:0 0 18px; margin-top:2px; accent-color:#39932d; }
html:root body.vc-unified-inner .hero-callback__trap { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden !important; clip-path:inset(50%); }
html:root body.vc-unified-inner .vc-footer { padding:36px 0 20px !important; border-radius:0 0 14px 14px; background:linear-gradient(115deg,#d6ebf6,#e7f3fa 65%,#e8f2e3) !important; color:#344537; border-top:1px solid #dce9ef; }
html:root body.vc-unified-inner .vc-footer__grid { display:grid; grid-template-columns:1.3fr 1fr 1fr 1.25fr; gap:28px; }
html:root body.vc-unified-inner .vc-footer__brand-logo { width:190px; max-width:100%; height:auto; margin-bottom:12px; }
html:root body.vc-unified-inner .vc-footer :is(h3,p,.vc-footer__links) { font-size:16px !important; line-height:1.6; }
html:root body.vc-unified-inner .vc-footer h3 { margin:0 0 14px; color:#102f3b; }
html:root body.vc-unified-inner .vc-footer__links { gap:10px; overflow-wrap:anywhere; }
html:root body.vc-unified-inner .vc-footer__links a { color:#526d78; }
html:root body.vc-unified-inner .vc-footer__bottom { margin-top:24px; padding-top:18px !important; border-top:1px solid #cbdfe8; font-size:14px !important; line-height:1.5; color:#607b86; gap:16px; }
html:root body.vc-unified-inner .vc-mobilebar { border-radius:16px; background:#ffffffed !important; border:1px solid #dcebf1; padding:8px !important; box-shadow:0 6px 22px #174b5914; }
html:root body.vc-unified-inner .vc-mobilebar a { min-height:42px !important; padding:10px 12px !important; font-size:16px !important; }
@media(max-width:1320px) {
 html:root body.vc-unified-inner .menu { display:none !important; }
 html:root body.vc-unified-inner .burger { display:flex !important; }
 html:root body.vc-unified-inner .hr-header-contact { margin-left:auto; }
}
@media(max-width:900px) {
 html:root body.vc-unified-inner .page { width:calc(100% - 24px); }
 html:root body.vc-unified-inner :is(.container,.vc-container) { width:calc(100% - 40px) !important; }
 html:root body.vc-unified-inner .header>.container { width:calc(100% - 32px) !important; }
 html:root body.vc-unified-inner .brand__image { width:180px !important; height:44px !important; }
 html:root body.vc-unified-inner .burger { height:40px; }
 html:root body.vc-unified-inner :is(.vc-page-hero__grid,.vc-contact-page-grid) { grid-template-columns:minmax(0,1fr); }
 html:root body.vc-unified-inner .vc-page-hero__media { width:100%; max-width:560px; aspect-ratio:4/3; }
 html:root body.vc-unified-inner main h1 { font-size:38px !important; }
 html:root body.vc-unified-inner :is(.vc-card-grid,.vc-grid-3) { grid-template-columns:repeat(2,minmax(0,1fr)); }
 html:root body.vc-unified-inner .vc-contacts__grid { grid-template-columns:minmax(0,1fr); }
 html:root body.vc-unified-inner .vc-footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
 html:root body.vc-unified-inner .page { width:100%; margin:0 !important; border-radius:0; }
 html:root body.vc-unified-inner :is(.container,.vc-container) { width:calc(100% - 32px) !important; }
 html:root body.vc-unified-inner .header>.container { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 10px !important; }
 html:root body.vc-unified-inner .brand__image { width:150px !important; height:40px !important; }
 html:root body.vc-unified-inner .hr-header-contact { grid-column:1/-1; grid-row:2; grid-template-columns:minmax(0,1fr) auto; gap:2px 8px !important; margin-left:0; }
 html:root body.vc-unified-inner .hr-header-contact .social-line { grid-column:1; grid-row:1; }
 html:root body.vc-unified-inner .hr-header-contact .topbar__item { grid-column:1; grid-row:2; font-size:14px !important; }
 html:root body.vc-unified-inner .hr-header-contact .vc-socials { grid-column:2; grid-row:1/3; align-items:center; gap:12px; }
html:root body.vc-unified-inner .vc-socials--header .vc-social { width:22px; height:22px; min-height:22px; min-width:22px; }
html:root body.vc-unified-inner .vc-socials--header .vc-social img { width:20px; height:20px; flex-basis:20px; }
 html:root body.vc-unified-inner .header .hr-header-cta { grid-column:1/-1; grid-row:3; width:100%; justify-content:center; }
 html:root body.vc-unified-inner .burger { grid-column:2; grid-row:1; width:34px; min-width:34px; margin-left:0; }
 html:root body.vc-unified-inner main>:is(.vc-page-section,.vc-section,.vc-page-hero,.hero) { padding:28px 0 !important; }
 html:root body.vc-unified-inner main h1 { font-size:32px !important; letter-spacing:-.6px; }
 html:root body.vc-unified-inner main h2 { font-size:28px !important; }
 html:root body.vc-unified-inner :is(.vc-page-hero__text,.hero__lead) { font-size:18px !important; }
 html:root body.vc-unified-inner :is(.vc-page-hero__actions,.vc-page-actions,.hero__buttons) { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
html:root body.vc-unified-inner .vc-page-hero__media { display:flex; flex-direction:column; aspect-ratio:auto !important; border-radius:14px; }
 html:root body.vc-unified-inner .vc-page-hero__fact { position:static; max-width:none; border-radius:0; padding:12px; font-size:14px !important; }
 html:root body.vc-unified-inner .vc-page-hero__media img { height:auto; }
 html:root body.vc-unified-inner :is(.vc-grid-2,.vc-grid-3,.vc-card-grid,.vc-form--wide,.vc-contacts__grid,.vc-contact-page-grid) { grid-template-columns:minmax(0,1fr) !important; }
 html:root body.vc-unified-inner .vc-steps .vc-grid-3 { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
 html:root body.vc-unified-inner :is(.vc-card,.vc-article-card,.vc-contact-card,.vc-gallery-card,.vc-form) { padding:16px; }
 html:root body.vc-unified-inner .vc-price-table { min-width:660px; }
 html:root body.vc-unified-inner .vc-price-table :is(th,td) { padding:12px !important; font-size:14px !important; }
 html:root body.vc-unified-inner .vc-footer__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 16px; }
 html:root body.vc-unified-inner .vc-footer__grid>div:first-child { grid-column:1/-1; }
 html:root body.vc-unified-inner .vc-footer__bottom { display:grid; gap:12px; padding-bottom:70px; }
}
@media(prefers-reduced-motion:reduce) { html:root body.vc-unified-inner * { scroll-behavior:auto !important; transition:none !important; } }

/* Header callback: native modal with a phone form, separate from the calculator. */
html:root body.vc-unified-inner .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-unified-inner .hr-callback-dialog::backdrop { background: #0c2c4266; backdrop-filter: blur(5px); }
html:root body.vc-unified-inner .hr-callback-dialog h2 { margin: 0 42px 10px 0; font-size: 26px; line-height: 1.2; letter-spacing: -.5px; }
html:root body.vc-unified-inner .hr-callback-dialog > p { margin: 0 0 22px; font-size: 16px; line-height: 1.55; color: #617783; }
html:root body.vc-unified-inner .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-unified-inner .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-unified-inner .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-unified-inner .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-unified-inner .hr-callback-dialog input:focus-visible { outline: 2px solid #068fc6; outline-offset: 2px; }
html:root body.vc-unified-inner .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-unified-inner .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-unified-inner .hr-callback-dialog .hr-callback-consent a { text-decoration: underline; color: #287b38; }
html:root body.vc-unified-inner .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-unified-inner .hr-callback-dialog .hr-callback-status:empty { display: none; }
html:root body.vc-unified-inner .hr-callback-dialog .hr-callback-success { color: #287b38; padding: 12px; border-radius: 10px; background: #edf8e8; }
html:root body.vc-unified-inner .hr-callback-dialog .hr-callback-error { color: #a12b35; }
html:root body.vc-unified-inner .hr-callback-dialog .vc-field-error { color: #a12b35; font-size: 16px; line-height: 1.5; }
html:root body.vc-unified-inner .hr-callback-dialog .hr-callback-form[hidden] { display: none !important; }
html:root body.vc-unified-inner.hr-callback-open { overflow: hidden !important; }
@media (max-width: 600px) {
 html:root body.vc-unified-inner .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-unified-inner .mobile-menu { top: var(--hr-callback-header-height,148px) !important; }
 html:root body.vc-unified-inner .hr-callback-dialog { padding: 26px 22px; }
 html:root body.vc-unified-inner .hr-callback-dialog h2 { font-size: 24px; }
}

/* Landing facts use the same compact glass cards as the homepage. */
html:root body.vc-unified-inner .stats { width: 100% !important; min-width: 0; gap: 8px !important; padding: 0 !important; background: transparent !important; }
html:root body.vc-unified-inner .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-unified-inner .stat > div { display: contents; }
html:root body.vc-unified-inner .stat::before { display: none !important; }
html:root body.vc-unified-inner .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-unified-inner .stat:nth-child(odd) .stat__icon { background: #e8f5fc !important; color: #067cae !important; }
html:root body.vc-unified-inner .stat:nth-child(even) .stat__icon { background: #edf6e7 !important; color: #39842c !important; }
html:root body.vc-unified-inner .stat__icon .icon { width: 21px !important; height: 21px !important; stroke-width: 1.8; }
html:root body.vc-unified-inner .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-unified-inner .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; }
/* Compact translucent glass facts with clear alternating blue and olive accents. */
html:root body.vc-unified-inner .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-unified-inner .stat:nth-child(even) { background: linear-gradient(125deg,rgba(255,255,255,.76),rgba(237,249,224,.48)) !important; }
html:root body.vc-unified-inner .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-unified-inner .stat:nth-child(even)::before { background: linear-gradient(#9aca59,#539b37); }
html:root body.vc-unified-inner .stat__icon,
html:root body.vc-unified-inner .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-unified-inner .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-unified-inner .stat strong { color: #076b94 !important; }
html:root body.vc-unified-inner .stat:nth-child(even) strong { color: #477c2d !important; }
html:root body.vc-unified-inner .stat span span { color: #334f5e !important; }

html:root body.vc-unified-inner .stats-wrap { padding:16px 0 !important; margin:0 !important; border:0; background:#eff8fd !important; }
html:root body.vc-unified-inner .stats { grid-template-columns:repeat(4,minmax(0,1fr)) !important; width:calc(100% - 64px) !important; max-width:1152px !important; margin:0 auto; }
@media(max-width:900px){html:root body.vc-unified-inner .stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important; width:calc(100% - 40px) !important;}}
@media(max-width:600px){html:root body.vc-unified-inner .stats{width:calc(100% - 32px) !important;}html:root body.vc-unified-inner .stat strong{font-size:22px !important;}}

html:root body.vc-unified-inner .vc-interactive-filters button,html:root body.vc-unified-inner [data-review-filter]{font:600 14px/1.4 Arial !important; padding:10px 14px !important; border:1px solid #dbeaf0 !important; border-radius:10px !important; background:#fff !important; color:#315969 !important;}
html:root body.vc-unified-inner .vc-interactive-filters button.is-active,html:root body.vc-unified-inner [data-review-filter].is-active{background:linear-gradient(115deg,#6fc54a,#35912c) !important; color:#fff !important; border-color:#71b757 !important;}

html:root body.vc-unified-inner .stat > div > span { grid-column:1/-1; grid-row:2; font-size:14px !important; font-weight:400; line-height:1.35 !important; color:#334f5e !important; }
html:root body.vc-unified-inner .hr-header-contact .social-line { line-height:1.6 !important; }
html:root body.vc-unified-inner .mobile-menu { padding:16px 20px 24px; background:rgba(20,48,40,.42); height:calc(100dvh - var(--hr-callback-header-height,84px)); bottom:auto; }
html:root body.vc-unified-inner .mobile-menu__panel { width:min(100%,420px); padding:18px; background:#fffdf8; border:0; border-radius:0 0 26px 26px; box-shadow:0 24px 60px rgba(20,48,40,.2); }
@media(max-width:600px) {
 html:root body.vc-unified-inner .header>.container { gap:10px !important; }
 html:root body.vc-unified-inner .brand__image { width:125px !important; }
 html:root body.vc-unified-inner .hr-header-contact { gap:1px !important; }
 html:root body.vc-unified-inner .hr-header-contact .vc-socials { height:24px; }
 html:root body.vc-unified-inner .header .hr-header-cta { min-height:46px !important; padding:11px 16px !important; }
}

/* The prices page uses a full-width landscape photograph without letterboxing. */
html:root body.vc-unified-inner .vc-prices-hero .vc-page-hero__media { aspect-ratio:1672/941 !important; height:auto !important; max-width:none !important; }
html:root body.vc-unified-inner .vc-prices-hero .vc-page-hero__media img { display:block; width:100%; height:100%; aspect-ratio:auto !important; object-fit:contain !important; }
@media(max-width:600px) {
 html:root body.vc-unified-inner .vc-prices-hero .vc-page-hero__media { aspect-ratio:auto !important; }
 html:root body.vc-unified-inner .vc-prices-hero .vc-page-hero__media img { height:auto !important; }
}
