:root{--vm-blue:#0758b7;--vm-blue2:#0074d9;--vm-navy:#053d83;--vm-sky:#eaf7ff;--vm-line:#d9eaf8;--vm-text:#143a62;--vm-muted:#587596;--vm-white:#fff;--vm-radius:10px;--vm-shadow:0 8px 24px rgba(16,85,151,.09)}
.vmv32-active:not(.vmv32-builder-preview) #header,.vmv32-active:not(.vmv32-builder-preview) #footer,.vmv32-active:not(.vmv32-builder-preview) .header-wrapper,.vmv32-active:not(.vmv32-builder-preview) .absolute-footer{display:none!important}.vmv32-active #wrapper,.vmv32-active #main{background:#fff!important}.vmv32-active .page-wrapper{padding:0!important}.vmv32-active .container{max-width:none}.vmv32 *{box-sizing:border-box}.vmv32{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--vm-text);background:#fff;line-height:1.35;overflow:hidden}.vmv32 a{color:inherit;text-decoration:none}.vmv32 img{max-width:100%;display:block}.vmv32 button,.vmv32 input,.vmv32 select{font:inherit}.vmv32-shell{width:min(1320px,calc(100% - 72px));margin-inline:auto}.vmv32-svg{display:inline-block;vertical-align:middle;flex:0 0 auto}.vmv32-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 20px;border-radius:6px;border:1px solid var(--vm-blue);font-size:13px;font-weight:700;letter-spacing:.01em;transition:.2s ease;cursor:pointer}.vmv32-btn--solid{background:linear-gradient(135deg,#0756b4,#0084da);color:#fff!important;box-shadow:0 8px 20px rgba(0,90,180,.17)}.vmv32-btn--solid:hover{transform:translateY(-1px);filter:brightness(.98)}.vmv32-btn--outline{background:#fff;color:var(--vm-blue)!important}.vmv32-btn--outline:hover{background:#f4faff}.vmv32-section{padding:14px 0 8px}.vmv32-section--tight{padding-top:8px}.vmv32-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:10px}.vmv32-heading h2{margin:0;color:#0751a8;font-size:21px;line-height:1.15;font-weight:700;letter-spacing:-.02em}.vmv32-heading>a{display:inline-flex;align-items:center;gap:5px;color:var(--vm-blue);font-size:12px;font-weight:700;white-space:nowrap}.vmv32-kicker,.vmv32-eyebrow{color:#0758b7;font-weight:700;letter-spacing:.16em;font-size:12px;margin:0 0 7px}

/* Header */
.vmv32-header{height:58px;background:#fff;border-bottom:1px solid #e6eef6;position:relative;z-index:50}.vmv32-header__inner{height:58px;display:flex;align-items:center;gap:22px}.vmv32-logo{width:172px;display:flex;align-items:center;flex:0 0 auto}.vmv32-logo img{max-height:46px;width:auto}.vmv32-nav{display:flex;align-items:stretch;height:100%;gap:1px;flex:1;justify-content:center}.vmv32-nav a{height:100%;display:flex;align-items:center;padding:0 11px;font-size:12px;font-weight:700;color:#164c85;position:relative;white-space:nowrap}.vmv32-nav a.is-active:after,.vmv32-nav a:hover:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:#1f89e5}.vmv32-header__actions{display:flex;align-items:center;gap:9px}.vmv32-icon-btn,.vmv32-mobile-toggle{width:34px;height:34px;border:0;background:transparent;color:#0758b7;display:grid;place-items:center;cursor:pointer}.vmv32-lang{font-size:11px;font-weight:700;color:#235d94;display:flex;align-items:center;gap:5px;white-space:nowrap}.vmv32-lang i{width:1px;height:13px;background:#bdd0e3}.vmv32-phone{height:38px;padding:0 11px;border:1px solid #a7cfee;border-radius:7px;display:flex;align-items:center;gap:7px;color:#0758b7}.vmv32-phone span{display:flex;flex-direction:column}.vmv32-phone b{font-size:12px;line-height:1}.vmv32-phone small{font-size:9px;line-height:1.2}.vmv32-header .vmv32-btn{min-height:38px;padding:0 15px;font-size:11px}.vmv32-mobile-toggle{display:none}.vmv32-mobile-nav{position:absolute;top:58px;left:0;right:0;background:#fff;border-top:1px solid #e8f0f7;box-shadow:0 12px 28px rgba(0,0,0,.08);padding:14px 18px}.vmv32-mobile-nav a{display:block;padding:10px 6px;color:#124d87;font-weight:700}.vmv32-header-search{position:absolute;left:0;right:0;top:58px;background:#fff;border-top:1px solid #e7eef5;box-shadow:0 12px 20px rgba(0,0,0,.06);padding:10px 0}.vmv32-header-search .vmv32-shell{display:flex;gap:8px}.vmv32-header-search input{flex:1;border:1px solid #c7dcec;border-radius:7px;padding:10px 13px;height:42px}.vmv32-header-search button{width:44px;border:0;border-radius:7px;background:#0758b7;color:#fff;cursor:pointer}

/* Hero */
.vmv32-hero{height:clamp(330px,31vw,430px);position:relative;overflow:hidden;background:linear-gradient(110deg,#f8fdff 0%,#dff3ff 48%,#c8ebff 100%)}.vmv32-hero__sky{position:absolute;inset:0;background:radial-gradient(circle at 14% 20%,rgba(255,255,255,.98),rgba(255,255,255,0) 30%),linear-gradient(180deg,rgba(255,255,255,.14),rgba(218,243,255,.24));pointer-events:none}.vmv32-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:54px;background:linear-gradient(to top,rgba(208,239,255,.6),transparent);pointer-events:none}.vmv32-hero__inner{height:100%;position:relative}.vmv32-hero__copy{position:absolute;left:3.1%;top:9%;width:42%;z-index:7}.vmv32-eyebrow{font-size:13px;margin-bottom:6px}.vmv32-hero .vmv32-hero__display-title{margin:0;color:#06438b;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:clamp(38px,4.15vw,60px);line-height:.97;letter-spacing:-.045em;font-weight:700}.vmv32-hero .vmv32-hero__display-title em{font-style:italic;font-weight:700}.vmv32-hero__lead{margin:9px 0 12px;color:#1c5b98;font-size:13px;max-width:490px}.vmv32-trust-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:500px;margin-bottom:12px}.vmv32-trust-mini div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;color:#0a4b91}.vmv32-trust-mini span{width:31px;height:31px;border-radius:50%;background:#fff;box-shadow:0 4px 12px rgba(0,97,184,.12);display:grid;place-items:center;color:#0b73d4;margin-bottom:1px}.vmv32-trust-mini b{font-size:10px}.vmv32-trust-mini small{font-size:9px}.vmv32-hero__buttons{display:flex;gap:12px}.vmv32-hero__doctor{position:absolute;z-index:4;height:112%;width:auto;left:43%;bottom:-18%;object-fit:contain;filter:drop-shadow(0 12px 18px rgba(3,61,124,.1))}.vmv32-hero__building{position:absolute;z-index:3;height:105%;width:auto;right:1.4%;bottom:-8%;object-fit:contain;mix-blend-mode:multiply}.vmv32-hero__doctor-label{position:absolute;left:58.3%;top:28%;z-index:6;color:#0754af;transform:rotate(-4deg);text-shadow:0 2px 0 rgba(255,255,255,.8)}.vmv32-hero__doctor-label strong{display:block;font-size:18px}.vmv32-hero__doctor-label span{display:block;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-style:italic;font-weight:700;font-size:30px;line-height:1}.vmv32-hero__doctor-label small{display:block;font-size:9px;line-height:1.35;margin-top:7px;transform:rotate(4deg)}.vmv32-hero__motto{position:absolute;right:1%;top:18%;z-index:6;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-style:italic;font-weight:700;color:#0757b7;font-size:27px;line-height:1.05;transform:rotate(-7deg);text-align:center}.vmv32-hero__motto b{font-size:31px}

/* service bar */
.vmv32-servicebar{background:linear-gradient(180deg,#fafdff,#f1f9ff);border-bottom:1px solid #e2eff8;box-shadow:0 5px 20px rgba(0,84,160,.055)}.vmv32-servicebar__inner{min-height:84px;display:flex;align-items:center;gap:10px}.vmv32-servicebar__question{width:160px;flex:0 0 auto;color:#0750a7;font-size:13px;font-weight:700;line-height:1.15}.vmv32-servicebar__question strong{font-weight:700}.vmv32-servicebar__icons{display:flex;align-items:center;gap:5px;flex:1;min-width:0;overflow:hidden}.vmv32-service-icon{width:75px;flex:0 0 75px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:9px;font-weight:700;color:#12528f;white-space:nowrap}.vmv32-service-icon__visual{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#eaf7ff;transition:.2s}.vmv32-service-icon__visual img{width:64px;height:64px;max-width:none;object-fit:cover}.vmv32-service-icon:hover .vmv32-service-icon__visual{transform:translateY(-2px);box-shadow:0 8px 18px rgba(0,91,176,.13)}.vmv32-service-icon__grid{width:47px;height:47px;border:2px solid #0c6bd0;border-radius:50%;display:grid;place-items:center;color:#0c6bd0;background:#fff}.vmv32-service-search{height:40px;width:230px;display:flex;border:1px solid #c8e0f3;background:#fff;border-radius:8px;overflow:hidden;flex:0 0 auto}.vmv32-service-search input{width:100%;min-width:0;border:0!important;box-shadow:none!important;padding:0 11px!important;height:38px!important;font-size:11px!important;margin:0!important}.vmv32-service-search button{width:42px;border:0;background:#0758b7;color:#fff;display:grid;place-items:center;cursor:pointer}

/* Featured */
.vmv32-featured-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.vmv32-feature-card{border:1px solid #cce2f4;border-radius:6px;overflow:hidden;background:#fff;min-width:0}.vmv32-feature-card__image{height:140px;overflow:hidden;background:#eef7fc}.vmv32-feature-card__image img{width:100%;height:100%;object-fit:cover;transition:.25s}.vmv32-feature-card:hover .vmv32-feature-card__image img{transform:scale(1.025)}.vmv32-feature-card__body{padding:8px 10px 9px}.vmv32-feature-card h3{font-size:16px;margin:0 0 2px;color:#0757b7}.vmv32-feature-card p{margin:0 0 4px;font-size:11px;line-height:1.3;color:#245d96;min-height:29px}.vmv32-text-link{display:inline-flex;align-items:center;gap:4px;color:#0758b7!important;font-size:11px;font-weight:700}

/* Result */
.vmv32-heading--filters{display:grid;grid-template-columns:auto 1fr auto}.vmv32-filters{display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.vmv32-filters button{border:1px solid #d1e5f7;background:#f2f8fe;color:#1761a7;border-radius:5px;padding:6px 15px;font-size:10px;cursor:pointer}.vmv32-filters button.is-active{background:#0965bd;color:#fff;border-color:#0965bd}.vmv32-slider{position:relative}.vmv32-slider-track{display:flex;gap:10px;overflow-x:auto;scroll-behavior:smooth;scrollbar-width:none;overscroll-behavior-inline:contain}.vmv32-slider-track::-webkit-scrollbar{display:none}.vmv32-slider-btn{position:absolute;z-index:5;top:50%;transform:translateY(-50%);width:34px;height:34px;border-radius:50%;border:1px solid #b9dcf7;background:#fff;color:#0758b7;font-size:25px;line-height:1;box-shadow:0 4px 14px rgba(0,69,137,.1);cursor:pointer}.vmv32-slider-btn.is-prev{left:-18px}.vmv32-slider-btn.is-next{right:-18px}.vmv32-result-card{flex:0 0 calc((100% - 40px)/5);border:1px solid #cde3f5;border-radius:5px;overflow:hidden;background:#fff;min-width:180px}.vmv32-result-card[hidden]{display:none}.vmv32-result-card__image{height:118px;background:#f5f9fc;overflow:hidden}.vmv32-result-card__image img{width:100%;height:100%;object-fit:cover}.vmv32-result-card__body{padding:7px 9px}.vmv32-result-card__body strong{display:block;color:#0758b7;font-size:12px}.vmv32-result-card__body span{font-size:10px;color:#426d96}.vmv32-result-note,.vmv32-story-note{font-size:9px;color:#768aa0;text-align:right;margin:5px 0 0}

/* doctor */
.vmv32-doctor{margin-top:8px;background:linear-gradient(90deg,#e9f7ff 0%,#f4fbff 48%,#e7f6ff 100%);border-top:1px solid #dfedf8;border-bottom:1px solid #dfedf8}.vmv32-doctor__grid{height:240px;display:grid;grid-template-columns:28% 37% 35%;align-items:center;gap:0}.vmv32-doctor__portrait{height:100%;position:relative;overflow:hidden}.vmv32-doctor__portrait img{height:117%;width:auto;position:absolute;bottom:-20%;left:10%;object-fit:contain}.vmv32-doctor__portrait span{position:absolute;bottom:25px;left:0;color:#0758b7;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-style:italic;font-weight:700;font-size:23px;transform:rotate(-8deg)}.vmv32-doctor__info{padding:12px 20px}.vmv32-doctor__info h2{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:25px;color:#0751a9;margin:0 0 2px}.vmv32-doctor__info h3{font-size:12px;color:#174f85;margin:0 0 8px}.vmv32-doctor__info ul{list-style:none;margin:0 0 9px;padding:0;display:grid;gap:4px}.vmv32-doctor__info li{display:flex;align-items:center;gap:6px;font-size:11px;color:#2a6298}.vmv32-doctor__info li svg{color:#0b73d4}.vmv32-actions{display:flex;gap:9px}.vmv32-actions .vmv32-btn{min-height:36px;font-size:10px;padding:0 15px}.vmv32-doctor__quote{height:100%;padding:22px 0 12px 26px;display:flex;flex-direction:column;justify-content:center}.vmv32-doctor__quote blockquote{margin:0 0 4px;background:rgba(255,255,255,.7);border:0;border-radius:8px;padding:17px 22px 13px 54px;position:relative;color:#1c5e9d;font-size:11px;line-height:1.45;min-height:88px}.vmv32-doctor__quote blockquote:before{content:'“';position:absolute;left:16px;top:1px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;font-size:58px;color:#82c8f7;line-height:1}.vmv32-doctor__quote>b{text-align:right;margin:-27px 18px 20px 0;font-size:10px;color:#0755a8;position:relative}.vmv32-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.vmv32-stats div{padding:0 7px;border-right:1px solid #bcdcf2}.vmv32-stats div:last-child{border:0}.vmv32-stats strong{display:block;color:#0758b7;font-size:18px;line-height:1}.vmv32-stats span{display:block;color:#496f94;font-size:9px;margin-top:4px}

/* facilities safety */
.vmv32-trust-section{padding-top:12px}.vmv32-trust-layout{display:grid;grid-template-columns:58% 42%;gap:18px}.vmv32-facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.vmv32-facility-grid figure{margin:0}.vmv32-facility-grid img{width:100%;height:89px;object-fit:cover;border-radius:5px;border:1px solid #d7e8f5}.vmv32-facility-grid figcaption{font-size:9px;color:#2e6293;margin-top:4px}.vmv32-safety{border-left:1px solid #e0edf7;padding-left:18px}.vmv32-safety-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.vmv32-safety-grid article{border:1px solid #d1e6f6;border-radius:6px;background:#fbfdff;min-height:117px;padding:9px 6px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;color:#0757b1}.vmv32-safety-grid img{width:58px;height:42px;object-fit:cover;margin-bottom:6px}.vmv32-safety-icon{height:48px;display:grid;place-items:center;color:#0d76d5}.vmv32-safety-grid b{font-size:9px;line-height:1.2}.vmv32-safety-grid span:not(.vmv32-safety-icon){font-size:8px;line-height:1.25;color:#426e99;margin-top:3px}

/* testimonials */
.vmv32-stories-slider .vmv32-slider-track{gap:8px}.vmv32-story-card{flex:0 0 calc((100% - 32px)/5);min-width:225px;height:126px;border:1px solid #cfe4f5;border-radius:6px;background:#fff;display:grid;grid-template-columns:42% 58%;overflow:hidden}.vmv32-story-card__media{position:relative;border:0;padding:0;margin:0;background:#eef7fd;cursor:pointer;overflow:hidden}.vmv32-story-card__media img{width:100%;height:100%;object-fit:cover}.vmv32-story-card__media span{position:absolute;left:9px;bottom:9px;width:28px;height:28px;border-radius:50%;background:#fff;color:#0758b7;display:grid;place-items:center;box-shadow:0 3px 10px rgba(0,73,145,.22)}.vmv32-story-card__body{padding:9px 8px;display:flex;flex-direction:column;min-width:0}.vmv32-story-card__body p{font-size:9.5px;line-height:1.35;color:#2d6091;margin:0;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}.vmv32-story-card__body b{font-size:11px;color:#0758b7;margin-top:auto}.vmv32-story-note{text-align:left}

/* knowledge */
.vmv32-knowledge-grid{display:grid;grid-template-columns:repeat(3,1fr) 1.08fr;gap:10px}.vmv32-article-card{border:1px solid #d0e5f5;border-radius:6px;overflow:hidden;background:#fff}.vmv32-article-card__image{display:block;height:95px;background:#edf7fc;overflow:hidden}.vmv32-article-card__image img{width:100%;height:100%;object-fit:cover}.vmv32-article-card__body{padding:8px 10px 10px}.vmv32-article-card h3{margin:0 0 7px;font-size:11px;line-height:1.28;color:#0758b7}.vmv32-article-card time{font-size:9px;color:#7890a8}.vmv32-consult-card{position:relative;overflow:hidden;border:1px solid #d2e7f7;border-radius:6px;background:linear-gradient(120deg,#ecf8ff,#d9f1ff);min-height:145px}.vmv32-consult-card>div{position:relative;z-index:2;padding:15px 42% 12px 14px}.vmv32-consult-card h3{font-size:20px;color:#0758b7;margin:0 0 5px}.vmv32-consult-card p{font-size:10px;color:#2b6092;margin:0 0 10px}.vmv32-consult-card .vmv32-btn{min-height:36px;font-size:10px}.vmv32-consult-card>img{position:absolute;right:0;top:0;width:48%;height:100%;object-fit:cover;object-position:right center}

/* bottom CTA footer */
.vmv32-bottom-cta{margin-top:9px;background:linear-gradient(90deg,#e9f7ff,#f4fbff);border-top:1px solid #d9eaf7;border-bottom:1px solid #d9eaf7}.vmv32-bottom-cta__inner{min-height:62px;display:flex;align-items:center;gap:10px}.vmv32-bottom-cta__title{display:flex;flex-direction:column;min-width:245px}.vmv32-bottom-cta__title strong{color:#0753ab;font-size:15px}.vmv32-bottom-cta__title span{font-size:9px;color:#557b9f}.vmv32-contact-chip{height:39px;padding:0 15px;border-radius:6px;background:#075bb4;color:#fff!important;display:inline-flex;align-items:center;gap:9px;font-size:11px}.vmv32-contact-chip b{white-space:nowrap}.vmv32-zalo{font-weight:700;font-style:italic}.vmv32-bottom-cta .vmv32-btn{height:39px;min-height:39px;font-size:10px}.vmv32-benefits{display:flex;align-items:center;gap:14px;margin-left:auto}.vmv32-benefits span{display:flex;align-items:center;gap:5px;color:#1c64a7;font-size:9px;white-space:nowrap}.vmv32-footer{background:#fff}.vmv32-footer__top{min-height:76px;display:grid;grid-template-columns:40% 42% 18%;align-items:center;gap:12px}.vmv32-footer__brand{display:flex;align-items:center;gap:18px}.vmv32-footer__brand>img{width:150px;height:auto}.vmv32-footer__brand>div{display:flex;flex-direction:column;font-size:9px;color:#315f8a;line-height:1.5}.vmv32-footer nav{display:flex;justify-content:center;gap:17px}.vmv32-footer nav a{font-size:9px;color:#2e6193;white-space:nowrap}.vmv32-socials{display:flex;justify-content:flex-end;gap:8px}.vmv32-socials a{width:27px;height:27px;border-radius:50%;background:#0d68c8;color:#fff!important;display:grid;place-items:center;font-size:13px;font-weight:700}.vmv32-footer__bottom{background:linear-gradient(90deg,#063d76,#075a96);color:#d9ecfb}.vmv32-footer__bottom .vmv32-shell{height:52px;display:flex;align-items:center;justify-content:space-between;font-size:8px}.vmv32-footer__bottom div div{display:flex;gap:20px}.vmv32-backtop{position:fixed;right:18px;bottom:18px;width:36px;height:36px;border-radius:50%;border:0;background:#0c6fc5;color:#fff;font-size:20px;box-shadow:0 6px 16px rgba(0,69,137,.22);cursor:pointer;z-index:30}

/* modal */
.vmv32-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px}.vmv32-modal[hidden]{display:none}.vmv32-modal__backdrop{position:absolute;inset:0;background:rgba(3,28,55,.62);backdrop-filter:blur(3px)}.vmv32-modal__dialog{position:relative;z-index:2;width:min(520px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:13px;box-shadow:0 24px 70px rgba(0,0,0,.25);padding:28px}.vmv32-modal__dialog .vmv32-modal__title{color:#0758b7;margin:0 0 6px;font-size:24px}.vmv32-modal__dialog>p{color:#557895;font-size:12px;margin:0 0 16px}.vmv32-modal__close{position:absolute;right:12px;top:12px;width:34px;height:34px;border-radius:50%;border:1px solid #d3e4f3;background:#fff;color:#0758b7;display:grid;place-items:center;cursor:pointer}.vmv32-consult-form{display:grid;gap:10px}.vmv32-consult-form label{display:grid;gap:5px;font-size:11px;font-weight:700;color:#315f88}.vmv32-consult-form input,.vmv32-consult-form select{width:100%;height:43px;border:1px solid #c8ddea;border-radius:7px;padding:0 11px;background:#fff;color:#243f5b}.vmv32-consult-form .vmv32-consent{display:flex;align-items:flex-start;gap:8px;font-weight:400}.vmv32-consult-form .vmv32-consent input{width:16px;height:16px;margin-top:1px}.vmv32-hp{position:absolute!important;left:-9999px!important}.vmv32-form-status{font-size:11px;min-height:15px}.vmv32-form-status.is-error{color:#b32d2e}.vmv32-form-status.is-success{color:#16754a}.vmv32-modal__quick{display:flex;justify-content:center;gap:18px;margin-top:14px}.vmv32-modal__quick a{color:#0758b7;font-size:11px;font-weight:700}.vmv32-modal__dialog--image{width:min(760px,100%);padding:48px 14px 14px}.vmv32-modal__dialog--image .vmv32-modal__title{position:absolute;left:18px;top:14px;font-size:15px}.vmv32-story-full{width:100%;height:auto;max-height:78vh;object-fit:contain;border-radius:8px}

@media (max-width:1200px){.vmv32-shell{width:calc(100% - 40px)}.vmv32-nav a{padding:0 7px;font-size:11px}.vmv32-header__actions{gap:5px}.vmv32-lang{display:none}.vmv32-hero__copy{left:2%;width:44%}.vmv32-hero__doctor{left:42%}.vmv32-servicebar__question{width:135px}.vmv32-service-icon{width:67px;flex-basis:67px}.vmv32-service-search{width:195px}.vmv32-result-card{flex-basis:calc((100% - 32px)/4)}.vmv32-story-card{flex-basis:calc((100% - 24px)/4)}.vmv32-benefits span:nth-child(2){display:none}}
@media (max-width:980px){.vmv32-header__actions .vmv32-phone,.vmv32-header__actions .vmv32-btn,.vmv32-nav{display:none}.vmv32-mobile-toggle{display:grid;margin-left:auto}.vmv32-header__actions{margin-left:auto}.vmv32-hero{height:auto;min-height:550px}.vmv32-hero__inner{min-height:550px}.vmv32-hero__copy{top:7%;left:0;width:58%}.vmv32-hero__doctor{left:45%;height:72%;bottom:-5%}.vmv32-hero__building{height:63%;right:-3%;bottom:-3%}.vmv32-hero__doctor-label{display:none}.vmv32-hero__motto{right:2%;top:10%}.vmv32-servicebar__inner{display:grid;grid-template-columns:135px 1fr;gap:8px;padding:8px 0}.vmv32-servicebar__icons{overflow-x:auto;scrollbar-width:none}.vmv32-servicebar__icons::-webkit-scrollbar{display:none}.vmv32-service-search{grid-column:1/-1;width:100%}.vmv32-featured-grid{grid-template-columns:repeat(2,1fr)}.vmv32-result-card{flex-basis:calc((100% - 20px)/3)}.vmv32-doctor__grid{height:auto;grid-template-columns:34% 66%}.vmv32-doctor__portrait{min-height:270px}.vmv32-doctor__quote{grid-column:1/-1;padding:10px 0 16px}.vmv32-trust-layout{grid-template-columns:1fr}.vmv32-safety{border:0;padding-left:0}.vmv32-story-card{flex-basis:calc((100% - 16px)/3)}.vmv32-knowledge-grid{grid-template-columns:repeat(2,1fr)}.vmv32-consult-card{min-height:170px}.vmv32-bottom-cta__inner{flex-wrap:wrap;padding:9px 0}.vmv32-benefits{margin-left:0}.vmv32-footer__top{grid-template-columns:1fr 1fr}.vmv32-socials{justify-content:flex-start}.vmv32-footer nav{justify-content:flex-end;flex-wrap:wrap}.vmv32-footer__brand{grid-row:span 2}}
@media (max-width:700px){.vmv32-shell{width:calc(100% - 28px)}.vmv32-header,.vmv32-header__inner{height:54px}.vmv32-logo{width:150px}.vmv32-logo img{max-height:40px}.vmv32-header-search,.vmv32-mobile-nav{top:54px}.vmv32-hero{min-height:610px}.vmv32-hero__inner{min-height:610px}.vmv32-hero__copy{top:32px;width:100%;padding-right:0}.vmv32-eyebrow{font-size:11px}.vmv32-hero .vmv32-hero__display-title{font-size:41px}.vmv32-hero__lead{font-size:12px;width:92%}.vmv32-trust-mini{grid-template-columns:repeat(4,1fr);max-width:100%}.vmv32-trust-mini small{display:none}.vmv32-hero__buttons{gap:8px}.vmv32-hero__buttons .vmv32-btn{font-size:10px;padding:0 12px;min-height:39px}.vmv32-hero__doctor{height:52%;left:25%;bottom:-2%}.vmv32-hero__building{height:47%;right:-9%;bottom:0}.vmv32-hero__motto{display:none}.vmv32-servicebar__inner{grid-template-columns:115px 1fr}.vmv32-servicebar__question{font-size:11px;width:115px}.vmv32-service-icon{width:64px;flex-basis:64px;font-size:8px}.vmv32-service-icon__visual{width:48px;height:48px}.vmv32-service-icon__visual img{width:58px;height:58px}.vmv32-section{padding:12px 0 5px}.vmv32-heading{align-items:flex-end}.vmv32-heading h2{font-size:18px}.vmv32-heading>a{font-size:10px}.vmv32-featured-grid{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;scrollbar-width:none}.vmv32-featured-grid::-webkit-scrollbar{display:none}.vmv32-feature-card{flex:0 0 82%;scroll-snap-align:start}.vmv32-heading--filters{display:flex;align-items:flex-start;flex-wrap:wrap}.vmv32-filters{order:3;justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.vmv32-filters button{white-space:nowrap}.vmv32-result-card{flex-basis:78%}.vmv32-slider-btn{display:none}.vmv32-result-note{font-size:8px}.vmv32-doctor__grid{grid-template-columns:1fr}.vmv32-doctor__portrait{min-height:245px}.vmv32-doctor__portrait img{left:50%;transform:translateX(-50%);height:125%}.vmv32-doctor__portrait span{left:18px}.vmv32-doctor__info{padding:15px 0}.vmv32-doctor__info h2{font-size:23px}.vmv32-doctor__quote{padding:0 0 16px}.vmv32-facility-grid{grid-template-columns:repeat(2,1fr)}.vmv32-facility-grid img{height:100px}.vmv32-safety-grid{grid-template-columns:repeat(2,1fr)}.vmv32-story-card{flex-basis:88%;height:140px}.vmv32-knowledge-grid{display:flex;overflow-x:auto;gap:8px;scroll-snap-type:x mandatory;scrollbar-width:none}.vmv32-knowledge-grid::-webkit-scrollbar{display:none}.vmv32-article-card,.vmv32-consult-card{flex:0 0 82%;scroll-snap-align:start}.vmv32-consult-card{min-height:155px}.vmv32-bottom-cta__inner{display:grid;grid-template-columns:1fr 1fr}.vmv32-bottom-cta__title{grid-column:1/-1;min-width:0}.vmv32-contact-chip{justify-content:center;padding:0 9px}.vmv32-bottom-cta .vmv32-btn{grid-column:1/-1}.vmv32-benefits{grid-column:1/-1;justify-content:space-between}.vmv32-benefits span:nth-child(2){display:flex}.vmv32-footer__top{display:flex;flex-direction:column;align-items:flex-start;padding:16px 0}.vmv32-footer__brand{display:block}.vmv32-footer__brand>img{margin-bottom:10px}.vmv32-footer nav{justify-content:flex-start;gap:10px 15px}.vmv32-footer__bottom .vmv32-shell{height:auto;min-height:70px;padding:12px 0;flex-direction:column;align-items:flex-start;gap:8px}.vmv32-footer__bottom div div{gap:12px;flex-wrap:wrap}.vmv32-modal__dialog{padding:24px 18px}.vmv32-backtop{right:12px;bottom:12px}}


/* ===== V3.2.1 production QA / pixel-match refinements ===== */
.vmv32-feature-card__image{display:block}
.vmv32-header{height:40px}
.vmv32-header__inner{height:40px;gap:14px}
.vmv32-logo{width:148px}
.vmv32-logo img{max-height:34px}
.vmv32-nav a{padding:0 8px;font-size:10.5px}
.vmv32-header__actions{gap:6px}
.vmv32-icon-btn{width:30px;height:30px}
.vmv32-phone{height:32px;padding:0 9px;gap:6px}
.vmv32-phone b{font-size:10px}.vmv32-phone small{font-size:8px}
.vmv32-header .vmv32-btn{min-height:32px;height:32px;padding:0 13px;font-size:9.5px}
.vmv32-header-search,.vmv32-mobile-nav{top:40px}

.vmv32-hero{height:clamp(297px,29vw,420px)}
.vmv32-hero__lead{margin:7px 0 10px}
.vmv32-trust-mini{margin-bottom:10px}
.vmv32-hero__buttons .vmv32-btn{min-height:38px}

.vmv32-result-card__image{height:93px}
.vmv32-result-card__body{padding:5px 8px 6px}
.vmv32-result-note{display:none}

.vmv32-doctor__grid{height:190px}
.vmv32-doctor__portrait img{height:120%;bottom:-24%}
.vmv32-doctor__portrait span{bottom:18px;font-size:20px}
.vmv32-doctor__info{padding:8px 16px}
.vmv32-doctor__info h2{font-size:22px}
.vmv32-doctor__info h3{margin-bottom:6px}
.vmv32-doctor__info ul{gap:2px;margin-bottom:6px}
.vmv32-doctor__info li{font-size:10px}
.vmv32-doctor__info .vmv32-btn{min-height:34px;padding:0 13px;font-size:10px}
.vmv32-doctor__quote{padding:14px 0 8px 18px}
.vmv32-doctor__quote blockquote{min-height:72px;padding:12px 17px 10px 46px;font-size:10px}
.vmv32-doctor__quote blockquote:before{font-size:50px;left:14px}
.vmv32-doctor__quote>b{margin:-22px 14px 12px 0;font-size:9px}
.vmv32-stats strong{font-size:18px}.vmv32-stats span{font-size:8px}

.vmv32-trust-section{padding-top:9px;padding-bottom:5px}
.vmv32-facility-grid img{height:72px}
.vmv32-facility-grid figcaption{font-size:8px;margin-top:3px}
.vmv32-safety-grid article{min-height:94px;padding:7px 5px}
.vmv32-safety-grid img{width:50px;height:34px;margin-bottom:4px}
.vmv32-safety-icon{height:39px}
.vmv32-safety-grid b{font-size:8px}.vmv32-safety-grid span:not(.vmv32-safety-icon){font-size:7px}

.vmv32-story-card{height:92px;min-width:0}
.vmv32-story-card__body{padding:6px}
.vmv32-story-card__body p{font-size:8px;line-height:1.25;-webkit-line-clamp:4}
.vmv32-story-card__body b{font-size:9px}
.vmv32-story-card__media span{width:24px;height:24px;left:6px;bottom:6px}
.vmv32-story-note{display:none}

.vmv32-article-card__image{height:58px}
.vmv32-article-card__body{padding:6px 8px 7px}
.vmv32-article-card h3{font-size:9.5px;margin-bottom:4px}
.vmv32-article-card time{font-size:8px}
.vmv32-consult-card{min-height:104px}
.vmv32-consult-card>div{padding:10px 42% 8px 12px}
.vmv32-consult-card h3{font-size:17px;margin-bottom:3px}
.vmv32-consult-card p{font-size:9px;margin-bottom:7px}
.vmv32-consult-card .vmv32-btn{min-height:31px;font-size:9px}

.vmv32-bottom-cta__inner{min-height:50px}
.vmv32-footer__top{min-height:58px}
.vmv32-footer__brand>img{width:126px}
.vmv32-footer__brand{gap:12px}
.vmv32-footer__bottom .vmv32-shell{height:48px}

@media (max-width:1200px) and (min-width:981px){
  .vmv32-shell{width:calc(100% - 72px)}
  .vmv32-logo{width:142px}
  .vmv32-nav a{padding:0 6px;font-size:9.5px}
  .vmv32-header__actions{gap:4px}
  .vmv32-header__actions .vmv32-lang{display:none}
  .vmv32-servicebar__question{width:118px;font-size:11px}
  .vmv32-servicebar__icons{gap:2px}
  .vmv32-service-icon{width:56px;flex-basis:56px;font-size:8px}
  .vmv32-service-icon__visual{width:46px;height:46px}
  .vmv32-service-icon__visual img{width:56px;height:56px}
  .vmv32-service-icon__grid{width:43px;height:43px}
  .vmv32-service-search{width:176px;height:36px}
  .vmv32-service-search input{height:34px!important;font-size:9px!important}
  .vmv32-service-search button{width:36px}
  .vmv32-result-card{flex-basis:calc((100% - 40px)/5);min-width:0}
  .vmv32-story-card{flex-basis:calc((100% - 32px)/5);min-width:0}
  .vmv32-benefits span:nth-child(2){display:flex}
}

@media (max-width:980px){
  .vmv32-header,.vmv32-header__inner{height:54px}
  .vmv32-header-search,.vmv32-mobile-nav{top:54px}
  .vmv32-hero{min-height:550px;height:auto}
  .vmv32-doctor__grid{height:auto}
  .vmv32-story-card{height:140px;min-width:225px}
  .vmv32-article-card__image{height:95px}
  .vmv32-consult-card{min-height:170px}
}

/* V3.2.1 final desktop density alignment against approved 1024×1536 master */
@media (min-width:981px){
  .vmv32-servicebar__inner{min-height:92px}

  #vmv32-featured{padding:8px 0 5px}
  #vmv32-featured .vmv32-heading{margin-bottom:6px}
  #vmv32-featured .vmv32-heading h2{font-size:19px}
  .vmv32-feature-card__image{height:105px}
  .vmv32-feature-card__body{padding:6px 9px 7px}
  .vmv32-feature-card h3{font-size:14px;line-height:1.15;margin:0 0 2px}
  .vmv32-feature-card p{font-size:10px;line-height:1.25;min-height:25px;margin:0 0 3px}
  .vmv32-text-link{font-size:10px}

  #vmv32-results{padding:6px 0 4px}
  #vmv32-results .vmv32-heading{margin-bottom:6px}
  #vmv32-results .vmv32-heading h2{font-size:19px}
  .vmv32-result-card__body{padding:4px 7px 5px}
  .vmv32-result-card__body strong{font-size:11px;line-height:1.15}
  .vmv32-result-card__body span{display:block;font-size:9px;line-height:1.2;margin-top:2px}

  .vmv32-trust-section .vmv32-heading{margin-bottom:6px}
  .vmv32-trust-section .vmv32-heading h2{font-size:19px}
  .vmv32-facility-grid img{height:68px}
  .vmv32-safety-grid article{min-height:88px}

  #vmv32-testimonials{padding:6px 0 4px}
  #vmv32-testimonials .vmv32-heading{margin-bottom:6px}
  #vmv32-testimonials .vmv32-heading h2{font-size:19px}

  #vmv32-knowledge{padding:6px 0 0}
  #vmv32-knowledge .vmv32-heading{margin-bottom:4px}
  #vmv32-knowledge .vmv32-heading h2{font-size:19px}
  .vmv32-knowledge-grid{align-items:stretch}
  .vmv32-article-card,.vmv32-consult-card{height:104px;min-height:104px}
  .vmv32-article-card__image{height:42px}
  .vmv32-article-card__body{padding:5px 8px 5px}
  .vmv32-article-card h3{font-size:9.5px;line-height:1.22;margin:0 0 3px}
  .vmv32-article-card time{font-size:8px}
  .vmv32-consult-card>div{padding:8px 42% 6px 11px}
  .vmv32-consult-card h3{font-size:16px;line-height:1.05;margin-bottom:3px}
  .vmv32-consult-card p{font-size:8.5px;line-height:1.25;margin-bottom:5px}
  .vmv32-consult-card .vmv32-btn{min-height:29px;height:29px;padding:0 11px;font-size:8.5px}

  .vmv32-bottom-cta{margin-top:0}
  .vmv32-bottom-cta__inner{min-height:40px}
  .vmv32-contact-chip{height:34px;padding:0 12px}
  .vmv32-bottom-cta .vmv32-btn{height:34px;min-height:34px}
}

/* V3.2.1 pass 2 — final vertical rhythm */
@media (min-width:981px){
  .vmv32-header,.vmv32-header__inner{height:38px}
  .vmv32-logo img{max-height:32px}
  .vmv32-phone{height:30px}
  .vmv32-header .vmv32-btn{height:30px;min-height:30px}
  .vmv32-header-search,.vmv32-mobile-nav{top:38px}
  .vmv32-hero{height:clamp(299px,29.2vw,420px)}

  #vmv32-featured{padding-top:6px;padding-bottom:2px}
  #vmv32-featured .vmv32-heading{margin-bottom:4px}
  .vmv32-feature-card__body{padding:4px 8px 5px}
  .vmv32-feature-card h3{font-size:13px;line-height:1.12;margin-bottom:1px}
  .vmv32-feature-card p{font-size:9.5px;line-height:1.2;min-height:23px;margin-bottom:2px}
  .vmv32-text-link{font-size:9.5px}

  #vmv32-results{padding-top:5px;padding-bottom:2px}
  #vmv32-results .vmv32-heading{margin-bottom:5px}

  .vmv32-doctor__grid{height:188px}

  .vmv32-trust-section{padding-top:5px;padding-bottom:2px}
  .vmv32-trust-section .vmv32-heading{margin-bottom:4px}

  .vmv32-article-card,.vmv32-consult-card{height:96px;min-height:96px}
  .vmv32-consult-card h3{font-size:15px}

  .vmv32-bottom-cta__inner{min-height:34px}
  .vmv32-contact-chip{height:30px}
  .vmv32-bottom-cta .vmv32-btn{height:30px;min-height:30px}
}

/* ===== V3.2.3 live Flatsome collision fix ===== */
/* The production template is standalone, but keep these guards for cache/template fallbacks. */
body.vmv32-active:not(.vmv32-builder-preview) #header,
body.vmv32-active:not(.vmv32-builder-preview) #footer,
body.vmv32-active:not(.vmv32-builder-preview) .header-wrapper,
body.vmv32-active:not(.vmv32-builder-preview) .footer-wrapper,
body.vmv32-active:not(.vmv32-builder-preview) .absolute-footer,
body.vmv32-active:not(.vmv32-builder-preview) .back-to-top,
body.vmv32-active:not(.vmv32-builder-preview) #top-link{display:none!important}

body.vmv32-standalone-template{margin:0!important;background:#fff!important}
body.vmv32-standalone-template #wpadminbar{z-index:100000}
body.vmv32-standalone-template #vmv32-page{margin:0!important;padding:0!important;width:100%;max-width:none}
body.vmv32-active .vmv32-template-content>p:empty{display:none!important}

/* Isolate the V3.2 component from Flatsome typography/form defaults. */
.vmv32{position:relative;isolation:isolate;width:100%;max-width:none;margin:0!important;padding:0!important}
.vmv32 h1,.vmv32 h2,.vmv32 h3,.vmv32 h4,.vmv32 p,.vmv32 figure,.vmv32 blockquote,.vmv32 ul{box-sizing:border-box}
.vmv32 h1,.vmv32 h2,.vmv32 h3,.vmv32 h4{padding:0}
.vmv32 button{margin:0;box-shadow:none;text-transform:none}
.vmv32 input,.vmv32 select{margin:0}

/* Percentage columns + gaps previously exceeded 100% on real Flatsome pages. */
.vmv32-trust-layout{grid-template-columns:minmax(0,58fr) minmax(0,42fr)}
.vmv32-footer__top{grid-template-columns:minmax(0,40fr) minmax(0,42fr) minmax(0,18fr)}
.vmv32-trust-layout>*,.vmv32-footer__top>*,.vmv32-doctor__grid>*,.vmv32-knowledge-grid>*{min-width:0}

/* Do not force live content into a box shorter than its actual copy. */
@media (min-width:981px){
  .vmv32-doctor__grid{height:auto;min-height:190px}
  .vmv32-doctor__portrait{min-height:190px}
  .vmv32-doctor__quote{min-height:190px}
  .vmv32-article-card,.vmv32-consult-card{height:auto;min-height:104px}
  .vmv32-article-card__body{min-height:55px}
  .vmv32-bottom-cta__inner{min-height:42px;padding:4px 0}
  #vmv32-testimonials{padding-top:8px;padding-bottom:6px}
  #vmv32-knowledge{padding-top:8px;padding-bottom:2px}
}

/* Keep sliders/cards inside their own row when fonts render slightly larger on production. */
.vmv32-slider-track{align-items:stretch}
.vmv32-result-card,.vmv32-story-card{align-self:stretch}
.vmv32-story-card__body{overflow:hidden}
.vmv32-story-card__body p{min-height:0}

/* Extra safety against legacy floating contact UI from the old site. JS also removes fixed ancestors. */
body.vmv32-active:not(.vmv32-builder-preview) .hotline-phone-ring-wrap,
body.vmv32-active:not(.vmv32-builder-preview) .quick-alo-phone,
body.vmv32-active:not(.vmv32-builder-preview) .phonering-alo-phone,
body.vmv32-active:not(.vmv32-builder-preview) #button-contact-vr,
body.vmv32-active:not(.vmv32-builder-preview) .button-contact-vr,
body.vmv32-active:not(.vmv32-builder-preview) .float-contact,
body.vmv32-active:not(.vmv32-builder-preview) .contact-fixed,
body.vmv32-active:not(.vmv32-builder-preview) .contact-bar-fixed{display:none!important}

@media (max-width:980px){
  .vmv32-trust-layout{grid-template-columns:1fr}
  .vmv32-footer__top{grid-template-columns:1fr 1fr}
  .vmv32-doctor__quote{min-height:0}
}
@media (max-width:700px){
  .vmv32-footer__top{display:flex}
}

/* ===== V3.2.4 Image Expansion / Original-Proportion Fix =====
 * Keep the 1024px master geometry, but let visual media scale with the
 * viewport on larger desktops instead of staying locked to the 1024 crop height.
 * This prevents cards from looking flattened or "co lại" on 1440–1920px screens.
 */
@media (min-width:1201px){
  /* The approved 1024 master uses ~36px side gutters. Preserve that visual
     density on wide desktops while capping the content for very large screens. */
  .vmv32-shell{width:min(1600px,calc(100% - 72px))}

  /* Hero imagery scales as a composition, without stretching the source. */
  .vmv32-hero__doctor{height:120%;left:42.5%;bottom:-20%;object-fit:contain}
  .vmv32-hero__building{height:112%;right:.5%;bottom:-10%;object-fit:contain}

  /* Featured service crops were authored at about 2.2:1. Use the source ratio
     instead of a fixed 105px height, so they grow naturally with the card. */
  .vmv32-feature-card__image{height:auto;aspect-ratio:2.2/1}
  .vmv32-feature-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}

  /* Before/After result crops are ~1.94:1. */
  .vmv32-result-card__image{height:auto;aspect-ratio:1.94/1}
  .vmv32-result-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}

  /* Let the doctor band breathe in proportion to the wider visual system. */
  .vmv32-doctor__grid{min-height:clamp(210px,14.5vw,250px)}
  .vmv32-doctor__portrait{min-height:inherit}
  .vmv32-doctor__portrait img{height:123%;bottom:-23%;max-width:none}
  .vmv32-doctor__quote{min-height:inherit}

  /* Facility source crops are almost exactly 2:1. */
  .vmv32-facility-grid img{height:auto;aspect-ratio:1.98/1;object-fit:cover;object-position:center}

  /* Testimonial cards should also scale in height as they become wider. */
  .vmv32-story-card{height:auto;min-height:112px;aspect-ratio:2.12/1}
  .vmv32-story-card__media img{width:100%;height:100%;object-fit:cover;object-position:center}
  .vmv32-story-card__body{padding:clamp(7px,.65vw,11px)}
  .vmv32-story-card__body p{font-size:clamp(8px,.64vw,10.5px);line-height:1.32}
  .vmv32-story-card__body b{font-size:clamp(9px,.72vw,12px)}

  /* Knowledge imagery was created as a panoramic crop. Preserve its ratio rather
     than flattening it to 42px on large screens. */
  .vmv32-article-card{min-height:0}
  .vmv32-article-card__image{height:auto;aspect-ratio:4.45/1}
  .vmv32-article-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}
  .vmv32-article-card__body{min-height:58px}
  .vmv32-consult-card{min-height:clamp(112px,9vw,145px)}
  .vmv32-consult-card>img{object-fit:cover;object-position:right center}
}

/* At 981–1200px retain the exact 1024 reference crop sizes, but explicitly
   prevent images from being distorted by inherited Flatsome rules. */
@media (min-width:981px) and (max-width:1200px){
  .vmv32-feature-card__image img,
  .vmv32-result-card__image img,
  .vmv32-facility-grid img,
  .vmv32-story-card__media img,
  .vmv32-article-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}
}

/* Tablet/mobile: make image panels visibly larger while keeping horizontal
   carousels practical and maintaining natural, non-distorted crops. */
@media (max-width:980px){
  .vmv32-feature-card__image{height:auto;aspect-ratio:2.05/1}
  .vmv32-result-card__image{height:auto;aspect-ratio:1.85/1}
  .vmv32-facility-grid img{height:auto;aspect-ratio:1.75/1}
  .vmv32-article-card__image{height:auto;aspect-ratio:2.8/1}
  .vmv32-feature-card__image img,
  .vmv32-result-card__image img,
  .vmv32-facility-grid img,
  .vmv32-article-card__image img{width:100%;height:100%;object-fit:cover;object-position:center}
}

@media (max-width:700px){
  .vmv32-hero__doctor{height:56%;left:23%;bottom:-2%}
  .vmv32-hero__building{height:50%;right:-10%;bottom:0}
  .vmv32-story-card{height:150px}
}

/* ===== V3.2.5 Pixel-Match Correction =====
 * Master reference: 1024 × 1536 approved homepage image.
 * Goals: remove legacy Flatsome/footer hook UI from the production shell,
 * restore the authored image proportions at 1024px, and lock the desktop
 * vertical rhythm so the page no longer grows/shrinks unpredictably.
 */

/* Production-shell hard isolation. wp_body_open()/wp_footer() may inject old
   bars, forms and footers as BODY children even when the theme template itself
   is bypassed. Keep scripts/styles, admin bar and the V3.2 main only. */
body.vmv32-standalone-template > :not(#wpadminbar):not(#vmv32-page):not(.vmv32):not(.vmv32-wp-footer-hooks):not(script):not(style):not(link):not(noscript){display:none!important}
body.vmv32-standalone-template .vmv32-wp-footer-hooks{display:none!important;width:0!important;height:0!important;overflow:hidden!important;position:absolute!important;left:-99999px!important;top:-99999px!important}
body.vmv32-standalone-template #vmv32-page{display:block!important;position:relative!important;z-index:1!important}
body.vmv32-standalone-template{overflow-x:hidden!important}

/* Keep photographic sources natural: never stretch either axis. */
.vmv32-feature-card__image img,
.vmv32-result-card__image img,
.vmv32-facility-grid img,
.vmv32-story-card__media img,
.vmv32-article-card__image img{object-fit:cover!important;max-width:none}
.vmv32-hero__doctor,.vmv32-hero__building,.vmv32-doctor__portrait img{object-fit:contain!important}

/* Exact 1024 desktop master. */
@media (min-width:981px) and (max-width:1200px){
  .vmv32{overflow:hidden}
  .vmv32-shell{width:calc(100% - 72px)!important;max-width:none!important}

  /* 0–38 */
  .vmv32-header,.vmv32-header__inner{height:38px!important;min-height:38px!important}
  .vmv32-header__inner{gap:13px!important}
  .vmv32-logo{width:148px!important}
  .vmv32-logo img{max-height:32px!important}
  .vmv32-nav a{font-size:9.5px!important;padding:0 6px!important}
  .vmv32-header__actions{gap:4px!important}
  .vmv32-icon-btn{width:28px!important;height:28px!important}
  .vmv32-phone{height:30px!important;padding:0 8px!important}
  .vmv32-phone b{font-size:10px!important}.vmv32-phone small{font-size:8px!important}
  .vmv32-header .vmv32-btn{height:30px!important;min-height:30px!important;padding:0 12px!important;font-size:9.5px!important}
  .vmv32-header-search,.vmv32-mobile-nav{top:38px!important}

  /* 38–338 */
  .vmv32-hero{height:300px!important;min-height:300px!important}
  .vmv32-hero__copy{left:3.1%!important;top:9%!important;width:42%!important}
  .vmv32-eyebrow{font-size:11px!important;margin-bottom:5px!important}
  .vmv32-hero .vmv32-hero__display-title{font-size:43px!important;line-height:.97!important}
  .vmv32-hero__lead{font-size:12px!important;line-height:1.18!important;margin:6px 0 9px!important;max-width:405px!important}
  .vmv32-trust-mini{gap:6px!important;max-width:390px!important;margin-bottom:9px!important}
  .vmv32-trust-mini span{width:29px!important;height:29px!important}
  .vmv32-trust-mini b{font-size:8px!important;line-height:1.12!important}
  .vmv32-trust-mini small{font-size:8px!important;line-height:1.08!important}
  .vmv32-hero__buttons{gap:10px!important}
  .vmv32-hero__buttons .vmv32-btn{height:36px!important;min-height:36px!important;padding:0 16px!important;font-size:10px!important}
  .vmv32-hero__doctor{height:112%!important;left:43%!important;bottom:-18%!important;width:auto!important}
  .vmv32-hero__building{height:105%!important;right:1.4%!important;bottom:-8%!important;width:auto!important}
  .vmv32-hero__doctor-label{left:58.3%!important;top:28%!important}
  .vmv32-hero__motto{right:1%!important;top:18%!important}

  /* 338–429 */
  .vmv32-servicebar__inner{height:90px!important;min-height:90px!important;padding:0!important;gap:8px!important}
  .vmv32-servicebar__question{width:118px!important;font-size:11px!important;line-height:1.15!important}
  .vmv32-servicebar__icons{gap:2px!important}
  .vmv32-service-icon{width:56px!important;flex-basis:56px!important;font-size:8px!important;gap:1px!important}
  .vmv32-service-icon__visual{width:46px!important;height:46px!important}
  .vmv32-service-icon__visual img{width:56px!important;height:56px!important}
  .vmv32-service-icon__grid{width:43px!important;height:43px!important}
  .vmv32-service-search{width:176px!important;height:36px!important}
  .vmv32-service-search input{height:34px!important;font-size:9px!important}
  .vmv32-service-search button{width:36px!important}

  /* 429–643 */
  #vmv32-featured{height:214px!important;padding:6px 0 2px!important;overflow:hidden!important}
  #vmv32-featured .vmv32-heading{height:24px!important;margin:0 0 4px!important}
  #vmv32-featured .vmv32-heading h2{font-size:19px!important}
  .vmv32-featured-grid{height:177px!important;gap:8px!important}
  .vmv32-feature-card{height:177px!important}
  .vmv32-feature-card__image{height:105px!important;aspect-ratio:auto!important;overflow:hidden!important}
  .vmv32-feature-card__image img{width:100%!important;height:100%!important}
  .vmv32-feature-card__body{height:70px!important;padding:4px 8px 4px!important;overflow:hidden!important}
  .vmv32-feature-card h3{font-size:13px!important;line-height:1.1!important;margin:0 0 1px!important}
  .vmv32-feature-card p{font-size:9px!important;line-height:1.18!important;min-height:22px!important;max-height:22px!important;overflow:hidden!important;margin:0 0 2px!important}
  .vmv32-text-link{font-size:9.5px!important;line-height:1!important}

  /* 643–826 */
  #vmv32-results{height:183px!important;padding:5px 0 2px!important;overflow:hidden!important}
  #vmv32-results .vmv32-heading{height:29px!important;margin:0 0 5px!important}
  #vmv32-results .vmv32-heading h2{font-size:19px!important}
  .vmv32-filters{gap:5px!important}
  .vmv32-filters button{height:27px!important;padding:0 13px!important;font-size:9px!important}
  .vmv32-results-slider{height:137px!important}
  .vmv32-slider-track{gap:10px!important}
  .vmv32-result-card{height:132px!important;flex:0 0 calc((100% - 40px)/5)!important;min-width:0!important}
  .vmv32-result-card__image{height:93px!important;aspect-ratio:auto!important}
  .vmv32-result-card__image img{width:100%!important;height:100%!important}
  .vmv32-result-card__body{height:38px!important;padding:4px 7px 4px!important;overflow:hidden!important}
  .vmv32-result-card__body strong{font-size:11px!important;line-height:1.1!important}
  .vmv32-result-card__body span{font-size:9px!important;line-height:1.1!important;margin-top:1px!important}
  .vmv32-result-note{display:none!important}

  /* 826–1005 */
  .vmv32-doctor{height:179px!important;min-height:179px!important;margin-top:0!important;overflow:hidden!important}
  .vmv32-doctor__grid{height:179px!important;min-height:179px!important;grid-template-columns:28% 37% 35%!important}
  .vmv32-doctor__portrait{height:179px!important;min-height:179px!important}
  .vmv32-doctor__portrait img{height:120%!important;bottom:-24%!important}
  .vmv32-doctor__portrait span{bottom:17px!important;font-size:19px!important}
  .vmv32-doctor__info{height:179px!important;padding:8px 15px!important;overflow:hidden!important}
  .vmv32-doctor__info .vmv32-kicker{font-size:8px!important;letter-spacing:.04em!important;margin:0 0 1px!important}
  .vmv32-doctor__info h2{font-size:21px!important;line-height:1!important;margin:0 0 2px!important}
  .vmv32-doctor__info h3{font-size:10px!important;line-height:1.1!important;margin:0 0 5px!important}
  .vmv32-doctor__info ul{gap:1px!important;margin:0 0 5px!important}
  .vmv32-doctor__info li{font-size:9.5px!important;line-height:1.15!important}
  .vmv32-doctor__info li svg{width:14px!important;height:14px!important}
  .vmv32-doctor__info .vmv32-btn{height:31px!important;min-height:31px!important;padding:0 12px!important;font-size:9px!important}
  .vmv32-doctor__quote{height:179px!important;min-height:179px!important;padding:12px 0 7px 16px!important;overflow:hidden!important}
  .vmv32-doctor__quote blockquote{min-height:69px!important;padding:10px 15px 9px 44px!important;font-size:9px!important;line-height:1.35!important;margin:0 0 3px!important}
  .vmv32-doctor__quote blockquote:before{font-size:48px!important;left:13px!important;top:0!important}
  .vmv32-doctor__quote>b{margin:-19px 13px 9px 0!important;font-size:8.5px!important}
  .vmv32-stats strong{font-size:18px!important}.vmv32-stats span{font-size:7.5px!important;margin-top:2px!important}

  /* 1005–1145 */
  .vmv32-trust-section{height:140px!important;padding:5px 0 2px!important;overflow:hidden!important}
  .vmv32-trust-layout{height:133px!important;grid-template-columns:minmax(0,58fr) minmax(0,42fr)!important;gap:18px!important}
  .vmv32-trust-section .vmv32-heading{height:24px!important;margin:0 0 4px!important}
  .vmv32-trust-section .vmv32-heading h2{font-size:19px!important}
  .vmv32-facility-grid{gap:8px!important}
  .vmv32-facility-grid img{height:68px!important;aspect-ratio:auto!important;width:100%!important}
  .vmv32-facility-grid figcaption{font-size:8px!important;line-height:1.1!important;margin-top:3px!important}
  .vmv32-safety-grid{gap:6px!important}
  .vmv32-safety-grid article{height:88px!important;min-height:88px!important;padding:6px 4px!important;overflow:hidden!important}
  .vmv32-safety-grid img{width:50px!important;height:34px!important;margin-bottom:3px!important}
  .vmv32-safety-icon{height:37px!important}
  .vmv32-safety-grid b{font-size:8px!important;line-height:1.15!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon){font-size:7px!important;line-height:1.13!important;margin-top:2px!important}

  /* 1145–1258 */
  #vmv32-testimonials{height:113px!important;padding:5px 0 3px!important;overflow:hidden!important}
  #vmv32-testimonials .vmv32-heading{height:23px!important;margin:0 0 4px!important}
  #vmv32-testimonials .vmv32-heading h2{font-size:19px!important}
  .vmv32-stories-slider{height:78px!important}
  .vmv32-stories-slider .vmv32-slider-track{gap:8px!important;height:78px!important}
  .vmv32-story-card{height:78px!important;min-height:78px!important;aspect-ratio:auto!important;flex:0 0 calc((100% - 32px)/5)!important;min-width:0!important;grid-template-columns:39% 61%!important}
  .vmv32-story-card__body{padding:5px 6px!important}
  .vmv32-story-card__body p{font-size:7.6px!important;line-height:1.19!important;-webkit-line-clamp:4!important}
  .vmv32-story-card__body b{font-size:9px!important;line-height:1!important}
  .vmv32-story-card__media span{width:23px!important;height:23px!important;left:6px!important;bottom:6px!important}
  .vmv32-story-note{display:none!important}

  /* 1258–1389 */
  #vmv32-knowledge{height:131px!important;padding:5px 0 0!important;overflow:hidden!important}
  #vmv32-knowledge .vmv32-heading{height:24px!important;margin:0 0 4px!important}
  #vmv32-knowledge .vmv32-heading h2{font-size:19px!important}
  .vmv32-knowledge-grid{height:98px!important;gap:8px!important;align-items:stretch!important}
  .vmv32-article-card,.vmv32-consult-card{height:98px!important;min-height:98px!important}
  .vmv32-article-card__image{height:49px!important;aspect-ratio:auto!important}
  .vmv32-article-card__body{height:47px!important;min-height:47px!important;padding:4px 7px 4px!important;overflow:hidden!important}
  .vmv32-article-card h3{font-size:9px!important;line-height:1.18!important;margin:0 0 2px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .vmv32-article-card time{font-size:8px!important}
  .vmv32-consult-card>div{padding:8px 42% 6px 10px!important}
  .vmv32-consult-card h3{font-size:15px!important;line-height:1.05!important;margin-bottom:2px!important}
  .vmv32-consult-card p{font-size:8px!important;line-height:1.18!important;margin-bottom:5px!important}
  .vmv32-consult-card .vmv32-btn{height:28px!important;min-height:28px!important;padding:0 10px!important;font-size:8.5px!important}

  /* 1389–1434 */
  .vmv32-bottom-cta{height:45px!important;margin-top:0!important;overflow:hidden!important}
  .vmv32-bottom-cta__inner{height:45px!important;min-height:45px!important;padding:0!important;gap:9px!important}
  .vmv32-bottom-cta__title{min-width:245px!important}
  .vmv32-bottom-cta__title strong{font-size:14px!important;line-height:1.05!important}
  .vmv32-bottom-cta__title span{font-size:8px!important;line-height:1.1!important}
  .vmv32-contact-chip{height:31px!important;padding:0 11px!important;font-size:9px!important}
  .vmv32-bottom-cta .vmv32-btn{height:31px!important;min-height:31px!important;padding:0 11px!important;font-size:9px!important}
  .vmv32-benefits{gap:10px!important}.vmv32-benefits span{font-size:8px!important;gap:3px!important}
  .vmv32-benefits span:nth-child(2){display:flex!important}

  /* 1434–1487 / 1487–1536 */
  .vmv32-footer__top{height:53px!important;min-height:53px!important;grid-template-columns:minmax(0,40fr) minmax(0,42fr) minmax(0,18fr)!important;gap:10px!important;overflow:hidden!important}
  .vmv32-footer__brand{gap:10px!important}.vmv32-footer__brand>img{width:122px!important}.vmv32-footer__brand>div{font-size:8px!important;line-height:1.35!important}
  .vmv32-footer nav{gap:14px!important}.vmv32-footer nav a{font-size:8px!important}
  .vmv32-socials{gap:6px!important}.vmv32-socials a{width:23px!important;height:23px!important;font-size:11px!important}
  .vmv32-footer__bottom{height:49px!important;overflow:hidden!important}
  .vmv32-footer__bottom .vmv32-shell{height:49px!important;font-size:8px!important}
}

/* Wide desktop: scale the approved composition instead of stretching images.
   The content may breathe horizontally, but each image keeps the same authored
   crop ratio as the 1024 master. */
@media (min-width:1201px){
  .vmv32-feature-card__image{aspect-ratio:231/105!important}
  .vmv32-result-card__image{aspect-ratio:185/93!important}
  .vmv32-facility-grid img{aspect-ratio:2/1!important}
  .vmv32-article-card__image{aspect-ratio:231/49!important}
  .vmv32-feature-card__image img,.vmv32-result-card__image img,.vmv32-facility-grid img,.vmv32-article-card__image img{width:100%!important;height:100%!important}
}

/* ===== V3.2.6 Consultation Card + Footer Fidelity Fix =====
 * Fixes two live issues reported after 3.2.5:
 * 1) the consultation artwork already contains copy/CTA, so visible HTML copy
 *    must not be layered on top of it;
 * 2) footer/header logo must be local to V3.2, not inherited from a stale
 *    WordPress logo URL or the legacy V3.1 plugin.
 */
.vmv32-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.vmv32-consult-card{padding:0!important;background:#eaf7ff!important;overflow:hidden!important}
.vmv32-consult-card__link{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;border:0!important;background:#eaf7ff!important;overflow:hidden!important}
.vmv32-consult-card__art{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover!important;object-position:center!important;display:block!important}
/* Neutralize all earlier descendant rules that targeted the old split-text card. */
.vmv32-consult-card>div{display:none!important}
.vmv32-consult-card>img:not(.vmv32-consult-card__art){display:none!important}

/* Use the packaged logo at its natural aspect ratio. Never let Flatsome or
 * footer grid rules stretch/collapse it. */
.vmv32-logo img,.vmv32-footer__brand>img{display:block!important;width:auto!important;height:auto!important;object-fit:contain!important;max-width:100%!important}
.vmv32-logo img{max-height:34px!important}
.vmv32-footer__brand>img{width:122px!important;max-width:122px!important;flex:0 0 122px!important}
.vmv32-footer__brand{min-width:0!important}
.vmv32-footer__brand>div{min-width:0!important}

@media (min-width:981px) and (max-width:1200px){
  /* Approved 1024 reference: consultation card is 259×~98, virtually the
   * same ratio as the supplied 259×106 artwork. Fit it as one coherent image. */
  .vmv32-consult-card{height:98px!important;min-height:98px!important}
  .vmv32-consult-card__art{object-fit:cover!important;object-position:center!important}
  .vmv32-footer__top{overflow:visible!important}
  .vmv32-footer__brand>img{width:122px!important;max-width:122px!important}
}

@media (min-width:1201px){
  .vmv32-consult-card{aspect-ratio:259/106!important;min-height:0!important;height:auto!important}
  .vmv32-consult-card__art{object-fit:cover!important}
  .vmv32-footer__top{max-width:1320px}
  .vmv32-footer__brand>img{width:135px!important;max-width:135px!important}
}

@media (max-width:980px){
  .vmv32-consult-card{aspect-ratio:259/106!important;min-height:0!important;height:auto!important}
  .vmv32-consult-card__link{position:relative!important;aspect-ratio:259/106!important}
  .vmv32-consult-card__art{object-fit:cover!important}
  .vmv32-footer__brand>img{width:135px!important;max-width:135px!important;margin-bottom:10px!important}
}

/* ===== V3.2.7 Media Library logo safety ===== */
.vmv32-logo-image{display:block!important;width:auto!important;height:auto!important;max-width:100%!important;object-fit:contain!important;object-position:left center!important}
.vmv32-logo .vmv32-logo-image{max-height:34px!important}
.vmv32-footer__brand>.vmv32-logo-image{width:auto!important;max-width:122px!important;max-height:40px!important;flex:0 0 auto!important}
@media (max-width:700px){
  .vmv32-logo .vmv32-logo-image{max-height:36px!important}
  .vmv32-footer__brand>.vmv32-logo-image{max-width:138px!important;max-height:42px!important}
}


/* ===== V3.2.24 System Font Performance =====
   No external webfont is required on the V3.2 production homepage.
   The browser uses its native UI font first (SF on Apple, Segoe UI on
   Windows, Roboto on Android where available), then safe local fallbacks.
   Only 400 and 700 are used to avoid synthetic multi-weight typography. */
.vmv32{
  --vm-font-sans:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  font-family:var(--vm-font-sans)!important;
  font-weight:400;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-kerning:normal;
}
.vmv32 p,.vmv32 a,.vmv32 li,.vmv32 span,.vmv32 small,.vmv32 strong,.vmv32 b,
.vmv32 label,.vmv32 button,.vmv32 input,.vmv32 select,.vmv32 textarea,
.vmv32 h1,.vmv32 h2,.vmv32 h3,.vmv32 h4,.vmv32 h5,.vmv32 h6,
.vmv32 .vmv32-nav a,.vmv32 .vmv32-btn,.vmv32 .vmv32-phone,
.vmv32 .vmv32-service-icon,.vmv32 .vmv32-feature-card,.vmv32 .vmv32-result-card,
.vmv32 .vmv32-story-card,.vmv32 .vmv32-article-card,.vmv32 .vmv32-footer{
  font-family:var(--vm-font-sans)!important;
}
.vmv32 h1,.vmv32 h2,.vmv32 h3,.vmv32 h4,.vmv32 h5,.vmv32 h6,
.vmv32 strong,.vmv32 b,.vmv32 button,.vmv32 .vmv32-btn,
.vmv32 .vmv32-nav a,.vmv32 .vmv32-heading>a,.vmv32 .vmv32-text-link{
  font-weight:700!important;
}
.vmv32 .vmv32-hero__doctor-label span,
.vmv32 .vmv32-hero__motto,
.vmv32 .vmv32-doctor__portrait span{
  font-family:var(--vm-font-sans)!important;
  font-style:italic!important;
  font-weight:700!important;
}
.vmv32 h1,.vmv32 h2,.vmv32 h3,.vmv32 h4,.vmv32 h5,.vmv32 h6,
.vmv32 button,.vmv32 .vmv32-btn,.vmv32 .vmv32-nav a{
  text-transform:none;
}

/* ===== V3.2.9 Editable Hero Manager =====
 * Hero geometry is locked; admins can replace imagery/copy without receiving
 * width/height/position controls that could break the page. Desktop follows
 * the approved ~3.41:1 composition ratio from the reference hero.
 */
.vmv32-hero.has-custom-bg .vmv32-hero__sky{
  background-image:linear-gradient(90deg,rgba(255,255,255,.72) 0%,rgba(236,248,255,.28) 42%,rgba(220,243,255,.15) 100%),var(--vmv32-hero-custom-bg)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
/* Soft white composition zones let the supplied original white-background
   portrait/building integrate into the blue hero without cropping the subject. */
.vmv32-hero__inner:before{
  content:"";
  position:absolute;
  z-index:2;
  left:35%;top:-8%;width:40%;height:118%;
  background:radial-gradient(ellipse at 50% 54%,rgba(255,255,255,.98) 0%,rgba(255,255,255,.93) 56%,rgba(255,255,255,0) 82%);
  pointer-events:none;
}
.vmv32-hero__inner:after{
  content:"";
  position:absolute;
  z-index:2;
  right:-4%;top:-10%;width:34%;height:122%;
  background:radial-gradient(ellipse at 60% 55%,rgba(255,255,255,.94) 0%,rgba(255,255,255,.70) 55%,rgba(255,255,255,0) 84%);
  pointer-events:none;
}
.vmv32-hero__doctor,.vmv32-hero__building{max-width:none!important}
.vmv32-hero__doctor.is-bundled-original{object-position:center bottom!important}
.vmv32-hero__building.is-bundled-original{mix-blend-mode:multiply}

@media (min-width:981px){
  .vmv32-hero{height:clamp(300px,29.3vw,560px)!important;min-height:300px!important;max-height:560px!important}
  .vmv32-hero__doctor{height:112%!important;width:auto!important;left:43%!important;bottom:-18%!important}
  .vmv32-hero__building{height:105%!important;width:auto!important;right:1.4%!important;bottom:-8%!important}
}
@media (min-width:1201px){
  .vmv32-hero__copy{top:9%;left:3.1%;width:42%}
  .vmv32-hero__doctor{height:112%!important;left:43%!important;bottom:-18%!important}
  .vmv32-hero__building{height:105%!important;right:1.4%!important;bottom:-8%!important}
}
@media (max-width:980px){
  .vmv32-hero__inner:before{left:24%;top:36%;width:48%;height:70%}
  .vmv32-hero__inner:after{right:-12%;top:42%;width:45%;height:64%}
  .vmv32-hero__doctor{object-position:center bottom!important}
  .vmv32-hero__building{object-position:center bottom!important}
}
@media (max-width:700px){
  .vmv32-hero__inner:before{left:15%;top:45%;width:58%;height:60%}
  .vmv32-hero__inner:after{right:-20%;top:50%;width:52%;height:54%}
}

/* ===== V3.2.10 Hero Collision-Safe Pixel Match =====
 * The editable Hero keeps text and portrait in separate desktop zones.
 * This specifically fixes the doctor name/title sitting over the face and
 * prevents the main headline from entering the portrait area.
 */
.vmv32-hero__title-line{display:block!important;white-space:nowrap!important}
.vmv32-hero__title-line--2 em{display:inline!important;white-space:inherit!important}

@media (min-width:981px){
  .vmv32-hero__copy{
    left:3.1%!important;
    top:9%!important;
    width:35.8%!important;
    max-width:35.8%!important;
  }
  .vmv32-hero .vmv32-hero__display-title{
    font-size:clamp(37px,3.55vw,58px)!important;
    line-height:.96!important;
    letter-spacing:-.04em!important;
  }
  .vmv32-hero__lead{max-width:98%!important}
  .vmv32-trust-mini{max-width:98%!important}

  /* Original portrait is a tall 1691×2048 source. Keep it smaller and farther
     left, matching the reference silhouette while leaving a dedicated label lane. */
  .vmv32-hero__doctor{
    left:37%!important;
    height:96%!important;
    bottom:0!important;
    width:auto!important;
    max-width:none!important;
    z-index:4!important;
  }
  .vmv32-hero__doctor-label{
    left:56.4%!important;
    top:30%!important;
    z-index:6!important;
  }
  .vmv32-hero__building{
    right:.5%!important;
    height:110%!important;
    bottom:-9%!important;
    width:auto!important;
    max-width:none!important;
  }
  .vmv32-hero__motto{right:1.6%!important;top:15%!important}
}

@media (min-width:981px) and (max-width:1200px){
  .vmv32-hero__copy{width:36.6%!important;max-width:36.6%!important}
  .vmv32-hero .vmv32-hero__display-title{font-size:38px!important}
  .vmv32-hero__lead{font-size:11.5px!important;line-height:1.2!important}
  .vmv32-hero__doctor{left:37.2%!important;height:97%!important;bottom:0!important}
  .vmv32-hero__doctor-label{left:56.5%!important;top:30%!important}
  .vmv32-hero__building{height:109%!important;right:.4%!important}
}

@media (max-width:980px){
  .vmv32-hero__title-line{white-space:normal!important}
}

/* ===== V3.2.13 Trust Section Balance Fix =====
 * Enlarges the visual area inside the four "An toàn & minh bạch" cards without
 * changing the desktop grid. The image/icon zone is isolated from text so a
 * Media Library replacement cannot stretch the card or break responsive layout.
 */
.vmv32-safety-grid article{
  justify-content:flex-start;
}
.vmv32-safety-visual{
  width:100%;
  height:52px;
  flex:0 0 52px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 0 5px;
  overflow:hidden;
}
.vmv32-safety-visual>img{
  display:block;
  width:48px!important;
  height:48px!important;
  max-width:76%!important;
  max-height:48px!important;
  object-fit:contain!important;
  margin:0!important;
}
.vmv32-safety-visual--license>img{
  width:78px!important;
  height:50px!important;
  max-width:88%!important;
  max-height:50px!important;
  object-fit:contain!important;
}
.vmv32-safety-icon{
  width:52px!important;
  height:52px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
}
.vmv32-safety-icon svg{
  width:38px!important;
  height:38px!important;
}
.vmv32-safety-grid b{
  font-size:9px;
  line-height:1.16;
}
.vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){
  font-size:7.5px;
  line-height:1.2;
}

/* The 1024px pixel-match breakpoint previously shrank the icons too far. Keep
   the approved card height but devote more of it to the visual, matching the
   reference balance. */
@media (min-width:981px) and (max-width:1200px){
  .vmv32-safety-grid article{
    height:88px!important;
    min-height:88px!important;
    padding:4px 4px 5px!important;
  }
  .vmv32-safety-visual{
    height:44px!important;
    flex-basis:44px!important;
    margin-bottom:2px!important;
  }
  .vmv32-safety-visual>img{
    width:42px!important;
    height:42px!important;
    max-height:42px!important;
  }
  .vmv32-safety-visual--license>img{
    width:67px!important;
    height:42px!important;
    max-width:92%!important;
    max-height:42px!important;
  }
  .vmv32-safety-icon{
    width:44px!important;
    height:44px!important;
  }
  .vmv32-safety-icon svg{
    width:34px!important;
    height:34px!important;
  }
  .vmv32-safety-grid b{font-size:8.2px!important;line-height:1.12!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:6.8px!important;line-height:1.08!important;margin-top:1px!important}
}

@media (max-width:980px){
  .vmv32-safety-grid article{min-height:112px;padding:9px 7px}
  .vmv32-safety-visual{height:58px;flex-basis:58px;margin-bottom:5px}
  .vmv32-safety-visual>img{width:52px!important;height:52px!important;max-height:52px!important}
  .vmv32-safety-visual--license>img{width:86px!important;height:54px!important;max-height:54px!important}
  .vmv32-safety-icon{width:58px!important;height:58px!important}
  .vmv32-safety-icon svg{width:40px!important;height:40px!important}
  .vmv32-safety-grid b{font-size:10px}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:8px}
}


/* ===== V3.2.14 Trust Frame Fill Fix =====
 * The live desktop cards can become much wider than the 1024px reference while
 * the icon/image stayed fixed in pixels. This made the visual look shrunken.
 * Keep the trust column close to the reference width and let the visual occupy
 * roughly half of each card. Media Library images remain contain-fit so they
 * never stretch or distort.
 */
@media (min-width:1201px){
  .vmv32-trust-layout{
    grid-template-columns:minmax(0,1fr) minmax(470px,500px)!important;
    align-items:start!important;
  }
  .vmv32-safety{padding-left:16px!important}
  .vmv32-safety-grid{gap:7px!important}
  .vmv32-safety-grid article{
    min-height:112px!important;
    height:112px!important;
    padding:6px 5px 7px!important;
    justify-content:flex-start!important;
  }
  .vmv32-safety-visual{
    height:62px!important;
    flex:0 0 62px!important;
    margin:0 0 2px!important;
    overflow:visible!important;
  }
  .vmv32-safety-visual>img{
    width:60px!important;
    height:60px!important;
    max-width:72%!important;
    max-height:60px!important;
    object-fit:contain!important;
    object-position:center!important;
  }
  .vmv32-safety-visual--license>img{
    width:96px!important;
    height:58px!important;
    max-width:90%!important;
    max-height:58px!important;
  }
  .vmv32-safety-icon{
    width:62px!important;
    height:62px!important;
  }
  .vmv32-safety-icon svg{
    width:46px!important;
    height:46px!important;
  }
  .vmv32-safety-grid b{font-size:9px!important;line-height:1.12!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:7px!important;line-height:1.08!important;margin-top:1px!important}
}

/* 1024 reference range: increase image-to-card ratio without growing the whole
   section enough to disturb the approved vertical rhythm. */
@media (min-width:981px) and (max-width:1200px){
  .vmv32-trust-layout{
    grid-template-columns:minmax(0,1fr) 430px!important;
    gap:18px!important;
  }
  .vmv32-safety{padding-left:14px!important}
  .vmv32-safety-grid{gap:6px!important}
  .vmv32-safety-grid article{
    height:94px!important;
    min-height:94px!important;
    padding:4px 4px 5px!important;
  }
  .vmv32-safety-visual{
    height:50px!important;
    flex-basis:50px!important;
    margin-bottom:1px!important;
    overflow:visible!important;
  }
  .vmv32-safety-visual>img{
    width:50px!important;
    height:50px!important;
    max-width:72%!important;
    max-height:50px!important;
    object-position:center!important;
  }
  .vmv32-safety-visual--license>img{
    width:78px!important;
    height:48px!important;
    max-width:90%!important;
    max-height:48px!important;
  }
  .vmv32-safety-icon{width:50px!important;height:50px!important}
  .vmv32-safety-icon svg{width:38px!important;height:38px!important}
  .vmv32-safety-grid b{font-size:8.2px!important;line-height:1.1!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:6.5px!important;line-height:1.05!important;margin-top:1px!important}
}

/* Tablet/mobile cards have more room vertically; use it for the image rather
   than leaving a small icon in the middle of a large frame. */
@media (max-width:980px){
  .vmv32-safety-visual{height:66px!important;flex-basis:66px!important;margin-bottom:3px!important;overflow:visible!important}
  .vmv32-safety-visual>img{width:60px!important;height:60px!important;max-width:74%!important;max-height:60px!important}
  .vmv32-safety-visual--license>img{width:96px!important;height:60px!important;max-width:90%!important;max-height:60px!important}
  .vmv32-safety-icon{width:66px!important;height:66px!important}
  .vmv32-safety-icon svg{width:46px!important;height:46px!important}
}

/* ===== V3.2.15 Knowledge Image Full-Frame Fix =====
 * Live issue: article thumbnails were forced into the approved 231:49 compact
 * reference frame. Real WordPress Featured Images are usually much taller,
 * so object-fit:cover cropped them into a thin strip. Restore a practical 16:9
 * media frame, let the Knowledge section grow naturally, and keep the image
 * fully filling that frame without distortion.
 */
@media (min-width:1201px){
  #vmv32-knowledge{
    height:auto!important;
    min-height:0!important;
    padding:10px 0 12px!important;
    overflow:visible!important;
  }
  #vmv32-knowledge .vmv32-heading{
    height:auto!important;
    margin:0 0 8px!important;
  }
  .vmv32-knowledge-grid{
    height:auto!important;
    gap:10px!important;
    align-items:stretch!important;
  }
  .vmv32-article-card{
    height:auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .vmv32-article-card__image{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    background:#edf7fc!important;
    overflow:hidden!important;
    flex:0 0 auto!important;
  }
  .vmv32-article-card__image img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .vmv32-article-card__body{
    height:auto!important;
    min-height:62px!important;
    padding:8px 10px 10px!important;
    overflow:hidden!important;
    flex:1 1 auto!important;
  }
  .vmv32-article-card h3{
    font-size:11px!important;
    line-height:1.28!important;
    margin:0 0 7px!important;
    -webkit-line-clamp:2!important;
  }
  .vmv32-article-card time{font-size:9px!important}

  /* The consultation artwork contains its own text + CTA. Keep all of it
     visible instead of cropping it to the taller article-card row. */
  .vmv32-consult-card{
    height:auto!important;
    min-height:100%!important;
    aspect-ratio:auto!important;
    align-self:stretch!important;
    background:#eaf7ff!important;
  }
  .vmv32-consult-card__link{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }
  .vmv32-consult-card__art{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    object-position:center!important;
    background:#eaf7ff!important;
  }
}

@media (min-width:981px) and (max-width:1200px){
  #vmv32-knowledge{
    height:auto!important;
    min-height:0!important;
    padding:7px 0 9px!important;
    overflow:visible!important;
  }
  #vmv32-knowledge .vmv32-heading{height:auto!important;margin:0 0 6px!important}
  .vmv32-knowledge-grid{height:auto!important;gap:8px!important;align-items:stretch!important}
  .vmv32-article-card{
    height:auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .vmv32-article-card__image{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
    flex:0 0 auto!important;
  }
  .vmv32-article-card__image img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .vmv32-article-card__body{
    height:auto!important;
    min-height:52px!important;
    padding:6px 8px 7px!important;
  }
  .vmv32-article-card h3{font-size:9.5px!important;line-height:1.22!important;margin:0 0 4px!important}
  .vmv32-article-card time{font-size:8px!important}
  .vmv32-consult-card{height:auto!important;min-height:100%!important;aspect-ratio:auto!important;align-self:stretch!important}
  .vmv32-consult-card__art{object-fit:contain!important;background:#eaf7ff!important}
}

@media (max-width:980px){
  .vmv32-article-card__image{
    height:auto!important;
    min-height:0!important;
    aspect-ratio:16/9!important;
  }
  .vmv32-article-card__image img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
  }
  .vmv32-article-card__body{height:auto!important;min-height:58px!important}
}

/* =========================================================
   V3.2.16 – Hero Exact-Match Artwork Mode
   Desktop production can use one locked 1024:300 artwork so
   the doctor/building/text cannot collide. Mobile keeps the
   layered responsive Hero for readability and real CTA text.
   ========================================================= */
.vmv32-hero__artwork-wrap{display:none;position:relative;width:100%;overflow:hidden;background:#dff3ff}
.vmv32-hero__artwork{display:block;width:100%;height:auto;max-width:none!important;aspect-ratio:1024/300;object-fit:cover;object-position:center center}
.vmv32-hero__hotspot{position:absolute;display:block;z-index:5;border-radius:4px;background:transparent;outline-offset:2px}
.vmv32-hero__hotspot--services{left:6.0%;top:83.0%;width:15.6%;height:11.5%}
.vmv32-hero__hotspot--consult{left:22.8%;top:83.0%;width:15.8%;height:11.5%}
.vmv32-hero__hotspot:focus-visible{outline:3px solid #075fc2;background:rgba(255,255,255,.12)}

@media (min-width:981px){
  .vmv32-hero--artwork{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    background:#dff3ff!important;
  }
  .vmv32-hero--artwork:after{display:none!important}
  .vmv32-hero--artwork>.vmv32-hero__artwork-wrap{display:block!important}
  .vmv32-hero--artwork>.vmv32-hero__sky,
  .vmv32-hero--artwork>.vmv32-hero__inner{display:none!important}
}

@media (max-width:980px){
  .vmv32-hero--artwork>.vmv32-hero__artwork-wrap{display:none!important}
  .vmv32-hero--artwork>.vmv32-hero__sky{display:block!important}
  .vmv32-hero--artwork>.vmv32-hero__inner{display:block!important}
  .vmv32-hero--artwork{height:auto!important;min-height:550px!important;max-height:none!important}
}
@media (max-width:700px){
  .vmv32-hero--artwork{min-height:610px!important}
}


/* =========================================================
   V3.2.17 – Doctor Profile Pixel-Match Fix
   Uses the bundled transparent doctor cutout by default and
   restores the approved wide three-column composition.
   ========================================================= */
.vmv32-doctor{
  background:linear-gradient(90deg,#e8f6ff 0%,#f5fbff 51%,#e8f6ff 100%)!important;
}
.vmv32-doctor__portrait img{
  object-fit:contain!important;
  object-position:center bottom!important;
  max-width:none!important;
}

@media (min-width:1201px){
  .vmv32-doctor{
    margin-top:6px!important;
    min-height:0!important;
    height:auto!important;
    overflow:hidden!important;
  }
  .vmv32-doctor__grid{
    height:clamp(232px,17.5vw,250px)!important;
    min-height:clamp(232px,17.5vw,250px)!important;
    grid-template-columns:29% 35% 36%!important;
    align-items:stretch!important;
  }
  .vmv32-doctor__portrait{
    height:100%!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .vmv32-doctor__portrait img{
    height:151%!important;
    width:auto!important;
    left:5.5%!important;
    right:auto!important;
    bottom:-50%!important;
    transform:none!important;
  }
  .vmv32-doctor__portrait span{
    left:1.5%!important;
    bottom:22px!important;
    font-size:clamp(17px,1.25vw,21px)!important;
    line-height:1!important;
    transform:rotate(-7deg)!important;
  }
  .vmv32-doctor__info{
    height:100%!important;
    padding:13px 18px 10px 2px!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .vmv32-doctor__info .vmv32-kicker{
    margin:0 0 2px!important;
    font-size:clamp(9px,.72vw,11px)!important;
    letter-spacing:.12em!important;
  }
  .vmv32-doctor__info h2{
    margin:0 0 2px!important;
    font-size:clamp(21px,1.55vw,25px)!important;
    line-height:1.04!important;
    white-space:nowrap!important;
  }
  .vmv32-doctor__info h3{
    margin:0 0 7px!important;
    font-size:clamp(10px,.76vw,12px)!important;
    line-height:1.15!important;
  }
  .vmv32-doctor__info ul{
    gap:3px!important;
    margin:0 0 8px!important;
  }
  .vmv32-doctor__info li{
    font-size:clamp(9px,.72vw,10.5px)!important;
    line-height:1.22!important;
  }
  .vmv32-doctor__info li svg{
    width:15px!important;
    height:15px!important;
  }
  .vmv32-doctor__info .vmv32-btn{
    height:34px!important;
    min-height:34px!important;
    padding:0 14px!important;
    font-size:clamp(9px,.7vw,10px)!important;
  }
  .vmv32-doctor__quote{
    height:100%!important;
    min-height:0!important;
    padding:18px 0 12px 18px!important;
    justify-content:center!important;
    overflow:visible!important;
  }
  .vmv32-doctor__quote blockquote{
    min-height:82px!important;
    margin:0 0 3px!important;
    padding:14px 20px 12px 52px!important;
    font-size:clamp(9px,.72vw,10.5px)!important;
    line-height:1.42!important;
    border-radius:7px!important;
  }
  .vmv32-doctor__quote blockquote:before{
    left:15px!important;
    top:1px!important;
    font-size:55px!important;
  }
  .vmv32-doctor__quote>b{
    margin:-24px 15px 16px 0!important;
    font-size:9px!important;
  }
  .vmv32-stats strong{font-size:20px!important}
  .vmv32-stats span{font-size:8px!important;margin-top:4px!important}
}

@media (min-width:981px) and (max-width:1200px){
  .vmv32-doctor__portrait img{
    height:128%!important;
    left:7%!important;
    bottom:-29%!important;
    width:auto!important;
    transform:none!important;
  }
  .vmv32-doctor__portrait span{left:0!important}
}


/* =========================================================
   V3.2.18 – Original Image Quality Fix
   Preserve browser-native high quality rendering for critical
   doctor/brand imagery. Do not apply low-resolution raster hints.
   ========================================================= */
.vmv32-logo-image,
.vmv32-hero__doctor,
.vmv32-hero__building,
.vmv32-doctor__portrait img{
  image-rendering:auto!important;
  -ms-interpolation-mode:bicubic;
}
.vmv32-doctor__portrait img[data-vmv32-quality="original"],
.vmv32-logo-image[data-vmv32-quality="original"]{
  filter:none!important;
}

/* =========================================================
   V3.2.19 – Smart Image Fit & Crop Control
   The frame geometry remains locked. Editors only control how
   the image sits inside the frame through CSS variables.
   ========================================================= */
.vmv32 img.vmv32-smart-image{
  object-fit:var(--vmv32-fit,cover)!important;
  object-position:var(--vmv32-pos,center center)!important;
}
.vmv32 .vmv32-feature-card__image img.vmv32-smart-image,
.vmv32 .vmv32-result-card__image img.vmv32-smart-image,
.vmv32 .vmv32-facility-grid img.vmv32-smart-image,
.vmv32 .vmv32-story-card__media img.vmv32-smart-image,
.vmv32 .vmv32-article-card__image img.vmv32-smart-image,
.vmv32 .vmv32-consult-card__art.vmv32-smart-image,
.vmv32 .vmv32-safety-visual>img.vmv32-smart-image,
.vmv32 .vmv32-service-icon__visual>img.vmv32-smart-image{
  object-fit:var(--vmv32-fit,cover)!important;
  object-position:var(--vmv32-pos,center center)!important;
}

/* Contain mode intentionally shows the whole image. A neutral background keeps
   any letterboxing visually integrated with the existing medical UI. */
.vmv32 img.vmv32-smart-image[style*="--vmv32-fit:contain"]{
  background:#f7fbfe;
}

/* Picture wrappers used by performance-aware Hero delivery must not alter the
   existing positioning/ratio rules. */
.vmv32-hero__artwork-wrap>picture{display:block;width:100%;height:auto}
.vmv32-hero__artwork-wrap>picture>.vmv32-hero__artwork{display:block;width:100%;height:auto}


/* =========================================================
   V3.2.20 – Cross-browser Visual Scale & Production Refactor
   Final cascade layer: larger premium imagery, stable desktop
   breakpoints, less "dashboard" density and safer browser rendering.
   The editor can still replace/crop images through V3.2 managers.
   ========================================================= */
.vmv32{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}
.vmv32 img{image-rendering:auto}
.vmv32-slider-track,
.vmv32-servicebar__icons,
.vmv32-featured-grid,
.vmv32-knowledge-grid{-webkit-overflow-scrolling:touch}
.vmv32-feature-card,
.vmv32-result-card,
.vmv32-story-card,
.vmv32-article-card,
.vmv32-consult-card{min-width:0}
.vmv32-hero__building{mix-blend-mode:normal!important}

/* Keep only the V3.2 production chrome visible even if a cached theme wrapper survives. */
body.vmv32-active:not(.vmv32-builder-preview) #header,
body.vmv32-active:not(.vmv32-builder-preview) #footer,
body.vmv32-active:not(.vmv32-builder-preview) .header-wrapper,
body.vmv32-active:not(.vmv32-builder-preview) .footer-wrapper,
body.vmv32-active:not(.vmv32-builder-preview) .absolute-footer,
body.vmv32-active:not(.vmv32-builder-preview) .back-to-top,
body.vmv32-active:not(.vmv32-builder-preview) #top-link{display:none!important}

@media (min-width:981px){
  /* A wider but bounded canvas makes photography feel premium on 1366–1920px displays. */
  .vmv32-shell{width:min(1480px,calc(100% - 64px))!important}
  .vmv32-section{padding:16px 0 10px!important}
  .vmv32-heading{margin-bottom:10px!important}
  .vmv32-heading h2{font-size:clamp(20px,1.35vw,26px)!important;line-height:1.12!important}
  .vmv32-heading>a{font-size:11px!important}

  /* Header: restore comfortable visual scale without becoming bulky. */
  .vmv32-header,.vmv32-header__inner{height:52px!important}
  .vmv32-header-search,.vmv32-mobile-nav{top:52px!important}
  .vmv32-logo{width:156px!important}
  .vmv32-logo img,.vmv32-logo-image--header{max-height:42px!important;width:auto!important;height:auto!important}
  .vmv32-nav a{padding:0 10px!important;font-size:11px!important}
  .vmv32-phone{height:36px!important}
  .vmv32-phone b{font-size:11px!important}.vmv32-phone small{font-size:8.5px!important}
  .vmv32-header .vmv32-btn{height:36px!important;min-height:36px!important;font-size:10px!important}

  /* Service navigator: larger icons/readability, still one compact row. */
  .vmv32-servicebar__inner{min-height:98px!important;gap:10px!important}
  .vmv32-servicebar__question{width:145px!important;font-size:12px!important}
  .vmv32-servicebar__icons{gap:5px!important}
  .vmv32-service-icon{width:70px!important;flex-basis:70px!important;font-size:9px!important}
  .vmv32-service-icon__visual{width:58px!important;height:58px!important}
  .vmv32-service-icon__visual img{width:66px!important;height:66px!important}
  .vmv32-service-icon__grid{width:52px!important;height:52px!important}
  .vmv32-service-search{width:220px!important;height:40px!important}
  .vmv32-service-search input{height:38px!important;font-size:10.5px!important}

  /* Featured services: photography gets substantially more visual area. */
  #vmv32-featured{padding-top:12px!important;padding-bottom:8px!important}
  .vmv32-featured-grid{gap:12px!important}
  .vmv32-feature-card__image{display:block!important;height:auto!important;aspect-ratio:16/9!important}
  .vmv32-feature-card__image img{width:100%!important;height:100%!important}
  .vmv32-feature-card__body{padding:9px 11px 10px!important}
  .vmv32-feature-card h3{font-size:15px!important;line-height:1.15!important;margin-bottom:3px!important}
  .vmv32-feature-card p{font-size:11px!important;line-height:1.35!important;min-height:30px!important;margin-bottom:5px!important}
  .vmv32-text-link{font-size:10.5px!important}

  /* Before/After: use four cards on ordinary desktops for stronger impact. */
  #vmv32-results{padding-top:10px!important;padding-bottom:8px!important}
  .vmv32-result-card{flex-basis:calc((100% - 36px)/4)!important;min-width:0!important}
  .vmv32-result-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-result-card__image img{width:100%!important;height:100%!important}
  .vmv32-result-card__body{padding:7px 9px 8px!important}
  .vmv32-result-card__body strong{font-size:12.5px!important;line-height:1.2!important}
  .vmv32-result-card__body span{font-size:10px!important;line-height:1.25!important;margin-top:2px!important}

  /* Doctor becomes a focal section instead of another compact information strip. */
  .vmv32-doctor{margin-top:10px!important}
  .vmv32-doctor__grid{height:clamp(250px,18vw,300px)!important;min-height:250px!important;grid-template-columns:30% 35% 35%!important}
  .vmv32-doctor__portrait{height:100%!important;min-height:0!important}
  .vmv32-doctor__portrait img{height:142%!important;left:7%!important;bottom:-43%!important;width:auto!important;transform:none!important}
  .vmv32-doctor__portrait span{bottom:24px!important;font-size:clamp(18px,1.2vw,22px)!important}
  .vmv32-doctor__info{padding:18px 20px 14px 4px!important}
  .vmv32-doctor__info h2{font-size:clamp(23px,1.55vw,28px)!important}
  .vmv32-doctor__info h3{font-size:12px!important;margin-bottom:9px!important}
  .vmv32-doctor__info ul{gap:5px!important;margin-bottom:10px!important}
  .vmv32-doctor__info li{font-size:11px!important;line-height:1.3!important}
  .vmv32-doctor__info .vmv32-btn{height:36px!important;min-height:36px!important;font-size:10px!important}
  .vmv32-doctor__quote{padding:20px 0 14px 22px!important}
  .vmv32-doctor__quote blockquote{min-height:94px!important;padding:16px 22px 14px 55px!important;font-size:10.5px!important;line-height:1.45!important}
  .vmv32-stats strong{font-size:22px!important}.vmv32-stats span{font-size:9px!important}

  /* Facilities: no more thumbnail feeling. */
  .vmv32-trust-section{padding-top:13px!important;padding-bottom:10px!important}
  .vmv32-trust-layout{grid-template-columns:minmax(0,58fr) minmax(0,42fr)!important;gap:22px!important}
  .vmv32-facility-grid{gap:10px!important}
  .vmv32-facility-grid img{height:auto!important;aspect-ratio:4/3!important;width:100%!important}
  .vmv32-facility-grid figcaption{font-size:9.5px!important;line-height:1.25!important;margin-top:5px!important}
  .vmv32-safety{padding-left:20px!important}
  .vmv32-safety-grid{gap:8px!important}
  .vmv32-safety-grid article{min-height:132px!important;padding:12px 7px!important;justify-content:center!important}
  .vmv32-safety-visual{min-height:68px!important}
  .vmv32-safety-visual>img{max-height:64px!important;width:auto!important;height:auto!important}
  .vmv32-safety-visual--license>img{max-height:68px!important;max-width:94%!important}
  .vmv32-safety-icon{height:62px!important}
  .vmv32-safety-icon svg{width:42px!important;height:42px!important}
  .vmv32-safety-grid b{font-size:9.5px!important}.vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:8px!important}

  /* Social proof: four cards on standard desktop, five only on very wide screens. */
  #vmv32-testimonials{padding-top:12px!important;padding-bottom:10px!important}
  .vmv32-story-card{flex-basis:calc((100% - 24px)/4)!important;height:152px!important;min-width:0!important;grid-template-columns:43% 57%!important}
  .vmv32-story-card__body{padding:10px!important}
  .vmv32-story-card__body p{font-size:10px!important;line-height:1.38!important;-webkit-line-clamp:5!important}
  .vmv32-story-card__body b{font-size:11.5px!important}

  /* Knowledge stays image-led; cards use comfortable text sizes. */
  #vmv32-knowledge{padding:12px 0 12px!important}
  .vmv32-knowledge-grid{gap:12px!important;align-items:stretch!important}
  .vmv32-article-card,.vmv32-consult-card{height:auto!important;min-height:0!important}
  .vmv32-article-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-article-card__body{padding:9px 10px 11px!important;min-height:66px!important}
  .vmv32-article-card h3{font-size:11.5px!important;line-height:1.3!important;margin-bottom:7px!important}
  .vmv32-article-card time{font-size:9px!important}
  .vmv32-consult-card{align-self:stretch!important;min-height:100%!important}
  .vmv32-consult-card__art{object-fit:contain!important;background:#eaf7ff!important}

  /* Bottom CTA + footer: readable and balanced, without becoming oversized. */
  .vmv32-bottom-cta__inner{min-height:56px!important;padding:6px 0!important}
  .vmv32-bottom-cta__title strong{font-size:15px!important}.vmv32-bottom-cta__title span{font-size:9.5px!important}
  .vmv32-contact-chip,.vmv32-bottom-cta .vmv32-btn{height:38px!important;min-height:38px!important}
  .vmv32-footer__top{min-height:86px!important;grid-template-columns:minmax(0,40fr) minmax(0,42fr) minmax(0,18fr)!important}
  .vmv32-footer__brand>img{width:145px!important;height:auto!important}
  .vmv32-footer__brand>div,.vmv32-footer nav a{font-size:9.5px!important}
  .vmv32-footer__bottom .vmv32-shell{height:50px!important}
}

/* 1024–1199: keep the enlarged feel without crowding navigation. */
@media (min-width:981px) and (max-width:1199px){
  .vmv32-shell{width:calc(100% - 64px)!important}
  .vmv32-nav a{padding:0 5px!important;font-size:9.5px!important}
  .vmv32-header__actions{gap:4px!important}
  .vmv32-header__actions .vmv32-lang{display:none!important}
  .vmv32-servicebar__question{width:118px!important;font-size:11px!important}
  .vmv32-service-icon{width:58px!important;flex-basis:58px!important;font-size:8px!important}
  .vmv32-service-icon__visual{width:48px!important;height:48px!important}
  .vmv32-service-icon__visual img{width:58px!important;height:58px!important}
  .vmv32-service-search{width:176px!important}
  .vmv32-doctor__grid{height:240px!important;min-height:240px!important}
  .vmv32-doctor__portrait img{height:132%!important;bottom:-33%!important}
  .vmv32-doctor__info h2{font-size:22px!important}
  .vmv32-doctor__info li{font-size:10px!important}
  .vmv32-facility-grid figcaption{font-size:8.5px!important}
  .vmv32-safety-grid article{min-height:116px!important}
  .vmv32-story-card{height:140px!important}
}

/* 1200–1599: four large results/testimonials are more persuasive than five tiny cards. */
@media (min-width:1200px) and (max-width:1599px){
  .vmv32-shell{width:min(1380px,calc(100% - 64px))!important}
  .vmv32-result-card{flex-basis:calc((100% - 36px)/4)!important}
  .vmv32-story-card{flex-basis:calc((100% - 24px)/4)!important}
}

/* Very wide desktop can comfortably show five cards without shrinking photography. */
@media (min-width:1600px){
  .vmv32-shell{width:min(1480px,calc(100% - 80px))!important}
  .vmv32-result-card{flex-basis:calc((100% - 48px)/5)!important}
  .vmv32-story-card{flex-basis:calc((100% - 32px)/5)!important}
}

/* Tablet: predictable two/three-column compositions across Safari/Firefox/Chromium. */
@media (min-width:701px) and (max-width:980px){
  .vmv32-shell{width:calc(100% - 40px)!important}
  .vmv32-feature-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-result-card{flex-basis:calc((100% - 10px)/2)!important}
  .vmv32-result-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-story-card{flex-basis:calc((100% - 8px)/2)!important;height:150px!important}
  .vmv32-facility-grid img{height:auto!important;aspect-ratio:4/3!important}
  .vmv32-article-card__image{height:auto!important;aspect-ratio:16/9!important}
}

/* Mobile: one strong visual at a time; avoid tiny multi-card layouts. */
@media (max-width:700px){
  .vmv32-feature-card{flex-basis:88%!important}
  .vmv32-feature-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-result-card{flex-basis:88%!important;min-width:0!important}
  .vmv32-result-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-story-card{flex-basis:92%!important;height:150px!important}
  .vmv32-facility-grid img{height:auto!important;aspect-ratio:4/3!important}
  .vmv32-article-card,.vmv32-consult-card{flex-basis:88%!important}
  .vmv32-article-card__image{height:auto!important;aspect-ratio:16/9!important}
  .vmv32-heading h2{font-size:19px!important}
}

/* Reduced motion is important for accessibility and prevents hover/scroll animation
   differences across browsers and low-power devices. */
@media (prefers-reduced-motion:reduce){
  .vmv32 *, .vmv32 *::before, .vmv32 *::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}


/* =========================================================
   V3.2.21 – Visual Expansion for Key Sections
   Larger photography and trust visuals without changing the
   Media Library managers or responsive image delivery logic.
   ========================================================= */
@media (min-width:981px){
  /* Give the four image-led sections more breathing room. */
  #vmv32-featured,
  #vmv32-results,
  .vmv32-trust-section{
    padding-top:20px!important;
    padding-bottom:16px!important;
  }
  #vmv32-featured .vmv32-heading,
  #vmv32-results .vmv32-heading,
  .vmv32-trust-section .vmv32-heading{
    margin-bottom:14px!important;
  }

  /* Featured services: image first, text second. 3:2 gives noticeably
     more visual area than 16:9 while remaining safe for real photos. */
  .vmv32-featured-grid{gap:16px!important}
  .vmv32-feature-card{
    border-radius:10px!important;
    box-shadow:0 8px 24px rgba(7,78,145,.07)!important;
  }
  .vmv32-feature-card__image{
    aspect-ratio:3/2!important;
    height:auto!important;
    min-height:0!important;
  }
  .vmv32-feature-card__body{padding:11px 13px 12px!important}
  .vmv32-feature-card h3{font-size:16px!important}
  .vmv32-feature-card p{font-size:11.5px!important;min-height:31px!important}

  /* Results are a principal conversion section: keep fewer, larger cards
     on ordinary desktop sizes instead of squeezing five thumbnails. */
  .vmv32-results-slider .vmv32-slider-track{gap:16px!important}
  .vmv32-result-card{
    flex-basis:calc((100% - 48px)/4)!important;
    border-radius:9px!important;
    box-shadow:0 8px 22px rgba(7,78,145,.07)!important;
  }
  .vmv32-result-card__image{
    aspect-ratio:3/2!important;
    height:auto!important;
  }
  .vmv32-result-card__body{padding:10px 12px 11px!important}
  .vmv32-result-card__body strong{font-size:13px!important}
  .vmv32-result-card__body span{font-size:10.5px!important}

  /* Facilities: retain the four-image row from the reference, but make
     each frame taller and visually stronger. */
  .vmv32-trust-layout{
    grid-template-columns:minmax(0,60fr) minmax(0,40fr)!important;
    gap:26px!important;
    align-items:start!important;
  }
  .vmv32-facility-grid{gap:12px!important}
  .vmv32-facility-grid figure{min-width:0!important}
  .vmv32-facility-grid img{
    aspect-ratio:5/4!important;
    height:auto!important;
    border-radius:9px!important;
    box-shadow:0 7px 20px rgba(7,78,145,.06)!important;
  }
  .vmv32-facility-grid figcaption{
    font-size:10px!important;
    line-height:1.3!important;
    margin-top:7px!important;
  }

  /* Safety & transparency: enlarge visual field and type without changing
     the four-card desktop reference composition. */
  .vmv32-safety{padding-left:22px!important}
  .vmv32-safety-grid{gap:10px!important}
  .vmv32-safety-grid article{
    min-height:158px!important;
    padding:14px 8px 12px!important;
    border-radius:9px!important;
    justify-content:center!important;
    box-shadow:0 7px 20px rgba(7,78,145,.05)!important;
  }
  .vmv32-safety-visual{
    min-height:84px!important;
    height:84px!important;
    flex-basis:84px!important;
    margin-bottom:6px!important;
  }
  .vmv32-safety-visual>img{
    width:auto!important;
    height:auto!important;
    max-width:82%!important;
    max-height:80px!important;
  }
  .vmv32-safety-visual--license>img{
    max-width:98%!important;
    max-height:84px!important;
  }
  .vmv32-safety-icon{height:78px!important;width:78px!important}
  .vmv32-safety-icon svg{width:50px!important;height:50px!important}
  .vmv32-safety-grid b{font-size:10px!important;line-height:1.18!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){
    font-size:8.5px!important;
    line-height:1.2!important;
    margin-top:4px!important;
  }
}

/* 981–1199: the side-by-side trust composition made every image too small.
   Stack Facilities and Safety at full width while retaining four cards/row. */
@media (min-width:981px) and (max-width:1199px){
  .vmv32-trust-layout{grid-template-columns:1fr!important;gap:18px!important}
  .vmv32-safety{border-left:0!important;padding-left:0!important}
  .vmv32-safety-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important}
  .vmv32-safety-grid article{min-height:146px!important}
  .vmv32-facility-grid img{aspect-ratio:5/4!important}
  .vmv32-result-card{flex-basis:calc((100% - 32px)/3)!important}
  .vmv32-result-card__image{aspect-ratio:3/2!important}
}

/* Standard desktop: maximize visual impact with four large result cards. */
@media (min-width:1200px) and (max-width:1799px){
  .vmv32-shell{width:min(1450px,calc(100% - 48px))!important}
  .vmv32-result-card{flex-basis:calc((100% - 48px)/4)!important}
}

/* Very wide displays have enough room for five results without becoming tiny. */
@media (min-width:1800px){
  .vmv32-shell{width:min(1580px,calc(100% - 72px))!important}
  .vmv32-result-card{flex-basis:calc((100% - 64px)/5)!important}
}

/* Tablet/mobile keep the existing responsive structure but make image frames
   more generous, especially Facilities and Results. */
@media (min-width:701px) and (max-width:980px){
  #vmv32-featured,#vmv32-results,.vmv32-trust-section{padding-top:16px!important;padding-bottom:12px!important}
  .vmv32-feature-card__image,.vmv32-result-card__image{aspect-ratio:3/2!important}
  .vmv32-facility-grid img{aspect-ratio:5/4!important}
  .vmv32-safety-grid article{min-height:142px!important}
}
@media (max-width:700px){
  #vmv32-featured,#vmv32-results,.vmv32-trust-section{padding-top:15px!important;padding-bottom:10px!important}
  .vmv32-feature-card__image,.vmv32-result-card__image{aspect-ratio:3/2!important}
  .vmv32-facility-grid img{aspect-ratio:5/4!important}
  .vmv32-safety-grid article{min-height:150px!important;padding:12px 8px!important}
  .vmv32-safety-visual{height:74px!important;min-height:74px!important;flex-basis:74px!important}
  .vmv32-safety-visual>img{max-height:70px!important}
  .vmv32-safety-icon{height:68px!important;width:68px!important}
  .vmv32-safety-icon svg{width:46px!important;height:46px!important}
}


/* =========================================================
   V3.2.22 – True Visual Frame Expansion
   Root cause fix: legacy pixel-match rules locked Featured,
   Results and Trust sections to fixed heights with overflow:hidden.
   Earlier image expansion rules enlarged content inside those clipped
   boxes, so the visible improvement was modest. This final cascade
   removes those caps and gives the image-led sections a wider canvas.
   ========================================================= */
@media (min-width:981px){
  /* Remove legacy fixed-height clipping. */
  #vmv32-featured,
  #vmv32-results,
  .vmv32-trust-section{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  #vmv32-featured .vmv32-heading,
  #vmv32-results .vmv32-heading,
  .vmv32-trust-section .vmv32-heading{
    height:auto!important;
    min-height:0!important;
  }
  .vmv32-featured-grid,
  .vmv32-results-slider,
  .vmv32-results-slider .vmv32-slider-track,
  .vmv32-trust-layout{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }

  /* These image-led sections deliberately use a wider canvas than text-heavy sections. */
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{
    width:min(1680px,calc(100% - 48px))!important;
    max-width:none!important;
  }

  /* Featured services: retain four-up desktop structure, but make each photo
     substantially taller and remove the old clipped grid height. */
  #vmv32-featured{padding:26px 0 24px!important}
  #vmv32-featured .vmv32-heading{margin-bottom:18px!important}
  .vmv32-featured-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:20px!important;
  }
  .vmv32-feature-card{height:auto!important;overflow:hidden!important;border-radius:12px!important}
  .vmv32-feature-card__image{
    display:block!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  .vmv32-feature-card__body{height:auto!important;padding:13px 15px 15px!important}
  .vmv32-feature-card h3{font-size:17px!important}
  .vmv32-feature-card p{font-size:12px!important;line-height:1.42!important;min-height:34px!important}

  /* Results: never squeeze back to five small thumbnails on wide desktop.
     Four large cards produce stronger Before/After impact. */
  #vmv32-results{padding:24px 0 26px!important}
  #vmv32-results .vmv32-heading{margin-bottom:16px!important}
  .vmv32-results-slider{height:auto!important;min-height:0!important;overflow:hidden!important;padding:0 2px!important}
  .vmv32-results-slider .vmv32-slider-track{gap:20px!important;overflow-x:auto!important;overflow-y:visible!important;padding:2px 0 6px!important}
  .vmv32-result-card{
    flex:0 0 calc((100% - 60px)/4)!important;
    height:auto!important;
    min-height:0!important;
    border-radius:12px!important;
    overflow:hidden!important;
  }
  .vmv32-result-card__image{
    height:auto!important;
    aspect-ratio:4/3!important;
    min-height:0!important;
  }
  .vmv32-result-card__body{height:auto!important;min-height:58px!important;padding:11px 13px 13px!important;overflow:visible!important}
  .vmv32-result-card__body strong{font-size:14px!important;line-height:1.25!important}
  .vmv32-result-card__body span{font-size:11px!important;line-height:1.3!important;margin-top:3px!important}
  .vmv32-result-note{display:block!important;font-size:9.5px!important;margin:8px 0 0!important}

  /* Facilities + Safety: stop sharing a narrow 60/40 row. Each block receives
     the full section width, then Safety sits below Facilities. */
  .vmv32-trust-section{padding:26px 0 28px!important}
  .vmv32-trust-layout{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    align-items:start!important;
  }
  .vmv32-facilities,.vmv32-safety{width:100%!important;min-width:0!important}
  .vmv32-safety{border-left:0!important;padding-left:0!important}
  .vmv32-facility-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
  }
  .vmv32-facility-grid figure{margin:0!important;min-width:0!important}
  .vmv32-facility-grid img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:4/3!important;
    border-radius:12px!important;
  }
  .vmv32-facility-grid figcaption{font-size:11px!important;line-height:1.35!important;margin-top:8px!important}

  .vmv32-safety .vmv32-heading{margin-bottom:16px!important}
  .vmv32-safety-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:18px!important;
  }
  .vmv32-safety-grid article{
    min-height:190px!important;
    height:auto!important;
    padding:18px 12px 16px!important;
    border-radius:12px!important;
  }
  .vmv32-safety-visual{
    height:105px!important;
    min-height:105px!important;
    flex-basis:105px!important;
    margin-bottom:9px!important;
  }
  .vmv32-safety-visual>img{
    width:auto!important;
    height:auto!important;
    max-width:92%!important;
    max-height:100px!important;
  }
  .vmv32-safety-visual--license>img{max-width:100%!important;max-height:105px!important}
  .vmv32-safety-icon{width:92px!important;height:92px!important}
  .vmv32-safety-icon svg{width:58px!important;height:58px!important}
  .vmv32-safety-grid b{font-size:12px!important;line-height:1.2!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:10px!important;line-height:1.3!important;margin-top:5px!important}
}

/* Laptop / small desktop: two large featured cards per row and three results.
   This is intentionally more visual than the old four/five tiny-card layout. */
@media (min-width:981px) and (max-width:1279px){
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 48px)!important}
  .vmv32-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .vmv32-feature-card__image{aspect-ratio:16/9!important}
  .vmv32-result-card{flex-basis:calc((100% - 40px)/3)!important}
  .vmv32-result-card__image{aspect-ratio:4/3!important}
  .vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Medium / large desktop: use almost all available width while retaining sane gutters. */
@media (min-width:1280px) and (max-width:1799px){
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 56px)!important;max-width:1600px!important}
}
@media (min-width:1800px){
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:min(1760px,calc(100% - 80px))!important}
}

/* Tablet and mobile keep the existing carousel/stack patterns, but explicitly
   clear any fixed-height legacy values so images are never clipped. */
@media (max-width:980px){
  #vmv32-featured,#vmv32-results,.vmv32-trust-section,
  .vmv32-featured-grid,.vmv32-results-slider,.vmv32-results-slider .vmv32-slider-track,.vmv32-trust-layout{
    height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important
  }
  .vmv32-feature-card,.vmv32-result-card{height:auto!important}
  .vmv32-feature-card__body,.vmv32-result-card__body{height:auto!important;overflow:visible!important}
}

/* =========================================================
   V3.2.23 – Multi-device auto adaptation
   Uses viewport/capability profiles instead of user-agent sniffing.
   CSS media queries remain the primary layout engine; JS data attributes
   add height/input/large-display refinements and update live on rotation,
   split-screen and browser resize.
   ========================================================= */
.vmv32{
  --vmv32-auto-scale:1;
  --vmv32-touch-target:42px;
  --vmv32-fluid-gutter:clamp(14px,2.1vw,40px);
  --vmv32-fluid-gap:clamp(12px,1.25vw,22px);
}

/* Prevent grid/flex children from forcing horizontal overflow on any engine. */
.vmv32 *{min-width:0}
.vmv32 img{max-width:100%}

/* Touch devices receive safer targets without changing the desktop visual style. */
html[data-vmv32-input="touch"] .vmv32 a,
html[data-vmv32-input="touch"] .vmv32 button,
html[data-vmv32-input="touch"] .vmv32 input,
html[data-vmv32-input="touch"] .vmv32 select{
  min-height:44px;
}
html[data-vmv32-input="touch"] .vmv32-slider-arrow{min-width:44px;min-height:44px}

/* Small phones: one strong visual at a time. */
@media (max-width:430px){
  .vmv32-shell{width:calc(100% - 24px)!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 24px)!important}
  .vmv32-featured-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:12px!important;padding-bottom:5px!important}
  .vmv32-feature-card{flex:0 0 92%!important;scroll-snap-align:start}
  .vmv32-results-slider .vmv32-slider-track{gap:12px!important}
  .vmv32-result-card{flex:0 0 92%!important}
  .vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:1fr!important;gap:14px!important}
  .vmv32-facility-grid img{aspect-ratio:4/3!important}
  .vmv32-section-title,.vmv32-heading h2{font-size:clamp(20px,6vw,25px)!important}
}

/* Larger phones: keep the next card peeking in to communicate swipeability. */
@media (min-width:431px) and (max-width:700px){
  .vmv32-shell{width:calc(100% - 30px)!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 30px)!important}
  .vmv32-featured-grid{display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;gap:14px!important;padding-bottom:6px!important}
  .vmv32-feature-card{flex:0 0 86%!important;scroll-snap-align:start}
  .vmv32-result-card{flex:0 0 86%!important}
  .vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important}
}

/* Tablets: always use a balanced 2×2 visual grid for Facilities/Trust. */
@media (min-width:701px) and (max-width:980px){
  .vmv32-shell{width:calc(100% - 36px)!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 36px)!important}
  .vmv32-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
  .vmv32-results-slider .vmv32-slider-track{gap:16px!important}
  .vmv32-result-card{flex:0 0 calc((100% - 16px)/2)!important}
  .vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
  .vmv32-feature-card__image,.vmv32-result-card__image,.vmv32-facility-grid img{aspect-ratio:4/3!important}
}

/* Landscape tablets can fit a third result without shrinking facilities/trust. */
html[data-vmv32-device="tablet"][data-vmv32-orientation="landscape"] .vmv32-result-card{
  flex-basis:calc((100% - 32px)/3)!important;
}

/* Small laptop / 1024-class desktop. */
@media (min-width:981px) and (max-width:1279px){
  .vmv32-shell{width:calc(100% - 44px)!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:calc(100% - 44px)!important}
  .vmv32-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
  .vmv32-result-card{flex-basis:calc((100% - 36px)/3)!important}
  .vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
}

/* Standard desktop: 4 visually substantial cards. */
@media (min-width:1280px) and (max-width:1799px){
  .vmv32-shell{width:min(1480px,calc(100% - 56px))!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:min(1600px,calc(100% - 56px))!important}
  .vmv32-featured-grid,.vmv32-facility-grid,.vmv32-safety-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .vmv32-result-card{flex-basis:calc((100% - 60px)/4)!important}
}

/* Large desktop: preserve readable line lengths but let visual sections breathe. */
@media (min-width:1800px) and (max-width:2199px){
  .vmv32-shell{width:min(1600px,calc(100% - 72px))!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:min(1820px,calc(100% - 80px))!important}
  .vmv32-result-card{flex-basis:calc((100% - 66px)/4)!important}
  .vmv32-feature-card h3{font-size:18px!important}
  .vmv32-feature-card p,.vmv32-result-card__body span{font-size:12px!important}
}

/* TV / ultra-wide displays: scale the design, not merely the empty margins. */
@media (min-width:2200px){
  .vmv32{--vmv32-touch-target:50px}
  .vmv32-shell{width:min(1960px,calc(100% - 120px))!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:min(2240px,calc(100% - 140px))!important}
  .vmv32-featured-grid,.vmv32-facility-grid,.vmv32-safety-grid{gap:26px!important}
  .vmv32-results-slider .vmv32-slider-track{gap:26px!important}
  .vmv32-result-card{flex-basis:calc((100% - 78px)/4)!important}
  .vmv32-feature-card__body{padding:18px 20px 20px!important}
  .vmv32-result-card__body{padding:15px 17px 17px!important;min-height:72px!important}
  .vmv32-feature-card h3{font-size:clamp(19px,calc(18px * var(--vmv32-auto-scale)),23px)!important}
  .vmv32-feature-card p{font-size:clamp(13px,calc(12px * var(--vmv32-auto-scale)),15px)!important}
  .vmv32-result-card__body strong{font-size:clamp(16px,calc(15px * var(--vmv32-auto-scale)),19px)!important}
  .vmv32-result-card__body span{font-size:clamp(12px,calc(11px * var(--vmv32-auto-scale)),14px)!important}
  .vmv32-facility-grid figcaption{font-size:14px!important}
  .vmv32-safety-grid article{min-height:225px!important;padding:22px 16px 20px!important}
  .vmv32-safety-visual{height:125px!important;min-height:125px!important;flex-basis:125px!important}
  .vmv32-safety-visual>img{max-height:120px!important}
  .vmv32-safety-icon{width:108px!important;height:108px!important}
  .vmv32-safety-icon svg{width:68px!important;height:68px!important}
  .vmv32-safety-grid b{font-size:14px!important}
  .vmv32-safety-grid span:not(.vmv32-safety-icon):not(.vmv32-safety-visual){font-size:12px!important}
}

/* Very large/4K CSS viewports: cap content to a comfortable viewing width. */
@media (min-width:3200px){
  .vmv32-shell{width:min(2200px,calc(100% - 180px))!important}
  #vmv32-featured>.vmv32-shell,
  #vmv32-results>.vmv32-shell,
  .vmv32-trust-section>.vmv32-shell{width:min(2520px,calc(100% - 200px))!important}
  .vmv32-featured-grid,.vmv32-facility-grid,.vmv32-safety-grid{gap:32px!important}
  .vmv32-results-slider .vmv32-slider-track{gap:32px!important}
  .vmv32-result-card{flex-basis:calc((100% - 96px)/4)!important}
}

/* Short laptop displays: reduce only vertical whitespace; preserve image area. */
@media (min-width:981px) and (max-height:700px){
  #vmv32-featured,#vmv32-results,.vmv32-trust-section{padding-top:18px!important;padding-bottom:18px!important}
  #vmv32-featured .vmv32-heading,#vmv32-results .vmv32-heading,.vmv32-trust-section .vmv32-heading{margin-bottom:12px!important}
}

/* Portrait tablets/phones need less vertical hero dominance than tall desktop. */
html[data-vmv32-orientation="portrait"][data-vmv32-device="tablet"] .vmv32-hero{
  max-height:none!important;
}

/* Accessibility and TV/browser robustness. */
@media (prefers-reduced-motion:reduce){
  .vmv32 *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@supports not (aspect-ratio:1 / 1){
  .vmv32-feature-card__image,.vmv32-result-card__image,.vmv32-facility-grid img{min-height:220px}
}

/* =========================================================
 * V3.2.26 – Lightweight social video gallery
 * Static thumbnail facades only; third-party players are loaded after click.
 * ========================================================= */
.vmv32 .vmv32-video-section{background:linear-gradient(180deg,#f7fbfd 0%,#fff 100%)}
.vmv32 .vmv32-video-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}
.vmv32 .vmv32-video-heading>div:first-child{max-width:760px}
.vmv32 .vmv32-video-heading h2{margin:3px 0 8px;font-size:clamp(24px,2vw,34px);line-height:1.2;font-weight:700;color:#053d62}
.vmv32 .vmv32-video-heading p:not(.vmv32-kicker){margin:0;color:#536b78;line-height:1.65}
.vmv32 .vmv32-video-filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.vmv32 .vmv32-video-filters button{appearance:none;border:1px solid #d7e7ef;background:#fff;color:#31596f;border-radius:999px;min-height:38px;padding:8px 14px;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease}
.vmv32 .vmv32-video-filters button:hover,.vmv32 .vmv32-video-filters button.is-active{background:#0677ad;border-color:#0677ad;color:#fff}
.vmv32 .vmv32-video-slider{position:relative}
.vmv32 .vmv32-video-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(240px,1fr);grid-template-columns:none;gap:18px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;padding:2px 2px 12px}
.vmv32 .vmv32-video-track::-webkit-scrollbar{display:none}
.vmv32 .vmv32-video-card{scroll-snap-align:start;min-width:0;background:#fff;border:1px solid #e1edf2;border-radius:18px;overflow:hidden;box-shadow:0 8px 24px rgba(3,52,79,.07)}
.vmv32 .vmv32-video-card[hidden]{display:none!important}
.vmv32 .vmv32-video-card__media{position:relative;display:block;width:100%;aspect-ratio:9/16;padding:0;border:0;background:#dbeaf1;overflow:hidden;cursor:pointer;color:inherit}
.vmv32 .vmv32-video-card__media img,.vmv32 .vmv32-video-placeholder{display:block;width:100%;height:100%;object-fit:var(--vmv32-fit,cover);object-position:var(--vmv32-pos,center center)}
.vmv32 .vmv32-video-card__media:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(180deg,transparent,rgba(2,30,45,.56));pointer-events:none}
.vmv32 .vmv32-video-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:20px;box-sizing:border-box;background:linear-gradient(145deg,#dff2f9,#edf9fc 48%,#cce8f4);color:#0a668f;text-align:center}
.vmv32 .vmv32-video-placeholder b{font-size:22px}
.vmv32 .vmv32-video-placeholder small{font-size:12px;font-weight:400;color:#517484}
.vmv32 .vmv32-video-play{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.94);color:#0677ad;box-shadow:0 10px 28px rgba(0,0,0,.2);transition:transform .18s ease,background .18s ease}
.vmv32 .vmv32-video-card__media:hover .vmv32-video-play{transform:translate(-50%,-50%) scale(1.07);background:#fff}
.vmv32 .vmv32-video-platform{position:absolute;z-index:2;left:12px;bottom:12px;border-radius:999px;padding:6px 9px;background:rgba(2,33,48,.75);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);font-size:11px;line-height:1;font-weight:700;color:#fff}
.vmv32 .vmv32-video-card__body{padding:15px 16px 16px}
.vmv32 .vmv32-video-card__body h3{margin:0 0 7px;color:#123e55;font-size:16px;line-height:1.35;font-weight:700}
.vmv32 .vmv32-video-card__body p{margin:0 0 12px;color:#607681;font-size:13px;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.vmv32 .vmv32-video-card__meta{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #edf3f6;padding-top:11px;font-size:12px}
.vmv32 .vmv32-video-card__meta>span{font-weight:700;color:#55717f}
.vmv32 .vmv32-video-card__meta a{display:inline-flex;align-items:center;gap:4px;color:#0677ad;font-weight:700;text-decoration:none}
.vmv32 .vmv32-video-note{margin:10px 0 0;color:#7a8c95;font-size:12px;text-align:center}
.vmv32 .vmv32-video-modal__dialog{width:min(92vw,920px);max-height:92vh;padding:22px;border-radius:18px;overflow:auto}
.vmv32 .vmv32-video-modal__dialog .vmv32-modal__title{margin:0 42px 15px 0;color:#123e55;font-size:20px;line-height:1.3}
.vmv32 .vmv32-video-player{width:100%;min-height:280px;display:grid;place-items:center;background:#07151d;border-radius:14px;overflow:hidden}
.vmv32 .vmv32-video-iframe{display:block;width:100%;height:min(72vh,720px);border:0;background:#000}
.vmv32 .vmv32-video-iframe--youtube{aspect-ratio:16/9;height:auto;min-height:300px}
.vmv32 .vmv32-video-iframe--tiktok{width:min(100%,430px);aspect-ratio:9/16;height:min(74vh,760px)}
.vmv32 .vmv32-pinterest-embed{min-height:420px;width:100%;display:grid;place-items:center;padding:18px;box-sizing:border-box;background:#fff}
.vmv32 .vmv32-video-fallback{margin:12px 0 0;text-align:center;color:#526c79}
.vmv32 .vmv32-video-fallback a{font-weight:700;color:#0677ad}

@media (min-width:1280px){
  .vmv32 .vmv32-video-track{grid-auto-columns:calc((100% - 54px)/4)}
}
@media (min-width:1800px){
  .vmv32 .vmv32-video-track{grid-auto-columns:calc((100% - 72px)/5)}
}
@media (min-width:2200px){
  .vmv32 .vmv32-video-track{gap:24px;grid-auto-columns:calc((100% - 96px)/5)}
  .vmv32 .vmv32-video-card__body{padding:18px 19px 19px}
  .vmv32 .vmv32-video-card__body h3{font-size:18px}
  .vmv32 .vmv32-video-play{width:72px;height:72px}
}
@media (min-width:701px) and (max-width:1279px){
  .vmv32 .vmv32-video-track{grid-auto-columns:calc((100% - 18px)/2)}
}
@media (max-width:800px){
  .vmv32 .vmv32-video-heading{align-items:flex-start;flex-direction:column;gap:14px}
  .vmv32 .vmv32-video-filters{justify-content:flex-start;width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px;scrollbar-width:none}
  .vmv32 .vmv32-video-filters::-webkit-scrollbar{display:none}
  .vmv32 .vmv32-video-filters button{flex:0 0 auto;min-height:44px}
}
@media (max-width:700px){
  .vmv32 .vmv32-video-track{display:flex;gap:14px;scroll-snap-type:x mandatory;padding-right:8%}
  .vmv32 .vmv32-video-card{flex:0 0 78vw;max-width:340px}
  .vmv32 .vmv32-video-slider>.vmv32-slider-btn{display:none!important}
  .vmv32 .vmv32-video-play{width:58px;height:58px}
  .vmv32 .vmv32-video-modal__dialog{width:94vw;padding:15px;border-radius:14px}
  .vmv32 .vmv32-video-player{min-height:240px}
  .vmv32 .vmv32-video-iframe--youtube{min-height:0}
  .vmv32 .vmv32-video-iframe--tiktok{height:72vh;max-height:700px}
}
@media (max-width:430px){
  .vmv32 .vmv32-video-card{flex-basis:84vw}
  .vmv32 .vmv32-video-card__body h3{font-size:15px}
}
@media (prefers-reduced-motion:reduce){
  .vmv32 .vmv32-video-play,.vmv32 .vmv32-video-filters button{transition:none}
}

/* V3.2.27 – image visibility compatibility guard.
 * Some optimization/lazy-load stacks temporarily apply opacity/visibility
 * classes. V3.2 owns its image frames, so never leave a real image hidden. */
.vmv32 img[src]:not([src=""]) {
  visibility: visible !important;
  opacity: 1 !important;
}
.vmv32 .vmv32-video-thumb--remote {
  background:#eef5fa;
}

/* =========================================================
   V3.2.28 – Safety & Transparency True Image Fill
   Fixes legacy max-width/max-height rules that kept managed
   images thumbnail-sized even when editors selected Cover.
   Cover now fills the complete frame; Contain shows the full
   image inside the same large frame. Smart crop position remains active.
   ========================================================= */
.vmv32 .vmv32-safety-grid article{
  overflow:hidden!important;
}
.vmv32 .vmv32-safety-visual{
  display:block!important;
  align-self:stretch!important;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  flex:0 0 auto!important;
  aspect-ratio:16/9!important;
  margin:0 0 12px!important;
  overflow:hidden!important;
  border-radius:10px!important;
  background:#f4f9fd!important;
}
.vmv32 .vmv32-safety-visual>img,
.vmv32 .vmv32-safety-visual>img.vmv32-smart-image,
.vmv32 .vmv32-safety-visual--license>img,
.vmv32 .vmv32-safety-visual--license>img.vmv32-smart-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  border-radius:10px!important;
  object-fit:var(--vmv32-fit,cover)!important;
  object-position:var(--vmv32-pos,center center)!important;
}
/* Fallback SVG/icon remains centered when no managed image exists. */
.vmv32 .vmv32-safety-visual>.vmv32-safety-icon{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
}

@media (min-width:1280px){
  .vmv32 .vmv32-safety-grid article{padding:12px 12px 16px!important}
  .vmv32 .vmv32-safety-visual{margin-bottom:12px!important}
}
@media (max-width:980px){
  .vmv32 .vmv32-safety-visual{border-radius:9px!important;margin-bottom:10px!important}
  .vmv32 .vmv32-safety-visual>img{border-radius:9px!important}
}
@media (max-width:430px){
  .vmv32 .vmv32-safety-grid article{padding:10px!important}
  .vmv32 .vmv32-safety-visual{aspect-ratio:16/9!important;margin-bottom:9px!important}
}


/* =========================================================
   V3.2.29 – Testimonial Demo-Match Optimization
   Compact horizontal review cards inspired by the approved demo:
   stronger image/name hierarchy, shorter readable quote area,
   larger touch targets and responsive card counts without
   loading any additional assets or third-party scripts.
   ========================================================= */
.vmv32 #vmv32-testimonials{
  position:relative!important;
  overflow:hidden!important;
  padding-top:clamp(22px,2.2vw,36px)!important;
  padding-bottom:clamp(24px,2.5vw,42px)!important;
  background:linear-gradient(180deg,#f8fbfd 0%,#ffffff 100%)!important;
}
.vmv32 #vmv32-testimonials>.vmv32-shell{
  width:min(1600px,calc(100% - 56px))!important;
  max-width:none!important;
}
.vmv32 #vmv32-testimonials .vmv32-heading{
  margin-bottom:16px!important;
  gap:18px!important;
}
.vmv32 #vmv32-testimonials .vmv32-heading h2{
  margin:0!important;
  color:#075a94!important;
  font-size:clamp(24px,1.8vw,32px)!important;
  line-height:1.16!important;
  letter-spacing:-.02em!important;
  font-weight:700!important;
}
.vmv32 #vmv32-testimonials .vmv32-heading>a{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:40px!important;
  color:#0a639b!important;
  font-size:12px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
.vmv32 #vmv32-testimonials .vmv32-heading>a:hover{
  color:#074b7b!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
.vmv32 #vmv32-testimonials .vmv32-stories-slider{
  height:auto!important;
  min-height:0!important;
  padding:2px 0!important;
}
.vmv32 #vmv32-testimonials .vmv32-stories-slider .vmv32-slider-track{
  display:flex!important;
  align-items:stretch!important;
  height:auto!important;
  min-height:0!important;
  gap:14px!important;
  padding:3px 2px 10px!important;
  scroll-snap-type:x proximity!important;
  scroll-padding-inline:2px!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card{
  position:relative!important;
  flex:0 0 calc((100% - 42px)/4)!important;
  min-width:0!important;
  height:126px!important;
  min-height:126px!important;
  aspect-ratio:auto!important;
  display:grid!important;
  grid-template-columns:102px minmax(0,1fr)!important;
  align-items:stretch!important;
  overflow:hidden!important;
  border:1px solid #d9e8f2!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 5px 18px rgba(12,67,105,.07)!important;
  scroll-snap-align:start!important;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card:before{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  left:0!important;
  top:0!important;
  bottom:0!important;
  width:3px!important;
  background:#0c75ad!important;
  opacity:.9!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card:hover{
  transform:translateY(-2px)!important;
  border-color:#bfdceb!important;
  box-shadow:0 10px 26px rgba(12,67,105,.12)!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__media{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  margin:0!important;
  padding:9px 4px 9px 10px!important;
  border:0!important;
  background:#fff!important;
  overflow:visible!important;
  cursor:pointer!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__media img,
.vmv32 #vmv32-testimonials .vmv32-story-card__media img.vmv32-smart-image{
  display:block!important;
  width:88px!important;
  height:100%!important;
  min-width:88px!important;
  max-width:88px!important;
  max-height:none!important;
  margin:0!important;
  border-radius:10px!important;
  object-fit:var(--vmv32-fit,cover)!important;
  object-position:var(--vmv32-pos,center top)!important;
  box-shadow:inset 0 0 0 1px rgba(0,77,121,.06)!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__media span{
  position:absolute!important;
  z-index:3!important;
  left:15px!important;
  bottom:14px!important;
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid rgba(255,255,255,.86)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.96)!important;
  color:#0874ab!important;
  box-shadow:0 4px 13px rgba(3,52,82,.19)!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__body{
  position:relative!important;
  min-width:0!important;
  overflow:hidden!important;
  padding:15px 14px 13px 9px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__body:before{
  content:"“"!important;
  position:absolute!important;
  right:10px!important;
  top:2px!important;
  color:#d7e8f2!important;
  font-family:Georgia,serif!important;
  font-size:40px!important;
  line-height:1!important;
  pointer-events:none!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__body p{
  position:relative!important;
  z-index:1!important;
  margin:0!important;
  padding-right:8px!important;
  color:#455e71!important;
  font-size:11.2px!important;
  line-height:1.45!important;
  font-weight:400!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  overflow:hidden!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-card__body b{
  position:relative!important;
  z-index:1!important;
  display:block!important;
  margin-top:auto!important;
  padding-top:7px!important;
  color:#075a94!important;
  font-size:12.5px!important;
  line-height:1.15!important;
  font-weight:700!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.vmv32 #vmv32-testimonials .vmv32-story-note{
  display:block!important;
  margin:7px 2px 0!important;
  color:#8496a3!important;
  font-size:9.5px!important;
  line-height:1.35!important;
  text-align:left!important;
}
.vmv32 #vmv32-testimonials .vmv32-slider-btn{
  width:38px!important;
  height:38px!important;
  border-color:#c8dfea!important;
  background:rgba(255,255,255,.98)!important;
  color:#086ba2!important;
  box-shadow:0 6px 18px rgba(4,62,96,.12)!important;
}
.vmv32 #vmv32-testimonials .vmv32-slider-btn.is-prev{left:-19px!important}
.vmv32 #vmv32-testimonials .vmv32-slider-btn.is-next{right:-19px!important}

/* Small laptop: keep cards readable rather than forcing four tiny reviews. */
@media (min-width:981px) and (max-width:1279px){
  .vmv32 #vmv32-testimonials>.vmv32-shell{width:calc(100% - 44px)!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    flex-basis:calc((100% - 28px)/3)!important;
    grid-template-columns:100px minmax(0,1fr)!important;
    height:128px!important;
    min-height:128px!important;
  }
}
/* Large desktop/TV: show five reviews while preserving comfortable type. */
@media (min-width:1800px){
  .vmv32 #vmv32-testimonials>.vmv32-shell{width:min(1760px,calc(100% - 96px))!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    flex-basis:calc((100% - 56px)/5)!important;
  }
}
@media (min-width:2200px){
  .vmv32 #vmv32-testimonials>.vmv32-shell{width:min(2200px,calc(100% - 140px))!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    height:144px!important;
    min-height:144px!important;
    grid-template-columns:116px minmax(0,1fr)!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img,
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img.vmv32-smart-image{
    width:102px!important;
    min-width:102px!important;
    max-width:102px!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__body p{font-size:12.5px!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card__body b{font-size:14px!important}
}
/* Tablet: two substantial horizontal cards. */
@media (min-width:701px) and (max-width:980px){
  .vmv32 #vmv32-testimonials>.vmv32-shell{width:calc(100% - 36px)!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    flex-basis:calc((100% - 14px)/2)!important;
    height:132px!important;
    min-height:132px!important;
    grid-template-columns:104px minmax(0,1fr)!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img,
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img.vmv32-smart-image{
    width:90px!important;
    min-width:90px!important;
    max-width:90px!important;
  }
}
/* Mobile: one large card with a peek of the next card to invite swiping. */
@media (max-width:700px){
  .vmv32 #vmv32-testimonials{
    padding-top:20px!important;
    padding-bottom:26px!important;
  }
  .vmv32 #vmv32-testimonials>.vmv32-shell{width:calc(100% - 28px)!important}
  .vmv32 #vmv32-testimonials .vmv32-heading{
    align-items:flex-start!important;
    margin-bottom:12px!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-heading h2{font-size:21px!important}
  .vmv32 #vmv32-testimonials .vmv32-heading>a{font-size:10px!important;min-height:34px!important}
  .vmv32 #vmv32-testimonials .vmv32-stories-slider .vmv32-slider-track{
    gap:12px!important;
    padding-right:10%!important;
    scroll-snap-type:x mandatory!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    flex:0 0 88%!important;
    width:88%!important;
    height:134px!important;
    min-height:134px!important;
    grid-template-columns:106px minmax(0,1fr)!important;
    border-radius:12px!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__media{padding:9px 4px 9px 10px!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img,
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img.vmv32-smart-image{
    width:92px!important;
    min-width:92px!important;
    max-width:92px!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__body{padding:15px 11px 13px 8px!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card__body p{font-size:11px!important;-webkit-line-clamp:4!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card__body b{font-size:12px!important}
  .vmv32 #vmv32-testimonials .vmv32-slider-btn{display:none!important}
  .vmv32 #vmv32-testimonials .vmv32-story-note{font-size:8.5px!important;margin-top:5px!important}
}
@media (max-width:430px){
  .vmv32 #vmv32-testimonials .vmv32-heading{display:block!important}
  .vmv32 #vmv32-testimonials .vmv32-heading>a{margin-top:3px!important}
  .vmv32 #vmv32-testimonials .vmv32-story-card{
    flex-basis:91%!important;
    width:91%!important;
    grid-template-columns:98px minmax(0,1fr)!important;
    height:132px!important;
    min-height:132px!important;
  }
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img,
  .vmv32 #vmv32-testimonials .vmv32-story-card__media img.vmv32-smart-image{
    width:84px!important;
    min-width:84px!important;
    max-width:84px!important;
  }
}
@media (prefers-reduced-motion:reduce){
  .vmv32 #vmv32-testimonials .vmv32-story-card{transition:none!important}
}
\n\n/* =========================================================\n   V3.2.30 – Dynamic Stats Manager\n   Variable count, compact wrapping, no layout shift.\n   ========================================================= */\n.vmv32 .vmv32-stats{grid-template-columns:repeat(var(--vmv32-stat-count,3),minmax(0,1fr))!important}\n.vmv32 .vmv32-stats strong{overflow-wrap:anywhere}\n.vmv32 .vmv32-stats span{line-height:1.25;overflow-wrap:anywhere}\n@media (max-width:700px){\n  .vmv32 .vmv32-stats{gap:0!important}\n  .vmv32 .vmv32-stats div{padding-inline:5px!important}\n}\n
/* =========================================================
   V3.2.31 – Footer End-of-Page Cleanup
   Remove theme/mobile-sticky reserved space below the standalone homepage.
   The blue legal bar is the real visual end of the document.
   ========================================================= */
html:has(body.vmv32-standalone-template){
  padding-bottom:0!important;
  margin-bottom:0!important;
  background:#063d76!important;
}
body.vmv32-standalone-template{
  margin-bottom:0!important;
  padding-bottom:0!important;
  min-height:0!important;
  background:#063d76!important;
}
body.vmv32-standalone-template #vmv32-page,
body.vmv32-standalone-template .vmv32-template-content,
body.vmv32-standalone-template #vmv32-page>.vmv32{
  margin-bottom:0!important;
  padding-bottom:0!important;
  min-height:0!important;
}
.vmv32 .vmv32-footer,
.vmv32 .vmv32-footer__bottom{
  margin-bottom:0!important;
  padding-bottom:0!important;
}
.vmv32 .vmv32-footer__bottom{
  border-bottom:0!important;
}
/* Theme/mobile plugins sometimes reserve a fixed-footer safe area on BODY. */
body.vmv32-standalone-template::after{
  content:none!important;
  display:none!important;
}
/* Keep the back-to-top control above the legal footer rather than visually
   suggesting there is another empty footer band below it. */
@media (min-width:701px){
  .vmv32 .vmv32-backtop{bottom:64px!important}
}
@media (max-width:700px){
  .vmv32 .vmv32-backtop{bottom:82px!important}
}

/* =========================================================
   V3.2.32 – Compact Page Edges / Header + Footer Cleanup
   Fixes blue ghost bands caused by the previous document background and
   WordPress admin-bar top offset. Keeps the public header/footer compact.
   ========================================================= */

/* The document canvas must stay white. The legal footer owns the blue only
   inside its own box; it must not paint unused viewport/document space. */
html:has(body.vmv32-standalone-template){
  margin-top:0!important;
  margin-bottom:0!important;
  padding:0!important;
  background:#fff!important;
}
body.vmv32-standalone-template{
  margin:0!important;
  padding:0!important;
  min-height:0!important;
  background:#fff!important;
}
body.vmv32-standalone-template #vmv32-page,
body.vmv32-standalone-template .vmv32-template-content,
body.vmv32-standalone-template #vmv32-home{
  margin-top:0!important;
  margin-bottom:0!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

/* Do not leave a painted strip above the real header. */
body.vmv32-standalone-template #vmv32-header{
  margin-top:0!important;
}

/* Compact legal bar: enough hit area/readability, without a large blue block. */
.vmv32 .vmv32-footer{
  margin:0!important;
  padding:0!important;
  background:#fff!important;
}
.vmv32 .vmv32-footer__bottom{
  height:auto!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:linear-gradient(90deg,#063d76,#075a96)!important;
}
.vmv32 .vmv32-footer__bottom .vmv32-shell{
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  margin-inline:auto!important;
  font-size:9px!important;
  line-height:1.25!important;
  align-items:center!important;
}
.vmv32 .vmv32-footer__bottom a,
.vmv32 .vmv32-footer__bottom span{
  line-height:1.25!important;
}

/* Smaller, less intrusive back-to-top control. */
.vmv32 .vmv32-backtop{
  width:32px!important;
  height:32px!important;
  font-size:17px!important;
  right:14px!important;
  bottom:10px!important;
}

/* Tablet/mobile legal footer: wrap only when needed, but keep the blue area tight. */
@media (max-width:700px){
  .vmv32 .vmv32-footer__bottom{
    min-height:0!important;
  }
  .vmv32 .vmv32-footer__bottom .vmv32-shell{
    height:auto!important;
    min-height:48px!important;
    padding:7px 0!important;
    gap:4px!important;
    justify-content:center!important;
  }
  .vmv32 .vmv32-footer__bottom .vmv32-shell>div{
    gap:10px!important;
  }
  .vmv32 .vmv32-backtop{
    width:34px!important;
    height:34px!important;
    right:10px!important;
    bottom:10px!important;
  }
}

/* Logged-in WordPress toolbar safety: if WordPress adds its historic html
   top-margin, our higher-specificity reset prevents a blank 32/46px band.
   The actual admin bar remains fixed above the site when WordPress renders it. */
body.vmv32-standalone-template.admin-bar #wpadminbar{
  position:fixed!important;
  top:0!important;
}

/* =========================================================
   V3.2.33 – Hard Footer End / Trailing White Gap Fix
   The legal bar must be the final painted edge of the standalone homepage.
   Reset any inherited footer min-height/clearfix and keep the back-to-top
   control above the legal bar without reserving document space.
   ========================================================= */
body.vmv32-standalone-template,
body.vmv32-standalone-template #vmv32-page,
body.vmv32-standalone-template .vmv32-template-content,
body.vmv32-standalone-template #vmv32-home,
body.vmv32-standalone-template #vmv32-page>.vmv32{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin-bottom:0!important;
  padding-bottom:0!important;
}

/* Some theme/plugin styles assign a generic min-height to FOOTER or add a
   clearfix pseudo-element. Both can leave a white strip after the legal bar. */
body.vmv32-standalone-template footer.vmv32-footer{
  display:block!important;
  position:relative!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border-bottom:0!important;
  overflow:visible!important;
  background:#fff!important;
}
body.vmv32-standalone-template footer.vmv32-footer::before,
body.vmv32-standalone-template footer.vmv32-footer::after{
  content:none!important;
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

body.vmv32-standalone-template .vmv32-footer__bottom{
  display:block!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  overflow:hidden!important;
}
body.vmv32-standalone-template .vmv32-footer__bottom>.vmv32-shell{
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  margin-block:0!important;
  padding-block:0!important;
}

/* No layout-producing node is allowed to trail the footer in the V3.2 shell. */
body.vmv32-standalone-template #vmv32-page>.vmv32{
  border-bottom:0!important;
}
body.vmv32-standalone-template #vmv32-page>.vmv32::after{
  content:none!important;
  display:none!important;
}

/* Float above the legal bar; fixed positioning never contributes to page height. */
body.vmv32-standalone-template .vmv32-backtop{
  position:fixed!important;
  bottom:48px!important;
  margin:0!important;
}

@media (max-width:700px){
  body.vmv32-standalone-template .vmv32-footer__bottom{
    height:auto!important;
    min-height:48px!important;
    max-height:none!important;
  }
  body.vmv32-standalone-template .vmv32-footer__bottom>.vmv32-shell{
    height:auto!important;
    min-height:48px!important;
    max-height:none!important;
    padding-block:7px!important;
  }
  body.vmv32-standalone-template .vmv32-backtop{
    bottom:62px!important;
  }
}


/* =========================================================
   V3.2.34 – Exact Document End / Editor Spacer Removal
   ========================================================= */
html.vmv32-html,
html.vmv32-html body.vmv32-standalone-template{
  margin-bottom:0!important;
  padding-bottom:0!important;
}

body.vmv32-standalone-template #vmv32-page>p,
body.vmv32-standalone-template #vmv32-page>br,
body.vmv32-standalone-template #vmv32-page>.wp-block-spacer,
body.vmv32-standalone-template #vmv32-page>.wp-block-separator{
  display:none!important;
  height:0!important;
  min-height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

body.vmv32-standalone-template #vmv32-page>#vmv32-home~*:not(script):not(style):not(link):not(noscript){
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
}

body.vmv32-standalone-template #vmv32-page{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

/* =========================================================
   V3.2.35 – Service Navigator Ratio & Demo-Match Refinement
   Compact three-zone composition inspired by the supplied reference:
   prompt / tightly grouped service icons / restrained search.
   ========================================================= */

/* Desktop: keep the navigator visually grouped instead of stretching icons
   across the full shell. This preserves a clear left-to-right hierarchy. */
@media (min-width:1300px){
  .vmv32 .vmv32-servicebar__inner{
    display:grid!important;
    grid-template-columns:170px minmax(0,760px) 280px!important;
    justify-content:space-between!important;
    align-items:center!important;
    column-gap:24px!important;
    min-height:88px!important;
    padding:8px 0!important;
  }
  .vmv32 .vmv32-servicebar__question{
    width:auto!important;
    max-width:170px!important;
    font-size:14px!important;
    line-height:1.22!important;
    letter-spacing:-.01em!important;
    align-self:center!important;
  }
  .vmv32 .vmv32-servicebar__icons{
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:14px!important;
  }
  .vmv32 .vmv32-service-icon{
    width:70px!important;
    flex:0 0 70px!important;
    gap:4px!important;
    font-size:9.5px!important;
    line-height:1.18!important;
    text-align:center!important;
    white-space:normal!important;
  }
  .vmv32 .vmv32-service-icon__visual{
    width:54px!important;
    height:54px!important;
  }
  .vmv32 .vmv32-service-icon__visual img{
    width:62px!important;
    height:62px!important;
  }
  .vmv32 .vmv32-service-icon__grid{
    width:54px!important;
    height:54px!important;
  }
  .vmv32 .vmv32-service-search{
    width:280px!important;
    height:42px!important;
    justify-self:end!important;
    border-radius:8px!important;
  }
  .vmv32 .vmv32-service-search input{
    height:40px!important;
    padding:0 13px!important;
    font-size:11px!important;
  }
  .vmv32 .vmv32-service-search button{
    width:44px!important;
    flex:0 0 44px!important;
  }
}

/* Regular desktop / smaller laptop: preserve the same hierarchy but allow
   the icon group to contract gracefully without forcing horizontal overflow. */
@media (min-width:981px) and (max-width:1299px){
  .vmv32 .vmv32-servicebar__inner{
    display:grid!important;
    grid-template-columns:130px minmax(0,1fr) 215px!important;
    align-items:center!important;
    gap:14px!important;
    min-height:86px!important;
    padding:7px 0!important;
  }
  .vmv32 .vmv32-servicebar__question{
    width:auto!important;
    max-width:130px!important;
    font-size:11.5px!important;
    line-height:1.2!important;
  }
  .vmv32 .vmv32-servicebar__icons{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    gap:4px!important;
    overflow:hidden!important;
    min-width:0!important;
  }
  .vmv32 .vmv32-service-icon{
    width:58px!important;
    flex:1 1 58px!important;
    min-width:52px!important;
    max-width:64px!important;
    gap:3px!important;
    font-size:8px!important;
    line-height:1.15!important;
    text-align:center!important;
    white-space:normal!important;
  }
  .vmv32 .vmv32-service-icon__visual,
  .vmv32 .vmv32-service-icon__grid{
    width:46px!important;
    height:46px!important;
  }
  .vmv32 .vmv32-service-icon__visual img{
    width:54px!important;
    height:54px!important;
  }
  .vmv32 .vmv32-service-search{
    width:215px!important;
    height:38px!important;
  }
  .vmv32 .vmv32-service-search input{
    height:36px!important;
    font-size:9.5px!important;
  }
  .vmv32 .vmv32-service-search button{
    width:40px!important;
    flex:0 0 40px!important;
  }
}

/* Tablet: two-stage navigator. The question remains a compact lead-in, icons
   scroll naturally in one row, and search receives a full row for usability. */
@media (min-width:701px) and (max-width:980px){
  .vmv32 .vmv32-servicebar__inner{
    display:grid!important;
    grid-template-columns:145px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    align-items:center!important;
    gap:8px 12px!important;
    min-height:0!important;
    padding:10px 0 11px!important;
  }
  .vmv32 .vmv32-servicebar__question{
    width:auto!important;
    max-width:145px!important;
    font-size:12px!important;
    line-height:1.22!important;
  }
  .vmv32 .vmv32-servicebar__icons{
    gap:9px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    padding:2px 0 4px!important;
  }
  .vmv32 .vmv32-servicebar__icons::-webkit-scrollbar{display:none!important}
  .vmv32 .vmv32-service-icon{
    width:64px!important;
    flex:0 0 64px!important;
    font-size:8.5px!important;
    white-space:normal!important;
    text-align:center!important;
  }
  .vmv32 .vmv32-service-icon__visual,
  .vmv32 .vmv32-service-icon__grid{
    width:50px!important;
    height:50px!important;
  }
  .vmv32 .vmv32-service-search{
    grid-column:1/-1!important;
    width:min(100%,520px)!important;
    height:40px!important;
    justify-self:end!important;
  }
}

/* Phones: stack the prompt, swipeable service rail and search. This avoids the
   cramped 115px + icon row used by the earlier pixel-match implementation. */
@media (max-width:700px){
  .vmv32 .vmv32-servicebar__inner{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto auto!important;
    gap:8px!important;
    min-height:0!important;
    padding:11px 0 12px!important;
  }
  .vmv32 .vmv32-servicebar__question{
    width:100%!important;
    max-width:none!important;
    font-size:12px!important;
    line-height:1.2!important;
  }
  .vmv32 .vmv32-servicebar__question br{display:none!important}
  .vmv32 .vmv32-servicebar__question strong{margin-left:3px!important}
  .vmv32 .vmv32-servicebar__icons{
    width:100%!important;
    gap:10px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    scroll-snap-type:x proximity!important;
    padding:2px 0 4px!important;
  }
  .vmv32 .vmv32-servicebar__icons::-webkit-scrollbar{display:none!important}
  .vmv32 .vmv32-service-icon{
    width:66px!important;
    flex:0 0 66px!important;
    min-width:66px!important;
    font-size:8.5px!important;
    line-height:1.15!important;
    white-space:normal!important;
    text-align:center!important;
    scroll-snap-align:start!important;
  }
  .vmv32 .vmv32-service-icon__visual,
  .vmv32 .vmv32-service-icon__grid{
    width:50px!important;
    height:50px!important;
  }
  .vmv32 .vmv32-service-icon__visual img{
    width:58px!important;
    height:58px!important;
  }
  .vmv32 .vmv32-service-search{
    grid-column:1!important;
    width:100%!important;
    height:42px!important;
    margin-top:1px!important;
  }
  .vmv32 .vmv32-service-search input{
    height:40px!important;
    font-size:11px!important;
  }
  .vmv32 .vmv32-service-search button{
    width:44px!important;
    flex:0 0 44px!important;
  }
}

/* ================================================================
   V3.2.36 — Lightweight editable Mega Menu (Dịch vụ)
   ================================================================ */
@media (min-width:981px){
  .vmv32-nav-mega{height:100%;display:flex;align-items:stretch}
  .vmv32-nav-mega__trigger{gap:6px!important}
  .vmv32-nav-chevron{width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-1px);transform-origin:center;transition:transform .18s ease;flex:0 0 auto}
  .vmv32-nav-mega.is-open .vmv32-nav-chevron,.vmv32-nav-mega:focus-within .vmv32-nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
  .vmv32-mega-menu{position:absolute;z-index:120;top:100%;left:50%;width:min(1180px,calc(100vw - 48px));transform:translateX(-50%) translateY(6px);background:#fff;border:1px solid #dbe8f3;border-top:3px solid #0d75c9;border-radius:0 0 14px 14px;box-shadow:0 18px 42px rgba(18,65,105,.16);padding:22px 24px 0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,visibility .16s ease,transform .16s ease}
  .vmv32-nav-mega:hover .vmv32-mega-menu,.vmv32-nav-mega:focus-within .vmv32-mega-menu,.vmv32-nav-mega.is-open .vmv32-mega-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
  .vmv32-mega__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px}
  .vmv32-mega__column{min-width:0}
  .vmv32-mega__title{font-size:13px;line-height:1.25;font-weight:700;color:#074f91;margin:0 0 8px;padding:0 0 8px;border-bottom:1px solid #e4edf5}
  .vmv32-nav .vmv32-mega__links a{height:auto!important;min-height:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;padding:7px 2px!important;font-size:11.5px!important;line-height:1.35!important;font-weight:400!important;color:#334d63!important;white-space:normal!important;border-radius:5px}
  .vmv32-nav .vmv32-mega__links a:after{display:none!important;content:none!important}
  .vmv32-nav .vmv32-mega__links a span{color:#83a9c8;opacity:0;transform:translateX(-3px);transition:.15s ease}
  .vmv32-nav .vmv32-mega__links a:hover,.vmv32-nav .vmv32-mega__links a:focus{color:#075eb0!important;background:#f1f8fd;padding-left:7px!important;padding-right:7px!important;outline:none}
  .vmv32-nav .vmv32-mega__links a:hover span,.vmv32-nav .vmv32-mega__links a:focus span{opacity:1;transform:none}
  .vmv32-mega__footer{margin:18px -24px 0;padding:12px 24px;background:#f5faff;border-top:1px solid #dfedf8;display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:0 0 13px 13px;color:#597287;font-size:11px}
  .vmv32-nav .vmv32-mega__all{height:34px!important;display:inline-flex!important;align-items:center!important;gap:8px!important;padding:0 13px!important;border-radius:7px!important;background:#0b69b8!important;color:#fff!important;font-size:10.5px!important;font-weight:700!important;white-space:nowrap!important}
  .vmv32-nav .vmv32-mega__all:after{display:none!important;content:none!important}
  .vmv32-nav .vmv32-mega__all:hover{background:#08569a!important}
}
@media (min-width:981px) and (max-width:1120px){
  .vmv32-mega-menu{width:calc(100vw - 30px);padding-left:18px;padding-right:18px}
  .vmv32-mega__grid{gap:12px}
  .vmv32-mega__title{font-size:11.5px}
  .vmv32-nav .vmv32-mega__links a{font-size:10px!important;padding-top:6px!important;padding-bottom:6px!important}
  .vmv32-mega__footer{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
}

/* Mobile/tablet accordion. Desktop Mega Menu is not duplicated here. */
.vmv32-mobile-services{display:block;border-bottom:1px solid #edf2f7}
.vmv32-mobile-services__toggle{width:100%;min-height:44px;border:0;background:transparent;color:#124d87;font-family:inherit;font-size:inherit;font-weight:700;padding:10px 6px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left}
.vmv32-mobile-services__chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .18s ease;margin-right:5px}
.vmv32-mobile-services__toggle[aria-expanded="true"] .vmv32-mobile-services__chevron{transform:rotate(225deg)}
.vmv32-mobile-services__panel{padding:5px 4px 12px;background:#f8fbfe;border-radius:8px;margin-bottom:6px}
.vmv32-mobile-services__panel .vmv32-mega__grid{display:contents}
.vmv32-mobile-services__panel .vmv32-mega__column{padding:8px 9px}
.vmv32-mobile-services__panel .vmv32-mega__title{font-size:11.5px;font-weight:700;color:#0758a6;margin-bottom:4px}
.vmv32-mobile-services__panel .vmv32-mega__links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px 10px}
.vmv32-mobile-nav .vmv32-mobile-services__panel a{padding:6px 0!important;font-size:10.5px!important;line-height:1.3!important;font-weight:400!important;color:#3b566d!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:5px!important}
.vmv32-mobile-nav .vmv32-mobile-services__panel a span{color:#8da9be}
.vmv32-mobile-nav .vmv32-mobile-services__all{margin:6px 9px 0!important;padding:9px 11px!important;border-radius:7px;background:#0b69b8;color:#fff!important;font-weight:700!important;justify-content:center!important}
@media (max-width:700px){
  .vmv32-mobile-services__panel .vmv32-mega__links{grid-template-columns:1fr 1fr}
  .vmv32-mobile-services__panel .vmv32-mega__column{padding:7px 8px}
  .vmv32-mobile-nav .vmv32-mobile-services__panel a{font-size:10px!important}
}
@media (prefers-reduced-motion:reduce){
  .vmv32-mega-menu,.vmv32-nav-chevron,.vmv32-mobile-services__chevron,.vmv32-mega__links a,.vmv32-mega__links a span{transition:none!important}
}


/* ================================================================
   V3.2.37 — Competitive service information architecture
   ================================================================ */
@media (min-width:981px){
  .vmv32-mega-menu{width:min(1240px,calc(100vw - 42px));padding-top:17px}
  .vmv32-mega__intro{display:flex;align-items:baseline;gap:10px;margin:0 0 14px;padding:0 1px 11px;border-bottom:1px solid #edf2f6;color:#688197;font-size:10.5px;line-height:1.35}
  .vmv32-mega__intro strong{font-size:12px;color:#0a5da8;font-weight:700}
  .vmv32-mega__grid{gap:18px}
  .vmv32-mega__column{padding:0 4px}
  .vmv32-mega__title{font-size:12.5px;margin-bottom:6px;padding-bottom:7px}
  .vmv32-nav .vmv32-mega__links a{font-size:11px!important;padding:6.5px 3px!important}
  .vmv32-mega__footer{padding-top:10px;padding-bottom:10px;gap:14px}
  .vmv32-mega__quicklinks{display:flex;align-items:center;gap:6px 14px;flex-wrap:wrap;min-width:0}
  .vmv32-nav .vmv32-mega__quicklinks a{height:auto!important;min-height:0!important;padding:3px 0!important;font-size:10.5px!important;line-height:1.3!important;font-weight:700!important;color:#315d81!important;white-space:nowrap!important}
  .vmv32-nav .vmv32-mega__quicklinks a:after{display:none!important;content:none!important}
  .vmv32-nav .vmv32-mega__quicklinks a:hover,.vmv32-nav .vmv32-mega__quicklinks a:focus{color:#075eb0!important;text-decoration:underline;text-underline-offset:3px;background:transparent!important}
}
@media (min-width:981px) and (max-width:1120px){
  .vmv32-mega__intro{margin-bottom:10px}
  .vmv32-mega__grid{gap:9px}
  .vmv32-mega__column{padding:0 1px}
  .vmv32-nav .vmv32-mega__links a{font-size:9.8px!important}
  .vmv32-nav .vmv32-mega__quicklinks a{font-size:9.6px!important}
}
.vmv32-mobile-services__panel .vmv32-mega__quicklinks.is-mobile{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin:7px 9px 3px;padding-top:9px;border-top:1px solid #dfeaf3}
.vmv32-mobile-nav .vmv32-mobile-services__panel .vmv32-mega__quicklinks.is-mobile a{padding:7px 8px!important;border:1px solid #e1ebf3;border-radius:7px;background:#fff;font-size:10px!important;font-weight:700!important;color:#1e5e94!important;justify-content:center!important;text-align:center!important}
@media (max-width:430px){
  .vmv32-mobile-services__panel .vmv32-mega__quicklinks.is-mobile{grid-template-columns:1fr 1fr}
}


/* V3.2.39 – one semantic H1 + dialog-heading cleanup. */
.vmv32-hero .vmv32-hero__display-title{margin:0;}
.vmv32-modal__title{font-weight:700;}
