/* =========================================================
   Real Desert Man Camel Safari — style.css
   Bootstrap 5.3 + custom theme (one file for all pages)
   ========================================================= */

/* ---------- 01. Theme variables ---------- */
:root{
  --rdm-bg:#fbf5e6;
  --rdm-sand:#f5ead0;
  --rdm-card:#fffaf0;
  --rdm-line:#e3cf95;
  --rdm-line-soft:#ead9a8;
  --rdm-line-faq:#d9c283;
  --rdm-ink:#2b1d12;
  --rdm-ink-2:#3a2615;
  --rdm-text:#4a3524;
  --rdm-muted:#6b4f33;
  --rdm-brown:#8a5f14;
  --rdm-gold:#c9a227;
  --rdm-gold-light:#e0bb45;
  --rdm-cream:#f3e6c4;
  --rdm-cream-2:#e6d6ae;
  --rdm-cream-3:#cbb88a;
  --rdm-highlight:#f3df9e;
  --rdm-wa:#2f7d4a;
  --rdm-wa-dark:#256a3d;
  --rdm-dark-line:rgba(201,162,39,.35);
  --rdm-serif:'Cormorant Garamond',Georgia,serif;
  --rdm-sans:'Jost',system-ui,sans-serif;
}

/* ---------- 02. Base ---------- */
body{background:var(--rdm-bg);color:var(--rdm-ink);font-family:var(--rdm-sans);-webkit-font-smoothing:antialiased}
a{color:var(--rdm-brown);text-decoration:none}
a:hover{color:var(--rdm-ink)}
img{max-width:100%}
:focus-visible{outline:2px solid var(--rdm-gold);outline-offset:2px}

