/* ==========================================================================
   Emirates Adventure — Design System
   Palette drawn from the brand mark: dune-shadow dark, sunset gradient
   (crimson -> ember -> gold), warm dune-sand background.
   Type: Archivo (display, heavy geometric grotesk — echoes the logo's
   chunky lockup) + Inter (body/UI).
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@500;700;800;900&family=Inter:wght@400;500;600;700&display=swap');

:root{
  /* brand gradient stops (lifted directly from the logo) */
  --ember-1:#e92d00;
  --ember-2:#f1611e;
  --ember-3:#f9983d;
  --ember-4:#ffc255;

  /* neutrals */
  --dune-950:#160a06;
  --dune-900:#1e0f09;
  --dune-800:#331507;
  --dune-700:#4a2010;
  --sand-050:#fff9f2;
  --sand-100:#fbf1e4;
  --sand-200:#f3e2cb;
  --ink:#1c1108;
  --ink-soft:#5c4632;
  --white:#ffffff;

  --gradient-sunset: linear-gradient(180deg, var(--ember-1) 0%, var(--ember-2) 32%, var(--ember-3) 62%, var(--ember-4) 100%);
  --gradient-sunset-h: linear-gradient(100deg, var(--ember-1) 0%, var(--ember-2) 45%, var(--ember-4) 100%);
  --gradient-night: linear-gradient(180deg, #0d0603 0%, #2c0f06 55%, #5c2308 100%);

  --shadow-soft: 0 20px 50px -20px rgba(30,15,9,0.35);
  --shadow-card: 0 10px 30px -12px rgba(30,15,9,0.28);

  --radius-lg: 22px;
  --radius-md: 14px;
  --radius-sm: 8px;

  --container: 1240px;
  --nav-h: 84px;
}

/* ---------------------------------- reset --------------------------------- */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth; scroll-padding-top: var(--nav-h);}
body{margin:0; background:var(--sand-050); color:var(--ink); font-family:'Inter',sans-serif; font-size:16px; line-height:1.6; -webkit-font-smoothing:antialiased;}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
ul{margin:0; padding:0; list-style:none;}
h1,h2,h3,h4{margin:0; font-family:'Archivo',sans-serif; font-weight:800; letter-spacing:-0.01em; color:var(--ink);}
p{margin:0;}
button{font-family:inherit;}
::selection{background:var(--ember-3); color:var(--dune-950);}
@media (prefers-reduced-motion: reduce){ *{animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;} }
:focus-visible{outline:3px solid var(--ember-1); outline-offset:3px; border-radius:4px;}

.container{max-width:var(--container); margin:0 auto; padding:0 28px;}
@media (max-width:640px){ .container{padding:0 20px;} }

.eyebrow{font-family:'Archivo',sans-serif; font-weight:700; font-size:13px; color:var(--ember-1); margin:0 0 10px;}

h1{font-size:clamp(38px,5.6vw,68px); line-height:1.03;}
h2{font-size:clamp(28px,3.6vw,44px); line-height:1.08;}
h3{font-size:clamp(20px,2.2vw,26px); line-height:1.2;}
.lede{font-size:clamp(17px,1.6vw,20px); color:var(--ink-soft); max-width:58ch; line-height:1.65;}

