/* ClearLee Stripe Pay — branded checkout */

.clsp-pay{
	--clsp-ink:#282923;
	--clsp-gold:#b28538;
	--clsp-gold-deep:#8b6427;
	--clsp-cream:#faf8f4;
	--clsp-line:rgba(40,41,35,.12);
	width:100%;
	box-sizing:border-box;
	font-family:'DM Sans',Arial,sans-serif;
	color:var(--clsp-ink);
}

.clsp-pay *,
.clsp-pay *::before,
.clsp-pay *::after{box-sizing:border-box}

.clsp-pay-head{margin:0 0 22px}
.clsp-pay-kicker,
.clsp-pay-success-kicker{
	display:block;
	margin:0 0 8px;
	font-size:11px;
	letter-spacing:.16em;
	text-transform:uppercase;
	color:var(--clsp-gold-deep);
	font-weight:600;
}
.clsp-pay-title{
	display:block;
	font-size:clamp(22px,3vw,28px);
	font-weight:500;
	letter-spacing:-.03em;
	line-height:1.15;
	color:var(--clsp-ink);
}
.clsp-pay-intro{
	margin:10px 0 0;
	font-size:14px;
	line-height:1.55;
	color:rgba(40,41,35,.62);
}

.clsp-pay-form{display:flex;flex-direction:column;gap:16px}
.clsp-grid{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:14px;
}
@media (max-width:560px){
	.clsp-grid{grid-template-columns:1fr}
}

.clsp-field{display:flex;flex-direction:column;gap:7px;margin:0}
.clsp-field > span,
.clsp-field-label{
	font-size:11px;
	letter-spacing:.12em;
	text-transform:uppercase;
	font-weight:600;
	color:rgba(40,41,35,.62);
}
.clsp-field input,
.clsp-field textarea{
	width:100%;
	padding:12px 14px;
	border:1px solid var(--clsp-line);
	border-radius:12px;
	background:var(--clsp-cream);
	color:var(--clsp-ink);
	font-size:15px;
	font-family:inherit;
	outline:none;
	transition:border-color .15s ease, box-shadow .15s ease;
}
.clsp-field input:focus,
.clsp-field textarea:focus{
	border-color:var(--clsp-gold);
	box-shadow:0 0 0 3px rgba(178,133,56,.18);
}
.clsp-field textarea{resize:vertical;min-height:64px}

.clsp-amount-wrap{
	display:flex;
	align-items:center;
	gap:0;
	border:1px solid var(--clsp-line);
	border-radius:12px;
	background:var(--clsp-cream);
	overflow:hidden;
}
.clsp-amount-wrap:focus-within{
	border-color:var(--clsp-gold);
	box-shadow:0 0 0 3px rgba(178,133,56,.18);
}
.clsp-currency{
	padding:0 4px 0 14px;
	font-family:'Cormorant Garamond',Georgia,serif;
	font-size:28px;
	color:var(--clsp-gold-deep);
	line-height:1;
}
.clsp-field--amount input{
	border:0!important;
	box-shadow:none!important;
	background:transparent!important;
	font-family:'Cormorant Garamond',Georgia,serif;
	font-size:32px!important;
	font-weight:400;
	letter-spacing:-.02em;
	padding:10px 14px 10px 6px!important;
}
.clsp-field--amount input::-webkit-outer-spin-button,
.clsp-field--amount input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.clsp-field--amount input[type=number]{-moz-appearance:textfield}

.clsp-suggest{display:flex;flex-wrap:wrap;gap:8px;margin-top:-4px}
.clsp-chip{
	appearance:none;
	border:1px solid var(--clsp-line);
	background:#fff;
	color:var(--clsp-ink);
	border-radius:999px;
	padding:8px 14px;
	font-size:13px;
	font-weight:600;
	cursor:pointer;
	font-family:inherit;
	transition:background .15s ease,border-color .15s ease,color .15s ease;
}
.clsp-chip:hover,
.clsp-chip.is-active{
	background:rgba(178,133,56,.12);
	border-color:rgba(178,133,56,.45);
	color:var(--clsp-gold-deep);
}

.clsp-element-wrap{
	display:flex;
	flex-direction:column;
	gap:8px;
	padding-top:4px;
}
#clsp-payment-element{
	min-height:48px;
	padding:4px 0;
}

.clsp-submit{
	appearance:none;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	width:100%;
	margin-top:4px;
	padding:16px 22px;
	border:0;
	border-radius:999px;
	background:var(--clsp-ink);
	color:#f6f1ea;
	font-size:15px;
	font-weight:600;
	letter-spacing:.02em;
	cursor:pointer;
	font-family:inherit;
	transition:background .15s ease, transform .15s ease, opacity .15s ease;
}
.clsp-submit:hover{background:#1a1a16}
.clsp-submit:disabled{
	opacity:.55;
	cursor:wait;
	transform:none;
}
.clsp-submit-arrow{opacity:.75}

.clsp-secure{
	margin:0;
	text-align:center;
	font-size:12px;
	color:rgba(40,41,35,.48);
}

.clsp-pay-error{
	padding:12px 14px;
	border-radius:12px;
	background:rgba(180,35,24,.08);
	border:1px solid rgba(180,35,24,.22);
	color:#8a1c14;
	font-size:13px;
	line-height:1.45;
}
.clsp-pay-alert{
	padding:16px 18px;
	border-radius:14px;
	background:rgba(178,133,56,.1);
	border:1px solid rgba(178,133,56,.28);
	color:var(--clsp-ink);
	font-size:14px;
	line-height:1.5;
}
.clsp-pay-success{
	padding:22px 20px;
	border-radius:16px;
	background:linear-gradient(160deg,#fff 0%,#f7f3ed 100%);
	border:1px solid rgba(178,133,56,.35);
}
.clsp-pay-success strong{
	display:block;
	margin-top:4px;
	font-size:18px;
	font-weight:500;
	letter-spacing:-.02em;
	line-height:1.35;
}
.clsp-pay-ref{
	margin:14px 0 0;
	font-size:12px;
	color:rgba(40,41,35,.55);
}
.clsp-pay-ref code{
	font-size:11px;
	word-break:break-all;
}

/* Sit cleanly inside contact-atelier card */
.contact-atelier-card .clsp-pay,
.contact-atelier-panel .clsp-pay{
	padding:4px 2px 2px;
}
