/* SAW Tour & Travel — web v2 (STAGING). Token dari docs/DESIGN-V2.md §6. */
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/cormorant-garamond-latin-700-normal.woff2) format("woff2")}
@font-face{font-family:"Cormorant Garamond";font-style:italic;font-weight:600;font-display:swap;src:url(../fonts/cormorant-garamond-latin-600-italic.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/plus-jakarta-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/plus-jakarta-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/plus-jakarta-sans-latin-600-normal.woff2) format("woff2")}
/* fallback metrik untuk menekan CLS saat font tukar */
@font-face{font-family:"Cormorant Fallback";src:local("Georgia"),local("Times New Roman"),local("Liberation Serif");size-adjust:88%;ascent-override:92%;descent-override:28%}
@font-face{font-family:"Jakarta Fallback";src:local("Arial"),local("Liberation Sans"),local("Helvetica");size-adjust:104%;ascent-override:98%;descent-override:22%}

:root{
  --navy-900:#0A1730; --navy-800:#0F1F3D; --navy-700:#15284A; --navy-500:#2A4170;
  --emas-800:#73571F; --emas-500:#C9A45C; --emas-300:#E3CC94;
  --pasir-50:#FAF6EE; --pasir-100:#F4ECDD; --pasir-200:#E9DDC6; --pasir-300:#D9C8A8;
  --batu-400:#A89377; --batu-600:#6E5E47; --batu-700:#5A4C39;
  --tinta-900:#1B1F2A; --kabut-200:#D8DCE6; --merah-600:#A3322A; --hijau-700:#2F6B4A;
  --ff-judul:"Cormorant Garamond","Cormorant Fallback",Georgia,serif;
  --ff-isi:"Plus Jakarta Sans","Jakarta Fallback",Arial,sans-serif;
  --fs-display:clamp(3rem,1.9rem + 4.6vw,5.5rem); --fs-h1:clamp(2.5rem,1.6rem + 3.2vw,4rem);
  --fs-h2:clamp(2rem,1.5rem + 1.6vw,2.75rem); --fs-h3:clamp(1.625rem,1.45rem + .5vw,1.875rem);
  --fs-lead:clamp(1.1875rem,1.08rem + .35vw,1.375rem); --fs-body:clamp(1.0625rem,1.03rem + .1vw,1.125rem);
  --fs-ui:1.0625rem; --fs-meta:1rem; --fs-stat:clamp(3.25rem,2.4rem + 3vw,4.5rem);
  --sp-1:4px;--sp-2:8px;--sp-3:16px;--sp-4:24px;--sp-5:32px;--sp-6:48px;--sp-7:64px;--sp-8:96px;--sp-9:128px;--sp-10:160px;
  --r-kontrol:4px; --r-kartu:8px; --r-panel:16px; --r-pil:999px; --r-lengkung:999px 999px 8px 8px;
  --sh-1:0 1px 0 rgba(90,76,57,.12),0 8px 24px -12px rgba(90,76,57,.25);
  --sh-2:0 24px 64px -24px rgba(10,23,48,.55);
  --sh-kilau:0 0 0 1px rgba(227,204,148,.6),0 8px 28px -8px rgba(201,164,92,.55);
  --dur-1:120ms;--dur-2:240ms;--dur-3:420ms;--dur-4:900ms;--dur-rute:3200ms;
  --ease-tiba:cubic-bezier(.16,1,.3,1); --ease-pergi:cubic-bezier(.7,0,.84,0); --ease-tenang:cubic-bezier(.65,0,.35,1);
  --tinggi-target:48px; --tinggi-tombol:56px;
  --tepi:20px; --header:64px;
  --tirai-foto:linear-gradient(180deg,rgba(10,23,48,.15) 0%,rgba(10,23,48,.55) 55%,rgba(10,23,48,.85) 100%);
}
@media (min-width:768px){:root{--tepi:40px}}
@media (min-width:1024px){:root{--tepi:80px;--header:80px}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header) + 16px)}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--pasir-100);color:var(--tinta-900);font-family:var(--ff-isi);font-size:var(--fs-body);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.terkunci{overflow:hidden}
img,video,svg,canvas{display:block;max-width:100%}
img{height:auto}
picture{display:contents}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--ff-judul);font-weight:600;margin:0;color:var(--navy-900);text-wrap:balance}
p{margin:0 0 1em;max-width:62ch;text-wrap:pretty}
p:last-child{margin-bottom:0}
ul,ol{margin:0;padding:0}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
::selection{background:var(--emas-300);color:var(--navy-900)}

/* fokus: navy+emas di pasir, emas di navy */
:focus{outline:none}
:focus-visible{outline:3px solid var(--navy-900);outline-offset:3px;box-shadow:0 0 0 6px var(--emas-300);border-radius:2px}
.gelap :focus-visible,.hero :focus-visible,.footer :focus-visible,.chat :focus-visible,.menu-mob :focus-visible{outline:3px solid var(--emas-500);box-shadow:none}

.lompat{position:fixed;left:16px;top:-80px;z-index:100;background:var(--navy-900);color:var(--pasir-100);padding:12px 20px;border-radius:var(--r-kontrol);font-weight:600;text-decoration:none;transition:top var(--dur-2) var(--ease-tiba)}
.lompat:focus{top:16px}

.wadah{width:100%;max-width:1440px;margin:0 auto;padding:0 var(--tepi)}
.bagian{padding:var(--sp-8) 0;position:relative}
@media (min-width:1024px){.bagian{padding:var(--sp-10) 0}}

