/* Patch terbatas di atas V4 asli. assets/*.css dan offline.css tidak diubah. */
:root { --revisi-gold:#D8BD67; --revisi-gold-on-white:#9E8740; }

/* Overlay transparan V4 tetap pada posisi asli. Tidak menambah tinggi halaman. */
.site-header.is-sticky {
  position:fixed;
  top:0;
  z-index:1000;
  background:rgba(11,35,73,.70) !important;
}
.header-cta {
  font-size: 13px;
  font-weight: 600; /* med bold = semibold */
  
}
.brand img, footer .brand img {
  content:url("logo-asiaprime.png");
  width:198px !important;
  height:50px !important;
  padding:0;
  background:transparent;
  box-shadow:none;
  border-radius:0;
}
.desktop-nav a { color:#fff !important; }
.desktop-nav a:hover,
.desktop-nav a:focus-visible,
.desktop-nav a[aria-current="page"] { color:var(--revisi-gold) !important; }
.desktop-nav a:after { background:var(--revisi-gold); }
.desktop-nav a:focus-visible:after,
.desktop-nav a[aria-current="page"]:after { right:0; }
.mobile-menu-links a:hover,
.mobile-menu-links a:focus-visible,
.mobile-menu-links a[aria-current="page"] { color:var(--revisi-gold) !important; }
.mobile-menu-links a[aria-current="page"] { box-shadow:inset 0 -2px var(--revisi-gold); }

/* Warna tombol saja; ukuran, radius, dan posisi asli tetap. */
.header-cta,.mobile-menu-cta,.button,.button.primary,.button.white,.contact-submit {
  background:#958248 !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#958248 !important;
    font-size: 14px;
  font-weight: 600; /* med bold = semibold */
}
.button.secondary,.button.white,.contact-submit {
  background:#4F647F !important;
  background-image:none !important;
  color:#fff !important;
  border-color:#4F647F !important;
    font-size: 14px;
  font-weight: 600; /* med bold = semibold */
}
.header-cta:hover,.mobile-menu-cta:hover,.button:hover,.contact-submit:hover {
  background:var(--revisi-gold) !important;
  filter:brightness(.96);
}
main svg { color:var(--revisi-gold) !important; }
.tone-light svg,.services svg,.about svg,.destinations svg,.faq svg,
.contact-redesign svg,.hero-floating-card svg,.quick-grid article>span svg {
  color:var(--revisi-gold-on-white) !important;
}
.button svg,.header-cta svg,.mobile-menu-cta svg { color:inherit !important; }
.contact-icon { color:#fff; }
.contact-icon.whatsapp-icon { background:#24C35F; border-color:var(--line); }
.contact-icon svg { width:19px; height:19px; }
.contact-icon:not(.whatsapp-icon) svg { color:#fff !important; }

/* Lima layanan: tetap kartu, tipografi, foto latar, dan efek hover V4. */
.service-grid-five { grid-template-columns:repeat(5,minmax(0,1fr)); }
.service-grid-five .service-top>span { width:62px; height:62px; }
.service-grid-five .service-top svg { width:29px; height:29px; }

/* Pertahankan judul kiri / kartu kanan V4, ubah jumlah kartu menjadi tiga. */
.steps-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.steps-three article { min-height:255px; padding:23px 19px; gap:24px; }
.steps-three .step-symbol svg { width:29px; height:29px; }

/* Kartu persiapan mengikuti komponen sub-steps V4, dengan tiga kolom. */
.prep-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.prep-three article { min-height:230px; justify-content:flex-start; gap:19px; }
.prep-three b svg { width:29px; height:29px; }
.prep-three p { margin:0; font-size:11px; line-height:1.8; color:#ffffffcf; }

/* Foto inline berada dalam grid V4 yang sama dengan teks. */
.inline-photo { min-width:0; align-self:center; }
.inline-photo img {
  display:block;
  width:100%;
  height:440px;
  object-fit:cover;
  border-radius:28px;
  box-shadow:0 30px 80px #0e5a9a2b;
}
.vision-split-copy { min-width:0; }
.vision-option,.vision-copy>span {
  color:#c7a34a;
  letter-spacing:.18em;
  font-size:10px;
  font-weight:900;
}
.vision-option { display:block; margin-bottom:25px; }
.vision-copy { padding:0 0 24px 50px; position:relative; }
.vision-copy>svg { width:30px; height:30px; position:absolute; top:0; left:0; }
.vision-copy h3 { color:var(--navy); letter-spacing:-.04em; margin:13px 0 14px; font-size:clamp(29px,3vw,40px); line-height:1.08; }
.vision-copy ul { color:var(--muted); margin:20px 0 0; padding-left:18px; font-size:11px; line-height:1.9; list-style:disc; }

/* Form diganti peta, tetap di kolom 50% yang sama. */
.contact-location {
  width:100%;
  min-width:0;
  overflow:hidden;
  background:rgba(255,255,255,.97);
  border:1px solid rgba(178,139,48,.3);
  border-radius:24px;
  box-shadow:0 28px 80px rgba(11,35,73,.17);
}
.location-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-bottom:1px solid var(--line); }
.location-tabs button { padding:18px 8px; color:var(--ice); font-size:12px; font-weight:600; cursor:pointer; background:var(--navy); }
.location-tabs button[aria-pressed="true"] { box-shadow:inset 0 -3px var(--revisi-gold); }
.location-frame { position:relative; min-height:420px; background:#f4f6f8; }
.location-frame iframe { width:100%; height:420px; border:0; }
.location-frame [hidden] { display:none !important; }
.location-placeholder { padding:60px 24px; min-height:420px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:20px; text-align:center; }
.location-placeholder>svg { width:40px; height:40px; }
.location-placeholder strong { font-size:24px; color:var(--navy); }
.location-placeholder p { margin:0; font-size:12px; color:var(--muted); }
.location-caption { padding:20px 26px; }
.location-caption p { color:var(--muted); margin:0 0 8px; font-size:10px; line-height:1.7; }
.location-caption a { color:var(--blue); font-size:11px; font-weight:800; }
.contact-endnote-inner { display:block; }
.contact-endnote h2 { max-width:1050px; }
.contact-endnote-inner>.button { margin-top:27px; }

@media(max-width:1100px) {
  .service-grid-five { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:900px) {
  .brand img,footer .brand img { width:174px !important; height:44px !important; }
  body.mobile-menu-open .site-header {
    z-index:1001;
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    background:transparent !important;
    border-color:transparent !important;
  }
  .mobile-menu-panel { overflow-y:auto; overscroll-behavior:contain; }
  .mobile-menu-panel:not(.is-open) { display:none; }
  .mobile-menu-close,.mobile-menu-button { flex-shrink:0; }
  .inline-photo img { height:400px; }
}
@media(max-width:640px) {
  .brand img { width:158px !important; height:40px !important; }
  .service-grid-five,.steps-three,.prep-three { grid-template-columns:1fr; }
  .steps-three article { min-height:165px; padding:26px; }
  .inline-photo img { height:340px; }
  .vision-copy { padding-left:42px; }
  .location-frame,.location-placeholder { min-height:340px; }
  .location-frame iframe { height:340px; }
}
.utility-bar,
.site-header,
.site-header.is-sticky {
  border-bottom: none !important;
}