/* TechCon Slider Widget – techcon-slider.css */

@keyframes tcs-ken-burns {
    0%   { transform: scale(1); }
    100% { transform: scale(1.15); }
}

@keyframes tcs-fade-up {
    0%   { opacity: 0; transform: translateY(20px); filter: blur(5px); }
    100% { opacity: 1; transform: translateY(0);    filter: blur(0); }
}

@keyframes tcs-pulse {
    0%, 100% { opacity: 1;   transform: scale(1); }
    50%       { opacity: 0.6; transform: scale(1.15); }
}

/* Root */
.tcs-root {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    color: #fff;
    box-sizing: border-box;
    width: 100%;
}

/* When full-width BG is on, allow the BG mask to visually overflow the column */
.tcs-root[data-fullwidth-bg="true"] {
    /* keep overflow visible so 100vw mask can bleed */
    overflow: visible !important;
    /* clip only vertically so the vertical layout is clean */
    clip-path: inset(0);
}

.tcs-root *, .tcs-root *::before, .tcs-root *::after {
    box-sizing: border-box;
}

/* Ensure the inner content sits above the full-width BG */
.tcs-inner {
    position: relative;
    z-index: 10;
}

/* Stage animation */
.tcs-stage-inner {
    animation: tcs-fade-up 0.6s cubic-bezier(0.16,1,0.3,1) forwards;
}

/* Scrollbar hide for nav panel */
.tcs-col-right::-webkit-scrollbar { display: none; }

/* No glass / backdrop on the nav panel */
.tcs-col-right {
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

/* Button hover states */
.tcs-btn:not([disabled]):hover {
    opacity: 0.9;
    transform: scale(1.03);
}

/* Nav card hover */
.tcs-nav-card:hover {
    opacity: 0.75 !important;
    background: rgba(255,255,255,0.08) !important;
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
    /* Height auto on mobile – driven by content */
    .tcs-root {
        min-height: unset !important;
        height: auto !important;
    }

    .tcs-inner {
        flex-direction: column !important;
        min-height: unset !important;
        height: auto !important;
        gap: 0 !important;
    }

    /* Left-align all content on mobile */
    .tcs-col-left {
        width: 100% !important;
        align-items: flex-start !important;
        text-align: left !important;
        justify-content: flex-start !important;
    }

    .tcs-col-left h1,
    .tcs-col-left h2,
    .tcs-col-left .tcs-stage-inner {
        text-align: left !important;
    }

    /* Hide desktop nav list */
    .tcs-col-right {
        display: none !important;
    }

    /* Dot nav: left aligned */
    .tcs-dots {
        display: flex !important;
        justify-content: flex-start !important;
    }
}
