.htap {
	&-contain {
		width: 100%;
		width: calc(100vw - calc(16px * 2));
		margin: 0 auto;

		@include media-min($medium) {
			width: calc(100vw - calc(32px * 2));
		}
		@include media-min($xlarge) {
			width: 1344px;
		}
	}

	&-button {
		border: 1px solid #0c0c14;
		border-radius: 6px;
		padding: 12px 20px;
		font-weight: 600;
		font-size: 16px;
		line-height: 24px;
		color: #fff;
		text-decoration: none;
		background: linear-gradient(279.62deg, #1a2dcd 0%, #b75736 100%);
		cursor: pointer;
		&:hover {
			background: transparent;
			border-color: #fff;
		}
		&.black {
			background: #211e44;
			padding: 10px 12px;
			&:hover {
				color: #282a36;
				background: transparent;
				border-color: #282a36;
			}
			&.disabled {
				cursor: default;
				pointer-events: none;
			}
		}
	}
	&-link {
		color: #1f9cdb !important;
		text-decoration: none !important;
		&::after {
			color: #1f9cdb !important;
		}
	}

	&-icon_logo {
		display: inline-block;
		width: 100px;
		height: 24px;
		background: url("#{$theme-url-base}/media/htap/logo-pingcap.svg") center no-repeat;
		background-size: contain;
		vertical-align: middle;
		margin-left: 1rem;
	}

	&-icon__title {
		position: absolute;
		width: 200px;
		height: 200px;
		display: block;
		&.first {
			top: -60px;
			left: -140px;
			background: url("#{$theme-url-base}/media/htap/icon-title-logo-1.png") center no-repeat;
			background-size: contain;
		}
		&.second {
			background: url("#{$theme-url-base}/media/htap/icon-title-logo-2.png") center no-repeat;
			background-size: contain;
			right: 0px;
			@include media-min($large) {
				right: -80px;
			}
			top: 35%;
		}
		&.three {
			background: url("#{$theme-url-base}/media/htap/icon-title-logo-3.png") center no-repeat;
			background-size: contain;
			top: -60px;
		}
	}

	&-icon__air {
		width: 64px;
		height: 64px;
		background: url("#{$theme-url-base}/media/htap/icon-air.svg") center no-repeat;
	}
	&-icon__train {
		display: block;
		width: 64px;
		height: 64px;
		background: url("#{$theme-url-base}/media/htap/icon-train.svg") center no-repeat;
	}
	&-icon__car {
		display: block;
		width: 64px;
		height: 64px;
		background: url("#{$theme-url-base}/media/htap/icon-car.svg") center no-repeat;
	}
	&-icon__twitter {
		width: 50px;
		height: 50px;
		background: url("#{$theme-url-base}/media/htap/twitter.svg") center no-repeat;
	}
	&-icon__youtube {
		width: 50px;
		height: 50px;
		background: url("#{$theme-url-base}/media/htap/youtube.svg") center no-repeat;
	}
	&-icon__linkedin {
		width: 50px;
		height: 50px;
		background: url("#{$theme-url-base}/media/htap/linkedin.svg") center no-repeat;
	}

	&-title__container {
		position: relative;
		display: flex;
		align-items: flex-start;
		flex-direction: column;
		padding-bottom: 4rem;
		&.first {
			padding-top: 7rem;
		}
		&.space-between {
			@include media-min($medium) {
				flex-direction: row;
				align-items: center;
			}
			justify-content: space-between;
			a {
				margin-right: 8px;
			}
		}
		&.replay {
			.htap-title {
				@include media-min($medium) {
					font-size: 52px;
				}
				font-size: 42px;
				font-style: normal;
				font-weight: 600;
				line-height: normal;
				background: linear-gradient(180deg, #af45c6 0%, #5248dd 100%);
				background-clip: text;
				-webkit-background-clip: text;
				-webkit-text-fill-color: transparent;
			}
		}
	}

	&-title {
		position: relative;
		z-index: 1;
		font-weight: 700;
		font-size: 28px;
		line-height: 42px;
		color: #282a36;
	}
	&-subtitle {
		position: relative;
		font-weight: 400;
		font-size: 16px;
		line-height: 24px;
		color: #282a36;
		margin-left: 0;
		@include media-min($medium) {
			margin-left: 20px;
		}
	}

	&-inner {
		padding: 8rem 0;
		position: relative;
		z-index: 1;
	}

	&-form {
		.htap-title__container {
			padding-bottom: 2rem;
		}
		.wysiwyg {
			p {
				color: #fff;
			}
			ul {
				margin-top: 0;
			}
			ul li::before {
				background-color: #fff;
			}
		}

		input,
		textarea,
		select {
			width: 100%;
			background-color: #f9f9f9;
			border: 1px solid #e5e4e4;
			border-radius: 4px;
		}
		select {
			background-image: url("#{$theme-url-base}/media/htap/arrow-down-gray.png");
		}
		.input {
			p {
				color: var(--body-font-color);
			}
		}
		a {
			color: #144db8 !important;
			text-decoration-color: #144db8 !important;
		}
		input[type="submit"] {
			background-color: #144db8;
			border-color: #144db8;
			&:hover {
				color: #fff;
			}
		}
		.hs-form-container p {
			color: var(--body-font-color);
		}
	}

	&-header {
		z-index: var(--z-header);
		position: sticky;
		top: var(--admin-bar-height, 0);
		left: 0;
		width: 100%;
		height: 80px;
		background: linear-gradient(
			93.72deg,
			#2f2c54 -362.89%,
			#2c2a50 -314.5%,
			#1b1a30 115.6%,
			#10101c 466.14%,
			#0c0c14 712.38%
		);
		box-shadow: 0 2px 10px rgba(0, 0, 0, 0.4);
		transition: transform var(--header-transition-speed) ease-in-out;

		display: flex;
		align-items: center;

		&__inner {
			display: flex;
			align-items: center;
			justify-content: space-between;
		}

		&__logo-container img {
			height: 40px;
		}

		&__menu-container {
			display: flex;
			align-items: center;
		}

		&__menu {
			gap: 3rem;
			align-items: center;
			@include media-min($large) {
				display: flex;
			}
			a {
				position: relative;
				font-weight: 600;
				font-size: 16px;
				line-height: 24px;
				color: #fff;
				text-transform: none;
				border-bottom: 2px solid transparent;
				&.active,
				&:hover {
					color: #1f9cdb;
					&::after {
						content: "";
						position: absolute;
						left: 0;
						right: 0;
						bottom: -28px;
						margin: auto;
						width: 80%;
						height: 2px;
						background-color: #1f9cdb;
					}
				}
			}
			&-button {
				padding: 8px 20px;
				margin-left: 5rem;
			}
		}
	}

	&-main-page {
		margin-top: -20px;
	}

	&-banner {
		background: linear-gradient(74.87deg, #262443 0.27%, #0e0e18 100%);
		&__inner {
			background: url("#{$theme-url-base}/media/htap/banner.png") center 80px no-repeat;
			@include media-min($medium) {
				background: url("#{$theme-url-base}/media/htap/banner.png") center 20px no-repeat;
				background-size: 80%;
			}
			background-size: contain;
			text-align: center;
			padding-top: 14rem;
			min-height: 480px;
			h1 {
				font-weight: 700;
				font-size: 64px;
				line-height: 60px;
				color: #fff;
			}
			h3 {
				font-weight: 400;
				font-size: 32px;
				line-height: 1.2;
				color: #fff;
			}
			p {
				font-size: 18px;
				line-height: 28px;
				color: #fff;
			}
		}
		&__organ {
			font-weight: 600;
			font-size: 14px;
			line-height: 24px;
			color: #fff;
			margin: 3.2rem 0;
		}

		&__countdown {
			display: flex;
			justify-content: center;
			margin-top: 30px;
			@include media-max(600px) {
				transform: scale(0.8);
			}

			.countdown-box {
				display: flex;
				&:first-child {
					margin-right: 4rem;
				}
				&__content {
					display: flex;
					flex-direction: column;
				}
				&__number {
					color: #fff;
					font-size: 3.2rem;
					display: flex;
					gap: 14px;
					margin-bottom: 6px;
				}
				&__digit {
					position: relative;
					width: 30px;
					height: 54px;
				}
				&__segment {
					border-radius: 16px;
					position: absolute;
					transition: all 0.2s;
					background: #4c4c4c;
					&:first-child {
						width: 24px;
						height: 6px;
						left: 3px;
					}
					&:nth-child(2) {
						width: 6px;
						height: 24px;
						right: -3px;
						top: 3px;
					}
					&:nth-child(3) {
						width: 6px;
						height: 24px;
						right: -3px;
						bottom: 3px;
					}
					&:nth-child(4) {
						width: 24px;
						height: 6px;
						bottom: 0px;
						left: 3px;
					}
					&:nth-child(5) {
						width: 6px;
						height: 24px;
						left: -3px;
						bottom: 3px;
					}
					&:nth-child(6) {
						width: 6px;
						height: 24px;
						left: -3px;
						top: 3px;
					}
					&:nth-child(7) {
						width: 24px;
						height: 6px;
						top: 24px;
						left: 3px;
					}
					&.on {
						background-color: #fff;
					}
				}
				&__symbol {
					width: 6px;
					height: 6px;
					background-color: #fff;
					margin: 16px 16px 0;
					&::after {
						content: "";
						width: 6px;
						height: 6px;
						display: block;
						background-color: #fff;
						margin-top: 16px;
					}
				}
				&__text {
					color: #fff;
					font-size: 1.2rem;
				}
			}
		}
	}

	&-user {
		margin-top: 4rem;
		padding-bottom: 28px;
		@include media-min($medium) {
			margin-top: -6rem;
		}
		&__list {
			display: flex;
			justify-content: space-between;
			flex-wrap: wrap;
			gap: 1.6rem;
			@include media-min($medium) {
				gap: 4rem;
				justify-content: flex-start;
			}
		}
		&__media {
			text-align: center;
			color: #fff;
			img {
				width: 106px;
				height: 106px;
			}
			&-name {
				font-size: 16px;
				font-weight: 500;
				margin-top: 0.8rem;
			}
			p {
				font-size: 14px;
				width: 170px;
				color: #fff;
			}
		}
	}

	&-about {
		position: relative;
		overflow: hidden;
		&__card {
			display: flex;
			flex-direction: column;
			align-items: center;
			gap: 4rem;
			@include media-min($large) {
				flex-direction: row;
				gap: 8rem;
			}

			+ .htap-about__card {
				padding-top: 10rem;
			}

			&-column {
				position: relative;
				flex: 1;
			}
			&-content {
				p {
					color: #282a36;
					line-height: 24px;
					font-size: 1.6rem;
				}
				.block-columns__video-container {
					padding-top: 50%;
					margin-bottom: 3rem;
				}
				.info {
					text-align: center;
					color: #282a36;
					font-size: 1.8rem;
					font-weight: 600;
				}
				img {
					border-radius: 8px;
					max-height: 300px;
				}
				.htap-button {
					margin-top: 24px;
					display: inline-block;
				}
			}
		}
	}

	&-demand {
		background-color: #f9f9f9;
		&__card {
			display: flex;
			flex-direction: column;
			justify-content: space-between;
			width: 100%;
			background: #ffffff;
			border: 1px solid #f4f4f4;
			box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.08);
			border-radius: 8px;
			overflow: hidden;
			@include media-min($medium) {
				width: 290px;
			}
			&-list {
				padding-bottom: 6rem;
				&.first.replay {
					padding-top: 8rem;
					padding-bottom: 14rem;
					background: url("https://static.pingcap.com/files/2025/11/06234359/hexagon.svg")
						no-repeat center top;
					background-size: contain;
					@include media-min($large) {
						background-position: center bottom;
						background-size: cover;
					}
				}
				&.secondary.replay {
					margin-top: -9rem;
				}
			}

			&-container {
				display: flex;
				flex-wrap: wrap;
				gap: 3.2rem;
				overflow: hidden;
				transition: all 0.3s cubic-bezier(1, 0, 1, 0);
			}
			&-title {
				position: relative;
				padding-bottom: 3rem;
				h5 {
					font-weight: 600;
					font-size: 18px;
					line-height: 27px;
					color: #282a36;
					position: relative;
					&:after {
						content: "";
						width: 32px;
						height: 0px;
						border-bottom: 1px solid #1f9cdb;
						display: block;
						position: absolute;
						left: 0;
						bottom: -6px;
					}
				}
				p {
					width: 80%;
					margin-top: 2rem;
				}
				.more {
					position: absolute;
					right: 0;
					bottom: 3rem;
					cursor: pointer;
					color: #fff;
					gap: 1rem;
					display: flex;
					.text {
						padding-right: 3rem;
					}
					.accordion__plus-icon {
						background-color: transparent;
						border: 1px solid #1f9cdb;
					}
					&.active {
						.accordion__plus-icon:after {
							opacity: 0;
						}
					}
				}
			}

			&-content {
				display: flex;
				flex-direction: column;
				justify-content: space-between;
				padding: 2rem;
				p {
					display: -webkit-box;
					min-height: 140px;
					font-weight: 400;
					font-size: 14px;
					line-height: 24px;
					color: #282a36;
					-webkit-line-clamp: 6;
					-webkit-box-orient: vertical;
					overflow: hidden;
				}
			}

			&-bottom {
				margin-top: 24px;
				.button {
					background: #211e44;
					border-radius: 4px;
					border-color: #fff;
					font-weight: 400;
					font-size: 14px;
					line-height: 24px;
					color: #ffffff;
				}
			}
		}
	}

	&-speaker {
		.embla {
			&-instance {
				position: relative;
			}
			&__slide {
				min-width: 100%;
				padding-left: 32px;
				@include media-min($medium) {
					min-width: 25%;
				}
			}

			&__container {
				margin-left: -32px;
			}

			&__nav-button {
				position: absolute;
				top: -40px;
				bottom: 0;
				margin: auto;
				width: 48px;
				height: 48px;
				&--prev {
					left: 0;
					@include media-min($large) {
						left: -60px;
					}
				}
				&--next {
					right: 0;
					@include media-min($large) {
						right: -60px;
					}
				}
			}
			&__pagination {
				margin-top: 32px;
			}
		}

		&__card {
			position: relative;
			border-radius: 8px;
			height: 340px;
			overflow: hidden;
			background: url("#{$theme-url-base}/media/htap/speaker-card-bg.png") center no-repeat
				#062048;
			cursor: pointer;

			&-content {
				padding: 50px 10px 20px;
				text-align: center;
				height: 100%;
			}

			&-img {
				width: 150px;
				height: 150px;
				border-radius: 50%;
				margin: 0 auto 30px;
				overflow: hidden;
			}
			&-bottom {
				text-align: left;
				padding: 50px 30px;
				opacity: 0;
				height: 100%;
				background: #144db8;
				border-radius: 8px;
				transition: all var(--default-transition-params);
				transform: translateY(-100%);
			}
			&-name {
				font-weight: 600;
				font-size: 18px;
				line-height: 27px;
				color: #fff;
				padding-bottom: 8px;
			}
			&-position {
				font-weight: 400;
				font-size: 16px;
				line-height: 24px;
				color: #fff;
			}
			&-link {
				color: #fff !important;
				font-weight: 600;
				font-size: 18px;
				line-height: 24px;
				&::after {
					color: #fff !important;
				}
				&:hover {
					&::after {
						color: #fff !important;
					}
				}
			}

			&-desc {
				color: #fff;
				font-weight: 400;
				font-size: 16px;
				line-height: 24px;
				margin-top: 30px;
				height: 160px;
				overflow-y: auto;
			}
			&:hover {
				.htap-speaker__card-bottom {
					opacity: 1;
				}
			}
			&:last-child {
				&:hover {
					background-color: #144db8;
				}
			}
		}
		&__link {
			padding-top: 2rem;
			text-align: center;
		}
	}

	&-sponsor {
		background: url("#{$theme-url-base}/media/htap/sponsor-bg.svg") left top no-repeat;
		&__title {
			font-weight: 600;
			font-size: 18px;
			line-height: 27px;
			color: #fff;
			padding-bottom: 6px;
			position: relative;
			margin-bottom: 32px;
			&:after {
				content: "";
				position: absolute;
				bottom: 0;
				left: 0;
				width: 32px;
				border: 1px solid #1f9cdb;
			}
		}
		&__content {
			@include media-min($medium) {
				width: 70%;
			}
			p {
				color: #fff;
			}
			h5 {
				color: #fff;
				font-size: 1.8rem;
				font-weight: 600;
				line-height: 27px;
			}
			a {
				color: #0ca6f2;
				text-decoration: none;
			}
		}
		&__image {
			display: flex;
			flex-wrap: wrap;
			gap: 3rem;
			margin-top: 4rem;
			@include media-min($medium) {
				gap: 6rem;
			}
			img {
				height: 78px;
			}
		}
	}
	&-featured {
		.block-columns__video-container {
			margin-bottom: 2rem;
		}
		.button {
			color: #282a36;
		}
	}

	&-quiz {
		padding-top: 8rem;
		.htap-subtitle {
			margin-left: 0;
		}
		p {
			width: 100%;
			@include media-min($medium) {
				width: 80%;
			}
		}
		b {
			color: #282a36;
		}
		ul {
			list-style-position: inside;
		}
		&__image {
			display: flex;
			gap: 16px;
			flex-wrap: wrap;
		}
		img {
			width: 274px;
		}
	}

	&-cta {
		position: relative;
		background: #211d68;
		z-index: 1;
		&__bg-1 {
			position: absolute;
			left: 0;
		}
		&__bg-2 {
			position: absolute;
			right: 0;
			bottom: 0;
		}
		&__title {
			display: flex;
			justify-content: space-between;
			align-items: center;
			font-weight: 700;
			font-size: 28px;
			color: #fff;
		}
		.text-orange {
			color: #df8418;
		}
		.button {
			background-color: #fff;
			color: #211d68;
			&:hover {
				background-color: transparent;
				border-color: #fff;
				color: #fff;
			}
		}

		&__grid {
			display: grid;
			grid-template-columns: 1fr;
			@include media-min($medium) {
				grid-template-columns: 1fr 1fr 1fr;
			}
		}

		&__media {
			display: flex;
			align-items: center;
			gap: 4rem;
			margin-top: 7rem;
			img {
				width: 80px;
			}
			font-weight: 700;
			font-size: 28px;
			line-height: 42px;
			color: #fff;
		}
	}

	&-footer {
		background: #151427;
		padding: 8rem 0;
		&.replay {
			padding: 3.2rem 0;
			background-color: #15094d;
			.htap-footer-container {
				align-items: center;
			}
			.site-footer__logo {
				width: 100px;
				height: auto;
				max-height: none;
			}
		}
		&.tidb-scaile-summit {
			background-color: #171c33;
		}
		&-container {
			display: flex;
			justify-content: space-between;
			flex-direction: column;
			gap: 4rem;
			@include media-min($medium) {
				flex-direction: row;
				align-items: flex-end;
				gap: 0;
			}
		}
		&__column {
			width: 100%;
			@include media-min($medium) {
				width: 50%;
			}
		}
		&__title {
			font-weight: 700;
			font-size: 28px;
			line-height: 42px;
			color: #fff;
			padding-bottom: 4rem;
		}
		&__content {
			p {
				font-style: normal;
				font-weight: 400;
				font-size: 16px;
				line-height: 24px;
				color: #fff;
			}
		}
		&__tag {
			background: #fff;
			color: #000;
			font-weight: 600;
		}
		&__link {
			text-align: right;
			padding-bottom: 4rem;
			.htap-link {
				font-weight: 600;
			}
			@include media-max($medium) {
				text-align: left;
			}
		}
		&__share {
			display: flex;
			gap: 4rem;
			justify-content: flex-end;
			&.replay {
				align-items: center;
				gap: 3.2rem;
				flex-wrap: wrap;
			}
			@include media-max($medium) {
				justify-content: flex-start;
			}
		}
	}
}
