:root {
	/* 16–20px */
	--global-kb-spacing-sm: clamp(1rem, 0.9379rem + 0.3106vw, 1.25rem);
	/* 24–30px */
	--global-kb-spacing-md: clamp(1.5rem, 1.4068rem + 0.4658vw, 1.875rem);
	/* 32–40px */
	--global-kb-spacing-lg: clamp(2rem, 1.8758rem + 0.6211vw, 2.5rem);
	/* 40–50px */
	--global-kb-spacing-xl: clamp(2.5rem, 2.3447rem + 0.7764vw, 3.125rem);
	/* 59–74px */
	--global-kb-spacing-xxl: clamp(3.6875rem, 3.4546rem + 1.1646vw, 4.625rem);
	/* 80–100px */
	--global-kb-spacing-3xl: clamp(5rem, 4.6894rem + 1.5528vw, 6.25rem);
	/* 96–120px */
	--global-kb-spacing-4xl: clamp(6rem, 5.6273rem + 1.8634vw, 7.5rem);

	--global-row-gutter-sm: var(--global-kb-spacing-sm);
	--global-row-gutter-md: var(--global-kb-spacing-xl);
	--global-row-gutter-lg: var(--global-kb-spacing-4xl);

	--global-kb-gap-xs: var(--global-kb-spacing-sm);
	--global-kb-gap-sm: var(--global-kb-spacing-md);
	--global-kb-gap-md: var(--global-kb-spacing-xl);
	--global-kb-gap-lg: var(--global-kb-spacing-lg);
	--global-kb-gap-xl: var(--global-kb-spacing-4xl);

	--kb-tooltip-background: var(--wp--preset--color--navy);
}

#CybotCookiebotDialogPoweredbyCybot {
	display: none !important;
}

#jet-main-nav.fixed {
	position: fixed;
	top: 0;
	background-color: white;
	box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1);
}

.admin-bar #jet-main-nav.fixed {
	top: var(--wp-admin--admin-bar--height);
}

#jet-main-nav.fixed .jet-main-nav-container > div {
	box-shadow: none;
	padding: 0;
}

#jet-main-nav.fixed #jet-header-white-logo {
	display: none !important;
}

#jet-main-nav.fixed #jet-header-dark-logo {
	display: block !important;
}

@media only screen and (max-width: 1000px) {
	#jet-main-nav {
		box-sizing: border-box;
		position: fixed;
		top: 0;
		background-color: white;
		box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.1);
		padding: 0 20px;
	}

	.admin-bar #jet-main-nav {
		top: var(--wp-admin--admin-bar--height);
	}

	#jet-main-nav-column,
	#jet-main-nav-login-column {
		display: none;
	}

	#jet-main-nav > div > header > div > .kt-row-column-wrap,
	#jet-main-nav > div > div > div > .kt-row-column-wrap {
		display: block;
	}

	#jet-main-nav > div > header > div > .kt-row-column-wrap > .wp-block-kadence-column:first-of-type > .kt-inside-inner-col,
	#jet-main-nav > div > div > div > .kt-row-column-wrap > .wp-block-kadence-column:first-of-type > .kt-inside-inner-col {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		flex-direction: row;
	}

	#jet-mobile-menu-open {
		display: block;
	}

	.jet-mobile-menu-toggle {
		width: 37px;
		height: 37px;
	}

	.jet-main-nav-container > div {
		display: block !important;
	}

	.jet-main-nav-container .kb-navigation {
		flex-direction: column;
		gap: 0 !important;
		align-items: flex-start;
	}

	.jet-main-nav-container .kb-navigation a {
		padding-top: 5px;
		padding-bottom: 5px;
	}

	#jet-main-nav-column {
		margin: 20px 0;
	}

	#jet-main-nav.open #jet-main-nav-column, #jet-main-nav.open #jet-main-nav-login-column {
		display: block;
	}

	#jet-main-nav.open .jet-main-nav-container > div {
		box-shadow: none;
		padding: 0;
	}

	#jet-main-nav-login-column > div {
		align-items: flex-start !important;
	}

	#jet-main-nav-login-column a {
		padding: 10px 25px;
	}

	#jet-main-nav #jet-header-white-logo {
		display: none !important;
	}

	#jet-main-nav #jet-header-dark-logo {
		display: block !important;
	}
}

.tippy-content {
	padding: 15px 25px;
}

figure {
	margin: 0;
}

figure img {
	display: block;
}

.wp-block-kadence-image:not(:last-child) {
	margin-bottom: 0 !important;
}

.kt-highlight {
	font-family: var(--wp--preset--font-family--betterland) !important;
}

div:has(> .jet-blur-background) {
	overflow: hidden;
}

.jet-blur-background {
	position: absolute !important;
	bottom: -270px;
	left: -350px;
	width: 998px;
	height: 998px;
	background: radial-gradient(circle, #92ADCE 0%, transparent 70%);
	filter: blur(200px);
	z-index: 0;
	pointer-events: none;
	opacity: 0.6;
}

.jet-blur-background.right {
	left: inherit;
	right: -350px;
}

.btn-white .wp-block-button__link {
	background: white;
	color: var(--wp--preset--color--orange);
	border: 1px solid white;
}

.btn-white .wp-block-button__link:hover {
	background: transparent;
	color: white;
}

.btn-yellow .wp-block-button__link {
	background: var(--wp--preset--color--yellow);
	color: white;
	border: 1px solid var(--wp--preset--color--yellow);
}

.btn-yellow .wp-block-button__link:hover {
	background: transparent;
	color: var(--wp--preset--color--yellow);
}

.btn-navy .wp-block-button__link {
	background: var(--wp--preset--color--navy);
	color: white;
	border: 1px solid var(--wp--preset--color--navy);
}

.btn-navy .wp-block-button__link:hover {
	background: transparent;
	color: var(--wp--preset--color--navy);
}

.jet-icon-box > div {
	width: 100px;
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#jethost-domain-search-form {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

#jethost-domain-search-form input[type="search"] {
	display: block;
	width: 100%;
	padding: 18px 45px;
	border-radius: 7px;
	background-color: white;
	border: none;
	text-align: center;
	font-size: 24px;
	line-height: 130%;
	font-weight: 600;
}

#jethost-domain-search-form input[type="search"]::-webkit-search-decoration,
#jethost-domain-search-form input[type="search"]::-webkit-search-cancel-button,
#jethost-domain-search-form input[type="search"]::-webkit-search-results-button,
#jethost-domain-search-form input[type="search"]::-webkit-search-results-decoration {
	-webkit-appearance: none;
}

#jethost-domain-search-form .jethost-domain-search-button {
	width: 30px;
	height: 30px;
	background-image: url('/wp-content/themes/jethost-fse/img/search-icon-kd.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-color: transparent;
	border: none;
	padding: 0;
	position: absolute;
	right: 20px;
	z-index: 5;
	cursor: pointer;
	top: calc(50% - 15px);
}


.jet-single-post {
	color: #4e4949;
	font-size: var(--global-kb-font-size-md, 16px);
	font-style: normal;
	font-weight: 400;
	max-width: 960px;
	margin: -330px auto 110px;
}

.jet-single-post-content img:not(.jet-share-img):not(.avatar) {
	width: 100%;
	border-radius: 7px;
	height: auto;
}

