.preloader{position:fixed;inset:0;z-index:5000;display:grid;place-content:center;justify-items:center;background:linear-gradient(145deg,var(--blue-soft),#fff5fa);transition:opacity .6s,visibility .6s}.preloader.hidden{opacity:0;visibility:hidden}.preloader__cloud{font-size:6rem;color:#fff;filter:drop-shadow(0 14px 26px rgba(75,160,199,.2));animation:float 1.8s ease-in-out infinite}.preloader span{margin-top:12px;font-family:var(--font-title);color:var(--blue-deep)}

/* ==========================================================
   HEADER — ESTRUTURA
========================================================== */

.header{
    position:fixed;
    top:12px;
    left:0;
    right:0;

    width:100%;
    max-width:100%;

    padding-inline:20px;

    z-index:1000;

    pointer-events:none;
}
.header #scavaliacoes{
    display: none;
}

.header__inner{
    position:relative;

    width:100%;
    max-width:var(--container);
    height:72px;

    margin-inline:auto;
    padding-inline:26px;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;

    border:1px solid rgba(255,255,255,.22);
    border-radius:22px;

    background:linear-gradient(135deg,var(--blue),var(--pink));

    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);

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

    transition:
        height .35s var(--ease),
        background-color .35s var(--ease),
        border-color .35s var(--ease),
        box-shadow .35s var(--ease);

    pointer-events:auto;
}
/* =====================================================
   LIGHTBOX / ÁLBUM
===================================================== */

.lightbox{

    position:fixed;

    inset:0;

    z-index:9999;

    display:flex;

    align-items:center;

    justify-content:center;

    padding:24px;

    background:
        rgba(8,40,60,.88);

    backdrop-filter:
        blur(10px);

    opacity:0;

    visibility:hidden;

    pointer-events:none;

    transition:
        opacity .35s ease,
        visibility .35s ease;

}

.lightbox.open{

    opacity:1;

    visibility:visible;

    pointer-events:auto;

}

.lightbox__content{

    position:relative;

    display:flex;

    justify-content:center;
    align-items:center;

    width:fit-content;
    max-width:90vw;
    max-height:82vh;

    margin:auto;

}

.lightbox__image{

    display:block;

    max-width:92vw;

    max-height:88vh;

    width:auto;

    height:auto;

    object-fit:contain;

    border-radius:20px;

    box-shadow:
        0 24px 70px rgba(0,0,0,.38);

}

.lightbox__close,
.lightbox__prev,
.lightbox__next{

    position:absolute;

    z-index:3;

    display:flex;

    align-items:center;

    justify-content:center;

    border:0;

    color:#fff;

    background:
        rgba(255,255,255,.16);

    backdrop-filter:
        blur(12px);

    cursor:pointer;

    transition:
        transform .25s ease,
        background .25s ease;

}

.lightbox__close:hover,
.lightbox__prev:hover,
.lightbox__next:hover{

    transform:scale(1.08);

    background:
        rgba(255,255,255,.28);

}

.lightbox__close{

    top:22px;

    right:22px;

    width:48px;

    height:48px;

    border-radius:50%;

    font-size:2rem;

    line-height:1;

}

.lightbox__prev,
.lightbox__next{

    top:50%;

    width:54px;

    height:54px;

    border-radius:50%;

    font-size:2.5rem;

    transform:
        translateY(-50%);

}

.lightbox__prev{

    position:fixed;

    left:24px;

    top:50%;

    transform:translateY(-50%);

}

.lightbox__next{

    position:fixed;

    right:24px;

    top:50%;

    transform:translateY(-50%);

}

.lightbox__prev:hover,
.lightbox__next:hover{

    transform:
        translateY(-50%)
        scale(1.08);

}

.lightbox__counter{

    position:fixed;

    left:50%;

    bottom:24px;

    transform:translateX(-50%);

    z-index:10001;

    padding:10px 20px;

    border-radius:999px;

    color:#fff;

    background:rgba(0,0,0,.65);

    backdrop-filter:blur(12px);

    -webkit-backdrop-filter:blur(12px);

    font-size:.9rem;

    font-weight:700;

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

}

body.lightbox-open{

    overflow:hidden;

}


/* ==========================================================
   HEADER AO ROLAR
========================================================== */

.header.scrolled .header__inner{
    height:68px;

    /*background:rgba(255,255,255,.94);*/

    background:linear-gradient(135deg,var(--blue),var(--pink));
    border-color:rgba(90,170,220,.15);

    box-shadow:0 18px 45px rgba(43,95,122,.16);
}
.header__inner > *{
    min-width:0;
}


/* ==========================================================
   LOGO
========================================================== */

