/* ==========================================================
   PÁGINA AUDIOVISUAL (CORRIGIDO — tipografia fluida)
==========================================================*/

.av-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(120px,16vw,180px) 0 clamp(80px,11vw,130px);
    background:
        radial-gradient(circle at 15% 20%,rgba(255,106,0,.10),transparent 28%),
        radial-gradient(circle at 90% 10%,rgba(11,120,255,.14),transparent 32%),
        radial-gradient(circle at 50% 100%,rgba(255,255,255,.03),transparent 40%),
        linear-gradient(145deg,#000f26,#001633,#001b46,#000f26);
}

/* ==========================================================
BACKGROUND
==========================================================*/

.av-hero::before{

    content:"";
    position:absolute;
    inset:0;

    background-image:

        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),

        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);

    background-size:60px 60px;

    opacity:.8;

}

.av-hero::after{

    content:"";

    position:absolute;

    width:700px;
    height:700px;

    right:-250px;
    top:-250px;

    background:radial-gradient(circle,
    rgba(11,120,255,.18),
    transparent 70%);

    filter:blur(50px);

    animation:heroGlow 12s ease-in-out infinite;

}

/* ==========================================================
CONTAINER
==========================================================*/

.av-hero-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:1.05fr .95fr;

    align-items:center;

    gap:clamp(40px,6vw,90px);

}

/* ==========================================================
TAG
==========================================================*/

.av-tag{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:11px 20px;

    border-radius:50px;

    border:1px solid rgba(255,255,255,.08);

    background:rgba(255,255,255,.05);

    color:var(--orange);

    font-weight:600;

    font-size:clamp(.85rem,1.6vw,1rem);

    backdrop-filter:blur(15px);

    margin-bottom:30px;

}

.av-tag i{

    font-size:.9rem;

}

/* ==========================================================
TEXTOS
==========================================================*/

.av-hero-text{
    text-align: center;
}

.av-hero-text h1{

    font-size:clamp(2.4rem,5.5vw,4.5rem);

    line-height:1.1;

    color:#fff;

    margin-bottom:28px;

    max-width:720px;

}

.av-hero-text h1 span{

    color:var(--orange);

}

.av-hero-text p{

    color:#b9c9df;

    font-size:clamp(.95rem,1.6vw,1.08rem);

    line-height:1.9;

    max-width:600px;

    margin-bottom:clamp(30px,5vw,45px);

}

/* ==========================================================
BOTÕES
==========================================================*/

.av-buttons{

    display:flex;

    flex-wrap:wrap;

    gap:18px;

}

.av-buttons .btn-primary{

    box-shadow:

    0 0 0 rgba(255,106,0,0),

    0 15px 35px rgba(255,106,0,.18);

}

.av-buttons .btn-primary:hover{

    box-shadow:

    0 20px 40px rgba(255,106,0,.35);

}

.av-buttons .btn-secondary{

    backdrop-filter:blur(20px);

    background:rgba(255,255,255,.04);

}

.av-buttons .btn-secondary:hover{

    background:rgba(255,255,255,.08);

}

/* ==========================================================
IMAGEM
==========================================================*/

.av-hero-image{

    position:relative;

    display:flex;

    justify-content:center;

    align-items:center;

}

/* brilho */

.av-hero-image::before{

    content:"";

    position:absolute;

    width:420px;

    height:420px;

    border-radius:50%;

    background:rgba(11,120,255,.25);

    filter:blur(120px);

    animation:pulseLight 8s infinite ease;

}

/* brilho laranja */

.av-hero-image::after{

    content:"";

    position:absolute;

    width:180px;

    height:180px;

    left:10%;

    bottom:5%;

    border-radius:50%;

    background:rgba(255,106,0,.18);

    filter:blur(70px);

}

.av-hero-image img{

    position:relative;

    z-index:2;

    width:100%;

    max-width:520px;

    border-radius:24px;

    border:1px solid rgba(255,255,255,.08);

    box-shadow:

    0 45px 80px rgba(0,0,0,.55);

    transition:.5s;

}

.av-hero-image:hover img{

    transform:

    scale(1.03)

    rotate(-1deg);

}

