/* Desert Horse — front.css
 * Brand tokens mirror the Elementor globals; logical properties keep RTL/LTR symmetric. */
.dh-grid,.dh-picker,.dh-thanks{
	--dh-gold:#C9A227; --dh-champagne:#EAC85E; --dh-bronze:#8A6A1F;
	--dh-night:#14100A; --dh-ink:#2B2419; --dh-soft:#6B5F4C;
	--dh-sand:#F1E8D6; --dh-ivory:#FAF5EA; --dh-teal:#1F7D8C; --dh-teal-deep:#155E6B;
	--dh-grad:linear-gradient(135deg,#EAC85E 0%,#C9A227 55%,#8A6A1F 100%);
	font-size:16px; line-height:1.65; color:var(--dh-ink);
}

/* ── shared bits ── */
.dh-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:700;font-size:15px;
	padding:13px 28px;border-radius:999px;border:0;cursor:pointer;text-decoration:none;
	transition:transform .2s,box-shadow .2s,background .2s,color .2s}
.dh-btn-gold{background:var(--dh-grad);color:var(--dh-night);box-shadow:0 10px 26px -10px rgba(201,162,39,.65)}
.dh-btn-gold:hover{transform:translateY(-2px);color:var(--dh-night)}
.dh-btn-oline{background:transparent;color:var(--dh-bronze);border:1.5px solid rgba(201,162,39,.55)}
.dh-btn-oline:hover{background:var(--dh-grad);color:var(--dh-night);border-color:transparent}
.dh-chip{display:inline-flex;font-size:11.5px;font-weight:800;color:#fff;background:var(--dh-teal);
	border-radius:999px;padding:4px 13px;position:absolute;top:12px;inset-inline-start:12px}
