/* ==========================================================
   STARTBLOK — V3
   DARK CANVAS × LIGHT CARDS × LIME
   À charger APRÈS main.css
   Aucun changement HTML requis
========================================================== */

:root {
    --sb-lime: #cfff04;
    --sb-lime-hover: #b8e600;

    --sb-bg: #060706;
    --sb-bg-alt: #090a09;
    --sb-bg-soft: #0d0f0d;
    --sb-bg-card-dark: #121412;

    --sb-card: #f7f8f4;
    --sb-card-2: #ffffff;

    --sb-text-light: #f6f7f3;
    --sb-text-light-muted: #a6aca3;

    --sb-text-dark: #111310;
    --sb-text-dark-muted: #656b62;

    --sb-border-dark: rgba(255, 255, 255, .09);
    --sb-border-light: rgba(23, 28, 20, .11);

    --sb-shadow-light:
        0 22px 55px rgba(0, 0, 0, .30),
        0 5px 18px rgba(0, 0, 0, .16);

    --sb-shadow-light-hover:
        0 30px 75px rgba(0, 0, 0, .42),
        0 0 32px rgba(207, 255, 4, .055);
}


/* ==========================================================
   BASE
========================================================== */

html,
body {
    background: var(--sb-bg);
}

body {
    color: var(--sb-text-light);
}

.site-container {
    background: var(--sb-bg);
}

::selection {
    background: var(--sb-lime);
    color: #111;
}

::-moz-selection {
    background: var(--sb-lime);
    color: #111;
}

a {
    color: inherit;
}


/* ==========================================================
   HEADER
========================================================== */

.blck-header {
    background: rgba(5, 6, 5, .90);
    border-bottom: 1px solid rgba(255, 255, 255, .075);

    box-shadow:
        0 10px 35px rgba(0, 0, 0, .16);

    backdrop-filter: blur(18px) saturate(130%);
    -webkit-backdrop-filter: blur(18px) saturate(130%);
}

.blck-header.scrolled {
    background: rgba(5, 6, 5, .96);
    border-bottom-color: rgba(255, 255, 255, .10);

    box-shadow:
        0 14px 40px rgba(0, 0, 0, .24);
}

.blck-header__logo img {
    filter: none;
}

.blck-header__nav a {
    color: #f4f5f1;
}

.blck-header__nav a:hover {
    color: var(--sb-lime);
}

.blck-header__nav a::after {
    background: var(--sb-lime);
}


/* BURGER */

.burger-icon {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .12);
}

.burger-icon:hover {
    background: rgba(255, 255, 255, .11);
}

.burger-icon__bar {
    background: #fff;
}

.burger-icon.active {
    background: var(--sb-lime);
}

.burger-icon.active .burger-icon__bar {
    background: #111;
}


/* ==========================================================
   HERO — DARK PHOTO
========================================================== */

.blck-hero {
    background: #040504;
}

.blck-hero .slide-background-image {
    filter:
        brightness(.78)
        contrast(1.04)
        saturate(.94);
}

.blck-hero .swiper-slide:nth-child(1)::after {
    background:
        radial-gradient(
            circle at 50% 45%,
            rgba(0, 0, 0, .08),
            rgba(0, 0, 0, .55) 80%
        ),
        linear-gradient(
            90deg,
            rgba(4, 5, 4, .70) 0%,
            rgba(4, 5, 4, .38) 50%,
            rgba(4, 5, 4, .60) 100%
        );
}

.blck-hero .swiper-slide:nth-child(2)::after {
    background:
        radial-gradient(
            circle at 50% 45%,
            rgba(0, 0, 0, .08),
            rgba(0, 0, 0, .58) 80%
        ),
        linear-gradient(
            90deg,
            rgba(4, 5, 4, .70),
            rgba(4, 5, 4, .40) 52%,
            rgba(4, 5, 4, .62)
        );
}

.blck-hero__content {
    max-width: 850px;
}

.blck-hero__content h1 {
    color: #fff;

    text-shadow:
        0 3px 18px rgba(0, 0, 0, .55);
}

