/* =========================================================
   VicMos Theme 4.0 — light, confident platform layer
   White-led surfaces, restrained accents, lighter iconography.
========================================================= */
:root{--v4-ink:#15231d;--v4-text:#5f6c65;--v4-muted:#87918c;--v4-green:#146b59;--v4-green-deep:#0f5547;--v4-soft:#f7f9f8;--v4-mint:#eef7f3;--v4-cream:#fffaf2;--v4-line:#e4eae7;--v4-shadow:0 16px 42px rgba(21,43,32,.08)}
body{background:#fff;color:var(--v4-text)}
/* lighter line icons */
.vmw-support-option-icon,.vmw-floating-support-icon,.vwt-icon,.vmw-benefit-icon{background:#fff!important;border:1px solid var(--v4-line)!important;box-shadow:none!important;color:var(--v4-green)!important}
.vmw-support-option-icon svg,.vmw-floating-support-icon svg,.vwt-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.5!important;stroke-linecap:round;stroke-linejoin:round}
.vmw-floating-support{background:#fff!important;color:var(--v4-ink)!important;border:1px solid var(--v4-line)!important;box-shadow:0 12px 34px rgba(18,42,31,.13)!important}
.vmw-support-menu{background:#fff!important;border:1px solid var(--v4-line)!important;border-radius:20px!important;box-shadow:0 22px 60px rgba(18,42,31,.14)!important;padding:10px!important}
.vmw-support-menu-head{padding:10px 10px 12px!important}.vmw-support-menu-head strong{color:var(--v4-ink)!important}.vmw-support-menu-head small{color:var(--v4-muted)!important}
.vmw-support-option{border:1px solid transparent!important;border-radius:14px!important;background:#fff!important;padding:12px!important}.vmw-support-option:hover{background:var(--v4-soft)!important;border-color:var(--v4-line)!important}.vmw-support-option strong{color:var(--v4-ink)!important}.vmw-support-option small{color:var(--v4-muted)!important}
/* mobile nav: crisp rather than heavy */
.vwt-mobile-bottom-nav,.vmw-bottom-nav{background:rgba(255,255,255,.97)!important;border-top:1px solid var(--v4-line)!important;box-shadow:0 -8px 24px rgba(21,43,32,.05)!important}.vwt-mobile-bottom-nav a,.vmw-bottom-nav a{color:#6f7b75!important}.vwt-mobile-bottom-nav svg,.vmw-bottom-nav svg{fill:none!important;stroke:currentColor!important;stroke-width:1.6!important}.vwt-mobile-bottom-nav .is-active,.vmw-bottom-nav .is-active{color:var(--v4-green)!important}
/* focus mode: no competing chrome */
body.vmw-focus-mode .vwt-mobile-bottom-nav,body.vmw-focus-mode .vmw-bottom-nav,body.vmw-focus-mode .site-header,body.vmw-focus-mode .site-footer,body.vmw-focus-mode .vwt-mobile-drawer,body.vmw-focus-mode .vmw-support-launcher{display:none!important}
body.vmw-focus-mode .site-content,body.vmw-focus-mode #content{padding-top:0!important;margin-top:0!important}
/* sales pages */
body.vmw-sales-page .entry-header{max-width:900px;margin:58px auto 28px;padding:0 20px;text-align:center}body.vmw-sales-page .entry-title{font-size:clamp(40px,6vw,72px);line-height:.98;letter-spacing:-2.5px;color:var(--v4-ink)}body.vmw-sales-page .entry-content{max-width:100%!important;margin:0!important;padding:0!important}body.vmw-sales-page .vmw-campaign-content{font-size:16px;line-height:1.8;color:var(--v4-text)}body.vmw-sales-page .vmw-campaign-content>p,body.vmw-sales-page .vmw-campaign-content>h2,body.vmw-sales-page .vmw-campaign-content>h3,body.vmw-sales-page .vmw-campaign-content>ul{max-width:820px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}body.vmw-sales-page .vmw-campaign-content>h2{margin-top:72px;color:var(--v4-ink);font-size:clamp(31px,4vw,48px);line-height:1.06;letter-spacing:-1.5px}body.vmw-sales-page .vmw-campaign-content>h3{margin-top:38px;color:var(--v4-ink)}
/* booking: unique clinical/editorial feel, no screenshot-copy styling */
body.vwt-booking-page{background:#fff!important}body.vwt-booking-page .vmw-booking-shell,body.vwt-booking-page .vmw-booking{background:#fff!important}body.vwt-booking-page .vmw-booking-card,body.vwt-booking-page .vmw-booking-panel{border:1px solid var(--v4-line)!important;background:#fff!important;box-shadow:var(--v4-shadow)!important;border-radius:20px!important}body.vwt-booking-page .vmw-booking-step-icon{background:#fff!important;color:var(--v4-green)!important;border:1px solid var(--v4-line)!important;box-shadow:none!important}body.vwt-booking-page .vmw-booking-step-icon svg{fill:none!important;stroke:currentColor!important;stroke-width:1.5!important}body.vwt-booking-page .button,body.vwt-booking-page button[type=submit]{border-radius:11px!important}
/* forms */
input,select,textarea{border-color:var(--v4-line)!important;box-shadow:none!important}input:focus,select:focus,textarea:focus{border-color:#7fb9a6!important;box-shadow:0 0 0 3px rgba(20,107,89,.08)!important}
@media(max-width:720px){body.vmw-sales-page .entry-header{margin-top:38px}body.vmw-sales-page .entry-title{font-size:42px;letter-spacing:-1.8px}.vmw-support-menu{left:10px!important;right:10px!important;max-width:none!important}.vmw-floating-support em{display:none!important}}

/* =========================================================
   VicMos Theme 4.0.1 — support sheet + floating UI polish
========================================================= */
@media(max-width:720px){
  /* The menu is fixed to the viewport, not the tiny launcher button. */
  .vmw-support-menu{position:fixed!important;left:12px!important;right:12px!important;bottom:calc(158px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:none!important;min-width:0!important;max-height:min(520px,calc(100dvh - 190px))!important;margin:0!important;padding:8px!important;overflow:auto!important;border-radius:20px!important}
  .vmw-support-menu-head{padding:10px 10px 12px!important}
  .vmw-support-option{width:100%!important;min-width:0!important;grid-template-columns:38px minmax(0,1fr) 16px!important;padding:13px 11px!important}
  .vmw-support-option>span:nth-child(2){display:block!important;min-width:0!important;overflow:visible!important}
  .vmw-support-option strong,.vmw-support-option small{display:block!important;visibility:visible!important;opacity:1!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:normal!important;overflow-wrap:break-word!important}
  .vmw-support-option strong{font-size:13px!important}
  .vmw-support-option small{font-size:10.5px!important}
  .vmw-support-option-icon{width:38px!important;height:38px!important}
  .vmw-support-option b{display:block!important}
  .vmw-floating-support{width:50px!important;min-width:50px!important;height:50px!important;border-radius:15px!important}
  /* Translator remains available, but no longer competes with an open support sheet. */
  body.vmw-support-open .vmat-edge{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  .vmat-edge{--vmat-size:30px!important;z-index:9990!important}
  .vmat-edge-trigger{background:#fff!important;border:1px solid #dfe8e4!important;box-shadow:0 8px 22px rgba(18,42,31,.12)!important}
  .vmat-edge .vmat-current-code{color:#146b59!important;border:1px solid #e3ebe7!important}
}

/* 4.1.0 — booking focus refinement */
body.vwt-booking-page.vmw-focus-mode{background:#fff!important}body.vwt-booking-page.vmw-focus-mode .site-header,body.vwt-booking-page.vmw-focus-mode .site-footer,body.vwt-booking-page.vmw-focus-mode .vwt-mobile-bottom-nav,body.vwt-booking-page.vmw-focus-mode .vmw-bottom-nav,body.vwt-booking-page.vmw-focus-mode .vmw-support-launcher,body.vwt-booking-page.vmw-focus-mode .vmw-pwa-install-banner,body.vwt-booking-page.vmw-focus-mode .vwt-announcement{display:none!important}body.vwt-booking-page .entry-header,body.vwt-booking-page .page-header,body.vwt-booking-page .breadcrumbs,body.vwt-booking-page .ct-breadcrumbs{display:none!important}body.vwt-booking-page main,body.vwt-booking-page .site-main,body.vwt-booking-page .entry-content{margin-top:0!important;padding-top:0!important}body.vwt-booking-page .vmw-booking-v2{max-width:760px!important}

/* 4.1.1 — premium appointment flow polish */
body.vwt-booking-page{--vmwb-accent:#0f7a60;--vmwb-accent-dark:#0b604c;--vmwb-ink:#15231d;--vmwb-muted:#6d7974;--vmwb-line:#dfe7e3;--vmwb-soft:#f7f9f8;background:linear-gradient(180deg,#fbfcfb 0,#fff 38%)!important}
body.vwt-booking-page .vmw-booking-v2{max-width:760px!important;margin:clamp(18px,4vw,42px) auto!important;padding:0 16px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-shell{border:1px solid var(--vmwb-line)!important;border-radius:26px!important;background:#fff!important;box-shadow:0 18px 55px rgba(20,48,38,.07)!important;overflow:hidden!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress{position:relative;padding:34px 34px 14px!important;gap:6px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress:before{content:"";position:absolute;left:12.5%;right:12.5%;top:57px;height:1px;background:#e5ebe8;z-index:0}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li{position:relative;z-index:1;color:#7b8580!important;font-size:12px!important;gap:8px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li span{width:44px!important;height:44px!important;border:1px solid #dce4e0!important;background:#fff!important;color:#7b8580!important;box-shadow:0 0 0 6px #fff;font-size:14px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li.is-active span,body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li.is-done span{background:var(--vmwb-accent)!important;border-color:var(--vmwb-accent)!important;color:#fff!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li.is-active em{color:var(--vmwb-ink)!important;font-weight:800!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-panel{padding:34px 34px 38px!important}
body.vwt-booking-page .vmw-booking-v2 h3{max-width:620px;margin:0 0 28px!important;color:var(--vmwb-ink)!important;font-size:clamp(28px,4vw,38px)!important;line-height:1.16!important;letter-spacing:-.035em!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-field{gap:9px!important;margin-bottom:20px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-field label,body.vwt-booking-page .vmw-booking-v2 .vmw-urgency-simple>label{color:var(--vmwb-ink)!important;font-size:16px!important;font-weight:800!important}
body.vwt-booking-page .vmw-booking-v2 input,body.vwt-booking-page .vmw-booking-v2 select,body.vwt-booking-page .vmw-booking-v2 textarea{min-height:56px!important;border:1px solid #ccd7d2!important;border-radius:14px!important;padding:13px 16px!important;background:#fff!important;color:var(--vmwb-ink)!important;font-size:16px!important;box-shadow:none!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
body.vwt-booking-page .vmw-booking-v2 textarea{min-height:104px!important}
body.vwt-booking-page .vmw-booking-v2 input:focus,body.vwt-booking-page .vmw-booking-v2 select:focus,body.vwt-booking-page .vmw-booking-v2 textarea:focus{border-color:#82b4a7!important;box-shadow:0 0 0 4px rgba(15,122,96,.11)!important;background:#fcfefd!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-urgency-grid span{min-height:52px!important;border-color:var(--vmwb-line)!important;border-radius:13px!important;background:#fff!important;color:#34443d!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-urgency-grid input:checked+span{border-color:#76aa9c!important;background:#f0f8f5!important;color:var(--vmwb-accent-dark)!important;box-shadow:inset 0 0 0 1px #76aa9c}
body.vwt-booking-page .vmw-booking-v2 .vmw-step-actions{gap:14px!important;margin-top:26px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-primary,body.vwt-booking-page .vmw-booking-v2 .vmw-secondary{min-height:54px!important;border-radius:14px!important;font-size:15px!important;font-weight:850!important;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
body.vwt-booking-page .vmw-booking-v2 .vmw-primary{background:var(--vmwb-accent)!important;border-color:var(--vmwb-accent)!important;box-shadow:0 9px 22px rgba(15,122,96,.14)!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-primary:hover{background:var(--vmwb-accent-dark)!important;transform:translateY(-1px)}
body.vwt-booking-page .vmw-booking-v2 .vmw-secondary{background:#fff!important;border-color:#dbe3df!important;color:var(--vmwb-ink)!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-review{padding:6px 26px!important;border:1px solid #edf1ef!important;border-radius:20px!important;background:var(--vmwb-soft)!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-review-row{padding:18px 0!important;border-color:#dfe6e2!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-review-row strong{color:var(--vmwb-ink)!important;font-size:16px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-review-row span{color:var(--vmwb-muted)!important;font-size:16px!important;line-height:1.5!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-location{margin:24px 0 8px!important;padding:13px 15px;border:1px solid #e8eeeb;border-radius:13px;background:#fbfcfb;color:var(--vmwb-muted)!important;font-size:15px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-location strong{color:var(--vmwb-ink)!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-success{padding:58px 34px!important}
body.vwt-booking-page .vmw-booking-v2 .vmw-booking-check{border-radius:50%!important;background:#eef8f4!important;color:var(--vmwb-accent)!important}
@media(max-width:640px){body.vwt-booking-page .vmw-booking-v2{margin:12px auto 28px!important;padding:0 10px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-shell{border-radius:22px!important;box-shadow:0 12px 36px rgba(20,48,38,.055)!important}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress{padding:26px 16px 8px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress:before{top:48px}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li span{width:42px!important;height:42px!important;box-shadow:0 0 0 4px #fff}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li em{font-size:10.5px!important;white-space:nowrap}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-panel{padding:30px 24px 32px!important}body.vwt-booking-page .vmw-booking-v2 h3{font-size:30px!important;margin-bottom:26px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-field{margin-bottom:18px!important}body.vwt-booking-page .vmw-booking-v2 input,body.vwt-booking-page .vmw-booking-v2 select{min-height:54px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-step-actions{gap:10px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-primary,body.vwt-booking-page .vmw-booking-v2 .vmw-secondary{min-height:54px!important;padding:12px 14px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-review{padding:5px 20px!important}}
@media(max-width:390px){body.vwt-booking-page .vmw-booking-v2 .vmw-booking-progress li em{font-size:9.5px!important}body.vwt-booking-page .vmw-booking-v2 .vmw-booking-panel{padding-left:20px!important;padding-right:20px!important}}


/* 4.1.2 — focused mobile commerce screens */
@media (max-width:760px){
  /* Product/cart/checkout pages deliberately omit the persistent five-item nav. */
  body.single-product:not(.vicmos-mobile-nav-enabled){
    padding-bottom:calc(96px + env(safe-area-inset-bottom))!important;
  }
  body.single-product:not(.vicmos-mobile-nav-enabled) .vwt-mobile-bottom-nav,
  body.single-product:not(.vicmos-mobile-nav-enabled) .vmw-bottom-nav,
  body.woocommerce-cart:not(.vicmos-mobile-nav-enabled) .vwt-mobile-bottom-nav,
  body.woocommerce-cart:not(.vicmos-mobile-nav-enabled) .vmw-bottom-nav,
  body.woocommerce-checkout:not(.vicmos-mobile-nav-enabled) .vwt-mobile-bottom-nav,
  body.woocommerce-checkout:not(.vicmos-mobile-nav-enabled) .vmw-bottom-nav{
    display:none!important;
  }
  body.single-product:not(.vicmos-mobile-nav-enabled) .vmw-sticky-cart{
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
  }
  body.single-product:not(.vicmos-mobile-nav-enabled) .vmw-floating-whatsapp,
  body.single-product:not(.vicmos-mobile-nav-enabled) .vmw-support-launcher{
    bottom:calc(104px + env(safe-area-inset-bottom))!important;
  }
  body.woocommerce-cart:not(.vicmos-mobile-nav-enabled),
  body.woocommerce-checkout:not(.vicmos-mobile-nav-enabled){
    padding-bottom:calc(20px + env(safe-area-inset-bottom))!important;
  }
  body.woocommerce-cart:not(.vicmos-mobile-nav-enabled) .vmw-floating-whatsapp,
  body.woocommerce-cart:not(.vicmos-mobile-nav-enabled) .vmw-support-launcher,
  body.woocommerce-checkout:not(.vicmos-mobile-nav-enabled) .vmw-floating-whatsapp,
  body.woocommerce-checkout:not(.vicmos-mobile-nav-enabled) .vmw-support-launcher{
    bottom:calc(20px + env(safe-area-inset-bottom))!important;
  }
}
