.upp-root{position:fixed;inset:0;z-index:999999;pointer-events:none;font-family:inherit;color:var(--upp-text)}
.upp-root *{box-sizing:border-box}
.upp-root[aria-hidden="true"]{visibility:hidden}
.upp-modal-open{overflow:hidden}
.upp-overlay{position:absolute;inset:0;background:var(--upp-page-overlay);opacity:0;transition:opacity .3s ease;pointer-events:auto}
.upp-popup{position:absolute;background:var(--upp-bg);color:var(--upp-text);overflow:hidden;pointer-events:auto;box-shadow:0 30px 80px rgba(29,23,17,.24);opacity:0;border-radius:var(--upp-radius);transition:opacity .32s ease,transform .36s cubic-bezier(.2,.8,.2,1);isolation:isolate}
.upp-close{position:absolute;right:12px;top:12px;z-index:7;width:42px;height:42px;border:0;border-radius:50%;background:var(--upp-close-bg);color:var(--upp-close);font-size:28px;line-height:1;cursor:pointer;box-shadow:0 8px 25px rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;padding:0}
.upp-content{position:relative;z-index:4;padding:var(--upp-padding);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.upp-content[hidden]{display:none}
.upp-align-center .upp-content{align-items:center;text-align:center}
.upp-eyebrow{color:var(--upp-eyebrow);font-size:var(--upp-eyebrow-size);font-weight:700;margin:0 0 10px}
.upp-heading{font-family:var(--upp-heading-font);font-size:var(--upp-heading-size);font-weight:var(--upp-heading-weight);line-height:1.08;margin:0 0 14px;padding-right:32px;color:var(--upp-heading);letter-spacing:-.02em}
.upp-subheading{font-size:var(--upp-subheading-size);line-height:1.4;font-weight:700;margin:0 0 12px}
.upp-body{font-size:var(--upp-body-size);line-height:1.55}
.upp-body p{margin:0 0 12px;color:inherit}
.upp-body p:last-child{margin-bottom:0}
.upp-button,.upp-form input[type=submit]{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:14px 24px;border:0;border-radius:var(--upp-button-radius);background:var(--upp-accent);color:var(--upp-button-text)!important;text-decoration:none!important;font-family:inherit;font-weight:700;font-size:var(--upp-button-size);line-height:1.2;cursor:pointer;transition:transform .18s ease,filter .18s ease}
.upp-button:hover,.upp-form input[type=submit]:hover{transform:translateY(-1px);filter:brightness(.95)}
.upp-form{width:100%;margin-top:6px;text-align:left}
.upp-form label{display:block;margin:0 0 12px;font-size:14px;font-weight:700;color:inherit}
.upp-form p{margin:0;color:inherit}
.upp-form .wpcf7-form-control-wrap{display:block;margin-top:5px}
.upp-form input[type=text],.upp-form input[type=tel],.upp-form input[type=email],.upp-form input[type=number],.upp-form select,.upp-form textarea{display:block;width:100%;min-height:46px;padding:10px 12px;font:inherit;font-size:16px;font-weight:400;color:#11202c;background:#fff;border:1px solid #b8c6cd;border-radius:4px}
.upp-form input[type=submit]{width:100%;margin-top:4px;min-height:50px}
.upp-form .pf-rodo{font-size:11px;line-height:1.45;margin:10px 0 0;opacity:.85}
.upp-form .wpcf7-not-valid-tip{font-size:12px;font-weight:700;margin-top:4px}
.upp-form .wpcf7 form .wpcf7-response-output{margin:10px 0 0;padding:8px 10px;font-size:13px;font-weight:700;border-width:1px;background:#fff;color:#11202c}
.upp-form .wpcf7-spinner{position:absolute}
.upp-media,.upp-background{background-size:cover}
.upp-background{position:absolute;inset:0;z-index:0}
.upp-background-shade{position:absolute;inset:0;z-index:1;background:var(--upp-shade);opacity:var(--upp-shade-opacity)}
.upp-layout-background .upp-popup{background:#111;color:var(--upp-on-image)}
.upp-layout-background .upp-heading,.upp-layout-background .upp-eyebrow{color:var(--upp-on-image)}
.upp-layout-split .upp-popup{display:grid;grid-template-columns:minmax(220px,43%) 1fr}
.upp-layout-split .upp-media{min-height:400px}

.upp-pos-modal .upp-popup{width:min(var(--upp-max-width),calc(100vw - 32px));max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:hidden auto;left:50%;top:50%;transform:translate(-50%,-46%) scale(.97)}
.upp-pos-modal.upp-visible .upp-overlay{opacity:var(--upp-overlay)}
.upp-pos-modal.upp-visible .upp-popup{opacity:1;transform:translate(-50%,-50%) scale(1)}

.upp-pos-bottom-left .upp-popup,.upp-pos-bottom-right .upp-popup{width:min(var(--upp-corner-width),calc(100vw - 28px));max-height:calc(100vh - 36px);overflow:auto;bottom:18px}
.upp-pos-bottom-left .upp-popup{left:18px;transform:translate3d(-28px,22px,0)}
.upp-pos-bottom-right .upp-popup{right:18px;transform:translate3d(28px,22px,0)}
.upp-pos-bottom-left.upp-visible .upp-popup,.upp-pos-bottom-right.upp-visible .upp-popup{opacity:1;transform:translate3d(0,0,0)}
.upp-pos-bottom-left.upp-layout-split .upp-popup,.upp-pos-bottom-right.upp-layout-split .upp-popup{display:block}
.upp-pos-bottom-left.upp-layout-split .upp-media,.upp-pos-bottom-right.upp-layout-split .upp-media{min-height:190px}

@media (max-width:720px){
  .upp-pos-modal .upp-popup{top:auto;bottom:0;left:0;width:100%;max-height:92vh;max-height:92dvh;border-radius:var(--upp-radius) var(--upp-radius) 0 0;transform:translate3d(0,40px,0)}
  .upp-pos-modal.upp-visible .upp-popup{transform:translate3d(0,0,0)}
  .upp-layout-split .upp-popup{display:block}
  .upp-layout-split .upp-media{min-height:180px}
  .upp-content{padding:min(var(--upp-padding),24px) min(var(--upp-padding),18px)}
  .upp-heading{font-size:var(--upp-heading-size-mobile)}
  .upp-pos-bottom-left .upp-popup,.upp-pos-bottom-right .upp-popup{left:14px;right:14px;bottom:14px;width:auto;max-height:82vh}
}

.upp-reopen{position:fixed;left:20px;bottom:20px;z-index:999998;width:58px;height:58px;padding:0;border:0;border-radius:50%;background:var(--upp-accent);color:var(--upp-button-text);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 14px 34px rgba(29,23,17,.22);opacity:0;visibility:hidden;transform:translate3d(0,16px,0) scale(.88);transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1),visibility .22s ease,filter .18s ease}
.upp-reopen[aria-hidden="true"]{pointer-events:none}
.upp-reopen.upp-reopen-visible{opacity:1;visibility:visible;transform:translate3d(0,0,0) scale(1);pointer-events:auto}
.upp-reopen:hover{filter:brightness(.95);transform:translate3d(0,-2px,0) scale(1.04)}
.upp-reopen svg{width:26px;height:26px;display:block}
