@charset "utf-8";

		/* ===== Slider：滿版 + 桌機固定 1920×780 比例 ===== */
		#slider { margin: 0; padding: 0 !important; width: 100%; }
		/* 以 aspect-ratio 控制高度，避免用固定 px/vh */
		#slider .slide-box {
			position: relative;
			width: 100%;
			/* 行動裝置預設 16:9，可依需要改 4/3、1/1 等 */
			aspect-ratio: 16 / 9;
			overflow: hidden;
		}
		/* 桌機(≥992px)：強制 1920:780（= 32:13） */
		@media (min-width: 992px) {
			#slider .slide-box { aspect-ratio: 1920 / 780; /* 或 32 / 13 */ }
		}

		/* 內容鋪滿 slide-box */
		#slider .slide-inner { position: absolute; inset: 0; }
		#slider .slide-media { position: absolute; inset: 0; z-index: 1; }
		#slider .slide-media img {
			width: 100%; height: 100%;
			object-fit: cover;     /* 以裁切方式無變形鋪滿 */
			object-position: center;
			display: block;
		}
		/* 上下漸層壓字便於閱讀 */
		#slider .slide-overlay {
			position: absolute; inset: 0; z-index: 2;
			background: linear-gradient(to bottom, rgba(0,0,0,.45), rgba(0,0,0,.2));
			pointer-events: none;
		}
		#slider .slide-content { position: relative; z-index: 3; height: 100%; }

		/* 文字樣式 */
		#slider .slide-sub {
			opacity: .85;
			border-right: 2px solid rgba(255,255,255,.6);
			padding-right: .75rem;
			margin-bottom: .75rem;
			line-height: 1.2;
		}
		@media (max-width: 575.98px) {
			#slider h2.display-4 { font-size: 1.6rem; }
			#slider .slide-sub { font-size: .86rem; border-right: 0; padding-right: 0; }
		}

		/* Swiper 容器與控制（保持滿版寬度） */
		#slider .swiper { width: 100%; }
		#slider .swiper-slide { width: 100%; }
		#slider .slider-arrow-left,
		#slider .slider-arrow-right {
			position: absolute; top: 50%; transform: translateY(-50%);
			z-index: 5; width: 44px; height: 44px; border-radius: 999px;
			background: rgba(0,0,0,.45); color: #fff; display: grid; place-items: center;
			cursor: pointer; user-select: none;
		}
		#slider .slider-arrow-left { left: 12px; }
		#slider .slider-arrow-right { right: 12px; }
		#slider .slider-arrow-left:hover,
		#slider .slider-arrow-right:hover { background: rgba(0,0,0,.65); }
		#slider .swiper-pagination-bullets .swiper-pagination-bullet { background: rgba(255,255,255,.8); opacity: .6; }
		#slider .swiper-pagination-bullet-active { opacity: 1; background: #fff; }

		/* 你原本的樣式保留 */
		.img-hv { max-height: 200px; overflow: hidden; }
		.block-expand-categories h1,
		.block-expand-categories h2,
		.block-expand-categories h3 { font-family: Playfair Display, serif !important; }
		.block-expand-categories .expand-category {
			--height: 50vh;
			--responsive-height: 60px;
			--hover-flex: 10;
			position: relative;
			background-position: center center;
			background-size: cover;
			border-radius: 20px;
			margin: 10px 0;
			min-height: var(--responsive-height);
			cursor: pointer;
		}
		.block-expand-categories .expand-category h4 {
			position: absolute;
			top: 50%;
			left: 0;
			right: 0;
			text-align: center;
			margin: 0;
			transform: translateY(-50%);
		}
		@media (min-width: 992px) {
			.block-expand-categories .expand-category {
				height: var(--height);
				flex: 1;
				margin: 0 10px;
				transition: flex 1s ease;
				-webkit-backface-visibility: hidden;
				transform: translate3d(0,0,0);
			}
			.block-expand-categories:not(.on-click) .expand-category:hover,
			.block-expand-categories.on-click .expand-category.active { flex: var(--hover-flex); }
			.block-expand-categories .expand-category h4 {
				opacity: 1;
				top: auto;
				bottom: 10px;
				transform: none;
				transition: opacity .4s ease;
			}
			.block-expand-categories:hover .expand-category:not(.active):not(:hover) h4,
			.block-expand-categories.on-click .expand-category:not(.active) h4 { opacity: 0; }
		}
		.fancy-title::before, .fancy-title::after { border-color: rgba(255,255,255,1.0); }
		.accordion-button:not(.collapsed) { color: #000000; background-color: #FFFFFF; box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color); }
		.accordion { --bs-accordion-color: #ffffff; --bs-accordion-bg: #000000; --bs-accordion-btn-icon: url("images/arrow-w.png")!important; }
		.accordion-button { color: #FFFFFF; }
