/* Public campaign design. Independent of the shared administration. */
.campaign-offer{position:relative;isolation:isolate;overflow:hidden;margin-top:24px;border:1px solid #21596a;border-radius:22px;padding:23px;background:#103b4b;color:#fff;box-shadow:0 16px 32px #103b4b18}
.campaign-offer:before{content:"";position:absolute;z-index:-1;width:340px;height:340px;border:1px solid #86d8c92e;border-radius:50%;right:-180px;top:-140px;box-shadow:0 0 0 30px #86d8c90a,0 0 0 60px #86d8c909;pointer-events:none}
.campaign-offer-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.campaign-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;border-radius:5px;background:#ffe2a0;color:#193d49;font-size:11px;font-weight:800;letter-spacing:.55px;line-height:1.4}
.campaign-badge>span{font-size:16px;line-height:1}.campaign-type{font-size:12px;color:#cfdfdf;white-space:nowrap}
.campaign-principal{position:relative;padding:22px 0 23px}.campaign-label{display:block;font-size:13px;line-height:1.4;letter-spacing:.15px;color:#c6dedf}
.campaign-principal h2{display:block;margin:5px 0 0;color:#fff;font-size:clamp(54px,5.8vw,80px);line-height:1.04;letter-spacing:-3.5px;font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.campaign-principal h2>span{font-size:.33em;font-weight:500;letter-spacing:-.6px;color:#ffe2a0}
.campaign-spark{position:absolute;width:43px;height:43px;right:7px;top:38px;stroke:#ffe2a0;stroke-width:2;transform:rotate(12deg)}
.campaign-payment{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 20px;border-radius:12px;background:#c9f3df;color:#153e42}
.campaign-payment .campaign-label{color:#2e5e5b;font-weight:500}.campaign-payment>div>strong{display:block;font-size:43px;line-height:1.15;letter-spacing:-1.6px;font-weight:800;margin-top:4px;white-space:nowrap}
.campaign-payment>div>strong>span{font-size:20px;font-weight:500;letter-spacing:-.2px}.campaign-duration{display:flex;align-items:center;gap:10px;border-left:1px solid #153e4226;padding-left:20px}
.campaign-payment .campaign-duration>strong{font-size:31px;letter-spacing:-1px;margin:0}.campaign-duration>span{font-size:12px;line-height:1.45;color:#365f59}
.campaign-details{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:16px;font-size:12px;color:#c6dedf}.campaign-details b{color:#fff;font-weight:600}.campaign-details a{color:#fff;text-decoration:none;white-space:nowrap}.campaign-details a:hover{text-decoration:underline}.campaign-details a>span{color:#ffe2a0;font-size:16px;margin-left:3px}
@media(min-width:781px){.hero-refined .hero-grid{align-items:start}.hero-refined .form-card{margin-top:5px}.hero-refined .hero-copy>p{max-width:500px}}
@media(min-width:781px) and (max-width:1050px){.campaign-offer{padding:18px}.campaign-badge{font-size:10px;letter-spacing:.15px}.campaign-type{font-size:11px}.campaign-principal h2{font-size:60px}.campaign-spark{width:28px;right:0}.campaign-payment{padding:15px}.campaign-payment>div>strong{font-size:35px}.campaign-duration{padding-left:12px;gap:8px}.campaign-payment .campaign-duration>strong{font-size:26px}}
@media(max-width:780px){.campaign-offer{padding:20px;border-radius:19px;margin-top:23px}.campaign-principal h2{font-size:clamp(58px,12vw,80px);letter-spacing:-3px}.campaign-spark{width:32px;right:0;top:38px}.campaign-payment{padding:15px 16px}.campaign-payment>div>strong{font-size:39px}.campaign-duration{padding-left:14px;gap:8px}.campaign-payment .campaign-duration>strong{font-size:28px}.campaign-details{font-size:11px}.campaign-type{font-size:11px}.campaign-badge{font-size:10px;letter-spacing:.2px}}
@media(max-width:370px){.campaign-offer{padding:16px}.campaign-type{display:none}.campaign-principal h2{font-size:57px}.campaign-spark{width:25px;top:34px}.campaign-principal{padding:20px 0}.campaign-payment{padding:13px}.campaign-payment>div>strong{font-size:34px}.campaign-payment>div>strong>span{font-size:17px}.campaign-duration{padding-left:10px;gap:6px}.campaign-duration>span{font-size:10px}.campaign-details{gap:8px;font-size:10px}}

.personal-section .photo{object-position:center center}
