/* Remote font files are enqueued conditionally by includes/fonts.php. Without
 * them, symbol ligature names remain readable text and self-hosted @font-face
 * declarations can target the same family without changing widget markup. */
.material-symbols-rounded,
.material-symbols-outlined {
	font-family: "Material Symbols Rounded", sans-serif;
	font-weight: normal;
	font-style: normal;
	font-size: 1em;
	line-height: 1;
	letter-spacing: normal;
	text-transform: none;
	display: inline-block;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	-webkit-font-feature-settings: "liga";
	font-feature-settings: "liga";
	-webkit-font-smoothing: antialiased;
}

/* Gradient text utility (orange → red warm) */
.gw-text-grad-warm {
	background: linear-gradient(90deg, #ff4d1a 0%, #b82f06 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}

/* Pill highlight (background orange, white text, rounded) */
.gw-pill-hl {
	display: inline-flex;
	align-items: center;
	background: #ff4d1a;
	color: #ffffff;
	padding: 0.08em 0.34em;
	border-radius: 999px;
}

:root {
	--gotoweb-ink: #101114;
	--gotoweb-muted: #626772;
	--gotoweb-line: #dfe3ea;
	--gotoweb-paper: #ffffff;
	--gotoweb-soft: #f4f7fb;
	--gotoweb-accent: #1d4ed8;
	--gotoweb-radius: 8px;
}

.mb-background-video {
	position: absolute;
	inset: 0;
	z-index: -2;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	pointer-events: none;
}

.gotoweb-menu ul {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gotoweb-menu--vertical ul {
	display: grid;
	gap: 10px;
}

.gotoweb-search-form,
.gotoweb-form {
	display: grid;
	gap: 14px;
	max-width: 560px;
}

.gotoweb-login-form {
	display: grid;
	gap: var(--gotoweb-login-form-gap, 14px);
	max-width: var(--gotoweb-login-form-max-width, 560px);
	padding: var(--gotoweb-login-form-padding, 0);
	border-width: var(--gotoweb-login-form-border-width, 0);
	border-style: solid;
	border-color: var(--gotoweb-login-form-border-color, transparent);
	border-radius: var(--gotoweb-login-form-border-radius, 0);
	background-color: var(--gotoweb-login-form-background-color, transparent);
}

.gotoweb-search-form {
	grid-template-columns: minmax(0, 1fr) auto;
}

.gotoweb-search-form label {
	display: block;
}

.gotoweb-search-form input,
.gotoweb-form input,
.gotoweb-form textarea,
.gotoweb-form select {
	width: 100%;
	min-height: 44px;
	padding: 10px 12px;
	border: 1px solid var(--gotoweb-line);
	border-radius: 6px;
	background: var(--gotoweb-paper);
	color: var(--gotoweb-ink);
	font: inherit;
}

.gotoweb-login-form form,
.gotoweb-login-form .login-username,
.gotoweb-login-form .login-password,
.gotoweb-login-form .login-remember,
.gotoweb-login-form .login-submit,
.gotoweb-login-form__register,
.gotoweb-login-form__logged-in {
	margin: 0;
}

.gotoweb-login-form form {
	display: grid;
	gap: var(--gotoweb-login-form-gap, 14px);
}

.gotoweb-login-form label {
	display: block;
	margin-bottom: var(--gotoweb-login-label-margin-bottom, 4px);
	color: var(--gotoweb-login-label-color, var(--gotoweb-ink));
	font-size: var(--gotoweb-login-label-font-size, 14px);
	font-weight: var(--gotoweb-login-label-font-weight, 500);
}

.gotoweb-login-form input:not([type="submit"]):not([type="checkbox"]):not([type="hidden"]) {
	width: 100%;
	min-height: var(--gotoweb-login-input-min-height, 42px);
	padding: var(--gotoweb-login-input-padding, 8px 12px);
	border-width: var(--gotoweb-login-input-border-width, 1px);
	border-style: solid;
	border-color: var(--gotoweb-login-input-border-color, var(--gotoweb-line));
	border-radius: var(--gotoweb-login-input-border-radius, 8px);
	background-color: var(--gotoweb-login-input-background-color, var(--gotoweb-paper));
	color: var(--gotoweb-login-input-text-color, var(--gotoweb-ink));
	font-size: var(--gotoweb-login-input-font-size, 14px);
}

.gotoweb-login-form .login-remember label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 0;
}

.gotoweb-login-form input[type="checkbox"] {
	width: auto;
	min-height: 0;
	margin: 0;
}

.gotoweb-form textarea {
	min-height: 120px;
	resize: vertical;
}

.gotoweb-search-form button,
.gotoweb-form button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid var(--gotoweb-ink);
	border-radius: 6px;
	background: var(--gotoweb-ink);
	color: #ffffff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.gotoweb-login-form input[type="submit"],
.gotoweb-login-form button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: var(--gotoweb-login-button-min-height, 42px);
	padding: var(--gotoweb-login-button-padding, 8px 16px);
	border-width: var(--gotoweb-login-button-border-width, 1px);
	border-style: solid;
	border-color: var(--gotoweb-login-button-border-color, var(--gotoweb-ink));
	border-radius: var(--gotoweb-login-button-border-radius, 8px);
	background-color: var(--gotoweb-login-button-background-color, var(--gotoweb-ink));
	color: var(--gotoweb-login-button-text-color, #ffffff);
	font-family: inherit;
	font-size: var(--gotoweb-login-button-font-size, inherit);
	font-weight: var(--gotoweb-login-button-font-weight, 700);
	cursor: pointer;
}

.gotoweb-login-form__register {
	text-align: center;
}

.gotoweb-login-form__register a {
	color: var(--gotoweb-login-register-link-color, var(--gotoweb-ink));
	font-size: var(--gotoweb-login-register-link-font-size, 14px);
}

.gotoweb-form__field {
	display: grid;
	gap: 6px;
	margin: 0;
}

.gotoweb-form__field--checkbox label,
.gotoweb-form fieldset label {
	display: flex;
	align-items: center;
	gap: 8px;
}

.gotoweb-form__field--checkbox input,
.gotoweb-form fieldset input {
	width: auto;
	min-height: 0;
}

/* Radio option layout (editor `layout` prop: vertical | horizontal). */
.gotoweb-form__radios {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.gotoweb-form__radios--horizontal {
	flex-direction: row;
	flex-wrap: wrap;
	gap: 16px;
	align-items: center;
}

/* Per-field focus colour set via the `--gw-form-focus` custom property the
   renderer emits from the editor's "Focus Color" Style prop. */
.gotoweb-form input:focus,
.gotoweb-form textarea:focus,
.gotoweb-form select:focus {
	border-color: var(--gw-form-focus, var(--gotoweb-line));
	box-shadow: 0 0 0 2px color-mix(in srgb, var(--gw-form-focus, transparent) 20%, transparent);
}

.gotoweb-form__honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.gotoweb-posts-grid {
	width: min(1180px, 100%);
	margin: 0 auto;
}

.gotoweb-post-card {
	overflow: hidden;
	border: 1px solid var(--gotoweb-line);
	border-radius: var(--gotoweb-radius);
	background: var(--gotoweb-paper);
}

.gotoweb-post-card > :not(a) {
	margin-right: 18px;
	margin-left: 18px;
}

.gotoweb-post-card h3 {
	margin-top: 18px;
}

.gotoweb-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
	color: var(--gotoweb-muted);
	font-size: 14px;
}

.gotoweb-site-branding {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: inherit;
	font-weight: 800;
	text-decoration: none;
}

.gotoweb-video,
.gotoweb-map {
	width: 100%;
}

.gotoweb-video iframe,
.gotoweb-map iframe {
	display: block;
	width: 100%;
	border: 0;
	border-radius: var(--gotoweb-radius);
}

.gotoweb-video iframe {
	aspect-ratio: 16 / 9;
	height: auto;
}

.gotoweb-accordion {
	display: grid;
	gap: 10px;
}

.gotoweb-accordion__item {
	border: 1px solid var(--gotoweb-line);
	border-radius: var(--gotoweb-radius);
	background: var(--gotoweb-paper);
}

.gotoweb-accordion__button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 16px 18px;
	border: 0;
	background: transparent;
	color: var(--gotoweb-ink);
	font: inherit;
	font-weight: 750;
	text-align: left;
	cursor: pointer;
}

.gotoweb-accordion__button::after {
	content: "+";
	font-weight: 800;
}

.gotoweb-accordion__button[aria-expanded="true"]::after {
	content: "-";
}

.gotoweb-accordion__panel {
	padding: 0 18px 18px;
	color: var(--gotoweb-muted);
}

/* TableBlock: mirrors the editor's styled cells (header bg, zebra rows, bordered
   cells). The front has no Tailwind so these utilities are reproduced as CSS. */
.gw-builder-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}

.gw-builder-table th,
.gw-builder-table td {
	padding: 8px 12px;
	border: 1px solid #e4e4e7;
	text-align: left;
}

.gw-builder-table thead th {
	background: #f4f4f5;
	font-weight: 600;
	color: #3f3f46;
}

.gw-builder-table tbody td {
	color: #52525b;
}

.gw-builder-table tbody tr:nth-child(even) {
	background: #fafafa;
}

.gotoweb-tabs {
	display: grid;
	gap: 18px;
}