.brand{

    width:135px;
    height:54px;

    display:flex;
    align-items:center;

    flex-shrink:0;

}
.brand-title{
    display:none;
}

.brand img{

    width:100%;
    height:100%;

    object-fit:contain;

}
.brand,
.menu-button{
    min-width:auto;
    flex-shrink:0;
}


/* ==========================================================
   MENU
========================================================== */

.nav{

    display:flex;
    align-items:center;

    gap:36px;

}

.nav>a:not(.button){

    position:relative;

    color:#fff;

    font-size:.95rem;

    font-weight:600;

    letter-spacing:.2px;

    transition:.30s;

}

.header.scrolled .nav>a:not(.button){

    color:var(--ink);

}


/* Linha inferior */

.nav>a:not(.button)::after{

    content:"";

    position:absolute;

    left:0;
    bottom:-10px;

    width:0;

    height:3px;

    border-radius:20px;

    background:linear-gradient(
        90deg,
        var(--pink),
        #ff90c2
    );

    transition:.30s;

}

.nav>a:hover::after,
.nav>a.active::after{

    width:100%;

}

.nav>a:hover{

    transform:translateY(-1px);

}


/* ==========================================================
   BOTÃO
========================================================== */

.nav .button{

    padding:15px 32px;

    border-radius:999px;

    background:linear-gradient(
        135deg,
        #f471a8,
        #e15d97
    );

    color:#fff;

    font-weight:700;

    transition:.30s;

    box-shadow:
        0 12px 30px rgba(244,113,168,.28);

}

.nav .button:hover{

    transform:translateY(-2px);

    box-shadow:
        0 18px 40px rgba(244,113,168,.35);

}


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

.menu-button{

    display:none;

    border-radius:999px;
    border:0;

    background:linear-gradient(135deg,var(--blue),var(--pink));

    cursor:pointer;

    padding:8px;

    flex:0 0 auto;
    flex-shrink:0;

}

.menu-button span{

    display:block;

    width:28px;

    height:2px;

    margin:6px 0;

    background:#fff;

    transition:.3s;

}

.header.scrolled .menu-button span{

    background:var(--ink);   

}

.brand-carousel{
    position:relative;

    width:100%;
    max-width:600px;

    margin-inline:auto;
    padding-bottom:36px;
}

.brand-carousel__viewport{
    width:100%;
    height:450px;

    overflow:hidden;

    border-radius:28px;

    background:rgba(255,255,255,.55);

    box-shadow:
        0 18px 45px rgba(43,95,122,.14);
}

.brand-carousel__track{
    display:flex;

    width:100%;
    height:100%;

    transition:transform .5s ease;
}

.brand-carousel__slide{
    flex:0 0 100%;

    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;
    height:100%;

    padding:20px;
    box-sizing:border-box;
}


.brand-carousel__slide img{
    display:block;
    cursor: zoom-in;


    width:100%;
    height:100%;

    object-fit:contain;
    object-position:center;
}
.brand-carousel__button{
    position:absolute;
    top:50%;

    z-index:2;

    display:flex;
    align-items:center;
    justify-content:center;

    width:46px;
    height:46px;

    padding:0;

    border:0;
    border-radius:50%;

    background:rgba(255,255,255,.9);

    box-shadow:
        0 8px 22px rgba(43,95,122,.18);

    color:#2b5f7a;
    font-size:34px;
    line-height:1;

    cursor:pointer;

    transform:translateY(-50%);

    transition:
        transform .25s ease,
        background .25s ease;
}

.brand-carousel__button:hover{
    background:#fff;
    transform:translateY(-50%) scale(1.08);
}

.brand-carousel__button--prev{
    left:14px;
}

.brand-carousel__button--next{
    right:14px;
}
.brand-carousel__dots{
    position:absolute;
    left:50%;
    bottom:8px;

    display:flex;
    align-items:center;
    gap:8px;

    transform:translateX(-50%);
}

.brand-carousel__dot{
    width:9px;
    height:9px;

    padding:0;

    border:0;
    border-radius:50%;

    background:rgba(43,95,122,.25);

    cursor:pointer;

    transition:
        width .25s ease,
        background .25s ease;
}

.brand-carousel__dot.active{
    width:26px;

    border-radius:999px;

    background:#8ed7f3;
}

.whatsapp,
.back-to-top{
    position:fixed;
    bottom:20px;
    z-index:900;
    display:grid;
    place-items:center;
    border:0;
    box-shadow:0 12px 28px rgba(25,68,92,.2);
    
}

.whatsapp{
    right:20px;

    width:58px;
    height:58px;

    background:#25d366;


    border-radius:50%;

    overflow:hidden;
}

