/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Requires at least: 6.7
Tested up to: 6.8
Requires PHP: 7.2
Version: 1.2
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, style-variations, accessibility-ready, blog, portfolio, news
*/

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
	text-decoration-thickness: 1px !important;
	text-underline-offset: .1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
	outline-width: 2px;
	outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
	margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
	outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
	text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
	display: block;
}

@font-face {
	font-family: "Nexa Bold";
	src: url("fonts/Nexa Bold.woff2");
}

@font-face {
	font-family: "SansCN-Bold";
	src: url("fonts/SourceHanSansCN-Bold.woff2");
}

@font-face {
	font-family: "SansCN-Regular";
	src: url("fonts/SourceHanSansCN-Regular.woff2");
}

@font-face {
	font-family: "Nexa Light";
	src: url("fonts/Nexa Light.woff2");
}

@font-face {
	font-family: "SansCN-Medium";
	src: url("fonts/SourceHanSansCN-Medium.woff2");
}

.footer-container {
	padding: 136px 10px !important;

}



.footer-container .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
	flex-basis: auto !important;
}


a {
	text-decoration: none;
	outline: none;
}


.blue-logo {
	display: none;

	@media screen and (max-width: 768px) {
		display: block;
	}
}

.white-logo {
	display: none;
}

.show-blue-logo {
	.blue-logo {
		display: block;

	}
}

.show-white-logo {
	.white-logo {
		display: block;

		@media screen and (max-width: 768px) {
			display: none;
		}
	}

	nav {
		svg {
			@media screen and (max-width: 768px) {
				fill: #19166D;
			}
		}
	}
}

.show-blue-logo {
	.wp-block-navigation-item {
		color: rgba(0, 0, 0, 0.7);
	}
}

.show-white-logo {
	.wp-block-navigation-item {
		color: #FFFFFF;

		.wp-block-navigation-item {
			color: rgba(0, 0, 0, 0.7);

		}
	}
}

.is-layout-constrained>.alignwide {
	max-width: none !important;
}

.footer-container .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
	flex-basis: auto !important;
}

.icon-list {
	display: flex;
	gap: calc(19 * 100vw / 1920);
	padding-bottom: calc(25 * 100vw / 1920);

	margin: 0 auto !important;
	border-bottom: 1px solid #FFFFFF;
	width: 100%;
}

.footer-lang-info {
	margin: 0 auto !important;
	width: 100%;
	gap: calc(24 * 100vw / 1920) !important;
}

.footer-container .column-container {
	flex-grow: 0 !important;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
}

.footer-container .trp-ls-shortcode-current-language {}

.footer-container .trp-language-switcher>div {
	background-color: transparent;
	border: 1px solid #FFFFFF;
	color: #FFFFFF;
	background-image: none;
	padding: 4px 0 3px 0;
}

.footer-container .trp-language-switcher a {
	color: #FFFFFF;
}

.footer-container .trp-language-switcher a:hover {
	background: transparent !important;
}

.footer-container .trp-language-switcher>div a {
	display: flex;
	gap: calc(20 * 100vw / 1920);
	align-items: center;
	justify-content: flex-start;
	font-size: calc(20 * 100vw /1920) !important;
	padding: calc(7 * 100vw /1920) calc(12 * 100vw /1920) !important;

}

.footer-container .trp-ls-shortcode-current-language {
	width: auto !important;
}

.footer-container .trp-ls-shortcode-language {
	width: auto !important;
	padding: 0 !important;
}

.footer-container .trp-language-switcher {
	width: auto;
	height: auto;
	font-size: 0;
}

.footer-container {
	padding: calc(136 * 100vw / 1920) calc(10 * 100vw / 1920) !important;

}


.footer-logo {
	margin: 0 auto !important;
	width: 100%;
	padding-bottom: calc(36 * 100vw / 1920);
	border-bottom: 1px solid #FFFFFF;
}

