/*
Theme Name: Medlive Storefront Child
Theme URI: https://woocommerce.com/storefront/
Description: Medlive visual foundation for Storefront and WooCommerce. Staging use until reviewed.
Author: Medlive Website Project
Template: storefront
Version: 0.9.0
Text Domain: medlive-storefront-child
Requires PHP: 7.4
*/
:root {
  --medlive-navy: #072B50;
  --medlive-red: #C90023;
  --medlive-blue: #145DA0;
  --medlive-ice: #F2F7FC;
  --medlive-border: #DCE7F1;
}
body { color: #142B45; background: #fff; }
.site-header { background: #fff; border-bottom: 1px solid var(--medlive-border); }
.site-header .site-branding .site-title a,
.site-header .site-branding .site-description { color: var(--medlive-navy); }
.site-header .site-title a { font-weight: 800; }
.storefront-primary-navigation { background: var(--medlive-navy); }
.main-navigation ul.menu > li > a,
.main-navigation ul.nav-menu > li > a,
.site-header-cart .cart-contents { color: #fff; }
.main-navigation ul.menu > li > a:hover,
.main-navigation ul.nav-menu > li > a:hover { color: #dcefff; }
button, input[type=button], input[type=reset], input[type=submit],
.button, .added_to_cart, .widget a.button {
  border-radius: 7px; background: var(--medlive-red); border-color: var(--medlive-red); color: #fff;
}
button:hover, input[type=submit]:hover, .button:hover { background: #a8001d; color: #fff; }
a { color: var(--medlive-blue); }
a:hover { color: var(--medlive-red); }
.woocommerce-breadcrumb { color: #60778d; }
ul.products li.product { border: 1px solid var(--medlive-border); border-radius: 12px; padding: 15px; }
ul.products li.product img { border-radius: 8px; }
ul.products li.product .woocommerce-loop-product__title { color: var(--medlive-navy); }
.price, .woocommerce-Price-amount { color: var(--medlive-navy); font-weight: 750; }
.site-footer { background: #061B32; color: #d7e5f2; }
.site-footer a { color: #c6d9ec; }
.site-footer a:hover { color: #fff; }
.medlive-hero { background: linear-gradient(105deg,#f6fbff,#e8f3fb); padding: 64px 24px; }
.medlive-hero__inner { max-width: 1180px; margin: 0 auto; }
.medlive-hero h1 { color: var(--medlive-navy); font-size: clamp(2rem,4vw,3.3rem); line-height: 1.12; max-width: 780px; }
.medlive-hero p { color: #48637c; font-size: 1.1rem; max-width: 670px; }
.medlive-hero__actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 24px; }
.medlive-hero__actions a { display: inline-block; padding: 13px 22px; border-radius: 8px; font-weight: 700; text-decoration: none; }
.medlive-hero__actions .primary { background: var(--medlive-red); color: #fff; }
.medlive-hero__actions .secondary { background: #fff; color: var(--medlive-blue); border: 1px solid var(--medlive-blue); }
@media (max-width: 767px) {
  .medlive-hero { padding: 36px 16px; }
  .medlive-hero__actions a { width: 100%; text-align: center; }
  ul.products li.product { padding: 10px; }
}


/* V2 homepage content and product/category grids */
.medlive-section {padding: 54px 0;}
.medlive-section--soft {background:var(--medlive-ice);}
.medlive-wrap {max-width:1180px;margin:auto;padding:0 24px;}
.medlive-section__eyebrow {font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:var(--medlive-red);margin:0 0 10px;}
.medlive-section h2 {color:var(--medlive-navy);font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.2;margin:0 0 12px;}
.medlive-section__intro {max-width:720px;color:#506a80;margin:0 0 26px;}
.medlive-category-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0;}
.medlive-category-card {display:flex;flex-direction:column;gap:8px;min-height:128px;padding:21px;border:1px solid var(--medlive-border);border-radius:12px;background:white;text-decoration:none;box-shadow:0 3px 12px rgba(7,43,80,.04);transition:transform .2s,box-shadow .2s;}
.medlive-category-card:hover,.medlive-category-card:focus-visible {transform:translateY(-2px);box-shadow:0 8px 20px rgba(7,43,80,.11);}
.medlive-category-card strong {color:var(--medlive-navy);font-size:1.03rem;}
.medlive-category-card span {color:#60788c;font-size:.85rem;}
.medlive-empty-note {padding:18px;border:1px dashed #b6cddd;border-radius:10px;color:#536d80;background:white;}
.medlive-feature-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.medlive-feature {background:#fff;border:1px solid var(--medlive-border);border-radius:12px;padding:24px;}
.medlive-feature h3 {color:var(--medlive-navy);font-size:1.15rem;margin:0 0 8px;}
.medlive-feature p {color:#536c80;margin:0;}
.medlive-link {font-weight:700;text-decoration:underline;text-underline-offset:3px;}
.medlive-hero__actions a:focus-visible,.medlive-category-card:focus-visible,a:focus-visible,button:focus-visible {outline:3px solid #e39a00;outline-offset:3px;}
.medlive-hero__actions .primary:hover {background:#a8001d;color:#fff;}
.medlive-hero__actions .secondary:hover {background:#edf6fc;color:var(--medlive-navy);}
@media(max-width:900px){.medlive-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px){.medlive-section{padding:36px 0;}.medlive-wrap{padding:0 16px;}.medlive-feature-grid{grid-template-columns:1fr;}.medlive-category-card{min-height:108px;padding:16px;}}
@media(max-width:380px){.medlive-category-grid{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.medlive-category-card,.product{transition:none!important;}}

/* V3: WooCommerce Shop and single-product templates, Storefront-compatible */
body.woocommerce-shop .site-main > .page-title,
body.tax-product_cat .site-main > .page-title {color:var(--medlive-navy);font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.18;}
.woocommerce-result-count {color:#5b7184;font-size:.92rem;}
.woocommerce-ordering select {background:#fff;border:1px solid #b7cadd;border-radius:8px;min-height:44px;padding:9px 36px 9px 12px;color:var(--medlive-navy);}
.woocommerce ul.products,ul.products {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:24px 0 36px;}
.woocommerce ul.products::before,.woocommerce ul.products::after,ul.products::before,ul.products::after {display:none;}
.woocommerce ul.products li.product,ul.products li.product {float:none!important;width:auto!important;margin:0!important;min-width:0;text-align:left;display:flex;flex-direction:column;box-shadow:0 3px 14px rgba(7,43,80,.05);transition:box-shadow .2s,transform .2s;}
.woocommerce ul.products li.product:hover,ul.products li.product:hover {box-shadow:0 12px 26px rgba(7,43,80,.11);transform:translateY(-2px);}
.woocommerce ul.products li.product a img,ul.products li.product a img {width:100%;aspect-ratio:4/3;object-fit:contain;background:#f2f7fc;margin-bottom:14px;}
.woocommerce ul.products li.product .woocommerce-loop-product__title,ul.products li.product .woocommerce-loop-product__title {font-size:1.03rem;line-height:1.35;font-weight:750;min-height:2.7em;margin:0 0 8px;}
.woocommerce ul.products li.product .price,ul.products li.product .price {font-size:1.05rem;margin:0 0 12px;}
.woocommerce ul.products li.product .button,ul.products li.product .button {margin-top:auto;display:inline-flex;justify-content:center;align-items:center;min-height:44px;text-align:center;padding:11px 14px;}
.woocommerce span.onsale {background:var(--medlive-red);color:#fff;border-radius:7px;padding:6px 10px;}
.woocommerce-pagination .page-numbers li .page-numbers.current {background:var(--medlive-navy);color:#fff;}
.single-product div.product .product_title {font-size:clamp(1.7rem,3vw,2.45rem);line-height:1.2;color:var(--medlive-navy);}
.single-product div.product .woocommerce-product-gallery img {border-radius:12px;background:var(--medlive-ice);}
.single-product div.product .summary .price {font-size:1.6rem;color:var(--medlive-navy);}
.single-product div.product form.cart .quantity input.qty {min-height:44px;border-radius:7px;border:1px solid var(--medlive-border);}
.single-product div.product form.cart .single_add_to_cart_button {min-height:44px;padding:12px 22px;}
.single-product .woocommerce-tabs ul.tabs li.active a {color:var(--medlive-red);}
.single-product .woocommerce-product-details__short-description {color:#455e74;line-height:1.7;}
.woocommerce .woocommerce-message,.woocommerce .woocommerce-info {border-top-color:var(--medlive-blue);}
@media(max-width:1050px){.woocommerce ul.products,ul.products{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:767px){.woocommerce ul.products,ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}.woocommerce ul.products li.product,ul.products li.product{padding:10px;}.woocommerce ul.products li.product .woocommerce-loop-product__title,ul.products li.product .woocommerce-loop-product__title{font-size:.92rem;}.woocommerce ul.products li.product .button,ul.products li.product .button{width:100%;font-size:.85rem;padding:10px 8px;}.single-product div.product .summary .price{font-size:1.35rem;}}
@media(max-width:370px){.woocommerce ul.products,ul.products{grid-template-columns:1fr;}}
@media(prefers-reduced-motion:reduce){.woocommerce ul.products li.product,ul.products li.product{transition:none;transform:none!important;}}

.medlive-shop-intro{background:var(--medlive-ice);border-left:4px solid var(--medlive-blue);padding:17px 20px;margin:0 0 22px;border-radius:0 10px 10px 0;}.medlive-shop-intro strong{color:var(--medlive-navy);font-size:1.1rem;}.medlive-shop-intro p{margin:5px 0 0;color:#4d687f;}


/* V4 — WooCommerce Cart, Checkout, My Account: classic templates and block variants */
body.woocommerce-cart .entry-title,body.woocommerce-checkout .entry-title,body.woocommerce-account .entry-title{color:var(--medlive-navy);font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2;}
.woocommerce-cart-form,.cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review,.woocommerce-MyAccount-content,.woocommerce-MyAccount-navigation{background:#fff;border:1px solid var(--medlive-border);border-radius:12px;padding:22px;box-shadow:0 4px 16px rgba(7,43,80,.045);}
.woocommerce table.shop_table{border:1px solid var(--medlive-border);border-radius:9px;border-collapse:separate;overflow:hidden;}
.woocommerce table.shop_table th{color:var(--medlive-navy);background:var(--medlive-ice);font-weight:750;}
.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:14px 12px;vertical-align:middle;}
.woocommerce table.shop_table td.product-name a{color:var(--medlive-navy);font-weight:700;}
.woocommerce table.shop_table td.product-thumbnail img{width:74px;height:74px;object-fit:contain;border-radius:7px;background:var(--medlive-ice);}
.woocommerce .quantity .qty{min-height:44px;max-width:90px;border:1px solid #b8cbdc;border-radius:7px;background:#fff;}
.woocommerce-cart .cart-collaterals .cart_totals h2{color:var(--medlive-navy);font-size:1.4rem;}
.woocommerce .wc-proceed-to-checkout a.checkout-button,.woocommerce #payment #place_order,.woocommerce button.button.alt{background:var(--medlive-red);color:#fff;border-radius:8px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;}
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,.woocommerce #payment #place_order:hover,.woocommerce button.button.alt:hover{background:#a8001d;color:#fff;}
.woocommerce-checkout #customer_details h3,.woocommerce-checkout #order_review_heading{color:var(--medlive-navy);font-size:1.35rem;}
.woocommerce form .form-row label{color:#284a66;font-weight:650;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select{background:#fff;border:1px solid #b7cadc;border-radius:7px;min-height:44px;padding:10px 12px;color:#18364e;}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{outline:3px solid #a6d1f3;outline-offset:1px;}
.woocommerce-checkout #payment{background:var(--medlive-ice);border:1px solid var(--medlive-border);border-radius:10px;}
.woocommerce-checkout #payment div.payment_box{background:#e4eef8;color:#25445d;}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#e4eef8;}
.woocommerce-MyAccount-navigation ul{margin:0;list-style:none;}
.woocommerce-MyAccount-navigation ul li{border-bottom:1px solid var(--medlive-border);}
.woocommerce-MyAccount-navigation ul li:last-child{border-bottom:0;}
.woocommerce-MyAccount-navigation ul li a{display:block;padding:12px 8px;color:var(--medlive-navy);font-weight:650;text-decoration:none;}
.woocommerce-MyAccount-navigation ul li.is-active a{color:var(--medlive-red);border-left:3px solid var(--medlive-red);padding-left:12px;background:var(--medlive-ice);}
.woocommerce-account .woocommerce-Address-title h3{color:var(--medlive-navy);}
/* WooCommerce Cart/Checkout blocks — visual-only styles, no checkout logic overrides */
.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout{color:#203e56;}
.wc-block-components-sidebar,.wc-block-cart__main,.wc-block-checkout__main{min-width:0;}
.wc-block-components-totals-wrapper,.wc-block-components-order-summary,.wc-block-components-checkout-step{border-color:var(--medlive-border);}
.wc-block-components-button:not(.is-link){border-radius:8px;min-height:48px;}
.wc-block-components-button.wc-block-components-checkout-place-order-button,.wc-block-cart__submit-button{background:var(--medlive-red);color:#fff;}
.wc-block-components-button.wc-block-components-checkout-place-order-button:hover,.wc-block-cart__submit-button:hover{background:#a8001d;color:#fff;}
.wc-block-components-text-input input,.wc-block-components-combobox-control input{border-radius:7px;}
.wc-block-components-title,.wc-block-components-checkout-step__heading-title{color:var(--medlive-navy);}
.woocommerce-error,.woocommerce-info,.woocommerce-message{border-radius:8px;}
@media(max-width:767px){.woocommerce-cart-form,.cart_totals,.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review,.woocommerce-MyAccount-content,.woocommerce-MyAccount-navigation{padding:14px;}.woocommerce table.shop_table td,.woocommerce table.shop_table th{padding:10px 8px;}.woocommerce .wc-proceed-to-checkout a.checkout-button,.woocommerce #payment #place_order{width:100%;}.woocommerce-MyAccount-navigation{margin-bottom:18px;}}

/* V5 — Business dashboard: protected, read-only account view */
.medlive-business{max-width:1120px;margin:24px auto 64px;padding:0 20px;color:#203d57}
.medlive-business__heading{background:var(--medlive-navy);color:white;padding:30px;border-radius:14px;margin-bottom:24px}
.medlive-business__heading h1{color:#fff;margin:0 0 8px;font-size:clamp(1.65rem,3vw,2.4rem)}
.medlive-business__heading p{color:#d7e9f7;margin:0}
.medlive-business__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 25px}
.medlive-business__tile{background:white;border:1px solid var(--medlive-border);border-radius:12px;padding:22px;min-width:0}
.medlive-business__tile h2{color:var(--medlive-navy);font-size:1.05rem;margin:0 0 12px}
.medlive-business__tile p{margin:0;color:#536b80}
.medlive-business__tile a{display:inline-block;margin-top:10px;font-weight:700}
.medlive-business__orders{background:white;border:1px solid var(--medlive-border);border-radius:12px;padding:24px}
.medlive-business__orders h2{color:var(--medlive-navy);font-size:1.35rem}
.medlive-business__table-wrap{overflow-x:auto}
.medlive-business__orders table{width:100%;border-collapse:collapse;min-width:480px}
.medlive-business__orders th,.medlive-business__orders td{padding:13px;text-align:left;border-bottom:1px solid var(--medlive-border)}
.medlive-business__orders th{background:var(--medlive-ice);color:var(--medlive-navy)}
.medlive-business__notice{padding:20px;border-left:4px solid var(--medlive-blue);background:var(--medlive-ice);border-radius:6px}
@media(max-width:760px){.medlive-business{padding:0 12px}.medlive-business__grid{grid-template-columns:1fr}.medlive-business__heading{padding:22px}.medlive-business__orders{padding:14px}}

/* Stage 18: RFQ and tender enquiry forms */
.medlive-enquiry {max-width:820px;margin:35px auto;padding:30px;border:1px solid var(--medlive-border);border-radius:14px;background:#fff;}
.medlive-enquiry h2 {color:var(--medlive-navy);margin:0 0 12px;}
.medlive-enquiry form {display:grid;gap:18px;margin-top:24px;}
.medlive-enquiry__grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;}
.medlive-enquiry label {display:block;font-weight:650;color:var(--medlive-navy);}
.medlive-enquiry input:not([type=checkbox]),.medlive-enquiry textarea {width:100%;display:block;margin-top:6px;padding:12px;border:1px solid #a9bdcc;border-radius:8px;background:#fff;color:#142b45;}
.medlive-enquiry__consent {font-size:.92rem;line-height:1.5;font-weight:400!important;}
.medlive-enquiry__consent input {margin-right:7px;}
.medlive-enquiry button {justify-self:start;padding:13px 25px;cursor:pointer;}
.medlive-enquiry__notice {padding:14px;background:#e9f7ee;border-left:4px solid #1b8145;}
.medlive-enquiry__error {padding:14px;background:#fff1f1;border-left:4px solid var(--medlive-red);}
.medlive-enquiry__trap {position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
@media(max-width:650px){.medlive-enquiry{padding:20px;margin:20px auto;}.medlive-enquiry__grid{grid-template-columns:1fr;}.medlive-enquiry button{width:100%;}}

/* Stage 19: informational-page layouts */
.medlive-info{max-width:1180px;margin:0 auto;padding:36px 20px 56px}
.medlive-info__head{border-bottom:1px solid var(--medlive-border);padding-bottom:24px;margin-bottom:26px}
.medlive-info__head h1{color:var(--medlive-navy);font-size:clamp(1.9rem,3vw,2.6rem);margin:0 0 10px}
.medlive-info__head p{max-width:720px;color:#4e6980;margin:0}
.medlive-info__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.medlive-info__card{padding:22px;border:1px solid var(--medlive-border);border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(7,43,80,.04)}
.medlive-info__card h2{font-size:1.13rem;color:var(--medlive-navy);margin:0 0 10px}
.medlive-info__card p{color:#536c80;margin:0 0 14px}
.medlive-info__card a{font-weight:700;text-underline-offset:3px}
.medlive-info__notice{border-left:4px solid var(--medlive-blue);background:var(--medlive-ice);padding:15px 18px;margin:0 0 22px}
.medlive-info__body{margin-top:30px}
@media(max-width:820px){.medlive-info__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.medlive-info{padding:24px 16px 38px}.medlive-info__grid{grid-template-columns:1fr}}

/* Stage 20: keyboard navigation and narrow-screen safety */
:where(a,button,input,select,textarea):focus-visible{outline:3px solid #b36b00;outline-offset:3px;}
.medlive-enquiry input[type="checkbox"]{width:auto;min-width:18px;min-height:18px;}
.medlive-enquiry textarea{resize:vertical;}
.medlive-info__card,.medlive-business__tile{overflow-wrap:anywhere;}
@media(max-width:600px){.medlive-enquiry,.medlive-business,.medlive-info{max-width:100%;}.medlive-business__table-wrap{max-width:100%;}}

/* Medlive homepage QA: suppress obsolete static department cards until the template is corrected to use the approved 12 live categories. */
.medlive-departments-preview-section{display:none!important;}
@media(max-width:480px){.main-navigation .menu{max-width:100%;}.main-navigation a{overflow-wrap:anywhere;}}
