/**

 * Gift voucher frontend (multi-step form).

 */



.gv-form-wrap {

	max-width: 830px;

	width: 100%;

	margin: 0 auto;

	font-family: var(--montserrat-font) !important;

	color: #0f172a;

}



.gv-form-header {

	text-align: center;

	margin-bottom: 2rem;

}



.gv-form-title {

	font-size: 36px;

	line-height: 40px;

	margin: 0 0 8px;

	font-weight: 700;

	color: #1E2939;

}



.gv-form-sub {

	margin: 0;

	color: #4A5565;

	font-size: 16px;

	line-height: 24px;

}



.gv-stepper {

	display: flex;

	justify-content: space-between;

	list-style: none;

	padding: 0;

	margin: 0 auto 60px;

	gap: 0.5rem;

	counter-reset: gvstep;

	max-width: 800px;

	width: 100%;

}



.gv-stepper .gv-step {

	flex: 1;

	text-align: center;

	display: flex;

	align-items: center;

	font-size: 12px;

	line-height: 16px;

	color: #4A5565;

	position: relative;

	flex-direction: column;

	position: relative;
	padding: 0;
	margin: 0;

}



.gv-stepper .gv-step::before {

	content: '';

	width: calc(100% - 60px);

	height: 4px;

	background: #ffffff;

	position: absolute;

	top: 18px;

	left: calc(100% - 45px);

}



.gv-step.gv-step--done::before {

	background: #00C950;

}



.gv-step:last-child:before {

	display: none;

}



.gv-step__num {

	display: inline-flex;

	min-width: 40px;

	max-width: 40px;

	height: 40px;

	background: #ffffff;

	border-radius: 999px;

	align-items: center;

	justify-content: center;

	margin-bottom: 12px;

	font-weight: 400;

	font-size: 16px;

	line-height: 24px;

	color: #6A7282;

}



.gv-step--active .gv-step__num {

	background: #FF6900;

	color: #fff;

}



.gv-step--done .gv-step__num {

	background: #16a34a;

	border-color: #16a34a;

	color: transparent;

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='13' viewBox='0 0 12 13' fill='none'%3E%3Cpath d='M2.52808 12.32C2.52808 12.1813 2.50142 12.112 2.44808 12.112L2.08008 12.288C2.08008 12.2133 2.03742 12.16 1.95208 12.128L1.82408 12.112C1.73875 12.112 1.63208 12.1493 1.50408 12.224C1.48275 12.1707 1.45608 12.1173 1.42408 12.064C1.39208 12.0107 1.36542 11.9627 1.34408 11.92C1.20542 11.6533 1.06675 11.36 0.928082 11.04C0.800082 10.7093 0.677415 10.3947 0.560082 10.096C0.453415 9.79733 0.368082 9.56266 0.304082 9.392C0.261415 9.25333 0.213415 9.04533 0.160082 8.768C0.106749 8.49066 0.0534154 8.13866 8.20756e-05 7.712C0.117415 7.78666 0.208082 7.824 0.272082 7.824C0.346749 7.824 0.416082 7.712 0.480082 7.488C0.512082 7.53066 0.570749 7.552 0.656082 7.552C0.720082 7.552 0.768082 7.53066 0.800082 7.488L1.05608 7.104L1.34408 7.2H1.36008C1.38142 7.2 1.40275 7.18933 1.42408 7.168C1.44542 7.14666 1.47742 7.12533 1.52008 7.104C1.60542 7.05066 1.66942 7.024 1.71208 7.024L1.76008 7.04C2.02675 7.168 2.19742 7.40266 2.27208 7.744C2.46408 8.55466 2.65608 8.96 2.84808 8.96C3.04008 8.96 3.26408 8.75733 3.52008 8.352C3.64808 8.14933 3.77608 7.91466 3.90408 7.648C4.04275 7.38133 4.18142 7.08266 4.32008 6.752C4.34142 6.88 4.36275 6.944 4.38408 6.944C4.43742 6.944 4.52808 6.81066 4.65608 6.544C4.79475 6.27733 5.01342 5.90933 5.31208 5.44C5.48275 5.152 5.69608 4.82666 5.95208 4.464C6.21875 4.10133 6.50142 3.728 6.80008 3.344C7.09875 2.96 7.38675 2.59733 7.66408 2.256C7.95208 1.91466 8.20808 1.62133 8.43208 1.376C8.65608 1.13066 8.82142 0.970663 8.92808 0.895997C9.33342 0.618663 9.65342 0.351997 9.88808 0.0959969C9.87742 0.170663 9.86142 0.239997 9.84008 0.303997C9.82942 0.35733 9.82408 0.394663 9.82408 0.415997C9.82408 0.458663 9.84542 0.479997 9.88808 0.479997L10.3361 0.255997V0.319997C10.3361 0.40533 10.3574 0.447997 10.4001 0.447997C10.4321 0.447997 10.4961 0.399997 10.5921 0.303997C10.6881 0.207997 10.7414 0.138664 10.7521 0.0959969L10.7201 0.319997L11.2641 -2.86102e-06L11.1361 0.287997C11.3067 0.170664 11.4294 0.111997 11.5041 0.111997C11.5467 0.111997 11.5787 0.138663 11.6001 0.191997C11.6214 0.234663 11.6321 0.27733 11.6321 0.319997C11.6321 0.383997 11.6054 0.458663 11.5521 0.543997C11.4987 0.62933 11.4294 0.730664 11.3441 0.847997C11.2801 0.93333 11.1734 1.06133 11.0241 1.232C10.8854 1.392 10.6721 1.632 10.3841 1.952C10.0961 2.26133 9.71208 2.69333 9.23208 3.248C9.10408 3.38666 8.90675 3.632 8.64008 3.984C8.37342 4.32533 8.06942 4.72533 7.72808 5.184C7.39742 5.632 7.06675 6.08533 6.73608 6.544C6.40542 7.00266 6.11208 7.41866 5.85608 7.792C5.60008 8.15466 5.41875 8.42666 5.31208 8.608L4.32008 10.288C4.10675 10.6507 3.93075 10.9493 3.79208 11.184C3.65342 11.408 3.54675 11.5627 3.47208 11.648C3.31208 11.84 3.13608 12.0107 2.94408 12.16L2.80008 12.08L2.67208 12.16L2.52808 12.32Z' fill='white'/%3E%3C/svg%3E");

	background-repeat: no-repeat;

	background-size: 14px;

	background-position: center;



}



