.sld-widget {
    --sld-pink: #DC1464;
    --sld-pink-dark: #C8215A;
    --sld-ink: #1a1a1a;
    --sld-muted: #6A7282;
    --sld-border: #E5E7EB;
    max-width: 670px;
    margin: 0 auto;
    font-family: 'Poppins';
    color: var(--sld-ink);
}
/* ---------- Step form (light card) ---------- */
.sld-form {
    background: #fff;
    /* border: 1px solid var(--sld-border); */
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0px 1px 3px 0px #0000001A;
}

.sld-step {
	padding-top: 25px;
	margin-top: 25px;
	border-top: 1px solid #F3F4F6;
}

.sld-step:nth-child(3) {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

.sld-step h3 {
    display: flex;
    align-items: baseline;
    gap: 12px;
    font-size: 14px;
    color: #101828;
    font-family: 'Poppins';
    font-weight: 700;
}

.sld-step h3 small {
	font-weight: 400;
	color: var(--sld-muted);
	font-size: 14px;
}

.sld-step-num {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--sld-pink);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}
.sld-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

@media (max-width: 480px) {
	.sld-row { grid-template-columns: 1fr; }
}

.sld-step label {
    display: block;
    color: #364153;
    margin: 16px 0px 0px;
    font-family: Poppins;
    font-weight: 600;
    font-size: 14px;
    line-height: 24px;
    letter-spacing: 0px;
}

.sld-step label small {
    display: block;
    color: var(--sld-muted);
    margin-top: 4px;
    font-family: Poppins;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: 0px;
}

.sld-step input[type="text"], 
.sld-step input[type="email"], 
.sld-step input[type="tel"], 
.sld-step input[type="url"], 
.sld-step select {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid #E5E7EB;
    border-radius: 14px;
    font-size: 14px;
    font-family: inherit;
    color: var(--sld-ink);
    background: #fff;
    line-height: 1;
    margin-top: 4px;
}
.sld-step input[type="text"]::placeholder, 
.sld-step input[type="email"]::placeholder, 
.sld-step input[type="tel"]::placeholder, 
.sld-step input[type="url"]::placeholder{
	color:#99A1AF;
}
.sld-step input:focus,
.sld-step select:focus {
	outline: none;
	border-color: var(--sld-pink);
/*	box-shadow: 0 0 0 3px rgba(220, 20, 100, .12);*/
}

.sld-btn-group {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 5px;
}

.sld-btn-group button {
    padding: 8px 16px;
    border-radius: 50px;
    background: #fff;
    font-size: 14px;
    cursor: pointer;
    color: #374151;
    white-space: nowrap;
    border: 1px solid #D1D5DB;
    font-weight: 600;
    letter-spacing: 0;
    font-family: 'Poppins';
}

.sld-btn-group button.is-active {
	border-color: var(--sld-pink);
	background: var(--sld-pink);
	color: #fff;
}

.sld-fineprint {
    font-size: 14px;
    color: var(--sld-muted);
    margin: 18px 0 16px;
    line-height: 1.5;
}

.sld-error {
	background: #fdeceb;
	color: #b3261e;
	border: 1px solid #f4c6c2;
	border-radius: 8px;
	padding: 8px 10px;
	font-size: 12px;
	margin-bottom: 12px;
}

.sld-submit {
    padding: 18px 26px;
    border: 0;
    border-radius: 999px;
    background: var(--sld-pink);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    font-family: 'Poppins';
}

.sld-submit:hover { background: var(--sld-pink-dark); }
.sld-submit:disabled { opacity: .6; cursor: default; }

/* ---------- Confirmation screen (dark card) ---------- */
.sld-confirm {
    text-align: center;
    border-radius: 24px;
    padding: 40px 32px;
    color: #fff;
    background-image: url(https://copyleft.sg/wp-content/uploads/2026/08/hero-bg.webp);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    max-width: 580px;
    margin: 0 auto;
    box-shadow: 0px 32px 80px 0px #00000080;
    border-top: 1px solid #FFFFFF12;
}
.sld-confirm-check {
    width: 64px;
    height: 64px;
    margin: 0 auto 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    line-height: 1;
    box-shadow: 0px 8px 24px 0px #DC325A73;
    background: linear-gradient(135deg, #E8356D 0%, #C0284F 100%);
}

.sld-confirm h2 {
    margin: 0 0 10px;
    font-family: Poppins;
    font-weight: 800;
    font-size: 35px;
    line-height: 40px;
    letter-spacing: -1.3px;
    text-align: center;
}

.sld-confirm p {
    color: rgba(255, 255, 255, .78);
    margin: 0 auto 24px;
    font-weight: 400;
    font-size: 14px;
    line-height: 22.75px;
    letter-spacing: 0px;
    text-align: center;
}
.sld-confirm p strong{
	color:white;
}
.sld-confirm-phone {
    background: #FFFFFF14;
    border-radius: 14px;
    padding: 13px;
    font-size: 16px;
    letter-spacing: .04em;
    margin-bottom: 24px;
    border: 1px solid #FFFFFF33;
    font-weight: 400;
    color: #FFFFFFE5;
}

.sld-confirm-ref {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    color: var(--sld-pink-dark);
    border-radius: 999px;
    padding: 8px 20px;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: 24px;
}

.sld-confirm-ref span {
	font-weight: 800;
	letter-spacing: .06em;
	color: var(--sld-pink);
}

.sld-confirm ol {
    text-align: left;
    margin: 0 auto;
    padding-left: 20px;
    color: #FFFFFFBF;
    font-size: 14px;
    line-height: 1.5;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.sld-confirm ol{
    counter-reset: item;
    list-style: none;
    padding: 0;
}
.sld-confirm ol li{
    counter-increment: item;
    display: flex;
    gap: 12px;
}
.sld-confirm ol li::marker{
    display:none;
}
.sld-confirm ol li:before {
    content: counter(item) ". ";
    box-shadow: 0px 2px 8px 0px #DC325A66;
    border: 1px solid #E8356D99;
    background: #E8356D66;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 100%;
    line-height: 1;
    font-size: 12px;
    color: white;
    font-weight: 700;
}