/*
Theme Name: Blocksy Child — UAE Land Deals
Theme URI: https://uaelanddeals.com/
Description: Child theme of Blocksy holding UAE Land Deals custom templates and the property CPT schema. Deploy: see CHILD-THEME-DEPLOY.md.
Template: blocksy
Version: 1.2.11
Text Domain: blocksy-child
*/

/* The Blocksy front-page "Home" hero is now removed from the markup by
   inc/front-page.php (blocksy:hero:custom-source), so the old
   `body.home.page .hero-section{display:none}` hack is gone. */

/* ---------- Tokens ---------- */
:root {
	--uld-deep-palm-green: #1C3B2B;
	--uld-sand-linen: #F2EFE9;      /* page background */
	--uld-surface-white: #FFFFFF;   /* cards only */
	--uld-ink-black: #14231A;
	--uld-slate-grey: #4F5A54;      /* 7.0:1 on white, 6.2:1 on sand */
	--uld-dune: #D9D2C3;            /* hairlines */
	/* Muted gold accent: fills only (badges + key CTAs), always with dark text.
	   #BE9D60 + #1C3B2B text = 4.78:1 (AA). Never gold text, never gold on white as text. */
	--uld-gold: #BE9D60;
	--uld-gold-ink: #1C3B2B;
	--uld-gold-line: #A8873F;       /* decorative borders only */
	/* Status: green = confirmed, amber = pending, grey = n/a (all >= 7:1) */
	--uld-ok-bg: #E3EDE6;  --uld-ok-fg: #1C3B2B;  --uld-ok-line: #9DBBA7;
	--uld-warn-bg: #FBEFD5; --uld-warn-fg: #6B4A00; --uld-warn-line: #E0C27A;
	--uld-na-bg: #ECEAE6;  --uld-na-fg: #4A4A4A;  --uld-na-line: #CFCBC3;
	--uld-card-radius: 8px;
	--uld-shadow-soft: 0 1px 2px rgba(28, 59, 43, .06), 0 2px 8px rgba(28, 59, 43, .06);
	--uld-shadow-raised: 0 4px 10px rgba(28, 59, 43, .10), 0 12px 28px rgba(28, 59, 43, .10);
}
body { background-color: var(--uld-sand-linen); }

.uld-container { max-width: 1200px; margin-inline: auto; padding-inline: 20px; }

/* ---------- Badges ---------- */
.uld-badges { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 12px; padding: 0; }
.uld-badge {
	display: inline-flex; align-items: center; gap: 4px;
	padding-block: 3px; padding-inline: 10px;
	border: 1px solid transparent; border-radius: 999px;
	font-size: 12px; font-weight: 600; line-height: 1.4;
	font-variant-numeric: tabular-nums;
}
.uld-badge--confirmed { background: var(--uld-ok-bg); color: var(--uld-ok-fg); border-color: var(--uld-ok-line); }
.uld-badge--confirmed::before { content: "\2713"; }
.uld-badge--pending { background: var(--uld-warn-bg); color: var(--uld-warn-fg); border-color: var(--uld-warn-line); }
.uld-badge--pending::before { content: "\25F7"; }
.uld-badge--na { background: var(--uld-na-bg); color: var(--uld-na-fg); border-color: var(--uld-na-line); font-weight: 500; }
.uld-badge--gold { background: var(--uld-gold); color: var(--uld-gold-ink); border-color: var(--uld-gold-line); }
.uld-badge-verified.uld-badge--gold::before { content: "\2713"; }