.gv-notice {

	padding: 0.75rem 1rem;

	border-radius: 8px;

	margin-bottom: 1rem;

	font-size: 0.9rem;

}



.gv-notice--error {

	background: #fef2f2;

	color: #b91c1c;

	border: 1px solid #fecaca;

}



.gv-notice--success {

	background: #ecfdf5;

	color: #047857;

	border: 1px solid #a7f3d0;

}



.gv-panel {

	display: none;

}



.gv-panel--active {

	display: block;

	animation: gvFade 0.25s ease;

	padding: 0;

}



@keyframes gvFade {

	from {

		opacity: 0;

		transform: translateY(6px);

	}



	to {

		opacity: 1;

		transform: none;

	}

}



.gv-tag {

	display: flex;

	align-items: center;

	justify-content: center;

	margin: 0 auto 24px;

	padding: 12px 24px;

	background: #FF6900;

	width: fit-content;

	font-size: 16px;

	line-height: 24px;

	color: #fff;

	border-radius: 80px;

}



.gv-heading {

	font-size: 24px;

	line-height: 32px;

	color: #1E2939;

	margin-bottom: 8px;

	text-align: center;

}



.gv-sub {

	text-align: center;

	color: #4A5565;

	margin: 0 0 60px;

	font-size: 16px;

	line-height: 24px;

}



.gv-cards {

	display: grid;

	grid-template-columns: repeat(2, 1fr);

	gap: 1rem;

}



.gv-panel[data-panel="1"] .gv-heading {

	margin-bottom: 45px;

}



.gv-panel[data-panel="1"] .gv-cards {

	/* max-width: 750px; */

	margin: 0 0 44px;

	width: 100%;

}



.gv-cards--split .gv-card {

	padding: 34px 16px;

}



.gv-cards--split .gv-card .icons {

	min-width: 48px;

	max-width: 48px;

	height: 48px;

	display: flex;

	align-items: center;

	margin-bottom: 12px;

}





@media (min-width: 600px) {

	.gv-cards--split {

		grid-template-columns: 1fr 1fr;

	}

}



.gv-card {

	display: flex;

	flex-direction: column;

	align-items: center;

	text-align: center;

	background: transparent;

	border: 2px solid #E5E7EB;

	border-radius: 14px;

	padding: 24px 16px;

	background: #ffffff;

}



.gv-card:hover,

.gv-card:focus {

	border-color: #ff6b00;

	box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);

	outline: none;

}



.gv-card__icon {

	font-size: 2rem;

	display: flex;

	align-items: center;

	justify-content: center;

	min-width: 48px;

	max-width: 48px;

	height: 48px;

	margin-bottom: 12px;

}



.gv-card strong {

	font-size: 18px;

	line-height: 28px;

	color: #1E2939;

	margin-bottom: 8px;

	font-weight: 500;

	display: block;

	text-align: center;

}



.gv-card__desc {

	display: block;

	font-size: 14px;

	color: #4A5565;

	font-weight: 500;

}



.gv-hint {

	font-size: 14px;

	line-height: 20px;

	color: #6A7282;

	text-align: center;

}



.gv-amount-grid {

	display: grid;

	grid-template-columns: repeat(3, 1fr);

	gap: 24px;

	margin-bottom: 1rem;

}