.whatsapp img{

    display:block;
    object-fit:contain;

    pointer-events:none;
}

.whatsapp:hover img{

    transform:scale(1.08);

}


.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 27px;border-radius:999px;font-weight:700;font-size:.85rem;transition:transform .3s var(--ease),box-shadow .3s,background .3s}.button:hover{transform:translateY(-3px)}.button--small{min-height:44px;padding:0 20px}.button--primary{background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:#fff;box-shadow:0 12px 30px rgba(207,101,151,.28)}.button--glass{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.34);backdrop-filter:blur(8px)}.button--white{background:#fff;color:var(--blue-deep);box-shadow:0 14px 35px rgba(31,110,148,.22)}
.hero{min-height:900px;height:100vh;position:relative;display:flex;align-items:center;overflow:hidden;color:#fff}.hero__media,.hero__overlay,.hero__aurora{position:absolute;inset:-8% 0}.hero__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);animation:kenburns 18s ease-in-out infinite alternate}.hero__overlay{background:linear-gradient(90deg,rgba(142,215,243,.92) 0%,rgba(142,215,243,.65) 45%,rgba(142,215,243,.18) 100%);}
.hero__aurora{background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.2),transparent 35%),radial-gradient(circle at 85% 55%,rgba(227,140,180,.22),transparent 30%);mix-blend-mode:screen}
.hero__content{position:relative;z-index:3;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:80px;padding-top:85px}.hero__copy{max-width:720px}.hero h1{font-family:var(--font-title);font-size:clamp(58px,7vw,108px);line-height:.88;letter-spacing:-.055em;margin:0 0 26px}.hero p{max-width:650px;font-size:1.08rem;line-height:1.8;color:rgba(255,255,255,.9)}.hero__actions{display:flex;gap:14px;margin:32px 0}.hero__trust{display:flex;flex-wrap:wrap;gap:20px;font-size:.75rem;color:rgba(255,255,255,.9)}.hero__seal{justify-self:end;width:min(360px,35vw);filter:drop-shadow(0 25px 45px rgba(26,81,107,.25));animation:float 6s ease-in-out infinite}.scroll-cue{position:absolute;z-index:4;left:50%;bottom:48px;display:grid;justify-items:center;gap:8px;transform:translateX(-50%);font-size:.65rem;letter-spacing:.14em;text-transform:uppercase}.scroll-cue i{width:25px;height:38px;border:1px solid rgba(255,255,255,.6);border-radius:20px;position:relative}.scroll-cue i:after{content:"";position:absolute;width:4px;height:7px;border-radius:4px;background:#fff;left:10px;top:7px;animation:scrollDot 1.7s infinite}.sky{position:absolute;inset:0;pointer-events:none}.cloud,.star{position:absolute;color:rgba(255,255,255,.15);filter:drop-shadow(0 8px 18px rgba(57,112,140,.12))}.cloud{font-size:7rem;animation:cloudDrift 8s ease-in-out infinite}.star{font-size:1.4rem;animation:twinkle 2.5s ease-in-out infinite}.cloud--1{left:3%;top:18%}.cloud--2{right:5%;bottom:17%;animation-delay:-3s}.star--1{left:14%;top:12%}.star--2{right:12%;top:25%;animation-delay:-1s}.star--3{left:55%;bottom:22%;animation-delay:-2s}.section-wave{position:absolute;left:-2%;right:-2%;height:100px;background-size:100% 100%;z-index:4}.section-wave--bottom{bottom:-1px;clip-path:polygon(0 58%,8% 48%,17% 61%,26% 45%,38% 59%,50% 42%,62% 58%,74% 44%,85% 60%,100% 48%,100% 100%,0 100%)}.section-wave--white{background:#fff}
.ticker{background:var(--pink);color:#fff;overflow:hidden;padding:17px 0}.ticker__track{display:flex;width:max-content;animation:ticker 26s linear infinite}.ticker__track span{font-family:var(--font-title);font-size:1.05rem;white-space:nowrap;padding-right:30px}.organic-photo{position:relative;cursor: zoom-in}.organic-photo img{width:100%;height:580px;object-fit:cover;border-radius:80px;box-shadow:var(--shadow)}.organic-photo__badge{position:absolute;right:-25px;bottom:55px;width:210px;padding:20px;background:#fff;border-radius:22px;box-shadow:var(--shadow-soft);font-family:var(--font-title);font-weight:600;color:var(--pink-deep)}.orbit-dot{position:absolute;border-radius:50%}.orbit-dot--a{width:28px;height:28px;background:var(--yellow);left:-15px;top:25%}.orbit-dot--b{width:18px;height:18px;background:var(--pink);right:9%;top:-12px}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:34px}.feature-list article{display:flex;align-items:center;gap:14px;padding:17px;border-radius:18px;background:var(--blue-soft)}.feature-list b{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:#fff;color:var(--blue-deep)}.feature-list strong,.feature-list small{display:block}.feature-list strong{font-family:var(--font-title)}.feature-list small{color:var(--muted);font-size:.68rem;margin-top:3px}.statement{position:relative;overflow:hidden;padding:100px 0;background:linear-gradient(135deg,var(--blue),var(--blue-deep));color:#fff;text-align:center}.statement h2{font-family:var(--font-title);font-size:clamp(3rem,6vw,6.3rem);line-height:.94;margin:10px auto 0;max-width:1000px}.statement span{font-size:.78rem;text-transform:uppercase;letter-spacing:.18em}.cloud--3{left:-30px;bottom:-45px;font-size:13rem;color:rgba(255,255,255,.15)}.star--4{right:10%;top:22%}.feature-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.feature-card{position:relative;overflow:hidden;padding:38px 30px;border:1px solid #e5f0f6;border-radius:var(--radius-md);background:rgba(255,255,255,.78);box-shadow:var(--shadow-soft);transition:.35s var(--ease)}.feature-card:hover{box-shadow:var(--shadow);border-color:transparent}.feature-card>span{width:62px;height:62px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--blue-soft),var(--pink-soft));font-size:1.8rem;color:var(--pink-deep)}.feature-card h3,.service-card h3{font-family:var(--font-title);font-size:1.45rem;margin:22px 0 10px}.feature-card p,.service-card p{font-size:.78rem;line-height:1.75;color:var(--muted)}.services{background:linear-gradient(145deg,var(--blue-deep),#55b7dc);overflow:hidden}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative;z-index:2}.service-card{position:relative;padding:38px 27px;border-radius:30px;background:rgba(255,255,255,.96);box-shadow:0 20px 50px rgba(29,100,133,.18);transition:.35s var(--ease)}.service-card:hover{transform:translateY(-12px)}.service-card__number{position:absolute;right:22px;top:19px;font-family:var(--font-title);font-size:2rem;color:#d7ebf3}.service-card>b{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:var(--pink-soft);font-size:1.8rem;color:var(--pink-deep)}.service-card a{display:inline-block;margin-top:12px;font-size:.75rem;font-weight:700;color:var(--blue-deep)}.gallery{display:grid;grid-template-columns:1.25fr .75fr;grid-auto-rows:260px;gap:18px}.gallery__item{position:relative;margin:0;overflow:hidden;border-radius:30px;cursor:zoom-in}.gallery__item--wide{grid-row:span 2}.gallery__item--tall{grid-row:span 2}.gallery__item img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.gallery__item:hover img{transform:scale(1.07)}.gallery__item:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(31,69,91,.7))}.gallery__item figcaption{position:absolute;left:22px;bottom:18px;z-index:2;color:#fff;font-family:var(--font-title);font-size:1.1rem}.brand-experience{background:var(--pink-soft)}.brand-collage{position:relative;min-height:560px}.brand-collage__main{position:absolute;right:0;top:0;width:88%;height:480px;object-fit:cover;border-radius:40px;box-shadow:var(--shadow)}.brand-collage__floating{position:absolute;left:0;bottom:0;width:52%;height:280px;object-fit:cover;border:12px solid #fff;border-radius:28px;box-shadow:var(--shadow-soft)}.faq{background:#f9fcfe}.faq__grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.faq .section-heading img{margin-top:28px;width:100%;height:250px;object-fit:cover;border-radius:30px}.accordion details{background:#fff;border:1px solid #e4eef4;border-radius:20px;margin-bottom:12px;padding:0 22px}.accordion summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;justify-content:space-between;gap:20px;font-family:var(--font-title);font-weight:600}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:1.45rem;color:var(--pink-deep);transition:.3s}.accordion details[open] summary span{transform:rotate(45deg)}.accordion p{margin:0;padding:0 0 22px;font-size:.8rem;line-height:1.8;color:var(--muted)}.cta{position:relative;overflow:hidden;padding:95px 0;background:linear-gradient(135deg,var(--pink),var(--blue));color:#fff}.cta__inner{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:60px}.cta h2{font-family:var(--font-title);font-size:clamp(2.8rem,5vw,5rem);line-height:.96;margin:0 0 15px;max-width:780px}.cta p{color:rgba(255,255,255,.85)}.cloud--4{right:-50px;bottom:-80px;font-size:17rem;color:rgba(255,255,255,.14)}.star--5{left:7%;top:18%}.footer{background:#fff}.footer__grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:50px;padding:72px 0 44px}.footer__brand img{width:190px}.footer h3{font-family:var(--font-title)}.footer a,.footer span,.footer p{display:block;margin:7px 0;font-size:.75rem;line-height:1.75;color:var(--muted)}.footer__bottom{text-align:center;padding:16px;background:var(--blue);color:#fff;font-size:.7rem}.back-to-top{right:88px;width:45px;height:45px;border-radius:50%;background:#fff;color:var(--pink-deep);cursor:pointer;opacity:0;visibility:hidden;transition:.3s}.back-to-top.show{opacity:1;visibility:visible}


/* Fase 2 — conteúdo oficial */
.service-grid--six{grid-template-columns:repeat(3,1fr)}
.routine{background:linear-gradient(180deg,#fff 0%,var(--blue-soft) 100%)}
.timeline{position:relative;max-width:980px;margin:0 auto;display:grid;gap:18px}
.timeline:before{content:"";position:absolute;left:39px;top:30px;bottom:30px;width:2px;background:linear-gradient(var(--pink),var(--blue))}
.timeline__item{position:relative;display:grid;grid-template-columns:80px 1fr;gap:22px;align-items:center;padding:18px 24px 18px 0}
.timeline__item>span{position:relative;z-index:2;width:80px;height:80px;display:grid;place-items:center;border-radius:50%;background:#fff;box-shadow:var(--shadow-soft);font-family:var(--font-title);font-weight:700;color:var(--pink-deep)}
.timeline__item>div{padding:26px 30px;background:rgba(255,255,255,.82);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.9);border-radius:24px;box-shadow:var(--shadow-soft)}
.timeline__item h3{margin:0 0 6px;font-family:var(--font-title);font-size:1.35rem}.timeline__item p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.7}
.info-section{padding-top:40px}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.info-card{padding:34px;border-radius:28px;background:#fff;border:1px solid #e5f0f6;box-shadow:var(--shadow-soft)}.info-card>span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--blue-soft),var(--pink-soft));font-size:1.6rem}.info-card h3{font-family:var(--font-title);font-size:1.35rem;margin:18px 0 8px}.info-card p{color:var(--muted);font-size:.8rem;line-height:1.7}.info-card a{display:inline-block;margin-top:10px;font-size:.75rem;font-weight:700;color:var(--blue-deep)}
@media(max-width:980px){.service-grid--six{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr}.timeline{max-width:760px}}
@media(max-width:640px){.service-grid--six{grid-template-columns:1fr}.timeline:before{left:28px}.timeline__item{grid-template-columns:56px 1fr;gap:12px;padding-right:0}.timeline__item>span{width:56px;height:56px}.timeline__item>div{padding:20px}.hero__trust{gap:10px}.hero__trust span{width:100%}}

/* Sprint 3 — acabamento premium */
.cursor-glow{position:fixed;z-index:9999;left:0;top:0;width:320px;height:320px;border-radius:50%;pointer-events:none;opacity:0;background:radial-gradient(circle,rgba(255,255,255,.24),rgba(105,191,225,.09) 38%,transparent 70%);transform:translate3d(-50%,-50%,0);mix-blend-mode:screen;transition:opacity .25s ease}
body.has-pointer .cursor-glow{opacity:1}
.header__inner{transition:height .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease),transform .35s var(--ease)}
.header.scrolled .brand{transform:scale(.92);transform-origin:left center}
.nav a:not(.button){position:relative}
.nav a:not(.button)::after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;border-radius:99px;background:linear-gradient(90deg,var(--pink),var(--blue));transition:right .3s var(--ease)}
.nav a:hover::after,.nav a.active::after{right:0}
.hero__content{position:relative;z-index:4}
.hero__copy{max-width:760px}
.hero h1 span{display:inline-block}
.hero__visual{position:relative;min-height:470px;display:grid;place-items:center}
.hero__seal{position:relative;z-index:2;width:min(340px,70%);filter:drop-shadow(0 28px 60px rgba(13,63,87,.24));animation:float 5.4s ease-in-out infinite}
.hero__seal img{width:100%;display:block}
.hero-float-card{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:15px 18px;border:1px solid rgba(255,255,255,.62);border-radius:20px;background:rgba(255,255,255,.72);box-shadow:0 16px 45px rgba(35,91,120,.18);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-size:.74rem;color:var(--ink);animation:float 4.8s ease-in-out infinite}
.hero-float-card span{display:grid;place-items:center;width:38px;height:38px;border-radius:14px;background:linear-gradient(135deg,var(--blue-soft),var(--pink-soft));font-size:1.15rem}
.hero-float-card--top{top:18%;right:0}.hero-float-card--bottom{left:0;bottom:12%;animation-delay:-2.1s}
.hero__media::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(16,86,119,.78) 0%,rgba(37,159,207,.42) 47%,rgba(227,140,180,.18) 100%)}
.hero__aurora{background:radial-gradient(circle at 18% 24%,rgba(255,255,255,.18),transparent 32%),radial-gradient(circle at 78% 58%,rgba(251,207,157,.18),transparent 30%);animation:auroraShift 9s ease-in-out infinite alternate}
.button{position:relative;isolation:isolate;overflow:hidden}
.button::before{content:"";position:absolute;z-index:-1;top:-30%;bottom:-30%;left:-55%;width:38%;transform:skewX(-22deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.58),transparent);transition:left .65s var(--ease)}
.button:hover::before{left:120%}
.feature-card,.service-card,.info-card{position:relative;overflow:hidden}
.feature-card::after,.service-card::after,.info-card::after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;left:var(--spot-x,50%);top:var(--spot-y,50%);transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,rgba(255,255,255,.7),transparent 70%);pointer-events:none;transition:transform .35s ease}
.feature-card:hover::after,.service-card:hover::after,.info-card:hover::after{transform:translate(-50%,-50%) scale(1.35)}
.experience-band{position:relative;z-index:3;margin-top:-28px;padding:0 0 42px;background:linear-gradient(180deg,var(--blue-soft),#fff)}
.experience-band__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:18px;border:1px solid rgba(255,255,255,.9);border-radius:30px;background:rgba(255,255,255,.82);box-shadow:var(--shadow);backdrop-filter:blur(18px)}
.experience-chip{padding:24px 18px;text-align:center;border-radius:22px;background:linear-gradient(180deg,#fff,rgba(230,245,253,.46));border:1px solid #edf5f8}
.experience-chip span{display:block;font-family:var(--font-title);font-size:1.18rem;color:var(--blue-deep)}
.experience-chip small{display:block;margin-top:6px;color:var(--muted);font-size:.68rem}
.gallery__item{transform:translateZ(0)}
.gallery__item img{transition:transform .8s var(--ease),filter .5s ease}
.gallery__item:hover img{transform:scale(1.08);filter:saturate(1.06) contrast(1.02)}
/* ==========================================================
   PARCEIROS
========================================================== */

.partners{
    overflow:hidden;

    background:
        radial-gradient(
            circle at 10% 20%,
            rgba(105,191,225,.18),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 80%,
            rgba(249,202,222,.28),
            transparent 34%
        ),
        #fff;
}

.partners .section-heading{

    max-width:650px;

    margin-bottom:55px;

}

.partners .section-heading h2{

    text-align:left;

}

.partners .section-heading p{

    max-width:560px;

}

.partners__grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
}

.partner-card{
    position:relative;

    display:flex;
    flex-direction:column;
    align-items:center;

    min-width:0;
    padding:26px 20px 24px;

    border:1px solid rgba(105,191,225,.18);
    border-radius:28px;

    background:rgba(255,255,255,.86);

    box-shadow:
        0 16px 42px rgba(54,91,120,.10);

    text-align:center;

    overflow:hidden;

    transition:
        transform .35s var(--ease),
        border-color .35s ease,
        box-shadow .35s ease;
}

.partner-card::before{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            135deg,
            rgba(105,191,225,.12),
            transparent 45%,
            rgba(249,202,222,.16)
        );

    opacity:0;

    transition:opacity .35s ease;

    pointer-events:none;
}

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

    border-color:rgba(105,191,225,.38);

    box-shadow:
        0 24px 55px rgba(54,91,120,.16);
}