/* ---------- Buttons ---------- */
.uld-btn { display: inline-block; padding-block: 10px; padding-inline: 18px; border-radius: 6px; font-weight: 700; text-decoration: none; border: 1px solid var(--uld-deep-palm-green); }
.uld-btn--gold { background: var(--uld-gold); color: var(--uld-gold-ink); border-color: var(--uld-gold-line); }
.uld-btn--gold:hover, .uld-btn--gold:focus-visible { background: #CFB273; color: var(--uld-gold-ink); }
.uld-btn--outline { background: var(--uld-surface-white); color: var(--uld-deep-palm-green); }
.uld-btn--outline:hover, .uld-btn--outline:focus-visible { background: var(--uld-deep-palm-green); color: var(--uld-sand-linen); }
.uld-btn:focus-visible, .uld-empty-state a:focus-visible { outline: 3px solid var(--uld-deep-palm-green); outline-offset: 2px; }

/* ---------- Spec card ---------- */
.uld-spec-card { background: var(--uld-surface-white); border: 1px solid var(--uld-dune); border-radius: var(--uld-card-radius); padding: 24px; margin-block-end: 32px; box-shadow: var(--uld-shadow-soft); }
.uld-spec-card--premium { box-shadow: var(--uld-shadow-raised); border-color: var(--uld-gold-line); }
.uld-spec-card .uld-ad, .uld-spec-card .uld-ad-widget { display: none !important; } /* belt and braces: never ads in the spec card */
.uld-spec-card-header { margin-block-end: 12px; }
.uld-price-label { margin: 0; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: var(--uld-slate-grey); }
.uld-price-value { margin: 2px 0 0; font-size: 28px; font-weight: 800; color: var(--uld-deep-palm-green); font-variant-numeric: tabular-nums lining-nums; }
.uld-price-sub { margin: 2px 0 0; color: var(--uld-slate-grey); font-variant-numeric: tabular-nums; }
.uld-spec-table { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums lining-nums; }
.uld-spec-table caption { text-align: start; font-weight: 700; color: var(--uld-ink-black); padding-block-end: 8px; caption-side: top; }
.uld-spec-table th, .uld-spec-table td { text-align: start; padding-block: 9px; padding-inline: 0 12px; border-block-end: 1px solid var(--uld-dune); vertical-align: top; }
.uld-spec-table th { width: 42%; font-weight: 500; color: var(--uld-slate-grey); }
.uld-spec-table td { font-weight: 600; color: var(--uld-ink-black); }
.uld-spec-table tr:last-child th, .uld-spec-table tr:last-child td { border-block-end: 0; }
.uld-na { color: var(--uld-na-fg); font-weight: 400; }
.uld-spec-note { margin-block: 12px 0; font-size: 13px; color: var(--uld-slate-grey); }

/* ---------- Listing card ---------- */
.uld-archive-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.uld-card { display: flex; flex-direction: column; background: var(--uld-surface-white); border: 1px solid var(--uld-dune); border-radius: var(--uld-card-radius); overflow: hidden; box-shadow: var(--uld-shadow-soft); }
.uld-card--premium { box-shadow: var(--uld-shadow-raised); border-color: var(--uld-gold-line); border-block-start: 3px solid var(--uld-gold); }
.uld-card-media img, .uld-card-placeholder { display: block; inline-size: 100%; aspect-ratio: 16 / 10; object-fit: cover; }
.uld-card-placeholder { display: grid; place-items: center; background: var(--uld-deep-palm-green); color: var(--uld-sand-linen); font-weight: 700; letter-spacing: .08em; }
.uld-card-body { padding: 16px; flex: 1; }
.uld-card-location { margin: 0 0 4px; font-size: 12px; text-transform: uppercase; letter-spacing: .04em; color: var(--uld-slate-grey); }
.uld-card-title { margin: 0 0 12px; font-size: 18px; line-height: 1.3; }
.uld-card-title a { color: var(--uld-ink-black); text-decoration: none; }
.uld-card-specs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 12px; margin: 0; font-variant-numeric: tabular-nums; }
.uld-card-specs dt { font-size: 12px; color: var(--uld-slate-grey); }
.uld-card-specs dd { margin: 0; font-weight: 600; color: var(--uld-ink-black); }
.uld-card-footer { display: flex; justify-content: space-between; align-items: end; gap: 8px; padding-block: 12px; padding-inline: 16px; border-block-start: 1px solid var(--uld-dune); font-variant-numeric: tabular-nums; }
.uld-card-price-label { display: block; font-size: 12px; color: var(--uld-slate-grey); }
.uld-card-price { font-weight: 800; color: var(--uld-deep-palm-green); }
.uld-card-psqft { font-size: 13px; color: var(--uld-slate-grey); }

