efficient-storefront-blocks 0.33.0 → 0.33.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import{$ as pz,$b as sy,$d as Am,$f as le,$g as or,A as g5,Aa as Cz,Ab as Fz,Ac as vy,Ad as Hy,Ae as t7,Af as jl,Ag as Sw,Ai as o4,B as tz,Ba as P9,Bb as Tz,Bc as fy,Bd as El,Bf as g1,Bg as Lw,Bh as Nm,Bi as wC,C as az,Cb as hm,Cc as by,Cd as O9,Ce as K9,Cf as Q9,Cg as Aw,Ch as ir,D as sz,Da as dl,Db as N9,Dc as Ml,Dd as R3,De as Zl,Df as c2,Dg as b8,Dh as _m,E as cz,Eb as um,Ec as R9,Ed as Fy,Ee as Ky,Eg as cr,Eh as Qw,F as lz,Fa as gl,Fb as dm,Fc as xy,Fd as Ty,Fe as $9,Ff as Kl,Fg as x8,Fh as nr,G as cm,Ga as rm,Gc as zm,Gd as Cm,Ge as e3,Gf as v1,Gh as he,H as rz,Hb as qz,Hc as Sl,Hd as Vl,Hf as q1,Hg as Hw,Hh as eC,I as oz,Ib as Wz,Ic as zy,Id as Py,Ie as Y9,If as $l,Ig as Fw,Ih as tC,Ja as s6,Jb as Uz,Jc as yy,Jd as Ey,Je as $y,Jf as Pm,Jg as Tw,Jh as Sa,Kb as yl,Kc as Al,Kd as Nl,Ke as Dl,Kf as T2,Kg as Pw,Kh as aC,L as il,La as kz,Lb as jz,Ld as km,Le as T,Lh as sC,Ma as p2,Mb as Kz,Md as Vy,Me as O,Mh as cC,Na as om,Nb as $z,Nc as wy,Nd as Mm,Ne as q,Nf as ee,Nh as hr,Ob as _9,Od as G9,Oe as f1,Of as te,Oh as lC,Pa as a1,Pb as X6,Pc as p,Pd as Ny,Pe as H1,Pf as Yl,Pg as w5,Ph as rC,Qa as F2,Qb as Yz,Qc as p3,Qd as q9,Qe as E1,Qf as s7,Qg as Ew,Qh as oC,Ra as Mz,Rb as ya,Rd as W9,Rf as mw,Rg as Vw,Sd as _y,Sf as pw,T as iz,Tb as Xz,Td as Iy,Te as x,Tf as Em,Tg as C5,Th as q4,Ud as _l,Ue as b5,Uf as uw,Ug as Nw,Uh as iC,V as nz,Ve as Yy,Vg as oe,Vh as mr,Wb as Jz,Wc as Cy,We as Y1,Wf as Xl,Wg as _w,Wh as La,Xb as Qz,Xc as v8,Xd as Ry,Xe as Xy,Xf as Jl,Xg as lr,Xh as c7,Yb as ey,Yd as Sm,Ye as Ol,Yf as ae,Yg as rr,Z as hz,Zb as ty,Zc as Hl,Zd as Ca,Ze as a7,Zf as se,Zg as Iw,Zh as nC,_ as mz,_b as ay,_c as ky,_d as Lm,_e as X9,_f as ce,_g as Rw,_h as Im,a as Rx,aa as uz,ab as c6,ac as cy,ad as My,ae as Hm,af as s1,ag as dw,ah as Bw,b as rl,ba as lm,bb as d8,bc as wl,bd as J2,be as Fm,bf as Z3,bg as gw,bh as z8,c as Bx,ca as dz,cb as Y6,cc as Cl,cd as Sy,ce as Tm,cf as Jy,cg as vw,ch as e0,d as xa,da as gz,dc as gm,dd as c4,de as By,df as Gl,dh as i6,ea as nl,eb as Sz,ec as R2,ed as Ly,ee as Zy,ef as Qy,eg as Ql,eh as M,f as Zx,fa as hl,fc as E0,fd as ym,fe as r6,ff as ew,fg as fw,fh as R0,ga as vz,gc as ly,gd as Q2,ge as Il,gf as ql,gg as bw,gh as Y,ha as fz,hc as kl,hd as wm,he as Rl,hf as Wl,hg as re,hh as z0,hi as hC,ia as bz,ib as im,ic as g8,id as B9,ie as Dy,if as Ul,ih as Zw,ii as mC,j as Dx,ja as H9,jb as nm,jc as vm,jd as Fl,je as Oy,jf as tw,jg as xw,jh as Dw,ji as pC,ka as F9,kd as Tl,ke as Gy,kf as aw,kh as Ow,ki as uC,la as ml,lb as Lz,lc as fm,ld as Ay,lf as sw,lh as Gw,li as dC,m as Ox,mc as bm,mf as cw,mg as zw,mh as qw,mi as Aa,n as Gx,nc as ry,nd as l4,nf as Ma,nh as Ww,oc as oy,od as r4,of as lw,oh as Uw,oi as gC,p as r0,pc as xm,pd as l6,pe as qy,pf as x5,pg as sr,ph as jw,q as ol,qc as f5,qd as f8,qe as B3,qf as z5,qh as Kw,qi as bC,r as sm,ra as I2,rc as iy,rd as Z9,re as Wy,rf as rw,rg as kw,rh as $w,ri as xC,s as jx,sa as Z1,sb as E9,sc as I9,sd as D9,se as Bl,sf as ow,sh as Yw,si as zC,t as Kx,tc as ny,td as J6,te as Q6,tf as iw,th as Xw,ti as yC,u as $x,uc as hy,ud as Pl,ue as U9,uf as l1,uh as n6,v as Yx,va as O1,vc as my,ve as e7,vf as nw,vh as h6,w as Xx,wa as xz,wc as py,we as j9,wf as y5,wg as Mw,wh as ie,wi as ur,x as Jx,xa as W1,xb as V9,xc as uy,xe as Uy,xf as J9,xg as Vm,xh as ne,xi as k4,y as Qx,ya as G1,yb as Az,yc as dy,ye as jy,yf as o6,yh as Jw,yi as dr,z as ez,zb as Hz,zc as gy,zd as C4,ze as ka,zf as hw,zh as k5,zi as l7}from"./chunk-QOXKQV6L.js";import{$ as Dm,A as fe,B as yr,C as IC,D as be,E as RC,H as BC,I as wr,J as d0,L as Zm,M as Cr,N as i4,O as kr,S as m7,T as ZC,U as DC,V as OC,W as xe,X as ze,Y as ye,Z as Fa,_ as GC,a as FC,aa as qC,ba as WC,ca as UC,da as w8,e as i7,ea as Z2,f as vr,fa as C8,g as TC,ga as jC,h as PC,ha as Om,i as Rm,j as EC,k as VC,l as fr,m as ue,n as Bm,p as B2,q as n7,r as br,s as de,t as ge,u as xr,v as h7,w as zr,x as NC,y as _C,z as ve}from"./chunk-GW3NVLTK.js";import{A as J1,d as Ha,e as r7,g as i2,h as gr,i as W4,j as CC,k as kC,l as MC,m as SC,n as o7,o as LC,p as AC,v as me,w as v0,x as y8,y as HC,z as pe}from"./chunk-5FHN3KMU.js";import{$ as Nz,D as Pz,Da as Gz,G as Ez,Ga as wa,Ha as Ll,I as za,J as vl,L as fl,La as I3,Ma as er,O as bl,Oa as tr,Q as xl,Qa as yw,R as mm,Ra as ww,Sa as Cw,Ta as ar,X as zl,Y as Vz,a as _3,aa as _z,b as qx,c as L1,ca as pm,d as zz,i as v5,j as T9,k as pl,l as yz,m as wz,pa as Iz,q as ul,qa as Rz,ra as Bz,sa as Zz,va as Dz,wa as Oz}from"./chunk-IKG5YKP7.js";import{c as ba,d as Nx,e as _x,g as Ix,i as H2,j as Wx,k as A9,l as Ux,m as s4,q as pr,r as vC,s as t3,t as fC}from"./chunk-VBQY6H55.js";import{a as IG,b as RG}from"./chunk-Y6SLVHK3.js";var tE=IG((UP1,eE)=>{"use strict";function n01(e,t){this.v=e,this.k=t}function NP(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,s=Array(t);a<t;a++)s[a]=e[a];return s}function h01(e){if(Array.isArray(e))return e}function m01(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var s,c,l,r,o=[],i=!0,n=!1;try{if(l=(a=a.call(e)).next,t===0){if(Object(a)!==a)return;i=!1}else for(;!(i=(s=l.call(a)).done)&&(o.push(s.value),o.length!==t);i=!0);}catch(h){n=!0,c=h}finally{try{if(!i&&a.return!=null&&(r=a.return(),Object(r)!==r))return}finally{if(n)throw c}}return o}}function p01(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1
+ import{$ as pz,$b as sy,$c as ky,$d as Lm,$e as X9,$f as ce,$g as Rw,$h as Im,A as g5,Aa as Cz,Ab as Fz,Ac as vy,Ad as C4,Ae as ka,Af as hw,Ah as k5,Ai as l7,B as tz,Ba as P9,Bb as Tz,Bc as fy,Bd as Hy,Be as t7,Bf as jl,Bg as Sw,Bi as o4,C as az,Cb as hm,Cc as by,Cd as El,Cf as g1,Cg as Lw,Ch as Nm,Ci as wC,D as sz,Da as dl,Db as N9,Dc as Ml,Dd as O9,De as K9,Df as Q9,Dg as Aw,Dh as ir,E as cz,Eb as um,Ec as R9,Ed as R3,Ee as Zl,Ef as c2,Eg as b8,Eh as _m,F as lz,Fa as gl,Fb as dm,Fc as xy,Fd as Fy,Fe as Ky,Fg as cr,Fh as Qw,G as cm,Ga as rm,Gc as zm,Gd as Ty,Ge as $9,Gf as Kl,Gg as x8,Gh as nr,H as rz,Hb as qz,Hc as Sl,Hd as Cm,He as e3,Hf as v1,Hh as he,I as oz,Ib as Wz,Ic as zy,Id as Vl,If as q1,Ig as Hw,Ih as eC,Ja as s6,Jb as Uz,Jc as yy,Jd as Py,Je as Y9,Jf as $l,Jg as Fw,Jh as tC,Kb as yl,Kc as Al,Kd as Ey,Ke as $y,Kf as Pm,Kg as Tw,Kh as Sa,L as il,La as kz,Lb as jz,Ld as Nl,Le as Dl,Lf as T2,Lg as Pw,Lh as aC,Ma as p2,Mb as Kz,Md as km,Me as T,Mh as sC,Na as om,Nb as $z,Nc as wy,Nd as Vy,Ne as O,Nh as cC,Ob as _9,Od as Mm,Oe as q,Of as ee,Oh as hr,Pa as a1,Pb as X6,Pc as p,Pd as G9,Pe as f1,Pf as te,Ph as lC,Qa as F2,Qb as Yz,Qc as p3,Qd as Ny,Qe as H1,Qf as Yl,Qg as w5,Qh as rC,Ra as Mz,Rb as ya,Rd as q9,Re as E1,Rf as s7,Rg as Ew,Rh as oC,Sd as W9,Sf as mw,Sg as Vw,T as iz,Tb as Xz,Td as _y,Tf as pw,Ud as Iy,Ue as x,Uf as Em,Ug as C5,Uh as q4,V as nz,Vd as _l,Ve as b5,Vf as uw,Vg as Nw,Vh as iC,Wb as Jz,We as Yy,Wg as oe,Wh as mr,Xb as Qz,Xc as Cy,Xe as Y1,Xf as Xl,Xg as _w,Xh as La,Yb as ey,Yc as v8,Yd as Ry,Ye as Xy,Yf as Jl,Yg as lr,Yh as c7,Z as hz,Zb as ty,Zd as Sm,Ze as Ol,Zf as ae,Zg as rr,_ as mz,_b as ay,_c as Hl,_d as Ca,_e as a7,_f as se,_g as Iw,_h as nC,a as Rx,aa as uz,ab as c6,ac as cy,ae as Am,ag as le,ah as or,b as rl,ba as lm,bb as d8,bc as wl,bd as My,be as Hm,bf as s1,bg as dw,bh as Bw,c as Bx,ca as dz,cb as Y6,cc as Cl,cd as J2,ce as Fm,cf as Z3,cg as gw,ch as z8,d as xa,da as gz,dc as gm,dd as Sy,de as Tm,df as Jy,dg as vw,dh as e0,ea as nl,eb as Sz,ec as R2,ed as c4,ee as By,ef as Gl,eh as i6,f as Zx,fa as hl,fc as E0,fd as Ly,fe as Zy,ff as Qy,fg as Ql,fh as M,ga as vz,gc as ly,gd as ym,ge as r6,gf as ew,gg as fw,gh as R0,ha as fz,hc as kl,hd as Q2,he as Il,hf as ql,hg as bw,hh as Y,ia as bz,ib as im,ic as g8,id as wm,ie as Rl,if as Wl,ig as re,ih as z0,ii as hC,j as Dx,ja as H9,jb as nm,jc as vm,jd as B9,je as Dy,jf as Ul,jh as Zw,ji as mC,ka as F9,kd as Fl,ke as Oy,kf as tw,kg as xw,kh as Dw,ki as pC,la as ml,lb as Lz,lc as fm,ld as Tl,le as Gy,lf as aw,lh as Ow,li as uC,m as Ox,mc as bm,md as Ay,mf as sw,mh as Gw,mi as dC,n as Gx,nc as ry,nf as cw,ng as zw,nh as qw,ni as Aa,oc as oy,od as l4,of as Ma,oh as Ww,p as r0,pc as xm,pd as r4,pf as lw,ph as Uw,pi as gC,q as ol,qc as f5,qd as l6,qe as qy,qf as x5,qg as sr,qh as jw,r as sm,ra as I2,rc as iy,rd as f8,re as B3,rf as z5,rh as Kw,ri as bC,s as jx,sa as Z1,sb as E9,sc as I9,sd as Z9,se as Wy,sf as rw,sg as kw,sh as $w,si as xC,t as Kx,tc as ny,td as D9,te as Bl,tf as ow,th as Yw,ti as zC,u as $x,uc as hy,ud as J6,ue as Q6,uf as iw,uh as Xw,ui as yC,v as Yx,va as O1,vc as my,vd as Pl,ve as U9,vf as l1,vh as n6,w as Xx,wa as xz,wc as py,we as e7,wf as nw,wh as h6,x as Jx,xa as W1,xb as V9,xc as uy,xe as j9,xf as y5,xg as Mw,xh as ie,xi as ur,y as Qx,ya as G1,yb as Az,yc as dy,ye as Uy,yf as J9,yg as Vm,yh as ne,yi as k4,z as ez,zb as Hz,zc as gy,ze as jy,zf as o6,zh as Jw,zi as dr}from"./chunk-G5OLLOCT.js";import{$ as Dm,A as fe,B as yr,C as IC,D as be,E as RC,H as BC,I as wr,J as d0,L as Zm,M as Cr,N as i4,O as kr,S as m7,T as ZC,U as DC,V as OC,W as xe,X as ze,Y as ye,Z as Fa,_ as GC,a as FC,aa as qC,ba as WC,ca as UC,da as w8,e as i7,ea as Z2,f as vr,fa as C8,g as TC,ga as jC,h as PC,ha as Om,i as Rm,j as EC,k as VC,l as fr,m as ue,n as Bm,p as B2,q as n7,r as br,s as de,t as ge,u as xr,v as h7,w as zr,x as NC,y as _C,z as ve}from"./chunk-ZK4TVVHJ.js";import{A as J1,d as Ha,e as r7,g as i2,h as gr,i as W4,j as CC,k as kC,l as MC,m as SC,n as o7,o as LC,p as AC,v as me,w as v0,x as y8,y as HC,z as pe}from"./chunk-OADA35KT.js";import{$ as Nz,D as Pz,Da as Gz,G as Ez,Ga as wa,Ha as Ll,I as za,J as vl,L as fl,La as I3,Ma as er,O as bl,Oa as tr,Q as xl,Qa as yw,R as mm,Ra as ww,Sa as Cw,Ta as ar,X as zl,Y as Vz,a as _3,aa as _z,b as qx,c as L1,ca as pm,d as zz,i as v5,j as T9,k as pl,l as yz,m as wz,pa as Iz,q as ul,qa as Rz,ra as Bz,sa as Zz,va as Dz,wa as Oz}from"./chunk-P5QC7OSD.js";import{c as ba,d as Nx,e as _x,g as Ix,i as H2,j as Wx,k as A9,l as Ux,m as s4,q as pr,r as vC,s as t3,t as fC}from"./chunk-TNXPBHCM.js";import{a as IG,b as RG}from"./chunk-Y6SLVHK3.js";var tE=IG((UP1,eE)=>{"use strict";function n01(e,t){this.v=e,this.k=t}function NP(e,t){(t==null||t>e.length)&&(t=e.length);for(var a=0,s=Array(t);a<t;a++)s[a]=e[a];return s}function h01(e){if(Array.isArray(e))return e}function m01(e,t){var a=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(a!=null){var s,c,l,r,o=[],i=!0,n=!1;try{if(l=(a=a.call(e)).next,t===0){if(Object(a)!==a)return;i=!1}else for(;!(i=(s=l.call(a)).done)&&(o.push(s.value),o.length!==t);i=!0);}catch(h){n=!0,c=h}finally{try{if(!i&&a.return!=null&&(r=a.return(),Object(r)!==r))return}finally{if(n)throw c}}return o}}function p01(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2
2
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function u01(e,t){return h01(e)||m01(e,t)||d01(e,t)||p01()}function d01(e,t){if(e){if(typeof e=="string")return NP(e,t);var a={}.toString.call(e).slice(8,-1);return a==="Object"&&e.constructor&&(a=e.constructor.name),a==="Map"||a==="Set"?Array.from(e):a==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(a)?NP(e,t):void 0}}function Zi(e){var t,a;function s(l,r){try{var o=e[l](r),i=o.value,n=i instanceof n01;Promise.resolve(n?i.v:i).then(function(h){if(n){var m=l==="return"&&i.k?l:"next";if(!i.k||h.done)return s(m,h);h=e[m](h).value}c(!!o.done,h)},function(h){s("throw",h)})}catch(h){c(2,h)}}function c(l,r){l===2?t.reject(r):t.resolve({value:r,done:l}),(t=t.next)?s(t.key,t.arg):a=null}this._invoke=function(l,r){return new Promise(function(o,i){var n={key:l,arg:r,resolve:o,reject:i,next:null};a?a=a.next=n:(t=a=n,s(l,r))})},typeof e.return!="function"&&(this.return=void 0)}Zi.prototype[typeof Symbol=="function"&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},Zi.prototype.next=function(e){return this._invoke("next",e)},Zi.prototype.throw=function(e){return this._invoke("throw",e)},Zi.prototype.return=function(e){return this._invoke("return",e)};var YP=Object.entries,_P=Object.setPrototypeOf,g01=Object.isFrozen,v01=Object.getPrototypeOf,f01=Object.getOwnPropertyDescriptor,N2=Object.freeze,q2=Object.seal,zt=Object.create,XP=typeof Reflect<"u"&&Reflect,eg=XP.apply,tg=XP.construct;N2||(N2=function(t){return t});q2||(q2=function(t){return t});eg||(eg=function(t,a){for(var s=arguments.length,c=new Array(s>2?s-2:0),l=2;l<s;l++)c[l-2]=arguments[l];return t.apply(a,c)});tg||(tg=function(t){for(var a=arguments.length,s=new Array(a>1?a-1:0),c=1;c<a;c++)s[c-1]=arguments[c];return new t(...s)});var Y8=S2(Array.prototype.forEach);Array.prototype.indexOf;var b01=S2(Array.prototype.lastIndexOf),IP=S2(Array.prototype.pop),Vs=S2(Array.prototype.push);Array.prototype.slice;var x01=S2(Array.prototype.splice),yt=Array.isArray,Is=S2(String.prototype.toLowerCase),Kd=S2(String.prototype.toString),RP=S2(String.prototype.match),Ns=S2(String.prototype.replace),BP=S2(String.prototype.indexOf),z01=S2(String.prototype.trim),y01=S2(Number.prototype.toString),w01=S2(Boolean.prototype.toString),ZP=typeof BigInt>"u"?null:S2(BigInt.prototype.toString),DP=typeof Symbol>"u"?null:S2(Symbol.prototype.toString),Y3=S2(Object.prototype.hasOwnProperty),_s=S2(Object.prototype.toString),f3=S2(RegExp.prototype.test),I7=C01(TypeError);function S2(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);for(var a=arguments.length,s=new Array(a>1?a-1:0),c=1;c<a;c++)s[c-1]=arguments[c];return eg(e,t,s)}}function C01(e){return function(){for(var t=arguments.length,a=new Array(t),s=0;s<t;s++)a[s]=arguments[s];return tg(e,a)}}function S0(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Is;if(_P&&_P(e,null),!yt(t))return e;let s=t.length;for(;s--;){let c=t[s];if(typeof c=="string"){let l=a(c);l!==c&&(g01(t)||(t[s]=l),c=l)}e[c]=!0}return e}function k01(e){for(let t=0;t<e.length;t++)Y3(e,t)||(e[t]=null);return e}function g4(e){let t=zt(null);for(let s of YP(e)){var a=u01(s,2);let c=a[0],l=a[1];Y3(e,c)&&(yt(l)?t[c]=k01(l):l&&typeof l=="object"&&l.constructor===Object?t[c]=g4(l):t[c]=l)}return t}function M01(e){switch(typeof e){case"string":return e;case"number":return y01(e);case"boolean":return w01(e);case"bigint":return ZP?ZP(e):"0";case"symbol":return DP?DP(e):"Symbol()";case"undefined":return _s(e);case"function":case"object":{if(e===null)return _s(e);let t=e,a=_4(t,"toString");if(typeof a=="function"){let s=a(t);return typeof s=="string"?s:_s(s)}return _s(e)}default:return _s(e)}}function _4(e,t){for(;e!==null;){let s=f01(e,t);if(s){if(s.get)return S2(s.get);if(typeof s.value=="function")return S2(s.value)}e=v01(e)}function a(){return null}return a}function S01(e){try{return f3(e,""),!0}catch{return!1}}var OP=N2(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","search","section","select","shadow","slot","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),$d=N2(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","enterkeyhint","exportparts","filter","font","g","glyph","glyphref","hkern","image","inputmode","line","lineargradient","marker","mask","metadata","mpath","part","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),Yd=N2(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),L01=N2(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Xd=N2(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),A01=N2(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),GP=N2(["#text"]),qP=N2(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","command","commandfor","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","exportparts","face","for","headers","height","hidden","high","href","hreflang","id","inert","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","part","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","slot","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns"]),Jd=N2(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dominant-baseline","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","mask-type","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","pointer-events","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-orientation","text-rendering","textlength","type","u1","u2","unicode","values","vector-effect","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),WP=N2(["accent","accentunder","align","bevelled","close","columnalign","columnlines","columnspacing","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lquote","lspace","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Di=N2(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),H01=q2(/{{[\w\W]*|^[\w\W]*}}/g),F01=q2(/<%[\w\W]*|^[\w\W]*%>/g),T01=q2(/\${[\w\W]*/g),P01=q2(/^data-[\-\w.\u00B7-\uFFFF]+$/),E01=q2(/^aria-[\-\w]+$/),UP=q2(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),V01=q2(/^(?:\w+script|data):/i),N01=q2(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),_01=q2(/^html$/i),I01=q2(/^[a-z][.\w]*(-[.\w]+)+$/i),jP=q2(/<[/\w!]/g),KP=q2(/<[/\w]/g),R01=q2(/<\/no(script|embed|frames)/i),B01=q2(/\/>/i),d4={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},JP=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],Z01=N2(S0({},JP)),D01=(function(){let e={};return Y8(JP,t=>{e[t]=q2(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),N2(e)})(),O01=function(){return typeof window>"u"?null:window},G01=function(t,a){if(typeof t!="object"||typeof t.createPolicy!="function")return null;let s=null,c="data-tt-policy-suffix";a&&a.hasAttribute(c)&&(s=a.getAttribute(c));let l="dompurify"+(s?"#"+s:"");try{return t.createPolicy(l,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+l+" could not be created."),null}},$P=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},R7=function(t,a,s,c){return Y3(t,a)&&yt(t[a])?S0(c.base?g4(c.base):{},t[a],c.transform):s},Qd=function(t,a,s){let c=Y3(t,a)?t[a]:void 0;return c&&typeof c=="object"?g4(c):s()};function QP(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:O01(),t=r1=>QP(r1);if(t.version="3.4.16",t.removed=[],!e||!e.document||e.document.nodeType!==d4.document||!e.Element)return t.isSupported=!1,t;let a=e.document,s=a,c=s.currentScript;e.DocumentFragment;let l=e.HTMLTemplateElement,r=e.Node,o=e.Element,i=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let n=e.DOMParser,h=e.trustedTypes,m=o.prototype,u=_4(m,"cloneNode"),d=_4(m,"remove"),v=_4(m,"removeAttributeNode"),g=_4(m,"nextSibling"),b=_4(m,"childNodes"),f=_4(m,"parentNode"),w=_4(m,"shadowRoot"),z=_4(m,"attributes"),k=r&&r.prototype?_4(r.prototype,"nodeType"):null,S=r&&r.prototype?_4(r.prototype,"nodeName"):null,H=r&&r.prototype?_4(r.prototype,"ownerDocument"):null,I=function(C){return k?k(C):C.nodeType},P=function(C){return S?S(C):C.nodeName};if(typeof l=="function"){let r1=a.createElement("template");r1.content&&r1.content.ownerDocument&&(a=r1.content.ownerDocument)}let D,E="",F,_=!1,Z=0,G=function(){if(Z>0)throw I7('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},V=function(C){G(),Z++;try{return D.createHTML(C)}finally{Z--}},j=function(C){G(),Z++;try{return D.createScriptURL(C)}finally{Z--}},N=function(){return _||(F=G01(h,c),_=!0),F},Q=a,W=Q.implementation,U=Q.createNodeIterator,i1=Q.createDocumentFragment,y1=Q.getElementsByTagName,K=s.importNode,c1=$P();t.isSupported=typeof YP=="function"&&typeof f=="function"&&W&&W.createHTMLDocument!==void 0;let b1=H01,$=F01,u1=T01,x1=P01,X0=E01,o0=V01,I1=N01,c0=I01,l0=UP,X1=null,X2=S0({},[...OP,...$d,...Yd,...Xd,...GP]),Q1=null,d2=S0({},[...qP,...Jd,...WP,...Di]),b0=Object.seal(zt(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),d1=null,$1=null,u0=Object.seal(zt(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),P0=!0,J0=!0,q0=!1,e1=!0,z1=!1,t0=!0,s2=!1,M3=!1,G6=null,q6=null,W6=!1,u5=!1,V3=!1,U6=!1,p8=!0,m3=!1,C9="user-content-",N3=!0,e4=!1,S3={},t4=null,a6=S0({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]),z4=null,y4=S0({},["audio","video","img","source","image","track"]),G4=null,j6=S0({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),S1="http://www.w3.org/1998/Math/MathML",i0="http://www.w3.org/2000/svg",M1="http://www.w3.org/1999/xhtml",w2=M1,g2=!1,K6=null,Yh=S0({},[S1,i0,M1],Kd),zx=N2(["mi","mo","mn","ms","mtext"]),Xh=S0({},zx),yx=N2(["annotation-xml"]),Jh=S0({},yx),wG=S0({},["title","style","font","a","script"]),va=null,CG=["application/xhtml+xml","text/html"],kG="text/html",v2=null,k9=null,MG=a.createElement("form"),wx=function(C){return C instanceof RegExp||C instanceof Function},Qh=function(){let C=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(k9&&k9===C)return;(!C||typeof C!="object")&&(C={}),C=g4(C),va=CG.indexOf(C.PARSER_MEDIA_TYPE)===-1?kG:C.PARSER_MEDIA_TYPE,v2=va==="application/xhtml+xml"?Kd:Is,X1=R7(C,"ALLOWED_TAGS",X2,{transform:v2}),Q1=R7(C,"ALLOWED_ATTR",d2,{transform:v2}),K6=R7(C,"ALLOWED_NAMESPACES",Yh,{transform:Kd}),G4=R7(C,"ADD_URI_SAFE_ATTR",j6,{transform:v2,base:j6}),z4=R7(C,"ADD_DATA_URI_TAGS",y4,{transform:v2,base:y4}),t4=R7(C,"FORBID_CONTENTS",a6,{transform:v2}),d1=R7(C,"FORBID_TAGS",g4({}),{transform:v2}),$1=R7(C,"FORBID_ATTR",g4({}),{transform:v2}),S3=Y3(C,"USE_PROFILES")?C.USE_PROFILES&&typeof C.USE_PROFILES=="object"?g4(C.USE_PROFILES):C.USE_PROFILES:!1,P0=C.ALLOW_ARIA_ATTR!==!1,J0=C.ALLOW_DATA_ATTR!==!1,q0=C.ALLOW_UNKNOWN_PROTOCOLS||!1,e1=C.ALLOW_SELF_CLOSE_IN_ATTR!==!1,z1=C.SAFE_FOR_TEMPLATES||!1,t0=C.SAFE_FOR_XML!==!1,s2=C.WHOLE_DOCUMENT||!1,u5=C.RETURN_DOM||!1,V3=C.RETURN_DOM_FRAGMENT||!1,U6=C.RETURN_TRUSTED_TYPE||!1,W6=C.FORCE_BODY||!1,p8=C.SANITIZE_DOM!==!1,m3=C.SANITIZE_NAMED_PROPS||!1,N3=C.KEEP_CONTENT!==!1,e4=C.IN_PLACE||!1,l0=S01(C.ALLOWED_URI_REGEXP)?C.ALLOWED_URI_REGEXP:UP,w2=typeof C.NAMESPACE=="string"?C.NAMESPACE:M1,Xh=Qd(C,"MATHML_TEXT_INTEGRATION_POINTS",()=>S0({},zx)),Jh=Qd(C,"HTML_INTEGRATION_POINTS",()=>S0({},yx));let R=Qd(C,"CUSTOM_ELEMENT_HANDLING",()=>zt(null));if(b0=zt(null),Y3(R,"tagNameCheck")&&wx(R.tagNameCheck)&&(b0.tagNameCheck=R.tagNameCheck),Y3(R,"attributeNameCheck")&&wx(R.attributeNameCheck)&&(b0.attributeNameCheck=R.attributeNameCheck),Y3(R,"allowCustomizedBuiltInElements")&&typeof R.allowCustomizedBuiltInElements=="boolean"&&(b0.allowCustomizedBuiltInElements=R.allowCustomizedBuiltInElements),q2(b0),z1&&(J0=!1),V3&&(u5=!0),S3&&(X1=S0({},GP),Q1=zt(null),S3.html===!0&&(S0(X1,OP),S0(Q1,qP)),S3.svg===!0&&(S0(X1,$d),S0(Q1,Jd),S0(Q1,Di)),S3.svgFilters===!0&&(S0(X1,Yd),S0(Q1,Jd),S0(Q1,Di)),S3.mathMl===!0&&(S0(X1,Xd),S0(Q1,WP),S0(Q1,Di))),u0.tagCheck=null,u0.attributeCheck=null,Y3(C,"ADD_TAGS")&&(typeof C.ADD_TAGS=="function"?u0.tagCheck=C.ADD_TAGS:yt(C.ADD_TAGS)&&(X1===X2&&(X1=g4(X1)),S0(X1,C.ADD_TAGS,v2))),Y3(C,"ADD_ATTR")&&(typeof C.ADD_ATTR=="function"?u0.attributeCheck=C.ADD_ATTR:yt(C.ADD_ATTR)&&(Q1===d2&&(Q1=g4(Q1)),S0(Q1,C.ADD_ATTR,v2))),Y3(C,"ADD_FORBID_CONTENTS")&&yt(C.ADD_FORBID_CONTENTS)&&(t4===a6&&(t4=g4(t4)),S0(t4,C.ADD_FORBID_CONTENTS,v2)),N3&&(X1["#text"]=!0),s2&&S0(X1,["html","head","body"]),X1.table&&(S0(X1,["tbody"]),delete d1.tbody),C.TRUSTED_TYPES_POLICY){if(typeof C.TRUSTED_TYPES_POLICY.createHTML!="function")throw I7('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof C.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw I7('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let t1=D;D=C.TRUSTED_TYPES_POLICY;try{E=V("")}catch(n1){throw D=t1,n1}}else C.TRUSTED_TYPES_POLICY===null?(D=void 0,E=""):(D===void 0&&(D=N()),D&&typeof E=="string"&&(E=V("")));N2&&N2(C),k9=C},Cx=S0({},[...$d,...Yd,...L01]),kx=S0({},[...Xd,...A01]),SG=function(C,R,t1){return R.namespaceURI===M1?C==="svg":R.namespaceURI===S1?C==="svg"&&(t1==="annotation-xml"||Xh[t1]):!!Cx[C]},LG=function(C,R,t1){return R.namespaceURI===M1?C==="math":R.namespaceURI===i0?C==="math"&&Jh[t1]:!!kx[C]},AG=function(C,R,t1){return R.namespaceURI===i0&&!Jh[t1]||R.namespaceURI===S1&&!Xh[t1]?!1:!kx[C]&&(wG[C]||!Cx[C])},HG=function(C){let R=f(C);(!R||!R.tagName)&&(R={namespaceURI:w2,tagName:"template"});let t1=Is(C.tagName),n1=Is(R.tagName);return K6[C.namespaceURI]?C.namespaceURI===i0?SG(t1,R,n1):C.namespaceURI===S1?LG(t1,R,n1):C.namespaceURI===M1?AG(t1,R,n1):!!(va==="application/xhtml+xml"&&K6[C.namespaceURI]):!1},$6=function(C){Vs(t.removed,{element:C});try{f(C).removeChild(C)}catch{if(d(C),!f(C))throw I7("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Mx=function(C,R,t1){try{v(C,R)}catch{try{C.removeAttribute(t1)}catch{}}},el=function(C){tl(C);let R=b(C);if(R){let n1=[];Y8(R,R1=>{Vs(n1,R1)}),Y8(n1,R1=>{try{d(R1)}catch{}})}let t1=z(C);if(t1)for(let n1=t1.length-1;n1>=0;--n1){let R1=t1[n1],m0=R1&&R1.name;typeof m0=="string"&&Mx(C,R1,m0)}},u8=function(C,R,t1){if(!t1)try{t1=R.getAttributeNode(C)}catch{t1=null}Vs(t.removed,{attribute:t1||null,from:R});try{t1?v(R,t1):R.removeAttribute(C)}catch{try{R.removeAttribute(C)}catch{}}if(C==="is")if(u5||V3)try{$6(R)}catch{}else try{R.setAttribute(C,"")}catch{}},FG=function(C){let R=z(C);if(R)for(let t1=R.length-1;t1>=0;--t1){let n1=R[t1],R1=n1&&n1.name;typeof R1!="string"||Q1[v2(R1)]||Mx(C,n1,R1)}},tl=function(C){let R=[C];for(;R.length>0;){let t1=R.pop();I(t1)===d4.element&&FG(t1);let n1=b(t1);if(n1)for(let R1=n1.length-1;R1>=0;--R1)R.push(n1[R1])}},Sx=function(C,R){return t0?C==="patchsrc"?!0:C==="for"&&R!=="label"&&R!=="output":!1},TG=function(C){if(!t0)return;let R=[C];for(;R.length>0;){let t1=R.pop(),n1=I(t1);if(n1===d4.processingInstruction||n1===d4.comment&&f3(KP,t1.data)){try{d(t1)}catch{}continue}if(n1===d4.element){let m0=t1,x0=v2(P(t1));try{m0.hasAttribute&&m0.hasAttribute("patchsrc")&&m0.removeAttribute("patchsrc"),m0.hasAttribute&&m0.hasAttribute("for")&&Sx("for",x0)&&m0.removeAttribute("for")}catch{}}let R1=b(t1);if(R1)for(let m0=R1.length-1;m0>=0;--m0)R.push(R1[m0])}},Lx=function(C){let R=null,t1=null;if(W6)C="<remove></remove>"+C;else{let m0=RP(C,/^[\r\n\t ]+/);t1=m0&&m0[0]}va==="application/xhtml+xml"&&w2===M1&&(C='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+C+"</body></html>");let n1=D?V(C):C;if(w2===M1)try{R=new n().parseFromString(n1,va)}catch{}if(!R||!R.documentElement){R=W.createDocument(w2,"template",null);try{R.documentElement.innerHTML=g2?E:n1}catch{}}let R1=R.body||R.documentElement;return C&&t1&&R1.insertBefore(a.createTextNode(t1),R1.childNodes[0]||null),w2===M1?y1.call(R,s2?"html":"body")[0]:s2?R.documentElement:R1},Ax=function(C){let R=H?H(C):C.ownerDocument;return U.call(R||C,C,i.SHOW_ELEMENT|i.SHOW_COMMENT|i.SHOW_TEXT|i.SHOW_PROCESSING_INSTRUCTION|i.SHOW_CDATA_SECTION,null)},al=function(C){return C=Ns(C,b1," "),C=Ns(C,$," "),C=Ns(C,u1," "),C},em=function(C){var R;C.normalize();let t1=H?H(C):C.ownerDocument,n1=U.call(t1||C,C,i.SHOW_TEXT|i.SHOW_COMMENT|i.SHOW_CDATA_SECTION|i.SHOW_PROCESSING_INSTRUCTION,null),R1=n1.nextNode();for(;R1;)R1.data=al(R1.data),R1=n1.nextNode();let m0=(R=C.querySelectorAll)===null||R===void 0?void 0:R.call(C,"template");m0&&Y8(m0,x0=>{M9(x0.content)&&em(x0.content)})},sl=function(C){let R=S?S(C):null;return typeof R!="string"||v2(R)!=="form"?!1:typeof C.nodeName!="string"||typeof C.textContent!="string"||typeof C.removeChild!="function"||C.attributes!==z(C)||typeof C.removeAttribute!="function"||typeof C.removeAttributeNode!="function"||typeof C.getAttributeNode!="function"||typeof C.setAttribute!="function"||typeof C.namespaceURI!="string"||typeof C.insertBefore!="function"||typeof C.hasChildNodes!="function"||C.nodeType!==k(C)||C.childNodes!==b(C)},M9=function(C){if(!k||typeof C!="object"||C===null)return!1;try{return k(C)===d4.documentFragment}catch{return!1}},fa=function(C){if(!k||typeof C!="object"||C===null)return!1;try{return typeof k(C)=="number"}catch{return!1}};function d5(r1,C,R){r1.length!==0&&Y8(r1,t1=>{t1.call(t,C,R,k9)})}let PG=function(C,R){return!!(t0&&C.hasChildNodes()&&!fa(C.firstElementChild)&&f3(jP,C.textContent)&&f3(jP,C.innerHTML)||t0&&C.namespaceURI===M1&&Z01[R]&&(fa(C.firstElementChild)||typeof C.textContent=="string"&&f3(D01[R],C.textContent))||C.nodeType===d4.processingInstruction||t0&&C.nodeType===d4.comment&&f3(KP,C.data))},cl=function(C,R){if(C instanceof RegExp)return f3(C,R);if(C instanceof Function){for(var t1=arguments.length,n1=new Array(t1>2?t1-2:0),R1=2;R1<t1;R1++)n1[R1-2]=arguments[R1];return!!C(R,...n1)}return!1},EG=function(C,R,t1){if(!d1[R]&&Px(R)&&cl(b0.tagNameCheck,R))return!1;if(N3&&!t4[R]){let n1=f(C),R1=b(C);if(R1&&n1){let m0=R1.length;for(let x0=m0-1;x0>=0;--x0){let m2=C===t1?u(R1[x0],!0):R1[x0];n1.insertBefore(m2,g(C))}}}return $6(C),!0},Hx=function(C,R,t1,n1){return C.length===0?R:R===t1||R===n1?g4(R):R},S9=function(C,R){return C===R||f(C)!==null?!1:(e4&&tl(C),!0)},Fx=function(C,R){if(d5(c1.beforeSanitizeElements,C,null),S9(C,R))return!0;if(sl(C))return $6(C),!0;let t1=v2(P(C));if(X1=Hx(c1.uponSanitizeElement,X1,X2,G6),d5(c1.uponSanitizeElement,C,{tagName:t1,allowedTags:X1}),S9(C,R))return!0;if(PG(C,t1))return $6(C),!0;if(d1[t1]||!(u0.tagCheck instanceof Function&&u0.tagCheck(t1))&&!X1[t1]){let n1=EG(C,t1,R);return n1===!1&&(d5(c1.afterSanitizeElements,C,null),S9(C,R))?!0:n1}if(I(C)===d4.element&&!HG(C)||(t1==="noscript"||t1==="noembed"||t1==="noframes")&&f3(R01,C.innerHTML))return $6(C),!0;if(z1&&C.nodeType===d4.text){let n1=al(C.textContent);C.textContent!==n1&&(Vs(t.removed,{element:C.cloneNode()}),C.textContent=n1)}return d5(c1.afterSanitizeElements,C,null),S9(C,R)},Tx=function(C,R,t1){if($1[R]||Sx(R,C)||p8&&(R==="id"||R==="name")&&(t1 in a||t1 in MG))return!1;let n1=Q1[R]||u0.attributeCheck instanceof Function&&u0.attributeCheck(R,C);return J0&&f3(x1,R)||P0&&f3(X0,R)?!0:n1?G4[R]||f3(l0,Ns(t1,I1,""))||(R==="src"||R==="xlink:href"||R==="href")&&C!=="script"&&BP(t1,"data:")===0&&z4[C]||q0&&!f3(o0,Ns(t1,I1,""))?!0:!t1:Px(C)&&cl(b0.tagNameCheck,C)&&cl(b0.attributeNameCheck,R,C)||R==="is"&&b0.allowCustomizedBuiltInElements&&cl(b0.tagNameCheck,t1)},VG=S0({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Px=function(C){return!VG[Is(C)]&&f3(c0,C)},NG=function(C,R,t1,n1){if(D&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!t1)switch(h.getAttributeType(C,R)){case"TrustedHTML":return V(n1);case"TrustedScriptURL":return j(n1)}return n1},_G=function(C,R,t1,n1){try{return t1?C.setAttributeNS(t1,R,n1):C.setAttribute(R,n1),sl(C)?($6(C),!1):!0}catch{return u8(R,C),!1}},Ex=function(C,R){if(d5(c1.beforeSanitizeAttributes,C,null),S9(C,R))return;let t1=C.attributes;if(!t1||sl(C))return;Q1=Hx(c1.uponSanitizeAttribute,Q1,d2,q6);let n1={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Q1,forceKeepAttr:void 0},R1=t1.length,m0=v2(C.nodeName);for(;R1--;){let x0=t1[R1],m2=x0.name,w4=x0.namespaceURI,a4=x0.value,L9=v2(m2),am=a4,L3=m2==="value"?am:z01(am),Vx=!1;if(n1.attrName=L9,n1.attrValue=L3,n1.keepAttr=!0,n1.forceKeepAttr=void 0,d5(c1.uponSanitizeAttribute,C,n1),L3=n1.attrValue,m3&&(L9==="id"||L9==="name")&&BP(L3,C9)!==0&&(u8(m2,C,x0),L3=C9+L3,Vx=!0),t0&&f3(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,L3)){u8(m2,C,x0);continue}if(L9==="attributename"&&RP(L3,"href")){u8(m2,C,x0);continue}if(!n1.forceKeepAttr){if(!n1.keepAttr){u8(m2,C,x0);continue}if(!e1&&f3(B01,L3)){u8(m2,C,x0);continue}if(z1&&(L3=al(L3)),!Tx(m0,L9,L3)){u8(m2,C,x0);continue}L3=NG(m0,L9,w4,L3),L3!==am&&_G(C,m2,w4,L3)&&Vx&&IP(t.removed)}}d5(c1.afterSanitizeAttributes,C,null),S9(C,R)},ll=function(C){let R=null,t1=Ax(C);for(d5(c1.beforeSanitizeShadowDOM,C,null);R=t1.nextNode();)if(d5(c1.uponSanitizeShadowNode,R,null),Fx(R,C),Ex(R,C),M9(R.content)&&ll(R.content),I(R)===d4.element){let n1=w(R);M9(n1)&&(tm(n1),ll(n1))}d5(c1.afterSanitizeShadowDOM,C,null)},tm=function(C){let R=[{node:C,shadow:null}];for(;R.length>0;){let t1=R.pop();if(t1.shadow){ll(t1.shadow);continue}let n1=t1.node,R1=I(n1)===d4.element,m0=b(n1);if(m0)for(let x0=m0.length-1;x0>=0;--x0)R.push({node:m0[x0],shadow:null});if(R1){let x0=S?S(n1):null;if(typeof x0=="string"&&v2(x0)==="template"){let m2=n1.content;M9(m2)&&R.push({node:m2,shadow:null})}}if(R1){let x0=w(n1);M9(x0)&&R.push({node:null,shadow:x0},{node:x0,shadow:null})}}};return t.sanitize=function(r1){let C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},R=null,t1=null,n1=null,R1=null;if(g2=!r1,g2&&(r1="<!-->"),typeof r1!="string"&&!fa(r1)&&(r1=M01(r1),typeof r1!="string"))throw I7("dirty is not a string, aborting");if(!t.isSupported)return r1;M3?(X1=G6,Q1=q6):Qh(C),(c1.uponSanitizeElement.length>0||c1.uponSanitizeAttribute.length>0)&&(X1=g4(X1)),c1.uponSanitizeAttribute.length>0&&(Q1=g4(Q1)),t.removed=[];let m0=e4&&typeof r1!="string"&&fa(r1);if(m0){TG(r1);let w4=P(r1);if(typeof w4=="string"){let a4=v2(w4);if(!X1[a4]||d1[a4])throw el(r1),I7("root node is forbidden and cannot be sanitized in-place")}if(sl(r1))throw el(r1),I7("root node is clobbered and cannot be sanitized in-place");try{tm(r1)}catch(a4){throw el(r1),a4}}else if(fa(r1))R=Lx("<!---->"),t1=R.ownerDocument.importNode(r1,!0),t1.nodeType===d4.element&&t1.nodeName==="BODY"||t1.nodeName==="HTML"?R=t1:R.appendChild(t1),tm(R);else{if(!u5&&!z1&&!s2&&r1.indexOf("<")===-1)return D&&U6?V(r1):r1;if(R=Lx(r1),!R)return u5?null:U6?E:""}R&&W6&&$6(R.firstChild);let x0=m0?r1:R;try{let w4=Ax(x0);for(;n1=w4.nextNode();)Fx(n1,x0),Ex(n1,x0),M9(n1.content)&&ll(n1.content)}catch(w4){throw m0&&(el(r1),Y8(t.removed,a4=>{a4.element&&tl(a4.element)})),w4}if(m0){let w4=!1;if(Y8(t.removed,a4=>{a4.element&&(a4.element===r1&&(w4=!0),tl(a4.element))}),w4)throw I7("a node selected for removal could not be safely returned; refusing to sanitize in place");return z1&&em(r1),r1}if(u5){if(z1&&em(R),V3)for(R1=i1.call(R.ownerDocument);R.firstChild;)R1.appendChild(R.firstChild);else R1=R;return(Q1.shadowroot||Q1.shadowrootmode)&&(R1=K.call(s,R1,!0)),R1}let m2=s2?R.outerHTML:R.innerHTML;return s2&&X1["!doctype"]&&R.ownerDocument&&R.ownerDocument.doctype&&R.ownerDocument.doctype.name&&f3(_01,R.ownerDocument.doctype.name)&&(m2="<!DOCTYPE "+R.ownerDocument.doctype.name+`>
3
3
  `+m2),z1&&(m2=al(m2)),D&&U6?V(m2):m2},t.setConfig=function(){let r1=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Qh(r1),M3=!0,G6=X1,q6=Q1},t.clearConfig=function(){k9=null,M3=!1,G6=null,q6=null,D=F,E=""},t.isValidAttribute=function(r1,C,R){k9||Qh({});let t1=v2(r1),n1=v2(C);return Tx(t1,n1,R)},t.addHook=function(r1,C){typeof C=="function"&&Y3(c1,r1)&&Vs(c1[r1],C)},t.removeHook=function(r1,C){if(Y3(c1,r1)){if(C!==void 0){let R=b01(c1[r1],C);return R===-1?void 0:x01(c1[r1],R,1)[0]}return IP(c1[r1])}},t.removeHooks=function(r1){Y3(c1,r1)&&(c1[r1]=[])},t.removeAllHooks=function(){c1=$P()},t}var q01=QP();eE.exports=q01});import{readLockHolder as Mq}from"efficient-easel/edit-lock";var qm="/api/storefront/section-templates/",Gm=e=>`${qm}${encodeURIComponent(e)}/`,Wm=e=>e.node!=null;function Mr(e){if(!Wm(e))throw new Error(`Section template ${e.id} has no design`);return e}var jm=(e,t)=>e instanceof W4&&e.status===t;function BG(e){return{list:()=>pe(`${qm}?no_page=true`,{token:e()}).then(t=>Array.isArray(t)?t:t.results??[]),get:t=>pe(Gm(t),{token:e()}).catch(a=>{if(jm(a,404))return null;throw a}),create:t=>pe(qm,{method:"POST",token:e(),body:JSON.stringify(t)}),patch:(t,a)=>pe(Gm(t),{method:"PATCH",token:e(),body:JSON.stringify(a)}),remove:t=>pe(Gm(t),{method:"DELETE",token:e()})}}var Um="sf:section-templates",KC=`${Um}.imported`,ZG="Untitled section",DG=160,Sr=e=>(typeof e=="string"?e.trim().slice(0,DG):"")||ZG;function OG(e){try{let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>{let s=a?.node;return typeof a?.id=="string"&&typeof s?.type=="string"}):[]}catch{return[]}}async function GG(e,t=t3){let a={created:0,seeded:0,left:0,skipped:0,kept:!1},s=t.getItem(Um);if(s===null)return a;for(let c of OG(s))try{let l=await e.get(c.id);if(l)l.node==null?(await e.patch(c.id,{node:c.node}),a.seeded+=1):a.left+=1;else try{await e.create({id:c.id,name:Sr(c.name),node:c.node}),a.created+=1}catch(r){if(!jm(r,400))throw r;a.skipped+=1}}catch{return{...a,kept:!0}}return t.setItem(KC,s),t.getItem(KC)===s&&t.removeItem(Um),a}var Lr=class{constructor(t,a=t3){this.readToken=t;this.storage=a;this.imported=null;this.http=BG(t)}ready(){return this.imported?this.imported:this.readToken()?(this.imported=GG(this.http,this.storage).catch(()=>{}),this.imported):Promise.resolve()}async list(){return await this.ready(),(await this.http.list()).filter(Wm)}async get(t){return await this.ready(),this.http.get(t)}async ensure(t,a,s){await this.ready();let c=async r=>r?Wm(r)?r:Mr(await this.http.patch(t,{node:s})):null,l=await c(await this.http.get(t));if(l)return l;try{return Mr(await this.http.create({id:t,name:Sr(a),node:s}))}catch(r){if(jm(r,400)){let o=await c(await this.http.get(t));if(o)return o}throw r}}async save(t,a){return await this.ready(),Mr(await this.http.create({name:Sr(t),node:a}))}async update(t,a){return await this.ready(),Mr(await this.http.patch(t,{node:a}))}async rename(t,a){return await this.ready(),this.http.patch(t,{name:Sr(a)})}async remove(t){await this.ready(),await this.http.remove(t)}};var $C={"PATCH /api/activity/note-media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PATCH /api/activity/notes/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PATCH /api/auth/entities/{id}/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_on_dark:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_square:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PATCH /api/auth/me/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"PATCH /api/auth/users/{id}/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"PATCH /api/bug-reports/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0},screenshot:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0}},"PATCH /api/employee-documents/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/goods-issue-files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/goods-issues/{id}/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/goods-issues/{id}/carton-groups/{group_id}/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/goods-issues/{id}/pallets/{pallet_id}/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/goods-issues/{id}/update_status/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/platform/brand-catalog/brands/{id}/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PATCH /api/products/brands/{id}/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PATCH /api/products/design-images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PATCH /api/products/dfm-log-files/{id}/":{file:{accept:".stp,.step,.dxf,.pdf,application/pdf,application/step,model/step,application/dxf,image/vnd.dxf",hint:"STP \xB7 STEP \xB7 DXF \xB7 PDF",max_bytes:536870912,max_files:1,policy:"dfm_file"}},"PATCH /api/products/moulds/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PATCH /api/products/project-images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PATCH /api/products/proposals/{id}/":{file:{accept:".pdf,application/pdf",hint:"PDF",max_bytes:52428800,max_files:1,policy:"proposal_pdf"}},"PATCH /api/products/weight-logs/{id}/":{image:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"},photo:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PATCH /api/purchase-invoices/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/purchase-orders/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/qc-reports/media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PATCH /api/recruitment/candidates/{id}/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"PATCH /api/reimbursements/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PATCH /api/rnd/images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PATCH /api/sales-claims/media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PATCH /api/storefront/header-settings/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PATCH /api/storefront/sites/{id}/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"POST /api/activity/note-media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/activity/notes/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/auth/entities/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_on_dark:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_square:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/auth/users/{id}/reset-password/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"POST /api/bank-statements/{id}/import_csv/":{file:{accept:".csv,text/csv,text/plain,application/vnd.ms-excel",hint:"CSV",max_bytes:5242880,max_files:1,policy:"csv_import"}},"POST /api/bank-statements/{id}/preview_csv/":{file:{accept:".csv,text/csv,text/plain,application/vnd.ms-excel",hint:"CSV",max_bytes:5242880,max_files:1,policy:"csv_import"}},"POST /api/bug-reports/":{attachments:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"},files:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"},image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0},screenshot:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0}},"POST /api/bug-reports/{id}/bookmark/":{image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0},screenshot:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0}},"POST /api/bug-reports/{id}/thread/":{attachments:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"},files:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"},image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0},screenshot:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0}},"POST /api/careers/assessments/{token}/snapshots/":{image:{accept:"image/*",max_bytes:409600,max_files:1,policy:"proctoring_snapshot"}},"POST /api/careers/jobs/{slug}/apply/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/chat/conversations/{id}/thread/":{files:{accept:"*",max_bytes:26214400,max_files:10,policy:"chat_files"}},"POST /api/chat/public/conversations/{id}/thread/":{image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"chat_image",reencoded_image:!0}},"POST /api/customer-portal/conversations/{id}/thread/":{image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"chat_image",reencoded_image:!0}},"POST /api/customer-portal/warranty-claim-media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/dealer-portal/wheel-media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/employee-documents/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issue-files/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/bulk_update_status/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/actual_packing/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/carton-groups/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/generate-label/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/pallets/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/refresh-tracking/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/regenerate-label/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/regenerate_invoice/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/goods-issues/{id}/update_loaded/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/platform/brand-catalog/brands/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/platform/brand-catalog/brands/{id}/assign-owner/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/platform/brand-catalog/brands/{id}/publish/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/platform/brand-catalog/brands/{id}/resync/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/platform/brand-catalog/brands/{id}/unpublish/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/platform/feedback/reports/{id}/thread/":{attachments:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"},files:{accept:"*",max_bytes:26214400,max_files:10,policy:"feedback_attachment"}},"POST /api/products/brands/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/products/brands/{id}/generate-box-pns/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"POST /api/products/design-images/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/products/dfm-log-files/":{file:{accept:".stp,.step,.dxf,.pdf,application/pdf,application/step,model/step,application/dxf,image/vnd.dxf",hint:"STP \xB7 STEP \xB7 DXF \xB7 PDF",max_bytes:536870912,max_files:1,policy:"dfm_file"}},"POST /api/products/moulds/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/products/project-images/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/products/proposals/":{file:{accept:".pdf,application/pdf",hint:"PDF",max_bytes:52428800,max_files:1,policy:"proposal_pdf"}},"POST /api/products/proposals/{id}/approve-project/":{file:{accept:".pdf,application/pdf",hint:"PDF",max_bytes:52428800,max_files:1,policy:"proposal_pdf"}},"POST /api/products/weight-logs/":{image:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"},photo:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/purchase-invoices/capture/":{file:{accept:"application/pdf,image/jpeg,image/png",hint:"PDF \xB7 JPG \xB7 PNG",max_bytes:15728640,max_files:1,policy:"bill_capture"}},"POST /api/purchase-invoices/files/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/purchase-orders/files/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/qc-reports/media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/recruitment/candidates/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/analyze-cv/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/hire/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/move-stage/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/reinstate/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/reject/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/recruitment/candidates/{id}/withdraw/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"POST /api/reimbursements/files/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"POST /api/rnd/images/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/rnd/{id}/upload_image/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"POST /api/sales-claims/media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/sales/contacts/import-csv/":{file:{accept:".csv,text/csv,text/plain,application/vnd.ms-excel",hint:"CSV",max_bytes:5242880,max_files:1,policy:"csv_import"}},"POST /api/sales/contacts/{id}/avatar/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"POST /api/shop-portal/return-media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"POST /api/storefront/media/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 SVG \xB7 WEBP \xB7 MP4",max_bytes:268435456,max_files:1,policy:"storefront_media"}},"POST /api/storefront/media/ingest/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 SVG \xB7 WEBP \xB7 MP4",max_bytes:268435456,max_files:1,policy:"storefront_media"}},"POST /api/storefront/sites/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"POST /api/storefront/sites/{id}/address/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"POST /api/storefront/sites/{id}/duplicate/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"POST /api/supplier-portal/dfm-log-files/":{file:{accept:".stp,.step,.dxf,.pdf,application/pdf,application/step,model/step,application/dxf,image/vnd.dxf",hint:"STP \xB7 STEP \xB7 DXF \xB7 PDF",max_bytes:536870912,max_files:1,policy:"dfm_file"}},"POST /api/utility/mail/send/":{attachments:{accept:"*",max_bytes:26214400,max_files:10,policy:"mail_attachments"},files:{accept:"*",max_bytes:26214400,max_files:10,policy:"mail_attachments"}},"PUT /api/activity/note-media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PUT /api/activity/notes/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PUT /api/auth/entities/{id}/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_on_dark:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0},logo_square:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PUT /api/auth/me/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"PUT /api/auth/users/{id}/":{avatar:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"avatar",reencoded_image:!0}},"PUT /api/bug-reports/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0},screenshot:{accept:"image/*",hint:"PNG \xB7 JPG",max_bytes:26214400,max_files:1,policy:"feedback_image",reencoded_image:!0}},"PUT /api/employee-documents/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/goods-issue-files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/goods-issues/{id}/":{label:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/products/brands/{id}/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PUT /api/products/design-images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PUT /api/products/dfm-log-files/{id}/":{file:{accept:".stp,.step,.dxf,.pdf,application/pdf,application/step,model/step,application/dxf,image/vnd.dxf",hint:"STP \xB7 STEP \xB7 DXF \xB7 PDF",max_bytes:536870912,max_files:1,policy:"dfm_file"}},"PUT /api/products/moulds/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PUT /api/products/project-images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PUT /api/products/proposals/{id}/":{file:{accept:".pdf,application/pdf",hint:"PDF",max_bytes:52428800,max_files:1,policy:"proposal_pdf"}},"PUT /api/products/weight-logs/{id}/":{image:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"},photo:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PUT /api/purchase-invoices/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/purchase-orders/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/qc-reports/media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PUT /api/recruitment/candidates/{id}/":{cv:{accept:".pdf,.doc,.docx,.txt,.md,application/pdf,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,text/plain,text/markdown",hint:"PDF \xB7 DOC \xB7 DOCX \xB7 TXT",max_bytes:10485760,max_files:1,policy:"cv"}},"PUT /api/reimbursements/files/{id}/":{file:{accept:"*",max_bytes:52428800,max_files:1,policy:"record_document"}},"PUT /api/rnd/images/{id}/":{image:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:26214400,max_files:1,policy:"record_image",reencoded_image:!0}},"PUT /api/sales-claims/media/{id}/":{file:{accept:"image/*,video/*",hint:"PNG \xB7 JPG \xB7 MP4",max_bytes:104857600,max_files:1,policy:"record_media"}},"PUT /api/storefront/header-settings/":{logo:{accept:"image/*",hint:"PNG \xB7 JPG \xB7 WEBP",max_bytes:5242880,max_files:1,policy:"brand_logo",reencoded_image:!0}},"PUT /api/storefront/sites/{id}/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"PUT /api/storefront/sites/{id}/countries/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"PUT /api/storefront/sites/{id}/currencies/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}},"PUT /api/storefront/sites/{id}/part-prices/":{favicon:{accept:"image/png,image/x-icon,image/vnd.microsoft.icon,.ico,image/svg+xml,image/jpeg,image/webp",hint:"PNG \xB7 ICO \xB7 SVG",max_bytes:1048576,max_files:1,policy:"favicon"}}};function YC(e,t){let a=$C[e][t];return{maxSizeBytes:a.max_bytes,maxFiles:a.max_files,accept:a.accept==="*"||a.accept==="*/*"?void 0:a.accept,acceptHint:a.hint}}import{isSafeLinkHref as Tr1}from"efficient-shell/markup";var m6=["width","profile","rim"],XC={width:"Width",profile:"Profile",rim:"Rim"},qG=/^\s*(\d{2,3})\s*\/\s*(\d{2,3})\s*[A-Za-z]*\s*(\d{2}(?:\.\d+)?)\s*$/,WG={width:[100,500],profile:[20,100],rim:[10,30]};function n4(e){let t=qG.exec(e??"");if(!t)return null;let a={width:Number(t[1]),profile:Number(t[2]),rim:Number(t[3])};return m6.every(c=>{let[l,r]=WG[c];return a[c]>=l&&a[c]<=r})?a:null}function U4(e){if(e.width==null)return"";if(e.profile==null)return String(e.width);let t=`${e.width}/${e.profile}`;return e.rim==null?t:`${t} R${e.rim}`}function JC(e){return[U4({width:e.width}),U4({width:e.width,profile:e.profile}),U4(e)]}var D3=["alloy-wheel","tyre"],Ar=["alloy-wheel"],h4={"alloy-wheel":"Alloy wheels",tyre:"Tyres"},QC="All products",ek="All product types";function M5(e){return e.length===1&&e[0]==="alloy-wheel"?{one:"wheel",many:"wheels"}:e.length===1&&e[0]==="tyre"?{one:"tyre",many:"tyres"}:{one:"product",many:"products"}}var we=D3.map(e=>({value:e,label:h4[e]}));function S5(e){return e==null?[...Ar]:Array.isArray(e)?D3.filter(t=>e.includes(t)):[...Ar]}var A3=e=>e;function B0(e){return A3(e).kind==="tyre"?"tyre":"alloy-wheel"}function tk(e,t){return e.filter(a=>t.includes(B0(a)))}function p7(e){return A3(e).slug??""}function Km(e){return A3(e).name??""}function Ce(e){return A3(e).brand??""}function ak(e){let t=new Set;for(let a of e)if(t.add(Ce(a)),t.size>1)return!0;return!1}function UG(e){return A3(e).process??""}function sk(e){let t=new Set;for(let a of e)if(t.add(UG(a)),t.size>1)return!0;return!1}function k8(e){return A3(e).prices??void 0}function $m(e){return A3(e).inStock!==!1}function ck(e){let t=A3(e),a=B0(e)==="tyre"?t.rimDiameters:t.sizes;return Array.isArray(a)?a.filter(s=>typeof s=="number"&&Number.isFinite(s)):[]}function Ym(e){return B0(e)!=="tyre"&&A3(e).badge==="new"}function Xm(e){return B0(e)==="tyre"?[]:(A3(e).finishes??[]).filter(t=>typeof t?.family=="string").map(t=>({family:t.family,color:t.color??null}))}function lk(e){return Xm(e).map(t=>t.family)}function rk(e){if(B0(e)==="tyre")return[];let t=A3(e),a=t.categories;return a&&a.length>0?a:t.process?[t.process]:[]}function ok(e){return B0(e)==="tyre"?[]:A3(e).spec?.pcds??[]}function ik(e){return B0(e)!=="tyre"?[]:A3(e).tyreTypes??[]}function nk(e){return B0(e)!=="tyre"?[]:A3(e).speedRatings??[]}function ke(e){if(B0(e)!=="tyre")return[];let t=A3(e).sizes;return Array.isArray(t)?t.map(a=>n4(typeof a=="string"?a:null)).filter(a=>a!==null):[]}function j4(e,t){return e.length===0?e:e.filter(a=>a.kind===void 0||a.kind===t)}function Hr(e,t){if(t.length===0)return e;let a=Me(t);return u7(e.filter(s=>a(s.fieldKey)),s=>s.fieldKey,t,"cardOrder")}function hk(e,t){let a=t==="filter"?"filterOrder":"cardOrder",s=new Map;for(let c of e){let l=c[a];if(typeof l!="number"||!Number.isFinite(l))continue;let r=s.get(c.fieldKey);(r===void 0||l<r)&&s.set(c.fieldKey,l)}return c=>c?s.get(c):void 0}function Jm(e){return Tr(e,"spec")}function mk(e){return Tr(e,"fitment")}function Qm(e,t){if(t.length===0)return e;let a=Jm(t),s=e.filter(c=>a(c.fieldKey));return u7(s,c=>c.fieldKey,t,"specOrder")}function u7(e,t,a,s){let c=new Map;for(let i of a){let n=i[s];typeof n=="number"&&c.set(i.fieldKey,n)}if(c.size===0)return e;let l=[],r=[];e.forEach((i,n)=>{let h=t(i);h&&(l.push(n),r.push({item:i,index:n,order:c.get(h)}))}),r.sort((i,n)=>i.order!==void 0&&n.order!==void 0?i.order-n.order||i.index-n.index:i.order!==void 0?-1:n.order!==void 0?1:i.index-n.index);let o=[...e];return l.forEach((i,n)=>{o[i]=r[n].item}),o.every((i,n)=>i===e[n])?e:o}function Me(e){return Tr(e,"card")}function Fr(e){return Tr(e,"filter")}var Se="collection";function Le(e,t){return{tyreSizes:{},brands:{"alloy-wheel":"brand",tyre:"brand"},finishes:{"alloy-wheel":"wheel_finish_ref"},diameters:{"alloy-wheel":"diameter",tyre:"rim_diameter"},collections:{"alloy-wheel":Se},pcds:{"alloy-wheel":"pcd"},tyreTypes:{tyre:"tire_type"},speedRatings:{tyre:"speed_rating"}}[e]?.[t]}function Tr(e,t){let a=new Set(e.filter(s=>s[t]===!1).map(s=>s.fieldKey));return s=>!s||!a.has(s)}function P2(e){return Number.isInteger(e)?String(e):String(Number(e.toFixed(2)))}function ep(e,t,a){let s=a!=null?`${P2(t)}/${P2(a)}`:P2(t);return`${e}" \xD7 ${s}`}function Pr(e,t){return e===t?`ET ${e}`:`ET ${e}\u2013${t}`}function pk(e,t){return e===t?`${P2(e)}"`:`${P2(e)}"\u2013${P2(t)}"`}function tp(e){return e==="\u2014"?e:`${e}"`}var Ta={recommended:"Recommended","price-asc":"Price \xB7 low to high","price-desc":"Price \xB7 high to low",new:"Newest",name:"Name A\u2013Z"},uk=Object.keys(Ta);function Ae(e){return I2(uk,"recommended",e)}function ap(e){return uk.filter(t=>t!=="recommended"||e.length<=1)}function dk(e,t){let a=Ae(e);return ap(t).includes(a)?a:"name"}var Pa=["tyreSizes","brands","finishes","diameters","collections","pcds","tyreTypes","speedRatings"],jG={tyreSizes:["tyre"],brands:["alloy-wheel","tyre"],finishes:["alloy-wheel"],diameters:["alloy-wheel","tyre"],collections:["alloy-wheel"],pcds:["alloy-wheel"],tyreTypes:["tyre"],speedRatings:["tyre"]},KG={diameters:"tyreSizes"};function gk(e){if(e.length===0)return[];let t=Pa.filter(a=>e.every(s=>jG[a].includes(s)));return t.filter(a=>{let s=KG[a];return!s||!t.includes(s)})}function vk(e,t){return t&&e.includes(t)?[t]:[...e]}function fk(e){let t=new Set;for(let a of e)t.add(B0(a));return[...t]}var L5={tyreSizes:[],brands:[],finishes:[],diameters:[],collections:[],pcds:[],tyreTypes:[],speedRatings:[],priceMax:null,inStockOnly:!1,kind:null,sort:"recommended",page:1};function He(e){return`${$G(e.width)}\xD7${e.diameter}`}function bk(e){return[...new Set((e.sizePairs??[]).map(t=>ep(t.diameter,t.width)))]}function $G(e){return P2(e)}function Ea(e,t,a,s=null){if(s!=="kind"&&t.kind&&B0(e)!==t.kind)return!1;for(let c of Pa){if(s===c)continue;let l=t[c];if(l.length===0)continue;let r=l.map(String);if(!yk(e,c).some(o=>r.includes(o)))return!1}return!(s!=="price"&&!xr(k8(e),a,null,t.priceMax)||s!=="inStock"&&t.inStockOnly&&!$m(e))}function xk(e,t,a){return e.filter(s=>$m(s)&&Ea(s,t,a,"inStock")).length}function YG(e,t,a){let s=[...e],c=(r,o)=>Km(r).localeCompare(Km(o)),l=fk(e).length>1;switch(t){case"price-asc":return s.sort((r,o)=>ge(k8(r),k8(o),a,"asc"));case"price-desc":return s.sort((r,o)=>ge(k8(r),k8(o),a,"desc"));case"name":return s.sort(c);case"new":return s.sort((r,o)=>{let i=(Ym(o)?1:0)-(Ym(r)?1:0);return i!==0||!l?i:c(r,o)});default:return s}}function zk(e,t,a){return YG(e.filter(s=>Ea(s,t,a)),t.sort,a)}function Er(e){return Pa.some(t=>e[t].length>0)||e.priceMax!=null||e.inStockOnly||e.kind!=null}var sp={tyreSizes:"Size",brands:"Brand",finishes:"Colour",diameters:"Size \xB7 diameter",collections:"Collection",pcds:"PCD \xB7 fitment",tyreTypes:"Tyre type",speedRatings:"Speed rating"};function yk(e,t){switch(t){case"tyreSizes":return[...new Set(ke(e).flatMap(JC))];case"brands":return Ce(e)?[Ce(e)]:[];case"finishes":return lk(e);case"diameters":return ck(e).map(String);case"collections":return rk(e);case"pcds":return ok(e);case"tyreTypes":return ik(e);case"speedRatings":return nk(e)}}function XG(e){let t=new Map;for(let a of e)for(let s of Xm(a))s.color&&!t.has(s.family)&&t.set(s.family,s.color);return t}function Vr(e,t,a,s=fk(e),c=[]){let l=n=>JG(n,s,c),r=XG(e),o=gk(s).filter(n=>n!=="tyreSizes").filter(l).map(n=>{let h=t[n].map(String),m=new Set,u=new Map,d=new Map;for(let g of e){let b=yk(g,n);for(let f of b)m.add(f);for(let f of new Set(b))d.set(f,(d.get(f)??0)+1);if(Ea(g,t,a,n))for(let f of new Set(b))u.set(f,(u.get(f)??0)+1)}let v=[...m].map(g=>({value:g,label:n==="diameters"?`${g}\u2033`:g,count:u.get(g)??0,checked:h.includes(g),swatch:n==="finishes"?r.get(g)??null:null})).sort((g,b)=>{if(n==="diameters")return Number(g.value)-Number(b.value);let f=(d.get(b.value)??0)-(d.get(g.value)??0);return f!==0?f:g.value.localeCompare(b.value)});return{key:n,label:sp[n],options:v}}).filter(n=>n.options.length>Va),i=[];for(let n of o){let h=QG(n.key,s,c);h!==void 0&&i.push({fieldKey:n.key,filterOrder:h})}return[...u7(o,n=>n.key,i,"filterOrder")]}var Va=1;function Nr(e){return e.showCollection===!1?["collections"]:[]}function JG(e,t,a){return t.length===0||a.length===0?!0:t.some(s=>Fr(j4(a,s))(Le(e,s)))}function QG(e,t,a){if(a.length===0)return;let s;for(let c of t){let l=hk(j4(a,c),"filter")(Le(e,c));l!==void 0&&(s===void 0||l<s)&&(s=l)}return s}function eq(e){let t=new Set;for(let a of e)for(let s of ke(a))t.add(U4(s));return t.size}function wk(e,t){return gk(t).includes("tyreSizes")?eq(e)>Va:!1}function Ck(e){let t=n4(e);if(t)return t;let[a,s]=e.split("/");return{width:a?Number(a):void 0,profile:s?Number(s):void 0}}function tq(e,t,a){return m6.slice(0,m6.indexOf(a)).every(s=>{let c=t[s];return c==null||e[s]===c})}function kk(e,t,a){let s=Ck(t.tyreSizes[0]??""),c=new Set(e.filter(l=>Ea(l,t,a,"tyreSizes")));return m6.map(l=>{let r=new Map;for(let i of e){let n=ke(i).filter(h=>tq(h,s,l));for(let h of new Set(n.map(m=>m[l])))r.has(h)||r.set(h,0),c.has(i)&&r.set(h,(r.get(h)??0)+1)}let o=[...r.keys()].sort((i,n)=>i-n).map(i=>({value:i,label:l==="rim"?`R${i}`:String(i),count:r.get(i)??0}));return{part:l,label:XC[l],value:s[l]??null,options:o}})}function Mk(e,t,a,s){let c={...Ck(t)},l=m6.indexOf(a);c[a]=s??void 0;for(let r of m6.slice(l+1))c[r]!=null&&e.some(n=>m6.slice(0,m6.indexOf(r)+1).every(h=>c[h]==null||n[h]===c[h]))||(c[r]=void 0);return U4(c)}function Sk(e,t,a,s){if(t.length<2)return[];let c=e.filter(l=>Ea(l,a,s,"kind"));return[{kind:null,label:QC,count:c.length,checked:a.kind===null},...t.map(l=>({kind:l,label:h4[l],count:c.filter(r=>B0(r)===l).length,checked:a.kind===l}))]}function Lk(e,t){if(e.length===0)return null;let a=e.map(l=>de(k8(l),t)).filter(l=>l!==null);if(a.length===0)return null;let s=Math.floor(Math.min(...a)),c=Math.ceil(Math.max(...a));return c>s?{min:s,max:c}:null}function Ak(e,t,a){let s=[];e.kind&&s.push({key:"kind",value:e.kind,label:h4[e.kind]}),e.inStockOnly&&s.push({key:"inStock",value:"",label:"In stock"});for(let c of Pa)for(let l of e[c]){let r=String(l);s.push({key:c,value:r,label:c==="diameters"?`${r}\u2033`:c==="pcds"?`PCD ${r}`:r})}return e.priceMax!=null&&s.push({key:"price",value:"",label:`Up to ${a(e.priceMax,t)}`}),s}var M4={tyreSizes:"tyreSize",brands:"brand",finishes:"colour",diameters:"size",collections:"collection",pcds:"pcd",tyreTypes:"tyreType",speedRatings:"speed"},d7="type",Hk="maxPrice",Fk="inStock",Tk="sort",Pk="page";function Ek(e){let t=l=>e.getAll(l).flatMap(r=>r.split(",")).filter(Boolean),a=Number(e.get(Hk)),s=Number(e.get(Pk)),c=e.get(d7);return{tyreSizes:t(M4.tyreSizes),brands:t(M4.brands),finishes:t(M4.finishes),diameters:t(M4.diameters).map(Number).filter(Number.isFinite),collections:t(M4.collections),pcds:t(M4.pcds),tyreTypes:t(M4.tyreTypes),speedRatings:t(M4.speedRatings),priceMax:Number.isFinite(a)&&a>0?a:null,inStockOnly:e.get(Fk)==="1",kind:D3.find(l=>l===c)??null,sort:Ae(e.get(Tk)),page:Number.isFinite(s)&&s>=1?Math.floor(s):1}}function M8(e){let t=new URLSearchParams;for(let a of Pa){let s=e[a];s.length>0&&t.set(M4[a],s.join(","))}return e.priceMax!=null&&t.set(Hk,String(e.priceMax)),e.inStockOnly&&t.set(Fk,"1"),e.kind&&t.set(d7,e.kind),e.sort!=="recommended"&&t.set(Tk,e.sort),e.page>1&&t.set(Pk,String(e.page)),t}function Vk(e,t){if(e<=7)return Array.from({length:e},(l,r)=>r+1);let a=[1],s=Math.max(2,t-1),c=Math.min(e-1,t+1);s>2&&a.push(null);for(let l=s;l<=c;l++)a.push(l);return c<e-1&&a.push(null),a.push(e),a}function Nk(e,t,a){let s=e.length,c=Math.max(1,Math.floor(a)),l=Math.max(1,Math.ceil(s/c)),r=Math.min(Math.max(1,Math.floor(t)),l),o=(r-1)*c;return{items:e.slice(o,o+c),page:r,pageCount:l,total:s,from:s===0?0:o+1,to:Math.min(o+c,s)}}var g7="__all__",_k="All products";function _r(e){return e?.slug===g7}var Fe="AlloyWheelsListing",aq="ProductGrid",Ik="catalog",sq="CatalogFilterBar",Ir="fieldUsage";function Te(e){return e?.type===aq&&_r(e.props?.source)}function cp(e){return e?.type===sq}function cq(e){return e?.type===Fe||Te(e)||cp(e)}function lq(e){let t=e.content??[],a=e.zones??{};return[...t,...Object.values(a).flat()]}function xr1(e){return e?lq(e).some(t=>t?.type===Fe||Te(t)):!1}function zr1(e,t){return oq(e,a=>Te(a)?{...a,props:{...lp(a).props,[Ik]:rq(t,S5(a.props?.kinds))}}:{...a,props:{...rp(a).props,products:t}})}function yr1(e){return Bk(e,cq,t=>cp(t)?Rk(t):Te(t)?lp(t):rp(t))}function Rk(e){if(!e.props||!(Ir in e.props))return e;let{[Ir]:t,...a}=e.props;return{...e,props:a}}function lp(e){let{[Ik]:t,[Ir]:a,...s}=e.props??{};return{...e,props:s}}function rq(e,t){let a=new Set(t);return e.filter(s=>{let c=s.kind??"alloy-wheel";return a.has(c)})}function wr1(e){return Te(e)?lp(e):cp(e)?Rk(e):e?.type===Fe?rp(e):e}function rp(e){let{wheels:t,products:a,[Ir]:s,...c}=e.props??{};return{...e,props:c}}function oq(e,t){return Bk(e,a=>a?.type===Fe||Te(a),t)}function Bk(e,t,a){let s=r=>t(r)?a(r):r,c=e,l={...e};return c.content&&(l.content=c.content.map(s)),c.zones&&(l.zones=Object.fromEntries(Object.entries(c.zones).map(([r,o])=>[r,o.map(s)]))),l}var Na="/wheels",op="Products";function nq(e,t){return t>1?`${op} \xB7 ${e}`:op}function Zk(...e){for(let t of e){let a=(t?.content??[]).find(s=>s?.type===Fe);if(a)return a.props??{}}return null}function ip(...e){return Zk(...e)!==null}function hq(e,t){let a=e.filter(s=>ip(...s.docs)).map(s=>g8(s.slug));return a.length===0&&t.fallback?[Na]:a}var Dk=[d7,...Object.entries(M4).filter(([e])=>e!=="tyreSizes").map(([,e])=>e)];function Ok(e){let t=e.indexOf("#"),a=t===-1?"":e.slice(t),s=t===-1?e:e.slice(0,t),c=s.indexOf("?");return{path:c===-1?s:s.slice(0,c),query:c===-1?"":s.slice(c+1),hash:a}}function mq(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return e}}function np(e){let t=new URLSearchParams(Ok(e).query);for(let a of Dk){let s=t.get(a);if(s)return{param:a,value:s}}return null}function hp(e,t){let{path:a,query:s,hash:c}=Ok(e),l=s.split("&").filter(r=>r&&!Dk.includes(mq(r.split("=")[0])));return t?.value&&l.push(`${encodeURIComponent(t.param)}=${encodeURIComponent(t.value)}`),`${a}${l.length?`?${l.join("&")}`:""}${c}`}function Ir1(e){return Array.isArray(e)?e.filter(t=>typeof t?.kind=="string"&&typeof t.field_key=="string").map(t=>({kind:t.kind,fieldKey:t.field_key,...typeof t.filter=="boolean"?{filter:t.filter}:{},filterOrder:t.filter_order??null})):[]}var pq="Product type",uq="AUD";function dq(e,t){let a=t.listing??{},s=S5(a.kinds),c=e.filter(i=>s.includes(B0(i))),l=Nr(a),r=Vr(c,L5,uq,s,t.fieldUsage).filter(i=>!l.includes(i.key)).map(i=>({param:M4[i.key],label:i.label,values:i.options.filter(n=>!n.value.includes(",")).map(n=>({value:n.value,label:n.label}))})).filter(i=>i.values.length>0),o=D3.filter(i=>s.includes(i)&&c.some(n=>B0(n)===i));return o.length>1&&r.unshift({param:d7,label:pq,values:o.map(i=>({value:i,label:h4[i]}))}),r}function Rr1(e){return t=>{let a=hq(t,{fallback:e.offersCommerce}),s=t.filter(c=>ip(...c.docs)).length;return{listingPaths:a,pageOptions:c=>{let l=c.map(r=>{let o=t.find(i=>g8(i.slug)===r.value);return o&&ip(...o.docs)?{...r,label:nq(o.title,s)}:r});return s===0&&e.offersCommerce&&!l.some(r=>r.value===Na)&&l.push({value:Na,label:op}),l},filtersFor:c=>{if(!a.includes(c))return null;let l=t.find(r=>g8(r.slug)===c);return dq(e.catalogue,{listing:l?Zk(...l.docs):null,fieldUsage:e.fieldUsage})},readFilter:np,withFilter:hp}}}var Pe="product",Rr="recordType",gq={key:Pe,label:"Product",fields:[]};var vq=new Map,fq=0;function mp(){return[gq,...vq.values()]}function pp(){return fq}function Br(e){let t=e?.[Rr];return typeof t!="string"?Pe:t.trim()||Pe}function up(e){return Br(e)===Pe}var dp="product",bq="tyre";var gp="productType",xq={[dp]:"alloy-wheel",[bq]:"tyre"},zq=["alloy-wheel","tyre"];function Zr(e,t){return up(t)?yq(t)??xq[e]??null:null}function yq(e){if(!up(e))return null;let t=e?.[gp];return typeof t=="string"&&zq.includes(t)?t:null}var wq=["home","products","gallery","about","contact"],Cq=e=>{let t=e.slug.trim().toLowerCase(),a=(e.title??"").trim().toLowerCase(),s=wq.findIndex(c=>c===t||c===a);return s===-1?Number.POSITIVE_INFINITY:s},Gk=e=>e.map((t,a)=>({page:t,idx:a,rank:Cq(t)})).sort((t,a)=>t.rank-a.rank||t.idx-a.idx).map(t=>t.page);var Uk="Popups",qk="Site";var jk={[Ry]:{label:"Site popup",group:Uk},[G9]:{label:"Footer",group:qk},[Ty]:{label:"Cart drawer",group:qk}};function fp(e){return jk[e.slug]?.label||e.title||e.slug}function vp(e){let t=e.group?.trim();return t||null}function Wk(e,t){let a=new Map;for(let s of e){let c=t(s),l=a.get(c);l?l.push(s):a.set(c,[s])}return a}function Kk(e){let t=Gk(e),a=[],s=t.filter(o=>!Ca(o.slug)),c=s.filter(o=>!vp(o));c.length&&a.push({key:"top",group:null,pages:c});let l=s.filter(o=>vp(o));for(let[o,i]of Wk(l,n=>vp(n)))a.push({key:`folder:${o}`,group:o,pages:i});let r=t.filter(o=>Ca(o.slug));for(let[o,i]of Wk(r,n=>jk[n.slug]?.group??Uk))a.push({key:`system:${o}`,group:o,pages:i});return a}import{isExpiredSession as ro1,PAGE_CONFLICT_CODE as $k,readEaselFailure as oo1}from"efficient-easel/screen/lib/failure";var Dr=e=>e.layout_updated_at??e.updated_at??null,Sq=["live","changed","never"],bp=e=>Sq.includes(e.live_state)?{live:e.live_state}:{};function Lq(e){if(!e||typeof e!="object")return null;let t=e;return t.code!==$k?null:{savedBy:typeof t.saved_by=="string"?t.saved_by:"",savedByYou:t.saved_by_you===!0,secondsAgo:typeof t.seconds_ago=="number"?t.seconds_ago:0}}function Aq(e){return e===401||e===403?"unauthorized":e===404?"not-found":e===kC||e>=500?"unavailable":"invalid"}function Hq(e){if(!(e instanceof W4))return e;if(e.status===409){let t=Lq(e.data);if(t)return new v8("changed-elsewhere",e.message,{conflict:t,cause:e});let a=Mq(e.data);if(a)return new v8("lock-taken",e.message,{holder:a,cause:e})}return new v8(Aq(e.status),e.message,{cause:e})}var xp=new WeakMap;function Fq(e,t){let a=pr(),s=a?new URL(a).hostname:typeof window<"u"?window.location?.hostname??null:null,c=null,l=t.siteId(),r=t.token();if(uC(s)&&l&&r){let i=pC(r,l);xp.has(i)?c=xp.get(i)??null:i.then(n=>xp.set(i,n))}let o=dC({pageSlug:e,siteSlug:c,hostname:s});return a?`${a}${o}`:o}var Tq={group:"Template pages",groupKey:"template"},Yk=e=>({id:e.id,slug:e.slug,label:e.title||e.slug,...Tq,draft:!1});function Xk(e){let t=async n=>{let h=e.token();if(!h)throw new v8("unauthorized","The editor has no sign-in yet.");try{return await n(h)}catch(m){throw Hq(m)}},a={list:n=>t(async h=>{let m=await J1.listPages(h,n?.siteId);return Kk(m.filter(u=>u.slug!==G9)).flatMap(u=>u.pages.map(d=>({id:d.id,slug:d.slug,label:fp(d),group:u.group,groupKey:u.key,draft:!d.is_published,kind:d.kind??null})))}),load:n=>t(async h=>{let m="id"in n?n.id:(await J1.findPageBySlug(n.slug,h,n.siteId))?.id,u=m?await J1.getPageById(m,h):null;return u?{id:u.id,layout:u.layout,kind:u.kind,version:Dr(u),...bp(u)}:null}),save:(n,h,m)=>{let{version:u}=m;return u?t(async d=>{let v=await J1.saveLayout(n,h.layout,d,u,m.clientId||void 0);return{version:Dr(v),...bp(v)}}):Promise.reject(new Error("Refusing to save this page: the editor does not know which version it is replacing. Reload the page and try again."))},version:n=>t(h=>J1.getPageById(n,h).then(Dr)),linkTargets:n=>t(async h=>(await J1.listPages(h,n?.siteId)).map(m=>({id:m.id,slug:m.slug,label:fp(m),layout:m.layout??null}))),publish:(n,h)=>t(async m=>{let u=await J1.publishPage(n,m,h?.version);return{version:Dr(u),...bp(u)}})},s=n=>({list:()=>t(async h=>(await J1.listTemplatePages(n,h)).map(Yk)),load:h=>t(async m=>{let u=b=>"id"in h?b.id===h.id:b.slug===h.slug,d=b=>({id:b.id,layout:b.layout,version:null}),v=await J1.listTemplatePages(n,m);if(v.length)return d(v.find(u)??v[0]);let g=await J1.getTemplate(n,m).catch(()=>null);try{return d(await J1.createTemplatePage(n,{slug:ly,title:"Home",layout:g?.layout??{}},m))}catch{let b=await J1.listTemplatePages(n,m),f=b.find(u)??b[0];return f?d(f):null}}),save:(h,m)=>t(async u=>(await J1.saveTemplatePageLayout(h,m.layout,u),{version:null})),create:h=>t(async m=>Yk(await J1.createTemplatePage(n,{slug:h.slug,title:h.title,layout:h.layout},m))),remove:(h,m)=>t(u=>J1.deleteTemplatePage(h,u,m))}),c=n=>{let h=n?.siteId??e.siteId();if(!h)throw new v8("not-found","This editor is not connected to a website.");return h},l=n=>({name:n.name,slug:n.slug,mapsApiKey:n.maps_api_key,mapsMapId:n.maps_map_id}),r=n=>Object.fromEntries(tr.map(h=>[h,n[ar(h)]??""])),o=n=>({enabled:n.enabled,title:n.title,subtitle:n.subtitle,greeting:n.greeting}),i={pages:a,lock:{claim:(n,h,m)=>t(async u=>({heartbeatSeconds:(await J1.claimPageEditLock(n,u,h,m)).heartbeat_seconds})),release:n=>t(h=>J1.releasePageEditLock(n,h))},site:{get:n=>t(async h=>l(await J1.getSite(c(n),h))),update:(n,h)=>t(async m=>l(await J1.updateSite(c(h),n.mapsApiKey===void 0?{}:{maps_api_key:n.mapsApiKey},m)))},media:{resolve:Wx,maxUploadBytes:YC("POST /api/storefront/media/","file").maxSizeBytes},sectionTemplates:new Lr(e.token),social:{get:n=>t(async h=>r(await J1.getSocialSettings(h,c(n)))),update:(n,h)=>t(async m=>{let u=Object.fromEntries(tr.filter(d=>d in n).map(d=>[ar(d),n[d]]));try{return r(await J1.updateSocialSettings(u,m,c(h)))}catch(d){if(d instanceof W4&&d.status===400){let v=d.data??{},g={};for(let b of tr){let f=v[ar(b)],w=Array.isArray(f)?f[0]:f;typeof w=="string"&&w.trim()&&(g[b]=w)}if(Object.keys(g).length>0)throw new v8("invalid",d.message,{fields:g,cause:d})}throw d}})},theme:{get:n=>t(h=>J1.getThemeSettings(h,n?.siteId)),update:(n,h)=>t(m=>J1.updateThemeSettings(n,m,h?.siteId))},chat:{get:n=>t(async h=>o(await J1.getChatSettings(h,n?.siteId))),update:(n,h)=>t(async m=>o(await J1.updateChatSettings(n,m,h?.siteId)))},blog:{posts:n=>t(async h=>(await J1.listBlogPosts(h,{visibleOnly:!0,siteId:n?.siteId})).map(m=>({slug:m.slug,title:m.title,excerpt:m.excerpt,category:m.category,coverImage:m.cover_image?A9(m.cover_image)??"":"",publishedAt:m.published_at,href:vm(m.slug)})))},templates:{get:n=>t(async h=>{let m=await J1.getTemplate(n,h);return{id:m.id,name:m.name}}),pages:s},preview:{href:n=>Fq(n,e),draftLink:n=>t(async h=>({url:(await J1.createPagePreviewLink(n,h)).url??null}))}};return i[Nx]=!0,i}Cy({read:e=>e instanceof W4?{status:e.status,data:e.data,message:e.message}:null,unreachableMessage:CC,loadRefusal:(e,{slug:t})=>e instanceof HC?`\u201C${t}\u201D exists on more than one website. Open it from the site you want to edit.`:null});Ix(e=>Xk({token:()=>e.auth.token,siteId:()=>e.siteId()}));function Mo1(e={}){return e.portalAudience!==void 0&&MC(e.portalAudience),e.language!==void 0&&SC(e.language),Xk({token:()=>ba().auth.token,siteId:()=>e.siteId??ba().siteId()})}import{jsx as Pq}from"react/jsx-runtime";import{createContext as Eq,useContext as Vq,useMemo as Nq}from"react";var Jk=Eq({originData:null,originSlug:null,exitFocus:()=>{}});function Ho1({children:e,originData:t,originSlug:a,exitFocus:s}){let c=Nq(()=>({originData:t,originSlug:a,exitFocus:s}),[t,a,s]);return Pq(Jk.Provider,{value:c,children:e})}var Qk=()=>Vq(Jk);import{useCallback as oW,useEffect as iW,useRef as nW,useState as MM}from"react";var _q=[{code:"US",name:"United States"},{code:"GB",name:"United Kingdom"},{code:"AU",name:"Australia"},{code:"CA",name:"Canada"},{code:"IE",name:"Ireland"},{code:"NZ",name:"New Zealand"},{code:"DE",name:"Germany"},{code:"FR",name:"France"},{code:"IT",name:"Italy"},{code:"ES",name:"Spain"},{code:"NL",name:"Netherlands"},{code:"BE",name:"Belgium"},{code:"AT",name:"Austria"},{code:"CH",name:"Switzerland"},{code:"SE",name:"Sweden"},{code:"NO",name:"Norway"},{code:"DK",name:"Denmark"},{code:"FI",name:"Finland"},{code:"PT",name:"Portugal"},{code:"PL",name:"Poland"},{code:"JP",name:"Japan"},{code:"SG",name:"Singapore"},{code:"AE",name:"United Arab Emirates"},{code:"HK",name:"Hong Kong"},{code:"ZA",name:"South Africa"}],Iq=Object.fromEntries(_q.map(e=>[e.code,e.name]));function eM(e){return Iq[e]??e}import{jsx as zp,jsxs as tM}from"react/jsx-runtime";function aM(e,t,a){let s=new Map(e.map(c=>[c.code,c]));return(t?.length?t:e.map(c=>c.code)).map(c=>{let l=s.get(c);return{code:c,name:l?.name||eM(c),currency:l?.currency,url:l?.url||a?.[c]||""}})}function Or(e){let{countries:t}=d0();return aM(t,e).length>0}function S8({urls:e,countries:t}={}){let{country:a,setCountry:s,countries:c}=d0(),l=aM(c,t,e),r=l.find(m=>m.code===a)??l[0];function o(m){let u=(e?l.find(d=>d.code===m)?.url:"")?.trim();if(u){window.location.href=u;return}c.some(d=>d.code===m)&&s(m)}let i=l.map(m=>({value:m.code,label:m.name,meta:m.currency})),n=ze({items:i,value:a,onPick:o});if(!r)return null;let h=n.open;return tM("div",{ref:n.wrapRef,className:"relative",children:[tM("button",{ref:m=>{n.triggerRef.current=m},type:"button","aria-haspopup":"listbox","aria-expanded":h,"aria-controls":h?n.listId:void 0,"aria-activedescendant":n.activeId,"aria-label":`Region: ${r.name}. Click to change.`,onClick:n.toggle,onKeyDown:n.onTriggerKeyDown,suppressHydrationWarning:!0,className:"inline-flex items-center gap-2 whitespace-nowrap border border-fg-dim px-2.5 py-1.5 font-mono text-[13px] uppercase tracking-[0.18em] transition-colors hover:border-fg",style:{color:"color-mix(in oklab, currentColor 80%, transparent)"},children:[zp("span",{children:r.name}),zp("span",{"aria-hidden":!0,className:`text-[11px] opacity-70 transition-transform ${h?"rotate-180":""}`,children:"\u25BE"})]}),h&&zp(ye,{id:n.listId,tone:"region",ariaLabel:"Choose region",items:i,value:a,focusIdx:n.focusIdx,onFocus:n.setFocusIdx,onPick:n.pick,listRef:n.listRef})]})}import{useEffect as Rq,useRef as sM}from"react";import{jsx as S4,jsxs as yp}from"react/jsx-runtime";var _a={search:"Search",account:"Account",cart:"Bag"},wp="whitespace-nowrap";function Bq(e){return e>99?"99+":String(e)}function Zq({count:e,ref:t}){return S4("span",{ref:t,"data-cart-badge":"","aria-hidden":"true",className:"pointer-events-none absolute -top-[7px] -right-[9px] inline-flex h-4 min-w-4 items-center justify-center rounded-full bg-current px-1 text-[10px] leading-none font-semibold tabular-nums",style:{letterSpacing:0},children:S4("span",{style:{color:"var(--sf-header-ground, var(--bg))"},children:Bq(e)})})}function Gr({onClick:e,count:t,asText:a,className:s}){let c=sM(null),l=sM(t);return Rq(()=>{l.current!==t&&(l.current=t,!window.matchMedia("(prefers-reduced-motion: reduce)").matches&&c.current?.animate([{transform:"scale(0.6)"},{transform:"scale(1)"}],{duration:180,easing:"ease-out"}))},[t]),S4("button",{type:"button",onClick:e,"aria-label":`Open cart, ${t} item${t===1?"":"s"}`,className:`mono-eyebrow-ctl inline-flex items-center gap-1.5 opacity-80 transition-opacity hover:opacity-100 ${s??""}`,children:a?yp("span",{className:wp,children:[_a.cart,t>0?` ${t}`:""]}):yp("span",{className:"relative inline-flex",children:[S4("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:Nw}),t>0?S4(Zq,{count:t,ref:c}):null]})})}function cM({asText:e,className:t}){return S4(L1,{href:"/account","aria-label":"Account",className:`mono-eyebrow-ctl inline-flex items-center opacity-80 transition-opacity hover:opacity-100 ${t??""}`,children:e?S4("span",{className:wp,children:_a.account}):yp("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[S4("circle",{cx:"12",cy:"8",r:"3.4"}),S4("path",{d:"M5 20a7 7 0 0 1 14 0"})]})})}function qr({onClick:e,asText:t,className:a}){return S4("button",{type:"button",onClick:e,"aria-label":"Search",title:"Search (\u2318K)",className:`mono-eyebrow-ctl inline-flex items-center opacity-80 transition-opacity hover:opacity-100 ${a??""}`,children:t?S4("span",{className:wp,children:_a.search}):S4(r6,{name:"search",size:18,strokeWidth:1.6,rounded:!0})})}var lM="Menu Item",rM=6,Cp=4,oM="Menu",iM="Link a menu in the inspector \u2192";function nM(){return p("This column isn't linked to a menu, so the preview shows placeholder links. Pick a menu above.")}function hM(e){return p("\u201C{name}\u201D no longer exists in {place}, so the preview shows placeholder links. Pick another menu.",{name:e,place:p("Storefront \u2192 Menus")})}function qo1(){return p("The menu linked here no longer exists in {place}, so the header shows placeholder links. Pick another menu.",{place:p("Storefront \u2192 Menus")})}import{jsx as Dq}from"react/jsx-runtime";function Ee(){return Dq("span",{className:"opacity-50",children:p(lM)})}import{jsx as Oq}from"react/jsx-runtime";import{createContext as Gq,useContext as kp,useEffect as qq,useState as Wq,useSyncExternalStore as Uq}from"react";var pM=[];function jq(){let e=pM,t=new Set,a=s=>{e=s;for(let c of t)c()};return{offer:s=>(a([...e,s]),()=>{let c=e.indexOf(s);c>=0&&a([...e.slice(0,c),...e.slice(c+1)])}),subscribe:s=>(t.add(s),()=>t.delete(s)),offered:()=>e}}var Wr=Gq(null);function uM({children:e}){let[t]=Wq(jq);return Oq(Wr.Provider,{value:t,children:e})}var Ur=()=>kp(Wr)!==null;function Mp(e){let t=kp(Wr);qq(()=>{if(!(!t||!e))return t.offer(e)},[t,e])}var Kq=()=>()=>{},mM=()=>pM;function dM(){let e=kp(Wr),t=Uq(e?.subscribe??Kq,e?.offered??mM,mM);return e?{search:t.includes("search"),region:t.includes("region"),account:t.includes("account"),theme:t.includes("theme")}:null}import{createContext as $q,useCallback as Sp,useContext as Yq,useEffect as Xq,useMemo as Jq,useState as Qq}from"react";import{jsx as tW}from"react/jsx-runtime";var eW={isOpen:!1,open:()=>{},close:()=>{},toggle:()=>{}},gM=$q(eW);function ei1({children:e,shortcut:t=!0}){let[a,s]=Qq(!1),c=Sp(()=>s(!0),[]),l=Sp(()=>s(!1),[]),r=Sp(()=>s(i=>!i),[]);Xq(()=>{if(!t)return;let i=n=>{(n.metaKey||n.ctrlKey)&&(n.key==="k"||n.key==="K")&&(n.preventDefault(),s(h=>!h))};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[t]);let o=Jq(()=>({isOpen:a,open:c,close:l,toggle:r}),[a,c,l,r]);return tW(gM.Provider,{value:o,children:e})}function Ve(){return Yq(gM)}import{useEffect as Lp}from"react";function L4({active:e,onDismiss:t,focusRef:a,lockScroll:s=!0,scopeRef:c}){Lp(()=>{if(!e)return;let l=c?.current?.ownerDocument??document,r=o=>{o.key==="Escape"&&t()};return l.addEventListener("keydown",r),()=>l.removeEventListener("keydown",r)},[e,t,c]),Lp(()=>{if(!e||!s)return;let l=(c?.current?.ownerDocument??document).body,r=l.style.overflow;return l.style.overflow="hidden",()=>{l.style.overflow=r}},[e,s,c]),Lp(()=>{e&&a?.current?.focus()},[e,a])}import{createContext as aW,useCallback as zM,useContext as sW,useMemo as cW,useState as lW}from"react";var Ia=new Map,vM=e=>e??"";function Ap(e,t,a){a&&Ia.clear();let s=vM(t),c=Ia.get(s);if(!c){let l=J1.listMenus(e,t);Ia.set(s,l),l.catch(()=>{Ia.get(s)===l&&Ia.delete(s)}),c=l}return c}var jr=new Map;function fM(e,t){let a=vM(t),s=jr.get(a);if(!s){let c=Ap(e,t,!0);jr.set(a,c);let l=()=>{jr.get(a)===c&&jr.delete(a)};c.then(l,l),s=c}return s}function Hp(e,t=!1){return Ap(e,i2(),t)}function bM(e){return fM(e,i2())}function oi1(e,t=!1){return Ap(e,null,t)}function ii1(e){return fM(e,null)}var Fp={ids:new Set,handles:new Set};function ni1(e){return{ids:new Set(e.map(t=>t.id).filter(Boolean)),handles:new Set(e.map(t=>t.handle).filter(Boolean))}}function xM({id:e,handle:t,editing:a,ready:s,live:c}){if(!a)return!1;let l=e??"",r=t??"";return!l&&!r?!0:s?l?!c.ids.has(l):!c.handles.has(r):!1}function Kr(e,t){if(t){if(t.id)return e.find(a=>a.id===t.id);if(t.handle)return e.find(a=>a.handle===t.handle)}}import{jsx as rW}from"react/jsx-runtime";var yM=aW({live:Fp,ready:!1,primeLive:()=>{},setLive:()=>{}});function ui1({children:e}){let[t,a]=lW({live:Fp,ready:!1}),s=zM(r=>a(o=>o.ready?o:{live:r,ready:!0}),[]),c=zM(r=>a({live:r,ready:!0}),[]),l=cW(()=>({...t,primeLive:s,setLive:c}),[t,s,c]);return rW(yM.Provider,{value:l,children:e})}var wM=()=>sW(yM);function Ne(e){let t=(e??"").trim();return t===""||t==="#"}import{jsx as C0,jsxs as A5}from"react/jsx-runtime";var hW=e=>/^https?:\/\//i.test(e),SM="flex list-none flex-col gap-2.5 text-[13px]",Tp="mb-4 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",CM="text-[12px] italic text-fg-dim/70",LM=(e,t)=>e&&t>0?"border-t border-line pt-2.5":"";function mW({showDividers:e}){return C0("ul",{className:SM,children:Array.from({length:Cp},(t,a)=>C0("li",{className:`text-fg ${LM(e,a)}`,children:C0(Ee,{})},a))})}function AM({item:e,label:t,link:a,onNavigate:s}){return Ne(e.url)?C0("span",{className:t,children:M(e.label)}):hW(e.url)?C0("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",className:a,onClick:s,children:M(e.label)}):C0(L1,{href:e.url,className:a,onClick:s,children:M(e.label)})}function kM({items:e,showDividers:t}){return C0("ul",{className:SM,children:e.map((a,s)=>C0("li",{className:LM(t,s),children:C0(AM,{item:a,label:"text-fg",link:"text-fg transition-colors hover:text-accent"})},`${a.label}-${s}`))})}var pW="opacity-80 transition-opacity hover:opacity-100";function uW({items:e,label:t,editing:a}){let[s,c]=MM(!1),l=nW(null),r=dM(),{open:o}=Ve(),i=t||"Menu",n=oW(()=>c(!1),[]);L4({active:s,onDismiss:n,scopeRef:l});let h=(u,d,v)=>e===null?Array.from({length:Cp},(g,b)=>C0("li",{className:d,children:C0(Ee,{})},b)):e.map((g,b)=>C0("li",{className:d,children:C0(AM,{item:g,label:u,link:`${u} ${pW}`,onNavigate:v})},`${g.label}-${b}`)),m=r&&(r.search||r.region)?r:null;return A5("nav",{ref:l,"aria-label":i,"data-menu-row":"",className:"min-w-0",children:[C0("ul",{className:"m-0 hidden list-none flex-wrap items-center gap-x-[30px] gap-y-2 p-0 font-mono text-[13px] uppercase tracking-[0.18em] min-[801px]:flex",children:h("","")}),C0("button",{type:"button",className:"flex h-11 w-11 items-center justify-center min-[801px]:hidden","aria-expanded":s,"aria-label":s?"Close the menu":"Open the menu",onClick:()=>c(u=>!u),children:C0("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round","aria-hidden":"true",children:s?C0("path",{d:"M6 6l12 12M18 6L6 18"}):C0("path",{d:"M4 7h16M4 12h16M4 17h16"})})}),s?A5("div",{role:"dialog","aria-label":i,className:"fixed inset-x-0 bottom-0 top-[var(--sf-header-h,60px)] z-[60] flex flex-col overflow-y-auto bg-bg text-fg min-[801px]:hidden",children:[C0("ul",{className:"m-0 flex list-none flex-col px-5 py-3 font-mono text-[16px] uppercase tracking-[0.18em]",children:h("","flex min-h-14 items-center border-b border-line",n)}),m?A5("div",{className:"mt-auto flex flex-col gap-3.5 border-t border-line bg-surface p-5",children:[m.search?A5("button",{type:"button",className:"flex h-12 items-center gap-3 border border-line bg-bg px-3.5 text-left text-[15px]",onClick:a?void 0:()=>{n(),o()},children:[C0(r6,{name:"search",size:18,strokeWidth:1.6,rounded:!0}),_a.search]}):null,m.region?A5("div",{className:"flex items-center justify-between",children:[C0("span",{className:"mono-eyebrow text-fg-dim",children:"Region"}),C0(S8,{})]}):null]}):null]}):null]})}function Ra({menu:e,heading:t,accordionMobile:a=!1,showDividers:s=!1,editing:c=!1,layout:l="column"}){let{live:r,ready:o}=wM(),i=xM({id:e?.id,handle:e?.handle,editing:c,ready:o,live:r}),n=i?[]:e?.items??[],h=t||e?.name||"",[m,u]=MM(!1);return iW(()=>{if(!a)return;let d=window.matchMedia("(max-width: 800px)"),v=()=>u(d.matches);return v(),d.addEventListener("change",v),()=>d.removeEventListener("change",v)},[a]),l==="row"?C0(uW,{items:i?null:n,label:h,editing:c}):i?A5("div",{className:"min-w-0",children:[C0("h4",{className:Tp,children:t?R0(t):p(oM)}),C0(mW,{showDividers:s}),C0("p",{className:`mt-3 ${CM}`,children:p(iM)})]}):n.length===0?A5("div",{className:"min-w-0",children:[h?C0("h4",{className:Tp,children:R0(h)}):null,c?C0("p",{className:CM,children:p("This menu has no links yet \u2014 add them in {place}.",{place:p("Storefront \u2192 Menus")})}):null]}):a&&m?A5("details",{className:"min-w-0 border-b border-line",children:[A5("summary",{className:"flex cursor-pointer list-none items-center justify-between py-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:[R0(h),C0("span",{"aria-hidden":!0,children:"\uFF0B"})]}),C0("div",{className:"pb-3",children:C0(kM,{items:n,showDividers:s})})]}):A5("div",{className:"min-w-0",children:[h?C0("h4",{className:Tp,children:R0(h)}):null,C0(kM,{items:n,showDividers:s})]})}import{createContext as wW,useCallback as O3,useContext as CW,useEffect as kW,useMemo as MW,useRef as KM,useState as Re}from"react";function Ba(e){return typeof e=="number"?String(e):""}function HM(e){let t=Ba(e);return t&&`${t} LUG`}function Pp(e){let t=e.spec?.lugs;return typeof t=="number"?t:null}function FM(e){let t=new Set;for(let a of e){let s=Pp(a);s!==null&&t.add(s)}return[...t].sort((a,s)=>a-s)}function dW(e){return e.length===0?null:{min:Math.min(...e),max:Math.max(...e)}}function $r(e){let t=dW(e);return t?pk(t.min,t.max):null}function TM(e){let t=new Set;for(let a of e)for(let s of a.sizes??[])typeof s=="number"&&t.add(s);return[...t].sort((a,s)=>a-s)}var PM=5,NM=.2;function _e(e){if(!e)return{holes:null,circles:[]};let t=e.replace(/\([^)]*\)?/g," ").trim(),a=t.match(/^\s*(\d+)\s*[x×*]\s*(.+)$/i),s=a?Number(a[1]):null,l=(a?a[2]:t).split(/[-/,]/).map(r=>Number(r.trim().replace(/[^\d.]/g,""))).filter(r=>Number.isFinite(r)&&r>0);return{holes:s,circles:l}}function Ep(e){if(!e||e.length<2)return null;let[t,a]=e;return!Number.isFinite(t)||!Number.isFinite(a)?null:[Math.min(t,a),Math.max(t,a)]}function _M(e){if(!e)return null;let t=_e(e.pcd||e.boltPattern);if(t.holes===null||t.circles.length===0)return null;let a=t.circles[0],s=Ep(e.etRange),c=s?[s[0]-PM,s[1]+PM]:null;return{holes:t.holes,circle:a,centreBore:typeof e.centreBore=="number"&&e.centreBore>0?e.centreBore:null,etRange:c}}function gW(e,t){return Math.abs(e-t)<=NM}function IM(e,t,a){let s=_e(e);return(s.holes??t)!==a.holes?!1:s.circles.some(l=>gW(l,a.circle))}function RM(e,t){return t.centreBore===null?!0:e+NM>=t.centreBore}function vW(e,t){return e[0]<=t[1]&&e[1]>=t[0]}function L8(e,t){let a=`${t.holes}\xD7${t.circle}`;return e.pcds.length===0?{key:"unverifiable",wheel:"",vehicle:a}:e.pcds.some(s=>IM(s,e.lugs,t))?t.etRange!==null&&e.etRange!==null&&!vW(e.etRange,t.etRange)?{key:"et",wheel:Yr(e.etRange),vehicle:Yr(t.etRange)}:e.centreBores.length>0&&!e.centreBores.some(s=>RM(s,t))?{key:"bore",wheel:`${e.centreBores.join(" / ")} mm`,vehicle:`${t.centreBore} mm`}:null:{key:"pcd",wheel:e.pcds.join(" / "),vehicle:a}}function BM(e){return{pcds:e.spec?.pcds??[],lugs:e.spec?.lugs??null,etRange:Ep(e.spec?.etRange),centreBores:e.spec?.centreBores??[]}}function Xr(e){let t=e.et,a=e.rearEt??e.et;return{pcds:e.boltPattern?[e.boltPattern]:[],lugs:null,etRange:t==null||a==null?null:[Math.min(t,a),Math.max(t,a)],centreBores:e.centreBore==null?[]:[e.centreBore]}}function Jr(e,t){let a=L8(e,t);return a===null||a.key!=="et"?a:L8(e,{...t,etRange:null})}function Vp(e,t){return L8(BM(e),t)}function ZM(e,t){return L8(Xr(e),t)}function fW(e,t){return Jr(Xr(e),t)===null}function DM(e,t){return t?e.filter(a=>fW(a,t)):[...e]}function bW(e,t){return Jr(BM(e),t)===null}function Qr(e,t){return t?e.filter(a=>bW(a,t)):e}var EM=1;function xW(e,t){let a=e.spec?.pcds??[],s=e.spec?.centreBores??[],c=Ep(e.spec?.etRange);if(!t)return{pcds:a,etRange:c,centreBores:s};let l=e.spec?.lugs??null,r=a.filter(i=>IM(i,l,t)),o=s.filter(i=>RM(i,t));return{pcds:r.length>0?r:a,etRange:c,centreBores:o.length>0?o:s}}function Yr(e){return Pr(e[0],e[1])}function VM(e){let t=e.slice(0,EM).join(" / "),a=e.length-EM;return a>0?`${t} +${a}`:t}var OM="\xB7";function eo(e){return[{fieldKey:"diameter",text:$r(e.sizes)},{fieldKey:"holes",text:HM(e.spec?.lugs)}].filter(t=>!!t.text)}function GM(e,t){let{pcds:a,etRange:s,centreBores:c}=xW(e,t),l=[];return a.length>0&&l.push({fieldKey:"pcd",text:`PCD ${VM(a)}`}),s!==null&&l.push({fieldKey:"et",text:Yr(s)}),c.length>0&&l.push({fieldKey:"center_bore",text:`C/B ${VM(c)} mm`}),l}function Ie(e){return e?[{key:"pcd",name:"Bolt pattern",value:`${e.holes}\xD7${e.circle}`},{key:"bore",name:"Hub bore",value:e.centreBore!==null?`${e.centreBore} mm bore`:null},{key:"et",name:"Offset",value:e.etRange!==null?Yr(e.etRange):null}]:[]}function qM(e){return Ie(e).map(t=>t.value).filter(t=>t!==null).join(" \xB7 ")}var Za={default:"Sort \xB7 Featured",new:"Newest","price-asc":"Price \xB7 Low","price-desc":"Price \xB7 High",name:"Name A\u2013Z"},to={process:null,size:null,lugs:null,finish:null,priceMin:null,priceMax:null,sort:"default"};function zW(e,t,a){return!(t.process&&e.process!==t.process||t.size&&!e.sizes.includes(t.size)||t.lugs!=null&&Pp(e)!==t.lugs||t.finish&&!e.finishes.some(s=>s.family===t.finish)||!xr(e.prices,a,t.priceMin,t.priceMax))}function yW(e,t,a){return[...e].sort((s,c)=>{switch(t){case"price-asc":return ge(s.prices,c.prices,a,"asc");case"price-desc":return ge(s.prices,c.prices,a,"desc");case"name":return s.name.localeCompare(c.name);case"new":return(c.badge==="new"?1:0)-(s.badge==="new"?1:0);default:return 0}})}function WM(e,t,a,s=null){let c=Qr(e,s);return yW(c.filter(l=>zW(l,t,a)),t.sort,a)}import{jsx as LW}from"react/jsx-runtime";var $M={fit:null,name:"",resolving:!1,unresolved:!1};function SW(e,t){return e.fit===t.fit&&e.name===t.name&&e.resolving===t.resolving&&e.unresolved===t.unresolved}var m4=()=>{},YM=wW({filters:to,setProcess:m4,setSize:m4,setLugs:m4,setFinish:m4,setPriceMin:m4,setPriceMax:m4,setSort:m4,clearAll:m4,reportCount:m4,total:0,reportLugs:m4,lugOptions:[],reportSizes:m4,sizeOptions:[],reportFinishes:m4,finishOptions:[],optionsReported:!1,scrollProcess:null,vehicle:$M,publishVehicle:m4}),ao="data-catalog-collection",UM=(e,t)=>e-t;function jM(e,t){return e.length===t.length&&e.every((a,s)=>a===t[s])}function Np(e){let t=KM(new Map),[a,s]=Re([]),c=O3((l,r)=>{let o=t.current.get(l);if(o&&jM(o,r))return;t.current.set(l,r);let i=new Set;for(let h of t.current.values())for(let m of h)i.add(m);let n=[...i].sort(e);s(h=>jM(h,n)?h:n)},[e]);return[a,c]}function XM({children:e}){let[t,a]=Re(to),s=O3(j=>a(N=>({...N,process:j})),[]),c=O3(j=>a(N=>({...N,size:j})),[]),l=O3(j=>a(N=>({...N,lugs:j})),[]),r=O3(j=>a(N=>({...N,finish:j})),[]),o=O3(j=>a(N=>({...N,priceMin:j})),[]),i=O3(j=>a(N=>({...N,priceMax:j})),[]),n=O3(j=>a(N=>({...N,sort:j})),[]),h=O3(()=>a(j=>({...to,sort:j.sort})),[]),[m,u]=Re($M),d=O3(j=>{u(N=>SW(N,j)?N:j)},[]),v=KM(new Map),[g,b]=Re(0),f=O3((j,N)=>{if(v.current.get(j)===N)return;v.current.set(j,N);let W=0;for(let U of v.current.values())W+=U;b(W)},[]),[w,z]=Np(UM),[k,S]=Np(UM),[H,I]=Np(WC),[P,D]=Re(!1),E=O3((j,N)=>{D(!0),z(j,N)},[z]),F=O3((j,N)=>{D(!0),S(j,N)},[S]),_=O3((j,N)=>{D(!0),I(j,N)},[I]),[Z,G]=Re(null);kW(()=>{let N=0,Q=()=>{N=0;let U=null,i1=document.querySelectorAll(`[${ao}]`);for(let y1 of i1){let K=y1.getBoundingClientRect();if(K.top<=140&&K.bottom>140){U=y1.getAttribute(ao)??null;break}}G(U)},W=()=>{N||(N=requestAnimationFrame(Q))};return Q(),window.addEventListener("scroll",W,{passive:!0}),window.addEventListener("resize",W),()=>{window.removeEventListener("scroll",W),window.removeEventListener("resize",W),N&&cancelAnimationFrame(N)}},[]);let V=MW(()=>({filters:t,setProcess:s,setSize:c,setLugs:l,setFinish:r,setPriceMin:o,setPriceMax:i,setSort:n,clearAll:h,reportCount:f,total:g,reportLugs:E,lugOptions:w,reportSizes:F,sizeOptions:k,reportFinishes:_,finishOptions:H,optionsReported:P,scrollProcess:Z,vehicle:m,publishVehicle:d}),[t,s,c,l,r,o,i,n,h,f,g,E,w,F,k,_,H,P,Z,m,d]);return LW(YM.Provider,{value:V,children:e})}function so(){return CW(YM)}import{useCallback as XW,useEffect as io,useRef as fS,useState as Oa}from"react";function JM({email:e,firstName:t,interests:a,frequency:s},c){return{email:e.trim(),firstName:t?.trim()||void 0,interests:a&&a.length?a:void 0,frequency:s||void 0,source:c}}var G3={popup:"shop_popup",subscribeSection:"subscribe_section",subscribeBlogsSection:"subscribe_blogs_section",footerSignup:"footer_signup",stockAlertOptIn:"stock_alert_optin"};var AW={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function QM(e){let t={};for(let a of Nl){let s=e[a];if(!s)continue;let c=V9({role:s},AW);c.fontFamily&&(t[Mm[a].font]=c.fontFamily),c.fontSize&&(t[Mm[a].size]=c.fontSize)}return t}import{useEffect as TW}from"react";import{useEffect as aS,useState as A8}from"react";var _p=new Set,Ip=new Set,Rp=new Set;function eS(e){return _p.add(e),()=>_p.delete(e)}function en1(){_p.forEach(e=>e())}function tS(e){return Ip.add(e),()=>Ip.delete(e)}function tn1(){Ip.forEach(e=>e())}function co(e){return Rp.add(e),()=>Rp.delete(e)}function an1(){Rp.forEach(e=>e())}import{jsx as Be,jsxs as FW}from"react/jsx-runtime";function H5(e,t){let[a,s]=A8(void 0),[c,l]=A8(0);return aS(()=>{if(t!==void 0)return;if(!e){s(null);return}let r=!1;return v0.getForm(e).then(o=>{r||s(o)}).catch(()=>{r||s(null)}),()=>{r=!0}},[t,e,c]),aS(()=>{if(t===void 0)return co(()=>l(r=>r+1))},[t]),t!==void 0?t:a}var HW="Something went wrong \u2014 your submission wasn't sent. Please try again.";function Ze(e,t="Thanks \u2014 we've received your submission."){return e.successMessage?.trim()||t}function v7({form:e,formSlug:t,editing:a=!1}){let[s,c]=A8({}),[l,r]=A8(""),[o,i]=A8(!1),[n,h]=A8(!1),[m,u]=A8(null);async function d(v){if(v.preventDefault(),!(a||o||!e||!t)){i(!0),u(null);try{let g=e.fields.map(b=>({fieldKey:b.key,value:s[b.key]??""}));await v0.submitForm(t,{answers:g,...l?{company:l}:{}}),h(!0)}catch{u(HW)}finally{i(!1)}}}return{valueOf:v=>s[v]??"",set:(v,g)=>c(b=>({...b,[v]:g})),honeypot:l,setHoneypot:r,submitting:o,done:n,error:m,handleSubmit:d}}function De({value:e,onChange:t}){return Be("input",{type:"text",name:"company",tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"hidden",value:e,onChange:a=>t(a.target.value)})}function f7({field:e,value:t,onChange:a,className:s,rows:c=5,placeholder:l}){let r=l??e.placeholder;return e.type==="textarea"?Be("textarea",{required:e.required,rows:c,value:t,placeholder:r,onChange:o=>a(o.target.value),className:s}):e.type==="select"?FW("select",{required:e.required,value:t,onChange:o=>a(o.target.value),className:s,children:[Be("option",{value:"",children:r||"Select\u2026"}),e.options.map(o=>Be("option",{value:o,children:o},o))]}):e.type==="checkbox"?Be("input",{type:"checkbox",required:e.required,checked:t==="true",onChange:o=>a(o.target.checked?"true":""),className:s}):Be("input",{type:e.type==="email"?"email":e.type==="tel"?"tel":"text",required:e.required,value:t,placeholder:r,onChange:o=>a(o.target.value),className:s})}import{jsx as Da}from"react/jsx-runtime";var sS="font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim";function A4({size:e,children:t}){return e==="tall"?Da("section",{className:"grid min-h-[70vh] place-items-center border-b border-line px-[var(--sf-site-gutter,40px)] pt-[104px] pb-14 text-center",style:{background:"var(--section-bg)"},children:Da("p",{className:sS,children:t})}):Da("section",{className:"relative z-[2] border-t border-line bg-surface",children:Da("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:Da("p",{className:sS,children:t})})})}import{jsx as a3,jsxs as lo}from"react/jsx-runtime";var cS="w-full border-2 border-line bg-bg px-4 py-3.5 font-display text-[17px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent";function PW({field:e,value:t,onChange:a}){let s={field:e,value:t,onChange:a};return e.type==="checkbox"?lo("label",{className:"flex items-start gap-3",children:[a3(f7,{...s,className:"mt-1 size-4 accent-accent"}),lo("span",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.16em] text-fg",children:[e.label,e.required?a3("span",{className:"text-accent",children:" *"}):null]})]}):a3(Z2,{label:e.label,required:e.required,children:a3(f7,{...s,className:e.type==="textarea"?cS+" resize-y":cS})})}function Bp({formSlug:e,heading:t,intro:a,submitText:s,finePrint:c,form:l,editing:r=!1}={}){let o=H5(e,l);if(o===void 0)return a3(A4,{size:"short",children:p("Loading form\u2026")});if(o===null)return a3(A4,{size:"short",children:r?p("Choose a form in the inspector, under Form."):"This form is unavailable."});let i=(t??"").trim()||o.title;return a3("section",{className:"relative z-[2] border-t border-line bg-surface",children:lo("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[i&&a3("h2",{className:"mb-4 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:i}),(a??"").trim()&&a3("p",{className:"mb-11 max-w-[640px] font-display text-[16px] leading-[1.6] text-fg-dim",children:a}),a3(Zp,{form:o,formSlug:e,submitText:s,finePrint:c,editing:r})]})})}function Zp({form:e,formSlug:t,submitText:a,finePrint:s,editing:c=!1,onSent:l}){let{valueOf:r,set:o,honeypot:i,setHoneypot:n,submitting:h,done:m,error:u,handleSubmit:d}=v7({form:e,formSlug:t,editing:c});TW(()=>{m&&l?.()},[m]);let v=(a??"").trim()||e.submitButtonText?.trim()||"Submit";return m?a3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:Ze(e)}):lo("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:d,children:[e.fields.map(g=>a3(PW,{field:g,value:r(g.key),onChange:b=>o(g.key,b)},g.key)),a3(De,{value:i,onChange:n}),u&&a3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:u}),a3("button",{type:c?"button":"submit",disabled:h,className:"cursor-pointer self-start bg-btn px-8 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:h?"Sending\u2026":v}),e.consentText?.trim()&&a3("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:e.consentText}),(s??"").trim()&&a3("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:s})]})}import{jsx as Dp,jsxs as VW}from"react/jsx-runtime";import{jsx as EW}from"react/jsx-runtime";function lS(){return EW("span",{className:"block h-px w-[30px] bg-current"})}function NW(e,t){return`font-mono text-[length:var(--size-label,${e}px)] uppercase tracking-[0.3em] text-accent`}var _W="inline-block w-fit bg-accent px-3.5 py-1.5 font-mono text-[length:var(--size-label,12px)] font-semibold uppercase tracking-[0.16em] text-bg",IW="flex items-center gap-3.5 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em] opacity-80 max-[800px]:text-[length:var(--size-label,12px)] max-[800px]:tracking-[0.25em]";function V1({text:e,look:t="plain",size:a=13,scaled:s=!0,className:c="",classNameAfter:l=""}){if(t==="line")return VW("div",{className:[c,IW,l].filter(Boolean).join(" "),children:[Dp(lS,{}),Dp("span",{children:M(e)})]});let r=t==="filled"?_W:NW(a,s);return Dp("span",{className:[c,r,l].filter(Boolean).join(" "),children:M(e)})}import{useCallback as rS,useRef as RW,useState as oS}from"react";function ro({source:e,dryRun:t=!1}){let[a,s]=oS("idle"),[c,l]=oS(null),r=RW(!1),o=rS(()=>{r.current=!1,l(null),s("idle")},[]),i=rS(async n=>{if(!r.current){if(!be(n.email)){s("invalid");return}r.current=!0,l(null),s("sending");try{t||await v0.createNewsletterSubscription(JM(n,e))}catch(h){r.current=!1,l(h),s("error");return}r.current=!1,s("sent")}},[e,t]);return{status:a,error:c,submit:i,reset:o}}function Oe(){return"/edit"}import{createContext as OW,useCallback as oo,useContext as GW,useEffect as qW,useMemo as WW,useRef as UW,useState as qp}from"react";var iS="/edit";function nS(e){return e===iS||e.startsWith(`${iS}/`)}var mS="storefront-subscribe-seen",pS="storefront-popup-closed-at",BW=1440*60*1e3,ZW=["/checkout","/cart"];function hS(e){let t=e.split(/[?#]/)[0]||"/",a=t.startsWith("/")?t:`/${t}`;return a.length>1?a.replace(/\/+$/,"")||"/":a}function Op(e,t,a){let s=hS(e);return ZW.some(c=>s===c||s.startsWith(`${c}/`))?!1:t==="all"?!0:a.some(c=>hS(c)===s)}function DW(e,t,a,s){if(e==="never")return!1;if(a.session.getItem(mS)==="1")return!0;if(e==="visit")return!1;let c=Number(a.local.getItem(pS));return!Number.isFinite(c)||c<=0?!1:s-c<t*BW}function Gp(e,t){e.session.setItem(mS,"1"),e.local.setItem(pS,String(t))}function uS(e,t){return e==="exit"&&!t?"delay":e}function dS(e,t,a){let s=a-t;return s<=0?100:Math.min(100,Math.max(0,e/s*100))}function gS(e,t,a){return!e.autoOpen||e.inEditor||!Op(e.path,e.showOn,e.showOnPages)||e.hideAfter!=="never"&&!vC(t.session)?!1:!DW(e.hideAfter,e.hideDays,t,a)}import{jsx as YW}from"react/jsx-runtime";var vS=OW(null),Wp={session:fC,local:t3};function jW(){try{return window.matchMedia("(hover: hover) and (pointer: fine)").matches}catch{return!1}}var KW=15,$W=[];function Bn1({children:e,disableAutoTrigger:t,autoOpen:a=!1,autoOpenDelaySec:s=KW,trigger:c="delay",scrollPercent:l=50,showOn:r="all",showOnPages:o=$W,hideAfter:i="visit",hideDays:n=7}){let[h,m]=qp(!1),[u,d]=qp("chosen"),[v,g]=qp({}),b=Oe()??"/",f=nS(b),w=Op(b,r,o),z=UW(!1),k=oo(D=>{g(D??{}),d("newsletter"),m(!0)},[]),S=oo(()=>{z.current=!0,g({}),d("chosen"),m(!0)},[]),H=oo(()=>Gp(Wp,Date.now()),[]),I=oo(()=>{m(!1),Gp(Wp,Date.now())},[]);qW(()=>{if(t||z.current||!gS({autoOpen:a,inEditor:f,path:b,showOn:r,showOnPages:o,hideAfter:i,hideDays:n},Wp,Date.now()))return;let E=uS(c,jW());if(E==="scroll"){let _=()=>{dS(window.scrollY,window.innerHeight,document.documentElement.scrollHeight)>=l&&(window.removeEventListener("scroll",_),S())};return window.addEventListener("scroll",_,{passive:!0}),()=>window.removeEventListener("scroll",_)}if(E==="exit"){let _=Z=>{Z.relatedTarget===null&&Z.clientY<=0&&(document.removeEventListener("mouseout",_),S())};return document.addEventListener("mouseout",_),()=>document.removeEventListener("mouseout",_)}let F=window.setTimeout(S,Math.max(0,s)*1e3);return()=>window.clearTimeout(F)},[t,a,f,w,c,s,l,i,n,S]);let P=WW(()=>({isOpen:h,mode:u,open:k,close:I,markSent:H,prefillEmail:v.email??"",signupSource:v.source??G3.popup}),[h,u,k,I,H,v]);return YW(vS.Provider,{value:P,children:e})}function Up(){let e=GW(vS);if(!e)throw new Error("useSubscribePopup() must be called inside <SubscribePopupProvider>. Mount the provider in app/layout.tsx.");return e}import{Fragment as eU,jsx as a0,jsxs as C2}from"react/jsx-runtime";var JW=50,no="font-[family-name:var(--pp-fieldlabel-font,var(--font-mono))] text-[length:var(--pp-fieldlabel-size,12px)]";function QW(e){let t=I9({sectionAccent:f5(e.sectionAccent)}),a=yl(e.sectionCorners,e.sectionCornerSides);return{className:t?.className??"",style:{...t?.style??{},...a??{},...QM(e.textStyles)}}}function bS({content:e,open:t=!0,onClose:a,onSent:s,inline:c=!1,prefillEmail:l="",source:r=G3.popup,mode:o="chosen",form:i}){let n=o==="chosen"?e.formSlug:"",h=H5(n||void 0,c?void 0:i??null),m=!!n&&!!h,[u,d]=Oa(""),[v,g]=Oa(""),[b,f]=Oa(()=>new Set(e.interests.slice(0,1))),[w,z]=Oa(e.frequencies[0]??""),{status:k,error:S,submit:H,reset:I}=ro({source:r,dryRun:c}),P=k==="sending",D=k==="invalid"?e.emailInvalidText:k==="error"?S instanceof W4?S.message:e.submitErrorText:null,[E,F]=Oa(""),_=fS(null),Z=fS(null);io(()=>{t&&I()},[t,I]),io(()=>{k==="sent"&&!c&&s?.()},[k]);let G=XW(()=>a?.(),[a]);if(L4({active:!c&&t,onDismiss:G}),io(()=>{if(c||!t)return;let $=window.setTimeout(()=>Z.current?.focus(),JW);return()=>window.clearTimeout($)},[c,t]),io(()=>{!t||!l||g(l)},[t,l]),!c&&!t)return null;function V($){f(u1=>{let x1=new Set(u1);return x1.has($)?x1.delete($):x1.add($),x1})}function j($){$.target===_.current&&a?.()}function N($){$.preventDefault();let u1=v.trim().toLowerCase();F(u1),H({email:u1,firstName:u,interests:[...b],frequency:w})}let Q=e.successBody.replace(/\{email\}/g,E).replace(/\{issue\}/g,e.issueNumber),W=QW(e),U=e.formSide==="left",i1=C2("div",{className:"flex flex-wrap items-center justify-between gap-5 uppercase tracking-[0.18em] text-fg-dim",children:[C2("span",{className:"flex items-center gap-2 font-[family-name:var(--pp-fineprint-font,var(--font-mono))] text-[length:var(--pp-fineprint-size,12px)]",children:[a0("span",{className:"block h-1.5 w-1.5 rounded-full bg-accent"}),M(e.finePrint)]}),!c&&a0("button",{type:"button",onClick:a,className:"font-[family-name:var(--pp-dismiss-font,var(--font-mono))] text-[length:var(--pp-dismiss-size,12px)] uppercase tracking-[0.18em] text-fg-dim underline underline-offset-[3px] transition-colors hover:text-fg",children:M(e.dismissText)})]}),y1=C2(eU,{children:[a0("span",{className:"contents [&>span]:font-[family-name:var(--pp-formeyebrow-font,var(--font-mono))] [&>span]:text-[length:var(--pp-formeyebrow-size,var(--size-label,13px))]",children:a0(V1,{text:e.formLabel,scaled:!1,className:"mb-[18px]"})}),a0("h2",{id:"subscribe-modal-title",className:"font-[family-name:var(--pp-formheading-font,var(--font-display))] text-[length:var(--pp-formheading-size,34px)] font-medium uppercase leading-none tracking-[-0.025em] [&_em]:font-serif [&_em]:normal-case [&_em]:tracking-[-0.02em]",children:Y(e.formHeading)}),a0("p",{className:"mt-3.5 font-[family-name:var(--pp-formintro-font,var(--font-serif))] text-[length:var(--pp-formintro-size,17px)] italic leading-[1.55] text-fg-dim",children:M(e.formIntro,!0)})]}),K="px-11 py-12 max-[880px]:px-[26px] max-[880px]:py-8",c1;m&&h?c1=C2("div",{className:`relative flex min-h-[560px] flex-col max-[880px]:min-h-0 ${K}`,children:[y1,a0("div",{className:"mt-8",children:a0(Zp,{form:h,formSlug:n,editing:c,onSent:s})}),a0("div",{className:"mt-auto pt-7",children:i1})]}):k!=="sent"?c1=C2("form",{onSubmit:N,noValidate:!0,className:`relative flex min-h-[560px] flex-col max-[880px]:min-h-0 ${K}`,children:[y1,C2("div",{className:"mt-8 flex flex-col gap-[18px]",children:[a0(Z2,{label:M(e.firstNameLabel),required:!0,labelFace:no,children:a0("input",{type:"text",value:u,onChange:$=>d($.target.value),placeholder:e.firstNamePlaceholder,required:!0,className:"border border-line bg-surface px-4 py-3.5 font-display text-[15px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:tracking-[0.04em] placeholder:text-fg-dim focus:border-accent"})}),a0(Z2,{label:M(e.emailLabel),required:!0,labelFace:no,children:a0("input",{type:"email",value:v,onChange:$=>g($.target.value),placeholder:e.emailPlaceholder,required:!0,className:"border border-line bg-surface px-4 py-3.5 font-display text-[15px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:tracking-[0.04em] placeholder:text-fg-dim focus:border-accent"})}),C2("div",{className:"mt-1.5 flex flex-col gap-2.5",children:[a0(w8,{labelFace:no,children:M(e.interestsLabel)}),a0("div",{className:"flex flex-wrap gap-2",children:e.interests.map(($,u1)=>{let x1=b.has($);return a0("button",{type:"button",onClick:()=>V($),"aria-pressed":x1,className:["select-none border px-3.5 py-2.5 font-[family-name:var(--pp-option-font,var(--font-mono))] text-[length:var(--pp-option-size,12px)] uppercase tracking-[0.22em] transition-all",x1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:$},`${$}-${u1}`)})})]}),e.frequencies.length>0&&C2("div",{className:"mt-1.5 flex flex-col gap-2.5",children:[a0(w8,{labelFace:no,children:M(e.frequencyLabel)}),a0("div",{className:"flex border border-line",children:e.frequencies.map(($,u1)=>{let x1=w===$;return a0("button",{type:"button",onClick:()=>z($),"aria-pressed":x1,className:["flex-1 px-2.5 py-3.5 font-[family-name:var(--pp-option-font,var(--font-mono))] text-[length:var(--pp-option-size,12px)] uppercase tracking-[0.24em] transition-all",u1<e.frequencies.length-1?"border-r border-line":"",x1?"bg-accent text-bg":"text-fg-dim hover:text-fg"].join(" "),children:$},`${$}-${u1}`)})})]})]}),C2("div",{className:"mt-auto flex flex-col gap-3.5 pt-7",children:[D&&a0("p",{role:"alert",className:"border border-red-300 bg-red-50 px-4 py-3 font-mono text-[12px] uppercase tracking-[0.18em] text-red-700",children:D}),C2("button",{type:"submit",disabled:P,className:"group flex items-center justify-between gap-[18px] border border-btn bg-btn px-6 py-[18px] font-mono text-[14px] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:border-fg hover:bg-fg disabled:cursor-wait disabled:opacity-60 disabled:hover:border-btn disabled:hover:bg-btn",children:[a0("span",{children:e.submitText}),a0("span",{className:"transition-transform group-hover:translate-x-[4px]",children:P?"\u2026":"\u2192"})]}),i1]})]}):c1=C2("div",{className:"flex min-h-[560px] flex-col justify-center gap-6 px-11 py-12 max-[880px]:min-h-0 max-[880px]:px-[26px] max-[880px]:py-8",style:{animation:"subscribe-fade 0.25s ease"},children:[a0("div",{className:"flex h-16 w-16 items-center justify-center border border-accent font-display text-[32px] text-accent",children:"\u2713"}),a0("h3",{className:"font-[family-name:var(--pp-doneheading-font,var(--font-display))] text-[length:var(--pp-doneheading-size,38px)] font-medium uppercase leading-none tracking-[-0.025em] [&_em]:font-serif [&_em]:normal-case [&_em]:tracking-[-0.02em]",children:Y(e.successHeading)}),a0("p",{className:"max-w-[440px] font-[family-name:var(--pp-donebody-font,var(--font-serif))] text-[length:var(--pp-donebody-size,18px)] italic leading-[1.55] text-fg-dim",children:M(Q,!0)}),!c&&a0("button",{type:"button",onClick:a,className:"self-start border border-line px-6 py-[18px] font-mono text-[14px] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:M(e.keepBrowsingText)})]});let b1=C2("div",{className:`relative w-[min(1100px,100%)] overflow-hidden border border-line bg-bg [border-radius:var(--sf-section-radius,0px)] max-[880px]:border-x-0 max-[880px]:border-b-0 ${W.className}`.trim(),style:{...W.style,background:"var(--bg)",color:"var(--fg)",boxShadow:c?"0 30px 80px -30px rgba(0,0,0,0.5)":"0 60px 120px -20px rgba(0,0,0,0.7)",animation:c?void 0:"subscribe-rise 0.35s cubic-bezier(.2,.7,.2,1)"},children:[!c&&a0("button",{ref:Z,type:"button",onClick:a,"aria-label":"Close popup",className:"absolute right-[18px] top-[18px] z-[5] flex h-[38px] w-[38px] items-center justify-center border border-line font-mono text-[14px] text-fg-dim transition-colors hover:border-accent hover:text-fg max-[880px]:right-3 max-[880px]:top-3 max-[880px]:h-11 max-[880px]:w-11",style:{background:"color-mix(in oklab, var(--bg) 85%, transparent)"},children:"\u2715"}),C2("div",{className:["grid max-h-[calc(100vh-48px)] overflow-hidden max-[880px]:max-h-[88dvh] max-[880px]:grid-cols-1 max-[880px]:overflow-auto",U?"grid-cols-[1fr_1.05fr]":"grid-cols-[1.05fr_1fr]"].join(" "),children:[C2("aside",{className:["relative flex min-h-[560px] flex-col justify-between overflow-hidden border-line px-[var(--sf-site-gutter,40px)] py-11 max-[880px]:min-h-[380px] max-[880px]:border-r-0 max-[880px]:border-l-0 max-[880px]:border-b max-[880px]:px-[26px] max-[880px]:py-8",U?"order-2 border-l max-[880px]:order-none":"border-r",e.valuePanelOnPhone?"":"max-[880px]:hidden"].join(" "),style:{background:"var(--subscribe-panel-bg)"},children:[a0("div",{className:"pointer-events-none absolute inset-0",style:{backgroundImage:"repeating-linear-gradient(0deg, transparent 0 28px, color-mix(in oklab, var(--accent) 4%, transparent) 28px 29px), repeating-linear-gradient(90deg, transparent 0 28px, color-mix(in oklab, var(--accent) 3%, transparent) 28px 29px)"}}),C2("div",{"aria-hidden":!0,className:"pointer-events-none absolute -right-[120px] -bottom-[120px] z-[1] h-[520px] w-[520px] rounded-full border opacity-50 max-[880px]:-right-[100px] max-[880px]:-bottom-[100px] max-[880px]:h-[340px] max-[880px]:w-[340px]",style:{borderColor:"color-mix(in oklab, var(--accent) 22%, transparent)"},children:[a0("div",{className:"absolute inset-[60px] rounded-full border",style:{borderColor:"color-mix(in oklab, var(--accent) 18%, transparent)"}}),a0("div",{className:"absolute inset-[140px] rounded-full border",style:{borderColor:"color-mix(in oklab, var(--accent) 14%, transparent)"}})]}),C2("div",{className:["relative z-[2] flex items-start justify-between font-[family-name:var(--pp-meta-font,var(--font-mono))] text-[length:var(--pp-meta-size,12px)] uppercase tracking-[0.3em] text-fg-dim",U&&!c?"pr-[52px]":""].join(" "),children:[a0("span",{children:M(e.metaLabel)}),(e.issueLabel||e.issueNumber)&&C2("span",{children:[M(e.issueLabel)," ",a0("strong",{className:"font-normal text-accent",children:e.issueNumber})]})]}),C2("div",{className:"relative z-[2] flex flex-col gap-[18px] py-8",children:[a0("span",{className:"contents [&>span]:font-[family-name:var(--pp-eyebrow-font,var(--font-mono))] [&>span]:text-[length:var(--pp-eyebrow-size,var(--size-label,12px))]",children:a0(V1,{text:e.kicker,size:12,scaled:!1})}),a0("h2",{className:"font-[family-name:var(--pp-heading-font,var(--font-display))] text-[length:var(--pp-heading-size,clamp(40px,4.8vw,68px))] font-medium uppercase leading-[0.92] tracking-[-0.04em] text-fg [&_em]:font-serif [&_em]:normal-case [&_em]:tracking-[-0.03em]",children:Y(e.heading)}),a0("p",{className:"max-w-[420px] font-[family-name:var(--pp-body-font,var(--font-serif))] text-[length:var(--pp-body-size,18px)] italic leading-[1.5]",style:{color:"color-mix(in oklab, var(--fg) 85%, transparent)"},children:M(e.deck,!0)})]}),e.stats.length>0&&a0("div",{className:"relative z-[2] grid grid-cols-2 gap-[18px] border-t pt-6",style:{borderColor:"color-mix(in oklab, var(--accent) 18%, var(--site-line))"},children:e.stats.map(($,u1)=>C2("div",{children:[a0("div",{className:"mb-1.5 font-[family-name:var(--pp-statname-font,var(--font-mono))] text-[length:var(--pp-statname-size,11px)] uppercase tracking-[0.24em] text-fg-dim",children:M($.label)}),a0("div",{className:"font-[family-name:var(--pp-statvalue-font,var(--font-display))] text-[length:var(--pp-statvalue-size,22px)] font-medium tracking-[-0.015em] text-fg",children:M($.value)})]},`${$.label}-${u1}`))})]}),c1]})]});return c?a0("div",{className:"flex w-full justify-center p-6","data-subscribe-preview":!0,children:b1}):C2("div",{ref:_,onClick:j,role:"dialog","aria-modal":"true","aria-labelledby":"subscribe-modal-title",className:"fixed inset-0 z-[90] flex items-center justify-center p-6 backdrop-blur-[8px] max-[880px]:items-end max-[880px]:p-0",style:{background:"color-mix(in oklab, var(--bg) 78%, transparent)",animation:"subscribe-fade 0.25s ease"},children:[b1,a0("style",{children:`
4
4
  @keyframes subscribe-fade { from { opacity: 0 } to { opacity: 1 } }
@@ -19,7 +19,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
19
19
  `;function Jp(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{chat:a,selected:s,select:c}=zw();return e||t||!a.enabled?null:vU("div",{className:"sf-preview-chat-pick","data-selected":s||void 0,onClick:l=>{l.stopPropagation(),c()},children:[Xp("style",{children:gU}),Xp(MS,{preview:!0,children:Xp(Yp,{title:a.title,subtitle:a.subtitle,greeting:a.greeting})})]})}import{lazy as fU,Suspense as bU}from"react";import{jsx as LS}from"react/jsx-runtime";function Qp(e,t={}){let a=fU(async()=>{let l=await e();return{default:"default"in l?l.default:l}}),s=t.loading?t.loading():null;function c(l){return LS(bU,{fallback:s,children:LS(a,{...l})})}return c}import{useEffect as UU,useRef as jU}from"react";import{jsx as eu,jsxs as xU}from"react/jsx-runtime";import{useEffect as zU,useState as yU}from"react";function k0({fallback:e,className:t,src:a,alt:s="",objectPosition:c,objectFit:l="cover",sizes:r="100vw",priority:o=!1,deferFetch:i=!1,showBackground:n=!0,treatment:h}){let[m,u]=yU(!1),d=a||"";zU(()=>{u(!1)},[d]);let v=Ux(d),g=!d||m;return xU("div",{className:`relative h-full w-full overflow-hidden ${t??""}`,children:[eu("div",{className:"absolute inset-0 flex items-center justify-center",style:n?{background:"var(--site-surface)"}:void 0,children:g?e:null}),d&&(v?eu("img",{src:d,alt:s,decoding:"async",...i?{loading:"lazy"}:{},className:`absolute inset-0 h-full w-full${h?.className?` ${h.className}`:""}`,style:{display:m?"none":"block",objectFit:l,...c?{objectPosition:c}:{},...h?.style??{}},onError:()=>u(!0)}):eu(ol,{src:d,alt:s,fill:!0,sizes:r,priority:o,...h?.className?{className:h.className}:{},style:{display:m?"none":"block",objectFit:l,...c?{objectPosition:c}:{},...h?.style??{}},onError:()=>u(!0)}))]})}import{useId as HU}from"react";var wU=25.4,qa=400,mo=152,CU=58,AS=mo*Math.cos(CU*Math.PI/180),kU=14,MU=qa/2,SU={sectionWidth:225,aspectRatio:60,rimDiameter:17};function FS(e){let t=n4(e);return t?{sectionWidth:t.width,aspectRatio:t.profile,rimDiameter:t.rim}:SU}function TS(e){let t=e.rimDiameter*wU/2,a=t+e.sectionWidth*e.aspectRatio/100,s=mo*(e.sectionWidth/a),c=t/a;return{cy:MU,rx:AS,ry:mo,cxf:qa/2-s/2-kU,dx:s,rimRx:AS*c,rimRy:mo*c}}var y0=e=>e.toFixed(1);function po(e,t,a,s=!1){let c=e.cxf+t*e.dx,[l,r]=s?[e.cy+e.ry,e.cy-e.ry]:[e.cy-e.ry,e.cy+e.ry];return`M${y0(c)} ${y0(l)} A${y0(e.rx)} ${y0(e.ry)} 0 0 ${a} ${y0(c)} ${y0(r)}`}function tu(e,t,a){let s=e.cxf+t*e.dx,c=e.cxf+a*e.dx,l=e.cy-e.ry,r=e.cy+e.ry;return`M${y0(s)} ${y0(l)} L${y0(c)} ${y0(l)} A${y0(e.rx)} ${y0(e.ry)} 0 0 1 ${y0(c)} ${y0(r)} L${y0(s)} ${y0(r)} A${y0(e.rx)} ${y0(e.ry)} 0 0 0 ${y0(s)} ${y0(l)} Z`}function ho(e,t,a){let s=a*Math.PI;return[e.cxf+t*e.dx+e.rx*Math.sin(s),e.cy-e.ry*Math.cos(s)]}function PS(e,t,a,s,c){let[l,r]=ho(e,t,s),[o,i]=ho(e,t,c),[n,h]=ho(e,a,c),[m,u]=ho(e,a,s);return`M${y0(l)} ${y0(r)} A${y0(e.rx)} ${y0(e.ry)} 0 0 1 ${y0(o)} ${y0(i)} L${y0(n)} ${y0(h)} A${y0(e.rx)} ${y0(e.ry)} 0 0 0 ${y0(m)} ${y0(u)} L${y0(l)} ${y0(r)} Z`}var HS=[{f:[0,.215]},{f:[.245,.485]},{f:[.515,.755]},{f:[.785,1]}],LU={COM:[{f:[0,.115]},{f:[.145,.26]},{f:[.29,.405]},{f:[.435,.55]},{f:[.58,.695]},{f:[.725,.84]},{f:[.87,1]}],P:[{f:[0,.17],blocks:{count:9,gap:.34}},{f:[.2,.38]},{f:[.42,.58]},{f:[.62,.8]},{f:[.83,1],blocks:{count:9,gap:.34,phase:.5}}],HP:[{f:[0,.3]},{f:[.34,.52]},{f:[.56,.7]},{f:[.74,1],blocks:{count:16,gap:.18}}],UHP:[{f:[0,.34]},{f:[.4,.56]},{f:[.62,1]}],SUV:[{f:[0,.16],blocks:{count:7,gap:.4}},{f:[.2,.36],blocks:{count:11,gap:.26,phase:.5}},{f:[.4,.6]},{f:[.64,.8],blocks:{count:11,gap:.26,phase:.5}},{f:[.84,1],blocks:{count:7,gap:.4}}],LT:[{f:[0,.22],blocks:{count:11,gap:.26}},{f:[.26,.48],blocks:{count:11,gap:.26,phase:.5}},{f:[.52,.74],blocks:{count:11,gap:.26}},{f:[.78,1],blocks:{count:11,gap:.26,phase:.5}}],AT:[{f:[0,.23],blocks:{count:6,gap:.46}},{f:[.29,.5],blocks:{count:6,gap:.46,phase:.5}},{f:[.56,.77],blocks:{count:6,gap:.46}},{f:[.83,1],blocks:{count:6,gap:.46,phase:.5}}],MT:[{f:[0,.29],blocks:{count:4,gap:.58}},{f:[.36,.64],blocks:{count:4,gap:.58,phase:.5}},{f:[.71,1],blocks:{count:4,gap:.58}}]},AU=[["ultra high performance","UHP"],["uhp","UHP"],["high performance","HP"],["hp","HP"],["performance","HP"],["sport","HP"],["mud terrain","MT"],["mud","MT"],["mt","MT"],["all terrain","AT"],["at","AT"],["light truck","LT"],["lt","LT"],["commercial","COM"],["com","COM"],["van","COM"],["cargo","COM"],["suv","SUV"],["4x4","SUV"],["crossover","SUV"],["cuv","SUV"],["passenger","P"],["touring","P"],["highway","P"],["p","P"]];function ES(e){let t=` ${(e??"").toLowerCase().replace(/[^a-z0-9]+/g," ").trim()} `;if(t.trim()==="")return HS;for(let[a,s]of AU)if(t.includes(` ${a} `))return LU[s];return HS}var uo="Illustrations are drawn to each tyre's listed size and represent its category; supplier photography replaces them where available.";import{Fragment as Wa,jsx as g0,jsxs as T5}from"react/jsx-runtime";var p4={rib:.2,grooveWall:.16,shoulder:.22,silhouette:.26,relief:[.26,.15,.11],lettering:.1,dishFill:.06,dishEdge:.3,spoke:.3,hubFill:.16,hubEdge:.34},FU=[.8,.52,.24],VS=.4,NS=.88,_S=.3,IS=5,RS=.3,BS=.84,TU=7,L0=e=>Math.round(e*10)/10;function au({size:e,type:t,className:a}){let s=HU().replace(/[^a-zA-Z0-9]/g,""),c={tread:`${s}-tread`,wall:`${s}-wall`,rim:`${s}-rim`,shadow:`${s}-shadow`,crown:`${s}-crown`},l=TS(FS(e)),r=tu(l,0,1),o=e?`${e} tyre illustration`:"Tyre illustration";return T5("svg",{"data-tyre-placeholder":"",viewBox:`0 0 ${qa} ${qa}`,role:"img","aria-label":o,fill:"none",className:a??"block h-full w-full",children:[g0("title",{children:o}),T5("defs",{children:[g0(EU,{id:c}),g0("clipPath",{id:c.crown,children:g0("path",{d:r})})]}),g0("ellipse",{cx:L0(l.cxf+l.dx/2),cy:L0(l.cy+l.ry-4),rx:L0(l.dx*1.5),ry:16,fill:`url(#${c.shadow})`}),g0(VU,{g:l,id:c}),g0(NU,{g:l,id:c}),g0("path",{d:r,fill:`url(#${c.tread})`}),g0("g",{clipPath:`url(#${c.crown})`,children:ES(t).map(i=>g0(PU,{g:l,column:i},i.f[0]))}),g0("path",{d:po(l,0,0,!0),stroke:"currentColor",strokeOpacity:p4.shoulder,strokeWidth:1.2}),g0("path",{d:po(l,1,1),stroke:"currentColor",strokeOpacity:p4.silhouette,strokeWidth:1.4})]})}function PU({g:e,column:t}){let[a,s]=t.f;if(!t.blocks)return T5(Wa,{children:[g0("path",{d:tu(e,a,s),fill:"currentColor",fillOpacity:p4.rib}),g0("path",{d:po(e,a,1),stroke:"currentColor",strokeOpacity:p4.grooveWall,strokeWidth:1})]});let{count:c,gap:l,phase:r=0}=t.blocks,o=1/c,i=[];for(let n=-1;n<=c;n+=1){let h=Math.max((n+r+l/2)*o,0),m=Math.min((n+r+1-l/2)*o,1);m-h>o*.15&&i.push([h,m])}return g0(Wa,{children:i.map(([n,h])=>g0("path",{d:PS(e,a,s,n,h),fill:"currentColor",fillOpacity:p4.rib,stroke:"currentColor",strokeOpacity:p4.grooveWall,strokeWidth:1},n))})}function EU({id:e}){return T5(Wa,{children:[T5("linearGradient",{id:e.tread,x1:"0",y1:"0",x2:"1",y2:"0",children:[g0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.07}),g0("stop",{offset:"0.14",stopColor:"currentColor",stopOpacity:.24}),g0("stop",{offset:"0.45",stopColor:"currentColor",stopOpacity:.18}),g0("stop",{offset:"0.84",stopColor:"currentColor",stopOpacity:.1}),g0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.05})]}),T5("linearGradient",{id:e.wall,x1:"0.15",y1:"0",x2:"0.9",y2:"1",children:[g0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.28}),g0("stop",{offset:"0.45",stopColor:"currentColor",stopOpacity:.17}),g0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.08})]}),T5("linearGradient",{id:e.rim,x1:"0.1",y1:"0",x2:"0.9",y2:"1",children:[g0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.46}),g0("stop",{offset:"0.5",stopColor:"currentColor",stopOpacity:.26}),g0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.12})]}),T5("radialGradient",{id:e.shadow,children:[g0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.22}),g0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:0})]})]})}function VU({g:e,id:t}){let a=e.rimRy/e.ry,s=l=>a+(1-a)*l,c=Math.max(6,(e.ry-e.rimRy)*.3);return T5(Wa,{children:[g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rx),ry:L0(e.ry),fill:`url(#${t.wall})`}),FU.map((l,r)=>{let o=s(l);return g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rx*o),ry:L0(e.ry*o),stroke:"currentColor",strokeOpacity:p4.relief[r],strokeWidth:1},l)}),g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rx*s(VS)),ry:L0(e.ry*s(VS)),stroke:"currentColor",strokeOpacity:p4.lettering,strokeWidth:L0(c)})]})}function NU({g:e,id:t}){let a=Array.from({length:IS},(s,c)=>{let l=(c*(360/IS)-90)*Math.PI/180;return{x1:e.cxf+e.rimRx*RS*Math.cos(l),y1:e.cy+e.rimRy*RS*Math.sin(l),x2:e.cxf+e.rimRx*BS*Math.cos(l),y2:e.cy+e.rimRy*BS*Math.sin(l)}});return T5(Wa,{children:[g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rimRx),ry:L0(e.rimRy),fill:`url(#${t.rim})`}),g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rimRx*NS),ry:L0(e.rimRy*NS),fill:"currentColor",fillOpacity:p4.dishFill,stroke:"currentColor",strokeOpacity:p4.dishEdge,strokeWidth:1}),a.map((s,c)=>g0("line",{x1:L0(s.x1),y1:L0(s.y1),x2:L0(s.x2),y2:L0(s.y2),stroke:"currentColor",strokeOpacity:p4.spoke,strokeWidth:TU,strokeLinecap:"round"},c)),g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rimRx*_S),ry:L0(e.rimRy*_S),fill:"currentColor",fillOpacity:p4.hubFill,stroke:"currentColor",strokeOpacity:p4.hubEdge,strokeWidth:1})]})}import{jsx as su}from"react/jsx-runtime";function p6({image:e,size:t,type:a,sizes:s,priority:c=!1,className:l="aspect-square",showBackground:r=!0}){return su("div",{className:`text-fg ${l}`,style:{padding:"var(--sf-tyre-image-inset, 0)"},children:su(k0,{label:t||"Tyre",src:s4(e??void 0),alt:t?`${t} tyre`:"Tyre",objectFit:"contain",sizes:s,priority:c,showBackground:r,fallback:su(au,{size:t,type:a,className:"block h-full w-full p-3"})})})}function vo(e){if(!e||e.year===null)return null;let{make:t,model:a,year:s,modification:c}=e;return!t||!a||!c?null:{make:t,model:a,year:s,modification:c}}function _U(e,t){let a=new URLSearchParams({make:t.make,model:t.model,year:String(t.year),modification:t.modification});return`/api/v1/tyres/${encodeURIComponent(e)}/fitment?${a.toString()}`}function go(e,t=""){return{vehicle:{...e,region:t},status:"unknown",oemSizes:[],variants:[]}}function IU(e,t){if(typeof t!="object"||t===null)return go(e);let a=t,s=typeof a.vehicle=="object"&&a.vehicle!==null?a.vehicle:{},c=typeof s.region=="string"?s.region:"",l=a.status;if(l!=="fits"&&l!=="doesNotFit")return go(e,c);let r=Array.isArray(a.variants)?a.variants.filter(o=>typeof o=="object"&&o!==null&&typeof o.sku=="string"&&typeof o.fits=="boolean"):[];return r.length===0?go(e,c):{vehicle:{make:typeof s.make=="string"?s.make:e.make,model:typeof s.model=="string"?s.model:e.model,year:typeof s.year=="number"?s.year:e.year,modification:typeof s.modification=="string"?s.modification:e.modification,region:c},status:l,oemSizes:Array.isArray(a.oemSizes)?a.oemSizes.filter(o=>typeof o=="string"):[],variants:r.map(o=>({sku:o.sku,size:typeof o.size=="string"?o.size:"",fits:o.fits}))}}async function ZS(e,t){try{let a=await o7(_U(e,t),{baseUrl:AC});return IU(t,a)}catch{return go(t)}}function DS(e){if(!e)return[];let t=[];for(let a of[...e.frontTyres,...e.rearTyres]){let s=n4(a);if(!s)continue;let c=U4(s);t.includes(c)||t.push(c)}return t}function OS(e,t){if(t.length===0)return null;for(let a of e){let s=n4(a);if(!s)continue;let c=U4(s);if(t.includes(c))return c}return null}function Ua(e,t){if(!e||e.status==="unknown")return"unknown";let a=e.variants.find(s=>s.sku===t);return a?a.fits?"fits":"doesNotFit":"unknown"}var RU="/tyres";function Ge(e){return e?`${RU}/${e}`:null}function qe(e){let t=e.lastIndexOf(" ");return t===-1?{lead:"",accent:e}:{lead:e.slice(0,t+1),accent:e.slice(t+1)}}function cu(e,t){return PC({partNumber:e.sku,prices:e.prices},t)}var BU="Tyre";function fo(e,t,a,s){return{id:`${e.slug}|${t.sku}|${a.unit}|${a.spares>0?"spare":"no-spare"}`,slug:e.slug,name:qe(e.name),process:e.brand||BU,positionNo:"01",config:[{label:t.size},{label:fr(a)}],finishName:"",size:t.size,components:cu(t,a),qty:s,href:Ge(e.slug)??void 0,kind:"tyre",sku:t.sku,pack:a}}function bo(e){return e.kind==="tyre"}function GS(e,t){let a=e.prices?.[t];return typeof a!="number"||!Number.isFinite(a)||a<=0?!1:e.inStock}import{jsx as ja}from"react/jsx-runtime";function ZU(e){let t=e?.tyreTypes??[];return t.length===1?t[0]:null}function lu({line:e,catalog:t,tyre:a}){let s=t.find(h=>h.slug===e.slug),c=e.config.find(h=>h.gold)?.label,l=s?.finishes.find(h=>h.name===c&&h.src)??s?.finishes.find(h=>h.src),r=s?.spokes??5,o=s?.mesh??!1,n=(s?.finishes.find(h=>h.name===c)??s?.finishes[0])?.color??GC;return ja("div",{className:"relative flex aspect-square items-center justify-center overflow-hidden border border-line bg-surface",children:bo(e)?ja(p6,{image:a?.coverImage,size:e.size,type:ZU(a),sizes:"96px",className:"h-full w-full"}):l?.src?ja(_3,{src:l.src,alt:`${s?.name??e.slug} \u2014 ${l.name}`,width:120,height:120,sizes:"96px",className:"relative z-[2] block w-[88%] object-contain",style:{filter:"drop-shadow(0 6px 12px rgba(0,0,0,0.25))"}}):s||t.length===0?ja("div",{className:"relative z-[2] block w-[72%]",style:{color:n,filter:"drop-shadow(0 6px 12px rgba(0,0,0,0.25))"},children:ja(C8,{spokes:r,mesh:o,className:"block w-full"})}):null})}import{jsx as ru,jsxs as OU}from"react/jsx-runtime";function qS(e,t){return Math.min(Bm,Math.max(1,e+t))}var WS="disabled:cursor-not-allowed disabled:opacity-40",DU={large:{frame:"flex items-center border-2 border-fg-dim/50",button:`h-12 w-12 cursor-pointer bg-transparent font-mono text-[length:var(--size-label,16px)] font-bold text-fg transition-colors enabled:hover:bg-surface enabled:hover:text-accent ${WS}`,value:"w-11 text-center font-mono text-[length:var(--size-label,15px)] font-bold tracking-[0.1em] text-fg"},small:{frame:"flex items-center border border-line",button:`h-[30px] w-[30px] cursor-pointer font-mono text-fg-dim transition-colors enabled:hover:text-accent ${WS}`,value:"min-w-[36px] px-3 text-center font-mono text-[12px] tracking-[0.18em] text-fg"}};function Ka({value:e,onChange:t,size:a}){let s=DU[a];return OU("div",{className:s.frame,children:[ru("button",{type:"button",onClick:()=>t(qS(e,-1)),disabled:e<=1,"aria-label":"Decrease quantity",className:s.button,children:"\u2212"}),ru("span",{className:s.value,children:e}),ru("button",{type:"button",onClick:()=>t(qS(e,1)),disabled:e>=Bm,"aria-label":"Increase quantity",className:s.button,children:"+"})]})}import{useEffect as GU,useState as qU}from"react";var WU=new Map;function US(e){let[t,a]=qU(null);return GU(()=>{if(!e||t)return;let s=!0;return v0.listCatalog(["tyre"]).then(c=>{s&&a(new Map(c.flatMap(l=>l.kind==="tyre"?[[l.slug,l]]:[])))}).catch(c=>{console.error("[useTyreCatalog] tyre catalog read failed",c)}),()=>{s=!1}},[e,t]),t??WU}import{Fragment as xo,jsx as N1,jsxs as p0}from"react/jsx-runtime";function $a({content:e=Vl}){let{isOpen:t,preview:a,close:s,items:c,remove:l,setQty:r,totals:o,coupon:i,bundles:n}=i4(),h=new Set(c.flatMap(z=>(z.components??[]).map(k=>k.partNumber))),m=new Set(o.appliedBundles.map(z=>z.slug)),u=n.filter(z=>!m.has(z.slug)).filter(z=>z.components.some(k=>h.has(k.partNumber))).slice(0,2),{formatMoney:d,activeCountry:v}=d0(),g=v?.name??e.shipsToFallback,b=1+(e.leadTimeValue?1:0)+(g?1:0),f=jU(null),w=US(c.some(bo));return L4({active:t,onDismiss:s,lockScroll:!a}),UU(()=>{t&&f.current?.focus({preventScroll:!0})},[t]),t?p0(xo,{children:[N1("div",{onClick:s,className:"fixed inset-0 z-[60] backdrop-blur-[4px]",style:{background:"rgba(0,0,0,0.68)",animation:"storefront-cart-fade 350ms ease both"},"aria-hidden":"true"}),p0("aside",{role:"dialog","aria-label":"Your cart","aria-modal":"true",className:"fixed inset-y-0 right-0 z-[61] flex w-[520px] max-w-[100vw] flex-col border-l border-line bg-bg max-[640px]:w-screen max-[640px]:border-l-0",style:{animation:"storefront-cart-slide 450ms cubic-bezier(.2,.7,.2,1) both",boxShadow:"-30px 0 80px rgba(0,0,0,.5)"},onClick:z=>z.stopPropagation(),children:[N1("style",{children:`
20
20
  @keyframes storefront-cart-fade { from { opacity: 0 } to { opacity: 1 } }
21
21
  @keyframes storefront-cart-slide { from { transform: translateX(40px); opacity: 0 } to { transform: translateX(0); opacity: 1 } }
22
- `}),p0("header",{className:"flex flex-shrink-0 flex-col gap-3.5 border-b border-line px-8 pb-[22px] pt-[26px] max-[640px]:px-[22px] max-[640px]:pt-[22px] max-[640px]:pb-[18px]",children:[p0("div",{className:"flex items-center justify-between",children:[p0("span",{className:"flex items-center gap-2.5 font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:[e.kickerBadge?N1("span",{className:"border px-2 py-1 text-[10px]",style:{background:"color-mix(in oklab, var(--accent) 12%, transparent)",borderColor:"color-mix(in oklab, var(--accent) 50%, transparent)"},children:e.kickerBadge}):null,(e.kickerBadge?"\xB7 ":"")+e.kickerText]}),N1("button",{ref:f,type:"button",onClick:s,"aria-label":"Close cart",className:"flex h-8 w-8 items-center justify-center border border-line text-[14px] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u2715"})]}),p0("h1",{className:"font-display text-[38px] font-medium uppercase leading-[0.95] tracking-[-0.03em] max-[640px]:text-[30px]",children:[e.titleLead+" ",N1("em",{className:"font-serif font-normal italic text-accent tracking-[-0.02em] normal-case",children:e.titleAccent})]}),N1("p",{className:"font-serif text-[13px] italic leading-[1.5] text-fg-dim",children:Py(e,c.length)})]}),p0("div",{className:`grid flex-shrink-0 ${KU[b-1]} gap-px border-b border-line bg-line`,children:[N1(ou,{label:"Items",value:p0(xo,{children:[N1("em",{className:"font-serif font-normal italic text-accent",children:o.sets})," set",o.sets===1?"":"s"," \xB7 ",o.units," item",o.units===1?"":"s"]})}),e.leadTimeValue?N1(ou,{label:"Lead time",value:e.leadTimeValue}):null,g?N1(ou,{label:"Ships to",value:g}):null]}),p0("div",{className:"flex-1 overflow-y-auto [scrollbar-color:var(--site-line)_transparent] [scrollbar-width:thin]",children:[c.length===0?N1(QU,{content:e}):c.map(z=>N1($U,{line:z,tyre:w.get(z.slug),onRemove:()=>l(z.id),onQtyChange:k=>r(z.id,k)},z.id)),u.length>0&&p0("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",style:{background:"color-mix(in oklab, var(--site-surface) 60%, transparent)"},children:[p0("div",{className:"mb-3.5 flex items-center justify-between font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:[N1("span",{children:"You may also need"}),N1("span",{className:"font-display text-[11px] normal-case tracking-[0.08em] text-fg-dim",children:"Buy together, save"})]}),N1("div",{className:"grid grid-cols-2 gap-2 max-[640px]:grid-cols-1",children:u.map(z=>N1(YU,{href:`/bundles/${z.slug}`,title:z.name,sub:XU(z,o.currency,d)},z.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(jC,{})}),e.promises.length>0&&N1("div",{className:"flex flex-wrap justify-center gap-[18px] border-b border-line px-8 pt-[22px] pb-7 font-mono text-[9px] uppercase tracking-[0.24em] text-fg-dim max-[640px]:px-[22px]",children:e.promises.map(z=>N1(JU,{children:z},z))})]}),p0("div",{className:"flex flex-shrink-0 flex-col gap-2 border-t border-line px-8 pt-5 max-[640px]:px-[22px]",children:[N1(x7,{label:`Subtotal \xB7 ${o.sets} set${o.sets===1?"":"s"}`,value:d(o.subtotal,o.currency)}),o.appliedBundles.map(z=>N1(x7,{label:`Bundle \xB7 ${z.name}${z.multiples>1?` \xD7${z.multiples}`:""}`,value:p0("span",{style:{color:"var(--green)"},children:["\u2212 ",d(z.discount,o.currency)]})},z.slug)),o.discount>0&&i?.valid&&N1(x7,{label:`Coupon \xB7 ${i.code}`,value:p0("span",{style:{color:"var(--green)"},children:["\u2212 ",d(o.discount,o.currency)]})}),i?.deferred&&N1(x7,{label:`Coupon \xB7 ${i.code}`,value:FC}),i?.valid&&i.effects?.gift&&N1(x7,{label:`Free gift \xB7 ${i.effects.gift.partNumber}${i.effects.gift.quantity>1?` \xD7${i.effects.gift.quantity}`:""}`,value:N1("span",{style:{color:"var(--green)"},children:"Free"})}),N1(x7,{label:"Shipping",value:o.shippingStatus==="free"?N1("span",{style:{color:"var(--green)"},children:"Free"}):BC(o.shippingStatus)??d(o.shipping,o.currency)}),o.tax&&(o.tax.charged?N1(x7,{label:o.tax.inclusive?`${o.tax.name} included \xB7 ${o.tax.rate}%`:o.tax.name,value:d(o.tax.amount,o.currency)}):o.tax.name?N1(x7,{label:o.tax.name,value:"Calculated at checkout"}):null),p0("div",{className:"mt-1.5 flex items-center justify-between border-t border-line pt-3.5 text-fg",children:[p0("span",{className:"font-display text-[22px] font-medium tracking-[-0.02em] normal-case",children:["Total ",N1("em",{className:"font-serif font-normal italic text-accent",children:"due"})]}),N1("span",{className:"text-right font-display text-[30px] font-medium tracking-[-0.025em] text-fg",children:o.repricing?"\u2026":d(o.grand,o.currency)})]})]}),p0("div",{className:"flex flex-shrink-0 flex-col gap-2.5 px-8 pb-[22px] pt-3.5 max-[640px]:px-[22px]",children:[p0(L1,{href:"/checkout",onClick:s,"aria-disabled":c.length===0,className:["group flex items-center justify-between border px-5 py-[18px] font-mono text-[12px] uppercase tracking-[0.3em] transition-colors",c.length===0?"pointer-events-none cursor-not-allowed border-line bg-surface text-fg-dim":"border-btn bg-btn text-btn-ink hover:border-fg hover:bg-fg"].join(" "),children:["Begin checkout",N1("span",{className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]}),N1("div",{className:"flex items-center justify-between px-1 py-1.5 font-mono text-[10px] uppercase tracking-[0.24em] text-fg-dim",children:N1(L1,{href:"/wheels",onClick:s,className:"text-fg transition-colors hover:text-accent",children:"\u2190 Keep browsing"})})]})]})]}):null}var KU=["grid-cols-1","grid-cols-2","grid-cols-3"];function ou({label:e,value:t}){return p0("div",{className:"flex flex-col gap-[3px] bg-bg px-4 py-3.5",children:[N1("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-fg-dim",children:e}),N1("span",{className:"font-display text-[14px] font-medium tracking-[-0.005em] text-fg",children:t})]})}function $U({line:e,tyre:t,onRemove:a,onQtyChange:s}){let{catalog:c,totals:l}=i4(),r=(e.components??[]).reduce((n,h)=>n+(l.freeUnitsByPartNumber[h.partNumber]??0),0),{currency:o,formatMoney:i}=d0();return p0(xo,{children:[p0("article",{className:"grid grid-cols-[96px_1fr] gap-5 border-b border-line px-8 py-6 transition-colors hover:bg-[color-mix(in_oklab,var(--site-surface)_60%,transparent)] max-[640px]:grid-cols-[78px_1fr] max-[640px]:px-[22px] max-[640px]:py-5",children:[N1(lu,{line:e,catalog:c,tyre:t}),p0("div",{className:"flex min-w-0 flex-col gap-2",children:[p0("div",{className:"flex items-start justify-between gap-3",children:[p0("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-accent",children:["N\xB0 ",e.positionNo," \xB7 ",e.process==="FusionForge\xAE"?p0(xo,{children:["FusionForge",N1(i6,{})]}):e.process]}),N1("span",{className:"whitespace-nowrap font-display text-[16px] font-medium tracking-[-0.015em] text-fg",children:Zm(e,o)===null?n7:i(Zm(e,o),o)})]}),p0("h3",{className:"mt-0.5 font-display text-[22px] font-medium uppercase leading-none tracking-[-0.02em]",children:[e.name.lead,N1("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em] normal-case",children:e.name.accent})]}),e.config.length>0&&p0("div",{className:"mt-1 flex flex-wrap gap-1.5",children:[e.config.map(n=>N1("span",{className:["border px-2 py-1 font-mono text-[9px] uppercase tracking-[0.18em]",n.gold?"border-[color-mix(in_oklab,var(--accent)_45%,var(--site-line))] text-accent":"border-line text-fg-dim"].join(" "),children:n.label},n.label)),r>0&&p0("span",{className:"border border-accent bg-accent px-2 py-1 font-mono text-[9px] uppercase tracking-[0.18em] text-bg",children:[r,"\xD7 free"]})]}),p0("div",{className:"mt-2.5 flex items-center justify-between gap-3",children:[N1(Ka,{value:e.qty,onChange:s,size:"small"}),p0("div",{className:"flex gap-3.5 font-mono text-[10px] uppercase tracking-[0.22em]",children:[N1(L1,{href:e.href??`/wheels/${e.slug}`,className:"text-fg-dim transition-colors hover:text-accent",children:e.href?"View product":"Edit finish"}),N1("button",{type:"button",onClick:a,className:"text-fg-dim transition-colors hover:text-alert",children:"Remove"})]})]})]})]}),e.verifiedFor&&p0("div",{className:"mx-8 -mt-px flex items-start gap-3 border-t-0 px-4 py-3.5 font-display text-[13px] leading-[1.45] text-fg max-[640px]:mx-[22px]",style:{background:"color-mix(in oklab, var(--accent) 8%, transparent)",border:"1px solid color-mix(in oklab, var(--accent) 35%, var(--site-line))",borderTop:"0"},children:[N1("span",{className:"flex-shrink-0 pt-px font-mono text-[10px] uppercase tracking-[0.24em] text-accent",children:"Fits"}),p0("span",{children:["Verified for your ",N1("strong",{className:"font-medium text-accent",children:e.verifiedFor}),". Final torque values shipped with the wheels."]})]})]})}function YU({title:e,sub:t,href:a}){return p0(L1,{href:a,className:"flex items-center justify-between border border-line bg-bg px-3.5 py-3 text-left transition-colors hover:border-accent",children:[p0("span",{className:"flex min-w-0 flex-col gap-[3px]",children:[N1("span",{className:"overflow-hidden text-ellipsis whitespace-nowrap font-display text-[13px] font-medium tracking-[-0.005em] text-fg",children:e}),N1("span",{className:"font-mono text-[9px] uppercase tracking-[0.22em] text-fg-dim",children:t})]}),N1("span",{className:"ml-2 flex h-6 w-6 flex-shrink-0 items-center justify-center font-mono text-[13px] text-accent",style:{borderColor:"color-mix(in oklab, var(--accent) 45%, var(--site-line))",borderWidth:1,borderStyle:"solid"},children:"+"})]})}function XU(e,t,a){let s=e.savings[t];if(s===void 0)return"Buy together";let c=a(s,t);return e.savingIsFrom?`Save from ${c}`:`Save ${c}`}function JU({children:e}){return N1("span",{className:"inline-flex items-center gap-1.5 before:text-[6px] before:text-accent before:content-['\u25CF']",children:e})}function x7({label:e,value:t}){return p0("div",{className:"flex items-center justify-between font-mono text-[11px] uppercase tracking-[0.18em] text-fg-dim",children:[N1("span",{children:e}),N1("strong",{className:"font-display text-[14px] font-normal tracking-[-0.005em] normal-case text-fg",children:t})]})}function QU({content:e}){return p0("div",{className:"flex flex-col items-center justify-center gap-3 px-8 py-20 text-center",children:[N1("span",{className:"font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:e.emptyKicker}),N1("p",{className:"font-serif text-[16px] italic leading-[1.5] text-fg-dim",children:e.emptyBody}),p0(L1,{href:"/wheels",className:"mt-3 inline-flex items-center gap-3 border border-line px-5 py-3 font-mono text-[11px] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:["Browse the catalog ",N1("span",{className:"text-accent",children:"\u2192"})]})]})}var ej=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],tj=Object.fromEntries(ej.map(e=>[e.key,e]));function jS(e){return tj[e]}import{Fragment as sj,jsx as H8,jsxs as zo}from"react/jsx-runtime";var aj=Qp(()=>import("./EditorPreviewCheckout-MP7HSXYA.js"),{ssr:!1});function iu(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{surface:a}=kw();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?zo(sj,{children:[H8(aj,{}),H8(KS,{surface:a})]}):H8(wr,{children:zo(Cr,{preview:!0,children:[H8($a,{}),H8(KS,{surface:a})]})})}function KS({surface:e}){let{label:t,href:a}=jS(e);return zo("div",{style:{position:"fixed",bottom:14,left:"50%",transform:"translateX(-50%)",zIndex:2147483e3,display:"flex",alignItems:"center",gap:8,maxWidth:"calc(100% - 24px)",padding:"5px 6px 5px 13px",borderRadius:999,fontSize:12,fontWeight:600,fontFamily:"system-ui, sans-serif",color:"#334155",background:"rgba(255,255,255,0.94)",border:"1px solid rgba(15,23,42,0.12)",boxShadow:"0 6px 24px rgba(15,23,42,0.18)",pointerEvents:"none"},children:[H8("span",{style:{whiteSpace:"nowrap"},children:p("{name} \xB7 preview only",{name:p(t)})}),zo("a",{href:a,target:"_blank",rel:"noopener noreferrer",style:{pointerEvents:"auto",flex:"none",display:"inline-flex",alignItems:"center",gap:5,padding:"4px 11px",borderRadius:999,color:"#fff",background:"#2563eb",textDecoration:"none"},children:[p("Open live"),H8(r6,{name:"external-link",size:13,rounded:!0})]})]})}import{CategoryIcon as Fl1,CheckIcon as yG,ClockIcon as xx,ColumnsIcon as Tl1,DirectionIcon as Pl1,EyeIcon as El1,ListIcon as Vl1,PageIcon as Nl1,PlacementIcon as _l1,ScrollPointIcon as Il1,TriggerIcon as Rl1}from"efficient-easel/icons";import{useContext as oj,useEffect as eL,useRef as wo,useState as Co}from"react";import{Button as ko}from"efficient-shell/ui";var Ya=class extends Error{constructor(a){super("The storefront forms list could not be loaded.");this.cause=a;this.name="FormsUnavailableError"}},yo=null,nu=null,hu=null;function cj(){yo=null,nu=null,hu=null}function $S(e=!1){let t=R3(),a=i2();return(e||!yo||nu===null&&t!==null||hu!==a)&&(nu=t,hu=a,yo=(t?J1.listForms(t,{siteId:a}):Promise.reject(new Ya)).catch(s=>{throw cj(),s instanceof Ya?s:new Ya(s)})),yo}var mu=new Map,lj=9e5,YS=0;function rj(){return YS+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String(YS)}`}function XS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function JS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=rj();return new Promise(s=>{let c=setTimeout(()=>QS(a,{status:"timeout"}),t.timeoutMs??lj);mu.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function QS(e,t){let a=mu.get(e);a&&(mu.delete(e),a(t))}function $m1(e,t){QS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as k2,jsxs as P5}from"react/jsx-runtime";var tL="__create-a-new-form__";function ij({value:e,forms:t,loadFailed:a,emptyLabel:s}){let c=t??[],l=e?c.some(m=>m.slug===e):!0,r=t===null&&!a,o={value:"",label:r?p("Loading\u2026"):a?p("Forms couldn\u2019t be loaded"):s===void 0?p("No form yet"):p(s)},i=e&&!l?[{value:e,label:r||a?e:p("{slug} \u2014 no form with this name",{slug:e})}]:[],n=c.map(m=>({value:m.slug,label:m.is_active?m.title:p("{title} (switched off)",{title:m.title})})),h=r?[]:[{value:tL,label:p("Create a new form")}];return[o,...i,...n,...h]}function nj(e){return e===tL?{action:"create"}:{action:"store",slug:e}}function hj({value:e,pickedId:t,forms:a}){if(!e||!t||a.some(c=>c.slug===e))return null;let s=a.find(c=>c.id===t);return s&&s.slug&&s.slug!==e?s.slug:null}function mj(e){let t=[p("Goes to {place}",{place:p("Storefront \u2192 Forms")})],a=(e.notify_email??"").trim();return a&&t.push(p("Emails a copy to {email}",{email:a})),e.mailing_list_name&&t.push(e.subscribe_mode==="checkbox"?p("Joins the \u201C{audience}\u201D audience, but only when the consent box is ticked",{audience:e.mailing_list_name}):p("Joins the \u201C{audience}\u201D audience",{audience:e.mailing_list_name})),e.kind==="account_signup"&&t.push(e.signup_customer_type==="importer"?p("Creates a wholesale account"):p("Creates a retail account")),t}function pu({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=C4(),l=oj(Al),r=l?l.capabilities.hasForms:!0,[o,i]=Co(null),[n,h]=Co(!1),[m,u]=Co(!1),[d,v]=Co(!1),g=wo(!0),b=wo(e);b.current=e;let f=wo(t);f.current=t;let w=wo(null),z=(E=!1)=>$S(E).then(F=>{if(g.current){i(F),h(!1);let _=hj({value:b.current,pickedId:w.current,forms:F});_&&f.current(_)}return F},()=>(g.current&&h(!0),[]));eL(()=>(g.current=!0,r&&z(),()=>{g.current=!1}),[r]),eL(()=>r?co(()=>{z(!0)}):void 0,[r]);let S=e?(o??[]).find(E=>E.slug===e)??null:null;S?w.current=S.id:e||(w.current=null);let H=!!e&&!S&&o!==null&&!n,I=ij({value:e,forms:o,loadFailed:n,emptyLabel:s}),P=async()=>{u(!0),v(!1);try{let E=await JS(c,{mode:"create"}),F=await z(!0);if(!g.current)return;if(E.status==="timeout"){v(!0);return}if(E.status!=="saved")return;let{form:_}=E;_.slug!==b.current&&f.current(_.slug),F.some(Z=>Z.id===_.id)||z(!0)}finally{g.current&&u(!1)}},D=E=>{let F=nj(E);F.action==="create"?P():(v(!1),t(F.slug))};return r?P5("div",{className:"sf-formpicker",children:[k2(O9,{label:a,options:I,fallback:"",value:e??"",onChange:D,placeholder:p("Search forms\u2026")}),d&&k2("p",{className:"sf-formsummary-warn",children:p("That didn\u2019t come back \u2014 pick the form from the list, or try again.")}),S?P5("div",{className:"sf-blogsource sf-formsummary",children:[P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p3("{n} field","{n} fields",S.fields.length)}),S.fields.length?k2("ol",{className:"sf-formsummary-fields",children:S.fields.map((E,F)=>k2("li",{children:E.label},E.key||`${E.label}-${F}`))}):k2("p",{className:"es-field-hint sf-hint-keep",children:p("This form has no fields yet, so there is nothing for a visitor to fill in.")})]}),P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p("Where the answers go")}),k2("ul",{className:"sf-formsummary-fields",children:mj(S).map(E=>k2("li",{children:E},E))})]}),!S.is_active&&k2("p",{className:"sf-formsummary-warn",children:p("This form is switched off, so it won\u2019t appear on the published page. Turn it back on in {place}.",{place:p("Storefront \u2192 Forms")})}),P5("div",{className:"sf-formsummary-actions",children:[k2(ko,{variant:"secondary",size:"sm",onClick:()=>XS(c,S.id),children:p("Edit form \u270E")}),k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{P()},children:p("New form +")})]}),k2("p",{className:"es-field-hint sf-hint-keep",children:p("The questions, the button text and the thank-you message all come from {place}. Edit them there \u2014 this section updates to match.",{place:p("Storefront \u2192 Forms")})})]}):P5("div",{className:"sf-blogsource sf-formsummary",children:[n?P5("p",{className:"es-field-hint sf-hint-keep",children:[p("This website\u2019s forms couldn\u2019t be loaded, so there is nothing to choose from yet."),e?` ${p("This section still points at \u201C{slug}\u201D, and that is unchanged.",{slug:e})}`:""]}):H&&k2("p",{className:"sf-formsummary-warn",children:p("This section points at \u201C{slug}\u201D, and this website has no form with that name. Pick one from the list above, or leave it \u2014 nothing has been changed.",{slug:e??""})}),P5("div",{className:"sf-formsummary-actions",children:[n&&k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{z(!0)},children:p("Try again")}),k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{P()},children:p("New form +")})]}),!n&&k2("p",{className:"es-field-hint sf-hint-keep",children:p("Pick a form to show here, or build a new one. Forms are made once in {place} and can be shown on any number of pages.",{place:p("Storefront \u2192 Forms")})})]})]}):k2("div",{className:"sf-formpicker",children:k2("div",{className:"sf-blogsource sf-formsummary",children:P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p(a)}),P5("p",{className:"es-field-hint sf-hint-keep",children:[p("Forms aren\u2019t available in this editor, so there is nothing to choose here."),e?` ${p("This section still points at \u201C{slug}\u201D, and that is unchanged.",{slug:e})}`:""]})]})})})}import{jsx as pj}from"react/jsx-runtime";function E5(e,t){return{type:"custom",render:({value:a,onChange:s})=>pj(pu,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var Mo=null,aL=null;function uj(e,t){Mo=e,aL=t}function up1(e){uj(e,null)}function sL(){return Mo}function M2(){return aL==="dynamic"||Mo===dp}function cL(e){return Zr(Mo??"",e)??"alloy-wheel"}import{createContext as dj,useContext as gj}from"react";import{jsx as vj}from"react/jsx-runtime";var lL=dj(null);function rL({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return vj(lL.Provider,{value:a,children:t})}function oL(){return gj(lL)}import{createContext as fj,useContext as bj}from"react";import{jsx as xj}from"react/jsx-runtime";var iL=fj("alloy-wheel");function nL({kind:e,children:t}){return xj(iL.Provider,{value:e??"alloy-wheel",children:t})}function hL(){return bj(iL)}import{createContext as mL,useContext as So}from"react";import{jsx as Cj}from"react/jsx-runtime";function zj(e){let t=e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").trim().toLowerCase();return t?t[0].toUpperCase()+t.slice(1):e}var yj=/^\d{4}-\d{2}-\d{2}$/;function pL(e){return e?e.schema?.length?e.schema.filter(t=>typeof t?.key=="string"&&t.key in e.fields):Object.entries(e.fields).flatMap(([t,a])=>{let s=Array.isArray(a)?"images":typeof a=="string"?yj.test(a)?"date":"text":null;return s?[{key:t,label:zj(t),kind:s}]:[]}):[]}function Lo(e,{firstField:t=!1}={}){if(!e)return[];let a=pL(e).filter(s=>s.kind==="images");return(t?a.slice(0,1):a).flatMap(s=>{let c=e.fields[s.key];return Array.isArray(c)?c.flatMap(l=>{let r=l?.url;if(typeof r!="string"||!r)return[];let o=l.alt;return[{url:r,alt:typeof o=="string"?o:""}]}):[]})}function wj(e){let t=new Date(`${e}T00:00:00Z`);return Number.isNaN(t.getTime())?e:t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric",timeZone:"UTC"})}function uL(e){return e?pL(e).flatMap(t=>{if(t.kind!=="text"&&t.kind!=="date")return[];let a=e.fields[t.key];return typeof a!="string"||!a.trim()?[]:[{label:t.label,value:t.kind==="date"?wj(a):a}]}):[]}var z7="product",uu=mL(null);function du(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||z7}function Ao(e){let t=e?.appState?.data?.root;return du(t?.props)!==z7}var dL=mL(z7);function gL({type:e,children:t}){return Cj(dL.Provider,{value:e,children:t})}function Ho(e){let t=So(uu),a=So(dL);return t?t.type!==z7:e&&a!==z7}var Fo={type:"sample",key:"sample",get title(){return p("Record title")},get fields(){return{first:p("A detail of this record"),second:p("Another detail"),third:p("A third")}},value:void 0,get schema(){return[{key:"first",label:p("First detail"),kind:"text"},{key:"second",label:p("Second detail"),kind:"text"},{key:"third",label:p("Third detail"),kind:"text"}]}},vL=4;function To(){return So(uu)}function fL(e){let t=So(uu);return t!==null&&t.type===e?t:null}import{createContext as Mj,useContext as Sj}from"react";var gu="heroBullets",Xa="\xB7",Ja={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function bL(e){return e.detail?`${e.label} ${Xa} ${e.detail}`:e.label}function kj(e){let t=e.trim();if(!t)return null;let a=t.indexOf(Xa);return a<0?{label:t,detail:""}:{label:t.slice(0,a).trim(),detail:t.slice(a+Xa.length).trim()}}function xL(e){let t=(e??{})[gu];return Array.isArray(t)?{bullets:t.map(s=>kj(typeof s=="string"?s:Fy(s?.text,""))).filter(s=>s!==null)}:Ja}import{jsx as Lj}from"react/jsx-runtime";var zL=Mj(Ja);function yL({content:e,children:t}){return Lj(zL.Provider,{value:e,children:t})}function wL(){return Sj(zL)}var u2={text:"Button label",href:"#"},A={eyebrow:"Eyebrow",heading:"Main heading",accent:"Highlight line",body:"Add a sentence or two of supporting copy.",button:"Button label",link:"#",sectionHeading:"Section heading",slideName:"Slide name",boxName:"Box name",headingAccent:"Section heading *here.*",sectionNumber:"Section number",imageCaption:"Image caption",bookingConfirmation:"Thanks \u2014 we'll email you to confirm.",imageMeta:"Image meta",label:"Label",value:"Value",viewAll:"View all",date:"Month DD, YYYY",category:"Category"};var s3={Series:"transparent",StatsParagraph:"transparent",TimelineTrack:Wy,Stats:void 0};import{jsx as d6}from"react/jsx-runtime";import{jsx as Hj}from"react/jsx-runtime";var Po="sf-card",E2={min:0,max:90,step:5,fallback:0,unit:"%"},y7=[{label:"Even",value:"even"},{label:"From the bottom",value:"bottom"}],Aj="68%",q3={desktop:20,phone:20,side:40,sidePhone:24},CL="sf-box-sides",kL={min:0,max:200,step:10};function We(e){return typeof e=="string"&&e.trim()!==""}function Eo(e,t){let a=typeof e=="number"?e:Number.parseFloat(String(e??""));if(!Number.isFinite(a)||a<=0)return null;let s=(Math.min(E2.max,Math.max(E2.min,a))/100).toFixed(2);return t!=="bottom"?{background:`rgba(0,0,0,${s})`}:{background:`linear-gradient(0deg, rgba(0,0,0,${s}) 0%, rgba(0,0,0,0) ${Aj})`}}function Vo(e,t){let a={"top-left":["start","start"],"top-center":["center","start"],"top-right":["end","start"],left:["start","center"],center:["center","center"],right:["end","center"],"bottom-left":["start","end"],"bottom-center":["center","end"],"bottom-right":["end","end"]},[s,c]=a[e]??a.center,[l,r]=t==="column"?[c,s]:[s,c],o={start:"justify-start",center:"justify-center",end:"justify-end"},i={start:"items-start",center:"items-center",end:"items-end"};return`${o[l]} ${i[r]}`}var No={ParagraphsA:{top:60,bottom:80},StatsParagraph:{top:120,bottom:120},Timeline:{top:120,bottom:120},Footprint:{top:120,bottom:120},TimelineTrack:{top:120,bottom:120},TitleWithButtons:{top:140,bottom:140},ProcessSteps:{top:120,bottom:120},DetailRows:{top:100,bottom:100}},ML=new Set(Object.keys(No)),Fj=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),SL=new Set(["ProductGrid"]);function vu(e,t){let a=e.render;e.render=s=>{if(t?.(s))return a(s);let c=R9(s.sectionPaddingTop,s.sectionPaddingBottom,s.sectionPaddingTopPhone,s.sectionPaddingBottomPhone),l=a(s);return c?Hj("div",{className:c.className,style:c.style,children:l}):l}}var LL={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!Fj.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){ML.has(t)||SL.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(ML.has(t)){let a=e.render,s=No[t];e.render=c=>{let l=xy(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(SL.has(t)){vu(e);return}vu(e,t==="Flex"?a=>We(a.bgImage):void 0)}},Tj=["Heading","Text"],AL={name:"blockPadding",applies:(e,t,a)=>Tj.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){vu(e)}};import{jsx as u6,Fragment as Pj,jsxs as Ej}from"react/jsx-runtime";import{useEasel as PL}from"efficient-easel/easel";import{LayersIcon as Vj}from"efficient-easel/icons";import{SettingsDrill as Nj,SettingsField as _j}from"efficient-easel/panel";import{default as HL}from"efficient-easel/screen/components/AddBlockRow";import{default as FL}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as qp1,useSlotChildActions as TL}from"efficient-easel/screen/components/SlotChildActionsContext";function Ij({parent:e,parentType:t,label:a,rowName:s,onSelectChild:c,onAddChild:l,nestDepth:r=0}){let o=Aa(t,r);if(!o)return null;let{slot:i,choices:n,spec:h}=o,m=String(e.props.id),u=`${m}:${i}`,d=Array.isArray(e.props[i])?e.props[i]:[],v=h?.addBlocked?.(d)??null,g=h?.notice?.(d)??null,b=Ej(Pj,{children:[g?u6("p",{className:"sf-note",children:g}):null,d.map((f,w)=>u6(Nj,{name:s(f),onOpen:()=>c(u,w,String(f.props.id),t)},String(f.props.id??`${u}-${w}`))),n?u6(HL,{choices:n,onPick:f=>l(m,i,f,d.length,t)}):h.fixed?null:u6(FL,{label:h.addLabel,blocked:v,onAdd:()=>l(m,i,h.childType,d.length,t)})]});return u6("div",{className:"sf-slot-rows",children:a?u6(_j,{label:p(a),icon:u6(Vj,{}),value:String(d.length),children:b}):b})}function Rj(e,t){return Aa(e)?.spec?.notice?.(t)??null}function EL({parentType:e}){let{selectedItem:t}=PL(l=>l);if(!t||t.type!==e)return null;let a=Aa(e)?.slot,s=a&&Array.isArray(t.props[a])?t.props[a]:[],c=Rj(e,s);return c?u6("p",{className:"sf-note",children:c}):null}function Bj(e,t){return Aa(t)?.source==="footer"?e.blockRowName:e.childRowName}function VL({parentType:e,label:t}){let{appState:a,selectedItem:s}=PL(r=>r),c=TL();if(!c||!s||s.type!==e)return null;let l=e===oz?il(a?.data,String(s.props.id)):0;return u6(Ij,{parent:s,parentType:e,label:t,rowName:Bj(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var NL="grayscale(1) contrast(1.03)",_L="Black and white";function Zj(e){return e===!0?{filter:NL}:{}}function Dj(e){let{filter:t}=Zj(e);return t?{style:{filter:t}}:{}}var Qa="sf-photo-grayscale",Oj=`@media (hover:hover){.${Qa}{filter:${NL};transition:filter 160ms ease}.${Qa}:hover{filter:none}}@media (hover:hover) and (prefers-reduced-motion:reduce){.${Qa}{transition:none}}`;function Ue(e,t){return typeof e=="boolean"?e?Dj(!0):{}:t===!0?{className:Qa}:{}}function IL(e){return e===!0?{[Qa]:Oj}:{}}import{AlignLeftIcon as Wj,BlackAndWhiteIcon as Uj,ContrastIcon as jj,HeightIcon as Kj,TypeIcon as $j}from"efficient-easel/icons";var Gj=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],qj=new Set(Gj);function RL(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(qj.has(t[a]))return t[a];return null}var g6=e=>Q2(e,s1("Height",d6(Kj,{}),ie.min,ie.max,ie.step,ie.fallback,ie.unit)),H4={ctaText:T("Button",u2.text),ctaHref:H1("Button link")},V5=()=>v1("Alignment",d6(Wj,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),_o=()=>v1("Tone",d6(jj,{}),[{label:"Default",value:"default"},{label:"Muted",value:"dim"}],"default"),u3=e=>x5({...No[e],keys:{top:"padTop",bottom:"padBottom"},group:!1}),N5=(e,t)=>({type:"custom",render:()=>d6(VL,{parentType:e,label:t})}),Io=e=>({type:"custom",render:()=>d6(EL,{parentType:e})});function Yj(e){let{photographyGrayscale:t}=I3();return l1(_L,t===!0,d6(Uj,{})).render(e)}function je(){return{type:"custom",render:e=>d6(Yj,{...e})}}var U1=Object.keys(z5("full"));function Ke(e){let t=RL(e);return t?d6(c4,{noun:t}):d6($j,{})}import{createContext as Xj,useContext as Jj}from"react";import{jsx as w7,jsxs as fu}from"react/jsx-runtime";function bu(e){return A9(e)??void 0}var xu=Xj({}),BL=3;function zu({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=Jj(xu),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",u=bu(c),d=g=>h?{[b8]:g}:{},v=g=>cr(n?.[x8(g)]?.role,Lw[g],pl);return fu(L1,{href:s||"#",className:`sf-card group relative block w-full min-w-0 overflow-hidden bg-surface-2${m}`,children:[w7("div",{className:"relative z-0 aspect-[4/5] transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:scale-[1.04]",children:w7(k0,{label:l||"collection.jpg",src:u})}),w7("div",{className:"pointer-events-none absolute inset-0 z-[1] [background:rgba(0,0,0,0.4)] group-hover:[background:rgba(0,0,0,0.3)] max-[800px]:hidden",style:{transition:"none"}}),fu("div",{className:"absolute inset-x-8 bottom-8 z-[2] flex flex-col gap-2.5 text-overlay-fg max-[800px]:relative max-[800px]:inset-auto max-[800px]:p-6 max-[800px]:gap-3 max-[800px]:text-fg",children:[e&&w7("span",{...d("tag"),style:v("tag"),className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.25em] opacity-70",children:M(e)}),t&&w7("h3",{...d("name"),style:v("name"),className:"font-heading2 text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))] font-medium leading-none tracking-[-0.03em] max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",children:typeof t=="string"?Y(t,!1):t}),a&&z0(a).map((g,b)=>w7("p",{...d("body"),style:v("body"),className:"max-w-[420px] text-[length:var(--size-body,14px)] leading-[1.5] opacity-80",children:M(g)},b)),o&&r&&w7("span",{...d("price"),style:v("price"),className:"font-mono text-[length:var(--size-label,15px)] tracking-[0.05em] text-accent",children:M(r)}),fu("span",{...d("link"),style:v("link"),className:"mt-2 inline-flex items-center gap-2.5 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em]",children:["Explore",w7("span",{className:"transition-transform group-hover:translate-x-[3px]","aria-hidden":!0,children:"\u2192"})]})]})]})}import{createContext as mK,useCallback as pK,useContext as uK,useEffect as dK,useRef as gK,useState as Cu}from"react";import{useState as Qj}from"react";function Ro(e){switch(e){case"tall":return"aspect-[3/4]";case"wide":return"aspect-[2/1]";case"landscape":return"aspect-[4/3]";case"portrait":return"aspect-[4/5]";case"auto":return"";default:return"aspect-square"}}function ZL(e){return e==="below"}import{jsx as K4,jsxs as $e}from"react/jsx-runtime";function yu({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=Qj(!1),h=ZL(o),m=$e("div",{className:["sf-card group relative overflow-hidden bg-surface-2",Ro(r),t?"max-[800px]:hidden":""].join(" "),children:[$e("div",{className:["absolute inset-0 z-[1] flex items-center justify-center transition-[transform,filter,opacity] duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)]",s?"scale-[1.06] opacity-0 [filter:brightness(0.5)]":"group-hover:scale-[1.06] group-hover:opacity-0 group-hover:[filter:brightness(0.5)]"].join(" "),children:[K4(k0,{label:e.imageLabel,src:e.imageSrc}),K4("div",{className:"absolute inset-0",style:{background:"rgba(0,0,0,0.35)"}})]}),K4("div",{className:["absolute inset-0 z-[1] flex items-center justify-center transition-[transform,filter,opacity] duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)]",s?"opacity-100 scale-[1.06] [filter:brightness(0.5)]":"opacity-0 group-hover:scale-[1.06] group-hover:opacity-100 group-hover:[filter:brightness(0.5)]"].join(" "),style:{background:"var(--site-surface)"},children:e.detailSrc&&K4(_3,{src:e.detailSrc,alt:"",fill:!0,sizes:"(max-width: 800px) 100vw, (max-width: 1500px) 33vw, 25vw",loading:"lazy",className:"absolute inset-0 z-[3] object-cover",style:{display:i?"none":"block"},onError:()=>n(!0)})}),c!=null&&l!=null&&$e("span",{className:"pointer-events-none absolute top-3 right-3 z-[3] font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.24em] max-[800px]:top-2.5 max-[800px]:right-2.5",style:{color:"rgba(245,241,232,0.7)"},children:[String(c).padStart(2,"0")," / ",String(l).padStart(2,"0")]}),e.process&&K4("span",{className:["pointer-events-none absolute top-3 left-3 z-[3] inline-block max-w-[60%] truncate font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.24em] text-accent max-[800px]:top-2.5 max-[800px]:left-2.5","transition-opacity duration-300 ease-out",a||s?"opacity-100":"opacity-0 group-hover:opacity-100 max-[800px]:opacity-100"].join(" "),children:e0(e.process)}),$e("div",{className:["absolute inset-0 z-[2] flex flex-col justify-end gap-1 p-6","transition-[opacity,transform] duration-300 ease-out",a||s?"opacity-100 translate-y-0":"opacity-0 translate-y-2 group-hover:opacity-100 group-hover:translate-y-0 max-[800px]:opacity-100 max-[800px]:translate-y-0","max-[800px]:p-3.5"].join(" "),style:{color:"var(--overlay-fg)",background:"linear-gradient(180deg, transparent 40%, rgba(10,10,10,.85) 100%)"},children:[e.car&&K4("div",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent max-[800px]:text-[length:var(--size-label,11px)] max-[800px]:tracking-[0.15em]",children:e.car}),e.wheel&&K4("div",{className:"font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-[1.05] tracking-[-0.02em] max-[800px]:text-[length:var(--size-body,16px)]",children:e.wheel}),e.finish&&K4("div",{className:"mt-1.5 flex gap-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.12em]",style:{color:"rgba(245,241,232,0.7)"},children:K4("span",{children:e0(e.finish)})})]})]});return h?$e("div",{className:t?"max-[800px]:hidden":"",children:[m,$e("div",{className:"bg-surface px-3.5 pt-3 pb-3.5",children:[e.wheel&&K4("div",{className:"font-display text-[length:var(--size-body,15px)] font-medium leading-[1.25] tracking-[-0.01em] text-fg",children:e.wheel}),(e.finish||e.car)&&K4("div",{className:"mt-0.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:e0(e.finish||e.car)})]})]}):m}import{createContext as eK,useContext as tK,useEffect as aK,useLayoutEffect as sK,useRef as wu,useState as cK}from"react";import{createPortal as lK}from"react-dom";import{Fragment as nK,jsx as es,jsxs as hK}from"react/jsx-runtime";var rK=".sf-themed-content",DL="sf-section-accent";function oK(e,t){let a={},s=!1,c=[];for(let l=e;l&&l!==t;l=l.parentElement)c.push(l);for(let l of c.reverse()){l.classList.contains(DL)&&(s=!0);let r=l.style;if(r)for(let o=0;o<r.length;o+=1){let i=r.item(o);i.startsWith("--")&&(a[i]=r.getPropertyValue(i))}}return{className:s?`contents ${DL}`:"contents",style:a}}function iK(e){let t=e.querySelectorAll("a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex='-1'])");return Array.from(t).filter(a=>!a.hasAttribute("hidden")&&a.getAttribute("aria-hidden")!=="true")}var OL=eK(()=>{});function F8({open:e,onClose:t,label:a,onPrev:s,onNext:c,className:l="",style:r,children:o}){let i=wu(null),n=wu(null),[h,m]=cK(null);sK(()=>{if(!e){m(null);return}let v=i.current;if(!v)return;let g=v.closest(rK)??v.ownerDocument.body;m({host:g,theme:oK(v,g)})},[e]);let u=wu({onClose:t,onPrev:s,onNext:c});u.current={onClose:t,onPrev:s,onNext:c};let d=e&&h!==null;return aK(()=>{if(!d)return;let v=n.current,g=v?.ownerDocument??document,b=g.activeElement;v?.focus();let f=k=>{if(k.key==="Escape")u.current.onClose();else if(k.key==="ArrowLeft")u.current.onPrev?.();else if(k.key==="ArrowRight")u.current.onNext?.();else if(k.key==="Tab"&&v){let S=iK(v);if(S.length===0){k.preventDefault(),v.focus();return}let H=S[0],I=S[S.length-1],P=g.activeElement,D=!!P&&v.contains(P)&&P!==v;if(k.shiftKey&&(!D||P===H))k.preventDefault(),I.focus();else if(!k.shiftKey&&(!D||P===I))k.preventDefault(),H.focus();else{k.preventDefault();let E=S.indexOf(P);S[k.shiftKey?E-1:E+1]?.focus()}}},w=g.defaultView??window;w.addEventListener("keydown",f);let z=g.body.style.overflow;return g.body.style.overflow="hidden",()=>{w.removeEventListener("keydown",f),g.body.style.overflow=z,b&&b.isConnected&&b.focus()}},[d]),e?hK(nK,{children:[es("span",{ref:i,hidden:!0}),h&&lK(es("div",{className:h.theme.className,style:h.theme.style,children:es("div",{ref:n,role:"dialog","aria-modal":"true","aria-label":a,tabIndex:-1,onClick:t,className:`fixed inset-0 z-(--sf-layer-lightbox) outline-none ${l}`,style:r,children:es(OL.Provider,{value:t,children:o})})}),h.host)]}):null}function Ye({className:e="absolute right-5 top-5 flex h-10 w-10 cursor-pointer items-center justify-center border border-fg-dim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",style:t,label:a="Close",children:s="\xD7"}){let c=tK(OL);return es("button",{type:"button","aria-label":a,onClick:l=>{l.stopPropagation(),c()},className:e,style:t,children:s})}import{Fragment as Xe,jsx as Q0,jsxs as d3}from"react/jsx-runtime";var ts=mK({}),as="data-gallery-grid",ku="data-gallery-tile";function vK(e,t){let[a,s]=Cu(null);return dK(()=>{let c=e.current,l=c?.closest(`[${as}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${ku}]`)),n=i.indexOf(c),h=n>=0?{index:n+1,total:i.length}:null;s(m=>m?.index===h?.index&&m?.total===h?.total?m:h)};if(r(),!t)return;let o=new MutationObserver(r);return o.observe(l,{childList:!0,subtree:!0}),()=>o.disconnect()},[e,t]),a}var GL=[{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"}];function fK(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function bK(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=fK(e.name,"gallery-item");return{car:e.eyebrow??"",wheel:e.name??"",process:e.process??"",finish:e.meta??"",imageLabel:`${c}.jpg`,detailLabel:`${c}-detail.jpg`,imageSrc:a||void 0,detailSrc:t[0]||a||void 0,photos:s,href:e.href}}function ss({editing:e=!1,previewHover:t,ratio:a,captionPlace:s,...c}){let{galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o}=uK(ts),i=bK(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=gK(null),m=pK(H=>{h.current=H},[]),u=vK(h,e),d=e&&(!!t||!!o),[v,g]=Cu(!1),[b,f]=Cu(0),w=()=>f(H=>(H-1+n.length)%n.length),z=()=>f(H=>(H+1)%n.length),k=n[b]??i.imageSrc??"",S=Q0(yu,{build:i,forceHover:d,index:u?.index,total:u?.total,ratio:a,captionPlace:s});return d3(Xe,{children:[e?Q0("div",{ref:m,[ku]:"",className:"block w-full text-left",children:S}):Q0("button",{ref:m,[ku]:"",type:"button","aria-label":`Open ${i.car||"build"} on ${i.wheel||"wheel"}`,onClick:()=>{f(0),g(!0)},className:"block w-full cursor-pointer text-left focus:outline-none focus-visible:outline focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2",children:S}),Q0(F8,{open:v,onClose:()=>g(!1),label:`${i.car} on ${i.wheel}`,onPrev:n.length>1?w:void 0,onNext:n.length>1?z:void 0,className:"flex items-center justify-center p-6 backdrop-blur-[8px] max-[700px]:p-3",style:{background:"color-mix(in oklab, var(--bg) 78%, transparent)"},children:d3("div",{onClick:H=>H.stopPropagation(),className:"relative grid w-[min(1800px,100%)] max-h-[calc(100vh-48px)] grid-cols-[1.4fr_1fr] overflow-hidden border border-line bg-bg max-[1100px]:grid-cols-1 max-[1100px]:overflow-auto",style:{boxShadow:"0 60px 120px -20px rgba(0,0,0,0.7)"},children:[Q0(Ye,{label:"Close popup",className:"absolute right-[24px] top-[24px] z-[5] flex h-[56px] w-[56px] items-center justify-center border border-line font-mono text-[length:var(--size-label,21px)] text-fg-dim transition-colors hover:border-accent hover:text-fg",style:{background:"color-mix(in oklab, var(--bg) 70%, transparent)"},children:"\u2715"}),d3("div",{className:"relative flex min-h-[690px] items-center justify-center overflow-hidden bg-surface-2 max-[1100px]:min-h-[450px]",children:[k&&Q0("img",{src:k,alt:`${i.car} \u2014 ${b+1} of ${n.length}`,className:"block h-full max-h-[88vh] w-full object-cover"},k),n.length>1&&d3(Xe,{children:[Q0("button",{type:"button","aria-label":"Previous photo",onClick:w,className:"absolute left-4 top-1/2 flex h-16 w-16 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 font-mono text-[length:var(--size-label,24px)] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25C1"}),Q0("button",{type:"button","aria-label":"Next photo",onClick:z,className:"absolute right-4 top-1/2 flex h-16 w-16 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 font-mono text-[length:var(--size-label,24px)] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25B7"}),d3("span",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 border border-fg-dim/30 bg-overlay-scrim/50 px-4 py-1.5 font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.22em] text-fg-dim backdrop-blur-[4px]",children:[b+1," / ",n.length]})]})]}),d3("div",{className:"flex flex-col gap-[30px] px-[60px] py-[72px] max-[1100px]:px-9 max-[1100px]:py-[54px]",children:[i.process&&Q0("span",{className:"font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.3em] text-accent",children:M(i.process)}),i.wheel&&Q0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(42px,4.5vw,60px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.025em]",children:Y(i.wheel,!1)}),i.car&&d3("div",{className:"font-heading3 text-[length:var(--size-headingSmall,27px)] leading-[1.4] text-fg",children:["on ",Q0("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em]",children:M(i.car,!0)})]}),d3("dl",{className:"mt-3 grid grid-cols-[auto_1fr] gap-x-7 gap-y-[18px] border-y border-line py-[30px] font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.22em]",children:[i.wheel&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Wheel"}),Q0("dd",{className:"text-fg",children:M(i.wheel)})]}),i.process&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Process"}),Q0("dd",{className:"text-fg",children:M(i.process)})]}),i.finish&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Finish"}),Q0("dd",{className:"text-fg",children:M(i.finish)})]}),i.car&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Vehicle"}),Q0("dd",{className:"text-fg",children:M(i.car)})]})]}),d3("div",{className:"mt-auto flex flex-col gap-3.5 pt-6",children:[d3(L1,{href:i.href||"/wheels",onClick:()=>g(!1),className:"group flex items-center justify-between gap-6 border border-btn bg-btn px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:border-fg hover:bg-fg",children:[Q0("span",{children:"View product"}),Q0("span",{className:"transition-transform group-hover:translate-x-[6px]",children:"\u2192"})]}),d3(L1,{href:l,onClick:()=>g(!1),className:"flex items-center justify-between gap-6 border border-line px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:[Q0("span",{children:"See more builds"}),Q0("span",{children:"\u2192"})]}),d3(L1,{href:r,onClick:()=>g(!1),className:"flex items-center justify-between gap-6 border border-line px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:[Q0("span",{children:"Submit your build"}),Q0("span",{children:"\u2192"})]})]})]})]})})]})}import{createContext as wK,useContext as CK,useEffect as Bo,useId as kK,useMemo as MK,useState as V2}from"react";var xK=14,zK=3;function Mu(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function yK(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),Mu(a)}async function qL(e,t,a={}){let s=a.days??xK,c=a.read??y8.getAvailability,l=0,r=0;for(let o=0;o<s;o++){if(a.signal?.aborted)return{outcome:"unreadable"};let i=yK(t,o);try{let n=await c(e,i);if(l=0,r++,n.slots.length>0)return{outcome:"found",date:i,availability:n}}catch{if(l++,l>=zK)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as AK}from"react/jsx-runtime";var WL=wK(null);function C7(){let e=CK(WL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Su=[{id:"example-1",name:"Example service",durationMinutes:45,price:"80.00",description:"What this appointment includes, in a sentence."},{id:"example-2",name:"Second example",durationMinutes:30,price:"0",description:""}];function SK(e){return{timezone:"UTC",slots:[`${e}T09:00:00.000Z`,`${e}T10:30:00.000Z`,`${e}T13:00:00.000Z`].map(t=>({start:t}))}}var Lu={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function LK(e,t){return e&&t?.length===0}function UL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=kK(),c=MK(()=>Mu(new Date),[]),[l,r]=V2(),[o,i]=V2(""),[n,h]=V2(""),[m,u]=V2(c),[d,v]=V2(c),[g,b]=V2(!1),[f,w]=V2(null),[z,k]=V2(),[S,H]=V2(""),[I,P]=V2(""),[D,E]=V2(""),[F,_]=V2(""),[Z,G]=V2(""),[V,j]=V2(()=>Om()),[N,Q]=V2(null),[W,U]=V2(!1),[i1,y1]=V2(!1),[K,c1]=V2(null),[b1,$]=V2("");Bo(()=>{$(Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC")},[]),Bo(()=>{let c0=!1;return y8.listServices().then(l0=>{c0||(r(l0.results),i(l0.currency),h(X1=>X1||l0.results[0]?.id||""))}).catch(()=>{c0||r([])}),()=>{c0=!0}},[]),Bo(()=>{if(g||!n)return;let c0={aborted:!1};return H(""),k(void 0),c1(null),w(null),U(!0),qL(n,c,{signal:c0}).then(l0=>{if(!c0.aborted){if(l0.outcome==="found"){u(l0.date),v(l0.date),k(l0.availability);return}w(l0.outcome==="noneInWindow"?`No times are available in the next ${l0.days} days.`:"We couldn't load available times. Please try again.")}}).finally(()=>{c0.aborted||U(!1)}),()=>{c0.aborted=!0}},[g,n,c]),Bo(()=>{if(!g||!n||!m)return;let c0=!1;return H(""),k(void 0),c1(null),w(null),U(!0),y8.getAvailability(n,m).then(l0=>{c0||(k(l0),l0.slots.length===0&&w("No times are available on this date."))}).catch(()=>{c0||w("We couldn't load available times. Please try again.")}).finally(()=>{c0||U(!1)}),()=>{c0=!0}},[m,g,n]);let u1=l?.find(c0=>c0.id===n),x1=u1?.depositAmountDue!=null,X0=!!(!e&&!i1&&u1&&S&&I.trim()&&D.trim()&&!x1);async function o0(c0){if(c0.preventDefault(),!(!X0||!u1)){y1(!0),c1(null);try{let l0=await y8.create({serviceId:u1.id,start:S,customer:{name:I.trim(),email:D.trim(),phone:F.trim()},notes:Z.trim(),idempotencyKey:V,customerTimezone:b1});Q(l0),j(Om())}catch(l0){c1(l0 instanceof W4&&l0.status===409?"That time was just booked. Choose another available time.":"Your appointment wasn't submitted. Please check your details and try again."),l0 instanceof W4&&l0.status===409&&(H(""),y8.getAvailability(u1.id,m).then(k).catch(()=>{}))}finally{y1(!1)}}}let I1=LK(e,l);return AK(WL.Provider,{value:{fieldPrefix:s,editing:e,services:I1?Su:l,currency:I1?"AUD":o,serviceId:I1?Su[0].id:n,setServiceId:h,service:I1?Su[0]:u1,requiresPayment:I1?!1:x1,date:m,earliestDate:d,setDate:u,setDateTouched:b,availability:I1?SK(m):z,loadingSlots:I1?!1:W,noSlotsMessage:f,selectedStart:I1?`${m}T09:00:00.000Z`:S,setSelectedStart:H,customerTimezone:b1,name:I,setName:P,email:D,setEmail:E,phone:F,setPhone:_,notes:Z,setNotes:G,confirmation:N??(t?Lu:null),submitting:i1,error:K,canSubmit:I1?!1:X0,handleSubmit:o0,sample:!!I1},children:a})}import{jsx as Zo,Fragment as jL,jsxs as KL}from"react/jsx-runtime";var HK="sf-button group inline-flex items-center justify-center gap-2.5 border px-[22px] py-4 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] transition-colors",$L={primary:"border-btn bg-btn text-btn-ink hover:border-btn-2 hover:bg-btn-2",ghost:"border-current bg-transparent hover:bg-white/10"};function c3(e){let{variant:t="primary",arrow:a,glyphBefore:s,className:c,style:l,children:r,href:o,newTab:i,...n}=e,h=`${HK} ${$L[t]??$L.primary} ${c??""}`,m=s?KL(jL,{children:[a!==null&&Zo("span",{"aria-hidden":!0,className:"inline-flex",children:a??"\u2192"}),r]}):KL(jL,{children:[r,a!==null&&Zo("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-[3px]",children:a??"\u2192"})]});return o?Zo(r0,{href:o,className:h,style:l,...i?{target:"_blank",rel:"noopener noreferrer"}:{},children:m}):Zo("button",{type:"button",className:h,style:l,...n,children:m})}import{jsx as A0,jsxs as H3}from"react/jsx-runtime";var cs="w-full border-2 border-line bg-bg px-4 py-3.5 font-[family-name:var(--bk-value-font,var(--font-display))] text-[length:var(--bk-value-size,17px)] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent";function FK(e,t){let a=Number(e);if(a===0)return"Free";try{return new Intl.NumberFormat(void 0,{style:"currency",currency:t}).format(a)}catch{return`${t} ${e}`}}function YL(e,t){try{return new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",timeZone:t}).format(new Date(e))}catch{return new Date(e).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"})}}function XL(e,t){try{return new Intl.DateTimeFormat(void 0,{weekday:"long",day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit",timeZone:t,timeZoneName:"short"}).format(new Date(e))}catch{return new Date(e).toLocaleString()}}var ls="font-[family-name:var(--bk-name-font,var(--font-mono))] text-[length:var(--bk-name-size,12px)]";function Au({number:e,children:t}){return H3("div",{className:"mb-4 flex items-center gap-3",children:[A0("span",{className:"flex size-8 shrink-0 items-center justify-center rounded-full border border-line font-[family-name:var(--bk-step-font,var(--font-mono))] text-[length:var(--bk-step-size,11px)] font-semibold text-fg-dim",children:e}),A0("h3",{className:"font-[family-name:var(--bk-step-font,var(--font-mono))] text-[length:var(--bk-step-size,12px)] font-semibold uppercase tracking-[0.2em] text-fg",children:t})]})}function Do({eyebrow:e,heading:t,intro:a}){return H3("div",{className:"mb-10 max-w-[760px]",children:[(e??"").trim()&&A0("p",{className:"mb-4 font-mono text-[12px] font-semibold uppercase tracking-[0.24em] text-accent",children:e}),(t??"").trim()&&A0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.98] tracking-[-0.025em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:t}),(a??"").trim()&&A0("p",{className:"mt-5 max-w-[660px] font-display text-[17px] leading-[1.65] text-fg-dim",children:a})]})}function Oo({style:e}={}){let{fieldPrefix:t,services:a,currency:s,serviceId:c,setServiceId:l,requiresPayment:r,date:o,earliestDate:i,setDate:n,setDateTouched:h,availability:m,loadingSlots:u,noSlotsMessage:d,selectedStart:v,setSelectedStart:g,customerTimezone:b}=C7();return a?H3("div",{className:"flex flex-col gap-9",style:e,children:[H3("div",{children:[A0(Au,{number:"01",children:"Choose a service"}),A0("div",{className:"grid gap-3 sm:grid-cols-2",children:a.map(f=>{let w=f.id===c;return H3("button",{type:"button","aria-pressed":w,onClick:()=>l(f.id),className:`min-h-11 border p-4 text-left transition-colors ${w?"border-accent bg-accent/10":"border-line bg-bg hover:border-fg-dim"}`,children:[A0("span",{className:"block font-[family-name:var(--bk-name-font,var(--font-display))] text-[length:var(--bk-name-size,18px)] font-medium text-fg",children:f.name}),H3("span",{className:"mt-1 block font-[family-name:var(--bk-value-font,var(--font-mono))] text-[length:var(--bk-value-size,11px)] uppercase tracking-[0.14em] text-fg-dim",children:[f.durationMinutes," min \xB7 ",FK(f.price,s)]}),f.description&&A0("span",{className:"mt-3 block font-[family-name:var(--bk-note-font,var(--font-display))] text-[length:var(--bk-note-size,14px)] leading-[1.5] text-fg-dim",children:f.description})]},f.id)})}),r&&A0("p",{className:"mt-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.14em] text-alert",role:"alert",children:"This service requires an upfront payment and cannot be booked through this form yet."})]}),H3("div",{children:[A0(Au,{number:"02",children:"Choose a date and time"}),A0(Z2,{separate:!0,htmlFor:`${t}-date`,label:"Date",required:!0,labelFace:ls,children:A0("input",{id:`${t}-date`,type:"date",min:i,value:o,onChange:f=>{h(!0),n(f.target.value)},className:cs,required:!0})}),A0("div",{className:"mt-4 grid grid-cols-2 gap-2 sm:grid-cols-3 min-[1200px]:grid-cols-4",role:"group","aria-label":"Available appointment times",children:u?A0("p",{className:"col-span-full py-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.18em] text-fg-dim",children:"Loading times\u2026"}):m?.slots.length?m.slots.map(f=>H3("button",{type:"button","aria-pressed":v===f.start,onClick:()=>g(f.start),className:`min-h-11 border px-3 py-2 font-[family-name:var(--bk-value-font,var(--font-mono))] text-[length:var(--bk-value-size,12px)] font-semibold uppercase tracking-[0.12em] transition-colors ${v===f.start?"border-accent bg-accent text-bg":"border-line bg-bg text-fg hover:border-accent"}`,children:[A0("span",{className:"block",children:YL(f.start,b||m.timezone)}),b&&b!==m.timezone&&H3("span",{className:"mt-0.5 block text-[9px] font-normal tracking-[0.08em] opacity-70",children:[YL(f.start,m.timezone)," business"]})]},f.start)):d?A0("p",{className:"col-span-full py-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.18em] text-fg-dim",role:"status",children:d}):null}),m?.timezone&&H3("p",{className:"mt-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,10px)] uppercase tracking-[0.16em] text-fg-dim",children:["Times shown in ",b||m.timezone,b&&b!==m.timezone?` \xB7 business timezone ${m.timezone}`:""]})]})]}):null}function Go({buttonLabel:e,style:t}){let{fieldPrefix:a,editing:s,name:c,setName:l,email:r,setEmail:o,phone:i,setPhone:n,notes:h,setNotes:m,submitting:u,error:d,canSubmit:v}=C7();return H3("div",{className:"sf-card border border-line bg-bg p-5 min-[640px]:p-7",style:t,children:[A0(Au,{number:"03",children:"Your details"}),H3("div",{className:"flex flex-col gap-4",children:[A0(Z2,{separate:!0,htmlFor:`${a}-name`,label:"Name",required:!0,labelFace:ls,children:A0("input",{id:`${a}-name`,type:"text",autoComplete:"name",value:c,onChange:g=>l(g.target.value),className:cs,required:!0})}),A0(Z2,{separate:!0,htmlFor:`${a}-email`,label:"Email",required:!0,labelFace:ls,children:A0("input",{id:`${a}-email`,type:"email",inputMode:"email",autoComplete:"email",value:r,onChange:g=>o(g.target.value),className:cs,required:!0})}),A0(Z2,{separate:!0,htmlFor:`${a}-phone`,label:"Phone",labelFace:ls,children:A0("input",{id:`${a}-phone`,type:"tel",inputMode:"tel",autoComplete:"tel",value:i,onChange:g=>n(g.target.value),className:cs})}),A0(Z2,{separate:!0,htmlFor:`${a}-notes`,label:"What would you like to cover?",labelFace:ls,children:A0("textarea",{id:`${a}-notes`,rows:4,value:h,onChange:g=>m(g.target.value),className:`${cs} resize-y`})})]}),d&&A0("p",{className:"mt-4 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.16em] text-alert",role:"alert",children:d}),A0(c3,{type:s?"button":"submit",disabled:!v,arrow:null,className:"mt-6 w-full disabled:cursor-not-allowed disabled:opacity-50",children:u?"Submitting\u2026":(e??"").trim()||"Book appointment"})]})}function qo({successMessage:e}){let{confirmation:t,customerTimezone:a}=C7();return t?H3("div",{className:"sf-card max-w-[760px] border border-line bg-bg p-6 min-[640px]:p-9",role:"status",children:[H3("p",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.22em] text-accent",children:["Request received \xB7 ",t.bookingNumber]}),A0("h3",{className:"mt-4 font-display text-[28px] font-medium uppercase text-fg",children:t.service}),A0("p",{className:"mt-2 font-display text-[17px] text-fg-dim",children:XL(t.startAt,t.customerTimezone||a||t.timezone)}),t.customerTimezone&&t.timezone!==t.customerTimezone&&H3("p",{className:"mt-1 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:["Business time: ",XL(t.startAt,t.timezone)]}),(e??"").trim()&&A0("p",{className:"mt-5 max-w-[620px] font-serif text-[18px] italic leading-[1.6] text-fg-dim",children:e}),A0(c3,{href:`/book/${encodeURIComponent(t.manageToken)}`,newTab:t!==Lu,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Wo=["step","name","value","note"],Hu={step:"Step",name:"Name",value:"Value",note:"Note"},Uo={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},JL={step:{font:"--bk-step-font",size:"--bk-step-size"},name:{font:"--bk-name-font",size:"--bk-name-size"},value:{font:"--bk-value-font",size:"--bk-value-size"},note:{font:"--bk-note-font",size:"--bk-note-size"}};function TK(e){return typeof e=="string"&&v5.includes(e)?e:null}var PK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function QL(e){let t={};for(let a of Wo){let s=TK(e[Uo[a]]);if(!s)continue;let c=V9({role:s},PK);c.fontFamily&&(t[JL[a].font]=c.fontFamily),c.fontSize&&(t[JL[a].size]=c.fontSize)}return t}import{jsx as Je}from"react/jsx-runtime";var eA=["head","booking","details","confirm"],tA={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Fu({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=C7(),n=QL(r);return e==="head"?Je("div",{className:"min-[960px]:col-span-2",style:n,children:Je(Do,{eyebrow:t,heading:a,intro:s})}):e==="confirm"?o?Je("div",{className:"min-[960px]:col-span-2",style:n,children:Je(qo,{successMessage:l})}):null:o||!i||i.length===0?null:e==="booking"?Je(Oo,{style:n}):e==="details"?Je(Go,{buttonLabel:c,style:n}):null}import{jsx as K0,Fragment as EK,jsxs as F4}from"react/jsx-runtime";var T8="solid",Tu=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function aA(e){return I2(Tu,T8,e)}var Pu="sf-secnum-outline",sA="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",cA=`@supports (-webkit-text-stroke: 1px currentColor){.${Pu}{color:var(--site-surface-2);-webkit-text-stroke:1px var(--site-line)}}`;var rs=(e,t=!1)=>typeof e=="string"?Y(e,t):e,Qe=(e,t=!1)=>typeof e=="string"?M(e,t):e;function s0({num:e,title:t,link:a,logo:s,description:c,accent:l,accentNum:r,numStyle:o=T8,look:i="standard",titleAccent:n,accentTracking:h="-0.02em",spaceBelow:m,rowGap:u,descriptionSize:d,className:v="",eyebrowLook:g=ur}){let b=m??(i==="editorial"?"mb-[60px]":"");if(i==="editorial"){let H=!!t||!!n;return F4("header",{className:`${b} grid grid-cols-[auto_1fr_auto] items-end gap-10 border-b border-line pb-8 max-[1100px]:grid-cols-1 max-[1100px]:gap-3.5 ${v}`.trim(),children:[e&&(typeof e=="string"?K0(V1,{text:e,className:"pb-2"}):K0("span",{className:"pb-2",children:e})),H&&F4("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5.5vw,80px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:[t,n&&F4(EK,{children:[" ",K0("em",{className:"font-serif font-normal italic text-accent",style:{letterSpacing:h},children:n})]})]}),c&&K0("p",{className:"max-w-[360px] pb-1 text-right font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim max-[1100px]:max-w-full max-[1100px]:text-left",children:c})]})}if(i==="simple"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:rs(t)})]})}if(i==="statement"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em] text-fg",children:rs(t,!0)})]})}if(i==="natural"){let H=`flex max-w-[680px] flex-col ${u??"gap-5"} ${b} ${v}`.replace(/\s+/g," ").trim();return F4("div",{className:H,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g}):K0("span",{children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium leading-[1.05] tracking-[-0.03em] max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:rs(t)}),c&&K0("p",{className:`${d??"text-[length:var(--size-body,16px)]"} leading-[1.6] opacity-85`,children:c})]})}if(i==="essay"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:var(--sf-heading-max,var(--size-headingMedium,38px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:var(--size-headingSmall,28px)]",children:rs(t)})]})}let f=!!c||!!a,w=!!t,z=aA(o)==="outlined",k="font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em]",S=null;if(e)if(z)S=K0("span",{className:`${sA} text-fg-dim ${Pu}`,children:Qe(e)});else if(r&&!l&&typeof e=="string"){let H=e.indexOf("/"),I=H===-1?e:e.slice(0,H),P=H===-1?"":e.slice(H);S=F4("span",{className:k,children:[K0("span",{className:"text-accent",children:Qe(I)}),P&&K0("span",{className:"text-fg-dim",children:Qe(P)})]})}else S=K0("span",{className:`${k} ${l?"text-accent":"text-fg-dim"}`,children:Qe(e)});return F4("div",{className:"mb-16 grid grid-cols-[auto_1fr_auto] items-end gap-10 border-b border-line pb-6 max-[800px]:mb-9 max-[800px]:grid-cols-1 max-[800px]:gap-3 max-[800px]:pb-5",children:[z&&e&&K0("style",{children:cA}),F4("div",{className:"flex flex-col items-start gap-3",children:[s?.src&&K0("img",{src:H2(s.src),alt:s.alt,className:"h-8 w-auto object-contain"}),S]}),w&&K0("h2",{className:l?"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,5vw,64px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-[0.95] tracking-[-0.025em]":"font-heading2 text-[length:min(var(--size-headingMedium,56px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-none tracking-[-0.03em] whitespace-pre-line max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] max-[800px]:leading-[1]",children:rs(t)}),f&&F4("div",{className:"flex flex-col items-end gap-3 max-[800px]:items-start",children:[c&&K0("p",{className:"max-w-[340px] font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim text-right max-[800px]:max-w-full max-[800px]:text-left",children:Qe(c)}),a&&F4(r0,{href:a.href,className:"inline-flex items-center gap-2 whitespace-nowrap font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:[Qe(a.text),K0("span",{"aria-hidden":!0,children:"\u2192"})]})]})]})}import{jsx as T4,jsxs as os}from"react/jsx-runtime";function VK(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function lA({eyebrow:e,title:t}){return os("div",{className:"flex flex-col gap-4",children:[e&&T4(V1,{text:e,scaled:!1}),t&&T4("h2",{className:"font-display text-[min(clamp(40px,5vw,72px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(t,!0)})]})}function jo({body:e,buttonLabel:t,consent:a,form:s,submission:c,showForm:l,resolving:r,editing:o}){return os("div",{className:"flex flex-col gap-7",children:[e&&z0(e).map((i,n)=>T4("p",{className:"max-w-[480px] font-display text-[16px] leading-[1.6] text-fg-dim",children:M(i)},n)),l&&(s?c.done?T4("p",{role:"status",className:"max-w-[480px] font-[family-name:var(--sb-thanks-font,var(--font-serif))] text-[length:var(--sb-thanks-size,17px)] italic leading-[1.6] text-fg-dim",children:Ze(s)}):os("form",{className:"grid grid-cols-2 gap-2",onSubmit:c.handleSubmit,children:[s.fields.map(i=>{let n=["border border-line bg-transparent px-4 py-3.5 font-[family-name:var(--sb-field-font,var(--font-mono))] text-[length:var(--sb-field-size,14px)] tracking-[0.1em] text-fg outline-none focus:border-accent",VK(i)?"col-span-2":""].join(" ");return i.type==="checkbox"?os("label",{className:"col-span-2 flex items-start gap-3 font-[family-name:var(--sb-tick-font,var(--font-mono))] text-[length:var(--sb-tick-size,12px)] uppercase tracking-[0.18em] text-fg-dim",children:[T4(f7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),className:"mt-0.5 size-4 accent-accent"}),os("span",{children:[i.label,i.required?T4("span",{className:"text-accent",children:" *"}):null]})]},i.key):T4(f7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),rows:4,placeholder:i.placeholder||i.label,className:i.type==="textarea"?`${n} resize-y`:n},i.key)}),T4(De,{value:c.honeypot,onChange:c.setHoneypot}),c.error&&T4("p",{role:"alert",className:"col-span-2 font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:c.error}),t&&T4("button",{type:o?"button":"submit",disabled:c.submitting,className:"col-span-2 cursor-pointer bg-btn px-6 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:c.submitting?"Sending\u2026":M(t)})]}):T4("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim",children:r?p("Loading form\u2026"):p("Choose a form in the inspector, under Form \u2014 until then this form is hidden on the live page and nothing can be submitted.")})),l&&a&&T4("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:M(a)})]})}var Ko=["field","tick","thanks"],Eu={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},$o={field:"styleField",tick:"styleTick",thanks:"styleThanks"},rA={field:{font:"--sb-field-font",size:"--sb-field-size"},tick:{font:"--sb-tick-font",size:"--sb-tick-size"},thanks:{font:"--sb-thanks-font",size:"--sb-thanks-size"}};function NK(e){return typeof e=="string"&&v5.includes(e)?e:null}var _K={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function oA(e){let t={};for(let a of Ko){let s=NK(e[$o[a]]);if(!s)continue;let c=V9({role:s},_K);c.fontFamily&&(t[rA[a].font]=c.fontFamily),c.fontSize&&(t[rA[a].size]=c.fontSize)}return t}import{jsx as Yo}from"react/jsx-runtime";var iA=["head","form"],nA={head:"Head",form:"Form"};function Vu({region:e,eyebrow:t,title:a,body:s,buttonText:c,consent:l,formSlug:r,form:o,editing:i=!1,...n}){let h=H5(r,o),m=v7({form:h,formSlug:r,editing:i}),u=oA(n);return e==="head"?Yo("div",{style:u,children:Yo(s0,{look:"statement",num:t,title:a})}):Yo("div",{style:u,children:Yo(jo,{body:s??"",buttonLabel:c??"",consent:l??"",form:h,submission:m,showForm:!!h||i,resolving:h===void 0,editing:i})})}var IK={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>eA.map(e=>({region:e,name:tA[e]})),addBlocked:()=>p("A Booking Form is these three boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},SubmitBuild:{slot:"boxes",childType:"SubmitBox",addLabel:"Add box",fixed:!0,seeds:()=>iA.map(e=>({region:e,name:nA[e]})),addBlocked:()=>p("A Submit-a-build section is these two boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},Collections:{slot:"cards",childType:"CollectionCard",addLabel:"Add card",seeds:()=>Array.from({length:BL},()=>({collection:null}))},ProductGrid:{slot:"products",childType:"ProductRef",addLabel:"Add product",seeds:()=>[{code:""},{code:""},{code:""}],legacy:e=>Array.isArray(e.design_codes)?e.design_codes.map(t=>t?.code).filter(t=>!!t).map(t=>({code:t})):[]},GalleryB:{slot:"items",childType:"GalleryItem",addLabel:"Add image",seeds:()=>GL.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};nz(IK);function et(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as RK}from"react/jsx-runtime";import{OpacityIcon as BK}from"efficient-easel/icons";var hA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow","Limited release"),title:O("Heading","Banner headline"),body:O("Body","A line or two of supporting copy."),_gBackground:x("Background image"),imageSrc:q1("Image","image/*"),overlay:s1("Overlay",RK(BK,{}),0,100,5,60,"%"),_gButton:x("Button"),...H4,_gLayout:x("Layout")}};import{jsx as OK}from"react/jsx-runtime";import{jsx as is,jsxs as Nu,Fragment as ZK}from"react/jsx-runtime";import{Fragment as DK}from"react";function mA({items:e,meta:t,editing:a=!1}){let s=(e??[]).filter(l=>l?.label?.trim()),c=s.length>0?s:a?[{label:p("Breadcrumb")}]:[];return c.length===0&&!t?null:Nu("nav",{className:"flex items-center gap-4 border-b border-line px-[var(--sf-site-gutter,40px)] py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-4",children:[c.map((l,r)=>{let o=r===c.length-1;return Nu(DK,{children:[r>0&&is("span",{className:"opacity-40",children:"/"}),l.href&&!o?is(r0,{href:l.href,className:"hover:text-fg",children:R0(l.label)}):is("span",{className:o?"text-fg":void 0,children:R0(l.label)})]},r)}),t&&Nu(ZK,{children:[is("span",{className:"opacity-40",children:"\xB7"}),is("span",{children:M(t)})]})]})}function $4(e,t,a){return e||(a?.isEditing?p(t):void 0)}function C1(e,t,a){let s=Array.isArray(e)?e:[];return s.length?s:a?.isEditing?t:[]}function y(e,t,a){let s=F2(e);if(!s.hidden)return $4(s.text,t,a)}function e2(e,t,a){return F2(e).hidden?"":y(e,t,a)}function W3(e,t,a){return{text:y(e,u2.text,a),href:t||u2.href}}var _u={meta:"Trailing note"},GK=()=>[{label:p("Home"),href:"/"},{label:p("Section"),href:""}],pA={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>OK(mA,{items:C1(e,GK(),a),meta:y(t,_u.meta,a),editing:a?.isEditing})};var uA={fields:{_gContent:x("Content"),items:{type:"array",label:"Crumbs",arrayFields:{label:q("Label"),href:e3(q("Link"))},getItemSummary:e=>e?.label||"Crumb"},meta:T("Trailing note",_u.meta)}};import{jsx as g3,jsxs as qK}from"react/jsx-runtime";import{ButtonIcon as WK,ButtonIconIcon as UK,IconAfterTextIcon as jK,IconBeforeTextIcon as KK,StylesIcon as $K,WidthIcon as YK}from"efficient-easel/icons";import*as XK from"efficient-easel/icons";import{SettingsField as JK}from"efficient-easel/panel";import{useSelectedFields as vA}from"efficient-easel/easel";import{IconPicker as QK,Segmented as e$}from"efficient-shell/ui";function Xo(e){return typeof e=="boolean"?e:!0}var Iu=["none","arrow-right","arrow-long-right","arrow-up-right","chevron-right","external","cart","bag","tag","email","location","play","download","search","car"];function Ru(e){return typeof e=="string"&&Iu.includes(e)?e:void 0}function dA(e,t){return Ru(e)??(Xo(t)?"arrow-right":"none")}function Jo(e){return e==="before"?"before":"after"}function gA(e){return e==="fill"?"fill":"fit"}var Bu=e=>({...Fl({type:"custom",render:()=>g3(Tl,{})},"always"),reachedBy:e});function t$(e){let t=(e==="none"?"no-symbol":e).replace(/(^|-)([a-z])/g,(s,c,l)=>l.toUpperCase()),a=XK[`${t}Icon`];return a?g3(a,{size:16}):null}var a$=Iu.map(e=>({value:e,icon:t$(e)}));function s$({value:e,onChange:t}){let a=vA(),s=a.values.href,c=typeof e=="string"?e:e&&typeof e=="object"&&"text"in e?String(e.text??""):"";return g3(Zy,{label:"Button",icon:g3(WK,{size:18}),text:c,onTextChange:t,link:typeof s=="string"?s:"",onLinkChange:l=>a.onChange("href",l)})}function c$({value:e,onChange:t}){let a=vA(),s=dA(e,a.values.arrow),c=Jo(a.values.iconPosition);return g3(JK,{label:p("Icon"),icon:g3(UK,{size:18}),children:qK("div",{className:"flex items-center gap-2",children:[g3(QK,{label:p("Icon"),value:s,emptyValue:"none",options:a$,onChange:t}),s!=="none"&&g3(e$,{label:p("Icon position"),value:c,onChange:l=>a.onChange("iconPosition",l),options:[{value:"before",icon:g3(KK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon before text")}),title:p("Icon before text")},{value:"after",icon:g3(jK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon after text")}),title:p("Icon after text")}]})]})})}var fA={fields:{label:$y(q("Button"),e=>g3(s$,{value:e.value,onChange:e.onChange})),href:{...H1("Button link"),...Bu("label")},_dSize:Y1("Size"),widthFit:v1("Width",g3(YK,{}),[{label:"Fit content",value:"fit"},{label:"Fill",value:"fill"}],"fit"),_gStyle:x("Style"),variant:v1("Style",g3($K,{}),[{label:"Filled",value:"primary"},{label:"Outline",value:"ghost"}],"primary"),icon:{type:"custom",render:e=>g3(c$,{value:e.value,onChange:e.onChange})},iconPosition:Bu("icon"),arrow:Bu("icon"),_dLayout:Y1("Layout"),align:V5()}};import{jsx as zA}from"react/jsx-runtime";import{ColumnsIcon as h$,StylesIcon as m$}from"efficient-easel/icons";import{jsx as i$}from"react/jsx-runtime";import{jsx as tt,Fragment as l$,jsxs as Zu}from"react/jsx-runtime";var r$="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[72px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",o$="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[72px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function bA({look:e,eyebrow:t,title:a,items:s,columns:c,omitHead:l=!1,editing:r=!1}={}){let o=Math.min(4,Math.max(2,c??3)),i=(s??[]).filter(h=>r||(h.title??"").trim()||(h.body??"").trim()),n=!!(t??"").trim()||!!(a??"").trim();return!r&&!n&&i.length===0?null:tt("section",{className:"relative z-[2] bg-surface",children:Zu("div",{className:l?o$:r$,children:[l?null:Zu(l$,{children:[(t??"").trim()&&tt(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&tt("h2",{className:"mb-9 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-7 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),i.length>0&&tt("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--cd-cols),minmax(0,1fr))]",style:{"--cd-cols":String(o)},children:i.map((h,m)=>Zu("div",{className:"bg-bg p-8 max-[800px]:p-7",children:[tt("div",{className:"mb-3 font-heading3 text-[length:var(--size-headingSmall,20px)] font-medium uppercase tracking-[0.02em] text-fg",children:M((h.title??"").trim()||"Card title")}),tt("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:M((h.body??"").trim()||"A short line about this card.")})]},m))})]})})}var ns={eyebrow:"Label",title:"Section *heading.*"},n$=()=>[{title:p("Card title one"),body:p("A short line about this card.")},{title:p("Card title two"),body:p("A short line about this card.")},{title:p("Card title three"),body:p("A short line about this card.")}],xA={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return i$(bA,{look:o4(e.eyebrowLook,"Cards"),eyebrow:a(y(e.eyebrow,ns.eyebrow,e.puck)),title:a(y(e.title,ns.title,e.puck)),omitHead:t,items:C1(e.items,n$(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var yA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",ns.eyebrow),eyebrowLook:g1("Eyebrow style",zA(m$,{}),[...k4],l7("Cards")),title:O("Heading",ns.title),items:{type:"array",label:"Cards",arrayFields:{title:f1("Card title"),body:E1("Card body")},defaultItemProps:{title:"",body:""},getItemSummary:e=>e?.title||e?.body||"Card"},_gStyle:x("Style"),columns:s1("Columns",zA(h$,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Cards.headRows)};import{jsx as p$}from"react/jsx-runtime";import{StickyIcon as u$}from"efficient-easel/icons";var wA={fields:{tabs:{type:"array",label:"Tabs",arrayFields:{label:q("Label"),count:q("Count")},getItemSummary:e=>e?.label?`${e.label}${e.count?` \xB7 ${e.count}`:""}`:"Tab"},activeTab:e3(q("Active tab","All")),_gLinks:x("Links"),links:{type:"array",label:"Right links",arrayFields:{label:q("Label"),href:e3(q("Link"))},getItemSummary:e=>e?.label||"Link"},_gStyle:x("Style"),sticky:l1("Stick under header",!0,p$(u$,{}))}};import{jsx as x$}from"react/jsx-runtime";import{StylesIcon as z$}from"efficient-easel/icons";import{jsx as f$}from"react/jsx-runtime";import{jsx as r2,jsxs as Y4}from"react/jsx-runtime";function Du(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var CA=[100,70,46,30,19,12];function kA(e){return`color-mix(in srgb, var(--accent) ${CA[e%CA.length]}%, var(--bg))`}function d$({data:e,suffix:t}){let a=Math.max(...e.map(s=>s.value),0)||1;return r2("div",{className:"flex w-full flex-col gap-6",children:e.map((s,c)=>Y4("div",{children:[Y4("div",{className:"mb-2 flex items-baseline justify-between gap-4",children:[r2("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg/60",children:M(s.label)}),Y4("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium text-fg",children:[Du(s.value),t]})]}),r2("div",{className:"h-[10px] border border-line bg-bg",children:r2("div",{className:"h-full bg-accent",style:{width:`${Math.max(s.value/a*100,s.value===0?0:2)}%`}})})]},c))})}function g$({data:e,suffix:t}){let a={l:42,r:42,t:36,b:38},s=640-a.l-a.r,c=300-a.t-a.b,l=Math.max(...e.map(h=>h.value),0)||1,r=e.length>1?s/(e.length-1):0,o=e.map((h,m)=>({x:a.l+(e.length>1?m*r:s/2),y:a.t+c-h.value/l*c})),i=o.map((h,m)=>`${m===0?"M":"L"}${h.x},${h.y}`).join(" "),n=`${i} L${o[o.length-1].x},${a.t+c} L${o[0].x},${a.t+c} Z`;return Y4("svg",{viewBox:"0 0 640 300",className:"w-full",role:"img","aria-hidden":!0,children:[[.25,.5,.75,1].map(h=>r2("line",{x1:a.l,x2:640-a.r,y1:a.t+c*(1-h),y2:a.t+c*(1-h),stroke:"var(--site-line)",strokeWidth:"1"},h)),r2("line",{x1:a.l,x2:640-a.r,y1:a.t+c,y2:a.t+c,stroke:"var(--site-line)",strokeWidth:"1.5"}),r2("path",{d:n,fill:"var(--accent)",opacity:"0.13"}),r2("path",{d:i,fill:"none",stroke:"var(--accent)",strokeWidth:"2.5"}),o.map((h,m)=>Y4("g",{children:[r2("circle",{cx:h.x,cy:h.y,r:"4",fill:"var(--accent)"}),Y4("text",{x:h.x,y:h.y-12,textAnchor:"middle",className:"font-display",fontSize:"14",fill:"var(--fg)",children:[Du(e[m].value),t]}),r2("text",{x:h.x,y:288,textAnchor:"middle",className:"font-mono",fontSize:"10",letterSpacing:"0.1em",fill:"var(--fg)",opacity:"0.55",children:e[m].label.toUpperCase()})]},m))]})}function v$({data:e,suffix:t}){let a=e.reduce((o,i)=>o+i.value,0)||1,s=80,c=2*Math.PI*s,l=0,r=e.map((o,i)=>{let n=o.value/a,h={frac:n,dash:Math.max(n*c-3,0),off:l,ink:kA(i)};return l+=n*c,h});return Y4("div",{className:"flex w-full flex-wrap items-center justify-center gap-10",children:[r2("svg",{viewBox:"0 0 200 200",className:"w-[220px] max-w-full -rotate-90",role:"img","aria-hidden":!0,children:r.map((o,i)=>r2("circle",{cx:"100",cy:"100",r:s,fill:"none",stroke:o.ink,strokeWidth:"34",strokeDasharray:`${o.dash} ${c-o.dash}`,strokeDashoffset:-o.off},i))}),r2("ul",{className:"flex min-w-[200px] flex-1 flex-col gap-3",children:e.map((o,i)=>Y4("li",{className:"flex items-baseline gap-3",children:[r2("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] flex-shrink-0 rotate-45",style:{background:kA(i)}}),r2("span",{className:"flex-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.12em] text-fg/60",children:M(o.label)}),r2("span",{className:"font-display text-[length:var(--size-body,15px)] font-medium text-fg",children:t?`${Du(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function MA({eyebrow:e,title:t,body:a,chartStyle:s,items:c,valueSuffix:l,caption:r,editing:o=!1}={}){let i=(l??"").trim()===""?"":l??"",n=(c??[]).map(d=>({label:(d.label??"").trim(),value:parseFloat(d.value??"")})).filter(d=>o?!0:d.label&&Number.isFinite(d.value)).map(d=>({label:d.label||"\u2014",value:Number.isFinite(d.value)?d.value:0})),h=!!(e??"").trim()||!!(t??"").trim();if(!o&&!h&&n.length===0)return null;let m=s??"bars",u=n.length===0?null:m==="line"&&n.length>1?r2(g$,{data:n,suffix:i}):m==="donut"?r2(v$,{data:n,suffix:i}):r2(d$,{data:n,suffix:i});return r2("section",{className:"relative z-[2] border-y border-line bg-surface",children:Y4("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] items-center gap-14 px-[var(--sf-site-gutter,40px)] py-[76px] min-[960px]:[grid-template-columns:minmax(0,5fr)_minmax(0,7fr)] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[Y4("div",{children:[(e??"").trim()&&r2("span",{className:"inline-block bg-accent px-3.5 py-1.5 font-mono text-[length:var(--size-label,12px)] font-semibold uppercase tracking-[0.16em] text-bg",children:M(e??"")}),(t??"").trim()&&r2("h2",{className:"mt-5 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-[1.04] tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)}),(a??"").trim()&&r2("p",{className:"mt-5 max-w-[46ch] text-[length:var(--size-body,15px)] leading-relaxed text-fg/65",children:a})]}),Y4("div",{children:[u,(r??"").trim()&&r2("p",{className:"mt-4 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg/40",children:r})]})]})})}var hs={eyebrow:"By the numbers",title:`A picture worth
22
+ `}),p0("header",{className:"flex flex-shrink-0 flex-col gap-3.5 border-b border-line px-8 pb-[22px] pt-[26px] max-[640px]:px-[22px] max-[640px]:pt-[22px] max-[640px]:pb-[18px]",children:[p0("div",{className:"flex items-center justify-between",children:[p0("span",{className:"flex items-center gap-2.5 font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:[e.kickerBadge?N1("span",{className:"border px-2 py-1 text-[10px]",style:{background:"color-mix(in oklab, var(--accent) 12%, transparent)",borderColor:"color-mix(in oklab, var(--accent) 50%, transparent)"},children:e.kickerBadge}):null,(e.kickerBadge?"\xB7 ":"")+e.kickerText]}),N1("button",{ref:f,type:"button",onClick:s,"aria-label":"Close cart",className:"flex h-8 w-8 items-center justify-center border border-line text-[14px] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u2715"})]}),p0("h1",{className:"font-display text-[38px] font-medium uppercase leading-[0.95] tracking-[-0.03em] max-[640px]:text-[30px]",children:[e.titleLead+" ",N1("em",{className:"font-serif font-normal italic text-accent tracking-[-0.02em] normal-case",children:e.titleAccent})]}),N1("p",{className:"font-serif text-[13px] italic leading-[1.5] text-fg-dim",children:Py(e,c.length)})]}),p0("div",{className:`grid flex-shrink-0 ${KU[b-1]} gap-px border-b border-line bg-line`,children:[N1(ou,{label:"Items",value:p0(xo,{children:[N1("em",{className:"font-serif font-normal italic text-accent",children:o.sets})," set",o.sets===1?"":"s"," \xB7 ",o.units," item",o.units===1?"":"s"]})}),e.leadTimeValue?N1(ou,{label:"Lead time",value:e.leadTimeValue}):null,g?N1(ou,{label:"Ships to",value:g}):null]}),p0("div",{className:"flex-1 overflow-y-auto [scrollbar-color:var(--site-line)_transparent] [scrollbar-width:thin]",children:[c.length===0?N1(QU,{content:e}):c.map(z=>N1($U,{line:z,tyre:w.get(z.slug),onRemove:()=>l(z.id),onQtyChange:k=>r(z.id,k)},z.id)),u.length>0&&p0("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",style:{background:"color-mix(in oklab, var(--site-surface) 60%, transparent)"},children:[p0("div",{className:"mb-3.5 flex items-center justify-between font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:[N1("span",{children:"You may also need"}),N1("span",{className:"font-display text-[11px] normal-case tracking-[0.08em] text-fg-dim",children:"Buy together, save"})]}),N1("div",{className:"grid grid-cols-2 gap-2 max-[640px]:grid-cols-1",children:u.map(z=>N1(YU,{href:`/bundles/${z.slug}`,title:z.name,sub:XU(z,o.currency,d)},z.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(jC,{})}),e.promises.length>0&&N1("div",{className:"flex flex-wrap justify-center gap-[18px] border-b border-line px-8 pt-[22px] pb-7 font-mono text-[9px] uppercase tracking-[0.24em] text-fg-dim max-[640px]:px-[22px]",children:e.promises.map(z=>N1(JU,{children:z},z))})]}),p0("div",{className:"flex flex-shrink-0 flex-col gap-2 border-t border-line px-8 pt-5 max-[640px]:px-[22px]",children:[N1(x7,{label:`Subtotal \xB7 ${o.sets} set${o.sets===1?"":"s"}`,value:d(o.subtotal,o.currency)}),o.appliedBundles.map(z=>N1(x7,{label:`Bundle \xB7 ${z.name}${z.multiples>1?` \xD7${z.multiples}`:""}`,value:p0("span",{style:{color:"var(--green)"},children:["\u2212 ",d(z.discount,o.currency)]})},z.slug)),o.discount>0&&i?.valid&&N1(x7,{label:`Coupon \xB7 ${i.code}`,value:p0("span",{style:{color:"var(--green)"},children:["\u2212 ",d(o.discount,o.currency)]})}),i?.deferred&&N1(x7,{label:`Coupon \xB7 ${i.code}`,value:FC}),i?.valid&&i.effects?.gift&&N1(x7,{label:`Free gift \xB7 ${i.effects.gift.partNumber}${i.effects.gift.quantity>1?` \xD7${i.effects.gift.quantity}`:""}`,value:N1("span",{style:{color:"var(--green)"},children:"Free"})}),N1(x7,{label:"Shipping",value:o.shippingStatus==="free"?N1("span",{style:{color:"var(--green)"},children:"Free"}):BC(o.shippingStatus)??d(o.shipping,o.currency)}),o.tax&&(o.tax.charged?N1(x7,{label:o.tax.inclusive?`${o.tax.name} included \xB7 ${o.tax.rate}%`:o.tax.name,value:d(o.tax.amount,o.currency)}):o.tax.name?N1(x7,{label:o.tax.name,value:"Calculated at checkout"}):null),p0("div",{className:"mt-1.5 flex items-center justify-between border-t border-line pt-3.5 text-fg",children:[p0("span",{className:"font-display text-[22px] font-medium tracking-[-0.02em] normal-case",children:["Total ",N1("em",{className:"font-serif font-normal italic text-accent",children:"due"})]}),N1("span",{className:"text-right font-display text-[30px] font-medium tracking-[-0.025em] text-fg",children:o.repricing?"\u2026":d(o.grand,o.currency)})]})]}),p0("div",{className:"flex flex-shrink-0 flex-col gap-2.5 px-8 pb-[22px] pt-3.5 max-[640px]:px-[22px]",children:[p0(L1,{href:"/checkout",onClick:s,"aria-disabled":c.length===0,className:["group flex items-center justify-between border px-5 py-[18px] font-mono text-[12px] uppercase tracking-[0.3em] transition-colors",c.length===0?"pointer-events-none cursor-not-allowed border-line bg-surface text-fg-dim":"border-btn bg-btn text-btn-ink hover:border-fg hover:bg-fg"].join(" "),children:["Begin checkout",N1("span",{className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]}),N1("div",{className:"flex items-center justify-between px-1 py-1.5 font-mono text-[10px] uppercase tracking-[0.24em] text-fg-dim",children:N1(L1,{href:"/wheels",onClick:s,className:"text-fg transition-colors hover:text-accent",children:"\u2190 Keep browsing"})})]})]})]}):null}var KU=["grid-cols-1","grid-cols-2","grid-cols-3"];function ou({label:e,value:t}){return p0("div",{className:"flex flex-col gap-[3px] bg-bg px-4 py-3.5",children:[N1("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-fg-dim",children:e}),N1("span",{className:"font-display text-[14px] font-medium tracking-[-0.005em] text-fg",children:t})]})}function $U({line:e,tyre:t,onRemove:a,onQtyChange:s}){let{catalog:c,totals:l}=i4(),r=(e.components??[]).reduce((n,h)=>n+(l.freeUnitsByPartNumber[h.partNumber]??0),0),{currency:o,formatMoney:i}=d0();return p0(xo,{children:[p0("article",{className:"grid grid-cols-[96px_1fr] gap-5 border-b border-line px-8 py-6 transition-colors hover:bg-[color-mix(in_oklab,var(--site-surface)_60%,transparent)] max-[640px]:grid-cols-[78px_1fr] max-[640px]:px-[22px] max-[640px]:py-5",children:[N1(lu,{line:e,catalog:c,tyre:t}),p0("div",{className:"flex min-w-0 flex-col gap-2",children:[p0("div",{className:"flex items-start justify-between gap-3",children:[p0("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-accent",children:["N\xB0 ",e.positionNo," \xB7 ",e.process==="FusionForge\xAE"?p0(xo,{children:["FusionForge",N1(i6,{})]}):e.process]}),N1("span",{className:"whitespace-nowrap font-display text-[16px] font-medium tracking-[-0.015em] text-fg",children:Zm(e,o)===null?n7:i(Zm(e,o),o)})]}),p0("h3",{className:"mt-0.5 font-display text-[22px] font-medium uppercase leading-none tracking-[-0.02em]",children:[e.name.lead,N1("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em] normal-case",children:e.name.accent})]}),e.config.length>0&&p0("div",{className:"mt-1 flex flex-wrap gap-1.5",children:[e.config.map(n=>N1("span",{className:["border px-2 py-1 font-mono text-[9px] uppercase tracking-[0.18em]",n.gold?"border-[color-mix(in_oklab,var(--accent)_45%,var(--site-line))] text-accent":"border-line text-fg-dim"].join(" "),children:n.label},n.label)),r>0&&p0("span",{className:"border border-accent bg-accent px-2 py-1 font-mono text-[9px] uppercase tracking-[0.18em] text-bg",children:[r,"\xD7 free"]})]}),p0("div",{className:"mt-2.5 flex items-center justify-between gap-3",children:[N1(Ka,{value:e.qty,onChange:s,size:"small"}),p0("div",{className:"flex gap-3.5 font-mono text-[10px] uppercase tracking-[0.22em]",children:[N1(L1,{href:e.href??`/wheels/${e.slug}`,className:"text-fg-dim transition-colors hover:text-accent",children:e.href?"View product":"Edit finish"}),N1("button",{type:"button",onClick:a,className:"text-fg-dim transition-colors hover:text-alert",children:"Remove"})]})]})]})]}),e.verifiedFor&&p0("div",{className:"mx-8 -mt-px flex items-start gap-3 border-t-0 px-4 py-3.5 font-display text-[13px] leading-[1.45] text-fg max-[640px]:mx-[22px]",style:{background:"color-mix(in oklab, var(--accent) 8%, transparent)",border:"1px solid color-mix(in oklab, var(--accent) 35%, var(--site-line))",borderTop:"0"},children:[N1("span",{className:"flex-shrink-0 pt-px font-mono text-[10px] uppercase tracking-[0.24em] text-accent",children:"Fits"}),p0("span",{children:["Verified for your ",N1("strong",{className:"font-medium text-accent",children:e.verifiedFor}),". Final torque values shipped with the wheels."]})]})]})}function YU({title:e,sub:t,href:a}){return p0(L1,{href:a,className:"flex items-center justify-between border border-line bg-bg px-3.5 py-3 text-left transition-colors hover:border-accent",children:[p0("span",{className:"flex min-w-0 flex-col gap-[3px]",children:[N1("span",{className:"overflow-hidden text-ellipsis whitespace-nowrap font-display text-[13px] font-medium tracking-[-0.005em] text-fg",children:e}),N1("span",{className:"font-mono text-[9px] uppercase tracking-[0.22em] text-fg-dim",children:t})]}),N1("span",{className:"ml-2 flex h-6 w-6 flex-shrink-0 items-center justify-center font-mono text-[13px] text-accent",style:{borderColor:"color-mix(in oklab, var(--accent) 45%, var(--site-line))",borderWidth:1,borderStyle:"solid"},children:"+"})]})}function XU(e,t,a){let s=e.savings[t];if(s===void 0)return"Buy together";let c=a(s,t);return e.savingIsFrom?`Save from ${c}`:`Save ${c}`}function JU({children:e}){return N1("span",{className:"inline-flex items-center gap-1.5 before:text-[6px] before:text-accent before:content-['\u25CF']",children:e})}function x7({label:e,value:t}){return p0("div",{className:"flex items-center justify-between font-mono text-[11px] uppercase tracking-[0.18em] text-fg-dim",children:[N1("span",{children:e}),N1("strong",{className:"font-display text-[14px] font-normal tracking-[-0.005em] normal-case text-fg",children:t})]})}function QU({content:e}){return p0("div",{className:"flex flex-col items-center justify-center gap-3 px-8 py-20 text-center",children:[N1("span",{className:"font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:e.emptyKicker}),N1("p",{className:"font-serif text-[16px] italic leading-[1.5] text-fg-dim",children:e.emptyBody}),p0(L1,{href:"/wheels",className:"mt-3 inline-flex items-center gap-3 border border-line px-5 py-3 font-mono text-[11px] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:["Browse the catalog ",N1("span",{className:"text-accent",children:"\u2192"})]})]})}var ej=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],tj=Object.fromEntries(ej.map(e=>[e.key,e]));function jS(e){return tj[e]}import{Fragment as sj,jsx as H8,jsxs as zo}from"react/jsx-runtime";var aj=Qp(()=>import("./EditorPreviewCheckout-PVUT5RZD.js"),{ssr:!1});function iu(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{surface:a}=kw();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?zo(sj,{children:[H8(aj,{}),H8(KS,{surface:a})]}):H8(wr,{children:zo(Cr,{preview:!0,children:[H8($a,{}),H8(KS,{surface:a})]})})}function KS({surface:e}){let{label:t,href:a}=jS(e);return zo("div",{style:{position:"fixed",bottom:14,left:"50%",transform:"translateX(-50%)",zIndex:2147483e3,display:"flex",alignItems:"center",gap:8,maxWidth:"calc(100% - 24px)",padding:"5px 6px 5px 13px",borderRadius:999,fontSize:12,fontWeight:600,fontFamily:"system-ui, sans-serif",color:"#334155",background:"rgba(255,255,255,0.94)",border:"1px solid rgba(15,23,42,0.12)",boxShadow:"0 6px 24px rgba(15,23,42,0.18)",pointerEvents:"none"},children:[H8("span",{style:{whiteSpace:"nowrap"},children:p("{name} \xB7 preview only",{name:p(t)})}),zo("a",{href:a,target:"_blank",rel:"noopener noreferrer",style:{pointerEvents:"auto",flex:"none",display:"inline-flex",alignItems:"center",gap:5,padding:"4px 11px",borderRadius:999,color:"#fff",background:"#2563eb",textDecoration:"none"},children:[p("Open live"),H8(r6,{name:"external-link",size:13,rounded:!0})]})]})}import{CategoryIcon as Fl1,CheckIcon as yG,ClockIcon as xx,ColumnsIcon as Tl1,DirectionIcon as Pl1,EyeIcon as El1,ListIcon as Vl1,PageIcon as Nl1,PlacementIcon as _l1,ScrollPointIcon as Il1,TriggerIcon as Rl1}from"efficient-easel/icons";import{useContext as oj,useEffect as eL,useRef as wo,useState as Co}from"react";import{Button as ko}from"efficient-shell/ui";var Ya=class extends Error{constructor(a){super("The storefront forms list could not be loaded.");this.cause=a;this.name="FormsUnavailableError"}},yo=null,nu=null,hu=null;function cj(){yo=null,nu=null,hu=null}function $S(e=!1){let t=R3(),a=i2();return(e||!yo||nu===null&&t!==null||hu!==a)&&(nu=t,hu=a,yo=(t?J1.listForms(t,{siteId:a}):Promise.reject(new Ya)).catch(s=>{throw cj(),s instanceof Ya?s:new Ya(s)})),yo}var mu=new Map,lj=9e5,YS=0;function rj(){return YS+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String(YS)}`}function XS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function JS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=rj();return new Promise(s=>{let c=setTimeout(()=>QS(a,{status:"timeout"}),t.timeoutMs??lj);mu.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function QS(e,t){let a=mu.get(e);a&&(mu.delete(e),a(t))}function $m1(e,t){QS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as k2,jsxs as P5}from"react/jsx-runtime";var tL="__create-a-new-form__";function ij({value:e,forms:t,loadFailed:a,emptyLabel:s}){let c=t??[],l=e?c.some(m=>m.slug===e):!0,r=t===null&&!a,o={value:"",label:r?p("Loading\u2026"):a?p("Forms couldn\u2019t be loaded"):s===void 0?p("No form yet"):p(s)},i=e&&!l?[{value:e,label:r||a?e:p("{slug} \u2014 no form with this name",{slug:e})}]:[],n=c.map(m=>({value:m.slug,label:m.is_active?m.title:p("{title} (switched off)",{title:m.title})})),h=r?[]:[{value:tL,label:p("Create a new form")}];return[o,...i,...n,...h]}function nj(e){return e===tL?{action:"create"}:{action:"store",slug:e}}function hj({value:e,pickedId:t,forms:a}){if(!e||!t||a.some(c=>c.slug===e))return null;let s=a.find(c=>c.id===t);return s&&s.slug&&s.slug!==e?s.slug:null}function mj(e){let t=[p("Goes to {place}",{place:p("Storefront \u2192 Forms")})],a=(e.notify_email??"").trim();return a&&t.push(p("Emails a copy to {email}",{email:a})),e.mailing_list_name&&t.push(e.subscribe_mode==="checkbox"?p("Joins the \u201C{audience}\u201D audience, but only when the consent box is ticked",{audience:e.mailing_list_name}):p("Joins the \u201C{audience}\u201D audience",{audience:e.mailing_list_name})),e.kind==="account_signup"&&t.push(e.signup_customer_type==="importer"?p("Creates a wholesale account"):p("Creates a retail account")),t}function pu({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=C4(),l=oj(Al),r=l?l.capabilities.hasForms:!0,[o,i]=Co(null),[n,h]=Co(!1),[m,u]=Co(!1),[d,v]=Co(!1),g=wo(!0),b=wo(e);b.current=e;let f=wo(t);f.current=t;let w=wo(null),z=(E=!1)=>$S(E).then(F=>{if(g.current){i(F),h(!1);let _=hj({value:b.current,pickedId:w.current,forms:F});_&&f.current(_)}return F},()=>(g.current&&h(!0),[]));eL(()=>(g.current=!0,r&&z(),()=>{g.current=!1}),[r]),eL(()=>r?co(()=>{z(!0)}):void 0,[r]);let S=e?(o??[]).find(E=>E.slug===e)??null:null;S?w.current=S.id:e||(w.current=null);let H=!!e&&!S&&o!==null&&!n,I=ij({value:e,forms:o,loadFailed:n,emptyLabel:s}),P=async()=>{u(!0),v(!1);try{let E=await JS(c,{mode:"create"}),F=await z(!0);if(!g.current)return;if(E.status==="timeout"){v(!0);return}if(E.status!=="saved")return;let{form:_}=E;_.slug!==b.current&&f.current(_.slug),F.some(Z=>Z.id===_.id)||z(!0)}finally{g.current&&u(!1)}},D=E=>{let F=nj(E);F.action==="create"?P():(v(!1),t(F.slug))};return r?P5("div",{className:"sf-formpicker",children:[k2(O9,{label:a,options:I,fallback:"",value:e??"",onChange:D,placeholder:p("Search forms\u2026")}),d&&k2("p",{className:"sf-formsummary-warn",children:p("That didn\u2019t come back \u2014 pick the form from the list, or try again.")}),S?P5("div",{className:"sf-blogsource sf-formsummary",children:[P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p3("{n} field","{n} fields",S.fields.length)}),S.fields.length?k2("ol",{className:"sf-formsummary-fields",children:S.fields.map((E,F)=>k2("li",{children:E.label},E.key||`${E.label}-${F}`))}):k2("p",{className:"es-field-hint sf-hint-keep",children:p("This form has no fields yet, so there is nothing for a visitor to fill in.")})]}),P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p("Where the answers go")}),k2("ul",{className:"sf-formsummary-fields",children:mj(S).map(E=>k2("li",{children:E},E))})]}),!S.is_active&&k2("p",{className:"sf-formsummary-warn",children:p("This form is switched off, so it won\u2019t appear on the published page. Turn it back on in {place}.",{place:p("Storefront \u2192 Forms")})}),P5("div",{className:"sf-formsummary-actions",children:[k2(ko,{variant:"secondary",size:"sm",onClick:()=>XS(c,S.id),children:p("Edit form \u270E")}),k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{P()},children:p("New form +")})]}),k2("p",{className:"es-field-hint sf-hint-keep",children:p("The questions, the button text and the thank-you message all come from {place}. Edit them there \u2014 this section updates to match.",{place:p("Storefront \u2192 Forms")})})]}):P5("div",{className:"sf-blogsource sf-formsummary",children:[n?P5("p",{className:"es-field-hint sf-hint-keep",children:[p("This website\u2019s forms couldn\u2019t be loaded, so there is nothing to choose from yet."),e?` ${p("This section still points at \u201C{slug}\u201D, and that is unchanged.",{slug:e})}`:""]}):H&&k2("p",{className:"sf-formsummary-warn",children:p("This section points at \u201C{slug}\u201D, and this website has no form with that name. Pick one from the list above, or leave it \u2014 nothing has been changed.",{slug:e??""})}),P5("div",{className:"sf-formsummary-actions",children:[n&&k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{z(!0)},children:p("Try again")}),k2(ko,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{P()},children:p("New form +")})]}),!n&&k2("p",{className:"es-field-hint sf-hint-keep",children:p("Pick a form to show here, or build a new one. Forms are made once in {place} and can be shown on any number of pages.",{place:p("Storefront \u2192 Forms")})})]})]}):k2("div",{className:"sf-formpicker",children:k2("div",{className:"sf-blogsource sf-formsummary",children:P5("div",{children:[k2("div",{className:"sf-formsummary-caption",children:p(a)}),P5("p",{className:"es-field-hint sf-hint-keep",children:[p("Forms aren\u2019t available in this editor, so there is nothing to choose here."),e?` ${p("This section still points at \u201C{slug}\u201D, and that is unchanged.",{slug:e})}`:""]})]})})})}import{jsx as pj}from"react/jsx-runtime";function E5(e,t){return{type:"custom",render:({value:a,onChange:s})=>pj(pu,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var Mo=null,aL=null;function uj(e,t){Mo=e,aL=t}function up1(e){uj(e,null)}function sL(){return Mo}function M2(){return aL==="dynamic"||Mo===dp}function cL(e){return Zr(Mo??"",e)??"alloy-wheel"}import{createContext as dj,useContext as gj}from"react";import{jsx as vj}from"react/jsx-runtime";var lL=dj(null);function rL({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return vj(lL.Provider,{value:a,children:t})}function oL(){return gj(lL)}import{createContext as fj,useContext as bj}from"react";import{jsx as xj}from"react/jsx-runtime";var iL=fj("alloy-wheel");function nL({kind:e,children:t}){return xj(iL.Provider,{value:e??"alloy-wheel",children:t})}function hL(){return bj(iL)}import{createContext as mL,useContext as So}from"react";import{jsx as Cj}from"react/jsx-runtime";function zj(e){let t=e.replace(/([a-z0-9])([A-Z])/g,"$1 $2").replace(/[_-]+/g," ").trim().toLowerCase();return t?t[0].toUpperCase()+t.slice(1):e}var yj=/^\d{4}-\d{2}-\d{2}$/;function pL(e){return e?e.schema?.length?e.schema.filter(t=>typeof t?.key=="string"&&t.key in e.fields):Object.entries(e.fields).flatMap(([t,a])=>{let s=Array.isArray(a)?"images":typeof a=="string"?yj.test(a)?"date":"text":null;return s?[{key:t,label:zj(t),kind:s}]:[]}):[]}function Lo(e,{firstField:t=!1}={}){if(!e)return[];let a=pL(e).filter(s=>s.kind==="images");return(t?a.slice(0,1):a).flatMap(s=>{let c=e.fields[s.key];return Array.isArray(c)?c.flatMap(l=>{let r=l?.url;if(typeof r!="string"||!r)return[];let o=l.alt;return[{url:r,alt:typeof o=="string"?o:""}]}):[]})}function wj(e){let t=new Date(`${e}T00:00:00Z`);return Number.isNaN(t.getTime())?e:t.toLocaleDateString("en-GB",{day:"numeric",month:"long",year:"numeric",timeZone:"UTC"})}function uL(e){return e?pL(e).flatMap(t=>{if(t.kind!=="text"&&t.kind!=="date")return[];let a=e.fields[t.key];return typeof a!="string"||!a.trim()?[]:[{label:t.label,value:t.kind==="date"?wj(a):a}]}):[]}var z7="product",uu=mL(null);function du(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||z7}function Ao(e){let t=e?.appState?.data?.root;return du(t?.props)!==z7}var dL=mL(z7);function gL({type:e,children:t}){return Cj(dL.Provider,{value:e,children:t})}function Ho(e){let t=So(uu),a=So(dL);return t?t.type!==z7:e&&a!==z7}var Fo={type:"sample",key:"sample",get title(){return p("Record title")},get fields(){return{first:p("A detail of this record"),second:p("Another detail"),third:p("A third")}},value:void 0,get schema(){return[{key:"first",label:p("First detail"),kind:"text"},{key:"second",label:p("Second detail"),kind:"text"},{key:"third",label:p("Third detail"),kind:"text"}]}},vL=4;function To(){return So(uu)}function fL(e){let t=So(uu);return t!==null&&t.type===e?t:null}import{createContext as Mj,useContext as Sj}from"react";var gu="heroBullets",Xa="\xB7",Ja={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function bL(e){return e.detail?`${e.label} ${Xa} ${e.detail}`:e.label}function kj(e){let t=e.trim();if(!t)return null;let a=t.indexOf(Xa);return a<0?{label:t,detail:""}:{label:t.slice(0,a).trim(),detail:t.slice(a+Xa.length).trim()}}function xL(e){let t=(e??{})[gu];return Array.isArray(t)?{bullets:t.map(s=>kj(typeof s=="string"?s:Fy(s?.text,""))).filter(s=>s!==null)}:Ja}import{jsx as Lj}from"react/jsx-runtime";var zL=Mj(Ja);function yL({content:e,children:t}){return Lj(zL.Provider,{value:e,children:t})}function wL(){return Sj(zL)}var u2={text:"Button label",href:"#"},A={eyebrow:"Eyebrow",heading:"Main heading",accent:"Highlight line",body:"Add a sentence or two of supporting copy.",button:"Button label",link:"#",sectionHeading:"Section heading",slideName:"Slide name",boxName:"Box name",headingAccent:"Section heading *here.*",sectionNumber:"Section number",imageCaption:"Image caption",bookingConfirmation:"Thanks \u2014 we'll email you to confirm.",imageMeta:"Image meta",label:"Label",value:"Value",viewAll:"View all",date:"Month DD, YYYY",category:"Category"};var s3={Series:"transparent",StatsParagraph:"transparent",TimelineTrack:Wy,Stats:void 0};import{jsx as d6}from"react/jsx-runtime";import{jsx as Hj}from"react/jsx-runtime";var Po="sf-card",E2={min:0,max:90,step:5,fallback:0,unit:"%"},y7=[{label:"Even",value:"even"},{label:"From the bottom",value:"bottom"}],Aj="68%",q3={desktop:20,phone:20,side:40,sidePhone:24},CL="sf-box-sides",kL={min:0,max:200,step:10};function We(e){return typeof e=="string"&&e.trim()!==""}function Eo(e,t){let a=typeof e=="number"?e:Number.parseFloat(String(e??""));if(!Number.isFinite(a)||a<=0)return null;let s=(Math.min(E2.max,Math.max(E2.min,a))/100).toFixed(2);return t!=="bottom"?{background:`rgba(0,0,0,${s})`}:{background:`linear-gradient(0deg, rgba(0,0,0,${s}) 0%, rgba(0,0,0,0) ${Aj})`}}function Vo(e,t){let a={"top-left":["start","start"],"top-center":["center","start"],"top-right":["end","start"],left:["start","center"],center:["center","center"],right:["end","center"],"bottom-left":["start","end"],"bottom-center":["center","end"],"bottom-right":["end","end"]},[s,c]=a[e]??a.center,[l,r]=t==="column"?[c,s]:[s,c],o={start:"justify-start",center:"justify-center",end:"justify-end"},i={start:"items-start",center:"items-center",end:"items-end"};return`${o[l]} ${i[r]}`}var No={ParagraphsA:{top:60,bottom:80},StatsParagraph:{top:120,bottom:120},Timeline:{top:120,bottom:120},Footprint:{top:120,bottom:120},TimelineTrack:{top:120,bottom:120},TitleWithButtons:{top:140,bottom:140},ProcessSteps:{top:120,bottom:120},DetailRows:{top:100,bottom:100}},ML=new Set(Object.keys(No)),Fj=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),SL=new Set(["ProductGrid"]);function vu(e,t){let a=e.render;e.render=s=>{if(t?.(s))return a(s);let c=R9(s.sectionPaddingTop,s.sectionPaddingBottom,s.sectionPaddingTopPhone,s.sectionPaddingBottomPhone),l=a(s);return c?Hj("div",{className:c.className,style:c.style,children:l}):l}}var LL={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!Fj.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){ML.has(t)||SL.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(ML.has(t)){let a=e.render,s=No[t];e.render=c=>{let l=xy(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(SL.has(t)){vu(e);return}vu(e,t==="Flex"?a=>We(a.bgImage):void 0)}},Tj=["Heading","Text"],AL={name:"blockPadding",applies:(e,t,a)=>Tj.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){vu(e)}};import{jsx as u6,Fragment as Pj,jsxs as Ej}from"react/jsx-runtime";import{useEasel as PL}from"efficient-easel/easel";import{LayersIcon as Vj}from"efficient-easel/icons";import{SettingsDrill as Nj,SettingsField as _j}from"efficient-easel/panel";import{default as HL}from"efficient-easel/screen/components/AddBlockRow";import{default as FL}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as qp1,useSlotChildActions as TL}from"efficient-easel/screen/components/SlotChildActionsContext";function Ij({parent:e,parentType:t,label:a,rowName:s,onSelectChild:c,onAddChild:l,nestDepth:r=0}){let o=Aa(t,r);if(!o)return null;let{slot:i,choices:n,spec:h}=o,m=String(e.props.id),u=`${m}:${i}`,d=Array.isArray(e.props[i])?e.props[i]:[],v=h?.addBlocked?.(d)??null,g=h?.notice?.(d)??null,b=Ej(Pj,{children:[g?u6("p",{className:"sf-note",children:g}):null,d.map((f,w)=>u6(Nj,{name:s(f),onOpen:()=>c(u,w,String(f.props.id),t)},String(f.props.id??`${u}-${w}`))),n?u6(HL,{choices:n,onPick:f=>l(m,i,f,d.length,t)}):h.fixed?null:u6(FL,{label:h.addLabel,blocked:v,onAdd:()=>l(m,i,h.childType,d.length,t)})]});return u6("div",{className:"sf-slot-rows",children:a?u6(_j,{label:p(a),icon:u6(Vj,{}),value:String(d.length),children:b}):b})}function Rj(e,t){return Aa(e)?.spec?.notice?.(t)??null}function EL({parentType:e}){let{selectedItem:t}=PL(l=>l);if(!t||t.type!==e)return null;let a=Aa(e)?.slot,s=a&&Array.isArray(t.props[a])?t.props[a]:[],c=Rj(e,s);return c?u6("p",{className:"sf-note",children:c}):null}function Bj(e,t){return Aa(t)?.source==="footer"?e.blockRowName:e.childRowName}function VL({parentType:e,label:t}){let{appState:a,selectedItem:s}=PL(r=>r),c=TL();if(!c||!s||s.type!==e)return null;let l=e===oz?il(a?.data,String(s.props.id)):0;return u6(Ij,{parent:s,parentType:e,label:t,rowName:Bj(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var NL="grayscale(1) contrast(1.03)",_L="Black and white";function Zj(e){return e===!0?{filter:NL}:{}}function Dj(e){let{filter:t}=Zj(e);return t?{style:{filter:t}}:{}}var Qa="sf-photo-grayscale",Oj=`@media (hover:hover){.${Qa}{filter:${NL};transition:filter 160ms ease}.${Qa}:hover{filter:none}}@media (hover:hover) and (prefers-reduced-motion:reduce){.${Qa}{transition:none}}`;function Ue(e,t){return typeof e=="boolean"?e?Dj(!0):{}:t===!0?{className:Qa}:{}}function IL(e){return e===!0?{[Qa]:Oj}:{}}import{AlignLeftIcon as Wj,BlackAndWhiteIcon as Uj,ContrastIcon as jj,HeightIcon as Kj,TypeIcon as $j}from"efficient-easel/icons";var Gj=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],qj=new Set(Gj);function RL(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(qj.has(t[a]))return t[a];return null}var g6=e=>Q2(e,s1("Height",d6(Kj,{}),ie.min,ie.max,ie.step,ie.fallback,ie.unit)),H4={ctaText:T("Button",u2.text),ctaHref:H1("Button link")},V5=()=>v1("Alignment",d6(Wj,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),_o=()=>v1("Tone",d6(jj,{}),[{label:"Default",value:"default"},{label:"Muted",value:"dim"}],"default"),u3=e=>x5({...No[e],keys:{top:"padTop",bottom:"padBottom"},group:!1}),N5=(e,t)=>({type:"custom",render:()=>d6(VL,{parentType:e,label:t})}),Io=e=>({type:"custom",render:()=>d6(EL,{parentType:e})});function Yj(e){let{photographyGrayscale:t}=I3();return l1(_L,t===!0,d6(Uj,{})).render(e)}function je(){return{type:"custom",render:e=>d6(Yj,{...e})}}var U1=Object.keys(z5("full"));function Ke(e){let t=RL(e);return t?d6(c4,{noun:t}):d6($j,{})}import{createContext as Xj,useContext as Jj}from"react";import{jsx as w7,jsxs as fu}from"react/jsx-runtime";function bu(e){return A9(e)??void 0}var xu=Xj({}),BL=3;function zu({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=Jj(xu),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",u=bu(c),d=g=>h?{[b8]:g}:{},v=g=>cr(n?.[x8(g)]?.role,Lw[g],pl);return fu(L1,{href:s||"#",className:`sf-card group relative block w-full min-w-0 overflow-hidden bg-surface-2${m}`,children:[w7("div",{className:"relative z-0 aspect-[4/5] transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:scale-[1.04]",children:w7(k0,{label:l||"collection.jpg",src:u})}),w7("div",{className:"pointer-events-none absolute inset-0 z-[1] [background:rgba(0,0,0,0.4)] group-hover:[background:rgba(0,0,0,0.3)] max-[800px]:hidden",style:{transition:"none"}}),fu("div",{className:"absolute inset-x-8 bottom-8 z-[2] flex flex-col gap-2.5 text-overlay-fg max-[800px]:relative max-[800px]:inset-auto max-[800px]:p-6 max-[800px]:gap-3 max-[800px]:text-fg",children:[e&&w7("span",{...d("tag"),style:v("tag"),className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.25em] opacity-70",children:M(e)}),t&&w7("h3",{...d("name"),style:v("name"),className:"font-heading2 text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))] font-medium leading-none tracking-[-0.03em] max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",children:typeof t=="string"?Y(t,!1):t}),a&&z0(a).map((g,b)=>w7("p",{...d("body"),style:v("body"),className:"max-w-[420px] text-[length:var(--size-body,14px)] leading-[1.5] opacity-80",children:M(g)},b)),o&&r&&w7("span",{...d("price"),style:v("price"),className:"font-mono text-[length:var(--size-label,15px)] tracking-[0.05em] text-accent",children:M(r)}),fu("span",{...d("link"),style:v("link"),className:"mt-2 inline-flex items-center gap-2.5 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em]",children:["Explore",w7("span",{className:"transition-transform group-hover:translate-x-[3px]","aria-hidden":!0,children:"\u2192"})]})]})]})}import{createContext as mK,useCallback as pK,useContext as uK,useEffect as dK,useRef as gK,useState as Cu}from"react";import{useState as Qj}from"react";function Ro(e){switch(e){case"tall":return"aspect-[3/4]";case"wide":return"aspect-[2/1]";case"landscape":return"aspect-[4/3]";case"portrait":return"aspect-[4/5]";case"auto":return"";default:return"aspect-square"}}function ZL(e){return e==="below"}import{jsx as K4,jsxs as $e}from"react/jsx-runtime";function yu({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=Qj(!1),h=ZL(o),m=$e("div",{className:["sf-card group relative overflow-hidden bg-surface-2",Ro(r),t?"max-[800px]:hidden":""].join(" "),children:[$e("div",{className:["absolute inset-0 z-[1] flex items-center justify-center transition-[transform,filter,opacity] duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)]",s?"scale-[1.06] opacity-0 [filter:brightness(0.5)]":"group-hover:scale-[1.06] group-hover:opacity-0 group-hover:[filter:brightness(0.5)]"].join(" "),children:[K4(k0,{label:e.imageLabel,src:e.imageSrc}),K4("div",{className:"absolute inset-0",style:{background:"rgba(0,0,0,0.35)"}})]}),K4("div",{className:["absolute inset-0 z-[1] flex items-center justify-center transition-[transform,filter,opacity] duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)]",s?"opacity-100 scale-[1.06] [filter:brightness(0.5)]":"opacity-0 group-hover:scale-[1.06] group-hover:opacity-100 group-hover:[filter:brightness(0.5)]"].join(" "),style:{background:"var(--site-surface)"},children:e.detailSrc&&K4(_3,{src:e.detailSrc,alt:"",fill:!0,sizes:"(max-width: 800px) 100vw, (max-width: 1500px) 33vw, 25vw",loading:"lazy",className:"absolute inset-0 z-[3] object-cover",style:{display:i?"none":"block"},onError:()=>n(!0)})}),c!=null&&l!=null&&$e("span",{className:"pointer-events-none absolute top-3 right-3 z-[3] font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.24em] max-[800px]:top-2.5 max-[800px]:right-2.5",style:{color:"rgba(245,241,232,0.7)"},children:[String(c).padStart(2,"0")," / ",String(l).padStart(2,"0")]}),e.process&&K4("span",{className:["pointer-events-none absolute top-3 left-3 z-[3] inline-block max-w-[60%] truncate font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.24em] text-accent max-[800px]:top-2.5 max-[800px]:left-2.5","transition-opacity duration-300 ease-out",a||s?"opacity-100":"opacity-0 group-hover:opacity-100 max-[800px]:opacity-100"].join(" "),children:e0(e.process)}),$e("div",{className:["absolute inset-0 z-[2] flex flex-col justify-end gap-1 p-6","transition-[opacity,transform] duration-300 ease-out",a||s?"opacity-100 translate-y-0":"opacity-0 translate-y-2 group-hover:opacity-100 group-hover:translate-y-0 max-[800px]:opacity-100 max-[800px]:translate-y-0","max-[800px]:p-3.5"].join(" "),style:{color:"var(--overlay-fg)",background:"linear-gradient(180deg, transparent 40%, rgba(10,10,10,.85) 100%)"},children:[e.car&&K4("div",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent max-[800px]:text-[length:var(--size-label,11px)] max-[800px]:tracking-[0.15em]",children:e.car}),e.wheel&&K4("div",{className:"font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-[1.05] tracking-[-0.02em] max-[800px]:text-[length:var(--size-body,16px)]",children:e.wheel}),e.finish&&K4("div",{className:"mt-1.5 flex gap-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.12em]",style:{color:"rgba(245,241,232,0.7)"},children:K4("span",{children:e0(e.finish)})})]})]});return h?$e("div",{className:t?"max-[800px]:hidden":"",children:[m,$e("div",{className:"bg-surface px-3.5 pt-3 pb-3.5",children:[e.wheel&&K4("div",{className:"font-display text-[length:var(--size-body,15px)] font-medium leading-[1.25] tracking-[-0.01em] text-fg",children:e.wheel}),(e.finish||e.car)&&K4("div",{className:"mt-0.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:e0(e.finish||e.car)})]})]}):m}import{createContext as eK,useContext as tK,useEffect as aK,useLayoutEffect as sK,useRef as wu,useState as cK}from"react";import{createPortal as lK}from"react-dom";import{Fragment as nK,jsx as es,jsxs as hK}from"react/jsx-runtime";var rK=".sf-themed-content",DL="sf-section-accent";function oK(e,t){let a={},s=!1,c=[];for(let l=e;l&&l!==t;l=l.parentElement)c.push(l);for(let l of c.reverse()){l.classList.contains(DL)&&(s=!0);let r=l.style;if(r)for(let o=0;o<r.length;o+=1){let i=r.item(o);i.startsWith("--")&&(a[i]=r.getPropertyValue(i))}}return{className:s?`contents ${DL}`:"contents",style:a}}function iK(e){let t=e.querySelectorAll("a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex='-1'])");return Array.from(t).filter(a=>!a.hasAttribute("hidden")&&a.getAttribute("aria-hidden")!=="true")}var OL=eK(()=>{});function F8({open:e,onClose:t,label:a,onPrev:s,onNext:c,className:l="",style:r,children:o}){let i=wu(null),n=wu(null),[h,m]=cK(null);sK(()=>{if(!e){m(null);return}let v=i.current;if(!v)return;let g=v.closest(rK)??v.ownerDocument.body;m({host:g,theme:oK(v,g)})},[e]);let u=wu({onClose:t,onPrev:s,onNext:c});u.current={onClose:t,onPrev:s,onNext:c};let d=e&&h!==null;return aK(()=>{if(!d)return;let v=n.current,g=v?.ownerDocument??document,b=g.activeElement;v?.focus();let f=k=>{if(k.key==="Escape")u.current.onClose();else if(k.key==="ArrowLeft")u.current.onPrev?.();else if(k.key==="ArrowRight")u.current.onNext?.();else if(k.key==="Tab"&&v){let S=iK(v);if(S.length===0){k.preventDefault(),v.focus();return}let H=S[0],I=S[S.length-1],P=g.activeElement,D=!!P&&v.contains(P)&&P!==v;if(k.shiftKey&&(!D||P===H))k.preventDefault(),I.focus();else if(!k.shiftKey&&(!D||P===I))k.preventDefault(),H.focus();else{k.preventDefault();let E=S.indexOf(P);S[k.shiftKey?E-1:E+1]?.focus()}}},w=g.defaultView??window;w.addEventListener("keydown",f);let z=g.body.style.overflow;return g.body.style.overflow="hidden",()=>{w.removeEventListener("keydown",f),g.body.style.overflow=z,b&&b.isConnected&&b.focus()}},[d]),e?hK(nK,{children:[es("span",{ref:i,hidden:!0}),h&&lK(es("div",{className:h.theme.className,style:h.theme.style,children:es("div",{ref:n,role:"dialog","aria-modal":"true","aria-label":a,tabIndex:-1,onClick:t,className:`fixed inset-0 z-(--sf-layer-lightbox) outline-none ${l}`,style:r,children:es(OL.Provider,{value:t,children:o})})}),h.host)]}):null}function Ye({className:e="absolute right-5 top-5 flex h-10 w-10 cursor-pointer items-center justify-center border border-fg-dim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",style:t,label:a="Close",children:s="\xD7"}){let c=tK(OL);return es("button",{type:"button","aria-label":a,onClick:l=>{l.stopPropagation(),c()},className:e,style:t,children:s})}import{Fragment as Xe,jsx as Q0,jsxs as d3}from"react/jsx-runtime";var ts=mK({}),as="data-gallery-grid",ku="data-gallery-tile";function vK(e,t){let[a,s]=Cu(null);return dK(()=>{let c=e.current,l=c?.closest(`[${as}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${ku}]`)),n=i.indexOf(c),h=n>=0?{index:n+1,total:i.length}:null;s(m=>m?.index===h?.index&&m?.total===h?.total?m:h)};if(r(),!t)return;let o=new MutationObserver(r);return o.observe(l,{childList:!0,subtree:!0}),()=>o.disconnect()},[e,t]),a}var GL=[{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"},{image:"",href:"#",process:"Category",eyebrow:"Subtitle",name:"Item name",meta:"Detail"}];function fK(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function bK(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=fK(e.name,"gallery-item");return{car:e.eyebrow??"",wheel:e.name??"",process:e.process??"",finish:e.meta??"",imageLabel:`${c}.jpg`,detailLabel:`${c}-detail.jpg`,imageSrc:a||void 0,detailSrc:t[0]||a||void 0,photos:s,href:e.href}}function ss({editing:e=!1,previewHover:t,ratio:a,captionPlace:s,...c}){let{galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o}=uK(ts),i=bK(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=gK(null),m=pK(H=>{h.current=H},[]),u=vK(h,e),d=e&&(!!t||!!o),[v,g]=Cu(!1),[b,f]=Cu(0),w=()=>f(H=>(H-1+n.length)%n.length),z=()=>f(H=>(H+1)%n.length),k=n[b]??i.imageSrc??"",S=Q0(yu,{build:i,forceHover:d,index:u?.index,total:u?.total,ratio:a,captionPlace:s});return d3(Xe,{children:[e?Q0("div",{ref:m,[ku]:"",className:"block w-full text-left",children:S}):Q0("button",{ref:m,[ku]:"",type:"button","aria-label":`Open ${i.car||"build"} on ${i.wheel||"wheel"}`,onClick:()=>{f(0),g(!0)},className:"block w-full cursor-pointer text-left focus:outline-none focus-visible:outline focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2",children:S}),Q0(F8,{open:v,onClose:()=>g(!1),label:`${i.car} on ${i.wheel}`,onPrev:n.length>1?w:void 0,onNext:n.length>1?z:void 0,className:"flex items-center justify-center p-6 backdrop-blur-[8px] max-[700px]:p-3",style:{background:"color-mix(in oklab, var(--bg) 78%, transparent)"},children:d3("div",{onClick:H=>H.stopPropagation(),className:"relative grid w-[min(1800px,100%)] max-h-[calc(100vh-48px)] grid-cols-[1.4fr_1fr] overflow-hidden border border-line bg-bg max-[1100px]:grid-cols-1 max-[1100px]:overflow-auto",style:{boxShadow:"0 60px 120px -20px rgba(0,0,0,0.7)"},children:[Q0(Ye,{label:"Close popup",className:"absolute right-[24px] top-[24px] z-[5] flex h-[56px] w-[56px] items-center justify-center border border-line font-mono text-[length:var(--size-label,21px)] text-fg-dim transition-colors hover:border-accent hover:text-fg",style:{background:"color-mix(in oklab, var(--bg) 70%, transparent)"},children:"\u2715"}),d3("div",{className:"relative flex min-h-[690px] items-center justify-center overflow-hidden bg-surface-2 max-[1100px]:min-h-[450px]",children:[k&&Q0("img",{src:k,alt:`${i.car} \u2014 ${b+1} of ${n.length}`,className:"block h-full max-h-[88vh] w-full object-cover"},k),n.length>1&&d3(Xe,{children:[Q0("button",{type:"button","aria-label":"Previous photo",onClick:w,className:"absolute left-4 top-1/2 flex h-16 w-16 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 font-mono text-[length:var(--size-label,24px)] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25C1"}),Q0("button",{type:"button","aria-label":"Next photo",onClick:z,className:"absolute right-4 top-1/2 flex h-16 w-16 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 font-mono text-[length:var(--size-label,24px)] text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25B7"}),d3("span",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 border border-fg-dim/30 bg-overlay-scrim/50 px-4 py-1.5 font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.22em] text-fg-dim backdrop-blur-[4px]",children:[b+1," / ",n.length]})]})]}),d3("div",{className:"flex flex-col gap-[30px] px-[60px] py-[72px] max-[1100px]:px-9 max-[1100px]:py-[54px]",children:[i.process&&Q0("span",{className:"font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.3em] text-accent",children:M(i.process)}),i.wheel&&Q0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(42px,4.5vw,60px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.025em]",children:Y(i.wheel,!1)}),i.car&&d3("div",{className:"font-heading3 text-[length:var(--size-headingSmall,27px)] leading-[1.4] text-fg",children:["on ",Q0("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em]",children:M(i.car,!0)})]}),d3("dl",{className:"mt-3 grid grid-cols-[auto_1fr] gap-x-7 gap-y-[18px] border-y border-line py-[30px] font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.22em]",children:[i.wheel&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Wheel"}),Q0("dd",{className:"text-fg",children:M(i.wheel)})]}),i.process&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Process"}),Q0("dd",{className:"text-fg",children:M(i.process)})]}),i.finish&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Finish"}),Q0("dd",{className:"text-fg",children:M(i.finish)})]}),i.car&&d3(Xe,{children:[Q0("dt",{className:"text-fg-dim",children:"Vehicle"}),Q0("dd",{className:"text-fg",children:M(i.car)})]})]}),d3("div",{className:"mt-auto flex flex-col gap-3.5 pt-6",children:[d3(L1,{href:i.href||"/wheels",onClick:()=>g(!1),className:"group flex items-center justify-between gap-6 border border-btn bg-btn px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:border-fg hover:bg-fg",children:[Q0("span",{children:"View product"}),Q0("span",{className:"transition-transform group-hover:translate-x-[6px]",children:"\u2192"})]}),d3(L1,{href:l,onClick:()=>g(!1),className:"flex items-center justify-between gap-6 border border-line px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:[Q0("span",{children:"See more builds"}),Q0("span",{children:"\u2192"})]}),d3(L1,{href:r,onClick:()=>g(!1),className:"flex items-center justify-between gap-6 border border-line px-9 py-6 font-mono text-[length:var(--size-label,16px)] uppercase tracking-[0.3em] text-fg transition-colors hover:border-accent hover:text-accent",children:[Q0("span",{children:"Submit your build"}),Q0("span",{children:"\u2192"})]})]})]})]})})]})}import{createContext as wK,useContext as CK,useEffect as Bo,useId as kK,useMemo as MK,useState as V2}from"react";var xK=14,zK=3;function Mu(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function yK(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),Mu(a)}async function qL(e,t,a={}){let s=a.days??xK,c=a.read??y8.getAvailability,l=0,r=0;for(let o=0;o<s;o++){if(a.signal?.aborted)return{outcome:"unreadable"};let i=yK(t,o);try{let n=await c(e,i);if(l=0,r++,n.slots.length>0)return{outcome:"found",date:i,availability:n}}catch{if(l++,l>=zK)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as AK}from"react/jsx-runtime";var WL=wK(null);function C7(){let e=CK(WL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Su=[{id:"example-1",name:"Example service",durationMinutes:45,price:"80.00",description:"What this appointment includes, in a sentence."},{id:"example-2",name:"Second example",durationMinutes:30,price:"0",description:""}];function SK(e){return{timezone:"UTC",slots:[`${e}T09:00:00.000Z`,`${e}T10:30:00.000Z`,`${e}T13:00:00.000Z`].map(t=>({start:t}))}}var Lu={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function LK(e,t){return e&&t?.length===0}function UL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=kK(),c=MK(()=>Mu(new Date),[]),[l,r]=V2(),[o,i]=V2(""),[n,h]=V2(""),[m,u]=V2(c),[d,v]=V2(c),[g,b]=V2(!1),[f,w]=V2(null),[z,k]=V2(),[S,H]=V2(""),[I,P]=V2(""),[D,E]=V2(""),[F,_]=V2(""),[Z,G]=V2(""),[V,j]=V2(()=>Om()),[N,Q]=V2(null),[W,U]=V2(!1),[i1,y1]=V2(!1),[K,c1]=V2(null),[b1,$]=V2("");Bo(()=>{$(Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC")},[]),Bo(()=>{let c0=!1;return y8.listServices().then(l0=>{c0||(r(l0.results),i(l0.currency),h(X1=>X1||l0.results[0]?.id||""))}).catch(()=>{c0||r([])}),()=>{c0=!0}},[]),Bo(()=>{if(g||!n)return;let c0={aborted:!1};return H(""),k(void 0),c1(null),w(null),U(!0),qL(n,c,{signal:c0}).then(l0=>{if(!c0.aborted){if(l0.outcome==="found"){u(l0.date),v(l0.date),k(l0.availability);return}w(l0.outcome==="noneInWindow"?`No times are available in the next ${l0.days} days.`:"We couldn't load available times. Please try again.")}}).finally(()=>{c0.aborted||U(!1)}),()=>{c0.aborted=!0}},[g,n,c]),Bo(()=>{if(!g||!n||!m)return;let c0=!1;return H(""),k(void 0),c1(null),w(null),U(!0),y8.getAvailability(n,m).then(l0=>{c0||(k(l0),l0.slots.length===0&&w("No times are available on this date."))}).catch(()=>{c0||w("We couldn't load available times. Please try again.")}).finally(()=>{c0||U(!1)}),()=>{c0=!0}},[m,g,n]);let u1=l?.find(c0=>c0.id===n),x1=u1?.depositAmountDue!=null,X0=!!(!e&&!i1&&u1&&S&&I.trim()&&D.trim()&&!x1);async function o0(c0){if(c0.preventDefault(),!(!X0||!u1)){y1(!0),c1(null);try{let l0=await y8.create({serviceId:u1.id,start:S,customer:{name:I.trim(),email:D.trim(),phone:F.trim()},notes:Z.trim(),idempotencyKey:V,customerTimezone:b1});Q(l0),j(Om())}catch(l0){c1(l0 instanceof W4&&l0.status===409?"That time was just booked. Choose another available time.":"Your appointment wasn't submitted. Please check your details and try again."),l0 instanceof W4&&l0.status===409&&(H(""),y8.getAvailability(u1.id,m).then(k).catch(()=>{}))}finally{y1(!1)}}}let I1=LK(e,l);return AK(WL.Provider,{value:{fieldPrefix:s,editing:e,services:I1?Su:l,currency:I1?"AUD":o,serviceId:I1?Su[0].id:n,setServiceId:h,service:I1?Su[0]:u1,requiresPayment:I1?!1:x1,date:m,earliestDate:d,setDate:u,setDateTouched:b,availability:I1?SK(m):z,loadingSlots:I1?!1:W,noSlotsMessage:f,selectedStart:I1?`${m}T09:00:00.000Z`:S,setSelectedStart:H,customerTimezone:b1,name:I,setName:P,email:D,setEmail:E,phone:F,setPhone:_,notes:Z,setNotes:G,confirmation:N??(t?Lu:null),submitting:i1,error:K,canSubmit:I1?!1:X0,handleSubmit:o0,sample:!!I1},children:a})}import{jsx as Zo,Fragment as jL,jsxs as KL}from"react/jsx-runtime";var HK="sf-button group inline-flex items-center justify-center gap-2.5 border px-[22px] py-4 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] transition-colors",$L={primary:"border-btn bg-btn text-btn-ink hover:border-btn-2 hover:bg-btn-2",ghost:"border-current bg-transparent hover:bg-white/10"};function c3(e){let{variant:t="primary",arrow:a,glyphBefore:s,className:c,style:l,children:r,href:o,newTab:i,...n}=e,h=`${HK} ${$L[t]??$L.primary} ${c??""}`,m=s?KL(jL,{children:[a!==null&&Zo("span",{"aria-hidden":!0,className:"inline-flex",children:a??"\u2192"}),r]}):KL(jL,{children:[r,a!==null&&Zo("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-[3px]",children:a??"\u2192"})]});return o?Zo(r0,{href:o,className:h,style:l,...i?{target:"_blank",rel:"noopener noreferrer"}:{},children:m}):Zo("button",{type:"button",className:h,style:l,...n,children:m})}import{jsx as A0,jsxs as H3}from"react/jsx-runtime";var cs="w-full border-2 border-line bg-bg px-4 py-3.5 font-[family-name:var(--bk-value-font,var(--font-display))] text-[length:var(--bk-value-size,17px)] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent";function FK(e,t){let a=Number(e);if(a===0)return"Free";try{return new Intl.NumberFormat(void 0,{style:"currency",currency:t}).format(a)}catch{return`${t} ${e}`}}function YL(e,t){try{return new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",timeZone:t}).format(new Date(e))}catch{return new Date(e).toLocaleTimeString([],{hour:"numeric",minute:"2-digit"})}}function XL(e,t){try{return new Intl.DateTimeFormat(void 0,{weekday:"long",day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit",timeZone:t,timeZoneName:"short"}).format(new Date(e))}catch{return new Date(e).toLocaleString()}}var ls="font-[family-name:var(--bk-name-font,var(--font-mono))] text-[length:var(--bk-name-size,12px)]";function Au({number:e,children:t}){return H3("div",{className:"mb-4 flex items-center gap-3",children:[A0("span",{className:"flex size-8 shrink-0 items-center justify-center rounded-full border border-line font-[family-name:var(--bk-step-font,var(--font-mono))] text-[length:var(--bk-step-size,11px)] font-semibold text-fg-dim",children:e}),A0("h3",{className:"font-[family-name:var(--bk-step-font,var(--font-mono))] text-[length:var(--bk-step-size,12px)] font-semibold uppercase tracking-[0.2em] text-fg",children:t})]})}function Do({eyebrow:e,heading:t,intro:a}){return H3("div",{className:"mb-10 max-w-[760px]",children:[(e??"").trim()&&A0("p",{className:"mb-4 font-mono text-[12px] font-semibold uppercase tracking-[0.24em] text-accent",children:e}),(t??"").trim()&&A0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.98] tracking-[-0.025em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:t}),(a??"").trim()&&A0("p",{className:"mt-5 max-w-[660px] font-display text-[17px] leading-[1.65] text-fg-dim",children:a})]})}function Oo({style:e}={}){let{fieldPrefix:t,services:a,currency:s,serviceId:c,setServiceId:l,requiresPayment:r,date:o,earliestDate:i,setDate:n,setDateTouched:h,availability:m,loadingSlots:u,noSlotsMessage:d,selectedStart:v,setSelectedStart:g,customerTimezone:b}=C7();return a?H3("div",{className:"flex flex-col gap-9",style:e,children:[H3("div",{children:[A0(Au,{number:"01",children:"Choose a service"}),A0("div",{className:"grid gap-3 sm:grid-cols-2",children:a.map(f=>{let w=f.id===c;return H3("button",{type:"button","aria-pressed":w,onClick:()=>l(f.id),className:`min-h-11 border p-4 text-left transition-colors ${w?"border-accent bg-accent/10":"border-line bg-bg hover:border-fg-dim"}`,children:[A0("span",{className:"block font-[family-name:var(--bk-name-font,var(--font-display))] text-[length:var(--bk-name-size,18px)] font-medium text-fg",children:f.name}),H3("span",{className:"mt-1 block font-[family-name:var(--bk-value-font,var(--font-mono))] text-[length:var(--bk-value-size,11px)] uppercase tracking-[0.14em] text-fg-dim",children:[f.durationMinutes," min \xB7 ",FK(f.price,s)]}),f.description&&A0("span",{className:"mt-3 block font-[family-name:var(--bk-note-font,var(--font-display))] text-[length:var(--bk-note-size,14px)] leading-[1.5] text-fg-dim",children:f.description})]},f.id)})}),r&&A0("p",{className:"mt-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.14em] text-alert",role:"alert",children:"This service requires an upfront payment and cannot be booked through this form yet."})]}),H3("div",{children:[A0(Au,{number:"02",children:"Choose a date and time"}),A0(Z2,{separate:!0,htmlFor:`${t}-date`,label:"Date",required:!0,labelFace:ls,children:A0("input",{id:`${t}-date`,type:"date",min:i,value:o,onChange:f=>{h(!0),n(f.target.value)},className:cs,required:!0})}),A0("div",{className:"mt-4 grid grid-cols-2 gap-2 sm:grid-cols-3 min-[1200px]:grid-cols-4",role:"group","aria-label":"Available appointment times",children:u?A0("p",{className:"col-span-full py-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.18em] text-fg-dim",children:"Loading times\u2026"}):m?.slots.length?m.slots.map(f=>H3("button",{type:"button","aria-pressed":v===f.start,onClick:()=>g(f.start),className:`min-h-11 border px-3 py-2 font-[family-name:var(--bk-value-font,var(--font-mono))] text-[length:var(--bk-value-size,12px)] font-semibold uppercase tracking-[0.12em] transition-colors ${v===f.start?"border-accent bg-accent text-bg":"border-line bg-bg text-fg hover:border-accent"}`,children:[A0("span",{className:"block",children:YL(f.start,b||m.timezone)}),b&&b!==m.timezone&&H3("span",{className:"mt-0.5 block text-[9px] font-normal tracking-[0.08em] opacity-70",children:[YL(f.start,m.timezone)," business"]})]},f.start)):d?A0("p",{className:"col-span-full py-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.18em] text-fg-dim",role:"status",children:d}):null}),m?.timezone&&H3("p",{className:"mt-3 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,10px)] uppercase tracking-[0.16em] text-fg-dim",children:["Times shown in ",b||m.timezone,b&&b!==m.timezone?` \xB7 business timezone ${m.timezone}`:""]})]})]}):null}function Go({buttonLabel:e,style:t}){let{fieldPrefix:a,editing:s,name:c,setName:l,email:r,setEmail:o,phone:i,setPhone:n,notes:h,setNotes:m,submitting:u,error:d,canSubmit:v}=C7();return H3("div",{className:"sf-card border border-line bg-bg p-5 min-[640px]:p-7",style:t,children:[A0(Au,{number:"03",children:"Your details"}),H3("div",{className:"flex flex-col gap-4",children:[A0(Z2,{separate:!0,htmlFor:`${a}-name`,label:"Name",required:!0,labelFace:ls,children:A0("input",{id:`${a}-name`,type:"text",autoComplete:"name",value:c,onChange:g=>l(g.target.value),className:cs,required:!0})}),A0(Z2,{separate:!0,htmlFor:`${a}-email`,label:"Email",required:!0,labelFace:ls,children:A0("input",{id:`${a}-email`,type:"email",inputMode:"email",autoComplete:"email",value:r,onChange:g=>o(g.target.value),className:cs,required:!0})}),A0(Z2,{separate:!0,htmlFor:`${a}-phone`,label:"Phone",labelFace:ls,children:A0("input",{id:`${a}-phone`,type:"tel",inputMode:"tel",autoComplete:"tel",value:i,onChange:g=>n(g.target.value),className:cs})}),A0(Z2,{separate:!0,htmlFor:`${a}-notes`,label:"What would you like to cover?",labelFace:ls,children:A0("textarea",{id:`${a}-notes`,rows:4,value:h,onChange:g=>m(g.target.value),className:`${cs} resize-y`})})]}),d&&A0("p",{className:"mt-4 font-[family-name:var(--bk-note-font,var(--font-mono))] text-[length:var(--bk-note-size,11px)] uppercase tracking-[0.16em] text-alert",role:"alert",children:d}),A0(c3,{type:s?"button":"submit",disabled:!v,arrow:null,className:"mt-6 w-full disabled:cursor-not-allowed disabled:opacity-50",children:u?"Submitting\u2026":(e??"").trim()||"Book appointment"})]})}function qo({successMessage:e}){let{confirmation:t,customerTimezone:a}=C7();return t?H3("div",{className:"sf-card max-w-[760px] border border-line bg-bg p-6 min-[640px]:p-9",role:"status",children:[H3("p",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.22em] text-accent",children:["Request received \xB7 ",t.bookingNumber]}),A0("h3",{className:"mt-4 font-display text-[28px] font-medium uppercase text-fg",children:t.service}),A0("p",{className:"mt-2 font-display text-[17px] text-fg-dim",children:XL(t.startAt,t.customerTimezone||a||t.timezone)}),t.customerTimezone&&t.timezone!==t.customerTimezone&&H3("p",{className:"mt-1 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:["Business time: ",XL(t.startAt,t.timezone)]}),(e??"").trim()&&A0("p",{className:"mt-5 max-w-[620px] font-serif text-[18px] italic leading-[1.6] text-fg-dim",children:e}),A0(c3,{href:`/book/${encodeURIComponent(t.manageToken)}`,newTab:t!==Lu,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Wo=["step","name","value","note"],Hu={step:"Step",name:"Name",value:"Value",note:"Note"},Uo={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},JL={step:{font:"--bk-step-font",size:"--bk-step-size"},name:{font:"--bk-name-font",size:"--bk-name-size"},value:{font:"--bk-value-font",size:"--bk-value-size"},note:{font:"--bk-note-font",size:"--bk-note-size"}};function TK(e){return typeof e=="string"&&v5.includes(e)?e:null}var PK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function QL(e){let t={};for(let a of Wo){let s=TK(e[Uo[a]]);if(!s)continue;let c=V9({role:s},PK);c.fontFamily&&(t[JL[a].font]=c.fontFamily),c.fontSize&&(t[JL[a].size]=c.fontSize)}return t}import{jsx as Je}from"react/jsx-runtime";var eA=["head","booking","details","confirm"],tA={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Fu({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=C7(),n=QL(r);return e==="head"?Je("div",{className:"min-[960px]:col-span-2",style:n,children:Je(Do,{eyebrow:t,heading:a,intro:s})}):e==="confirm"?o?Je("div",{className:"min-[960px]:col-span-2",style:n,children:Je(qo,{successMessage:l})}):null:o||!i||i.length===0?null:e==="booking"?Je(Oo,{style:n}):e==="details"?Je(Go,{buttonLabel:c,style:n}):null}import{jsx as K0,Fragment as EK,jsxs as F4}from"react/jsx-runtime";var T8="solid",Tu=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function aA(e){return I2(Tu,T8,e)}var Pu="sf-secnum-outline",sA="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",cA=`@supports (-webkit-text-stroke: 1px currentColor){.${Pu}{color:var(--site-surface-2);-webkit-text-stroke:1px var(--site-line)}}`;var rs=(e,t=!1)=>typeof e=="string"?Y(e,t):e,Qe=(e,t=!1)=>typeof e=="string"?M(e,t):e;function s0({num:e,title:t,link:a,logo:s,description:c,accent:l,accentNum:r,numStyle:o=T8,look:i="standard",titleAccent:n,accentTracking:h="-0.02em",spaceBelow:m,rowGap:u,descriptionSize:d,className:v="",eyebrowLook:g=ur}){let b=m??(i==="editorial"?"mb-[60px]":"");if(i==="editorial"){let H=!!t||!!n;return F4("header",{className:`${b} grid grid-cols-[auto_1fr_auto] items-end gap-10 border-b border-line pb-8 max-[1100px]:grid-cols-1 max-[1100px]:gap-3.5 ${v}`.trim(),children:[e&&(typeof e=="string"?K0(V1,{text:e,className:"pb-2"}):K0("span",{className:"pb-2",children:e})),H&&F4("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5.5vw,80px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:[t,n&&F4(EK,{children:[" ",K0("em",{className:"font-serif font-normal italic text-accent",style:{letterSpacing:h},children:n})]})]}),c&&K0("p",{className:"max-w-[360px] pb-1 text-right font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim max-[1100px]:max-w-full max-[1100px]:text-left",children:c})]})}if(i==="simple"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:rs(t)})]})}if(i==="statement"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em] text-fg",children:rs(t,!0)})]})}if(i==="natural"){let H=`flex max-w-[680px] flex-col ${u??"gap-5"} ${b} ${v}`.replace(/\s+/g," ").trim();return F4("div",{className:H,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g}):K0("span",{children:e})),t&&K0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium leading-[1.05] tracking-[-0.03em] max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:rs(t)}),c&&K0("p",{className:`${d??"text-[length:var(--size-body,16px)]"} leading-[1.6] opacity-85`,children:c})]})}if(i==="essay"){let H=`${b} ${v}`.trim();return F4("div",{className:H||void 0,children:[e&&(typeof e=="string"?K0(V1,{text:e,look:g,className:"mb-4 block"}):K0("span",{className:"mb-4 block",children:e})),t&&K0("h2",{className:"font-heading2 text-[length:var(--sf-heading-max,var(--size-headingMedium,38px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:var(--size-headingSmall,28px)]",children:rs(t)})]})}let f=!!c||!!a,w=!!t,z=aA(o)==="outlined",k="font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em]",S=null;if(e)if(z)S=K0("span",{className:`${sA} text-fg-dim ${Pu}`,children:Qe(e)});else if(r&&!l&&typeof e=="string"){let H=e.indexOf("/"),I=H===-1?e:e.slice(0,H),P=H===-1?"":e.slice(H);S=F4("span",{className:k,children:[K0("span",{className:"text-accent",children:Qe(I)}),P&&K0("span",{className:"text-fg-dim",children:Qe(P)})]})}else S=K0("span",{className:`${k} ${l?"text-accent":"text-fg-dim"}`,children:Qe(e)});return F4("div",{className:"mb-16 grid grid-cols-[auto_1fr_auto] items-end gap-10 border-b border-line pb-6 max-[800px]:mb-9 max-[800px]:grid-cols-1 max-[800px]:gap-3 max-[800px]:pb-5",children:[z&&e&&K0("style",{children:cA}),F4("div",{className:"flex flex-col items-start gap-3",children:[s?.src&&K0("img",{src:H2(s.src),alt:s.alt,className:"h-8 w-auto object-contain"}),S]}),w&&K0("h2",{className:l?"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,5vw,64px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-[0.95] tracking-[-0.025em]":"font-heading2 text-[length:min(var(--size-headingMedium,56px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-none tracking-[-0.03em] whitespace-pre-line max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] max-[800px]:leading-[1]",children:rs(t)}),f&&F4("div",{className:"flex flex-col items-end gap-3 max-[800px]:items-start",children:[c&&K0("p",{className:"max-w-[340px] font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim text-right max-[800px]:max-w-full max-[800px]:text-left",children:Qe(c)}),a&&F4(r0,{href:a.href,className:"inline-flex items-center gap-2 whitespace-nowrap font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:[Qe(a.text),K0("span",{"aria-hidden":!0,children:"\u2192"})]})]})]})}import{jsx as T4,jsxs as os}from"react/jsx-runtime";function VK(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function lA({eyebrow:e,title:t}){return os("div",{className:"flex flex-col gap-4",children:[e&&T4(V1,{text:e,scaled:!1}),t&&T4("h2",{className:"font-display text-[min(clamp(40px,5vw,72px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(t,!0)})]})}function jo({body:e,buttonLabel:t,consent:a,form:s,submission:c,showForm:l,resolving:r,editing:o}){return os("div",{className:"flex flex-col gap-7",children:[e&&z0(e).map((i,n)=>T4("p",{className:"max-w-[480px] font-display text-[16px] leading-[1.6] text-fg-dim",children:M(i)},n)),l&&(s?c.done?T4("p",{role:"status",className:"max-w-[480px] font-[family-name:var(--sb-thanks-font,var(--font-serif))] text-[length:var(--sb-thanks-size,17px)] italic leading-[1.6] text-fg-dim",children:Ze(s)}):os("form",{className:"grid grid-cols-2 gap-2",onSubmit:c.handleSubmit,children:[s.fields.map(i=>{let n=["border border-line bg-transparent px-4 py-3.5 font-[family-name:var(--sb-field-font,var(--font-mono))] text-[length:var(--sb-field-size,14px)] tracking-[0.1em] text-fg outline-none focus:border-accent",VK(i)?"col-span-2":""].join(" ");return i.type==="checkbox"?os("label",{className:"col-span-2 flex items-start gap-3 font-[family-name:var(--sb-tick-font,var(--font-mono))] text-[length:var(--sb-tick-size,12px)] uppercase tracking-[0.18em] text-fg-dim",children:[T4(f7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),className:"mt-0.5 size-4 accent-accent"}),os("span",{children:[i.label,i.required?T4("span",{className:"text-accent",children:" *"}):null]})]},i.key):T4(f7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),rows:4,placeholder:i.placeholder||i.label,className:i.type==="textarea"?`${n} resize-y`:n},i.key)}),T4(De,{value:c.honeypot,onChange:c.setHoneypot}),c.error&&T4("p",{role:"alert",className:"col-span-2 font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:c.error}),t&&T4("button",{type:o?"button":"submit",disabled:c.submitting,className:"col-span-2 cursor-pointer bg-btn px-6 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:c.submitting?"Sending\u2026":M(t)})]}):T4("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim",children:r?p("Loading form\u2026"):p("Choose a form in the inspector, under Form \u2014 until then this form is hidden on the live page and nothing can be submitted.")})),l&&a&&T4("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:M(a)})]})}var Ko=["field","tick","thanks"],Eu={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},$o={field:"styleField",tick:"styleTick",thanks:"styleThanks"},rA={field:{font:"--sb-field-font",size:"--sb-field-size"},tick:{font:"--sb-tick-font",size:"--sb-tick-size"},thanks:{font:"--sb-thanks-font",size:"--sb-thanks-size"}};function NK(e){return typeof e=="string"&&v5.includes(e)?e:null}var _K={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function oA(e){let t={};for(let a of Ko){let s=NK(e[$o[a]]);if(!s)continue;let c=V9({role:s},_K);c.fontFamily&&(t[rA[a].font]=c.fontFamily),c.fontSize&&(t[rA[a].size]=c.fontSize)}return t}import{jsx as Yo}from"react/jsx-runtime";var iA=["head","form"],nA={head:"Head",form:"Form"};function Vu({region:e,eyebrow:t,title:a,body:s,buttonText:c,consent:l,formSlug:r,form:o,editing:i=!1,...n}){let h=H5(r,o),m=v7({form:h,formSlug:r,editing:i}),u=oA(n);return e==="head"?Yo("div",{style:u,children:Yo(s0,{look:"statement",num:t,title:a})}):Yo("div",{style:u,children:Yo(jo,{body:s??"",buttonLabel:c??"",consent:l??"",form:h,submission:m,showForm:!!h||i,resolving:h===void 0,editing:i})})}var IK={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>eA.map(e=>({region:e,name:tA[e]})),addBlocked:()=>p("A Booking Form is these three boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},SubmitBuild:{slot:"boxes",childType:"SubmitBox",addLabel:"Add box",fixed:!0,seeds:()=>iA.map(e=>({region:e,name:nA[e]})),addBlocked:()=>p("A Submit-a-build section is these two boxes. They cannot be added to or removed."),skipSeed:e=>e.layout!=="boxes"},Collections:{slot:"cards",childType:"CollectionCard",addLabel:"Add card",seeds:()=>Array.from({length:BL},()=>({collection:null}))},ProductGrid:{slot:"products",childType:"ProductRef",addLabel:"Add product",seeds:()=>[{code:""},{code:""},{code:""}],legacy:e=>Array.isArray(e.design_codes)?e.design_codes.map(t=>t?.code).filter(t=>!!t).map(t=>({code:t})):[]},GalleryB:{slot:"items",childType:"GalleryItem",addLabel:"Add image",seeds:()=>GL.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};nz(IK);function et(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as RK}from"react/jsx-runtime";import{OpacityIcon as BK}from"efficient-easel/icons";var hA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow","Limited release"),title:O("Heading","Banner headline"),body:O("Body","A line or two of supporting copy."),_gBackground:x("Background image"),imageSrc:q1("Image","image/*"),overlay:s1("Overlay",RK(BK,{}),0,100,5,60,"%"),_gButton:x("Button"),...H4,_gLayout:x("Layout")}};import{jsx as OK}from"react/jsx-runtime";import{jsx as is,jsxs as Nu,Fragment as ZK}from"react/jsx-runtime";import{Fragment as DK}from"react";function mA({items:e,meta:t,editing:a=!1}){let s=(e??[]).filter(l=>l?.label?.trim()),c=s.length>0?s:a?[{label:p("Breadcrumb")}]:[];return c.length===0&&!t?null:Nu("nav",{className:"flex items-center gap-4 border-b border-line px-[var(--sf-site-gutter,40px)] py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-4",children:[c.map((l,r)=>{let o=r===c.length-1;return Nu(DK,{children:[r>0&&is("span",{className:"opacity-40",children:"/"}),l.href&&!o?is(r0,{href:l.href,className:"hover:text-fg",children:R0(l.label)}):is("span",{className:o?"text-fg":void 0,children:R0(l.label)})]},r)}),t&&Nu(ZK,{children:[is("span",{className:"opacity-40",children:"\xB7"}),is("span",{children:M(t)})]})]})}function $4(e,t,a){return e||(a?.isEditing?p(t):void 0)}function C1(e,t,a){let s=Array.isArray(e)?e:[];return s.length?s:a?.isEditing?t:[]}function y(e,t,a){let s=F2(e);if(!s.hidden)return $4(s.text,t,a)}function e2(e,t,a){return F2(e).hidden?"":y(e,t,a)}function W3(e,t,a){return{text:y(e,u2.text,a),href:t||u2.href}}var _u={meta:"Trailing note"},GK=()=>[{label:p("Home"),href:"/"},{label:p("Section"),href:""}],pA={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>OK(mA,{items:C1(e,GK(),a),meta:y(t,_u.meta,a),editing:a?.isEditing})};var uA={fields:{_gContent:x("Content"),items:{type:"array",label:"Crumbs",arrayFields:{label:q("Label"),href:e3(q("Link"))},getItemSummary:e=>e?.label||"Crumb"},meta:T("Trailing note",_u.meta)}};import{jsx as g3,jsxs as qK}from"react/jsx-runtime";import{ButtonIcon as WK,ButtonIconIcon as UK,IconAfterTextIcon as jK,IconBeforeTextIcon as KK,StylesIcon as $K,WidthIcon as YK}from"efficient-easel/icons";import*as XK from"efficient-easel/icons";import{SettingsField as JK}from"efficient-easel/panel";import{useSelectedFields as vA}from"efficient-easel/easel";import{IconPicker as QK,Segmented as e$}from"efficient-shell/ui";function Xo(e){return typeof e=="boolean"?e:!0}var Iu=["none","arrow-right","arrow-long-right","arrow-up-right","chevron-right","external","cart","bag","tag","email","location","play","download","search","car"];function Ru(e){return typeof e=="string"&&Iu.includes(e)?e:void 0}function dA(e,t){return Ru(e)??(Xo(t)?"arrow-right":"none")}function Jo(e){return e==="before"?"before":"after"}function gA(e){return e==="fill"?"fill":"fit"}var Bu=e=>({...Fl({type:"custom",render:()=>g3(Tl,{})},"always"),reachedBy:e});function t$(e){let t=(e==="none"?"no-symbol":e).replace(/(^|-)([a-z])/g,(s,c,l)=>l.toUpperCase()),a=XK[`${t}Icon`];return a?g3(a,{size:16}):null}var a$=Iu.map(e=>({value:e,icon:t$(e)}));function s$({value:e,onChange:t}){let a=vA(),s=a.values.href,c=typeof e=="string"?e:e&&typeof e=="object"&&"text"in e?String(e.text??""):"";return g3(Zy,{label:"Button",icon:g3(WK,{size:18}),text:c,onTextChange:t,link:typeof s=="string"?s:"",onLinkChange:l=>a.onChange("href",l)})}function c$({value:e,onChange:t}){let a=vA(),s=dA(e,a.values.arrow),c=Jo(a.values.iconPosition);return g3(JK,{label:p("Icon"),icon:g3(UK,{size:18}),children:qK("div",{className:"flex items-center gap-2",children:[g3(QK,{label:p("Icon"),value:s,emptyValue:"none",options:a$,onChange:t}),s!=="none"&&g3(e$,{label:p("Icon position"),value:c,onChange:l=>a.onChange("iconPosition",l),options:[{value:"before",icon:g3(KK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon before text")}),title:p("Icon before text")},{value:"after",icon:g3(jK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon after text")}),title:p("Icon after text")}]})]})})}var fA={fields:{label:$y(q("Button"),e=>g3(s$,{value:e.value,onChange:e.onChange})),href:{...H1("Button link"),...Bu("label")},_dSize:Y1("Size"),widthFit:v1("Width",g3(YK,{}),[{label:"Fit content",value:"fit"},{label:"Fill",value:"fill"}],"fit"),_gStyle:x("Style"),variant:v1("Style",g3($K,{}),[{label:"Filled",value:"primary"},{label:"Outline",value:"ghost"}],"primary"),icon:{type:"custom",render:e=>g3(c$,{value:e.value,onChange:e.onChange})},iconPosition:Bu("icon"),arrow:Bu("icon"),_dLayout:Y1("Layout"),align:V5()}};import{jsx as zA}from"react/jsx-runtime";import{ColumnsIcon as h$,StylesIcon as m$}from"efficient-easel/icons";import{jsx as i$}from"react/jsx-runtime";import{jsx as tt,Fragment as l$,jsxs as Zu}from"react/jsx-runtime";var r$="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[72px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",o$="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[72px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function bA({look:e,eyebrow:t,title:a,items:s,columns:c,omitHead:l=!1,editing:r=!1}={}){let o=Math.min(4,Math.max(2,c??3)),i=(s??[]).filter(h=>r||(h.title??"").trim()||(h.body??"").trim()),n=!!(t??"").trim()||!!(a??"").trim();return!r&&!n&&i.length===0?null:tt("section",{className:"relative z-[2] bg-surface",children:Zu("div",{className:l?o$:r$,children:[l?null:Zu(l$,{children:[(t??"").trim()&&tt(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&tt("h2",{className:"mb-9 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-7 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),i.length>0&&tt("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--cd-cols),minmax(0,1fr))]",style:{"--cd-cols":String(o)},children:i.map((h,m)=>Zu("div",{className:"bg-bg p-8 max-[800px]:p-7",children:[tt("div",{className:"mb-3 font-heading3 text-[length:var(--size-headingSmall,20px)] font-medium uppercase tracking-[0.02em] text-fg",children:M((h.title??"").trim()||"Card title")}),tt("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:M((h.body??"").trim()||"A short line about this card.")})]},m))})]})})}var ns={eyebrow:"Label",title:"Section *heading.*"},n$=()=>[{title:p("Card title one"),body:p("A short line about this card.")},{title:p("Card title two"),body:p("A short line about this card.")},{title:p("Card title three"),body:p("A short line about this card.")}],xA={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return i$(bA,{look:o4(e.eyebrowLook,"Cards"),eyebrow:a(y(e.eyebrow,ns.eyebrow,e.puck)),title:a(y(e.title,ns.title,e.puck)),omitHead:t,items:C1(e.items,n$(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var yA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",ns.eyebrow),eyebrowLook:g1("Eyebrow style",zA(m$,{}),[...k4],l7("Cards")),title:O("Heading",ns.title),items:{type:"array",label:"Cards",arrayFields:{title:f1("Card title"),body:E1("Card body")},defaultItemProps:{title:"",body:""},getItemSummary:e=>e?.title||e?.body||"Card"},_gStyle:x("Style"),columns:s1("Columns",zA(h$,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Cards.headRows)};import{jsx as p$}from"react/jsx-runtime";import{StickyIcon as u$}from"efficient-easel/icons";var wA={fields:{tabs:{type:"array",label:"Tabs",arrayFields:{label:q("Label"),count:q("Count")},getItemSummary:e=>e?.label?`${e.label}${e.count?` \xB7 ${e.count}`:""}`:"Tab"},activeTab:e3(q("Active tab","All")),_gLinks:x("Links"),links:{type:"array",label:"Right links",arrayFields:{label:q("Label"),href:e3(q("Link"))},getItemSummary:e=>e?.label||"Link"},_gStyle:x("Style"),sticky:l1("Stick under header",!0,p$(u$,{}))}};import{jsx as x$}from"react/jsx-runtime";import{StylesIcon as z$}from"efficient-easel/icons";import{jsx as f$}from"react/jsx-runtime";import{jsx as r2,jsxs as Y4}from"react/jsx-runtime";function Du(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var CA=[100,70,46,30,19,12];function kA(e){return`color-mix(in srgb, var(--accent) ${CA[e%CA.length]}%, var(--bg))`}function d$({data:e,suffix:t}){let a=Math.max(...e.map(s=>s.value),0)||1;return r2("div",{className:"flex w-full flex-col gap-6",children:e.map((s,c)=>Y4("div",{children:[Y4("div",{className:"mb-2 flex items-baseline justify-between gap-4",children:[r2("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg/60",children:M(s.label)}),Y4("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium text-fg",children:[Du(s.value),t]})]}),r2("div",{className:"h-[10px] border border-line bg-bg",children:r2("div",{className:"h-full bg-accent",style:{width:`${Math.max(s.value/a*100,s.value===0?0:2)}%`}})})]},c))})}function g$({data:e,suffix:t}){let a={l:42,r:42,t:36,b:38},s=640-a.l-a.r,c=300-a.t-a.b,l=Math.max(...e.map(h=>h.value),0)||1,r=e.length>1?s/(e.length-1):0,o=e.map((h,m)=>({x:a.l+(e.length>1?m*r:s/2),y:a.t+c-h.value/l*c})),i=o.map((h,m)=>`${m===0?"M":"L"}${h.x},${h.y}`).join(" "),n=`${i} L${o[o.length-1].x},${a.t+c} L${o[0].x},${a.t+c} Z`;return Y4("svg",{viewBox:"0 0 640 300",className:"w-full",role:"img","aria-hidden":!0,children:[[.25,.5,.75,1].map(h=>r2("line",{x1:a.l,x2:640-a.r,y1:a.t+c*(1-h),y2:a.t+c*(1-h),stroke:"var(--site-line)",strokeWidth:"1"},h)),r2("line",{x1:a.l,x2:640-a.r,y1:a.t+c,y2:a.t+c,stroke:"var(--site-line)",strokeWidth:"1.5"}),r2("path",{d:n,fill:"var(--accent)",opacity:"0.13"}),r2("path",{d:i,fill:"none",stroke:"var(--accent)",strokeWidth:"2.5"}),o.map((h,m)=>Y4("g",{children:[r2("circle",{cx:h.x,cy:h.y,r:"4",fill:"var(--accent)"}),Y4("text",{x:h.x,y:h.y-12,textAnchor:"middle",className:"font-display",fontSize:"14",fill:"var(--fg)",children:[Du(e[m].value),t]}),r2("text",{x:h.x,y:288,textAnchor:"middle",className:"font-mono",fontSize:"10",letterSpacing:"0.1em",fill:"var(--fg)",opacity:"0.55",children:e[m].label.toUpperCase()})]},m))]})}function v$({data:e,suffix:t}){let a=e.reduce((o,i)=>o+i.value,0)||1,s=80,c=2*Math.PI*s,l=0,r=e.map((o,i)=>{let n=o.value/a,h={frac:n,dash:Math.max(n*c-3,0),off:l,ink:kA(i)};return l+=n*c,h});return Y4("div",{className:"flex w-full flex-wrap items-center justify-center gap-10",children:[r2("svg",{viewBox:"0 0 200 200",className:"w-[220px] max-w-full -rotate-90",role:"img","aria-hidden":!0,children:r.map((o,i)=>r2("circle",{cx:"100",cy:"100",r:s,fill:"none",stroke:o.ink,strokeWidth:"34",strokeDasharray:`${o.dash} ${c-o.dash}`,strokeDashoffset:-o.off},i))}),r2("ul",{className:"flex min-w-[200px] flex-1 flex-col gap-3",children:e.map((o,i)=>Y4("li",{className:"flex items-baseline gap-3",children:[r2("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] flex-shrink-0 rotate-45",style:{background:kA(i)}}),r2("span",{className:"flex-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.12em] text-fg/60",children:M(o.label)}),r2("span",{className:"font-display text-[length:var(--size-body,15px)] font-medium text-fg",children:t?`${Du(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function MA({eyebrow:e,title:t,body:a,chartStyle:s,items:c,valueSuffix:l,caption:r,editing:o=!1}={}){let i=(l??"").trim()===""?"":l??"",n=(c??[]).map(d=>({label:(d.label??"").trim(),value:parseFloat(d.value??"")})).filter(d=>o?!0:d.label&&Number.isFinite(d.value)).map(d=>({label:d.label||"\u2014",value:Number.isFinite(d.value)?d.value:0})),h=!!(e??"").trim()||!!(t??"").trim();if(!o&&!h&&n.length===0)return null;let m=s??"bars",u=n.length===0?null:m==="line"&&n.length>1?r2(g$,{data:n,suffix:i}):m==="donut"?r2(v$,{data:n,suffix:i}):r2(d$,{data:n,suffix:i});return r2("section",{className:"relative z-[2] border-y border-line bg-surface",children:Y4("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] items-center gap-14 px-[var(--sf-site-gutter,40px)] py-[76px] min-[960px]:[grid-template-columns:minmax(0,5fr)_minmax(0,7fr)] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[Y4("div",{children:[(e??"").trim()&&r2("span",{className:"inline-block bg-accent px-3.5 py-1.5 font-mono text-[length:var(--size-label,12px)] font-semibold uppercase tracking-[0.16em] text-bg",children:M(e??"")}),(t??"").trim()&&r2("h2",{className:"mt-5 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-[1.04] tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)}),(a??"").trim()&&r2("p",{className:"mt-5 max-w-[46ch] text-[length:var(--size-body,15px)] leading-relaxed text-fg/65",children:a})]}),Y4("div",{children:[u,(r??"").trim()&&r2("p",{className:"mt-4 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg/40",children:r})]})]})})}var hs={eyebrow:"By the numbers",title:`A picture worth
23
23
  *a thousand rows.*`},b$=()=>[{label:p("Before"),value:"9"},{label:p("After"),value:"3"},{label:p("With us"),value:"1"}],SA={label:"Chart",defaultProps:{eyebrow:"",title:"",body:"",items:[],caption:"",chartStyle:"bars",valueSuffix:""},render:({eyebrow:e,title:t,body:a,items:s,caption:c,chartStyle:l,valueSuffix:r,puck:o})=>f$(MA,{eyebrow:y(e,hs.eyebrow,o),title:y(t,hs.title,o),body:a,items:C1(s,b$(),o),chartStyle:l,valueSuffix:r,caption:c,editing:o?.isEditing})};var LA={fields:{_gContent:x("Content"),eyebrow:T("Chip label",hs.eyebrow),title:O("Heading",hs.title),body:O("Body",""),items:{type:"array",label:"Data points",arrayFields:{label:f1("Label"),value:q("Value")},defaultItemProps:{label:"",value:""},getItemSummary:e=>[e?.label,e?.value].filter(Boolean).join(" \xB7 ")||"Point"},caption:T("Caption","Illustrative example"),_gStyle:x("Style"),chartStyle:g1("Chart style",x$(z$,{}),[{label:"Bars (comparison / funnel)",value:"bars"},{label:"Line (trend)",value:"line"},{label:"Donut (split of a whole)",value:"donut"}],"bars"),valueSuffix:T("Value suffix","%")}};import{jsx as R$}from"react/jsx-runtime";import{jsx as A1,Fragment as qu,jsxs as X4}from"react/jsx-runtime";import{useId as C$,useState as k$}from"react";import{InspectorUpLevel as ps}from"efficient-easel/chrome";import{useEasel as M$}from"efficient-easel/easel";import{ListField as TA}from"efficient-easel/fields";import{SettingsField as PA}from"efficient-easel/panel";import{ClockIcon as AA,ContrastIcon as S$,GlobeIcon as L$,LinkIcon as A$,LocationIcon as H$,PhoneIcon as F$,SquareIcon as T$,TypeIcon as Wu}from"efficient-easel/icons";var y$=["tall","square","wide"],w$="tall";function Qo(e){return y$.includes(String(e??""))?String(e):w$}var o2={sectionNumber:"\xB7 Locations",heading:"Our *locations.*",tagline:"Visit us in person \u2014 find your nearest studio below.",galleryKicker:"Gallery",galleryHint:"Hover to see in colour \xB7 click to jump",apiKey:"",mapId:"",mapTheme:"auto"},ms=[{photo:"",group:"",groupName:"",name:"City name",state:"State",country:"Country",timezone:"GMT \xB7 UTC +0",address:`Address line one
24
24
  Address line two`,phone:"+00 000 0000",hours:"Mon\u2013Fri 9:00\u201318:00",lat:0,lng:0,mapsUrl:""},{photo:"",group:"",groupName:"",name:"City name",state:"State",country:"Country",timezone:"GMT \xB7 UTC +0",address:`Address line one
25
25
  Address line two`,phone:"+00 000 0000",hours:"Mon\u2013Fri 9:00\u201318:00",lat:0,lng:0,mapsUrl:""}];function ei(e){let t=String(e??"").split(" \xB7 ");return{state:(t[0]??"").trim(),country:(t[1]??"").trim()}}var P8="other",f0={routingNumber:"02 \xB7 Routing",routingTagline:"What can we help you with?",groups:[{id:"fitment",eyebrow:"A \xB7 Label",title:"Group one",copy:"Short description of this routing group.",response:"< 48h"},{id:"trade",eyebrow:"B \xB7 Label",title:"Group two",copy:"Short description of this routing group.",response:"< 24h"},{id:"press",eyebrow:"C \xB7 Label",title:"Group three",copy:"Short description of this routing group.",response:"< 48h"},{id:"order",eyebrow:"D \xB7 Label",title:"Group four",copy:"Short description of this routing group.",response:"< 24h"}],formNumber:"03 \xB7 Message",formHeading:"Send *a note.*",metaLines:["Encrypted in transit","Stored 12 months"],showOther:!0,otherLabel:"Other",otherNoteTitle:"No matching team",otherNoteBody:"Tell us what you need in the message field below \u2014 we'll route it to whoever can help.",buttonText:"Send Message \u2192",consent:"By submitting, you agree to our privacy policy. We never share contact details with third parties.",channels:[{label:"Team one",value:"team-one@email.com",href:"mailto:team-one@email.com",sub:"Detail \xB7 Detail",groupId:"fitment"},{label:"Team two",value:"team-two@email.com",href:"mailto:team-two@email.com",sub:"Detail \xB7 Detail",groupId:"trade"},{label:"Team three",value:"team-three@email.com",href:"mailto:team-three@email.com",sub:"Detail \xB7 Detail",groupId:"press"},{label:"Team four",value:"team-four@email.com",href:"mailto:team-four@email.com",sub:"Detail \xB7 Detail",groupId:"order"},{label:"Phone",value:"+1 (000) 000-0000",href:"tel:+10000000000",sub:"Mon\u2013Fri \xB7 9:00\u201318:00"}]};function Ou(e){return kl(e)}var Uu=(e,t)=>t||e?nC(e,t):p("Ungrouped");function P$(e){let t=[];return e.forEach((a,s)=>{let c=c7(a),l=t.find(r=>r.key===c);l||(l={key:c,name:String(a?.groupName??""),indices:[]},t.push(l)),l.indices.push(s)}),t}function Gu({children:e}){return A1("div",{style:{fontSize:11,fontWeight:600,letterSpacing:"0.06em",textTransform:"uppercase",color:"var(--fg-dim, #999)",margin:"14px 0 6px"},children:e})}var EA={width:"100%",height:32,textAlign:"left",display:"flex",alignItems:"center",justifyContent:"space-between",gap:8,padding:"0 12px",fontSize:12,border:"1px solid var(--border-strong, #d0d0d0)",borderRadius:6,background:"transparent",color:"inherit",cursor:"inherit"},E$={padding:0,border:"none",background:"none",font:"inherit",fontSize:12,color:"var(--sf-accent, #2563eb)",cursor:"pointer"},VA={...E$,color:"#d85a30"};function v6({label:e,value:t,placeholder:a,textarea:s,icon:c,onChange:l,onBlur:r,onKeyDown:o}){let i=C$();return A1(PA,{label:e,icon:c??A1(Wu,{}),htmlFor:i,children:s?A1("textarea",{id:i,value:t,placeholder:a,onChange:n=>l(n.target.value)}):A1("input",{id:i,type:"text",value:t,placeholder:a,onChange:n=>l(n.target.value),onBlur:r,onKeyDown:o})})}var V$=[{label:"Auto",value:"auto"},{label:"Dark",value:"dark"},{label:"Light",value:"light"}],N$=[{label:"Tall (3:4)",value:"tall"},{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"}];function HA({label:e,icon:t,options:a,value:s,onChange:c}){return A1(PA,{label:e,icon:t,children:A1("div",{role:"group","aria-label":e,style:{display:"flex",gap:4,flex:1},children:a.map(l=>{let r=s===l.value;return A1("button",{type:"button","aria-pressed":r,onClick:()=>c(l.value),style:{flex:1,padding:"6px 8px",fontSize:12,borderRadius:6,cursor:"pointer",border:`1px solid ${r?"var(--sf-accent, #2563eb)":"var(--border-strong, #d0d0d0)"}`,background:r?"var(--sf-accent, #2563eb)":"transparent",color:r?"#fff":"inherit",fontWeight:r?500:400},children:p(l.label)},l.value)})})})}function FA({props:e,setSection:t,headOnly:a}){let s=r=>String(e[r]??""),c=e.mapTheme||o2.mapTheme,l=o2;return X4(qu,{children:[!a&&A1(Gu,{children:p("Section")}),A1(v6,{label:p("Section number"),value:s("sectionNumber"),placeholder:l.sectionNumber,onChange:r=>t({sectionNumber:r})}),A1(v6,{label:p("Heading"),textarea:!0,value:s("heading"),placeholder:l.heading,onChange:r=>t({heading:r})}),A1(v6,{label:p("Body"),textarea:!0,value:s("tagline"),placeholder:l.tagline,onChange:r=>t({tagline:r})}),a?null:X4(qu,{children:[A1(Gu,{children:p("City strip")}),A1(v6,{label:p("Eyebrow"),value:s("galleryKicker"),placeholder:l.galleryKicker,onChange:r=>t({galleryKicker:r})}),A1(v6,{label:p("Hint"),value:s("galleryHint"),placeholder:l.galleryHint,onChange:r=>t({galleryHint:r})}),A1(HA,{label:p("Shape"),icon:A1(T$,{}),options:N$,value:Qo(e.imageShape),onChange:r=>t({imageShape:r})}),A1(Gu,{children:p("Map & Theme")}),A1(HA,{label:p("Map theme"),icon:A1(S$,{}),options:V$,value:c,onChange:r=>t({mapTheme:r})})]})]})}function _$({cards:e,groupKey:t,onChange:a,onBack:s,onOpenCity:c,onNavigate:l}){let r=e.map((d,v)=>c7(d)===t?v:-1).filter(d=>d>=0),o=String(e[r[0]]?.groupName??""),i=new Set(e.map(c7).filter(d=>d!==t)),[n,h]=k$(t),m=d=>a(e.map(v=>c7(v)===t?{...v,...d}:v)),u=()=>{let d=n;if(d!==t){if(i.has(d)){h(t);return}a(e.map(v=>c7(v)===t?{...v,group:d}:v)),l(d)}};return X4("div",{className:"sf-locations-view",children:[A1(ps,{inline:!0,name:p("Section"),onSelect:s}),A1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:Uu(t,o)}),A1(v6,{label:p("Group heading"),value:n,placeholder:p("e.g. Americas"),onChange:h,onBlur:u,onKeyDown:d=>{d.key==="Enter"&&d.currentTarget.blur()}}),i.has(n)&&n!==t&&A1("p",{className:"sf-note sf-note--error",role:"alert",children:p("Another group already uses this heading \u2014 pick a different one.")}),A1(v6,{label:p("Group name"),value:o,placeholder:p("Shown beside the heading"),onChange:d=>m({groupName:d})}),A1(TA,{label:p("Cities in this group"),noun:p("city"),items:r.map(d=>e[d]),onChange:d=>a(hC(e,t,d)),newItem:()=>({...Im,group:t,groupName:o}),open:null,onOpen:()=>{},renderItem:()=>null,removeOnRow:!1,canDuplicate:()=>!1,renderRow:(d,v)=>X4("button",{type:"button",style:EA,onClick:()=>c(r[v]),children:[A1("span",{children:d?.name||p("City")}),A1("span",{"aria-hidden":"true",children:"\u203A"})]})}),A1("div",{style:{marginTop:12},children:A1("button",{type:"button",style:VA,onClick:()=>{a(e.filter(d=>c7(d)!==t)),s()},children:p3("Delete group ({n} city)","Delete group ({n} cities)",r.length)})})]})}function NA({value:e,onChange:t}){let a=Array.isArray(e)?e:[],s=iC(),c=Sw(),l=P$(a),{appState:r,selectedItem:o}=M$(g=>g),i=My(),n=o?.props??{},h=g=>{if(!o)return;let b=(r.data.content??[]).findIndex(f=>f.props.id===o.props.id);b<0||i.replaceComponent(iz,b,{type:o.type,props:{...o.props,...g}})},m=(g,b)=>t(a.map((f,w)=>w===g?{...f,...b}:f)),u=()=>{let g=new Set(l.map(w=>w.key)),b=l.length+1,f=`Group ${b}`;for(;g.has(f);)f=`Group ${++b}`;return f};if(s.level==="texts")return X4("div",{className:"sf-locations-view",children:[A1(ps,{inline:!0,name:p("Locations"),onSelect:()=>q4({level:"groups"})}),A1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:p("Texts")}),A1(FA,{props:n,setSection:h,headOnly:!0})]});if(s.level==="image"){let g=a[s.index];return g?X4("div",{className:"sf-locations-view",children:[A1(ps,{inline:!0,name:String(g.name??"")||p("City"),onSelect:()=>q4({level:"city",index:s.index})}),A1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:p("Image")}),A1(Hy,{value:g.photo||"",onChange:b=>m(s.index,{photo:b}),label:"Image",accept:"image/*"})]}):d()}if(s.level==="map"){let g=a[s.index];return g?X4("div",{className:"sf-locations-view",children:[A1(ps,{inline:!0,name:String(g.name??"")||p("City"),onSelect:()=>q4({level:"city",index:s.index})}),A1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:p("Map")}),A1($l,{value:g.geocode,onChange:b=>m(s.index,{geocode:b}),label:"Coordinates"}),A1(v6,{label:p("Directions link"),icon:A1(A$,{}),value:String(g.mapsUrl??""),onChange:b=>m(s.index,{mapsUrl:b})})]}):d()}if(s.level==="city"){let g=s.index,b=a[g];if(!b)return d();let f=c7(b),w=(k,S)=>m(g,{[k]:S}),z=(k,S,H,I=!1)=>A1(v6,{label:S,icon:H,textarea:I,value:String(b[k]??""),onChange:P=>w(k,P)});return X4("div",{className:"sf-locations-view",children:[A1(ps,{inline:!0,name:Uu(f,String(b.groupName??"")),onSelect:()=>q4({level:"group",key:f})}),A1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:b.name||p("City")}),z("name",p("Location name"),A1(Wu,{})),z("state",p("State / Province"),A1(Wu,{})),z("country",p("Country"),A1(L$,{})),z("address",p("Address"),A1(H$,{}),!0),z("phone",p("Phone"),A1(F$,{})),z("hours",p("Opening hours"),A1(AA,{})),z("timezone",p("Timezone chip"),A1(AA,{})),A1("div",{style:{marginTop:12},children:A1("button",{type:"button",style:VA,onClick:()=>{t(a.filter((k,S)=>S!==g)),q4({level:"group",key:f})},children:p("Delete city")})})]})}if(s.level==="group")return l.some(g=>g.key===s.key)?A1(_$,{cards:a,groupKey:s.key,onChange:t,onBack:()=>q4({level:"groups"}),onOpenCity:g=>q4({level:"city",index:g}),onNavigate:g=>q4({level:"group",key:g})},s.key):d();function d(){return X4("div",{className:"sf-locations-view",children:[A1(FA,{props:n,setSection:h}),!c&&A1(qu,{children:v()})]})}function v(){return A1(TA,{label:p("Locations"),noun:p("group"),items:l,onChange:g=>{let b=g.find(f=>!l.some(w=>w.key===f.key));t(mC(a,g.map(f=>f.key),f=>[{...Im,group:f,groupName:""}])),b&&q4({level:"group",key:b.key})},newItem:()=>({key:u(),name:"",indices:[]}),open:null,onOpen:()=>{},renderItem:()=>null,removeOnRow:!1,canDuplicate:()=>!1,above:l.length===0?A1("div",{style:{fontSize:12,color:"var(--fg-dim, #999)",padding:"4px 0"},children:p("No locations yet.")}):void 0,renderRow:g=>X4("button",{type:"button",style:EA,onClick:()=>q4({level:"group",key:g.key}),children:[A1("span",{style:{fontWeight:500},children:Uu(g.key,g.name)}),X4("span",{style:{color:"var(--fg-dim, #999)"},children:[p3("{n} city","{n} cities",g.indices.length)," \u203A"]})]})})}return d()}var I$="/geocode.json";async function _A(e){let t=e.trim();if(!t)return null;if(!_x())throw new Error("geocode_unavailable");let a=await fetch(`${pr()}${I$}?q=${encodeURIComponent(t)}`,{headers:{Accept:"application/json"}});if(!a.ok)throw new Error(`geocode_http_${a.status}`);let s=await a.json();if(!s||typeof s!="object")return null;let{lat:c,lng:l,label:r}=s,o=Number(c),i=Number(l);return!Number.isFinite(o)||!Number.isFinite(i)?null:{lat:o,lng:i,label:String(r??"")}}var ti=e=>typeof e=="number"&&Number.isFinite(e);function ai(e){return e.some(t=>{let a=t?.geocode;return a?a.pending||a.manual&&a.lat===void 0&&a.lng===void 0?!0:ti(a.lat)&&a.lat!==t.lat||ti(a.lng)&&a.lng!==t.lng:!1})}async function si(e,t,{geocode:a=_A,courtesyGapMs:s=1100}={}){let c=r=>new Promise(o=>setTimeout(o,r)),l=e.slice();if(e.some(r=>r?.geocode?.pending)){let r=[],o=!1;for(let i of e){if(!i?.geocode?.pending){r.push(i);continue}o&&s>0&&await c(s),o=!0;try{let n=await a(t(i));r.push(n?{...i,lat:n.lat,lng:n.lng,geocode:{...i.geocode,pending:!1,ok:!0,status:`Found \u2014 ${n.label.split(",").slice(0,3).join(",").trim()}`,lat:n.lat,lng:n.lng}}:{...i,geocode:{...i.geocode,pending:!1,ok:!1,status:"No match \u2014 check the address and try again."}})}catch{r.push({...i,geocode:{...i.geocode,pending:!1,ok:!1,status:"Lookup busy \u2014 try again in a moment."}})}}l=r}return l.map(r=>{let o=r?.geocode;if(!o)return r;if(o.manual&&o.lat===void 0&&o.lng===void 0)return{...r,geocode:{...o,lat:r.lat,lng:r.lng}};let i=ti(o.lat)&&o.lat!==r.lat?o.lat:r.lat,n=ti(o.lng)&&o.lng!==r.lng?o.lng:r.lng;return i!==r.lat||n!==r.lng?{...r,lat:i,lng:n}:r})}var IA={fields:{locations:{type:"custom",render:({value:e,onChange:t})=>R$(NA,{value:e,onChange:t})}},resolveData:async e=>{let t=e.props,a=t.locations??[];if(!ai(a))return e;let s=await si(a,c=>{let l=ei(c.region);return[String(c.address??"").replace(/\s*\n+\s*/g,", "),c.name,String(c.state??"").trim()||l.state,String(c.country??"").trim()||l.country].map(r=>String(r??"").trim()).filter(Boolean).join(", ")});return{...e,props:{...t,locations:s}}}};import{jsx as OA}from"react/jsx-runtime";import{ClockIcon as K$,TagIcon as $$}from"efficient-easel/icons";import{jsx as j$}from"react/jsx-runtime";import{jsx as _5,jsxs as ci,Fragment as Z$}from"react/jsx-runtime";import{useEffect as D$,useState as BA}from"react";import{Fragment as B$,jsx as RA}from"react/jsx-runtime";function at({kind:e,children:t}){let a=Uz(e);return a?RA("span",{[Lz]:a.stamp,children:t}):RA(B$,{children:t})}var O$=24*3600*1e3,G$=[{key:"hours",label:"Hours"},{key:"minutes",label:"Minutes"},{key:"seconds",label:"Seconds"}];function q$(e,t){return Math.max(0,Math.ceil((e-t)/1e3))}function W$(e){let t=Date.parse((e??"").trim());return Number.isFinite(t)?t:null}var U$=e=>String(e).padStart(2,"0");function ZA({title:e,zeroText:t,endsAt:a,showUnits:s=!0,editing:c=!1}={}){let l=W$(a),[r]=BA(()=>Date.now()+O$),o=l??(c?r:null),[i,n]=BA(()=>Date.now());if(D$(()=>{if(o===null)return;n(Date.now());let g=window.setInterval(()=>n(Date.now()),1e3);return()=>window.clearInterval(g)},[o]),o===null)return null;let h=q$(o,i),m=[Math.floor(h/3600),Math.floor(h%3600/60),h%60],u=(e??"").trim(),d=(t??"").trim(),v=`${m[0]} hours, ${m[1]} minutes and ${m[2]} seconds left`;return _5("section",{className:"relative z-[2] bg-bg",role:"timer","aria-live":"off",children:ci("div",{className:"mx-auto flex max-w-[var(--sf-site-width,1600px)] flex-col items-center gap-4 px-[var(--sf-site-gutter,40px)] py-12 text-center max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[u&&_5("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:M(u)}),h===0?d&&_5("p",{className:"font-heading3 text-[length:min(var(--size-headingSmall,32px),var(--sf-heading-max,9999px))] font-medium leading-tight text-fg",children:Y(d,!1)}):ci(Z$,{children:[_5("span",{className:"sr-only",children:v}),_5("div",{"aria-hidden":!0,className:"flex items-start gap-[clamp(8px,2vw,24px)]",children:G$.map((g,b)=>ci("div",{className:"contents",children:[b>0&&_5("span",{className:"font-mono text-[length:clamp(32px,7vw,80px)] leading-none text-accent",children:":"}),ci("div",{className:"flex min-w-0 flex-col items-center gap-2",children:[_5(at,{kind:dm,children:_5("span",{"data-countdown-unit":g.key,...c?{[Y6]:dm}:{},suppressHydrationWarning:!0,className:"font-mono text-[length:clamp(40px,8vw,96px)] font-medium leading-none tabular-nums text-fg",children:U$(m[b])})}),s&&_5(at,{kind:N9,children:_5("span",{...c?{[Y6]:N9}:{},className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-fg-dim",children:g.label})})]})]},g.key))})]})]})})}var li={title:"Back online in",zeroText:"Almost done. Back very soon."},DA={label:"Countdown",defaultProps:{...li,endsAt:"",showUnits:!0},render:({title:e,zeroText:t,endsAt:a,showUnits:s,puck:c})=>j$(ZA,{title:e,zeroText:t,endsAt:a,showUnits:s,editing:c?.isEditing})};var GA={fields:{title:T("Heading",li.title),zeroText:T("At zero",li.zeroText),endsAt:iw("Ends",OA(K$,{}),"In your own time zone. Every visitor counts down to the same moment."),showUnits:l1("Unit labels",!0,OA($$,{}))}};var qA={fields:{html:{type:"textarea",label:"HTML"}}};import{jsx as eY}from"react/jsx-runtime";import{StylesIcon as tY}from"efficient-easel/icons";var E8="line",ju=[{label:"Line",value:"line"},{label:"Stripes \xB7 fine",value:"stripes-fine"},{label:"Stripes \xB7 medium",value:"stripes-medium"},{label:"Stripes \xB7 bold",value:"stripes-bold"}],Y$={"stripes-fine":{ink:4,period:12},"stripes-medium":{ink:8,period:18},"stripes-bold":{ink:14,period:28}},WA=28,X$="-45deg",J$="color-mix(in oklab, var(--accent) 50%, var(--bg))";function Q$(e){return e!=="line"}function UA(e){return I2(ju,E8,e)}function jA(e){if(!Q$(e))return null;let{ink:t,period:a}=Y$[e];return`repeating-linear-gradient(${X$}, ${J$} 0 ${t}px, transparent ${t}px ${a}px)`}var KA={fields:{style:g1("Style",eY(tY,{}),ju,E8),spacing:{type:"select",options:[{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]}}};import{jsx as rY}from"react/jsx-runtime";import{jsx as f6,jsxs as us}from"react/jsx-runtime";function aY(e,t){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||`section-${t+1}`}function sY(e){let t=[];for(let a of e.replace(/\r\n?/g,`
@@ -55,7 +55,7 @@ ${s}`:t.push({type:"p",text:s})});return t}var cY=()=>[{label:p("First section")
55
55
  <div style="font-family:var(--font-role-label),var(--font-mono-fallback);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:${N.fgDim};margin-top:4px;">${md(G.country)}</div>
56
56
  </div>
57
57
  `),Z.open({map:_,anchor:V}),w.current=c},[c,H,P,e]),i?B8("div",{ref:m,className:"sf-card footprint-map relative aspect-[16/9] w-full overflow-hidden border border-line max-[720px]:aspect-[4/5]",style:{backgroundColor:E},children:[f2("style",{dangerouslySetInnerHTML:{__html:bX(P.info)}}),f2(UH,{pal:n?h:void 0}),f2("div",{ref:u,className:"gmap-canvas absolute inset-0 transition-opacity duration-500",style:{opacity:H?1:0}}),f2("div",{className:["pointer-events-none absolute inset-0 flex items-center justify-center font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim transition-opacity duration-500",H?"opacity-0":"opacity-100"].join(" "),children:"Loading map\u2026"})]}):B8("div",{className:["relative aspect-[16/9] w-full overflow-hidden border border-line max-[720px]:aspect-[4/5]",n?"":"bg-bg"].join(" "),style:n?{backgroundColor:h.background}:void 0,children:[f2(UH,{pal:n?h:void 0}),f2("div",{className:["absolute inset-0 flex items-center justify-center px-6 text-center font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em]",n?"":"text-fg-dim"].join(" "),style:n?{color:h.info.fgDim}:void 0,children:r?"Add office coordinates to plot the map":"Add a Google Maps API key to show the map"})]})}var Z8={sectionNumber:A.sectionNumber,heading:`${A.heading}
58
- *${A.accent}*`,tagline:A.body},yX=()=>[{role:p("Headquarters"),city:p("City"),country:p("Country"),address:p("Street address"),lat:0,lng:0,hq:!0},{role:p("Office"),city:p("City"),country:p("Country"),address:p("Street address"),lat:0,lng:0,hq:!1}],$H={label:"Locations Map",defaultProps:{sectionNumber:"",heading:"",tagline:"",offices:[],apiKey:R8.apiKey,mapId:R8.mapId,mapTheme:R8.mapTheme,padTop:120,padBottom:120},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return zX(KH,{sectionNumber:a(y(e.sectionNumber,Z8.sectionNumber,e.puck)),heading:a(y(e.heading,Z8.heading,e.puck)),tagline:a(y(e.tagline,Z8.tagline,e.puck)),omitHead:t,offices:C1(e.offices,yX(),e.puck),apiKey:a1(e.apiKey),mapId:a1(e.mapId),mapTheme:e.mapTheme??R8.mapTheme,padTop:t?0:typeof e.padTop=="number"?e.padTop:120,padBottom:typeof e.padBottom=="number"?e.padBottom:120,editing:e.puck?.isEditing})}};var XH={fields:{_gContent:x("Section"),sectionNumber:T("Section number",Z8.sectionNumber),heading:O("Heading",Z8.heading),tagline:O("Body",Z8.tagline),_gOffices:x("Offices"),offices:{type:"array",label:"Offices",arrayFields:{role:q("Role"),city:q("City"),country:q("Region \xB7 country"),address:f1("Address"),group:q("Group"),hq:l1("HQ",!1,YH(wX,{})),geocode:c2($l,{label:"Coordinates"})},defaultItemProps:{role:"Sales & Distribution",city:"City",country:"Country",address:"",group:"",hq:!1,lat:0,lng:0},getItemSummary:e=>e?.city||"Office"},mapTheme:v1("Map theme",YH(CX,{}),[{label:"Auto",value:"auto"},{label:"Dark",value:"dark"},{label:"Light",value:"light"}],R8.mapTheme),_dLayout:Y1("Layout"),...u3("Footprint")},resolveData:async e=>{let t=e.props,a=t.offices??[];if(!ai(a))return e;let s=await si(a,c=>[c.address,c.city,c.country].map(l=>String(l??"").replace(/\*/g,"").trim()).filter(Boolean).join(", "));return{...e,props:{...t,offices:s}}},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Footprint.headRows)};import{jsx as tF}from"react/jsx-runtime";import{ColumnsIcon as MX,PhoneIcon as SX}from"efficient-easel/icons";import{jsx as kX}from"react/jsx-runtime";import{jsx as JH}from"react/jsx-runtime";function QH({columns:e,mobileColumns:t,gap:a,contained:s=!0,fillHeight:c=!1,content:l}){let r=c?" h-full":"",o=`${bs} py-6 ${xs}${r}`,i=`w-full py-6${r}`,n=nl(e),h=hl(t,e),m=B3("Grid",a,"both");return JH(ot,{contained:s,framedClass:o,fillClass:i,children:JH(l,{className:`sf-grid-zone grid${m.className}${r}`,style:{...m.style,"--sf-grid-cols":String(n),"--sf-grid-cols-phone":String(h)},minEmptyHeight:120})})}var pd={content:{type:"slot"}},eF={label:"Grid",fields:pd,defaultProps:{columns:"3",content:[]},render:e=>kX(QH,{columns:e.columns,mobileColumns:e.mobileColumns,gap:e.gap,contained:e.contained,fillHeight:Ml(e),content:e.content})};var aF={fields:{columns:s1("Columns",tF(MX,{}),1,uz,1,gz),mobileColumns:s1("Columns on phone",tF(SX,{}),lm,dz,1,lm),gap:Z3("Grid"),content:pd.content}};import{jsx as LX}from"react/jsx-runtime";var sF={fields:{text:O("Heading",A.heading),level:g1("Level",LX(c4,{noun:"heading"}),[{label:"H1",value:"1"},{label:"H2",value:"2"},{label:"H3",value:"3"},{label:"H4",value:"4"},{label:"H5",value:"5"},{label:"H6",value:"6"}],"2"),align:V5()}};import{jsx as O2}from"react/jsx-runtime";import{ClockIcon as FX,EyeIcon as dd,OpacityIcon as TX,PhoneIcon as lF,PlayIcon as PX,SlideArrowsBareIcon as EX,SlideArrowsRoundIcon as VX,SlideArrowsSquareIcon as NX,SlidePickerBarIcon as _X,SlidePickerCardsIcon as IX,SlidePickerDotsIcon as RX,SlidePickerNumbersIcon as BX,SquareIcon as rF}from"efficient-easel/icons";import{efficientLooks as ZX}from"efficient-shell/icons/efficient-looks";import{jsx as AX}from"react/jsx-runtime";var ud={slides:{type:"slot"}},cF={label:"Hero Slideshow",fields:ud,defaultProps:{alignment:"left",textureOpacity:40,autoplay:!1,autoplayInterval:6,showTicker:!0,tickerItems:rC.map(e=>({text:e}))},render:({slides:e,alignment:t,textureOpacity:a,showTexture:s,textureColor:c,phoneUpDown:l,phoneSideways:r,autoplay:o,autoplayInterval:i,showTicker:n,tickerItems:h,heightDesktop:m,heightMobile:u,showPicker:d,pickerShape:v,pickerPlacement:g,showArrows:b,arrowsShape:f,arrowsPlacement:w,puck:z})=>AX(oC,{slides:e,alignment:t,textureOpacity:a,showTexture:s,textureColor:c,phoneUpDown:l,phoneSideways:r,autoplay:o,autoplayInterval:i,showTicker:n,tickerItems:h,heightDesktop:m,heightMobile:u,showPicker:d,pickerShape:v,pickerPlacement:g,showArrows:b,arrowsShape:f,arrowsPlacement:w,editing:z?.isEditing})};var DX=ZX.looks?.solid?.["slide-arrows-round"],OX={cards:O2(IX,{}),dots:O2(RX,{}),numbers:O2(BX,{}),bar:O2(_X,{})},GX={outline:O2(VX,{}),solid:O2(DX,{}),square:O2(NX,{}),bare:O2(EX,{})},oF={fields:{_dDevice:B9(),_gContent:x("Content"),slides:ud.slides,_gStyle:x("Style"),alignment:V5(),_gTexture:x("Texture"),showTexture:l1("Show texture",!0,O2(dd,{})),textureColor:y5("Texture color",ez),textureOpacity:s1("Texture opacity",O2(TX,{}),0,100,1,40,"%"),_gLayout:x("Layout"),heightDesktop:g6("desktop"),heightMobile:g6("mobile"),_gAutoplay:x("Auto-slide"),autoplay:l1("Auto-advance slides",!1,O2(PX,{})),autoplayInterval:s1("Still time per slide",O2(FX,{}),2,15,1,6,"s"),_gPicker:x("Slide picker"),showPicker:l1("Show slide picker",Yw,O2(dd,{})),pickerShape:v1("Slide picker shape",O2(rF,{}),jw.map(e=>({label:$w[e],value:e,picture:OX[e]})),Kw),pickerPlacement:o6("Slide picker placement",{stacking:!1,fallback:Uw}),_gArrows:x("Arrows"),showArrows:l1("Show arrows",Ww,O2(dd,{})),arrowsShape:v1("Arrows shape",O2(rF,{}),Ow.map(e=>({label:qw[e],value:e,picture:GX[e]})),Gw),arrowsPlacement:o6("Arrows placement",{stacking:!1,fallback:Dw}),_gPhone:Q2("mobile",x("On a phone")),phoneUpDown:Q2("mobile",v1(Yx,O2(lF,{}),Jx(),Kx)),phoneSideways:Q2("mobile",v1(Xx,O2(lF,{}),Qx(),$x))}};import{jsx as xi}from"react/jsx-runtime";import{NudgeIcon as uF,WidthIcon as dF}from"efficient-easel/icons";import{jsx as qX}from"react/jsx-runtime";import{jsx as iF}from"react/jsx-runtime";function nF({placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,dragRef:v}){let g=lz(e),b=cm(t),f=cm(a),w=B3("HeroGroup",c,Sl("HeroGroup",l)==="column"?"block":"inline"),z={"--sf-hg-row":cz(g),justifySelf:sz(g).column};typeof s=="number"&&Number.isFinite(s)&&(z["--sf-hg-w"]=`${rz(s)}%`),(b!==0||f!==0)&&(z["--sf-hg-nudge"]=`${b}px ${f}px`);let k=R9(n,h,m,u);return iF("div",{className:k?`sf-hero-group ${k.className}`:"sf-hero-group","data-hg":g,style:k?{...z,...k.style}:z,ref:v??void 0,children:d?iF(d,{className:["sf-hero-group-blocks flex",zy("HeroGroup",l),Il(r,o),Rl(i)].filter(Boolean).join(" ")+w.className,style:w.style,minEmptyHeight:40}):null})}var gd={content:{type:"slot",allow:Gx}},hF={label:Zx,inline:!0,fields:gd,defaultProps:{placement:az,nudgeX:0,nudgeY:0,content:[]},render:({placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,puck:v})=>qX(nF,{placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,dragRef:v?.dragRef})};var gF={fields:{_gContent:x("Content"),name:Y9(e3(q("Box name",A.boxName))),content:gd.content,_gLayout:x("Layout"),placement:o6("Placement",{stacking:!0}),width:s1("Width",xi(dF,{}),30,100,5,60,"%"),direction:cw("HeroGroup"),gap:Z3("HeroGroup"),justify:ql(),align:Wl(),wrap:Ul(),_gNudge:x("Nudge"),nudgeX:s1("Sideways",xi(uF,{}),-40,40,1,0,"px"),nudgeY:s1("Up and down",xi(uF,{}),-40,40,1,0,"px"),...x5({phone:!0})},resolveFields:(e,{fields:t,appState:a})=>{let s=typeof e.props.id=="string"?e.props.id:"";if(il(a?.data,s)===0)return t;let c={...t};return delete c.placement,c.width=s1("Width",xi(dF,{}),30,100,5,100,"%"),c}};import{jsx as zi}from"react/jsx-runtime";import{MediaIcon as aJ,OpacityIcon as xF,PlacementIcon as sJ}from"efficient-easel/icons";var S7="bottom",L7="#0A0A0A",vd=[{label:"Bottom",value:"bottom",cell:"bottom"},{label:"Top",value:"top",cell:"top"},{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"}],jX={bottom:180,top:0,left:270,right:90},KX=[[.55,0],[.15,18],[null,35],[null,55],[.85,100]],$X=[[null,33],[.6,67],[.94,100]];function YX(e,t){let a=/^#[0-9a-f]{6}$/i.test(e)?e:L7,s=parseInt(a.slice(1),16);return`rgba(${s>>16&255},${s>>8&255},${s&255},${t})`}function XX(e){return I2(vd,S7,e)}function vF(e=L7,t=S7){let a=XX(t),s=(a==="top"||a==="bottom"?KX:$X).map(([c,l])=>`${c===null?"transparent":YX(e,c)} ${l}%`);return`linear-gradient(${jX[a]}deg, ${s.join(", ")})`}import{jsx as eJ}from"react/jsx-runtime";import{jsx as ht,jsxs as JX}from"react/jsx-runtime";import{useRef as QX}from"react";function fF({overlay:e=100,overlayColor:t=L7,overlayPosition:a=S7,mediaType:s="image",mediaSrc:c,poster:l,objectPosition:r,tintColor:o="#000000",tintOpacity:i=0,heightDesktop:n,heightMobile:h,boxes:m,editing:u=!1}){let d=Jw(n,h),v=d?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",g=d?{"--sf-hero-h-d":ne(n),"--sf-hero-h-m":ne(h)}:void 0,b=s==="video",f=b?s4(c):void 0,w=b?s4(l):s4(c)??s4(l),z=QX(null);return JX("section",{ref:z,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${v} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:g,children:[ht("div",{className:"absolute inset-0 z-[1]",children:ht(jx,{videoSrc:f,posterSrc:w,showVideo:b,objectPosition:r})}),i>0&&ht("div",{className:"pointer-events-none absolute inset-0 z-[2]",style:{background:o,opacity:Math.min(Math.max(i,0),100)/100}}),ht("div",{className:"pointer-events-none absolute inset-0 z-[2]",style:{background:vF(t,a),opacity:Math.min(Math.max(e,0),100)/100}}),m&&ht("div",{className:["sf-hero-group-layer absolute inset-0 z-[3] mx-auto","max-w-[min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))]","px-[var(--sf-site-gutter,40px)] pt-[140px] pb-14",u?"sf-hero-group-layer-edit":""].filter(Boolean).join(" "),style:g5,children:ht(m,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}import{FOCAL_DEFAULT as tJ}from"efficient-shell/format";var fd={boxes:{type:"slot",allow:["HeroGroup"]}},bF={label:"Hero",fields:fd,defaultProps:{mediaType:"image",imageFocal:tJ,tintColor:"#000000",tintOpacity:0,overlay:100,overlayColor:L7,overlayPosition:S7},render:({mediaType:e,mediaImage:t,mediaVideo:a,poster:s,imageFocal:c,tintColor:l,tintOpacity:r,overlay:o,overlayColor:i,overlayPosition:n,heightDesktop:h,heightMobile:m,boxes:u,puck:d})=>eJ(fF,{mediaType:e,mediaSrc:(e==="image"?t:a)||void 0,poster:s||void 0,objectPosition:e==="image"&&c||void 0,tintColor:l,tintOpacity:e==="image"?r:0,overlay:o,overlayColor:i,overlayPosition:n,heightDesktop:h,heightMobile:m,boxes:u,editing:d?.isEditing})};var zF={fields:{_dDevice:B9(),boxNotice:Io("HeroSingle"),boxes:fd.boxes,_gStyle:x("Style"),overlay:s1("Overlay",zi(xF,{}),0,100,5,100,"%"),overlayColor:y5("Overlay color",L7),overlayPosition:jl("Overlay position",vd,S7,"A corner would need a diagonal ramp, which this overlay does not draw.",zi(sJ,{})),_gLayout:x("Layout"),heightDesktop:g6("desktop"),heightMobile:g6("mobile"),_gMedia:x("Media"),mediaType:v1("Type",zi(aJ,{}),Kl,"image"),mediaImage:q1("Background image","image/*","Upload a background image"),imageFocal:J9("Image focus",K9),mediaVideo:q1("Background video","video/*","Upload a background video"),poster:q1("Video poster","image/*","Upload a poster still"),_gTint:x("Image tint"),tintColor:y5("Tint color","#000000"),tintOpacity:s1("Tint opacity",zi(xF,{}),0,100,5,0,"%")},resolveFields:(e,{fields:t})=>{let a=e.props.mediaType??"image",s={...t};return a==="image"?(delete s.mediaVideo,delete s.poster):(delete s.mediaImage,delete s.imageFocal,delete s._gTint,delete s.tintColor,delete s.tintOpacity),s}};import{jsx as xd}from"react/jsx-runtime";import{MediaIcon as rJ,OpacityIcon as oJ,PlayIcon as iJ}from"efficient-easel/icons";import{jsx as cJ}from"react/jsx-runtime";import{FOCAL_DEFAULT as lJ}from"efficient-shell/format";var bd={groups:{type:"slot",allow:["HeroGroup"]}},yF={label:"Hero Slide",fields:bd,defaultProps:{mediaType:"video",videoSpeed:100,imageFocal:lJ,tintColor:"#000000",overlay:0},render:({name:e,process:t,mediaType:a,mediaVideo:s,mediaImage:c,poster:l,mediaSrc:r,videoSpeed:o,imageFocal:i,tintColor:n,overlay:h,groups:m,puck:u,...d})=>{let v=I9({...d,sectionAccent:f5(d.sectionAccent)});return cJ(tz,{themeClassName:v?.className,themeStyle:v?.style,name:e||void 0,process:y(t,"Label",u),mediaType:a,mediaSrc:(a==="image"?c:s||r)||void 0,videoSpeed:typeof o=="number"?o:void 0,poster:l||void 0,objectPosition:a==="image"&&i||void 0,tintColor:n,tintOpacity:a==="image"?h:0,groups:m,editing:u?.isEditing})}};var wF={fields:{_gContent:x("Content"),name:Y9(q("Slide name",A.slideName)),process:T("Reel label","Label"),groupNotice:Io("HeroSlide"),groups:bd.groups,_gMedia:x("Media"),mediaType:v1("Type",xd(rJ,{}),Kl,"video"),mediaVideo:q1("Background video","video/*","Upload a background video"),videoSpeed:s1("Playback speed",xd(iJ,{}),25,100,5,100,"%"),mediaImage:q1("Background image","image/*","Upload a background image"),imageFocal:J9("Image focus",K9),poster:q1("Video poster","image/*","Upload a poster still"),_gTint:x("Image tint"),tintColor:y5("Tint color","#000000"),overlay:s1("Overlay",xd(oJ,{}),0,100,5,0,"%")},resolveFields:(e,{fields:t})=>{let a=e.props.mediaType??"video",s={...t};return a==="image"?(delete s.mediaVideo,delete s.videoSpeed,delete s.poster):(delete s.mediaImage,delete s.imageFocal,delete s._gTint,delete s.tintColor,delete s.overlay),s}};import{jsx as nJ}from"react/jsx-runtime";var CF=["cover","contain"],zd={cover:"Cover",contain:"Contain"},yi="Image fit";function mt(e,t){return CF.includes(e)?e:t}function kF(){return CF.map(e=>({label:zd[e],value:e}))}function MF(e){return e==="contain"?"object-contain":"object-cover"}function wi(e,t){return e!=="auto"&&t==="cover"}import{ImageIcon as hJ}from"efficient-easel/icons";var SF={fields:{_gImage:x("Image"),src:q1("Image","image/*"),alt:q("Alt text"),aspect:{type:"select",label:"Aspect ratio",options:[{label:"Auto",value:"auto"},{label:"21 : 9",value:"21/9"},{label:"16 : 9",value:"16/9"},{label:"4 : 3",value:"4/3"},{label:"1 : 1",value:"1/1"}]},fit:g1(yi,nJ(hJ,{}),kF(),"cover"),focal:J9("Image focus",K9,"src"),href:H1("Link"),_gStyle:x("Style"),grayscale:je(),_gShape:x("Shape"),corners:mw(),cornerSides:Jy()},resolveFields:(e,{fields:t})=>{let a=e.props??{};if(wi(a.aspect,mt(a.fit,"cover")))return t;let s={...t};return delete s.focal,s}};import{jsx as mJ}from"react/jsx-runtime";var LF={fields:{_gContent:x("Content"),eyebrow:T("Chip label","Integrations"),title:O("Heading",`Plays well with
58
+ *${A.accent}*`,tagline:A.body},yX=()=>[{role:p("Headquarters"),city:p("City"),country:p("Country"),address:p("Street address"),lat:0,lng:0,hq:!0},{role:p("Office"),city:p("City"),country:p("Country"),address:p("Street address"),lat:0,lng:0,hq:!1}],$H={label:"Locations Map",defaultProps:{sectionNumber:"",heading:"",tagline:"",offices:[],apiKey:R8.apiKey,mapId:R8.mapId,mapTheme:R8.mapTheme,padTop:120,padBottom:120},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return zX(KH,{sectionNumber:a(y(e.sectionNumber,Z8.sectionNumber,e.puck)),heading:a(y(e.heading,Z8.heading,e.puck)),tagline:a(y(e.tagline,Z8.tagline,e.puck)),omitHead:t,offices:C1(e.offices,yX(),e.puck),apiKey:a1(e.apiKey),mapId:a1(e.mapId),mapTheme:e.mapTheme??R8.mapTheme,padTop:t?0:typeof e.padTop=="number"?e.padTop:120,padBottom:typeof e.padBottom=="number"?e.padBottom:120,editing:e.puck?.isEditing})}};var XH={fields:{_gContent:x("Section"),sectionNumber:T("Section number",Z8.sectionNumber),heading:O("Heading",Z8.heading),tagline:O("Body",Z8.tagline),_gOffices:x("Offices"),offices:{type:"array",label:"Offices",arrayFields:{role:q("Role"),city:q("City"),country:q("Region \xB7 country"),address:f1("Address"),group:q("Group"),hq:l1("HQ",!1,YH(wX,{})),geocode:c2($l,{label:"Coordinates"})},defaultItemProps:{role:"Sales & Distribution",city:"City",country:"Country",address:"",group:"",hq:!1,lat:0,lng:0},getItemSummary:e=>e?.city||"Office"},mapTheme:v1("Map theme",YH(CX,{}),[{label:"Auto",value:"auto"},{label:"Dark",value:"dark"},{label:"Light",value:"light"}],R8.mapTheme),_dLayout:Y1("Layout"),...u3("Footprint")},resolveData:async e=>{let t=e.props,a=t.offices??[];if(!ai(a))return e;let s=await si(a,c=>[c.address,c.city,c.country].map(l=>String(l??"").replace(/\*/g,"").trim()).filter(Boolean).join(", "));return{...e,props:{...t,offices:s}}},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Footprint.headRows)};import{jsx as tF}from"react/jsx-runtime";import{ColumnsIcon as MX,PhoneIcon as SX}from"efficient-easel/icons";import{jsx as kX}from"react/jsx-runtime";import{jsx as JH}from"react/jsx-runtime";function QH({columns:e,mobileColumns:t,gap:a,contained:s=!0,fillHeight:c=!1,content:l}){let r=c?" h-full":"",o=`${bs} py-6 ${xs}${r}`,i=`w-full py-6${r}`,n=nl(e),h=hl(t,e),m=B3("Grid",a,"both");return JH(ot,{contained:s,framedClass:o,fillClass:i,children:JH(l,{className:`sf-grid-zone grid${m.className}${r}`,style:{...m.style,"--sf-grid-cols":String(n),"--sf-grid-cols-phone":String(h)},minEmptyHeight:120})})}var pd={content:{type:"slot"}},eF={label:"Grid",fields:pd,defaultProps:{columns:"3",content:[]},render:e=>kX(QH,{columns:e.columns,mobileColumns:e.mobileColumns,gap:e.gap,contained:e.contained,fillHeight:Ml(e),content:e.content})};var aF={fields:{columns:s1("Columns",tF(MX,{}),1,uz,1,gz),mobileColumns:s1("Columns on phone",tF(SX,{}),lm,dz,1,lm),gap:Z3("Grid"),content:pd.content}};import{jsx as LX}from"react/jsx-runtime";var sF={fields:{text:O("Heading",A.heading),level:g1("Level",LX(c4,{noun:"heading"}),[{label:"H1",value:"1"},{label:"H2",value:"2"},{label:"H3",value:"3"},{label:"H4",value:"4"},{label:"H5",value:"5"},{label:"H6",value:"6"}],"2"),align:V5()}};import{jsx as O2}from"react/jsx-runtime";import{ClockIcon as FX,EyeIcon as dd,OpacityIcon as TX,PhoneIcon as lF,PlayIcon as PX,SlideArrowsBareIcon as EX,SlideArrowsRoundIcon as VX,SlideArrowsSquareIcon as NX,SlidePickerBarIcon as _X,SlidePickerCardsIcon as IX,SlidePickerDotsIcon as RX,SlidePickerNumbersIcon as BX,SquareIcon as rF}from"efficient-easel/icons";import{efficientLooks as ZX}from"efficient-shell/icons/efficient-looks";import{jsx as AX}from"react/jsx-runtime";var ud={slides:{type:"slot"}},cF={label:"Hero Slideshow",fields:ud,defaultProps:{alignment:"left",textureOpacity:40,autoplay:!1,autoplayInterval:6,showTicker:!0,tickerItems:rC.map(e=>({text:e}))},render:({slides:e,alignment:t,textureOpacity:a,showTexture:s,textureColor:c,phoneUpDown:l,phoneSideways:r,autoplay:o,autoplayInterval:i,showTicker:n,tickerItems:h,heightDesktop:m,heightMobile:u,showPicker:d,pickerShape:v,pickerPlacement:g,showArrows:b,arrowsShape:f,arrowsPlacement:w,puck:z})=>AX(oC,{slides:e,alignment:t,textureOpacity:a,showTexture:s,textureColor:c,phoneUpDown:l,phoneSideways:r,autoplay:o,autoplayInterval:i,showTicker:n,tickerItems:h,heightDesktop:m,heightMobile:u,showPicker:d,pickerShape:v,pickerPlacement:g,showArrows:b,arrowsShape:f,arrowsPlacement:w,editing:z?.isEditing})};var DX=ZX.looks?.solid?.["slide-arrows-round"],OX={cards:O2(IX,{}),dots:O2(RX,{}),numbers:O2(BX,{}),bar:O2(_X,{})},GX={outline:O2(VX,{}),solid:O2(DX,{}),square:O2(NX,{}),bare:O2(EX,{})},oF={fields:{_dDevice:B9(),_gContent:x("Content"),slides:ud.slides,_gStyle:x("Style"),alignment:V5(),_gTexture:x("Texture"),showTexture:l1("Show texture",!0,O2(dd,{})),textureColor:y5("Texture color",ez),textureOpacity:s1("Texture opacity",O2(TX,{}),0,100,1,40,"%"),_gLayout:x("Layout"),heightDesktop:g6("desktop"),heightMobile:g6("mobile"),_gAutoplay:x("Auto-slide"),autoplay:l1("Auto-advance slides",!1,O2(PX,{})),autoplayInterval:s1("Still time per slide",O2(FX,{}),2,15,1,6,"s"),_gPicker:x("Slide picker"),showPicker:l1("Show slide picker",Yw,O2(dd,{})),pickerShape:v1("Slide picker shape",O2(rF,{}),jw.map(e=>({label:$w[e],value:e,picture:OX[e]})),Kw),pickerPlacement:o6("Slide picker placement",{stacking:!1,fallback:Uw}),_gArrows:x("Arrows"),showArrows:l1("Show arrows",Ww,O2(dd,{})),arrowsShape:v1("Arrows shape",O2(rF,{}),Ow.map(e=>({label:qw[e],value:e,picture:GX[e]})),Gw),arrowsPlacement:o6("Arrows placement",{stacking:!1,fallback:Dw}),_gPhone:Q2("mobile",x("On a phone")),phoneUpDown:Q2("mobile",v1(Yx,O2(lF,{}),Jx(),Kx)),phoneSideways:Q2("mobile",v1(Xx,O2(lF,{}),Qx(),$x))}};import{jsx as xi}from"react/jsx-runtime";import{NudgeIcon as uF,WidthIcon as dF}from"efficient-easel/icons";import{jsx as qX}from"react/jsx-runtime";import{jsx as iF}from"react/jsx-runtime";function nF({placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,dragRef:v}){let g=lz(e),b=cm(t),f=cm(a),w=B3("HeroGroup",c,Sl("HeroGroup",l)==="column"?"block":"inline"),z={"--sf-hg-row":cz(g),justifySelf:sz(g).column};typeof s=="number"&&Number.isFinite(s)&&(z["--sf-hg-w"]=`${rz(s)}%`),(b!==0||f!==0)&&(z["--sf-hg-nudge"]=`${b}px ${f}px`);let k=R9(n,h,m,u);return iF("div",{className:k?`sf-hero-group ${k.className}`:"sf-hero-group","data-hg":g,style:k?{...z,...k.style}:z,ref:v??void 0,children:d?iF(d,{className:["sf-hero-group-blocks flex",zy("HeroGroup",l),Il(r,o),Rl(i)].filter(Boolean).join(" ")+w.className,style:w.style,minEmptyHeight:40}):null})}var gd={content:{type:"slot",allow:Gx}},hF={label:Zx,inline:!0,fields:gd,defaultProps:{placement:az,nudgeX:0,nudgeY:0,content:[]},render:({placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,puck:v})=>qX(nF,{placement:e,nudgeX:t,nudgeY:a,width:s,gap:c,direction:l,justify:r,align:o,wrap:i,sectionPaddingTop:n,sectionPaddingBottom:h,sectionPaddingTopPhone:m,sectionPaddingBottomPhone:u,content:d,dragRef:v?.dragRef})};var gF={fields:{_gContent:x("Content"),name:Y9(e3(q("Box name",A.boxName))),content:gd.content,_gLayout:x("Layout"),placement:o6("Placement",{stacking:!0}),width:s1("Width",xi(dF,{}),30,100,5,60,"%"),direction:cw("HeroGroup"),gap:Z3("HeroGroup"),justify:ql(),align:Wl(),wrap:Ul(),_gNudge:x("Nudge"),nudgeX:s1("Sideways",xi(uF,{}),-40,40,1,0,"px"),nudgeY:s1("Up and down",xi(uF,{}),-40,40,1,0,"px"),...x5({phone:!0})},resolveFields:(e,{fields:t,appState:a})=>{let s=typeof e.props.id=="string"?e.props.id:"";if(il(a?.data,s)===0)return t;let c={...t};return delete c.placement,c.width=s1("Width",xi(dF,{}),30,100,5,100,"%"),c}};import{jsx as zi}from"react/jsx-runtime";import{MediaIcon as aJ,OpacityIcon as xF,PlacementIcon as sJ}from"efficient-easel/icons";var S7="bottom",L7="#0A0A0A",vd=[{label:"Bottom",value:"bottom",cell:"bottom"},{label:"Top",value:"top",cell:"top"},{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"}],jX={bottom:180,top:0,left:270,right:90},KX=[[.55,0],[.15,18],[null,35],[null,55],[.85,100]],$X=[[null,33],[.6,67],[.94,100]];function YX(e,t){let a=/^#[0-9a-f]{6}$/i.test(e)?e:L7,s=parseInt(a.slice(1),16);return`rgba(${s>>16&255},${s>>8&255},${s&255},${t})`}function XX(e){return I2(vd,S7,e)}function vF(e=L7,t=S7){let a=XX(t),s=(a==="top"||a==="bottom"?KX:$X).map(([c,l])=>`${c===null?"transparent":YX(e,c)} ${l}%`);return`linear-gradient(${jX[a]}deg, ${s.join(", ")})`}import{jsx as eJ}from"react/jsx-runtime";import{jsx as ht,jsxs as JX}from"react/jsx-runtime";import{useRef as QX}from"react";function fF({overlay:e=100,overlayColor:t=L7,overlayPosition:a=S7,mediaType:s="image",mediaSrc:c,poster:l,objectPosition:r,tintColor:o="#000000",tintOpacity:i=0,heightDesktop:n,heightMobile:h,boxes:m,editing:u=!1}){let d=Jw(n,h),v=d?"min-h-[var(--sf-hero-h-m)] max-[720px]:flex max-[720px]:flex-col min-[720px]:min-h-0 min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",g=d?"max-[720px]:relative max-[720px]:flex-auto":"",b=d?{"--sf-hero-h-d":ne(n),"--sf-hero-h-m":ne(h)}:void 0,f=s==="video",w=f?s4(c):void 0,z=f?s4(l):s4(c)??s4(l),k=QX(null);return JX("section",{ref:k,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${v} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:b,children:[ht("div",{className:"absolute inset-0 z-[1]",children:ht(jx,{videoSrc:w,posterSrc:z,showVideo:f,objectPosition:r})}),i>0&&ht("div",{className:"pointer-events-none absolute inset-0 z-[2]",style:{background:o,opacity:Math.min(Math.max(i,0),100)/100}}),ht("div",{className:"pointer-events-none absolute inset-0 z-[2]",style:{background:vF(t,a),opacity:Math.min(Math.max(e,0),100)/100}}),m&&ht("div",{className:["sf-hero-group-layer absolute inset-0 z-[3] mx-auto",g,"max-w-[min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))]","px-[var(--sf-site-gutter,40px)] pt-[140px] pb-14",u?"sf-hero-group-layer-edit":""].filter(Boolean).join(" "),style:g5,children:ht(m,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}import{FOCAL_DEFAULT as tJ}from"efficient-shell/format";var fd={boxes:{type:"slot",allow:["HeroGroup"]}},bF={label:"Hero",fields:fd,defaultProps:{mediaType:"image",imageFocal:tJ,tintColor:"#000000",tintOpacity:0,overlay:100,overlayColor:L7,overlayPosition:S7},render:({mediaType:e,mediaImage:t,mediaVideo:a,poster:s,imageFocal:c,tintColor:l,tintOpacity:r,overlay:o,overlayColor:i,overlayPosition:n,heightDesktop:h,heightMobile:m,boxes:u,puck:d})=>eJ(fF,{mediaType:e,mediaSrc:(e==="image"?t:a)||void 0,poster:s||void 0,objectPosition:e==="image"&&c||void 0,tintColor:l,tintOpacity:e==="image"?r:0,overlay:o,overlayColor:i,overlayPosition:n,heightDesktop:h,heightMobile:m,boxes:u,editing:d?.isEditing})};var zF={fields:{_dDevice:B9(),boxNotice:Io("HeroSingle"),boxes:fd.boxes,_gStyle:x("Style"),overlay:s1("Overlay",zi(xF,{}),0,100,5,100,"%"),overlayColor:y5("Overlay color",L7),overlayPosition:jl("Overlay position",vd,S7,"A corner would need a diagonal ramp, which this overlay does not draw.",zi(sJ,{})),_gLayout:x("Layout"),heightDesktop:g6("desktop"),heightMobile:g6("mobile"),_gMedia:x("Media"),mediaType:v1("Type",zi(aJ,{}),Kl,"image"),mediaImage:q1("Background image","image/*","Upload a background image"),imageFocal:J9("Image focus",K9),mediaVideo:q1("Background video","video/*","Upload a background video"),poster:q1("Video poster","image/*","Upload a poster still"),_gTint:x("Image tint"),tintColor:y5("Tint color","#000000"),tintOpacity:s1("Tint opacity",zi(xF,{}),0,100,5,0,"%")},resolveFields:(e,{fields:t})=>{let a=e.props.mediaType??"image",s={...t};return a==="image"?(delete s.mediaVideo,delete s.poster):(delete s.mediaImage,delete s.imageFocal,delete s._gTint,delete s.tintColor,delete s.tintOpacity),s}};import{jsx as xd}from"react/jsx-runtime";import{MediaIcon as rJ,OpacityIcon as oJ,PlayIcon as iJ}from"efficient-easel/icons";import{jsx as cJ}from"react/jsx-runtime";import{FOCAL_DEFAULT as lJ}from"efficient-shell/format";var bd={groups:{type:"slot",allow:["HeroGroup"]}},yF={label:"Hero Slide",fields:bd,defaultProps:{mediaType:"video",videoSpeed:100,imageFocal:lJ,tintColor:"#000000",overlay:0},render:({name:e,process:t,mediaType:a,mediaVideo:s,mediaImage:c,poster:l,mediaSrc:r,videoSpeed:o,imageFocal:i,tintColor:n,overlay:h,groups:m,puck:u,...d})=>{let v=I9({...d,sectionAccent:f5(d.sectionAccent)});return cJ(tz,{themeClassName:v?.className,themeStyle:v?.style,name:e||void 0,process:y(t,"Label",u),mediaType:a,mediaSrc:(a==="image"?c:s||r)||void 0,videoSpeed:typeof o=="number"?o:void 0,poster:l||void 0,objectPosition:a==="image"&&i||void 0,tintColor:n,tintOpacity:a==="image"?h:0,groups:m,editing:u?.isEditing})}};var wF={fields:{_gContent:x("Content"),name:Y9(q("Slide name",A.slideName)),process:T("Reel label","Label"),groupNotice:Io("HeroSlide"),groups:bd.groups,_gMedia:x("Media"),mediaType:v1("Type",xd(rJ,{}),Kl,"video"),mediaVideo:q1("Background video","video/*","Upload a background video"),videoSpeed:s1("Playback speed",xd(iJ,{}),25,100,5,100,"%"),mediaImage:q1("Background image","image/*","Upload a background image"),imageFocal:J9("Image focus",K9),poster:q1("Video poster","image/*","Upload a poster still"),_gTint:x("Image tint"),tintColor:y5("Tint color","#000000"),overlay:s1("Overlay",xd(oJ,{}),0,100,5,0,"%")},resolveFields:(e,{fields:t})=>{let a=e.props.mediaType??"video",s={...t};return a==="image"?(delete s.mediaVideo,delete s.videoSpeed,delete s.poster):(delete s.mediaImage,delete s.imageFocal,delete s._gTint,delete s.tintColor,delete s.overlay),s}};import{jsx as nJ}from"react/jsx-runtime";var CF=["cover","contain"],zd={cover:"Cover",contain:"Contain"},yi="Image fit";function mt(e,t){return CF.includes(e)?e:t}function kF(){return CF.map(e=>({label:zd[e],value:e}))}function MF(e){return e==="contain"?"object-contain":"object-cover"}function wi(e,t){return e!=="auto"&&t==="cover"}import{ImageIcon as hJ}from"efficient-easel/icons";var SF={fields:{_gImage:x("Image"),src:q1("Image","image/*"),alt:q("Alt text"),aspect:{type:"select",label:"Aspect ratio",options:[{label:"Auto",value:"auto"},{label:"21 : 9",value:"21/9"},{label:"16 : 9",value:"16/9"},{label:"4 : 3",value:"4/3"},{label:"1 : 1",value:"1/1"}]},fit:g1(yi,nJ(hJ,{}),kF(),"cover"),focal:J9("Image focus",K9,"src"),href:H1("Link"),_gStyle:x("Style"),grayscale:je(),_gShape:x("Shape"),corners:mw(),cornerSides:Jy()},resolveFields:(e,{fields:t})=>{let a=e.props??{};if(wi(a.aspect,mt(a.fit,"cover")))return t;let s={...t};return delete s.focal,s}};import{jsx as mJ}from"react/jsx-runtime";var LF={fields:{_gContent:x("Content"),eyebrow:T("Chip label","Integrations"),title:O("Heading",`Plays well with
59
59
  *your favourite apps.*`),body:O("Body",""),apps:T2("App chips",mJ(c4,{noun:"tag"}),"App name","verbatim"),_gStat:x("Stat & note"),statValue:T("Big stat","100s"),statLabel:T("Stat label",""),note:T("Footnote","")}};import{jsx as D8}from"react/jsx-runtime";import{CaseIcon as gJ,FullWidthIcon as vJ,OpacityIcon as fJ,PlacementIcon as bJ,StickyIcon as xJ,TextLinesIcon as FF}from"efficient-easel/icons";var yd="overlay",wd=[{label:"Copy over image",value:"overlay"},{label:"Copy above image",value:"stacked"}];function pt(e){return I2(wd,yd,e)}var V4={desktop:40,mobile:45,min:20,max:80,step:5};function Cd(e,t){return`${typeof e=="number"?e:t}%`}import{jsx as uJ}from"react/jsx-runtime";import{jsx as K3,jsxs as Cs,Fragment as pJ}from"react/jsx-runtime";function AF({eyebrow:e,title:t,body:a,cta:s,imageLabel:c,imageSrc:l,imageSrcMobile:r,layout:o,copyShareDesktop:i,copyShareMobile:n,sticky:h=!0,heightDesktop:m,heightMobile:u,overlay:d,titleSizeDesktop:v,titleSizeMobile:g,bodySizeDesktop:b,bodySizeMobile:f,buttonColor:w,buttonTextColor:z,uppercase:k=!1,capStyle:S}){let H=pt(o)==="stacked",I=i1=>H?`calc(${ne(i1)} - ${Nm})`:ne(i1),P=I(m),D=I(u),E=t7(v,"clamp(48px,7vw,96px)","heading","headingLarge"),F=t7(g,"clamp(36px,7vw,96px)","heading","headingLarge"),_=t7(b,"17px","body","body"),Z=t7(f,"16px","body","body"),G=d!=null?d/100:H?0:.6,V=w||"var(--btn)",j=z||"var(--btn-ink)",N={"--intro-h-d":P,"--intro-h-m":D,"--intro-title-d":E,"--intro-title-m":F,"--intro-body-d":_,"--intro-body-m":Z,...H?{"--intro-copy-d":Cd(i,V4.desktop),"--intro-copy-m":Cd(n,V4.mobile),marginTop:Nm}:{}},Q=S?"px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]":"px-[60px] max-[960px]:px-6",W=Cs(pJ,{children:[Cs("div",{className:"absolute inset-0",children:[K3("div",{className:"absolute inset-0 hidden min-[960px]:block",children:K3(k0,{label:c,src:l})}),K3("div",{className:"absolute inset-0 min-[960px]:hidden",children:K3(k0,{label:c,src:r||l})}),K3("div",{className:"pointer-events-none absolute inset-0",style:{backgroundImage:"repeating-linear-gradient(45deg, transparent 0 80px, rgba(201,164,97,.04) 80px 81px)"}})]}),K3("div",{className:"absolute inset-0",style:{background:`rgba(0,0,0,${G})`}})]}),U=Cs("div",{style:S,className:"flex flex-col gap-6",children:[e&&K3(V1,{text:e,size:14}),t&&K3("h2",{className:["font-display font-medium leading-[0.95] tracking-[-0.03em]","text-[length:var(--intro-title-m)] min-[960px]:text-[length:var(--intro-title-d)]",k?"uppercase":""].join(" "),children:Y(t,!1)}),a&&z0(a).map((i1,y1)=>K3("p",{className:"max-w-[560px] leading-[1.6] opacity-85 text-[length:var(--intro-body-m)] min-[960px]:text-[length:var(--intro-body-d)]",children:M(i1)},y1)),s.text&&K3("div",{className:"mt-2 self-start",children:K3(c3,{href:s.href,variant:"ghost",style:{background:V,color:j,borderColor:V},children:M(s.text)})})]});return H?Cs("section",{style:N,className:[h?"sticky top-0":"relative","flex flex-col","h-[var(--intro-h-m)] min-[960px]:h-[var(--intro-h-d)] min-h-[420px]","overflow-hidden p-0 z-[1]"].join(" "),children:[K3("div",{className:["relative z-[2] flex shrink-0 flex-col justify-center bg-bg py-10","min-h-[var(--intro-copy-m)] min-[960px]:min-h-[var(--intro-copy-d)]",Q].join(" "),style:{color:"var(--fg)"},children:U}),K3("div",{className:"relative min-h-0 flex-1 overflow-hidden",children:W})]}):Cs("section",{style:N,className:[h?"sticky top-0":"relative","h-[var(--intro-h-m)] min-[960px]:h-[var(--intro-h-d)] min-h-[420px]","overflow-hidden p-0 z-[1]"].join(" "),children:[W,K3("div",{className:["relative z-[2] flex h-full flex-col justify-center",Q].join(" "),style:g5,children:U})]})}var A7={eyebrow:"\u2014 Label",title:`Section headline
60
60
  *Highlight line*`,body:"A sentence or two of supporting copy."};function dJ(e){if(e===!1)return X6(`var(--sf-page-width, ${_9.default}px)`)}var HF={label:"Scroll-Over Text",defaultProps:{eyebrow:"",title:"",body:"",imageSrc:"",imageSrcMobile:"",heightDesktop:100,heightMobile:100,overlay:60,titleSizeDesktop:ka,bodySizeDesktop:ka,titleSizeMobile:ka,bodySizeMobile:ka,ctaText:"",ctaHref:"",buttonColor:"",buttonTextColor:"",sticky:!0,uppercase:!1,fullWidth:!0},render:e=>uJ(AF,{eyebrow:y(e.eyebrow,A7.eyebrow,e.puck),title:y(e.title,A7.title,e.puck),body:y(e.body,A7.body,e.puck),imageLabel:a1(e.title)||A7.title,imageSrc:e.imageSrc||void 0,imageSrcMobile:e.imageSrcMobile||void 0,cta:W3(e.ctaText,e.ctaHref,e.puck),sticky:e.sticky,layout:pt(e.layout),copyShareDesktop:e.copyShareDesktop,copyShareMobile:e.copyShareMobile,heightDesktop:e.heightDesktop,heightMobile:e.heightMobile,overlay:e.overlay,titleSizeDesktop:e.titleSizeDesktop,bodySizeDesktop:e.bodySizeDesktop,titleSizeMobile:e.titleSizeMobile,bodySizeMobile:e.bodySizeMobile,buttonColor:e.buttonColor||void 0,buttonTextColor:e.buttonTextColor||void 0,uppercase:e.uppercase,capStyle:dJ(e.fullWidth)})};var TF={fields:{_dDevice:B9(),_gContent:x("Content"),eyebrow:T("Eyebrow",A7.eyebrow),title:O("Heading",A7.title),body:O("Subtitle",A7.body),uppercase:l1("Uppercase heading",!1,D8(gJ,{})),_gBackground:x("Background images"),imageSrc:Q2("desktop",q1("Background image","image/*")),imageSrcMobile:Q2("mobile",q1("Background image","image/*")),_gLayout:x("Layout"),layout:g1("Text position",D8(bJ,{}),wd,yd),heightDesktop:g6("desktop"),heightMobile:g6("mobile"),copyShareDesktop:Q2("desktop",s1("Text height",D8(FF,{}),V4.min,V4.max,V4.step,V4.desktop,"%")),copyShareMobile:Q2("mobile",s1("Text height",D8(FF,{}),V4.min,V4.max,V4.step,V4.mobile,"%")),sticky:l1("Scroll-over",!0,D8(xJ,{})),_gWidth:x("Width"),fullWidth:l1("Full width",!0,D8(vJ,{})),overlay:s1("Overlay",D8(fJ,{}),0,100,5,60,"%"),_gTextDesktop:Q2("desktop",x("Text style")),titleSizeDesktop:Q2("desktop",Ma("Heading font size",32,120,1,96,"heading")),bodySizeDesktop:Q2("desktop",Ma("Subtitle font size",12,28,1,17,"body")),_gTextMobile:Q2("mobile",x("Text style")),titleSizeMobile:Q2("mobile",Ma("Heading font size",24,72,1,44,"heading")),bodySizeMobile:Q2("mobile",Ma("Subtitle font size",12,22,1,16,"body")),_gButton:x("Button"),...H4,buttonColor:y5("Button color","#C9A461"),buttonTextColor:y5("Button text color","#000000")}};import{jsx as VF}from"react/jsx-runtime";import{ColumnsIcon as CJ,StylesIcon as kJ}from"efficient-easel/icons";import{jsx as yJ}from"react/jsx-runtime";import{jsx as x6,jsxs as kd,Fragment as zJ}from"react/jsx-runtime";function PF({look:e,eyebrow:t,title:a,items:s,columns:c,editing:l=!1}={}){let r=Math.min(4,Math.max(2,c??3)),o=(s??[]).filter(n=>l||(n.label??"").trim()),i=!!(t??"").trim()||!!(a??"").trim();return!l&&!i&&o.length===0?null:x6("section",{className:"relative z-[2] border-y border-line bg-surface",children:kd("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[76px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[i&&kd("div",{className:"mb-11 flex flex-wrap items-baseline gap-5 max-[800px]:mb-8",children:[(t??"").trim()&&x6(V1,{text:t??"",look:e}),(a??"").trim()&&x6("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),o.length>0&&x6("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--kf-cols),minmax(0,1fr))]",style:{"--kf-cols":String(r)},children:o.map((n,h)=>{let m=kd(zJ,{children:[x6("span",{"aria-hidden":!0,className:"h-[9px] w-[9px] flex-shrink-0 rotate-45 bg-accent"}),x6("span",{className:"font-display text-[length:var(--size-body,17px)] font-medium uppercase tracking-[0.06em] text-fg transition-colors group-hover/kf:text-accent",children:M((n.label??"").trim()||p("Feature"))})]}),u=(n.href??"").trim();if(u&&!l){let d="group/kf flex items-center gap-4 bg-bg px-7 py-[30px] transition-colors hover:bg-surface";return u.startsWith("/")?x6(r0,{href:u,className:d,children:m},h):x6("a",{href:u,className:d,children:m},h)}return x6("div",{className:"flex items-center gap-4 bg-bg px-7 py-[30px]",children:m},h)})})]})})}var ks={eyebrow:"Highlight",title:"Key *features.*"},wJ=()=>[{label:p("Feature label one")},{label:p("Feature label two")},{label:p("Feature label three")},{label:p("Feature label four")},{label:p("Feature label five")},{label:p("Feature label six")}],EF={label:"Key Features",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:({eyebrow:e,title:t,items:a,columns:s,eyebrowLook:c,puck:l})=>yJ(PF,{look:o4(c,"KeyFeatures"),eyebrow:y(e,ks.eyebrow,l),title:y(t,ks.title,l),items:C1(a,wJ(),l),columns:s,editing:l?.isEditing})};var NF={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",ks.eyebrow),eyebrowLook:g1("Eyebrow style",VF(kJ,{}),[...k4],l7("KeyFeatures")),title:O("Heading",ks.title),items:{type:"array",label:"Features",arrayFields:{label:f1("Feature label"),href:e3(q("Link"))},defaultItemProps:{label:"",href:""},getItemSummary:e=>e?.label||"Feature"},_gStyle:x("Style"),columns:s1("Columns",VF(CJ,{}),2,4,1,3)}};import{jsx as MJ}from"react/jsx-runtime";import{HeightIcon as SJ}from"efficient-easel/icons";var _F={fields:{src:q1("Logo image","image/*"),alt:q("Alt text","Brand name","Read out in place of the picture, and shown if it can\u2019t load."),href:H1("Link"),heightPx:s1("Height",MJ(SJ,{}),ZC,DC,1,m7,"px"),reverse:{type:"select",label:"Logo color",options:[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}]}},resolveFields:(e,{fields:t})=>{if((e.props.src??"").trim())return t;let a={...t};return delete a.alt,a}};import{jsx as Ci}from"react/jsx-runtime";import{BlackAndWhiteIcon as LJ,ColumnsIcon as AJ,HeightIcon as HJ,PaddingYIcon as FJ}from"efficient-easel/icons";var IF={fields:{_gContent:x("Content"),heading:O("Heading","Trusted by *teams worldwide*"),items:{type:"array",label:"Logos",arrayFields:{src:q1("Image","image/*"),alt:q("Name / alt")},getItemSummary:e=>e.alt||e.src||"logo"},_gStyle:x("Style"),columns:s1("Columns",Ci(AJ,{}),3,6,1,5),logoHeight:s1("Logo height",Ci(HJ,{}),20,72,2,28,"px"),bandPadding:s1("Space above and below",Ci(FJ,{}),16,120,4,40,"px"),grayscale:l1("Black and white logos",!0,Ci(LJ,{}))}};import{jsx as TJ}from"react/jsx-runtime";import{jsx as r3,jsxs as e5,Fragment as Md}from"react/jsx-runtime";import{Fragment as RF}from"react";function BF({headNum:e,headTitle:t,headDesc:a,category:s,metaMiddle:c,readLabel:l,title:r,dek:o,quote:i,quoteAttribution:n,ctaText:h,ctaHref:m,image:u,imageLabel:d,metaPublished:v,metaReads:g,omitHead:b=!1,...f}){let w=[s?r3("span",{className:"text-accent",children:M(s)}):null,c?r3("span",{children:M(c)}):null,l?r3("span",{children:M(l)}):null].filter(Boolean),z=!!v||!!g;return e5("section",{className:E0(f)?b?"border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20":"border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20":b?"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",children:[b?null:r3(D2,{num:e,title:t?Y(t,!0):void 0,desc:a?M(a):void 0}),e5("article",{className:"sf-card grid min-h-[640px] grid-cols-[1fr_1.2fr] border border-line max-[1100px]:grid-cols-1",children:[e5("div",{className:"flex flex-col justify-center gap-7 border-r border-line bg-surface px-14 py-16 max-[1100px]:border-r-0 max-[1100px]:border-b max-[1100px]:px-7 max-[1100px]:py-12",children:[w.length>0&&r3("div",{className:"flex items-center gap-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] text-fg-dim",children:w.map((k,S)=>e5(RF,{children:[S>0&&r3("span",{className:"opacity-40",children:"\xB7"}),k]},S))}),r&&r3("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,4.2vw,68px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.035em]",children:Y(r,!0)}),o&&r3("p",{className:"font-serif text-[length:var(--size-body,22px)] italic leading-[1.45] text-fg",children:M(o)}),(i||n)&&e5("blockquote",{className:"max-w-[520px] border-l-2 border-accent py-1.5 pl-[22px] font-serif text-[length:var(--size-body,17px)] italic leading-[1.6] text-fg-dim",children:[i&&e5(Md,{children:["\u201C",M(i),"\u201D"]}),n&&r3("strong",{className:"mt-2.5 block font-display text-[length:var(--size-body,14px)] font-normal not-italic uppercase tracking-[0.22em] text-fg",children:M(n)})]}),h&&e5(r0,{href:m||"#",className:"inline-flex items-center gap-3.5 self-start border border-btn px-7 py-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-btn transition-colors hover:bg-btn hover:text-btn-ink",children:[M(h)," ",r3("span",{children:"\u2192"})]})]}),e5("div",{className:"relative overflow-hidden bg-surface-2 max-[1100px]:aspect-[4/3]",children:[r3(k0,{label:"long-read",src:u||void 0,alt:p2(r||"Long read"),sizes:"(max-width: 1100px) 100vw, 56vw"}),r3("div",{className:"pointer-events-none absolute inset-0 z-[1]",style:{background:"linear-gradient(180deg, rgba(10,10,10,0.55) 0%, transparent 25%, transparent 60%, rgba(10,10,10,0.7) 100%)"}}),d&&r3(V1,{text:d,size:12,className:"absolute right-6 top-6 z-[2]"}),z&&r3("div",{className:"absolute bottom-6 left-6 z-[2] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.8] tracking-[0.22em] text-overlay-fg",children:[v?e5(Md,{children:[r3("strong",{className:"font-normal text-accent",children:"Published"})," ",M(v)]}):null,g?e5(Md,{children:[r3("strong",{className:"font-normal text-accent",children:"Reads in"})," ",M(g)]}):null].filter(Boolean).map((k,S)=>e5(RF,{children:[S>0&&r3("br",{}),k]},S))})]})]})]})}var V0={headNum:A.sectionNumber,headTitle:A.headingAccent,headDesc:A.body,category:A.category,metaMiddle:"Section",readLabel:"0 min read",title:"Article *headline* goes here.",dek:"A short summary of the article goes here.",quote:"A short pull quote.",quoteAttribution:"\u2014 "+A.date,ctaText:"Begin reading",ctaHref:u2.href,imageLabel:"Featured *image*",metaPublished:A.date,metaReads:"0 min"},ZF={label:"Long read",defaultProps:{source:null,headNum:"",headTitle:"",headDesc:"",category:"",metaMiddle:"",readLabel:"",title:"",dek:"",quote:"",quoteAttribution:"",ctaText:"",ctaHref:"",image:"",imageLabel:"",metaPublished:"",metaReads:""},render:({source:e,headNum:t,headTitle:a,headDesc:s,category:c,metaMiddle:l,readLabel:r,title:o,dek:i,quote:n,quoteAttribution:h,ctaText:m,ctaHref:u,image:d,imageLabel:v,metaPublished:g,metaReads:b,headPlacement:f,puck:w})=>{let z=O1(f)==="own-box",k=I=>z?void 0:I,S=e,H=!!S?.slug;return TJ(BF,{headNum:k(y(t,V0.headNum,w)),headTitle:k(y(a,V0.headTitle,w)),headDesc:k(y(s,V0.headDesc,w)),omitHead:z,category:y(c,V0.category,w),metaMiddle:y(l,V0.metaMiddle,w),readLabel:y(r,V0.readLabel,w),title:H?S.title:y(o,V0.title,w),dek:H?S.dek:y(i,V0.dek,w),quote:y(n,V0.quote,w),quoteAttribution:y(h,V0.quoteAttribution,w),ctaText:y(m,V0.ctaText,w),ctaHref:H?S.href:a1(u),image:H?S.image:d,imageLabel:y(v,V0.imageLabel,w),metaPublished:H?S.date:y(g,V0.metaPublished,w),metaReads:y(b,V0.metaReads,w)})}};var DF={fields:{source:c2(rt),_gHead:x("Section header"),headNum:T("Number",V0.headNum),headTitle:O("Heading",V0.headTitle),headDesc:O("Body",V0.headDesc),_gMeta:x("Article"),category:T("Category",V0.category),metaMiddle:T("Middle meta",V0.metaMiddle),readLabel:T("Read time",V0.readLabel),title:O("Article title",V0.title),dek:O("Dek",V0.dek),_gQuote:x("Pull quote"),quote:O("Quote",V0.quote),quoteAttribution:T("Attribution",V0.quoteAttribution),_gLink:x("Link"),ctaText:T("Button",V0.ctaText),ctaHref:H1("Link"),image:q1("Image","image/*"),imageLabel:T("Image label",V0.imageLabel),_gOverlay:x("Image caption"),metaPublished:T("Published",V0.metaPublished),metaReads:T("Reads in",V0.metaReads)},resolveFields:(e,{fields:t,parent:a})=>{let s=!!e.props.source?.slug,c=new Set(s?["image","title","dek","ctaHref","metaPublished"]:[]),l={};for(let[r,o]of Object.entries(t))c.has(r)||(l[r]=o,s&&r==="source"&&(l._nBound=b5(Dl)));return G1(W1(l,a,U1),e.props.headPlacement,Z1.LongRead.headRows)}};var OF={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.eyebrow),heading:O("Heading",`Main heading
61
61
  *Highlight line*`),body:O("Body",A.body),stats:{type:"array",label:"Stats",arrayFields:{value:q("Number"),label:q("Label")},getItemSummary:e=>e.label||e.value||"Stat"},_gMedia:x("Media"),imageSrc:q1("Image","image/*"),_gStyle:x("Style"),grayscale:je()}};import{jsx as _J}from"react/jsx-runtime";import{TextLinesIcon as IJ}from"efficient-easel/icons";import{jsx as EJ}from"react/jsx-runtime";import{jsx as H7,Fragment as PJ,jsxs as O8}from"react/jsx-runtime";function GF({eyebrow:e,issueMeta:t,lead:a,issueHeading:s,issueList:c,issueTotal:l,...r}){let o=(t??[]).filter(d=>(d?.lead??"").trim()||(d?.rest??"").trim()),i=(c??[]).map(d=>d?.text??"").filter(d=>d.trim()),n=z0(a??""),h=!!e||o.length>0,m=!!s||i.length>0||!!l,u=n.length>0||m;return O8("section",{className:E0(r)?"border-b border-line px-[var(--sf-site-gutter,40px)] pt-20 pb-10 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-[60px] max-[1100px]:pb-8":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-20 pb-10 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-[60px] max-[1100px]:pb-8",children:[h&&O8("div",{className:"flex items-end justify-between gap-[60px] pb-8 max-[1100px]:flex-col max-[1100px]:items-start max-[1100px]:gap-4",children:[e&&H7(V1,{text:e,size:14,className:"pb-3.5"}),o.length>0&&H7("div",{className:"pb-3.5 text-right font-mono text-[length:var(--size-label,13px)] uppercase leading-[1.8] tracking-[0.18em] text-fg-dim max-[1100px]:text-left",children:o.map((d,v)=>O8("div",{children:[H7("strong",{className:"font-normal text-fg",children:M(d.lead??"")}),d.rest?.trim()?O8(PJ,{children:[" ",M(d.rest)]}):null]},v))})]}),u&&O8("div",{className:"grid grid-cols-[1fr_auto] items-start gap-[60px] border-t border-line pt-8 max-[1100px]:grid-cols-1 max-[1100px]:gap-4",children:[n.length>0&&H7("div",{className:"max-w-[720px]",children:n.map((d,v)=>H7("p",{className:"font-heading3 text-[length:var(--size-headingSmall,20px)] leading-[1.5] tracking-[-0.005em] text-fg [&:not(:first-child)]:mt-4",children:M(d,!0)},v))}),m&&O8("div",{className:"min-w-[240px] text-right font-mono text-[length:var(--size-label,13px)] uppercase leading-[1.9] tracking-[0.22em] text-fg-dim max-[1100px]:text-left",children:[s&&H7("strong",{className:"mb-1.5 block font-display text-[length:var(--size-body,18px)] font-normal tracking-[-0.01em] normal-case text-fg",children:Y(s,!1)}),i.map((d,v)=>O8("span",{children:[M(d),H7("br",{})]},v)),l&&H7("span",{className:"text-accent",children:M(l)})]})]})]})}var z6={eyebrow:A.eyebrow,lead:"A short lead paragraph introducing this section \u2014 a sentence or two about its theme.",issueHeading:"In this issue",issueTotal:"\u2014 Articles in total"},VJ=()=>[{lead:p("Volume"),rest:p("No. 1")},{lead:p("Season"),rest:p("Year")},{lead:p("Frequency"),rest:""}],NJ=()=>[{text:p("Article headline")},{text:p("Feature story")},{text:p("Interview")},{text:p("Field notes")}],qF={label:"Issue Header",defaultProps:{eyebrow:"",issueMeta:[],lead:"",issueHeading:"",issueList:[],issueTotal:""},render:({eyebrow:e,issueMeta:t,lead:a,issueHeading:s,issueList:c,issueTotal:l,puck:r})=>EJ(GF,{eyebrow:y(e,z6.eyebrow,r),issueMeta:C1(t,VJ(),r),lead:y(a,z6.lead,r),issueHeading:y(s,z6.issueHeading,r),issueList:C1(c,NJ(),r),issueTotal:y(l,z6.issueTotal,r),editing:r?.isEditing})};var WF={fields:{_gTop:x("Top row"),eyebrow:T("Eyebrow",z6.eyebrow),issueMeta:{type:"array",label:"Issue meta lines",arrayFields:{lead:f1("Bold word"),rest:f1("Rest")},getItemSummary:e=>[e?.lead,e?.rest].filter(Boolean).join(" ")||"Line"},_gLead:x("Lead"),lead:O("Lead",z6.lead),_gIssue:x("In this issue"),issueHeading:O("Panel heading",z6.issueHeading),issueList:T2("Issue lines",_J(IJ,{}),"Line","markup"),issueTotal:T("Total line",z6.issueTotal)}};import{jsx as F7}from"react/jsx-runtime";import{BlockColumnIcon as ki,PlacementIcon as DJ,StateIcon as OJ,TemplateIcon as GJ,TextLinesIcon as qJ}from"efficient-easel/icons";var Sd=[{label:"Product record (spec tiles)",value:"spec-card"},{label:"Selector guide (pills + results)",value:"fitment"},{label:"Portal card (stock + button + orders)",value:"portal"},{label:"Kanban board (job columns)",value:"kanban"},{label:"Claims panel (rows + defect bars)",value:"claims"},{label:"Browser storefront (hero + tiles)",value:"browser"},{label:"Terminal (CLI session)",value:"terminal"}],RJ=Sd.map(e=>e.value),Ld="spec-card",BJ={badge:["spec-card","fitment","portal","kanban","claims","browser"],cardTitle:["spec-card","fitment","portal","kanban","claims"],cardSubtitle:["spec-card","fitment","portal","kanban","claims"],rows:["spec-card","fitment","portal","kanban","claims"],button:["spec-card","fitment","portal","kanban","claims"],footnote:["spec-card","fitment","portal","kanban","claims"],pills:["fitment"],tiles:["spec-card","portal","kanban","claims"],_gKanban:["kanban"],col1Title:["kanban"],col1Cards:["kanban"],col2Title:["kanban"],col2Cards:["kanban"],col3Title:["kanban"],col3Cards:["kanban"],col4Title:["kanban"],col4Cards:["kanban"],_gClaims:["claims"],barsHeading:["claims"],bars:["claims"],_gTerminal:["terminal"],termLines:["terminal"],_gBrowser:["browser"],urlText:["browser"],heroTitle:["browser"],heroButton:["browser"],products:["browser"]};function ZJ(e){return RJ.includes(e)?e:Ld}function UF(e,t){let a=ZJ(t),s={...e};for(let[c,l]of Object.entries(BJ))l.includes(a)||delete s[c];return s}var jF={fields:{_gContent:x("Content"),eyebrow:T("Chip label","In the product"),title:O("Heading",`Seen from
@@ -150,5 +150,5 @@ ${s}`:t.push({type:"p",text:s})});return t}var cY=()=>[{label:p("First section")
150
150
  }
151
151
  `;function AZ(){let{settings:e,selected:t,select:a,websiteName:s,templateChrome:c,templateName:l,chromePlaceholder:r,themeSwitchShown:o}=I3(),i=c?l?.trim()||p("Template"):s?.trim()||er,n=c||r;return Xe1("div",{className:"sf-preview-header-pick sf-theme-surfaces","data-selected":t||void 0,onClick:h=>{h.stopPropagation(),a()},children:[LZ("style",{children:Ye1}),LZ(ab,{previewSettings:e??void 0,editorPreview:!0,showThemeToggle:o,wordmark:i,hideLogo:n,hideMenu:n})]})}import{Render as lt1}from"efficient-easel/render";import{useEffect as Je1,useState as Qe1}from"react";import{jsx as at1}from"react/jsx-runtime";var et1=["none","always","on_scroll_up"],tt1=e=>et1.includes(e)?e:"always";function sb({sticky:e,topTextColor:t,heightPx:a,theme:s,children:c}){let l=tt1(e),r=yZ(a),{headerRef:o,scrolled:i,navHidden:n}=fh({stickyMode:l,heightPx:r}),h=Ch(t),m=h==="auto"?null:{[wh]:h},u=bh(s),d=xh(Oe()),[v,g]=Qe1(!1);Je1(()=>{let w=o.current?.ownerDocument??document,z=()=>g(w.documentElement.getAttribute("data-theme")==="light");z();let k=new MutationObserver(z);return k.observe(w.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>k.disconnect()},[o]);let b=i||d,f=zh(v,d);return at1("header",{ref:o,"data-scrolled":i||void 0,"data-box-header":"",...m,className:["sf-site-header",...u?[u.className]:[],"flex flex-col justify-center",l==="none"?"absolute":"fixed","inset-x-0 top-0 z-50",b?"border-b border-line backdrop-blur-md":"border-b border-transparent","transition-[background,border-color,transform] duration-300 ease-out"].join(" "),style:{...u?u.style:null,minHeight:`var(${ir}, ${r}px)`,...n?{transform:"translateY(-100%)"}:null,...b?{background:f,color:"var(--fg)","--sf-header-ground":f}:{color:"var(--sf-header-overlay-fg)","--sf-header-ground":"var(--sf-header-overlay-ground)"}},children:c})}var st1={"Logos.logosPerRow":"columns","HeroSlide.tintOpacity":"overlay","Split.textBgTint":"overlay"};function ct1(e){return Array.isArray(e)&&e.length>0&&e.every(t=>!!t&&typeof t=="object"&&typeof t.type=="string")}function cb(e){let t=e.props,a=!1;if(e.type&&t)for(let[s,c]of Object.entries(st1)){let l=s.indexOf("."),r=s.slice(0,l),o=s.slice(l+1);if(r!==e.type||!(o in t))continue;let i=t[o],n={...t};delete n[o],(!(c in n)||n[c]===void 0)&&(n[c]=i),t=n,a=!0}if(t){let s=t;for(let[c,l]of Object.entries(t)){if(!ct1(l))continue;let r=l.map(cb);r.some((o,i)=>o!==l[i])&&(s===t&&(s={...t}),s[c]=r,a=!0)}t=s}return a?{...e,props:t}:e}function HZ(e){let t=e;if(!t||typeof t!="object")return e;let a=!1,s={...e};if(Array.isArray(t.content)){let c=t.content.map(cb);c.some((l,r)=>l!==t.content[r])&&(s.content=c,a=!0)}if(t.zones&&typeof t.zones=="object"){let c=!1,l=Object.fromEntries(Object.entries(t.zones).map(([r,o])=>{if(!Array.isArray(o))return[r,o];let i=o.map(cb);return i.some((n,h)=>n!==o[h])&&(c=!0),[r,i]}));c&&(s.zones=l,a=!0)}return a?s:e}import{Fragment as it1,jsx as lb}from"react/jsx-runtime";var rt1=null,ot1=()=>rt1??={...rb,root:{...rb.root,render:({children:e})=>lb(it1,{children:e})}};function ob({group:e}){let t=HZ({root:{props:{}},content:[e],zones:{}}),a=e.props??{};return lb(sb,{sticky:a.sticky,topTextColor:a.topTextColor,heightPx:a.heightPx,theme:a.sectionAccent,children:lb(lt1,{config:ot1(),data:t})})}import{jsx as FZ}from"react/jsx-runtime";function ib({editing:e=!1}){let{headerGroup:t}=xw();return e?t?FZ(ob,{group:t}):FZ(AZ,{}):null}import{jsx as nt1}from"react/jsx-runtime";var TZ={label:"Header",render:({puck:e})=>nt1(ib,{editing:e?.isEditing})};import{useEffect as Bt1,useState as rD}from"react";var PZ="flex items-stretch gap-3.5 max-[720px]:flex-wrap max-[720px]:[&>.flex-1]:order-last max-[720px]:[&>.flex-1]:basis-full";import{useEffect as gb,useRef as At1,useState as cD}from"react";import{jsx as nb,jsxs as EZ}from"react/jsx-runtime";var ht1="Please enter a valid email address.";function Vc({email:e,onEmailChange:t,status:a,onResetVerdict:s,onSubmit:c,submitLabel:l,errorMessage:r,inputAriaLabel:o,buttonClassName:i,className:n,placeholder:h="you@example.com"}){return EZ("form",{className:[n,"flex flex-col gap-2"].filter(Boolean).join(" "),noValidate:!0,onSubmit:m=>{m.preventDefault(),c()},children:[EZ("div",{className:"flex items-stretch gap-2",children:[nb("input",{type:"email",value:e,onChange:m=>{t(m.target.value),(a==="invalid"||a==="error")&&s()},placeholder:h,"aria-label":o,disabled:a==="sending",className:"w-0 min-w-0 flex-1 border-2 border-line bg-bg px-3.5 py-3 font-display text-[15px] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent disabled:opacity-60"}),nb("button",{type:"submit",disabled:a==="sending",className:i,children:a==="sending"?"Sending\u2026":l})]}),(a==="error"||a==="invalid")&&nb("p",{role:"alert",className:"font-mono text-[11px] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:a==="invalid"?ht1:r})]})}import{jsx as t6,jsxs as ia}from"react/jsx-runtime";function Nc({vehicle:e,escape:t,override:a,verdict:s,showChangeCar:c,cascadeErrorNote:l,askNote:r}){let o=e.appliedName!=="";return ia("div",{className:"pb-2",children:[ia("div",{className:"mb-3 flex items-center justify-between gap-4 font-mono text-[13px] font-semibold uppercase tracking-[0.2em] text-fg",children:[t6("span",{children:"Vehicle Fitment"}),t]}),a?t6("div",{className:"flex flex-col gap-3",children:a}):o?ia("div",{className:"flex flex-col gap-3",children:[s,c&&t6("div",{children:t6("button",{type:"button",onClick:e.clear,"aria-label":`Change car - forget ${e.appliedName} and ask again`,className:"cursor-pointer font-mono text-[12px] uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})})]}):ia("div",{className:"flex flex-col gap-3",children:[t6(X3,{cascade:e.cascade,compact:!0}),e.cascade.cascadeError&&t6("p",{className:"font-mono text-[12px] leading-relaxed tracking-[0.1em] text-fg-dim",children:l}),t6("span",{className:"font-mono text-[12px] tracking-[0.1em] text-fg-dim",children:r})]})]})}function hb({vehicle:e}){return e.appliedName?ia("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1 border border-accent px-3 py-2 font-mono text-[12px] tracking-[0.1em] text-fg-dim",style:{background:"color-mix(in oklab, var(--accent) 8%, transparent)"},children:[ia("span",{children:["Showing fitment for your"," ",t6("strong",{className:"font-semibold text-fg",children:e.appliedName})]}),t6("button",{type:"button",onClick:e.clear,"aria-label":`Change car - forget ${e.appliedName} and ask again`,className:"ml-auto cursor-pointer uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})]}):null}function h5({tone:e,children:t}){return t6("div",{className:["border px-3 py-2.5 font-mono text-[13px] leading-relaxed tracking-[0.1em] text-fg-dim",e==="good"?"border-accent":e==="bad"?"border-alert":"border-dashed border-line"].join(" "),children:t})}import{useEffect as mt1,useState as VZ}from"react";function Mh(e,t){let[a,s]=VZ(null),[c,l]=VZ(!1),r=t?.make??"",o=t?.model??"",i=t?.year??null,n=t?.modification??"",h=t!==null;return mt1(()=>{if(!h||i===null){s(null),l(!1);return}let m=!0;return s(null),l(!0),ZS(e,{make:r,model:o,year:i,modification:n}).then(u=>{if(!m)return;let d=u.vehicle;d.make!==r||d.model!==o||d.year!==i||d.modification!==n||(s(u),l(!1))}),()=>{m=!1}},[e,r,o,i,n,h]),{answer:a,loading:c}}function Sh(e){let t=e.oemSizes.length>0?` Your car takes ${e.oemSizes.join(", ")}.`:"";return e.status==="fits"?`This tyre is made in a size your car takes.${t}`:e.status==="doesNotFit"?`This tyre is not made in a size your car takes.${t}`:"We don\u2019t hold factory tyre sizes for this car, so we can\u2019t tell you whether this tyre fits it. Please check your car\u2019s door placard or ask us before ordering."}var Lh={fits:"Fits",doesNotFit:"Not your size",unknown:"Unknown"};function pt1(e,t,a){if(!e)return"unknown";let s=t.filter(l=>l.size===a);if(s.length===0)return"unknown";let c=s.map(l=>Ua(e,l.sku));return c.includes("fits")?"fits":c.every(l=>l==="doesNotFit")?"doesNotFit":"unknown"}var mb={fits:{color:"var(--accent)",dashed:!1},doesNotFit:{color:void 0,dashed:!1},unknown:{color:void 0,dashed:!0}};function NZ(e,t){if(!e)return[];let a=[];for(let n of t)a.includes(n.size)||a.push(n.size);let s=a.filter(n=>pt1(e,t,n)==="fits"),c=n=>{let h=n4(n);return h?U4(h):null},l=new Map;for(let n of s){let h=c(n);h!==null&&!l.has(h)&&l.set(h,n)}let r=[],o=new Set,i=new Set;for(let n of e.oemSizes){let h=c(n),m=h===null?void 0:l.get(h),u=m??n;o.has(u)||(o.add(u),h!==null&&i.add(h),r.push({size:u,made:m!==void 0}))}for(let n of s){let h=c(n);h!==null&&i.has(h)||o.has(n)||(o.add(n),r.push({size:n,made:!0}))}return r}import{Fragment as _Z,jsx as Z4,jsxs as B4}from"react/jsx-runtime";function pb({slug:e,variants:t,vehicle:a,manualMode:s,setManualMode:c}){let{answer:l,loading:r}=Mh(e,s?null:vo(a.applied?.vehicle)),o=a.appliedName;return Z4(Nc,{vehicle:a,escape:Z4("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>c(i=>!i),children:s?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:s?B4(h5,{tone:"quiet",children:[Z4("strong",{className:"font-semibold text-fg",children:"You are choosing by size."}),B4("span",{className:"mt-1.5 block",children:["Pick the size above. We have not checked it against any car \u2014 make sure it matches the placard on your door."," ",Z4(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]}):null,verdict:Z4(ut1,{answer:l,loading:r,car:o,variants:t,onChange:a.clear}),showChangeCar:!1,cascadeErrorNote:B4(_Z,{children:["Vehicle data is unavailable right now. Pick your size above, or"," ",Z4(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every tyre after this one is already filled in."})}function ut1({answer:e,loading:t,car:a,variants:s,onChange:c}){if(t||!e)return B4(h5,{tone:"quiet",children:[Z4("strong",{className:"font-semibold text-fg",children:"Checking your car\u2026"})," ",B4("span",{children:["Reading the factory tyre sizes for your ",a,"."]})]});let l=NZ(e,s),r=e.status==="doesNotFit"?"You can still order any size here \u2014 check it suits your car first.":"",o=l.length===0?Sh(e):"",i=o&&r?`${o} ${r}`:o||r;return B4(h5,{tone:e.status==="fits"?"good":"quiet",children:[B4("span",{className:"block",children:[e.status==="fits"?B4("strong",{className:"font-semibold text-accent",children:["\u2713 Made in a size your ",a," takes"]}):e.status==="doesNotFit"?B4("strong",{className:"font-semibold text-fg",children:["Not made in a size your ",a," takes"]}):B4("strong",{className:"font-semibold text-fg",children:["We cannot check this tyre against your ",a]}),B4("span",{className:"whitespace-nowrap",children:[" \xB7 ",Z4("button",{type:"button",onClick:c,"aria-label":`Change car - forget ${a} and ask again`,className:"cursor-pointer uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})]})]}),i?Z4("span",{className:"mt-1.5 block",children:i}):null,l.length>0?B4(_Z,{children:[Z4("span",{className:"mt-1.5 block",children:"Your car takes:"}),Z4("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:l.map(n=>{let h=n.made?mb.fits:mb.doesNotFit;return Z4("li",{className:"border border-line px-2 py-1 text-[11px] uppercase tracking-[0.14em]",style:h.color?{color:h.color,borderColor:h.color}:void 0,children:n.made?`${n.size} \xB7 ${Lh.fits}`:n.size},n.size)})})]}):null]})}import{useEffect as IZ,useState as RZ}from"react";var Ah="(max-width: 720px) 88vw, (max-width: 1100px) 44vw, 700px";function BZ(e,t,a){return a<=1?0:((e+t)%a+a)%a}function ZZ(e,t,a){return[{glyph:"\u25C1",label:"Previous angle",onClick:()=>a(BZ(e,-1,t))},{glyph:"\u27F3",label:"Reset to first angle",onClick:()=>a(0)},{glyph:"\u25B7",label:"Next angle",onClick:()=>a(BZ(e,1,t))}]}function dt1(e){let{props:t}=qx({src:e,alt:"",fill:!0,sizes:Ah}),a=new window.Image;return t.sizes&&(a.sizes=t.sizes),t.srcSet&&(a.srcset=t.srcSet),a.src=t.src,a.decode()}function DZ(e,t,a=dt1){let[s,c]=RZ(()=>new Set),[l,r]=RZ(t),o=e.join(`
152
152
  `);IZ(()=>{let n=!0,h=m=>{n&&c(u=>u.has(m)?u:new Set(u).add(m))};for(let m of o?o.split(`
153
- `):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return IZ(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as vt1,jsx as C3,jsxs as J3}from"react/jsx-runtime";function ub({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=Fn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(wg),n=JI({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return C3(Nc,{vehicle:a,escape:C3("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>l(h=>!h),children:c?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:c?J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),J3("span",{className:"mt-1.5 block",children:[t?`${i?"The set is":"All four wheels are"} ${t}. We have not checked that against any car \u2014 make sure it matches yours.`:r?"Answer the bolt pattern and the offset below. We will not check them against a car.":"Pick a finish and a size below. The bolt pattern and the offset come next, and we will not check them against a car."," ",C3(L1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:C3(gt1,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:J3(vt1,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every wheel after this one is already filled in."})}function gt1({verdict:e,car:t}){switch(e.state){case"checking":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",J3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))})]});case"fits-with-warning":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))}),J3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[C3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),p9(e.warning)," An offset this far out is what an aftermarket wheel is for, but it changes how far the wheel sits from the guard."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return J3(h5,{tone:"bad",children:[J3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),C3("span",{className:"mt-1.5 block",children:p9(e.failure)})]});case"unknown":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),J3("span",{className:"mt-1.5 block",children:[e.missing==="vehicle"?`We have no factory wheel data for the ${t}, and we will not guess at a fit.`:"We do not hold a bolt pattern for this wheel, and we will not guess at a fit."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as WZ}from"react";import{useCallback as GZ,useRef as ft1,useState as bt1}from"react";function OZ(e,t,a){return{productSlug:e,email:a.trim(),size:t?He(t):""}}function qZ(){let[e,t]=bt1("idle"),a=ft1(!1),s=GZ(()=>{a.current=!1,t("idle")},[]),c=GZ(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!be(o)){t("invalid");return}a.current=!0,t("sending");try{i||await v0.createPreOrderIntent(OZ(l,r,o))}catch{a.current=!1,t("error");return}a.current=!1,t("sent")}},[]);return{status:e,submit:c,reset:s}}import{jsx as na,jsxs as ha}from"react/jsx-runtime";function db({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=WZ(a.length>0?0:-1),[l,r]=WZ(""),{status:o,submit:i,reset:n}=qZ(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ha("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ha("div",{className:"border-2 border-accent/40 px-4 py-3.5 font-mono text-[12px] leading-relaxed tracking-[0.08em] text-fg",style:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:[na("span",{className:"font-bold uppercase tracking-[0.2em] text-accent",children:"Pre-order"})," ","\u2014 this design isn't available to add to cart right now. Leave your email to pre-order it. No payment is taken now."]}),a.length>0&&ha("div",{children:[ha("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",na("span",{className:"text-accent",children:h?He(h):"Select a size"})]}),na("div",{className:"flex flex-wrap gap-1.5",children:a.map((u,d)=>{let v=d===s;return ha("button",{type:"button",onClick:()=>{c(d),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",v?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:v?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[v&&na("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),na("span",{className:"block text-[14px] tracking-[0.18em]",children:He(u)})]},He(u))})})]}),o==="sent"?ha("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-accent",children:["Thanks \u2014 we've registered your pre-order for the ",e.name,"."]}):na(Vc,{email:l,onEmailChange:r,status:o,onResetVerdict:n,onSubmit:m,inputAriaLabel:"Email to pre-order this design",submitLabel:"Pre-order",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn bg-btn px-6 font-mono text-[12px] font-bold uppercase tracking-[0.22em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-not-allowed disabled:opacity-50",errorMessage:"Couldn't register that \u2014 please try again."})]})}import{useState as xt1}from"react";import{Fragment as zt1,jsx as Hh}from"react/jsx-runtime";function Fh({src:e,alt:t,fallback:a,fill:s=!1,width:c,height:l,sizes:r,className:o,style:i,priority:n,draggable:h,imageKey:m,imageWrapperClassName:u,onImageClick:d,imageButtonClassName:v,imageButtonLabel:g}){let[b,f]=xt1(null),w=e||"";if(!(w!==""&&b!==w))return Hh(zt1,{children:a});let k=Hh(_3,{src:w,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>f(w)},m??w),S=u?Hh("div",{className:u,children:k}):k;return d?Hh("button",{type:"button",onClick:d,"aria-label":g,className:v,children:S}):S}function UZ(e){let t=e.angles??(e.src?[e.src]:[]),a=[],s=[];for(let c of t)(c.split("/").pop()??"").includes("20-20")?a.push(c):s.push(c);return[...s,...a]}var KZ="Image for reference only. Actual product may vary.",jZ=e=>String(Number(e));function $Z(e,t,a,s){let c=e.renderFits;if(!c||!t||t.diameter==null||t.width==null)return!1;let l=s&&a!=null?c.lug?.[String(a)]:c.angles;if(!l)return!1;let r=jZ(t.diameter);if(!(l.sizes.length===0||l.sizes.includes(`${r}x${jZ(t.width)}`)||l.sizes.includes(r)))return!0;let i=l.lugs??[];return!s&&a!=null&&i.length>0&&!i.includes(a)}import{Fragment as YZ,jsx as D4,jsxs as wt1}from"react/jsx-runtime";function Th(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function Ph({text:e}){return e==="FusionForge\xAE"?wt1(YZ,{children:["FusionForge",D4(i6,{})]}):D4(YZ,{children:e})}function XZ(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",u=h.variants.find(g=>g.size===m),d=u?.specs.tireType??h.variants[0]?.specs.tireType??null,v=[u?.image,h.coverImage].filter(g=>!!g);return{heading:cn(h.brand,h.name),photos:v.slice(0,1),tint:void 0,stageImage:()=>D4(p6,{image:u?.image??h.coverImage,size:m,type:d,sizes:Ah,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",referenceNote:"",metaValue:m,specCaption:u?[u.specs.loadIndex,u.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:D4(pb,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=AN(s,t.shown.finish),l=D7(s,t.part),r=Vn(t),o=Hg(c,r),i=o?[...o]:UZ(c),n=i.length>0?i:s.coverImage?[s.coverImage]:[];return{heading:e.name,photos:n,tint:c.color,stageImage:({photo:h,alt:m,label:u,onZoom:d,fit:v})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:Ah,className:v==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:d,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:u,fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:"(max-width: 720px) 20vw, (max-width: 1100px) 10vw, 120px",className:"object-contain",imageWrapperClassName:"relative h-[80%] w-[80%]",fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:yt1(n,c,r,t.manualMode),referenceNote:$Z(c,l,r,o!=null)?KZ:"",metaValue:c.name,specCaption:l?js(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:D4(ub,{selection:t,spec:l?js(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:D4(db,{wheel:s,editing:a})}}function yt1(e,t,a,s){return e.length>=2||a!=null||!Object.values(t.lugRenderings??{}).some(l=>Array.isArray(l)&&l.filter(Boolean).length>=2)?"":s?"Pick a bolt pattern to see every angle":"Pick your vehicle to see every angle"}import{createContext as Ct1,useContext as kt1,useEffect as Mt1,useState as JZ}from"react";import{jsx as Lt1}from"react/jsx-runtime";var QZ="storefront-wishlist";function St1(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var eD=Ct1(null);function ne0({children:e}){let[t,a]=JZ([]),[s,c]=JZ(!1);Mt1(()=>{let o=t3.getItem(QZ);try{o&&a(St1(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),t3.setItem(QZ,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return Lt1(eD.Provider,{value:r,children:e})}function tD(){let e=kt1(eD);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var aD="data-option-row";import{Fragment as m5,jsx as w1,jsxs as K1}from"react/jsx-runtime";var Ht1=4e3;function Ft1(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}var Tt1=.72;function Pt1(e){let t=e.trim().split(/\s+/).filter(Boolean);if(t.length===0)return;let a=t.map((s,c)=>s.length+(t.length>1&&c===t.length-1?1:0));return`calc(100cqi / ${(Math.max(...a)*Tt1).toFixed(2)})`}function ma({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=e8,imageRatio:o=t8,textAlign:i=g9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=a8,imageFit:u=s8}){let d=Jt(r),v=th(i),g=ah(o),b=sh(m),f=rB(ch(u),xN(e)),w=d==="imageRight"?`${100-g}fr ${g}fr`:`${g}fr ${100-g}fr`,{picked:z,pick:k,qty:S,setQty:H,choice:I,setChoice:P,angleIdx:D,setAngleIdx:E,showValidation:F,setShowValidation:_,manualMode:Z,vehicle:G,rows:V,facts:j,part:N,outOfStock:Q,offer:W,preOrder:U,canAddToCart:i1,currency:y1,price:K,set:c1,msrpLabel:b1}=t,$=XZ(e,t,s),{bullets:u1}=wL(),x1=mN(e),X0=dN(e),o0=l?$.vehicle:null,I1=l?$.vehicleMemory:null,[c0,l0]=cD(!1);gb(()=>{let e1=()=>{l0(document.documentElement.getAttribute("data-theme")==="light")};e1();let z1=new MutationObserver(e1);return z1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>z1.disconnect()},[]);let{add:X1,open:X2,warmCatalog:Q1}=i4();gb(()=>{s||Q1(e.kind)},[s,e.kind,Q1]);let d2=V.filter(e1=>!U||e1.values.length>0),b0=d2.filter(e1=>e1.role==="resolves"),d1=d2.filter(e1=>e1.role==="describes"&&!zN(X0,e1.key)),$1=d1.findIndex(e1=>e1.chosen===null),u0=(!o0||!$.vehicleAnswersSpecs||t.fitmentSet)&&Fn(V,U)?$1===-1?d1:d1.slice(0,$1+1):[],P0=[...b0,...u0],J0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[b1&&w1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:b1}),w1("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] font-bold leading-none tracking-[-0.01em] text-fg",children:x1?IC(K,y1):fe(K,y1)}),K.priced&&w1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:$.unitLabel}),K.setTotal!=null&&K1("div",{className:"ml-auto border border-accent px-3 py-2 font-mono text-[length:var(--size-label,13px)] font-bold uppercase tracking-[0.18em] text-accent",style:{background:"color-mix(in oklab, var(--accent) 14%, transparent)"},children:[W.quantityLabel,": ",B2(c1,y1)]})]}),q0=At1(null);return gb(()=>{s||q0.current===e.slug||(q0.current=e.slug,RC({itemId:N?`${e.slug}|${N.id}`:e.slug,itemName:e.name,variant:$.metaValue,pricePerSet:K.setTotal??K.fromSetTotal??0,currency:y1}))},[s,e.slug,e.name,$.metaValue,N,K,y1]),K1(m5,{children:[w1("nav",{className:"border-b border-line px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] pt-4 pb-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:c0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((e1,z1)=>K1("span",{children:[z1>0&&K1(m5,{children:[w1("span",{className:"mx-3 text-accent",children:"/"}),w1("wbr",{})]}),e1.href?w1(L1,{href:e1.href,className:"hover:text-fg",children:w1(Ph,{text:e1.label})}):w1("span",{className:"text-fg",children:w1(Ph,{text:e1.label})})]},`${e1.label}-${z1}`))}),K1("section",{"data-hero-layout":d,"data-hero-align":v,className:["grid gap-10 px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] py-14 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-8",d==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:minmax(0,1fr)]"].join(" "),style:{...c0?{}:{background:"var(--section-bg)"},...d==="stacked"?{}:{"--hero-cols":w}},children:[K1("div",{"data-hero-gallery":b,"data-hero-fit":f,className:b==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:d==="imageRight"?{order:2}:void 0,children:[K1("div",{className:b==="tiled"?"min-w-0 flex-1":void 0,children:[w1(Nt1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,onLightbox:a,fit:f}),$.referenceNote&&w1("p",{"data-hero-reference-note":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.referenceNote}),$.galleryHint&&w1("p",{"data-hero-gallery-hint":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.galleryHint})]}),b!=="main"&&w1(_t1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,tiled:b==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",v==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:d==="imageRight"?{order:1}:void 0,children:[K1("div",{className:"w-full [container-type:inline-size]",children:[K1("div",{className:"mb-2.5 flex items-center gap-2.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-accent",children:[w1("span",{children:w1(Ph,{text:e.eyebrow})}),e.badge&&K1(m5,{children:[w1("span",{children:"\xB7"}),w1("span",{children:e.badge})]})]}),w1("h1",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--sf-heading-max,9999px),var(--hero-name-fit,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",style:{"--hero-name-fit":Pt1($.heading)},children:(()=>{let e1=$.heading.lastIndexOf(" ");if(e1===-1)return $.heading;let z1=$.heading.slice(0,e1),t0=$.heading.slice(e1+1);return K1(m5,{children:[z1," ",K1("em",{className:"font-normal italic text-accent",children:[t0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&J0,I1,b0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),U&&$.preOrder?K1(m5,{children:[c==="belowSpecs"&&h&&J0,$.preOrder]}):K1(m5,{children:[o0,u0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),n&&w1(Et1,{facts:j}),(W.packs.length>0||W.extra||W.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[W.packs.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.packs.map(e1=>K1("button",{type:"button",onClick:()=>P(z1=>({...z1,unit:e1.value})),"aria-pressed":I.unit===e1.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",I.unit===e1.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:I.unit===e1.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[I.unit===e1.value&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value))})]}),W.extra&&K1("label",{className:`${W.packs.length>0?"mt-3.5 ":""}flex cursor-pointer items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-fg`,children:[w1("input",{type:"checkbox",checked:I.spares>0,onChange:e1=>P(z1=>({...z1,spares:e1.target.checked?vr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),W.extra.label]}),W.spareCounts.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:a9.howMany}),w1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:W.spareCounts.map(e1=>{let z1=e1.value-i7,t0=I.spares===z1;return K1("button",{type:"button",onClick:()=>P(s2=>({...s2,spares:z1})),"aria-pressed":t0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",t0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:t0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[t0&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),K1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:[e1.value," \xB7 ",e1.label]})]},e1.value)})})]}),W.spareSide&&K1(m5,{children:[w1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:W.spareSide.label}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.spareSide.options.map(e1=>{let z1=I.spareSide===e1.value;return K1("button",{type:"button",onClick:()=>P(t0=>({...t0,spareSide:e1.value})),"aria-pressed":z1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",z1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:z1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[z1&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value)})})]})]}),c==="belowSpecs"&&h&&J0,K1("div",{className:PZ,children:[!(x1&&!K.priced)&&w1(Ka,{value:S,onChange:H,size:"large"}),x1&&!K.priced?w1(L1,{href:"/contact",className:"flex-1 cursor-pointer bg-btn px-6 py-4 text-center font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg",children:br}):K.priced?Q?w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:"Out of stock"}):K1("button",{type:"button",[ue]:"",onClick:()=>{if(!i1){_(!0),window.setTimeout(()=>_(!1),Ht1);return}if(_(!1),s)return;let e1=PN(e,N,z,{choice:I,qty:S},{fitmentLabel:Z?$.specCaption:G.appliedName?`For ${G.appliedName}`:"",fitmentKey:Z?`manual|${$.specCaption}`:`vehicle|${Ft1(G.applied?.vehicle)}`});e1&&(X1(e1),X2())},"aria-disabled":!i1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",i1?"cursor-pointer bg-btn text-btn-ink hover:bg-fg hover:text-bg":"cursor-pointer border-2 border-dashed border-accent/50 text-accent/80 hover:border-accent hover:text-accent"].join(" "),style:i1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",K.setTotal!=null?` \xB7 ${B2(c1,y1)}`:""]}):w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:n7}),w1(It1,{slug:e.slug,name:e.name})]}),Q&&N&&w1(Rt1,{partNumbers:N.components.map(e1=>e1.partNumber),productSlug:e.slug},N.id),F&&(()=>{let e1=P0.filter(t0=>t0.chosen===null).map(t0=>t0.prompt.replace(/^Select\s+/i,""));if(o0&&$.vehicleAnswersSpecs&&!t.fitmentSet&&e1.push("vehicle fitment"),e1.length===0)return null;let z1=e1.length===1?e1[0]:e1.length===2?`${e1[0]} and ${e1[1]}`:`${e1.slice(0,-1).join(", ")}, and ${e1.at(-1)}`;return K1("p",{role:"alert",className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:["Please select ",z1," first."]})})()]}),u1.length>0&&w1("ul",{className:"flex flex-wrap items-center gap-x-6 gap-y-2 border-t border-line pt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.05em] text-fg",children:u1.map((e1,z1)=>K1("li",{children:[w1("strong",{className:"font-bold text-accent",children:e1.label}),e1.detail?` ${Xa} ${e1.detail}`:""]},`${e1.label}-${z1}`))})]})]})]})}function Et1({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[w1("dl",{className:"flex flex-col gap-2",children:e.map(t=>K1("div",{className:"flex flex-wrap items-baseline gap-x-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em]",children:[K1("dt",{className:"text-fg-dim",children:[t.label," \xB7"]}),w1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),w1("p",{className:"mt-3 font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:"Only one of each is left, so there is nothing to choose here."})]})}function sD({row:e,onPick:t}){if(e.values.length===0&&!e.empty)return null;let a=e.values.find(c=>c.value===e.chosen),s=a&&[a.label,a.note].filter(Boolean).join(" \xB7 ");return K1("div",{className:"border-b border-line pb-[26px]",[aD]:e.key,children:[K1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:[e.label," \xB7 ",w1("span",{className:"text-accent",children:s??e.prompt})]}),e.values.length===0?K1("p",{className:"font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:[e.empty.text," ",w1(L1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?w1("div",{className:"grid grid-cols-2 gap-2",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative flex items-center gap-3 border-2 px-3 py-3 text-left transition-colors",l?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),w1("span",{className:"block min-w-0 flex-1 truncate font-mono text-[length:var(--size-label,12px)] font-bold uppercase tracking-[0.18em] text-fg",children:c.label})]},c.value)})}):w1("div",{className:"flex flex-wrap gap-1.5",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",l?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&w1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function lD(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var Vt1=6;function Nt1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,onLightbox:l,fit:r}){let o=t.photos[Math.min(a,t.photos.length-1)],i=DZ(t.photos,o),n=lD(t),h=n>=2,m=String(n).padStart(2,"0"),u=Math.min(a,Math.max(t.photos.length-1,0)),d=h||t.captions[u]?Th(t,u):"",v=[e,t.metaValue,d].filter(Boolean).join(" \u2014 "),g="max-[720px]:static",b=["relative flex aspect-square items-center justify-center overflow-hidden max-[720px]:col-span-2",c?"bg-bg":""].join(" ");return K1("div",{className:"relative max-[720px]:grid max-[720px]:grid-cols-[minmax(0,1fr)_auto] max-[720px]:items-start max-[720px]:gap-x-3 max-[720px]:gap-y-2",style:{color:t.tint},children:[K1("div",{className:`absolute left-0 top-0 z-10 flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-fg ${g} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(m5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),w1("span",{className:"text-fg-dim",children:"\xB7"})]}),w1("span",{children:e}),t.metaValue&&K1(m5,{children:[w1("span",{className:"text-fg-dim",children:"\xB7"}),w1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&w1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${g}`,children:ZZ(a,n,s).map(w=>w1("button",{type:"button","aria-label":w.label,title:w.label,onClick:w.onClick,className:"flex h-7 w-7 items-center justify-center border border-fg-dim/60 text-fg transition-colors hover:border-accent hover:text-accent",children:w.glyph},w.label))}),K1("div",{className:b,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((w,z)=>w1("span",{className:`absolute ${w} h-3 w-3 border border-fg-dim/40`,style:{borderTop:w.includes("top")?"1px solid var(--site-line)":"none",borderBottom:w.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:w.includes("left")?"1px solid var(--site-line)":"none",borderRight:w.includes("right")?"1px solid var(--site-line)":"none"}},z)),t.stageImage({photo:i,alt:v,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,v),fit:r})]}),K1("div",{className:`absolute bottom-5 left-5 right-5 z-10 flex items-center justify-between gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim ${g} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[w1("span",{children:t.specCaption}),w1("span",{children:t.originCaption})]})]})}function _t1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=lD(t);return r<2?null:w1("div",{className:l?"order-[-1] flex w-16 flex-col gap-2 max-[720px]:w-12 max-[720px]:gap-1":"mt-2 grid grid-cols-4 gap-2 max-[720px]:gap-1",style:!l&&r>4?{gridTemplateColumns:`repeat(${Math.min(r,Vt1)}, minmax(0, 1fr))`}:void 0,children:Array.from({length:r}).map((o,i)=>{let n=t.photos[i];return K1("button",{type:"button",onClick:()=>s(i),"aria-label":`View ${Th(t,i)}`,className:["relative flex aspect-square items-center justify-center overflow-hidden transition-colors",c?"bg-bg":"",i===a?"border border-accent":"border border-transparent hover:border-fg-dim"].join(" "),style:{color:t.tint},children:[w1("span",{className:"absolute top-1.5 left-2 z-10 font-mono text-[length:var(--size-label,8px)] uppercase tracking-[0.18em] text-fg-dim",children:String(i+1).padStart(2,"0")}),t.thumbImage({photo:n,alt:`${e} \u2014 ${Th(t,i)}`})]},i)})})}function It1({slug:e,name:t}){let{has:a,toggle:s}=tD(),c=a(e);return w1("button",{type:"button",title:c?"Saved":"Save","aria-label":c?`Remove ${t} from wishlist`:`Save ${t} to wishlist`,"aria-pressed":c,onClick:()=>s(e),className:["h-12 w-12 cursor-pointer border-2 bg-transparent transition-colors",c?"border-accent text-accent":"border-fg-dim/50 text-fg hover:border-accent hover:text-accent"].join(" "),children:c?"\u2665":"\u2661"})}function Rt1({partNumbers:e,productSlug:t}){let[a,s]=cD(""),{status:c,submit:l,reset:r}=nn();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?w1("p",{className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:"We'll email you when it's back."}):w1(Vc,{className:"-mt-1",email:a,onEmailChange:s,status:c,onResetVerdict:r,onSubmit:o,inputAriaLabel:"Email for the back-in-stock alert",submitLabel:"Notify me when back",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn px-4 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.22em] text-btn transition-colors hover:bg-btn hover:text-btn-ink disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-btn",errorMessage:"Couldn't save that \u2014 please try again."})}import{Fragment as Dt1,jsx as _c,jsxs as Ot1}from"react/jsx-runtime";function vb({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=rD(null),[i,n]=rD(!1);return Bt1(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?v0.getTyre(e).then(u=>({kind:"tyre",tyre:u})):v0.getWheel(e).then(u=>({kind:"wheel",wheel:u}))).then(u=>{h||o(u)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?_c(A4,{size:"tall",children:"Couldn\u2019t load this product."}):r?_c(Zt1,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):_c(A4,{size:"tall",children:"Loading product\u2026"})}function Zt1({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?Nn(e.tyre):Ks(e.wheel),r=vc(l,{editing:t}),o=gc();return Ot1(Dt1,{children:[_c(ma,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),_c(Bt,{item:o.item,onClose:o.close})]})}import{Fragment as Ut1,jsx as o8,jsxs as jt1}from"react/jsx-runtime";var Gt1=D3;function Eh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=$0();return o8(z2,{kinds:Gt1,type:"ProductHero",editing:e,children:c?o8(ma,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?o8(qt1,{pricePlacement:t,showVehicleFitment:a,...s}):o8(A4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function qt1({pricePlacement:e,showVehicleFitment:t,...a}){let s=z3(!0);return s?o8(Wt1,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):o8(A4,{size:"tall",children:p("Loading sample product\u2026")})}function Wt1({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=vc(e,{editing:!0}),l=gc();return jt1(Ut1,{children:[o8(ma,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),o8(Bt,{item:l.item,onClose:l.close})]})}import{jsx as Ic}from"react/jsx-runtime";function Kt1({source:e,editing:t=!1,pricePlacement:a=Xt,showVehicleFitment:s=!0,heroLayout:c=e8,imageRatio:l=t8,textAlign:r=g9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=a8,imageFit:h=s8}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return $0()||t&&M2()?Ic(Eh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Ic(vb,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Ic(A4,{size:"tall",children:p("Pick a product in the panel to fill this hero.")}):Ic(Eh,{pricePlacement:a,showVehicleFitment:s,...m})}var oD={label:"Product Hero",defaultProps:{source:null,pricePlacement:Xt,showVehicleFitment:!0,heroLayout:e8,imageRatio:t8,textAlign:g9,showSpecTable:!0,showPriceQuote:!0,galleryMode:a8,imageFit:s8},render:e=>Ic(Kt1,{source:e.source,editing:e.puck?.isEditing,pricePlacement:cB(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Jt(e.heroLayout),imageRatio:ah(e.imageRatio),textAlign:th(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:sh(e.galleryMode),imageFit:ch(e.imageFit)})};import{jsx as $t1}from"react/jsx-runtime";var iD={label:"Product",defaultProps:{code:"",finish:""},render:e=>$t1(hf,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as Yt1}from"react/jsx-runtime";var nD={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>Yt1(jB,{style:e,editing:t?.isEditing})};import{useEffect as Jt1,useRef as Qt1}from"react";import{jsx as Rc,jsxs as hD}from"react/jsx-runtime";var Xt1={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function fb({variants:e,answer:t,loading:a=!1}){return t?hD("div",{className:"mt-9",children:[Rc("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Sh(t)}),Rc("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ua(t,s.sku),l=Xt1[c];return hD("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Rc("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Rc("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Lh[c]})]},s.sku)})})]}):a?Rc("p",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.24em] text-fg-dim",children:"Checking your car\u2026"}):null}import{jsx as bb,jsxs as mD}from"react/jsx-runtime";var xb="Will it fit *your car?*",zb="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",yb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",wb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20";function Cb({num:e,title:t=xb,description:a=zb,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=I4({autoApply:!0}),{answer:h,loading:m}=Mh(r,vo(n.applied?.vehicle)),u=Qt1(i);return u.current=i,Jt1(()=>{u.current?.(h)},[h]),mD("section",{className:l?wb:yb,children:[l?null:bb(s0,{num:e,title:t,description:a,accent:!0}),bb(X3,{cascade:n.cascade}),s&&c?mD("a",{href:c,className:"mt-6 inline-block font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-accent underline-offset-4 hover:underline",children:[s," \u2192"]}):null,bb(fb,{variants:o,answer:h,loading:m})]})}import{jsx as Bc,jsxs as aa1}from"react/jsx-runtime";var ea1=["tyre"];function kb(e){return Bc(z2,{kinds:ea1,type:"TyreFitment",editing:e.editing,children:Bc(ta1,{...e})})}function ta1({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=$0(),i=z3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?aa1("section",{className:l?wb:yb,children:[l?null:Bc(s0,{num:e,title:t||xb,description:a||zb,accent:!0}),Bc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The vehicle question appears here on a tyre product page, with one verdict per size.")})]}):null:Bc(Cb,{num:e,title:t||void 0,description:a||void 0,escapeText:s,escapeHref:c,omitHead:l,slug:h.slug,variants:h.variants})}import{jsx as sa1}from"react/jsx-runtime";var pD={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=a1(e.escapeText),c=a1(e.escapeHref);return sa1(kb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as i8,jsxs as gD}from"react/jsx-runtime";var uD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",dD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20",ca1=[],la1=["tyre"];function Mb(e){return i8(z2,{kinds:la1,type:"TyreSizes",editing:e.editing,children:i8(ra1,{...e})})}function ra1({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=$0(),r=z3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:i8(s0,{num:e?M(e):void 0,title:Y(t||"Available *sizes.*",!1),description:M(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?gD("section",{className:c?dD:uD,children:[n,i8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("This product\u2019s sizes appear here on a product page.")})]}):null;let h=i.some(m=>!m.image);return gD("section",{className:c?dD:uD,children:[n,i8(oa1,{variants:i,fieldUsage:l?.fieldUsage??ca1}),i8(s5,{text:h?uo:""})]})}function oa1({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=d0();return i8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>i8(uc,{fieldUsage:t,size:c.size,specs:c.specs,prices:c.prices,image:c.image,inStock:c.inStock,currency:a,formatPrice:s},c.sku))})}import{jsx as ia1}from"react/jsx-runtime";var vD={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ia1(Mb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var fD={AlloyWheelsListing:f_,BrandStrip:RB,BundleOffer:GB,CartBlock:YB,CatalogFilterBar:nZ,CheckoutCTA:I_,CollectionCard:mZ,Collections:G_,CompatibleTyres:xI,CountrySwitchBlock:pZ,DeliveryOptions:CI,DetailRows:RI,EuTyreLabel:uZ,FitmentFinder:WI,FitmentTable:mR,Gallery:xR,GalleryB:HR,GalleryItem:dZ,Header:TZ,ProductGrid:$R,ProductHero:oD,ProductRef:iD,RelatedProducts:dB,SearchBlock:nD,SpecTable:FB,TyreFitment:pD,TyreSizes:vD};var na1={AlloyWheelsListing:z_,BrandStrip:M_,BundleOffer:S_,CartBlock:L_,CatalogFilterBar:N_,CheckoutCTA:R_,CollectionCard:D_,Collections:W_,CompatibleTyres:zI,CountrySwitchBlock:yI,DeliveryOptions:MI,DetailRows:ZI,EuTyreLabel:DI,FitmentFinder:UI,FitmentTable:pR,Gallery:wR,GalleryB:FR,GalleryItem:RR,Header:BR,ProductGrid:XR,ProductHero:oB,ProductRef:uB,RelatedProducts:gB,SearchBlock:vB,SpecTable:PB,TyreFitment:EB,TyreSizes:VB},G0=et(fD,na1);import{jsx as x4,jsxs as Vh}from"react/jsx-runtime";function Lb(e={}){let t=gC();return x4(UL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:x4(ha1,{...e})})}var bD="mx-auto max-w-[var(--sf-site-width,1600px)] px-[min(24px,var(--sf-site-gutter,40px))] py-16 min-[800px]:px-[var(--sf-site-gutter,40px)] min-[800px]:py-[88px]",Sb="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function ha1({eyebrow:e,heading:t,intro:a,buttonLabel:s,successMessage:c,boxes:l,inBoxes:r=!1}){let{fieldPrefix:o,editing:i,services:n,currency:h,serviceId:m,setServiceId:u,requiresPayment:d,date:v,earliestDate:g,setDate:b,setDateTouched:f,availability:w,loadingSlots:z,noSlotsMessage:k,selectedStart:S,setSelectedStart:H,customerTimezone:I,name:P,setName:D,email:E,setEmail:F,phone:_,setPhone:Z,notes:G,setNotes:V,confirmation:j,submitting:N,error:Q,canSubmit:W,handleSubmit:U,sample:i1}=C7(),y1=i1?x4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:p("Example form \u2014 add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")})}):null,K=n===void 0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?p("Add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")}):"Appointments are not available right now."}):null;return r&&l?x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,j?x4(l,{className:`${Sb} items-start`}):Vh("form",{onSubmit:U,children:[x4(l,{className:`${Sb} items-start`}),K]})]})}):x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,x4(Do,{eyebrow:e,heading:t,intro:a}),j?x4(qo,{successMessage:c}):K||Vh("form",{onSubmit:U,className:Sb,children:[x4(Oo,{}),x4(Go,{buttonLabel:s})]})]})})}import{jsx as ma1}from"react/jsx-runtime";var Ab={boxes:{type:"slot",allow:["BookingBox"]}},xD={label:"Booking Form",fields:Ab,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>ma1(Lb,{eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var zD={fields:{_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message"),boxes:Ab.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{eyebrow:a,heading:s,intro:c,buttonLabel:l,successMessage:r,...o}=t;return o}};var yD={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Wo.map(e=>[Uo[e],g1(Hu[e],Ke(Hu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Wo.map(r=>Uo[r]),l=r=>Object.fromEntries(Object.entries(s).filter(([o])=>o.startsWith("_")||c.includes(o)||r.includes(o)));return l(a==="head"?["eyebrow","heading","intro"]:a==="details"?["buttonLabel"]:a==="confirm"?["successMessage"]:[])}};import{EyeIcon as pa1,LinkIcon as wD,EyeOffIcon as ua1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var CD={fields:{_gTop:x("Routing groups"),routingNumber:T("Section number",f0.routingNumber),routingTagline:T("Eyebrow",f0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:q("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:q("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||p("Group")},_gForm:x("Message form"),formSlug:E5(),formNumber:T("Section number",f0.formNumber),formHeading:O("Heading",f0.formHeading),metaItems:T2("Meta lines",Zc(c4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:x("\u201COther\u201D reason"),showOther:l1("Show \u201COther\u201D reason",f0.showOther,Zc(pa1,{})),otherLabel:q("\u201COther\u201D chip label",f0.otherLabel),otherNoteTitle:T("\u201COther\u201D note title",f0.otherNoteTitle),otherNoteBody:O("\u201COther\u201D note body",f0.otherNoteBody),_gSubmit:x("Submit button"),buttonText:q("Submit button",f0.buttonText),consent:O("Consent line",f0.consent),_gChannels:x("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:q("Label"),value:q("Value"),href:e3(q("Link")),sub:q("Sub line"),groupId:g1("Link to group",Zc(wD,{}),[{label:"\u2014 Not linked \u2014",value:""},...f0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:l1("Hidden",!1,Zc(ua1,{}))},getItemSummary:e=>{let t=e?.label||e?.value||p("Channel");return e?.hidden?p("{name} \xB7 hidden",{name:t}):t}}},resolveData:e=>{let t=e.props.groups??[];if(!t.some(c=>!c?.id))return e;let a=new Set,s=t.map((c,l)=>{if(c?.id)return a.add(c.id),c;let r=Ou(c?.title)||`group-${l+1}`;for(;a.has(r);)r=`${r}-${l+1}`;return a.add(r),{...c,id:r}});return{...e,props:{...e.props,groups:s}}},resolveFields:(e,{fields:t})=>{let a=e.props.groups??[],s=[{label:"\u2014 Not linked \u2014",value:""},...a.map((r,o)=>({label:r?.title||r?.eyebrow||p("Group {n}",{n:o+1}),value:r?.id||Ou(r?.title)||`group-${o+1}`}))],c=t,l=c.channels;return l?.type==="array"&&l.arrayFields&&(c.channels={...l,arrayFields:{...l.arrayFields,groupId:g1("Link to group",Zc(wD,{}),s,"")}}),t}};import{useEffect as da1,useRef as ga1,useState as va1}from"react";import{jsx as MD,jsxs as ya1}from"react/jsx-runtime";var fa1=12,Nh=null,kD=null;function ba1(e=!1){let t=i2();if((e||kD!==t)&&(Nh=null),!Nh){let a=R3();kD=t,Nh=J1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return Nh}function xa1(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"2-digit"})}function za1(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?A9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:xa1(e.published_at)||void 0}}function b9({value:e,onChange:t,snapshotCount:a=fa1}){let[s,c]=va1("idle"),l=Array.isArray(e),r=l?e.length:0,o=ga1(!0),i=m=>{c("loading"),ba1(m).then(u=>{if(!o.current)return;if(u===null){c("error");return}c("idle");let d=u.slice(0,a).map(za1);b6(d,e??null)&&t(d)})};da1(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=p("Storefront \u2192 Blog"),h=s==="loading"?p("Syncing from {place}\u2026",{place:n}):s==="error"?p("Couldn\u2019t reach {place}.",{place:n}):l?p3("Auto-synced from {place} \xB7 {n} post","Auto-synced from {place} \xB7 {n} posts",r,{place:n}):p("Linking to {place}\u2026",{place:n});return ya1("div",{children:[MD(Ol,{label:"Blog posts"}),MD(E4,{status:s,statusText:h,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:p("Auto-refreshes from the most-recent visible posts each time you open the editor. Set how many appear with \u201CPosts to display\u201D.")})]})}import{useState as wa1}from"react";import{jsx as _0,jsxs as n8}from"react/jsx-runtime";var SD=3,HD="featured",_h="tabs",FD="portrait",pa="spread",Ih="count",TD=[{label:"Even grid",value:"even"},{label:"Featured first",value:HD},{label:"Tabs",value:_h},{label:"Photo cards",value:FD},{label:"Staggered spread",value:pa},{label:"Count",value:Ih}],Ca1=[FD,pa],PD="even",Z6={min:2,max:11,step:1,fallback:7,unit:"of 12"},ka1="bottom-left",Ma1=55,Sa1="bottom";function La1(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(Z6.max,Math.max(Z6.min,Math.round(t))):Z6.fallback;return`${a}fr ${12-a}fr`}var LD={1:"grid-cols-1",2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"},AD={2:"grid-cols-2",3:"grid-cols-3 max-[800px]:grid-cols-2",4:"grid-cols-4 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-2"},Aa1="Find by name",Ha1="Nobody by that name.";function Fa1(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function Ta1({card:e,scaffold:t,lower:a=!1}){return n8(r0,{href:e.href||"#",className:`sf-card group relative isolate flex aspect-[3/4] overflow-hidden bg-surface${a?" min-[801px]:mt-16":""}`,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,children:[_0("div",{className:"absolute inset-0 transition-transform duration-700 group-hover:scale-[1.03] motion-reduce:transition-none motion-reduce:group-hover:scale-100",children:_0(k0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),_0("div",{"aria-hidden":!0,className:"absolute inset-0 z-0",style:{background:"linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--bg) 88%, transparent) 100%)"}}),e.meta&&_0("span",{className:"absolute left-3 top-3 z-[1] rounded-[var(--sf-button-radius,999px)] bg-bg/85 px-2.5 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-accent",children:M(e.meta)}),n8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[_0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:Y(e.title,!1)}),e.dateLabel&&_0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:M(e.dateLabel)}),e.excerpt&&_0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:M(e.excerpt)})]})]})}function Pa1({cards:e,scaffold:t}){return _0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:_0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return _0("li",{children:n8(r0,{href:a.href||"#","aria-current":c?"page":void 0,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,className:`flex flex-col gap-0.5 rounded-[var(--sf-button-radius,999px)] border px-5 py-2.5 transition-colors ${c?"border-accent bg-accent text-accent-ink":"border-line text-fg hover:border-accent hover:text-accent"}`,children:[_0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:Y(a.title,!1)}),a.excerpt&&_0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:M(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function Ea1({count:e,words:t,href:a}){let s=n8("span",{className:"inline-flex items-baseline gap-3",children:[_0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&_0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?_0(r0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var Va1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",Na1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-0 max-[800px]:pb-[70px]",_a1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[32px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[24px]";function Hb({num:e,title:t,link:a,posts:s,columns:c,limit:l,showAll:r=!1,editing:o=!1,cardImage:i,gap:n,layout:h,featuredWidth:m,listCover:u=!0,featuredDarken:d,omitHead:v=!1,sample:g,nameFilter:b=!1}){let[f,w]=wa1(""),z=s??[],k=r?z.length:typeof l=="number"&&l>0?l:SD,S=z.slice(0,k),H=o&&S.length===0;if(S.length===0&&!o)return null;let I=r?SD:k,P=H?g?.length?g.slice(0,r?g.length:I):Array.from({length:I},(N,Q)=>({slug:`placeholder-${Q}`,title:p("Blog post title"),excerpt:p("A short summary of the post appears here."),cover:"",meta:p("Journal"),dateLabel:p("Date")})):S,D=B3("Events",n,"both"),E=h===HD&&P.length>1,F=La1(m),_=h===_h,Z=h===Ih,G=Ca1.includes(h??""),V=b&&!_&&!Z&&!E,j=V?P.filter(N=>Fa1(N.title,f)):P;return Z?_0("section",{className:_a1,children:_0(Ea1,{count:P.length,words:v||t===void 0?void 0:Y(t,!1),href:v?void 0:a?.href})}):n8("section",{className:v?Na1:Va1,style:J2(i),children:[v?null:_0(s0,{num:e!==void 0?M(e):void 0,title:t!==void 0?Y(t,!1):void 0,link:a?{text:M(a.text),href:a.href}:void 0}),V&&n8("div",{className:"mb-6 flex flex-col gap-2",children:[n8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[_0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Aa1}),_0("input",{type:"search",value:f,onChange:N=>w(N.target.value),autoComplete:"off",className:"rounded-[var(--sf-button-radius,6px)] border border-line bg-bg px-4 py-2.5 text-[length:var(--size-body,15px)] text-fg outline-none focus:border-accent"})]}),j.length===0&&_0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:Ha1})]}),_?_0(Pa1,{cards:P,scaffold:H}):G?_0("div",{className:`sf-card-grid grid${D.className} ${h===pa?"grid-cols-3 max-[800px]:grid-cols-2":AD[Math.min(4,Math.max(2,c??3))]??AD[3]}`,style:D.style,children:j.map((N,Q)=>_0(Ta1,{card:N,scaffold:H,lower:h===pa&&Q%3===1},`${N.slug}-${Q}`))}):E?n8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${D.className}`,style:{...D.style,"--sf-events-split":F},children:[_0(dt,{post:P[0],href:P[0].href,scaffold:H,layout:"cover",darken:d??Ma1,darkenStyle:Sa1,placement:ka1},`${P[0].slug}-0`),_0("div",{className:`grid auto-rows-min${D.className}`,style:D.style,children:P.slice(1).map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H,showCover:u},`${N.slug}-${Q+1}`))})]}):_0("div",{className:`sf-card-grid grid${D.className} ${LD[Math.min(4,Math.max(1,c??3))]??LD[3]}`,style:D.style,children:j.map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H},`${N.slug}-${Q}`))})]})}import{LayoutIcon as Ba1,ColumnsIcon as Za1,WidthIcon as Da1,ImageIcon as Oa1,OpacityIcon as Ga1,ListIcon as qa1,HashIcon as Wa1,SearchIcon as Ua1}from"efficient-easel/icons";import{jsx as Ra1}from"react/jsx-runtime";var x9={num:A.sectionNumber,title:"Section title",link:A.viewAll},Ia1=()=>[{key:"sample-1",title:p("First card"),excerpt:p("A line about it appears here.")},{key:"sample-2",title:p("Second card"),excerpt:p("A line about it appears here.")},{key:"sample-3",title:p("Third card"),excerpt:p("A line about it appears here.")},{key:"sample-4",title:p("Fourth card"),excerpt:p("A line about it appears here.")}],ED=(e,t)=>({slug:e.key||`card-${t}`,title:e.title??"",excerpt:e.excerpt??"",cover:e.cover??"",meta:e.meta||void 0,dateLabel:e.dateLabel||void 0,href:e.href||"#"}),VD={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,x9.link,e.puck),l=G8(e)!==""?Li(e,!!e.puck?.isEditing,Ia1()):null,r=l?l.sample?[]:l.rows.map(ED):e.posts;return Ra1(Hb,{num:a(y(e.num,x9.num,e.puck)),title:a(y(e.title,x9.title,e.puck)),link:a(s?{text:s,href:a1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(ED):void 0,columns:e.columns,limit:e.limit,showAll:e.showAll,layout:e.layout,featuredWidth:e.featuredWidth,listCover:e.listCover,featuredDarken:e.featuredDarken,cardImage:e.cardImage,gap:e.gap,nameFilter:e.nameFilter===!0,editing:e.puck?.isEditing})}};import{jsx as h8}from"react/jsx-runtime";var ja1=50,ND={fields:{_gContent:x("Content"),num:T("Number",x9.num),title:O("Heading",x9.title),linkText:T("Button",x9.link),linkHref:H1("Link"),dataSource:Ai("Cards from","Blog posts"),_gPosts:x("Blog posts"),posts:c2(b9,{snapshotCount:ja1}),_gLayout:x("Layout"),layout:g1("Arrangement",h8(Ba1,{}),TD,PD),columns:s1("Columns",h8(Za1,{}),2,4,1,3),featuredWidth:s1("Featured width",h8(Da1,{}),Z6.min,Z6.max,Z6.step,Z6.fallback,Z6.unit),listCover:l1("Show cover image on the smaller cards",!0,h8(Oa1,{})),featuredDarken:s1("Darken",h8(Ga1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:l1("Filter by name",!1,h8(Ua1,{})),gap:Z3("Events"),showAll:l1("Show all blog posts",!1,h8(qa1,{})),limit:s1("Posts to display",h8(Wa1,{}),1,20,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...Hi("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>G1(W1(o,a,U1),e.props.headPlacement,Z1.Events.headRows);if(s.showAll&&delete l.limit,s.layout==="featured")delete l.columns;else for(let o of["featuredWidth","listCover","featuredDarken"])delete l[o];if(s.layout===_h||s.layout===Ih)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===pa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as Rh}from"react/jsx-runtime";import{SettingsDefaultReset as Ka1,SettingsField as $a1,SettingsSegmented as Ya1}from"efficient-easel/panel";import{WidthIcon as Xa1}from"efficient-easel/icons";function Bh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e,n=p(s);return Rh($a1,{label:n,labelId:c,icon:Rh(Xa1,{}),value:o?l:void 0,changed:!o,action:Rh(Ka1,{words:wy()?.panel,label:n,changed:!o,onReset:()=>a(void 0)}),hint:r,children:Rh(Ya1,{options:[{label:p(gm.page),id:"content"},{label:p(gm.full),id:"full"}],value:i,ariaLabel:n,onChange:a})})}import{SettingsField as Ja1,SettingsSwitch as Qa1}from"efficient-easel/panel";import{BlockColumnIcon as es1}from"efficient-easel/icons";import{Fragment as ts1,jsx as Dc}from"react/jsx-runtime";function Fb({value:e,onChange:t}){let a=C5(),s={...q9,...e},c=s[a];return Dc(Ja1,{label:p("Logo fills its column"),icon:Dc(es1,{}),action:Dc(Qa1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its column on {view}",{view:p(w5[a])})}),hint:Dc(ts1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Dc("strong",{children:p(w5[a])})})})})}import{SettingsField as as1,SettingsSwitch as ss1}from"efficient-easel/panel";import{FullWidthIcon as cs1}from"efficient-easel/icons";import{Fragment as ls1,jsx as Oc}from"react/jsx-runtime";function Tb({value:e,onChange:t}){let a=C5(),s={...W9,...e},c=s[a];return Oc(as1,{label:p("Logo fills its row"),icon:Oc(cs1,{}),action:Oc(ss1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its row on {view}",{view:p(w5[a])})}),hint:Oc(ls1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Oc("strong",{children:p(w5[a])})})})})}import{jsx as rs1}from"react/jsx-runtime";function Pb({value:e,onChange:t}){return rs1(Zs,{label:"Columns per line",unit:p("columns"),steps:_y,value:_l(e),onChange:t})}import{useContext as os1,useEffect as is1,useRef as ns1,useState as ID}from"react";import{jsx as ua,jsxs as _D}from"react/jsx-runtime";function Gc(){let e=UB();return _D("div",{className:"flex flex-wrap justify-between gap-x-6 gap-y-3 border-t border-line pt-6 font-mono text-[13px] uppercase tracking-[0.15em] text-fg-dim max-[800px]:flex-col max-[800px]:gap-3",children:[ua("span",{children:e}),_D("span",{className:"flex flex-wrap items-center gap-3",children:[ua("span",{children:"Privacy"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Terms"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Cookies"})]})]})}import{jsx as Eb,jsxs as ps1}from"react/jsx-runtime";var RD={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},hs1={1:"min-[720px]:grid-cols-1",2:"min-[720px]:grid-cols-2",3:"min-[720px]:grid-cols-3",4:"min-[720px]:grid-cols-4",5:"min-[720px]:grid-cols-5",6:"min-[720px]:grid-cols-6"},ms1={1:"min-[1100px]:grid-cols-1",2:"min-[1100px]:grid-cols-2",3:"min-[1100px]:grid-cols-3",4:"min-[1100px]:grid-cols-4",5:"min-[1100px]:grid-cols-5",6:"min-[1100px]:grid-cols-6"};function Vb({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=os1(wa),{desktop:o,tablet:i,mobile:n}=_l(s),{desktop:h,tablet:m,mobile:u}={...q9,...c},{desktop:d,tablet:v,mobile:g}={...W9,...l},b=C5(),w=t?RD[b==="desktop"?o:b==="tablet"?i:n]:`${RD[n]} ${hs1[i]} ${ms1[o]}`,z=ns1(null),[k,S]=ID(1),[H,I]=ID(!1);if(is1(()=>{if(!t&&!r)return;let D=z.current;if(!D)return;let E=()=>{let j=D.querySelector(".footer-block-grid");if(!j)return;let N=t?b:Vw(window.innerWidth),Q=N==="desktop"?d:N==="tablet"?v:g;I(Q);let W=N==="desktop"?h:N==="tablet"?m:u,U=getComputedStyle(j).gridTemplateColumns.split(" ").filter(Boolean).length-1,i1=Math.max(j.childElementCount-1,0);S(!Q&&W&&U>=1?Math.max(Math.ceil(i1/U),1):1)},F,_=()=>{clearTimeout(F),F=setTimeout(E,0)},Z=[0,80,250,600].map(j=>setTimeout(E,j)),G=new MutationObserver(_);G.observe(D,{childList:!0,subtree:!0});let V=new ResizeObserver(_);return V.observe(D),()=>{clearTimeout(F),Z.forEach(clearTimeout),G.disconnect(),V.disconnect()}},[o,i,n,t,r,b,h,m,u,d,v,g]),!t&&!r)return null;let P=wl(Cl(a))??void 0;return Eb("footer",{ref:z,className:"border-t border-line bg-bg px-[var(--sf-site-gutter,40px)] pb-10 pt-20 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-14",style:{"--footer-logo-rows":k,"--footer-logo-col":H?"1 / -1":"1"},children:ps1("div",{style:P,children:[Eb(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${w}`,minEmptyHeight:160}),Eb(Gc,{})]})})}import{jsx as us1}from"react/jsx-runtime";var Nb={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},BD={label:"Footer",fields:Nb,defaultProps:{columns:Iy,logoFill:q9,logoRowFill:W9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>us1(Vb,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as Zh}from"react/jsx-runtime";var ZD={fields:{_gLayout:x("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>Zh(Bh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the page"),hint:p("Whether the footer's blocks sit on the page's column, or run edge to edge. The background always spans the screen."),onChange:a=>t(a)})},columns:{type:"custom",render:({value:e,onChange:t})=>Zh(Pb,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Fb,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Tb,{value:e,onChange:t})},_gBlocks:x("Blocks"),blockList:N5("Footer"),blocks:Nb.blocks}};import{WeightIcon as ds1,WidthIcon as gs1,PhoneIcon as vs1}from"efficient-easel/icons";import{jsx as _b}from"react/jsx-runtime";var DD={fields:{_gStyle:x("Style"),thickness:s1("Thickness",_b(ds1,{}),1,8,1,1,"px"),lengthPct:s1("Length",_b(gs1,{}),10,100,1,100,"%"),hideOnMobile:l1("Hide on mobile",!1,_b(vs1,{}))}};var OD={fields:{_gContent:x("Content"),heading:E1("Heading","Join our email list"),placeholder:q("Field placeholder","Email address"),buttonLabel:q("Button","Subscribe")}};import{AlignLeftIcon as xs1}from"efficient-easel/icons";import{jsx as GD}from"react/jsx-runtime";var fs1={start:"items-start",center:"items-center",end:"items-end"};function Ib({direction:e="vertical",gap:t,align:a="start",content:s}){let c=B3("FooterGroup",t,e==="horizontal"?"inline":"block");return GD("div",{className:"min-w-0",children:GD(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${fs1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as bs1}from"react/jsx-runtime";var Rb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},qD={label:"Footer Box",fields:Rb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>bs1(Ib,{direction:e,gap:t,align:a,content:s})};import{jsx as zs1}from"react/jsx-runtime";var WD={fields:{_gLayout:x("Layout"),direction:v1("Direction",Zl("`Direction` names how a container's children run \u2014 a MODIFIER, not a thing. doc/naming.md N10.1 gives the idea a dash in its Glyph column; editor-shell's own `direction` meaning says the bare row is CORRECT and not an omission (SS seat, 2026-09-11)."),[{label:"Vertical",value:"vertical"},{label:"Horizontal",value:"horizontal"}],"vertical"),gap:Z3("FooterGroup"),align:v1("Alignment",zs1(xs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:x("Blocks"),blockList:N5("FooterGroup"),blocks:Rb.blocks}};import{WidthIcon as ys1,AlignLeftIcon as ws1,LogoIcon as Cs1,PaddingTopIcon as ks1,PaddingRightIcon as Ms1,PaddingBottomIcon as Ss1,PaddingLeftIcon as Ls1}from"efficient-easel/icons";import{jsx as z9}from"react/jsx-runtime";var UD={fields:{_gContent:x("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:x("Style"),widthPct:s1("Width",z9(ys1,{}),40,400,1,100,"%"),align:v1("Alignment",z9(ws1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:v1("Logo color",z9(Cs1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:s1("Padding top",z9(ks1,{}),0,120,2,0,"px"),padRight:s1("Padding right",z9(Ms1,{}),0,120,2,0,"px"),padBottom:s1("Padding bottom",z9(Ss1,{}),0,120,2,0,"px"),padLeft:s1("Padding left",z9(Ls1,{}),0,120,2,0,"px")}};import{Button as As1}from"efficient-shell/ui";import{SettingsField as Hs1}from"efficient-easel/panel";import{FieldSelect as Fs1}from"efficient-easel/fields";import{MenuIcon as Ts1}from"efficient-easel/icons";import{useCallback as Ps1,useEffect as jD,useState as Bb}from"react";import{jsx as y9,jsxs as KD}from"react/jsx-runtime";function Zb({value:e,onChange:t}){let[a,s]=Bb(null),[c,l]=Bb(!1),r=Ps1(f=>{s(f),l(!0)},[]);jD(()=>{let f=!1;return Hp(R3()).then(w=>{f||r(w)}).catch(()=>{f||s([])}),()=>{f=!0}},[r]),jD(()=>{let f=!1,w=tS(()=>{bM(R3()).then(z=>{f||r(z)}).catch(()=>{})});return()=>{f=!0,w()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Kr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Kr(a??[],e)?.id??"",u=f=>t({id:f.id,handle:f.handle,name:f.name,items:f.items.map(w=>({label:w.label,url:w.url}))}),d=f=>{if(!f){t(null);return}let w=(a??[]).find(z=>z.id===f);w&&u(w)},[v,g]=Bb(!1),b=()=>{i&&(g(!0),Hp(R3(),!0).then(f=>{r(f);let w=Kr(f,e);w&&u(w)}).catch(()=>{}).finally(()=>g(!1)))};return KD("div",{children:[y9(Hs1,{label:p("Menu"),icon:y9(Ts1,{}),hint:!o&&a&&a.length===0?p("Create menus in {place}, then pick one here.",{place:p("Storefront \u2192 Menus")}):void 0,children:y9(Fs1,{value:m,ariaLabel:p("Menu"),onChange:d,readOnly:o||(a?.length??0)===0,options:[{label:o?p("Loading menus\u2026"):a&&a.length===0?p("No menus found"):p("Select a menu\u2026"),value:""},...(a??[]).map(f=>({label:`${f.name} (${f.item_count??f.items.length})`,value:f.id}))]})}),h?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:nM()}):null,n?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:hM(e?.name??p("The linked menu"))}):null,i&&!n?KD("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[y9("p",{className:"text-[12px] text-fg-dim",children:p3("Linked to \u201C{name}\u201D \u2014 {n} link. Re-pull after editing the menu:","Linked to \u201C{name}\u201D \u2014 {n} links. Re-pull after editing the menu:",e?.items?.length??0,{name:e?.name??""})}),y9(As1,{variant:"link",size:"sm",className:"shrink-0",onClick:b,disabled:v,children:v?p("Updating\u2026"):p("Update links")})]}):null]})}import{PhoneIcon as Es1,LineBetweenIcon as Vs1}from"efficient-easel/icons";import{jsx as Db}from"react/jsx-runtime";var $D={fields:{_gContent:x("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>Db(Zb,{value:e,onChange:t})},heading:q("Heading","Column heading"),_gStyle:x("Style"),accordionMobile:l1("Show as accordion on mobile",!1,Db(Es1,{})),showDividers:l1("Dividers between links",!1,Db(Vs1,{}))}};import{jsx as qc}from"react/jsx-runtime";var YD={small:16,medium:20,large:24},Ob=0,Gb=32,JD=2,Wc=0,XD={start:"justify-start",center:"justify-center",end:"justify-end"};function qb({iconStyle:e=oe,iconSize:t="medium",align:a="start",gap:s=Wc,editing:c=!1}){let l=qB(),r=Cw(ww(l));if(r.length===0)return c?qc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("Add your social links")}):null;let o=YD[t]??YD.medium,n={gap:Math.min(Gb,Math.max(Ob,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return qc("ul",{"data-social-block":"","aria-label":"Social media",className:`flex list-none flex-wrap p-0 [margin:calc((44px-var(--social-mark))/-2)] max-[800px]:[margin:calc((40px-var(--social-mark))/-2)] ${XD[a]??XD.start}`,style:n,children:r.map(({platform:h,href:m,label:u})=>qc("li",{children:qc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${u} (opens in a new tab)`,className:"grid h-11 w-11 place-items-center rounded text-fg transition-colors hover:text-accent focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-[-4px] focus-visible:outline-current motion-reduce:transition-none max-[800px]:h-10 max-[800px]:w-10",children:qc(_w,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as Ns1}from"efficient-shell/ui";import{Fragment as _s1,jsx as Wb,jsxs as Is1}from"react/jsx-runtime";function Ub(){let{openPanel:e}=sr();return Is1(_s1,{children:[Wb(Ol,{label:"Social links"}),Wb("p",{className:"es-field-hint sf-hint-keep",children:p("The links are typed once for the whole website, in Site settings.")}),Wb(Ns1,{variant:"link",size:"sm",onClick:e,children:p("Edit social links \u2192")})]})}import{StylesIcon as Rs1,TextSizeIcon as Bs1,AlignLeftIcon as Zs1,GapIcon as Ds1}from"efficient-easel/icons";import{jsx as Uc}from"react/jsx-runtime";var QD={fields:{_gStyle:x("Style"),iconStyle:v1("Icon style",Uc(Rs1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],oe),iconSize:v1("Icon size",Uc(Bs1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Uc(Ub,{})},_gLayout:x("Layout"),align:v1("Alignment",Uc(Zs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:s1("Gap",Uc(Ds1,{}),Ob,Gb,JD,Wc,"px")}};import{TextSizeIcon as Os1}from"efficient-easel/icons";import{jsx as Gs1}from"react/jsx-runtime";var eO={fields:{_gContent:x("Content"),text:E1("Body","Footer text"),_gStyle:x("Style"),size:v1("Size",Gs1(Os1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:_o()}};var tO={fields:{_gForm:x("Form"),formSlug:E5(),_gContent:x("Content"),heading:q("Heading override"),intro:E1("Intro"),submitText:q("Submit button"),finePrint:q("Fine print")}};var aO={fields:{}};var Dh="e.g. D00123 \xB7 blank = the whole store";import{useState as m8}from"react";import{Fragment as Us1,jsx as h3,jsxs as jc}from"react/jsx-runtime";var Oh="w-full border-2 border-line bg-bg px-4 py-3.5 font-display text-[17px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent",qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",Ws1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function jb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=m8(""),[o,i]=m8(""),[n,h]=m8(0),[m,u]=m8(""),[d,v]=m8(""),[g,b]=m8(!1),[f,w]=m8(!1),[z,k]=m8(null);async function S(H){if(H.preventDefault(),!(c||g)){if(n<1){k("Choose a star rating.");return}b(!0),k(null);try{await v0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:d.trim(),...a?.trim()?{designCode:a.trim()}:{}}),w(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{b(!1)}}}return h3("section",{className:"relative z-[2] border-t border-line bg-surface",children:jc("div",{className:s?Ws1:qs1,children:[s?null:jc(Us1,{children:[(e??"").trim()&&h3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&h3("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)})]}),f?h3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:"Thanks \u2014 your review will appear once approved."}):jc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:S,children:[jc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[h3(Z2,{label:"Name",required:!0,children:h3("input",{type:"text",required:!0,value:l,onChange:H=>r(H.target.value),className:Oh})}),h3(Z2,{label:"Email \u2014 never shown publicly",children:h3("input",{type:"email",value:o,onChange:H=>i(H.target.value),className:Oh})})]}),jc("div",{className:"flex flex-col gap-2",children:[h3(w8,{required:!0,children:"Rating"}),h3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(H=>h3("button",{type:"button","aria-pressed":n>=H,"aria-label":`${H} star${H===1?"":"s"}`,onClick:()=>{h(H),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=H?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},H))})]}),h3(Z2,{label:"Review title (optional)",children:h3("input",{type:"text",value:m,onChange:H=>u(H.target.value),className:Oh})}),h3(Z2,{label:"Your review",required:!0,children:h3("textarea",{required:!0,rows:5,value:d,onChange:H=>v(H.target.value),className:Oh+" resize-y"})}),z&&h3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:z}),h3("button",{type:c?"button":"submit",disabled:g,className:"cursor-pointer self-start bg-btn px-8 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:g?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as js1}from"react/jsx-runtime";var Kc={eyebrow:"Your turn",title:"Leave a *review.*"},sO={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return js1(jb,{eyebrow:a(y(e.eyebrow,Kc.eyebrow,e.puck)),title:a(y(e.title,Kc.title,e.puck)),omitHead:t,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var cO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",Kc.eyebrow),title:O("Heading",Kc.title),_gSource:x("Reviews"),designCode:e3(q("Design code",Dh))},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.ReviewForm.headRows)};import{StylesIcon as sc1,HashIcon as cc1,ColumnsIcon as lc1}from"efficient-easel/icons";import{useEffect as Ks1,useState as $s1}from"react";function lO(e,t){let[a,s]=$s1(null);return Ks1(()=>{let c=!1;return s(null),v0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as tc1,jsx as O4,jsxs as Gh}from"react/jsx-runtime";var Ys1=()=>[{id:"sample-review-1",authorName:p("Sample reviewer"),rating:5,title:p("Sample review title"),body:p("Approved customer reviews appear here automatically \u2014 this card is only a preview of the section's shape."),designCode:"",createdAt:""},{id:"sample-review-2",authorName:p("Sample reviewer"),rating:4,title:"",body:p("Reviews are collected by the Review Form section and wait for your approval before they show."),designCode:"",createdAt:""},{id:"sample-review-3",authorName:p("Sample reviewer"),rating:5,title:p("Another sample"),body:p("Set a product design code on this section to show one product's reviews; leave it blank for the whole store."),designCode:"",createdAt:""}];function Xs1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function Js1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return O4("div",{role:"img","aria-label":`${t} out of 5 stars`,className:"flex gap-1 text-[length:var(--size-body,17px)] leading-none",children:Array.from({length:5}).map((a,s)=>O4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",ec1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function Kb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=lO(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=!(i&&i.length>0)&&o,m=i&&i.length>0?i:h?Ys1():[];return!o&&m.length===0?null:O4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Gh("div",{className:r?ec1:Qs1,children:[r?null:Gh(tc1,{children:[(t??"").trim()&&O4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&O4("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),O4("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--rv-cols),minmax(0,1fr))]",style:{"--rv-cols":String(n)},children:m.map(u=>Gh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",h?"opacity-60":""].join(" "),children:[O4(Js1,{rating:u.rating}),u.title.trim()&&O4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:u.title}),O4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:z0(u.body).map((d,v)=>O4("p",{className:v?"mt-3":"",children:d},v))}),Gh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:u.authorName}),O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Xs1(u.createdAt)})]})]},u.id))})]})})}import{jsx as ac1}from"react/jsx-runtime";var $c={eyebrow:"Reviews",title:"From our *customers.*"},rO={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ac1(Kb,{look:o4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,$c.eyebrow,e.puck)),title:a(y(e.title,$c.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as $b}from"react/jsx-runtime";var oO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",$c.eyebrow),eyebrowLook:g1("Eyebrow style",$b(sc1,{}),[...k4],l7("Reviews")),title:O("Heading",$c.title),_gSource:x("Reviews"),limit:s1("Reviews to display",$b(cc1,{}),3,12,1,6),designCode:e3(q("Design code",Dh)),_gStyle:x("Style"),columns:s1("Columns",$b(lc1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Reviews.headRows)};import{FullWidthIcon as ic1}from"efficient-easel/icons";import{jsx as Yb,jsxs as rc1}from"react/jsx-runtime";function Yc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=rc1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":wZ(c),"data-header-menu-row":CZ(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?Yb("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?p("Site header \u2014 above every page"):p("Site footer \u2014 below every page")}):null,Yb(t,{minEmptyHeight:120})]});return e==="header"?Yb(uM,{children:o}):o}import{jsx as oc1}from"react/jsx-runtime";var Xb={sections:{type:"slot"}},iO={label:"Site Footer",fields:Xb,render:({sections:e,fullWidth:t,puck:a})=>oc1(Yc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as nc1}from"react/jsx-runtime";var nO={fields:{fullWidth:l1("Full width",!1,nc1(ic1,{})),sections:Xb.sections}};import{CaseIcon as mc1,ContrastIcon as pc1,FullWidthIcon as uc1,HeightIcon as dc1,LayoutIcon as gc1,StickyIcon as vc1}from"efficient-easel/icons";import{jsx as hc1}from"react/jsx-runtime";var Jb={sections:{type:"slot"}},hO={label:"Site Header",fields:Jb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>hc1(Yc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as da}from"react/jsx-runtime";var{sectionAccent:fc1}=X9(e=>eb(e)??zZ,"Follow the site theme"),mO={fields:{heightPx:s1("Height",da(dc1,{}),k5.min,k5.max,2,k5.default,"px"),fullWidth:l1("Full width",!1,da(uc1,{})),sectionAccent:fc1,topTextColor:v1("Text color at the top",da(pc1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:v1("Letters",da(mc1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:v1("Menu row",da(gc1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:v1("Sticky header",da(vc1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:Jb.sections}};import{jsx as qh,jsxs as bc1}from"react/jsx-runtime";var w0={eyebrow:"Section number",title:"Show *us yours.*",body:"Tell people what they get for submitting, and what you do with what they send.",buttonText:"Submit \u2192",consent:"By submitting, you agree to our privacy policy. We never share contact details with third parties."};function Xc(e,t){return e===void 0?t:e}function Qb({eyebrow:e,title:t,body:a,buttonText:s,consent:c,formSlug:l,form:r,editing:o=!1,boxes:i,inBoxes:n=!1,...h}){let m=Xc(e,w0.eyebrow),u=Xc(t,w0.title),d=Xc(a,w0.body),v=Xc(s,w0.buttonText),g=Xc(c,w0.consent),b=H5(l,r),f=v7({form:b,formSlug:l,editing:o}),w=b===void 0,z=!!b||o;return!z&&!m&&!u&&!d?null:n&&i?qh("section",{className:E0(h)?"border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:qh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):bc1("section",{className:E0(h)?"grid grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:[qh(lA,{eyebrow:m,title:u}),qh(jo,{body:d,buttonLabel:v,consent:g,form:b,submission:f,showForm:z,resolving:w,editing:o})]})}var pO={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Ko.map(e=>[$o[e],g1(Eu[e],Ke(Eu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),formSlug:E5(),buttonText:T("Button",w0.buttonText),consent:O("Consent line",w0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Ko.map(n=>$o[n]),o=a==="head"?c:l,i={};for(let[n,h]of Object.entries(s)){if(n.startsWith("_")){i[n]=h;continue}if(r.includes(n)){a!=="head"&&(i[n]=h);continue}o.includes(n)&&(i[n]=h)}return i}};import{jsx as xc1}from"react/jsx-runtime";var ex={boxes:{type:"slot",allow:["SubmitBox"]}},uO={label:"Photo Submission Form",fields:ex,defaultProps:{eyebrow:w0.eyebrow,title:w0.title,body:w0.body,formSlug:"",buttonText:w0.buttonText,consent:w0.consent},render:e=>xc1(Qb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var dO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),_gForm:x("Form"),formSlug:E5(),_gButton:x("Button"),buttonText:T("Button",w0.buttonText),_gFootnote:x("Footnote"),consent:O("Consent line",w0.consent),boxes:ex.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{_gContent:a,eyebrow:s,title:c,body:l,_gForm:r,formSlug:o,_gButton:i,buttonText:n,_gFootnote:h,consent:m,...u}=t;return u}};var zc1=["issues","posts"],gO=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],tx="issues";function ax(e){return zc1.includes(e)?e:tx}var yc1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function vO(e,t){let a=ax(t),s={...e};for(let[c,l]of Object.entries(yc1))l.includes(a)||delete s[c];return s}import{CategoryIcon as Cc1,HashIcon as kc1}from"efficient-easel/icons";var I0={headNum:A.sectionNumber,headTitle:A.headingAccent,headDesc:"A short description of your newsletter or publication.",kicker:"\u2192 Newsletter",leadTitle:"Get it in the *inbox.*",intro:"Tell readers what they get and how often. One email, straight to the inbox. We will never sell your address.",emailPlaceholder:"your@email.com",submitText:"Subscribe \u2192",subscribedText:"Subscribed \u2713",finePrint:"Approx. 1 email per week \xB7 Unsubscribe in one click",issuesHeading:"Recent issues",archiveText:"View the full archive \u2192",archiveHref:u2.href},fO=()=>["N\xB0 04","N\xB0 03","N\xB0 02","N\xB0 01"].map(e=>({n:e,title:p("Issue title"),small:p("Short description"),date:p("Month YYYY")}));function wc1(e){return e.map((t,a)=>({n:`N\xB0 ${String(e.length-a).padStart(2,"0")}`,title:t.title,small:t.meta,date:t.dateLabel}))}function Wh(e,t){if(e==="issues")return C1(t.issues,fO(),t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?wc1(a.slice(0,s)):[];return C1(c,fO(),t.puck)}import{jsx as bO}from"react/jsx-runtime";var xO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",I0.headNum),headTitle:O("Heading",I0.headTitle),headDesc:O("Body",I0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",I0.kicker),leadTitle:O("Heading",I0.leadTitle),intro:O("Intro",I0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",I0.emailPlaceholder),submitText:q("Submit button",I0.submitText),subscribedText:q("Subscribed button",I0.subscribedText),finePrint:O("Fine print",I0.finePrint),_sRight:Y1("Recent issues"),_gRightCopy:x("Content"),contentType:v1("Type",bO(Cc1,{}),[...gO],tx),issuesHeading:T("Panel heading",I0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:f1("Number"),title:f1("Title"),small:f1("Sub-line"),date:f1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||p("Issue")},_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",bO(kc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",I0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>vO(t,e.props.contentType)};import{HashIcon as Ac1}from"efficient-easel/icons";import{useState as Mc1}from"react";import{jsx as Q3,jsxs as w9}from"react/jsx-runtime";var Sc1="That didn't go through \u2014 please try again.";function Jc({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,archiveText:u,archiveHref:d,source:v=G3.subscribeSection,editing:g=!1,...b}){let[f,w]=Mc1(""),{status:z,submit:k}=ro({source:v,dryRun:g}),S=z==="sent",H=z==="sending",I=z==="error"||z==="invalid",P=(m??[]).filter(_=>(_?.n??"").trim()||(_?.title??"").trim()||(_?.date??"").trim()),D=P.length>0,E=S?i||"Subscribed \u2713":H?"Sending\u2026":o||"Subscribe \u2192";function F(_){_.preventDefault(),!S&&k({email:f})}return w9("section",{className:E0(b)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",children:[Q3(D2,{num:e,title:t?Y(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),w9("div",{className:D?"grid min-h-[460px] grid-cols-[1.1fr_1fr] border border-line max-[1100px]:grid-cols-1":"grid min-h-[460px] grid-cols-1 border border-line",children:[w9("div",{className:D?"flex flex-col justify-center gap-6 border-r border-line px-14 py-16 max-[1100px]:border-r-0 max-[1100px]:border-b max-[1100px]:px-7 max-[1100px]:py-12":"flex flex-col justify-center gap-6 px-14 py-16 max-[1100px]:px-7 max-[1100px]:py-12",children:[s&&Q3(V1,{text:s}),c&&Q3("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.035em]",children:Y(c,!0)}),l&&Q3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:M(l,!0)}),w9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:F,children:[Q3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:f,onChange:_=>w(_.target.value),disabled:S,className:"flex-1 border border-r-0 border-line bg-bg px-5 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.18em] text-fg placeholder:text-fg-dim outline-none focus:border-accent"}),Q3("button",{type:"submit",disabled:S||H,className:"border border-btn bg-btn px-7 py-[18px] font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-default disabled:opacity-90",children:R0(E)})]}),I&&Q3("p",{role:"alert",className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-alert",children:Sc1}),n&&Q3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:M(n)})]}),D&&w9("div",{id:"sub-recent-issues",className:"grid grid-rows-[auto_1fr_auto] gap-6 bg-[var(--journal-panel-bg)] px-11 py-12 scroll-mt-[160px] max-[1100px]:px-7 max-[1100px]:py-9",children:[h&&Q3(V1,{text:h,size:12}),Q3("div",{className:"flex flex-col",children:P.map((_,Z)=>w9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",Z===0?"border-t border-line":""].join(" "),children:[Q3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:_.n?M(_.n):""}),w9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[_.title?M(_.title):"",_.small?.trim()&&Q3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:M(_.small,!0)})]}),Q3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:_.date?M(_.date):""})]},Z))}),u&&Q3(r0,{href:d||"/journal",className:"flex items-center justify-end gap-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-accent hover:text-fg",children:M(u)})]})]})]})}import{jsx as Lc1}from"react/jsx-runtime";var Y0={...I0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},zO={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=Wh("posts",e);return Lc1(Jc,{headNum:y(e.headNum,Y0.headNum,e.puck),headTitle:y(e.headTitle,Y0.headTitle,e.puck),headDesc:y(e.headDesc,Y0.headDesc,e.puck),kicker:y(e.kicker,Y0.kicker,e.puck),leadTitle:y(e.leadTitle,Y0.leadTitle,e.puck),intro:y(e.intro,Y0.intro,e.puck),emailPlaceholder:a1(e.emailPlaceholder)||Y0.emailPlaceholder,submitText:a1(e.submitText)||Y0.submitText,subscribedText:a1(e.subscribedText)||Y0.subscribedText,finePrint:y(e.finePrint,Y0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,Y0.issuesHeading,e.puck),issues:t,source:G3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,Y0.archiveText,e.puck),archiveHref:a1(e.archiveHref)||Y0.archiveHref})}};import{jsx as Hc1}from"react/jsx-runtime";var yO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",Y0.headNum),headTitle:O("Heading",Y0.headTitle),headDesc:O("Body",Y0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",Y0.kicker),leadTitle:O("Heading",Y0.leadTitle),intro:O("Intro",Y0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",Y0.emailPlaceholder),submitText:q("Submit button",Y0.submitText),subscribedText:q("Subscribed button",Y0.subscribedText),finePrint:O("Fine print",Y0.finePrint),_sRight:Y1("Recent posts"),_gRightCopy:x("Content"),issuesHeading:T("Panel heading",Y0.issuesHeading),_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",Hc1(Ac1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",Y0.archiveText),archiveHref:H1("Archive link")}};import{jsx as Fc1}from"react/jsx-runtime";var wO={label:"Booking box",defaultProps:{},render:e=>Fc1(Fu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as sx,useState as cx}from"react";import{Fragment as Tc1,jsx as H0,jsxs as k3}from"react/jsx-runtime";var CO="border-b border-line bg-transparent py-3.5 font-display text-[length:var(--size-body,18px)] tracking-[0.01em] text-fg outline-none transition-colors focus:border-accent";function lx({routingNumber:e,routingTagline:t,groups:a,formNumber:s,formHeading:c,metaLines:l,showOther:r=!0,otherLabel:o="Other",otherNoteTitle:i,otherNoteBody:n,buttonText:h,consent:m,channels:u,formSlug:d,form:v,editing:g,initialActiveId:b,onActiveChange:f,reasonExtras:w,...z}){let k=[...a.map(U=>U.id),...r?[P8]:[]],S=b&&k.includes(b)?b:k[0]??P8,[H,I]=cx(S);sx(()=>{k.includes(H)||I(k[0]??P8)},[k.join("|")]),sx(()=>{b&&k.includes(b)&&I(b)},[b]);let P=U=>{I(U),E(null),f?.(U)},[D,E]=cx(null),F=(u??[]).filter(U=>!U.hidden),_=F.find(U=>U.groupId===H)?.value??null,Z=D??_,G=H5(d,v),V=v7({form:G,formSlug:d,editing:g}),j=G===void 0,N=!!G||!!g,[Q,W]=cx(!1);return sx(()=>{let U=()=>W(document.documentElement.getAttribute("data-theme")==="light");U();let i1=new MutationObserver(U);return i1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>i1.disconnect()},[]),k3(Tc1,{children:[k3("section",{className:E0(z)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:Q?void 0:{background:"var(--section-bg)"},children:[(e||t)&&k3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&H0(V1,{text:e}),t&&H0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:M(t)})]}),H0("div",{className:"sf-card grid grid-cols-4 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:a.map(U=>{let i1=H===U.id;return k3("button",{type:"button",onClick:()=>{P(U.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:n6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",i1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[U.eyebrow&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:U.eyebrow}),H0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:U.title}),U.copy&&H0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:U.copy}),U.response&&k3("div",{className:"mt-2 flex justify-between border-t border-line pt-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:[H0("span",{children:"Response"}),H0("strong",{className:"font-normal text-fg",children:U.response})]})]},U.id)})})]}),(N||F.length>0)&&k3("section",{id:"contact-form",className:["mx-auto grid max-w-[var(--sf-site-width,1600px)] scroll-mt-[80px] gap-20 border-b border-line px-[var(--sf-site-gutter,40px)] py-20 max-[1100px]:grid-cols-1 max-[1100px]:gap-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",N&&F.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[N&&k3("div",{children:[k3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[k3("div",{children:[s&&H0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:M(s)}),c&&H0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,4vw,56px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(c,!0)})]}),!!(l&&l.length)&&H0("div",{className:"text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.8] tracking-[0.22em] text-fg-dim max-[700px]:text-left",children:l.map((U,i1)=>H0("div",{children:U},i1))})]}),G?V.done?H0("div",{className:"border border-accent bg-accent/[0.08] p-8 font-display text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:Ze(G,"Thanks \u2014 we've received your message.")}):k3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:V.handleSubmit,children:[G.fields.map(U=>H0(Z2,{label:U.label,required:U.required,className:U.type==="textarea"||U.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:H0(f7,{field:U,value:V.valueOf(U.key),onChange:i1=>V.set(U.key,i1),className:U.type==="textarea"?`${CO} min-h-[140px] resize-y leading-[1.5]`:U.type==="checkbox"?"size-4 self-start accent-accent":CO})},U.key)),k3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[H0(w8,{required:!0,children:"Reason"}),k3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(U=>{let i1=H===U.id;return H0("button",{type:"button",onClick:()=>P(U.id),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",i1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:U.title},U.id)}),r&&H0("button",{type:"button",onClick:()=>P(P8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",H===P8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:R0(o)})]})]}),w?.(H),H===P8&&(i||n)&&k3("div",{className:"sf-card col-span-2 flex flex-col gap-2 border border-line bg-bg/40 p-5 max-[700px]:col-span-1",children:[i&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(i)}),n&&z0(n).map((U,i1)=>H0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:M(U)},i1))]}),H0(De,{value:V.honeypot,onChange:V.setHoneypot}),V.error&&H0("p",{role:"alert",className:"col-span-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-alert max-[700px]:col-span-1",children:V.error}),k3("div",{className:"col-span-2 mt-5 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-6 max-[700px]:col-span-1 max-[700px]:flex-col max-[700px]:items-stretch",children:[m&&H0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:M(m)}),H0("button",{type:g?"button":"submit",disabled:V.submitting,className:"cursor-pointer bg-btn px-8 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-wait disabled:opacity-60 max-[700px]:w-full",children:V.submitting?"Sending\u2026":h?R0(h):"Send Message \u2192"})]})]}):H0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:j?p("Loading form\u2026"):p("Choose a form in the inspector, under Message form \u2014 until then this column is hidden on the live page and no message can be sent.")})]}),F.length>0&&H0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:F.map((U,i1)=>{let y1=Z===U.value,c1=!!!U.groupId;return k3("div",{onClick:c1?()=>E(U.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",c1?"cursor-pointer border-t-2 border-t-accent":"",y1?"border-l-accent pl-6":c1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:y1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[y1&&k3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),H0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),H0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",y1?"text-fg":"text-accent"].join(" "),children:U.label}),c1?H0("a",{href:U.href,onClick:b1=>b1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",y1?"text-accent":"text-fg"].join(" "),children:U.value}):H0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",y1?"text-accent":"text-fg"].join(" "),children:U.value}),U.sub&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:U.sub})]},`${U.value}-${i1}`)})})]})]})}import{jsx as Pc1}from"react/jsx-runtime";var kO={label:"Contact Form",defaultProps:{routingNumber:f0.routingNumber,routingTagline:f0.routingTagline,groups:f0.groups,formSlug:"",formNumber:f0.formNumber,formHeading:f0.formHeading,metaItems:f0.metaLines.map(e=>({text:e})),showOther:f0.showOther,otherLabel:f0.otherLabel,otherNoteTitle:f0.otherNoteTitle,otherNoteBody:f0.otherNoteBody,buttonText:f0.buttonText,consent:f0.consent,channels:f0.channels},render:e=>Pc1(lx,{routingNumber:y(e.routingNumber,f0.routingNumber,e.puck),routingTagline:y(e.routingTagline,f0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,f0.formNumber,e.puck),formHeading:y(e.formHeading,f0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:a1(e.otherLabel)||f0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,f0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,f0.otherNoteBody,e.puck),buttonText:a1(e.buttonText)||f0.buttonText,consent:y(e.consent,f0.consent,e.puck),channels:e.channels??[],formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as MO}from"react/jsx-runtime";function rx({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return MO("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:MO("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as Ec1}from"react/jsx-runtime";var SO={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>Ec1(rx,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as Vc1}from"react";import{jsx as ox,jsxs as LO}from"react/jsx-runtime";function ix({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=Up(),[c,l]=Vc1("");return LO("div",{className:"w-full min-w-0",children:[e?ox("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:Y(e,!1)}):null,LO("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:G3.footerSignup})},children:[ox("input",{type:"email",placeholder:t,value:c,onChange:r=>l(r.target.value),className:"w-0 min-w-[7rem] flex-1 border border-line bg-transparent px-3 py-2 text-[13px] text-fg placeholder:text-fg-dim/70 focus:border-accent focus:outline-none","aria-label":p2(e??"")||"Email address"}),ox("button",{type:"submit",className:"shrink-0 border border-btn bg-btn px-4 py-2 text-[13px] font-medium text-btn-ink transition-opacity hover:opacity-90",children:R0(a)})]})]})}import{jsx as Nc1}from"react/jsx-runtime";var AO={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>Nc1(ix,{heading:$4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as Uh,jsxs as Ic1}from"react/jsx-runtime";var _c1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function nx({tagline:e,widthPct:t=100,align:a="left",reverse:s=!0,padTop:c=0,padRight:l=0,padBottom:r=0,padLeft:o=0,editing:i=!1}){let{src:n,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d}=Ll(),v=Math.round(m7*(t/100)),g={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return Ic1("div",{className:`flex min-w-0 flex-col ${_c1[a]} [container-type:inline-size]`,style:g,children:[Uh(L1,{href:"/","aria-label":d?`${d} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:Uh(xe,{variant:"footer",sizePx:v,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d,fitWordmarkToContainer:!0,fitFloorPx:OC})}),e?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:M(e)}):i?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:p("Add a short brand tagline \u2192")}):null]})}import{jsx as Rc1}from"react/jsx-runtime";var HO={label:"Logo",defaultProps:{widthPct:100,align:"left",reverse:"auto",padTop:0,padRight:0,padBottom:0,padLeft:0},render:({tagline:e,widthPct:t,align:a,reverse:s,padTop:c,padRight:l,padBottom:r,padLeft:o,puck:i})=>Rc1(nx,{tagline:e||void 0,widthPct:t,align:a,reverse:s!=="off",padTop:c,padRight:l,padBottom:r,padLeft:o,editing:i?.isEditing})};import{jsx as Bc1}from"react/jsx-runtime";var FO={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>Bc1(Ra,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as Zc1}from"react/jsx-runtime";var TO={label:"Social Logos",defaultProps:{iconStyle:oe,iconSize:"medium",align:"start",gap:Wc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>Zc1(qb,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as Oc1}from"react/jsx-runtime";var Dc1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function hx({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?p("Add a line of footer text."):"");return c?Oc1("p",{className:`${Dc1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:M(c)}):null}import{jsx as Gc1}from"react/jsx-runtime";var PO={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>Gc1(hx,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as qc1}from"react/jsx-runtime";var EO={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>qc1(Bp,{formSlug:a1(e.formSlug)||void 0,heading:a1(e.heading)||void 0,intro:a1(e.intro)||void 0,submitText:a1(e.submitText)||void 0,finePrint:a1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as Wc1}from"react/jsx-runtime";var VO={label:"Legal Line",render:()=>Wc1(Gc,{})};import{jsx as Uc1}from"react/jsx-runtime";var NO={label:"Submit box",defaultProps:{},render:e=>Uc1(Vu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as jc1}from"react/jsx-runtime";var _O={label:"Subscribe Form",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",issues:[],archiveText:"",archiveHref:""},render:({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,contentType:u,posts:d,limit:v,archiveText:g,archiveHref:b,puck:f})=>jc1(Jc,{headNum:y(e,I0.headNum,f),headTitle:y(t,I0.headTitle,f),headDesc:y(a,I0.headDesc,f),kicker:y(s,I0.kicker,f),leadTitle:y(c,I0.leadTitle,f),intro:y(l,I0.intro,f),emailPlaceholder:a1(r)||I0.emailPlaceholder,submitText:a1(o)||I0.submitText,subscribedText:a1(i)||I0.subscribedText,finePrint:y(n,I0.finePrint,f),issuesHeading:y(h,I0.issuesHeading,f),issues:Wh(ax(u),{issues:m,posts:d,limit:v,puck:f}),source:G3.subscribeSection,editing:f?.isEditing,archiveText:y(g,I0.archiveText,f),archiveHref:a1(b)||I0.archiveHref})};var IO={AppointmentBooking:xD,BookingBox:wO,ContactRouting:kO,Events:VD,Footer:BD,FooterDivider:SO,FooterEmailSignup:AO,FooterGroup:qD,FooterLogo:HO,FooterMenu:FO,FooterSocial:TO,FooterText:PO,Form:EO,LegalLineBlock:VO,ReviewForm:sO,Reviews:rO,[F9]:iO,[H9]:hO,SubmitBox:NO,SubmitBuild:uO,Subscribe:_O,SubscribeBlogs:zO};var Kc1={AppointmentBooking:zD,BookingBox:yD,ContactRouting:CD,Events:ND,Footer:ZD,FooterDivider:DD,FooterEmailSignup:OD,FooterGroup:WD,FooterLogo:UD,FooterMenu:$D,FooterSocial:QD,FooterText:eO,Form:tO,LegalLineBlock:aO,ReviewForm:cO,Reviews:oO,[F9]:nO,[H9]:mO,SubmitBox:pO,SubmitBuild:dO,Subscribe:xO,SubscribeBlogs:yO},h2=et(IO,Kc1);import{jsx as O6,jsxs as DO}from"react/jsx-runtime";var mx=e=>e==="sentence"?"none":void 0,D6=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Qc=e=>typeof e=="string"&&e?e:void 0,$c1=["font","color","size","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function jh(e){let t={};for(let a of $c1)e[a]!==void 0&&(t[a]=e[a]);return t}function Yc1(e){let t=e.fonts,a=e.sizes,s=e.typography,c=Oz(e.compression),l=(o,i)=>({id:`heading-${o}`,kind:"heading",name:`Heading ${o}`,values:jh(i)}),r=(o,i={})=>({id:`body-${o}`,kind:"body",name:`Body ${o}`,values:jh(i)});return[l(1,{font:Qc(t.heading),size:D6(a.headingLarge),weight:D6(s.weight),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case),largestSize:D6(s.maxPx)}),l(2,{font:Qc(t.heading2),size:D6(a.headingMedium),weight:D6(s.weight2),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case2)}),l(3,{font:Qc(t.heading3),size:D6(a.headingSmall),weight:D6(s.weight3),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case3)}),r(1,{font:Qc(t.body),size:D6(a.body)}),r(2),r(3),r(4),r(5,{font:Qc(t.label),size:D6(a.label)})]}function RO(e){return Array.isArray(e)&&e.every(t=>t&&typeof t=="object"&&typeof t.id=="string"&&(t.kind==="heading"||t.kind==="body")&&typeof t.name=="string")?e.map(t=>({...t,values:jh(t.values??{})})):null}function BO(e){return RO(e)??[]}function Dm0(e,t){let a=Yc1(t),s=RO(e);return s?s.map(c=>({...c,values:jh({...Xc1(a,c.id),...c.values})})):a}var Xc1=(e,t)=>e.find(a=>a.id===t)?.values??{};function Om0(e,t){let a=u=>e.find(d=>d.id===u)?.values??{},s=a("heading-1"),c=a("heading-2"),l=a("heading-3"),r=a("body-1"),o=a("body-5"),i=t.fonts,n=t.sizes,h=t.typography,m=u=>u==="none"?"sentence":"authored";return{fonts:{...i,heading:s.font??i.heading,heading2:c.font??s.font??i.heading2,heading3:l.font??s.font??i.heading3,body:r.font??i.body,label:o.font??i.label},sizes:{...n,headingLarge:s.size??null,headingMedium:c.size??null,headingSmall:l.size??null,body:r.size??null,label:o.size??null},compression:t.compression,typography:{...h,case:m(s.letterCase),weight:s.weight??null,maxPx:s.largestSize??null,weight2:c.weight??null,weight3:l.weight??null,case2:m(c.letterCase),case3:m(l.letterCase)}}}function Jc1(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}function Qc1(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":/^#[0-9a-f]{6}$/i.test(e)?e:null}function el1(e){let t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function ZO(e){let t=[];for(let a of e){let s=a.values,c=`.${Jc1(a)}`,l=[],r=s.font!==void 0?zz.find(n=>n.key===s.font)?.cssVar:void 0;if(r&&l.push(`font-family: var(${r})`),s.size!==void 0){let n=s.largestSize!==void 0?Math.min(s.size,s.largestSize):s.size;l.push(`font-size: ${n}px`)}let o=s.color!==void 0?Qc1(s.color):null;o&&l.push(`color: ${o}`),s.italic===!0&&l.push("font-style: italic"),s.weight!==void 0&&l.push(`font-weight: ${s.weight}`);let i=[];s.lineHeight!==void 0&&i.push(`line-height: ${s.lineHeight}`),s.letterSpacing!==void 0&&i.push(`letter-spacing: ${s.letterSpacing}em`),a.kind==="body"&&l.push(...i),s.letterCase!==void 0&&l.push(`text-transform: ${s.letterCase==="upper"?"uppercase":s.letterCase==="lower"?"lowercase":"none"}`),s.paragraphSpacing&&l.push(`--sf-part-para: ${s.paragraphSpacing}px`),l.length&&t.push(`${c} { ${l.join("; ")} }`),a.kind==="heading"&&i.length&&t.push(`${c}, ${c}:is(h1, h2, h3, h4) { ${i.join("; ")} }`),s.paragraphSpacing&&t.push(...el1(c))}return t.join(`
154
- `)}import{useEasel as tl1}from"efficient-easel/easel";var al1="color-mix(in oklab, var(--bg) 40%, #ffffff)",sl1="12vh";function cl1({style:e,frameClass:t,children:a}){let{appState:s}=tl1(d=>d),c=s.data.content,l=s.data.root;if(aC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:al1,minHeight:"100vh",paddingBottom:sl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?lC(l,c):null,i=o?{[cC]:o}:null,n=cy(l?.widthChoice),h=n?{[sy]:n}:null,m=r?null:MZ(c),u=m?{[yh]:m}:null;return O6("div",{className:`sf-themed-content${r?` ${nr}`:""}${t?` ${t}`:""}`,style:e,...u,...i,...h,children:O6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function OO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function px({w:e,children:t}){let{frameClass:a,style:s}=OO(e);return O6("div",{className:a,style:s,children:t})}function ux({propsTheme:e,propsFonts:t,propsCornerStyle:a,propsCornerRadiusPx:s,propsHeadingCompression:c,propsHeadingTypography:l,widthMode:r,fullWidth:o,pageWidth:i,pageBackground:n,chromeInheritsSiteBackground:h,suppressPreviewNav:m,footer:u,overlay:d,children:v}){let{theme:g,fonts:b,sizes:f,cornerRadiusPx:w,cardShadow:z,shadowColor:k,cardGap:S,hoverEffect:H,headingCompression:I,siteWidth:P,siteGutter:D,blockGap:E,headingTypography:F,heroBackgroundFollowsWidth:_,photographyGrayscale:Z,textStyles:G,themeFromDocument:V}=I3(),j=V?e:g,N=V?t:b,Q=V?void 0:f,W=V?s===void 0?Nz[Vz(a)]:_z(s):w,U=V?c:I,i1=ZO(BO(V?void 0:G)),y1=V?l:F,K=OO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Gz(y1),...K.style,...h?{}:ym(n)};return DO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...pm(W),...$z(pm(W)),...Zz(V?void 0:z,V?void 0:k,V?void 0:H),...Xz(V?void 0:P),...Jz(V?void 0:D),...qy(V?void 0:E),...ay(V?void 0:_)},"data-sf-headings":Dz(U),"data-sf-card-shadow":V?void 0:Iz(z),"data-sf-card-gap":V?void 0:Rz(S),"data-sf-card-hover":V?void 0:Bz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,DO(ZT,{grayscale:V?void 0:Z,children:[O6(cl1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var dx=e=>{e.target?.closest?.("a")&&e.preventDefault()};function GO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:ym(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(px,{w:a,children:s})})}import{jsx as vx}from"react/jsx-runtime";import{ListIcon as ll1,PaddingTopIcon as rl1}from"efficient-easel/icons";function ol1(){return{type:"custom",render:({value:e,onChange:t})=>vx(Bh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the site"),hint:p("Whether this page sits on the site's content column, or runs edge to edge."),onChange:a=>t(a)})}}var il1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],UO={pageBackground:nw(),topSpace:g1("Top space",vx(rl1,{}),il1,sC),widthChoice:ol1()},nl1="Record type",gx=new Map,qO=-1;function hl1(e){qO!==pp()&&(gx.clear(),qO=pp());let t=mp(),a=t.some(c=>c.key===e)?"":e,s=gx.get(a);return s||(s=g1(nl1,vx(ll1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),gx.set(a,s)),s}var WO=new WeakMap;function jO(e,t){if(!M2()||mp().length<2||Rr in e)return e;let a=hl1(Br(t)),s=WO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return WO.set(e,{row:a,fields:c}),c}function ml1(e,t){let a=wm(t),s=a?a.inner:t;if(om(s))return!1;if(s?.type==="slot")return!0;let c=Ay(s);return c==="always"?!1:c==="authored-copy"?Mz(e):!0}function KO(e){let t=wm(e),a=t?t.inner:e,s=om(a);return s?Xy(a)?0:s.level:null}function pl1(e,t,a){return a?t===0&&e===Em.Design||t===1&&e===uw.Content:!1}var ul1=new WeakMap,dl1=new WeakMap;function Kh(e,t="section"){let a=t==="page"?dl1:ul1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:KO(u),draws:ml1(m,u)||t==="page"&&KO(u)===null&&nm(m,u)})),l=t==="section"&&c.some(m=>nm(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let u=c[m].level;if(u===null)continue;let d=0;for(let v=m+1;v<c.length;v++){let g=c[v].level;if(g!==null&&g<=u)break;c[v].draws&&(d+=1)}d===0&&!pl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&bw(e),i=o&&!(Em.Design in e);if(!r.size&&!i)return a.set(e,e),e;let n={};for(let m of c)r.has(m.key)||(n[m.key]=m.field);let h=re(o?fw(n):n);return a.set(e,h),h}var $O={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as gl1}from"react/jsx-runtime";var YO={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},fx=new Set(Object.keys(Z1)),XO={name:"openSlotDisallow",applies:()=>!0,panel(e,t,a,s){let c=s.contentSectionKeys;if(e?.fields)for(let l of Object.values(e.fields)){let r=l;if(r.type!=="slot"||r.allow)continue;let o=t==="Flex"?c.filter(i=>!fx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var vl1=Array.from(new Set([...Ox.map(e=>e.type),...fx,...rl,"GalleryItem"])),JO={name:"cellWidth",applies:(e,t,a)=>vl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.cellWidthFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=Pi(r.appState,l.props?.id);if(i===void 0||bz(i))return o;let n={...o};for(let h of Object.keys(s()))delete n[h];return n}},draw(e){let t=e.render;e.render=a=>{let s=vz(a.gridSpan),c=t(a);return s==null?c:gl1("div",{className:"sf-grid-cell",[fz]:String(s),children:c})}}};import{jsx as QO}from"react/jsx-runtime";var eG={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=E9(c);return c.puck?.isEditing?QO(pH,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?QO(Wz,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as tG}from"react/jsx-runtime";var aG={name:"sectionCorners",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.sectionShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=yl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=E0(a)?`sf-section-corners ${jz}`:"sf-section-corners";return s?tG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},fl1=["CollectionCard"],sG={name:"cardCorners",applies:(e,t,a)=>fl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.cardShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=Kz(a.cardCorners,a.cardCornerSides),c=t(a);return s?tG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var cG={name:"emptyHeadings",applies:()=>!0,panel(e,t,a){let s=a.dropEmptyHeadings,c=e.resolveFields;e.resolveFields=c?(l,r)=>{let o=c(l,r);return o instanceof Promise?o.then(i=>s(i??r.fields)):s(o??r.fields)}:(l,r)=>s(r.fields)}};var lG={name:"hiddenNodes",applies:(e,t,a)=>typeof a?.render=="function",draw(e){let t=e.render;e.render=a=>a._hidden?null:t(a)}};import{jsx as rG,Fragment as bl1,jsxs as xl1}from"react/jsx-runtime";function zl1({anchor:e}){let t=fm(typeof e=="string"?e:"");return t?rG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var oG={name:"sectionAnchor",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.anchorFields;e.fields={...e.fields,...s()}},draw(e){e.defaultProps={...e.defaultProps,anchor:""};let t=e.render;e.render=a=>xl1(bl1,{children:[rG(zl1,{anchor:a.anchor}),t(a)]})}};import{jsx as Cl1}from"react/jsx-runtime";import{jsx as yl1}from"react/jsx-runtime";import{useEffect as wl1,useRef as iG}from"react";function nG({motion:e,editing:t,children:a}){let s=iG(null),c=iG(e);return wl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,py(l);return}return my(l)}},[e,t]),yl1("div",{ref:s,[hy]:e,children:a})}var hG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!uy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.sectionAnimationFields;e.fields={...e.fields,...s()}},draw(e){let t=e,a=t.render;t.render=s=>{let c=ny(s.sectionAnimation);return c?Cl1(nG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as kl1}from"react/jsx-runtime";var uG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!gy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.heightFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=l?.props??{},n=dy(i),h=vy(i)?fy(i):null;return o&&typeof o.then=="function"?o.then(m=>pG(mG(m,n),h)):pG(mG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=by(a);return s?kl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function mG(e,t){if(!e||!("sectionHeightMode"in e))return e;let a={...e};if(t.mode==="auto")return delete a.sectionHeightValue,delete a.sectionHeightUnit,a;t.mode==="screen"&&delete a.sectionHeightUnit;let s=a.sectionHeightValue;return s&&(a.sectionHeightValue={...s,unit:t.unit}),a}function pG(e,t){if(!e||!("sectionHeightModePhone"in e))return e;let a={...e};if(!t||t.mode==="auto")return delete a.sectionHeightValuePhone,delete a.sectionHeightUnitPhone,a;t.mode==="screen"&&delete a.sectionHeightUnitPhone;let s=a.sectionHeightValuePhone;return s&&(a.sectionHeightValuePhone={...s,unit:t.unit}),a}import{jsx as Ml1}from"react/jsx-runtime";var dG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!oy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=xm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=xm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Ml1("div",{className:l.className,style:l.style,children:r}):r}}},gG={name:"slideTheme",applies:e=>e==="HeroSlide",panel(e,t,a){let{sectionThemeFields:s,BLOCK_THEME_FOLLOW_LABEL:c}=a;e?.fields&&(e.fields={...e.fields,...s(f5,c)})}};var Sl1=new Set(["Reviews","Cards","FAQ","Prose","ProductHero","SpecTable","ProductGrid","ParagraphsA","KeyFeatures","Stats","StatsParagraph","Chart","Mockup","Testimonials","Logos","ContactRouting","ContactLocations","SubmitBuild","ReviewForm","Form","AppointmentBooking","OrderSummary","DeliveryOptions","PaymentBadges","CheckoutCTA","Collections","AlloyWheelsListing","CatalogFilterBar","FitmentFinder","GalleryB","BrandStrip","DocMasthead","DocBody","DocMetaCards","Masthead","FeaturedCover","LongRead","Series","Events","SectionHeader","Grid","Flex","Spacer","Divider","CustomHTML","Breadcrumb","CategoryBar","DocTabs","Hero","HeroSingle","IntroBleed","Manifesto","Timeline","TimelineTrack","Footprint","Banner","TitleWithButtons","Ticker","SubscribeBlogs","TyreSizes","TyreFitment","EuTyreLabel","SpecStrip","ProcessSteps","DetailRows","FitmentTable","CompatibleTyres","RelatedProducts","BundleOffer","Split","Gallery","Subscribe","Countdown"]),vG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Sl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ll1=new Set(["HeroSlide","Heading","Text","ImageBlock","ButtonBlock","HeroGroup","GalleryItem","Footer","FooterLogo","FooterMenu","FooterGroup","FooterText","PostCard","LogoBlock","CollectionCard","Eyebrow","BookingBox","SubmitBox","FooterSocial","MenuBlock","SocialLogosBlock","EmailFormBlock","SearchBlock","CartBlock"]),fG={name:"blockGroups",applies:e=>Ll1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Al1=["Form","Stats"];function bx(e,t){let a=new Set(e),s=Bx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Al1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Hl1=[YO,XO,LL,aG,sG,AL,JO,wT,CT,kT,MT,uG,oG,dG,hG,gG,vG,fG,cG,eG,lG,$O];function bG(e,t,a){let s=t;for(let c of Hl1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var xG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:ew,cellWidthFields:lw,widthField:z5,heightFields:rw,anchorFields:ow,sectionThemeFields:X9,sectionAnimationFields:Qy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:Kh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:ky};function zG(e){let t={...bx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:xG};for(let[l,r]of Object.entries(e.components))bG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>Kh(jO(l,r?.props),"page");return a.resolveFields=s?(l,r)=>{let o=s(l,r);return o instanceof Promise?o.then(i=>c(i??r.fields,l)):c(o??r.fields,l)}:(l,r)=>c(r.fields,l),t}import{Fragment as Xl1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Bl1="Newsletter (built in)";var Id0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Zl1=sm(()=>import("./PreviewFooter-RIYV7MVW.js")),Dl1=sm(()=>import("./render-client-4GGZ7WMC.js")),Ol1={padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"};function Gl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Qk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(ux,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Ol1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let g=v?e:m,b=v?t:u,f=n.content??[],w=n.root,z=Sa(f)&&hr(w,f);return ga("div",{className:"sf-theme-accent",style:{...ul(b),...vl(g),...fl(g),...bl(g)},onClickCapture:o,children:[ga("div",{style:{position:"relative"},children:[n0("div",{className:z?nr:void 0,style:{...za(g),...zl(v?void 0:d),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:n0(Dl1,{data:n})}),n0("button",{type:"button",onClick:()=>h(),title:p("Click the page to go back"),"aria-label":p("Go back to the page"),style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),n0("div",{className:"sf-theme-surfaces",style:{...za(g),...xl(g)},children:n0(px,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Fm,ql1={formSlug:E5(void 0,Bl1),_gLeft:x("Left panel"),metaLabel:q("Meta label",F0.metaLabel),issueLabel:q("Issue label",F0.issueLabel),issueNumber:q("Issue number",F0.issueNumber),kicker:q("Eyebrow",F0.kicker),heading:E1("Heading",F0.heading),deck:E1("Deck",F0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:q("Label"),value:q("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:x("Right panel \xB7 form"),formLabel:q("Section label",F0.formLabel),formHeading:q("Heading",F0.formHeading),formIntro:E1("Intro",F0.formIntro),firstNameLabel:q("First-name label",F0.firstNameLabel),firstNamePlaceholder:q("First-name placeholder",F0.firstNamePlaceholder),emailLabel:q("Email label",F0.emailLabel),emailPlaceholder:q("Email placeholder",F0.emailPlaceholder),_gChoices:x("Right panel \xB7 choices"),interestsLabel:q("Interests label",F0.interestsLabel),interests:T2("Interest chips",n0(c4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:q("Frequency label",F0.frequencyLabel),frequencies:T2("Frequency options",n0(Vl1,{}),"Option label","verbatim"),_gActions:x("Right panel \xB7 actions"),submitText:q("Submit button",F0.submitText),finePrint:q("Fine print",F0.finePrint),dismissText:q("Dismiss link",F0.dismissText),emailInvalidText:q("Invalid-email error",F0.emailInvalidText),submitErrorText:q("Submit-failed error",F0.submitErrorText),_gSuccess:x("Success state"),successHeading:q("Heading",F0.successHeading),successBody:E1("Message",F0.successBody),keepBrowsingText:q("Dismiss button",F0.keepBrowsingText),...X9(f5,Hl),...Gl(),_gTextStyle:x("Text style"),...Object.fromEntries(Nl.map(e=>[Vy[e],g1(km[e],Ke(km[e]),[{label:"Popup's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gBehaviour:x("Behavior"),autoOpen:l1("Show by itself",F0.autoOpen,n0(El1,{})),trigger:v1("Trigger",n0(Rl1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(xx,{}),Lm.min,Lm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Il1,{}),Am.min,Am.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(Nl1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(xx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(xx,{}),Hm.min,Hm.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(_l1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Tl1,{}))},Wl1=Ql(ql1,"SubscribePopup");async function Ul1(){return(await By(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function jl1(e){let t=Tm(e),a=new Set;t.autoOpen||["trigger","autoOpenDelaySec","scrollPercent","showOn","showOnPages","hideAfter","hideDays"].forEach(c=>a.add(c)),t.trigger==="scroll"&&a.add("autoOpenDelaySec"),t.trigger!=="scroll"&&a.add("scrollPercent"),t.showOn!=="chosen"&&a.add("showOnPages"),t.hideAfter!=="days"&&a.add("hideDays");let s={};for(let[c,l]of Object.entries(Wl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await Ul1().catch(()=>[])}:l);return re(s)}var p5=Vl,Kl1={_gHeader:x("Header"),kickerBadge:q("Eyebrow badge",p5.kickerBadge),kickerText:q("Eyebrow text",p5.kickerText),titleLead:q("Heading",p5.titleLead),titleAccent:q("Heading accent",p5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",p5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",p5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",p5.subtitleMany,"{count} becomes the number of sets"),_gStatus:x("Status rail"),leadTimeValue:q("Lead time",p5.leadTimeValue),shipsToFallback:q("Ships to \xB7 fallback",p5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:x("Promise row"),promises:T2("Trust markers",n0(yG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},$h={root:{fields:{...UO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Sm)return jl1(e.props);if(e?.props?.kind===Cm)return Kl1;let a=t;return M2()?{[gp]:g1("Product type",n0(Fl1,{}),we,"alloy-wheel"),...a,_gHeroBullets:x("Product hero"),_nHeroBullets:b5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[gu]:T2("Trust bullets",n0(yG,{}),bL(Ja.bullets[0]),"verbatim")}:a},render:e=>{let{children:t,puck:a,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:r,theme:o,fonts:i,scales:n,kind:h,previewProduct:m}=e,u=Zr(typeof h=="string"?h:"",e);if(h===Sm){let f=Tm(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the site popup \u2014 edit it in the Settings panel \u2192"}):null,n0(bS,{inline:!0,content:f})]})}if(h===Cm){let f=Ey(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the cart drawer \u2014 edit its copy in the Settings panel \u2192"}):null,n0(wr,{children:n0(Cr,{preview:!0,children:n0($a,{content:f})})})]})}let d=!!a?.isEditing,v=n0(gL,{type:du(e),children:n0(nL,{kind:u,children:n0(yL,{content:xL(e),children:n0(rL,{slug:d?m:null,children:n0(XM,{children:t})})})})}),g=h===Ny&&!Ly(r);return d?h===G9?n0(Gl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:dx,children:v}):n0(ux,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:dx,footer:n0(Zl1,{}),overlay:ga(Xl1,{children:[n0(Jp,{}),n0(iu,{})]}),children:v}):n0(GO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Rx(),components:{Heading:B1.Heading,Text:B1.Text,Eyebrow:B1.Eyebrow,ImageBlock:B1.ImageBlock,LogoBlock:B1.LogoBlock,ButtonBlock:B1.ButtonBlock,Spacer:B1.Spacer,Divider:B1.Divider,Grid:B1.Grid,Flex:B1.Flex,Breadcrumb:B1.Breadcrumb,Masthead:B1.Masthead,CategoryBar:B1.CategoryBar,FeaturedCover:B1.FeaturedCover,LongRead:B1.LongRead,Series:B1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:B1.Banner,ParagraphsA:B1.ParagraphsA,StatsParagraph:B1.StatsParagraph,Timeline:B1.Timeline,Footprint:B1.Footprint,TimelineTrack:B1.TimelineTrack,TitleWithButtons:B1.TitleWithButtons,Stats:B1.Stats,Integrations:B1.Integrations,Mockup:B1.Mockup,Chart:B1.Chart,KeyFeatures:B1.KeyFeatures,Testimonials:B1.Testimonials,Reviews:h2.Reviews,Prose:B1.Prose,Cards:B1.Cards,Logos:B1.Logos,Ticker:B1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:B1.ContactLocations,HeroSingle:B1.HeroSingle,Hero:B1.Hero,HeroSlide:B1.HeroSlide,HeroGroup:B1.HeroGroup,Collections:G0.Collections,CollectionCard:G0.CollectionCard,Events:h2.Events,PostCard:B1.PostCard,DocMetaCards:B1.DocMetaCards,DocTabs:B1.DocTabs,DocMasthead:B1.DocMasthead,DocBody:B1.DocBody,FAQ:B1.FAQ,Gallery:G0.Gallery,GalleryB:G0.GalleryB,BrandStrip:G0.BrandStrip,SpecStrip:B1.SpecStrip,GalleryItem:G0.GalleryItem,Manifesto:B1.Manifesto,SectionHeader:B1.SectionHeader,IntroBleed:B1.IntroBleed,Split:B1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:G0.CatalogFilterBar,AlloyWheelsListing:G0.AlloyWheelsListing,ProductGrid:G0.ProductGrid,ProductHero:G0.ProductHero,SpecTable:G0.SpecTable,ProcessSteps:B1.ProcessSteps,DetailRows:G0.DetailRows,FitmentTable:G0.FitmentTable,RelatedProducts:G0.RelatedProducts,BundleOffer:G0.BundleOffer,CompatibleTyres:G0.CompatibleTyres,TyreSizes:G0.TyreSizes,TyreFitment:G0.TyreFitment,EuTyreLabel:G0.EuTyreLabel,FitmentFinder:G0.FitmentFinder,OrderSummary:B1.OrderSummary,DeliveryOptions:G0.DeliveryOptions,PaymentBadges:B1.PaymentBadges,CheckoutCTA:G0.CheckoutCTA,ProductRef:G0.ProductRef,CustomHTML:B1.CustomHTML,Header:G0.Header,Footer:h2.Footer,FooterLogo:h2.FooterLogo,FooterMenu:h2.FooterMenu,FooterDivider:h2.FooterDivider,FooterGroup:h2.FooterGroup,FooterText:h2.FooterText,FooterEmailSignup:h2.FooterEmailSignup,FooterSocial:h2.FooterSocial,LegalLineBlock:h2.LegalLineBlock,SearchBlock:G0.SearchBlock,CartBlock:G0.CartBlock,CountrySwitchBlock:G0.CountrySwitchBlock,[H9]:h2.SiteHeader,[F9]:h2.SiteFooter}},$l1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries($l1)){let a=$h.components;a[e]={...a[t]}}{let e=$h.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Pl1,{}),[{label:zm.column,value:"column"},{label:zm.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>n0(Ra,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var Yl1=zG($h),Rd0=Yl1.sectionGroupAllow,rb=$h;export{ly1 as a,ry1 as b,oy1 as c,iy1 as d,ny1 as e,bx as f,bG as g,xG as h,uj as i,up1 as j,Ho1 as k,HZ as l,en1 as m,tS as n,tn1 as o,an1 as p,$m1 as q,Dm0 as r,Om0 as s,uq1 as t,xr1 as u,zr1 as v,yr1 as w,wr1 as x,Ir1 as y,Rr1 as z,qU1 as A,ei1 as B,Bn1 as C,ne0 as D,Qp as E,xR1 as F,Hp as G,bM as H,oi1 as I,ii1 as J,ni1 as K,ui1 as L,wM as M,qo1 as N,R5 as O,zZ as P,eb as Q,Ch as R,kt as S,i3 as T,ej as U,CZ as V,Mo1 as W,Kn as X,tf as Y,f81 as Z,fQ1 as _,UR as $,kc as aa,rb as ba};
153
+ `):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return IZ(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as vt1,jsx as C3,jsxs as J3}from"react/jsx-runtime";function ub({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=Fn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(wg),n=JI({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return C3(Nc,{vehicle:a,escape:C3("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>l(h=>!h),children:c?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:c?J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),J3("span",{className:"mt-1.5 block",children:[t?`${i?"The set is":"All four wheels are"} ${t}. We have not checked that against any car \u2014 make sure it matches yours.`:r?"Answer the bolt pattern and the offset below. We will not check them against a car.":"Pick a finish and a size below. The bolt pattern and the offset come next, and we will not check them against a car."," ",C3(L1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:C3(gt1,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:J3(vt1,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every wheel after this one is already filled in."})}function gt1({verdict:e,car:t}){switch(e.state){case"checking":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",J3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))})]});case"fits-with-warning":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))}),J3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[C3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),p9(e.warning)," An offset this far out is what an aftermarket wheel is for, but it changes how far the wheel sits from the guard."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return J3(h5,{tone:"bad",children:[J3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),C3("span",{className:"mt-1.5 block",children:p9(e.failure)})]});case"unknown":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),J3("span",{className:"mt-1.5 block",children:[e.missing==="vehicle"?`We have no factory wheel data for the ${t}, and we will not guess at a fit.`:"We do not hold a bolt pattern for this wheel, and we will not guess at a fit."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as WZ}from"react";import{useCallback as GZ,useRef as ft1,useState as bt1}from"react";function OZ(e,t,a){return{productSlug:e,email:a.trim(),size:t?He(t):""}}function qZ(){let[e,t]=bt1("idle"),a=ft1(!1),s=GZ(()=>{a.current=!1,t("idle")},[]),c=GZ(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!be(o)){t("invalid");return}a.current=!0,t("sending");try{i||await v0.createPreOrderIntent(OZ(l,r,o))}catch{a.current=!1,t("error");return}a.current=!1,t("sent")}},[]);return{status:e,submit:c,reset:s}}import{jsx as na,jsxs as ha}from"react/jsx-runtime";function db({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=WZ(a.length>0?0:-1),[l,r]=WZ(""),{status:o,submit:i,reset:n}=qZ(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ha("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ha("div",{className:"border-2 border-accent/40 px-4 py-3.5 font-mono text-[12px] leading-relaxed tracking-[0.08em] text-fg",style:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:[na("span",{className:"font-bold uppercase tracking-[0.2em] text-accent",children:"Pre-order"})," ","\u2014 this design isn't available to add to cart right now. Leave your email to pre-order it. No payment is taken now."]}),a.length>0&&ha("div",{children:[ha("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",na("span",{className:"text-accent",children:h?He(h):"Select a size"})]}),na("div",{className:"flex flex-wrap gap-1.5",children:a.map((u,d)=>{let v=d===s;return ha("button",{type:"button",onClick:()=>{c(d),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",v?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:v?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[v&&na("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),na("span",{className:"block text-[14px] tracking-[0.18em]",children:He(u)})]},He(u))})})]}),o==="sent"?ha("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-accent",children:["Thanks \u2014 we've registered your pre-order for the ",e.name,"."]}):na(Vc,{email:l,onEmailChange:r,status:o,onResetVerdict:n,onSubmit:m,inputAriaLabel:"Email to pre-order this design",submitLabel:"Pre-order",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn bg-btn px-6 font-mono text-[12px] font-bold uppercase tracking-[0.22em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-not-allowed disabled:opacity-50",errorMessage:"Couldn't register that \u2014 please try again."})]})}import{useState as xt1}from"react";import{Fragment as zt1,jsx as Hh}from"react/jsx-runtime";function Fh({src:e,alt:t,fallback:a,fill:s=!1,width:c,height:l,sizes:r,className:o,style:i,priority:n,draggable:h,imageKey:m,imageWrapperClassName:u,onImageClick:d,imageButtonClassName:v,imageButtonLabel:g}){let[b,f]=xt1(null),w=e||"";if(!(w!==""&&b!==w))return Hh(zt1,{children:a});let k=Hh(_3,{src:w,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>f(w)},m??w),S=u?Hh("div",{className:u,children:k}):k;return d?Hh("button",{type:"button",onClick:d,"aria-label":g,className:v,children:S}):S}function UZ(e){let t=e.angles??(e.src?[e.src]:[]),a=[],s=[];for(let c of t)(c.split("/").pop()??"").includes("20-20")?a.push(c):s.push(c);return[...s,...a]}var KZ="Image for reference only. Actual product may vary.",jZ=e=>String(Number(e));function $Z(e,t,a,s){let c=e.renderFits;if(!c||!t||t.diameter==null||t.width==null)return!1;let l=s&&a!=null?c.lug?.[String(a)]:c.angles;if(!l)return!1;let r=jZ(t.diameter);if(!(l.sizes.length===0||l.sizes.includes(`${r}x${jZ(t.width)}`)||l.sizes.includes(r)))return!0;let i=l.lugs??[];return!s&&a!=null&&i.length>0&&!i.includes(a)}import{Fragment as YZ,jsx as D4,jsxs as wt1}from"react/jsx-runtime";function Th(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function Ph({text:e}){return e==="FusionForge\xAE"?wt1(YZ,{children:["FusionForge",D4(i6,{})]}):D4(YZ,{children:e})}function XZ(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",u=h.variants.find(g=>g.size===m),d=u?.specs.tireType??h.variants[0]?.specs.tireType??null,v=[u?.image,h.coverImage].filter(g=>!!g);return{heading:cn(h.brand,h.name),photos:v.slice(0,1),tint:void 0,stageImage:()=>D4(p6,{image:u?.image??h.coverImage,size:m,type:d,sizes:Ah,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",referenceNote:"",metaValue:m,specCaption:u?[u.specs.loadIndex,u.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:D4(pb,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=AN(s,t.shown.finish),l=D7(s,t.part),r=Vn(t),o=Hg(c,r),i=o?[...o]:UZ(c),n=i.length>0?i:s.coverImage?[s.coverImage]:[];return{heading:e.name,photos:n,tint:c.color,stageImage:({photo:h,alt:m,label:u,onZoom:d,fit:v})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:Ah,className:v==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:d,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:u,fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:"(max-width: 720px) 20vw, (max-width: 1100px) 10vw, 120px",className:"object-contain",imageWrapperClassName:"relative h-[80%] w-[80%]",fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:yt1(n,c,r,t.manualMode),referenceNote:$Z(c,l,r,o!=null)?KZ:"",metaValue:c.name,specCaption:l?js(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:D4(ub,{selection:t,spec:l?js(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:D4(db,{wheel:s,editing:a})}}function yt1(e,t,a,s){return e.length>=2||a!=null||!Object.values(t.lugRenderings??{}).some(l=>Array.isArray(l)&&l.filter(Boolean).length>=2)?"":s?"Pick a bolt pattern to see every angle":"Pick your vehicle to see every angle"}import{createContext as Ct1,useContext as kt1,useEffect as Mt1,useState as JZ}from"react";import{jsx as Lt1}from"react/jsx-runtime";var QZ="storefront-wishlist";function St1(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var eD=Ct1(null);function ne0({children:e}){let[t,a]=JZ([]),[s,c]=JZ(!1);Mt1(()=>{let o=t3.getItem(QZ);try{o&&a(St1(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),t3.setItem(QZ,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return Lt1(eD.Provider,{value:r,children:e})}function tD(){let e=kt1(eD);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var aD="data-option-row";import{Fragment as m5,jsx as w1,jsxs as K1}from"react/jsx-runtime";var Ht1=4e3;function Ft1(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}var Tt1=.72;function Pt1(e){let t=e.trim().split(/\s+/).filter(Boolean);if(t.length===0)return;let a=t.map((s,c)=>s.length+(t.length>1&&c===t.length-1?1:0));return`calc(100cqi / ${(Math.max(...a)*Tt1).toFixed(2)})`}function ma({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=e8,imageRatio:o=t8,textAlign:i=g9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=a8,imageFit:u=s8}){let d=Jt(r),v=th(i),g=ah(o),b=sh(m),f=rB(ch(u),xN(e)),w=d==="imageRight"?`${100-g}fr ${g}fr`:`${g}fr ${100-g}fr`,{picked:z,pick:k,qty:S,setQty:H,choice:I,setChoice:P,angleIdx:D,setAngleIdx:E,showValidation:F,setShowValidation:_,manualMode:Z,vehicle:G,rows:V,facts:j,part:N,outOfStock:Q,offer:W,preOrder:U,canAddToCart:i1,currency:y1,price:K,set:c1,msrpLabel:b1}=t,$=XZ(e,t,s),{bullets:u1}=wL(),x1=mN(e),X0=dN(e),o0=l?$.vehicle:null,I1=l?$.vehicleMemory:null,[c0,l0]=cD(!1);gb(()=>{let e1=()=>{l0(document.documentElement.getAttribute("data-theme")==="light")};e1();let z1=new MutationObserver(e1);return z1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>z1.disconnect()},[]);let{add:X1,open:X2,warmCatalog:Q1}=i4();gb(()=>{s||Q1(e.kind)},[s,e.kind,Q1]);let d2=V.filter(e1=>!U||e1.values.length>0),b0=d2.filter(e1=>e1.role==="resolves"),d1=d2.filter(e1=>e1.role==="describes"&&!zN(X0,e1.key)),$1=d1.findIndex(e1=>e1.chosen===null),u0=(!o0||!$.vehicleAnswersSpecs||t.fitmentSet)&&Fn(V,U)?$1===-1?d1:d1.slice(0,$1+1):[],P0=[...b0,...u0],J0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[b1&&w1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:b1}),w1("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] font-bold leading-none tracking-[-0.01em] text-fg",children:x1?IC(K,y1):fe(K,y1)}),K.priced&&w1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:$.unitLabel}),K.setTotal!=null&&K1("div",{className:"ml-auto border border-accent px-3 py-2 font-mono text-[length:var(--size-label,13px)] font-bold uppercase tracking-[0.18em] text-accent",style:{background:"color-mix(in oklab, var(--accent) 14%, transparent)"},children:[W.quantityLabel,": ",B2(c1,y1)]})]}),q0=At1(null);return gb(()=>{s||q0.current===e.slug||(q0.current=e.slug,RC({itemId:N?`${e.slug}|${N.id}`:e.slug,itemName:e.name,variant:$.metaValue,pricePerSet:K.setTotal??K.fromSetTotal??0,currency:y1}))},[s,e.slug,e.name,$.metaValue,N,K,y1]),K1(m5,{children:[w1("nav",{className:"border-b border-line px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] pt-4 pb-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:c0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((e1,z1)=>K1("span",{children:[z1>0&&K1(m5,{children:[w1("span",{className:"mx-3 text-accent",children:"/"}),w1("wbr",{})]}),e1.href?w1(L1,{href:e1.href,className:"hover:text-fg",children:w1(Ph,{text:e1.label})}):w1("span",{className:"text-fg",children:w1(Ph,{text:e1.label})})]},`${e1.label}-${z1}`))}),K1("section",{"data-hero-layout":d,"data-hero-align":v,className:["grid gap-10 px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] py-14 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-8",d==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:minmax(0,1fr)]"].join(" "),style:{...c0?{}:{background:"var(--section-bg)"},...d==="stacked"?{}:{"--hero-cols":w}},children:[K1("div",{"data-hero-gallery":b,"data-hero-fit":f,className:b==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:d==="imageRight"?{order:2}:void 0,children:[K1("div",{className:b==="tiled"?"min-w-0 flex-1":void 0,children:[w1(Nt1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,onLightbox:a,fit:f}),$.referenceNote&&w1("p",{"data-hero-reference-note":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.referenceNote}),$.galleryHint&&w1("p",{"data-hero-gallery-hint":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.galleryHint})]}),b!=="main"&&w1(_t1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,tiled:b==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",v==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:d==="imageRight"?{order:1}:void 0,children:[K1("div",{className:"w-full [container-type:inline-size]",children:[K1("div",{className:"mb-2.5 flex items-center gap-2.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-accent",children:[w1("span",{children:w1(Ph,{text:e.eyebrow})}),e.badge&&K1(m5,{children:[w1("span",{children:"\xB7"}),w1("span",{children:e.badge})]})]}),w1("h1",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--hero-name-fit,9999px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",style:{"--hero-name-fit":Pt1($.heading)},children:(()=>{let e1=$.heading.lastIndexOf(" ");if(e1===-1)return $.heading;let z1=$.heading.slice(0,e1),t0=$.heading.slice(e1+1);return K1(m5,{children:[z1," ",K1("em",{className:"font-normal italic text-accent",children:[t0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&J0,I1,b0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),U&&$.preOrder?K1(m5,{children:[c==="belowSpecs"&&h&&J0,$.preOrder]}):K1(m5,{children:[o0,u0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),n&&w1(Et1,{facts:j}),(W.packs.length>0||W.extra||W.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[W.packs.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.packs.map(e1=>K1("button",{type:"button",onClick:()=>P(z1=>({...z1,unit:e1.value})),"aria-pressed":I.unit===e1.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",I.unit===e1.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:I.unit===e1.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[I.unit===e1.value&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value))})]}),W.extra&&K1("label",{className:`${W.packs.length>0?"mt-3.5 ":""}flex cursor-pointer items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-fg`,children:[w1("input",{type:"checkbox",checked:I.spares>0,onChange:e1=>P(z1=>({...z1,spares:e1.target.checked?vr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),W.extra.label]}),W.spareCounts.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:a9.howMany}),w1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:W.spareCounts.map(e1=>{let z1=e1.value-i7,t0=I.spares===z1;return K1("button",{type:"button",onClick:()=>P(s2=>({...s2,spares:z1})),"aria-pressed":t0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",t0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:t0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[t0&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),K1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:[e1.value," \xB7 ",e1.label]})]},e1.value)})})]}),W.spareSide&&K1(m5,{children:[w1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:W.spareSide.label}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.spareSide.options.map(e1=>{let z1=I.spareSide===e1.value;return K1("button",{type:"button",onClick:()=>P(t0=>({...t0,spareSide:e1.value})),"aria-pressed":z1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",z1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:z1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[z1&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value)})})]})]}),c==="belowSpecs"&&h&&J0,K1("div",{className:PZ,children:[!(x1&&!K.priced)&&w1(Ka,{value:S,onChange:H,size:"large"}),x1&&!K.priced?w1(L1,{href:"/contact",className:"flex-1 cursor-pointer bg-btn px-6 py-4 text-center font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg",children:br}):K.priced?Q?w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:"Out of stock"}):K1("button",{type:"button",[ue]:"",onClick:()=>{if(!i1){_(!0),window.setTimeout(()=>_(!1),Ht1);return}if(_(!1),s)return;let e1=PN(e,N,z,{choice:I,qty:S},{fitmentLabel:Z?$.specCaption:G.appliedName?`For ${G.appliedName}`:"",fitmentKey:Z?`manual|${$.specCaption}`:`vehicle|${Ft1(G.applied?.vehicle)}`});e1&&(X1(e1),X2())},"aria-disabled":!i1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",i1?"cursor-pointer bg-btn text-btn-ink hover:bg-fg hover:text-bg":"cursor-pointer border-2 border-dashed border-accent/50 text-accent/80 hover:border-accent hover:text-accent"].join(" "),style:i1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",K.setTotal!=null?` \xB7 ${B2(c1,y1)}`:""]}):w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:n7}),w1(It1,{slug:e.slug,name:e.name})]}),Q&&N&&w1(Rt1,{partNumbers:N.components.map(e1=>e1.partNumber),productSlug:e.slug},N.id),F&&(()=>{let e1=P0.filter(t0=>t0.chosen===null).map(t0=>t0.prompt.replace(/^Select\s+/i,""));if(o0&&$.vehicleAnswersSpecs&&!t.fitmentSet&&e1.push("vehicle fitment"),e1.length===0)return null;let z1=e1.length===1?e1[0]:e1.length===2?`${e1[0]} and ${e1[1]}`:`${e1.slice(0,-1).join(", ")}, and ${e1.at(-1)}`;return K1("p",{role:"alert",className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:["Please select ",z1," first."]})})()]}),u1.length>0&&w1("ul",{className:"flex flex-wrap items-center gap-x-6 gap-y-2 border-t border-line pt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.05em] text-fg",children:u1.map((e1,z1)=>K1("li",{children:[w1("strong",{className:"font-bold text-accent",children:e1.label}),e1.detail?` ${Xa} ${e1.detail}`:""]},`${e1.label}-${z1}`))})]})]})]})}function Et1({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[w1("dl",{className:"flex flex-col gap-2",children:e.map(t=>K1("div",{className:"flex flex-wrap items-baseline gap-x-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em]",children:[K1("dt",{className:"text-fg-dim",children:[t.label," \xB7"]}),w1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),w1("p",{className:"mt-3 font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:"Only one of each is left, so there is nothing to choose here."})]})}function sD({row:e,onPick:t}){if(e.values.length===0&&!e.empty)return null;let a=e.values.find(c=>c.value===e.chosen),s=a&&[a.label,a.note].filter(Boolean).join(" \xB7 ");return K1("div",{className:"border-b border-line pb-[26px]",[aD]:e.key,children:[K1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:[e.label," \xB7 ",w1("span",{className:"text-accent",children:s??e.prompt})]}),e.values.length===0?K1("p",{className:"font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:[e.empty.text," ",w1(L1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?w1("div",{className:"grid grid-cols-2 gap-2",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative flex items-center gap-3 border-2 px-3 py-3 text-left transition-colors",l?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),w1("span",{className:"block min-w-0 flex-1 truncate font-mono text-[length:var(--size-label,12px)] font-bold uppercase tracking-[0.18em] text-fg",children:c.label})]},c.value)})}):w1("div",{className:"flex flex-wrap gap-1.5",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",l?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&w1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function lD(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var Vt1=6;function Nt1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,onLightbox:l,fit:r}){let o=t.photos[Math.min(a,t.photos.length-1)],i=DZ(t.photos,o),n=lD(t),h=n>=2,m=String(n).padStart(2,"0"),u=Math.min(a,Math.max(t.photos.length-1,0)),d=h||t.captions[u]?Th(t,u):"",v=[e,t.metaValue,d].filter(Boolean).join(" \u2014 "),g="max-[720px]:static",b=["relative flex aspect-square items-center justify-center overflow-hidden max-[720px]:col-span-2",c?"bg-bg":""].join(" ");return K1("div",{className:"relative max-[720px]:grid max-[720px]:grid-cols-[minmax(0,1fr)_auto] max-[720px]:items-start max-[720px]:gap-x-3 max-[720px]:gap-y-2",style:{color:t.tint},children:[K1("div",{className:`absolute left-0 top-0 z-10 flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-fg ${g} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(m5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),w1("span",{className:"text-fg-dim",children:"\xB7"})]}),w1("span",{children:e}),t.metaValue&&K1(m5,{children:[w1("span",{className:"text-fg-dim",children:"\xB7"}),w1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&w1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${g}`,children:ZZ(a,n,s).map(w=>w1("button",{type:"button","aria-label":w.label,title:w.label,onClick:w.onClick,className:"flex h-7 w-7 items-center justify-center border border-fg-dim/60 text-fg transition-colors hover:border-accent hover:text-accent",children:w.glyph},w.label))}),K1("div",{className:b,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((w,z)=>w1("span",{className:`absolute ${w} h-3 w-3 border border-fg-dim/40`,style:{borderTop:w.includes("top")?"1px solid var(--site-line)":"none",borderBottom:w.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:w.includes("left")?"1px solid var(--site-line)":"none",borderRight:w.includes("right")?"1px solid var(--site-line)":"none"}},z)),t.stageImage({photo:i,alt:v,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,v),fit:r})]}),K1("div",{className:`absolute bottom-5 left-5 right-5 z-10 flex items-center justify-between gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim ${g} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[w1("span",{children:t.specCaption}),w1("span",{children:t.originCaption})]})]})}function _t1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=lD(t);return r<2?null:w1("div",{className:l?"order-[-1] flex w-16 flex-col gap-2 max-[720px]:w-12 max-[720px]:gap-1":"mt-2 grid grid-cols-4 gap-2 max-[720px]:gap-1",style:!l&&r>4?{gridTemplateColumns:`repeat(${Math.min(r,Vt1)}, minmax(0, 1fr))`}:void 0,children:Array.from({length:r}).map((o,i)=>{let n=t.photos[i];return K1("button",{type:"button",onClick:()=>s(i),"aria-label":`View ${Th(t,i)}`,className:["relative flex aspect-square items-center justify-center overflow-hidden transition-colors",c?"bg-bg":"",i===a?"border border-accent":"border border-transparent hover:border-fg-dim"].join(" "),style:{color:t.tint},children:[w1("span",{className:"absolute top-1.5 left-2 z-10 font-mono text-[length:var(--size-label,8px)] uppercase tracking-[0.18em] text-fg-dim",children:String(i+1).padStart(2,"0")}),t.thumbImage({photo:n,alt:`${e} \u2014 ${Th(t,i)}`})]},i)})})}function It1({slug:e,name:t}){let{has:a,toggle:s}=tD(),c=a(e);return w1("button",{type:"button",title:c?"Saved":"Save","aria-label":c?`Remove ${t} from wishlist`:`Save ${t} to wishlist`,"aria-pressed":c,onClick:()=>s(e),className:["h-12 w-12 cursor-pointer border-2 bg-transparent transition-colors",c?"border-accent text-accent":"border-fg-dim/50 text-fg hover:border-accent hover:text-accent"].join(" "),children:c?"\u2665":"\u2661"})}function Rt1({partNumbers:e,productSlug:t}){let[a,s]=cD(""),{status:c,submit:l,reset:r}=nn();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?w1("p",{className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:"We'll email you when it's back."}):w1(Vc,{className:"-mt-1",email:a,onEmailChange:s,status:c,onResetVerdict:r,onSubmit:o,inputAriaLabel:"Email for the back-in-stock alert",submitLabel:"Notify me when back",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn px-4 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.22em] text-btn transition-colors hover:bg-btn hover:text-btn-ink disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-btn",errorMessage:"Couldn't save that \u2014 please try again."})}import{Fragment as Dt1,jsx as _c,jsxs as Ot1}from"react/jsx-runtime";function vb({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=rD(null),[i,n]=rD(!1);return Bt1(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?v0.getTyre(e).then(u=>({kind:"tyre",tyre:u})):v0.getWheel(e).then(u=>({kind:"wheel",wheel:u}))).then(u=>{h||o(u)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?_c(A4,{size:"tall",children:"Couldn\u2019t load this product."}):r?_c(Zt1,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):_c(A4,{size:"tall",children:"Loading product\u2026"})}function Zt1({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?Nn(e.tyre):Ks(e.wheel),r=vc(l,{editing:t}),o=gc();return Ot1(Dt1,{children:[_c(ma,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),_c(Bt,{item:o.item,onClose:o.close})]})}import{Fragment as Ut1,jsx as o8,jsxs as jt1}from"react/jsx-runtime";var Gt1=D3;function Eh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=$0();return o8(z2,{kinds:Gt1,type:"ProductHero",editing:e,children:c?o8(ma,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?o8(qt1,{pricePlacement:t,showVehicleFitment:a,...s}):o8(A4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function qt1({pricePlacement:e,showVehicleFitment:t,...a}){let s=z3(!0);return s?o8(Wt1,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):o8(A4,{size:"tall",children:p("Loading sample product\u2026")})}function Wt1({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=vc(e,{editing:!0}),l=gc();return jt1(Ut1,{children:[o8(ma,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),o8(Bt,{item:l.item,onClose:l.close})]})}import{jsx as Ic}from"react/jsx-runtime";function Kt1({source:e,editing:t=!1,pricePlacement:a=Xt,showVehicleFitment:s=!0,heroLayout:c=e8,imageRatio:l=t8,textAlign:r=g9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=a8,imageFit:h=s8}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return $0()||t&&M2()?Ic(Eh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Ic(vb,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Ic(A4,{size:"tall",children:p("Pick a product in the panel to fill this hero.")}):Ic(Eh,{pricePlacement:a,showVehicleFitment:s,...m})}var oD={label:"Product Hero",defaultProps:{source:null,pricePlacement:Xt,showVehicleFitment:!0,heroLayout:e8,imageRatio:t8,textAlign:g9,showSpecTable:!0,showPriceQuote:!0,galleryMode:a8,imageFit:s8},render:e=>Ic(Kt1,{source:e.source,editing:e.puck?.isEditing,pricePlacement:cB(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Jt(e.heroLayout),imageRatio:ah(e.imageRatio),textAlign:th(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:sh(e.galleryMode),imageFit:ch(e.imageFit)})};import{jsx as $t1}from"react/jsx-runtime";var iD={label:"Product",defaultProps:{code:"",finish:""},render:e=>$t1(hf,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as Yt1}from"react/jsx-runtime";var nD={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>Yt1(jB,{style:e,editing:t?.isEditing})};import{useEffect as Jt1,useRef as Qt1}from"react";import{jsx as Rc,jsxs as hD}from"react/jsx-runtime";var Xt1={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function fb({variants:e,answer:t,loading:a=!1}){return t?hD("div",{className:"mt-9",children:[Rc("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Sh(t)}),Rc("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ua(t,s.sku),l=Xt1[c];return hD("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Rc("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Rc("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Lh[c]})]},s.sku)})})]}):a?Rc("p",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.24em] text-fg-dim",children:"Checking your car\u2026"}):null}import{jsx as bb,jsxs as mD}from"react/jsx-runtime";var xb="Will it fit *your car?*",zb="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",yb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",wb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20";function Cb({num:e,title:t=xb,description:a=zb,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=I4({autoApply:!0}),{answer:h,loading:m}=Mh(r,vo(n.applied?.vehicle)),u=Qt1(i);return u.current=i,Jt1(()=>{u.current?.(h)},[h]),mD("section",{className:l?wb:yb,children:[l?null:bb(s0,{num:e,title:t,description:a,accent:!0}),bb(X3,{cascade:n.cascade}),s&&c?mD("a",{href:c,className:"mt-6 inline-block font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-accent underline-offset-4 hover:underline",children:[s," \u2192"]}):null,bb(fb,{variants:o,answer:h,loading:m})]})}import{jsx as Bc,jsxs as aa1}from"react/jsx-runtime";var ea1=["tyre"];function kb(e){return Bc(z2,{kinds:ea1,type:"TyreFitment",editing:e.editing,children:Bc(ta1,{...e})})}function ta1({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=$0(),i=z3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?aa1("section",{className:l?wb:yb,children:[l?null:Bc(s0,{num:e,title:t||xb,description:a||zb,accent:!0}),Bc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The vehicle question appears here on a tyre product page, with one verdict per size.")})]}):null:Bc(Cb,{num:e,title:t||void 0,description:a||void 0,escapeText:s,escapeHref:c,omitHead:l,slug:h.slug,variants:h.variants})}import{jsx as sa1}from"react/jsx-runtime";var pD={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=a1(e.escapeText),c=a1(e.escapeHref);return sa1(kb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as i8,jsxs as gD}from"react/jsx-runtime";var uD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",dD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20",ca1=[],la1=["tyre"];function Mb(e){return i8(z2,{kinds:la1,type:"TyreSizes",editing:e.editing,children:i8(ra1,{...e})})}function ra1({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=$0(),r=z3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:i8(s0,{num:e?M(e):void 0,title:Y(t||"Available *sizes.*",!1),description:M(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?gD("section",{className:c?dD:uD,children:[n,i8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("This product\u2019s sizes appear here on a product page.")})]}):null;let h=i.some(m=>!m.image);return gD("section",{className:c?dD:uD,children:[n,i8(oa1,{variants:i,fieldUsage:l?.fieldUsage??ca1}),i8(s5,{text:h?uo:""})]})}function oa1({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=d0();return i8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>i8(uc,{fieldUsage:t,size:c.size,specs:c.specs,prices:c.prices,image:c.image,inStock:c.inStock,currency:a,formatPrice:s},c.sku))})}import{jsx as ia1}from"react/jsx-runtime";var vD={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ia1(Mb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var fD={AlloyWheelsListing:f_,BrandStrip:RB,BundleOffer:GB,CartBlock:YB,CatalogFilterBar:nZ,CheckoutCTA:I_,CollectionCard:mZ,Collections:G_,CompatibleTyres:xI,CountrySwitchBlock:pZ,DeliveryOptions:CI,DetailRows:RI,EuTyreLabel:uZ,FitmentFinder:WI,FitmentTable:mR,Gallery:xR,GalleryB:HR,GalleryItem:dZ,Header:TZ,ProductGrid:$R,ProductHero:oD,ProductRef:iD,RelatedProducts:dB,SearchBlock:nD,SpecTable:FB,TyreFitment:pD,TyreSizes:vD};var na1={AlloyWheelsListing:z_,BrandStrip:M_,BundleOffer:S_,CartBlock:L_,CatalogFilterBar:N_,CheckoutCTA:R_,CollectionCard:D_,Collections:W_,CompatibleTyres:zI,CountrySwitchBlock:yI,DeliveryOptions:MI,DetailRows:ZI,EuTyreLabel:DI,FitmentFinder:UI,FitmentTable:pR,Gallery:wR,GalleryB:FR,GalleryItem:RR,Header:BR,ProductGrid:XR,ProductHero:oB,ProductRef:uB,RelatedProducts:gB,SearchBlock:vB,SpecTable:PB,TyreFitment:EB,TyreSizes:VB},G0=et(fD,na1);import{jsx as x4,jsxs as Vh}from"react/jsx-runtime";function Lb(e={}){let t=gC();return x4(UL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:x4(ha1,{...e})})}var bD="mx-auto max-w-[var(--sf-site-width,1600px)] px-[min(24px,var(--sf-site-gutter,40px))] py-16 min-[800px]:px-[var(--sf-site-gutter,40px)] min-[800px]:py-[88px]",Sb="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function ha1({eyebrow:e,heading:t,intro:a,buttonLabel:s,successMessage:c,boxes:l,inBoxes:r=!1}){let{fieldPrefix:o,editing:i,services:n,currency:h,serviceId:m,setServiceId:u,requiresPayment:d,date:v,earliestDate:g,setDate:b,setDateTouched:f,availability:w,loadingSlots:z,noSlotsMessage:k,selectedStart:S,setSelectedStart:H,customerTimezone:I,name:P,setName:D,email:E,setEmail:F,phone:_,setPhone:Z,notes:G,setNotes:V,confirmation:j,submitting:N,error:Q,canSubmit:W,handleSubmit:U,sample:i1}=C7(),y1=i1?x4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:p("Example form \u2014 add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")})}):null,K=n===void 0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?p("Add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")}):"Appointments are not available right now."}):null;return r&&l?x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,j?x4(l,{className:`${Sb} items-start`}):Vh("form",{onSubmit:U,children:[x4(l,{className:`${Sb} items-start`}),K]})]})}):x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,x4(Do,{eyebrow:e,heading:t,intro:a}),j?x4(qo,{successMessage:c}):K||Vh("form",{onSubmit:U,className:Sb,children:[x4(Oo,{}),x4(Go,{buttonLabel:s})]})]})})}import{jsx as ma1}from"react/jsx-runtime";var Ab={boxes:{type:"slot",allow:["BookingBox"]}},xD={label:"Booking Form",fields:Ab,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>ma1(Lb,{eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var zD={fields:{_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message"),boxes:Ab.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{eyebrow:a,heading:s,intro:c,buttonLabel:l,successMessage:r,...o}=t;return o}};var yD={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Wo.map(e=>[Uo[e],g1(Hu[e],Ke(Hu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Wo.map(r=>Uo[r]),l=r=>Object.fromEntries(Object.entries(s).filter(([o])=>o.startsWith("_")||c.includes(o)||r.includes(o)));return l(a==="head"?["eyebrow","heading","intro"]:a==="details"?["buttonLabel"]:a==="confirm"?["successMessage"]:[])}};import{EyeIcon as pa1,LinkIcon as wD,EyeOffIcon as ua1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var CD={fields:{_gTop:x("Routing groups"),routingNumber:T("Section number",f0.routingNumber),routingTagline:T("Eyebrow",f0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:q("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:q("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||p("Group")},_gForm:x("Message form"),formSlug:E5(),formNumber:T("Section number",f0.formNumber),formHeading:O("Heading",f0.formHeading),metaItems:T2("Meta lines",Zc(c4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:x("\u201COther\u201D reason"),showOther:l1("Show \u201COther\u201D reason",f0.showOther,Zc(pa1,{})),otherLabel:q("\u201COther\u201D chip label",f0.otherLabel),otherNoteTitle:T("\u201COther\u201D note title",f0.otherNoteTitle),otherNoteBody:O("\u201COther\u201D note body",f0.otherNoteBody),_gSubmit:x("Submit button"),buttonText:q("Submit button",f0.buttonText),consent:O("Consent line",f0.consent),_gChannels:x("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:q("Label"),value:q("Value"),href:e3(q("Link")),sub:q("Sub line"),groupId:g1("Link to group",Zc(wD,{}),[{label:"\u2014 Not linked \u2014",value:""},...f0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:l1("Hidden",!1,Zc(ua1,{}))},getItemSummary:e=>{let t=e?.label||e?.value||p("Channel");return e?.hidden?p("{name} \xB7 hidden",{name:t}):t}}},resolveData:e=>{let t=e.props.groups??[];if(!t.some(c=>!c?.id))return e;let a=new Set,s=t.map((c,l)=>{if(c?.id)return a.add(c.id),c;let r=Ou(c?.title)||`group-${l+1}`;for(;a.has(r);)r=`${r}-${l+1}`;return a.add(r),{...c,id:r}});return{...e,props:{...e.props,groups:s}}},resolveFields:(e,{fields:t})=>{let a=e.props.groups??[],s=[{label:"\u2014 Not linked \u2014",value:""},...a.map((r,o)=>({label:r?.title||r?.eyebrow||p("Group {n}",{n:o+1}),value:r?.id||Ou(r?.title)||`group-${o+1}`}))],c=t,l=c.channels;return l?.type==="array"&&l.arrayFields&&(c.channels={...l,arrayFields:{...l.arrayFields,groupId:g1("Link to group",Zc(wD,{}),s,"")}}),t}};import{useEffect as da1,useRef as ga1,useState as va1}from"react";import{jsx as MD,jsxs as ya1}from"react/jsx-runtime";var fa1=12,Nh=null,kD=null;function ba1(e=!1){let t=i2();if((e||kD!==t)&&(Nh=null),!Nh){let a=R3();kD=t,Nh=J1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return Nh}function xa1(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"2-digit"})}function za1(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?A9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:xa1(e.published_at)||void 0}}function b9({value:e,onChange:t,snapshotCount:a=fa1}){let[s,c]=va1("idle"),l=Array.isArray(e),r=l?e.length:0,o=ga1(!0),i=m=>{c("loading"),ba1(m).then(u=>{if(!o.current)return;if(u===null){c("error");return}c("idle");let d=u.slice(0,a).map(za1);b6(d,e??null)&&t(d)})};da1(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=p("Storefront \u2192 Blog"),h=s==="loading"?p("Syncing from {place}\u2026",{place:n}):s==="error"?p("Couldn\u2019t reach {place}.",{place:n}):l?p3("Auto-synced from {place} \xB7 {n} post","Auto-synced from {place} \xB7 {n} posts",r,{place:n}):p("Linking to {place}\u2026",{place:n});return ya1("div",{children:[MD(Ol,{label:"Blog posts"}),MD(E4,{status:s,statusText:h,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:p("Auto-refreshes from the most-recent visible posts each time you open the editor. Set how many appear with \u201CPosts to display\u201D.")})]})}import{useState as wa1}from"react";import{jsx as _0,jsxs as n8}from"react/jsx-runtime";var SD=3,HD="featured",_h="tabs",FD="portrait",pa="spread",Ih="count",TD=[{label:"Even grid",value:"even"},{label:"Featured first",value:HD},{label:"Tabs",value:_h},{label:"Photo cards",value:FD},{label:"Staggered spread",value:pa},{label:"Count",value:Ih}],Ca1=[FD,pa],PD="even",Z6={min:2,max:11,step:1,fallback:7,unit:"of 12"},ka1="bottom-left",Ma1=55,Sa1="bottom";function La1(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(Z6.max,Math.max(Z6.min,Math.round(t))):Z6.fallback;return`${a}fr ${12-a}fr`}var LD={1:"grid-cols-1",2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"},AD={2:"grid-cols-2",3:"grid-cols-3 max-[800px]:grid-cols-2",4:"grid-cols-4 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-2"},Aa1="Find by name",Ha1="Nobody by that name.";function Fa1(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function Ta1({card:e,scaffold:t,lower:a=!1}){return n8(r0,{href:e.href||"#",className:`sf-card group relative isolate flex aspect-[3/4] overflow-hidden bg-surface${a?" min-[801px]:mt-16":""}`,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,children:[_0("div",{className:"absolute inset-0 transition-transform duration-700 group-hover:scale-[1.03] motion-reduce:transition-none motion-reduce:group-hover:scale-100",children:_0(k0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),_0("div",{"aria-hidden":!0,className:"absolute inset-0 z-0",style:{background:"linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--bg) 88%, transparent) 100%)"}}),e.meta&&_0("span",{className:"absolute left-3 top-3 z-[1] rounded-[var(--sf-button-radius,999px)] bg-bg/85 px-2.5 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-accent",children:M(e.meta)}),n8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[_0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:Y(e.title,!1)}),e.dateLabel&&_0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:M(e.dateLabel)}),e.excerpt&&_0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:M(e.excerpt)})]})]})}function Pa1({cards:e,scaffold:t}){return _0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:_0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return _0("li",{children:n8(r0,{href:a.href||"#","aria-current":c?"page":void 0,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,className:`flex flex-col gap-0.5 rounded-[var(--sf-button-radius,999px)] border px-5 py-2.5 transition-colors ${c?"border-accent bg-accent text-accent-ink":"border-line text-fg hover:border-accent hover:text-accent"}`,children:[_0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:Y(a.title,!1)}),a.excerpt&&_0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:M(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function Ea1({count:e,words:t,href:a}){let s=n8("span",{className:"inline-flex items-baseline gap-3",children:[_0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&_0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?_0(r0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var Va1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",Na1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-0 max-[800px]:pb-[70px]",_a1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[32px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[24px]";function Hb({num:e,title:t,link:a,posts:s,columns:c,limit:l,showAll:r=!1,editing:o=!1,cardImage:i,gap:n,layout:h,featuredWidth:m,listCover:u=!0,featuredDarken:d,omitHead:v=!1,sample:g,nameFilter:b=!1}){let[f,w]=wa1(""),z=s??[],k=r?z.length:typeof l=="number"&&l>0?l:SD,S=z.slice(0,k),H=o&&S.length===0;if(S.length===0&&!o)return null;let I=r?SD:k,P=H?g?.length?g.slice(0,r?g.length:I):Array.from({length:I},(N,Q)=>({slug:`placeholder-${Q}`,title:p("Blog post title"),excerpt:p("A short summary of the post appears here."),cover:"",meta:p("Journal"),dateLabel:p("Date")})):S,D=B3("Events",n,"both"),E=h===HD&&P.length>1,F=La1(m),_=h===_h,Z=h===Ih,G=Ca1.includes(h??""),V=b&&!_&&!Z&&!E,j=V?P.filter(N=>Fa1(N.title,f)):P;return Z?_0("section",{className:_a1,children:_0(Ea1,{count:P.length,words:v||t===void 0?void 0:Y(t,!1),href:v?void 0:a?.href})}):n8("section",{className:v?Na1:Va1,style:J2(i),children:[v?null:_0(s0,{num:e!==void 0?M(e):void 0,title:t!==void 0?Y(t,!1):void 0,link:a?{text:M(a.text),href:a.href}:void 0}),V&&n8("div",{className:"mb-6 flex flex-col gap-2",children:[n8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[_0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Aa1}),_0("input",{type:"search",value:f,onChange:N=>w(N.target.value),autoComplete:"off",className:"rounded-[var(--sf-button-radius,6px)] border border-line bg-bg px-4 py-2.5 text-[length:var(--size-body,15px)] text-fg outline-none focus:border-accent"})]}),j.length===0&&_0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:Ha1})]}),_?_0(Pa1,{cards:P,scaffold:H}):G?_0("div",{className:`sf-card-grid grid${D.className} ${h===pa?"grid-cols-3 max-[800px]:grid-cols-2":AD[Math.min(4,Math.max(2,c??3))]??AD[3]}`,style:D.style,children:j.map((N,Q)=>_0(Ta1,{card:N,scaffold:H,lower:h===pa&&Q%3===1},`${N.slug}-${Q}`))}):E?n8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${D.className}`,style:{...D.style,"--sf-events-split":F},children:[_0(dt,{post:P[0],href:P[0].href,scaffold:H,layout:"cover",darken:d??Ma1,darkenStyle:Sa1,placement:ka1},`${P[0].slug}-0`),_0("div",{className:`grid auto-rows-min${D.className}`,style:D.style,children:P.slice(1).map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H,showCover:u},`${N.slug}-${Q+1}`))})]}):_0("div",{className:`sf-card-grid grid${D.className} ${LD[Math.min(4,Math.max(1,c??3))]??LD[3]}`,style:D.style,children:j.map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H},`${N.slug}-${Q}`))})]})}import{LayoutIcon as Ba1,ColumnsIcon as Za1,WidthIcon as Da1,ImageIcon as Oa1,OpacityIcon as Ga1,ListIcon as qa1,HashIcon as Wa1,SearchIcon as Ua1}from"efficient-easel/icons";import{jsx as Ra1}from"react/jsx-runtime";var x9={num:A.sectionNumber,title:"Section title",link:A.viewAll},Ia1=()=>[{key:"sample-1",title:p("First card"),excerpt:p("A line about it appears here.")},{key:"sample-2",title:p("Second card"),excerpt:p("A line about it appears here.")},{key:"sample-3",title:p("Third card"),excerpt:p("A line about it appears here.")},{key:"sample-4",title:p("Fourth card"),excerpt:p("A line about it appears here.")}],ED=(e,t)=>({slug:e.key||`card-${t}`,title:e.title??"",excerpt:e.excerpt??"",cover:e.cover??"",meta:e.meta||void 0,dateLabel:e.dateLabel||void 0,href:e.href||"#"}),VD={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,x9.link,e.puck),l=G8(e)!==""?Li(e,!!e.puck?.isEditing,Ia1()):null,r=l?l.sample?[]:l.rows.map(ED):e.posts;return Ra1(Hb,{num:a(y(e.num,x9.num,e.puck)),title:a(y(e.title,x9.title,e.puck)),link:a(s?{text:s,href:a1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(ED):void 0,columns:e.columns,limit:e.limit,showAll:e.showAll,layout:e.layout,featuredWidth:e.featuredWidth,listCover:e.listCover,featuredDarken:e.featuredDarken,cardImage:e.cardImage,gap:e.gap,nameFilter:e.nameFilter===!0,editing:e.puck?.isEditing})}};import{jsx as h8}from"react/jsx-runtime";var ja1=50,ND={fields:{_gContent:x("Content"),num:T("Number",x9.num),title:O("Heading",x9.title),linkText:T("Button",x9.link),linkHref:H1("Link"),dataSource:Ai("Cards from","Blog posts"),_gPosts:x("Blog posts"),posts:c2(b9,{snapshotCount:ja1}),_gLayout:x("Layout"),layout:g1("Arrangement",h8(Ba1,{}),TD,PD),columns:s1("Columns",h8(Za1,{}),2,4,1,3),featuredWidth:s1("Featured width",h8(Da1,{}),Z6.min,Z6.max,Z6.step,Z6.fallback,Z6.unit),listCover:l1("Show cover image on the smaller cards",!0,h8(Oa1,{})),featuredDarken:s1("Darken",h8(Ga1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:l1("Filter by name",!1,h8(Ua1,{})),gap:Z3("Events"),showAll:l1("Show all blog posts",!1,h8(qa1,{})),limit:s1("Posts to display",h8(Wa1,{}),1,20,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...Hi("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>G1(W1(o,a,U1),e.props.headPlacement,Z1.Events.headRows);if(s.showAll&&delete l.limit,s.layout==="featured")delete l.columns;else for(let o of["featuredWidth","listCover","featuredDarken"])delete l[o];if(s.layout===_h||s.layout===Ih)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===pa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as Rh}from"react/jsx-runtime";import{SettingsDefaultReset as Ka1,SettingsField as $a1,SettingsSegmented as Ya1}from"efficient-easel/panel";import{WidthIcon as Xa1}from"efficient-easel/icons";function Bh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e,n=p(s);return Rh($a1,{label:n,labelId:c,icon:Rh(Xa1,{}),value:o?l:void 0,changed:!o,action:Rh(Ka1,{words:wy()?.panel,label:n,changed:!o,onReset:()=>a(void 0)}),hint:r,children:Rh(Ya1,{options:[{label:p(gm.page),id:"content"},{label:p(gm.full),id:"full"}],value:i,ariaLabel:n,onChange:a})})}import{SettingsField as Ja1,SettingsSwitch as Qa1}from"efficient-easel/panel";import{BlockColumnIcon as es1}from"efficient-easel/icons";import{Fragment as ts1,jsx as Dc}from"react/jsx-runtime";function Fb({value:e,onChange:t}){let a=C5(),s={...q9,...e},c=s[a];return Dc(Ja1,{label:p("Logo fills its column"),icon:Dc(es1,{}),action:Dc(Qa1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its column on {view}",{view:p(w5[a])})}),hint:Dc(ts1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Dc("strong",{children:p(w5[a])})})})})}import{SettingsField as as1,SettingsSwitch as ss1}from"efficient-easel/panel";import{FullWidthIcon as cs1}from"efficient-easel/icons";import{Fragment as ls1,jsx as Oc}from"react/jsx-runtime";function Tb({value:e,onChange:t}){let a=C5(),s={...W9,...e},c=s[a];return Oc(as1,{label:p("Logo fills its row"),icon:Oc(cs1,{}),action:Oc(ss1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its row on {view}",{view:p(w5[a])})}),hint:Oc(ls1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Oc("strong",{children:p(w5[a])})})})})}import{jsx as rs1}from"react/jsx-runtime";function Pb({value:e,onChange:t}){return rs1(Zs,{label:"Columns per line",unit:p("columns"),steps:_y,value:_l(e),onChange:t})}import{useContext as os1,useEffect as is1,useRef as ns1,useState as ID}from"react";import{jsx as ua,jsxs as _D}from"react/jsx-runtime";function Gc(){let e=UB();return _D("div",{className:"flex flex-wrap justify-between gap-x-6 gap-y-3 border-t border-line pt-6 font-mono text-[13px] uppercase tracking-[0.15em] text-fg-dim max-[800px]:flex-col max-[800px]:gap-3",children:[ua("span",{children:e}),_D("span",{className:"flex flex-wrap items-center gap-3",children:[ua("span",{children:"Privacy"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Terms"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Cookies"})]})]})}import{jsx as Eb,jsxs as ps1}from"react/jsx-runtime";var RD={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},hs1={1:"min-[720px]:grid-cols-1",2:"min-[720px]:grid-cols-2",3:"min-[720px]:grid-cols-3",4:"min-[720px]:grid-cols-4",5:"min-[720px]:grid-cols-5",6:"min-[720px]:grid-cols-6"},ms1={1:"min-[1100px]:grid-cols-1",2:"min-[1100px]:grid-cols-2",3:"min-[1100px]:grid-cols-3",4:"min-[1100px]:grid-cols-4",5:"min-[1100px]:grid-cols-5",6:"min-[1100px]:grid-cols-6"};function Vb({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=os1(wa),{desktop:o,tablet:i,mobile:n}=_l(s),{desktop:h,tablet:m,mobile:u}={...q9,...c},{desktop:d,tablet:v,mobile:g}={...W9,...l},b=C5(),w=t?RD[b==="desktop"?o:b==="tablet"?i:n]:`${RD[n]} ${hs1[i]} ${ms1[o]}`,z=ns1(null),[k,S]=ID(1),[H,I]=ID(!1);if(is1(()=>{if(!t&&!r)return;let D=z.current;if(!D)return;let E=()=>{let j=D.querySelector(".footer-block-grid");if(!j)return;let N=t?b:Vw(window.innerWidth),Q=N==="desktop"?d:N==="tablet"?v:g;I(Q);let W=N==="desktop"?h:N==="tablet"?m:u,U=getComputedStyle(j).gridTemplateColumns.split(" ").filter(Boolean).length-1,i1=Math.max(j.childElementCount-1,0);S(!Q&&W&&U>=1?Math.max(Math.ceil(i1/U),1):1)},F,_=()=>{clearTimeout(F),F=setTimeout(E,0)},Z=[0,80,250,600].map(j=>setTimeout(E,j)),G=new MutationObserver(_);G.observe(D,{childList:!0,subtree:!0});let V=new ResizeObserver(_);return V.observe(D),()=>{clearTimeout(F),Z.forEach(clearTimeout),G.disconnect(),V.disconnect()}},[o,i,n,t,r,b,h,m,u,d,v,g]),!t&&!r)return null;let P=wl(Cl(a))??void 0;return Eb("footer",{ref:z,className:"border-t border-line bg-bg px-[var(--sf-site-gutter,40px)] pb-10 pt-20 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-14",style:{"--footer-logo-rows":k,"--footer-logo-col":H?"1 / -1":"1"},children:ps1("div",{style:P,children:[Eb(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${w}`,minEmptyHeight:160}),Eb(Gc,{})]})})}import{jsx as us1}from"react/jsx-runtime";var Nb={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},BD={label:"Footer",fields:Nb,defaultProps:{columns:Iy,logoFill:q9,logoRowFill:W9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>us1(Vb,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as Zh}from"react/jsx-runtime";var ZD={fields:{_gLayout:x("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>Zh(Bh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the page"),hint:p("Whether the footer's blocks sit on the page's column, or run edge to edge. The background always spans the screen."),onChange:a=>t(a)})},columns:{type:"custom",render:({value:e,onChange:t})=>Zh(Pb,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Fb,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Tb,{value:e,onChange:t})},_gBlocks:x("Blocks"),blockList:N5("Footer"),blocks:Nb.blocks}};import{WeightIcon as ds1,WidthIcon as gs1,PhoneIcon as vs1}from"efficient-easel/icons";import{jsx as _b}from"react/jsx-runtime";var DD={fields:{_gStyle:x("Style"),thickness:s1("Thickness",_b(ds1,{}),1,8,1,1,"px"),lengthPct:s1("Length",_b(gs1,{}),10,100,1,100,"%"),hideOnMobile:l1("Hide on mobile",!1,_b(vs1,{}))}};var OD={fields:{_gContent:x("Content"),heading:E1("Heading","Join our email list"),placeholder:q("Field placeholder","Email address"),buttonLabel:q("Button","Subscribe")}};import{AlignLeftIcon as xs1}from"efficient-easel/icons";import{jsx as GD}from"react/jsx-runtime";var fs1={start:"items-start",center:"items-center",end:"items-end"};function Ib({direction:e="vertical",gap:t,align:a="start",content:s}){let c=B3("FooterGroup",t,e==="horizontal"?"inline":"block");return GD("div",{className:"min-w-0",children:GD(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${fs1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as bs1}from"react/jsx-runtime";var Rb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},qD={label:"Footer Box",fields:Rb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>bs1(Ib,{direction:e,gap:t,align:a,content:s})};import{jsx as zs1}from"react/jsx-runtime";var WD={fields:{_gLayout:x("Layout"),direction:v1("Direction",Zl("`Direction` names how a container's children run \u2014 a MODIFIER, not a thing. doc/naming.md N10.1 gives the idea a dash in its Glyph column; editor-shell's own `direction` meaning says the bare row is CORRECT and not an omission (SS seat, 2026-09-11)."),[{label:"Vertical",value:"vertical"},{label:"Horizontal",value:"horizontal"}],"vertical"),gap:Z3("FooterGroup"),align:v1("Alignment",zs1(xs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:x("Blocks"),blockList:N5("FooterGroup"),blocks:Rb.blocks}};import{WidthIcon as ys1,AlignLeftIcon as ws1,LogoIcon as Cs1,PaddingTopIcon as ks1,PaddingRightIcon as Ms1,PaddingBottomIcon as Ss1,PaddingLeftIcon as Ls1}from"efficient-easel/icons";import{jsx as z9}from"react/jsx-runtime";var UD={fields:{_gContent:x("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:x("Style"),widthPct:s1("Width",z9(ys1,{}),40,400,1,100,"%"),align:v1("Alignment",z9(ws1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:v1("Logo color",z9(Cs1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:s1("Padding top",z9(ks1,{}),0,120,2,0,"px"),padRight:s1("Padding right",z9(Ms1,{}),0,120,2,0,"px"),padBottom:s1("Padding bottom",z9(Ss1,{}),0,120,2,0,"px"),padLeft:s1("Padding left",z9(Ls1,{}),0,120,2,0,"px")}};import{Button as As1}from"efficient-shell/ui";import{SettingsField as Hs1}from"efficient-easel/panel";import{FieldSelect as Fs1}from"efficient-easel/fields";import{MenuIcon as Ts1}from"efficient-easel/icons";import{useCallback as Ps1,useEffect as jD,useState as Bb}from"react";import{jsx as y9,jsxs as KD}from"react/jsx-runtime";function Zb({value:e,onChange:t}){let[a,s]=Bb(null),[c,l]=Bb(!1),r=Ps1(f=>{s(f),l(!0)},[]);jD(()=>{let f=!1;return Hp(R3()).then(w=>{f||r(w)}).catch(()=>{f||s([])}),()=>{f=!0}},[r]),jD(()=>{let f=!1,w=tS(()=>{bM(R3()).then(z=>{f||r(z)}).catch(()=>{})});return()=>{f=!0,w()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Kr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Kr(a??[],e)?.id??"",u=f=>t({id:f.id,handle:f.handle,name:f.name,items:f.items.map(w=>({label:w.label,url:w.url}))}),d=f=>{if(!f){t(null);return}let w=(a??[]).find(z=>z.id===f);w&&u(w)},[v,g]=Bb(!1),b=()=>{i&&(g(!0),Hp(R3(),!0).then(f=>{r(f);let w=Kr(f,e);w&&u(w)}).catch(()=>{}).finally(()=>g(!1)))};return KD("div",{children:[y9(Hs1,{label:p("Menu"),icon:y9(Ts1,{}),hint:!o&&a&&a.length===0?p("Create menus in {place}, then pick one here.",{place:p("Storefront \u2192 Menus")}):void 0,children:y9(Fs1,{value:m,ariaLabel:p("Menu"),onChange:d,readOnly:o||(a?.length??0)===0,options:[{label:o?p("Loading menus\u2026"):a&&a.length===0?p("No menus found"):p("Select a menu\u2026"),value:""},...(a??[]).map(f=>({label:`${f.name} (${f.item_count??f.items.length})`,value:f.id}))]})}),h?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:nM()}):null,n?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:hM(e?.name??p("The linked menu"))}):null,i&&!n?KD("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[y9("p",{className:"text-[12px] text-fg-dim",children:p3("Linked to \u201C{name}\u201D \u2014 {n} link. Re-pull after editing the menu:","Linked to \u201C{name}\u201D \u2014 {n} links. Re-pull after editing the menu:",e?.items?.length??0,{name:e?.name??""})}),y9(As1,{variant:"link",size:"sm",className:"shrink-0",onClick:b,disabled:v,children:v?p("Updating\u2026"):p("Update links")})]}):null]})}import{PhoneIcon as Es1,LineBetweenIcon as Vs1}from"efficient-easel/icons";import{jsx as Db}from"react/jsx-runtime";var $D={fields:{_gContent:x("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>Db(Zb,{value:e,onChange:t})},heading:q("Heading","Column heading"),_gStyle:x("Style"),accordionMobile:l1("Show as accordion on mobile",!1,Db(Es1,{})),showDividers:l1("Dividers between links",!1,Db(Vs1,{}))}};import{jsx as qc}from"react/jsx-runtime";var YD={small:16,medium:20,large:24},Ob=0,Gb=32,JD=2,Wc=0,XD={start:"justify-start",center:"justify-center",end:"justify-end"};function qb({iconStyle:e=oe,iconSize:t="medium",align:a="start",gap:s=Wc,editing:c=!1}){let l=qB(),r=Cw(ww(l));if(r.length===0)return c?qc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("Add your social links")}):null;let o=YD[t]??YD.medium,n={gap:Math.min(Gb,Math.max(Ob,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return qc("ul",{"data-social-block":"","aria-label":"Social media",className:`flex list-none flex-wrap p-0 [margin:calc((44px-var(--social-mark))/-2)] max-[800px]:[margin:calc((40px-var(--social-mark))/-2)] ${XD[a]??XD.start}`,style:n,children:r.map(({platform:h,href:m,label:u})=>qc("li",{children:qc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${u} (opens in a new tab)`,className:"grid h-11 w-11 place-items-center rounded text-fg transition-colors hover:text-accent focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-[-4px] focus-visible:outline-current motion-reduce:transition-none max-[800px]:h-10 max-[800px]:w-10",children:qc(_w,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as Ns1}from"efficient-shell/ui";import{Fragment as _s1,jsx as Wb,jsxs as Is1}from"react/jsx-runtime";function Ub(){let{openPanel:e}=sr();return Is1(_s1,{children:[Wb(Ol,{label:"Social links"}),Wb("p",{className:"es-field-hint sf-hint-keep",children:p("The links are typed once for the whole website, in Site settings.")}),Wb(Ns1,{variant:"link",size:"sm",onClick:e,children:p("Edit social links \u2192")})]})}import{StylesIcon as Rs1,TextSizeIcon as Bs1,AlignLeftIcon as Zs1,GapIcon as Ds1}from"efficient-easel/icons";import{jsx as Uc}from"react/jsx-runtime";var QD={fields:{_gStyle:x("Style"),iconStyle:v1("Icon style",Uc(Rs1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],oe),iconSize:v1("Icon size",Uc(Bs1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Uc(Ub,{})},_gLayout:x("Layout"),align:v1("Alignment",Uc(Zs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:s1("Gap",Uc(Ds1,{}),Ob,Gb,JD,Wc,"px")}};import{TextSizeIcon as Os1}from"efficient-easel/icons";import{jsx as Gs1}from"react/jsx-runtime";var eO={fields:{_gContent:x("Content"),text:E1("Body","Footer text"),_gStyle:x("Style"),size:v1("Size",Gs1(Os1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:_o()}};var tO={fields:{_gForm:x("Form"),formSlug:E5(),_gContent:x("Content"),heading:q("Heading override"),intro:E1("Intro"),submitText:q("Submit button"),finePrint:q("Fine print")}};var aO={fields:{}};var Dh="e.g. D00123 \xB7 blank = the whole store";import{useState as m8}from"react";import{Fragment as Us1,jsx as h3,jsxs as jc}from"react/jsx-runtime";var Oh="w-full border-2 border-line bg-bg px-4 py-3.5 font-display text-[17px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent",qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",Ws1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function jb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=m8(""),[o,i]=m8(""),[n,h]=m8(0),[m,u]=m8(""),[d,v]=m8(""),[g,b]=m8(!1),[f,w]=m8(!1),[z,k]=m8(null);async function S(H){if(H.preventDefault(),!(c||g)){if(n<1){k("Choose a star rating.");return}b(!0),k(null);try{await v0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:d.trim(),...a?.trim()?{designCode:a.trim()}:{}}),w(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{b(!1)}}}return h3("section",{className:"relative z-[2] border-t border-line bg-surface",children:jc("div",{className:s?Ws1:qs1,children:[s?null:jc(Us1,{children:[(e??"").trim()&&h3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&h3("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)})]}),f?h3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:"Thanks \u2014 your review will appear once approved."}):jc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:S,children:[jc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[h3(Z2,{label:"Name",required:!0,children:h3("input",{type:"text",required:!0,value:l,onChange:H=>r(H.target.value),className:Oh})}),h3(Z2,{label:"Email \u2014 never shown publicly",children:h3("input",{type:"email",value:o,onChange:H=>i(H.target.value),className:Oh})})]}),jc("div",{className:"flex flex-col gap-2",children:[h3(w8,{required:!0,children:"Rating"}),h3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(H=>h3("button",{type:"button","aria-pressed":n>=H,"aria-label":`${H} star${H===1?"":"s"}`,onClick:()=>{h(H),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=H?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},H))})]}),h3(Z2,{label:"Review title (optional)",children:h3("input",{type:"text",value:m,onChange:H=>u(H.target.value),className:Oh})}),h3(Z2,{label:"Your review",required:!0,children:h3("textarea",{required:!0,rows:5,value:d,onChange:H=>v(H.target.value),className:Oh+" resize-y"})}),z&&h3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:z}),h3("button",{type:c?"button":"submit",disabled:g,className:"cursor-pointer self-start bg-btn px-8 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:g?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as js1}from"react/jsx-runtime";var Kc={eyebrow:"Your turn",title:"Leave a *review.*"},sO={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return js1(jb,{eyebrow:a(y(e.eyebrow,Kc.eyebrow,e.puck)),title:a(y(e.title,Kc.title,e.puck)),omitHead:t,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var cO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",Kc.eyebrow),title:O("Heading",Kc.title),_gSource:x("Reviews"),designCode:e3(q("Design code",Dh))},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.ReviewForm.headRows)};import{StylesIcon as sc1,HashIcon as cc1,ColumnsIcon as lc1}from"efficient-easel/icons";import{useEffect as Ks1,useState as $s1}from"react";function lO(e,t){let[a,s]=$s1(null);return Ks1(()=>{let c=!1;return s(null),v0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as tc1,jsx as O4,jsxs as Gh}from"react/jsx-runtime";var Ys1=()=>[{id:"sample-review-1",authorName:p("Sample reviewer"),rating:5,title:p("Sample review title"),body:p("Approved customer reviews appear here automatically \u2014 this card is only a preview of the section's shape."),designCode:"",createdAt:""},{id:"sample-review-2",authorName:p("Sample reviewer"),rating:4,title:"",body:p("Reviews are collected by the Review Form section and wait for your approval before they show."),designCode:"",createdAt:""},{id:"sample-review-3",authorName:p("Sample reviewer"),rating:5,title:p("Another sample"),body:p("Set a product design code on this section to show one product's reviews; leave it blank for the whole store."),designCode:"",createdAt:""}];function Xs1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function Js1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return O4("div",{role:"img","aria-label":`${t} out of 5 stars`,className:"flex gap-1 text-[length:var(--size-body,17px)] leading-none",children:Array.from({length:5}).map((a,s)=>O4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",ec1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function Kb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=lO(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=!(i&&i.length>0)&&o,m=i&&i.length>0?i:h?Ys1():[];return!o&&m.length===0?null:O4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Gh("div",{className:r?ec1:Qs1,children:[r?null:Gh(tc1,{children:[(t??"").trim()&&O4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&O4("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),O4("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--rv-cols),minmax(0,1fr))]",style:{"--rv-cols":String(n)},children:m.map(u=>Gh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",h?"opacity-60":""].join(" "),children:[O4(Js1,{rating:u.rating}),u.title.trim()&&O4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:u.title}),O4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:z0(u.body).map((d,v)=>O4("p",{className:v?"mt-3":"",children:d},v))}),Gh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:u.authorName}),O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Xs1(u.createdAt)})]})]},u.id))})]})})}import{jsx as ac1}from"react/jsx-runtime";var $c={eyebrow:"Reviews",title:"From our *customers.*"},rO={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ac1(Kb,{look:o4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,$c.eyebrow,e.puck)),title:a(y(e.title,$c.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as $b}from"react/jsx-runtime";var oO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",$c.eyebrow),eyebrowLook:g1("Eyebrow style",$b(sc1,{}),[...k4],l7("Reviews")),title:O("Heading",$c.title),_gSource:x("Reviews"),limit:s1("Reviews to display",$b(cc1,{}),3,12,1,6),designCode:e3(q("Design code",Dh)),_gStyle:x("Style"),columns:s1("Columns",$b(lc1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Reviews.headRows)};import{FullWidthIcon as ic1}from"efficient-easel/icons";import{jsx as Yb,jsxs as rc1}from"react/jsx-runtime";function Yc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=rc1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":wZ(c),"data-header-menu-row":CZ(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?Yb("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?p("Site header \u2014 above every page"):p("Site footer \u2014 below every page")}):null,Yb(t,{minEmptyHeight:120})]});return e==="header"?Yb(uM,{children:o}):o}import{jsx as oc1}from"react/jsx-runtime";var Xb={sections:{type:"slot"}},iO={label:"Site Footer",fields:Xb,render:({sections:e,fullWidth:t,puck:a})=>oc1(Yc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as nc1}from"react/jsx-runtime";var nO={fields:{fullWidth:l1("Full width",!1,nc1(ic1,{})),sections:Xb.sections}};import{CaseIcon as mc1,ContrastIcon as pc1,FullWidthIcon as uc1,HeightIcon as dc1,LayoutIcon as gc1,StickyIcon as vc1}from"efficient-easel/icons";import{jsx as hc1}from"react/jsx-runtime";var Jb={sections:{type:"slot"}},hO={label:"Site Header",fields:Jb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>hc1(Yc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as da}from"react/jsx-runtime";var{sectionAccent:fc1}=X9(e=>eb(e)??zZ,"Follow the site theme"),mO={fields:{heightPx:s1("Height",da(dc1,{}),k5.min,k5.max,2,k5.default,"px"),fullWidth:l1("Full width",!1,da(uc1,{})),sectionAccent:fc1,topTextColor:v1("Text color at the top",da(pc1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:v1("Letters",da(mc1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:v1("Menu row",da(gc1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:v1("Sticky header",da(vc1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:Jb.sections}};import{jsx as qh,jsxs as bc1}from"react/jsx-runtime";var w0={eyebrow:"Section number",title:"Show *us yours.*",body:"Tell people what they get for submitting, and what you do with what they send.",buttonText:"Submit \u2192",consent:"By submitting, you agree to our privacy policy. We never share contact details with third parties."};function Xc(e,t){return e===void 0?t:e}function Qb({eyebrow:e,title:t,body:a,buttonText:s,consent:c,formSlug:l,form:r,editing:o=!1,boxes:i,inBoxes:n=!1,...h}){let m=Xc(e,w0.eyebrow),u=Xc(t,w0.title),d=Xc(a,w0.body),v=Xc(s,w0.buttonText),g=Xc(c,w0.consent),b=H5(l,r),f=v7({form:b,formSlug:l,editing:o}),w=b===void 0,z=!!b||o;return!z&&!m&&!u&&!d?null:n&&i?qh("section",{className:E0(h)?"border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:qh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):bc1("section",{className:E0(h)?"grid grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:[qh(lA,{eyebrow:m,title:u}),qh(jo,{body:d,buttonLabel:v,consent:g,form:b,submission:f,showForm:z,resolving:w,editing:o})]})}var pO={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Ko.map(e=>[$o[e],g1(Eu[e],Ke(Eu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),formSlug:E5(),buttonText:T("Button",w0.buttonText),consent:O("Consent line",w0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Ko.map(n=>$o[n]),o=a==="head"?c:l,i={};for(let[n,h]of Object.entries(s)){if(n.startsWith("_")){i[n]=h;continue}if(r.includes(n)){a!=="head"&&(i[n]=h);continue}o.includes(n)&&(i[n]=h)}return i}};import{jsx as xc1}from"react/jsx-runtime";var ex={boxes:{type:"slot",allow:["SubmitBox"]}},uO={label:"Photo Submission Form",fields:ex,defaultProps:{eyebrow:w0.eyebrow,title:w0.title,body:w0.body,formSlug:"",buttonText:w0.buttonText,consent:w0.consent},render:e=>xc1(Qb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var dO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),_gForm:x("Form"),formSlug:E5(),_gButton:x("Button"),buttonText:T("Button",w0.buttonText),_gFootnote:x("Footnote"),consent:O("Consent line",w0.consent),boxes:ex.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{_gContent:a,eyebrow:s,title:c,body:l,_gForm:r,formSlug:o,_gButton:i,buttonText:n,_gFootnote:h,consent:m,...u}=t;return u}};var zc1=["issues","posts"],gO=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],tx="issues";function ax(e){return zc1.includes(e)?e:tx}var yc1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function vO(e,t){let a=ax(t),s={...e};for(let[c,l]of Object.entries(yc1))l.includes(a)||delete s[c];return s}import{CategoryIcon as Cc1,HashIcon as kc1}from"efficient-easel/icons";var I0={headNum:A.sectionNumber,headTitle:A.headingAccent,headDesc:"A short description of your newsletter or publication.",kicker:"\u2192 Newsletter",leadTitle:"Get it in the *inbox.*",intro:"Tell readers what they get and how often. One email, straight to the inbox. We will never sell your address.",emailPlaceholder:"your@email.com",submitText:"Subscribe \u2192",subscribedText:"Subscribed \u2713",finePrint:"Approx. 1 email per week \xB7 Unsubscribe in one click",issuesHeading:"Recent issues",archiveText:"View the full archive \u2192",archiveHref:u2.href},fO=()=>["N\xB0 04","N\xB0 03","N\xB0 02","N\xB0 01"].map(e=>({n:e,title:p("Issue title"),small:p("Short description"),date:p("Month YYYY")}));function wc1(e){return e.map((t,a)=>({n:`N\xB0 ${String(e.length-a).padStart(2,"0")}`,title:t.title,small:t.meta,date:t.dateLabel}))}function Wh(e,t){if(e==="issues")return C1(t.issues,fO(),t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?wc1(a.slice(0,s)):[];return C1(c,fO(),t.puck)}import{jsx as bO}from"react/jsx-runtime";var xO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",I0.headNum),headTitle:O("Heading",I0.headTitle),headDesc:O("Body",I0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",I0.kicker),leadTitle:O("Heading",I0.leadTitle),intro:O("Intro",I0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",I0.emailPlaceholder),submitText:q("Submit button",I0.submitText),subscribedText:q("Subscribed button",I0.subscribedText),finePrint:O("Fine print",I0.finePrint),_sRight:Y1("Recent issues"),_gRightCopy:x("Content"),contentType:v1("Type",bO(Cc1,{}),[...gO],tx),issuesHeading:T("Panel heading",I0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:f1("Number"),title:f1("Title"),small:f1("Sub-line"),date:f1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||p("Issue")},_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",bO(kc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",I0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>vO(t,e.props.contentType)};import{HashIcon as Ac1}from"efficient-easel/icons";import{useState as Mc1}from"react";import{jsx as Q3,jsxs as w9}from"react/jsx-runtime";var Sc1="That didn't go through \u2014 please try again.";function Jc({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,archiveText:u,archiveHref:d,source:v=G3.subscribeSection,editing:g=!1,...b}){let[f,w]=Mc1(""),{status:z,submit:k}=ro({source:v,dryRun:g}),S=z==="sent",H=z==="sending",I=z==="error"||z==="invalid",P=(m??[]).filter(_=>(_?.n??"").trim()||(_?.title??"").trim()||(_?.date??"").trim()),D=P.length>0,E=S?i||"Subscribed \u2713":H?"Sending\u2026":o||"Subscribe \u2192";function F(_){_.preventDefault(),!S&&k({email:f})}return w9("section",{className:E0(b)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",children:[Q3(D2,{num:e,title:t?Y(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),w9("div",{className:D?"grid min-h-[460px] grid-cols-[1.1fr_1fr] border border-line max-[1100px]:grid-cols-1":"grid min-h-[460px] grid-cols-1 border border-line",children:[w9("div",{className:D?"flex flex-col justify-center gap-6 border-r border-line px-14 py-16 max-[1100px]:border-r-0 max-[1100px]:border-b max-[1100px]:px-7 max-[1100px]:py-12":"flex flex-col justify-center gap-6 px-14 py-16 max-[1100px]:px-7 max-[1100px]:py-12",children:[s&&Q3(V1,{text:s}),c&&Q3("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.035em]",children:Y(c,!0)}),l&&Q3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:M(l,!0)}),w9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:F,children:[Q3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:f,onChange:_=>w(_.target.value),disabled:S,className:"flex-1 border border-r-0 border-line bg-bg px-5 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.18em] text-fg placeholder:text-fg-dim outline-none focus:border-accent"}),Q3("button",{type:"submit",disabled:S||H,className:"border border-btn bg-btn px-7 py-[18px] font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-default disabled:opacity-90",children:R0(E)})]}),I&&Q3("p",{role:"alert",className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-alert",children:Sc1}),n&&Q3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:M(n)})]}),D&&w9("div",{id:"sub-recent-issues",className:"grid grid-rows-[auto_1fr_auto] gap-6 bg-[var(--journal-panel-bg)] px-11 py-12 scroll-mt-[160px] max-[1100px]:px-7 max-[1100px]:py-9",children:[h&&Q3(V1,{text:h,size:12}),Q3("div",{className:"flex flex-col",children:P.map((_,Z)=>w9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",Z===0?"border-t border-line":""].join(" "),children:[Q3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:_.n?M(_.n):""}),w9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[_.title?M(_.title):"",_.small?.trim()&&Q3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:M(_.small,!0)})]}),Q3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:_.date?M(_.date):""})]},Z))}),u&&Q3(r0,{href:d||"/journal",className:"flex items-center justify-end gap-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-accent hover:text-fg",children:M(u)})]})]})]})}import{jsx as Lc1}from"react/jsx-runtime";var Y0={...I0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},zO={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=Wh("posts",e);return Lc1(Jc,{headNum:y(e.headNum,Y0.headNum,e.puck),headTitle:y(e.headTitle,Y0.headTitle,e.puck),headDesc:y(e.headDesc,Y0.headDesc,e.puck),kicker:y(e.kicker,Y0.kicker,e.puck),leadTitle:y(e.leadTitle,Y0.leadTitle,e.puck),intro:y(e.intro,Y0.intro,e.puck),emailPlaceholder:a1(e.emailPlaceholder)||Y0.emailPlaceholder,submitText:a1(e.submitText)||Y0.submitText,subscribedText:a1(e.subscribedText)||Y0.subscribedText,finePrint:y(e.finePrint,Y0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,Y0.issuesHeading,e.puck),issues:t,source:G3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,Y0.archiveText,e.puck),archiveHref:a1(e.archiveHref)||Y0.archiveHref})}};import{jsx as Hc1}from"react/jsx-runtime";var yO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",Y0.headNum),headTitle:O("Heading",Y0.headTitle),headDesc:O("Body",Y0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",Y0.kicker),leadTitle:O("Heading",Y0.leadTitle),intro:O("Intro",Y0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",Y0.emailPlaceholder),submitText:q("Submit button",Y0.submitText),subscribedText:q("Subscribed button",Y0.subscribedText),finePrint:O("Fine print",Y0.finePrint),_sRight:Y1("Recent posts"),_gRightCopy:x("Content"),issuesHeading:T("Panel heading",Y0.issuesHeading),_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",Hc1(Ac1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",Y0.archiveText),archiveHref:H1("Archive link")}};import{jsx as Fc1}from"react/jsx-runtime";var wO={label:"Booking box",defaultProps:{},render:e=>Fc1(Fu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as sx,useState as cx}from"react";import{Fragment as Tc1,jsx as H0,jsxs as k3}from"react/jsx-runtime";var CO="border-b border-line bg-transparent py-3.5 font-display text-[length:var(--size-body,18px)] tracking-[0.01em] text-fg outline-none transition-colors focus:border-accent";function lx({routingNumber:e,routingTagline:t,groups:a,formNumber:s,formHeading:c,metaLines:l,showOther:r=!0,otherLabel:o="Other",otherNoteTitle:i,otherNoteBody:n,buttonText:h,consent:m,channels:u,formSlug:d,form:v,editing:g,initialActiveId:b,onActiveChange:f,reasonExtras:w,...z}){let k=[...a.map(U=>U.id),...r?[P8]:[]],S=b&&k.includes(b)?b:k[0]??P8,[H,I]=cx(S);sx(()=>{k.includes(H)||I(k[0]??P8)},[k.join("|")]),sx(()=>{b&&k.includes(b)&&I(b)},[b]);let P=U=>{I(U),E(null),f?.(U)},[D,E]=cx(null),F=(u??[]).filter(U=>!U.hidden),_=F.find(U=>U.groupId===H)?.value??null,Z=D??_,G=H5(d,v),V=v7({form:G,formSlug:d,editing:g}),j=G===void 0,N=!!G||!!g,[Q,W]=cx(!1);return sx(()=>{let U=()=>W(document.documentElement.getAttribute("data-theme")==="light");U();let i1=new MutationObserver(U);return i1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>i1.disconnect()},[]),k3(Tc1,{children:[k3("section",{className:E0(z)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:Q?void 0:{background:"var(--section-bg)"},children:[(e||t)&&k3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&H0(V1,{text:e}),t&&H0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:M(t)})]}),H0("div",{className:"sf-card grid grid-cols-4 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:a.map(U=>{let i1=H===U.id;return k3("button",{type:"button",onClick:()=>{P(U.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:n6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",i1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[U.eyebrow&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:U.eyebrow}),H0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:U.title}),U.copy&&H0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:U.copy}),U.response&&k3("div",{className:"mt-2 flex justify-between border-t border-line pt-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:[H0("span",{children:"Response"}),H0("strong",{className:"font-normal text-fg",children:U.response})]})]},U.id)})})]}),(N||F.length>0)&&k3("section",{id:"contact-form",className:["mx-auto grid max-w-[var(--sf-site-width,1600px)] scroll-mt-[80px] gap-20 border-b border-line px-[var(--sf-site-gutter,40px)] py-20 max-[1100px]:grid-cols-1 max-[1100px]:gap-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",N&&F.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[N&&k3("div",{children:[k3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[k3("div",{children:[s&&H0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:M(s)}),c&&H0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,4vw,56px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(c,!0)})]}),!!(l&&l.length)&&H0("div",{className:"text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.8] tracking-[0.22em] text-fg-dim max-[700px]:text-left",children:l.map((U,i1)=>H0("div",{children:U},i1))})]}),G?V.done?H0("div",{className:"border border-accent bg-accent/[0.08] p-8 font-display text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:Ze(G,"Thanks \u2014 we've received your message.")}):k3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:V.handleSubmit,children:[G.fields.map(U=>H0(Z2,{label:U.label,required:U.required,className:U.type==="textarea"||U.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:H0(f7,{field:U,value:V.valueOf(U.key),onChange:i1=>V.set(U.key,i1),className:U.type==="textarea"?`${CO} min-h-[140px] resize-y leading-[1.5]`:U.type==="checkbox"?"size-4 self-start accent-accent":CO})},U.key)),k3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[H0(w8,{required:!0,children:"Reason"}),k3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(U=>{let i1=H===U.id;return H0("button",{type:"button",onClick:()=>P(U.id),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",i1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:U.title},U.id)}),r&&H0("button",{type:"button",onClick:()=>P(P8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",H===P8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:R0(o)})]})]}),w?.(H),H===P8&&(i||n)&&k3("div",{className:"sf-card col-span-2 flex flex-col gap-2 border border-line bg-bg/40 p-5 max-[700px]:col-span-1",children:[i&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(i)}),n&&z0(n).map((U,i1)=>H0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:M(U)},i1))]}),H0(De,{value:V.honeypot,onChange:V.setHoneypot}),V.error&&H0("p",{role:"alert",className:"col-span-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-alert max-[700px]:col-span-1",children:V.error}),k3("div",{className:"col-span-2 mt-5 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-6 max-[700px]:col-span-1 max-[700px]:flex-col max-[700px]:items-stretch",children:[m&&H0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:M(m)}),H0("button",{type:g?"button":"submit",disabled:V.submitting,className:"cursor-pointer bg-btn px-8 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-wait disabled:opacity-60 max-[700px]:w-full",children:V.submitting?"Sending\u2026":h?R0(h):"Send Message \u2192"})]})]}):H0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:j?p("Loading form\u2026"):p("Choose a form in the inspector, under Message form \u2014 until then this column is hidden on the live page and no message can be sent.")})]}),F.length>0&&H0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:F.map((U,i1)=>{let y1=Z===U.value,c1=!!!U.groupId;return k3("div",{onClick:c1?()=>E(U.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",c1?"cursor-pointer border-t-2 border-t-accent":"",y1?"border-l-accent pl-6":c1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:y1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[y1&&k3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),H0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),H0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",y1?"text-fg":"text-accent"].join(" "),children:U.label}),c1?H0("a",{href:U.href,onClick:b1=>b1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",y1?"text-accent":"text-fg"].join(" "),children:U.value}):H0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",y1?"text-accent":"text-fg"].join(" "),children:U.value}),U.sub&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:U.sub})]},`${U.value}-${i1}`)})})]})]})}import{jsx as Pc1}from"react/jsx-runtime";var kO={label:"Contact Form",defaultProps:{routingNumber:f0.routingNumber,routingTagline:f0.routingTagline,groups:f0.groups,formSlug:"",formNumber:f0.formNumber,formHeading:f0.formHeading,metaItems:f0.metaLines.map(e=>({text:e})),showOther:f0.showOther,otherLabel:f0.otherLabel,otherNoteTitle:f0.otherNoteTitle,otherNoteBody:f0.otherNoteBody,buttonText:f0.buttonText,consent:f0.consent,channels:f0.channels},render:e=>Pc1(lx,{routingNumber:y(e.routingNumber,f0.routingNumber,e.puck),routingTagline:y(e.routingTagline,f0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,f0.formNumber,e.puck),formHeading:y(e.formHeading,f0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:a1(e.otherLabel)||f0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,f0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,f0.otherNoteBody,e.puck),buttonText:a1(e.buttonText)||f0.buttonText,consent:y(e.consent,f0.consent,e.puck),channels:e.channels??[],formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as MO}from"react/jsx-runtime";function rx({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return MO("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:MO("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as Ec1}from"react/jsx-runtime";var SO={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>Ec1(rx,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as Vc1}from"react";import{jsx as ox,jsxs as LO}from"react/jsx-runtime";function ix({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=Up(),[c,l]=Vc1("");return LO("div",{className:"w-full min-w-0",children:[e?ox("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:Y(e,!1)}):null,LO("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:G3.footerSignup})},children:[ox("input",{type:"email",placeholder:t,value:c,onChange:r=>l(r.target.value),className:"w-0 min-w-[7rem] flex-1 border border-line bg-transparent px-3 py-2 text-[13px] text-fg placeholder:text-fg-dim/70 focus:border-accent focus:outline-none","aria-label":p2(e??"")||"Email address"}),ox("button",{type:"submit",className:"shrink-0 border border-btn bg-btn px-4 py-2 text-[13px] font-medium text-btn-ink transition-opacity hover:opacity-90",children:R0(a)})]})]})}import{jsx as Nc1}from"react/jsx-runtime";var AO={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>Nc1(ix,{heading:$4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as Uh,jsxs as Ic1}from"react/jsx-runtime";var _c1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function nx({tagline:e,widthPct:t=100,align:a="left",reverse:s=!0,padTop:c=0,padRight:l=0,padBottom:r=0,padLeft:o=0,editing:i=!1}){let{src:n,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d}=Ll(),v=Math.round(m7*(t/100)),g={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return Ic1("div",{className:`flex min-w-0 flex-col ${_c1[a]} [container-type:inline-size]`,style:g,children:[Uh(L1,{href:"/","aria-label":d?`${d} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:Uh(xe,{variant:"footer",sizePx:v,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d,fitWordmarkToContainer:!0,fitFloorPx:OC})}),e?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:M(e)}):i?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:p("Add a short brand tagline \u2192")}):null]})}import{jsx as Rc1}from"react/jsx-runtime";var HO={label:"Logo",defaultProps:{widthPct:100,align:"left",reverse:"auto",padTop:0,padRight:0,padBottom:0,padLeft:0},render:({tagline:e,widthPct:t,align:a,reverse:s,padTop:c,padRight:l,padBottom:r,padLeft:o,puck:i})=>Rc1(nx,{tagline:e||void 0,widthPct:t,align:a,reverse:s!=="off",padTop:c,padRight:l,padBottom:r,padLeft:o,editing:i?.isEditing})};import{jsx as Bc1}from"react/jsx-runtime";var FO={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>Bc1(Ra,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as Zc1}from"react/jsx-runtime";var TO={label:"Social Logos",defaultProps:{iconStyle:oe,iconSize:"medium",align:"start",gap:Wc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>Zc1(qb,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as Oc1}from"react/jsx-runtime";var Dc1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function hx({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?p("Add a line of footer text."):"");return c?Oc1("p",{className:`${Dc1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:M(c)}):null}import{jsx as Gc1}from"react/jsx-runtime";var PO={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>Gc1(hx,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as qc1}from"react/jsx-runtime";var EO={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>qc1(Bp,{formSlug:a1(e.formSlug)||void 0,heading:a1(e.heading)||void 0,intro:a1(e.intro)||void 0,submitText:a1(e.submitText)||void 0,finePrint:a1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as Wc1}from"react/jsx-runtime";var VO={label:"Legal Line",render:()=>Wc1(Gc,{})};import{jsx as Uc1}from"react/jsx-runtime";var NO={label:"Submit box",defaultProps:{},render:e=>Uc1(Vu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as jc1}from"react/jsx-runtime";var _O={label:"Subscribe Form",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",issues:[],archiveText:"",archiveHref:""},render:({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,contentType:u,posts:d,limit:v,archiveText:g,archiveHref:b,puck:f})=>jc1(Jc,{headNum:y(e,I0.headNum,f),headTitle:y(t,I0.headTitle,f),headDesc:y(a,I0.headDesc,f),kicker:y(s,I0.kicker,f),leadTitle:y(c,I0.leadTitle,f),intro:y(l,I0.intro,f),emailPlaceholder:a1(r)||I0.emailPlaceholder,submitText:a1(o)||I0.submitText,subscribedText:a1(i)||I0.subscribedText,finePrint:y(n,I0.finePrint,f),issuesHeading:y(h,I0.issuesHeading,f),issues:Wh(ax(u),{issues:m,posts:d,limit:v,puck:f}),source:G3.subscribeSection,editing:f?.isEditing,archiveText:y(g,I0.archiveText,f),archiveHref:a1(b)||I0.archiveHref})};var IO={AppointmentBooking:xD,BookingBox:wO,ContactRouting:kO,Events:VD,Footer:BD,FooterDivider:SO,FooterEmailSignup:AO,FooterGroup:qD,FooterLogo:HO,FooterMenu:FO,FooterSocial:TO,FooterText:PO,Form:EO,LegalLineBlock:VO,ReviewForm:sO,Reviews:rO,[F9]:iO,[H9]:hO,SubmitBox:NO,SubmitBuild:uO,Subscribe:_O,SubscribeBlogs:zO};var Kc1={AppointmentBooking:zD,BookingBox:yD,ContactRouting:CD,Events:ND,Footer:ZD,FooterDivider:DD,FooterEmailSignup:OD,FooterGroup:WD,FooterLogo:UD,FooterMenu:$D,FooterSocial:QD,FooterText:eO,Form:tO,LegalLineBlock:aO,ReviewForm:cO,Reviews:oO,[F9]:nO,[H9]:mO,SubmitBox:pO,SubmitBuild:dO,Subscribe:xO,SubscribeBlogs:yO},h2=et(IO,Kc1);import{jsx as O6,jsxs as DO}from"react/jsx-runtime";var mx=e=>e==="sentence"?"none":void 0,D6=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Qc=e=>typeof e=="string"&&e?e:void 0,$c1=["font","color","size","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function jh(e){let t={};for(let a of $c1)e[a]!==void 0&&(t[a]=e[a]);return t}function Yc1(e){let t=e.fonts,a=e.sizes,s=e.typography,c=Oz(e.compression),l=(o,i)=>({id:`heading-${o}`,kind:"heading",name:`Heading ${o}`,values:jh(i)}),r=(o,i={})=>({id:`body-${o}`,kind:"body",name:`Body ${o}`,values:jh(i)});return[l(1,{font:Qc(t.heading),size:D6(a.headingLarge),weight:D6(s.weight),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case),largestSize:D6(s.maxPx)}),l(2,{font:Qc(t.heading2),size:D6(a.headingMedium),weight:D6(s.weight2),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case2)}),l(3,{font:Qc(t.heading3),size:D6(a.headingSmall),weight:D6(s.weight3),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case3)}),r(1,{font:Qc(t.body),size:D6(a.body)}),r(2),r(3),r(4),r(5,{font:Qc(t.label),size:D6(a.label)})]}function RO(e){return Array.isArray(e)&&e.every(t=>t&&typeof t=="object"&&typeof t.id=="string"&&(t.kind==="heading"||t.kind==="body")&&typeof t.name=="string")?e.map(t=>({...t,values:jh(t.values??{})})):null}function BO(e){return RO(e)??[]}function Dm0(e,t){let a=Yc1(t),s=RO(e);return s?s.map(c=>({...c,values:jh({...Xc1(a,c.id),...c.values})})):a}var Xc1=(e,t)=>e.find(a=>a.id===t)?.values??{};function Om0(e,t){let a=u=>e.find(d=>d.id===u)?.values??{},s=a("heading-1"),c=a("heading-2"),l=a("heading-3"),r=a("body-1"),o=a("body-5"),i=t.fonts,n=t.sizes,h=t.typography,m=u=>u==="none"?"sentence":"authored";return{fonts:{...i,heading:s.font??i.heading,heading2:c.font??s.font??i.heading2,heading3:l.font??s.font??i.heading3,body:r.font??i.body,label:o.font??i.label},sizes:{...n,headingLarge:s.size??null,headingMedium:c.size??null,headingSmall:l.size??null,body:r.size??null,label:o.size??null},compression:t.compression,typography:{...h,case:m(s.letterCase),weight:s.weight??null,maxPx:s.largestSize??null,weight2:c.weight??null,weight3:l.weight??null,case2:m(c.letterCase),case3:m(l.letterCase)}}}function Jc1(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}function Qc1(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":/^#[0-9a-f]{6}$/i.test(e)?e:null}function el1(e){let t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function ZO(e){let t=[];for(let a of e){let s=a.values,c=`.${Jc1(a)}`,l=[],r=s.font!==void 0?zz.find(n=>n.key===s.font)?.cssVar:void 0;if(r&&l.push(`font-family: var(${r})`),s.size!==void 0){let n=s.largestSize!==void 0?Math.min(s.size,s.largestSize):s.size;l.push(`font-size: ${n}px`)}let o=s.color!==void 0?Qc1(s.color):null;o&&l.push(`color: ${o}`),s.italic===!0&&l.push("font-style: italic"),s.weight!==void 0&&l.push(`font-weight: ${s.weight}`);let i=[];s.lineHeight!==void 0&&i.push(`line-height: ${s.lineHeight}`),s.letterSpacing!==void 0&&i.push(`letter-spacing: ${s.letterSpacing}em`),a.kind==="body"&&l.push(...i),s.letterCase!==void 0&&l.push(`text-transform: ${s.letterCase==="upper"?"uppercase":s.letterCase==="lower"?"lowercase":"none"}`),s.paragraphSpacing&&l.push(`--sf-part-para: ${s.paragraphSpacing}px`),l.length&&t.push(`${c} { ${l.join("; ")} }`),a.kind==="heading"&&i.length&&t.push(`${c}, ${c}:is(h1, h2, h3, h4) { ${i.join("; ")} }`),s.paragraphSpacing&&t.push(...el1(c))}return t.join(`
154
+ `)}import{useEasel as tl1}from"efficient-easel/easel";var al1="color-mix(in oklab, var(--bg) 40%, #ffffff)",sl1="12vh";function cl1({style:e,frameClass:t,children:a}){let{appState:s}=tl1(d=>d),c=s.data.content,l=s.data.root;if(aC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:al1,minHeight:"100vh",paddingBottom:sl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?lC(l,c):null,i=o?{[cC]:o}:null,n=cy(l?.widthChoice),h=n?{[sy]:n}:null,m=r?null:MZ(c),u=m?{[yh]:m}:null;return O6("div",{className:`sf-themed-content${r?` ${nr}`:""}${t?` ${t}`:""}`,style:e,...u,...i,...h,children:O6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function OO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function px({w:e,children:t}){let{frameClass:a,style:s}=OO(e);return O6("div",{className:a,style:s,children:t})}function ux({propsTheme:e,propsFonts:t,propsCornerStyle:a,propsCornerRadiusPx:s,propsHeadingCompression:c,propsHeadingTypography:l,widthMode:r,fullWidth:o,pageWidth:i,pageBackground:n,chromeInheritsSiteBackground:h,suppressPreviewNav:m,footer:u,overlay:d,children:v}){let{theme:g,fonts:b,sizes:f,cornerRadiusPx:w,cardShadow:z,shadowColor:k,cardGap:S,hoverEffect:H,headingCompression:I,siteWidth:P,siteGutter:D,blockGap:E,headingTypography:F,heroBackgroundFollowsWidth:_,photographyGrayscale:Z,textStyles:G,themeFromDocument:V}=I3(),j=V?e:g,N=V?t:b,Q=V?void 0:f,W=V?s===void 0?Nz[Vz(a)]:_z(s):w,U=V?c:I,i1=ZO(BO(V?void 0:G)),y1=V?l:F,K=OO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Gz(y1),...K.style,...h?{}:ym(n)};return DO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...pm(W),...$z(pm(W)),...Zz(V?void 0:z,V?void 0:k,V?void 0:H),...Xz(V?void 0:P),...Jz(V?void 0:D),...qy(V?void 0:E),...ay(V?void 0:_)},"data-sf-headings":Dz(U),"data-sf-card-shadow":V?void 0:Iz(z),"data-sf-card-gap":V?void 0:Rz(S),"data-sf-card-hover":V?void 0:Bz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,DO(ZT,{grayscale:V?void 0:Z,children:[O6(cl1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var dx=e=>{e.target?.closest?.("a")&&e.preventDefault()};function GO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:ym(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(px,{w:a,children:s})})}import{jsx as vx}from"react/jsx-runtime";import{ListIcon as ll1,PaddingTopIcon as rl1}from"efficient-easel/icons";function ol1(){return{type:"custom",render:({value:e,onChange:t})=>vx(Bh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the site"),hint:p("Whether this page sits on the site's content column, or runs edge to edge."),onChange:a=>t(a)})}}var il1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],UO={pageBackground:nw(),topSpace:g1("Top space",vx(rl1,{}),il1,sC),widthChoice:ol1()},nl1="Record type",gx=new Map,qO=-1;function hl1(e){qO!==pp()&&(gx.clear(),qO=pp());let t=mp(),a=t.some(c=>c.key===e)?"":e,s=gx.get(a);return s||(s=g1(nl1,vx(ll1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),gx.set(a,s)),s}var WO=new WeakMap;function jO(e,t){if(!M2()||mp().length<2||Rr in e)return e;let a=hl1(Br(t)),s=WO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return WO.set(e,{row:a,fields:c}),c}function ml1(e,t){let a=wm(t),s=a?a.inner:t;if(om(s))return!1;if(s?.type==="slot")return!0;let c=Ay(s);return c==="always"?!1:c==="authored-copy"?Mz(e):!0}function KO(e){let t=wm(e),a=t?t.inner:e,s=om(a);return s?Xy(a)?0:s.level:null}function pl1(e,t,a){return a?t===0&&e===Em.Design||t===1&&e===uw.Content:!1}var ul1=new WeakMap,dl1=new WeakMap;function Kh(e,t="section"){let a=t==="page"?dl1:ul1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:KO(u),draws:ml1(m,u)||t==="page"&&KO(u)===null&&nm(m,u)})),l=t==="section"&&c.some(m=>nm(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let u=c[m].level;if(u===null)continue;let d=0;for(let v=m+1;v<c.length;v++){let g=c[v].level;if(g!==null&&g<=u)break;c[v].draws&&(d+=1)}d===0&&!pl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&bw(e),i=o&&!(Em.Design in e);if(!r.size&&!i)return a.set(e,e),e;let n={};for(let m of c)r.has(m.key)||(n[m.key]=m.field);let h=re(o?fw(n):n);return a.set(e,h),h}var $O={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as gl1}from"react/jsx-runtime";var YO={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},fx=new Set(Object.keys(Z1)),XO={name:"openSlotDisallow",applies:()=>!0,panel(e,t,a,s){let c=s.contentSectionKeys;if(e?.fields)for(let l of Object.values(e.fields)){let r=l;if(r.type!=="slot"||r.allow)continue;let o=t==="Flex"?c.filter(i=>!fx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var vl1=Array.from(new Set([...Ox.map(e=>e.type),...fx,...rl,"GalleryItem"])),JO={name:"cellWidth",applies:(e,t,a)=>vl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.cellWidthFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=Pi(r.appState,l.props?.id);if(i===void 0||bz(i))return o;let n={...o};for(let h of Object.keys(s()))delete n[h];return n}},draw(e){let t=e.render;e.render=a=>{let s=vz(a.gridSpan),c=t(a);return s==null?c:gl1("div",{className:"sf-grid-cell",[fz]:String(s),children:c})}}};import{jsx as QO}from"react/jsx-runtime";var eG={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=E9(c);return c.puck?.isEditing?QO(pH,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?QO(Wz,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as tG}from"react/jsx-runtime";var aG={name:"sectionCorners",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.sectionShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=yl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=E0(a)?`sf-section-corners ${jz}`:"sf-section-corners";return s?tG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},fl1=["CollectionCard"],sG={name:"cardCorners",applies:(e,t,a)=>fl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.cardShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=Kz(a.cardCorners,a.cardCornerSides),c=t(a);return s?tG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var cG={name:"emptyHeadings",applies:()=>!0,panel(e,t,a){let s=a.dropEmptyHeadings,c=e.resolveFields;e.resolveFields=c?(l,r)=>{let o=c(l,r);return o instanceof Promise?o.then(i=>s(i??r.fields)):s(o??r.fields)}:(l,r)=>s(r.fields)}};var lG={name:"hiddenNodes",applies:(e,t,a)=>typeof a?.render=="function",draw(e){let t=e.render;e.render=a=>a._hidden?null:t(a)}};import{jsx as rG,Fragment as bl1,jsxs as xl1}from"react/jsx-runtime";function zl1({anchor:e}){let t=fm(typeof e=="string"?e:"");return t?rG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var oG={name:"sectionAnchor",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.anchorFields;e.fields={...e.fields,...s()}},draw(e){e.defaultProps={...e.defaultProps,anchor:""};let t=e.render;e.render=a=>xl1(bl1,{children:[rG(zl1,{anchor:a.anchor}),t(a)]})}};import{jsx as Cl1}from"react/jsx-runtime";import{jsx as yl1}from"react/jsx-runtime";import{useEffect as wl1,useRef as iG}from"react";function nG({motion:e,editing:t,children:a}){let s=iG(null),c=iG(e);return wl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,py(l);return}return my(l)}},[e,t]),yl1("div",{ref:s,[hy]:e,children:a})}var hG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!uy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.sectionAnimationFields;e.fields={...e.fields,...s()}},draw(e){let t=e,a=t.render;t.render=s=>{let c=ny(s.sectionAnimation);return c?Cl1(nG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as kl1}from"react/jsx-runtime";var uG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!gy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.heightFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=l?.props??{},n=dy(i),h=vy(i)?fy(i):null;return o&&typeof o.then=="function"?o.then(m=>pG(mG(m,n),h)):pG(mG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=by(a);return s?kl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function mG(e,t){if(!e||!("sectionHeightMode"in e))return e;let a={...e};if(t.mode==="auto")return delete a.sectionHeightValue,delete a.sectionHeightUnit,a;t.mode==="screen"&&delete a.sectionHeightUnit;let s=a.sectionHeightValue;return s&&(a.sectionHeightValue={...s,unit:t.unit}),a}function pG(e,t){if(!e||!("sectionHeightModePhone"in e))return e;let a={...e};if(!t||t.mode==="auto")return delete a.sectionHeightValuePhone,delete a.sectionHeightUnitPhone,a;t.mode==="screen"&&delete a.sectionHeightUnitPhone;let s=a.sectionHeightValuePhone;return s&&(a.sectionHeightValuePhone={...s,unit:t.unit}),a}import{jsx as Ml1}from"react/jsx-runtime";var dG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!oy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=xm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=xm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Ml1("div",{className:l.className,style:l.style,children:r}):r}}},gG={name:"slideTheme",applies:e=>e==="HeroSlide",panel(e,t,a){let{sectionThemeFields:s,BLOCK_THEME_FOLLOW_LABEL:c}=a;e?.fields&&(e.fields={...e.fields,...s(f5,c)})}};var Sl1=new Set(["Reviews","Cards","FAQ","Prose","ProductHero","SpecTable","ProductGrid","ParagraphsA","KeyFeatures","Stats","StatsParagraph","Chart","Mockup","Testimonials","Logos","ContactRouting","ContactLocations","SubmitBuild","ReviewForm","Form","AppointmentBooking","OrderSummary","DeliveryOptions","PaymentBadges","CheckoutCTA","Collections","AlloyWheelsListing","CatalogFilterBar","FitmentFinder","GalleryB","BrandStrip","DocMasthead","DocBody","DocMetaCards","Masthead","FeaturedCover","LongRead","Series","Events","SectionHeader","Grid","Flex","Spacer","Divider","CustomHTML","Breadcrumb","CategoryBar","DocTabs","Hero","HeroSingle","IntroBleed","Manifesto","Timeline","TimelineTrack","Footprint","Banner","TitleWithButtons","Ticker","SubscribeBlogs","TyreSizes","TyreFitment","EuTyreLabel","SpecStrip","ProcessSteps","DetailRows","FitmentTable","CompatibleTyres","RelatedProducts","BundleOffer","Split","Gallery","Subscribe","Countdown"]),vG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Sl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ll1=new Set(["HeroSlide","Heading","Text","ImageBlock","ButtonBlock","HeroGroup","GalleryItem","Footer","FooterLogo","FooterMenu","FooterGroup","FooterText","PostCard","LogoBlock","CollectionCard","Eyebrow","BookingBox","SubmitBox","FooterSocial","MenuBlock","SocialLogosBlock","EmailFormBlock","SearchBlock","CartBlock"]),fG={name:"blockGroups",applies:e=>Ll1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Al1=["Form","Stats"];function bx(e,t){let a=new Set(e),s=Bx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Al1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Hl1=[YO,XO,LL,aG,sG,AL,JO,wT,CT,kT,MT,uG,oG,dG,hG,gG,vG,fG,cG,eG,lG,$O];function bG(e,t,a){let s=t;for(let c of Hl1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var xG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:ew,cellWidthFields:lw,widthField:z5,heightFields:rw,anchorFields:ow,sectionThemeFields:X9,sectionAnimationFields:Qy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:Kh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:ky};function zG(e){let t={...bx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:xG};for(let[l,r]of Object.entries(e.components))bG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>Kh(jO(l,r?.props),"page");return a.resolveFields=s?(l,r)=>{let o=s(l,r);return o instanceof Promise?o.then(i=>c(i??r.fields,l)):c(o??r.fields,l)}:(l,r)=>c(r.fields,l),t}import{Fragment as Xl1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Bl1="Newsletter (built in)";var Id0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Zl1=sm(()=>import("./PreviewFooter-DZH6K7FC.js")),Dl1=sm(()=>import("./render-client-7WYSJEJX.js")),Ol1={padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"};function Gl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Qk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(ux,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Ol1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let g=v?e:m,b=v?t:u,f=n.content??[],w=n.root,z=Sa(f)&&hr(w,f);return ga("div",{className:"sf-theme-accent",style:{...ul(b),...vl(g),...fl(g),...bl(g)},onClickCapture:o,children:[ga("div",{style:{position:"relative"},children:[n0("div",{className:z?nr:void 0,style:{...za(g),...zl(v?void 0:d),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:n0(Dl1,{data:n})}),n0("button",{type:"button",onClick:()=>h(),title:p("Click the page to go back"),"aria-label":p("Go back to the page"),style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),n0("div",{className:"sf-theme-surfaces",style:{...za(g),...xl(g)},children:n0(px,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Fm,ql1={formSlug:E5(void 0,Bl1),_gLeft:x("Left panel"),metaLabel:q("Meta label",F0.metaLabel),issueLabel:q("Issue label",F0.issueLabel),issueNumber:q("Issue number",F0.issueNumber),kicker:q("Eyebrow",F0.kicker),heading:E1("Heading",F0.heading),deck:E1("Deck",F0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:q("Label"),value:q("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:x("Right panel \xB7 form"),formLabel:q("Section label",F0.formLabel),formHeading:q("Heading",F0.formHeading),formIntro:E1("Intro",F0.formIntro),firstNameLabel:q("First-name label",F0.firstNameLabel),firstNamePlaceholder:q("First-name placeholder",F0.firstNamePlaceholder),emailLabel:q("Email label",F0.emailLabel),emailPlaceholder:q("Email placeholder",F0.emailPlaceholder),_gChoices:x("Right panel \xB7 choices"),interestsLabel:q("Interests label",F0.interestsLabel),interests:T2("Interest chips",n0(c4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:q("Frequency label",F0.frequencyLabel),frequencies:T2("Frequency options",n0(Vl1,{}),"Option label","verbatim"),_gActions:x("Right panel \xB7 actions"),submitText:q("Submit button",F0.submitText),finePrint:q("Fine print",F0.finePrint),dismissText:q("Dismiss link",F0.dismissText),emailInvalidText:q("Invalid-email error",F0.emailInvalidText),submitErrorText:q("Submit-failed error",F0.submitErrorText),_gSuccess:x("Success state"),successHeading:q("Heading",F0.successHeading),successBody:E1("Message",F0.successBody),keepBrowsingText:q("Dismiss button",F0.keepBrowsingText),...X9(f5,Hl),...Gl(),_gTextStyle:x("Text style"),...Object.fromEntries(Nl.map(e=>[Vy[e],g1(km[e],Ke(km[e]),[{label:"Popup's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gBehaviour:x("Behavior"),autoOpen:l1("Show by itself",F0.autoOpen,n0(El1,{})),trigger:v1("Trigger",n0(Rl1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(xx,{}),Lm.min,Lm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Il1,{}),Am.min,Am.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(Nl1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(xx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(xx,{}),Hm.min,Hm.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(_l1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Tl1,{}))},Wl1=Ql(ql1,"SubscribePopup");async function Ul1(){return(await By(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function jl1(e){let t=Tm(e),a=new Set;t.autoOpen||["trigger","autoOpenDelaySec","scrollPercent","showOn","showOnPages","hideAfter","hideDays"].forEach(c=>a.add(c)),t.trigger==="scroll"&&a.add("autoOpenDelaySec"),t.trigger!=="scroll"&&a.add("scrollPercent"),t.showOn!=="chosen"&&a.add("showOnPages"),t.hideAfter!=="days"&&a.add("hideDays");let s={};for(let[c,l]of Object.entries(Wl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await Ul1().catch(()=>[])}:l);return re(s)}var p5=Vl,Kl1={_gHeader:x("Header"),kickerBadge:q("Eyebrow badge",p5.kickerBadge),kickerText:q("Eyebrow text",p5.kickerText),titleLead:q("Heading",p5.titleLead),titleAccent:q("Heading accent",p5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",p5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",p5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",p5.subtitleMany,"{count} becomes the number of sets"),_gStatus:x("Status rail"),leadTimeValue:q("Lead time",p5.leadTimeValue),shipsToFallback:q("Ships to \xB7 fallback",p5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:x("Promise row"),promises:T2("Trust markers",n0(yG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},$h={root:{fields:{...UO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Sm)return jl1(e.props);if(e?.props?.kind===Cm)return Kl1;let a=t;return M2()?{[gp]:g1("Product type",n0(Fl1,{}),we,"alloy-wheel"),...a,_gHeroBullets:x("Product hero"),_nHeroBullets:b5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[gu]:T2("Trust bullets",n0(yG,{}),bL(Ja.bullets[0]),"verbatim")}:a},render:e=>{let{children:t,puck:a,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:r,theme:o,fonts:i,scales:n,kind:h,previewProduct:m}=e,u=Zr(typeof h=="string"?h:"",e);if(h===Sm){let f=Tm(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the site popup \u2014 edit it in the Settings panel \u2192"}):null,n0(bS,{inline:!0,content:f})]})}if(h===Cm){let f=Ey(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the cart drawer \u2014 edit its copy in the Settings panel \u2192"}):null,n0(wr,{children:n0(Cr,{preview:!0,children:n0($a,{content:f})})})]})}let d=!!a?.isEditing,v=n0(gL,{type:du(e),children:n0(nL,{kind:u,children:n0(yL,{content:xL(e),children:n0(rL,{slug:d?m:null,children:n0(XM,{children:t})})})})}),g=h===Ny&&!Ly(r);return d?h===G9?n0(Gl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:dx,children:v}):n0(ux,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:dx,footer:n0(Zl1,{}),overlay:ga(Xl1,{children:[n0(Jp,{}),n0(iu,{})]}),children:v}):n0(GO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Rx(),components:{Heading:B1.Heading,Text:B1.Text,Eyebrow:B1.Eyebrow,ImageBlock:B1.ImageBlock,LogoBlock:B1.LogoBlock,ButtonBlock:B1.ButtonBlock,Spacer:B1.Spacer,Divider:B1.Divider,Grid:B1.Grid,Flex:B1.Flex,Breadcrumb:B1.Breadcrumb,Masthead:B1.Masthead,CategoryBar:B1.CategoryBar,FeaturedCover:B1.FeaturedCover,LongRead:B1.LongRead,Series:B1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:B1.Banner,ParagraphsA:B1.ParagraphsA,StatsParagraph:B1.StatsParagraph,Timeline:B1.Timeline,Footprint:B1.Footprint,TimelineTrack:B1.TimelineTrack,TitleWithButtons:B1.TitleWithButtons,Stats:B1.Stats,Integrations:B1.Integrations,Mockup:B1.Mockup,Chart:B1.Chart,KeyFeatures:B1.KeyFeatures,Testimonials:B1.Testimonials,Reviews:h2.Reviews,Prose:B1.Prose,Cards:B1.Cards,Logos:B1.Logos,Ticker:B1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:B1.ContactLocations,HeroSingle:B1.HeroSingle,Hero:B1.Hero,HeroSlide:B1.HeroSlide,HeroGroup:B1.HeroGroup,Collections:G0.Collections,CollectionCard:G0.CollectionCard,Events:h2.Events,PostCard:B1.PostCard,DocMetaCards:B1.DocMetaCards,DocTabs:B1.DocTabs,DocMasthead:B1.DocMasthead,DocBody:B1.DocBody,FAQ:B1.FAQ,Gallery:G0.Gallery,GalleryB:G0.GalleryB,BrandStrip:G0.BrandStrip,SpecStrip:B1.SpecStrip,GalleryItem:G0.GalleryItem,Manifesto:B1.Manifesto,SectionHeader:B1.SectionHeader,IntroBleed:B1.IntroBleed,Split:B1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:G0.CatalogFilterBar,AlloyWheelsListing:G0.AlloyWheelsListing,ProductGrid:G0.ProductGrid,ProductHero:G0.ProductHero,SpecTable:G0.SpecTable,ProcessSteps:B1.ProcessSteps,DetailRows:G0.DetailRows,FitmentTable:G0.FitmentTable,RelatedProducts:G0.RelatedProducts,BundleOffer:G0.BundleOffer,CompatibleTyres:G0.CompatibleTyres,TyreSizes:G0.TyreSizes,TyreFitment:G0.TyreFitment,EuTyreLabel:G0.EuTyreLabel,FitmentFinder:G0.FitmentFinder,OrderSummary:B1.OrderSummary,DeliveryOptions:G0.DeliveryOptions,PaymentBadges:B1.PaymentBadges,CheckoutCTA:G0.CheckoutCTA,ProductRef:G0.ProductRef,CustomHTML:B1.CustomHTML,Header:G0.Header,Footer:h2.Footer,FooterLogo:h2.FooterLogo,FooterMenu:h2.FooterMenu,FooterDivider:h2.FooterDivider,FooterGroup:h2.FooterGroup,FooterText:h2.FooterText,FooterEmailSignup:h2.FooterEmailSignup,FooterSocial:h2.FooterSocial,LegalLineBlock:h2.LegalLineBlock,SearchBlock:G0.SearchBlock,CartBlock:G0.CartBlock,CountrySwitchBlock:G0.CountrySwitchBlock,[H9]:h2.SiteHeader,[F9]:h2.SiteFooter}},$l1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries($l1)){let a=$h.components;a[e]={...a[t]}}{let e=$h.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Pl1,{}),[{label:zm.column,value:"column"},{label:zm.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>n0(Ra,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var Yl1=zG($h),Rd0=Yl1.sectionGroupAllow,rb=$h;export{ly1 as a,ry1 as b,oy1 as c,iy1 as d,ny1 as e,bx as f,bG as g,xG as h,uj as i,up1 as j,Ho1 as k,HZ as l,en1 as m,tS as n,tn1 as o,an1 as p,$m1 as q,Dm0 as r,Om0 as s,uq1 as t,xr1 as u,zr1 as v,yr1 as w,wr1 as x,Ir1 as y,Rr1 as z,qU1 as A,ei1 as B,Bn1 as C,ne0 as D,Qp as E,xR1 as F,Hp as G,bM as H,oi1 as I,ii1 as J,ni1 as K,ui1 as L,wM as M,qo1 as N,R5 as O,zZ as P,eb as Q,Ch as R,kt as S,i3 as T,ej as U,CZ as V,Mo1 as W,Kn as X,tf as Y,f81 as Z,fQ1 as _,UR as $,kc as aa,rb as ba};