.partner-card:hover::before{
    opacity:1;
}

.partner-card__logo{
    position:relative;
    z-index:1;

    width:110px;
    height:110px;

    display:grid;
    place-items:center;

    padding:4px;

    border-radius:24px;

    background:#fff;

    box-shadow:
        0 12px 30px rgba(54,91,120,.10);

    overflow:hidden;
}

.partner-card__logo img{
    display:block;

    width:100%;
    height:100%;

    object-fit:contain;
    object-position:center;

    transition:transform .35s var(--ease);
}

.partner-card:hover .partner-card__logo img{
    transform:scale(1.06);
}

.partner-card__content{
    position:relative;
    z-index:1;

    margin-top:20px;
}

.partner-card__content h3{
    margin:0;

    font-family:var(--font-title);
    font-size:1.15rem;
    line-height:1.2;

    color:var(--ink);
}

.partner-card__content span{
    display:block;

    margin-top:7px;

    color:var(--muted);

    font-size:.72rem;
    line-height:1.5;
}
/* ==========================================================
   AVALIAÇÕES
========================================================== */
.testimonials #lkAvaliações{
    /*color:#8ed7f3;*/
    font-family: "Poppins";
    text-decoration: underline;
}

.testimonials{

    overflow:hidden;

    background:
        radial-gradient(
            circle at left,
            rgba(105,191,225,.15),
            transparent 40%
        ),
        radial-gradient(
            circle at right,
            rgba(249,202,222,.18),
            transparent 45%
        ),
        #fff;

}

