/* PHOMI shared button / CTA scaling tokens (1920px design baseline). */
:root {
	--phomi-btn-height: clamp(40px, 3.125vw, 60px);
	--phomi-btn-square: clamp(40px, 3.125vw, 60px);
	--phomi-btn-font-size: clamp(13px, 0.9375vw, 18px);
	--phomi-btn-line-height: 1.555556;
	--phomi-btn-padding-inline: clamp(10px, 1.041667vw, 22px);
	--phomi-btn-padding-inline-wide: clamp(12px, 1.25vw, 28px);
	--phomi-btn-gap: clamp(6px, 0.625vw, 12px);
	--phomi-btn-border-width: clamp(1px, 0.104167vw, 2px);
	--phomi-btn-max-width: clamp(140px, 11.25vw, 216px);
	--phomi-btn-icon-size: clamp(24px, 2.083333vw, 40px);
	--phomi-btn-icon-size-sm: clamp(18px, 1.25vw, 24px);
	--phomi-btn-pager-wide: clamp(64px, 5.15625vw, 99px);
}

/* Outline box buttons: text + arrow, centered content. */
.phomi-button,
.phomi-view-all-colors,
.phomi-edisplay-outline-link,
.phomi-esolar-outline-link,
.phomi-product-gallery__cta,
body.page-template-page-product-2 .phomi-more-materials__copy a {
	align-items: center;
	box-sizing: border-box;
	display: inline-flex;
	font-size: var(--phomi-btn-font-size);
	gap: var(--phomi-btn-gap);
	height: var(--phomi-btn-height);
	justify-content: center;
	line-height: var(--phomi-btn-line-height);
	max-width: var(--phomi-btn-max-width);
	min-width: 0;
	padding-inline: var(--phomi-btn-padding-inline);
	text-decoration: none;
	white-space: nowrap;
	width: auto;
}

/* Application 底部 Learn more：块级宽度；右对齐由页面 CTA 行处理 */
.phomi-edisplay-outline-link,
.phomi-esolar-outline-link {
	display: flex;
	width: min(100%, var(--phomi-btn-max-width));
}

.phomi-button__icon,
.phomi-edisplay-outline-link > img,
.phomi-esolar-outline-link > img,
.phomi-product-gallery__cta > img,
body.page-template-page-product-2 .phomi-more-materials__copy a > img {
	display: block;
	flex: 0 0 auto;
	height: var(--phomi-btn-icon-size);
	object-fit: contain;
	width: var(--phomi-btn-icon-size);
}

.phomi-view-all-colors__arrow {
	display: block;
	flex: 0 0 auto;
	height: var(--phomi-btn-icon-size-sm);
	object-fit: contain;
	width: var(--phomi-btn-icon-size-sm);
}

.phomi-recommended-series__header > a.phomi-view-all-colors {
	padding-inline: var(--phomi-btn-padding-inline-wide);
}

/* Text + underline CTA (product comparison). */
.phomi-performance-comparison__cta {
	font-size: var(--phomi-btn-font-size);
	line-height: 1.555556;
	padding-bottom: clamp(4px, 0.729167vw, 14px);
}

.phomi-performance-comparison__cta img {
	height: var(--phomi-btn-icon-size);
	width: var(--phomi-btn-icon-size);
}

/* Pagination / square controls — eSolar Texture selection & Installation video 等同款分页 */
.phomi-esolar-pagination {
	align-items: center;
	display: flex;
	gap: 0.625vw;
	justify-content: flex-end;
	margin-top: 3.125vw;
}

.phomi-esolar-pagination button {
	align-items: center;
	background: #fff;
	border: var(--phomi-btn-border-width) solid #000;
	border-radius: 0;
	box-shadow: none;
	color: #000;
	cursor: pointer;
	display: inline-flex;
	font-family: var(--phomi-font);
	font-size: var(--phomi-btn-font-size);
	font-style: normal;
	font-weight: 400;
	height: var(--phomi-btn-square);
	justify-content: center;
	line-height: var(--phomi-btn-line-height);
	padding-inline: clamp(10px, 0.885417vw, 17px);
	/* text-transform: uppercase; */
}

.phomi-esolar-pagination button:disabled {
	cursor: default;
	opacity: 0.5;
}

.phomi-esolar-pagination__prev,
.phomi-esolar-pagination__next {
	min-width: var(--phomi-btn-square);
	padding-inline: clamp(10px, 0.885417vw, 17px);
}

.phomi-esolar-pagination__page {
	min-width: var(--phomi-btn-square);
	padding: 0;
	width: var(--phomi-btn-square);
}

.phomi-esolar-pagination__page.is-active {
	background: #000;
	color: #fff;
}

.phomi-esolar-pagination button:not(:disabled):hover,
.phomi-esolar-pagination button:not(:disabled):focus-visible {
	background: #000;
	color: #fff;
}

.phomi-esolar-pagination__ellipsis {
	font-size: 18px;
	font-style: normal;
	line-height: 28px;
}

.phomi-edisplay-pagination span,
.phomi-edisplay-pagination strong,
.phomi-news-pager .page-numbers,
.phomi-news-pager span.page-numbers {
	font-size: var(--phomi-btn-font-size);
	height: var(--phomi-btn-square);
	line-height: var(--phomi-btn-line-height);
	min-width: var(--phomi-btn-square);
	padding-inline: clamp(10px, 0.885417vw, 17px);
}

.phomi-news-pager .page-numbers.prev,
.phomi-news-pager .page-numbers.next,
.phomi-news-pager span.page-numbers.prev,
.phomi-news-pager span.page-numbers.next {
	width: var(--phomi-btn-pager-wide);
}

/* Contact page location card button: sizing lives in contact.css —
   卡片是固定 608px 舞台（内容宽 560px），按钮跟容器走，不参与 vw 缩放。 */

@media (max-width: 1024px) {
	#primary.phomi-home > section.phomi-gallery > .phomi-button,
	body.page-template-page-ecovering .phomi-product--ecovering .phomi-product-gallery__cta {
		align-self: flex-end;
		flex: 0 0 auto;
		float: none;
		justify-content: center !important;
		max-width: var(--phomi-btn-max-width) !important;
		padding-inline: var(--phomi-btn-padding-inline) !important;
		width: auto !important;
	}
}

@media (max-width: 640px) {
	body.page-template-page-ecovering .phomi-product--ecovering .phomi-product-gallery__cta {
		justify-self: stretch;
		max-width: none !important;
		width: 100% !important;
	}
}