.gv-amount-card {

	border: none;

	border-radius: 14px;

	padding: 24px;

	color: #fff;

	cursor: pointer;

	font-weight: 600;

	display: flex;

	flex-direction: column;

	min-height: 252px;

	position: relative;

	background: linear-gradient(135deg, #FF8904 0%, #FB64B6 100%);

	overflow: hidden;

	box-shadow: 0px 4px 6px -4px #0000001A, 0px 10px 15px -3px #0000001A;

}



.gv-amount-card .icons {

	display: flex;

	align-items: center;

	justify-content: center;

	min-width: 24px;

	max-width: 24px;

	height: 24px;

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20 8H4C3.44772 8 3 8.44772 3 9V11C3 11.5523 3.44772 12 4 12H20C20.5523 12 21 11.5523 21 11V9C21 8.44772 20.5523 8 20 8Z' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M12 8V21' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M19 12V19C19 19.5304 18.7893 20.0391 18.4142 20.4142C18.0391 20.7893 17.5304 21 17 21H7C6.46957 21 5.96086 20.7893 5.58579 20.4142C5.21071 20.0391 5 19.5304 5 19V12' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M7.5 8.00001C6.83696 8.00001 6.20107 7.73662 5.73223 7.26778C5.26339 6.79894 5 6.16305 5 5.50001C5 4.83697 5.26339 4.20108 5.73223 3.73224C6.20107 3.2634 6.83696 3.00001 7.5 3.00001C8.46469 2.9832 9.41003 3.45127 10.2127 4.34317C11.0154 5.23507 11.6383 6.50941 12 8.00001C12.3617 6.50941 12.9846 5.23507 13.7873 4.34317C14.59 3.45127 15.5353 2.9832 16.5 3.00001C17.163 3.00001 17.7989 3.2634 18.2678 3.73224C18.7366 4.20108 19 4.83697 19 5.50001C19 6.16305 18.7366 6.79894 18.2678 7.26778C17.7989 7.73662 17.163 8.00001 16.5 8.00001' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

	background-repeat: no-repeat;

	background-size: 20px;

	background-position: center;

	margin-bottom: 34px;

}



.gv-amount-card::before {

	content: '';

	width: 16px;

	height: 16px;

	border-radius: 50%;

	position: absolute;

	background: #f0eada;

	left: -8px;

	top: 50%;

	transform: translateY(-50%);

	pointer-events: none;

}



.gv-amount-card::after {

	content: '';

	width: 16px;

	height: 16px;

	border-radius: 50%;

	position: absolute;

	background: #f0eada;

	right: -8px;

	top: 50%;

	transform: translateY(-50%);

	pointer-events: none;

}



.gv-amount-card--custom {

	background: linear-gradient(135deg, #C27AFF 0%, #51A2FF 100%);

	cursor: pointer;

	display: flex;

	flex-direction: column;

}



.gv-amount-card.gv-pick-custom {

	border: 0;

	text-align: left;

	padding: 28px;

	border-radius: 20px;

	box-shadow: 0 12px 30px rgba(30, 41, 59, 0.18);

}



.gv-amount-card--custom .gv-amount-content,

.gv-amount-card .gv-amount-content {

	padding: 16px;

	background: #FFFFFF33;

	border-radius: 10px;

	display: flex;

	align-items: center;

	flex-direction: column;

	width: 100%;

	position: relative;

	z-index: 1;

}



.gv-amount-card--custom .gv-amount-content--custom {

	align-items: flex-start;

	position: relative;

	z-index: 1;

}



.gv-amount-content--custom {

	margin-bottom: 18px;

	padding: 24px 20px;

	border-radius: 18px;

	background: rgba(255, 255, 255, 0.2);

	backdrop-filter: blur(1px);

	-webkit-backdrop-filter: blur(1px);

}



.gv-custom-amount-input {

	width: 100%;

	border: 0;

	background: transparent;

	color: #ffffff;

	font-size: 30px;

	line-height: 30px;

	font-weight: 400;

	padding: 0;

	outline: none;

}



.gv-amount-card--custom .icons {

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9.93694 15.5C9.84766 15.1539 9.66728 14.8381 9.41456 14.5854C9.16184 14.3327 8.84601 14.1523 8.49994 14.063L2.36494 12.481C2.26027 12.4513 2.16815 12.3883 2.10255 12.3014C2.03696 12.2146 2.00146 12.1088 2.00146 12C2.00146 11.8912 2.03696 11.7854 2.10255 11.6986C2.16815 11.6118 2.26027 11.5487 2.36494 11.519L8.49994 9.93601C8.84589 9.84681 9.16163 9.66658 9.41434 9.41404C9.66705 9.16151 9.84751 8.84589 9.93694 8.50001L11.5189 2.36501C11.5483 2.25992 11.6113 2.16735 11.6983 2.1014C11.7852 2.03545 11.8913 1.99976 12.0004 1.99976C12.1096 1.99976 12.2157 2.03545 12.3026 2.1014C12.3896 2.16735 12.4525 2.25992 12.4819 2.36501L14.0629 8.50001C14.1522 8.84608 14.3326 9.1619 14.5853 9.41462C14.838 9.66734 15.1539 9.84773 15.4999 9.93701L21.6349 11.518C21.7404 11.5471 21.8335 11.61 21.8998 11.6971C21.9661 11.7841 22.002 11.8906 22.002 12C22.002 12.1094 21.9661 12.2159 21.8998 12.3029C21.8335 12.39 21.7404 12.4529 21.6349 12.482L15.4999 14.063C15.1539 14.1523 14.838 14.3327 14.5853 14.5854C14.3326 14.8381 14.1522 15.1539 14.0629 15.5L12.4809 21.635C12.4515 21.7401 12.3886 21.8327 12.3016 21.8986C12.2147 21.9646 12.1086 22.0003 11.9994 22.0003C11.8903 22.0003 11.7842 21.9646 11.6973 21.8986C11.6103 21.8327 11.5473 21.7401 11.5179 21.635L9.93694 15.5Z' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20 3V7' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M22 5H18' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M4 17V19' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M5 18H3' stroke='%23ffffff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");

	margin-bottom: 16px;

}



.gv-amount-card--custom .icons::before {

	content: '';

	width: 96px;

	height: 96px;

	border-radius: 50%;

	position: absolute;

	top: -24px;

	right: -24px;

	background: #FFFFFF33;

	pointer-events: none;

}



.gv-amount-card--custom .icons::after {

	content: '';

	width: 96px;

	height: 96px;

	border-radius: 50%;

	position: absolute;

	bottom: -24px;

	left: -24px;

	background: #FFFFFF33;

	pointer-events: none;

}



.gv-custom-amount-input::placeholder {

	color: rgba(255, 255, 255, 0.9);

}



.gv-amount-content--custom-foot .gv-custom-inline {

	font-size: 14px;

	line-height: 20px;

	text-align: left;

	margin: 0;

	font-weight: 500;

}



.gv-amount-content--custom-foot {

	padding: 20px;

	border-radius: 18px;

	background: rgba(255, 255, 255, 0.16);

	display: flex;

	flex-direction: column;

	align-items: flex-start !important;

}



.gv-amount-content--custom-foot .gv-amount-label {

	text-align: center;

}



.gv-custom-inline {

	font-size: 26px;

	line-height: 36px;

	font-weight: 500;

	color: #ffffff;

	text-align: center;

}



.gv-amount-label {

	display: block;

	font-size: 12px;

	line-height: 16px;

	margin-bottom: 3px;

	font-weight: 500;

}



.gv-amount-val {

	font-size: 30px;

	line-height: 36px;

	font-weight: 500;

}



.gv-custom {

	margin-top: 0.5rem;

}



.gv-custom label {

	display: block;

	font-size: 0.85rem;

	margin-bottom: 0.35rem;

	color: #475569;

}



.gv-custom input {

	width: 100%;

	max-width: 240px;

	padding: 0.5rem 0.75rem;

	border-radius: 8px;

	border: 1px solid #cbd5e1;

}



.gv-fields--myself,

.gv-fields--friend {

	position: relative;

	overflow: visible;

	display: flex;

	flex-wrap: wrap;

	column-gap: 16px;

}



.gv-fields--myself .gv-field:nth-child(1),

.gv-fields--myself .gv-field:nth-child(2),

.gv-fields--myself .gv-field:nth-child(3),

.gv-fields--friend p:nth-child(1),

.gv-fields--friend p:nth-child(2),

.gv-fields--friend p:nth-child(3) {

	width: calc(33.333% - 10.66px);

}



.gv-fields--myself .gv-field:nth-child(4),

.gv-fields--myself .gv-field:nth-child(5),

.gv-fields--friend p:nth-child(4) {

	width: 100%;

}



.gv-fields--myself p {

	margin-bottom: 16px;

}



/* Step 4 — “For myself”: lock details and show auth box after lookup. */

.gv-myself-auth.gv-myself-auth--checked .gv-myself-details-field,

.gv-myself-auth.gv-myself-auth--checked .gv-myself-continue-field {

	display: none;

}



.gv-myself-auth .gv-input--myself {

	max-width: 100%;

}



.gv-myself-auth .iti {

	display: block;

	max-width: 100%;

}



.gv-myself-auth .iti .gv-input {

	padding-left: 84px;

}



.gv-fields--friend .iti {

	display: block;

	max-width: 100%;

}



.gv-fields--friend .iti input {

	padding-left: 84px;

}



.gv-fields label {

	display: block;

	font-size: 0.85rem;

	margin-bottom: 0.35rem;

	font-weight: 600;

}



/* —— Step 5: review vs checkout —— */

.gv-step5-phase--review {

	max-width: 720px;

	margin: 0 auto;

	text-align: center;

}



.gv-heading--step5-review,

.gv-sub--step5-review {

	text-align: center;

}



.gv-sub--step5-review {

	color: #64748b;

	margin-bottom: 1.5rem;

}



.gv-summary--review {

	text-align: left;

	margin-bottom: 0;

}



.gv-summary--review .gv-summary-ex-tax {

	display: none;

}



.gv-nav--step5-review {

	justify-content: space-between;

}



.gv-nav--step5-checkout {

	justify-content: flex-start;

}



.gv-payment-details--embed .gv-payment-details__title {

	font-size: 1.35rem;

	font-weight: 700;

	color: #334155;

	margin: 0 0 0.5rem;

}



.gv-payment-details__sub {

	margin: 0 0 1rem;

	font-size: 0.9rem;

	line-height: 1.55;

	color: #64748b;

}



.gv-payment-iframe-shell {

	position: relative;

	min-height: 440px;

	border-radius: 16px;

	overflow: hidden;

	border: 1px solid #d6d3cd;

	background: #ebe5d5;

}



.gv-payment-iframe {

	display: block;

	width: 100%;

	min-height: 440px;

	border: 0;

	background: #ebe5d5;

}



.gv-payment-iframe-loading {

	position: absolute;

	inset: 0;

	z-index: 2;

	display: flex;

	align-items: center;

	justify-content: center;

	background: rgba(255, 255, 255, 0.92);

	font-size: 0.95rem;

	color: #64748b;

}



/* Stripe Elements (custom checkout — no WooCommerce payment template) */

.gv-stripe-shell {

	min-height: auto;

	padding: 1rem 1rem 1.25rem;

}



.gv-stripe-card-element {

	padding: 0.85rem 1rem;

	background: #fff;

	border: 1px solid #d6d3cd;

	border-radius: 12px;

	margin-bottom: 0.75rem;

}



.gv-stripe-errors {

	margin: 0 0 0.75rem;

	font-size: 0.88rem;

	line-height: 1.45;

	color: #b91c1c;

}



.gv-stripe-submit {

	margin-top: 0.35rem;

}



/* —— Step 5: two-column payment & preview —— */

.gv-panel--payment {

	padding-top: 0.5rem;

}



.gv-payment-layout {

	display: grid;

	grid-template-columns: 1fr 1fr;

	gap: 2rem 2.5rem;

	align-items: start;

	max-width: 1100px;

	margin: 0 auto;

}



@media only screen and (max-width: 960px) {

	.gv-payment-layout {

		grid-template-columns: 1fr;

	}

}



.gv-payment-layout__media {

	position: relative;

}



.gv-payment-card-preview {

	margin: 0 0 36px;

}



.gv-type-preview--payment {

	border-radius: 16px;

	max-width: 100%;

}



.gv-payment-marketing__kicker {

	font-weight: 400;

	font-size: 20px;

	line-height: 37px;

	color: #000000;

	margin-bottom: 0;

}



.gv-payment-marketing__heading {

	font-weight: 700;

	font-size: 30px;

	line-height: 37px;

	color: #000000;

}



.gv-payment-marketing__body {

	font-weight: 400;

	font-size: 14px;

	line-height: 24px;

	letter-spacing: 0px;

}



.gv-payment-marketing__body p {

	margin: 0 0 0.75em;

}



.gv-payment-marketing__body p:last-child {

	margin-bottom: 0;

}



.gv-heading--payment {

	margin-bottom: 0.35rem;

}



.gv-sub--payment {

	margin-bottom: 1.25rem;

	color: #64748b;

	font-size: 0.95rem;

}



.gv-summary--payment .gv-summary-card {

	margin: 0 0 1.25rem;

}



.gv-summary--checkout-col {

	margin: 0 0 1.25rem;

}



.gv-summary--checkout-col .gv-summary-ex-tax {

	display: none;

}



.gv-payment-details {

	background: #f8fafc;

	border: 1px solid #e2e8f0;

	border-radius: 12px;

	padding: 1rem 1.15rem 1.2rem;

	margin-bottom: 1.25rem;

}



.gv-payment-details__title {

	margin: 0 0 0.5rem;

	font-size: 1.05rem;

	font-weight: 600;

	color: #1e293b;

}



.gv-payment-details__hint {

	margin: 0;

	font-size: 0.9rem;

	color: #64748b;

	line-height: 1.5;

}



.gv-btn--wide {

	width: 100%;

	max-width: 100%;

}



.gv-summary-ex-tax {

	margin: 0.5rem 0 0;

	font-size: 0.8rem;

	color: #64748b;

	line-height: 1.4;

}



.gv-summary-card {

	background: #F9FAFB;

	border-radius: 14px;

	padding: 24px;

	max-width: 672px;

	margin: 0 auto;

}



.gv-summary--payment .gv-summary-card {

	max-width: none;

	margin: 0;

}



.gv-summary-card h3 {

	font-weight: 500;

	font-size: 18px;

	line-height: 28px;

	margin-bottom: 16px;

	color: #1E2939;

}



.gv-summary-card hr {

	display: none;

}



.gv-summary-card p {

	margin-bottom: 8px;

	font-size: 16px;

	line-height: 24px;

	color: #4A5565;

	display: flex;

	align-items: center;

	justify-content: space-between;

	gap: 12px;

}



.gv-actions--pay {

	display: flex;

	align-items: center;

	justify-content: center;

	gap: 12px;

	margin: 24px 0 0;

}



.gv-summary-card .gv-total {

	padding-top: 8px;

	border-top: 1px solid #e2e8f0;

}



.gv-nav {

	display: flex;

	justify-content: space-between;

	align-items: center;

	margin-top: 2rem;

	gap: 1rem;

}



.gv-btn {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding: 11px 30px;

	border-radius: 10px;

	border: 1px solid transparent;

	font: inherit;

	font-weight: 500;

	cursor: pointer;

	text-decoration: none;

	font-size: 16px;

	line-height: 24px;

}



.gv-btn--primary {

	background: #ff6b00;

	color: #fff;

	border-color: #ff6b00;

}



.gv-btn:hover {

	background: transparent;

	color: #ff6b00;

}



.gv-btn--primary:hover {

	filter: brightness(1.05);

}



.gv-btn--wide {

	width: 100%;

}



.gv-btn--ghost {

	padding: 0;

	border: 0;

	font-size: 16px;

	line-height: 24px;

	font-weight: 500;

	display: flex;

	align-items: center;

	justify-content: center;

	padding-left: 28px;

	position: relative;

	color: #4A5565;

}



.gv-btn--ghost::before {

	content: '';

	position: absolute;

	left: 0;

	top: 50%;

	transform: translateY(-50%);

	width: 24px;

	height: 24px;

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M12.5 15L7.5 10L12.5 5' stroke='%234A5565' stroke-width='1.66667' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

	background-repeat: no-repeat;

	background-position: center;

	background-size: 20px 20px;

}



.gv-btn--ghost:hover {

	color: #ff6b00;

}



.gv-btn--ghost:hover::before {

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M12.5 15L7.5 10L12.5 5' stroke='%23FF6900' stroke-width='1.66667' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");

}



.gv-auth-area {

	--gv-auth-orange: #f28c28;

	--gv-auth-orange-dark: #e07820;

	--gv-auth-cream: #fff9ed;

	--gv-auth-border: rgba(242, 140, 40, 0.55);

	--gv-auth-text: #1e293b;



	clear: both;

	width: 100%;

	max-width: 420px;

	margin: 1.5rem auto 0;

	padding: 0;

	position: relative;

	z-index: 2;

	box-sizing: border-box;

	color: var(--gv-auth-text);

}



@keyframes gvAuthIn {

	from {

		opacity: 0;

		transform: translateY(8px);

	}



	to {

		opacity: 1;

		transform: none;

	}

}



@keyframes gvAuthBar {

	0% {

		transform: translateX(-60%);

	}



	100% {

		transform: translateX(160%);

	}

}



.gv-auth-area .gv-auth-card {

	animation: gvAuthIn 0.28s ease-out;

}



.gv-auth-status {

	margin: 0 0 0.65rem;

	font-size: 0.95rem;

	font-weight: 600;

	color: var(--gv-auth-text);

	text-align: center;

}



.gv-auth-searching {

	text-align: center;

}



.gv-auth-searching.gv-auth-card {

	padding: 1.25rem 1.3rem 1.35rem;

	background: var(--gv-auth-cream);

	border: 1px solid var(--gv-auth-border);

	border-radius: 14px;

	box-shadow: 0 10px 28px rgba(242, 140, 40, 0.08);

}



.gv-auth-loading {

	position: relative;

	height: 4px;

	border-radius: 999px;

	background: rgba(242, 140, 40, 0.2);

	overflow: hidden;

	margin: 0;

}



.gv-auth-loading__bar {

	display: block;

	position: absolute;

	left: 0;

	top: 0;

	height: 100%;

	width: 42%;

	border-radius: inherit;

	background: linear-gradient(90deg, var(--gv-auth-orange), #ffb36b);

	animation: gvAuthBar 1.1s ease-in-out infinite;

}



.gv-auth-intro {

	margin: 0 0 1rem;

	font-size: 0.95rem;

	line-height: 1.55;

	color: #475569;

}



.gv-auth-title {

	margin: 0 0 0.5rem;

	font-size: 1.1rem;

	font-weight: 700;

	text-align: center;

	color: var(--gv-auth-text);

}



.gv-login-box,

.gv-register-box {

	background: var(--gv-auth-cream);

	border-radius: 14px;

	border: 1px solid var(--gv-auth-border);

	padding: 1.35rem 1.4rem 1.45rem;

	box-shadow: 0 10px 28px rgba(242, 140, 40, 0.08);

}



.gv-login-box .gv-field {

	width: 100% !important;

}



.gv-login-box h4,

.gv-register-box h4 {

	margin: 0 0 0.75rem;

	font-size: 1.05rem;

}



.gv-register-grid {

	display: grid;

	grid-template-columns: 1fr;

	gap: 0.25rem 1rem;

	margin-bottom: 1rem;

}



@media (min-width: 520px) {

	.gv-register-grid {

		grid-template-columns: 1fr 1fr;

	}



	.gv-field--full {

		grid-column: 1 / -1;

	}

}



.gv-field {

	margin: 0 0 0.65rem;

}



.gv-auth-area .gv-field label {

	color: var(--gv-auth-text);

	font-size: 0.82rem;

	letter-spacing: 0.01em;

}



.gv-field {

	margin-bottom: 16px;

}



.gv-fields--friend label,

.gv-field label {

	display: block;

	font-size: 14px;

	line-height: 20px;

	margin-bottom: 8px;

	color: #4A5565;

	font-weight: 500;

}



.gv-fields--friend input,

.gv-fields--friend select,

.gv-fields--friend textarea,

.gv-input,

.gv-textarea {

	width: 100%;

	max-width: 100%;

	padding: 0 16px;

	border-radius: 8px;

	border: 2px solid #E5E7EB;

	box-sizing: border-box;

	background: #fff;

	font-size: 16px;

	line-height: 20px;

	color: #4A5565;

	min-height: 52px;

}



.gv-fields--friend textarea,

textarea,

.gv-textarea {

	min-height: 124px !important;

	display: flex;

	padding: 16px !important;

}



.gv-auth-area .gv-input--auth,

.gv-auth-area .gv-input.gv-input--auth {

	background: var(--gv-auth-cream);

	border: 1px solid var(--gv-auth-border);

	border-radius: 12px;

	padding: 0.7rem 0.95rem;

	font-size: 1rem;

	color: var(--gv-auth-text);

	transition: border-color 0.2s ease, box-shadow 0.2s ease;

}



.gv-auth-area .gv-input--auth:focus {

	outline: none;

	border-color: var(--gv-auth-orange);

	box-shadow: 0 0 0 3px rgba(242, 140, 40, 0.22);

}



.gv-input[readonly] {

	background: #f1f5f9;

	color: #475569;

}



.gv-auth-notice {

	padding: 0.85rem 1rem;

	margin: 0 0 1.1rem;

	border-radius: 12px;

	border: 1px solid var(--gv-auth-border);

	background: #fffdf8;

	font-size: 0.95rem;

	line-height: 1.55;

	color: var(--gv-auth-text);

}



.gv-auth-notice strong {

	font-weight: 700;

	color: #0f172a;

}



.gv-password-wrap {

	position: relative;

	display: flex;

	align-items: center;

}



.gv-password-wrap .gv-input--auth {

	padding-right: 3rem;

}



.gv-password-toggle {

	position: absolute;

	right: 0.35rem;

	top: 50%;

	transform: translateY(-50%);

	width: 2.5rem;

	height: 2.5rem;

	border: 0;

	border-radius: 10px;

	padding: 0;

	cursor: pointer;

	background-color: transparent;

	background-repeat: no-repeat;

	background-position: center;

	background-size: 1.25rem 1.25rem;

	opacity: 0.72;

	transition: opacity 0.15s ease, background-color 0.15s ease;

}



.gv-password-toggle:hover,

.gv-password-toggle:focus-visible {

	opacity: 1;

	background-color: rgba(242, 140, 40, 0.12);

	outline: none;

}



/* Eye open */

.gv-password-toggle {

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");

}



/* Eye with slash (hidden / password visible) */

.gv-password-toggle.gv-password-toggle--on {

	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E");

}



.gv-btn--auth {

	display: inline-flex;

	align-items: center;

	justify-content: center;

	padding: 11px 30px;

	border-radius: 10px;

	border: 1px solid transparent;

	font: inherit;

	font-weight: 500;

	cursor: pointer;

	text-decoration: none;

	font-size: 16px;

	line-height: 24px;

	background: #ff6b00;

	color: #fff;

	border-color: #ff6b00;

}



.gv-btn--auth:hover {

	background: transparent;

	color: #ff6b00;

}



.gv-auth-foot {

	margin: 1.05rem 0 0;

	font-size: 0.93rem;

	text-align: center;

	color: #475569;

	line-height: 1.5;

}



.gv-link-btn {

	background: none;

	border: 0;

	padding: 0;

	margin: 0;

	color: #0f172a;

	font: inherit;

	font-weight: 700;

	text-decoration: none;

	cursor: pointer;

	border-bottom: 1px solid transparent;

	transition: color 0.15s ease, border-color 0.15s ease;

}



.gv-link-btn:hover,

.gv-link-btn:focus-visible {

	color: var(--gv-auth-orange);

	border-bottom-color: var(--gv-auth-orange);

	outline: none;

}



.gv-otp-info {

	padding: 0.85rem 1rem;

	border: 1px solid var(--gv-auth-border);

	border-radius: 12px;

	background: #fffdf8;

	font-size: 0.95rem;

	line-height: 1.5;

	margin-bottom: 1.15rem;

	color: var(--gv-auth-text);

}



.gv-otp-grid {

	display: grid;

	grid-template-columns: repeat(6, minmax(40px, 1fr));

	gap: 0.55rem;

	margin-bottom: 1.15rem;

}



.gv-otp-digit {

	height: 48px;

	padding: 0;

	text-align: center;

	font-size: 1.2rem;

	font-weight: 600;

	border: 1px solid var(--gv-auth-border);

	border-radius: 10px;

	background: var(--gv-auth-cream);

	color: var(--gv-auth-text);

	transition: border-color 0.2s ease, box-shadow 0.2s ease;

}



.gv-otp-digit:focus {

	outline: none;

	border-color: var(--gv-auth-orange);

	box-shadow: 0 0 0 3px rgba(242, 140, 40, 0.22);

}



.gv-textarea {

	resize: vertical;

	min-height: 4rem;

}



.gift-voucher-checkout-field {

	padding: 30px;

	margin-bottom: 25px;

	background-color: #fffaed;

	border: 1px solid rgba(242, 137, 30, 0.26);

	border-radius: 24px;

	box-shadow: 0px 4px 105.7px 2px rgba(0, 0, 0, 0.09);

}



/* Order review column (above payment methods) */



.woocommerce-checkout-review-order .gv-apply-voucher-row {

	margin-bottom: 0;

}



.gift-voucher-checkout-field h3 {

	margin: 0 0 12px;

	font-size: 22px;

	line-height: 1.2;

	color: #000000;

}



.gift-voucher-checkout-field .form-row {

	margin-bottom: 10px;

}



.gift-voucher-checkout-field .gv-inline-notice {

	margin: 0 0 16px;

	padding: 10px 12px 10px 34px;

	font-size: 14px;

	line-height: 1.2;

}



.gift-voucher-checkout-field .gv-inline-notice::before {

	top: 12px;

	left: 12px;

}



.gv-global-loader {

	position: fixed;

	inset: 0;

	background: rgba(15, 23, 42, 0.28);

	display: none;

	align-items: center;

	justify-content: center;

	z-index: 99999;

}



.gv-global-loader.is-active {

	display: flex;

}



.gv-global-loader__box {

	background: #fff;

	border-radius: 12px;

	padding: 14px 18px;

	display: flex;

	align-items: center;

	gap: 10px;

	box-shadow: 0 12px 32px rgba(15, 23, 42, 0.2);

}



.gv-global-loader__spinner {

	width: 18px;

	height: 18px;

	border: 2px solid #e2e8f0;

	border-top-color: #ff6b00;

	border-radius: 50%;

	animation: gvSpin 0.8s linear infinite;

}



#gv-apply-voucher-btn {

	margin: 0 0 0 auto !important;

	display: flex;

	font-size: 16px;

	line-height: 24px;

	border: 2px solid #ff6b00;

	color: #ffffff;

	padding: 10px 25px;

	border-radius: 50px;

	font-weight: 400 !important;

	background: #ff6b00;

	align-items: center;

	justify-content: center;

	transition: all 0.3s ease-in-out;

}



#gv-apply-voucher-btn:hover {

	background: transparent;

	color: #ff6b00;

}



@keyframes gvSpin {

	to {

		transform: rotate(360deg);

	}

}



/* —— Step 1: Standard (Rustik SVGs) + festival image —— */

.gv-cards--type {

	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));

	gap: 1.25rem;

	max-width: 780px;

	margin: 0 auto;

}



