:root {
	--blue: #00A3B9;
	--blue-hover: #03bcd5;

	--red: #BB0C0C;
	--red-hover: #E31313;

	--orange: #FF7300;
	--orange-hover: #ff811a;

	--green: #5BA61F;
	--green-hover: #6CBF28;

	--dark-bg: #141414;
	--light-bg: #F6F6F6;

	--header: #000;
	--text: #323232;
	--strong: #000;
	--body: #fff;

	--borders: #cccccc;
}

/* Eric Meyer's CSS Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* End of Eric Meyer's CSS Reset */

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}

body {
	font-family: 'DM Sans', 'Inter', Verdana, Arial, Helvetica, sans-serif;
	font-size: 15px;
	line-height: 24px;
	color: var(--text);
	font-weight: 300;
	background: var(--body-bg);
}

.wrapper {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}

p {
	padding-bottom: 20px;
}

h1,
h2,
h3,
h4,
h5 {
	color: var(--header);
	font-weight: 400;
	font-family: "DM Sans",sans-serif;
}

img {
	line-height: 1;
	vertical-align: bottom;
}

h1 {
	font-size: 44px;
	line-height: 50px;
	letter-spacing: 1px;
}

h2 {
	font-size: 36px;
	line-height: 44px;
	padding-bottom: 8px;
	letter-spacing: 0.5px;
}

h3 {
	font-size: 24px;
	line-height: 34px;
}

h4 {
	font-size: 20px;
	line-height: 30px;
	font-weight: 500;
}

h5 {
	font-size: 16px;
	line-height: 26px;
	font-weight: 600;
}

a {
	color: var(--red);
	font-weight: 500;
	text-decoration: none;
}

a:hover,
a:active,
a:focus {
	color: var(--red-hover);
	text-decoration: none;
}

section {
	padding: 88px 0px;
}

.semibold {
	font-weight: 500;
}

.bold {
	font-weight: 600;
}

.extrabold {
	font-weight: 700;
}

.black {
	font-weight: 900;
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.clearfix:after,
.container:after,
.support-option-list:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0
}

.container {
	max-width: 1280px;
	width: 100%;
	margin: 0 auto;
}

strong {
	color: var(--strong);
	font-weight: 500;
}

*:hover {
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

p {
	padding-bottom: 20px;
}

.title {
	padding-bottom: 40px;
	text-align: center;
	margin-top: -6px;
}

.title p {
	font-size: 18px;
	line-height: 28px;
	max-width: 760px;
	margin: 0 auto;
	padding-bottom: 0px;
	padding-top: 6px;
}

h2 small {
	display: block;
	font-size: 13px;
	line-height: 24px;
	font-weight: 600;
	opacity: 0.5;
	padding-bottom: 6px;
	letter-spacing: 1.5px;
}

.titleleft {
	text-align: left !important;
}

.button {
	padding: 0px 24px;
	display: inline-block;
	height: 48px;
	line-height: 48px;
	color: #fff !important;
	background: var(--red);
	font-size: 15px;
	font-weight: 600;

	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.05);
	border-radius: 6px;
}

.button:hover {
	color: #fff !important;
	text-decoration: none;
	background: var(--red-hover);
}

.button .fa-arrow-right,
.button .fa-arrow-right-long,
.button .fa-arrow-up-right,
.button .fa-chevron-right {
	transition: transform .2s ease;
}

.button:hover .fa-arrow-right,
.button:hover .fa-arrow-right-long,
.button:hover .fa-arrow-up-right,
.button:hover .fa-chevron-right,
.button:focus .fa-arrow-right,
.button:focus .fa-arrow-right-long,
.button:focus .fa-arrow-up-right,
.button:focus .fa-chevron-right {
	transform: translateX(2px);
}

.button:focus {
	transform: scale(0.97);
	outline: none;
}

.button.outline {
	background: transparent;
	box-shadow: none;
	border: 1px solid rgba(0,0,0,0.25);
	color: #000 !important;
	line-height: 46px;
}

.button.outline:hover {
	background: rgba(0,0,0,0.05);
	color: #000 !important;
	box-shadow: none;
	border: 1px solid rgba(0,0,0,0.35);
}

.button.outlinewhite {
	border: 1px solid rgba(255,255,255,0.15);
	color: #fff !important;
}
.button.outlinewhite:hover {
	color: #fff !important;
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(255,255,255,0.25);
}

.button.secondary {
	background: var(--green);
}

.button.secondary:hover {
	background: var(--green-hover);
}

.button.disabled {
	cursor: not-allowed;
	opacity: 0.5;
}

.button.disabled:hover {
	opacity: 0.7;
}

.button.dark {
	background: #151515;
}

.button.dark:hover {
	background: #1b1b1b;
}

.button.lg {
	height: 60px;
	line-height: 60px;
	padding: 0px 28px;
}

.rounded-button {
	border-radius: 60px;
}

.relative {
	position: relative;
}
.header .button {
	height: 40px;
	line-height: 40px;
	padding: 0px 20px;
}

.header .button.outline {
	line-height: 38px;
}

.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}

.text-left {
	text-align: left;
}

.text-red {color:var(--red) !important;}
.text-blue {color:var(--blue) !important;}
.text-orange {color:var(--orange) !important;}
.text-green {color:var(--green) !important;}

.text-lg {
	font-size: 1.25rem;
	line-height: 1.75rem;
}

.text-md {
	font-size: 1.125rem;
	line-height: 1.5rem;
}

.width-50 {
	width: 50%;
}

.width-66 {
	width: 66.6667%;
}

.width-75 {
	width: 75%;
}

.width-75 {
	width: 100%;
}

.pull-left-img {
	float: left;
	margin-right: 2rem;
}

.text-left {
	text-align: left;
}

.inline-block {
	display: inline-block;
}

.block {
	display: block;
}

.mt-8 {
	margin-top: 8rem;
}

.mt-7 {
	margin-top: 7rem;
}

.mt-6 {
	margin-top: 6.25rem;
}

.text-sm {
	font-size: 0.75rem;
}

.mute {
	opacity: 0.75;
}

.opacity-25 {
	opacity: 0.25;
}

.opacity-50 {
	opacity: 0.5;
}

.opacity-75 {
	opacity: 0.75;
}

.va-sub {
	vertical-align: sub;
}

.va-mid {
	vertical-align: middle;
}

.va-top {
	vertical-align: top;
}

.va-base {
	vertical-align: baseline;
}

.va-bot {
	vertical-align: bottom;
}

.pull-right {float:right;}
.pull-left {float:left;}

.header {
	padding: 20px 0px;
}

.header a {
	color: #000;
	font-style: normal;
}

.header a:hover {
	color: var(--red-hover);
}

.header ul {
	float: left;
}

.header ul li {
	float: left;
	line-height: 40px;
	padding: 0px 18px;
}

.logo {
	margin-top: 2px;
}

#header-buttons li {
	padding: 0px 12px 0px 0px;
}

#header-buttons li:nth-last-child(1) {
	padding-right: 0px;
}

.font-10 {font-size:10px;line-height:20px;}
.font-11 {font-size:11px;line-height:20px;}
.font-12 {font-size:12px;line-height:20px;}
.font-13 {font-size:13px;line-height:22px;}
.font-14 {font-size:14px;line-height:22px;}
.font-15 {font-size:15px;line-height:24px;}
.font-16 {font-size:16px;line-height:24px;}
.font-17 {font-size:17px;line-height:26px;}
.font-18 {font-size:18px;line-height:26px;}
.font-20 {font-size:20px;line-height:30px;}
.font-22 {font-size:22px;line-height:32px;}
.font-24 {font-size:24px;line-height:34px;}
.font-26 {font-size:26px;line-height:36px;}
.font-30 {font-size:30px;line-height:40px;}
.font-32 {font-size:32px;line-height:40px;}
.font-36 {font-size:36px;line-height:44px;}
.font-54 {font-size:54px;line-height:62px;}

#banner-shared {background-image:linear-gradient(90deg, rgba(19,19,19,1) 0%, rgba(19,19,19,1) 28%, rgba(19,19,19,.96) 42%, rgba(19,19,19,.72) 58%, rgba(19,19,19,.28) 78%, rgba(19,19,19,.10) 100%),url('../images/banner-shared.png');background-position:center,center right;background-repeat:no-repeat;background-size:cover;background-color:var(--dark-bg);}
#banner-reseller {background:url('../images/banner-reseller.png') center right no-repeat var(--dark-bg);}
#banner-dedicated {background:url('../images/banner-servers.png') center right no-repeat var(--dark-bg);}
#banner-wordpress {background:url('../images/banner-wordpress.png') center right no-repeat var(--dark-bg);}
#banner-domains {background:url('../images/banner-domains.png') center right no-repeat var(--dark-bg);}
#banner-about {background:url('../images/banner-about.png') center right no-repeat var(--dark-bg); background-size:contain; min-height:auto !important;}
#banner-vps {background:url('../images/banner-vps.png') center right no-repeat var(--dark-bg); min-height:auto !important;}
#banner-network {background:url('../images/banner-network.png') center center no-repeat var(--dark-bg);background-size:cover;}
#banner-network .row.pb-5 > .col h2 {font-size:40px;line-height:50px;}

