/* ArtSound – kontaktivorm (Gravity Forms #1) ja popup. Hele kaart, nähtavad väljad, punane aktsent.
   ID-põhised valijad + !important, et poe tume kujundus (body.as-shop) neid üle ei kirjutaks. */

/* ---------- Vorm (kontaktleht + popup) ---------- */
#gform_wrapper_1.gform-theme--orbital {
	--gf-color-primary: #ed2125;
	--gf-color-primary-rgb: 237, 33, 37;
	--gf-color-primary-darker: #c8171b;
	--gf-ctrl-border-color: #c9cbcf;
	--gf-ctrl-bg-color: #f6f6f7;
	--gf-ctrl-color: #131313;
	--gf-ctrl-radius: 10px;
	--gf-ctrl-label-color-primary: #131313;
	--gf-ctrl-label-color-req: #ed2125;
	--gf-ctrl-desc-color: #6b6e72;
	--gf-ctrl-outline-color-focus: rgba(237, 33, 37, .2);
	--gf-form-gap-y: 22px;
	color: #131313;
}
#gform_wrapper_1 .gfield_label {
	color: #131313 !important; font-family: "Inter Tight", "Inter", sans-serif !important;
	font-size: 14px !important; font-weight: 600 !important; letter-spacing: 0 !important;
}
#gform_wrapper_1 .gfield_required,
#gform_wrapper_1 .gfield_required .gfield_required_text {
	color: #b4181b !important; font-size: 12px !important; font-weight: 400 !important;
}
#gform_wrapper_1 .gform-field-label--type-sub { color: #6b6e72 !important; font-size: 13px !important; font-weight: 400 !important; }
#gform_wrapper_1 .gfield_description { color: #6b6e72 !important; font-size: 13px !important; }
#gform_wrapper_1 .gfield_consent_label,
#gform_wrapper_1 .gfield_consent_description { color: #3a3c3f !important; font-size: 14px !important; line-height: 1.5 !important; }
#gform_wrapper_1 .gfield_consent_label a { color: #b4181b !important; text-decoration: underline; }

#gform_wrapper_1 input[type="text"],
#gform_wrapper_1 input[type="email"],
#gform_wrapper_1 input[type="tel"],
#gform_wrapper_1 input[type="number"],
#gform_wrapper_1 select,
#gform_wrapper_1 textarea {
	background: #f6f6f7 !important; color: #131313 !important;
	border: 1px solid #c9cbcf !important; border-radius: 10px !important; box-shadow: none !important;
	font-family: "Inter", sans-serif !important; font-size: 15px !important; line-height: 1.45 !important;
	min-height: 48px; padding: 12px 14px !important; transition: border-color .15s, box-shadow .15s, background-color .15s;
}
#gform_wrapper_1 textarea { min-height: 150px; resize: vertical; }
#gform_wrapper_1 input:hover:not(:focus),
#gform_wrapper_1 textarea:hover:not(:focus) { border-color: #9fa2a7 !important; }
#gform_wrapper_1 input:focus,
#gform_wrapper_1 textarea:focus,
#gform_wrapper_1 select:focus {
	background: #fff !important; border-color: #ed2125 !important; outline: none !important;
	box-shadow: 0 0 0 3px rgba(237, 33, 37, .18) !important;
}
#gform_wrapper_1 ::placeholder { color: #8a8d91 !important; opacity: 1; }
#gform_wrapper_1 .gfield_error input,
#gform_wrapper_1 .gfield_error textarea { border-color: #c8171b !important; }
#gform_wrapper_1 .gfield_validation_message,
#gform_wrapper_1 .validation_message { color: #b4181b !important; background: none !important; border: 0 !important; padding: 6px 0 0 !important; font-size: 13px !important; }

#gform_wrapper_1 input[type="checkbox"] {
	width: 20px !important; height: 20px !important; min-height: 0; border: 1.5px solid #8a8d91 !important;
	border-radius: 5px !important; background: #fff !important; box-shadow: none !important;
}
#gform_wrapper_1 input[type="checkbox"]:checked { background: #ed2125 !important; border-color: #ed2125 !important; }
#gform_wrapper_1 input[type="checkbox"]:checked::before { color: #fff !important; }

