:root{
  --padi:#2F6B3A; --gabah:#E9A93A; --ijuk:#3B2A1E; --beras:#F7F5EC; --daun:#A6C97F; --bata:#C8553D;
  --putih:#FFFFFF; --muted:#6E6052; --line:#E4DFCF; --soft:#EEF3E4;
  --display:"Bricolage Grotesque","Bricolage Fallback",ui-rounded,"Segoe UI",system-ui,sans-serif;
  --body:"Plus Jakarta Sans","Jakarta Fallback","Segoe UI",system-ui,sans-serif;
  --gutter:16px; --max:1040px;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--beras);color:var(--ijuk);font-family:var(--body);font-size:16px;line-height:1.6}
img,svg,video{max-width:100%;height:auto}
h1,h2,h3{font-family:var(--display);line-height:1.12;margin:0;text-wrap:balance}
h1{font-size:clamp(30px,6vw,52px);font-weight:800;letter-spacing:-.02em}
h2{font-size:clamp(26px,4vw,38px);font-weight:800;letter-spacing:-.01em}
h3{font-size:20px;font-weight:700}
p{margin:0;max-width:65ch}
a{color:var(--padi);text-underline-offset:3px}
a:hover{color:var(--ijuk)}
:focus-visible{outline:3px solid var(--gabah);outline-offset:2px;box-shadow:0 0 0 2px var(--ijuk)}

.wrap{width:100%;max-width:var(--max);margin:0 auto;padding-inline:max(var(--gutter),env(safe-area-inset-left,0px)) max(var(--gutter),env(safe-area-inset-right,0px))}

.skip-link{position:absolute;left:var(--gutter);top:-100px;background:var(--ijuk);color:var(--beras);padding:12px 16px;border-radius:8px;z-index:100}
.skip-link:focus{top:8px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:12px 24px;border:0;border-radius:999px;background:var(--gabah);color:var(--ijuk);font:700 16px/1.2 var(--body);text-decoration:none;cursor:pointer}
.btn:hover{background:#F0B957;color:var(--ijuk)}
.btn-hijau{background:var(--padi);color:var(--beras)}
.btn-hijau:hover{background:#255A2F;color:var(--beras)}

.site-header{background:var(--beras);border-bottom:1px solid var(--line)}
.bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 16px;padding-block:8px}
.brand{display:inline-flex;align-items:center;min-height:44px}
.brand img{display:block;width:auto;height:40px}
.nav{display:flex;flex-wrap:wrap;gap:0 4px}
.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 10px;color:var(--ijuk);font-weight:600;text-decoration:none;border-radius:8px}
.nav a:hover{color:var(--padi);text-decoration:underline}

.site-footer{background:var(--padi);color:var(--beras);margin-top:64px;padding-block:40px 96px}
.site-footer a{color:var(--beras)}
.site-footer a:hover{color:var(--putih)}
.foot{display:grid;gap:16px}
.foot img{width:auto;height:40px}
.foot address{font-style:normal}
.foot-links{display:flex;flex-direction:column}
.foot-links a,.foot p a{display:inline-flex;align-items:center;min-height:44px}
.copy{font-size:14px}

.wa-float{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));z-index:50;display:inline-flex;align-items:center;gap:8px;min-height:56px;min-width:56px;padding:0 18px;border-radius:999px;background:var(--padi);color:var(--beras);font-weight:700;text-decoration:none;box-shadow:0 4px 14px rgba(59,42,30,.28)}
.wa-float:hover{background:#255A2F;color:var(--beras)}
body.submit-on .wa-float{visibility:hidden}
.wa-label{display:none}

/* Tombol WA 48 px di layar sempit. Teks tetap selebar layar; tombol hanya menutup sebentar saat digulir. */
@media (max-width:480px){
  .wa-float{right:max(8px,env(safe-area-inset-right,0px));width:48px;height:48px;min-width:48px;min-height:48px;padding:0;justify-content:center}
}

/* Bar lengket LP: muncul setelah hero, hilang saat formulir terlihat (partial sticky-bar). */
.sbar{position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--putih);border-top:1px solid var(--line);box-shadow:0 -4px 14px rgba(59,42,30,.12);padding:8px max(var(--gutter),env(safe-area-inset-right,0px)) max(8px,env(safe-area-inset-bottom,0px)) max(var(--gutter),env(safe-area-inset-left,0px))}
.sbar[hidden]{display:none}
.sbar-in{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px}
.sbar-p{display:grid;line-height:1.2;min-width:0}
.sbar-p small{font-size:13px;color:var(--muted)}
.sbar-p b{font:800 22px/1.1 var(--display);color:var(--padi)}
.sbar-p s{font-size:14px;color:var(--muted)}
.sbar-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sbar .btn{flex:none;border-radius:12px;padding-inline:18px;white-space:nowrap}
body.sbar-on .wa-float{bottom:calc(84px + env(safe-area-inset-bottom,0px))}

@media (min-width:640px){
  :root{--gutter:24px}
  .wa-label{display:inline}
  .foot{grid-template-columns:repeat(2,1fr);align-items:start}
  .foot-links{flex-direction:row;gap:16px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
