/* Halaman vila & panduan — memakai token style.css (--paper, --ink, --rust, --line, --gold) */
.inner-page main{padding-bottom:40px}
.page-hero{position:relative;height:clamp(380px,62vh,600px);margin:0 24px;overflow:hidden;border-radius:0 0 28px 28px;color:#fff}
.page-hero.short{height:clamp(320px,48vh,460px)}
.page-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.page-hero-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(13,29,23,.78),rgba(13,29,23,.15) 60%,rgba(13,29,23,.25))}
.page-hero-copy{position:absolute;left:0;right:0;bottom:0;padding:0 max(24px,calc((100% - 1120px)/2)) 46px}
.page-hero h1{font-size:clamp(36px,5.2vw,72px);line-height:1.05;letter-spacing:-2px;margin:14px 0 10px;max-width:900px}
.page-hero.short h1{font-size:clamp(30px,4vw,54px);letter-spacing:-1.2px}
.page-hero .eyebrow{color:#f3e2c8}
.byline{font-size:12px;color:#e9e6dc;margin:0}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:0;font-size:11px;letter-spacing:.4px;color:#dcd9cf}
.crumbs li+li:before{content:'/';margin-right:6px;opacity:.6}
.crumbs a{text-decoration:underline;text-underline-offset:3px}
.page-wrap{max-width:1120px;margin:0 auto;padding:46px 24px 20px}
.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:56px;align-items:start}
.prose{font-size:16px;line-height:1.8;color:#30443b}
.prose .lead,.page-wrap>.lead{font-size:19px;line-height:1.7;color:var(--ink);margin-top:0}
.prose h2{font-size:clamp(25px,2.4vw,32px);letter-spacing:-.6px;line-height:1.25;margin:48px 0 14px;color:var(--ink);scroll-margin-top:100px}
.prose p{line-height:1.8;margin:0 0 16px}
.prose a{color:var(--rust);text-decoration:underline;text-underline-offset:3px}
.prose ul,.prose ol{padding-left:22px;margin:0 0 18px}
.prose li{margin:6px 0}
.prose table{width:100%;border-collapse:collapse;margin:8px 0 22px;font-size:14px;display:block;overflow-x:auto}
.prose th,.prose td{text-align:left;padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}
.prose th{background:#eceadf;font-size:12px;letter-spacing:.3px;color:var(--ink)}
.answer{background:#fffdf8;border:1px solid var(--line);border-left:4px solid var(--gold,#b9853a);border-radius:14px;padding:20px 22px;margin:0 0 26px}
.answer p{margin:0 0 8px}.answer p:last-child{margin:0}
.answer .note{font-size:13px;color:#6b766d}
.toc{background:#eeeee5;border-radius:14px;padding:18px 22px;margin:0 0 10px;font-size:14px}
.toc ol{margin:8px 0 0;padding-left:20px}.toc a{color:var(--ink)}
.faq-list details{border-bottom:1px solid var(--line);padding:16px 0}
.faq-list summary{cursor:pointer;font-weight:600;color:var(--ink);list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq-list summary:after{content:'+';font-weight:400;font-size:20px;line-height:1}
.faq-list details[open] summary:after{content:'−'}
.faq-list p{margin:10px 0 0;font-size:15px}
.pg{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.pg a{display:block;aspect-ratio:3/2;overflow:hidden;border-radius:12px;background:#ddd}
.pg img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.pg a:hover img{transform:scale(1.05)}
.related{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}
.rel{display:block;background:#fffdf8;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none!important;color:var(--ink)!important;transition:transform .25s}
.rel:hover{transform:translateY(-3px)}
.rel img{aspect-ratio:3/2;width:100%;height:auto;object-fit:cover}
.rel span{display:block;padding:12px 14px;line-height:1.4}.rel b{display:block;font-size:15px}.rel small{color:#6b766d;font-size:12px}
.side{position:sticky;top:24px}
.side-card{background:#fffdf8;border:1px solid var(--line);border-radius:18px;padding:22px;display:grid;gap:14px}
.side-card h2{font-size:22px;margin:0;letter-spacing:-.4px}
.side-card p{font-size:14px;line-height:1.6;margin:0;color:#4b5a51}
.side-img{border-radius:12px;aspect-ratio:3/2;height:auto}
.facts{margin:0;display:grid;gap:0;border-top:1px solid var(--line)}
.facts div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}
.facts dt{color:#6b766d}.facts dd{margin:0;color:var(--ink);font-weight:600}
.rate-mini{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.rate-mini li{display:flex;gap:8px;align-items:baseline;font-size:13px}.rate-mini b{font-size:15px}
.wa-cta{width:100%;text-decoration:none;text-align:center}
.side-alt{font-size:12px!important}.side-alt a{color:var(--rust)}
.villa-status-note{background:#f5ead6;color:#8a5a12;padding:10px 14px;border-radius:10px;font-weight:600}
.guides-grid{margin-top:26px}
.other-lang{margin-top:30px}
.inner-page .whatsapp-float{text-decoration:none}
@media(max-width:960px){.page-grid{grid-template-columns:1fr;gap:34px}.side{position:static}}
@media(max-width:720px){.page-hero{margin:0 8px;border-radius:0 0 22px 22px}.page-hero-copy{padding:0 18px 30px}.page-wrap{padding:30px 16px 10px}.prose{font-size:15.5px}.prose .lead{font-size:17px}.pg{grid-template-columns:1fr 1fr}.facts div{grid-template-columns:96px 1fr}}
