body {font-family: 'Inter', sans-serif;background-color: #000000;color: #ffffff;overflow-x: hidden;}
/* Scroll Snap para Mobile */@media (max-width: 768px) {html {    scroll-snap-type: y mandatory;    scroll-behavior: smooth;}
section {    scroll-snap-align: start;    scroll-snap-stop: always;}
/* Section 1 Hero - Flex center para mobile */#section-1 {    display: flex;    justify-content: center;    align-items: center;    flex-direction: column;    min-height: calc(100dvh - 64px);}}
/* Custom Scrollbar - Premium Gold Design *//* Firefox */* {scrollbar-width: thin;scrollbar-color: #F5A962 #0A0A0A;}
/* Webkit (Chrome, Safari, Edge) */::-webkit-scrollbar {width: 12px;height: 12px;}
::-webkit-scrollbar-track {background: #0A0A0A;border-radius: 10px;box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);}
::-webkit-scrollbar-thumb {background: linear-gradient(180deg, #FFD700 0%, #F5A962 50%, #FFB347 100%);border-radius: 10px;border: 2px solid #0A0A0A;box-shadow: 0 0 10px rgba(245, 169, 98, 0.5),            inset 0 1px 0 rgba(255, 255, 255, 0.3);}
::-webkit-scrollbar-thumb:hover {background: linear-gradient(180deg, #FFE55C 0%, #FFB347 50%, #F5A962 100%);box-shadow: 0 0 20px rgba(245, 169, 98, 0.8),            0 0 40px rgba(255, 215, 0, 0.4),            inset 0 1px 0 rgba(255, 255, 255, 0.5);}
::-webkit-scrollbar-thumb:active {background: linear-gradient(180deg, #F5A962 0%, #FFB347 50%, #FFD700 100%);box-shadow: 0 0 30px rgba(245, 169, 98, 1),            inset 0 2px 5px rgba(0, 0, 0, 0.3);}
::-webkit-scrollbar-corner {background: #0A0A0A;}
.gradient-text {background: linear-gradient(90deg, #F5A962 0%, #FFD700 100%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;text-fill-color: transparent;color: transparent;}
.gold-text {color: #f9a760;}
.highlight-text {font-size: 1.15em;font-weight: 500;}
.btn-primary {background: linear-gradient(90deg, #F5A962 0%, #FFB347 100%);transition: all 0.3s ease;}
.btn-primary:hover {transform: translateY(-2px);box-shadow: 0 10px 30px rgba(245, 169, 98, 0.3);}
.btn-green {background: linear-gradient(135deg, #10B981 0%, #059669 100%);}
.section-title {font-size: 2.5rem;font-weight: 700;line-height: 1.2;}
@media (max-width: 768px) {.section-title {    font-size: 1.8rem;}}
/* ============================================   SCROLL ANIMATIONS - PREMIUM GOLD THEME   ============================================ */
/* Base animation classes */.fade-in,.slide-up,.slide-left,.slide-right,.scale-in,.reveal-text {opacity: 0;transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
/* Fade In - Suave aparecimento */.fade-in {transform: translateY(40px);}
.fade-in.visible {opacity: 1;transform: translateY(0);}
/* Slide Up - Desliza de baixo para cima */.slide-up {transform: translateY(60px);}
.slide-up.visible {opacity: 1;transform: translateY(0);}
/* Slide Left - Desliza da direita para esquerda */.slide-left {transform: translateX(80px);}
.slide-left.visible {opacity: 1;transform: translateX(0);}
/* Slide Right - Desliza da esquerda para direita */.slide-right {transform: translateX(-80px);}
.slide-right.visible {opacity: 1;transform: translateX(0);}
/* Scale In - Efeito de zoom elegante */.scale-in {transform: scale(0.85);}
.scale-in.visible {opacity: 1;transform: scale(1);}
/* Reveal Text - Animação de revelação de texto com gold glow */.reveal-text {transform: translateY(30px);filter: blur(8px);}
.reveal-text.visible {opacity: 1;transform: translateY(0);filter: blur(0);}
/* Stagger animations - Para listas e múltiplos elementos */.stagger-item {opacity: 0;transform: translateY(30px);transition: all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.stagger-item.visible {opacity: 1;transform: translateY(0);}
/* Delays para efeito cascata */.stagger-item:nth-child(1) { transition-delay: 0.1s; }.stagger-item:nth-child(2) { transition-delay: 0.2s; }.stagger-item:nth-child(3) { transition-delay: 0.3s; }.stagger-item:nth-child(4) { transition-delay: 0.4s; }.stagger-item:nth-child(5) { transition-delay: 0.5s; }.stagger-item:nth-child(6) { transition-delay: 0.6s; }.stagger-item:nth-child(7) { transition-delay: 0.7s; }.stagger-item:nth-child(8) { transition-delay: 0.8s; }.stagger-item:nth-child(9) { transition-delay: 0.9s; }
/* Gold Glow - Efeito de brilho dourado ao aparecer */.gold-glow {opacity: 0;transform: translateY(40px);transition: all 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.gold-glow.visible {opacity: 1;transform: translateY(0);animation: goldGlowPulse 3s ease-in-out infinite;}
@keyframes goldGlowPulse {0%, 100% {    text-shadow: 0 0 20px rgba(245, 169, 98, 0.3),                0 0 40px rgba(245, 169, 98, 0.2);}50% {    text-shadow: 0 0 30px rgba(245, 169, 98, 0.5),                0 0 60px rgba(245, 169, 98, 0.3),                0 0 80px rgba(255, 215, 0, 0.2);}}
/* Image Reveal - Revelação elegante de imagens */.image-reveal {opacity: 0;transform: scale(0.9) translateY(30px);filter: blur(5px);transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.image-reveal.visible {opacity: 1;transform: scale(1) translateY(0);filter: blur(0);}
/* Parallax Effect - Elementos com movimento parallax */.parallax {transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);will-change: transform;}
/* Floating Animation - Flutuação sutil para CTAs */.float-on-scroll {opacity: 0;transform: translateY(40px);transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.float-on-scroll.visible {opacity: 1;transform: translateY(0);animation: floatingSubtle 4s ease-in-out infinite;}
@keyframes floatingSubtle {0%, 100% {    transform: translateY(0);}50% {    transform: translateY(-10px);}}
/* Draw Line - Linha que se desenha com gold */.draw-line {position: relative;overflow: hidden;}

.draw-line.visible::after {transform: scaleX(1);}
/* Card Flip - Efeito de flip profissional para cards */.flip-card {opacity: 0;transform: perspective(1000px) rotateX(-15deg);transition: all 0.9s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.flip-card.visible {opacity: 1;transform: perspective(1000px) rotateX(0deg);}
/* Shine Effect - Brilho que percorre o elemento */.shine-effect {position: relative;overflow: hidden;}
.shine-effect::before {content: '';position: absolute;top: -50%;left: -100%;width: 60%;height: 200%;background: linear-gradient(    90deg,    transparent 0%,    rgba(255, 255, 255, 0) 20%,    rgba(245, 169, 98, 0.3) 40%,    rgba(255, 215, 0, 0.5) 50%,    rgba(245, 169, 98, 0.3) 60%,    rgba(255, 255, 255, 0) 80%,    transparent 100%);transform: skewX(-25deg);transition: left 0s;}
.shine-effect.visible::before {animation: shineMove 2s ease-in-out 0.5s;}
@keyframes shineMove {0% {    left: -100%;}100% {    left: 150%;}}
/* Border Draw - Borda que se desenha ao redor */.border-draw {position: relative;opacity: 0;transition: opacity 0.5s ease;}
.border-draw::before,.border-draw::after {content: '';position: absolute;width: 0;height: 0;border: 2px solid transparent;transition: all 1s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.border-draw::before {top: 0;left: 0;border-top-color: #F5A962;border-left-color: #F5A962;}
.border-draw::after {bottom: 0;right: 0;border-bottom-color: #FFD700;border-right-color: #FFD700;}
.border-draw.visible {opacity: 1;}
.border-draw.visible::before,.border-draw.visible::after {width: 100%;height: 100%;}
/* Counter Animation - Animação de contadores */.counter {opacity: 0;transform: translateY(20px);transition: all 0.6s ease;}
.counter.visible {opacity: 1;transform: translateY(0);}
/* Responsive adjustments */@media (max-width: 768px) {.fade-in,.slide-up,.slide-left,.slide-right,.scale-in {    transition-duration: 0.6s;}
.slide-left,.slide-right {    transform: translateX(0);    transform: translateY(40px);}
.slide-left.visible,.slide-right.visible {    transform: translateX(0);    transform: translateY(0);}}
/* Reduce motion for accessibility */@media (prefers-reduced-motion: reduce) {.fade-in,.slide-up,.slide-left,.slide-right,.scale-in,.reveal-text,.stagger-item,.gold-glow,.image-reveal,.float-on-scroll,.flip-card,.counter {    transition-duration: 0.01s !important;    animation: none !important;}}
/* ============================================   ENHANCED HOVER EFFECTS & INTERACTIONS   ============================================ */
/* Premium button hover with gold gradient animation */.btn-primary {position: relative;overflow: hidden;z-index: 1;}
.btn-primary::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;z-index: -1;}
.btn-primary:hover::before {left: 100%;}
/* Gold gradient background animation for CTAs */.btn-primary {background-size: 200% 100%;animation: gradientShift 3s ease infinite;}
@keyframes gradientShift {0%, 100% {    background-position: 0% 50%;}50% {    background-position: 100% 50%;}}
/* Enhanced image hover effect */img:not(.no-hover) {transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
img:not(.no-hover):hover {transform: scale(1.02);filter: brightness(1.1);}
/* Card hover elevation */.video-card,.flip-card,[class*="card"] {transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.video-card:hover,.flip-card:hover {transform: translateY(-8px);box-shadow: 0 20px 40px rgba(245, 169, 98, 0.2);}
/* Gold glow on hover for important elements */.gold-text:hover,.gradient-text:hover {filter: drop-shadow(0 0 10px rgba(245, 169, 98, 0.6));transition: filter 0.3s ease;}
/* ============================================   SCROLL SMOOTH ENHANCEMENTS   ============================================ */
html {scroll-behavior: smooth;}
/* Improve scroll performance */* {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;}
/* ============================================   PREMIUM SECTION TRANSITIONS   ============================================ */
section {position: relative;transition: opacity 0.6s ease;}
/* Subtle section entrance animation */section::before {content: '';position: absolute;top: 0;left: 0;right: 0;height: 1px;background: linear-gradient(90deg, transparent, rgba(245, 169, 98, 0.3), transparent);opacity: 0;transition: opacity 0.8s ease;}
section.visible::before {opacity: 1;}
/* ============================================   TEXT REVEAL WITH GOLD SHINE   ============================================ */
.text-shine {background: linear-gradient(    90deg,    #F5A962 0%,    #FFD700 25%,    #FFFFFF 50%,    #FFD700 75%,    #F5A962 100%);background-size: 200% auto;-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;animation: textShine 4s linear infinite;}
@keyframes textShine {0% {    background-position: 0% center;}100% {    background-position: 200% center;}}
/* ============================================   ENHANCED STAGGER ANIMATIONS   ============================================ */
.stagger-item {transform-origin: center;}
/* Different entrance animations for variety */.stagger-item:nth-child(odd) {animation-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);}
.stagger-item:nth-child(even) {animation-timing-function: cubic-bezier(0.45, 0.05, 0.55, 0.95);}
/* ============================================   LOADING SKELETON (OPCIONAL)   ============================================ */
.skeleton {background: linear-gradient(    90deg,    rgba(245, 169, 98, 0.1) 25%,    rgba(245, 169, 98, 0.2) 50%,    rgba(245, 169, 98, 0.1) 75%);background-size: 200% 100%;animation: skeleton-loading 1.5s ease-in-out infinite;}
@keyframes skeleton-loading {0% {    background-position: 200% 0;}100% {    background-position: -200% 0;}}
/* ============================================   MOBILE OPTIMIZATIONS   ============================================ */
@media (max-width: 768px) {/* Reduce animation complexity on mobile */.parallax {    transform: none !important;}
/* Faster animations on mobile */.fade-in,.slide-up,.scale-in,.reveal-text {    transition-duration: 0.5s;}
/* Reduce stagger delays on mobile */.stagger-item {    transition-delay: 0.05s;}
.stagger-item:nth-child(1) { transition-delay: 0.05s; }.stagger-item:nth-child(2) { transition-delay: 0.1s; }.stagger-item:nth-child(3) { transition-delay: 0.15s; }.stagger-item:nth-child(4) { transition-delay: 0.2s; }.stagger-item:nth-child(5) { transition-delay: 0.25s; }.stagger-item:nth-child(6) { transition-delay: 0.3s; }.stagger-item:nth-child(7) { transition-delay: 0.35s; }.stagger-item:nth-child(8) { transition-delay: 0.4s; }.stagger-item:nth-child(9) { transition-delay: 0.45s; }}
/* ============================================   PERFORMANCE OPTIMIZATIONS   ============================================ */
/* Use GPU acceleration for animations */.fade-in,.slide-up,.slide-left,.slide-right,.scale-in,.parallax,.flip-card {will-change: transform, opacity;}
/* Remove will-change after animation completes */.fade-in.visible,.slide-up.visible,.slide-left.visible,.slide-right.visible,.scale-in.visible,.flip-card.visible {will-change: auto;}
/* Section 4 Images - Mobile Center Fix */@media (max-width: 768px) {/* Remove gap-16 no mobile */#section-4 .grid {    gap: 2rem !important;}
#section-4 .relative {    display: flex;    flex-direction: column;    align-items: center;    position: relative;    padding-bottom: 60px;}
#section-4 .relative img:first-child {    position: relative !important;    margin: 0 auto;    width: 70% !important;    z-index: 1;}
#section-4 .relative img:last-child {    position: relative !important;    right: auto !important;    bottom: auto !important;    margin: -60px auto 0 auto;    width: 85% !important;    z-index: 2;}}
/* Hero Topics Styling */.hero-topics {list-style: none;padding: 0;}
.hero-topic-item {display: flex;align-items: center;justify-content: center;gap: 8px;font-size: 0.875rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.05em;}
.topic-icon {display: inline-flex;align-items: center;justify-content: center;width: 18px;height: 18px;border-radius: 50%;background: linear-gradient(135deg, #F5A962 0%, #FFD700 100%);color: #000;font-size: 11px;font-weight: bold;flex-shrink: 0;box-shadow: 0 2px 8px rgba(245, 169, 98, 0.4);}
.topic-text {background: linear-gradient(135deg, #F5A962 0%, #FFD700 50%, #F5A962 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;}
@media (max-width: 768px) {.hero-topic-item {    font-size: 0.8rem;    gap: 10px;}
.topic-icon {    width: 16px;    height: 16px;    font-size: 10px;}}
@media (min-width: 769px) {.hero-topic-item {    font-size: 0.875rem;}
.full-height-desktop {    height: 100dvh !important;}}
/* Circular Cycle Styles */.circular-cycle-container {position: relative;width: 100%;max-width: 600px;height: 600px;margin: 0 auto;display: flex;align-items: center;justify-content: center;}
.cycle-center {position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);z-index: 10;text-align: center;}
.cycle-item-box {position: absolute;background: rgba(245, 169, 98, 0.1);padding: 12px 20px;border-radius: 8px;border: 1px solid rgba(245, 169, 98, 0.3);text-align: center;min-width: 120px;}
.arrow-down {color: #F5A962;font-size: 20px;margin-top: 4px;}
.arrow-curved {color: #F5A962;font-size: 24px;margin-top: 4px;}
/* Posicionamento dos itens em círculo */.cycle-item-1 {top: 0;left: 50%;transform: translateX(-50%);}
.cycle-item-2 {top: 10%;right: 10%;}
.cycle-item-3 {top: 35%;right: 0;}
.cycle-item-4 {bottom: 25%;right: 5%;}
.cycle-item-5 {bottom: 5%;right: 20%;}
.cycle-item-6 {bottom: 5%;left: 20%;}
.cycle-item-7 {bottom: 25%;left: 5%;}
@media (max-width: 768px) {.circular-cycle-container {    height: 500px;    max-width: 400px;}
.cycle-item-box {    padding: 8px 12px;    min-width: 90px;    font-size: 12px;}
.cycle-center div {    padding: 20px !important;}}
/* Video Card Active State */.video-card > div {border: 2px solid transparent;transition: all 0.3s ease;}
.video-card.active > div {border-color: #F5A962 !important;box-shadow: 0 0 20px rgba(245, 169, 98, 0.5);}
.video-card .playing-badge {display: none;}
.video-card.active .playing-badge {display: flex;animation: slideInFromRight 0.3s ease-out;}
@keyframes slideInFromRight {from {    transform: translateX(100%);    opacity: 0;}to {    transform: translateX(0);    opacity: 1;}}
/* Slick Carousel Custom Styles */.testimonials-carousel .slick-track {display: flex !important;}
.testimonials-carousel .slick-slide {height: auto;display: flex !important;}
.testimonials-carousel .slick-slide > div {width: 100%;}
.testimonials-carousel .slick-prev,.testimonials-carousel .slick-next {z-index: 10;width: 50px;height: 50px;background: linear-gradient(90deg, #F5A962 0%, #FFB347 100%);border-radius: 50%;display: flex !important;align-items: center;justify-content: center;transition: all 0.3s ease;box-shadow: 0 4px 15px rgba(245, 169, 98, 0.3);}
.testimonials-carousel .slick-prev:hover,.testimonials-carousel .slick-next:hover {background: linear-gradient(90deg, #FFB347 0%, #F5A962 100%);box-shadow: 0 6px 20px rgba(245, 169, 98, 0.5);}
.testimonials-carousel .slick-prev:before,.testimonials-carousel .slick-next:before {display: none;}
.testimonials-carousel .slick-prev {left: -60px;}
.testimonials-carousel .slick-next {right: -60px;}
.testimonials-carousel .slick-dots {bottom: -50px;}
.testimonials-carousel .slick-dots li button:before {font-size: 12px;color: #F5A962;}
.testimonials-carousel .slick-dots li.slick-active button:before {color: #F5A962;opacity: 1;}
@media (max-width: 768px) {.testimonials-carousel .slick-prev,.testimonials-carousel .slick-next {    width: 40px;    height: 40px;}
.testimonials-carousel .slick-prev {    left: 5px;}
.testimonials-carousel .slick-next {    right: 5px;}}/* Progress Menu Styles - Modern Premium Design */.progress-menu {position: fixed;right: 0px;top: 50%;transform: translateY(-50%);z-index: 1000;background: transparent;padding: 24px 18px;border-radius: 40px;transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
.progress-menu:hover {background: transparent;}
.progress-items {display: flex;flex-direction: column;gap: 18px;position: relative;}
.progress-line {position: absolute;left: 8.5px;top: 8px;width: 3px;height: calc(100% - 16px);background: linear-gradient(180deg,    rgba(245, 169, 98, 0.15) 0%,    rgba(245, 169, 98, 0.25) 50%,    rgba(245, 169, 98, 0.15) 100%);border-radius: 10px;overflow: hidden;}
.progress-fill {position: absolute;left: 0;top: 0;width: 100%;background: linear-gradient(180deg,    #FFD700 0%,    #F5A962 30%,    #FFB347 70%,    #F5A962 100%);transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);border-radius: 10px;box-shadow: 0 0 20px rgba(245, 169, 98, 0.6),            0 0 40px rgba(245, 169, 98, 0.3);animation: progressGlow 3s ease-in-out infinite;}
@keyframes progressGlow {0%, 100% {    box-shadow: 0 0 20px rgba(245, 169, 98, 0.6),               0 0 40px rgba(245, 169, 98, 0.3);}50% {    box-shadow: 0 0 30px rgba(245, 169, 98, 0.8),               0 0 60px rgba(245, 169, 98, 0.5);}}
.progress-item {display: flex;align-items: center;gap: 14px;cursor: pointer;position: relative;z-index: 1;transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);}

.progress-dot {width: 20px;height: 20px;border-radius: 50%;background: linear-gradient(135deg, #1A1A1A 0%, #0A0A0A 100%);border: 2.5px solid rgba(245, 169, 98, 0.4);transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);flex-shrink: 0;position: relative;overflow: hidden;transform-origin: center center;}
.progress-dot::before {content: '';position: absolute;inset: -50%;background: conic-gradient(    from 0deg,    transparent 0deg,    rgba(245, 169, 98, 0.3) 90deg,    transparent 180deg);  }
@keyframes rotateDot {0% { transform: rotate(0deg); }100% { transform: rotate(360deg); }}
.progress-item:hover .progress-dot::before {opacity: 1;}
.progress-item.active .progress-dot {background: linear-gradient(135deg, #FFD700 0%, #F5A962 50%, #FFB347 100%);border-color: #FFD700;box-shadow: 0 0 25px rgba(245, 169, 98, 0.8),            0 0 50px rgba(245, 169, 98, 0.4),            inset 0 1px 5px rgba(255, 255, 255, 0.3);transform: scale(1.15);}
.progress-item.active .progress-dot::after {content: '';position: absolute;inset: 3px;background: radial-gradient(circle, rgba(255, 255, 255, 0.4) 0%, transparent 70%);border-radius: 50%;animation: pulse 2s ease-in-out infinite;}
@keyframes pulse {0%, 100% {    opacity: 0.5;    transform: scale(0.8);}50% {    opacity: 1;    transform: scale(1);}}
/* Ripple effect on section change */.progress-ripple {position: absolute;inset: -5px;border-radius: 50%;border: 2px solid #F5A962;opacity: 0;transform: scale(0.5);pointer-events: none;}
.progress-ripple.animate {animation: rippleEffect 0.8s cubic-bezier(0.4, 0, 0.2, 1) forwards;}
@keyframes rippleEffect {0% {    opacity: 1;    transform: scale(0.5);    border-width: 3px;}50% {    opacity: 0.6;    border-width: 2px;}100% {    opacity: 0;    transform: scale(2.5);    border-width: 1px;}}
/* Completed state for previous dots */.progress-item.completed .progress-dot {background: linear-gradient(135deg, #F5A962 0%, #FFB347 100%);border-color: #F5A962;box-shadow: 0 0 15px rgba(245, 169, 98, 0.4);transform: scale(0.95);}
.progress-item.completed .progress-dot::after {content: '✓';position: absolute;inset: 0;display: flex;align-items: center;justify-content: center;font-size: 10px;font-weight: bold;color: #000;animation: checkMark 0.4s cubic-bezier(0.4, 0, 0.2, 1);}
@keyframes checkMark {0% {    opacity: 0;    transform: scale(0) rotate(-45deg);}50% {    transform: scale(1.2) rotate(0deg);}100% {    opacity: 1;    transform: scale(1) rotate(0deg);}}
/* Enhanced transition for active state changes */.progress-item {transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);}
.progress-item.active {animation: activePulse 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
@keyframes activePulse {0% {    transform: scale(1);}30% {    transform: scale(1.2);}60% {    transform: scale(0.95);}100% {    transform: scale(1);}}
.progress-label {font-size: 13px;font-weight: 500;color: #888;white-space: nowrap;opacity: 0;transform: translateX(15px);transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);pointer-events: none;background: linear-gradient(90deg, rgba(26, 26, 26, 0.95) 0%, rgba(26, 26, 26, 0.85) 100%);backdrop-filter: blur(10px);padding: 6px 14px;border-radius: 20px;border: 1px solid rgba(245, 169, 98, 0.2);box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);position: absolute;right: 100%;margin-right: 8px;}
.progress-item:hover .progress-label {opacity: 1;transform: translateX(0);}
.progress-item.active .progress-label {color: #F5A962;font-weight: 600;border-color: rgba(245, 169, 98, 0.5);background: linear-gradient(90deg, rgba(245, 169, 98, 0.15) 0%, rgba(245, 169, 98, 0.05) 100%);box-shadow: 0 4px 20px rgba(245, 169, 98, 0.2);opacity: 1;transform: translateX(0);}
/* Shine effect on active label */.progress-item.active .progress-label::before {content: '';position: absolute;top: -50%;left: -100%;width: 60%;height: 200%;background: linear-gradient(    90deg,    transparent 0%,    rgba(255, 255, 255, 0) 20%,    rgba(245, 169, 98, 0.15) 40%,    rgba(255, 215, 0, 0.25) 50%,    rgba(245, 169, 98, 0.15) 60%,    rgba(255, 255, 255, 0) 80%,    transparent 100%);transform: skewX(-20deg);filter: blur(8px);animation: shineEnhanced 4s ease-in-out infinite;border-radius: 20px;opacity: 0;}
@keyframes shineEnhanced {0% {    left: -100%;    opacity: 0;}10% {    opacity: 1;}30% {    left: 120%;    opacity: 0.6;}30.1% {    left: -100%;    opacity: 0;}100% {    left: -100%;    opacity: 0;}}
/* Mobile Horizontal Menu */@media (max-width: 768px) {.progress-menu {    right: auto;    left: 50%;    top: auto;    bottom: 15px;    transform: translateX(-50%);    padding: 36px 20px 14px 20px;    border-radius: 25px;    max-width: calc(100vw - 20px);    width: auto;    overflow: visible;}
.progress-items {    flex-direction: row;    gap: 18px;    padding: 0;    justify-content: center;}
.progress-line {    left: 9px;    top: 8.5px;    width: calc(100% - 18px);    height: 2px;}
.progress-fill {    width: 0%;    height: 100%;    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);}
.progress-dot {    width: 18px;    height: 18px;    border-width: 2.5px;}
.progress-item.active .progress-dot {    transform: scale(1.3);}
.progress-item.completed .progress-dot {    transform: scale(0.9);}
/* Show labels above dots on mobile */.progress-label {    position: absolute;    top: auto;    bottom: 100%;    left: 50%;    right: auto;    transform: translateX(-50%) translateY(-4px);    margin: 0 0 6px 0;    padding: 4px 10px;    font-size: 11px;    opacity: 0;    background: linear-gradient(90deg, rgba(26, 26, 26, 0.9) 0%, rgba(26, 26, 26, 0.8) 100%);    border-radius: 12px;    border: 1px solid rgba(245, 169, 98, 0.3);    white-space: nowrap;    pointer-events: none;}
.progress-item.active .progress-label {    opacity: 1;    transform: translateX(-50%) translateY(0);}
.progress-item:hover {    transform: scale(1.1);}
.progress-item.active {    animation: activePulseMobile 0.6s cubic-bezier(0.4, 0, 0.2, 1);}
@keyframes activePulseMobile {    0% {        transform: scale(1);    }    30% {        transform: scale(1.4);    }    60% {        transform: scale(1.1);    }    100% {        transform: scale(1.3);    }}
.progress-item.completed .progress-dot::after {    font-size: 10px;}
/* Ripple effect smaller on mobile */.progress-ripple {    border-width: 1.5px;}
@keyframes rippleEffect {    0% {        opacity: 1;        transform: scale(0.5);        border-width: 2px;    }    50% {        opacity: 0.6;        border-width: 1.5px;    }    100% {        opacity: 0;        transform: scale(2);        border-width: 1px;    }}}
/* Smooth scrolling for progress menu on mobile */@media (max-width: 768px) {.progress-menu {    scroll-behavior: smooth;}}
/* Scroll Down Indicator - Mobile Only */.scroll-indicator {position: absolute;bottom: 2%;left: 50%;transform: translateX(-50%);display: flex;flex-direction: column;align-items: center;gap: 4px;z-index: 100;opacity: 0;animation: fadeInIndicator 1s ease-in-out 1.5s forwards;scale: 0.8;}
@keyframes fadeInIndicator {0% {    opacity: 0;    transform: translateX(-50%) translateY(-10px);}100% {    opacity: 1;    transform: translateX(-50%) translateY(0);}}
.scroll-text {font-size: 9px;font-weight: 600;text-transform: uppercase;letter-spacing: 1px;background: linear-gradient(90deg, #F5A962 0%, #FFD700 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;background-clip: text;margin-bottom: 2px;animation: pulseText 2s ease-in-out infinite;}
@keyframes pulseText {0%, 100% {    opacity: 0.7;}50% {    opacity: 1;}}
.scroll-arrows {display: flex;flex-direction: column;gap: -8px;}
.scroll-arrow {color: #F5A962;width: 20px;height: 20px;filter: drop-shadow(0 0 6px rgba(245, 169, 98, 0.6));}
.scroll-arrow:first-child {animation: bounceArrow 2s ease-in-out infinite;}
.scroll-arrow:last-child {animation: bounceArrow 2s ease-in-out 0.3s infinite;opacity: 0.6;}
@keyframes bounceArrow {0%, 100% {    transform: translateY(0);    opacity: 1;}50% {    transform: translateY(6px);    opacity: 0.4;}}
/* Hide indicator after first scroll */body.scrolled .scroll-indicator {animation: fadeOutIndicator 0.5s ease-in-out forwards;}
@keyframes fadeOutIndicator {0% {    opacity: 1;    transform: translateX(-50%) translateY(0);}100% {    opacity: 0;    transform: translateX(-50%) translateY(-20px);    pointer-events: none;}}
/* Video Modal Styles */#videoModal {opacity: 0;transition: opacity 0.3s ease-in-out;}
#videoModal.flex {opacity: 1;}
/* Video Card Hover Effects */.video-card {transition: transform 0.3s ease;}
.video-card:hover {transform: scale(1.05);}
.video-card .play-button {transition: all 0.3s ease;}
/* Responsivo para o grid de vídeos */@media (max-width: 768px) {.video-card {    margin-bottom: 1rem;}
/* Videos Grid Carousel Styles for Mobile */.videos-grid.slick-initialized {    display: block !important;}
.videos-grid .slick-slide {    padding: 0 6px;}
.videos-grid .slick-dots {    bottom: -40px;}
.videos-grid .slick-dots li button:before {    font-size: 10px;    color: #F5A962;}
.videos-grid .slick-dots li.slick-active button:before {    color: #F5A962;    opacity: 1;}}
/* Desktop Grid - ensure grid layout when not carousel */
@media (min-width: 769px) {
    .videos-grid:not(.slick-initialized) { display: grid !important;}
    /* Remover min-h-screen globalmente no desktop */
    .min-h-screen { min-height: auto !important;}
    /* Remover py-20 no desktop para Section 2, 3A, 3B, 4 e 5 */
    #section-2,
    #section-5 {padding-top: 0 !important;padding-bottom: 0 !important;}
}

/* ============================================
   BOTÃO FLUTUANTE WHATSAPP
   ============================================ */
.whatsapp-float {
    position: fixed;
    bottom: 60px;
    right: 15px;
    width: 60px;
    height: 60px;
    background-color: #25D366;
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 32px;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.4);
    z-index: 9999;
    transition: all 0.3s ease;
    text-decoration: none;
}

.whatsapp-float:hover {
    background-color: #128C7E;
    transform: scale(1.1);
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.6);
}

.whatsapp-float i {
    line-height: 60px;
}

/* Animação de pulso */
@keyframes whatsappPulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7);
    }
    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

.whatsapp-float {
    animation: whatsappPulse 2s infinite;
}

/* Responsividade para mobile */
@media (max-width: 768px) {
    .whatsapp-float {
        width: 55px;
        height: 55px;
        font-size: 28px;
        bottom: 50px;
        right: 15px;
    }
}