.gv-card.gv-card--type {

	padding: 0;

	overflow: hidden;

	align-items: stretch;

	text-align: left;

	background: transparent;

	border: none;

	border-radius: 20px;

	box-shadow: 0 8px 28px rgba(15, 23, 42, 0.1);

	transition: transform 0.15s ease, box-shadow 0.15s ease;

}



.gv-card.gv-card--type:hover,

.gv-card.gv-card--type:focus {

	transform: translateY(-2px);

	box-shadow: 0 12px 36px rgba(15, 23, 42, 0.14);

	outline: none;

}



.gv-type-preview {

	position: relative;

}



.gv-type-preview--standard {

	padding: 24px;

	border-radius: 18px;

	position: relative;

	height: 100%;

	background: linear-gradient(90deg, #CB6809 0%, #F18823 100%);

}



.gv-type-preview--standard .gv-type-preview__brand {

	min-width: 110px;

	max-width: 110px;

	height: 110px;

	background: #FFFFFF;

	display: flex;

	align-items: center;

	justify-content: center;

	border-radius: 50%;

	padding: 4px;

	margin-bottom: 24px;

}



.gv-type-preview--standard .gv-type-preview__title {

	font-weight: 600;

	font-size: 28px;

	line-height: 34px;

	color: #FFFFFF;

	margin-bottom: 0;

}



.gv-type-preview--standard .gv-type-preview__watermark {

	position: absolute;

	right: -2%;

	bottom: -4%;

	width: min(58%, 220px);

	height: auto;

	z-index: 1;

	pointer-events: none;

	opacity: 0.28;

}



.gv-type-preview--standard .gv-type-preview__watermark img {

	width: 100%;

	height: auto;

	display: block;

	filter: brightness(0) invert(1);

}



.gv-type-preview--festival {

	display: flex;

	align-items: center;

	height: 100%;

	justify-content: center;

}



.gv-type-preview--festival .gv-festival-preview-img {

	width: 100%;

	height: 100%;

	object-fit: cover;

	object-position: center;

	display: block;

	border-radius: 16px;

}



.gv-festival-preview-img[src=''] {

	opacity: 0;

}



/* —— Step 2 v2: preset grid (reference — peach / brown / pink custom) —— */

.gv-panel--amount {

	padding-bottom: 0.5rem;

}



.gv-sub--step2 {

	margin-bottom: 1.75rem;

	color: #57534e;

}



.gv-amount-grid--v2 {

	display: grid;

	grid-template-columns: repeat(3, minmax(0, 1fr));

	gap: 18px 16px;

	margin-bottom: 2rem;

	/* max-width: 720px; */

	margin-left: auto;

	margin-right: auto;

}



.gv-amount-grid--v2 .gv-amount-card {

	min-height: 235px;

	width: 100%;

	background: #FFEAD7;

	position: relative;

	display: flex;

	flex-direction: column;

	justify-content: center;

	align-items: center;

	padding: 16px;

	border-radius: 18px;

	box-shadow: unset;

	color: #BE5E02;

	transition: all 0.3s ease-in-out;

}



.gv-amount-grid--v2 .gv-amount-card::before,

.gv-amount-grid--v2 .gv-amount-card::after {

	display: none;

}



.gv-amount-grid--v2 .gv-amount-card__check {

	position: absolute;

	top: 12px;

	right: 12px;

	width: 25px;

	height: 25px;

	border-radius: 999px;

	background: #BE5E02;

	color: #fff;

	display: flex;

	align-items: center;

	justify-content: center;

	opacity: 0;

	pointer-events: none;

}



.gv-amount-grid--v2 .gv-amount-card__check svg {

	width: 12px;

	height: 10px;

}



.gv-amount-grid--v2 .gv-amount-card.is-selected .gv-amount-card__check {

	opacity: 1;

	transform: scale(1);

}



.gv-amount-grid--v2 .gv-amount-card--preset.is-selected {

	border: 2px solid #BE5E02;



}



.gv-amount-grid--v2 .gv-am-icon {

	color: var(--gv-am-brown);

	display: block;

	margin: 0 auto 14px;

	width: 40px;

	height: 40px;

}



.gv-amount-grid--v2 .gv-amount-card__label {

	font-weight: 400;

	font-size: 12px;

	line-height: 24px;

	letter-spacing: 0px;

	text-align: center;

	text-transform: uppercase;

	margin-bottom: 16px;

	display: block;

}



.gv-amount-grid--v2 .gv-amount-card__value {

	font-weight: 700;

	font-size: 40px;

	line-height: 30px;

	text-align: center;

	color: #BE5E02;

}



.gv-amount-grid--v2 .gv-amount-card--custom {

	--gv-am-pink-bg: #ffe1e6;

	--gv-am-pink-border: #e8b4bf;

	--gv-am-pink-deep: #b8566f;

	background: var(--gv-am-pink-bg);

	border-color: transparent;

	color: var(--gv-am-pink-deep);

}



.gv-amount-grid--v2 .gv-amount-card--custom.is-selected {

	border-color: var(--gv-am-pink-deep);

	background: #ffd6dc;

	box-shadow: 0 4px 16px rgba(184, 86, 111, 0.2);

}



.gv-amount-grid--v2 .gv-amount-card--custom .gv-amount-card__check {

	background: var(--gv-am-pink-deep);

}



.gv-amount-grid--v2 .gv-am-icon--custom {

	color: var(--gv-am-pink-deep);

}



.gv-amount-grid--v2 .gv-amount-card__label--custom {

	color: var(--gv-am-pink-deep);

}



.gv-amount-grid--v2 .gv-custom-value-line {

	display: flex;

	align-items: baseline;

	justify-content: center;

	flex-wrap: nowrap;

	gap: 1px;

	margin: 6px 0 8px;

	width: 100%;

	max-width: 100%;

}



.gv-amount-grid--v2 .gv-custom-cur {

	flex-shrink: 0;

	font-size: 40px;

	line-height: 1.15;

	font-weight: 700;

	color: #4a2c16;

	letter-spacing: -0.02em;

}



.gv-amount-grid--v2 .gv-amount-card__hint {

	font-weight: 400;

	font-size: 12px;

	line-height: 24px;

	text-align: center;

	text-transform: capitalize;

	color: #964242;

}



.gv-amount-grid--v2 .gv-amount-card--custom .gv-custom-amount-input {

	max-width: 100px;

	border: none;

	border-radius: 0;

	padding: 0 0 2px;

	margin: 0;

	background: transparent;

	font-family: inherit;

	font-size: 40px;

	line-height: 1.15;

	font-weight: 700;

	color: #4a2c16;

	letter-spacing: -0.02em;

	box-shadow: none;

	box-sizing: content-box;

}



.gv-amount-grid--v2 .gv-amount-card--custom .gv-custom-amount-input:focus {

	outline: none;

	box-shadow: 0 2px 0 0 rgba(184, 86, 111, 0.55);

}





@media only screen and (max-width: 767px) {

	.gv-step::before {

		left: calc(100% - 34px);

	}



	.gv-amount-grid {

		grid-template-columns: repeat(2, 1fr);

		gap: 16px;

	}



	.gv-amount-grid--v2 {

		grid-template-columns: repeat(2, minmax(0, 1fr));

		gap: 16px;

	}



	.gv-amount-card {

		padding: 24px 16px;

	}



	#gv-apply-voucher-btn {

		width: 100%;

	}



	.gv-amount-grid--v2 .gv-amount-card__value {

		font-size: 28px;

		line-height: 34px;

	}

}



