/* Pricing hero — aligned with the dedicated DDoS and DNS product experiences. */
.d360-page-pricing main { overflow: clip; }

.d360-page-pricing .pricing-hero-v3 {
	position: relative;
	isolation: isolate;
	min-height: 0;
	overflow: hidden;
	padding-top: clamp(76px, 8vw, 112px);
	color: #fff;
	background:
		radial-gradient(circle at 87% 10%, rgba(34, 211, 238, .16), transparent 29%),
		radial-gradient(circle at 8% 38%, rgba(99, 102, 241, .17), transparent 30%),
		linear-gradient(145deg, #0b1224 0%, #07111f 53%, #081827 100%);
}

.d360-page-pricing .pricing-hero-v3::before {
	z-index: -2;
	opacity: .18;
	background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px);
	background-size: 52px 52px;
	mask-image: linear-gradient(105deg, #000, transparent 68%);
}

.pricing-hero-v3__mesh {
	position: absolute;
	z-index: -1;
	top: -330px;
	right: -250px;
	width: 880px;
	height: 880px;
	border: 1px solid rgba(103, 232, 249, .14);
	border-radius: 50%;
	box-shadow: inset 0 0 150px rgba(99, 102, 241, .07);
	pointer-events: none;
}

.d360-page-pricing .pricing-hero-v3__inner {
	position: relative;
	z-index: 1;
	display: grid;
	min-height: 0;
	padding-top: 0;
	padding-bottom: clamp(76px, 8vw, 108px);
	grid-template-columns: minmax(0, .87fr) minmax(570px, 1.13fr);
	align-items: center;
	gap: clamp(58px, 7vw, 104px);
}

.d360-page-pricing .pricing-hero-v3__eyebrow {
	display: flex;
	margin: 0 0 23px;
	align-items: center;
	gap: 11px;
	color: #7ee8f7;
	font-size: 10px;
	font-weight: 850;
	letter-spacing: .15em;
	text-transform: uppercase;
}

.d360-page-pricing .pricing-hero-v3__eyebrow i {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #42d7ec;
	box-shadow: 0 0 0 6px rgba(66, 215, 236, .1), 0 0 20px rgba(66, 215, 236, .52);
}

.d360-page-pricing .pricing-hero-v3 h1 {
	max-width: 735px;
	margin: 0;
	color: #fff;
	font: 780 clamp(50px, 5.25vw, 73px)/1.01 'Manrope', 'Inter', sans-serif;
	letter-spacing: -.061em;
}

.d360-page-pricing .pricing-hero-v3 h1 em {
	color: transparent;
	font-style: normal;
	background: linear-gradient(92deg, #67e8f9 0%, #55d9ed 42%, #9385f7 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

.d360-page-pricing .pricing-hero-v3__copy > .pricing-hero-v3__lead {
	max-width: 650px;
	margin: 25px 0 0;
	color: #a9b5c7;
	font-size: 16px;
	line-height: 1.75;
}

.d360-page-pricing .pricing-hero-v3__actions {
	display: flex;
	margin-top: 33px;
	align-items: center;
	gap: 28px;
}

.d360-page-pricing .pricing-hero-v3__primary {
	min-height: 52px;
	padding: 0 23px;
	border: 0;
	border-radius: 10px;
	color: #06121f;
	background: linear-gradient(108deg, #55dff2, #67e8f9 58%, #9485f7);
	box-shadow: 0 19px 40px -17px rgba(55, 209, 232, .72);
}

.d360-page-pricing .pricing-hero-v3__primary:hover {
	color: #06121f;
	background: linear-gradient(108deg, #7ee8f7, #8aeeff 58%, #a99cff);
	box-shadow: 0 23px 46px -17px rgba(55, 209, 232, .82);
	transform: translateY(-2px);
}

.d360-page-pricing .pricing-hero-v3__secondary {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	color: #d7dce6;
	font-size: 12px;
	font-weight: 770;
}

.d360-page-pricing .pricing-hero-v3__secondary span { color: #67e8f9; transition: transform .18s ease; }
.d360-page-pricing .pricing-hero-v3__secondary:hover { color: #fff; }
.d360-page-pricing .pricing-hero-v3__secondary:hover span { transform: translateY(3px); }

.d360-page-pricing .pricing-hero-v3__notes {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 19px;
	margin: 27px 0 0;
	padding: 0;
	color: #929db1;
	font-size: 10.5px;
	font-weight: 650;
	list-style: none;
}

.d360-page-pricing .pricing-hero-v3__notes li { display: flex; align-items: center; gap: 6px; }
.d360-page-pricing .pricing-hero-v3__notes .fx-grid__icon { width: 15px; height: 15px; color: #67e8f9; opacity: 1; }

.d360-page-pricing .pricing-hero-v3__visual {
	position: relative;
	min-height: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .13);
	border-radius: 23px;
	color: #e9eef7;
	background: #0b1426;
	box-shadow: 0 42px 100px rgba(0, 0, 0, .42), 0 0 70px rgba(56, 207, 231, .08);
	transform: perspective(1450px) rotateY(-1deg);
}

.pricing-console__bar {
	display: grid;
	min-height: 49px;
	padding: 0 17px;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, .08);
	color: #8390a6;
	background: #121d31;
}

.pricing-console__bar > span { display: flex; gap: 5px; }
.pricing-console__bar > span i { width: 7px; height: 7px; border-radius: 50%; background: #fb7185; }
.pricing-console__bar > span i:nth-child(2) { background: #fbbf24; }
.pricing-console__bar > span i:nth-child(3) { background: #34d399; }
.pricing-console__bar small { font: 600 8px/1 ui-monospace, SFMono-Regular, Menlo, monospace; }
.pricing-console__bar b { display: flex; justify-self: end; align-items: center; gap: 6px; color: #70e7f7; font-size: 7px; letter-spacing: .08em; text-transform: uppercase; }
.pricing-console__bar b i { width: 5px; height: 5px; border-radius: 50%; background: #52dcec; box-shadow: 0 0 8px #52dcec; }

.pricing-console__summary {
	display: grid;
	min-height: 145px;
	padding: 24px 27px;
	grid-template-columns: 1fr minmax(170px, .85fr);
	align-items: center;
	gap: 28px;
	border-bottom: 1px solid rgba(255, 255, 255, .075);
	background: radial-gradient(circle at 30% 20%, rgba(49, 201, 226, .12), transparent 45%);
}

.pricing-console__summary > div:first-child > span,
.pricing-console__summary > div:first-child > strong,
.pricing-console__summary > div:first-child > small { display: block; }
.pricing-console__summary > div:first-child > span { color: #8b99ae; font-size: 8px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.pricing-console__summary > div:first-child > strong { margin-top: 7px; color: #fff; font-size: 38px; letter-spacing: -.05em; }
.pricing-console__summary > div:first-child > small { margin-top: 4px; color: #718096; font-size: 8px; }
.pricing-console__basis { display: grid; padding-left: 22px; grid-template-columns: 1fr auto; gap: 10px 16px; border-left: 1px solid rgba(255, 255, 255, .08); }
.pricing-console__basis span { color: #718096; font-size: 7px; text-transform: uppercase; }
.pricing-console__basis strong { color: #dce5ef; font-size: 8px; text-align: right; }

.pricing-console__tiers { padding: 13px 17px 16px; }
.pricing-console__tiers header { display: flex; min-height: 34px; padding: 0 8px; align-items: center; justify-content: space-between; color: #7f8da1; font-size: 7px; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.pricing-console__tiers header small { color: #657389; font-size: 6.5px; }
.pricing-console__tiers > div { display: grid; min-height: 38px; padding: 7px 8px; grid-template-columns: 52px minmax(80px, 1fr) 68px 70px; align-items: center; gap: 11px; border-top: 1px solid rgba(255, 255, 255, .065); }
.pricing-console__tiers b { color: #dce3ed; font-size: 8px; }
.pricing-console__tiers > div > span { height: 5px; overflow: hidden; border-radius: 999px; background: rgba(255, 255, 255, .07); }
.pricing-console__tiers > div > span i { display: block; width: var(--tier-width); height: 100%; border-radius: inherit; background: linear-gradient(90deg, #4edbeb, #8b7af2); box-shadow: 0 0 7px rgba(78, 219, 235, .25); }
.pricing-console__tiers small { color: #718096; font-size: 7px; }
.pricing-console__tiers strong { color: #9debf5; font-size: 8px; text-align: right; }

.pricing-console__footer {
	display: flex;
	min-height: 39px;
	padding: 0 17px;
	align-items: center;
	justify-content: space-between;
	border-top: 1px solid rgba(255, 255, 255, .07);
	color: #6f7d91;
	background: #101b2d;
	font-size: 6.5px;
}

.pricing-console__footer span { display: flex; align-items: center; gap: 6px; }
.pricing-console__footer span i { width: 5px; height: 5px; border-radius: 50%; background: #42d7d9; box-shadow: 0 0 7px #42d7d9; }

.pricing-ipilot { position: relative; overflow: hidden; color: #fff; background: radial-gradient(circle at 92% 8%,rgba(99,102,241,.22),transparent 32%),linear-gradient(145deg,#0d1629,#131f35); }
.pricing-ipilot__head { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(300px,.72fr); align-items: end; gap: clamp(38px,7vw,90px); }
.pricing-ipilot__head .eyebrow { color: #87e7f4; }
.pricing-ipilot__head h2 { max-width: 760px; margin: 12px 0 0; color: #fff; font: 780 clamp(36px,4.5vw,56px)/1.08 'Manrope','Inter',sans-serif; letter-spacing: -.05em; }
.pricing-ipilot__head > p { margin: 0; color: #aab6c8; font-size: 14px; line-height: 1.75; }
.pricing-ipilot__grid { display: grid; margin-top: 48px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.pricing-ipilot__grid article { display: flex; min-height: 310px; padding: 29px; flex-direction: column; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(255,255,255,.045); }
.pricing-ipilot__grid article.is-featured { border-color: rgba(103,232,249,.5); background: linear-gradient(145deg,rgba(43,178,207,.17),rgba(122,97,226,.13)); }
.pricing-ipilot__grid small { color: #87e7f4; font-size: 9px; font-weight: 850; letter-spacing: .14em; }
.pricing-ipilot__grid strong { display: block; margin-top: 28px; color: #fff; font: 790 clamp(28px,3.2vw,40px)/1.1 'Manrope','Inter',sans-serif; letter-spacing: -.045em; }
.pricing-ipilot__grid p { margin: 13px 0 27px; color: #aab6c8; font-size: 12px; line-height: 1.7; }
.pricing-ipilot__grid a { margin-top: auto; color: #8debf7; font-size: 11px; font-weight: 800; }
.pricing-ipilot__rules { display: grid; margin-top: 14px; grid-template-columns: repeat(4,minmax(0,1fr)); border: 1px solid rgba(255,255,255,.09); border-radius: 14px; overflow: hidden; background: rgba(255,255,255,.035); }
.pricing-ipilot__rules span { min-height: 62px; padding: 17px; color: #8f9caf; font-size: 9px; text-align: center; }
.pricing-ipilot__rules span + span { border-left: 1px solid rgba(255,255,255,.08); }
.pricing-ipilot__rules b { display: block; margin-bottom: 5px; color: #eef4fa; font-size: 10px; }

.pricing-hero-v3__metrics {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	border-top: 1px solid rgba(255, 255, 255, .1);
}

.pricing-hero-v3__metrics > div { display: flex; min-height: 110px; padding: 26px clamp(14px, 3vw, 34px); align-items: center; gap: 13px; }
.pricing-hero-v3__metrics > div + div { border-left: 1px solid rgba(255, 255, 255, .1); }
.pricing-hero-v3__metrics strong { color: #67e8f9; font: 770 clamp(22px, 2.3vw, 31px)/1 'Manrope', sans-serif; letter-spacing: -.04em; }
.pricing-hero-v3__metrics span { color: #7f8ca2; font-size: 8px; font-weight: 750; line-height: 1.5; letter-spacing: .045em; text-transform: uppercase; }

.pricing-reviews-section { padding-top: clamp(52px, 7vw, 88px); padding-bottom: clamp(52px, 7vw, 88px); background: linear-gradient(180deg, #f7f9fc, #fff); }
.pricing-reviews-head { max-width: 680px; margin: 0 auto clamp(28px, 4vw, 46px); text-align: center; }
.pricing-reviews-head h2 { margin: 10px 0 12px; color: #172033; font: 780 clamp(30px, 4vw, 46px)/1.1 'Manrope', 'Inter', sans-serif; letter-spacing: -.045em; }
.pricing-reviews-head p { max-width: 580px; margin: 0 auto; color: #637085; font-size: 15px; line-height: 1.65; }
.pricing-reviews-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.pricing-review { display: flex; min-height: 280px; padding: 25px; flex-direction: column; border: 1px solid #e2e8f0; border-radius: 14px; background: #fff; box-shadow: 0 12px 30px rgba(15, 23, 42, .05); }
.pricing-review__stars { margin-bottom: 17px; color: #f59e0b; font-size: 17px; letter-spacing: .14em; }
.pricing-review blockquote { margin: 0; }
.pricing-review blockquote p { margin: 0; color: #46536a; font-size: 14px; line-height: 1.7; }
.pricing-review footer { margin-top: auto; padding-top: 19px; border-top: 1px solid #edf1f6; }
.pricing-review footer strong, .pricing-review footer span { display: block; }
.pricing-review footer strong { color: #1d2939; font-size: 13px; }
.pricing-review footer span { margin-top: 4px; color: #748197; font-size: 11px; line-height: 1.45; }

@media (max-width: 1120px) {
	.d360-page-pricing .pricing-hero-v3__inner { grid-template-columns: 1fr; }
	.d360-page-pricing .pricing-hero-v3__copy { max-width: 840px; margin: 0 auto; text-align: center; }
	.d360-page-pricing .pricing-hero-v3__eyebrow,
	.d360-page-pricing .pricing-hero-v3__actions,
	.d360-page-pricing .pricing-hero-v3__notes { justify-content: center; }
	.d360-page-pricing .pricing-hero-v3 h1,
	.d360-page-pricing .pricing-hero-v3__copy > .pricing-hero-v3__lead { margin-right: auto; margin-left: auto; }
	.d360-page-pricing .pricing-hero-v3__visual { display: block; width: min(760px, 100%); margin: 0 auto; transform: none; }
	.pricing-reviews-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pricing-ipilot__head { grid-template-columns: 1fr; gap: 20px; }
}

@media (max-width: 700px) {
	.d360-page-pricing .pricing-hero-v3 { padding-top: 61px; }
	.d360-page-pricing .pricing-hero-v3__inner { gap: 48px; padding-bottom: 64px; }
	.d360-page-pricing .pricing-hero-v3 h1 { font-size: clamp(43px, 12vw, 56px); }
	.d360-page-pricing .pricing-hero-v3__copy > .pricing-hero-v3__lead { font-size: 15px; }
	.d360-page-pricing .pricing-hero-v3__actions { align-items: stretch; flex-direction: column; gap: 18px; }
	.d360-page-pricing .pricing-hero-v3__actions .btn { width: 100%; }
	.d360-page-pricing .pricing-hero-v3__secondary { justify-content: center; }
	.d360-page-pricing .pricing-hero-v3__notes { display: grid; width: fit-content; margin-right: auto; margin-left: auto; justify-content: start; text-align: left; }
	.pricing-hero-v3__metrics { grid-template-columns: repeat(2, 1fr); }
	.pricing-hero-v3__metrics > div:nth-child(3) { border-top: 1px solid rgba(255, 255, 255, .1); border-left: 0; }
	.pricing-hero-v3__metrics > div:nth-child(4) { border-top: 1px solid rgba(255, 255, 255, .1); }
	.pricing-review { min-height: 0; }
	.pricing-ipilot__grid { grid-template-columns: 1fr; }
	.pricing-ipilot__grid article { min-height: 245px; }
	.pricing-ipilot__rules { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.pricing-ipilot__rules span:nth-child(3) { border-top: 1px solid rgba(255,255,255,.08); border-left: 0; }
	.pricing-ipilot__rules span:nth-child(4) { border-top: 1px solid rgba(255,255,255,.08); }
}

@media (max-width: 520px) {
	.pricing-reviews-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
	.d360-page-pricing .pricing-hero-v3__eyebrow { line-height: 1.5; }
	.pricing-console__bar { grid-template-columns: 1fr auto; }
	.pricing-console__bar small { display: none; }
	.pricing-console__summary { padding: 20px; grid-template-columns: 1fr; gap: 18px; }
	.pricing-console__basis { padding: 16px 0 0; border-top: 1px solid rgba(255, 255, 255, .08); border-left: 0; }
	.pricing-console__tiers { padding-inline: 10px; }
	.pricing-console__tiers header small,
	.pricing-console__tiers > div > span { display: none; }
	.pricing-console__tiers > div { grid-template-columns: 60px 1fr 76px; }
	.pricing-console__footer small { display: none; }
	.pricing-hero-v3__metrics > div { min-height: 94px; padding: 20px 12px; gap: 9px; }
	.pricing-hero-v3__metrics strong { font-size: 20px; }
	.pricing-hero-v3__metrics span { font-size: 6.8px; }
}

@media (prefers-reduced-motion: reduce) {
	.d360-page-pricing .pricing-hero-v3__secondary span { transition: none; }
}
