/* Ensure no default page margin and smooth scrolling behavior */
body { margin: 0; font-family: 'Inter', sans-serif; overscroll-behavior: contain; }
.font-poppins { font-family: 'Poppins', sans-serif; }
.mobile-frame { 
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.15); 
    border-radius: 0; 
    overflow: hidden; 
    position: relative; 
    background-color: #000; 
    transition: width 0.2s ease, height 0.2s ease;
}
.swiper-container-v, .swiper-container-h, .swiper { width: 100%; height: 100%; }
.swiper-slide { display: flex; text-align: center; color: #fff; background-size: cover; background-position: center; position: relative; overflow: hidden; }
.slide-overlay { position: absolute; inset: 0; background: none; }
.slide-video-bg { position: absolute; top: 50%; left: 50%; width: auto; height: auto; max-width: 100%; max-height: 100%; transform: translate(-50%, -50%); z-index: -1; }
/* Static image as media background: center without upscaling */
.slide-image-bg { position: absolute; top: 50%; left: 50%; width: auto; height: auto; max-width: 100%; max-height: 100%; transform: translate(-50%, -50%); z-index: -1; }
.swiper-pagination-horizontal {
    bottom: 10px;
    top: auto;
}
.swiper-pagination-bullet { width: 8px; height: 8px; background-color: rgba(255, 255, 255, 0.6); opacity: 1; }
.swiper-pagination-bullet-active { background-color: #fd572b; }
.modal { transition: opacity 0.3s ease, visibility 0.3s ease; }
/* Slide-up animation for modal panel */
.modal .modal-panel { transform: translateY(32px); opacity: 0; transition: transform 0.35s ease, opacity 0.35s ease; }
.modal.open .modal-panel { transform: translateY(0); opacity: 1; }
.category-link.active { background-color: #fd572b; color: white; font-weight: 700; box-shadow: 0 0 15px rgba(253, 87, 43, 0.5); }
.text-shadow { text-shadow: 0 2px 4px rgba(0,0,0,0.5); }
.swiper-container-categories { -webkit-mask-image: linear-gradient(to right, transparent, black 1.5rem); mask-image: linear-gradient(to right, transparent, black 1.5rem); }
.prose p { margin-bottom: 1em; }
.prose h1, .prose h2, .prose h3, .prose h4, .prose h5, .prose h6 { font-family: 'Poppins', sans-serif; margin-top: 1.5em; margin-bottom: 0.5em; }
#loader { border: 4px solid #f3f3f3; border-top: 4px solid #fd572b; border-radius: 50%; width: 40px; height: 40px; animation: spin 1s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

/* Estilo para o botão "Leia Mais" com efeito de vidro */
.btn-glass {
    background: rgba(0, 0, 0, 0.25);
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    border-radius: 10px;
    padding: 0.50rem 2rem;
    color: white;
    text-decoration: none;
    font-weight: 600;
    transition: background 0.3s ease, border-color 0.3s ease;
    margin-top: 0.75rem;
    display: inline-block;
}

.btn-glass:hover {
    background: rgba(0, 0, 0, 0.4);
    border-color: rgba(255, 255, 255, 0.3);
}

.flex.flex-col.gap-3 {
    margin-bottom: 40px;
}
