/* ett_home.css — /ett/ Production Visual Presentation Layer
 * Authority: FINAL2 handoff + Desktop Hero approved freeze.
 * Shared Header/Footer unchanged. Function Freeze intact.
 */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Serif+TC:wght@700&display=swap");

.ett-home {
	--primary: #174C3F;
	--primary2: #1F5A4A;
	--deep: #103D34;
	--ink: #12302D;
	--text: #33413D;
	--muted: #68736F;
	--warm: #FAF8F3;
	--gold: #B98745;
	--gold2: #D0AE69;
	--sage: #8FAF9D;
	--sage2: #D7E6DC;
	--sage3: #EDF4EF;
	--border: #DFE5E2;
	--light: #F6F9F7;
	--orange: #F2A100;
	--asset: /view/img/ett_home;
	margin: 0;
	/* Shared Header (.travel_header) is position:fixed ~76px */
	padding: 76px 0 0;
	max-width: none;
	width: 100%;
	color: var(--text);
	font-family: "Noto Sans TC", "Microsoft JhengHei", sans-serif;
	line-height: 1.5;
	overflow-x: hidden;
	box-sizing: border-box;
	background: #fff;
}
.ett-home *,
.ett-home *::before,
.ett-home *::after { box-sizing: border-box; }

.ett-home .i {
	display: inline-block;
	background: currentColor;
	mask: var(--u) center / contain no-repeat;
	-webkit-mask: var(--u) center / contain no-repeat;
	flex: none;
}

