.gnef-modal[hidden],.gnef-form [hidden]{display:none!important}
.gnef-modal{position:fixed;inset:0;z-index:2147483647;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.7)}
.gnef-modal,.gnef-modal *,.gnef-inline,.gnef-inline *{box-sizing:border-box}
.gnef-dialog{position:relative;display:block;width:660px;max-width:100%;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:#fff;border-radius:12px;box-shadow:0 8px 40px #0004;outline:none}
.gnef-panel{padding:28px;background:#fff;border-radius:12px}
.gnef-dialog .gnef-panel{padding-top:8px}
.gnef-dialog .gnef-close{position:sticky;display:block;margin-left:auto;top:0;z-index:2;width:48px;height:48px;min-height:48px;padding:0;border:0;border-radius:0 12px 0 8px;background:#fff;color:#121212;font-family:inherit;font-size:32px;line-height:48px;cursor:pointer}
.gnef-inline{position:relative;display:flow-root;float:none;clear:both;width:100%;max-width:700px;height:auto!important;max-height:none!important;margin:20px auto 100px;overflow:visible;isolation:isolate;background:#fff}
.gnef-form{display:flow-root;width:100%;margin:0;padding:0;font-family:inherit;font-size:16px;line-height:1.5;color:#121212}
.gnef-form .gnef-heading{font-family:inherit;font-size:26px;line-height:1.25;font-weight:700;color:#121212;margin:0 0 10px;padding:0}
.gnef-form .gnef-intro{margin:0 0 20px;color:#666;font-size:14px;line-height:1.5}
.gnef-form .gnef-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;width:100%;margin:0}
.gnef-field{min-width:0;width:auto;margin:0;padding:0;overflow-wrap:anywhere}
.gnef-width-100{grid-column:1/-1}
.gnef-label{display:block;margin:0 0 6px;color:#121212;font-size:14px;font-weight:600;line-height:1.5}
.gnef-indicator,.gnef-help{color:#666666;font-size:13px;font-weight:400}
.gnef-help,.gnef-error{display:block;line-height:1.5;margin-top:4px}
.gnef-error{color:#B00020;font-size:13px}
.gnef-error:empty,.gnef-status:empty{display:none}
.gnef-form input:not([type=hidden]),.gnef-form select,.gnef-form textarea{display:block;width:100%;min-width:0;max-width:100%;height:48px;min-height:48px;margin:0;padding:10px 12px;border:1px solid #999;border-radius:6px;background:#fff;box-shadow:none;color:#121212;font-family:inherit;font-size:16px;line-height:1.5}
.gnef-form textarea{height:auto;min-height:94px;resize:vertical}
.gnef-form input::placeholder,.gnef-form textarea::placeholder{color:#666;opacity:1}
.gnef-form select{appearance:auto;padding-right:4px}
.gnef-phone-control{display:flex;align-items:stretch;gap:8px;min-width:0;width:100%}
.gnef-form .gnef-phone-control select{flex:0 1 42%;width:42%;text-overflow:ellipsis}
.gnef-form .gnef-phone-control input{flex:1 1 0;width:0;min-width:0}
.gnef-form .gnef-submit,.gnef-form .gnef-whatsapp{display:block;width:100%;min-height:48px;padding:12px 14px;border:1px solid #FBC105;border-radius:7px;background:#FBC105;background-image:none;color:#121212;font-family:inherit;font-size:16px;line-height:1.5;font-weight:700;text-align:center;white-space:normal;cursor:pointer;text-decoration:none}
.gnef-form .gnef-submit:disabled{opacity:.65;cursor:wait}
.gnef-form .gnef-submit:hover:not(:disabled),.gnef-form .gnef-whatsapp:hover{background:#f5bc00;color:#121212}
.gnef-form .gnef-privacy{font-size:13px;margin:0}
.gnef-privacy a{color:#121212;text-decoration:underline;display:inline-flex;min-height:44px;align-items:center}
.gnef-status{margin:0;padding:14px 0;color:#146c2e}
.gnef-status[data-error=true]{color:#B00020}
.gnef-form [aria-invalid=true]{border-color:#B00020!important}
.gnef-form :focus-visible,.gnef-close:focus-visible{outline:3px solid #121212;outline-offset:3px}
.gnef-retry{min-height:44px;padding:10px 16px;border:1px solid #121212;background:#fff;color:#121212;font:inherit;cursor:pointer}
.gnef-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(1px,1px,1px,1px)!important;white-space:nowrap!important}
.gnef-form[data-submitted] .gnef-submit-row{display:none}
.gnef-form[data-submitted] .gnef-fields{opacity:.7}
@media(max-width:767px){.gnef-modal{padding:8px}.gnef-dialog{width:100%;max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px)}.gnef-panel{padding:20px 16px}.gnef-form .gnef-fields{grid-template-columns:minmax(0,1fr)}.gnef-field{grid-column:1/-1}.gnef-form .gnef-heading{font-size:23px}.gnef-form .gnef-phone-control select{flex-basis:44%;width:44%}}

/* v1.1: contact alternatives and compulsory-field indicators. */
.gnef-form .gnef-required{color:#B00020;font-weight:400;font-size:.9em}
.gnef-form .gnef-required-note{font-size:13px;color:#666666;margin:-10px 0 18px}
.gnef-form fieldset.gnef-contact{min-inline-size:0;margin:0;padding:0;border:0;display:grid;gap:12px}
.gnef-form .gnef-contact>legend{float:none;width:auto;padding:0;margin:0 0 4px}
.gnef-form .gnef-contact>.gnef-help{margin:0 0 2px}
.gnef-form .gnef-contact .gnef-field{width:100%}

/* v1.2: completion and autofill state. */
.gnef-form .gnef-contact-hint{color:#666666;font-size:.85em;font-weight:400}
.gnef-form .gnef-submit:disabled{background:#E0E0E0;color:#9E9E9E;cursor:not-allowed;opacity:1}
.gnef-form .gnef-completion-help{display:block;color:#666666;font-size:13px;margin-top:6px}
.gnef-form .gnef-completion-help[hidden]{display:none}
@keyframes gnef-autofill{from{opacity:.999}to{opacity:1}}
.gnef-form input:-webkit-autofill{animation-name:gnef-autofill;animation-duration:.01s}
