/* =========================================================
   Gemistry 時裝屋常見問題 (gemistry-maison-faq)
   - 版面 = chanel.com/tw/faq/fragrance-beauty/（2025-08 Wayback 存檔 + puls-lib main.css 實測）
   - 切換點 600 / 601px（左右兩欄）、960 / 961px（外框邊距）
   - 手機：大標在上（下方 29px）→ 分類標題 → 分隔 → 分頁籤 → 問答
   - ≥ 601px：外框內 10/12 置中，左 1/3 大標、右 2/3 內容（左右內距 colPadding）
   ========================================================= */

.gemistry-ms-faq {
	--gemistry-ms-faq-space: 14.4vw;          /* 上下留白（原站 Separator xxx-large） */
	--gemistry-ms-faq-width: 89.3333%;        /* 外框寬（原站 Block_gutters） */
	--gemistry-ms-faq-col: 1;                 /* 內容區佔外框比例（原站 col-12 / col-md-10 = 10/12） */
	--gemistry-ms-faq-pad: 0px;               /* 右欄左右內距（原站 colPadding） */
	--gemistry-ms-faq-title: 25px;
	--gemistry-ms-faq-title-lh: 31px;
	--gemistry-ms-faq-sep: 6.134vw;           /* 分類標題下方（原站 Separator small） */
	--gemistry-ms-faq-tab-pad: 22.5px;
	--gemistry-ms-faq-line: #d8d8d8;
	--gemistry-ms-faq-tab-line: #ececec;
	--gemistry-ms-faq-icon: 24px;
}

.gemistry-ms-scope.gemistry-ms-scope.gemistry-ms-faq {
	width: 100%;
	padding-block: var(--gemistry-ms-faq-space);
	background: var(--gemistry-ms-white);
	color: var(--gemistry-ms-ink);
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__hint {
	padding: 48px 20px;
	background: var(--gemistry-ms-soft);
	color: var(--gemistry-ms-gray);
	text-align: center;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: start;
	width: calc(var(--gemistry-ms-faq-width) * var(--gemistry-ms-faq-col));
	max-width: calc(1440px * var(--gemistry-ms-faq-col));
	margin-inline: auto;
}

.gemistry-ms-scope.gemistry-ms-scope :is(.gemistry-ms-faq__title, .gemistry-ms-faq__subtitle, .gemistry-ms-faq__q) {
	margin: 0;
	padding: 0;
	color: var(--gemistry-ms-ink);
	font-family: var(--gemistry-ms-font);
	font-weight: 600;
	letter-spacing: 0;
	text-transform: uppercase;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__title {
	margin-bottom: 29px;
	font-size: var(--gemistry-ms-faq-title);
	line-height: var(--gemistry-ms-faq-title-lh);
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__main {
	min-width: 0;
	padding-inline: var(--gemistry-ms-faq-pad);
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__subtitle {
	font-size: 20px;
	line-height: 26px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__subtitle:lang(zh) {
	font-size: 17px;
	line-height: 25px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__sep { height: var(--gemistry-ms-faq-sep); }

/* ---------- 分頁籤：可水平捲動（不顯示捲軸），選中項目下方 4px 黑條 ---------- */

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tabs {
	margin-bottom: 4.5px;
	overflow: auto hidden;
	border-bottom: 1px solid var(--gemistry-ms-faq-tab-line);
	scrollbar-width: none;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tabs::-webkit-scrollbar { display: none; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tablist {
	position: relative;
	display: inline-flex;
	white-space: nowrap;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab {
	display: block;
	margin: 0 .5px;
	padding: 9px var(--gemistry-ms-faq-tab-pad) 13px;
	color: var(--gemistry-ms-gray);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1px;
	line-height: 18px;
	text-transform: uppercase;
	white-space: nowrap;
	transition: color .2s linear;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab:lang(zh) {
	font-size: 13px;
	letter-spacing: .7px;
	line-height: 20px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab:first-child { padding-left: 0; }

/* 最後一個分頁籤（指示條 span 排在它後面，所以用 nth-last-child(2)） */
.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab:nth-last-child(2) { padding-right: 0; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab[aria-selected="true"],
.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab:hover { color: var(--gemistry-ms-ink); }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__tab:focus-visible { outline-offset: -2px; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__indicator {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 0;
	height: 4px;
	background: var(--gemistry-ms-ink);
	transition: left .3s var(--gemistry-ms-ease), width .3s var(--gemistry-ms-ease);
}

/* ---------- 手風琴 ---------- */

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__panel[hidden],
.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a[hidden] { display: none; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__list { border-bottom: 1px solid var(--gemistry-ms-faq-line); }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__q {
	border-top: 1px solid var(--gemistry-ms-faq-line);
	font-size: 12px;
	line-height: 18px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__q:lang(zh) {
	font-size: 13px;
	letter-spacing: .7px;
	line-height: 20px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__toggle {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	width: 100%;
	padding: 11px 5.5px 11px 0;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	text-align: start;
	text-transform: inherit;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__qtext { word-break: break-word; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__toggle .gemistry-ms-icon {
	--gemistry-ms-icon: var(--gemistry-ms-faq-icon);
	margin-right: -7px;
	transition: transform .5s ease-in-out;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__toggle[aria-expanded="true"] .gemistry-ms-icon { transform: rotate(-180deg); }

/* 展開 / 收合：grid 列高 0fr ↔ 1fr（JS 先拿掉 hidden，下一個畫格才加 is-open） */
.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows .5s ease-in-out;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a.is-open { grid-template-rows: 1fr; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-inner {
	min-height: 0;
	overflow: hidden;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body {
	padding-bottom: 36px;
	color: var(--gemistry-ms-ink);
	font-family: Helvetica, "Helvetica Neue", Arial, "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", sans-serif;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: .1px;
	line-height: 18px;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body > * { margin: 0; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body > * + * { margin-top: 18px; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body :is(ul, ol) { padding-left: 1.2em; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body ul { list-style: disc; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body ol { list-style: decimal; }

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body a {
	text-decoration: underline;
	text-underline-offset: 2px;
	overflow-wrap: anywhere;
}

.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__a-body :is(strong, b) { font-weight: 600; }

.elementor-widget-gemistry-maison-faq { width: 100%; }

@media (min-width: 601px) {
	.gemistry-ms-faq {
		--gemistry-ms-faq-space: 5vw;
		--gemistry-ms-faq-width: 83.956%;
		--gemistry-ms-faq-col: .833333;
		--gemistry-ms-faq-pad: .9896vw;
		--gemistry-ms-faq-title: 30px;
		--gemistry-ms-faq-title-lh: 36px;
		--gemistry-ms-faq-sep: 1.875vw;
	}

	.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); }

	.gemistry-ms-scope.gemistry-ms-scope .gemistry-ms-faq__title { margin-bottom: 0; }
}

@media (min-width: 961px) {
	.gemistry-ms-faq {
		--gemistry-ms-faq-width: 83.8889%;
		--gemistry-ms-faq-pad: .9722vw;
		--gemistry-ms-faq-title: 40px;
		--gemistry-ms-faq-title-lh: 45px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.gemistry-ms-scope.gemistry-ms-scope :is(.gemistry-ms-faq__indicator, .gemistry-ms-faq__a, .gemistry-ms-faq__toggle .gemistry-ms-icon) { transition: none; }
}
