.enimbus360-subscribe {
	--e360-form-bg: #ff7a00;
	--e360-input-bg: #fff;
	--e360-button-bg: #263346;
	--e360-button-text: #fff;
	--e360-validation: #b91c1c;
	--e360-error: #b91c1c;
	--e360-success: #15803d;
	box-sizing: border-box;
	max-width: 680px;
	width: 100%;
}

.enimbus360-subscribe *,
.enimbus360-subscribe *::before,
.enimbus360-subscribe *::after { box-sizing: border-box; }

.enimbus360-subscribe__form {
	display: flex;
	align-items: stretch;
	width: 100%;
	min-height: 60px;
	padding: 9px 14px;
	margin: 0;
	border-radius: 999px;
	background: var(--e360-form-bg);
	box-shadow: none;
}

.enimbus360-subscribe__input-wrap {
	position: relative;
	display: flex;
	flex: 1 1 auto;
	min-width: 0;
	height: 42px;
	overflow: hidden;
	background: var(--e360-input-bg);
	border-radius: 999px 0 0 999px;
}

.enimbus360-subscribe__input {
	width: 100%;
	min-width: 0;
	height: 42px;
	padding: 0 54px 0 28px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: inherit !important;
	outline: 0;
	background: transparent !important;
	box-shadow: none !important;
	color: #1f2937;
	font: inherit;
	font-size: 15px;
	font-weight: 400 !important;
}

