        :root {
            --primary: #ff6b35;
            --primary-light: #ff875c;
            --dark: #090909;
            --dark-soft: #111111;
            --dark-card: #151515;
            --light: #f5f4f0;
            --gray: #a6a6a6;
            --border: rgba(255, 255, 255, 0.12);
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            font-family: "Manrope", sans-serif;
            background: var(--dark);
            color: #fff;
            overflow-x: hidden;
        }

        h1, h2, h3, h4, h5 {
            font-family: "Space Grotesk", sans-serif;
        }

        a {
            text-decoration: none;
        }

        /* ===============================
           NAVBAR
        =============================== */

        .navbar-premium {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            z-index: 999;
            padding: 24px 0;
            transition: .4s ease;
        }

        .navbar-premium.scrolled {
            background: rgba(9, 9, 9, .88);
            backdrop-filter: blur(18px);
            padding: 14px 0;
            border-bottom: 1px solid var(--border);
        }

        .brand {
            font-family: "Space Grotesk", sans-serif;
            color: #fff;
            font-size: 22px;
            font-weight: 700;
            letter-spacing: -1px;
        }

        .brand span {
            color: var(--primary);
        }

        .navbar-nav .nav-link {
            color: rgba(255,255,255,.75);
            font-size: 14px;
            font-weight: 600;
            margin: 0 10px;
            transition: .3s;
        }

        .navbar-nav .nav-link:hover {
            color: #fff;
        }

        .btn-nav {
            background: #fff;
            color: #111;
            border-radius: 50px;
            padding: 11px 22px;
            font-size: 13px;
            font-weight: 700;
            transition: .3s;
        }

        .btn-nav:hover {
            background: var(--primary);
            color: #fff;
            transform: translateY(-2px);
        }

        /* ===============================
           HERO
        =============================== */

        .hero {
            min-height: 100vh;
            display: flex;
            align-items: center;
            position: relative;
            padding: 150px 0 80px;
            overflow: hidden;
        }

        .hero::before {
            content: "";
            position: absolute;
            width: 650px;
            height: 650px;
            background: radial-gradient(
                circle,
                rgba(255,107,53,.22) 0%,
                rgba(255,107,53,.05) 40%,
                transparent 70%
            );
            top: -150px;
            right: -100px;
            pointer-events: none;
        }

        .hero-grid {
            position: absolute;
            inset: 0;
            opacity: .035;
            background-image:
                linear-gradient(rgba(255,255,255,.5) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255,255,255,.5) 1px, transparent 1px);
            background-size: 70px 70px;
            pointer-events: none;
        }

        .hero-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            color: var(--gray);
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 1.5px;
            text-transform: uppercase;
            margin-bottom: 28px;
        }

        .hero-eyebrow::before {
            content: "";
            width: 35px;
            height: 2px;
            background: var(--primary);
        }

        .hero h1 {
            font-size: clamp(48px, 6vw, 92px);
            line-height: .98;
            font-weight: 600;
            letter-spacing: -4px;
            max-width: 900px;
            margin-bottom: 32px;
        }

        .hero h1 span {
            color: var(--primary);
        }

        .hero-text {
            max-width: 620px;
            color: var(--gray);
            font-size: 18px;
            line-height: 1.8;
            margin-bottom: 38px;
        }

        .hero-buttons {
            display: flex;
            gap: 15px;
            flex-wrap: wrap;
        }

        .btn-primary-premium {
            background: var(--primary);
            color: #fff;
            border: 1px solid var(--primary);
            border-radius: 50px;
            padding: 16px 28px;
            font-weight: 700;
            font-size: 14px;
            transition: .3s;
        }

        .btn-primary-premium:hover {
            background: var(--primary-light);
            color: #fff;
            transform: translateY(-3px);
            box-shadow: 0 15px 40px rgba(255,107,53,.2);
        }

        .btn-outline-premium {
            border: 1px solid var(--border);
            color: #fff;
            border-radius: 50px;
            padding: 16px 28px;
            font-weight: 700;
            font-size: 14px;
            transition: .3s;
        }

        .btn-outline-premium:hover {
            border-color: #fff;
            color: #fff;
            transform: translateY(-3px);
        }

        /* Visual Hero */

        .hero-visual {
            position: relative;
            height: 540px;
        }

        .visual-orb {
            position: absolute;
            width: 360px;
            height: 360px;
            border-radius: 50%;
            background: linear-gradient(
                135deg,
                var(--primary),
                #7b2cff
            );
            filter: blur(50px);
            opacity: .25;
            top: 70px;
            right: 20px;
        }

        .project-window {
            position: absolute;
            right: 0;
            top: 40px;
            width: 90%;
            height: 440px;
            background: linear-gradient(
                145deg,
                rgba(255,255,255,.13),
                rgba(255,255,255,.03)
            );
            border: 1px solid rgba(255,255,255,.16);
            border-radius: 22px;
            padding: 12px;
            backdrop-filter: blur(15px);
            transform: rotate(-4deg);
            overflow: hidden;
        }

        .window-bar {
            height: 28px;
            display: flex;
            gap: 6px;
            align-items: center;
            padding-left: 8px;
        }

        .window-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(255,255,255,.35);
        }

        .project-content {
            height: calc(100% - 28px);
            border-radius: 13px;
            overflow: hidden;
            background:
                linear-gradient(
                    120deg,
                    rgba(0,0,0,.15),
                    rgba(0,0,0,.55)
                ),
                url("images/portfolio/bottega.jpg") center/cover;
            display: flex;
            align-items: end;
            padding: 35px;
        }

        .project-content h3 {
            font-size: 30px;
        }

        .floating-card {
            position: absolute;
            bottom: 20px;
            left: -30px;
            background: rgba(20,20,20,.92);
            border: 1px solid var(--border);
            backdrop-filter: blur(20px);
            border-radius: 16px;
            padding: 20px 24px;
            min-width: 230px;
        }

        .floating-card small {
            color: var(--gray);
            display: block;
            margin-bottom: 6px;
        }

        .floating-card strong {
            font-size: 15px;
        }

        /* ===============================
           STATS
        =============================== */

        .stats {
            border-top: 1px solid var(--border);
            border-bottom: 1px solid var(--border);
            padding: 35px 0;
        }

        .stat-item {
            padding: 10px 35px;
            border-right: 1px solid var(--border);
        }

        .stat-item:last-child {
            border: none;
        }

        .stat-number {
            font-family: "Space Grotesk", sans-serif;
            font-size: 32px;
            font-weight: 600;
            color: #fff;
        }

        .stat-label {
            font-size: 12px;
            color: var(--gray);
            text-transform: uppercase;
            letter-spacing: 1px;
        }

        /* ===============================
           SECTIONS
        =============================== */

        section {
            padding: 130px 0;
        }

        .section-tag {
            color: var(--primary);
            font-size: 12px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            margin-bottom: 18px;
        }

        .section-title {
            font-size: clamp(38px, 4vw, 62px);
            line-height: 1.05;
            letter-spacing: -2px;
            max-width: 760px;
            margin-bottom: 25px;
        }

        .section-text {
            color: var(--gray);
            font-size: 17px;
            line-height: 1.8;
        }

        /* ===============================
           ABOUT
        =============================== */

        .about {
            background: var(--light);
            color: #111;
        }

        .about .section-text {
            color: #686868;
            max-width: 580px;
        }

        .about-highlight {
            font-family: "Space Grotesk", sans-serif;
            font-size: clamp(28px, 3vw, 42px);
            line-height: 1.2;
            margin-top: 50px;
        }

        .about-highlight span {
            color: var(--primary);
        }

        /* ===============================
           SERVICES
        =============================== */

        .services-list {
            margin-top: 60px;
            border-top: 1px solid var(--border);
        }

        .service-row {
            display: flex;
            align-items: center;
            padding: 32px 15px;
            border-bottom: 1px solid var(--border);
            transition: .4s;
            cursor: pointer;
        }

        .service-row:hover {
            padding-left: 30px;
            background: rgba(255,255,255,.025);
        }

        .service-number {
            color: var(--primary);
            font-size: 13px;
            font-weight: 700;
            width: 100px;
        }

        .service-name {
            font-family: "Space Grotesk", sans-serif;
            font-size: clamp(25px, 3vw, 38px);
            flex: 1;
        }

        .service-description {
            color: var(--gray);
            max-width: 380px;
            font-size: 14px;
            line-height: 1.7;
        }

        .service-arrow {
            margin-left: 35px;
            font-size: 24px;
            color: var(--primary);
        }

        /* ===============================
           PORTFOLIO
        =============================== */

        .portfolio {
            background: #101010;
        }

        .portfolio-grid {
            margin-top: 65px;
        }

        .project-card {
            position: relative;
            overflow: hidden;
            border-radius: 18px;
            background: #1b1b1b;
            height: 380px;
            margin-bottom: 30px;
            display: flex;
            align-items: end;
        }

        .project-card.large {
            height: 600px;
        }

        .project-card img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            opacity: .72;
            transition: .6s ease;
        }

        .project-card:hover img {
            transform: scale(1.06);
            opacity: .9;
        }

        .project-card::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(
                to top,
                rgba(0,0,0,.95),
                transparent 65%
            );
        }

        .project-info {
            position: relative;
            z-index: 2;
            padding: 35px;
        }

        .project-category {
            color: var(--primary);
            font-size: 11px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1.5px;
            margin-bottom: 10px;
        }

        .project-title {
            font-size: 32px;
            margin-bottom: 10px;
        }

        .project-link {
            color: #fff;
            font-size: 14px;
            font-weight: 700;
        }

        .project-link i {
            color: var(--primary);
            margin-left: 6px;
        }

        /* ===============================
           PROCESS
        =============================== */

        .process {
            background: var(--light);
            color: #111;
        }

        .process-step {
            padding: 35px 0;
            border-top: 1px solid rgba(0,0,0,.12);
        }

        .process-number {
            color: var(--primary);
            font-family: "Space Grotesk", sans-serif;
            font-size: 15px;
            font-weight: 700;
        }

        .process-step h3 {
            font-size: 28px;
            margin: 12px 0;
        }

        .process-step p {
            color: #777;
            line-height: 1.7;
            font-size: 14px;
        }

        /* ===============================
           PARTNERS
        =============================== */

        .partners-box {
            margin-top: 60px;
            padding: 70px;
            border-radius: 24px;
            background: linear-gradient(
                135deg,
                #1b1b1b,
                #101010
            );
            border: 1px solid var(--border);
        }

        .partners-box h2 {
            font-size: clamp(35px, 4vw, 55px);
            max-width: 650px;
            letter-spacing: -2px;
        }

        /* ===============================
           CTA
        =============================== */

        .cta {
            padding: 160px 0;
            text-align: center;
            position: relative;
            overflow: hidden;
        }

        .cta::before {
            content: "";
            position: absolute;
            width: 700px;
            height: 700px;
            border-radius: 50%;
            background: radial-gradient(
                circle,
                rgba(255,107,53,.18),
                transparent 65%
            );
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
        }

        .cta .container {
            position: relative;
            z-index: 1;
        }

        .cta h2 {
            font-size: clamp(48px, 6vw, 82px);
            line-height: 1;
            letter-spacing: -3px;
            max-width: 950px;
            margin: 0 auto 30px;
        }

        .cta p {
            color: var(--gray);
            font-size: 18px;
            margin-bottom: 35px;
        }

        /* ===============================
           FOOTER
        =============================== */

        footer {
            border-top: 1px solid var(--border);
            padding: 70px 0 30px;
        }

        .footer-brand {
            font-family: "Space Grotesk", sans-serif;
            font-size: 26px;
            font-weight: 700;
            color: #fff;
        }

        .footer-brand span {
            color: var(--primary);
        }

        .footer-text {
            color: var(--gray);
            font-size: 14px;
            line-height: 1.7;
            max-width: 360px;
            margin-top: 20px;
        }

        .footer-title {
            font-size: 13px;
            font-weight: 800;
            text-transform: uppercase;
            letter-spacing: 1px;
            margin-bottom: 20px;
        }

        .footer-links {
            list-style: none;
            padding: 0;
        }

        .footer-links li {
            margin-bottom: 10px;
        }

        .footer-links a {
            color: var(--gray);
            font-size: 14px;
            transition: .3s;
        }

        .footer-links a:hover {
            color: var(--primary);
        }

        .copyright {
            border-top: 1px solid var(--border);
            margin-top: 60px;
            padding-top: 25px;
            color: #666;
            font-size: 12px;
        }

        /* ===============================
           RESPONSIVE
        =============================== */

        @media (max-width: 991px) {

            .navbar-premium {
                background: rgba(9,9,9,.95);
                padding: 15px 0;
            }

            .navbar-collapse {
                padding: 20px 0;
            }

            .hero {
                padding-top: 150px;
            }

            .hero-visual {
                margin-top: 60px;
                height: 400px;
            }

            .project-window {
                width: 100%;
            }

            .service-description {
                display: none;
            }

            .partners-box {
                padding: 45px 30px;
            }

            .stat-item {
                border: none;
                padding: 15px;
            }
        }

        @media (max-width: 576px) {

            section {
                padding: 85px 0;
            }

            .hero h1 {
                letter-spacing: -2px;
            }

            .hero-text {
                font-size: 16px;
            }

            .hero-visual {
                height: 330px;
            }

            .project-window {
                height: 300px;
            }

            .floating-card {
                left: 0;
                bottom: -30px;
            }

            .service-number {
                width: 50px;
            }

            .service-arrow {
                margin-left: 15px;
            }

            .project-card,
            .project-card.large {
                height: 430px;
            }

            .cta {
                padding: 100px 0;
            }
        }
        
        
 /* ==========================================
   PREMIUM HERO SHOWCASE
========================================== */