.footer-menu-container.wp-block-columns {

	margin: 0 auto !important;
	width: 100%;
	flex-wrap: nowrap;
}

.wp-block-list.list-style-none {
	padding: calc(48 * 100vw / 1920) 0 0 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: calc(20 * 100vw / 1920);
}

.wp-block-list.list-style-none li {
	list-style: none;
}

.trp-ls-shortcode-language {
	display: none;
}

.wp-block-navigation .wp-block-navigation__container {
	gap: calc(47 * 100vw / 1920);
}

.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item__content {
	font-size: calc(20 * 100vw / 1920);
	font-family: "SansCN-Bold";
	font-weight: bold;
}

.wp-block-navigation .wp-block-navigation__container .wp-block-navigation-item__content {
	font-size: calc(18 * 100vw / 1920);
	font-family: "SansCN-Bold";
	font-weight: bold;
}

header .blue-logo img,
header .white-logo img {
	height: calc(50 * 100vw / 1920) !important;
}

header .wp-block-button__link {
	padding: calc(11 * 100vw / 1920) calc(37 * 100vw / 1920);
	font-size: calc(18 * 100vw / 1920);
}


footer .footer-logo img {
	height: calc(53 * 100vw / 1920);
	width: auto !important;
}

footer .footer-menu-container {
	padding: calc(49 * 100vw / 1920) 0 !important;
	gap: calc(75 * 100vw /1920);
}

footer .footer-menu-container .wp-block-heading {
	font-size: calc(20 * 100vw / 1920) !important;
}

footer .wp-block-list.list-style-none li {
	font-size: calc(15 * 100vw /1920) !important;
	font-family: "SansCN-Regular";
}

footer .footer-menu-container a:hover {
	color: #FD671A;
}

footer .icon-list img {
	width: calc(40 * 100vw / 1920) !important;
	height: auto !important;
}

footer .icon-list {
	display: flex;
	gap: calc(19 * 100vw / 1920);
	padding-bottom: calc(25 * 100vw /1920);
	max-width: calc(1200 * 100vw /1920);
	margin: 0 auto !important;
	border-bottom: 1px solid #FFFFFF;
	width: 100%;
}

footer .font-17 {
	font-size: calc(17 * 100vw /1920) !important;
}

.has-small-font-size.font-17 {
	font-size: calc(17 * 100vw /1920) !important;
}

footer .footer-lang-info .font-17.hide-for-pc {
	display: none;
}

.wp-block-navigation__container li .wp-block-navigation-submenu .wp-block-navigation-link a {
	padding: calc(20 * 100vw / 1920);
	text-decoration: none;
}

.wp-block-navigation__container li .wp-block-navigation-submenu .wp-block-navigation-link a:hover {
	background-color: #F6FAFD;
	color: #19166D;
}

