/* =========================================================================
   1. SENAC YOUTUBE RECENTES
   ========================================================================= */
.senac-yt-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 20px; }
.senac-yt-card { border-radius: 16px; overflow: hidden; background: transparent; transition: transform 0.4s ease; }
.senac-yt-card:hover { transform: translateY(-5px); }
.senac-yt-card img { width: 100%; height: 180px; object-fit: cover; display: block; border-radius: 16px; }
.senac-yt-thumb-wrapper { position: relative; border-radius: 16px; overflow: hidden; }
.senac-yt-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 61, 104, 0.2); display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity 0.3s ease; }
.senac-yt-overlay::after { content: ""; display: block; width: 60px; height: 60px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 100 100' fill='none'%3E%3Cpath d='M57.865 41.3949C62.3437 45.0487 64.5833 46.8753 64.5833 49.9999C64.5833 53.1245 62.3437 54.9512 57.865 58.6049C56.6287 59.6137 55.4025 60.5632 54.2754 61.3545C53.2866 62.0487 52.1671 62.7666 51.0079 63.4716C46.5396 66.1887 44.3054 67.5474 42.3016 66.0432C40.2979 64.5391 40.1158 61.3899 39.7516 55.0924C39.6486 53.3112 39.5833 51.5653 39.5833 49.9999C39.5833 48.4345 39.6486 46.6887 39.7516 44.9074C40.1158 38.6097 40.2979 35.4608 42.3016 33.9566C44.3054 32.4524 46.5396 33.811 51.0079 36.5282C52.1671 37.2331 53.2866 37.9512 54.2754 38.6454C55.4025 39.4367 56.6287 40.3863 57.865 41.3949Z' stroke='white' stroke-opacity='0.9' stroke-width='3.75'/%3E%3Cpath d='M29.1666 13.9075C35.2953 10.3623 42.4108 8.33325 50 8.33325C73.0116 8.33325 91.6666 26.988 91.6666 49.9999C91.6666 73.0116 73.0116 91.6666 50 91.6666C26.9881 91.6666 8.33331 73.0116 8.33331 49.9999C8.33331 42.4108 10.3624 35.2952 13.9076 29.1666' stroke='white' stroke-opacity='0.9' stroke-width='3.75' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: center; }
.senac-yt-card:hover .senac-yt-overlay { opacity: 1; }
.senac-yt-title { color: #fff; font-family: 'Roboto', sans-serif; font-size: 1.1rem; font-weight: 700; margin-top: 15px; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

/* =========================================================================
   2. BARRA DE BUSCA GLOBAL (HERO)
   ========================================================================= */
.cage-hero-search-container { position: relative; width: 100%; max-width: 100%; margin: 0 auto; font-family: 'Roboto', sans-serif; }
.cage-search-input-wrapper { position: relative; width: 100%; border-radius: 50px; background: rgba(255, 255, 255, 0.15); backdrop-filter: blur(10px); border: 1px solid rgba(255, 255, 255, 0.4); transition: all 0.3s ease; box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1); z-index: 10001; }
.cage-search-input-wrapper:focus-within { background: rgba(255, 255, 255, 0.95); border-color: #f58220; box-shadow: 0 8px 32px rgba(245, 130, 32, 0.2); }
.cage-hero-search-input { width: 100%; height: 60px; padding: 0 50px 0 25px; border: none !important; background: transparent; color: #fff; font-size: 1.1rem; outline: none; border-radius: 50px; }
.cage-search-input-wrapper:focus-within .cage-hero-search-input { color: #003d68; }
.cage-hero-search-input::placeholder { color: rgba(255, 255, 255, 0.8); }
.cage-search-input-wrapper:focus-within .cage-hero-search-input::placeholder { color: #718096; }
.cage-search-icon { position: absolute; right: 20px; top: 50%; transform: translateY(-50%); color: #fff; width: 20px; height: 20px; pointer-events: none; transition: color 0.3s; padding: 20px; }
.cage-search-input-wrapper:focus-within .cage-search-icon { color: #f58220; }
.cage-search-clear { position: absolute; right: 50px; top: 50%; transform: translateY(-50%); background: none; border: none; color: #a0aec0; cursor: pointer; font-size: 16px; padding: 5px; z-index: 2; opacity: 0; pointer-events: none; transition: opacity 0.2s; }
.cage-search-clear.is-visible { opacity: 1; pointer-events: auto; }
.cage-search-clear:hover { color: #e53e3e; }
.cage-spin { animation: cageSpin 1s linear infinite; }
@keyframes cageSpin { 100% { transform: rotate(360deg); } }
.cage-search-dropdown { position: absolute; top: calc(100% + 15px); left: 0; width: 100%; background: #ffffff; border-radius: 16px; box-shadow: 0 20px 50px rgba(0,0,0,0.25); z-index: 10000; overflow: hidden; text-align: left; visibility: hidden; opacity: 0; transform: translateY(10px); pointer-events: none; transition: opacity 0.2s ease, transform 0.2s, visibility 0.2s; }
.cage-search-dropdown.is-active { visibility: visible; opacity: 1; transform: translateY(0); pointer-events: auto; }
.cage-search-panes { display: flex; flex-direction: row; width: 100%; }
.cage-search-pane { width: 50%; display: flex; flex-direction: column; background: #fff; }
.cage-search-pane:first-child { border-right: 1px solid #e2e8f0; }
.cage-pane-header { padding: 15px 20px; font-size: 16px; font-weight: 800; color: #003d68; background: #f8fafc; border-bottom: 1px solid #e2e8f0; text-transform: uppercase; letter-spacing: 0.5px; }
.cage-search-results-list { max-height: 480px; overflow-y: auto; padding: 10px; flex-grow: 1; }
.cage-search-results-list::-webkit-scrollbar { width: 6px; }
.cage-search-results-list::-webkit-scrollbar-track { background: #f1f1f1; border-radius: 8px; }
.cage-search-results-list::-webkit-scrollbar-thumb { background: #cbd5e0; border-radius: 8px; }
.cage-group-header { font-size: 11px; font-weight: 700; text-transform: uppercase; color: #004587; background: #e6f0f9; padding: 6px 12px; border-radius: 6px; margin: 10px 10px 5px 10px; display: inline-block; }
.cage-group-header:first-child { margin-top: 0; }
.cage-result-card { display: flex; align-items: flex-start; gap: 15px; padding: 12px; margin: 5px; border-radius: 12px; text-decoration: none !important; transition: background 0.2s ease, transform 0.2s ease; position: relative; }
.cage-result-card:hover { background: #f8fafc; transform: translateX(5px); }
.cage-result-card img { width: 80px; height: 80px; border-radius: 8px; object-fit: cover; flex-shrink: 0; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }
.cage-result-info { display: flex; flex-direction: column; flex-grow: 1; padding-right: 15px; }
.cage-result-info h4 { margin: 0 0 6px 0; font-size: 15px; font-weight: 700; color: #2d3748; line-height: 1.3; }
.cage-result-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 6px; }
.cage-result-meta span { font-size: 11px; color: #718096; display: flex; align-items: center; gap: 4px; }
.cage-hero-price-wrap { display: flex; flex-direction: column; margin-top: 4px; }
.cage-hero-price-value { font-family: "Poppins", sans-serif; font-size: 16px; font-weight: 800; color: #28a745; line-height: 1; }
.cage-hero-price-total { font-size: 10px; color: #718096; margin-top: 2px; }
.cage-news-excerpt { margin: 0 0 6px 0; font-size: 12px; color: #4a5568; line-height: 1.4; }
.cage-result-action { color: #cbd5e0; font-size: 20px; transition: color 0.2s, transform 0.2s; position: absolute; right: 15px; top: 50%; transform: translateY(-50%); }
.cage-result-card:hover .cage-result-action { color: #f58220; transform: translateY(-50%) translateX(4px); }
.cage-no-results { padding: 30px; text-align: center; color: #a0aec0; font-size: 14px; }
.cage-search-footer { display: flex; justify-content: space-between; align-items: center; padding: 12px 20px; background: #f8fafc; border-top: 1px solid #e2e8f0; margin-top: auto; }
.cage-view-all-link { color: #f58220; font-weight: 700; font-size: 13px; text-decoration: none; transition: color 0.2s; }
.cage-view-all-link:hover { color: #dd6b20; text-decoration: underline;}
.cage-search-pagination { display: flex; align-items: center; gap: 10px; }
.cage-search-pagination span { font-size: 12px; color: #718096; font-weight: 600; }
.cage-page-btn { background: #fff; border: 1px solid #cbd5e0; color: #4a5568; width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: all 0.2s; font-size: 11px; }
.cage-page-btn:hover:not(:disabled) { border-color: #f58220; color: #f58220; }
.cage-page-btn:disabled { opacity: 0.4; cursor: not-allowed; }

@media (max-width: 768px) {
    .cage-hero-search-input { font-size: 1rem; height: 50px; }
    .cage-search-dropdown { width: calc(100vw - 40px); left: 50%; transform: translateX(-50%) translateY(10px); }
    .cage-search-dropdown.is-active { transform: translateX(-50%) translateY(0); }
    .cage-pane-noticias { display: none !important; }
    .cage-search-panes { flex-direction: column; }
    .cage-search-pane { width: 100%; border-right: none; }
    .cage-search-pane:first-child { border-bottom: 4px solid #e2e8f0; } 
    .cage-search-results-list { max-height: 280px; }
    .cage-result-card img { width: 65px; height: 65px; }
}

/* =========================================================================
   3. HERO HOME (BENTO V9)
   ========================================================================= */
:root {
    --snc-v9-azul: #004A98;
    --snc-v9-azul-hover: #00336a;
    --snc-v9-azul-texto: #2F3542;
    --snc-v9-laranja: #DD6B00;
    --snc-v9-cinza: #58595B;
}

.snc-grid-v9 { display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; width: 100% !important; max-width: 1440px !important; margin: 0 auto !important; box-sizing: border-box !important; font-family: 'Open Sans', sans-serif !important; padding: 40px 0 !important; }
.snc-direita-v9 { display: flex !important; flex-direction: column !important; gap: 24px !important; width: 100% !important; }
.snc-subgrid-v9 { display: grid !important; grid-template-columns: 1fr !important; gap: 24px !important; width: 100% !important; height: 45% !important; }

@media (min-width: 1024px) {
    .snc-grid-v9 { grid-template-columns: 6fr 4fr !important; align-items: stretch !important; }
    .snc-subgrid-v9 { grid-template-columns: 1fr 1fr !important; height: 45% !important; }
}

.snc-card-v9 { background: #fff; border-radius: 20px; overflow: hidden; box-shadow: 0 4px 20px rgba(0,0,0,0.05); text-decoration: none; transition: transform 0.3s, box-shadow 0.3s; will-change: transform; transform: translateZ(0); }
.snc-card-v9:hover { transform: translateY(-4px); box-shadow: 0 8px 30px rgba(0,0,0,0.08); }

.snc-carrossel-v9 { position: relative; background: #000; display: flex; flex-direction: column; min-height: 500px; height: 100%; }
.snc-carrossel-track-v9 { display: flex; position: absolute; inset: 0; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.snc-carrossel-track-v9::-webkit-scrollbar { display: none; } 

.snc-slide-v9 { flex: 0 0 100%; min-width: 100%; position: relative; scroll-snap-align: center; display: flex; flex-direction: column; justify-content: flex-end; padding: 40px 40px 100px 40px; text-decoration: none; }
.snc-slide-img-v9 { position: absolute; top: 0; left: 0; width: 100% !important; height: auto !important; object-fit: cover !important; object-position: center !important; z-index: 1; display: block; }
.snc-slide-overlay-v9 { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,10,30,0.95) 0%, rgba(0,10,30,0.6) 40%, transparent 100%); z-index: 2; pointer-events: none;}
.snc-slide-content-v9 { position: relative; z-index: 3; }

.snc-meta-v9 { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.snc-tag-v9 { background: var(--snc-v9-laranja); color: #1a202c !important; font-size: 12px; font-weight: 800; padding: 4px 12px; border-radius: 20px; text-transform: uppercase; }
.snc-date-v9 { color: #e2e8f0; font-size: 13px; font-weight: 600; display: flex; align-items: center; gap: 4px; }
.snc-date-v9 svg { width: 14px; height: 14px; fill: currentColor; }
.snc-slide-content-v9 h2 { color: #fff; font-size: clamp(1.6rem, 3vw, 2.4rem); font-weight: 700; line-height: 1.2; margin: 0 0 12px 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.snc-slide-content-v9 p { color: #e2e8f0; font-size: 1rem; line-height: 1.5; margin: 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }

.snc-carrossel-ui-v9 { position: absolute; bottom: 0; left: 0; width: 100%; padding: 24px 40px; z-index: 10; display: flex; align-items: center; justify-content: space-between; pointer-events: none; }
.snc-btn-v9 { pointer-events: auto; display: inline-flex; align-items: center; justify-content: center; background: var(--snc-v9-azul); color: #fff; padding: 14px 28px; border-radius: 99px; font-weight: 700; text-decoration: none; transition: background 0.3s; }
.snc-btn-v9:hover { background: var(--snc-v9-azul-hover); color: #fff; }
.snc-dots-v9 { display: flex; gap: 16px; pointer-events: auto; }
.snc-dot-v9 { width: 12px; height: 12px; border-radius: 50%; background: rgba(255,255,255,0.4); border: none; cursor: pointer; transition: all 0.3s; padding: 0; position: relative;}
.snc-dot-v9::after { content: ''; position: absolute; top: -16px; bottom: -16px; left: -16px; right: -16px; min-width: 44px; min-height: 44px; }
.snc-dot-v9:hover { background: rgba(255,255,255,0.8); }
.snc-dot-v9.ativo { background: var(--snc-v9-laranja); width: 24px; border-radius: 12px; }

.snc-destaque-v9 { display: flex; flex-direction: column; border: 1px solid #e2e8f0;}
.snc-destaque-img-v9 { width: 100% !important; height: auto !important; min-height: 220px !important; object-fit: cover !important; object-position: center !important; display: block; }
.snc-destaque-body-v9 { padding: 24px; display: flex; flex-direction: column; flex-grow: 1; }
.snc-destaque-body-v9 h3 { color: var(--snc-v9-azul-texto); font-size: 1.3rem; font-weight: 700; line-height: 1.3; margin: 12px 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;}
.snc-destaque-body-v9 p { color: var(--snc-v9-cinza); font-size: 0.95rem; line-height: 1.5; margin: 0 0 16px 0; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden;}
.snc-link-v9 { color: var(--snc-v9-azul); font-weight: 700; font-size: 0.95rem; display: flex; align-items: center; gap: 4px; margin-top: auto; }

.snc-pequeno-v9 { padding: 20px; display: flex; flex-direction: column; border: 1px solid #e2e8f0; }
.snc-pequeno-v9 .snc-tag-v9 { background: transparent; border: 2px solid var(--snc-v9-azul); color: var(--snc-v9-azul) !important; font-size: 11px; padding: 2px 10px; align-self: flex-start; margin-bottom: 12px;}
.snc-pequeno-v9 h4 { color: var(--snc-v9-azul-texto); font-size: 1.1rem; font-weight: 700; line-height: 1.3; margin: 0 0 12px 0; }

@media (min-width: 1024px) {
    .snc-destaque-v9 { flex-direction: row; height: 55% !important; }
    .snc-destaque-img-v9 { width: 48% !important; height: auto !important; min-height: 100% !important; } 
    .snc-destaque-body-v9 { width: 52%; padding: 20px; justify-content: center; } 
}

@media (max-width: 768px) {
    .snc-carrossel-ui-v9 { flex-direction: column-reverse; gap: 20px; padding: 20px; align-items: center; }
    .snc-btn-v9 { width: 100%; text-align: center; }
    .snc-slide-v9 { padding: 30px 20px 140px 20px; }
}