/* ============================================================
   ANIME BRINQUE — STYLE.CSS ORGANIZADO
   Arquivo consolidado para facilitar manutenção.
   Desktop primeiro, depois tablet e mobile.
   ============================================================ */

/* ========================================
   VARIÁVEIS E RESET
   ======================================== */
:root {
    --blue: #073b9a;
    --bright-blue: #0878ea;
    --pink: #f33378;
    --yellow: #ffca0a;
    --green: #17b53c;
    --ink: #062967;
    --cream: #fff2c8;
    --white: #fff;
    --shadow: 0 18px 40px rgba(6,46,116,.14);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    color: var(--ink);
    font-family: Nunito,Arial,sans-serif;
    background: #fff;
    overflow-x: hidden;
}

img {
    max-width: 100%;
    display: block;
}

a {
    color: inherit;
}

.container {
    width: min(1180px,calc(100% - 40px));
    margin: auto;
}

h1,h2,h3 {
}

.nav a:hover,.nav a.active {
    color: #0872d8;
    background: #eaf7ff;
}

.btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    border-radius: 999px;
    padding: 14px 23px;
    text-decoration: none;
    font-weight: 900;
    line-height: 1;
    box-shadow: 0 7px 0 rgba(0,0,0,.1);
    transition: .2s;
}

.btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 9px 0 rgba(0,0,0,.1);
}