/* buttons */
.btn{display:inline-flex; align-items:center; gap:10px; padding:15px 28px; border-radius:100px; font-family:'Archivo',sans-serif; font-weight:700; font-size:15px; cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background-color .18s ease, color .18s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-primary{background:var(--gradient-sunset-h); color:var(--white); box-shadow:0 12px 28px -10px rgba(233,45,0,0.55);}
.btn-primary:hover{box-shadow:0 16px 32px -8px rgba(233,45,0,0.6);}
.btn-dark{background:var(--dune-950); color:var(--sand-050);}
.btn-dark:hover{background:var(--dune-800);}
.btn-outline{background:transparent; border-color:currentColor; color:var(--ink);}
.btn-outline-light{background:transparent; border-color:rgba(255,255,255,0.55); color:var(--white);}
.btn-outline-light:hover{background:rgba(255,255,255,0.12);}
.btn-sm{padding:11px 20px; font-size:13.5px;}
.btn-block{width:100%; justify-content:center;}

/* ---------------------------------- nav ----------------------------------- */
.site-nav{position:fixed; top:0; left:0; right:0; z-index:500; height:var(--nav-h); display:flex; align-items:center; transition:background-color .25s ease, box-shadow .25s ease, height .25s ease;}
.site-nav .container{display:flex; align-items:center; justify-content:space-between; width:100%;}
.site-nav.is-solid{background:rgba(255,249,242,0.92); backdrop-filter:blur(10px); box-shadow:0 1px 0 rgba(28,17,8,0.08); height:74px;}
.brand{display:flex; align-items:center; gap:11px;}
.brand img{width:195px; height:auto;}
.brand-word{font-family:'Archivo',sans-serif; font-weight:900; font-size:18px; letter-spacing:-0.01em; line-height:1.05; color:var(--white); transition:color .25s ease;}
.brand-word span{display:block; font-weight:600; font-size:11px; letter-spacing:0.06em; opacity:.85;}
.site-nav.is-solid .brand-word{color:var(--ink);}
.nav-links{display:flex; align-items:center; gap:30px;}
.nav-links a{font-family:'Archivo',sans-serif; font-weight:600; font-size:14.5px; color:rgba(255,255,255,0.92); position:relative; padding:6px 0; transition:color .25s ease;}
.site-nav.is-solid .nav-links a{color:var(--ink);}
.nav-links a.active{color:var(--ember-3);}
.site-nav.is-solid .nav-links a.active{color:var(--ember-1);}
.nav-links .has-drop{display:flex; align-items:center; gap:5px;}
.nav-right{display:flex; align-items:center; gap:14px;}
.nav-phone{display:flex; align-items:center; gap:8px; font-family:'Archivo',sans-serif; font-weight:700; font-size:14px; color:var(--white); transition:color .25s ease;}
.site-nav.is-solid .nav-phone{color:var(--ink);}
.nav-toggle{display:none; width:44px; height:44px; border-radius:10px; border:none; background:rgba(255,255,255,0.15); align-items:center; justify-content:center; cursor:pointer;}
.site-nav.is-solid .nav-toggle{background:rgba(28,17,8,0.08);}
.nav-toggle span, .nav-toggle::before, .nav-toggle::after{content:'';}

/* dropdown */
.dropdown{position:relative;}
.dropdown-panel{position:absolute; top:calc(100% + 18px); left:50%; transform:translateX(-50%); background:var(--white); border-radius:var(--radius-md); box-shadow:var(--shadow-soft); padding:10px; width:240px; opacity:0; visibility:hidden; transform-origin:top center; transition:opacity .18s ease, visibility .18s ease, top .18s ease;}
.dropdown:hover .dropdown-panel{opacity:1; visibility:visible; top:calc(100% + 10px);}
.dropdown-panel a{display:block; padding:11px 14px; border-radius:8px; color:var(--ink) !important; font-size:14px;}
.dropdown-panel a:hover{background:var(--sand-100); color:var(--ember-1) !important;}

.mobile-menu{position:fixed; inset:0; z-index:600; background:var(--dune-950); transform:translateX(100%); transition:transform .3s ease; overflow-y:auto; visibility:hidden;}
.mobile-menu.open{transform:translateX(0); visibility:visible;}

@media (max-width:960px){
  .nav-links, .nav-right .nav-phone, .nav-right .btn{display:none;}
  .nav-toggle{display:flex;}
  .mobile-menu{visibility:visible;}
  .mobile-menu-inner{padding:100px 30px 40px;}
  .mobile-menu a{display:block; padding:16px 0; border-bottom:1px solid rgba(255,255,255,0.1); font-family:'Archivo',sans-serif; font-weight:700; font-size:19px; color:var(--sand-100);}
  .mobile-menu .sub-links{padding-left:16px;}
  .mobile-menu .sub-links a{font-size:15px; font-weight:600; color:rgba(255,249,242,0.7); border-bottom:none; padding:10px 0;}
  .mobile-close{position:absolute; top:22px; right:24px; width:44px; height:44px; border-radius:10px; background:rgba(255,255,255,0.1); border:none; color:var(--white); font-size:22px; cursor:pointer;}
}

/* ---------------------------------- hero ----------------------------------- */
.hero{position:relative; min-height:100vh; display:flex; align-items:flex-start; justify-content:flex-end; background:var(--gradient-sunset); overflow:hidden; padding-top:var(--nav-h);}
.hero-sun{position:absolute; border-radius:50%; background:radial-gradient(circle at 35% 35%, #fff3d6, var(--ember-4) 55%, transparent 72%); opacity:.9;}
.hero-dunes{position:absolute; left:0; right:0; bottom:-2px; width:100%; line-height:0;}
.hero-inner{position:relative; z-index:5; width:100%; padding:30px; margin: 5% 170px auto 0; max-width:740px; background:linear-gradient(180deg, rgba(22,10,6,0.28) 0%, rgba(22,10,6,0.08) 100%); border-radius:var(--radius-lg); box-shadow:var(--shadow-soft);}
.hero-tag{display:inline-flex; align-items:center; gap:8px; background:rgba(22,10,6,0.28); border:1px solid rgba(255,255,255,0.35); color:var(--white); font-family:'Archivo',sans-serif; font-weight:700; font-size:13px; padding:8px 16px; border-radius:100px; margin-bottom:22px;}
.hero h1{color:var(--white); text-shadow:0 4px 30px rgba(22,10,6,0.25); max-width:16ch;}
.hero .lede{color:rgba(255,255,255,0.92); margin-top:18px;}
.hero-actions{display:flex; gap:14px; margin-top:34px; flex-wrap:wrap;}
.hero-stats{display:flex; gap:38px; margin-top:56px; flex-wrap:wrap;}
.hero-stat b{display:block; font-family:'Archivo',sans-serif; font-weight:900; font-size:30px; color:var(--white);}
.hero-stat span{font-size:13px; color:rgba(255,255,255,0.85);}

.hero.hero-inner-page{min-height:56vh;}
.hero.hero-inner-page .hero-inner{padding-bottom:80px;}

/* page-header variant, shorter, for inner pages, dune/dusk toned */
.page-head{position:relative; background:var(--gradient-night); padding:calc(var(--nav-h) + 78px) 0 90px; overflow:hidden;}
.page-head::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(8,4,2,.6) 0%, rgba(8,4,2,.4) 45%, rgba(8,4,2,.7) 100%);}
.page-head .container{position:relative; z-index:2;}
.page-head .hero-dunes{opacity:.5; position:relative; z-index:2;}
.page-head .eyebrow{color:var(--ember-4);}
.page-head h1{color:var(--white); max-width:20ch;}
.page-head .lede{color:rgba(255,249,242,0.78); margin-top:16px;}
.page-head-meta{display:flex; gap:28px; margin-top:34px; flex-wrap:wrap;}
.page-head-meta div{display:flex; align-items:center; gap:9px; color:var(--sand-100); font-size:14px; font-weight:600;}

.crumbs{display:flex; gap:8px; align-items:center; font-size:13px; color:rgba(255,249,242,0.6); margin-bottom:18px;}
.crumbs a{color:rgba(255,249,242,0.85);}
.crumbs a:hover{color:var(--ember-4);}

/* ---------------------------------- sections -------------------------------- */
section{padding:100px 0;}
@media (max-width:768px){ section{padding:68px 0;} }
.section-dark{background:var(--dune-950); color:var(--sand-100);}
.section-dark h2, .section-dark h3, .section-dark h4{color:var(--white);}
.section-dark .lede{color:rgba(255,249,242,0.7);}
.section-sand{background:var(--sand-100);}
.section-head{max-width:680px; margin-bottom:56px;}
.section-head.center{margin-left:auto; margin-right:auto; text-align:center;}
.section-foot{margin-top:46px;}

/* two column */
.split{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center;}
@media (max-width:860px){ .split{grid-template-columns:1fr; gap:36px;} }
.split.reverse .split-media{order:2;}
@media (max-width:860px){ .split.reverse .split-media{order:0;} }

.media-frame{position:relative; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-card);}
.media-frame img{width:100%; height:100%; object-fit:cover;}
.media-ratio-4-3{aspect-ratio:4/3;}
.media-ratio-1-1{aspect-ratio:1/1;}
.media-ratio-16-10{aspect-ratio:16/10;}
.media-badge{position:absolute; bottom:18px; left:18px; background:rgba(22,10,6,0.55); backdrop-filter:blur(6px); color:var(--white); padding:10px 16px; border-radius:100px; font-family:'Archivo',sans-serif; font-weight:700; font-size:13px; display:flex; align-items:center; gap:8px;}

