/* Common Body Styles */
body {
    font-family: 'Inter', sans-serif;
    background-color: #0F172A; /* Slate 900 */
    color: #F8FAFC; /* Slate 50 */
}
.bg-black-600 {background:#333333;} .bg-videomodal { background:#0f172aa6 !important; }
#form-container .form-input, #form-container button, #form-container input, #form-container optgroup, #form-container select, #form-container textarea{
            background-color: rgba(15, 23, 42, 0.7);
            border: 1px solid #334155; /* Slate-700 */
            color: #F8FAFC;
            border-radius: 0.5rem;
            padding: 0.75rem 1rem;
            width: 100%;
            transition: border-color 0.3s ease, box-shadow 0.3s ease;
        }
        .form-input:focus {
            outline: none;
            border-color: #38BDF8; /* Sky-400 */
            box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.3);
        }
        
/* Reusable Gradients and Effects */
.gradient-text {
    background: linear-gradient(90deg, #38BDF8, #A78BFA);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.cta-button-primary {
    background: linear-gradient(90deg, #38BDF8, #818CF8);
    transition: all 0.3s ease;
}
.cta-button-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(56, 189, 248, 0.2), 0 6px 6px rgba(129, 140, 248, 0.2);
}

/* Hero Section Styles */
.hero-bg {
    position: relative;
    overflow: hidden;
    background-color: #020617;
}
.hero-bg::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(15, 23, 42, 0.6), rgba(15, 23, 42, 1));
    z-index: 1;
}
.hero-video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: 0;
    transform: translate(-50%, -50%);
    object-fit: cover;
    opacity: 0.3;
}
.hero-content {
    position: relative;
    z-index: 2;
}

/* Card and Glass Effects */
.glass-card {
    background: rgba(30, 41, 59, 0.5);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(51, 65, 85, 0.5);
}

/* Testimonial Carousel Styles */
.testimonial-carousel {
    display: flex;
    transition: transform 0.5s ease-in-out;
}
.testimonial-card {
    min-width: 100%;
}
@media (min-width: 768px) {
    .testimonial-card {
        min-width: 50%;
    }
}
@media (min-width: 1024px) {
    .testimonial-card {
        min-width: 33.333%;
    }
}

/* Portfolio Filter Styles */
.filter-btn {
    background-color: rgba(51, 65, 85, 0.5); /* slate-700/50 */
    color: #CBD5E1; /* slate-300 */
    padding: 0.5rem 1.5rem;
    border-radius: 9999px;
    font-weight: 500;
    transition: all 0.3s ease;
    border: 1px solid transparent;
    cursor: pointer;
        width: auto !important;

}
.filter-btn:hover {
    background-color: rgba(71, 85, 105, 0.7); /* slate-600/70 */
    color: white;
}
.filter-btn.active {
    background: linear-gradient(90deg, #38BDF8, #818CF8);
    color: white;
    box-shadow: 0 4px 14px 0 rgba(0, 118, 255, 0.39);
}
.portfolio-item {
    transition: transform 0.4s ease, opacity 0.4s ease;
    transform-origin: center;
}

.prev-testimonial-button {
    margin-left:0px !important;
}
.videopop-frame-ib { width:800px; height:600px;} #modalTitle {color:#333 !important; } 