.testimonials-carousel{

    position:relative;

    width:100%;

}

.testimonials-carousel__viewport{

    width:100%;

    overflow-x:auto;
    overflow-y:hidden;

    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;

    scrollbar-width:none;

    overscroll-behavior-x:contain;

    touch-action:pan-x pan-y;

}

.testimonials-carousel__viewport::-webkit-scrollbar{

    display:none;

}

.testimonials-carousel__track{

    display:flex;

    align-items:flex-start;

    gap:20px;

    width:100%;

}

.testimonial-slide{

    flex:0 0 calc((100% - 60px) / 4);

    min-width:0;

    display:flex;

    align-items:center;
    justify-content:center;

    scroll-snap-align:start;
    scroll-snap-stop:always;

}

.testimonial-slide img{

    display:block;

    width:100%;
    height:auto;

    max-width:100%;

    object-fit:contain;
    object-position:center;

    border-radius:20px;

    background:#fff;

    box-shadow:var(--shadow-soft);

    cursor:zoom-in;

    transition:
        transform .35s var(--ease),
        box-shadow .35s ease;

}

.testimonial-slide:hover img{

    transform:
        translateY(-6px)
        scale(1.02);

    box-shadow:
        0 22px 48px rgba(0,0,0,.15);

}

/* Setas */

