.elementor-28 .elementor-element.elementor-element-e0c15ea{--display:flex;--min-height:500px;--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;--justify-content:center;--overlay-opacity:0.8;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:120px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:10;}.elementor-28 .elementor-element.elementor-element-e0c15ea:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-e0c15ea > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://radiot.fm/wp-content/uploads/2025/08/banner-contato.jpg");background-position:top center;background-size:cover;}.elementor-28 .elementor-element.elementor-element-e0c15ea::before, .elementor-28 .elementor-element.elementor-element-e0c15ea > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-e0c15ea > .e-con-inner > .elementor-background-video-container::before, .elementor-28 .elementor-element.elementor-element-e0c15ea > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-e0c15ea > .e-con-inner > .elementor-background-slideshow::before, .elementor-28 .elementor-element.elementor-element-e0c15ea > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:transparent;--background-overlay:'';background-image:linear-gradient(180deg, #5D2557 0%, #FE5E61 100%);}.elementor-28 .elementor-element.elementor-element-428fa7e{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.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-28 .elementor-element.elementor-element-1dbe717 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:45px;font-weight:600;color:var( --e-global-color-0144406 );}.elementor-28 .elementor-element.elementor-element-4003c03{--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;--justify-content:center;}.elementor-28 .elementor-element.elementor-element-6a54e46 .elementor-heading-title{color:var( --e-global-color-0144406 );}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-a139371 .elementor-icon-wrapper{text-align:center;}.elementor-28 .elementor-element.elementor-element-a139371.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-a139371.elementor-view-framed .elementor-icon, .elementor-28 .elementor-element.elementor-element-a139371.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-a139371.elementor-view-framed .elementor-icon, .elementor-28 .elementor-element.elementor-element-a139371.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-a139371 .elementor-icon{font-size:18px;}.elementor-28 .elementor-element.elementor-element-a139371 .elementor-icon svg{height:18px;}.elementor-28 .elementor-element.elementor-element-f1ca947 .elementor-heading-title{color:var( --e-global-color-0144406 );}.elementor-28 .elementor-element.elementor-element-e1e76be{--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:50px;--margin-bottom:250px;--margin-left:0px;--margin-right:0px;}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-accent );}.elementor-widget-nested-tabs.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > :is( .e-n-tab-title > .e-n-tab-title-text, .e-n-tab-title ){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-28 .elementor-element.elementor-element-b9b8941{--display:flex;}.elementor-28 .elementor-element.elementor-element-c5f0fab{--display:flex;}.elementor-28 .elementor-element.elementor-element-d1170d5{--display:flex;}.elementor-28 .elementor-element.elementor-element-dd5eaec{--display:flex;}.elementor-28 .elementor-element.elementor-element-bcd137f{--display:flex;}.elementor-28 .elementor-element.elementor-element-e9cc485{--display:flex;}.elementor-28 .elementor-element.elementor-element-21f8acf{--display:flex;}.elementor-28 .elementor-element.elementor-element-2029c44{--n-tabs-heading-wrap:wrap;--n-tabs-heading-overflow-x:initial;--n-tabs-title-white-space:initial;--n-tabs-title-border-radius:15px 15px 15px 15px;--n-tabs-title-color:var( --e-global-color-0144406 );--n-tabs-title-color-active:var( --e-global-color-primary );}.elementor-28 .elementor-element.elementor-element-2029c44 > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected='false']:not( :hover ){background:var( --e-global-color-secondary );background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%);}.elementor-28 .elementor-element.elementor-element-2029c44.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='false'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-0144406 );}.elementor-28 .elementor-element.elementor-element-2029c44.elementor-widget-n-tabs > .e-n-tabs > .e-n-tabs-heading > .e-n-tab-title[aria-selected="true"], .elementor-28 .elementor-element.elementor-element-2029c44.elementor-widget-n-tabs > .e-n-tabs[data-touch-mode='true'] > .e-n-tabs-heading > .e-n-tab-title[aria-selected="false"]:hover{background:var( --e-global-color-0144406 );}.elementor-28 .elementor-element.elementor-element-2029c44 [data-touch-mode="false"] .e-n-tab-title[aria-selected="false"]:hover{--n-tabs-title-color-hover:var( --e-global-color-primary );}body.elementor-page-28:not(.elementor-motion-effects-element-type-background), body.elementor-page-28 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:radial-gradient(at center center, var( --e-global-color-secondary ) 0%, var( --e-global-color-primary ) 100%);}/* Start custom CSS for container, class: .elementor-element-e0c15ea */.elementor-28 .elementor-element.elementor-element-e0c15ea {
  clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-3a84022 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-929024e */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-ba5d116 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f347a2a *//* Grade geral */
.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1.5rem;
    padding: 1rem;
}

/* Card */
.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 14px rgba(0,0,0,0.08);
    position: relative;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    cursor: pointer;
}

.programa-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.15);
}

/* Thumb quadrada */
.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f3f3f3;
}

.programa-thumb img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.programa-card:hover .programa-thumb img {
    transform: scale(1.05);
}

/* Tag Ao Vivo */
.tag-ao-vivo {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    background: linear-gradient(135deg, #e53935, #ff1744);
    color: #fff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.25);
    animation: pulse 1.2s infinite;
}

/* Animação pulsando */
@keyframes pulse {
    0%, 100% { transform: translateX(-50%) scale(1); }
    50% { transform: translateX(-50%) scale(1.1); }
}

/* Info */
.programa-info {
    padding: 12px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
    color: #222;
}

.programa-horario {
    font-size: 13px;
    color: #666;
}

/* Responsividade extra */
@media (max-width: 480px) {
    .grade-programas {
        grid-template-columns: 1fr 1fr;
        gap: 12px;
    }
    .programa-info h4 {
        font-size: 14px;
    }
    .programa-horario {
        font-size: 12px;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0cbbe6c */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-c4f5325 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-f025ec2 */.grade-programas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 20px;
}

.programa-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    position: relative;
}

.programa-thumb {
    position: relative;
    width: 100%;
    padding-top: 100%; /* quadrado */
    background: #f5f5f5;
}

.programa-thumb img {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.tag-ao-vivo {
    position: absolute;
    bottom: 8px;
    left: 50%;
    transform: translateX(-50%);
    background: #e53935;
    color: #fff;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    text-transform: uppercase;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}

.programa-info {
    padding: 10px;
}

.programa-info h4 {
    margin: 6px 0;
    font-size: 15px;
    font-weight: 600;
}

.programa-horario {
    font-size: 13px;
    color: #555;
}/* End custom CSS */