.blck-hero__content h1 span {
    color: var(--sb-lime);
}

.blck-hero__content p {
    color: rgba(255, 255, 255, .91);

    text-shadow:
        0 2px 10px rgba(0, 0, 0, .44);
}

.blck-hero__content p strong {
    color: #fff;
}


/* HERO NAV */

.blck-hero .swiper-button-next,
.blck-hero .swiper-button-prev {
    background: rgba(6, 7, 6, .50);
    border: 1px solid rgba(255, 255, 255, .20);

    color: var(--sb-lime);

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.blck-hero .swiper-button-next:hover,
.blck-hero .swiper-button-prev:hover {
    background: var(--sb-lime);
    border-color: var(--sb-lime);
    color: #111;
}

.blck-hero .swiper-pagination-bullet {
    background: #fff;
    opacity: .30;
}

.blck-hero .swiper-pagination-bullet-active {
    background: var(--sb-lime);
    opacity: 1;
}


/* ==========================================================
   BOUTONS
========================================================== */

.blck-btn--primary,
.cookie-consent .cookie-btn.accept {
    background: var(--sb-lime);
    color: #111;
    border-color: var(--sb-lime);

    box-shadow:
        0 8px 24px rgba(207, 255, 4, .13),
        inset 0 1px 0 rgba(255, 255, 255, .35);
}

.blck-btn--primary:hover,
.cookie-consent .cookie-btn.accept:hover {
    background: #fff;
    color: #111;
    border-color: #fff;
}

.blck-btn--secondary {
    background: rgba(255, 255, 255, .055);
    color: #fff;
    border-color: rgba(255, 255, 255, .32);
    box-shadow: none;
}

.blck-btn--secondary:hover {
    background: #fff;
    color: #111;
    border-color: #fff;
}


/* ==========================================================
   SERVICES
   DARK CANVAS + LIGHT CARDS
========================================================== */

.blck-services {
    background:
        radial-gradient(
            circle at 20% 10%,
            rgba(207, 255, 4, .035),
            transparent 30rem
        ),
        radial-gradient(
            circle at 90% 82%,
            rgba(255, 255, 255, .018),
            transparent 26rem
        ),
        var(--sb-bg-alt);

    border-top: 1px solid rgba(255, 255, 255, .055);
    border-bottom: 1px solid rgba(255, 255, 255, .055);
}

.blck-services .pole-title {
    color: #f5f6f2;
}

.blck-service-card {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f6f7f3
        );

    border: 1px solid rgba(255, 255, 255, .12);

    box-shadow:
        0 20px 48px rgba(0, 0, 0, .26);

    color: var(--sb-text-dark);
}

.blck-service-card:hover {
    transform: translateY(-8px);

    border-color: rgba(207, 255, 4, .48);

    box-shadow:
        var(--sb-shadow-light-hover);
}

.blck-service-card .card-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 52px;
    height: 52px;

    color: var(--sb-lime);

    background: #111410;

    border-radius: 14px;

    box-shadow:
        0 7px 18px rgba(17, 20, 16, .12);

    font-size: 1.55rem;
}

.blck-service-card h3 {
    color: #111310;
}

.blck-service-card p {
    color: #646b61;
}

.blck-service-card .card-visual::after {
    background:
        linear-gradient(
            to top,
            rgba(4, 5, 4, .18),
            transparent 72%
        );
}

.blck-service-card .card-visual img {
    filter:
        saturate(.94)
        contrast(1.03);
}


/* ==========================================================
   IA — DARK FEATURE
========================================================== */

.blck-ia-banner {
    position: relative;

    color: #fff;

    background:
        radial-gradient(
            circle at 18% 50%,
            rgba(207, 255, 4, .085),
            transparent 25rem
        ),
        linear-gradient(
            110deg,
            #040504 0%,
            #0b0d0a 52%,
            #050605 100%
        );

    border-top: 1px solid rgba(207, 255, 4, .18);
    border-bottom: 1px solid rgba(207, 255, 4, .18);
}