.hero {
	background: radial-gradient(57.83% 222.3% at 8.12% 20.64%, rgba(255, 255, 255, 0.037) 0%, rgba(11, 11, 11, 0) 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #131313;
	padding: 0px;
	color: #fff;
	font-size: 19px;
	line-height: 32px;
}

.hero h1, .hero h2, .hero h3, .hero h4, .hero h5 {
	color: #fff;
}

.hero i {
	color: var(--red) !important;
}

.hero .button i,
.banner .button i {
	color: #fff !important;
}

.hero h1 {
	padding-bottom: 12px;
	font-weight: 400;
}

.hero strong {
	font-weight: 700;
	color: #fff;
}

.hero em {
	font-style: italic;
	font-weight: 300;
}

.hero p {
	padding-bottom: 28px;
}

.hero .button {
	height: 52px;
	line-height: 52px;
}

.subhero {
	min-height: 420px;
	padding-top: 90px;
	padding-bottom: 90px;
}

.banner-list i {
	width: 24px;
	text-align: center;
}

.center-vertically {
	position: absolute;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
}

.ifix {
	padding-bottom: 2px;
}

.hero-trustpilot {
	font-size: 13px;
	display: block;
	padding-bottom: 15px;
}

.label {
	background: rgb(187, 12, 12,0.1);
	border-radius: 5px;
	height: 20px;
	padding: 0px 8px;
	line-height: 20px;
	padding-top: 1px;
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.2px;
	text-transform: uppercase;
	display: inline-block;
	color: var(--red);
}

.label-solid-blue {
	background: var(--blue);
	color: #fff;
}

.label-blue {
	background: rgba(0, 206, 233,0.2);
	color: var(--blue);
}

.label-green {
	background: rgba(146, 202, 101, 0.25);
	color: var(--green);
}

.label-orange {
	background: rgba(255, 189, 135,0.25);
	color: var(--orange);
}

.label-red {
	background: rgba(187, 12, 12,0.1);
	color: var(--red);
}

.service-box-with-bottom {
	padding: 40px 25px 96px 25px;
	position: relative;
	display: block;
	font-weight: 300;
	color: var(--text);
}

.service-box-with-bottom:hover,
.service-box-with-bottom:focus {
	color: var(--text);
	background: rgba(0,0,0,0.03);
	color: #000;
}

.service-box-bottom-link {
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0px;
	width: 100%;
	padding-bottom: 25px;
	padding-left: 25px;
	padding-right: 25px;
	font-weight: 300;
	color: var(--text);
}

.service-box-with-bottom:hover .service-box-bottom-link,
.service-box-with-bottom:focus .service-box-bottom-link {
	color: var(--text);
	color: #000;
}

.service-box-bottom-link strong {
	font-weight: 600;
	color: #000;
}

.service-box-bottom-link i {
	float: right;
	margin-top: 5px;
	font-size: 13px;
}

.border-top {border-top:1px solid #CCCCCC;}
.border-bottom {border-bottom:1px solid #CCCCCC;}
.border-left {border-left:1px solid #CCCCCC;}
.border-right {border-right:1px solid #CCCCCC;}

.service-box-row {
	padding: 0px 12.5px;
}

.service-box-row .col {
	padding: 0px;
}

.label-text {
	font-size: 11px;
	line-height: 20px;
	text-transform: uppercase;
	letter-spacing: 1px;
	font-weight: 600;
	display: block;
	color: var(--text);
	opacity: 0.75;
}

.services-slider{
	display: flex;
	gap: 20px;
}

.panel{
	flex: .4;
	border-radius: 12px;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	background-size: cover;
	background-position: center;
	transition: .6s ease;
	height: 443px;
	color: #fff;
}

.panel.active{
	flex: 5;
}

.panel h1, .panel h2, .panel h3, .panel h4, .panel h5{
	color: #fff;
}

.overlay{
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.35);
}

.panel h5 {
	letter-spacing: 2px;
}

.vertical-title{
	position: absolute;
	left: 25px;
	bottom: 40px;
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	color: #fff;
	font-weight: 600;
	font-size: 14px;
	letter-spacing: 3px;
	transition: .4s;
}

.content{
	position: absolute;
	left: 70px;
	top: 50%;
	transform: translateY(-50%);
	width: 500px;
	color: #fff;
	opacity: 0;
	transition: .35s;
}

.panel.active .content{
	opacity: 1;
	transition-delay: .3s;
}

.panel.active .vertical-title{
	opacity: 0;
}

.reviews{
	overflow: hidden;
}

.marquee{
	overflow: hidden;
	margin: 30px 0;
}

.track{
	display: flex;
	width: max-content;
	gap: 25px;
	animation: scroll-left 40s linear infinite;
}

.reverse .track{
	animation: scroll-right 40s linear infinite;
}

.card{
	width: 100%;
	max-width: 420px;
	padding: 28px 20px 24px 20px;
	background: #F6F6F6;
	border: 1px solid #E1E1E1;
	border-radius: 12px;
}

.card:hover {
    background:#efefef;
}

@keyframes scroll-left{
	from{
		transform: translateX(0);
	}
	to{
		transform: translateX(-50%);
	}
}

@keyframes scroll-right{
	from{
		transform: translateX(-50%);
	}
	to{
		transform: translateX(0);
	}
}

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

.card-title h4 {
	padding: 12px 0px;
	line-height: 24px;
	font-weight: 500;
	font-size: 18px;
}

.testimonial-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	color: #fff;
	font-family: "DM Sans", sans-serif;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .02em;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}

.testimonial-avatar-image {
	display: block;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	object-fit: cover;
	box-shadow: inset 0 0 0 1px rgba(255,255,255,.2);
}

.trustpilot-review-title {
	display: block;
	color: var(--header);
}

.trustpilot-review-stars {
	display: block;
	width: 109px;
	height: 20px;
	margin: 9px 0 4px;
}

.testimonial-avatar.avatar-red { background: #c90d11; }
.testimonial-avatar.avatar-blue { background: #3267a8; }
.testimonial-avatar.avatar-green { background: #2c8067; }
.testimonial-avatar.avatar-purple { background: #7652a8; }
.testimonial-avatar.avatar-orange { background: #c26832; }
.testimonial-avatar.avatar-teal { background: #287b89; }

.underline-link, .underline-link:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
	font-weight: 500;
}

.underline-link:hover i {
	padding-left: 2px;
	transition: all ease-in-out 0.25s;
}

#domain-search {
	background: url('../images/domain-bg.png') no-repeat center center;
	background-size: cover;
}

.dark-bg {
	background: var(--dark-bg);
	color: #C9C9C9;
}

.dark-bg h1, .dark-bg h2, .dark-bg h3, .dark-bg h4, .dark-bg h5, .dark-bg strong {color:#fff;}

.search-box {
	background: linear-gradient(90.53deg, rgb(43, 43, 43,0.6) -8.32%, rgba(20, 20, 20, 0.7) 137.1%);
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 12px;
	max-width: 960px;
	margin: 0px auto;
	padding: 14px !important;
}

.search-box.w-100, .w-100 {
	width: 100% !important;
    max-width:100%;
}

.submitbutton {
	border: 0;
	cursor: pointer;
}

.search-btn {
	border-radius: 0px 8px 8px 0px;
	height: 52px;
}

.tld {
	background: #fff;
	color: #000;
	font-size: 13px;
	display: inline-block;
	padding: 0px 8px;
	font-weight: 700;
	border-radius: 5px;
	margin: 0px 3px;
	line-height: 22px;
	cursor: pointer;
}

.tld:hover {
	background: rgba(255,255,255,0.88);
}

.view-all {
	font-size: 13px;
	font-weight: 600;
	margin-left: 8px;
	display: inline-block;
	line-height: 22px;
	color: #fff;
}

.features .row {
	margin-bottom: -50px;
}

.features .col {
	padding-bottom: 50px;
}

.centered-border {
	width: 1px;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	right: 50%;
	content: " ";
	display: block;
	background:rgba(255, 255, 255, 0.1)
}

.status-online {
	width: 8px;
	height: 8px;
	background: var(--green);
	border-radius: 50%;
	outline: 4px solid rgba(91, 166, 31,0.2);
	margin: 9px 12px 4px 4px;
	float: left;
	position: relative;
}

.status-online::after {
	position: absolute;
	inset: 0;
	border: 2px solid var(--green);
	border-radius: 50%;
	content: "";
	pointer-events: none;
	animation: support-status-pulse 1.8s ease-out infinite;
}

@keyframes support-status-pulse {
	0% {
		opacity: .8;
		transform: scale(.85);
	}
	75%, 100% {
		opacity: 0;
		transform: scale(2.5);
	}
}

.support-option-list {
	padding: 12px 0px;
}

.option-type {
	width: 40%;
	float: left;
}

.option-type i {
	width: 24px;
	font-size: 19px;
	text-align: center;
}

.option-link {
	width: 60%;
	float: right;
}

.option-link a {
	color: #fff;
	text-decoration: underline;
}

.option-link a:hover {
	color: var(--red);
}

#home-cta {
	background: url('../images/support-cta@2x.png') center right no-repeat var(--dark-bg);
	background-size: 50%;
}

.footer {
	background: var(--dark-bg);
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	color: #C9C9C9;
	padding-top: 88px;
	padding-bottom: 24px;
}

.copyright {
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	padding-top: 24px;
	margin-top: 88px;
}

.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer strong {
	color: #fff;
}

#footer-links li {
	padding: 8px 0px;
}

#footer-links strong {
	display: block;
	padding-top: 8px;
	padding-bottom: 8px;
}

.footer-link-arrow {
	display: none;
}

.footer a {
	display: inline-block;
	color: #C9C9C9;
	font-weight: 400;
}

.footer a:hover {
	color: var(--red-hover);
}

.copyright .social {
	line-height: 0;
}

.copyright .social img {
	display: block;
	transition: filter 180ms ease;
}

.copyright .social:hover img,
.copyright .social:focus-visible img {
	filter: brightness(0) saturate(100%) invert(13%) sepia(96%) saturate(5791%) hue-rotate(356deg) brightness(101%) contrast(91%);
}

.copyright .social:focus-visible {
	border-radius: 2px;
	outline: 2px solid var(--red);
	outline-offset: 6px;
}

.footer-reviews {
	padding: 10px 0px 0px 0px;
	border-radius: 12px;
	display: inline-block;
}

.footer-reviews a {
	color: #fff;
	font-weight: 600;
}

.cycle-list {
	background: rgba(217, 217, 217, 0.2);
	border-radius: 48px;
	padding: 4px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	overflow: hidden;
	vertical-align: top;
}

.billing-cycle-select {
	display: none;
}

.compare-tab-list {
	background: rgba(217, 217, 217, 0.2);
	border-radius: 48px;
	padding: 4px;
	height: 48px;
	display: inline-flex;
	align-items: center;
	overflow: hidden;
	vertical-align: top;
}

.compare-tab-list li {
	height: 40px;
	line-height: 40px;
	padding: 0 20px;
	float: none;
	border-radius: 40px;
	color: rgba(50, 50, 50, 0.8);
	font-weight: 500;
	white-space: nowrap;
	cursor: pointer;
	transition: background 160ms ease, color 160ms ease;
}

.compare-tab-list li:hover {
	color: rgba(50, 50, 50, 1);
	background: rgba(217, 217, 217, 0.33);
}

.compare-tab-list li.active {
	background: rgba(217, 217, 217, 0.66);
	color: #000;
}

@media (min-width: 960px) {
	#shared-pricing .billing-cycle-select,
	#vps-pricing .billing-cycle-select {
		display: none !important;
	}

	#shared-pricing .cycle-list,
	.vps-heading .cycle-list {
		display: inline-flex !important;
	}
}

.cycle-list li {
	height: 40px;
	line-height: 40px;
	padding: 0px 20px;
	float: none;
	max-width: 220px;
	overflow: hidden;
	border-radius: 40px;
	color: rgba(50, 50, 50,0.8);
	font-weight: 500;
	white-space: nowrap;
	cursor: pointer;
	transition: max-width 220ms ease, padding 220ms ease, opacity 160ms ease, transform 220ms ease;
}

.cycle-list .cycle-long-option,
.cycle-list .cycle-long-close {
	max-width: 0;
	padding-left: 0;
	padding-right: 0;
	opacity: 0;
	transform: translateX(12px);
	pointer-events: none;
}

.cycle-list.long-cycle-open .cycle-standard,
.cycle-list.long-cycle-open .cycle-long-trigger {
	max-width: 0;
	padding-left: 0;
	padding-right: 0;
	opacity: 0;
	transform: translateX(-12px);
	pointer-events: none;
}

.cycle-list.long-cycle-open .cycle-long-option {
	max-width: 190px;
	padding-left: 20px;
	padding-right: 20px;
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto;
}

.cycle-list.long-cycle-open .cycle-long-close {
	max-width: 52px;
	padding-left: 15px;
	padding-right: 15px;
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto;
}

.cycle-list .cycle-long-close {
	font-size: 18px;
}

.cycle-list .cycle-long-close:hover,
.cycle-list .cycle-long-close:focus-visible {
	color: var(--red);
}

.cycle-list li:hover {
	color: rgba(50, 50, 50,1);
	background: rgba(217, 217, 217, 0.33);
}

.cycle-list li.active {
	background: rgba(217, 217, 217, 0.66);
	color: #000;
}

.discount {
	background: #fff;
	border-radius: 24px;
	height: 24px;
	float: right;
	margin-left: 12px;
	margin-right: -12px;
	margin-top: 8px;
	font-size: 11px;
	color: var(--green);
	padding: 0px 8px;
	line-height: 24px;
}

.form-control {
	border: 1px solid #CCCCCC;
	border-radius: 6px;
	height: 48px;
	line-height: 24px;
	padding: 0px 16px;
	font-family: "DM Sans",sans-serif;
	font-size: 15px;
	color: var(--text);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

select.form-control {
	background: url('../images/select-down.svg') center right 16px no-repeat #FFFFFF;
    padding-right:48px;
}

.search-box .form-control {
	background: #fff;
	border: none;
	color: #000;
	height: 52px !important;
	line-height: 24px;
	height: 52px;
	padding: 0px 20px;
	font-family: "DM Sans",sans-serif;
	font-size: 15px;
	border-radius: 8px 0px 0px 8px;
	display: block;
	width: 100%;
}

.choose-location  {
	float: right;
	margin-left: 50px;
	display: inline-block;
}

.choose-location li {
	display: inline-block;
}
.choose-location li:nth-child(1) {
	padding-right: 20px;
}

.was-price {
	opacity: 0.5;
	text-decoration: line-through
}

.plan-specs I {
	width: 24px;
	text-align: center;
	margin-right: 12px;
}

.plan-select {
	background: url('../images/select-down.svg') center right 25px no-repeat #FFFFFF;
	margin: 25px -25px;
	width: calc(100% + 50px);
	border: 0px;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	height: 54px;
	line-height: 24px;
	padding: 0px 25px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	color: var(--text);
	font-size: 15px;
	font-family: "DM Sans",sans-serif;
}

#shared-pricing .service-box-with-bottom {
	padding: 35px 25px 30px 25px;
}

.included-list {
	max-width: 800px;
	margin: 0px auto;
	margin-bottom: -12px;
}

.included-list li {
	display: inline-block;
	padding: 12px 20px;
}

.included-list li:nth-last-child(1) {
	display: block;
	clear: both;
}

.light-bg {
	background: var(--light-bg);
}

.less-padding {
	padding: 60px 0px;
}

#trustpilot-slider a {
	color: var(--text);
	text-decoration: underline;
}

#trustpilot-slider a:hover,
#trustpilot-slider a:focus,
#trustpilot-slider a:active {
	color: var(--red);
	text-decoration: underline;
}

#trustpilot-slider .card {
	min-width: 100%;
	width: 100%;
    border-radius:8px !important;
}

#trustpilot-slider .card-title h4 {
	font-size: 15px;
}

.compare-graph {
	border: 1px solid #ccc;
	border-radius: 12px;
	padding: 32px;
}

#graph-title .pull-right {
	line-height: 32px;
}

.compare-bar {
	background: #F7F7F7;
	width: 100%;
	height: 40px;
	line-height: 40px;
	color: var(--text);
	display: block;
	border-radius: 6px;
	margin-bottom: 15px;
}

.compare-name {
	float: left;
	height: 40px;
	line-height: 40px;
	padding: 0px 14px;
	font-weight: 500;
	background: #ECECEC;
	border-radius: 6px 0 0 6px;
	box-sizing: border-box;
	overflow: hidden;
	white-space: nowrap;
	transition: width .75s cubic-bezier(.22, 1, .36, 1);
}

.compare-panel {
	display: none;
}

.compare-panel.active {
	display: block;
}

.graph-title .pull-right {
	line-height: 32px;
}

.js-slider-control {
	display: inline-block;
	transition: opacity .2s ease;
}

.js-slider-control.disabled {
	opacity: .3;
	pointer-events: none;
	cursor: default;
}

.compare-amount {
	padding: 0px 14px;
	float: right;
}

.shockhosting-bar {
	background: var(--red) !important;
	color: #fff;
}

em {
	font-style: italic;
}

.stat-number {
	padding: 8px 24px;
	border-left: 3px solid #000;
}

.stat-number h2 {
	font-size: 30px;
	line-height: 36px;
	padding-bottom: 3px;
	padding-top: 2px;
}

.live-chat-row {
	background: #131313;
}

.live-chat-row .status-online {
	margin-top: 19px;
}

.live-chat-centered {
	display: table;
	margin: 0px auto;
}

#shared-features {
	background: radial-gradient(86.67% 235.21% at 24.11% 17.29%, rgba(255, 255, 255, 0.0655) 0%, rgba(19, 19, 19, 0) 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #131313;
}