/* ---------- 03. Typography ---------- */
.rdm-eyebrow{display:block;color:var(--rdm-brown);font-size:12px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:14px}
.rdm-eyebrow--gold{color:var(--rdm-gold-light)}
.rdm-eyebrow--light{color:var(--rdm-gold-light);letter-spacing:.2em;margin-bottom:4px}
.rdm-h1{font-family:var(--rdm-serif);font-weight:500;font-size:clamp(38px,5vw,64px);line-height:1.02;max-width:820px}
.rdm-h2{font-family:var(--rdm-serif);font-weight:500;font-size:clamp(34px,4vw,54px);line-height:1.05;margin-bottom:18px}
.rdm-h2 em{color:var(--rdm-brown)}
.rdm-h2--xl{font-size:clamp(40px,5vw,64px);line-height:1}
.rdm-h2--sm{font-size:34px}
.rdm-h3{font-family:var(--rdm-serif);font-weight:600;font-size:26px;line-height:1.2}
.rdm-h3--light{color:var(--rdm-cream);font-weight:500;font-size:28px}
.rdm-text{font-size:15.5px;line-height:1.75;color:var(--rdm-text)}
.rdm-text--light{color:var(--rdm-cream-2)}
.rdm-lead{font-size:17px;line-height:1.6;color:#5a3d22;max-width:720px}
.rdm-quote{font-family:var(--rdm-serif);font-style:italic;font-size:24px;line-height:1.35;color:#5a3d22}
.rdm-maxw{max-width:820px}
.rdm-narrow{max-width:860px}
.rdm-link-underline{display:inline-block;border-bottom:1px solid var(--rdm-brown);padding-bottom:4px;font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.rdm-stars{color:var(--rdm-gold);font-size:13px;letter-spacing:2px}

/* ---------- 04. Buttons ---------- */
.rdm-btn{border-radius:0;font-family:var(--rdm-sans);font-size:13px;letter-spacing:.06em;padding:10px 16px;white-space:nowrap;text-align:left;border:1px solid transparent;transition:background .2s,color .2s}
.rdm-btn--lg{padding:14px 26px;text-transform:uppercase;font-weight:500}
.rdm-btn--gold{background:var(--rdm-gold);color:var(--rdm-ink);text-transform:uppercase}
.rdm-btn--gold:hover{background:var(--rdm-gold-light);color:var(--rdm-ink)}
.rdm-btn--gold-outline{border-color:var(--rdm-gold);color:var(--rdm-gold-light)}
.rdm-btn--gold-outline:hover{background:var(--rdm-gold);color:var(--rdm-ink)}
.rdm-btn--ghost-light{border-color:var(--rdm-cream);color:var(--rdm-cream);text-transform:uppercase}
.rdm-btn--ghost-light:hover{background:rgba(243,230,196,.12);color:var(--rdm-cream)}
.rdm-btn--dark{background:var(--rdm-ink);color:var(--rdm-cream);text-align:center}
.rdm-btn--dark:hover{background:var(--rdm-brown);color:#fff}
.rdm-btn--dark-outline{border-color:var(--rdm-ink);color:var(--rdm-ink);text-align:center}
.rdm-btn--dark-outline:hover{background:var(--rdm-ink);color:var(--rdm-cream)}
.rdm-btn--wa{background:var(--rdm-wa);color:#fff;text-transform:uppercase}
.rdm-btn--wa:hover{background:var(--rdm-wa-dark);color:#fff}
.rdm-btn--wa-outline{border-color:var(--rdm-wa);color:var(--rdm-wa);text-align:center}
.rdm-btn--wa-outline:hover{background:var(--rdm-wa);color:#fff}
.rdm-square-btn{width:44px;height:44px;border:1px solid var(--rdm-ink);background:transparent;color:var(--rdm-ink);font-size:18px}
.rdm-square-btn:hover{background:var(--rdm-ink);color:var(--rdm-cream)}

/* ---------- 05. Header / Navbar ---------- */
.rdm-header{position:sticky;top:0;z-index:1030;background:var(--rdm-ink);border-bottom:1px solid var(--rdm-dark-line)}
.rdm-header--home{background:rgba(43,29,18,.92);backdrop-filter:blur(6px)}
.rdm-logo{height:56px}
.rdm-header .nav-link{color:var(--rdm-cream);font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.rdm-header .nav-link:hover{color:var(--rdm-gold-light)}

/* ---------- 06. Sections ---------- */
.rdm-section{padding:60px 0}
.rdm-section--sand{background:var(--rdm-sand);border-top:1px solid var(--rdm-line);border-bottom:1px solid var(--rdm-line)}
.rdm-section--dark{background:var(--rdm-ink);color:var(--rdm-cream)}
.rdm-block{border-top:1px solid var(--rdm-line);padding-top:32px;margin-top:40px}

/* ---------- 07. Home: Hero slider ---------- */
.rdm-hero{position:relative;height:min(82vh,760px);min-height:520px;overflow:hidden;background:var(--rdm-ink)}
.rdm-hero__carousel,.rdm-hero__carousel .carousel-inner,.rdm-hero__carousel .carousel-item{position:absolute;inset:0;height:100%}
.rdm-hero__img{width:100%;height:100%;object-fit:cover}
.rdm-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,29,18,.15) 0%,rgba(43,29,18,.25) 50%,rgba(43,29,18,.85) 100%)}
.rdm-hero__content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;gap:18px;padding-bottom:56px}
.rdm-hero__title{font-family:var(--rdm-serif);font-weight:500;font-size:clamp(40px,6vw,84px);line-height:1;color:#fdf6e3;max-width:820px;margin:0}
.rdm-hero__actions{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- 08. Home: Stats bar ---------- */
.rdm-stats{background:var(--rdm-ink);border-top:1px solid rgba(201,162,39,.4);padding:22px 0}
.rdm-stats__num{font-family:var(--rdm-serif);font-size:36px;font-weight:600;color:var(--rdm-gold-light);line-height:1}
.rdm-stats__label{font-size:12px;color:var(--rdm-cream);letter-spacing:.04em}

/* ---------- 09. Home: About / person cards ---------- */
.rdm-person{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:24px;font-size:14.5px;line-height:1.7;color:var(--rdm-ink-2)}
.rdm-person p{margin:0 0 10px}
.rdm-person--highlight{background:var(--rdm-highlight)}
.rdm-person--outline{background:var(--rdm-card);border:1px solid var(--rdm-line)}
.rdm-person__img{width:120px;height:150px;object-fit:cover}
.rdm-person__sign{height:40px;display:block;margin-left:auto}
.rdm-person__caption{font-size:13px;color:var(--rdm-brown);font-style:italic}

/* ---------- 10. Tour filter + tour cards ---------- */
.rdm-filters{display:flex;flex-wrap:wrap;gap:8px}
.rdm-filter{font-family:var(--rdm-sans);font-size:13px;letter-spacing:.06em;padding:9px 16px;border:1px solid #b8892b;background:transparent;color:var(--rdm-ink)}
.rdm-filter.is-active,.rdm-filter:hover{background:var(--rdm-ink);color:var(--rdm-cream)}
.rdm-tour-item.is-hidden{display:none}
.rdm-tour-card{background:var(--rdm-card);border:1px solid var(--rdm-line-soft);height:100%;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.rdm-tour-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -18px rgba(90,61,34,.45)}
.rdm-tour-card__img{display:block;aspect-ratio:4/3;overflow:hidden;background:var(--rdm-line)}
.rdm-tour-card__img img{width:100%;height:100%;object-fit:cover}
.rdm-tour-card__body{padding:20px;display:flex;flex-direction:column;gap:12px;flex:1}
.rdm-tour-card__title{font-family:var(--rdm-serif);font-size:23px;font-weight:600;line-height:1.15;margin:0}
.rdm-tour-card__title a{color:var(--rdm-ink)}
.rdm-tour-card__meta{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;font-size:13.5px;color:var(--rdm-text);margin:0}
.rdm-tour-card__meta dt{color:var(--rdm-brown);font-weight:400}
.rdm-tour-card__meta dd{margin:0}
.rdm-tour-card__actions{margin-top:auto;padding-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* ---------- 11. Home: Rising Haveli ---------- */
.rdm-haveli__tagline{font-family:var(--rdm-serif);font-style:italic;font-size:24px;color:var(--rdm-gold-light);margin-bottom:16px}
.rdm-haveli__facts{border-top:1px solid var(--rdm-dark-line);border-bottom:1px solid var(--rdm-dark-line);padding:18px 0;margin:8px 0 24px;max-width:520px}
.rdm-haveli__num{font-family:var(--rdm-serif);font-size:32px;color:var(--rdm-gold-light)}
.rdm-haveli__lbl{font-size:12px}
.rdm-haveli__phone{font-size:13px;color:var(--rdm-cream-3)}
.rdm-room__img{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--rdm-ink-2)}
.rdm-room__img img{width:100%;height:100%;object-fit:cover}
.rdm-room__tag{position:absolute;top:14px;left:14px;background:var(--rdm-gold);color:var(--rdm-ink);font-size:11px;letter-spacing:.12em;text-transform:uppercase;padding:6px 10px}
.rdm-room-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border:0}
.rdm-room-tabs .nav-link{width:100%;text-align:left;background:transparent;color:var(--rdm-cream);border:0;border-top:2px solid rgba(201,162,39,.3);border-radius:0;padding:10px 0;font-size:13px}
.rdm-room-tabs .nav-link span{color:var(--rdm-gold-light);margin-right:6px}
.rdm-room-tabs .nav-link.active{border-top-color:var(--rdm-gold-light);background:transparent;color:var(--rdm-cream)}
.rdm-combo{border-top:1px solid var(--rdm-dark-line);padding:22px 0;margin-top:72px}
.rdm-combo__text{font-family:var(--rdm-serif);font-size:22px}

/* ---------- 12. Grid with lines (Awards / Why us) ---------- */
.rdm-grid-lines{border-top:1px solid var(--rdm-line);border-left:1px solid var(--rdm-line)}
.rdm-grid-lines>div>*{border-right:1px solid var(--rdm-line);border-bottom:1px solid var(--rdm-line);height:100%}
.rdm-grid-lines--dark{border-color:var(--rdm-dark-line)}
.rdm-grid-lines--dark>div>*{border-color:var(--rdm-dark-line)}
.rdm-award{padding:32px 24px;background:var(--rdm-card);display:flex;flex-direction:column;gap:20px}
.rdm-award img{height:80px;max-width:180px;object-fit:contain;object-position:left}
.rdm-award h3{font-family:var(--rdm-serif);font-size:21px;font-weight:600;line-height:1.2;margin:0}
.rdm-why{padding:28px 24px}
.rdm-why__num{font-family:var(--rdm-serif);font-size:15px;color:var(--rdm-gold-light);margin-bottom:10px}
.rdm-why h3{font-family:var(--rdm-serif);font-size:22px;font-weight:600;line-height:1.15}
.rdm-why p{font-size:14px;line-height:1.65;color:var(--rdm-cream-3);margin:0}

/* ---------- 13. Home: City tour tiles ---------- */
.rdm-city-tile{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--rdm-ink-2)}
.rdm-city-tile img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.rdm-city-tile:hover img{transform:scale(1.05)}
.rdm-city-tile span{position:absolute;left:0;right:0;bottom:0;padding:40px 20px 18px;background:linear-gradient(180deg,transparent,rgba(43,29,18,.85));color:#fdf6e3;font-family:var(--rdm-serif);font-size:24px;font-weight:500}

/* ---------- 14. Home: Car rental ---------- */
.rdm-car-card{background:var(--rdm-card);border:1px solid var(--rdm-line-soft);height:100%;display:flex;flex-direction:column}
.rdm-car-card__img{aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;padding:16px;background:#fff}
.rdm-car-card__img img{max-height:100%;object-fit:contain}
.rdm-car-card__body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}
.rdm-car-card__pax{font-size:12px;color:var(--rdm-brown);letter-spacing:.06em}
.rdm-car-card__title{font-family:var(--rdm-serif);font-size:22px;font-weight:600;line-height:1.15;margin:0}
.rdm-car-card__actions{margin-top:auto;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rdm-perks{border-top:1px solid var(--rdm-line);margin-top:40px;padding-top:4px}
.rdm-perks__title{font-family:var(--rdm-serif);font-size:20px;font-weight:600}
.rdm-perks__text{font-size:13.5px;color:var(--rdm-muted)}

/* ---------- 15. Home: Testimonials & videos ---------- */
.rdm-reviews{border-top:1px solid var(--rdm-line);padding-top:28px}
.rdm-reviews .carousel-item{min-height:280px}
.rdm-reviews__text{font-family:var(--rdm-serif);font-size:24px;line-height:1.4;margin:16px 0}
.rdm-reviews__name{font-size:14px;letter-spacing:.06em;color:var(--rdm-brown)}
.rdm-reviews__nav{display:flex;gap:10px;margin-top:20px}
.rdm-video{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:var(--rdm-ink-2)}
.rdm-video img{width:100%;height:100%;object-fit:cover}
.rdm-video__play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(251,245,230,.92);display:flex;align-items:center;justify-content:center;color:var(--rdm-ink);font-size:18px;padding-left:3px}

/* ---------- 16. FAQ accordion ---------- */
.rdm-accordion{--bs-accordion-bg:transparent;--bs-accordion-border-color:var(--rdm-line-faq);--bs-accordion-border-radius:0;--bs-accordion-inner-border-radius:0;--bs-accordion-btn-focus-box-shadow:none;--bs-accordion-active-bg:transparent;--bs-accordion-active-color:var(--rdm-ink);border-top:1px solid var(--rdm-line-faq)}
.rdm-accordion .accordion-item{border-left:0;border-right:0;border-top:0}
.rdm-accordion .accordion-button{font-family:var(--rdm-serif);font-size:21px;font-weight:600;color:var(--rdm-ink);padding:20px 0;background:transparent}
.rdm-accordion .accordion-body{padding:0 0 22px;font-size:15.5px;line-height:1.75;color:var(--rdm-text)}

/* ---------- 17. Inner page: hero + breadcrumb ---------- */
.rdm-page-hero{position:relative;height:min(70vh,620px);min-height:420px;overflow:hidden;background:var(--rdm-ink)}
.rdm-page-hero__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rdm-page-hero__overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(43,29,18,.1) 30%,rgba(43,29,18,.85) 100%)}
.rdm-page-hero__content{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:56px}
.rdm-page-hero__title{font-family:var(--rdm-serif);font-weight:500;font-size:clamp(38px,5.5vw,72px);line-height:1;color:#fdf6e3;max-width:900px}
.rdm-page-hero__sub{font-size:17px;line-height:1.6;color:var(--rdm-cream);max-width:680px;margin:0}
.rdm-breadcrumb{font-size:13px;margin-bottom:14px;--bs-breadcrumb-divider-color:var(--rdm-gold-light);--bs-breadcrumb-item-active-color:var(--rdm-cream)}
.rdm-breadcrumb a{color:var(--rdm-gold-light)}
.rdm-breadcrumb--dark{--bs-breadcrumb-divider-color:var(--rdm-brown);--bs-breadcrumb-item-active-color:var(--rdm-text)}
.rdm-breadcrumb--dark a{color:var(--rdm-brown)}
.rdm-wide-img{aspect-ratio:21/9;overflow:hidden;background:var(--rdm-line);margin-top:24px}
.rdm-wide-img img{width:100%;height:100%;object-fit:cover}

/* ---------- 18. CMS rich-text content ---------- */
.rdm-cms{font-size:16.5px;line-height:1.85;color:var(--rdm-ink-2)}
.rdm-cms h1{font-family:var(--rdm-serif);font-weight:500;font-size:38px;line-height:1.1;margin:12px 0 16px;color:var(--rdm-ink)}
.rdm-cms h2{font-family:var(--rdm-serif);font-weight:500;font-size:38px;line-height:1.1;margin:52px 0 16px;color:var(--rdm-ink)}
.rdm-cms h2:first-child{margin-top:0}
.rdm-cms h3{font-family:var(--rdm-serif);font-weight:600;font-size:26px;line-height:1.2;margin:30px 0 10px;color:var(--rdm-ink)}
.rdm-cms p{margin:0 0 18px}
.rdm-cms ul{margin:0 0 24px;padding-left:20px}
.rdm-cms li{margin:0 0 8px}
.rdm-cms strong{color:var(--rdm-ink);font-weight:600}
.rdm-cms table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5;margin:0 0 24px}
.rdm-cms th{text-align:left;padding:12px;border-bottom:2px solid var(--rdm-gold);font-weight:600}
.rdm-cms td{padding:12px;border-bottom:1px solid var(--rdm-line)}
.rdm-cms td:first-child{color:var(--rdm-brown);font-weight:500}

/* ---------- 19. Simple page: highlights, itinerary, booking ---------- */
.rdm-highlights{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px 24px}
.rdm-highlights li::before{content:"◆";color:var(--rdm-gold);margin-right:10px}
.rdm-itinerary__row{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--rdm-line-soft)}
.rdm-itinerary__time{font-family:var(--rdm-serif);font-size:20px;font-weight:600;color:var(--rdm-brown)}
.rdm-check,.rdm-cross{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}
.rdm-check li::before{content:"✓";color:var(--rdm-wa);margin-right:10px}
.rdm-cross li::before{content:"×";color:#a3412a;margin-right:10px}
.rdm-sticky{position:sticky;top:96px}
.rdm-booking{background:var(--rdm-card);border:1px solid var(--rdm-line-soft)}
.rdm-booking__price{padding:24px;border-bottom:1px solid var(--rdm-line-soft)}
.rdm-booking__amount{font-family:var(--rdm-serif);font-size:40px;font-weight:600;line-height:1}
.rdm-booking__amount small{font-family:var(--rdm-sans);font-size:14px;font-weight:400;color:var(--rdm-muted)}
.rdm-booking__facts{padding:20px 24px;display:grid;grid-template-columns:auto 1fr;gap:10px 16px;font-size:14px;margin:0;border-bottom:1px solid var(--rdm-line-soft)}
.rdm-booking__facts dt{color:var(--rdm-brown);font-weight:400}
.rdm-booking__facts dd{margin:0}
.rdm-booking__actions{padding:24px;display:flex;flex-direction:column;gap:10px}

/* ---------- 20. Footer ---------- */
.rdm-footer{background:var(--rdm-ink-2);color:var(--rdm-cream-2)}
.rdm-footer__top{padding:72px 12px 40px}
.rdm-footer__logo{height:72px;margin-bottom:16px}
.rdm-footer__title{font-family:var(--rdm-serif);font-size:24px;font-weight:500;color:#fdf6e3;margin-bottom:14px}
.rdm-footer p{font-size:14px;line-height:1.7}
.rdm-footer a{color:var(--rdm-cream-2)}
.rdm-footer a:hover{color:var(--rdm-gold-light)}
.rdm-footer__links{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;font-size:14px}
.rdm-footer__contact{margin-bottom:18px}
.rdm-footer__phone{font-family:var(--rdm-serif);font-size:26px;color:#fdf6e3 !important}
.rdm-footer__social{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:14px;font-size:13px}
.rdm-footer__bottom{border-top:1px solid rgba(201,162,39,.3);padding:18px 0;font-size:12.5px;color:var(--rdm-cream-3)}
.rdm-footer__bottom a{color:var(--rdm-cream-3)}

/* ---------- 21. Floating WhatsApp + enquiry modal ---------- */
.rdm-float-wa{position:fixed;right:20px;bottom:20px;z-index:1040;background:var(--rdm-wa);color:#fff;padding:14px 20px;font-size:13px;letter-spacing:.06em;white-space:nowrap;box-shadow:0 10px 30px -10px rgba(0,0,0,.5)}
.rdm-float-wa:hover{background:var(--rdm-wa-dark);color:#fff}
.rdm-modal{background:var(--rdm-bg);border-radius:0;border:0}
.rdm-modal .modal-header{border-bottom:1px solid var(--rdm-line)}
.rdm-modal .form-label{font-size:12px;letter-spacing:.06em;color:var(--rdm-muted)}
.rdm-input{border-radius:0;border-color:var(--rdm-line-faq);background:var(--rdm-card);font-size:14px}
.rdm-input:focus{border-color:#b8892b;box-shadow:none}
.rdm-alert{background:#e3f0e6;color:var(--rdm-wa);border-radius:0;border:0}

/* ---------- 22. Responsive ---------- */
@media (max-width:991.98px){
  .rdm-section{padding:64px 0}
  .rdm-sticky{position:static}
  .rdm-header .navbar-collapse{padding:12px 0}
  .rdm-combo{margin-top:48px}
}
@media (max-width:575.98px){
  .rdm-person{grid-template-columns:1fr}
  .rdm-tour-card__actions,.rdm-car-card__actions{grid-template-columns:1fr}
  .rdm-room-tabs{grid-template-columns:1fr}
}