/* ---------- Archive + breadcrumbs ---------- */
.uld-archive-header { background: var(--uld-sand-linen); padding-block: 40px; border-block-end: 1px solid var(--uld-dune); }
.uld-archive-title { font-size: 32px; font-weight: 800; color: var(--uld-ink-black); margin-block: 0 8px; }
.uld-archive-intro { color: var(--uld-slate-grey); margin: 0; }
.uld-archive-body { padding-block: 40px; }
.uld-pagination { margin-block-start: 40px; text-align: center; }
.uld-breadcrumbs ol { display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 10px; padding: 0; font-size: 13px; }
.uld-breadcrumbs li + li::before { content: "/"; margin-inline-end: 6px; color: var(--uld-slate-grey); }
.uld-breadcrumbs a { color: var(--uld-deep-palm-green); }

/* ---------- Empty state ---------- */
.uld-empty-state { background: var(--uld-surface-white); border: 1px solid var(--uld-dune); border-radius: var(--uld-card-radius); padding: 40px 24px; text-align: center; color: var(--uld-ink-black); }
.uld-empty-title { margin-block: 0 8px; font-size: 22px; color: var(--uld-ink-black); }
.uld-empty-message { max-width: 56ch; margin-inline: auto; margin-block: 0 20px; color: var(--uld-slate-grey); }
.uld-empty-ctas { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-block-end: 28px; }
.uld-empty-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px 32px; max-width: 640px; margin-inline: auto; text-align: start; }
.uld-empty-col-title { margin: 0 0 6px; font-weight: 700; font-size: 14px; color: var(--uld-ink-black); }
.uld-empty-col ul { list-style: none; margin: 0; padding: 0; }
.uld-empty-col li { padding-block: 4px; }
.uld-empty-col a { color: var(--uld-deep-palm-green); text-decoration: underline; text-underline-offset: 2px; }
.uld-empty-clear { text-align: center; margin-block-start: 12px; }

/* Homepage Query Loop no-results (block markup in DEPLOY-BUILD-TRACK.md) */
.wp-block-query-no-results .uld-empty-state { margin-block: 8px; }


