/* ===================================================
   SPEEDACURE GLOBAL THEME
   Logo-aligned Green, White and Dark Green
   =================================================== */

:root {
    --sc-primary: #009B27;
    --sc-primary-hover: #087B36;
    --sc-primary-soft: #EAF8ED;
    --sc-deep: #123D2F;
    --sc-text: #183E30;
    --sc-muted: #64796D;
    --sc-bg: #F4FAF6;
    --sc-white: #FFFFFF;
    --sc-border: #DCECE2;
}

/* General website */

body {
    background-color: var(--sc-bg);
    color: var(--sc-text);
}

h1, h2, h3, h4 {
    color: var(--sc-deep);
}

/* Top navigation */

.main-nav,
.category-nav,
.navbar {
    background-color: #FFFFFF;
    border-color: var(--sc-border);
}

.main-nav a,
.category-nav a,
.navbar a {
    color: var(--sc-deep);
}

.main-nav a:hover,
.category-nav a:hover,
.navbar a:hover {
    color: var(--sc-primary);
}

/* Sidebar */

.sc-category-sidebar {
    background-color: #FFFFFF;
}

.sc-category-sidebar .sc-category-links a {
    color: var(--sc-deep);
    -webkit-text-fill-color: var(--sc-deep);
    border-radius: 12px;
}

.sc-category-sidebar .sc-category-links a:hover:not(.is-active) {
    background-color: var(--sc-primary-soft);
    color: var(--sc-primary-hover);
    -webkit-text-fill-color: var(--sc-primary-hover);
}

/* Verified active category selector */

aside.sc-category-sidebar .sc-category-links a.is-active,
aside.sc-category-sidebar .sc-category-links a.is-active:link,
aside.sc-category-sidebar .sc-category-links a.is-active:visited,
aside.sc-category-sidebar .sc-category-links a.is-active:hover,
aside.sc-category-sidebar .sc-category-links a.is-active:focus {
    background-color: #087B36 !important;
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
    font-weight: 700 !important;
}

aside.sc-category-sidebar .sc-category-links a.is-active * {
    color: #FFFFFF !important;
    -webkit-text-fill-color: #FFFFFF !important;
}

/* Primary buttons */

.btn-primary,
button.btn-primary,
a.btn-primary {
    background-color: var(--sc-primary);
    border-color: var(--sc-primary);
    color: #FFFFFF;
}

.btn-primary:hover,
button.btn-primary:hover,
a.btn-primary:hover {
    background-color: var(--sc-primary-hover);
    border-color: var(--sc-primary-hover);
    color: #FFFFFF;
}

/* Product cards */

.product-card {
    background-color: #FFFFFF;
    border-color: var(--sc-border);
    border-radius: 14px;
}

.product-card h3,
.product-card h3 a {
    color: var(--sc-deep);
}

.product-card h3 a:hover {
    color: var(--sc-primary);
}

.product-card .price strong {
    color: var(--sc-primary-hover);
}

/* Input fields */

input:focus,
select:focus,
textarea:focus {
    border-color: var(--sc-primary);
    outline-color: var(--sc-primary);
}

/* Footer */

.footer {
    border-color: var(--sc-border);
}

.footer a:hover {
    color: var(--sc-primary);
}

/* Keyboard accessibility */

a:focus-visible,
button:focus-visible {
    outline: 2px solid var(--sc-primary);
    outline-offset: 2px;
}
