:root{
  --pine:#0f3d2e;--pine-dark:#071f18;--pine-soft:#e9f3ee;--gold:#d3a13f;--gold-soft:#fff4d9;--cream:#f7f3ea;--snow:#fff;--ink:#15231d;--muted:#6d786f;--line:rgba(15,61,46,.14);--shadow:0 18px 48px rgba(8,37,29,.12);--radius:22px;--container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:linear-gradient(180deg,#fbf8ef 0%,#ffffff 34%,#f2f7f3 100%)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(var(--container),calc(100% - 36px));margin-inline:auto}.top-strip{background:var(--pine-dark);color:#dce9e2;font-size:13px}.top-strip .container{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0}.top-strip a{color:#ffe2a0}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand img{width:54px;height:54px;object-fit:contain;border-radius:14px;background:#fff}.brand strong{display:block;font-size:20px;font-weight:560;letter-spacing:.1px}.brand span span{font-size:12px;color:var(--muted);display:block;margin-top:1px}.nav-links{display:flex;align-items:center;gap:4px}.nav-links a{padding:10px 11px;border-radius:999px;font-size:14px;color:#33423c}.nav-links a:hover{background:var(--pine-soft);color:var(--pine)}.btn{border:0;border-radius:999px;padding:12px 18px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:520;cursor:pointer;transition:.2s ease;background:var(--pine-soft);color:var(--pine)}.btn:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(8,37,29,.12)}.btn.gold{background:var(--gold);color:#1b1304}.btn.white{background:#fff;color:var(--pine);border:1px solid rgba(255,255,255,.7)}.btn.soft{background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.24);color:#fff}.btn.small{padding:10px 14px;min-height:38px;font-size:14px}.btn.full{width:100%}.menu-toggle{display:none;border:1px solid var(--line);background:#fff;border-radius:14px;width:44px;height:44px;font-size:22px;color:var(--pine)}.mobile-menu{display:none;position:absolute;left:18px;right:18px;top:78px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:22px;padding:10px}.mobile-menu.open{display:grid}.mobile-menu a{padding:14px 15px;border-radius:14px}.mobile-menu a:hover{background:var(--pine-soft)}
.hero{position:relative;min-height:620px;display:flex;align-items:center;overflow:hidden;background:var(--pine-dark)}.hero.compact{min-height:430px}.hero-bg{position:absolute;inset:0}.hero-bg img{width:100%;height:100%;object-fit:cover;opacity:.68}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,31,24,.92),rgba(7,31,24,.58),rgba(7,31,24,.18)),linear-gradient(180deg,rgba(7,31,24,.1),rgba(7,31,24,.86))}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .72fr;gap:34px;align-items:center;padding:74px 0}.hero-copy{color:#fff}.eyebrow{display:inline-flex;align-items:center;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.12);color:#ffe2a0;border-radius:999px;padding:8px 13px;font-size:13px;margin-bottom:16px}.hero h1{font-size:clamp(40px,6.2vw,72px);line-height:.98;margin:0 0 14px;letter-spacing:-.05em;font-weight:560;max-width:820px}.hero p{font-size:clamp(16px,1.9vw,20px);line-height:1.55;color:#e6f2eb;margin:0 0 24px;max-width:680px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.trust-pill{font-size:13px;color:#eaf6ef;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:8px 11px}.search-card,.booking-card{background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.7);border-radius:28px;padding:22px;box-shadow:var(--shadow)}.search-card h2,.booking-card h2{font-size:24px;margin:0 0 6px;font-weight:560}.search-card p,.booking-card p{color:var(--muted);font-size:14px;line-height:1.5;margin:0 0 14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:7px;font-size:13px;color:#42514a}.field.full{grid-column:1/-1}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px 13px;font:inherit;color:var(--ink)}.section{padding:76px 0}.section.tight{padding:48px 0}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-head h2{font-size:clamp(28px,4vw,44px);line-height:1.05;margin:0 0 8px;font-weight:540;letter-spacing:-.03em}.section-head p{margin:0;color:var(--muted);line-height:1.55;max-width:670px}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.category-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 10px 32px rgba(8,37,29,.08);min-height:100%}.category-card img{height:150px;width:100%;object-fit:cover}.category-card h3{font-size:18px;margin:15px 16px 7px;font-weight:560}.category-card p{font-size:14px;line-height:1.45;color:var(--muted);margin:0 16px 18px}.cards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.listing-card{background:#fff;border:1px solid var(--line);border-radius:26px;overflow:hidden;box-shadow:0 14px 36px rgba(8,37,29,.10);display:flex;flex-direction:column}.listing-media{position:relative;height:210px;background:var(--pine-soft)}.listing-media img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:12px;left:12px;background:#fff;color:var(--pine);border-radius:999px;padding:7px 10px;font-size:12px;box-shadow:0 10px 22px rgba(0,0,0,.08)}.rating{position:absolute;top:12px;right:12px;background:rgba(7,31,24,.86);color:#fff;border-radius:999px;padding:7px 10px;font-size:12px}.listing-body{padding:18px;display:flex;flex-direction:column;gap:10px;flex:1}.listing-body h3{font-size:21px;line-height:1.15;margin:0;font-weight:560}.location{font-size:14px;color:var(--muted)}.listing-body p{margin:0;color:var(--muted);line-height:1.48;font-size:14px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chips span{font-size:12px;background:var(--pine-soft);color:#315145;border-radius:999px;padding:6px 9px}.price-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:auto;color:var(--pine)}.price-row strong{font-weight:560}.card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.place-grid,.plan-grid,.why-grid,.steps-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.place-grid{grid-template-columns:repeat(3,1fr)}.info-card,.step-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:20px;box-shadow:0 10px 30px rgba(8,37,29,.08)}.info-card h3,.step-card h3{font-size:20px;margin:0 0 9px;font-weight:550}.info-card p,.step-card p{color:var(--muted);line-height:1.5;margin:0;font-size:14px}.step-num{width:38px;height:38px;border-radius:50%;background:var(--gold);display:grid;place-items:center;margin-bottom:12px;color:#2b1a00}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(135deg,var(--pine-dark),var(--pine));color:#fff;border-radius:32px;padding:30px;box-shadow:var(--shadow)}.cta-band h2{font-size:clamp(26px,4vw,42px);margin:0 0 8px;font-weight:550}.cta-band p{margin:0;color:#dbeee4;line-height:1.55}.footer{background:var(--pine-dark);color:#dce9e2;padding:48px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:26px}.footer img{width:86px;margin-bottom:10px}.footer h3,.footer h4{color:#fff;margin:0 0 10px;font-weight:550}.footer p{color:#b9cbc2;line-height:1.6}.footer a{display:block;color:#c8d8d0;margin:8px 0;font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;color:#aebfb7;font-size:13px}.floating-wa{position:fixed;right:18px;bottom:18px;z-index:60;background:#1da851;color:#fff;border-radius:999px;padding:13px 18px;box-shadow:0 16px 36px rgba(0,0,0,.2);font-weight:560}.modal{position:fixed;inset:0;z-index:100;display:none;place-items:center;background:rgba(5,18,14,.62);padding:18px}.modal.open{display:grid}.modal-card{width:min(520px,100%);background:#fff;border-radius:28px;padding:22px;box-shadow:var(--shadow);max-height:90vh;overflow:auto}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.modal-head h2{margin:0;font-size:25px;font-weight:560}.modal-close{border:0;background:var(--pine-soft);border-radius:12px;width:40px;height:40px;font-size:20px}.success-note,.form-message{font-size:13px;color:#087443;margin-top:10px;line-height:1.45}.page-intro{background:#fff;border:1px solid var(--line);border-radius:26px;padding:20px;box-shadow:0 10px 30px rgba(8,37,29,.08)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.filter-chip{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--pine);padding:10px 14px;cursor:pointer}.filter-chip.active{background:var(--pine);color:#fff}.empty-state{background:#fff;border:1px dashed var(--line);border-radius:24px;padding:28px;text-align:center;color:var(--muted)}
@media(max-width:1020px){.nav-links,.desktop-only{display:none}.menu-toggle{display:block}.hero-grid{grid-template-columns:1fr}.search-card{max-width:640px}.category-grid{grid-template-columns:repeat(2,1fr)}.cards-grid,.place-grid{grid-template-columns:repeat(2,1fr)}.plan-grid,.why-grid,.steps-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:auto}.hero-grid{padding:58px 0}.hero::after{background:linear-gradient(180deg,rgba(7,31,24,.78),rgba(7,31,24,.62),rgba(7,31,24,.92))}}
@media(max-width:640px){.container{width:min(100% - 28px,var(--container))}.top-strip{display:none}.nav-wrap{padding:9px 0}.brand img{width:44px;height:44px}.brand strong{font-size:17px}.brand span span{font-size:11px}.mobile-menu{top:66px}.hero{min-height:560px;align-items:flex-start}.hero.compact{min-height:340px}.hero-grid{padding:38px 0 30px;gap:18px}.hero h1{font-size:clamp(31px,10vw,34px);line-height:1.04;letter-spacing:-.03em}.hero p{font-size:15px;margin-bottom:16px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.hero-actions{gap:9px}.hero-actions .btn{flex:1 1 100%;padding:11px 14px}.trust-row{display:none}.search-card{padding:16px;border-radius:22px}.search-card h2{font-size:19px}.search-card p{display:none}.form-grid{grid-template-columns:1fr;gap:10px}.section{padding:44px 0}.section.tight{padding:32px 0}.section-head{align-items:flex-start;flex-direction:column;margin-bottom:16px}.section-head h2{font-size:26px;line-height:1.12}.section-head p{font-size:14px}.category-grid,.cards-grid,.place-grid,.plan-grid,.why-grid,.steps-grid{grid-template-columns:1fr;gap:13px}.category-card img{height:128px}.category-card p,.info-card p,.step-card p{font-size:13px}.listing-media{height:178px}.listing-body{padding:15px}.listing-body h3{font-size:19px}.card-actions{grid-template-columns:1fr}.place-grid .listing-card:nth-child(n+5),.why-grid .info-card:nth-child(n+4),.steps-grid .step-card:nth-child(n+4){display:none}.cta-band{border-radius:24px;padding:20px;align-items:flex-start;flex-direction:column}.cta-band .btn{width:100%}.footer{padding-bottom:84px}.footer-grid{grid-template-columns:1fr;gap:16px}.footer-bottom{flex-direction:column;gap:6px}.floating-wa{left:14px;right:14px;text-align:center;justify-content:center;display:flex}.modal-card{border-radius:22px;padding:18px}.filters{overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}.filter-chip{white-space:nowrap}}

/* V12 mobile-first polish: MakeMyTrip-style compact booking UI + bottom bar */
.mmt-bottom-bar{display:none}.mmt-bottom-bar a{color:inherit;text-decoration:none}.mmt-bottom-bar .mmt-icon{font-size:18px;line-height:1}.mmt-bottom-bar .mmt-label{font-size:11px;line-height:1.1}.mmt-bottom-bar a.active{color:var(--pine);background:var(--pine-soft)}
@media(max-width:640px){
  html,body{max-width:100%;overflow-x:hidden}body{font-size:14px;padding-bottom:78px;background:#fbf8ef}.container{width:min(100% - 28px,var(--container))}.top-strip{display:none}.site-header{border-bottom:1px solid rgba(15,61,46,.10)}.nav-wrap{padding:8px 0}.brand{gap:8px}.brand img{width:42px;height:42px;border-radius:10px}.brand strong{font-size:17px;font-weight:560}.brand span span{font-size:10px}.menu-toggle{width:40px;height:40px;border-radius:12px;font-size:20px}.mobile-menu{top:60px;left:14px;right:14px;border-radius:18px;grid-template-columns:1fr 1fr;gap:4px}.mobile-menu a{font-size:13px;padding:12px 12px}.mobile-menu a:last-child{grid-column:1/-1}.hero,.hero.compact{min-height:auto;align-items:flex-start}.hero-bg img{opacity:.8;object-position:center top}.hero::after{background:linear-gradient(180deg,rgba(7,31,24,.72) 0%,rgba(7,31,24,.44) 42%,rgba(7,31,24,.88) 100%)}.hero-grid{display:block;padding:34px 0 18px}.hero-copy{max-width:340px}.eyebrow{font-size:11px;padding:6px 10px;margin-bottom:9px}.hero h1{font-size:clamp(26px,8.2vw,34px);line-height:1.06;letter-spacing:-.035em;margin-bottom:8px;max-width:330px}.hero p{font-size:14px;line-height:1.38;max-width:330px;margin-bottom:12px;color:#edf7f1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.hero-actions{gap:8px}.hero-actions .btn{min-height:38px;padding:9px 12px;font-size:13px}.hero-actions .btn.soft{display:none}.trust-row{display:none}.search-card,.booking-card{margin-top:16px;padding:14px;border-radius:20px;box-shadow:0 14px 36px rgba(8,37,29,.18)}.search-card h2,.booking-card h2{font-size:18px;margin-bottom:3px}.search-card p,.booking-card p{display:none}.form-grid{grid-template-columns:1fr;gap:9px}.field{font-size:12px;gap:5px}.field input,.field select,.field textarea{min-height:41px;padding:10px 12px;border-radius:13px}.btn{min-height:42px;padding:10px 14px;font-size:14px;font-weight:520}.section{padding:42px 0}.section.tight{padding:32px 0}.section-head{display:block;margin-bottom:16px}.section-head h2{font-size:clamp(23px,6.7vw,28px);line-height:1.12;letter-spacing:-.025em;margin-bottom:6px}.section-head p{font-size:13px;line-height:1.42;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.category-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 12px;margin-inline:-2px}.category-grid::-webkit-scrollbar{display:none}.category-card{min-width:142px;border-radius:18px;scroll-snap-align:start;box-shadow:0 8px 22px rgba(8,37,29,.08)}.category-card img{height:92px}.category-card h3{font-size:15px;margin:12px 12px 5px;line-height:1.2}.category-card p{font-size:12px;line-height:1.32;margin:0 12px 14px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.cards-grid,.place-grid,.plan-grid,.why-grid,.steps-grid{grid-template-columns:1fr;gap:13px}.listing-card{border-radius:20px;box-shadow:0 10px 28px rgba(8,37,29,.09)}.listing-media{height:168px}.badge,.rating{top:10px;font-size:11px;padding:6px 9px}.badge{left:10px}.rating{right:10px}.listing-body{padding:14px;gap:8px}.listing-body h3{font-size:18px;line-height:1.18}.location{font-size:12px}.listing-body p{font-size:13px;line-height:1.38;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.chips{gap:6px}.chips span{font-size:11px;padding:5px 8px}.price-row{font-size:13px}.card-actions{grid-template-columns:1fr;gap:8px}.card-actions .btn{width:100%;min-height:40px}.info-card,.step-card{border-radius:18px;padding:16px}.info-card h3,.step-card h3{font-size:17px;line-height:1.2;margin-bottom:6px}.info-card p,.step-card p{font-size:13px;line-height:1.4;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.step-num{width:32px;height:32px;margin-bottom:9px}.cta-band{display:block;border-radius:22px;padding:20px}.cta-band h2{font-size:24px;line-height:1.15}.cta-band p{font-size:13px;line-height:1.42;margin-bottom:14px}.footer{padding:34px 0 92px}.footer-grid{grid-template-columns:1fr;gap:16px}.footer img{width:70px}.footer h3,.footer h4{font-size:16px}.footer p,.footer a{font-size:13px;line-height:1.45}.footer-bottom{display:block;font-size:12px}.floating-wa{display:none}.modal{padding:12px}.modal-card{border-radius:22px;padding:16px}.modal-head h2{font-size:20px}.mmt-bottom-bar{position:fixed;left:10px;right:10px;bottom:10px;z-index:90;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;padding:8px;border:1px solid rgba(15,61,46,.14);border-radius:22px;background:rgba(255,255,255,.96);box-shadow:0 18px 42px rgba(8,37,29,.18);backdrop-filter:blur(14px)}.mmt-bottom-bar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:50px;border-radius:16px;color:#4d5a54}.mmt-bottom-bar a:active{transform:scale(.98)}
}
@media(min-width:641px) and (max-width:1020px){.hero h1{font-size:clamp(36px,6vw,56px)}.hero p{font-size:16px}.search-card{max-width:540px}.section{padding:58px 0}}

/* V13: MMT-style clean home carousel + compact hotel search */
.home-visual{padding:34px 0 18px;background:linear-gradient(180deg,#fbf7ee 0%,#eef5f0 100%)}
.home-visual-wrap{display:grid;gap:18px}.home-intro{text-align:center;max-width:760px;margin:0 auto}.eyebrow.light{background:#fff;border:1px solid var(--line);color:var(--pine);box-shadow:0 10px 26px rgba(8,37,29,.06)}.home-intro h1{font-size:clamp(34px,5vw,62px);line-height:1.02;letter-spacing:-.045em;margin:10px 0 10px;font-weight:560;color:var(--pine-dark)}.home-intro p{font-size:clamp(15px,1.6vw,18px);line-height:1.5;color:var(--muted);margin:0 auto;max-width:650px}.hero-carousel{border-radius:32px;overflow:hidden;border:1px solid rgba(15,61,46,.12);box-shadow:0 22px 56px rgba(8,37,29,.16);background:#eaf3ee;aspect-ratio:21/8}.carousel-track{position:relative;width:100%;height:100%}.carousel-track img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .8s ease}.carousel-track img.active{opacity:1}.stay-search-section{padding:0 0 34px;background:linear-gradient(180deg,#eef5f0 0%,#fff 100%)}.stay-search-card{margin-top:-2px;background:#fff;border:1px solid var(--line);border-radius:26px;padding:18px;box-shadow:0 18px 44px rgba(8,37,29,.12)}.search-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.search-title-row h2{font-size:23px;line-height:1.15;margin:0 0 4px;font-weight:560;color:var(--pine-dark)}.search-title-row p{font-size:13px;color:var(--muted);margin:0}.nights-pill{background:var(--gold-soft);color:#6a4612;border:1px solid rgba(211,161,63,.25);border-radius:999px;padding:8px 12px;font-size:13px;font-weight:560;white-space:nowrap}.stay-search-form{display:grid;grid-template-columns:minmax(190px,1.25fr) repeat(2,minmax(145px,.85fr)) repeat(3,minmax(86px,.46fr)) 112px;gap:10px;align-items:end}.search-field{display:grid;gap:6px;font-size:12px;color:#405047;font-weight:520}.search-field input,.search-field select{border:1px solid var(--line);border-radius:15px;background:#fff;min-height:43px;padding:10px 12px;font:inherit;color:var(--ink);outline:none}.search-field input:focus,.search-field select:focus{border-color:rgba(211,161,63,.75);box-shadow:0 0 0 3px rgba(211,161,63,.14)}.search-btn{width:100%;min-height:43px}.quick-icon-nav{margin:14px 0 0;display:flex;gap:10px;overflow-x:auto;padding:4px 2px 10px;scroll-snap-type:x mandatory}.quick-icon-nav::-webkit-scrollbar{display:none}.quick-icon-nav a{min-width:112px;scroll-snap-align:start;background:#fff;border:1px solid var(--line);border-radius:18px;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 10px;box-shadow:0 8px 24px rgba(8,37,29,.07);color:var(--pine)}.quick-icon-nav span{font-size:20px}.quick-icon-nav b{font-size:13px;font-weight:540}.floating-wa{font-size:0;width:58px;height:58px;padding:0;border-radius:50%;display:grid;place-items:center;background:#25D366;right:20px;bottom:22px;box-shadow:0 18px 42px rgba(37,211,102,.35),0 10px 24px rgba(0,0,0,.18)}.floating-wa svg{width:31px;height:31px;display:block}.search-summary{border:1px solid rgba(211,161,63,.25);background:var(--gold-soft);border-radius:18px;padding:12px 15px;margin-bottom:16px;color:#6a4612;font-size:14px;line-height:1.45}.price-total{display:block;font-size:12px;color:var(--muted);margin-top:2px}.price-row strong .price-total{font-weight:460}.listing-card.search-matched{border-color:rgba(211,161,63,.45)}
@media(max-width:1020px){.hero-carousel{aspect-ratio:16/8}.stay-search-form{grid-template-columns:1fr 1fr 1fr}.location-field{grid-column:1/-1}.search-btn{grid-column:1/-1}}
@media(max-width:640px){.home-visual{padding:18px 0 10px}.home-intro{text-align:left}.home-intro .eyebrow{font-size:11px;padding:6px 10px;margin-bottom:7px}.home-intro h1{font-size:clamp(25px,7.4vw,31px);line-height:1.08;margin:7px 0}.home-intro p{font-size:13px;line-height:1.38;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.hero-carousel{border-radius:20px;aspect-ratio:16/9;box-shadow:0 12px 32px rgba(8,37,29,.12)}.stay-search-section{padding-bottom:22px}.stay-search-card{border-radius:20px;padding:13px;box-shadow:0 12px 30px rgba(8,37,29,.11)}.search-title-row{align-items:flex-start;margin-bottom:11px}.search-title-row h2{font-size:18px;margin-bottom:2px}.search-title-row p{font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.nights-pill{font-size:12px;padding:7px 9px}.stay-search-form{grid-template-columns:1fr 1fr;gap:8px}.location-field{grid-column:1/-1}.search-field{font-size:11px;gap:4px}.search-field input,.search-field select{min-height:39px;border-radius:12px;padding:8px 10px;font-size:13px}.small-field input{text-align:center}.search-btn{grid-column:1/-1;min-height:40px;margin-top:2px}.quick-icon-nav{gap:8px;margin-top:11px;padding-bottom:8px}.quick-icon-nav a{min-width:84px;border-radius:15px;flex-direction:column;gap:4px;padding:10px 8px}.quick-icon-nav span{font-size:19px}.quick-icon-nav b{font-size:12px}.home-category-cards{display:none}.floating-wa{display:grid !important;width:52px;height:52px;right:14px;bottom:84px}.floating-wa svg{width:29px;height:29px}.mmt-bottom-bar{right:76px}.listing-card.search-matched .price-row{align-items:flex-start}.search-summary{font-size:12px;padding:10px 12px;border-radius:15px}.section{padding:38px 0}.section.tight{padding:28px 0}}

/* v14 polish: cleaner category page heroes, fixed mobile bottom bar and WhatsApp */
.hero.compact .hero-actions{display:none!important}
@media(max-width:640px){
  /* Category/page hero: show the image as a clean landscape block, keep text below it */
  body:not([data-page="home"]) .hero.compact{
    position:relative;
    background:#fbf8ef;
    min-height:0!important;
    padding:0 0 16px;
    overflow:visible;
  }
  body:not([data-page="home"]) .hero.compact .hero-bg{
    position:relative;
    inset:auto;
    height:auto;
    width:100%;
    display:block;
    border-bottom:1px solid rgba(15,61,46,.10);
  }
  body:not([data-page="home"]) .hero.compact .hero-bg img{
    width:100%;
    height:auto;
    aspect-ratio:16/9;
    object-fit:cover;
    opacity:1;
    border-radius:0;
  }
  body:not([data-page="home"]) .hero.compact::after{display:none!important}
  body:not([data-page="home"]) .hero.compact .hero-grid{padding:18px 0 0!important;display:block}
  body:not([data-page="home"]) .hero.compact .hero-copy{color:var(--pine-dark);max-width:100%}
  body:not([data-page="home"]) .hero.compact .eyebrow{background:#fff;border-color:var(--line);color:var(--pine);box-shadow:0 6px 18px rgba(8,37,29,.06);margin-bottom:9px}
  body:not([data-page="home"]) .hero.compact h1{font-size:clamp(25px,7.2vw,32px);line-height:1.08;margin:0 0 8px;color:var(--pine-dark);max-width:100%}
  body:not([data-page="home"]) .hero.compact p{font-size:14px;line-height:1.42;color:var(--muted);max-width:100%;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  body:not([data-page="home"]) .section:first-of-type{padding-top:24px}

  /* Bottom navigation: equal width, centered, hide/show via JS on scroll */
  .mmt-bottom-bar{
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    width:auto!important;
    transition:transform .28s ease, opacity .28s ease;
    transform:translateY(0);
    opacity:1;
  }
  .mmt-bottom-bar.is-hidden{
    transform:translateY(120%);
    opacity:0;
    pointer-events:none;
  }
  .mmt-bottom-bar a{min-width:0!important}
  .mmt-bottom-bar .mmt-icon{font-size:19px}
  .mmt-bottom-bar .mmt-label{font-size:11px}

  /* Exact WhatsApp floating action button: always right corner above bottom bar */
  .floating-wa{
    display:grid!important;
    left:auto!important;
    right:16px!important;
    bottom:86px!important;
    width:54px!important;
    height:54px!important;
    padding:0!important;
    border-radius:50%!important;
    background:#25D366!important;
    box-shadow:0 16px 34px rgba(37,211,102,.35),0 10px 24px rgba(0,0,0,.18)!important;
    align-items:center!important;
    justify-items:center!important;
    font-size:0!important;
    transition:transform .25s ease, opacity .25s ease;
  }
  .floating-wa svg{width:30px!important;height:30px!important;display:block!important}
  .floating-wa.is-lowered{bottom:18px!important}

  /* Search box stays below image and remains compact */
  .stay-search-card{margin-top:0}
}
@media(min-width:641px){
  .mmt-bottom-bar{display:none!important}
}

/* v15: keep homepage image clean — no CTA buttons over hero/background */
body[data-page="home"] .hero-actions,
body[data-page="home"] .hero .btn[data-setting="hero_primary_cta"],
body[data-page="home"] .hero .btn[data-setting="hero_whatsapp_cta"]{
  display:none !important;
}
/* avoid accidental overlap if an old cached hero block renders */
body[data-page="home"] .hero-copy .trust-row{display:none!important;}


/* v16: overall mobile layout repair + faster default listing images */
@media(max-width:640px){
  body{padding-bottom:78px;overflow-x:hidden;background:#fbf8ef;}
  .site-header{box-shadow:0 8px 22px rgba(8,37,29,.06)}
  .brand{gap:8px;min-width:0;}
  .brand img{width:42px!important;height:42px!important;border-radius:10px;}
  .brand strong{font-size:18px!important;line-height:1.05;}
  .brand span span{font-size:11px!important;}
  .menu-toggle{width:44px;height:44px;border-radius:16px;}

  /* Category pages: no split image/text layout on mobile */
  body:not([data-page="home"]) .hero.compact{
    display:block!important;
    min-height:0!important;
    padding:20px 0 14px!important;
    background:linear-gradient(135deg,#fffaf0 0%,#eef7f1 100%)!important;
    border-bottom:1px solid rgba(15,61,46,.10);
    overflow:hidden!important;
  }
  body:not([data-page="home"]) .hero.compact .hero-bg{display:none!important;}
  body:not([data-page="home"]) .hero.compact::after{display:none!important;}
  body:not([data-page="home"]) .hero.compact .hero-grid{
    display:block!important;
    padding:0!important;
  }
  body:not([data-page="home"]) .hero.compact .hero-copy{
    color:var(--pine-dark)!important;
    max-width:100%!important;
    padding-right:0!important;
  }
  body:not([data-page="home"]) .hero.compact .eyebrow{
    background:#fff!important;
    color:var(--pine)!important;
    border:1px solid var(--line)!important;
    box-shadow:0 8px 20px rgba(8,37,29,.06)!important;
    font-size:12px!important;
    padding:7px 11px!important;
    margin-bottom:10px!important;
  }
  body:not([data-page="home"]) .hero.compact h1{
    font-size:clamp(27px,7.5vw,34px)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    margin:0 0 8px!important;
    color:var(--pine-dark)!important;
    max-width:100%!important;
  }
  body:not([data-page="home"]) .hero.compact p{
    font-size:14px!important;
    line-height:1.42!important;
    color:var(--muted)!important;
    max-width:100%!important;
    margin:0!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
  }
  body:not([data-page="home"]) .section:first-of-type{padding-top:24px!important;}
  .section-head{display:block;margin-bottom:18px;}
  .section-head h2{font-size:clamp(26px,7vw,32px)!important;line-height:1.1!important;}
  .section-head p{font-size:14px;line-height:1.45;}

  /* Listing cards: clean compact single-column */
  .cards-grid,.place-grid,.plan-grid,.why-grid,.steps-grid{grid-template-columns:1fr!important;gap:14px!important;}
  .listing-card{border-radius:22px!important;box-shadow:0 10px 26px rgba(8,37,29,.10)!important;}
  .listing-media{height:176px!important;background:linear-gradient(135deg,#f7f3ea,#e9f3ee)!important;display:grid;place-items:center;}
  .listing-media img{object-fit:contain!important;padding:18px;background:#fff;width:100%;height:100%;}
  .badge,.rating{font-size:11px!important;padding:6px 9px!important;}
  .listing-body{padding:14px!important;gap:8px!important;}
  .listing-body h3{font-size:21px!important;line-height:1.12!important;}
  .listing-body p{font-size:13px!important;line-height:1.38!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
  .chips span{font-size:11px!important;padding:5px 8px!important;}
  .card-actions{grid-template-columns:1fr!important;gap:8px!important;}
  .card-actions .btn{min-height:40px!important;padding:9px 12px!important;font-size:13px!important;}

  /* Footer content should not be hidden behind bottom nav */
  .footer{padding:36px 0 104px!important;}
  .footer-grid{gap:18px!important;}
  .footer img{width:78px!important;}

  /* Clean smaller WhatsApp floating button */
  .floating-wa{
    width:44px!important;
    height:44px!important;
    right:14px!important;
    bottom:74px!important;
    padding:0!important;
    border-radius:50%!important;
    background:#25D366!important;
    box-shadow:0 10px 22px rgba(37,211,102,.32),0 6px 14px rgba(0,0,0,.14)!important;
    border:2px solid rgba(255,255,255,.95)!important;
    display:grid!important;
    place-items:center!important;
    font-size:0!important;
    z-index:91!important;
  }
  .floating-wa svg{width:24px!important;height:24px!important;display:block!important;}
  .floating-wa.is-lowered{bottom:14px!important;}

  /* Bottom bar: smaller, equal, clean and less intrusive */
  .mmt-bottom-bar{
    left:12px!important;
    right:12px!important;
    bottom:8px!important;
    width:auto!important;
    min-height:58px!important;
    padding:6px!important;
    gap:3px!important;
    border-radius:20px!important;
    box-shadow:0 12px 30px rgba(8,37,29,.16)!important;
    border:1px solid rgba(15,61,46,.13)!important;
    background:rgba(255,255,255,.97)!important;
  }
  .mmt-bottom-bar a{min-height:44px!important;border-radius:15px!important;gap:2px!important;}
  .mmt-bottom-bar .mmt-icon{font-size:17px!important;line-height:1!important;}
  .mmt-bottom-bar .mmt-label{font-size:10.5px!important;line-height:1.05!important;}
  .mmt-bottom-bar.is-hidden{transform:translateY(125%)!important;opacity:0!important;pointer-events:none!important;}
}

@media(min-width:641px){
  .listing-media img[src*="logo"]{object-fit:contain!important;padding:28px;background:#fff;}
}

/* v17 speed + bottom-space fixes */
.cards-grid:empty::before,
#homeFeatured:empty::before,
#homePlaces:empty::before,
#listingGrid:empty::before{
  content:'Loading options...';
  display:block;
  background:#fff;
  border:1px solid var(--line);
  border-radius:22px;
  padding:18px;
  color:var(--muted);
}
.footer-bottom{gap:8px;align-items:center;}
.footer-bottom span{display:inline-block;}
@media(max-width:640px){
  body{padding-bottom:0!important;min-height:auto!important;}
  main{overflow:hidden;}
  .section{padding:34px 0!important;}
  .section.tight{padding:26px 0!important;}
  .footer{padding:30px 0 20px!important;margin-bottom:0!important;}
  .footer-bottom{display:block!important;margin-top:18px!important;padding-top:12px!important;}
  .footer-bottom span{display:block!important;margin:3px 0!important;}
  .floating-wa{width:44px!important;height:44px!important;right:14px!important;bottom:70px!important;box-shadow:0 8px 18px rgba(37,211,102,.28),0 4px 10px rgba(0,0,0,.12)!important;}
  .floating-wa svg{width:23px!important;height:23px!important;}
  .floating-wa.is-lowered{bottom:12px!important;}
  .mmt-bottom-bar{min-height:56px!important;bottom:8px!important;}
  .mmt-bottom-bar.is-hidden{transform:translateY(135%)!important;opacity:0!important;pointer-events:none!important;}
  .listing-media{height:154px!important;}
  .listing-media img{padding:14px!important;}
  .listing-body h3{font-size:19px!important;}
  .price-row{align-items:flex-start!important;}
}


/* v18 listing redesign: no image/text overlap, multi-photo carousel, details page */
.listing-card{position:relative;overflow:hidden!important;border-radius:24px!important;background:#fff!important;border:1px solid rgba(15,61,46,.12)!important;box-shadow:0 14px 34px rgba(8,37,29,.10)!important;}
.listing-media{position:relative!important;height:230px!important;overflow:hidden!important;background:#eef5f0!important;display:block!important;}
.card-image-link{display:block;width:100%;height:100%;}
.gallery-carousel{position:relative;width:100%;height:100%;overflow:hidden;background:#edf5ef;touch-action:pan-y;}
.gallery-track,.gallery-carousel img{width:100%;height:100%;}
.gallery-track{position:relative;}
.gallery-carousel img{position:absolute;inset:0;object-fit:cover!important;padding:0!important;background:#edf5ef!important;opacity:0;transition:opacity .25s ease;}
.gallery-carousel img.active{opacity:1;}
.gallery-btn{position:absolute;top:50%;transform:translateY(-50%);width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.88);color:var(--pine);box-shadow:0 10px 22px rgba(0,0,0,.12);display:grid;place-items:center;font-size:25px;line-height:1;cursor:pointer;z-index:4;}
.gallery-btn.prev{left:10px}.gallery-btn.next{right:10px}
.gallery-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:5px;z-index:4;}
.gallery-dots span{width:6px;height:6px;border-radius:999px;background:rgba(255,255,255,.58);box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.gallery-dots span.active{width:16px;background:#fff;}
.card-kicker{font-size:12px;color:#b88421;font-weight:560;letter-spacing:.03em;text-transform:uppercase;}
.listing-body h3 a{color:inherit;text-decoration:none;}
.listing-body h3 a:hover{color:var(--pine)}
.location{font-weight:520;color:#50635a!important;}
.price-row{padding-top:8px;border-top:1px solid rgba(15,61,46,.08);}
.price-row strong{font-size:18px;color:var(--pine-dark);text-align:right;}
.card-actions .btn.soft{background:#eef5f0;color:var(--pine);border:1px solid rgba(15,61,46,.10);}
.detail-hero-section{padding:34px 0 20px;background:linear-gradient(180deg,#fbf7ee,#fff)}
.detail-hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:24px;align-items:center;}
.detail-gallery-wrap{height:440px;border-radius:30px;overflow:hidden;border:1px solid rgba(15,61,46,.12);box-shadow:0 18px 48px rgba(8,37,29,.14);background:#fff;}
.detail-summary{background:#fff;border:1px solid rgba(15,61,46,.12);border-radius:28px;padding:24px;box-shadow:0 14px 34px rgba(8,37,29,.08);}
.detail-summary h1{font-size:clamp(30px,4vw,52px);line-height:1.02;margin:10px 0 12px;color:var(--pine-dark);letter-spacing:-.04em;}
.detail-summary p{color:var(--muted);line-height:1.55;}
.detail-location{font-weight:560;color:var(--pine)!important;margin:0 0 10px;}
.detail-price{margin:16px 0;background:#fff7df;border:1px solid rgba(211,161,63,.24);padding:14px;border-radius:18px;color:var(--pine);}
.detail-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.detail-content-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:16px;align-items:start;}
.detail-card{background:#fff;border:1px solid rgba(15,61,46,.12);border-radius:22px;padding:20px;box-shadow:0 10px 28px rgba(8,37,29,.07);}
.detail-card h2{margin:0 0 10px;font-size:22px;color:var(--pine-dark);font-weight:560;}
.detail-card p{color:var(--muted);line-height:1.6;margin:0 0 10px;}
.detail-list{margin:0;padding-left:20px;color:var(--muted);line-height:1.8}.small-note{font-size:13px}.detail-chips span{font-size:13px}
@media(max-width:640px){
  .listing-card{border-radius:19px!important;box-shadow:0 8px 22px rgba(8,37,29,.09)!important;}
  .listing-media{height:184px!important;}
  .gallery-btn{width:30px;height:30px;font-size:22px;background:rgba(255,255,255,.92)}
  .gallery-btn.prev{left:8px}.gallery-btn.next{right:8px}
  .listing-body h3{font-size:18px!important;line-height:1.18!important;}
  .price-row strong{font-size:16px;text-align:left;}
  .card-actions{grid-template-columns:1fr 1fr!important;}
  .card-actions .btn{font-size:12px!important;min-height:38px!important;padding:8px 10px!important;}
  .detail-hero-section{padding:16px 0 12px;}
  .detail-hero-grid{display:block;}
  .detail-gallery-wrap{height:260px;border-radius:20px;margin-bottom:12px;}
  .detail-summary{border-radius:20px;padding:16px;}
  .detail-summary h1{font-size:27px;line-height:1.08;margin:8px 0 10px;}
  .detail-summary p{font-size:13px;line-height:1.42;}
  .detail-actions{grid-template-columns:1fr;}
  .detail-content-grid{grid-template-columns:1fr;gap:12px;}
  .detail-card{border-radius:18px;padding:16px;}
  .detail-card h2{font-size:19px;}
  .detail-list{font-size:13px;line-height:1.65;}
}

/* v19: remove duplicate page hero, cleaner listing cards, confirmation UX */
body[data-page="hotels"] .hero.compact,
body[data-page="restaurants"] .hero.compact,
body[data-page="camps"] .hero.compact,
body[data-page="taxi"] .hero.compact,
body[data-page="packages"] .hero.compact,
body[data-page="places"] .hero.compact{display:none!important;}
body:not([data-page="home"]) main>.section:first-of-type{padding-top:36px!important;}
.form-message{margin-top:12px;padding:12px 14px;border-radius:14px;background:#eef8f0;color:#0b4a34;border:1px solid rgba(15,61,46,.14);font-size:14px;line-height:1.45;min-height:0;}
.form-message:empty{display:none;}
.listing-card{display:flex!important;flex-direction:column!important;overflow:hidden!important;}
.listing-media{flex:0 0 auto!important;isolation:isolate!important;}
.listing-body{position:relative!important;z-index:2!important;background:#fff!important;display:flex!important;flex-direction:column!important;}
.gallery-carousel img{object-fit:cover!important;}
.card-image-link{position:relative;z-index:1;}
.badge,.rating{z-index:8!important;}
.price-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.price-total{display:block;font-size:11px;font-weight:500;color:var(--muted);line-height:1.2;margin-top:2px;}
@media(max-width:640px){
  body:not([data-page="home"]) main>.section:first-of-type{padding-top:28px!important;}
  .section-head h2{font-size:29px!important;letter-spacing:-.04em;}
  .listing-media{height:204px!important;}
  .listing-body{padding:15px!important;}
  .listing-body h3{font-size:21px!important;margin:0!important;}
  .price-row{align-items:flex-start;}
  .price-row strong{text-align:right;max-width:55%;}
  .card-actions{grid-template-columns:1fr 1fr!important;}
  .floating-wa{width:42px!important;height:42px!important;}
  .floating-wa svg{width:22px!important;height:22px!important;}
}


/* v22 customer login/signup pill */
.login-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(15,61,46,.16);background:#fff;color:#0f3d2e;border-radius:999px;min-height:42px;padding:0 15px;font-weight:800;cursor:pointer;box-shadow:0 8px 22px rgba(8,37,29,.08);white-space:nowrap}
.login-pill:hover{background:#f7f3ea}
.login-icon{font-size:16px;line-height:1}.customer-auth-modal.open{display:grid!important}.customer-auth-modal{align-items:center;justify-items:center}.customer-auth-card{max-width:440px}.form-message.success{color:#0f6b38;background:#ecfdf3;border-color:#abefc6}.form-message.error{color:#b42318;background:#fff1f0;border-color:#fecdca}
@media(max-width:760px){.login-pill{min-height:42px;padding:0 12px;font-size:13px}.nav-cta .desktop-only{display:none!important}.brand span strong{font-size:18px}.brand img{width:52px}.customer-auth-card{width:calc(100vw - 28px)}}