@media only screen and (max-width: 640px) {

	.gv-step::before {

		left: calc(100% - 20px);

	}



	.gv-sub {

		margin-bottom: 24px;

	}



	.gv-form-title {

		font-size: 28px;

		line-height: 34px;

	}



	.gv-cards {

		grid-template-columns: repeat(1, 1fr);

	}



	.gv-stepper {

		margin-bottom: 34px;

	}



	.gv-panel[data-panel="1"] .gv-heading {

		margin-bottom: 24px;

	}



	.gv-amount-grid {

		grid-template-columns: repeat(1, 1fr);

	}



	.gv-amount-grid--v2 {

		grid-template-columns: 1fr;

	}



	.gv-amount-val {

		font-size: 24px;

	}



	.gv-fields--myself .gv-field:nth-child(1),

	.gv-fields--myself .gv-field:nth-child(2),

	.gv-fields--myself .gv-field:nth-child(3),

	.gv-fields--friend p:nth-child(1),

	.gv-fields--friend p:nth-child(2),

	.gv-fields--friend p:nth-child(3) {

		width: 100%;

	}



	.gv-payment-marketing__kicker {

		font-size: 16px;

		line-height: 28px;

	}



	.gv-payment-marketing__heading {

		font-size: 24px;

		line-height: 30px;

	}

	.gv-type-preview--standard {
		padding: 16px;
	}

}