#highlighted-features .row .col-lg-4, #highlighted-features .row .col-lg-8 {
	padding: 65px 0px;
}
#highlighted-features h2 {
	font-size: 30px;
	line-height: 38px;
}

.support-stat {
	background: var(--light-bg);
	padding: 20px 24px;
	border-radius: 8px;
	margin-bottom: 20px;
}

.support-stat:hover {
	background: #f0f0f0;
}

.support-stat h3 {
	font-size: 30px;
	line-height: 36px;
}

.support-stat a {
	text-decoration: underline;
}

.filter-row li {
	float: left;
	display: block;
	padding: 12px 16px 6px 16px;
	border-right: 1px solid #ccc;
}

#dedicated-filter ul {
	display: grid;
	grid-template-columns: minmax(180px, 1.25fr) repeat(4, minmax(0, 1fr)) minmax(180px, 1.25fr);
}

#dedicated-filter ul::after {
	display: none;
	content: none;
}

#dedicated-filter li {
	float: none;
	min-width: 0;
}

.filter-row select {
	border: 0px;
	display: block;
	width: 100%;
	height: 36px;
	line-height: 24px;
	padding: 0px 68px 0px 0px;
	font-family: "DM Sans",sans-serif;
	font-size: 15px;
	color: var(--text);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url('../images/select-down.svg') center right 0px no-repeat transparent;
	margin-top: -5px;
}

.filter-row label {
	font-size: 11px;
	font-weight: 500;
	opacity: 0.66;
	display: block;
}

.server-row {
	padding: 35px 0px;
}

#server-pricing .label {
	font-size: 13px;
	text-transform: unset;
	padding: 0px 12px;
	border-radius: 32px;
	font-weight: 300;
	border: 1px solid #CBF0AE;
	line-height: 26px;
	height: 28px;
	margin-top: 6px;
}

#server-pricing .server-stock {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	white-space: nowrap;
}

#server-pricing .server-stock.is-loading,
#server-pricing .server-stock.is-unavailable {
	border-color: #d8d8d8;
	background: rgba(90, 90, 90, .08);
	color: #666;
}

#server-pricing .server-stock.is-in-stock {
	border-color: #cbf0ae;
	background: rgba(146, 202, 101, .25);
	color: var(--green);
}

#server-pricing .server-stock.is-sold-out {
	border-color: rgba(187, 12, 12, .18);
	background: rgba(187, 12, 12, .1);
	color: var(--red);
}

#server-pricing .server-stock.is-loading::before {
	content: "";
	width: 9px;
	height: 9px;
	border: 1.5px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: dedicated-stock-spin .7s linear infinite;
}

.server-order .button.is-disabled,
.server-order .button.is-disabled:hover {
	border-color: #b7b7b7;
	background: #b7b7b7;
	color: #fff;
	cursor: not-allowed;
}

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

@media (prefers-reduced-motion: reduce) {
	#server-pricing .server-stock.is-loading::before {
		animation: none;
	}
}

.server-wrap {
	border-top: 1px solid #ccc;
}

.dedicated-filter-status {
	padding: 10px 0;
	background: #fff;
	color: rgba(50, 50, 50, 0.72);
	font-size: 13px;
}

.dedicated-filter-status.no-results {
	padding: 28px 0;
	color: var(--text);
}

.server-row {
	display: flex;
	flex-wrap: nowrap;
}

.server-name      { flex: 0 0 17.5%; }
.server-cpu       { flex: 0 0 20%; }
.server-ram       { flex: 0 0 10%; }
.server-storage   { flex: 0 0 15%; }
.server-bandwidth { flex: 0 0 14%; }
.server-price     { flex: 0 0 11%; }
.server-price-value { display: block; }
.server-price-total { display: block; margin-top: 3px; font-size: 12px; line-height: 1.3; color: rgba(50, 50, 50, .55); white-space: nowrap; }
.server-order     { flex: 0 0 12.5%; }

.server-name h3 {
	display: flex;
	align-items: center;
	gap: 8px;
}

.server-name-flag {
	flex: 0 0 auto;
	width: 24px;
	height: 16px;
	object-fit: cover;
}

.server-order .button {
	width: 100%;
	text-align: center;
	padding: 0px;
}

#dedicated-use-cases {
	background: linear-gradient(180deg, #F6F6F6 39.67%, #FFFFFF 84.64%)
}

.white-feature-box {
	padding: 36px 28px;
	background: #fff;
	border-radius: 12px;
	margin-bottom: 20px;
}
.white-feature-box p {
	padding-top: 8px;
}

.deploy-in-minutes {
	background: url('../images/deploy-bg.png') top center no-repeat #161616;
	background-size: cover;
	padding: 294px 28px 40px 28px;
	text-align: center;
	border-radius: 12px;
}

.os-name {
	display: block;
	line-height: 24px;
	padding: 14px 0px;
	float: left;
}

.dhf-fix {
	padding: 60px 12.5px;
}

.dark-select {
	padding: 0px 68px 0px 16px;
	background: url('../images/select-dark-down.svg') center right 16px no-repeat rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(255,255,255,0.05);
	border-radius: 6px;
	display: inline-block;
	color: #fff;
	font-family: "DM Sans",sans-serif;
	font-size: 15px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	height: 50px;
	line-height: 48px;
	width: 100%;
	max-width: 320px;
	margin-top: 2px;
	margin-bottom: 5px;
}

.services-section {
	background: #fff;
}

.section-label {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 3px;
	color: #888;
}

.services-section h2 {
	font-weight: 400;
	color: #111;
}

/* Main row */

.service-row {
	height: 360px;
	overflow: hidden;
}

/* Each Bootstrap column */

.service-item {
	position: relative;
	height: 100%;
	border-right: 1px solid #d5d5d5;
	cursor: pointer;

	/*
	* Bootstrap starts these at col-lg-2.
	* We animate the width ourselves.
	*/
	flex: 0 0 16.666667%;
	max-width: 16.666667%;

	transition:
	flex-basis 0.7s cubic-bezier(.77, 0, .175, 1),
	max-width 0.7s cubic-bezier(.77, 0, .175, 1);
}

/* Open panel */

.service-item.active {
	flex-basis: 50%;
	max-width: 50%;
}

/* Number */

.service-number {
	position: absolute;
	top: 20px;
	left: 20px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 2px;
	color: rgba(0,0,0,0.5);
	z-index: 5;
}

.service-item.active .service-number {
	color: #000;
}

/* Closed title */

.service-title {
	position: absolute;
	left: 20px;
	bottom: 20px;
	font-weight: 500;
	font-size: 17px;
	color: rgba(0,0,0,0.5);
	z-index: 5;
	transition: opacity .3s ease;
}

.service-item:hover .service-title,
.service-item:hover .service-number {
	color: #000;
}

/* Hide title when open */

.service-item.active .service-title {
	opacity: 0;
}

/* Hidden content */

.service-content {
	position: absolute;
	inset: 0;

	opacity: 0;
	visibility: hidden;

	transition:
	opacity .3s ease .15s,
	visibility 0s linear .7s;
}

/* Show content */

.service-item.active .service-content {
	opacity: 1;
	visibility: visible;

	transition:
	opacity .4s ease .25s,
	visibility 0s linear 0s;
}

/* Text side */

.service-copy {
	height: 100%;

	display: flex;
	flex-direction: column;
	justify-content: flex-end;

	padding: 20px;
	padding-bottom: 20px;
}

.service-copy p {
	padding-top: 8px;
	padding-bottom: 0px;
}

/* Image */

.service-image {
	width: 100%;
	height: 100%;

	object-fit: cover;

	border-radius: 15px;
	padding: 0;
}

#trustpilot-slider.light-bg .card{
	background: #fff;
	border: 0px;
}

.support-dark-box {
	padding: 36px 28px;
	background: radial-gradient(26.1% 66.11% at 63.21% 22.5%, rgba(127, 228, 45, 0.1) 0%, rgba(19, 19, 19, 0) 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #131313;
	border-radius: 12px;
}

.support-dark-box .status-online {
	float: left;
	margin-top: 12px;
}

.support-dark-box li a {
	color: #C9C9C9;
	text-decoration: underline;
	font-weight: 300;
}

.support-dark-box li a:hover,
.support-dark-box li a:focus,
.support-dark-box li a:active {
	color: var(--red-hover);
}

.gradient-cta-bg {
	background: radial-gradient(32.34% 135.48% at 66.56% 27.27%, rgba(187, 12, 12, 0.1) 0%, rgba(19, 19, 19, 0) 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #131313;
}

.italic {
	font-style: italic;
}

.bordered-box {
	border-radius: 12px;
	border: 1px solid var(--borders);
	padding: 40px 24px 36px 24px;
}

.si-fix {
	padding-top: 1px;
}

.step-number {
	width: 28px;
	height: 28px;
	border: 2px solid #000;
	line-height: 24px;
	color: #000;
	font-weight: 700;
	display: block;
	float: left;
	margin-right: 10px;
	text-align: center;
	border-radius: 50%;
}

.step-list li {
	line-height: 28px;
	color: #000;
}

.responsive-img {
	max-width: 100%;
	display: block;
}

#trustpilot-slider.dark-bg .card {
	background: #1D1D1D;
	border: 1px solid #2C2C2C;
	border-radius: 12px;
}

#trustpilot-slider.dark-bg .card:hover {
	background: #202020;
	border: 1px solid #2C2C2C;
	border-radius: 12px;
}

#trustpilot-slider.dark-bg a {
	color: #fff;
}
#trustpilot-slider.dark-bg a:hover {
	color: var(--red-hover);
}

#app-benefits .card {
	border: 0px;
	min-height: 460px;
	padding: 40px 24px;
    max-width:100%;
}

#always-on-card {
	background: url('../images/always-on@2x.png') center bottom no-repeat var(--light-bg);
	background-size: 100%;
}

#multiple-installs {
	background: url('../images/manage-multiple-installs@2x.png') center bottom 30px no-repeat var(--light-bg);
	background-size: 70%;
}

#secure-and-stable {
	background: url('../images/secure-and-stable@2x.png') center bottom 44px no-repeat var(--light-bg);
	background-size: 55%;
}


#always-on-card:hover {
	background: url('../images/always-on@2x.png') center bottom no-repeat #ededed;
	background-size: 100%;
}

#multiple-installs:hover {
	background: url('../images/manage-multiple-installs@2x.png') center bottom 30px no-repeat #ededed;
	background-size: 70%;
}

#secure-and-stable:hover {
	background: url('../images/secure-and-stable@2x.png') center bottom 44px no-repeat #ededed;
	background-size: 55%;
}

.red-bg {
	background: radial-gradient(29.75% 73.2% at 50% 50%, rgba(255, 255, 255, 0.2) 0%, rgba(187, 12, 12, 0) 100%) /* warning: gradient uses a rotation that is not supported by CSS and may not behave as expected */, #BB0C0C;
	border-radius: 32px;
	color: #fff;
}

#red-cta {
	text-align: center;
	padding: 80px 0px;
}

.red-bg h1,
.red-bg h2,
.red-bg h3,
.red-bg h4,
.red-bg h5,
.red-bg strong {
	color: #fff;
}

#red-cta p {
	margin: 0px auto;
	max-width: 520px;
}

.cta-button {
	padding-right: 76px !important;
	position: relative;
}

.button-arrow-up {
	position: absolute;
	top: 4px;
	right: 4px;
	bottom: 4px;
	height: 52px;
	width: 52px;
	background: rgba(255,255,255,0.05);
	border-radius: 50%;
	line-height: 52px;
	font-size: 22px;
}

h2 strong {
	font-weight: 700;
}

.i-list i {
	width: 24px;
	text-align: center;
}

#shared-compare.dark-bg .compare-graph{
	background: rgba(204, 204, 204, 0.06);
	border: 1px solid rgba(255,255,255,0.06);
	color: #fff;
}

#shared-compare.dark-bg .compare-graph .compare-bar {
	background: rgba(247, 247, 247, 0.1);
	color: #C9C9C9;
}

#shared-compare.dark-bg .compare-graph .compare-name {
	background: rgba(247, 247, 247, 0.08);
}

#shared-compare.dark-bg .compare-tab-list li {
	color: #fff;
}

#shared-compare.dark-bg .compare-tab-list li.active {
	background: #fff;
	color: var(--dark-bg);
}

.dark-bg .stat-number {
	border-color: #fff;
}

.faq-support-live .status-online {
	margin-top: 19px;
	float: left;
}

.features-accordion {
	width: 100%;
	border-top: 1px solid #ccc;
}

.feature-item {
	border-bottom: 1px solid #ccc;
}

.feature-header {
	width: 100%;
	min-height: 68px;
	padding: 0 12px;
	border: 0;
	background: transparent;
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	text-align: left;
    font-family:"DM Sans", sans-serif !important;
}

.feature-title {
	display: flex;
	align-items: center;
	font-size: 15px;
	font-weight: 500;
    font-family:"DM Sans", sans-serif !important;
	color: #000;
}

.feature-title > i {
	width: 24px;
	margin-right: 12px;
	text-align: center;
	font-size: 20px;
	font-weight: 400;
	color: #000;
}

.feature-toggle {
	font-size: 14px;
	color: #111;
}

.feature-content {
	max-height: 0;
	overflow: hidden;
	padding: 0 12px 0 48px;
	transition: max-height .35s ease, padding .35s ease;
}

