/* Em Rede typography and visual refinements. */
:root{--font-body:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;--font-heading:'Manrope','Inter',sans-serif}
body{font-family:var(--font-body);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased;background:#fffefa}
h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;text-wrap:balance;letter-spacing:-.035em}
p{ text-wrap:pretty }button,input,textarea,select{font-family:inherit}
header{background:#fffefa;border-bottom:1px solid #e9e3ed;box-shadow:0 4px 25px #2b135205}
.topbar{background:#2b1352;color:#eee8f7;font-size:.68rem;letter-spacing:.09em}
.nav{min-height:110px;height:auto;padding-block:18px;gap:24px}
.nav nav{font-size:.78rem;gap:22px;line-height:1.35}
.nav nav a{position:relative;transition:color .2s}
.brand{gap:16px}.brand-crop{width:132px;height:80px;overflow:visible;border-radius:0;background:transparent}
.brand-crop img{position:static;display:block;width:100%;height:100%;max-width:100%;object-fit:contain}
.brand-caption{font-family:var(--font-heading);font-size:.74rem;line-height:1.5;font-weight:700}
.brand-caption small{font-family:var(--font-body);font-size:.55rem!important;letter-spacing:.1em!important}
.navcta{font-size:.73rem;padding:12px 16px}
.button{border-radius:10px;font-size:.83rem;font-weight:600;transition:background .2s,box-shadow .2s,transform .2s}
.button:hover{transform:translateY(-2px);box-shadow:0 7px 18px #2b135214}
.primary{background:#3b1b68;border-color:#3b1b68}.primary:hover{background:#502785}
.news-home{padding-top:48px;padding-bottom:56px}
.news-heading h1{font-size:clamp(1.9rem,1.4rem + 1.5vw,2.65rem);letter-spacing:-.04em}
.news-heading .eyebrow,.eyebrow,.news-tag{font-size:.65rem;letter-spacing:.13em}
.edition-label{font-size:.75rem}
.news-carousel{border-radius:22px;border-color:#e6deea;box-shadow:0 18px 50px #2b13520a}
.news-copy{padding:42px}.news-copy h2{font-size:clamp(2rem,1.5rem + 1.5vw,2.9rem);line-height:1.12;letter-spacing:-.045em}
.campaign-slide .news-copy h2{font-size:clamp(1.8rem,1.3rem + 1.5vw,2.45rem)}
.news-copy>p{font-size:.9rem;line-height:1.8;max-width:42ch}.news-copy .event-short-note{font-size:.8rem}
.event-date strong{font-size:.85rem}.event-date small{font-size:.75rem}.event-more{font-size:.75rem}
.news-copy .button{font-size:.8rem}.news-picture>img{border-radius:14px}
.campaign-benefits{font-size:.84rem}.campaign-art-caption{font-size:.7rem}.campaign-quote{font-size:1rem}
.carousel-controls{padding:16px 26px;background:#fffefa}.slide-counter{font-size:.8rem}
.slide-arrows button{border-color:#ded4e8;color:#3b1b68;transition:background .2s}.slide-arrows button:hover{background:#f0e9f8}
.home-help-action,.home-destinations>a,.edital-card,.module,.mural-card,.tutorial-player{border-radius:16px;border-color:#e7e0eb;box-shadow:0 6px 24px #2b135205}
.home-help-action h3{font-size:1.1rem}.home-help-action p,.home-destinations p{font-size:.85rem;line-height:1.7}
.home-help-action small{font-size:.65rem}.home-help-action:hover,.home-destinations>a:hover{box-shadow:0 10px 28px #2b135210}
.page-intro h1{font-size:clamp(2.2rem,1.6rem + 2vw,3.5rem)}
.page-intro>p:last-child,.tutorial-copy>p:not(.eyebrow),.guide-steps p,.edital-card p,.faq-section p,.mural-body p{font-size:.93rem;line-height:1.8}
.guide-header h2,.tutorial-copy h2{font-size:clamp(1.7rem,1.4rem + 1vw,2.2rem)}
.guide-steps h3,.mural-body h3{font-size:1.15rem}.tutorial-filter button{font-size:.85rem;border-radius:99px}
.table-scroll th{font-size:.75rem}.table-scroll td{font-size:.85rem}
.footer-bottom{font-size:.72rem}.footer-main .brand-crop{width:112px;height:72px}
@media(max-width:1000px){.nav{flex-wrap:wrap}.nav nav{gap:17px}.brand-caption{font-size:.7rem}}
@media(max-width:700px){.nav{padding-block:14px;gap:14px}.brand-crop{width:108px;height:68px}.brand-caption{font-size:.68rem}.brand-caption small{font-size:.5rem!important}.nav nav{font-size:.73rem;gap:22px;overflow-x:auto;justify-content:flex-start;width:100%;padding-bottom:8px}.news-home{padding-top:30px;padding-bottom:32px}.news-copy{padding:26px}.news-copy h2{font-size:2.1rem}.campaign-slide .news-copy h2{font-size:1.85rem}.news-copy>p{font-size:.88rem}.news-carousel{border-radius:16px}.news-heading .eyebrow{font-size:.6rem}.edition-label{font-size:.7rem}.carousel-controls{padding:12px 16px}.home-help-action h3{font-size:1.05rem}.footer-bottom{font-size:.65rem}}
@media(prefers-reduced-motion:reduce){.button:hover{transform:none}}
/* Brand color rhythm: plum, mint and warm orange. */
body{background:#f0eaf7}
header{background:#e4f0e9;border-bottom-color:#c8ddd1;box-shadow:0 5px 24px #2b13520a}
.topbar{background:linear-gradient(100deg,#2b1352,#4b246f 65%,#006b58)}
header .navcta{background:#3b1b68;color:#fff;border-color:#3b1b68}
main{background:radial-gradient(ellipse at 100% 0%,#dbece3 0,transparent 42%),radial-gradient(ellipse at 0% 55%,#fbe3cf 0,transparent 37%),#f0eaf7}
.news-heading{padding:28px 32px;border-radius:18px;background:linear-gradient(115deg,#30164f,#513174);color:#fff;box-shadow:0 12px 32px #31164f12;position:relative;overflow:hidden;border-left:5px solid #ed9c30}
.news-heading h1,.news-heading .eyebrow{color:#fff}.news-heading .eyebrow{color:#e3d5f2}.news-heading .edition-label{color:#e9e2f1}
.news-carousel{border-color:#dbd0e7;box-shadow:0 20px 45px #2b135212}
.news-slide{background:#fff2df}.news-slide.campaign-slide{background:#e0efe8}.news-slide.seminar-slide{background:#e2eaf8}.news-slide.edital-slide{background:#dfede5}
.news-slide:has(.video-news){background:#e9def4}
.carousel-controls{background:#f6f0fb;border-top-color:#dbd0e7}
.home-help{border-top:0;padding-block:28px 36px}.home-help-action{background:#e2d2f0;border-color:#c9b1df;border-top:4px solid #70449c}
.home-help-action.green-help{background:#cfe7db;border-color:#afd2bf;border-top-color:#00785e}
.home-destinations>a:nth-child(1){background:#3b1b68;border-color:#3b1b68}
.home-destinations>a:nth-child(1) :is(h3,p,span,b){color:#fff}
.home-destinations>a:nth-child(2){background:#ffdfbd;border-color:#efc291}
.home-destinations>a:nth-child(2) :is(h3,p,span,b){color:#69350f}
.home-destinations>a:nth-child(3){background:#cde7df;border-color:#a9cfc2}
.home-destinations>a:nth-child(3) :is(h3,p,span,b){color:#175345}
.page-intro{padding-top:32px;padding-bottom:34px;border-bottom:2px solid #d7c6e5}
.edital-card.purple-card{background:#e6d9f2;border-top:5px solid #68408c}.edital-card.cyan-card{background:#d6ebe0;border-top:5px solid #00785e}
.module{background:#e6dbf1;border-top:3px solid #8b63aa}.module:nth-child(3n+2){background:#dcece2;border-top-color:#00785e}.module:nth-child(3n){background:#fbe2c9;border-top-color:#dd7a34}
.quick{background:#e4d7ee;border-color:#cfbddf}.purpose{background:#d2e6dc}
.tutorial-section{background:#e3d6ef}.tutorial-player{background:#f5effa}.guide-steps li{background:#d8eade;border-color:#bbd6c5}
.faq details{background:#e4d8ef;border:1px solid #d0bddf;border-radius:12px;padding-inline:20px;margin-bottom:12px}
.table-scroll{background:#f8f4fb}.table-scroll thead{background:#dfccec}.table-scroll tbody tr:nth-child(even){background:#ede4f5}
.closing{background:#3b1b68;color:#fff}.closing :is(h2,p,.eyebrow){color:#fff}
footer{background:#2b1352;color:#eae0f3;border-top:4px solid #e88b32}
footer .brand-caption,footer .brand-caption small,footer .footer-main>strong,footer .footer-main>strong>span,footer .footer-bottom{color:#eae0f3}
footer .brand-crop{background:#ede6f4;border-radius:12px;padding:9px;width:130px;height:80px}
.footer-main .brand-crop img{width:100%;height:100%;position:static;object-fit:contain}
.footer-bottom{border-top-color:#ffffff26}
@media(max-width:700px){.news-heading{padding:24px 22px;border-radius:15px}.news-heading .edition-label{margin-bottom:0}.home-help{padding-top:8px}.page-intro{padding-bottom:25px}}

.flow-lead{max-width:65ch;color:#62546e}.flow-callout{margin-block:28px;padding:25px 28px;border-radius:16px;background:#e2d1ef;border-left:4px solid #70449c}.flow-callout h3{font-size:1.15rem;margin:0 0 15px}.flow-callout p{font-size:.92rem;line-height:1.8;margin:0}.flow-branches{display:grid;grid-template-columns:1fr 1fr;gap:24px}.flow-branches strong{display:block;color:#3b1b68;margin-bottom:6px}.flow-reminder{margin-top:18px!important;padding-top:15px;border-top:1px solid #c7b0d8}.flow-steps{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0;list-style:none;counter-reset:none;margin:30px 0}.flow-steps li{display:flex;gap:18px;padding:24px;border-radius:16px;background:#f8f2fc;border:1px solid #d7c5e4}.flow-number{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:#3b1b68;color:white;font-weight:700}.flow-steps h3{font-size:1.05rem;margin:3px 0 10px}.flow-steps p{font-size:.9rem;line-height:1.8;color:#62546e;margin:0}.cadastramento-flow .flow-callout{background:#cfe6db;border-color:#00785e}.cadastramento-flow .flow-number{background:#00654e}.cadastramento-flow .flow-steps li{background:#e6f1eb;border-color:#bbd6c5}.flow-art{margin:32px 0 0;background:#f7f2fa;border:1px solid #d7c5e4;border-radius:16px;overflow:hidden}.flow-art img{display:block;width:100%;height:auto}.flow-art figcaption{padding:16px 20px;font-size:.8rem;color:#3b1b68}.flow-art figcaption a{font-weight:600;text-decoration:underline;margin-left:8px}@media(max-width:700px){.flow-steps,.flow-branches{grid-template-columns:1fr}.flow-callout{padding:22px}.flow-steps li{padding:20px;gap:14px}.flow-art figcaption a{display:block;margin-left:0;margin-top:8px}}

.edital-contacts{padding-top:42px;padding-bottom:56px}.contact-heading{max-width:660px;margin-bottom:28px}.contact-heading h2{margin-bottom:12px}.contact-heading>p:last-child{font-size:.95rem;color:#65556e}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-card{position:relative;overflow:hidden;background:#eee2f7;border:1px solid #d7c0e7;border-top:4px solid #714296;padding:30px;border-radius:22px;box-shadow:0 12px 32px #2b13520a}.contact-cadastramento{background:#d9eee4;border-color:#b9d9ca;border-top-color:#00785e}.contact-card-top{display:flex;align-items:center;gap:16px;margin-bottom:24px}.contact-avatar{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:#3b1b68;color:white;font-family:var(--font-heading);font-weight:700;font-size:1.1rem;flex-shrink:0}.contact-cadastramento .contact-avatar{background:#00654e}.contact-edital{font-size:.76rem;font-weight:600;color:#4a256c}.contact-cadastramento .contact-edital{color:#005d47}.contact-role{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:#65556e;margin:0 0 5px}.contact-card h3{font-size:1.65rem;margin:0 0 18px;color:#30164f}.contact-phone{display:block;font-size:1.05rem;font-weight:600;color:#3b1b68;margin-bottom:6px}.contact-email{display:block;font-size:.86rem;color:#574365;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.contact-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.contact-actions .button{font-size:.78rem;gap:12px;padding:12px 15px;min-height:44px}.contact-whatsapp{background:#00654e;color:#fff;border-color:#00654e}.contact-whatsapp:hover{background:#004c3b}.contact-mail{background:#fffaf5;color:#3b1b68;border-color:#d1bfdd}.contact-footnote{font-size:.8rem;color:#65556e;margin-top:22px;max-width:80ch}#topic-dialog:has(.contact-grid){width:min(960px,calc(100% - 32px));max-width:960px}#topic-dialog .contact-grid{margin-block:25px}#topic-dialog .contact-card{padding:24px}#topic-dialog .contact-card h3{font-size:1.45rem}#topic-dialog .contact-email{font-size:.8rem}@media(max-width:700px){.contact-grid{grid-template-columns:1fr;gap:18px}.contact-card{padding:24px}.contact-card h3{font-size:1.5rem}.contact-actions .button{flex:1 1 auto}.edital-contacts{padding-block:32px 42px}}

.contact-avatar.contact-portrait{width:104px;height:104px;flex:0 0 104px;border-radius:50%;overflow:hidden;padding:0;border:4px solid #fff;outline:2px solid #b494d0;box-shadow:0 8px 22px #3b1b6820;background:#e7d9f0}.contact-cadastramento .contact-portrait{outline-color:#77b59a;box-shadow:0 8px 22px #00654e20}.contact-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 30%;transform:scale(1.5);transform-origin:50% 38%}.contact-cadastramento .contact-portrait img{object-position:50% 25%;transform:scale(1.65);transform-origin:50% 27%}.contact-card-top{gap:22px;min-height:108px}.contact-edital{font-family:var(--font-heading);font-size:.9rem;line-height:1.5;max-width:20ch}@media(max-width:700px){.contact-avatar.contact-portrait{width:88px;height:88px;flex-basis:88px}.contact-card-top{gap:18px;min-height:92px}}

/* Hélio: center the face inside a fixed circular crop. */
.contact-credenciamento .contact-portrait{position:relative}
.contact-credenciamento .contact-portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 18%;transform:scale(1.32);transform-origin:center}

/* Expanded portal navigation */
@media(min-width:1001px) and (max-width:1350px){.nav{gap:18px}.nav nav{gap:15px;font-size:.74rem}.navcta{padding:12px}.brand-caption{font-size:.68rem}}
@media(min-width:1001px) and (max-width:1350px){.nav nav{gap:12px;font-size:.70rem}.nav>.brand,.navcta{flex-shrink:0}.navcta{white-space:nowrap}.brand-caption{white-space:nowrap}}