.hero-showcase {
    position: relative;
    height: 580px;
    width: 100%;
}

/* Luzes de fundo */

.hero-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(70px);
    pointer-events: none;
}

.glow-one {
    width: 330px;
    height: 330px;
    background: rgba(255, 107, 53, .30);
    top: 60px;
    right: 20px;
}

.glow-two {
    width: 220px;
    height: 220px;
    background: rgba(109, 65, 255, .20);
    bottom: 60px;
    left: 20px;
}

/* ==========================================
   NAVEGADOR / TELA PRINCIPAL
========================================== */

.showcase-browser {
    position: absolute;
    width: 92%;
    height: 430px;
    top: 45px;
    right: 0;

    background: #151515;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 18px;

    overflow: hidden;

    box-shadow:
        0 40px 100px rgba(0,0,0,.45);

    transform: rotate(-4deg);

    animation: browserFloat 7s ease-in-out infinite;
}

.browser-top {
    height: 42px;

    display: flex;
    align-items: center;

    padding: 0 16px;

    background: rgba(255,255,255,.04);
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.browser-dots {
    display: flex;
    gap: 6px;
}

.browser-dots span {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,.28);
}

.browser-url {
    margin-left: 15px;

    padding: 5px 12px;

    border-radius: 20px;

    background: rgba(255,255,255,.05);

    color: rgba(255,255,255,.35);

    font-size: 9px;

    flex: 1;
    text-align: center;
}

