:root{--font-sans:var(--font-archivo,"Archivo"),"Segoe UI",system-ui,-apple-system,Arial,sans-serif;--font-mono:var(--font-plex-mono,"IBM Plex Mono"),"Cascadia Mono",ui-monospace,"Courier New",monospace;--tl-base:#f4ede0;--tl-ink:#102d50;--tl-accent:#ff6b5b;--tl-soft:#dceaf7;--td-base:#102d50;--td-ink:#f4ede0;--td-accent:#ff6b5b;--td-deep:#0b1220;--tm-base:var(--tl-base);--tm-ink:var(--tl-ink);--tm-accent:var(--tl-accent);--tm-soft:var(--tl-soft);--tm-deep:color-mix(in oklab,var(--tl-ink),#000 28%);--tm-surface:color-mix(in srgb,var(--tm-base) 45%,#fff);--tm-accent-ink:color-mix(in srgb,var(--tm-accent) 68%,#000);--tm-icon:color-mix(in srgb,var(--tm-accent) 88%,#000);--on-primary:var(--tm-base);--on-accent:var(--tm-ink);--band:var(--tm-ink);--paper:var(--tm-base);--paper-2:color-mix(in srgb,var(--tm-ink) 6%,var(--tm-base));--surface:var(--tm-surface);--ink:var(--tm-ink);--ink-soft:color-mix(in srgb,var(--tm-ink) 72%,var(--tm-base));--line:color-mix(in srgb,var(--tm-ink) 14%,var(--tm-base));--line-strong:color-mix(in srgb,var(--tm-ink) 26%,var(--tm-base));--theme-primary:var(--tm-ink);--theme-primary-deep:var(--tm-deep);--theme-accent:var(--tm-accent);--primary:var(--theme-primary);--primary-deep:var(--theme-primary-deep);--primary-tint:color-mix(in srgb,var(--theme-primary) 9%,var(--tm-surface));--primary-soft:color-mix(in srgb,var(--tm-accent) 55%,#fff);--accent:var(--tm-accent-ink);--accent-tint:color-mix(in srgb,var(--tm-accent) 12%,var(--tm-surface));--green:var(--primary);--green-deep:var(--primary-deep);--green-tint:var(--primary-tint);--amber:var(--accent);--amber-tint:var(--accent-tint);--red:#c0392b;--red-tint:#fbe4e1;--star:#f5a623;--ok:#17794a;--ok-tint:#e1f4e9;--warn:#9a5b00;--warn-tint:#fdf0d3;--info:#2f5fb3;--info-tint:#e5edfb;--neu-bg:var(--surface);--neu-bg-strong:var(--surface);--neu-dark:rgba(15,27,45,.07);--neu-light:transparent;--neu-dark-strong:rgba(15,27,45,.1);--neu-light-strong:transparent;--shadow-sm:0 1px 2px rgba(15,27,45,.05);--shadow-md:0 8px 28px rgba(15,27,45,.08);--shadow-lg:0 18px 50px rgba(15,27,45,.12);--maxw:1200px;--gutter:28px;--nav-h:64px;--nav-gap:18px;--nav-round:999px;--leaf:18px 0 18px 0;--leaf-sm:10px 0 10px 0;--ease:cubic-bezier(0.22,1,0.36,1)}[data-theme=dark]{--tm-base:var(--td-base);--tm-ink:var(--td-ink);--tm-accent:var(--td-accent);--tm-soft:var(--td-base);--tm-deep:var(--td-deep);--tm-surface:color-mix(in oklab,var(--td-base),#fff 6%);--tm-accent-ink:var(--td-accent);--tm-icon:var(--td-accent);--on-accent:var(--td-base);--band:color-mix(in oklab,var(--td-base),#fff 4%);--paper-2:color-mix(in oklab,var(--td-base),#fff 10%);--accent-tint:color-mix(in srgb,var(--tm-accent) 18%,var(--tm-surface));--red:#e0705f;--red-tint:#3a1f1c;--ok:#6fd3a0;--ok-tint:#143528;--warn:#f1bf62;--warn-tint:#3a2c10;--info:#9bbcf5;--info-tint:#1c2b49;--neu-bg:var(--surface);--neu-bg-strong:var(--surface);--neu-dark:rgba(0,0,0,.35);--neu-light:transparent;--neu-dark-strong:rgba(0,0,0,.45);--neu-light-strong:transparent;--shadow-sm:0 1px 2px rgba(0,0,0,.3);--shadow-md:0 8px 28px rgba(0,0,0,.35);--shadow-lg:0 18px 50px rgba(0,0,0,.45);color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 32px);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background:var(--paper);color:var(--ink);line-height:1.55;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;transition:background .35s var(--ease),color .35s var(--ease)}::selection{background:var(--green);color:var(--on-primary)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--gutter)}h1,h2,h3,h4{font-weight:600;line-height:1.08;letter-spacing:-.025em;color:var(--ink)}.display{font-size:clamp(2.6rem,6.5vw,5rem);font-weight:650;letter-spacing:-.035em;line-height:1.02}.h2{font-size:clamp(1.8rem,3.6vw,2.8rem);letter-spacing:-.03em}.h3{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:600;letter-spacing:-.015em}.lead{font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.65;max-width:56ch;font-weight:400}.lead,p{color:var(--ink-soft)}.label{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.label-green{color:var(--green)}.label-amber{color:var(--amber)}.index{letter-spacing:.1em;color:var(--amber)}.index,.link{font-family:var(--font-mono);font-size:.78rem;font-weight:500}.link{display:inline-flex;align-items:center;gap:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);padding-bottom:4px;border-bottom:1px solid var(--ink);transition:gap .25s var(--ease),color .2s var(--ease),border-color .2s var(--ease)}.link:hover{gap:14px;color:var(--green);border-color:var(--green)}.link svg{width:15px;height:15px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;font-family:var(--font-mono);font-size:.78rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:15px 26px;border:1px solid var(--ink);cursor:pointer;background:transparent;color:var(--ink);transition:background .25s var(--ease),color .25s var(--ease),border-color .25s var(--ease)}.btn:disabled{opacity:.55}.btn svg{width:15px;height:15px;transition:transform .25s var(--ease)}.btn:hover:not(:disabled) svg{transform:translateX(4px)}.btn-solid{background:var(--ink);color:var(--paper)}.btn-solid:hover:not(:disabled){background:var(--green);border-color:var(--green);color:var(--on-primary)}.btn-line:hover:not(:disabled){background:var(--ink);color:var(--paper)}.btn-amber{background:var(--amber);border-color:var(--amber);color:var(--on-accent)}.btn-amber:hover:not(:disabled){background:var(--paper);color:var(--ink);border-color:var(--paper)}.form-error{border:1px solid var(--red);background:var(--red-tint)}.form-error,.form-success{margin:10px 0;padding:11px 14px;color:var(--ink);font-size:.86rem}.form-success{display:flex;align-items:center;gap:8px;border:1px solid var(--green);background:var(--green-tint)}.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s var(--ease),transform .5s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.page-enter{animation:page-enter .22s var(--ease)}@keyframes page-enter{0%{opacity:0}to{opacity:1}}.nav-progress{position:fixed;top:0;left:0;right:0;z-index:2000;height:3px;pointer-events:none;opacity:0;transition:opacity .25s var(--ease)}.nav-progress span{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left center}.nav-progress.is-loading{opacity:1}.nav-progress.is-loading span{animation:nav-progress 9s cubic-bezier(.1,.7,.2,1) forwards}.nav-progress.is-done span{transform:scaleX(1);transition:transform .18s var(--ease)}@keyframes nav-progress{0%{transform:scaleX(0)}12%{transform:scaleX(.4)}45%{transform:scaleX(.72)}to{transform:scaleX(.94)}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}.page-enter{animation:none}.nav-progress.is-loading span{animation:none;transform:scaleX(.6)}html{scroll-behavior:auto}.marquee-track{animation:none!important}}.section{padding:clamp(72px,10vw,140px) 0}.section-tight{padding:clamp(48px,7vw,90px) 0}.rule{height:1px;background:var(--line);border:0}.center{text-align:center}.mx-auto{margin-left:auto;margin-right:auto}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);border:0;white-space:nowrap}.btn-full{width:100%;justify-content:center}.spin{display:inline-flex;align-items:center;gap:10px;color:var(--ink-soft);font-size:.9rem}.spin-block{flex-direction:column;justify-content:center;gap:12px;padding:8px 0}.spin-label{line-height:1.4}.spin-ring{flex:none;animation:spin-rotate 1.4s linear infinite}.spin-track{stroke:color-mix(in srgb,var(--primary) 14%,transparent)}.spin-arc{stroke-dasharray:120;stroke-dashoffset:90;transform-origin:50% 50%;animation:spin-dash 1.6s var(--ease) infinite}@keyframes spin-rotate{to{transform:rotate(1turn)}}@keyframes spin-dash{0%{stroke-dashoffset:105;transform:rotate(0deg)}50%{stroke-dashoffset:40;transform:rotate(120deg)}to{stroke-dashoffset:105;transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spin-ring{animation-duration:3s}.spin-arc{animation:none;stroke-dashoffset:70}}.leaflet-container img.leaflet-tile{width:256.5px!important;height:256.5px!important;mix-blend-mode:normal!important}.media-embed{position:relative;display:block;overflow:hidden}.media-embed iframe{display:block;border:0}.media-embed.is-bg{position:absolute;inset:0;container-type:size;pointer-events:none}.media-embed.is-bg iframe{position:absolute;top:50%;left:50%;width:max(100cqw,calc(100cqh * 16 / 9));height:max(100cqh,calc(100cqw * 9 / 16));transform:translate(-50%,-50%)}.media-embed.is-inline{width:100%;aspect-ratio:16/9;background:#000}.media-embed.is-inline iframe{width:100%;height:100%}.btn-sm{padding:11px 18px;font-size:.72rem}.btn-block{width:100%;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.form{gap:20px}.form,.form label{display:flex;flex-direction:column}.form label{gap:8px}.form .label{color:var(--ink)}.form input,.form textarea{padding:13px 0;border:0;border-bottom:1px solid var(--line-strong);background:transparent;color:var(--ink);resize:vertical;font-family:var(--font-sans);font-size:.98rem;transition:border-color .2s var(--ease)}.form input::placeholder,.form textarea::placeholder{color:color-mix(in srgb,var(--ink-soft) 65%,transparent)}.form input:focus,.form textarea:focus{outline:none;border-color:var(--green)}.form .btn{align-self:flex-start;margin-top:8px}.form-note{color:var(--ink-soft);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em}.form-error{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid rgba(178,60,50,.3);border-radius:0;background:rgba(178,60,50,.1);color:#b23c32;font-size:.9rem}[data-theme=dark] .form-error{color:#e8897f}.input-wrap{position:relative;display:block}.input-wrap input{width:100%;padding-right:96px}.input-reveal{position:absolute;top:50%;right:12px;border:0;background:none;color:var(--green);cursor:pointer;transform:translateY(-50%);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;text-transform:uppercase}.input-reveal:hover{text-decoration:underline}.auth-role-switch{display:grid;grid-template-columns:1fr 1fr;grid-gap:4px;gap:4px;margin-bottom:24px;padding:4px;border:1px solid var(--line);border-radius:0;background:var(--paper-2)}.auth-role-switch a{padding:10px 12px;border-radius:0;color:var(--ink-soft);font-family:var(--font-mono);font-size:.7rem;text-align:center}.auth-role-switch a.is-active{background:var(--surface);color:var(--green);box-shadow:2px 2px 6px var(--neu-dark),-2px -2px 6px var(--neu-light)}.auth-demo{margin-top:4px;padding:14px 16px;border:1px dashed var(--line-strong);border-radius:0;background:var(--surface)}.auth-demo .field-label,.auth-demo .label{display:block;margin-bottom:8px}.auth-demo ul{list-style:none;display:flex;flex-direction:column;gap:6px}.auth-demo li{color:var(--ink-soft);font-size:.82rem}.auth-demo code{padding:2px 6px;border-radius:0;background:var(--paper-2);color:var(--ink);font-family:var(--font-mono);font-size:.78rem}:where(svg[viewBox="0 0 24 24"][stroke=currentColor]){color:var(--tm-icon)}:where(button,.btn,[class*=btn],[class*=Btn],[class*=button],[class*=Button],[class*=FloatingContacts],[class*=badge],[class*=Badge],[class*=chip],[class*=pill],.hgrid-watch,.cta-btn) :where(svg[viewBox="0 0 24 24"][stroke=currentColor]){color:inherit}html .site-v2 .label{color:var(--tm-accent-ink)}html .site-v2 .btn-solid,html .site-v2 .cta-btn,html .site-v2 .hgrid-actions .btn-solid{background:var(--tm-accent);border-color:var(--tm-accent);color:var(--on-accent)}html .site-v2 .btn-solid:hover:not(:disabled),html .site-v2 .cta-btn:hover:not(:disabled),html .site-v2 .hgrid-actions .btn-solid:hover{background:var(--tm-ink);border-color:var(--tm-ink);color:var(--tm-base)}html .site-v2 .link{color:var(--hv-heading);-webkit-text-decoration-color:var(--tm-accent);text-decoration-color:var(--tm-accent)}html .site-v2 .sec-bg-light{background:var(--hv-photo-bg)}html .home-v2 [data-section-key=fasilitas],html .home-v2 [data-section-key=manufaktur]{--hv-line:color-mix(in srgb,var(--hv-band-text) 16%,transparent)}html .home-v2 [data-section-key=manufaktur] .label,html .site-v2 .cta-label,html .site-v2 .sec-bg-dark .label{color:var(--tm-accent)}html .site-v2 .cta-title{color:var(--hv-band-text)}html .site-v2 .cta-body{color:color-mix(in srgb,var(--hv-band-text) 80%,transparent)}html .site-v2 .cta-btn-ghost{color:var(--hv-band-text);border-color:color-mix(in srgb,var(--hv-band-text) 45%,transparent)}html .site-v2 .hgrid-card{background:linear-gradient(135deg,color-mix(in srgb,var(--tl-base) 45%,#fff) 0,var(--tl-base) 75%);color:var(--tl-ink)}html .site-v2 .hgrid-card-title{color:var(--tl-ink)!important}html .site-v2 .hgrid-card-note{color:color-mix(in srgb,var(--tl-ink) 75%,var(--tl-base))}html .site-v2 .hgrid-card-note i{background:var(--tl-accent)}html .site-v2 .hgrid-play{color:var(--tl-ink)}html .site-v2 .hgrid-play span{background:var(--tl-ink);color:var(--tl-base)}html .site-v2 .hgrid-play:hover span{background:var(--tl-accent);color:var(--tl-ink)}html .site-v2 .hgrid-link:focus-visible,html .site-v2 .hgrid-link:hover{background:color-mix(in srgb,var(--tl-ink) 70%,transparent);border-color:color-mix(in srgb,var(--tm-accent) 80%,transparent)}html .site-v2 .hgrid-map-pin span{background:var(--tm-accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--tm-accent) 35%,transparent),0 2px 8px rgba(0,0,0,.45)}html .site-v2 .hgrid-map-pin.is-active span{background:#fff;border-color:var(--tm-accent)}html .site-v2 .hgrid-map-pin.is-active span:after{border-color:var(--tm-accent)}html .site-v2 .hgrid-fac-list button i{background:var(--tm-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--tm-accent) 30%,transparent)}html .site-v2 .hgrid-fac-list button.is-active{color:var(--tm-accent)}html :is(.admin-app,.admin-modal-backdrop){--adm-ring:0 0 0 3px color-mix(in srgb,var(--tm-accent) 35%,transparent)}html[data-theme=dark] .admin-app{--paper:var(--td-deep);--adm-field:var(--td-deep)}html[data-theme=dark] .admin-app [class*=AdminShell_sidebar],html[data-theme=dark] .admin-app [class*=AdminShell_topbar]{--surface:color-mix(in oklab,var(--td-deep),var(--td-base) 45%)}html .admin-app [class*=AdminShell_sidebar]{--primary:var(--tm-accent-ink);--green:var(--tm-accent-ink);--green-tint:color-mix(in srgb,var(--tm-accent) 12%,var(--surface));--adm-primary:var(--tm-accent);--adm-tint:color-mix(in srgb,var(--tm-accent) 12%,var(--surface))}html .admin-app [class*=AdminShell_main]{background:radial-gradient(900px 420px at 16% -10%,color-mix(in srgb,var(--tm-accent) 6%,transparent),transparent 62%),var(--paper)}html[data-theme=dark] .cust-app{--paper:var(--td-base)}html[data-theme=dark] :is(.admin-app,.admin-modal-backdrop) .btn-solid{border-color:var(--tm-accent);background:var(--tm-accent);color:var(--on-accent);box-shadow:0 6px 16px -10px color-mix(in srgb,var(--tm-accent) 70%,transparent)}html[data-theme=dark] :is(.admin-app,.admin-modal-backdrop) .btn-solid:hover:not(:disabled){border-color:var(--tm-accent);background:color-mix(in srgb,var(--tm-accent) 88%,#fff);color:var(--on-accent)}