.blck-ia-banner__wrapper {
    position: relative;
}

.blck-ia-banner__icon::before,
.blck-ia-banner__icon::after {
    border-color: rgba(207, 255, 4, .22);
}

.blck-ia-banner__icon .fa-brain {
    color: var(--sb-lime);

    filter:
        drop-shadow(0 0 20px rgba(207, 255, 4, .24));
}

.blck-ia-banner__content h2 {
    color: #fff;
}

.blck-ia-banner__content h2 span {
    color: var(--sb-lime);
}

.blck-ia-banner__content p {
    color: #b2b8af;
}

.blck-ia-banner__content .blck-btn.blck-btn--primary {
    background: transparent;
    color: var(--sb-lime);

    border: 1.5px solid var(--sb-lime);

    box-shadow: none;
}

.blck-ia-banner__content .blck-btn.blck-btn--primary:hover {
    background: var(--sb-lime);
    color: #111;
    border-color: var(--sb-lime);

    box-shadow:
        0 10px 30px rgba(207, 255, 4, .10);
}


/* ==========================================================
   SEPARATEURS
========================================================== */

.blck-quote-divider {
    height: 1px;
    min-height: 1px;

    padding: 0;

    background:
        linear-gradient(
            90deg,
            transparent,
            var(--sb-lime) 20%,
            var(--sb-lime) 80%,
            transparent
        );

    border: 0;
    box-shadow: none;
}


/* ==========================================================
   PROCESS
   DARK PHOTO + LIGHT ACTIVE CARD
========================================================== */

.blck-process {
    background: #060706;
}

.blck-process::before {
    background-image:
        linear-gradient(
            90deg,
            rgba(4, 5, 4, .77),
            rgba(4, 5, 4, .58) 50%,
            rgba(4, 5, 4, .72)
        ),
        url("/public/images/process.jpg");

    background-size: cover;
    background-position: center;

    background-blend-mode: normal;

    opacity: 1;
}

.blck-process::after {
    content: "";

    position: absolute;
    inset: 0;

    pointer-events: none;

    background:
        radial-gradient(
            circle at 50% 45%,
            transparent 0%,
            rgba(0, 0, 0, .18) 100%
        );

    z-index: 0;
}

.blck-process .blck-container {
    position: relative;
    z-index: 1;
}

.blck-process__head h2 {
    color: #fff;

    text-shadow:
        0 3px 16px rgba(0, 0, 0, .42);
}

.blck-process #process-toggle-btn {
    background: rgba(8, 9, 8, .52);
    color: #fff;

    border-color: rgba(255, 255, 255, .26);

    box-shadow:
        0 9px 26px rgba(0, 0, 0, .22);

    backdrop-filter: blur(8px);
}

.blck-process #process-toggle-btn:hover {
    background: var(--sb-lime);
    color: #111;
    border-color: var(--sb-lime);
}


/* PROCESS LIST */

.blck-process .process-steps-list .step-title {
    color: #9da39a;
}

.blck-process .process-steps-list .step-title:hover {
    color: #fff;
}

.blck-process .process-steps-list .step-title span {
    background: rgba(255, 255, 255, .16);
    color: #d8dbd5;
}

.blck-process .process-steps-list .step-title.is-active {
    color: var(--sb-lime);
}

.blck-process .process-steps-list .step-title.is-active span {
    background: var(--sb-lime);
    color: #111;
}

.blck-process .process-steps-list .step-title::after {
    background: var(--sb-lime);
}


/* PROCESS CARD */

.blck-process__step.swiper-slide {
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, .98),
            rgba(246, 247, 243, .98)
        );

    color: var(--sb-text-dark);

    border: 1px solid rgba(255, 255, 255, .18);

    box-shadow:
        0 25px 68px rgba(0, 0, 0, .36);

    backdrop-filter: none;
}