/* judul section dengan garis rute emas pendek di kiri */
.judul-bagian{font-size:var(--fs-h1);line-height:1.08;letter-spacing:-.005em;max-width:16ch;position:relative}
.penanda{display:flex;align-items:center;gap:16px;margin-bottom:var(--sp-4)}
.penanda::before{content:"";flex:0 0 48px;height:1.5px;background:var(--emas-500);transform-origin:left}
.gelap .penanda::before{background:var(--emas-500)}
.lead{font-size:var(--fs-lead);line-height:1.55;max-width:40ch;color:var(--batu-700);margin-top:var(--sp-4)}
.gelap .lead{color:var(--kabut-200)}
.catatan{font-size:var(--fs-meta);color:var(--batu-700);line-height:1.5}
.gelap{background:var(--navy-900);color:var(--kabut-200)}
.gelap h2,.gelap h3{color:var(--pasir-100)}
/* kepala section: judul kiri, lead kanan bawah (desktop) — tidak menyisakan separuh layar kosong */
@media (min-width:1024px){
  .kepala{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--sp-7);align-items:end}
  .kepala .judul-bagian{max-width:14ch}
  .kepala .lead{margin-top:0;padding-bottom:.6em}
}
/* tautan di dalam teks: area sentuh ≥24px */
p a,.jawab a{display:inline-block;min-height:24px;padding-block:2px}

/* reveal per baris */
.baris{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
.baris>span{display:block;will-change:transform}

/* ============ TOMBOL ============ */
.btn{--bg:transparent;--fg:var(--navy-900);--bd:var(--navy-900);position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--tinggi-tombol);padding:0 28px;border-radius:var(--r-kontrol);background:var(--bg);color:var(--fg);border:1.5px solid var(--bd);font-family:var(--ff-isi);font-size:var(--fs-ui);font-weight:600;letter-spacing:.01em;line-height:1.2;text-decoration:none;cursor:pointer;overflow:hidden;isolation:isolate;touch-action:manipulation;transition:box-shadow var(--dur-2) var(--ease-tiba),background-color var(--dur-1),color var(--dur-1),transform var(--dur-1) var(--ease-tiba);-webkit-tap-highlight-color:transparent}
.btn:active{transform:scale(.98)}
.btn svg{width:22px;height:22px;flex:none}
.btn--utama{--bg:var(--emas-500);--fg:var(--navy-900);--bd:var(--emas-500)}
.btn--utama::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.45) 48%,transparent 66%);transform:translateX(-120%)}
@media (hover:hover) and (pointer:fine){
  .btn--utama:hover{box-shadow:var(--sh-kilau)}
  .btn--utama:hover::after{transform:translateX(120%);transition:transform 700ms var(--ease-tenang)}
  .btn--garis:hover{background:var(--navy-900);color:var(--pasir-100)}
  .gelap .btn--garis:hover,.hero .btn--garis:hover,.btn--terang:hover{background:var(--pasir-100);color:var(--navy-900);border-color:var(--pasir-100)}
}
.btn--garis{--bg:transparent}
.gelap .btn--garis,.hero .btn--garis,.btn--terang{--fg:var(--pasir-100);--bd:var(--emas-300)}
.btn--teks{min-height:var(--tinggi-target);padding:0;border:0;background:none;color:var(--emas-800);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;overflow:visible}
.gelap .btn--teks,.btn--teks.terang{color:var(--emas-300)}
.btn--teks:hover{text-decoration-thickness:2px}
.btn--kecil{min-height:var(--tinggi-target);padding:0 20px}
.btn--penuh{width:100%}
.btn-grup{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.btn .ikon-wa{display:none}
.ada-wa .btn .ikon-wa{display:block}

/* ============ HEADER ============ */
.header{position:fixed;inset:0 0 auto 0;z-index:40;height:var(--header);color:var(--pasir-100);transition:background-color var(--dur-2),color var(--dur-2),box-shadow var(--dur-2)}
.header::before{content:"";position:absolute;inset:0 0 -40px;background:linear-gradient(180deg,rgba(10,23,48,.55),rgba(10,23,48,0));pointer-events:none;transition:opacity var(--dur-2)}
.header.padat{background:rgba(244,236,221,.96);color:var(--navy-900);box-shadow:0 1px 0 var(--pasir-300)}
@supports (backdrop-filter:blur(8px)){.header.padat{background:rgba(244,236,221,.9);backdrop-filter:blur(8px)}}
.header.padat::before{opacity:0}
.header .wadah{position:relative;height:100%;display:flex;align-items:center;gap:24px}
.merek{display:flex;align-items:center;gap:12px;text-decoration:none;min-height:48px;margin-right:auto}
.merek img{width:40px;height:40px}
.merek span{font-family:var(--ff-judul);font-weight:700;font-size:1.5rem;line-height:1;white-space:nowrap}
.nav{display:none}
.nav ul{list-style:none;display:flex;gap:4px}
.nav a{display:flex;align-items:center;min-height:48px;padding:0 12px;text-decoration:none;font-size:var(--fs-ui);font-weight:500;position:relative}
.nav a::after{content:"";position:absolute;left:12px;right:12px;bottom:8px;height:2px;background:var(--emas-500);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-2) var(--ease-tiba)}
.nav a:hover::after,.nav a[aria-current="true"]::after{transform:scaleX(1)}
.header .btn--kecil{display:none}
.header .btn--garis{--fg:currentColor;--bd:var(--emas-300)}
.header.padat .btn--garis{--bd:var(--navy-900)}
.tombol-menu{display:inline-flex;align-items:center;gap:8px;min-height:48px;min-width:48px;padding:0 14px;border:1.5px solid currentColor;border-radius:var(--r-kontrol);background:none;font-weight:600;cursor:pointer}
.tombol-menu svg{width:22px;height:22px}
@media (min-width:1180px){.nav{display:block}.tombol-menu{display:none}.header .btn--kecil{display:inline-flex}}
@media (min-width:640px) and (max-width:1179px){.header .btn--kecil{display:inline-flex}}

