:root {
    --8bit-primary: #0b5d66;
    --8bit-dark: #073f46;
    --8bit-accent: #f26a1b;
    --8bit-bg: #f4f9fa;
    --8bit-text: #333333;
}

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

h1, h2, h3, h4, h5, h6 {
    color: var(--8bit-primary);
}

/* Primary Button */
.btn-8bit, 
button:not(.components-button), 
input[type="submit"], 
.elementor-button {
    background-color: var(--8bit-accent) !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    font-weight: bold !important;
    border: none;
    padding: 12px 24px;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    transition: opacity 0.3s ease;
}

.btn-8bit:hover, 
button:not(.components-button):hover, 
input[type="submit"]:hover, 
.elementor-button:hover {
    opacity: 0.9;
}

/* Outline Button */
.btn-8bit-outline {
    background-color: transparent !important;
    color: var(--8bit-accent) !important;
    border: 2px solid var(--8bit-accent) !important;
}

.btn-8bit-outline:hover {
    background-color: var(--8bit-accent) !important;
    color: #ffffff !important;
}

/* Outline on dark background */
.bg-dark .btn-8bit-outline,
.eight-bit-footer-19012d45 .btn-8bit-outline {
    color: #ffffff !important;
    border-color: #ffffff !important;
}

.bg-dark .btn-8bit-outline:hover,
.eight-bit-footer-19012d45 .btn-8bit-outline:hover {
    background-color: #ffffff !important;
    color: var(--8bit-dark) !important;
}

/* Reusable Footer Styling */
.eight-bit-footer-19012d45 {
    background-color: var(--8bit-dark);
    color: #ffffff;
    text-align: center;
    padding: 60px 20px;
    font-family: inherit;
}

.eight-bit-footer-19012d45 p {
    margin: 10px 0;
    font-size: 16px;
    line-height: 1.5;
}

.eight-bit-footer-19012d45 a {
    color: #ffffff;
    text-decoration: none;
    font-weight: bold;
    transition: color 0.3s ease;
}

.eight-bit-footer-19012d45 a:hover {
    color: var(--8bit-accent);
}
