/* Hotel Duniya – homepage layout. Selectors are prefixed with .hd-home-page (body class) so they win over Elementor per-element CSS. */


.hd-home-page .e-con.hd-sec,
.hd-home-page .hd-sec {
	--hd-bg: #F5F2EC;
	--hd-paper: #FFFFFF;
	--hd-soft: #F3EEE6;
	--hd-ink: #1B1E22;
	--hd-deep: #1B2A2F;
	--hd-deep-2: #22343A;
	--hd-muted: #5E5A54;
	--hd-line: #E6E0D5;
	--hd-accent: #A3523A;
	--hd-gold: #E8C07A;
	--hd-serif: 'Playfair Display', Georgia, serif;
	--hd-sans: 'Hanken Grotesk', system-ui, sans-serif;
	--hd-mono: 'JetBrains Mono', ui-monospace, monospace;
	--hd-px: 32px;
	--hd-space: 112px;
	--hd-gap: 16px;
	--hd-radius: 32px;
	--hd-shadow: 0 1px 2px rgba(27, 30, 34, .04);
	--hd-shadow-hover: 0 22px 44px -20px rgba(27, 42, 47, .35);

	background: var(--hd-bg);
	color: var(--hd-ink);
	font-family: var(--hd-sans);
	-webkit-font-smoothing: antialiased;
	--padding-top: var(--hd-space);
	--padding-bottom: 0px;
	--padding-left: var(--hd-px);
	--padding-right: var(--hd-px);
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
	/* neutralise Elementor kit defaults for every nested container/widget */
	--container-default-padding-top: 0px; --container-default-padding-bottom: 0px;
	--container-default-padding-left: 0px; --container-default-padding-right: 0px;
	--widgets-spacing: 0px; --widgets-spacing-row: 0px; --widgets-spacing-column: 0px;
	--kit-widget-spacing: 0px;
}
body.hd-home-page { background: #F5F2EC; }
body.hd-home-page .main-page-wrapper { padding-top: 0; background: #F5F2EC; }

.hd-home-page :where(.e-con[class*="hd-"]):not(.hd-sec) {
	--padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px;
	--gap: 0px; --row-gap: 0px; --column-gap: 0px;
}
.hd-home-page .hd-sec .elementor-widget:not(:last-child) { margin-bottom: 0; }
.hd-home-page .hd-sec p:last-child,
.hd-home-page .hd-sec ul:last-child { margin-bottom: 0; }
.hd-home-page .hd-sec a { color: inherit; text-decoration: none; transition: color .2s; }
.hd-home-page .hd-sec img { display: block; max-width: 100%; }

.hd-home-page .e-con.hd-wrap { --width: 100%; max-width: 1360px; margin-inline: auto; }

.hd-home-page .hd-eyebrow .elementor-heading-title {
	font-family: var(--hd-mono); font-size: 12px; font-weight: 500; line-height: 1.4;
	letter-spacing: .14em; text-transform: uppercase; color: var(--hd-accent);
}
.hd-home-page .hd-eyebrow--gold .elementor-heading-title,
.hd-home-page .hd-hero .hd-eyebrow .elementor-heading-title,
.hd-home-page .hd-amen .hd-eyebrow .elementor-heading-title,
.hd-home-page .hd-dark .hd-eyebrow .elementor-heading-title { color: var(--hd-gold); }
.hd-home-page .hd-spot .hd-eyebrow .elementor-heading-title { color: #FBFAF7; }

.hd-home-page .hd-h1 .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(36px, 5vw, 68px);
	line-height: 1.08; letter-spacing: -.01em; color: #FBFAF7; text-wrap: balance; margin: 0;
}
.hd-home-page .hd-h1 em,
.hd-home-page .hd-display em { color: var(--hd-gold); font-style: italic; }
.hd-home-page .hd-h2 .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(28px, 3.4vw, 46px);
	line-height: 1.12; letter-spacing: -.01em; color: var(--hd-ink); margin: 0; text-wrap: balance;
}
.hd-home-page .hd-h2--xl .elementor-heading-title { font-size: clamp(32px, 4vw, 54px); line-height: 1.08; }
.hd-home-page .hd-h2--light .elementor-heading-title,
.hd-home-page .hd-dark .hd-h2 .elementor-heading-title { color: #FBFAF7; }
.hd-home-page .hd-h3 .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(26px, 2.8vw, 38px); line-height: 1.15; margin: 0; color: var(--hd-ink);
}
.hd-home-page .hd-h3--light .elementor-heading-title { color: #FBFAF7; }
.hd-home-page .hd-display .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(34px, 4.6vw, 64px); line-height: 1.08; color: #F5F2EC; margin: 0;
}

.hd-home-page .hd-text,
.hd-home-page .hd-lead { font-size: 16px; line-height: 1.65; color: #3E3B37; }
.hd-home-page .hd-lead { font-size: clamp(16px, 1.6vw, 19px); max-width: 560px; }
.hd-home-page .hd-lead--muted,
.hd-home-page .hd-head .hd-lead { color: var(--hd-muted); font-size: 16px; }
.hd-home-page .hd-text--light,
.hd-home-page .hd-text--light p { color: #FBFAF7; }
.hd-home-page .hd-text--muted-light,
.hd-home-page .hd-text--muted-light p { color: #D9DEDF; }
.hd-home-page .hd-hero .hd-text { max-width: 560px; font-size: clamp(16px, 1.6vw, 19px); }

.hd-home-page .e-con.hd-head { --row-gap: 10px; --gap: 10px; margin-bottom: 28px; max-width: 760px; }
.hd-home-page .hd-head--light .hd-h2 .elementor-heading-title { color: #FBFAF7; }

.hd-home-page .hd-btn .elementor-button {
	display: inline-flex; align-items: center; gap: 8px; min-height: 52px; padding: 0 26px;
	border-radius: 999px; font-family: var(--hd-sans); font-size: 15px; font-weight: 600; line-height: 1;
	border: 1px solid transparent; transition: transform .2s, background .2s, color .2s, border-color .2s;
	box-shadow: none; text-transform: none; letter-spacing: 0;
}
.hd-home-page .hd-btn .elementor-button:hover { transform: translateY(-2px); }
.hd-home-page .hd-btn--dark .elementor-button { background: var(--hd-deep); color: #F5F2EC; }
.hd-home-page .hd-btn--light .elementor-button { background: #FBFAF7; color: var(--hd-ink); }
.hd-home-page .hd-btn--accent .elementor-button { background: var(--hd-accent); color: #FBFAF7; }
.hd-home-page .hd-btn--ghost-light .elementor-button { background: transparent; color: #FBFAF7; border-color: rgba(251, 250, 247, .7); }
.hd-home-page .hd-btn--ghost-light .elementor-button:hover { background: #FBFAF7; color: var(--hd-ink); }
.hd-home-page .hd-btn--link .elementor-button { background: transparent; color: var(--hd-accent); padding: 0; min-height: 0; }
.hd-home-page .hd-btn--link .elementor-button:hover { transform: none; color: var(--hd-ink); }
.hd-home-page .e-con.hd-btn-row { --flex-direction: row; --flex-wrap: wrap; --gap: 10px; --row-gap: 10px; --column-gap: 10px; }

.hd-home-page .hd-sec.hd-hero-sec { --padding-top: 24px; }
.hd-home-page .e-con.hd-hero {
	--justify-content: flex-end; --padding-top: 56px; --padding-bottom: 56px; --padding-left: 56px; --padding-right: 56px;
	border-radius: var(--hd-radius); overflow: hidden; background-color: var(--hd-deep);
}
.hd-home-page .e-con.hd-hero__content { --row-gap: 18px; --gap: 18px; max-width: 820px; position: relative; z-index: 2; }

.hd-home-page .hd-sec.hd-trust-sec { --padding-top: 24px; }
.hd-home-page .e-con.hd-trust {
	--display: grid; display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1px;
	background: var(--hd-line); border: 1px solid var(--hd-line); border-radius: 20px; overflow: hidden;
}
.hd-home-page .e-con.hd-trust__item { --flex-direction: row; --align-items: center; --gap: 14px; --column-gap: 14px; --padding-top: 20px; --padding-bottom: 20px; --padding-left: 20px; --padding-right: 20px; background: var(--hd-paper); }
.hd-home-page .hd-trust__num { width: auto; flex: none; }
.hd-home-page .hd-trust__num .elementor-heading-title {
	width: 42px; height: 42px; border-radius: 50%; background: var(--hd-soft); display: flex; align-items: center; justify-content: center;
	font-family: var(--hd-mono); font-size: 12px; color: var(--hd-accent); margin: 0;
}
.hd-home-page .e-con.hd-trust__txt { --gap: 2px; --row-gap: 2px; --width: auto; flex: 1; min-width: 0; }
.hd-home-page .hd-trust__title .elementor-heading-title { font-family: var(--hd-sans); font-size: 15px; font-weight: 700; color: var(--hd-ink); margin: 0; }
.hd-home-page .hd-trust__body { font-size: 13px; line-height: 1.4; color: var(--hd-muted); }

.hd-home-page .hd-tabs__list {
	display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; scroll-snap-type: x mandatory;
	margin: 0 calc(var(--hd-px) * -1); padding: 0 var(--hd-px) 4px;
}
.hd-home-page .hd-tabs__list::-webkit-scrollbar { display: none; }
.hd-home-page .hd-chip {
	flex: none; scroll-snap-align: start; display: inline-flex; align-items: center; gap: 10px; white-space: nowrap;
	padding: 12px 18px; min-height: 46px; border-radius: 999px; border: 1px solid var(--hd-line); background: var(--hd-paper);
	color: var(--hd-ink); font: 600 15px/1 var(--hd-sans); cursor: pointer; transition: all .2s;
}
.hd-home-page .hd-chip:hover { border-color: var(--hd-deep); }
.hd-home-page .hd-chip.is-active { background: var(--hd-deep); border-color: var(--hd-deep); color: #F5F2EC; }
.hd-home-page .hd-chip__count { font: 500 11px/1 var(--hd-mono); opacity: .75; }
.hd-home-page .hd-tabs__panel { margin-top: 20px; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: var(--hd-gap); }
.hd-home-page .hd-tabs__panel[hidden] { display: none; }
.hd-home-page .hd-catcard {
	position: relative; display: flex; flex-direction: column; gap: 8px; padding: 22px; overflow: hidden;
	background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 22px; box-shadow: var(--hd-shadow);
	transition: transform .25s, box-shadow .25s, border-color .25s;
}
.hd-home-page .hd-catcard:hover { transform: translateY(-4px); box-shadow: var(--hd-shadow-hover); border-color: var(--hd-deep); }
.hd-home-page .hd-catcard__thumb { margin: -22px -22px 14px; aspect-ratio: 16/10; overflow: hidden; background: var(--hd-soft); }
.hd-home-page .hd-catcard__thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.hd-home-page .hd-catcard:hover .hd-catcard__thumb img { transform: scale(1.05); }
.hd-home-page .hd-catcard__top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; }
.hd-home-page .hd-catcard.has-thumb .hd-catcard__top { position: absolute; top: 14px; left: 14px; right: 14px; margin: 0; }
.hd-home-page .hd-catcard__idx { font: 500 12px/1 var(--hd-mono); color: var(--hd-accent); letter-spacing: .06em; }
.hd-home-page .hd-catcard.has-thumb .hd-catcard__idx { background: #FBFAF7; padding: 6px 10px; border-radius: 999px; }
.hd-home-page .hd-catcard__arrow { width: 38px; height: 38px; border-radius: 50%; background: var(--hd-deep); color: #F5F2EC; display: flex; align-items: center; justify-content: center; font-size: 15px; }
.hd-home-page .hd-catcard__name { font-family: var(--hd-serif); font-weight: 600; font-size: 21px; line-height: 1.2; color: var(--hd-ink); }
.hd-home-page .hd-catcard__count { font-size: 13px; color: var(--hd-muted); }

.hd-home-page .e-con.hd-grid { --display: grid; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--hd-gap); }
.hd-home-page .e-con.hd-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hd-home-page .e-con.hd-grid > .e-con { --width: 100%; min-width: 0; }
.hd-home-page .e-con.hd-dept { margin-top: var(--hd-gap); }

.hd-home-page .e-con.hd-card {
	background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 24px; overflow: hidden;
	box-shadow: var(--hd-shadow); transition: transform .25s, box-shadow .25s;
}
.hd-home-page .e-con.hd-card:hover { transform: translateY(-4px); box-shadow: var(--hd-shadow-hover); }
.hd-home-page .e-con.hd-card__media { position: relative; aspect-ratio: 4/3; background: repeating-linear-gradient(135deg, #E7E1D6 0 10px, #EEE9E0 10px 20px); overflow: hidden; }
.hd-home-page .e-con.hd-card__media--wide { aspect-ratio: 16/10; }
.hd-home-page .hd-card__media .hd-img--cover { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.hd-home-page .hd-card__media .hd-img--cover img,
.hd-home-page .hd-card__media .hd-img--cover .elementor-widget-container { width: 100%; height: 100%; }
.hd-home-page .hd-card__media .hd-img--cover img { object-fit: cover; transition: transform .6s; }
.hd-home-page .e-con.hd-card:hover .hd-img--cover img { transform: scale(1.05); }
.hd-home-page .hd-badge { position: absolute !important; top: 12px; left: 12px; width: auto !important; z-index: 2; pointer-events: none; }
.hd-home-page .hd-badge .elementor-heading-title {
	width: 44px; height: 44px; border-radius: 50%; background: var(--hd-accent); color: #FBFAF7; margin: 0;
	display: flex; align-items: center; justify-content: center; font: 500 13px/1 var(--hd-mono); box-shadow: 0 6px 16px rgba(0, 0, 0, .18);
}
.hd-home-page .hd-badge--light .elementor-heading-title { width: auto; height: auto; padding: 7px 11px; border-radius: 999px; background: #FBFAF7; color: var(--hd-ink); }
.hd-home-page .e-con.hd-card__body { --padding-top: 22px; --padding-bottom: 22px; --padding-left: 22px; --padding-right: 22px; --row-gap: 12px; --gap: 12px; flex: 1; }
.hd-home-page .hd-card__title .elementor-heading-title { font-family: var(--hd-serif); font-weight: 600; font-size: 21px; line-height: 1.2; margin: 0; color: var(--hd-ink); }
.hd-home-page .hd-card__title--lg .elementor-heading-title { font-size: 24px; }
.hd-home-page .hd-card__title a:hover { color: var(--hd-accent); }
.hd-home-page .hd-card__text { font-size: 15px; line-height: 1.55; color: var(--hd-muted); }
.hd-home-page .hd-card--dept .hd-btn--link { margin-top: auto; padding-top: 14px; border-top: 1px solid #EEE8DE; }
.hd-home-page .hd-card--dept .hd-btn--link .elementor-button { font-size: 14px; color: var(--hd-ink); }

.hd-home-page .hd-tags { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.hd-home-page .hd-tags li { margin: 0; padding: 7px 12px; border-radius: 999px; background: var(--hd-soft); color: #2E2B27; font-size: 13px; font-weight: 500; line-height: 1.3; }

.hd-home-page .e-con.hd-amen {
	--padding-top: clamp(20px, 4vw, 48px); --padding-bottom: clamp(20px, 4vw, 48px); --padding-left: clamp(20px, 4vw, 48px); --padding-right: clamp(20px, 4vw, 48px);
	--row-gap: 36px; --gap: 36px; background: var(--hd-deep); color: #F5F2EC; border-radius: var(--hd-radius);
}
.hd-home-page .e-con.hd-amen__head { --flex-direction: row; --flex-wrap: wrap; --justify-content: space-between; --align-items: flex-end; --gap: 20px; --row-gap: 20px; --column-gap: 20px; }
.hd-home-page .e-con.hd-amen__intro { --row-gap: 12px; --gap: 12px; --width: auto; max-width: 620px; }
.hd-home-page .e-con.hd-card--amen { border-color: transparent; background: #F5F2EC; }

.hd-home-page .e-con.hd-equip {
	margin-top: var(--hd-gap); --row-gap: 18px; --gap: 18px; background: #EFE9DF; border-radius: var(--hd-radius);
	--padding-top: clamp(22px, 3.5vw, 40px); --padding-bottom: clamp(22px, 3.5vw, 40px); --padding-left: clamp(22px, 3.5vw, 40px); --padding-right: clamp(22px, 3.5vw, 40px);
}
.hd-home-page .e-con.hd-equip__head { --flex-direction: row; --flex-wrap: wrap; --justify-content: space-between; --align-items: flex-end; --gap: 12px; --row-gap: 12px; --column-gap: 12px; }
.hd-home-page .hd-equip .hd-h3 .elementor-heading-title { font-size: clamp(22px, 2.2vw, 30px); }
.hd-home-page .hd-equip .hd-tags li { background: var(--hd-paper); border: 1px solid var(--hd-line); padding: 12px 18px; font-size: 15px; }

.hd-home-page .e-con.hd-coll,
.hd-home-page .e-con.hd-custom {
	--justify-content: flex-end; --row-gap: 6px; --gap: 6px;
	--padding-top: 22px; --padding-bottom: 22px; --padding-left: 22px; --padding-right: 22px;
	border-radius: 24px; overflow: hidden; background-color: #E7E1D6; transition: transform .3s, box-shadow .3s;
}
.hd-home-page .e-con.hd-coll { aspect-ratio: 3/4; }
.hd-home-page .e-con.hd-coll:hover,
.hd-home-page .e-con.hd-custom:hover { transform: translateY(-4px); box-shadow: var(--hd-shadow-hover); }
.hd-home-page .hd-coll > .elementor-element,
.hd-home-page .hd-custom > .elementor-element { position: relative; z-index: 2; }
.hd-home-page .hd-coll__title .elementor-heading-title { font-family: var(--hd-serif); font-weight: 600; font-size: 22px; line-height: 1.2; color: #FBFAF7; margin: 0; }
.hd-home-page .hd-coll__cta .elementor-heading-title { font-size: 14px; font-weight: 600; color: #FBFAF7; margin: 0; }
.hd-home-page .e-con.hd-custom { --flex-direction: row; --align-items: flex-end; --justify-content: space-between; --column-gap: 12px; aspect-ratio: 4/3; }
.hd-home-page .hd-custom__title .elementor-heading-title { font-family: var(--hd-serif); font-weight: 600; font-size: 22px; line-height: 1.2; color: #FBFAF7; margin: 0; }
.hd-home-page .hd-round-arrow { width: auto !important; flex: none; }
.hd-home-page .hd-round-arrow .elementor-heading-title { width: 42px; height: 42px; border-radius: 50%; background: #FBFAF7; color: var(--hd-ink); display: flex; align-items: center; justify-content: center; font-size: 16px; margin: 0; }

.hd-home-page .hd-sec.hd-dark { background: var(--hd-deep); color: #F5F2EC; --padding-bottom: var(--hd-space); margin-top: var(--hd-space); }
.hd-home-page .hd-products .products,
.hd-home-page .hd-products .wd-products { --wd-gap: var(--hd-gap); }
.hd-home-page .hd-products .product-grid-item,
.hd-home-page .hd-products li.product {
	background: var(--hd-paper); border-radius: 20px; overflow: hidden; padding-bottom: 14px; transition: transform .25s, box-shadow .25s;
}
.hd-home-page .hd-products .product-grid-item:hover,
.hd-home-page .hd-products li.product:hover { transform: translateY(-4px); box-shadow: 0 24px 48px -20px rgba(0, 0, 0, .55); }
.hd-home-page .hd-products .product-grid-item .product-element-bottom,
.hd-home-page .hd-products li.product .woocommerce-loop-product__title { padding-inline: 14px; }
.hd-home-page .hd-products .wd-entities-title,
.hd-home-page .hd-products .wd-entities-title a,
.hd-home-page .hd-products .woocommerce-loop-product__title { color: var(--hd-ink); font-family: var(--hd-sans); font-weight: 600; }
.hd-home-page .hd-products .price,
.hd-home-page .hd-products .price .amount { color: var(--hd-ink); }
.hd-home-page .hd-products .onsale,
.hd-home-page .hd-products .product-label.onsale { background: var(--hd-accent); color: #FBFAF7; border-radius: 999px; }
.hd-home-page .hd-products .add_to_cart_button,
.hd-home-page .hd-products .button { border-radius: 999px; background: var(--hd-deep); color: #F5F2EC; }

.hd-home-page .e-con.hd-split { --display: grid; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 56px; align-items: center; }
.hd-home-page .e-con.hd-split--end { align-items: end; gap: 20px 40px; margin-bottom: 32px; }
.hd-home-page .hd-split--end .hd-head { margin-bottom: 0; }
.hd-home-page .e-con.hd-stack { --row-gap: 18px; --gap: 18px; }
.hd-home-page .hd-img--rounded img { width: 100%; aspect-ratio: 5/4; object-fit: cover; border-radius: var(--hd-radius); }

.hd-home-page .e-con.hd-card--pillar { --padding-top: 26px; --padding-bottom: 26px; --padding-left: 26px; --padding-right: 26px; --row-gap: 14px; --gap: 14px; }
.hd-home-page .e-con.hd-pillar__top { --flex-direction: row; --justify-content: space-between; --align-items: center; }
.hd-home-page .hd-icon { width: auto !important; }
.hd-home-page .hd-icon img { width: 64px; height: 64px; padding: 14px; border-radius: 20px; background: var(--hd-soft); object-fit: contain; }
.hd-home-page .hd-num .elementor-heading-title { font: 500 12px/1 var(--hd-mono); color: var(--hd-accent); margin: 0; }

.hd-home-page .e-con.hd-spot { --display: grid; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); background: var(--hd-accent); border-radius: var(--hd-radius); overflow: hidden; }
.hd-home-page .e-con.hd-spot__text { --justify-content: center; --row-gap: 18px; --gap: 18px; --padding-top: clamp(28px, 5vw, 72px); --padding-bottom: clamp(28px, 5vw, 72px); --padding-left: clamp(28px, 5vw, 72px); --padding-right: clamp(28px, 5vw, 72px); }
.hd-home-page .e-con.hd-spot__media { aspect-ratio: 1/1; background-color: #E7E1D6; }

.hd-home-page .hd-sec.hd-clients-sec { --padding-bottom: 0px; }
.hd-home-page .e-con.hd-logos { --display: grid; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 1px; background: var(--hd-line); border: 1px solid var(--hd-line); border-radius: 20px; overflow: hidden; }
.hd-home-page .e-con.hd-logo { --justify-content: center; --align-items: center; --padding-top: 16px; --padding-bottom: 16px; --padding-left: 16px; --padding-right: 16px; background: var(--hd-paper); aspect-ratio: 3/2; }
.hd-home-page .hd-logo__img img { max-height: 60px; width: auto; margin: 0 auto; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .3s, opacity .3s; }
.hd-home-page .e-con.hd-logo:hover .hd-logo__img img { filter: none; opacity: 1; }
.hd-home-page .e-con.hd-review {
	margin-top: 20px; --row-gap: 14px; --gap: 14px; background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 20px;
	--padding-top: clamp(22px, 4vw, 40px); --padding-bottom: clamp(22px, 4vw, 40px); --padding-left: clamp(22px, 4vw, 40px); --padding-right: clamp(22px, 4vw, 40px);
}
.hd-home-page .hd-stars { color: var(--hd-accent); letter-spacing: .1em; font-size: 18px; margin: 0; }
.hd-home-page .hd-quote blockquote { margin: 0; padding: 0; border: 0; font-family: var(--hd-serif); font-style: normal; font-size: clamp(19px, 2vw, 26px); line-height: 1.4; font-style: italic; color: var(--hd-ink); max-width: 920px; }
.hd-home-page .hd-quote blockquote::before { display: none; }
.hd-home-page .hd-cite { font-size: 14px; }
.hd-home-page .hd-cite a { text-decoration: underline; }

.hd-home-page .hd-sec.hd-close-sec { background: var(--hd-bg); margin-top: 0; --padding-top: var(--hd-space); --padding-bottom: var(--hd-space); }
.hd-home-page .e-con.hd-close {
	--row-gap: 28px; --gap: 28px; --align-items: flex-start; --justify-content: center;
	background: var(--hd-deep); border-radius: var(--hd-radius); overflow: hidden;
	--padding-top: clamp(36px, 6vw, 88px); --padding-bottom: clamp(36px, 6vw, 88px); --padding-left: clamp(24px, 6vw, 88px); --padding-right: clamp(24px, 6vw, 88px);
}
.hd-home-page .e-con.hd-close .hd-btn-row { --width: auto; }

@media (max-width: 1024px) {
	.hd-home-page .hd-sec { --hd-px: 24px; --hd-space: 80px; }
	.hd-home-page .e-con.hd-hero { --padding-top: 40px; --padding-bottom: 40px; --padding-left: 40px; --padding-right: 40px; }
	.hd-home-page .e-con.hd-trust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-split { gap: 36px; }
}

@media (max-width: 767px) {
	.hd-home-page .hd-sec { --hd-px: 16px; --hd-space: 64px; --hd-gap: 12px; --hd-radius: 20px; }
	.hd-home-page .hd-sec.hd-hero-sec { --padding-top: 12px; --padding-left: 12px; --padding-right: 12px; }
	.hd-home-page .e-con.hd-hero { --padding-top: 24px; --padding-bottom: 24px; --padding-left: 20px; --padding-right: 20px; }
	.hd-home-page .hd-btn .elementor-button { min-height: 48px; padding: 0 20px; font-size: 14px; }
	.hd-home-page .e-con.hd-trust { grid-template-columns: 1fr; }
	.hd-home-page .e-con.hd-grid,
.hd-home-page .e-con.hd-grid--3 { grid-template-columns: 1fr; }
	.hd-home-page .e-con.hd-split,
.hd-home-page .e-con.hd-spot { grid-template-columns: 1fr; gap: 28px; }
	.hd-home-page .e-con.hd-spot { gap: 0; }
	.hd-home-page .e-con.hd-logos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hd-home-page .hd-catcard__name,
.hd-home-page .hd-card__title--lg .elementor-heading-title { font-size: 20px; }

	
	.hd-home-page .e-con.hd-rail {
		--display: flex; display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
		margin-inline: calc(var(--hd-px) * -1); padding-inline: var(--hd-px); gap: 10px;
	}
	.hd-home-page .e-con.hd-rail::-webkit-scrollbar { display: none; }
	.hd-home-page .e-con.hd-rail > .e-con { flex: 0 0 78%; --width: 78%; scroll-snap-align: start; }

	
	.hd-home-page .hd-tabs__panel { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.hd-home-page .hd-catcard { padding: 16px; border-radius: 18px; }
	.hd-home-page .hd-catcard__thumb { margin: -16px -16px 10px; }
	.hd-home-page .hd-catcard__name { font-size: 17px; }
	.hd-home-page .hd-catcard__arrow { width: 30px; height: 30px; font-size: 13px; }

	
	.hd-home-page .hd-products .products,
.hd-home-page .hd-products .wd-products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (prefers-reduced-motion: reduce) {
	.hd-home-page .hd-sec *,
.hd-home-page .hd-sec *::before,
.hd-home-page .hd-sec *::after { transition: none !important; }
}

.hd-home-page .e-con.hd-trust__item { flex-direction: row !important; align-items: center !important; justify-content: flex-start !important; text-align: left; }
.hd-home-page .e-con.hd-trust__txt { align-items: flex-start !important; text-align: left; }
.hd-home-page .e-con.hd-trust__item > .elementor-widget,
.hd-home-page .e-con.hd-trust__txt > .elementor-widget { width: auto; margin: 0; }
.hd-home-page .e-con.hd-trust__txt { flex: 1 1 auto !important; width: auto !important; }
.hd-home-page .e-con.hd-btn-row,
.hd-home-page .e-con.hd-amen__head,
.hd-home-page .e-con.hd-equip__head,
.hd-home-page .e-con.hd-custom,
.hd-home-page .e-con.hd-pillar__top { flex-direction: row !important; }

.hd-home-page .hd-sec,
.hd-home-page .hd-sec p,
.hd-home-page .hd-sec li,
.hd-home-page .hd-sec .elementor-widget-text-editor,
.hd-home-page .hd-sec .elementor-button { font-family: var(--hd-sans); }
.hd-home-page .hd-sec .elementor-heading-title { text-transform: none; }
.hd-home-page .hd-sec .hd-eyebrow .elementor-heading-title { text-transform: uppercase; }
.hd-home-page .hd-tabs-empty { padding: 20px; border: 1px dashed var(--hd-line); border-radius: 16px; color: var(--hd-muted); }
.hd-home-page .e-con.hd-amen__head,
.hd-home-page .e-con.hd-equip__head { --align-items: flex-end; --justify-content: space-between; }
.hd-home-page .e-con.hd-amen__intro,
.hd-home-page .e-con.hd-head,
.hd-home-page .e-con.hd-stack,
.hd-home-page .e-con.hd-hero__content,
.hd-home-page .e-con.hd-card__body,
.hd-home-page .e-con.hd-trust__txt,
.hd-home-page .e-con.hd-close { --align-items: flex-start; text-align: left; }
.hd-home-page .e-con.hd-amen__intro > .elementor-widget,
.hd-home-page .e-con.hd-head > .elementor-widget,
.hd-home-page .e-con.hd-close > .elementor-widget { width: 100%; }
.hd-home-page .e-con.hd-btn-row { --align-items: center; --justify-content: flex-start; }
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-amen__head,
.hd-home-page .e-con.hd-equip__head { --align-items: flex-start; }
}


/* =====================================================================
   ABOUT PAGE (elementor/hotelduniya-about.json) – reuses the hd-* system above
   ===================================================================== */
.hd-home-page .e-con.hd-split--top { align-items: start; gap: clamp(24px, 5vw, 72px); }
.hd-home-page .e-con.hd-split--top > .e-con { --width: 100%; min-width: 0; }
.hd-home-page .hd-prose,
.hd-home-page .hd-prose p { font-size: 17px; line-height: 1.7; color: #3E3B37; text-wrap: pretty; }
.hd-home-page .hd-prose p { margin: 0 0 18px; }
.hd-home-page .hd-prose--light,
.hd-home-page .hd-prose--light p { color: #D9DEDF; font-size: 16px; line-height: 1.65; }
.hd-home-page .hd-statement,
.hd-home-page .hd-statement p { font-family: var(--hd-serif); font-size: clamp(20px, 2vw, 26px); line-height: 1.4; color: var(--hd-ink); margin: 0; text-wrap: pretty; }
.hd-home-page .hd-statement { margin-bottom: 18px; }
.hd-home-page .hd-statement--italic p { font-style: italic; font-size: 20px; }
.hd-home-page .hd-statement--rule { padding-top: 16px; border-top: 1px solid var(--hd-line); }

/* Journey */
.hd-home-page .e-con.hd-years { --display: grid; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--hd-gap); }
.hd-home-page .e-con.hd-year {
	--width: 100%; min-width: 0; --row-gap: 16px; --gap: 16px; background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 24px;
	--padding-top: clamp(24px, 3.5vw, 40px); --padding-bottom: clamp(24px, 3.5vw, 40px); --padding-left: clamp(24px, 3.5vw, 40px); --padding-right: clamp(24px, 3.5vw, 40px);
}
.hd-home-page .e-con.hd-year--dark { background: var(--hd-deep); border-color: var(--hd-deep); }
.hd-home-page .e-con.hd-year__top { --flex-direction: row; --align-items: center; --column-gap: 14px; --gap: 14px; flex-direction: row !important; align-items: center !important; }
.hd-home-page .e-con.hd-year__top > .elementor-widget { width: auto; }
.hd-home-page .hd-year__num .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(48px, 6vw, 80px); line-height: 1; color: var(--hd-accent); margin: 0; }
.hd-home-page .hd-year--dark .hd-year__num .elementor-heading-title { color: var(--hd-gold); }
.hd-home-page .hd-year__tag .elementor-heading-title { font: 500 11px/1.4 var(--hd-mono); letter-spacing: .14em; text-transform: uppercase; color: var(--hd-muted); margin: 0; }
.hd-home-page .hd-year--dark .hd-year__tag .elementor-heading-title { color: #D9DEDF; }
.hd-home-page .hd-year .hd-prose,
.hd-home-page .hd-year .hd-prose p { font-size: 16px; line-height: 1.65; }
.hd-home-page .hd-year .hd-prose p { margin-bottom: 14px; }
.hd-home-page .hd-year--dark .hd-prose,
.hd-home-page .hd-year--dark .hd-prose p { color: #D9DEDF; }
.hd-home-page .hd-pullquote,
.hd-home-page .hd-pullquote p { max-width: 980px; margin: clamp(32px, 4vw, 56px) auto 0; text-align: center; font-family: var(--hd-serif); font-style: italic; font-size: clamp(22px, 2.6vw, 34px); line-height: 1.35; color: var(--hd-ink); text-wrap: balance; }
.hd-home-page .hd-pullquote p { margin: 0 auto; }

/* Vision & mission */
.hd-home-page .e-con.hd-vm { --display: grid; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--hd-gap); align-items: stretch; }
.hd-home-page .e-con.hd-vision,
.hd-home-page .e-con.hd-mission {
	--width: 100%; min-width: 0; --row-gap: 18px; --gap: 18px; border-radius: var(--hd-radius); --align-items: flex-start; text-align: left;
	--padding-top: clamp(28px, 4.5vw, 56px); --padding-bottom: clamp(28px, 4.5vw, 56px); --padding-left: clamp(28px, 4.5vw, 56px); --padding-right: clamp(28px, 4.5vw, 56px);
}
.hd-home-page .e-con.hd-vision { background: var(--hd-accent); color: #FBFAF7; }
.hd-home-page .e-con.hd-mission { background: var(--hd-paper); border: 1px solid var(--hd-line); }
.hd-home-page .e-con.hd-vision > .elementor-widget,
.hd-home-page .e-con.hd-mission > .elementor-widget { width: 100%; }
.hd-home-page .hd-vision .hd-eyebrow .elementor-heading-title { color: #FBFAF7; }
.hd-home-page .hd-vision__lead .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(24px, 2.6vw, 34px); line-height: 1.25; color: #FBFAF7; margin: 0; text-wrap: pretty; }
.hd-home-page .hd-vision__body { margin-top: auto; padding-top: 20px; border-top: 1px solid rgba(251, 250, 247, .35); }
.hd-home-page .hd-vision__body,
.hd-home-page .hd-vision__body p { color: #FBFAF7; font-size: 16px; line-height: 1.65; }
.hd-home-page .hd-vision__body p { margin: 0 0 12px; }
.hd-home-page .hd-numlist ol { list-style: none; margin: 0; padding: 0; counter-reset: hdn; }
.hd-home-page .hd-numlist li {
	counter-increment: hdn; display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; margin: 0;
	padding: 14px 0; border-top: 1px solid #EEE8DE; font-size: 16px; line-height: 1.55; color: #3E3B37;
}
.hd-home-page .hd-numlist li::before { content: counter(hdn, decimal-leading-zero); font: 500 12px/1.9 var(--hd-mono); color: var(--hd-accent); }

/* Why hoteliers choose us: heading cell + 7 cards in a 4-col grid */
.hd-home-page .e-con.hd-why-head { --justify-content: flex-end; --row-gap: 10px; --gap: 10px; min-height: 200px; --align-items: flex-start; }
.hd-home-page .e-con.hd-why-head > .elementor-widget { width: 100%; }
.hd-home-page .e-con.hd-reason { --padding-top: 26px; --padding-bottom: 26px; --padding-left: 26px; --padding-right: 26px; --row-gap: 12px; --gap: 12px; min-height: 200px; --align-items: flex-start; }
.hd-home-page .e-con.hd-reason > .elementor-widget { width: 100%; }
.hd-home-page .e-con.hd-reason > .hd-trust__num { width: auto; }
.hd-home-page .e-con.hd-reason .hd-card__title { margin-top: auto; }

/* Team image */
.hd-home-page .hd-img--placeholder img { background: repeating-linear-gradient(135deg, #E7E1D6 0 10px, #EEE9E0 10px 20px); }

/* Products list */
.hd-home-page .hd-plist ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 260px), 1fr)); gap: 10px; }
.hd-home-page .hd-plist li {
	display: flex; align-items: center; gap: 12px; margin: 0; padding: 16px 18px; background: var(--hd-paper);
	border: 1px solid var(--hd-line); border-radius: 16px; font-size: 15px; font-weight: 600; line-height: 1.35; color: var(--hd-ink);
}
.hd-home-page .hd-plist li::before { content: ""; flex: none; width: 8px; height: 8px; border-radius: 2px; background: var(--hd-accent); }
.hd-home-page .hd-small,
.hd-home-page .hd-small p { font-size: 14px; line-height: 1.55; color: var(--hd-muted); }

/* Partner / closing */
.hd-home-page .e-con.hd-partner { --display: grid; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(32px, 5vw, 72px); width: 100%; }
.hd-home-page .e-con.hd-partner > .e-con { --width: 100%; min-width: 0; --row-gap: 18px; --gap: 18px; --align-items: flex-start; text-align: left; }
.hd-home-page .e-con.hd-partner > .e-con > .elementor-widget { width: 100%; }
.hd-home-page .e-con.hd-partner__right { --justify-content: space-between; --row-gap: 28px; --gap: 28px; }
.hd-home-page .hd-principles ul { list-style: none; margin: 0; padding: 0; border-top: 1px solid rgba(251, 250, 247, .2); counter-reset: hdp; }
.hd-home-page .hd-principles li {
	counter-increment: hdp; display: flex; align-items: baseline; gap: 18px; margin: 0; padding: 16px 0; border-bottom: 1px solid rgba(251, 250, 247, .2);
	font-family: var(--hd-serif); font-size: clamp(32px, 4vw, 52px); line-height: 1.05; color: #FBFAF7;
}
.hd-home-page .hd-principles li::before { content: counter(hdp, decimal-leading-zero); font: 500 12px/1 var(--hd-mono); color: var(--hd-gold); }
.hd-home-page .e-con.hd-signoff {
	--flex-direction: row; --flex-wrap: wrap; --justify-content: space-between; --align-items: flex-end; --gap: 24px; --row-gap: 24px; --column-gap: 24px;
	flex-direction: row !important; width: 100%; padding-top: clamp(28px, 4vw, 48px); border-top: 1px solid rgba(251, 250, 247, .2);
}
.hd-home-page .e-con.hd-signoff__text { --width: auto; --row-gap: 8px; --gap: 8px; --align-items: flex-start; }
.hd-home-page .hd-signoff__title .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(26px, 3vw, 40px); line-height: 1.15; color: #FBFAF7; margin: 0; }
.hd-home-page .hd-signoff__title em { color: var(--hd-gold); }

@media (max-width: 1024px) {
	.hd-home-page .e-con.hd-split--top,
	.hd-home-page .e-con.hd-vm,
	.hd-home-page .e-con.hd-partner { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-years { grid-template-columns: 1fr; }
	.hd-home-page .e-con.hd-why-head,
	.hd-home-page .e-con.hd-reason { min-height: 0; }
	.hd-home-page .hd-prose, .hd-home-page .hd-prose p { font-size: 16px; }
	.hd-home-page .hd-principles li { font-size: 34px; }
}

/* About page – images (v2) */
.hd-home-page .e-con.hd-mosaic { --display: grid; display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); grid-template-rows: 1fr 1fr; gap: 12px; margin-top: 22px; width: 100%; }
.hd-home-page .e-con.hd-mosaic > .e-con { --width: 100%; min-width: 0; border-radius: 24px; overflow: hidden; background-color: #E7E1D6; }
.hd-home-page .e-con.hd-mosaic__lg { grid-row: span 2; aspect-ratio: 4/5; }
.hd-home-page .e-con.hd-mosaic__sm { aspect-ratio: 1/1; }
.hd-home-page .e-con.hd-year { --padding-top: 0px; --padding-left: 0px; --padding-right: 0px; overflow: hidden; }
.hd-home-page .e-con.hd-year > :not(.hd-year__img) { margin-inline: clamp(24px, 3.5vw, 40px); width: auto; }
.hd-home-page .hd-year__img img { width: 100%; aspect-ratio: 16/9; object-fit: cover; background: #E7E1D6; }
.hd-home-page .e-con.hd-reason--img { min-height: 200px; border: 0; background-color: #E7E1D6; }
.hd-home-page .hd-why-sec .e-con.hd-grid,
.hd-home-page .hd-whyus-sec .e-con.hd-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.hd-home-page .hd-team-sec .e-con.hd-split { align-items: stretch; }
.hd-home-page .hd-img--fill { position: relative; min-height: 420px; }
.hd-home-page .hd-img--fill .elementor-widget-container,
.hd-home-page .hd-img--fill img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: var(--hd-radius); }
.hd-home-page .e-con.hd-plist-row { --flex-direction: row; --flex-wrap: wrap; --gap: 16px; --row-gap: 16px; --column-gap: 16px; flex-direction: row !important; flex-wrap: wrap !important; align-items: stretch; width: 100%; }
.hd-home-page .e-con.hd-plist-row__img { flex: 1 1 300px; min-height: 320px; border-radius: 24px; overflow: hidden; background-color: #E7E1D6; }
.hd-home-page .e-con.hd-plist-row__list { flex: 2 1 480px; min-width: 0; }
.hd-home-page .hd-plist ul { grid-template-columns: repeat(auto-fill, minmax(min(100%, 240px), 1fr)); }
@media (max-width: 1024px) {
	.hd-home-page .hd-whyus-sec .e-con.hd-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-split--top { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.hd-home-page .hd-whyus-sec .e-con.hd-grid,
	.hd-home-page .e-con.hd-split--top { grid-template-columns: 1fr; }
	.hd-home-page .hd-img--fill { min-height: 300px; }
}


/* =====================================================================
   RESPONSIVE UPGRADE v2 – larger mobile type, 44px+ targets, tighter rhythm
   ===================================================================== */
.hd-home-page .hd-sec * { box-sizing: border-box; }
.hd-home-page .hd-tabs__list { margin-inline: 0; padding-inline: 0; }

@media (max-width: 1024px) {
	.hd-home-page .hd-h1 .elementor-heading-title { font-size: clamp(36px, 6vw, 56px); }
	.hd-home-page .hd-h2 .elementor-heading-title { font-size: clamp(30px, 4.4vw, 40px); }
	.hd-home-page .e-con.hd-hero { min-height: 560px; }
	.hd-home-page .e-con.hd-grid--4,
	.hd-home-page .hd-products .products,
	.hd-home-page .hd-products .wd-products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 767px) {
	.hd-home-page .hd-sec { --hd-px: 16px; --hd-space: 56px; --hd-gap: 14px; --hd-radius: 22px; }
	.hd-home-page .e-con.hd-wrap { max-width: 100%; }

	/* Type: never smaller than 15px body / 12px labels */
	.hd-home-page .hd-eyebrow .elementor-heading-title { font-size: 12px; letter-spacing: .12em; }
	.hd-home-page .hd-h1 .elementor-heading-title { font-size: 38px; line-height: 1.08; }
	.hd-home-page .hd-h2 .elementor-heading-title,
	.hd-home-page .hd-h2--xl .elementor-heading-title { font-size: 30px; line-height: 1.15; }
	.hd-home-page .hd-h3 .elementor-heading-title { font-size: 26px; }
	.hd-home-page .hd-display .elementor-heading-title { font-size: 36px; }
	.hd-home-page .hd-text,
	.hd-home-page .hd-lead,
	.hd-home-page .hd-hero .hd-text,
	.hd-home-page .hd-card__text,
	.hd-home-page .hd-prose,
	.hd-home-page .hd-prose p { font-size: 16px; line-height: 1.6; }
	.hd-home-page .hd-card__title .elementor-heading-title,
	.hd-home-page .hd-coll__title .elementor-heading-title,
	.hd-home-page .hd-custom__title .elementor-heading-title { font-size: 22px; }
	.hd-home-page .hd-tags li { font-size: 14px; padding: 8px 13px; }

	/* Hero */
	.hd-home-page .e-con.hd-hero { min-height: 520px; --padding-top: 28px; --padding-bottom: 28px; --padding-left: 20px; --padding-right: 20px; }
	.hd-home-page .e-con.hd-hero__content { --row-gap: 14px; --gap: 14px; }
	.hd-home-page .hd-hero .hd-btn-row { width: 100%; }
	.hd-home-page .hd-hero .hd-btn-row > .elementor-widget { flex: 1 1 100%; width: 100%; }
	.hd-home-page .hd-hero .hd-btn .elementor-button,
	.hd-home-page .hd-close .hd-btn .elementor-button,
	.hd-home-page .hd-spot .hd-btn .elementor-button,
	.hd-home-page .hd-amen__head .hd-btn .elementor-button { width: 100%; justify-content: center; }
	.hd-home-page .hd-btn .elementor-button { min-height: 50px; font-size: 15px; }

	/* Trust strip */
	.hd-home-page .e-con.hd-trust__item { --padding-top: 16px; --padding-bottom: 16px; --padding-left: 16px; --padding-right: 16px; }
	.hd-home-page .hd-trust__title .elementor-heading-title { font-size: 16px; }
	.hd-home-page .hd-trust__body { font-size: 14px; }

	/* Category tabs */
	.hd-home-page .hd-tabs__list { margin-inline: calc(var(--hd-px) * -1); padding-inline: var(--hd-px); }
	.hd-home-page .hd-chip { min-height: 46px; font-size: 15px; padding: 10px 16px; }
	.hd-home-page .hd-tabs__panel { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.hd-home-page .hd-catcard__name { font-size: 18px; }
	.hd-home-page .hd-catcard__count { font-size: 13px; }

	/* Amenities / department / collection grids → swipe rails */
	.hd-home-page .e-con.hd-amen { --padding-top: 22px; --padding-bottom: 22px; --padding-left: 16px; --padding-right: 16px; --row-gap: 24px; --gap: 24px; }
	.hd-home-page .e-con.hd-amen__head > .elementor-widget,
	.hd-home-page .e-con.hd-amen__intro { width: 100%; }
	.hd-home-page .e-con.hd-amen .hd-grid,
	.hd-home-page .e-con.hd-grid.hd-dept,
	.hd-home-page .hd-coll-sec .e-con.hd-grid {
		--display: flex; display: flex !important; flex-wrap: nowrap; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
		gap: 12px; margin-inline: calc(var(--hd-px) * -1); padding-inline: var(--hd-px); padding-bottom: 4px;
	}
	.hd-home-page .e-con.hd-amen .hd-grid { margin-inline: -16px; padding-inline: 16px; }
	.hd-home-page .e-con.hd-amen .hd-grid::-webkit-scrollbar,
	.hd-home-page .e-con.hd-grid.hd-dept::-webkit-scrollbar,
	.hd-home-page .hd-coll-sec .e-con.hd-grid::-webkit-scrollbar { display: none; }
	.hd-home-page .e-con.hd-amen .hd-grid > .e-con,
	.hd-home-page .e-con.hd-grid.hd-dept > .e-con { flex: 0 0 84%; --width: 84%; scroll-snap-align: start; }
	.hd-home-page .hd-coll-sec .e-con.hd-grid > .e-con { flex: 0 0 72%; --width: 72%; scroll-snap-align: start; }

	/* Equipment */
	.hd-home-page .hd-equip .hd-tags li { font-size: 14px; padding: 10px 14px; }

	/* Products */
	.hd-home-page .hd-products .products,
	.hd-home-page .hd-products .wd-products { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
	.hd-home-page .hd-products .wd-entities-title,
	.hd-home-page .hd-products .woocommerce-loop-product__title { font-size: 14px !important; line-height: 1.35 !important; }
	.hd-home-page .hd-products .price { font-size: 15px !important; }

	/* Why / customisation / spotlight / clients */
	.hd-home-page .e-con.hd-card--pillar { --padding-top: 20px; --padding-bottom: 20px; --padding-left: 20px; --padding-right: 20px; }
	.hd-home-page .e-con.hd-custom { aspect-ratio: 16/10; }
	.hd-home-page .e-con.hd-spot__media { aspect-ratio: 4/3; }
	.hd-home-page .e-con.hd-logo { aspect-ratio: 2/1; }
	.hd-home-page .hd-logo__img img { max-height: 44px; }
	.hd-home-page .hd-quote blockquote { font-size: 20px; }
	.hd-home-page .e-con.hd-close { --padding-top: 36px; --padding-bottom: 36px; --padding-left: 22px; --padding-right: 22px; }
	.hd-home-page .e-con.hd-close .hd-btn-row { width: 100%; }
	.hd-home-page .e-con.hd-close .hd-btn-row > .elementor-widget { flex: 1 1 100%; width: 100%; }

	/* About page */
	.hd-home-page .hd-principles li { font-size: 32px; }
	.hd-home-page .hd-pullquote, .hd-home-page .hd-pullquote p { font-size: 22px; }
}

@media (max-width: 380px) {
	.hd-home-page .hd-h1 .elementor-heading-title { font-size: 34px; }
	.hd-home-page .hd-tabs__panel { grid-template-columns: 1fr; }
}


/* =====================================================================
   LAYOUT HARDENING v3 – Woodmart wrapper + Elementor defaults
   ===================================================================== */
/* Let hd sections use the full screen width (Woodmart wraps page content in .container) */
body.hd-home-page .main-page-wrapper > .container,
body.hd-home-page .main-page-wrapper .wd-content-layout,
body.hd-home-page .main-page-wrapper .content-layout-wrapper,
body.hd-home-page .main-page-wrapper .site-content {
	max-width: 100% !important; width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; margin-left: 0 !important; margin-right: 0 !important;
}
body.hd-home-page .main-page-wrapper .site-content > .elementor,
body.hd-home-page .main-page-wrapper .entry-content { margin: 0 !important; padding: 0 !important; max-width: 100% !important; }
body.hd-home-page .main-page-wrapper .row { margin-left: 0; margin-right: 0; }
body.hd-home-page .main-page-wrapper { overflow-x: clip; }
.hd-home-page .e-con.hd-sec { width: 100%; max-width: 100%; overflow-x: clip; }
.hd-home-page .e-con.hd-sec > .e-con.hd-wrap { --width: 100%; width: 100%; }
.hd-home-page .hd-sec .elementor-widget { --kit-widget-spacing: 0px; margin-block-end: 0; }
.hd-home-page .hd-sec .elementor-widget-image img { height: auto; }
.hd-home-page .hd-card__media .hd-img--cover img,
.hd-home-page .hd-img--fill img { height: 100%; }

/* Tablet (768–1024): readable 2-up grids */
@media (min-width: 768px) and (max-width: 1024px) {
	.hd-home-page .hd-sec { --hd-px: 24px; --hd-space: 80px; }
	.hd-home-page .e-con.hd-grid,
	.hd-home-page .e-con.hd-grid--3,
	.hd-home-page .e-con.hd-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.hd-home-page .e-con.hd-logos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hd-home-page .e-con.hd-split,
	.hd-home-page .e-con.hd-spot { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; }
	.hd-home-page .e-con.hd-spot { gap: 0; }
	.hd-home-page .hd-text, .hd-home-page .hd-lead, .hd-home-page .hd-card__text { font-size: 16px; }
	.hd-home-page .hd-tabs__panel { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

/* Phones: single column everywhere except rails / 2-up product & category grids */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-split,
	.hd-home-page .e-con.hd-spot,
	.hd-home-page .e-con.hd-years,
	.hd-home-page .e-con.hd-vm,
	.hd-home-page .e-con.hd-partner,
	.hd-home-page .e-con.hd-split--top { grid-template-columns: minmax(0, 1fr) !important; }
	.hd-home-page .e-con.hd-trust { grid-template-columns: minmax(0, 1fr) !important; }
	.hd-home-page .e-con.hd-grid:not(.hd-dept):not(.hd-rail),
	.hd-home-page .e-con.hd-grid--3 { grid-template-columns: minmax(0, 1fr); }
	.hd-home-page .hd-amen .e-con.hd-grid,
	.hd-home-page .hd-coll-sec .e-con.hd-grid { grid-template-columns: none; }
	.hd-home-page .e-con.hd-logos { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
	.hd-home-page .e-con.hd-amen__head,
	.hd-home-page .e-con.hd-equip__head,
	.hd-home-page .e-con.hd-signoff { flex-direction: column !important; align-items: flex-start !important; }
	.hd-home-page .e-con.hd-amen__head > *,
	.hd-home-page .e-con.hd-equip__head > *,
	.hd-home-page .e-con.hd-signoff > * { width: 100% !important; }
	.hd-home-page .e-con.hd-head { margin-bottom: 20px; }
}


/* =====================================================================
   ABOUT PAGE – MOBILE v4 (100% responsive pass)
   ===================================================================== */
body.hd-home-page { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
.hd-home-page .hd-sec .elementor-heading-title,
.hd-home-page .hd-sec p,
.hd-home-page .hd-sec li { overflow-wrap: break-word; word-break: normal; hyphens: manual; }
.hd-home-page .hd-sec img,
.hd-home-page .hd-sec .elementor-widget-container { max-width: 100%; }
.hd-home-page .e-con.hd-equip__head > .e-con.hd-head { min-width: 0; }

/* Tablet: give the intro split room before it gets cramped */
@media (min-width: 768px) and (max-width: 900px) {
	.hd-home-page .e-con.hd-split--top { grid-template-columns: minmax(0, 1fr) !important; }
}

@media (max-width: 767px) {
	/* Hero */
	.hd-home-page .hd-hero-sec .e-con.hd-hero { --min-height: 460px; min-height: 460px; }

	/* Intro + mosaic */
	.hd-home-page .e-con.hd-split--top { gap: 28px; }
	.hd-home-page .e-con.hd-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto; gap: 10px; margin-top: 18px; }
	.hd-home-page .e-con.hd-mosaic__lg { grid-column: 1 / -1; grid-row: auto; aspect-ratio: 4/3; }
	.hd-home-page .e-con.hd-mosaic > .e-con { border-radius: 18px; }
	.hd-home-page .hd-statement,
	.hd-home-page .hd-statement p { font-size: 20px; line-height: 1.4; }
	.hd-home-page .hd-statement--italic p { font-size: 18px; }

	/* Journey */
	.hd-home-page .e-con.hd-years { gap: 14px; }
	.hd-home-page .e-con.hd-year { border-radius: 20px; --padding-bottom: 24px; --row-gap: 14px; --gap: 14px; }
	.hd-home-page .e-con.hd-year > :not(.hd-year__img) { margin-inline: 20px; }
	.hd-home-page .e-con.hd-year__top { flex-wrap: wrap; --column-gap: 10px; --gap: 10px; }
	.hd-home-page .hd-year__num .elementor-heading-title { font-size: 52px; }
	.hd-home-page .hd-year .hd-prose,
	.hd-home-page .hd-year .hd-prose p { font-size: 16px; line-height: 1.6; }
	.hd-home-page .hd-pullquote,
	.hd-home-page .hd-pullquote p { font-size: 21px; line-height: 1.4; margin-top: 32px; padding-inline: 4px; }
	.hd-home-page .hd-pullquote p { margin-top: 0; }

	/* Vision & mission */
	.hd-home-page .e-con.hd-vm { gap: 14px; }
	.hd-home-page .e-con.hd-vision,
	.hd-home-page .e-con.hd-mission { --padding-top: 26px; --padding-bottom: 26px; --padding-left: 22px; --padding-right: 22px; --row-gap: 16px; --gap: 16px; border-radius: 22px; }
	.hd-home-page .hd-vision__lead .elementor-heading-title { font-size: 24px; line-height: 1.3; }
	.hd-home-page .hd-vision__body,
	.hd-home-page .hd-vision__body p { font-size: 16px; }
	.hd-home-page .hd-numlist li { grid-template-columns: 30px minmax(0, 1fr); gap: 10px; padding: 13px 0; font-size: 16px; }

	/* Why hoteliers choose us */
	.hd-home-page .hd-whyus-sec .e-con.hd-grid { gap: 12px; }
	.hd-home-page .e-con.hd-reason { --padding-top: 22px; --padding-bottom: 22px; --padding-left: 22px; --padding-right: 22px; --row-gap: 10px; --gap: 10px; border-radius: 20px; }
	.hd-home-page .e-con.hd-reason .hd-card__title { margin-top: 6px; }
	.hd-home-page .e-con.hd-reason--img { min-height: 0; aspect-ratio: 16/10; }

	/* Team */
	.hd-home-page .hd-team-sec .e-con.hd-split { gap: 24px; }
	.hd-home-page .hd-img--fill { min-height: 0; aspect-ratio: 4/3; width: 100%; }

	/* Products we supply */
	.hd-home-page .e-con.hd-equip { --row-gap: 20px; --gap: 20px; }
	.hd-home-page .e-con.hd-equip__head { --row-gap: 12px; --gap: 12px; gap: 12px; }
	.hd-home-page .e-con.hd-equip__head > .e-con.hd-head { --width: 100%; --container-widget-width: 100%; width: 100% !important; max-width: 100%; margin-bottom: 0; }
	.hd-home-page .e-con.hd-plist-row { flex-direction: column !important; flex-wrap: nowrap !important; gap: 12px; }
	.hd-home-page .e-con.hd-plist-row__img { flex: none; width: 100%; min-height: 0; aspect-ratio: 16/10; border-radius: 20px; }
	.hd-home-page .e-con.hd-plist-row__list { flex: none; width: 100%; }
	.hd-home-page .hd-plist ul { grid-template-columns: minmax(0, 1fr); gap: 8px; }
	.hd-home-page .hd-plist li { padding: 14px 16px; font-size: 15px; border-radius: 14px; }
	.hd-home-page .hd-small,
	.hd-home-page .hd-small p { font-size: 14px; }

	/* Closing panel */
	.hd-home-page .e-con.hd-partner { gap: 28px; }
	.hd-home-page .e-con.hd-partner__right { --row-gap: 20px; --gap: 20px; }
	.hd-home-page .hd-principles li { font-size: 30px; gap: 14px; padding: 14px 0; }
	.hd-home-page .hd-prose--light,
	.hd-home-page .hd-prose--light p { font-size: 16px; }
	.hd-home-page .e-con.hd-signoff { --row-gap: 20px; --gap: 20px; gap: 20px; padding-top: 28px; }
	.hd-home-page .e-con.hd-signoff__text { --width: 100%; width: 100%; }
	.hd-home-page .hd-signoff__title .elementor-heading-title { font-size: 26px; }
	.hd-home-page .e-con.hd-signoff .hd-btn-row { flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; gap: 10px; --gap: 10px; --row-gap: 10px; width: 100%; }
	.hd-home-page .e-con.hd-signoff .hd-btn-row > .elementor-widget { width: 100%; flex: none; }
	.hd-home-page .e-con.hd-signoff .hd-btn .elementor-button { width: 100%; justify-content: center; min-height: 50px; }
}

@media (max-width: 380px) {
	.hd-home-page .hd-sec { --hd-px: 14px; }
	.hd-home-page .hd-h2 .elementor-heading-title { font-size: 27px; }
	.hd-home-page .e-con.hd-year > :not(.hd-year__img) { margin-inline: 18px; }
	.hd-home-page .hd-year__num .elementor-heading-title { font-size: 46px; }
	.hd-home-page .e-con.hd-vision,
	.hd-home-page .e-con.hd-mission { --padding-left: 18px; --padding-right: 18px; }
	.hd-home-page .hd-principles li { font-size: 26px; }
	.hd-home-page .hd-pullquote,
	.hd-home-page .hd-pullquote p { font-size: 19px; }
}


/* About page – background image fallbacks (show even if Elementor's media import fails) */
.hd-home-page .e-con.hd-about-bg-1 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/04/luxury-hotel-collection.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-2 { background-image: url("https://shop4hotel.com/wp-content/uploads/2025/12/hotel-branding-for-amenities-1024x710.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-3 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/01/Untitled-design-2026-01-17T200130.004-1-1024x1024.png"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-4 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/04/spa-linens-collection.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-5 { background-image: url("https://shop4hotel.com/wp-content/uploads/2025/12/custom-hotel-tag-1024x690.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-6 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/01/Untitled-design-2026-01-17T200130.004-1-1024x1024.png"); background-size: cover; background-position: center; background-repeat: no-repeat; }


/* =====================================================================
   ABOUT PAGE – image fallbacks
   Background images still show if the Elementor import could not copy
   them into the Media Library. An imported image overrides these.
   ===================================================================== */
.hd-home-page .e-con.hd-about-bg-1 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/04/luxury-hotel-collection.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-2 { background-image: url("https://shop4hotel.com/wp-content/uploads/2025/12/hotel-branding-for-amenities-1024x710.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-3 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/01/Untitled-design-2026-01-17T200130.004-1-1024x1024.png"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-4 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/04/spa-linens-collection.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-5 { background-image: url("https://shop4hotel.com/wp-content/uploads/2025/12/custom-hotel-tag-1024x690.webp"); background-size: cover; background-position: center; background-repeat: no-repeat; }
.hd-home-page .e-con.hd-about-bg-6 { background-image: url("https://shop4hotel.com/wp-content/uploads/2026/01/Untitled-design-2026-01-17T200130.004-1-1024x1024.png"); background-size: cover; background-position: center; background-repeat: no-repeat; }

/* =====================================================================
   CONTACT PAGE
   ===================================================================== */
.hd-home-page .hd-sec.hd-ct-sec { --padding-top: clamp(48px, 7vw, 96px); }
.hd-home-page .e-con.hd-ct {
	--display: grid; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px);
	gap: clamp(40px, 6vw, 96px); align-items: start;
}
.hd-home-page .e-con.hd-ct__intro { --row-gap: 22px; --gap: 22px; min-width: 0; padding-top: 8px; }
.hd-home-page .hd-ct__h1 .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(38px, 5.2vw, 72px);
	line-height: 1.04; letter-spacing: -.015em; color: var(--hd-ink); margin: 0; text-wrap: balance;
}
.hd-home-page .hd-ct__lead p { font-size: clamp(18px, 1.6vw, 21px); line-height: 1.55; color: var(--hd-ink); max-width: 600px; text-wrap: pretty; }
.hd-home-page .hd-ct__body p { font-size: 16px; line-height: 1.7; color: var(--hd-muted); max-width: 560px; text-wrap: pretty; }

.hd-home-page .e-con.hd-ct__desk {
	min-width: 0; background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 28px;
	--padding-top: clamp(28px, 3vw, 40px); --padding-bottom: clamp(28px, 3vw, 40px);
	--padding-left: clamp(24px, 3vw, 40px); --padding-right: clamp(24px, 3vw, 40px);
	box-shadow: 0 30px 60px -40px rgba(27, 42, 47, .35);
}
.hd-home-page .hd-ct__desk-title .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: 28px; line-height: 1.2; color: var(--hd-ink); margin: 0 0 8px;
}
.hd-home-page .e-con.hd-ct__row {
	--display: grid; display: grid; grid-template-columns: 132px minmax(0, 1fr); gap: 20px;
	padding: 22px 0; border-bottom: 1px solid var(--hd-line); align-items: baseline;
}
.hd-home-page .hd-ct__label .elementor-heading-title {
	font-family: var(--hd-mono); font-size: 11px; font-weight: 500; line-height: 1.5;
	letter-spacing: .14em; text-transform: uppercase; color: var(--hd-accent); margin: 0;
}
.hd-home-page .hd-ct__val p { margin: 0 0 4px; font-size: 16px; line-height: 1.6; color: var(--hd-muted); }
.hd-home-page .hd-ct__val strong { color: var(--hd-ink); font-weight: 600; }
.hd-home-page .hd-ct__val a { font-size: 20px; font-weight: 600; color: var(--hd-ink); letter-spacing: -.005em; white-space: nowrap; }
.hd-home-page .hd-ct__val a:hover { color: var(--hd-accent); }
.hd-home-page .e-con.hd-ct__btns { margin-top: 28px; }
.hd-home-page .hd-ct__btns > .elementor-widget { flex: 1 1 0; }
.hd-home-page .hd-ct__btns .elementor-button { width: 100%; justify-content: center; }


.hd-home-page .hd-sec.hd-ct-enq-sec { --padding-top: clamp(48px, 6vw, 88px); --padding-bottom: var(--hd-space); }
.hd-home-page .e-con.hd-ct-band {
	background: var(--hd-deep); border-radius: var(--hd-radius); overflow: hidden;
	--padding-top: clamp(32px, 6vw, 80px); --padding-bottom: clamp(28px, 4vw, 48px);
	--padding-left: clamp(22px, 6vw, 80px); --padding-right: clamp(22px, 6vw, 80px);
}
.hd-home-page .e-con.hd-ct-band__top {
	--display: grid; display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: clamp(28px, 5vw, 80px); align-items: end; padding-bottom: clamp(32px, 5vw, 64px);
}
.hd-home-page .e-con.hd-ct-band__left { --row-gap: 18px; --gap: 18px; min-width: 0; }
.hd-home-page .hd-ct-band .hd-eyebrow .elementor-heading-title { color: var(--hd-gold); }
.hd-home-page .hd-ct-band__title .elementor-heading-title {
	font-family: var(--hd-serif); font-weight: 500; font-size: clamp(24px, 2.7vw, 38px); line-height: 1.22; color: #FBFAF7; margin: 0; text-wrap: pretty;
}
.hd-home-page .e-con.hd-ct-band__right { --row-gap: 24px; --gap: 24px; min-width: 0; }
.hd-home-page .hd-ct-band__text p { font-size: 17px; line-height: 1.65; color: #D9DEDF; }
.hd-home-page .e-con.hd-ct-band__foot {
	--display: flex; --flex-direction: row; flex-direction: row !important; flex-wrap: wrap; justify-content: space-between; align-items: center;
	gap: 14px 32px; padding-top: 28px; border-top: 1px solid rgba(251, 250, 247, .18);
}
.hd-home-page .hd-ct-band__tag .elementor-heading-title { font-family: var(--hd-serif); font-style: italic; font-weight: 500; font-size: 19px; line-height: 1.4; color: #FBFAF7; margin: 0; }
.hd-home-page .hd-ct-pillars ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 28px; }
.hd-home-page .hd-ct-pillars li { font-family: var(--hd-mono); font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--hd-gold); }

@media (max-width: 1024px) {
	.hd-home-page .e-con.hd-ct { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.hd-home-page .e-con.hd-ct__desk { max-width: 640px; }
	.hd-home-page .e-con.hd-ct-band__top { grid-template-columns: minmax(0, 1fr); align-items: start; }
}

@media (max-width: 767px) {
	.hd-home-page .hd-sec.hd-ct-sec { --padding-top: 36px; }
	.hd-home-page .e-con.hd-ct__intro { --row-gap: 16px; --gap: 16px; padding-top: 0; }
	.hd-home-page .hd-ct__h1 .elementor-heading-title { font-size: 38px; }
	.hd-home-page .hd-ct__lead p { font-size: 18px; }
	.hd-home-page .e-con.hd-ct__desk { border-radius: 20px; --padding-top: 24px; --padding-bottom: 24px; --padding-left: 20px; --padding-right: 20px; }
	.hd-home-page .hd-ct__desk-title .elementor-heading-title { font-size: 24px; margin-bottom: 4px; }
	.hd-home-page .e-con.hd-ct__row { grid-template-columns: minmax(0, 1fr); gap: 8px; padding: 18px 0; }
	.hd-home-page .hd-ct__val a { display: inline-flex; align-items: center; min-height: 40px; font-size: 20px; }
	.hd-home-page .e-con.hd-ct__btns { flex-direction: column !important; align-items: stretch !important; margin-top: 22px; }
	.hd-home-page .hd-ct__btns > .elementor-widget { flex: none; width: 100%; }
	.hd-home-page .hd-ct__btns .elementor-button { min-height: 50px; }
	.hd-home-page .e-con.hd-ct-band { border-radius: 20px; }
	.hd-home-page .hd-ct-band__title .elementor-heading-title { font-size: 23px; }
	.hd-home-page .hd-ct-band__text p { font-size: 16px; }
	.hd-home-page .hd-ct-band .hd-btn-row { flex-direction: column !important; align-items: stretch !important; width: 100%; }
	.hd-home-page .hd-ct-band .hd-btn-row > .elementor-widget { width: 100%; }
	.hd-home-page .hd-ct-band .hd-btn .elementor-button { width: 100%; justify-content: center; min-height: 50px; }
	.hd-home-page .e-con.hd-ct-band__foot { flex-direction: column !important; align-items: flex-start; }
	.hd-home-page .hd-ct-band__tag .elementor-heading-title { font-size: 17px; }
	.hd-home-page .hd-ct-pillars ul { flex-direction: column; gap: 6px; }
}

@media (max-width: 380px) {
	.hd-home-page .hd-ct__h1 .elementor-heading-title { font-size: 33px; }
	.hd-home-page .hd-ct__val a { font-size: 18px; }
}
/* ===================== END CONTACT PAGE ===================== */

/* =====================================================================
   PRIVACY PAGE
   ===================================================================== */
html { scroll-behavior: smooth; }
.hd-home-page .hd-sec.hd-pp-sec { --padding-top: clamp(44px, 6vw, 88px); --padding-bottom: var(--hd-space); }
.hd-home-page .e-con.hd-pp__head { --row-gap: 14px; --gap: 14px; max-width: 820px; padding-bottom: clamp(32px, 4vw, 48px); margin-bottom: clamp(32px, 4vw, 56px); border-bottom: 1px solid var(--hd-line); }
.hd-home-page .hd-pp__h1 .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(38px, 5vw, 64px); line-height: 1.05; letter-spacing: -.015em; color: var(--hd-ink); margin: 0; }
.hd-home-page .hd-pp__date .elementor-heading-title { font-family: var(--hd-mono); font-size: 12px; font-weight: 500; letter-spacing: .1em; text-transform: uppercase; color: var(--hd-muted); margin: 0 0 10px; }
.hd-home-page .hd-pp__intro p { font-size: clamp(17px, 1.5vw, 19px); line-height: 1.65; color: var(--hd-ink); margin: 0 0 14px; text-wrap: pretty; }

.hd-home-page .e-con.hd-pp { --display: grid; display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: clamp(40px, 6vw, 96px); align-items: start; }
.hd-home-page .e-con.hd-pp__aside { position: sticky; top: 110px; --row-gap: 14px; --gap: 14px; min-width: 0; }
.hd-home-page .hd-pp__toc-label .elementor-heading-title { font-family: var(--hd-mono); font-size: 11px; font-weight: 500; letter-spacing: .14em; text-transform: uppercase; color: var(--hd-accent); margin: 0; }
.hd-home-page .hd-pp__toc ol { list-style: none; margin: 0; padding: 0; counter-reset: pp; border-left: 1px solid var(--hd-line); }
.hd-home-page .hd-pp__toc li { counter-increment: pp; margin: 0; }
.hd-home-page .hd-pp__toc a { display: grid; grid-template-columns: 26px minmax(0, 1fr); padding: 6px 0 6px 16px; margin-left: -1px; border-left: 1px solid transparent; font-size: 14px; line-height: 1.4; color: var(--hd-muted); }
.hd-home-page .hd-pp__toc a::before { content: counter(pp, decimal-leading-zero); font-family: var(--hd-mono); font-size: 11px; padding-top: 2px; color: #9A948B; }
.hd-home-page .hd-pp__toc a:hover { color: var(--hd-ink); border-left-color: var(--hd-accent); }

.hd-home-page .e-con.hd-pp__main { min-width: 0; max-width: 760px; }
.hd-home-page .e-con.hd-pp__sec { --row-gap: 8px; --gap: 8px; padding: 0 0 clamp(32px, 4vw, 44px); margin-bottom: clamp(32px, 4vw, 44px); border-bottom: 1px solid var(--hd-line); scroll-margin-top: 110px; }
.hd-home-page .e-con.hd-pp__sec:last-child { border-bottom: 0; margin-bottom: 0; }
.hd-home-page .hd-pp__num .elementor-heading-title { font-family: var(--hd-mono); font-size: 12px; font-weight: 500; letter-spacing: .14em; color: var(--hd-accent); margin: 0; }
.hd-home-page .hd-pp__h2 .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(24px, 2.4vw, 32px); line-height: 1.2; color: var(--hd-ink); margin: 0 0 8px; }
.hd-home-page .hd-pp__body { font-size: 16px; line-height: 1.75; color: #3E3B37; }
.hd-home-page .hd-pp__body p { margin: 0 0 14px; text-wrap: pretty; }
.hd-home-page .hd-pp__body h3 { font-family: var(--hd-sans); font-size: 17px; font-weight: 600; line-height: 1.4; color: var(--hd-ink); margin: 26px 0 10px; }
.hd-home-page .hd-pp__body ul { list-style: none; margin: 4px 0 18px; padding: 0; }
.hd-home-page .hd-pp__body li { position: relative; padding: 0 0 8px 22px; margin: 0; }
.hd-home-page .hd-pp__body li::before { content: ""; position: absolute; left: 2px; top: .72em; width: 8px; height: 1px; background: var(--hd-accent); }
.hd-home-page .hd-pp__body strong { color: var(--hd-ink); font-weight: 600; }
.hd-home-page .hd-pp__dl { margin: 18px 0 20px; padding: 6px 24px; background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 20px; }
.hd-home-page .hd-pp__dl > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--hd-line); }
.hd-home-page .hd-pp__dl > div:last-child { border-bottom: 0; }
.hd-home-page .hd-pp__dl dt { font-family: var(--hd-mono); font-size: 11px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; color: var(--hd-accent); padding-top: 4px; }
.hd-home-page .hd-pp__dl dd { margin: 0; color: var(--hd-ink); }
.hd-home-page .hd-pp__dl a { font-weight: 600; color: var(--hd-ink); }
.hd-home-page .hd-pp__dl a:hover { color: var(--hd-accent); }

.hd-home-page .e-con.hd-pp__foot { --row-gap: 6px; --gap: 6px; margin-top: clamp(48px, 6vw, 80px); padding: clamp(28px, 4vw, 44px) clamp(22px, 4vw, 48px); background: var(--hd-deep); border-radius: var(--hd-radius); }
.hd-home-page .hd-pp__foot-brand .elementor-heading-title { font-family: var(--hd-mono); font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--hd-gold); margin: 0; }
.hd-home-page .hd-pp__foot-tag .elementor-heading-title { font-family: var(--hd-serif); font-weight: 500; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.25; color: #FBFAF7; margin: 0; }
.hd-home-page .hd-pp__foot-pillars p { font-size: 15px; color: #D9DEDF; margin: 4px 0 0; }

@media (max-width: 1024px) {
	.hd-home-page .e-con.hd-pp { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.hd-home-page .e-con.hd-pp__aside { position: static; padding: 20px 22px; background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 20px; }
	.hd-home-page .hd-pp__toc ol { border-left: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
	.hd-home-page .hd-pp__toc a { padding-left: 0; border-left: 0; margin-left: 0; }
}
@media (max-width: 767px) {
	.hd-home-page .hd-sec.hd-pp-sec { --padding-top: 32px; }
	.hd-home-page .hd-pp__h1 .elementor-heading-title { font-size: 38px; }
	.hd-home-page .hd-pp__intro p { font-size: 17px; }
	.hd-home-page .hd-pp__toc ol { grid-template-columns: minmax(0, 1fr); }
	.hd-home-page .hd-pp__toc a { padding: 9px 0; font-size: 15px; }
	.hd-home-page .hd-pp__h2 .elementor-heading-title { font-size: 24px; }
	.hd-home-page .hd-pp__body { font-size: 16px; line-height: 1.7; }
	.hd-home-page .hd-pp__dl { padding: 4px 18px; border-radius: 16px; }
	.hd-home-page .hd-pp__dl > div { grid-template-columns: minmax(0, 1fr); gap: 4px; padding: 14px 0; }
	.hd-home-page .e-con.hd-pp__foot { border-radius: 20px; }
}
/* ===================== END PRIVACY PAGE ===================== */


/* Mobile hero: full-bleed, no outer padding, square corners */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-sec.hd-hero-sec,
	.hd-home-page .hd-sec.hd-hero-sec { --padding-top: 0px; --padding-left: 0px; --padding-right: 0px; padding-top: 0; padding-left: 0; padding-right: 0; }
	.hd-home-page .hd-hero-sec > .e-con.hd-wrap { max-width: 100%; width: 100%; padding: 0; margin: 0; --padding-left: 0px; --padding-right: 0px; }
	.hd-home-page .hd-hero-sec .e-con.hd-hero { border-radius: 0; width: 100%; max-width: 100%; margin: 0; }
}

/* Mobile: all homepage cards stacked full width; panels edge to edge */
@media (max-width: 767px) {
	/* Swipe rails → single full-width column */
	.hd-home-page .e-con.hd-rail,
	.hd-home-page .e-con.hd-amen .hd-grid,
	.hd-home-page .e-con.hd-amen .e-con.hd-grid,
	.hd-home-page .e-con.hd-grid.hd-dept,
	.hd-home-page .hd-coll-sec .e-con.hd-grid,
	.hd-home-page .e-con.hd-grid,
	.hd-home-page .e-con.hd-grid--3,
	.hd-home-page .e-con.hd-grid--4 {
		--display: grid; display: grid !important; grid-template-columns: minmax(0, 1fr) !important;
		flex-wrap: wrap; overflow: visible; scroll-snap-type: none;
		margin-inline: 0 !important; padding-inline: 0 !important; padding-bottom: 0; gap: 14px;
	}
	.hd-home-page .e-con.hd-rail > .e-con,
	.hd-home-page .e-con.hd-grid > .e-con,
	.hd-home-page .e-con.hd-grid--3 > .e-con,
	.hd-home-page .e-con.hd-grid--4 > .e-con {
		flex: none !important; --width: 100%; width: 100% !important; max-width: 100% !important; margin: 0 !important;
	}
	/* Dark / accent panels → full bleed, square corners */
	.hd-home-page .e-con.hd-amen,
	.hd-home-page .e-con.hd-spot,
	.hd-home-page .e-con.hd-close {
		margin-inline: calc(var(--hd-px) * -1) !important; width: auto !important; max-width: none !important; border-radius: 0 !important;
	}
	.hd-home-page .e-con.hd-amen { --padding-left: 16px; --padding-right: 16px; }
	.hd-home-page .e-con.hd-close { --padding-left: 20px; --padding-right: 20px; }
}

/* Mobile: standard (shorter) card heights — hero excluded */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-card__media,
	.hd-home-page .e-con.hd-card__media--wide { aspect-ratio: 16/9 !important; min-height: 0 !important; }
	.hd-home-page .e-con.hd-coll { aspect-ratio: 16/10 !important; min-height: 0 !important; height: auto !important; }
	.hd-home-page .e-con.hd-custom { aspect-ratio: 16/9 !important; min-height: 0 !important; height: auto !important; }
	.hd-home-page .e-con.hd-spot__media { aspect-ratio: 16/10 !important; min-height: 0 !important; }
	.hd-home-page .hd-catcard__thumb { aspect-ratio: 16/9; }
	.hd-home-page .e-con.hd-reason,
	.hd-home-page .e-con.hd-why-head,
	.hd-home-page .e-con.hd-card { min-height: 0 !important; height: auto !important; }
	.hd-home-page .e-con.hd-card__body { --padding-top: 18px; --padding-bottom: 18px; --padding-left: 18px; --padding-right: 18px; --row-gap: 10px; --gap: 10px; }
	.hd-home-page .e-con.hd-card--pillar { --padding-top: 18px; --padding-bottom: 18px; --padding-left: 18px; --padding-right: 18px; --row-gap: 10px; --gap: 10px; }
	.hd-home-page .e-con.hd-coll,
	.hd-home-page .e-con.hd-custom { --padding-top: 18px; --padding-bottom: 18px; --padding-left: 18px; --padding-right: 18px; }
}

/* Mobile: Fabric Swatch (split with rounded image) as a boxed card */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-split:has(.hd-img--rounded) {
		background: var(--hd-paper); border: 1px solid var(--hd-line); border-radius: 22px; overflow: hidden;
		gap: 0 !important; --gap: 0px; --row-gap: 0px;
	}
	.hd-home-page .e-con.hd-split:has(.hd-img--rounded) .hd-img--rounded img { border-radius: 0; aspect-ratio: 16/10; }
	.hd-home-page .e-con.hd-split:has(.hd-img--rounded) > .e-con.hd-stack { --padding-top: 22px; --padding-bottom: 24px; --padding-left: 20px; --padding-right: 20px; padding: 22px 20px 24px; --row-gap: 14px; --gap: 14px; }
}

/* Mobile: trust strip — 2 columns, compact */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-trust { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; border-radius: 18px; }
	.hd-home-page .e-con.hd-trust__item {
		flex-direction: column !important; align-items: flex-start !important; --flex-direction: column; --align-items: flex-start;
		--gap: 8px; --row-gap: 8px; gap: 8px;
		--padding-top: 14px; --padding-bottom: 14px; --padding-left: 14px; --padding-right: 14px; padding: 14px;
	}
	.hd-home-page .hd-trust__num .elementor-heading-title { width: 32px; height: 32px; font-size: 11px; }
	.hd-home-page .e-con.hd-trust__txt { width: 100% !important; }
	.hd-home-page .hd-trust__title .elementor-heading-title { font-size: 14px; line-height: 1.25; }
	.hd-home-page .hd-trust__body { font-size: 13px; line-height: 1.35; }
}

/* Mobile: department cards match amenity cards (compact) */
@media (max-width: 767px) {
	.hd-home-page .hd-card--dept .hd-badge--light .elementor-heading-title {
		width: 40px; height: 40px; padding: 0; border-radius: 50%; background: var(--hd-accent); color: #FBFAF7; font-size: 12px;
	}
	.hd-home-page .hd-card--dept .hd-tags,
	.hd-home-page .hd-card--dept .elementor-widget:has(> .elementor-widget-container > .hd-tags),
	.hd-home-page .hd-card--dept .hd-btn--link { display: none !important; }
	.hd-home-page .hd-card--dept .hd-card__title .elementor-heading-title,
	.hd-home-page .hd-card--dept .hd-card__title--lg .elementor-heading-title { font-size: 21px; }
	.hd-home-page .hd-card--dept .hd-card__title .elementor-heading-title::after { content: " →"; }
	.hd-home-page .e-con.hd-card--dept .e-con.hd-card__body { --row-gap: 8px; --gap: 8px; }
	.hd-home-page .hd-badge .elementor-heading-title { width: 40px; height: 40px; font-size: 12px; }
}

/* Mobile: tighter section rhythm + edge-to-edge product cards */
@media (max-width: 767px) {
	.hd-home-page .hd-sec { --hd-space: 40px; }
	.hd-home-page .hd-sec.hd-trust-sec { --padding-top: 16px; }
	.hd-home-page .hd-sec.hd-dark { margin-top: 40px; --padding-top: 36px; --padding-bottom: 36px; padding-top: 36px; padding-bottom: 36px; --padding-left: 10px; --padding-right: 10px; }
	.hd-home-page .hd-sec.hd-dark .e-con.hd-head { padding-inline: 6px; margin-bottom: 18px; }
	.hd-home-page .hd-sec.hd-close-sec { --padding-top: 40px; --padding-bottom: 40px; }

	/* Product grid: full width, small gap */
	.hd-home-page .hd-products,
	.hd-home-page .hd-products .elementor-widget-container { width: 100%; max-width: 100%; margin: 0; padding: 0; }
	.hd-home-page .hd-products .products,
	.hd-home-page .hd-products .wd-products {
		--wd-gap: 8px; display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 8px !important;
		margin: 0 !important; width: 100% !important;
	}
	.hd-home-page .hd-products .product-grid-item,
	.hd-home-page .hd-products li.product,
	.hd-home-page .hd-products .wd-col {
		width: 100% !important; max-width: 100% !important; flex: none !important; margin: 0 !important; padding: 0 0 12px !important; border-radius: 16px;
	}
	/* Image fills the card edge to edge */
	.hd-home-page .hd-products .product-wrapper { padding: 0 !important; margin: 0 !important; border: 0 !important; }
	.hd-home-page .hd-products .product-element-top,
	.hd-home-page .hd-products .product-image-link,
	.hd-home-page .hd-products .product-element-top > a {
		display: block; margin: 0 !important; padding: 0 !important; border-radius: 0 !important; width: 100%;
	}
	.hd-home-page .hd-products .product-element-top img,
	.hd-home-page .hd-products li.product img {
		display: block; width: 100% !important; height: auto; aspect-ratio: 1/1; object-fit: cover; border-radius: 0 !important; margin: 0 !important;
		image-rendering: auto; -webkit-backface-visibility: hidden; transform: translateZ(0);
	}
	.hd-home-page .hd-products .product-element-bottom { padding: 10px 12px 0 !important; text-align: left; }
	.hd-home-page .hd-products .wd-product-cats,
	.hd-home-page .hd-products .wd-product-sku,
	.hd-home-page .hd-products .wd-product-stock { font-size: 13px; margin-bottom: 4px; }
	.hd-home-page .hd-products .wd-entities-title { margin-bottom: 4px; }
}

/* Mobile: compact section spacing (forced) + centred bold section heads */
@media (max-width: 767px) {
	.hd-home-page .e-con.hd-sec:not(.hd-hero-sec):not(.hd-trust-sec):not(.hd-dark),
	.hd-home-page .hd-sec:not(.hd-hero-sec):not(.hd-trust-sec):not(.hd-dark) { --padding-top: 32px; padding-top: 32px !important; margin-top: 0 !important; }
	.hd-home-page .e-con.hd-sec.hd-trust-sec { --padding-top: 14px; padding-top: 14px !important; }
	.hd-home-page .e-con.hd-sec.hd-dark { margin-top: 32px !important; padding-top: 32px !important; padding-bottom: 32px !important; }
	.hd-home-page .e-con.hd-sec.hd-close-sec { padding-bottom: 32px !important; }
	.hd-home-page .e-con.hd-dept,
	.hd-home-page .e-con.hd-equip { margin-top: 12px !important; }

	.hd-home-page .e-con.hd-head,
	.hd-home-page .e-con.hd-amen__intro {
		--align-items: center; align-items: center !important; text-align: center !important;
		margin-inline: auto !important; margin-bottom: 18px; width: 100% !important; max-width: 100% !important;
	}
	.hd-home-page .e-con.hd-amen__intro { margin-bottom: 0; }
	.hd-home-page .e-con.hd-head > .elementor-widget,
	.hd-home-page .e-con.hd-amen__intro > .elementor-widget { width: 100%; text-align: center !important; }
	.hd-home-page .hd-head .elementor-heading-title,
	.hd-home-page .hd-head .hd-lead,
	.hd-home-page .hd-head p,
	.hd-home-page .hd-amen__intro .elementor-heading-title,
	.hd-home-page .hd-amen__intro p { text-align: center !important; margin-inline: auto; }
	.hd-home-page .hd-head .hd-eyebrow .elementor-heading-title,
	.hd-home-page .hd-amen__intro .hd-eyebrow .elementor-heading-title { font-weight: 700; }
	.hd-home-page .hd-head .hd-h2 .elementor-heading-title,
	.hd-home-page .hd-head .hd-h3 .elementor-heading-title,
	.hd-home-page .hd-amen__intro .hd-h2 .elementor-heading-title,
	.hd-home-page .hd-amen__intro .hd-h3 .elementor-heading-title { font-weight: 700; }
	.hd-home-page .hd-tabs__list { justify-content: flex-start; }
}

/* Mobile: category tab cards — always 2 columns, compact */
@media (max-width: 767px) {
	.hd-home-page .hd-tabs__panel:not([hidden]) { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; margin-top: 16px; }
	.hd-home-page .hd-catcard { padding: 14px !important; gap: 6px; border-radius: 18px; }
	.hd-home-page .hd-catcard__thumb { margin: -14px -14px 8px !important; }
	.hd-home-page .hd-catcard__arrow { width: 30px; height: 30px; font-size: 13px; }
	.hd-home-page .hd-catcard__name { font-size: 17px !important; line-height: 1.2; }
	.hd-home-page .hd-catcard__count { font-size: 13px; }
}

@media (max-width: 767px) {
	.hd-home-page .hd-catcard__arrow { display: none !important; }
}

/* Category cards: icons uncropped, same size, centred */
.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb {
	display: flex !important; align-items: center; justify-content: center;
	aspect-ratio: 4/3 !important; padding: 40px 20px 12px; background: var(--hd-paper);
}
.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb img {
	width: auto !important; height: 100% !important; max-width: 100%; max-height: 100%; object-fit: contain !important; margin: 0 auto;
}
.hd-home-page .hd-catcard.has-thumb:hover .hd-catcard__thumb img { transform: scale(1.04); }
@media (max-width: 767px) {
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb { padding: 36px 14px 8px; margin: -14px -14px 6px !important; }
	.hd-home-page .hd-catcard { align-items: center; text-align: center; }
	.hd-home-page .hd-catcard__name,
	.hd-home-page .hd-catcard__count { width: 100%; text-align: center; }
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__top { top: 10px; left: 10px; right: 10px; }
}

/* Mobile: category icons use full card width, compact card */
@media (max-width: 767px) {
	.hd-home-page .hd-catcard { padding: 10px 10px 12px !important; gap: 4px !important; }
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb {
		margin: -10px -10px 4px !important; padding: 26px 8px 4px !important; aspect-ratio: 1/1 !important; width: calc(100% + 20px);
	}
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb img { width: 100% !important; height: 100% !important; object-fit: contain !important; }
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__top { top: 8px; left: 8px; right: 8px; }
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__idx { padding: 4px 8px; font-size: 11px; }
	.hd-home-page .hd-catcard__name { font-size: 16px !important; line-height: 1.2; }
	.hd-home-page .hd-catcard__count { font-size: 13px; }
}

/* Mobile: hide "Explore range", shorter icon box */
@media (max-width: 767px) {
	.hd-home-page .hd-catcard__count { display: none !important; }
	.hd-home-page .hd-catcard.has-thumb .hd-catcard__thumb { aspect-ratio: 4/3 !important; padding: 24px 10px 2px !important; }
	.hd-home-page .hd-catcard { padding-bottom: 10px !important; }
}