.feature-item.active .feature-content {
	max-height: 300px;
	padding-bottom: 20px;
}


#domain-pricing .domain-filter-tabs {
	max-width: 100%;
}

#domain-pricing .domain-filter-tabs .domain-filter-option {
	transition: max-width 220ms ease, padding 220ms ease, opacity 160ms ease, transform 220ms ease, background 160ms ease, color 160ms ease;
}

#domain-pricing .domain-filter-tabs .domain-search-field {
	width: 0;
	max-width: 0;
	padding-left: 0;
	padding-right: 0;
	opacity: 0;
	transform: translateX(12px);
	pointer-events: none;
	transition: width 220ms ease, max-width 220ms ease, padding 220ms ease, opacity 160ms ease, transform 220ms ease;
}

#domain-pricing .domain-filter-tabs .domain-search-field:hover {
	background: transparent;
}

#domain-pricing .domain-filter-tabs .domain-search-field input {
	width: 100%;
	height: 40px;
	padding: 0 8px;
	border: 0;
	outline: 0;
	background: transparent;
	color: #111;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 40px;
}

#domain-pricing .domain-filter-tabs .domain-search-field input::placeholder {
	color: rgba(50, 50, 50, 0.55);
}

#domain-pricing .domain-filter-tabs .domain-search-toggle {
	width: 40px;
	min-width: 40px;
	max-width: 40px;
	padding: 0;
	text-align: center;
}

#domain-pricing .domain-filter-tabs .domain-search-toggle i {
	width: 40px;
	line-height: 40px;
	transition: transform 180ms ease;
}

#domain-pricing .domain-filter-tabs.search-open .domain-filter-option {
	max-width: 0;
	padding-left: 0;
	padding-right: 0;
	opacity: 0;
	transform: translateX(-12px);
	pointer-events: none;
}

#domain-pricing .domain-filter-tabs.search-open .domain-search-field {
	width: 360px;
	max-width: 360px;
	padding-left: 12px;
	padding-right: 6px;
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto;
}

#domain-pricing .domain-filter-tabs.search-open .domain-search-toggle {
	color: var(--red);
}

@media (max-width: 767px) {
	#domain-pricing .domain-filter-tabs {
		width: 100%;
		overflow-x: auto;
	}

	#domain-pricing .domain-filter-tabs.search-open {
		overflow: hidden;
	}

	#domain-pricing .domain-filter-tabs.search-open .domain-search-field {
		width: calc(100vw - 112px);
		max-width: calc(100vw - 112px);
	}
}

#domain-pricing .domain-no-results {
	padding: 65px 20px 30px;
}

#domain-pricing .domain-no-results > i {
	color: #aaa;
	font-size: 30px;
}

#domain-pricing .domain-no-results p {
	color: #777;
}

.domain-card {
	color: var(--text);
	border: 0px;
	display: block;
	font-weight: 300;
	min-height: 250px;
}

.domain-card:hover {
	color: var(--text);
	text-decoration: unset;
	transform: scale(0.975);
	background: #ececec;
}

.domain-card:hover h2 {
	color: var(--red);
}

#domain-pricing .col {
	margin-bottom: 30px;
}

#domain-pricing .domain-item {
	opacity: 1;
	transform: translateY(0) scale(1);
	transition: opacity 0.2s ease, transform 0.28s ease;
	will-change: opacity, transform;
}

#domain-pricing .domain-item.is-leaving,
#domain-pricing .domain-item.is-entering {
	opacity: 0;
	transform: translateY(12px) scale(0.975);
}

#domain-pricing .domain-item.domain-hidden {
	display: none;
}

#domain-pricing .domain-grid.is-filtering {
	pointer-events: none;
}

#domain-pricing .domain-result-count {
	color: #777;
	font-size: 14px;
}

#domain-pricing .domain-renewal-price {
	margin-top: 4px;
	color: #777;
}

#domain-pricing .domain-price-detail {
	display: block;
}

#domain-pricing .domain-card h3 {
	font-size: 21px;
}

@media (prefers-reduced-motion: reduce) {
	#domain-pricing .domain-item {
		transition: none;
	}
}

#domain-price .row {
	margin-bottom: -30px;
}

#great-with-domain .service-box-with-bottom {
	padding-bottom: 40px !important;
	min-height: 398px;
}

.light-box {
	background: var(--light-bg);
	padding: 24px;
	border-radius: 12px;
}

#by-the-numbers .col {
	padding: 0px 10px;
}
#by-the-numbers .row{
	margin: 0px -10px;
}

.timeline-section {
	overflow: hidden;
}

.timeline {
	display: flex;
	width: 100%;
	height: 420px;
	margin-top: 50px;
}

.timeline-item {
	position: relative;
	flex: 0 0 4.75%;
	min-width: 0;
	height: 100%;
	overflow: hidden;
	border-left: 1px solid var(--line);
	transition: flex-basis .75s cubic-bezier(.22, 1, .36, 1);
	border-right: 1px solid rgba(255,255,255,0.15);
}

.timeline-item:last-child { border-right: 1px solid var(--line); }

.timeline-item.active { flex-basis: 43%; }

.year-button {
	position: absolute;
	inset: 0 auto auto 0;
	z-index: 3;
	width: 100%;
	height: 100%;
	padding: 0;
	border: 0;
	background: transparent;
	color: #858585;
	font-size: 13px;
	letter-spacing: 1.5px;
	cursor: pointer;
	text-align: left;
}

.year-button span {
	position: absolute;
	top: 0;
	left: 50%;
	writing-mode: vertical-rl;
	transform: translateX(-50%) rotate(180deg);
}

.timeline-item.active .year-button { color: var(--white); }

.panel-content {
	position: absolute;
	inset: 0 0 0 25px;
	display: grid;
	grid-template-columns: minmax(240px, .95fr) minmax(230px, 1.15fr);
	gap: 34px;
	min-width: 520px;
	opacity: 0;
	visibility: hidden;
	transform: translateX(24px);
	transition: opacity .3s ease .1s, transform .55s ease .1s, visibility 0s linear .6s;
}

.timeline-item.active .panel-content {
	opacity: 1;
	visibility: visible;
	transform: translateX(0);
	transition-delay: .22s, .16s, 0s;
}

.copy {
	align-self: end;
	padding: 0 0 28px 0;
}

.copy h3 {
	padding-bottom: 10px;
}

.copy p {
	padding-bottom: 0px;
	color: #C9C9C9;
}

.panel-image {
	width: 90%;
	height: 100%;
	object-fit: cover;
	border-radius: 10px;
}

.bottom-link {
	display: inline-block;
	margin-top: 50px;
}

.bottom-link span { margin-left: 6px; }

@media (max-width: 959.98px) {
	.timeline-section { padding: 48px 24px; }
	.timeline { display: block; height: auto; margin-top: 60px; }

	.timeline-item,
	.timeline-item.active {
		height: 58px;
		overflow: hidden;
		border: 0;
		border-top: 1px solid var(--line);
		transition: height .65s cubic-bezier(.22, 1, .36, 1);
	}

	.timeline-item:last-child { border-right: 0; border-bottom: 1px solid var(--line); }
	.timeline-item.active { height: min(620px, 76vh); }

	.year-button {
		position: relative;
		width: 100%;
		height: 58px;
		text-align: left;
	}

	.year-button span {
		position: static;
		display: block;
		padding: 22px 4px;
		writing-mode: horizontal-tb;
		transform: none;
	}

	.panel-content {
		inset: 58px 0 0;
		grid-template-columns: 1fr;
		grid-template-rows: auto minmax(220px, 1fr);
		gap: 24px;
		min-width: 0;
	}

	.copy { align-self: auto; padding: 20px 4px 0; }
	.panel-image { min-height: 260px; }
	.bottom-link { margin-top: 20px; }
}

.timeline-item.active .year-button span{
	left: 29px;
}

#meet-the-team .card {
	padding-top: 40px;
	padding-bottom: 40px;
}

#meet-the-team .team-member-photo {
	width: 112px;
	height: 112px;
	border: 3px solid #f1f1f1;
	border-radius: 50%;
	object-fit: cover;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
}

#meet-the-team .team-social-link {
	display: inline-flex;
	width: 28px;
	height: 28px;
	margin: 0 5px;
	align-items: center;
	justify-content: center;
	color: #000;
	vertical-align: middle;
	transition: color 180ms ease;
}

#meet-the-team .team-social-link img {
	display: block;
	max-width: 20px;
	max-height: 20px;
	transition: filter 180ms ease;
}

#meet-the-team .team-social-link i {
	font-size: 20px;
}

#meet-the-team .team-social-link:hover,
#meet-the-team .team-social-link:focus-visible {
	color: var(--red-hover);
}

#meet-the-team .team-social-link:hover img,
#meet-the-team .team-social-link:focus-visible img {
	filter: brightness(0) saturate(100%) invert(13%) sepia(96%) saturate(5791%) hue-rotate(356deg) brightness(101%) contrast(91%);
}

#meet-the-team .team-social-link:focus-visible {
	border-radius: 3px;
	outline: 2px solid var(--red);
	outline-offset: 3px;
}

#mission-statement p {
	max-width: 920px;
	font-weight: 300;
	margin: 0px auto;
}

.dark-link-fix a {
	color: #fff;
}

.dark-link-fix a:hover {
	color: var(--red-hover);
}

.dark-link-fix i {
	width: 24px;
	text-align: center;
}
.locations-section {
	width: min(100%, 1920px);
	min-height: 100vh;
	margin: auto;
	padding: 40px clamp(24px, 3.7vw, 72px) 30px;
	overflow: hidden;
}

.location-filters {
	position: relative;
	z-index: 20;
}

.filter {
	padding: 16px 50px 16px 20px;
	border: 1px solid #c9c9c9;
	border-radius: 8px;
	background: #fff;
	color: #111;
	text-align: left;
	cursor: pointer;
	transition: 0.22s ease;
	margin-right: 12px;
}

.filter:hover {
	transform: translateY(-2px);
	box-shadow: 0 7px 22px rgba(0, 0, 0, 0.07);
}

.filter.active {
	border-color: #e10c0c;
	color: var(--red);
}

.filter strong,
.filter span {
	display: block;
}

.filter strong {
	margin-bottom: 5px;
	font-size: 15px;
	font-weight: 600;
}

.filter span {
	color: var(--text);
	font-size: 13px;
	opacity: 0.75;
}

.filter:focus-visible,
.marker:focus-visible,
.location-popup:focus-visible {
	outline: 3px solid rgba(201, 13, 13, 0.28);
	outline-offset: 3px;
}

.filter.active strong {
	color: var(--red);
}

.filter.active span {
	opacity: 1;
}

/* Map */

.map-wrap {
	position: relative;
	width: 100%;
	margin: 40px auto 0;
	aspect-ratio: 1.855 / 1;
}

.map-outline {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	pointer-events: none;
	user-select: none;
}

.map-markers {
	position: absolute;
	inset: 0;
}

.marker {
	position: absolute;
	z-index: 2;
	width: 12px;
	height: 12px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #bd0f0f;
	cursor: pointer;
	transform: translate(-50%, -50%);
	transition: 0.18s ease;
}

.marker::before {
	content: "";
	position: absolute;
	inset: -8px;
}

.marker::after {
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform-origin: center center;
	position: absolute;
	border: 2px solid #bd0f0f;
	border-radius: 50%;
	content: "";
	pointer-events: none;
	animation: location-pin-pulse 1.8s ease-out infinite;
	animation-delay: var(--pin-pulse-delay, 0s);}

.marker:hover,
.marker.active {
	width: 18px;
	height: 18px;
	box-shadow: 0 0 0 5px rgba(189, 15, 15, 0.12);
}

/* Popup */

.location-popup {
	position: absolute;
	z-index: 10;
	display: inline-flex;
	align-items: center;
	gap: 9px;

	/* Default position before JavaScript places it beside a marker */
	top: 34%;
	left: 52.5%;

	width: max-content;
	max-width: min(270px, calc(100% - 20px));
	padding: 11px 14px;

	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 9px;
	background: linear-gradient(120deg, #181818, #101010);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);

	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;

	/* Smoothly follows each marker */
	transition:
	left 0.18s ease,
	top 0.18s ease,
	background 0.18s ease,
	box-shadow 0.18s ease;
}

.location-popup:hover {
	background: linear-gradient(120deg, #252525, #151515);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);
	color: #fff;
}

.popup-arrow {
	position: absolute;
	top: 50%;
	left: -8px;
	width: 0;
	height: 0;
	transform: translateY(-50%);

	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-right: 8px solid #181818;
	border-radius: 2px;
}

/*
* When the marker is near the right side of the map, JavaScript adds
* .popup-left and places the popup to the marker's left.
*/
.location-popup.popup-left .popup-arrow {
	right: -8px;
	left: auto;

	border-right: 0;
	border-left: 8px solid #101010;
}

.location-popup.popup-above .popup-arrow {
	top: auto;
	bottom: -8px;
	left: 50%;
	margin: 0;
	transform: translateX(-50%);
	border-top: 8px solid #101010;
	border-right: 8px solid transparent;
	border-bottom: 0;
	border-left: 8px solid transparent;
}

.location-popup.popup-below .popup-arrow {
	top: -8px;
	left: 50%;
	margin: 0;
	transform: translateX(-50%);
	border-top: 0;
	border-right: 8px solid transparent;
	border-bottom: 8px solid #181818;
	border-left: 8px solid transparent;
}

.popup-flag {
	display: block;
	flex: 0 0 auto;
	width: 22px;
	height: 15px;
	border-radius: 2px;
	object-fit: cover;
}

.popup-city {
	color: #fff;
	white-space: nowrap;
}

/* Responsive */


#datacenters .dc-col-right {
	padding-top: 62px;
	padding-left: 80px;
	padding-bottom: 200px;
	position: relative;
}

#datacenters .dc-tab-pane[hidden] {
	display: none !important;
}