/* ===== Hero ===== */
.ett-home .ett-hero {
	height: 188px;
	position: relative;
	overflow: hidden;
	background: #fff;
	text-align: left;
	margin: 0;
}
.ett-home .ett-hero-photo {
	position: absolute;
	left: 500px;
	top: 0;
	width: 948px;
	height: 188px;
	object-fit: cover;
	object-position: left center;
	display: block;
	z-index: 1;
}
.ett-home .ett-hero::after {
	content: "";
	position: absolute;
	left: 430px;
	top: 0;
	width: 260px;
	height: 188px;
	z-index: 2;
	background: linear-gradient(90deg, #fff 15%, rgba(255,255,255,.86) 48%, rgba(255,255,255,0) 100%);
	pointer-events: none;
}
.ett-home .ett-hero-leaf {
	position: absolute;
	left: -5px;
	top: 12px;
	width: 100px;
	height: 82px;
	object-fit: contain;
	z-index: 3;
}
.ett-home .ett-hero-copy {
	position: absolute;
	left: 61px;
	top: 29px;
	z-index: 4;
	margin: 0;
	max-width: none;
	text-align: left;
}
.ett-home .ett-hero-title {
	display: flex;
	align-items: center;
	height: 72px;
}
.ett-home .ett-hero-route-pin {
	width: 119px;
	height: 66px;
	object-fit: contain;
	flex: none;
}
.ett-home .ett-hero h1 {
	margin: 0 0 0 15px;
	color: #102d2a;
	font-family: "Noto Serif TC", "Noto Serif CJK TC", serif;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: .02em;
	word-break: break-word;
	max-width: 22rem;
}
.ett-home .ett-hero-desc {
	margin: 7px 0 0 97px;
	color: #3e4a47;
	font-size: 14px;
	letter-spacing: .015em;
	max-width: 28rem;
}
.ett-home .ett-hero-zh {
	position: absolute;
	left: 620px;
	top: 22px;
	width: 300px;
	height: auto;
	object-fit: contain;
	z-index: 4;
}
.ett-home .ett-hero-underline {
	position: absolute;
	left: 688px;
	top: 109px;
	width: 245px;
	height: auto;
	object-fit: contain;
	z-index: 4;
}

/* Desktop approved hero freeze — woman fully visible; no English tagline */
@media (min-width: 1200px) {
	.ett-home .ett-hero {
		background-image: url("/view/img/ett_home/raster/hero-desktop-approved-freeze.png") !important;
		background-repeat: no-repeat !important;
		background-position: center center !important;
		background-size: 100% auto !important;
	}
	.ett-home .ett-hero::before { display: none !important; }
	/* Cover ONLY the freeze-baked subtitle line crushed under the search bar.
	   Text:「搜尋店家，查看 Google 評論、AI 口碑摘要與服務亮點。」— left white band only. */
	.ett-home .ett-hero::after {
		content: "" !important;
		display: block !important;
		position: absolute !important;
		left: 0 !important;
		right: auto !important;
		bottom: auto !important;
		top: 128px !important;
		width: min(560px, 52%) !important;
		height: 34px !important;
		background: #fff !important;
		background-image: none !important;
		z-index: 2 !important;
		pointer-events: none !important;
	}
	.ett-home .ett-hero-photo,
	.ett-home .ett-hero-leaf,
	.ett-home .ett-hero-copy,
	.ett-home .ett-hero-zh,
	.ett-home .ett-hero-underline { display: none !important; }
}

/* ===== Shell / layout ===== */
.ett-home .ett-home-shell {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 370px;
	column-gap: 13px;
	padding: 0 28px 48px 36px;
	background: linear-gradient(180deg, #fff 0, #fcfdfc 100%);
	align-items: start;
}
.ett-home .ett-home-left { min-width: 0; }
.ett-home .ett-explore { margin: 0; }

/* Search — delta: modest lift only; filters compensated below to avoid cascade drift */
.ett-home .ett-search-wrap {
	position: relative;
	margin-top: -52px;
	z-index: 6;
}
.ett-home .ett-search-row {
	width: 100%;
	min-height: 55px;
	border: 1px solid #d7e1dd;
	border-radius: 9px;
	background: #fff;
	box-shadow: 0 3px 12px rgba(40,75,64,.15);
	display: flex;
	align-items: center;
	padding: 5px 7px 5px 18px;
	gap: 8px;
}
.ett-home .ett-search-row::before {
	content: "";
	width: 25px;
	height: 25px;
	flex: none;
	background: #102f2d;
	mask: url("/view/img/ett_home/svg/icon-search.svg") center / contain no-repeat;
	-webkit-mask: url("/view/img/ett_home/svg/icon-search.svg") center / contain no-repeat;
}
.ett-home .ett-search-input {
	flex: 1;
	min-width: 0;
	border: 0;
	outline: 0;
	background: transparent;
	color: #33413d;
	font-size: 15px;
	height: 43px;
	padding: 0;
}
.ett-home .ett-search-input::placeholder { color: #77817f; opacity: .92; }
.ett-home .ett-search-clear {
	width: 36px;
	height: 36px;
	border: 0;
	border-radius: 6px;
	background: transparent;
	color: #68736f;
	font-size: 22px;
	line-height: 1;
	cursor: pointer;
	flex: none;
}
.ett-home .ett-search-clear.is-disabled { opacity: .35; cursor: default; }

/* Active filter tags */
.ett-home .ett-active-filters {
	display: none;
	flex-wrap: wrap;
	gap: 8px;
	padding: 12px 0 0;
}
.ett-home .ett-active-filters.is-visible { display: flex; }
.ett-home .ett-active-filter-tag {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 4px 8px 4px 10px;
	border-radius: 999px;
	background: var(--sage3);
	border: 1px solid var(--sage2);
	color: var(--primary);
	font-size: 13px;
}
.ett-home .ett-active-filter-tag button {
	border: 0;
	background: transparent;
	color: var(--primary);
	cursor: pointer;
	font-size: 16px;
	line-height: 1;
	padding: 0 2px;
}

/* Filters / chips — keep chip UX (Function Freeze); restyle only */
.ett-home .ett-home-filters {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 16px 20px;
	/* Keep filter band Y stable after search lift (-52 vs -40) */
	margin-top: 12px;
	padding: 16px 3px 12px 4px;
}
.ett-home .ett-quick-block {
	min-width: 0;
	margin: 0;
}
/* Specialty: full-row visibility (was cramped in flex remainder) */
.ett-home .ett-specialty-block {
	min-width: 0;
	margin: 0;
	flex: 1 1 100%;
	width: 100%;
}
.ett-home .ett-quick-title,
.ett-home .ett-specialty-title {
	height: 20px;
	margin: 0 0 9px;
	display: flex;
	align-items: center;
	gap: 8px;
	color: #0e5345;
	font-weight: 700;
	font-size: 14px;
}
.ett-home .ett-quick-title::before,
.ett-home .ett-specialty-title::before {
	content: "";
	width: 18px;
	height: 18px;
	background: currentColor;
	mask-position: center;
	mask-size: contain;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-webkit-mask-size: contain;
	-webkit-mask-repeat: no-repeat;
}
.ett-home #ett-industry-quick .ett-quick-title::before {
	mask-image: url("/view/img/ett_home/svg/icon-category-briefcase.svg");
	-webkit-mask-image: url("/view/img/ett_home/svg/icon-category-briefcase.svg");
}
.ett-home #ett-city-quick .ett-quick-title::before {
	mask-image: url("/view/img/ett_home/svg/icon-location-pin.svg");
	-webkit-mask-image: url("/view/img/ett_home/svg/icon-location-pin.svg");
}
.ett-home .ett-specialty-title::before {
	mask-image: url("/view/img/ett_home/svg/icon-tag.svg");
	-webkit-mask-image: url("/view/img/ett_home/svg/icon-tag.svg");
}
.ett-home .ett-quick-chips,
.ett-home .ett-specialty-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
}
.ett-home .ett-quick-chip,
.ett-home .ett-specialty-chip {
	height: 40px;
	border: 1px solid #d9e1de;
	background: #fff;
	border-radius: 7px;
	color: #223a35;
	padding: 0 14px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	white-space: nowrap;
	cursor: pointer;
}
.ett-home .ett-quick-chip.is-selected,
.ett-home .ett-specialty-chip.is-selected {
	background: #e7f2ec;
	border-color: #d8e9e0;
	color: #154e42;
	font-weight: 600;
}
.ett-home .ett-specialty-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 0;
	min-height: 40px;
}
.ett-home .ett-specialty-clear {
	height: 40px;
	min-width: 5.5rem;
	border: 1px solid #d8c4a2;
	border-radius: 999px;
	background: #fffaf5;
	color: #98621d;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	padding: 0 14px;
	font-size: 14px;
	line-height: 1;
	cursor: pointer;
	white-space: nowrap;
	flex: none;
	opacity: 1;
	pointer-events: auto;
	position: relative;
	z-index: 2;
}
.ett-home .ett-specialty-clear.is-disabled,
.ett-home .ett-specialty-clear:disabled {
	opacity: .4;
	cursor: default;
}
.ett-home .ett-home-clear {
	height: 40px;
	border: 0;
	background: transparent;
	color: #98621d;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 0 4px;
	font-size: 14px;
	cursor: pointer;
	white-space: nowrap;
	margin-left: auto;
	flex: none;
}
.ett-home .ett-home-clear::before {
	content: "";
	width: 20px;
	height: 20px;
	background: #b06f19;
	mask: url("/view/img/ett_home/svg/icon-reset-rotate.svg") center / contain no-repeat;
	-webkit-mask: url("/view/img/ett_home/svg/icon-reset-rotate.svg") center / contain no-repeat;
}
.ett-home .ett-specialty-more-btn {
	margin-top: 8px;
	border: 0;
	background: transparent;
	color: var(--primary);
	font-size: 13px;
	cursor: pointer;
	padding: 4px 0;
}
.ett-home .ett-specialty-overflow[hidden] { display: none !important; }
.ett-home .ett-specialty-overflow:not([hidden]) {
	display: contents;
}