.testimonials-carousel__button{

    position:absolute;

    top:50%;

    z-index:5;

    width:46px;
    height:46px;

    display:grid;
    place-items:center;

    padding:0;

    border:0;
    border-radius:50%;

    background:#fff;

    color:var(--blue-deep);

    box-shadow:var(--shadow-soft);

    font-size:28px;

    cursor:pointer;

    transform:translateY(-50%);

    transition:
        transform .25s ease,
        box-shadow .25s ease;

}

.testimonials-carousel__button:hover{

    transform:
        translateY(-50%)
        scale(1.08);

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

}

.testimonials-carousel__button--prev{

    left:-20px;

}

.testimonials-carousel__button--next{

    right:-20px;

}
.partners-carousel{
    overflow:hidden;
}

.partners-carousel__viewport{
    overflow:hidden;
}

.partners-carousel__track{
    display:flex;
    gap:24px;
    transition:transform .45s ease;
}

.partners-carousel__track .partner-card{
    flex:0 0 calc((100% - 48px)/3);
}

/* Indicadores */
.section{
    padding: 80px 0;
}

.testimonials-carousel__dots{

    display:flex;

    align-items:center;
    justify-content:center;

    gap:8px;

    margin-top:26px;

}

.testimonials-carousel__dot{

    width:9px;
    height:9px;

    padding:0;

    border:0;
    border-radius:50%;

    background:#d6dfe7;

    cursor:pointer;

    transition:
        width .3s ease,
        background .3s ease;

}

