/* MedLife brand source of truth. Presentation only; no layout/menu state logic. */
:root{
 --brand-navy:#10233F;--brand-red:#D7192D;--brand-red-hover:#B91526;
 --text-primary:#1F2933;--text-secondary:#667085;--bg-soft:#F6F8FA;--border-light:#E3E8EE;--brand-white:#FFFFFF;
 --brand-navy-soft:#EDF1F6;--brand-border-hover:#AAB8CA;--brand-footer-muted:#C3CDDB;--brand-footer-line:#34465F;--brand-footer-hover:#FF7887;
 --brand-success:#28734F;--brand-success-soft:#EFF7F2;--brand-error-soft:#FFF1F3;
 --brand-radius:8px;--brand-button-padding:12px 20px;--brand-button-weight:600;--brand-focus:2px solid var(--brand-navy);--brand-shadow:0 8px 24px rgb(16 35 63 / 8%);
 --ml-ink:var(--text-primary);--ml-muted:var(--text-secondary);--ml-red:var(--brand-red);--ml-line:var(--border-light);
 --primary-color:var(--brand-red);--fs-color-primary:var(--brand-red);--fs-color-secondary:var(--brand-navy);
}
body{color:var(--text-primary)}h1,h2,h3,h4,h5,h6,.ml-home h1,.ml-home h2,.ml-home h3{color:var(--brand-navy)}
a{color:var(--brand-navy)}a:hover{color:var(--brand-red)}
body :is(a,button,input,select,textarea):focus-visible{outline:var(--brand-focus)!important;outline-offset:3px}
/* Stable horizontal asset slot: replace the theme logo asset, not this CSS. */
#header #logo{width:200px;max-width:22vw}#header #logo a{display:flex;align-items:center;max-width:100%}#header #logo img{width:100%;height:auto;max-height:48px!important;object-fit:contain;object-position:left center}
#header .nav>li>a,#header .header-cart-link,#header a:has(>.icon-user),#header .header-cart-link i,#header .icon-user{color:var(--brand-navy)!important}
#header .nav>li>a:hover,#header .nav>li.active>a,#header .nav>li.current-menu-item>a{color:var(--brand-red)!important}
#header input.search-field{background:var(--bg-soft);border-color:var(--border-light);color:var(--text-primary)}
#header .searchform .button{background:var(--brand-red)!important;color:var(--brand-white)!important;border-radius:0 var(--brand-radius) var(--brand-radius) 0}
#header .searchform .button:hover{background:var(--brand-red-hover)!important}
#header .header-cart-link [data-icon-label]:after{background:var(--brand-navy)!important;color:var(--brand-white)!important;border-color:var(--brand-white)}
#header .header-cart-link:hover,#header a:has(>.icon-user):hover{background:var(--brand-navy-soft)}
/* Existing dropdown geometry and accordion logic remain in their own stylesheet. */
#header .ml-catalog-menu>.nav-dropdown{background:var(--brand-white);border-color:var(--border-light);box-shadow:var(--brand-shadow)}
#header .ml-menu-heading,.nav-sidebar .ml-catalog-menu .ml-group-toggle{color:var(--brand-navy)!important}
#header .ml-menu-group>.sub-menu>li>a,.mobile-sidebar .nav-sidebar .ml-menu-group>.sub-menu a{color:var(--text-secondary)!important}
#header .ml-menu-group>.sub-menu>li>a:hover,#header .ml-menu-group>.sub-menu>li>a:focus-visible,.nav-sidebar .ml-menu-group>.sub-menu a:hover{color:var(--brand-red)!important;background:var(--bg-soft)}
.mobile-sidebar .nav-sidebar>li>a,.mobile-sidebar .nav-sidebar .toggle{color:var(--brand-navy)!important}
/* Homepage: retain composition, replace surface/text accents only. */
.ml-hero,.ml-feature-band,.ml-promo,.ml-promo:nth-child(2),.ml-help{background:var(--bg-soft)}
.ml-hero h1 span,.ml-category-arrow,.ml-service-strip>a>span,.ml-promo-link>span,.ml-hero-link>span{color:var(--brand-red)}
.ml-hero-copy>p,.ml-feature-band p,.ml-promo p,.ml-help p,.ml-home-seo,.ml-eyebrow,.ml-category p,.ml-hero-product span{color:var(--text-secondary)}
.ml-hero-product b,.ml-home :is(.ml-hero-link,.ml-promo-link,.ml-section-head>a),.ml-home-seo a{color:var(--brand-navy)}
.ml-home :is(.ml-hero-link,.ml-promo-link,.ml-section-head>a):hover,.ml-home-seo a:hover{color:var(--brand-red)}
.ml-hero-link,.ml-promo-link{border-color:var(--brand-border-hover)}
.ml-category,.ml-promo,.ml-hero-product,.ml-home-seo,.ml-service-strip,.ml-hero-product span{border-color:var(--border-light)}
.ml-category:hover,.ml-category:focus-visible,.ml-hero-product:hover,.ml-hero-product:focus-visible{border-color:var(--brand-border-hover);box-shadow:var(--brand-shadow)}
/* Action buttons, excluding menu toggles, quantity controls and icon-only UI. */
body :is(.ml-button,a.button,button.button,input.button,input[type=submit],.single_add_to_cart_button){background:var(--brand-red);border-color:var(--brand-red);color:var(--brand-white);border-radius:var(--brand-radius);padding:var(--brand-button-padding);font-weight:var(--brand-button-weight);text-shadow:none;box-shadow:none}
body :is(.ml-button,a.button,button.button,input.button,input[type=submit],.single_add_to_cart_button):hover{background:var(--brand-red-hover);border-color:var(--brand-red-hover);color:var(--brand-white);box-shadow:none}
body :is(.ml-button-dark,.button.secondary,.button.alt){background:var(--brand-navy);border-color:var(--brand-navy);color:var(--brand-white)}
body :is(.ml-button-dark,.button.secondary,.button.alt):hover{background:var(--brand-navy-soft);border-color:var(--brand-navy);color:var(--brand-navy)!important}
body .button.is-outline{background:transparent;color:var(--brand-navy);border-color:var(--brand-navy)}body .button.is-outline:hover{background:var(--brand-navy-soft);color:var(--brand-navy)}
body :is(.single_add_to_cart_button,.checkout-button,#place_order){background:var(--brand-red)!important;border-color:var(--brand-red)!important;color:var(--brand-white)!important}
body :is(.single_add_to_cart_button,.checkout-button,#place_order):hover{background:var(--brand-red-hover)!important;border-color:var(--brand-red-hover)!important}
/* Product cards retain markup, image sizing, and content. */
.product-small.box{border:1px solid var(--border-light);border-radius:12px;background:var(--brand-white);transition:border-color .18s,box-shadow .18s}
.product-small.box:hover{border-color:var(--brand-border-hover);box-shadow:var(--brand-shadow)}
.product-title a,.name.product-title a,.product-small .name a{color:var(--brand-navy)}.product-title a:hover,.product-small .name a:hover{color:var(--brand-red)}
.price,.price .amount,.price ins,.price ins .amount,.woocommerce-Price-amount{color:var(--text-primary)}.price del,.price del .amount{color:var(--text-secondary)}
.badge-inner.on-sale,.badge-inner.onsale{background:var(--brand-red);color:var(--brand-white)}.out-of-stock-label{color:var(--brand-navy);background:var(--bg-soft)}
/* Forms: UI only. */
input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),textarea,select,.select2-container .select2-selection{border-color:var(--border-light);border-radius:var(--brand-radius);background-color:var(--brand-white);color:var(--text-primary);box-shadow:none}
input:focus,textarea:focus,select:focus,.select2-container--focus .select2-selection{border-color:var(--brand-navy);box-shadow:0 0 0 2px var(--brand-navy-soft)}
.woocommerce-invalid input,.woocommerce-invalid select,.woocommerce-invalid .select2-selection{border-color:var(--brand-red)!important}
.woocommerce-error,.woocommerce-error .message-icon,.woocommerce-error a{color:var(--brand-red)}.woocommerce-error{background:var(--brand-error-soft);border-color:var(--brand-red)}
.woocommerce-message{color:var(--brand-success);background:var(--brand-success-soft);border-color:var(--brand-success)}
.woocommerce-info{color:var(--brand-navy);background:var(--bg-soft);border-color:var(--border-light)}
input[type=checkbox],input[type=radio]{accent-color:var(--brand-red)}
/* Footer and contact launcher. */
.ml-footer,#footer .absolute-footer,body #ml-analytics-settings{background:var(--brand-navy)!important;color:var(--brand-footer-muted)!important}
.ml-footer h3,.ml-footer .ml-footer-phone{color:var(--brand-white)}.ml-footer a{color:var(--brand-footer-muted)}
.ml-footer a:hover,.ml-footer a:focus-visible{color:var(--brand-footer-hover)}.ml-footer-note{color:var(--brand-white);border-color:var(--brand-footer-line)}
.ml-footer-social a,.ml-footer section+section,#footer .absolute-footer{border-color:var(--brand-footer-line)}
.ml-footer-social a:hover{background:var(--brand-footer-line)}.ml-footer a:focus-visible{outline-color:var(--brand-white)!important}
#medlife-contact-button{background:var(--brand-red)!important;color:var(--brand-white)!important;border-color:var(--brand-red)!important}#medlife-contact-button:hover{background:var(--brand-red-hover)!important}
@media(max-width:849px){#header #logo{width:170px;max-width:46vw}#header #logo img{max-height:40px!important}}
@media(prefers-reduced-motion:reduce){.product-small.box{transition:none}}
