/* Raufoss Dekksøk – Gravity Forms in the same look as the tyre search ("B" version):
   white card, hairlines, small grey caps labels inside soft field boxes, red gradient button. */

/* The card: replaces the old dark Elementor box around the form */
.elementor .elementor-widget-shortcode:has(.gform_wrapper.gform-theme),
.elementor .elementor-widget-shortcode:has(.gform_wrapper.gform-theme) > .elementor-widget-container {
	background: #fff !important;
	border-radius: 22px !important;
}
.elementor .elementor-widget-shortcode:has(.gform_wrapper.gform-theme) {
	border: 1px solid #e4e7eb !important;
	box-shadow: 0 18px 40px -26px rgba(16, 18, 22, .45) !important;
	padding: 28px 26px 24px !important;
}

.gform_wrapper.gform-theme {
	--rbf-ink: #0f1115;
	--rbf-ink2: #2b2f36;
	--rbf-muted: #6b7280;
	--rbf-faint: #9aa0a8;
	--rbf-line: #e2e4e8;
	--rbf-soft: #fafafb;
	--rbf-red: #e3262b;
	--rbf-red-d: #c41d22;
	--rbf-bad: #b3261e;
	--gf-ctrl-bg-color: var(--rbf-soft);
	--gf-ctrl-border-color: var(--rbf-line);
	--gf-ctrl-color: var(--rbf-ink);
	--gf-ctrl-label-color-primary: var(--rbf-faint);
	--gf-ctrl-label-color-secondary: var(--rbf-faint);
	--gf-ctrl-desc-color: var(--rbf-muted);
	--gf-color-danger: var(--rbf-bad);
	--gf-form-gap-y: 12px;
	--gf-form-gap-x: 12px;
	color: var(--rbf-ink);
	font-family: inherit;
	-webkit-font-smoothing: antialiased;
}

/* Each field is one soft box with the label tucked inside, like BREDDE / PROFIL / FELG */
.gform_wrapper.gform-theme .gfield:not(.gfield--type-submit):not(.gfield--type-honeypot):not(.gform_validation_container):not(.gfield--type-html):not(.gfield--type-section) {
	position: relative;
	background: var(--rbf-soft);
	border: 1px solid var(--rbf-line);
	border-radius: 14px;
	padding: 11px 14px 10px;
	transition: background-color .15s, border-color .15s, box-shadow .15s;
}
.gform_wrapper.gform-theme .gfield:focus-within {
	background: #fff !important;
	border-color: var(--rbf-ink) !important;
}

.gform_wrapper.gform-theme .gfield_label,
.gform_wrapper.gform-theme .gform-field-label:not(.gform-field-label--type-sub) {
	display: block !important;
	margin: 0 0 5px !important;
	padding: 0 !important;
	color: var(--rbf-faint) !important;
	font-size: 10px !important;
	font-weight: 600 !important;
	letter-spacing: .16em !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
}
.gform_wrapper.gform-theme .gfield_required { color: var(--rbf-red) !important; font-size: 10px !important; margin-left: 2px; }
.gform_wrapper.gform-theme .gfield_required .gfield_required_text { display: none; }

