/* LoCo Research Supply — darker clinical/medical refinement layer. */
:root{
  --loco-bg:#dfe9e8;
  --loco-bg-deep:#d2dfdd;
  --loco-surface:#eef4f3;
  --loco-surface-strong:#e5eeec;
  --loco-navy:#102e38;
  --loco-navy-2:#173f49;
  --loco-teal:#168f81;
  --loco-teal-dark:#0d6f65;
  --loco-border:#b9cdca;
  --loco-muted:#4d6970;
  --loco-shadow:rgba(16,46,56,.12);
}
[x-cloak]{display:none!important}
body{
  background:linear-gradient(180deg,var(--loco-bg) 0%,#d9e5e3 45%,var(--loco-bg-deep) 100%)!important;
  color:var(--loco-navy)!important;
}
.loco-grid{
  background:
    radial-gradient(circle at 82% 15%,rgba(22,143,129,.12),transparent 28rem),
    linear-gradient(180deg,#dbe7e5 0%,#d5e2e0 100%)!important;
}
.loco-topbar{
  background:var(--loco-navy)!important;
  border-color:rgba(255,255,255,.08)!important;
  color:#c9dcda!important;
}
.loco-site-header{
  background:rgba(16,46,56,.96)!important;
  border-color:rgba(255,255,255,.08)!important;
  box-shadow:0 10px 28px rgba(16,46,56,.20)!important;
}
.loco-site-header .text-neutral,
.loco-site-header nav a,
.loco-site-header .loco-brand-name{color:#eef7f5!important}
.loco-site-header .text-secondary-500,
.loco-site-header .loco-brand-sub{color:#9eb8b8!important}
.loco-site-header .loco-btn-secondary{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.16)!important;
  color:#eef7f5!important;
}
.loco-site-header .loco-btn-secondary:hover{background:rgba(255,255,255,.12)!important;border-color:#5ac7b8!important}
.loco-mobile-nav{
  background:#123641!important;
  border-top:1px solid rgba(255,255,255,.09)!important;
}
.loco-mobile-nav a{color:#e6f2f0!important}
.loco-mobile-nav a:hover{color:#65cdbf!important}
.loco-glass{
  background:var(--loco-surface)!important;
  border-color:var(--loco-border)!important;
  box-shadow:0 14px 34px var(--loco-shadow)!important;
  backdrop-filter:none!important;
}
.loco-kicker{color:var(--loco-teal-dark)!important}
.loco-rule{background:linear-gradient(90deg,var(--loco-teal),rgba(22,143,129,0))!important}
.loco-btn{border-radius:12px!important}
.loco-btn-primary{
  background:var(--loco-teal)!important;
  color:#f7fbfa!important;
  box-shadow:0 8px 20px rgba(13,111,101,.18)!important;
}
.loco-btn-primary:hover{background:var(--loco-teal-dark)!important;box-shadow:0 12px 24px rgba(13,111,101,.23)!important}
.loco-btn-secondary{
  background:var(--loco-surface)!important;
  color:var(--loco-navy)!important;
  border-color:var(--loco-border)!important;
}
.loco-btn-secondary:hover{background:#dbe8e6!important;border-color:var(--loco-teal)!important}
footer{background:var(--loco-navy)!important;color:#c7d9d7!important;border-color:rgba(255,255,255,.08)!important}
footer a,footer .text-neutral{color:#eaf4f2!important}
footer .text-secondary-500,footer .text-secondary-400{color:#9db6b5!important}
.prose{color:#4f6a71!important}.prose p,.prose li,.prose dd{color:#4f6a71!important}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--loco-navy)!important}
.prose strong{color:#244751!important}.prose a{color:var(--loco-teal-dark)!important;text-decoration-thickness:1px;text-underline-offset:3px}

/* Homepage and preview product surfaces. */
.loco-medical-trust,.loco-draft-product{
  background:var(--loco-surface)!important;
  border:1px solid var(--loco-border)!important;
  border-radius:16px!important;
  box-shadow:0 10px 24px var(--loco-shadow)!important;
}
.loco-draft-product{padding:16px}
.loco-draft-product img{width:100%;height:auto;border-radius:12px;background:#d9e4e2}
.loco-draft-badge{
  display:inline-block;margin-top:12px;padding:4px 8px;border-radius:999px;
  background:#cfe2df;color:var(--loco-teal-dark);font-family:monospace;font-size:11px;text-transform:uppercase;letter-spacing:.08em
}

/* WooCommerce catalog and product pages. */
.loco-store-hero{background:linear-gradient(135deg,#173f49 0%,#0f3039 58%,#164b50 100%)!important;color:#edf7f5!important}
.loco-store-hero .loco-kicker{color:#6ad0c1!important}
.loco-store-hero .text-secondary-400{color:#b6ccca!important}
.loco-store-trust{background:#d4e2e0!important;border-color:var(--loco-border)!important}
.loco-store-trust span{color:#35565d!important}
.loco-woocommerce-shell{color:var(--loco-navy)!important}
.woocommerce .woocommerce-breadcrumb{color:#607a7e!important;font-size:.85rem;margin-bottom:1.25rem!important}
.woocommerce .woocommerce-breadcrumb a{color:var(--loco-teal-dark)!important}
.woocommerce .woocommerce-result-count{color:var(--loco-muted)!important}
.woocommerce .woocommerce-ordering select{
  background:var(--loco-surface)!important;color:var(--loco-navy)!important;border:1px solid var(--loco-border)!important;border-radius:10px!important;padding:.65rem 2.2rem .65rem .8rem!important
}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1.25rem!important}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product,.wc-block-grid__product{
  width:auto!important;margin:0!important;background:var(--loco-surface)!important;border:1px solid var(--loco-border)!important;
  box-shadow:0 10px 24px var(--loco-shadow)!important;border-radius:16px!important;padding:14px!important;overflow:hidden!important
}
.woocommerce ul.products li.product:hover,.wc-block-grid__product:hover{border-color:var(--loco-teal)!important;box-shadow:0 16px 34px rgba(16,46,56,.16)!important;transform:translateY(-2px)}
.woocommerce ul.products li.product img{border-radius:12px!important;background:#d7e2e0!important;margin-bottom:1rem!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce div.product .product_title,.wc-block-grid__product-title{color:var(--loco-navy)!important;font-weight:650!important}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price,.wc-block-grid__product-price{color:var(--loco-teal-dark)!important;font-weight:700!important}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  background:var(--loco-teal)!important;color:#fff!important;border-radius:10px!important;border:0!important;font-weight:650!important;padding:.8rem 1rem!important
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.woocommerce #respond input#submit:hover{background:var(--loco-teal-dark)!important;color:#fff!important}
.woocommerce div.product div.images img{border-radius:18px!important;background:#d7e2e0!important;border:1px solid var(--loco-border)!important}
.woocommerce div.product .summary{background:var(--loco-surface)!important;border:1px solid var(--loco-border)!important;border-radius:18px!important;padding:1.4rem!important;box-shadow:0 12px 30px var(--loco-shadow)!important}
.woocommerce div.product form.cart .quantity .qty{min-height:44px!important;border:1px solid var(--loco-border)!important;border-radius:9px!important;background:#e4edeb!important;color:var(--loco-navy)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin-top:2rem!important}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{border-color:var(--loco-border)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#d3e1df!important;border-color:var(--loco-border)!important;border-radius:10px 10px 0 0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--loco-surface)!important;color:var(--loco-navy)!important}
.woocommerce div.product .woocommerce-tabs .panel{background:var(--loco-surface)!important;border:1px solid var(--loco-border)!important;border-radius:0 14px 14px 14px!important;padding:1.25rem!important}

/* Cart, checkout, account and messages. */
.woocommerce table.shop_table,.woocommerce form.checkout,.woocommerce form.login,.woocommerce form.register,
.woocommerce .cart_totals,.woocommerce-checkout-review-order,.woocommerce-checkout-payment,
.woocommerce .woocommerce-customer-details,.woocommerce .woocommerce-order-details{
  background:var(--loco-surface)!important;border:1px solid var(--loco-border)!important;border-radius:16px!important;box-shadow:0 10px 24px var(--loco-shadow)!important
}
.woocommerce form.checkout{padding:1.15rem!important}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:#c5d6d3!important}
.woocommerce-checkout #customer_details>div{margin-bottom:1rem}
.woocommerce-checkout-review-order,.woocommerce-checkout-payment{padding:1rem!important;margin-top:1rem!important}
.woocommerce-checkout-payment{background:#d5e3e0!important}
.woocommerce-checkout-payment .payment_box{background:#c8d9d6!important;color:var(--loco-navy)!important}
.woocommerce-checkout-payment .payment_box::before{border-bottom-color:#c8d9d6!important}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select,.woocommerce form .form-row input.input-text{
  background:#e6eeec!important;color:var(--loco-navy)!important;border:1px solid var(--loco-border)!important;border-radius:9px!important;padding:.72rem .8rem!important
}
.woocommerce input.input-text:focus,.woocommerce textarea:focus,.woocommerce select:focus{outline:2px solid rgba(22,143,129,.22)!important;border-color:var(--loco-teal)!important}
.woocommerce-error,.woocommerce-info,.woocommerce-message{background:#d4e3e0!important;color:var(--loco-navy)!important;border-top-color:var(--loco-teal)!important;border-radius:10px!important}
.woocommerce-info::before,.woocommerce-message::before{color:var(--loco-teal-dark)!important}
.loco-checkout-attestation{background:#d4e3e0;border:1px solid var(--loco-border);border-radius:14px;padding:1rem;margin:1rem 0}
.loco-checkout-attestation h3{color:var(--loco-navy)!important;margin-top:0}

/* Research-use gate: darker and calmer than the bright clinical pass. */
#loco-ruo-gate{background:rgba(10,34,41,.94)!important}
.loco-gate-card{background:#e4edeb!important;border-color:#4ab6a8!important;box-shadow:0 28px 70px rgba(7,33,39,.36)!important;color:var(--loco-navy)!important}
.loco-gate-card .text-secondary-300,.loco-gate-card .text-secondary-500,.loco-choice{color:#4f6a71!important}
.loco-gate-question{border-color:#becfcd!important}

/* Final accessibility and readability polish. */
main>section:empty{display:none!important}
.prose h3{margin-top:2rem!important;margin-bottom:.55rem!important}
.prose p{line-height:1.75!important}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #2a9f91!important;outline-offset:3px!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Grand-opening promotion popup. */
.loco-grand-opening{position:fixed;inset:0;z-index:999998;display:grid;place-items:center;padding:1rem}
.loco-grand-opening__backdrop{position:absolute;inset:0;background:rgba(8,30,36,.72);backdrop-filter:blur(8px)}
.loco-grand-opening__card{position:relative;width:min(620px,100%);background:#edf4f2;border:1px solid #7fb8b0;border-radius:24px;padding:2rem;box-shadow:0 30px 90px rgba(8,30,36,.32);color:var(--loco-navy)}
.loco-grand-opening__close{position:absolute;top:.85rem;right:1rem;width:2.25rem;height:2.25rem;border:1px solid var(--loco-border);border-radius:999px;background:#dce8e6;color:var(--loco-navy);font-size:1.5rem;line-height:1;cursor:pointer}
.loco-grand-opening__card h2{margin:.45rem 2.5rem .65rem 0;font-size:clamp(2rem,6vw,3.15rem);line-height:1;letter-spacing:-.035em;color:var(--loco-navy)}
.loco-grand-opening__lead{font-size:1.08rem;line-height:1.65;color:#35565d;margin:0}
.loco-grand-opening__details{display:grid;gap:.7rem;margin:1.35rem 0;padding:1rem 1.1rem;border-radius:16px;background:#dce9e6;border:1px solid #bfd2ce;color:#294a52}
.loco-grand-opening__details strong{color:var(--loco-teal-dark)}
.loco-grand-opening__fineprint{font-size:.82rem;line-height:1.6;color:#587278;margin:0}
.loco-grand-opening__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.4rem}
.loco-grand-opening__actions button{font:inherit;cursor:pointer}

/* Responsive catalog/navigation refinements. */
@media(max-width:1023px){
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .loco-site-header .loco-brand-sub{display:none!important}
}
@media(max-width:640px){
  body{background:#dbe6e4!important}
  .loco-site-header .loco-brand-name{font-size:.95rem!important}
  .woocommerce ul.products{grid-template-columns:1fr!important;gap:1rem!important}
  .woocommerce ul.products li.product{padding:12px!important}
  .woocommerce div.product .summary{padding:1rem!important}
  .woocommerce table.shop_table_responsive tr td{background:transparent!important}
  .woocommerce .cart_totals,.woocommerce-checkout-review-order,.woocommerce-checkout-payment{box-shadow:none!important}
}
