/* American Polyurea Signups. Scoped under .apsu; doubled class selectors win over theme and Elementor kit form styles. */
.apsu{--apsu-blue:#007EC4;--apsu-blue-d:#00679f;--apsu-ink:#02021E;--apsu-text:#334155;--apsu-muted:#64748b;--apsu-line:#dfe5ec;--apsu-soft:#f3f6fa;--apsu-err:#c9303a;--apsu-ok:#13854a;--apsu-r:28px;color:var(--apsu-text);font-family:inherit;line-height:1.55;}
.apsu *,.apsu *::before,.apsu *::after{box-sizing:border-box;}
.apsu svg,.apsu svg *{fill:none !important;}
.apsu.apsu-root{margin:0 0 40px;}
.apsu.apsu-inline{margin:36px 0;}
.apsu .apsu-lede{font-size:19px;line-height:1.65;color:var(--apsu-ink);margin:0 0 34px;}
.apsu .apsu-h2{font-family:Montserrat,Inter,sans-serif;font-size:24px;line-height:1.25;font-weight:700;color:var(--apsu-ink);margin:0 0 16px;letter-spacing:-.01em;}

.apsu .apsu-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 38px;}
.apsu .apsu-card{background:var(--apsu-soft);border-radius:22px;padding:22px 20px 20px;transition:transform .2s ease,box-shadow .2s ease;}
.apsu .apsu-card:hover{transform:translateY(-2px);box-shadow:0 14px 30px -18px rgba(2,2,30,.35);}
.apsu .apsu-ico{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:14px;background:#fff;color:var(--apsu-blue);box-shadow:0 1px 2px rgba(2,2,30,.06);}
.apsu .apsu-card h3{font-family:Montserrat,Inter,sans-serif;font-size:17px;line-height:1.3;font-weight:700;color:var(--apsu-ink);margin:14px 0 6px;}
.apsu .apsu-card p{font-size:15px;line-height:1.55;margin:0;color:var(--apsu-text);}

.apsu .apsu-steps{list-style:none;counter-reset:apsu;margin:0 0 38px;padding:0;display:grid;gap:10px;}
.apsu .apsu-steps li{counter-increment:apsu;display:flex;gap:14px;align-items:flex-start;margin:0;padding:16px 18px;border:1px solid var(--apsu-line);border-radius:18px;font-size:16px;line-height:1.5;background:#fff;}
.apsu .apsu-steps li::before{content:counter(apsu);flex:0 0 30px;height:30px;border-radius:50%;background:var(--apsu-blue);color:#fff;font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:-2px;}
.apsu .apsu-steps strong{color:var(--apsu-ink);}

.apsu .apsu-box{position:relative;background:#fff;border:1px solid var(--apsu-line);border-radius:var(--apsu-r);padding:34px 34px 30px;box-shadow:0 1px 2px rgba(2,2,30,.04),0 24px 48px -28px rgba(2,2,30,.28);}
.apsu .apsu-box::before{content:"";position:absolute;left:34px;right:34px;top:-1px;height:4px;border-radius:0 0 6px 6px;background:linear-gradient(90deg,#007EC4,#35a7e6);}
.apsu .apsu-head{margin:0 0 24px;}
.apsu .apsu-title{font-family:Montserrat,Inter,sans-serif;font-size:28px;line-height:1.2;font-weight:700;color:var(--apsu-ink);margin:0 0 8px;letter-spacing:-.015em;}
.apsu .apsu-sub{font-size:16px;line-height:1.55;color:var(--apsu-muted);margin:0;}
.apsu .apsu-head:empty{display:none;}

.apsu .apsu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;}
.apsu .apsu-f{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0;}
.apsu .apsu-full{grid-column:1 / -1;}
.apsu fieldset.apsu-f{border:0;padding:0;margin:0;min-width:0;}
.apsu .apsu-f > label,.apsu .apsu-f legend{display:block;font-size:14px;line-height:1.35;font-weight:600;color:var(--apsu-ink);margin:0;padding:0;}
.apsu .apsu-f legend{margin-bottom:9px;}
.apsu .apsu-req{color:var(--apsu-blue);}
.apsu .apsu-hint{font-weight:400;color:var(--apsu-muted);font-size:13px;margin-left:8px;}

.apsu.apsu .apsu-form input[type="text"],.apsu.apsu .apsu-form input[type="email"],.apsu.apsu .apsu-form input[type="tel"],.apsu.apsu .apsu-form select,.apsu.apsu .apsu-form textarea{display:block;width:100%;max-width:none;height:auto;min-height:50px;margin:0;padding:13px 15px;font-family:inherit;font-size:16px;line-height:1.4;color:var(--apsu-ink);background:#fff;border:1.5px solid var(--apsu-line);border-radius:14px;box-shadow:none;outline:0;-webkit-appearance:none;appearance:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;}
.apsu.apsu .apsu-form textarea{min-height:120px;resize:vertical;}
.apsu.apsu .apsu-form input::placeholder,.apsu.apsu .apsu-form textarea::placeholder{color:#94a3b8;opacity:1;}
.apsu.apsu .apsu-form input:hover,.apsu.apsu .apsu-form select:hover,.apsu.apsu .apsu-form textarea:hover{border-color:#c5cfdb;}
.apsu.apsu .apsu-form input:focus,.apsu.apsu .apsu-form select:focus,.apsu.apsu .apsu-form textarea:focus{border-color:var(--apsu-blue);box-shadow:0 0 0 4px rgba(0,126,196,.14);}
.apsu .apsu-sel{position:relative;}
.apsu .apsu-sel::after{content:"";position:absolute;right:17px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:2px solid var(--apsu-muted);border-bottom:2px solid var(--apsu-muted);transform:rotate(45deg);pointer-events:none;}
.apsu.apsu .apsu-form select{padding-right:42px;cursor:pointer;}
.apsu.apsu .apsu-form select:invalid,.apsu.apsu .apsu-form select.apsu-empty{color:#94a3b8;}
.apsu.apsu .apsu-form select option{color:var(--apsu-ink);}

.apsu .apsu-chips{display:flex;flex-wrap:wrap;gap:8px;}
.apsu .apsu-chip{position:relative;display:inline-flex;margin:0;cursor:pointer;}
.apsu .apsu-chip input{position:absolute;opacity:0;width:1px;height:1px;margin:0;pointer-events:none;}
.apsu .apsu-chip span{display:inline-flex;align-items:center;gap:8px;padding:10px 15px;border:1.5px solid var(--apsu-line);border-radius:20px;background:#fff;color:var(--apsu-text);font-size:14px;font-weight:500;line-height:1.25;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease;user-select:none;}
.apsu .apsu-chip:hover span{border-color:#b9c6d4;}
.apsu .apsu-chip input:checked + span{background:var(--apsu-blue);border-color:var(--apsu-blue);color:#fff;}
.apsu .apsu-chip input:focus-visible + span{box-shadow:0 0 0 4px rgba(0,126,196,.2);}
.apsu .apsu-dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:1.5px solid #b9c6d4;background:#fff;flex:0 0 14px;transition:all .15s ease;}
.apsu .apsu-chip input:checked + span .apsu-dot{border-color:#fff;background:var(--apsu-blue);box-shadow:inset 0 0 0 3px #fff;}

.apsu .apsu-check{display:flex;align-items:center;gap:11px;cursor:pointer;font-size:15px;color:var(--apsu-text);margin:2px 0 0;}
.apsu .apsu-check input{position:absolute;opacity:0;width:1px;height:1px;margin:0;}
.apsu .apsu-ckbox{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;border-radius:7px;border:1.5px solid #b9c6d4;background:#fff;color:transparent;transition:all .15s ease;}
.apsu .apsu-ckbox svg{width:15px;height:15px;stroke-width:2.6;}
.apsu .apsu-check input:checked + .apsu-ckbox{background:var(--apsu-blue);border-color:var(--apsu-blue);color:#fff;}
.apsu .apsu-check input:focus-visible + .apsu-ckbox{box-shadow:0 0 0 4px rgba(0,126,196,.2);}

.apsu .apsu-err{font-size:13px;line-height:1.35;color:var(--apsu-err);font-weight:500;}
.apsu .apsu-err[hidden]{display:none;}
.apsu.apsu .apsu-bad input,.apsu.apsu .apsu-bad select,.apsu.apsu .apsu-bad textarea{border-color:var(--apsu-err);}
.apsu .apsu-bad .apsu-chip span{border-color:#ecb3b7;}
.apsu .apsu-alert{margin:0 0 18px;padding:12px 16px;border-radius:14px;background:#fdf0f1;color:#8f1f27;font-size:15px;font-weight:500;}
.apsu .apsu-alert[hidden]{display:none;}

.apsu .apsu-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 20px;margin:26px 0 0;}
.apsu.apsu .apsu-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;margin:0;padding:15px 30px;border:0;border-radius:999px;background:var(--apsu-blue);color:#fff;font-family:inherit;font-size:16px;font-weight:600;line-height:1.2;letter-spacing:0;text-transform:none;cursor:pointer;box-shadow:0 10px 22px -12px rgba(0,126,196,.9);transition:background-color .15s ease,transform .15s ease,box-shadow .15s ease;}
.apsu.apsu .apsu-btn:hover{background:var(--apsu-blue-d);color:#fff;transform:translateY(-1px);}
.apsu.apsu .apsu-btn:active{transform:translateY(0) scale(.985);}
.apsu.apsu .apsu-btn:focus-visible{outline:0;box-shadow:0 0 0 4px rgba(0,126,196,.3);}
.apsu.apsu .apsu-btn[disabled]{cursor:progress;opacity:.85;transform:none;}
.apsu .apsu-spin{display:none;width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;animation:apsu-spin .7s linear infinite;}
.apsu .apsu-busy .apsu-spin{display:inline-block;}
@keyframes apsu-spin{to{transform:rotate(360deg);}}
.apsu .apsu-fine{display:flex;align-items:center;gap:7px;margin:0;font-size:13px;line-height:1.4;color:var(--apsu-muted);}
.apsu .apsu-fine svg{flex:0 0 16px;width:16px;height:16px;color:var(--apsu-blue);}

.apsu .apsu-hp{position:absolute !important;left:-10000px !important;top:auto !important;width:1px !important;height:1px !important;overflow:hidden !important;}

.apsu .apsu-done{text-align:center;padding:18px 6px 8px;animation:apsu-in .35s ease both;}
.apsu .apsu-done-ic{display:inline-flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:rgba(19,133,74,.1);color:var(--apsu-ok);margin:0 0 16px;}
.apsu .apsu-done-ic svg{width:32px;height:32px;stroke-width:2.4;}
.apsu .apsu-done h2{font-family:Montserrat,Inter,sans-serif;font-size:26px;font-weight:700;color:var(--apsu-ink);margin:0 0 8px;outline:0;}
.apsu .apsu-done p{font-size:16px;color:var(--apsu-text);margin:0 auto;max-width:440px;}
@keyframes apsu-in{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:none;}}

.apsu .apsu-compact .apsu-actions{margin:0;}
.apsu.apsu .apsu-compact .apsu-btn{min-height:50px;padding:13px 26px;}
.apsu .apsu-compact .apsu-fine{display:none;}
.apsu .apsu-compact .apsu-title{font-size:24px;}
.apsu .apsu-compact .apsu-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:end;}
.apsu .apsu-compact .apsu-form > .apsu-alert{grid-column:1 / -1;margin:0;}
.apsu .apsu-compact .apsu-form > noscript{grid-column:1 / -1;}

@media (max-width:760px){
	.apsu .apsu-cards{grid-template-columns:1fr;}
	.apsu .apsu-compact .apsu-form{grid-template-columns:1fr;}
}
@media (max-width:640px){
	.apsu .apsu-lede{font-size:17px;}
	.apsu .apsu-box{padding:24px 20px 22px;border-radius:22px;}
	.apsu .apsu-box::before{left:22px;right:22px;}
	.apsu .apsu-title{font-size:24px;}
	.apsu .apsu-grid{grid-template-columns:1fr;gap:16px;}
	.apsu.apsu .apsu-btn{width:100%;}
	.apsu .apsu-actions{gap:12px;}
	.apsu .apsu-chip span{padding:9px 13px;}
}
@media (prefers-reduced-motion:reduce){
	.apsu *{transition:none !important;animation:none !important;}
}

/* Newsletter band above the site footer */
.apsu.apsu-band{margin:0;padding:56px 16px;background:#f3f6fa;}
.apsu .apsu-band-in{max-width:980px;margin:0 auto;}
.apsu.apsu-band .apsu-box{box-shadow:0 1px 2px rgba(2,2,30,.04),0 18px 40px -30px rgba(2,2,30,.35);}
.apsu.apsu-root{scroll-margin-top:110px;}
@media (max-width:640px){.apsu.apsu-band{padding:36px 16px;}}
