/* Enchanted Insider Homepage — scoped to .eih-page / .eih so it never touches the rest of the site */

/* Kill Newsup front-page chrome on the EI Homepage template only */
.eih-page #secondary,
.eih-page .mg-sidebar,
.eih-page .mg-fea-area,
.eih-page #homemain,
.eih-page .homemain,
.eih-page #exTab2,
.eih-page .top-right-area,
.eih-page [id^="tan-main-banner-latest-trending-popular"],
.eih-page .mg-breadcrumb,
.eih-page .breadcrumb,
.eih-page .page-title-section,
.eih-page .mg-page-btn,
.eih-page .mg-breadcrumb-section,
.eih-page header.entry-header,
.eih-page .entry-meta,
.eih-page .mg-blog-meta:not(.eih *) {
	display: none !important;
}

/* Keep content full-width under the site header/nav */
.eih-page #content.eih,
.eih-page main.eih {
	width: 100% !important;
	max-width: none !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.eih {
	--eih-navy: #13294b;
	--eih-navy-deep: #0b1a33;
	--eih-yellow: #ffd61f;
	--eih-sky: #d6e4f5;
	--eih-ink: #1e2433;
	--eih-body: #3d4559;
	--eih-muted: #5a6274;
	--eih-rust: #a3480c;
	--eih-line: #e7e4dc;
	--eih-cream: #fbfaf6;
	--eih-display: 'Bricolage Grotesque', 'Figtree', system-ui, sans-serif;
	display: block;
	background: var(--eih-cream);
	color: var(--eih-ink);
	font-family: 'Figtree', system-ui, -apple-system, 'Segoe UI', sans-serif;
	font-size: 16px;
	line-height: 1.5;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
.eih *, .eih *::before, .eih *::after { box-sizing: border-box; }
.eih a { color: var(--eih-navy); text-decoration: none; }
.eih a:hover { color: var(--eih-navy-deep); }
.eih h1, .eih h2, .eih h3, .eih p { margin: 0; }
.eih img { max-width: 100%; display: block; }
.eih a:focus-visible, .eih button:focus-visible, .eih input:focus-visible {
	outline: 3px solid var(--eih-yellow);
	outline-offset: 2px;
}
.eih-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.eih-wrap { max-width: 1200px; margin: 0 auto; padding: 0 32px; }

/* type */
.eih-h1 {
	font-family: var(--eih-display); font-weight: 800; font-size: clamp(36px, 5vw, 60px);
	line-height: 1.03; letter-spacing: -0.02em; color: var(--eih-navy);
}
.eih-h2 {
	font-family: var(--eih-display); font-weight: 800; font-size: clamp(27px, 3.4vw, 42px);
	line-height: 1.08; color: var(--eih-navy);
}
.eih-eyebrow {
	display: block; font-weight: 700; font-size: 14px; letter-spacing: .08em;
	text-transform: uppercase; color: var(--eih-rust); margin-bottom: 10px;
}
.eih-eyebrow--yellow { color: var(--eih-yellow); }
.eih-eyebrow--navy { color: var(--eih-navy); }
.eih-lead { font-size: 19px; line-height: 1.55; color: var(--eih-body); max-width: 540px; }
.eih-meta { display: block; font-size: 13px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--eih-rust); }

/* shared */
.eih-card { transition: transform .15s ease, box-shadow .15s ease; }
.eih-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(19, 41, 75, .12); }
.eih-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; flex-wrap: wrap; margin-bottom: 30px; }
.eih-head--dark .eih-h2 { color: #ffffff; }
.eih-head--dark p { color: #c9d6ea; font-size: 17px; max-width: 420px; }
.eih-more { font-weight: 700; padding: 12px 0; }
.eih-btn {
	display: inline-flex; align-items: center; justify-content: center; min-height: 48px;
	padding: 14px 24px; border-radius: 12px; font-weight: 700; font-size: 16px;
}
.eih a.eih-btn--navy { background: var(--eih-navy); color: #ffffff; }
.eih a.eih-btn--navy:hover { background: var(--eih-navy-deep); color: #ffffff; }
.eih a.eih-btn--yellow { background: var(--eih-yellow); color: #2c2c2c; font-weight: 800; font-size: 17px; padding: 16px 30px; }
.eih a.eih-btn--yellow:hover { background: #f5c900; color: #2c2c2c; }
.eih-ph { background: #2b4a7a; }

/* hero */
.eih-hero { padding: 64px 0 56px; }
.eih-hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 48px; align-items: center; }
.eih-hero__copy { display: flex; flex-direction: column; gap: 22px; }
.eih-pill {
	align-self: flex-start; background: var(--eih-sky); color: var(--eih-navy);
	font-weight: 700; font-size: 13px; padding: 6px 12px; border-radius: 999px;
}
.eih-search {
	display: flex; gap: 8px; background: #ffffff; border: 1px solid #d9d5ca; border-radius: 14px;
	padding: 8px; max-width: 560px; box-shadow: 0 6px 18px rgba(19, 41, 75, .06); margin: 0;
}
.eih-search input {
	flex: 1 1 auto; min-width: 0; border: 0; outline: none; font: inherit; font-size: 16px;
	padding: 10px 12px; background: transparent; color: var(--eih-ink); box-shadow: none; height: auto;
}
.eih-search button {
	display: inline-flex; align-items: center; gap: 8px; background: var(--eih-navy); color: #ffffff;
	border: 0; border-radius: 10px; padding: 0 20px; font: inherit; font-weight: 700; font-size: 15px;
	min-height: 44px; cursor: pointer;
}
.eih-search button:hover { background: var(--eih-navy-deep); }
.eih-chips { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.eih-chips__label { font-size: 14px; font-weight: 600; color: var(--eih-muted); }
.eih-chips a {
	font-size: 14px; font-weight: 600; padding: 8px 13px; border-radius: 999px;
	border: 1px solid #d9d5ca; background: #ffffff;
}
.eih-chips a:hover { border-color: var(--eih-navy); }

.eih-feature { display: flex; flex-direction: column; background: #ffffff; border-radius: 22px; overflow: hidden; border: 1px solid var(--eih-line); color: var(--eih-ink); }
.eih-feature__media { position: relative; }
.eih-feature__img { width: 100%; height: 330px; object-fit: cover; }
.eih-flag {
	position: absolute; top: 16px; left: 16px; background: var(--eih-yellow); color: var(--eih-navy);
	font-weight: 800; font-size: 12px; padding: 5px 10px; border-radius: 6px; letter-spacing: .05em; text-transform: uppercase;
}
.eih-feature__body { padding: 22px 24px 24px; display: flex; flex-direction: column; gap: 10px; }
.eih-feature__title { font-family: var(--eih-display); font-weight: 800; font-size: 26px; line-height: 1.15; color: var(--eih-navy); }
.eih-byline { font-size: 15px; color: var(--eih-muted); }

/* stats */
.eih-stats { background: #ffffff; border-top: 1px solid var(--eih-line); border-bottom: 1px solid var(--eih-line); }
.eih-stats__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; padding-top: 22px; padding-bottom: 22px; }
.eih-stats__grid div { display: flex; flex-direction: column; gap: 2px; }
.eih-stats strong { font-family: var(--eih-display); font-weight: 800; font-size: 26px; color: var(--eih-navy); }
.eih-stats span { font-size: 14px; color: var(--eih-muted); }

/* tools */
.eih-tools { background: var(--eih-navy); padding: 72px 0; }
.eih-tools__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.eih-tool {
	position: relative; background: #ffffff; color: var(--eih-ink); border-radius: 18px; padding: 28px;
	display: flex; flex-direction: column; gap: 14px;
}
.eih-tool h3 { font-family: var(--eih-display); font-weight: 800; font-size: 23px; color: var(--eih-navy); }
.eih-tool p { font-size: 16px; color: var(--eih-body); }
.eih-tool__icon { width: 52px; height: 52px; border-radius: 14px; display: flex; align-items: center; justify-content: center; }
.eih-tint-yellow { background: var(--eih-yellow); }
.eih-tint-blue { background: var(--eih-sky); }
.eih-tint-peach { background: #fde8d2; }
.eih-tool__cta { margin-top: auto; font-weight: 700; color: var(--eih-navy); font-size: 15px; }
.eih-new {
	position: absolute; top: 24px; right: 24px; background: var(--eih-navy); color: var(--eih-yellow);
	font-size: 12px; font-weight: 800; padding: 4px 9px; border-radius: 6px; letter-spacing: .05em; text-transform: uppercase;
}

/* guides */
.eih-guides { padding: 80px 0 40px; }
.eih-guides__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px; }
.eih-guide {
	background: #ffffff; border: 1px solid var(--eih-line); border-radius: 16px; padding: 22px;
	display: flex; flex-direction: column; gap: 10px; color: var(--eih-ink);
}
.eih-guide h3 { font-size: 18px; font-weight: 700; color: var(--eih-navy); font-family: inherit; }
.eih-guide p { font-size: 15px; color: var(--eih-muted); line-height: 1.45; }

/* itinerary */
.eih-itin { padding: 40px 0; }
.eih-itin__box {
	display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; align-items: center;
	background: var(--eih-sky); border-radius: 24px; padding: 44px;
}
.eih-itin__copy { display: flex; flex-direction: column; gap: 14px; align-items: flex-start; }
.eih-itin__copy p { font-size: 17px; color: #2c3a52; }
.eih-itin__sample {
	background: #ffffff; border-radius: 18px; padding: 22px; display: flex; flex-direction: column;
	box-shadow: 0 10px 26px rgba(19, 41, 75, .10);
}
.eih-itin__sample strong { color: var(--eih-navy); font-size: 15px; margin-bottom: 6px; }
.eih-itin__sample div { display: flex; gap: 14px; align-items: center; padding: 10px 0; border-bottom: 1px solid #eee9de; font-size: 15px; }
.eih-itin__sample div:last-child { border-bottom: 0; }
.eih-itin__sample span { font-weight: 700; color: var(--eih-rust); width: 72px; flex-shrink: 0; font-size: 14px; }
.eih-itin__sample em { font-style: normal; color: var(--eih-muted); }

/* news — content-height lead (no equal-column empty stretch); roomy list */
.eih-news { padding: 56px 0; }
.eih-news__grid {
	display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); gap: 36px;
	align-items: start;
}
.eih-newslead {
	background: #ffffff; border: 1px solid var(--eih-line); border-radius: 20px; overflow: hidden;
	display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); color: var(--eih-ink);
	align-self: start; height: auto;
}
.eih-newslead__img {
	width: 100%; height: 100%; min-height: 240px; max-height: 320px; object-fit: cover;
	align-self: stretch;
}
.eih-newslead__body {
	padding: 28px 26px; display: flex; flex-direction: column; gap: 12px; justify-content: center;
	flex: 0 0 auto;
}
.eih-newslead h3 { font-family: var(--eih-display); font-weight: 800; font-size: 26px; line-height: 1.2; color: var(--eih-navy); }
.eih-newslead p { font-size: 16px; line-height: 1.5; color: var(--eih-body); }
.eih-newslead__more { font-weight: 700; font-size: 15px; color: var(--eih-navy); margin-top: 4px; }
.eih-newslist { display: flex; flex-direction: column; gap: 18px; }
.eih-newsitem {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	gap: 18px;
	padding: 16px 14px;
	border-radius: 14px;
	color: var(--eih-ink);
	border: 1px solid transparent;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}
.eih-newsitem:hover { background: #ffffff; border-color: var(--eih-line); }
.eih-newsitem__img,
.eih-newsitem img.wp-post-image {
	flex: 0 0 120px !important;
	width: 120px !important;
	max-width: 120px !important;
	height: 90px !important;
	border-radius: 12px;
	object-fit: cover !important;
}
.eih-newsitem__body {
	display: flex;
	flex-direction: column;
	gap: 8px;
	flex: 1 1 0% !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	overflow: visible;
}
.eih-newsitem .eih-meta { font-size: 12px; color: var(--eih-rust); }
.eih-newsitem__title {
	font-weight: 700; font-size: 18px; line-height: 1.35; color: var(--eih-navy); display: block;
}
.eih-newsitem__title,
.eih-newsitem .eih-meta {
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: anywhere;
	writing-mode: horizontal-tb !important;
	overflow: visible;
}

/* season */
.eih-season { padding: 32px 0 64px; }
.eih-season__head { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-bottom: 24px; }
.eih-season__pill {
	background: #2c2c2c; color: #ffb347; font-weight: 800; font-size: 13px; padding: 6px 12px;
	border-radius: 999px; letter-spacing: .05em; text-transform: uppercase;
}
.eih-season__head h2 { font-family: var(--eih-display); font-weight: 800; font-size: 30px; color: var(--eih-navy); }
.eih-season__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.eih-seasoncard { background: #ffffff; border: 1px solid var(--eih-line); border-radius: 16px; overflow: hidden; display: flex; flex-direction: column; color: var(--eih-ink); }
.eih-seasoncard__img { width: 100%; height: 170px; object-fit: cover; }
.eih-seasoncard__title { padding: 18px; font-weight: 700; font-size: 18px; line-height: 1.3; color: var(--eih-navy); }

/* get away today */
.eih-gat { padding: 0 0 56px; }
.eih-gat__box {
	background: var(--eih-sky); border-radius: 24px; padding: 48px 32px;
	display: flex; flex-direction: column; align-items: center; text-align: center; gap: 14px;
}
.eih-gat__box h2 { font-family: var(--eih-display); font-weight: 800; font-size: clamp(24px, 3vw, 36px); line-height: 1.12; color: #2c2c2c; }
.eih-gat__sub { font-style: italic; color: #555555; font-size: 17px; max-width: 560px; }
.eih-gat__fine { font-size: 0.85em; color: var(--eih-body); }

/* optin */
.eih-optin { padding: 0 0 72px; }
.eih-optin .eih-wrap > * { margin-left: auto; margin-right: auto; }

/* ---------- responsive ---------- */
@media (max-width: 1024px) {
	.eih-guides__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.eih-tools__grid { grid-template-columns: minmax(0, 1fr); }
	.eih-tool { flex-direction: column; }
}

@media (max-width: 860px) {
	.eih-wrap { padding: 0 16px; }
	.eih-hero { padding: 28px 0 32px; }
	.eih-hero__grid, .eih-news__grid, .eih-itin__box { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.eih-lead { font-size: 17px; }
	.eih-search button span { display: none; }
	.eih-search button { padding: 0 14px; }
	.eih-chips { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 2px; }
	.eih-chips a { white-space: nowrap; padding: 10px 14px; }
	.eih-feature__img { height: 210px; }
	.eih-feature__title { font-size: 21px; }
	.eih-stats__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.eih-tools { padding: 40px 0; }
	.eih-tools__grid {
		display: flex; gap: 12px; overflow-x: auto; scroll-snap-type: x mandatory;
		margin-right: -16px; padding-right: 16px; -webkit-overflow-scrolling: touch;
	}
	.eih-tool { flex: 0 0 82%; scroll-snap-align: start; padding: 22px; }
	.eih-tool h3 { font-size: 20px; }
	.eih-head--dark p { font-size: 15px; }

	.eih-guides { padding: 40px 0 24px; }
	.eih-guides__grid { gap: 10px; }
	.eih-guide { padding: 16px; }
	.eih-guide h3 { font-size: 15px; }
	.eih-guide p { display: none; }

	.eih-itin { padding: 24px 0; }
	.eih-itin__box { padding: 24px; border-radius: 20px; }
	.eih-itin__sample { display: none; }
	.eih-itin__copy .eih-btn { align-self: stretch; }

	.eih-news { padding: 32px 0; }
	.eih-newslead { grid-template-columns: minmax(0, 1fr); }
	.eih-newslead__img { height: 200px; min-height: 0; max-height: none; }
	.eih-newslead__body { padding: 20px 18px; display: flex !important; visibility: visible !important; }
	.eih-newslead h3,
	.eih-newslead p,
	.eih-newslead .eih-meta,
	.eih-newslead__more {
		display: block !important; visibility: visible !important; opacity: 1 !important;
		color: var(--eih-navy) !important; height: auto !important; max-height: none !important;
		overflow: visible !important; position: static !important; clip: auto !important;
		width: auto !important; font-size: inherit;
	}
	.eih-newslead p { color: var(--eih-body) !important; font-size: 15px !important; }
	.eih-newslead .eih-meta { color: var(--eih-rust) !important; font-size: 12px !important; }
	.eih-newslead h3 { font-size: 22px !important; }
	.eih-newslist { gap: 16px; }
	.eih-newsitem {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px;
		padding: 0 0 16px; border-bottom: 1px solid #eee9de; border-radius: 0;
		border-left: 0; border-right: 0; border-top: 0;
		width: 100% !important;
		max-width: 100% !important;
	}
	.eih-newsitem:hover { border-color: transparent transparent #eee9de transparent; background: transparent; }
	.eih-newsitem__img,
	.eih-newsitem img.wp-post-image {
		flex: 0 0 auto !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 180px !important;
		border-radius: 14px;
		object-fit: cover !important;
	}
	.eih-newsitem__body {
		display: flex !important; flex-direction: column; gap: 6px;
		flex: 1 1 auto !important;
		min-width: 0 !important; width: 100% !important; max-width: 100% !important;
		visibility: visible !important; opacity: 1 !important; height: auto !important;
		overflow: visible !important; position: static !important;
	}
	.eih-newsitem .eih-meta,
	.eih-newsitem__title {
		display: block !important; visibility: visible !important; opacity: 1 !important;
		height: auto !important; max-height: none !important; overflow: visible !important;
		position: static !important; clip: auto !important; white-space: normal !important;
		width: auto !important;
	}
	.eih-newsitem .eih-meta { color: var(--eih-rust) !important; font-size: 12px !important; }
	.eih-newsitem__title { color: var(--eih-navy) !important; font-size: 17px !important; line-height: 1.35 !important; }

	.eih-season { padding: 16px 0 32px; }
	.eih-season__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; }
	.eih-season__head h2 { font-size: 22px; }

	.eih-gat { padding-bottom: 32px; }
	.eih-gat__box { padding: 28px 20px; border-radius: 20px; }
	.eih-gat__box .eih-btn { align-self: stretch; }
	.eih-optin { padding-bottom: 40px; }
}
