:root{--forest:#19362e;--forest2:#25483e;--ink:#1f2d28;--muted:#67736d;--cream:#faf9f4;--soft:#f0f2eb;--lime:#d9edaa;--line:#e3e8df;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:var(--cream);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:Outfit,'DM Sans',sans-serif;letter-spacing:-.035em}h2{font-size:clamp(2.3rem,4.7vw,4.35rem);line-height:1.08;font-weight:600}h2 em,h1 em{font-style:normal;color:#8da968}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{max-width:1230px;width:calc(100% - 64px);margin:auto}.section{padding:104px 0;scroll-margin-top:75px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800;color:#65865b;display:inline-block;margin-bottom:25px}.top-strip{height:35px;background:#19362e;color:#dae4d3;text-align:center;font-size:11px;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;gap:10px}.top-strip span{color:#769d7d}.top-strip a{border-bottom:1px solid #b3c99c}.site-header{position:sticky;top:0;z-index:30;background:rgba(250,249,244,.97);backdrop-filter:blur(16px);border-bottom:1px solid #e6e8de}.header-row{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:13px;font-family:Outfit,sans-serif;font-size:18px;line-height:1.07;font-weight:500;letter-spacing:.035em;white-space:nowrap}.brand b{font-weight:800;display:block;letter-spacing:.02em;font-size:21px}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;font-weight:700;letter-spacing:.19em;color:#718278;margin-top:7px}.brand-symbol{height:47px;width:47px;background:#233e32;display:grid;place-content:center;color:#e1ebbb;border-radius:13px;position:relative;font-size:24px;font-weight:700;letter-spacing:-.08em}.brand-symbol span{position:absolute;top:5px;right:6px;font-size:9px;letter-spacing:0}.site-header nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:700}.site-header nav>a:not(.nav-reserve):hover{color:#587b51}.nav-reserve{padding:14px 18px;background:var(--forest);color:#fff;border-radius:9px}.nav-reserve span{margin-left:10px}.menu-toggle{display:none;border:0;background:transparent;font-size:26px}.hero{min-height:695px;position:relative;overflow:hidden;color:#fff;background:#1d342c}.hero-img{position:absolute;inset:0;background-image:url(img/ruang_tamu.webp);background-size:cover;background-position:center 55%;filter:brightness(.66);transform:scale(1.015)}.hero-tint{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,23,.94),rgba(12,30,24,.76) 45%,rgba(17,31,26,.1) 100%),linear-gradient(0deg,rgba(10,23,20,.55),transparent 40%)}.hero-content{min-height:695px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:40px;padding-bottom:45px}.hero-main{max-width:720px}.pill-light{display:inline-flex;align-items:center;gap:8px;border:1px solid #ffffff58;border-radius:50px;padding:10px 15px;font-size:11px;letter-spacing:.11em;color:#dceec3;font-weight:700}.hero h1{font-size:clamp(3.7rem,6.7vw,6.8rem);font-weight:600;letter-spacing:-.065em;line-height:1.04;margin:29px 0}.hero h1 em{color:#d9edaa}.hero-main>p{font-size:16px;line-height:1.85;color:#e1e5df;max-width:580px}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:35px 0 55px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:17px;min-height:50px;padding:14px 22px;border-radius:10px;border:1px solid transparent;font-weight:800;font-size:13px;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-2px)}.btn.lime{background:var(--lime);color:#19362e}.btn.glass{border-color:#ffffff77;background:#ffffff14;color:white}.btn.primary{background:var(--forest);color:#fff}.btn.outline{background:transparent;border:1px solid #b7c5b7;color:var(--forest)}.btn.full{width:100%}.hero-numbers{display:flex;align-items:center;gap:28px;color:#e6e7e3;font-size:12px}.hero-numbers span{display:flex;gap:10px;align-items:baseline}.hero-numbers strong{font-family:Outfit;font-size:29px;font-weight:600;color:#e1ebbb}.hero-numbers i{width:1px;height:24px;background:#ffffff60}.hero-side{align-self:flex-end;margin-bottom:15px;flex:0 0 212px;background:#ffffffee;color:#24352c;border-radius:12px;padding:8px;box-shadow:0 15px 40px #0003}.hero-side img{width:100%;height:125px;object-fit:cover;border-radius:7px;display:block}.hero-side>span{display:block;padding:12px 7px 8px}.hero-side b{font-family:Outfit;font-size:14px}.hero-side small{display:flex;justify-content:space-between;color:#6d796f;margin-top:6px;font-size:11px}.trustline{background:#e7eddf}.trust-items{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--forest);font-size:13px}.trust-items span{display:flex;align-items:center;gap:11px}.trust-items b{font-weight:700}.about-layout{display:grid;grid-template-columns:1fr 1.05fr;gap:90px;align-items:center}.about-copy h2{max-width:580px}.about-copy p{line-height:1.95;color:#657168;font-size:15px;max-width:525px}.about-tags{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin:29px 0}.about-tags span{font-size:13px;color:#365a42;font-weight:700}.text-link{color:#255440;font-weight:800;font-size:14px;border-bottom:1px solid #99ac9b;padding-bottom:7px;display:inline-block;margin-top:12px}.about-photos{height:560px;position:relative}.about-large{width:78%;height:88%;object-fit:cover;border-radius:170px 170px 16px 16px;position:absolute;right:0;top:0}.about-small{position:absolute;left:0;bottom:0;width:48%;height:43%;object-fit:cover;border:8px solid var(--cream);border-radius:14px}.about-label{position:absolute;right:-20px;bottom:3px;background:#e0edb9;border-radius:12px;padding:19px 24px;display:flex;gap:14px;align-items:center;font-family:Outfit;color:#24422f}.about-label span{font-size:32px}.amenities-section{background:#f0f2eb}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.section-heading>p{max-width:330px;color:#67746c;font-size:14px;line-height:1.8}.amenities-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.amenity-card{background:#fff;border:1px solid #e6e9df;border-radius:16px;padding:32px;min-height:208px;transition:transform .2s}.amenity-card:hover{transform:translateY(-4px)}.a-icon{display:grid;place-items:center;border-radius:12px;background:#edf3df;width:51px;height:51px;font-size:23px;margin-bottom:21px}.amenity-card h3{font-size:20px;margin-bottom:10px}.amenity-card p{line-height:1.7;color:#727a73;font-size:13px;margin:0}.tiny-note{font-size:11px;color:#838d84;line-height:1.7;margin-top:20px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:208px;gap:13px}.gallery-item{border:0;padding:0;overflow:hidden;border-radius:12px;position:relative;background:#26493e;color:#fff;text-align:left}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.065)}.gallery-item:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#1119)}.gallery-item span{position:absolute;bottom:17px;left:19px;z-index:1;font-size:13px;font-weight:800}.gallery-item.tall{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.discover-section{background:#ecf0e8}.discover-tabs{display:flex;gap:9px;margin-bottom:23px;flex-wrap:wrap}.discover-tabs button{border:1px solid #cad7c9;padding:11px 17px;border-radius:30px;background:transparent;color:#385747;font-weight:700;font-size:12px}.discover-tabs button.active{background:var(--forest);color:white;border-color:var(--forest)}.discover-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.discover-card{background:#fff;border-radius:14px;overflow:hidden;border:1px solid #e1e6df;transition:transform .2s}.discover-card:hover{transform:translateY(-4px)}.discover-photo{height:200px;background-color:#4e7560;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:15px;position:relative}.discover-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0007,transparent 65%)}.discover-photo.market{background-image:linear-gradient(120deg,#49674a22,#26391a22),url('https://images.unsplash.com/photo-1488459716781-31db52582fe9?auto=format&fit=crop&w=800&q=80')}.discover-photo.food{background-image:url('https://images.unsplash.com/photo-1547592180-85f173990554?auto=format&fit=crop&w=800&q=80')}.discover-photo.river{background-image:url('https://images.unsplash.com/photo-1473448912268-2022ce9509d8?auto=format&fit=crop&w=800&q=80')}.discover-photo.elephant{background-image:url('https://images.unsplash.com/photo-1564760055775-d63b17a55c44?auto=format&fit=crop&w=800&q=80')}.discover-photo.nature{background-image:url('https://images.unsplash.com/photo-1441974231531-c6227db76b6e?auto=format&fit=crop&w=800&q=80')}.discover-photo.weekend{background-image:url('https://images.unsplash.com/photo-1555529669-e69e7aa0ba9a?auto=format&fit=crop&w=800&q=80')}.photo-emblem{position:relative;z-index:1;border-radius:5px;background:#def0b9;color:#21412d;font-size:9px;font-weight:800;letter-spacing:.09em;padding:9px 11px}.discover-body{padding:25px 24px 27px}.discover-body small{font-size:10px;letter-spacing:.09em;color:#70906e;font-weight:800}.discover-body h3{font-size:22px;margin:12px 0}.discover-body p{font-size:13px;line-height:1.75;color:#758075;min-height:92px}.discover-body a{font-size:13px;font-weight:800;color:#315b41}.itinerary-section{background:var(--forest);padding:77px 0;color:#fff}.itinerary-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.itinerary-inner h2{margin-bottom:23px}.itinerary-inner p{line-height:1.8;color:#bbcec3;font-size:14px}.light-eyebrow{color:#c9e6a8}.itinerary-steps{display:grid;gap:22px}.itinerary-steps>div{border:1px solid #6d8d76;border-radius:14px;padding:23px 25px}.itinerary-steps b{color:#e2f0bc;font-family:Outfit;font-size:20px}.itinerary-steps b span{margin-left:15px;color:white;font-size:17px}.itinerary-steps p{margin:13px 0 0}.price-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px}.price-card{padding:38px;background:#ecf1e8;border-radius:15px;position:relative}.price-card.featured{background:#dcebbd}.price-card>span{font-size:12px;letter-spacing:.11em;font-weight:800;color:#567356}.price-card h3{font-size:45px;margin:30px 0 13px;color:#203a2c}.price-card h3 small{font-size:14px;font-family:'DM Sans';font-weight:500}.price-card p,.price-note p{font-size:13px;line-height:1.8;color:#6e7d70}.pop-tag{position:absolute;top:0;right:20px;background:#274333;color:#fff;padding:8px 13px;font-size:9px;font-weight:800;letter-spacing:.1em;border-radius:0 0 7px 7px}.price-note{padding:28px 25px}.big-asterisk{font-size:35px;color:#7ba06c}.price-note h3{font-size:22px;margin:20px 0 12px}.booking-section{background:#244338;color:#fff}.booking-layout{display:grid;grid-template-columns:.85fr 1fr;gap:90px;align-items:start}.booking-intro{padding-top:45px}.booking-intro h2 em{color:#d0eaa5}.booking-intro>p{color:#d4e1d7;line-height:1.9;max-width:460px}.booking-hints{margin-top:63px;display:grid;gap:29px}.booking-hints>div{display:flex;align-items:center;gap:17px;font-family:Outfit;color:#dcedc3;font-size:22px}.booking-hints>div span{display:grid;gap:5px}.booking-hints b{color:white;font-size:16px}.booking-hints small{color:#b4c8b9;font:12px 'DM Sans',sans-serif}.booking-card{color:#1f372a;background:white;border-radius:19px;padding:34px;box-shadow:0 26px 70px #0c261c44}.booking-card-head{display:flex;align-items:center;justify-content:space-between;gap:9px}.booking-card h3{font-size:25px;margin-bottom:0}.live-dot{background:#ebf4e8;color:#507b52;font-weight:800;border-radius:40px;padding:8px 12px;font-size:10px}.calendar-status{font-size:11px;color:#79877b;margin:12px 0 18px;min-height:14px}.cal-controls{display:flex;align-items:center;justify-content:space-between;margin:15px 0}.cal-controls button{height:38px;width:38px;border:1px solid #dfe7dc;border-radius:9px;background:white;color:#2c4c39}.cal-controls strong{font-family:Outfit;font-size:17px}.cal-week,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-week{color:#758276;font-size:11px;text-align:center;margin-bottom:8px}.calendar-days button,.calendar-days span{width:100%;height:43px;border:0;background:transparent;display:grid;place-items:center;font-size:12px;border-radius:8px}.calendar-days button:hover:not(:disabled){background:#ebf2df}.calendar-days button:disabled{color:#b6beb6;cursor:not-allowed}.calendar-days button.busy{background:#f7e6df;color:#aa6d56;text-decoration:line-through}.calendar-days button.selected,.calendar-days button.range{background:#d7ebb7;color:#204b2a;font-weight:800}.calendar-days button.selected{background:#315b3c;color:#fff}.cal-legend{display:flex;gap:15px;flex-wrap:wrap;margin:17px 0 23px;font-size:10px;color:#839083}.cal-legend span{display:flex;align-items:center;gap:6px}.cal-legend i{width:10px;height:10px;border-radius:3px;background:#fff;border:1px solid #aebdae}.cal-legend .leg-busy{background:#f7e6df;border:0}.cal-legend .leg-selected{background:#325c42;border:0}.booking-card form{border-top:1px solid #edf0ea;padding-top:23px}.booking-card label,.setup-panel label,.admin-panel label{display:block;font-size:12px;font-weight:800;color:#496251;margin-bottom:14px}.booking-card input,.booking-card textarea,.setup-panel input,.admin-panel input,.admin-panel select,.admin-panel textarea{width:100%;padding:12px;border:1px solid #dce5da;border-radius:9px;margin-top:8px;background:#fff;color:#1d3328;outline-color:#7c9d6a;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-box{background:#f0f4e9;border-radius:10px;padding:15px 16px;color:#476446;font-size:13px;line-height:1.65;margin:8px 0 19px}.quote-box strong{font-family:Outfit;font-size:24px;color:#1d3e2a}.form-caption{font-size:11px;color:#829081;text-align:center;line-height:1.6;margin:14px 0 0}#bookingMessage{margin-top:12px;font-size:13px;line-height:1.65}.alert{padding:13px 16px;background:#fff1ef;border:1px solid #f3c6bc;border-radius:9px;color:#9a362b}.good{padding:13px 16px;background:#e9f5e4;border:1px solid #bcdab4;border-radius:9px;color:#27603f}.location-layout{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.location-copy>p{line-height:1.9;color:#6b786e;font-size:14px;max-width:480px}.location-copy address{border-left:3px solid #a5bf8d;padding:10px 20px;font-style:normal;line-height:1.9;color:#3d5544;margin:25px 0}.location-actions{display:flex;flex-wrap:wrap;gap:12px}.map-frame{height:450px;border-radius:19px;overflow:hidden;background:#e8f0e5;box-shadow:0 18px 50px #24382a13}.map-frame iframe{width:100%;height:100%;border:0}.final-cta{background:#19362e;color:#fff;padding:79px 0}.final-content{display:flex;justify-content:space-between;align-items:center;gap:40px}.final-content h2{margin-bottom:13px}.final-content h2 em{color:#d7e8b5}.final-content p{color:#b8ccb9}.final-content .btn{flex:none}footer{background:#10271f;color:#dce7db;padding:63px 0 22px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:80px}.footer-brand{color:#fff}.footer-grid p{max-width:350px;line-height:1.8;font-size:13px;color:#abbeb0;margin-top:20px}.footer-grid h4{font-size:16px}.footer-grid>div:not(:first-child) a{display:block;font-size:13px;color:#b5c3b8;margin-top:15px}.footer-grid .muted{opacity:.55}.footer-bottom{border-top:1px solid #365144;padding-top:20px;margin-top:55px;display:flex;justify-content:space-between;color:#8fa999;font-size:11px;gap:20px}.floating-wa{position:fixed;right:22px;bottom:22px;background:#25d366;border-radius:40px;color:#113c23;padding:14px 18px;display:flex;gap:9px;align-items:center;font-size:18px;font-weight:800;box-shadow:0 8px 32px #0004;z-index:35}.floating-wa span{font-size:12px}.lightbox{border:0;border-radius:16px;max-width:min(95vw,900px);max-height:93vh;padding:20px;background:#162d24;color:#fff;box-shadow:0 18px 80px #0007}.lightbox::backdrop{background:#000d}.lightbox img{display:block;max-width:100%;max-height:74vh;object-fit:contain;margin:auto}.lightbox button{position:absolute;top:5px;right:12px;font-size:32px;border:0;background:none;color:white}.lightbox p{text-align:center;margin:10px 0 0}.setup-body{min-height:100vh;display:grid;place-items:center;background:#e8eee4}.setup-panel{background:white;padding:42px;max-width:520px;width:calc(100% - 30px);border-radius:20px;box-shadow:0 10px 50px #18362522}.setup-panel h1{font-size:37px}.setup-panel p{line-height:1.6}.muted{color:#819084}.setup-panel form{margin:20px 0}.setup-panel .btn{width:100%}
/* Panel pengendali */.admin-body{background:#f3f6f0;min-height:100vh}.admin-header{background:#17372a;color:#fff;padding:19px 0}.admin-header .container{display:flex;align-items:center;justify-content:space-between;gap:15px}.admin-header a{font-family:Outfit;font-weight:800}.admin-header button{background:transparent;border:1px solid #8ba998;color:white;border-radius:8px;padding:9px 14px}.admin-main{padding:45px 0}.admin-panel{background:white;border:1px solid #e1e9de;border-radius:16px;padding:27px;margin-bottom:24px}.admin-panel h2{font-size:26px;margin-bottom:18px}.admin-panel p{line-height:1.7}.admin-flex{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.admin-flex>*{flex:1;min-width:160px}.admin-flex button{flex:0 0 auto}.admin-panel table{width:100%;border-collapse:collapse;font-size:13px;min-width:850px}.admin-panel th,.admin-panel td{padding:13px 9px;text-align:left;border-bottom:1px solid #ebf0e9;vertical-align:top}.admin-panel th{color:#647b69;background:#f4f7f2}.table-wrap{overflow-x:auto}.admin-panel .small-btn{background:#eaf2e5;color:#2e593a;border:0;border-radius:7px;font-size:11px;font-weight:800;padding:9px 10px;margin:2px}.admin-panel .danger{background:#fcebe7;color:#9f4034}.admin-panel .admin-action{background:#17372a;color:#fff;border:0;border-radius:8px;padding:12px 15px;font-weight:700}.admin-panel select{margin-top:0;padding:8px;max-width:140px}.admin-panel .status-label{color:#456e42;font-weight:800}.admin-login{max-width:420px;margin:70px auto}.admin-login .btn{width:100%}@media(max-width:1100px){.site-header nav{gap:15px}.about-layout,.booking-layout{gap:42px}.hero-side{display:none}.discover-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.container{width:calc(100% - 34px)}.section{padding:70px 0}.top-strip{font-size:9px;gap:6px;padding:0 8px}.top-strip a{display:none}.header-row{height:70px}.brand{font-size:14px}.brand b{font-size:17px}.brand small{font-size:7px}.brand-symbol{height:39px;width:39px;font-size:20px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:69px;left:0;right:0;background:var(--cream);box-shadow:0 20px 25px #1835241a;flex-direction:column;align-items:stretch;padding:24px 19px;gap:20px}.site-header nav.open{display:flex}.hero,.hero-content{min-height:665px}.hero-content{padding-top:50px}.hero-tint{background:linear-gradient(90deg,#10291eea,#173123b0)}.hero h1{font-size:clamp(3.15rem,12vw,5rem)}.hero-numbers{gap:12px;flex-wrap:wrap}.hero-numbers span{gap:5px;font-size:11px}.hero-numbers strong{font-size:21px}.hero-buttons{margin:30px 0 45px}.trust-items{display:grid;grid-template-columns:1fr 1fr;gap:19px;padding-top:20px;padding-bottom:20px;font-size:10px}.about-layout,.itinerary-inner,.booking-layout,.location-layout{grid-template-columns:1fr;gap:40px}.about-photos{height:460px}.about-label{right:0}.section-heading{display:block}.section-heading>p{margin-top:22px}.amenities-grid{grid-template-columns:repeat(2,1fr)}.amenity-card{padding:19px;min-height:205px}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:155px}.gallery-item.wide{grid-column:span 1}.discover-grid{grid-template-columns:1fr}.discover-photo{height:230px}.discover-body p{min-height:0}.price-grid{grid-template-columns:1fr}.price-note{padding:20px 8px}.booking-intro{padding-top:0}.booking-hints{margin-top:30px}.booking-card{padding:18px}.location-layout{gap:30px}.final-content{display:block}.final-content .btn{margin-top:22px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:span 2}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:10px}}@media(max-width:390px){.form-row,.amenities-grid{grid-template-columns:1fr}.hero-numbers i{display:none}.hero-numbers{gap:16px}.about-photos{height:370px}.gallery-grid{grid-auto-rows:130px}.floating-wa span{display:none}}
