var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;li[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,o)=>(o=n==null?{}:e(i(n)),s(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var l=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0>>1,a=e[r];if(0>>1;ri(c,n))li(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(li(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function ee(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,te||(te=!0,ae());else{var t=n(l);t!==null&&ce(ee,t.startTime-e)}}}var te=!1,ne=-1,re=5,x=-1;function ie(){return g?!0:!(e.unstable_now()-xt&&ie());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&ce(ee,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?ae():te=!1}}}var ae;if(typeof y==`function`)ae=function(){y(S)};else if(typeof MessageChannel<`u`){var oe=new MessageChannel,se=oe.port2;oe.port1.onmessage=S,ae=function(){se.postMessage(null)}}else ae=function(){_(S,0)};function ce(t,n){ne=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(ne),ne=-1):h=!0,ce(ee,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,te||(te=!0,ae()))),r},e.unstable_shouldYield=ie,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),u=o(((e,t)=>{t.exports=l()})),d=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.for(`react.view_transition`),m=Symbol.iterator;function h(e){return typeof e!=`object`||!e?null:(e=m&&e[m]||e[`@@iterator`],typeof e==`function`?e:null)}var g={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},_=Object.assign,v={};function y(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}y.prototype.isReactComponent={},y.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},y.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function b(){}b.prototype=y.prototype;function ee(e,t,n){this.props=e,this.context=t,this.refs=v,this.updater=n||g}var te=ee.prototype=new b;te.constructor=ee,_(te,y.prototype),te.isPureReactComponent=!0;var ne=Array.isArray;function re(){}var x={H:null,A:null,T:null,S:null},ie=Object.prototype.hasOwnProperty;function S(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function ae(e,t){return S(e.type,t,e.props)}function oe(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function se(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ce=/\/+/g;function le(e,t){return typeof e==`object`&&e&&e.key!=null?se(``+e.key):t.toString(36)}function ue(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(re,re):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function de(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,de(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+le(e,0):a,ne(o)?(i=``,c!=null&&(i=c.replace(ce,`$&/`)+`/`),de(o,r,i,``,function(e){return e})):o!=null&&(oe(o)&&(o=ae(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(ce,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(ne(e))for(var u=0;u{t.exports=d()})),p=o((e=>{var t=f();function n(e){var t=`https://react.dev/errors/`+e;if(1{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=p()})),h=o((e=>{var t=u(),n=f(),r=m();function i(e){var t=`https://react.dev/errors/`+e;if(1Ae||(e.current=ke[Ae],ke[Ae]=null,Ae--)}function T(e,t){Ae++,ke[Ae]=e.current,e.current=t}var Ne=je(null),Pe=je(null),Fe=je(null),Ie=je(null);function Le(e,t){switch(T(Fe,t),T(Pe,e),T(Ne,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?up(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=up(t),e=dp(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}Me(Ne),T(Ne,e)}function Re(){Me(Ne),Me(Pe),Me(Fe)}function ze(e){var t=e.memoizedState;t!==null&&(sh._currentValue=t.memoizedState,T(Ie,e)),t=Ne.current;var n=dp(t,e.type);t!==n&&(T(Pe,e),T(Ne,n))}function Be(e){Pe.current===e&&(Me(Ne),Me(Pe)),Ie.current===e&&(Me(Ie),sh._currentValue=Oe)}var Ve,He;function Ue(e){if(Ve===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Ve=t&&t[1]||``,He=-1)`:-1i||c[r]!==l[i]){var u=` `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(``)&&(u=u.replace(``,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{E=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Ue(n):``}function Ge(e,t){switch(e.tag){case 26:case 27:case 5:return Ue(e.type);case 16:return Ue(`Lazy`);case 13:return e.child!==t&&t!==null?Ue(`Suspense Fallback`):Ue(`Suspense`);case 19:return Ue(`SuspenseList`);case 0:case 15:return We(e.type,!1);case 11:return We(e.type.render,!1);case 1:return We(e.type,!0);case 31:return Ue(`Activity`);case 30:return Ue(`ViewTransition`);default:return``}}function Ke(e){try{var t=``,n=null;do t+=Ge(e,n),n=e,e=e.return;while(e);return t}catch(e){return` Error generating stack: `+e.message+` `+e.stack}}var qe=Object.prototype.hasOwnProperty,Je=t.unstable_scheduleCallback,Ye=t.unstable_cancelCallback,Xe=t.unstable_shouldYield,Ze=t.unstable_requestPaint,Qe=t.unstable_now,$e=t.unstable_getCurrentPriorityLevel,et=t.unstable_ImmediatePriority,tt=t.unstable_UserBlockingPriority,nt=t.unstable_NormalPriority,rt=t.unstable_LowPriority,it=t.unstable_IdlePriority,at=t.log,ot=t.unstable_setDisableYieldValue,st=null,ct=null;function lt(e){if(typeof at==`function`&&ot(e),ct&&typeof ct.setStrictMode==`function`)try{ct.setStrictMode(st,e)}catch{}}var ut=Math.clz32?Math.clz32:pt,dt=Math.log,ft=Math.LN2;function pt(e){return e>>>=0,e===0?32:31-(dt(e)/ft|0)|0}var mt=256,ht=262144,gt=4194304;function _t(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&-e;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function vt(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=_t(n))):i=_t(o):i=_t(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=_t(n))):i=_t(o)):i=_t(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function yt(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function bt(e,t){t&8&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0n;n++)t.push(e);return t}function wt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Tt(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0=Cr),Er=` `,Dr=!1;function Or(e,t){switch(e){case`keyup`:return xr.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function kr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Ar=!1;function jr(e,t){switch(e){case`compositionend`:return kr(t);case`keypress`:return t.which===32?(Dr=!0,Er):null;case`textInput`:return e=t.data,e===Er&&Dr?null:e;default:return null}}function Mr(e,t){if(Ar)return e===`compositionend`||!Sr&&Or(e,t)?(e=Wn(),Un=Hn=Vn=null,Ar=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=ti(n)}}function ri(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?ri(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function ii(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ei(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=ei(e.document)}return t}function ai(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var oi=Rn&&`documentMode`in document&&11>=document.documentMode,si=null,ci=null,li=null,ui=!1;function di(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;ui||si==null||si!==ei(r)||(r=si,`selectionStart`in r&&ai(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),li&&$r(li,r)||(li=r,r=Jf(ci,`onSelect`),0>=o,i-=o,sa=1<<32-ut(t)+i|n<h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),j&&la(i,h),l;if(d===null){for(;hg?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),j&&la(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return j&&la(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&(_=v.alternate,_!==null&&h.delete(_.key===null?g:_.key)),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),j&&la(a,g),u}function _(e,r,o,c){if(typeof o==`object`&&o&&o.type===ce&&o.key===null&&o.props.ref===void 0&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case oe:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===ce){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),_o(c,o),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===_e&&lo(l)===r.type){n(e,r.sibling),c=a(r,o.props),_o(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===ce?(c=Ji(o.props.children,e.mode,c,o.key),_o(c,o),c.return=e,e=c):(c=qi(o.type,o.key,o.props,null,e.mode,c),_o(c,o),c.return=e,e=c)}return s(e);case se:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=Zi(o,e.mode,c),c.return=e,e=c}return s(e);case _e:return o=lo(o),_(e,r,o,c)}if(De(o))return h(e,r,o,c);if(we(o)){if(l=we(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return _(e,r,go(o),c);if(o.$$typeof===fe)return _(e,r,Fa(e,o),c);vo(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=Yi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{ho=0;var i=_(e,t,n,r);return mo=null,i}catch(t){if(t===ro||t===ao)throw t;var a=Ui(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var bo=yo(!0),xo=yo(!1),So=!1;function Co(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function wo(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function To(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Eo(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,W&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=Bi(e),zi(e,null,n),t}return Ii(e,r,t,n),Bi(e)}function Do(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Dt(e,n)}}function Oo(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var ko=!1;function Ao(){if(ko){var e=Ja;if(e!==null)throw e}}function jo(e,t,n,r){ko=!1;var i=e.updateQueue;So=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(q&f)===f:(r&f)===f){f!==0&&f===qa&&(ko=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,h=s;f=t;var g=n;switch(h.tag){case 1:if(m=h.payload,typeof m==`function`){d=m.call(g,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=h.payload,f=typeof m==`function`?m.call(g,d,f):m,f==null)break a;d=S({},d,f);break a;case 2:So=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),sd|=o,e.lanes=o,e.memoizedState=d}}function Mo(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function No(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;ea?a:8;var o=C.T,s={};s.types=o===null?null:o.types,C.T=s,gc(e,!1,t,n);try{var c=i(),l=C.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?hc(e,t,Za(c,r),jd(e)):hc(e,t,r,jd(e))}catch(n){hc(e,t,{then:function(){},status:`rejected`,reason:n},jd())}finally{w.p=a,o!==null&&s.types!==null&&(o.types=s.types),C.T=o}}function ac(){}function oc(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=sc(e).queue;ic(e,a,t,Oe,n===null?ac:function(){return cc(e),n(r)})}function sc(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:Oe,baseState:Oe,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:Oe},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:_s,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function cc(e){var t=sc(e);t.next===null&&(t=e.alternate.memoizedState),hc(e,t.next.queue,{},jd())}function lc(){return Pa(sh)}function uc(){return L().memoizedState}function dc(){return L().memoizedState}function fc(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=jd();e=To(n);var r=Eo(t,e,n);r!==null&&(Pd(r,t,n),Do(r,t,n)),t={cache:Ba()},e.payload=t;return}t=t.return}}function pc(e,t,n){var r=jd();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},_c(e)?vc(t,n):(n=Li(e,t,n,r),n!==null&&(Pd(n,e,r),yc(n,t,r)))}function mc(e,t,n){hc(e,t,n,jd())}function hc(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(_c(e))vc(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Qr(s,o))return Ii(e,t,i,0),G===null&&Fi(),!1}catch{}if(n=Li(e,t,i,r),n!==null)return Pd(n,e,r),yc(n,t,r),!0}return!1}function gc(e,t,n,r){if(r={lane:2,revertLane:Pf(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},_c(e)){if(t)throw Error(i(479))}else t=Li(e,n,r,2),t!==null&&Pd(t,e,2)}function _c(e){var t=e.alternate;return e===N||t!==null&&t===N}function vc(e,t){Qo=Zo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function yc(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Dt(e,n)}}var bc={readContext:Pa,use:hs,useCallback:I,useContext:I,useEffect:I,useImperativeHandle:I,useLayoutEffect:I,useInsertionEffect:I,useMemo:I,useReducer:I,useRef:I,useState:I,useDebugValue:I,useDeferredValue:I,useTransition:I,useSyncExternalStore:I,useId:I,useHostTransitionStatus:I,useFormState:I,useActionState:I,useOptimistic:I,useMemoCache:I,useCacheRefresh:I,useEffectEvent:I},xc={readContext:Pa,use:hs,useCallback:function(e,t){return fs().memoizedState=[e,t===void 0?null:t],e},useContext:Pa,useEffect:Gs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),Us(4194308,4,Zs.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Us(4194308,4,e,t)},useInsertionEffect:function(e,t){Us(4,2,e,t)},useMemo:function(e,t){var n=fs();t=t===void 0?null:t;var r=e();if($o){lt(!0);try{e()}finally{lt(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=fs();if(n!==void 0){var i=n(t);if($o){lt(!0);try{n(t)}finally{lt(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=pc.bind(null,N,e),[r.memoizedState,e]},useRef:function(e){var t=fs();return e={current:e},t.memoizedState=e},useState:function(e){e=Ds(e);var t=e.queue,n=mc.bind(null,N,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:$s,useDeferredValue:function(e,t){return nc(fs(),e,t)},useTransition:function(){var e=Ds(!1);return e=ic.bind(null,N,e.queue,!0,!1),fs().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=N,a=fs();if(j){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),G===null)throw Error(i(349));q&127||Ss(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,Gs(ws.bind(null,r,o,e),[e]),r.flags|=2048,Vs(9,{destroy:void 0},Cs.bind(null,r,o,n,t),null),n},useId:function(){var e=fs(),t=G.identifierPrefix;if(j){var n=ca,r=sa;n=(r&~(1<<32-ut(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=es++,0<\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[Pt]=t,o[Ft]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(np(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&_l(t)}}return B(t),t.subtreeFlags&=-33554433,vl(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&_l(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=Fe.current,ba(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=k,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[Pt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||ep(e.nodeValue,n)),e||_a(t,!0)}else e=lp(e).createTextNode(r),e[Pt]=t,t.stateNode=e}return B(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=ba(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[Pt]=t}else xa(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;B(t),e=!1}else n=Sa(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Go(t),t):(Go(t),null);if(t.flags&128)throw Error(i(558))}return B(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=ba(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[Pt]=t}else xa(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;B(t),a=!1}else a=Sa(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Go(t),t):(Go(t),null)}return Go(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),bl(t,t.updateQueue),B(t),null);case 4:return Re(),e===null&&Wf(t.stateNode.containerInfo),t.flags|=67108864,B(t),null;case 10:return Oa(t.type),B(t),null;case 19:if(Jo(t),r=t.memoizedState,r===null)return B(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)xl(r,!1);else{if(Y!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Yo(e),o!==null){for(t.flags|=128,xl(r,!1),e=o.updateQueue,t.updateQueue=e,bl(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)Ki(n,e),n=n.sibling;return qo(t,Ko.current&1|2),j&&la(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Qe()>_d&&(t.flags|=128,a=!0,xl(r,!1),t.lanes=4194304)}}else{if(!a){if(e=Yo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,bl(t,e),xl(r,!0),r.tail===null&&r.tailMode!==`collapsed`&&r.tailMode!==`visible`&&!o.alternate&&!j)return B(t),null}else 2*Qe()-r.renderingStartTime>_d&&n!==536870912&&(t.flags|=128,a=!0,xl(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}if(r.tail!==null){e=r.tail;a:{for(n=e;n!==null;){if(n.alternate!==null){n=!1;break a}n=n.sibling}n=!0}return r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Qe(),e.sibling=null,o=Ko.current,o=a?o&1|2:o&1,r.tailMode===`visible`||r.tailMode===`collapsed`||!n||j?qo(t,o):(n=o,T(zo,t),T(Ko,n),Bo===null&&(Bo=t)),j&&la(t,r.treeForkCount),e}return B(t),null;case 22:case 23:return Go(t),Ro(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(B(t),t.subtreeFlags&6&&(t.flags|=8192)):B(t),n=t.updateQueue,n!==null&&bl(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&Me($a),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Oa(M),B(t),null;case 25:return null;case 30:return t.flags|=33554432,B(t),null}throw Error(i(156,t.tag))}function Cl(e,t){switch(fa(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Oa(M),Re(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Be(t),null;case 31:if(t.memoizedState!==null){if(Go(t),t.alternate===null)throw Error(i(340));xa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Go(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));xa()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Jo(t),e=t.flags,e&65536?(t.flags=e&-65537|128,e=t.memoizedState,e!==null&&(e.rendering=null,e.tail=null),t.flags|=4,t):null;case 4:return Re(),null;case 10:return Oa(t.type),null;case 22:case 23:return Go(t),Ro(),e!==null&&Me($a),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Oa(M),null;case 25:return null;default:return null}}function wl(e,t){switch(fa(t),t.tag){case 3:Oa(M),Re();break;case 26:case 27:case 5:Be(t);break;case 4:Re();break;case 31:t.memoizedState!==null&&Go(t);break;case 13:Go(t);break;case 19:Jo(t);break;case 10:Oa(t.type);break;case 22:case 23:Go(t),Ro(),e!==null&&Me($a);break;case 24:Oa(M)}}function Tl(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function El(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Dl(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{No(t,n)}catch(t){Z(e,e.return,t)}}}function Ol(e,t,n){n.props=Oc(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function kl(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:var i=e.stateNode,a=Oi(e.memoizedProps,i);(i.ref===null||i.ref.name!==a)&&(i.ref=Pp(a)),r=i.ref;break;case 7:if(e.stateNode===null){var o=new Fp(e);h(e.child,!1,Qp,o,void 0,void 0),e.stateNode=o}r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function Al(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}}function jl(e,t){if((e.tag===5||e.tag===27||e.tag===6)&&e.alternate===null&&t!==null)for(var n=0;n title`))),np(r,t,n),r[Pt]=e,D(r),t=r;break a;case`link`:if(o=Gm(`link`,`href`,a).get(t+(n.href||``))){for(s=0;sg&&(o=g,g=h,h=o);var _=ni(s,h),v=ni(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;sn?32:n,C.T=null,n=wd,wd=null;var o=bd,s=Sd;if(X=0,xd=bd=null,Sd=0,W&6)throw Error(i(331));var c=W;if(W|=4,Zu(o.current),Uu(o,o.current,s,n),W=c,Df(0,!1),ct&&typeof ct.onPostCommitFiberRoot==`function`)try{ct.onPostCommitFiberRoot(st,o)}catch{}return!0}finally{w.p=a,C.T=r,uf(e,t)}}function pf(e,t,n){t=$i(n,t),t=Pc(e.stateNode,t,2),e=Eo(e,t,2),e!==null&&(wt(e,2),Ef(e))}function Z(e,t,n){if(e.tag===3)pf(e,e,n);else for(;t!==null;){if(t.tag===3){pf(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(yd===null||!yd.has(r))){e=$i(n,e),n=Fc(2),r=Eo(t,n,2),r!==null&&(Ic(n,r,t,e),wt(r,2),Ef(r));break}}t=t.return}}function mf(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new td;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(ad=!0,i.add(n),e=hf.bind(null,e,t,n),t.then(e,e))}function hf(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,G===e&&(q&n)===n&&(Y===4||Y===3&&(q&62914560)===q&&300>Qe()-hd?W&2?ld|=n:Vd(e,0):ld|=n,dd===q&&(dd=0)),Ef(e)}function gf(e,t){t===0&&(t=St()),e=Ri(e,t),e!==null&&(wt(e,t),Ef(e))}function _f(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),gf(e,n)}function vf(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),gf(e,n)}function yf(e,t){return Je(e,t)}var bf=null,xf=null,Sf=!1,Cf=!1,wf=!1,Tf=0;function Ef(e){e!==xf&&e.next===null&&(xf===null?bf=xf=e:xf=xf.next=e),Cf=!0,Sf||(Sf=!0,Nf())}function Df(e,t){if(!wf&&Cf){wf=!0;do for(var n=!1,r=bf;r!==null;){if(!t){if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-ut(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Mf(r,a))}else a=q,a=vt(r,r===G?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||yt(r,a)||(n=!0,Mf(r,a))}r=r.next}while(n);wf=!1}}function Of(){kf()}function kf(){Cf=Sf=!1;var e=0;Tf!==0&&hp()&&(e=Tf);for(var t=Qe(),n=null,r=bf;r!==null;){var i=r.next,a=Af(r,t);a===0?(r.next=null,n===null?bf=i:n.next=i,i===null&&(xf=n)):(n=r,(e!==0||a&3)&&(Cf=!0)),r=i}X!==0&&X!==5||Df(e,!1),Tf!==0&&(Tf=0)}function Af(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0s)break;var u=c.transferSize,d=c.initiatorType;u&&ap(d)&&(c=c.responseEnd,o+=u*(c$m){s.length=o;break}f=new Promise(jp.bind(f)),s.push(f)}}}if(0`u`?null:document;function Tm(e,t,n){var r=wm;if(r&&typeof t==`string`&&t){var i=mn(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),ym.has(i)||(ym.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),np(t,`link`,e),D(t),r.head.appendChild(t)))}}function Em(e){xm.D(e),Tm(`dns-prefetch`,e,null)}function Dm(e,t){xm.C(e,t),Tm(`preconnect`,e,t)}function Om(e,t,n){xm.L(e,t,n);var r=wm;if(r&&e&&t){var i=`link[rel="preload"][as="`+mn(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+mn(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+mn(n.imageSizes)+`"]`)):i+=`[href="`+mn(e)+`"]`;var a=i;switch(t){case`style`:a=Pm(e);break;case`script`:a=Rm(e)}if(!(vm.has(a)||(e=S({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),vm.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Fm(a))||t===`script`&&r.querySelector(zm(a))))){var o=r.createElement(`link`);np(o,`link`,e),t===`style`&&(o[Ht]=!0,o.onload=o.onerror=function(){Jt(o)}),D(o),r.head.appendChild(o)}}}function km(e,t){xm.m(e,t);var n=wm;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+mn(r)+`"][href="`+mn(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Rm(e)}if(!vm.has(a)&&(e=S({rel:`modulepreload`,href:e},t),vm.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(zm(a)))return}r=n.createElement(`link`),np(r,`link`,e),D(r),n.head.appendChild(r)}}}function Am(e,t,n){xm.S(e,t,n);var r=wm;if(r&&e){var i=qt(r).hoistableStyles,a=Pm(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(Fm(a)))s.loading=5;else{e=S({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=vm.get(a))&&Hm(e,n);var c=o=r.createElement(`link`);D(c),np(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Vm(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function jm(e,t){xm.X(e,t);var n=wm;if(n&&e){var r=qt(n).hoistableScripts,i=Rm(e),a=r.get(i);a||(a=n.querySelector(zm(i)),a||(e=S({src:e,async:!0},t),(t=vm.get(i))&&Um(e,t),a=n.createElement(`script`),D(a),np(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Mm(e,t){xm.M(e,t);var n=wm;if(n&&e){var r=qt(n).hoistableScripts,i=Rm(e),a=r.get(i);a||(a=n.querySelector(zm(i)),a||(e=S({src:e,async:!0,type:`module`},t),(t=vm.get(i))&&Um(e,t),a=n.createElement(`script`),D(a),np(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Nm(e,t,n,r){var a=(a=Fe.current)?bm(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=Pm(n.href),t=qt(a).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Pm(n.href);var o=qt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(Fm(e)))?o._p||(s.instance=o,s.state.loading=5):(o=vm.get(e),o||(o={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},vm.set(e,o)),Lm(a,e,o,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=Rm(n),t=qt(a).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Pm(e){return`href="`+mn(e)+`"`}function Fm(e){return`link[rel="stylesheet"][`+e+`]`}function Im(e){return S({},e,{"data-precedence":e.precedence,precedence:null})}function Lm(e,t,n,r){if(t=e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)){if(!0!==t[Ht]){r.loading=1;return}}else t=e.createElement(`link`),t[Ht]=!0,t.onload=t.onerror=Jt.bind(null,t),np(t,`link`,n),D(t),e.head.appendChild(t);r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2})}function Rm(e){return`[src="`+mn(e)+`"]`}function zm(e){return`script[async]`+e}function Bm(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+mn(n.href)+`"]`);if(r)return t.instance=r,D(r),r;var a=S({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),D(r),np(r,`style`,a),Vm(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Pm(n.href);var o=e.querySelector(Fm(a));if(o)return t.state.loading|=4,t.instance=o,D(o),o;r=Im(n),(a=vm.get(a))&&Hm(r,a),o=(e.ownerDocument||e).createElement(`link`),D(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),np(o,`link`,r),t.state.loading|=4,Vm(o,n.precedence,e),t.instance=o;case`script`:return o=Rm(n.src),(a=e.querySelector(zm(o)))?(t.instance=a,D(a),a):(r=n,(a=vm.get(o))&&(r=S({},n),Um(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),D(a),np(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Vm(r,n.precedence,e));return t.instance}function Vm(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o title`):null)}function qm(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Jm(e,t){return e===`img`&&t.src!=null&&t.src!==``&&t.onLoad==null&&t.loading!==`lazy`}function Ym(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Xm(e){return(e.width||100)*(e.height||100)*(typeof devicePixelRatio==`number`?devicePixelRatio:1)*.25}function Zm(e,t){typeof t.decode==`function`&&(e.imgCount++,t.complete||(e.imgBytes+=Xm(t),e.suspenseyImages.push(t)),e=rh.bind(e),t.decode().then(e,e))}function Qm(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Pm(r.href),a=t.querySelector(Fm(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=nh.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,D(a);return}a=t.ownerDocument||t,r=Im(r),(i=vm.get(i))&&Hm(r,i),a=a.createElement(`link`),D(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),np(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=nh.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var $m=0;function eh(e,t){return e.stylesheets&&e.count===0&&ah(e,e.stylesheets),0$m?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function th(e){if(e.count===0&&(e.imgCount===0||!e.waitingForImages)){if(e.stylesheets)ah(e,e.stylesheets);else if(e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}}}function nh(){this.count--,th(this)}function rh(){this.imgCount--,th(this)}var ih=null;function ah(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ih=new Map,t.forEach(oh,e),ih=null,nh.call(e))}function oh(e,t){if(!(t.state.loading&4)){var n=ih.get(e);if(n)var r=n.get(null);else{n=new Map,ih.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=h()})),_=c(f(),1),v=g(),y=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-segi-8-kombinasi-presisi-jogja.webp`,b=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-carport-paving-3d-sleman-jogja.webp`,ee=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-area-parkir-ruko-heavy-duty-bantul.webp`,te=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-outdoor-hexagon-kafe-kotabaru-jogja.webp`,ne=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-jalan-komplek-wajik-bintang-jogja-1.webp`,re=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-carport-kotak-persegi-presisi-jogja.webp`,x=`https://pabrikpaving.id/wp-content/uploads/2026/10/galeri-pengiriman-dump-truck-armada-jogja.webp`,ie=`https://pabrikpaving.id/wp-content/uploads/2026/10/pola-pasang-herringbone-90-real.webp`,S=`https://pabrikpaving.id/wp-content/uploads/2026/10/pola-pasang-herringbone-45-real.webp`,ae=`https://pabrikpaving.id/wp-content/uploads/2026/10/pola-pasang-basket-weave-real.webp`,oe=`https://pabrikpaving.id/wp-content/uploads/2026/10/pola-pasang-stretcher-bond-real.webp`,se=`https://pabrikpaving.id/wp-content/uploads/2026/10/pola-pasang-hexagon-real.webp`,ce=`https://pabrikpaving.id/wp-content/uploads/2026/10/hero-pabrik-paving-jogja-mobile.webp`,le=`https://pabrikpaving.id/wp-content/uploads/2026/10/hero-pabrik-paving-jogja-desktop.webp`,ue=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-bata-holland-presisi-jogja.webp`,de=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-kotak-persegi-carport-jogja.webp`,fe=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-segi-6-hexagon-jogja.webp`,pe=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-topi-uskup-kuncian-jogja.webp`,me=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-3-dimensi-belah-ketupat-jogja.webp`,he=`https://pabrikpaving.id/wp-content/uploads/2026/10/grass-block-paving-rumput-8-lubang-jogja.webp`,ge=`https://pabrikpaving.id/wp-content/uploads/2026/10/paving-block-wajik-kombinasi-bintang-jogja.webp`,_e=`https://pabrikpaving.id/wp-content/uploads/2026/10/stabilisasi-tanah-lempung-paving-jogja.webp`,ve=`https://pabrikpaving.id/wp-content/uploads/2026/10/perbandingan-paving-vs-aspal-jogja.webp`,ye=`https://pabrikpaving.id/wp-content/uploads/2026/10/ragam-model-paving-block-jogja.webp`,be=`https://pabrikpaving.id/wp-content/uploads/2026/10/standar-mutu-beton-k250-k300-k400.webp`,xe=`https://pabrikpaving.id/wp-content/uploads/2026/10/pemanfaatan-kembali-paving-bekas.webp`,Se=`https://pabrikpaving.id/wp-content/uploads/2026/10/pengiriman-paving-block-pabrik-jogja.webp`,Ce=`https://pabrikpaving.id/wp-content/uploads/2026/10/hitung-harga-paving-per-biji-jogja.webp`,we=b,Te=ee,Ee=te,De=ne,C=re,w=x,Oe=ve,ke=ye,Ae=be,je=xe,Me=Se,T=Ce,Ne=_e,Pe=ce,Fe=le,Ie=`Khusus warna hitam dan merah terdapat biaya tambahan sebesar Rp10.000,- per meter.`,Le=1e4,Re=[{id:`holland`,name:`HOLLAND`,model:`Bata Persegi Panjang / Holland (10.5 x 21 cm)`,thickness:`6 CM & 8 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:44,pricePerM2:78e3,pricePerPiece:1773,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Carport rumah tinggal, halaman teras, jalan perumahan, jalur pedestrian & parkir ruko`,description:`Paling fleksibel dengan susunan pola Herringbone 90ยฐ, Basket Weave, maupun Stretcher Bond. Daya ikat antar blok sangat kuat menahan beban kendaraan.`,image:ue,features:[`44 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Anti Licin Saat Hujan`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:21,width:10.5,thicknessList:[6,8],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:78e3,k300:82e3,k400:9e4},{thickness:`8 CM`,k200:98e3,k300:104e3,k400:112e3}]},{id:`kotak-persegi`,name:`KOTAK PERSEGI`,model:`Kubus Simetris Presisi (10 x 10 cm / 20 x 20 cm)`,thickness:`6 CM & 8 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:25,pricePerM2:78e3,pricePerPiece:3120,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Plaza, pedestrian pejalan kaki, teras minimalis modern, area komersial`,description:`Bentuk kotak persegi simetris yang memberikan kesan modern, rapi, dan luas pada bidang lantai luar ruangan.`,image:de,features:[`25 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Desain Simetris Modern`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:20,width:20,thicknessList:[6,8],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:78e3,k300:82e3,k400:9e4},{thickness:`8 CM`,k200:98e3,k300:104e3,k400:112e3}]},{id:`segi-6`,name:`SEGI 6`,model:`Hexagonal Interlocking (Sisi 11.5 cm)`,thickness:`6 CM & 8 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:25,pricePerM2:78e3,pricePerPiece:3120,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Halaman kafe, pedestrian mall, area wisata outdoor, halaman villa tropis`,description:`Bentuk heksagonal sarang lebah geometris modern. Penguncian 6 sisi alami meminimalkan risiko pergeseran blok.`,image:fe,features:[`25 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Penguncian 6 Arah Otomatis`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:20,width:23,thicknessList:[6,8],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:78e3,k300:82e3,k400:9e4},{thickness:`8 CM`,k200:98e3,k300:104e3,k400:112e3}]},{id:`topi-uskup`,name:`TOPI USKUP`,model:`Bishop Hat Edging Paver (30 x 21 cm)`,thickness:`6 CM & 8 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:28,pricePerM2:8e4,pricePerPiece:2857,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Pengunci tepi pola susun bata/herringbone, pembatas tepi trotoar jalan`,description:`Komponen kuncian tepi wajib untuk merapikan perimeter susunan paving tanpa harus banyak memotong bata manual di lokasi.`,image:pe,features:[`28 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Pengunci Tepi Presisi`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:30,width:21,thicknessList:[6,8],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:8e4,k300:84e3,k400:92e3},{thickness:`8 CM`,k200:1e5,k300:106e3,k400:114e3}]},{id:`3-dimensi`,name:`3 DIMENSI`,model:`Rhomboid 3D Geometric (Belah Ketupat 3D)`,thickness:`6 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:29,pricePerM2:88e3,pricePerPiece:3034,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Courtyard kafe instagramable, plaza komersial, teras hotel & galeri seni`,description:`Menghasilkan ilusi optik kubus 3 dimensi artistik dan futuristik terutama saat memadukan warna abu, merah, dan hitam.`,image:me,features:[`29 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Visual Ilusi Optik 3D`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:20,width:12,thicknessList:[6],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:88e3,k300:92e3,k400:1e5},{thickness:`8 CM`,k200:null,k300:null,k400:null}]},{id:`grass-block`,name:`GRASS BLOCK`,model:`Grass Paver Berongga (40 x 40 cm / Lubang 8)`,thickness:`10 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:8,pricePerM2:81e3,pricePerPiece:10125,colors:[`Abu Natural`],bestFor:`Taman resapan air, carport eco-green, lapangan parkir taman wisata`,description:`Solusi perkerasan ramah lingkungan berketebalan 10 cm kokoh, meloloskan air hujan ke dalam tanah dan dapat ditanami rumput hias.`,image:he,features:[`8 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Resapan Air Ramah Lingkungan`,`Ketebalan Kokoh 10 CM`],inStock:!0,stockStatus:`ready`,dimensions:{length:40,width:40,thicknessList:[10],unit:`cm`},texture:`Beton Berpori Eco-Drainage (8 Lubang Resapan)`,pricingVariants:[{thickness:`8 CM`,k200:null,k300:null,k400:null},{thickness:`10 CM`,k200:81e3,k300:85e3,k400:93e3}]},{id:`segi-8-kombinasi`,name:`SEGI 8 KOMBINASI`,model:`Octagon + Square Infill (Segi Delapan + Kubus Mini)`,thickness:`6 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:25,pricePerM2:80500,pricePerPiece:3220,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Halaman rumah mewah, trotoar estate, pedestrian hotel & resort`,description:`Kombinasi bidang oktagon dengan sisipan ubin kubus kecil di setiap pertemuannya, menghasilkan motif klasik Eropa yang elegan.`,image:y,features:[`25 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Aksen Kombinasi Klasik Mewah`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:20,width:20,thicknessList:[6],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:80500,k300:84e3,k400:92e3},{thickness:`8 CM`,k200:null,k300:null,k400:null}]},{id:`wajik-kombinasi`,name:`WAJIK KOMBINASI`,model:`Diamond Paver Interlocking`,thickness:`6 CM`,strength:`Mutu K200, K300, K400`,piecesPerM2:28,pricePerM2:81e3,pricePerPiece:2893,colors:[`Abu Natural`,`Merah`,`Hitam`],bestFor:`Halaman perkantoran, plaza terbuka, pedestrian jalur sirkulasi pejalan kaki`,description:`Pola belah ketupat wajik bersudut dinamis dengan sistem penguncian interlocking yang kokoh menahan gaya gesekan roda.`,image:ge,features:[`28 Pcs / mยฒ`,`Toleransi Dimensi ยฑ2mm (SNI 03-0691-1996)`,`Desain Geometris Dinamis`,`Garansi Resmi Tertulis SPK`],inStock:!0,stockStatus:`ready`,dimensions:{length:20,width:15,thicknessList:[6],unit:`cm`},texture:`Press Hidrolik 250 Bar (Rata Padat & Halus)`,pricingVariants:[{thickness:`6 CM`,k200:81e3,k300:85e3,k400:93e3},{thickness:`8 CM`,k200:null,k300:null,k400:null}]}],ze=[{id:`proj-1`,title:`Carport & Halaman Rumah Pola 3 Dimensi`,category:`rumah`,categoryLabel:`Area Rumah`,location:`Condongcatur, Depok, Sleman`,district:`Sleman`,areaM2:120,productUsed:`Paving 3 Dimensi (Belah Ketupat) Mutu K-300`,pattern:`Ilusi Optik Kubus 3 Dimensi (3D Rhomboid)`,completionDays:3,description:`Pemasangan carport dan halaman rumah tinggal minimalis di Sleman dengan perpaduan paving 3D warna abu, merah, dan hitam. Menghasilkan visual geometris kubus artistik yang mewah dan kokoh menahan mobil keluarga harian.`,image:b},{id:`proj-2`,title:`Area Parkir Kawasan Ruko & Bisnis Terpadu`,category:`parkiran`,categoryLabel:`Parkiran Ruko`,location:`Jl. Ringroad Timur, Banguntapan, Bantul`,district:`Bantul`,areaM2:480,productUsed:`Paving Bata Heavy Duty 8cm Mutu K-400`,pattern:`Herringbone 90ยฐ Kerapatan Beban Berat`,completionDays:6,description:`Pemasangan area parkir ruko komersial di Banguntapan Bantul dengan marka parkir presisi. Dirancang khusus menahan lalu lintas mobil harian dan kendaraan niaga berat tanpa risiko amblas.`,image:ee},{id:`proj-3`,title:`Courtyard Outdoor Kafe & Resto Modern`,category:`komersial`,categoryLabel:`Komersial & Wisata`,location:`Kotabaru, Gondokusuman, Kota Jogja`,district:`Kota Jogja`,areaM2:210,productUsed:`Paving Hexagon 6cm Mutu K-300`,pattern:`Hexagonal Sarang Lebah Interlocking`,completionDays:4,description:`Penataan area outdoor kafe di Kotabaru Jogja dengan susunan paving hexagon modern berpadu taman tropis asri. Permukaan rata, tidak licin saat hujan, dan sangat instagramable bagi pengunjung.`,image:te},{id:`proj-4`,title:`Jalur Pedestrian & Jalan Lingkungan Wajik Bintang`,category:`jalan`,categoryLabel:`Jalan Komplek`,location:`Ngaglik, Sleman, DIY`,district:`Sleman`,areaM2:850,productUsed:`Paving Wajik Kombinasi Bintang K-300`,pattern:`Kombinasi Motif Geometris Bintang 3 Warna`,completionDays:9,description:`Pemasangan jalan lingkungan dan jalur pedestrian perumahan asri di Sleman dengan motif wajik bintang kombinasi warna merah, abu, dan putih. Kuat, anti selip, dan memberikan aksen lanskap berkelas.`,image:ne},{id:`proj-5`,title:`Driveway & Carport Rumah Kotak Persegi Minimalis`,category:`rumah`,categoryLabel:`Area Rumah`,location:`Jl. Kaliurang Km 9, Sleman, DIY`,district:`Sleman`,areaM2:160,productUsed:`Paving Kotak Persegi 20x20 cm Mutu K-300`,pattern:`Susunan Garis Simetris Modern`,completionDays:3,description:`Pemasangan driveway akses masuk carport rumah tinggal minimalis di Sleman dengan paving kotak persegi presisi. Susunan garis lurus simetris memberikan kesan modern, rapi, dan kokoh menahan mobil harian.`,image:re},{id:`proj-6`,title:`Layanan Armada Dump Truck & Distribusi Pabrik`,category:`jalan`,categoryLabel:`Layanan Pabrik`,location:`Banguntapan, Bantul (Pabrik Langsung)`,district:`Bantul`,areaM2:1200,productUsed:`Paving Bata 6cm & 8cm Mutu K-300/K-400`,pattern:`Pengiriman Langsung Siap Bongkar Muat`,completionDays:1,description:`Armada dump truck dan tim bongkar muat profesional pabrik SPS Makmur Kreasi Beton melayani pengiriman harian material paving block langsung ke lokasi proyek perumahan, ruko, dan jalan desa di seluruh wilayah DIY.`,image:x}],Be=[{id:`blog-1`,slug:`kelebihan-dan-kekurangan-paving-block-dibandingkan-aspal`,title:`Kelebihan dan Kekurangan Paving Block Dibandingkan Aspal, Mana yang Lebih Tepat?`,category:`Perbandingan Material`,date:`18 Februari 2026`,readTime:`5 menit baca`,summary:`Perbandingan menyeluruh paving block vs aspal dari sisi daya resap air hujan, kemudahan instalasi utilitas pipa PDAM, estetika motif interlocking, serta ketahanan jangka panjang di iklim tropis Yogyakarta.`,content:[`Memilih antara paving block (conblock) dan aspal sering kali menjadi pertimbangan utama bagi pemilik rumah tinggal maupun pengembang perumahan di Yogyakarta.`,`Kelebihan Utama Paving Block: Pertama, memiliki daya resap air yang sangat tinggi melalui celah nat (joint sand), sehingga membantu menjaga cadangan air tanah dan meminimalkan genangan air di halaman. Kedua, jika di kemudian hari Anda perlu memasang pipa PDAM, kabel internet, atau saluran sanitasi bawah tanah, paving block dapat dibongkar pasang tanpa merusak estetika keseluruhan.`,`Kelebihan Aspal: Memiliki permukaan mulus rata tanpa nat, sangat nyaman untuk laju kendaraan berkecepatan tinggi di jalan raya antar provinsi. Namun untuk area carport perumahan tropis, aspal rentan memuai di bawah terik matahari dan sulit diperbaiki secara lokal bila berlubang.`,`Kesimpulan: Untuk area perumahan, halaman rumah, ruko, dan jalan komplek, paving block mutu K-300 jauh lebih unggul dalam hal daya tahan, kemudahan perawatan, dan nilai estetika.`],toc:[{id:`urgensi-pemilihan`,title:`1. Mengapa Pemilihan Perkerasan Sangat Krusial di Yogyakarta?`},{id:`keunggulan-paving`,title:`2. 5 Keunggulan Utama Paving Block untuk Hunian & Kawasan Niaga`},{id:`kelebihan-aspal`,title:`3. Kelebihan Aspal dan Batasan Penggunaannya`},{id:`perbandingan-aspek`,title:`4. Ringkasan Perbandingan Langsung: Paving vs Aspal`},{id:`kesimpulan-rekomendasi`,title:`5. Rekomendasi Pemilihan Sesuai Kebutuhan Proyek`}],sections:[{id:`urgensi-pemilihan`,heading:`Mengapa Pemilihan Perkerasan Sangat Krusial di Yogyakarta?`,level:2,paragraphs:[`Memilih material perkerasan antara paving block (conblock) dan aspal sering kali menjadi pertimbangan utama pemilik hunian maupun kontraktor perumahan di Yogyakarta. Faktor cuaca tropis dengan curah hujan musiman yang tinggi menuntut perkerasan yang tidak hanya kuat, tetapi juga mampu mengelola limpasan air secara mandiri.`,`Pemilihan material yang keliru kerap berujung pada genangan air di area carport, permukaan jalan komplek yang berlubang, atau kerumitan renovasi instalasi bawah tanah di kemudian hari. Oleh karena itu, memahami karakteristik teknis dan peruntukan masing-masing material menjadi langkah awal yang sangat penting.`]},{id:`keunggulan-paving`,heading:`5 Keunggulan Utama Paving Block untuk Hunian & Kawasan Niaga`,level:2,paragraphs:[`Sebagai material beton pracetak modular, paving block menawarkan serangkaian keunggulan struktural dan ekologis yang sulit ditandingi oleh lapisan aspal konvensional pada area berkecepatan rendah.`]},{id:`daya-resap-air`,heading:`1. Sistem Resapan Air Alami (Eco-Drainage) Ramah Lingkungan`,level:3,paragraphs:[`Keunggulan terbesar paving block adalah sifatnya yang permeable melalui celah nat (joint sand) yang terisi abu batu bergradasi. Air hujan dapat langsung meresap ke dalam pori-pori tanah dasar tanpa membebani saluran drainase lingkungan.`,`Berbeda dengan hamparan aspal kedap air yang kerap memicu genangan air di halaman, perkerasan paving menjaga permukaan tetap kering dan ramah lingkungan. Hal ini sangat mendukung konservasi cadangan air tanah di kawasan pemukiman Sleman dan Kota Yogyakarta.`]},{id:`kemudahan-utilitas`,heading:`2. Kemudahan Bongkar Pasang Tanpa Merusak Struktur`,level:3,paragraphs:[`Jika di kemudian hari Anda perlu memasang pipa PDAM baru, jaringan kabel optik internet, atau memperbaiki saluran sanitasi, paving block dapat dibongkar per modul secara rapi.`,`Setelah instalasi pipa selesai, blok paving yang sama dapat dipasang kembali tanpa meninggalkan bekas tambalan kasar. Pada jalan aspal, penambalan pipa biasanya menghasilkan gundukan atau lubang yang merusak estetika dan ketahanan jalan secara permanen.`]},{id:`estetika-pola`,heading:`3. Ragam Pola Interlocking dan Estetika Arsitektural Menawan`,level:3,paragraphs:[`Paving block memberikan fleksibilitas arsitektur yang sangat tinggi berkat pilihan bentuk persegi panjang, heksagonal, hingga kombinasi warna merah bata dan abu natural.`,`Anda dapat mengeksplorasi ragam bentuk dan pola penguncian lebih detail pada artikel 8+ Model Paving Block yang Wajib Diketahui untuk menyesuaikan gaya fasad hunian Anda.`]},{id:`tahan-cuaca`,heading:`4. Tahan Cuaca Panas Ekstrem dan Tetesan Oli Kendaraan`,level:3,paragraphs:[`Di bawah terik matahari iklim tropis, aspal cenderung memuai, melunak, dan rentan bergelombang bila dilindas roda yang berbelok di tempat. Sebaliknya, beton paving block mutu K-300 tetap stabil dan tidak terpengaruh radiasi suhu tinggi.`,`Selain itu, paving block memiliki ketahanan yang jauh lebih baik terhadap ceceran oli mobil maupun bahan bakar. Pembersihan noda minyak dapat dilakukan secara mudah dengan sikat kawat dan cairan sabun tanpa merusak lapisan beton.`]},{id:`nilai-investasi`,heading:`5. Nilai Investasi Jangka Panjang yang Lebih Ekonomis`,level:3,paragraphs:[`Meskipun biaya awal pekerjaan paving berkualitas bersaing dengan aspal curah, umur layan paving block terbukti mencapai 15 hingga 20 tahun dengan biaya perawatan tahunan yang sangat minim.`,`Anda dapat menghitung perkiraan kebutuhan material dan simulasi anggaran secara instan melalui Kalkulator RAB Paving Block Jogja yang tersedia di website kami.`]},{id:`kelebihan-aspal`,heading:`Kelebihan Aspal dan Batasan Penggunaannya`,level:2,paragraphs:[`Aspal hotmix memiliki keunggulan tak tertandingi pada jalan raya antar kota karena permukaannya yang sangat mulus tanpa celah sambungan, memberikan kenyamanan maksimal pada laju kecepatan tinggi di atas 60 km/jam.`,`Namun untuk area pemukiman sempit, carport rumah tangga, dan pelataran ruko, aspal sangat sensitif terhadap air yang tergenang. Air yang terjebak di pori aspal akan melemahkan ikatan bitumen dan memicu keretakan struktural secara cepat.`]},{id:`perbandingan-aspek`,heading:`Ringkasan Perbandingan Langsung: Paving vs Aspal`,level:2,paragraphs:[`Berikut adalah intisari perbandingan teknis antara paving block dan aspal hotmix untuk membantu pertimbangan Anda:`],bulletPoints:[`Daya Resap Air: Paving Block Unggul (Meresapkan air via celah nat) vs Aspal Kurang (Kedap air total, rawan genangan).`,`Perbaikan Saluran: Paving Block Unggul (Bongkar pasang per blok tanpa limbah) vs Aspal Sulit (Harus digali dan ditambal aspal baru).`,`Daya Tahan Cuaca Panas: Paving Block Unggul (Beton pracetak tahan deformasi panas) vs Aspal Rentan (Bisa melunak di bawah terik matahari ekstrem).`,`Pilihan Estetika: Paving Block Unggul (Pilihan pola Herringbone, Basket Weave, Hexagon) vs Aspal Monoton (Permukaan hitam polos standar).`,`Laju Kecepatan Roda: Aspal Unggul (Sangat halus untuk kecepatan tinggi >60 km/jam) vs Paving Block Sedang (Ideal untuk lingkungan hunian <40 km/jam).`]},{id:`kesimpulan-rekomendasi`,heading:`Rekomendasi Pemilihan Sesuai Kebutuhan Proyek`,level:2,paragraphs:[`Untuk area halaman rumah, carport mobil, jalan komplek perumahan, dan pelataran ruko komersial, paving block presisi mutu K-300 merupakan solusi terbaik dari aspek ketahanan beban, penyerapan air hujan, serta nilai estetika.`,`Pastikan pemasangan dikerjakan oleh tukang berpengalaman dengan fondasi abu batu yang dipadatkan mesin stamper. Anda dapat memilih Paket Pasang Terima Beres All-In Bergaransi SPK dari PabrikPaving.Id atau melihat dokumentasi hasil pekerjaan riil kami di Galeri Proyek Paving Jogja.`],highlightBox:{type:`tip`,title:`๐Ÿ’ก Panduan Lapangan untuk Tanah Bantul & Kulon Progo`,text:`Jika lokasi proyek Anda berada di atas tanah lempung ekspansif yang mudah lembek saat musim hujan, pastikan menyematkan lapisan separator geotextile di bawah sub-base abu batu. Baca petunjuk lengkapnya di Panduan Stabilisasi Tanah Lempung Paving Jogja.`}}],image:Oe,relatedLinks:[{label:`Pilihan Paket Terima Beres Pemasangan Paving Jalan & Carport`,pageId:`layanan`,anchorText:`Lihat Paket Jasa Pasang PabrikPaving.Id`},{label:`Simulasi Perbandingan Biaya Paving vs Aspal di Kalkulator`,pageId:`harga`,anchorText:`Cek Estimasi Biaya di Kalkulator`},{label:`Dokumentasi Proyek Paving Riil di Berbagai Lokasi DIY`,pageId:`galeri`,anchorText:`Lihat Galeri Proyek Paving Jogja`}]},{id:`blog-2`,slug:`model-paving-block`,title:`8+ Model Paving Block yang Wajib Anda Ketahui Sebelum Membeli`,category:`Panduan Produk`,date:`10 Februari 2026`,readTime:`5 menit baca`,summary:`Mengenal ragam bentuk paving block mulai dari model Bata (Holland), Segi Enam (Hexagon), Paving Cacing (Zigzag), Grass Block, hingga Kanstin beton pengunci lateral.`,content:[`Paving block tidak hanya berupa balok persegi panjang biasa. Produsen saat ini menawarkan beragam bentuk yang memiliki fungsi mekanis dan estetika berbeda.`,`1. Model Bata (Holland): Ukuran 10.5 x 21 cm, merupakan model paling populer di Indonesia. Sangat fleksibel untuk pola herringbone 90ยฐ, herringbone 45ยฐ, dan anyaman tikar.`,`2. Model Hexagon (Segi Enam): Berbentuk heksagonal sarang lebah dengan 6 sisi kuncian alami, sangat cocok untuk halaman kafe kekinian dan villa tropis.`,`3. Model Cacing (Zigzag): Memiliki lekukan samping bergelombang yang mengunci otomatis dari arah samping, sering diaplikasikan pada area industri dan jalan gang pemukiman.`,`4. Grass Block (Paving Rumput): Memiliki 5 atau 8 lubang untuk ditanami rumput, memberikan penghijauan sekaligus perkerasan tanah yang kokoh.`,`5. Kanstin Beton: Balok beton tepi pembatas yang wajib dipasang agar barisan paving tidak melorot ke samping.`],toc:[{id:`pengantar-model`,title:`1. Mengapa Bentuk Paving Menentukan Kekuatan dan Estetika?`},{id:`daftar-8-model`,title:`2. 8 Model Paving Block Terpopuler di Yogyakarta`},{id:`pilihan-beban`,title:`3. Menyesuaikan Model & Ketebalan dengan Beban Kendaraan`},{id:`rekomendasi-belanja`,title:`4. Kesimpulan & Cara Memesan Langsung dari Pabrik`}],sections:[{id:`pengantar-model`,heading:`Mengapa Bentuk Paving Menentukan Kekuatan dan Estetika?`,level:2,paragraphs:[`Memilih paving block bukan sekadar tentang menutup permukaan tanah agar tidak becek. Setiap bentuk dan desain modular memiliki fungsi struktural mekanis serta pengaruh estetika visual yang berbeda pada lanskap bangunan.`,`Daya interlocking (kuncian antar blok) sangat dipengaruhi oleh geometri tepi bata. Semakin presisi kuncian modularnya, semakin tinggi ketahanannya terhadap gaya dorong deselerasi ban kendaraan saat pengereman.`]},{id:`daftar-8-model`,heading:`8 Model Paving Block Terpopuler di Yogyakarta`,level:2,paragraphs:[`Berikut adalah varian model paving block pracetak yang diproduksi dengan mesin press hidrolik standar SNI di pabrik kami:`]},{id:`model-holland`,heading:`1. Model Bata (Holland) 10.5 x 21 cm`,level:3,paragraphs:[`Model bata persegi panjang ini adalah jenis paling populer dan fleksibel di Indonesia. Dengan kebutuhan 44 buah per meter persegi, model ini sangat mudah disesuaikan untuk berbagai pola pasang.`,`Pola yang paling direkomendasikan untuk area carport mobil adalah pola Herringbone 90 derajat karena mampu menyebarkan beban roda secara merata ke segala arah.`]},{id:`model-hexagon`,heading:`2. Model Segi Enam (Hexagon)`,level:3,paragraphs:[`Berbentuk heksagonal menyerupai sarang lebah dengan 6 sisi kuncian alami (isi 25 buah per meter persegi). Model ini sangat diminati untuk halaman kafe kekinian, pelataran villa, dan taman santai di kawasan Sleman dan Kota Jogja.`]},{id:`model-cacing`,heading:`3. Model Paving Cacing (Zigzag / Uni-Pave)`,level:3,paragraphs:[`Memiliki lekukan bergelombang di sisi samping yang menciptakan kuncian interlocking lateral otomatis saat dipadatkan dengan pasir nat.`,`Model ini sangat tangguh untuk jalan perumahan dan pelataran pergudangan logistik karena susunannya tidak mudah bergeser ke samping.`]},{id:`model-grass-block`,heading:`4. Grass Block (Paving Rumput Berlubang)`,level:3,paragraphs:[`Dilengkapi 5 atau 8 lubang resapan yang dapat ditanami rumput gajah mini atau diisi krikil hias. Solusi terbaik bagi pemilik properti yang membutuhkan area parkir mobil namun tetap mempertahankan ruang terbuka hijau (RTH) 40-50%.`]},{id:`model-segi-8`,heading:`5. Model Segi Delapan (Octagon) Kombinasi`,level:3,paragraphs:[`Mengombinasikan balok bersegi delapan dengan sisipan balok kubus kecil di setiap sudut pertemuannya. Memberikan nuansa klasik mewah yang kerap diaplikasikan pada pelataran masjid dan jalur pedestrian kota.`]},{id:`model-topi-uskup`,heading:`6. Paving Topi Uskup (Bishop Hat)`,level:3,paragraphs:[`Memiliki bentuk segitiga terpancung yang berfungsi khusus sebagai balok penutup tepi pada susunan paving pola herringbone atau diagonal.`,`Menggunakan topi uskup membuat tepi susunan menjadi lurus rapi tanpa perlu membelah bata manual, sehingga kekuatan tepi jalan tetap utuh maksimal.`]},{id:`model-wajik-3d`,heading:`7. Paving 3 Dimensi (Wajik / Rhombus)`,level:3,paragraphs:[`Balok berbentuk jajaran genjang belah ketupat yang bila disusun dalam kombinasi tiga gradasi warna (abu, merah, dan hitam) menghasilkan ilusi optik 3D kubus timbul yang memukau.`]},{id:`model-kanstin`,heading:`8. Kanstin Beton Pracetak (Curb / Edging)`,level:3,paragraphs:[`Komponen beton pengunci perimeter samping yang wajib dipasang di sepanjang batas luar perkerasan paving block.`,`Tanpa kanstin yang terkunci spesi mortar kokoh, susunan paving di tengah akan melorot dan terpisah ketika dilindas kendaraan.`]},{id:`pilihan-beban`,heading:`Menyesuaikan Model & Ketebalan dengan Beban Kendaraan`,level:2,paragraphs:[`Selain bentuk luar, ketebalan paving block wajib disesuaikan dengan jenis kendaraan yang melintas. Untuk sepeda motor dan pedestrian pejalan kaki, ketebalan 6 cm mutu K-200 sudah mencukupi.`,`Namun untuk carport mobil keluarga SUV, pilih ketebalan 6 cm mutu K-300. Bila area proyek Anda sering dilalui truk tronton atau armada berat, gunakan ketebalan 8 cm mutu K-400 presisi tinggi. Pelajari perbedaan mutunya pada artikel Standar Mutu Paving K-250 vs K-300.`]},{id:`rekomendasi-belanja`,heading:`Kesimpulan & Cara Memesan Langsung dari Pabrik`,level:2,paragraphs:[`Setiap model memiliki keunikan desain dan fungsi teknis yang dapat dikombinasikan secara harmonis pada lanskap hunian Anda di Yogyakarta.`,`Untuk mengecek ketersediaan stok, foto proyek riil, serta simulasi harga pabrik langsung, kunjungi Daftar Harga Paving Block Jogja atau konsultasikan layout gratis dengan tim teknis kami di Halaman Kontak PabrikPaving.Id.`]}],image:ke,relatedLinks:[{label:`Daftar Harga Model Bata, Hexagon & Grass Block`,pageId:`harga`,anchorText:`Lihat Daftar Harga Produk Paving`},{label:`Galeri Foto Penerapan Model Paving di Berbagai Proyek Jogja`,pageId:`galeri`,anchorText:`Lihat Galeri Proyek Riil`},{label:`Paket Pasang Rapi Garansi Resmi Bebas Amblas`,pageId:`layanan`,anchorText:`Cek Paket Pasang All-In`}]},{id:`blog-7`,slug:`stabilisasi-tanah-lempung-paving-block-jogja`,title:`Panduan Stabilisasi Tanah Lempung Ekspansif untuk Pemasangan Paving Block di Yogyakarta: Standar CBR, Geotextile, dan Sub-base Abu Batu`,category:`Keteknikan & Solusi Lapangan`,date:`01 Oktober 2026`,readTime:`6 menit baca`,summary:`Solusi teknis rekayasa tanah dasar (subgrade) di area Bantul dan Kulon Progo agar paving block tidak amblas saat musim hujan, mencakup uji CBR, lapisan separator geotextile, dan komposisi abu batu presisi.`,content:[`Wilayah Daerah Istimewa Yogyakarta memiliki karakteristik formasi geologi tanah yang sangat beragam. Di kawasan selatan seperti Kabupaten Bantul (Kecamatan Sewon, Banguntapan, Jetis, Kasihan, Pleret) serta dataran rendah Kulon Progo, jenis tanah yang mendominasi adalah tanah lempung ekspansif (vertisol/grumosol). Ciri khas utama tanah ini adalah sifat plastisitas tinggi yang mengalami kembang-susut (shrink-swell cycle) sangat ekstrem: saat musim kemarau tanah merekah dan mengeras, namun saat musim hujan tiba dengan intensitas lebat khas lereng Merapi, tanah menyerap air dalam jumlah besar, menjadi sangat lembek, dan kehilangan daya dukungnya secara drastis.`,`Daya dukung tanah dasar (subgrade) yang labil ini adalah penyebab nomor satu mengapa pemasangan paving block konvensional di Bantul sering amblas, bergelombang, dan natnya saling menjauh hanya dalam waktu 3 hingga 6 bulan pasca pengerjaan. Untuk perkerasan jalan perumahan maupun carport kendaraan harian, standar teknik sipil mensyaratkan nilai CBR (California Bearing Ratio) tanah dasar minimal 5% setelah dipadatkan pada kadar air optimum (OMC). Bila tanah lempung asli memiliki CBR di bawah 3%, stabilisasi tanah dasar menjadi langkah wajib yang tidak boleh dilewati.`,`Solusi rekayasa perkerasan yang diterapkan oleh tim ahli PabrikPaving.Id mencakup 4 tahapan stabilisasi bertingkat: 1) Stripping & Pemadatan Subgrade: Pengupasan lapisan humus (topsoil) setebal 15-20 cm, diikuti pemadatan tanah dasar menggunakan mesin stamper kodok / vibro roller hingga mencapai minimal 95% kepadatan kering maksimum (standar SNI 1742:2008). 2) Pemasangan Geotextile Separator: Pada tanah lempung lunak, kami membentangkan lapisan Geotextile Non-Woven (spesifikasi 150โ€“200 gsm). Kain rekayasa permeabel ini bertindak sebagai pemisah struktural agar agregat abu batu dan base course di atasnya tidak amblas tertelan ke dalam lumpur lempung di bawahnya saat musim hujan, sekaligus tetap meloloskan air resapan. 3) Lapisan Sub-Base Agregat Kelas B & Bedding Abu Batu: Di atas geotextile, digelar lapisan batu pecah agregat setebal 10โ€“15 cm yang dipadatkan, lalu dilapisi abu batu bergradasi tajam (tebal 3โ€“5 cm) yang diratakan dengan jidar pemandu tanpa dipadatkan sebelum paving diletakkan. 4) Kuncian Kanstin Bertulang & Pola Herringbone 90ยฐ: Tepi perimeter wajib dikunci kanstin beton pracetak bertulang mortar basah agar susunan paving tidak mengembang ke samping. Untuk area lintasan mobil keluarga dan niaga, pola susunan Herringbone 90 derajat wajib digunakan karena mendistribusikan gaya geser pengereman kendaraan secara 3D ke seluruh blok di sekitarnya.`,`Dengan penerapan metode geoteknis yang tepat, perkerasan paving block di atas tanah lempung mampu bertahan hingga lebih dari 15 tahun tanpa mengalami amblas. Di PabrikPaving.Id, setiap proyek pemasangan paket all-in kami lindungi dengan garansi resmi tertulis SPK terhadap penurunan tanah, memberikan ketenangan investasi jangka panjang bagi properti Anda di seluruh wilayah D.I. Yogyakarta.`],toc:[{id:`geologi-jogja`,title:`1. Karakteristik Tanah Lempung Ekspansif di Yogyakarta`},{id:`penyebab-amblas`,title:`2. Mengapa Paving Konvensional Sering Amblas di Bantul?`},{id:`empat-tahap-rekayasa`,title:`3. 4 Tahap Stabilisasi Subgrade Standar Teknik Sipil`},{id:`garansi-resmi`,title:`4. Ketenangan Investasi dengan Garansi Resmi SPK`}],sections:[{id:`geologi-jogja`,heading:`Karakteristik Geologi Tanah Lempung Ekspansif di Yogyakarta`,level:2,paragraphs:[`Wilayah Daerah Istimewa Yogyakarta memiliki karakteristik formasi geologi tanah yang sangat beragam. Di kawasan selatan seperti Kabupaten Bantul (Kecamatan Sewon, Banguntapan, Jetis, Kasihan, Pleret) serta dataran rendah Kulon Progo, jenis tanah yang mendominasi adalah tanah lempung ekspansif (vertisol dan grumosol).`,`Ciri khas utama tanah ini adalah sifat plastisitas tinggi yang mengalami siklus kembang-susut (shrink-swell cycle) sangat ekstrem. Saat musim kemarau tanah merekah dan mengeras seperti batu, namun saat musim hujan tiba tanah menyerap air dalam jumlah besar, menjadi sangat lembek, dan kehilangan daya dukungnya secara drastis.`]},{id:`penyebab-amblas`,heading:`Mengapa Paving Konvensional Sering Amblas di Bantul?`,level:2,paragraphs:[`Daya dukung tanah dasar (subgrade) yang labil ini adalah penyebab nomor satu mengapa pemasangan paving block amatir di Bantul sering amblas, bergelombang, dan natnya saling menjauh hanya dalam waktu 3 hingga 6 bulan pasca pengerjaan.`,`Untuk perkerasan jalan perumahan maupun carport kendaraan harian, standar teknik sipil mensyaratkan nilai CBR (California Bearing Ratio) tanah dasar minimal 5% setelah dipadatkan pada kadar air optimum. Bila tanah lempung asli memiliki nilai CBR di bawah 3%, stabilisasi tanah dasar menjadi langkah wajib yang tidak boleh dilewati.`]},{id:`empat-tahap-rekayasa`,heading:`4 Tahap Stabilisasi Subgrade Standar Teknik Sipil`,level:2,paragraphs:[`Berikut adalah metodologi rekayasa perkerasan 4 lapis yang diterapkan oleh tim ahli PabrikPaving.Id untuk menjamin kekuatan jangka panjang:`]},{id:`tahap-stripping`,heading:`1. Stripping Humus & Pemadatan Subgrade`,level:3,paragraphs:[`Tahap awal dimulai dengan pengupasan lapisan tanah pucuk (topsoil/humus) setebal 15 hingga 20 cm yang banyak mengandung sisa organik akar tanaman.`,`Tanah dasar kemudian dipadatkan menggunakan mesin vibro roller atau stamper kodok hingga mencapai minimal 95% kepadatan kering maksimum sesuai standar SNI 1742:2008.`]},{id:`tahap-geotextile`,heading:`2. Pemasangan Geotextile Non-Woven Separator`,level:3,paragraphs:[`Pada tanah lempung lunak berkadar air tinggi, tim PabrikPaving.Id membentangkan lembaran Geotextile Non-Woven spesifikasi 150 hingga 200 gsm.`,`Kain sintetis permeabel ini bertindak sebagai pemisah fisik (separator) agar agregat batu pecah dan abu batu di atasnya tidak amblas tertelan ke dalam lumpur lempung di bawahnya, sekaligus tetap meloloskan aliran air resapan.`]},{id:`tahap-subbase`,heading:`3. Gelar Sub-Base Agregat Kelas B & Bedding Abu Batu`,level:3,paragraphs:[`Di atas lapisan geotextile, digelar lapisan batu pecah agregat kelas B setebal 10 hingga 15 cm yang dipadatkan merata sebagai fondasi penyangga beban roda.`,`Selanjutnya, digelar lapisan abu batu bergradasi tajam setebal 3 hingga 5 cm yang diratakan menggunakan bilah jidar pemandu tanpa dipadatkan sebelum bata paving diletakkan.`]},{id:`tahap-kanstin`,heading:`4. Kuncian Kanstin Bertulang & Pola Herringbone 90ยฐ`,level:3,paragraphs:[`Tepi luar perimeter wajib dikunci dengan kanstin beton bertulang berspesi mortar basah agar susunan blok tidak mengembang ke arah lateral saat menerima tekanan roda.`,`Untuk area lalu lintas mobil, pola susunan Herringbone 90 derajat wajib diterapkan karena mendistribusikan gaya geser akselerasi dan pengereman kendaraan secara 3 dimensi ke seluruh susunan blok di sekitarnya.`]},{id:`garansi-resmi`,heading:`Ketenangan Investasi dengan Garansi Resmi SPK`,level:2,paragraphs:[`Melalui metode geoteknis yang presisi, perkerasan paving block di atas tanah lempung terbukti mampu bertahan lebih dari 15 tahun tanpa mengalami deformasi amblas.`,`Di PabrikPaving.Id, setiap pengerjaan Paket Pasang Terima Beres All-In kami sertai garansi tertulis resmi di dalam SPK terhadap risiko penurunan tanah. Anda dapat mengajukan Survey Lokasi dan Uji Kontur Tanah Gratis untuk area proyek Anda di seluruh penjuru DIY.`]}],image:Ne,relatedLinks:[{label:`Paket Jasa Pasang Paving All-In Komplit Bergaransi Resmi`,pageId:`layanan`,anchorText:`Lihat Layanan Jasa Pasang Bergaransi Resmi`},{label:`Simulasi RAB & Biaya Paving Mutu K-300 SNI`,pageId:`harga`,anchorText:`Hitung Estimasi Biaya di Kalkulator`},{label:`Jadwalkan Survey Lokasi & Uji Kontur Tanah Gratis di DIY`,pageId:`kontak`,anchorText:`Jadwalkan Survey Lokasi Gratis`}]},{id:`blog-3`,slug:`apa-itu-paving-block-k250`,title:`Apa itu Paving Block K250? Pengertian, Karakteristik, dan Keunggulannya`,category:`Spesifikasi Teknis`,date:`28 Januari 2026`,readTime:`4 menit baca`,summary:`Penjelasan standar kuat tekan K-250 (250 kg/cmยฒ), perbedaannya dengan K-300 dan K-400, serta panduan memilih mutu yang tepat agar investasi halaman tidak salah spesifikasi.`,content:[`Huruf "K" dalam istilah K-250 mengacu pada Karakteristik Kuat Tekan Beton (dalam satuan kg/cmยฒ), yang diuji menggunakan sampel kubus beton 15 x 15 x 15 cm setelah berumur 28 hari.`,`Paving block K-250 dirancang mampu menahan beban tekan hingga 250 kg/cmยฒ. Mutu ini sangat cocok untuk jalan setapak taman, pedestrian pejalan kaki, atau carport yang hanya menampung motor dan mobil city car kecil.`,`Namun jika Anda memiliki kendaraan keluarga jenis SUV (Fortuner, Pajero, Innova) atau sering dilewati truk muatan material, kami di PabrikPaving.Id merekomendasikan peningkatan ke standar K-300 (tebal 6cm) atau K-400 (tebal 8cm) agar sudut bata tidak mudah sompel.`],toc:[{id:`arti-k250`,title:`1. Memahami Arti Satuan Mutu Beton Karakteristik (K-250)`},{id:`peruntukan-k250`,title:`2. Peruntukan dan Batas Beban Ideal Mutu K-250`},{id:`kapan-upgrade`,title:`3. Kapan Harus Beralih ke Standar K-300 atau K-400?`}],sections:[{id:`arti-k250`,heading:`Memahami Arti Satuan Mutu Beton Karakteristik (K-250)`,level:2,paragraphs:[`Huruf "K" dalam istilah K-250 mengacu pada Karakteristik Kuat Tekan Beton (Karakteristieke Druksterkte), dengan satuan kilogram per sentimeter persegi (kg/cmยฒ). Pengujian ini dilakukan menggunakan sampel kubus beton berukuran 15 x 15 x 15 cm setelah mencapai umur perawatan hidrasi 28 hari.`,`Paving block dengan label K-250 berarti mampu menahan beban tekanan statis hingga 250 kg pada setiap 1 cmยฒ permukaannya sebelum mengalami retak struktural. Standar ini diproduksi menggunakan mesin press hidrolik dengan rasio semen dan pasir bergradasi tajam.`]},{id:`peruntukan-k250`,heading:`Peruntukan dan Batas Beban Ideal Mutu K-250`,level:2,paragraphs:[`Paving mutu K-250 sangat ideal diaplikasikan pada area dengan lalu lintas ringan hingga sedang. Contoh penggunaannya antara lain jalan setapak taman, pedestrian pejalan kaki, jogging track perumahan, dan pelataran carport rumah tinggal yang menampung sepeda motor serta mobil city car ringan.`,`Keunggulan utama mutu K-250 terletak pada efisiensi biaya. Anda memperoleh permukaan perkerasan yang rapi dan awet dengan harga material yang sangat bersahabat bagi anggaran pembangunan rumah tinggal.`]},{id:`kapan-upgrade`,heading:`Kapan Harus Beralih ke Standar K-300 atau K-400?`,level:2,paragraphs:[`Jika carport atau jalan komplek Anda rutin dilintasi mobil keluarga berbobot besar (seperti Innova Zenix, Fortuner, Pajero Sport), kami sangat menyarankan memilih standar K-300 tebal 6 cm agar sudut-sudut bata tidak mudah gumpil (spalling).`,`Sedangkan untuk area pergudangan ruko, pelataran parkir truk logistik, dan jalan desa yang kerap dilalui truk pasir atau tangki air, standar K-400 tebal 8 cm adalah keharusan mutlak. Anda dapat membandingkan rincian biayanya secara transparan di Tabel Harga Paving Mutu K200, K300, dan K400 atau berkonsultasi langsung dengan tim ahli kami di PabrikPaving.Id Jogja.`]}],image:Ae,relatedLinks:[{label:`Spesifikasi Mutu Beton K-300 & K-400 Uji Tekan SNI`,pageId:`layanan`,anchorText:`Pelajari Standar Mutu Beton Pabrik`},{label:`Bandingkan Harga Paving K-300 vs K-400`,pageId:`harga`,anchorText:`Cek Tabel Harga Paving SNI`}]},{id:`blog-4`,slug:`pemanfaatan-kembali-paving-block-bekas`,title:`Pemanfaatan Kembali Paving Block Bekas untuk Proyek Ramah Lingkungan`,category:`Keberlanjutan`,date:`15 Januari 2026`,readTime:`4 menit baca`,summary:`Bagaimana membongkar, membersihkan, dan menata ulang paving block lama menjadi jalan setapak kebun atau area resapan tanpa menghasilkan limbah puing.`,content:[`Salah satu keunggulan terbesar beton pracetak modular seperti paving block adalah sifatnya yang 100% reusable (dapat digunakan kembali).`,`Saat Anda melakukan renovasi halaman atau perubahan desain lanskap, paving block lama yang masih utuh dapat dibongkar secara hati-hati tanpa menghancurkan strukturnya.`,`Paving bekas dapat dimanfaatkan untuk: pembuatan batas taman (edging), jalan setapak kebun belakang, penutup area sumur resapan, atau disumbangkan untuk perbaikan jalan gang kampung di sekitar Anda.`],toc:[{id:`keunggulan-reusable`,title:`1. Keunggulan Ekologis Material Beton Modular`},{id:`ide-pemanfaatan`,title:`2. 4 Ide Kreatif Memanfaatkan Paving Lama`},{id:`renovasi-profesional`,title:`3. Layanan Bongkar Pasang & Renovasi`}],sections:[{id:`keunggulan-reusable`,heading:`Keunggulan Ekologis Material Beton Modular`,level:2,paragraphs:[`Salah satu keunggulan terbesar beton pracetak modular seperti paving block adalah sifatnya yang 100% dapat digunakan kembali (reusable) tanpa menyisakan timbunan puing semen yang merusak lingkungan.`,`Saat Anda melakukan renovasi halaman atau perubahan tata lanskap, paving block lama yang masih utuh dapat dibongkar secara hati-hati menggunakan linggis pipih tanpa merusak strukturnya.`]},{id:`ide-pemanfaatan`,heading:`4 Ide Kreatif Memanfaatkan Paving Lama`,level:2,paragraphs:[`Jangan terburu-buru membuang paving block dari renovasi rumah Anda. Berikut adalah beberapa pemanfaatan alternatif yang sangat fungsional:`],bulletPoints:[`Batas Taman (Garden Edging): Susun bata paving secara miring atau tegak untuk memisahkan area rumput dengan tanah tanaman hias.`,`Jalan Setapak Kebun Belakang (Stepping Stones): Pasang secara berselang-seling di sela rumput sebagai pijakan anti becek saat musim hujan.`,`Penutup Area Sumur Resapan: Jadikan lantai resapan air di sekitar talang atap rumah.`,`Bantuan Jalan Kampung: Sumbangkan untuk penataan lorong gang pemukiman yang masih berupa tanah becek.`]},{id:`renovasi-profesional`,heading:`Layanan Bongkar Pasang & Renovasi`,level:2,paragraphs:[`Bila Anda membutuhkan renovasi total dengan penataan ulang elevasi dan penambahan abu batu baru, tim kami siap membantu.`,`Konsultasikan kebutuhan perbaikan halaman Anda melalui Jasa Pasang & Renovasi Paving PabrikPaving.Id atau hubungi tim teknis di Halaman Kontak Kami.`]}],image:je,relatedLinks:[{label:`Jasa Renovasi & Pasang Ulang Paving Area Jogja`,pageId:`layanan`,anchorText:`Konsultasi Jasa Renovasi Paving`},{label:`Tanya Tim Tukang Berpengalaman PabrikPaving.Id`,pageId:`kontak`,anchorText:`Hubungi Kontak Teknisi Lapangan`}]},{id:`blog-5`,slug:`pengiriman-paving-block-dari-pabrik-ke-lokasi-proyek`,title:`Proses Pengiriman Paving Block dari Pabrik ke Lokasi Proyek di Yogyakarta`,category:`Proses Kerja`,date:`05 Januari 2026`,readTime:`3 menit baca`,summary:`Alur logistik pengiriman material langsung dari pabrik di Banguntapan Bantul: penataan di bak truk, perlindungan sudut, hingga penurunan material di lapangan.`,content:[`Pengiriman paving block memerlukan kehati-hatian khusus agar blok beton tidak sompel atau retak akibat benturan selama perjalanan.`,`Di PabrikPaving.Id, setiap tumpukan paving diatur berbaris rapi di atas bak armada dump truck kami. Kami mengalasi bagian dasar dan mengikat susunan agar tidak bergeser saat melewati jalan berkontur di Bantul maupun perbukitan Gunungkidul.`,`Tenaga bongkar muat kami akan menyusun kembali material di titik terdekat dengan area pasang agar memudahkan tukang bekerja tanpa perlu melangsir terlalu jauh.`],toc:[{id:`standar-muat`,title:`1. Standar Penataan di Bak Dump Truck Pabrik`},{id:`bongkar-muat-lapangan`,title:`2. Prosedur Penurunan Aman di Lokasi Proyek`},{id:`jangkauan-wilayah`,title:`3. Wilayah Pengiriman Harian di Seluruh DIY`}],sections:[{id:`standar-muat`,heading:`Standar Penataan di Bak Dump Truck Pabrik`,level:2,paragraphs:[`Pengiriman material paving block memerlukan standar kehati-hatian khusus agar sudut-sudut presisi bata tidak sompel akibat guncangan jalan selama distribusi.`,`Di PabrikPaving.Id, setiap tumpukan paving disusun berbaris terkunci di atas bak armada truk kami dengan bantalan peredam. Metode ini menjaga integritas fisik beton tetap sempurna hingga tiba di pintu gerbang proyek Anda.`]},{id:`bongkar-muat-lapangan`,heading:`Prosedur Penurunan Aman di Lokasi Proyek`,level:2,paragraphs:[`Armada kami dilengkapi tim bongkar muat berpengalaman yang menurunkan material secara manual per tumpukan, bukan ditumpahkan secara kasar.`,`Material akan ditata rapi sedekat mungkin dengan area kerja pemasangan untuk meminimalkan jarak lansir tukang dan mempercepat proses konstruksi.`]},{id:`jangkauan-wilayah`,heading:`Wilayah Pengiriman Harian di Seluruh DIY`,level:2,paragraphs:[`Berpusat di workshop Jl. Wonosari Banguntapan Bantul, armada harian kami menjangkau seluruh Kabupaten Sleman, Kota Yogyakarta, Bantul, Kulon Progo, hingga perbukitan Gunungkidul.`,`Pelajari kapasitas produksi pabrik kami di halaman Tentang PabrikPaving.Id atau jadwalkan pengiriman pesanan Anda melalui Kontak Customer Service.`]}],image:Me,relatedLinks:[{label:`Lokasi Workshop Pabrik di Banguntapan & Area Pengiriman DIY`,pageId:`kontak`,anchorText:`Lihat Alamat Workshop Pabrik`},{label:`Profil Pabrik & Kapasitas Cetak Mesin Press Hidrolik`,pageId:`tentang`,anchorText:`Tentang PabrikPaving.Id`}]},{id:`blog-6`,slug:`harga-paving-block-per-biji`,title:`Harga Paving Block Per Biji dan Per Meter: Ini Rincian Lengkapnya`,category:`Harga & Anggaran`,date:`20 Desember 2025`,readTime:`4 menit baca`,summary:`Panduan konversi hitung kebutuhan paving per biji (pcs) ke satuan meter persegi (mยฒ) untuk memudahkan penyusunan RAB proyek renovasi dan pembangunan perkerasan di Jogja.`,content:[`Banyak calon pembeli yang bingung ketika menghitung harga paving block per biji vs per meter persegi.`,`Sebagai contoh praktis: Paving Holland (bata presisi 10.5 x 21 cm) membutuhkan 44 pcs untuk menutup area 1 mยฒ. Jika harga per meter persegi Rp 78.000 (mutu K200), maka harga ekuivalen per bijinya adalah sekitar Rp 1.773.`,`Sementara untuk model Segi 6 (isi 25 pcs/mยฒ) dengan harga Rp 78.000/mยฒ, harga per bijinya sekitar Rp 3.120. Memahami rasio ini memudahkan Anda saat membeli material tambahan untuk tambal sulam atau perbaikan kecil.`],toc:[{id:`konversi-satuan`,title:`1. Perbedaan Satuan Biji vs Meter Persegi`},{id:`kebutuhan-model`,title:`2. Rasio Kebutuhan Biji per mยฒ Sesuai Model`},{id:`cara-hitung-rab`,title:`3. Langkah Praktis Menyusun RAB Halaman`}],sections:[{id:`konversi-satuan`,heading:`Perbedaan Satuan Biji vs Meter Persegi`,level:2,paragraphs:[`Saat merencanakan pemasangan perkerasan, banyak konsumen yang bingung menentukan apakah lebih menguntungkan membeli paving block dalam satuan biji (pcs) atau meter persegi (mยฒ).`,`Secara umum di pabrik dan distributor resmi Yogyakarta, penjualan material selalu mengacu pada satuan meter persegi (mยฒ). Namun, mengetahui konversi per bijinya sangat penting untuk proyek tambal sulam, penggantian sudut yang rusak, atau perhitungan belanja eceran.`]},{id:`kebutuhan-model`,heading:`Rasio Kebutuhan Biji per mยฒ Sesuai Model`,level:2,paragraphs:[`Setiap model paving block memiliki dimensi geometri yang berbeda, sehingga jumlah biji yang dibutuhkan untuk menutup area seluas 1 mยฒ juga bervariasi:`],bulletPoints:[`Model Bata (Holland 10.5 x 21 cm): Membutuhkan 44 pcs / mยฒ. Pada harga pabrik Rp 78.000/mยฒ, harga ekuivalen per bijinya adalah sekitar Rp 1.773,-.`,`Model Segi Enam (Hexagon): Membutuhkan 25 pcs / mยฒ. Pada harga pabrik Rp 78.000/mยฒ, harga ekuivalen per bijinya adalah sekitar Rp 3.120,-.`,`Model Grass Block (Paving Rumput 40 x 40 cm): Membutuhkan 6.25 s/d 8 pcs / mยฒ. Pada harga Rp 81.000/mยฒ, harga per bijinya sekitar Rp 10.125,-.`,`Kanstin Pembatas Tepi (15 x 25 x 40 cm): Membutuhkan 2.5 pcs per 1 meter lari (m1) dengan harga sekitar Rp 35.000,- per pcs.`]},{id:`cara-hitung-rab`,heading:`Langkah Praktis Menyusun RAB Halaman Proyek`,level:2,paragraphs:[`Untuk menghitung total biaya, kalikan luas area (panjang x lebar) dengan harga paving pilihan Anda, lalu tambahkan faktor cadangan (waste allowance) sebesar 3% hingga 5% untuk potongan bata di area tepi atau lengkungan.`,`Untuk kemudahan kalkulasi instan, gunakan alat bantu digital gratis di Kalkulator RAB Paving Block Otomatis atau pilih Paket Pemasangan All-In Garansi Resmi agar tidak perlu pusing memikirkan pasir alas, sewa stamper, dan upah tukang harian.`]}],image:T,relatedLinks:[{label:`Kalkulator Otomatis Kebutuhan Paving Sesuai Luasan Area`,pageId:`harga`,anchorText:`Hitung Otomatis di Kalkulator Paving`},{label:`Rincian Paket Pasang Komplit All-In Garansi Resmi`,pageId:`layanan`,anchorText:`Cek Paket Pemasangan Komplit`},{label:`Panduan Ragam Model & Bentuk Paving SNI`,pageId:`blog`,anchorText:`Pelajari Model Paving Block`}]}],Ve=[{id:`faq-1`,category:`Harga & Biaya`,question:`Berapa harga paving block per mยฒ di Jogja dan sekitarnya?`,shortAnswer:`Harga paving block langsung dari pabrik mulai Rp 78.000/mยฒ untuk model Holland 6cm K200, Segi 6, dan Kotak Persegi, hingga Rp 81.000/mยฒ untuk Grass Block 10cm.`,fullAnswer:`Harga pabrik di PabrikPaving.Id berkisar antara Rp 78.000 hingga Rp 114.000 per meter persegi untuk material tergantung ketebalan dan mutu kuat tekan K200/K300/K400. Untuk paket terima beres termasuk jasa pasang profesional, abu batu pondasi, pemadatan stamper, dan garansi resmi tertulis SPK, estimasi biaya mulai sekitar Rp 135.000/mยฒ. Khusus warna hitam dan merah terdapat biaya tambahan sebesar Rp 10.000,- per meter.`},{id:`faq-2`,category:`Garansi & Mutu`,question:`Apakah ada garansi resmi pemasangan paving block anti amblas?`,shortAnswer:`Ya, setiap pekerjaan pasang paket lengkap dilindungi garansi resmi tertulis SPK terhadap risiko penurunan tanah (amblas) dan pergeseran.`,fullAnswer:`Kami memberikan garansi pemeliharaan tertulis resmi di dalam surat perjanjian kerja (SPK). Jika terjadi amblas atau paving bergelombang akibat proses pemasangan dalam kurun waktu garansi, tim teknis kami akan memperbaikinya tanpa dipungut biaya tambahan.`},{id:`faq-3`,category:`Waktu & Durasi`,question:`Berapa lama proses pemasangan paving untuk rumah tinggal?`,shortAnswer:`Untuk luasan rumah tinggal rata-rata 50 hingga 150 mยฒ, proses pengerjaan memakan waktu 3 sampai 5 hari kerja.`,fullAnswer:`Tahapan pengerjaan meliputi: Hari ke-1 perataan dan pemadatan tanah dasar menggunakan mesin stamper; Hari ke-2 gelar abu batu dan pemasangan kanstin pengunci; Hari ke-3 dan 4 penyusunan paving pola presisi; Hari ke-5 pengisian pasir sela (joint sand) dan pemadatan akhir dengan compactor roller.`},{id:`faq-4`,category:`Kekuatan Beton`,question:`Apa perbedaan paving mutu K-300 dan K-400, dan mana yang saya butuhkan?`,shortAnswer:`K-300 (tebal 6cm) ideal untuk carport mobil pribadi dan perumahan. K-400 (tebal 8cm) dirancang untuk truk barang, pergudangan, dan area lalu lintas berat.`,fullAnswer:`K-300 mampu menahan beban tekan 300 kg/cmยฒ, sangat aman untuk mobil keluarga, SUV, dan kendaraan pick-up harian. Sedangkan K-400 dibuat dengan mesin pres hidrolik berkekuatan 400 kg/cmยฒ dan tebal 8cm khusus untuk menahan beban muatan sumbu terberat truk niaga dan bus pariwisata.`},{id:`faq-5`,category:`Pola & Desain`,question:`Pola susunan paving apa yang paling kokoh dan anti amblas?`,shortAnswer:`Pola Herringbone 90ยฐ (tulang ikan) adalah pola yang memiliki daya interlocking mekanis tertinggi dan paling direkomendasikan untuk area kendaraan.`,fullAnswer:`Berdasarkan uji ketahanan perkerasan lentur beton, pola Herringbone 90 derajat mendistribusikan beban roda ban ke segala arah secara seimbang. Gaya rem dan akselerasi mobil diserap oleh penguncian antar bata, sehingga paving tidak mudah bergeser maupun amblas dibanding pola susun bata biasa.`},{id:`faq-6`,category:`Pemesanan & Survey`,question:`Bagaimana cara meminta survey lokasi dan konsultasi kebutuhan?`,shortAnswer:`Survey lokasi dan penghitungan volume gratis untuk area Kota Jogja, Sleman, Bantul, Kulon Progo, dan Gunungkidul cukup dengan menghubungi WhatsApp kami.`,fullAnswer:`Anda cukup mengirimkan lokasi proyek dan perkiraan luasan melalui WhatsApp. Tim estimator kami akan menjadwalkan kunjungan survey gratis untuk mengukur kontur tanah, mengecek kondisi resapan, dan membawakan sampel produk paving langsung ke tempat Anda.`}],He=[{name:`Kabupaten Sleman`,center:`Depok, Mlati, Ngaglik, Gamping, Prambanan, Seyegan`,deliveryTime:`24 Jam (Armada Harian)`,surveyStatus:`Gratis Survey Lokasi`,popularModel:`Bata 6cm & Grass Block Resapan`,completedProjects:145},{name:`Kabupaten Bantul`,center:`Banguntapan, Sewon, Kasihan, Bantul Kota, Jetis, Piyungan`,deliveryTime:`Same-Day / 24 Jam (Dekat Pabrik Jl. Wonosari)`,surveyStatus:`Gratis Survey Lokasi`,popularModel:`Bata 6cm & 8cm Parkiran Ruko`,completedProjects:190},{name:`Kota Yogyakarta`,center:`Danurejan, Gondokusuman, Umbulharjo, Kraton, Wirobrajan, Kotagede`,deliveryTime:`24 Jam (Akses Truk Khusus Kota)`,surveyStatus:`Gratis Survey Lokasi`,popularModel:`Hexagon Segi Enam & Bata Warna`,completedProjects:110},{name:`Kabupaten Kulon Progo`,center:`Wates, Temon (Kawasan Bandara YIA), Sentolo, Pengasih, Nanggulan`,deliveryTime:`24 - 48 Jam Terjadwal`,surveyStatus:`Gratis Survey Lokasi`,popularModel:`Bata Heavy Duty 8cm Kavling Perumahan`,completedProjects:65},{name:`Kabupaten Gunungkidul`,center:`Wonosari, Patuk, Playen, Semanu, Karangmojo`,deliveryTime:`24 - 48 Jam Terjadwal`,surveyStatus:`Gratis Survey Lokasi`,popularModel:`Bata 6cm & 8cm Kontur Tanjakan/Perbukitan`,completedProjects:48}],Ue=o((e=>{var t=Symbol.for(`react.transitional.element`);function n(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.jsx=n,e.jsxs=n})),E=o(((e,t)=>{t.exports=Ue()}))(),We=({currentPage:e,onSelectPage:t})=>{let[n,r]=(0,_.useState)(!1),i=[{id:`home`,label:`Home`},{id:`layanan`,label:`Layanan Kami`},{id:`harga`,label:`Harga Paving`},{id:`galeri`,label:`Galeri Proyek`},{id:`tentang`,label:`Tentang Kami`},{id:`blog`,label:`Blog`},{id:`kontak`,label:`Kontak Kami`}],a=e=>{t(e),r(!1),window.scrollTo({top:0,behavior:`smooth`})};return(0,E.jsxs)(`header`,{className:`sticky top-0 z-50 bg-white border-b border-[#E1E4E8] shadow-xs`,children:[(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-3 sm:px-8 lg:px-12 flex items-center justify-between h-[68px] sm:h-[80px]`,children:[(0,E.jsx)(`div`,{className:`shrink-0 pr-2 sm:pr-6 lg:pr-8`,children:(0,E.jsx)(`a`,{href:`/`,onClick:e=>{e.preventDefault(),a(`home`)},className:`flex items-center hover:opacity-95 transition-opacity cursor-pointer text-left py-1`,"aria-label":`PabrikPaving.Id - Beranda Utama`,children:(0,E.jsx)(`img`,{src:`https://pabrikpaving.id/wp-content/uploads/2026/09/logo_pabrik_paving_transparent.webp`,alt:`PabrikPaving.Id - Pabrik & Jasa Pasang Paving Block Jogja`,title:`PabrikPaving.Id - Produsen & Kontraktor Paving Block Jogja`,className:`h-[34px] sm:h-[42px] lg:h-[46px] w-auto object-contain`,width:336,height:75})})}),(0,E.jsx)(`nav`,{className:`hidden lg:flex items-center gap-2.5 xl:gap-6 mx-auto`,children:i.map(t=>{let n=e===t.id,r=t.id===`home`?`/`:`/${t.id}/`;return(0,E.jsx)(`a`,{href:r,onClick:e=>{e.preventDefault(),a(t.id)},className:`text-[13px] xl:text-[15px] transition-all py-1 border-b-2 cursor-pointer whitespace-nowrap ${n?`text-[#1B2631] font-bold border-[#1B2631]`:`text-[#3D4C5A] font-medium border-transparent hover:text-[#9A4800] hover:border-[#B35900]`}`,children:t.label},t.id)})}),(0,E.jsxs)(`div`,{className:`flex items-center gap-1.5 sm:gap-3 shrink-0 pl-1 sm:pl-4 xl:pl-6`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20pemesanan%20dan%20pemasangan%20paving`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center justify-center gap-1 sm:gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs sm:text-sm px-2.5 sm:px-3.5 xl:px-5 h-[36px] sm:h-[48px] rounded-lg transition-all whitespace-nowrap shadow-xs`,children:[(0,E.jsx)(`span`,{className:`text-sm sm:text-base`,"aria-hidden":`true`,children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{className:`hidden xl:inline`,children:`Hubungi via WhatsApp`}),(0,E.jsx)(`span`,{className:`hidden sm:inline xl:hidden`,children:`Chat WA`}),(0,E.jsx)(`span`,{className:`sm:hidden text-[11px]`,children:`WA`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>r(!n),className:`lg:hidden w-9 h-9 sm:w-11 sm:h-11 rounded-lg border border-[#E1E4E8] bg-white text-[#1B2631] flex items-center justify-center text-lg sm:text-xl cursor-pointer hover:bg-slate-50 transition-colors shrink-0`,"aria-expanded":n,"aria-label":`Buka menu navigasi`,children:n?`โœ•`:`โ˜ฐ`})]})]}),n&&(0,E.jsx)(`div`,{className:`lg:hidden border-t border-[#E1E4E8] bg-white shadow-xl animate-fadeIn max-h-[calc(100vh-140px)] overflow-y-auto`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 py-4 space-y-1`,children:[i.map(t=>{let n=e===t.id,r=t.id===`home`?`/`:`/${t.id}/`;return(0,E.jsxs)(`a`,{href:r,onClick:e=>{e.preventDefault(),a(t.id)},className:`w-full text-left px-4 py-3 rounded-lg text-sm font-semibold transition-colors flex items-center justify-between min-h-[46px] ${n?`bg-slate-100 text-[#1B2631]`:`text-[#3D4C5A] hover:bg-slate-50 hover:text-[#9A4800]`}`,children:[(0,E.jsx)(`span`,{children:t.label}),n&&(0,E.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-[#E67E22]`})]},t.id)}),(0,E.jsx)(`div`,{className:`pt-3 mt-2 border-t border-[#E1E4E8]`,children:(0,E.jsx)(`a`,{href:`/privacy/`,onClick:e=>{e.preventDefault(),a(`privacy`)},className:`block w-full text-center py-2.5 text-xs text-[#475569] hover:underline`,children:`Kebijakan Privasi (Privacy Policy)`})})]})})]})},Ge=({onNavigate:e})=>(0,E.jsxs)(`footer`,{className:`bg-[#1B2631] text-[#C9D1D9] pt-0`,children:[(0,E.jsx)(`div`,{className:`paver-strip`,"aria-hidden":`true`,children:Array.from({length:40}).map((e,t)=>(0,E.jsx)(`span`,{},t))}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 py-16`,children:[(0,E.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-10`,children:[(0,E.jsxs)(`div`,{className:`space-y-4`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`inline-flex items-center bg-white py-2 px-3.5 rounded-xl border border-white/20 shadow-md hover:bg-slate-50 transition-all cursor-pointer text-left group`,"aria-label":`PabrikPaving.Id - Beranda Utama`,children:(0,E.jsx)(`img`,{src:`https://pabrikpaving.id/wp-content/uploads/2026/09/logo_pabrik_paving_transparent.webp`,alt:`PabrikPaving.Id - Pabrik & Jasa Pasang Paving Block Jogja`,title:`PabrikPaving.Id - Produsen & Kontraktor Paving Block Jogja`,className:`h-[38px] sm:h-[42px] w-auto object-contain group-hover:scale-[1.02] transition-transform`,width:336,height:75})}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm leading-relaxed text-[#C9D1D9]`,children:`Pabrik produsen langsung dan kontraktor jasa pemasangan paving block, hexagon, dan grass block berstandar kuat tekan K-300+ dengan garansi resmi tertulis SPK anti amblas untuk area Yogyakarta dan sekitarnya.`})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`p`,{className:`font-heading font-bold text-base text-white mb-4`,children:`Layanan & Produk`}),(0,E.jsxs)(`ul`,{className:`space-y-2.5 text-xs sm:text-sm`,children:[(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Beranda Utama`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/layanan/`,onClick:t=>{t.preventDefault(),e(`layanan`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Layanan Kami`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/harga/`,onClick:t=>{t.preventDefault(),e(`harga`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Daftar Harga & Estimasi Biaya`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/galeri/`,onClick:t=>{t.preventDefault(),e(`galeri`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Galeri Proyek Dokumentasi`})})]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`p`,{className:`font-heading font-bold text-base text-white mb-4`,children:`Perusahaan & Informasi`}),(0,E.jsxs)(`ul`,{className:`space-y-2.5 text-xs sm:text-sm text-[#C9D1D9]`,children:[(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/tentang/`,onClick:t=>{t.preventDefault(),e(`tentang`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Tentang PabrikPaving.Id`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/blog/`,onClick:t=>{t.preventDefault(),e(`blog`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Blog & Panduan Paving`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/kontak/`,onClick:t=>{t.preventDefault(),e(`kontak`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Kontak & Permintaan Survey`})}),(0,E.jsx)(`li`,{children:(0,E.jsx)(`a`,{href:`/privacy/`,onClick:t=>{t.preventDefault(),e(`privacy`)},className:`hover:text-[#F2994E] transition-colors cursor-pointer text-left inline-block`,children:`Kebijakan Privasi`})})]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`p`,{className:`font-heading font-bold text-base text-white mb-4`,children:`Kantor & Workshop Pabrik`}),(0,E.jsxs)(`div`,{className:`space-y-2.5 text-xs sm:text-sm text-[#C9D1D9]`,children:[(0,E.jsx)(`p`,{children:`๐Ÿ“ Jl. Wonosari KM 4, Gang Nuri 98, Banguntapan, Bantul, DIY 55198`}),(0,E.jsx)(`p`,{children:`๐Ÿ“ž 0818-0648-3333 (Layanan Konsultasi Cepat)`}),(0,E.jsx)(`p`,{children:`โœ‰๏ธ info@pabrikpaving.id`}),(0,E.jsx)(`p`,{children:`โฐ Senin โ€“ Sabtu: 08.00 โ€“ 17.00 WIB`})]}),(0,E.jsx)(`div`,{className:`mt-4`,children:(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20berkonsultasi%20paving`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs py-2.5 min-h-[42px] rounded-md transition-colors shadow-xs`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Hubungi via WhatsApp`})]})})]})]}),(0,E.jsxs)(`div`,{className:`mt-10 pt-8 border-t border-slate-800 text-xs text-[#94A3B8]`,children:[(0,E.jsx)(`p`,{className:`font-heading font-semibold text-white mb-2.5 text-xs tracking-wider uppercase`,children:`Artikel Populer Teknik Sipil & Panduan Pemasangan:`}),(0,E.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-2 leading-relaxed`,children:[(0,E.jsx)(`a`,{href:`/blog/model-paving-block`,className:`hover:text-[#F2994E] transition-colors`,children:`8+ Model Paving Block`}),(0,E.jsx)(`span`,{className:`text-slate-700`,children:`ยท`}),(0,E.jsx)(`a`,{href:`/blog/stabilisasi-tanah-lempung-paving-block-jogja`,className:`hover:text-[#F2994E] transition-colors`,children:`Stabilisasi Tanah Lempung Jogja`}),(0,E.jsx)(`span`,{className:`text-slate-700`,children:`ยท`}),(0,E.jsx)(`a`,{href:`/blog/kelebihan-dan-kekurangan-paving-block-dibandingkan-aspal`,className:`hover:text-[#F2994E] transition-colors`,children:`Paving vs Aspal`}),(0,E.jsx)(`span`,{className:`text-slate-700`,children:`ยท`}),(0,E.jsx)(`a`,{href:`/blog/apa-itu-paving-block-k250`,className:`hover:text-[#F2994E] transition-colors`,children:`Spesifikasi Kuat Tekan K250`}),(0,E.jsx)(`span`,{className:`text-slate-700`,children:`ยท`}),(0,E.jsx)(`a`,{href:`/blog/harga-paving-block-per-biji`,className:`hover:text-[#F2994E] transition-colors`,children:`Harga Paving Per Biji & Mยฒ`})]})]}),(0,E.jsx)(`div`,{className:`h-px bg-slate-800 my-6`}),(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-center justify-between gap-3 text-xs text-[#CBD5E1]`,children:[(0,E.jsx)(`span`,{children:`ยฉ 2026 PabrikPaving.Id โ€” Seluruh Hak Cipta Dilindungi. SNI 03-0691-1996 Certified.`}),(0,E.jsx)(`div`,{className:`flex items-center gap-4`,children:(0,E.jsx)(`a`,{href:`/privacy/`,onClick:t=>{t.preventDefault(),e(`privacy`)},className:`hover:text-white transition-colors cursor-pointer py-1`,children:`Kebijakan Privasi`})})]})]})]}),Ke=()=>{let[e,t]=(0,_.useState)(!1);return(0,_.useEffect)(()=>{let e=setTimeout(()=>{t(!0)},2500);return()=>clearTimeout(e)},[]),(0,E.jsxs)(`aside`,{"aria-label":`Aksi Cepat WhatsApp`,className:`fixed bottom-4 right-4 sm:bottom-6 sm:right-6 z-50`,children:[e&&(0,E.jsxs)(`div`,{className:`absolute bottom-full right-0 mb-3 w-[calc(100vw-32px)] max-w-[280px] sm:max-w-[290px] bg-white rounded-2xl p-3 sm:p-3.5 shadow-2xl border border-[#E1E4E8] text-[#1B2631] animate-fadeIn`,children:[(0,E.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`w-2.5 h-2.5 rounded-full bg-emerald-500 animate-pulse`}),(0,E.jsx)(`span`,{className:`text-[11px] font-bold uppercase tracking-wider text-[#9A4800]`,children:`Customer Service Online`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>t(!1),className:`text-[#546274] hover:text-[#1B2631] text-xs font-bold w-5 h-5 flex items-center justify-center rounded-full hover:bg-slate-100 cursor-pointer`,"aria-label":`Tutup pesan`,children:`โœ•`})]}),(0,E.jsxs)(`p`,{className:`text-xs text-[#3D4C5A] mt-1.5 leading-relaxed`,children:[`Butuh info harga atau ingin jadwalkan `,(0,E.jsx)(`strong`,{children:`survey lokasi gratis`}),` di area Jogja? Chat teknisi kami sekarang!`]}),(0,E.jsxs)(`div`,{className:`mt-2.5 pt-2 border-t border-slate-100 flex items-center justify-between text-[11px]`,children:[(0,E.jsx)(`span`,{className:`text-[#334155]`,children:`Balas cepat < 5 mnt`}),(0,E.jsx)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20paving%20block`,target:`_blank`,rel:`noopener noreferrer`,className:`font-bold text-emerald-700 hover:underline`,children:`Mulai Chat โ†’`})]}),(0,E.jsx)(`div`,{className:`absolute -bottom-2 right-6 w-3.5 h-3.5 bg-white border-r border-b border-[#E1E4E8] rotate-45`})]}),(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20paving%20block`,target:`_blank`,rel:`noopener noreferrer`,className:`flex items-center gap-2 sm:gap-2.5 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs sm:text-sm py-2.5 px-3.5 sm:py-3.5 sm:px-5 rounded-full shadow-[0_10px_25px_rgba(37,211,102,0.4)] transition-all duration-300 hover:scale-105 active:scale-95 group border-2 border-white/60`,"aria-label":`Konsultasi WhatsApp PabrikPaving.Id`,children:[(0,E.jsx)(`svg`,{className:`w-5 h-5 sm:w-6 sm:h-6 fill-[#1B2631] shrink-0`,viewBox:`0 0 24 24`,"aria-hidden":`true`,children:(0,E.jsx)(`path`,{d:`M.057 24l1.687-6.163c-1.041-1.804-1.588-3.849-1.587-5.946.003-6.556 5.338-11.891 11.893-11.891 3.181.001 6.167 1.24 8.413 3.488 2.245 2.248 3.481 5.236 3.48 8.414-.003 6.557-5.338 11.892-11.893 11.892-1.99-.001-3.951-.5-5.688-1.448l-6.305 1.654zm6.597-3.807c1.676.995 3.276 1.591 5.392 1.592 5.448 0 9.886-4.434 9.889-9.885.002-5.462-4.415-9.89-9.881-9.892-5.452 0-9.887 4.434-9.889 9.884-.001 2.225.651 3.891 1.746 5.634l-.999 3.648 3.742-.981zm11.387-5.464c-.074-.124-.272-.198-.57-.347-.297-.149-1.758-.868-2.031-.967-.272-.099-.47-.149-.669.149-.198.297-.768.967-.941 1.165-.173.198-.347.223-.644.074-.297-.149-1.255-.462-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.521.151-.172.2-.296.3-.495.099-.198.05-.372-.025-.521-.075-.148-.669-1.611-.916-2.206-.242-.579-.487-.501-.669-.51l-.57-.01c-.198 0-.52.074-.792.372s-1.04 1.016-1.04 2.479 1.065 2.876 1.213 3.074c.149.198 2.095 3.2 5.076 4.487.709.306 1.263.489 1.694.626.712.226 1.36.194 1.872.118.571-.085 1.758-.719 2.006-1.413.248-.695.248-1.29.173-1.414z`})}),(0,E.jsx)(`span`,{className:`hidden sm:inline font-bold tracking-tight text-[13px] sm:text-sm`,children:`Konsultasi WhatsApp`}),(0,E.jsx)(`span`,{className:`sm:hidden font-bold tracking-tight text-xs`,children:`WhatsApp`}),(0,E.jsxs)(`span`,{className:`relative flex h-2.5 w-2.5 shrink-0`,children:[(0,E.jsx)(`span`,{className:`animate-ping absolute inline-flex h-full w-full rounded-full bg-emerald-800 opacity-75`}),(0,E.jsx)(`span`,{className:`relative inline-flex rounded-full h-2.5 w-2.5 bg-[#0f7a36]`})]})]})]})},qe=({onScrollToCalculator:e,onScrollToProducts:t})=>(0,E.jsxs)(`section`,{id:`hero`,className:`relative bg-[#2C3E50] overflow-hidden text-white`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 py-16 lg:py-24 relative z-10`,children:(0,E.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-10 lg:gap-14 items-center`,children:[(0,E.jsxs)(`div`,{className:`lg:col-span-7 space-y-6`,children:[(0,E.jsxs)(`div`,{className:`inline-flex items-center gap-2 bg-[#1B2631]/80 backdrop-blur-md border border-white/20 text-white text-[11px] sm:text-xs font-semibold px-3 py-1.5 rounded-full shadow-xs max-w-full`,children:[(0,E.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-emerald-400 animate-pulse shrink-0`}),(0,E.jsx)(`span`,{className:`text-[#C9D1D9] truncate`,children:`SNI 03-0691-1996`}),(0,E.jsx)(`span`,{className:`text-white/40`,children:`ยท`}),(0,E.jsx)(`span`,{className:`text-[#F2994E] font-bold shrink-0`,children:`Press 250 Bar`})]}),(0,E.jsx)(`h1`,{className:`text-2xl sm:text-4xl lg:text-[50px] font-heading font-bold leading-[1.2] tracking-tight text-white max-w-2xl text-balance`,children:`Pabrik & Jasa Pasang Paving Block Terpercaya di Jogja`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] leading-relaxed max-w-xl`,children:`Spesialis manufaktur conblock beton mutu tinggi K-300 hingga K-400 serta kontraktor jasa pasang borongan bergaransi resmi SPK untuk rumah, ruko, kawasan perumahan, dan infrastruktur komersial di Daerah Istimewa Yogyakarta.`}),(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row items-stretch sm:items-center gap-3 pt-2 w-full sm:w-auto`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20dan%20survey%20lokasi%20paving`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs sm:text-base px-4 sm:px-6 h-[46px] sm:h-[52px] rounded-lg transition-all shadow-lg hover:shadow-xl cursor-pointer text-center`,children:[(0,E.jsx)(`span`,{className:`text-base sm:text-lg`,children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{className:`hidden sm:inline`,children:`Konsultasi & Survey Lokasi Gratis`}),(0,E.jsx)(`span`,{className:`sm:hidden`,children:`Konsultasi & Survey Gratis`})]}),(0,E.jsxs)(`a`,{href:`#calculator`,onClick:t=>{t.preventDefault(),e()},className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 px-4 sm:px-6 h-[46px] sm:h-[52px] rounded-lg border-2 border-white/80 hover:border-white bg-white/10 hover:bg-white text-white hover:text-[#1B2631] text-xs sm:text-base font-semibold transition-all cursor-pointer backdrop-blur-xs text-center`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ“`}),(0,E.jsx)(`span`,{children:`Hitung Estimasi Biaya`})]})]}),(0,E.jsxs)(`div`,{className:`pt-6 border-t border-white/15 grid grid-cols-2 sm:grid-cols-4 gap-3 sm:gap-4 text-sm`,children:[(0,E.jsxs)(`div`,{className:`border-l-2 border-[#F2994E] pl-2.5 sm:pl-3`,children:[(0,E.jsx)(`span`,{className:`block font-heading font-bold text-xl sm:text-2xl text-[#F2994E] tabular-nums`,children:`K-300+`}),(0,E.jsx)(`span`,{className:`text-xs text-[#C9D1D9]`,children:`Uji Kuat Tekan SNI`})]}),(0,E.jsxs)(`div`,{className:`border-l-2 border-emerald-400 pl-2.5 sm:pl-3`,children:[(0,E.jsx)(`span`,{className:`block font-heading font-bold text-xl sm:text-2xl text-emerald-400 tabular-nums`,children:`Garansi`}),(0,E.jsx)(`span`,{className:`text-xs text-[#C9D1D9]`,children:`Resmi Tertulis SPK`})]}),(0,E.jsxs)(`div`,{className:`border-l-2 border-white/40 pl-2.5 sm:pl-3`,children:[(0,E.jsx)(`span`,{className:`block font-heading font-bold text-xl sm:text-2xl text-white tabular-nums`,children:`10+ Tahun`}),(0,E.jsx)(`span`,{className:`text-xs text-[#C9D1D9]`,children:`Pengalaman Lapangan`})]}),(0,E.jsxs)(`div`,{className:`border-l-2 border-white/40 pl-2.5 sm:pl-3`,children:[(0,E.jsx)(`span`,{className:`block font-heading font-bold text-xl sm:text-2xl text-white tabular-nums`,children:`1.500 mยฒ`}),(0,E.jsx)(`span`,{className:`text-xs text-[#C9D1D9]`,children:`Kapasitas Harian`})]})]})]}),(0,E.jsx)(`div`,{className:`lg:col-span-5 relative mt-6 lg:mt-0`,children:(0,E.jsxs)(`div`,{className:`relative rounded-2xl overflow-hidden shadow-2xl border border-white/10 group aspect-4/3 lg:aspect-4/5 bg-slate-800`,children:[(0,E.jsxs)(`picture`,{children:[(0,E.jsx)(`source`,{media:`(max-width: 640px)`,srcSet:Pe,type:`image/webp`}),(0,E.jsx)(`img`,{src:Fe,srcSet:`${Pe} 440w, ${Fe} 800w`,sizes:`(max-width: 640px) 100vw, 50vw`,alt:`Pemasangan paving block carport rapi presisi di rumah tinggal daerah Sleman Yogyakarta`,title:`Pabrik dan Jasa Pasang Paving Block Mutu K-300 SNI Terpercaya di Jogja`,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,fetchPriority:`high`,loading:`eager`,decoding:`async`,width:800,height:1e3,referrerPolicy:`no-referrer`})]}),(0,E.jsxs)(`div`,{className:`absolute top-3 left-3 sm:top-4 sm:left-4 z-10 bg-[#1B2631]/85 backdrop-blur-md text-white text-[10px] sm:text-[11px] font-medium px-2.5 py-1 sm:px-3 sm:py-1.5 rounded-lg border border-white/15 flex items-center gap-1.5 shadow-sm`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ“`}),(0,E.jsx)(`span`,{children:`Proyek Banguntapan ยท DIY`})]}),(0,E.jsxs)(`div`,{className:`absolute top-3 right-3 sm:top-4 sm:right-4 z-10 bg-emerald-600/90 backdrop-blur-md text-white text-[10px] sm:text-[11px] font-bold px-2 py-1 sm:px-2.5 sm:py-1.5 rounded-lg border border-emerald-400/30 flex items-center gap-1 shadow-sm`,children:[(0,E.jsx)(`span`,{children:`โœ“`}),(0,E.jsx)(`span`,{children:`Mutu K-300 SNI`})]}),(0,E.jsxs)(`div`,{className:`absolute left-3 bottom-3 sm:left-6 sm:bottom-6 bg-white/95 backdrop-blur-md text-[#1B2631] p-2.5 sm:p-4 rounded-xl shadow-xl flex items-center gap-2.5 sm:gap-3.5 max-w-[240px] sm:max-w-[280px]`,children:[(0,E.jsx)(`div`,{className:`w-8 h-8 sm:w-10 sm:h-10 rounded-full bg-emerald-600 text-white flex items-center justify-center text-sm sm:text-lg font-bold shrink-0`,children:`โœ“`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`font-heading font-bold text-xs sm:text-base leading-tight block`,children:`Garansi Resmi SPK`}),(0,E.jsx)(`p`,{className:`text-[10px] sm:text-xs text-[#334155] leading-snug`,children:`Jaminan perbaikan jika amblas/turun`})]})]})]})})]})})]}),Je=({onNavigateToGallery:e})=>{let[t,n]=(0,_.useState)(`all`),[r,i]=(0,_.useState)(null),a=[{id:`t1`,gridClass:`lg:col-span-6 min-h-[220px] sm:min-h-[280px]`,category:`Area Rumah`,categoryKey:`rumah`,location:`Sleman, DIY`,title:`Carport & Halaman Rumah Pola 3 Dimensi`,description:`Pemasangan carport dan halaman rumah tinggal minimalis di Sleman dengan perpaduan paving 3D warna abu, merah, dan hitam menghasilkan visual ilusi optik kubus mewah dan kokoh menahan mobil keluarga harian.`,specs:`Luas 120 mยฒ ยท Paving 3D K-300 ยท Durasi 3 Hari`,image:we},{id:`t2`,gridClass:`lg:col-span-3 min-h-[200px] sm:min-h-[240px]`,category:`Parkiran`,categoryKey:`parkiran`,location:`Bantul, DIY`,title:`Area Parkir Ruko & Bisnis Terpadu`,description:`Pemasangan area parkir ruko komersial di Banguntapan Bantul dengan marka parkir presisi. Dirancang khusus menahan lalu lintas mobil harian dan kendaraan niaga berat tanpa risiko amblas.`,specs:`Luas 480 mยฒ ยท Paving Bata 8cm K-400 ยท Durasi 6 Hari`,image:Te},{id:`t3`,gridClass:`lg:col-span-3 min-h-[200px] sm:min-h-[240px]`,category:`Pameran Outdoor`,categoryKey:`pameran`,location:`Kota Jogja`,title:`Courtyard Outdoor Kafe & Resto Modern`,description:`Penataan area outdoor kafe di Kotabaru Jogja dengan susunan paving hexagon modern berpadu taman tropis asri. Permukaan rata, tidak licin saat hujan, dan sangat instagramable bagi pengunjung.`,specs:`Luas 210 mยฒ ยท Hexagon 6cm K-300 ยท Durasi 4 Hari`,image:Ee},{id:`t4`,gridClass:`lg:col-span-3 min-h-[200px] sm:min-h-[240px]`,category:`Jalan Komplek`,categoryKey:`jalan`,location:`Sleman, DIY`,title:`Jalur Pedestrian & Jalan Lingkungan Wajik Bintang`,description:`Pemasangan jalan lingkungan dan jalur pedestrian perumahan asri di Sleman dengan motif wajik bintang kombinasi warna merah, abu, dan putih. Kuat, anti selip, dan memberikan aksen lanskap berkelas.`,specs:`Luas 850 mยฒ ยท Wajik Kombinasi K-300 ยท Durasi 9 Hari`,image:De},{id:`t5`,gridClass:`lg:col-span-3 min-h-[200px] sm:min-h-[240px]`,category:`Area Rumah`,categoryKey:`rumah`,location:`Sleman, DIY`,title:`Driveway & Carport Rumah Kotak Persegi`,description:`Pemasangan driveway akses masuk carport rumah tinggal minimalis di Sleman dengan paving kotak persegi presisi. Susunan garis lurus simetris memberikan kesan modern, rapi, dan kokoh menahan mobil harian.`,specs:`Luas 160 mยฒ ยท Kotak Persegi 20x20 K-300 ยท Durasi 3 Hari`,image:C},{id:`t6`,gridClass:`lg:col-span-6 min-h-[220px] sm:min-h-[280px]`,category:`Jalan Komplek`,categoryKey:`jalan`,location:`Bantul, DIY`,title:`Armada Dump Truck & Distribusi Pabrik`,description:`Armada dump truck dan tim bongkar muat profesional pabrik SPS Makmur Kreasi Beton melayani pengiriman harian material paving block langsung ke lokasi proyek perumahan, ruko, dan jalan desa di seluruh wilayah DIY.`,specs:`Kapasitas 500+ mยฒ/hari ยท Armada Cepat Siap Kirim`,image:w}],o=t===`all`?a:a.filter(e=>e.categoryKey===t);return(0,E.jsxs)(`section`,{id:`gallery`,className:`py-20 lg:py-24 bg-[#EDEAE3] text-[#1B2631]`,children:[(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-10`,children:[(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Galeri Hasil Kerja`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-2`,children:`Proyek pemasangan yang sudah kami selesaikan di area Jogja dan sekitarnya.`})]}),(0,E.jsx)(`div`,{className:`flex items-center justify-start sm:justify-center gap-2 mb-8 overflow-x-auto no-scrollbar py-1 -mx-4 px-4 sm:mx-0 sm:px-0`,children:[{id:`all`,label:`Semua`},{id:`rumah`,label:`Area Rumah`},{id:`pameran`,label:`Pameran Outdoor`},{id:`parkiran`,label:`Parkiran`},{id:`jalan`,label:`Jalan Komplek`}].map(e=>(0,E.jsx)(`button`,{type:`button`,onClick:()=>n(e.id),className:`h-10 sm:h-11 px-4 sm:px-5 rounded-full text-xs sm:text-sm font-semibold transition-all cursor-pointer border whitespace-nowrap shrink-0 ${t===e.id?`bg-[#1B2631] text-white border-[#1B2631] shadow-xs`:`bg-white sm:bg-transparent text-[#3D4C5A] border-[#E1E4E8] hover:bg-white`}`,children:e.label},e.id))}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-12 gap-3.5`,children:o.map(e=>(0,E.jsxs)(`div`,{onClick:()=>i(e),className:`${e.gridClass} relative rounded-xl overflow-hidden shadow-xs hover:shadow-xl transition-all cursor-pointer group bg-slate-900`,children:[(0,E.jsx)(`img`,{src:e.image,alt:e.title,title:`${e.title} - ${e.location}`,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,loading:`lazy`,decoding:`async`,width:800,height:600}),(0,E.jsx)(`div`,{className:`absolute inset-0 bg-gradient-to-t from-[#1B2631]/90 via-[#1B2631]/20 to-transparent transition-opacity`}),(0,E.jsxs)(`div`,{className:`absolute inset-x-0 bottom-0 p-4 flex items-end justify-between gap-3 text-white`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h3`,{className:`font-heading font-bold text-sm sm:text-base leading-tight drop-shadow-sm group-hover:text-[#F2994E] transition-colors`,children:e.title}),(0,E.jsxs)(`span`,{className:`text-xs text-slate-200 block mt-0.5`,children:[`๐Ÿ“ `,e.location]})]}),(0,E.jsx)(`span`,{className:`bg-[#B35900] text-white font-semibold text-[11px] px-2.5 py-1 rounded-sm shrink-0 whitespace-nowrap shadow-xs`,children:e.category})]})]},e.id))}),(0,E.jsx)(`div`,{className:`flex justify-center mt-10`,children:(0,E.jsx)(`a`,{href:`/galeri/`,onClick:t=>{t.preventDefault(),e()},className:`inline-flex items-center gap-2 h-13 px-8 rounded-lg border-1.5 border-[#1B2631] text-[#1B2631] hover:bg-[#1B2631] hover:text-white font-semibold text-sm transition-all cursor-pointer shadow-xs`,children:(0,E.jsx)(`span`,{children:`Lihat Semua Proyek di Galeri โ†’`})})})]}),r&&(0,E.jsx)(`div`,{className:`fixed inset-0 z-50 bg-[#1B2631]/80 backdrop-blur-xs flex items-center justify-center p-4 animate-fadeIn`,onClick:()=>i(null),children:(0,E.jsxs)(`div`,{className:`bg-white rounded-2xl max-w-2xl w-full max-h-[90vh] overflow-y-auto shadow-2xl border border-[#E1E4E8] text-[#1B2631]`,onClick:e=>e.stopPropagation(),children:[(0,E.jsxs)(`div`,{className:`aspect-16/9 relative overflow-hidden bg-slate-900`,children:[(0,E.jsx)(`img`,{src:r.image,alt:r.title,title:`${r.title} - ${r.location}`,className:`w-full h-full object-cover`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>i(null),className:`absolute top-4 right-4 w-9 h-9 rounded-full bg-white text-[#1B2631] flex items-center justify-center font-bold text-sm shadow-md hover:bg-slate-100 cursor-pointer`,"aria-label":`Tutup Detail`,children:`โœ•`})]}),(0,E.jsxs)(`div`,{className:`p-6 sm:p-8 space-y-4`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold text-[#9A4800] bg-orange-50 px-2.5 py-1 rounded-sm`,children:r.category}),(0,E.jsxs)(`span`,{className:`text-xs text-[#546274]`,children:[`Lokasi: `,r.location]})]}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-2xl text-[#1B2631]`,children:r.title}),(0,E.jsx)(`p`,{className:`text-sm text-[#546274] leading-relaxed`,children:r.description}),(0,E.jsxs)(`div`,{className:`p-3.5 bg-[#F8F9FA] rounded-xl border border-[#E1E4E8] text-xs font-medium text-[#1B2631]`,children:[(0,E.jsx)(`strong`,{children:`Rincian Pengerjaan:`}),` `,r.specs]}),(0,E.jsxs)(`div`,{className:`pt-2 flex flex-col sm:flex-row gap-3`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20tertarik%20mengerjakan%20proyek%20seperti%20"${encodeURIComponent(r.title)}"`,target:`_blank`,rel:`noopener noreferrer`,className:`flex-1 py-3 px-4 rounded-lg bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-sm text-center transition-colors shadow-xs flex items-center justify-center gap-2`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Konsultasi Proyek Serupa via WhatsApp`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>i(null),className:`py-3 px-5 rounded-lg border border-[#E1E4E8] text-[#546274] hover:bg-slate-100 text-sm font-semibold transition-colors cursor-pointer`,children:`Tutup`})]})]})]})})]})},Ye=()=>{let[e,t]=(0,_.useState)(50),[n,r]=(0,_.useState)(`holland`),[i,a]=(0,_.useState)(`6 CM`),[o,s]=(0,_.useState)(`k300`),[c,l]=(0,_.useState)(`natural`),[u,d]=(0,_.useState)(`allin`),f=(0,_.useMemo)(()=>Re.find(e=>e.id===n)||Re[0],[n]),p=(0,_.useMemo)(()=>f.pricingVariants.filter(e=>e.k200!==null||e.k300!==null||e.k400!==null).map(e=>e.thickness),[f]),m=p.includes(i)?i:p[0]||`6 CM`,h=f.pricingVariants.find(e=>e.thickness===m)||f.pricingVariants[0],g=(h&&(h[o]||h.k200)||f.pricePerM2)+(c===`color`?Le:0),v=u===`allin`?55e3:0,y=g+v,b=e*g,ee=e*v,te=e*y,ne=Math.round(e*f.piecesPerM2*1.05),re=Number((e*.05*1.15).toFixed(1)),x=(re*1.4).toFixed(1),ie=e<=60?`1 - 2 Hari Kerja`:e<=150?`2 - 3 Hari Kerja`:e<=300?`4 - 5 Hari Kerja`:`6 - 9 Hari Kerja`,S=o===`k200`?`Mutu K200`:o===`k300`?`Mutu K300`:`Mutu K400`,ae=c===`color`?`Warna Khusus (Hitam / Merah) [+Rp 10.000/mยฒ]`:`Abu Natural (Standar)`,oe=`Halo Tim Estimator PabrikPaving.Id, Saya ingin konsultasi Rencana Anggaran Biaya (RAB) dari simulasi website: โ€ข Rincian Proyek: - Luas Area: ${e} mยฒ - Model Paving: ${f.name} - Ketebalan: ${m} - Kuat Tekan: ${S} - Warna: ${ae} - Pilihan Paket: ${u===`allin`?`Paket All-in Komplit (Material + Pasir Alas + Jasa Pasang + Stamper + Garansi Resmi SPK)`:`Beli Material Saja Langsung Pabrik`} โ€ข Estimasi Kebutuhan Lapangan: - Kebutuhan Paving: ~${ne.toLocaleString(`id-ID`)} pcs (termasuk 5% cadangan sudut) - Pasir Abu Batu Alas: ~${re} mยณ (~${x} Ton) - Estimasi Waktu Kerja: ${ie} - Perkiraan Total Biaya: Rp ${te.toLocaleString(`id-ID`)} (Rp ${y.toLocaleString(`id-ID`)}/mยฒ) Mohon informasi jadwal survey lokasi dan pengecekan kontur tanah tanpa biaya. Terima kasih!`,se=`https://wa.me/6281806483333?text=${encodeURIComponent(oe)}`;return(0,E.jsx)(`section`,{id:`calculator`,className:`py-20 lg:py-24 bg-[#2C3E50] text-white relative`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`max-w-[800px] mx-auto bg-white text-[#1B2631] rounded-3xl shadow-2xl p-5 sm:p-8 lg:p-10 border border-slate-100`,children:[(0,E.jsxs)(`div`,{className:`text-center mb-6 sm:mb-8`,children:[(0,E.jsx)(`span`,{className:`text-xs font-bold uppercase tracking-wider text-[#9A4800] block mb-1`,children:`Kalkulator Harga & Kebutuhan Pabrik`}),(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Cek Estimasi Biaya Paving Anda`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#334155] mt-2`,children:`Pilih model dari 8 tipe produk, ketebalan, dan mutu beton K200/K300/K400 sesuai harga resmi pabrik.`})]}),(0,E.jsxs)(`div`,{className:`space-y-4 sm:space-y-5`,children:[(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`div`,{className:`flex justify-between items-center mb-2`,children:[(0,E.jsx)(`label`,{htmlFor:`area-input`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider`,children:`Luas Area (mยฒ)`}),(0,E.jsxs)(`span`,{className:`text-xs font-bold font-heading text-[#9A4800]`,children:[e,` mยฒ`]})]}),(0,E.jsx)(`input`,{id:`area-input`,type:`number`,min:10,max:5e3,value:e,onChange:e=>t(Math.max(1,Number(e.target.value))),placeholder:`Contoh: 50`,className:`w-full h-[48px] sm:h-[52px] rounded-lg border-1.5 border-[#E1E4E8] px-4 text-base font-semibold text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-3 focus:ring-[#C8690F]/20`}),(0,E.jsx)(`div`,{className:`flex flex-wrap gap-2 mt-2.5`,children:[25,50,100,200].map(n=>(0,E.jsxs)(`button`,{type:`button`,onClick:()=>t(n),className:`text-xs font-semibold px-3 py-1.5 min-h-[36px] rounded-md border cursor-pointer transition-colors ${e===n?`bg-[#1B2631] text-white border-[#1B2631]`:`bg-slate-50 text-[#334155] border-[#E1E4E8] hover:bg-slate-100`}`,children:[n,` mยฒ`]},n))})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`jenis-select`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-2`,children:`Model Paving Block`}),(0,E.jsx)(`select`,{id:`jenis-select`,value:n,onChange:e=>{let t=e.target.value;r(t);let n=Re.find(e=>e.id===t);if(n){let e=n.pricingVariants.filter(e=>e.k200!==null||e.k300!==null||e.k400!==null).map(e=>e.thickness);e.includes(i)||a(e[0]||`6 CM`)}},className:`w-full h-[48px] sm:h-[52px] rounded-lg border-1.5 border-[#E1E4E8] px-3 sm:px-4 text-xs sm:text-sm font-semibold text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-3 focus:ring-[#C8690F]/20 bg-white cursor-pointer`,children:Re.map(e=>(0,E.jsxs)(`option`,{value:e.id,children:[e.name,` (`,e.thickness,`)`]},e.id))}),(0,E.jsxs)(`span`,{className:`text-[11px] text-[#546274] block mt-2`,children:[`Isi per mยฒ: `,(0,E.jsxs)(`strong`,{className:`text-[#1B2631]`,children:[f.piecesPerM2,` pcs`]}),` ยท `,f.model]})]})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-3 pt-2`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Ketebalan`}),(0,E.jsx)(`div`,{className:`flex gap-2`,children:p.map(e=>(0,E.jsx)(`button`,{type:`button`,onClick:()=>a(e),className:`flex-1 py-2 text-xs font-bold rounded-lg border cursor-pointer transition-all ${m===e?`bg-[#1B2631] text-white border-[#1B2631] shadow-xs`:`bg-white text-[#546274] border-[#E1E4E8] hover:bg-slate-50`}`,children:e},e))})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Mutu Beton`}),(0,E.jsx)(`div`,{className:`grid grid-cols-3 gap-1.5`,children:[`k200`,`k300`,`k400`].map(e=>(0,E.jsx)(`button`,{type:`button`,onClick:()=>s(e),className:`py-2 text-xs font-bold rounded-lg border cursor-pointer uppercase transition-all ${o===e?`bg-[#B35900] text-white border-[#B35900] shadow-xs`:`bg-white text-[#546274] border-[#E1E4E8] hover:bg-slate-50`}`,children:e.toUpperCase()},e))})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Pilihan Warna`}),(0,E.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>l(`natural`),className:`flex-1 py-2 text-[11px] font-semibold rounded-lg border cursor-pointer transition-all ${c===`natural`?`bg-[#1B2631] text-white border-[#1B2631]`:`bg-white text-[#546274] border-[#E1E4E8] hover:bg-slate-50`}`,children:`Abu Natural`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>l(`color`),className:`flex-1 py-2 text-[11px] font-semibold rounded-lg border cursor-pointer transition-all ${c===`color`?`bg-[#B35900] text-white border-[#B35900]`:`bg-white text-[#546274] border-[#E1E4E8] hover:bg-slate-50`}`,children:`Hitam/Merah`})]})]})]}),(0,E.jsxs)(`div`,{className:`text-[11px] text-[#334155] bg-amber-50/70 border border-amber-200/60 p-2.5 rounded-lg flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] font-bold`,children:`โ„น`}),(0,E.jsx)(`span`,{children:Ie})]}),(0,E.jsxs)(`div`,{className:`p-3 bg-slate-50 rounded-xl border border-[#E1E4E8] flex flex-col sm:flex-row items-start sm:items-center justify-between gap-2.5`,children:[(0,E.jsx)(`span`,{className:`text-xs font-bold text-[#1B2631]`,children:`Pilihan Paket Pekerjaan:`}),(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row gap-2 w-full sm:w-auto`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>d(`allin`),className:`w-full sm:w-auto text-xs font-semibold px-4 py-2 min-h-[38px] rounded-md border transition-all cursor-pointer text-center ${u===`allin`?`bg-[#1B2631] text-white border-[#1B2631] shadow-xs`:`bg-white text-[#334155] border-[#E1E4E8] hover:bg-slate-100`}`,children:`Paket All-in Komplit (Terima Beres)`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>d(`material`),className:`w-full sm:w-auto text-xs font-semibold px-4 py-2 min-h-[38px] rounded-md border transition-all cursor-pointer text-center ${u===`material`?`bg-[#1B2631] text-white border-[#1B2631] shadow-xs`:`bg-white text-[#334155] border-[#E1E4E8] hover:bg-slate-100`}`,children:`Beli Material Saja`})]})]}),(0,E.jsxs)(`div`,{className:`bg-[#F8F9FA] rounded-2xl p-4 sm:p-7 border border-[#E1E4E8] space-y-4`,children:[(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row justify-between items-start sm:items-center gap-4 border-b border-[#E1E4E8] pb-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`span`,{className:`text-xs text-[#334155] block mb-1 font-medium`,children:[`Estimasi Rencana Anggaran Biaya (`,u===`allin`?`Paket Komplit All-in Pasang`:`Material Saja Pabrik`,`)`]}),(0,E.jsxs)(`div`,{className:`font-heading font-bold text-3xl sm:text-4xl text-[#1B2631] tabular-nums tracking-tight`,children:[`Rp `,te.toLocaleString(`id-ID`)]}),(0,E.jsxs)(`span`,{className:`text-xs text-[#334155]`,children:[`Setara Rp `,y.toLocaleString(`id-ID`),` / mยฒ (Luas `,e,` mยฒ ยท `,f.name,` `,m,` `,o.toUpperCase(),`)`]})]}),(0,E.jsxs)(`div`,{className:`text-left sm:text-right bg-white p-3 rounded-xl border border-[#E1E4E8] text-xs`,children:[(0,E.jsx)(`span`,{className:`text-[#334155] block`,children:`Estimasi Waktu Kerja`}),(0,E.jsx)(`strong`,{className:`text-sm font-bold text-[#1B2631]`,children:ie}),(0,E.jsx)(`span`,{className:`block text-[11px] text-emerald-700 mt-0.5 font-medium`,children:`Garansi Resmi Tertulis SPK`})]})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-4 gap-2 text-xs`,children:[(0,E.jsxs)(`div`,{className:`bg-white p-2.5 sm:p-3 rounded-lg border border-[#E1E4E8]`,children:[(0,E.jsx)(`span`,{className:`text-[#546274] block mb-0.5`,children:`Total Paving`}),(0,E.jsxs)(`strong`,{className:`text-[#1B2631] text-xs sm:text-sm tabular-nums`,children:[`~`,ne.toLocaleString(`id-ID`),` pcs`]}),(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block`,children:`(+5% cadangan)`})]}),(0,E.jsxs)(`div`,{className:`bg-white p-2.5 sm:p-3 rounded-lg border border-[#E1E4E8]`,children:[(0,E.jsx)(`span`,{className:`text-[#546274] block mb-0.5`,children:`Pasir Abu Batu`}),(0,E.jsxs)(`strong`,{className:`text-[#1B2631] text-xs sm:text-sm tabular-nums`,children:[`~`,re,` mยณ`]}),(0,E.jsxs)(`span`,{className:`text-[10px] text-[#546274] block`,children:[`(~`,x,` Ton)`]})]}),(0,E.jsxs)(`div`,{className:`bg-white p-2.5 sm:p-3 rounded-lg border border-[#E1E4E8]`,children:[(0,E.jsx)(`span`,{className:`text-[#546274] block mb-0.5`,children:`Subtotal Material`}),(0,E.jsxs)(`strong`,{className:`text-[#9A4800] text-xs sm:text-sm tabular-nums`,children:[`Rp `,b.toLocaleString(`id-ID`)]}),(0,E.jsxs)(`span`,{className:`text-[10px] text-[#546274] block`,children:[`Rp `,g.toLocaleString(`id-ID`),`/mยฒ`]})]}),(0,E.jsxs)(`div`,{className:`bg-white p-2.5 sm:p-3 rounded-lg border border-[#E1E4E8]`,children:[(0,E.jsx)(`span`,{className:`text-[#546274] block mb-0.5`,children:`Jasa & Stamper`}),(0,E.jsx)(`strong`,{className:`text-[#1B2631] text-xs sm:text-sm tabular-nums`,children:u===`allin`?`Rp ${ee.toLocaleString(`id-ID`)}`:`Tidak Termasuk`}),(0,E.jsx)(`span`,{className:`text-[10px] text-emerald-700 block`,children:u===`allin`?`Termasuk Garansi SPK`:`Hanya Material`})]})]}),(0,E.jsx)(`div`,{className:`text-xs text-[#546274] leading-relaxed pt-1`,children:u===`allin`?(0,E.jsxs)(`p`,{className:`flex items-center gap-1.5 text-emerald-800 bg-emerald-50/80 p-2.5 rounded-lg border border-emerald-200/60`,children:[(0,E.jsx)(`span`,{children:`โœ“`}),(0,E.jsxs)(`span`,{children:[(0,E.jsx)(`strong`,{children:`Paket Terima Beres:`}),` Sudah mencakup material press hidrolik standar SNI, pasir abu batu alas, jasa tukang berpengalaman, pemadatan roller stamper, dan garansi resmi tertulis SPK anti amblas.`]})]}):(0,E.jsxs)(`p`,{className:`flex items-center gap-1.5 text-slate-700 bg-slate-100 p-2.5 rounded-lg`,children:[(0,E.jsx)(`span`,{children:`โ„น`}),(0,E.jsxs)(`span`,{children:[(0,E.jsx)(`strong`,{children:`Material Saja:`}),` Harga franco di atas dump truck di lokasi proyek Yogyakarta, belum termasuk ongkos tukang pasang dan bahan pasir.`]})]})})]}),(0,E.jsxs)(`a`,{href:se,target:`_blank`,rel:`noopener noreferrer`,className:`w-full flex items-center justify-center gap-2 bg-[#B35900] hover:bg-[#8f4a00] text-white font-bold text-sm sm:text-base px-4 h-12 sm:h-14 rounded-xl transition-all shadow-md hover:shadow-lg text-center cursor-pointer`,children:[(0,E.jsx)(`span`,{className:`text-base sm:text-lg`,children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Kirim Rincian Estimasi ke WhatsApp Estimator Pabrik`})]}),(0,E.jsxs)(`div`,{className:`flex flex-wrap items-center justify-center gap-4 text-xs text-[#546274]`,children:[(0,E.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,E.jsx)(`span`,{className:`text-emerald-600`,children:`โœ“`}),` Survey lokasi gratis wilayah Sleman, Bantul, Jogja Kota, Kulon Progo, Gunungkidul`]}),(0,E.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,E.jsx)(`span`,{className:`text-emerald-600`,children:`โœ“`}),` Tanpa komitmen / penawaran transparan`]})]})]})]})})})},Xe={herringbone90:`holland`,herringbone45:`holland`,basketweave:`holland`,stretcher:`holland`,hexagon:`segi-6`},Ze=()=>{let[e,t]=(0,_.useState)(`herringbone90`),[n,r]=(0,_.useState)(`mix`),[i,a]=(0,_.useState)(`diagram`),o=Re.find(t=>t.id===Xe[e])||Re[0],s=o.dimensions?.thicknessList||[6,8],[c,l]=(0,_.useState)(s[0]||6);(0,_.useEffect)(()=>{s.includes(c)||l(s[0]||6)},[e,o,s]);let u=o.inStock&&o.stockStatus!==`out_of_stock`,d=o.stockStatus===`limited`,f=e=>n===`natural`?`#8E99A2`:n===`red`?`#BD5738`:n===`black`?`#3B3E42`:e%3==0?`#BD5738`:`#8E99A2`,p={herringbone90:{name:`Pola Herringbone 90ยฐ (Tulang Ikan Siku)`,paverType:`${o.name} (${o.dimensions?`${o.dimensions.length} x ${o.dimensions.width} x ${c} cm`:`10.5 x 21 x ${c} cm`})`,piecesPerM2:`${o.piecesPerM2} Pcs / mยฒ`,interlockingRating:`100% Maksimal (Zero Lateral Shift)`,interlockingBadge:`Kunci Geser 4-Arah Siku 90ยฐ: Aktif`,trafficRating:`Beban Berat > 10 Ton (Truk, Bus & Mobil)`,loadVector:`Distribusi Beban 4 Sisi Melintang Siku`,recommendedThickness:`${c} CM (Varian: ${o.thickness})`,texture:o.texture||`Press Hidrolik 250 Bar (Rata Padat & Halus)`,description:`Pola saling mengunci dengan sudut siku 90 derajat. Gaya dorong dan pengereman roda ban diserap dan disebarkan ke 4 sisi sekaligus sehingga meniadakan pergeseran lateral dan mencegah paving amblas atau bergelombang.`,recommendedArea:`Carport mobil keluarga, jalan utama komplek perumahan, area parkir ruko komersial.`,realImage:ie,realCaption:`Dokumentasi Carport Rumah Tinggal Minimalis dengan Paving Herringbone 90ยฐ di Sleman, DIY`},herringbone45:{name:`Pola Herringbone 45ยฐ (Diagonal Interlocking)`,paverType:`${o.name} (${o.dimensions?`${o.dimensions.length} x ${o.dimensions.width} x ${c} cm`:`10.5 x 21 x ${c} cm`})`,piecesPerM2:`${o.piecesPerM2} Pcs / mยฒ`,interlockingRating:`95% Sangat Tinggi (Anti Selip Roda)`,interlockingBadge:`Kunci Geser 4-Arah Diagonal 45ยฐ: Aktif`,trafficRating:`Beban Berat Tanjakan & Tikungan Jalan`,loadVector:`Diagonal 45ยฐ Menahan Gaya Geser Rem`,recommendedThickness:`${c} CM (Varian: ${o.thickness})`,texture:o.texture||`Press Hidrolik 250 Bar (Rata Padat & Halus)`,description:`Disusun dengan kemiringan 45 derajat memotong garis laju roda kendaraan. Memberikan traksi ban maksimal saat akselerasi dan pengereman mendadak di area miring berkontur.`,recommendedArea:`Ramp tanjakan/turunan carport, akses jalan masuk berkontur miring, tikungan tajam komplek.`,realImage:S,realCaption:`Dokumentasi Akses Jalan Ramp Miring dengan Paving Herringbone 45ยฐ di Yogyakarta`},basketweave:{name:`Pola Basket Weave (Anyaman Tikar Simetris)`,paverType:`${o.name} (${o.dimensions?`${o.dimensions.length} x ${o.dimensions.width} x ${c} cm`:`10.5 x 21 x ${c} cm`})`,piecesPerM2:`${o.piecesPerM2} Pcs / mยฒ`,interlockingRating:`75% Tinggi (Kuncian Modul 2x2)`,interlockingBadge:`Kunci 2-Arah Siku Bergantian: Aktif`,trafficRating:`Beban Sedang s/d 5 Ton (Mobil Keluarga)`,loadVector:`Distribusi Kotak Modul Sejajar`,recommendedThickness:`${c} CM (Varian: ${o.thickness})`,texture:o.texture||`Press Hidrolik 250 Bar (Rata Padat & Halus)`,description:`Dua paving bata horizontal dipadukan dengan dua bata vertikal membentuk anyaman tikar simetris. Memberikan estetika klasik rapi, elegan, serta mempermudah pemotongan tepi perimeter tanpa banyak sisa.`,recommendedArea:`Halaman teras depan rumah, jalur pedestrian santai, plaza terbuka, taman hunian.`,realImage:ae,realCaption:`Dokumentasi Halaman Teras Hunian Tropis dengan Paving Basket Weave di Yogyakarta`},stretcher:{name:`Pola Stretcher Bond (Susun Bata Klasik)`,paverType:`${o.name} (${o.dimensions?`${o.dimensions.length} x ${o.dimensions.width} x ${c} cm`:`10.5 x 21 x ${c} cm`})`,piecesPerM2:`${o.piecesPerM2} Pcs / mยฒ`,interlockingRating:`60% Sedang (Searah Sumbu Linier)`,interlockingBadge:`Kunci 2-Arah Linier Sumbu Jalan: Aktif`,trafficRating:`Beban Ringan (Pejalan Kaki & Motor)`,loadVector:`Distribusi Linier Searah Laju`,recommendedThickness:`${c} CM (Varian: ${o.thickness})`,texture:o.texture||`Press Hidrolik 250 Bar (Rata Padat & Halus)`,description:`Pola susunan linier selang-seling 50% seperti dinding bata. Sangat cepat dalam proses pemasangan dan paling hemat bahan untuk jalur lurus memanjang.`,recommendedArea:`Jalur pejalan kaki (jogging track), selasar samping rumah tinggal, jalan setapak taman.`,realImage:oe,realCaption:`Dokumentasi Jalur Pedestrian Taman Asri dengan Paving Stretcher Bond di Sleman, DIY`},hexagon:{name:`Pola Hexagonal Sarang Lebah (Segi Enam Modern)`,paverType:`${o.name} (${o.model||`Hexagon`} - Tebal ${c} cm)`,piecesPerM2:`${o.piecesPerM2} Pcs / mยฒ`,interlockingRating:`98% Sangat Tinggi (Kuncian 6 Sisi Radial)`,interlockingBadge:`Kunci Interlocking 6-Arah Radial: Aktif`,trafficRating:`Beban Menengah s/d 8 Ton (Mobil Pribadi & Wisata)`,loadVector:`Penyebaran Beban Radial 6 Sisi Simetris`,recommendedThickness:`${c} CM (Varian: ${o.thickness})`,texture:o.texture||`Press Hidrolik 250 Bar (Rata Padat & Halus)`,description:`Bentuk geometris sarang lebah di mana setiap paving dikunci merata oleh 6 paving di sekelilingnya secara otomatis. Menghadirkan kesan visual modern, estetik, dan bebas pergeseran.`,recommendedArea:`Courtyard kafe outdoor, plaza pedestrian hotel & villa, halaman depan rumah arsitektural.`,realImage:se,realCaption:`Dokumentasi Courtyard Kafe Outdoor dengan Paving Segi 6 Hexagon di Kotabaru Jogja`}}[e];return(0,E.jsx)(`section`,{id:`visualizer`,className:`py-20 lg:py-24 bg-[#EDEAE3] text-[#1B2631]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Simulasi Interaktif & Dokumentasi Riil`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Simulator Pola Pasang & Kuncian Interlocking`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-3`,children:`Kekuatan paving anti amblas ditentukan oleh pola kuncian sambungan. Pilih pola di bawah ini untuk melihat simulasi diagram geometris atau foto hasil pemasangan nyata di lapangan.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-8 lg:gap-10 items-start`,children:[(0,E.jsxs)(`div`,{className:`lg:col-span-5 space-y-6`,children:[(0,E.jsxs)(`div`,{className:`bg-white p-4 rounded-xl border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold uppercase tracking-wider text-[#475569] mb-3`,children:`Pilih Jenis Pola Pemasangan`}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 gap-1.5`,children:[{id:`herringbone90`,label:`Herringbone 90ยฐ (Rekomendasi Carport)`,tag:`Anti Amblas`,productId:`holland`},{id:`herringbone45`,label:`Herringbone 45ยฐ (Tanjakan / Ramp)`,tag:`Anti Selip`,productId:`holland`},{id:`basketweave`,label:`Basket Weave (Anyaman Tikar)`,tag:`Klasik Rapi`,productId:`holland`},{id:`stretcher`,label:`Stretcher Bond (Susun Bata Klasik)`,tag:`Jalur Lurus`,productId:`holland`},{id:`hexagon`,label:`Hexagon Segi 6 (Sarang Lebah)`,tag:`6 Kuncian`,productId:`segi-6`}].map(n=>{let r=Re.find(e=>e.id===n.productId),i=r?.inStock&&r?.stockStatus!==`out_of_stock`;return(0,E.jsxs)(`button`,{type:`button`,onClick:()=>t(n.id),className:`w-full text-left px-3.5 py-2.5 rounded-lg text-xs sm:text-sm font-semibold transition-all cursor-pointer flex items-center justify-between ${e===n.id?`bg-[#1B2631] text-white shadow-xs`:`text-[#3D4C5A] hover:bg-slate-100`}`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 truncate pr-2`,children:[(0,E.jsx)(`span`,{children:n.label}),!i&&(0,E.jsx)(`span`,{className:`text-[9px] px-1.5 py-0.5 rounded-xs bg-rose-600 text-white font-bold shrink-0`,children:`Stok Habis`})]}),(0,E.jsx)(`span`,{className:`text-[10px] px-2 py-0.5 rounded-full font-medium shrink-0 ${e===n.id?`bg-emerald-700 text-white`:`bg-slate-100 text-[#334155]`}`,children:n.tag})]},n.id)})})]}),(0,E.jsxs)(`div`,{className:`bg-white p-4 rounded-xl border border-[#E1E4E8] shadow-xs space-y-3`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold uppercase tracking-wider text-[#475569] mb-2`,children:`Mode Tampilan Visual`}),(0,E.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>a(`diagram`),className:`py-2 px-3 rounded-lg text-xs font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1.5 ${i===`diagram`?`border-[#1B2631] bg-[#1B2631] text-white shadow-xs`:`border-[#E1E4E8] bg-white text-[#546274] hover:bg-slate-50`}`,children:(0,E.jsx)(`span`,{children:`๐Ÿ“ Diagram Interlocking`})}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>a(`real`),className:`py-2 px-3 rounded-lg text-xs font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1.5 ${i===`real`?`border-[#1B2631] bg-[#1B2631] text-white shadow-xs`:`border-[#E1E4E8] bg-white text-[#546274] hover:bg-slate-50`}`,children:(0,E.jsx)(`span`,{children:`๐Ÿ“ท Foto Pasang Nyata`})})]})]}),(0,E.jsxs)(`div`,{className:`pt-2 border-t border-slate-100`,children:[(0,E.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold uppercase tracking-wider text-[#475569]`,children:`Pilih Ketebalan Blok`}),(0,E.jsxs)(`span`,{className:`text-[10px] text-[#475569] font-medium`,children:[`Katalog: `,o.thickness]})]}),(0,E.jsx)(`div`,{className:`grid grid-cols-3 gap-2`,children:[6,8,10].map(e=>{let t=s.includes(e);return(0,E.jsxs)(`button`,{type:`button`,disabled:!t,onClick:()=>l(e),className:`py-2 px-1.5 rounded-lg text-xs font-semibold border transition-all cursor-pointer flex flex-col items-center justify-center ${t?c===e?`border-[#1B2631] bg-[#1B2631] text-white shadow-xs`:`border-[#E1E4E8] bg-white text-[#546274] hover:bg-slate-50`:`opacity-40 bg-slate-50 border-slate-200 cursor-not-allowed text-slate-400`}`,children:[(0,E.jsxs)(`span`,{className:`font-bold`,children:[e,` CM`]}),(0,E.jsx)(`span`,{className:`text-[9px] font-normal truncate`,children:t?e===6?`Standar`:e===8?`Heavy Duty`:`Khusus`:`N/A`})]},e)})})]}),i===`diagram`&&(0,E.jsxs)(`div`,{className:`pt-2 border-t border-slate-100`,children:[(0,E.jsx)(`label`,{className:`block text-xs font-bold uppercase tracking-wider text-[#475569] mb-2`,children:`Kombinasi Warna Paving`}),(0,E.jsxs)(`div`,{className:`grid grid-cols-4 gap-1.5 sm:gap-2`,children:[(0,E.jsxs)(`button`,{type:`button`,onClick:()=>r(`natural`),className:`py-2 px-1 rounded-lg text-[11px] font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1 ${n===`natural`?`border-[#1B2631] bg-slate-100 text-[#1B2631]`:`border-[#E1E4E8] text-[#546274] hover:bg-slate-50`}`,children:[(0,E.jsx)(`span`,{className:`w-3 h-3 rounded-full bg-[#8E99A2] inline-block border border-black/20 shrink-0`}),(0,E.jsx)(`span`,{className:`truncate`,children:`Abu`})]}),(0,E.jsxs)(`button`,{type:`button`,onClick:()=>r(`red`),className:`py-2 px-1 rounded-lg text-[11px] font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1 ${n===`red`?`border-[#1B2631] bg-slate-100 text-[#1B2631]`:`border-[#E1E4E8] text-[#546274] hover:bg-slate-50`}`,children:[(0,E.jsx)(`span`,{className:`w-3 h-3 rounded-full bg-[#BD5738] inline-block border border-black/20 shrink-0`}),(0,E.jsx)(`span`,{className:`truncate`,children:`Merah`})]}),(0,E.jsxs)(`button`,{type:`button`,onClick:()=>r(`black`),className:`py-2 px-1 rounded-lg text-[11px] font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1 ${n===`black`?`border-[#1B2631] bg-slate-100 text-[#1B2631]`:`border-[#E1E4E8] text-[#546274] hover:bg-slate-50`}`,children:[(0,E.jsx)(`span`,{className:`w-3 h-3 rounded-full bg-[#3B3E42] inline-block border border-black/20 shrink-0`}),(0,E.jsx)(`span`,{className:`truncate`,children:`Hitam`})]}),(0,E.jsxs)(`button`,{type:`button`,onClick:()=>r(`mix`),className:`py-2 px-1 rounded-lg text-[11px] font-semibold border transition-all cursor-pointer flex items-center justify-center gap-1 ${n===`mix`?`border-[#1B2631] bg-slate-100 text-[#1B2631]`:`border-[#E1E4E8] text-[#546274] hover:bg-slate-50`}`,children:[(0,E.jsxs)(`span`,{className:`flex shrink-0`,children:[(0,E.jsx)(`span`,{className:`w-1.5 h-3 rounded-l-full bg-[#8E99A2]`}),(0,E.jsx)(`span`,{className:`w-1.5 h-3 rounded-r-full bg-[#BD5738]`})]}),(0,E.jsx)(`span`,{className:`truncate`,children:`Mix`})]})]})]})]}),(0,E.jsxs)(`div`,{className:`bg-white p-5 rounded-xl border border-[#E1E4E8] shadow-xs space-y-3`,children:[(0,E.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631]`,children:p.name})}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:p.description}),(0,E.jsxs)(`div`,{className:`pt-2 border-t border-slate-100 space-y-2 text-xs`,children:[(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Status Ketersediaan:`}),(0,E.jsx)(`span`,{className:`font-semibold ${u?d?`text-[#9A4800]`:`text-emerald-700`:`text-rose-700`}`,children:u?d?`โš ๏ธ Stok Terbatas`:`โœ“ Stok Ready di Pabrik`:`โŒ Stok Habis / Pre-Order`})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Tipe Produk:`}),(0,E.jsx)(`span`,{className:`font-semibold text-[#1B2631]`,children:p.paverType})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Kebutuhan / mยฒ:`}),(0,E.jsx)(`span`,{className:`font-semibold text-[#1B2631]`,children:p.piecesPerM2})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Daya Kunci Interlocking:`}),(0,E.jsx)(`span`,{className:`font-semibold text-emerald-700`,children:p.interlockingRating})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Kapasitas Beban:`}),(0,E.jsx)(`span`,{className:`font-semibold text-[#1B2631]`,children:p.trafficRating})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-center`,children:[(0,E.jsx)(`span`,{className:`text-[#546274]`,children:`Tekstur Permukaan:`}),(0,E.jsx)(`span`,{className:`font-semibold text-[#1B2631] truncate max-w-[200px]`,children:p.texture})]}),(0,E.jsxs)(`div`,{className:`flex justify-between items-start`,children:[(0,E.jsx)(`span`,{className:`text-[#546274] shrink-0`,children:`Area Rekomendasi:`}),(0,E.jsx)(`span`,{className:`font-semibold text-[#9A4800] text-right pl-2`,children:p.recommendedArea})]})]}),!u&&(0,E.jsxs)(`div`,{className:`p-3.5 bg-rose-50 border border-rose-200 rounded-xl text-xs text-rose-800 space-y-1`,children:[(0,E.jsxs)(`div`,{className:`font-bold flex items-center gap-1.5`,children:[(0,E.jsx)(`span`,{children:`โš ๏ธ`}),(0,E.jsx)(`span`,{children:`Status Stok: Pre-Order / Indent Pabrik`})]}),(0,E.jsx)(`p`,{className:`text-rose-700 leading-relaxed`,children:`Varian produk ini saat ini tidak ready stok instan dan diproduksi sesuai antrean pesanan SPK (estimasi produksi 3-5 hari kerja).`})]})]})]}),(0,E.jsx)(`div`,{className:`lg:col-span-7`,children:(0,E.jsxs)(`div`,{className:`bg-white p-5 sm:p-7 rounded-2xl border border-[#E1E4E8] shadow-md`,children:[(0,E.jsxs)(`div`,{className:`flex flex-wrap justify-between items-center gap-2 mb-3`,children:[(0,E.jsxs)(`span`,{className:`text-xs font-semibold text-[#546274] flex items-center gap-1.5`,children:[(0,E.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-emerald-500 animate-pulse`}),i===`diagram`?`Simulasi Geometri Kuncian & Celah Sand-Joint`:`Foto Hasil Pengerjaan Nyata di Lapangan`]}),(0,E.jsx)(`span`,{className:`text-xs px-2.5 py-0.5 rounded-sm bg-slate-100 font-mono text-[#1B2631]`,children:i===`diagram`?`Skala Presisi Celah 2mm`:`HD WebP Dokumentasi Proyek`})]}),(0,E.jsx)(`div`,{className:`w-full aspect-16/10 rounded-xl overflow-hidden border border-[#E1E4E8] bg-[#D4CFBE] flex items-center justify-center relative shadow-inner`,children:i===`real`?(0,E.jsxs)(`div`,{className:`w-full h-full relative group`,children:[(0,E.jsx)(`img`,{src:p.realImage,alt:p.realCaption,title:p.realCaption,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,loading:`lazy`,width:800,height:500}),(0,E.jsx)(`div`,{className:`absolute inset-0 bg-gradient-to-t from-black/80 via-black/20 to-transparent pointer-events-none`}),(0,E.jsxs)(`div`,{className:`absolute bottom-3 left-3 right-3 text-white pointer-events-none`,children:[(0,E.jsx)(`span`,{className:`inline-block px-2.5 py-0.5 rounded-sm bg-[#B35900] text-[10px] font-bold tracking-wider uppercase mb-1 shadow-xs`,children:`Proyek Lapangan`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm font-medium leading-snug drop-shadow-md`,children:p.realCaption})]})]}):(0,E.jsxs)(`div`,{className:`w-full h-full relative`,children:[e===`herringbone90`&&(0,E.jsxs)(`svg`,{className:`w-full h-full`,viewBox:`0 0 500 320`,preserveAspectRatio:`xMidYMid slice`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsxs)(`pattern`,{id:`hb90`,width:`80`,height:`80`,patternUnits:`userSpaceOnUse`,children:[(0,E.jsx)(`rect`,{x:`1`,y:`1`,width:`37`,height:`77`,fill:f(0),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`41`,y:`1`,width:`77`,height:`37`,fill:f(1),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`41`,y:`41`,width:`37`,height:`77`,fill:f(2),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`1`,y:`41`,width:`77`,height:`37`,fill:f(3),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`})]})}),(0,E.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#hb90)`})]}),e===`herringbone45`&&(0,E.jsxs)(`svg`,{className:`w-full h-full`,viewBox:`0 0 500 320`,preserveAspectRatio:`xMidYMid slice`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsxs)(`pattern`,{id:`hb45`,width:`100`,height:`100`,patternTransform:`rotate(45 0 0)`,patternUnits:`userSpaceOnUse`,children:[(0,E.jsx)(`rect`,{x:`1`,y:`1`,width:`45`,height:`95`,fill:f(1),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`51`,y:`1`,width:`95`,height:`45`,fill:f(2),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`51`,y:`51`,width:`45`,height:`95`,fill:f(3),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`1`,y:`51`,width:`95`,height:`45`,fill:f(0),rx:`1.5`,stroke:`#1E293B`,strokeWidth:`1.2`})]})}),(0,E.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#hb45)`})]}),e===`basketweave`&&(0,E.jsxs)(`svg`,{className:`w-full h-full`,viewBox:`0 0 500 320`,preserveAspectRatio:`xMidYMid slice`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsxs)(`pattern`,{id:`bw`,width:`80`,height:`80`,patternUnits:`userSpaceOnUse`,children:[(0,E.jsx)(`rect`,{x:`1`,y:`1`,width:`18`,height:`38`,fill:f(0),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`21`,y:`1`,width:`18`,height:`38`,fill:f(1),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`41`,y:`1`,width:`38`,height:`18`,fill:f(2),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`41`,y:`21`,width:`38`,height:`18`,fill:f(3),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`1`,y:`41`,width:`38`,height:`18`,fill:f(4),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`1`,y:`61`,width:`38`,height:`18`,fill:f(5),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`41`,y:`41`,width:`18`,height:`38`,fill:f(6),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`61`,y:`41`,width:`18`,height:`38`,fill:f(7),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`})]})}),(0,E.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#bw)`})]}),e===`stretcher`&&(0,E.jsxs)(`svg`,{className:`w-full h-full`,viewBox:`0 0 500 320`,preserveAspectRatio:`xMidYMid slice`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsxs)(`pattern`,{id:`stretcher`,width:`84`,height:`44`,patternUnits:`userSpaceOnUse`,children:[(0,E.jsx)(`rect`,{x:`1`,y:`1`,width:`82`,height:`20`,fill:f(0),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`-41`,y:`23`,width:`82`,height:`20`,fill:f(1),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`}),(0,E.jsx)(`rect`,{x:`43`,y:`23`,width:`82`,height:`20`,fill:f(2),rx:`1`,stroke:`#1E293B`,strokeWidth:`1.2`})]})}),(0,E.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#stretcher)`})]}),e===`hexagon`&&(0,E.jsxs)(`svg`,{className:`w-full h-full`,viewBox:`0 0 500 320`,preserveAspectRatio:`xMidYMid slice`,children:[(0,E.jsx)(`defs`,{children:(0,E.jsxs)(`pattern`,{id:`hex`,width:`60`,height:`103.92`,patternUnits:`userSpaceOnUse`,children:[(0,E.jsx)(`path`,{d:`M 30,0 L 60,17.32 L 60,51.96 L 30,69.28 L 0,51.96 L 0,17.32 Z`,fill:f(1),stroke:`#1E293B`,strokeWidth:`1.5`}),(0,E.jsx)(`path`,{d:`M 0,69.28 L 30,86.6 L 30,121.24 L 0,138.56 L -30,121.24 L -30,86.6 Z`,fill:f(0),stroke:`#1E293B`,strokeWidth:`1.5`}),(0,E.jsx)(`path`,{d:`M 60,69.28 L 90,86.6 L 90,121.24 L 60,138.56 L 30,121.24 L 30,86.6 Z`,fill:f(2),stroke:`#1E293B`,strokeWidth:`1.5`})]})}),(0,E.jsx)(`rect`,{width:`100%`,height:`100%`,fill:`url(#hex)`})]}),(0,E.jsxs)(`div`,{className:`absolute right-3 bottom-3 bg-[#1B2631]/90 backdrop-blur-xs text-white text-[11px] px-3 py-1.5 rounded-md shadow-md flex items-center gap-1.5`,children:[(0,E.jsx)(`span`,{className:`w-2 h-2 rounded-full bg-emerald-400 inline-block`}),(0,E.jsx)(`span`,{children:p.interlockingBadge})]})]})}),(0,E.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-4 gap-2.5 mt-4`,children:[(0,E.jsxs)(`div`,{className:`p-2.5 bg-slate-50 rounded-lg border border-slate-100 text-center`,children:[(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block uppercase tracking-wider font-semibold`,children:`Tipe Blok`}),(0,E.jsx)(`strong`,{className:`text-xs text-[#1B2631] font-bold block truncate`,children:p.paverType.split(`(`)[0]})]}),(0,E.jsxs)(`div`,{className:`p-2.5 bg-slate-50 rounded-lg border border-slate-100 text-center`,children:[(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block uppercase tracking-wider font-semibold`,children:`Kebutuhan`}),(0,E.jsx)(`strong`,{className:`text-xs text-[#1B2631] font-bold block`,children:p.piecesPerM2})]}),(0,E.jsxs)(`div`,{className:`p-2.5 bg-slate-50 rounded-lg border border-slate-100 text-center`,children:[(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block uppercase tracking-wider font-semibold`,children:`Efisiensi Kunci`}),(0,E.jsx)(`strong`,{className:`text-xs text-emerald-700 font-bold block`,children:p.interlockingRating.split(` `)[0]})]}),(0,E.jsxs)(`div`,{className:`p-2.5 bg-slate-50 rounded-lg border border-slate-100 text-center`,children:[(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block uppercase tracking-wider font-semibold`,children:`Beban Maksimal`}),(0,E.jsx)(`strong`,{className:`text-xs text-[#9A4800] font-bold block truncate`,children:p.trafficRating.split(`(`)[0]})]})]}),(0,E.jsxs)(`div`,{className:`mt-4 p-3.5 bg-[#F8F9FA] rounded-xl border border-[#E1E4E8] text-xs text-[#546274] leading-relaxed flex items-start gap-2.5`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] text-base leading-none`,children:`๐Ÿ’ก`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`text-[#1B2631]`,children:`Mengapa PabrikPaving.Id Mengutamakan Pola Kuncian Sesuai Peruntukan?`}),(0,E.jsxs)(`p`,{className:`mt-0.5`,children:[`Penyebab utama paving bergelombang bukan sekadar mutu beton, melainkan pola susun yang tidak mendistribusikan beban roda ban secara melintang. Di area jalan dan carport kendaraan, tim tukang kami selalu merekomendasikan pola `,(0,E.jsx)(`strong`,{children:`Herringbone 90ยฐ`}),` atau `,(0,E.jsx)(`strong`,{children:`Herringbone 45ยฐ`}),` demi kuncian saling silang 4-arah yang menahan gaya geser rem secara merata dan menjamin garansi resmi anti amblas tertulis SPK.`]})]})]})]})})]})]})})},Qe=({onSelectForCalculator:e})=>{let[t,n]=(0,_.useState)(`all`),r=t===`all`?Re:Re.filter(e=>t===`bata`?e.id===`holland`:t===`persegi`?e.id===`kotak-persegi`:t===`segi-6`?e.id===`segi-6`:t===`topi-uskup`?e.id===`topi-uskup`:t===`3-dimensi`?e.id===`3-dimensi`:t===`grass`?e.id===`grass-block`:t!==`kombinasi`||e.id.includes(`kombinasi`));return(0,E.jsx)(`section`,{id:`products`,className:`py-20 lg:py-28 bg-[#F8F9FA] text-[#1B2631]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`flex flex-col md:flex-row md:items-end justify-between mb-8 gap-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Katalog Langsung Pabrik`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Pilihan 8 Model & Spesifikasi Paving Block`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-2 max-w-xl`,children:`Seluruh produk diproduksi menggunakan mesin press hidrolik otomatis bertekanan tinggi 250 bar dengan mutu beton K200, K300, hingga K400 standar SNI.`})]}),(0,E.jsxs)(`div`,{className:`text-xs text-[#546274] flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`inline-block w-2.5 h-2.5 rounded-full bg-emerald-500 animate-pulse`}),(0,E.jsx)(`span`,{className:`font-medium text-[#1B2631]`,children:`Ready Stock Yogyakarta ยท Bebas Biaya Bongkar Muat`})]})]}),(0,E.jsx)(`div`,{className:`flex items-center gap-2 mb-8 border-b border-[#E1E4E8] pb-4 overflow-x-auto no-scrollbar py-1 -mx-4 px-4 sm:mx-0 sm:px-0 sm:flex-wrap`,children:[{id:`all`,label:`Semua Model (8)`},{id:`bata`,label:`Holland / Bata`},{id:`persegi`,label:`Kotak Persegi`},{id:`segi-6`,label:`Segi 6`},{id:`topi-uskup`,label:`Topi Uskup`},{id:`3-dimensi`,label:`3 Dimensi`},{id:`grass`,label:`Grass Block`},{id:`kombinasi`,label:`Model Kombinasi`}].map(e=>(0,E.jsx)(`button`,{type:`button`,onClick:()=>n(e.id),className:`px-4 py-2 rounded-lg text-xs sm:text-sm font-semibold transition-all cursor-pointer whitespace-nowrap shrink-0 ${t===e.id?`bg-[#1B2631] text-white shadow-xs`:`bg-white text-[#546274] border border-[#E1E4E8] hover:bg-slate-100`}`,children:e.label},e.id))}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:r.map(t=>(0,E.jsxs)(`div`,{className:`bg-white rounded-2xl border border-[#E1E4E8] overflow-hidden shadow-xs hover:shadow-lg transition-all flex flex-col justify-between group`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`div`,{className:`aspect-4/3 relative overflow-hidden bg-slate-50 flex items-center justify-center p-3 border-b border-slate-100`,children:[(0,E.jsx)(`img`,{src:t.image,alt:`${t.name} kuat tekan ${t.strength} pabrik paving jogja`,title:`${t.name} - ${t.model} Kuat Tekan ${t.strength} SNI`,className:`w-full h-full object-contain transition-transform duration-500 group-hover:scale-105`,loading:`lazy`,decoding:`async`,width:400,height:300,referrerPolicy:`no-referrer`}),(0,E.jsx)(`div`,{className:`absolute top-2.5 left-2.5 bg-[#1B2631]/85 backdrop-blur-xs text-white text-[10px] font-bold px-2 py-0.5 rounded-xs`,children:t.strength}),(0,E.jsxs)(`div`,{className:`absolute top-2.5 right-2.5 bg-white/95 text-[#1B2631] text-[10px] font-semibold px-2 py-0.5 rounded-xs shadow-xs border border-slate-200`,children:[`Tebal `,t.thickness]})]}),(0,E.jsxs)(`div`,{className:`p-5`,children:[(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] group-hover:text-[#9A4800] transition-colors`,children:t.name}),(0,E.jsxs)(`p`,{className:`text-[11px] text-[#546274] mt-0.5 mb-2.5`,children:[t.model,` ยท `,t.piecesPerM2,` pcs/mยฒ`]}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed line-clamp-2`,children:t.description}),(0,E.jsx)(`div`,{className:`mt-3 pt-2.5 border-t border-slate-100 flex flex-wrap gap-1`,children:t.features.slice(0,2).map((e,t)=>(0,E.jsx)(`span`,{className:`text-[10px] font-medium text-[#3D4C5A] bg-slate-100 px-2 py-0.5 rounded-xs`,children:e},t))})]})]}),(0,E.jsxs)(`div`,{className:`p-5 pt-0`,children:[(0,E.jsxs)(`div`,{className:`bg-[#F8F9FA] p-3 rounded-lg border border-[#E1E4E8] flex items-baseline justify-between mb-3`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-[10px] text-[#546274] block`,children:`Harga Mulai`}),(0,E.jsxs)(`span`,{className:`font-heading font-bold text-xl text-[#9A4800] tabular-nums`,children:[`Rp `,t.pricePerM2.toLocaleString(`id-ID`)]}),(0,E.jsx)(`span`,{className:`text-[11px] text-[#546274]`,children:` / mยฒ`})]}),(0,E.jsxs)(`span`,{className:`text-[11px] font-mono text-[#546274] tabular-nums`,children:[`(~Rp `,t.pricePerPiece.toLocaleString(`id-ID`),`/pcs)`]})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:()=>e(t.id),className:`w-full py-2 rounded-md border border-[#1B2631] text-[#1B2631] hover:bg-[#1B2631] hover:text-white text-xs font-semibold transition-all cursor-pointer text-center`,children:`Hitung`}),(0,E.jsx)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20tertarik%20dengan%20produk%20${encodeURIComponent(t.name)}`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full py-2 rounded-md bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] text-xs font-bold transition-all text-center flex items-center justify-center gap-1 shadow-xs`,children:(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ Pesan`})})]})]})]},t.id))}),(0,E.jsxs)(`div`,{className:`mt-14 bg-white rounded-xl border border-[#E1E4E8] p-6 lg:p-8 shadow-xs`,children:[(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row sm:items-center justify-between mb-6 gap-2`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631]`,children:`Tabel Komparasi Spesifikasi Teknis 8 Model Paving SNI`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274]`,children:`Data acuan standar mutu menurut SNI 03-0691-1996 tentang Bata Beton (Paving Block)`})]}),(0,E.jsx)(`span`,{className:`text-xs text-[#9A4800] font-semibold`,children:`*Telah Diuji Lab Mekanika Tanah & Beton DIY`})]}),(0,E.jsx)(`div`,{className:`overflow-x-auto`,children:(0,E.jsxs)(`table`,{className:`w-full text-left text-xs sm:text-sm border-collapse`,children:[(0,E.jsx)(`thead`,{children:(0,E.jsxs)(`tr`,{className:`border-b-2 border-[#1B2631] text-[#546274]`,children:[(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Model Paving`}),(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Tebal`}),(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Kuat Tekan`}),(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Isi / mยฒ`}),(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Peruntukan Beban`}),(0,E.jsx)(`th`,{className:`py-3 px-3 font-semibold`,children:`Harga Mulai`})]})}),(0,E.jsx)(`tbody`,{className:`divide-y divide-slate-100 text-[#3D4C5A]`,children:Re.map(e=>(0,E.jsxs)(`tr`,{className:`hover:bg-slate-50 transition-colors`,children:[(0,E.jsx)(`td`,{className:`py-3.5 px-3 font-semibold text-[#1B2631]`,children:e.name}),(0,E.jsx)(`td`,{className:`py-3.5 px-3 font-mono`,children:e.thickness}),(0,E.jsx)(`td`,{className:`py-3.5 px-3 font-medium text-emerald-700`,children:e.strength}),(0,E.jsxs)(`td`,{className:`py-3.5 px-3 tabular-nums`,children:[e.piecesPerM2,` pcs`]}),(0,E.jsx)(`td`,{className:`py-3.5 px-3 text-xs`,children:e.bestFor}),(0,E.jsxs)(`td`,{className:`py-3.5 px-3 font-heading font-bold text-sm text-[#9A4800] tabular-nums`,children:[`Rp `,e.pricePerM2.toLocaleString(`id-ID`)]})]},e.id))})]})}),(0,E.jsxs)(`div`,{className:`mt-4 pt-3 border-t border-slate-200 text-xs text-[#546274] flex flex-col sm:flex-row items-start sm:items-center justify-between gap-2`,children:[(0,E.jsx)(`span`,{children:`*Harga belum termasuk diskon volume kuantitas > 100 mยฒ dan ongkos kirim.`}),(0,E.jsx)(`a`,{href:`/harga/`,className:`text-[#B35900] underline font-bold hover:text-[#9A4800]`,children:`Lihat Rincian Lengkap Tabel Harga K200, K300 & K400 โ†’`})]})]})]})})},$e=()=>(0,E.jsx)(`section`,{className:`py-20 bg-[#F8F9FA] text-[#1B2631] border-y border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Edukasi Kualitas Beton`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Paving Press Hidrolik Pabrik vs Paving Cetak Manual`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-3`,children:`Kenapa harga murah di pinggir jalan sering berujung amblas dan hancur dalam 6 bulan? Ketahui perbedaan teknisnya.`})]}),(0,E.jsxs)(`div`,{className:`bg-white rounded-2xl border border-[#E1E4E8] shadow-sm overflow-hidden`,children:[(0,E.jsxs)(`div`,{className:`sm:hidden px-4 py-2 bg-slate-100 border-b border-[#E1E4E8] text-[11px] text-[#546274] flex items-center justify-between font-medium`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ‘‰ Geser tabel ke kanan untuk melihat perbandingan`}),(0,E.jsx)(`span`,{className:`font-bold`,children:`โ‡„`})]}),(0,E.jsx)(`div`,{className:`overflow-x-auto`,style:{WebkitOverflowScrolling:`touch`},children:(0,E.jsxs)(`table`,{className:`w-full text-left text-xs sm:text-sm border-collapse min-w-[580px]`,children:[(0,E.jsx)(`thead`,{children:(0,E.jsxs)(`tr`,{className:`bg-[#2C3E50] text-white`,children:[(0,E.jsx)(`th`,{className:`py-3 sm:py-4 px-3.5 sm:px-5 font-heading text-sm sm:text-base font-semibold text-white! w-1/4`,children:`Parameter Kualitas`}),(0,E.jsx)(`th`,{className:`py-3 sm:py-4 px-3.5 sm:px-5 font-heading text-sm sm:text-base font-semibold text-emerald-300! w-3/8`,children:`โ˜… Standar PabrikPaving.Id (K-300+)`}),(0,E.jsx)(`th`,{className:`py-3 sm:py-4 px-3.5 sm:px-5 font-heading text-sm sm:text-base font-semibold text-slate-200! w-3/8`,children:`Paving Konvensional / Pinggir Jalan`})]})}),(0,E.jsx)(`tbody`,{className:`divide-y divide-[#E1E4E8] text-[#3D4C5A]`,children:[{feature:`Metode Pencetakan`,factory:`Mesin Press Hidrolik Otomatis Tekanan 250 Bar`,conventional:`Cetakan Manual Tumbuk Tangan / Getar Meja Sederhana`,whyItMatters:`Tekanan hidrolik tinggi memadatkan rongga udara mikro di dalam beton, mencegah air meresap yang menyebabkan kerapuhan.`},{feature:`Kuat Tekan Beton`,factory:`K-300 hingga K-400 (300-400 kg/cmยฒ teruji SNI)`,conventional:`K-150 s/d K-200 (Campuran semen manual tanpa kontrol timbangan)`,whyItMatters:`K-300 sanggup menahan bobot mobil SUV dan muatan harian tanpa retak pada ujung sisi sudut.`},{feature:`Presisi Dimensi`,factory:`Toleransi ketebalan sangat presisi (ยฑ2 mm)`,conventional:`Toleransi tidak rata (ยฑ5-10 mm), permukaan bergelombang`,whyItMatters:`Presisi tinggi membuat sambungan nat antar bata sangat rapat (2mm) sehingga tidak ada celah rumput liar tumbuh liar.`},{feature:`Penyerapan Air & Lumut`,factory:`< 6% (Kerapatan padat tinggi, anti lumut cepat)`,conventional:`> 12% (Rongga porous, cepat berlumut dan licin saat hujan)`,whyItMatters:`Lebih aman bagi lansia dan anak-anak karena permukaan tidak licin saat basah diguyur hujan deras Jogja.`},{feature:`Garansi Pekerjaan Pasang`,factory:`Garansi Resmi Tertulis SPK Anti Amblas`,conventional:`Tanpa garansi / lepas tangan setelah tukang selesai`,whyItMatters:`Memberikan ketenangan pikiran dan perlindungan investasi jangka panjang untuk hunian Anda.`}].map((e,t)=>(0,E.jsxs)(`tr`,{className:t%2==0?`bg-white`:`bg-slate-50/50`,children:[(0,E.jsxs)(`td`,{className:`py-3.5 sm:py-4 px-3.5 sm:px-5 font-bold text-[#1B2631] align-top`,children:[e.feature,(0,E.jsx)(`span`,{className:`block text-[11px] font-normal text-[#475569] mt-1 leading-snug`,children:e.whyItMatters})]}),(0,E.jsx)(`td`,{className:`py-3.5 sm:py-4 px-3.5 sm:px-5 text-[#1B2631] font-semibold bg-emerald-50/30 align-top`,children:(0,E.jsxs)(`div`,{className:`flex items-start gap-1.5 sm:gap-2`,children:[(0,E.jsx)(`span`,{className:`text-emerald-600 font-bold`,children:`โœ“`}),(0,E.jsx)(`span`,{children:e.factory})]})}),(0,E.jsx)(`td`,{className:`py-3.5 sm:py-4 px-3.5 sm:px-5 text-[#475569] align-top`,children:(0,E.jsxs)(`div`,{className:`flex items-start gap-1.5 sm:gap-2`,children:[(0,E.jsx)(`span`,{className:`text-red-500 font-bold`,children:`โœ•`}),(0,E.jsx)(`span`,{children:e.conventional})]})})]},t))})]})}),(0,E.jsxs)(`div`,{className:`p-5 bg-gradient-to-r from-slate-50 to-emerald-50/50 text-xs text-[#3D4C5A] border-t border-[#E1E4E8] flex flex-col sm:flex-row items-center justify-between gap-4`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[(0,E.jsx)(`span`,{className:`w-8 h-8 rounded-full bg-emerald-100 text-emerald-700 flex items-center justify-center font-bold text-sm shrink-0`,children:`๐Ÿ›ก๏ธ`}),(0,E.jsxs)(`p`,{className:`leading-relaxed`,children:[(0,E.jsx)(`strong`,{children:`Jaminan Kualitas Pabrik:`}),` Seluruh batch produksi diuji berkala dengan mesin uji tekan hidrolik digital standar SNI 03-0691-1996 sebelum dikirim ke pelanggan.`]})]}),(0,E.jsx)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20tanya%20spesifikasi%20mutu%20beton%20K300`,target:`_blank`,rel:`noopener noreferrer`,className:`shrink-0 font-bold text-xs bg-[#1B2631] hover:bg-[#2C3E50] text-white px-4 py-2 rounded-lg transition-colors whitespace-nowrap`,children:`Minta Lembar Uji Tekan WA โ†’`})]})]})]})}),et=()=>{let e=[{initials:`PB`,name:`Pak Budi`,loc:`Sleman, DIY`,category:`Pemilik Rumah Tinggal`,quote:`Pengerjaan rapi dan tepat waktu, hingga kini permukaan jalan belum pernah ada yang amblas. Kemiringan airnya sangat pas sehingga saat hujan lebat tidak pernah ada air menggenang di depan garasi.`,stars:`โ˜…โ˜…โ˜…โ˜…โ˜…`},{initials:`IS`,name:`Ibu Sri`,loc:`Bantul, DIY`,category:`Pengelola Ruko`,quote:`Harga langsung dari pabrik jadi lebih hemat dibanding vendor lain. Tim tukang bawa stamper roller sendiri dan kerja cepat sesuai jadwal kontrak garansi tertulis.`,stars:`โ˜…โ˜…โ˜…โ˜…โ˜…`},{initials:`PA`,name:`Pak Anton`,loc:`Kontraktor ยท Kulon Progo`,category:`Proyek Perumahan 35 Unit`,quote:`Tim proyek kami pakai untuk 3 lokasi kavling sekaligus, konsisten kualitasnya. Kuat tekan beton K-300 terbukti kokoh dan tidak ada yang sompel saat penurunan material.`,stars:`โ˜…โ˜…โ˜…โ˜…โ˜…`},{initials:`HR`,name:`Pak Hendra`,loc:`Kotabaru, Kota Jogja`,category:`Owner Kafe & Resto`,quote:`Paving hexagon pesanan kami presisi dan sambungannya rapat. Sangat estetik untuk courtyard outdoor kafe, pengunjung sering memuji konsep lantainya.`,stars:`โ˜…โ˜…โ˜…โ˜…โ˜…`}],[t,n]=(0,_.useState)(0),r=()=>{n(t=>(t+1)%e.length)},i=()=>{n(t=>(t-1+e.length)%e.length)},a=[e[t%e.length],e[(t+1)%e.length],e[(t+2)%e.length]];return(0,E.jsx)(`section`,{className:`py-20 lg:py-24 bg-white text-[#1B2631]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`flex items-center justify-between mb-12 flex-wrap gap-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-1`,children:`Pengalaman Pelanggan`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631]`,children:`Apa Kata Pelanggan Kami`})]}),(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`button`,{type:`button`,onClick:i,className:`w-10 h-10 rounded-full border border-[#E1E4E8] bg-transparent hover:bg-slate-100 text-[#1B2631] flex items-center justify-center cursor-pointer transition-colors text-lg`,"aria-label":`Ulasan Sebelumnya`,children:`โ€น`}),(0,E.jsx)(`button`,{type:`button`,onClick:r,className:`w-10 h-10 rounded-full border border-[#E1E4E8] bg-transparent hover:bg-slate-100 text-[#1B2631] flex items-center justify-center cursor-pointer transition-colors text-lg`,"aria-label":`Ulasan Berikutnya`,children:`โ€บ`})]})]}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6 lg:gap-8`,children:a.map((e,t)=>(0,E.jsxs)(`div`,{className:`bg-[#F8F9FA] rounded-2xl p-6 sm:p-7 border border-[#E1E4E8] flex flex-col justify-between shadow-xs transition-all hover:shadow-md animate-fadeIn`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`div`,{className:`text-[#9A4800] text-sm tracking-widest mb-3`,children:e.stars}),(0,E.jsx)(`div`,{className:`font-heading font-bold text-4xl text-[#9A4800] leading-none mb-2`,children:`โ€œ`}),(0,E.jsx)(`p`,{className:`text-sm text-[#3D4C5A] leading-relaxed`,children:e.quote})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`div`,{className:`h-px bg-[#E1E4E8] my-5`}),(0,E.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,E.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-[#2C3E50] text-white flex items-center justify-center font-heading font-bold text-sm shrink-0`,children:e.initials}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`font-heading font-bold text-base text-[#1B2631] leading-tight block`,children:e.name}),(0,E.jsx)(`div`,{className:`text-xs text-[#546274] leading-tight`,children:e.loc})]})]})]})]},`${e.name}-${t}`))})]})})},tt=()=>{let[e,t]=(0,_.useState)(0),[n,r]=(0,_.useState)(`Sleman`),i=[{name:`Kota Jogja`,leadTime:`24 Jam`,coverage:`Kraton, Gondokusuman, Umbulharjo, Danurejan, Wirobrajan`,note:`Armada khusus jalan kota & survey cepat.`,pinPos:{top:`48%`,left:`50%`}},{name:`Sleman`,leadTime:`Same Day / 24 Jam`,coverage:`Depok, Mlati, Ngaglik, Gamping, Kalasan, Prambanan`,note:`Wilayah dengan volume proyek carport perumahan tertinggi.`,pinPos:{top:`30%`,left:`46%`}},{name:`Bantul`,leadTime:`Same Day (Pusat Pabrik)`,coverage:`Banguntapan, Sewon, Kasihan, Bantul Kota, Piyungan`,note:`Pengiriman tercepat langsung dari pabrik Jl. Wonosari.`,pinPos:{top:`65%`,left:`54%`}},{name:`Kulon Progo`,leadTime:`24 - 48 Jam`,coverage:`Wates, Temon (Kawasan YIA), Sentolo, Pengasih`,note:`Melayani proyek kavling & jalan kawasan industri.`,pinPos:{top:`55%`,left:`26%`}},{name:`Gunungkidul`,leadTime:`24 - 48 Jam`,coverage:`Wonosari, Patuk, Playen, Semanu, Karangmojo`,note:`Pengiriman rute tanjakan dengan armada dump truck khusus.`,pinPos:{top:`70%`,left:`76%`}}],a=i.find(e=>e.name===n)||i[1];return(0,E.jsx)(`section`,{className:`py-16 sm:py-20 bg-[#F8F9FA] text-[#1B2631]`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-10 lg:gap-12 items-start`,children:[(0,E.jsxs)(`div`,{className:`lg:col-span-7 space-y-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-1`,children:`Tanya Jawab Pelanggan`}),(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Pertanyaan yang Sering Ditanyakan`})]}),(0,E.jsx)(`div`,{className:`space-y-3 pt-2`,children:Ve.slice(0,5).map((n,r)=>{let i=e===r;return(0,E.jsxs)(`div`,{className:`bg-white rounded-xl border border-[#E1E4E8] overflow-hidden shadow-2xs transition-all`,children:[(0,E.jsxs)(`button`,{type:`button`,onClick:()=>t(i?-1:r),className:`w-full text-left p-4 sm:p-5 flex items-center justify-between gap-4 cursor-pointer hover:bg-slate-50 transition-colors`,"aria-expanded":i,children:[(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] leading-snug`,children:n.question}),(0,E.jsx)(`span`,{className:`w-7 h-7 rounded-full bg-slate-100 flex items-center justify-center text-sm font-bold text-[#9A4800] shrink-0 transition-transform duration-200 ${i?`rotate-45 bg-[#B35900] text-white`:``}`,children:`+`})]}),i&&(0,E.jsxs)(`div`,{className:`px-4 pb-5 sm:px-5 sm:pb-5 text-xs sm:text-sm text-[#3D4C5A] border-t border-slate-100 pt-3.5 space-y-2 animate-fadeIn leading-relaxed`,children:[(0,E.jsxs)(`div`,{className:`p-3 bg-amber-50/60 rounded-lg border-l-3 border-[#C8690F] text-xs`,children:[(0,E.jsx)(`strong`,{className:`text-[#1B2631] block mb-0.5`,children:`โšก Jawaban Ringkas:`}),(0,E.jsx)(`span`,{children:n.shortAnswer})]}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] pt-1`,children:n.fullAnswer})]})]},n.id)})})]}),(0,E.jsxs)(`div`,{className:`lg:col-span-5 bg-[#2C3E50] text-white rounded-2xl p-6 sm:p-8 shadow-xl relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`relative z-10 space-y-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold text-[#F2994E] uppercase tracking-wider block`,children:`Jangkauan Logistik`}),(0,E.jsx)(`h2`,{className:`text-2xl font-heading font-bold text-white mt-0.5`,children:`Wilayah Layanan Kami`})]}),(0,E.jsxs)(`div`,{className:`w-full h-[200px] rounded-xl relative overflow-hidden bg-gradient-to-br from-[#3A4A58] to-[#26333D] border border-white/10 shadow-inner`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-15`,style:{backgroundImage:`radial-gradient(circle, #fff 1px, transparent 1px)`,backgroundSize:`24px 24px`}}),(0,E.jsxs)(`div`,{className:`absolute top-3 left-3 bg-[#1B2631]/90 backdrop-blur-xs text-white text-[11px] px-2.5 py-1 rounded-md border border-white/15 z-10`,children:[`DIY Yogyakarta (Zona: `,(0,E.jsx)(`strong`,{className:`text-[#F2994E]`,children:a.name}),`)`]}),i.map(e=>{let t=n===e.name;return(0,E.jsx)(`button`,{type:`button`,onClick:()=>r(e.name),style:{top:e.pinPos.top,left:e.pinPos.left},className:`absolute -translate-x-1/2 -translate-y-1/2 transition-transform cursor-pointer ${t?`scale-125 z-20`:`hover:scale-110 z-10 opacity-70`}`,title:e.name,children:(0,E.jsxs)(`span`,{className:`relative flex h-4 w-4`,children:[t&&(0,E.jsx)(`span`,{className:`animate-ping absolute inline-flex h-full w-full rounded-full bg-[#E67E22] opacity-75`}),(0,E.jsx)(`span`,{className:`relative inline-flex rounded-full h-4 w-4 border-2 border-white ${t?`bg-[#E67E22]`:`bg-[#475569]`}`})]})},e.name)}),(0,E.jsx)(`span`,{className:`absolute bottom-2.5 inset-x-0 text-center text-[10px] text-[#C9D1D9]/80 pointer-events-none`,children:`Klik pin peta atau tombol wilayah di bawah`})]}),(0,E.jsx)(`div`,{className:`grid grid-cols-3 sm:grid-cols-5 gap-1.5 pt-1`,children:i.map(e=>{let t=n===e.name;return(0,E.jsx)(`button`,{type:`button`,onClick:()=>r(e.name),className:`text-xs font-semibold px-2 py-2 rounded-lg text-center transition-all cursor-pointer truncate ${t?`bg-[#E67E22] text-[#1B2631] font-bold shadow-xs`:`bg-[#546274]/80 text-white hover:bg-slate-600`}`,children:e.name},e.name)})}),(0,E.jsxs)(`div`,{className:`p-4 bg-white/5 rounded-xl border border-white/10 space-y-1 text-xs text-[#C9D1D9]`,children:[(0,E.jsxs)(`div`,{className:`flex justify-between items-center text-white font-semibold mb-1`,children:[(0,E.jsxs)(`span`,{children:[`Kabupaten / Kota: `,a.name]}),(0,E.jsxs)(`span`,{className:`text-emerald-400 font-mono text-[11px]`,children:[`Kirim: `,a.leadTime]})]}),(0,E.jsxs)(`p`,{children:[(0,E.jsx)(`strong`,{children:`Kecamatan:`}),` `,a.coverage]}),(0,E.jsx)(`p`,{className:`text-[#F2994E]`,children:a.note})]}),(0,E.jsx)(`p`,{className:`text-xs text-[#C9D1D9] leading-relaxed`,children:`Di luar area di atas? Tetap hubungi kami untuk pengecekan armada dan ketersediaan jadwal.`}),(0,E.jsx)(`div`,{children:(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20di%20wilayah%20${encodeURIComponent(a.name)}%20ingin%20cek%20ongkir%20dan%20jadwal%20survey`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631]! font-bold text-xs h-11 rounded-lg transition-colors shadow-sm`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsxs)(`span`,{children:[`Cek Pengiriman ke `,a.name]})]})})]})]})]})})})},nt=({onNavigate:e})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsx)(qe,{onScrollToCalculator:()=>{let e=document.getElementById(`calculator`);e&&e.scrollIntoView({behavior:`smooth`})},onScrollToProducts:()=>e(`harga`)}),(0,E.jsx)(`section`,{className:`py-20 lg:py-24 bg-white border-b border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-14`,children:[(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Kenapa Pilih PabrikPaving.Id`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#334155] mt-3`,children:`Empat alasan pelanggan rumah tinggal dan kontraktor memilih kami berulang kali.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6 lg:gap-8`,children:[(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center hover:border-[#1B2631] transition-colors group`,children:[(0,E.jsx)(`div`,{className:`w-14 h-14 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mx-auto mb-4 group-hover:bg-[#B35900] group-hover:text-white transition-colors`,children:`๐Ÿ›ก๏ธ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Bergaransi Resmi`}),(0,E.jsx)(`p`,{className:`text-xs text-[#334155] leading-relaxed`,children:`Garansi resmi pemasangan tertulis SPK di setiap kontrak kerja sama.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center hover:border-[#1B2631] transition-colors group`,children:[(0,E.jsx)(`div`,{className:`w-14 h-14 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mx-auto mb-4 group-hover:bg-[#B35900] group-hover:text-white transition-colors`,children:`๐Ÿงฑ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Bahan Berkualitas (K-300+)`}),(0,E.jsx)(`p`,{className:`text-xs text-[#334155] leading-relaxed`,children:`Dicetak dari mutu beton K-300 ke atas, diuji tekan sebelum kirim ke lokasi proyek.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center hover:border-[#1B2631] transition-colors group`,children:[(0,E.jsx)(`div`,{className:`w-14 h-14 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mx-auto mb-4 group-hover:bg-[#B35900] group-hover:text-white transition-colors`,children:`๐Ÿ‘ท`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Tim Profesional`}),(0,E.jsx)(`p`,{className:`text-xs text-[#334155] leading-relaxed`,children:`Tukang berpengalaman 10+ tahun, rapi dan presisi di setiap sambungan dan tali air.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center hover:border-[#1B2631] transition-colors group`,children:[(0,E.jsx)(`div`,{className:`w-14 h-14 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mx-auto mb-4 group-hover:bg-[#B35900] group-hover:text-white transition-colors`,children:`๐Ÿญ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Harga Pabrik / Langsung`}),(0,E.jsx)(`p`,{className:`text-xs text-[#334155] leading-relaxed`,children:`Beli langsung dari pabrik โ€” tanpa markup distributor, harga lebih hemat dan transparan.`})]})]}),(0,E.jsxs)(`div`,{className:`mt-12 max-w-4xl mx-auto p-6 bg-[#EDEAE3]/60 rounded-2xl border border-[#E1E4E8] text-xs sm:text-sm text-[#3D4C5A] leading-relaxed`,children:[(0,E.jsx)(`strong`,{className:`text-[#1B2631] block mb-1.5 font-heading text-base`,children:`Tentang PabrikPaving.Id Yogyakarta`}),(0,E.jsx)(`p`,{children:`PabrikPaving.Id memproduksi dan memasang paving block, hexagon, dan grass block untuk area Jogja, Sleman, Bantul, Kulon Progo, dan Gunungkidul. Dengan lebih dari satu dekade pengalaman di lapangan, kami mencetak sendiri material dengan standar mutu beton K-300 ke atas dan menguji tekan setiap batch sebelum dikirim ke lokasi proyek. Setiap pekerjaan pemasangan โ€” dari halaman rumah tinggal sampai proyek kavling dan komersial โ€” dikerjakan tim internal dan bergaransi resmi tertulis SPK anti amblas.`})]})]})}),(0,E.jsx)(Qe,{onSelectForCalculator:()=>{let e=document.getElementById(`calculator`);e&&e.scrollIntoView({behavior:`smooth`})}}),(0,E.jsx)(Je,{onNavigateToGallery:()=>e(`galeri`)}),(0,E.jsx)(Ze,{}),(0,E.jsx)($e,{}),(0,E.jsx)(Ye,{}),(0,E.jsx)(et,{}),(0,E.jsx)(tt,{}),(0,E.jsxs)(`section`,{className:`py-16 sm:py-20 bg-[#2C3E50] text-white text-center relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 relative z-10 flex flex-col items-center justify-center text-center gap-6`,children:[(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-white! tracking-tight text-center max-w-3xl`,children:`Siap Memulai Proyek Anda?`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9]! max-w-xl text-center leading-relaxed m-0 mx-auto`,children:`Konsultasikan kebutuhan luasan, jenis tanah, dan pemilihan model paving bersama tim kami. Dapatkan penawaran harga pabrik dan survey lokasi tanpa dipungut biaya.`}),(0,E.jsxs)(`div`,{className:`pt-2 flex flex-col sm:flex-row items-center justify-center gap-3 sm:gap-4 w-full sm:w-auto`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20proyek%20paving`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631]! font-bold text-sm px-7 h-12 rounded-xl transition-all shadow-lg shadow-black/20`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Konsultasi Gratis via WhatsApp`})]}),(0,E.jsxs)(`a`,{href:`#calculator`,onClick:e=>{e.preventDefault();let t=document.getElementById(`calculator`);t&&t.scrollIntoView({behavior:`smooth`})},className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 border-2 border-white/80 hover:border-white text-white hover:bg-white hover:text-[#1B2631] font-semibold text-sm px-7 h-12 rounded-xl transition-all cursor-pointer backdrop-blur-xs`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ“`}),(0,E.jsx)(`span`,{children:`Hitung Estimasi Biaya`})]})]})]})]})]}),rt=({onNavigate:e})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Layanan Kami`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Layanan Kami`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Jual paving block langsung dari pabrik dan jasa pemasangan profesional bergaransi resmi SPK untuk area Jogja, Sleman, Bantul, Kulon Progo, dan Gunungkidul.`})]})]}),(0,E.jsx)(`section`,{className:`py-14 bg-white border-b border-[#E1E4E8]`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`max-w-4xl mx-auto p-6 sm:p-8 bg-[#F8F9FA] rounded-2xl border border-[#E1E4E8] text-sm text-[#3D4C5A] leading-relaxed`,children:[(0,E.jsx)(`strong`,{className:`text-base font-heading font-bold text-[#1B2631] block mb-2`,children:`Dua Solusi Utama untuk Kebutuhan Perkerasan Anda`}),(0,E.jsxs)(`p`,{children:[`PabrikPaving.Id melayani dua kebutuhan utama: penjualan material conblock langsung dari pabrik dengan standar mutu beton K-300 ke atas, dan jasa pemasangan komplit oleh tim internal yang dilindungi garansi resmi tertulis SPK. Layanan kami mencakup proyek rumah tinggal, carport, halaman ruko komersial, hingga kavling dan jalan perumahan pengembang berskala ribuan meter persegi. Lihat rincian biaya di `,(0,E.jsx)(`a`,{href:`/harga/`,onClick:t=>{t.preventDefault(),e(`harga`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`Daftar Harga Paving 2026`}),` atau cek hasil kerja nyata kami di `,(0,E.jsx)(`a`,{href:`/galeri/`,onClick:t=>{t.preventDefault(),e(`galeri`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`Galeri Proyek Dokumentasi`}),`.`]})]})})}),(0,E.jsx)(`section`,{className:`py-20 bg-white`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-14`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Lingkup Pekerjaan`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Apa yang Kami Kerjakan`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-2`,children:`Layanan menyeluruh mulai dari konsultasi awal, uji mutu, hingga finishing rapi bergaransi.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 lg:gap-8`,children:[(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐Ÿงฑ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Jual Paving Block Pabrik`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Paving Block Bata (Holland), Hexagon (Segi Enam), dan Grass Block dicetak sendiri dengan mesin press hidrolik tekanan 250 bar formula K-300+ tanpa markup toko/distributor.`})]}),(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐Ÿ‘ท`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Jasa Pasang Borongan & All-in`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Dikerjakan tukang spesialis berpengalaman 10+ tahun. Level kemiringan air akurat, pemadatan tanah dengan stamper vibratory, dan garansi resmi tertulis SPK di kontrak kerja sama.`})]}),(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐Ÿ“`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Survey & Konsultasi Kebutuhan`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Bantuan survey gratis ke lokasi Anda di Sleman, Bantul, Jogja Kota, Kulon Progo, dan Gunungkidul untuk mengukur luasan, kontur kemiringan air, dan sampel fisik material.`})]}),(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐ŸŽจ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Custom Pola & Desain Interlocking`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Tersedia pola Herringbone 90ยฐ, Herringbone 45ยฐ, Basket Weave, Stretcher Bond, serta kombinasi warna terakota dan abu semen sesuai estetika hunian Anda.`})]}),(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐Ÿšš`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Pengiriman Armada Pabrik`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Armada dump truck harian langsung dari pabrik di Banguntapan Bantul. Perlindungan tepi aman dan tenaga bongkar muat profesional sampai titik lokasi kerja.`})]}),(0,E.jsxs)(`div`,{className:`p-7 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] hover:shadow-md transition-all`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-xl bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-2xl mb-4`,children:`๐Ÿ—๏ธ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-[#1B2631] mb-2`,children:`Proyek Kawasan & Kontraktor`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Kapasitas produksi pabrik harian tinggi untuk menyuplai proyek jalan perumahan, kawasan ruko, pergudangan, maupun pengembang skala besar dengan mutu seragam.`})]})]})]})}),(0,E.jsx)(`section`,{className:`py-20 bg-[#F8F9FA] border-t border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-14`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Alur Transparan`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`4 Langkah Mudah Pengerjaan`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-2`,children:`Dari konsultasi awal hingga halaman rumah Anda terpasang kokoh bergaransi.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:[(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-[#1B2631] text-white flex items-center justify-center font-heading font-bold text-base mb-4`,children:`1`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Konsultasi WhatsApp`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Kirimkan estimasi luasan area, lokasi kecamatan, dan rencana fungsi beban kendaraan via WhatsApp.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-[#1B2631] text-white flex items-center justify-center font-heading font-bold text-base mb-4`,children:`2`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Survey & Estimasi RAB`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Tim teknis datang mengecek kontur tanah, menentukan jalur air, dan memberikan rincian penawaran harga pasti.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-[#1B2631] text-white flex items-center justify-center font-heading font-bold text-base mb-4`,children:`3`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Produksi & Kirim`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Material diuji tekan di pabrik dan dikirim langsung tepat waktu bersama perlengkapan stamper dan abu batu.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-10 h-10 rounded-full bg-[#1B2631] text-white flex items-center justify-center font-heading font-bold text-base mb-4`,children:`4`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Pemasangan & Garansi`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Pemasangan rapi pola interlocking, pengisian nat pasir, pemadatan akhir, dan serah terima sertifikat garansi resmi tertulis SPK anti amblas.`})]})]}),(0,E.jsx)(`div`,{className:`text-center mt-12`,children:(0,E.jsx)(`a`,{href:`/harga/`,onClick:t=>{t.preventDefault(),e(`harga`)},className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 bg-[#1B2631] hover:bg-[#2C3E50] text-white font-semibold text-sm px-8 h-12 rounded-xl transition-all cursor-pointer shadow-md`,children:(0,E.jsx)(`span`,{children:`Lihat Rincian Daftar Harga & Estimasi Biaya โ†’`})})})]})})]}),it=({onNavigate:e})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer transition-colors`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Harga Paving`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Daftar Harga Paving Block Jogja`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Daftar harga resmi pabrik untuk 8 varian conblock press hidrolik standar SNI mutu K200, K300, dan K400 langsung dari pabrik di Daerah Istimewa Yogyakarta.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white border-b border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row sm:items-end justify-between mb-8 gap-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-1`,children:`Pricelist Terkini Pabrik 2026`}),(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Tabel Harga 8 Model Paving Block (Per Meter)`})]}),(0,E.jsx)(`span`,{className:`text-xs text-[#475569]`,children:`*Harga franco truk pabrik (belum termasuk ongkos pasang)`})]}),(0,E.jsxs)(`div`,{className:`rounded-2xl border border-[#E1E4E8] shadow-xs overflow-hidden`,children:[(0,E.jsxs)(`div`,{className:`sm:hidden px-4 py-2 bg-slate-100 border-b border-[#E1E4E8] text-[11px] text-[#546274] flex items-center justify-between font-medium`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ‘‰ Geser tabel ke kanan untuk melihat rincian K200 / K300 / K400`}),(0,E.jsx)(`span`,{className:`font-bold`,children:`โ‡„`})]}),(0,E.jsx)(`div`,{className:`overflow-x-auto`,style:{WebkitOverflowScrolling:`touch`},children:(0,E.jsxs)(`table`,{className:`w-full text-left text-xs sm:text-sm border-collapse min-w-[700px]`,children:[(0,E.jsx)(`thead`,{children:(0,E.jsxs)(`tr`,{className:`bg-[#1B2631] text-white`,children:[(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-4 sm:px-5 font-heading text-sm sm:text-base font-semibold`,children:`Nama Produk`}),(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-3 sm:px-4 font-heading text-sm sm:text-base font-semibold text-center`,children:`Ketebalan`}),(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-3 sm:px-4 font-heading text-sm sm:text-base font-semibold text-center text-[#F2994E]`,children:`K200`}),(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-3 sm:px-4 font-heading text-sm sm:text-base font-semibold text-center text-[#F2994E]`,children:`K300`}),(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-3 sm:px-4 font-heading text-sm sm:text-base font-semibold text-center text-[#F2994E]`,children:`K400`}),(0,E.jsx)(`th`,{className:`py-3.5 sm:py-4 px-4 sm:px-5 font-heading text-sm sm:text-base font-semibold text-center`,children:`Aksi`})]})}),(0,E.jsx)(`tbody`,{className:`divide-y divide-[#E1E4E8] text-[#3D4C5A]`,children:Re.map((e,t)=>(0,E.jsx)(_.Fragment,{children:e.pricingVariants.map((n,r)=>{let i=r===0,a=t%2==0?`bg-white`:`bg-slate-50/50`;return(0,E.jsxs)(`tr`,{className:a,children:[i&&(0,E.jsx)(`td`,{rowSpan:e.pricingVariants.length,className:`py-4 px-5 font-bold text-[#1B2631] align-middle border-r border-[#E1E4E8]/60`,children:(0,E.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-lg overflow-hidden bg-slate-100 shrink-0 border border-[#E1E4E8]`,children:(0,E.jsx)(`img`,{src:e.image,alt:`Paving Block ${e.name} ${e.model} Pabrik Jogja`,title:`Paving ${e.name} ${e.model} Mutu K-200 K-300 K-400`,className:`w-full h-full object-contain p-1`,loading:`lazy`,width:48,height:48})}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`font-heading font-bold text-sm sm:text-base text-[#1B2631] block`,children:e.name}),(0,E.jsxs)(`span`,{className:`text-[11px] font-normal text-[#475569] block mt-0.5`,children:[e.piecesPerM2,` pcs / mยฒ`]})]})]})}),(0,E.jsx)(`td`,{className:`py-3 px-4 text-center font-semibold text-[#1B2631] border-r border-[#E1E4E8]/40`,children:n.thickness}),(0,E.jsx)(`td`,{className:`py-3 px-4 text-center font-heading font-bold text-sm sm:text-base text-[#1B2631] tabular-nums border-r border-[#E1E4E8]/40`,children:n.k200===null?(0,E.jsx)(`span`,{className:`text-[#A0AEC0]`,children:`-`}):(0,E.jsx)(`span`,{children:n.k200.toLocaleString(`id-ID`)})}),(0,E.jsx)(`td`,{className:`py-3 px-4 text-center font-heading font-bold text-sm sm:text-base text-[#9A4800] tabular-nums border-r border-[#E1E4E8]/40`,children:n.k300===null?(0,E.jsx)(`span`,{className:`text-[#A0AEC0]`,children:`-`}):(0,E.jsx)(`span`,{children:n.k300.toLocaleString(`id-ID`)})}),(0,E.jsx)(`td`,{className:`py-3 px-4 text-center font-heading font-bold text-sm sm:text-base text-emerald-700 tabular-nums border-r border-[#E1E4E8]/40`,children:n.k400===null?(0,E.jsx)(`span`,{className:`text-[#A0AEC0]`,children:`-`}):(0,E.jsx)(`span`,{children:n.k400.toLocaleString(`id-ID`)})}),i&&(0,E.jsx)(`td`,{rowSpan:e.pricingVariants.length,className:`py-4 px-5 text-center align-middle`,children:(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20tertarik%20dengan%20produk%20${encodeURIComponent(e.name)}`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1.5 px-3 py-2 rounded-lg bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs transition-colors shadow-xs`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Pesan WA`})]})})]},`${e.id}-${n.thickness}`)})},e.id))})]})})]}),(0,E.jsxs)(`div`,{className:`mt-5 p-4 rounded-xl bg-amber-50 border border-amber-200/80 text-xs text-[#3D4C5A] space-y-2`,children:[(0,E.jsxs)(`p`,{className:`font-bold text-[#9A4800] flex items-center gap-1.5`,children:[(0,E.jsx)(`span`,{children:`โš ๏ธ`}),(0,E.jsx)(`span`,{children:`Catatan Tambahan Warna:`})]}),(0,E.jsx)(`p`,{className:`leading-relaxed`,children:(0,E.jsx)(`strong`,{children:Ie})}),(0,E.jsxs)(`p`,{className:`text-[#546274] leading-relaxed pt-1 border-t border-amber-200/60`,children:[`*Untuk paket terima beres (Material + Pasir Abu Batu + Jasa Pasang Tukang + Pemadatan Stamper + Garansi Resmi Tertulis SPK), estimasi mulai berkisar Rp 135.000 โ€“ Rp 165.000 per mยฒ tergantung kondisi lahan. Pelajari rincian lengkapnya di halaman `,(0,E.jsx)(`a`,{href:`/layanan/`,onClick:t=>{t.preventDefault(),e(`layanan`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`Layanan Jasa Pasang Paving Block`}),` atau lihat portofolio di `,(0,E.jsx)(`a`,{href:`/galeri/`,onClick:t=>{t.preventDefault(),e(`galeri`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`Galeri Proyek Dokumentasi`}),`.`]})]})]})}),(0,E.jsx)(Ye,{}),(0,E.jsx)(`section`,{className:`py-20 bg-[#F8F9FA] border-t border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Faktor Penentu Biaya`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Kenapa Harga Total Bisa Berbeda?`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-2`,children:`Empat faktor utama yang memengaruhi penawaran akhir dari estimator kami.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:[(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] text-center shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿ“ฆ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Volume Pesanan`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Pemesanan dalam jumlah luas (> 100 mยฒ atau > 500 mยฒ) mendapatkan diskon harga volume pabrik yang lebih ekonomis.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] text-center shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿ“`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Jarak Pengiriman`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Biaya armada dump truck menyesuaikan radius jarak proyek dari pabrik kami di Banguntapan Bantul atau Sleman.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] text-center shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿงฑ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Ketebalan 6cm vs 8cm vs 10cm`}),(0,E.jsxs)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:[`Paving 8cm dan 10cm membutuhkan agregat padat untuk truk/bus. Baca panduan `,(0,E.jsx)(`a`,{href:`/blog/apa-itu-paving-block-k250`,className:`text-[#B35900] underline font-medium hover:text-[#9A4800]`,children:`Kuat Tekan Beton K250 vs K300`}),` & panduan `,(0,E.jsx)(`a`,{href:`/blog/model-paving-block`,className:`text-[#B35900] underline font-medium hover:text-[#9A4800]`,children:`8+ Model Paving`}),`.`]})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] text-center shadow-xs`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿ‘ท`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Kondisi Kontur Tanah`}),(0,E.jsxs)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:[`Lahan lembek butuh perataan khusus. Simak panduan teknis `,(0,E.jsx)(`a`,{href:`/blog/stabilisasi-tanah-lempung-paving-block-jogja`,className:`text-[#B35900] underline font-medium hover:text-[#9A4800]`,children:`Stabilisasi Tanah Lempung di Jogja`}),` agar bebas amblas.`]})]})]})]})})]}),at=({onNavigate:e})=>{let[t,n]=(0,_.useState)(`all`),[r,i]=(0,_.useState)(null),a=t===`all`?ze:ze.filter(e=>e.category===t);return(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Galeri Proyek`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Galeri Proyek Pemasangan`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Kumpulan dokumentasi proyek pemasangan paving block yang telah kami selesaikan di area Jogja, Sleman, Bantul, Kulon Progo, dan Gunungkidul.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-10`,children:[(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Semua Proyek Kami`}),(0,E.jsx)(`p`,{className:`text-sm text-[#546274] mt-2`,children:`Filter berdasarkan kategori untuk melihat contoh pengerjaan yang paling sesuai dengan kebutuhan Anda.`})]}),(0,E.jsx)(`div`,{className:`flex items-center justify-start sm:justify-center gap-2 mb-10 overflow-x-auto no-scrollbar py-1 -mx-4 px-4 sm:mx-0 sm:px-0`,children:[{id:`all`,label:`Semua Kategori`},{id:`rumah`,label:`Area Rumah`},{id:`parkiran`,label:`Parkiran Ruko`},{id:`komersial`,label:`Komersial & Wisata`},{id:`jalan`,label:`Jalan Komplek`}].map(e=>(0,E.jsx)(`button`,{type:`button`,onClick:()=>n(e.id),className:`px-4 py-2 rounded-full text-xs sm:text-sm font-semibold transition-all cursor-pointer whitespace-nowrap shrink-0 ${t===e.id?`bg-[#1B2631] text-white shadow-xs`:`bg-[#F8F9FA] border border-[#E1E4E8] text-[#546274] hover:bg-slate-200`}`,children:e.label},e.id))}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 lg:gap-8`,children:a.map(e=>(0,E.jsxs)(`article`,{className:`bg-white rounded-2xl border border-[#E1E4E8] overflow-hidden shadow-xs hover:shadow-lg transition-all flex flex-col justify-between group`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`button`,{type:`button`,onClick:()=>i(e),className:`w-full aspect-4/3 relative overflow-hidden bg-slate-100 cursor-pointer block text-left`,children:[(0,E.jsx)(`img`,{src:e.image,alt:`${e.title} - ${e.location} Jogja`,title:`${e.title} - Area ${e.areaM2} mยฒ (${e.location})`,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,loading:`lazy`,width:600,height:450}),(0,E.jsx)(`div`,{className:`absolute top-3 left-3 bg-[#1B2631]/80 backdrop-blur-xs text-white text-[11px] font-semibold px-2.5 py-1 rounded-sm`,children:e.categoryLabel}),(0,E.jsxs)(`div`,{className:`absolute bottom-3 left-3 right-3 bg-gradient-to-t from-black/80 via-black/40 to-transparent p-2 rounded-md text-white text-xs flex justify-between items-center`,children:[(0,E.jsxs)(`span`,{children:[`๐Ÿ“ `,e.location]}),(0,E.jsxs)(`span`,{className:`font-semibold text-emerald-300`,children:[e.areaM2,` mยฒ`]})]})]}),(0,E.jsxs)(`div`,{className:`p-6`,children:[(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] group-hover:text-[#9A4800] transition-colors leading-snug`,children:e.title}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#334155] mt-2 line-clamp-2 leading-relaxed`,children:e.description})]})]}),(0,E.jsxs)(`div`,{className:`p-6 pt-0 flex items-center justify-between border-t border-slate-100 text-xs`,children:[(0,E.jsxs)(`span`,{className:`text-[#334155]`,children:[`Pola: `,e.pattern.split(` `)[0]]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>i(e),className:`font-semibold text-[#9A4800] hover:underline cursor-pointer py-1.5 min-h-[36px] flex items-center`,children:`Lihat Proyek โ†’`})]})]},e.id))}),a.length===0&&(0,E.jsx)(`p`,{className:`text-center text-sm text-[#475569] py-12`,children:`Belum ada proyek pada kategori ini.`}),(0,E.jsx)(`p`,{className:`text-center text-xs text-[#475569] mt-12 max-w-xl mx-auto leading-relaxed`,children:`*Seluruh foto pengerjaan di atas merupakan hasil dokumentasi proyek riil tim PabrikPaving.Id di Daerah Istimewa Yogyakarta dalam format WebP teroptimasi.`})]})}),(0,E.jsxs)(`section`,{className:`py-16 sm:py-20 bg-[#2C3E50] text-white text-center relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 relative z-10 flex flex-col items-center justify-center text-center gap-6`,children:[(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-white! tracking-tight text-center max-w-3xl`,children:`Punya Proyek Serupa di Wilayah Anda?`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9]! max-w-xl text-center leading-relaxed m-0 mx-auto`,children:`Ceritakan kebutuhan Anda, kami bantu hitung estimasi biaya dan jadwalkan survey lokasi tanpa dipungut biaya.`}),(0,E.jsxs)(`div`,{className:`pt-2 flex flex-col sm:flex-row items-center justify-center gap-3 sm:gap-4 w-full sm:w-auto`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20tertarik%20dengan%20hasil%20proyek%20di%20galeri`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631]! font-bold text-sm px-7 h-12 rounded-xl transition-all shadow-lg shadow-black/20`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Konsultasi Gratis via WhatsApp`})]}),(0,E.jsxs)(`a`,{href:`/harga/`,onClick:t=>{t.preventDefault(),e(`harga`)},className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 border-2 border-white/80 hover:border-white text-white hover:bg-white hover:text-[#1B2631] font-semibold text-sm px-7 h-12 rounded-xl transition-all cursor-pointer backdrop-blur-xs`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ“`}),(0,E.jsx)(`span`,{children:`Lihat Harga & Estimasi`})]})]})]})]}),r&&(0,E.jsx)(`div`,{className:`fixed inset-0 z-50 bg-[#1B2631]/80 backdrop-blur-xs flex items-center justify-center p-4`,onClick:()=>i(null),children:(0,E.jsxs)(`div`,{className:`bg-white rounded-2xl max-w-2xl w-full max-h-[90vh] overflow-y-auto shadow-2xl border border-[#E1E4E8]`,onClick:e=>e.stopPropagation(),children:[(0,E.jsxs)(`div`,{className:`aspect-16/9 relative overflow-hidden bg-slate-900`,children:[(0,E.jsx)(`img`,{src:r.image,alt:`${r.title} - ${r.location} Jogja`,title:`${r.title} - Detail Dokumentasi Proyek Paving`,className:`w-full h-full object-cover`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>i(null),className:`absolute top-4 right-4 w-9 h-9 rounded-full bg-white text-[#1B2631] flex items-center justify-center font-bold text-sm shadow-md hover:bg-slate-100 cursor-pointer`,"aria-label":`Tutup`,children:`โœ•`})]}),(0,E.jsxs)(`div`,{className:`p-6 sm:p-8 space-y-4`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold text-[#9A4800] bg-orange-50 px-2.5 py-1 rounded-sm`,children:r.categoryLabel}),(0,E.jsx)(`span`,{className:`text-xs text-[#475569]`,children:r.location})]}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-2xl text-[#1B2631]`,children:r.title}),(0,E.jsx)(`p`,{className:`text-sm text-[#546274] leading-relaxed`,children:r.description}),(0,E.jsxs)(`div`,{className:`bg-[#F8F9FA] p-4 rounded-xl border border-[#E1E4E8] grid grid-cols-2 sm:grid-cols-4 gap-3 text-xs`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-[#475569] block`,children:`Luas Area`}),(0,E.jsxs)(`strong`,{className:`text-sm text-[#1B2631] tabular-nums`,children:[r.areaM2,` mยฒ`]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-[#475569] block`,children:`Material`}),(0,E.jsx)(`strong`,{className:`text-xs text-[#1B2631]`,children:r.productUsed})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-[#475569] block`,children:`Pola Kuncian`}),(0,E.jsx)(`strong`,{className:`text-xs text-[#1B2631]`,children:r.pattern})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-[#475569] block`,children:`Waktu Selesai`}),(0,E.jsxs)(`strong`,{className:`text-sm text-emerald-600 tabular-nums`,children:[r.completionDays,` Hari`]})]})]}),(0,E.jsxs)(`div`,{className:`pt-4 flex flex-col sm:flex-row gap-3`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20tanya%20biaya%20pemasangan%20seperti%20proyek%20"${encodeURIComponent(r.title)}"`,target:`_blank`,rel:`noopener noreferrer`,className:`flex-1 py-3 px-4 rounded-lg bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-sm text-center transition-colors shadow-sm flex items-center justify-center gap-2`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Tanya Proyek Ini via WhatsApp`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>i(null),className:`py-3 px-5 rounded-lg border border-[#E1E4E8] text-[#546274] hover:bg-slate-100 text-sm font-semibold transition-colors cursor-pointer`,children:`Tutup`})]})]})]})})]})},ot=()=>{let[e,t]=(0,_.useState)(0),n=He[e];return(0,E.jsx)(`section`,{id:`area`,className:`py-20 lg:py-24 bg-white text-[#1B2631]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Jangkauan Layanan Cepat`}),(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight`,children:`Wilayah Pengiriman & Jasa Pasang di DIY`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] mt-3`,children:`Armada dump truck harian kami menjangkau seluruh kecamatan di Daerah Istimewa Yogyakarta dengan fasilitas survey dan konsultasi gratis.`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-8 items-start`,children:[(0,E.jsx)(`div`,{className:`lg:col-span-5 space-y-2`,children:He.map((n,r)=>{let i=e===r;return(0,E.jsxs)(`button`,{type:`button`,onClick:()=>t(r),className:`w-full text-left p-4 rounded-xl border transition-all cursor-pointer flex items-center justify-between ${i?`border-[#1B2631] bg-[#1B2631] text-white shadow-md`:`border-[#E1E4E8] bg-white text-[#3D4C5A] hover:bg-slate-50`}`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`font-heading font-bold text-base leading-tight block`,children:n.name}),(0,E.jsxs)(`p`,{className:`text-xs mt-1 ${i?`text-[#C9D1D9]`:`text-[#475569]`}`,children:[n.center.split(`,`).slice(0,3).join(`, `),`...`]})]}),(0,E.jsx)(`div`,{className:`text-right`,children:(0,E.jsxs)(`span`,{className:`text-xs font-bold px-2 py-0.5 rounded-sm ${i?`bg-emerald-500/20 text-emerald-300`:`bg-emerald-50 text-emerald-700`}`,children:[n.completedProjects,`+ Proyek`]})})]},n.name)})}),(0,E.jsxs)(`div`,{className:`lg:col-span-7 bg-[#2C3E50] text-white rounded-2xl p-6 sm:p-8 shadow-xl relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`relative z-10 space-y-6`,children:[(0,E.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 border-b border-white/15 pb-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs text-[#F2994E] uppercase tracking-wider font-semibold`,children:`Cakupan Operasional Terjadwal`}),(0,E.jsx)(`h3`,{className:`text-2xl sm:text-3xl font-heading font-bold text-white mt-1`,children:n.name})]}),(0,E.jsxs)(`div`,{className:`inline-flex items-center gap-1.5 bg-emerald-500/20 text-emerald-300 border border-emerald-500/30 px-3 py-1 rounded-full text-xs font-bold`,children:[(0,E.jsx)(`span`,{children:`โœ“`}),(0,E.jsx)(`span`,{children:n.surveyStatus})]})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-4 text-xs`,children:[(0,E.jsxs)(`div`,{className:`bg-white/5 backdrop-blur-xs p-4 rounded-xl border border-white/10`,children:[(0,E.jsx)(`span`,{className:`text-[#C9D1D9] block mb-1`,children:`Kecamatan Utama:`}),(0,E.jsx)(`strong`,{className:`text-white text-sm leading-snug`,children:n.center})]}),(0,E.jsxs)(`div`,{className:`bg-white/5 backdrop-blur-xs p-4 rounded-xl border border-white/10`,children:[(0,E.jsx)(`span`,{className:`text-[#C9D1D9] block mb-1`,children:`Kecepatan Pengiriman:`}),(0,E.jsx)(`strong`,{className:`text-emerald-400 text-sm`,children:n.deliveryTime})]}),(0,E.jsxs)(`div`,{className:`bg-white/5 backdrop-blur-xs p-4 rounded-xl border border-white/10`,children:[(0,E.jsx)(`span`,{className:`text-[#C9D1D9] block mb-1`,children:`Model Paling Sering Dipilih:`}),(0,E.jsx)(`strong`,{className:`text-[#F2994E] text-sm`,children:n.popularModel})]}),(0,E.jsxs)(`div`,{className:`bg-white/5 backdrop-blur-xs p-4 rounded-xl border border-white/10`,children:[(0,E.jsx)(`span`,{className:`text-[#C9D1D9] block mb-1`,children:`Proyek Terselesaikan:`}),(0,E.jsxs)(`strong`,{className:`text-white text-sm tabular-nums`,children:[n.completedProjects,`+ Titik Pemasangan`]})]})]}),(0,E.jsx)(`div`,{className:`pt-2 flex flex-col sm:flex-row items-center gap-3`,children:(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20di%20wilayah%20${encodeURIComponent(n.name)},%20ingin%20jadwalkan%20survey%20lokasi%20paving.`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full sm:w-auto flex-1 flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631]! font-bold text-sm h-12 rounded-xl transition-colors shadow-sm`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsxs)(`span`,{children:[`Jadwalkan Survey Gratis di `,n.name]})]})})]})]})]})]})})},st=({onNavigate:e})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Tentang Kami`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Tentang PabrikPaving.Id`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Mengenal lebih dekat PabrikPaving.Id, produsen manufaktur beton pracetak dan kontraktor jasa pasang paving block bergaransi resmi SPK untuk wilayah Yogyakarta dan Jawa Tengah.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white border-b border-[#E1E4E8]`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`max-w-3xl mx-auto space-y-6 text-sm text-[#3D4C5A] leading-relaxed`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-1`,children:`Dedikasi Kualitas Lapangan`}),(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Perjalanan Kami Menghadirkan Halaman & Jalan Tahan Lama`})]}),(0,E.jsxs)(`p`,{children:[(0,E.jsx)(`strong`,{children:`PabrikPaving.Id`}),` adalah produsen dan penyedia `,(0,E.jsx)(`a`,{href:`/layanan/`,onClick:t=>{t.preventDefault(),e(`layanan`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`jasa pemasangan paving block`}),` (conblock), hexagon, kanstin beton, dan grass block yang telah melayani kebutuhan infrastruktur luar ruangan di Yogyakarta selama lebih dari satu dekade. Fasilitas pabrik kami yang berpusat di Banguntapan Bantul dan unit pendukung di Sleman memproduksi beton pracetak dengan mesin press hidrolik tekanan tinggi 250 bar.`]}),(0,E.jsxs)(`p`,{children:[`Kami menguji tekan secara berkala setiap batch produksi untuk memastikan tercapainya standar kuat tekan beton K-300 hingga K-400 sesuai standar SNI 03-0691-1996. Klien kami meliputi pemilik hunian pribadi, pengelola kafe dan villa, hingga pengembang kawasan perumahan dan kontraktor sipil di Daerah Istimewa Yogyakarta. Cek penawaran langsung dari pabrik di `,(0,E.jsx)(`a`,{href:`/harga/`,onClick:t=>{t.preventDefault(),e(`harga`)},className:`text-[#B35900] underline font-semibold hover:text-[#9A4800]`,children:`Daftar Harga Paving Jogja`}),`.`]}),(0,E.jsxs)(`div`,{className:`p-5 rounded-xl bg-[#F8F9FA] border-l-4 border-[#C8690F] space-y-2`,children:[(0,E.jsx)(`strong`,{className:`text-[#1B2631] font-heading font-bold text-base block`,children:`Komitmen Garansi Resmi SPK`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274]`,children:`Berbeda dari penyedia pasang biasa, kami memberikan garansi pemeliharaan tertulis resmi di dalam SPK terhadap risiko amblas, penurunan kontur tanah, atau paving bergelombang akibat proses instalasi. Jika terjadi kendala pada masa garansi, tim perbaikan kami akan menanganinya tanpa biaya tambahan.`})]})]})})}),(0,E.jsx)(`section`,{className:`py-16 bg-[#F8F9FA] border-b border-[#E1E4E8]`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`max-w-3xl mx-auto`,children:[(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631] mb-6`,children:`Visi & Misi Perusahaan`}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-6`,children:[(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`span`,{className:`text-2xl mb-2 block`,children:`๐ŸŽฏ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Visi Kami`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#546274] leading-relaxed`,children:`Menjadi pabrik dan kontraktor perkerasan paving block nomor satu di Yogyakarta dan Jawa Tengah yang dikenal atas mutu kuat tekan beton presisi, ramah lingkungan, dan perlindungan garansi terpercaya bagi setiap pelanggan.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-white border border-[#E1E4E8] shadow-xs`,children:[(0,E.jsx)(`span`,{className:`text-2xl mb-2 block`,children:`๐Ÿš€`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] mb-2`,children:`Misi Kami`}),(0,E.jsxs)(`ul`,{className:`text-xs sm:text-sm text-[#546274] space-y-2`,children:[(0,E.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] font-bold`,children:`1.`}),(0,E.jsx)(`span`,{children:`Menjaga mutu beton konsisten K-300+ dengan pasir progo bermutu dan semen formula padat.`})]}),(0,E.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] font-bold`,children:`2.`}),(0,E.jsx)(`span`,{children:`Memberikan harga tangan pertama langsung pabrik tanpa markup perantara toko bangunan.`})]}),(0,E.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] font-bold`,children:`3.`}),(0,E.jsx)(`span`,{children:`Menerapkan SOP pemadatan tanah sub-base mesin compactor agar hasil pasang anti amblas.`})]})]})]})]})]})})}),(0,E.jsx)(`section`,{className:`py-20 bg-white`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`span`,{className:`text-xs font-semibold tracking-wider uppercase text-[#9A4800] block mb-2`,children:`Kelebihan Utama`}),(0,E.jsx)(`h2`,{className:`text-3xl font-heading font-bold text-[#1B2631]`,children:`Kenapa Klien Mempercayai Kami`})]}),(0,E.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-6`,children:[(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿ›ก๏ธ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Bergaransi Resmi SPK`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Garansi pemeliharaan resmi anti amblas dan bergelombang tertulis di setiap SPK kontrak kerja.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿงฑ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Bahan K-300+ SNI`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Dicetak dari mesin press hidrolik otomatis tekanan 250 bar, tahan aus, dan anti licin.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿ‘ท`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Tim Ahli 10+ Tahun`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Tukang berpengalaman belasan tahun dengan pola rapi dan kemiringan tali air akurat.`})]}),(0,E.jsxs)(`div`,{className:`p-6 rounded-2xl bg-[#F8F9FA] border border-[#E1E4E8] text-center`,children:[(0,E.jsx)(`div`,{className:`w-12 h-12 rounded-full bg-[#FCE8D5] text-[#9A4800] flex items-center justify-center text-xl mx-auto mb-3`,children:`๐Ÿญ`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] mb-1`,children:`Harga Pabrik Langsung`}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] leading-relaxed`,children:`Tanpa markup distributor toko bangunan, harga lebih hemat dengan ketersediaan stok terjamin.`})]})]})]})}),(0,E.jsx)(ot,{}),(0,E.jsx)(`section`,{className:`py-16 sm:py-20 bg-white text-center border-t border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 flex flex-col items-center justify-center text-center gap-6`,children:[(0,E.jsx)(`h2`,{className:`text-3xl sm:text-4xl font-heading font-bold text-[#1B2631] tracking-tight text-center max-w-3xl`,children:`Ingin Tahu Lebih Lanjut Seputar Produk & Layanan Kami?`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#546274] max-w-xl text-center leading-relaxed m-0 mx-auto`,children:`Tim teknisi kami siap membantu menjawab pertanyaan Anda atau menjadwalkan survey lokasi tanpa dipungut biaya.`}),(0,E.jsxs)(`div`,{className:`pt-2 flex flex-col sm:flex-row items-center justify-center gap-3 sm:gap-4 w-full sm:w-auto`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20seputar%20pabrik%20paving`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631]! font-bold text-sm px-7 h-12 rounded-xl transition-all shadow-lg shadow-black/10`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Konsultasi Gratis via WhatsApp`})]}),(0,E.jsxs)(`a`,{href:`/kontak/`,onClick:t=>{t.preventDefault(),e(`kontak`)},className:`w-full sm:w-auto inline-flex items-center justify-center gap-2 border-2 border-[#1B2631] text-[#1B2631] hover:bg-[#1B2631] hover:text-white font-semibold text-sm px-7 h-12 rounded-xl transition-all cursor-pointer`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ“`}),(0,E.jsx)(`span`,{children:`Lihat Kontak & Workshop Pabrik`})]})]})]})})]}),ct=({onNavigate:e,onNavigateArticle:t})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer transition-colors`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Blog & Artikel`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Blog & Panduan Paving Block`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Tips, panduan teknis, dan informasi seputar paving block: perbandingan material, model, spesifikasi kuat tekan beton, dan estimasi biaya dari PabrikPaving.Id.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:[(0,E.jsxs)(`div`,{className:`max-w-2xl mx-auto text-center mb-12`,children:[(0,E.jsx)(`h2`,{className:`text-2xl sm:text-3xl font-heading font-bold text-[#1B2631]`,children:`Artikel & Panduan Terbaru`}),(0,E.jsx)(`p`,{className:`text-sm text-[#546274] mt-2`,children:`Pelajari wawasan teknis seputar perkerasan halaman sebelum Anda memulai proyek.`})]}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 lg:gap-8`,children:Be.map(e=>(0,E.jsxs)(`article`,{className:`bg-white rounded-2xl border border-[#E1E4E8] overflow-hidden shadow-xs hover:shadow-lg transition-all flex flex-col justify-between group`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`a`,{href:`/blog/${e.slug}`,onClick:n=>{n.preventDefault(),t(e.slug)},className:`w-full aspect-16/10 relative overflow-hidden bg-slate-100 cursor-pointer block text-left`,children:[(0,E.jsx)(`img`,{src:e.image,alt:e.title,title:e.title,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,loading:`lazy`}),(0,E.jsx)(`div`,{className:`absolute top-3 left-3 bg-[#1B2631]/80 backdrop-blur-xs text-white text-[11px] font-semibold px-2.5 py-1 rounded-sm`,children:e.category})]}),(0,E.jsxs)(`div`,{className:`p-6`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-3 text-xs text-[#334155] mb-2 font-medium`,children:[(0,E.jsx)(`time`,{dateTime:e.date,children:e.date}),(0,E.jsx)(`span`,{children:`ยท`}),(0,E.jsxs)(`span`,{children:[`โฑ๏ธ `,e.readTime]})]}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-lg text-[#1B2631] group-hover:text-[#9A4800] transition-colors leading-snug`,children:(0,E.jsx)(`a`,{href:`/blog/${e.slug}`,onClick:n=>{n.preventDefault(),t(e.slug)},className:`text-left cursor-pointer hover:underline`,children:e.title})}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#334155] mt-2.5 line-clamp-3 leading-relaxed`,children:e.summary})]})]}),(0,E.jsxs)(`div`,{className:`p-6 pt-0 border-t border-slate-100 flex items-center justify-between text-xs`,children:[(0,E.jsx)(`span`,{className:`font-semibold text-[#9A4800]`,children:e.category}),(0,E.jsxs)(`a`,{href:`/blog/${e.slug}`,onClick:n=>{n.preventDefault(),t(e.slug)},className:`font-bold text-[#1B2631] hover:text-[#9A4800] transition-colors cursor-pointer inline-flex items-center gap-1 min-h-[36px] py-1`,children:[(0,E.jsx)(`span`,{children:`Baca Selengkapnya`}),(0,E.jsx)(`span`,{children:`โ†’`})]})]})]},e.id))}),(0,E.jsx)(`p`,{className:`text-center text-xs text-[#475569] mt-12 max-w-xl mx-auto leading-relaxed`,children:`*Semua artikel disusun oleh tim teknisi lapangan PabrikPaving.Id berdasarkan pengalaman fabrikasi dan pemasangan conblock di Daerah Istimewa Yogyakarta.`})]})})]}),lt=({onNavigate:e})=>{let[t,n]=(0,_.useState)(``),[r,i]=(0,_.useState)(``),[a,o]=(0,_.useState)(`Jasa Pasang Paving Block All-in`),[s,c]=(0,_.useState)(``),[l,u]=(0,_.useState)(!1);return(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Kontak Kami`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Kontak PabrikPaving.Id`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Ada pertanyaan seputar produk, estimasi harga, survey lokasi, atau jadwal pengiriman? Tim kami siap melayani Anda melalui kanal resmi di bawah ini.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white`,children:(0,E.jsx)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12`,children:(0,E.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-8 lg:gap-12`,children:[(0,E.jsxs)(`div`,{className:`lg:col-span-5 bg-[#2C3E50] text-white rounded-2xl p-6 sm:p-8 shadow-xl space-y-6 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`relative z-10 space-y-6`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`span`,{className:`text-xs text-[#F2994E] uppercase tracking-wider font-semibold`,children:`Informasi Resmi`}),(0,E.jsx)(`h2`,{className:`text-2xl font-heading font-bold text-white mt-1`,children:`Kantor & Workshop Pabrik`})]}),(0,E.jsxs)(`div`,{className:`space-y-4 text-xs sm:text-sm text-[#C9D1D9]`,children:[(0,E.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,E.jsx)(`span`,{className:`text-lg`,children:`๐Ÿ“`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`text-white block`,children:`Alamat Pabrik`}),(0,E.jsx)(`span`,{children:`Jl. Wonosari KM 4, Gang Nuri 98, Banguntapan, Bantul, D.I. Yogyakarta 55198`})]})]}),(0,E.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,E.jsx)(`span`,{className:`text-lg`,children:`๐Ÿ“ž`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`text-white block`,children:`Telepon & WhatsApp`}),(0,E.jsx)(`span`,{children:`0818-0648-3333 (Layanan Konsultasi Cepat)`})]})]}),(0,E.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,E.jsx)(`span`,{className:`text-lg`,children:`โœ‰๏ธ`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`text-white block`,children:`Email Resmi`}),(0,E.jsx)(`span`,{children:`info@pabrikpaving.id / pabrikpaving@gmail.com`})]})]}),(0,E.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,E.jsx)(`span`,{className:`text-lg`,children:`โฐ`}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`strong`,{className:`text-white block`,children:`Jam Operasional`}),(0,E.jsxs)(`div`,{className:`space-y-0.5 text-xs text-[#C9D1D9] mt-1`,children:[(0,E.jsxs)(`div`,{className:`flex justify-between gap-4`,children:[(0,E.jsx)(`span`,{children:`Senin โ€“ Jumat`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`08.00 โ€“ 17.00 WIB`})]}),(0,E.jsxs)(`div`,{className:`flex justify-between gap-4`,children:[(0,E.jsx)(`span`,{children:`Sabtu`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`08.00 โ€“ 15.00 WIB`})]}),(0,E.jsxs)(`div`,{className:`flex justify-between gap-4`,children:[(0,E.jsx)(`span`,{children:`Minggu / Tanggal Merah`}),(0,E.jsx)(`span`,{className:`text-[#F2994E]`,children:`Jadwal Khusus / Survey Janji Temu`})]})]})]})]})]}),(0,E.jsx)(`div`,{className:`pt-2`,children:(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20ingin%20konsultasi%20langsung`,target:`_blank`,rel:`noopener noreferrer`,className:`w-full flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-sm h-12 rounded-lg transition-colors shadow-xs`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Chat Cepat via WhatsApp`})]})})]})]}),(0,E.jsxs)(`div`,{className:`lg:col-span-7 bg-white rounded-2xl border border-[#E1E4E8] p-6 sm:p-8 shadow-xs`,children:[(0,E.jsx)(`h2`,{className:`text-2xl font-heading font-bold text-[#1B2631] mb-1`,children:`Kirim Pesan & Permintaan Survey`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#475569] mb-6`,children:`Isi form berikut dan tim estimator kami akan segera menghubungi Anda dengan rincian jadwal dan sampel produk.`}),l?(0,E.jsxs)(`div`,{className:`p-6 bg-emerald-50 rounded-xl border border-emerald-200 text-center space-y-3`,children:[(0,E.jsx)(`span`,{className:`text-3xl`,children:`โœ…`}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-xl text-emerald-900`,children:`Pesan Anda Berhasil Terkirim!`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-emerald-800 leading-relaxed`,children:`Terima kasih telah menghubungi PabrikPaving.Id. Tim kami telah menerima pesan Anda dan akan merespons melalui WhatsApp/telepon dalam waktu singkat.`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>u(!1),className:`mt-2 text-xs font-semibold text-[#1B2631] underline cursor-pointer`,children:`Kirim pesan lain`})]}):(0,E.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),u(!0);let n=`Halo PabrikPaving.Id, saya mengirim pesan melalui formulir kontak website: - Nama: ${t} - No. WhatsApp: ${r} - Kebutuhan: ${a} - Pesan: ${s}`;window.open(`https://wa.me/6281806483333?text=${encodeURIComponent(n)}`,`_blank`)},className:`space-y-4`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`contact-name`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Nama Lengkap`}),(0,E.jsx)(`input`,{id:`contact-name`,type:`text`,required:!0,value:t,onChange:e=>n(e.target.value),placeholder:`Contoh: Budi Santoso`,className:`w-full h-12 rounded-lg border border-[#E1E4E8] px-4 text-base sm:text-sm text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-2 focus:ring-[#C8690F]/20`})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`contact-phone`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`No. WhatsApp / Telepon`}),(0,E.jsx)(`input`,{id:`contact-phone`,type:`tel`,required:!0,value:r,onChange:e=>i(e.target.value),placeholder:`Contoh: 081234567890`,className:`w-full h-12 rounded-lg border border-[#E1E4E8] px-4 text-base sm:text-sm text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-2 focus:ring-[#C8690F]/20`})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`contact-service`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Kebutuhan Layanan`}),(0,E.jsxs)(`select`,{id:`contact-service`,value:a,onChange:e=>o(e.target.value),className:`w-full h-12 rounded-lg border border-[#E1E4E8] px-4 text-base sm:text-sm text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-2 focus:ring-[#C8690F]/20 bg-white`,children:[(0,E.jsx)(`option`,{value:`Jasa Pasang Paving Block All-in`,children:`Jasa Pasang All-in (Material + Pasir + Tukang + Garansi)`}),(0,E.jsx)(`option`,{value:`Beli Material Paving Saja Langsung Pabrik`,children:`Beli Material Paving Saja Langsung Pabrik`}),(0,E.jsx)(`option`,{value:`Permintaan Survey Lokasi & Desain Pola`,children:`Permintaan Survey Lokasi & Desain Pola`}),(0,E.jsx)(`option`,{value:`Pekerjaan Jalan Kawasan Perumahan / Kontraktor`,children:`Pekerjaan Jalan Kawasan Perumahan / Kontraktor`}),(0,E.jsx)(`option`,{value:`Lainnya`,children:`Lainnya`})]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`label`,{htmlFor:`contact-message`,className:`block text-xs font-bold text-[#1B2631] uppercase tracking-wider mb-1.5`,children:`Rincian Kebutuhan & Lokasi Proyek`}),(0,E.jsx)(`textarea`,{id:`contact-message`,required:!0,rows:4,value:s,onChange:e=>c(e.target.value),placeholder:`Ceritakan perkiraan luas area (mยฒ), lokasi kecamatan di Jogja, serta jenis kendaraan yang melintas...`,className:`w-full rounded-lg border border-[#E1E4E8] p-4 text-base sm:text-sm text-[#1B2631] focus:outline-none focus:border-[#C8690F] focus:ring-2 focus:ring-[#C8690F]/20 resize-y`})]}),(0,E.jsx)(`button`,{type:`submit`,className:`w-full h-13 rounded-lg bg-[#B35900] hover:bg-[#8f4a00] text-white font-bold text-sm transition-colors shadow-sm cursor-pointer`,children:`Kirim Pesan & Buka di WhatsApp`})]})]})]})})}),(0,E.jsx)(ot,{})]})},ut=({onNavigate:e})=>(0,E.jsxs)(`div`,{className:`animate-fadeIn`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-14 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-8 lg:px-12 relative z-10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-[#C9D1D9] mb-3`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:t=>{t.preventDefault(),e(`home`)},className:`hover:text-white cursor-pointer`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-white font-medium`,children:`Kebijakan Privasi`})]}),(0,E.jsx)(`h1`,{className:`text-3xl sm:text-4xl lg:text-5xl font-heading font-bold text-white tracking-tight`,children:`Kebijakan Privasi (Privacy Policy)`}),(0,E.jsx)(`p`,{className:`text-sm sm:text-base text-[#C9D1D9] mt-3 max-w-2xl leading-relaxed`,children:`Bagaimana PabrikPaving.Id mengumpulkan, menggunakan, dan melindungi informasi pribadi Anda saat menggunakan website ini.`})]})]}),(0,E.jsx)(`section`,{className:`py-16 bg-white`,children:(0,E.jsxs)(`div`,{className:`max-w-[860px] mx-auto px-4 sm:px-8 space-y-8 text-sm text-[#3D4C5A] leading-relaxed`,children:[(0,E.jsxs)(`div`,{className:`p-4 rounded-xl bg-orange-50 border border-orange-200 text-xs text-[#546274] leading-relaxed`,children:[(0,E.jsx)(`strong`,{className:`text-[#1B2631] block mb-1`,children:`Catatan Kebijakan:`}),`Kebijakan privasi ini berlaku untuk seluruh layanan digital dan komunikasi transaksi pemesanan paving block pada situs resmi PabrikPaving.Id. Terakhir diperbarui: 25 Februari 2026.`]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h2`,{className:`text-xl font-heading font-bold text-[#1B2631] mb-2`,children:`1. Informasi yang Kami Kumpulkan`}),(0,E.jsx)(`p`,{children:`Kami mengumpulkan informasi kontak yang Anda berikan secara sukarela saat mengisi formulir estimasi, menghubungi kami melalui WhatsApp, atau meminta survey lokasi, antara lain:`}),(0,E.jsxs)(`ul`,{className:`list-disc pl-5 mt-2 space-y-1`,children:[(0,E.jsx)(`li`,{children:`Nama lengkap dan nomor telepon/WhatsApp aktif.`}),(0,E.jsx)(`li`,{children:`Lokasi proyek atau alamat pengiriman material di wilayah Yogyakarta dan sekitarnya.`}),(0,E.jsx)(`li`,{children:`Rincian perkiraan luasan lahan (mยฒ) dan preferensi model paving block.`})]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h2`,{className:`text-xl font-heading font-bold text-[#1B2631] mb-2`,children:`2. Penggunaan Informasi`}),(0,E.jsx)(`p`,{children:`Informasi yang Anda berikan semata-mata digunakan untuk:`}),(0,E.jsxs)(`ul`,{className:`list-disc pl-5 mt-2 space-y-1`,children:[(0,E.jsx)(`li`,{children:`Menghitung estimasi Rencana Anggaran Biaya (RAB) dan jadwal armada pengiriman.`}),(0,E.jsx)(`li`,{children:`Melakukan koordinasi survey lokasi teknis oleh tim estimator kami.`}),(0,E.jsx)(`li`,{children:`Penerbitan surat perjanjian kerja sama (SPK) dan sertifikat garansi pemeliharaan resmi anti amblas.`})]})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h2`,{className:`text-xl font-heading font-bold text-[#1B2631] mb-2`,children:`3. Kerahasiaan & Pihak Ketiga`}),(0,E.jsx)(`p`,{children:`PabrikPaving.Id memegang teguh komitmen privasi pelanggan. Kami tidak pernah memperjualbelikan, menyewakan, atau mendistribusikan data kontak pribadi Anda kepada pihak ketiga manapun untuk keperluan pemasaran di luar ruang lingkup pengerjaan proyek Anda.`})]}),(0,E.jsxs)(`div`,{children:[(0,E.jsx)(`h2`,{className:`text-xl font-heading font-bold text-[#1B2631] mb-2`,children:`4. Kontak & Hak Anda`}),(0,E.jsxs)(`p`,{children:[`Anda berhak meminta penghapusan riwayat data konsultasi atau memperbarui informasi kontak Anda kapan saja dengan menghubungi admin resmi kami melalui email `,(0,E.jsx)(`strong`,{children:`info@pabrikpaving.id`}),` atau telepon/WA di `,(0,E.jsx)(`strong`,{children:`0818-0648-3333`}),`.`]})]}),(0,E.jsxs)(`div`,{className:`pt-6 border-t border-[#E1E4E8] flex justify-between items-center text-xs text-[#475569]`,children:[(0,E.jsx)(`span`,{children:`PabrikPaving.Id ยท Banguntapan, Bantul, DIY`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>e(`home`),className:`text-[#9A4800] font-semibold hover:underline cursor-pointer`,children:`Kembali ke Beranda Utama โ†’`})]})]})})]}),dt=({post:e,onNavigate:t,onNavigateArticle:n})=>{(0,_.useEffect)(()=>{window.scrollTo({top:0,behavior:`smooth`}),typeof document<`u`&&(document.title=`${e.title} - PabrikPaving.Id`)},[e]);let r=Be.filter(t=>t.slug!==e.slug).slice(0,3);return(0,E.jsxs)(`article`,{className:`animate-fadeIn bg-white text-[#1B2631]`,children:[(0,E.jsxs)(`section`,{className:`bg-[#2C3E50] text-white py-12 lg:py-16 relative overflow-hidden`,children:[(0,E.jsx)(`div`,{className:`absolute inset-0 opacity-10 hero-pattern pointer-events-none`}),(0,E.jsxs)(`div`,{className:`max-w-[960px] mx-auto px-4 sm:px-6 lg:px-8 relative z-10`,children:[(0,E.jsxs)(`nav`,{"aria-label":`Breadcrumb`,className:`flex items-center flex-wrap gap-2 text-xs text-[#C9D1D9] mb-4`,children:[(0,E.jsx)(`a`,{href:`/`,onClick:e=>{e.preventDefault(),t(`home`)},className:`hover:text-white cursor-pointer transition-colors`,children:`Home`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`a`,{href:`/blog`,onClick:e=>{e.preventDefault(),t(`blog`)},className:`hover:text-white cursor-pointer transition-colors`,children:`Blog & Panduan`}),(0,E.jsx)(`span`,{"aria-hidden":`true`,children:`/`}),(0,E.jsx)(`span`,{className:`text-[#F2994E] font-medium truncate max-w-[200px] sm:max-w-xs`,children:e.category})]}),(0,E.jsx)(`div`,{className:`inline-block bg-[#F2994E] text-[#1B2631] text-xs font-bold px-3 py-1 rounded-sm uppercase tracking-wider mb-4`,children:e.category}),(0,E.jsx)(`h1`,{className:`text-2xl sm:text-3xl lg:text-4xl font-heading font-bold text-white tracking-tight leading-snug`,children:e.title}),(0,E.jsxs)(`div`,{className:`flex items-center flex-wrap gap-4 mt-4 text-xs sm:text-sm text-[#C9D1D9] pt-2 border-t border-white/10`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`w-7 h-7 rounded-full bg-white/10 flex items-center justify-center text-xs font-bold text-[#F2994E]`,children:`PP`}),(0,E.jsx)(`span`,{children:`Tim Teknis PabrikPaving.Id`})]}),(0,E.jsx)(`span`,{children:`ยท`}),(0,E.jsx)(`time`,{dateTime:e.date,children:e.date}),(0,E.jsx)(`span`,{children:`ยท`}),(0,E.jsxs)(`span`,{children:[`โฑ๏ธ `,e.readTime]}),(0,E.jsx)(`span`,{children:`ยท`}),(0,E.jsx)(`span`,{className:`text-emerald-400 font-medium`,children:`โœ“ Terverifikasi Standar SNI`})]})]})]}),(0,E.jsx)(`section`,{className:`py-12 lg:py-16`,children:(0,E.jsxs)(`div`,{className:`max-w-[860px] mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,E.jsx)(`div`,{className:`mb-8`,children:(0,E.jsxs)(`a`,{href:`/blog`,onClick:e=>{e.preventDefault(),t(`blog`)},className:`inline-flex items-center gap-2 text-xs sm:text-sm font-semibold text-[#9A4800] hover:text-[#8C4600] transition-colors`,children:[(0,E.jsx)(`span`,{children:`โ†`}),(0,E.jsx)(`span`,{children:`Kembali ke Semua Artikel`})]})}),(0,E.jsx)(`div`,{className:`rounded-2xl overflow-hidden shadow-lg border border-[#E1E4E8] bg-slate-100 aspect-16/9 sm:aspect-16/10 mb-8`,children:(0,E.jsx)(`img`,{src:e.image,alt:e.title,title:e.title,className:`w-full h-full object-cover`,loading:`eager`})}),(0,E.jsxs)(`div`,{className:`bg-[#F8F9FA] border-l-4 border-[#B35900] p-5 sm:p-6 rounded-r-xl mb-8`,children:[(0,E.jsx)(`strong`,{className:`block text-xs font-bold uppercase tracking-wider text-[#9A4800] mb-1`,children:`Ringkasan Panduan`}),(0,E.jsxs)(`p`,{className:`text-sm sm:text-base text-[#3D4C5A] leading-relaxed italic`,children:[`"`,e.summary,`"`]})]}),e.toc&&e.toc.length>0&&(0,E.jsxs)(`nav`,{"aria-label":`Daftar Isi Artikel`,className:`mb-10 p-5 sm:p-6 bg-[#F8F9FA] border border-[#E1E4E8] rounded-2xl shadow-xs`,children:[(0,E.jsxs)(`div`,{className:`flex items-center gap-2 mb-3`,children:[(0,E.jsx)(`span`,{className:`text-base`,"aria-hidden":`true`,children:`๐Ÿ“‘`}),(0,E.jsx)(`h2`,{className:`font-heading font-bold text-base sm:text-lg text-[#1B2631]`,children:`Daftar Isi Artikel`})]}),(0,E.jsx)(`ul`,{className:`space-y-2 text-xs sm:text-sm`,children:e.toc.map((e,t)=>(0,E.jsx)(`li`,{className:`${e.level===3?`pl-4 border-l-2 border-[#E1E4E8] text-[#546274]`:`font-medium text-[#1B2631]`}`,children:(0,E.jsxs)(`a`,{href:`#${e.id}`,onClick:t=>{t.preventDefault();let n=document.getElementById(e.id);n&&n.scrollIntoView({behavior:`smooth`})},className:`hover:text-[#B35900] transition-colors flex items-center gap-1.5`,children:[(0,E.jsx)(`span`,{className:`text-[#B35900] text-xs`,"aria-hidden":`true`,children:`โ–ธ`}),(0,E.jsx)(`span`,{children:e.title})]})},t))})]}),(0,E.jsx)(`div`,{className:`prose prose-slate max-w-none text-sm sm:text-base text-[#3D4C5A] leading-relaxed`,onClick:e=>{let r=e.target.closest(`a`);if(!r)return;let i=r.getAttribute(`href`);if(!i)return;if(i.startsWith(`#`)){e.preventDefault();let t=i.slice(1),n=document.getElementById(t);n&&n.scrollIntoView({behavior:`smooth`});return}if(i.startsWith(`/blog/`)){e.preventDefault(),n(i.replace(`/blog/`,``));return}let a=i.replace(/^\/+|\/+$/g,``);if(i===`/`||[`home`,`layanan`,`harga`,`galeri`,`tentang`,`blog`,`kontak`,`privacy`].includes(a)){e.preventDefault(),t(i===`/`?`home`:a);return}},children:e.sections&&e.sections.length>0?(0,E.jsx)(`div`,{className:`space-y-6`,children:e.sections.map((e,t)=>(0,E.jsxs)(`section`,{className:`space-y-4`,children:[e.heading&&e.level===3?(0,E.jsxs)(`h3`,{id:e.id,className:`text-lg sm:text-xl font-heading font-bold text-[#1B2631] mt-6 pt-2 scroll-mt-24 flex items-center gap-2`,children:[(0,E.jsx)(`span`,{className:`w-1.5 h-5 bg-[#E67E22] rounded-full inline-block`,"aria-hidden":`true`}),e.heading]}):e.heading?(0,E.jsx)(`h2`,{id:e.id,className:`text-xl sm:text-2xl font-heading font-bold text-[#1B2631] mt-10 pt-4 border-t border-[#E1E4E8] scroll-mt-24`,children:e.heading}):null,e.paragraphs.map((e,t)=>(0,E.jsx)(`p`,{className:`leading-relaxed`,dangerouslySetInnerHTML:{__html:e}},t)),e.bulletPoints&&e.bulletPoints.length>0&&(0,E.jsx)(`ul`,{className:`space-y-2 my-4 list-disc list-inside bg-[#F8F9FA] p-4 sm:p-5 rounded-xl border border-[#E1E4E8]`,children:e.bulletPoints.map((e,t)=>(0,E.jsx)(`li`,{className:`text-xs sm:text-sm text-[#3D4C5A] leading-relaxed`,dangerouslySetInnerHTML:{__html:e}},t))}),e.highlightBox&&(0,E.jsxs)(`div`,{className:`my-6 p-4 sm:p-5 rounded-xl border-l-4 border-[#27AE60] bg-[#F0FDF4] text-[#14532D]`,children:[(0,E.jsx)(`div`,{className:`font-bold text-sm mb-1`,children:e.highlightBox.title}),(0,E.jsx)(`div`,{className:`text-xs sm:text-sm leading-relaxed`,dangerouslySetInnerHTML:{__html:e.highlightBox.text}})]})]},t))}):(0,E.jsx)(`div`,{className:`space-y-6`,children:e.content.map((e,t)=>(0,E.jsx)(`p`,{className:`leading-relaxed`,dangerouslySetInnerHTML:{__html:e}},t))})}),e.relatedLinks&&e.relatedLinks.length>0&&(0,E.jsxs)(`div`,{className:`mt-10 p-6 bg-[#F0F4F8] border border-[#D0D7DE] rounded-xl`,children:[(0,E.jsx)(`strong`,{className:`block font-heading font-bold text-base text-[#1B2631] mb-3`,children:`๐Ÿ”— Halaman Layanan & Rujukan Terkait:`}),(0,E.jsx)(`ul`,{className:`space-y-2.5 text-xs sm:text-sm`,children:e.relatedLinks.map((e,n)=>(0,E.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,E.jsx)(`span`,{className:`text-[#9A4800] font-bold`,children:`โ†’`}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>t(e.pageId),className:`font-medium text-[#9A4800] hover:underline hover:text-[#8C4600] text-left cursor-pointer`,children:e.label})]},n))})]}),(0,E.jsxs)(`div`,{className:`mt-12 p-6 sm:p-8 bg-[#2C3E50] rounded-2xl text-white shadow-xl flex flex-col sm:flex-row items-center justify-between gap-6`,children:[(0,E.jsxs)(`div`,{className:`space-y-2 text-center sm:text-left`,children:[(0,E.jsx)(`h3`,{className:`text-lg sm:text-xl font-heading font-bold text-white`,children:`Butuh Paving Berkualitas atau Jasa Pasang di Jogja?`}),(0,E.jsx)(`p`,{className:`text-xs sm:text-sm text-[#C9D1D9] max-w-lg`,children:`Konsultasikan kebutuhan volume, jenis pola, atau jadwalkan survey lokasi gratis bersama tim teknik sipil PabrikPaving.Id.`})]}),(0,E.jsxs)(`div`,{className:`flex flex-col sm:flex-row gap-3 w-full sm:w-auto shrink-0`,children:[(0,E.jsxs)(`a`,{href:`https://wa.me/6281806483333?text=Halo%20PabrikPaving.Id,%20saya%20membaca%20artikel%20"${encodeURIComponent(e.title)}"%20dan%20ingin%20konsultasi`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center justify-center gap-2 bg-[#25D366] hover:bg-[#1fb958] text-[#1B2631] font-bold text-xs sm:text-sm px-5 py-3 rounded-lg shadow-md transition-all text-center`,children:[(0,E.jsx)(`span`,{children:`๐Ÿ’ฌ`}),(0,E.jsx)(`span`,{children:`Tanya via WhatsApp`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>t(`harga`),className:`inline-flex items-center justify-center gap-2 bg-white/10 hover:bg-white text-white hover:text-[#1B2631] font-semibold text-xs sm:text-sm px-4 py-3 rounded-lg border border-white/20 transition-all text-center cursor-pointer`,children:(0,E.jsx)(`span`,{children:`๐Ÿ“ Hitung Biaya`})})]})]}),(0,E.jsxs)(`div`,{className:`mt-8 pt-6 border-t border-[#E1E4E8] flex justify-between items-center`,children:[(0,E.jsxs)(`a`,{href:`/blog`,onClick:e=>{e.preventDefault(),t(`blog`)},className:`inline-flex items-center gap-2 text-xs sm:text-sm font-semibold text-[#9A4800] hover:text-[#8C4600] transition-colors`,children:[(0,E.jsx)(`span`,{children:`โ†`}),(0,E.jsx)(`span`,{children:`Kembali ke Semua Artikel`})]}),(0,E.jsx)(`button`,{type:`button`,onClick:()=>window.scrollTo({top:0,behavior:`smooth`}),className:`text-xs text-[#475569] hover:text-[#1B2631] cursor-pointer`,children:`โ†‘ Ke Atas`})]})]})}),(0,E.jsx)(`section`,{className:`py-12 bg-[#F8F9FA] border-t border-[#E1E4E8]`,children:(0,E.jsxs)(`div`,{className:`max-w-[1280px] mx-auto px-4 sm:px-6 lg:px-8`,children:[(0,E.jsxs)(`div`,{className:`flex items-center justify-between mb-8`,children:[(0,E.jsx)(`h2`,{className:`text-xl sm:text-2xl font-heading font-bold text-[#1B2631]`,children:`Panduan Lainnya yang Mungkin Bermanfaat`}),(0,E.jsx)(`a`,{href:`/blog`,onClick:e=>{e.preventDefault(),t(`blog`)},className:`text-xs sm:text-sm font-semibold text-[#9A4800] hover:underline`,children:`Lihat Semua โ†’`})]}),(0,E.jsx)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-6`,children:r.map(e=>(0,E.jsxs)(`article`,{className:`bg-white rounded-xl border border-[#E1E4E8] overflow-hidden shadow-xs hover:shadow-md transition-all flex flex-col justify-between group`,children:[(0,E.jsxs)(`div`,{children:[(0,E.jsxs)(`a`,{href:`/blog/${e.slug}`,onClick:t=>{t.preventDefault(),n(e.slug)},className:`block aspect-16/10 relative overflow-hidden bg-slate-100`,children:[(0,E.jsx)(`img`,{src:e.image,alt:e.title,title:e.title,className:`w-full h-full object-cover transition-transform duration-500 group-hover:scale-105`,loading:`lazy`}),(0,E.jsx)(`span`,{className:`absolute top-2.5 left-2.5 bg-[#1B2631]/80 backdrop-blur-xs text-white text-[10px] font-semibold px-2 py-0.5 rounded-xs`,children:e.category})]}),(0,E.jsxs)(`div`,{className:`p-5`,children:[(0,E.jsxs)(`div`,{className:`text-[11px] text-[#475569] mb-1.5`,children:[e.date,` ยท `,e.readTime]}),(0,E.jsx)(`h3`,{className:`font-heading font-bold text-base text-[#1B2631] group-hover:text-[#9A4800] transition-colors leading-snug line-clamp-2`,children:(0,E.jsx)(`a`,{href:`/blog/${e.slug}`,onClick:t=>{t.preventDefault(),n(e.slug)},children:e.title})}),(0,E.jsx)(`p`,{className:`text-xs text-[#546274] mt-2 line-clamp-2 leading-relaxed`,children:e.summary})]})]}),(0,E.jsx)(`div`,{className:`p-5 pt-0`,children:(0,E.jsxs)(`a`,{href:`/blog/${e.slug}`,onClick:t=>{t.preventDefault(),n(e.slug)},className:`text-xs font-bold text-[#9A4800] hover:text-[#8C4600] inline-flex items-center gap-1`,children:[(0,E.jsx)(`span`,{children:`Baca Artikel`}),(0,E.jsx)(`span`,{children:`โ†’`})]})})]},e.id))})]})})]})},ft=e=>e===`home`?`/`:`/${e}/`,pt={"/":`home`,"/home":`home`,"/layanan":`layanan`,"/layanan/":`layanan`,"/layanan-paving-block-jogja":`layanan`,"/layanan-kami":`layanan`,"/harga":`harga`,"/harga/":`harga`,"/harga-paving-block-jogja":`harga`,"/galeri":`galeri`,"/galeri/":`galeri`,"/galeri-proyek-paving":`galeri`,"/tentang":`tentang`,"/tentang/":`tentang`,"/tentang-kami":`tentang`,"/blog":`blog`,"/blog/":`blog`,"/blog-paving-jogja":`blog`,"/kontak":`kontak`,"/kontak/":`kontak`,"/hubungi-kami":`kontak`,"/kontak-kami":`kontak`,"/privacy":`privacy`,"/privacy/":`privacy`,"/kebijakan-privasi":`privacy`,"/privacy-policy":`privacy`},mt=()=>{if(typeof window>`u`)return{view:`home`};let e=window.location.pathname.replace(/\/+$/,``)||`/`,t=e.match(/\/blog\/([a-z0-9-]+)$/i);if(t&&t[1]&&t[1]!==`paving-jogja`&&t[1]!==`detail`)return{view:`blog-detail`,slug:t[1]};if(pt[e]){let t=pt[e];return e===`/home`&&typeof window<`u`&&window.history.replaceState({page:`home`},``,`/`),{view:t}}if(window.__INITIAL_PAGE__){let e=window.__INITIAL_PAGE__;if([`home`,`layanan`,`harga`,`galeri`,`tentang`,`blog`,`kontak`,`privacy`].includes(e))return{view:e}}let n=window.location.hash.replace(/^#\/?/,``).trim();if(n){if(n.startsWith(`blog/`)){let e=n.replace(/^blog\//,``).trim();return e?(window.history.replaceState({page:`blog-detail`,slug:e},``,`/blog/${e}`),{view:`blog-detail`,slug:e}):(window.history.replaceState({page:`blog`},``,`/blog`),{view:`blog`})}if([`home`,`layanan`,`harga`,`galeri`,`tentang`,`blog`,`kontak`,`privacy`].includes(n)){let e=n;return window.history.replaceState({page:e},``,ft(e)),{view:e}}}return{view:`home`}};function ht(){let e=mt(),[t,n]=(0,_.useState)(e.view),[r,i]=(0,_.useState)(e.slug);(0,_.useEffect)(()=>{if(window.location.hash){let e=mt();e.view===`blog-detail`&&e.slug?window.history.replaceState({page:`blog-detail`,slug:e.slug},``,`/blog/${e.slug}`):e.view!==`blog-detail`&&window.history.replaceState({page:e.view},``,ft(e.view))}let e=()=>{let e=mt();n(e.view),i(e.slug)};return window.addEventListener(`popstate`,e),()=>{window.removeEventListener(`popstate`,e)}},[]);let a=e=>{if(n(e),i(void 0),typeof window<`u`){let t=ft(e);window.history.pushState({page:e},``,t)}window.scrollTo({top:0,behavior:`smooth`})},o=e=>{if(n(`blog-detail`),i(e),typeof window<`u`){let t=`/blog/${e}`;window.history.pushState({page:`blog-detail`,slug:e},``,t)}window.scrollTo({top:0,behavior:`smooth`})},s=r?Be.find(e=>e.slug===r):void 0;return(0,E.jsxs)(`div`,{className:`min-h-screen bg-white text-[#3D4C5A] selection:bg-[#B35900] selection:text-white flex flex-col justify-between`,children:[(0,E.jsx)(We,{currentPage:t===`blog-detail`?`blog`:t,onSelectPage:a}),(0,E.jsxs)(`main`,{className:`grow`,children:[t===`home`&&(0,E.jsx)(nt,{onNavigate:a}),t===`layanan`&&(0,E.jsx)(rt,{onNavigate:a}),t===`harga`&&(0,E.jsx)(it,{onNavigate:a}),t===`galeri`&&(0,E.jsx)(at,{onNavigate:a}),t===`tentang`&&(0,E.jsx)(st,{onNavigate:a}),t===`blog`&&(0,E.jsx)(ct,{onNavigate:a,onNavigateArticle:o}),t===`blog-detail`&&s?(0,E.jsx)(dt,{post:s,onNavigate:a,onNavigateArticle:o}):t===`blog-detail`?(0,E.jsx)(ct,{onNavigate:a,onNavigateArticle:o}):null,t===`kontak`&&(0,E.jsx)(lt,{onNavigate:a}),t===`privacy`&&(0,E.jsx)(ut,{onNavigate:a})]}),(0,E.jsx)(Ge,{onNavigate:a}),(0,E.jsx)(Ke,{})]})}var gt=document.getElementById(`root`);if(gt){let e=()=>(0,v.createRoot)(gt).render((0,E.jsx)(ht,{}));typeof window<`u`&&`requestIdleCallback`in window?window.requestIdleCallback(e,{timeout:1500}):setTimeout(e,0)}