.browser-screen {
    height: calc(100% - 42px);
    overflow: hidden;
    background: #222;
}

.browser-screen img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}

/* ==========================================
   SMARTPHONE
========================================== */

.showcase-phone {
    position: absolute;

    width: 150px;
    height: 305px;

    bottom: 25px;
    left: 5px;

    padding: 7px;

    background: #0a0a0a;

    border: 2px solid rgba(255,255,255,.18);

    border-radius: 30px;

    z-index: 3;

    box-shadow:
        0 30px 70px rgba(0,0,0,.55);

    transform: rotate(7deg);

    animation: phoneFloat 6s ease-in-out infinite;
}

.phone-speaker {
    position: absolute;

    width: 45px;
    height: 5px;

    border-radius: 10px;

    background: #222;

    top: 14px;
    left: 50%;

    transform: translateX(-50%);

    z-index: 2;
}

.phone-screen {
    width: 100%;
    height: 100%;

    border-radius: 23px;

    overflow: hidden;

    background: #222;
}

.phone-screen img {
    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: top center;
}

/* ==========================================
   LABEL FLUTUANTE
========================================== */

.showcase-label {
    position: absolute;

    top: 0;
    left: -15px;

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px 18px;

    background: rgba(22,22,22,.88);

    border: 1px solid rgba(255,255,255,.12);

    border-radius: 14px;

    backdrop-filter: blur(20px);

    z-index: 5;

    box-shadow: 0 20px 50px rgba(0,0,0,.25);
}