.jet-single-post-image {
	display: block;
	width: 100%;
	height: auto;
}

.jet-single-post-image img {
	width: 100%;
	height: auto;
	border-radius: 7px 7px 0 0;
	object-fit: cover;
}

.jet-single-post-content {
	position: relative;
	z-index: 1;
	color: #4e4949;
}

.jet-single-post-content h1 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(25px, 1.563rem + ((1vw - 3px) * 1.327), 42px);
	font-weight: 600;
	line-height: 130%;
}

.jet-single-post-content h2 {
	color: var(--wp--preset--color--navy);
	font-size: clamp(20px, 1.25rem + ((1vw - 3px) * 0.938), 32px);
	font-weight: 600;
	line-height: 130%;
}

.jet-single-post-content h3,
.jet-single-post-content h4,
.jet-single-post-content h5,
.jet-single-post-content h6 {
	color: var(--wp--preset--color--navy);
	font-weight: 500;
	line-height: 150%;
}
.jet-single-post-content h3 {
	font-size: clamp(1.125rem, 0.8182rem + 1.3636vw, 1.875rem);
}
.jet-single-post-content h4 {
	font-size: clamp(1rem, 0.6932rem + 1.3636vw, 1.75rem);
}
.jet-single-post-content h5,
.jet-single-post-content h6 {
	font-size: clamp(1rem, 0.7443rem + 1.1364vw, 1.625rem);
}
.jet-single-post-content .jet-blog-post-times {
	font-size: 20px;
	margin-bottom: 20px;
}

.jet-single-post p {
	margin-top: 0;
	margin-bottom: 40px;
}

.jet-single-post .entry-content > p {
	margin-top: 20px;
}

.jet-single-post .entry-content li {
	margin-top: 10px;
}

.jet-single-post .entry-content h1,
.jet-single-post .entry-content h2,
.jet-single-post .entry-content h3,
.jet-single-post .entry-content h4,
.jet-single-post .entry-content h5 {
	margin-top: 20px;
	margin-bottom: 20px;
}

.jet-single-post .entry-footer {
	display: flex;
	justify-content: space-between;
}

.jet-single-post .jet-blog-post-author {
	padding-bottom: 55px;
	color: #4e4949;
	font-size: 16px;
	gap: 30px;
	align-items: center;
}

.jet-single-post .jet-blog-post-author::after {
	transform: scale(1.5);
	bottom: -54px;
	left: 110px;
}

.jet-single-post .jet-blog-post-author img {
	width: 63.488px;
	height: 65px;
}

.jet-single-post .jet-blog-post-author a {
	font-size: 20px;
}

.jet-single-post-footer {
	background-image: url("data:image/svg+xml,%3Csvg width='12' height='27' viewBox='0 0 12 27' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.69686 25.2232C3.56886 25.6285 3.36619 25.9165 3.08886 26.0872C2.81153 26.2792 2.50219 26.3752 2.16086 26.3752C1.84086 26.3752 1.54219 26.2898 1.26486 26.1192C0.987526 25.9485 0.795526 25.7032 0.688859 25.3832C0.560859 25.0845 0.560859 24.7218 0.688859 24.2952L8.08086 1.35117C8.20886 0.945831 8.41153 0.647164 8.68886 0.455164C8.98753 0.263165 9.29686 0.177832 9.61686 0.199165C9.93686 0.199165 10.2355 0.284498 10.5129 0.455164C10.7902 0.625831 10.9822 0.860498 11.0889 1.15916C11.2169 1.45783 11.2169 1.8205 11.0889 2.24717L3.69686 25.2232Z' fill='white'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-position: 0 0;
	padding-top: 70px;
	margin-top: 90px;
}

.jet-single-post-footer .jet-blog-top-articles {
	margin-bottom: 121px;
}

.jet-single-post .entry-content ul {
	padding-left: 0;
	margin-left: 30px;
}

.jet-single-post .entry-content ul ul {
	margin-left: 20px;

}

.jet-single-post-content .entry-content > .kb-row-layout-wrap > .kt-row-column-wrap {
	padding: 0 !important;
}

.jet-social-share-buttons {
	display: flex;
	align-items: flex-start;
	gap: 22px;
	list-style: none;
	padding: 0;
	margin: 10px 0 0 0;
}

.jet-social-share-buttons img {
	width: 50px;
}

.jet-copy-post-url {
	position: relative;
	display: block;
}

.jet-copy-post-url-msg {
	display: none;
	position: absolute;
	font-size: 13px;
	width: 240px;
	top: -45px;
	right: 0;
	background-color: var(--wp--preset--color--navy);
	padding: 5px 10px;
	color: white;
	border-radius: 7px;
}

.jet-breadcrumb {

	font-size: 16px;
	margin-bottom: 20px;
}

.jet-breadcrumb a {
	text-decoration: none;
	color: #8C8C8C !important;
}

.jet-breadcrumb .jet-current-page {
	font-weight: bold;
	color: var(--wp--preset--color--orange);
}


.jet-tax-articles-container {
	margin-top: 20px;
	border-radius: 7px;
	padding: 20px 30px 0;
	box-shadow: 0px 1px 3px 1px rgba(0, 0, 0, 0.1);
}

.jet-tax-articles-container a {
	display: block;
	text-decoration: none;
	color: var(--wp--preset--color--navy);
	font-style: normal;
	font-weight: 600;
	margin: 0;
	position: relative;
	padding: 0 0 20px;
}


.jet-tax-articles-container a:hover {
	color: var(--wp--preset--color--orange);
}


.jet-child-term {
	padding-top: 40px;
}

.jet-tax-articles-term-name {
	color: var(--wp--preset--color--navy);
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 28px;
	margin: 0 0 15px 0;
	padding-bottom: 15px;
	border-bottom: 1px solid var(--wp--preset--color--light-blue);
}

.tax-kb-category h2 {
	font-size: clamp(27.894px, 1.743rem + ((1vw - 3.2px) * 1.571), 48px);
	font-weight: 600;
	line-height: 130%;
	margin: 0;
}

.jet-tax-articles-count {
	color: #8C8C8C;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 20px;
}

.wp-block-jethost-post-read-time {
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	font-weight: 900;
	line-height: normal;
	margin-bottom: 15px;
}


.jet-single-post-content .wp-block-jethost-post-read-time {
	font-size: 20px;
	margin-bottom: 20px;
}


/* Hide all slides by default */
.jet-number-slider-content > .kt-row-column-wrap > .wp-block-kadence-column {
	display: none;
	opacity: 0;
	transition: opacity 0.5s ease-in-out;
}

/* Active slide */
.jet-number-slider-content > .kt-row-column-wrap > .wp-block-kadence-column.active {
	display: block;
	opacity: 1;
}

/* Numbers */
.jet-number-slider-numbers p {
	display: flex;
	align-items: center;
	gap: 15px;
}

.jet-number-slider-numbers p {
	color: var(--wp--preset--color--orange);
	transition: color 0.3s ease;
}

.jet-number-slider-numbers p:before {
	content: '';
	display: block;
	min-width: 10px;
	min-height: 10px;
	background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='5.5' cy='5.83545' r='5' fill='%23FE6400'/%3E%3C/svg%3E%0A");
	background-size: contain;
}

.jet-number-slider-numbers p.active:before {
	background-image: url("data:image/svg+xml,%3Csvg width='11' height='11' viewBox='0 0 11 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='5.5' cy='5.83545' r='5' fill='%23253082'/%3E%3C/svg%3E%0A");
}

.jet-number-slider-numbers p.active {
	color: var(--wp--preset--color--navy);
}

.jet-number-slider-content {
	position: relative;
}

.jet-number-slider-content > .kt-row-column-wrap > .wp-block-kadence-column {

	display: none;
}

.jet-number-slider-content > .kt-row-column-wrap > .wp-block-kadence-column.active {
	display: block;
}


/* Slider */
.slick-slider {
	position: relative;

	display: block;
	box-sizing: border-box;

	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	position: relative;

	display: block;
	overflow: hidden;

	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	top: 0;
	left: 0;

	display: block;
	margin-left: auto;
	margin-right: auto;
}

.slick-track:before,
.slick-track:after {
	display: table;

	content: '';
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;

	height: 100%;
	min-height: 1px;
}

[dir='rtl'] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	margin-top: 50px;
	display: block;
	padding: 0 10px;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;

	height: auto;

	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}