/* Results head helper removed (Owner search UI delta) */

.ett-home .trustwall-cards {
	border-top: 1px solid #f2f3f2;
	padding-top: 12px;
}

.ett-home .ett-search-empty {
	display: none;
	margin: 12px 0;
	padding: 14px 16px;
	border-radius: 8px;
	background: var(--warm);
	border: 1px solid #eee8dd;
	color: var(--text);
	font-size: 14px;
}
.ett-home .ett-search-empty.is-visible { display: block; }
.ett-home .ett-search-empty-clear {
	margin-left: 8px;
	border: 0;
	background: transparent;
	color: #98621d;
	cursor: pointer;
	text-decoration: underline;
	font-size: 14px;
}

/* Cards */
.ett-home .trustwall-cards {
	display: flex;
	flex-direction: column;
	gap: 8px;
	grid-template-columns: none;
}
.ett-home .agency-card {
	min-height: 122px;
	border: 1px solid #dfe5e2;
	border-radius: 8px;
	background: #fff;
	display: grid;
	grid-template-columns: 266px minmax(0, 1fr) 122px;
	overflow: hidden;
	box-shadow: none;
}
.ett-home .agency-card.is-hidden { display: none !important; }
.ett-home .agency-card-body {
	display: contents;
}
.ett-home .agency-card-top {
	display: flex;
	align-items: center;
	padding: 8px 10px 8px 9px;
	border-right: 1px solid #edf0ee;
	min-width: 0;
	gap: 0;
}
.ett-home .agency-card-logo {
	width: 81px;
	height: 81px;
	border-radius: 50%;
	flex: none;
	overflow: hidden;
	background: linear-gradient(145deg, #eff7f3, #e3f0e9);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ett-home .agency-card-logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.ett-home .agency-card-info {
	padding-left: 17px;
	min-width: 0;
	flex: 1;
}
.ett-home .agency-card-name-row {
	display: block;
}
.ett-home .agency-card-industries {
	color: #9d6c35;
	font-size: 12px;
	margin: 0 0 9px;
	line-height: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ett-home .agency-card-name {
	margin: 0 0 4px;
	font-family: "Noto Serif TC", "Noto Serif CJK TC", serif;
	color: #102d2a;
	font-size: 18px;
	line-height: 1.15;
	font-weight: 700;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ett-home .agency-card-city {
	height: 22px;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #2f403c;
	font-size: 14px;
	background: transparent;
	padding: 0;
	border-radius: 0;
}
.ett-home .agency-card-city img {
	width: 14px;
	height: 14px;
}
.ett-home .agency-card-city-pin-pending {
	width: 14px;
	height: 14px;
	display: inline-block;
	background: #28594e;
	mask: url("/view/img/ett_home/svg/icon-location-pin.svg") center / contain no-repeat;
	-webkit-mask: url("/view/img/ett_home/svg/icon-location-pin.svg") center / contain no-repeat;
}
.ett-home .agency-card-reputation {
	height: 22px;
	display: flex;
	align-items: center;
	gap: 5px;
	font-size: 13px;
	white-space: nowrap;
	margin: 2px 0 0;
	color: #283833;
}
.ett-home .agency-card-mid {
	display: grid;
	grid-template-columns: 1.29fr 1fr;
	gap: 4px;
	padding: 6px 4px 2px;
	min-width: 0;
	align-content: center;
}
.ett-home .agency-card-ai-block,
.ett-home .agency-card-highlights {
	background: linear-gradient(90deg, #eef6f1, #f4f9f6);
	border-radius: 5px;
	padding: 6px 9px;
	overflow: hidden;
	min-width: 0;
	margin: 0;
}
.ett-home .agency-card-ai-label,
.ett-home .agency-card-highlights-label,
.ett-home .agency-card-expertise-label {
	height: 24px;
	display: flex;
	align-items: center;
	gap: 7px;
	color: #0d5e4d;
	font-weight: 700;
	font-size: 13px;
	white-space: nowrap;
	margin: 0;
}
.ett-home .agency-card-ai-summary {
	margin: 1px 0 4px;
	color: #596762;
	font-size: 12.5px;
	line-height: 1.45;
	max-height: 36px;
	overflow: hidden;
}
.ett-home .agency-card-chips-wrap {
	position: relative;
	min-width: 0;
}
.ett-home .agency-card-chips {
	display: flex;
	gap: 5px;
	overflow-x: auto;
	white-space: nowrap;
	scrollbar-width: none;
	-ms-overflow-style: none;
}
.ett-home .agency-card-chips::-webkit-scrollbar { display: none; }
.ett-home .agency-card-highlight-chip,
.ett-home .agency-card-chip {
	border: 1px solid #e0ebe6;
	border-radius: 4px;
	background: #fff;
	color: #255b4e;
	padding: 2px 7px;
	font-size: 11px;
	line-height: 17px;
	height: 21px;
	flex: none;
}
.ett-home .agency-card-chips-fade {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	width: 28px;
	background: linear-gradient(90deg, transparent, #f4f9f6);
	pointer-events: none;
	opacity: 0;
}
.ett-home .agency-card-chips-wrap.is-overflowing .agency-card-chips-fade { opacity: 1; }
.ett-home .agency-card-chips-cue {
	position: absolute;
	right: 2px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #245b4d;
	color: #fff;
	font-size: 12px;
	line-height: 18px;
	text-align: center;
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
}
.ett-home .agency-card-chips-wrap.is-overflowing .agency-card-chips-cue {
	opacity: 1;
	pointer-events: auto;
}
.ett-home .agency-card-expertise {
	grid-column: 1 / -1;
	padding: 0 4px 4px;
	min-width: 0;
}
.ett-home .agency-card-expertise .agency-card-expertise-label {
	margin-bottom: 4px;
}
.ett-home .agency-card-link {
	border-left: 1px solid #f0f2f1;
	color: #075a48;
	text-decoration: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-weight: 700;
	font-size: 15px;
	white-space: nowrap;
	padding: 0 10px;
	background: #fff;
}
.ett-home .agency-card-link::after {
	content: "";
	width: 17px;
	height: 17px;
	background: #075a48;
	mask: url("/view/img/ett_home/svg/icon-arrow-right.svg") center / contain no-repeat;
	-webkit-mask: url("/view/img/ett_home/svg/icon-arrow-right.svg") center / contain no-repeat;
}
.ett-home .trustwall-empty {
	margin: 12px 0;
	font-size: 15px;
	color: var(--muted);
}

/* ===== Sidebar (static presentation) ===== */
.ett-home .ett-home-sidebar {
	padding-top: 20px;
	min-width: 0;
}
.ett-home .ett-side-top {
	height: 270px;
	border: 1px solid #eee8dd;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #fffaf1, #f6f2e9);
}
.ett-home .ett-side-top-copy {
	position: absolute;
	left: 20px;
	top: 28px;
	z-index: 3;
}
.ett-home .ett-side-eyebrow {
	color: #b77b27;
	font-size: 13px;
	letter-spacing: .08em;
	margin-bottom: 12px;
}
.ett-home .ett-side-top h2 {
	margin: 0;
	color: #12302d;
	font-family: "Noto Serif TC", serif;
	font-weight: 700;
	font-size: 27px;
	line-height: 1.28;
	letter-spacing: .01em;
}
.ett-home .ett-gold-dash {
	width: 24px;
	height: 4px;
	background: #c68a27;
	border-radius: 3px;
	margin-top: 16px;
}
.ett-home .ett-side-stilllife {
	position: absolute;
	right: 0;
	top: 0;
	width: 210px;
	height: 155px;
	object-fit: cover;
	object-position: 48% 45%;
	z-index: 1;
	/* final-2: right → left soft fade into side-top cream (presentation only; raster untouched) */
	-webkit-mask-image: linear-gradient(
		to left,
		#000 0%,
		#000 36%,
		rgba(0, 0, 0, 0.72) 55%,
		rgba(0, 0, 0, 0.28) 78%,
		transparent 100%
	);
	mask-image: linear-gradient(
		to left,
		#000 0%,
		#000 36%,
		rgba(0, 0, 0, 0.72) 55%,
		rgba(0, 0, 0, 0.28) 78%,
		transparent 100%
	);
	mask-size: 100% 100%;
	-webkit-mask-size: 100% 100%;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
}
.ett-home .ett-side-benefits {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 27px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	height: 75px;
}
.ett-home .ett-side-benefit {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 7px;
	color: #3b4945;
	font-size: 12.5px;
	border-right: 1px solid #ddd9d0;
}
.ett-home .ett-side-benefit:last-child { border-right: 0; }
.ett-home .ett-side-benefit .i {
	width: 39px;
	height: 39px;
	color: #a76c17;
}
.ett-home .ett-side-benefit.travel .i { --u: url("/view/img/ett_home/svg/icon-compass.svg"); }
.ett-home .ett-side-benefit.food .i { --u: url("/view/img/ett_home/svg/icon-industry-food.svg"); }
.ett-home .ett-side-benefit.hotel .i { --u: url("/view/img/ett_home/svg/icon-promo-lodging-bed.svg"); }

.ett-home .ett-side-why {
	height: auto;
	min-height: 344px;
	margin-top: 11px;
	border: 1px solid #dfebe4;
	border-radius: 10px;
	background: linear-gradient(135deg, #edf6f0, #e8f3ed);
	padding: 20px 18px 16px;
}
.ett-home .ett-side-why h3 {
	margin: 0 0 13px;
	display: flex;
	align-items: center;
	gap: 9px;
	color: #0c4f42;
	font-family: "Noto Serif TC", serif;
	font-size: 20px;
	font-weight: 700;
}
.ett-home .ett-side-why h3 .i {
	--u: url("/view/img/ett_home/svg/icon-leaf-outline.svg");
	width: 26px;
	height: 26px;
	color: #0a5b4b;
}
.ett-home .ett-why-item {
	min-height: 61px;
	display: flex;
	align-items: center;
	gap: 14px;
	margin-bottom: 4px;
}
.ett-home .ett-why-round {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	color: #0b5848;
}
.ett-home .ett-why-round .i { width: 27px; height: 27px; }
.ett-home .ett-why-round.google .i { --u: url("/view/img/ett_home/svg/icon-google-g.svg"); width: 29px; height: 29px; }
.ett-home .ett-why-round.shield .i { --u: url("/view/img/ett_home/svg/icon-shield-check.svg"); }
.ett-home .ett-why-round.heart .i { --u: url("/view/img/ett_home/svg/icon-heart.svg"); }
.ett-home .ett-why-round.ai-badge span {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #0a5547;
	color: #fff;
	font-weight: 800;
	font-size: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ett-home .ett-why-copy strong {
	display: block;
	color: #14594a;
	font-size: 15px;
	line-height: 1.15;
	margin-bottom: 4px;
}
.ett-home .ett-why-copy p {
	margin: 0;
	color: #586661;
	font-size: 12.5px;
	line-height: 1.35;
}

.ett-home .ett-side-explore {
	height: 154px;
	margin-top: 10px;
	border-radius: 10px;
	position: relative;
	overflow: hidden;
	background: #dfe9e4;
}
.ett-home .ett-side-explore-bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 51%;
}
.ett-home .ett-side-explore::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255,255,255,.48), rgba(255,255,255,.02) 56%);
}
.ett-home .ett-side-explore-letter {
	position: absolute;
	left: 24px;
	top: 12px;
	width: 205px;
	height: auto;
	object-fit: contain;
	z-index: 2;
}
.ett-home .ett-side-explore-cta {
	position: absolute;
	left: 28px;
	bottom: 17px;
	height: 43px;
	border-radius: 23px;
	background: rgba(255,255,255,.94);
	display: flex;
	align-items: center;
	gap: 11px;
	padding: 0 8px 0 16px;
	z-index: 3;
	color: #34433f;
	font-size: 12.5px;
	white-space: nowrap;
	box-shadow: 0 1px 5px rgba(0,0,0,.04);
}
.ett-home .ett-cta-round {
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: #245b4d;
	display: flex;
	align-items: center;
	justify-content: center;
}
.ett-home .ett-cta-round .i {
	--u: url("/view/img/ett_home/svg/icon-arrow-right.svg");
	width: 18px;
	height: 18px;
	color: #fff;
}

/* ===== Tablet ===== */
@media (max-width: 1199px) {
	/* Hide hero-desc only — crushed under search; keep title / ZH lettering */
	.ett-home .ett-hero-desc { display: none !important; }
	.ett-home .ett-home-shell {
		display: block;
		padding: 0 22px 30px;
	}
	.ett-home .ett-home-sidebar {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 14px;
		padding-top: 18px;
	}
	.ett-home .ett-side-explore { grid-column: 1 / -1; }
	.ett-home .ett-hero { height: 180px; }
	.ett-home .ett-hero-photo {
		left: 42%;
		width: 58%;
		height: 180px;
	}
	.ett-home .ett-hero::after {
		left: 34%;
		width: 18%;
		height: 180px;
	}
	.ett-home .ett-hero-copy { left: 32px; top: 28px; }
	.ett-home .ett-hero h1 { font-size: 24px; max-width: 18rem; }
	.ett-home .ett-hero-desc { margin-left: 82px; font-size: 13px; }
	.ett-home .ett-hero-leaf { width: 82px; height: 70px; }
	.ett-home .ett-hero-zh { left: 47%; top: 28px; width: 240px; }
	.ett-home .ett-hero-underline { left: 55%; top: 103px; width: 190px; }
	.ett-home .ett-search-wrap { margin-top: -58px; }
	.ett-home .agency-card {
		grid-template-columns: 220px minmax(0, 1fr) 100px;
	}
	.ett-home .agency-card-mid { grid-template-columns: 1fr; }
}

/* ===== Mobile ===== */
@media (max-width: 640px) {
	.ett-home .ett-hero { height: 220px; }
	.ett-home .ett-hero-photo {
		left: 36%;
		width: 64%;
		height: 220px;
		object-position: 58% center;
	}
	.ett-home .ett-hero::after {
		left: 24%;
		width: 26%;
		height: 220px;
	}
	.ett-home .ett-hero-copy { left: 16px; top: 28px; }
	.ett-home .ett-hero-title { height: auto; align-items: flex-start; }
	.ett-home .ett-hero-route-pin { width: 70px; height: 40px; }
	.ett-home .ett-hero h1 {
		font-size: 20px;
		margin-left: 10px;
		max-width: 12rem;
	}
	.ett-home .ett-hero-desc {
		margin: 8px 0 0;
		font-size: 13px;
		max-width: 230px;
	}
	.ett-home .ett-hero-leaf {
		left: -12px;
		top: 14px;
		width: 78px;
		height: 66px;
	}
	.ett-home .ett-hero-zh,
	.ett-home .ett-hero-underline { display: none; }
	.ett-home .ett-home-shell { padding: 0 12px 24px; }
	.ett-home .ett-search-wrap { margin-top: -70px; }
	.ett-home .ett-search-row {
		min-height: 52px;
		padding: 8px 10px 8px 14px;
	}
	.ett-home .ett-home-filters { display: block; }
	.ett-home .ett-quick-block,
	.ett-home .ett-specialty-block { width: 100%; margin-bottom: 10px; }
	.ett-home .ett-home-clear { margin: 0 0 8px auto; }
	.ett-home .agency-card {
		height: auto;
		display: block;
	}
	.ett-home .agency-card-body { display: block; }
	.ett-home .agency-card-top {
		border-right: 0;
		border-bottom: 1px solid #edf0ee;
	}
	.ett-home .agency-card-mid {
		display: block;
		padding: 8px;
	}
	.ett-home .agency-card-ai-block,
	.ett-home .agency-card-highlights {
		margin-bottom: 6px;
	}
	.ett-home .agency-card-expertise { padding: 0 8px 8px; }
	.ett-home .agency-card-link {
		height: 42px;
		border-left: 0;
		border-top: 1px solid #edf0ee;
		justify-content: flex-end;
		padding-right: 14px;
	}
	.ett-home .ett-home-sidebar { display: block; }
	.ett-home .ett-side-why { height: auto; min-height: 0; }
	.ett-home .ett-side-explore { height: 110px; }
	.ett-home .ett-side-explore-letter { left: 18px; top: 13px; width: 165px; }
	.ett-home .ett-side-explore-cta { left: 20px; bottom: 13px; }
	.ett-home .agency-card-name { white-space: normal; }
}

@media (min-width: 1200px) {
	.ett-home .ett-home-shell {
		grid-template-columns: minmax(0, 1fr) 379px;
		column-gap: 13px;
		padding-left: 36px;
		padding-right: 28px;
		max-width: 1448px;
		margin: 0 auto;
	}
}