.menu-mob{position:fixed;inset:0;z-index:90;background:var(--navy-900);color:var(--pasir-100);display:flex;flex-direction:column;padding:16px var(--tepi) calc(24px + env(safe-area-inset-bottom));overflow:auto}
.menu-mob__atas{display:flex;justify-content:space-between;align-items:center;min-height:48px;margin-bottom:24px}
.menu-mob ul{list-style:none;display:grid;gap:4px;margin-bottom:32px}
.menu-mob a:not(.btn){display:flex;align-items:center;min-height:56px;font-family:var(--ff-judul);font-size:1.75rem;font-weight:600;text-decoration:none;border-bottom:1px solid var(--navy-500)}
.menu-mob .btn{margin-top:auto}
.tutup{display:inline-flex;align-items:center;gap:8px;min-height:48px;min-width:48px;padding:0 14px;border:1.5px solid var(--emas-300);border-radius:var(--r-kontrol);background:none;color:inherit;font-weight:600;cursor:pointer}
.tutup svg{width:20px;height:20px}

/* ============ HERO ============ */
.hero{position:relative;min-height:100svh;min-height:max(100svh,640px);color:var(--pasir-100);background:var(--navy-900);overflow:hidden;display:flex;align-items:flex-end}
.hero__media{position:absolute;inset:0;z-index:0}
.hero__media img,.hero__media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 40%}
.hero__media video{opacity:0;transition:opacity 1.2s var(--ease-tenang)}
.hero__media video.tampil{opacity:1}
.hero__tirai{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,23,48,.55) 0%,rgba(10,23,48,.2) 30%,rgba(10,23,48,.55) 60%,rgba(10,23,48,.92) 100%)}
@media (min-width:1024px){.hero__tirai{background:linear-gradient(90deg,rgba(10,23,48,.88) 0%,rgba(10,23,48,.6) 42%,rgba(10,23,48,.15) 75%),linear-gradient(0deg,rgba(10,23,48,.75),rgba(10,23,48,0) 45%)}}
.hero .wadah{position:relative;z-index:2;display:grid;gap:24px;padding-top:calc(var(--header) + 24px);padding-bottom:max(40px,env(safe-area-inset-bottom))}
.hero__teks{text-align:center;display:flex;flex-direction:column;align-items:center}
.hero__judul{font-size:var(--fs-display);line-height:1.02;letter-spacing:-.01em;color:var(--pasir-100);max-width:13ch}
.hero__sub{font-size:var(--fs-lead);line-height:1.55;max-width:40ch;color:var(--kabut-200);margin:24px 0 32px}
.hero .btn-grup{width:100%;flex-direction:column}
.hero .btn-grup .btn{width:100%}
.lencana-grup{display:flex;flex-wrap:wrap;gap:12px 24px;justify-content:center;margin-top:28px;list-style:none}
.lencana{display:inline-flex;align-items:center;gap:10px;font-size:var(--fs-meta);font-weight:500;color:var(--pasir-100)}
.lencana svg{width:24px;height:24px;color:var(--emas-500);flex:none}
.globe{position:relative;width:min(44vw,180px);aspect-ratio:1;margin:0 auto;order:-1}
.globe img,.globe canvas{position:absolute;inset:0;width:100%;height:100%}
.globe canvas{opacity:0;transition:opacity 1.2s var(--ease-tenang)}
.globe.siap canvas{opacity:1}
.globe.siap img{opacity:0;transition:opacity 1.2s var(--ease-tenang)}
.jeda{position:absolute;z-index:3;left:var(--tepi);bottom:max(20px,env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border-radius:var(--r-pil);border:1px solid rgba(227,204,148,.6);background:rgba(10,23,48,.55);color:var(--pasir-100);font-size:var(--fs-meta);font-weight:500;cursor:pointer}
.jeda svg{width:18px;height:18px}
@media (max-width:1023px){.hero .wadah{padding-bottom:96px}.jeda{left:var(--tepi);bottom:24px}}
@media (min-width:640px) and (max-width:1023px){.hero .btn-grup{flex-direction:row;justify-content:center}.hero .btn-grup .btn{width:auto}}
@media (min-width:1024px){
  .hero{align-items:center}
  .hero .wadah{grid-template-columns:7fr 5fr;align-items:center;gap:32px;padding-top:calc(var(--header) + 48px);padding-bottom:120px}
  .hero__teks{text-align:left;align-items:flex-start}
  .hero .btn-grup{flex-direction:row;width:auto}.hero .btn-grup .btn{width:auto}
  .lencana-grup{justify-content:flex-start}
  .globe{order:0;width:min(100%,560px);justify-self:end}
}

/* ============ PAKET ============ */
.paket{background:var(--pasir-100)}
.paket__kepala{margin-bottom:var(--sp-6)}
@media (min-width:1024px){.paket__kepala{margin-bottom:var(--sp-7)}}
.paket-desk{display:none}
@media (min-width:1024px){
  .paket-mob{display:none}
  .paket-desk{display:grid;grid-template-columns:7fr 5fr;gap:var(--sp-7);align-items:start}
}
.sorotan{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-5);align-items:end}
.sorotan__foto{position:relative;aspect-ratio:4/5;border-radius:var(--r-lengkung);overflow:hidden;background:var(--navy-900) url(../media/pola-geometri.svg) center/80px}
.sorotan__foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 600ms var(--ease-tenang)}
.sorotan__foto img.aktif{opacity:1}
.sorotan__isi h3{font-size:var(--fs-h2);line-height:1.12}
.meta{font-size:var(--fs-meta);font-weight:500;color:var(--batu-600);margin:8px 0 16px}
.harga{font-family:var(--ff-judul);font-size:var(--fs-h3);font-weight:700;color:var(--emas-800);line-height:1.2;font-variant-numeric:tabular-nums}
.harga small{display:block;font-family:var(--ff-isi);font-size:var(--fs-meta);font-weight:500;color:var(--batu-600)}
.jadwal{font-size:var(--fs-meta);color:var(--batu-600);margin:4px 0 24px}
.kuota{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;padding:4px 12px;border-radius:var(--r-pil);background:var(--pasir-200);color:var(--tinta-900);font-size:var(--fs-meta);font-weight:600}
.isi-paket{list-style:none;display:grid;gap:10px;margin:0 0 24px}
.isi-paket li{position:relative;padding-left:28px;font-size:var(--fs-meta);line-height:1.5}
.isi-paket li::before{content:"";position:absolute;left:2px;top:.55em;width:12px;height:12px;border:1.5px solid var(--emas-800);transform:rotate(45deg)}
.sorotan__isi .btn-grup{flex-direction:column;align-items:flex-start;gap:8px}
.sorotan__isi .pembeda{font-size:var(--fs-body);margin:0 0 16px;color:var(--tinta-900)}
.daftar-paket{list-style:none;border-top:1px solid var(--pasir-300)}
.daftar-paket li{border-bottom:1px solid var(--pasir-300)}
.daftar-paket button{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;width:100%;min-height:96px;padding:12px 16px 12px 12px;border:0;border-left:3px solid transparent;background:none;text-align:left;cursor:pointer;transition:background-color var(--dur-2),border-color var(--dur-2)}
.daftar-paket button:hover{background:var(--pasir-50)}
.daftar-paket button[aria-pressed="true"]{background:var(--pasir-50);border-left-color:var(--emas-500)}
.daftar-paket .thumb{width:72px;height:90px;border-radius:4px;overflow:hidden;background:var(--navy-900)}
.daftar-paket .thumb img{width:100%;height:100%;object-fit:cover}
.daftar-paket strong{display:block;font-family:var(--ff-judul);font-size:1.625rem;font-weight:700;line-height:1.15;color:var(--navy-900)}
.daftar-paket span.d{display:block;font-size:var(--fs-meta);color:var(--batu-600);margin-top:2px}
.daftar-paket li.haji{border-top:3px double var(--pasir-300)}
.petunjuk-pin{margin-top:16px;font-size:var(--fs-meta);color:var(--batu-600)}

