:root {
    --bg-dark: #0B0F19;
    --bg-card: rgba(20, 26, 40, 0.6);
    --bg-card-hover: rgba(30, 38, 56, 0.8);
    --accent-blue: #00ADEF;
    --accent-blue-hover: #0098D4;
    --text-white: #FFFFFF;
    --text-gray: #A0AEC0;
    --glass-border: rgba(255, 255, 255, 0.08);
    --glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37);
}

body, .sb-body {
    background-color: var(--bg-dark) !important;
    color: var(--text-gray) !important;
}

.sb-text-dark {
    color: var(--text-gray) !important;
}

h1, h2, h3, h4, h5, h6, .sb-font-title, .sb-font-h1, .sb-font-h2, .sb-font-h3 {
    color: var(--text-white) !important;
}

.sb-background {
    background: transparent !important;
}

.s-product-services-type-1 .sb-background,
.s-product-list-type-1 .sb-background,
.s-steps-type-2 .sb-background,
.s-faq-type-3 .sb-background,
.s-call-to-action-type-1 .sb-background {
    background: transparent !important;
}

.s-product-services-type-1__card-wrapper {
    background: var(--bg-card) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border: 1px solid var(--glass-border);
    border-radius: 16px !important;
    padding: 16px 20px !important;
    box-shadow: var(--glass-shadow);
    transition: transform 0.4s ease, box-shadow 0.4s ease, border-color 0.4s ease !important;
    position: relative;
    overflow: hidden;
}

.s-product-services-type-1__card {
    margin-bottom: 12px !important;
}

.s-product-services-type-1__card-wrapper:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 45px rgba(0, 173, 239, 0.15);
    border-color: rgba(0, 173, 239, 0.3);
}

.s-product-services-type-1__card-wrapper .s-product-services-type-1__card-background {
    display: none !important; }

.s-product-services-type-1__title {
    color: var(--text-white) !important;
    font-size: 20px !important;
    margin-bottom: 4px !important;
}

.s-product-services-type-1__price {
    color: var(--accent-blue) !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    margin-bottom: 4px !important;
}

.s-product-services-type-1__description {
    color: var(--text-gray) !important;
    margin-bottom: 12px !important;
}

.sb-button-secondary, .sb-button-primary {
    border-radius: 30px !important;
    transition: all 0.3s ease !important;
    font-weight: 600 !important;
}

.s-product-services-type-1__button, .sb-header-default__button, .s-call-to-action-type-1__button {
    background: transparent !important;
    border: 1px solid var(--accent-blue) !important;
    color: var(--accent-blue) !important;
}

.s-product-services-type-1__button:hover, .sb-header-default__button:hover, .s-call-to-action-type-1__button:hover {
    background: var(--accent-blue) !important;
    color: #fff !important;
    box-shadow: 0 0 15px rgba(0, 173, 239, 0.4) !important;
}

.s-main-type-11__button.sb-button-primary {
    background: var(--accent-blue) !important;
    color: #fff !important;
    border: none !important;
}

.s-main-type-11__button.sb-button-primary:hover {
    background: var(--accent-blue-hover) !important;
    box-shadow: 0 5px 20px rgba(0, 173, 239, 0.5) !important;
}

.s-steps-type-2__item-title {
    color: var(--text-white) !important;
}

.s-steps-type-2__item-text {
    color: var(--text-gray) !important;
}

.s-steps-type-2__item-icon-wrapper {
    background: rgba(0, 173, 239, 0.1) !important;
    border: 1px solid rgba(0, 173, 239, 0.3) !important;
    color: var(--accent-blue) !important;
    box-shadow: 0 0 20px rgba(0, 173, 239, 0.1);
}

.s-steps-type-2__line {
    background-color: rgba(0, 173, 239, 0.2) !important;
}

.s-faq-type-3__question {
    border-bottom: 1px solid var(--glass-border) !important;
    transition: all 0.3s ease !important;
    border-radius: 8px 8px 0 0;
    padding: 12px 16px !important;
}

.s-faq-type-3__question:hover {
    border-bottom: 1px solid rgba(0, 173, 239, 0.5) !important;
    background-color: rgba(0, 173, 239, 0.05) !important;
}

.s-faq-type-3__question:hover .s-faq-type-3__ask {
    color: var(--accent-blue) !important;
}

.s-faq-type-3__ask {
    color: var(--text-white) !important;
    transition: color 0.3s ease !important;
}

.s-faq-type-3__question:before {
    right: 10px !important;
    top: 23px !important;
}

.s-faq-type-3__question:after {
    right: 21px !important;
    top: 12px !important;
}

.s-faq-type-3__collapse-btn {
    right: 10px !important;
    top: 6px !important;
}

.s-faq-type-3__answer {
    color: var(--text-gray) !important;
}

.s-faq-type-3__answer-text {
    color: var(--text-gray) !important;
    opacity: 1 !important;
}

.s-faq-type-3__icon {
    color: var(--accent-blue) !important;
}

.sb-header-default {
    background: transparent !important;
    border: none !important;
}

.sb-header-default__link {
    color: var(--text-white) !important;
    transition: color 0.3s ease !important;
}

.sb-header-default__link:hover {
    color: var(--accent-blue) !important;
}

.s-call-to-action-type-1 {
    background: linear-gradient(180deg, var(--bg-dark) 0%, #06080D 100%) !important;
    border-top: 1px solid var(--glass-border);
}

.s-call-to-action-type-1__title {
    color: var(--text-white) !important;
}

.s-call-to-action-type-1__text {
    color: var(--text-gray) !important;
}

/* Contact Form & Section Premium Styles */
.contact-card {
    background: rgba(20, 26, 40, 0.75) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 20px !important;
    padding: 40px 35px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4) !important;
    transition: border-color 0.3s, box-shadow 0.3s !important;
}

.contact-card:hover {
    border-color: rgba(0, 173, 239, 0.3) !important;
    box-shadow: 0 25px 60px rgba(0, 173, 239, 0.15) !important;
}

.contact-label {
    display: block !important;
    margin-bottom: 8px !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
}

.contact-input {
    width: 100% !important;
    padding: 14px 18px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    background: rgba(255, 255, 255, 0.06) !important;
    color: #FFFFFF !important;
    font-size: 1rem !important;
    outline: none !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
}

.contact-input::placeholder {
    color: rgba(255, 255, 255, 0.45) !important;
}

.contact-input:focus {
    border-color: #00ADEF !important;
    background: rgba(255, 255, 255, 0.1) !important;
    box-shadow: 0 0 15px rgba(0, 173, 239, 0.3) !important;
}

.contact-submit-btn {
    width: 100% !important;
    padding: 16px !important;
    border-radius: 50px !important;
    background: linear-gradient(135deg, #00ADEF 0%, #0076A8 100%) !important;
    color: #FFFFFF !important;
    font-weight: 600 !important;
    font-size: 1.05rem !important;
    border: none !important;
    cursor: pointer !important;
    transition: transform 0.3s, box-shadow 0.3s, background 0.3s !important;
    box-shadow: 0 8px 25px rgba(0, 173, 239, 0.35) !important;
}

.contact-submit-btn:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 35px rgba(0, 173, 239, 0.5) !important;
    background: linear-gradient(135deg, #18B8FA 0%, #008CC9 100%) !important;
}

/* Fix text readability and size for steps description */
.sb-text-opacity {
    color: inherit !important;
    opacity: 0.7 !important;
    font-size: 0.9rem !important;
    line-height: 1.5 !important;
}