/* ==========================================================
FLOATING CARD
==========================================================*/

.av-floating-card{

    position:absolute;

    right:-20px;

    bottom:40px;

    z-index:5;

    background:rgba(5,18,48,.92);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.08);

    padding:18px 22px;

    border-radius:18px;

    display:flex;

    align-items:center;

    gap:15px;

    animation:floatCard 5s ease-in-out infinite;

}

.av-floating-card i{

    width:50px;

    height:50px;

    border-radius:50%;

    background:linear-gradient(135deg,var(--orange),#ff914d);

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    font-size:1.2rem;

    flex-shrink:0;

}

.av-floating-card h4{

    color:#fff;

    font-size:clamp(.9rem,1.6vw,1rem);

    margin-bottom:4px;

}

.av-floating-card p{

    color:#91a8c8;

    font-size:clamp(.78rem,1.4vw,.85rem);

}

/* ==========================================================
SCROLL
==========================================================*/

.av-scroll{

    position:absolute;

    bottom:35px;

    left:50%;

    transform:translateX(-50%);

    z-index:4;

    display:flex;

    flex-direction:column;

    align-items:center;

    gap:10px;

    color:#9ab0cb;

    font-size:.75rem;

    letter-spacing:2px;

    text-transform:uppercase;

}

.av-scroll span{

    width:2px;

    height:45px;

    background:linear-gradient(

    transparent,

    var(--orange),

    transparent

    );

    animation:scrollDown 2s infinite;

}

/* ==========================================================
ANIMAÇÕES
==========================================================*/

@keyframes heroGlow{

    0%{

        transform:translate(0,0);

    }

    50%{

        transform:translate(-40px,30px);

    }

    100%{

        transform:translate(0,0);

    }

}

@keyframes pulseLight{

    0%{

        transform:scale(1);

        opacity:.6;

    }

    50%{

        transform:scale(1.18);

        opacity:1;

    }

    100%{

        transform:scale(1);

        opacity:.6;

    }

}

@keyframes floatCard{

    0%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-15px);

    }

    100%{

        transform:translateY(0);

    }

}

@keyframes scrollDown{

    0%{

        opacity:0;

        transform:translateY(-8px);

    }

    50%{

        opacity:1;

    }

    100%{

        opacity:0;

        transform:translateY(8px);

    }

}

/* ==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:1100px){

.av-hero-grid{

    grid-template-columns:1fr;

    text-align:center;

    gap:70px;

}

.av-hero-image{

    order:-1;

}

.av-buttons{

    justify-content:center;

}

.av-hero-text p{

    margin:auto auto 40px;

}

.av-floating-card{

    right:20px;

}

}

@media(max-width:768px){

.av-buttons{

    flex-direction:column;

}

.av-buttons a{

    width:100%;

}

.av-floating-card{

    position:relative;

    right:auto;

    bottom:auto;

    margin:35px auto 0;

    width:fit-content;

}

.av-scroll{

    display:none;

}

}

/* ==========================================================
   PARTE 2
   SERVIÇOS + EQUIPAMENTOS
==========================================================*/

/*==========================================================
SERVIÇOS
==========================================================*/