.slick-prev,
.slick-next {
	position: absolute;
	z-index: 1;
	background: none;
	border: none;
	content: "";
	color: transparent;
	top: 200px;
}

.slick-prev {
	width: 40px;
	height: 31px;
	left: 0;
	background-image: url("../img/arrow.svg");
	transform: rotate(90deg);
}

.slick-next {
	width: 40px;
	height: 31px;
	right: 0;
	background-image: url("../img/arrow.svg");
	transform: rotate(-90deg);
	background-position: 0 !important;
}

.slick-prev.slick-disabled,
.slick-next.slick-disabled {
	display: none !important;
}

.slick-dots {
	list-style: none;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 20px;
}

.slick-dots button {
	border-radius: 50%;
	color: transparent;
	width: 10px;
	height: 10px;
	background-color: #d9d9d9;
	padding: 0;
	border: none;
	transition: all 0.5s linear 0s;
	cursor: pointer;
}

.slick-dots .slick-active button {
	background-color: transparent;
	border: 1px solid #4e4949;
}


.promo-label-container mark {
	--h: 27px; /* element height */
	--s: 20px; /* triangle size */
	--r: 7px; /* radius */
	--pr: 18px; /* padding-right */

	height: var(--h);
	padding-right: var(--pr);
	border-radius: var(--r) 0 0 var(--r);
	--_a: atan2(var(--s), var(--h) / 2);
	clip-path: shape(from 0 0,
	line to calc(100% - var(--s) - var(--r)) 0,
	curve by calc(var(--r) * (1 + sin(var(--_a)))) calc(var(--r) * cos(var(--_a))) with var(--r) 0,
	line to calc(100% - var(--r) * sin(var(--_a))) calc(50% - var(--r) * cos(var(--_a))),
	curve by 0 calc(2 * var(--r) * cos(var(--_a))) with 100% 50% from origin,
	line to calc(100% - var(--s) + var(--r) * sin(var(--_a))) calc(100% - var(--r) * cos(var(--_a))),
	curve to calc(100% - var(--s) - var(--r)) 100% with calc(100% - var(--s)) 100%,
	line to 0 100%
	);
}


@supports not (clip-path: shape(from 0 0,line to 0 0)) {
	.promo-label-container mark {
		clip-path: polygon(0 0, calc(100% - var(--s)) 0, 100% 50%, calc(100% - var(--s)) 100%, 0 100%)
	}
}

.promo-label-container mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 600;
	padding-left: 10px;
}

.jethost-domain-price-table {
	position: relative;
}

.jethost-domain-price-table thead{
	position: sticky;
	top: 100px;
}
@media only screen and (max-width: 500px) {
	.jethost-domain-price-table h3, .jethost-domain-price-table thead th {
		font-size: 14px !important;
	}

	.jethost-domain-price-table thead th:nth-of-type(3) {
		padding-left: 0 !important;
	}
}



@media only screen and (max-width: 768px) {
	#CookiebotWidget {
		z-index: 900 !important;
	}
}

.wp-block-kadence-image img {
	height: auto;
}

.comment-form label {
	display: block;
	font-size: var(--wp--preset--font-size--body-text-2);
	margin-bottom: 10px;
	color: var(--wp--preset--color--navy);
}

.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea{
	width: 100%;
	padding: 20px;
	border-radius: 7px;
	color: var(--wp--preset--color--navy);
	background: var(--wp--preset--color--light-blue);
	border: none;
	font-size: var(--wp--preset--font-size--body-text-1);
}

.comment-form input[type="text"]:focus,
.comment-form input[type="email"]:focus,
.comment-form input[type="url"]:focus,
.comment-form textarea:focus{
	outline: none;
}

.comment-form textarea {
	width: 100%;
	min-height: 120px;
	padding: 16px;
	resize: vertical;
	font-family: var(--wp--preset--font-family--inter);
}

.comment-form .comment-form-cookies-consent {
	display: flex;
	gap: 8px 16px;
}

.comment-form .comment-form-cookies-consent label {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: var(--wp--preset--font-size--body-text-1);
	color: var(--wp--preset--color--navy);
	cursor: pointer;
	margin-bottom: 0;
}

.comment-form .comment-form-cookies-consent input[type="checkbox"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 20px;
	height: 20px;
	min-width: 20px;
	border: 1px solid var(--wp--preset--color--north-sea);
	border-radius: 4px;
	background: var(--wp--preset--color--light-blue);
	cursor: pointer;
	position: relative;
	transition: all 0.2s;
	margin: 0;
	padding: 0;
}

.comment-form .comment-form-cookies-consent label:hover,
.comment-form .comment-form-cookies-consent label:focus,
.comment-form .comment-form-cookies-consent label:has(input:checked) {
	color: var(--wp--preset--color--orange);
}

.comment-form .comment-form-cookies-consent input[type="checkbox"]:checked::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 2px;
	width: 4px;
	height: 8px;
	border: solid var(--wp--preset--color--orange);
	border-width: 0 2px 2px 0;
	transform: rotate(45deg);
}
.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent {
	margin-top: 5px !important;
}

.wp-block-comment-template .comment > .wp-block-columns{
	border-radius: 7px;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 1px;
	padding: 30px 40px;
}

.comment-form  a {
	color: var(--wp--preset--color--navy);
}

@media only screen and (max-width: 768px) {
	.wp-block-comment-template .comment > .wp-block-columns{
		padding: 25px 15px;
	}
}


/* ==========================================================================
   AI Connector landing page (pattern: jethost/ai-connector)
   ========================================================================== */