#datacenters .dc-main-image {
	display: block;
	width: 100%;
	aspect-ratio: 776 / 392;
	height: auto;
	object-fit: cover;
}

#datacenters .dc-tab-pane {
	width: 100%;
}

#datacenters .dc-col-left .form-control {
	width: 100%;
	display: block;
	border-radius: 0px;
	border-left: 0px;
	border-top: 0px;
	border-right: 0px;
	height: 64px;
	padding-bottom: 16px;
	background: url('../images/select-down.svg') center right 16px no-repeat #FFFFFF;
	color: #000;
	font-weight: 600;
}

.location-filter label {
	position: absolute;
	bottom: 8px;
	left: 16px;
	font-size: 13px;
}

.dc-locations li a {
	border-bottom: 1px solid #c9c9c9;
	display: block;
	padding: 16px 16px;
	color: var(--text);
	font-weight: 300;
}

.dc-locations li a:hover {
	background: #f9f9f9;
	color: #000;
	font-weight: 500;
}

.dc-locations li.active a {
	background: #f9f9f9;
	color: #000;
	font-weight: 600;
}

.dc-locations .location-flag {
	display: inline-block;
	width: 28px;
	height: 18px;
	margin-right: 7px;
	object-fit: cover;
	vertical-align: middle;
}

.dc-locations li a:focus-visible {
	outline: 3px solid rgba(201, 13, 13, 0.25);
	outline-offset: -3px;
}

.dc-title {
	z-index: 1002;
	background: #fff;
	margin-left: 30px;
	margin-top: -128px;
	padding: 34px 40px;
	display: block;
	position: relative;
	max-width: 620px;
	margin-right: 30px;
}

.dl-test {
	display: inline-flex;
	align-items: center;
	gap: 3px;
	padding: 3px 8px;
	border: 1px solid rgba(187, 12, 12, .3);
	border-radius: 6px;
	background: rgba(187, 12, 12, .08);
	color: var(--red);
	font-size: 13px;
	font-weight: 600;
	line-height: 20px;
	letter-spacing: 0;
	vertical-align: middle;
}

.dl-test:hover,
.dl-test:focus {
	border-color: rgba(187, 12, 12, .45);
	background: rgba(187, 12, 12, .15);
	color: var(--red-hover);
}

.dc-divider {
	width: 100%;
	display: block;
	height: 1px;
	content: " ";
	background: #dcdcdc;
	margin-top: 30px;
	margin-bottom: 60px;
}



.available-services {
    padding-top:8px !important;
}

.available-services li {
    display:block;
    padding:6px 0px;
}

.available-services li a {
	line-height: 36px;
	color: #000;
}

.available-services li a:hover {
	color: var(--red);
}

.available-services li {
	margin-right: 12px;
}

.available-services li a img {
	height: 36px;
	margin-right: 8px;
	float: left;
}

.back-to-network {
	position: absolute;
	bottom: 30px;
	left: 80px;
}

#banner-datacenters {
	padding: 56px 0px;
	min-height: unset;
	background: url('../images/datacenter-bg.png') center right no-repeat var(--dark-bg);
}

#datacenters .row {
	margin: 0px 0px;
}

#locations-with-selector {
	position: relative;
	z-index: 5;
	padding: 82px 0;
	overflow: visible;
	background-color: var(--dark-bg);
	isolation: isolate;
}

#locations-with-selector .container {
	position: relative;
	z-index: 3;
}

#locations-with-selector .selector-map-stage {
	position: absolute;
	z-index: 0;
	inset: 0;
	background-image: url('../images/world-map-atlas.svg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: 1500px auto;
	opacity: 0.58;
	transition: none;
}

#locations-with-selector::after {
	position: absolute;
	z-index: 1;
	inset: 0;
	background: linear-gradient(90deg, rgba(17,17,17,1) 0%, rgba(17,17,17,.96) 19%, rgba(17,17,17,.72) 34%, rgba(17,17,17,.08) 62%, rgba(17,17,17,.42) 100%);
	content: "";
	pointer-events: none;
}

#locations-with-selector .location-selector-content {
	opacity: 1;
}

#locations-with-selector .location-selector-content > p {
	max-width: 520px;
	padding-top: 20px;
}

#locations-with-selector .location-changer {
	max-width: 295px;
}

#locations-with-selector .location-changer strong {
	font-size: 14px;
}

#locations-with-selector .location-select {
	width: 100%;
	height: 52px;
	padding: 0 52px 0 18px;
	border: 0;
	border-radius: 5px;
	background-color: #2b2b2b;
	color: #fff;
	font-weight: 600;
}

#locations-with-selector .location-facility-card {
	position: relative;
	z-index: 4;
	flex: 0 0 360px;
	width: 360px;
	max-width: 360px;
	padding: 0;
	margin-right: 13px;
	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: 22px;
	background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,248,248,.98));
	box-shadow: 0 24px 60px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255,255,255,.85);
	color: var(--text);
	font-size: 15px;
	overflow: hidden;
}

#locations-with-selector .location-facility-card-inner {
	padding: 22px 24px 20px;
}

#locations-with-selector .location-facility-card-top {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

#locations-with-selector .location-facility-flag-shell {
	display: flex;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(0,0,0,.08);
	border-radius: 12px;
}

#locations-with-selector .location-facility-flag {
	width: 24px;
	height: 16px;
	object-fit: cover;
}

#locations-with-selector .location-facility-heading {
	display: block;
	min-width: 0;
	flex: 1 1 auto;
}

#locations-with-selector .location-facility-region {
	display: block;
	margin-bottom: 4px;
	color: rgba(50,50,50,.5);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .12em;
	text-transform: uppercase;
}

#locations-with-selector .location-facility-city {
	display: block;
	overflow: hidden;
	color: #000;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.2;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#locations-with-selector .location-facility-code,
.dc-location-code {
	flex: 0 0 auto;
	padding: 7px 8px;
	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: 8px;
	background: rgba(0,0,0,.035);
	color: rgba(0,0,0,.58);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .06em;
}

.dc-location-code {
	display: inline-block;
	margin-left: 8px;
	vertical-align: middle;
}

#locations-with-selector .location-facility-card dl {
	margin: 16px 0 0;
}

#locations-with-selector .location-facility-group {
	margin-bottom: 0;
	padding: 16px 0 8px 0;
	border-top: 1px solid rgba(0, 0, 0, .08);
}

#locations-with-selector .location-facility-group:last-child {
	margin-bottom: 0;
}

#locations-with-selector .location-facility-card dt {
	margin-bottom: 8px;
	color: rgba(50,50,50,.5);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .12em;
	text-transform: uppercase;
}

#locations-with-selector .location-facility-card dd {
	margin: 0;
	font-size: 16px;
	line-height: 1.55;
	color: rgba(50,50,50,.88);
}

#locations-with-selector .location-facility-card dd + dd {
	margin-top: 6px;
}

#locations-with-selector .location-facility-card [data-location-address],
#locations-with-selector .location-facility-card [data-location-network] {
	color: #000;
	font-weight: 600;
}

#locations-with-selector .location-facility-card [data-location-network-summary] {
	color: rgba(50,50,50,.88);
	font-weight: 400;
}

#locations-with-selector .location-facility-looking-glass {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 2px 0 14px;
	color: var(--red);
	font-size: 13px;
	font-weight: 600;
}

#locations-with-selector .location-facility-looking-glass:hover {
	color: var(--red-hover);
}

#locations-with-selector .location-facility-looking-glass i {
	font-size: 10px;
}

#locations-with-selector .location-facility-looking-glass.is-hidden {
	display: none;
}

#locations-with-selector .location-facility-action {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-top: 4px;
	padding-top: 16px;
	border-top: 1px solid rgba(0, 0, 0, .08);
	color: #000;
	font-size: 15px;
	font-weight: 600;
}

#locations-with-selector .location-facility-action:hover {
	color: var(--red);
}

#locations-with-selector .location-facility-action i {
	color: #000;
	transition: transform .18s ease;
}

#locations-with-selector .location-facility-action:hover i {
	color: var(--red);
}

#locations-with-selector .location-map-pin {
	position: absolute;
	z-index: 2;
	top: 54%;
	left: 58%;
	display: block;
	width: 14px;
	height: 14px;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	white-space: nowrap;
	transform: translate(-7px, -50%);
	transition: opacity 180ms ease;
}

#locations-with-selector .location-map-pin-label {
	display: block;
	position: absolute;
	top: 50%;
	right: calc(100% + 8px);
	transform: translateY(-50%);
	font-family:"DM Sans",sans-serif;
	font-size:13px;
	font-weight:500;
}

#locations-with-selector .location-map-pin-marker {
	position: relative;
	display: block;
	flex: 0 0 14px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--red);
	box-shadow: 0 0 0 5px rgba(201, 13, 13, .16);
}

#locations-with-selector .location-map-pin-marker::after {
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform-origin: center center;
	position: absolute;
	border: 2px solid var(--red);
	border-radius: 50%;
	content: "";
	pointer-events: none;
	animation: location-pin-pulse 1.8s ease-out infinite;
	animation-delay: var(--pin-pulse-delay, 0s);}

@keyframes location-pin-pulse {
	0% {
		opacity: .8;
		transform: translate(-50%, -50%) scale(.85);
		transform-origin: center center;
	}
	75%, 100% {
		opacity: 0;
		transform: translate(-50%, -50%) scale(2.75);
		transform-origin: center center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.marker::after,
	#locations-with-selector .location-map-pin-marker::after {
		animation: none;
	}
}

@media (max-width: 991px) {
	#datacenters .dc-col-right {
		padding-right: 30px;
		padding-bottom: 100px;
		padding-left: 30px;
	}

	#datacenters .dc-title {
		margin-right: 15px;
		margin-left: 15px;
	}
}

.vps-max { max-width:1640px; padding-right:0; padding-left:0; }
.vps-heading { padding-bottom:40px; }

#vps-hostname-error-wrap[hidden] { display:none !important; }

