/* css/landing.css */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    background-color: #ffffff;
    color: #000;
    line-height: 1.6;
}

.container {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 20px;
}

/* --- Buttons --- */
.btn {
    padding: 12px 24px;
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    border-radius: 8px;
    cursor: pointer;
    display: inline-block;
    border: 1px solid transparent;
    transition: all 0.3s ease;
}

.btn-primary {
    background-color: #000;
    color: #fff;
}
.btn-primary:hover {
    background-color: #333;
}

.btn-secondary {
    background-color: #e6e6e6;
    color: #000;
}
.btn-secondary:hover {
    background-color: #d4d4d4;
}

.btn-group {
    display: flex;
    gap: 16px;
    margin-top: 24px;
}

/* --- Header & Nav --- */
.header-nav {
    background: #fff;
    border-bottom: 1px solid #eee;
    padding: 20px 0;
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.nav-logo {
    font-size: 24px;
    font-weight: 600;
    color: #000;
    text-decoration: none;
}

.logo-image {
    height: 40px; 
    width: auto;
    display: block;
}

.nav-menu {
    display: flex;
    list-style: none;
    gap: 32px;
}

.nav-menu li a {
    font-size: 18px;
    font-weight: 500;
    color: #000;
    text-decoration: none;
}

.nav-actions {
    display: flex;
    gap: 16px;
}

/* --- Hero Section --- */
.hero {
    padding: 80px 0;
    text-align: center;
}

.hero h1 {
    font-size: 40px;
    font-weight: 500;
    max-width: 900px;
    margin: 0 auto 24px auto;
}

.hero .subtitle {
    font-size: 64px;
    font-weight: 600;
    color: #333;
}

/* --- Carousel Section --- */
.carousel-section {
    padding: 40px 0;
}

.carousel-container {
    width: 100%;
    max-width: 854px;
    margin: 0 auto;
    overflow: hidden;
    border-radius: 40px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

.carousel-slider {
    display: flex;
    width: 300%; /* 3 slides = 300% */
    animation: slide 15s infinite;
}

.carousel-slide {
    width: 33.333%; /* 100% / 3 slides */
    height: 480px;
    background-size: cover;
    background-position: center;
}

/* Image carousel animation */
@keyframes slide {
    0% { transform: translateX(0); }
    30% { transform: translateX(0); } /* Stay 4.5s */
    33% { transform: translateX(-33.333%); } /* Transition 0.45s */
    63% { transform: translateX(-33.333%); } /* Stay 4.5s */
    66% { transform: translateX(-66.666%); } /* Transition 0.45s */
    97% { transform: translateX(-66.666%); } /* Stay 4.65s */
    100% { transform: translateX(0); } /* Transition 0.45s */
}


/* --- NEW: Text Carousel --- */
.prompt-carousel-container {
    width: 100%;
    max-width: 854px;
    margin: 40px auto 0 auto;
    overflow: hidden; /* Hides the other text slides */
}

.prompt-slider {
    display: flex;
    width: 300%; /* 3 slides = 300% */
    /* NEW: Synced text animation */
    animation: slide-text 15s infinite;
}

.prompt-slide {
    width: 33.333%; /* 100% / 3 slides */
    text-align: center;
    font-size: 32px;
    font-weight: 500;
    color: #000;
    padding: 16px 24px;
    border: 1px solid #ddd;
    border-radius: 12px;
    /* This ensures all slides have the same box width */
    display: flex;
    justify-content: center;
    align-items: center;
    white-space: nowrap;
}

/* Text carousel animation (synced with image carousel) */
@keyframes slide-text {
    0% { transform: translateX(0); }
    30% { transform: translateX(0); }
    33% { transform: translateX(-33.333%); }
    63% { transform: translateX(-33.333%); }
    66% { transform: translateX(-66.666%); }
    97% { transform: translateX(-66.666%); }
    100% { transform: translateX(0); }
}

/* --- Features Section --- */
.features {
    padding: 80px 0;
}

.features h2 {
    font-size: 48px;
    font-weight: 600;
    margin-bottom: 48px;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 32px;
}

.feature-card {
    display: flex;
    flex-direction: column;
}

.feature-image {
    width: 100%;
    height: 405px;
    border-radius: 8px;
    margin-bottom: 24px;
    background-size: cover;
    background-position: center;
}

.feature-card h3 {
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 8px;
}

.feature-card p {
    font-size: 24px;
    color: #828282;
    line-height: 1.5;
}

/* --- Value Prop Section --- */
.value-prop {
    padding: 80px 0;
}

.value-prop-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.value-prop-text h2 {
    font-size: 48px;
    font-weight: 600;
    margin-bottom: 16px;
}

.value-prop-text p {
    font-size: 32px;
    color: #828282;
    line-height: 1.5;
}

.value-prop-image {
    width: 100%;
    height: 704px;
    border-radius: 8px;
    background-size: cover;
    background-position: center;
}

/* --- CTA Section --- */
.cta {
    padding: 80px 0;
}

.cta-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.cta-image {
    width: 100%;
    max-width: 581px;
    height: 581px;
    border-radius: 8px;
    background-size: cover;
    background-position: center;
}

.cta-text h2 {
    font-size: 48px;
    font-weight: 600;
    margin-bottom: 16px;
}

.cta-text p {
    font-size: 32px;
    color: #828282;
    line-height: 1.5;
}

/* --- Footer --- */
.footer {
    padding: 60px 0;
    background: #f9f9f9;
    border-top: 1px solid #eee;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 32px;
}

.footer-brand .logo-image {
    height: 40px; 
}

.footer-links h4 {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 16px;
}

.footer-links ul {
    list-style: none;
}

.footer-links ul li {
    margin-bottom: 12px;
}

.footer-links ul li a {
    font-size: 16px;
    color: #444;
    text-decoration: none;
}

/* --- Responsive --- */
@media (max-width: 992px) {
    .nav-menu {
        display: none;
    }
    .features-grid {
        grid-template-columns: 1fr;
    }
    .value-prop-grid, .cta-grid {
        grid-template-columns: 1fr;
    }
    .value-prop-image, .cta-image {
        height: 400px;
    }
    .hero h1 { font-size: 32px; }
    .hero .subtitle { font-size: 48px; }
    .prompt-slide { font-size: 24px; }
    .features h2, .value-prop-text h2, .cta-text h2 { font-size: 36px; }
    .value-prop-text p, .cta-text p { font-size: 24px; }
}

@media (max-width: 768px) {
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
    .hero .subtitle { font-size: 36px; }
}