:root{--aop-green:#006f66;--aop-dark:#00564f;--aop-ink:#21312e;--aop-muted:#58706b}.aop-contact-overlay{position:fixed;z-index:100000;right:24px;bottom:24px;font-family:inherit}.aop-contact-overlay__launcher{align-items:center;background:var(--aop-green);border:0;border-radius:999px;box-shadow:0 10px 26px rgba(0,67,61,.26);color:#fff;cursor:pointer;display:inline-flex;font:700 16px/1.1 inherit;gap:10px;min-height:58px;padding:8px 21px 8px 10px;transition:.2s}.aop-contact-overlay__launcher:hover,.aop-contact-overlay__launcher:focus-visible{background:var(--aop-dark);box-shadow:0 14px 30px rgba(0,67,61,.34);color:#fff;outline:none;transform:translateY(-2px)}.aop-contact-overlay__launcher-icon{align-items:center;background:rgba(255,255,255,.17);border-radius:50%;display:flex;height:40px;justify-content:center;width:40px}.aop-contact-overlay__launcher svg{fill:currentColor;height:23px;width:23px}.aop-contact-overlay__backdrop{background:rgba(20,37,34,.62);inset:0;opacity:0;pointer-events:none;position:fixed;transition:opacity .22s}.aop-contact-overlay__dialog{background:#fff;border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.26);left:50%;max-height:calc(100vh - 48px);max-width:620px;opacity:0;overflow:auto;padding:42px 42px 30px;pointer-events:none;position:fixed;top:50%;transform:translate(-50%,-47%) scale(.98);transition:.22s;visibility:hidden;width:calc(100vw - 40px)}.aop-contact-overlay.is-open .aop-contact-overlay__backdrop{opacity:1;pointer-events:auto}.aop-contact-overlay.is-open .aop-contact-overlay__dialog{opacity:1;pointer-events:auto;transform:translate(-50%,-50%) scale(1);visibility:visible}body.aop-contact-overlay-open{overflow:hidden}.aop-contact-overlay__close{align-items:center;background:#f1f3f0;border:0;border-radius:50%;color:var(--aop-ink);cursor:pointer;display:flex;height:40px;justify-content:center;padding:0;position:absolute;right:16px;top:16px;width:40px}.aop-contact-overlay__close:hover{background:#e0e7e3}.aop-contact-overlay__close svg{fill:currentColor;height:21px;width:21px}.aop-contact-overlay__header{border-bottom:1px solid #dfe6e1;margin-bottom:23px;padding:0 35px 20px 0}.aop-contact-overlay__eyebrow{color:var(--aop-green);font-size:12px;font-weight:800;letter-spacing:.12em;margin:0 0 8px;text-transform:uppercase}.aop-contact-overlay__header h2{color:var(--aop-ink);font-size:clamp(25px,4vw,34px);line-height:1.1;margin:0 0 10px}.aop-contact-overlay__header>p:not(.aop-contact-overlay__eyebrow){color:var(--aop-muted);font-size:16px;line-height:1.5;margin:0}.aop-contact-overlay__form .wpcf7-form p{margin:0 0 15px}.aop-contact-overlay__form .wpcf7-form label{color:var(--aop-ink);display:block;font-size:14px;font-weight:700}.aop-contact-overlay__form .wpcf7-form-control-wrap{display:block;margin-top:6px}.aop-contact-overlay__form input:not([type="submit"]),.aop-contact-overlay__form textarea{background:#fff;border:1px solid #b9c9c2;border-radius:7px;box-sizing:border-box;color:var(--aop-ink);font:inherit;min-height:46px;padding:10px 12px;width:100%}.aop-contact-overlay__form textarea{min-height:116px;resize:vertical}.aop-contact-overlay__form input:focus,.aop-contact-overlay__form textarea:focus{border-color:var(--aop-green);box-shadow:0 0 0 3px rgba(0,111,102,.15);outline:none}.aop-contact-overlay__form input[type="submit"]{background:var(--aop-green);border:0;border-radius:7px;color:#fff;cursor:pointer;font:800 15px/1 inherit;min-height:48px;padding:0 22px}.aop-contact-overlay__form input[type="submit"]:hover{background:var(--aop-dark)}.aop-contact-overlay__footer{border-top:1px solid #dfe6e1;color:var(--aop-muted);display:flex;flex-wrap:wrap;font-size:14px;gap:8px;margin-top:23px;padding-top:18px}.aop-contact-overlay__footer a{color:var(--aop-green);font-weight:700;text-decoration:none}.aop-contact-overlay__footer a:hover{text-decoration:underline}.aop-contact-overlay__launcher:focus-visible,.aop-contact-overlay__close:focus-visible,.aop-contact-overlay__dialog a:focus-visible{outline:3px solid #f2be45;outline-offset:3px}@media(max-width:600px){.aop-contact-overlay{bottom:16px;right:16px}.aop-contact-overlay__dialog{border-radius:14px;max-height:calc(100vh - 24px);padding:34px 23px 24px;width:calc(100vw - 24px)}}@media(prefers-reduced-motion:reduce){.aop-contact-overlay *,.aop-contact-overlay{transition:none!important}}