.enimbus360-subscribe__input:focus { box-shadow: inset 0 0 0 2px rgba(38, 51, 70, .28) !important; }
.enimbus360-subscribe__input::placeholder { color: #9ca3af; font-weight:400 !important; opacity: 1; }

.enimbus360-subscribe__icon {
	position: absolute;
	top: 50%;
	right: 25px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 2px;
	width: 20px;
	height: 20px;
	border-radius: 5px;
	background: #b8bec8;
	transform: translateY(-50%);
	pointer-events: none;
}

.enimbus360-subscribe__icon i { width: 2px; height: 2px; border-radius: 50%; background: #fff; }

.enimbus360-subscribe__button {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-width: 112px;
	height: 42px;
	min-height: 42px;
	padding: 0 28px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 0 999px 999px 0 !important;
	background: var(--e360-button-bg) !important;
	color: var(--e360-button-text) !important;
	font: inherit;
	font-size: 15px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
	transition: filter .2s ease, transform .2s ease;
}

.enimbus360-subscribe__button:hover { filter: brightness(1.12); }
.enimbus360-subscribe__button:focus-visible { outline: 3px solid rgba(255,255,255,.9); outline-offset: -5px; }
.enimbus360-subscribe__button:disabled { cursor: wait; opacity: .78; }

.enimbus360-subscribe__spinner {
	display: none;
	width: 17px;
	height: 17px;
	border: 2px solid rgba(255,255,255,.35);
	border-top-color: currentColor;
	border-radius: 50%;
	animation: enimbus360-spin .7s linear infinite;
}

.enimbus360-subscribe.is-loading .enimbus360-subscribe__button-label { display: none; }
.enimbus360-subscribe.is-loading .enimbus360-subscribe__spinner { display: block; }
.enimbus360-subscribe__message { min-height: 24px; padding: 7px 18px 0; font-size: 14px; line-height: 1.45; }
.enimbus360-subscribe__message:empty { min-height: 0; padding-top: 0; }
.enimbus360-subscribe__message.is-validation { color: var(--e360-validation); }
.enimbus360-subscribe__message.is-error { color: var(--e360-error); }
.enimbus360-subscribe__message.is-success { color: var(--e360-success); }
.enimbus360-subscribe__privacy { padding: 4px 18px 0; font-size: 12px; line-height: 1.5; opacity: .72; }
.enimbus360-consent { display:flex; align-items:flex-start; gap:10px; padding:12px 16px 0; color:inherit; font-size:12px; line-height:1.55; cursor:pointer; }
.enimbus360-consent input { flex:0 0 auto; width:17px !important; height:17px !important; margin:2px 0 0 !important; accent-color:var(--e360-button-bg); }
.enimbus360-consent a { color:inherit; font-weight:600; text-decoration:underline; }

.enimbus360-contact { max-width:860px; }
.enimbus360-contact__form { display:grid; gap:5px; width:100%; padding:40px 0px; border:0; border-radius:0; background:transparent; }
.enimbus360-contact fieldset { min-width:0; padding:0; margin:0; border:0; }
.enimbus360-contact legend,.enimbus360-contact__field>strong { display:block; margin:0 0 11px; color:#282d33; font-size:14px; font-weight:700; }
.enimbus360-contact em { color:#dc2626; font-style:normal; }
.enimbus360-contact__row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.enimbus360-contact__field { display:block; }
.enimbus360-contact__form input:not([type=checkbox]):not([type=hidden]),.enimbus360-contact__form textarea { display:block; width:100%; margin:0 !important; border:1px solid #d6d8dc !important; border-radius:24px !important; outline:0; background:#fff !important; box-shadow:none !important; color:#1f2937; font:inherit; font-size:14px; font-weight:400 !important; }
.enimbus360-contact__form input::placeholder,.enimbus360-contact__form textarea::placeholder { font-weight:400 !important; }
.enimbus360-contact__form input:not([type=checkbox]):not([type=hidden]) { height:45px; padding:0 17px !important; }
.enimbus360-contact__form textarea { min-height:90px; height:90px; padding:16px 17px !important; border-radius:20px !important; resize:vertical; }
.enimbus360-contact__form input:focus,.enimbus360-contact__form textarea:focus { border-color:var(--e360-button-bg) !important; box-shadow:0 0 0 3px color-mix(in srgb,var(--e360-button-bg) 13%,transparent) !important; }
.enimbus360-phone { display:flex; align-items:center; width:100%; height:45px; overflow:hidden; border:1px solid #d6d8dc; border-radius:24px; background:#fff; transition:border-color .2s ease,box-shadow .2s ease; }
.enimbus360-phone__country { flex:0 0 155px; align-self:stretch; width:155px; height:43px !important; min-height:43px !important; margin:0 !important; padding:0 12px !important; overflow:hidden; border:0 !important; border-right:1px solid #d6d8dc !important; border-radius:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; color:#1f2937; font:inherit; font-size:14px; font-weight:400 !important; line-height:43px; text-overflow:ellipsis; cursor:pointer; }
.enimbus360-phone__country option { font-weight:400; }
.enimbus360-phone input[type=tel],.enimbus360-phone input[type=tel]:hover,.enimbus360-phone input[type=tel]:focus { flex:1 1 auto; min-width:0; width:auto !important; height:43px !important; min-height:43px !important; margin:0 !important; border:0 !important; border-radius:0 !important; outline:0 !important; background:transparent !important; box-shadow:none !important; }
.enimbus360-phone:focus-within { border-color:var(--e360-button-bg); box-shadow:0 0 0 3px rgba(38,51,70,.1); }
.enimbus360-phone:focus-within .enimbus360-phone__country { border-right-color:var(--e360-button-bg) !important; }
.enimbus360-captcha { display:flex; align-items:center; justify-content:flex-start; justify-self:start; min-height:45px; overflow:hidden; border:1px solid #d6d8dc; border-radius:14px; background:#fff; color:#282d33; font-size:14px; transition:border-color .2s ease,box-shadow .2s ease; }
.enimbus360-captcha strong { padding:0 13px; font-size:12px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.enimbus360-captcha>span { padding:0 12px; border-left:1px solid #e2e5e9; font-weight:400; white-space:nowrap; }
.enimbus360-contact__form .enimbus360-captcha input[name=captcha_answer] { width:58px !important; height:43px !important; min-height:43px !important; padding:0 8px !important; border:0 !important; border-left:1px solid #e2e5e9 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; font-weight:400 !important; text-align:center; }
.enimbus360-captcha:focus-within { border-color:var(--e360-button-bg); box-shadow:0 0 0 3px rgba(38,51,70,.1); }
.enimbus360-contact .enimbus360-consent { padding:0; }
.enimbus360-contact__button { justify-self:center; min-width:185px; border-radius:999px !important; }
.enimbus360-contact.is-loading .enimbus360-subscribe__button-label { display:none; }
.enimbus360-contact.is-loading .enimbus360-subscribe__spinner { display:block; }

.enimbus360-subscribe__trap {
	position: absolute !important;
	left: -10000px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.enimbus360-subscribe .screen-reader-text {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

@keyframes enimbus360-spin { to { transform: rotate(360deg); } }

@media (max-width: 520px) {
	.enimbus360-subscribe__form { min-height: 54px; padding: 7px; }
	.enimbus360-subscribe__input,
	.enimbus360-subscribe__button { height: 40px; }
	.enimbus360-subscribe__input-wrap,.enimbus360-subscribe__button { min-height:40px; height:40px; }
	.enimbus360-subscribe__input { padding-left: 18px !important; padding-right: 38px !important; font-size: 14px; }
	.enimbus360-subscribe__icon { right: 13px; }
	.enimbus360-subscribe__button { min-width: 94px; padding: 0 18px !important; font-size: 14px; }
	.enimbus360-contact__form { gap:22px; padding:26px 18px; }
	.enimbus360-contact__row { grid-template-columns:1fr; gap:12px; }
	.enimbus360-contact__button { width:100%; min-width:0; }
	.enimbus360-phone__country { flex-basis:135px; width:135px; padding:0 8px; }
}

@media (max-width: 340px) {
	.enimbus360-subscribe__form { display: grid; gap: 7px; border-radius: 22px; }
	.enimbus360-subscribe__input-wrap,
	.enimbus360-subscribe__button { width: 100%; border-radius: 16px !important; }
}

@media (prefers-reduced-motion: reduce) {
	.enimbus360-subscribe__button { transition: none; }
}
body .enimbus360-contact__form .enimbus360-phone input[type="tel"] {
	border: none !important;
}