.vps-hostname-error {
	margin:0 0 20px;
	padding:14px 18px;
	border:1px solid #dc3545;
	border-radius:6px;
	background:rgba(220,53,69,.08);
	color:#b02a37;
	font-size:15px;
	font-weight:600;
}
.vps-kicker { margin-bottom:13px; color:#858585; font-size:16px; font-weight:700; letter-spacing:3px; }
.vps-heading h1 { margin:0; color:#030303; font-size:44px; font-weight:400; line-height:1.1; }
.billing-switch { display:flex; width:max-content; padding:5px; border-radius:35px; background:#f5f5f5; }
.billing-switch button { height:50px; padding:0 30px; border:0; border-radius:27px; background:transparent; color:#595959; font-size:18px; font-weight:600; cursor:pointer; }
.billing-switch button.active { background:#e4e4e4; color:#111; }
.billing-switch span { display:inline-block; margin-left:7px; padding:4px 9px; border-radius:15px; background:#fff; color:var(--vps-green); font-size:15px; }
.configurator-shell { border-bottom:1px solid #ccc; }
.configurator-main {  padding:50px 36px 55px; border-right:1px solid #ccc; border-left:1px solid #ccc; }
.configurator-main h2,.order-summary h2 { margin:0; color:#090909; font-size:30px; font-weight:500; }
.plan-slider-wrap { position:relative; margin-top:15px; padding-bottom:1px; }
.plan-slider-wrap::before,.plan-slider-wrap::after { display:none !important; }
.slider-track { position:absolute; z-index:0; top:12px; left:0px; width:calc(100% - 1px); height:12px; overflow:hidden; border-radius:10px; background:#ededed; box-shadow:inset 0 1px 2px rgba(0,0,0,.05); pointer-events:none; }
.slider-track-active { width:0; height:100%; border-radius:10px; background:#c80b0f; }
.slider-markers { position:absolute; inset:0; z-index:2; pointer-events:none; }
.slider-markers span { position:absolute; top:0; width:0; height:12px; border-left:1px solid rgba(0,0,0,.15); transform:translateX(-50%); }
.slider-markers span::after { content:""; position:absolute; top:0; left:0; width:0; height:12px; border-left:1px solid rgba(255,255,255,.15); transform:translateX(0px); }
#plan-slider { position:relative; z-index:2; display:block; width:100%; height:38px; margin:0; background:transparent; appearance:none; -webkit-appearance:none; cursor:pointer; }
#plan-slider::-webkit-slider-runnable-track { height:12px; border:0; background:transparent; }
#plan-slider::-moz-range-track { height:12px; border:0; background:transparent; }
#plan-slider::-webkit-slider-thumb { width:32px; height:32px; margin-top:-12px; border:8px solid #fff; border-radius:50%; background:#e4e4e4; box-shadow:0 1px 4px rgba(0,0,0,.28); appearance:none; -webkit-appearance:none; }
#plan-slider::-moz-range-thumb { width:16px; height:16px; border:8px solid #fff; border-radius:50%; background:#e4e4e4; box-shadow:0 1px 4px rgba(0,0,0,.28); }
.plan-labels { display:grid; grid-template-columns:repeat(6,1fr); margin-top:12px; }
.plan-labels button { padding:0; border:0; background:none; color:#6c6c6c; font-size:15px; cursor:pointer; }
.plan-labels button:first-child { text-align:left; }
.plan-labels button:last-child { text-align:right; }
.plan-labels button.active { color:var(--red); font-weight:700; }
.config-divider { height:1px; margin:42px 0 36px; background:#ccc; }
.server-details h2 { margin-bottom:26px; }
.server-details label { margin-bottom:10px; font-size:15px; }
.server-details .form-group { margin-bottom:28px;text-align:left; }

.server-details input.form-control { font-weight:400; }
input.form-control::placeholder { color:#aaa; }

.server-details .form-control {
	width: 100%;
	display: block;
	margin-top: 6px;
	font-weight: 500;
	color: #000;
}

.server-details .icon-select { padding-left:57px; background-position:right 20px center,left 20px center; background-repeat:no-repeat; background-size:14px,26px; }
.server-details .flag-select {
	padding-left: 16px;
	background-image: url("../images/select-down.svg");
	background-position: right 20px center;
	background-size: 14px;
}

.location-select-with-flags {
	font-family: "DM Sans", "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
}

.flag-select-native {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	margin: 0 !important;
	padding: 0 !important;
	opacity: 0;
	pointer-events: none;
}

.flag-select-ui {
	position: relative;
	z-index: 30;
	width: 100%;
	font-family: "DM Sans", sans-serif;
}

.col-lg-8.text-right .flag-select-ui {
	display:none;
}

.flag-select-button,
.flag-select-option {
	display: flex;
	align-items: center;
	gap: 9px;
	width: 100%;
	border: 0;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.flag-select-button {
	min-height: 50px;
	padding: 0 46px 0 16px;
	border: 1px solid #d3d3d3;
	border-radius: 8px;
	background: url('../images/select-down.svg') center right 16px no-repeat #fff;
	color: var(--text);
	font-weight: 500;
	transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease;
}

.flag-select-button:hover {
	border-color: #ababab;
	background-color: #fafafa;
}

.flag-select-button:focus-visible,
.flag-select-ui.is-open .flag-select-button {
	outline: 0;
	border-color: var(--red);
	box-shadow: 0 0 0 3px rgba(199, 12, 16, .12);
}

.flag-select-button img,
.flag-select-option img {
	flex: 0 0 auto;
	width: 24px;
	height: 16px;
	object-fit: cover;
}

.flag-select-menu {
	position: absolute;
	z-index: 1200;
	top: calc(100% + 5px);
	left: 0;
	display: none;
	width: max-content;
	min-width: 100%;
	max-height: 310px;
	overflow-y: auto;
	max-width: min(360px, calc(100vw - 32px));
	padding: 7px;
	border: 1px solid #dedede;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 16px 38px rgba(0,0,0,.16);
}

.flag-select-ui.is-open {
	z-index: 1201;
}

.flag-select-ui.is-open .flag-select-menu {
	display: block;
}

.flag-select-option {
	min-height: 40px;
	padding: 8px 11px;
	border-radius: 6px;
	background: transparent;
	color: #222;
	line-height: 1.35;
	white-space: normal;
}

.flag-select-option:hover,
.flag-select-option:focus {
	outline: 0;
	background: #f3f3f3;
	color: #000;
}

.flag-select-option.is-selected {
	background: rgba(199, 12, 16, .09);
	color: var(--red);
	font-weight: 600;
}

.flag-select-group {
	padding: 9px 10px 4px;
	color: #8a8a8a;
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
}

.plan-select.flag-select-native + .flag-select-ui {
	width: calc(100% + 50px);
	margin: 25px -25px 20px -25px;
}

.plan-select.flag-select-native + .flag-select-ui .flag-select-button {
	height: 54px;
	border-right: 0;
	border-left: 0;
	border-radius: 0;
	padding-right: 50px;
	padding-left: 25px;
	background-position: center right 25px;
}

.dark-select.flag-select-native + .flag-select-ui {
	max-width: 320px;
	margin-top: 2px;
	margin-bottom: 5px;
}

.dark-select.flag-select-native + .flag-select-ui .flag-select-button {
	border-color: rgba(255,255,255,.08);
	background: url('../images/select-dark-down.svg') center right 16px no-repeat rgba(255,255,255,.05);
	color: #fff;
}

.dark-select.flag-select-native + .flag-select-ui .flag-select-button:hover,
.dark-select.flag-select-native + .flag-select-ui.is-open .flag-select-button {
	border-color: rgba(255,255,255,.22);
	background-color: rgba(255,255,255,.1);
}

.dark-select.flag-select-native + .flag-select-ui .flag-select-button:focus-visible,
.dark-select.flag-select-native + .flag-select-ui.is-open .flag-select-button {
	box-shadow: 0 0 0 3px rgba(255,255,255,.12);
}

.filter-row .flag-select-ui {
	min-width: 0;
	margin-top: -5px;
}

.filter-row .location-select-with-flags.flag-select-native + .flag-select-ui {
	min-width: 190px;
}

.filter-row .flag-select-button {
	min-height: 36px;
	height: 36px;
	padding: 0 18px 0 0px;
	border: 0;
	border-radius: 6px;
	background-color: transparent;
	background-position: center right 0px;
}

.filter-row .flag-select-button:hover,
.filter-row .flag-select-button:focus-visible,
.filter-row .flag-select-ui.is-open .flag-select-button {
	border: 0;
	box-shadow: none;
	color: var(--red);
	background:url('../images/select-down-red.svg') center right 0px no-repeat transparent;
}

.server-details .flag-select-ui {
	margin-top: 6px;
}

.server-details .flag-select-button {
	min-height: 48px;
}

#datacenters .location-filter .flag-select-ui {
	width: 100%;
}

#datacenters .location-filter .flag-select-button {
	height: 64px;
	padding: 0 44px 0px 16px;
	border: 0;
	border-bottom: 1px solid #c9c9c9;
	border-radius: 0;
	background-position: center right 16px;
	font-weight: 600;
}

.vps-score-help {
	cursor: help;
}

.plan-tooltip {
	border-bottom: 1px dotted currentColor;
	cursor: help;
	text-decoration: none;
}

.vps-score-help:focus-visible,
.plan-tooltip:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 3px;
	border-radius: 50%;
}

.plan-tooltip:focus-visible {
	border-radius: 2px;
}

.tooltip.show {
	opacity: 1;
}

.tooltip .tooltip-inner {
	width: 220px;
	max-width: 220px;
	padding: 12px 14px;
	border: 1px solid rgba(255, 255, 255, .1);
	border-radius: 6px;
	background: #141414;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .28);
	color: #fff;
	font-family: "DM Sans", sans-serif;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
	text-align: left;
}

.bs-tooltip-top .arrow::before,
.bs-tooltip-auto[x-placement^="top"] .arrow::before {
	border-top-color: #141414;
}

.bs-tooltip-right .arrow::before,
.bs-tooltip-auto[x-placement^="right"] .arrow::before {
	border-right-color: #141414;
}

.bs-tooltip-bottom .arrow::before,
.bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
	border-bottom-color: #141414;
}

.bs-tooltip-left .arrow::before,
.bs-tooltip-auto[x-placement^="left"] .arrow::before {
	border-left-color: #141414;
}
.order-summary { border-right:1px solid #ccc; }
.summary-inner { top:0; padding:32px 20px; }
.summary-inner h2 { font-size:29px; }
.summary-specs { margin:20px 0 20px; padding:0; list-style:none; }
.summary-specs li { display:flex; align-items:center; gap:14px; margin-bottom:20px; font-size:15px; }
.summary-specs i { width:24px; font-size:20px; text-align:center; }
.summary-extras { font-size:15px; }
.summary-extras strong { display:block; margin-bottom:6px;}
.summary-extras div { margin-bottom:7px; }
.summary-extras b { color:#000;font-weight:500;}
.price-divider { height:1px; margin:35px 0 34px; background:#ccc; }
.deal-row { display:flex; align-items:center; gap:12px; }

.total-price { margin-top:10px; color:#111; font-size:24px; line-height:1.2; }
#total-price { font-size:24px; }
#billing-description { margin-top:9px; font-size:15px; }


.configurator-shell .vps-row {
	margin: 0px 0px;
}

.vps-scores {
	position: absolute;
	top: 12px;
	left: 40px;
}

.vps-scores li {
	background: rgba(0,0,0,0.8);
	border-radius: 6px;
	margin-bottom: 12px;
	padding: 8px 16px;
	color: rgba(255,255,255,0.75);
}

.vps-scores li h3 {
	color: #fff;
}

.vps-check-feature {
	position: relative;
	padding-left: 26px;
}

.vps-check-feature i {
	position: absolute;
	top: 5px;
	left: 0;
}

.row-with-box-features .col {
	padding: 0px 10px;
}

.row-with-box-features .white-feature-box {
	padding: 32px 24px;
	margin-bottom: 0px;
}

.faq-label {
	margin: 0 0 18px;
	color: #858585;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.faq-title {
	max-width: 430px;
	margin: 0 0 45px;
	font-size: 44px;
	font-weight: 400;
	line-height: 1.18;
}

.faq-list {
	border-top: 1px solid #ccc;
}

.faq-item {
	border-bottom: 1px solid #ccc;
}

.faq-question {
	position: relative;
	width: 100%;
	padding: 20px 60px 20px 24px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: color 0.2s ease;
}

.faq-item:hover {
	background: #f9f9f9;
}

.faq-icon {
	position: absolute;
	top: 50%;
	right: 24px;
	color: #222;
	font-size: 22px;
	transform: translateY(-50%);
}

.faq-answer {
	display: none;
	padding: 0 70px 20px 24px;
	margin-top: -5px;
}

.faq-answer.is-animating {
	will-change: height;
}

.faq-answer p {
	max-width: 890px;
	margin: 0;
	color: #3f3f3f;
	font-size: 15px;
	font-weight: 400;
	line-height: 2;
}

.faq-answer p:last-child {
	padding-bottom: 0;
}

.faq-item:first-child .faq-answer {
	display: block;
}

#trustpilot-slider .carousel-inner {
	overflow: hidden;
}

#trustpilot-slider .carousel-item {
	padding: 0;
}

#trustpilot-slider .carousel-item .row {
	margin-right: -15px;
	margin-left: -15px;
}

#trustpilot-slider .card {
	height: 100%;
	border: 0;
	border-radius: 0;
    padding:25px 28px;
}

#trustpilot-slider .card-body strong {
	display: block;
	font-size: 15px;
    padding-bottom:4px;
}

#trustpilot-slider .card-body p {
	margin-bottom: 0;
	font-size: 15px;
	line-height: 1.7;
}

#trustpilot-slider .card-title {
    padding-top:10px;
	margin: 0;
}

#trustpilot-slider .card-title img {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	object-fit: cover;
}

#trustpilot-slider .testimonial-avatar,
#trustpilot-slider .testimonial-avatar-image {
	width: 42px;
	height: 42px;
}

@media (max-width: 959.98px) {
	.reviews .testimonial-avatar,
	.reviews .testimonial-avatar-image {
		width: 32px;
		height: 32px;
	}

	.reviews .testimonial-avatar { font-size: 11px; }
}

#trustpilot-slider .card-title h4 {
	margin: 0;
	padding-top: 11px;
	font-size: 15px;
}

#trustpilot-slider .review-control {
	display: inline-block;
	transition: opacity 0.2s ease;
}

#trustpilot-slider .review-control img {
	display: block;
}

#trustpilot-slider .review-control.disabled {
	opacity: 0.2;
	cursor: not-allowed;
	pointer-events: none;
}

#trustpilot-slider .review-control:not(.disabled):hover {
	opacity: 0.7;
}

@media (max-width: 991px) {
	#trustpilot-slider .center-vertically {
		position: static;
		transform: none;
		margin-bottom: 30px;
	}

	#trustpilot-slider .carousel-item .col-lg-4 {
		margin-bottom: 15px;
	}
}

.carousel {
	position: relative;
}

.carousel.pointer-event {
	touch-action: pan-y;
}

.carousel-inner {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.carousel-inner::after {
	display: block;
	clear: both;
	content: "";
}

.carousel-item {
	position: relative;
	display: none;
	float: left;
	width: 100%;
	margin-right: -100%;
	backface-visibility: hidden;
	transition: transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
	.carousel-item {
		transition: none;
	}
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
	display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
	transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
	transform: translateX(-100%);
}

.carousel-fade .carousel-item {
	opacity: 0;
	transform: none;
	transition-property: opacity;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
	z-index: 1;
	opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
	z-index: 0;
	opacity: 0;
	transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
	.carousel-fade .active.carousel-item-left,
	.carousel-fade .active.carousel-item-right {
		transition: none;
	}
}

.carousel-control-prev,
.carousel-control-next {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 15%;
	padding: 0;
	color: #fff;
	text-align: center;
	background: none;
	border: 0;
	opacity: 0.5;
	transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
	.carousel-control-prev,
	.carousel-control-next {
		transition: none;
	}
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
	color: #fff;
	text-decoration: none;
	outline: 0;
	opacity: 0.9;
}

.carousel-control-prev {
	left: 0;
}

.carousel-control-next {
	right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
	display: inline-block;
	width: 20px;
	height: 20px;
	background: no-repeat 50% / 100% 100%;
}

.carousel-control-prev-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5z'/%3E%3C/svg%3E");
}

