/* Education keeps its content and flows while sharing DVE's visual foundation. */
.educacao-portal {
  --edu-border: #dce9f2;
  --edu-panel: #ffffffbd;
  --edu-heading: #173c60;
  --edu-muted: #52697d;
  --edu-soft: #edf6fd;
  display: flex;
  flex-direction: column;
}
.educacao-header {width: 100%;}
.educacao-brand {min-width: 0;}
/* Crop the SVG's page margins for the header without changing the source asset. */
.educacao-logo {width: 180px; height: 90px; object-fit: fill; flex-shrink: 0;}
.educacao-main {width: 100%; flex: 1; min-width: 0;}
.educacao-page {min-width: 0; padding: 28px; background: var(--edu-panel); border: 1px solid var(--edu-border); border-radius: 24px; overflow-wrap: anywhere;}
.educacao-page .grid > * {min-width: 0;}
.educacao-home {padding: 0; background: transparent; border: 0;}
.educacao-hero {margin-bottom: 32px;}
.educacao-hero h1 {font-size: clamp(28px, 3.5vw, 42px); font-weight: 800; letter-spacing: -.045em; line-height: 1.25; text-align: left; color: var(--edu-heading);}
.educacao-hero p {text-align: left; margin: 0; max-width: 760px; color: var(--edu-muted);}
.educacao-home > section:not(.educacao-hero) > h2 {text-align: left; font-size: 22px; font-weight: 800; letter-spacing: -.035em; color: var(--edu-heading); margin-bottom: 22px;}
.educacao-portal .educacao-event-card {border-color: var(--edu-border); border-radius: 24px; box-shadow: 0 12px 40px #376b9810; min-width: 0;}
.educacao-event-card > .border-b {background: linear-gradient(115deg, #f3f8fd, #e2f1fb); padding: 22px; border-color: var(--edu-border);}
.educacao-event-card > .flex-1 {padding: 22px;}
.educacao-event-card > .border-t {padding: 16px 22px; background: #f5f9fd; border-color: var(--edu-border);}
.educacao-event-card h3 {color: var(--edu-heading); font-weight: 800; font-size: 17px; line-height: 1.5;}
.educacao-page :is(h1, h2, h3) {overflow-wrap: anywhere;}
.educacao-page > .flex {gap: 16px; flex-wrap: wrap;}
.educacao-page > .flex > .text-right {min-width: 0;}
.educacao-page :is(section.bg-white, form.bg-white) {border: 1px solid var(--edu-border); border-radius: 24px; box-shadow: 0 12px 40px #376b9810;}
.educacao-page section > .bg-blue-50 {background: linear-gradient(115deg, #f3f8fd, #e2f1fb); border-color: var(--edu-border);}
.educacao-page :is(.bg-gray-50.border, .bg-gray-50.rounded-lg) {background: var(--edu-soft); border-color: var(--edu-border); border-radius: 18px;}
.educacao-page :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]), select, textarea) {max-width: 100%; min-height: 44px; border-radius: 12px; border-color: #b9cfe0;}
.educacao-page :is(button, a).inline-flex {min-height: 44px; border-radius: 12px; justify-content: center;}
.educacao-page a.bg-blue-50 {color: #214a72; background: linear-gradient(115deg, #edf6fd, #e1effa); border: 1px solid var(--edu-border); padding: 10px 16px; font-weight: 700;}
.educacao-page a.bg-blue-50:hover {background: #dceefa; border-color: #85afd1;}
.educacao-page :is(.bg-blue-900, .bg-saude-azul) {background: #2453c2;}
.educacao-page :is(.bg-blue-900, .bg-saude-azul):hover {background: #1c429d;}
.educacao-page .flex.justify-end {flex-wrap: wrap;}
.educacao-portal :is(a, button, input, select, textarea):focus-visible {outline: 3px solid #1769b2; outline-offset: 4px;}
.educacao-portal #modalConfirmacao > div {border: 1px solid var(--edu-border); border-radius: 24px; max-height: calc(100dvh - 32px); overflow-y: auto;}
.educacao-confirmacao .border-dashed.overflow-hidden {border-color: #90b6d8; border-radius: 24px; box-shadow: 0 12px 40px #376b9810;}
.educacao-confirmacao .from-yellow-700 {background: linear-gradient(145deg, #214a72, #0583ad);}

html.dark .educacao-portal {
  --edu-border: #30485f;
  --edu-panel: #14263a;
  --edu-heading: #e0effc;
  --edu-muted: #b6c9da;
  --edu-soft: #1b3249;
}
html.dark .educacao-page a.bg-blue-50 {background: linear-gradient(115deg, #1b3249, #203c55); color: #e0effc;}
html.dark .educacao-page .bg-white,
html.dark .educacao-portal #modalConfirmacao > div {background: #14263a; border-color: var(--edu-border);}
html.dark .educacao-page :is(.bg-gray-50, .bg-gray-100),
html.dark .educacao-page section > .bg-blue-50,
html.dark .educacao-event-card > .border-b {background: #1b3249;}
html.dark .educacao-event-card > .border-t {background: #172c40;}
html.dark .educacao-portal :is(.text-gray-700, .text-gray-800, .text-gray-900) {color: #e0effc;}
html.dark .educacao-portal :is(.text-gray-500, .text-gray-600) {color: #b6c9da;}
html.dark .educacao-page :is(input, select, textarea) {color: #e0effc; background: #172c40; border-color: #55748e; color-scheme: dark;}
html.dark .educacao-page a.bg-blue-50:hover {background: #294d6a;}

@media (max-width: 540px) {
  .educacao-logo {width: 104px; height: 72px;}
  .educacao-page {padding: 20px 14px;}
  .educacao-home {padding: 0;}
  .educacao-hero {padding: 30px 23px;}
  .educacao-page > .flex > .text-right {text-align: left; width: 100%;}
  .educacao-confirmacao .grid-cols-12 {grid-template-columns: minmax(0, 1fr);}
  .educacao-confirmacao :is(.col-span-3, .col-span-9) {grid-column: auto;}
  .educacao-confirmacao .col-span-3 {border-right: 0; border-bottom: 2px dashed #ffffff80; padding: 20px;}
  .educacao-confirmacao .grid-cols-2 {grid-template-columns: minmax(0, 1fr);}
  .educacao-confirmacao .col-span-2 {grid-column: auto;}
}
@media print {
  .educacao-portal {display: block; background: #fff; color: #000;}
  .educacao-header, .educacao-portal > .dve-footer, .educacao-portal .dve-skip {display: none;}
  .educacao-page {padding: 0; border: 0; box-shadow: none;}
}
