.wcre-popup {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: grid;
	place-items: center;
	padding: 1rem;
	background: rgb(15 23 42 / 68%);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.wcre-popup__panel {
	position: relative;
	inline-size: min(100%, 28rem);
	max-block-size: calc(100vh - 2rem);
	overflow: auto;
	box-sizing: border-box;
	padding-block: 2rem;
	padding-inline: 2rem;
	border: 1px solid #cbd5e1;
	border-radius: .75rem;
	background: #fff;
	color: #172033;
	box-shadow: 0 1rem 3rem rgb(15 23 42 / 25%);
}

.wcre-popup__close {
	position: absolute;
	inset-block-start: .5rem;
	inset-inline-end: .5rem;
	min-inline-size: 44px;
	min-block-size: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #334155;
	cursor: pointer;
	font-size: 1.75rem;
	line-height: 1;
}

.wcre-popup__heading { margin: 0 0 .5rem; padding-inline-end: 3rem; font-size: 1.375rem; font-weight: 700; line-height: 1.2; }
.wcre-popup__text { margin: 0 0 1rem; color: #334155; font-size: 1rem; line-height: 1.5; }
.wcre-popup__form { display: grid; gap: 1rem; }
.wcre-popup__label { display: grid; gap: .35rem; font-weight: 600; }
.wcre-popup__input { inline-size: 100%; box-sizing: border-box; padding: .7rem .75rem; border: 1px solid #64748b; border-radius: .35rem; background: #fff; color: #172033; font: inherit; }
.wcre-popup__consent { display: flex; gap: .5625rem; align-items: flex-start; color: #334155; line-height: 1.5; }
.wcre-popup__consent input { inline-size: 20px; block-size: 20px; margin-block-start: .125rem; accent-color: #c2410c; flex: 0 0 auto; }
.wcre-popup__submit { inline-size: 100%; padding: .75rem 1rem; border: 0; border-radius: .4rem; background: #c2410c; color: #fff; cursor: pointer; font: inherit; font-weight: 700; }
.wcre-popup__submit:disabled { opacity: .65; cursor: wait; }
.wcre-popup__error { min-block-size: 0; margin: 0; color: #9f1239; }
.wcre-popup__honeypot { position: absolute; inline-size: 1px; block-size: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.wcre-popup button:focus-visible, .wcre-popup input:focus-visible { outline: 3px solid #2563eb; outline-offset: 3px; }

@media (max-width: 480px) {
	.wcre-popup { align-items: end; padding: 0; }
	.wcre-popup__panel { inline-size: 100%; max-block-size: 90vh; border-radius: .75rem .75rem 0 0; padding-block: 20px; padding-inline: 20px; }
}

@media (prefers-reduced-motion: reduce) {
	.wcre-popup *, .wcre-popup *::before, .wcre-popup *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