.blck-process__step.swiper-slide-active {
    border-color: rgba(207, 255, 4, .70);

    box-shadow:
        0 28px 75px rgba(0, 0, 0, .40),
        0 0 0 1px rgba(207, 255, 4, .18),
        0 0 36px rgba(207, 255, 4, .05);
}

.blck-process__step.swiper-slide .step-number {
    background: var(--sb-lime);
    color: #111;
}

.blck-process__icon {
    color: #759700;
}

.blck-process__text h3 {
    color: #111310;
}

.blck-process__text span {
    color: #62685f;
}


/* PROCESS NAV */

.blck-process .process-swiper-navigation .swiper-button-prev,
.blck-process .process-swiper-navigation .swiper-button-next {
    background: rgba(255, 255, 255, .95);

    color: #111;

    border: 1px solid rgba(255, 255, 255, .15);

    box-shadow:
        0 8px 24px rgba(0, 0, 0, .20);
}

.blck-process .process-swiper-navigation .swiper-button-prev:hover,
.blck-process .process-swiper-navigation .swiper-button-next:hover {
    background: var(--sb-lime);
    color: #111;
}

.blck-process .process-swiper-navigation .swiper-pagination {
    background: rgba(255, 255, 255, .15);
}

.blck-process
.process-swiper-navigation
.swiper-pagination
.swiper-pagination-progressbar-fill {
    background: var(--sb-lime);
}


/* ==========================================================
   TESTIMONIALS
   DARK CANVAS + LIGHT CARDS
========================================================== */

.blck-testimonials {
    --testimonials-accent: var(--sb-lime);
    --testimonials-text: #f6f7f3;
    --testimonials-muted: #a4aaa1;
    --testimonials-border: rgba(255, 255, 255, .08);

    color: #fff;

    background:
        radial-gradient(
            circle at 12% 18%,
            rgba(207, 255, 4, .055),
            transparent 30rem
        ),
        radial-gradient(
            circle at 90% 85%,
            rgba(255, 255, 255, .018),
            transparent 27rem
        ),
        linear-gradient(
            180deg,
            #050605,
            #090a09 50%,
            #050605
        );
}

.blck-testimonials::before,
.blck-testimonials::after {
    border-color: rgba(207, 255, 4, .22);

    box-shadow:
        0 0 28px rgba(207, 255, 4, .035);
}

.blck-testimonials__eyebrow {
    color: var(--sb-lime);

    background: rgba(207, 255, 4, .065);
    border-color: rgba(207, 255, 4, .18);
}

.blck-testimonials__head h2 {
    color: #fff;
}

.blck-testimonials__head p {
    color: #a5aba2;
}


/* TESTIMONIAL LIGHT CARDS */

.blck-testimonials .testimonial-card,
.blck-testimonials .testimonial-card--featured {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f6f7f3
        );

    color: #111310;

    border: 1px solid rgba(255, 255, 255, .14);

    box-shadow:
        0 24px 65px rgba(0, 0, 0, .32);
}

.blck-testimonials .testimonial-card::before {
    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(207, 255, 4, .90),
            transparent
        );

    box-shadow:
        0 0 14px rgba(207, 255, 4, .18);
}

.blck-testimonials .testimonial-card::after {
    background:
        radial-gradient(
            circle,
            rgba(207, 255, 4, .10),
            transparent 68%
        );
}

.blck-testimonials .testimonial-card:hover {
    transform: translateY(-5px);

    border-color: rgba(207, 255, 4, .50);

    box-shadow:
        var(--sb-shadow-light-hover);
}

.blck-testimonials .testimonial-card__quote-icon {
    background: #111410;
    color: var(--sb-lime);

    box-shadow:
        0 0 0 5px rgba(207, 255, 4, .12);
}

.blck-testimonials .testimonial-card__quote p,
.blck-testimonials
.testimonial-card:not(.testimonial-card--featured)
.testimonial-card__quote p {
    color: #292e27;
}

.blck-testimonials .testimonial-card__author {
    border-top-color: rgba(18, 23, 16, .10);
}

.blck-testimonials .testimonial-card__identity cite {
    color: #111310;
}

