.home-page { background: #0b0d10; color: #f8fafc; }
.home-page .py-lg-6 { padding-top: 5rem; padding-bottom: 5rem; }
.home-hero { background: radial-gradient(circle at 80% 10%, rgba(25, 135, 84, .25), transparent 34%), linear-gradient(135deg, #10161c, #090a0c 70%); border-bottom: 1px solid #27313b; }
.home-carousel { background: #101419; border-bottom: 1px solid #27313b; }
.home-carousel .carousel-item { background: #101419; }
.home-carousel-visual { min-height: clamp(20rem, 44vw, 36rem); position: relative; }
.home-carousel-visual > img { height: 100%; inset: 0; object-fit: cover; position: absolute; width: 100%; }
.home-carousel-overlay { align-items: center; display: flex; inset: 0; padding: clamp(2rem, 6vw, 5rem) max(1.25rem, calc((100vw - 1140px) / 2)); position: absolute; }
.home-carousel-overlay.text-start { justify-content: flex-start; }
.home-carousel-overlay.text-center { justify-content: center; }
.home-carousel-overlay.text-end { justify-content: flex-end; }
.home-carousel-copy { max-width: min(42rem, 100%); overflow-wrap: anywhere; }
.home-carousel-copy h1 { font-size: clamp(2rem, 5vw, 4.5rem); font-weight: 700; }
.home-carousel-copy p { font-size: clamp(1rem, 2vw, 1.2rem); max-width: 36rem; }
.home-carousel .carousel-control-prev, .home-carousel .carousel-control-next { width: 9%; }
.home-carousel .carousel-indicators { margin-bottom: 1rem; }
.home-carousel-toggle { bottom: 1rem; position: absolute; right: 1rem; z-index: 3; }
@media (max-width: 575.98px) { .home-carousel-visual { min-height: 26rem; } .home-carousel-overlay { align-items: flex-end; padding: 2.5rem 1.25rem 4.5rem; } .home-carousel .carousel-control-prev, .home-carousel .carousel-control-next { width: 14%; } }
@media (prefers-reduced-motion: reduce) { .home-carousel .carousel-item { transition: none; } }
.home-eyebrow { color: #65dba0; font-size: .78rem; font-weight: 700; letter-spacing: .12em; }
.home-hero-copy { color: #c2cbd4; font-size: 1.15rem; max-width: 36rem; }
.home-hero-visual { min-height: 300px; display: grid; grid-template-columns: repeat(3, 1fr); gap: .75rem; align-items: center; }
.home-hero-visual-placeholder { grid-column: 1 / -1; min-height: 280px; border: 1px solid #334155; border-radius: 1.25rem; background: linear-gradient(145deg, #172029, #101317); color: #aeb9c4; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; text-align: center; padding: 2rem; }
.home-hero-visual-placeholder i { color: #65dba0; font-size: 4rem; }
.home-hero-product { height: 250px; border: 1px solid #334155; border-radius: 1rem; overflow: hidden; background: #13171c; display: flex; align-items: center; justify-content: center; }
.home-hero-product:nth-child(2) { transform: translateY(-1rem); }
.home-hero-product img { width: 100%; height: 100%; object-fit: cover; }
.home-section-heading h2, .home-page h2 { color: #f8fafc; font-weight: 700; }
.home-state { border: 1px dashed #475569; border-radius: .75rem; color: #c2cbd4; margin: 0; padding: 1.25rem; text-align: center; }
.home-product-card { background: #12161b; border: 1px solid #2c3641; border-radius: 1rem; color: #f8fafc; display: flex; flex-direction: column; height: 100%; overflow: hidden; transition: transform .2s ease, border-color .2s ease; }
.home-product-card:hover { border-color: #5bd58e; transform: translateY(-4px); }
.home-product-image { aspect-ratio: 1 / 1; background: #1a2027; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.home-product-image img { height: 100%; width: 100%; object-fit: cover; }
.home-product-image .bi-image { color: #718096; font-size: 2rem; }
.home-product-body { display: flex; flex: 1; flex-direction: column; gap: .75rem; padding: 1.1rem; }
.home-product-category { color: #aeb9c4; font-size: .8rem; margin: 0; }
.home-product-title { color: #f8fafc; font-size: 1rem; font-weight: 700; margin: 0; }
.home-product-price { color: #65dba0; font-size: 1.1rem; font-weight: 700; margin: 0; }
.home-condition { align-self: flex-start; background: #253448; color: #dbeafe; border-radius: 999px; font-size: .75rem; font-weight: 600; padding: .3rem .6rem; }
.home-surface { background: #11161b; border-bottom: 1px solid #26313b; border-top: 1px solid #26313b; }
.home-trust-card { background: #161d24; border: 1px solid #334155; border-radius: 1rem; padding: 1.5rem; }
.home-trust-card i { color: #65dba0; font-size: 1.75rem; }
.home-trust-card h3, .home-process h3 { color: #f8fafc; font-size: 1.05rem; font-weight: 700; margin: 1rem 0 .5rem; }
.home-trust-card p, .home-process p, .home-about p, .home-final-cta p { color: #c2cbd4; margin: 0; }
.home-process li { text-align: center; }
.home-process span { align-items: center; background: #173c2a; border: 1px solid #3fac72; border-radius: 50%; color: #baf5d2; display: inline-flex; font-weight: 700; height: 2.5rem; justify-content: center; width: 2.5rem; }
.home-about { background: radial-gradient(circle at 50% 0, rgba(25, 135, 84, .18), transparent 58%), #101419; }
.home-about-content { max-width: 50rem; }
.home-about-content p { font-size: 1.05rem; }
.home-final-cta { background: #151d23; border: 1px solid #334155; border-radius: 1.25rem; padding: 3rem 1.5rem; }
.home-final-cta p { margin: 1rem auto 1.5rem; max-width: 38rem; }
.home-footer { border-top: 1px solid #26313b; color: #aeb9c4; }
@media (max-width: 991.98px) { .home-page .py-lg-6 { padding-top: 3.5rem; padding-bottom: 3.5rem; } .home-hero-visual { min-height: 220px; } .home-hero-product { height: 200px; } }
@media (max-width: 575.98px) { .home-hero h1 { font-size: 2.4rem; } .home-hero-visual { grid-template-columns: repeat(2, 1fr); } .home-hero-product { height: 165px; } .home-hero-product:nth-child(3) { display: none; } .home-final-cta { padding: 2.5rem 1rem; } }

@media (max-width: 991.98px) {
    .home-product-collection {
        --bs-gutter-x: 0;
        --bs-gutter-y: 0;
        display: flex;
        flex-wrap: nowrap;
        gap: 1rem;
        margin: 0;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        padding: .25rem 0 .75rem;
        scroll-snap-type: x mandatory;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .home-product-collection::-webkit-scrollbar {
        display: none;
    }

    .home-product-collection-card {
        flex: 0 0 calc((100% - 2rem) / 2.35);
        max-width: calc((100% - 2rem) / 2.35);
        padding: 0;
        scroll-snap-align: start;
    }
}

@media (max-width: 575.98px) {
    .home-product-collection-card {
        flex-basis: 84vw;
        max-width: 84vw;
    }
}
