/* =========================================================
   EVENTOS PALADINI — PÁGINA PÚBLICA
========================================================= */
.evento-publico{max-width:1380px;margin:0 auto;padding:28px 24px 60px;color:#0f172a}
.evento-publico *{box-sizing:border-box}
.evento-publico-alerta{margin:0 0 16px;padding:13px 15px;border-radius:14px;border:1px solid;font-size:13px;font-weight:800}
.evento-publico-alerta.sucesso{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.evento-publico-alerta.erro{background:#fff1f2;border-color:#fecdd3;color:#9f1239}
/* =========================================================
   CABEÇALHO DO EVENTO
   Com imagem: capa integrada ao lado direito, sem prejudicar a leitura.
   Sem imagem: fundo claro com composição visual própria da Paladini.
========================================================= */
.evento-publico-hero{
    position:relative;
    isolation:isolate;
    min-height:360px;
    overflow:hidden;
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(330px,.72fr);
    gap:34px;
    align-items:center;
    padding:40px 38px;
    border:1px solid #dbe7e0;
    border-radius:30px;
    background:
        radial-gradient(circle at 93% 8%,rgba(34,197,94,.18),transparent 29%),
        linear-gradient(116deg,#ffffff 0%,#fbfdfc 57%,#e9faef 100%);
    box-shadow:0 20px 52px rgba(15,23,42,.09);
    color:#0f172a;
}

.evento-publico-hero::after{
    content:"";
    position:absolute;
    right:-120px;
    bottom:-180px;
    width:390px;
    height:390px;
    border-radius:50%;
    background:rgba(34,197,94,.08);
    z-index:0;
    pointer-events:none;
}

/* A capa ocupa apenas a área direita e desaparece suavemente antes do texto. */
.evento-publico-hero-arte{
    position:absolute;
    inset:0 0 0 auto;
    z-index:0;
    width:58%;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    filter:saturate(.88) contrast(.96);
    -webkit-mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 17%,rgba(0,0,0,.86) 48%,#000 100%);
    mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.18) 17%,rgba(0,0,0,.86) 48%,#000 100%);
    pointer-events:none;
}

.evento-publico-hero.com-capa::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:1;
    background:linear-gradient(90deg,#ffffff 0%,rgba(255,255,255,.98) 34%,rgba(255,255,255,.72) 58%,rgba(236,253,245,.16) 100%);
    pointer-events:none;
}

/* Composição elegante para eventos sem imagem de capa. */
.evento-publico-hero-fallback{
    position:absolute;
    inset:0 0 0 auto;
    z-index:0;
    width:48%;
    overflow:hidden;
    pointer-events:none;
}

.evento-publico-hero-fallback::before{
    content:"";
    position:absolute;
    inset:12% 7% 12% 17%;
    border:1px solid rgba(22,163,74,.12);
    border-radius:38px;
    transform:rotate(-7deg);
    background:
        linear-gradient(135deg,rgba(255,255,255,.72),rgba(220,252,231,.38)),
        repeating-linear-gradient(90deg,rgba(22,163,74,.05) 0 1px,transparent 1px 24px),
        repeating-linear-gradient(0deg,rgba(22,163,74,.05) 0 1px,transparent 1px 24px);
}

.evento-publico-hero-fallback span{
    position:absolute;
    display:block;
    border-radius:50%;
    background:rgba(34,197,94,.12);
    box-shadow:0 0 0 18px rgba(34,197,94,.045);
}

.evento-publico-hero-fallback span:nth-child(1){width:120px;height:120px;right:12%;top:9%}
.evento-publico-hero-fallback span:nth-child(2){width:72px;height:72px;right:38%;bottom:13%}
.evento-publico-hero-fallback span:nth-child(3){width:44px;height:44px;right:8%;bottom:20%}

.evento-publico-hero-conteudo{
    position:relative;
    z-index:3;
    min-width:0;
    max-width:780px;
}

.evento-publico-selo{
    display:inline-flex;
    align-items:center;
    min-height:32px;
    padding:6px 13px;
    border:1px solid #bbf7d0;
    border-radius:999px;
    background:rgba(236,253,245,.94);
    color:#166534;
    box-shadow:0 7px 18px rgba(22,101,52,.08);
    font-size:10px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.1em;
}

.evento-publico-hero h1{
    max-width:720px;
    margin:17px 0 11px;
    color:#166534;
    font-size:clamp(40px,4.6vw,64px);
    line-height:1;
    letter-spacing:-.048em;
    overflow-wrap:anywhere;
}

.evento-publico-hero p{
    max-width:680px;
    margin:0;
    color:#526174;
    font-size:16px;
    line-height:1.58;
    font-weight:600;
}

.evento-publico-dados{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:25px;
}

.evento-publico-dados>div{
    min-width:142px;
    max-width:230px;
    padding:11px 13px;
    border:1px solid rgba(207,224,213,.95);
    border-radius:14px;
    background:rgba(255,255,255,.88);
    box-shadow:0 7px 18px rgba(15,23,42,.045);
    backdrop-filter:blur(8px);
}

.evento-publico-dados span,
.evento-publico-dados strong,
.evento-publico-dados small{
    display:block;
}

.evento-publico-dados span{
    color:#16803b;
    font-size:9px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.evento-publico-dados strong{
    margin-top:4px;
    color:#0f172a;
    font-size:12px;
    line-height:1.35;
}

.evento-publico-dados small{
    margin-top:3px;
    color:#64748b;
    font-size:9px;
    font-weight:750;
}

.evento-publico-indicadores{
    position:relative;
    z-index:3;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-self:center;
}

.evento-publico-indicador,
.evento-publico-contagem{
    min-width:0;
    min-height:118px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:19px;
    border:1px solid rgba(219,229,234,.98);
    border-radius:21px;
    background:rgba(255,255,255,.94);
    box-shadow:0 14px 32px rgba(15,23,42,.09);
    backdrop-filter:blur(10px);
}

.evento-publico-indicador strong,
.evento-publico-contagem strong{
    display:block;
    color:#16a34a;
    font-size:31px;
    line-height:1;
    letter-spacing:-.8px;
}

.evento-publico-indicador span,
.evento-publico-contagem span{
    display:block;
    order:-1;
    margin-bottom:9px;
    color:#64748b;
    font-size:10px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.09em;
}

.evento-publico-indicador small,
.evento-publico-contagem small{
    display:block;
    margin-top:7px;
    color:#7c8a9b;
    font-size:10px;
    line-height:1.4;
}

.evento-publico-contagem{
    grid-column:1 / -1;
    min-height:106px;
    background:rgba(240,253,244,.96);
    border-color:#bbf7d0;
}

.evento-publico-contagem strong{
    color:#166534;
    font-size:clamp(24px,2.3vw,34px);
    letter-spacing:-.7px;
}

.evento-publico-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:20px;align-items:start;margin-top:22px}.evento-publico-conteudo{display:grid;gap:17px}.evento-publico-box,.evento-publico-participar,.evento-publico-regulamento{background:#fff;border:1px solid #dfe7e2;border-radius:22px;padding:24px;box-shadow:0 12px 32px rgba(15,23,42,.07)}
.evento-publico-mini{display:block;color:#16803b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.1em}.evento-publico-box h2,.evento-publico-participar h2{margin:6px 0 12px;color:#0f172a;font-size:26px;letter-spacing:-.6px}.evento-texto-formatado{color:#475569;font-size:14px;line-height:1.75}.evento-publico-muted{color:#64748b}
.evento-publico-premios{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.evento-publico-premio{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid #e1e8e4;border-radius:16px;background:#fbfdfc}.evento-publico-premio-img{width:92px;height:84px;border-radius:13px;background:#eef4f0;display:grid;place-items:center;overflow:hidden;color:#64748b;font-size:11px;font-weight:900}.evento-publico-premio-img img{width:100%;height:100%;object-fit:contain;padding:6px}.evento-publico-premio span,.evento-publico-premio strong,.evento-publico-premio p{display:block}.evento-publico-premio span{font-size:9px;color:#16803b;font-weight:950;text-transform:uppercase}.evento-publico-premio strong{margin-top:3px;font-size:15px}.evento-publico-premio p{margin:5px 0 0;color:#64748b;font-size:11px;line-height:1.35}
.evento-publico-regulamento summary{cursor:pointer;color:#14532d;font-size:14px;font-weight:900}.evento-publico-regulamento>div{margin-top:16px;padding-top:15px;border-top:1px solid #e5ebe7;color:#475569;font-size:13px;line-height:1.7}
.evento-publico-participar{position:sticky;top:100px}.evento-publico-participar>p{color:#64748b;font-size:13px;line-height:1.55}.evento-publico-participar form{display:grid;gap:10px;margin-top:15px}.evento-publico-participar label:not(.evento-publico-check){font-size:12px;font-weight:900;color:#334155}.evento-publico-participar input[type=text]{width:100%;min-height:44px;border:1px solid #d7e1db;border-radius:12px;padding:10px 12px}.evento-publico-check{display:flex!important;align-items:flex-start!important;gap:9px!important;padding:11px!important;border:1px solid #dfe7e2!important;border-radius:13px!important;background:#f8faf9!important;color:#475569!important;text-transform:none!important;font-size:11px!important;line-height:1.45!important}.evento-publico-check input{width:17px!important;height:17px!important;min-width:17px!important;margin:1px 0 0!important;accent-color:#16803b}.evento-publico-check a{color:#14532d;font-weight:900}.evento-publico-participar form button,.evento-publico-btn{width:100%;min-height:47px;border:0;border-radius:13px;display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:13px;font-weight:950;cursor:pointer}.evento-publico-participar form button,.evento-publico-btn.principal{background:#16803b;color:#fff;box-shadow:0 10px 22px rgba(22,128,59,.18)}.evento-publico-btn.secundario{margin-top:9px;background:#f7faf8;color:#14532d;border:1px solid #cfe0d5}
.evento-participacao-confirmada{text-align:center}.evento-participacao-confirmada span{display:inline-flex;padding:6px 10px;border-radius:999px;background:#dcfce7;color:#166534;font-size:10px;font-weight:950;text-transform:uppercase}.evento-participacao-confirmada h2{margin-top:13px}.evento-participacao-confirmada p{color:#64748b}.evento-participacao-confirmada>strong{display:block;margin:19px 0 3px;color:#14532d;font-size:46px;letter-spacing:.06em}.evento-participacao-confirmada>small{display:block;color:#64748b;font-weight:800}.evento-participacao-confirmada em{display:block;margin-top:14px;padding:9px;border-radius:10px;background:#fffbeb;color:#92400e;font-size:11px;font-style:normal;font-weight:800}
.evento-publico-periodo{display:grid;grid-template-columns:auto 1fr;gap:7px 11px;margin-top:16px;padding:12px;border-radius:13px;background:#f8faf9}.evento-publico-periodo span{color:#64748b;font-size:10px;text-transform:uppercase;font-weight:900}.evento-publico-periodo strong{font-size:11px}
.evento-publico-vencedores{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evento-publico-vencedores div{padding:13px;border:1px solid #dfe7e2;border-radius:14px;background:#fafcfb}.evento-publico-vencedores span,.evento-publico-vencedores strong,.evento-publico-vencedores small{display:block}.evento-publico-vencedores span{font-size:9px;color:#16803b;text-transform:uppercase;font-weight:950}.evento-publico-vencedores strong{margin-top:4px;font-size:15px}.evento-publico-vencedores small{margin-top:3px;color:#64748b;font-size:10px}
.evento-publico-vazio{max-width:720px;margin:80px auto;padding:42px;text-align:center;border:1px solid #dfe7e2;border-radius:24px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.08)}.evento-publico-vazio strong{display:block;font-size:24px}.evento-publico-vazio p{color:#64748b}.evento-publico-vazio a{display:inline-flex;padding:11px 15px;border-radius:12px;background:#16803b;color:#fff;text-decoration:none;font-weight:900}
@media(max-width:1000px){
    .evento-publico-hero{
        grid-template-columns:1fr;
        gap:24px;
        min-height:0;
        padding:34px 28px;
    }
    .evento-publico-hero-arte{
        width:100%;
        opacity:.16;
        -webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 42%,transparent 100%);
        mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.72) 42%,transparent 100%);
    }
    .evento-publico-hero.com-capa::before{
        background:linear-gradient(180deg,rgba(255,255,255,.66) 0%,rgba(255,255,255,.94) 48%,#ffffff 100%);
    }
    .evento-publico-hero-fallback{width:70%;opacity:.72}
    .evento-publico-indicadores{
        width:100%;
        max-width:650px;
    }
    .evento-publico-grid{grid-template-columns:1fr}
    .evento-publico-participar{position:static}
    .evento-publico-premios{grid-template-columns:1fr 1fr}
}

@media(max-width:680px){
    .evento-publico{padding:14px 13px 42px}
    .evento-publico-hero{
        padding:25px 19px;
        border-radius:22px;
        gap:20px;
    }
    .evento-publico-hero-arte{
        height:46%;
        opacity:.19;
        background-position:center top;
    }
    .evento-publico-hero-fallback{width:100%;opacity:.48}
    .evento-publico-hero h1{
        font-size:clamp(34px,11vw,48px);
    }
    .evento-publico-hero p{font-size:14px}
    .evento-publico-dados{
        display:grid;
        grid-template-columns:1fr 1fr;
    }
    .evento-publico-dados>div{
        width:100%;
        min-width:0;
        max-width:none;
    }
    .evento-publico-indicadores{
        grid-template-columns:1fr 1fr;
        gap:9px;
    }
    .evento-publico-indicador,
    .evento-publico-contagem{
        min-height:104px;
        padding:16px 14px;
        border-radius:17px;
    }
    .evento-publico-indicador strong{font-size:27px}
    .evento-publico-indicador span,
    .evento-publico-contagem span{font-size:9px}
    .evento-publico-indicador small{display:none}
    .evento-publico-contagem{
        grid-column:1 / -1;
        min-height:96px;
    }
    .evento-publico-premios,.evento-publico-vencedores{grid-template-columns:1fr}
    .evento-publico-box,.evento-publico-participar,.evento-publico-regulamento{padding:18px;border-radius:18px}
    .evento-publico-premio{grid-template-columns:72px 1fr}
    .evento-publico-premio-img{width:72px;height:70px}
}

@media(max-width:430px){
    .evento-publico-dados,
    .evento-publico-indicadores{
        grid-template-columns:1fr;
    }
    .evento-publico-contagem{grid-column:auto}
}
