/* Banner "Aprendendo o Terço com Santinhoz" (home e shortcode [banner_terco]). Tudo dentro de .szc-tb. Sem filtros CSS (Safari/iOS). */
.szc-tb-wrap { padding: 0 16px; }
.szc-tb-wrap[hidden] { display: none; }
.szc-tb, .szc-tb *, .szc-tb *::before, .szc-tb *::after { box-sizing: border-box; }
.szc-tb {
	position: relative; display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: stretch;
	max-width: 1120px; margin: 28px auto; overflow: hidden; border-radius: 28px; border: 5px solid #fff;
	background: linear-gradient(180deg, #4fc3ff 0%, #9fe3ff 62%, #dff6ff 100%);
	box-shadow: 0 12px 30px rgba(30, 110, 190, .35), 0 0 0 4px #3aa0ff; color: #3a2412; text-align: left;
	font-family: 'Baloo 2', 'Trebuchet MS', system-ui, sans-serif; line-height: 1.2;
}
.szc-tb::after { content: ''; position: absolute; left: -10%; right: -10%; bottom: -46px; height: 80px; border-radius: 50% 50% 0 0; background: linear-gradient(180deg, #7be07a, #3fb95a); box-shadow: 0 -5px 0 #a5f0a0; pointer-events: none; }
.szc-tb .szc-tb-txt { position: relative; z-index: 2; display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: clamp(22px, 4vw, 42px) clamp(20px, 4vw, 40px) clamp(40px, 5vw, 56px); }
.szc-tb .szc-tb-selo { align-self: flex-start; padding: 6px 14px; border-radius: 999px; background: #ff5d8f; color: #fff; font-weight: 800; font-size: 13px; box-shadow: 0 3px 0 #d12e63; }
.szc-tb .szc-tb-tit { margin: 0; padding: 0; background: none; border: 0; text-transform: none; letter-spacing: 0; font-weight: 800; font-size: clamp(28px, 4vw, 44px); line-height: 1.02; color: #fff; text-shadow: 0 3px 0 #1d6fd1, 0 6px 0 rgba(0, 0, 0, .1); -webkit-text-stroke: 1.5px #1d6fd1; paint-order: stroke fill; }
.szc-tb .szc-tb-sub { margin: 0; font-size: clamp(16px, 1.7vw, 20px); font-weight: 700; color: #1b4f86; background: rgba(255, 255, 255, .75); border-radius: 16px; padding: 8px 14px; align-self: flex-start; }
.szc-tb a.szc-tb-btn { align-self: flex-start; display: inline-block; margin-top: 4px; padding: 13px 28px; border-radius: 999px; background: #35c759; color: #fff !important; text-decoration: none !important; font-weight: 800; font-size: 21px; box-shadow: 0 5px 0 #1f9a3e, 0 10px 18px rgba(0, 0, 0, .22); transition: transform .12s; animation: szc-tb-pulsa 1.8s ease-in-out infinite; }
.szc-tb a.szc-tb-btn:hover { transform: translateY(-2px); }
.szc-tb a.szc-tb-btn:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }
.szc-tb .szc-tb-arte { position: relative; display: block; min-height: 270px; overflow: hidden; }
.szc-tb .szc-tb-arte img { position: absolute; display: block; height: auto; max-width: none; border: 0; border-radius: 0; margin: 0; }
.szc-tb .szc-tb-med { width: 19%; animation: szc-tb-bob 3s ease-in-out infinite; }
.szc-tb .m1 { left: 3%; top: 34%; } .szc-tb .m2 { left: 17%; top: 5%; animation-delay: .4s; } .szc-tb .m3 { right: 17%; top: 5%; animation-delay: .8s; } .szc-tb .m4 { right: 3%; top: 34%; animation-delay: 1.2s; } .szc-tb .szc-tb-arte .m5 { display: none; }
.szc-tb .szc-tb-nsra { width: 13%; left: 43.5%; top: 2%; animation: szc-tb-bob 3.4s ease-in-out infinite .2s; }
.szc-tb .szc-tb-tito { width: 40%; left: 30%; bottom: 14px; z-index: 1; transform-origin: 50% 100%; animation: szc-tb-pula 1.6s ease-in-out infinite; }
.szc-tb .szc-tb-cruz { width: 24%; left: 38%; bottom: 22px; animation: szc-tb-pula 1.8s ease-in-out infinite; }
.szc-tb .szc-tb-nuvem { position: absolute; width: 90px; height: 28px; border-radius: 30px; background: #fff; opacity: .9; }
.szc-tb .szc-tb-nuvem::before { content: ''; position: absolute; left: 14px; top: -16px; width: 42px; height: 42px; border-radius: 50%; background: #fff; }
.szc-tb .n1 { left: 4%; top: 28%; animation: szc-tb-vai 24s linear infinite; } .szc-tb .n2 { right: 2%; top: 62%; animation: szc-tb-vai 34s linear infinite -14s; }
@keyframes szc-tb-bob { 50% { transform: translateY(-10px) rotate(4deg); } }
@keyframes szc-tb-pula { 0%, 100% { transform: translateY(0) scaleY(1); } 50% { transform: translateY(-10px) scaleY(1.04); } }
@keyframes szc-tb-pulsa { 50% { transform: scale(1.06); } }
@keyframes szc-tb-vai { from { transform: translateX(-30px); } 50% { transform: translateX(40px); } to { transform: translateX(-30px); } }
@media (max-width: 760px) {
	.szc-tb { grid-template-columns: 1fr; margin: 20px auto; border-radius: 22px; border-width: 4px; }
	.szc-tb .szc-tb-arte { order: -1; min-height: 0; aspect-ratio: 16 / 10; }
	.szc-tb .szc-tb-txt { padding: 18px 18px 46px; }
	.szc-tb .szc-tb-tito { width: 34%; left: 33%; }
}
@media (prefers-reduced-motion: reduce) { .szc-tb *, .szc-tb a.szc-tb-btn { animation: none !important; } }

/* ===== Home: podcast e terço dividem a linha (metade para cada um) ===== */
.szc-bnr-linha { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 20px; max-width: 1120px; margin: 24px auto; padding: 0 16px; }
.szc-bnr-linha .szc-rb-wrap, .szc-bnr-linha .szc-tb-wrap { padding: 0; min-width: 0; }
.szc-bnr-linha .szc-rb, .szc-bnr-linha .szc-tb { grid-template-columns: minmax(0, 1fr); margin: 0; height: 100%; border-radius: 22px; }
/* imagem em cima, texto embaixo, bem enxuto */
.szc-bnr-linha .szc-rb .szc-rb-img { order: -1; min-height: 0; aspect-ratio: auto; height: 170px; }
.szc-bnr-linha .szc-rb .szc-rb-img::before { background: linear-gradient(180deg, rgba(27, 39, 74, 0) 70%, #1b274a 100%); }
.szc-bnr-linha .szc-rb .szc-rb-txt { padding: 14px 18px 20px; gap: 8px; }
.szc-bnr-linha .szc-rb .szc-rb-tit { font-size: clamp(22px, 2.3vw, 28px); }
.szc-bnr-linha .szc-rb .szc-rb-sub { font-size: 14px; }
.szc-bnr-linha .szc-rb a.szc-rb-btn { padding: 10px 22px; font-size: 16px; }
.szc-bnr-linha .szc-tb .szc-tb-arte { order: -1; min-height: 0; aspect-ratio: auto; height: 170px; }
.szc-bnr-linha .szc-tb .szc-tb-txt { padding: 12px 18px 38px; gap: 8px; }
.szc-bnr-linha .szc-tb .szc-tb-tit { font-size: clamp(22px, 2.3vw, 28px); }
.szc-bnr-linha .szc-tb .szc-tb-sub { font-size: 14px; padding: 6px 12px; }
.szc-bnr-linha .szc-tb a.szc-tb-btn { padding: 10px 22px; font-size: 17px; }
.szc-bnr-linha .szc-tb .szc-tb-nsra, .szc-bnr-linha .szc-tb .m5 { display: none; }
.szc-bnr-linha .szc-tb .szc-tb-tito, .szc-bnr-linha .szc-tb .szc-tb-cruz { left: 0; right: 0; margin: 0 auto; width: auto; height: 82%; bottom: 8px; }
.szc-bnr-linha .szc-tb .szc-tb-med { width: 17%; }

/* celular: cada banner vira uma faixa baixinha (figura de lado, título e botão) */
@media (max-width: 760px) {
	.szc-bnr-linha { grid-template-columns: minmax(0, 1fr); gap: 12px; margin: 16px auto; }
	.szc-bnr-linha .szc-rb, .szc-bnr-linha .szc-tb { grid-template-columns: 112px minmax(0, 1fr); border-radius: 18px; }
	.szc-bnr-linha .szc-rb .szc-rb-img, .szc-bnr-linha .szc-tb .szc-tb-arte { order: -1; height: auto; min-height: 112px; }
	.szc-bnr-linha .szc-rb .szc-rb-img::before { background: linear-gradient(90deg, rgba(46, 62, 107, 0) 70%, #2E3E6B 100%); }
	.szc-bnr-linha .szc-rb .szc-rb-txt, .szc-bnr-linha .szc-tb .szc-tb-txt { padding: 12px 14px 22px 8px; gap: 6px; justify-content: center; }
	.szc-bnr-linha .szc-rb .szc-rb-selo, .szc-bnr-linha .szc-tb .szc-tb-selo, .szc-bnr-linha .szc-rb .szc-rb-sub, .szc-bnr-linha .szc-tb .szc-tb-sub { display: none; }
	.szc-bnr-linha .szc-rb .szc-rb-tit, .szc-bnr-linha .szc-tb .szc-tb-tit { font-size: 20px; }
	.szc-bnr-linha .szc-rb a.szc-rb-btn, .szc-bnr-linha .szc-tb a.szc-tb-btn { padding: 9px 18px; font-size: 15px; margin-top: 2px; }
	.szc-bnr-linha .szc-tb .szc-tb-med { display: none; }
	.szc-bnr-linha .szc-tb .szc-tb-tito, .szc-bnr-linha .szc-tb .szc-tb-cruz { height: 86%; }
	.szc-bnr-linha .szc-tb::after { bottom: -52px; }
}