#gform_wrapper_1 .gform_footer { margin-top: 8px !important; padding: 0 !important; }
#gform_wrapper_1 .gform_footer input[type="submit"],
#gform_wrapper_1 .gform_footer button {
	background: #ed2125 !important; color: #fff !important; border: 0 !important; border-radius: 10px !important;
	font-family: "Inter Tight", "Inter", sans-serif !important; font-size: 16px !important; font-weight: 500 !important;
	padding: 15px 32px !important; line-height: 1.2 !important; min-height: 0; box-shadow: none !important;
	text-transform: none !important; letter-spacing: 0 !important; cursor: pointer; transition: background-color .2s;
}
#gform_wrapper_1 .gform_footer input[type="submit"]:hover,
#gform_wrapper_1 .gform_footer button:hover { background: #c8171b !important; }
#gform_wrapper_1 .gform_footer input[type="submit"]:focus-visible { outline: 3px solid rgba(237, 33, 37, .35) !important; outline-offset: 2px; }
#gform_confirmation_wrapper_1, .gform_confirmation_message_1 {
	color: #131313; font-size: 17px; line-height: 1.6; padding: 18px 20px; background: #f6f6f7;
	border-left: 3px solid #ed2125; border-radius: 10px;
}

/* ---------- Popup ---------- */
html.as-kmodal-open, html.as-kmodal-open body { overflow: hidden !important; }
html.as-kmodal-open .ti-widget.ti-goog, html.as-kmodal-open .chaty { visibility: hidden !important; }
.as-kmodal {
	position: fixed; inset: 0; z-index: 2147483646; display: flex; align-items: center; justify-content: center;
	padding: 24px 16px; opacity: 0; visibility: hidden; transition: opacity .25s ease, visibility 0s linear .25s;
}
.as-kmodal.is-open { opacity: 1; visibility: visible; transition: opacity .25s ease; }
.as-kmodal__backdrop { position: absolute; inset: 0; background: rgba(10, 10, 10, .72); -webkit-backdrop-filter: blur(3px); backdrop-filter: blur(3px); }
.as-kmodal__box {
	position: relative; width: 100%; max-width: 640px; background: #fff; color: #131313; border-radius: 14px;
	box-shadow: 0 30px 80px rgba(0, 0, 0, .45); transform: translateY(10px) scale(.97); transition: transform .3s cubic-bezier(.2, .8, .2, 1);
}
.as-kmodal.is-open .as-kmodal__box { transform: none; }
.as-kmodal__scroll { max-height: calc(100vh - 48px); max-height: calc(100dvh - 48px); overflow-y: auto; overscroll-behavior: contain; padding: 36px 36px 32px; box-sizing: border-box; }
.as-kmodal .as-kmodal__close {
	position: absolute; top: -14px; right: -14px; z-index: 2; width: 38px; height: 38px; padding: 0 !important;
	display: flex; align-items: center; justify-content: center; border: 0 !important; border-radius: 50% !important;
	background: #ed2125 !important; color: #fff !important; box-shadow: 0 4px 14px rgba(0, 0, 0, .35) !important;
	cursor: pointer; transition: background-color .2s, transform .2s;
}
.as-kmodal .as-kmodal__close:hover { background: #c8171b !important; transform: rotate(90deg); }
.as-kmodal .as-kmodal__close:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.as-kmodal .as-kmodal__eyebrow {
	margin: 0 0 10px; color: #ed2125; font-family: "Inter Tight", "Inter", sans-serif;
	font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
}
.as-kmodal .as-kmodal__title {
	margin: 0 0 8px !important; color: #131313 !important; font-family: "Inter Tight", "Inter", sans-serif !important;
	font-size: 30px !important; font-weight: 500 !important; line-height: 1.12 !important; letter-spacing: -.01em;
}
.as-kmodal .as-kmodal__lead { margin: 0 0 22px; color: #55585c; font-size: 15px; line-height: 1.55; }
.as-kmodal .as-kmodal__product {
	margin: -8px 0 22px; padding: 11px 14px; background: #f6f6f7; border-left: 3px solid #ed2125; border-radius: 8px;
	color: #131313; font-size: 14px; font-weight: 500; line-height: 1.45;
}
.as-kmodal .as-kmodal__product[hidden] { display: none; }

@media (max-width: 640px) {
	.as-kmodal { padding: 12px; align-items: flex-end; }
	.as-kmodal__scroll { padding: 28px 20px 24px; max-height: calc(100dvh - 24px); }
	.as-kmodal .as-kmodal__close { top: 10px; right: 10px; width: 36px; height: 36px; }
	.as-kmodal .as-kmodal__title { font-size: 24px !important; padding-right: 40px; }
}
@media (prefers-reduced-motion: reduce) {
	.as-kmodal, .as-kmodal__box, .as-kmodal .as-kmodal__close { transition: none !important; }
}