/* checklist */
.check-list{display:grid; gap:14px; margin-top:26px;}
.check-list li{display:flex; align-items:flex-start; gap:12px; font-size:15px; color:var(--ink-soft);}
.check-list li svg{flex-shrink:0; margin-top:2px;}
.section-dark .check-list li{color:rgba(255,249,242,0.78);}

/* card grid */
.grid{display:grid; gap:26px;}
.grid-3{grid-template-columns:repeat(3,1fr);}
.grid-4{grid-template-columns:repeat(4,1fr);}
.grid-2{grid-template-columns:repeat(2,1fr);}
@media (max-width:960px){ .grid-3, .grid-4{grid-template-columns:repeat(2,1fr);} }
@media (max-width:640px){ .grid-3, .grid-4, .grid-2{grid-template-columns:1fr;} }

/* service card */
.service-card{background:var(--white); border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-card); display:flex; flex-direction:column; height:100%; transition:transform .25s ease, box-shadow .25s ease;}
.service-card:hover{transform:translateY(-6px); box-shadow:0 26px 50px -18px rgba(30,15,9,0.34);}
.service-card .thumb{position:relative; aspect-ratio:4/3; overflow:hidden;}
.service-card .thumb img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.service-card:hover .thumb img{transform:scale(1.06);}
.service-card .thumb .tag{position:absolute; top:14px; left:14px; background:var(--gradient-sunset-h); color:var(--white); font-family:'Archivo',sans-serif; font-weight:700; font-size:12px; padding:7px 13px; border-radius:100px;}
.service-card .body{padding:24px 24px 26px; display:flex; flex-direction:column; gap:12px; flex:1;}
.service-card .meta{display:flex; gap:16px; font-size:12.5px; color:var(--ink-soft); font-weight:600;}
.service-card .meta span{display:flex; align-items:center; gap:5px;}
.service-card p{color:var(--ink-soft); font-size:14.5px; flex:1;}
.service-card .foot{display:flex; align-items:center; justify-content:space-between; margin-top:6px; padding-top:16px; border-top:1px solid var(--sand-200);}
.service-card .price{font-family:'Archivo',sans-serif; font-weight:800; font-size:18px; color:var(--ink);}
.service-card .price small{font-family:'Inter',sans-serif; font-weight:500; font-size:12px; color:var(--ink-soft);}
.service-card .foot a{font-family:'Archivo',sans-serif; font-weight:700; font-size:13.5px; color:var(--ember-1); display:flex; align-items:center; gap:6px;}