.gotoweb-tabs__bar {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.gotoweb-tabs--vertical {
	align-items: start;
}

.gotoweb-tabs--vertical .gotoweb-tabs__bar {
	flex-direction: column;
	flex-wrap: nowrap;
}

.gotoweb-tabs--vertical .gotoweb-tabs__bar button:not([data-tabs-active-style]):not([data-tabs-inactive-style]) {
	width: 100%;
}

.gotoweb-tabs__bar button:not([data-tabs-active-style]):not([data-tabs-inactive-style]) {
	padding: 10px 14px;
	border: 1px solid var(--gotoweb-line);
	border-radius: 999px;
	background: var(--gotoweb-paper);
	color: var(--gotoweb-ink);
	font: inherit;
	cursor: pointer;
}

.gotoweb-tabs__bar button.is-active:not([data-tabs-active-style]),
.gotoweb-tabs__bar button[aria-selected="true"]:not([data-tabs-active-style]) {
	border-color: var(--gotoweb-ink);
	background: var(--gotoweb-ink);
	color: #ffffff;
}

.gotoweb-tabs__panel {
	padding: 20px;
	border: 1px solid var(--gotoweb-line);
	border-radius: var(--gotoweb-radius);
	background: var(--gotoweb-paper);
}

.gotoweb-tabs__panel[hidden] {
	display: none !important;
}

.gotoweb-tabs__panel--with-image {
	min-width: 0;
}

.gotoweb-tabs__content,
.gotoweb-tabs__image {
	min-width: 0;
}

.gotoweb-tabs__body > :first-child {
	margin-top: 0;
}

.gotoweb-tabs__body > :last-child {
	margin-bottom: 0;
}

@media (max-width: 1023px) {
	.gotoweb-tabs[data-panel-stack-at="tablet"] .gotoweb-tabs__panel--with-image {
		grid-template-columns: minmax(0, 1fr) !important;
	}

	.gotoweb-tabs[data-panel-stack-at="tablet"] > .gotoweb-tabs__panels > .gotoweb-tabs__panel--has-image > .gotoweb-tabs__panel-inner {
		flex-direction: column !important;
	}

	.gotoweb-tabs[data-panel-stack-at="tablet"] > .gotoweb-tabs__panels > .gotoweb-tabs__panel--has-image.gotoweb-tabs__panel--image-right > .gotoweb-tabs__panel-inner {
		flex-direction: column-reverse !important;
	}
}

@media (min-width: 768px) and (max-width: 1023px) {
	.gotoweb-tabs[data-tabs-responsive] {
		gap: var(--gotoweb-tabs-layout-gap-tablet, var(--gotoweb-tabs-layout-gap-base, 18px)) !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="vertical"] {
		grid-template-columns: minmax(0, var(--gotoweb-tabs-tab-bar-track-width-tablet, var(--gotoweb-tabs-tab-bar-track-width-base, 320px))) minmax(0, 1fr) !important;
		align-items: start !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="horizontal"] {
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: normal !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="vertical"] > .gotoweb-tabs__bar {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		border-right-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-right-style: solid;
		border-right-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
		border-bottom-width: 0 !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="horizontal"] > .gotoweb-tabs__bar {
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: normal !important;
		align-self: auto !important;
		border-right-width: 0 !important;
		border-bottom-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-bottom-style: solid;
		border-bottom-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="vertical"] > .gotoweb-tabs__bar > button {
		flex: initial !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="horizontal"][data-tabs-bar-alignment="stretch"] > .gotoweb-tabs__bar > button {
		flex: 1 1 0 !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="horizontal"]:not([data-tabs-bar-alignment="stretch"]) > .gotoweb-tabs__bar > button {
		flex: initial !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="vertical"] > .gotoweb-tabs__bar > button[aria-selected="true"] {
		border-bottom-width: var(--gotoweb-tabs-inactive-border-width, 0) !important;
		border-bottom-style: var(--gotoweb-tabs-inactive-border-style, none) !important;
		border-bottom-color: var(--gotoweb-tabs-inactive-border-color, currentColor) !important;
		border-right-width: var(--gotoweb-tabs-active-border-width, 0) !important;
		border-right-style: var(--gotoweb-tabs-active-border-style, none) !important;
		border-right-color: var(--gotoweb-tabs-active-border-color, currentColor) !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-tablet="horizontal"] > .gotoweb-tabs__bar > button[aria-selected="true"] {
		border-right-width: var(--gotoweb-tabs-inactive-border-width, 0) !important;
		border-right-style: var(--gotoweb-tabs-inactive-border-style, none) !important;
		border-right-color: var(--gotoweb-tabs-inactive-border-color, currentColor) !important;
		border-bottom-width: var(--gotoweb-tabs-active-border-width, 0) !important;
		border-bottom-style: var(--gotoweb-tabs-active-border-style, none) !important;
		border-bottom-color: var(--gotoweb-tabs-active-border-color, currentColor) !important;
	}

	.gotoweb-tabs[data-tabs-responsive].gotoweb-tabs--vertical:not([data-tabs-responsive-orientation]) {
		grid-template-columns: minmax(0, var(--gotoweb-tabs-tab-bar-track-width-tablet, var(--gotoweb-tabs-tab-bar-track-width-base, 320px))) minmax(0, 1fr) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] > .gotoweb-tabs__bar {
		width: var(--gotoweb-tabs-tab-bar-width-tablet, var(--gotoweb-tabs-tab-bar-width-base, 100%)) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] > .gotoweb-tabs__bar > button {
		width: var(--gotoweb-tabs-tab-width-tablet, var(--gotoweb-tabs-tab-width-base, auto)) !important;
		min-height: var(--gotoweb-tabs-tab-min-height-tablet, var(--gotoweb-tabs-tab-min-height-base, auto)) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__panel-content,
	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__content {
		padding-top: var(--gotoweb-tabs-panel-content-padding-top-tablet, var(--gotoweb-tabs-panel-content-padding-top-base, 0px)) !important;
		padding-right: var(--gotoweb-tabs-panel-content-padding-x-tablet, var(--gotoweb-tabs-panel-content-padding-x-base, 0px)) !important;
		padding-bottom: var(--gotoweb-tabs-panel-content-padding-bottom-tablet, var(--gotoweb-tabs-panel-content-padding-bottom-base, 0px)) !important;
		padding-left: var(--gotoweb-tabs-panel-content-padding-x-tablet, var(--gotoweb-tabs-panel-content-padding-x-base, 0px)) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__eyebrow {
		line-height: var(--gotoweb-tabs-panel-eyebrow-line-height-tablet, var(--gotoweb-tabs-panel-eyebrow-line-height-base, normal)) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__image,
	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__panel-image {
		height: var(--gotoweb-tabs-panel-image-height-tablet, var(--gotoweb-tabs-panel-image-height-base, auto)) !important;
		object-position: var(--gotoweb-tabs-panel-image-object-position-x-tablet, var(--gotoweb-tabs-panel-image-object-position-x-base, 50%)) var(--gotoweb-tabs-panel-image-object-position-y-tablet, var(--gotoweb-tabs-panel-image-object-position-y-base, 50%)) !important;
	}
}

@media (max-width: 767px) {
	.gotoweb-tabs[data-tabs-responsive] {
		gap: var(--gotoweb-tabs-layout-gap-mobile, var(--gotoweb-tabs-layout-gap-tablet, var(--gotoweb-tabs-layout-gap-base, 18px))) !important;
	}

	.gotoweb-tabs:not(.gotoweb-tabs--vertical):not(.gotoweb-tabs--mobile-wrap):not(.gotoweb-tabs--mobile-stack):not([data-mobile-tab-layout="wrap"]):not([data-mobile-tab-layout="stack"]) .gotoweb-tabs__bar,
	.gotoweb-tabs.gotoweb-tabs--mobile-scroll .gotoweb-tabs__bar,
	.gotoweb-tabs[data-mobile-tab-layout="scroll"] .gotoweb-tabs__bar {
		width: var(--gotoweb-tabs-tab-bar-width-mobile, var(--gotoweb-tabs-tab-bar-width-tablet, var(--gotoweb-tabs-tab-bar-width-base, 100%))) !important;
		max-width: 100%;
		justify-content: flex-start !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		overflow-x: auto;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x proximity;
		scrollbar-width: thin;
		scrollbar-color: rgba(100, 116, 139, 0.5) transparent;
		-webkit-overflow-scrolling: touch;
	}

	.gotoweb-tabs:not(.gotoweb-tabs--vertical):not(.gotoweb-tabs--mobile-wrap):not(.gotoweb-tabs--mobile-stack):not([data-mobile-tab-layout="wrap"]):not([data-mobile-tab-layout="stack"]) .gotoweb-tabs__bar::-webkit-scrollbar,
	.gotoweb-tabs.gotoweb-tabs--mobile-scroll .gotoweb-tabs__bar::-webkit-scrollbar,
	.gotoweb-tabs[data-mobile-tab-layout="scroll"] .gotoweb-tabs__bar::-webkit-scrollbar {
		height: 4px;
	}

	.gotoweb-tabs:not(.gotoweb-tabs--vertical):not(.gotoweb-tabs--mobile-wrap):not(.gotoweb-tabs--mobile-stack):not([data-mobile-tab-layout="wrap"]):not([data-mobile-tab-layout="stack"]) .gotoweb-tabs__bar::-webkit-scrollbar-track,
	.gotoweb-tabs.gotoweb-tabs--mobile-scroll .gotoweb-tabs__bar::-webkit-scrollbar-track,
	.gotoweb-tabs[data-mobile-tab-layout="scroll"] .gotoweb-tabs__bar::-webkit-scrollbar-track {
		background: transparent;
	}

	.gotoweb-tabs:not(.gotoweb-tabs--vertical):not(.gotoweb-tabs--mobile-wrap):not(.gotoweb-tabs--mobile-stack):not([data-mobile-tab-layout="wrap"]):not([data-mobile-tab-layout="stack"]) .gotoweb-tabs__bar::-webkit-scrollbar-thumb,
	.gotoweb-tabs.gotoweb-tabs--mobile-scroll .gotoweb-tabs__bar::-webkit-scrollbar-thumb,
	.gotoweb-tabs[data-mobile-tab-layout="scroll"] .gotoweb-tabs__bar::-webkit-scrollbar-thumb {
		background-color: rgba(100, 116, 139, 0.5);
		border-radius: 4px;
	}

	.gotoweb-tabs:not(.gotoweb-tabs--vertical):not(.gotoweb-tabs--mobile-wrap):not(.gotoweb-tabs--mobile-stack):not([data-mobile-tab-layout="wrap"]):not([data-mobile-tab-layout="stack"]) .gotoweb-tabs__bar button,
	.gotoweb-tabs.gotoweb-tabs--mobile-scroll .gotoweb-tabs__bar button,
	.gotoweb-tabs[data-mobile-tab-layout="scroll"] .gotoweb-tabs__bar button {
		width: var(--gotoweb-tabs-tab-width-mobile, var(--gotoweb-tabs-tab-width-tablet, var(--gotoweb-tabs-tab-width-base, auto))) !important;
		flex: 0 0 auto !important;
		scroll-snap-align: start;
	}

	.gotoweb-tabs.gotoweb-tabs--mobile-wrap .gotoweb-tabs__bar,
	.gotoweb-tabs[data-mobile-tab-layout="wrap"] .gotoweb-tabs__bar {
		width: var(--gotoweb-tabs-tab-bar-width-mobile, var(--gotoweb-tabs-tab-bar-width-tablet, var(--gotoweb-tabs-tab-bar-width-base, 100%))) !important;
		max-width: 100%;
		justify-content: flex-start !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		overflow: visible;
	}

	.gotoweb-tabs.gotoweb-tabs--mobile-wrap .gotoweb-tabs__bar button,
	.gotoweb-tabs[data-mobile-tab-layout="wrap"] .gotoweb-tabs__bar button {
		width: var(--gotoweb-tabs-tab-width-mobile, var(--gotoweb-tabs-tab-width-tablet, var(--gotoweb-tabs-tab-width-base, auto))) !important;
	}

	.gotoweb-tabs.gotoweb-tabs--mobile-stack .gotoweb-tabs__bar,
	.gotoweb-tabs[data-mobile-tab-layout="stack"] .gotoweb-tabs__bar {
		width: var(--gotoweb-tabs-tab-bar-width-mobile, var(--gotoweb-tabs-tab-bar-width-tablet, var(--gotoweb-tabs-tab-bar-width-base, 100%))) !important;
		max-width: 100%;
		flex-direction: column !important;
		align-items: stretch !important;
		overflow: visible;
	}

	.gotoweb-tabs.gotoweb-tabs--mobile-stack .gotoweb-tabs__bar button,
	.gotoweb-tabs[data-mobile-tab-layout="stack"] .gotoweb-tabs__bar button {
		width: 100% !important;
	}

	.gotoweb-tabs__bar button {
		min-height: var(--gotoweb-tabs-tab-min-height-mobile, var(--gotoweb-tabs-tab-min-height-tablet, var(--gotoweb-tabs-tab-min-height-base, 44px))) !important;
	}

	.gotoweb-tabs--vertical,
	.gotoweb-tabs__panel--with-image {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 24px !important;
	}

	.gotoweb-tabs__panel--has-image .gotoweb-tabs__panel-inner {
		flex-direction: column !important;
		gap: 24px !important;
	}

	.gotoweb-tabs__panel--has-image.gotoweb-tabs__panel--image-right .gotoweb-tabs__panel-inner {
		flex-direction: column-reverse !important;
	}

	.gotoweb-tabs--vertical .gotoweb-tabs__bar {
		width: var(--gotoweb-tabs-tab-bar-width-mobile, var(--gotoweb-tabs-tab-bar-width-tablet, var(--gotoweb-tabs-tab-bar-width-base, 100%))) !important;
		border-right-width: 0 !important;
		border-bottom-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-bottom-style: solid;
		border-bottom-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
	}

	.gotoweb-tabs--vertical:not(.gotoweb-tabs--mobile-scroll):not(.gotoweb-tabs--mobile-wrap):not([data-mobile-tab-layout="scroll"]):not([data-mobile-tab-layout="wrap"]) .gotoweb-tabs__bar button {
		width: 100% !important;
	}

	.gotoweb-tabs__image,
	.gotoweb-tabs__panel-image {
		width: 100% !important;
	}

	.gotoweb-tabs__content,
	.gotoweb-tabs__panel-content {
		max-width: 100% !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__panel-content,
	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__content {
		padding-top: var(--gotoweb-tabs-panel-content-padding-top-mobile, var(--gotoweb-tabs-panel-content-padding-top-tablet, var(--gotoweb-tabs-panel-content-padding-top-base, 0px))) !important;
		padding-right: var(--gotoweb-tabs-panel-content-padding-x-mobile, var(--gotoweb-tabs-panel-content-padding-x-tablet, var(--gotoweb-tabs-panel-content-padding-x-base, 0px))) !important;
		padding-bottom: var(--gotoweb-tabs-panel-content-padding-bottom-mobile, var(--gotoweb-tabs-panel-content-padding-bottom-tablet, var(--gotoweb-tabs-panel-content-padding-bottom-base, 0px))) !important;
		padding-left: var(--gotoweb-tabs-panel-content-padding-x-mobile, var(--gotoweb-tabs-panel-content-padding-x-tablet, var(--gotoweb-tabs-panel-content-padding-x-base, 0px))) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__eyebrow {
		line-height: var(--gotoweb-tabs-panel-eyebrow-line-height-mobile, var(--gotoweb-tabs-panel-eyebrow-line-height-tablet, var(--gotoweb-tabs-panel-eyebrow-line-height-base, normal))) !important;
	}

	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__image,
	.gotoweb-tabs[data-tabs-responsive] .gotoweb-tabs__panel-image {
		height: var(--gotoweb-tabs-panel-image-height-mobile, var(--gotoweb-tabs-panel-image-height-tablet, var(--gotoweb-tabs-panel-image-height-base, auto))) !important;
		object-position: var(--gotoweb-tabs-panel-image-object-position-x-mobile, var(--gotoweb-tabs-panel-image-object-position-x-tablet, var(--gotoweb-tabs-panel-image-object-position-x-base, 50%))) var(--gotoweb-tabs-panel-image-object-position-y-mobile, var(--gotoweb-tabs-panel-image-object-position-y-tablet, var(--gotoweb-tabs-panel-image-object-position-y-base, 50%))) !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="vertical"] {
		display: grid !important;
		grid-template-columns: minmax(0, var(--gotoweb-tabs-tab-bar-track-width-mobile, var(--gotoweb-tabs-tab-bar-track-width-tablet, var(--gotoweb-tabs-tab-bar-track-width-base, 320px)))) minmax(0, 1fr) !important;
		align-items: start !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="horizontal"] {
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: normal !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="vertical"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		overflow: visible;
		border-right-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-right-style: solid;
		border-right-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
		border-bottom-width: 0 !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="vertical"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar > button {
		width: 100% !important;
		flex: initial !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="horizontal"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: normal !important;
		align-self: auto !important;
		overflow-x: auto;
		border-right-width: 0 !important;
		border-bottom-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-bottom-style: solid;
		border-bottom-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="horizontal"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar > button {
		width: var(--gotoweb-tabs-tab-width-mobile, var(--gotoweb-tabs-tab-width-tablet, var(--gotoweb-tabs-tab-width-base, auto))) !important;
		flex: 0 0 auto !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-mobile-tab-layout] {
		grid-template-columns: minmax(0, 1fr) !important;
		align-items: normal !important;
	}

	.gotoweb-tabs[data-tabs-responsive-orientation][data-mobile-tab-layout] > .gotoweb-tabs__bar {
		border-right-width: 0 !important;
		border-bottom-width: var(--gotoweb-tabs-bar-border-width, 0) !important;
		border-bottom-style: solid;
		border-bottom-color: var(--gotoweb-tabs-bar-border-color, transparent) !important;
	}

	.gotoweb-tabs[data-mobile-tab-layout="stack"] > .gotoweb-tabs__bar > button[aria-selected="true"],
	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="vertical"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar > button[aria-selected="true"] {
		border-bottom-width: var(--gotoweb-tabs-inactive-border-width, 0) !important;
		border-bottom-style: var(--gotoweb-tabs-inactive-border-style, none) !important;
		border-bottom-color: var(--gotoweb-tabs-inactive-border-color, currentColor) !important;
		border-right-width: var(--gotoweb-tabs-active-border-width, 0) !important;
		border-right-style: var(--gotoweb-tabs-active-border-style, none) !important;
		border-right-color: var(--gotoweb-tabs-active-border-color, currentColor) !important;
	}

	.gotoweb-tabs[data-mobile-tab-layout="scroll"] > .gotoweb-tabs__bar > button[aria-selected="true"],
	.gotoweb-tabs[data-mobile-tab-layout="wrap"] > .gotoweb-tabs__bar > button[aria-selected="true"],
	.gotoweb-tabs[data-tabs-responsive-orientation][data-tabs-orientation-mobile="horizontal"]:not([data-mobile-tab-layout]) > .gotoweb-tabs__bar > button[aria-selected="true"] {
		border-right-width: var(--gotoweb-tabs-inactive-border-width, 0) !important;
		border-right-style: var(--gotoweb-tabs-inactive-border-style, none) !important;
		border-right-color: var(--gotoweb-tabs-inactive-border-color, currentColor) !important;
		border-bottom-width: var(--gotoweb-tabs-active-border-width, 0) !important;
		border-bottom-style: var(--gotoweb-tabs-active-border-style, none) !important;
		border-bottom-color: var(--gotoweb-tabs-active-border-color, currentColor) !important;
	}
}

.gotoweb-modal__trigger {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 16px;
	border: 1px solid var(--gotoweb-ink);
	border-radius: 6px;
	background: var(--gotoweb-ink);
	color: #ffffff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.gw-lightbox-trigger {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	cursor: zoom-in;
}

.gw-lightbox-trigger img {
	display: block;
	width: 100%;
	height: auto;
}

.gw-lightbox {
	position: fixed;
	inset: 0;
	z-index: 100001;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(16, 17, 20, 0.82);
	cursor: zoom-out;
}

.gw-lightbox[hidden] {
	display: none;
}

.gw-lightbox__img {
	max-width: 92vw;
	max-height: 88vh;
	width: auto;
	height: auto;
	border-radius: var(--gotoweb-radius);
	box-shadow: 0 24px 90px rgba(16, 17, 20, 0.5);
	cursor: default;
}

.gw-lightbox__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 40px;
	height: 40px;
	font-size: 24px;
	line-height: 1;
	color: #fff;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.16);
	cursor: pointer;
}

.gw-branding-logo {
	display: inline-flex;
	align-items: center;
}

.gw-branding-logo img {
	max-height: var(--gw-logo-h);
	width: auto;
	height: auto;
}

.gotoweb-modal-open {
	overflow: hidden;
}

.gotoweb-modal__overlay {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: grid;
	place-items: center;
	padding: 24px;
	background: rgba(16, 17, 20, 0.58);
}

.gotoweb-modal__dialog {
	position: relative;
	width: min(620px, 100%);
	padding: 28px;
	border-radius: var(--gotoweb-radius);
	background: var(--gotoweb-paper);
	color: var(--gotoweb-ink);
	box-shadow: 0 24px 90px rgba(16, 17, 20, 0.28);
}

.gotoweb-modal__close {
	position: absolute;
	top: 12px;
	right: 12px;
	width: 32px;
	height: 32px;
	border: 1px solid var(--gotoweb-line);
	border-radius: 999px;
	background: var(--gotoweb-paper);
	cursor: pointer;
}

.gotoweb-slider,
.gotoweb-carousel {
	position: relative;
	overflow: hidden;
}

.gotoweb-slider__slide,
.gotoweb-carousel__slide {
	display: none;
}

.gotoweb-slider__slide.is-active,
.gotoweb-carousel__slide.is-active {
	display: block;
}

.gotoweb-slider__slide img,
.gotoweb-carousel__slide img {
	width: 100%;
	height: auto;
	border-radius: var(--gotoweb-radius);
}

[data-slider-prev],
[data-slider-next],
[data-carousel-prev],
[data-carousel-next] {
	position: absolute;
	top: 50%;
	z-index: 2;
	width: 38px;
	height: 38px;
	border: 1px solid var(--gotoweb-line);
	border-radius: 999px;
	background: var(--gotoweb-paper);
	box-shadow: 0 8px 24px rgba(16, 17, 20, 0.14);
	cursor: pointer;
	transform: translateY(-50%);
}

[data-slider-prev],
[data-carousel-prev] {
	left: 14px;
}

[data-slider-next],
[data-carousel-next] {
	right: 14px;
}

[data-slider-prev]::before,
[data-carousel-prev]::before {
	content: "<";
}

[data-slider-next]::before,
[data-carousel-next]::before {
	content: ">";
}

.gotoweb-slider__dots,
.gotoweb-carousel__dots {
	display: flex;
	justify-content: center;
	gap: 8px;
	margin-top: 12px;
}

.gotoweb-slider__dots button,
.gotoweb-carousel__dots button {
	width: 9px;
	height: 9px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #c8ced8;
	cursor: pointer;
}

.gotoweb-slider__dots button.is-active,
.gotoweb-carousel__dots button.is-active {
	background: var(--gotoweb-accent);
}

.gotoweb-countdown {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.gotoweb-countdown__segment {
	display: grid;
	min-width: 84px;
	padding: 14px;
	border: 1px solid var(--gotoweb-line);
	border-radius: var(--gotoweb-radius);
	background: var(--gotoweb-soft);
	text-align: center;
}

.gotoweb-countdown__segment strong {
	font-size: 30px;
	line-height: 1;
}

.gotoweb-countdown__segment small {
	margin-top: 6px;
	color: var(--gotoweb-muted);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

[data-gotoweb-counter] strong {
	font-size: inherit;
	font-variant-numeric: tabular-nums;
}

.gotoweb-marquee {
	--gotoweb-marquee-duration: 24s;
	--gotoweb-marquee-direction: normal;
	overflow: hidden;
	width: 100%;
}

.gotoweb-marquee__track {
	display: flex;
	width: max-content;
	animation: gotoweb-marquee var(--gotoweb-marquee-duration) linear infinite;
	animation-direction: var(--gotoweb-marquee-direction);
	will-change: transform;
}

.gotoweb-marquee:hover .gotoweb-marquee__track {
	animation-play-state: paused;
}

.gotoweb-marquee__group {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 18px;
	padding-right: 18px;
	white-space: nowrap;
}

.gotoweb-marquee__item {
	display: inline-flex;
	align-items: center;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.gotoweb-marquee__separator {
	opacity: 0.35;
}

.gotoweb-hover-panels {
	--gotoweb-hover-panels-height: 520px;
	--gotoweb-hover-panels-gap: 14px;
	--gotoweb-hover-panels-panel-padding: 24px;
	--gotoweb-hover-panels-panel-radius: var(--gotoweb-radius);
	--gotoweb-hover-panels-panel-bg: #111318;
	--gotoweb-hover-panels-panel-color: #ffffff;
	--gotoweb-hover-panels-overlay-start: rgba(16, 17, 20, 0.04);
	--gotoweb-hover-panels-overlay-end: rgba(16, 17, 20, 0.72);
	--gotoweb-hover-panels-overlay-opacity: 1;
	--gotoweb-hover-panels-eyebrow-color: rgba(255, 255, 255, 0.75);
	--gotoweb-hover-panels-eyebrow-font-size: 11px;
	--gotoweb-hover-panels-eyebrow-font-weight: 850;
	--gotoweb-hover-panels-eyebrow-letter-spacing: 0.1em;
	--gotoweb-hover-panels-eyebrow-text-transform: uppercase;
	--gotoweb-hover-panels-title-color: currentColor;
	--gotoweb-hover-panels-title-font-size: clamp(24px, 4vw, 54px);
	--gotoweb-hover-panels-title-line-height: 0.95;
	--gotoweb-hover-panels-text-color: rgba(255, 255, 255, 0.78);
	--gotoweb-hover-panels-text-font-size: inherit;
	--gotoweb-hover-panels-text-line-height: 1.5;
	--gotoweb-hover-panels-text-max-width: 36ch;
	--gotoweb-hover-panels-mobile-panel-min-height: 320px;
	display: flex;
	gap: var(--gotoweb-hover-panels-gap);
	min-height: var(--gotoweb-hover-panels-height);
}

.gotoweb-hover-panels__panel {
	position: relative;
	isolation: isolate;
	display: flex;
	flex: 1 1 0;
	align-items: flex-end;
	overflow: hidden;
	min-width: 0;
	padding: var(--gotoweb-hover-panels-panel-padding);
	border-radius: var(--gotoweb-hover-panels-panel-radius);
	background-color: var(--gotoweb-hover-panels-panel-bg);
	background-position: center;
	background-size: cover;
	color: var(--gotoweb-hover-panels-panel-color);
	transition: flex 520ms cubic-bezier(0.16, 1, 0.3, 1), transform 520ms cubic-bezier(0.16, 1, 0.3, 1);
}

.gotoweb-hover-panels__panel::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(180deg, var(--gotoweb-hover-panels-overlay-start), var(--gotoweb-hover-panels-overlay-end));
	opacity: var(--gotoweb-hover-panels-overlay-opacity);
}

.gotoweb-hover-panels__panel:hover,
.gotoweb-hover-panels__panel:focus-within {
	flex: 3 1 0;
}

.gotoweb-hover-panels__panel span {
	display: block;
	margin-bottom: 8px;
	color: var(--gotoweb-hover-panels-eyebrow-color);
	font-size: var(--gotoweb-hover-panels-eyebrow-font-size);
	font-weight: var(--gotoweb-hover-panels-eyebrow-font-weight);
	letter-spacing: var(--gotoweb-hover-panels-eyebrow-letter-spacing);
	text-transform: var(--gotoweb-hover-panels-eyebrow-text-transform);
}

.gotoweb-hover-panels__panel h3 {
	margin: 0;
	color: var(--gotoweb-hover-panels-title-color);
	font-size: var(--gotoweb-hover-panels-title-font-size);
	line-height: var(--gotoweb-hover-panels-title-line-height);
}

.gotoweb-hover-panels__panel p {
	max-width: var(--gotoweb-hover-panels-text-max-width);
	margin: 12px 0 0;
	color: var(--gotoweb-hover-panels-text-color);
	font-size: var(--gotoweb-hover-panels-text-font-size);
	line-height: var(--gotoweb-hover-panels-text-line-height);
}

.gotoweb-decorative-shape {
	--gotoweb-shape-width: 240px;
	--gotoweb-shape-height: 240px;
	--gotoweb-shape-color: #d7ff4f;
	--gotoweb-shape-opacity: 0.38;
	--gotoweb-shape-blur: 36px;
	pointer-events: none;
	width: var(--gotoweb-shape-width);
	height: var(--gotoweb-shape-height);
	background: var(--gotoweb-shape-color);
	opacity: var(--gotoweb-shape-opacity);
	filter: blur(var(--gotoweb-shape-blur));
}

.gotoweb-decorative-shape--blob {
	border-radius: 42% 58% 61% 39% / 38% 42% 58% 62%;
}

.gotoweb-decorative-shape--circle {
	border-radius: 999px;
}

.gotoweb-decorative-shape--rounded {
	border-radius: 28px;
}

.gotoweb-decorative-shape--line {
	height: 1px;
	filter: none;
}

.gotoweb-decorative-shape--grain {
	inset: 0;
	width: 100%;
	height: 100%;
	background-color: transparent;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.32'/%3E%3C/svg%3E");
	background-size: 160px 160px;
	filter: none;
	mix-blend-mode: multiply;
}

.gotoweb-decorative-shape--float {
	animation: gotoweb-shape-float 8s ease-in-out infinite alternate;
}

.gotoweb-decorative-shape--pulse {
	animation: gotoweb-shape-pulse 3.6s ease-in-out infinite;
}

.gotoweb-decorative-shape--scan {
	transform-origin: center;
	animation: gotoweb-shape-scan 2.8s linear infinite;
}

.gotoweb-reveal,
[data-gotoweb-reveal] {
	opacity: 0;
	transform: translate3d(0, 24px, 0);
	transition: opacity 700ms cubic-bezier(0.16, 1, 0.3, 1), transform 700ms cubic-bezier(0.16, 1, 0.3, 1);
}

.gotoweb-reveal.is-visible,
[data-gotoweb-reveal].is-visible {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

.gotoweb-magnetic,
[data-gotoweb-magnetic] {
	transform: translate3d(var(--gotoweb-magnetic-x, 0), var(--gotoweb-magnetic-y, 0), 0);
	transition: transform 420ms cubic-bezier(0.16, 1, 0.3, 1);
	will-change: transform;
}

@keyframes gotoweb-marquee {
	from {
		transform: translate3d(0, 0, 0);
	}

	to {
		transform: translate3d(-50%, 0, 0);
	}
}

@keyframes gotoweb-shape-float {
	from {
		transform: translate3d(0, 0, 0) rotate(0deg);
	}

	to {
		transform: translate3d(18px, -22px, 0) rotate(9deg);
	}
}

@keyframes gotoweb-shape-pulse {
	0%,
	100% {
		transform: scale(1);
	}

	50% {
		transform: scale(1.08);
	}
}

@keyframes gotoweb-shape-scan {
	from {
		transform: translateX(-18%);
	}

	to {
		transform: translateX(18%);
	}
}

@media (max-width: 700px) {
	.gotoweb-search-form {
		grid-template-columns: 1fr;
	}

	.gotoweb-posts-grid {
		grid-template-columns: 1fr !important;
	}

	.gotoweb-hover-panels {
		display: grid;
		min-height: 0;
	}

	.gotoweb-hover-panels__panel {
		min-height: var(--gotoweb-hover-panels-mobile-panel-min-height);
	}
}

@media (prefers-reduced-motion: reduce) {
	.gotoweb-marquee__track,
	.gotoweb-decorative-shape,
	.gotoweb-reveal,
	[data-gotoweb-reveal],
	.gotoweb-magnetic,
	[data-gotoweb-magnetic] {
		animation: none;
		transition: none;
	}

	.gotoweb-reveal,
	[data-gotoweb-reveal] {
		opacity: 1;
		transform: none;
	}
}


/* ===== Monteby custom widgets ===== */
@keyframes gw-marquee-scroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
.gw-marquee { padding-top: 7px; padding-bottom: 7px; }
.gw-marquee:hover .gw-marquee-track { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
  .gw-marquee-track { animation: none !important; }
}

/* FlipBox: CSS-only two-sided hover/focus-within flip card. The renderer emits
   --gotoweb-flip-box-* custom properties (face colors, radius, padding, the flip
   transform per direction); these rules turn them into a 3D flip with no JS. */
.gotoweb-flip-box {
  perspective: 1000px;
  min-height: var(--gotoweb-flip-box-min-height, 320px);
  position: relative;
}
.gotoweb-flip-box__inner {
  position: relative;
  width: 100%;
  min-height: inherit;
  transition: transform 0.6s;
  transform-style: preserve-3d;
}
.gotoweb-flip-box:hover .gotoweb-flip-box__inner,
.gotoweb-flip-box:focus-within .gotoweb-flip-box__inner {
  transform: var(--gotoweb-flip-box-transform, rotateY(180deg));
}
.gotoweb-flip-box__face {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  padding: var(--gotoweb-flip-box-padding, 24px);
  border-radius: var(--gotoweb-flip-box-radius, 12px);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  overflow: hidden;
}
.gotoweb-flip-box__front {
  background: var(--gotoweb-flip-box-front-bg, #111318);
  color: var(--gotoweb-flip-box-front-color, #ffffff);
}
.gotoweb-flip-box__back {
  background: var(--gotoweb-flip-box-back-bg, #3b82f6);
  color: var(--gotoweb-flip-box-back-color, #ffffff);
  transform: var(--gotoweb-flip-box-back-transform, rotateY(180deg));
}
.gotoweb-flip-box__heading {
  margin: 0;
  font-size: var(--gotoweb-flip-box-heading-font-size, 22px);
  line-height: 1.2;
}
.gotoweb-flip-box__text {
  margin: 0;
  font-size: var(--gotoweb-flip-box-text-font-size, 15px);
  line-height: 1.5;
}
.gotoweb-flip-box__button {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  padding: 0.5em 1.1em;
  border-radius: 9999px;
  text-decoration: none;
  font-weight: 600;
  background: var(--gotoweb-flip-box-btn-bg, #ffffff);
  color: var(--gotoweb-flip-box-btn-color, #111318);
}
@media (prefers-reduced-motion: reduce) {
  .gotoweb-flip-box__inner { transition: none !important; }
}

/* AnimatedHeadline: CSS-only rotating phrases. Each phrase span shares one
   keyframe (gw-anim-headline-rotate) and is offset by an inline animation-delay
   (= slot * index) emitted by the renderer; inline-grid stacks every phrase in a
   single grid cell so the box is as wide/tall as the longest phrase and layout
   never jumps. No runtime JS. */
@keyframes gw-anim-headline-rotate {
  0%   { opacity: 0; }
  4%   { opacity: 1; }
  28%  { opacity: 1; }
  33%  { opacity: 0; }
  100% { opacity: 0; }
}
.gw-anim-headline { display: inline-block; }
.gw-anim-rotator > .gw-anim-phrase { grid-area: 1 / 1; opacity: 0; white-space: nowrap; }
.gw-anim-rotator[data-anim="slide-up"]   > .gw-anim-phrase { transform: translateY(0.25em); }
.gw-anim-rotator[data-anim="slide-down"] > .gw-anim-phrase { transform: translateY(-0.25em); }
@media (prefers-reduced-motion: reduce) {
  .gw-anim-rotator > .gw-anim-phrase { animation: none !important; }
  .gw-anim-rotator > .gw-anim-phrase:not(:first-child) { display: none; }
  .gw-anim-rotator > .gw-anim-phrase:first-child { opacity: 1; }
}

/* ===== gotoweb_menu shortcode (header + footer) =====
   Structural / layout only. Every user-configurable value (link colour, font
   size, hover/active colour, gap, dropdown, burger, drawer, mobile items) is
   wired per-instance by the WPMenu renderer's scoped <style> via --gwm-* custom
   properties, so nothing here may hardcode a colour/size that would override it. */
.gotoweb-menu { margin: 0; padding: 0; list-style: none; }
.gotoweb-menu ul { margin: 0; padding: 0; list-style: none; }
.gotoweb-menu--horizontal {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 4px;
}
.gotoweb-menu--horizontal li { display: inline-flex; }
.gotoweb-menu--horizontal a {
  display: inline-flex; align-items: center;
  white-space: nowrap;
  text-decoration: none;
}

.gotoweb-menu--vertical {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.gotoweb-menu--vertical li { display: block; }
.gotoweb-menu--vertical a {
  display: block;
  text-decoration: none;
}

@media (min-width: 901px) {
  .gotoweb-responsive-display--show-tablet-down-only {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .gotoweb-responsive-display--show-mobile-only {
    display: none !important;
  }
}

.gotoweb-navbar--drawer .gotoweb-navbar__toggle {
  display: none;
  cursor: pointer;
}

.gotoweb-navbar.gotoweb-navbar--drawer .gotoweb-navbar__drawer[hidden] {
  display: none !important;
}

.gotoweb-navbar__cta {
  box-sizing: border-box;
}

.gotoweb-navbar__cta-label {
  display: inline;
}

.gotoweb-navbar__cta-icon {
  display: none;
  align-items: center;
  justify-content: center;
  font-size: 1.25em;
  line-height: 1;
}

.gotoweb-navbar__cta[data-cta-mode="label"] {
  display: inline-flex !important;
  width: auto !important;
  height: auto !important;
  padding: var(--gotoweb-navbar-cta-padding-y, 8px) var(--gotoweb-navbar-cta-padding-x, 16px) !important;
}

.gotoweb-navbar__cta[data-cta-mode="label"] .gotoweb-navbar__cta-label {
  display: inline;
}

.gotoweb-navbar__cta[data-cta-mode="label"] .gotoweb-navbar__cta-icon {
  display: none;
}

.gotoweb-navbar__cta[data-cta-mode="icon"] {
  display: inline-flex !important;
  width: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
  height: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
  padding: 0 !important;
}

.gotoweb-navbar__cta[data-cta-mode="icon"] .gotoweb-navbar__cta-label {
  display: none;
}

.gotoweb-navbar__cta[data-cta-mode="icon"] .gotoweb-navbar__cta-icon {
  display: inline-flex;
}

.gotoweb-navbar__cta[data-cta-mode="hidden"] {
  display: none !important;
}

@media (max-width: 1023px) {
  .gotoweb-navbar--mobile-menu-hidden-wide .gotoweb-navbar__menu {
    display: none !important;
  }

  .gotoweb-navbar--mobile-menu-hidden-wide .gotoweb-navbar__inner {
    flex-wrap: nowrap !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-wide .gotoweb-navbar__toggle {
    display: inline-flex !important;
    margin-left: auto;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-wide .gotoweb-navbar__drawer {
    width: 100% !important;
    flex: 1 0 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-wide .gotoweb-navbar__menu {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-wide .gotoweb-navbar__actions {
    width: 100% !important;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .gotoweb-image-height--responsive {
    height: var(--gotoweb-image-height-tablet, var(--gotoweb-image-height-base, auto)) !important;
  }

  .gotoweb-image-object-position--responsive {
    object-position: var(--gotoweb-image-object-position-x-tablet, var(--gotoweb-image-object-position-x-base, 50%)) var(--gotoweb-image-object-position-y-tablet, var(--gotoweb-image-object-position-y-base, 50%)) !important;
  }
}

@media (max-width: 900px) {
	.gotoweb-navbar__cta[data-cta-mode-tablet="label"] {
		display: inline-flex !important;
		width: auto !important;
		height: auto !important;
		padding: var(--gotoweb-navbar-cta-padding-y, 8px) var(--gotoweb-navbar-cta-padding-x, 16px) !important;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="label"] .gotoweb-navbar__cta-label {
		display: inline;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="label"] .gotoweb-navbar__cta-icon {
		display: none;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="icon"] {
		display: inline-flex !important;
		width: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
		height: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
		padding: 0 !important;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="icon"] .gotoweb-navbar__cta-label {
		display: none;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="icon"] .gotoweb-navbar__cta-icon {
		display: inline-flex;
	}

	.gotoweb-navbar__cta[data-cta-mode-tablet="hidden"] {
		display: none !important;
	}

  .gotoweb-layout--stack-tablet {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    grid-template-columns: 1fr !important;
  }

  .gotoweb-layout--stack-tablet > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }

  .gotoweb-navbar--mobile-menu-hidden-tablet .gotoweb-navbar__menu {
    display: none !important;
  }

  .gotoweb-navbar--mobile-menu-hidden-tablet .gotoweb-navbar__inner {
    flex-wrap: nowrap !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-tablet .gotoweb-navbar__toggle {
    display: inline-flex !important;
    margin-left: auto;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-tablet .gotoweb-navbar__drawer {
    width: 100% !important;
    flex: 1 0 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-tablet .gotoweb-navbar__menu {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer-tablet .gotoweb-navbar__actions {
    width: 100% !important;
  }

  .gotoweb-responsive-display--hide-tablet-down {
    display: none !important;
  }

  .gotoweb-visual-tilt--reset-tablet {
    transform: none !important;
  }

  .gotoweb-sticky--reset-tablet {
    position: static !important;
    top: auto !important;
  }

  .gotoweb-min-height--responsive {
    min-height: var(--gotoweb-min-height-tablet) !important;
  }

  .gotoweb-background-position--responsive {
    background-position: var(--gotoweb-background-position-x-tablet, var(--gotoweb-background-position-x-base)) var(--gotoweb-background-position-y-tablet, var(--gotoweb-background-position-y-base)) !important;
  }

  .gotoweb-max-width--responsive {
    max-width: var(--gotoweb-max-width-tablet, var(--gotoweb-max-width-base, none)) !important;
  }

  .gotoweb-flex--responsive {
    flex-direction: var(--gotoweb-flex-direction-tablet, var(--gotoweb-flex-direction-base)) !important;
    flex-wrap: var(--gotoweb-flex-wrap-tablet, var(--gotoweb-flex-wrap-base)) !important;
    justify-content: var(--gotoweb-justify-content-tablet, var(--gotoweb-justify-content-base)) !important;
    align-items: var(--gotoweb-align-items-tablet, var(--gotoweb-align-items-base)) !important;
  }

  .gotoweb-border-width--responsive {
    border-top-width: var(--gotoweb-border-top-width-tablet, var(--gotoweb-border-top-width-base, 0)) !important;
    border-right-width: var(--gotoweb-border-right-width-tablet, var(--gotoweb-border-right-width-base, 0)) !important;
    border-bottom-width: var(--gotoweb-border-bottom-width-tablet, var(--gotoweb-border-bottom-width-base, 0)) !important;
    border-left-width: var(--gotoweb-border-left-width-tablet, var(--gotoweb-border-left-width-base, 0)) !important;
  }

  .gotoweb-grid-template-columns--responsive {
    grid-template-columns: var(--gotoweb-grid-template-columns-tablet, var(--gotoweb-grid-template-columns-base)) !important;
  }

  .gotoweb-testimonials-track--responsive {
    width: var(--gotoweb-testimonials-track-width-tablet, var(--gotoweb-testimonials-track-width-base)) !important;
  }

  .gotoweb-grid-column-start--responsive {
    grid-column-start: var(--gotoweb-grid-column-start-tablet, var(--gotoweb-grid-column-start-base)) !important;
  }

  .gotoweb-grid-column-span--responsive {
    grid-column-end: var(--gotoweb-grid-column-span-tablet, var(--gotoweb-grid-column-span-base)) !important;
  }

  .gotoweb-grid-row-start--responsive {
    grid-row-start: var(--gotoweb-grid-row-start-tablet, var(--gotoweb-grid-row-start-base)) !important;
  }

  .gotoweb-grid-row-span--responsive {
    grid-row-end: var(--gotoweb-grid-row-span-tablet, var(--gotoweb-grid-row-span-base)) !important;
  }

  .gotoweb-spacing--responsive {
    gap: var(--gotoweb-gap-tablet, var(--gotoweb-gap-base)) !important;
    padding-top: var(--gotoweb-padding-top-tablet, var(--gotoweb-padding-top-base)) !important;
    padding-right: var(--gotoweb-padding-right-tablet, var(--gotoweb-padding-right-base)) !important;
    padding-bottom: var(--gotoweb-padding-bottom-tablet, var(--gotoweb-padding-bottom-base)) !important;
    padding-left: var(--gotoweb-padding-left-tablet, var(--gotoweb-padding-left-base)) !important;
    margin-top: var(--gotoweb-margin-top-tablet, var(--gotoweb-margin-top-base)) !important;
    margin-bottom: var(--gotoweb-margin-bottom-tablet, var(--gotoweb-margin-bottom-base)) !important;
  }

  .gotoweb-gap--responsive {
    gap: var(--gotoweb-gap-tablet, var(--gotoweb-gap-base)) !important;
  }

  .gotoweb-padding-top--responsive {
    padding-top: var(--gotoweb-padding-top-tablet, var(--gotoweb-padding-top-base)) !important;
  }

  .gotoweb-padding-right--responsive {
    padding-right: var(--gotoweb-padding-right-tablet, var(--gotoweb-padding-right-base)) !important;
  }

  .gotoweb-padding-bottom--responsive {
    padding-bottom: var(--gotoweb-padding-bottom-tablet, var(--gotoweb-padding-bottom-base)) !important;
  }

  .gotoweb-padding-left--responsive {
    padding-left: var(--gotoweb-padding-left-tablet, var(--gotoweb-padding-left-base)) !important;
  }

  .gotoweb-margin-top--responsive {
    margin-top: var(--gotoweb-margin-top-tablet, var(--gotoweb-margin-top-base)) !important;
  }

  .gotoweb-margin-bottom--responsive {
    margin-bottom: var(--gotoweb-margin-bottom-tablet, var(--gotoweb-margin-bottom-base)) !important;
  }

  .gotoweb-margin-left--responsive {
    margin-left: var(--gotoweb-margin-left-tablet, var(--gotoweb-margin-left-base)) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-font-size--responsive {
    font-size: var(--gotoweb-font-size-tablet) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-line-height--responsive {
    line-height: var(--gotoweb-line-height-tablet) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-letter-spacing--responsive {
    letter-spacing: var(--gotoweb-letter-spacing-tablet) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-text-align--responsive {
    text-align: var(--gotoweb-text-align-tablet) !important;
  }
}

@media (max-width: 767px) {
	.gotoweb-navbar__cta[data-cta-mode-mobile="label"] {
		display: inline-flex !important;
		width: auto !important;
		height: auto !important;
		padding: var(--gotoweb-navbar-cta-padding-y, 8px) var(--gotoweb-navbar-cta-padding-x, 16px) !important;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="label"] .gotoweb-navbar__cta-label {
		display: inline;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="label"] .gotoweb-navbar__cta-icon {
		display: none;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="icon"] {
		display: inline-flex !important;
		width: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
		height: var(--gotoweb-navbar-cta-compact-size, 44px) !important;
		padding: 0 !important;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="icon"] .gotoweb-navbar__cta-label {
		display: none;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="icon"] .gotoweb-navbar__cta-icon {
		display: inline-flex;
	}

	.gotoweb-navbar__cta[data-cta-mode-mobile="hidden"] {
		display: none !important;
	}

  .gotoweb-layout--stack-mobile {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    grid-template-columns: 1fr !important;
  }

  .gotoweb-layout--stack-mobile > * {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex-basis: auto !important;
  }

  .gotoweb-navbar--mobile-menu-hidden .gotoweb-navbar__menu {
    display: none !important;
  }

  .gotoweb-navbar--mobile-menu-hidden .gotoweb-navbar__inner {
    flex-wrap: nowrap !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer .gotoweb-navbar__toggle {
    display: inline-flex !important;
    margin-left: auto;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer .gotoweb-navbar__drawer {
    width: 100% !important;
    flex: 1 0 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer .gotoweb-navbar__menu {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .gotoweb-navbar--enhanced.gotoweb-navbar--drawer .gotoweb-navbar__actions {
    width: 100% !important;
  }

  .gotoweb-responsive-display--hide-mobile {
    display: none !important;
  }

  .gotoweb-visual-tilt--reset-mobile {
    transform: none !important;
  }

  .gotoweb-sticky--reset-mobile {
    position: static !important;
    top: auto !important;
  }

  .gotoweb-min-height--responsive {
    min-height: var(--gotoweb-min-height-mobile, var(--gotoweb-min-height-tablet)) !important;
  }

  .gotoweb-background-position--responsive {
    background-position: var(--gotoweb-background-position-x-mobile, var(--gotoweb-background-position-x-tablet, var(--gotoweb-background-position-x-base))) var(--gotoweb-background-position-y-mobile, var(--gotoweb-background-position-y-tablet, var(--gotoweb-background-position-y-base))) !important;
  }

  .gotoweb-image-height--responsive {
    height: var(--gotoweb-image-height-mobile, var(--gotoweb-image-height-tablet, var(--gotoweb-image-height-base, auto))) !important;
  }

  .gotoweb-image-object-position--responsive {
    object-position: var(--gotoweb-image-object-position-x-mobile, var(--gotoweb-image-object-position-x-tablet, var(--gotoweb-image-object-position-x-base, 50%))) var(--gotoweb-image-object-position-y-mobile, var(--gotoweb-image-object-position-y-tablet, var(--gotoweb-image-object-position-y-base, 50%))) !important;
  }

  .gotoweb-max-width--responsive {
    max-width: var(--gotoweb-max-width-mobile, var(--gotoweb-max-width-tablet, var(--gotoweb-max-width-base, none))) !important;
  }

  .gotoweb-flex--responsive {
    flex-direction: var(--gotoweb-flex-direction-mobile, var(--gotoweb-flex-direction-tablet, var(--gotoweb-flex-direction-base))) !important;
    flex-wrap: var(--gotoweb-flex-wrap-mobile, var(--gotoweb-flex-wrap-tablet, var(--gotoweb-flex-wrap-base))) !important;
    justify-content: var(--gotoweb-justify-content-mobile, var(--gotoweb-justify-content-tablet, var(--gotoweb-justify-content-base))) !important;
    align-items: var(--gotoweb-align-items-mobile, var(--gotoweb-align-items-tablet, var(--gotoweb-align-items-base))) !important;
  }

  .gotoweb-border-width--responsive {
    border-top-width: var(--gotoweb-border-top-width-mobile, var(--gotoweb-border-top-width-tablet, var(--gotoweb-border-top-width-base, 0))) !important;
    border-right-width: var(--gotoweb-border-right-width-mobile, var(--gotoweb-border-right-width-tablet, var(--gotoweb-border-right-width-base, 0))) !important;
    border-bottom-width: var(--gotoweb-border-bottom-width-mobile, var(--gotoweb-border-bottom-width-tablet, var(--gotoweb-border-bottom-width-base, 0))) !important;
    border-left-width: var(--gotoweb-border-left-width-mobile, var(--gotoweb-border-left-width-tablet, var(--gotoweb-border-left-width-base, 0))) !important;
  }

  .gotoweb-grid-template-columns--responsive {
    grid-template-columns: var(--gotoweb-grid-template-columns-mobile, var(--gotoweb-grid-template-columns-tablet, var(--gotoweb-grid-template-columns-base))) !important;
  }

  .gotoweb-testimonials-track--responsive {
    width: var(--gotoweb-testimonials-track-width-mobile, var(--gotoweb-testimonials-track-width-tablet, var(--gotoweb-testimonials-track-width-base))) !important;
  }

  .gotoweb-grid-column-start--responsive {
    grid-column-start: var(--gotoweb-grid-column-start-mobile, var(--gotoweb-grid-column-start-tablet, var(--gotoweb-grid-column-start-base))) !important;
  }

  .gotoweb-grid-column-span--responsive {
    grid-column-end: var(--gotoweb-grid-column-span-mobile, var(--gotoweb-grid-column-span-tablet, var(--gotoweb-grid-column-span-base))) !important;
  }

  .gotoweb-grid-row-start--responsive {
    grid-row-start: var(--gotoweb-grid-row-start-mobile, var(--gotoweb-grid-row-start-tablet, var(--gotoweb-grid-row-start-base))) !important;
  }

  .gotoweb-grid-row-span--responsive {
    grid-row-end: var(--gotoweb-grid-row-span-mobile, var(--gotoweb-grid-row-span-tablet, var(--gotoweb-grid-row-span-base))) !important;
  }

  .gotoweb-spacing--responsive {
    gap: var(--gotoweb-gap-mobile, var(--gotoweb-gap-tablet, var(--gotoweb-gap-base))) !important;
    padding-top: var(--gotoweb-padding-top-mobile, var(--gotoweb-padding-top-tablet, var(--gotoweb-padding-top-base))) !important;
    padding-right: var(--gotoweb-padding-right-mobile, var(--gotoweb-padding-right-tablet, var(--gotoweb-padding-right-base))) !important;
    padding-bottom: var(--gotoweb-padding-bottom-mobile, var(--gotoweb-padding-bottom-tablet, var(--gotoweb-padding-bottom-base))) !important;
    padding-left: var(--gotoweb-padding-left-mobile, var(--gotoweb-padding-left-tablet, var(--gotoweb-padding-left-base))) !important;
    margin-top: var(--gotoweb-margin-top-mobile, var(--gotoweb-margin-top-tablet, var(--gotoweb-margin-top-base))) !important;
    margin-bottom: var(--gotoweb-margin-bottom-mobile, var(--gotoweb-margin-bottom-tablet, var(--gotoweb-margin-bottom-base))) !important;
  }

  .gotoweb-gap--responsive {
    gap: var(--gotoweb-gap-mobile, var(--gotoweb-gap-tablet, var(--gotoweb-gap-base))) !important;
  }

  .gotoweb-padding-top--responsive {
    padding-top: var(--gotoweb-padding-top-mobile, var(--gotoweb-padding-top-tablet, var(--gotoweb-padding-top-base))) !important;
  }

  .gotoweb-padding-right--responsive {
    padding-right: var(--gotoweb-padding-right-mobile, var(--gotoweb-padding-right-tablet, var(--gotoweb-padding-right-base))) !important;
  }

  .gotoweb-padding-bottom--responsive {
    padding-bottom: var(--gotoweb-padding-bottom-mobile, var(--gotoweb-padding-bottom-tablet, var(--gotoweb-padding-bottom-base))) !important;
  }

  .gotoweb-padding-left--responsive {
    padding-left: var(--gotoweb-padding-left-mobile, var(--gotoweb-padding-left-tablet, var(--gotoweb-padding-left-base))) !important;
  }

  .gotoweb-margin-top--responsive {
    margin-top: var(--gotoweb-margin-top-mobile, var(--gotoweb-margin-top-tablet, var(--gotoweb-margin-top-base))) !important;
  }

  .gotoweb-margin-bottom--responsive {
    margin-bottom: var(--gotoweb-margin-bottom-mobile, var(--gotoweb-margin-bottom-tablet, var(--gotoweb-margin-bottom-base))) !important;
  }

  .gotoweb-margin-left--responsive {
    margin-left: var(--gotoweb-margin-left-mobile, var(--gotoweb-margin-left-tablet, var(--gotoweb-margin-left-base))) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-font-size--responsive {
    font-size: var(--gotoweb-font-size-mobile, var(--gotoweb-font-size-tablet)) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-line-height--responsive {
    line-height: var(--gotoweb-line-height-mobile, var(--gotoweb-line-height-tablet)) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-letter-spacing--responsive {
    letter-spacing: var(--gotoweb-letter-spacing-mobile, var(--gotoweb-letter-spacing-tablet)) !important;
  }

  .gotoweb-typography--responsive,
  .gotoweb-text-align--responsive {
    text-align: var(--gotoweb-text-align-mobile, var(--gotoweb-text-align-tablet)) !important;
  }
}

/* Hero aurora gradient — promienisty pastel */
.gw-hero-aurora {
  background:
    radial-gradient(60% 50% at 8% 12%, rgba(255,176,140,.55) 0%, transparent 60%),
    radial-gradient(45% 35% at 92% 8%, rgba(193,210,255,.7) 0%, transparent 60%),
    radial-gradient(55% 45% at 75% 78%, rgba(213,193,255,.55) 0%, transparent 60%),
    radial-gradient(40% 30% at 12% 88%, rgba(255,206,184,.5) 0%, transparent 60%),
    #fbf8f4 !important;
}
.gw-hero-aurora-soft {
  background:
    radial-gradient(60% 60% at 0% 0%, rgba(255,176,140,.35) 0%, transparent 55%),
    radial-gradient(50% 50% at 100% 100%, rgba(193,210,255,.55) 0%, transparent 55%),
    #fbf8f4 !important;
}

/* Material Symbols (Rounded) — icon font for Button/Icon widgets. Renders any
   icon by its name via the ligature; works in editor AND on the front. */
.material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  vertical-align: middle;
  font-variation-settings: 'FILL' 0, 'wght' 500, 'GRAD' 0, 'opsz' 24;
}

/* Floating header nav with glassmorphism. */
.gw-floating-nav {
  background: rgba(251,248,244,.85) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(31,29,27,.05);
  border-radius: 9999px;
  box-shadow: 0 1px 2px rgba(31,29,27,.04), 0 8px 24px -8px rgba(31,29,27,.10);
}

/* Search shell tabs row hides native scrollbars. */
.gw-search-shell > div:first-child { scrollbar-width: none; -ms-overflow-style: none; }
.gw-search-shell > div:first-child::-webkit-scrollbar { display: none; }

/* ===== Hero dashboard decor =====
 * ImageBlock compiler ouputs <figure class="gw-hero-decor"><img class="gw-hero-decor ...">
 * The duplicate `.gw-hero-decor` on the inner <img> would also make it absolute, so we
 * scope position rules to figure.gw-hero-decor (tag selector) and force the inner img
 * to fill its parent normally.
 */
@media (min-width: 1280px) {
  figure.gw-hero-decor {
    position: absolute;
    top: 11rem;
    right: 0;
    width: 42%;
    max-width: 680px;
    pointer-events: none;
    z-index: 1;
    margin: 0;
    transform: rotate(2deg);
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);
    border: 1px solid rgba(31,29,27,0.05);
  }
  figure.gw-hero-decor > img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    top: auto !important;
    right: auto !important;
    transform: none !important;
    border-radius: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }
}
@media (max-width: 1279px) {
  figure.gw-hero-decor { display: none; }
}
/* Hero dashboard WRAPPER box (allows an absolute badge overlay as a child,
   like the mock's .relative wrapper). Positions the box; inner figure/img static. */
.gw-hero-box { display: none; }
@media (min-width: 1280px) {
  .gw-hero-box {
    display: block;
    position: absolute;
    top: 11rem;
    right: 0;
    width: 42%;
    max-width: 680px;
    z-index: 1;
  }
  /* Soft aurora glow behind the dashboard (mock: -inset-10 gradient blur-3xl rounded-[60%]) */
  .gw-hero-box::before {
    content: "";
    position: absolute;
    inset: -2.5rem;
    background: linear-gradient(to bottom right, rgba(255,77,26,.2) 0%, rgba(196,181,253,.15) 50%, rgba(125,211,252,.2) 100%);
    filter: blur(64px);
    border-radius: 60%;
    z-index: 0;
    pointer-events: none;
  }
  /* No z-index here: natural paint order is ::before(glow) < figure(img) < badge.
     Adding z-index would lift the img above the absolute badge and hide it. */
  .gw-hero-box > figure { position: relative; margin: 0 !important; width: 100% !important; }
  .gw-hero-box figure > img {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }
}
.gw-hero-decor::before {
  content: "";
  position: absolute;
  inset: -2.5rem;
  background:
    radial-gradient(40% 40% at 30% 30%, rgba(255,77,26,.18) 0%, transparent 60%),
    radial-gradient(35% 35% at 70% 70%, rgba(135,108,255,.15) 0%, transparent 60%);
  filter: blur(40px);
  border-radius: 60%;
  z-index: 0;
}
.gw-hero-decor-img {
  position: relative;
  width: 100%;
  height: auto;
  border-radius: 28px;
  box-shadow: 0 1px 2px rgba(31,29,27,.06), 0 30px 60px -30px rgba(31,29,27,.18);
  border: 1px solid rgba(255,255,255,.4);
  transform: rotate(-2deg);
  transform-origin: top right;
}
.gw-hero-decor-pill {
  position: absolute;
  bottom: -1.5rem;
  left: -1.5rem;
  background: rgba(251,248,244,.95);
  backdrop-filter: blur(4px);
  border-radius: 1rem;
  box-shadow: 0 1px 2px rgba(31,29,27,.06), 0 30px 60px -30px rgba(31,29,27,.18);
  border: 1px solid rgba(31,29,27,.05);
  padding: 12px 20px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  transform: rotate(1deg);
  font-family: 'Bricolage Grotesque', system-ui, sans-serif;
  font-size: 14px;
}
.gw-hero-decor-pill__icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; border-radius: 12px;
  background: #d1fae5; color: #047857; font-weight: 700; font-size: 16px;
}
.gw-hero-decor-pill__label {
  font-size: 10px; text-transform: uppercase; letter-spacing: 0.05em;
  color: #6b6661; font-weight: 600;
}
.gw-hero-decor-pill__value {
  font-size: 20px; font-weight: 700; color: #1f1d1b; line-height: 1;
}

/* Hero dashboard column (flex right side, NOT absolute — renders the same in the
   Craft editor and on the frontend). Only adds the soft aurora glow behind the
   image; positioning is plain flex via the node className. */
.gw-hero-glow { isolation: isolate; }
.gw-hero-glow > figure { margin: 0; width: 100%; }
.gw-hero-glow::before {
  content: "";
  position: absolute;
  inset: -2.5rem;
  background: linear-gradient(to bottom right, rgba(255,77,26,.2) 0%, rgba(196,181,253,.15) 50%, rgba(125,211,252,.2) 100%);
  filter: blur(64px);
  border-radius: 60%;
  z-index: -1;
  pointer-events: none;
}

/* Hero section anchors absolute decor elements. */
.gw-hero-aurora { position: relative; overflow: visible; }

/* StatsGrid mockup style: white cards, subtle border, and separators. */
.gw-stats-grid {
  display: grid !important;
  gap: 1px !important;
  background: rgba(31,29,27,.10) !important;
  border: 1px solid rgba(31,29,27,.10) !important;
  border-radius: 24px !important;
  overflow: hidden !important;
}
.gw-stats-grid > div {
  background: #ffffff;
  padding: 28px;
}

/* SearchShell - popular chips pod shellem */
.gw-popular-chips {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  margin-top: 20px;
  font-size: 14px; color: #3a3733;
}
.gw-popular-chips__label { color: #6b6661; }
.gw-popular-chips a {
  display: inline-flex; padding: 4px 12px;
  background: rgba(251,248,244,.7); backdrop-filter: blur(4px);
  border: 1px solid rgba(31,29,27,.10);
  border-radius: 9999px;
  text-decoration: none; color: #3a3733;
  transition: background .15s ease;
}
.gw-popular-chips a:hover { background: rgba(251,248,244,1); }

/* Section hero — ograniczenie overflow + inner div jako positioning anchor dla decor */
.gw-hero-aurora { overflow-x: clip; position: relative; }
.gw-hero-aurora > div { position: relative; }

/* ============================================================
 * MOCK SOURCE CLASSES (verbatim) — same names as mockup/index.html
 * so a section's classes can be copied 1:1 from source into JSON.
 * Keep values identical to the mock <style> block.
 * ============================================================ */
.font-display { font-family: 'Bricolage Grotesque', system-ui, sans-serif; letter-spacing: -0.02em; }

.bg-aurora {
  background:
    radial-gradient(60% 50% at 8% 12%, rgba(255,176,140,.55) 0%, transparent 60%),
    radial-gradient(45% 35% at 92% 8%, rgba(193,210,255,.7) 0%, transparent 60%),
    radial-gradient(55% 45% at 75% 78%, rgba(213,193,255,.55) 0%, transparent 60%),
    radial-gradient(40% 30% at 12% 88%, rgba(255,206,184,.5) 0%, transparent 60%),
    #fbf8f4;
}
.bg-aurora-soft {
  background:
    radial-gradient(60% 60% at 0% 0%, rgba(255,176,140,.35) 0%, transparent 55%),
    radial-gradient(50% 50% at 100% 100%, rgba(193,210,255,.55) 0%, transparent 55%),
    #fbf8f4;
}
.bg-grain { position: relative; }
.bg-grain::after {
  content:""; position:absolute; inset:0; pointer-events:none; opacity:.15; mix-blend-mode:multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/></svg>");
}

.pill-hl { display:inline-flex; align-items:center; padding:.05em .5em; border-radius:999px; background:#ff4d1a; color:#fff; }
.pill-hl-dark { display:inline-flex; align-items:center; padding:.05em .5em; border-radius:999px; background:#1f1d1b; color:#fbf8f4; }

.text-grad-warm {
  background: linear-gradient(90deg, #ff4d1a 0%, #b82f06 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.text-grad-cool {
  background: linear-gradient(90deg, #ff6a3d 0%, #8a4bff 60%, #3d7bff 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}

.card { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.card:hover { transform: translateY(-3px); }

/* mock body baseline text color (ink-800) — for inheriting text */
.gw-site-main, .gw-content { color: #2a2825; }

/* IconList compiler output (<ul class="gotoweb-icon-list">) — was unstyled,
   rendered as a default bulleted <ul>. Mock feature lists: space-y-3, flex row,
   icon + text aligned, no bullets. */
.gotoweb-icon-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 0.75rem; }
.gotoweb-icon-list li { display: flex; align-items: flex-start; gap: 0.75rem; }
.gotoweb-icon-list li svg { flex-shrink: 0; margin-top: 0.15rem; }

/* Neutral free badge style for legacy .badge-free markup. */
.badge-free {
  display: inline-flex; align-items: center; gap: .25rem;
  padding: .2rem .55rem; border-radius: 999px;
  font-size: .7rem; font-weight: 700; letter-spacing: .02em;
  background: #ecfdf5; color: #047857; border: 1px solid rgba(5,150,105,.2);
}

/* Monteby core interactive blocks: start */
.gotoweb-stepper{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;align-items:start}
.gotoweb-stepper__nav{display:flex;flex-direction:column;align-items:stretch;min-height:720px}
.gotoweb-stepper__cta{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-bottom:40px;
  padding:14px 28px;border-radius:9999px;background-image:linear-gradient(135deg,#F97316 0%,#EA580C 100%);
  color:#fff;font-weight:700;font-size:15px;text-decoration:none;box-shadow:0 8px 24px rgba(249,115,22,.3)}
.gotoweb-stepper__cta .material-symbols-outlined{font-size:18px}
.gotoweb-stepper__item{display:flex;flex-direction:column;gap:14px;padding:24px 0 20px;
  border-top:1px solid rgba(15,23,42,.08);transition:opacity .2s ease}
.gotoweb-stepper__item:last-of-type{border-bottom:1px solid rgba(15,23,42,.08)}
.gotoweb-stepper__item:not(.is-active){opacity:.5}
.gotoweb-stepper__item:not(.is-active):hover{opacity:.85}
.gotoweb-stepper__head{display:flex;align-items:center;gap:20px;width:100%;padding:0;background:none;
  border:0;cursor:pointer;text-align:left;font-family:inherit}
.gotoweb-stepper__num{font-family:var(--gcb-font-display,'Unbounded',sans-serif);font-weight:700;font-size:14px;
  letter-spacing:.05em;color:#9ca3af;flex-shrink:0;min-width:16px;transition:color .2s ease}
.gotoweb-stepper__title{font-family:var(--gcb-font-display,'Unbounded',sans-serif);font-weight:700;font-size:22px;
  line-height:1.3;color:#111827}
.gotoweb-stepper__item.is-active .gotoweb-stepper__num{color:#F97316}
.gotoweb-stepper__bar{height:3px;margin-left:36px;border-radius:2px;overflow:hidden;background:transparent}
.gotoweb-stepper__item.is-active .gotoweb-stepper__bar{background:rgba(249,115,22,.15)}
.gotoweb-stepper__bar>span{display:block;height:100%;width:0;background:#F97316;border-radius:2px}
.gotoweb-stepper__panel{margin:4px 0 8px 36px}
.gotoweb-stepper__panel[hidden]{display:none}
.gotoweb-stepper__desc{margin:0;font-size:15px;line-height:1.65;color:#4b5563;max-width:500px;min-height:160px}
.gotoweb-stepper__media{position:sticky;top:112px}
.gotoweb-stepper__frame{position:relative;border-radius:20px;overflow:hidden;padding:40px;min-height:460px;
  display:flex;align-items:center;justify-content:center;box-shadow:0 20px 60px rgba(15,23,42,.08);
  background:radial-gradient(ellipse 80% 60% at 30% 20%,rgba(254,215,170,.6),transparent 60%),
  radial-gradient(ellipse 80% 70% at 80% 80%,rgba(251,207,232,.4),transparent 60%),
  linear-gradient(135deg,#FFFBF7 0%,#FFF7ED 100%)}
.gotoweb-stepper__img{display:none;max-width:100%;max-height:480px;width:auto;height:auto;border-radius:12px}
.gotoweb-stepper__img.is-active{display:block}
@media (max-width:1024px){.gotoweb-stepper{grid-template-columns:1fr;gap:48px}
  .gotoweb-stepper__nav{min-height:auto}.gotoweb-stepper__desc{min-height:auto}
  .gotoweb-stepper__media{position:static}.gotoweb-stepper__frame{min-height:320px;padding:28px}}

.gotoweb-security{position:relative;height:var(--gwsec-h,460vh);padding:100px 0;
  background:linear-gradient(180deg,#F9FAFB 0%,#F9FAFB 50%,#FFF7ED 100%)}
.gotoweb-security__sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center;overflow:hidden}
.gotoweb-security__header{text-align:center;margin-bottom:56px}
.gotoweb-security__heading{font-family:'Unbounded',system-ui,-apple-system,sans-serif;
  font-size:clamp(32px,3.8vw,50px);line-height:1.08;margin:0;font-weight:700;letter-spacing:-0.02em;color:#111827}
.gotoweb-security__stage{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}
.gotoweb-security__visual{position:relative;height:520px;display:flex;align-items:center;justify-content:center}
.gotoweb-security__frame{position:relative;width:100%;height:100%;border-radius:36px;
  background:radial-gradient(ellipse 70% 50% at 50% 25%,rgba(254,215,170,.7),transparent 65%),
  radial-gradient(ellipse 80% 60% at 50% 95%,rgba(251,207,232,.45),transparent 65%),
  linear-gradient(135deg,#FFFBF7 0%,#FFF1E0 100%);
  padding:50px 40px;box-shadow:0 30px 80px rgba(249,115,22,.14),inset 0 1px 0 rgba(255,255,255,.8);
  overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:space-between}
.gotoweb-security__art{width:280px;height:280px;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.gotoweb-security__scene{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  opacity:0;transform:scale(.85);pointer-events:none;
  transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.gotoweb-security__scene.is-active{opacity:1;transform:scale(1)}
.gotoweb-security__svg{width:100%;height:100%;max-width:280px;max-height:280px;
  filter:drop-shadow(0 20px 40px rgba(249,115,22,.25))}
.gotoweb-security__stats{position:relative;width:100%;text-align:center;z-index:1;height:100px}
.gotoweb-security__statblock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;
  justify-content:center;opacity:0;transform:translateY(20px);
  transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}
.gotoweb-security__statblock.is-active{opacity:1;transform:translateY(0);transition-delay:.2s}
.gotoweb-security__stat{font-family:'Unbounded',system-ui,-apple-system,sans-serif;
  font-size:clamp(44px,5.5vw,68px);font-weight:800;line-height:1;
  background:linear-gradient(135deg,#F97316 0%,#EA580C 100%);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
  margin-bottom:12px;letter-spacing:-0.02em}
.gotoweb-security__statlabel{font-size:12px;font-weight:700;color:#9CA3AF;text-transform:uppercase;letter-spacing:.12em}
.gotoweb-security__glow{position:absolute;top:50%;left:50%;width:60%;height:60%;transform:translate(-50%,-50%);
  border-radius:50%;background:radial-gradient(circle,rgba(249,115,22,.18),transparent 70%);
  filter:blur(50px);z-index:0;animation:gwsec-pulse 4s ease-in-out infinite;pointer-events:none}
@keyframes gwsec-pulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.6}
  50%{transform:translate(-50%,-50%) scale(1.15);opacity:1}}
.gotoweb-security__content{display:flex;flex-direction:column;gap:24px}
.gotoweb-security__steps{display:flex;flex-direction:column;gap:4px}
.gotoweb-security__step{position:relative;background:transparent;border:none;padding:18px 0 18px 24px;
  display:flex;flex-direction:column;text-align:left;cursor:pointer;font-family:inherit;
  border-top:1px solid rgba(15,23,42,.08);transition:opacity .4s ease;opacity:.35}
.gotoweb-security__step:last-of-type{border-bottom:1px solid rgba(15,23,42,.08)}
.gotoweb-security__step:hover:not(.is-active){opacity:.7}
.gotoweb-security__step.is-active{opacity:1}
.gotoweb-security__step.is-past{opacity:.55}
.gotoweb-security__stepbar{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;
  background:linear-gradient(135deg,#F97316 0%,#EA580C 100%);border-radius:2px;
  transition:height .5s cubic-bezier(.16,1,.3,1),box-shadow .5s ease}
.gotoweb-security__step.is-active .gotoweb-security__stepbar{height:70%;box-shadow:0 0 16px rgba(249,115,22,.5)}
.gotoweb-security__steprow{display:flex;align-items:center;gap:18px}
.gotoweb-security__stepnum{font-family:'Unbounded',system-ui,-apple-system,sans-serif;font-size:14px;font-weight:700;
  color:#9CA3AF;letter-spacing:.05em;flex-shrink:0;min-width:28px;transition:color .4s ease}
.gotoweb-security__step.is-active .gotoweb-security__stepnum,
.gotoweb-security__step.is-past .gotoweb-security__stepnum{color:#F97316}
.gotoweb-security__steptitle{font-size:19px;font-weight:700;color:#111827;line-height:1.3;transition:color .3s ease}
.gotoweb-security__step:hover:not(.is-active) .gotoweb-security__steptitle{color:#F97316}
.gotoweb-security__descwrap{display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .5s cubic-bezier(.16,1,.3,1);margin-left:46px}
.gotoweb-security__descwrap.is-open{grid-template-rows:1fr}
.gotoweb-security__desc{overflow:hidden;font-size:14px;line-height:1.65;color:#4B5563;margin:0;max-width:540px;
  opacity:0;transform:translateY(-8px);padding-top:0;
  transition:opacity .5s ease .1s,transform .5s ease .1s,padding .5s ease}
.gotoweb-security__descwrap.is-open .gotoweb-security__desc{opacity:1;transform:translateY(0);padding-top:12px}
.gotoweb-security__progress{display:flex;align-items:center;gap:20px;margin-top:12px}
.gotoweb-security__ptrack{flex:1;height:4px;background:rgba(249,115,22,.12);border-radius:2px;overflow:hidden}
.gotoweb-security__pfill{height:100%;background:linear-gradient(135deg,#F97316 0%,#EA580C 100%);border-radius:2px;
  transition:width .6s cubic-bezier(.16,1,.3,1);box-shadow:0 0 12px rgba(249,115,22,.4)}
.gotoweb-security__plabel{font-family:'Unbounded',system-ui,-apple-system,sans-serif;font-size:13px;font-weight:700;
  color:#F97316;letter-spacing:.08em;min-width:56px;text-align:right}

/* ── Scene 0: AES padlock (1:1, gwsec- prefix) ── */
.gotoweb-security .gwsec-shackle{transform-origin:120px 110px;transform:translateY(-30px) rotate(-12deg);opacity:0}
.gotoweb-security__scene.is-active .gwsec-shackle{animation:gwsec-shackle-close 1.2s cubic-bezier(.34,1.56,.64,1) .2s forwards}
@keyframes gwsec-shackle-close{0%{transform:translateY(-30px) rotate(-12deg);opacity:0}
  60%{transform:translateY(-8px) rotate(0);opacity:1}100%{transform:translateY(0) rotate(0);opacity:1}}
.gotoweb-security .gwsec-body{transform-origin:120px 155px;transform:scale(0);opacity:0}
.gotoweb-security__scene.is-active .gwsec-body{animation:gwsec-body-pop .6s cubic-bezier(.34,1.56,.64,1) 0s forwards}
@keyframes gwsec-body-pop{0%{transform:scale(0);opacity:0}100%{transform:scale(1);opacity:1}}
.gotoweb-security .gwsec-keyhole-circle,.gotoweb-security .gwsec-keyhole-bar{opacity:0}
.gotoweb-security__scene.is-active .gwsec-keyhole-circle,
.gotoweb-security__scene.is-active .gwsec-keyhole-bar{animation:gwsec-fade-in .4s ease .5s forwards}
.gotoweb-security .gwsec-bit{font-size:14px;opacity:0}
.gotoweb-security__scene.is-active .gwsec-bit{animation:gwsec-bit-float 3s ease-in-out infinite}
.gotoweb-security__scene.is-active .gwsec-bit.b1{animation-delay:.6s}
.gotoweb-security__scene.is-active .gwsec-bit.b2{animation-delay:.8s}
.gotoweb-security__scene.is-active .gwsec-bit.b3{animation-delay:1s}
.gotoweb-security__scene.is-active .gwsec-bit.b4{animation-delay:1.2s}
@keyframes gwsec-bit-float{0%,100%{opacity:0;transform:translateY(0)}20%{opacity:1}
  50%{opacity:.8;transform:translateY(-6px)}80%{opacity:.4}}
.gotoweb-security .gwsec-dot{opacity:0}
.gotoweb-security__scene.is-active .gwsec-dot{animation:gwsec-dot-pulse 2s ease-in-out infinite}
.gotoweb-security__scene.is-active .gwsec-dot.d2{animation-delay:1s}
@keyframes gwsec-dot-pulse{0%,100%{opacity:0}50%{opacity:1}}

/* Scene 1: location signal */
.gotoweb-security .gwsec-eu-wrap{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.gotoweb-security .gwsec-eu-glow{position:absolute;inset:10%;border-radius:50%;
  background:radial-gradient(circle,rgba(254,215,170,.5),transparent 70%);filter:blur(20px);
  opacity:0;transform:scale(.7);transition:opacity .6s ease,transform .6s ease}
.gotoweb-security__scene.is-active .gwsec-eu-glow{opacity:1;transform:scale(1);transition-delay:.05s}
.gotoweb-security .gwsec-eu-map{position:relative;z-index:1;width:72%;height:72%;border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.8) 0 5%,transparent 6%),
    radial-gradient(circle at 50% 50%,rgba(251,146,60,.28) 0 28%,transparent 29%),
    radial-gradient(circle,rgba(251,146,60,.08) 0 48%,transparent 49%),
    linear-gradient(135deg,#FB923C 0%,#F97316 100%);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.55);
  opacity:0;transform:translateY(20px) scale(.9);filter:drop-shadow(0 10px 20px rgba(249,115,22,.25));
  transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
.gotoweb-security__scene.is-active .gwsec-eu-map{opacity:1;transform:translateY(0) scale(1);transition-delay:.2s}
.gotoweb-security .gwsec-eu-pin-wrap{position:absolute;top:38%;left:60%;width:16px;height:16px;z-index:2;
  pointer-events:none;opacity:0;transform:translate(-50%,-50%) scale(0);
  transition:opacity .5s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}
.gotoweb-security__scene.is-active .gwsec-eu-pin-wrap{opacity:1;transform:translate(-50%,-50%) scale(1);transition-delay:.9s}
.gotoweb-security .gwsec-eu-pin-dot{position:absolute;inset:0;border-radius:50%;background:white;
  border:3px solid #F97316;box-shadow:0 4px 12px rgba(249,115,22,.5)}
.gotoweb-security .gwsec-eu-pin-dot::after{content:'';position:absolute;inset:25%;border-radius:50%;background:#F97316}
.gotoweb-security .gwsec-eu-pin-pulse{position:absolute;inset:0;border-radius:50%;border:2px solid #F97316;opacity:0}
.gotoweb-security__scene.is-active .gwsec-eu-pin-pulse{animation:gwsec-eu-pin-pulse 2.5s ease-out infinite;animation-delay:1.3s}
.gotoweb-security__scene.is-active .gwsec-eu-pin-pulse.p2{animation-delay:2.55s}
@keyframes gwsec-eu-pin-pulse{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(4)}}

/* ── Scene 2: shield + checkmark ── */
.gotoweb-security .gwsec-shield{transform-origin:120px 120px;opacity:0;transform:scale(.6)}
.gotoweb-security__scene.is-active .gwsec-shield{animation:gwsec-shield-in .7s cubic-bezier(.34,1.56,.64,1) .1s forwards}
@keyframes gwsec-shield-in{0%{opacity:0;transform:scale(.6)}100%{opacity:1;transform:scale(1)}}
.gotoweb-security__scene.is-active .gwsec-check{animation:gwsec-check-draw .8s cubic-bezier(.65,0,.35,1) .7s forwards}
@keyframes gwsec-check-draw{to{stroke-dashoffset:0}}
.gotoweb-security .gwsec-ring{transform-origin:120px 120px}
.gotoweb-security__scene.is-active .gwsec-ring{animation:gwsec-ring-pulse 2.5s ease-out infinite}
.gotoweb-security__scene.is-active .gwsec-ring.r1{animation-delay:1.2s}
.gotoweb-security__scene.is-active .gwsec-ring.r2{animation-delay:2.4s}
@keyframes gwsec-ring-pulse{0%{transform:scale(.6);opacity:.6}100%{transform:scale(1.2);opacity:0}}

/* ── Scene 3: struck-through key ── */
.gotoweb-security .gwsec-key{transform-origin:120px 120px;opacity:0;transform:translateX(-30px)}
.gotoweb-security__scene.is-active .gwsec-key{animation:gwsec-key-in .6s cubic-bezier(.16,1,.3,1) .1s forwards,
  gwsec-key-fade 1.2s ease 1.2s forwards}
@keyframes gwsec-key-in{to{opacity:1;transform:translateX(0)}}
@keyframes gwsec-key-fade{to{opacity:.15}}
.gotoweb-security__scene.is-active .gwsec-strike{animation:gwsec-strike-draw .8s cubic-bezier(.65,0,.35,1) .9s forwards}
@keyframes gwsec-strike-draw{to{stroke-dashoffset:0}}
.gotoweb-security .gwsec-p{transform-origin:center}
.gotoweb-security__scene.is-active .gwsec-p{animation:gwsec-p-fly 1.5s ease-out 1.4s forwards}
.gotoweb-security__scene.is-active .gwsec-p.p1{animation-delay:1.4s}
.gotoweb-security__scene.is-active .gwsec-p.p2{animation-delay:1.5s}
.gotoweb-security__scene.is-active .gwsec-p.p3{animation-delay:1.45s}
.gotoweb-security__scene.is-active .gwsec-p.p4{animation-delay:1.55s}
.gotoweb-security__scene.is-active .gwsec-p.p5{animation-delay:1.6s}
.gotoweb-security__scene.is-active .gwsec-p.p6{animation-delay:1.5s}
@keyframes gwsec-p-fly{0%{opacity:0;transform:scale(0)}20%{opacity:1;transform:scale(1.5)}100%{opacity:0;transform:scale(0)}}
@keyframes gwsec-fade-in{to{opacity:1}}

/* ── Mobile (sticky→static, all steps expanded) ── */
@media (max-width:1024px){
  .gotoweb-security{height:auto}
  .gotoweb-security__sticky{position:static;height:auto;padding:80px 0}
  .gotoweb-security__header{margin-bottom:40px}
  .gotoweb-security__stage{grid-template-columns:1fr;gap:48px}
  .gotoweb-security__visual{height:360px}
  .gotoweb-security__scene{opacity:1;transform:none;position:relative;inset:auto;display:none}
  .gotoweb-security__scene.is-active{display:flex}
  .gotoweb-security__statblock.is-active{transition-delay:0s}
  .gotoweb-security__step{opacity:1}
  .gotoweb-security__descwrap{grid-template-rows:1fr}
  .gotoweb-security__desc{opacity:1;transform:none;padding-top:12px}
}
/* Monteby core interactive blocks: end */
@media (max-width: 900px) {
	.gotoweb-gallery--responsive[data-gallery-layout="grid"] {
		grid-template-columns: repeat(var(--gotoweb-gallery-columns-tablet), minmax(0, 1fr)) !important;
	}

	.gotoweb-gallery--responsive[data-gallery-layout="masonry"] {
		column-count: var(--gotoweb-gallery-columns-tablet) !important;
	}
}

@media (max-width: 767px) {
	.gotoweb-gallery--responsive[data-gallery-layout="grid"] {
		grid-template-columns: repeat(var(--gotoweb-gallery-columns-mobile), minmax(0, 1fr)) !important;
	}

	.gotoweb-gallery--responsive[data-gallery-layout="masonry"] {
		column-count: var(--gotoweb-gallery-columns-mobile) !important;
	}
}