.testimonials-carousel__dot.active{

    width:26px;

    border-radius:999px;

    background:var(--blue);

}
.timeline.collapsed .timeline__item:nth-child(n+6){

    display:none;

}

.timeline__actions{

    display:flex;
    flex-direction:column;
    align-items:center;
    gap:7px;

    margin-top:1px;

}

.timeline__expand{

    width:74px;
    height:74px;

    border:none;
    border-radius:50%;

    background:linear-gradient(
        135deg,
        #ddafc2,
        #ea8ab4
    );

    color:#fff;

    display:flex;
    align-items:center;
    justify-content:center;

    cursor:pointer;

    box-shadow:
        0 14px 35px rgba(114,198,233,.35);

    transition:
        transform .35s,
        box-shadow .35s;

    animation:pulseTimeline 2.5s infinite;

}

.timeline__expand:hover{

    transform:translateY(-5px) scale(1.06);

    box-shadow:
        0 22px 45px rgba(114,198,233,.45);

}

.timeline__expand:active{

    transform:scale(.96);

}

.timeline__expand-arrow{

    width:34px;
    height:34px;

    color:#fff;

    transition:transform .35s ease;

}

.timeline__expand-arrow.expanded{

    transform:rotate(180deg);

}

.timeline__expand-text{

    font-size:.95rem;

    font-weight:700;

    color:#ea8ab4;

}
.timeline__actions::before{

    content:"";

    width:2px;
    height:18px;

    background:#e15d97;

    border-radius:999px;

}
@keyframes pulseTimeline{

    0%{

        transform:scale(1);

        box-shadow:
            0 0 0 0 rgba(114,198,233,.35);

    }

    70%{

        transform:scale(1.08);

        box-shadow:
            0 0 0 18px rgba(114,198,233,0);

    }

    100%{

        transform:scale(1);

        box-shadow:
            0 0 0 0 rgba(114,198,233,0);

    }

}


