@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700;800;900&family=Source+Serif+4:wght@700;900&display=swap');

:root {
    --pira-red: #E60000;
    --pira-blue: #0b3b8f;
    --pira-blue-dark: #072a6b;
    --pira-gold: #FFD700;
    --pira-bg: #f4f7f9;
    --font-serif: 'Source Serif 4', serif;
    --font-sans: 'Inter', sans-serif;
    --master-gradient: linear-gradient(135deg, #0b3b8f 0%, #072a6b 100%);
}

body { font-family: var(--font-sans); background: var(--pira-bg) !important; margin: 0; color: #333; overflow-x: hidden; }

/* CONTAINER BOXED - GLOBAL */
.v20-container { 
    max-width: 1320px; 
    margin: 0 auto !important; 
    padding: 0 40px !important; 
    background: #fff; 
    box-shadow: 0 10px 50px rgba(0,0,0,0.05); 
    display: block;
    width: 100%;
}

@media (max-width: 768px) {
    .v20-container { padding: 0 32px !important; }
}

/* HEADER & FOOTER UNIFICADOS */
.pira-top, .pira-footer-v21 { 
    background: var(--master-gradient) !important; 
    border-bottom: 3px solid var(--pira-gold) !important;
}

.pira-footer-v21 {
    border-bottom: none !important;
    border-top: 4px solid var(--pira-gold) !important;
    padding: 80px 0 40px;
    margin-top: 60px;
}

/* FORCE CENTER ALIGNMENT FOR ADS */
.pira-ad-premium-top, .pira-ad-slot-wrapper, .pira-ad-local {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin: 30px auto !important;
    text-align: center !important;
    overflow: visible !important;
    min-height: 50px;
    padding-bottom: 45px !important; /* Espaço para o rodapé do Google */
}

/* Google Slots and Iframes */
[id^="div-gpt-ad"], .adsbygoogle, [id^="div-gpt-ad"] iframe {
    margin: 0 auto !important;
    display: block !important;
    max-width: 100% !important;
}

/* Local Ads */
.pira-ad-local img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

/* HEADER PILLS */
.pira-pill {
    background: rgba(255,255,255,0.1) !important;
    backdrop-filter: blur(10px);
    border: 1px solid var(--pira-gold) !important;
    color: var(--pira-gold) !important;
    font-weight: 800;
    padding: 8px 15px;
    border-radius: 4px;
    text-decoration: none;
}

/* TITLES */
.entry-title { font-family: var(--font-serif); font-size: clamp(32px, 5vw, 56px); font-weight: 900; color: #111; }
.content-text { font-family: var(--font-serif); font-size: 21px; line-height: 1.8; text-align: justify !important; }
