/* Praktek Fisioterapi Puri Bintaro Hijau — hijau tua, emas, foto potret berbingkai lengkung */
:root{
  --hijau:#0c3f2c; --hijau-2:#145a3f; --hijau-tua:#072a1d;
  --sage:#eaf2ed; --sage-2:#dbe8e0; --kertas:#fbfcfa; --putih:#fff;
  --ink:#10241b; --teks:#2f453a; --pudar:#566a60;
  --emas:#b08d3c; --emas-teks:#8a6a1f; --emas-terang:#dcc17b;
  --garis:rgba(12,63,44,.14); --garis-terang:rgba(255,255,255,.2);
  --serif:"Newsreader",Georgia,"Times New Roman",serif; --sans:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --h:76px; --ease:cubic-bezier(.22,.61,.24,1);
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--h) + 12px);scroll-behavior:smooth}
body{font-family:var(--sans);font-size:18px;line-height:1.7;color:var(--teks);background:var(--kertas);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0}
::selection{background:var(--emas-terang);color:var(--hijau-tua)}
:focus-visible{outline:2px solid var(--emas-teks);outline-offset:3px}
.bungkus{width:min(1200px,100% - 64px);margin-inline:auto}
.lewati{position:absolute;left:-9999px}.lewati:focus{left:12px;top:12px;z-index:99;background:var(--hijau);color:#fff;padding:10px 14px}
.ic{display:inline-flex;width:20px;height:20px;flex:none}.ic svg{width:100%;height:100%}
.ic-k{display:inline-flex;width:18px;height:18px;flex:none;transition:transform .35s var(--ease)}.ic-k svg{width:100%;height:100%}
h1,h2,h3{color:var(--ink);font-family:var(--serif);font-weight:400;letter-spacing:-.018em}
h1{font-size:clamp(2.9rem,5.6vw,5.4rem);line-height:1.02}
h2{font-size:clamp(2.1rem,3.6vw,3.3rem);line-height:1.08}
h3{font-size:1.5rem;line-height:1.2;font-weight:500;letter-spacing:-.01em}
.lead{font-size:1.18rem;line-height:1.65;color:var(--teks);max-width:46ch}
.kecil{font-size:.88rem;color:var(--pudar)}
.jenis{font-size:.9rem;font-weight:500;color:var(--emas-teks);margin-bottom:.15rem}

/* tombol & tautan */
.tombol{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:54px;padding:0 30px;border-radius:999px;font-weight:500;font-size:1rem;border:1px solid transparent;transition:background .35s var(--ease),color .35s,border-color .35s,transform .35s var(--ease);white-space:nowrap}
.tombol:active{transform:translateY(1px)}
.tombol-kecil{min-height:46px;padding:0 22px;font-size:.95rem}
.tombol-utama{background:var(--hijau);color:#fff}.tombol-utama:hover{background:var(--hijau-2)}
.tombol-garis{border-color:var(--hijau);color:var(--hijau)}.tombol-garis:hover{background:var(--hijau);color:#fff}
.tombol-emas{background:var(--emas-terang);color:var(--hijau-tua)}.tombol-emas:hover{background:#ecd28f}
.tombol-garis-terang{border-color:rgba(255,255,255,.5);color:#fff}.tombol-garis-terang:hover{background:#fff;color:var(--hijau-tua);border-color:#fff}
.tautan{display:inline-flex;align-items:center;gap:8px;font-weight:500;color:var(--hijau);padding-bottom:3px;background:linear-gradient(var(--emas),var(--emas)) 0 100%/100% 1px no-repeat;transition:color .3s,background-size .35s var(--ease)}
.tautan:hover{color:var(--hijau-2);background-size:100% 2px}.tautan:hover .ic-k{transform:translateX(3px)}
.tautan-wa .ic{width:18px;height:18px}
.aksi{display:flex;flex-wrap:wrap;align-items:center;gap:14px 26px;margin-top:32px}

/* header */
.kepala{position:sticky;top:0;z-index:50;background:rgba(251,252,250,.92);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--garis)}
.kepala-isi{height:var(--h);display:flex;align-items:center;gap:28px}
.logo{display:flex;align-items:center;gap:12px;line-height:1.1}
.logo img{width:44px;height:44px;border-radius:50%}
.logo small{display:block;font-size:.74rem;color:var(--pudar);letter-spacing:.01em}
.logo b{display:block;font-family:var(--serif);font-weight:500;font-size:1.28rem;color:var(--hijau);letter-spacing:-.01em}
.menu{display:flex;gap:6px;margin-left:auto}
.menu a{position:relative;padding:10px 14px;font-weight:500;font-size:.98rem;color:var(--teks);transition:color .3s}
.menu a::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:1px;background:var(--emas);transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}
.menu a:hover{color:var(--hijau)}.menu a:hover::after,.menu a[aria-current]::after{transform:scaleX(1)}
.menu a[aria-current]{color:var(--hijau)}
.burger{display:none;width:48px;height:48px;margin-left:auto;position:relative}
.burger span{position:absolute;left:12px;right:12px;height:1.5px;background:var(--hijau);transition:transform .3s}
.burger span:first-child{top:19px}.burger span:last-child{top:28px}
.burger[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}
.burger[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
.menu-hp{border-top:1px solid var(--garis);padding:8px 24px 28px;background:var(--kertas);max-height:calc(100vh - var(--h));overflow:auto}
.menu-hp[hidden]{display:none}
.menu-hp>a{display:block;padding:16px 2px;font-family:var(--serif);font-size:1.7rem;color:var(--hijau);border-bottom:1px solid var(--garis)}
.menu-hp-tombol{display:grid;gap:10px;margin-top:22px}

/* foto: bingkai mengikuti rasio asli, tidak dipotong */
.foto{margin:0;position:relative;overflow:hidden;border-radius:18px;background:var(--sage)}
.foto.arch{border-radius:999px 999px 18px 18px}
.foto img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease)}
a:hover>.foto img,button:hover .foto img,.unggulan:hover .foto img{transform:scale(1.035)}

/* hero */
.hero{position:relative;padding:56px 0 88px;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:5vw;align-items:center}
.hero-label{display:inline-flex;align-items:center;gap:10px;font-weight:500;font-size:.98rem;color:var(--emas-teks);margin-bottom:26px}
.hero-label i{width:34px;height:1px;background:var(--emas)}
.hero h1{max-width:12ch}
.hero-sub{margin-top:28px;max-width:44ch;font-size:1.2rem}
.hero-catatan{margin-top:20px;font-size:.95rem;color:var(--pudar)}
.hero-visual{position:relative;justify-self:center;width:min(100%,360px)}
.dial-wadah{position:absolute;left:50%;top:50%;width:136%;aspect-ratio:1;transform:translate(-50%,-50%);color:var(--emas);pointer-events:none;z-index:0}
.dial{width:100%;height:100%;stroke:var(--emas);overflow:visible}
.dial .jarum{transform:rotate(105deg)}.dial .ujung{fill:var(--emas);stroke:none}
.hero-foto{position:relative;z-index:1;box-shadow:0 40px 80px -48px rgba(7,42,29,.55)}
.hero-foto .foto{border-radius:999px 999px 22px 22px}
.hero-lencana{position:absolute;z-index:2;left:-14%;bottom:7%;display:flex;align-items:center;gap:14px;background:var(--putih);padding:12px 22px 12px 16px;border-radius:999px;box-shadow:0 18px 40px -18px rgba(7,42,29,.45);transition:transform .4s var(--ease)}
.hero-lencana:hover{transform:translateY(-3px)}
.lencana-angka{font-family:var(--serif);font-size:2.3rem;line-height:1;color:var(--hijau)}
.hero-lencana small{display:block;font-size:.8rem;color:var(--pudar);line-height:1.3}
.bintang{display:inline-flex;gap:2px;color:var(--emas)}.bintang i{display:block;width:16px;height:16px;opacity:.25}.bintang i.on{opacity:1}.bintang svg{width:100%;height:100%}

/* fakta */
.fakta{border-block:1px solid var(--garis);background:var(--putih)}
.fakta dl{display:grid;grid-template-columns:repeat(4,1fr)}
.fakta dl>div{padding:30px 28px;border-left:1px solid var(--garis)}
.fakta dl>div:first-child{border-left:0;padding-left:0}
.fakta dt{font-size:.88rem;color:var(--pudar)}
.fakta dd{margin-top:4px;font-family:var(--serif);font-size:1.28rem;line-height:1.3;color:var(--ink)}

/* seksi */
.seksi{padding:104px 0}
.seksi-rapat{padding:56px 0 104px}
.pengantar-isi{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:end}
.pengantar h2{font-size:clamp(2.3rem,4.4vw,4rem);max-width:16ch}
.pengantar .tautan{margin-top:22px}
.layanan-unggulan{padding-top:0}
.layanan-baris{display:grid;grid-template-columns:repeat(4,1fr);gap:36px;align-items:start}
.unggulan{display:block}.unggulan .foto{margin-bottom:18px}
.unggulan h3{margin-bottom:6px}.unggulan p:last-child{font-size:.98rem;color:var(--teks)}

/* keluhan */
.keluhan{background:var(--sage);padding:104px 0}
.keluhan-kepala{display:grid;grid-template-columns:1.1fr .9fr;gap:6vw;align-items:end;margin-bottom:56px}
.keluhan-kepala h2{max-width:16ch}
.keluhan-daftar{list-style:none;padding:0;font-family:var(--serif);font-size:clamp(1.55rem,2.8vw,2.45rem);line-height:1.5;color:var(--hijau);letter-spacing:-.012em}
.keluhan-daftar li{display:inline}
.keluhan-daftar li+li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--emas);margin:0 .6em;vertical-align:.18em}
.keluhan-tanya{margin-top:48px;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}

