:root{--er-bg:#08030f;--er-card:rgba(255,255,255,.065);--er-card2:rgba(255,255,255,.095);--er-line:rgba(255,255,255,.13);--er-text:#fff;--er-muted:rgba(255,255,255,.72);--er-accent:#ff2f7d;--er-accent2:#04d9ff;--er-good:#36f1a5;--er-shadow:0 26px 80px rgba(0,0,0,.35)}
.ercsp-wrap,.ercsp-wrap *{box-sizing:border-box}.ercsp-wrap{width:min(1120px,calc(100% - 24px));margin:30px auto;color:var(--er-text);font-family:inherit;overflow:hidden}.ercsp-wrap input,.ercsp-wrap select,.ercsp-wrap textarea,.ercsp-wrap button{font:inherit}.ercsp-hero{display:grid;grid-template-columns:1.6fr .8fr;gap:18px;align-items:stretch;padding:26px;border:1px solid var(--er-line);border-radius:28px;background:radial-gradient(circle at 15% 15%,rgba(255,47,125,.2),transparent 28%),radial-gradient(circle at 85% 20%,rgba(4,217,255,.18),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03));box-shadow:var(--er-shadow)}.ercsp-kicker{display:block;letter-spacing:.16em;text-transform:uppercase;font-size:.76rem;font-weight:800;color:rgba(255,255,255,.72);margin-bottom:10px}.ercsp-hero h2{font-size:clamp(2rem,5vw,4.2rem);line-height:.95;margin:0 0 16px;font-weight:900;letter-spacing:-.055em}.ercsp-hero p{font-size:clamp(1rem,2vw,1.2rem);line-height:1.55;margin:0;color:var(--er-muted);max-width:720px}.ercsp-price-card{border:1px solid var(--er-line);border-radius:24px;background:rgba(0,0,0,.27);padding:26px;display:flex;flex-direction:column;justify-content:center;min-height:170px}.ercsp-price-card span{color:var(--er-muted);font-weight:800}.ercsp-price-card strong,.ercsp-summary-total{display:block;font-size:clamp(2rem,6vw,3.4rem);line-height:1;margin:10px 0;font-weight:950;letter-spacing:-.04em;background:linear-gradient(90deg,#fff,#ffecf5,#a9f6ff);-webkit-background-clip:text;background-clip:text;color:transparent}.ercsp-price-card small{color:var(--er-muted)}.ercsp-success{padding:18px 20px;border-radius:18px;background:rgba(54,241,165,.12);border:1px solid rgba(54,241,165,.45);margin-bottom:18px;color:#dfffee;font-weight:800}.ercsp-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;margin-top:18px}.ercsp-panel{border:1px solid var(--er-line);border-radius:26px;background:linear-gradient(150deg,rgba(255,255,255,.08),rgba(255,255,255,.035));box-shadow:var(--er-shadow);padding:22px;min-width:0}.ercsp-label{display:block;font-weight:900;margin-bottom:12px}.ercsp-service-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:18px}.ercsp-service-tabs label{cursor:pointer}.ercsp-service-tabs input{position:absolute;opacity:0}.ercsp-service-tabs span{display:flex;justify-content:center;align-items:center;text-align:center;min-height:54px;border-radius:999px;border:1px solid var(--er-line);background:rgba(255,255,255,.055);font-weight:900;transition:.2s}.ercsp-service-tabs input:checked+span{background:linear-gradient(135deg,var(--er-accent),#ff6a2f);border-color:transparent;box-shadow:0 12px 32px rgba(255,47,125,.22)}.ercsp-service-box{padding:20px;border-radius:22px;border:1px solid var(--er-line);background:rgba(0,0,0,.2)}.ercsp-service-box[hidden]{display:none}.ercsp-service-box h3,.ercsp-details-panel h3{font-size:1.55rem;margin:0 0 10px;letter-spacing:-.03em}.ercsp-service-box p{color:var(--er-muted);line-height:1.55;margin:0 0 16px}.ercsp-two,.ercsp-three{display:grid;gap:14px}.ercsp-two{grid-template-columns:repeat(2,minmax(0,1fr))}.ercsp-three{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:14px}.ercsp-wrap label{font-weight:800;color:rgba(255,255,255,.9)}.ercsp-wrap input[type=text],.ercsp-wrap input[type=email],.ercsp-wrap input[type=tel],.ercsp-wrap input[type=date],.ercsp-wrap input[type=number],.ercsp-wrap select,.ercsp-wrap textarea{width:100%;margin-top:7px;border:1px solid var(--er-line);border-radius:16px;background:rgba(255,255,255,.08);color:var(--er-text);padding:14px 15px;outline:none;min-height:48px}.ercsp-wrap select option{color:#111}.ercsp-wrap textarea{resize:vertical}.ercsp-wrap input:focus,.ercsp-wrap select:focus,.ercsp-wrap textarea:focus{border-color:rgba(4,217,255,.7);box-shadow:0 0 0 4px rgba(4,217,255,.12)}.ercsp-mini-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px}.ercsp-mini-list span{padding:9px 10px;border-radius:14px;background:rgba(255,255,255,.07);font-size:.88rem;color:var(--er-muted)}.ercsp-checkline{display:flex!important;align-items:flex-start;gap:10px;margin-top:14px;line-height:1.4}.ercsp-checkline input{margin-top:4px}.ercsp-deposit-note{border-left:3px solid var(--er-accent);padding-left:12px}.ercsp-summary{position:sticky;top:20px;align-self:start}.ercsp-summary-breakdown{color:var(--er-muted);line-height:1.45;white-space:pre-wrap}.ercsp-summary-note{margin-top:18px;border-radius:18px;padding:14px;background:rgba(4,217,255,.08);border:1px solid rgba(4,217,255,.16);color:var(--er-muted);font-size:.95rem}.ercsp-details-panel{margin-top:18px}.ercsp-details-panel>label{display:block;margin-top:10px}.ercsp-actions{display:flex;gap:14px;align-items:center;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.ercsp-actions button,.ercsp-signature-tools button{border:0;border-radius:999px;padding:15px 20px;font-weight:950;cursor:pointer}.ercsp-open-agreement{background:#fff;color:#0a0610}.ercsp-submit{background:linear-gradient(135deg,var(--er-accent),#ff6a2f);color:#fff;box-shadow:0 18px 42px rgba(255,47,125,.24)}.ercsp-submit:disabled{opacity:.45;cursor:not-allowed}.ercsp-signed-status{color:var(--er-muted);margin-right:auto}.ercsp-signed-status.is-signed{color:var(--er-good);font-weight:900}.ercsp-modal{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.72);display:none;align-items:center;justify-content:center;padding:18px}.ercsp-modal.is-open{display:flex}.ercsp-modal-card{width:min(780px,100%);max-height:92vh;overflow:auto;border:1px solid var(--er-line);border-radius:28px;background:#13091e;color:#fff;padding:24px;box-shadow:0 36px 120px rgba(0,0,0,.6);position:relative}.ercsp-modal-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border-radius:999px;border:1px solid var(--er-line);background:rgba(255,255,255,.08);color:#fff;font-size:28px;line-height:1;cursor:pointer}.ercsp-modal-card h3{font-size:clamp(1.6rem,4vw,2.5rem);margin:0 46px 14px 0;letter-spacing:-.04em}.ercsp-agreement-text{max-height:270px;overflow:auto;border:1px solid var(--er-line);border-radius:18px;background:rgba(255,255,255,.06);padding:16px;line-height:1.55;color:rgba(255,255,255,.86);white-space:pre-wrap}.ercsp-signature-pad{display:block;width:100%;height:200px;border:1px dashed rgba(255,255,255,.35);border-radius:18px;background:#fff;margin-top:8px;touch-action:none}.ercsp-signature-tools{display:flex;justify-content:space-between;gap:12px;margin-top:14px;flex-wrap:wrap}.ercsp-clear-signature{background:rgba(255,255,255,.11);color:#fff;border:1px solid var(--er-line)!important}.ercsp-confirm-signature{background:linear-gradient(135deg,var(--er-accent),#ff6a2f);color:#fff}.ercsp-legal-small{color:var(--er-muted);font-size:.9rem;margin-bottom:0}
@media (max-width:900px){.ercsp-wrap{width:100%;max-width:100%;padding:0 12px;margin:20px auto;overflow:hidden}.ercsp-hero,.ercsp-grid{grid-template-columns:1fr}.ercsp-hero{padding:20px;border-radius:22px}.ercsp-grid{gap:14px}.ercsp-summary{position:relative;top:auto}.ercsp-three{grid-template-columns:1fr}.ercsp-two{grid-template-columns:1fr}.ercsp-service-tabs{grid-template-columns:1fr}.ercsp-mini-list{grid-template-columns:1fr}.ercsp-panel{padding:17px;border-radius:22px}.ercsp-actions{position:sticky;bottom:0;background:linear-gradient(180deg,transparent,rgba(8,3,15,.9) 25%,rgba(8,3,15,.98));padding:18px 0 8px;z-index:30}.ercsp-actions button{flex:1;min-width:145px}.ercsp-signed-status{width:100%;text-align:center;margin:0;font-size:.92rem}.ercsp-modal{padding:10px;align-items:flex-end}.ercsp-modal-card{border-radius:24px 24px 0 0;padding:20px;max-height:95vh}.ercsp-signature-pad{height:170px}.ercsp-wrap input,.ercsp-wrap select,.ercsp-wrap textarea{font-size:16px}}
.ercsp-private-status{display:block;font-size:clamp(1.8rem,5vw,3rem);line-height:1;margin:10px 0;font-weight:950;letter-spacing:-.04em;background:linear-gradient(90deg,#fff,#ffecf5,#a9f6ff);-webkit-background-clip:text;background-clip:text;color:transparent}.ercsp-private-note{margin-top:14px!important;border-radius:16px;padding:13px 14px;background:rgba(4,217,255,.08);border:1px solid rgba(4,217,255,.16);font-size:.95rem}.ercsp-process-card h3{font-size:1.55rem;margin:0 0 14px;letter-spacing:-.03em}.ercsp-process-list{display:grid;gap:10px}.ercsp-process-list span{display:block;padding:12px 13px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);font-weight:850;color:rgba(255,255,255,.86)}

.ercsp-customer-price{margin-top:18px;border:1px solid rgba(255,255,255,.15);border-radius:22px;background:radial-gradient(circle at 20% 20%,rgba(255,47,125,.16),transparent 42%),rgba(255,255,255,.06);padding:18px}.ercsp-customer-price small{display:block;color:var(--er-muted);line-height:1.45}.ercsp-public-price-card .ercsp-live-total{display:block;font-size:clamp(2rem,6vw,3.4rem);line-height:1;margin:10px 0;font-weight:950;letter-spacing:-.04em;background:linear-gradient(90deg,#fff,#ffecf5,#a9f6ff);-webkit-background-clip:text;background-clip:text;color:transparent}.ercsp-public-price-card{position:relative;overflow:hidden}.ercsp-public-price-card:after{content:'';position:absolute;inset:auto -50px -70px auto;width:150px;height:150px;border-radius:999px;background:rgba(4,217,255,.13);filter:blur(8px);pointer-events:none}
@media (max-width:900px){.ercsp-customer-price{padding:15px;border-radius:18px}.ercsp-public-price-card .ercsp-live-total,.ercsp-summary-total{font-size:clamp(2rem,14vw,3rem)}}

/* v1.3.0 smart page-aware quote upgrades */
.ercsp-smart{isolation:isolate;position:relative}
.ercsp-smart:before{content:'';position:absolute;inset:-30px -20px auto -20px;height:220px;background:radial-gradient(circle at 30% 0%,rgba(255,47,125,.18),transparent 52%),radial-gradient(circle at 80% 10%,rgba(4,217,255,.16),transparent 44%);pointer-events:none;z-index:-1;filter:blur(2px)}
.ercsp-trust-row{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.ercsp-trust-row span{display:inline-flex;align-items:center;gap:6px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);border-radius:999px;padding:9px 12px;color:rgba(255,255,255,.86);font-weight:850;font-size:.9rem}.ercsp-trust-row span:before{content:'✓';color:var(--er-good);font-weight:950}.ercsp-is-bumper .ercsp-hero{background:radial-gradient(circle at 15% 15%,rgba(4,217,255,.22),transparent 28%),radial-gradient(circle at 80% 20%,rgba(255,47,125,.14),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03))}.ercsp-is-equipment .ercsp-hero{background:radial-gradient(circle at 15% 15%,rgba(255,106,47,.18),transparent 28%),radial-gradient(circle at 85% 20%,rgba(4,217,255,.16),transparent 32%),linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.03))}.ercsp-service-box h3:before{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;margin-right:10px;border-radius:12px;background:linear-gradient(135deg,var(--er-accent),#ff6a2f);font-size:18px;vertical-align:middle}.ercsp-service-box[data-service-box="dj"] h3:before{content:'🎧'}.ercsp-service-box[data-service-box="bumper"] h3:before{content:'⚽'}.ercsp-service-box[data-service-box="equipment"] h3:before{content:'🔊'}
.ercsp-cta-card{max-width:760px;margin:24px auto;padding:24px;border:1px solid var(--er-line);border-radius:28px;background:radial-gradient(circle at 10% 10%,rgba(255,47,125,.18),transparent 34%),radial-gradient(circle at 90% 15%,rgba(4,217,255,.15),transparent 36%),rgba(255,255,255,.06);color:#fff;box-shadow:var(--er-shadow)}.ercsp-cta-card span{display:block;letter-spacing:.16em;text-transform:uppercase;font-size:.75rem;font-weight:900;color:rgba(255,255,255,.7);margin-bottom:8px}.ercsp-cta-card strong{display:block;font-size:clamp(1.7rem,4vw,3rem);line-height:1;letter-spacing:-.04em}.ercsp-cta-card p{color:var(--er-muted);margin:12px 0 18px}.ercsp-cta-card a{display:inline-flex;align-items:center;justify-content:center;padding:13px 19px;border-radius:999px;background:linear-gradient(135deg,var(--er-accent),#ff6a2f);color:#fff;text-decoration:none;font-weight:950}.ercsp-cta-card a:hover{filter:brightness(1.08);color:#fff}
@media (max-width:900px){.ercsp-smart:before{display:none}.ercsp-trust-row{gap:7px;margin-top:14px}.ercsp-trust-row span{font-size:.82rem;padding:8px 10px}.ercsp-smart .ercsp-hero h2{font-size:clamp(2rem,12vw,3.2rem);line-height:.98}.ercsp-smart .ercsp-hero p{font-size:1rem}.ercsp-cta-card{margin:18px 12px;border-radius:22px;padding:20px}}

/* v1.4: service-specific quote forms */
.ercsp-locked-service .ercsp-service-tabs{display:none!important}
.ercsp-locked-service .ercsp-label{display:none!important}
.ercsp-locked-service .ercsp-main-panel{padding-top:22px}
.ercsp-service-box .ercsp-private-note,.ercsp-deposit-note{color:rgba(255,255,255,.72);line-height:1.45}
.ercsp-locked-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(135deg,rgba(255,47,125,.14),rgba(4,217,255,.09));}
.ercsp-locked-banner span{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.68);font-weight:900}.ercsp-locked-banner strong{font-size:1.05rem;color:#fff;font-weight:950;text-align:right}
@media (max-width:900px){.ercsp-locked-banner{align-items:flex-start;flex-direction:column}.ercsp-locked-banner strong{text-align:left}}

/* v1.5.0 instant service switching + clearer non-DJ calculators */
.ercsp-service-tab.is-active span{background:linear-gradient(135deg,var(--er-accent),#ff6a2f);border-color:transparent;box-shadow:0 12px 32px rgba(255,47,125,.22)}
.ercsp-option-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 16px}
.ercsp-option-strip span{display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:15px;background:rgba(255,255,255,.07);padding:10px 11px;min-height:48px;color:rgba(255,255,255,.88);font-weight:850;font-size:.92rem;line-height:1.25}
.ercsp-risk-note{border-left:3px solid var(--er-good);padding-left:12px!important;background:rgba(54,241,165,.07)!important;border-top:1px solid rgba(54,241,165,.13)!important;border-right:1px solid rgba(54,241,165,.13)!important;border-bottom:1px solid rgba(54,241,165,.13)!important}
.ercsp-modal-service-title{margin:-2px 0 14px;padding:11px 13px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.07);font-weight:950;color:#fff}
@media (max-width:900px){.ercsp-option-strip{grid-template-columns:1fr}.ercsp-option-strip span{justify-content:flex-start;text-align:left}.ercsp-service-tabs span{min-height:62px;font-size:1.05rem}}
