/**
 * about.css
 * Generated from the former monolithic theme stylesheet.
 */

/* About page ------------------------------------------------------------ */
.page-template-page-about .site-content,
.page-template-page-about #content>.ast-container {
	max-width: none;
	padding: 0;
}

.page-template-page-about .site-content {
	flex: 0 0 auto !important;
}

.page-template-page-about #primary {
	width: 100%;
	margin: 0 !important;
}

.sy-about-page {
	width: 100%;
	color: #231815;
	font-family: "Noto Sans TC", "PingFang TC", "Microsoft JhengHei", sans-serif;
}

.sy-about-page__hero {
	position: relative;
	height: 806px;
	min-height: 806px;
	overflow: hidden;
	background: #fff;
}

.sy-about-page__hero::before {
	display: none;
}

.sy-about-page__breadcrumb {
	position: absolute;
	top: 20px;
	left: max(24px, calc((100% - 1278px) / 2));
	z-index: 5;
	display: flex;
	align-items: center;
	gap: 7px;
	font-size: 14px;
	font-weight: 400;
	letter-spacing: 0.08em;
	line-height: 1.2;
	writing-mode: vertical-rl;
}

.sy-about-page__breadcrumb a,
.sy-about-page__breadcrumb span {
	color: #3e3937;
	text-decoration: none;
}

.sy-about-page__breadcrumb img {
	display: block;
	width: 17px;
	height: 11px;
	flex: 0 0 auto;
}

.sy-about-page__breadcrumb a:hover,
.sy-about-page__breadcrumb a:focus-visible {
	color: #0077bd;
}

.sy-about-page__photo {
	position: absolute;
	top: 0;
	right: 0;
	left: auto;
	z-index: 1;
	width: 1092px;
	height: 675px;
	background-color: #eee;
	background-image: var(--sy-about-page-photo, none);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	clip-path: path("M 1092 0 H 84.7557 C -63.3214 131.436 -81.4317 675 570.534 675 H 571.599 H 1092 V 0 Z");
}

.sy-about-page__banner {
	display: block;
	width: auto;
	height: 840px;
	pointer-events: none;
	margin: -92px 0 0 auto;
}

.sy-about-page__decoration {
	position: absolute;
	top: 240px;
	left: 0;
	z-index: 0;
	display: block;
	width: 100%;
	height: auto;
	pointer-events: none;
}

.sy-about-page__content-background {
	width: 100%;
	/* height: 1480px; */
	background-color: #fff;
	background-image: var(--sy-about-page-content-background, none);
	background-position: center 22vh;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.sy-about-page__company {
	padding: 120px 0 140px;
	text-align: center;
}

.sy-about-page__company-inner {
	width: min(870px, calc(100% - 48px));
	margin: 0 auto;
}

.sy-about-page__eyebrow {
	margin: 0 0 45px;
	font-family: "Montserrat", "Helvetica Neue", Arial, sans-serif;
	font-style: normal;
	font-weight: 200;
	font-size: 20px;
	line-height: 32px;
	text-align: center;
	letter-spacing: 0.4em;
	color: #231815;
}

.sy-about-page__title {
	margin: 0;
	font-style: normal;
	font-weight: 900;
	font-size: 32px;
	line-height: 32px;
	text-align: center;
	letter-spacing: 0.2em;
	color: #231815;
}

.sy-about-page__company-copy {
	margin-top: 45px;
	font-style: normal;
	font-weight: 100;
	font-size: 20px;
	line-height: 32px;
	text-align: center;
	letter-spacing: 0.2em;
	color: #231815;
}

.sy-about-page__company-copy p {
	margin: 0 0 30px;
}

.sy-about-page__services {
	height: 860px;
	padding-top: 38px;
}

.sy-about-page__services-inner {
	width: min(960px, calc(100% - 48px));
	margin: 0 auto;
}

.sy-about-page__services .sy-about-page__eyebrow {
	margin-bottom: 47px;
}

.sy-about-page__services-copy {
	margin: 45px 0 0;
	font-style: normal;
	font-weight: 100;
	font-size: 20px;
	line-height: 32px;
	letter-spacing: 0.2em;
	color: #231815;

}

.sy-about-page__service-list {
	display: grid;
	margin-top: 82px;
	gap: 49px;
}

.sy-about-page__service-row {
	display: flex;
	min-height: 50px;
	align-items: center;
	gap: 24px;
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 32px;
	letter-spacing: 0.2em;
	color: #231815;
	white-space: nowrap;
}

.sy-about-page__service-dot {
	display: block;
	width: 52px;
	height: 52px;
	margin-right: 10px;
	flex: 0 0 52px;
	background-image: var(--sy-about-service-dot, none);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.sy-about-page__service-dot::after {
	display: none;
}

.sy-about-page__service-row i {
	display: block;
	width: 1px;
	height: 38px;
	flex: 0 0 1px;
	background: #8a8582;
	transform: rotate(40deg);
}

@media (max-width: 544px) {
	.sy-about-page__hero {
		height: 430px;
		min-height: 430px;
	}

	.sy-about-page__breadcrumb {
		top: 22px;
		left: 20px;
		font-size: 12px;
		/* writing-mode: horizontal-tb; */
	}

	.sy-about-page__breadcrumb img {
		width: 15px;
		height: auto;
	}

	.sy-about-page__photo {
		top: 0px;
		right: auto;
		left: 54px;
		width: calc(100% + 120px);
		height: 330px;
		clip-path: ellipse(70% 72% at 71% 43%);
	}

	.sy-about-page__banner {
		position: absolute;
		top: -40px;
		right: auto;
		left: 34px;
		width: auto;
		height: 400px;
		margin: 0;
	}

	.sy-about-page__decoration {
		top: 272px;
		left: 0;
		width: 100%;
		height: auto;
	}

	.sy-about-page__hero::before {
		left: 20px;
		height: 345px;
	}

	.sy-about-page__content-background {
		height: auto;
		background-size: auto 100%;
	}

	.sy-about-page__company {
		height: auto;
		padding: 0px 20px 52px;
	}

	.sy-about-page__company-inner,
	.sy-about-page__services-inner {
		width: 100%;
	}

	.sy-about-page__eyebrow {
		margin-bottom: 30px;
		font-size: 12px;
		letter-spacing: 0.4em;
	}

	.sy-about-page__title {
		font-size: 28px;
	}

	.sy-about-page__company-copy,
	.sy-about-page__services-copy {
		font-size: 14px;
		letter-spacing: 0.08em;
		line-height: 1.9;
	}

	.sy-about-page__company-copy {
		margin-top: 32px;
	}

	.sy-about-page__company-copy br,
	.sy-about-page__services-copy br {
		display: none;
	}

	.sy-about-page__services {
		height: auto;
		padding: 48px 20px 100px;
	}

	.sy-about-page__services .sy-about-page__eyebrow {
		margin-bottom: 30px;
	}

	.sy-about-page__services-copy {
		margin-top: 32px;
	}

	.sy-about-page__service-list {
		margin-top: 52px;
		gap: 32px;
	}

	.sy-about-page__service-row {
		min-height: 42px;
		flex-wrap: wrap;
		gap: 14px 18px;
		font-size: 16px;
		letter-spacing: 0.07em;
		white-space: normal;
	}

	.sy-about-page__service-dot {
		width: 42px;
		height: 42px;
		margin-right: 2px;
		flex-basis: 42px;
	}

	.sy-about-page__service-dot::after {
		width: 35px;
		height: 35px;
	}

	.sy-about-page__service-row i {
		height: 28px;
	}
}