.services{

    position:relative;
    background:linear-gradient(180deg,#001633,#001226);
    overflow:hidden;

}

.services::before{

    content:"";
    position:absolute;
    inset:0;

    background:
    radial-gradient(circle at left,rgba(255,106,0,.06),transparent 30%),
    radial-gradient(circle at right,rgba(11,120,255,.08),transparent 35%);

    pointer-events:none;

}

.services-grid{

    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:35px;

}

/*==========================================================
CARD
==========================================================*/

.service-card{

    position:relative;

    overflow:hidden;

    background:rgba(255,255,255,.04);

    backdrop-filter:blur(18px);

    border:1px solid rgba(255,255,255,.08);

    border-radius:22px;

    padding:clamp(30px,4vw,45px) clamp(24px,3.5vw,35px);

    transition:.45s;

}

.service-card::before{

    content:"";

    position:absolute;

    top:-120%;

    left:-40%;

    width:70px;

    height:240%;

    background:

    linear-gradient(

    rgba(255,255,255,0),

    rgba(255,255,255,.18),

    rgba(255,255,255,0)

    );

    transform:rotate(25deg);

    transition:.8s;

}

.service-card:hover::before{

    left:140%;

}

.service-card::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:22px;

    padding:1px;

    background:

    linear-gradient(

    135deg,

    rgba(255,106,0,.35),

    rgba(11,120,255,.35)

    );

    -webkit-mask:

    linear-gradient(#fff 0 0) content-box,

    linear-gradient(#fff 0 0);

    -webkit-mask-composite:xor;

    mask-composite:exclude;

    opacity:0;

    transition:.4s;

}

.service-card:hover::after{

    opacity:1;

}

.service-card:hover{

    transform:translateY(-12px);

    background:rgba(255,255,255,.06);

    box-shadow:

    0 30px 70px rgba(0,0,0,.35);

}

/*==========================================================
ÍCONE
==========================================================*/

.service-card i{

    width:75px;

    height:75px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:18px;

    margin-bottom:28px;

    background:

    linear-gradient(

    135deg,

    var(--orange),

    #ff8d37

    );

    color:#fff;

    font-size:1.8rem;

    transition:.4s;

}

.service-card:hover i{

    transform:rotate(-8deg) scale(1.08);

    background:

    linear-gradient(

    135deg,

    var(--blue),

    #2f95ff

    );

    box-shadow:0 0 35px rgba(11,120,255,.35);

}

.service-card h3{

    color:#fff;

    font-size:clamp(1.15rem,2vw,1.35rem);

    margin-bottom:18px;

}

.service-card p{

    color:#b8c8dd;

    font-size:clamp(.92rem,1.6vw,1rem);

    line-height:1.9;

}

/*==========================================================
EQUIPAMENTOS
==========================================================*/

.equipment{

    position:relative;

    overflow:hidden;

    background:

    linear-gradient(

    180deg,

    #001226,

    #001633

    );

}

.equipment::before{

    content:"";

    position:absolute;

    width:650px;

    height:650px;

    left:-250px;

    bottom:-250px;

    background:

    radial-gradient(circle,

    rgba(255,106,0,.12),

    transparent 70%);

    filter:blur(40px);

}

.equipment-grid{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:clamp(40px,6vw,90px);

    align-items:center;

}

/*==========================================================
IMAGEM
==========================================================*/

.equipment-image{

    position:relative;
    margin-left: 1vw;

}

.equipment-image::before{

    content:"";

    position:absolute;

    inset:15%;

    border-radius:30px;

    background:

    rgba(11,120,255,.15);

    filter:blur(80px);

}

.equipment-image img{

    position:relative;

    z-index:2;

    width:100%;

    border-radius:26px;

    border:1px solid rgba(255,255,255,.08);

    box-shadow:

    0 40px 70px rgba(0,0,0,.45);

}

/*==========================================================
TEXTO
==========================================================*/

.equipment-content span{

    display:inline-block;

    color:var(--orange);

    text-transform:uppercase;

    letter-spacing:2px;

    font-weight:700;

    font-size:clamp(.85rem,1.6vw,1rem);

    margin-bottom:18px;

}

.equipment-content h2{

    font-size:clamp(1.9rem,4vw,2.8rem);

    color:#fff;

    margin-bottom:25px;

    line-height:1.2;

}

.equipment-content p{

    color:#b7c9de;

    font-size:clamp(.95rem,1.6vw,1.05rem);

    line-height:2;

    margin-bottom:clamp(30px,5vw,45px);

}

/*==========================================================
LISTA
==========================================================*/

.equipment-list{

    display:grid;

    gap:18px;

}

.equipment-list div{

    display:flex;

    align-items:center;

    gap:18px;

    padding:20px 25px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    border-radius:16px;

    transition:.35s;

}

.equipment-list div:hover{

    transform:translateX(10px);

    border-color:rgba(11,120,255,.35);

    background:rgba(255,255,255,.06);

}

.equipment-list i{

    width:60px;

    height:60px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:15px;

    color:#fff;

    font-size:1.4rem;

    flex-shrink:0;

    background:

    linear-gradient(

    135deg,

    var(--orange),

    #ff9d52

    );

    transition:.35s;

}

.equipment-list div:hover i{

    background:

    linear-gradient(

    135deg,

    var(--blue),

    #2f95ff

    );

    transform:scale(1.08);

}

.equipment-list span{

    margin:0;

    letter-spacing:0;

    color:#fff;

    text-transform:none;

    font-size:clamp(.92rem,1.6vw,1.05rem);

}

/*==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:1100px){

.equipment-grid{

    grid-template-columns:1fr;

    text-align:center;

    gap:70px;

}

.equipment-image{

    order:-1;

}

.equipment-list{

    max-width:600px;

    margin:auto;

}

}

@media(max-width:768px){

.equipment-list div{

    padding:18px;

}

}

@media(max-width:500px){

.equipment-list div{

    flex-direction:column;

    text-align:center;

}

}

/* ==========================================================
   PARTE 3
   DIFERENCIAL + ESTATÍSTICAS
==========================================================*/

/*==========================================================
DIFERENCIAL
==========================================================*/

.difference{

    position:relative;
    overflow:hidden;
    background:
    linear-gradient(180deg,#001633,#00102b);

}

.difference::before{

    content:"";
    position:absolute;
    inset:0;

    background:

    radial-gradient(circle at 20% 20%,rgba(255,106,0,.08),transparent 30%),

    radial-gradient(circle at 80% 80%,rgba(11,120,255,.10),transparent 35%);

    pointer-events:none;

}

.difference .section-title{

    position:relative;
    z-index:2;

}

.difference .section-title h2{

    max-width:760px;
    margin:auto;

}

.difference .section-title p{

    max-width:700px;
    margin:30px auto 0;

}

/*==========================================================
GRID
==========================================================*/

.difference-grid{

    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

    gap:35px;

    margin-top:70px;

}

/*==========================================================
CARD
==========================================================*/

.difference-item{

    position:relative;

    overflow:hidden;

    background:rgba(255,255,255,.035);

    border:1px solid rgba(255,255,255,.08);

    border-radius:24px;

    padding:clamp(30px,4vw,45px) clamp(24px,3.5vw,35px);

    transition:.45s;

    backdrop-filter:blur(18px);

}

.difference-item::before{

    content:"";

    position:absolute;

    width:220px;
    height:220px;

    top:-110px;
    right:-110px;

    border-radius:50%;

    background:rgba(11,120,255,.12);

    filter:blur(35px);

    transition:.45s;

}

.difference-item:hover::before{

    transform:scale(1.35);

}

.difference-item::after{

    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:0%;
    height:3px;

    background:linear-gradient(90deg,var(--orange),var(--blue));

    transition:.45s;

}

.difference-item:hover::after{

    width:100%;

}

.difference-item:hover{

    transform:translateY(-12px);

    border-color:rgba(11,120,255,.28);

    box-shadow:

    0 30px 60px rgba(0,0,0,.35);

}

/*==========================================================
ÍCONE
==========================================================*/

.difference-item i{

    width:82px;

    height:82px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:20px;

    background:

    linear-gradient(135deg,var(--orange),#ff9545);

    color:#fff;

    font-size:2rem;

    margin-bottom:30px;

    transition:.45s;

}

.difference-item:hover i{

    transform:rotate(-8deg);

    background:

    linear-gradient(135deg,var(--blue),#4aa3ff);

    box-shadow:

    0 0 35px rgba(11,120,255,.35);

}

.difference-item h3{

    color:#fff;

    font-size:clamp(1.2rem,2vw,1.4rem);

    margin-bottom:18px;

}

.difference-item p{

    color:#b7c7db;

    font-size:clamp(.92rem,1.6vw,1rem);

    line-height:1.9;

}

/*==========================================================
ESTATÍSTICAS
==========================================================*/

.stats{

    position:relative;

    overflow:hidden;

    background:

    linear-gradient(180deg,#00102b,#000d23);

    padding:clamp(70px,10vw,120px) 0;

}

.stats::before{

    content:"";

    position:absolute;

    inset:0;

    background-image:

    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),

    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);

    background-size:45px 45px;

    opacity:.4;

}
.stats{
    display: flex;
    justify-content: center;
}

.stats-grid {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px;
}

.stats-grid > * {
    flex: 1 1 180px; /* não cresce, pode encolher, base 180px */
    min-width: 180px;
}
/*==========================================================
CARD ESTATÍSTICAS
==========================================================*/

.stat{

    position:relative;

    overflow:hidden;

    text-align:center;

    padding:clamp(30px,5vw,50px) clamp(18px,3vw,25px);

    border-radius:22px;

    background:rgba(255,255,255,.04);

    border:1px solid rgba(255,255,255,.08);

    backdrop-filter:blur(18px);

    transition:.4s;

}

.stat::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

    135deg,

    transparent,

    rgba(255,255,255,.04),

    transparent

    );

    transform:translateX(-100%);

    transition:.8s;

}

.stat:hover::before{

    transform:translateX(100%);

}

.stat:hover{

    transform:translateY(-10px);

    border-color:rgba(11,120,255,.30);

    box-shadow:

    0 25px 50px rgba(0,0,0,.35);

}

.stat h2{

    font-size:clamp(2.1rem,4.5vw,3rem);

    color:#fff;

    margin-bottom:15px;

    font-weight:700;

}

.stat h2::after{

    content:"+";

    color:var(--orange);

    margin-left:4px;

    font-size:.75em;

}

.stat span{

    display:block;

    color:#aebfd6;

    line-height:1.8;

    font-size:clamp(.85rem,1.6vw,.95rem);

}

/*==========================================================
LINHA SUPERIOR
==========================================================*/

.stat::after{

    content:"";

    position:absolute;

    top:0;
    left:0;

    width:100%;
    height:4px;

    background:

    linear-gradient(90deg,

    var(--orange),

    var(--blue));

}

/*==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:768px){

.difference-item{

    text-align:center;

}

.difference-item i{

    margin:auto auto 25px;

}

}

/* ==========================================================
   PORTFÓLIO + CTA
==========================================================*/

/*==========================================================
PORTFÓLIO
==========================================================*/

.portfolio{

    position:relative;
    overflow:hidden;
    background:
    linear-gradient(180deg,#000d23,#001633);

}

.portfolio::before{

    content:"";
    position:absolute;
    inset:0;

    background:
        radial-gradient(circle at left,rgba(255,106,0,.06),transparent 35%),
        radial-gradient(circle at right,rgba(11,120,255,.08),transparent 35%);

    pointer-events:none;

}

.portfolio-grid{

    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:repeat(3,1fr);

    grid-auto-rows:minmax(220px,280px);

    gap:22px;

    margin-top:70px;

}

/*==========================================================
MASONRY
==========================================================*/

.portfolio-item:nth-child(1){

    grid-row:span 2;

}

.portfolio-item:nth-child(4){

    grid-column:span 2;

}

/*==========================================================
CARD
==========================================================*/

.portfolio-item{

    position:relative;

    overflow:hidden;

    border-radius:24px;

    background:

    linear-gradient(
    135deg,
    #0b2146,
    #08152f
    );

    border:1px solid rgba(255,255,255,.08);

    cursor:pointer;

    transition:.45s;

}

/* imagem */

.portfolio-item img,
.portfolio-item video{

    width:100%;

    height:100%;

    object-fit:cover;

    transition:.8s;

}

/*==========================================================
OVERLAY
==========================================================*/

.portfolio-item::before{

    content:"";

    position:absolute;

    inset:0;

    background:

    linear-gradient(

    180deg,

    rgba(0,0,0,0),

    rgba(0,0,0,.75)

    );

    z-index:2;

    transition:.4s;

}

/* brilho */

.portfolio-item::after{

    content:"";

    position:absolute;

    top:-120%;

    left:-30%;

    width:90px;

    height:250%;

    background:

    linear-gradient(

    rgba(255,255,255,0),

    rgba(255,255,255,.25),

    rgba(255,255,255,0)

    );

    transform:rotate(25deg);

    transition:1s;

    z-index:4;

}

.portfolio-item:hover::after{

    left:140%;

}

/*==========================================================
HOVER
==========================================================*/

.portfolio-item:hover{

    transform:translateY(-10px);

    border-color:rgba(11,120,255,.35);

    box-shadow:

    0 30px 70px rgba(0,0,0,.45);

}

.portfolio-item:hover img,
.portfolio-item:hover video{

    transform:scale(1.08);

}

.portfolio-item:hover::before{

    background:

    linear-gradient(

    180deg,

    rgba(0,0,0,.15),

    rgba(0,0,0,.88)

    );

}

/*==========================================================
INFO
==========================================================*/

.portfolio-info{

    position:absolute;

    left:30px;

    bottom:30px;

    z-index:5;

    right:30px;

}

.portfolio-info span{

    display:inline-block;

    padding:7px 14px;

    border-radius:30px;

    background:rgba(255,106,0,.15);

    border:1px solid rgba(255,106,0,.3);

    color:var(--orange);

    font-size:.75rem;

    margin-bottom:14px;

    backdrop-filter:blur(15px);

}

.portfolio-info h3{

    color:#fff;

    font-size:clamp(1.15rem,2vw,1.5rem);

    margin-bottom:8px;

}

.portfolio-info p{

    color:#c4d2e7;

    font-size:clamp(.85rem,1.6vw,.95rem);

    line-height:1.7;

    max-width:260px;

}

/*==========================================================
PLAY
==========================================================*/

.play-button{

    position:absolute;

    top:50%;

    left:50%;

    transform:translate(-50%,-50%);

    width:clamp(60px,8vw,85px);

    height:clamp(60px,8vw,85px);

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    background:rgba(255,255,255,.10);

    backdrop-filter:blur(20px);

    border:1px solid rgba(255,255,255,.15);

    color:#fff;

    font-size:clamp(1.4rem,3vw,2rem);

    z-index:5;

    transition:.4s;

}

.portfolio-item:hover .play-button{

    transform:

    translate(-50%,-50%)

    scale(1.1);

    background:var(--orange);

}

/*==========================================================
CTA
==========================================================*/

.cta-video{

    position:relative;

    overflow:hidden;

    background:

    linear-gradient(

    135deg,

    #001633,

    #001e4b,

    #001633

    );

    text-align:center;

}

.cta-video::before{

    content:"";

    position:absolute;

    inset:0;

    background:

        radial-gradient(circle at top,rgba(11,120,255,.14),transparent 45%),

        radial-gradient(circle at bottom,rgba(255,106,0,.10),transparent 45%);

}

.cta-content{

    position:relative;

    z-index:2;

    max-width:850px;

    margin:auto;

}

.cta-content span{

    display:inline-block;

    color:var(--orange);

    letter-spacing:3px;

    text-transform:uppercase;

    font-size:clamp(.8rem,1.6vw,1rem);

    margin-bottom:20px;

    font-weight:700;

}

.cta-content h2{

    font-size:clamp(2.1rem,5vw,4rem);

    color:#fff;

    margin-bottom:25px;

    line-height:1.2;

}

.cta-content p{

    color:#bfd0e4;

    line-height:2;

    max-width:720px;

    margin:auto auto 45px;

    font-size:clamp(.92rem,1.8vw,1.05rem);

}

.cta-content .btn-primary{

    padding:18px 42px;

    font-size:1rem;

    box-shadow:

    0 20px 45px rgba(255,106,0,.30);

}

.cta-content .btn-primary:hover{

    transform:translateY(-5px);

}

/*==========================================================
RESPONSIVO
==========================================================*/

@media(max-width:1100px){

.portfolio-grid{

    grid-template-columns:repeat(2,1fr);

}

.portfolio-item:nth-child(4){

    grid-column:auto;

}

}

@media(max-width:768px){

.portfolio-grid{

    grid-template-columns:1fr;

    grid-auto-rows:minmax(200px,260px);

}

.portfolio-item:nth-child(1){

    grid-row:auto;

}

.portfolio-info{

    left:20px;

    bottom:20px;

    right:20px;

}

}

@media(max-width:480px){

.cta-content .btn-primary{

    width:100%;

}

}

/* ==========================================================
   PARTE 5
   REFINAMENTOS + ANIMAÇÕES + RESPONSIVIDADE
==========================================================*/

/*==========================================================
ANIMAÇÕES GERAIS
==========================================================*/

@keyframes avFadeUp{

    from{

        opacity:0;
        transform:translateY(45px);

    }

    to{

        opacity:1;
        transform:translateY(0);

    }

}

@keyframes avFadeLeft{

    from{

        opacity:0;
        transform:translateX(-60px);

    }

    to{

        opacity:1;
        transform:translateX(0);

    }

}

@keyframes avFadeRight{

    from{

        opacity:0;
        transform:translateX(60px);

    }

    to{

        opacity:1;
        transform:translateX(0);

    }

}

@keyframes avZoom{

    from{

        opacity:0;
        transform:scale(.92);

    }

    to{

        opacity:1;
        transform:scale(1);

    }

}

@keyframes pulseGlow{

    0%{

        box-shadow:0 0 0 rgba(255,106,0,0);

    }

    50%{

        box-shadow:0 0 35px rgba(255,106,0,.35);

    }

    100%{

        box-shadow:0 0 0 rgba(255,106,0,0);

    }

}

/*==========================================================
ANIMAÇÕES INICIAIS
==========================================================*/

.av-hero-text{

    animation:avFadeLeft .9s ease;

}

.av-hero-image{

    animation:avFadeRight .9s ease;

}

.service-card{

    animation:avFadeUp .7s ease both;

}

.difference-item{

    animation:avFadeUp .8s ease both;

}

.portfolio-item{

    animation:avZoom .7s ease both;

}

.stat{

    animation:avFadeUp .7s ease both;

}

/*==========================================================
ATRASO DOS CARDS
==========================================================*/

.service-card:nth-child(2){

    animation-delay:.15s;

}

.service-card:nth-child(3){

    animation-delay:.25s;

}

.service-card:nth-child(4){

    animation-delay:.35s;

}

.service-card:nth-child(5){

    animation-delay:.45s;

}

.service-card:nth-child(6){

    animation-delay:.55s;

}

.difference-item:nth-child(2){

    animation-delay:.15s;

}

.difference-item:nth-child(3){

    animation-delay:.3s;

}

/*==========================================================
BOTÕES
==========================================================*/

.btn-primary{

    transition:

    transform .35s,

    box-shadow .35s,

    background .35s;

}

.btn-primary:hover{

    animation:pulseGlow 1.4s infinite;

}

.btn-secondary{

    transition:.35s;

}

/*==========================================================
IMAGENS
==========================================================*/

img{

    user-select:none;

}

.av-hero-image img{

    will-change:transform;

}

.portfolio-item img{

    will-change:transform;

}

/*==========================================================
SCROLLBAR
==========================================================*/

::-webkit-scrollbar{

    width:10px;

}

::-webkit-scrollbar-track{

    background:#00152f;

}

::-webkit-scrollbar-thumb{

    background:linear-gradient(

    var(--orange),

    var(--blue)

    );

    border-radius:30px;

}

::-webkit-scrollbar-thumb:hover{

    background:var(--orange);

}

/*==========================================================
SELEÇÃO
==========================================================*/

::selection{

    background:var(--orange);

    color:#fff;

}

/*==========================================================
FOCUS
==========================================================*/

a:focus,
button:focus{

    outline:2px solid var(--orange);

    outline-offset:4px;

}

/*==========================================================
TRANSIÇÕES
==========================================================*/

.service-card,
.difference-item,
.portfolio-item,
.stat,
.equipment-list div{

    transition:

    transform .35s,

    box-shadow .35s,

    border-color .35s,

    background .35s;

}

/*==========================================================
RESPONSIVO GERAL
   (apenas layout/estrutura — tipografia já é fluida via clamp())
==========================================================*/

@media(max-width:768px){

.av-buttons a{

    width:100%;

}

}

/*==========================================================
MOTION
==========================================================*/

@media(prefers-reduced-motion:reduce){

*{

    animation:none!important;

    transition:none!important;

    scroll-behavior:auto!important;

}

}

/*==========================================================
SCROLL SUAVE
==========================================================*/

html{

    scroll-behavior:smooth;

}

/*==========================================================
PERFORMANCE
==========================================================*/

.service-card,
.difference-item,
.portfolio-item,
.stat{

    transform:translateZ(0);

    backface-visibility:hidden;

}