.theme-text { 
    color: #214b4b !important; 
}

.theme-bg { 
    background-color: #214b4b !important; 
    color: #fff !important; 
}

.theme-border { 
    border-color: #214b4b !important; 
}

.icon-check { 
    color: #10b981; 
}

.icon-cross { 
    color: #fb7185; 
}

.page-container { 
    max-width: 1700px; 
}

.carousel-container { 
    max-width: 1800px; 
}

.pricing-tag { 
    font-size: 11px; 
    letter-spacing: 1px; 
}

.main-title { 
    letter-spacing: -0.025em; 
    max-width: 56rem; 
}

.sub-title { 
    max-width: 42rem; 
}

.footer-text { 
    font-size: 14.5px; 
    line-height: 1.6; 
}

.footer-max { 
    max-width: 1000px; 
}

.icon-box { 
    width: 44px; 
    height: 44px; 
}

.price-amount { 
    font-size: 54px; 
    line-height: 1; 
    letter-spacing: -0.025em; 
}

.boundary-label { 
    font-size: 11px; 
    letter-spacing: 0.1em; 
}

.feature-text { 
    font-size: 13.5px; 
    line-height: 1.4; 
}

.toggle-wrapper {
    gap: 1rem;
    margin-bottom: 3rem;
}

.toggle-label {
    font-size: 15px;
    transition: color 0.3s ease;
    cursor: pointer;
}

.annual-badge {
    font-size: 10px;
    letter-spacing: 0.5px;
}

.switch {
    width: 52px;
    height: 28px;
    margin: 0;
}

.switch input { 
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    cursor: pointer;
    inset: 0;
    background-color: #cbd5e1;
    transition: .3s;
    border-radius: 34px;
}

.slider::before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 4px;
    bottom: 4px;
    background-color: #fff;
    transition: .3s;
    border-radius: 50%;
    box-shadow: 0 2px 4px #0003;
}

input:checked + .slider {
    background-color: #214b4b;
}

input:checked + .slider::before {
    transform: translateX(24px);
}

.select-btn {
    padding: 10px 30px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    border-radius: 14px !important;
    letter-spacing: 0.5px !important;
    transition: all 0.2s ease-in-out !important;
    width: 100%;
}

.btn-hover-light:hover { 
    background-color: #f1f5f9 !important; 
}

.btn-hover-dark:hover { 
    opacity: 0.9; 
}

.card-carousel {
    scroll-behavior: smooth;
    -ms-overflow-style: none;
    scrollbar-width: none;
}

.card-carousel::-webkit-scrollbar { 
    display: none; 
}

.fader-left, .fader-right {
    position: absolute; 
    top: 0; 
    bottom: 0; 
    width: 120px; 
    z-index: 2; 
    pointer-events: none;
}

.fader-left { 
    left: 0; 
    background: linear-gradient(to right, #fff 10%, #ffffffe6 50%, transparent); 
}

.fader-right { 
    right: 0; 
    background: linear-gradient(to left, #fff 10%, #ffffffe6 50%, transparent); 
}

.nav-btn {
    position: absolute; 
    top: 50%; 
    transform: translateY(-50%);
    width: 48px; 
    height: 48px; 
    z-index: 20; 
    transition: transform 0.2s;
}

.nav-btn:hover { 
    background-color: #f8f9fa; 
    transform: translateY(-50%) scale(1.1); 
}

.btn-left { 
    left: 1rem; 
}

.btn-right { 
    right: 1rem; 
}

.pricing-card {
    border-radius: 32px;
    transition: box-shadow 0.3s ease;
}

.pricing-card:hover {
    box-shadow: 0 20px 25px -5px #0000001a, 0 10px 10px -5px #0000000a !important;
}

.card-popular {
    z-index: 2;
    border-width: 4px !important;
}

.popular-badge {
    position: absolute; 
    top: -14px; 
    left: 50%; 
    transform: translateX(-50%);
    font-size: 10px; 
    letter-spacing: 0.1em; 
    padding: 6px 16px;
}

@media (width > 768px) {
    .card-carousel { 
    scroll-snap-type: x mandatory; 
    }

    .card-carousel::before, .card-carousel::after { 
    content: ""; 
    flex: 0 0 auto; 
    width: max(5vw, 150px); 
    }

    .pricing-card { 
    width: 340px; 
    flex-shrink: 0; 
    scroll-snap-align: center; 
    }

    .card-popular { 
    transform: translateY(-8px); 
    }
}

.pricing-body{
    margin-top: 150px !important;
}

.navbar-collapse{
    top: 100px !important;
}

body, html{
    overflow-x: hidden !important;
}