/* Somente formulário/login e catálogo dinâmico. Estrutura externa: Elementor nativo. */
.df32-guest,.df32-offer{max-width:1180px;margin-inline:auto;font-family:Inter,system-ui,Arial,sans-serif;color:#12394b}
.df32-guest *,.df32-offer *{box-sizing:border-box}
.df32-guest{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.87fr);gap:38px;align-items:stretch}
.df32-guest-copy{padding:50px 38px;border-radius:24px;background:linear-gradient(140deg,#104958,#0b6670);color:#fff;min-width:0}
.df32-label{display:block;color:#e9954e;letter-spacing:1.65px;font-size:11px;font-weight:850;text-transform:uppercase;margin-bottom:14px}
.df32-guest-copy .df32-label{color:#d7f4e8}
.df32-guest-copy h2{font-size:clamp(30px,3.2vw,44px);line-height:1.13;letter-spacing:-1px;color:#fff;margin:0 0 19px;font-weight:800}
.df32-guest-copy>p{font-size:16px;line-height:1.78;color:#e0f0ef;max-width:500px;margin:0 0 29px}
.df32-points{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 33px}
.df32-points span{font-size:13px;font-weight:650;border:1px solid rgba(225,244,240,.3);border-radius:99px;padding:9px 13px;background:rgba(255,255,255,.12);color:inherit}
.df32-guest-more{margin-top:20px;border-top:1px solid rgba(232,246,245,.3);padding-top:26px}
.df32-guest-more strong{font-size:17px;color:#fff}
.df32-guest-more p{font-size:13px;color:#dcefeb;margin:7px 0 18px;line-height:1.65}
.df32-register{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:16px;background:#f5822e;color:#fff!important;border-radius:11px;padding:15px 22px;text-decoration:none!important;font-weight:800;font-size:14px}
.df32-register:hover{background:#e67320}
.df32-login-panel{background:#fff;border:1px solid #e0e9ee;border-radius:24px;padding:45px 40px;box-shadow:0 18px 45px rgba(23,61,77,.07)}
.df32-login-panel h3{font-size:29px;line-height:1.2;margin:0 0 11px;color:#143a4a;font-weight:800}
.df32-login-panel>p{font-size:14px;line-height:1.65;color:#617b8a;margin:0 0 25px}
.df32-login-panel>small{display:block;color:#78909c;font-size:12px;line-height:1.55;margin-top:17px}
.df32-login-form{display:flex;flex-direction:column;gap:10px}
.df32-login-form label{font-size:13px;font-weight:750;color:#203e4f}
.df32-login-form input:not([type=checkbox]){width:100%;height:51px;background:#fff;border:1px solid #d4e3ea;border-radius:10px;padding:11px 14px;color:#0c3747;font-size:14px;box-shadow:none}
.df32-login-form input:focus{outline:2px solid #83c7c9;outline-offset:0;border-color:#199ba1}
.df32-password-label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px}
.df32-password-label a{font-size:12px;color:#007f88!important;text-decoration:none!important;font-weight:750}
.df32-remember{display:flex;align-items:center;gap:9px;margin:10px 0 12px;font-weight:500!important;color:#577484!important}
.df32-login-form .df32-remember input{width:16px;height:16px}
.df32-primary{width:100%;display:inline-flex;justify-content:center;align-items:center;gap:16px;background:#f5822e!important;border:0;border-radius:11px;padding:16px 19px;color:#fff!important;font-family:inherit;font-weight:800;font-size:15px;text-decoration:none!important;cursor:pointer;line-height:1.4}
.df32-primary:hover{background:#e7741d!important}
.df32-hp{position:absolute;width:1px;height:1px;overflow:hidden;left:-9999px}
.df32-offer-head{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:26px}
.df32-offer-head h2{font-size:32px;font-weight:800;line-height:1.2;margin:0 0 11px}
.df32-offer-head p{max-width:665px;color:#67818b;font-size:15px;line-height:1.7;margin:0}
.df32-offer-head>a{white-space:nowrap;color:#037b84!important;text-decoration:none!important;font-weight:800;font-size:14px}
.df32-offer-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.7fr);border:1px solid #dce8eb;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 15px 42px rgba(23,61,77,.05)}
.df32-offer-content{padding:45px 38px}
.df32-offer-content h3{font-size:32px;margin:0 0 14px;line-height:1.25;color:#143a4a}
.df32-offer-content>p{color:#64808e;font-size:16px;line-height:1.8;margin:0 0 20px;max-width:570px}
.df32-offer .df32-points{margin:0}
.df32-offer .df32-points span{background:#eaf5f4;border-color:#d6eae8;color:#17646c}
.df32-offer-action{background:#f0f7f8;padding:45px 34px;display:flex;flex-direction:column;justify-content:center;align-items:stretch;min-width:0}
.df32-small{font-size:11px;color:#0f8587;font-weight:800;letter-spacing:1.4px}
.df32-offer-price{font-size:clamp(23px,3vw,33px);font-weight:850;color:#133d4e;margin:12px 0 16px;display:block}
.df32-offer-action p{font-size:13px;color:#66808a;line-height:1.7;margin:0 0 22px}
.df32-offer-action form{margin:0}
.df32-footnote{font-size:13px;color:#718b95;line-height:1.7;margin:28px 0 0}
.df32-state{border:1px solid #dce8ed;background:#eef7f6;padding:34px;border-radius:18px;color:#174d5b}
.df32-state h2{font-size:22px;margin:0 0 8px}
.df32-state p{margin-bottom:19px;line-height:1.7}
@media(max-width:900px){.df32-guest{grid-template-columns:1fr;gap:18px}.df32-guest-copy{padding:35px}.df32-login-panel{padding:35px}.df32-offer-card{grid-template-columns:1fr}.df32-offer-action{padding:28px 35px}}
@media(max-width:600px){.df32-guest-copy,.df32-login-panel{padding:27px 22px;border-radius:17px}.df32-guest-copy h2{font-size:29px}.df32-guest-copy>p{font-size:14px}.df32-points{gap:8px}.df32-points span{font-size:12px;padding:8px 11px}.df32-register{width:100%}.df32-login-panel h3{font-size:26px}.df32-offer-head{flex-direction:column;align-items:start}.df32-offer-head h2{font-size:26px}.df32-offer-head>a{white-space:normal}.df32-offer-content{padding:27px 22px}.df32-offer-content h3{font-size:27px}.df32-offer-action{padding:28px 22px}.df32-offer-price{font-size:26px}}
.df32-reset{max-width:520px;margin-inline:auto;background:#fff;border:1px solid #deebef;border-radius:20px;padding:35px;box-shadow:0 12px 34px rgba(18,57,75,.055)}
.df32-reset h2{font-size:27px;color:#113b4b;margin:8px 0 13px}
.df32-reset p{color:#637e89;font-size:15px;line-height:1.7;margin-bottom:22px}
.df32-reset .df32-login-form{gap:13px}
@media(max-width:600px){.df32-reset{padding:25px 20px}}
