.elementor-7 .elementor-element.elementor-element-429f86d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7 .elementor-element.elementor-element-f7365d5 > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}.elementor-7 .elementor-element.elementor-element-f7365d5 .jet-listing-grid__slider .jet-slick-dots li{background:var( --e-global-color-accent );}.elementor-7 .elementor-element.elementor-element-f7365d5 .jet-listing-grid__slider .jet-slick-dots li.slick-active{background:var( --e-global-color-primary );}.elementor-7 .elementor-element.elementor-element-8dec92b{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-7 .elementor-element.elementor-element-684fbe8{--display:flex;}.elementor-7 .elementor-element.elementor-element-1d3de76{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-7 .elementor-element.elementor-element-ad2087f .elementor-heading-title{color:var( --e-global-color-accent );}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );}.elementor-7 .elementor-element.elementor-element-6d64b43 .elementor-button{background-color:var( --e-global-color-primary );border-style:none;padding:10px 10px 10px 10px;}.elementor-7 .elementor-element.elementor-element-6d64b43 .elementor-button:hover, .elementor-7 .elementor-element.elementor-element-6d64b43 .elementor-button:focus{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-6d64b43.elementor-element{--order:99999 /* order end hack */;}.elementor-7 .elementor-element.elementor-element-fbf3dec{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-7 .elementor-element.elementor-element-373079f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7 .elementor-element.elementor-element-683f506 > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}.elementor-7 .elementor-element.elementor-element-8968fdd{--display:flex;}.elementor-7 .elementor-element.elementor-element-b152082{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-7 .elementor-element.elementor-element-60e2a55 > .jet-listing-grid > .jet-listing-grid__items{--columns:2;}.elementor-7 .elementor-element.elementor-element-60e2a55{width:100%;max-width:100%;}.elementor-7 .elementor-element.elementor-element-4644a38{--display:flex;}.elementor-7 .elementor-element.elementor-element-5dc00ea{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-7 .elementor-element.elementor-element-fdf24f0{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:2px;}.elementor-7 .elementor-element.elementor-element-fdf24f0 .elementor-divider-separator{width:100%;}.elementor-7 .elementor-element.elementor-element-fdf24f0 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-7 .elementor-element.elementor-element-567af99{font-family:"Nunito Sans", Sans-serif;font-size:16px;}.elementor-7 .elementor-element.elementor-element-1e21942{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-1e21942:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-1e21942 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-79493fb .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-0fd094a{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-66654a2{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-66654a2:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-66654a2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-b90e7da .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-f424d1b{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-354757e{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-354757e:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-354757e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-68a6adc .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-af6d2d0{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-4dbbe9f{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-4dbbe9f:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-4dbbe9f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-3ccb50c .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-f85e83e{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-e81d2fa{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-e81d2fa:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-e81d2fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-e41427f .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-42e5718{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-2ea7df6{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-2ea7df6:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-2ea7df6 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-18e05b1 .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-f8778a0{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-bfc568b{--display:flex;--background-transition:0.3s;--border-radius:12px 12px 12px 12px;--padding-top:18px;--padding-bottom:18px;--padding-left:18px;--padding-right:18px;}.elementor-7 .elementor-element.elementor-element-bfc568b:not(.elementor-motion-effects-element-type-background), .elementor-7 .elementor-element.elementor-element-bfc568b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-53bd542 );}.elementor-7 .elementor-element.elementor-element-7c866d9 .elementor-heading-title{color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-671b9ca{font-family:"Nunito Sans", Sans-serif;font-size:16px;font-weight:400;color:var( --e-global-color-a95584f );}.elementor-7 .elementor-element.elementor-element-886b566{--e-n-carousel-swiper-slides-gap:10px;--e-n-carousel-slide-height:auto;--e-n-carousel-slide-container-height:100%;--e-n-carousel-arrow-prev-left-align:0%;--e-n-carousel-arrow-prev-translate-x:0px;--e-n-carousel-arrow-prev-left-position:-25px;--e-n-carousel-arrow-prev-top-align:50%;--e-n-carousel-arrow-prev-translate-y:-50%;--e-n-carousel-arrow-prev-top-position:0px;--e-n-carousel-arrow-next-right-align:0%;--e-n-carousel-arrow-next-translate-x:0%;--e-n-carousel-arrow-next-right-position:-25px;--e-n-carousel-arrow-next-top-align:50%;--e-n-carousel-arrow-next-translate-y:-50%;--e-n-carousel-arrow-next-top-position:0px;--e-n-carousel-arrow-normal-color:var( --e-global-color-primary );--e-n-carousel-arrow-hover-color:var( --e-global-color-primary );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-7 .elementor-element.elementor-element-886b566{--e-n-carousel-swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-7 .elementor-element.elementor-element-f7365d5 .jet-listing-grid__slider-icon{width:36px;height:36px;line-height:36px;margin-top:calc( -36px/2 );font-size:18px;}.elementor-7 .elementor-element.elementor-element-f7365d5 .jet-listing-grid__slider-icon svg{height:18px;}.elementor-7 .elementor-element.elementor-element-684fbe8{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7 .elementor-element.elementor-element-1d3de76{--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 12px;--row-gap:0px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:12px;--margin-right:12px;}.elementor-7 .elementor-element.elementor-element-ad2087f{text-align:start;}.elementor-7 .elementor-element.elementor-element-ad2087f .elementor-heading-title{font-size:18px;}.elementor-7 .elementor-element.elementor-element-6d64b43.elementor-element{--align-self:flex-end;}.elementor-7 .elementor-element.elementor-element-6d64b43 .elementor-button{font-size:14px;border-radius:4px 4px 4px 4px;padding:6px 6px 6px 6px;}.elementor-7 .elementor-element.elementor-element-fbf3dec{--justify-content:flex-start;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 12px;--row-gap:0px;--column-gap:12px;--margin-top:0px;--margin-bottom:0px;--margin-left:12px;--margin-right:12px;}.elementor-7 .elementor-element.elementor-element-b152082{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-7 .elementor-element.elementor-element-60e2a55 > .jet-listing-grid > .jet-listing-grid__items{--columns:1;}.elementor-7 .elementor-element.elementor-element-d420044 .elementor-heading-title{font-size:16px;}.elementor-7 .elementor-element.elementor-element-567af99{font-size:14px;}.elementor-7 .elementor-element.elementor-element-886b566{--e-n-carousel-swiper-slides-to-display:1;}}@media(min-width:768px){.elementor-7 .elementor-element.elementor-element-684fbe8{--content-width:1140px;}.elementor-7 .elementor-element.elementor-element-1d3de76{--content-width:1140px;}.elementor-7 .elementor-element.elementor-element-fbf3dec{--content-width:1140px;}.elementor-7 .elementor-element.elementor-element-8968fdd{--content-width:1140px;}.elementor-7 .elementor-element.elementor-element-b152082{--content-width:1140px;}.elementor-7 .elementor-element.elementor-element-5dc00ea{--content-width:1140px;}}/* Start custom CSS for html, class: .elementor-element-3c50bf3 */.container {
    max-width: 1140px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

/* Header */
.carnaval-header {
    text-align: center;
    margin-bottom: 10px;
}

.carnaval-title {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 3rem;
    font-weight: 800;
    color: #fff;
    margin-bottom: 10px;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
    position: relative;
}

.carnaval-title::after {
    content: '';
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 4px;
    background: linear-gradient(90deg, #ff1493, #ffa500, #ff1493);
    border-radius: 2px;
}

.carnaval-subtitle {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1.2rem;
    margin-top: 20px;
    font-weight: 400;
}

/* Grid Principal */
.carnaval-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}

/* Cards Individuais */
.carnaval-item {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.9) 100%);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    display: flex;
    flex-direction: column;
    backdrop-filter: blur(10px);
}

.carnaval-item:hover {
    transform: translateY(-15px) scale(1.02);
    box-shadow: 0 25px 50px rgba(0, 0, 0, 0.3);
}

/* Badge para Carnaval Oficial */
.carnaval-badge {
    position: absolute;
    top: 15px;
    right: 15px;
    background: linear-gradient(135deg, #ff1493, #ff69b4);
    color: white;
    padding: 5px 15px;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    z-index: 10;
    animation: pulse 2s infinite;
}

/* Icones */
.carnaval-icon {
    padding: 30px;
    text-align: center;
    background: linear-gradient(135deg, rgba(255, 20, 147, 0.1) 0%, rgba(255, 165, 0, 0.1) 100%);
}

.icon-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #ff1493, #ffa500);
    border-radius: 50%;
    position: relative;
    animation: bounce 3s ease-in-out infinite;
}

.icon-emoji {
    font-size: 2.5rem;
    filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
}

/* Cores diferentes para cada período */
.pre-carnaval .icon-wrapper {
    background: linear-gradient(135deg, #ff69b4, #ffb347);
}

.carnaval-oficial .icon-wrapper {
    background: linear-gradient(135deg, #ff1493, #ff69b4);
}

.pos-carnaval .icon-wrapper {
    background: linear-gradient(135deg, #ffa500, #ff69b4);
}

/* Conteúdo */
.carnaval-content {
    padding: 30px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.carnaval-period {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1.8rem;
    font-weight: 800;
    color: #2c0e3e;
    margin-bottom: 10px;
    text-align: center;
}

.carnaval-dates {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1.1rem;
    font-weight: 600;
    color: #ff1493;
    text-align: center;
    margin-bottom: 20px;
    padding: 10px;
    background: rgba(255, 20, 147, 0.1);
    border-radius: 10px;
}

.carnaval-description {
    margin-bottom: 20px;
}

.carnaval-description p {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    text-align: center;
}

/* Features List */
.carnaval-features {
    list-style: none;
    padding: 0;
    margin: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.carnaval-features li {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 0.9rem;
    color: #555;
    padding: 8px 15px;
    background: rgba(255, 20, 147, 0.05);
    border-radius: 8px;
    border-left: 3px solid #ff1493;
    transition: all 0.3s ease;
}

.carnaval-features li:hover {
    background: rgba(255, 20, 147, 0.1);
    transform: translateX(5px);
}

/* Stats */
.carnaval-stats {
    display: flex;
    justify-content: space-around;
    margin: 25px 0;
    padding: 20px;
    background: linear-gradient(135deg, rgba(255, 20, 147, 0.05) 0%, rgba(255, 165, 0, 0.05) 100%);
    border-radius: 15px;
}

.stat-item {
    text-align: center;
}

.stat-number {
    display: block;
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1.8rem;
    font-weight: 800;
    color: #ff1493;
    margin-bottom: 5px;
}

.stat-label {
    font-family: 'Nunito Sans', sans-serif;
    font-size: 0.9rem;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Botões */
.carnaval-btn {
    background: linear-gradient(135deg, #ff1493, #ffa500);
    color: white;
    border: none;
    padding: 15px 30px;
    border-radius: 25px;
    font-family: 'Nunito Sans', sans-serif;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-top: auto;
}

.carnaval-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
    transition: left 0.5s ease;
}

.carnaval-btn:hover::before {
    left: 100%;
}

.carnaval-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(255, 20, 147, 0.4);
}

.carnaval-btn:active {
    transform: translateY(0);
}

/* Animações */
@keyframes float {
    0%, 100% {
        transform: translateY(0px) rotate(0deg);
    }
    50% {
        transform: translateY(-20px) rotate(5deg);
    }
}

@keyframes bounce {
    0%, 20%, 50%, 80%, 100% {
        transform: translateY(0);
    }
    40% {
        transform: translateY(-10px);
    }
    60% {
        transform: translateY(-5px);
    }
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 20, 147, 0.7);
    }
    70% {
        box-shadow: 0 0 0 10px rgba(255, 20, 147, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 20, 147, 0);
    }
}

/* Tablet (768px - 1024px) */
@media (max-width: 1024px) and (min-width: 769px) {
    .carnaval-2027-section {
        padding: 60px 20px;
    }
    
    .carnaval-title {
        font-size: 2.5rem;
    }
    
    .carnaval-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 25px;
    }
    
    .carnaval-content {
        padding: 25px;
    }
    
    .carnaval-period {
        font-size: 1.5rem;
    }
    
    .icon-wrapper {
        width: 70px;
        height: 70px;
    }
    
    .icon-emoji {
        font-size: 2rem;
    }
}

/* Mobile (até 768px) */
@media (max-width: 768px) {
    .carnaval-2027-section {
        padding: 40px 15px;
    }
    
    .carnaval-title {
        font-size: 2rem;
    }
    
    .carnaval-subtitle {
        font-size: 1rem;
    }
    
    .carnaval-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .carnaval-item {
        max-width: 400px;
        margin: 0 auto;
    }
    
    .carnaval-content {
        padding: 20px;
    }
    
    .carnaval-period {
        font-size: 1.6rem;
    }
    
    .carnaval-dates {
        font-size: 1rem;
    }
    
    .carnaval-stats {
        padding: 15px;
    }
    
    .stat-number {
        font-size: 1.5rem;
    }
    
    .carnaval-btn {
        padding: 15px 25px;
        font-size: 0.9rem;
        width: 100%;
    }
    
    .carnaval-2027-section::before,
    .carnaval-2027-section::after {
        display: none;
    }
}

/* Small Mobile (até 480px) */
@media (max-width: 480px) {
    .carnaval-2027-section {
        padding: 30px 10px;
    }
    
    .carnaval-title {
        font-size: 1.8rem;
    }
    
    .carnaval-item {
        border-radius: 15px;
    }
    
    .carnaval-content {
        padding: 15px;
    }
    
    .carnaval-period {
        font-size: 1.4rem;
    }
    
    .carnaval-icon {
        padding: 20px;
    }
    
    .icon-wrapper {
        width: 60px;
        height: 60px;
    }
    
    .icon-emoji {
        font-size: 1.8rem;
    }
    
    .carnaval-features {
        gap: 8px;
    }
    
    .carnaval-features li {
        font-size: 0.8rem;
        padding: 6px 12px;
    }
}

/* Large Desktop (1200px+) */
@media (min-width: 1200px) {
    .carnaval-grid {
        gap: 40px;
    }
    
    .carnaval-item {
        border-radius: 25px;
    }
    
    .carnaval-content {
        padding: 35px;
    }
    
    .carnaval-period {
        font-size: 2rem;
    }
    
    .icon-wrapper {
        width: 90px;
        height: 90px;
    }
    
    .icon-emoji {
        font-size: 3rem;
    }
    
    .carnaval-btn {
        padding: 18px 35px;
        font-size: 1.1rem;
    }
}

/* Dark Mode Support */
@media (prefers-color-scheme: dark) {
    .carnaval-item {
        background: linear-gradient(135deg, rgba(20, 20, 40, 0.95) 0%, rgba(30, 30, 50, 0.9) 100%);
    }
    
    .carnaval-period {
        color: #ff69b4;
    }
    
    .carnaval-description p {
        color: #ccc;
    }
    
    .carnaval-features li {
        color: #aaa;
        background: rgba(255, 20, 147, 0.1);
    }
    
    .stat-label {
        color: #aaa;
    }
}

/* Accessibility */
.carnaval-btn:focus {
    outline: 3px solid #ff1493;
    outline-offset: 2px;
}

.carnaval-item:focus-within {
    box-shadow: 0 25px 50px rgba(255, 20, 147, 0.4);
}

/* Performance Optimizations */
.carnaval-item {
    will-change: transform;
    contain: layout style paint;
}

.icon-wrapper {
    will-change: transform;
    backface-visibility: hidden;
}

/* Print Styles */
@media print {
    .carnaval-2027-section {
        background: white;
        padding: 20px;
    }
    
    .carnaval-item {
        background: white;
        box-shadow: none;
        border: 1px solid #ddd;
        break-inside: avoid;
    }
    
    .carnaval-btn {
        display: none;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-5dc00ea */.elementor-7 .elementor-element.elementor-element-5dc00ea {
    background-color: #FFFFFF;
    /* Manter o padding desktop aqui */
    padding: 30px; 
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    background-image: none !important;
    color: #333;
    max-width: 1140px;
    margin: 30px auto; 
}

/* --- Margem e Padding Específicos para Mobile (< 768px) --- */
@media (max-width: 768px) {
    .elementor-7 .elementor-element.elementor-element-5dc00ea {
        /*
          1. MARGIN: Adiciona um espaço de 15px FORA do container (entre o container e a borda da tela).
          Isso evita que a Borda/Sombra encostem na lateral.
        */
        margin: 15px 15px !important; 
        
        /* 2. PADDING: Adiciona um espaço de 15px DENTRO do container.
          Isso evita que o CONTEÚDO (texto, menu) encoste nas laterais do container.
        */
        padding: 20px 15px !important; 
        
        /* 3. Largura total: Importante para evitar que o container extrapole a tela quando a margin é aplicada.
          (100% da tela - 30px da margin lateral)
        */
        width: auto !important;
    }
}/* End custom CSS */