.carousel-control-next-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l4 4-4 4-1.5-1.5L3.75 4l-2.5-2.5z'/%3E%3C/svg%3E");
}

.carousel-indicators {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 15;
	display: flex;
	justify-content: center;
	padding-left: 0;
	margin-right: 15%;
	margin-left: 15%;
	list-style: none;
}

.carousel-indicators li {
	width: 30px;
	height: 3px;
	margin-right: 3px;
	margin-left: 3px;
	cursor: pointer;
	background-color: #fff;
	background-clip: padding-box;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	opacity: 0.5;
	transition: opacity 0.6s ease;
}

.carousel-indicators .active {
	opacity: 1;
}

.carousel-caption {
	position: absolute;
	right: 15%;
	bottom: 20px;
	left: 15%;
	z-index: 10;
	padding-top: 20px;
	padding-bottom: 20px;
	color: #fff;
	text-align: center;
}

#vps-use-cases {
	overflow: hidden;
}

#vps-use-cases h2 small {
	display: block;
}

#vps-use-cases .carousel-inner {
	overflow: hidden;
}

#vps-use-cases .carousel-item {
	padding: 0;
}

#vps-use-cases .carousel-item .row {
	margin-right: -15px;
	margin-left: -15px;
}

#vps-use-cases .carousel-item .col-lg-4 {
	display: flex;
}

#vps-use-cases .white-feature-box {
	width: 100%;
	height: 100%;
	padding: 30px;
	background: #fff;
}

#vps-use-cases .white-feature-box > img {
	max-width: 55px;
	height: auto;
}

#vps-use-cases .white-feature-box h4 {
	margin: 0;
}

#vps-use-cases .white-feature-box p {
	font-size: 15px;
	line-height: 1.7;
}

#vps-use-cases .use-case-sources {
	display: none;
}



#vps-use-cases .use-case-prev,
#vps-use-cases .use-case-next {
	display: inline-block;
	transition: opacity 0.2s ease;
}

#vps-use-cases .use-case-prev img,
#vps-use-cases .use-case-next img {
	display: block;
}

#vps-use-cases .use-case-prev.disabled,
#vps-use-cases .use-case-next.disabled {
	opacity: 0.3;
	pointer-events: none;
	cursor: default;
}

#vps-use-cases .use-case-prev:not(.disabled):hover,
#vps-use-cases .use-case-next:not(.disabled):hover {
	opacity: 0.7;
}

@media (max-width: 991px) {
	#vps-use-cases .prfix {
		margin-bottom: 30px;
		padding-right: 15px !important;
	}

	#vps-use-cases .carousel-item .col-lg-4 {
		margin-bottom: 15px;
	}
}

.half-list li {
	width: 50%;
	float: left;
}

/* Header dropdown */
#main-navigation > li {
	position: relative;
}

#main-navigation .nav-dropdown-menu {
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 1000;
	display: none;
	min-width: 220px;
	margin: 0;
    border-radius:6px;
	padding: 6px;
	background: #fff;
	border: 1px solid rgba(0, 0, 0, 0.08);
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
	list-style: none;
}

#main-navigation .nav-dropdown:hover > .nav-dropdown-menu,
#main-navigation .nav-dropdown:focus-within > .nav-dropdown-menu {
	display: block;
}

#main-navigation .nav-dropdown-menu li {
	display: block;
	float: none;
	width: 100%;
	margin: 0;
	padding: 0;
	line-height: normal;
}

#main-navigation .nav-dropdown-menu a {
	display: block;
	padding: 12px 18px;
	white-space: nowrap;
    border-radius:6px;
}

#main-navigation .nav-dropdown-menu a:hover {
	background: rgba(0, 0, 0, 0.04);
}


#main-navigation .nav-dropdown a i {
    font-size:14px;
    margin-left:0px !important;
}

/* Homepage datacenter globe */
.hero-map {
	position: relative;
	width: 100%;
	aspect-ratio: 645 / 590;
	isolation: isolate;
}

.home-map-globe {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	pointer-events: none;
	user-select: none;
}

.home-map-pin {
	--pin-line-width: 0px;
	position: absolute;
	left: var(--pin-x);
	top: var(--pin-y);
	z-index: 5;
	display: block;
	width: 10px;
	height: 10px;
	color: #fff !important;
	transform: translate(-50%, -50%);
}

.home-map-pin-dot {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--red);
	box-shadow: 0 0 0 4px rgba(199, 12, 16, .08);
	transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;

}

.home-map-pin-dot::after {
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	transform-origin: center center;
	position: absolute;
	border: 2px solid var(--red);
	border-radius: 50%;
	content: "";
	pointer-events: none;
	animation: location-pin-pulse 1.8s ease-out infinite;
	animation-delay: var(--pin-pulse-delay, 0s);}

.home-map-pin:nth-of-type(1)  { --pin-pulse-delay: -.04s; }
.home-map-pin:nth-of-type(2)  { --pin-pulse-delay: -1.47s; }
.home-map-pin:nth-of-type(3)  { --pin-pulse-delay: -.26s; }
.home-map-pin:nth-of-type(4)  { --pin-pulse-delay: -1.02s; }
.home-map-pin:nth-of-type(5)  { --pin-pulse-delay: -.64s; }
.home-map-pin:nth-of-type(6)  { --pin-pulse-delay: -1.71s; }
.home-map-pin:nth-of-type(7)  { --pin-pulse-delay: -1.29s; }
.home-map-pin:nth-of-type(8)  { --pin-pulse-delay: -.83s; }
.home-map-pin:nth-of-type(9)  { --pin-pulse-delay: -.45s; }
.home-map-pin:nth-of-type(10) { --pin-pulse-delay: -1.58s; }
.home-map-pin:nth-of-type(11) { --pin-pulse-delay: -.12s; }
.home-map-pin:nth-of-type(12) { --pin-pulse-delay: -1.15s; }

.home-map-pin-line {
	position: absolute;
	top: 4px;
	left: 5px;
	z-index: 1;
	display: block;
	width: var(--pin-line-width);
	height: 2px;
	background: linear-gradient(90deg, #c70c10, rgba(199, 12, 16, .32));
}

.home-map-pin-label {
	position: absolute;
	top: 4px;
	left: calc(var(--pin-line-width) + 3px);
	z-index: -2;
	display: flex;
	align-items: center;
	min-height: 24px;
    height:24px;
    line-height:24px;
    padding:0px 8px;
	border-radius: 4px;
	color: #fff;
	font-size: 12px;
	font-weight: 600;
	white-space: nowrap;
    
    background:url('../images/map-label-bg.svg') top left no-repeat;
    z-index:1001;
}


.home-map-pin-label:hover {
    background:url('../images/map-label-bg.svg') top left no-repeat !important; 
	z-index: -2;
	color:var(--red);
}

.home-map-flag {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-right: 6px;
	object-fit: cover;
	vertical-align: -3px;
}

.home-map-pin--left .home-map-pin-line {
	right: 5px;
	left: auto;
	background: linear-gradient(270deg, #c70c10, rgba(199, 12, 16, .32));
}

.home-map-pin--left .home-map-pin-label {
	right: calc(var(--pin-line-width) + 3px);
	left: auto;
    background:url('../images/map-label-bg-flipped.svg') top right no-repeat;
}



.home-map-pin--left .home-map-pin-label:hover {
    background:url('../images/map-label-bg-flipped.svg') top right no-repeat !important;
}

.home-map-pin--above {
	--pin-line-height: 12px;
	--pin-label-offset: 5px;
}

.home-map-pin--amsterdam .home-map-pin-label{
    margin-bottom: -25px;
}

.home-map-pin--warsaw .home-map-pin-label{
    margin-bottom: -7px;
}

.home-map-pin--above .home-map-pin-label,
.home-map-pin--above .home-map-pin-label:hover {
	top: auto;
	right: auto;
	bottom: calc(var(--pin-line-height) + var(--pin-label-offset));
	left: 4px;
	z-index: 1001;
	transform: none;
	background: url('../images/map-label-bg-bottom-left.svg') bottom left / 100% 100% no-repeat !important;
	border: 0;
}

.home-map-pin--above .home-map-pin-label::after {
	display: none;
	content: none;
}

.home-map-pin:hover .home-map-pin-dot,
.home-map-pin:focus .home-map-pin-dot {
	background: #ef161b;
	box-shadow: 0 0 0 6px rgba(199, 12, 16, .18);
	transform: scale(1.08);
}

.home-map-pin:focus-visible {
	outline: none;
}

.home-map-pin:focus-visible .home-map-pin-label {
	outline: 2px solid rgba(255, 255, 255, .9);
	outline-offset: 2px;
}

.home-map-pin--us        { --pin-x: 10%; --pin-y: 35%; }
.home-map-pin--coventry  { --pin-x: 39%; --pin-y: 27%; }
.home-map-pin--amsterdam { --pin-x: 44%; --pin-y: 31%; --pin-line-height: 24px; }
.home-map-pin--frankfurt { --pin-x: 42%; --pin-y: 34.6%; }
.home-map-pin--bucharest { --pin-x: 58.5%; --pin-y: 38%; }
.home-map-pin--sao-paulo { --pin-x: 20%; --pin-y: 73%; }
.home-map-pin--paris { --pin-x: 38%; --pin-y: 38.5%; }
.home-map-pin--warsaw { --pin-x: 50%; --pin-y: 34%; --pin-line-height: 4px; }
.home-map-pin--johannesburg { --pin-x: 58.5%; --pin-y: 83%; }
.home-map-pin--tokyo     { --pin-x: 99%; --pin-y: 46%; }
.home-map-pin--singapore { --pin-x: 93%; --pin-y: 71%; }
.home-map-pin--sydney    { --pin-x: 85%; --pin-y: 90%; }

@media (prefers-reduced-motion: reduce) {
	.home-map-pin-dot::after,
	.status-online::after {
		animation: none;
	}

	.home-map-pin-dot,
	.home-map-pin-label {
		transition: none;
	}
}

/* 404 page */
#error-404 {
	position: relative;
	display: flex;
	min-height: 800px;
	align-items: center;
	isolation: isolate;
	background:
		linear-gradient(90deg, rgba(14, 14, 14, .97), rgba(14, 14, 14, .82)),
		url('../images/banner-servers.png') center / cover no-repeat;
}

#error-404::before {
	position: absolute;
	z-index: 0;
	inset: 0;
	background:
		radial-gradient(circle at 50% 45%, rgba(187, 12, 12, .2), transparent 34%),
		linear-gradient(180deg, transparent 60%, rgba(0, 0, 0, .32));
	content: "";
	pointer-events: none;
}

.error-page .container {
	position: relative;
	z-index: 1;
	max-width: 780px;
}

.error-eyebrow,
.legal-eyebrow {
	display: block;
	margin-bottom: 18px;
	color: var(--red-hover);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 2.5px;
}

.error-code {
	margin-bottom: 24px;
	color: #fff;
	font-size: clamp(110px, 15vw, 210px);
	font-weight: 800;
	letter-spacing: -.08em;
	line-height: .72;
	text-shadow: 0 0 70px rgba(187, 12, 12, .28);
}

.error-page h1 {
	margin-bottom: 15px;
}

.error-page p:not(.error-code) {
	max-width: 610px;
	margin-right: auto;
	margin-left: auto;
	color: #c9c9c9;
}

.error-actions {
	margin-top: 30px;
}

.error-actions .status-online {
	display: inline-block;
	float: none;
	margin: 0 10px 1px 0;
	vertical-align: middle;
}

.error-help {
	padding-top: 0;
	background: #fff;
}

.error-help .container {
	max-width: 760px;
}

.error-help p {
	padding-top: 8px;
	padding-bottom: 28px;
}

/* Legal pages */
.legal-hero {
	background:
		radial-gradient(circle at 50% 0, rgba(187, 12, 12, .2), transparent 42%),
		var(--dark-bg);
}

.legal-hero .container {
	max-width: 980px;
}

.legal-hero p {
	max-width: 100%;
	font-size:17px;
	margin: 0 auto;
	color: #c9c9c9;
}

.legal-switcher {
	display: inline-flex;
	margin-top: 0px;
	margin-top:0px;
	padding: 5px;
	border: 1px solid rgba(255, 255, 255, .12);
	border-radius: 40px;
	background: rgba(255, 255, 255, .045);
}

.legal-switcher a {
	padding: 6px 20px;
	border-radius: 32px;
	color: #c9c9c9;
	font-size: 15px;
	font-weight: 600;
}

.legal-switcher a:hover,
.legal-switcher a:focus {
	color: #fff;
	background: rgba(255, 255, 255, .07);
}

.legal-switcher a.active,
.legal-switcher a.active:hover,
.legal-switcher a.active:focus {
	background: var(--red);
	color: #fff;
}

.legal-page {
	background: var(--light-bg);
}

.legal-document {
	max-width: 1020px;
	margin: 0 auto;
	padding: clamp(34px, 5vw, 72px);
	border: 1px solid #e2e2e2;
	border-radius: 14px;
	background: #fff;
	box-shadow: 0 18px 45px rgba(0, 0, 0, .045);
}

.legal-document > h2:first-child {
	margin-bottom: 24px;
	padding-bottom: 22px;
	border-bottom: 1px solid #e5e5e5;
}

.legal-document h3 {
	margin-top: 34px;
	margin-bottom: 13px;
	font-size: 22px;
	line-height: 30px;
}

.legal-document h4 {
	margin-top: 24px;
	margin-bottom: 0px;
	font-size: 18px;
}