.label-dot {
    width: 9px;
    height: 9px;

    border-radius: 50%;

    background: var(--primary);

    box-shadow: 0 0 15px var(--primary);
}

.showcase-label small {
    display: block;

    color: var(--gray);

    font-size: 9px;

    margin-bottom: 3px;
}

.showcase-label strong {
    display: block;

    font-size: 11px;

    font-weight: 700;
}

/* ==========================================
   CARD DE PROJETO
========================================== */

.showcase-project {
    position: absolute;

    right: -10px;
    bottom: 15px;

    width: 210px;

    padding: 20px;

    background: var(--primary);

    color: #fff;

    border-radius: 16px;

    z-index: 5;

    box-shadow:
        0 25px 60px rgba(255,107,53,.22);

    animation: cardFloat 8s ease-in-out infinite;
}

.showcase-project span {
    display: block;

    font-size: 9px;

    text-transform: uppercase;

    letter-spacing: 1px;

    opacity: .75;

    margin-bottom: 8px;
}

.showcase-project strong {
    display: block;

    font-family: "Space Grotesk", sans-serif;

    font-size: 18px;

    line-height: 1.2;

    max-width: 150px;
}

.showcase-project i {
    position: absolute;

    right: 20px;
    bottom: 20px;

    font-size: 20px;
}

