/*
CTC Separate Stylesheet
Updated: 2026-06-17 17:25:12
*/

/* 物件詳情頁價格顯示：總價紅字大數字，單位（萬）稍小；單價加 /坪 */
.houzez-child-total-price {
	color: #e03131 !important;
	font-size: 32px !important;
	font-weight: 900 !important;
	line-height: 1.2;
}
.houzez-child-total-price .houzez-child-wan-unit {
	font-size: 0.6em !important;
	font-weight: 600;
	color: #e03131 !important;
	margin-left: 1px;
}
.houzez-child-unit-price {
	font-size: 0.95rem;
	color: #666;
	font-weight: 500;
}

/* 物件詳情頁總覽區塊：隱藏內建圖示，僅保留數值與文字標籤
   注意：頂部樣式為 v7（houzez_option('prop-top-area') = 'v7'）時，
   總覽區塊實際輸出的是 overview-data-v3.php，外層沒有 #property-overview-wrap
   這個 id，只有 .property-overview-data 這個 class，因此改用 class 選擇器，
   同時涵蓋 v1（property-details/overview.php）與 v3 兩種輸出結構。 */
.property-overview-data .property-overview-item i,
.property-overview-data .property-overview-item img {
	display: none;
}

/* 物件類型項目原本是標籤在上、值在下（overview-data-v3.php 的 type 特例），
   與其他項目（值在上、標籤在下）不一致，用 :has() 把這個區塊的兩行
   顯示順序倒過來，統一成值在上、標籤在下。 */
.property-overview-data ul:has(> .property-overview-type) {
	display: flex;
	flex-direction: column-reverse;
}

/* 總覽區塊字體：値與標籤全部加粗，値的字體比標籤大，並統一置中
   値的顏色用溫暨珊瑚橘 #E07A5F（新品牌主色方向），對白色背景對比度約 3.4:1（大字粗體達 WCAG AA）。
   標籤用灰色 #666，與現有單價 .houzez-child-unit-price 顏色一致。 */
.property-overview-data li {
	text-align: center;
}
.property-overview-data strong,
.property-overview-data .hz-meta-label {
	font-weight: 700;
}
.property-overview-data li > strong {
	font-size: 32px;
	color: #E07A5F;
}
.property-overview-data .hz-meta-label {
	font-size: 18px;
	color: #666;
}

/* 物件詳情頁字體統一：標題原本用 Noto Serif TC（襬線）與內文 Noto Sans TC 不一致，
   中文襬線字體容易偏傳統報紙感，改統一用無襬線。標題改接近黑色，內文淺一階灰色。
   只影響物件詳情頁（.single-property），不包括總覽區塊（總覽已有自己的顏色設定，
   .property-overview-data 的選擇器特異性更高，不會被這裡覆蓋）。 */
.single-property {
	color: #555555;
}
.single-property h1,
.single-property h2,
.single-property h3,
.single-property h4,
.single-property h5,
.single-property h6 {
	font-family: 'Noto Sans TC', sans-serif;
	color: #1a1a1a;
}

/* 詳情頁每個區塊的標題(物件描述、鄰近生活機能、詳細資訊等 .block-title-wrap 裡的 h2/h3)統一改成 18px，
   與上面詳細資訊分組的小標題字素一致。 */
.single-property .block-title-wrap h2,
.single-property .block-title-wrap h3 {
	font-size: 18px !important;
}

/* 物件標題(如「好漂亮透天」)改用深藍綠，呼應頁首/頁尾主色，與其他黑色內文拉開視覺層次；
   手機版本(實際上是 d-md-none 區塊，property-details/mobile-view.php)用的是別一套 .page-title-mobile
   對 div，不是 h1，必須別外處理，不然手機版會停留在 Houzez 預設字體，與電腦版不一致。 */
.single-property .page-title h1 {
	color: #0F5257;
	font-size: 32px !important;
}
.single-property .page-title .page-title-mobile {
	font-family: 'Noto Sans TC', sans-serif;
	color: #0F5257;
	font-weight: 700;
}
@media (max-width: 767.98px) {
	.single-property .page-title .page-title-mobile {
		font-size: 22px !important;
	}
}

/* 鄰近生活機能板塊（v2：分類按鈕切換，參考樂屋網機能地圖） */
#nearby-amenities-wrap .nearby-amenities-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 12px;
}
#nearby-amenities-wrap .nearby-amenities-tab {
	border: 1px solid #0F5257;
	background: #fff;
	color: #0F5257;
	border-radius: 20px;
	padding: 8px 18px;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	transition: background-color .2s, color .2s;
}
#nearby-amenities-wrap .nearby-amenities-tab:hover {
	background: #eef4f3;
}
#nearby-amenities-wrap .nearby-amenities-tab.active {
	background: #0F5257;
	color: #fff;
}
#nearby-amenities-wrap .nearby-amenities-tab-count {
	opacity: .75;
	font-weight: 400;
}
#nearby-amenities-wrap .nearby-amenities-placeholder {
	color: #999;
	font-size: 14px;
	padding: 6px 0 2px;
}
#nearby-amenities-wrap .nearby-amenities-subgroup {
	border-bottom: 1px solid #eee;
	padding: 4px 0;
}
#nearby-amenities-wrap .nearby-amenities-subgroup:last-child {
	border-bottom: none;
}
#nearby-amenities-wrap .nearby-amenities-subgroup summary {
	cursor: pointer;
	font-weight: 700;
	color: #0F5257;
	font-size: 14px;
	padding: 8px 4px;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 6px;
}
#nearby-amenities-wrap .nearby-amenities-subgroup summary::-webkit-details-marker {
	display: none;
}
#nearby-amenities-wrap .nearby-amenities-subgroup summary::before {
	content: '\25B8';
	display: inline-block;
	transition: transform .2s;
	color: #E07A5F;
}
#nearby-amenities-wrap .nearby-amenities-subgroup[open] summary::before {
	transform: rotate(90deg);
}
#nearby-amenities-wrap .nearby-amenities-subgroup ul {
	padding-left: 4px;
}
#nearby-amenities-wrap .nearby-amenities-poi-list li {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 0;
	border-bottom: 1px dashed #e6e6e6;
	font-size: 14px;
	cursor: pointer;
}
#nearby-amenities-wrap .nearby-amenities-index {
	flex-shrink: 0;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: #E07A5F;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}
#nearby-amenities-wrap .nearby-amenities-name {
	flex-grow: 1;
	color: #333;
}
#nearby-amenities-wrap .nearby-amenities-distance {
	color: #999;
	white-space: nowrap;
	flex-shrink: 0;
}
#nearby-amenities-wrap .nearby-amenities-map-wrap {
	position: relative;
	margin: 15px 0;
}
#nearby-amenities-wrap .nearby-amenities-streetview {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 10;
}
#nearby-amenities-wrap .nearby-amenities-streetview .btn-primary-outlined {
	color: #0F5257;
	border-color: #0F5257;
	background-color: rgba(255,255,255,.92);
	box-shadow: 0 1px 4px rgba(0,0,0,.25);
	font-size: 14px;
	padding: 7px 16px;
	letter-spacing: 2px;
}
#nearby-amenities-wrap .nearby-amenities-streetview .btn-primary-outlined:hover {
	background-color: #0F5257;
	color: #fff;
}

/* 地圖上的編號圓圈標記與物件本身的家圖示（Leaflet divIcon，非 scoped 到 #nearby-amenities-wrap 內，
   因為 Leaflet 會把這些 icon 插到地圖自己的 pane 裡，不在 #nearby-amenities-wrap 內部） */
.nearby-amenities-marker {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: linear-gradient(180deg, #E9876C 0%, #E07A5F 60%, #C96548 100%);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 3px solid #fff;
	box-shadow: 0 2px 6px rgba(0,0,0,.4), 0 0 0 1px rgba(0,0,0,.06);
}
.nearby-amenities-home-marker {
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: linear-gradient(180deg, #2A6E67 0%, #0F5257 60%, #0A3A3E 100%);
	border: 3px solid #fff;
	box-shadow: 0 2px 6px rgba(0,0,0,.4), 0 0 0 1px rgba(0,0,0,.06);
}

/* 地圖彈窗樣式：手寬平圓角卡片 + 浮起陰影 + 地點名稱/距離主副層次（非 scoped 到 #nearby-amenities-wrap，
   因為 Leaflet 彈窗 DOM 插在地圖自己的 pane，不在 wrap 內部） */
.leaflet-popup-content-wrapper {
	border-radius: 14px !important;
	box-shadow: 0 4px 12px rgba(0,0,0,.15) !important;
	padding: 2px !important;
}
.leaflet-popup-content {
	margin: 10px 16px !important;
	min-width: 150px !important;
	line-height: 1.3 !important;
}
.leaflet-popup-tip-container {
	width: 24px !important;
	height: 14px !important;
}
.leaflet-popup-tip {
	box-shadow: 0 4px 8px rgba(0,0,0,.1) !important;
}
.nearby-amenities-popup-name {
	font-size: 15px !important;
	font-weight: 700 !important;
	color: #222 !important;
	white-space: nowrap !important;
}
.nearby-amenities-popup-distance {
	font-size: 12px !important;
	color: #888 !important;
	margin-top: 3px !important;
	white-space: nowrap !important;
}

/* 詳細資訊板塊分組：每筆資料自己已經有 border-bottom(list-lined)，分組不另外加線，只靠小標題文字 + 間距做區隔，
   避免線跡太多顯得亂。整個區塊維持原本 .detail-wrap 的邊框框線。 */
#property-detail-wrap .houzez-child-detail-group-title {
	font-size: 18px;
	font-weight: 700;
	color: #0F5257;
	margin: 0 0 12px;
}
#property-detail-wrap .houzez-child-detail-group-title-spaced {
	margin-top: 28px;
}

/* 物件詳情頁頂部滏動導覽列：字體放大，hover 改用珇瑚橘主題色（原本沒有 hover 效果，只有
   .active 狀態會變顏色，這裡補上 hover） */