.blck-testimonials .testimonial-card__identity span {
    color: #697067;
}

.blck-testimonials .testimonial-card__avatar {
    background: #fff;

    border-color: var(--sb-lime);

    box-shadow:
        0 0 0 4px rgba(207, 255, 4, .13),
        0 8px 22px rgba(0, 0, 0, .10);
}

.blck-testimonials .testimonial-card__badge {
    color: #425500;

    background: rgba(207, 255, 4, .24);

    border-color: rgba(108, 139, 0, .18);
}


/* ==========================================================
   CLIENTS
   DARK EDITORIAL STRIP
========================================================== */

.blck-clients {
    background: #080908;
}

.blck-clients::before {
    background:
        radial-gradient(
            circle at 20% 50%,
            rgba(207, 255, 4, .025),
            transparent 20rem
        );
}

.blck-clients::after {
    background:
        linear-gradient(
            90deg,
            #070807,
            #0c0e0b,
            #070807
        );

    opacity: 1;

    border-top: 1px solid rgba(255, 255, 255, .075);
    border-bottom: 1px solid rgba(255, 255, 255, .075);
}

.blck-clients__content {
    --card-bg: transparent;
    --card-brd: transparent;
    --card-shadow: none;
}

.blck-clients__content .quote-icon {
    color: var(--sb-lime);
    filter: none;
}

.blck-clients__content p {
    color: #a4aaa1;
}

.blck-clients__content p strong {
    color: #fff;
}

.blck-clients__content .client-meta .client-name {
    color: #fff;
}

.blck-clients__content .client-meta .client-role {
    color: #8f958c;
}


/* ==========================================================
   PORTFOLIO
   DARK GALLERY
========================================================== */

.blck-portfolio {
    background:
        radial-gradient(
            circle at 50% 0,
            rgba(207, 255, 4, .025),
            transparent 32rem
        ),
        #060706;
}

.blck-portfolio__head h2 {
    color: #fff;
}


/* FILTERS */

.blck-portfolio .portfolio-filters .filter-btn {
    background: rgba(255, 255, 255, .95);

    color: #20241e;

    border: 1px solid rgba(255, 255, 255, .12);

    box-shadow:
        0 6px 18px rgba(0, 0, 0, .18);
}

.blck-portfolio .portfolio-filters .filter-btn:hover {
    background: #111410;
    color: #fff;

    border-color: rgba(207, 255, 4, .36);
}

.blck-portfolio .portfolio-filters .filter-btn.is-active {
    background: var(--sb-lime);
    color: #111;

    border-color: var(--sb-lime);
}


/* PORTFOLIO ITEMS */

.blck-portfolio__item {
    background: #111;

    border: 1px solid rgba(255, 255, 255, .09);

    box-shadow:
        0 20px 50px rgba(0, 0, 0, .28);
}

.blck-portfolio__item:hover {
    border-color: rgba(207, 255, 4, .34);

    box-shadow:
        0 30px 75px rgba(0, 0, 0, .44),
        0 0 30px rgba(207, 255, 4, .04);
}

.blck-portfolio .portfolio-overlay {
    background:
        linear-gradient(
            180deg,
            transparent 18%,
            rgba(5, 6, 5, .92) 100%
        );
}

.blck-portfolio .portfolio-overlay h3 {
    color: #fff;
}

.blck-portfolio .portfolio-tags span {
    background: rgba(255, 255, 255, .12);
    color: #fff;

    border: 1px solid rgba(255, 255, 255, .08);
}


/* ==========================================================
   FAQ
   DARK CANVAS + LIGHT ACCORDIONS
========================================================== */

.blck-faq {
    background:
        radial-gradient(
            circle at 14% 48%,
            rgba(207, 255, 4, .045),
            transparent 25rem
        ),
        linear-gradient(
            180deg,
            #090a09,
            #050605
        );

    border-top: 1px solid rgba(255, 255, 255, .05);
    border-bottom: 1px solid rgba(207, 255, 4, .16);
}

