.brand img{display:block;object-fit:contain}.header-pill{font-size:12px;font-weight:600;color:#647084;padding:8px 12px;border:1px solid #dfe3ef;border-radius:100px}
.public-page{--purple:#3155ed;--ink:#202535;--line:#e5e8f2;--muted:#778095;background:#f7f8fc;color:var(--ink);font-family:'Segoe UI',Arial,sans-serif}
.public-page .shell{max-width:1080px;padding:0 32px}.public-page header{height:92px;border:0}.public-page main{padding:36px 0 70px}.public-page .hero{max-width:690px;margin:0 auto 42px;text-align:center;background:transparent;padding:0}.hero-label{font-size:12px;font-weight:650;display:inline-flex;gap:7px;align-items:center;background:#e9edff;color:#3957cb;padding:8px 12px;border-radius:100px;margin-bottom:22px}.hero-label>span{width:5px;height:5px;background:#3155ed;border-radius:50%}.hero h1{font-size:clamp(44px,5.4vw,66px);line-height:1.04;letter-spacing:-2.8px;font-weight:750;margin:0 auto 20px;max-width:680px;color:#202535}.hero-description{font-size:16px;line-height:1.7;color:#70798b;margin:0 auto;max-width:490px}.public-page .enrollment{display:block;max-width:680px;margin:auto}.public-page .form-card{border:1px solid #e7eaf2;background:#fff;border-radius:24px;padding:36px 40px;box-shadow:0 14px 50px #202c5a04;min-width:0}.public-page .form-card h2{font-size:25px;font-weight:700;letter-spacing:-.7px;color:#242b3b;margin:0 0 8px}.form-mini{font-size:12px;color:#8a92a2;margin:0 0 30px;line-height:1.5}.public-page legend{font-size:13px;font-weight:700;letter-spacing:.1px;color:#737d92;margin:0 0 18px}.public-page fieldset{border:0;padding:0}.public-page fieldset+fieldset{margin-top:28px;padding:0;border:0}.public-page .fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 18px}.public-page label{font-size:13px;font-weight:600;color:#414b60}.public-page input,.public-page select{display:block;width:100%;min-width:0;height:54px;font-size:16px;font-weight:400;border:1px solid #e7eaf2;background:#f9faff;border-radius:11px;padding:12px 14px;color:#28324a;margin-top:8px;box-shadow:none;transition:border-color .15s,background .15s}.public-page input::placeholder{font-size:14px;font-weight:400;color:#9aa2b2}.public-page input:hover,.public-page select:hover{border-color:#c8d0e5}.public-page input:focus,.public-page select:focus{outline:3px solid #3155ed12;background:#fff;border-color:#6b83f5}.public-page .consent{font-size:12px;font-weight:400;line-height:1.7;color:#7b8496;padding:0;background:transparent;border:0;border-radius:0;display:flex;gap:10px;align-items:center;margin:26px 0 22px;cursor:pointer;min-height:30px}.public-page .consent input{flex:none;width:19px;min-width:19px;height:19px;margin:0;padding:0;accent-color:#3155ed;box-shadow:none}.public-page .submit{display:flex;align-items:center;justify-content:center;gap:14px;min-height:56px;width:100%;border:1px solid #3155ed;border-radius:12px;background:#3155ed;box-shadow:0 5px 14px #3155ed1a;padding:16px 18px;color:#fff;font-size:16px;font-weight:650;letter-spacing:-.2px}.public-page .submit svg{width:20px;height:20px}.public-page .submit:hover{background:#2446d4;filter:none}.public-page .submit:disabled{opacity:.65}.public-page .receipt{background:#f3f5ff;border-radius:12px;color:#4058ab}.public-page .receipt strong{color:#8790a5}.public-page .success-mark{background:#eff3ff;color:#3155ed}.public-page .sub{font-size:14px;line-height:1.7;color:#778095}.public-page .secondary{border:1px solid #dfe4f2;background:#fff;color:#425bd0;border-radius:11px}.public-page .error{font-size:13px;border-radius:10px}.public-page .note{font-size:12px;color:#8a92a2}.public-page .form-card:has(#receipt-status){padding-top:36px}.public-page :focus-visible{outline:3px solid #7489f3;outline-offset:3px}
@media(max-width:740px){.public-page .shell{padding:0 20px}.public-page header{height:76px}.public-page header .brand img{width:133px;height:auto}.header-pill{font-size:10px;padding:7px 10px}.public-page main{padding:24px 0 36px}.public-page .hero{text-align:left;margin:0 3px 30px}.hero-label{font-size:11px;padding:7px 11px;margin-bottom:18px}.hero h1{font-size:44px;line-height:1.06;letter-spacing:-1.9px;max-width:355px;margin:0 0 16px}.hero-description{font-size:14px;line-height:1.7;margin:0;max-width:320px}.public-page .form-card{border-radius:20px;padding:28px 22px;box-shadow:0 8px 30px #202c5a03}.public-page .form-card h2{font-size:23px}.form-mini{font-size:11px;margin-bottom:26px}.public-page legend{font-size:12px;margin-bottom:18px}.public-page .fields{grid-template-columns:minmax(0,1fr);gap:18px}.public-page .fields .full{grid-column:1}.public-page .fields label{margin:0}.public-page input,.public-page select{height:55px;font-size:16px;border-radius:10px}.public-page input::placeholder{font-size:14px}.public-page .consent{font-size:11px;align-items:flex-start;margin:25px 0 20px}.public-page .consent input{margin-top:2px}.public-page .submit{font-size:15px;min-height:56px;gap:10px}}
@media(max-width:355px){.public-page .shell{padding:0 14px}.public-page .form-card{padding:25px 18px}.hero h1{font-size:39px}.public-page header .brand img{width:121px}.header-pill{font-size:9px;padding:6px 8px}.public-page .hero{margin-bottom:25px}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
.public-page{background:#f2f0ff;--purple:#5143e9}.public-page .shell{max-width:1160px}.public-page main{padding-top:8px}.public-page .hero.campaign{isolation:isolate;position:relative;overflow:hidden;max-width:none;margin:0;padding:54px 62px 76px;border-radius:30px;text-align:left;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.8fr);gap:42px;align-items:center;background:linear-gradient(125deg,#2459f5 0%,#5246e9 52%,#823de2 100%)}.hero.campaign::before{content:'';position:absolute;width:430px;height:430px;border:62px solid #b69bff45;right:-140px;top:-170px;border-radius:50%;z-index:-1}.hero.campaign::after{content:'';position:absolute;width:330px;height:90px;background:#fba4bb;right:-100px;bottom:18px;transform:rotate(-35deg);z-index:-1}.hero.campaign h1{font-size:clamp(44px,5.8vw,68px);max-width:580px;letter-spacing:-2.6px;line-height:1.02;color:white;margin:0 0 24px;font-weight:800}.campaign .hero-description{font-size:17px;line-height:1.65;color:#eeedff;max-width:420px;margin:0 0 28px}.campaign-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:57px;padding:17px 23px;border-radius:12px;color:#27204a;background:#ffbbca;font-size:15px;font-weight:750;text-decoration:none;box-shadow:0 8px 22px #26156318}.campaign-cta svg{width:21px;height:21px;flex:none}.campaign-cta:hover{background:#ffd0db}.campaign-visual{margin:0;position:relative;justify-self:end;width:100%;max-width:280px;padding:10px 10px 0 0}.campaign-visual::before{content:'';position:absolute;inset:0 0 14px 11px;border-radius:120px 32px 100px 32px;background:#c5b7ff;transform:rotate(7deg)}.campaign-visual img{position:relative;display:block;width:100%;height:325px;object-fit:cover;object-position:30% 40%;border-radius:120px 32px 100px 32px}.campaign-sticker{position:absolute;bottom:18px;left:-26px;padding:13px 20px;background:#ffbbca;color:#3b225c;border-radius:8px;transform:rotate(-7deg);font-size:17px;font-weight:800;letter-spacing:-.5px;white-space:nowrap}.public-page .enrollment{position:relative;margin:-22px auto 0;z-index:2}.public-page .form-card{border:1px solid #e5e1f9;box-shadow:0 16px 50px #463d8f0b}.public-page .submit{background:#5143e9;border-color:#5143e9;box-shadow:0 7px 18px #5143e927}.public-page .submit:hover{background:#4032d4}.public-page .consent input{accent-color:#5143e9}.public-page input:focus,.public-page select:focus{border-color:#7463ed;outline-color:#7463ed19}.public-page .form-card{scroll-margin-top:20px}
@media(max-width:740px){.public-page .shell{padding:0}.public-page header{padding:0 20px;background:#fff;height:76px}.public-page main{padding:0 0 36px}.public-page .hero.campaign{padding:30px 24px 52px;border-radius:0 0 30px 30px;display:grid;grid-template-columns:minmax(0,1fr) 114px;gap:22px 15px;margin:0}.campaign-copy{display:contents}.hero.campaign h1{grid-column:1/-1;grid-row:1;font-size:46px;line-height:1.01;letter-spacing:-1.9px;max-width:355px;margin:0}.campaign .hero-description{grid-column:1;grid-row:2;font-size:14px;line-height:1.7;margin:0;color:#f0edff;align-self:center}.campaign-visual{grid-column:2;grid-row:2;width:114px;max-width:114px;padding:5px 5px 0 0;margin:0;align-self:center}.campaign-visual img{height:145px;border-radius:54px 15px 43px 15px;object-position:25% 35%}.campaign-visual::before{inset:0 0 8px 5px;border-radius:54px 15px 43px 15px}.campaign-sticker{bottom:8px;left:-24px;font-size:10px;letter-spacing:-.15px;padding:8px 11px;border-radius:5px}.campaign-cta{grid-column:1/-1;grid-row:3;width:100%;min-height:55px;padding:16px 18px;font-size:14px;gap:12px}.hero.campaign::before{width:270px;height:270px;border-width:36px;right:-160px;top:-100px}.hero.campaign::after{width:210px;height:60px;right:-115px;bottom:95px}.public-page .enrollment{margin:-20px 14px 0;max-width:none}.public-page .form-card{padding:28px 22px;border-radius:22px}.public-page .form-card:has(#receipt-status){margin-top:0}}
@media(max-width:355px){.public-page .hero.campaign{padding:27px 19px 48px;grid-template-columns:minmax(0,1fr) 100px;gap:20px 12px}.hero.campaign h1{font-size:41px}.campaign-visual{width:100px;max-width:100px}.campaign-visual img{height:137px}.campaign .hero-description{font-size:13px}.campaign-cta{font-size:13px;padding:16px 14px}.public-page .enrollment{margin-left:10px;margin-right:10px}.public-page .form-card{padding:25px 18px}}
/* Revisão do banner conforme referência; o restante do formulário é preservado. */
.public-page .hero.campaign{background:linear-gradient(118deg,#0064c6 0%,#073d87 49%,#062b69 100%);grid-template-columns:minmax(0,1.35fr) minmax(250px,1fr);gap:32px;padding:44px 60px 60px}.hero.campaign h1{font-size:clamp(44px,5.5vw,62px);letter-spacing:-2.1px}.campaign .hero-description{color:#fff;max-width:465px}.hero.campaign::before{width:530px;height:440px;border:54px solid #ef1028;right:-170px;top:-30px;transform:rotate(-30deg);border-radius:50%;background:transparent}.hero.campaign::after{width:720px;height:300px;left:120px;right:auto;bottom:-230px;background:#0565c8;transform:rotate(-16deg);border-radius:50%}.campaign-cta{background:linear-gradient(110deg,#ef1028,#cf0822);color:#fff;border-radius:26px;box-shadow:0 7px 14px #061d4930;font-size:15px}.campaign-cta:hover{background:#ca0920}.campaign-visual{max-width:330px;padding:0 1px 0 0}.campaign-visual::before{inset:0;background:#fff;transform:none;border-radius:45% 55% 46% 54% / 45% 22% 78% 55%}.campaign-visual img{height:280px;border:2px solid #fff;border-radius:45% 55% 46% 54% / 45% 22% 78% 55%;object-position:29% 41%}.campaign-sticker{background:#fff0e5;color:#092e62;left:-19px;bottom:16px;transform:rotate(-6deg);padding:12px 18px 17px;border-radius:12px;font-size:18px;box-shadow:0 5px 13px #08254b21}.campaign-sticker::after{content:'';position:absolute;left:25px;right:23px;bottom:10px;height:3px;background:#ed162d;border-radius:50%;transform:rotate(-3deg)}
.select-field{min-width:0}.select-shell{position:relative;margin-top:8px}.public-page .select-shell select{margin:0}.select-shell.is-enhanced>select{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;border:0!important;opacity:0;clip-path:inset(50%);pointer-events:none}.public-page .select-trigger{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-width:0;height:54px;min-height:54px;background:#f9faff;border:1px solid #e7eaf2;border-radius:11px;padding:12px 14px;margin:0;color:#28324a;font-size:16px;font-weight:400;text-align:left;box-shadow:none;letter-spacing:0}.select-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.select-trigger svg{width:19px;height:19px;flex:none;transition:transform .15s}.select-shell.is-open .select-trigger svg{transform:rotate(180deg)}.public-page .select-trigger:hover{border-color:#c8d0e5;filter:none;background:#f9faff}.public-page .select-trigger:focus-visible,.public-page .is-open .select-trigger{border-color:#7463ed;outline:3px solid #7463ed19;outline-offset:0}.public-page .select-trigger[aria-invalid=true]{border-color:#cc3857}.select-menu{position:absolute;top:calc(100% + 7px);left:0;right:0;background:#fff;border:1px solid #e5e2f4;box-shadow:0 12px 30px #24215420;border-radius:12px;padding:6px;max-height:min(270px,42vh);overflow-y:auto;overscroll-behavior:contain;z-index:30;scrollbar-width:thin;scrollbar-color:#d6d0ef transparent}.select-menu[hidden]{display:none}.select-shell.opens-up .select-menu{top:auto;bottom:calc(100% + 7px)}.public-page .select-option{position:relative;display:block;width:100%;min-height:44px;border:0;border-radius:7px;background:white;color:#33425e;font-size:14px;font-weight:400;text-align:left;padding:11px 34px 11px 12px;box-shadow:none;line-height:1.4}.public-page .select-option:hover,.public-page .select-option.is-active{background:#f0edff;filter:none;color:#4733bd}.public-page .select-option[aria-selected=true]{background:#eae5ff;color:#4934c2;font-weight:600}.select-option[aria-selected=true]::after{content:'✓';position:absolute;right:12px;top:11px;font-size:15px}.select-error{display:block;color:#a1233d;font-size:12px;margin-top:7px}.select-error[hidden]{display:none}
@media(max-width:740px){.public-page .hero.campaign{padding:29px 24px 52px;grid-template-columns:minmax(0,1fr) 124px;gap:22px 15px}.hero.campaign h1{font-size:44px;letter-spacing:-1.7px}.campaign-visual{width:124px;max-width:124px;padding:0}.campaign-visual img{height:148px;object-position:25% 37%}.campaign-sticker{font-size:10px;padding:8px 11px 11px;left:-21px;bottom:8px;border-radius:7px}.campaign-sticker::after{bottom:7px;height:2px;left:13px;right:12px}.campaign-cta{font-size:14px;border-radius:24px}.hero.campaign::before{width:310px;height:300px;border-width:35px;right:-175px;top:95px}.hero.campaign::after{width:450px;height:180px;left:-160px;bottom:-140px}.public-page .select-trigger{height:55px;min-height:55px;border-radius:10px;font-size:16px}.public-page .select-option{min-height:46px;padding-top:12px;padding-bottom:12px;font-size:15px}}
@media(max-width:355px){.public-page .hero.campaign{padding:27px 19px 48px;grid-template-columns:minmax(0,1fr) 105px;gap:20px 12px}.hero.campaign h1{font-size:39px}.campaign-visual{width:105px;max-width:105px}.campaign-visual img{height:137px}.campaign-cta{font-size:13px}}
/* Paleta azul solicitada: fundo, formulário e listas sem roxo. */
.public-page{--purple:#0757bc;--ink:#153657;--line:#d8e5f3;--muted:#667d95;background:#edf5fd}.public-page .form-card{border-color:#d9e6f4;box-shadow:0 16px 50px #0d4c8610}.public-page .submit{background:#0757bc;border-color:#0757bc;box-shadow:0 7px 18px #0757bc25}.public-page .submit:hover{background:#064796}.public-page .consent input{accent-color:#0757bc}.public-page input,.public-page select,.public-page .select-trigger{background:#f5f9fe;border-color:#d7e4f3}.public-page input:focus,.public-page select:focus,.public-page .select-trigger:focus-visible,.public-page .is-open .select-trigger{border-color:#4d96e5;outline-color:#4d96e524}.public-page .select-trigger:hover{background:#f5f9fe;border-color:#a6c5e7}.public-page .select-menu{background:#f0f7ff;border-color:#cbdff4;box-shadow:0 12px 30px #164c8421;scrollbar-color:#b3d1ef transparent}.public-page .select-option{background:#f0f7ff;color:#204873}.public-page .select-option:hover,.public-page .select-option.is-active{background:#dceeff;color:#064a9a}.public-page .select-option[aria-selected=true]{background:#cde5ff;color:#06458e}.public-page .receipt{background:#e7f2ff;color:#17579d}.public-page .receipt strong,.public-page .note{color:#647c94}.public-page .success-mark{background:#e5f1ff;color:#0757bc}.public-page .secondary{color:#0757bc;border-color:#c6daef}.public-page :focus-visible{outline-color:#70a9e8}
.public-page .header-pill{color:#3f648b;border-color:#caddef;background:#f4f9ff}

/* Keep native form sizing inside the card, including mobile date controls. */
.public-page #enroll,.public-page #enroll fieldset{min-width:0;min-inline-size:0;width:100%;max-width:100%}
.public-page .fields>label,.public-page .fields>.select-field{min-width:0;max-width:100%}
.public-page #enroll input:not([type=checkbox]),.public-page #enroll select,.public-page #enroll .select-trigger{box-sizing:border-box;max-width:100%;min-inline-size:0}
.public-page input[type=date]{appearance:none;-webkit-appearance:none;min-height:55px;text-align:left}
.public-page input[type=date]::-webkit-date-and-time-value{min-height:1.25em;text-align:left}
.public-page .form-card.is-complete{overflow-wrap:anywhere}
.public-page .form-card.is-complete .sub{margin-bottom:0}
.public-page .form-card.is-complete:focus{outline:none}
@media(max-width:740px){
 .public-page .enrollment{width:auto;min-width:0}
 .public-page .form-card{width:100%;min-width:0}
 .public-page .fields{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
 .public-page .fields>label{margin:0}
 .public-page #enroll input:not([type=checkbox]),.public-page #enroll .select-trigger{height:55px;min-height:55px;font-size:16px}
 .public-page .consent span{min-width:0;overflow-wrap:anywhere}
 .public-page .form-card.is-complete{padding:28px 22px}
 .public-page .form-card.is-complete h2{font-size:clamp(22px,6vw,26px);line-height:1.2}
 .public-page .form-card.is-complete .sub{font-size:15px;line-height:1.65}
}