@media screen and (max-width: 768px) {

	.show-blue-logo .wp-block-buttons,
	.show-white-logo .wp-block-buttons {
		display: none;

	}

	.show-blue-logo .wp-block-image img {
		height: 26px !important;
		width: auto;
	}



	.show-blue-logo .wp-block-image,
	.show-white-logo .wp-block-image {
		order: 2;
	}

	.show-white-logo .wp-block-image img {
		height: 26px !important;
		width: auto;
	}

	.show-white-logo .wp-block-group nav,
	.show-blue-logo .wp-block-group nav {
		order: 1;
	}

	.show-blue-logo .wp-block-group nav button {
		color: #19166D;
	}


	.show-white-logo .wp-block-group.has-global-padding,
	.show-blue-logo .wp-block-group.has-global-padding {
		padding: 19px 16px;
		background-color: #FFFFFF;
	}

	.show-white-logo .wp-block-group.alignwide,
	.show-blue-logo .wp-block-group.alignwide {
		padding-bottom: 0 !important;
		padding-top: 0 !important;
	}


	.show-blue-logo .has-modal-open .wp-block-navigation-item__content,
	.show-white-logo .has-modal-open .wp-block-navigation-item__content {
		color: rgba(0, 0, 0, 0.56);
		font-size: 15px !important;
		padding: 15px 16px !important;
	}


	.show-blue-logo .has-modal-open,
	.show-white-logo .has-modal-open {
		padding: 0;
	}

	.show-white-logo .has-modal-open .wp-block-navigation__container,
	.show-blue-logo .has-modal-open .wp-block-navigation__container {
		width: 100%;
		gap: 0 !important;
		border-bottom: 1px solid #EEEEEE;
	}

	.show-white-logo .has-modal-open .wp-block-navigation__container li,
	.show-blue-logo .has-modal-open .wp-block-navigation__container li {
		width: 100%;
		box-sizing: border-box;
		border-top: 1px solid #EEEEEE;
	}

	.show-white-logo .has-modal-open .wp-block-navigation__container li a,
	.show-blue-logo .has-modal-open .wp-block-navigation__container li a {
		padding: 15px 16px;
		outline: none !important;
	}


	.show-white-logo .has-modal-open .wp-block-navigation__container li .wp-block-navigation-submenu,
	.show-blue-logo .has-modal-open .wp-block-navigation__container li .wp-block-navigation-submenu {
		background-color: #F6FAFD !important;
		border-bottom: none;
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding-top: 8px;
		width: 100% !important;
	}

	.show-white-logo .has-modal-open .wp-block-navigation__container li .wp-block-navigation-submenu li,
	.show-blue-logo .has-modal-open .wp-block-navigation__container li .wp-block-navigation-submenu li {
		border-top: none;
		padding-left: 0;
		padding-right: 0;
	}

	.show-blue-logo .wp-block-navigation__responsive-container-close,
	.show-white-logo .wp-block-navigation__responsive-container-close {
		right: 16px;
		top: 16px;
	}

	.footer-menu-container.wp-block-columns {
		max-width: none !important;
		flex-wrap: wrap !important;
		gap: 60px !important;
	}

	.footer-menu-container {}

	.footer-menu-container .wp-block-column:nth-of-type(2n+1) {
		width: calc(55% - 30px);
	}

	.footer-menu-container .wp-block-column:nth-of-type(2n) {
		width: calc(45% - 30px);
	}

	.footer-logo {
		max-width: none !important;
		padding-bottom: 18px !important;
	}

	.footer-logo img {
		height: 26px !important;
	}


	footer>.wp-block-group {
		padding: 60px 30px !important;
	}

	.footer-menu-container .wp-block-column .wp-block-heading {
		font-size: 18px !important;
	}

	footer .wp-block-list.list-style-none li {
		font-size: 13px !important;
	}

	.wp-block-list.list-style-none {
		padding-top: 34px;
	}


	footer .icon-list {
		max-width: none;
		justify-content: center;
		padding-bottom: 21px;
		gap: 19px;
		margin-top: 20px;
	}

	footer .icon-list img {
		width: 38px !important;
	}

	footer .footer-lang-info {
		flex-direction: column;
		max-width: none;
	}

	footer .footer-lang-info .trp-language-switcher {
		display: flex;
		justify-content: center;
	}

	footer .footer-lang-info .trp-language-switcher a {
		outline: none;
		font-size: 15px !important;
	}

	footer .footer-lang-info .font-17 {
		font-size: 13px !important;
		display: none;
	}

	footer .footer-lang-info .font-17.hide-for-pc {
		display: block;
	}

	footer .footer-lang-info .trp-block-container {
		margin-bottom: 25px;
	}

	header .white-logo,
	header .blue-logo {
		position: absolute;
		left: 50%;
		transform: translate(-50%, 0);
	}

	.wp-block-column.margin-left {
		margin-left: 0 !important;
	}

	.wpforms-confirmation-container-full p {
		font-size: 12px !important;
	}

	.custom-element .custom-label {
		display:none;
	}




	.wp-block-button-button-dialog form,.wp-block-dialog-form-dialog form {
		padding: 59px 54px 34px;
		box-sizing: border-box;
		width: 300px!important;
	}
	.custom-submit{
		font-size:12px!important;
	}

	
	.field-input {
		width: 100%!important;
	}

	.field-input input {
		font-size: 12px!important;
	}
}
.custom-element.no-border .wpcf7-not-valid-tip {
	display:none;

	}