.btn-whatsapp {
    color: #fff;
    background: linear-gradient(#28d84b,#11a735);
}

.btn-pink {
    color: #fff;
    background: linear-gradient(#ff4d91,#ed2267);
}

.btn-yellow {
    color: var(--ink);
    background: linear-gradient(#ffdc24,#ffb900);
}

.menu-toggle {
    display: none;
    margin-left: auto;
    border: 0;
    background: none;
    width: 40px;
}

.menu-toggle span {
    display: block;
    height: 3px;
    background: var(--blue);
    margin: 6px;
    border-radius: 4px;
}

/* ========================================
   HERO
   ======================================== */
.hero-copy h1 span {
    color: var(--pink);
}

/* ========================================
   TEXTO PRINCIPAL DO HERO - MOBILE
   ======================================== */

.hero-copy {
    width: 100%;
    max-width: 390px;
    margin: 0 auto;
    padding: 0 15px;
    text-align: center;
}

.hero-copy h1 {
    width: 100%;
    max-width: 350px;
    margin: 0 auto 14px;

    text-align: center;
    font-size: 32px;
    line-height: 0.90;
    letter-spacing: -1px;
}

.hero-copy h1 span {
    color: var(--pink);
}

.hero-copy h1 strong {
    display: inline-block;
    font-size: 1.38em;
    line-height: 0.90;

    background: linear-gradient(
        90deg,
        #ff7100,
        #ffbd00,
        #2db749,
        #119fe4,
        #ed357c
    );

    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
}

.hero-copy .lead {
    max-width: 315px;
    margin: 0 auto 18px;

    text-align: center;
    font-size: 13px;
    line-height: 1.4;
}

.eyebrow {
    font-size: 11px;
    font-weight: 900;
    color: #087de4;
    letter-spacing: 1.1px;
}

.lead {
    font-size: 17px;
    line-height: 1.55;
    font-weight: 700;
    max-width: 470px;
}

.lead b {
    color: var(--pink);
}

.actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 26px;
}

.photo-bubble {
    width: 450px;
    height: 480px;
    padding: 14px;
    border-radius: 49% 49% 30% 30%;
    background: linear-gradient(150deg,#219cff,#ffcf14,#f43b76);
    transform: rotate(2deg);
    box-shadow: var(--shadow);
}

.photo-bubble img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: inherit;
    background: #fff;
}

.safe-card p {
    margin: 0;
    font-size: 12px;
    line-height: 1.4;
}

.safe-card b {
    font-size: 15px;
}

.confetti i {
    position: absolute;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #f53579;
    z-index: 1;
}

.confetti i:nth-child(1) {
    left: 12%;
    top: 25%;
    background: #0fa5ef;
}

.confetti i:nth-child(2) {
    left: 48%;
    top: 10%;
    background: #ffc400;
}

.confetti i:nth-child(3) {
    left: 61%;
    top: 48%;
    background: #ff7200;
}

.confetti i:nth-child(4) {
    right: 8%;
    top: 22%;
    background: #25be46;
}

.confetti i:nth-child(5) {
    left: 25%;
    top: 70%;
    background: #ffc400;
}

.confetti i:nth-child(6) {
    right: 35%;
    top: 18%;
    background: #f53579;
}

/* ========================================
   ESTATÍSTICAS
   ======================================== */
.stats article {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 0 28px;
    border-right: 2px dotted rgba(255,255,255,.5);
}

.stats article:last-child {
    border: 0;
}

.stats span {
    font-size: 45px;
    color: #ffd015;
}

.stats b {
    display: block;
    font: 900 35px "Baloo 2";
    line-height: 1;
}

.stats small {
    font-size: 12px;
    font-weight: 800;
}

/* ========================================
   BRINQUEDOS
   ======================================== */
.toys {
    padding: 78px 0;
    background: radial-gradient(circle at 10% 30%,#fff 0 1%,transparent 1.2%),linear-gradient(#fff0bc,#fff8dd);
}

.section-title {
    text-align: center;
    margin-bottom: 34px;
}

.section-title p {
    font-size: 11px;
    color: #087fe3;
    font-weight: 900;
    margin: 0;
}

.section-title h2 {
    font-size: 44px;
    line-height: 1;
    margin: 3px 0;
}

.section-title h2 span,.moments h2 span {
    color: var(--pink);
}

.section-title small {
    font-weight: 800;
}

.toy-grid {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 15px;
}

.toy-card {
    margin: 0;
    overflow: hidden;
    background: #fff;
    border-radius: 40px 40px 23px 23px;
    box-shadow: var(--shadow);
    transition: .25s;
}

.toy-card:hover {
    transform: translateY(-7px);
}

.toy-card img {
    width: 100%;
    height: 230px;
    object-fit: cover;
}

.toy-card h3 {
    color: #fff;
    margin: 0;
    padding: 11px 5px;
    text-align: center;
    font-size: 19px;
}

.toy-card.blue h3 {
    background: #1389dd;
}

.toy-card.green h3 {
    background: #3ab525;
}

.toy-card.cyan h3 {
    background: #079ed6;
}

.toy-card.pink h3 {
    background: #ef387b;
}

.toy-card.orange h3 {
    background: #ff7800;
}

.centered {
    width: max-content;
    margin: 30px auto 0;
}

/* ========================================
   COMO FUNCIONA
   ======================================== */
.how {
    padding: 80px 0;
    background: #fff;
}

.how-layout {
    display: grid;
    grid-template-columns: 3fr 1fr;
    gap: 35px;
    align-items: center;
}

.align-left {
    text-align: left;
}

.steps {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 16px;
}

.steps article {
    position: relative;
    padding: 24px 16px 18px;
    border-radius: 28px;
    min-height: 220px;
    background: #eef8ff;
}

.steps article:nth-child(2) {
    background: #fff0f5;
}

.steps article:nth-child(3) {
    background: #fff6e6;
}

.steps article:nth-child(4) {
    background: #ecf9e9;
}

.steps article>b {
    position: absolute;
    left: -7px;
    top: -13px;
    width: 37px;
    height: 37px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #0787e7;
    color: #fff;
    font-size: 20px;
}

.steps article:nth-child(2)>b {
    background: #ef3475;
}

.steps article:nth-child(3)>b {
    background: #ff7a00;
}

.steps article:nth-child(4)>b {
    background: #1fb343;
}

.steps article>span {
    font: 900 50px "Baloo 2";
    color: #0787e7;
}

.steps h3 {
    margin: 7px 0 2px;
    color: #0879d2;
}

.steps p {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.5;
}

.polaroid {
    background: #fff;
    padding: 14px 14px 22px;
    box-shadow: 0 13px 25px rgba(0,0,0,.24);
    transform: rotate(6deg);
    margin: 0;
}

.polaroid img {
    height: 250px;
    width: 100%;
    object-fit: cover;
}

.polaroid figcaption {
    text-align: center;
    font-weight: 900;
    margin-top: 10px;
}

/* ========================================
   MOMENTOS
   ======================================== */
.moments {
    padding: 68px 0;
    background: linear-gradient(120deg,#fff0f3,#fff);
}

.moments-grid {
    display: grid;
    grid-template-columns: 1fr 2.2fr;
    align-items: center;
    gap: 30px;
}

.moments h2 {
    font-size: 39px;
    line-height: 1;
    margin: 7px 0;
}

.moments p {
    font-weight: 700;
    line-height: 1.6;
}

.gallery {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 18px;
}

.gallery img {
    height: 180px;
    width: 100%;
    object-fit: cover;
    border: 10px solid #fff;
    box-shadow: 0 10px 19px rgba(0,0,0,.2);
    transform: rotate(-3deg);
}

.gallery img:nth-child(2) {
    transform: rotate(3deg);
}

/* ========================================
   DEPOIMENTOS
   ======================================== */
.testimonials {
    padding: 65px 0 78px;
    background: linear-gradient(#fff,#ebf8ff);
}

.reviews {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
}

.reviews article {
    background: #fff;
    border: 2px solid #e7e2e2;
    border-radius: 35px;
    padding: 24px;
    display: flex;
    gap: 17px;
    box-shadow: 0 10px 20px rgba(5,52,120,.06);
}

.avatar {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    flex: none;
    background: linear-gradient(135deg,#ffe9d9,#ffc8df);
    font: 900 20px "Baloo 2";
}

.stars {
    color: #ffb800;
}

.reviews p {
    font-size: 13px;
    line-height: 1.55;
    font-weight: 700;
}

.reviews b {
    font-size: 12px;
}

/* ========================================
   CTA FINAL
   ======================================== */
.final-cta {
    background: linear-gradient(100deg,#062d7b,#0067cc);
    color: #fff;
}

.cta-grid {
    min-height: 190px;
    display: grid;
    grid-template-columns: 200px 1fr auto;
    align-items: center;
    gap: 25px;
}

.cta-grid>img {
    height: 210px;
    object-fit: contain;
    align-self: end;
}

.cta-grid h2 {
    font-size: 35px;
    line-height: .95;
    color: #ffda1b;
    margin: 0 0 8px;
}

.cta-grid p {
    margin: 0;
}

.cta-grid>div:last-child {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ========================================
   RODAPÉ
   ======================================== */
footer {
    background: linear-gradient(120deg,#05265f,#061746);
    color: #fff;
    padding: 45px 0 14px;
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.4fr repeat(4,1fr);
    gap: 32px;
}

.footer-logo {
    width: 190px;
    display: block;
    margin-left: auto;
    margin-right: auto;
    filter: brightness(0) invert(1);
}

footer h3 {
    font-size: 12px;
    margin: 4px 0 13px;
}

footer p,footer a {
    display: block;
    color: #fff;
    text-decoration: none;
    font-size: 12px;
    line-height: 1.55;
    margin: 5px 0;
}

.social {
    display: flex;
    gap: 12px;
}

.copyright {
    text-align: center;
    border-top: 1px solid rgba(255,255,255,.15);
    padding-top: 14px;
    margin-top: 30px;
    font-size: 11px;
}

.float-wa {
    display: none;
    position: fixed;
    right: 18px;
    bottom: 18px;
    width: 58px;
    height: 58px;
    border-radius: 50%;
    background: #1fc44a;
    color: #fff;
    text-decoration: none;
    place-items: center;
    font-size: 28px;
    z-index: 30;
    box-shadow: 0 8px 24px rgba(0,0,0,.28);
}

/* ========================================
   COMBOS
   ======================================== */
.combos {
    padding: 72px 0;
    background: #fffdf4;
}

.combo-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 22px;
}

.combo-card {
    border: 2px solid #1585e6;
    border-radius: 28px;
    padding: 18px;
    display: grid;
    grid-template-columns: 1.15fr .85fr;
    gap: 8px;
    background: #fff;
    box-shadow: var(--shadow);
    overflow: hidden;
}

.combo-pink {
    border-color: #f13c79;
}

.combo-green {
    border-color: #21ac4a;
}

.combo-copy h3 {
    font-size: 21px;
    margin: 0 0 8px;
}

.combo-pink h3 {
    color: #ed3475;
}

.combo-green h3 {
    color: #16a33b;
}

.combo-copy ul {
    padding: 0;
    margin: 0 0 12px;
    list-style: none;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.65;
}

.combo-copy li:before {
    content: "★";
    color: #1689e7;
    margin-right: 6px;
}

.combo-copy small,.combo-copy strong {
    display: block;
}

.combo-copy strong {
    font: 900 25px "Baloo 2";
    color: #0877d8;
}

.combo-pink strong {
    color: #ed3475;
}

.combo-green strong {
    color: #18a53d;
}

.combo-copy a {
    display: inline-flex;
    margin-top: 8px;
    padding: 9px 13px;
    border-radius: 20px;
    background: #087bdc;
    color: #fff;
    text-decoration: none;
    font-size: 11px;
    font-weight: 900;
}

.combo-pink a {
    background: #ee3475;
}

.combo-green a {
    background: #19a83e;
}

.combo-card img {
    width: 100%;
    height: 180px;
    object-fit: contain;
    align-self: center;
}

.mobile-safety {
    display: none;
}

.hero-copy .eyebrow {
    display: none;
}

/* ========================================
   HEADER
   ======================================== */
.header-inner {
    height: 100%;
    display: flex;
    align-items: center;
    gap: 24px;
    position: relative;
}

.logo {
    width: 215px;
    flex: none;
    width: 220px;
    height: 86px;
    background-image: url("assets/hero-modelo.png");
    background-size: 873px 695px;
    background-position: center center;
    background-repeat: no-repeat;
}

.logo img {
    width: 140px;
    height: auto;
    object-fit: contain;
    display: block;
}

.header {
    height: 92px;
    background: rgba(255,255,255,.97);
    position: sticky;
    top: 0;
    z-index: 40;
    box-shadow: 0 4px 24px rgba(4,61,132,.1);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background: transparent;
    box-shadow: none;
    height: 104px;
}

.nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
    flex: 1;
    gap: 1px;
}

.nav a {
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    padding: 11px 12px;
    border-radius: 22px;
    white-space: nowrap;
    font-size: 12px;
    padding: 10px 11px;
}

.header-cta {
    font-size: 12px;
    padding: 13px 22px;
}

.hero {
    min-height: 680px;
    background: radial-gradient(circle at 78% 12%,#fff 0 5%,transparent 5.2%),linear-gradient(145deg,#e8f8ff 0,#fff 53%,#f8fdff 100%);
    position: relative;
    overflow: hidden;
    padding: 55px 0 120px;
    min-height: 720px;
    padding-top: 118px;
    background: radial-gradient(circle at 13% 36%,rgba(255,255,255,.95) 0 9%,transparent 9.3%),radial-gradient(circle at 82% 25%,rgba(255,255,255,.95) 0 10%,transparent 10.4%),linear-gradient(145deg,#ddf5ff 0,#fff 55%,#ecfaff 100%);
    min-height: 650px;
    padding: 102px 0 96px;
    background: radial-gradient(ellipse at 8% 42%,rgba(255,255,255,.96) 0 8%,transparent 8.3%),radial-gradient(ellipse at 52% 10%,rgba(255,255,255,.75) 0 12%,transparent 12.5%),linear-gradient(155deg,#e7f8ff 0%,#fff 53%,#e9f9ff 100%);
}

.hero-grid {
    display: grid;
    grid-template-columns: .85fr 1.2fr 1.2fr;
    align-items: center;
    gap: 22px;
    position: relative;
    z-index: 2;
    grid-template-columns: 1.05fr 1.15fr 1.45fr;
    gap: 4px;
    grid-template-columns: 27% 31% 42%;
    min-height: 490px;
    align-items: end;
    gap: 0;
}

.hero-mascot {
    align-self: end;
    margin-bottom: -85px;
    filter: drop-shadow(0 20px 15px rgba(0,55,130,.25));
    margin: 0 0 -115px -55px;
    align-self: end;
    margin: 0 -15px -82px -18px;
    z-index: 3;
}

.hero-mascot img {
    width: 390px;
    transform: scale(1.12);
    transform-origin: bottom;
    width: 430px;
    transform: none;
    width: 330px;
    max-height: 475px;
    object-fit: contain;
    object-position: bottom;
}

.hero-copy {
    padding-top: 5px;
    align-self: center;
    padding: 16px 0 0;
    z-index: 5;
}

.hero-copy h1 {
    font-size: clamp(45px,5.1vw,70px);
    line-height: .82;
    letter-spacing: -2px;
    margin: 10px 0 25px;
    font-size: clamp(50px,5vw,72px);
    text-align: center;
    font-size: clamp(42px,4.35vw,61px);
    line-height: .88;
    letter-spacing: -1.8px;
    margin: 0 0 19px;
}

.hero-copy .lead {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    max-width: 390px;
    max-width: 340px;
    font-size: 15px;
    line-height: 1.48;
}

.hero-copy .actions {
    justify-content: center;
    margin-top: 20px;
    gap: 12px;
}

.hero-copy .btn {
    padding: 13px 20px;
}

.hero-product {
    position: relative;
    height: 510px;
    align-self: end;
    height: 500px;
    position: relative;
    align-self: end;
    margin: 0 -52px -24px -20px;
    z-index: 2;
}

.hero-castle {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: right bottom;
    filter: drop-shadow(0 18px 18px rgba(0,60,130,.18));
    pointer-events: none;
}

.hero-reference-art {
    width: 535px;
    height: 510px;
    background-image: url("assets/hero-modelo.png");
    background-repeat: no-repeat;
    background-size: 1050px auto;
    background-position: right -12px top -78px;
    filter: drop-shadow(0 18px 20px rgba(0,55,130,.18));
    display: none;
}

.safe-card {
    position: absolute;
    right: -15px;
    bottom: -22px;
    background: #fff;
    border-radius: 28px;
    padding: 17px 22px;
    display: flex;
    align-items: center;
    gap: 14px;
    width: 330px;
    box-shadow: var(--shadow);
    right: -15px;
    bottom: 4px;
    right: 5px;
    bottom: 14px;
    width: 310px;
    padding: 15px 19px;
    border-radius: 25px;
}

.safe-card span {
    width: 50px;
    height: 50px;
    border-radius: 18px;
    display: grid;
    place-items: center;
    background: linear-gradient(#1488f1,#0746b2);
    color: #ffdf22;
    font-size: 29px;
    font-weight: 900;
    width: 47px;
    height: 47px;
}

.wave {
    position: absolute;
    height: 150px;
    left: -4%;
    right: -4%;
    bottom: -92px;
    background: var(--bright-blue);
    border-radius: 48% 52% 0 0;
    height: 185px;
    bottom: -118px;
    border-radius: 49% 51% 0 0;
    height: 150px;
    bottom: -96px;
    background: linear-gradient(180deg,#0878ea,#0669db);
}

.stats {
    background: var(--bright-blue);
    color: #fff;
    position: relative;
    z-index: 3;
    padding: 26px 0 34px;
    padding-top: 32px;
    padding: 31px 0 36px;
    isolation: isolate;
}

/* Recorte ondulado na base do bloco azul. O SVG acompanha toda a largura,
   evitando o término reto visto na versão anterior. */
.stats-bottom-wave {
    position: absolute;
    left: 0;
    bottom: -26px;
    width: 100%;
    height: 34px;
    display: block;
    overflow: visible;
    pointer-events: none;
    z-index: 1;
}

.stats-bottom-wave path {
    fill: var(--bright-blue);
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    max-width: 1120px;
}

.balloon {
    display: none;
}

/* ============================================================
   TABLET — 701px a 1050px
   ============================================================ */
@media (max-width: 1050px) and (min-width: 701px) {
    /* ========================================
       HERO
       ======================================== */
    .hero-reference-art {
        display: none;
    }

    .logo {
        background-image: none;
        width: 190px;
    }

    .logo img {
        display: block;
    }

    /* ========================================
       HEADER
       ======================================== */
    .header {
        height: 90px;
        background: rgba(255,255,255,.96);
    }

    .hero {
        padding-top: 95px;
    }

    .hero-grid {
        grid-template-columns: .9fr 1.2fr;
        grid-template-columns: 42% 58%;
    }

    .hero-mascot {
        margin-left: -25px;
        margin-left: -15px;
    }

    .hero-copy {
        padding-right: 20px;
    }

    .hero-product {
        display: none;
        display: none;
    }

}

/* ============================================================
   TABLET / TELAS ATÉ 1050px
   ============================================================ */
@media (max-width: 1050px) {
    .nav {
        display: none;
    }

    .menu-toggle {
        display: block;
    }

    /* ========================================
       HEADER
       ======================================== */
    .header-cta {
        display: none;
    }

    .nav.open {
        display: flex;
        position: absolute;
        top: 83px;
        left: 20px;
        right: 20px;
        flex-direction: column;
        background: #fff;
        padding: 15px;
        border-radius: 20px;
        box-shadow: var(--shadow);
    }

    /* ========================================
       HERO
       ======================================== */
    .hero-grid {
        grid-template-columns: .8fr 1.2fr;
    }

    .hero-product {
        display: none;
    }

    .toy-grid {
        grid-template-columns: repeat(3,1fr);
    }

    .toy-card:nth-child(4),.toy-card:nth-child(5) {
        display: none;
    }

    /* ========================================
       COMO FUNCIONA
       ======================================== */
    .how-layout {
        grid-template-columns: 1fr;
    }

    .polaroid {
        display: none;
    }

    .footer-grid {
        grid-template-columns: repeat(3,1fr);
    }

    .combo-grid {
        grid-template-columns: 1fr;
    }

    .combo-card {
        max-width: 560px;
        margin: auto;
        width: 100%;
    }

}

/* ============================================================
   MOBILE — ATÉ 700px
   Toda a versão mobile fica concentrada neste único bloco.
   ============================================================ */
@media (max-width: 700px) {

    /* SOBE SOMENTE O BLOCO AZUL */
    .stats.stats-wavy {
        margin-top: -60px !important;
        position: relative !important;
        z-index: 5 !important;
    }

    /* ONDA SUPERIOR */
    .stats.stats-wavy .stats-top-wave {
        width: 100% !important;
        height: 70px !important;
        display: block !important;
        margin: 0 0 -2px 0 !important;
    }

    /* MANTÉM O BLOCO AZUL GRANDE */
    .stats.stats-wavy .stats-grid {
        padding-top: 45px !important;
        padding-bottom: 45px !important;
    }

    .stats.stats-wavy .stats-grid article {
        min-height: 120px !important;
    }

    /* ========================================
       ESTATÍSTICAS
       ======================================== */
    .stats-grid {
        grid-template-columns: 1fr 1fr;
    }

    .stats article {
        display: block;
        text-align: center;
        padding: 18px 5px;
        border-bottom: 1px dotted rgba(255,255,255,.45);
    }

    .stats article:nth-child(2) {
        border-right: 0;
    }

    .stats span {
        font-size: 32px;
    }

    .stats b {
        font-size: 27px;
    }

    .stats small {
        font-size: 10px;
    }

    /* ========================================
       BRINQUEDOS
       ======================================== */
    .toys,.how,.testimonials {
        padding: 52px 0;
    }

    .section-title h2 {
        font-size: 35px;
    }

    .toy-grid {
        grid-template-columns: 1fr 1fr;
        gap: 11px;
    }

    .toy-card:nth-child(4) {
        display: block;
    }

    .toy-card {
        border-radius: 27px 27px 18px 18px;
    }

    .toy-card img {
        height: 155px;
    }

    .toy-card h3 {
        font-size: 15px;
    }

    /* ========================================
       MOMENTOS
       ======================================== */
    .moments-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .gallery {
        grid-template-columns: 1fr 1fr;
    }

    .gallery img {
        height: 150px;
    }

    .gallery img:last-child {
        grid-column: 1/3;
    }

    .reviews {
        grid-template-columns: 1fr;
    }

    main {
        display: flex;
        flex-direction: column;
    }

    .toys {
        order: 3;
    }

    .moments {
        padding: 52px 0;
        order: 8;
    }

    /* ========================================
       DEPOIMENTOS
       ======================================== */
    .testimonials {
        order: 9;
    }

    /* ========================================
       HERO
       ======================================== */
    .hero-copy .eyebrow {
        display: none;
    }

    .photo-bubble {
        width: 235px;
        height: 250px;
        border-width: 0;
        padding: 5px;
        border-radius: 45% 45% 20px 20px;
        transform: none;
    }

    .toy-grid .toy-card:first-child {
        grid-column: 1/3;
    }

    .toy-grid .toy-card:first-child img {
        height: 245px;
    }

    .toy-grid .toy-card:nth-child(4),.toy-grid .toy-card:nth-child(5) {
        display: none;
    }

    /* ========================================
       COMBOS
       ======================================== */
    .combos {
        order: 4;
        padding: 50px 0;
    }

    .combo-grid {
        gap: 15px;
    }

    .combo-card {
        grid-template-columns: 1.12fr .88fr;
        padding: 15px;
        border-radius: 24px;
        box-shadow: 0 8px 20px rgba(6,46,116,.1);
    }

    .combo-card img {
        height: 170px;
    }

    .combo-copy h3 {
        font-size: 19px;
    }

    .combo-copy strong {
        font-size: 24px;
    }

    /* ========================================
       CTA FINAL
       ======================================== */
    .promo-week {
        order: 5;
    }

    .final-cta {
        order: 6;
        background: #ffca17;
        color: var(--ink);
        margin: 0 14px;
        border-radius: 28px;
    }

    .cta-grid {
        grid-template-columns: 1fr;
        text-align: center;
        padding: 28px 0;
        padding: 10px 18px 22px;
        gap: 4px;
    }

    .cta-grid>img {
        height: 160px;
        margin: auto;
        height: 155px;
        margin-top: -25px;
    }

    .cta-grid h2 {
        font-size: 29px;
        color: var(--ink);
        font-size: 27px;
    }

    .cta-grid>div:last-child {
        width: 100%;
    }

    /* ========================================
       COMO FUNCIONA
       ======================================== */
    .how {
        order: 7;
        background: #fff8e9;
    }

    .steps {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .steps article {
        min-height: 205px;
        padding: 20px 10px 12px;
    }

    .moments .gallery img:first-child {
        grid-column: 1/3;
        height: 235px;
    }

    .reviews article {
        border-radius: 28px;
    }

    .mobile-safety {
        order: 10;
        display: block;
        padding: 24px 0 45px;
        background: #fff0f2;
    }

    .mobile-safety .container {
        background: #fff;
        border-radius: 28px;
        overflow: hidden;
        box-shadow: var(--shadow);
    }

    .mobile-safe-copy {
        display: flex;
        gap: 12px;
        align-items: center;
        padding: 20px;
    }

    .mobile-safe-copy span {
        width: 46px;
        height: 46px;
        border-radius: 15px;
        display: grid;
        place-items: center;
        flex: none;
        background: #087de4;
        color: #ffd51a;
        font-size: 28px;
        font-weight: 900;
    }

    .mobile-safe-copy p {
        margin: 0;
        font-size: 12px;
    }

    .mobile-safe-copy b {
        font-size: 16px;
    }

    .mobile-safety img {
        width: 100%;
        height: 210px;
        object-fit: cover;
    }

    /* ========================================
       RODAPÉ
       ======================================== */
    footer {
        padding-top: 35px;
    }

    .footer-grid {
        grid-template-columns: 1fr 1fr;
        display: block;
    }

    .footer-grid>div:first-child {
        grid-column: 1/3;
        padding-bottom: 20px;
    }

    .footer-grid>div:not(:first-child) {
        border-top: 1px solid rgba(255,255,255,.22);
    }

    .footer-grid>div:not(:first-child) h3 {
        margin: 0;
        padding: 14px 2px;
        position: relative;
        cursor: pointer;
    }

    .footer-grid>div:not(:first-child) h3:after {
        content: "⌄";
        position: absolute;
        right: 4px;
        font-size: 19px;
    }

    .footer-grid>div:not(:first-child)>:not(h3) {
        display: none;
    }

    .footer-grid>div:not(:first-child).open>:not(h3) {
        display: block;
    }

    .footer-grid>div:not(:first-child).open h3:after {
        transform: rotate(180deg);
    }

    .footer-logo {
        filter: none;
    }

    .copyright {
        font-size: 9px;
    }

 .float-wa {
    display: grid;
    bottom: 12px;
    right: 40px;
}

    .hero-reference-art {
        width: 245px;
        height: 245px;
        background-size: 505px auto;
        background-position: right -8px top -38px;
        filter: none;
    }

    /* ========================================
       HEADER
       ======================================== */
    .header {
        height: 76px;
        position: sticky;
        background: rgba(255,255,255,.97);
        box-shadow: 0 4px 24px rgba(4,61,132,.1);
        height: 76px;
    }

    .logo {
        width: 165px;
        width: 165px;
        height: 60px;
        background-image: none;
    }

    .logo img {
        height: 60px;
        display: block;
    }

    .safe-card {
        display: none;
        display: none;
    }

    .hero {
        padding: 38px 0 105px;
        text-align: center;
        order: 1;
        padding-top: 24px;
        min-height: auto;
        padding-top: 24px;
        padding: 24px 0 105px;
        min-height: 620px;
        padding: 14px 0 82px;
     overflow-x: clip !important;
overflow-y: visible !important;
    }

    .hero-grid {
        display: flex;
        flex-direction: column;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 0;
        grid-template-columns: 1fr 1fr;
        grid-template-columns: 1fr 1fr;
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-areas: "copy copy" "mascot castle";
        grid-template-rows: auto 245px;
        gap: 0;
        align-items: end;
        min-height: 510px;
        
        position: relative !important;
z-index: 20 !important;
overflow-x: clip !important;
overflow-y: visible !important;    }

    .hero-copy {
        order: 1;
        grid-column: 1/3;
        grid-column: 1/3;
        grid-area: copy;
        order: initial;
        padding: 4px 8px 0;
        align-self: start;
    }

    .hero-copy h1 {
        font-size: 46px;
        margin-top: 8px;
        text-align: center;
        font-size: 46px;
        font-size: 41px;
        line-height: .89;
        letter-spacing: -1.2px;
        margin: 4px 0 14px;
    }

    .hero-copy .lead {
        text-align: center;
        max-width: 340px;
        font-size: 13px;
        line-height: 1.48;
        margin: 0 auto;
    }

    .hero-copy .btn {
        padding: 13px 18px;
        font-size: 13px;
    }

    .hero-mascot {
        order: 2;
        margin: 5px 0 -70px;
        grid-column: 1;
        margin: 15px -30px -72px 0;
        align-self: end;
        margin: 15px -30px -72px 0;
        margin: 15px -35px -72px 0;
        grid-area: mascot;
        order: initial;
        margin: 0 0 -58px -8px;
        align-self: end;
        z-index: 4;
    }

    .hero-mascot img {
        height: 300px;
        width: auto;
        height: auto;
        width: 225px;
        transform: none;
        width: 225px;
        width: 220px;
        height: 265px;
        object-fit: contain;
        width: 190px;
        height: 225px;
        object-fit: contain;
        object-position: bottom;
    }

    .hero-product {
        display: block;
        grid-column: 2;
        align-self: end;
        margin: 20px 0 -72px -35px;
        display: block;
        height: auto;
        display: block;
        height: 245px;
        margin: 20px 0 -72px -38px;
        grid-area: castle;
        order: initial;
        display: block;
        height: 250px;
        margin: 0 -27px -58px -16px;
        align-self: end;
        z-index: 3;
    }

    .hero-castle {
        width: 235px;
        height: 235px;
        object-fit: contain;
        width: 250px;
        height: 250px;
        object-fit: contain;
        object-position: right bottom;
    }

.wave {
    height: 145px;
    bottom: -68px;
    border-radius: 55% 45% 0 0;
}

    .stats {
        padding: 20px 0;
        order: 2;
        margin-top: 0;
        padding: 28px 0 25px;
    }

    .balloon {
        display: block;
        position: absolute;
        width: 29px;
        height: 39px;
        border-radius: 52% 52% 48% 48%;
        z-index: 1;
        box-shadow: inset -6px -7px 6px rgba(0,0,0,.12);
    }

    .balloon:after {
        content: "";
        position: absolute;
        width: 1px;
        height: 42px;
        background: rgba(7,47,110,.35);
        left: 14px;
        top: 37px;
    }

    .balloon-pink {
        right: 13%;
        top: 16%;
        background: #f85292;
    }

    .balloon-blue {
        left: -7px;
        top: 28%;
        background: #2ba8e8;
    }

    .balloon-green {
        left: 4px;
        top: 47%;
        background: #51c944;
    }

    .balloon,.balloon:after {
        display: none !important;
    }

    .hero-copy .actions {
        margin-top: 18px;
        gap: 9px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 11px;
        margin-top: 17px;
    }

    .hero-copy .actions .btn {
        width: 196px;
        min-height: 43px;
        padding: 13px 18px;
    }

    .confetti i {
        width: 7px;
        height: 7px;
        display: block;
        position: absolute;
        width: 10px;
        height: 5px;
        border-radius: 3px;
        transform: rotate(35deg);
        box-shadow: none;
    }

    .confetti i:nth-child(1) {
        left: 9%;
        top: 18%;
        background: #1fa8ed;
        left: 8%;
        top: 17%;
        background: #ffbd08;
        transform: rotate(44deg);
    }

    .confetti i:nth-child(2) {
        left: 81%;
        top: 14%;
        background: #f3377b;
        left: 86%;
        top: 17%;
        background: #f3377b;
        width: 6px;
        height: 12px;
        transform: rotate(18deg);
    }

    .confetti i:nth-child(3) {
        left: 7%;
        top: 48%;
        background: #ffbf00;
        left: 5%;
        top: 35%;
        background: #18a9e8;
        width: 6px;
        height: 13px;
        transform: rotate(18deg);
    }

    .confetti i:nth-child(4) {
        right: 8%;
        top: 45%;
        background: #18bf43;
        right: 6%;
        top: 38%;
        background: #25be46;
        width: 12px;
        height: 5px;
        transform: rotate(-43deg);
    }

    .confetti i:nth-child(5) {
        left: 18%;
        top: 72%;
        background: #f53176;
        left: 14%;
        top: 51%;
        background: #ff7513;
        width: 6px;
        height: 12px;
        transform: rotate(29deg);
    }

    .confetti i:nth-child(6) {
        right: 26%;
        top: 73%;
        background: #ffbc00;
        right: 13%;
        top: 54%;
        background: #ffbf00;
        width: 11px;
        height: 5px;
        transform: rotate(-25deg);
    }

    .confetti i:nth-child(7) {
        left: 7%;
        top: 66%;
        background: #f3377b;
        width: 11px;
        height: 5px;
        transform: rotate(-36deg);
    }

    .confetti i:nth-child(8) {
        right: 8%;
        top: 68%;
        background: #19a9e9;
        width: 6px;
        height: 13px;
        transform: rotate(35deg);
    }

    .confetti i:nth-child(9) {
        left: 30%;
        top: 77%;
        background: #25be46;
        width: 6px;
        height: 12px;
        transform: rotate(-25deg);
    }

    .confetti i:nth-child(10) {
        right: 30%;
        top: 79%;
        background: #ff7513;
        width: 11px;
        height: 5px;
        transform: rotate(43deg);
    }

    .confetti i:nth-child(11) {
        left: 23%;
        top: 24%;
        background: #19a9e9;
        width: 6px;
        height: 6px;
        transform: rotate(45deg);
    }

    .confetti i:nth-child(12) {
        right: 22%;
        top: 28%;
        background: #ffbd08;
        width: 6px;
        height: 6px;
        transform: rotate(45deg);
    }
    
    /* ========================================
   ESTRELAS DECORATIVAS DO HERO
   ======================================== */

.hero-stars {
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
}

.hero-star {
    position: absolute;
    display: block;
    font-family: Arial, sans-serif;
    line-height: 1;
}

/* Estrela amarela esquerda */
.star-yellow-1 {
    top: 285px;
    left: 18px;
    font-size: 19px;
    color: #ffb800;
    transform: rotate(-12deg);
}

/* Estrela amarela direita */
.star-yellow-2 {
    top: 235px;
    right: 20px;
    font-size: 15px;
    color: #ffb800;
    transform: rotate(15deg);
}

/* Estrela azul esquerda */
.star-blue-1 {
    top: 255px;
    left: 28px;
    font-size: 28px;
    color: #159cff;
    font-weight: 900;
    transform: rotate(-15deg);
}

/* Estrela azul direita */
.star-blue-2 {
    top: 165px;
    right: 14px;
    font-size: 22px;
    color: #159cff;
    font-weight: 900;
    transform: rotate(18deg);
}

    /* ========================================
       BALÕES DO HERO
       ======================================== */

    .hero-balloon {
        position: absolute;
        display: block;
        height: auto;
        z-index: 2;
        pointer-events: none;
        user-select: none;
    }

.hero-balloon-pink {
    width: 60px;
    top: 55px;
    right: 12px;
    transform: rotate(18deg);
}

    .hero-balloon-green,
    .hero-balloon-blue {
        width: 58px;
        top: 75px;
        left: -20px;
        transform: rotate(-10deg);
    }

    /* ========================================
       BLOCO AZUL DE ESTATÍSTICAS - MOBILE
       CORREÇÃO ESTRUTURAL: FUNDO CONTÍNUO + SVG ONDULADO
       ======================================== */

    .stats {
        order: 2;
        width: 100%;
        margin: -1px 0 30px;
        padding: 12px 0 12px;
        background: linear-gradient(180deg, #0878ea 0%, #0874e5 100%);
        color: #fff;
        border-radius: 0;
        position: relative;
        z-index: 5;
        overflow: visible;
    }

    /* O stats-grid já é .container no HTML. Não forçar width:100%. */
    .stats-grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-width: 500px;
        margin: 0 auto;
    }

    .stats article {
        min-height: 92px;
        padding: 10px 6px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 0;
        text-align: center;
        border-right: 1px dotted rgba(255,255,255,.65);
        border-bottom: 1px dotted rgba(255,255,255,.65);
    }

    .stats article:nth-child(2) { border-right: 0; }
    .stats article:nth-child(3) { border-bottom: 0; }
    .stats article:nth-child(4) { border-right: 0; border-bottom: 0; }

    .stats span {
        display: block;
        font-size: 27px;
        line-height: 1;
        margin-bottom: 6px;
    }

    .stats b {
        display: block;
        font: 900 23px "Baloo 2", Nunito, sans-serif;
        line-height: 1;
        margin-bottom: 5px;
    }

    .stats small {
        display: block;
        font-size: 9px;
        line-height: 1.2;
        font-weight: 800;
    }

    /* SVG real: produz a ondulação pequena da referência, sem semicírculo. */
    .stats-bottom-wave {
        position: absolute;
        left: 0;
        bottom: -25px;
        width: 100%;
        height: 32px;
        display: block;
        overflow: visible;
        pointer-events: none;
    }

    .stats-bottom-wave path {
        fill: #0878ea;
    }

    /* A seção creme começa atrás da onda. */
    .toys {
        padding-top: 56px;
    }

/* ========================================
   POSIÇÃO FINAL DO MASCOTE E INFLÁVEL
   ======================================== */

.hero-mascot {
    transform: translate(10px, -45px) scale(1.15);
    transform-origin: bottom center;
    z-index: 4;
}

.hero-product {
    transform: translate(10px, -25px) scale(1.25);
    transform-origin: bottom center;
    z-index: 3;
    pointer-events: none;
}

    /* União visual entre HERO e ESTATÍSTICAS */
    .wave {
        background: #0878ea;
    }

.stats-top-wave {
    position: absolute;
    left: 0;
    top: -50px;
    width: 100%;
    height: 28px;
    display: block;
}

.stats-top-wave path {
    fill: #0878ea;
}

/* CENTRALIZA O BOTÃO VER TODOS OS BRINQUEDOS */
.toys .btn {
    display: block !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
} 
/* TÍTULO COMBOS ESPECIAIS */
.combos .section-title h2 {
    font-family: "Baloo 2", sans-serif !important;
    font-size: 40px !important;
    font-weight: 800 !important;
}
/* ========================================
   BOTÃO VER MAIS COMBOS
   ======================================== */

.combos-ver-mais {
    width: 100%;
    display: flex;
    justify-content: center;
    margin-top: 28px;
    margin-bottom: 32px;
}

.btn-ver-combos {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 14px 28px;

    background: #ff3378;
    color: #fff;

    font-family: "Baloo 2", sans-serif;
    font-size: 16px;
    font-weight: 800;
    line-height: 1;

    text-decoration: none;

    border-radius: 999px;

    box-shadow: 0 7px 0 rgba(190, 28, 88, 0.18);

    transition: transform .2s ease;
}

.btn-ver-combos:hover {
    transform: translateY(-2px);
}
/* TÍTULO NOSSOS BRINQUEDOS */
.toys .section-title h2 {
    font-family: "Baloo 2", sans-serif !important;
    font-size: 38px !important;
    font-weight: 800 !important;
    line-height: 0.95 !important;
    letter-spacing: -0.5px !important;
    color: #062967 !important;
}

/* PALAVRA "BRINQUEDOS" */
.toys .section-title h2 span {
    color: #ff3378 !important;
}

/* TEXTO PEQUENO ABAIXO */
.toys .section-title small {
    font-family: "Nunito", sans-serif !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}
/* BRINQUEDOS — CADA LETRA DE UMA COR */
.brinquedos-colorido i {
    font-style: normal !important;
}

.brinquedos-colorido i:nth-child(1)  { color: #ff3378 !important; }
.brinquedos-colorido i:nth-child(2)  { color: #ff8a00 !important; }
.brinquedos-colorido i:nth-child(3)  { color: #ffc400 !important; }
.brinquedos-colorido i:nth-child(4)  { color: #35b94b !important; }
.brinquedos-colorido i:nth-child(5)  { color: #0878ea !important; }
.brinquedos-colorido i:nth-child(6)  { color: #8b5cf6 !important; }
.brinquedos-colorido i:nth-child(7)  { color: #ff3378 !important; }
.brinquedos-colorido i:nth-child(8)  { color: #ff8a00 !important; }
.brinquedos-colorido i:nth-child(9)  { color: #35b94b !important; }
.brinquedos-colorido i:nth-child(10) { color: #0878ea !important; }

/* ========================================
   TÍTULO NOSSOS BRINQUEDOS
   ======================================== */

.toys .titulo-brinquedos {
    font-family: "Baloo 2", sans-serif !important;
    font-weight: 800 !important;
    text-align: center !important;
    line-height: 0.82 !important;
}

/* NOSSOS EM CIMA */
.toys .titulo-nossos {
    display: block !important;
    color: #062967 !important;
    font-size: 34px !important;
}

/* BRINQUEDOS EMBAIXO */
.toys .brinquedos-colorido {
    display: block !important;
    margin-top: 6px !important;
    font-size: 52px !important;
    white-space: nowrap !important;
}

.toys .brinquedos-colorido i {
    font-style: normal !important;
}

/* CORES DAS LETRAS */
.toys .brinquedos-colorido i:nth-child(1)  { color: #ff3378 !important; }
.toys .brinquedos-colorido i:nth-child(2)  { color: #ff8a00 !important; }
.toys .brinquedos-colorido i:nth-child(3)  { color: #ffc400 !important; }
.toys .brinquedos-colorido i:nth-child(4)  { color: #35b94b !important; }
.toys .brinquedos-colorido i:nth-child(5)  { color: #0878ea !important; }
.toys .brinquedos-colorido i:nth-child(6)  { color: #8b5cf6 !important; }
.toys .brinquedos-colorido i:nth-child(7)  { color: #ff3378 !important; }
.toys .brinquedos-colorido i:nth-child(8)  { color: #ff8a00 !important; }
.toys .brinquedos-colorido i:nth-child(9)  { color: #35b94b !important; }
.toys .brinquedos-colorido i:nth-child(10) { color: #0878ea !important; }
/* ========================================
   AJUSTE FINAL — NOSSOS BRINQUEDOS
   ======================================== */

/* TÍTULO COMPLETO */
.toys .titulo-brinquedos {
    font-family: "Baloo 2", sans-serif !important;
    font-weight: 900 !important;
    text-align: center !important;
}

/* NOSSOS — AZUL MARINHO E MAIOR */
.toys .titulo-nossos {
    display: block !important;

    color: #062967 !important;

    font-family: "Baloo 2", sans-serif !important;
    font-size: 42px !important;
    font-weight: 900 !important;
    line-height: 0.9 !important;
}

/* BRINQUEDOS — MAIOR */
.toys .brinquedos-colorido {
    display: block !important;

    margin-top: 8px !important;

    font-family: "Baloo 2", sans-serif !important;
    font-size: px !important;
    font-weight: 900 !important;
    line-height: 0.9 !important;

    white-space: nowrap !important;
}
/* ÍCONES DA SEÇÃO COMO FUNCIONA */
.how .step-icon {
    display: block;
    width: 48px;
    height: 48px;
    margin-bottom: 14px;
}

.how .step-icon svg {
    width: 100%;
    height: 100%;

    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
/* ÍCONES DA SEÇÃO COMO FUNCIONA */
.how .step-icon {
    display: block;
    width: 48px;
    height: 48px;

    /* CENTRALIZA O ÍCONE */
    margin: 0 auto 14px auto !important;
}

.how .step-icon svg {
    display: block;
    width: 100%;
    height: 100%;

    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
/* ========================================
   COMO FUNCIONA — CENTRALIZAR CONTEÚDO
   ======================================== */

.how .steps article {
    text-align: center !important;
}

/* ÍCONES */
.how .step-icon {
    margin-left: auto !important;
    margin-right: auto !important;
}

/* TÍTULOS */
.how .steps article h3 {
    text-align: center !important;
}

/* TEXTOS */
.how .steps article p {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
/* ========================================
   COMO FUNCIONA — CORES POR CARD
   ======================================== */

/* CARD 1 — AZUL */
.how .steps article:nth-child(1) {
    background: #eef8ff !important;
}

.how .steps article:nth-child(1) > b,
.how .steps article:nth-child(1) .step-icon,
.how .steps article:nth-child(1) h3 {
    color: #0787e7 !important;
}

/* CARD 2 — ROSA */
.how .steps article:nth-child(2) {
    background: #fff0f5 !important;
}

.how .steps article:nth-child(2) > b,
.how .steps article:nth-child(2) .step-icon,
.how .steps article:nth-child(2) h3 {
    color: #ef3475 !important;
}

/* CARD 3 — LARANJA */
.how .steps article:nth-child(3) {
    background: #fff6e6 !important;
}

.how .steps article:nth-child(3) > b,
.how .steps article:nth-child(3) .step-icon,
.how .steps article:nth-child(3) h3 {
    color: #ff7a00 !important;
}

/* CARD 4 — VERDE */
.how .steps article:nth-child(4) {
    background: #ecf9e9 !important;
}

.how .steps article:nth-child(4) > b,
.how .steps article:nth-child(4) .step-icon,
.how .steps article:nth-child(4) h3 {
    color: #1fb343 !important;
}
/* NÚMEROS 1, 2, 3 E 4 DENTRO DAS BOLINHAS */
.how .steps article > b {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1 !important;

    z-index: 20 !important;
}
/* ========================================
   FORÇAR NÚMEROS NAS BOLINHAS
   ======================================== */

.how .steps article > b {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 37px !important;
    height: 37px !important;

    color: #ffffff !important;
    font-family: "Baloo 2", sans-serif !important;
    font-size: 19px !important;
    font-weight: 900 !important;
    line-height: 37px !important;

    text-align: center !important;
    text-indent: 0 !important;

    opacity: 1 !important;
    visibility: visible !important;

    position: absolute !important;
    z-index: 50 !important;
}

/* 1 */
.how .steps article:nth-child(1) > b {
    background: #0787e7 !important;
    color: #ffffff !important;
}

/* 2 */
.how .steps article:nth-child(2) > b {
    background: #ef3475 !important;
    color: #ffffff !important;
}

/* 3 */
.how .steps article:nth-child(3) > b {
    background: #ff7a00 !important;
    color: #ffffff !important;
}

/* 4 */
.how .steps article:nth-child(4) > b {
    background: #1fb343 !important;
    color: #ffffff !important;
}
/* CENTRALIZAR LOGO DO RODAPÉ */
.footer-brand {
    text-align: center !important;
}

.footer-brand img {
    display: block !important;
    margin-left: auto !important;
    margin-right: auto !important;
}












} /* FIM DO MOBILE */

/* ============================================================
   COMBOS ESPECIAIS — CARROSSEL (referência visual 2026-08-31)
   ============================================================ */
.combos {
    padding: 54px 0 58px;
    background: #fffaf0;
    overflow: hidden;
}

.combos .combo-title {
    margin-bottom: 28px;
    text-align: center;
}

.combos .combo-title h2 {
    margin: 0;
    font-family: "Baloo 2", sans-serif;
    font-size: clamp(34px, 4.2vw, 54px);
    line-height: .95;
    font-weight: 900;
    color: #35106f;
    letter-spacing: -1px;
}

.combos .combo-title h2 b {
    color: #35106f;
    font-weight: 900;
}

.combos .combo-title h2 > span:not(.combo-title-star) {
    color: #ff2f78;
}

.combos .combo-title-star {
    display: inline-block;
    color: #ff2f78;
    font-size: .62em;
    vertical-align: 12%;
    margin-right: 8px;
}

.combos .combo-title h2 i {
    color: #ffc61c;
    font-style: normal;
    font-size: .55em;
    vertical-align: 16%;
    margin-left: 7px;
}

.combos .combo-title small {
    display: block;
    margin-top: 8px;
    color: #343038;
    font-size: 15px;
    font-weight: 700;
}

.combos .combo-title small strong {
    color: #ff2f78;
    font-weight: 900;
}

.combo-carousel {
    position: relative;
    width: 100%;
    max-width: 1120px;
    margin: 0 auto;
}

.combo-viewport {
    overflow: hidden;
    width: 100%;
    padding: 6px 4px 12px;
}

.combo-track {
    --combo-gap: 18px;
    display: flex;
    gap: var(--combo-gap);
    align-items: stretch;
    transform: translateX(0);
    will-change: transform;
}

.combos .combo-card {
    position: relative;
    flex: 0 0 calc((100% - (var(--combo-gap) * 2)) / 3);
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0 0 18px;
    border: 0;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 26px rgba(65, 44, 22, .11);
    overflow: hidden;
}

.combos .combo-card > img {
    width: 100%;
    height: 220px;
    padding: 18px 14px 4px;
    object-fit: cover;
    object-position: center;
    align-self: auto;
    background: #fff;
}

.combo-badge {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    width: 76px;
    height: 82px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #fff;
    border-radius: 18px 0 16px 0;
    line-height: 1;
    box-shadow: 0 5px 12px rgba(0,0,0,.08);
}

.combo-badge small {
    font-size: 12px;
    font-weight: 900;
}

.combo-badge strong {
    margin-top: 4px;
    font: 900 31px/1 "Baloo 2", sans-serif;
}

.combo-pink .combo-badge,
.combo-pink .combo-info a { background: #ff1971; }
.combo-green .combo-badge,
.combo-green .combo-info a { background: #17c51e; }
.combo-orange .combo-badge,
.combo-orange .combo-info a { background: #ff6209; }

.combo-info {
    display: flex;
    flex: 1;
    flex-direction: column;
    padding: 10px 20px 0;
}

.combo-info h3 {
    margin: 0 0 6px;
    color: #151515;
    font: 900 20px/1.08 "Baloo 2", sans-serif;
}

.combo-info p {
    min-height: 60px;
    margin: 0 0 12px;
    color: #151515;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.34;
}

.combo-info p span {
    color: #ff2f78;
    font-size: 18px;
    font-weight: 1000;
}

.combo-old {
    margin-top: auto;
    color: #777;
    font-size: 16px;
    font-weight: 800;
}

.combo-old s {
    font-size: 13px;
}

.combo-price {
    display: flex;
    align-items: baseline;
    gap: 9px;
    margin: 4px 0 9px;
}

.combo-price small {
    color: #333;
    font-size: 17px;
    font-weight: 900;
}

.combo-price strong {
    font: 900 30px/1 "Baloo 2", sans-serif;
}

.combo-pink .combo-price strong { color: #ff1971; }
.combo-green .combo-price strong { color: #17b91c; }
.combo-orange .combo-price strong { color: #ff6209; }

.combos .combo-info a {
    display: inline-flex;
    align-self: flex-start;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 11px 22px;
    border-radius: 999px;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 900;
    box-shadow: none;
}

.combo-arrow {
    position: absolute;
    top: 48%;
    z-index: 6;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border: 0;
    border-radius: 50%;
    background: #087be2;
    color: #fff;
    font: 900 34px/1 Arial, sans-serif;
    cursor: pointer;
    box-shadow: 0 5px 14px rgba(0, 92, 190, .28);
    transform: translateY(-50%);
}

.combo-arrow-prev { left: -18px; }
.combo-arrow-next { right: -18px; }

.combo-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 9px;
}

.combo-dots button {
    width: 13px;
    height: 13px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #dedede;
    cursor: pointer;
}

.combo-dots button.active { background: #ff1971; }

.combos-ver-mais,
.btn-ver-combos { display: none !important; }

@media (max-width: 700px) {
    .combos {
        padding: 30px 0 34px !important;
    }

    .combos .container {
        width: 100%;
        padding-left: 18px;
        padding-right: 18px;
    }

    .combos .combo-title {
        margin-bottom: 14px;
    }

    .combos .combo-title h2 {
        font-size: 27px !important;
        line-height: 1 !important;
        letter-spacing: -.45px;
        white-space: nowrap;
    }

    .combos .combo-title-star {
        margin-right: 4px;
    }

    .combos .combo-title h2 i {
        margin-left: 3px;
    }

    .combos .combo-title small {
        margin-top: 4px;
        font-size: 9px;
    }

    .combo-carousel {
        width: calc(100% + 2px);
        margin-left: -1px;
    }

    .combo-viewport {
        padding: 3px 1px 7px;
    }

    .combo-track {
        --combo-gap: 8px;
    }

    .combos .combo-card {
        flex-basis: calc((100% - (var(--combo-gap) * 2)) / 3);
        max-width: none;
        margin: 0;
        padding: 0 0 9px;
        border-radius: 12px;
        box-shadow: 0 4px 12px rgba(64, 45, 24, .12);
    }

    .combos .combo-card > img {
        height: 91px;
        padding: 10px 4px 0;
    }

    .combo-badge {
        width: 37px;
        height: 45px;
        border-radius: 9px 0 8px 0;
    }

    .combo-badge small {
        font-size: 6px;
    }

    .combo-badge strong {
        margin-top: 2px;
        font-size: 19px;
    }

    .combo-info {
        padding: 5px 7px 0;
    }

    .combo-info h3 {
        min-height: 22px;
        margin-bottom: 2px;
        font-size: 10px !important;
        line-height: 1.05;
    }

    .combo-info p {
        min-height: 38px;
        margin-bottom: 4px;
        font-size: 7px;
        line-height: 1.22;
    }

    .combo-info p span {
        font-size: 9px;
    }

    .combo-old {
        font-size: 6px;
    }

    .combo-old s {
        font-size: 7px;
    }

    .combo-price {
        display: block;
        margin: 2px 0 5px;
    }

    .combo-price small {
        display: block;
        font-size: 7px;
        line-height: 1;
    }

    .combo-price strong {
        display: block;
        margin-top: 1px;
        font-size: 17px !important;
        white-space: nowrap;
    }

    .combos .combo-info a {
        width: 100%;
        min-height: 25px;
        padding: 5px 2px;
        font-size: 7px;
        line-height: 1;
    }

    .combo-arrow {
        width: 22px;
        height: 22px;
        top: 47%;
        font-size: 19px;
        box-shadow: 0 3px 8px rgba(0, 92, 190, .3);
    }

    .combo-arrow-prev { left: -10px; }
    .combo-arrow-next { right: -10px; }

    .combo-dots {
        gap: 6px;
        flex-wrap: nowrap;
    }

    .combo-dots button {
        width: 8px;
        height: 8px;
    }

    .combo-dots {
        gap: 7px;
        margin-top: 7px;
    }

    .combo-dots button {
        width: 8px;
        height: 8px;
    }
}

@media (max-width: 360px) {
    .combos .container {
        padding-left: 14px;
        padding-right: 14px;
    }
    .combo-track { --combo-gap: 6px; }
    .combos .combo-title h2 { font-size: 24px !important; }
    .combo-price strong { font-size: 15px !important; }
    .combo-info h3 { font-size: 9px !important; }
}


/* ========================================
   COMBOS — 2 CARDS + SWIPE + CONTADOR 1-11
   ======================================== */
.combo-track {
  --combo-gap: 14px;
  touch-action: pan-y;
  user-select: none;
  -webkit-user-select: none;
  will-change: transform;
}

.combos .combo-card {
  flex: 0 0 calc((100% - var(--combo-gap)) / 2);
}

.combo-badge {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 12 !important;
  color: #fff !important;
}

.combo-badge small,
.combo-badge strong {
  opacity: 1 !important;
  color: #fff !important;
}

.combo-counter {
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 2px;
  margin-top: 10px;
  font-family: "Baloo 2", sans-serif;
  line-height: 1;
}

.combo-counter strong {
  color: #ff1971;
  font-size: 20px;
  font-weight: 900;
}

.combo-counter span {
  color: #7e7e88;
  font-size: 15px;
  font-weight: 800;
}

.combo-dots { display: none !important; }

.combo-viewport {
  overflow: hidden;
  cursor: grab;
}

.combo-viewport.is-dragging {
  cursor: grabbing;
}

@media (max-width: 700px) {
  .combo-track {
    --combo-gap: 10px;
  }

  .combos .combo-card {
    flex: 0 0 calc((100% - var(--combo-gap)) / 2) !important;
  }

  .combos .combo-card > img {
    height: 118px;
  }

  .combo-badge {
    width: 44px;
    height: 53px;
  }

  .combo-badge small {
    font-size: 7px;
  }

  .combo-badge strong {
    font-size: 22px;
  }

  .combo-info {
    padding: 7px 9px 0;
  }

  .combo-info h3 {
    font-size: 11px !important;
    min-height: 24px;
  }

  .combo-info p {
    font-size: 8px;
    min-height: 44px;
  }

  .combo-old {
    font-size: 7px;
  }

  .combo-old s {
    font-size: 8px;
  }

  .combo-price strong {
    font-size: 20px !important;
  }

  .combos .combo-info a {
    min-height: 30px;
    font-size: 8px;
  }

  .combo-arrow {
    width: 25px;
    height: 25px;
    font-size: 21px;
  }

  .combo-counter {
    margin-top: 8px;
  }

  .combo-counter strong { font-size: 19px; }
  .combo-counter span { font-size: 14px; }
}

@media (max-width: 360px) {
  .combo-track { --combo-gap: 8px; }
  .combos .combo-card > img { height: 108px; }
  .combo-price strong { font-size: 18px !important; }
}

/* =========================================================
   PROMOÇÃO 20% — SEGUNDA A QUINTA
   Construída em HTML/CSS (não é banner/imagem pronta)
   ========================================================= */
.promo-week{padding:28px 0 38px;background:#fff}.promo-week-container{width:min(100%,1040px);margin:auto;padding:0 18px}.promo-week-card{position:relative;overflow:hidden;border-radius:34px;padding:34px 34px 24px;color:#fff;background:radial-gradient(circle at 22% 34%,rgba(112,26,185,.48),transparent 32%),linear-gradient(135deg,#35006f 0%,#5712ca 56%,#27005c 100%);box-shadow:0 22px 44px rgba(49,0,105,.18)}.promo-week-hero{display:grid;grid-template-columns:42% 58%;align-items:center;min-height:430px}.promo-week-mascot{align-self:end;display:flex;align-items:flex-end;justify-content:center;height:100%}.promo-week-mascot img{display:block;width:min(100%,390px);max-height:410px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 14px rgba(0,0,0,.18))}.promo-week-copy{text-align:center;position:relative;z-index:2}.promo-week-copy h2{margin:0 0 10px;font:900 clamp(28px,4vw,50px)/.95 "Baloo 2",sans-serif;color:#fff;text-shadow:0 5px 0 rgba(29,0,88,.35)}.promo-economiza{display:inline-block;min-width:78%;padding:8px 28px;margin:4px 0 2px;background:#ffd51d;color:#451090;font:900 clamp(19px,2.5vw,31px)/1 "Baloo 2",sans-serif;transform:skew(-4deg)}.promo-percent{margin:-2px 0 -8px;font:1000 clamp(80px,11vw,150px)/.92 "Baloo 2",sans-serif;color:#fff;letter-spacing:-6px;-webkit-text-stroke:4px #ff2a78;text-shadow:0 8px 0 #9e0751,0 12px 18px rgba(0,0,0,.22)}.promo-desconto{font:1000 clamp(30px,4vw,52px)/1 "Baloo 2",sans-serif;color:#ffd21b;text-shadow:0 5px 0 #e04400}.promo-days-title{margin:18px auto 14px;max-width:460px;padding:9px 16px;border-radius:999px;background:#f72585;font:900 clamp(15px,2vw,22px)/1 "Baloo 2",sans-serif}.promo-days{display:flex;justify-content:center;gap:10px}.promo-day{width:74px;height:76px;border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 7px 0 rgba(26,0,75,.25);position:relative}.promo-day:before{content:"";position:absolute;top:-7px;left:17px;width:8px;height:18px;border-radius:8px;background:#d8d4e8;box-shadow:32px 0 #d8d4e8}.promo-day span{font:1000 20px/1 "Baloo 2",sans-serif}.promo-day small{font-size:12px;margin-top:7px}.promo-day-purple{color:#571095}.promo-day-pink{color:#f04477}.promo-day-green{color:#42a928}.promo-day-orange{color:#e96800}.promo-benefits{display:grid;grid-template-columns:repeat(3,1fr);margin-top:4px;border:1px dashed rgba(255,255,255,.7);border-radius:18px;overflow:hidden}.promo-benefits>div{min-height:82px;display:flex;align-items:center;justify-content:center;gap:14px;padding:12px 18px}.promo-benefits>div+div{border-left:1px solid rgba(255,255,255,.22)}.promo-benefits b{font-size:30px}.promo-benefits span{font:800 15px/1.25 "Baloo 2",sans-serif}.promo-week-text{text-align:center;margin:18px 0 14px;font:800 16px/1.3 "Baloo 2",sans-serif}.promo-week-text strong{color:#ffd51d}.promo-week-cta{width:min(78%,690px);min-height:72px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:22px;padding:12px 18px 12px 34px;border-radius:999px;background:#ffd21b;color:#451090;text-decoration:none;font:1000 clamp(20px,2.5vw,30px)/1 "Baloo 2",sans-serif;box-shadow:0 8px 0 #e3a800}.promo-week-cta b{margin-left:auto;width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#5312a0;color:#fff;font-size:30px}.promo-week-note{text-align:center;margin:18px 0 0;font:700 11px/1.3 "Baloo 2",sans-serif}
@media(max-width:700px){.promo-week{order:5!important;padding:12px 0 24px}.promo-week-container{padding:0 10px}.promo-week-card{border-radius:22px;padding:20px 14px 18px}.promo-week-hero{grid-template-columns:35% 65%;min-height:300px}.promo-week-mascot img{width:150%;max-width:205px;max-height:275px;transform:translateX(-6px)}.promo-week-copy h2{font-size:23px}.promo-economiza{min-width:92%;padding:6px 8px;font-size:15px}.promo-percent{font-size:70px;letter-spacing:-4px;-webkit-text-stroke:2px #ff2a78;text-shadow:0 5px 0 #9e0751}.promo-desconto{font-size:25px}.promo-days-title{margin:11px auto 10px;padding:7px 5px;font-size:12px}.promo-days{gap:5px}.promo-day{width:42px;height:48px;border-radius:7px}.promo-day:before{top:-5px;left:9px;width:5px;height:12px;box-shadow:19px 0 #d8d4e8}.promo-day span{font-size:12px}.promo-day small{font-size:8px;margin-top:3px}.promo-benefits{margin-top:10px;border-radius:12px}.promo-benefits>div{min-height:64px;gap:4px;padding:7px 4px;flex-direction:column;text-align:center}.promo-benefits b{font-size:20px}.promo-benefits span{font-size:9px}.promo-week-text{margin:13px 5px 10px;font-size:11px}.promo-week-cta{width:94%;min-height:52px;padding:8px 8px 8px 16px;gap:6px;font-size:15px;text-align:center}.promo-week-cta b{width:36px;height:36px;min-width:36px;font-size:22px}.promo-week-note{font-size:8px;margin-top:13px}}
@media(max-width:370px){.promo-week-card{padding-left:10px;padding-right:10px}.promo-week-hero{grid-template-columns:33% 67%}.promo-week-copy h2{font-size:20px}.promo-percent{font-size:61px}.promo-desconto{font-size:22px}.promo-day{width:38px}.promo-week-mascot img{max-width:180px}.promo-week-cta{font-size:13px}}

/* ==================================================
   PROMOÇÃO 20% — versão refinada abaixo dos combos
   ================================================== */
.promo-week-card{
  isolation:isolate;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 72% 18%,rgba(98,24,207,.52),transparent 34%),
    radial-gradient(circle at 18% 45%,rgba(97,7,154,.58),transparent 34%),
    linear-gradient(145deg,#2f006d 0%,#4a05a4 52%,#21004e 100%);
}
.promo-week-card::before{
  content:"";
  position:absolute;inset:0;z-index:-2;pointer-events:none;
  background:repeating-conic-gradient(from 0deg at 70% 35%,rgba(255,255,255,.035) 0 7deg,transparent 7deg 14deg);
  opacity:.55;
}
.promo-week-card::after{
  content:"";
  position:absolute;left:-8%;right:-8%;bottom:-76px;height:150px;z-index:-1;pointer-events:none;
  border-radius:50%;
  background:rgba(96,0,140,.28);
}
.promo-week-title{
  position:relative;z-index:5;
  width:65%;margin:0 2% 2px auto;
  text-align:center;
  font:1000 clamp(31px,4.3vw,58px)/.92 "Baloo 2",sans-serif;
  color:#fff;
  text-shadow:0 5px 0 rgba(28,0,85,.40);
  letter-spacing:-.5px;
}
.promo-title-mobile{display:none}
.promo-week-hero{
  position:relative;
  display:grid;
  grid-template-columns:41% 59%;
  align-items:end;
  min-height:390px;
  margin-top:-2px;
}
.promo-week-mascot{
  position:relative;
  height:390px;
  align-self:end;
  overflow:visible;
  z-index:4;
}
.promo-week-mascot img{
  position:absolute;
  left:-3%;
  bottom:-18px;
  width:116%;
  max-width:none;
  height:420px;
  max-height:none;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 15px 16px rgba(18,0,55,.28));
}
.promo-week-copy{align-self:start;padding-top:2px;position:relative;z-index:5;text-align:center}
.promo-economiza{
  position:relative;
  display:block;
  width:86%;
  min-width:0;
  margin:4px auto 0;
  padding:10px 28px;
  background:#ffd51d;
  color:#451090;
  font:1000 clamp(20px,2.6vw,32px)/1 "Baloo 2",sans-serif;
  clip-path:polygon(4% 0,96% 0,92% 22%,100% 50%,92% 78%,96% 100%,4% 100%,8% 78%,0 50%,8% 22%);
  transform:none;
}
.promo-percent{
  margin:-4px 0 -8px;
  font:1000 clamp(92px,12vw,160px)/.86 "Baloo 2",sans-serif;
  color:#fff;
  letter-spacing:-7px;
  -webkit-text-stroke:4px #ff2a78;
  paint-order:stroke fill;
  text-shadow:0 8px 0 #9e0751,0 13px 18px rgba(0,0,0,.24);
}
.promo-desconto{
  font:1000 clamp(32px,4.4vw,57px)/.96 "Baloo 2",sans-serif;
  color:#ffd21b;
  text-shadow:0 5px 0 #e04400;
}
.promo-days-title{margin:18px auto 14px;max-width:520px;padding:10px 18px;border-radius:999px;background:#f72585;font:1000 clamp(16px,2vw,23px)/1 "Baloo 2",sans-serif}
.promo-days{gap:12px}
.promo-day{width:82px;height:78px;border-radius:10px}
.promo-day span{font-size:21px}.promo-day small{font-size:13px}
.promo-benefits{position:relative;z-index:5;margin-top:0}
.promo-week-text{position:relative;z-index:5}
.promo-week-cta{
  position:relative;z-index:5;
  width:min(82%,730px);
  min-height:74px;
  justify-content:center;
  padding-left:70px;
  text-align:center;
}
.promo-week-cta span{flex:1;text-align:center}
.promo-week-cta b{margin-left:0;flex:0 0 auto}
.promo-week-note{position:relative;z-index:5}
.promo-balloon{
  position:absolute;z-index:2;pointer-events:none;user-select:none;
  width:88px;height:130px;object-fit:contain;
  filter:drop-shadow(0 8px 12px rgba(21,0,59,.22));
}
.promo-balloon-left{left:2.8%;top:4%;transform:rotate(-8deg)}
.promo-balloon-right{right:3.5%;top:11%;width:72px;height:112px;transform:rotate(8deg)}
.promo-confetti{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}
.promo-confetti i{position:absolute;display:block;font-style:normal;font-weight:1000;line-height:1}
.promo-confetti .c1{left:5%;top:9%;font-size:24px;color:#ffd21b;transform:rotate(-12deg)}
.promo-confetti .c2{left:17%;top:6%;width:10px;height:22px;border-radius:2px;background:#ff2a78;transform:rotate(35deg)}
.promo-confetti .c3{left:31%;top:12%;font-size:18px;color:#ffd21b;transform:rotate(16deg)}
.promo-confetti .c4{left:44%;top:5%;width:9px;height:18px;border-radius:2px;background:#35b8ff;transform:rotate(-28deg)}
.promo-confetti .c5{right:29%;top:8%;width:10px;height:20px;border-radius:2px;background:#8e43ff;transform:rotate(30deg)}
.promo-confetti .c6{right:14%;top:6%;font-size:24px;color:#ffd21b;transform:rotate(14deg)}
.promo-confetti .c7{right:6%;top:24%;width:9px;height:20px;border-radius:2px;background:#ff2a78;transform:rotate(-20deg)}
.promo-confetti .c8{left:3%;top:38%;width:9px;height:20px;border-radius:2px;background:#35b8ff;transform:rotate(23deg)}
.promo-confetti .c9{left:7%;bottom:23%;font-size:20px;color:#ffd21b;transform:rotate(12deg)}
.promo-confetti .c10{right:5%;bottom:30%;width:9px;height:20px;border-radius:2px;background:#ff2a78;transform:rotate(38deg)}
.promo-confetti .c11{right:18%;bottom:9%;width:8px;height:18px;border-radius:2px;background:#35b8ff;transform:rotate(-18deg)}
.promo-confetti .c12{left:31%;bottom:4%;font-size:16px;color:#ffd21b}

@media(max-width:700px){
  .promo-week-card{padding:14px 12px 16px;border-radius:22px}
  .promo-week-title{
    width:72%;
    margin:0 1% 0 auto;
    font-size:24px;
    line-height:.96;
  }
  .promo-title-mobile{display:inline}
  .promo-week-hero{
    grid-template-columns:38% 62%;
    min-height:258px;
    margin-top:0;
  }
  .promo-week-mascot{height:258px}
  .promo-week-mascot img{
    left:-20%;
    bottom:-5px;
    width:152%;
    height:300px;
    max-width:none;
    max-height:none;
    transform:none;
  }
  .promo-week-copy{padding-top:10px}
.promo-economiza{
    width:96%;
    padding:6px 7px;
    font-size:14px;
    transform:translateY(-20px);
  }.promo-percent{font-size:85px;letter-spacing:-4px;-webkit-text-stroke:2px #ff2a78;text-shadow:0 5px 0 #9e0751,0 8px 10px rgba(0,0,0,.2);transform:translateY(-10px)}  .promo-desconto{font-size:25px}
  .promo-days-title{margin:10px auto 9px;padding:7px 4px;font-size:11px;white-space:nowrap}
  .promo-days{gap:5px}
  .promo-day{width:40px;height:48px}.promo-day span{font-size:12px}.promo-day small{font-size:8px}
  .promo-benefits{margin-top:7px}
.promo-week-cta{
    width:96%;
    min-height:54px;
    padding:8px 8px 8px 44px;
    font-size:25px;
    gap:8px;
}
  .promo-week-cta span{white-space:nowrap}
  .promo-week-cta b{width:38px;height:38px;min-width:38px;font-size:23px}
  .promo-balloon-left{left:1%;top:2%;width:47px;height:72px}
  .promo-balloon-right{right:1%;top:25%;width:42px;height:66px}
  .promo-confetti .c1{font-size:14px}.promo-confetti .c3{font-size:12px}.promo-confetti .c6{font-size:14px}.promo-confetti .c9{font-size:12px}
}
@media(max-width:370px){
  .promo-week-title{font-size:21px;width:70%}
  .promo-week-hero{grid-template-columns:37% 63%;min-height:246px}
  .promo-week-mascot{height:246px}.promo-week-mascot img{height:286px;left:-24%}
  .promo-percent{font-size:61px}.promo-desconto{font-size:22px}
  .promo-week-cta{font-size:12.5px;padding-left:36px}
}

/* =========================================================
   BLOCOS ABAIXO DOS COMBOS — referência aprovada
   ========================================================= */
.combo-dots{display:flex;justify-content:center;gap:8px;margin:8px 0 22px}.combo-dots button{width:9px;height:9px;min-width:9px;padding:0;border:0;border-radius:50%;background:#ddd9e6;cursor:pointer}.combo-dots button.is-active{background:#ff1674;transform:scale(1.18)}
.combo-trust-strip{display:grid;grid-template-columns:repeat(4,1fr);align-items:stretch;margin:8px auto 28px;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#3b087d,#25105f);color:#fff;box-shadow:0 10px 24px rgba(46,10,105,.14)}.combo-trust-strip article{display:flex;align-items:center;gap:12px;min-height:94px;padding:14px 16px;position:relative}.combo-trust-strip article+article:before{content:"";position:absolute;left:0;top:20%;height:60%;width:1px;background:rgba(255,255,255,.35)}.trust-icon{width:52px;height:52px;min-width:52px;border-radius:50%;display:grid;place-items:center;font:1000 28px/1 "Baloo 2",sans-serif;color:#fff;border:3px solid rgba(255,255,255,.9);box-shadow:inset 0 -5px 0 rgba(0,0,0,.13),0 4px 8px rgba(0,0,0,.16)}.trust-shield{background:#20bd58}.trust-clock{background:#ffb515}.trust-smile{background:#ff1572}.trust-whats{background:#20bf58}.combo-trust-strip strong{display:block;font:900 16px/1.05 "Baloo 2",sans-serif}.combo-trust-strip span{display:block;margin-top:4px;font:700 12px/1.25 "Baloo 2",sans-serif}
.combo-help-card{position:relative;display:grid;grid-template-columns:160px 1fr 220px;align-items:center;gap:18px;min-height:175px;margin:0 auto 18px;padding:20px 24px 18px 155px;border-radius:30px;background:linear-gradient(135deg,#ffd933,#ffc915);box-shadow:0 10px 24px rgba(164,116,0,.14);overflow:visible}.combo-help-card>img{position:absolute;left:-2px;bottom:0;width:170px;height:205px;object-fit:contain;object-position:left bottom;filter:drop-shadow(0 6px 8px rgba(0,0,0,.14))}.combo-help-copy h3{margin:0;color:#3c0b81;font:1000 clamp(22px,2.6vw,34px)/1 "Baloo 2",sans-serif}.combo-help-script{margin:3px 0 6px!important;color:#ff1880!important;font:800 27px/1 "Comic Sans MS","Baloo 2",cursive!important;font-style:italic!important}.combo-help-copy p:last-child{margin:0;color:#161616;font:700 14px/1.35 "Baloo 2",sans-serif}.combo-help-btn{display:flex;align-items:center;justify-content:center;gap:10px;min-height:78px;padding:12px 18px;border-radius:22px;background:linear-gradient(#27c940,#15a92c);color:#fff;text-decoration:none;box-shadow:0 8px 0 #0a8d22,0 10px 18px rgba(0,0,0,.13);font:1000 20px/1.08 "Baloo 2",sans-serif;text-align:center}.combo-help-btn b{font-size:33px}
.combo-service-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:0 -18px -28px;padding:14px 30px 16px;border-radius:0 0 0 0;background:linear-gradient(110deg,#421077,#20106a);color:#fff}.combo-service-strip article{display:flex;align-items:center;justify-content:center;gap:12px;min-height:56px}.combo-service-strip b{font-size:28px}.combo-service-strip span{font:800 14px/1.2 "Baloo 2",sans-serif}.combo-service-strip small{font-size:12px;color:#fff}
@media(max-width:700px){.combo-dots{gap:7px;margin:6px 0 18px}.combo-dots button{width:8px;height:8px;min-width:8px}.combo-trust-strip{grid-template-columns:repeat(4,1fr);border-radius:18px;margin:6px -2px 20px}.combo-trust-strip article{min-height:82px;padding:8px 5px;gap:5px;flex-direction:column;text-align:center}.combo-trust-strip article+article:before{top:18%;height:64%}.trust-icon{width:37px;height:37px;min-width:37px;font-size:20px;border-width:2px}.combo-trust-strip strong{font-size:10px}.combo-trust-strip span{font-size:7.5px;line-height:1.15}.combo-help-card{grid-template-columns:82px 1fr 102px;gap:4px;min-height:128px;padding:13px 9px 12px 79px;border-radius:19px;margin:0 2px 14px}.combo-help-card>img{left:-7px;width:94px;height:140px}.combo-help-copy h3{font-size:14px;line-height:1.02}.combo-help-script{font-size:16px!important;margin:2px 0 4px!important}.combo-help-copy p:last-child{font-size:8.5px;line-height:1.25}.combo-help-btn{min-height:60px;padding:8px 5px;border-radius:15px;gap:4px;font-size:10px;box-shadow:0 5px 0 #0a8d22,0 7px 12px rgba(0,0,0,.12)}.combo-help-btn b{font-size:19px}.combo-service-strip{grid-template-columns:repeat(3,1fr);margin:0 -10px -24px;padding:10px 7px 12px}.combo-service-strip article{gap:5px;min-height:48px}.combo-service-strip b{font-size:19px}.combo-service-strip span{font-size:8.5px;line-height:1.15}.combo-service-strip small{font-size:7.5px}}
@media(max-width:360px){.combo-trust-strip strong{font-size:9px}.combo-trust-strip span{font-size:6.8px}.combo-help-card{grid-template-columns:72px 1fr 90px;padding-left:69px}.combo-help-card>img{width:84px}.combo-help-copy h3{font-size:12.5px}.combo-help-script{font-size:14px!important}.combo-help-copy p:last-child{font-size:7.6px}.combo-help-btn{font-size:9px}.combo-service-strip span{font-size:7.8px}}


/* =========================================================
   COMBOS — CARROSSEL CENTRAL EM DESTAQUE (referência aprovada)
   ========================================================= */
.combos{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 24%, rgba(255,219,69,.16) 0 4px, transparent 5px),
    radial-gradient(circle at 88% 18%, rgba(255,46,132,.12) 0 7px, transparent 8px),
    linear-gradient(180deg,#fff9fb 0%,#fff 82%);
}
.combo-title{margin-bottom:10px}
.combo-title h2{font-size:clamp(32px,5vw,58px);letter-spacing:-1px}
.combo-title small{font-size:clamp(14px,1.7vw,20px)}
.combo-swipe-hint{
  width:min(560px,82%);
  min-height:48px;
  margin:12px auto 24px;
  padding:8px 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  border:1.5px solid #ff66a4;
  border-radius:999px;
  color:#381171;
  background:rgba(255,255,255,.86);
  font:900 clamp(13px,1.8vw,19px)/1 "Baloo 2",sans-serif;
  box-shadow:0 7px 20px rgba(255,43,129,.08);
}
.combo-swipe-hint span{font-size:28px;transform:rotate(-10deg)}
.combo-swipe-hint b{font-size:34px;line-height:.7;color:#ff1674}

.combo-carousel{
  position:relative;
  width:100%;
  max-width:1060px;
  height:590px;
  margin:0 auto;
}
.combo-viewport{
  position:relative;
  width:100%;
  height:100%;
  overflow:visible;
  touch-action:pan-y;
  cursor:grab;
  user-select:none;
}
.combo-viewport.is-dragging{cursor:grabbing}
.combo-track{
  position:relative !important;
  display:block !important;
  width:100%;
  height:100%;
  transform:none !important;
  transition:none !important;
}
.combos .combo-card{
  --card-accent:#ff176f;
  position:absolute !important;
  top:24px;
  left:50%;
  width:min(470px,54%);
  height:525px;
  margin:0 !important;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid #eee8ef;
  border-radius:28px;
  background:#fff;
  box-shadow:0 12px 28px rgba(72,32,91,.12);
  opacity:0;
  pointer-events:none;
  transform:translateX(-50%) scale(.76);
  transition:transform .38s cubic-bezier(.2,.75,.25,1), opacity .3s ease, filter .3s ease, box-shadow .3s ease;
  z-index:0;
}
.combos .combo-card.combo-pink{--card-accent:#ff176f}
.combos .combo-card.combo-green{--card-accent:#16b92a}
.combos .combo-card.combo-orange{--card-accent:#ff6414}
.combos .combo-card.is-active{
  opacity:1;
  pointer-events:auto;
  transform:translateX(-50%) scale(1);
  z-index:5;
  border:2px solid color-mix(in srgb,var(--card-accent) 42%, white);
  box-shadow:0 0 0 5px color-mix(in srgb,var(--card-accent) 10%, transparent),0 15px 34px rgba(255,27,113,.18);
}
.combos .combo-card.is-prev,
.combos .combo-card.is-next{
  opacity:.98;
  pointer-events:auto;
  z-index:2;
  filter:saturate(.94);
}
.combos .combo-card.is-prev{transform:translateX(-148%) scale(.82)}
.combos .combo-card.is-next{transform:translateX(48%) scale(.82)}
.combos .combo-card > img{
  width:100% !important;
  height:270px !important;
  min-height:270px;
  object-fit:cover !important;
  border-radius:0 !important;
  display:block;
}
.combos .combo-card.is-prev > img,
.combos .combo-card.is-next > img{height:245px !important;min-height:245px}
.combo-badge{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  width:94px !important;
  height:104px !important;
  z-index:8;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-radius:24px 0 22px 0 !important;
  background:var(--card-accent) !important;
  color:#fff !important;
  box-shadow:0 7px 14px rgba(0,0,0,.08);
}
.combo-badge small{font-size:16px !important;font-weight:900 !important;opacity:1 !important;color:#fff !important}
.combo-badge strong{font-size:48px !important;line-height:.92 !important;color:#fff !important;opacity:1 !important}
.combos .combo-card.is-active.combo-01::after{
  content:"★  MAIS ALUGADO";
  position:absolute;
  top:16px;
  right:0;
  z-index:7;
  padding:12px 17px;
  border-radius:16px 0 0 16px;
  background:linear-gradient(180deg,#ffd92a,#ffb900);
  color:#e04a00;
  font:1000 15px/1 "Baloo 2",sans-serif;
  box-shadow:0 4px 10px rgba(255,174,0,.24);
}
.combo-info{
  flex:1;
  display:flex !important;
  flex-direction:column;
  padding:18px 24px 20px !important;
  text-align:left !important;
}
.combo-info h3{display:none !important}
.combo-info p{
  margin:0 0 13px !important;
  min-height:58px;
  color:#151515 !important;
  font:900 clamp(18px,2.2vw,26px)/1.15 "Baloo 2",sans-serif !important;
}
.combo-info p::first-letter{color:inherit}
.combo-old{margin-top:auto !important;color:#777 !important;font:800 15px/1.2 "Baloo 2",sans-serif !important}
.combo-price{display:flex !important;align-items:flex-end !important;justify-content:space-between !important;gap:10px;margin:5px 0 15px !important}
.combo-price small{font:1000 16px/1 "Baloo 2",sans-serif !important;color:#111 !important}
.combo-price strong{font:1000 clamp(27px,3.5vw,42px)/1 "Baloo 2",sans-serif !important;color:var(--card-accent) !important;white-space:nowrap}
.combo-info>a{
  min-height:58px !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  border-radius:999px !important;
  background:linear-gradient(180deg,color-mix(in srgb,var(--card-accent) 86%, white),var(--card-accent)) !important;
  box-shadow:inset 0 -5px 0 rgba(100,0,40,.18),0 7px 15px color-mix(in srgb,var(--card-accent) 24%, transparent) !important;
  color:#fff !important;
  font:1000 22px/1 "Baloo 2",sans-serif !important;
  text-decoration:none !important;
}
.combos .combo-card.is-prev .combo-info,
.combos .combo-card.is-next .combo-info{padding:16px 20px 18px !important}
.combos .combo-card.is-prev .combo-info p,
.combos .combo-card.is-next .combo-info p{font-size:20px !important}
.combo-arrow{
  position:absolute !important;
  top:auto !important;
  bottom:-8px !important;
  z-index:20;
  width:50px !important;
  height:50px !important;
  border-radius:50% !important;
  border:0 !important;
  display:grid !important;
  place-items:center;
  background:#ff1977 !important;
  color:#fff !important;
  font-size:38px !important;
  line-height:1 !important;
  box-shadow:0 6px 14px rgba(255,25,119,.22) !important;
}
.combo-arrow-prev{left:calc(50% - 145px) !important;background:#eabdf5 !important;color:#b429c9 !important}
.combo-arrow-next{right:calc(50% - 145px) !important}
.combo-counter{margin:8px auto 0 !important;font-family:"Baloo 2",sans-serif !important;text-align:center}
.combo-counter strong,.combo-counter span{font-size:25px !important;font-weight:900 !important;color:#1a1a1a !important}
.combo-dots{margin-top:12px !important}
.combo-dots button{width:10px !important;height:10px !important;min-width:10px !important}
.combo-dots button.is-active{background:#ff1977 !important}

@media(max-width:700px){
  .combos{padding-top:24px !important}
  .combo-title h2{font-size:31px !important;white-space:nowrap}
  .combo-title small{font-size:13px !important}
  .combo-swipe-hint{width:88%;min-height:40px;margin:10px auto 16px;padding:6px 10px;gap:7px;font-size:12px}
  .combo-swipe-hint span{font-size:21px}.combo-swipe-hint b{font-size:25px}
  .combo-carousel{height:510px !important;margin-top:0 !important}
  .combo-viewport{overflow:visible !important}
  .combos .combo-card{
    top:16px;
    width:66% !important;
    height:450px !important;
    border-radius:20px !important;
  }
  .combos .combo-card.is-prev{transform:translateX(-139%) scale(.78) !important}
  .combos .combo-card.is-next{transform:translateX(39%) scale(.78) !important}
  .combos .combo-card > img{height:210px !important;min-height:210px !important}
  .combos .combo-card.is-prev > img,.combos .combo-card.is-next > img{height:200px !important;min-height:200px !important}
  .combo-badge{width:70px !important;height:78px !important;border-radius:17px 0 17px 0 !important}
  .combo-badge small{font-size:11px !important}.combo-badge strong{font-size:36px !important}
  .combos .combo-card.is-active.combo-01::after{top:10px;padding:8px 9px;font-size:10px}
  .combo-info{padding:13px 14px 14px !important}
  .combo-info p{min-height:50px;font-size:16px !important;line-height:1.12 !important}
  .combo-old{font-size:10px !important}
  .combo-price{margin:4px 0 10px !important}
  .combo-price small{font-size:11px !important}
  .combo-price strong{font-size:24px !important}
  .combo-info>a{min-height:45px !important;font-size:16px !important}
  .combos .combo-card.is-prev .combo-info,.combos .combo-card.is-next .combo-info{padding:12px 12px 13px !important}
  .combos .combo-card.is-prev .combo-info p,.combos .combo-card.is-next .combo-info p{font-size:15px !important}
  .combo-arrow{bottom:-5px !important;width:42px !important;height:42px !important;font-size:30px !important}
  .combo-arrow-prev{left:calc(50% - 92px) !important}.combo-arrow-next{right:calc(50% - 92px) !important}
  .combo-counter{margin-top:3px !important}.combo-counter strong,.combo-counter span{font-size:21px !important}
  .combo-dots{margin:9px 0 17px !important;gap:8px !important}
}
@media(max-width:370px){
  .combo-title h2{font-size:28px !important}
  .combo-carousel{height:488px !important}
  .combos .combo-card{height:430px !important}
  .combos .combo-card > img{height:194px !important;min-height:194px !important}
  .combo-info p{font-size:15px !important}
  .combo-price strong{font-size:21px !important}
}

/* AJUSTE FINO DOS CARDS — título maior + brilho no botão */
@media(max-width:700px){
  .combos .combo-info p{
    min-height:66px !important;
    font-size:25px !important;
    line-height:1.08 !important;
    letter-spacing:-.2px;
  }
  .combos .combo-card.is-prev .combo-info p,
  .combos .combo-card.is-next .combo-info p{
    font-size:18px !important;
    line-height:1.08 !important;
  }
  .combos .combo-info>a{
    position:relative;
    overflow:hidden;
    box-shadow:
      inset 0 -5px 0 rgba(100,0,40,.18),
      0 7px 15px color-mix(in srgb,var(--card-accent) 30%, transparent),
      0 0 15px color-mix(in srgb,var(--card-accent) 38%, transparent) !important;
  }
  .combos .combo-info>a::after{
    content:"";
    position:absolute;
    top:-55%;
    left:-38%;
    width:24%;
    height:210%;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.92),transparent);
    transform:rotate(22deg);
    animation:comboButtonShine 2.8s ease-in-out infinite;
    pointer-events:none;
  }
}

@keyframes comboButtonShine{
  0%,55%{left:-38%;opacity:0}
  62%{opacity:1}
  82%{left:118%;opacity:.9}
  100%{left:118%;opacity:0}
}

@media(prefers-reduced-motion:reduce){
  .combos .combo-info>a::after{animation:none}
}

/* AJUSTE FINO DOS PREÇOS DOS COMBOS */
@media(max-width:700px){
  .combos .combo-old{
    font-size:12px !important;
    line-height:1.2 !important;
  }
  .combos .combo-old s{
    font-size:13px !important;
  }
  .combos .combo-price small{
    font-size:13px !important;
  }
  .combos .combo-price strong{
    font-size:27px !important;
    line-height:1 !important;
  }
}
@media(max-width:370px){
  .combos .combo-old{font-size:11px !important}
  .combos .combo-old s{font-size:12px !important}
  .combos .combo-price small{font-size:12px !important}
  .combos .combo-price strong{font-size:25px !important}
}


/* =========================================================
   AJUSTE VISUAL — mão no aviso + raios no card selecionado
   ========================================================= */
.combo-swipe-hint .combo-hand{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  flex:0 0 34px;
  font-size:30px;
  line-height:1;
  transform:rotate(-18deg);
  transform-origin:center;
  filter:drop-shadow(0 2px 1px rgba(48,17,103,.18));
}

/* Decoração rosa fica sempre presa ao card ativo, que ocupa o centro */
.combo-active-rays{
  position:absolute;
  z-index:9;
  left:calc(50% - 270px);
  top:7px;
  width:58px;
  height:58px;
  pointer-events:none;
}
.combo-active-rays i{
  position:absolute;
  display:block;
  width:9px;
  height:34px;
  border-radius:999px;
  background:#ff4fa0;
  box-shadow:0 2px 4px rgba(255,44,135,.12);
  transform-origin:50% 100%;
}
.combo-active-rays i:nth-child(1){left:8px;top:18px;transform:rotate(-52deg)}
.combo-active-rays i:nth-child(2){left:25px;top:7px;transform:rotate(-20deg)}
.combo-active-rays i:nth-child(3){left:43px;top:10px;transform:rotate(15deg)}

@media (max-width:700px){
  .combo-swipe-hint .combo-hand{
    width:28px;
    height:28px;
    flex-basis:28px;
    font-size:25px;
  }
  .combo-active-rays{
    left:calc(50% - 177px);
    top:10px;
    transform:scale(.72);
    transform-origin:center;
  }
}

@media (max-width:380px){
  .combo-active-rays{
    left:calc(50% - 165px);
    transform:scale(.66);
  }
}

/* =========================================================
   AJUSTE FINO MOBILE — referência visual dos Combos Especiais
   ========================================================= */
@media (max-width:700px){
  .combos{
    padding-top:30px !important;
    padding-bottom:26px !important;
    overflow:hidden !important;
  }
  .combos .container{
    width:100% !important;
    max-width:none !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }
  .combos .combo-title{
    padding:0 16px !important;
    margin-bottom:0 !important;
  }
  .combos .combo-title h2{
    font-size:34px !important;
    line-height:.98 !important;
    letter-spacing:-1px !important;
    margin-bottom:8px !important;
  }
  .combos .combo-title small{
    display:block !important;
    font-size:15px !important;
    line-height:1.15 !important;
    margin-top:2px !important;
  }
  .combo-swipe-hint{
    width:78% !important;
    max-width:340px !important;
    min-height:46px !important;
    margin:15px auto 25px !important;
    padding:7px 13px !important;
    gap:8px !important;
    border-width:1.5px !important;
    border-radius:999px !important;
    font-size:13px !important;
    line-height:1.05 !important;
    letter-spacing:-.15px !important;
  }
  .combo-swipe-hint .combo-hand{
    width:34px !important;
    height:34px !important;
    flex-basis:34px !important;
    font-size:31px !important;
    transform:rotate(-20deg) translateY(1px) !important;
  }
  .combo-swipe-hint b{
    font-size:30px !important;
    margin-left:2px !important;
  }

  .combo-carousel{
    height:560px !important;
    margin-top:0 !important;
  }
  .combo-viewport{
    overflow:visible !important;
    height:100% !important;
  }
  .combos .combo-card{
    top:12px !important;
    width:72% !important;
    height:505px !important;
    border-radius:24px !important;
    border-width:3px !important;
    box-shadow:0 10px 24px rgba(255,25,113,.15) !important;
  }
  .combos .combo-card.is-active{
    z-index:8 !important;
    box-shadow:
      0 0 0 5px rgba(255,96,176,.12),
      0 9px 25px rgba(255,25,113,.24),
      0 0 19px rgba(255,86,170,.22) !important;
  }
  .combos .combo-card.is-prev{
    transform:translateX(-130%) scale(.84) !important;
    opacity:1 !important;
    z-index:4 !important;
  }
  .combos .combo-card.is-next{
    transform:translateX(30%) scale(.84) !important;
    opacity:1 !important;
    z-index:4 !important;
  }
  .combos .combo-card > img{
    height:228px !important;
    min-height:228px !important;
    object-fit:cover !important;
    object-position:center !important;
  }
  .combos .combo-card.is-prev > img,
  .combos .combo-card.is-next > img{
    height:220px !important;
    min-height:220px !important;
  }

  .combo-badge{
    top:0 !important;
    left:0 !important;
    width:76px !important;
    height:86px !important;
    border-radius:20px 0 20px 0 !important;
    box-shadow:0 6px 12px rgba(0,0,0,.08) !important;
  }
  .combo-badge small{font-size:12px !important}
  .combo-badge strong{font-size:40px !important}

  .combos .combo-card.is-active.combo-01::after{
    top:11px !important;
    right:0 !important;
    padding:9px 12px !important;
    border-radius:14px 0 0 14px !important;
    font-size:10.5px !important;
    box-shadow:0 4px 10px rgba(255,174,0,.22) !important;
  }

  .combo-info{
    padding:14px 16px 15px !important;
  }
  .combos .combo-info p{
    min-height:72px !important;
    margin-bottom:10px !important;
    font-size:20px !important;
    line-height:1.08 !important;
    letter-spacing:-.3px !important;
  }
  .combos .combo-old{
    font-size:12px !important;
    margin-top:auto !important;
  }
  .combos .combo-old s{font-size:13px !important}
  .combos .combo-price{
    margin:5px 0 11px !important;
    align-items:flex-end !important;
  }
  .combos .combo-price small{font-size:13px !important}
  .combos .combo-price strong{
    font-size:29px !important;
    letter-spacing:-.5px !important;
  }
  .combos .combo-info>a{
    min-height:50px !important;
    font-size:18px !important;
    border:2px solid rgba(255,255,255,.72) !important;
    box-shadow:
      inset 0 -5px 0 rgba(100,0,40,.17),
      0 8px 16px color-mix(in srgb,var(--card-accent) 31%, transparent),
      0 0 18px color-mix(in srgb,var(--card-accent) 42%, transparent) !important;
  }

  .combo-active-rays{
    left:calc(50% - 193px) !important;
    top:6px !important;
    transform:scale(.78) !important;
  }
  .combo-active-rays i{
    background:#ff4fa0 !important;
  }

  .combo-arrow{
    bottom:-2px !important;
    width:43px !important;
    height:43px !important;
    font-size:31px !important;
  }
  .combo-arrow-prev{left:calc(50% - 100px) !important}
  .combo-arrow-next{right:calc(50% - 100px) !important}
  .combo-counter{margin-top:5px !important}
  .combo-counter strong,.combo-counter span{font-size:22px !important}
  .combo-dots{margin-top:11px !important;gap:7px !important}
  .combo-dots button{width:9px !important;height:9px !important;min-width:9px !important}
}

@media (max-width:380px){
  .combos .combo-title h2{font-size:31px !important}
  .combo-swipe-hint{width:82% !important;font-size:12px !important}
  .combo-carousel{height:540px !important}
  .combos .combo-card{width:73% !important;height:487px !important}
  .combos .combo-card > img{height:216px !important;min-height:216px !important}
  .combos .combo-card.is-prev > img,.combos .combo-card.is-next > img{height:208px !important;min-height:208px !important}
  .combos .combo-info p{font-size:18.5px !important;min-height:68px !important}
  .combos .combo-price strong{font-size:27px !important}
  .combo-active-rays{left:calc(50% - 181px) !important;transform:scale(.72) !important}
}

/* =========================================================
   COMBOS — RECONSTRUÇÃO VISUAL MOBILE (referência aprovada)
   ========================================================= */
@media (max-width:700px){
  .combos{padding-top:22px!important;overflow:hidden!important;background:#fff9fb!important}
  .combos .combo-title h2{font-size:31px!important;line-height:1!important;margin:0 0 7px!important}
  .combos .combo-title small{font-size:14px!important;margin:0!important}

  .combo-swipe-hint{
    width:76%!important;max-width:310px!important;min-height:43px!important;
    margin:16px auto 34px!important;padding:5px 12px!important;
    justify-content:center!important;gap:9px!important;font-size:11px!important;
  }
  .combo-swipe-hint .combo-hand{font-size:30px!important;width:32px!important;height:32px!important;flex:0 0 32px!important}
  .combo-swipe-hint b{font-size:25px!important}

  .combo-carousel{height:515px!important;margin:0!important;overflow:visible!important}
  .combo-viewport{height:100%!important;overflow:visible!important}

  .combos .combo-card{
    top:0!important;left:50%!important;width:72%!important;max-width:none!important;height:470px!important;
    border-radius:24px!important;border:3px solid #ff9ccc!important;background:#fff!important;
    overflow:hidden!important;transform-origin:center top!important;
  }
  .combos .combo-card.is-active{
    transform:translateX(-50%) scale(1)!important;opacity:1!important;z-index:10!important;
    box-shadow:0 0 0 5px rgba(255,78,159,.10),0 9px 25px rgba(255,24,112,.22),0 0 22px rgba(255,54,148,.20)!important;
  }
  .combos .combo-card.is-prev{
    transform:translateX(-139%) scale(.78)!important;opacity:1!important;z-index:3!important;
  }
  .combos .combo-card.is-next{
    transform:translateX(39%) scale(.78)!important;opacity:1!important;z-index:3!important;
  }

  .combos .combo-card > img{
    display:block!important;width:100%!important;height:205px!important;min-height:205px!important;
    object-fit:cover!important;object-position:center!important;margin:0!important;border-radius:0!important;
  }
  .combos .combo-card.is-prev > img,.combos .combo-card.is-next > img{height:205px!important;min-height:205px!important}

  .combo-badge{
    top:0!important;left:0!important;width:78px!important;height:88px!important;
    border-radius:0 0 20px 0!important;z-index:8!important;
  }
  .combo-badge small{font-size:11px!important;margin-bottom:0!important}
  .combo-badge strong{font-size:42px!important;line-height:.95!important}

  .combos .combo-card.is-active.combo-01::after{
    top:12px!important;right:0!important;font-size:10px!important;padding:8px 11px!important;
    border-radius:14px 0 0 14px!important;z-index:9!important;
  }

  .combo-info{padding:13px 15px 14px!important;display:flex!important;flex-direction:column!important;height:265px!important}
  .combos .combo-info p{
    font-size:18px!important;line-height:1.12!important;min-height:61px!important;margin:0 0 8px!important;
    font-weight:900!important;letter-spacing:-.25px!important;
  }
  .combos .combo-old{font-size:11px!important;margin-top:auto!important;line-height:1.1!important}
  .combos .combo-old s{font-size:12px!important}
  .combos .combo-price{margin:4px 0 8px!important;min-height:38px!important;display:flex!important;align-items:flex-end!important;justify-content:space-between!important}
  .combos .combo-price small{font-size:12px!important;font-weight:900!important}
  .combos .combo-price strong{font-size:28px!important;line-height:1!important;font-weight:950!important}
  .combos .combo-info>a{
    min-height:48px!important;height:48px!important;border-radius:999px!important;font-size:17px!important;margin-top:0!important;
  }

  .combo-active-rays{left:calc(50% - 166px)!important;top:-17px!important;transform:scale(.76)!important;z-index:12!important}

  .combo-arrow{bottom:-3px!important;width:42px!important;height:42px!important;font-size:29px!important;z-index:20!important}
  .combo-arrow-prev{left:calc(50% - 98px)!important}
  .combo-arrow-next{right:calc(50% - 98px)!important}
  .combo-counter{position:absolute!important;left:50%!important;bottom:3px!important;transform:translateX(-50%)!important;margin:0!important;z-index:20!important}
  .combo-counter strong,.combo-counter span{font-size:20px!important}
  .combo-dots{margin-top:8px!important;gap:7px!important}
}

@media (max-width:380px){
  .combo-carousel{height:500px!important}
  .combos .combo-card{width:72%!important;height:455px!important}
  .combos .combo-card > img,.combos .combo-card.is-prev > img,.combos .combo-card.is-next > img{height:195px!important;min-height:195px!important}
  .combo-info{height:260px!important;padding:12px 13px 13px!important}
  .combos .combo-info p{font-size:17px!important;min-height:58px!important}
  .combos .combo-price strong{font-size:26px!important}
  .combo-active-rays{left:calc(50% - 158px)!important}
}

/* =========================================================
   AJUSTE FINAL — MÃO + RAIOS DO CARD SELECIONADO
   ========================================================= */
@media (max-width:700px){
  /* Mão igual à referência: setas atrás + dedo por cima */
  .combo-swipe-hint .combo-hand{
    position:relative !important;
    display:inline-block !important;
    width:42px !important;
    height:36px !important;
    flex:0 0 42px !important;
    transform:none !important;
    filter:none !important;
    overflow:visible !important;
  }
  .combo-swipe-hint .combo-hand-arrows{
    position:absolute !important;
    left:1px !important;
    top:-3px !important;
    z-index:1 !important;
    font-family:Arial,sans-serif !important;
    font-size:27px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:#311368 !important;
    letter-spacing:-5px !important;
    transform:scaleX(1.05) !important;
  }
  .combo-swipe-hint .combo-hand-finger{
    position:absolute !important;
    left:13px !important;
    top:8px !important;
    z-index:2 !important;
    font-size:27px !important;
    line-height:1 !important;
    transform:rotate(-18deg) !important;
    transform-origin:center !important;
    filter:drop-shadow(0 2px 1px rgba(48,17,103,.20)) !important;
  }

/* =========================================================
   RAIOS ROSAS DO CARD SELECIONADO
   ========================================================= */

.combo-active-rays{
    left:calc(14% - 12px) !important;
    top:-5px !important;
    width:64px !important;
    height:64px !important;
    transform:scale(.92) !important;
    transform-origin:center !important;
    z-index:14 !important;
}

.combo-active-rays i{
    position:absolute;
    display:block;
    background:#ff4fa0 !important;
    border-radius:999px;
}

.combo-active-rays i:nth-child(1){
    left:7px !important;
    top:21px !important;
    width:13px !important;
    height:4px !important;
    transform:rotate(-58deg) !important;
}

.combo-active-rays i:nth-child(2){
    left:26px !important;
    top:3px !important;
    width:13px !important;
    height:4px !important;
    transform:rotate(-21deg) !important;
}

.combo-active-rays i:nth-child(3){
    left:48px !important;
    top:7px !important;
    width:13px !important;
    height:4px !important;
    transform:rotate(16deg) !important;
}


/* =========================================================
   TELAS MENORES — ATÉ 380px
   ========================================================= */

@media (max-width:380px){

    .combo-active-rays{
        left:calc(14% - 10px) !important;
        top:-4px !important;
        transform:scale(.88) !important;
    }

}


@media (max-width:380px){
  .combo-active-rays{
    left:calc(14% - 10px) !important;
    top:-17px !important;
    transform:scale(.88) !important;
  }
}


/* ==========================================================
   AJUDA PARA ESCOLHER O COMBO — AJUSTE FINAL
   Alteração isolada: somente .combo-help-card e seus filhos
   Mascote grande, sem cobrir o texto e podendo sair do amarelo
   ========================================================== */
.combo-help-card{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  align-items:center;
  column-gap:28px;
  min-height:190px;
  margin:14px auto 22px;
  padding:26px 34px 24px 205px;
  border-radius:34px;
  background:linear-gradient(105deg,#ffdc38 0%,#ffd21f 48%,#ffc91a 100%);
  box-shadow:0 10px 24px rgba(164,116,0,.16);
  overflow:visible;
}
.combo-help-card>img{
  position:absolute;
  left:4px;
  bottom:-14px;
  width:auto;
  height:224px;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:left bottom;
  filter:drop-shadow(0 7px 8px rgba(0,0,0,.16));
  z-index:2;
  pointer-events:none;
}
.combo-help-copy{
  min-width:0;
  position:relative;
  z-index:3;
}
.combo-help-copy h3{
  margin:0 0 2px;
  color:#3c0b81;
  font:1000 clamp(25px,2.55vw,37px)/1.02 "Baloo 2",sans-serif;
  letter-spacing:-.5px;
  white-space:nowrap;
}
.combo-help-script{
  margin:2px 0 10px!important;
  color:#ff1680!important;
  font:800 clamp(28px,2.7vw,39px)/1 "Comic Sans MS","Baloo 2",cursive!important;
  font-style:italic!important;
}
.combo-help-copy p:last-child{
  max-width:650px;
  margin:0;
  color:#171717;
  font:700 17px/1.28 "Baloo 2",sans-serif;
}
.combo-help-btn{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:94px;
  padding:15px 22px;
  border:2px solid rgba(255,255,255,.2);
  border-radius:25px;
  background:linear-gradient(180deg,#25d943 0%,#0fb92e 100%);
  color:#fff;
  text-decoration:none;
  box-shadow:0 9px 0 #078c21,0 14px 20px rgba(0,0,0,.18),inset 0 2px 0 rgba(255,255,255,.25);
  font:1000 22px/1.08 "Baloo 2",sans-serif;
  text-align:center;
  transform:translateY(-2px);
}
.combo-help-btn b{
  display:grid;
  place-items:center;
  width:52px;
  height:52px;
  flex:0 0 52px;
  border:4px solid #fff;
  border-radius:50%;
  font-size:0;
}
.combo-help-btn b:before{
  content:"☎";
  font:900 29px/1 sans-serif;
  transform:rotate(-18deg);
}
.combo-help-btn span{white-space:nowrap}
.combo-help-btn:hover{transform:translateY(-4px)}

/* Mobile: mantém o banner horizontal e reserva uma área real para o mascote. */
@media(max-width:700px){
  .combo-help-card{
    display:grid;
    grid-template-columns:minmax(0,1fr) 100px;
    align-items:center;
    gap:6px;
    min-height:142px;
    margin:20px 2px 24px;
    padding:13px 9px 12px 116px;
    border-radius:22px;
    overflow:visible;
  }
  .combo-help-card>img{
    left:-8px;
    top:-22px;
    bottom:auto;
    width:auto;
    height:166px;
    max-width:none;
    max-height:none;
    transform:none;
    transform-origin:left bottom;
    z-index:2;
  }
  .combo-help-copy{
    z-index:3;
  }
  .combo-help-copy h3{
    max-width:150px;
    margin:0;
    font-size:13px;
    line-height:.98;
    letter-spacing:-.2px;
    white-space:normal;
  }
  .combo-help-script{
    margin:4px 0 5px!important;
    font-size:17px!important;
    line-height:1!important;
    white-space:nowrap;
  }
  .combo-help-copy p:last-child{
    max-width:154px;
    font-size:8.3px;
    line-height:1.14;
  }
  .combo-help-btn{
    width:100px;
    min-height:64px;
    padding:7px 6px;
    gap:4px;
    border-radius:17px;
    font-size:9.5px;
    line-height:1.05;
    box-shadow:0 5px 0 #078c21,0 8px 12px rgba(0,0,0,.15),inset 0 1px 0 rgba(255,255,255,.25);
  }
  .combo-help-btn b{
    width:27px;
    height:27px;
    flex:0 0 27px;
    border-width:2px;
  }
  .combo-help-btn b:before{font-size:14px}
  .combo-help-btn span{white-space:normal}
}

@media(max-width:380px){
  .combo-help-card{
    grid-template-columns:minmax(0,1fr) 94px;
    gap:5px;
    min-height:140px;
    padding:12px 8px 11px 108px;
    margin-top:19px;
  }
  .combo-help-card>img{
    left:-9px;
    top:-20px;
    height:158px;
  }
  .combo-help-copy h3{
    max-width:142px;
    font-size:12.3px;
  }
  .combo-help-script{font-size:15.5px!important}
  .combo-help-copy p:last-child{
    max-width:145px;
    font-size:7.8px;
  }
  .combo-help-btn{
    width:94px;
    min-height:62px;
    padding:7px 5px;
    font-size:8.7px;
  }
  .combo-help-btn b{
    width:25px;
    height:25px;
    flex-basis:25px;
  }
  .combo-help-btn b:before{font-size:12px}
}

@media(max-width:340px){
  .combo-help-card{
    grid-template-columns:minmax(0,1fr) 86px;
    padding-left:99px;
    gap:4px;
  }
  .combo-help-card>img{
    left:-10px;
    top:-17px;
    height:150px;
  }
  .combo-help-copy h3{font-size:11.2px}
  .combo-help-script{font-size:14px!important}
  .combo-help-copy p:last-child{font-size:7.1px}
  .combo-help-btn{width:86px;font-size:8px}
}
@media(max-width:700px){
  .promo-balloon-right{
    right:1% !important;
    top:40% !important;
    width:42px !important;
    height:66px !important;
  }
}
@media (max-width:700px){

    .hero-product{
        translate: -28px 0 !important;
    }

}
/* ========================================
   AJUSTE MOBILE — BAIXAR CONTEÚDO PROMO 20%
   ======================================== */
@media (max-width: 700px) {
    .promo-week-copy {
        transform: translateY(12px) !important;
    }
}
/* ========================================
   BLOQUEIO DEFINITIVO DE FAIXA LATERAL
   ======================================== */

html,
body {
    width: 100%;
    max-width: 100%;
    margin: 0;
    overflow-x: hidden !important;
}

@media (max-width: 700px) {

    .hero {
        width: 100%;
        max-width: 100%;
        overflow: hidden !important;
    }

    .hero-grid {
        max-width: 100%;
    }
}
/* Remove contador 1 / 11 dos combos */
.combo-counter {
    display: none !important;
}
/* ========================================
   WHATSAPP FLUTUANTE ROSA
   ======================================== */

.float-wa {
    display: flex !important;
    align-items: center;
    justify-content: center;

    position: fixed;
    right: 14px;
    bottom: 18px;

    width: 58px;
    height: 58px;

    border-radius: 50%;
    background: #ff2f86;

    z-index: 9999;
    text-decoration: none;

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

.float-wa svg {
    width: 30px;
    height: 30px;
    fill: #ffffff !important;
    color: #ffffff !important;
    display: block;
}
/* ========================================
   REDES SOCIAIS DO RODAPÉ
   ======================================== */

.social {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-top: 12px;
}

.social a {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    text-decoration: none;
}

.social a svg {
    width: 18px;
    height: 18px;
    fill: #fff;
    flex-shrink: 0;
}

.social a:hover {
    opacity: .8;
}
/* ========================================
   LOGO DO CABEÇALHO — AJUSTE FINAL MOBILE
   ======================================== */

@media (max-width: 700px) {

    header .logo {
        width: 130px !important;
        height: auto !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    header .logo img {
        display: block !important;
        width: 110px !important;
        max-width: 110px !important;
        height: auto !important;
        max-height: none !important;
        object-fit: contain !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}




/* ============================================================
   COMBO AJUDA — CENTRALIZAÇÃO FINAL SOMENTE DESKTOP
   Não altera mobile.
   ============================================================ */
@media screen and (min-width: 1051px) {

  .combo-help-card{
    box-sizing:border-box !important;
    width:min(1180px, calc(100% - 80px)) !important;
    max-width:1180px !important;
    min-height:300px !important;
    margin:28px auto 42px !important;
    padding:34px 52px 34px 245px !important;

    display:grid !important;
    grid-template-columns:320px minmax(480px, 1fr) !important;
    align-items:center !important;
    justify-content:center !important;
    column-gap:55px !important;

    border-radius:30px !important;
    overflow:visible !important;
  }

  .combo-help-card > img{
    left:38px !important;
    bottom:-4px !important;
    width:auto !important;
    height:245px !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:contain !important;
  }

  .combo-help-copy{
    width:320px !important;
    max-width:320px !important;
    margin:0 !important;
    align-self:center !important;
    justify-self:start !important;
  }

  .combo-help-copy h3{
    margin:0 0 6px !important;
    max-width:300px !important;
    white-space:normal !important;
    font-size:34px !important;
    line-height:.96 !important;
    letter-spacing:-.4px !important;
  }

  .combo-help-script{
    margin:8px 0 9px !important;
    font-size:31px !important;
    line-height:.98 !important;
  }

  .combo-help-copy p:last-child{
    width:300px !important;
    max-width:300px !important;
    margin:0 !important;
    font-size:15px !important;
    line-height:1.30 !important;
  }

  .combo-help-btn{
    width:100% !important;
    max-width:600px !important;
    min-height:86px !important;
    margin:0 !important;
    justify-self:center !important;
    align-self:center !important;
    padding:15px 28px !important;
    font-size:20px !important;
  }
}
/* ============================================================
   BANNER "NÃO SABE QUAL COMBO ESCOLHER?"
   AJUSTE FINAL DESKTOP — MAIS ESPAÇO / MENOS ESPREMIDO
   ============================================================ */

@media screen and (min-width: 1051px) {

    .combo-help-card {
        width: min(1180px, calc(100% - 70px)) !important;
        max-width: 1180px !important;
        min-height: 320px !important;

        margin: 28px auto 42px !important;
        padding: 38px 55px 38px 265px !important;

        display: grid !important;
        grid-template-columns: 360px 1fr !important;
        align-items: center !important;
        column-gap: 60px !important;

        border-radius: 30px !important;
        overflow: visible !important;
    }

    .combo-help-card > img {
        left: 35px !important;
        bottom: -5px !important;
        height: 260px !important;
        width: auto !important;
        max-width: none !important;
        max-height: none !important;
    }

    .combo-help-copy {
        width: 360px !important;
        max-width: 360px !important;
        margin: 0 !important;
    }

    .combo-help-copy h3 {
        white-space: normal !important;
        max-width: 350px !important;
        margin: 0 0 10px !important;

        font-size: 38px !important;
        line-height: 1 !important;
        letter-spacing: -0.5px !important;
    }

    .combo-help-script {
        margin: 7px 0 12px !important;

        font-size: 32px !important;
        line-height: 1.05 !important;
    }

    .combo-help-copy p:last-child {
        width: 340px !important;
        max-width: 340px !important;

        margin: 0 !important;

        font-size: 16px !important;
        line-height: 1.42 !important;
    }

    .combo-help-btn {
        width: 100% !important;
        max-width: 570px !important;
        min-height: 92px !important;

        justify-self: center !important;
        margin: 0 !important;

        padding: 16px 30px !important;

        font-size: 22px !important;
        line-height: 1.08 !important;
    }
}