.elementor-13860 .elementor-element.elementor-element-0be8b9c{--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;--justify-content:center;--align-items:center;--gap:25px 25px;--row-gap:25px;--column-gap:25px;border-style:solid;--border-style:solid;border-width:0px 0px 2px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:2px;--border-left-width:0px;border-color:#E50914;--border-color:#E50914;--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-13860 .elementor-element.elementor-element-0be8b9c:not(.elementor-motion-effects-element-type-background), .elementor-13860 .elementor-element.elementor-element-0be8b9c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#010101;}.elementor-13860 .elementor-element.elementor-element-49adb25{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--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-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-13860 .elementor-element.elementor-element-72451ba > .elementor-widget-container{margin:5px 5px 5px 5px;}.elementor-13860 .elementor-element.elementor-element-72451ba img{width:49%;}.elementor-13860 .elementor-element.elementor-element-e9399af{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-13860 .elementor-element.elementor-element-d974a97 img{width:75%;}.elementor-13860 .elementor-element.elementor-element-1bebbc1{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-13860 .elementor-element.elementor-element-487a7a9 img{width:60%;}.elementor-13860 .elementor-element.elementor-element-5475499{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-13860 .elementor-element.elementor-element-7a65791 img{width:43%;}.elementor-13860 .elementor-element.elementor-element-a56c27e{--display:flex;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-13860 .elementor-element.elementor-element-3636635 img{width:43%;}.elementor-13860 .elementor-element.elementor-element-23f986e{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:35px 35px;--row-gap:35px;--column-gap:35px;--overlay-opacity:0.89;--padding-top:80px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-13860 .elementor-element.elementor-element-23f986e::before, .elementor-13860 .elementor-element.elementor-element-23f986e > .elementor-background-video-container::before, .elementor-13860 .elementor-element.elementor-element-23f986e > .e-con-inner > .elementor-background-video-container::before, .elementor-13860 .elementor-element.elementor-element-23f986e > .elementor-background-slideshow::before, .elementor-13860 .elementor-element.elementor-element-23f986e > .e-con-inner > .elementor-background-slideshow::before, .elementor-13860 .elementor-element.elementor-element-23f986e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-13860 .elementor-element.elementor-element-23f986e:not(.elementor-motion-effects-element-type-background), .elementor-13860 .elementor-element.elementor-element-23f986e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background:url("https://fitnesslinkoficial.com.br/wp-content/uploads/2025/11/pexels-victorfreitas-703016.jpg") 50% 50%;background-size:cover;}.elementor-13860 .elementor-element.elementor-element-6a95974 > .elementor-widget-container{margin:10px 10px 10px 10px;}.elementor-13860 .elementor-element.elementor-element-6a95974 img{width:29%;}.elementor-13860 .elementor-element.elementor-element-ca98b25 > .elementor-widget-container{margin:0px 20px 0px 20px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-13860 .elementor-element.elementor-element-03ddfb5{width:var( --container-widget-width, 65% );max-width:65%;--container-widget-width:65%;--container-widget-flex-grow:0;text-align:center;}.elementor-13860 .elementor-element.elementor-element-03ddfb5 > .elementor-widget-container{margin:-23px 0px -45px 0px;padding:0px 0px -10px 0px;}.elementor-13860 .elementor-element.elementor-element-03ddfb5 .elementor-heading-title{font-weight:normal;color:#FFFFFF;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );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-13860 .elementor-element.elementor-element-7f5fc17{width:var( --container-widget-width, 70% );max-width:70%;--container-widget-width:70%;--container-widget-flex-grow:0;text-align:center;font-family:"Inter", Sans-serif;font-size:22px;font-weight:400;line-height:1.2em;color:#FFFFFF;}.elementor-13860 .elementor-element.elementor-element-8aeb32c{--display:flex;--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-13860 .elementor-element.elementor-element-227a67a{--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;--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-13860 .elementor-element.elementor-element-2157103{--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;--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-13860 .elementor-element.elementor-element-70b956a{--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;--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-13860 .elementor-element.elementor-element-92cc027{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-13860 .elementor-element.elementor-element-92cc027:not(.elementor-motion-effects-element-type-background), .elementor-13860 .elementor-element.elementor-element-92cc027 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#141414;}.elementor-13860 .elementor-element.elementor-element-5ff5bc5 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-13860 .elementor-element.elementor-element-da97589{--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;--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-13860 .elementor-element.elementor-element-a4d3286{--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;--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-13860 .elementor-element.elementor-element-8aa3bbe{--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;--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-13860 .elementor-element.elementor-element-6203bd7{--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;--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-13860 .elementor-element.elementor-element-c47bfb7{--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;--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-13860 .elementor-element.elementor-element-2858f74{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-13860 .elementor-element.elementor-element-6a95974 img{width:60%;}}@media(max-width:767px){.elementor-13860 .elementor-element.elementor-element-0be8b9c{--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:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-13860 .elementor-element.elementor-element-49adb25{--width:45%;}.elementor-13860 .elementor-element.elementor-element-72451ba > .elementor-widget-container{margin:5px 5px 5px 5px;}.elementor-13860 .elementor-element.elementor-element-72451ba img{width:65%;}.elementor-13860 .elementor-element.elementor-element-e9399af{--width:47%;}.elementor-13860 .elementor-element.elementor-element-d974a97 img{width:84%;}.elementor-13860 .elementor-element.elementor-element-1bebbc1{--width:45%;--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-13860 .elementor-element.elementor-element-487a7a9 img{width:80%;}.elementor-13860 .elementor-element.elementor-element-5475499{--width:45%;--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-13860 .elementor-element.elementor-element-7a65791 img{width:57%;}.elementor-13860 .elementor-element.elementor-element-a56c27e{--width:45%;--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-13860 .elementor-element.elementor-element-3636635 img{width:57%;}.elementor-13860 .elementor-element.elementor-element-23f986e{--gap:20px 20px;--row-gap:20px;--column-gap:20px;--overlay-opacity:0.75;}.elementor-13860 .elementor-element.elementor-element-6a95974 img{width:60%;}.elementor-13860 .elementor-element.elementor-element-03ddfb5{width:100%;max-width:100%;}.elementor-13860 .elementor-element.elementor-element-03ddfb5 > .elementor-widget-container{margin:0px 10px -40px 10px;}.elementor-13860 .elementor-element.elementor-element-7f5fc17{--container-widget-width:95%;--container-widget-flex-grow:0;width:var( --container-widget-width, 95% );max-width:95%;font-size:16px;}.elementor-13860 .elementor-element.elementor-element-5ff5bc5 > .elementor-widget-container{margin:0px 10px 0px 10px;}}@media(min-width:768px){.elementor-13860 .elementor-element.elementor-element-49adb25{--width:25%;}.elementor-13860 .elementor-element.elementor-element-e9399af{--width:25%;}.elementor-13860 .elementor-element.elementor-element-1bebbc1{--width:25%;}.elementor-13860 .elementor-element.elementor-element-5475499{--width:25%;}.elementor-13860 .elementor-element.elementor-element-a56c27e{--width:25%;}}/* Start custom CSS for html, class: .elementor-element-ca98b25 *//* Centraliza o bloco no container */
.badge-wrapper {
    display: flex;
    justify-content: center;
    width: 100%;
}

/* Badge */
.badge-cref {
    display: flex;
    align-items: center;          /* ícone e texto alinhados verticalmente */
    justify-content: center;      /* conteúdo centralizado horizontalmente */
    gap: 12px;
    padding: 14px 30px;
    border: 1.5px solid #E50914;
    color: #E50914;
    border-radius: 50px;
    font-size: 16px;
    font-family: "Inter", sans-serif;
    background: rgba(247, 168, 18, 0.08);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    width: fit-content;
    text-align: center; /* CENTRALIZA O TEXTO */
}

/* Ícone centralizado */
.badge-cref .icon {
    font-size: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Texto centralizado */
.badge-cref .text {
    display: flex;
    flex-direction: column;
    text-align: center;
    line-height: 1.3;
}

/* Responsivo Mobile */
@media (max-width: 480px) {
    .badge-cref {
        font-size: 14px;
        padding: 10px 20px;
        gap: 8px;
        max-width: 90%;
        white-space: normal;
    }
    .badge-cref .icon {
        font-size: 18px;
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-03ddfb5 */.title-cref {
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 1.5rem;
    animation: fadeInUp 1s ease 0.4s both;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.5);
    font-family: Inter, sans-serif;
    text-align: center;
    color: #fff;
}

.title-cref .destaque {
    color: #E50914;
    font-style: italic;
}

.title-cref .cref-strong {
    font-weight: 900;
}

/* Responsivo – Tablet */
@media (max-width: 1024px) {
    .title-cref {
        font-size: 2.5rem;
    }
}

/* Responsivo – Mobile */
@media (max-width: 600px) {
    .title-cref {
        font-size: 1.8rem;
        line-height: 1.25;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ccecd6e */.btn-red-cta {
    display: inline-block;
    padding: 1.2rem 3.5rem;
    background: #E20714;
    color: #FFFFFF;
    font-family: Inter, sans-serif;
    font-size: 1.125rem;
    font-weight: 700;
    border-radius: 50px;
    text-decoration: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: all 0.25s ease;
    box-shadow: 0 4px 20px rgba(226, 7, 20, 0.35);
    text-align: center; /* ADICIONA ISSO */
}

@media (max-width: 480px) {
    .btn-red-cta {
        padding: 1rem 2rem; /* padding igual nas laterais */
        font-size: 1rem;
        width: 100%; /* ou uma largura fixa */
        max-width: 320px;
        box-sizing: border-box;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5ff5bc5 *//* ========================================
   FITNESS LINK - SEÇÃO DE CURSOS V3
   FULL WIDTH + 100% RESPONSIVO + BLUR BG
   Para Elementor Pro (Custom HTML)
   ======================================== */

/* RESET COMPLETO */
.fl-cursos-section,
.fl-cursos-section *,
.fl-cursos-section *::before,
.fl-cursos-section *::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* VARIÁVEIS E BASE */
.fl-cursos-section {
    --red-primary: #E50914;
    --red-hover: #f40612;
    --orange-accent: #E07A3C;
    --black: #000000;
    --gray-dark: #141414;
    --gray-medium: #808080;
    --gray-light: #1a1a1a;
    --white: #ffffff;
    
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    background: var(--gray-dark);
    padding: 40px 0;
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* CONTAINER FULL WIDTH */
.fl-cursos-section .fl-container {
    width: 100%;
    max-width: 100%;
    padding: 0;
}

/* ========================================
   TÍTULOS
   ======================================== */
.fl-cursos-section .section-title {
    font-size: 20px;
    font-weight: 800;
    color: var(--white);
    text-align: center;
    line-height: 1.3;
    margin-bottom: 12px;
    padding: 0 15px;
}

.fl-cursos-section .section-subtitle {
    text-align: center;
    font-size: 14px;
    color: var(--gray-medium);
    margin-bottom: 30px;
    padding: 0 15px;
    line-height: 1.6;
}

/* ========================================
   CATEGORIA DE CURSOS
   ======================================== */
.fl-cursos-section .course-category {
    margin-bottom: 40px;
}

.fl-cursos-section .course-category:last-child {
    margin-bottom: 0;
}

.fl-cursos-section .category-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 15px;
    padding: 0 15px;
    gap: 10px;
}

.fl-cursos-section .category-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--white);
    padding-bottom: 8px;
    border-bottom: 3px solid var(--red-primary);
    display: inline-block;
    line-height: 1.3;
    flex: 1;
    min-width: 0;
}

/* ========================================
   CONTROLES DO CARROSSEL
   ======================================== */
.fl-cursos-section .carousel-controls {
    display: flex;
    gap: 8px;
    flex-shrink: 0;
}

.fl-cursos-section .carousel-btn {
    background: var(--gray-light);
    border: 2px solid var(--red-primary);
    color: var(--red-primary);
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 14px;
    font-weight: 700;
    flex-shrink: 0;
    -webkit-tap-highlight-color: transparent;
}

.fl-cursos-section .carousel-btn:hover,
.fl-cursos-section .carousel-btn:focus {
    background: var(--red-primary);
    color: var(--white);
    outline: none;
}

.fl-cursos-section .carousel-btn:active {
    transform: scale(0.95);
}

.fl-cursos-section .carousel-btn:disabled {
    opacity: 0.3;
    cursor: not-allowed;
    transform: none;
}

/* ========================================
   GRID DE CURSOS (CARROSSEL)
   ======================================== */
.fl-cursos-section .courses-grid {
    display: flex;
    gap: 12px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    padding: 10px 15px 20px 15px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: var(--red-primary) var(--gray-light);
    scroll-snap-type: x mandatory;
}

.fl-cursos-section .courses-grid::-webkit-scrollbar {
    height: 6px;
}

.fl-cursos-section .courses-grid::-webkit-scrollbar-track {
    background: var(--gray-light);
    border-radius: 10px;
}

.fl-cursos-section .courses-grid::-webkit-scrollbar-thumb {
    background: var(--red-primary);
    border-radius: 10px;
}

/* ========================================
   CARD DE CURSO - MOBILE FIRST
   ======================================== */
.fl-cursos-section .course-card {
    background: var(--gray-light);
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    position: relative;
    border: 1px solid rgba(229, 9, 20, 0.2);
    flex: 0 0 260px;
    min-width: 260px;
    max-width: 260px;
    display: flex;
    flex-direction: column;
    scroll-snap-align: start;
}

.fl-cursos-section .course-card:hover {
    box-shadow: 0 8px 25px rgba(229, 9, 20, 0.4);
    border-color: var(--red-primary);
}

/* ========================================
   IMAGEM DO CURSO - COM FUNDO BLUR
   ======================================== */
.fl-cursos-section .course-image {
    width: 100%;
    height: 380px;
    background: #0a0a0a;
    display: flex;
    align-items: center;
    justify-content: center;
    border-bottom: 2px solid var(--red-primary);
    position: relative;
    overflow: hidden;
}

/* FUNDO BLUR */
.fl-cursos-section .course-image::before {
    content: '';
    position: absolute;
    top: -30px;
    left: -30px;
    right: -30px;
    bottom: -30px;
    background-image: var(--bg-image);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(30px) brightness(0.35) saturate(1.2);
    z-index: 1;
    transform: scale(1.2);
}

/* IMAGEM PRINCIPAL */
.fl-cursos-section .course-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    transition: transform 0.3s ease;
    position: relative;
    z-index: 2;
}

.fl-cursos-section .course-card:hover .course-image img {
    transform: scale(1.03);
}

.fl-cursos-section .course-image-placeholder {
    font-size: 20px;
    font-weight: 700;
    color: var(--red-primary);
    letter-spacing: 2px;
    position: relative;
    z-index: 2;
}

/* ========================================
   BADGES
   ======================================== */
.fl-cursos-section .course-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background: var(--orange-accent);
    color: var(--white);
    padding: 5px 10px;
    border-radius: 15px;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 5;
}

.fl-cursos-section .course-badge.free {
    background: #10b981;
}

.fl-cursos-section .course-badge.featured {
    background: var(--red-primary);
}

/* ========================================
   INFORMAÇÕES DO CURSO
   ======================================== */
.fl-cursos-section .course-info {
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.fl-cursos-section .course-name {
    font-size: 14px;
    font-weight: 700;
    color: var(--white);
    margin-bottom: 6px;
    line-height: 1.35;
    min-height: 38px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.fl-cursos-section .course-professor {
    font-size: 12px;
    color: var(--red-primary);
    font-weight: 600;
    margin-bottom: 10px;
}

.fl-cursos-section .course-description {
    font-size: 12px;
    line-height: 1.5;
    color: var(--gray-medium);
    margin-bottom: 12px;
    flex: 1;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.fl-cursos-section .course-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.fl-cursos-section .meta-item {
    font-size: 10px;
    color: var(--gray-medium);
}

/* ========================================
   PREÇO
   ======================================== */
.fl-cursos-section .course-price {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.fl-cursos-section .price-old {
    font-size: 12px;
    color: var(--gray-medium);
    text-decoration: line-through;
}

.fl-cursos-section .price-new {
    font-size: 20px;
    font-weight: 800;
    color: var(--red-primary);
    font-style: italic;
}

/* ========================================
   BOTÃO CTA
   ======================================== */
.fl-cursos-section .course-cta {
    display: block;
    background: var(--red-primary);
    color: var(--white) !important;
    padding: 12px 15px;
    text-align: center;
    text-decoration: none !important;
    font-weight: 700;
    font-size: 12px;
    transition: all 0.3s ease;
    border-radius: 8px;
    margin-top: auto;
    -webkit-tap-highlight-color: transparent;
}

.fl-cursos-section .course-cta:hover,
.fl-cursos-section .course-cta:focus {
    background: var(--red-hover);
    box-shadow: 0 4px 15px rgba(229, 9, 20, 0.5);
    color: var(--white) !important;
    text-decoration: none !important;
}

.fl-cursos-section .course-cta.soon {
    background: var(--gray-medium);
    cursor: not-allowed;
    font-size: 10px;
    padding: 12px 10px;
}

.fl-cursos-section .course-cta.soon:hover {
    background: var(--gray-medium);
    box-shadow: none;
}

/* ========================================
   RESPONSIVE - MOBILE PEQUENO (até 359px)
   ======================================== */
@media (max-width: 359px) {
    .fl-cursos-section {
        padding: 30px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 18px;
        padding: 0 10px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 13px;
        padding: 0 10px;
        margin-bottom: 25px;
    }

    .fl-cursos-section .category-header {
        padding: 0 10px;
        flex-direction: column;
        gap: 10px;
    }

    .fl-cursos-section .category-title {
        font-size: 14px;
        width: 100%;
    }

    .fl-cursos-section .carousel-controls {
        align-self: flex-end;
    }

    .fl-cursos-section .courses-grid {
        gap: 10px;
        padding: 10px 10px 15px 10px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 240px;
        min-width: 240px;
        max-width: 240px;
    }

    .fl-cursos-section .course-image {
        height: 320px;
    }

    .fl-cursos-section .course-info {
        padding: 12px;
    }

    .fl-cursos-section .course-name {
        font-size: 13px;
        min-height: 35px;
    }

    .fl-cursos-section .price-new {
        font-size: 18px;
    }
}

/* ========================================
   RESPONSIVE - MOBILE (360px a 480px)
   ======================================== */
@media (min-width: 360px) and (max-width: 480px) {
    .fl-cursos-section {
        padding: 35px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 20px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 14px;
        margin-bottom: 28px;
    }

    .fl-cursos-section .category-header {
        flex-direction: row;
        align-items: center;
    }

    .fl-cursos-section .category-title {
        font-size: 15px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 270px;
        min-width: 270px;
        max-width: 270px;
    }

    .fl-cursos-section .course-image {
        height: 340px;
    }
}

/* ========================================
   RESPONSIVE - MOBILE GRANDE (481px a 600px)
   ======================================== */
@media (min-width: 481px) and (max-width: 600px) {
    .fl-cursos-section {
        padding: 45px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 24px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 15px;
        margin-bottom: 35px;
    }

    .fl-cursos-section .category-header {
        padding: 0 20px;
    }

    .fl-cursos-section .category-title {
        font-size: 17px;
    }

    .fl-cursos-section .carousel-btn {
        width: 40px;
        height: 40px;
        font-size: 16px;
    }

    .fl-cursos-section .courses-grid {
        gap: 15px;
        padding: 10px 20px 20px 20px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 300px;
        min-width: 300px;
        max-width: 300px;
    }

    .fl-cursos-section .course-image {
        height: 360px;
    }

    .fl-cursos-section .course-info {
        padding: 18px;
    }

    .fl-cursos-section .course-name {
        font-size: 15px;
        min-height: 40px;
    }

    .fl-cursos-section .course-professor {
        font-size: 13px;
    }

    .fl-cursos-section .course-description {
        font-size: 13px;
    }

    .fl-cursos-section .meta-item {
        font-size: 11px;
    }

    .fl-cursos-section .price-new {
        font-size: 22px;
    }

    .fl-cursos-section .course-cta {
        font-size: 13px;
        padding: 14px 18px;
    }
}

/* ========================================
   RESPONSIVE - TABLET (601px a 768px)
   ======================================== */
@media (min-width: 601px) and (max-width: 768px) {
    .fl-cursos-section {
        padding: 50px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 28px;
        margin-bottom: 15px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 16px;
        margin-bottom: 40px;
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;
    }

    .fl-cursos-section .category-header {
        padding: 0 25px;
    }

    .fl-cursos-section .category-title {
        font-size: 20px;
    }

    .fl-cursos-section .carousel-btn {
        width: 44px;
        height: 44px;
        font-size: 18px;
    }

    .fl-cursos-section .courses-grid {
        gap: 18px;
        padding: 12px 25px 25px 25px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 320px;
        min-width: 320px;
        max-width: 320px;
        border-radius: 15px;
    }

    .fl-cursos-section .course-image {
        height: 380px;
    }

    .fl-cursos-section .course-info {
        padding: 20px;
    }

    .fl-cursos-section .course-name {
        font-size: 16px;
        min-height: 44px;
    }

    .fl-cursos-section .course-professor {
        font-size: 13px;
    }

    .fl-cursos-section .course-description {
        font-size: 13px;
    }

    .fl-cursos-section .meta-item {
        font-size: 12px;
    }

    .fl-cursos-section .price-old {
        font-size: 13px;
    }

    .fl-cursos-section .price-new {
        font-size: 24px;
    }

    .fl-cursos-section .course-cta {
        font-size: 14px;
        padding: 14px 20px;
    }
}

/* ========================================
   RESPONSIVE - TABLET GRANDE (769px a 1024px)
   ======================================== */
@media (min-width: 769px) and (max-width: 1024px) {
    .fl-cursos-section {
        padding: 60px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 32px;
        margin-bottom: 18px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 17px;
        margin-bottom: 50px;
        max-width: 650px;
    }

    .fl-cursos-section .category-header {
        padding: 0 35px;
        margin-bottom: 20px;
    }

    .fl-cursos-section .category-title {
        font-size: 22px;
    }

    .fl-cursos-section .courses-grid {
        gap: 22px;
        padding: 15px 35px 30px 35px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 340px;
        min-width: 340px;
        max-width: 340px;
    }

    .fl-cursos-section .course-card:hover {
        transform: scale(1.03);
    }

    .fl-cursos-section .course-image {
        height: 400px;
    }

    .fl-cursos-section .course-name {
        font-size: 17px;
        min-height: 46px;
    }

    .fl-cursos-section .course-description {
        font-size: 14px;
    }

    .fl-cursos-section .price-new {
        font-size: 26px;
    }

    .fl-cursos-section .course-cta {
        font-size: 14px;
        padding: 15px 22px;
    }
}

/* ========================================
   RESPONSIVE - DESKTOP (1025px a 1200px)
   ======================================== */
@media (min-width: 1025px) and (max-width: 1200px) {
    .fl-cursos-section {
        padding: 70px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 36px;
        margin-bottom: 20px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 18px;
        margin-bottom: 55px;
        max-width: 700px;
    }

    .fl-cursos-section .category-header {
        padding: 0 45px;
    }

    .fl-cursos-section .category-title {
        font-size: 24px;
    }

    .fl-cursos-section .carousel-btn {
        width: 48px;
        height: 48px;
        font-size: 20px;
    }

    .fl-cursos-section .courses-grid {
        gap: 25px;
        padding: 15px 45px 30px 45px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 360px;
        min-width: 360px;
        max-width: 360px;
    }

    .fl-cursos-section .course-card:hover {
        transform: scale(1.04);
    }

    .fl-cursos-section .course-image {
        height: 420px;
    }

    .fl-cursos-section .course-info {
        padding: 22px;
    }

    .fl-cursos-section .course-name {
        font-size: 18px;
        min-height: 48px;
    }

    .fl-cursos-section .course-professor {
        font-size: 14px;
    }

    .fl-cursos-section .course-description {
        font-size: 14px;
    }

    .fl-cursos-section .meta-item {
        font-size: 12px;
    }

    .fl-cursos-section .price-old {
        font-size: 14px;
    }

    .fl-cursos-section .price-new {
        font-size: 28px;
    }

    .fl-cursos-section .course-cta {
        font-size: 15px;
        padding: 16px 24px;
    }
}

/* ========================================
   RESPONSIVE - DESKTOP GRANDE (1201px+)
   ======================================== */
@media (min-width: 1201px) {
    .fl-cursos-section {
        padding: 80px 0;
    }

    .fl-cursos-section .section-title {
        font-size: 40px;
        margin-bottom: 22px;
    }

    .fl-cursos-section .section-subtitle {
        font-size: 18px;
        margin-bottom: 60px;
        max-width: 750px;
    }

    .fl-cursos-section .category-header {
        padding: 0 60px;
        margin-bottom: 25px;
    }

    .fl-cursos-section .category-title {
        font-size: 26px;
        padding-bottom: 12px;
    }

    .fl-cursos-section .carousel-btn {
        width: 50px;
        height: 50px;
        font-size: 22px;
    }

    .fl-cursos-section .courses-grid {
        gap: 28px;
        padding: 15px 60px 35px 60px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 380px;
        min-width: 380px;
        max-width: 380px;
    }

    .fl-cursos-section .course-card:hover {
        transform: scale(1.05);
        box-shadow: 0 12px 35px rgba(229, 9, 20, 0.5);
    }

    .fl-cursos-section .course-image {
        height: 450px;
    }

    .fl-cursos-section .course-badge {
        padding: 6px 14px;
        font-size: 11px;
    }

    .fl-cursos-section .course-info {
        padding: 24px;
    }

    .fl-cursos-section .course-name {
        font-size: 18px;
        min-height: 50px;
        margin-bottom: 8px;
    }

    .fl-cursos-section .course-professor {
        font-size: 14px;
        margin-bottom: 14px;
    }

    .fl-cursos-section .course-description {
        font-size: 14px;
        margin-bottom: 16px;
    }

    .fl-cursos-section .course-meta {
        gap: 12px;
        margin-bottom: 16px;
    }

    .fl-cursos-section .meta-item {
        font-size: 13px;
    }

    .fl-cursos-section .course-price {
        gap: 12px;
        margin-bottom: 16px;
    }

    .fl-cursos-section .price-old {
        font-size: 15px;
    }

    .fl-cursos-section .price-new {
        font-size: 30px;
    }

    .fl-cursos-section .course-cta {
        font-size: 15px;
        padding: 16px 26px;
        border-radius: 10px;
    }

    .fl-cursos-section .course-cta.soon {
        font-size: 12px;
    }
}

/* ========================================
   RESPONSIVE - ULTRA WIDE (1600px+)
   ======================================== */
@media (min-width: 1600px) {
    .fl-cursos-section .category-header {
        padding: 0 80px;
    }

    .fl-cursos-section .courses-grid {
        padding: 15px 80px 35px 80px;
    }

    .fl-cursos-section .course-card {
        flex: 0 0 400px;
        min-width: 400px;
        max-width: 400px;
    }

    .fl-cursos-section .course-image {
        height: 480px;
    }
}/* End custom CSS */
/* Start custom CSS */html, body {
    scroll-behavior: auto !important;
}/* End custom CSS */