@keyframes auroraShift{to{transform:translate3d(2%,-1%,0) scale(1.05)}}
@keyframes floatBreathing{

    0%,100%{

        transform:
            translateY(0)
            rotate(0deg);

    }

    25%{

        transform:
            translateY(-2px)
            rotate(.25deg);

    }

    50%{

        transform:
            translateY(-5px)
            rotate(0deg);

    }

    75%{

        transform:
            translateY(-2px)
            rotate(-.25deg);

    }

}
@media(max-width:1024px){.hero__visual{display:none}.experience-band__grid{grid-template-columns:repeat(2,1fr)}.cursor-glow{display:none}}
@media(max-width:680px){

    .brand:hover{

        filter:
            drop-shadow(0 16px 30px rgba(244,113,168,.22));

    }

    .experience-band{
        margin-top:0;
        padding-top:20px;
    }

    .experience-band__grid{
        grid-template-columns:1fr 1fr;
        padding:10px;
        border-radius:22px;
    }

    .experience-chip{
        padding:18px 10px;
    }

    .experience-chip span{
        font-size:1rem;
    }

    .nav a:not(.button)::after{
        display:none;
    }

    /* ==========================================
       BOTÃO PREMIUM
    ========================================== */

    .menu-button{

        position:relative;

        overflow:hidden;

        transition:
            transform .35s var(--ease),
            box-shadow .35s var(--ease);

        background-size:250% 250%;

        animation:
            gradientMove 6s linear infinite,
            floatButton 3s ease-in-out infinite;

    }

    /* Liquid Glass */

    .menu-button::before{

        content:"";

        position:absolute;

        inset:0;

        background:
            linear-gradient(
                120deg,
                transparent,
                rgba(255,255,255,.35),
                transparent
            );

        transform:translateX(-120%);

        transition:.7s;

    }

    .menu-button:hover::before{

        transform:translateX(120%);

    }

    /* Glow */

    .menu-button:hover{

        box-shadow:
            0 12px 28px rgba(244,113,168,.30),
            0 0 24px rgba(105,191,225,.20);

    }

    /* Ícone */

    .menu-button span{

        transition:
            transform .35s var(--ease),
            opacity .35s var(--ease),
            background .35s;

    }

    /* Menu aberto */

    .menu-button[aria-expanded="true"]{

        animation:
            gradientMove 6s linear infinite,
            floatButton 3s ease-in-out infinite;

        transform:scale(1.03);

        box-shadow:
            0 18px 45px rgba(244,113,168,.45),
            0 0 20px rgba(244,113,168,.35),
            0 0 40px rgba(105,191,225,.25);

    }

    .menu-button[aria-expanded="true"] span:nth-child(1){

        transform:
            translateY(8px)
            rotate(45deg);

    }

    .menu-button[aria-expanded="true"] span:nth-child(2){

        opacity:0;

    }

    .menu-button[aria-expanded="true"] span:nth-child(3){

        transform:
            translateY(-8px)
            rotate(-45deg);

    }

}
/* ==========================================
   ANIMAÇÕES
========================================== */
@keyframes floatBreathingStrong{

        0%,100%{

            transform:
                translateY(0);

        }

        50%{

            transform:
                translateY(-10px);

        }

}
@keyframes gradientMove{

    0%{
        background-position:0% 50%;
    }

    50%{
        background-position:100% 50%;
    }

    100%{
        background-position:0% 50%;
    }

}
@keyframes floatButton{

    0%,100%{

        transform:translateY(0);

    }

    50%{

        transform:translateY(-3px);

    }

}
@keyframes floatBrand{

    0%,100%{

        transform:
            translateY(0)
            rotate(0deg);

    }

    25%{

        transform:
            translateY(-2px)
            rotate(.3deg);

    }

    50%{

        transform:
            translateY(-5px)
            rotate(0deg);

    }

    75%{

        transform:
            translateY(-2px)
            rotate(-.3deg);

    }

}
@keyframes floatBreathing{

    0%,100%{

        transform:
            translateY(0)
            rotate(0deg);

    }

    25%{

        transform:
            translateY(-2px)
            rotate(.25deg);

    }

    50%{

        transform:
            translateY(-5px)
            rotate(0deg);

    }

    75%{

        transform:
            translateY(-2px)
            rotate(-.25deg);

    }

}