.jh-aic {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.jh-aic .kt-highlight {
	margin-right: 0.12em;
	background: transparent;
	color: var(--wp--preset--color--orange);
}

@keyframes jhFloat {
	0%, 100% { transform: translate3d(0, 0, 0); }
	50% { transform: translate3d(0, -8px, 0); }
}

/* --- Hero --- */
.jh-trust {
	display: flex;
	gap: 22px;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 26px;
	font-size: 14px;
	font-weight: 600;
}

.jh-trust-item {
	display: inline-flex;
	align-items: center;
	gap: 7px;
}

.jh-hero-visual {
	position: relative;
}

.jh-hero-visual img {
	width: 100%;
	display: block;
	border-radius: 7px;
	/* box-shadow: 0 14px 28px -8px rgba(0, 0, 0, 0.16); */
	object-fit: contain;
	object-position: top;
}

.jh-chip {
	position: absolute;
	max-width: 300px;
	/* High-opacity solid fill instead of backdrop-filter: blur() animates
	   smoothly. A blurred backdrop on a transform-animated element forces
	   Firefox to re-rasterize the blur every frame, which causes the lag. */
	background: rgba(255, 255, 255, 0.97);
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
	border-radius: 7px;
	padding: 16px 18px;
	will-change: transform;
	transform: translateZ(0);
	backface-visibility: hidden;
}

.jh-chip-ask {
	top: 40px;
	left: -34px;
	animation: jhFloat 5.5s ease-in-out infinite;
}

.jh-chip-answer {
	bottom: -26px;
	right: -26px;
	max-width: 320px;
	animation: jhFloat 6.5s ease-in-out infinite;
}

.jh-chip-label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.jh-chip-text {
	margin: 7px 0 0;
	font-size: 15px;
	line-height: 1.4;
	font-weight: 600;
}

.jh-chip-head {
	display: flex;
	align-items: center;
	gap: 8px;
}

.jh-chip-spark {
	width: 26px;
	height: 26px;
	border-radius: 7px;
	background: #253082;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.jh-chip-answer-text {
	margin-top: 9px;
	font-size: 14px;
	line-height: 1.45;
}

/* --- How it works steps --- */
.jh-steps {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.jh-step {
	display: flex;
	align-items: flex-start;
	gap: 20px;
	background: #F7F8FA;
	border-radius: 7px;
	padding: 24px 26px;
}

.jh-step-n {
	flex-shrink: 0;
	width: 48px;
	height: 48px;
	border-radius: 7px;
	background: #FE6400;
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 22px;
	font-weight: 700;
}

.jh-step-title {
	font-size: 22px;
	font-weight: 700;
	margin: 0;
	letter-spacing: -0.01em;
}

.jh-step-body {
	margin: 7px 0 0;
	font-size: 16px;
	line-height: 1.5;
}

/* --- What you can ask --- */
.jh-ask {
	margin-top: 34px;
}

.jh-ask-filters {
	display: flex;
	justify-content: center;
	gap: 10px;
	flex-wrap: wrap;
}

.jh-filter-btn {
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	padding: 9px 18px;
	border-radius: 999px;
	cursor: pointer;
	border: 1px solid rgba(37, 48, 130, 0.18);
	background: #fff;
	color: #253082;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.jh-filter-btn:hover {
	border-color: #FE6400;
}

.jh-filter-btn.is-active {
	border-color: #FE6400;
	background: #FE6400;
	color: #fff;
}

.jh-ask-grid {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px;
}

.jh-ask-card {
	background: #fff;
	border-radius: 7px;
	padding: 26px 26px 24px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.jh-ask-head {
	display: flex;
	align-items: center;
	gap: 10px;
}

.jh-ask-chip {
	width: 38px;
	height: 38px;
	border-radius: 7px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.jh-ask-cat {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: #587380;
}

.jh-ask-title {
	font-size: 22px;
	font-weight: 700;
	margin: 0;
	letter-spacing: -0.01em;
}

.jh-ask-prompt {
	background: #EAF1F9;
	border-radius: 12px 12px 12px 4px;
	padding: 14px 16px;
	font-size: 15px;
	line-height: 1.45;
	font-style: italic;
}

.jh-ask-outcome {
	display: flex;
	align-items: flex-start;
	gap: 9px;
}

.jh-ask-outcome svg {
	flex-shrink: 0;
	margin-top: 1px;
}

.jh-ask-outcome p {
	margin: 0;
	font-size: 14px;
	line-height: 1.5;
}

/* --- Connection details --- */
.jh-conn {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.jh-conn-row {
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 7px;
	padding: 18px 20px;
}

.jh-conn-label {
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: #92ADCE;
	text-transform: uppercase;
}

.jh-conn-line {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 9px;
}

.jh-conn-line code {
	font-family: monospace;
	font-size: 14px;
	color: #fff;
	word-break: break-all;
}

.jh-conn-line code.jh-conn-big {
	font-size: 17px;
}

.jh-copy {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 9px 14px;
	background: #FE6400;
	color: #fff;
	border: none;
	border-radius: 7px;
	font-family: inherit;
	font-weight: 700;
	font-size: 13px;
	cursor: pointer;
}

.jh-copy-ghost {
	background: rgba(255, 255, 255, 0.12);
	border: 1px solid rgba(255, 255, 255, 0.2);
}

.jh-conn-note {
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 13px 18px;
}

.jh-conn-note svg {
	flex-shrink: 0;
}

.jh-conn-note span {
	font-size: 14px;
	line-height: 1.45;
	color: rgba(255, 255, 255, 0.7);
}

.jh-conn-note strong {
	color: #fff;
}

/* --- Privacy & control --- */
.jh-privacy {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 16px;
	margin-top: 48px;
}

.jh-privacy-card {
	background: #F7F8FA;
	border-radius: 7px;
	padding: 26px 24px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.jh-privacy-chip {
	width: 48px;
	height: 48px;
	border-radius: 7px;
	background: #FE6400;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.jh-privacy-title {
	font-size: 18px;
	font-weight: 700;
	margin: 0;
	letter-spacing: -0.01em;
}

.jh-privacy-body {
	font-size: 14px;
	line-height: 1.5;
	margin: 0;
}

/* --- Feedback --- */
.jh-fb-note {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 30px;
	padding: 16px 18px;
	background: #F7F8FA;
	border-radius: 7px;
	font-size: 14px;
	line-height: 1.4;
}

.jh-fb-note-icon {
	width: 40px;
	height: 40px;
	border-radius: 7px;
	background: #253082;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.jh-form {
	background: #fff;
	border-radius: 7px;
	padding: 40px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
}

/* The `hidden` attribute must win over the display rules below, so the
   success panel stays hidden until the form is submitted (and the fields
   hide once it is). */
.jh-form [hidden] {
	display: none;
}

.jh-form-fields {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.jh-form-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.jh-form label {
	display: flex;
	flex-direction: column;
	gap: 8px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #253082;
}

.jh-form input,
.jh-form select,
.jh-form textarea {
	font-family: inherit;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0;
	text-transform: none;
	padding: 13px 14px;
	border: 1px solid rgba(37, 48, 130, 0.18);
	border-radius: 7px;
	color: #253082;
	background: #fff;
	outline: none;
}

.jh-form textarea {
	resize: vertical;
	line-height: 1.5;
}

.jh-form-rate {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.jh-form-rate-label {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #253082;
}

.jh-form-stars {
	display: flex;
	gap: 8px;
}

.jh-star {
	background: none;
	border: none;
	padding: 2px;
	cursor: pointer;
	line-height: 0;
}

.jh-star svg path {
	fill: #fff;
}

.jh-star.is-on svg path {
	fill: #FE6400;
}

.jh-form-foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}

.jh-form-hint {
	font-size: 13px;
	color: #587380;
}

.jh-form-submit {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 15px 26px;
	background: #FE6400;
	color: #fff;
	border: none;
	border-radius: 7px;
	font-family: inherit;
	font-weight: 700;
	font-size: 17px;
	cursor: pointer;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
}

.jh-form-success {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	padding: 40px 10px;
	gap: 18px;
}

.jh-form-success-icon {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	background: #23DE84;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.jh-form-success h3 {
	font-size: 30px;
	font-weight: 700;
	margin: 0;
	letter-spacing: -0.02em;
}

.jh-form-success p {
	font-size: 17px;
	line-height: 1.5;
	margin: 0;
	max-width: 380px;
}

.jh-form-reset {
	margin-top: 6px;
	padding: 13px 22px;
	background: #FE6400;
	color: #fff;
	border: none;
	border-radius: 7px;
	font-family: inherit;
	font-weight: 700;
	font-size: 16px;
	cursor: pointer;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
}

/* --- Responsive --- */
@media only screen and (max-width: 1024px) {
	.jh-ask-grid {
		grid-template-columns: repeat(2, 1fr);
	}

	.jh-privacy {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media only screen and (max-width: 768px) {
	.jh-ask-grid,
	.jh-privacy,
	.jh-form-grid {
		grid-template-columns: 1fr;
	}

	.jh-chip {
		position: static;
		max-width: none;
		margin-top: 14px;
		animation: none;
	}

	.jh-form {
		padding: 26px;
	}
}

/* ==========================================================================
   VPS landing page (pattern: jethost/vps) — custom widgets
   Section panels, headers, buttons and FAQ are native blocks; these classes
   style only the widgets that blocks can't express (hero visual, cards).
   ========================================================================== */
.jh-vps {
	color: #293181;
}
.jh-vps [class^="jh-vps-"],
.jh-vps [class*=" jh-vps-"] {
	box-sizing: border-box;
}

/* Hand-drawn orange underline under the script (kt-highlight) word in headers */
.jh-vps .kt-highlight {
	position: relative;
}
.jh-vps .kt-highlight::after {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	bottom: 4px;
	width: 100%;
	height: 14px;
	z-index: -1;
	background-image: url("data:image/svg+xml,%3Csvg width='205' height='23' viewBox='0 0 205 23' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M2 21C55.7968 16.0246 187.445 3.94443 203 2' stroke='%23FF6600' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E");
	background-size: contain;
	background-repeat: no-repeat;
}

/* Trust strip */
.jh-vps-trust {
	display: flex;
	gap: 30px;
	flex-wrap: wrap;
	font-size: 15px;
	font-weight: 500;
	color: #293181;
}
.jh-vps-trust-item {
	display: inline-flex;
	align-items: center;
	gap: 8px;
}

/* Hero headline underline bar (Claude uses a straight skewed orange stroke) */
.jh-vps-hero .kt-highlight::after {
	display: none;
}
.jh-vps-rule {
	display: block;
	height: 3px;
	width: 180px;
	background: #fe6400;
	border-radius: 2px;
	transform: skew(-6deg);
	margin: 18px 0 0;
}
/* Hero eyebrow is lowercase in the Claude design */
.jh-vps-hero .has-overline-font-size {
	text-transform: lowercase !important;
	letter-spacing: 0.45em !important;
}

/* Hero visual: photo + terminal + floating chips */
.jh-vps-hero-visual {
	position: relative;
	height: 600px;
}
.jh-vps-hero-img {
	position: absolute;
	inset: 40px 0 40px 40px;
	border-radius: 7px;
	background-size: cover;
	background-position: center;
	box-shadow: 0 14px 28px -8px rgba(0, 0, 0, 0.18);
}
.jh-vps-term {
	position: absolute;
	left: -30px;
	bottom: 20px;
	width: 380px;
	border-radius: 7px;
	overflow: hidden;
	background: #1a1f3d;
	box-shadow: 0 14px 28px -6px rgba(0, 0, 0, 0.35);
	font-family: ui-monospace, Menlo, Consolas, monospace;
}
.jh-vps-term-bar {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: 10px 14px;
	background: #0f1330;
}
.jh-vps-dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
}
.jh-vps-term-host {
	margin-left: 12px;
	font-size: 12px;
	color: #8693ab;
}
.jh-vps-term-body {
	padding: 16px 18px;
	font-size: 13px;
	line-height: 1.6;
	color: #eaf1f9;
}
.jh-vps-term-g {
	color: #23de84;
}
.jh-vps-term-b {
	color: #92adce;
}
.jh-vps-term-o {
	color: #fe6400;
}
.jh-vps-term-cursor {
	background: #fe6400;
	color: #fff;
	padding: 0 3px;
}
.jh-vps-chip {
	position: absolute;
	display: inline-flex;
	border-radius: 7px;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
}
.jh-vps-chip-1 {
	top: 20px;
	right: -40px;
}
.jh-vps-chip-2 {
	top: 230px;
	right: -20px;
}
.jh-vps-chip-3 {
	top: 440px;
	right: 30px;
}
.jh-vps-chip-ico {
	width: 86px;
	height: 86px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.jh-vps-chip-txt {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 170px;
	padding: 0 22px;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.3;
	color: #293181;
}

/* Plans grid + cards */
.jh-vps-plans-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
}
.jh-vps-plan {
	position: relative;
	display: flex;
	flex-direction: column;
	background: #eaf1f9;
	border: 2px solid transparent;
	border-radius: 10px;
	padding: 40px 28px 28px;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}
.jh-vps-plan:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 28px -8px rgba(254, 100, 0, 0.25);
}
.jh-vps-plan.is-popular {
	background: #fff;
	border-color: #fe6400;
	box-shadow: 0 18px 36px -10px rgba(41, 49, 129, 0.28);
}
.jh-vps-plan-tab {
	position: absolute;
	top: -15px;
	left: 50%;
	transform: translateX(-50%);
	background: #fe6400;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 6px 20px;
	border-radius: 7px 7px 0 0;
	white-space: nowrap;
}
.jh-vps-plan-name {
	font-size: 27px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #293181;
	text-align: center;
}
.jh-vps-plan-sub {
	margin-top: 8px;
	min-height: 40px;
	font-size: 14px;
	line-height: 1.4;
	color: #4a5578;
	text-align: center;
}
.jh-vps-plan-pill-row {
	display: flex;
	justify-content: center;
	margin-top: 18px;
}
.jh-vps-plan-pill {
	border: 1.5px solid #92adce;
	color: #293181;
	font-size: 14px;
	font-weight: 600;
	padding: 7px 18px;
	border-radius: 8px;
}
.jh-vps-price {
	text-align: center;
	margin-top: 16px;
}
.jh-vps-price-int {
	font-size: 44px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #293181;
}
.jh-vps-price-cents {
	font-size: 22px;
	font-weight: 700;
	vertical-align: super;
	color: #293181;
}
.jh-vps-price-mo {
	font-size: 19px;
	font-weight: 600;
	color: #293181;
}
.jh-vps-plan-regular {
	text-align: center;
	margin-top: 6px;
	min-height: 30px;
	font-size: 13px;
	color: #4a5578;
}
.jh-vps-strike {
	text-decoration: line-through;
}
.jh-vps-choose {
	display: block;
	margin-top: 16px;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	font-size: 16px;
	font-weight: 700;
	padding: 12px 0;
	border-radius: 7px;
	border: 2px solid #fe6400;
	background: transparent;
	color: #fe6400;
	transition:
		background 0.15s ease,
		color 0.15s ease;
}
.jh-vps-choose:hover,
.jh-vps-plan.is-popular .jh-vps-choose {
	background: #fe6400;
	color: #fff;
}
.jh-vps-fine {
	margin-top: 14px;
	font-size: 12px;
	line-height: 1.5;
	color: #7a839a;
}
.jh-vps-feat {
	margin-top: 16px;
}
.jh-vps-feat-head {
	margin: 16px 0 4px;
	font-size: 14px;
	font-weight: 700;
	color: #293181;
}
.jh-vps-feat-row {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px dashed rgba(37, 48, 130, 0.16);
	font-size: 14.5px;
	line-height: 1.35;
	color: #293181;
}
.jh-vps-feat-row:last-child {
	border-bottom: none;
}
.jh-vps-feat-row svg {
	flex-shrink: 0;
	margin-top: 3px;
}

/* Plans slider (swipeable; the row of Kadence pricing cards scrolls horizontally) */
.jh-vps-plans-slider {
	position: relative;
	max-width: 1500px;
	margin-left: auto;
	margin-right: auto;
}
.jh-vps-plans-slider > .kt-row-column-wrap {
	display: flex !important;
	grid-template-columns: none !important;
	flex-wrap: nowrap !important;
	max-width: none !important;
	gap: 20px;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-snap-type: x proximity;
	padding: 10px 4px 20px;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.jh-vps-plans-slider > .kt-row-column-wrap::-webkit-scrollbar {
	display: none;
}
.jh-vps-plans-slider > .kt-row-column-wrap > .wp-block-kadence-column {
	flex: 0 0 360px !important;
	width: 360px !important;
	max-width: 360px !important;
	min-width: 0 !important;
	scroll-snap-align: center;
}
.jh-vps-slider-arrow {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #fff;
	border: none;
	box-shadow: 0 7px 18px rgba(41, 49, 129, 0.18);
	cursor: pointer;
	z-index: 6;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #293181;
}
.jh-vps-slider-prev {
	left: -16px;
}
.jh-vps-slider-next {
	right: -16px;
}
.jh-vps-slider-arrow[disabled] {
	opacity: 0.35;
	cursor: default;
}
.jh-vps-slider-dots {
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-top: 16px;
}
.jh-vps-slider-dot {
	width: 10px;
	height: 10px;
	border-radius: 999px;
	border: none;
	cursor: pointer;
	padding: 0;
	background: #c3ccdd;
	transition:
		width 0.2s ease,
		background 0.2s ease;
}
.jh-vps-slider-dot.is-active {
	width: 28px;
	background: #fe6400;
}
@media only screen and (max-width: 1024px) {
	.jh-vps-plans-slider > .kt-row-column-wrap > .wp-block-kadence-column {
		flex-basis: 340px !important;
		width: 340px !important;
		max-width: 340px !important;
	}
}
@media only screen and (max-width: 900px) {
	.jh-vps-slider-arrow {
		display: none;
	}
}
@media only screen and (max-width: 600px) {
	.jh-vps-plans-slider > .kt-row-column-wrap > .wp-block-kadence-column {
		flex-basis: 85vw !important;
		width: 85vw !important;
		max-width: 85vw !important;
	}
}

/* Advantages grid */
.jh-vps-adv-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}
.jh-vps-adv {
	background: #fff;
	border-radius: 7px;
	padding: 30px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.06);
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease;
}
.jh-vps-adv:hover {
	transform: translateY(-3px);
	box-shadow: 0 14px 28px -8px rgba(0, 0, 0, 0.14);
}
.jh-vps-adv-ico {
	width: 88px;
	height: 88px;
	border-radius: 7px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
}
.jh-vps-adv-title {
	margin-top: 20px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.02em;
	color: #293181;
}
.jh-vps-adv-body {
	margin: 12px 0 0;
	font-size: 16px;
	line-height: 1.45;
	color: #293181;
}

/* Use-case tiles */
.jh-vps-uc-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.jh-vps-uc {
	display: flex;
	flex-direction: column;
	gap: 16px;
	background: #fff;
	border-radius: 7px;
	padding: 32px 30px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.1);
	transition: transform 0.2s ease;
}
.jh-vps-uc:hover {
	transform: translateY(-3px);
}
.jh-vps-uc-ico {
	width: 60px;
	height: 60px;
	border-radius: 7px;
	background: #293181;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.jh-vps-uc-title {
	font-size: 23px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #293181;
}
.jh-vps-uc-body {
	margin: 0;
	flex: 1;
	font-size: var(--wp--preset--font-size--body-text-1) !important;
	line-height: 1.45;
	color: #293181;
}
.jh-vps-uc-tags {
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}
.jh-vps-uc-tag {
	font-size: 12px;
	font-weight: 600;
	background: #f7f8fa;
	color: #293181;
	padding: 5px 10px;
	border-radius: 999px;
}

/* OS distro cards */
.jh-vps-os-grid {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
	align-items: start;
}
.jh-vps-os {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	gap: 16px;
	background: #fff;
	border-radius: 10px;
	padding: 26px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.06);
	transition: transform 0.2s ease;
}
.jh-vps-os:hover {
	transform: translateY(-3px);
}
.jh-vps-os-logo {
	width: 40px;
	height: 40px;
	object-fit: contain;
}
.jh-vps-os-name {
	font-size: 19px;
	font-weight: 700;
	letter-spacing: -0.02em;
	color: #293181;
}
.jh-vps-os-vers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
}
.jh-vps-os-v {
	font-size: 14px;
	font-weight: 600;
	color: #293181;
	background: #eaf1f9;
	padding: 6px 13px;
	border-radius: 999px;
}

/* Control-panel tiles */
.jh-vps-cp-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}
.jh-vps-cp {
	display: flex;
	flex-direction: column;
	gap: 8px;
	background: #fff;
	border-radius: 10px;
	padding: 24px;
	box-shadow: 0 7px 7px rgba(0, 0, 0, 0.06);
	transition: transform 0.2s ease;
}
.jh-vps-cp:hover {
	transform: translateY(-3px);
}
.jh-vps-cp-head {
	display: flex;
	align-items: center;
	gap: 10px;
}
.jh-vps-cp-ico {
	display: flex;
	flex-shrink: 0;
}
.jh-vps-cp-title {
	font-size: 18px;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: #293181;
}
.jh-vps-cp-desc {
	font-size: 14px;
	line-height: 1.45;
	color: #4a5578;
}

/* Responsive */
@media only screen and (max-width: 1200px) {
	.jh-vps-adv-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.jh-vps-os-grid {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media only screen and (max-width: 1024px) {
	.jh-vps-plans-grid,
	.jh-vps-uc-grid,
	.jh-vps-cp-grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media only screen and (max-width: 900px) {
	.jh-vps-hero-visual {
		height: auto;
		display: flex;
		flex-direction: column;
		gap: 16px;
	}
	.jh-vps-hero-img {
		position: relative;
		inset: auto;
		width: 100%;
		height: 300px;
	}
	.jh-vps-term {
		position: relative;
		left: 0;
		bottom: auto;
		width: 100%;
		max-width: none;
	}
	.jh-vps-chip {
		position: relative;
		top: auto;
		right: auto;
	}
}
@media only screen and (max-width: 768px) {
	.jh-vps-plans-grid,
	.jh-vps-adv-grid,
	.jh-vps-uc-grid,
	.jh-vps-os-grid,
	.jh-vps-cp-grid {
		grid-template-columns: 1fr;
	}
}

.jet-pricing-container-vps .slick-prev,
.jet-pricing-container-vps .slick-next {
	top: 50%;
	cursor: pointer;
}

/* --- White circle arrows --- */
.jet-pricing-container-vps .slick-prev,
.jet-pricing-container-vps .slick-next {
	width: 56px;
	height: 56px;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 4px 14px rgba(30, 35, 90, 0.18);
	top: 50%;
	transform: translateY(-50%);
	z-index: 10;
	transition: box-shadow 0.25s ease, background 0.25s ease;
}

/* Kill slick's default font-icon arrow */
.jet-pricing-container-vps .slick-prev:before,
.jet-pricing-container-vps .slick-next:before {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	border-left: 3px solid #2b2e83;   /* chevron color from your image */
	border-bottom: 3px solid #2b2e83;
	border-radius: 1px;
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 1;
	transition: transform 0.25s ease;
}

/* Rotate the L-shape into < and > chevrons */
.jet-pricing-container-vps .slick-prev:before {
	transform: translate(-35%, -50%) rotate(45deg);
}
.jet-pricing-container-vps .slick-next:before {
	transform: translate(-65%, -50%) rotate(-135deg);
}

/* Position circles half-overlapping the slider edges */
.jet-pricing-container-vps .slick-prev {
	left: -28px;
}
.jet-pricing-container-vps .slick-next {
	right: -28px;
}

/* --- Hover: lift + chevron nudge --- */
.jet-pricing-container-vps .slick-prev:hover,
.jet-pricing-container-vps .slick-next:hover {
	background: #fff;
	box-shadow: 0 6px 20px rgba(30, 35, 90, 0.28);
}
.jet-pricing-container-vps .slick-prev:hover:before {
	transform: translate(-50%, -50%) rotate(45deg);   /* nudges left */
}
.jet-pricing-container-vps .slick-next:hover:before {
	transform: translate(-50%, -50%) rotate(-135deg); /* nudges right */
}

/* --- Idle pulse animation (both arrows, more visible) --- */
@keyframes vps-arrow-pulse {
	0% {
		box-shadow: 0 4px 14px rgba(30, 35, 90, 0.18), 0 0 0 0 rgba(43, 46, 131, 0.55);
		transform: translateY(-50%) scale(1);
	}
	50% {
		transform: translateY(-50%) scale(1.06);
	}
	70% {
		box-shadow: 0 4px 14px rgba(30, 35, 90, 0.18), 0 0 0 18px rgba(43, 46, 131, 0);
		transform: translateY(-50%) scale(1);
	}
	100% {
		box-shadow: 0 4px 14px rgba(30, 35, 90, 0.18), 0 0 0 0 rgba(43, 46, 131, 0);
		transform: translateY(-50%) scale(1);
	}
}

.jet-pricing-container-vps .slick-prev,
.jet-pricing-container-vps .slick-next {
	animation: vps-arrow-pulse 2s ease-out infinite;
}

.jet-pricing-container-vps .slick-prev:hover,
.jet-pricing-container-vps .slick-next:hover {
	animation: none;
}

/* --- Disabled state (first/last slide with infinite: false) --- */
.jet-pricing-container-vps .slick-disabled {
	opacity: 0.4;
	animation: none;
	pointer-events: none;
}

.jet-pricing-container-vps .slick-dots {
	display: flex !important;
	justify-content: center;
	align-items: center;
	gap: 10px;
	list-style: none;
	margin: 24px 0 0;
	padding: 0;
	position: static;   /* slick defaults to absolute; static keeps it in flow below the slider */
}

.jet-pricing-container-vps .slick-dots li {
	width: auto;
	height: auto;
	margin: 0;
}

.jet-pricing-container-vps .slick-dots li button {
	display: block;
	width: 9px;
	height: 9px;
	padding: 0;
	border: none;
	border-radius: 5px;
	background: #b9bfd3;               /* soft gray-blue like your image */
	font-size: 0;                       /* hides slick's default "1", "2"... text */
	cursor: pointer;
	transition: width 0.3s ease, background 0.3s ease;
}

/* Remove slick's default ::before dot glyph */
.jet-pricing-container-vps .slick-dots li button:before {
	display: none;
}

.jet-pricing-container-vps .slick-dots li button:hover {
	background: #8f97b3;
}

/* Active dot → orange pill */
.jet-pricing-container-vps .slick-dots li.slick-active button {
	width: 26px;
	background: #ff6a00;
}
/* ==========================================================================
   VPS promo -30% (draft page "VPS — Промо -30%")
   Design: claude.ai/design → "VPS промоция -30%" / "Промо върху страницата"
   (approach 1a). Renders only on pages that carry the .jhvp-* markup.
   ========================================================================== */
.jh-vps [class^="jhvp-"],
.jh-vps [class*=" jhvp-"] {
	box-sizing: border-box;
}

/* 01 — promo bar at the top of the page.
   The design calls for it to replace the site-wide announcement bar
   ("лента най-горе (заменя текущата)"), so on any page that carries the promo
   bar the announcement bar above the content is hidden and the promo bar takes
   its slot above the fixed header overlay. */

.jhvp-bar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 12px 22px;
	padding: 15px 24px;
	background: #2b347d;
	text-align: center;
	width: 100%;
}
.jhvp-bar__off {
	flex: none;
	padding: 7px 15px;
	border-radius: 7px;
	background: #f5731f;
	color: #fff;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.2;
}
.jhvp-bar__title {
	color: #fff;
	font-size: 20px;
	font-weight: 700;
}
.jhvp-bar__sub {
	color: #a9b8e0;
	font-size: 18px;
	font-weight: 500;
}
a.jhvp-bar__cta,
a.jhvp-bar__cta:visited {
	padding-bottom: 3px;
	border-bottom: 2px solid #f5731f;
	color: #fff;
	font-size: 17px;
	font-weight: 700;
	text-decoration: none;
}
a.jhvp-bar__cta:hover {
	color: #f5731f;
}

@media only screen and (max-width: 1300px) {
	.jhvp-bar {
		gap: 8px 14px;
		padding: 12px 16px;
	}
	.jhvp-bar__off {
		font-size: 15px;
		padding: 5px 11px;
	}
	.jhvp-bar__title {
		font-size: 16px;
	}
	.jhvp-bar__sub {
		font-size: 14px;
	}
	a.jhvp-bar__cta {
		font-size: 15px;
	}
}

/* 02 — "-30%" stamp over the hero visual */
.jh-vps .jhvp-stamp-host > .kt-inside-inner-col {
	position: relative;
}
.jhvp-stamp {
	position: absolute;
	z-index: 5;
	top: 60px;
	left: -40px;
	width: 265px;
	height: 265px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.jhvp-stamp__disc {
	position: absolute;
	inset: 0;
	border-radius: 999px;
	background: #f5731f;
	transform: rotate(-10deg);
	box-shadow: 0 20px 46px rgba(245, 115, 31, 0.4);
}
.jhvp-stamp__ring {
	position: absolute;
	inset: 13px;
	border-radius: 999px;
	border: 2px dashed rgba(255, 255, 255, 0.5);
	transform: rotate(-10deg);
}
.jhvp-stamp__txt {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	transform: rotate(-10deg);
	color: #fff;
	text-align: center;
}
.jhvp-stamp__kicker {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}
.jhvp-stamp__pct {
	font-size: 76px;
	font-weight: 800;
	line-height: 0.95;
	letter-spacing: -0.03em;
}
.jhvp-stamp__for {
	max-width: 175px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.3;
}
.jhvp-stamp__till {
	margin-top: 8px;
	padding: 5px 14px;
	border-radius: 999px;
	background: #22357f;
	font-size: 18px;
	font-weight: 700;
}

@media only screen and (max-width: 1200px) {
	.jhvp-stamp {
		top: 30px;
		left: -30px;
		width: 200px;
		height: 200px;
	}
	.jhvp-stamp__pct {
		font-size: 56px;
	}
	.jhvp-stamp__kicker,
	.jhvp-stamp__for {
		font-size: 12px;
	}
	.jhvp-stamp__till {
		margin-top: 6px;
		font-size: 11px;
		padding: 4px 11px;
	}
}

@media only screen and (max-width: 700px) {
	.jhvp-stamp {
		top: 8px;
		left: auto;
		right: 4px;
		width: 145px;
		height: 145px;
	}
	.jhvp-stamp__pct {
		font-size: 42px;
	}
	.jhvp-stamp__kicker,
	.jhvp-stamp__for {
		font-size: 10px;
	}
	.jhvp-stamp__for {
		max-width: 115px;
	}
	.jhvp-stamp__till {
		margin-top: 4px;
		padding: 3px 9px;
		font-size: 9px;
	}
}

/* 03 — plan cards: "-30% ДО 30.09" ribbon + was/now price */
.jh-vps .jhvp-plan {
	position: relative;
}
.jh-vps .jhvp-plan > .kt-inside-inner-col {
	padding-top: 62px;
}
.jhvp-ribbon {
	position: absolute;
	z-index: 4;
	top: -26px;
	right: 14px;
	padding: 8px 14px;
	border-radius: 7px;
	background: #f5731f;
	box-shadow: 0 8px 18px rgba(245, 115, 31, 0.35);
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.06em;
	white-space: nowrap;
}

.jhvp-price {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 2px;
	margin: 0;
}
.jhvp-price__was {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin: 0;
}
.jh-vps .jhvp-price .price-amount {
	white-space: nowrap;
}
.jh-vps .jhvp-price__was .price-amount {
	color: #8493b0;
	font-size: 19px;
	font-weight: 500;
	line-height: 1.2;
	text-decoration: line-through;
}
.jhvp-price__off {
	padding: 4px 8px;
	border-radius: 5px;
	background: #fde7d6;
	color: #c4551a;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}
.jhvp-price__note {
	margin: 4px 0 0;
	color: #45536f;
	font-size: 13px;
	line-height: 1.4;
	text-align: center;
}

@media only screen and (max-width: 1400px) {
	.jhvp-ribbon {
		top: -18px;
		padding: 7px 11px;
		font-size: 12px;
	}
	.jh-vps .jhvp-plan > .kt-inside-inner-col {
		padding-top: 56px;
	}
}

/* 04 — promo terms section under the plans */
.jhvp-terms {
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	padding: 64px 72px;
	border-radius: 8px;
	background: #22357f;
	box-shadow: 0 24px 60px rgba(34, 53, 127, 0.18);
}
/* Soft orange glow in the corner, in the same idiom as .jet-blur-background */
.jhvp-terms::before {
	content: "";
	position: absolute;
	top: -180px;
	right: -180px;
	width: 560px;
	height: 560px;
	border-radius: 999px;
	background: radial-gradient(circle, rgba(245, 115, 31, 0.5) 0%, transparent 70%);
	filter: blur(90px);
	opacity: 0.6;
	pointer-events: none;
}
.jhvp-terms__inner {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 64px;
	align-items: center;
	max-width: 1600px;
	margin: 0 auto;
}
.jhvp-terms__main {
	display: flex;
	flex-direction: column;
	gap: 22px;
}
.jhvp-terms__pill {
	align-self: flex-start;
	padding: 9px 18px;
	border-radius: 999px;
	background: #f5731f;
	color: #fff;
	font-size: 14px;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}
.jhvp-terms__title {
	margin: 0;
	color: #fff;
	font-size: clamp(2rem, 1.5rem + 2vw, 3.125rem);
	font-weight: 800;
	line-height: 1.1;
	letter-spacing: -0.02em;
}
.jhvp-terms__title span {
	color: #f5731f;
}
.jhvp-terms__lead {
	margin: 0;
	max-width: 520px;
	color: #c6d2ee;
	font-size: 19px;
	line-height: 1.6;
}
.jhvp-terms__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	margin: 4px 0 0;
	padding: 0;
	list-style: none;
}
.jhvp-terms__list li {
	display: flex;
	align-items: center;
	gap: 14px;
	color: #fff;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.45;
}
.jhvp-terms__check {
	flex: none;
	width: 26px;
	height: 26px;
	border-radius: 999px;
	background: #3bb273;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M4 8.4l2.6 2.6L12 5.6' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
}
.jhvp-terms__card {
	display: flex;
	flex-direction: column;
	gap: 26px;
	padding: 42px;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.06);
}
.jhvp-terms__cardtext {
	margin: 0;
	color: #fff;
	font-size: 21px;
	font-weight: 500;
	line-height: 1.55;
}
a.jhvp-terms__cta,
a.jhvp-terms__cta:visited {
	padding: 20px 24px;
	border-radius: 8px;
	background: #f5731f;
	color: #fff;
	font-size: 19px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	transition: background 0.25s ease;
}
a.jhvp-terms__cta:hover {
	background: #fff;
	color: #f5731f;
}
.jhvp-terms__fine {
	margin: 0;
	color: #93a4d2;
	font-size: 13px;
	line-height: 1.5;
}

@media only screen and (max-width: 1000px) {
	.jhvp-terms {
		padding: 40px 20px;
		border-radius: 0;
	}
	.jhvp-terms__inner {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.jhvp-terms__card {
		padding: 26px;
	}
	.jhvp-terms__cardtext {
		font-size: 18px;
	}
	.jhvp-terms__lead,
	.jhvp-terms__list li {
		font-size: 16px;
	}
}

/* ============================================================
   Server technologies section (Managed VPS) — jh-tech-*
   Panel, headers and text are native blocks; these classes
   style only what blocks can't express (pill chrome, divider,
   mono type).
   ============================================================ */

.jh-tech-pill {
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.11);
	border-radius: 999px;
	padding: 17px 26px;
}

.jh-tech-pill img {
	display: block;
	width: 30px;
	height: 30px;
}

.jh-tech-mono {
	font-family: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

/* Vertical divider between the two tech columns */
.jh-tech-divider > .kt-inside-inner-col {
	border-left: 1px solid rgba(255, 255, 255, 0.09);
	padding-left: 64px;
}

@media only screen and (max-width: 767px) {
	.jh-tech-divider > .kt-inside-inner-col {
		border-left: 0;
		padding-left: 0;
	}
}