.hero {
	padding: 4.7rem 0 6.2rem 0;
	background:linear-gradient(134deg, #00acd6, #004454);
	color:white;
	display:flex;
	justify-content:center;
	align-items:center;
	margin-top:4.5rem;
}
.hero-inner {
	width:980px;
	max-width:100%;
}
.hero-inner h1,.hero-inner h2 {
	font-family:Montserrat,Arial Fallback,arial,sans-serif;
	margin:0;
	text-align:left;
	font-size:4rem;
	font-weight:bold;
	line-height:1.3;
}
.typing {
	display:inline;
}
.cursor {
	display:inline-block;
	animation:blink 0.8s infinite;
	font-weight:100;
}
@keyframes blink {
	0%,100% {
	opacity:1;
}
50% {
	opacity:0;
}
}.search-wrapper {
	margin-top:60px;
	display:flex;
	background:#fff;
	border-radius:8px;
	overflow:hidden;
	box-shadow:0 2px 8px rgba(0,0,0,0.2);
	width:100%;
}
.search-wrapper input {
	flex:1;
	padding:22px 20px;
	border:none;
	font-size:16px;
	color:#333;
}
.search-wrapper input::placeholder {
	color:#888;
}

.search-wrapper input:focus {
    outline: none;
    border: none;
    box-shadow: none;
}

.search-wrapper button {
	width:60px;
	background:url('../img/search-icon.png') no-repeat center center;
	background-size:30px;
	background-color:white;
	border:none;
	cursor:pointer;
}
.search-wrapper button:hover {
	opacity:0.7;
}
.main-container {
	max-width:1400px;
	margin:0 auto;
	padding:0 10px;
	margin-top:1rem;
	margin-bottom:3rem;
}
.categories {
	display:flex;
	flex-direction:column;
	gap:15px;
}
.category h2 {
	margin-bottom:20px;
	font-size:24px;
}
.categories .category {
	padding:0 1.4rem;
}
.soft-list {
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}
.software {
	flex:1 1 calc(25% - 20px);
	background:#fbfbfb;
	display:flex;
	padding:13px;
	border-radius:6px;
	min-width:200px;
	box-sizing:border-box;
}
.software img {
	width:71px;
	height:71px;
	object-fit:contain;
	margin-right:13px;
	border-radius:4px;
}
.software-info {
	display:flex;
	flex-direction:column;
}
.software-info .software-title {
	margin:0 0 5px;
	font-size:16px;
	font-weight:bold;
}
.software-info p {
	margin:0;
	font-size:14px;
	color:#666;
	width:auto;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:2;
	-webkit-box-orient:vertical;
}
.software-info a {
	width:auto;
	overflow:hidden;
	display:-webkit-box;
	-webkit-line-clamp:1;
	-webkit-box-orient:vertical;
}
/* 响应式 */
@media (max-width:900px) {
	.software {
	flex:1 1 calc(50% - 20px);
}
}@media (max-width:500px) {
	.software {
	flex:1 1 100%;
}
}footer {
	margin-top:3rem;
}
.slider-wrapper {
	max-width:1400px;
	margin:0 1.4rem 1rem 1.4rem;
	position:relative;
	overflow:hidden;
}
.slider-viewport {
	display:flex;
	align-items:center;
	gap:6px;
}
.half-slide {
	flex:0 0 25%;
	overflow:hidden;
	position:relative;
}
.half-slide::before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:rgba(0,0,0,0.5);
	z-index:1;
}
.half-slide img {
	width:200%;
	height:auto;
	display:block;
}
.half-slide.left img {
	transform:translateX(-50%);
}
.half-slide.right img {
	transform:translateX(0%);
}
.full-slide {
	flex:0 0 50%;
}
.full-slide img {
	width:100%;
	display:block;
}
.full-slide,.half-slide {
	position:relative;
}
.full-slide span,.half-slide span {
	position:absolute;
	bottom:0.8rem;
	left:0.9rem;
	color:#ffffffe6;
	background-color:#00acd6a3;
	padding:0.6rem 0.8rem;
	border-radius:1rem;
	font-size:0.8rem;
	line-height:0.8rem;
}
.nav-btn {
	position:absolute;
	top:50%;
	transform:translateY(-50%);
	background:rgba(0,0,0,0.6);
	border:none;
	color:#fff;
	font-size:28px;
	width:48px;
	height:48px;
	border-radius:50%;
	cursor:pointer;
	z-index:10;
	opacity:0;
	transition:opacity 0.3s;
	transform:translate(0%,-49%);
}
.nav-btn.left {
	left:10px;
}
.nav-btn.right {
	right:10px;
}
.slider-wrapper:hover .nav-btn {
	opacity:1;
}
.tabs {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;
	font-size:14px;
}
.tab {
	padding:10px 15px;
	margin-right:10px;
	cursor:pointer;
	border-radius:6px;
	background-color:#f2f2f2;
}
.tab.active {
	background-color:#00acd6;
	color:#fff;
}
.ranking-list {
	display:none;
	border:1px solid #ffe0e0;
	border-radius:8px;
	overflow:hidden;
	padding:0.8rem 0;
}
.ranking-list.active {
	display:block;
}
.ranking-item {
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:0.8rem 1.6rem 0.8rem 1.8rem;
	background-color:#fff;
}
.ranking-item:last-child {
	border-bottom:none;
}
.ranking-left {
	display:flex;
	align-items:center;
	gap:1.5rem;
}
.ranking-left img {
	width:40px;
	height:40px;
	border-radius:8px;
}
.ranking-number {
	font-weight:bold;
	width:1rem;
	color:#555555;
}
.ranking-title {
	font-weight:500;
}
.ranking-right {
	display:flex;
	align-items:center;
	gap:5rem;
	font-size:0.9rem;
	color:#666;
}
.tabs-img {
	height:40px;
}
.pingfen {
	height:16px;
}
.pingfen span {
	display:flex;
	align-items:center;
	height:15px;
	padding-left:4px;
}
.btn-download {
	background-color:#00a651;
	color:white;
	border:none;
	padding:6px 10px;
	border-radius:4px;
	cursor:pointer;
}
.btn-download:hover {
	background-color:#009046;
}
.pingfen .start {
	float:left;
	width:85px;
	height:16px;
	position:relative;
	overflow:hidden;
	background:url(../img/star.png) no-repeat;
	background-size:5rem;
}
.pingfen .start i {
	position:absolute;
	width:100%;
	height:16px;
	background:url(../img/star.png) no-repeat;
	background-position:0 -16px;
	background-size:5rem;
}
@media (max-width:768px) {
	.main-container {
	padding:0;
	margin-top:0.5rem;
	margin-bottom:2.3rem;
}
.slider-wrapper {
	margin:0 1rem 0.3rem 1rem;
}
.categories {
	gap:8px;
}
.categories .category {
	padding:0 1rem;
}
.slider-viewport {
	flex-direction:column;
}
.half-slide {
	display:none;
}
.full-slide {
	flex:1 0 100%;
}
.nav-btn {
	opacity:1;
}
.ranking-item {
	flex-direction:inherit;
	align-items:flex-start;
	gap:10px;
}
.ranking-right div {
	display:none;
}
.tab {
	padding:0.5rem 1rem;
	margin-bottom:0.5rem;
}
footer {
	margin-top:2rem;
}
}@media (max-width:768px) {
	.hero-inner {
	padding:0 20px;
}
.hero-inner h1,.hero-inner h2 {
	font-size:2rem;
}
.search-wrapper {
	flex-direction:row;
	border-radius:6px;
	box-shadow:0 1px 4px rgba(0,0,0,0.15);
	margin-top: 1.5rem;
}
.search-wrapper input {
	padding:12px 16px;
	font-size:15px;
	width:100%;
}
.search-wrapper button {
	height:50px;
	background-size:1.5rem;
	background-position:center;
	border-top:1px solid #eee;
}
}@media (max-width:480px) {
    .hero {
        padding: 2.5rem 0 3.5rem 0;
    }
	.hero-inner h1,.hero-inner h2 {
	    font-size:1.9rem;
    }
    .search-wrapper input {
    	font-size:14px;
    }
}