.paket-mob{display:grid;gap:var(--sp-6)}
.kartu{display:grid;gap:0}
.kartu__foto{aspect-ratio:3/2;border-radius:var(--r-kartu);overflow:hidden;margin-bottom:20px;background:var(--navy-900)}
.kartu:first-child .kartu__foto{aspect-ratio:4/5;border-radius:var(--r-lengkung)}
.kartu__foto img{width:100%;height:100%;object-fit:cover}
.kartu h3{font-size:var(--fs-h3);line-height:1.2}
.kartu .btn-grup{flex-direction:column;align-items:stretch;gap:4px}
.kartu.haji{padding:24px;border:1.5px solid var(--pasir-300);border-radius:var(--r-kartu)}
.paket-mob>.kartu+.kartu{padding-top:var(--sp-6);border-top:1px solid var(--pasir-300)}
.paket-mob>.kartu.haji{padding-top:24px}

/* ============ ITINERARY ============ */
.itinerary{background:var(--pasir-50)}
.tab-daftar{display:none;border-bottom:1px solid var(--pasir-300);margin:var(--sp-6) 0 var(--sp-6);gap:8px;flex-wrap:wrap}
.tab-daftar [role="tab"]{min-height:48px;padding:0 16px;border:0;background:none;border-bottom:3px solid transparent;margin-bottom:-1px;font-weight:500;font-size:var(--fs-ui);color:var(--tinta-900);cursor:pointer}
.tab-daftar [role="tab"][aria-selected="true"]{border-bottom-color:var(--emas-500);color:var(--navy-900);font-weight:600}
.pilih-paket{margin:var(--sp-5) 0 var(--sp-5)}
.pilih-paket label{display:block;font-weight:600;margin-bottom:8px}
.select{width:100%;min-height:56px;padding:0 48px 0 16px;border:1.5px solid var(--pasir-300);border-radius:var(--r-kontrol);background:var(--pasir-100) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230A1730' stroke-width='1.8'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 14px center/22px no-repeat;appearance:none;font-size:var(--fs-ui);font-weight:600;color:var(--navy-900)}
@media (min-width:1024px){.tab-daftar{display:flex}.pilih-paket{display:none}}
.it-panel{display:grid;gap:var(--sp-6)}
@media (min-width:1024px){.it-panel{grid-template-columns:8fr 4fr;gap:var(--sp-7);align-items:start}}
.it-isi{transition:opacity var(--dur-2) var(--ease-tenang)}
.it-isi.pudar{opacity:0}
.garis-waktu{position:relative;list-style:none;padding-left:40px}
.garis-waktu__garis{position:absolute;left:11px;top:10px;bottom:10px;width:1.5px;background:var(--pasir-300)}
.garis-waktu__garis i{position:absolute;inset:0;background:var(--emas-500);transform-origin:top;transform:scaleY(1)}
.hari{position:relative;padding-bottom:var(--sp-5)}
.hari::before{content:"";position:absolute;left:-36px;top:10px;width:16px;height:16px;border-radius:50%;background:var(--pasir-50);border:2px solid var(--emas-800)}
.hari h3{font-size:var(--fs-h3);line-height:1.2;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 14px}
.hari h3 .kota{font-family:var(--ff-isi);font-size:var(--fs-meta);font-weight:500;color:var(--batu-600)}
.hari p{margin-top:8px}
.hari.sembunyi{display:none}
.it-sebelum{padding:20px 24px;margin-bottom:var(--sp-5);border-left:3px solid var(--emas-500);background:var(--pasir-100)}
.it-sebelum h3{font-size:var(--fs-h3)}
.it-sebelum p{margin-top:8px}
.ringkasan{padding:28px;background:var(--pasir-100);border-radius:var(--r-kartu);box-shadow:var(--sh-1)}
@media (min-width:1024px){.ringkasan{position:sticky;top:calc(var(--header) + 32px)}}
.ringkasan h3{font-size:var(--fs-h3);margin-bottom:12px}
.ringkasan dl{margin:0 0 24px;display:grid;gap:12px}
.ringkasan dt{font-size:var(--fs-meta);color:var(--batu-600)}
.ringkasan dd{margin:0;font-weight:500}
.it-kosong{padding:32px;border:1.5px dashed var(--pasir-300);border-radius:var(--r-kartu);background:var(--pasir-100)}
.it-kosong h3{font-size:var(--fs-h2);margin-bottom:12px}

/* ============ HOTEL & MASKAPAI ============ */
.foto-penuh{position:relative;overflow:hidden;color:var(--pasir-100);background:var(--navy-900)}
.foto-penuh__bg{position:absolute;inset:0;z-index:0}
.foto-penuh__bg img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover}
.hotel{padding:0}
.hotel .foto-penuh__bg{position:relative;aspect-ratio:3/2}
.hotel .foto-penuh__bg img{inset:0;height:100%}
.hotel__panel{position:relative;z-index:2;background:var(--pasir-50);color:var(--tinta-900);padding:var(--sp-6) var(--tepi) var(--sp-8)}
.hotel__poin{list-style:none;display:grid;gap:20px;margin:28px 0}
.hotel__poin li{display:grid;grid-template-columns:32px 1fr;gap:16px}
.hotel__poin svg{width:32px;height:32px;color:var(--emas-800)}
.hotel__poin h3{font-size:1.5rem;line-height:1.2}
.hotel__poin p{margin-top:4px;font-size:var(--fs-meta);line-height:1.55}
.hotel__pesawat{display:none}
@media (min-width:1024px){
  .hotel{min-height:min(100svh,980px);display:flex;align-items:flex-end;padding:var(--sp-9) 0}
  .hotel .foto-penuh__bg{position:absolute;aspect-ratio:auto}
  .hotel .foto-penuh__bg img{inset:-8% 0;height:116%}
  .hotel .foto-penuh__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,23,48,.35),rgba(10,23,48,0) 60%)}
  .hotel .wadah{position:relative;z-index:2;display:grid;grid-template-columns:6fr 6fr;align-items:end;gap:var(--sp-7)}
  .hotel__panel{padding:var(--sp-7) var(--sp-6);border-radius:var(--r-kartu);box-shadow:var(--sh-2);max-width:640px}
  .hotel__pesawat{display:block;justify-self:end;align-self:start;width:min(100%,340px)}
  .hotel__pesawat .bingkai{aspect-ratio:4/5;border-radius:var(--r-lengkung);overflow:hidden;border:1px solid rgba(227,204,148,.6);box-shadow:var(--sh-2)}
  .hotel__pesawat img{width:100%;height:100%;object-fit:cover}
  .hotel__pesawat figcaption{margin-top:12px;font-size:var(--fs-meta);color:var(--pasir-100);text-shadow:0 1px 8px rgba(10,23,48,.9)}
}