/* alur */
.alur h2{max-width:14ch;margin-bottom:56px}
.alur-daftar{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.alur-daftar li{padding:28px 32px 0 0;border-top:1px solid var(--garis);margin-right:0}
.alur-no{display:block;font-family:var(--serif);font-size:2.6rem;line-height:1;color:var(--emas-teks);margin-bottom:18px}
.alur-daftar p{margin-top:8px;font-size:1rem}

/* split: homecare & olahraga */
.split{padding:104px 0}
.split.balik{background:var(--sage)}
.split-isi{display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw;align-items:center}
.split.balik .split-isi{grid-template-columns:1.2fr .8fr}
.split.balik .split-foto{order:2}
.split-foto{width:min(100%,400px);justify-self:center}
.keterangan{margin-top:14px;font-size:.9rem;color:var(--pudar);text-align:center}
.split-teks h2{max-width:16ch}.split-teks .lead{margin-top:22px}
.poin{list-style:none;padding:0;margin-top:26px;display:grid;gap:12px}
.poin li{position:relative;padding-left:28px}
.poin li::before{content:"";position:absolute;left:0;top:.72em;width:14px;height:1px;background:var(--emas)}
.catatan{margin-top:22px;font-size:.98rem;color:var(--pudar)}

/* edukasi */
.edukasi{border-top:1px solid var(--garis)}
.edukasi-isi{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:center}
.edukasi-foto{max-width:460px}
.edukasi h2{max-width:14ch}.edukasi .lead{margin:22px 0}

/* ulasan */
.ulasan-beranda{background:var(--putih);border-top:1px solid var(--garis)}
.ulasan-kepala{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw;align-items:center;margin-bottom:64px}
.ulasan-skor{display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.skor{font-family:var(--serif);font-size:clamp(4.6rem,8vw,7rem);line-height:.9;color:var(--hijau);letter-spacing:-.03em}
.ulasan-skor .bintang i{width:22px;height:22px}
.ulasan-skor p{font-size:.95rem;color:var(--pudar)}
.ulasan-kepala .lead{margin:14px 0 20px}
.ulasan-baris{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.ulasan-item{margin:0;padding:0 32px 0 0;margin-right:32px;border-right:1px solid var(--garis)}
.ulasan-baris .ulasan-item:last-child{border-right:0;margin-right:0}
.ulasan-item blockquote p{font-family:var(--serif);font-size:1.22rem;line-height:1.5;color:var(--ink);margin-bottom:.7em}
.ulasan-item figcaption{margin-top:18px;display:flex;flex-direction:column;gap:6px}
.ulasan-nama{display:flex;align-items:center;gap:12px}.ulasan-nama b{font-weight:600;color:var(--ink)}
.ulasan-waktu{font-size:.88rem;color:var(--pudar)}
.ulasan-baris .ulasan-item blockquote{display:-webkit-box;-webkit-line-clamp:9;-webkit-box-orient:vertical;overflow:hidden}
.ulasan-halaman{display:grid;grid-template-columns:1.2fr .8fr;gap:6vw;align-items:center}
.ulasan-skor.besar .skor{font-size:clamp(5.4rem,10vw,9rem)}
.ulasan-kolom{columns:2;column-gap:7vw}
.ulasan-kolom .ulasan-item{break-inside:avoid;border:0;margin:0 0 56px;padding:0 0 0 0}
.ulasan-catatan{margin-top:8px;font-size:.9rem;color:var(--pudar)}

/* penutup */
.penutup{background:var(--hijau-tua);color:#cfe0d6}
.penutup-isi{display:flex;justify-content:space-between;align-items:center;gap:40px;flex-wrap:wrap;padding:88px 0}
.penutup h2{color:#fff;max-width:22ch;font-size:clamp(1.9rem,3.2vw,2.9rem)}
.penutup p{margin-top:14px;max-width:48ch;color:#b4cbbf}
.penutup-tombol{display:flex;gap:12px;flex-wrap:wrap}

/* halaman dalam */
.kepala-hal{background:var(--sage);padding:80px 0 64px;border-bottom:1px solid var(--garis)}
.kepala-hal h1{max-width:16ch}.kepala-hal .lead{margin-top:22px}
.kembali{display:inline-flex;align-items:center;gap:8px;font-weight:500;font-size:.95rem;color:var(--pudar);margin-bottom:22px}
.balik-panah{transform:scaleX(-1)}
.kembali:hover{color:var(--hijau)}
.layanan-kolom{columns:2;column-gap:7vw}
.layanan-item{break-inside:avoid;margin-bottom:64px}
.layanan-item .foto{margin-bottom:20px;max-width:380px}
.layanan-item p:not(.jenis){font-size:1.02rem;max-width:44ch}
.layanan-item .tautan{margin-top:14px}
.layanan-item.tanpa-foto{padding-top:24px;border-top:1px solid var(--garis)}
.layanan-item.tanpa-foto h3{font-size:1.9rem}
.artikel-daftar{display:grid;gap:56px}
.artikel-baris{display:grid;grid-template-columns:240px 1fr;gap:48px;align-items:center}
.artikel-baris h2{font-size:2.3rem;margin-bottom:10px}.artikel-baris .lead{margin-bottom:18px}
.artikel-isi{display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:start}
.artikel-gambar{position:sticky;top:calc(var(--h) + 28px);max-width:460px}
.artikel-teks .awal{font-family:var(--serif);font-size:1.6rem;line-height:1.45;color:var(--ink);margin-bottom:1.4rem}
.artikel-poin{margin:2rem 0}
.artikel-poin>div{padding:20px 0;border-top:1px solid var(--garis)}
.artikel-poin dt{font-family:var(--serif);font-size:1.3rem;color:var(--hijau)}
.artikel-poin dd{margin-top:4px}
.artikel-penutup{padding:22px 24px;background:var(--sage);border-radius:16px;margin-bottom:24px}
.galeri{columns:3;column-gap:20px}
.galeri-item{display:block;width:100%;margin:0 0 20px;break-inside:avoid;position:relative;text-align:left;cursor:zoom-in}
.galeri-item span{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;background:linear-gradient(transparent,rgba(7,42,29,.78));color:#fff;font-size:.95rem;font-weight:500;border-radius:0 0 18px 18px;opacity:0;transition:opacity .4s}
.galeri-item:hover span,.galeri-item:focus-visible span{opacity:1}
.galeri-ig{margin-top:24px;color:var(--pudar)}

/* janji */
.janji-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:7vw;align-items:start}
.janji-info .poin{margin:28px 0}
.janji-wa{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}
.form-janji{background:var(--sage);padding:40px;border-radius:28px;display:grid;gap:18px}
.form-janji h2{font-size:2rem}
.form-janji label,.form-janji legend{display:grid;gap:7px;font-weight:500;color:var(--ink);font-size:.95rem}
.form-janji label small{font-weight:400;color:var(--pudar)}
.form-janji input:not([type=radio]),.form-janji select,.form-janji textarea{width:100%;font-weight:400;font-size:1rem;padding:14px 16px;border:1px solid var(--garis);border-radius:14px;background:var(--putih);min-height:52px;transition:border-color .3s,box-shadow .3s}
.form-janji input:focus,.form-janji select:focus,.form-janji textarea:focus{outline:none;border-color:var(--hijau);box-shadow:0 0 0 3px rgba(12,63,44,.14)}
.form-janji fieldset{border:0;padding:0;display:flex;gap:10px;flex-wrap:wrap}
.form-janji legend{width:100%;margin-bottom:8px}
.radio{display:block!important}.radio input{position:absolute;opacity:0}
.radio span{display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border:1px solid var(--garis);border-radius:999px;background:var(--putih);cursor:pointer;font-weight:500;transition:all .3s}
.radio input:checked+span{background:var(--hijau);border-color:var(--hijau);color:#fff}
.radio input:focus-visible+span{outline:2px solid var(--emas-teks);outline-offset:3px}
.dua{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lokasi-hc[hidden]{display:none}
.form-galat{color:#a3281d;font-weight:500}.form-galat:empty{display:none}
.form-janji .tombol{margin-top:6px}
.faq{background:var(--putih);border-top:1px solid var(--garis)}
.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:6vw}
.faq h2{max-width:10ch}
.faq details{border-bottom:1px solid var(--garis)}.faq details:first-child{border-top:1px solid var(--garis)}
.faq summary{cursor:pointer;list-style:none;padding:24px 44px 24px 0;font-family:var(--serif);font-size:1.4rem;color:var(--ink);position:relative;line-height:1.3}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:50%;width:11px;height:11px;border-right:1.5px solid var(--emas-teks);border-bottom:1.5px solid var(--emas-teks);transform:translateY(-70%) rotate(45deg);transition:transform .35s var(--ease)}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{padding:0 40px 24px 0;max-width:60ch}

/* kontak */
.kontak-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:start}
.kontak-info dl>div{padding:22px 0;border-top:1px solid var(--garis)}
.kontak-info dl>div:first-child{border-top:0;padding-top:0}
.kontak-info dt{font-size:.9rem;color:var(--pudar);margin-bottom:4px}
.kontak-info dd{font-size:1.08rem;color:var(--ink)}
.jam{display:flex;gap:18px;justify-content:space-between;max-width:340px}.jam b{font-weight:500}
.kontak-wa{font-family:var(--serif);font-size:1.9rem;color:var(--hijau)}
.peta iframe{display:block;width:100%;height:520px;border:0;border-radius:28px;filter:saturate(.7)}
.visi{background:var(--hijau-tua);text-align:center;padding:96px 0}
.visi blockquote p{font-family:var(--serif);font-size:clamp(1.9rem,3.6vw,3.2rem);line-height:1.2;color:#fff;max-width:26ch;margin:0 auto}
.visi .lead{color:#b4cbbf;margin:24px auto 0}

/* kaki */
.kaki{background:var(--hijau-tua);color:#a9c1b4;padding:80px 0 28px;font-size:.98rem}
.kaki-isi{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:56px}
.logo-terang b{color:#fff}.logo-terang small{color:#a9c1b4}
.kaki-merek p{margin-top:20px;max-width:34ch}
.kaki-sipf{font-size:.88rem;color:var(--emas-terang)}
.kaki h3{font-family:var(--sans);font-size:.9rem;font-weight:600;color:#fff;margin-bottom:16px;letter-spacing:.01em}
.kaki ul{list-style:none;padding:0;display:grid;gap:9px}
.kaki a{transition:color .3s}.kaki a:hover{color:#fff}
.kaki-catatan{color:var(--emas-terang);margin-top:6px}
.kaki-wa{margin-top:18px}.kaki-wa a{color:#fff;font-weight:500}
.sosmed{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.sm{width:44px;height:44px;border-radius:50%;border:1px solid var(--garis-terang);display:grid;place-items:center;color:#e1ece6;transition:background .35s,color .35s,border-color .35s,transform .35s var(--ease)}
.sm svg{width:19px;height:19px}.sm:hover{background:var(--emas-terang);border-color:var(--emas-terang);color:var(--hijau-tua);transform:translateY(-2px)}
.sosmed-gelap{margin-top:6px}.sosmed-gelap .sm{border-color:var(--garis);color:var(--hijau)}
.sosmed-gelap .sm:hover{background:var(--hijau);border-color:var(--hijau);color:#fff}
.kaki-bawah{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:64px;padding-top:22px;border-top:1px solid var(--garis-terang);font-size:.85rem;color:#7e9a8b}
.kaki-bawah a{color:#cfe0d6}
.bar-hp{display:none}

/* lightbox */
.lb{border:0;padding:0;background:transparent;width:100vw;height:100vh;max-width:100vw;max-height:100vh;overflow:hidden}
.lb::backdrop{background:rgba(5,25,17,.94)}
.lb[open]{display:grid;place-items:center}
.lb figure{margin:0;text-align:center}
.lb img{max-height:84vh;max-width:min(1100px,92vw);width:auto;height:auto;margin:0 auto;border-radius:16px}
.lb figcaption{color:#cfe0d6;margin-top:14px}
.lb-x{position:fixed;top:12px;right:18px;color:#fff;font-size:2.4rem;width:56px;height:56px;line-height:1}
.lb-nav{position:fixed;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:2rem;transition:background .3s}
.lb-nav:hover{background:rgba(255,255,255,.12)}.lb-kiri{left:16px}.lb-kanan{right:16px}

/* layar sedang */
@media (max-width:1100px){
  .menu a{padding:10px 10px;font-size:.93rem}.menu a::after{left:10px;right:10px}
  .layanan-baris{grid-template-columns:repeat(2,1fr);gap:44px 28px}
  .alur-daftar{grid-template-columns:repeat(2,1fr);row-gap:36px}
  .alur-daftar li:nth-child(odd){margin-right:0}
}
/* HP */
@media (max-width:900px){
  :root{--h:64px}
  body{font-size:17px;padding-bottom:calc(68px + env(safe-area-inset-bottom))}
  .bungkus{width:calc(100% - 40px)}
  .menu,.kepala-janji{display:none}.burger{display:block}
  .logo b{font-size:1.12rem}.logo img{width:40px;height:40px}
  .hero{padding:28px 0 56px}
  .hero-grid{grid-template-columns:1fr;gap:44px}
  .hero-visual{width:min(78%,340px)}
  .hero-lencana{left:-10%;bottom:4%;padding:9px 18px 9px 12px}.lencana-angka{font-size:1.9rem}
  .hero h1{max-width:none;font-size:clamp(2.7rem,13vw,3.8rem)}
  .aksi .tombol{flex:1 1 100%}
  .fakta dl{grid-template-columns:1fr 1fr}
  .fakta dl>div{padding:20px 16px;border-left:0;border-top:1px solid var(--garis)}
  .fakta dl>div:nth-child(-n+2){border-top:0}.fakta dl>div:nth-child(even){border-left:1px solid var(--garis)}
  .fakta dl>div:first-child{padding-left:16px}.fakta dd{font-size:1.05rem}
  .seksi,.keluhan,.split{padding:68px 0}.seksi-rapat{padding:36px 0 68px}
  .pengantar-isi,.keluhan-kepala,.ulasan-kepala,.ulasan-halaman,.split-isi,.split.balik .split-isi,.edukasi-isi,.janji-grid,.faq-grid,.kontak-grid,.artikel-isi{grid-template-columns:1fr;gap:32px}
  .split.balik .split-foto{order:0}
  .keluhan-kepala{margin-bottom:36px}
  .layanan-unggulan{padding-top:0}
  .geser-hp{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:-20px;padding:0 20px 12px;gap:18px;scrollbar-width:none}
  .geser-hp::-webkit-scrollbar{display:none}
  .layanan-baris.geser-hp>*{flex:0 0 62%;scroll-snap-align:start}
  .ulasan-baris.geser-hp>*{flex:0 0 84%;scroll-snap-align:start;border-right:0;margin-right:0;padding-right:0}
  .alur-daftar{grid-template-columns:1fr;row-gap:0}
  .alur-daftar li{display:grid;grid-template-columns:48px 1fr;column-gap:8px;padding:22px 0}
  .alur-no{grid-row:span 2;font-size:2rem;margin:0}
  .split-foto{width:min(78%,340px)}
  .ulasan-kolom{columns:1}
  .layanan-kolom{columns:2;column-gap:16px}
  .layanan-item{margin-bottom:36px}.layanan-item h3{font-size:1.2rem}.layanan-item p:not(.jenis){font-size:.92rem}
  .layanan-item.tanpa-foto h3{font-size:1.35rem}
  .artikel-baris{grid-template-columns:1fr;gap:20px}.artikel-baris .artikel-foto{max-width:240px}
  .artikel-gambar{position:static;max-width:340px}
  .galeri{columns:2;column-gap:12px}.galeri-item{margin-bottom:12px}.galeri-item span{opacity:1;font-size:.82rem;padding:32px 12px 12px}
  .form-janji{padding:26px 20px;border-radius:22px}
  .dua{grid-template-columns:1fr}
  .peta iframe{height:340px;border-radius:20px}
  .penutup-isi{padding:60px 0}.penutup-tombol{width:100%}.penutup-tombol .tombol{flex:1 1 100%}
  .visi{padding:68px 0}
  .kaki{padding-top:56px}.kaki-isi{grid-template-columns:1fr;gap:36px}
  .bar-hp{display:grid;grid-template-columns:1.5fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(251,252,250,.97);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--garis);gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
  .bar-hp a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;border-radius:999px;font-weight:600;font-size:.98rem}
  .bar-janji{background:var(--hijau);color:#fff}
  .bar-wa{border:1px solid var(--hijau);color:var(--hijau)}
  .lb-nav{width:44px;height:44px;font-size:1.6rem}.lb-kiri{left:8px}.lb-kanan{right:8px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* ===== penyesuaian ukuran layar ===== */
/* area sentuh link diperluas tanpa mengubah tata letak */
.tautan,.kembali,.kontak-wa{position:relative}
.tautan::before,.kembali::before,.kontak-wa::before{content:"";position:absolute;inset:-12px -6px}
/* laptop kecil: dial tidak kepotong tepi layar */
@media (min-width:901px) and (max-width:1250px){.dial-wadah{width:120%}.hero-grid{gap:3vw}}
/* monitor besar: konten lebih lebar dan huruf sedikit lebih besar */
@media (min-width:1600px){
  body{font-size:19px}
  .bungkus{width:min(1380px,100% - 160px)}
  .hero{padding:72px 0 108px}.hero-visual{width:min(100%,410px)}
  .lead{font-size:1.28rem}.seksi,.keluhan,.split{padding:128px 0}
  .layanan-baris{gap:48px}
}
/* tablet */
@media (min-width:600px) and (max-width:900px){
  .hero-visual{width:min(62%,380px)}
  .layanan-baris.geser-hp>*{flex:0 0 36%}
  .ulasan-baris.geser-hp>*{flex:0 0 48%}
  .split-foto{width:min(58%,380px)}
  .fakta dl{grid-template-columns:repeat(4,1fr)}
  .fakta dl>div,.fakta dl>div:nth-child(even){padding:22px 18px;border-top:0;border-left:1px solid var(--garis)}
  .fakta dl>div:first-child{border-left:0;padding-left:0}
  .aksi .tombol{flex:0 1 auto}
  .penutup-tombol .tombol{flex:0 1 auto}
  .layanan-kolom{columns:2;column-gap:32px}
  .galeri{columns:3}
  .peta iframe{height:400px}
}
/* HP kecil */
@media (max-width:480px){
  .fakta dl{grid-template-columns:1fr}
  .fakta dl>div,.fakta dl>div:nth-child(even){border-left:0;border-top:1px solid var(--garis);padding:16px 0;display:flex;justify-content:space-between;align-items:baseline;gap:18px}
  .fakta dl>div:first-child{border-top:0}
  .fakta dt{flex:none}.fakta dd{margin:0;text-align:right;font-size:1.02rem}
  .hero-lencana{left:-6%}
  .skor{font-size:4.2rem}
}
