/* ==========================================================================
   Coatingpedia Lead Engine — forms
   Matches the theme: Inter / Inter Tight, graphite + electric teal, soft radii.
   ========================================================================== */
.cpl{--k-ink:var(--cp-ink,#1d1d1f);--k-ink2:var(--cp-ink-2,#424245);--k-muted:var(--cp-muted,#6e6e73);--k-line:var(--cp-line,#e3e3e8);--k-line2:var(--cp-line-2,#d2d2d7);--k-soft:var(--cp-soft,#f5f5f7);--k-dark:var(--cp-dark,#0b0d10);--k-teal:var(--cp-teal,#00a99d);--k-teal-ink:var(--cp-teal-ink,#007a73);--k-electric:var(--cp-electric,#14e0d0);--k-red:#d93d42;--k-font:var(--cp-font,"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif);--k-display:var(--cp-display,"Inter Tight","Inter",-apple-system,BlinkMacSystemFont,sans-serif);--k-ease:var(--cp-ease,cubic-bezier(.2,.8,.2,1));font-family:var(--k-font);color:var(--k-ink);line-height:1.5;-webkit-font-smoothing:antialiased}
.cpl *,.cpl *::before,.cpl *::after{box-sizing:border-box}
.cpl .cpl-i{width:20px;height:20px;flex:none}
.cpl .cpl-kicker{margin:0 0 10px;font:700 12px/1.3 var(--k-font);letter-spacing:.12em;text-transform:uppercase;color:var(--k-teal-ink)}
.cpl .cpl-kicker--light{color:#5ff3e6}

/* ---------- Honeypot (off-screen, not display:none) ---------- */
.cpl-hp,.comment-form .cpl-hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* ---------- Cards ---------- */
.cpl .cpl-card{background:#fff;border:1px solid var(--k-line);border-radius:28px;padding:clamp(22px,3.2vw,36px);box-shadow:0 1px 2px rgba(0,0,0,.04),0 30px 60px -30px rgba(10,20,30,.22)}

/* ---------- Form grid ---------- */
.cpl .cpl-form{position:relative;margin:0}
.cpl .cpl-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 14px}
.cpl .cpl-field{display:flex;flex-direction:column;gap:7px;min-width:0;margin:0}
.cpl .cpl-field--full,.cpl .cpl-span-2{grid-column:1/-1}
.cpl .cpl-field[hidden]{display:none}
.cpl .cpl-field label,.cpl .cpl-chips legend{font:600 14px/1.3 var(--k-font);color:var(--k-ink);letter-spacing:-.005em;margin:0;padding:0}
.cpl .cpl-req{color:var(--k-teal)}
.cpl .cpl-opt{font-weight:500;font-size:12px;color:var(--k-muted);margin-left:4px}
.cpl input[type=text],.cpl input[type=email],.cpl input[type=tel],.cpl select,.cpl textarea{display:block;width:100%;min-width:0;height:52px;margin:0;padding:0 16px;border:1px solid var(--k-line2);border-radius:14px;background:#fff;font:500 16px/1.4 var(--k-font);color:var(--k-ink);box-shadow:none;outline:0;-webkit-appearance:none;appearance:none;transition:border-color .2s,box-shadow .2s,background-color .2s}
.cpl textarea{height:auto;min-height:118px;padding:14px 16px;resize:vertical;line-height:1.55}
.cpl input::placeholder,.cpl textarea::placeholder{color:#a1a1a6;opacity:1}
.cpl input:hover,.cpl select:hover,.cpl textarea:hover{border-color:#b8b8bf}
.cpl input:focus,.cpl select:focus,.cpl textarea:focus{border-color:var(--k-teal);box-shadow:0 0 0 4px rgba(0,169,157,.16)}
.cpl .cpl-select{position:relative}
.cpl .cpl-select::after{content:"";position:absolute;right:18px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:2px solid var(--k-muted);border-bottom:2px solid var(--k-muted);transform:rotate(45deg);pointer-events:none}
.cpl select{padding-right:42px;cursor:pointer;text-overflow:ellipsis}
.cpl select:invalid,.cpl select.is-empty{color:#8e8e93}
.cpl select option{color:var(--k-ink)}
.cpl .is-invalid input,.cpl .is-invalid select,.cpl .is-invalid textarea{border-color:var(--k-red);box-shadow:0 0 0 4px rgba(217,61,66,.1)}
.cpl .cpl-err{margin:0;font:500 13px/1.35 var(--k-font);color:var(--k-red)}
.cpl .cpl-err[hidden]{display:none}

/* ---------- Interest chips (contact page) ---------- */
.cpl .cpl-chips{border:0;margin:0 0 22px;padding:0;min-width:0}
.cpl .cpl-chips legend{margin-bottom:10px}
.cpl .cpl-chip-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.cpl .cpl-chip-row .cpl-chip{grid-column:span 2}
.cpl .cpl-chip-row .cpl-chip:nth-child(n+4){grid-column:span 3}
.cpl .cpl-chip{position:relative;display:block;cursor:pointer;margin:0}
.cpl .cpl-chip input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.cpl .cpl-chip span{display:flex;flex-direction:column;gap:3px;height:100%;padding:13px 14px 12px 14px;border:1px solid var(--k-line2);border-radius:16px;background:#fff;transition:border-color .2s,background-color .2s,box-shadow .2s,transform .2s var(--k-ease)}
.cpl .cpl-chip strong{font:650 14px/1.25 var(--k-font);color:var(--k-ink)}
.cpl .cpl-chip small{font:500 12px/1.35 var(--k-font);color:var(--k-muted)}
.cpl .cpl-chip:hover span{border-color:#b8b8bf;transform:translateY(-1px)}
.cpl .cpl-chip input:checked+span{border-color:var(--k-teal);background:#effbfa;box-shadow:0 0 0 3px rgba(0,169,157,.14) inset,0 10px 24px -14px rgba(0,169,157,.55)}
.cpl .cpl-chip input:checked+span strong{color:#00524d}
.cpl .cpl-chip input:focus-visible+span{outline:2px solid var(--k-teal);outline-offset:2px}

/* ---------- Consent + actions ---------- */
.cpl .cpl-consent{display:flex;gap:11px;align-items:flex-start;margin:18px 0 0;cursor:pointer;font:500 13px/1.5 var(--k-font);color:var(--k-muted)}
.cpl .cpl-consent input{flex:none;width:20px;height:20px;margin:0;border:1.5px solid var(--k-line2);border-radius:6px;background:#fff;-webkit-appearance:none;appearance:none;display:grid;place-content:center;cursor:pointer;transition:background .2s,border-color .2s}
.cpl .cpl-consent input::after{content:"";width:10px;height:6px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) translate(1px,-1px);opacity:0}
.cpl .cpl-consent input:checked{background:var(--k-teal);border-color:var(--k-teal)}
.cpl .cpl-consent input:checked::after{opacity:1}
.cpl .cpl-consent input:focus-visible{outline:2px solid var(--k-teal);outline-offset:2px}
.cpl .cpl-consent.is-invalid input{border-color:var(--k-red)}
.cpl .cpl-err--consent{margin-top:6px}
.cpl .cpl-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}
.cpl .cpl-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;height:54px;padding:0 28px;border:0;border-radius:999px;background:linear-gradient(135deg,#14e0d0,#00a99d);color:#00201e;font:700 16px/1 var(--k-font);letter-spacing:-.01em;cursor:pointer;box-shadow:0 12px 30px -12px rgba(20,224,208,.75);transition:transform .25s var(--k-ease),box-shadow .25s,filter .2s}
.cpl .cpl-submit:hover{transform:translateY(-1px);box-shadow:0 16px 36px -12px rgba(20,224,208,.85)}
.cpl .cpl-submit:active{transform:translateY(0)}
.cpl .cpl-submit .cpl-i{transition:transform .25s var(--k-ease)}
.cpl .cpl-submit:hover .cpl-i{transform:translateX(3px)}
.cpl .cpl-submit .cpl-spin{display:none;width:20px;height:20px;border-radius:50%;border:2.5px solid rgba(0,32,30,.25);border-top-color:#00201e;animation:cpl-spin .8s linear infinite}
.cpl .is-busy .cpl-submit{pointer-events:none;filter:saturate(.7)}
.cpl .is-busy .cpl-submit .cpl-i{display:none}
.cpl .is-busy .cpl-submit .cpl-spin{display:block}
.cpl .cpl-secure{display:inline-flex;align-items:center;gap:7px;margin:0;font:500 13px/1.3 var(--k-font);color:var(--k-muted)}
.cpl .cpl-secure .cpl-i{width:16px;height:16px;color:var(--k-teal)}
.cpl .cpl-status{margin-top:12px;font:500 14px/1.45 var(--k-font);color:var(--k-red)}
.cpl .cpl-status:empty{display:none}
@keyframes cpl-spin{to{transform:rotate(360deg)}}

/* ---------- Success ---------- */
.cpl .cpl-success{text-align:center;padding:clamp(10px,2vw,22px) 4px;outline:0;animation:cpl-rise .6s var(--k-ease) both}
.cpl .cpl-success-badge{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#14e0d0,#00a99d);color:#00201e;box-shadow:0 18px 40px -16px rgba(20,224,208,.8);animation:cpl-pop .55s var(--k-ease) .1s both}
.cpl .cpl-success-badge .cpl-i{width:34px;height:34px;stroke-width:2.4;stroke-dasharray:24;stroke-dashoffset:24;animation:cpl-draw .5s ease .45s forwards}
.cpl .cpl-success h3,.cpl .cpl-success-title{margin:0 0 8px;font:800 clamp(22px,2.4vw,28px)/1.15 var(--k-display);letter-spacing:-.03em;color:var(--k-ink)}
.cpl .cpl-success p{margin:0 auto;max-width:44ch;font:400 16px/1.55 var(--k-font);color:var(--k-muted)}
.cpl .cpl-success-steps{list-style:none;margin:22px auto 18px;padding:0;max-width:380px;display:grid;gap:8px;text-align:left}
.cpl .cpl-success-steps li{display:flex;align-items:center;gap:12px;margin:0;padding:11px 14px;border-radius:14px;background:var(--k-soft);font:500 14px/1.35 var(--k-font);color:var(--k-ink2)}
.cpl .cpl-success-steps li::marker{content:none}
.cpl .cpl-success-steps b{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--k-teal-ink);font:700 12px var(--k-font);box-shadow:0 0 0 1px var(--k-line)}
.cpl .cpl-success-ref{font-size:13px!important}
.cpl .cpl-success-ref code{font:600 13px var(--cp-mono,ui-monospace,Menlo,monospace);background:var(--k-soft);padding:3px 8px;border-radius:8px;color:var(--k-ink)}
@keyframes cpl-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes cpl-pop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes cpl-draw{to{stroke-dashoffset:0}}

/* ---------- Contact page ---------- */
.cpl-contact{position:relative;width:min(1180px,calc(100vw - 2*var(--cp-gutter,20px)));margin:8px 0 0 50%;transform:translateX(-50%);font-size:16px}
.cpl .cpl-contact-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(18px,2.4vw,28px);align-items:start}
.cpl .cpl-contact-aside{position:sticky;top:calc(var(--cp-header-h,64px) + 24px);overflow:hidden;border-radius:28px;padding:clamp(28px,3.4vw,44px);color:#fff;background:radial-gradient(90% 70% at 100% 0%,rgba(20,224,208,.32),transparent 60%),radial-gradient(70% 60% at 0% 100%,rgba(0,169,157,.22),transparent 65%),var(--k-dark)}
.cpl .cpl-contact-aside h2{margin:0 0 14px;font:800 clamp(30px,3.4vw,44px)/1.04 var(--k-display);letter-spacing:-.04em;color:#fff}
.cpl .cpl-contact-aside .cpl-lede{margin:0 0 28px;font:400 17px/1.6 var(--k-font);color:rgba(255,255,255,.72)}
.cpl .cpl-steps{list-style:none;margin:0 0 28px;padding:0;display:grid;gap:18px}
.cpl .cpl-steps li{display:flex;gap:14px;align-items:flex-start;margin:0;padding:0}
.cpl .cpl-steps li::marker{content:none}
.cpl .cpl-steps li>span{flex:none;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);color:var(--k-electric)}
.cpl .cpl-steps strong{display:block;font:650 16px/1.3 var(--k-font);color:#fff;margin:2px 0 3px}
.cpl .cpl-steps p{margin:0;font:400 14px/1.5 var(--k-font);color:rgba(255,255,255,.62)}
.cpl .cpl-trust{display:flex;flex-wrap:wrap;gap:8px}
.cpl .cpl-trust span{display:inline-flex;align-items:center;gap:6px;padding:7px 12px 7px 10px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);font:600 13px/1 var(--k-font);color:#e8e8ed}
.cpl .cpl-trust .cpl-i{width:15px;height:15px;color:var(--k-electric)}
.cpl .cpl-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 22px}
.cpl .cpl-card-head h2{margin:0;font:800 clamp(24px,2.4vw,30px)/1.1 var(--k-display);letter-spacing:-.035em;color:var(--k-ink)}
.cpl .cpl-card-head p{display:inline-flex;align-items:center;gap:6px;margin:0;font:500 13px/1 var(--k-font);color:var(--k-muted)}
.cpl .cpl-card-head .cpl-i{width:16px;height:16px;color:var(--k-teal)}

/* ---------- End-of-article ---------- */
.cpl-article{margin:56px 0 8px;padding:clamp(22px,3vw,34px);border:1px solid var(--k-line);border-radius:28px;background:linear-gradient(180deg,#effbfa 0%,#fff 46%);box-shadow:0 1px 2px rgba(0,0,0,.04),0 30px 60px -34px rgba(10,20,30,.25);font-size:16px}
.cpl .cpl-article-head{display:flex;gap:16px;align-items:flex-start;margin:0 0 22px}
.cpl .cpl-badge{flex:none;width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,#14e0d0,#00a99d);color:#00201e;box-shadow:0 10px 24px -12px rgba(20,224,208,.8)}
.cpl .cpl-article-head h3{margin:0 0 6px;font:800 clamp(22px,2.4vw,27px)/1.12 var(--k-display);letter-spacing:-.03em;color:var(--k-ink)}
.cpl .cpl-article-head p:not(.cpl-kicker){margin:0;font:400 16px/1.55 var(--k-font);color:var(--k-ink2)}
.cpl .cpl-article-head .cpl-kicker{margin-bottom:6px}

/* ---------- Footer band ---------- */
.cpl-band{background:var(--cp-soft,#f5f5f7);padding:clamp(56px,8vw,104px) var(--cp-gutter,20px)}
.cpl .cpl-band-inner{max-width:var(--cp-wrap,1240px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(24px,4vw,64px);align-items:center;padding:clamp(28px,4.4vw,64px);border-radius:32px;color:#fff;background:radial-gradient(80% 90% at 0% 0%,rgba(20,224,208,.26),transparent 60%),radial-gradient(60% 80% at 100% 100%,rgba(0,169,157,.28),transparent 65%),var(--k-dark);box-shadow:0 40px 90px -40px rgba(10,20,30,.45)}
.cpl .cpl-band-copy h2{margin:0 0 18px;font:800 clamp(34px,4.4vw,56px)/1.02 var(--k-display);letter-spacing:-.045em;color:#fff}
.cpl .cpl-band-copy h2 em{font-style:normal;background:linear-gradient(135deg,#5ff3e6,#14e0d0 40%,#00c2b3);-webkit-background-clip:text;background-clip:text;color:transparent}
.cpl .cpl-band-copy>p:not(.cpl-kicker){margin:0 0 24px;max-width:46ch;font:400 18px/1.6 var(--k-font);color:rgba(255,255,255,.72)}
.cpl .cpl-band-copy ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.cpl .cpl-band-copy li{display:flex;align-items:center;gap:10px;margin:0;font:500 16px/1.4 var(--k-font);color:#e8e8ed}
.cpl .cpl-band-copy li .cpl-i{width:22px;height:22px;padding:4px;border-radius:50%;background:rgba(20,224,208,.16);color:var(--k-electric);stroke-width:2.4}
.cpl-band .cpl-card{color:var(--k-ink)}

/* ---------- Inline shortcode ---------- */
.cpl-inline{margin:2em 0;font-size:16px}
.cpl .cpl-inline-title{margin:0 0 18px;font:800 24px/1.15 var(--k-display);letter-spacing:-.03em}

/* ---------- Floating button + modal ---------- */
.cpl-fab{position:fixed;right:clamp(14px,2.4vw,28px);bottom:clamp(14px,2.4vw,28px);z-index:60;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 22px 0 18px;border:0;border-radius:999px;background:rgba(29,29,31,.92);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);color:#fff;font:650 15px/1 var(--cp-font,"Inter",system-ui,sans-serif);letter-spacing:-.01em;cursor:pointer;box-shadow:0 18px 40px -16px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.08) inset;opacity:0;transform:translateY(16px) scale(.96);pointer-events:none;transition:opacity .35s,transform .45s cubic-bezier(.2,.8,.2,1),background .2s}
.cpl-fab.is-on{opacity:1;transform:none;pointer-events:auto}
.cpl-fab:hover{background:#000}
.cpl-fab .cpl-i{width:22px;height:22px;color:#14e0d0}
.cpl-fab::before{content:"";position:absolute;left:14px;top:13px;width:9px;height:9px;border-radius:50%;background:#34c759;box-shadow:0 0 0 2px rgba(29,29,31,.92);animation:cpl-ping 2.6s ease-out infinite}
@keyframes cpl-ping{0%{box-shadow:0 0 0 2px rgba(29,29,31,.92),0 0 0 2px rgba(52,199,89,.5)}70%{box-shadow:0 0 0 2px rgba(29,29,31,.92),0 0 0 10px rgba(52,199,89,0)}100%{box-shadow:0 0 0 2px rgba(29,29,31,.92),0 0 0 10px rgba(52,199,89,0)}}
.admin-bar .cpl-fab{bottom:clamp(14px,2.4vw,28px)}
.cpl-modal{width:min(600px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:0;border-radius:30px;background:#fff;color:var(--cp-ink,#1d1d1f);box-shadow:0 50px 120px -30px rgba(0,0,0,.5);overflow:auto;overscroll-behavior:contain}
.cpl-modal::backdrop{background:rgba(11,13,16,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.cpl-modal[open]{animation:cpl-in .45s cubic-bezier(.2,.8,.2,1) both}
.cpl-modal[open]::backdrop{animation:cpl-fade .35s ease both}
@keyframes cpl-in{from{opacity:0;transform:translateY(24px) scale(.98)}to{opacity:1;transform:none}}
@keyframes cpl-fade{from{opacity:0}to{opacity:1}}
.cpl .cpl-modal-inner{position:relative;padding:clamp(24px,4vw,40px)}
.cpl .cpl-modal-inner h2{margin:0 0 8px;padding-right:44px;font:800 clamp(26px,3vw,32px)/1.08 var(--k-display);letter-spacing:-.04em;color:var(--k-ink)}
.cpl .cpl-modal-sub{margin:0 0 22px;font:400 16px/1.55 var(--k-font);color:var(--k-muted)}
.cpl .cpl-close{position:absolute;top:18px;right:18px;width:40px;height:40px;border:0;border-radius:50%;display:grid;place-items:center;background:var(--k-soft);color:var(--k-ink);cursor:pointer;transition:background .2s,transform .2s}
.cpl .cpl-close:hover{background:#e8e8ed;transform:rotate(90deg)}
html.cpl-lock{overflow:hidden}

/* ---------- Responsive ---------- */
@media (max-width:960px){
	.cpl .cpl-contact-grid,.cpl .cpl-band-inner{grid-template-columns:1fr}
	.cpl .cpl-contact-aside{position:relative;top:auto}
	.cpl .cpl-contact-grid .cpl-card--form{order:-1}
}
@media (max-width:600px){
	.cpl .cpl-grid{grid-template-columns:1fr}
	.cpl .cpl-chip-row{grid-template-columns:1fr 1fr}
	.cpl .cpl-chip-row .cpl-chip,.cpl .cpl-chip-row .cpl-chip:nth-child(n+4){grid-column:span 1}
	.cpl .cpl-chip-row .cpl-chip:nth-child(5){grid-column:1/-1}
	.cpl .cpl-actions{flex-direction:column;align-items:stretch;text-align:center}
	.cpl .cpl-submit{width:100%}
	.cpl .cpl-secure{justify-content:center}
	.cpl-article{margin-inline:-6px;border-radius:24px}
	.cpl .cpl-article-head{flex-direction:column;gap:12px}
	.cpl .cpl-band-inner{border-radius:26px}
	.cpl-band{padding-inline:12px}
	.cpl-fab span{display:none}
	.cpl-fab{width:58px;height:58px;padding:0;justify-content:center}
	.cpl-fab::before{left:auto;right:12px;top:12px}
	.cpl-modal{width:100vw;max-height:92dvh;margin:auto 0 0;border-radius:26px 26px 0 0}
	@keyframes cpl-in{from{transform:translateY(40px)}to{transform:none}}
}
@media (max-width:380px){
	.cpl .cpl-chip-row{grid-template-columns:1fr}
	.cpl .cpl-chip-row .cpl-chip:nth-child(n){grid-column:1/-1}
}
@media (prefers-reduced-motion:reduce){
	.cpl *,.cpl-fab,.cpl-modal{animation:none!important;transition:none!important}
	.cpl .cpl-success-badge .cpl-i{stroke-dashoffset:0}
}