@media (max-width: 720px) {
	.uld-single-property-page .ct-container > div[style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
	.uld-single-sidebar { position: static !important; }
}

/* ---------- v1.2.0: primary button, single layout, empty-state extras, pagination (logical props = RTL-safe) ---------- */
.uld-btn--primary { background: var(--uld-deep-palm-green); color: var(--uld-sand-linen); }   /* 11.0:1 */
.uld-btn--primary:hover, .uld-btn--primary:focus-visible { background: var(--uld-ink-black); color: var(--uld-sand-linen); }
.uld-empty-search { margin-block: 16px; max-inline-size: 520px; margin-inline: auto; }
.uld-empty-alert { margin-block-start: 24px; padding: 20px; background: var(--uld-surface-white); border: 1px solid #D9D4C9; border-inline-start: 4px solid var(--uld-gold); border-radius: 8px; text-align: start; }
.uld-empty-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 24px; margin-block: 24px; text-align: start; }
.uld-empty-col-title { font-size: 1rem; margin-block-end: 8px; color: var(--uld-deep-palm-green); }
.uld-single-layout { display: grid; grid-template-columns: 2fr 1fr; gap: 32px; align-items: start; }
.uld-single-title { color: var(--uld-deep-palm-green); margin-block: 8px 16px; }
.uld-single-media img { inline-size: 100%; block-size: auto; border-radius: 8px; }
.uld-enquire { position: sticky; inset-block-start: 96px; background: var(--uld-surface-white); padding: 20px; border-radius: 8px; border: 1px solid #D9D4C9; }
.uld-na { color: var(--uld-slate-grey); font-style: italic; }
.uld-price-sub, .uld-card-psqft { color: var(--uld-slate-grey); font-variant-numeric: tabular-nums; }
.uld-archive .nav-links, .uld-archive .pagination { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin-block: 32px; }
.uld-archive .page-numbers { padding-block: 6px; padding-inline: 12px; border: 1px solid var(--uld-deep-palm-green); border-radius: 6px; color: var(--uld-deep-palm-green); text-decoration: none; }
.uld-archive .page-numbers.current { background: var(--uld-deep-palm-green); color: var(--uld-sand-linen); }
[dir="rtl"] .uld-breadcrumbs .sep, [dir="rtl"] .uld-icon-arrow { transform: scaleX(-1); }
@media (max-width: 720px) {
	.uld-single-layout { grid-template-columns: 1fr; }
	.uld-enquire { position: static; }
}

/* ---------- AEO / a11y fixes (v1.2.7) ---------- */
/* Fluent Forms submit button: brand green on sand text (contrast ~10.9:1). */
:root { --fluentform-primary: #1C3B2B; }
.fluentform .ff-btn-submit,
.fluentform .ff-btn-submit:not(.ff_btn_no_style),
form[class*="fluent_form_"] .ff-btn-submit:not(.ff_btn_no_style) {
	background-color: #1C3B2B !important;
	border-color: #1C3B2B !important;
	color: #F2EFE9 !important;
	min-height: 48px;
	padding: 12px 24px;
}
.fluentform .ff-btn-submit:hover,
.fluentform .ff-btn-submit:focus-visible {
	background-color: #14231A !important;
	color: #F2EFE9 !important;
	opacity: 1 !important;
}
.fluentform .ff-btn-submit:focus-visible {
	outline: 3px solid #BE9D60;
	outline-offset: 2px;
}

/* Homepage hero search: tap targets at least 48px high, with spacing. */
.uld-hero .uld-tab-btn,
.uld-hero .uld-search-form select,
.uld-hero .uld-single-input-form input,
.uld-hero .uld-search-submit,
.uld-hero .uld-hero-cta {
	min-height: 48px;
	min-width: 48px;
	box-sizing: border-box;
}
.uld-hero .uld-search-tabs { gap: 8px; }
.uld-hero .uld-tab-btn { padding: 12px 16px; }
.uld-hero .uld-hero-cta { display: inline-flex; align-items: center; justify-content: center; }
.uld-hero .uld-form-group { margin-block-end: 8px; }
.uld-hero .uld-form-group label { display: block; margin-block-end: 6px; }

/* ---------- Regulatory guides hub (/regulatory-guides/, inc/guides-hub.php) v1.2.9 ---------- */
.uld-gh { --gh-gap: 24px; }
.uld-gh .uld-gh-icon { flex: none; }
.uld-gh-meta { font-size: 14px; color: var(--uld-slate-grey); margin: 8px 0 0; }
.uld-gh-meta__n { font-weight: 800; color: var(--uld-deep-palm-green); font-variant-numeric: tabular-nums; }
.uld-gh-eyebrow { font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; color: var(--uld-deep-palm-green); margin: 32px 0 12px; }
.uld-gh-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gh-gap); margin: 0; }
@media (max-width: 1000px) { .uld-gh-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .uld-gh-grid { grid-template-columns: 1fr; } .uld-gh { --gh-gap: 16px; } }
.uld-gh-card { position: relative; display: flex; flex-direction: column; gap: 10px; background: var(--uld-surface-white); border: 1px solid var(--uld-dune); border-top: 3px solid var(--uld-gold-line); border-radius: var(--uld-card-radius, 8px); padding: 22px; box-shadow: var(--uld-shadow-soft, 0 1px 2px rgba(20,35,26,.06)); transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.uld-gh-card:hover, .uld-gh-card:focus-within { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(20,35,26,.10); border-color: var(--uld-gold-line); }
@media (prefers-reduced-motion: reduce) { .uld-gh-card { transition: none; } .uld-gh-card:hover, .uld-gh-card:focus-within { transform: none; } }
.uld-gh-card.is-hidden { display: none; }
.uld-gh-card--featured { border: 2px solid var(--uld-gold-line); border-top-width: 6px; padding: 26px; }
.uld-gh-card--featured .uld-gh-card__title { font-size: 21px; }
.uld-gh-card__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.uld-gh-card__icon { display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 12px; background: var(--uld-sand-linen); color: var(--uld-deep-palm-green); }
.uld-gh-card--fees .uld-gh-card__icon { background: #F5EDD8; color: #6B4A00; }
.uld-gh-card--planning .uld-gh-card__icon { background: #E3EDE6; color: var(--uld-deep-palm-green); }
.uld-gh-card--ownership .uld-gh-card__icon { background: #EDE8F5; color: #3D2E6B; }
.uld-gh-card--emirates .uld-gh-card__icon { background: #E6F0F5; color: #1A4A5C; }
.uld-gh-card--start .uld-gh-card__icon { background: #F5EDD8; color: var(--uld-gold-ink); }
.uld-gh-card--more .uld-gh-card__icon { background: var(--uld-sand-linen); color: var(--uld-slate-grey); }
.uld-gh-badge { font-size: 12px; font-weight: 700; line-height: 1; padding: 6px 10px; border-radius: 999px; background: var(--uld-sand-linen); color: var(--uld-slate-grey); border: 1px solid var(--uld-dune); white-space: nowrap; }
.uld-gh-card--featured .uld-gh-badge { background: var(--uld-gold); color: var(--uld-gold-ink); border-color: var(--uld-gold-line); }
.uld-gh .uld-gh-card__title { font-size: 18px; line-height: 1.3; font-weight: 800; margin: 4px 0 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.uld-gh .uld-gh-card__title a { color: var(--uld-ink-black); text-decoration: none; }
.uld-gh .uld-gh-card__title a:hover { text-decoration: underline; }
.uld-gh .uld-gh-card__sum { font-size: 14px; line-height: 1.55; color: var(--uld-slate-grey); margin: 0; flex: 1; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.uld-gh-card__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 6px; flex-wrap: wrap; }
.uld-gh-card__time { font-size: 13px; color: var(--uld-slate-grey); }
.uld-gh .uld-gh-btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 48px; padding: 0 18px; border-radius: var(--uld-button-radius, 6px); background: var(--uld-deep-palm-green); color: #fff; font-weight: 700; font-size: 14px; text-decoration: none; }
.uld-gh a.uld-gh-btn:hover, .uld-gh a.uld-gh-btn:focus-visible { background: var(--uld-ink-black); color: #fff; }
.uld-gh .uld-gh-btn--gold { background: var(--uld-gold); color: var(--uld-gold-ink); }
.uld-gh a:focus-visible, .uld-gh button:focus-visible { outline: 3px solid var(--uld-gold-line); outline-offset: 2px; }
/* Sticky find bar */
.uld-gh-find { position: sticky; top: 80px; z-index: 40; margin: 28px 0 12px; padding: 16px 18px; background: rgba(255,255,255,.92); border: 1px solid var(--uld-dune); border-bottom: 2px solid var(--uld-dune); border-radius: var(--uld-card-radius, 8px); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); box-shadow: 0 4px 16px rgba(28,59,43,.06); }
.uld-gh-find__label { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.uld-gh-find__q { display: block; width: 100%; box-sizing: border-box; min-height: 48px; padding: 12px 16px; font-size: 16px; color: var(--uld-ink-black); background: var(--uld-surface-white); border: 1px solid #8C8578; border-radius: 6px; margin: 0 0 12px; }
.uld-gh-find__q:focus { outline: 3px solid var(--uld-gold-line); outline-offset: 1px; border-color: var(--uld-deep-palm-green); }
.uld-gh-find__chips { display: flex; flex-wrap: wrap; gap: 10px; }
.uld-gh-chip { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 16px; border-radius: 999px; background: var(--uld-surface-white); border: 1px solid var(--uld-dune); color: var(--uld-deep-palm-green); font-weight: 700; font-size: 14px; font-family: inherit; cursor: pointer; }
.uld-gh-chip:hover { border-color: var(--uld-gold-line); background: var(--uld-sand-linen); }
.uld-gh-chip.is-active { background: var(--uld-deep-palm-green); color: #fff; border-color: var(--uld-deep-palm-green); }
.uld-gh-chip.is-active .uld-gh-chips__n { background: rgba(255,255,255,.18); color: #fff; }
.uld-gh-chip .uld-gh-icon { width: 18px; height: 18px; }
.uld-gh-chips__n { font-size: 12px; background: var(--uld-sand-linen); color: var(--uld-slate-grey); border-radius: 999px; padding: 2px 8px; }
/* Legacy chip nav (kept for any residual markup) */
.uld-gh-chips { margin: 28px 0 8px; }
.uld-gh-chips ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.uld-gh-chips li { margin: 0; }
.uld-gh-chips a { display: inline-flex; align-items: center; gap: 8px; min-height: 48px; padding: 0 16px; border-radius: 999px; background: var(--uld-surface-white); border: 1px solid var(--uld-dune); color: var(--uld-deep-palm-green); font-weight: 700; font-size: 14px; text-decoration: none; }
.uld-gh-chips a:hover { border-color: var(--uld-gold-line); background: var(--uld-sand-linen); }
.uld-gh-chips .uld-gh-icon { width: 18px; height: 18px; }
/* Empty state */
.uld-gh-empty { display: none; margin: 24px 0; padding: 20px; text-align: center; font-size: 15px; color: var(--uld-slate-grey); background: var(--uld-sand-linen); border: 1px dashed var(--uld-dune); border-radius: var(--uld-card-radius, 8px); }
.uld-gh-empty.is-visible, .uld-gh-empty:not([hidden]) { display: block; }
.uld-gh-all__h { font-size: 22px; font-weight: 800; color: var(--uld-ink-black); margin: 28px 0 16px; }
/* Stats */
.uld-gh-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 0; margin: 16px 0 8px; background: var(--uld-deep-palm-green); border-radius: var(--uld-card-radius, 8px); overflow: hidden; }
.uld-gh-stat { padding: 18px 16px; text-align: center; border-left: 1px solid rgba(255,255,255,.12); display: flex; flex-direction: column-reverse; }
.uld-gh-stat:first-child { border-left: 0; }
.uld-gh-stats dd { margin: 0; font-size: 30px; font-weight: 800; color: #fff; line-height: 1.1; }
.uld-gh-stats dt { margin: 4px 0 0; font-size: 13px; color: #E6E1D6; font-weight: 600; }
@media (max-width: 640px) {
	.uld-gh-stats { grid-template-columns: repeat(2, 1fr); }
	.uld-gh-stat:nth-child(3) { border-left: 0; }
	.uld-gh-stat:nth-child(n+3) { border-top: 1px solid rgba(255,255,255,.12); }
	.uld-gh-find { top: 64px; padding: 12px; }
}
/* Sections (legacy band styles kept; v1.2.9 no longer emits them) */
.uld-gh-section { padding: 32px 0; scroll-margin-top: 90px; }
.uld-gh-section--band { position: relative; background: #E9E3D6; box-shadow: 0 0 0 100vmax #E9E3D6; clip-path: inset(0 -100vmax); }
.uld-gh .uld-gh-section__h { display: flex; align-items: center; gap: 12px; font-size: 26px; font-weight: 800; color: var(--uld-ink-black); margin: 0 0 20px; }
.uld-gh-section__icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; background: var(--uld-gold); color: var(--uld-gold-ink); }
.uld-gh-section--band .uld-gh-card__icon { background: #F7F5F0; }
/* CTAs */
.uld-gh-cta { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: var(--gh-gap); margin: 36px 0 28px; }
@media (max-width: 640px) { .uld-gh-cta { grid-template-columns: 1fr; } }
.uld-gh .uld-gh-cta__card { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; padding: 28px; border-radius: var(--uld-card-radius, 8px); background: var(--uld-surface-white); border: 1px solid var(--uld-dune); color: var(--uld-ink-black); text-decoration: none; transition: transform .18s ease, box-shadow .18s ease; }
.uld-gh .uld-gh-cta__card:first-child { background: var(--uld-deep-palm-green); border-color: var(--uld-deep-palm-green); color: #fff; }
.uld-gh .uld-gh-cta__card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(20,35,26,.12); }
.uld-gh-cta__card .uld-gh-icon { width: 32px; height: 32px; color: var(--uld-gold); }
.uld-gh-cta__card:last-child .uld-gh-icon { color: var(--uld-deep-palm-green); }
.uld-gh-cta__t { font-size: 22px; font-weight: 800; }
.uld-gh-cta__d { font-size: 15px; opacity: .9; flex: 1; }
/* Light hero trim on guides hub (Blocksy entry title) */
body.uld-guides-hub .hero-section .page-title,
body.uld-guides-hub .entry-header .page-title,
body.uld-guides-hub .ct-container > .hero-section .page-title { font-size: clamp(1.75rem, 2.2vw + 1rem, 2.35rem); }

/* ---------- Ask the team box (inc/ask-team.php, Fluent Forms 9) v1.2.8 ---------- */
.uld-ask { margin: 40px 0 28px; padding: 32px 0; background: #E9E3D6; box-shadow: 0 0 0 100vmax #E9E3D6; clip-path: inset(0 -100vmax); }
.uld-ask__card { max-width: 760px; margin: 0 auto; background: var(--uld-surface-white); border: 1px solid var(--uld-dune); border-top: 6px solid var(--uld-gold-line); border-radius: var(--uld-card-radius, 8px); padding: 28px; box-shadow: var(--uld-shadow-soft); }
.uld-ask .uld-ask__h { font-size: 24px; line-height: 1.25; font-weight: 800; color: var(--uld-ink-black); margin: 0 0 8px; }
.uld-ask .uld-ask__sub { font-size: 14px; color: var(--uld-slate-grey); margin: 0 0 20px; }
.uld-ask .ff-el-group { margin-bottom: 16px; }
.uld-ask .ff-el-input--label label, .uld-ask label { font-size: 14px; font-weight: 700; color: var(--uld-ink-black); }
.uld-ask .ff-el-form-control, .uld-ask input[type="text"], .uld-ask input[type="email"], .uld-ask input[type="tel"], .uld-ask textarea { width: 100%; min-height: 48px; padding: 12px 14px; font-size: 16px; color: var(--uld-ink-black); background: #fff; border: 1px solid #8C8578; border-radius: 6px; }
.uld-ask textarea { min-height: 120px; }
.uld-ask .ff-el-form-control:focus, .uld-ask input:focus, .uld-ask textarea:focus { outline: 3px solid var(--uld-gold-line); outline-offset: 1px; border-color: var(--uld-deep-palm-green); }
.uld-ask .ff-el-form-check label, .uld-ask .ff_tc_label { display: flex; align-items: flex-start; gap: 10px; min-height: 48px; font-weight: 500; font-size: 14px; }
.uld-ask input[type="checkbox"] { width: 22px; height: 22px; margin-top: 2px; accent-color: var(--uld-deep-palm-green); flex: none; }
.uld-ask .ff-btn-submit, .uld-ask button[type="submit"] { min-height: 48px; padding: 0 28px; font-size: 16px; font-weight: 800; background: var(--uld-deep-palm-green) !important; color: #fff !important; border: 0; border-radius: 6px; cursor: pointer; }
.uld-ask .ff-btn-submit:hover, .uld-ask button[type="submit"]:hover { background: var(--uld-ink-black) !important; }
.uld-ask .ff-btn-submit:focus-visible { outline: 3px solid var(--uld-gold-line); outline-offset: 2px; }
.uld-ask .ff-el-is-error .ff-el-form-control { border-color: #B3261E; }
.uld-ask .error, .uld-ask .text-danger { color: #B3261E; font-size: 13px; }
@media (max-width: 640px) { .uld-ask { padding: 20px 0; } .uld-ask__card { padding: 20px; } .uld-ask .uld-ask__h { font-size: 20px; } .uld-ask .ff-btn-submit { width: 100%; } }


/* ---------- Hub / emirate featured band (v1.2.11) ---------- */
/* Target crop ~1600×600; credit corner for Commons TASL / Google Earth notes. */
.uld-hub-band {
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
	background: var(--uld-deep-palm-green);
	border-bottom: 1px solid var(--uld-dune);
}
.uld-hub-band__img,
.uld-hub-band img {
	display: block;
	width: 100%;
	height: min(37.5vw, 600px);
	object-fit: cover;
	object-position: center;
}
.uld-hub-band__credit {
	position: absolute;
	right: 12px;
	bottom: 12px;
	left: auto;
	margin: 0;
	max-width: min(70%, 440px);
	padding: 6px 10px;
	border-radius: 4px;
	background: rgba(28, 59, 43, 0.82);
	color: var(--uld-sand-linen);
	font-size: 11px;
	line-height: 1.35;
	font-weight: 500;
}
@media (max-width: 600px) {
	.uld-hub-band__credit {
		right: 8px;
		bottom: 8px;
		left: 8px;
		max-width: none;
		font-size: 10px;
	}
}
