*{box-sizing:border-box} :root{--bg:#f7f7f3;--surface:#fff;--text:#26332e;--muted:#718078;--green:#173f35;--gold:#d6ad67;--line:#e6e9e4;--shadow:0 12px 35px #1a302010}html[data-theme=dark]{--bg:#111a17;--surface:#1b2823;--text:#edf2ed;--muted:#aab8af;--green:#d2b477;--line:#304039;--shadow:0 12px 35px #0005}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,92%);margin:auto}.topbar{background:#102e27;color:#e9eee8;font-size:12px}.topbar-inner,.topbar-inner>div,.top-actions{display:flex;align-items:center;gap:20px;justify-content:space-between}.topbar-inner{min-height:38px}.plain-btn{border:0;background:none;color:inherit;cursor:pointer}.site-header{position:sticky;top:0;z-index:30;background:var(--surface);box-shadow:0 3px 18px #0000000a}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-size:19px;letter-spacing:2px;color:var(--green);line-height:1.1}.brand-mark{width:40px;height:40px;border:1px solid var(--gold);display:grid;place-items:center;font:700 24px Georgia;color:var(--gold)}.brand small{display:block;font-size:8px;letter-spacing:1.3px;margin-top:6px;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:600}.main-nav>a:hover,.nav-dropdown>a:hover{color:#b68a43}.nav-dropdown{position:relative}.dropdown-menu{display:none;position:absolute;top:100%;left:-15px;background:var(--surface);min-width:180px;padding:10px;box-shadow:var(--shadow);border-radius:8px}.dropdown-menu a{display:block;padding:8px}.nav-dropdown:hover .dropdown-menu{display:block}.nav-search{display:flex;border:1px solid var(--line);border-radius:30px;overflow:hidden}.nav-search input{width:110px;border:0;background:transparent;padding:8px}.nav-search button{border:0;background:transparent;padding:0 10px}.nav-member{color:#a87b34}.menu-toggle{display:none;background:none;border:0;color:var(--text);font-size:24px}.hero{height:min(650px,70vh);min-height:460px;position:relative;overflow:hidden;background:#193b32}.hero-slide{position:absolute;inset:0;display:flex;align-items:center;opacity:0;transition:opacity .7s;background:linear-gradient(90deg,#0c211ddd,#10251d66 65%,#0002),var(--hero) center/cover}.hero-slide.active{opacity:1}.hero-copy{width:min(1160px,92%);margin:auto;color:white}.hero-copy h1{font:700 clamp(38px,5vw,68px)/1.08 'Playfair Display',serif;margin:14px 0}.hero-copy p{max-width:520px;color:#e5e9e4;font-size:17px}.eyebrow{color:#b58b4c;text-transform:uppercase;font-size:10px;letter-spacing:2.5px;font-weight:700}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:3px;font-weight:700;font-size:12px;border:1px solid transparent;cursor:pointer}.btn-gold{background:var(--gold);color:#172d26}.btn-outline{border-color:var(--green);color:var(--green);background:transparent}.btn-green{background:#1b7957;color:#fff}.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);border:1px solid #ffffff77;background:#10251d66;color:white;width:42px;height:42px;border-radius:50%;font-size:25px;cursor:pointer}.hero-arrow.prev{left:20px}.hero-arrow.next{right:20px}.hero-dots{position:absolute;bottom:25px;left:50%;display:flex;gap:8px}.hero-dots button{width:7px;height:7px;border-radius:50%;border:0;background:#ffffff88}.hero-dots button.active{background:var(--gold);width:22px;border-radius:10px}.page-grid{width:min(1160px,92%);margin:48px auto 80px;display:grid;grid-template-columns:minmax(0,7fr) minmax(245px,3fr);gap:38px}.section{margin-bottom:58px}.section-heading{margin-bottom:22px}.section-heading h2,.section h2{font:700 clamp(27px,3vw,38px)/1.2 'Playfair Display',serif;margin:8px 0 0;color:var(--text)}.lead{font-size:17px;color:var(--muted);max-width:800px}.text-link{color:#a47b3d;font-weight:700;font-size:13px}.row-between{display:flex;align-items:end;justify-content:space-between}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tour-card,.side-box,.mini-card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:7px;overflow:hidden}.tour-card img{height:210px;width:100%;object-fit:cover;transition:transform .5s}.tour-card:hover img{transform:scale(1.04)}.card-body{padding:20px}.card-body h3{font:700 21px/1.25 'Playfair Display',serif;margin:7px 0}.card-body p{color:var(--muted);font-size:13px}.card-body strong{color:#a47b3d}.load-more{margin-top:22px}.parallax-cta{min-height:310px;margin:50px 0;background:linear-gradient(90deg,#102d26e8,#102d2677),url('../img/cta-kalimantan.jpg') center/cover fixed;display:flex;align-items:center;padding:40px;color:white}.parallax-cta>div{max-width:520px}.parallax-cta h2{color:white!important}.mini-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.mini-card{display:flex;align-items:center;gap:12px;padding:10px}.mini-card img{width:76px;height:66px;object-fit:cover;border-radius:4px}.mini-card small{display:block;color:var(--muted)}.news-list a{display:flex;gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.news-list span{color:var(--muted);font-size:12px;min-width:80px}.sidebar{position:sticky;top:105px;align-self:start}.side-box{padding:22px;margin-bottom:18px}.side-box h3{font:700 20px 'Playfair Display',serif;margin:0 0 16px}.side-tour{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.side-tour img{width:72px;height:65px;object-fit:cover;border-radius:4px}.side-tour b{display:block;font-size:12px;line-height:1.4}.side-tour small{color:var(--muted)}.side-box p{font-size:13px;color:var(--muted)}.side-box .btn{width:100%;margin:8px 0}.footer{background:#102e27;color:#dce6df;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-grid h4{color:var(--gold);margin-top:0}.footer-grid a:not(.brand){display:block;font-size:13px;margin:7px 0;color:#dce6df}.brand-light{color:#fff}.copyright{border-top:1px solid #ffffff22;margin-top:35px;padding-top:18px;font-size:11px;color:#aabbb1}.floating-wa,.back-top{position:fixed;right:22px;z-index:40;width:48px;height:48px;border:0;border-radius:50%;display:grid;place-items:center;box-shadow:var(--shadow);cursor:pointer}.floating-wa{bottom:85px;background:#1b9b65;color:white;font-size:23px;transition:transform .2s ease,background .2s ease}.floating-wa:hover{background:#25d366;transform:scale(1.08)}.back-top{bottom:25px;background:var(--gold);color:#142b23;font-size:22px;opacity:0;pointer-events:none;transition:.2s}.back-top.show{opacity:1;pointer-events:auto}.flash-area{width:min(1160px,92%);margin:auto}.flash{padding:12px 18px;margin:12px 0;border-radius:5px}.success{background:#d9f4e5;color:#145c37}.error{background:#ffe0df;color:#8a2020}.content-panel{background:var(--surface);padding:28px;border:1px solid var(--line);border-radius:7px}.form-grid{display:grid;gap:14px;max-width:650px}.form-grid input,.form-grid textarea,.form-grid select{width:100%;padding:12px;border:1px solid var(--line);border-radius:4px;background:var(--bg);color:var(--text)}.detail-image{width:100%;height:390px;object-fit:cover;border-radius:6px}.thumbs{display:flex;gap:10px;margin:12px 0}.thumbs img{width:90px;height:65px;object-fit:cover;cursor:pointer;border-radius:4px;border:2px solid transparent}.thumbs img.active{border-color:var(--gold)}.tabs{display:flex;flex-wrap:wrap;gap:5px;border-bottom:1px solid var(--line);margin-top:25px}.tab-btn{padding:12px 15px;background:none;border:0;color:var(--muted);cursor:pointer}.tab-btn.active{color:var(--green);border-bottom:2px solid var(--gold)}.tab-pane{display:none;padding:20px 0}.tab-pane.active{display:block}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;background:var(--surface)}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:13px}.admin-shell{display:grid;grid-template-columns:240px 1fr;min-height:70vh}.admin-side{background:#173d34;color:white;padding:22px}.admin-side a{display:block;padding:10px 0}.admin-main{padding:28px}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.stat{background:var(--surface);padding:22px;border-radius:8px;border:1px solid var(--line)}@media(max-width:900px){.main-nav{gap:11px;font-size:12px}.nav-search{display:none}.page-grid{grid-template-columns:1fr}.sidebar{position:static;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.side-box{margin:0}.hero{min-height:430px}}@media(max-width:700px){.topbar-inner{padding:7px 0;gap:8px;align-items:flex-start}.topbar-inner>div:first-child{display:grid;gap:3px}.top-actions{gap:8px}.nav-wrap{min-height:68px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);padding:18px 4%;box-shadow:var(--shadow);align-items:stretch;flex-direction:column}.main-nav.open{display:flex}.dropdown-menu{position:static;box-shadow:none;padding-left:15px}.nav-search{display:flex}.page-grid{margin-top:28px}.cards,.mini-grid{grid-template-columns:1fr}.sidebar{grid-template-columns:1fr}.hero{height:540px}.hero-copy h1{font-size:42px}.hero-arrow{top:auto;bottom:18px}.hero-arrow.prev{left:20px}.hero-arrow.next{right:20px}.hero-dots{bottom:34px}.parallax-cta{background-attachment:scroll}.footer-grid{grid-template-columns:1fr;gap:20px}.admin-shell{grid-template-columns:1fr}.admin-side{display:flex;gap:16px;overflow:auto}.admin-side a{white-space:nowrap}.stat-grid{grid-template-columns:1fr}.detail-image{height:260px}}

/* ── Admin CRUD Form & Table Alignment ── */
.admin-main .form-grid,
.admin-main .content-panel,
.admin-main .productForm,
.admin-main #productForm,
.productForm,
#productForm {
  max-width: 100% !important;
  width: 100%;
  box-sizing: border-box;
}

.admin-main .table-wrap {
  width: 100%;
  overflow-x: auto;
  box-sizing: border-box;
}

@media (max-width: 992px) {
  .productForm div[style*="grid-template-columns"] {
    grid-template-columns: 1fr !important;
  }
}

/* ── Login to See Prices Badge & Prompt ── */
.login-for-price {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  color: #a47b3d;
  background: rgba(214, 173, 103, 0.12);
  border: 1px solid rgba(214, 173, 103, 0.4);
  padding: 6px 12px;
  border-radius: 4px;
  letter-spacing: 0.3px;
  transition: all .2s;
  cursor: pointer;
  text-decoration: none;
  line-height: 1.2;
}
.login-for-price:hover,
.tour-card:hover .login-for-price {
  background: var(--gold);
  color: #172d26;
  border-color: var(--gold);
  box-shadow: 0 2px 8px rgba(214, 173, 103, 0.3);
}