.wp-block-navigation-item .wp-block-navigation__submenu-container {
	min-width: 240px !important;
}


.wp-block-column.margin-left {
	margin-left: 40px;
}

.wpforms-confirmation-container-full p {
	font-size: 16px !important;
}

.custom-form-card {
	max-width: 380px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* 标签文字 */
.custom-label {
	display: block;
	font-weight: bold;
	margin-bottom: 8px;
	color: #262262;
	font-size: 16px;
}

/* 分隔线 */
.custom-divider {
	border: none;
	border-bottom: 1px solid #eee;
	margin: 18px 0;
}

/* 输入框样式 */
.custom-input {
	width: 100%;
	border: none;
	border-bottom: 1px solid #dcdcdc;
	background: transparent;
	padding: 10px 0;
	font-size: 16px;
	margin-bottom: 8px;
	outline: none;
}

.custom-input::placeholder {
	color: #bdbdbd;
}

/* 下拉菜单 */
select.custom-input {
	background: transparent;
	border: none;
	border-bottom: 1px solid #dcdcdc;
	padding: 10px 0;
	font-size: 16px;
	color: #262262;
}

/* 复选框 */
.custom-checkbox {
	display: flex;
	align-items: center;
	font-size: 14px;
	color: #000000;
}

input[type="checkbox"].custom-checkbox {
	width: 20px;
	height: 20px;
	margin-right: 8px;
	accent-color: #262262;
}

/* 按钮样式 */
.custom-submit {
	width: 100%;
	background: #19166d;
	color: #fff;
	border-radius: 24px;
	border: none;
	padding: 12px 0;
	font-size: 18px;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(38, 34, 98, 0.08);
	transition: background 0.2s;
}

.custom-submit:hover {
	background: #262262;
}

.custom-element {
	display: flex;
	align-items: center;
	border-bottom: 1px solid rgba(102, 102, 102, 0.33);
	position: relative;
}

.custom-element .wpcf7-not-valid-tip {
	position: absolute;
	bottom: -40px;
	left: 0;
	font-size: 14px;
	width: 200px;
}

.custom-element.no-border .wpcf7-not-valid-tip {
	width: 200px;
	bottom: -20px;

}

.custom-element input,
.custom-element select {
	border-bottom: none;
}

.custom-element p,
.submit-button p {
	margin: 0;
}

.custom-element .custom-label {
	width: 120px;
	font-family: "SansCN-Bold";
	font-size: 0.9895833333vw;
	color: rgba(0, 0, 0, 0.85);
}

.field-input {
	width: calc(100% - 120px);
}

form {
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.12);
	padding: 3.0729166667vw 2.8125vw 1.7708333333vw;
	box-sizing: border-box;
}

form .wpcf7-list-item {
	margin-left: 0;
}

form .custom-element.no-border {
	border-bottom: none;
}

.wpcf7 {
	margin-top: 24px;
}

.wpcf7-spinner {
	position: absolute;
	top:50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.field-checkbox {
	align-items: center;
	margin-top: 18px;
	font-size: 14px;
	color: #262262;
}

.custom-element.checkbox a {
color: #262262;
}

.custom-element.checkbox p {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	color: #000000;
}

.custom-element a {
	font-size: 14px;
	color: #262262!important;
}

.wp-block-button-button-dialog form {
	width: 538px;
}

.cookie-title {
	padding-top: 20px;
	padding-bottom: 10px;
}