/* icon feature */
.feature{display:flex; gap:16px; align-items:flex-start;}
.feature-icon{flex-shrink:0; width:52px; height:52px; border-radius:14px; background:var(--gradient-sunset-h); display:flex; align-items:center; justify-content:center; color:var(--white);}
.section-dark .feature-icon{background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.15);}
.feature h4{font-size:17px; margin-bottom:6px;}
.feature p{font-size:14.5px; color:var(--ink-soft);}
.section-dark .feature p{color:rgba(255,249,242,0.68);}

/* stats strip */
.stats-strip{background:var(--dune-950); padding:56px 0;}
.stats-strip .grid{grid-template-columns:repeat(4,1fr); text-align:center;}
.stats-strip b{display:block; font-family:'Archivo',sans-serif; font-weight:900; font-size:clamp(30px,4vw,44px); background:var(--gradient-sunset-h); -webkit-background-clip:text; background-clip:text; color:transparent;}
.stats-strip span{color:rgba(255,249,242,0.7); font-size:13.5px; font-weight:600;}
@media (max-width:640px){ .stats-strip .grid{grid-template-columns:repeat(2,1fr); gap:34px;} }

/* testimonial */
.testimonial-card{background:var(--white); border-radius:var(--radius-lg); padding:30px; box-shadow:var(--shadow-card); height:100%; display:flex; flex-direction:column; gap:16px;}
.testimonial-card .stars{color:var(--ember-2); font-size:15px; letter-spacing:2px;}
.testimonial-card p{font-size:15px; color:var(--ink-soft); flex:1;}
.testimonial-who{display:flex; align-items:center; gap:12px;}
.testimonial-avatar{width:44px; height:44px; border-radius:50%; background:var(--gradient-sunset-h); display:flex; align-items:center; justify-content:center; color:#fff; font-family:'Archivo',sans-serif; font-weight:800;}
.testimonial-who b{display:block; font-size:14px; color:var(--ink);}
.testimonial-who span{font-size:12.5px; color:var(--ink-soft);}

/* accordion / FAQ */
.accordion{border-top:1px solid var(--sand-200);}
.section-dark .accordion{border-color:rgba(255,255,255,0.12);}
.accordion-item{border-bottom:1px solid var(--sand-200);}
.section-dark .accordion-item{border-color:rgba(255,255,255,0.12);}
.accordion-trigger{width:100%; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:22px 4px; background:none; border:none; text-align:left; cursor:pointer; font-family:'Archivo',sans-serif; font-weight:700; font-size:16.5px; color:var(--ink);}
.section-dark .accordion-trigger{color:var(--white);}
.accordion-trigger .plus{flex-shrink:0; width:30px; height:30px; border-radius:50%; display:flex; align-items:center; justify-content:center; position:relative; transition:transform .25s ease, background-color .25s ease;}
.section-dark .accordion-trigger .plus{border-color:rgba(255,255,255,0.25);}
.accordion-trigger .plus::before, .accordion-trigger .plus::after{content:''; position:absolute; background:var(--ink); border-radius:2px;}
.section-dark .accordion-trigger .plus::before, .section-dark .accordion-trigger .plus::after{background:var(--white);}
.accordion-trigger .plus::before{width:12px; height:2px;}
.accordion-trigger .plus::after{width:2px; height:12px; transition:opacity .2s ease;}
.accordion-item.open .accordion-trigger .plus{background:var(--gradient-sunset-h); border-color:transparent;}
.accordion-item.open .accordion-trigger .plus::before, .accordion-item.open .accordion-trigger .plus::after{background:#fff;}
.accordion-item.open .accordion-trigger .plus::after{opacity:0;}
.accordion-panel{max-height:0; overflow:hidden; transition:max-height .3s ease;}
.accordion-panel-inner{padding:0 34px 24px 4px; color:var(--ink-soft); font-size:14.5px; line-height:1.7;}
.section-dark .accordion-panel-inner{color:rgba(255,249,242,0.7);}

/* pricing table */
.price-table{background:var(--white); border-radius:var(--radius-lg); box-shadow:var(--shadow-card); overflow:hidden;}
.price-row{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:12px; padding:20px 26px; align-items:center; border-bottom:1px solid var(--sand-200);}
.price-row.head{background:var(--dune-950); color:var(--white); font-family:'Archivo',sans-serif; font-weight:700; font-size:13px;}
.price-row:last-child{border-bottom:none;}
.price-row .name{font-weight:700; font-family:'Archivo',sans-serif; font-size:14.5px;}
.price-row .sub{display:block; font-family:'Inter',sans-serif; font-weight:400; color:var(--ink-soft); font-size:12.5px; margin-top:3px;}
@media (max-width:640px){ .price-row{grid-template-columns:1fr 1fr; row-gap:6px;} .price-row .name{grid-column:1/-1;} }

/* timeline */
.timeline{position:relative; padding-left:34px; border-left:2px solid var(--sand-200);}
.section-dark .timeline{border-color:rgba(255,255,255,0.15);}
.timeline-item{position:relative; padding-bottom:38px;}
.timeline-item:last-child{padding-bottom:0;}
.timeline-item::before{content:''; position:absolute; left:-41px; top:2px; width:16px; height:16px; border-radius:50%; background:var(--gradient-sunset-h); border:3px solid var(--sand-050);}
.section-dark .timeline-item::before{border-color:var(--dune-950);}
.timeline-item .time{font-family:'Archivo',sans-serif; font-weight:800; font-size:13px; color:var(--ember-1); margin-bottom:6px; display:block;}
.timeline-item h4{font-size:16.5px; margin-bottom:6px;}
.timeline-item p{font-size:14px; color:var(--ink-soft);}
.section-dark .timeline-item p{color:rgba(255,249,242,0.68);}

/* gallery */
.gallery-grid{display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:190px; gap:14px;}
.gallery-grid .g-item{border-radius:14px; overflow:hidden; position:relative; cursor:pointer;}
.gallery-grid .g-item img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.gallery-grid .g-item:hover img{transform:scale(1.08);}
.gallery-grid .g-item.big{grid-column:span 2; grid-row:span 2;}
.gallery-grid .g-item .g-label{position:absolute; bottom:0; left:0; right:0; padding:14px; background:linear-gradient(0deg, rgba(10,5,3,0.75), transparent); color:#fff; font-family:'Archivo',sans-serif; font-weight:700; font-size:13px; opacity:0; transition:opacity .25s ease;}
.gallery-grid .g-item:hover .g-label{opacity:1;}
@media (max-width:860px){ .gallery-grid{grid-template-columns:repeat(2,1fr); grid-auto-rows:150px;} .gallery-grid .g-item.big{grid-column:span 2; grid-row:span 1;} }

.lightbox{position:fixed; inset:0; background:rgba(10,5,3,0.92); z-index:900; display:none; align-items:center; justify-content:center; padding:40px;}
.lightbox.open{display:flex;}
.lightbox img{max-width:min(900px,90vw); max-height:80vh; border-radius:12px; box-shadow:0 30px 60px rgba(0,0,0,0.5);}
.lightbox-close{position:absolute; top:26px; right:30px; width:46px; height:46px; border-radius:50%; background:rgba(255,255,255,0.12); border:none; color:#fff; font-size:22px; cursor:pointer;}

/* form */
.form-card{background:var(--white); border-radius:var(--radius-lg); padding:36px; box-shadow:var(--shadow-card);}
.form-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
@media (max-width:600px){ .form-row{grid-template-columns:1fr;} }
.field{margin-bottom:18px;}
.field label{display:block; font-family:'Archivo',sans-serif; font-weight:700; font-size:13px; margin-bottom:8px; color:var(--ink);}
.field input, .field select, .field textarea{width:100%; padding:13px 15px; border-radius:10px; border:1.5px solid var(--sand-200); background:var(--sand-050); font-family:'Inter',sans-serif; font-size:14.5px; color:var(--ink); transition:border-color .2s ease, background-color .2s ease;}
.field input:focus, .field select:focus, .field textarea:focus{outline:none; border-color:var(--ember-2); background:#fff;}
.field textarea{resize:vertical; min-height:110px;}

/* whatsapp float */
.wa-float{position:fixed; bottom:26px; right:26px; z-index:480; width:60px; height:60px; border-radius:50%; background:#25D366; display:flex; align-items:center; justify-content:center; box-shadow:0 14px 30px -8px rgba(37,211,102,0.6); transition:transform .2s ease;}
.wa-float:hover{transform:scale(1.08);}

/* footer */
.site-footer{background:var(--dune-950); color:rgba(255,249,242,0.72); padding:80px 0 0;}
.footer-top{display:grid; grid-template-columns:1.6fr 1fr 1fr 1.2fr; gap:40px; padding-bottom:56px; border-bottom:1px solid rgba(255,255,255,0.1);}
@media (max-width:860px){ .footer-top{grid-template-columns:1fr 1fr; row-gap:40px;} }
@media (max-width:560px){ .footer-top{grid-template-columns:1fr;} }
.footer-brand .brand-word{color:var(--white);}
.footer-brand p{margin-top:16px; font-size:14px; max-width:34ch; color:rgba(255,249,242,0.6);}
.footer-col h5{font-family:'Archivo',sans-serif; font-weight:700; font-size:14px; color:var(--white); margin-bottom:18px;}
.footer-col ul{display:grid; gap:11px;}
.footer-col a{font-size:14px; color:rgba(255,249,242,0.65); transition:color .2s ease;}
.footer-col a:hover{color:var(--ember-4);}
.footer-contact li{display:flex; gap:10px; align-items:flex-start; font-size:13.5px;}
.social-row{display:flex; gap:10px; margin-top:20px;}
.social-row a{width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,0.08); display:flex; align-items:center; justify-content:center; transition:background-color .2s ease;}
.social-row a:hover{background:var(--gradient-sunset-h);}
.footer-bottom{display:flex; align-items:center; justify-content:space-between; padding:26px 0; font-size:13px; color:rgba(255,249,242,0.5); flex-wrap:wrap; gap:12px;}
.footer-bottom a{color:rgba(255,249,242,0.5);}
.footer-bottom a:hover{color:var(--ember-4);}

/* misc utility */
.tag-pill{display:inline-flex; align-items:center; gap:7px; background:var(--sand-200); color:var(--ink); font-family:'Archivo',sans-serif; font-weight:700; font-size:12.5px; padding:8px 14px; border-radius:100px;}
.section-dark .tag-pill{background:rgba(255,255,255,0.08); color:var(--sand-100);}
.divider{height:1px; background:var(--sand-200); margin:56px 0;}
.center-cta{text-align:center; max-width:640px; margin:0 auto;}
.mt-0{margin-top:0 !important;}
.text-center{text-align:center;}

.cta-band{position:relative; background:var(--gradient-sunset); border-radius:32px; padding:64px 48px; overflow:hidden; text-align:center;}
.cta-band h2{color:#fff; max-width:20ch; margin:0 auto;}
.cta-band p{color:rgba(255,255,255,0.9); margin:16px auto 0; max-width:52ch;}
.cta-band .hero-actions{justify-content:center; margin-top:30px;}
@media (max-width:640px){ .cta-band{padding:44px 24px; border-radius:22px;} }

.badge-row{display:flex; flex-wrap:wrap; gap:12px; margin-top:28px;}
.badge-row .tag-pill{background:rgba(255,255,255,0.9);}

.side-card{background:var(--white); border-radius:var(--radius-lg); box-shadow:var(--shadow-card); padding:30px;}
.side-card h4{font-size:17px; margin-bottom:16px;}
.included-item{display:flex; justify-content:space-between; padding:11px 0; border-bottom:1px dashed var(--sand-200); font-size:14px;}
.included-item:last-child{border-bottom:none;}

.step-num{font-family:'Archivo',sans-serif; font-weight:900; font-size:15px; width:34px; height:34px; border-radius:50%; background:var(--dune-950); color:#fff; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.section-sand .step-num, .section-light .step-num{background:var(--dune-950);}


/* Ensure .has-drop can position a pseudo-element absolute to itself */
.has-drop .dropdown-panel {
  position: absolute;
  top: 100%; /* or whatever distance positions it below .dd */
  left: 0;
}

/* Invisible bridge bridging the gap */
.dropdown-panel::before {
  content: "";
  position: absolute;
  top: -15px; /* Adjust this value to match your actual gap height */
  left: 0;
  right: 0;
  height: 15px; /* Same as the negative top offset */
}