.gform_wrapper.gform-theme .gfield input[type="text"],
.gform_wrapper.gform-theme .gfield input[type="email"],
.gform_wrapper.gform-theme .gfield input[type="tel"],
.gform_wrapper.gform-theme .gfield input[type="number"],
.gform_wrapper.gform-theme .gfield select,
.gform_wrapper.gform-theme .gfield textarea {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	outline: none !important;
	color: var(--rbf-ink) !important;
	font-family: inherit !important;
	font-size: 17px !important; /* ≥16px so iPhone does not zoom */
	font-weight: 600 !important;
	letter-spacing: -.01em !important;
	line-height: 1.35 !important;
}
.gform_wrapper.gform-theme .gfield textarea {
	min-height: 120px !important;
	font-weight: 500 !important;
	resize: vertical;
}
.gform_wrapper.gform-theme .gfield input::placeholder,
.gform_wrapper.gform-theme .gfield textarea::placeholder { color: #b4b9c0 !important; font-weight: 500 !important; opacity: 1; }
.gform_wrapper.gform-theme .gfield input:-webkit-autofill {
	-webkit-text-fill-color: var(--rbf-ink) !important;
	-webkit-box-shadow: 0 0 0 1000px var(--rbf-soft) inset !important;
}

/* International phone: keep the flag picker inside the box */
.gform_wrapper.gform-theme .iti { width: 100%; }
.gform_wrapper.gform-theme .iti input[type="tel"] { padding-left: 52px !important; }
.gform_wrapper.gform-theme .iti__selected-country { background: transparent !important; }
.gform_wrapper.gform-theme .iti__dropdown-content { border: 1px solid var(--rbf-line) !important; border-radius: 12px !important; box-shadow: 0 18px 40px -20px rgba(16,18,22,.35) !important; }

/* Errors: red box, short message under it */
.gform_wrapper.gform-theme .gfield.gfield_error {
	background: #fff7f7 !important;
	border-color: var(--rbf-bad) !important;
}
.gform_wrapper.gform-theme .gfield_error .gfield_label { color: var(--rbf-bad) !important; }
.gform_wrapper.gform-theme .gfield_validation_message,
.gform_wrapper.gform-theme .validation_message {
	background: none !important;
	border: 0 !important;
	margin: 6px 0 0 !important;
	padding: 0 !important;
	color: var(--rbf-bad) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
}
.gform_wrapper.gform-theme .gform_validation_errors {
	background: #fff7f7 !important;
	border: 1px solid #f3c6c3 !important;
	border-radius: 14px !important;
	box-shadow: none !important;
	padding: 12px 16px !important;
	margin-bottom: 14px !important;
}
.gform_wrapper.gform-theme .gform_validation_errors * { color: var(--rbf-bad) !important; font-size: 14px !important; }
.gform_wrapper.gform-theme .gform_validation_errors .gform-icon { display: none !important; }

/* Hairline above the button, like the search card */
.gform_wrapper.gform-theme .gform_footer,
.gform_wrapper.gform-theme .gfield--type-submit {
	margin-top: 10px !important;
	padding-top: 18px !important;
	border-top: 1px solid #eceef1 !important;
	background: none !important;
}
.gform_wrapper.gform-theme .gfield--type-submit { grid-column: 1 / -1 !important; border-left: 0 !important; border-right: 0 !important; border-bottom: 0 !important; border-radius: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }

/* Button: same as "Søk etter dekk" */
.gform_wrapper.gform-theme .gform_footer .gform_button,
.gform_wrapper.gform-theme .gform_footer button[type="submit"],
.gform_wrapper.gform-theme .gform_footer input[type="submit"],
.gform_wrapper.gform-theme .gfield--type-submit .gform_button,
.gform_wrapper.gform-theme .gfield--type-submit button,
.gform_wrapper.gform-theme .gfield--type-submit input[type="submit"] {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	height: 54px !important;
	min-height: 54px !important;
	padding: 0 24px !important;
	border: 0 !important;
	border-radius: 13px !important;
	background: linear-gradient(180deg, var(--rbf-red) 0%, var(--rbf-red-d) 100%) !important;
	color: #fff !important;
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	letter-spacing: .01em !important;
	text-transform: none !important;
	box-shadow: 0 10px 24px -12px rgba(227, 38, 43, .85) !important;
	cursor: pointer;
	transition: filter .15s, transform .05s;
}
.gform_wrapper.gform-theme .gform_footer .gform_button:hover,
.gform_wrapper.gform-theme .gfield--type-submit button:hover,
.gform_wrapper.gform-theme .gfield--type-submit input[type="submit"]:hover { filter: brightness(1.05); }
.gform_wrapper.gform-theme .gform_footer .gform_button:active,
.gform_wrapper.gform-theme .gfield--type-submit button:active { transform: translateY(1px); }

.gform_confirmation_message { color: var(--rbf-ink); font-size: 16px; }

@media (max-width: 640px) {
	.elementor .elementor-widget-shortcode:has(.gform_wrapper.gform-theme) { padding: 22px 16px 18px !important; border-radius: 18px !important; }
	.gform_wrapper.gform-theme .gfield--width-half { grid-column: 1 / -1 !important; }
}