/* ============ ALUR ============ */
.alur{text-align:left}
.alur__kepala{text-align:center;display:flex;flex-direction:column;align-items:center;margin-bottom:var(--sp-7)}
.alur__kepala .judul-bagian{color:var(--pasir-100);max-width:18ch}
.alur__kepala .penanda{justify-content:center}
.alur__kepala .penanda::after{content:none}
.langkah-wadah{position:relative}
.langkah{list-style:none;display:grid;gap:40px;position:relative;z-index:1}
.langkah li{position:relative;display:grid;grid-template-columns:80px 1fr;gap:20px;align-items:start}
.langkah .ikon{width:80px;height:80px;position:relative;z-index:1;background:var(--navy-900);overflow:hidden;flex:none}
.langkah .ikon>div,.langkah .ikon svg{width:100%!important;height:100%!important;display:block}
.langkah .ikon svg{width:100%;height:100%}
.langkah .no{display:block;font-size:var(--fs-meta);font-weight:600;color:var(--emas-300);margin-bottom:4px}
.langkah h3{font-size:var(--fs-h2);line-height:1.12;color:var(--pasir-100)}
.langkah p{margin-top:12px;color:var(--kabut-200)}
.rute-alur{position:absolute;z-index:0;left:39px;top:40px;bottom:40px;width:2px;height:auto;overflow:visible;pointer-events:none}
.rute-alur path{stroke:var(--emas-500);stroke-width:1.5;fill:none;stroke-dasharray:4 7}
.rute-alur--h{display:none}
.alur__aksi{display:flex;justify-content:center;margin-top:var(--sp-7)}
@media (min-width:1024px){
  .langkah{grid-template-columns:repeat(4,1fr);gap:var(--sp-5)}
  .langkah li{grid-template-columns:1fr;text-align:center;justify-items:center}
  .langkah .ikon{width:120px;height:120px}
  .langkah p{max-width:26ch}
  .rute-alur--v{display:none}
  .rute-alur--h{display:block;left:12.5%;right:12.5%;top:60px;bottom:auto;width:auto;height:2px}
}

/* ============ LEGALITAS ============ */
.legal{background:var(--pasir-100)}
.legal__grid{display:grid;gap:0;margin-top:var(--sp-7);border-top:1px solid var(--pasir-300)}
.legal__blok{padding:32px 0;border-bottom:1px solid var(--pasir-300)}
.legal__blok svg.lencana-ikon{width:48px;height:48px;color:var(--emas-800);margin-bottom:16px}
.legal__blok h3{font-size:var(--fs-h3);line-height:1.2;margin-bottom:12px}
.legal__blok .angka{font-family:var(--ff-isi);font-variant-numeric:tabular-nums;font-weight:600;font-size:1.25rem;letter-spacing:.02em;color:var(--navy-900);overflow-wrap:anywhere}
.legal__blok p{font-size:var(--fs-body);margin-bottom:4px}
.legal__cek{margin-top:var(--sp-6);display:grid;gap:24px;padding:32px;background:var(--pasir-50);border-radius:var(--r-kartu);border-left:3px solid var(--emas-500)}
.legal__cek p{max-width:58ch}
.statistik{display:flex;flex-wrap:wrap;gap:32px 64px;margin-top:var(--sp-6)}
.statistik div{display:grid}
.statistik strong{font-family:var(--ff-judul);font-size:var(--fs-stat);line-height:1;color:var(--navy-900);font-variant-numeric:tabular-nums}
@media (min-width:1024px){
  .legal__grid{grid-template-columns:repeat(3,1fr);border-top:0}
  .legal__blok{padding:8px 40px;border-bottom:0;border-left:1px solid var(--pasir-300)}
  .legal__blok:first-child{padding-left:0;border-left:0}
  .legal__cek{grid-template-columns:1fr auto;align-items:center;padding:40px 48px}
}

