
:root{
  --bg:#f7f3ec; --bg-2:#fcfaf6; --card:#fffdfa; --ink:#171514; --muted:#6f695f; --line:#e7dfd2; --gold:#b89244; --gold-2:#d2b26a; --dark:#1f1a17; --soft:#f4ece0; --shadow:0 18px 50px rgba(46,34,20,.08); --radius:24px;
}
*{box-sizing:border-box} html{scroll-behavior:smooth}
body{margin:0;background:linear-gradient(180deg,var(--bg-2),var(--bg));color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:14px;font-weight:400;line-height:1.65}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 36px));margin:auto}
.topbar{position:sticky;top:0;z-index:50;background:rgba(252,250,246,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(184,146,68,.14)}
.topbar-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-logo{width:64px;height:64px;object-fit:contain;border-radius:18px;box-shadow:0 6px 16px rgba(184,146,68,.12);background:#fff}.brand-text strong{display:block;font-family:"Cormorant Garamond",serif;font-size:30px;line-height:.95;font-weight:600;letter-spacing:.02em}.brand-text small{display:block;color:var(--gold);font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:600;margin-top:4px}
.nav{display:flex;align-items:center;gap:18px;color:#38322d;font-size:13px;font-weight:500}.nav a{padding:8px 0;position:relative}.nav a:not(.login-pill):after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.2s}.nav a:hover{color:#000}.nav a:hover:after{transform:scaleX(1)}.login-pill{border:1px solid rgba(184,146,68,.45)!important;border-radius:999px;padding:10px 16px;background:linear-gradient(180deg,#fff,#faf4e8);box-shadow:0 8px 18px rgba(184,146,68,.08)}
.menu-btn{display:none;border:1px solid var(--line);background:#fff;border-radius:12px;padding:10px 14px} main{min-height:calc(100vh - 200px)}
.hero{padding:56px 0 26px}.hero-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:34px;align-items:center}.eyebrow{color:var(--gold);font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.24em}
.hero h1,.package-title h1,.auth-wrap h1,.section h2,.content-card h2,h1,h2,h3,h4{font-family:"Cormorant Garamond",serif;color:#141210}.hero h1{font-size:56px;line-height:1.04;margin:10px 0 16px;font-weight:600;letter-spacing:-.025em;max-width:720px}.lead{font-size:16px;color:var(--muted);max-width:760px}
.hero-card,.search-shell,.content-card,.sticky-card,.auth-card,.table-card,.offer-card,.package-card,.destination-card,.hero-photo{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.hero-card{border-radius:28px;padding:18px;background:linear-gradient(145deg,#fffdf9,#f8f0e6)}.search-shell{margin-top:22px;border-radius:28px;padding:18px;background:rgba(255,255,255,.85)}
.service-tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.tab-btn{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 15px;font-weight:600;font-size:13px;color:#534c45;cursor:pointer;transition:.2s}.tab-btn.active,.tab-btn:hover{background:#f8efdf;border-color:#d9bf81;color:#7d5b18}.search-panel{display:none}.search-panel.active{display:block}
.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.form-grid.three{grid-template-columns:repeat(3,1fr)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.13em}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:16px;background:#fff;padding:13px 14px;color:var(--ink);outline:none;min-height:48px;font-weight:400;transition:border-color .18s, box-shadow .18s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#cba75e;box-shadow:0 0 0 4px rgba(184,146,68,.10)}
.inline-options{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:12px 0}.inline-options label{display:flex;gap:7px;align-items:center;color:#534c45;font-size:13px}.btn{border:0;border-radius:16px;padding:13px 18px;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:white;font-weight:700;cursor:pointer;box-shadow:0 12px 26px rgba(184,146,68,.23);display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s, box-shadow .18s}.btn:hover{transform:translateY(-1px);box-shadow:0 14px 28px rgba(184,146,68,.28)}.btn.secondary{background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none}.btn.full{width:100%}
.section{padding:38px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.section h2{font-size:42px;line-height:.98;letter-spacing:-.01em;margin:0;font-weight:600}.section p.sub,.sub{color:var(--muted);margin:6px 0 0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.package-card{border-radius:24px;overflow:hidden;transition:.22s}.package-card:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(46,34,20,.12)}.pkg-img{aspect-ratio:16/10;background:#ece6dd;overflow:hidden}.pkg-img img{width:100%;height:100%;object-fit:cover}.pkg-body{padding:18px}.badges{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.badge{font-size:11px;font-weight:700;color:#6b604f;border:1px solid #eadfcb;border-radius:999px;padding:6px 10px;background:#fffaf1}.package-card h3{font-size:30px;line-height:1;margin:2px 0 10px;font-weight:600}.meta{display:flex;gap:12px;flex-wrap:wrap;color:#7b7367;font-size:13px}.price-row{display:flex;align-items:baseline;gap:8px;margin:14px 0 4px}.old{text-decoration:line-through;color:#ab9b86;font-size:12px}.price{font-size:22px;font-weight:700;color:#111}.quote{font-size:19px;font-weight:700}
.split{display:grid;grid-template-columns:1.45fr .55fr;gap:24px;align-items:start}.sticky-card{position:sticky;top:102px;border-radius:24px;padding:22px;background:linear-gradient(180deg,#fffdfa,#fbf7ef)}.package-hero{padding:30px 0}.package-top{display:grid;grid-template-columns:1.35fr .65fr;gap:26px;align-items:start}.package-title h1{font-size:56px;margin:8px 0 10px;letter-spacing:-.03em;font-weight:600}.hero-photo{border-radius:28px;overflow:hidden;aspect-ratio:16/9;background:#e9e1d4}.hero-photo img{width:100%;height:100%;object-fit:cover}.gallery-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.gallery-thumb{border-radius:14px;overflow:hidden;aspect-ratio:4/3;border:1px solid var(--line);background:#efe8dc}.gallery-thumb img{width:100%;height:100%;object-fit:cover}.included-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.included-item{border:1px solid var(--line);border-radius:16px;padding:13px;text-align:center;color:#4b443c;font-size:12px;background:#fffaf1}
.content-card{border-radius:24px;padding:22px;margin-bottom:18px}.content-card h2{font-size:36px;margin:0 0 14px;font-weight:600}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.activity{padding:12px;border:1px solid var(--line);border-radius:14px;background:#fbf8f2;color:#3a362f}.accordion details{border:1px solid var(--line);border-radius:18px;padding:0;margin:10px 0;background:#fff}.accordion summary{cursor:pointer;padding:16px;font-weight:700;color:#2f2b26}.accordion p{padding:0 16px 16px;margin:0;color:#5a544c}.list-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.clean-list{margin:0;padding-left:18px;color:#564f47}.clean-list li{margin:8px 0}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 20px}.filter-pill{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;color:#574f46;font-weight:600;cursor:pointer}.filter-pill.active,.filter-pill:hover{color:#7d5b18;border-color:#d9bf81;background:#f8efdf}
.auth-wrap{min-height:calc(100vh - 220px);display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:center;padding:42px 0}.auth-card{border-radius:28px;padding:28px;background:linear-gradient(180deg,#fffdfa,#fbf8f1)}.auth-card h1{font-size:40px;margin:0 0 8px;font-weight:600;letter-spacing:-.02em}.auth-tabs{display:flex;border:1px solid var(--line);border-radius:16px;padding:4px;background:#f8f5ef;margin:20px 0}.auth-tabs button{flex:1;border:0;background:transparent;border-radius:12px;padding:10px;font-weight:700;cursor:pointer}.auth-tabs button.active{background:#fff;box-shadow:0 6px 16px rgba(46,34,20,.08)}.auth-panel{display:none}.auth-panel.active{display:block}
.dashboard-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:20px}.notice{border-radius:16px;padding:12px 14px;margin:12px 0;background:#eff9f1;color:#1d6d39;border:1px solid #cae7d2}.notice.error{background:#fff2f4;color:#b42318;border-color:#fac2c6}.table-card{border-radius:24px;overflow:hidden}.trip-row{display:grid;grid-template-columns:1fr auto;gap:14px;padding:18px;border-bottom:1px solid var(--line)}.trip-row:last-child{border-bottom:0}
.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.destination-card{position:relative;border-radius:24px;overflow:hidden;min-height:250px;color:#fff;background:#222}.destination-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.destination-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,10,.02),rgba(10,10,10,.68))}.destination-card > div{position:absolute;left:18px;right:18px;bottom:16px;z-index:1}.destination-card h3{font-size:34px;line-height:.95;margin:0 0 8px;font-weight:600;color:#fff}.destination-card p{margin:0;color:rgba(255,255,255,.88)}
.offer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.offer-card{border-radius:22px;padding:18px;background:linear-gradient(180deg,#fffdfa,#f8f2e9)}.offer-card strong{display:block;font-size:16px;color:#1d1916}.offer-card p{margin:6px 0 0;color:var(--muted)}
.footer{margin-top:42px;padding:34px 0 0;background:linear-gradient(180deg,#171411,#231c16);color:#f4ede2}.footer-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr .8fr;gap:24px}.footer .brand{color:#fff}.footer .brand-logo{background:#fff}.footer p,.footer a{color:rgba(244,237,226,.78)}.footer a{display:block;margin:8px 0}.footer h4{margin:0 0 8px;font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:#dcc48a}.footer-bottom{padding:18px 0;margin-top:18px;border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:rgba(244,237,226,.62)}
.whatsapp{padding:10px 14px;border:1px solid rgba(220,196,138,.34);border-radius:14px;display:inline-flex!important;width:auto}.floating-wa{position:fixed;right:18px;bottom:18px;z-index:30;background:#0d0d0d;color:#fff;padding:13px 16px;border-radius:999px;box-shadow:0 14px 32px rgba(0,0,0,.18)} hr{border:0;border-top:1px solid var(--line)}
@media (max-width:1024px){.hero h1{max-width:760px}.hero-grid,.package-top,.split,.auth-wrap,.dashboard-grid{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}.destination-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.sticky-card{position:static}.topbar-inner{height:auto;padding:14px 0;align-items:flex-start}.nav{display:none;position:absolute;top:84px;left:18px;right:18px;background:#fffdf9;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:14px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-btn{display:block}.brand-logo{width:56px;height:56px}.hero h1,.package-title h1{font-size:44px}.section h2,.content-card h2{font-size:34px}.included-row,.offer-grid,.activity-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){.container{width:min(100% - 24px,100%)}.form-grid,.form-grid.three,.cards,.destination-grid,.offer-grid,.included-row,.activity-grid,.gallery-strip,.list-grid,.footer-grid{grid-template-columns:1fr}.hero{padding-top:30px}.hero h1,.package-title h1{font-size:38px}.section h2{font-size:30px}.brand-text strong{font-size:24px}.brand-text small{font-size:10px;letter-spacing:.18em}.topbar-inner{gap:10px}.hero-card{order:-1}}


/* v17 clean homepage + better account page */
.hero-clean{padding:54px 0 30px;}
.hero-single{display:block;max-width:1040px;}
.hero-copy{max-width:820px;margin-bottom:24px;}
.hero-copy h1{max-width:860px;font-size:58px;line-height:1.02;margin-bottom:14px;}
.hero-clean .search-shell{max-width:980px;}
.auth-page{padding:58px 0 70px;}
.auth-modern{display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;align-items:center;}
.auth-intro h1{font-size:54px;line-height:.98;margin:10px 0 16px;font-weight:600;letter-spacing:-.02em;}
.auth-benefits{display:grid;grid-template-columns:1fr;gap:12px;margin-top:24px;max-width:520px;}
.auth-benefits div{background:rgba(255,255,255,.66);border:1px solid var(--line);border-radius:18px;padding:15px 16px;box-shadow:0 8px 24px rgba(46,34,20,.04);}
.auth-benefits strong{display:block;font-size:14px;color:#171514;margin-bottom:3px;}
.auth-benefits span{display:block;color:var(--muted);font-size:13px;line-height:1.5;}
.auth-modern .auth-card{max-width:560px;margin-left:auto;width:100%;padding:32px;border-radius:30px;}
.auth-modern .auth-card h1{font-size:42px;line-height:1;margin-bottom:8px;}
.captcha-box{display:grid;grid-template-columns:1fr 120px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:18px;background:#fffaf1;padding:14px;}
.captcha-box strong{display:block;color:#171514;font-size:14px;}
.captcha-box span{display:block;color:var(--muted);font-size:13px;margin-top:2px;}
.captcha-box input{width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 13px;outline:none;}
@media (max-width:1024px){.auth-modern{grid-template-columns:1fr}.auth-modern .auth-card{margin-left:0;max-width:100%}.hero-copy h1{font-size:46px}}
@media (max-width:700px){.hero-copy h1,.auth-intro h1{font-size:38px}.captcha-box{grid-template-columns:1fr}.auth-page{padding-top:34px}.auth-modern .auth-card{padding:22px}.auth-benefits{display:none}}



/* v18 login cleanup */
.clean-login-page{padding:64px 0 78px;}
.auth-clean{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center;}
.clean-auth-copy{max-width:520px;}
.clean-auth-copy h1{font-size:58px;line-height:.96;margin:10px 0 16px;font-weight:600;letter-spacing:-.02em;}
.clean-auth-card{max-width:600px;margin-left:auto;width:100%;padding:34px;border-radius:32px;}
.clean-auth-card h1{font-size:44px;line-height:1;margin-bottom:8px;}
.auth-benefits{display:none!important;}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;}
.human-check{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:center;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#fffaf1,#fff);padding:16px;}
.human-code{height:74px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-family:"Cormorant Garamond",serif;font-size:34px;font-weight:700;letter-spacing:.22em;color:#2a2117;background:repeating-linear-gradient(135deg,#f7efe0 0,#f7efe0 8px,#fff8eb 8px,#fff8eb 16px);border:1px dashed rgba(184,146,68,.65);user-select:none;box-shadow:inset 0 0 0 999px rgba(255,255,255,.18);}
.human-input small{display:block;margin-top:6px;color:var(--muted);font-size:12px;}
.human-input input{text-transform:uppercase;letter-spacing:.08em;}
@media (max-width:1024px){.auth-clean{grid-template-columns:1fr}.clean-auth-card{margin-left:0;max-width:100%;}.clean-auth-copy h1{font-size:44px}}
@media (max-width:700px){.clean-login-page{padding:36px 0 56px}.clean-auth-card{padding:22px}.clean-auth-copy h1{font-size:36px}.human-check{grid-template-columns:1fr}.human-code{height:68px}.clean-auth-card h1{font-size:34px}}

/* v19 customer request centre */
.trip-link{color:inherit;text-decoration:none;transition:background .18s, transform .18s}.trip-link:hover{background:#fffaf2;transform:translateY(-1px)}
.trip-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right}.status-badge{background:#f8efdf;border-color:#d9bf81;color:#7d5b18}.gold-badge{background:#141210;color:#fff;border-color:#141210}
.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.detail-item{border:1px solid var(--line);border-radius:16px;padding:12px;background:#fffaf4}.detail-item span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-weight:700}.detail-item strong{display:block;margin-top:4px;font-weight:600;color:var(--ink);word-break:break-word}.status-flow{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.status-step{border:1px solid var(--line);border-radius:999px;padding:8px 11px;background:#fff;color:var(--muted);font-size:12px;font-weight:700}.status-step.active{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#fff;border-color:transparent}.timeline{display:flex;flex-direction:column;gap:12px}.message{border:1px solid var(--line);border-radius:18px;padding:14px;background:#fff}.message>div{display:flex;justify-content:space-between;gap:14px;font-size:12px;color:var(--muted);margin-bottom:8px}.message>div strong{color:var(--ink)}.message p{margin:0;color:#433b33}.from-admin{background:#fff8ea;border-color:#e8d5aa}.from-customer{background:#fbfbfa}.booking-lines p{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:10px 0;margin:0}.booking-lines p:last-child{border-bottom:0}.booking-lines span{color:var(--muted)}.booking-lines strong{text-align:right;max-width:55%;word-break:break-word}code{background:#f7efe2;border:1px solid var(--line);border-radius:8px;padding:2px 6px}.profile-card h2{font-size:34px;margin:0 0 8px}.enquiry-list .trip-row{align-items:center}
@media(max-width:800px){.detail-grid{grid-template-columns:1fr}.trip-actions{align-items:flex-start;text-align:left}.booking-lines p{display:block}.booking-lines strong{display:block;max-width:100%;text-align:left;margin-top:4px}}


.live-pill{display:inline-flex;align-items:center;gap:7px;margin-top:10px;padding:7px 11px;border:1px solid #d9bf81;border-radius:999px;background:#fffaf1;color:#7d5b18;font-size:12px;font-weight:700;letter-spacing:.02em;box-shadow:0 6px 16px rgba(184,146,68,.08)}
.live-pill.is-online{color:#276749;border-color:#9bd7b4;background:#f0fff4}
.live-refresh-toast{position:fixed;left:50%;bottom:22px;transform:translateX(-50%);z-index:9999;background:#171411;color:#fff;padding:12px 18px;border-radius:999px;box-shadow:0 18px 40px rgba(0,0,0,.2);font-weight:700}
.live-update-notice{position:fixed;right:20px;bottom:20px;z-index:9999;width:min(360px,calc(100% - 40px));background:#fffdfa;border:1px solid #d9bf81;border-radius:22px;box-shadow:0 18px 50px rgba(46,34,20,.18);padding:16px;color:#171514}.live-update-notice strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:15px}.live-update-notice span{display:block;color:#6f695f;margin:4px 0 12px}.live-update-notice button{border:0;border-radius:12px;background:linear-gradient(135deg,#b89244,#d2b26a);color:#fff;padding:10px 13px;font-weight:700;cursor:pointer;width:100%}

.self-booking-box{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 16px;padding:14px 16px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,#fffdf9,#fbf6ed)}
.self-booking-box strong{font-weight:700;color:#211b15}.self-booking-box p{margin:3px 0 0;color:var(--muted);font-size:13px}.traveller-block{margin-top:16px;padding:16px;border:1px dashed #d6bd7d;border-radius:18px;background:#fffaf1}.traveller-block h3{margin:0 0 12px;font-size:26px;font-weight:600}
@media (max-width:700px){.self-booking-box{align-items:flex-start;flex-direction:column}}

/* v22 login cleanup */
.hp-field,.human-check,.human-code{display:none!important}
.clean-auth-card{max-width:760px;margin:auto}
.clean-login-page .auth-clean{max-width:980px}
.clean-login-page .auth-card{padding:30px}


/* v26 clean hero and stronger holiday imagery */
.hero-clean{padding:44px 0 28px;}
.hero-single{max-width:1120px;}
.hero-copy-minimal{max-width:740px;margin-bottom:18px;}
.hero-copy-minimal h1{max-width:760px;font-size:64px;line-height:0.98;margin:0 0 10px;}
.hero-copy-minimal .lead{max-width:680px;font-size:17px;color:#6a6258;margin:0;}
.search-shell-elevated{max-width:1060px;margin-top:18px;}
.section-head .sub{max-width:720px;}
.package-card .sub{font-size:13px;line-height:1.55;color:#6d655b;margin:0 0 10px;}
.pkg-img{position:relative;}
.pkg-img:after{content:"";position:absolute;inset:auto 0 0 0;height:42%;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.06));pointer-events:none;}
.package-card h3{font-size:28px;line-height:1.02;}
@media (max-width:1024px){.hero-copy-minimal h1{font-size:48px;}}
@media (max-width:700px){.hero-copy-minimal h1{font-size:38px;}.hero-copy-minimal .lead{font-size:15px;}}


/* v27 search suggestions and FinTours date picker */
.autocomplete-wrap{position:relative;width:100%}
.autocomplete-list{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:90;background:#fffdfa;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 48px rgba(46,34,20,.16);padding:8px;display:none;max-height:310px;overflow:auto}
.autocomplete-list.open{display:block}
.autocomplete-list button{width:100%;border:0;background:transparent;text-align:left;border-radius:14px;padding:10px 12px;cursor:pointer;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;color:#211b15}
.autocomplete-list button:hover{background:#fff6e8}
.autocomplete-list span{font-weight:650;line-height:1.3}
.autocomplete-list small{color:#8a7b66;white-space:nowrap;font-size:11px;padding-top:2px}
.autocomplete-list mark{background:#f3ddb0;color:#211b15;border-radius:5px;padding:0 2px}
.field input[data-date-picker]{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23b89244' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:44px;cursor:pointer}
.ft-date-picker{position:absolute;z-index:9999;width:322px;background:#fffdfa;border:1px solid var(--line);border-radius:22px;box-shadow:0 24px 60px rgba(46,34,20,.2);padding:14px;display:none;color:#171514}
.ft-date-picker.open{display:block}
.dp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.dp-head strong{font-family:"Cormorant Garamond",serif;font-size:24px;font-weight:650;color:#171514}
.dp-head button,.dp-foot button{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:38px;height:36px;cursor:pointer;color:#6b5431;font-weight:800}
.dp-head button:hover,.dp-foot button:hover{background:#fff6e8;border-color:#d9bf81}
.dp-week,.dp-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}
.dp-week span{text-align:center;color:#8a7b66;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:6px 0}
.dp-days button{border:0;background:#fff;border-radius:12px;height:36px;cursor:pointer;color:#211b15;font-weight:650}
.dp-days button:hover{background:#fff1d8;color:#6b5431}
.dp-days button.muted{color:#b8aa95;background:#faf7ef}
.dp-days button.today{box-shadow:inset 0 0 0 1px #d9bf81}
.dp-days button.selected{background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#fff;box-shadow:0 8px 20px rgba(184,146,68,.28)}
.dp-foot{display:flex;justify-content:space-between;gap:10px;margin-top:12px}
.dp-foot button{flex:1;font-weight:750}
@media(max-width:700px){.ft-date-picker{left:12px!important;right:12px!important;width:auto}.autocomplete-list small{display:none}}


/* v29 reliable native airport/hotel suggestions and date fields */
.native-suggest-input{background:#fff;}
.field input[list]{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23b89244' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:44px;}
.field input.ft-native-date,.field input[type="date"]{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23b89244' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'/%3E%3Cline x1='16' y1='2' x2='16' y2='6'/%3E%3Cline x1='8' y1='2' x2='8' y2='6'/%3E%3Cline x1='3' y1='10' x2='21' y2='10'/%3E%3C/svg%3E") no-repeat right 14px center;padding-right:44px;cursor:pointer;color:#211b15;}
.field input[type="date"]::-webkit-calendar-picker-indicator{opacity:0;width:34px;height:34px;cursor:pointer;}
.ft-date-picker,.autocomplete-list{display:none!important;}
.search-helper{font-size:12px;color:var(--muted);margin-top:6px;}


/* v30 real selectable airport/hotel/destination dropdown */
.ft-select-field{position:relative;overflow:visible!important;}
.ft-select-input{padding-right:44px!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23b89244' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center!important;}
.ft-suggest-menu{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:9999;background:#fffdfa;border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 56px rgba(46,34,20,.20);padding:8px;display:none;max-height:340px;overflow:auto;}
.ft-suggest-menu.open{display:block!important;}
.ft-suggest-option{width:100%;border:0;background:#fff;text-align:left;border-radius:14px;padding:11px 12px;margin:2px 0;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center;color:#211b15;}
.ft-suggest-option:hover,.ft-suggest-option:focus{outline:none;background:#fff3dc;}
.ft-suggest-main{font-weight:750;line-height:1.25;}
.ft-suggest-code{grid-column:2;grid-row:1 / span 2;align-self:center;background:linear-gradient(135deg,var(--gold),var(--gold-2));color:#fff;border-radius:999px;padding:6px 8px;font-weight:800;font-size:12px;letter-spacing:.08em;}
.ft-suggest-option small{grid-column:1;color:#7f7467;font-size:12px;line-height:1.25;}
.ft-suggest-empty{padding:13px 14px;color:#6f695f;font-size:13px;background:#fff7e8;border-radius:14px;}
.search-shell,.content-card,.auth-card{overflow:visible!important;}
.field input.ft-native-date,.field input[type="date"]{appearance:auto;-webkit-appearance:auto;}
@media(max-width:700px){.ft-suggest-menu{position:fixed;left:16px!important;right:16px!important;top:auto!important;bottom:18px;max-height:55vh}.ft-suggest-option{padding:13px}}

/* v31 global airport API-ready selector */
.ft-suggest-empty{line-height:1.5;}
.ft-suggest-option small{display:block;}
.ft-select-input[data-selected-code]:not([data-selected-code=""]){border-color:#cba75e;box-shadow:0 0 0 4px rgba(184,146,68,.10);}


/* v33 hotel rooms and guests selector */
.room-guest-field{position:relative}
.room-guest-trigger{
  width:100%;
  min-height:48px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  padding:12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  color:var(--ink);
  text-align:left;
}
.room-guest-trigger small{color:var(--gold);font-weight:700}
.room-guest-trigger:focus{outline:none;border-color:#cba75e;box-shadow:0 0 0 4px rgba(184,146,68,.10)}
.room-guest-menu{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:80;
  background:#fffdfa;
  border:1px solid var(--line);
  border-radius:22px;
  padding:16px;
  box-shadow:0 24px 55px rgba(46,34,20,.18);
  min-width:330px;
}
.room-guest-menu.open{display:block}
.room-guest-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.room-guest-head strong{font-size:16px}
.room-guest-head button{
  border:0;
  border-radius:999px;
  padding:8px 13px;
  background:linear-gradient(135deg,var(--gold),var(--gold-2));
  color:#fff;
  font-weight:700;
  cursor:pointer;
}
.room-counter{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:13px 0;
  border-bottom:1px solid var(--line);
}
.room-counter:last-of-type{border-bottom:0}
.room-counter strong{display:block;font-size:14px}
.room-counter span{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.counter-controls{
  display:flex;
  align-items:center;
  gap:10px;
  background:#fffaf1;
  border:1px solid #eadfcb;
  border-radius:999px;
  padding:5px;
}
.counter-controls button{
  width:32px;
  height:32px;
  border:0;
  border-radius:50%;
  background:#fff;
  color:#171514;
  box-shadow:0 4px 10px rgba(46,34,20,.08);
  cursor:pointer;
  font-size:18px;
  font-weight:700;
  line-height:1;
}
.counter-controls button:disabled{opacity:.38;cursor:not-allowed}
.counter-controls output{
  min-width:24px;
  text-align:center;
  font-weight:800;
}
.room-guest-menu .field{margin-top:14px}
@media (max-width:700px){
  .room-guest-menu{
    position:fixed;
    left:14px;
    right:14px;
    top:auto;
    bottom:18px;
    min-width:0;
    max-height:78vh;
    overflow:auto;
  }
}


/* v34 clean hotel guest selection */
.field-wide{grid-column:span 2;}
.hotel-notes-field input{font-size:13px;}
.search-shell .form-grid{align-items:start;}
@media(max-width:900px){.field-wide{grid-column:span 1;}}