.legal-document p,
.legal-document li {
	line-height: 27px;
}

.legal-document ul {
	margin: -4px 0 20px 22px;
	list-style: disc;
}

.legal-document li {
	padding: 4px 0 4px 5px;
}

.legal-list-two-column {
	columns: 2;
	column-gap: 50px;
}

.legal-list-two-column li {
	break-inside: avoid;
}

.legal-support-note {
	margin-top: 48px;
	padding: 30px;
	border: 1px solid rgba(187, 12, 12, .14);
	border-radius: 10px;
	background: rgba(187, 12, 12, .045);
}

.legal-support-note h4 {
	margin-top: 0;
}

.legal-support-note p {
	padding-bottom: 20px;
}

@media (max-width: 767.98px) {
	#error-404 {
		min-height: 800px;
		padding: 80px 0;
	}

	.error-code {
		font-size: 112px;
	}

	.error-actions .button,
	.error-help .button {
		display: block;
		width: 100%;
		margin: 10px 0 0 !important;
		text-align: center;
	}

	.legal-switcher {
		display: flex;
		width: 100%;
		border-radius: 12px;
		flex-direction: column;
	}

	.legal-switcher a {
		padding: 11px 14px;
		border-radius: 8px;
		text-align: center;
	}

	.legal-list-two-column {
		columns: 1;
	}

	.legal-document {
		padding: 30px 22px;
	}
}


#home-cta-banner .search-box {
    padding:8px !important;
}

.form-control:focus-within {
    outline:none;
}

#home-cta-banner .step-list li {
	color:#fff;
    line-height: 24px;
}

#home-cta-banner .step-list .step-number {
	color:#fff;
	border-color:#fff;
	font-size:11px;
	height:24px;
	width:24px;
	border:1.5px solid #fff;
	line-height:21px;
}

#home-cta-banner .status-online {
    margin: 19px 12px 4px 4px;
}

.service-price {
	padding-top:5px;
}

.dc-feature-list {
	padding-bottom:20px;
}

.timeline-item:hover .year-button {
	color:#fff;
}

.timeline-item.active .year-button span {
	color:#fff;
}

#meet-the-team .col:hover {
	background:var(--light-bg);
}

.logo-footer {
	    display: inline-block;
    margin-bottom: 23px !important;
}


.legal-hero {
	min-height:auto;
}

.order-summary .flag-select-ui {
	display:none;
}


.reseller-billing-cycle-wrap .billing-cycle-select,
.reseller-billing-cycle-wrap .billing-cycle-select.flag-select-native {
	display: block !important;
	position: static !important;
	width: 320px !important;
	max-width: 100% !important;
	height: 48px !important;
	margin: 0 0 0 auto !important;
	padding: 0 48px 0 18px !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	border: 0 !important;
	border-radius: 48px !important;
	outline: 0 !important;
	background: url('../images/select-down.svg') center right 16px no-repeat rgba(217, 217, 217, .2) !important;
	color: rgba(50, 50, 50, .8) !important;
	font-family: "DM Sans", sans-serif !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
}

.reseller-billing-cycle-wrap .flag-select-ui {
	display: none !important;
}

@media (max-width: 959.98px) {
	.reseller-billing-cycle-wrap .billing-cycle-select,
	.reseller-billing-cycle-wrap .billing-cycle-select.flag-select-native {
		width: 100% !important;
		margin-left: 0 !important;
	}
}


.slider-markers span:nth-child(1) {left:2% !important;}
.slider-markers span:nth-child(2) {left:21.5% !important;}
.slider-markers span:nth-child(3) {left:41% !important;}
.slider-markers span:nth-child(4) {left:59.75% !important;}
.slider-markers span:nth-child(5) {left:79% !important;}
.slider-markers span:nth-child(6) {left:98% !important;}

@media (min-width: 1180px) and (max-width: 1580px) {
    #home-cta {
		background-size:62%;
    }
} 

.location-map-intro {
	max-width: 700px;
	margin-top: 10px;
	color: rgba(50, 50, 50, .72);
	font-size: 16px;
}

.location-map .filter {
	border-color: rgba(0, 0, 0, .12);
	border-radius: 12px;
	box-shadow: 0 7px 18px rgba(0, 0, 0, .025);
}

.location-map .filter:hover {
	border-color: rgba(189, 15, 15, .24);
	box-shadow: 0 10px 26px rgba(0, 0, 0, .07);
}

.location-map .filter.active {
	border-color: rgba(189, 15, 15, .42);
	background: linear-gradient(135deg, rgba(189, 15, 15, .075), rgba(189, 15, 15, .018));
	box-shadow: 0 9px 24px rgba(189, 15, 15, .07);
}


.location-map .map-outline {
	position: relative;
	z-index: 1;
	opacity: .48;
	filter: contrast(.86);
}

.map-connections {
	position: absolute;
	z-index: 2;
	inset: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.network-route {
	fill: none;
	stroke: rgba(189, 15, 15, .34);
	stroke-width: 1.25;
	stroke-linecap: round;
	stroke-dasharray: 3.2 4.6;
	vector-effect: non-scaling-stroke;
	animation: network-route-flow 18s linear infinite;
	animation-delay: var(--route-delay, 0s);
	filter: drop-shadow(0 0 3px rgba(189, 15, 15, .12));
}

@keyframes network-route-flow {
	to { stroke-dashoffset: -78; }
}

.network-map-status {
	position: absolute;
	z-index: 8;
	top: 20px;
	left: 0;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 12px;
	border: 1px solid rgba(0, 0, 0, .08);
	border-radius: 999px;
	background: rgba(255, 255, 255, .91);
	box-shadow: 0 10px 28px rgba(0, 0, 0, .07);
	color: #222;
	font-size: 12px;
	line-height: 1;
	backdrop-filter: blur(9px);
	-webkit-backdrop-filter: blur(9px);
}

.network-map-status-dot {
	position: relative;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #21a366;
	box-shadow: 0 0 0 4px rgba(33, 163, 102, .1);
}

.network-map-status-separator {
	width: 1px;
	height: 13px;
	background: rgba(0, 0, 0, .12);
}

.network-map-status-label {
	font-weight: 500;
}

.network-map-visible-count {
	font-weight: 600;
}

.location-map .map-markers {
	z-index: 4;
}

.location-map .marker {
	z-index: 4;
	width: 14px;
	height: 14px;
	border: 2px solid #fff;
	background: var(--red);
	box-shadow: 0 3px 9px rgba(189, 15, 15, .28);
}

.location-map .marker::after {
	top: 50%;
	left: 50%;
	width: calc(100% + 4px);
	height: calc(100% + 4px);
	border-width: 1px;

}

.location-map .marker:hover,
.location-map .marker.active {
	width: 17px;
	height: 17px;
	background: var(--red);
	box-shadow: 0 0 0 4px #fff, 0 0 0 7px rgba(189, 15, 15, .15), 0 8px 18px rgba(189, 15, 15, .22);
}

.location-map .location-popup {
	z-index: 12;
	display: block;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	cursor: default;
	width: 355px;
	max-width: calc(100% - 20px);
	padding: 16px;
	border: 1px solid rgba(255, 255, 255, .075);
	border-radius: 15px;
	background: linear-gradient(145deg, rgba(28, 28, 28, .98), rgba(13, 13, 13, .985));
	box-shadow: 0 22px 55px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .035);
	color: inherit;
	font-weight: 400;
	text-decoration: none;
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
}


.location-map .location-popup.is-ready {
	visibility: visible;
	pointer-events: auto;
}

.location-map .location-popup:hover {
	background: linear-gradient(145deg, #222, #111);
	box-shadow: 0 26px 60px rgba(0, 0, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .045);
}

.popup-header {
	display: flex;
	align-items: center;
	gap: 11px;
	min-width: 0;
}

.popup-flag-shell {
	display: flex;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(255, 255, 255, .09);
	border-radius: 10px;
	background: rgba(255, 255, 255, .055);
}

.location-map .popup-flag {
	width: 24px;
	height: 16px;
	box-shadow: 0 2px 5px rgba(0, 0, 0, .22);
}

.popup-heading {
	display: block;
	min-width: 0;
	flex: 1 1 auto;
}

.popup-region {
	display: block;
	margin-bottom: 3px;
	color: rgba(255, 255, 255, .52);
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .11em;
	text-transform: uppercase;
}

.location-map .popup-city {
	display: block;
	overflow: hidden;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.25;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.popup-code {
	flex: 0 0 auto;
	padding: 6px 8px;
	border: 1px solid rgba(255, 255, 255, .085);
	border-radius: 7px;
	background: rgba(255, 255, 255, .05);
	color: rgba(255, 255, 255, .66);
	font-size: 10px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .06em;
}

.popup-detail {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
	padding-top: 13px;
	border-top: 1px solid rgba(255, 255, 255, .08);
}

.popup-detail > i {
	flex: 0 0 28px;
	width: 28px;
	color: #ef3b3b;
	font-size: 17px;
	text-align: center;
}

.popup-detail > span {
	display: block;
	min-width: 0;
}

.popup-detail small {
	display: block;
	margin-bottom: 3px;
	color: rgba(255, 255, 255, .42);
	font-size: 9px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: .1em;
}

.popup-capacity {
	display: block;
	color: rgba(255, 255, 255, .9);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.25;
}

.popup-network {
	display: block;
	margin-top: 11px;
	color: rgba(255, 255, 255, .61);
	font-size: 12px;
	font-weight: 400;
	line-height: 1.45;
}

.popup-looking-glass {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin-top: 9px;
	color: #ef3b3b;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none;
}

.popup-looking-glass:hover {
	color: var(--red-hover);
}

.popup-looking-glass i {
	font-size: 10px;
}

.popup-looking-glass.is-hidden {
	display: none;
}

.popup-action {
	display: flex;
	color: #fff;
	text-decoration: none;
	cursor: pointer;
	margin-top: 12px;
	padding-top: 11px;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid rgba(255, 255, 255, .08);
	color: #fff;
	font-size: 12px;
	font-weight: 600;
}

.popup-action i {
	color: #ef3b3b;
	transition: transform .18s ease;
}

.location-map .popup-action:hover {
	color: #ef3b3b;
}

.location-map .popup-action:hover i {
	transform: translateX(3px);
}

.location-map .popup-arrow {
	border-right-color: #181818;
}

.location-map .location-popup.popup-left .popup-arrow {
	border-left-color: #111;
}

.location-map .location-popup.popup-above .popup-arrow {
	border-top-color: #111;
}

.location-map .location-popup.popup-below .popup-arrow {
	border-bottom-color: #181818;
}

@media (prefers-reduced-motion: reduce) {
	.network-route,
	.location-map .marker::after {
		animation: none;
	}
}

.location-map .location-popup.popup-detached .popup-arrow {
	display: none;
}

.dc-title .dc-location-code {
	font-size: 13px;
}

/* Footer bottom-row alignment */
.footer .copyright .row {
	align-items: center;
}

.footer .copyright .social,
.footer .copyright .footer-legal {
	justify-content: flex-end;
	gap: 32px;
}

.footer .copyright .social {
	gap: 22px;
}

.footer .copyright .social a,
.footer .copyright .footer-email {
	display: inline-flex;
	align-items: center;
	line-height: 1;
}

.footer .copyright .footer-email i {
	position: relative;
	top: -2px;
}

.footer .copyright .footer-legal {
	justify-content: flex-end;
	gap: 32px;
}


.footer .copyright .col.text-right {
	padding-top: 1px;
}


.search-btn:focus {
	transform: unset;
}


/* Compact plan location labels */
.plan-location-filter {
	position: relative;
}

.plan-location-label {
	position: absolute;
	z-index: 1302;
	top: 12px;
	left: 0;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--text);
	font-size: 11px;
	font-weight: 600;
	line-height: 12px;
}

.plan-location-label > label {
	opacity: .66;
	pointer-events: none;
}

.plan-location-filter:not(.is-enhanced) .plan-location-label {
	visibility: hidden;
}

.plan-location-filter.is-enhanced .plan-location-label {
	visibility: visible;
}






.plan-location-filter .plan-select.flag-select-native + .flag-select-ui .flag-select-button {
	height: 66px;
	padding-top: 24px;
}


.plan-location-help {
	position: relative;
	display: inline-flex;
	width: 14px;
	height: 14px;
	align-items: center;
	justify-content: center;
	border: 1px solid rgba(0,0,0,.25);
	border-radius: 50%;
	color: rgba(0,0,0,.58);
	font-size: 9px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	cursor: help;
}

.plan-location-help::after {
	position: absolute;
	z-index: 1400;
	left: 50%;
	bottom: calc(100% + 8px);
	width: 230px;
	padding: 8px 10px;
	border-radius: 6px;
	background: #171717;
	color: #fff;
	content: attr(data-tooltip);
	font-size: 11px;
	font-weight: 400;
	line-height: 16px;
	letter-spacing: 0;
	text-align: left;
	opacity: 0;
	pointer-events: none;
	transform: translate(-50%, 4px);
	transition: opacity .16s ease, transform .16s ease;
	visibility: hidden;
}

.plan-location-help:hover::after,
.plan-location-help:focus::after,
.plan-location-help:focus-visible::after {
	opacity: 1;
	transform: translate(-50%, 0);
	visibility: visible;
}

.plan-location-help:focus {
	outline: none;
}

.plan-location-help:focus-visible {
	outline: 2px solid rgba(187,12,12,.25);
	outline-offset: 2px;
}