.property-navigation-wrap {
	font-size: 15px !important;
}
.property-navigation-wrap a:hover {
	color: #E07A5F !important;
}


/* 房貸計算機圓餅圖中心數字：原本 .mortgage-calculator-monthly-payment-wrap 的 top:calc(50% - 15px) 是為單行大數字設計的，
   我們加了寬限期的兩行顯示後高度變高，因而偷定位公式變得不準，整體偏下。改用 top:50% + transform 
   絕對置中，不管內容高度多少都能真正垂直置中。 */
.mortgage-calculator-monthly-payment-wrap {
	top: 50% !important;
	transform: translateY(-50%);
}

/* 房貸計算機：細項前面的圓圈改成實心，跟左邊圓餅圖有關的用對應顏色(與圖表切片顏色一致)，
   無關的(頭期款、貸款金額，不是每月總額的組成部分)用黑色。 */
.houzez-child-calc-dot {
	display: inline-block;
	width: 9px;
	height: 9px;
	border-radius: 50%;
	margin-right: 6px;
	vertical-align: middle;
	background-color: #000;
}
.houzez-child-calc-dot-mortgage { background-color: #ff6384; }
.houzez-child-calc-dot-tax { background-color: #36a2eb; }
.houzez-child-calc-dot-insurance { background-color: #ffce56; }
.houzez-child-calc-dot-pmi { background-color: #4bc0c0; }
.houzez-child-calc-dot-hoa { background-color: #c2d500; }

/* 圓餅圖中心的每月負擔金額加粗，與上方/下方的「寬限期內」「寬限期後」標籤文字(正常粗細)拉開層次 */
.mortgage-calculator-monthly-payment {
	font-weight: 700 !important;
}

/* 物件詳情頁影片區塊：支援 Instagram/Facebook 直式短影片(9:16)嵌入，
不用原本適合樫寬 YouTube 的 padding-bottom:56.25% 盒子，避免直式影片被拉扁/裁切。 */
.block-video-wrap-vertical {
	max-width: 380px;
	margin: 0 auto;
}
.block-video-wrap-vertical iframe,
.block-video-wrap-vertical .wp-video,
.block-video-wrap-vertical video {
	width: 100% !important;
	height: auto !important;
	aspect-ratio: 9 / 16;
	display: block;
}
.block-video-wrap-vertical .instagram-media {
	max-width: 100% !important;
	min-width: 0 !important;
}


/* 格局圖區塊（放在物件描述下方）：不管原始比例，固定在一個相同大小的方塊裡，object-fit:contain 保證圖片不被裁切，不提供點擊放大。 */
.houzez-child-floorplan-fixed-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
}
.houzez-child-floorplan-fixed-item img {
	display: block;
	max-width: 100%;
	height: auto;
	max-height: 520px;
	margin: 0 auto;
}


/* 手機/平板頁首 logo 真正置中：原本 Houzez 靠 .header-mobile-left/.header-mobile-right 的寬度平衡來間接置中 logo，
但右側登入/註冊/發布按鈕都沒開(右側是空的)導致左右寬度不對稱，logo 偷偏左。
改用絕對定位相對 .header-mobile 置中，不再依賴左右寬度平衡，保證在任何手機/平板寬度都真正置中。 */
/* 手機/平板頁首 logo 真正置中：發現全站(除首頁外)的頁首其實是用 Elementor(Houzez Studio) 自建的 Header 模板(fts_builder #18468)，
   不是 Houzez 原生的 header-mobile.php 。那個 Elementor 模板裡的 logo 小組件(elementor 元素 ID 0e2fe61)，
   在手機/平板斷點都是用固定像素偏移(_offset_x_mobile: 120px、_offset_x_tablet: 293px)來模擬置中，
   只會在特定實际螢幕寬度下巧合看起來置中，換一台尺寸不同的手機/平板就會偏移。
   這裡直接覆蓋掉 Elementor 自己輸出的固定偏移 inline CSS，改用真正的 left:50%+transform 置中，
   不再依賴固定 px 數字。斷點數值參考目前 Elementor 缺設斷點(md=768, lg=1025)。 */
@media (max-width: 1024px) {
	.elementor-element-c2a0182 {
		position: relative !important;
	}
	.elementor-element-0e2fe61.elementor-element {
		position: absolute !important;
		left: 50% !important;
		right: auto !important;
		top: 50% !important;
		bottom: auto !important;
		transform: translate(-50%, -50%) !important;
	}
}


/* Site header (template 18468): pin a stable min-height so the custom web font (Noto Sans TC) loading late can't reflow the header's box height and shift the hero image below it */
.elementor-18468 .elementor-element-c2a0182{min-height:74px;}

.elementor-18468 .elementor-element-0e2fe61{top:50% !important;transform:translateY(-50%);}


/* Homepage hero (區塊掛 CSS 類別 cgh-home-hero；2026-09-27 前用元素編號 4cc2ba0): hero section uses Elementor's native JS-based "Stretch Section" which flashes boxed-width (white side margins) until JS runs on load. Force pure-CSS full-bleed instead so it's correct from first paint. */
.elementor-section.cgh-home-hero{width:100vw !important;max-width:100vw !important;margin-left:calc(-50vw + 50%) !important;margin-right:calc(-50vw + 50%) !important;left:auto !important;right:auto !important;}


/* Site-wide: unify size of property status/label/featured tags (精選/新上架/獨家/降價...). Colors stay controlled via Houzez's own admin settings (theme options + taxonomy term color); this only touches size, and only these specific tag classes — not the generic .label class used elsewhere in the theme. */
.label-featured, .label-status, .hz-label{font-size:13px !important;padding:6px 12px !important;line-height:1.2 !important;}


/* Homepage (194): 獨家房源 section — full-bleed, single large banner-style property card instead of small carousel cards */
/* 獨家房源 (194): reverted to boxed width to match 精選房源's layout, no longer full-bleed */
.elementor-194 .cgh-home-exclusive-carousel .property-carousel-module-v5-1cols{max-width:100%;}
.elementor-194 .cgh-home-exclusive-carousel .item-wrap-v5{width:100%;}
.elementor-194 .cgh-home-exclusive-carousel .listing-image-wrap,
.elementor-194 .cgh-home-exclusive-carousel .listing-thumb,
.elementor-194 .cgh-home-exclusive-carousel .listing-featured-thumb.image-wrap{width:100% !important;height:600px !important;max-width:none !important;}
.elementor-194 .cgh-home-exclusive-carousel .listing-featured-thumb.image-wrap img{width:100% !important;height:100% !important;object-fit:cover !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-body{padding:30px 40px !important;}
/* 768-1024px: the section itself is still boxed (Elementor's own .elementor-section-boxed>.elementor-container
 * caps at 1140px, and the theme's Bootstrap .container wrapper caps at 750-970px) which is why widening the
 * image alone had no effect -- break the SECTION out of both ancestor width caps so the photo can actually
 * reach near the screen edges, matching how it reads on desktop. */
@media(min-width:768px) and (hover:none) and (pointer:coarse){
.elementor-194.elementor-194 .cgh-home-exclusive-section.cgh-home-exclusive-section{
  width:100vw !important;
  max-width:100vw !important;
  margin-left:calc(-50vw + 50%) !important;
  margin-right:calc(-50vw + 50%) !important;
}
.elementor-194.elementor-194 .cgh-home-exclusive-section.cgh-home-exclusive-section>.elementor-container{
  max-width:100% !important;
  width:100% !important;
  padding-left:16px !important;
  padding-right:16px !important;
}
.elementor-194.elementor-194 .cgh-home-exclusive-section.cgh-home-exclusive-section>.elementor-container>.cgh-home-exclusive-inner{
  max-width:100% !important;
  width:100% !important;
  flex-basis:100% !important;
}
}
@media(min-width:768px) and (hover:none) and (pointer:coarse){
.elementor-194 .cgh-home-exclusive-carousel .listing-image-wrap,
.elementor-194 .cgh-home-exclusive-carousel .listing-thumb,
.elementor-194 .cgh-home-exclusive-carousel .listing-featured-thumb.image-wrap{height:auto !important;aspect-ratio:4/3;}
}
@media(max-width:767px){
.elementor-194 .cgh-home-exclusive-carousel .listing-image-wrap,
.elementor-194 .cgh-home-exclusive-carousel .listing-thumb,
.elementor-194 .cgh-home-exclusive-carousel .listing-featured-thumb.image-wrap{height:320px !important;}
}

/* Homepage (194): 獨家房源 banner — overlay title/price/tag on top of the photo instead of stacking below it */
.elementor-194 .cgh-home-exclusive-carousel .item-header{position:relative;}
.elementor-194 .cgh-home-exclusive-carousel .item-body{
  position:absolute !important;
  left:0; right:0; bottom:0;
  width:100%;
  z-index:3;
  background:linear-gradient(to top, rgba(0,0,0,0.85) 0%, rgba(0,0,0,0.55) 45%, rgba(0,0,0,0) 90%);
  padding:36px 40px 28px !important;
  align-items:flex-start !important;
  text-align:left;
  pointer-events:none;
}
.elementor-194 .cgh-home-exclusive-carousel .item-body a{pointer-events:auto;}

/* unified typography for the overlay text — two-tier hierarchy: title=price, type=amenities. Forced left alignment + zero margin/width constraints so every line starts flush at the same left edge. */
.elementor-194 .cgh-home-exclusive-carousel .item-title,
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price,
.elementor-194 .cgh-home-exclusive-carousel .item-v5-type,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities{
  width:100% !important;
  max-width:none !important;
  text-align:left !important;
  margin-left:0 !important;
  margin-right:0 !important;
  justify-content:flex-start !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-title{
  font-family:"Noto Sans TC", sans-serif !important;
  font-size:40px !important;
  font-weight:700 !important;
  line-height:1.3 !important;
  letter-spacing:2px !important;
  margin-bottom:4px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-title a{font-family:inherit !important;font-size:inherit !important;font-weight:inherit !important;letter-spacing:inherit !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price{
  font-family:"Noto Sans TC", sans-serif !important;
  font-size:40px !important;
  font-weight:700 !important;
  letter-spacing:2.5px !important;
  margin-bottom:22px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-type{
  font-family:"Noto Sans TC", sans-serif !important;
  font-size:18px !important;
  font-weight:600 !important;
  letter-spacing:1.5px !important;
  margin-bottom:4px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-amenities,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities li,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities span{
  font-family:"Noto Sans TC", sans-serif !important;
  font-size:18px !important;
  font-weight:500 !important;
  letter-spacing:0.3px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-amenities{
  padding:0 !important;
  margin:0 !important;
  list-style:none !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-amenities li{
  padding-left:0 !important;
  margin-left:0 !important;
}

/* single-property banner: the preview/favorite/compare icons are for grid browsing, not needed on a single hero card, and they were conflicting with the text overlay */
.elementor-194 .cgh-home-exclusive-carousel .item-tools{display:none !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-title,
.elementor-194 .cgh-home-exclusive-carousel .item-title a{color:#ffffff !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price{color:#A8432B !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-type,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities li,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities span{color:#ffffff !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-amenities{justify-content:flex-start !important;}

/* 房/廣/衛/坪數該列的內建圖示（.item-amenities 裡的 <i class="houzez-icon..."> 或 <img>），
   之前已在物件詳情頁總覽區塊拿掉過，但這張首頁「獨家物件」卡片用的是不同的標記（.item-amenities），
   並沒有被那次修改涵蓋到，所以圖示一直都在。這裡同樣直接隱藏。 */
.elementor-194 .cgh-home-exclusive-carousel .item-amenities i,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities img{
  display:none;
}
/* 底層 PHP 輸出的是「標籤:數字」(例如「房:3」)，但希望當歸「數字+單字」格式（3房2廣2衛50坪），
   因為標籤文字已經帶了冒號，無法直接用 CSS 排序從前接到後面，改成把原本標籤文字藏起來，
   改用 CSS ::after 在數字後面插一個單字。坪數(.h-area)本來就是「50坪」格式，不需要改。 */
.elementor-194 .cgh-home-exclusive-carousel .item-amenities-text{
  display:none !important;
}
.elementor-194 .cgh-home-exclusive-carousel .h-beds .hz-figure::after{
  content:"房";
  margin-left:1px;
}
.elementor-194 .cgh-home-exclusive-carousel .h-baths .hz-figure::after{
  content:"衛";
  margin-left:1px;
}
.elementor-194 .cgh-home-exclusive-carousel .h-living-room span:not(.item-amenities-text)::after{
  content:"廳";
  margin-left:1px;
}

/* 獨家 tag: overlay badge top-left, scaled up to match the banner size */
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap{
  position:absolute !important;
  top:28px; left:28px;
  z-index:4;
}
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap .hz-label{
  font-size:20px !important;
  padding:10px 20px !important;
}

/* 參考「精選物件」(74b4576) 那區未被客製化的原生 Houzez 排法：.label-featured 釘左上角，
   .labels-wrap 釘右上角，兩邊分開。之前「獨家物件」把兩組都推到左邊才撠在一起，現在改回左右分開，
   並且不需要依賴是否有精選標籤、未來新增其他狀態/標籤也不會撠到。 */
.elementor-194 .cgh-home-exclusive-carousel .label-featured{
  position:absolute !important;
  top:28px; left:28px;
  z-index:4;
  font-size:20px !important;
  padding:10px 20px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap{
  position:absolute !important;
  top:28px; right:28px; left:auto;
  z-index:4;
  flex-wrap:wrap;
  justify-content:flex-end;
  max-width:calc(100% - 180px);
}
/* 新上架(label-status) 之前沒被放大，跟獨家(hz-label) 大小不一致，一起補上；
   也一併涵蓋以後可能新增的其他狀態/標籤，保證都是同一個字型大小。 */
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap .hz-label,
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap .label-status{
  font-size:20px !important;
  padding:10px 20px !important;
}

@media(max-width:767px){
.elementor-194 .cgh-home-exclusive-carousel .item-title{font-size:22px !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price{font-size:22px !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-type{font-size:13px !important;}
.elementor-194 .cgh-home-exclusive-carousel .item-amenities,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities li,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities span{font-size:13px !important;}
}

/* 手機實測發現：精選/新上架/獨家那套 20px 字體+10px×20px 內距在手機窄寬寬下放不下、會自動換行變成竖向疊在一起。
   手機改用接近 Houzez 原生大小，確保新上架跟獨家能排回同一列。 */
@media(max-width:767px){
.elementor-194 .cgh-home-exclusive-carousel .label-featured{
  top:16px; left:16px;
  font-size:14px !important;
  padding:6px 12px !important;
}
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap{
  top:16px; right:16px;
  max-width:calc(100% - 100px);
}
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap .hz-label,
.elementor-194 .cgh-home-exclusive-carousel .labels-wrap .label-status{
  font-size:14px !important;
  padding:6px 12px !important;
}
}


/* Site-wide: .hover-effect-flat (used by taxonomy grid cards etc.) fades its dark overlay fully to 0 on hover, leaving white text unreadable against the now-bright photo. Keep a light tint so text stays legible in both states. */
.hover-effect-flat:hover:before{
  opacity:1 !important;
  background-color:transparent !important;
  background-image:linear-gradient(to top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.35) 30%, rgba(0,0,0,0.08) 55%, rgba(0,0,0,0) 75%) !important;
}

/* /properties/ (44345): hide the raw, un-shortened price-range text until our JS has reformatted it, to avoid a flash of the original numbers/icons on load. */
body.page-id-44345 .range-wrap[data-price-range-id] .range-text{opacity:0;transition:opacity 0.15s ease;}
body.page-id-44345 .range-wrap[data-price-range-id] .range-text.prices-ready{opacity:1;}

/* /properties/ (44345): search + clear buttons in the theme's dark green, with hover effects. */
body.page-id-44345 .btn-search{
  background-color:#0F5257 !important;
  border:2px solid #0F5257 !important;
  color:#ffffff !important;
  border-radius:6px !important;
  transition:background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}
body.page-id-44345 .btn-search:hover{
  background-color:#04262A !important;
  border-color:#04262A !important;
  color:#ffffff !important;
  transform:none !important;
  box-shadow:none !important;
}
body.page-id-44345 .reset-search-btn{
  background-color:#ffffff !important;
  border:2px solid #0F5257 !important;
  color:#0F5257 !important;
  padding-left:22px !important;
  padding-right:22px !important;
  font-weight:600 !important;
  border-radius:6px !important;
  white-space:nowrap !important;
  transition:background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
body.page-id-44345 .reset-search-btn:hover{
  background-color:#0F5257 !important;
  border-color:#0F5257 !important;
  color:#FFFFFF !important;
  transform:none !important;
  box-shadow:none !important;
}

/* /properties/ (44345): hide the search fields grid until bootstrap-select has finished converting every native <select> into its styled dropdown, so fields don't visibly pop in one/two at a time on load. */
body.page-id-44345 .advanced-search-half-map .row-cols-2{opacity:0;transition:opacity 0.2s ease;}
body.page-id-44345 .advanced-search-half-map .row-cols-2.fields-ready{opacity:1;}

/* /properties/ (44345): unify the listing card's typography — one font family, one size for everything except the title (which gets larger too). */
body.page-id-44345 .item-listing-wrap .item-title,
body.page-id-44345 .item-listing-wrap .item-price,
body.page-id-44345 .item-listing-wrap .item-sub-price,
body.page-id-44345 .item-listing-wrap .item-address,
body.page-id-44345 .item-listing-wrap .item-amenities,
body.page-id-44345 .item-listing-wrap .item-amenities li,
body.page-id-44345 .item-listing-wrap .h-type span{
  font-family:"Noto Sans TC", sans-serif !important;
}
body.page-id-44345 .item-listing-wrap .item-title{
  font-size:22px !important;
  line-height:1.4 !important;
}
body.page-id-44345 .item-listing-wrap .item-price,
body.page-id-44345 .item-listing-wrap .item-sub-price,
body.page-id-44345 .item-listing-wrap .item-address,
body.page-id-44345 .item-listing-wrap .item-amenities,
body.page-id-44345 .item-listing-wrap .item-amenities li,
body.page-id-44345 .item-listing-wrap .h-type span{
  font-size:16px !important;
  text-transform:none !important;
}

/* /properties/ (44345): drop the pin icon in front of the address so the price, address, and amenities lines all start flush at the same left edge. */
body.page-id-44345 .item-listing-wrap .item-address .houzez-icon.icon-pin{
  display:none !important;
}

/* /properties/ (44345): more breathing room between the title and the address/amenities block, and unify those 3 lines to a lighter grey distinct from the (dark) title. */
body.page-id-44345 .item-listing-wrap .item-title{
  color:#0B3142 !important;
}
body.page-id-44345 .item-listing-wrap h2.item-title{
  margin-bottom:14px !important;
}
body.page-id-44345 .item-listing-wrap .item-address,
body.page-id-44345 .item-listing-wrap .item-address span,
body.page-id-44345 .item-listing-wrap .item-amenities,
body.page-id-44345 .item-listing-wrap .item-amenities li,
body.page-id-44345 .item-listing-wrap .h-type span{
  color:#6B7280 !important;
}

/* /properties/ (44345): same font-weight across the address/amenities/type lines (amenities defaulted to 500 while address was 400). */
body.page-id-44345 .item-listing-wrap .item-address,
body.page-id-44345 .item-listing-wrap .item-address span,
body.page-id-44345 .item-listing-wrap .item-amenities,
body.page-id-44345 .item-listing-wrap .item-amenities li,
body.page-id-44345 .item-listing-wrap .h-type span{
  font-weight:400 !important;
}

/* /properties/ (44345): on mobile the unit-price sits inside .item-header, overlaid directly on the listing photo (unlike the desktop copy in .item-body which has a white background) — the grey #666 text was hard to read against photos, so make just this overlay copy white with a dark shadow. */
body.page-id-44345 .item-listing-wrap .item-header .houzez-child-unit-price{
  color:#ffffff !important;
  text-shadow:0 1px 3px rgba(0,0,0,0.85), 0 0 4px rgba(0,0,0,0.6) !important;
}


/* Hide Google Maps' native InfoWindow pointer/tail on the /properties/ map popup card.
 * Covers every mechanism Google's API has used across versions: a dedicated
 * tail element/class, a pseudo-element on the tail wrapper, or a plain
 * sibling element next to the card (.gm-style-iw-c) inside the tail wrapper
 * (.gm-style-iw-t). */
body.page-id-44345 .gm-style-iw-t::after,
body.page-id-44345 .gm-style-iw-t::before,
body.page-id-44345 .gm-style-iw-tail,
body.page-id-44345 .gm-style-iw-tc,
body.page-id-44345 .gm-style-iw-t > *:not(.gm-style-iw-c) {
	display: none !important;
}

/* Homepage (194): 您想要找哪一個區域呢/您想要找哪一種產品呢 grids (兩個 grids 元件都掛 CSS 類別 cgh-home-tax-grid；2026-09-27 前是用元件編號 b6471ea / 7e1fb50).
 * grid_v4's rectangle tile normally gets its height from taller square
 * siblings in the same CSS Grid row (only mobile has its own self-contained
 * padding-bottom fallback). With only one property_city/property_type term
 * currently populated, there are no square siblings, so the row collapses to
 * 0 height and the tile is invisible on desktop/tablet. Give it the same
 * self-contained aspect ratio mobile already uses, at every width, so it
 * still displays correctly however many terms exist. */
.cgh-home-tax-grid .taxonomy-item-rectangle .taxonomy-item{
  padding-bottom:50% !important;
}

/* Unify typography on item-v5 property cards (精選物件 grid widget + every taxonomy
 * archive page e.g. /status/*, /property-type/*). Deliberately unscoped (no
 * .cgh-home-exclusive-carousel prefix) so it reaches every usage of this card --
 * 獨家物件's own overlay-banner rules above are more specific (3 classes +
 * !important) and already win the cascade, so that one stays untouched. */
.item-wrap-v5 .item-title,
.item-wrap-v5 .item-title a,
.item-wrap-v5 .item-v5-price,
.item-wrap-v5 .item-v5-type,
.item-wrap-v5 .item-amenities,
.item-wrap-v5 .item-amenities li{
  font-family:"Noto Sans TC", sans-serif;
}
.item-wrap-v5 .item-title,
.item-wrap-v5 .item-title a{
  font-size:20px !important;
  font-weight:700;
  color:#0B3142;
  margin-bottom:14px;
}
.item-wrap-v5 .item-v5-price,
.item-wrap-v5 .item-v5-type,
.item-wrap-v5 .item-amenities,
.item-wrap-v5 .item-amenities li{
  font-size:18px !important;
  font-weight:400 !important;
  color:#6B7280;
  text-transform:none !important;
  line-height:1.4 !important;
}
.item-wrap-v5 .item-v5-price{
  color:#A8432B !important;
  font-weight:600 !important;
}
/* Equalise the gap between the price / type / amenities rows -- the theme's
 * own markup mixes Bootstrap mb-1 and mb-3 utility classes on these, which
 * is why the spacing looked inconsistent. Using em (relative to each row's
 * own font-size) instead of a fixed px value so the gap scales naturally
 * with whichever font-size ends up applying in a given context. */
.item-wrap-v5 .item-v5-price,
.item-wrap-v5 .item-v5-type{
  margin-bottom:0.25em !important;
}
.item-wrap-v5 .item-amenities{
  margin:0 !important;
  padding:0 !important;
}

/* ===== 首頁「精選物件」卡片 FEATURED-CARDS（2026-09-24 重整） =====
   掛法：Elementor → 精選物件元件 → 進階 → CSS 類別填 cgh-featured-cards。
   不綁頁面編號、不綁元素編號——首頁重建、在複本上測試都跟得上。

   為什麼字級寫在這裡、不用元件面板：
   上方「全站 v5 卡片」那段（.item-wrap-v5 …）把標題 20px、其餘 18px、
   粗細、行高都設成 !important；元件面板產生的樣式沒有 !important，一定輸。
   （2026-09-24 在不公開複本上實測：面板標題 17px → 畫面 20px。）
   首頁這張卡比列表頁小，所以這裡再縮一號。

   留白不在這裡：卡片內距、標題／價格下距 → 元件面板；區塊左右留白 → 欄位面板。 */
.cgh-featured-cards .item-wrap-v5 .item-title,
.cgh-featured-cards .item-wrap-v5 .item-title a{
  font-size:18px !important;
}
.cgh-featured-cards .item-wrap-v5 .item-v5-price,
.cgh-featured-cards .item-wrap-v5 .item-v5-type,
.cgh-featured-cards .item-wrap-v5 .item-amenities,
.cgh-featured-cards .item-wrap-v5 .item-amenities li{
  font-size:16px !important;
}
/* 類型與設施之間的距離（面板沒有這個設定） */
.cgh-featured-cards .item-wrap-v5 .item-v5-type{
  margin-bottom:0.4em !important;
}

/* 手機：一排兩張（6 筆從 6 排變 3 排，使用者 2026-09-02），
   卡片變窄，字級隨螢幕寬度縮放（2026-09-02 定案的 clamp 值）。 */
@media (max-width: 767.98px){
  .cgh-featured-cards .listing-view.grid-view.row{ --bs-gutter-x:0.75rem; --bs-gutter-y:0.75rem; }
  .cgh-featured-cards .listing-view.grid-view.row > *{ flex:0 0 auto; width:50%; }
  .cgh-featured-cards .item-wrap-v5 .item-title,
  .cgh-featured-cards .item-wrap-v5 .item-title a{ font-size:clamp(13px, 3.6vw, 16px) !important; line-height:1.4 !important; }
  .cgh-featured-cards .item-wrap-v5 .item-v5-price{ font-size:clamp(14px, 4vw, 17px) !important; }
  .cgh-featured-cards .item-wrap-v5 .item-v5-type,
  .cgh-featured-cards .item-wrap-v5 .item-amenities,
  .cgh-featured-cards .item-wrap-v5 .item-amenities li,
  .cgh-featured-cards .item-wrap-v5 .item-amenities span{ font-size:clamp(11px, 3.1vw, 13px) !important; }
  /* 精選、獨家、狀態三種標籤一起縮（2026-09-21：只縮一種會一大一小） */
  .cgh-featured-cards .label-featured,
  .cgh-featured-cards .labels-wrap .hz-label,
  .cgh-featured-cards .labels-wrap .label-status{ font-size:12px !important; padding:4px 8px !important; }
}
/* ===== FEATURED-CARDS end ===== */

/* Copy-link share item was falling back to a default black/browser link
 * color instead of the white the other share-dropdown items get -- force it
 * explicitly instead of relying on inheritance. */
.cgh-copy-link-js,
.cgh-copy-link-js .cgh-copy-link-text{
  color:#ffffff !important;
}

/* 部落格文章內嵌 IG 短影音：避免文章內文字引用(blockquote)的排版(padding/左邊框)套到嵌入的 IG 區塊上，造成尺寸/比例變形、點擊區域錯位。 */
.post-content-wrap .cgh-blog-ig-embed blockquote.instagram-media {
	padding: 0 !important;
	margin: 0 auto !important;
	border-left: none !important;
	font-size: inherit;
	line-height: inherit;
}
.cgh-blog-ig-embed {
	margin: 0 auto 24px;
}


/* 圗視熊遇到的：部落格 IG 嵌入區塊在頁面還在載入時會閃一下(內容先縮後放)，實際是 Instagram 自己的埋入機制造成：一開始是一個對進度不知情的中間狀態，它自己計算完实際高度後再通知瀏覽器重新排版(reflow)，造成下方文字/留言區字瞬間被推動。預先在容器本身(而不只是 iframe)上保留(reserve intrinsic space) 9:16 的高度，即使還是原始 blockquote或前期的地方位 iframe，也一開始就占到正確高度，後續不需要再推動周圍內容。 */
.block-video-wrap-vertical {
	aspect-ratio: 9 / 16;
}


/* 平板實進(783px~1100px)範圍：登入後看到的 WordPress 頂部管理工具列全部排開需要 1047px，超過實際螢幕寬度，會讓瀏覽器先縮小整頁去容納工具列、重新計算後再放大，造成進入文章頁面時看起來像先縮小再放大的閃動(只有登入者自己看得到，訪客不受影響)。隱藏最占寬度、最非必要的推廣項目(Velisto AI 候追名單廣告)，讓工具列縮回螢幕實際寬度以內，避免這個縮放過程。 */
@media screen and (min-width: 783px) and (max-width: 1100px) {
	#wpadminbar #wp-admin-bar-houzez-velisto {
		display: none !important;
	}
}


/* cgh-dashboard-details-spacing ：「刷登物件」頁面「詳細資訊」區塊裡，台灣自訂欄位(廡間、陽台、樓層等)缺少 Houzez 標準欄位都有的 .mb-3 class，導致欄位下方間距不一致(標準欄位有 1rem 間距，自訂欄位沒有)。直接給整個詳細資訊區塊裡的 .form-group 統一補上同樣間距，不需要逐個欄位改 PHP。 */
#details .block-content-wrap .form-group {
	margin-bottom: 1rem;
}


/* cgh-submit-form-details-3col ：刷登物件表單「詳細資訊」、「地址資訊」兩個區塊原本是電腦寬度下每列 2 欄（col-md-6），改成每列 3 欄，欄位不需要那麼寬，表單不用拉得那麼長。還原畫面上手機/平板寬度(col-sm-12)仍然單欄堆疊，不受影響。 */
@media (min-width: 768px) {
	#details .block-content-wrap > .row > .col-md-6,
	#location .block-content-block > .row > .col-md-6:not(.submit-property-map-area):not(.submit-lat-long) {
		flex: 0 0 33.3333% !important;
		max-width: 33.3333% !important;
	}
}

/* 房、衛浴、總坪數、土地坪數這四個欄位下方「僅限數字」提示文字不需要，直接藏起來(不碰選項本身，避免影響其他可能共用同一設定値的地方)。 */
#property_bedrooms + small.form-text,
#property_bathrooms + small.form-text,
#property_size + small.form-text,
#property_land + small.form-text {
	display: none;
}


/* cgh-details-label-spacing ：自訂台灣欄位(廡間、陽台、電梁等)的 <label> 沒有套用 Bootstrap 的 .form-label class(margin-bottom:.5rem)，標籤跟輸入框間距比系統欄位窄，導致同一列裡自訂欄位看起來偵上。直接給詳細資訊區塊裡所有標籤補上同樣間距，不管有沒有 form-label class。 */
#details .block-content-wrap .form-group > label {
	margin-bottom: 0.5rem;
}


/* cgh-details-select-valign ：「詳細資訊」區塊裡，同一列混合文字輸入框(input.form-control)跟下拉選單(bootstrap-select 產生的按鈕)時，按鈕自帶的 padding/line-height 跟普通輸入框有幾像素落差，造成選單看起來比輸入框稍微偏下。微調按鈕位置修正。 */
#details .bootstrap-select > .dropdown-toggle {
	margin-top: -3px;
}


/* 「買房」半地圖搜尋頁面(properties/)的物件列表卡片：Houzez 在 DOM 裡存了兩份 .labels-wrap（新上架/獨家那組），
   一份在 .item-header 裡(叠圖版)、一份在 .item-body 裡(標題上方一般排版)，原本靠 Bootstrap 的
   d-block/d-lg-none 與 d-md-none/d-lg-block 依裝置寬度切換。手機實測發現實際上手機寬度(<768px)兩組 class
   都不會生效，導致兩份同時顯示（重複）；平板寬度只顯示叠圖版。現在改成不管裝置，統一只用
   .item-body 那份(標題上方、不疊圖)，與電腦版一致。精選標籤(.label-featured)不在這次調整範圍內，
   保持原本直接疊圖的樣子。 */
.half-map-wrap .item-header .labels-wrap{
  display:none !important;
}
/* ⚠ 2026-09-21：本來寫 display:block，但那會讓裡面的 <a class="hz-label"> 退回 display:inline。
   inline 元素畫出來的背景高度是用「字型的內容區」算的，不是 line-height，
   所以獨家標籤比精選標籤高了約 4px（實測手機上 32.8px vs 29.0px）。
   改成 flex——跟 Houzez 其他地方的 .labels-wrap 一樣——標籤才會被當區塊排版，兩邊同高。 */
/* ⚠ 2026-09-21：本來寫 display:block，但那會讓裡面的 <a class="hz-label"> 退回 display:inline。
   inline 元素畫出來的背景高度是用「字型的內容區」算的，不是 line-height，
   所以獨家標籤比精選標籤高了約 4px（實測手機上 32.8px vs 29.0px）。
   改成 flex——跟 Houzez 其他地方的 .labels-wrap 一樣——標籤才會被當區塊排版，兩邊同高。

   2026-09-21 後續（使用者選 A）：精選標籤已在子主題版型
   template-parts/listing/item-list-v1.php 裡搬進這個 .labels-wrap，跟獨家並排。
   下面三件是為了三種螢幕寬度都不會出事：
   - flex-wrap:wrap + row-gap：標籤多到一排放不下時換行，不會擠出卡片（手機最窄、最容易發生）
   - margin-right:0：Houzez 每個標籤都帶 .me-1，跟 gap 疊起來會變成兩倍間距
   - position:static：保險，避免主題任何「精選釘在角落」的規則跟著搬進來 */
.half-map-wrap .item-body .labels-wrap{
  display:flex !important;
  align-items:center;
  flex-wrap:wrap;
  gap:4px;
}
.half-map-wrap .item-body .labels-wrap > .label{
  margin-right:0 !important;
  position:static !important;
  top:auto; left:auto; right:auto; bottom:auto;
}


/* ===== BRAND-BTN-START (2026-08-11) 全站按鈕 =====
   使用者指定：hover 只放大，底色維持平時的填滿色（包含 LINE 按鈕）。
   主要按鈕底色 #0F5257；物件內頁那顆的原色在資料庫內嵌 CSS 裡改不到，只能覆蓋。
   舊規則帶著 translateY 與磚橘色 box-shadow，這裡一併歸零。 */

/* 主要按鈕平時 */
.property-form-wrap .houzez_agent_property_form.btn-secondary,
.btn.btn-secondary {
  background-color: #0F5257 !important;
  border-color: #0F5257 !important;
  color: #FFFFFF !important;
}

/* hover：只變色，底色轉成近黑墨綠 #04262A */
.property-form-wrap .houzez_agent_property_form.btn-secondary:hover,
.btn.btn-secondary:hover {
  background-color: #04262A !important;
  border-color: #04262A !important;
  color: #FFFFFF !important;
}

/* 放大效果：全站按鈕共用，含 LINE */
.btn, .elementor-button, .houzez-submit-button, .btn-search, .reset-search-btn, .hz-btn-line {
  transition: transform 0.18s ease !important;
}
.btn:hover, .elementor-button:hover, .houzez-submit-button:hover, .btn-search:hover, .reset-search-btn:hover, .hz-btn-line:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* ===== BRAND-BTN-END ===== */

/* ===== BRAND-RADIUS-START (2026-08-11) 圓角統一 =====
   原本全站有 2/3/4/6/8/10/16/20/9999px 九種。收成：
   按鈕、表單欄位、標籤 = 6px；卡片、區塊容器 = 10px。
   保留：鄰近機能的藥丸型頁籤（它是刻意的形狀語言）、圓形頭像與圖示（50% / 9999px）。 */

/* 按鈕、表單欄位、標籤 = 6px */
.btn, .elementor-button, .houzez-submit-button, .btn-search, .reset-search-btn,
.btn-primary-outlined, .btn-secondary, .btn-secondary-outlined,
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="search"], input[type="password"], select, textarea, .form-control,
.bootstrap-select .dropdown-toggle, .label-status, .label-featured, [class*="label-"] {
  border-radius: 6px !important;
}

/* 卡片、區塊容器 = 10px */
.item-wrap-v5, .item-listing-wrap, .property-form-wrap, .agent-wrap,
.blog-post-wrap, .post-item-wrap, .property-detail-wrap, .widget-wrap {
  border-radius: 10px !important;
}

/* 例外：藥丸型頁籤與圓形元件不受上面規則影響 */
#nearby-amenities-wrap .nearby-amenities-tab { border-radius: 20px !important; }
.avatar, .rounded-circle, [class*="avatar"] img { border-radius: 50% !important; }
/* ===== BRAND-RADIUS-END ===== */

/* ===== BRAND-EMPTYFOOTER-START (2026-08-11) 藏掉空的卡片底列 =====
   物件卡片的 .item-footer 本來要放房仲頭像與聯絡按鈕，
   但目前設定下它只包一個空的 <div class="ms-auto">，
   結果畫面上只看得到它的 border-top（#DCE0E0），變成一條孤兒線。
   ⚑ 日後若開啟卡片上的房仲資訊，要把這段拿掉。 */
.item-listing-wrap .item-footer:not(:has(img)):not(:has(a)):not(:has(button)) {
  display: none !important;
}
/* 舊瀏覽器不支援 :has() 時的退路：至少拿掉那條線 */
@supports not selector(:has(*)) {
  .item-listing-wrap .item-footer { border-top: 0 !important; }
}
/* ===== BRAND-EMPTYFOOTER-END ===== */

/* ===== BRAND-SECBTN-START (2026-08-11) 次要按鈕統一 =====
   次要按鈕 = 白底 + 深青綠框 + 深青綠字，6px。hover 只放大（見 BRAND-BTN 區塊）。
   修掉：物件內頁電話圖示按鈕原本是亮黃框 #F0C808，在白底上只有 1.62:1，幾乎看不見。
   LINE 按鈕靠 .hz-btn-line 排除；鄰近機能頁籤維持 20px 藥丸。 */
.btn.btn-secondary-outlined:not(.hz-btn-line),
.btn.btn-primary-outlined,
.reset-search-btn {
  background-color: #FFFFFF !important;
  border: 2px solid #0F5257 !important;
  color: #0F5257 !important;
  border-radius: 6px !important;
}
.btn.btn-secondary-outlined:not(.hz-btn-line) i,
.btn.btn-primary-outlined i,
.reset-search-btn i {
  color: #0F5257 !important;
}
/* 主要按鈕圓角也收成 6px（搜尋鈕原本 8px） */
.btn-search { border-radius: 6px !important; }
/* ===== BRAND-SECBTN-END ===== */

/* ===== BRAND-LINEFILL-START (2026-08-11) LINE 實心 ＋ 卡片底列兩顆圖示按鈕 =====
   使用者指定：LINE 一律實心（不是空心），hover 只放大不變色。
   右下角信封與電話是一對地位相等的按鈕，兩顆都實心，不要一實一空。
   ⚑ 這段必須排在 BRAND-SECBTN 之後，否則會被次要按鈕規則蓋過去。 */

/* LINE：全站實心綠 */
.hz-btn-line, a.houzez-submit-button[href*="lin.ee"] {
  background-color: #06C755 !important;
  border: 2px solid #06C755 !important;
  color: #FFFFFF !important;
}
.hz-btn-line i, a.houzez-submit-button[href*="lin.ee"] i { color: #FFFFFF !important; }

/* 卡片底列：信封與電話兩顆都實心深青綠 */
.mobile-property-contact .btn.btn-secondary-outlined:not(.hz-btn-line) {
  background-color: #0F5257 !important;
  border: 2px solid #0F5257 !important;
  color: #FFFFFF !important;
}
.mobile-property-contact .btn.btn-secondary-outlined:not(.hz-btn-line) i { color: #FFFFFF !important; }
/* ===== BRAND-LINEFILL-END ===== */

/* ===== BRAND-HOVERCOLOR-START (2026-08-12) hover 只變色 =====
   取代舊的 BRAND-SCALE2（hover 放大 1.04）與 BRAND-BTNWIDTH（滿版按鈕收窄 24px）。
   放大拿掉的原因：scale() 連寬度一起放大，需要的左右空間跟寬度成正比（每邊 2%）。
   全站滿版按鈕左右餘裕都是 0，/properties/ 搜尋鈕寬 1346px 每邊要 27px，不可能有。
   收窄按鈕來騰空間則會跟上方搜尋欄位對不齊（舊 BRAND-BTNWIDTH 已造成 12px 偏移）。
   使用者決定：hover 一律改成變色，不放大、不位移、不加陰影。 */

/* 只過渡顏色，並把舊規則殘留的 transform / box-shadow 歸零 */
.btn, .elementor-button, .houzez-submit-button, .btn-search, .reset-search-btn, .hz-btn-line {
  transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease !important;
}
.btn:hover, .elementor-button:hover, .houzez-submit-button:hover,
.btn-search:hover, .reset-search-btn:hover, .hz-btn-line:hover {
  transform: none !important;
  box-shadow: none !important;
}

/* 主要按鈕（實心深青綠）hover → 近黑墨綠 #04262A（白字 15:1）。全站 hover 一律往深走。 */
.btn.btn-secondary:hover,
.btn-search:hover,
.houzez-submit-button:hover {
  background-color: #04262A !important;
  border-color: #04262A !important;
  color: #FFFFFF !important;
}

/* 次要按鈕（白底深青綠框）hover → 填滿深青綠、字轉白 */
.btn.btn-secondary-outlined:not(.hz-btn-line):hover,
.btn.btn-primary-outlined:hover,
.reset-search-btn:hover {
  background-color: #0F5257 !important;
  border-color: #0F5257 !important;
  color: #FFFFFF !important;
}
.btn.btn-secondary-outlined:not(.hz-btn-line):hover i,
.btn.btn-primary-outlined:hover i,
.reset-search-btn:hover i {
  color: #FFFFFF !important;
}

/* 卡片底列信封與電話（實心）—— 要排在次要按鈕之後才不會被蓋過去 */
.mobile-property-contact .btn.btn-secondary-outlined:not(.hz-btn-line):hover {
  background-color: #04262A !important;
  border-color: #04262A !important;
  color: #FFFFFF !important;
}
.mobile-property-contact .btn.btn-secondary-outlined:not(.hz-btn-line):hover i {
  color: #FFFFFF !important;
}

/* LINE：平時維持官方綠 #06C755，hover 才轉深一階 #05A948 */
.hz-btn-line:hover,
a.houzez-submit-button[href*="lin.ee"]:hover {
  background-color: #05A948 !important;
  border-color: #05A948 !important;
  color: #FFFFFF !important;
}
.hz-btn-line:hover i,
a.houzez-submit-button[href*="lin.ee"]:hover i {
  color: #FFFFFF !important;
}
/* ===== BRAND-HOVERCOLOR-END ===== */


/* ===== BRAND-DASHBOARD start ===== 2026-08-13 前台控制台配色
   Houzez 把 .btn-primary 的 hover 採用 body_text_color(#0B3142)，
   跟 brand-colors.md 定的主要按鈕 hover(#04262A) 不同，在這裡校正。
   hover 一律只變色：不放大、不位移、不加陰影。 */
.btn-primary:hover,
.btn-primary:active,
.btn-primary:not(:disabled):not(:disabled):active,
.fc-button-primary:hover,
.fc-button-primary:active {
  background-color: #04262A !important;
  border-color: #04262A !important;
  color: #ffffff !important;
  transform: none !important;
  box-shadow: none !important;
}
.btn-primary,
.fc-button-primary {
  transition: background-color .18s ease, border-color .18s ease, color .18s ease !important;
}
/* ===== BRAND-DASHBOARD end ===== */

/* ===== BRAND-DESCIMG start ===== 2026-08-13
   物件描述現在可以插圖（例如實價登錄佐證截圖）。
   Houzez 沒有給描述裡的圖片任何寬度限制，原圖比容器寬時手機版會撐破版面。 */
.property-description-wrap .description-content img,
.property-description-wrap .houzez-more-content img {
  max-width: 100%;
  height: auto;
  border-radius: 10px;
}
.property-description-wrap .description-content figure {
  max-width: 100% !important;
  margin: 16px 0;
}
.property-description-wrap .description-content figcaption {
  font-size: 15px;
  color: #6B6B6B;
  margin-top: 6px;
}
/* ===== BRAND-DESCIMG end ===== */

/* ===== BLOGTYPO 2026-08-16 =====
   部落格文章頁：一種字體、章節靠字級與粗細分層、不套主題色。
   使用者 2026-08-16 指定。只限文章內頁（.single-article-wrap），不影響其他頁面。
   要還原把這一整塊刪掉就好。 */
.single-article-wrap .post-title-wrap h1,
.single-article-wrap .post-content-wrap h1,
.single-article-wrap .post-content-wrap h2,
.single-article-wrap .post-content-wrap h3,
.single-article-wrap .post-content-wrap h4 {
	font-family: "Noto Sans TC", sans-serif;
	color: #222222;
}

.single-article-wrap .post-content-wrap,
.single-article-wrap .post-content-wrap p,
.single-article-wrap .post-content-wrap li {
	color: #222222;
}

.single-article-wrap .post-title-wrap h1 {
	font-size: 30px;
	font-weight: 700;
}

.single-article-wrap .post-content-wrap h2 {
	font-size: 23px;
	font-weight: 700;
	margin-top: 2.2em;
	margin-bottom: 0.7em;
}

.single-article-wrap .post-content-wrap h3 {
	font-size: 19px;
	font-weight: 700;
	margin-top: 1.8em;
	margin-bottom: 0.6em;
}
/* ===== BLOGTYPO end ===== */

/* ===== BLOGLIST 2026-08-16 =====
   部落格列表頁（/blog/）。使用者 2026-08-16 指定：
   1. 拿掉左上角「部落格」這個頁面標題
   2. 卡片標題跟文章頁一致：一種字體、中性黑，不用主題色
   3. 分類維持主題深青綠（他說可以）
   4. 「繼續閱讀」改用全站連結色 #07A0C3，hover 往深走
   只限 Blog Grid 樣板頁（body[class*="page-template-blog-"]）。要還原把這塊刪掉。 */
body[class*="page-template-blog-"] .page-title-wrap {
	display: none;
}

/* 標題拿掉後卡片會貼著頁首，把那塊留白補回來 */
body[class*="page-template-blog-"] .blog-wrap {
	padding-top: 40px;
}

body[class*="page-template-blog-"] .blog-post-title h3,
body[class*="page-template-blog-"] .blog-post-title h3 a {
	font-family: "Noto Sans TC", sans-serif;
	color: #222222;
}

body[class*="page-template-blog-"] .blog-post-link a {
	color: #07A0C3;
}

body[class*="page-template-blog-"] .blog-post-link a:hover {
	color: #0F5257;
}
/* ===== BLOGLIST end ===== */

/* ===== BLOGHOVER 2026-08-16 =====
   主題預設是反的：`.hover-effect:before` 平常蓋一層黑色漸層（底部 75%），
   滑鼠移過去才淡出。精選圖的標題底板就在下半部，因此平常看起來是灰的。

   使用者 2026-08-16 定案：**避罩全拿掉**，改成滑鼠停留時卡片浮起加陰影。

   ⚠ 站上那條「hover 一律只變色、不放大」是**針對按鈕**的，原因是滿版按鈕左右餘裕為 0。
   卡片四周本來就有間距，浮起不會撞到東西，所以這裡不衝突。
   只限部落格文章卡片，物件卡片沒動。要還原把這塊刪掉。 */
body[class*="page-template-blog-"] .blog-post-thumb .hover-effect:before,
body[class*="page-template-blog-"] .blog-post-thumb .hover-effect:hover:before {
	opacity: 0;
	background-image: none;
}

body[class*="page-template-blog-"] .blog-post-item {
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

/* 只在真的有滑鼠的裝置生效。手機沒有 hover，而且部分手機瀏覽器會在點擊後把 hover 狀態黏著不放。 */
@media (any-hover: hover) {
	body[class*="page-template-blog-"] .blog-post-item:hover {
		transform: translateY(-6px);
		box-shadow: 0 12px 24px rgba(11, 49, 66, 0.16);
	}
}
/* ===== BLOGHOVER end ===== */

/* ===== SIDEBARTYPO 2026-08-16 =====
   部落格側邊欄的小工具標題跟文章與卡片統一：一種字體、中性黑。
   順便修掉側邊欄自己內部的不一致：「近期文章」是區塊小工具的 h2（32px），
   另外兩個是主題的 .widget-title（18px），兩者差很多。全部統一成 18px。
   連結維持主題深青綠 #0F5257，跟卡片上的分類一致（使用者說分類可以用主題色）。
   要還原把這塊刪掉。 */
body[class*="page-template-blog-"] .bt-sidebar-wrap h2,
body[class*="page-template-blog-"] .bt-sidebar-wrap h3,
body[class*="page-template-blog-"] .bt-sidebar-wrap .widget-title,
body.single-post .bt-sidebar-wrap h2,
body.single-post .bt-sidebar-wrap h3,
body.single-post .bt-sidebar-wrap .widget-title {
	font-family: "Noto Sans TC", sans-serif;
	color: #222222;
	font-size: 18px;
	font-weight: 700;
}
/* ===== SIDEBARTYPO end ===== */
/* ===== SIDEBARLINK 2026-08-16 =====
   使用者指出側邊欄連結用錯顏色。配色表定義的**全站連結色是 #07A0C3**，
   #0F5257 是主色與結構用的。我原本拿「跟卡片分類一致」當理由，但那條只適用分類。

   判準：**按角色分，不按位置分**——連結用連結色，分類標籤用主題色（不管它在卡片還是側邊欄）。 */
body[class*="page-template-blog-"] .bt-sidebar-wrap a,
body.single-post .bt-sidebar-wrap a {
	color: #07A0C3;
}

body[class*="page-template-blog-"] .bt-sidebar-wrap .widget_categories a,
body.single-post .bt-sidebar-wrap .widget_categories a {
	color: #0F5257;
}
/* ===== SIDEBARLINK end ===== */

/* ===== MOBILEMENUICON 2026-08-16 =====
   手機與平板的漢堡選單改白色。使用者 2026-08-16 指定。
   原本是深灰 #33373D，頁首底是深青綠 #0F5257，深對深看不清楚。
   按鈕本體是 Elementor 頁首裡的元件，此處只用 CSS 指定顏色，
   沒有去改 Elementor 的設定檔（那份改壞的代價大得多，這裡隨時可以刪掉還原）。 */
.houzez-menu-toggle-button,
.houzez-menu-toggle-button i,
.houzez-menu-toggle-button .houzez-icon,
.nav-mobile .houzez-menu-toggle-button i {
	color: #FFFFFF;
}
/* ===== MOBILEMENUICON end ===== */


/* /properties/ (44345) 的列表卡片：價格與標題重疊（2026-09-01）
   .item-price-wrap 在主題裡是全域 position:absolute，桌機版那一份被放在卡片右上角；
   而 .item-title 帶著 Bootstrap 的 col-12（width:100%）＋ text-truncate，
   兩者必然疊在一起——標題愈長疊得愈明顯。
   價格是 32px/900 的紅字，「2,098萬」約 115px 寬，留 180px 有餘裕。
   只在 >=992px 處理：小於這個寬度時 .item-body 那份價格是 d-none，本來就不會疊。 */
@media (min-width: 992px) {
  body.page-id-44345 .item-listing-wrap .item-body .item-title,
  body.page-id-44345 .item-listing-wrap .item-body .item-address,
  .half-map-wrap .item-listing-wrap .item-body .item-title,
  .half-map-wrap .item-listing-wrap .item-body .item-address {
    max-width: calc(100% - 180px);
  }
  /* 價格本身不要換行，寧可讓它超出留白也不要斷成兩行 */
  body.page-id-44345 .item-listing-wrap .item-body .houzez-child-total-price,
  .half-map-wrap .item-listing-wrap .item-body .houzez-child-total-price {
    white-space: nowrap;
  }
}

/* 分類頁側邊欄：正在篩的那一項要看得出來，並且知道可以點掉（2026-09-01） */
.widget-taxonomy-item.cgh-tax-active > .widget-taxonomy-item-content > a{ font-weight:700; color:#0B3142; }
.widget-taxonomy-item.cgh-tax-active > .widget-taxonomy-item-content{ background:#F4F7F8; border-radius:6px; padding:2px 8px; }
.cgh-tax-clear{ display:inline-block; margin-left:6px; font-size:12px; line-height:1; color:#e03131; }

/* 看房去地圖的叢集圖標（2026-09-01）
   Houzez 的 cluster 是一個 48x48 的 div，houzez-google-maps.js:1041 把它的背景圖
   設成主題選項 map_cluster，而預設值是官方示範站的
   http://demo06.houzez.co/wp-content/themes/houzez/images/map/cluster-icon.png
   —— 那個網址 http/https 都 404，而且是 http，在 https 頁面還會被當成混合內容擋掉。
   結果是「白色粗體數字 + 完全透明背景」= 隱形。主題本身也沒有這個 class 的任何樣式，
   所以直接用 CSS 畫，不依賴外部圖檔（就不會再因為別人的站台挂掉而消失）。
   ⚠ background-image 寫在 inline style 上，要 !important 才蓋得掉。 */
.houzez-cluster-marker{
  /* 使用者 2026-09-01 選 B：用主題自帶的 cluster-icon.png（#00AEEF，跟圖釘同色）。
     這裡只留同色底色當保險——圖檔若再次載不到，至少還看得到泡泡與數字，
     不會重蹈 2026-09-01 那次「整張地圖空白」。⚙ 不能加 background-image:none，那會蓋掉圖。 */
  background-color:#00AEEF;
  border:3px solid #ffffff;
  border-radius:50%;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
  font-family:"Noto Sans TC", sans-serif;
  font-size:16px;
  line-height:1;
}

/* ===== STACKGAP 2026-09-01 =====
   平板直立（＜992px）時，主內容與側邊欄改成上下堆疊，兩塊會黏在一起。
   原因：主題把 margin-bottom 寫在 @media (min-width: 992px) 裡：
     .bt-content-wrap { width:70%; … margin-bottom:30px; }
   横向兩欄的時候才有下邊距，真正需要間距的堆疊狀態反而沒有。
   這裡補回來，數值跟主題桌機版一致（30px）。 */
@media (max-width: 991.98px) {
  .bt-content-wrap { margin-bottom: 30px; }
}
/* ===== STACKGAP end ===== */

/* ===== DASHTABLECARD 2026-09-01 =====
   控制台「管理已刊登物件」在手機與平板直立（<992px）時，表格會堆疊成
   【欄位名稱 | 值】的形式（主題 css/dashboard/responsive.css）。
   主題其實有給 tr 一個 margin-bottom:20px，但白底配白底、沒有任何邊界，
   一筆物件從哪裡開始到哪裡結束看不出來——使用者：「沒有一個間隔，有點亂」。
   這裡把每一筆做成一張有邊框的卡片。scope 在 .houzez-data-table，不影響其他表格。 */
@media (max-width: 991.98px) {
  .houzez-data-table .table-responsive .table tbody tr {
    margin-bottom: 24px;
    border: 1px solid #DCE0E0;
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.06);
  }
  .houzez-data-table .table-responsive .table tbody tr td:last-of-type {
    border-bottom: none;
  }
}
/* ===== DASHTABLECARD end ===== */



/* ===== EXCLUSIVEGAP 2026-09-27 =====
   獨家物件副標題與卡片之間保留 40px。關閉置底箭頭後，空的按鈕容器
   仍會參與 flex 排列；這條間距經本輪畫面驗證仍需保留。
   若將來移除按鈕容器，須重測卡片位置再決定是否撤除。 */
.elementor-194 .cgh-home-exclusive-carousel .property-carousel-module{ padding-top:40px; }
/* ===== EXCLUSIVEGAP end ===== */

/* ===== MOBILEOVERVIEW 2026-09-01 =====
   手機版物件頁補上的總覽區塊（樣板在子主題 property-details/mobile-view.php）。
   桌機版是五項一列，手機寬度塞不下，改成一列三項、自動換行（三＋二）。
   字級也要降：桌機的值是 32px，手機三分之一寬度放不下「透天別墅」這種四字。 */
@media (max-width: 767.98px) {
  .property-overview-data-mobile{ flex-wrap:wrap; row-gap:16px; }
  .property-overview-data-mobile > ul{ flex:0 0 33.333%; max-width:33.333%; }
  .property-overview-data-mobile li > strong{ font-size:22px; }
  .property-overview-data-mobile .hz-meta-label{ font-size:13px; }
  /* 物件類型是文字不是數字，再小一級才不會換行 */
  .property-overview-data-mobile ul:has(> .property-overview-type) li > strong{ font-size:18px; }
  .cgh-mobile-overview{ padding-top:18px; padding-bottom:18px; }
}
/* ===== MOBILEOVERVIEW end ===== */

/* ===== INLINETOOLS 2026-09-02 =====
   手機版物件頁：分享／收藏已收進標題區「獨家」標籤同一列。
   外層保留 .mobile-property-tools 是因為圖示的尺寸／邊框／顏色都靠它，
   但原本 48px 在標籤旁邊太大，這裡縮成 40px。 */
@media (max-width: 767.98px) {
  .mobile-property-title .cgh-inline-tools{ padding:0 !important; flex:0 0 auto; }
  .mobile-property-title .cgh-inline-tools .item-tool > span{
    height:40px; width:40px; line-height:40px; font-size:15px;
  }
}
/* ===== INLINETOOLS end ===== */

/* ===== HOMEGUTTERS 2026-09-02 =====
   首頁「獨家物件」與「精選物件」在手機左右留白過多（使用者 2026-09-02）。
   兩區結構完全對稱，而且留白是三層疊出來的：
     獨家  a7919a0 容器 16px ＋ 欄 8fe769b 10px ＋ 內層欄 0f1fe5e 30px = 每側 56px
     精選            欄 57962b7 10px ＋ 內層欄 5d8daa6 30px = 每側 40px
   🔴 那 30px 來自內層 section 的【欄距 = wider】，不是任何人手動設的 padding。
   手機改成：內層與容器都歸零，**只由外層欄負責 14px**，一個來源好調。
   ⚙ 桌機與平板不動。
   2026-09-24：精選（57962b7、5d8daa6）的手機留白已改由 Elementor 欄位面板管，這段只剩獨家。 */
@media (max-width: 767.98px) {
  .elementor-194 .cgh-home-exclusive-inner > .elementor-widget-wrap.elementor-element-populated{ padding-left:0 !important; padding-right:0 !important; }
  .elementor-194 .cgh-home-exclusive-column > .elementor-widget-wrap.elementor-element-populated{ padding-left:14px !important; padding-right:14px !important; }
  .elementor-194.elementor-194 .cgh-home-exclusive-section.cgh-home-exclusive-section > .elementor-container{
    padding-left:0 !important; padding-right:0 !important; }
}
/* ===== HOMEGUTTERS end ===== */

/* ===== HOMEFLUID 2026-09-02 =====
   使用者：「要確定在不同手機長寬比下，減少兩側留白但會等比例縮放」。
   前一版的左右留白是固定 14px——在 320px 手機占 4.4%、430px 只占 3.3%，
   而且卡片字級固定，小螢幕的兩欄卡片會擠。
   改成 clamp()：留白與字級都隨 vw 縮放，上下界防止極端尺寸跑掉。
   實際數字（每側留白 / 精選卡片寬 / 卡片標題）：
     320px → 11.2 / 143 / 13.0     360px → 12.6 / 161 / 13.0
     393px → 13.8 / 177 / 14.1     430px → 15.1 / 194 / 15.5
   標題每行字數四種寬度都落在 11–12.5 字，這才是「等比例」。
   2026-09-24：精選（57962b7、74b4576 字級與內距）已移出——欄位留白改由 Elementor 欄位面板、
   字級改由 FEATURED-CARDS 那段管，這段只剩獨家。 */
@media (max-width: 767.98px) {
  /* 一、兩區的左右留白：內層歸零，只由外層欄負責，隨螢幕縮放 */
  .elementor-194 .cgh-home-exclusive-column > .elementor-widget-wrap.elementor-element-populated{
    padding-left:clamp(10px, 3.5vw, 18px) !important;
    padding-right:clamp(10px, 3.5vw, 18px) !important;
  }
  /* 二、獨家大卡片疊在圖上的文字 */
  .elementor-194 .cgh-home-exclusive-carousel .item-title, .elementor-194 .cgh-home-exclusive-carousel .item-title a{ font-size:clamp(18px, 5.6vw, 24px) !important; }
  .elementor-194 .cgh-home-exclusive-carousel .item-v5-price{ font-size:clamp(18px, 5.6vw, 24px) !important; }
  .elementor-194 .cgh-home-exclusive-carousel .item-v5-type,
  .elementor-194 .cgh-home-exclusive-carousel .item-amenities, .elementor-194 .cgh-home-exclusive-carousel .item-amenities li, .elementor-194 .cgh-home-exclusive-carousel .item-amenities span{ font-size:clamp(12px, 3.4vw, 14px) !important; }
}
/* ===== HOMEFLUID end ===== */

/* ===== EXCLUSIVESCRIM 2026-09-02 =====
   首頁「獨家物件」大卡片：白字疊在亮底照片（鐵皮車棚、天空）上看不清楚。
   原本的漸層是 0.85 → 0.55(45%) → 0(90%)，中段太淡。
   這裡加深並多一個中間停點，讓亮度下降得平滑一點。
   ⚙ 另加 text-shadow 當第二道防線——遇到極亮的照片光靠遮罩不夠，
     而且陰影只影響字、不會把整張照片鞄黑。
   🔴 價格原本是 #A8432B（深磚紅），**遮罩加深之後它會更難讀**，
     因為它不是白色。改成專案已有的珊瑚橘 #E07A5F（物件詳情頁總覽區同一個），
     對深底對比約 4.9:1。不想改回來把這一行刪掉就好。 */
.elementor-194 .cgh-home-exclusive-carousel .item-body{
  /* 【定案 2026-09-02】使用者比對過兩版，選「原本的遮罩 ＋ 文字陰影」。
     判斷：陰影已經把可讀性解決了，再加深遮罩只是把照片壓暗，
     而照片本來就是這張卡片的主體。下次遇到看不清的照片，
     **先加強陰影、不要先加深遮罩**。
     若真的需要加深版，把下面換成：0.92 0% / 0.82 35% / 0.60 62% / 0.28 85% / 0 100% */
  background:linear-gradient(to top,
    rgba(0,0,0,0.85) 0%,
    rgba(0,0,0,0.55) 45%,
    rgba(0,0,0,0) 90%) !important;
}
.elementor-194 .cgh-home-exclusive-carousel .item-title, .elementor-194 .cgh-home-exclusive-carousel .item-title a,
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price,
.elementor-194 .cgh-home-exclusive-carousel .item-v5-type,
.elementor-194 .cgh-home-exclusive-carousel .item-amenities, .elementor-194 .cgh-home-exclusive-carousel .item-amenities li, .elementor-194 .cgh-home-exclusive-carousel .item-amenities span{
  text-shadow:0 1px 3px rgba(0,0,0,.75), 0 0 12px rgba(0,0,0,.5);
}
.elementor-194 .cgh-home-exclusive-carousel .item-v5-price{ color:#E07A5F !important; }
/* ===== EXCLUSIVESCRIM end ===== */

/* ===== TAXCARDSHADOW 2026-09-02 =====
   首頁兩張分類卡片（鄉鎮 b6471ea、類型 7e1fb50）加文字陰影。
   2026-09-27：改用 CSS 類別 cgh-home-tax-grid 定位，不綁頁面與元件編號。
   使用者 2026-09-02：獨家卡片加了陰影很清晰，這兩張也要。
   🔴 這兩張跟獨家不同：**它們完全沒有遮罩**。
     主題只給 .taxonomy-text-wrap { color:#fff } 並置中疊在照片上，
     所以陰影在這裡是唯一的可讀性保障，比獨家那邊更關鍵。
   ⚙ 數值跟 EXCLUSIVESCRIM 一致，兩區才會看起來是同一套。 */
.cgh-home-tax-grid .taxonomy-title, .cgh-home-tax-grid .taxonomy-subtitle{
  text-shadow:0 1px 3px rgba(0,0,0,.75), 0 0 12px rgba(0,0,0,.5);
}
/* ===== TAXCARDSHADOW end ===== */


/* ===== LVRNAV —— 主選單加入「實價登錄」後變六項（2026-09-07）=====
   Elementor 選單容器實量只有 560px，六項加原本 15px 左右內距合計 560.25px，
   溢出 0.25px 就讓每一項的文字被擠到換行（看房\n去、實價登\n錄）。
   縮到 9px 並禁止換行，合計降到約 488px，留下餘裕。
   ⚠ 日後若再加第七項，這裡要重新算。 */
.houzez-elementor-menu > li > .nav-link{padding-left:9px !important;padding-right:9px !important;white-space:nowrap !important}

/* ===== FORMSELECTARROW 2026-09-26 =====
   Houzez 表單元件（詢問表單、聯絡表單）的下拉選單箭頭。
   原本是用 Elementor 的圖示字型畫箭頭，但那個字型只有頁面上剛好有別的 Elementor 元件需要時才會載入——
   「關於我」頁沒有，所以箭頭變成一個打叉的方框（使用者 2026-09-26 手機截圖）。
   另外 Houzez 把「欄位邊框」的設定也套到箭頭上，箭頭外面多一圈框（舊賣房頁以前修過同一件事）。
   改成直接畫一個 SVG 箭頭，不依賴字型；用元件種類定位，不綁頁面或元素編號。 */
.elementor-widget-houzez_elementor_inquiry_form .elementor-select-wrapper::before,
.elementor-widget-houzez_elementor_contact_form .elementor-select-wrapper::before{
  content:"" !important;
  border:none !important;
  width:12px !important; height:12px !important;
  top:50% !important; right:14px !important; transform:translateY(-50%) !important;
  font-size:0 !important; line-height:0 !important; text-shadow:none !important;
  background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%2354616A'%20stroke-width='2.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Cpath%20d='M5%209l7%207%207-7'/%3E%3C/svg%3E") no-repeat center / 12px 12px !important;
}
/* ===== FORMSELECTARROW end ===== */

/* ===== SOLD-CAROUSEL 2026-09-27（首頁重整第三輪） =====
   首頁「成交實績」圖片輪播。掛法：Elementor → 圖片輪播元件 → 進階 → CSS 類別填 cgh-home-sold-carousel。
   立體效果、提早載圖、海報尺寸在 mu-plugins/choosegoodhome-home-sold-carousel.php。
   ⚙ 輪播在程式重建成立體之前是透明的（opacity:0），重建完加上 cgh-carousel-ready 才出現——
     訪客不會先看到 Elementor 原本「一張大圖」的樣子再跳成立體。
   ⚙ 這個輪播沒有左右鈕（Elementor 設定「導覽：無」），舊版留著的按鈕樣式已刪。 */
.cgh-home-sold-carousel .elementor-image-carousel-wrapper{
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding:0 50px !important;
  overflow:hidden !important;
  opacity:0;
}
.cgh-home-sold-carousel .elementor-image-carousel-wrapper.cgh-carousel-ready{ opacity:1; transition:opacity .3s ease; }
.cgh-home-sold-carousel .swiper-slide-inner{
  width:100% !important;
  aspect-ratio:1400/1980;
  height:auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:16px !important;
  overflow:hidden !important;
}
.cgh-home-sold-carousel .swiper-slide-image{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
@media (max-width:1024px) and (min-width:768px){
  .cgh-home-sold-carousel .elementor-image-carousel-wrapper{ max-width:760px !important; padding:0 44px !important; }
}
@media (max-width:767px){
  .cgh-home-sold-carousel .elementor-image-carousel-wrapper{ max-width:100% !important; padding:0 14px !important; }
}
/* ===== SOLD-CAROUSEL end ===== */


/* ===== LISTING-PRICE-COLOR 2026-09-30 =====
   只限看房去頁（page-id-44345），其他頁與物件詳情頁都不動（使用者指定）。
   1. 卡片總價改成跟首頁獨家物件標價同色 #E07A5F。
   2. 手機版卡片的價格疊在照片上（.item-header），淺色照片上看不清，
      加跟同一格每坪單價一樣的淡陰影；桌機白底那份不加。
   還原：刪掉這一段。 */
body.page-id-44345 .item-listing-wrap .houzez-child-total-price,
body.page-id-44345 .item-listing-wrap .houzez-child-total-price .houzez-child-wan-unit{ color:#E07A5F !important; }
body.page-id-44345 .item-listing-wrap .item-header .houzez-child-total-price{
  text-shadow:0 1px 3px rgba(0,0,0,0.85), 0 0 4px rgba(0,0,0,0.6) !important;
}
/* ===== LISTING-PRICE-COLOR end ===== */

/* ===== SUBMIT-UPLOAD-PROGRESS (2026-10-01) =====
   刊登物件頁上傳照片時，每張縮圖的進度數字（100%）和進度條跑到視窗正中央。
   原因：主題把進度文字設成絕對定位（top:50%;left:50%），但包住它的 .gallery-thumb-inner
   沒有設定位基準，往上一路到 body 也都沒有，所以它是對著整個視窗置中。
   這裡只補上定位基準，讓進度條和數字留在那張縮圖裡。
   還原：刪掉這一段。 */
.property-thumb .gallery-thumb-inner{ position:relative; }
/* ===== SUBMIT-UPLOAD-PROGRESS end ===== */