/* ============ GALERI ============ */
.galeri{background:var(--pasir-100);padding-bottom:var(--sp-8)}
.mosaik{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--tepi);margin-top:var(--sp-6);scrollbar-width:none;overscroll-behavior-x:contain}
.mosaik::-webkit-scrollbar{display:none}
.mosaik figure{margin:0;flex:0 0 82%;scroll-snap-align:start}
.mosaik button{display:block;width:100%;padding:0;border:0;background:var(--navy-900);cursor:zoom-in;aspect-ratio:4/5;overflow:hidden}
.mosaik img{width:100%;height:100%;object-fit:cover;transition:transform 900ms var(--ease-tiba)}
.mosaik figcaption{font-size:var(--fs-meta);color:var(--batu-600);margin-top:10px;line-height:1.45}
.mosaik__nav{display:flex;gap:12px;padding:0 var(--tepi);margin-top:20px}
.mosaik__nav button{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 16px;border:1.5px solid var(--navy-900);border-radius:var(--r-kontrol);background:none;font-weight:600;cursor:pointer;color:var(--navy-900)}
.mosaik__nav svg{width:20px;height:20px}
@media (hover:hover){.mosaik button:hover img{transform:scale(1.04)}}
@media (min-width:1024px){
  .mosaik{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:auto;gap:16px;overflow:visible;padding:0 var(--tepi);max-width:1440px;margin-inline:auto}
  .mosaik figure{flex:none}
  .mosaik figure:nth-child(1){grid-column:span 5}.mosaik figure:nth-child(1) button{aspect-ratio:16/11}
  .mosaik figure:nth-child(2){grid-column:span 4}.mosaik figure:nth-child(2) button{aspect-ratio:4/5;}
  .mosaik figure:nth-child(3){grid-column:span 3}.mosaik figure:nth-child(3) button{aspect-ratio:3/5}
  .mosaik figure:nth-child(4){grid-column:span 4}.mosaik figure:nth-child(4) button{aspect-ratio:4/3}
  .mosaik figure:nth-child(5){grid-column:span 4}.mosaik figure:nth-child(5) button{aspect-ratio:4/3}
  .mosaik figure:nth-child(6){grid-column:span 4}.mosaik figure:nth-child(6) button{aspect-ratio:4/3}
  .mosaik figure:nth-child(2){margin-top:64px}
  .mosaik__nav{display:none}
}
.galeri .catatan{margin-top:var(--sp-5)}
.testimoni{margin-top:var(--sp-8)}
.testimoni blockquote{margin:24px 0 0;font-family:var(--ff-judul);font-style:italic;font-size:var(--fs-h2);line-height:1.25;color:var(--navy-900);max-width:30ch}
.testimoni cite{display:block;margin-top:16px;font-family:var(--ff-isi);font-style:normal;font-size:var(--fs-meta);color:var(--batu-600)}

/* dialog foto */
.dialog-foto{border:0;padding:0;background:transparent;max-width:min(1200px,94vw);max-height:92vh;color:var(--pasir-100)}
.dialog-foto::backdrop{background:rgba(10,23,48,.9)}
.dialog-foto img{max-height:80vh;width:auto;margin:0 auto;object-fit:contain}
.dialog-foto p{margin:12px auto 0;text-align:center;font-size:var(--fs-meta)}
.dialog-foto .tutup{position:sticky;top:0;margin:0 0 12px auto;display:flex;background:var(--navy-900)}