/* ==========================================
   ANIMAÇÕES
========================================== */

@keyframes browserFloat {

    0%, 100% {
        transform: rotate(-4deg) translateY(0);
    }

    50% {
        transform: rotate(-4deg) translateY(-12px);
    }

}

@keyframes phoneFloat {

    0%, 100% {
        transform: rotate(7deg) translateY(0);
    }

    50% {
        transform: rotate(7deg) translateY(-15px);
    }

}

@keyframes cardFloat {

    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

}

/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 991px) {

    .hero-showcase {
        max-width: 560px;
        margin: 0 auto;
        height: 500px;
    }

}

@media (max-width: 576px) {

    .hero-showcase {
        height: 390px;
        transform: scale(.95);
        transform-origin: center top;
    }

    .showcase-browser {
        height: 310px;
        width: 90%;
    }

    .showcase-phone {
        width: 110px;
        height: 220px;
        bottom: 5px;
    }

    .showcase-label {
        transform: scale(.85);
        transform-origin: left top;
    }

    .showcase-project {
        transform: scale(.8);
        transform-origin: right bottom;
        right: -20px;
    }

}       
        
        
        
        
        
/* Troca suave dos projetos */

.browser-screen img,
.phone-screen img {
    transition: opacity .5s ease, transform .6s ease;
}

.project-changing {
    opacity: 0;
    transform: scale(.97);
}

.showcase-project {
    transition: opacity .35s ease, transform .35s ease;
}        
        
/* ==========================================
   NÚCLEO DE TECNOLOGIA PARA AGÊNCIAS
========================================== */

.agency-partner-section {
    position: relative;
    padding: 140px 0;
    background: #0b0b0d;
    overflow: hidden;
}

.partner-intro {
    margin-bottom: 70px;
}