@media only screen and (max-width: 520px) {

	.gv-step::before {

		display: none !important;

	}



	.gv-step__num {

		min-width: 32px;

		max-width: 32px;

		height: 32px;

	}



	.gv-summary-card {

		padding: 16px;

	}



	.gv-summary-card p {

		font-size: 14px;

		line-height: 20px;

	}



	.gv-payment-layout {

		grid-template-columns: 1fr;

		gap: 1.75rem;

	}



	.gv-summary-card h3 {

		margin-bottom: 12px;

	}



	.gv-heading {

		font-size: 20px;

		line-height: 30px;

	}

}



/* Thank-you message after payment (replaces checkout steps; not a popup) */

.gv-success-panel {

	max-width: 420px;

	margin: 0 auto 1.5rem;

	padding: 0 0.5rem;

	box-sizing: border-box;

}



.gv-success-panel[hidden] {

	display: none !important;

}



.gv-success-modal__card {

	position: relative;

	width: 100%;

	max-width: 420px;

	background: #fff;

	border: 1px solid rgba(21, 94, 59, 0.18);

	border-radius: 16px;

	box-shadow: 0 22px 48px rgba(15, 46, 34, 0.22);

	overflow: hidden;

	font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;

}



.gv-success-modal__hero {

	position: relative;

	text-align: center;

	padding: 2rem 1.5rem 1.75rem;

	background: linear-gradient(145deg, #1fa971 0%, #158f59 55%, #0d6b41 100%);

	color: #fff;

	overflow: hidden;

}



.gv-success-modal__hero::before,

.gv-success-modal__hero::after {

	content: '';

	position: absolute;

	border-radius: 50%;

	background: rgba(255, 255, 255, 0.07);

	pointer-events: none;

}



.gv-success-modal__hero::before {

	width: 220px;

	height: 220px;

	top: -90px;

	right: -60px;

}



.gv-success-modal__hero::after {

	width: 160px;

	height: 160px;

	bottom: -70px;

	left: -40px;

}



.gv-success-modal__check {

	display: flex;

	justify-content: center;

	margin-bottom: 0.65rem;

	color: #fff;

}



.gv-success-modal__title {

	margin: 0 0 0.35rem;

	font-family: Georgia, 'Times New Roman', serif;

	font-size: 1.75rem;

	font-weight: 700;

	line-height: 1.2;

	position: relative;

	z-index: 1;

}



.gv-success-modal__subtitle {

	margin: 0;

	font-size: 0.95rem;

	font-weight: 500;

	opacity: 0.95;

	position: relative;

	z-index: 1;

}



.gv-success-modal__body {

	padding: 1.5rem 1.5rem 1.25rem;

	background: #f0faf4;

	text-align: center;

}



.gv-success-modal__quote {

	margin: 0 0 1rem;

	font-family: Georgia, 'Times New Roman', serif;

	font-size: 1.05rem;

	font-style: italic;

	line-height: 1.55;

	color: #145a38;

}



.gv-success-modal__rule {

	width: 48px;

	height: 3px;

	margin: 0 auto 1rem;

	background: #145a38;

	border-radius: 2px;

	opacity: 0.85;

}



.gv-success-modal__text {

	margin: 0;

	font-size: 0.92rem;

	line-height: 1.55;

	color: #145a38;

	white-space: pre-wrap;

}



.gv-success-modal__support {

	margin: 0;

	padding: 0.85rem 1rem 1.25rem;

	text-align: center;

	font-size: 0.78rem;

	color: #6b9080;

	border-top: 1px solid rgba(21, 94, 59, 0.12);

	background: #fff;

}