.dh-error{color:#a33;font-weight:700}

/* ── grids & cards (trip grid / offers) ── */
.dh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;margin-block:12px}
.dh-card-trip,.dh-card-offer{background:#fff;border:1px solid var(--dh-sand);border-radius:14px;overflow:hidden;
	display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.dh-card-trip:hover,.dh-card-offer:hover{transform:translateY(-5px);box-shadow:0 18px 50px -18px rgba(20,16,10,.35)}
.dh-card-art{position:relative}
.dh-card-art img{width:100%;height:170px;object-fit:cover;display:block}
.dh-card-body{padding:18px 20px 22px;display:flex;flex-direction:column;flex:1;gap:10px}
.dh-card-body h3{margin:0;font-size:19px;color:var(--dh-night)}
.dh-blurb{margin:0;font-size:13.5px;color:var(--dh-soft)}
.dh-teasers{list-style:none;margin:0;padding:12px 0 0;border-top:1px dashed var(--dh-sand);
	display:flex;flex-direction:column;gap:8px}
.dh-teasers li{display:flex;justify-content:space-between;gap:12px;font-size:13.5px}
.dh-t-name{font-weight:600}
.dh-t-price{white-space:nowrap;font-weight:800;color:var(--dh-bronze)}
.dh-t-price small{font-weight:600;color:var(--dh-soft);margin-inline-end:4px}
.dh-more{font-size:12.5px;font-weight:700;color:var(--dh-teal-deep)}
.dh-kind-chips{display:flex;gap:6px;flex-wrap:wrap}
.dh-kind-chips span{font-size:11.5px;font-weight:700;color:var(--dh-teal-deep);
	border:1px solid rgba(31,125,140,.35);border-radius:999px;padding:3px 11px}
.dh-card-body .dh-btn{margin-top:auto}
.dh-offer-meta{display:flex;gap:14px;font-size:13px;color:var(--dh-teal-deep);font-weight:700}
.dh-price small{font-size:12px;font-weight:700;color:var(--dh-soft)}
.dh-price b{font-size:24px;color:var(--dh-bronze);margin-inline:6px}
.dh-price i{font-style:normal;font-size:12px;color:var(--dh-soft)}

/* ── picker ── */
.dh-picker{background:#fff;border:1px solid var(--dh-sand);border-top:4px solid var(--dh-gold);
	border-radius:18px;padding:26px;max-width:760px;box-shadow:0 18px 50px -22px rgba(20,16,10,.3)}
.dh-step{margin-bottom:26px}
.dh-step-h{display:flex;align-items:center;gap:10px;font-size:17px;color:var(--dh-night);margin:0 0 14px}
.dh-step-h span{width:28px;height:28px;border-radius:50%;background:var(--dh-grad);color:var(--dh-night);
	display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;flex:none}
.dh-prog-list{display:grid;gap:10px}
.dh-prog-card{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1.5px solid var(--dh-sand);
	border-radius:12px;cursor:pointer;transition:border-color .2s,background .2s}
.dh-prog-card:has(input:checked){border-color:var(--dh-gold);background:var(--dh-ivory)}
.dh-prog-card input{accent-color:var(--dh-gold)}
.dh-prog-name{font-weight:700;flex:1}
.dh-prog-dur{font-size:12.5px;color:var(--dh-soft);white-space:nowrap}
.dh-prog-from{font-weight:800;color:var(--dh-bronze);white-space:nowrap;font-size:13.5px}
.dh-prog-from small{font-weight:600;color:var(--dh-soft);margin-inline-end:4px}

.dh-kinds{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.dh-kind{font-size:13px;font-weight:700;color:var(--dh-teal-deep);background:transparent;
	border:1.5px solid rgba(31,125,140,.4);border-radius:999px;padding:7px 18px;cursor:pointer;transition:all .2s}
.dh-kind.on{background:linear-gradient(160deg,#1F7D8C,#155E6B);color:#fff;border-color:transparent}

.dh-tiers,.dh-options{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.dh-tier-row,.dh-opt-row{display:flex;align-items:center;justify-content:space-between;gap:14px;
	padding:9px 0;border-bottom:1px dashed var(--dh-sand)}
.dh-tier-label{font-weight:600;font-size:14.5px}
.dh-stepper{display:inline-flex;align-items:center;gap:2px;border:1.5px solid var(--dh-sand);border-radius:999px}
.dh-step-btn{width:34px;height:34px;border:0;background:transparent;font-size:18px;cursor:pointer;
	color:var(--dh-bronze);border-radius:50%}
.dh-step-btn:hover{background:var(--dh-ivory)}
.dh-step-num{min-width:34px;text-align:center;font-weight:800}
.dh-opt-check{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14.5px;cursor:pointer}
.dh-opt-check input{width:18px;height:18px;accent-color:var(--dh-gold)}
.dh-opt-select,.dh-opt-row input[type="date"],.dh-opt-row input[type="text"]{
	font-size:14px;padding:9px 12px;border:1.5px solid var(--dh-sand);border-radius:10px;background:var(--dh-ivory)}

.dh-quote{background:var(--dh-ivory);border:1px solid var(--dh-sand);border-radius:12px;padding:16px 18px;margin-top:8px}
.dh-line{display:flex;justify-content:space-between;font-size:13.5px;color:var(--dh-soft);padding-block:3px}
.dh-quote-total{display:flex;justify-content:space-between;align-items:baseline;
	border-top:2px solid var(--dh-gold);margin-top:10px;padding-top:10px;font-weight:700}
.dh-total-num{font-size:24px;color:var(--dh-bronze)}
.dh-quote-note{margin:8px 0 0;font-size:12px;color:var(--dh-soft)}

.dh-cust{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;margin-bottom:14px}
.dh-cust p{margin:0 0 10px}
.dh-cust label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--dh-soft);margin-bottom:5px}
[dir="rtl"] .dh-cust label{letter-spacing:0}
.dh-cust input{width:100%;font-size:15px;padding:12px 13px;border:1.5px solid var(--dh-sand);
	border-radius:10px;background:var(--dh-ivory);box-sizing:border-box}
.dh-cust input:focus{outline:none;border-color:var(--dh-gold)}
.dh-book-btn{width:100%;font-size:16px;padding:15px}
.dh-book-btn:disabled{opacity:.6;cursor:wait}
.dh-secure{font-size:12.5px;color:var(--dh-soft);margin:10px 0 0;text-align:center}
.dh-msg{font-weight:700;color:#a33;text-align:center}

/* ── thank-you ── */
.dh-thanks{max-width:560px;margin-inline:auto;text-align:center;background:#fff;border:1px solid var(--dh-sand);
	border-top:4px solid var(--dh-gold);border-radius:18px;padding:36px 28px}
.dh-thanks-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;border:3px solid var(--dh-gold);
	position:relative;animation:dhspin 1.2s linear infinite;border-top-color:transparent}
.dh-thanks-paid .dh-thanks-icon,.dh-thanks-failed .dh-thanks-icon,.dh-thanks-abandoned .dh-thanks-icon,
.dh-thanks-refunded .dh-thanks-icon{animation:none;border-top-color:var(--dh-gold)}
.dh-thanks-paid .dh-thanks-icon::after{content:"✓";position:absolute;inset:0;display:flex;align-items:center;
	justify-content:center;font-size:30px;color:var(--dh-gold);font-weight:800}
.dh-thanks-failed .dh-thanks-icon::after,.dh-thanks-abandoned .dh-thanks-icon::after{content:"!";position:absolute;
	inset:0;display:flex;align-items:center;justify-content:center;font-size:30px;color:#a33;font-weight:800}
@keyframes dhspin{to{transform:rotate(360deg)}}
.dh-thanks-h{font-size:22px;color:var(--dh-night);margin:0 0 8px}
.dh-thanks-ref{color:var(--dh-soft);font-size:14px}
.dh-thanks-msg{font-size:15px}
@media (prefers-reduced-motion:reduce){.dh-thanks-icon{animation:none}}

@media (max-width:640px){
	.dh-cust{grid-template-columns:1fr}
	.dh-picker{padding:18px}
	.dh-prog-card{flex-wrap:wrap}
}

/* ═══════════════ CATEGORY SHOWCASE (fixed scroll + animation) ═══════════════ */
.dh-showcase{position:relative;--card-w:min(520px,86vw)}
.dh-show-rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;
	padding:10px max(24px,calc((100% - 1180px)/2 + 24px)) 24px;
	scrollbar-width:none;-webkit-overflow-scrolling:touch;cursor:grab;outline:none}
.dh-show-rail::-webkit-scrollbar{display:none}
.dh-show-rail.dh-dragging{cursor:grabbing;scroll-snap-type:none}
.dh-show-card{flex:0 0 var(--card-w);height:440px;border-radius:22px;overflow:hidden;position:relative;
	display:flex;align-items:flex-end;color:var(--dh-ivory);scroll-snap-align:center;text-decoration:none;
	background:var(--dh-night) center/cover no-repeat;box-shadow:0 14px 44px -18px rgba(20,16,10,.45);
	opacity:0;transform:translateY(26px) scale(.98);transition:opacity .55s ease,transform .55s ease,box-shadow .3s}
.dh-show-card.dh-in{opacity:1;transform:none}
.dh-show-card:hover{box-shadow:0 22px 60px -20px rgba(20,16,10,.6)}
.dh-show-card:hover .dh-show-cta{background-position:right center}
.dh-show-body{position:relative;z-index:2;padding:30px;width:100%}
.dh-show-body h3{font-family:var(--dh-font-head,'El Messiri',sans-serif);font-weight:700;
	font-size:clamp(26px,3vw,34px);margin:0;color:#fff}
.dh-show-body p{font-size:14.5px;color:#D8CBAA;margin:8px 0 0;max-width:40ch}
.dh-show-meta{display:inline-block;margin-top:12px;font-size:13.5px;font-weight:800;color:var(--dh-champagne)}
.dh-show-cta{display:inline-block;margin-top:16px;font-weight:700;font-size:15px;padding:12px 30px;
	border-radius:999px;color:var(--dh-night);background:linear-gradient(135deg,#EAC85E,#C9A227 55%,#8A6A1F);
	background-size:200% auto;transition:background-position .4s}
.dh-show-nav{position:absolute;top:calc(50% - 20px);z-index:5;width:46px;height:46px;border-radius:50%;
	border:0;background:#fff;color:var(--dh-bronze);font-size:26px;line-height:1;cursor:pointer;
	box-shadow:0 8px 24px -8px rgba(20,16,10,.5);transition:transform .2s,opacity .2s;display:flex;
	align-items:center;justify-content:center}
.dh-show-nav:hover{transform:scale(1.08)}
.dh-show-prev{inset-inline-start:10px}
.dh-show-next{inset-inline-end:10px}
.dh-nav-off{opacity:.3;pointer-events:none}
@media (max-width:640px){.dh-show-nav{display:none}}
@media (prefers-reduced-motion:reduce){.dh-show-card{opacity:1;transform:none;transition:none}}

/* ═══════════ PICKER: template blocks & per-kind theming ═══════════
 * data-tpl on .dh-picker themes the booking form per program kind:
 * transfer ≠ excursion ≠ hotel ≠ package. Add a new template's CSS by
 * keying off [data-tpl="yourid"]. */
.dh-block{margin-bottom:18px}
.dh-block-h{font-family:var(--dh-font-head,'El Messiri',sans-serif);font-size:15px;font-weight:700;
	color:var(--dh-night);margin:0 0 10px;display:flex;align-items:center;gap:8px}
.dh-block-h::before{content:"";width:18px;border-top:3px solid var(--dh-gold);border-radius:2px}
.dh-block-date .dh-in-date{border:1.5px solid var(--dh-sand);border-radius:10px;padding:10px 14px;
	font:inherit;background:#fff;min-width:200px}

/* excursion (gold, playful) — the default look */
.dh-picker[data-tpl="excursion"] .dh-block-h::before{border-color:var(--dh-gold)}

/* transfer (teal, utilitarian): vehicle kinds become roomy cards */
.dh-picker[data-tpl="transfer"] .dh-block-h::before{border-color:var(--dh-teal)}
.dh-picker[data-tpl="transfer"] .dh-kinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.dh-picker[data-tpl="transfer"] .dh-kind{width:100%;padding:16px 12px;border-radius:14px;text-align:center;
	border:2px solid var(--dh-sand)}
.dh-picker[data-tpl="transfer"] .dh-kind.on{border-color:var(--dh-teal);background:rgba(31,125,140,.08);color:var(--dh-teal-deep)}

/* hotel (teal, calm): nights/rooms steppers get extra presence */
.dh-picker[data-tpl="hotel"] .dh-block-h::before{border-color:var(--dh-teal)}
.dh-picker[data-tpl="hotel"] .dh-tier-row{background:#fff;border:1.5px solid var(--dh-sand);border-radius:12px;padding:12px 14px}
.dh-picker[data-tpl="hotel"] .dh-block-tiers .dh-tiers{display:grid;gap:10px}

/* package (gold, stately): package kinds are large select cards */
.dh-picker[data-tpl="package"] .dh-block-h::before{border-color:var(--dh-bronze)}
.dh-picker[data-tpl="package"] .dh-kinds{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.dh-picker[data-tpl="package"] .dh-kind{width:100%;padding:20px 14px;border-radius:16px;text-align:center;
	border:2px solid var(--dh-sand);font-size:15.5px}
.dh-picker[data-tpl="package"] .dh-kind.on{border-color:var(--dh-gold);
	background:linear-gradient(160deg,rgba(234,200,94,.14),rgba(201,162,39,.1));color:var(--dh-bronze)}

/* template icon on program cards */
.dh-prog-ic{display:inline-flex;color:var(--dh-bronze);margin-inline-end:4px}