.section-tag,
.team-tag {
    display: flex;
    align-items: center;
    gap: 10px;

    margin-bottom: 24px;

    color: var(--primary);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.section-tag span,
.team-tag span {
    width: 28px;
    height: 1px;
    background: var(--primary);
}

.partner-intro h2 {
    margin: 0;

    color: #fff;

    font-size: clamp(38px, 4vw, 64px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -2px;
}

.partner-intro h2 span {
    color: var(--primary);
}

.partner-description {
    margin: 0;

    color: rgba(255, 255, 255, .60);

    font-size: 17px;
    line-height: 1.8;
}


/* ==========================================
   FLUXO DA PARCERIA
========================================== */

.partnership-flow {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 35px 45px;

    margin-bottom: 40px;

    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 20px;

    background: rgba(255, 255, 255, .025);
}

.flow-item {
    display: flex;
    align-items: center;
    gap: 16px;
}

.flow-number {
    color: rgba(255, 255, 255, .20);
    font-size: 13px;
    font-weight: 700;
}

.flow-content {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.flow-label {
    color: rgba(255, 255, 255, .45);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.flow-content strong {
    color: #fff;
    font-size: 15px;
}

.web-agency-flow .flow-content strong {
    color: var(--primary);
}

.flow-connector {
    display: flex;
    align-items: center;
    gap: 10px;

    color: var(--primary);
}

.flow-connector span {
    width: 45px;
    height: 1px;
    background: rgba(255, 255, 255, .15);
}


/* ==========================================
   DESTAQUE
========================================== */

.partner-highlight {
    padding: 50px;

    margin-bottom: 70px;

    border-radius: 24px;

    background:
        linear-gradient(
            135deg,
            rgba(255, 255, 255, .06),
            rgba(255, 255, 255, .015)
        );

    border: 1px solid rgba(255, 255, 255, .08);
}

.partner-highlight-content {
    display: flex;
    align-items: flex-start;
    gap: 28px;
}

.highlight-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    flex-shrink: 0;

    width: 58px;
    height: 58px;

    border-radius: 16px;

    background: var(--primary);
    color: #fff;

    font-size: 23px;
}

.partner-highlight h3 {
    margin: 0 0 16px;

    color: #fff;

    font-size: clamp(25px, 2.5vw, 38px);
    line-height: 1.25;
}

.partner-highlight h3 span {
    color: var(--primary);
}

.partner-highlight p {

    margin: 0;

    color: rgba(255, 255, 255, .58);

    font-size: 16px;
    line-height: 1.8;
}


/* ==========================================
   CARDS DE BENEFÍCIOS
========================================== */

.partner-benefits {
    margin-top: 20px;
}

.partner-benefit-card {
    position: relative;

    height: 100%;
    min-height: 280px;

    padding: 35px;

    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 18px;

    background: #101013;

    transition: .35s ease;
}

.partner-benefit-card:hover {
    transform: translateY(-8px);

    border-color: rgba(255, 255, 255, .20);

    background: #151519;
}

.benefit-number {
    position: absolute;

    top: 25px;
    right: 28px;

    color: rgba(255, 255, 255, .15);

    font-size: 12px;
    font-weight: 700;
}

.partner-benefit-card i {
    display: block;

    margin-bottom: 35px;

    color: var(--primary);

    font-size: 28px;
}

.partner-benefit-card h4 {
    color: #fff;

    margin-bottom: 15px;

    font-size: 19px;
}

.partner-benefit-card p {
    margin: 0;

    color: rgba(255, 255, 255, .52);

    font-size: 14px;
    line-height: 1.7;
}


/* CTA */

.partner-cta {
    display: flex;
    justify-content: center;

    margin-top: 60px;
}

.btn-partner {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 16px 26px;

    border-radius: 50px;

    background: var(--primary);
    color: #fff;

    text-decoration: none;
    font-weight: 600;

    transition: .3s ease;
}

.btn-partner:hover {
    transform: translateY(-3px);

    background: #fff;
    color: #111;
}


/* ==========================================
   EQUIPE DIGITAL MENSAL
========================================== */

.digital-team-section {
    position: relative;

    padding: 160px 0;

    text-align: center;

    background: #111115;

    overflow: hidden;
}

.digital-team-glow {
    position: absolute;

    width: 600px;
    height: 600px;

    top: 50%;
    left: 50%;

    transform: translate(-50%, -50%);

    border-radius: 50%;

    background: var(--primary);

    filter: blur(180px);

    opacity: .08;

    pointer-events: none;
}

.digital-team-content {
    position: relative;

    max-width: 950px;

    margin: auto;
}

.team-tag {
    justify-content: center;
}

.team-eyebrow {
    margin-bottom: 25px;

    color: var(--primary);

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
}

.digital-team-content h2 {
    margin-bottom: 30px;

    color: #fff;

    font-size: clamp(45px, 6vw, 82px);
    font-weight: 600;
    line-height: 1.05;
    letter-spacing: -3px;
}

.digital-team-content h2 span {
    display: block;

    color: var(--primary);
}

.team-description {
    max-width: 720px;

    margin: 0 auto 45px;

    color: rgba(255, 255, 255, .62);

    font-size: 18px;
    line-height: 1.8;
}


/* Pilares */

.team-pillars {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;

    margin-bottom: 55px;
}

.team-pillar {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    padding: 12px 18px;

    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: 50px;

    background: rgba(255, 255, 255, .03);

    color: rgba(255, 255, 255, .75);

    font-size: 13px;
}

.team-pillar i {
    color: var(--primary);
}


/* Mensagem */

.team-message {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;

    margin-bottom: 45px;

    font-size: 17px;
}

.team-message span {
    color: rgba(255, 255, 255, .50);
}

.team-message strong {
    color: #fff;
}


/* Botão */

.btn-team {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding: 18px 30px;

    border-radius: 50px;

    background: var(--primary);
    color: #fff;

    text-decoration: none;
    font-weight: 600;

    transition: .3s ease;
}

.btn-team:hover {
    transform: translateY(-4px);

    background: #fff;
    color: #111;
}


/* ==========================================
   RESPONSIVO
========================================== */

@media (max-width: 991px) {

    .agency-partner-section {
        padding: 100px 0;
    }

    .partnership-flow {
        flex-direction: column;
        align-items: flex-start;
        gap: 25px;
    }

    .flow-connector {
        margin-left: 20px;
        transform: rotate(90deg);
    }

}


@media (max-width: 767px) {

    .agency-partner-section,
    .digital-team-section {
        padding: 80px 0;
    }

    .partner-highlight {
        padding: 30px;
    }

    .partner-highlight-content {
        flex-direction: column;
    }

    .partner-benefit-card {
        min-height: auto;
    }

    .digital-team-content h2 {
        letter-spacing: -1.5px;
    }

    .team-description {
        font-size: 16px;
    }

}

/* ==========================================
   FAQ - PERGUNTAS FREQUENTES
========================================== */

.faq-section {
    padding: 140px 0;
    background: #0b0b0d;
}

.faq-header {
    margin-bottom: 70px;
}

.faq-header h2 {
    margin: 0;

    color: #fff;

    font-size: clamp(38px, 4vw, 64px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -2px;
}

.faq-header h2 span {
    color: var(--primary);
}

.faq-header p {
    margin: 0;

    color: rgba(255, 255, 255, .60);

    font-size: 17px;
    line-height: 1.8;
}


/* LISTA */

.faq-list {
    border-top: 1px solid rgba(255, 255, 255, .10);
}

.faq-item {
    border-bottom: 1px solid rgba(255, 255, 255, .10);
}

.faq-question {
    width: 100%;

    display: flex;
    align-items: center;
    justify-content: space-between;

    gap: 30px;

    padding: 28px 10px;

    border: 0;
    background: transparent;

    color: #fff;

    text-align: left;

    font-size: 18px;
    font-weight: 500;

    cursor: pointer;

    transition: .3s ease;
}

.faq-question:hover {
    color: var(--primary);
}

.faq-question i {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 38px;
    height: 38px;

    flex-shrink: 0;

    border: 1px solid rgba(255, 255, 255, .15);
    border-radius: 50%;

    color: var(--primary);

    font-size: 15px;

    transition: .35s ease;
}

.faq-item.active .faq-question i {
    background: var(--primary);
    border-color: var(--primary);
    color: #fff;

    transform: rotate(45deg);
}


/* RESPOSTA COM ANIMAÇÃO */

.faq-answer {
    display: grid;
    grid-template-rows: 0fr;

    transition: grid-template-rows .4s ease;
}

.faq-answer > div {
    overflow: hidden;

    padding: 0 70px 0 10px;

    color: rgba(255, 255, 255, .58);

    font-size: 16px;
    line-height: 1.8;
}

.faq-item.active .faq-answer {
    grid-template-rows: 1fr;
}

.faq-item.active .faq-answer > div {
    padding-bottom: 30px;
}


/* CTA */

.faq-cta {
    margin-top: 65px;

    text-align: center;
}

.faq-cta p {
    margin-bottom: 15px;

    color: rgba(255, 255, 255, .50);
}

.faq-cta a {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    color: #fff;

    font-size: 18px;
    font-weight: 600;

    text-decoration: none;
}

.faq-cta a i {
    color: var(--primary);

    transition: transform .3s ease;
}

.faq-cta a:hover i {
    transform: translate(4px, -4px);
}


/* RESPONSIVO */

@media (max-width: 767px) {

    .faq-section {
        padding: 80px 0;
    }

    .faq-header {
        margin-bottom: 45px;
    }

    .faq-header p {
        margin-top: 25px;
        font-size: 16px;
    }

    .faq-question {
        padding: 22px 0;
        font-size: 16px;
    }

    .faq-answer > div {
        padding-right: 15px;
        font-size: 15px;
    }

}


/* ==========================================
   WHATSAPP FLUTUANTE
========================================== */

.whatsapp-float {
    position: fixed;

    right: 28px;
    bottom: 28px;

    display: flex;
    align-items: center;
    gap: 12px;

    z-index: 9999;

    text-decoration: none;
}


/* Mensagem */

.whatsapp-tooltip {
    padding: 10px 16px;

    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 50px;

    background: rgba(20, 20, 23, .92);

    backdrop-filter: blur(12px);

    color: #fff;

    font-size: 13px;
    font-weight: 500;

    box-shadow: 0 10px 30px rgba(0, 0, 0, .25);

    opacity: 0;
    transform: translateX(10px);

    pointer-events: none;

    transition: all .3s ease;
}


/* Ícone */

.whatsapp-icon {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 56px;
    height: 56px;

    border-radius: 50%;

    background: var(--primary);
    color: #fff;

    font-size: 25px;

    box-shadow:
        0 15px 35px rgba(0, 0, 0, .30);

    transition: all .3s ease;
}


/* Hover */

.whatsapp-float:hover .whatsapp-tooltip {
    opacity: 1;
    transform: translateX(0);
}

.whatsapp-float:hover .whatsapp-icon {
    transform: translateY(-4px) scale(1.05);
    background: #25D366;
}


/* Animação discreta */

.whatsapp-icon {
    animation: whatsappPulse 3s ease-in-out infinite;
}

@keyframes whatsappPulse {

    0%, 100% {
        box-shadow:
            0 15px 35px rgba(0, 0, 0, .30);
    }

    50% {
        box-shadow:
            0 15px 45px rgba(37, 211, 102, .25);
    }

}


/* MOBILE */

@media (max-width: 767px) {

    .whatsapp-float {
        right: 20px;
        bottom: 20px;
    }

    .whatsapp-tooltip {
        display: none;
    }

    .whatsapp-icon {
        width: 52px;
        height: 52px;
        font-size: 23px;
    }

}


/* ==========================================
   PLATAFORMAS PRONTAS
========================================== */

.platforms-section {
    position: relative;
    padding: 10px 0;
    background: #101010;
    overflow: hidden;
}

.platforms-section::before {
    content: "";
    position: absolute;
    width: 500px;
    height: 500px;
    top: 50%;
    right: -220px;
    transform: translateY(-50%);
    border-radius: 50%;
    background: var(--primary);
    filter: blur(160px);
    opacity: .08;
    pointer-events: none;
}

.platforms-header {
    margin-bottom: 70px;
}

.platforms-header h2 {
    margin: 0;
    color: #fff;
    font-size: clamp(38px, 4vw, 64px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -2px;
    max-width: 800px;
}

.platforms-header h2 span {
    color: var(--primary);
}

.platforms-header p {
    margin-top: 25px;
    max-width: 650px;
    color: rgba(255,255,255,.58);
    font-size: 17px;
    line-height: 1.8;
}

/* GRID */

.platforms-grid {
    position: relative;
    z-index: 2;
}

/* CARD */

.platform-card {
    position: relative;
    height: 100%;
    min-height: 330px;
    padding: 32px;
    border: 1px solid rgba(255,255,255,.09);
    border-radius: 22px;
    background: #151515;
    overflow: hidden;
    transition: .4s ease;
}

.platform-card::before {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    top: -80px;
    right: -70px;
    border-radius: 50%;
    background: var(--primary);
    filter: blur(70px);
    opacity: .08;
    transition: .4s ease;
}

.platform-card:hover {
    transform: translateY(-8px);
    border-color: rgba(255,255,255,.18);
    background: #181818;
    box-shadow: 0 25px 60px rgba(0,0,0,.25);
}

.platform-card:hover::before {
    opacity: .16;
}

/* ÍCONE */

.platform-icon {
    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 58px;
    height: 58px;

    margin-bottom: 55px;

    border-radius: 16px;

    background: rgba(255,107,53,.10);
    border: 1px solid rgba(255,107,53,.18);

    color: var(--primary);
    font-size: 24px;
}

/* CONTEÚDO */

.platform-card h3 {
    position: relative;
    z-index: 2;

    margin-bottom: 14px;

    color: #fff;

    font-size: 24px;
    font-weight: 600;
    letter-spacing: -.5px;
}

.platform-card p {
    position: relative;
    z-index: 2;

    margin: 0;

    color: rgba(255,255,255,.52);

    font-size: 14px;
    line-height: 1.75;
}

/* LINK */

.platform-link {
    position: relative;
    z-index: 2;

    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-top: 25px;

    color: #fff;

    font-size: 13px;
    font-weight: 700;

    text-decoration: none;

    transition: .3s ease;
}

.platform-link i {
    color: var(--primary);
    transition: transform .3s ease;
}

.platform-link:hover {
    color: #fff;
}

.platform-link:hover i {
    transform: translate(4px, -4px);
}

/* DESTAQUE */

.platform-card.featured {
    background:
        linear-gradient(
            145deg,
            rgba(255,107,53,.13),
            rgba(255,255,255,.025)
        );

    border-color: rgba(255,107,53,.25);
}

.platform-card.featured .platform-icon {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

/* RESPONSIVO */

@media (max-width: 991px) {

    .platforms-section {
        padding: 100px 0;
    }

    .platforms-header {
        margin-bottom: 50px;
    }

}

@media (max-width: 767px) {

    .platforms-section {
        padding: 80px 0;
    }

    .platforms-header h2 {
        letter-spacing: -1.5px;
    }

    .platforms-header p {
        font-size: 16px;
    }

    .platform-card {
        min-height: auto;
        padding: 28px;
    }

    .platform-icon {
        margin-bottom: 40px;
    }

}