.blck-faq__head .faq-header-icon {
    color: var(--sb-lime);
}

.blck-faq__head h2 {
    color: #fff;
}

.blck-faq__head p {
    color: #aeb4ab;
}


/* FAQ LIGHT CARDS */

.blck-faq .faq-item {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f5f6f2
        );

    border: 1px solid rgba(255, 255, 255, .12);

    border-radius: 16px;

    box-shadow:
        0 16px 42px rgba(0, 0, 0, .23);

    backdrop-filter: none;
}

.blck-faq .faq-item:hover {
    transform: translateY(-3px);

    border-color: rgba(207, 255, 4, .48);

    box-shadow:
        0 24px 58px rgba(0, 0, 0, .32);
}

.blck-faq .faq-item[open] {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f2f4ed
        );

    border-color: rgba(207, 255, 4, .55);
}

.blck-faq .faq-question {
    color: #171a16;
}

.blck-faq .faq-question:hover,
.blck-faq .faq-item[open] .faq-question {
    color: #111;
}

.blck-faq .faq-icon {
    color: #111;

    background: var(--sb-lime);

    border-color: var(--sb-lime);
}

.blck-faq .faq-item[open] .faq-icon {
    background: #111;
    color: var(--sb-lime);

    border-color: #111;
}

.blck-faq .faq-answer {
    color: #62685f;
}

.blck-faq .faq-answer p {
    border-top-color: rgba(20, 24, 18, .10);
}

.blck-faq .faq-answer a {
    color: #566f00;
}


/* ==========================================================
   CONTACT — DARK PHOTO
========================================================== */

.blck-contact {
    background-image:
        linear-gradient(
            90deg,
            rgba(5, 6, 5, .90),
            rgba(5, 6, 5, .62) 54%,
            rgba(5, 6, 5, .78)
        ),
        url("/public/images/compressed/small/contact-bg-min.webp");

    background-color: #050605;

    border-top: 1px solid rgba(255, 255, 255, .06);
}

.blck-contact__wrapper {
    background: transparent;

    padding: 0;

    border: 0;
    border-radius: 0;

    box-shadow: none;

    backdrop-filter: none;
    -webkit-backdrop-filter: none;
}

.blck-contact .contact-photo {
    border-color: var(--sb-lime);

    box-shadow:
        0 0 0 7px rgba(207, 255, 4, .06),
        0 16px 42px rgba(0, 0, 0, .38);
}

.blck-contact h2 {
    color: #fff;
}

.blck-contact p {
    color: #d4d8d1;
}

.blck-contact .blck-btn--secondary {
    background: rgba(255, 255, 255, .055);
    color: #fff;

    border-color: rgba(255, 255, 255, .34);
}

.blck-contact .blck-btn--secondary:hover {
    background: var(--sb-lime);
    color: #111;

    border-color: var(--sb-lime);
}


/* ==========================================================
   FOOTER
========================================================== */

.blck-footer {
    background: #050605;

    border-top: 1px solid rgba(255, 255, 255, .075);
}

.blck-footer .footer-content {
    color: #8e948b;
}

.blck-footer .footer-content a {
    color: #a5aba2;
}

.blck-footer .footer-content a:hover {
    color: var(--sb-lime);
}


/* ==========================================================
   BACK TO TOP
========================================================== */

.back-to-top {
    background: var(--sb-lime);
    color: #111;

    border: 1px solid rgba(207, 255, 4, .55);

    box-shadow:
        0 9px 25px rgba(0, 0, 0, .20),
        0 0 20px rgba(207, 255, 4, .10);
}

.back-to-top:hover {
    background: #fff;
    color: #111;
}


/* ==========================================================
   CURSOR
========================================================== */

.blck-cursor {
    mix-blend-mode: screen;
}

.blck-cursor__dot {
    background: var(--sb-lime);

    box-shadow:
        0 0 8px var(--sb-lime),
        0 0 16px rgba(207, 255, 4, .72);
}