/* ============ SIMULASI ============ */
.simulasi{background:var(--pasir-200)}
.simulasi::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:48px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 48' preserveAspectRatio='none'%3E%3Cpath d='M0 48 C 360 0 1080 0 1440 48 Z' fill='%23F4ECDD'/%3E%3Cpath d='M0 47 C 360 -1 1080 -1 1440 47' fill='none' stroke='%23C9A45C' stroke-width='1.5'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.sim__grid{display:grid;gap:var(--sp-6)}
@media (min-width:1024px){.sim__grid{grid-template-columns:5fr 7fr;gap:var(--sp-8);align-items:start}}
.sim__kartu{background:var(--pasir-50);border-radius:var(--r-kartu);box-shadow:var(--sh-1);padding:28px 20px}
@media (min-width:768px){.sim__kartu{padding:40px}}
.segmen{display:grid;grid-template-columns:1fr 1fr;border:1.5px solid var(--navy-900);border-radius:var(--r-kontrol);overflow:hidden;margin:0 0 28px;padding:0}
.segmen legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.segmen label{position:relative;display:flex;align-items:center;justify-content:center;min-height:56px;font-weight:600;cursor:pointer;transition:background-color var(--dur-1)}
.segmen input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.segmen input:checked+span{color:var(--pasir-100)}
.segmen label:has(input:checked){background:var(--navy-900)}
.segmen label:has(input:focus-visible){outline:3px solid var(--navy-900);outline-offset:3px;box-shadow:0 0 0 6px var(--emas-300);z-index:1}
.bidang{margin-bottom:24px}
.bidang>label,.bidang legend{display:block;font-weight:600;margin-bottom:8px;color:var(--navy-900)}
.bidang .bantu{display:block;font-size:var(--fs-meta);color:var(--batu-600);margin-top:8px}
.rupiah{position:relative}
.rupiah span{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-weight:600;color:var(--batu-700)}
.rupiah input{width:100%;min-height:56px;padding:0 16px 0 52px;border:1.5px solid var(--pasir-300);border-radius:var(--r-kontrol);background:var(--pasir-100);font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--tinta-900)}
.rupiah input:hover{border-color:var(--batu-600)}
.rupiah input[aria-invalid="true"]{border-color:var(--merah-600)}
.galat{display:flex;gap:8px;align-items:flex-start;color:var(--merah-600);font-size:var(--fs-meta);font-weight:500;margin-top:8px}
.galat svg{width:20px;height:20px;flex:none;margin-top:2px}
.bulan{border:0;padding:0;margin:0 0 28px}
.bulan__pilih{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.bulan__pilih label{position:relative;display:flex;align-items:center;justify-content:center;min-height:56px;border:1.5px solid var(--pasir-300);border-radius:var(--r-kontrol);background:var(--pasir-100);font-weight:600;cursor:pointer;font-variant-numeric:tabular-nums}
.bulan__pilih input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.bulan__pilih label:has(input:checked){background:var(--navy-900);border-color:var(--navy-900);color:var(--pasir-100)}
.bulan__pilih label:has(input:focus-visible){outline:3px solid var(--navy-900);outline-offset:3px;box-shadow:0 0 0 6px var(--emas-300)}
@media (max-width:420px){.bulan__pilih{grid-template-columns:repeat(3,1fr)}}
.hasil{margin-top:28px;padding:20px 0 4px 24px;border-left:3px solid var(--emas-500)}
.hasil__label{font-weight:600;color:var(--navy-900)}
.hasil__angka{display:block;font-family:var(--ff-judul);font-size:var(--fs-stat);font-weight:600;line-height:1.05;color:var(--navy-900);font-variant-numeric:tabular-nums;margin:6px 0 12px;overflow-wrap:anywhere}
.hasil p{font-size:var(--fs-meta)}
.sim__catatan{font-size:var(--fs-meta);color:var(--batu-700);margin-top:16px}

/* ============ FAQ ============ */
.faq{background:var(--pasir-100)}
.faq__grid{display:grid;gap:var(--sp-6)}
@media (min-width:1024px){.faq__grid{grid-template-columns:4fr 8fr;gap:var(--sp-8);align-items:start}.faq__samping{position:sticky;top:calc(var(--header) + 32px)}}
.faq__samping .btn-grup{margin-top:28px;flex-direction:column;align-items:flex-start}
.akordeon{border-top:1px solid var(--pasir-300)}
.akordeon details{border-bottom:1px solid var(--pasir-300);transition:background-color var(--dur-2)}
.akordeon details[open]{background:var(--pasir-50);border-radius:var(--r-kartu);border-bottom-color:transparent}
.akordeon summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding:16px 12px;font-weight:600;font-size:1.1875rem;line-height:1.4;cursor:pointer;list-style:none;color:var(--navy-900)}
.akordeon summary::-webkit-details-marker{display:none}
.akordeon summary .plus{flex:none;width:28px;height:28px;position:relative}
.akordeon summary .plus::before,.akordeon summary .plus::after{content:"";position:absolute;left:50%;top:50%;width:18px;height:1.5px;background:var(--emas-800);transform:translate(-50%,-50%);transition:transform var(--dur-2) var(--ease-tiba)}
.akordeon summary .plus::after{transform:translate(-50%,-50%) rotate(90deg)}
.akordeon details[open] summary .plus::after{transform:translate(-50%,-50%) rotate(0)}
.akordeon .jawab{padding:0 24px 24px 12px}
@media (min-width:768px){.akordeon summary{padding:16px 24px}.akordeon .jawab{padding:0 24px 28px}}
.akordeon .jawab a{color:var(--emas-800);text-underline-offset:4px;font-weight:500}

/* ============ KONTAK ============ */
.kontak{padding:0;background:var(--navy-900)}
.kontak .foto-penuh__bg{position:relative;aspect-ratio:16/10}
.kontak .foto-penuh__bg img{inset:0;height:100%}
.kontak__blok{position:relative;z-index:2;background:var(--navy-900);padding:var(--sp-6) var(--tepi) var(--sp-8);color:var(--kabut-200)}
.kontak__blok h2{color:var(--pasir-100)}
.kontak .lead{color:var(--kabut-200)}
.kontak__info{display:grid;gap:24px;margin:32px 0}
.kontak__info h3{font-family:var(--ff-isi);font-size:var(--fs-meta);font-weight:600;color:var(--batu-400);margin-bottom:4px}
.kontak__info p{color:var(--pasir-100);font-size:var(--fs-body)}
.kontak__info a{color:var(--emas-300);text-underline-offset:5px;display:inline-flex;align-items:center;min-height:48px}
.kontak .catatan{color:var(--kabut-200);margin-top:28px;max-width:56ch}
@media (min-width:1024px){
  .kontak{min-height:min(100svh,1000px);display:flex;align-items:center;padding:var(--sp-9) 0}
  .kontak .foto-penuh__bg{position:absolute;aspect-ratio:auto}
  .kontak .foto-penuh__bg img{inset:-8% 0;height:116%}
  .kontak .wadah{position:relative;z-index:2}
  .kontak__blok{max-width:720px;margin-left:8.33%;background:rgba(10,23,48,.92);border-radius:var(--r-kartu);padding:var(--sp-7);border:1px solid rgba(227,204,148,.25)}
  .kontak__info{grid-template-columns:1fr 1fr}
}