.blck-cursor__ring {
    border-color: rgba(207, 255, 4, .52);

    box-shadow:
        0 0 10px rgba(207, 255, 4, .25),
        0 0 26px rgba(207, 255, 4, .12);
}


/* ==========================================================
   MODALES
   DARK BACKDROP + LIGHT CARD
========================================================== */

.blck-modal__backdrop {
    background: rgba(3, 4, 3, .78);

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.blck-modal__dialog {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f5f6f2
        );

    color: #60675d;

    border: 1px solid rgba(255, 255, 255, .18);

    box-shadow:
        0 32px 100px rgba(0, 0, 0, .48);
}

.blck-modal__dialog::before {
    background:
        radial-gradient(
            120% 130% at 50% -10%,
            rgba(207, 255, 4, .08),
            transparent 54%
        );
}

.blck-modal__header {
    border-bottom-color: rgba(18, 23, 16, .10);
}

.blck-modal__header h2,
.blck-modal__header h3 {
    color: #111310;
}

.blck-modal__content h3 {
    color: #171a16;
}

.blck-modal__content p,
.blck-modal__content li {
    color: #62685f;
}

.blck-modal__footer {
    border-top-color: rgba(18, 23, 16, .10);
}

.blck-modal__close {
    background: #e9ece6;
    color: #41473f;
}

.blck-modal__close:hover {
    background: var(--sb-lime);
    color: #111;
}


/* ==========================================================
   FORMULAIRE MODALE
========================================================== */

.form-group label {
    color: #252a22;
}

input,
textarea,
select {
    background: #f4f6f1;

    border-color: rgba(19, 24, 17, .12);

    color: #171a16;
}

input::placeholder,
textarea::placeholder {
    color: #8a9187;
}

input:focus,
input:focus-visible,
textarea:focus,
textarea:focus-visible,
select:focus,
select:focus-visible {
    background: #fff;

    border-color: #8aae00;

    box-shadow:
        0 0 0 3px rgba(207, 255, 4, .22);
}

select {
    background-color: #f4f6f1 !important;
    color: #171a16;
}

.blck-custom-select__button {
    background: #f4f6f1;
    color: #171a16;

    border-color: rgba(19, 24, 17, .12);
}

.blck-custom-select__button:hover {
    background: #ecefe8;
}

.blck-custom-select__list {
    background: #fff;
    color: #171a16;

    border-color: rgba(19, 24, 17, .10);

    box-shadow:
        0 20px 55px rgba(0, 0, 0, .18);
}

.blck-custom-select__option:hover {
    background: #f1f4ed;
}

.blck-custom-select__option[aria-selected="true"] {
    background: rgba(207, 255, 4, .22);
}


/* ==========================================================
   MODALE IA
========================================================== */

.blck-modal#modal-ia-details .blck-modal__dialog {
    background:
        radial-gradient(
            circle at 15% 0,
            rgba(207, 255, 4, .08),
            transparent 24rem
        ),
        #f7f8f4;

    border-color: rgba(207, 255, 4, .22);

    box-shadow:
        0 30px 90px rgba(0, 0, 0, .46);

    animation: none;
}

.blck-modal#modal-ia-details .blck-modal__header {
    border-bottom-color: rgba(18, 23, 16, .10);
}

.blck-modal#modal-ia-details .blck-modal__body > p:first-of-type {
    color: #62685f;
}

.blck-modal#modal-ia-details .ia-features-list li {
    background: #fff;

    border-color: rgba(18, 23, 16, .10);
}

.blck-modal#modal-ia-details .ia-features-list li:hover {
    background: #f3f7e9;

    border-color: rgba(117, 151, 0, .28);

    box-shadow:
        0 12px 30px rgba(0, 0, 0, .08);
}

.blck-modal#modal-ia-details .ia-features-list li i {
    color: #708f00;

    background: rgba(207, 255, 4, .20);

    border-color: rgba(114, 147, 0, .16);
}

.blck-modal#modal-ia-details .ia-features-list li strong {
    color: #111310;
}