/* ============ FOOTER ============ */
.footer{position:relative;background:var(--navy-800);color:var(--kabut-200);padding:var(--sp-8) 0 var(--sp-6)}
.footer__rute{position:absolute;left:0;right:0;top:0;height:40px;width:100%}
.footer__rute path{fill:none;stroke:var(--emas-500);stroke-width:1.5;stroke-dasharray:3 7}
.footer__grid{display:grid;gap:40px}
@media (min-width:768px){.footer__grid{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1024px){.footer__grid{grid-template-columns:4fr 2fr 3fr 3fr}}
.footer h2{font-family:var(--ff-isi);font-size:var(--fs-meta);font-weight:600;color:var(--emas-300);margin-bottom:12px}
.footer .merek{color:var(--pasir-100);margin-bottom:16px}
.footer p{color:var(--kabut-200);font-size:var(--fs-meta);line-height:1.6}
.footer ul{list-style:none;display:grid}
.footer a{color:var(--pasir-100);text-decoration:none;display:inline-flex;align-items:center;min-height:44px;font-size:var(--fs-meta)}
.footer a:hover{text-decoration:underline;text-underline-offset:5px;color:var(--emas-300)}
.footer__bawah{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:var(--sp-7);padding-top:24px;border-top:1px solid var(--navy-500);font-size:var(--fs-meta)}
.footer__bawah p{margin:0}
.footer .catatan{color:var(--kabut-200)}

/* ============ CHAT ARSHAKA ============ */
.chat-tombol{position:fixed;z-index:60;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));display:inline-flex;align-items:center;gap:10px;min-height:56px;min-width:56px;padding:0 22px 0 18px;border-radius:var(--r-pil);border:1px solid var(--emas-500);background:var(--navy-900);color:var(--pasir-100);font-weight:600;font-size:var(--fs-ui);box-shadow:var(--sh-2);cursor:pointer;transition:padding var(--dur-2) var(--ease-tiba),transform var(--dur-2) var(--ease-tiba),opacity var(--dur-2)}
.chat-tombol svg{width:24px;height:24px;color:var(--emas-300);flex:none}
.chat-tombol.ikon-saja{padding:0 15px}
.chat-tombol.ikon-saja .lbl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.chat-tombol.tersembunyi{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(16px)}
@media (min-width:1024px){.chat-tombol{right:24px;bottom:24px}}
.chat{position:fixed;z-index:70;inset:auto 0 0 0;max-height:85svh;display:flex;flex-direction:column;background:var(--navy-700);color:var(--kabut-200);border-radius:var(--r-panel) var(--r-panel) 0 0;box-shadow:var(--sh-2);border:1px solid var(--navy-500);transform:translateY(0);transition:transform var(--dur-3) var(--ease-tiba),opacity var(--dur-3) var(--ease-tiba)}
.chat[hidden]{display:flex!important;transform:translateY(105%);opacity:0;visibility:hidden;transition:transform calc(var(--dur-3)*.65) var(--ease-pergi),opacity calc(var(--dur-3)*.65),visibility 0s calc(var(--dur-3)*.65)}
@media (min-width:768px){.chat{inset:auto 24px 96px auto;width:400px;max-height:min(680px,calc(100vh - 140px));border-radius:var(--r-panel)}.chat[hidden]{transform:translateY(24px) scale(.98)}}
.chat__kepala{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 12px;border-bottom:1px solid var(--navy-500)}
.chat__kepala h2{font-size:1.75rem;line-height:1.15;color:var(--pasir-100)}
.chat__kepala .pegangan{position:absolute;left:50%;top:8px;width:40px;height:4px;border-radius:2px;background:var(--navy-500);transform:translateX(-50%)}
@media (min-width:768px){.chat__kepala .pegangan{display:none}}
.chat__badan{overflow:auto;padding:16px 20px;overscroll-behavior:contain}
.chat__badan p{font-size:var(--fs-meta)}
.chip-grup{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}
.chip{min-height:48px;padding:10px 16px;border-radius:var(--r-pil);border:1px solid var(--emas-300);background:transparent;color:var(--pasir-100);font-size:var(--fs-meta);font-weight:500;text-align:left;cursor:pointer;line-height:1.3}
.chip[aria-pressed="true"]{background:var(--emas-300);color:var(--navy-900)}
.balasan{margin-top:8px;padding:16px;border-radius:var(--r-kartu);background:var(--navy-900);border-left:3px solid var(--emas-500)}
.balasan p{color:var(--kabut-200)}
.balasan a{color:var(--emas-300);display:inline-flex;align-items:center;min-height:44px;text-underline-offset:4px}
.chat__kaki{padding:16px 20px calc(16px + env(safe-area-inset-bottom));border-top:1px solid var(--navy-500);display:grid;gap:10px}
.chat__kaki p{font-size:var(--fs-meta);color:var(--kabut-200);margin:0}
.chat__kaki .kecil{color:var(--batu-400);font-size:var(--fs-meta);line-height:1.45}
.tirai-chat{position:fixed;inset:0;z-index:65;background:rgba(10,23,48,.5);opacity:1;transition:opacity var(--dur-3)}
.tirai-chat[hidden]{display:block!important;opacity:0;pointer-events:none;visibility:hidden}

/* ============ GERAK DIKURANGI ============ */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .hero__media video{display:none}
  .jeda{display:none}
}

/* ============ QA Rasyid putaran 1 (t_9d1b2171) ============ */
/* langkah ke-4 turun 14px: baris grid ter-stretch saat teks lebih pendek */
.langkah li{align-content:start}
/* garis rute horizontal hanya 100px (lebar intrinsik viewBox) -> paksa lebar penuh */
@media (min-width:1024px){.rute-alur--h{right:auto;width:75%;height:2px}}
/* angka statistik menabrak keterangan (angka gaya lama Cormorant turun ke bawah) */
.statistik div{gap:12px}
.statistik strong{line-height:1.1;font-variant-numeric:lining-nums tabular-nums}
.hasil__angka{font-variant-numeric:lining-nums tabular-nums}
/* keterangan "Foto ilustrasi" tak terbaca di atas foto terang */
@media (min-width:1024px){.hotel__pesawat figcaption{display:inline-block;padding:4px 12px;border-radius:999px;background:rgba(10,23,48,.72);text-shadow:none}}