.blck-modal#modal-ia-details .ia-features-list li span,
.blck-modal#modal-ia-details .modal-ia-cta p {
    color: #62685f;
}


/* ==========================================================
   BOTTOM SHEET
========================================================== */

.bottom-sheet {
    background:
        linear-gradient(
            145deg,
            #ffffff,
            #f5f6f2
        );

    border: 1px solid rgba(20, 25, 18, .10);

    box-shadow:
        0 -18px 55px rgba(0, 0, 0, .32);
}

.bottom-sheet__handle {
    background: #d4d9d0;
}

.bottom-sheet__nav a {
    color: #171a16;
}

.bottom-sheet__nav a:hover {
    background: #edf0e9;
}

.bottom-sheet__nav a.is-active {
    background: var(--sb-lime);
    color: #111;
}


/* ==========================================================
   SIDEBAR
========================================================== */

.sidebar {
    background: #090a09;

    border-left: 1px solid rgba(255, 255, 255, .08);

    box-shadow:
        -18px 0 55px rgba(0, 0, 0, .38);
}

.sidebar ul li a {
    color: #fff;
}

.sidebar ul li a:hover {
    color: var(--sb-lime);
}

.sidebar__close {
    color: #fff;
}


/* ==========================================================
   LOADER
========================================================== */

.loader-overlay {
    background: #050605;
}

.loader-slogan {
    color: #fff;
}

.loader-spinner-circle {
    border-color: rgba(255, 255, 255, .12);
    border-top-color: var(--sb-lime);
}

.garage-door__panel {
    background-color: #070807;

    background-image:
        repeating-linear-gradient(
            to bottom,
            rgba(255, 255, 255, .055) 0,
            rgba(255, 255, 255, .055) 1px,
            rgba(8, 8, 8, .25) 1px,
            rgba(8, 8, 8, .58) 48px,
            rgba(3, 3, 3, .86) 49px,
            rgba(3, 3, 3, .86) 50px
        );
}


/* ==========================================================
   COOKIE BANNER
========================================================== */

.cookie-consent {
    background: #090a09;

    border-top: 1px solid rgba(255, 255, 255, .09);

    box-shadow:
        0 -12px 45px rgba(0, 0, 0, .28);
}

.cookie-consent p {
    color: #a7ada4;
}

.cookie-consent .cookie-link {
    color: #fff;
}


/* ==========================================================
   MOBILE
========================================================== */

@media (max-width: 768px) {

    .blck-header {
        background: rgba(5, 6, 5, .96);
    }

    .blck-hero .swiper-slide:nth-child(1)::after,
    .blck-hero .swiper-slide:nth-child(2)::after {
        background:
            linear-gradient(
                rgba(4, 5, 4, .58),
                rgba(4, 5, 4, .78)
            );
    }

    .blck-hero__content h1 {
        color: #fff;
    }

    .blck-hero__content p {
        color: rgba(255, 255, 255, .90);
    }


    /* PROCESS */

    .blck-process::before {
        background-image:
            linear-gradient(
                rgba(4, 5, 4, .75),
                rgba(4, 5, 4, .82)
            ),
            url("/public/images/process.jpg");
    }

    .blck-process .process-steps-list .step-title {
        color: #a2a89f;
    }


    /* SERVICE CARDS */

    .blck-service-card {
        box-shadow:
            0 18px 45px rgba(0, 0, 0, .28);
    }


    /* CONTACT */

    .blck-contact {
        background-image:
            linear-gradient(
                rgba(4, 5, 4, .78),
                rgba(4, 5, 4, .91)
            ),
            url("/public/images/compressed/small/contact-bg-min.webp");
    }

    .blck-contact__wrapper {
        padding: 0;
    }

}


/* ==========================================================
   REDUCED MOTION
========================================================== */

@media (prefers-reduced-motion: reduce) {

    .blck-service-card,
    .blck-portfolio__item,
    .blck-faq .faq-item,
    .testimonial-card {
        transition: none;
    }

}