efficient-storefront-blocks 0.32.4 → 0.32.6
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.
- package/CHANGELOG.md +39 -0
- package/dist/chunks/{EditorPreviewCheckout-UGMEXAGV.js → EditorPreviewCheckout-MP7HSXYA.js} +1 -1
- package/dist/chunks/{PreviewFooter-DNWYCTDR.js → PreviewFooter-Q36PUHMP.js} +1 -1
- package/dist/chunks/{chunk-NEQXU52M.js → chunk-5FHN3KMU.js} +1 -1
- package/dist/chunks/{chunk-GD6ZFQC7.js → chunk-GW3NVLTK.js} +1 -1
- package/dist/chunks/{chunk-QMI6XRAE.js → chunk-LCA4D7H4.js} +4 -4
- package/dist/chunks/{fitment-data-I2D4TVEQ.js → fitment-data-XF3S6LXZ.js} +1 -1
- package/dist/chunks/{render-client-P22XAD47.js → render-client-2S7YA55G.js} +1 -1
- package/dist/index.js +2 -2
- package/package.json +1 -1
- /package/dist/chunks/{chunk-QMI6XRAE.js.LEGAL.txt → chunk-LCA4D7H4.js.LEGAL.txt} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{$ as mz,$b as ay,$d as Lm,$f as le,$g as or,A as g5,Aa as wz,Ab as Hz,Ac as gy,Ad as Ay,Ae as t7,Af as jl,Ag as Mw,Ai as o4,B as ez,Ba as P9,Bb as Fz,Bc as vy,Bd as El,Bf as g1,Bg as Sw,Bh as Vm,Bi as yC,C as tz,Cb as nm,Cc as fy,Cd as O9,Ce as K9,Cf as Q9,Cg as Lw,Ch as ir,D as az,Da as dl,Db as N9,Dc as Ml,Dd as R3,De as Zl,Df as c2,Dg as b8,Dh as Nm,E as sz,Eb as pm,Ec as R9,Ed as Hy,Ee as jy,Eg as cr,Eh as Jw,F as cz,Fa as gl,Fb as um,Fc as by,Fd as Fy,Fe as $9,Ff as Kl,Fg as x8,Fh as nr,G as sm,Ga as lm,Gc as xm,Gd as wm,Ge as e3,Gf as v1,Gh as he,H as lz,Hb as Gz,Hc as Sl,Hd as Vl,Hf as q1,Hg as Aw,Hh as Qw,I as rz,Ib as qz,Ic as xy,Id as Ty,Ie as Y9,If as $l,Ig as Hw,Ih as eC,Ja as s6,Jb as Wz,Jc as zy,Jd as Py,Je as Ky,Jf as Tm,Jg as Fw,Jh as Sa,Kb as yl,Kc as Al,Kd as Nl,Ke as Dl,Kf as T2,Kg as Tw,Kh as tC,L as il,La as Cz,Lb as Uz,Ld as Cm,Le as T,Lh as aC,Ma as p2,Mb as jz,Md as Ey,Me as O,Mh as sC,Na as rm,Nb as Kz,Nc as yy,Nd as km,Ne as q,Nf as ee,Nh as hr,Ob as _9,Od as G9,Oe as f1,Of as te,Oh as cC,Pa as a1,Pb as X6,Pc as p,Pd as Vy,Pe as H1,Pf as Yl,Pg as w5,Ph as lC,Qa as F2,Qb as $z,Qc as p3,Qd as q9,Qe as E1,Qf as s7,Qg as Pw,Qh as rC,Ra as kz,Rb as ya,Rd as W9,Rf as hw,Rg as Ew,Sd as Ny,Sf as mw,T as oz,Tb as Yz,Td as _y,Te as x,Tf as Pm,Tg as C5,Th as q4,Ud as _l,Ue as b5,Uf as pw,Ug as Vw,Uh as oC,V as iz,Ve as $y,Vg as oe,Vh as mr,Wb as Xz,Wc as wy,We as Y1,Wf as Xl,Wg as Nw,Wh as La,Xb as Jz,Xc as v8,Xd as Iy,Xe as Yy,Xf as Jl,Xg as lr,Xh as c7,Yb as Qz,Yd as Mm,Ye as Ol,Yf as ae,Yg as rr,Z as nz,Zb as ey,Zc as Hl,Zd as Ca,Ze as a7,Zf as se,Zg as _w,Zh as iC,_ as hz,_b as ty,_c as Cy,_d as Sm,_e as X9,_f as ce,_g as Iw,_h as _m,a as Ix,aa as pz,ab as c6,ac as sy,ad as ky,ae as Am,af as s1,ag as uw,ah as Rw,b as rl,ba as cm,bb as d8,bc as wl,bd as J2,be as Hm,bf as Z3,bg as dw,bh as z8,c as Rx,ca as uz,cb as Y6,cc as Cl,cd as My,ce as Fm,cf as Xy,cg as gw,ch as e0,d as xa,da as dz,dc as dm,dd as c4,de as Ry,df as Gl,dh as i6,ea as nl,eb as Mz,ec as R2,ed as Sy,ee as By,ef as Jy,eg as Ql,eh as M,f as Bx,fa as hl,fc as E0,fd as zm,fe as r6,ff as Qy,fg as vw,fh as R0,ga as gz,gc as cy,gd as Q2,ge as Il,gf as ql,gg as fw,gh as Y,ha as vz,hc as kl,hd as ym,he as Rl,hf as Wl,hg as re,hh as z0,hi as nC,ia as fz,ib as om,ic as g8,id as B9,ie as Zy,if as Ul,ih as Bw,ii as hC,j as Zx,ja as H9,jb as im,jc as gm,jd as Fl,je as Dy,jf as ew,jg as bw,jh as Zw,ji as mC,ka as F9,kd as Tl,ke as Oy,kf as tw,kh as Dw,ki as pC,la as ml,lb as Sz,lc as vm,ld as Ly,lf as aw,lh as Ow,li as uC,m as Dx,mc as fm,mf as sw,mg as xw,mh as Gw,mi as Aa,n as Ox,nc as ly,nd as l4,nf as Ma,nh as qw,oc as ry,od as r4,of as cw,oh as Ww,oi as dC,p as r0,pc as bm,pd as l6,pe as Gy,pf as x5,pg as sr,ph as Uw,q as ol,qc as f5,qd as f8,qe as B3,qf as z5,qh as jw,qi as fC,r as am,ra as I2,rc as oy,rd as Z9,re as qy,rf as lw,rg as Cw,rh as Kw,ri as bC,s as Ux,sa as Z1,sb as E9,sc as I9,sd as D9,se as Bl,sf as rw,sh as $w,si as xC,t as jx,tc as iy,td as J6,te as Q6,tf as ow,th as Yw,ti as zC,u as Kx,uc as ny,ud as Pl,ue as U9,uf as l1,uh as n6,v as $x,va as O1,vc as hy,ve as e7,vf as iw,vh as h6,w as Yx,wa as bz,wc as my,we as j9,wf as y5,wg as kw,wh as ie,wi as ur,x as Xx,xa as W1,xb as V9,xc as py,xe as Wy,xf as J9,xg as Em,xh as ne,xi as k4,y as Jx,ya as G1,yb as Lz,yc as uy,ye as Uy,yf as o6,yh as Xw,yi as dr,z as Qx,zb as Az,zc as dy,zd as C4,ze as ka,zf as nw,zh as k5,zi as l7}from"./chunk-QOXKQV6L.js";import{$ as Zm,A as fe,B as yr,C as _C,D as be,E as IC,H as RC,I as wr,J as d0,L as Bm,M as Cr,N as i4,O as kr,S as m7,T as BC,U as ZC,V as DC,W as xe,X as ze,Y as ye,Z as Fa,_ as OC,a as HC,aa as GC,ba as qC,ca as WC,da as w8,e as i7,ea as Z2,f as vr,fa as C8,g as FC,ga as UC,h as TC,ha as Dm,i as Im,j as PC,k as EC,l as fr,m as ue,n as Rm,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 VC,y as NC,z as ve}from"./chunk-
|
|
1
|
+
import{$ as mz,$b as ay,$d as Lm,$f as le,$g as or,A as g5,Aa as wz,Ab as Hz,Ac as gy,Ad as Ay,Ae as t7,Af as jl,Ag as Mw,Ai as o4,B as ez,Ba as P9,Bb as Fz,Bc as vy,Bd as El,Bf as g1,Bg as Sw,Bh as Vm,Bi as yC,C as tz,Cb as nm,Cc as fy,Cd as O9,Ce as K9,Cf as Q9,Cg as Lw,Ch as ir,D as az,Da as dl,Db as N9,Dc as Ml,Dd as R3,De as Zl,Df as c2,Dg as b8,Dh as Nm,E as sz,Eb as pm,Ec as R9,Ed as Hy,Ee as jy,Eg as cr,Eh as Jw,F as cz,Fa as gl,Fb as um,Fc as by,Fd as Fy,Fe as $9,Ff as Kl,Fg as x8,Fh as nr,G as sm,Ga as lm,Gc as xm,Gd as wm,Ge as e3,Gf as v1,Gh as he,H as lz,Hb as Gz,Hc as Sl,Hd as Vl,Hf as q1,Hg as Aw,Hh as Qw,I as rz,Ib as qz,Ic as xy,Id as Ty,Ie as Y9,If as $l,Ig as Hw,Ih as eC,Ja as s6,Jb as Wz,Jc as zy,Jd as Py,Je as Ky,Jf as Tm,Jg as Fw,Jh as Sa,Kb as yl,Kc as Al,Kd as Nl,Ke as Dl,Kf as T2,Kg as Tw,Kh as tC,L as il,La as Cz,Lb as Uz,Ld as Cm,Le as T,Lh as aC,Ma as p2,Mb as jz,Md as Ey,Me as O,Mh as sC,Na as rm,Nb as Kz,Nc as yy,Nd as km,Ne as q,Nf as ee,Nh as hr,Ob as _9,Od as G9,Oe as f1,Of as te,Oh as cC,Pa as a1,Pb as X6,Pc as p,Pd as Vy,Pe as H1,Pf as Yl,Pg as w5,Ph as lC,Qa as F2,Qb as $z,Qc as p3,Qd as q9,Qe as E1,Qf as s7,Qg as Pw,Qh as rC,Ra as kz,Rb as ya,Rd as W9,Rf as hw,Rg as Ew,Sd as Ny,Sf as mw,T as oz,Tb as Yz,Td as _y,Te as x,Tf as Pm,Tg as C5,Th as q4,Ud as _l,Ue as b5,Uf as pw,Ug as Vw,Uh as oC,V as iz,Ve as $y,Vg as oe,Vh as mr,Wb as Xz,Wc as wy,We as Y1,Wf as Xl,Wg as Nw,Wh as La,Xb as Jz,Xc as v8,Xd as Iy,Xe as Yy,Xf as Jl,Xg as lr,Xh as c7,Yb as Qz,Yd as Mm,Ye as Ol,Yf as ae,Yg as rr,Z as nz,Zb as ey,Zc as Hl,Zd as Ca,Ze as a7,Zf as se,Zg as _w,Zh as iC,_ as hz,_b as ty,_c as Cy,_d as Sm,_e as X9,_f as ce,_g as Iw,_h as _m,a as Ix,aa as pz,ab as c6,ac as sy,ad as ky,ae as Am,af as s1,ag as uw,ah as Rw,b as rl,ba as cm,bb as d8,bc as wl,bd as J2,be as Hm,bf as Z3,bg as dw,bh as z8,c as Rx,ca as uz,cb as Y6,cc as Cl,cd as My,ce as Fm,cf as Xy,cg as gw,ch as e0,d as xa,da as dz,dc as dm,dd as c4,de as Ry,df as Gl,dh as i6,ea as nl,eb as Mz,ec as R2,ed as Sy,ee as By,ef as Jy,eg as Ql,eh as M,f as Bx,fa as hl,fc as E0,fd as zm,fe as r6,ff as Qy,fg as vw,fh as R0,ga as gz,gc as cy,gd as Q2,ge as Il,gf as ql,gg as fw,gh as Y,ha as vz,hc as kl,hd as ym,he as Rl,hf as Wl,hg as re,hh as z0,hi as nC,ia as fz,ib as om,ic as g8,id as B9,ie as Zy,if as Ul,ih as Bw,ii as hC,j as Zx,ja as H9,jb as im,jc as gm,jd as Fl,je as Dy,jf as ew,jg as bw,jh as Zw,ji as mC,ka as F9,kd as Tl,ke as Oy,kf as tw,kh as Dw,ki as pC,la as ml,lb as Sz,lc as vm,ld as Ly,lf as aw,lh as Ow,li as uC,m as Dx,mc as fm,mf as sw,mg as xw,mh as Gw,mi as Aa,n as Ox,nc as ly,nd as l4,nf as Ma,nh as qw,oc as ry,od as r4,of as cw,oh as Ww,oi as dC,p as r0,pc as bm,pd as l6,pe as Gy,pf as x5,pg as sr,ph as Uw,q as ol,qc as f5,qd as f8,qe as B3,qf as z5,qh as jw,qi as fC,r as am,ra as I2,rc as oy,rd as Z9,re as qy,rf as lw,rg as Cw,rh as Kw,ri as bC,s as Ux,sa as Z1,sb as E9,sc as I9,sd as D9,se as Bl,sf as rw,sh as $w,si as xC,t as jx,tc as iy,td as J6,te as Q6,tf as ow,th as Yw,ti as zC,u as Kx,uc as ny,ud as Pl,ue as U9,uf as l1,uh as n6,v as $x,va as O1,vc as hy,ve as e7,vf as iw,vh as h6,w as Yx,wa as bz,wc as my,we as j9,wf as y5,wg as kw,wh as ie,wi as ur,x as Xx,xa as W1,xb as V9,xc as py,xe as Wy,xf as J9,xg as Em,xh as ne,xi as k4,y as Jx,ya as G1,yb as Lz,yc as uy,ye as Uy,yf as o6,yh as Xw,yi as dr,z as Qx,zb as Az,zc as dy,zd as C4,ze as ka,zf as nw,zh as k5,zi as l7}from"./chunk-QOXKQV6L.js";import{$ as Zm,A as fe,B as yr,C as _C,D as be,E as IC,H as RC,I as wr,J as d0,L as Bm,M as Cr,N as i4,O as kr,S as m7,T as BC,U as ZC,V as DC,W as xe,X as ze,Y as ye,Z as Fa,_ as OC,a as HC,aa as GC,ba as qC,ca as WC,da as w8,e as i7,ea as Z2,f as vr,fa as C8,g as FC,ga as UC,h as TC,ha as Dm,i as Im,j as PC,k as EC,l as fr,m as ue,n as Rm,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 VC,y as NC,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 wC,k as CC,l as kC,m as MC,n as o7,o as SC,p as LC,v as me,w as v0,x as y8,y as AC,z as pe}from"./chunk-5FHN3KMU.js";import{$ as Vz,D as Tz,Da as Oz,G as Pz,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 zw,R as hm,Ra as yw,Sa as ww,Ta as ar,X as zl,Y as Ez,a as _3,aa as Nz,b as Gx,c as L1,ca as mm,d as xz,i as v5,j as T9,k as pl,l as zz,m as yz,pa as _z,q as ul,qa as Iz,ra as Rz,sa as Bz,va as Zz,wa as Dz}from"./chunk-IKG5YKP7.js";import{c as ba,d as Vx,e as Nx,g as _x,i as H2,j as qx,k as A9,l as Wx,m as s4,q as pr,r as gC,s as t3,t as vC}from"./chunk-VBQY6H55.js";import{a as _G,b as IG}from"./chunk-Y6SLVHK3.js";var eE=_G((qP1,QP)=>{"use strict";function i01(e,t){this.v=e,this.k=t}function VP(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 n01(e){if(Array.isArray(e))return e}function h01(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 m01(){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 p01(e,t){return n01(e)||h01(e,t)||u01(e,t)||m01()}function u01(e,t){if(e){if(typeof e=="string")return VP(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)?VP(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 i01;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 $P=Object.entries,NP=Object.setPrototypeOf,d01=Object.isFrozen,g01=Object.getPrototypeOf,v01=Object.getOwnPropertyDescriptor,N2=Object.freeze,q2=Object.seal,zt=Object.create,YP=typeof Reflect<"u"&&Reflect,Qd=YP.apply,eg=YP.construct;N2||(N2=function(t){return t});q2||(q2=function(t){return t});Qd||(Qd=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)});eg||(eg=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 f01=S2(Array.prototype.lastIndexOf),_P=S2(Array.prototype.pop),Vs=S2(Array.prototype.push);Array.prototype.slice;var b01=S2(Array.prototype.splice),yt=Array.isArray,Is=S2(String.prototype.toLowerCase),jd=S2(String.prototype.toString),IP=S2(String.prototype.match),Ns=S2(String.prototype.replace),RP=S2(String.prototype.indexOf),x01=S2(String.prototype.trim),z01=S2(Number.prototype.toString),y01=S2(Boolean.prototype.toString),BP=typeof BigInt>"u"?null:S2(BigInt.prototype.toString),ZP=typeof Symbol>"u"?null:S2(Symbol.prototype.toString),Y3=S2(Object.prototype.hasOwnProperty),_s=S2(Object.prototype.toString),f3=S2(RegExp.prototype.test),I7=w01(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 Qd(e,t,s)}}function w01(e){return function(){for(var t=arguments.length,a=new Array(t),s=0;s<t;s++)a[s]=arguments[s];return eg(e,a)}}function S0(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Is;if(NP&&NP(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&&(d01(t)||(t[s]=l),c=l)}e[c]=!0}return e}function C01(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 $P(e)){var a=p01(s,2);let c=a[0],l=a[1];Y3(e,c)&&(yt(l)?t[c]=C01(l):l&&typeof l=="object"&&l.constructor===Object?t[c]=g4(l):t[c]=l)}return t}function k01(e){switch(typeof e){case"string":return e;case"number":return z01(e);case"boolean":return y01(e);case"bigint":return BP?BP(e):"0";case"symbol":return ZP?ZP(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=v01(e,t);if(s){if(s.get)return S2(s.get);if(typeof s.value=="function")return S2(s.value)}e=g01(e)}function a(){return null}return a}function M01(e){try{return f3(e,""),!0}catch{return!1}}var DP=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"]),Kd=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"]),$d=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"]),S01=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"]),Yd=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"]),L01=N2(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),OP=N2(["#text"]),GP=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"]),Xd=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"]),qP=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"]),A01=q2(/{{[\w\W]*|^[\w\W]*}}/g),H01=q2(/<%[\w\W]*|^[\w\W]*%>/g),F01=q2(/\${[\w\W]*/g),T01=q2(/^data-[\-\w.\u00B7-\uFFFF]+$/),P01=q2(/^aria-[\-\w]+$/),WP=q2(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),E01=q2(/^(?:\w+script|data):/i),V01=q2(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),N01=q2(/^html$/i),_01=q2(/^[a-z][.\w]*(-[.\w]+)+$/i),UP=q2(/<[/\w!]/g),jP=q2(/<[/\w]/g),I01=q2(/<\/no(script|embed|frames)/i),R01=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},XP=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],B01=N2(S0({},XP)),Z01=(function(){let e={};return Y8(XP,t=>{e[t]=q2(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),N2(e)})(),D01=function(){return typeof window>"u"?null:window},O01=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}},KP=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},Jd=function(t,a,s){let c=Y3(t,a)?t[a]:void 0;return c&&typeof c=="object"?g4(c):s()};function JP(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:D01(),t=r1=>JP(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=O01(h,c),_=!0),F},Q=a,W=Q.implementation,U=Q.createNodeIterator,i1=Q.createDocumentFragment,y1=Q.getElementsByTagName,K=s.importNode,c1=KP();t.isSupported=typeof $P=="function"&&typeof f=="function"&&W&&W.createHTMLDocument!==void 0;let b1=A01,$=H01,u1=F01,x1=T01,X0=P01,o0=E01,I1=V01,c0=_01,l0=WP,X1=null,X2=S0({},[...DP,...Kd,...$d,...Yd,...OP]),Q1=null,d2=S0({},[...GP,...Xd,...qP,...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,$h=S0({},[S1,i0,M1],jd),xx=N2(["mi","mo","mn","ms","mtext"]),Yh=S0({},xx),zx=N2(["annotation-xml"]),Xh=S0({},zx),yG=S0({},["title","style","font","a","script"]),va=null,wG=["application/xhtml+xml","text/html"],CG="text/html",v2=null,k9=null,kG=a.createElement("form"),yx=function(C){return C instanceof RegExp||C instanceof Function},Jh=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=wG.indexOf(C.PARSER_MEDIA_TYPE)===-1?CG:C.PARSER_MEDIA_TYPE,v2=va==="application/xhtml+xml"?jd:Is,X1=R7(C,"ALLOWED_TAGS",X2,{transform:v2}),Q1=R7(C,"ALLOWED_ATTR",d2,{transform:v2}),K6=R7(C,"ALLOWED_NAMESPACES",$h,{transform:jd}),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=M01(C.ALLOWED_URI_REGEXP)?C.ALLOWED_URI_REGEXP:WP,w2=typeof C.NAMESPACE=="string"?C.NAMESPACE:M1,Yh=Jd(C,"MATHML_TEXT_INTEGRATION_POINTS",()=>S0({},xx)),Xh=Jd(C,"HTML_INTEGRATION_POINTS",()=>S0({},zx));let R=Jd(C,"CUSTOM_ELEMENT_HANDLING",()=>zt(null));if(b0=zt(null),Y3(R,"tagNameCheck")&&yx(R.tagNameCheck)&&(b0.tagNameCheck=R.tagNameCheck),Y3(R,"attributeNameCheck")&&yx(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({},OP),Q1=zt(null),S3.html===!0&&(S0(X1,DP),S0(Q1,GP)),S3.svg===!0&&(S0(X1,Kd),S0(Q1,Xd),S0(Q1,Di)),S3.svgFilters===!0&&(S0(X1,$d),S0(Q1,Xd),S0(Q1,Di)),S3.mathMl===!0&&(S0(X1,Yd),S0(Q1,qP),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},wx=S0({},[...Kd,...$d,...S01]),Cx=S0({},[...Yd,...L01]),MG=function(C,R,t1){return R.namespaceURI===M1?C==="svg":R.namespaceURI===S1?C==="svg"&&(t1==="annotation-xml"||Yh[t1]):!!wx[C]},SG=function(C,R,t1){return R.namespaceURI===M1?C==="math":R.namespaceURI===i0?C==="math"&&Xh[t1]:!!Cx[C]},LG=function(C,R,t1){return R.namespaceURI===i0&&!Xh[t1]||R.namespaceURI===S1&&!Yh[t1]?!1:!Cx[C]&&(yG[C]||!wx[C])},AG=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?MG(t1,R,n1):C.namespaceURI===S1?SG(t1,R,n1):C.namespaceURI===M1?LG(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")}},kx=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"&&kx(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{}},HG=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)]||kx(C,n1,R1)}},tl=function(C){let R=[C];for(;R.length>0;){let t1=R.pop();I(t1)===d4.element&&HG(t1);let n1=b(t1);if(n1)for(let R1=n1.length-1;R1>=0;--R1)R.push(n1[R1])}},Mx=function(C,R){return t0?C==="patchsrc"?!0:C==="for"&&R!=="label"&&R!=="output":!1},FG=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(jP,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")&&Mx("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])}},Sx=function(C){let R=null,t1=null;if(W6)C="<remove></remove>"+C;else{let m0=IP(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},Lx=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},Qh=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)&&Qh(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 TG=function(C,R){return!!(t0&&C.hasChildNodes()&&!fa(C.firstElementChild)&&f3(UP,C.textContent)&&f3(UP,C.innerHTML)||t0&&C.namespaceURI===M1&&B01[R]&&(fa(C.firstElementChild)||typeof C.textContent=="string"&&f3(Z01[R],C.textContent))||C.nodeType===d4.processingInstruction||t0&&C.nodeType===d4.comment&&f3(jP,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},PG=function(C,R,t1){if(!d1[R]&&Tx(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},Ax=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)},Hx=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=Ax(c1.uponSanitizeElement,X1,X2,G6),d5(c1.uponSanitizeElement,C,{tagName:t1,allowedTags:X1}),S9(C,R))return!0;if(TG(C,t1))return $6(C),!0;if(d1[t1]||!(u0.tagCheck instanceof Function&&u0.tagCheck(t1))&&!X1[t1]){let n1=PG(C,t1,R);return n1===!1&&(d5(c1.afterSanitizeElements,C,null),S9(C,R))?!0:n1}if(I(C)===d4.element&&!AG(C)||(t1==="noscript"||t1==="noembed"||t1==="noframes")&&f3(I01,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)},Fx=function(C,R,t1){if($1[R]||Mx(R,C)||p8&&(R==="id"||R==="name")&&(t1 in a||t1 in kG))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"&&RP(t1,"data:")===0&&z4[C]||q0&&!f3(o0,Ns(t1,I1,""))?!0:!t1:Tx(C)&&cl(b0.tagNameCheck,C)&&cl(b0.attributeNameCheck,R,C)||R==="is"&&b0.allowCustomizedBuiltInElements&&cl(b0.tagNameCheck,t1)},EG=S0({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Tx=function(C){return!EG[Is(C)]&&f3(c0,C)},VG=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},NG=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}},Px=function(C,R){if(d5(c1.beforeSanitizeAttributes,C,null),S9(C,R))return;let t1=C.attributes;if(!t1||sl(C))return;Q1=Ax(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),tm=a4,L3=m2==="value"?tm:x01(tm),Ex=!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")&&RP(L3,C9)!==0&&(u8(m2,C,x0),L3=C9+L3,Ex=!0),t0&&f3(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,L3)){u8(m2,C,x0);continue}if(L9==="attributename"&&IP(L3,"href")){u8(m2,C,x0);continue}if(!n1.forceKeepAttr){if(!n1.keepAttr){u8(m2,C,x0);continue}if(!e1&&f3(R01,L3)){u8(m2,C,x0);continue}if(z1&&(L3=al(L3)),!Fx(m0,L9,L3)){u8(m2,C,x0);continue}L3=VG(m0,L9,w4,L3),L3!==tm&&NG(C,m2,w4,L3)&&Ex&&_P(t.removed)}}d5(c1.afterSanitizeAttributes,C,null),S9(C,R)},ll=function(C){let R=null,t1=Lx(C);for(d5(c1.beforeSanitizeShadowDOM,C,null);R=t1.nextNode();)if(d5(c1.uponSanitizeShadowNode,R,null),Hx(R,C),Px(R,C),M9(R.content)&&ll(R.content),I(R)===d4.element){let n1=w(R);M9(n1)&&(em(n1),ll(n1))}d5(c1.afterSanitizeShadowDOM,C,null)},em=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=k01(r1),typeof r1!="string"))throw I7("dirty is not a string, aborting");if(!t.isSupported)return r1;M3?(X1=G6,Q1=q6):Jh(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){FG(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{em(r1)}catch(a4){throw el(r1),a4}}else if(fa(r1))R=Sx("<!---->"),t1=R.ownerDocument.importNode(r1,!0),t1.nodeType===d4.element&&t1.nodeName==="BODY"||t1.nodeName==="HTML"?R=t1:R.appendChild(t1),em(R);else{if(!u5&&!z1&&!s2&&r1.indexOf("<")===-1)return D&&U6?V(r1):r1;if(R=Sx(r1),!R)return u5?null:U6?E:""}R&&W6&&$6(R.firstChild);let x0=m0?r1:R;try{let w4=Lx(x0);for(;n1=w4.nextNode();)Hx(n1,x0),Px(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&&Qh(r1),r1}if(u5){if(z1&&Qh(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(N01,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]:{};Jh(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||Jh({});let t1=v2(r1),n1=v2(C);return Fx(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=f01(c1[r1],C);return R===-1?void 0:b01(c1[r1],R,1)[0]}return _P(c1[r1])}},t.removeHooks=function(r1){Y3(c1,r1)&&(c1[r1]=[])},t.removeAllHooks=function(){c1=KP()},t}var G01=JP();QP.exports=G01});import{readLockHolder as kq}from"efficient-easel/edit-lock";var Gm="/api/storefront/section-templates/",Om=e=>`${Gm}${encodeURIComponent(e)}/`,qm=e=>e.node!=null;function Mr(e){if(!qm(e))throw new Error(`Section template ${e.id} has no design`);return e}var Um=(e,t)=>e instanceof W4&&e.status===t;function RG(e){return{list:()=>pe(`${Gm}?no_page=true`,{token:e()}).then(t=>Array.isArray(t)?t:t.results??[]),get:t=>pe(Om(t),{token:e()}).catch(a=>{if(Um(a,404))return null;throw a}),create:t=>pe(Gm,{method:"POST",token:e(),body:JSON.stringify(t)}),patch:(t,a)=>pe(Om(t),{method:"PATCH",token:e(),body:JSON.stringify(a)}),remove:t=>pe(Om(t),{method:"DELETE",token:e()})}}var Wm="sf:section-templates",jC=`${Wm}.imported`,BG="Untitled section",ZG=160,Sr=e=>(typeof e=="string"?e.trim().slice(0,ZG):"")||BG;function DG(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 OG(e,t=t3){let a={created:0,seeded:0,left:0,skipped:0,kept:!1},s=t.getItem(Wm);if(s===null)return a;for(let c of DG(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(!Um(r,400))throw r;a.skipped+=1}}catch{return{...a,kept:!0}}return t.setItem(jC,s),t.getItem(jC)===s&&t.removeItem(Wm),a}var Lr=class{constructor(t,a=t3){this.readToken=t;this.storage=a;this.imported=null;this.http=RG(t)}ready(){return this.imported?this.imported:this.readToken()?(this.imported=OG(this.http,this.storage).catch(()=>{}),this.imported):Promise.resolve()}async list(){return await this.ready(),(await this.http.list()).filter(qm)}async get(t){return await this.ready(),this.http.get(t)}async ensure(t,a,s){await this.ready();let c=async r=>r?qm(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(Um(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 KC={"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 $C(e,t){let a=KC[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 Hr1}from"efficient-shell/markup";var m6=["width","profile","rim"],YC={width:"Width",profile:"Profile",rim:"Rim"},GG=/^\s*(\d{2,3})\s*\/\s*(\d{2,3})\s*[A-Za-z]*\s*(\d{2}(?:\.\d+)?)\s*$/,qG={width:[100,500],profile:[20,100],rim:[10,30]};function n4(e){let t=GG.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]=qG[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 XC(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"},JC="All products",QC="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 ek(e,t){return e.filter(a=>t.includes(B0(a)))}function p7(e){return A3(e).slug??""}function jm(e){return A3(e).name??""}function Ce(e){return A3(e).brand??""}function tk(e){let t=new Set;for(let a of e)if(t.add(Ce(a)),t.size>1)return!0;return!1}function WG(e){return A3(e).process??""}function ak(e){let t=new Set;for(let a of e)if(t.add(WG(a)),t.size>1)return!0;return!1}function k8(e){return A3(e).prices??void 0}function Km(e){return A3(e).inStock!==!1}function sk(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 $m(e){return B0(e)!=="tyre"&&A3(e).badge==="new"}function Ym(e){return B0(e)==="tyre"?[]:(A3(e).finishes??[]).filter(t=>typeof t?.family=="string").map(t=>({family:t.family,color:t.color??null}))}function ck(e){return Ym(e).map(t=>t.family)}function lk(e){if(B0(e)==="tyre")return[];let t=A3(e),a=t.categories;return a&&a.length>0?a:t.process?[t.process]:[]}function rk(e){return B0(e)==="tyre"?[]:A3(e).spec?.pcds??[]}function ok(e){return B0(e)!=="tyre"?[]:A3(e).tyreTypes??[]}function ik(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 nk(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 Xm(e){return Tr(e,"spec")}function hk(e){return Tr(e,"fitment")}function Jm(e,t){if(t.length===0)return e;let a=Xm(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 Qm(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 mk(e,t){return e===t?`${P2(e)}"`:`${P2(e)}"\u2013${P2(t)}"`}function ep(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"},pk=Object.keys(Ta);function Ae(e){return I2(pk,"recommended",e)}function tp(e){return pk.filter(t=>t!=="recommended"||e.length<=1)}function uk(e,t){let a=Ae(e);return tp(t).includes(a)?a:"name"}var Pa=["tyreSizes","brands","finishes","diameters","collections","pcds","tyreTypes","speedRatings"],UG={tyreSizes:["tyre"],brands:["alloy-wheel","tyre"],finishes:["alloy-wheel"],diameters:["alloy-wheel","tyre"],collections:["alloy-wheel"],pcds:["alloy-wheel"],tyreTypes:["tyre"],speedRatings:["tyre"]},jG={diameters:"tyreSizes"};function dk(e){if(e.length===0)return[];let t=Pa.filter(a=>e.every(s=>UG[a].includes(s)));return t.filter(a=>{let s=jG[a];return!s||!t.includes(s)})}function gk(e,t){return t&&e.includes(t)?[t]:[...e]}function vk(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`${KG(e.width)}\xD7${e.diameter}`}function fk(e){return[...new Set((e.sizePairs??[]).map(t=>Qm(t.diameter,t.width)))]}function KG(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(!zk(e,c).some(o=>r.includes(o)))return!1}return!(s!=="price"&&!xr(k8(e),a,null,t.priceMax)||s!=="inStock"&&t.inStockOnly&&!Km(e))}function bk(e,t,a){return e.filter(s=>Km(s)&&Ea(s,t,a,"inStock")).length}function $G(e,t,a){let s=[...e],c=(r,o)=>jm(r).localeCompare(jm(o)),l=vk(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=($m(o)?1:0)-($m(r)?1:0);return i!==0||!l?i:c(r,o)});default:return s}}function xk(e,t,a){return $G(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 ap={tyreSizes:"Size",brands:"Brand",finishes:"Colour",diameters:"Size \xB7 diameter",collections:"Collection",pcds:"PCD \xB7 fitment",tyreTypes:"Tyre type",speedRatings:"Speed rating"};function zk(e,t){switch(t){case"tyreSizes":return[...new Set(ke(e).flatMap(XC))];case"brands":return Ce(e)?[Ce(e)]:[];case"finishes":return ck(e);case"diameters":return sk(e).map(String);case"collections":return lk(e);case"pcds":return rk(e);case"tyreTypes":return ok(e);case"speedRatings":return ik(e)}}function YG(e){let t=new Map;for(let a of e)for(let s of Ym(a))s.color&&!t.has(s.family)&&t.set(s.family,s.color);return t}function Vr(e,t,a,s=vk(e),c=[]){let l=n=>XG(n,s,c),r=YG(e),o=dk(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=zk(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:ap[n],options:v}}).filter(n=>n.options.length>Va),i=[];for(let n of o){let h=JG(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 XG(e,t,a){return t.length===0||a.length===0?!0:t.some(s=>Fr(j4(a,s))(Le(e,s)))}function JG(e,t,a){if(a.length===0)return;let s;for(let c of t){let l=nk(j4(a,c),"filter")(Le(e,c));l!==void 0&&(s===void 0||l<s)&&(s=l)}return s}function QG(e){let t=new Set;for(let a of e)for(let s of ke(a))t.add(U4(s));return t.size}function yk(e,t){return dk(t).includes("tyreSizes")?QG(e)>Va:!1}function wk(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 eq(e,t,a){return m6.slice(0,m6.indexOf(a)).every(s=>{let c=t[s];return c==null||e[s]===c})}function Ck(e,t,a){let s=wk(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=>eq(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:YC[l],value:s[l]??null,options:o}})}function kk(e,t,a,s){let c={...wk(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 Mk(e,t,a,s){if(t.length<2)return[];let c=e.filter(l=>Ea(l,a,s,"kind"));return[{kind:null,label:JC,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 Sk(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 Lk(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",Ak="maxPrice",Hk="inStock",Fk="sort",Tk="page";function Pk(e){let t=l=>e.getAll(l).flatMap(r=>r.split(",")).filter(Boolean),a=Number(e.get(Ak)),s=Number(e.get(Tk)),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(Hk)==="1",kind:D3.find(l=>l===c)??null,sort:Ae(e.get(Fk)),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(Ak,String(e.priceMax)),e.inStockOnly&&t.set(Hk,"1"),e.kind&&t.set(d7,e.kind),e.sort!=="recommended"&&t.set(Fk,e.sort),e.page>1&&t.set(Tk,String(e.page)),t}function Ek(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 Vk(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__",Nk="All products";function _r(e){return e?.slug===g7}var Fe="AlloyWheelsListing",tq="ProductGrid",_k="catalog",aq="CatalogFilterBar",Ir="fieldUsage";function Te(e){return e?.type===tq&&_r(e.props?.source)}function sp(e){return e?.type===aq}function sq(e){return e?.type===Fe||Te(e)||sp(e)}function cq(e){let t=e.content??[],a=e.zones??{};return[...t,...Object.values(a).flat()]}function fr1(e){return e?cq(e).some(t=>t?.type===Fe||Te(t)):!1}function br1(e,t){return rq(e,a=>Te(a)?{...a,props:{...cp(a).props,[_k]:lq(t,S5(a.props?.kinds))}}:{...a,props:{...lp(a).props,products:t}})}function xr1(e){return Rk(e,sq,t=>sp(t)?Ik(t):Te(t)?cp(t):lp(t))}function Ik(e){if(!e.props||!(Ir in e.props))return e;let{[Ir]:t,...a}=e.props;return{...e,props:a}}function cp(e){let{[_k]:t,[Ir]:a,...s}=e.props??{};return{...e,props:s}}function lq(e,t){let a=new Set(t);return e.filter(s=>{let c=s.kind??"alloy-wheel";return a.has(c)})}function zr1(e){return Te(e)?cp(e):sp(e)?Ik(e):e?.type===Fe?lp(e):e}function lp(e){let{wheels:t,products:a,[Ir]:s,...c}=e.props??{};return{...e,props:c}}function rq(e,t){return Rk(e,a=>a?.type===Fe||Te(a),t)}function Rk(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",rp="Products";function iq(e,t){return t>1?`${rp} \xB7 ${e}`:rp}function Bk(...e){for(let t of e){let a=(t?.content??[]).find(s=>s?.type===Fe);if(a)return a.props??{}}return null}function op(...e){return Bk(...e)!==null}function nq(e,t){let a=e.filter(s=>op(...s.docs)).map(s=>g8(s.slug));return a.length===0&&t.fallback?[Na]:a}var Zk=[d7,...Object.entries(M4).filter(([e])=>e!=="tyreSizes").map(([,e])=>e)];function Dk(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 hq(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return e}}function ip(e){let t=new URLSearchParams(Dk(e).query);for(let a of Zk){let s=t.get(a);if(s)return{param:a,value:s}}return null}function np(e,t){let{path:a,query:s,hash:c}=Dk(e),l=s.split("&").filter(r=>r&&!Zk.includes(hq(r.split("=")[0])));return t?.value&&l.push(`${encodeURIComponent(t.param)}=${encodeURIComponent(t.value)}`),`${a}${l.length?`?${l.join("&")}`:""}${c}`}function Nr1(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 mq="Product type",pq="AUD";function uq(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,pq,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:mq,values:o.map(i=>({value:i,label:h4[i]}))}),r}function _r1(e){return t=>{let a=nq(t,{fallback:e.offersCommerce}),s=t.filter(c=>op(...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&&op(...o.docs)?{...r,label:iq(o.title,s)}:r});return s===0&&e.offersCommerce&&!l.some(r=>r.value===Na)&&l.push({value:Na,label:rp}),l},filtersFor:c=>{if(!a.includes(c))return null;let l=t.find(r=>g8(r.slug)===c);return uq(e.catalogue,{listing:l?Bk(...l.docs):null,fieldUsage:e.fieldUsage})},readFilter:ip,withFilter:np}}}var Pe="product",Rr="recordType",dq={key:Pe,label:"Product",fields:[]};var gq=new Map,vq=0;function hp(){return[dq,...gq.values()]}function mp(){return vq}function Br(e){let t=e?.[Rr];return typeof t!="string"?Pe:t.trim()||Pe}function pp(e){return Br(e)===Pe}var up="product",fq="tyre";var dp="productType",bq={[up]:"alloy-wheel",[fq]:"tyre"},xq=["alloy-wheel","tyre"];function Zr(e,t){return pp(t)?zq(t)??bq[e]??null:null}function zq(e){if(!pp(e))return null;let t=e?.[dp];return typeof t=="string"&&xq.includes(t)?t:null}var yq=["home","products","gallery","about","contact"],wq=e=>{let t=e.slug.trim().toLowerCase(),a=(e.title??"").trim().toLowerCase(),s=yq.findIndex(c=>c===t||c===a);return s===-1?Number.POSITIVE_INFINITY:s},Ok=e=>e.map((t,a)=>({page:t,idx:a,rank:wq(t)})).sort((t,a)=>t.rank-a.rank||t.idx-a.idx).map(t=>t.page);var Wk="Popups",Gk="Site";var Uk={[Iy]:{label:"Site popup",group:Wk},[G9]:{label:"Footer",group:Gk},[Fy]:{label:"Cart drawer",group:Gk}};function vp(e){return Uk[e.slug]?.label||e.title||e.slug}function gp(e){let t=e.group?.trim();return t||null}function qk(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 jk(e){let t=Ok(e),a=[],s=t.filter(o=>!Ca(o.slug)),c=s.filter(o=>!gp(o));c.length&&a.push({key:"top",group:null,pages:c});let l=s.filter(o=>gp(o));for(let[o,i]of qk(l,n=>gp(n)))a.push({key:`folder:${o}`,group:o,pages:i});let r=t.filter(o=>Ca(o.slug));for(let[o,i]of qk(r,n=>Uk[n.slug]?.group??Wk))a.push({key:`system:${o}`,group:o,pages:i});return a}import{isExpiredSession as co1,PAGE_CONFLICT_CODE as Kk,readEaselFailure as lo1}from"efficient-easel/screen/lib/failure";var Dr=e=>e.layout_updated_at??e.updated_at??null,Mq=["live","changed","never"],fp=e=>Mq.includes(e.live_state)?{live:e.live_state}:{};function Sq(e){if(!e||typeof e!="object")return null;let t=e;return t.code!==Kk?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 Lq(e){return e===401||e===403?"unauthorized":e===404?"not-found":e===CC||e>=500?"unavailable":"invalid"}function Aq(e){if(!(e instanceof W4))return e;if(e.status===409){let t=Sq(e.data);if(t)return new v8("changed-elsewhere",e.message,{conflict:t,cause:e});let a=kq(e.data);if(a)return new v8("lock-taken",e.message,{holder:a,cause:e})}return new v8(Lq(e.status),e.message,{cause:e})}var bp=new WeakMap;function Hq(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(pC(s)&&l&&r){let i=mC(r,l);bp.has(i)?c=bp.get(i)??null:i.then(n=>bp.set(i,n))}let o=uC({pageSlug:e,siteSlug:c,hostname:s});return a?`${a}${o}`:o}var Fq={group:"Template pages",groupKey:"template"},$k=e=>({id:e.id,slug:e.slug,label:e.title||e.slug,...Fq,draft:!1});function Yk(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 Aq(m)}},a={list:n=>t(async h=>{let m=await J1.listPages(h,n?.siteId);return jk(m.filter(u=>u.slug!==G9)).flatMap(u=>u.pages.map(d=>({id:d.id,slug:d.slug,label:vp(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),...fp(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),...fp(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:vp(m),layout:m.layout??null}))),publish:(n,h)=>t(async m=>{let u=await J1.publishPage(n,m,h?.version);return{version:Dr(u),...fp(u)}})},s=n=>({list:()=>t(async h=>(await J1.listTemplatePages(n,h)).map($k)),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:cy,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=>$k(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:qx,maxUploadBytes:$C("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:gm(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=>Hq(n,e),draftLink:n=>t(async h=>({url:(await J1.createPagePreviewLink(n,h)).url??null}))}};return i[Vx]=!0,i}wy({read:e=>e instanceof W4?{status:e.status,data:e.data,message:e.message}:null,unreachableMessage:wC,loadRefusal:(e,{slug:t})=>e instanceof AC?`\u201C${t}\u201D exists on more than one website. Open it from the site you want to edit.`:null});_x(e=>Yk({token:()=>e.auth.token,siteId:()=>e.siteId()}));function Co1(e={}){return e.portalAudience!==void 0&&kC(e.portalAudience),e.language!==void 0&&MC(e.language),Yk({token:()=>ba().auth.token,siteId:()=>e.siteId??ba().siteId()})}import{jsx as Tq}from"react/jsx-runtime";import{createContext as Pq,useContext as Eq,useMemo as Vq}from"react";var Xk=Pq({originData:null,originSlug:null,exitFocus:()=>{}});function Lo1({children:e,originData:t,originSlug:a,exitFocus:s}){let c=Vq(()=>({originData:t,originSlug:a,exitFocus:s}),[t,a,s]);return Tq(Xk.Provider,{value:c,children:e})}var Jk=()=>Eq(Xk);import{useCallback as rW,useEffect as oW,useRef as iW,useState as kM}from"react";var Nq=[{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"}],_q=Object.fromEntries(Nq.map(e=>[e.code,e.name]));function Qk(e){return _q[e]??e}import{jsx as xp,jsxs as eM}from"react/jsx-runtime";function tM(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||Qk(c),currency:l?.currency,url:l?.url||a?.[c]||""}})}function Or(e){let{countries:t}=d0();return tM(t,e).length>0}function S8({urls:e,countries:t}={}){let{country:a,setCountry:s,countries:c}=d0(),l=tM(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 eM("div",{ref:n.wrapRef,className:"relative",children:[eM("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:[xp("span",{children:r.name}),xp("span",{"aria-hidden":!0,className:`text-[11px] opacity-70 transition-transform ${h?"rotate-180":""}`,children:"\u25BE"})]}),h&&xp(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 Iq,useRef as aM}from"react";import{jsx as S4,jsxs as zp}from"react/jsx-runtime";var _a={search:"Search",account:"Account",cart:"Bag"},yp="whitespace-nowrap";function Rq(e){return e>99?"99+":String(e)}function Bq({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:Rq(e)})})}function Gr({onClick:e,count:t,asText:a,className:s}){let c=aM(null),l=aM(t);return Iq(()=>{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?zp("span",{className:yp,children:[_a.cart,t>0?` ${t}`:""]}):zp("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:Vw}),t>0?S4(Bq,{count:t,ref:c}):null]})})}function sM({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:yp,children:_a.account}):zp("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:yp,children:_a.search}):S4(r6,{name:"search",size:18,strokeWidth:1.6,rounded:!0})})}var cM="Menu Item",lM=6,wp=4,rM="Menu",oM="Link a menu in the inspector \u2192";function iM(){return p("This column isn't linked to a menu, so the preview shows placeholder links. Pick a menu above.")}function nM(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 Oo1(){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 Zq}from"react/jsx-runtime";function Ee(){return Zq("span",{className:"opacity-50",children:p(cM)})}import{jsx as Dq}from"react/jsx-runtime";import{createContext as Oq,useContext as Cp,useEffect as Gq,useState as qq,useSyncExternalStore as Wq}from"react";var mM=[];function Uq(){let e=mM,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=Oq(null);function pM({children:e}){let[t]=qq(Uq);return Dq(Wr.Provider,{value:t,children:e})}var Ur=()=>Cp(Wr)!==null;function kp(e){let t=Cp(Wr);Gq(()=>{if(!(!t||!e))return t.offer(e)},[t,e])}var jq=()=>()=>{},hM=()=>mM;function uM(){let e=Cp(Wr),t=Wq(e?.subscribe??jq,e?.offered??hM,hM);return e?{search:t.includes("search"),region:t.includes("region"),account:t.includes("account"),theme:t.includes("theme")}:null}import{createContext as Kq,useCallback as Mp,useContext as $q,useEffect as Yq,useMemo as Xq,useState as Jq}from"react";import{jsx as eW}from"react/jsx-runtime";var Qq={isOpen:!1,open:()=>{},close:()=>{},toggle:()=>{}},dM=Kq(Qq);function Jo1({children:e,shortcut:t=!0}){let[a,s]=Jq(!1),c=Mp(()=>s(!0),[]),l=Mp(()=>s(!1),[]),r=Mp(()=>s(i=>!i),[]);Yq(()=>{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=Xq(()=>({isOpen:a,open:c,close:l,toggle:r}),[a,c,l,r]);return eW(dM.Provider,{value:o,children:e})}function Ve(){return $q(dM)}import{useEffect as Sp}from"react";function L4({active:e,onDismiss:t,focusRef:a,lockScroll:s=!0,scopeRef:c}){Sp(()=>{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]),Sp(()=>{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]),Sp(()=>{e&&a?.current?.focus()},[e,a])}import{createContext as tW,useCallback as xM,useContext as aW,useMemo as sW,useState as cW}from"react";var Ia=new Map,gM=e=>e??"";function Lp(e,t,a){a&&Ia.clear();let s=gM(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 vM(e,t){let a=gM(t),s=jr.get(a);if(!s){let c=Lp(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 Ap(e,t=!1){return Lp(e,i2(),t)}function fM(e){return vM(e,i2())}function li1(e,t=!1){return Lp(e,null,t)}function ri1(e){return vM(e,null)}var Hp={ids:new Set,handles:new Set};function oi1(e){return{ids:new Set(e.map(t=>t.id).filter(Boolean)),handles:new Set(e.map(t=>t.handle).filter(Boolean))}}function bM({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 lW}from"react/jsx-runtime";var zM=tW({live:Hp,ready:!1,primeLive:()=>{},setLive:()=>{}});function mi1({children:e}){let[t,a]=cW({live:Hp,ready:!1}),s=xM(r=>a(o=>o.ready?o:{live:r,ready:!0}),[]),c=xM(r=>a({live:r,ready:!0}),[]),l=sW(()=>({...t,primeLive:s,setLive:c}),[t,s,c]);return lW(zM.Provider,{value:l,children:e})}var yM=()=>aW(zM);function Ne(e){let t=(e??"").trim();return t===""||t==="#"}import{jsx as C0,jsxs as A5}from"react/jsx-runtime";var nW=e=>/^https?:\/\//i.test(e),MM="flex list-none flex-col gap-2.5 text-[13px]",Fp="mb-4 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",wM="text-[12px] italic text-fg-dim/70",SM=(e,t)=>e&&t>0?"border-t border-line pt-2.5":"";function hW({showDividers:e}){return C0("ul",{className:MM,children:Array.from({length:wp},(t,a)=>C0("li",{className:`text-fg ${SM(e,a)}`,children:C0(Ee,{})},a))})}function LM({item:e,label:t,link:a,onNavigate:s}){return Ne(e.url)?C0("span",{className:t,children:M(e.label)}):nW(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 CM({items:e,showDividers:t}){return C0("ul",{className:MM,children:e.map((a,s)=>C0("li",{className:SM(t,s),children:C0(LM,{item:a,label:"text-fg",link:"text-fg transition-colors hover:text-accent"})},`${a.label}-${s}`))})}var mW="opacity-80 transition-opacity hover:opacity-100";function pW({items:e,label:t,editing:a}){let[s,c]=kM(!1),l=iW(null),r=uM(),{open:o}=Ve(),i=t||"Menu",n=rW(()=>c(!1),[]);L4({active:s,onDismiss:n,scopeRef:l});let h=(u,d,v)=>e===null?Array.from({length:wp},(g,b)=>C0("li",{className:d,children:C0(Ee,{})},b)):e.map((g,b)=>C0("li",{className:d,children:C0(LM,{item:g,label:u,link:`${u} ${mW}`,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}=yM(),i=bM({id:e?.id,handle:e?.handle,editing:c,ready:o,live:r}),n=i?[]:e?.items??[],h=t||e?.name||"",[m,u]=kM(!1);return oW(()=>{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(pW,{items:i?null:n,label:h,editing:c}):i?A5("div",{className:"min-w-0",children:[C0("h4",{className:Fp,children:t?R0(t):p(rM)}),C0(hW,{showDividers:s}),C0("p",{className:`mt-3 ${wM}`,children:p(oM)})]}):n.length===0?A5("div",{className:"min-w-0",children:[h?C0("h4",{className:Fp,children:R0(h)}):null,c?C0("p",{className:wM,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(CM,{items:n,showDividers:s})})]}):A5("div",{className:"min-w-0",children:[h?C0("h4",{className:Fp,children:R0(h)}):null,C0(CM,{items:n,showDividers:s})]})}import{createContext as yW,useCallback as O3,useContext as wW,useEffect as CW,useMemo as kW,useRef as jM,useState as Re}from"react";function Ba(e){return typeof e=="number"?String(e):""}function AM(e){let t=Ba(e);return t&&`${t} LUG`}function Tp(e){let t=e.spec?.lugs;return typeof t=="number"?t:null}function HM(e){let t=new Set;for(let a of e){let s=Tp(a);s!==null&&t.add(s)}return[...t].sort((a,s)=>a-s)}function uW(e){return e.length===0?null:{min:Math.min(...e),max:Math.max(...e)}}function $r(e){let t=uW(e);return t?mk(t.min,t.max):null}function FM(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 TM=5,VM=.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 Pp(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 NM(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=Pp(e.etRange),c=s?[s[0]-TM,s[1]+TM]:null;return{holes:t.holes,circle:a,centreBore:typeof e.centreBore=="number"&&e.centreBore>0?e.centreBore:null,etRange:c}}function dW(e,t){return Math.abs(e-t)<=VM}function _M(e,t,a){let s=_e(e);return(s.holes??t)!==a.holes?!1:s.circles.some(l=>dW(l,a.circle))}function IM(e,t){return t.centreBore===null?!0:e+VM>=t.centreBore}function gW(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=>_M(s,e.lugs,t))?t.etRange!==null&&e.etRange!==null&&!gW(e.etRange,t.etRange)?{key:"et",wheel:Yr(e.etRange),vehicle:Yr(t.etRange)}:e.centreBores.length>0&&!e.centreBores.some(s=>IM(s,t))?{key:"bore",wheel:`${e.centreBores.join(" / ")} mm`,vehicle:`${t.centreBore} mm`}:null:{key:"pcd",wheel:e.pcds.join(" / "),vehicle:a}}function RM(e){return{pcds:e.spec?.pcds??[],lugs:e.spec?.lugs??null,etRange:Pp(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 Ep(e,t){return L8(RM(e),t)}function BM(e,t){return L8(Xr(e),t)}function vW(e,t){return Jr(Xr(e),t)===null}function ZM(e,t){return t?e.filter(a=>vW(a,t)):[...e]}function fW(e,t){return Jr(RM(e),t)===null}function Qr(e,t){return t?e.filter(a=>fW(a,t)):e}var PM=1;function bW(e,t){let a=e.spec?.pcds??[],s=e.spec?.centreBores??[],c=Pp(e.spec?.etRange);if(!t)return{pcds:a,etRange:c,centreBores:s};let l=e.spec?.lugs??null,r=a.filter(i=>_M(i,l,t)),o=s.filter(i=>IM(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 EM(e){let t=e.slice(0,PM).join(" / "),a=e.length-PM;return a>0?`${t} +${a}`:t}var DM="\xB7";function eo(e){return[{fieldKey:"diameter",text:$r(e.sizes)},{fieldKey:"holes",text:AM(e.spec?.lugs)}].filter(t=>!!t.text)}function OM(e,t){let{pcds:a,etRange:s,centreBores:c}=bW(e,t),l=[];return a.length>0&&l.push({fieldKey:"pcd",text:`PCD ${EM(a)}`}),s!==null&&l.push({fieldKey:"et",text:Yr(s)}),c.length>0&&l.push({fieldKey:"center_bore",text:`C/B ${EM(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 GM(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 xW(e,t,a){return!(t.process&&e.process!==t.process||t.size&&!e.sizes.includes(t.size)||t.lugs!=null&&Tp(e)!==t.lugs||t.finish&&!e.finishes.some(s=>s.family===t.finish)||!xr(e.prices,a,t.priceMin,t.priceMax))}function zW(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 qM(e,t,a,s=null){let c=Qr(e,s);return zW(c.filter(l=>xW(l,t,a)),t.sort,a)}import{jsx as SW}from"react/jsx-runtime";var KM={fit:null,name:"",resolving:!1,unresolved:!1};function MW(e,t){return e.fit===t.fit&&e.name===t.name&&e.resolving===t.resolving&&e.unresolved===t.unresolved}var m4=()=>{},$M=yW({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:KM,publishVehicle:m4}),ao="data-catalog-collection",WM=(e,t)=>e-t;function UM(e,t){return e.length===t.length&&e.every((a,s)=>a===t[s])}function Vp(e){let t=jM(new Map),[a,s]=Re([]),c=O3((l,r)=>{let o=t.current.get(l);if(o&&UM(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=>UM(h,n)?h:n)},[e]);return[a,c]}function YM({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(KM),d=O3(j=>{u(N=>MW(N,j)?N:j)},[]),v=jM(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]=Vp(WM),[k,S]=Vp(WM),[H,I]=Vp(qC),[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);CW(()=>{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=kW(()=>({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 SW($M.Provider,{value:V,children:e})}function so(){return wW($M)}import{useCallback as YW,useEffect as io,useRef as vS,useState as Oa}from"react";function XM({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 LW={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function JM(e){let t={};for(let a of Nl){let s=e[a];if(!s)continue;let c=V9({role:s},LW);c.fontFamily&&(t[km[a].font]=c.fontFamily),c.fontSize&&(t[km[a].size]=c.fontSize)}return t}import{useEffect as FW}from"react";import{useEffect as tS,useState as A8}from"react";var Np=new Set,_p=new Set,Ip=new Set;function QM(e){return Np.add(e),()=>Np.delete(e)}function Ji1(){Np.forEach(e=>e())}function eS(e){return _p.add(e),()=>_p.delete(e)}function Qi1(){_p.forEach(e=>e())}function co(e){return Ip.add(e),()=>Ip.delete(e)}function en1(){Ip.forEach(e=>e())}import{jsx as Be,jsxs as HW}from"react/jsx-runtime";function H5(e,t){let[a,s]=A8(void 0),[c,l]=A8(0);return tS(()=>{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]),tS(()=>{if(t===void 0)return co(()=>l(r=>r+1))},[t]),t!==void 0?t:a}var AW="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(AW)}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"?HW("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 aS="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:aS,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:aS,children:t})})})}import{jsx as a3,jsxs as lo}from"react/jsx-runtime";var sS="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 TW({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"?sS+" resize-y":sS})})}function Rp({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(Bp,{form:o,formSlug:e,submitText:s,finePrint:c,editing:r})]})})}function Bp({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});FW(()=>{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(TW,{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 Zp,jsxs as EW}from"react/jsx-runtime";import{jsx as PW}from"react/jsx-runtime";function cS(){return PW("span",{className:"block h-px w-[30px] bg-current"})}function VW(e,t){return`font-mono text-[length:var(--size-label,${e}px)] uppercase tracking-[0.3em] text-accent`}var NW="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",_W="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 EW("div",{className:[c,_W,l].filter(Boolean).join(" "),children:[Zp(cS,{}),Zp("span",{children:M(e)})]});let r=t==="filled"?NW:VW(a,s);return Zp("span",{className:[c,r,l].filter(Boolean).join(" "),children:M(e)})}import{useCallback as lS,useRef as IW,useState as rS}from"react";function ro({source:e,dryRun:t=!1}){let[a,s]=rS("idle"),[c,l]=rS(null),r=IW(!1),o=lS(()=>{r.current=!1,l(null),s("idle")},[]),i=lS(async n=>{if(!r.current){if(!be(n.email)){s("invalid");return}r.current=!0,l(null),s("sending");try{t||await v0.createNewsletterSubscription(XM(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 DW,useCallback as oo,useContext as OW,useEffect as GW,useMemo as qW,useRef as WW,useState as Gp}from"react";var oS="/edit";function iS(e){return e===oS||e.startsWith(`${oS}/`)}var hS="storefront-subscribe-seen",mS="storefront-popup-closed-at",RW=1440*60*1e3,BW=["/checkout","/cart"];function nS(e){let t=e.split(/[?#]/)[0]||"/",a=t.startsWith("/")?t:`/${t}`;return a.length>1?a.replace(/\/+$/,"")||"/":a}function Dp(e,t,a){let s=nS(e);return BW.some(c=>s===c||s.startsWith(`${c}/`))?!1:t==="all"?!0:a.some(c=>nS(c)===s)}function ZW(e,t,a,s){if(e==="never")return!1;if(a.session.getItem(hS)==="1")return!0;if(e==="visit")return!1;let c=Number(a.local.getItem(mS));return!Number.isFinite(c)||c<=0?!1:s-c<t*RW}function Op(e,t){e.session.setItem(hS,"1"),e.local.setItem(mS,String(t))}function pS(e,t){return e==="exit"&&!t?"delay":e}function uS(e,t,a){let s=a-t;return s<=0?100:Math.min(100,Math.max(0,e/s*100))}function dS(e,t,a){return!e.autoOpen||e.inEditor||!Dp(e.path,e.showOn,e.showOnPages)||e.hideAfter!=="never"&&!gC(t.session)?!1:!ZW(e.hideAfter,e.hideDays,t,a)}import{jsx as $W}from"react/jsx-runtime";var gS=DW(null),qp={session:vC,local:t3};function UW(){try{return window.matchMedia("(hover: hover) and (pointer: fine)").matches}catch{return!1}}var jW=15,KW=[];function In1({children:e,disableAutoTrigger:t,autoOpen:a=!1,autoOpenDelaySec:s=jW,trigger:c="delay",scrollPercent:l=50,showOn:r="all",showOnPages:o=KW,hideAfter:i="visit",hideDays:n=7}){let[h,m]=Gp(!1),[u,d]=Gp("chosen"),[v,g]=Gp({}),b=Oe()??"/",f=iS(b),w=Dp(b,r,o),z=WW(!1),k=oo(D=>{g(D??{}),d("newsletter"),m(!0)},[]),S=oo(()=>{z.current=!0,g({}),d("chosen"),m(!0)},[]),H=oo(()=>Op(qp,Date.now()),[]),I=oo(()=>{m(!1),Op(qp,Date.now())},[]);GW(()=>{if(t||z.current||!dS({autoOpen:a,inEditor:f,path:b,showOn:r,showOnPages:o,hideAfter:i,hideDays:n},qp,Date.now()))return;let E=pS(c,UW());if(E==="scroll"){let _=()=>{uS(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=qW(()=>({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 $W(gS.Provider,{value:P,children:e})}function Wp(){let e=OW(gS);if(!e)throw new Error("useSubscribePopup() must be called inside <SubscribePopupProvider>. Mount the provider in app/layout.tsx.");return e}import{Fragment as QW,jsx as a0,jsxs as C2}from"react/jsx-runtime";var XW=50,no="font-[family-name:var(--pp-fieldlabel-font,var(--font-mono))] text-[length:var(--pp-fieldlabel-size,12px)]";function JW(e){let t=I9({sectionAccent:f5(e.sectionAccent)}),a=yl(e.sectionCorners,e.sectionCornerSides);return{className:t?.className??"",style:{...t?.style??{},...a??{},...JM(e.textStyles)}}}function fS({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(""),_=vS(null),Z=vS(null);io(()=>{t&&I()},[t,I]),io(()=>{k==="sent"&&!c&&s?.()},[k]);let G=YW(()=>a?.(),[a]);if(L4({active:!c&&t,onDismiss:G}),io(()=>{if(c||!t)return;let $=window.setTimeout(()=>Z.current?.focus(),XW);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=JW(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(QW,{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(Bp,{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 Xp(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{chat:a,selected:s,select:c}=xw();return e||t||!a.enabled?null:gU("div",{className:"sf-preview-chat-pick","data-selected":s||void 0,onClick:l=>{l.stopPropagation(),c()},children:[Yp("style",{children:dU}),Yp(kS,{preview:!0,children:Yp($p,{title:a.title,subtitle:a.subtitle,greeting:a.greeting})})]})}import{lazy as vU,Suspense as fU}from"react";import{jsx as SS}from"react/jsx-runtime";function Jp(e,t={}){let a=vU(async()=>{let l=await e();return{default:"default"in l?l.default:l}}),s=t.loading?t.loading():null;function c(l){return SS(fU,{fallback:s,children:SS(a,{...l})})}return c}import{useEffect as WU,useRef as UU}from"react";import{jsx as Qp,jsxs as bU}from"react/jsx-runtime";import{useEffect as xU,useState as zU}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]=zU(!1),d=a||"";xU(()=>{u(!1)},[d]);let v=Wx(d),g=!d||m;return bU("div",{className:`relative h-full w-full overflow-hidden ${t??""}`,children:[Qp("div",{className:"absolute inset-0 flex items-center justify-center",style:n?{background:"var(--site-surface)"}:void 0,children:g?e:null}),d&&(v?Qp("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)}):Qp(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 AU}from"react";var yU=25.4,qa=400,mo=152,wU=58,LS=mo*Math.cos(wU*Math.PI/180),CU=14,kU=qa/2,MU={sectionWidth:225,aspectRatio:60,rimDiameter:17};function HS(e){let t=n4(e);return t?{sectionWidth:t.width,aspectRatio:t.profile,rimDiameter:t.rim}:MU}function FS(e){let t=e.rimDiameter*yU/2,a=t+e.sectionWidth*e.aspectRatio/100,s=mo*(e.sectionWidth/a),c=t/a;return{cy:kU,rx:LS,ry:mo,cxf:qa/2-s/2-CU,dx:s,rimRx:LS*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 eu(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 TS(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 AS=[{f:[0,.215]},{f:[.245,.485]},{f:[.515,.755]},{f:[.785,1]}],SU={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}}]},LU=[["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 PS(e){let t=` ${(e??"").toLowerCase().replace(/[^a-z0-9]+/g," ").trim()} `;if(t.trim()==="")return AS;for(let[a,s]of LU)if(t.includes(` ${a} `))return SU[s];return AS}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},HU=[.8,.52,.24],ES=.4,VS=.88,NS=.3,_S=5,IS=.3,RS=.84,FU=7,L0=e=>Math.round(e*10)/10;function tu({size:e,type:t,className:a}){let s=AU().replace(/[^a-zA-Z0-9]/g,""),c={tread:`${s}-tread`,wall:`${s}-wall`,rim:`${s}-rim`,shadow:`${s}-shadow`,crown:`${s}-crown`},l=FS(HS(e)),r=eu(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(PU,{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(EU,{g:l,id:c}),g0(VU,{g:l,id:c}),g0("path",{d:r,fill:`url(#${c.tread})`}),g0("g",{clipPath:`url(#${c.crown})`,children:PS(t).map(i=>g0(TU,{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 TU({g:e,column:t}){let[a,s]=t.f;if(!t.blocks)return T5(Wa,{children:[g0("path",{d:eu(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:TS(e,a,s,n,h),fill:"currentColor",fillOpacity:p4.rib,stroke:"currentColor",strokeOpacity:p4.grooveWall,strokeWidth:1},n))})}function PU({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 EU({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})`}),HU.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(ES)),ry:L0(e.ry*s(ES)),stroke:"currentColor",strokeOpacity:p4.lettering,strokeWidth:L0(c)})]})}function VU({g:e,id:t}){let a=Array.from({length:_S},(s,c)=>{let l=(c*(360/_S)-90)*Math.PI/180;return{x1:e.cxf+e.rimRx*IS*Math.cos(l),y1:e.cy+e.rimRy*IS*Math.sin(l),x2:e.cxf+e.rimRx*RS*Math.cos(l),y2:e.cy+e.rimRy*RS*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*VS),ry:L0(e.rimRy*VS),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:FU,strokeLinecap:"round"},c)),g0("ellipse",{cx:L0(e.cxf),cy:L0(e.cy),rx:L0(e.rimRx*NS),ry:L0(e.rimRy*NS),fill:"currentColor",fillOpacity:p4.hubFill,stroke:"currentColor",strokeOpacity:p4.hubEdge,strokeWidth:1})]})}import{jsx as au}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 au("div",{className:`text-fg ${l}`,style:{padding:"var(--sf-tyre-image-inset, 0)"},children:au(k0,{label:t||"Tyre",src:s4(e??void 0),alt:t?`${t} tyre`:"Tyre",objectFit:"contain",sizes:s,priority:c,showBackground:r,fallback:au(tu,{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 NU(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 _U(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 BS(e,t){try{let a=await o7(NU(e,t),{baseUrl:LC});return _U(t,a)}catch{return go(t)}}function ZS(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 DS(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 IU="/tyres";function Ge(e){return e?`${IU}/${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 su(e,t){return TC({partNumber:e.sku,prices:e.prices},t)}var RU="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||RU,positionNo:"01",config:[{label:t.size},{label:fr(a)}],finishName:"",size:t.size,components:su(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 OS(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 BU(e){let t=e?.tyreTypes??[];return t.length===1?t[0]:null}function cu({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??OC;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:BU(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 lu,jsxs as DU}from"react/jsx-runtime";function GS(e,t){return Math.min(Rm,Math.max(1,e+t))}var qS="disabled:cursor-not-allowed disabled:opacity-40",ZU={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 ${qS}`,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 ${qS}`,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=ZU[a];return DU("div",{className:s.frame,children:[lu("button",{type:"button",onClick:()=>t(GS(e,-1)),disabled:e<=1,"aria-label":"Decrease quantity",className:s.button,children:"\u2212"}),lu("span",{className:s.value,children:e}),lu("button",{type:"button",onClick:()=>t(GS(e,1)),disabled:e>=Rm,"aria-label":"Increase quantity",className:s.button,children:"+"})]})}import{useEffect as OU,useState as GU}from"react";var qU=new Map;function WS(e){let[t,a]=GU(null);return OU(()=>{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??qU}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=UU(null),w=WS(c.some(bo));return L4({active:t,onDismiss:s,lockScroll:!a}),WU(()=>{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:Ty(e,c.length)})]}),p0("div",{className:`grid flex-shrink-0 ${jU[b-1]} gap-px border-b border-line bg-line`,children:[N1(ru,{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(ru,{label:"Lead time",value:e.leadTimeValue}):null,g?N1(ru,{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(JU,{content:e}):c.map(z=>N1(KU,{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($U,{href:`/bundles/${z.slug}`,title:z.name,sub:YU(z,o.currency,d)},z.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(UC,{})}),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(XU,{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:HC}),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"}):RC(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 jU=["grid-cols-1","grid-cols-2","grid-cols-3"];function ru({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 KU({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(cu,{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:Bm(e,o)===null?n7:i(Bm(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 $U({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 YU(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 XU({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 JU({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 QU=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],ej=Object.fromEntries(QU.map(e=>[e.key,e]));function US(e){return ej[e]}import{Fragment as aj,jsx as H8,jsxs as zo}from"react/jsx-runtime";var tj=Jp(()=>import("./EditorPreviewCheckout-UGMEXAGV.js"),{ssr:!1});function ou(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{surface:a}=Cw();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?zo(aj,{children:[H8(tj,{}),H8(jS,{surface:a})]}):H8(wr,{children:zo(Cr,{preview:!0,children:[H8($a,{}),H8(jS,{surface:a})]})})}function jS({surface:e}){let{label:t,href:a}=US(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 Al1,CheckIcon as zG,ClockIcon as bx,ColumnsIcon as Hl1,DirectionIcon as Fl1,EyeIcon as Tl1,ListIcon as Pl1,PageIcon as El1,PlacementIcon as Vl1,ScrollPointIcon as Nl1,TriggerIcon as _l1}from"efficient-easel/icons";import{useContext as rj,useEffect as QS,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,iu=null,nu=null;function sj(){yo=null,iu=null,nu=null}function KS(e=!1){let t=R3(),a=i2();return(e||!yo||iu===null&&t!==null||nu!==a)&&(iu=t,nu=a,yo=(t?J1.listForms(t,{siteId:a}):Promise.reject(new Ya)).catch(s=>{throw sj(),s instanceof Ya?s:new Ya(s)})),yo}var hu=new Map,cj=9e5,$S=0;function lj(){return $S+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String($S)}`}function YS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function XS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=lj();return new Promise(s=>{let c=setTimeout(()=>JS(a,{status:"timeout"}),t.timeoutMs??cj);hu.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function JS(e,t){let a=hu.get(e);a&&(hu.delete(e),a(t))}function jm1(e,t){JS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as k2,jsxs as P5}from"react/jsx-runtime";var eL="__create-a-new-form__";function oj({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:eL,label:p("Create a new form")}];return[o,...i,...n,...h]}function ij(e){return e===eL?{action:"create"}:{action:"store",slug:e}}function nj({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 hj(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 mu({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=C4(),l=rj(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)=>KS(E).then(F=>{if(g.current){i(F),h(!1);let _=nj({value:b.current,pickedId:w.current,forms:F});_&&f.current(_)}return F},()=>(g.current&&h(!0),[]));QS(()=>(g.current=!0,r&&z(),()=>{g.current=!1}),[r]),QS(()=>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=oj({value:e,forms:o,loadFailed:n,emptyLabel:s}),P=async()=>{u(!0),v(!1);try{let E=await XS(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=ij(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:hj(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:()=>YS(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 mj}from"react/jsx-runtime";function E5(e,t){return{type:"custom",render:({value:a,onChange:s})=>mj(mu,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var Mo=null,tL=null;function pj(e,t){Mo=e,tL=t}function mp1(e){pj(e,null)}function aL(){return Mo}function M2(){return tL==="dynamic"||Mo===up}function sL(e){return Zr(Mo??"",e)??"alloy-wheel"}import{createContext as uj,useContext as dj}from"react";import{jsx as gj}from"react/jsx-runtime";var cL=uj(null);function lL({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return gj(cL.Provider,{value:a,children:t})}function rL(){return dj(cL)}import{createContext as vj,useContext as fj}from"react";import{jsx as bj}from"react/jsx-runtime";var oL=vj("alloy-wheel");function iL({kind:e,children:t}){return bj(oL.Provider,{value:e??"alloy-wheel",children:t})}function nL(){return fj(oL)}import{createContext as hL,useContext as So}from"react";import{jsx as wj}from"react/jsx-runtime";function xj(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 zj=/^\d{4}-\d{2}-\d{2}$/;function mL(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"?zj.test(a)?"date":"text":null;return s?[{key:t,label:xj(t),kind:s}]:[]}):[]}function Lo(e,{firstField:t=!1}={}){if(!e)return[];let a=mL(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 yj(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 pL(e){return e?mL(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"?yj(a):a}]}):[]}var z7="product",pu=hL(null);function uu(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||z7}function Ao(e){let t=e?.appState?.data?.root;return uu(t?.props)!==z7}var uL=hL(z7);function dL({type:e,children:t}){return wj(uL.Provider,{value:e,children:t})}function Ho(e){let t=So(pu),a=So(uL);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"}]}},gL=4;function To(){return So(pu)}function vL(e){let t=So(pu);return t!==null&&t.type===e?t:null}import{createContext as kj,useContext as Mj}from"react";var du="heroBullets",Xa="\xB7",Ja={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function fL(e){return e.detail?`${e.label} ${Xa} ${e.detail}`:e.label}function Cj(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 bL(e){let t=(e??{})[du];return Array.isArray(t)?{bullets:t.map(s=>Cj(typeof s=="string"?s:Hy(s?.text,""))).filter(s=>s!==null)}:Ja}import{jsx as Sj}from"react/jsx-runtime";var xL=kj(Ja);function zL({content:e,children:t}){return Sj(xL.Provider,{value:e,children:t})}function yL(){return Mj(xL)}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:qy,Stats:void 0};import{jsx as d6}from"react/jsx-runtime";import{jsx as Aj}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"}],Lj="68%",q3={desktop:20,phone:20,side:40,sidePhone:24},wL="sf-box-sides",CL={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) ${Lj})`}}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}},kL=new Set(Object.keys(No)),Hj=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),ML=new Set(["ProductGrid"]);function gu(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?Aj("div",{className:c.className,style:c.style,children:l}):l}}var SL={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!Hj.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){kL.has(t)||ML.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(kL.has(t)){let a=e.render,s=No[t];e.render=c=>{let l=by(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(ML.has(t)){gu(e);return}gu(e,t==="Flex"?a=>We(a.bgImage):void 0)}},Fj=["Heading","Text"],LL={name:"blockPadding",applies:(e,t,a)=>Fj.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){gu(e)}};import{jsx as u6,Fragment as Tj,jsxs as Pj}from"react/jsx-runtime";import{useEasel as TL}from"efficient-easel/easel";import{LayersIcon as Ej}from"efficient-easel/icons";import{SettingsDrill as Vj,SettingsField as Nj}from"efficient-easel/panel";import{default as AL}from"efficient-easel/screen/components/AddBlockRow";import{default as HL}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as Op1,useSlotChildActions as FL}from"efficient-easel/screen/components/SlotChildActionsContext";function _j({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=Pj(Tj,{children:[g?u6("p",{className:"sf-note",children:g}):null,d.map((f,w)=>u6(Vj,{name:s(f),onOpen:()=>c(u,w,String(f.props.id),t)},String(f.props.id??`${u}-${w}`))),n?u6(AL,{choices:n,onPick:f=>l(m,i,f,d.length,t)}):h.fixed?null:u6(HL,{label:h.addLabel,blocked:v,onAdd:()=>l(m,i,h.childType,d.length,t)})]});return u6("div",{className:"sf-slot-rows",children:a?u6(Nj,{label:p(a),icon:u6(Ej,{}),value:String(d.length),children:b}):b})}function Ij(e,t){return Aa(e)?.spec?.notice?.(t)??null}function PL({parentType:e}){let{selectedItem:t}=TL(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=Ij(e,s);return c?u6("p",{className:"sf-note",children:c}):null}function Rj(e,t){return Aa(t)?.source==="footer"?e.blockRowName:e.childRowName}function EL({parentType:e,label:t}){let{appState:a,selectedItem:s}=TL(r=>r),c=FL();if(!c||!s||s.type!==e)return null;let l=e===rz?il(a?.data,String(s.props.id)):0;return u6(_j,{parent:s,parentType:e,label:t,rowName:Rj(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var VL="grayscale(1) contrast(1.03)",NL="Black and white";function Bj(e){return e===!0?{filter:VL}:{}}function Zj(e){let{filter:t}=Bj(e);return t?{style:{filter:t}}:{}}var Qa="sf-photo-grayscale",Dj=`@media (hover:hover){.${Qa}{filter:${VL};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?Zj(!0):{}:t===!0?{className:Qa}:{}}function _L(e){return e===!0?{[Qa]:Dj}:{}}import{AlignLeftIcon as qj,BlackAndWhiteIcon as Wj,ContrastIcon as Uj,HeightIcon as jj,TypeIcon as Kj}from"efficient-easel/icons";var Oj=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],Gj=new Set(Oj);function IL(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(Gj.has(t[a]))return t[a];return null}var g6=e=>Q2(e,s1("Height",d6(jj,{}),ie.min,ie.max,ie.step,ie.fallback,ie.unit)),H4={ctaText:T("Button",u2.text),ctaHref:H1("Button link")},V5=()=>v1("Alignment",d6(qj,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),_o=()=>v1("Tone",d6(Uj,{}),[{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(EL,{parentType:e,label:t})}),Io=e=>({type:"custom",render:()=>d6(PL,{parentType:e})});function $j(e){let{photographyGrayscale:t}=I3();return l1(NL,t===!0,d6(Wj,{})).render(e)}function je(){return{type:"custom",render:e=>d6($j,{...e})}}var U1=Object.keys(z5("full"));function Ke(e){let t=IL(e);return t?d6(c4,{noun:t}):d6(Kj,{})}import{createContext as Yj,useContext as Xj}from"react";import{jsx as w7,jsxs as vu}from"react/jsx-runtime";function fu(e){return A9(e)??void 0}var bu=Yj({}),RL=3;function xu({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=Xj(bu),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",u=fu(c),d=g=>h?{[b8]:g}:{},v=g=>cr(n?.[x8(g)]?.role,Sw[g],pl);return vu(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"}}),vu("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)}),vu("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 hK,useCallback as mK,useContext as pK,useEffect as uK,useRef as dK,useState as wu}from"react";import{useState as Jj}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 BL(e){return e==="below"}import{jsx as K4,jsxs as $e}from"react/jsx-runtime";function zu({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=Jj(!1),h=BL(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 Qj,useContext as eK,useEffect as tK,useLayoutEffect as aK,useRef as yu,useState as sK}from"react";import{createPortal as cK}from"react-dom";import{Fragment as iK,jsx as es,jsxs as nK}from"react/jsx-runtime";var lK=".sf-themed-content",ZL="sf-section-accent";function rK(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(ZL)&&(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 ${ZL}`:"contents",style:a}}function oK(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 DL=Qj(()=>{});function F8({open:e,onClose:t,label:a,onPrev:s,onNext:c,className:l="",style:r,children:o}){let i=yu(null),n=yu(null),[h,m]=sK(null);aK(()=>{if(!e){m(null);return}let v=i.current;if(!v)return;let g=v.closest(lK)??v.ownerDocument.body;m({host:g,theme:rK(v,g)})},[e]);let u=yu({onClose:t,onPrev:s,onNext:c});u.current={onClose:t,onPrev:s,onNext:c};let d=e&&h!==null;return tK(()=>{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=oK(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?nK(iK,{children:[es("span",{ref:i,hidden:!0}),h&&cK(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(DL.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=eK(DL);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=hK({}),as="data-gallery-grid",Cu="data-gallery-tile";function gK(e,t){let[a,s]=wu(null);return uK(()=>{let c=e.current,l=c?.closest(`[${as}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${Cu}]`)),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 OL=[{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 vK(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function fK(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=vK(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}=pK(ts),i=fK(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=dK(null),m=mK(H=>{h.current=H},[]),u=gK(h,e),d=e&&(!!t||!!o),[v,g]=wu(!1),[b,f]=wu(0),w=()=>f(H=>(H-1+n.length)%n.length),z=()=>f(H=>(H+1)%n.length),k=n[b]??i.imageSrc??"",S=Q0(zu,{build:i,forceHover:d,index:u?.index,total:u?.total,ratio:a,captionPlace:s});return d3(Xe,{children:[e?Q0("div",{ref:m,[Cu]:"",className:"block w-full text-left",children:S}):Q0("button",{ref:m,[Cu]:"",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 yK,useContext as wK,useEffect as Bo,useId as CK,useMemo as kK,useState as V2}from"react";var bK=14,xK=3;function ku(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function zK(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),ku(a)}async function GL(e,t,a={}){let s=a.days??bK,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=zK(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>=xK)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as LK}from"react/jsx-runtime";var qL=yK(null);function C7(){let e=wK(qL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Mu=[{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 MK(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 Su={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function SK(e,t){return e&&t?.length===0}function WL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=CK(),c=kK(()=>ku(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(()=>Dm()),[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),GL(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(Dm())}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=SK(e,l);return LK(qL.Provider,{value:{fieldPrefix:s,editing:e,services:I1?Mu:l,currency:I1?"AUD":o,serviceId:I1?Mu[0].id:n,setServiceId:h,service:I1?Mu[0]:u1,requiresPayment:I1?!1:x1,date:m,earliestDate:d,setDate:u,setDateTouched:b,availability:I1?MK(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?Su:null),submitting:i1,error:K,canSubmit:I1?!1:X0,handleSubmit:o0,sample:!!I1},children:a})}import{jsx as Zo,Fragment as UL,jsxs as jL}from"react/jsx-runtime";var AK="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",KL={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=`${AK} ${KL[t]??KL.primary} ${c??""}`,m=s?jL(UL,{children:[a!==null&&Zo("span",{"aria-hidden":!0,className:"inline-flex",children:a??"\u2192"}),r]}):jL(UL,{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 HK(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 $L(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 YL(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 Lu({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(Lu,{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 ",HK(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(Lu,{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:$L(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:[$L(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(Lu,{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:YL(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: ",YL(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!==Su,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Wo=["step","name","value","note"],Au={step:"Step",name:"Name",value:"Value",note:"Note"},Uo={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},XL={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 FK(e){return typeof e=="string"&&v5.includes(e)?e:null}var TK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function JL(e){let t={};for(let a of Wo){let s=FK(e[Uo[a]]);if(!s)continue;let c=V9({role:s},TK);c.fontFamily&&(t[XL[a].font]=c.fontFamily),c.fontSize&&(t[XL[a].size]=c.fontSize)}return t}import{jsx as Je}from"react/jsx-runtime";var QL=["head","booking","details","confirm"],eA={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Hu({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=C7(),n=JL(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 PK,jsxs as F4}from"react/jsx-runtime";var T8="solid",Fu=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function tA(e){return I2(Fu,T8,e)}var Tu="sf-secnum-outline",aA="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",sA=`@supports (-webkit-text-stroke: 1px currentColor){.${Tu}{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(PK,{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=tA(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:`${aA} text-fg-dim ${Tu}`,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:sA}),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 EK(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function cA({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",EK(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"],Pu={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},$o={field:"styleField",tick:"styleTick",thanks:"styleThanks"},lA={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 VK(e){return typeof e=="string"&&v5.includes(e)?e:null}var NK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function rA(e){let t={};for(let a of Ko){let s=VK(e[$o[a]]);if(!s)continue;let c=V9({role:s},NK);c.fontFamily&&(t[lA[a].font]=c.fontFamily),c.fontSize&&(t[lA[a].size]=c.fontSize)}return t}import{jsx as Yo}from"react/jsx-runtime";var oA=["head","form"],iA={head:"Head",form:"Form"};function Eu({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=rA(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 _K={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>QL.map(e=>({region:e,name:eA[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:()=>oA.map(e=>({region:e,name:iA[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:RL},()=>({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:()=>OL.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};iz(_K);function et(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as IK}from"react/jsx-runtime";import{OpacityIcon as RK}from"efficient-easel/icons";var nA={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",IK(RK,{}),0,100,5,60,"%"),_gButton:x("Button"),...H4,_gLayout:x("Layout")}};import{jsx as DK}from"react/jsx-runtime";import{jsx as is,jsxs as Vu,Fragment as BK}from"react/jsx-runtime";import{Fragment as ZK}from"react";function hA({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:Vu("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 Vu(ZK,{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&&Vu(BK,{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 Nu={meta:"Trailing note"},OK=()=>[{label:p("Home"),href:"/"},{label:p("Section"),href:""}],mA={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>DK(hA,{items:C1(e,OK(),a),meta:y(t,Nu.meta,a),editing:a?.isEditing})};var pA={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",Nu.meta)}};import{jsx as g3,jsxs as GK}from"react/jsx-runtime";import{ButtonIcon as qK,ButtonIconIcon as WK,IconAfterTextIcon as UK,IconBeforeTextIcon as jK,StylesIcon as KK,WidthIcon as $K}from"efficient-easel/icons";import*as YK from"efficient-easel/icons";import{SettingsField as XK}from"efficient-easel/panel";import{useSelectedFields as gA}from"efficient-easel/easel";import{IconPicker as JK,Segmented as QK}from"efficient-shell/ui";function Xo(e){return typeof e=="boolean"?e:!0}var _u=["none","arrow-right","arrow-long-right","arrow-up-right","chevron-right","external","cart","bag","tag","email","location","play","download","search","car"];function Iu(e){return typeof e=="string"&&_u.includes(e)?e:void 0}function uA(e,t){return Iu(e)??(Xo(t)?"arrow-right":"none")}function Jo(e){return e==="before"?"before":"after"}function dA(e){return e==="fill"?"fill":"fit"}var Ru=e=>({...Fl({type:"custom",render:()=>g3(Tl,{})},"always"),reachedBy:e});function e$(e){let t=(e==="none"?"no-symbol":e).replace(/(^|-)([a-z])/g,(s,c,l)=>l.toUpperCase()),a=YK[`${t}Icon`];return a?g3(a,{size:16}):null}var t$=_u.map(e=>({value:e,icon:e$(e)}));function a$({value:e,onChange:t}){let a=gA(),s=a.values.href,c=typeof e=="string"?e:e&&typeof e=="object"&&"text"in e?String(e.text??""):"";return g3(By,{label:"Button",icon:g3(qK,{size:18}),text:c,onTextChange:t,link:typeof s=="string"?s:"",onLinkChange:l=>a.onChange("href",l)})}function s$({value:e,onChange:t}){let a=gA(),s=uA(e,a.values.arrow),c=Jo(a.values.iconPosition);return g3(XK,{label:p("Icon"),icon:g3(WK,{size:18}),children:GK("div",{className:"flex items-center gap-2",children:[g3(JK,{label:p("Icon"),value:s,emptyValue:"none",options:t$,onChange:t}),s!=="none"&&g3(QK,{label:p("Icon position"),value:c,onChange:l=>a.onChange("iconPosition",l),options:[{value:"before",icon:g3(jK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon before text")}),title:p("Icon before text")},{value:"after",icon:g3(UK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon after text")}),title:p("Icon after text")}]})]})})}var vA={fields:{label:Ky(q("Button"),e=>g3(a$,{value:e.value,onChange:e.onChange})),href:{...H1("Button link"),...Ru("label")},_dSize:Y1("Size"),widthFit:v1("Width",g3($K,{}),[{label:"Fit content",value:"fit"},{label:"Fill",value:"fill"}],"fit"),_gStyle:x("Style"),variant:v1("Style",g3(KK,{}),[{label:"Filled",value:"primary"},{label:"Outline",value:"ghost"}],"primary"),icon:{type:"custom",render:e=>g3(s$,{value:e.value,onChange:e.onChange})},iconPosition:Ru("icon"),arrow:Ru("icon"),_dLayout:Y1("Layout"),align:V5()}};import{jsx as xA}from"react/jsx-runtime";import{ColumnsIcon as n$,StylesIcon as h$}from"efficient-easel/icons";import{jsx as o$}from"react/jsx-runtime";import{jsx as tt,Fragment as c$,jsxs as Bu}from"react/jsx-runtime";var l$="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))]",r$="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 fA({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:Bu("div",{className:l?r$:l$,children:[l?null:Bu(c$,{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)=>Bu("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.*"},i$=()=>[{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.")}],bA={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return o$(fA,{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,i$(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var zA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",ns.eyebrow),eyebrowLook:g1("Eyebrow style",xA(h$,{}),[...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",xA(n$,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Cards.headRows)};import{jsx as m$}from"react/jsx-runtime";import{StickyIcon as p$}from"efficient-easel/icons";var yA={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,m$(p$,{}))}};import{jsx as b$}from"react/jsx-runtime";import{StylesIcon as x$}from"efficient-easel/icons";import{jsx as v$}from"react/jsx-runtime";import{jsx as r2,jsxs as Y4}from"react/jsx-runtime";function Zu(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var wA=[100,70,46,30,19,12];function CA(e){return`color-mix(in srgb, var(--accent) ${wA[e%wA.length]}%, var(--bg))`}function u$({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:[Zu(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 d$({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:[Zu(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 g$({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:CA(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:CA(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?`${Zu(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function kA({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(d$,{data:n,suffix:i}):m==="donut"?r2(g$,{data:n,suffix:i}):r2(u$,{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:Ty(e,c.length)})]}),p0("div",{className:`grid flex-shrink-0 ${jU[b-1]} gap-px border-b border-line bg-line`,children:[N1(ru,{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(ru,{label:"Lead time",value:e.leadTimeValue}):null,g?N1(ru,{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(JU,{content:e}):c.map(z=>N1(KU,{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($U,{href:`/bundles/${z.slug}`,title:z.name,sub:YU(z,o.currency,d)},z.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(UC,{})}),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(XU,{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:HC}),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"}):RC(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 jU=["grid-cols-1","grid-cols-2","grid-cols-3"];function ru({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 KU({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(cu,{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:Bm(e,o)===null?n7:i(Bm(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 $U({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 YU(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 XU({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 JU({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 QU=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],ej=Object.fromEntries(QU.map(e=>[e.key,e]));function US(e){return ej[e]}import{Fragment as aj,jsx as H8,jsxs as zo}from"react/jsx-runtime";var tj=Jp(()=>import("./EditorPreviewCheckout-MP7HSXYA.js"),{ssr:!1});function ou(){let{chromePlaceholder:e,themeFromDocument:t}=I3(),{surface:a}=Cw();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?zo(aj,{children:[H8(tj,{}),H8(jS,{surface:a})]}):H8(wr,{children:zo(Cr,{preview:!0,children:[H8($a,{}),H8(jS,{surface:a})]})})}function jS({surface:e}){let{label:t,href:a}=US(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 Al1,CheckIcon as zG,ClockIcon as bx,ColumnsIcon as Hl1,DirectionIcon as Fl1,EyeIcon as Tl1,ListIcon as Pl1,PageIcon as El1,PlacementIcon as Vl1,ScrollPointIcon as Nl1,TriggerIcon as _l1}from"efficient-easel/icons";import{useContext as rj,useEffect as QS,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,iu=null,nu=null;function sj(){yo=null,iu=null,nu=null}function KS(e=!1){let t=R3(),a=i2();return(e||!yo||iu===null&&t!==null||nu!==a)&&(iu=t,nu=a,yo=(t?J1.listForms(t,{siteId:a}):Promise.reject(new Ya)).catch(s=>{throw sj(),s instanceof Ya?s:new Ya(s)})),yo}var hu=new Map,cj=9e5,$S=0;function lj(){return $S+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String($S)}`}function YS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function XS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=lj();return new Promise(s=>{let c=setTimeout(()=>JS(a,{status:"timeout"}),t.timeoutMs??cj);hu.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function JS(e,t){let a=hu.get(e);a&&(hu.delete(e),a(t))}function jm1(e,t){JS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as k2,jsxs as P5}from"react/jsx-runtime";var eL="__create-a-new-form__";function oj({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:eL,label:p("Create a new form")}];return[o,...i,...n,...h]}function ij(e){return e===eL?{action:"create"}:{action:"store",slug:e}}function nj({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 hj(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 mu({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=C4(),l=rj(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)=>KS(E).then(F=>{if(g.current){i(F),h(!1);let _=nj({value:b.current,pickedId:w.current,forms:F});_&&f.current(_)}return F},()=>(g.current&&h(!0),[]));QS(()=>(g.current=!0,r&&z(),()=>{g.current=!1}),[r]),QS(()=>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=oj({value:e,forms:o,loadFailed:n,emptyLabel:s}),P=async()=>{u(!0),v(!1);try{let E=await XS(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=ij(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:hj(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:()=>YS(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 mj}from"react/jsx-runtime";function E5(e,t){return{type:"custom",render:({value:a,onChange:s})=>mj(mu,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var Mo=null,tL=null;function pj(e,t){Mo=e,tL=t}function mp1(e){pj(e,null)}function aL(){return Mo}function M2(){return tL==="dynamic"||Mo===up}function sL(e){return Zr(Mo??"",e)??"alloy-wheel"}import{createContext as uj,useContext as dj}from"react";import{jsx as gj}from"react/jsx-runtime";var cL=uj(null);function lL({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return gj(cL.Provider,{value:a,children:t})}function rL(){return dj(cL)}import{createContext as vj,useContext as fj}from"react";import{jsx as bj}from"react/jsx-runtime";var oL=vj("alloy-wheel");function iL({kind:e,children:t}){return bj(oL.Provider,{value:e??"alloy-wheel",children:t})}function nL(){return fj(oL)}import{createContext as hL,useContext as So}from"react";import{jsx as wj}from"react/jsx-runtime";function xj(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 zj=/^\d{4}-\d{2}-\d{2}$/;function mL(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"?zj.test(a)?"date":"text":null;return s?[{key:t,label:xj(t),kind:s}]:[]}):[]}function Lo(e,{firstField:t=!1}={}){if(!e)return[];let a=mL(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 yj(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 pL(e){return e?mL(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"?yj(a):a}]}):[]}var z7="product",pu=hL(null);function uu(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||z7}function Ao(e){let t=e?.appState?.data?.root;return uu(t?.props)!==z7}var uL=hL(z7);function dL({type:e,children:t}){return wj(uL.Provider,{value:e,children:t})}function Ho(e){let t=So(pu),a=So(uL);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"}]}},gL=4;function To(){return So(pu)}function vL(e){let t=So(pu);return t!==null&&t.type===e?t:null}import{createContext as kj,useContext as Mj}from"react";var du="heroBullets",Xa="\xB7",Ja={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function fL(e){return e.detail?`${e.label} ${Xa} ${e.detail}`:e.label}function Cj(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 bL(e){let t=(e??{})[du];return Array.isArray(t)?{bullets:t.map(s=>Cj(typeof s=="string"?s:Hy(s?.text,""))).filter(s=>s!==null)}:Ja}import{jsx as Sj}from"react/jsx-runtime";var xL=kj(Ja);function zL({content:e,children:t}){return Sj(xL.Provider,{value:e,children:t})}function yL(){return Mj(xL)}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:qy,Stats:void 0};import{jsx as d6}from"react/jsx-runtime";import{jsx as Aj}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"}],Lj="68%",q3={desktop:20,phone:20,side:40,sidePhone:24},wL="sf-box-sides",CL={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) ${Lj})`}}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}},kL=new Set(Object.keys(No)),Hj=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),ML=new Set(["ProductGrid"]);function gu(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?Aj("div",{className:c.className,style:c.style,children:l}):l}}var SL={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!Hj.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){kL.has(t)||ML.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(kL.has(t)){let a=e.render,s=No[t];e.render=c=>{let l=by(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(ML.has(t)){gu(e);return}gu(e,t==="Flex"?a=>We(a.bgImage):void 0)}},Fj=["Heading","Text"],LL={name:"blockPadding",applies:(e,t,a)=>Fj.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){gu(e)}};import{jsx as u6,Fragment as Tj,jsxs as Pj}from"react/jsx-runtime";import{useEasel as TL}from"efficient-easel/easel";import{LayersIcon as Ej}from"efficient-easel/icons";import{SettingsDrill as Vj,SettingsField as Nj}from"efficient-easel/panel";import{default as AL}from"efficient-easel/screen/components/AddBlockRow";import{default as HL}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as Op1,useSlotChildActions as FL}from"efficient-easel/screen/components/SlotChildActionsContext";function _j({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=Pj(Tj,{children:[g?u6("p",{className:"sf-note",children:g}):null,d.map((f,w)=>u6(Vj,{name:s(f),onOpen:()=>c(u,w,String(f.props.id),t)},String(f.props.id??`${u}-${w}`))),n?u6(AL,{choices:n,onPick:f=>l(m,i,f,d.length,t)}):h.fixed?null:u6(HL,{label:h.addLabel,blocked:v,onAdd:()=>l(m,i,h.childType,d.length,t)})]});return u6("div",{className:"sf-slot-rows",children:a?u6(Nj,{label:p(a),icon:u6(Ej,{}),value:String(d.length),children:b}):b})}function Ij(e,t){return Aa(e)?.spec?.notice?.(t)??null}function PL({parentType:e}){let{selectedItem:t}=TL(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=Ij(e,s);return c?u6("p",{className:"sf-note",children:c}):null}function Rj(e,t){return Aa(t)?.source==="footer"?e.blockRowName:e.childRowName}function EL({parentType:e,label:t}){let{appState:a,selectedItem:s}=TL(r=>r),c=FL();if(!c||!s||s.type!==e)return null;let l=e===rz?il(a?.data,String(s.props.id)):0;return u6(_j,{parent:s,parentType:e,label:t,rowName:Rj(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var VL="grayscale(1) contrast(1.03)",NL="Black and white";function Bj(e){return e===!0?{filter:VL}:{}}function Zj(e){let{filter:t}=Bj(e);return t?{style:{filter:t}}:{}}var Qa="sf-photo-grayscale",Dj=`@media (hover:hover){.${Qa}{filter:${VL};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?Zj(!0):{}:t===!0?{className:Qa}:{}}function _L(e){return e===!0?{[Qa]:Dj}:{}}import{AlignLeftIcon as qj,BlackAndWhiteIcon as Wj,ContrastIcon as Uj,HeightIcon as jj,TypeIcon as Kj}from"efficient-easel/icons";var Oj=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],Gj=new Set(Oj);function IL(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(Gj.has(t[a]))return t[a];return null}var g6=e=>Q2(e,s1("Height",d6(jj,{}),ie.min,ie.max,ie.step,ie.fallback,ie.unit)),H4={ctaText:T("Button",u2.text),ctaHref:H1("Button link")},V5=()=>v1("Alignment",d6(qj,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),_o=()=>v1("Tone",d6(Uj,{}),[{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(EL,{parentType:e,label:t})}),Io=e=>({type:"custom",render:()=>d6(PL,{parentType:e})});function $j(e){let{photographyGrayscale:t}=I3();return l1(NL,t===!0,d6(Wj,{})).render(e)}function je(){return{type:"custom",render:e=>d6($j,{...e})}}var U1=Object.keys(z5("full"));function Ke(e){let t=IL(e);return t?d6(c4,{noun:t}):d6(Kj,{})}import{createContext as Yj,useContext as Xj}from"react";import{jsx as w7,jsxs as vu}from"react/jsx-runtime";function fu(e){return A9(e)??void 0}var bu=Yj({}),RL=3;function xu({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=Xj(bu),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",u=fu(c),d=g=>h?{[b8]:g}:{},v=g=>cr(n?.[x8(g)]?.role,Sw[g],pl);return vu(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"}}),vu("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)}),vu("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 hK,useCallback as mK,useContext as pK,useEffect as uK,useRef as dK,useState as wu}from"react";import{useState as Jj}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 BL(e){return e==="below"}import{jsx as K4,jsxs as $e}from"react/jsx-runtime";function zu({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=Jj(!1),h=BL(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 Qj,useContext as eK,useEffect as tK,useLayoutEffect as aK,useRef as yu,useState as sK}from"react";import{createPortal as cK}from"react-dom";import{Fragment as iK,jsx as es,jsxs as nK}from"react/jsx-runtime";var lK=".sf-themed-content",ZL="sf-section-accent";function rK(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(ZL)&&(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 ${ZL}`:"contents",style:a}}function oK(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 DL=Qj(()=>{});function F8({open:e,onClose:t,label:a,onPrev:s,onNext:c,className:l="",style:r,children:o}){let i=yu(null),n=yu(null),[h,m]=sK(null);aK(()=>{if(!e){m(null);return}let v=i.current;if(!v)return;let g=v.closest(lK)??v.ownerDocument.body;m({host:g,theme:rK(v,g)})},[e]);let u=yu({onClose:t,onPrev:s,onNext:c});u.current={onClose:t,onPrev:s,onNext:c};let d=e&&h!==null;return tK(()=>{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=oK(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?nK(iK,{children:[es("span",{ref:i,hidden:!0}),h&&cK(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(DL.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=eK(DL);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=hK({}),as="data-gallery-grid",Cu="data-gallery-tile";function gK(e,t){let[a,s]=wu(null);return uK(()=>{let c=e.current,l=c?.closest(`[${as}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${Cu}]`)),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 OL=[{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 vK(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function fK(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=vK(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}=pK(ts),i=fK(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=dK(null),m=mK(H=>{h.current=H},[]),u=gK(h,e),d=e&&(!!t||!!o),[v,g]=wu(!1),[b,f]=wu(0),w=()=>f(H=>(H-1+n.length)%n.length),z=()=>f(H=>(H+1)%n.length),k=n[b]??i.imageSrc??"",S=Q0(zu,{build:i,forceHover:d,index:u?.index,total:u?.total,ratio:a,captionPlace:s});return d3(Xe,{children:[e?Q0("div",{ref:m,[Cu]:"",className:"block w-full text-left",children:S}):Q0("button",{ref:m,[Cu]:"",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 yK,useContext as wK,useEffect as Bo,useId as CK,useMemo as kK,useState as V2}from"react";var bK=14,xK=3;function ku(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function zK(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),ku(a)}async function GL(e,t,a={}){let s=a.days??bK,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=zK(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>=xK)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as LK}from"react/jsx-runtime";var qL=yK(null);function C7(){let e=wK(qL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Mu=[{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 MK(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 Su={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function SK(e,t){return e&&t?.length===0}function WL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=CK(),c=kK(()=>ku(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(()=>Dm()),[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),GL(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(Dm())}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=SK(e,l);return LK(qL.Provider,{value:{fieldPrefix:s,editing:e,services:I1?Mu:l,currency:I1?"AUD":o,serviceId:I1?Mu[0].id:n,setServiceId:h,service:I1?Mu[0]:u1,requiresPayment:I1?!1:x1,date:m,earliestDate:d,setDate:u,setDateTouched:b,availability:I1?MK(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?Su:null),submitting:i1,error:K,canSubmit:I1?!1:X0,handleSubmit:o0,sample:!!I1},children:a})}import{jsx as Zo,Fragment as UL,jsxs as jL}from"react/jsx-runtime";var AK="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",KL={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=`${AK} ${KL[t]??KL.primary} ${c??""}`,m=s?jL(UL,{children:[a!==null&&Zo("span",{"aria-hidden":!0,className:"inline-flex",children:a??"\u2192"}),r]}):jL(UL,{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 HK(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 $L(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 YL(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 Lu({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(Lu,{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 ",HK(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(Lu,{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:$L(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:[$L(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(Lu,{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:YL(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: ",YL(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!==Su,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Wo=["step","name","value","note"],Au={step:"Step",name:"Name",value:"Value",note:"Note"},Uo={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},XL={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 FK(e){return typeof e=="string"&&v5.includes(e)?e:null}var TK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function JL(e){let t={};for(let a of Wo){let s=FK(e[Uo[a]]);if(!s)continue;let c=V9({role:s},TK);c.fontFamily&&(t[XL[a].font]=c.fontFamily),c.fontSize&&(t[XL[a].size]=c.fontSize)}return t}import{jsx as Je}from"react/jsx-runtime";var QL=["head","booking","details","confirm"],eA={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Hu({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=C7(),n=JL(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 PK,jsxs as F4}from"react/jsx-runtime";var T8="solid",Fu=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function tA(e){return I2(Fu,T8,e)}var Tu="sf-secnum-outline",aA="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",sA=`@supports (-webkit-text-stroke: 1px currentColor){.${Tu}{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(PK,{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=tA(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:`${aA} text-fg-dim ${Tu}`,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:sA}),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 EK(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function cA({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",EK(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"],Pu={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},$o={field:"styleField",tick:"styleTick",thanks:"styleThanks"},lA={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 VK(e){return typeof e=="string"&&v5.includes(e)?e:null}var NK={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function rA(e){let t={};for(let a of Ko){let s=VK(e[$o[a]]);if(!s)continue;let c=V9({role:s},NK);c.fontFamily&&(t[lA[a].font]=c.fontFamily),c.fontSize&&(t[lA[a].size]=c.fontSize)}return t}import{jsx as Yo}from"react/jsx-runtime";var oA=["head","form"],iA={head:"Head",form:"Form"};function Eu({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=rA(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 _K={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>QL.map(e=>({region:e,name:eA[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:()=>oA.map(e=>({region:e,name:iA[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:RL},()=>({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:()=>OL.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};iz(_K);function et(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as IK}from"react/jsx-runtime";import{OpacityIcon as RK}from"efficient-easel/icons";var nA={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",IK(RK,{}),0,100,5,60,"%"),_gButton:x("Button"),...H4,_gLayout:x("Layout")}};import{jsx as DK}from"react/jsx-runtime";import{jsx as is,jsxs as Vu,Fragment as BK}from"react/jsx-runtime";import{Fragment as ZK}from"react";function hA({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:Vu("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 Vu(ZK,{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&&Vu(BK,{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 Nu={meta:"Trailing note"},OK=()=>[{label:p("Home"),href:"/"},{label:p("Section"),href:""}],mA={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>DK(hA,{items:C1(e,OK(),a),meta:y(t,Nu.meta,a),editing:a?.isEditing})};var pA={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",Nu.meta)}};import{jsx as g3,jsxs as GK}from"react/jsx-runtime";import{ButtonIcon as qK,ButtonIconIcon as WK,IconAfterTextIcon as UK,IconBeforeTextIcon as jK,StylesIcon as KK,WidthIcon as $K}from"efficient-easel/icons";import*as YK from"efficient-easel/icons";import{SettingsField as XK}from"efficient-easel/panel";import{useSelectedFields as gA}from"efficient-easel/easel";import{IconPicker as JK,Segmented as QK}from"efficient-shell/ui";function Xo(e){return typeof e=="boolean"?e:!0}var _u=["none","arrow-right","arrow-long-right","arrow-up-right","chevron-right","external","cart","bag","tag","email","location","play","download","search","car"];function Iu(e){return typeof e=="string"&&_u.includes(e)?e:void 0}function uA(e,t){return Iu(e)??(Xo(t)?"arrow-right":"none")}function Jo(e){return e==="before"?"before":"after"}function dA(e){return e==="fill"?"fill":"fit"}var Ru=e=>({...Fl({type:"custom",render:()=>g3(Tl,{})},"always"),reachedBy:e});function e$(e){let t=(e==="none"?"no-symbol":e).replace(/(^|-)([a-z])/g,(s,c,l)=>l.toUpperCase()),a=YK[`${t}Icon`];return a?g3(a,{size:16}):null}var t$=_u.map(e=>({value:e,icon:e$(e)}));function a$({value:e,onChange:t}){let a=gA(),s=a.values.href,c=typeof e=="string"?e:e&&typeof e=="object"&&"text"in e?String(e.text??""):"";return g3(By,{label:"Button",icon:g3(qK,{size:18}),text:c,onTextChange:t,link:typeof s=="string"?s:"",onLinkChange:l=>a.onChange("href",l)})}function s$({value:e,onChange:t}){let a=gA(),s=uA(e,a.values.arrow),c=Jo(a.values.iconPosition);return g3(XK,{label:p("Icon"),icon:g3(WK,{size:18}),children:GK("div",{className:"flex items-center gap-2",children:[g3(JK,{label:p("Icon"),value:s,emptyValue:"none",options:t$,onChange:t}),s!=="none"&&g3(QK,{label:p("Icon position"),value:c,onChange:l=>a.onChange("iconPosition",l),options:[{value:"before",icon:g3(jK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon before text")}),title:p("Icon before text")},{value:"after",icon:g3(UK,{size:16}),label:g3("span",{className:"sr-only",children:p("Icon after text")}),title:p("Icon after text")}]})]})})}var vA={fields:{label:Ky(q("Button"),e=>g3(a$,{value:e.value,onChange:e.onChange})),href:{...H1("Button link"),...Ru("label")},_dSize:Y1("Size"),widthFit:v1("Width",g3($K,{}),[{label:"Fit content",value:"fit"},{label:"Fill",value:"fill"}],"fit"),_gStyle:x("Style"),variant:v1("Style",g3(KK,{}),[{label:"Filled",value:"primary"},{label:"Outline",value:"ghost"}],"primary"),icon:{type:"custom",render:e=>g3(s$,{value:e.value,onChange:e.onChange})},iconPosition:Ru("icon"),arrow:Ru("icon"),_dLayout:Y1("Layout"),align:V5()}};import{jsx as xA}from"react/jsx-runtime";import{ColumnsIcon as n$,StylesIcon as h$}from"efficient-easel/icons";import{jsx as o$}from"react/jsx-runtime";import{jsx as tt,Fragment as c$,jsxs as Bu}from"react/jsx-runtime";var l$="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))]",r$="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 fA({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:Bu("div",{className:l?r$:l$,children:[l?null:Bu(c$,{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)=>Bu("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.*"},i$=()=>[{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.")}],bA={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return o$(fA,{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,i$(),e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var zA={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",ns.eyebrow),eyebrowLook:g1("Eyebrow style",xA(h$,{}),[...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",xA(n$,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Cards.headRows)};import{jsx as m$}from"react/jsx-runtime";import{StickyIcon as p$}from"efficient-easel/icons";var yA={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,m$(p$,{}))}};import{jsx as b$}from"react/jsx-runtime";import{StylesIcon as x$}from"efficient-easel/icons";import{jsx as v$}from"react/jsx-runtime";import{jsx as r2,jsxs as Y4}from"react/jsx-runtime";function Zu(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var wA=[100,70,46,30,19,12];function CA(e){return`color-mix(in srgb, var(--accent) ${wA[e%wA.length]}%, var(--bg))`}function u$({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:[Zu(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 d$({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:[Zu(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 g$({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:CA(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:CA(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?`${Zu(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function kA({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(d$,{data:n,suffix:i}):m==="donut"?r2(g$,{data:n,suffix:i}):r2(u$,{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.*`},f$=()=>[{label:p("Before"),value:"9"},{label:p("After"),value:"3"},{label:p("With us"),value:"1"}],MA={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})=>v$(kA,{eyebrow:y(e,hs.eyebrow,o),title:y(t,hs.title,o),body:a,items:C1(s,f$(),o),chartStyle:l,valueSuffix:r,caption:c,editing:o?.isEditing})};var SA={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",b$(x$,{}),[{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 I$}from"react/jsx-runtime";import{jsx as A1,Fragment as Gu,jsxs as X4}from"react/jsx-runtime";import{useId as w$,useState as C$}from"react";import{InspectorUpLevel as ps}from"efficient-easel/chrome";import{useEasel as k$}from"efficient-easel/easel";import{ListField as FA}from"efficient-easel/fields";import{SettingsField as TA}from"efficient-easel/panel";import{ClockIcon as LA,ContrastIcon as M$,GlobeIcon as S$,LinkIcon as L$,LocationIcon as A$,PhoneIcon as H$,SquareIcon as F$,TypeIcon as qu}from"efficient-easel/icons";var z$=["tall","square","wide"],y$="tall";function Qo(e){return z$.includes(String(e??""))?String(e):y$}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 Du(e){return kl(e)}var Wu=(e,t)=>t||e?iC(e,t):p("Ungrouped");function T$(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 Ou({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 PA={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"},P$={padding:0,border:"none",background:"none",font:"inherit",fontSize:12,color:"var(--sf-accent, #2563eb)",cursor:"pointer"},EA={...P$,color:"#d85a30"};function v6({label:e,value:t,placeholder:a,textarea:s,icon:c,onChange:l,onBlur:r,onKeyDown:o}){let i=w$();return A1(TA,{label:e,icon:c??A1(qu,{}),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 E$=[{label:"Auto",value:"auto"},{label:"Dark",value:"dark"},{label:"Light",value:"light"}],V$=[{label:"Tall (3:4)",value:"tall"},{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"}];function AA({label:e,icon:t,options:a,value:s,onChange:c}){return A1(TA,{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 HA({props:e,setSection:t,headOnly:a}){let s=r=>String(e[r]??""),c=e.mapTheme||o2.mapTheme,l=o2;return X4(Gu,{children:[!a&&A1(Ou,{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(Gu,{children:[A1(Ou,{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(AA,{label:p("Shape"),icon:A1(F$,{}),options:V$,value:Qo(e.imageShape),onChange:r=>t({imageShape:r})}),A1(Ou,{children:p("Map & Theme")}),A1(AA,{label:p("Map theme"),icon:A1(M$,{}),options:E$,value:c,onChange:r=>t({mapTheme:r})})]})]})}function N$({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]=C$(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:Wu(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(FA,{label:p("Cities in this group"),noun:p("city"),items:r.map(d=>e[d]),onChange:d=>a(nC(e,t,d)),newItem:()=>({..._m,group:t,groupName:o}),open:null,onOpen:()=>{},renderItem:()=>null,removeOnRow:!1,canDuplicate:()=>!1,renderRow:(d,v)=>X4("button",{type:"button",style:PA,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:EA,onClick:()=>{a(e.filter(d=>c7(d)!==t)),s()},children:p3("Delete group ({n} city)","Delete group ({n} cities)",r.length)})})]})}function VA({value:e,onChange:t}){let a=Array.isArray(e)?e:[],s=oC(),c=Mw(),l=T$(a),{appState:r,selectedItem:o}=k$(g=>g),i=ky(),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(oz,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(HA,{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(Ay,{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(L$,{}),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:Wu(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(qu,{})),z("state",p("State / Province"),A1(qu,{})),z("country",p("Country"),A1(S$,{})),z("address",p("Address"),A1(A$,{}),!0),z("phone",p("Phone"),A1(H$,{})),z("hours",p("Opening hours"),A1(LA,{})),z("timezone",p("Timezone chip"),A1(LA,{})),A1("div",{style:{marginTop:12},children:A1("button",{type:"button",style:EA,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(N$,{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(HA,{props:n,setSection:h}),!c&&A1(Gu,{children:v()})]})}function v(){return A1(FA,{label:p("Locations"),noun:p("group"),items:l,onChange:g=>{let b=g.find(f=>!l.some(w=>w.key===f.key));t(hC(a,g.map(f=>f.key),f=>[{..._m,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:PA,onClick:()=>q4({level:"group",key:g.key}),children:[A1("span",{style:{fontWeight:500},children:Wu(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 _$="/geocode.json";async function NA(e){let t=e.trim();if(!t)return null;if(!Nx())throw new Error("geocode_unavailable");let a=await fetch(`${pr()}${_$}?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=NA,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 _A={fields:{locations:{type:"custom",render:({value:e,onChange:t})=>I$(VA,{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 DA}from"react/jsx-runtime";import{ClockIcon as j$,TagIcon as K$}from"efficient-easel/icons";import{jsx as U$}from"react/jsx-runtime";import{jsx as _5,jsxs as ci,Fragment as B$}from"react/jsx-runtime";import{useEffect as Z$,useState as RA}from"react";import{Fragment as R$,jsx as IA}from"react/jsx-runtime";function at({kind:e,children:t}){let a=Wz(e);return a?IA("span",{[Sz]:a.stamp,children:t}):IA(R$,{children:t})}var D$=24*3600*1e3,O$=[{key:"hours",label:"Hours"},{key:"minutes",label:"Minutes"},{key:"seconds",label:"Seconds"}];function G$(e,t){return Math.max(0,Math.ceil((e-t)/1e3))}function q$(e){let t=Date.parse((e??"").trim());return Number.isFinite(t)?t:null}var W$=e=>String(e).padStart(2,"0");function BA({title:e,zeroText:t,endsAt:a,showUnits:s=!0,editing:c=!1}={}){let l=q$(a),[r]=RA(()=>Date.now()+D$),o=l??(c?r:null),[i,n]=RA(()=>Date.now());if(Z$(()=>{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=G$(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(B$,{children:[_5("span",{className:"sr-only",children:v}),_5("div",{"aria-hidden":!0,className:"flex items-start gap-[clamp(8px,2vw,24px)]",children:O$.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:um,children:_5("span",{"data-countdown-unit":g.key,...c?{[Y6]:um}:{},suppressHydrationWarning:!0,className:"font-mono text-[length:clamp(40px,8vw,96px)] font-medium leading-none tabular-nums text-fg",children:W$(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."},ZA={label:"Countdown",defaultProps:{...li,endsAt:"",showUnits:!0},render:({title:e,zeroText:t,endsAt:a,showUnits:s,puck:c})=>U$(BA,{title:e,zeroText:t,endsAt:a,showUnits:s,editing:c?.isEditing})};var OA={fields:{title:T("Heading",li.title),zeroText:T("At zero",li.zeroText),endsAt:ow("Ends",DA(j$,{}),"In your own time zone. Every visitor counts down to the same moment."),showUnits:l1("Unit labels",!0,DA(K$,{}))}};var GA={fields:{html:{type:"textarea",label:"HTML"}}};import{jsx as Q$}from"react/jsx-runtime";import{StylesIcon as eY}from"efficient-easel/icons";var E8="line",Uu=[{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"}],$$={"stripes-fine":{ink:4,period:12},"stripes-medium":{ink:8,period:18},"stripes-bold":{ink:14,period:28}},qA=28,Y$="-45deg",X$="color-mix(in oklab, var(--accent) 50%, var(--bg))";function J$(e){return e!=="line"}function WA(e){return I2(Uu,E8,e)}function UA(e){if(!J$(e))return null;let{ink:t,period:a}=$$[e];return`repeating-linear-gradient(${Y$}, ${X$} 0 ${t}px, transparent ${t}px ${a}px)`}var jA={fields:{style:g1("Style",Q$(eY,{}),Uu,E8),spacing:{type:"select",options:[{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]}}};import{jsx as lY}from"react/jsx-runtime";import{jsx as f6,jsxs as us}from"react/jsx-runtime";function tY(e,t){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||`section-${t+1}`}function aY(e){let t=[];for(let a of e.replace(/\r\n?/g,`
|
|
@@ -138,7 +138,7 @@ ${s}`:t.push({type:"p",text:s})});return t}var sY=()=>[{label:p("First section")
|
|
|
138
138
|
<h2>Custom section</h2>
|
|
139
139
|
</section>`},render:({html:e})=>q01("div",{dangerouslySetInnerHTML:{__html:tE(e??"")}})};import{jsx as U01}from"react/jsx-runtime";import{jsx as ag}from"react/jsx-runtime";var W01={sm:"my-6",md:"my-12",lg:"my-20"};function sE({spacing:e,contained:t,style:a=E8}){let s=UA(WA(a));return ag(t2,{contained:t,className:W01[e],children:s?ag("hr",{className:"border-x-0 border-y border-line",style:{height:qA,backgroundImage:s}}):ag("hr",{className:"border-0 border-t border-line"})})}var cE={label:"Divider",defaultProps:{style:E8,spacing:"md",contained:!0},render:({spacing:e,contained:t,style:a})=>U01(sE,{spacing:e,contained:t,style:a})};import{Fragment as $01,jsx as rE}from"react/jsx-runtime";import{jsx as j01}from"react/jsx-runtime";var K01={left:"",center:"justify-center",right:"justify-end"};function lE({text:e,align:t="left",look:a=dr}){return j01(V1,{text:e,look:a,classNameAfter:a==="line"?K01[t]:""})}var oE={label:"Eyebrow",defaultProps:{eyebrow:"",align:"left"},render:({eyebrow:e,align:t,eyebrowLook:a,puck:s})=>F2(e).hidden?rE($01,{}):rE(lE,{text:$4(a1(e),A.eyebrow,s)??"",align:t,look:yC(a)})};import{Fragment as Q01,jsx as nE}from"react/jsx-runtime";import{jsx as sg}from"react/jsx-runtime";var Y01={1:{size:"clamp(48px,7vw,96px)",role:"heading",step:"headingLarge",leading:"leading-[0.95]"},2:{size:"56px",sizeMobile:"36px",role:"heading",step:"headingMedium",rank:2,leading:"leading-none"},3:{size:"40px",sizeMobile:"28px",role:"heading",step:"headingSmall",rank:3,leading:"leading-[1.05]"},4:{size:"28px",role:"heading",step:"headingSmall",rank:3,leading:"leading-[1.1]"},5:{size:"22px",role:"body",step:"body",leading:"leading-[1.2]"},6:{size:"18px",role:"body",step:"body",leading:"leading-[1.3]"}},X01="font-display font-medium leading-[0.92] tracking-[-0.04em] text-[length:min(var(--size-headingLarge,clamp(64px,9vw,144px)),var(--sf-heading-max,9999px))] max-[800px]:text-[length:min(var(--size-headingMedium,clamp(48px,12vw,76px)),var(--sf-heading-max,9999px))] max-[800px]:leading-[0.95]",J01={left:"text-left",center:"text-center",right:"text-right"};function iE({level:e,text:t,align:a,contained:s,hero:c=!1}){if(c)return sg("h1",{className:X01,children:Y(t,!1)});let l=`h${e}`,r=Y01[e],o=t7(void 0,r.size,r.role,r.step),i=r.sizeMobile?t7(void 0,r.sizeMobile,r.role,r.step):void 0,n={"--heading-size":o,...i?{"--heading-size-m":i}:{}},h=r.rank===2?"[font-weight:var(--sf-heading-2-weight,var(--sf-heading-weight,500))]":r.rank===3?"[font-weight:var(--sf-heading-3-weight,var(--sf-heading-weight,500))]":"[font-weight:var(--sf-heading-weight,500)]",m=["text-[length:var(--heading-size)]",r.leading,i?"max-[800px]:text-[length:var(--heading-size-m)]":""].filter(Boolean).join(" ");return sg(t2,{contained:s,className:"py-6",children:sg(l,{className:`font-display ${h} tracking-[-0.03em] text-fg ${m} ${J01[a]}`,style:n,children:Y(t,!1)})})}var hE={label:"Heading",defaultProps:{text:"",level:"2",align:"left",contained:!0},render:({text:e,level:t,align:a,contained:s,puck:c})=>F2(e).hidden?nE(Q01,{}):nE(iE,{text:$4(a1(e),A.heading,c)??"",level:t,align:a,contained:s})};import{jsx as t21}from"react/jsx-runtime";import{jsx as X8}from"react/jsx-runtime";var e21={auto:"","21/9":"aspect-[21/9]","16/9":"aspect-[16/9]","4/3":"aspect-[4/3]","1/1":"aspect-square"};function mE({src:e,alt:t,aspect:a,contained:s,grayscale:c,href:l,width:r,fit:o,focal:i,corners:n,cornerSides:h}){let m=Ue(c,vt()),u=xT(r),d=mt(o,"cover"),v=My(n,h),g={...m.style??{},...i&&wi(a,d)?{objectPosition:i}:{}},b=e?X8("img",{src:H2(e),alt:t,className:`h-full w-full ${a==="auto"?"":kF(d)}${m.className?` ${m.className}`:""}`,...Object.keys(g).length?{style:g}:{}}):X8("div",{className:"flex aspect-[16/9] items-center justify-center border border-dashed border-line font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:"Image \u2014 set a path"}),f=(l??"").trim(),w=f&&e?f.startsWith("/")?X8(r0,{href:f,className:"block h-full w-full",children:b}):X8("a",{href:f,className:"block h-full w-full",children:b}):b;return X8(t2,{contained:s,className:"py-6",children:X8("figure",{...u?{style:u}:{},children:X8("div",{className:`relative w-full overflow-hidden bg-surface ${e21[a]}`,...v?{style:v}:{},children:w})})})}var pE={label:"Image",defaultProps:{src:"",alt:"",aspect:"16/9",contained:!1},render:({src:e,alt:t,aspect:a,contained:s,grayscale:c,href:l,width:r,fit:o,focal:i,corners:n,cornerSides:h})=>t21(mE,{src:e,alt:t,aspect:a,contained:s,grayscale:c,href:l,width:r,fit:o,focal:i,corners:n,cornerSides:h})};import{jsx as r21}from"react/jsx-runtime";import{jsx as F3,jsxs as Oi}from"react/jsx-runtime";var F1='<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>',T1='</title><path d="',P1='"/></svg>';var uE={title:"Adyen",slug:"adyen",get svg(){return F1+"Adyen"+T1+this.path+P1},path:"M11.64703 9.88245v2.93377c0 .13405.10867.24271.24272.24271h.46316V9.88245h1.76474v5.1503c0 .46916-.38033.8495-.8495.8495H9.94303v-1.23507h2.40991v-.52942h-1.62108c-.46917 0-.8495-.38033-.8495-.8495V9.88245h1.76467Zm-8.26124.00001c.46917 0 .8495.38034.8495.8495v3.3858H.8495c-.46916 0-.8495-.38033-.8495-.8495v-.94805c0-.46917.38034-.8495.8495-.8495h.91521v1.3455c0 .13406.10867.24272.24272.24272h.46316V11.184c0-.13405-.10867-.24271-.24272-.24271l-2.16719-.00002V9.88246Zm5.79068-1.76471v6.00001H5.79068c-.46917 0-.8495-.38033-.8495-.8495v-2.53631c0-.46917.38033-.8495.8495-.8495h.91515v2.93377c0 .13405.10867.24271.24272.24271h.46316l.00005-4.94118h1.76471Zm9.03286 1.76471a.8495.8495 0 0 1 .8495.8495v.94805c0 .46917-.38033.8495-.8495.8495h-.9152v-1.3455c0-.13404-.10868-.2427-.24272-.2427h-.46317v1.8749c0 .13406.10867.24272.24272.24272h2.16719v1.05883h-3.32511c-.46917 0-.8495-.38033-.8495-.8495v-3.3858Zm4.94117 0c.46916 0 .8495.38034.8495.8495v3.3858h-1.7647V11.184c-.0004-.13388-.10884-.24232-.24272-.24272h-.46316v3.1765H19.7647V9.88245Z",source:"https://www.adyen.com/press-and-media/presskit",hex:"0ABF53",guidelines:"https://www.adyen.com/press-and-media/presskit"};var dE={title:"Afterpay",slug:"afterpay",get svg(){return F1+"Afterpay"+T1+this.path+P1},path:"M12 0C5.373 0 0 5.373 0 12c0 6.628 5.373 12 12 12 6.628 0 12-5.372 12-12 0-6.627-5.372-12-12-12Zm1.236 4.924a2.21 2.21 0 0 1 1.15.299l4.457 2.557c1.495.857 1.495 3.013 0 3.87l-4.457 2.558c-1.488.854-3.342-.22-3.342-1.935v-.34a.441.441 0 0 0-.66-.383L6.287 13.9a.441.441 0 0 0 0 .765l4.096 2.35a.44.44 0 0 0 .661-.382v-.685c0-.333.36-.542.649-.376l1.041.597a.441.441 0 0 1 .222.383v.29c0 1.715-1.854 2.789-3.342 1.935L5.157 16.22c-1.495-.857-1.495-3.013 0-3.87l4.457-2.558c1.488-.854 3.342.22 3.342 1.935v.34c0 .34.366.551.66.383l4.097-2.35a.441.441 0 0 0 0-.765l-4.096-2.351a.441.441 0 0 0-.661.382v.685c0 .333-.36.541-.649.375l-1.041-.597a.442.442 0 0 1-.222-.383v-.29c0-1.285 1.043-2.21 2.192-2.233z",source:"https://www.afterpay.com/en-AU/business/resources/marketing/logos",hex:"B2FCE4",guidelines:"https://www.afterpay.com/en-AU/business/resources/marketing/brand-tools/brand-guidelines"};var gE={title:"Aircall",slug:"aircall",get svg(){return F1+"Aircall"+T1+this.path+P1},path:"M23.451 5.906a6.978 6.978 0 0 0-5.375-5.39C16.727.204 14.508 0 12 0S7.273.204 5.924.516a6.978 6.978 0 0 0-5.375 5.39C.237 7.26.034 9.485.034 12s.203 4.74.515 6.094a6.978 6.978 0 0 0 5.375 5.39C7.273 23.796 9.492 24 12 24s4.727-.204 6.076-.516a6.978 6.978 0 0 0 5.375-5.39c.311-1.354.515-3.578.515-6.094 0-2.515-.203-4.74-.515-6.094zm-5.873 12.396l-.003.001c-.428.152-1.165.283-2.102.377l-.147.014a.444.444 0 0 1-.45-.271 1.816 1.816 0 0 0-1.296-1.074c-.351-.081-.928-.134-1.58-.134s-1.229.053-1.58.134a1.817 1.817 0 0 0-1.291 1.062.466.466 0 0 1-.471.281 8 8 0 0 0-.129-.012c-.938-.094-1.676-.224-2.105-.377l-.003-.001a.76.76 0 0 1-.492-.713c0-.032.003-.066.005-.098.073-.979.666-3.272 1.552-5.89C8.5 8.609 9.559 6.187 10.037 5.714a1.029 1.029 0 0 1 .404-.26l.004-.002c.314-.106.892-.178 1.554-.178.663 0 1.241.071 1.554.178l.005.002a1.025 1.025 0 0 1 .405.26c.478.472 1.537 2.895 2.549 5.887.886 2.617 1.479 4.91 1.552 5.89.002.032.005.066.005.098a.76.76 0 0 1-.491.713z",source:"https://aircall.io",hex:"00B388"};var cg={title:"American Express",slug:"americanexpress",get svg(){return F1+"American Express"+T1+this.path+P1},path:"M16.015 14.378c0-.32-.135-.496-.344-.622-.21-.12-.464-.135-.81-.135h-1.543v2.82h.675v-1.027h.72c.24 0 .39.024.478.125.12.13.104.38.104.55v.35h.66v-.555c-.002-.25-.017-.376-.108-.516-.06-.08-.18-.18-.33-.234l.02-.008c.18-.072.48-.297.48-.747zm-.87.407l-.028-.002c-.09.053-.195.058-.33.058h-.81v-.63h.824c.12 0 .24 0 .33.05.098.048.156.147.15.255 0 .12-.045.215-.134.27zM20.297 15.837H19v.6h1.304c.676 0 1.05-.278 1.05-.884 0-.28-.066-.448-.187-.582-.153-.133-.392-.193-.73-.207l-.376-.015c-.104 0-.18 0-.255-.03-.09-.03-.15-.105-.15-.21 0-.09.017-.166.09-.21.083-.046.177-.066.272-.06h1.23v-.602h-1.35c-.704 0-.958.437-.958.84 0 .9.776.855 1.407.87.104 0 .18.015.225.06.046.03.082.106.082.18 0 .077-.035.15-.08.18-.06.053-.15.07-.277.07zM0 0v10.096L.81 8.22h1.75l.225.464V8.22h2.043l.45 1.02.437-1.013h6.502c.295 0 .56.057.756.236v-.23h1.787v.23c.307-.17.686-.23 1.12-.23h2.606l.24.466v-.466h1.918l.254.465v-.466h1.858v3.948H20.87l-.36-.6v.585h-2.353l-.256-.63h-.583l-.27.614h-1.213c-.48 0-.84-.104-1.08-.24v.24h-2.89v-.884c0-.12-.03-.12-.105-.135h-.105v1.036H6.067v-.48l-.21.48H4.69l-.202-.48v.465H2.235l-.256-.624H1.4l-.256.624H0V24h23.786v-7.108c-.27.135-.613.18-.973.18H21.09v-.255c-.21.165-.57.255-.914.255H14.71v-.9c0-.12-.018-.12-.12-.12h-.075v1.022h-1.8v-1.066c-.298.136-.643.15-.928.136h-.214v.915h-2.18l-.54-.617-.57.6H4.742v-3.93h3.61l.518.602.554-.6h2.412c.28 0 .74.03.942.225v-.24h2.177c.202 0 .644.045.903.225v-.24h3.265v.24c.163-.164.508-.24.803-.24h1.89v.24c.194-.15.464-.24.84-.24h1.176V0H0zM21.156 14.955c.004.005.006.012.01.016.01.01.024.01.032.02l-.042-.035zM23.828 13.082h.065v.555h-.065zM23.865 15.03v-.005c-.03-.025-.046-.048-.075-.07-.15-.153-.39-.215-.764-.225l-.36-.012c-.12 0-.194-.007-.27-.03-.09-.03-.15-.105-.15-.21 0-.09.03-.16.09-.204.076-.045.15-.05.27-.05h1.223v-.588h-1.283c-.69 0-.96.437-.96.84 0 .9.78.855 1.41.87.104 0 .18.015.224.06.046.03.076.106.076.18 0 .07-.034.138-.09.18-.045.056-.136.07-.27.07h-1.288v.605h1.287c.42 0 .734-.118.9-.36h.03c.09-.134.135-.3.135-.523 0-.24-.045-.39-.135-.526zM18.597 14.208v-.583h-2.235V16.458h2.235v-.585h-1.57v-.57h1.533v-.584h-1.532v-.51M13.51 8.787h.685V11.6h-.684zM13.126 9.543l-.007.006c0-.314-.13-.5-.34-.624-.217-.125-.47-.135-.81-.135H10.43v2.82h.674v-1.034h.72c.24 0 .39.03.487.12.122.136.107.378.107.548v.354h.677v-.553c0-.25-.016-.375-.11-.516-.09-.107-.202-.19-.33-.237.172-.07.472-.3.472-.75zm-.855.396h-.015c-.09.054-.195.056-.33.056H11.1v-.623h.825c.12 0 .24.004.33.05.09.04.15.128.15.25s-.047.22-.134.266zM15.92 9.373h.632v-.6h-.644c-.464 0-.804.105-1.02.33-.286.3-.362.69-.362 1.11 0 .512.123.833.36 1.074.232.238.645.31.97.31h.78l.255-.627h1.39l.262.627h1.36v-2.11l1.272 2.11h.95l.002.002V8.786h-.684v1.963l-1.18-1.96h-1.02V11.4L18.11 8.744h-1.004l-.943 2.22h-.3c-.177 0-.362-.03-.468-.134-.125-.15-.186-.36-.186-.662 0-.285.08-.51.194-.63.133-.135.272-.165.516-.165zm1.668-.108l.464 1.118v.002h-.93l.466-1.12zM2.38 10.97l.254.628H4V9.393l.972 2.205h.584l.973-2.202.015 2.202h.69v-2.81H6.118l-.807 1.904-.876-1.905H3.343v2.663L2.205 8.787h-.997L.01 11.597h.72l.26-.626h1.39zm-.688-1.705l.46 1.118-.003.002h-.915l.457-1.12zM11.856 13.62H9.714l-.85.923-.825-.922H5.346v2.82H8l.855-.932.824.93h1.302v-.94h.838c.6 0 1.17-.164 1.17-.945l-.006-.003c0-.78-.598-.93-1.128-.93zM7.67 15.853l-.014-.002H6.02v-.557h1.47v-.574H6.02v-.51H7.7l.733.82-.764.824zm2.642.33l-1.03-1.147 1.03-1.108v2.253zm1.553-1.258h-.885v-.717h.885c.24 0 .42.098.42.344 0 .243-.15.372-.42.372zM9.967 9.373v-.586H7.73V11.6h2.237v-.58H8.4v-.564h1.527V9.88H8.4v-.507",source:"https://commons.wikimedia.org/wiki/File:American_Express_logo_(2018).svg",hex:"2E77BC"};var vE={title:"Apple Pay",slug:"applepay",get svg(){return F1+"Apple Pay"+T1+this.path+P1},path:"M2.15 4.318a42.16 42.16 0 0 0-.454.003c-.15.005-.303.013-.452.04a1.44 1.44 0 0 0-1.06.772c-.07.138-.114.278-.14.43-.028.148-.037.3-.04.45A10.2 10.2 0 0 0 0 6.222v11.557c0 .07.002.138.003.207.004.15.013.303.04.452.027.15.072.291.142.429a1.436 1.436 0 0 0 .63.63c.138.07.278.115.43.142.148.027.3.036.45.04l.208.003h20.194l.207-.003c.15-.004.303-.013.452-.04.15-.027.291-.071.428-.141a1.432 1.432 0 0 0 .631-.631c.07-.138.115-.278.141-.43.027-.148.036-.3.04-.45.002-.07.003-.138.003-.208l.001-.246V6.221c0-.07-.002-.138-.004-.207a2.995 2.995 0 0 0-.04-.452 1.446 1.446 0 0 0-1.2-1.201 3.022 3.022 0 0 0-.452-.04 10.448 10.448 0 0 0-.453-.003zm0 .512h19.942c.066 0 .131.002.197.003.115.004.25.01.375.032.109.02.2.05.287.094a.927.927 0 0 1 .407.407.997.997 0 0 1 .094.288c.022.123.028.258.031.374.002.065.003.13.003.197v11.552c0 .065 0 .13-.003.196-.003.115-.009.25-.032.375a.927.927 0 0 1-.5.693 1.002 1.002 0 0 1-.286.094 2.598 2.598 0 0 1-.373.032l-.2.003H1.906c-.066 0-.133-.002-.196-.003a2.61 2.61 0 0 1-.375-.032c-.109-.02-.2-.05-.288-.094a.918.918 0 0 1-.406-.407 1.006 1.006 0 0 1-.094-.288 2.531 2.531 0 0 1-.032-.373 9.588 9.588 0 0 1-.002-.197V6.224c0-.065 0-.131.002-.197.004-.114.01-.248.032-.375.02-.108.05-.199.094-.287a.925.925 0 0 1 .407-.406 1.03 1.03 0 0 1 .287-.094c.125-.022.26-.029.375-.032.065-.002.131-.002.196-.003zm4.71 3.7c-.3.016-.668.199-.88.456-.191.22-.36.58-.316.918.338.03.675-.169.888-.418.205-.258.345-.603.308-.955zm2.207.42v5.493h.852v-1.877h1.18c1.078 0 1.835-.739 1.835-1.812 0-1.07-.742-1.805-1.808-1.805zm.852.719h.982c.739 0 1.161.396 1.161 1.089 0 .692-.422 1.092-1.164 1.092h-.979zm-3.154.3c-.45.01-.83.28-1.05.28-.235 0-.593-.264-.981-.257a1.446 1.446 0 0 0-1.23.747c-.527.908-.139 2.255.374 2.995.249.366.549.769.944.754.373-.014.52-.242.973-.242.454 0 .586.242.98.235.41-.007.667-.366.915-.733.286-.417.403-.82.41-.841-.007-.008-.79-.308-.797-1.209-.008-.754.615-1.113.644-1.135-.352-.52-.9-.578-1.09-.593a1.123 1.123 0 0 0-.092-.002zm8.204.397c-.99 0-1.606.533-1.652 1.256h.777c.072-.358.369-.586.845-.586.502 0 .803.266.803.711v.309l-1.097.064c-.951.054-1.488.484-1.488 1.184 0 .72.548 1.207 1.332 1.207.526 0 1.032-.281 1.264-.727h.019v.659h.788v-2.76c0-.803-.62-1.317-1.591-1.317zm1.94.072l1.446 4.009c0 .003-.073.24-.073.247-.125.41-.33.571-.711.571-.069 0-.206 0-.267-.015v.666c.06.011.267.019.335.019.83 0 1.226-.312 1.568-1.283l1.5-4.214h-.868l-1.012 3.259h-.015l-1.013-3.26zm-1.167 2.189v.316c0 .521-.45.917-1.024.917-.442 0-.731-.228-.731-.579 0-.342.278-.56.769-.593z",source:"https://developer.apple.com/apple-pay/marketing",hex:"000000"};var fE={title:"BigCommerce",slug:"bigcommerce",get svg(){return F1+"BigCommerce"+T1+this.path+P1},path:"M12.645 13.663h3.027c.861 0 1.406-.474 1.406-1.235 0-.717-.545-1.234-1.406-1.234h-3.027c-.1 0-.187.086-.187.172v2.125c.015.1.086.172.187.172zm0 4.896h3.128c.961 0 1.535-.488 1.535-1.35 0-.746-.545-1.35-1.535-1.35h-3.128c-.1 0-.187.087-.187.173v2.34c.015.115.086.187.187.187zM23.72.053l-8.953 8.93h1.464c2.281 0 3.63 1.435 3.63 3 0 1.235-.832 2.14-1.722 2.541-.143.058-.143.259.014.316 1.033.402 1.765 1.48 1.765 2.742 0 1.78-1.19 3.202-3.5 3.202h-6.342c-.1 0-.187-.086-.187-.172V13.85L.062 23.64c-.13.13-.043.359.143.359h23.631a.16.16 0 0 0 .158-.158V.182c.043-.158-.158-.244-.273-.13z",source:"https://www.bigcommerce.co.uk/press",hex:"121118",guidelines:"https://www.elastic.co/legal/trademarks"};var bE={title:"Brevo",slug:"brevo",get svg(){return F1+"Brevo"+T1+this.path+P1},path:"M12 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0zM7.2 4.8h5.747c2.34 0 3.895 1.406 3.895 3.516 0 1.022-.348 1.862-1.09 2.588C17.189 11.812 18 13.22 18 14.785c0 2.86-2.64 5.016-6.164 5.016H7.199v-15zm2.085 1.952v5.537h.07c.233-.432.858-.796 2.249-1.226 2.039-.659 3.037-1.52 3.037-2.655 0-.998-.766-1.656-1.924-1.656H9.285zm4.87 5.266c-.766.385-1.67.748-2.76 1.11-1.229.387-2.11 1.386-2.11 2.407v2.315h2.365c2.387 0 4.149-1.34 4.149-3.155 0-1.067-.625-2.087-1.645-2.677z",source:"https://www.brevo.com",hex:"0B996E"};var xE={title:"Calendly",slug:"calendly",get svg(){return F1+"Calendly"+T1+this.path+P1},path:"M19.655 14.262c.281 0 .557.023.828.064 0 .005-.005.01-.005.014-.105.267-.234.534-.381.786l-1.219 2.106c-1.112 1.936-3.177 3.127-5.411 3.127h-2.432c-2.23 0-4.294-1.191-5.412-3.127l-1.218-2.106a6.251 6.251 0 0 1 0-6.252l1.218-2.106C6.736 4.832 8.8 3.641 11.035 3.641h2.432c2.23 0 4.294 1.191 5.411 3.127l1.219 2.106c.147.252.271.519.381.786 0 .004.005.009.005.014-.267.041-.543.064-.828.064-1.816 0-2.501-.607-3.291-1.306-.764-.676-1.711-1.517-3.44-1.517h-1.029c-1.251 0-2.387.455-3.2 1.278-.796.805-1.233 1.904-1.233 3.099v1.411c0 1.196.437 2.295 1.233 3.099.813.823 1.949 1.278 3.2 1.278h1.034c1.729 0 2.676-.841 3.439-1.517.791-.703 1.471-1.306 3.287-1.301Zm.005-3.237c.399 0 .794-.036 1.179-.11-.002-.004-.002-.01-.002-.014-.073-.414-.193-.823-.349-1.218.731-.12 1.407-.396 1.986-.819 0-.004-.005-.013-.005-.018-.331-1.085-.832-2.101-1.489-3.03-.649-.915-1.435-1.719-2.331-2.395-1.867-1.398-4.088-2.138-6.428-2.138-1.448 0-2.855.28-4.175.841-1.273.543-2.423 1.315-3.407 2.299S2.878 6.552 2.341 7.83c-.557 1.324-.842 2.726-.842 4.175 0 1.448.281 2.855.842 4.174.542 1.274 1.314 2.423 2.298 3.407s2.129 1.761 3.407 2.299c1.324.556 2.727.841 4.175.841 2.34 0 4.561-.74 6.428-2.137a10.815 10.815 0 0 0 2.331-2.396c.652-.929 1.158-1.949 1.489-3.03 0-.004.005-.014.005-.018-.579-.423-1.255-.699-1.986-.819.161-.395.276-.804.349-1.218.005-.009.005-.014.005-.023.869.166 1.692.506 2.404 1.035.685.505.552 1.075.446 1.416C22.184 20.437 17.619 24 12.221 24c-6.625 0-12-5.375-12-12s5.37-12 12-12c5.398 0 9.963 3.563 11.471 8.464.106.341.239.915-.446 1.421-.717.529-1.535.873-2.404 1.034.128.716.128 1.45 0 2.166-.387-.074-.782-.11-1.182-.11-4.184 0-3.968 2.823-6.736 2.823h-1.029c-1.899 0-3.15-1.357-3.15-3.095v-1.411c0-1.738 1.251-3.094 3.15-3.094h1.034c2.768 0 2.552 2.823 6.731 2.827Z",source:"https://calendly.com/newsroom",hex:"006BFF",guidelines:"https://calendly.com/newsroom"};var zE={title:"Campaign Monitor",slug:"campaignmonitor",get svg(){return F1+"Campaign Monitor"+T1+this.path+P1},path:"M23.836 4.27c-.29-.413-.86-.515-1.273-.226L.163 19.73c.167.235.437.39.747.39h22.18c.503 0 .91-.41.91-.914V4.78c-.004-.176-.058-.352-.164-.51zm-22.4-.226c-.413-.29-.982-.19-1.272.226-.107.154-.162.332-.164.51v14.45l10.664-8.736-9.227-6.45v-.002z",source:"https://www.campaignmonitor.com/company/brand/",hex:"111324"};var yE={title:"DHL",slug:"dhl",get svg(){return F1+"DHL"+T1+this.path+P1},path:"M4.22 10.303l-.767 1.043h4.18c.21 0 .208.078.105.218-.105.142-.28.39-.386.534-.054.073-.154.207.171.207h1.71l.505-.69c.314-.426.028-1.312-1.095-1.312H4.22zm7.204 0l-1.475 2.002h5.39l1.473-2.002H14.61l-.843 1.146h-.985l.846-1.146h-2.203zm6.105 0l-1.474 2.002h2.334l1.472-2.002H17.53zm-12.845 1.3l-1.54 2.094h3.754c1.24 0 1.932-.844 2.145-1.136h-2.56c-.326 0-.226-.133-.172-.207.107-.143.283-.388.388-.53.104-.14.107-.22-.105-.22h-1.91zM0 12.562v.242h3.398l.176-.242H0zm9.762 0l-.836 1.136h2.203l.836-1.136H9.762zm3.185 0l-.836 1.136h2.203l.836-1.136h-2.203zm2.918 0s-.159.22-.238.326c-.276.374-.033.81.87.81h3.538l.834-1.136h-5.004zm5.408 0l-.177.242H24v-.242h-2.727zM0 13.01v.24h3.068l.178-.24H0zm20.943 0l-.175.24H24v-.24h-3.057zM0 13.457v.24h2.74l.176-.24H0zm20.615 0l-.177.24H24v-.24h-3.385z",source:"https://www.dpdhl-brands.com/dhl/en/guides/design-basics/logo-and-claim.html",hex:"FFCC00",guidelines:"https://www.dpdhl-brands.com/dhl/en/guides/design-basics/logo-and-claim.html"};var wE={title:"Dropbox",slug:"dropbox",get svg(){return F1+"Dropbox"+T1+this.path+P1},path:"M6 1.807L0 5.629l6 3.822 6.001-3.822L6 1.807zM18 1.807l-6 3.822 6 3.822 6-3.822-6-3.822zM0 13.274l6 3.822 6.001-3.822L6 9.452l-6 3.822zM18 9.452l-6 3.822 6 3.822 6-3.822-6-3.822zM6 18.371l6.001 3.822 6-3.822-6-3.822L6 18.371z",source:"https://www.dropbox.com/branding",hex:"0061FF"};var CE={title:"eBay",slug:"ebay",get svg(){return F1+"eBay"+T1+this.path+P1},path:"M6.056 12.132v-4.92h1.2v3.026c.59-.703 1.402-.906 2.202-.906 1.34 0 2.828.904 2.828 2.855 0 .233-.015.457-.06.668.24-.953 1.274-1.305 2.896-1.344.51-.018 1.095-.018 1.56-.018v-.135c0-.885-.556-1.244-1.53-1.244-.72 0-1.245.3-1.305.81h-1.275c.136-1.29 1.5-1.62 2.686-1.62 1.064 0 1.995.27 2.415 1.02l-.436-.84h1.41l2.055 4.125 2.055-4.126H24l-3.72 7.305h-1.346l1.07-2.04-2.33-4.38c.13.255.2.555.2.93v2.46c0 .346.01.69.04 1.005H16.8a6.543 6.543 0 01-.046-.765c-.603.734-1.32.96-2.32.96-1.48 0-2.272-.78-2.272-1.695 0-.15.015-.284.037-.405-.3 1.246-1.36 2.086-2.767 2.086-.87 0-1.694-.315-2.2-.93 0 .24-.015.494-.04.734h-1.18c.02-.39.04-.855.04-1.245v-1.05h-4.83c.065 1.095.818 1.74 1.853 1.74.718 0 1.355-.3 1.568-.93h1.24c-.24 1.29-1.61 1.725-2.79 1.725C.95 15.009 0 13.822 0 12.232c0-1.754.982-2.91 3.116-2.91 1.688 0 2.93.886 2.94 2.806v.005zm9.137.183c-1.095.034-1.77.233-1.77.95 0 .465.36.97 1.305.97 1.26 0 1.935-.69 1.935-1.814v-.13c-.45 0-.99.006-1.484.022h.012zm-6.06 1.875c1.11 0 1.876-.806 1.876-2.02s-.768-2.02-1.893-2.02c-1.11 0-1.89.806-1.89 2.02s.765 2.02 1.875 2.02h.03zm-4.35-2.514c-.044-1.125-.854-1.546-1.725-1.546-.944 0-1.694.474-1.815 1.546z",source:"https://go.developer.ebay.com/logos",hex:"E53238"};var kE={title:"Etsy",slug:"etsy",get svg(){return F1+"Etsy"+T1+this.path+P1},path:"M8.559 2.445c0-.325.033-.52.59-.52h7.465c1.3 0 2.02 1.11 2.54 3.193l.42 1.666h1.27c.23-4.728.43-6.784.43-6.784s-3.196.36-5.09.36H6.635L1.521.196v1.37l1.725.326c1.21.24 1.5.496 1.6 1.606 0 0 .11 3.27.11 8.64 0 5.385-.09 8.61-.09 8.61 0 .973-.39 1.333-1.59 1.573l-1.722.33V24l5.13-.165h8.55c1.935 0 6.39.165 6.39.165.105-1.17.75-6.48.855-7.064h-1.2l-1.284 2.91c-1.005 2.28-2.476 2.445-4.11 2.445h-4.906c-1.63 0-2.415-.64-2.415-2.05V12.8s3.62 0 4.79.096c.912.064 1.463.325 1.76 1.598l.39 1.695h1.41l-.09-4.278.192-4.305h-1.391l-.45 1.89c-.283 1.244-.48 1.47-1.754 1.6-1.666.17-4.815.14-4.815.14V2.45h-.05z",source:"https://www.etsy.com/uk/press",hex:"F16521"};var ME={title:"Facebook",slug:"facebook",get svg(){return F1+"Facebook"+T1+this.path+P1},path:"M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z",source:"https://about.meta.com/brand/resources/facebook/logo",hex:"0866FF",guidelines:"https://about.meta.com/brand/resources/facebook/logo"};var SE={title:"FedEx",slug:"fedex",get svg(){return F1+"FedEx"+T1+this.path+P1},path:"M22.498 14.298c-.016-.414.345-.751.75-.755a.745.745 0 0 1 .752.755.755.755 0 0 1-.751.745c-.395.002-.759-.346-.751-.745zm.759-.083c.067-.02.164-.042.162-.13.007-.09-.086-.133-.162-.134h-.163v.263c0 .001.165-.002.163.001zm-.163.107v.418h-.14v-.91h.327c.156-.021.294.092.286.253a.218.218 0 0 1-.156.19c.162.083.108.322.173.467h-.156a2.355 2.355 0 0 1-.04-.205c-.018-.093-.047-.229-.17-.213h-.124zm.76-.024a.603.603 0 0 0-.605-.632c-.338-.012-.62.302-.605.632a.619.619 0 0 0 .605.622.61.61 0 0 0 .605-.622zm-5.052-.579l-.878 1.008h-1.306l1.559-1.745-1.56-1.75h1.355l.902.997.878-.998h1.306l-1.543 1.743 1.559 1.753h-1.371l-.901-1.008zm-4.703-.352v-.827h1.904v-1.506l1.724 1.948-1.724 1.941v-1.556h-1.904zm1.56 1.36h-3.2V9.044h3.224v1.024H13.77v1.163h1.888v.958h-1.904v1.522h1.904v1.016zm-5.705-.655c-.54.017-.878-.552-.877-1.04-.01-.507.307-1.123.878-1.105.579-.025.871.6.845 1.103.023.501-.29 1.062-.846 1.042zM4.743 12.41c.076-.358.403-.67.78-.663a.788.788 0 0 1 .803.663H4.743zm15.182.564l1.815-2.047h-2.125l-.74.844-.763-.844h-4.037v-.548h1.912V8.741H10.84v2.58c-.362-.448-.981-.559-1.526-.492-.782.123-1.427.762-1.634 1.514-.254-.958-1.179-1.588-2.157-1.554-.781.009-1.6.365-1.987 1.071v-.818h-1.87v-.9h2.043v-1.4H0v6.287h1.666v-2.644h1.666a7.59 7.59 0 0 0-.082.622c-.013 1.232 1.042 2.27 2.274 2.236a2.204 2.204 0 0 0 2.157-1.432H6.254c-.14.268-.441.38-.73.36-.457.009-.83-.417-.829-.86h2.914c.083 1.027.988 1.966 2.043 1.947a1.53 1.53 0 0 0 1.19-.639v.41h7.215l.754-.86.754.86h2.192l-1.832-2.055z",source:"https://newsroom.fedex.com",hex:"4D148C"};var LE={title:"Gmail",slug:"gmail",get svg(){return F1+"Gmail"+T1+this.path+P1},path:"M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z",source:"https://fonts.gstatic.com/s/i/productlogos/gmail_2020q4/v8/192px.svg",hex:"EA4335"};var AE={title:"Google Ads",slug:"googleads",get svg(){return F1+"Google Ads"+T1+this.path+P1},path:"M3.9998 22.9291C1.7908 22.9291 0 21.1383 0 18.9293s1.7908-3.9998 3.9998-3.9998 3.9998 1.7908 3.9998 3.9998-1.7908 3.9998-3.9998 3.9998zm19.4643-6.0004L15.4632 3.072C14.3586 1.1587 11.9121.5028 9.9988 1.6074S7.4295 5.1585 8.5341 7.0718l8.0009 13.8567c1.1046 1.9133 3.5511 2.5679 5.4644 1.4646 1.9134-1.1046 2.568-3.5511 1.4647-5.4644zM7.5137 4.8438L1.5645 15.1484A4.5 4.5 0 0 1 4 14.4297c2.5597-.0075 4.6248 2.1585 4.4941 4.7148l3.2168-5.5723-3.6094-6.25c-.4499-.7793-.6322-1.6394-.5878-2.4784z",source:"https://ads.google.com/home/",hex:"4285F4"};var HE={title:"Google Analytics",slug:"googleanalytics",get svg(){return F1+"Google Analytics"+T1+this.path+P1},path:"M22.84 2.9982v17.9987c.0086 1.6473-1.3197 2.9897-2.967 2.9984a2.9808 2.9808 0 01-.3677-.0208c-1.528-.226-2.6477-1.5558-2.6105-3.1V3.1204c-.0369-1.5458 1.0856-2.8762 2.6157-3.1 1.6361-.1915 3.1178.9796 3.3093 2.6158.014.1201.0208.241.0202.3619zM4.1326 18.0548c-1.6417 0-2.9726 1.331-2.9726 2.9726C1.16 22.6691 2.4909 24 4.1326 24s2.9726-1.3309 2.9726-2.9726-1.331-2.9726-2.9726-2.9726zm7.8728-9.0098c-.0171 0-.0342 0-.0513.0003-1.6495.0904-2.9293 1.474-2.891 3.1256v7.9846c0 2.167.9535 3.4825 2.3505 3.763 1.6118.3266 3.1832-.7152 3.5098-2.327.04-.1974.06-.3983.0593-.5998v-8.9585c.003-1.6474-1.33-2.9852-2.9773-2.9882z",source:"https://marketingplatform.google.com/intl/en_uk/about/analytics/",hex:"E37400"};var FE={title:"Google Calendar",slug:"googlecalendar",get svg(){return F1+"Google Calendar"+T1+this.path+P1},path:"M18.316 5.684H24v12.632h-5.684V5.684zM5.684 24h12.632v-5.684H5.684V24zM18.316 5.684V0H1.895A1.894 1.894 0 0 0 0 1.895v16.421h5.684V5.684h12.632zm-7.207 6.25v-.065c.272-.144.5-.349.687-.617s.279-.595.279-.982c0-.379-.099-.72-.3-1.025a2.05 2.05 0 0 0-.832-.714 2.703 2.703 0 0 0-1.197-.257c-.6 0-1.094.156-1.481.467-.386.311-.65.671-.793 1.078l1.085.452c.086-.249.224-.461.413-.633.189-.172.445-.257.767-.257.33 0 .602.088.816.264a.86.86 0 0 1 .322.703c0 .33-.12.589-.36.778-.24.19-.535.284-.886.284h-.567v1.085h.633c.407 0 .748.109 1.02.327.272.218.407.499.407.843 0 .336-.129.614-.387.832s-.565.327-.924.327c-.351 0-.651-.103-.897-.311-.248-.208-.422-.502-.521-.881l-1.096.452c.178.616.505 1.082.977 1.401.472.319.984.478 1.538.477a2.84 2.84 0 0 0 1.293-.291c.382-.193.684-.458.902-.794.218-.336.327-.72.327-1.149 0-.429-.115-.797-.344-1.105a2.067 2.067 0 0 0-.881-.689zm2.093-1.931l.602.913L15 10.045v5.744h1.187V8.446h-.827l-2.158 1.557zM22.105 0h-3.289v5.184H24V1.895A1.894 1.894 0 0 0 22.105 0zm-3.289 23.5l4.684-4.684h-4.684V23.5zM0 22.105C0 23.152.848 24 1.895 24h3.289v-5.184H0v3.289z",source:"https://fonts.gstatic.com/s/i/productlogos/calendar_2020q4/v8/192px.svg",hex:"4285F4"};var TE={title:"Google Drive",slug:"googledrive",get svg(){return F1+"Google Drive"+T1+this.path+P1},path:"M12.01 1.485c-2.082 0-3.754.02-3.743.047.01.02 1.708 3.001 3.774 6.62l3.76 6.574h3.76c2.081 0 3.753-.02 3.742-.047-.005-.02-1.708-3.001-3.775-6.62l-3.76-6.574zm-4.76 1.73a789.828 789.861 0 0 0-3.63 6.319L0 15.868l1.89 3.298 1.885 3.297 3.62-6.335 3.618-6.33-1.88-3.287C8.1 4.704 7.255 3.22 7.25 3.214zm2.259 12.653-.203.348c-.114.198-.96 1.672-1.88 3.287a423.93 423.948 0 0 1-1.698 2.97c-.01.026 3.24.042 7.222.042h7.244l1.796-3.157c.992-1.734 1.85-3.23 1.906-3.323l.104-.167h-7.249z",source:"https://developers.google.com/drive/web/branding",hex:"4285F4"};var PE={title:"Google Pay",slug:"googlepay",get svg(){return F1+"Google Pay"+T1+this.path+P1},path:"M3.963 7.235A3.963 3.963 0 00.422 9.419a3.963 3.963 0 000 3.559 3.963 3.963 0 003.541 2.184c1.07 0 1.97-.352 2.627-.957.748-.69 1.18-1.71 1.18-2.916a4.722 4.722 0 00-.07-.806H3.964v1.526h2.14a1.835 1.835 0 01-.79 1.205c-.356.241-.814.379-1.35.379-1.034 0-1.911-.697-2.225-1.636a2.375 2.375 0 010-1.517c.314-.94 1.191-1.636 2.225-1.636a2.152 2.152 0 011.52.594l1.132-1.13a3.808 3.808 0 00-2.652-1.033zm6.501.55v6.9h.886V11.89h1.465c.603 0 1.11-.196 1.522-.588a1.911 1.911 0 00.635-1.464 1.92 1.92 0 00-.635-1.456 2.125 2.125 0 00-1.522-.598zm2.427.85a1.156 1.156 0 01.823.365 1.176 1.176 0 010 1.686 1.171 1.171 0 01-.877.357H11.35V8.635h1.487a1.156 1.156 0 01.054 0zm4.124 1.175c-.842 0-1.477.308-1.907.925l.781.491c.288-.417.68-.626 1.175-.626a1.255 1.255 0 01.856.323 1.009 1.009 0 01.366.785v.202c-.34-.193-.774-.289-1.3-.289-.617 0-1.11.145-1.479.434-.37.288-.554.677-.554 1.165a1.476 1.476 0 00.525 1.156c.35.308.785.463 1.305.463.61 0 1.098-.27 1.465-.81h.038v.655h.848v-2.909c0-.61-.19-1.09-.568-1.44-.38-.35-.896-.525-1.551-.525zm2.263.154l1.946 4.422-1.098 2.38h.915L24 9.963h-.965l-1.368 3.391h-.02l-1.406-3.39zm-2.146 2.368c.494 0 .88.11 1.156.33 0 .372-.147.696-.44.973a1.413 1.413 0 01-.997.414 1.081 1.081 0 01-.69-.232.708.708 0 01-.293-.578c0-.257.12-.47.363-.647.24-.173.54-.26.9-.26Z",source:"https://pay.google.com/intl/en_us/about/",hex:"4285F4"};var EE={title:"Google Sheets",slug:"googlesheets",get svg(){return F1+"Google Sheets"+T1+this.path+P1},path:"M11.318 12.545H7.91v-1.909h3.41v1.91zM14.728 0v6h6l-6-6zm1.363 10.636h-3.41v1.91h3.41v-1.91zm0 3.273h-3.41v1.91h3.41v-1.91zM20.727 6.5v15.864c0 .904-.732 1.636-1.636 1.636H4.909a1.636 1.636 0 0 1-1.636-1.636V1.636C3.273.732 4.005 0 4.909 0h9.318v6.5h6.5zm-3.273 2.773H6.545v7.909h10.91v-7.91zm-6.136 4.636H7.91v1.91h3.41v-1.91z",source:"https://sheets.google.com",hex:"34A853"};var VE={title:"HubSpot",slug:"hubspot",get svg(){return F1+"HubSpot"+T1+this.path+P1},path:"M18.164 7.93V5.084a2.198 2.198 0 001.267-1.978v-.067A2.2 2.2 0 0017.238.845h-.067a2.2 2.2 0 00-2.193 2.193v.067a2.196 2.196 0 001.252 1.973l.013.006v2.852a6.22 6.22 0 00-2.969 1.31l.012-.01-7.828-6.095A2.497 2.497 0 104.3 4.656l-.012.006 7.697 5.991a6.176 6.176 0 00-1.038 3.446c0 1.343.425 2.588 1.147 3.607l-.013-.02-2.342 2.343a1.968 1.968 0 00-.58-.095h-.002a2.033 2.033 0 102.033 2.033 1.978 1.978 0 00-.1-.595l.005.014 2.317-2.317a6.247 6.247 0 104.782-11.134l-.036-.005zm-.964 9.378a3.206 3.206 0 113.215-3.207v.002a3.206 3.206 0 01-3.207 3.207z",source:"https://www.hubspot.com/style-guide",hex:"FF7A59",guidelines:"https://www.hubspot.com/style-guide"};var NE={title:"Instagram",slug:"instagram",get svg(){return F1+"Instagram"+T1+this.path+P1},path:"M7.0301.084c-1.2768.0602-2.1487.264-2.911.5634-.7888.3075-1.4575.72-2.1228 1.3877-.6652.6677-1.075 1.3368-1.3802 2.127-.2954.7638-.4956 1.6365-.552 2.914-.0564 1.2775-.0689 1.6882-.0626 4.947.0062 3.2586.0206 3.6671.0825 4.9473.061 1.2765.264 2.1482.5635 2.9107.308.7889.72 1.4573 1.388 2.1228.6679.6655 1.3365 1.0743 2.1285 1.38.7632.295 1.6361.4961 2.9134.552 1.2773.056 1.6884.069 4.9462.0627 3.2578-.0062 3.668-.0207 4.9478-.0814 1.28-.0607 2.147-.2652 2.9098-.5633.7889-.3086 1.4578-.72 2.1228-1.3881.665-.6682 1.0745-1.3378 1.3795-2.1284.2957-.7632.4966-1.636.552-2.9124.056-1.2809.0692-1.6898.063-4.948-.0063-3.2583-.021-3.6668-.0817-4.9465-.0607-1.2797-.264-2.1487-.5633-2.9117-.3084-.7889-.72-1.4568-1.3876-2.1228C21.2982 1.33 20.628.9208 19.8378.6165 19.074.321 18.2017.1197 16.9244.0645 15.6471.0093 15.236-.005 11.977.0014 8.718.0076 8.31.0215 7.0301.0839m.1402 21.6932c-1.17-.0509-1.8053-.2453-2.2287-.408-.5606-.216-.96-.4771-1.3819-.895-.422-.4178-.6811-.8186-.9-1.378-.1644-.4234-.3624-1.058-.4171-2.228-.0595-1.2645-.072-1.6442-.079-4.848-.007-3.2037.0053-3.583.0607-4.848.05-1.169.2456-1.805.408-2.2282.216-.5613.4762-.96.895-1.3816.4188-.4217.8184-.6814 1.3783-.9003.423-.1651 1.0575-.3614 2.227-.4171 1.2655-.06 1.6447-.072 4.848-.079 3.2033-.007 3.5835.005 4.8495.0608 1.169.0508 1.8053.2445 2.228.408.5608.216.96.4754 1.3816.895.4217.4194.6816.8176.9005 1.3787.1653.4217.3617 1.056.4169 2.2263.0602 1.2655.0739 1.645.0796 4.848.0058 3.203-.0055 3.5834-.061 4.848-.051 1.17-.245 1.8055-.408 2.2294-.216.5604-.4763.96-.8954 1.3814-.419.4215-.8181.6811-1.3783.9-.4224.1649-1.0577.3617-2.2262.4174-1.2656.0595-1.6448.072-4.8493.079-3.2045.007-3.5825-.006-4.848-.0608M16.953 5.5864A1.44 1.44 0 1 0 18.39 4.144a1.44 1.44 0 0 0-1.437 1.4424M5.8385 12.012c.0067 3.4032 2.7706 6.1557 6.173 6.1493 3.4026-.0065 6.157-2.7701 6.1506-6.1733-.0065-3.4032-2.771-6.1565-6.174-6.1498-3.403.0067-6.156 2.771-6.1496 6.1738M8 12.0077a4 4 0 1 1 4.008 3.9921A3.9996 3.9996 0 0 1 8 12.0077",source:"https://about.meta.com/brand/resources/instagram",hex:"FF0069",guidelines:"https://about.meta.com/brand/resources/instagram"};var _E={title:"Intercom",slug:"intercom",get svg(){return F1+"Intercom"+T1+this.path+P1},path:"M21 0H3C1.343 0 0 1.343 0 3v18c0 1.658 1.343 3 3 3h18c1.658 0 3-1.342 3-3V3c0-1.657-1.342-3-3-3zm-5.801 4.399c0-.44.36-.8.802-.8.44 0 .8.36.8.8v10.688c0 .442-.36.801-.8.801-.443 0-.802-.359-.802-.801V4.399zM11.2 3.994c0-.44.357-.799.8-.799s.8.359.8.799v11.602c0 .44-.357.8-.8.8s-.8-.36-.8-.8V3.994zm-4 .405c0-.44.359-.8.799-.8.443 0 .802.36.802.8v10.688c0 .442-.36.801-.802.801-.44 0-.799-.359-.799-.801V4.399zM3.199 6c0-.442.36-.8.802-.8.44 0 .799.358.799.8v7.195c0 .441-.359.8-.799.8-.443 0-.802-.36-.802-.8V6zM20.52 18.202c-.123.105-3.086 2.593-8.52 2.593-5.433 0-8.397-2.486-8.521-2.593-.335-.288-.375-.792-.086-1.128.285-.334.79-.375 1.125-.09.047.041 2.693 2.211 7.481 2.211 4.848 0 7.456-2.186 7.479-2.207.334-.289.839-.25 1.128.086.289.336.25.84-.086 1.128zm.281-5.007c0 .441-.36.8-.801.8-.441 0-.801-.36-.801-.8V6c0-.442.361-.8.801-.8.441 0 .801.357.801.8v7.195z",source:"https://www.intercom.com/press",hex:"6AFDEF",guidelines:"https://www.intercom.com/press"};var IE={title:"Klarna",slug:"klarna",get svg(){return F1+"Klarna"+T1+this.path+P1},path:"M4.592 2v20H0V2h4.592zm11.46 0c0 4.194-1.583 8.105-4.415 11.068l-.278.283L17.702 22h-5.668l-6.893-9.4 1.779-1.332c2.858-2.14 4.535-5.378 4.637-8.924L11.562 2h4.49zM21.5 17a2.5 2.5 0 110 5 2.5 2.5 0 010-5z",source:"https://klarna.design",hex:"FFB3C7"};var RE={title:"MailChimp",slug:"mailchimp",get svg(){return F1+"MailChimp"+T1+this.path+P1},path:"M11.267 0C6.791-.015-1.82 10.246 1.397 12.964l.79.669a3.88 3.88 0 0 0-.22 1.792c.084.84.518 1.644 1.22 2.266.666.59 1.542.964 2.392.964 1.406 3.24 4.62 5.228 8.386 5.34 4.04.12 7.433-1.776 8.854-5.182.093-.24.488-1.316.488-2.267 0-.956-.54-1.352-.885-1.352-.01-.037-.078-.286-.172-.586-.093-.3-.19-.51-.19-.51.375-.563.382-1.065.332-1.35-.053-.353-.2-.653-.496-.964-.296-.311-.902-.63-1.753-.868l-.446-.124c-.002-.019-.024-1.053-.043-1.497-.014-.32-.042-.822-.197-1.315-.186-.668-.508-1.253-.911-1.627 1.112-1.152 1.806-2.422 1.804-3.511-.003-2.095-2.576-2.729-5.746-1.416l-.672.285A678.22 678.22 0 0 0 12.7.504C12.304.159 11.817.002 11.267 0zm.073.873c.166 0 .322.019.465.058.297.084 1.28 1.224 1.28 1.224s-1.826 1.013-3.52 2.426c-2.28 1.757-4.005 4.311-5.037 7.082-.811.158-1.526.618-1.963 1.253-.261-.218-.748-.64-.834-.804-.698-1.326.761-3.902 1.781-5.357C5.834 3.44 9.37.867 11.34.873zm3.286 3.273c.04-.002.06.05.028.074-.143.11-.299.26-.413.414a.04.04 0 0 0 .031.064c.659.004 1.587.235 2.192.574.041.023.012.103-.034.092-.915-.21-2.414-.369-3.97.01-1.39.34-2.45.863-3.224 1.426-.04.028-.086-.023-.055-.06.896-1.035 1.999-1.935 2.987-2.44.034-.018.07.019.052.052-.079.143-.23.447-.278.678-.007.035.032.063.062.042.615-.42 1.684-.868 2.622-.926zm3.023 3.205l.056.001a.896.896 0 0 1 .456.146c.534.355.61 1.216.638 1.845.015.36.059 1.229.074 1.478.034.571.184.651.487.751.17.057.33.098.563.164.706.198 1.125.4 1.39.658.157.162.23.333.253.497.083.608-.472 1.36-1.942 2.041-1.607.746-3.557.935-4.904.785l-.471-.053c-1.078-.145-1.693 1.247-1.046 2.201.417.615 1.552 1.015 2.688 1.015 2.604 0 4.605-1.111 5.35-2.072a.987.987 0 0 0 .06-.085c.036-.055.006-.085-.04-.054-.608.416-3.31 2.069-6.2 1.571 0 0-.351-.057-.672-.182-.255-.1-.788-.344-.853-.891 2.333.72 3.801.039 3.801.039a.072.072 0 0 0 .042-.072.067.067 0 0 0-.074-.06s-1.911.283-3.718-.378c.197-.64.72-.408 1.51-.345a11.045 11.045 0 0 0 3.647-.394c.818-.234 1.892-.697 2.727-1.356.281.618.38 1.299.38 1.299s.219-.04.4.073c.173.106.299.326.213.895-.176 1.063-.628 1.926-1.387 2.72a5.714 5.714 0 0 1-1.666 1.244c-.34.18-.704.334-1.087.46-2.863.935-5.794-.093-6.739-2.3a3.545 3.545 0 0 1-.189-.522c-.403-1.455-.06-3.2 1.008-4.299.065-.07.132-.153.132-.256 0-.087-.055-.179-.102-.243-.374-.543-1.669-1.466-1.409-3.254.187-1.284 1.31-2.189 2.357-2.135.089.004.177.01.266.015.453.027.85.085 1.223.1.625.028 1.187-.063 1.853-.618.225-.187.405-.35.71-.401.028-.005.092-.028.215-.028zm.022 2.18a.42.42 0 0 0-.06.005c-.335.054-.347.468-.228 1.04.068.32.187.595.32.765.175-.02.343-.022.498 0 .089-.205.104-.557.024-.942-.112-.535-.261-.872-.554-.868zm-3.66 1.546a1.724 1.724 0 0 0-1.016.326c-.16.117-.311.28-.29.378.008.032.031.056.088.063.131.015.592-.217 1.122-.25.374-.023.684.094.923.2.239.104.386.173.443.113.037-.038.026-.11-.031-.204-.118-.192-.36-.387-.618-.497a1.601 1.601 0 0 0-.621-.129zm4.082.81c-.171-.003-.313.186-.317.42-.004.236.131.43.303.432.172.003.314-.185.318-.42.004-.236-.132-.429-.304-.432zm-3.58.172c-.05 0-.102.002-.155.008-.311.05-.483.152-.593.247-.094.082-.152.173-.152.237a.075.075 0 0 0 .075.076c.07 0 .228-.063.228-.063a1.98 1.98 0 0 1 1.001-.104c.157.018.23.027.265-.026.01-.016.022-.049-.01-.1-.063-.103-.311-.269-.66-.275zm2.26.4c-.127 0-.235.051-.283.148-.075.154.035.363.246.466.21.104.443.063.52-.09.075-.155-.035-.364-.246-.467a.542.542 0 0 0-.237-.058zm-11.635.024c.048 0 .098 0 .149.003.73.04 1.806.6 2.052 2.19.217 1.41-.128 2.843-1.449 3.069-.123.02-.248.029-.374.026-1.22-.033-2.539-1.132-2.67-2.435-.145-1.44.591-2.548 1.894-2.811.117-.024.252-.04.398-.042zm-.07.927a1.144 1.144 0 0 0-.847.364c-.38.418-.439.988-.366 1.19.027.073.07.094.1.098.064.008.16-.039.22-.2a1.2 1.2 0 0 0 .017-.052 1.58 1.58 0 0 1 .157-.37.689.689 0 0 1 .955-.199c.266.174.369.5.255.81-.058.161-.154.469-.133.721.043.511.357.717.64.738.274.01.466-.143.515-.256.029-.067.005-.107-.011-.125-.043-.053-.113-.037-.18-.021a.638.638 0 0 1-.16.022.347.347 0 0 1-.294-.148c-.078-.12-.073-.3.013-.504.011-.028.025-.058.04-.092.138-.308.368-.825.11-1.317-.195-.37-.513-.602-.894-.65a1.135 1.135 0 0 0-.138-.01z",source:"https://mailchimp.com/about/brand-assets",hex:"FFE01B",guidelines:"https://mailchimp.com/about/brand-assets"},BE={title:"Mailgun",slug:"mailgun",get svg(){return F1+"Mailgun"+T1+this.path+P1},path:"M11.837 0c6.602 0 11.984 5.381 11.984 11.994-.017 2.99-3.264 4.84-5.844 3.331a3.805 3.805 0 0 1-.06-.035l-.055-.033-.022.055c-2.554 4.63-9.162 4.758-11.894.232-2.732-4.527.46-10.313 5.746-10.416a6.868 6.868 0 0 1 7.002 6.866 1.265 1.265 0 0 0 2.52 0c0-5.18-4.197-9.38-9.377-9.387C4.611 2.594.081 10.41 3.683 16.673c3.238 5.632 11.08 6.351 15.289 1.402l1.997 1.686A11.95 11.95 0 0 1 11.837 24C2.6 23.72-2.87 13.543 1.992 5.684A12.006 12.006 0 0 1 11.837 0Zm0 7.745c-3.276-.163-5.5 3.281-4.003 6.2a4.26 4.26 0 0 0 4.014 2.31c3.276-.171 5.137-3.824 3.35-6.575a4.26 4.26 0 0 0-3.36-1.935Zm0 2.53c1.324 0 2.152 1.433 1.49 2.58a1.72 1.72 0 0 1-1.49.86 1.72 1.72 0 1 1 0-3.44Z",source:"https://mailgun.com",hex:"F06B66"};var ZE={title:"Make",slug:"make",get svg(){return F1+"Make"+T1+this.path+P1},path:"M13.38 3.498c-.27 0-.511.19-.566.465L9.85 18.986a.578.578 0 0 0 .453.678l4.095.826a.58.58 0 0 0 .682-.455l2.963-15.021a.578.578 0 0 0-.453-.678l-4.096-.826a.589.589 0 0 0-.113-.012zm-5.876.098a.576.576 0 0 0-.516.318L.062 17.697a.575.575 0 0 0 .256.774l3.733 1.877a.578.578 0 0 0 .775-.258l6.926-13.781a.577.577 0 0 0-.256-.776L7.762 3.658a.571.571 0 0 0-.258-.062zm11.74.115a.576.576 0 0 0-.576.576v15.426c0 .318.258.578.576.578h4.178a.58.58 0 0 0 .578-.578V4.287a.578.578 0 0 0-.578-.576Z",source:"https://www.make.com/en/press",hex:"6D00CC",guidelines:"https://www.make.com/en/press"};var DE={title:"MasterCard",slug:"mastercard",get svg(){return F1+"MasterCard"+T1+this.path+P1},path:"M11.343 18.031c.058.049.12.098.181.146-1.177.783-2.59 1.238-4.107 1.238C3.32 19.416 0 16.096 0 12c0-4.095 3.32-7.416 7.416-7.416 1.518 0 2.931.456 4.105 1.238-.06.051-.12.098-.165.15C9.6 7.489 8.595 9.688 8.595 12c0 2.311 1.001 4.51 2.748 6.031zm5.241-13.447c-1.52 0-2.931.456-4.105 1.238.06.051.12.098.165.15C14.4 7.489 15.405 9.688 15.405 12c0 2.31-1.001 4.507-2.748 6.031-.058.049-.12.098-.181.146 1.177.783 2.588 1.238 4.107 1.238C20.68 19.416 24 16.096 24 12c0-4.094-3.32-7.416-7.416-7.416zM12 6.174c-.096.075-.189.15-.28.231C10.156 7.764 9.169 9.765 9.169 12c0 2.236.987 4.236 2.551 5.595.09.08.185.158.28.232.096-.074.189-.152.28-.232 1.563-1.359 2.551-3.359 2.551-5.595 0-2.235-.987-4.236-2.551-5.595-.09-.08-.184-.156-.28-.231z",source:"https://www.mastercard.com/brandcenter/us/en/download-artwork.html",hex:"EB001B",guidelines:"https://www.mastercard.com/brandcenter/us/en/brand-requirements/mastercard.html"};var OE={title:"Messenger",slug:"messenger",get svg(){return F1+"Messenger"+T1+this.path+P1},path:"M12 0C5.24 0 0 4.952 0 11.64c0 3.499 1.434 6.521 3.769 8.61a.96.96 0 0 1 .323.683l.065 2.135a.96.96 0 0 0 1.347.85l2.381-1.053a.96.96 0 0 1 .641-.046A13 13 0 0 0 12 23.28c6.76 0 12-4.952 12-11.64S18.76 0 12 0m6.806 7.44c.522-.03.971.567.63 1.094l-4.178 6.457a.707.707 0 0 1-.977.208l-3.87-2.504a.44.44 0 0 0-.49.007l-4.363 3.01c-.637.438-1.415-.317-.995-.966l4.179-6.457a.706.706 0 0 1 .977-.21l3.87 2.505c.15.097.344.094.491-.007l4.362-3.008a.7.7 0 0 1 .364-.13",source:"https://about.meta.com/brand/resources/facebook/messenger-icon",hex:"0866FF",guidelines:"https://about.meta.com/brand/resources/facebook/messenger-icon"},lg={title:"Meta",slug:"meta",get svg(){return F1+"Meta"+T1+this.path+P1},path:"M6.915 4.03c-1.968 0-3.683 1.28-4.871 3.113C.704 9.208 0 11.883 0 14.449c0 .706.07 1.369.21 1.973a6.624 6.624 0 0 0 .265.86 5.297 5.297 0 0 0 .371.761c.696 1.159 1.818 1.927 3.593 1.927 1.497 0 2.633-.671 3.965-2.444.76-1.012 1.144-1.626 2.663-4.32l.756-1.339.186-.325c.061.1.121.196.183.3l2.152 3.595c.724 1.21 1.665 2.556 2.47 3.314 1.046.987 1.992 1.22 3.06 1.22 1.075 0 1.876-.355 2.455-.843a3.743 3.743 0 0 0 .81-.973c.542-.939.861-2.127.861-3.745 0-2.72-.681-5.357-2.084-7.45-1.282-1.912-2.957-2.93-4.716-2.93-1.047 0-2.088.467-3.053 1.308-.652.57-1.257 1.29-1.82 2.05-.69-.875-1.335-1.547-1.958-2.056-1.182-.966-2.315-1.303-3.454-1.303zm10.16 2.053c1.147 0 2.188.758 2.992 1.999 1.132 1.748 1.647 4.195 1.647 6.4 0 1.548-.368 2.9-1.839 2.9-.58 0-1.027-.23-1.664-1.004-.496-.601-1.343-1.878-2.832-4.358l-.617-1.028a44.908 44.908 0 0 0-1.255-1.98c.07-.109.141-.224.211-.327 1.12-1.667 2.118-2.602 3.358-2.602zm-10.201.553c1.265 0 2.058.791 2.675 1.446.307.327.737.871 1.234 1.579l-1.02 1.566c-.757 1.163-1.882 3.017-2.837 4.338-1.191 1.649-1.81 1.817-2.486 1.817-.524 0-1.038-.237-1.383-.794-.263-.426-.464-1.13-.464-2.046 0-2.221.63-4.535 1.66-6.088.454-.687.964-1.226 1.533-1.533a2.264 2.264 0 0 1 1.088-.285z",source:"https://www.meta.com",hex:"0467DF",guidelines:"https://www.facebook.com/brand/resources/meta/company-brand"};var GE={title:"MYOB",slug:"myob",get svg(){return F1+"MYOB"+T1+this.path+P1},path:"m11.276 9.347-1.254 3.346a366.37 366.37 0 0 1-1.325-3.346H7.275l2.038 5.132-.86 2.063h1.38l2.845-7.195ZM5.083 10.46c.551 0 .818.33.818 1.01v3.112h1.314v-3.259c0-1.241-.853-2.108-2.075-2.108-.588 0-1.127.206-1.516.58l-.016.015-.016-.015c-.39-.374-.926-.58-1.512-.58-1.225 0-2.08.867-2.08 2.108v3.26h1.314V11.47c0-.68.267-1.01.818-1.01.552 0 .819.33.819 1.01v3.112h1.314V11.47c0-.68.267-1.01.819-1.01zm18.2-.398c-.494-.547-1.191-.849-1.962-.849a2.56 2.56 0 0 0-1.521.497V7.458h-1.315v4.51c0 .721.258 1.396.725 1.9.512.553 1.215.846 2.035.846.819 0 1.52-.293 2.03-.845.467-.505.725-1.18.725-1.9a2.83 2.83 0 0 0-.717-1.908Zm-2.039 3.405c-.937 0-1.446-.772-1.446-1.499 0-.726.51-1.509 1.446-1.509.937 0 1.442.778 1.442 1.51 0 .73-.505 1.498-1.442 1.498m-5.965 1.248c1.788 0 2.753-1.418 2.753-2.753 0-1.334-.965-2.752-2.753-2.752-1.789 0-2.753 1.418-2.753 2.753 0 1.335.964 2.753 2.753 2.753zm.001-1.248c-.936 0-1.445-.773-1.445-1.5 0-.728.509-1.511 1.445-1.511s1.441.778 1.441 1.51c0 .733-.505 1.501-1.441 1.501",source:"https://www.myob.com",hex:"7B14EF"};var qE={title:"Notion",slug:"notion",get svg(){return F1+"Notion"+T1+this.path+P1},path:"M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z",source:"https://www.notion.so",hex:"000000"};var WE={title:"PayPal",slug:"paypal",get svg(){return F1+"PayPal"+T1+this.path+P1},path:"M15.607 4.653H8.941L6.645 19.251H1.82L4.862 0h7.995c3.754 0 6.375 2.294 6.473 5.513-.648-.478-2.105-.86-3.722-.86m6.57 5.546c0 3.41-3.01 6.853-6.958 6.853h-2.493L11.595 24H6.74l1.845-11.538h3.592c4.208 0 7.346-3.634 7.153-6.949a5.24 5.24 0 0 1 2.848 4.686M9.653 5.546h6.408c.907 0 1.942.222 2.363.541-.195 2.741-2.655 5.483-6.441 5.483H8.714Z",source:"https://www.paypal.com/us",hex:"002991",guidelines:"https://newsroom.paypal-corp.com/media-resources"};var UE={title:"Pinterest",slug:"pinterest",get svg(){return F1+"Pinterest"+T1+this.path+P1},path:"M12.017 0C5.396 0 .029 5.367.029 11.987c0 5.079 3.158 9.417 7.618 11.162-.105-.949-.199-2.403.041-3.439.219-.937 1.406-5.957 1.406-5.957s-.359-.72-.359-1.781c0-1.663.967-2.911 2.168-2.911 1.024 0 1.518.769 1.518 1.688 0 1.029-.653 2.567-.992 3.992-.285 1.193.6 2.165 1.775 2.165 2.128 0 3.768-2.245 3.768-5.487 0-2.861-2.063-4.869-5.008-4.869-3.41 0-5.409 2.562-5.409 5.199 0 1.033.394 2.143.889 2.741.099.12.112.225.085.345-.09.375-.293 1.199-.334 1.363-.053.225-.172.271-.401.165-1.495-.69-2.433-2.878-2.433-4.646 0-3.776 2.748-7.252 7.92-7.252 4.158 0 7.392 2.967 7.392 6.923 0 4.135-2.607 7.462-6.233 7.462-1.214 0-2.354-.629-2.758-1.379l-.749 2.848c-.269 1.045-1.004 2.352-1.498 3.146 1.123.345 2.306.535 3.55.535 6.607 0 11.985-5.365 11.985-11.987C23.97 5.39 18.592.026 11.985.026L12.017 0z",source:"https://business.pinterest.com/en/brand-guidelines",hex:"BD081C",guidelines:"https://business.pinterest.com/en/brand-guidelines"};var jE={title:"QuickBooks",slug:"quickbooks",get svg(){return F1+"QuickBooks"+T1+this.path+P1},path:"M12 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0zm.642 4.1335c.9554 0 1.7296.776 1.7296 1.7332v9.0667h1.6c1.614 0 2.9275-1.3156 2.9275-2.933 0-1.6173-1.3136-2.9333-2.9276-2.9333h-.6654V7.3334h.6654c2.5722 0 4.6577 2.0897 4.6577 4.667 0 2.5774-2.0855 4.6666-4.6577 4.6666H12.642zM7.9837 7.333h3.3291v12.533c-.9555 0-1.73-.7759-1.73-1.7332V9.0662H7.9837c-1.6146 0-2.9277 1.316-2.9277 2.9334 0 1.6175 1.3131 2.9333 2.9277 2.9333h.6654v1.7332h-.6654c-2.5725 0-4.6577-2.0892-4.6577-4.6665 0-2.5771 2.0852-4.6666 4.6577-4.6666Z",source:"https://design.intuit.com/quickbooks/brand",hex:"2CA01C",guidelines:"https://design.intuit.com/quickbooks/brand"};var KE={title:"Sage",slug:"sage",get svg(){return F1+"Sage"+T1+this.path+P1},path:"M2.702 5.316C1.167 5.316 0 6.48 0 7.972c0 1.635 1.167 2.267 2.46 2.655 1.224.387 1.804.818 1.804 1.666 0 .86-.64 1.465-1.477 1.465-.84 0-1.566-.604-1.566-1.535 0-.516.242-.647.242-.934 0-.33-.227-.574-.599-.574-.423 0-.864.647-.864 1.566 0 1.48 1.266 2.57 2.787 2.57 1.535 0 2.701-1.163 2.701-2.656 0-1.623-1.166-2.267-2.472-2.655-1.209-.372-1.792-.818-1.792-1.666 0-.845.626-1.45 1.463-1.45.867 0 1.565.617 1.577 1.465.016.388.285.617.599.617a.592.592 0 0 0 .61-.647c-.027-1.48-1.263-2.543-2.771-2.543zm6.171 9.52c.683 0 1.21-.23 1.21-.69a.57.57 0 0 0-.557-.574c-.2 0-.341.085-.668.085-.882 0-1.577-.76-1.577-1.65 0-.962.71-1.725 1.608-1.725 1.009 0 1.65.775 1.65 1.895v2.054c0 .36.284.604.625.604.327 0 .61-.244.61-.604v-2.097c0-1.72-1.178-2.984-2.858-2.984-1.566 0-2.86 1.22-2.86 2.856 0 1.58 1.282 2.83 2.817 2.83zm6.257 3.848c1.535 0 2.701-1.163 2.701-2.656 0-1.635-1.166-2.267-2.472-2.655-1.209-.387-1.792-.818-1.792-1.666s.64-1.465 1.463-1.465c.84 0 1.577.604 1.577 1.535 0 .519-.241.647-.241.934 0 .33.226.574.583.574.441 0 .882-.647.882-1.566 0-1.48-1.278-2.57-2.801-2.57-1.535 0-2.687 1.163-2.687 2.656 0 1.623 1.152 2.267 2.46 2.655 1.224.372 1.804.818 1.804 1.666 0 .86-.64 1.45-1.462 1.45-.883 0-1.566-.601-1.578-1.465-.015-.388-.3-.604-.598-.604-.327 0-.626.216-.61.631.011 1.499 1.247 2.546 2.77 2.546zm6.171-3.849c.795 0 1.424-.229 1.862-.503.426-.272.595-.504.595-.76 0-.272-.2-.516-.568-.516-.441 0-.795.66-1.877.66-.952 0-1.707-.76-1.707-1.722 0-.95.725-1.724 1.635-1.724.982 0 1.508.647 1.508 1.062 0 .116-.085.174-.2.174h-1.194c-.326 0-.568.216-.568.503 0 .314.242.546.568.546h1.636c.625 0 1.009-.33 1.009-.89 0-1.408-1.194-2.512-2.774-2.512-1.566 0-2.83 1.263-2.83 2.84s1.312 2.842 2.905 2.842z",source:"https://www.sage.com",hex:"00D639"};var $E={title:"Shopify",slug:"shopify",get svg(){return F1+"Shopify"+T1+this.path+P1},path:"M15.337 23.979l7.216-1.561s-2.604-17.613-2.625-17.73c-.018-.116-.114-.192-.211-.192s-1.929-.136-1.929-.136-1.275-1.274-1.439-1.411c-.045-.037-.075-.057-.121-.074l-.914 21.104h.023zM11.71 11.305s-.81-.424-1.774-.424c-1.447 0-1.504.906-1.504 1.141 0 1.232 3.24 1.715 3.24 4.629 0 2.295-1.44 3.76-3.406 3.76-2.354 0-3.54-1.465-3.54-1.465l.646-2.086s1.245 1.066 2.28 1.066c.675 0 .975-.545.975-.932 0-1.619-2.654-1.694-2.654-4.359-.034-2.237 1.571-4.416 4.827-4.416 1.257 0 1.875.361 1.875.361l-.945 2.715-.02.01zM11.17.83c.136 0 .271.038.405.135-.984.465-2.064 1.639-2.508 3.992-.656.213-1.293.405-1.889.578C7.697 3.75 8.951.84 11.17.84V.83zm1.235 2.949v.135c-.754.232-1.583.484-2.394.736.466-1.777 1.333-2.645 2.085-2.971.193.501.309 1.176.309 2.1zm.539-2.234c.694.074 1.141.867 1.429 1.755-.349.114-.735.231-1.158.366v-.252c0-.752-.096-1.371-.271-1.871v.002zm2.992 1.289c-.02 0-.06.021-.078.021s-.289.075-.714.21c-.423-1.233-1.176-2.37-2.508-2.37h-.115C12.135.209 11.669 0 11.265 0 8.159 0 6.675 3.877 6.21 5.846c-1.194.365-2.063.636-2.16.674-.675.213-.694.232-.772.87-.075.462-1.83 14.063-1.83 14.063L15.009 24l.927-21.166z",source:"https://www.shopify.com/brand-assets",hex:"7AB55C",guidelines:"https://www.shopify.com/brand-assets"};var YE={title:"Square",slug:"square",get svg(){return F1+"Square"+T1+this.path+P1},path:"M4.01 0A4.01 4.01 0 000 4.01v15.98c0 2.21 1.8 4 4.01 4.01h15.98C22.2 24 24 22.2 24 19.99V4A4.01 4.01 0 0019.99 0H4zm1.62 4.36h12.74c.7 0 1.26.57 1.26 1.27v12.74c0 .7-.56 1.27-1.26 1.27H5.63c-.7 0-1.26-.57-1.26-1.27V5.63a1.27 1.27 0 011.26-1.27zm3.83 4.35a.73.73 0 00-.73.73v5.09c0 .4.32.72.72.72h5.1a.73.73 0 00.73-.72V9.44a.73.73 0 00-.73-.73h-5.1Z",source:"https://squareup.com",hex:"3E4348"};var XE={title:"Squarespace",slug:"squarespace",get svg(){return F1+"Squarespace"+T1+this.path+P1},path:"M22.655 8.719c-1.802-1.801-4.726-1.801-6.564 0l-7.351 7.35c-.45.45-.45 1.2 0 1.65.45.449 1.2.449 1.65 0l7.351-7.351c.899-.899 2.362-.899 3.264 0 .9.9.9 2.364 0 3.264l-7.239 7.239c.9.899 2.362.899 3.263 0l5.589-5.589c1.836-1.838 1.836-4.763.037-6.563zm-2.475 2.437c-.451-.45-1.201-.45-1.65 0l-7.354 7.389c-.9.899-2.361.899-3.262 0-.45-.45-1.2-.45-1.65 0s-.45 1.2 0 1.649c1.801 1.801 4.726 1.801 6.564 0l7.351-7.35c.449-.487.449-1.239.001-1.688zm-2.439-7.35c-1.801-1.801-4.726-1.801-6.564 0l-7.351 7.351c-.45.449-.45 1.199 0 1.649s1.2.45 1.65 0l7.395-7.351c.9-.899 2.371-.899 3.27 0 .451.45 1.201.45 1.65 0 .421-.487.421-1.199-.029-1.649h-.021zm-2.475 2.437c-.45-.45-1.2-.45-1.65 0l-7.351 7.389c-.899.9-2.363.9-3.265 0-.9-.899-.9-2.363 0-3.264l7.239-7.239c-.9-.9-2.362-.9-3.263 0L1.35 8.719c-1.8 1.8-1.8 4.725 0 6.563 1.801 1.801 4.725 1.801 6.564 0l7.35-7.351c.451-.488.451-1.238 0-1.688h.002z",source:"https://www.squarespace.com/logo-guidelines",hex:"000000",guidelines:"https://www.squarespace.com/brand-guidelines"};var JE={title:"Stripe",slug:"stripe",get svg(){return F1+"Stripe"+T1+this.path+P1},path:"M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z",source:"https://stripe.com/newsroom/information",hex:"635BFF"};var QE={title:"Telegram",slug:"telegram",get svg(){return F1+"Telegram"+T1+this.path+P1},path:"M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z",source:"https://telegram.org/tour/screenshots",hex:"26A5E4"};var eV={title:"TikTok",slug:"tiktok",get svg(){return F1+"TikTok"+T1+this.path+P1},path:"M12.525.02c1.31-.02 2.61-.01 3.91-.02.08 1.53.63 3.09 1.75 4.17 1.12 1.11 2.7 1.62 4.24 1.79v4.03c-1.44-.05-2.89-.35-4.2-.97-.57-.26-1.1-.59-1.62-.93-.01 2.92.01 5.84-.02 8.75-.08 1.4-.54 2.79-1.35 3.94-1.31 1.92-3.58 3.17-5.91 3.21-1.43.08-2.86-.31-4.08-1.03-2.02-1.19-3.44-3.37-3.65-5.71-.02-.5-.03-1-.01-1.49.18-1.9 1.12-3.72 2.58-4.96 1.66-1.44 3.98-2.13 6.15-1.72.02 1.48-.04 2.96-.04 4.44-.99-.32-2.15-.23-3.02.37-.63.41-1.11 1.04-1.36 1.75-.21.51-.15 1.07-.14 1.61.24 1.64 1.82 3.02 3.5 2.87 1.12-.01 2.19-.66 2.77-1.61.19-.33.4-.67.41-1.06.1-1.79.06-3.57.07-5.36.01-4.03-.01-8.05.02-12.07z",source:"https://tiktok.com",hex:"000000"};var tV={title:"Trello",slug:"trello",get svg(){return F1+"Trello"+T1+this.path+P1},path:"M21.147 0H2.853A2.86 2.86 0 000 2.853v18.294A2.86 2.86 0 002.853 24h18.294A2.86 2.86 0 0024 21.147V2.853A2.86 2.86 0 0021.147 0zM10.34 17.287a.953.953 0 01-.953.953h-4a.954.954 0 01-.954-.953V5.38a.953.953 0 01.954-.953h4a.954.954 0 01.953.953zm9.233-5.467a.944.944 0 01-.953.947h-4a.947.947 0 01-.953-.947V5.38a.953.953 0 01.953-.953h4a.954.954 0 01.953.953z",source:"https://atlassian.design/resources/logo-library",hex:"0052CC",guidelines:"https://atlassian.design/foundations/logos"};var aV={title:"UPS",slug:"ups",get svg(){return F1+"UPS"+T1+this.path+P1},path:"M11.668 14.544l-.028-5.226c.138-.055.387-.111.608-.111.995 0 1.41.774 1.41 2.682 0 1.853-.47 2.765-1.438 2.765-.22 0-.441-.055-.552-.11zM3.124 7.438c4.203-3.843 9.29-4.866 14.018-4.866 1.3 0 2.544.083 3.76.194h-.028v11.253c0 2.184-.774 3.926-2.295 5.171-1.355 1.134-5.447 2.959-6.581 3.456-1.161-.525-5.253-2.378-6.581-3.456-1.493-1.244-2.295-3.014-2.295-5.171V7.438zm12.664 2.599c.028.912.276 1.576 1.687 2.406.747.442 1.051.747 1.051 1.272 0 .581-.387.94-1.023.94-.553 0-1.189-.304-1.631-.691v1.576c.553.304 1.217.525 1.88.525 1.687 0 2.433-1.189 2.461-2.267.028-.995-.249-1.742-1.659-2.571-.608-.387-1.134-.636-1.106-1.244 0-.581.525-.802.995-.802.581 0 1.161.332 1.521.691V8.378c-.304-.221-.94-.581-1.88-.553-1.135.028-2.296.829-2.296 2.212zm-5.834 9.484h1.714l-.028-3.594c.166.028.415.083.774.083 1.908 0 2.986-1.687 2.986-4.175 0-2.461-1.106-4.009-3.152-4.009-.94 0-1.687.221-2.295.608v11.087zm-5.945-6.166c0 1.797.829 2.71 2.516 2.71 1.051 0 1.908-.249 2.571-.691V7.991H7.41v6.387c-.194.138-.47.221-.802.221-.774 0-.885-.719-.885-1.189V7.991H4.009v5.364zM22.12 2.295v11.723c0 2.516-.94 4.645-2.765 6.111-1.549 1.3-6.332 3.429-7.355 3.871-1.023-.442-5.806-2.571-7.355-3.843-1.797-1.465-2.765-3.594-2.765-6.111V2.295C4.756.747 8.074 0 12 0s7.244.747 10.12 2.295zm-.304.221c-2.71-1.465-6-2.184-9.788-2.184s-7.079.746-9.788 2.184v11.502c0 2.433.912 4.452 2.627 5.862 1.576 1.3 6.581 3.484 7.161 3.76.581-.249 5.585-2.433 7.161-3.733 1.714-1.41 2.627-3.429 2.627-5.862V2.516zm-2.433 20.295c0 .47-.387.829-.829.829a.831.831 0 0 1-.829-.829c0-.47.387-.829.829-.829.441 0 .801.359.829.829zm-.166 0a.679.679 0 0 0-.664-.691c-.359 0-.664.332-.664.691 0 .359.304.664.664.664a.673.673 0 0 0 .664-.664zm-.553.055c.028.055.304.442.304.442h-.221s-.276-.387-.276-.415h-.028v.415h-.194v-.995l.304-.028c.249 0 .332.166.332.304s-.083.25-.221.277zm.027-.276c0-.055 0-.138-.166-.138h-.083v.304h.028c.194 0 .221-.083.221-.166z",source:"https://www.ups.com",hex:"150400"};var sV={title:"Visa",slug:"visa",get svg(){return F1+"Visa"+T1+this.path+P1},path:"M9.112 8.262L5.97 15.758H3.92L2.374 9.775c-.094-.368-.175-.503-.461-.658C1.447 8.864.677 8.627 0 8.479l.046-.217h3.3a.904.904 0 01.894.764l.817 4.338 2.018-5.102zm8.033 5.049c.008-1.979-2.736-2.088-2.717-2.972.006-.269.262-.555.822-.628a3.66 3.66 0 011.913.336l.34-1.59a5.207 5.207 0 00-1.814-.333c-1.917 0-3.266 1.02-3.278 2.479-.012 1.079.963 1.68 1.698 2.04.756.367 1.01.603 1.006.931-.005.504-.602.725-1.16.734-.975.015-1.54-.263-1.992-.473l-.351 1.642c.453.208 1.289.39 2.156.398 2.037 0 3.37-1.006 3.377-2.564m5.061 2.447H24l-1.565-7.496h-1.656a.883.883 0 00-.826.55l-2.909 6.946h2.036l.405-1.12h2.488zm-2.163-2.656l1.02-2.815.588 2.815zm-8.16-4.84l-1.603 7.496H8.34l1.605-7.496z",source:"https://merchantsignageeu.visa.com/product.asp?dptID=696",hex:"1A1F71"};var cV={title:"Vonage",slug:"vonage",get svg(){return F1+"Vonage"+T1+this.path+P1},path:"M9.279 11.617l-4.54-10.07H0l6.797 15.296a.084.084 0 0 0 .153 0zm9.898-10.07s-6.148 13.868-6.917 15.565c-1.838 4.056-3.2 5.07-4.588 5.289a.026.026 0 0 0 .004.052h4.34c1.911 0 3.219-1.285 5.06-5.341C17.72 15.694 24 1.547 24 1.547z",source:"https://www.vonage.com",hex:"000000"};var lV={title:"WhatsApp",slug:"whatsapp",get svg(){return F1+"WhatsApp"+T1+this.path+P1},path:"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 005.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.48-8.413Z",source:"https://about.meta.com/brand/resources/whatsapp/whatsapp-brand",hex:"25D366",guidelines:"https://about.meta.com/brand/resources/whatsapp/whatsapp-brand"};var rV={title:"Wise",slug:"wise",get svg(){return F1+"Wise"+T1+this.path+P1},path:"M6.488 7.469 0 15.05h11.585l1.301-3.576H7.922l3.033-3.507.01-.092L8.993 4.48h8.873l-6.878 18.925h4.706L24 .595H2.543l3.945 6.874Z",source:"https://wise.design/foundations/logo",hex:"9FE870",guidelines:"https://wise.design/foundations/logo"};var oV={title:"Wix",slug:"wix",get svg(){return F1+"Wix"+T1+this.path+P1},path:"m0 7.354 2.113 9.292h.801a1.54 1.54 0 0 0 1.506-1.218l1.351-6.34a.171.171 0 0 1 .167-.137c.08 0 .15.058.167.137l1.352 6.34a1.54 1.54 0 0 0 1.506 1.218h.805l2.113-9.292h-.565c-.62 0-1.159.43-1.296 1.035l-1.26 5.545-1.106-5.176a1.76 1.76 0 0 0-2.19-1.324c-.639.176-1.113.716-1.251 1.365l-1.094 5.127-1.26-5.537A1.33 1.33 0 0 0 .563 7.354H0zm13.992 0a.951.951 0 0 0-.951.95v8.342h.635a.952.952 0 0 0 .951-.95V7.353h-.635zm1.778 0 3.158 4.66-3.14 4.632h1.325c.368 0 .712-.181.918-.486l1.756-2.59a.12.12 0 0 1 .197 0l1.754 2.59c.206.305.55.486.918.486h1.326l-3.14-4.632L24 7.354h-1.326c-.368 0-.712.181-.918.486l-1.772 2.617a.12.12 0 0 1-.197 0L18.014 7.84a1.108 1.108 0 0 0-.918-.486H15.77z",source:"https://www.wix.com/about/design-assets",hex:"0C6EFC",guidelines:"https://www.wix.com/about/design-assets"};var iV={title:"WooCommerce",slug:"woocommerce",get svg(){return F1+"WooCommerce"+T1+this.path+P1},path:"M.754 9.58a.754.754 0 00-.754.758v2.525c0 .42.339.758.758.758h3.135l1.431.799-.326-.799h2.373a.757.757 0 00.758-.758v-2.525a.757.757 0 00-.758-.758H.754zm2.709.445h.03c.065.001.124.023.179.067a.26.26 0 01.103.19.29.29 0 01-.033.16c-.13.239-.236.64-.322 1.199-.083.541-.114.965-.094 1.267a.392.392 0 01-.039.219.213.213 0 01-.176.12c-.086.006-.177-.034-.263-.124-.31-.316-.555-.788-.735-1.416-.216.425-.375.744-.478.957-.196.376-.363.568-.502.578-.09.007-.166-.069-.233-.228-.17-.436-.352-1.277-.548-2.524a.297.297 0 01.054-.222c.047-.064.116-.095.21-.102.169-.013.265.065.288.238.103.695.217 1.284.336 1.766l.727-1.387c.066-.126.15-.192.25-.199.146-.01.237.083.273.28.083.441.188.817.315 1.136.086-.844.233-1.453.44-1.828a.255.255 0 01.218-.147zm1.293.36c.056 0 .116.006.18.02.232.05.411.177.53.386.107.18.161.395.161.654 0 .343-.087.654-.26.94-.2.332-.459.5-.781.5a.88.88 0 01-.18-.022.763.763 0 01-.531-.384 1.287 1.287 0 01-.158-.659c0-.342.085-.655.258-.937.202-.333.462-.498.78-.498zm2.084 0c.056 0 .116.006.18.02.236.05.411.177.53.386.107.18.16.395.16.654 0 .343-.086.654-.259.94-.2.332-.459.5-.781.5a.88.88 0 01-.18-.022.763.763 0 01-.531-.384 1.287 1.287 0 01-.16-.659c0-.342.087-.655.26-.937.202-.333.462-.498.78-.498zm4.437.047c-.305 0-.546.102-.718.304-.173.203-.256.49-.256.856 0 .395.086.697.256.906.17.21.418.316.744.316.315 0 .559-.107.728-.316.17-.21.256-.504.256-.883s-.087-.673-.26-.879c-.176-.202-.424-.304-.75-.304zm-1.466.002a1.13 1.13 0 00-.84.326c-.223.22-.332.499-.332.838 0 .362.108.658.328.88.22.223.505.336.861.336.103 0 .22-.016.346-.052v-.54c-.117.034-.216.051-.303.051a.545.545 0 01-.422-.177c-.106-.12-.16-.278-.16-.48 0-.19.053-.348.156-.468a.498.498 0 01.397-.181c.103 0 .212.015.332.049v-.537a1.394 1.394 0 00-.363-.045zm12.414 0a1.135 1.135 0 00-.84.326c-.223.22-.332.499-.332.838 0 .362.108.658.328.88.22.223.506.336.861.336.103 0 .22-.016.346-.052v-.54c-.116.034-.216.051-.303.051a.545.545 0 01-.422-.177c-.106-.12-.16-.278-.16-.48 0-.19.053-.348.156-.468a.498.498 0 01.397-.181c.103 0 .212.015.332.049v-.537a1.394 1.394 0 00-.363-.045zm-9.598.06l-.29 2.264h.579l.156-1.559.395 1.559h.412l.379-1.555.164 1.555h.603l-.304-2.264h-.791l-.12.508c-.03.13-.06.264-.087.4l-.067.352a29.97 29.97 0 00-.258-1.26h-.771zm2.768 0l-.29 2.264h.579l.156-1.559.396 1.559h.412l.375-1.555.165 1.555h.603l-.305-2.264h-.789l-.119.508c-.03.13-.06.264-.086.4l-.066.352c-.063-.352-.15-.771-.26-1.26h-.771zm3.988 0v2.264h.611v-1.031h.012l.494 1.03h.645l-.489-1.019a.61.61 0 00.37-.552.598.598 0 00-.25-.506c-.167-.123-.394-.186-.68-.186h-.713zm3.377 0v2.264H24v-.483h-.63v-.414h.54v-.468h-.54v-.416h.626v-.483H22.76zm-4.793.004v2.264h1.24v-.483h-.627v-.416h.541v-.468h-.54v-.415h.622v-.482h-1.236zm2.025.432c.146.003.25.025.313.072.063.046.091.12.091.227 0 .156-.135.236-.404.24v-.54zm-15.22.011c-.104 0-.205.069-.301.211a1.078 1.078 0 00-.2.639c0 .096.02.2.06.303.049.13.117.198.196.215.083.016.173-.02.27-.106.123-.11.205-.273.252-.492.016-.077.023-.16.023-.246 0-.097-.02-.2-.06-.303-.05-.13-.116-.198-.196-.215a.246.246 0 00-.045-.006zm2.083 0c-.103 0-.204.069-.3.211a1.078 1.078 0 00-.2.639c0 .096.02.2.06.303.049.13.117.198.196.215.083.016.173-.02.27-.106.123-.11.205-.273.252-.492.013-.077.023-.16.023-.246 0-.097-.02-.2-.06-.303-.05-.13-.116-.198-.196-.215a.246.246 0 00-.045-.006zm4.428.006c.233 0 .354.218.354.66-.004.273-.038.46-.098.553a.293.293 0 01-.262.139.266.266 0 01-.242-.139c-.056-.093-.084-.28-.084-.562 0-.436.11-.65.332-.65Z",source:"https://woocommerce.com/style-guide",hex:"96588A",guidelines:"https://woocommerce.com/trademark-guidelines"};var nV={title:"Xero",slug:"xero",get svg(){return F1+"Xero"+T1+this.path+P1},path:"M12 0C5.373 0 0 5.373 0 12s5.373 12 12 12 12-5.373 12-12S18.627 0 12 0zm6.585 14.655c-1.485 0-2.69-1.206-2.69-2.689 0-1.485 1.207-2.691 2.69-2.691 1.485 0 2.69 1.207 2.69 2.691s-1.207 2.689-2.69 2.689zM7.53 14.644c-.099 0-.192-.041-.267-.116l-2.043-2.04-2.052 2.047c-.069.068-.16.108-.258.108-.202 0-.368-.166-.368-.368 0-.099.04-.191.111-.263l2.04-2.05-2.038-2.047c-.075-.069-.113-.162-.113-.261 0-.203.166-.366.368-.366.098 0 .188.037.258.105l2.055 2.048 2.048-2.045c.069-.071.162-.108.26-.108.211 0 .375.165.375.366 0 .098-.029.188-.104.258l-2.056 2.055 2.055 2.051c.068.069.104.16.104.258 0 .202-.165.368-.365.368h-.01zm8.017-4.591c-.796.101-.882.476-.882 1.404v2.787c0 .202-.165.366-.366.366-.203 0-.367-.165-.368-.366v-4.53c0-.204.16-.366.362-.366.166 0 .316.125.346.289.27-.209.6-.317.93-.317h.105c.195 0 .359.165.359.368 0 .201-.164.352-.375.359 0 0-.09 0-.164.008l.053-.002zm-3.091 2.205H8.625c0 .019.003.037.006.057.02.105.045.211.083.31.194.531.765 1.275 1.829 1.29.33-.003.631-.086.9-.229.21-.12.391-.271.525-.428.045-.058.09-.112.12-.168.18-.229.405-.186.54-.083.164.135.18.391.045.57l-.016.016c-.21.27-.435.495-.689.66-.255.164-.525.284-.811.345-.33.09-.645.104-.975.06-1.095-.135-2.01-.93-2.28-2.01-.06-.21-.09-.42-.09-.645 0-.855.421-1.695 1.125-2.205.885-.615 2.085-.66 3-.075.63.405 1.035 1.021 1.185 1.771.075.419-.21.794-.734.81l.068-.046zm6.129-2.223c-1.064 0-1.931.865-1.931 1.931 0 1.064.866 1.931 1.931 1.931s1.931-.867 1.931-1.931c0-1.065-.866-1.933-1.931-1.933v.002zm0 2.595c-.367 0-.666-.297-.666-.666 0-.367.3-.665.666-.665.367 0 .667.299.667.665 0 .369-.3.667-.667.666zm-8.04-2.603c-.91 0-1.672.623-1.886 1.466v.03h3.776c-.203-.855-.973-1.494-1.891-1.494v-.002z",source:"https://www.xero.com/uk/about/media/downloads",hex:"13B5EA"};var hV={title:"YouTube",slug:"youtube",get svg(){return F1+"YouTube"+T1+this.path+P1},path:"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z",source:"https://www.youtube.com/howyoutubeworks/resources/brand-resources/#logos-icons-and-colors",hex:"FF0000",guidelines:"https://www.youtube.com/howyoutubeworks/resources/brand-resources/#logos-icons-and-colors"};var mV={title:"Zapier",slug:"zapier",get svg(){return F1+"Zapier"+T1+this.path+P1},path:"M4.157 0A4.151 4.151 0 0 0 0 4.161v15.678A4.151 4.151 0 0 0 4.157 24h15.682A4.152 4.152 0 0 0 24 19.839V4.161A4.152 4.152 0 0 0 19.839 0H4.157Zm10.61 8.761h.03a.577.577 0 0 1 .23.038.585.585 0 0 1 .201.124.63.63 0 0 1 .162.431.612.612 0 0 1-.162.435.58.58 0 0 1-.201.128.58.58 0 0 1-.23.042.529.529 0 0 1-.235-.042.585.585 0 0 1-.332-.328.559.559 0 0 1-.038-.235.613.613 0 0 1 .17-.431.59.59 0 0 1 .405-.162Zm2.853 1.572c.03.004.061.004.095.004.325-.011.646.064.937.219.238.144.431.355.552.609.128.279.189.582.185.888v.193a2 2 0 0 1 0 .219h-2.498c.003.227.075.45.204.642a.78.78 0 0 0 .646.265.714.714 0 0 0 .484-.136.642.642 0 0 0 .23-.318l.915.257a1.398 1.398 0 0 1-.28.537c-.14.159-.321.284-.521.355a2.234 2.234 0 0 1-.836.136 1.923 1.923 0 0 1-1.001-.245 1.618 1.618 0 0 1-.665-.703 2.221 2.221 0 0 1-.227-1.036 1.95 1.95 0 0 1 .48-1.398 1.9 1.9 0 0 1 1.3-.488Zm-9.607.023c.162.004.325.026.48.079.207.065.4.174.563.314.26.302.393.692.366 1.088v2.276H8.53l-.109-.711h-.065c-.064.163-.155.31-.272.439a1.122 1.122 0 0 1-.374.264 1.023 1.023 0 0 1-.453.083 1.334 1.334 0 0 1-.866-.264.965.965 0 0 1-.329-.801.993.993 0 0 1 .076-.431 1.02 1.02 0 0 1 .242-.363 1.478 1.478 0 0 1 1.043-.303h.952v-.181a.696.696 0 0 0-.136-.454.553.553 0 0 0-.438-.154.695.695 0 0 0-.378.086.48.48 0 0 0-.193.254l-.99-.144a1.26 1.26 0 0 1 .257-.563c.14-.174.321-.302.533-.378.261-.091.54-.136.82-.129.053-.003.106-.007.163-.007Zm4.384.007c.174 0 .347.038.506.114.182.083.34.211.458.374.257.423.377.911.351 1.406a2.53 2.53 0 0 1-.355 1.448 1.148 1.148 0 0 1-1.009.517c-.204 0-.401-.045-.582-.136a1.052 1.052 0 0 1-.48-.457 1.298 1.298 0 0 1-.114-.234h-.045l.004 1.784h-1.059v-4.713h.904l.117.805h.057c.068-.208.177-.401.328-.56a1.129 1.129 0 0 1 .843-.344h.076v-.004Zm7.559.084h.903l.113.805h.053a1.37 1.37 0 0 1 .235-.484.813.813 0 0 1 .313-.242.82.82 0 0 1 .39-.076h.234v1.051h-.401a.662.662 0 0 0-.313.008.623.623 0 0 0-.272.155.663.663 0 0 0-.174.26.683.683 0 0 0-.027.314v1.875h-1.054v-3.666Zm-17.515.003h3.262v.896L3.73 13.104l.034.113h1.973l.042.9H2.4v-.9l1.931-1.754-.045-.117H2.441v-.896Zm11.815 0h1.055v3.659h-1.055V10.45Zm3.443.684.019.016a.69.69 0 0 0-.351.045.756.756 0 0 0-.287.204c-.11.155-.174.336-.189.522h1.545c-.034-.526-.257-.787-.74-.787h.003Zm-5.718.163c-.026 0-.057 0-.083.004a.78.78 0 0 0-.31.053.746.746 0 0 0-.257.189 1.016 1.016 0 0 0-.204.695v.064c-.015.257.057.507.204.711a.634.634 0 0 0 .253.196.638.638 0 0 0 .314.061.644.644 0 0 0 .578-.265c.14-.223.204-.48.189-.74a1.216 1.216 0 0 0-.181-.711.677.677 0 0 0-.503-.257Zm-4.509 1.266a.464.464 0 0 0-.268.102.373.373 0 0 0-.114.276c0 .053.008.106.027.155a.375.375 0 0 0 .087.132.576.576 0 0 0 .397.11v.004a.863.863 0 0 0 .563-.182.573.573 0 0 0 .211-.457v-.14h-.903Z",source:"https://www.figma.com/file/NQFxTCE5pGR3dHZt0DkOyy/Zapier-Brand-Guidelines-%5BExternal%5D?type=design&node-id=101-9701&mode=design",hex:"FF4F00",guidelines:"https://www.figma.com/file/NQFxTCE5pGR3dHZt0DkOyy/Zapier-Brand-Guidelines-%5BExternal%5D?type=design&node-id=101-9701&mode=design"};var pV={title:"Zendesk",slug:"zendesk",get svg(){return F1+"Zendesk"+T1+this.path+P1},path:"M12.914 2.904V16.29L24 2.905H12.914zM0 2.906C0 5.966 2.483 8.45 5.543 8.45s5.542-2.484 5.543-5.544H0zm11.086 4.807L0 21.096h11.086V7.713zm7.37 7.84c-3.063 0-5.542 2.48-5.542 5.543H24c0-3.06-2.48-5.543-5.543-5.543z",source:"https://brandland.zendesk.com",hex:"03363D",guidelines:"https://brandland.zendesk.com"};var uV={title:"Zoom",slug:"zoom",get svg(){return F1+"Zoom"+T1+this.path+P1},path:"M5.033 14.649H.743a.74.74 0 0 1-.686-.458.74.74 0 0 1 .16-.808L3.19 10.41H1.06A1.06 1.06 0 0 1 0 9.35h3.957c.301 0 .57.18.686.458a.74.74 0 0 1-.161.808L1.51 13.59h2.464c.585 0 1.06.475 1.06 1.06zM24 11.338c0-1.14-.927-2.066-2.066-2.066-.61 0-1.158.265-1.537.686a2.061 2.061 0 0 0-1.536-.686c-1.14 0-2.066.926-2.066 2.066v3.311a1.06 1.06 0 0 0 1.06-1.06v-2.251a1.004 1.004 0 0 1 2.013 0v2.251c0 .586.474 1.06 1.06 1.06v-3.311a1.004 1.004 0 0 1 2.012 0v2.251c0 .586.475 1.06 1.06 1.06zM16.265 12a2.728 2.728 0 1 1-5.457 0 2.728 2.728 0 0 1 5.457 0zm-1.06 0a1.669 1.669 0 1 0-3.338 0 1.669 1.669 0 0 0 3.338 0zm-4.82 0a2.728 2.728 0 1 1-5.458 0 2.728 2.728 0 0 1 5.457 0zm-1.06 0a1.669 1.669 0 1 0-3.338 0 1.669 1.669 0 0 0 3.338 0z",source:"https://brand.zoom.us/media-library/",hex:"0B5CFF",guidelines:"https://brand.zoom.us/usage-legal/"};var a21={adyen:uE,afterpay:dE,aircall:gE,americanexpress:cg,amex:cg,applepay:vE,bigcommerce:fE,brevo:bE,calendly:xE,campaignmonitor:zE,dhl:yE,dropbox:wE,ebay:CE,etsy:kE,facebook:ME,fedex:SE,gmail:LE,googleads:AE,googleanalytics:HE,googlecalendar:FE,googledrive:TE,googlepay:PE,googlesheets:EE,hubspot:VE,instagram:NE,intercom:_E,klarna:IE,mailchimp:RE,mailgun:BE,make:ZE,mastercard:DE,messenger:OE,meta:lg,metaads:lg,myob:GE,notion:qE,paypal:WE,pinterest:UE,quickbooks:jE,sage:KE,shopify:$E,square:YE,squarespace:XE,stripe:JE,telegram:QE,tiktok:eV,trello:tV,ups:aV,visa:sV,vonage:cV,whatsapp:lV,wise:rV,wix:oV,woocommerce:iV,xero:nV,youtube:hV,zapier:mV,zendesk:pV,zoom:uV};function dV(e){return a21[e.toLowerCase().replace(/[^a-z0-9]/g,"")]??null}function s21(e,t){let a=Array.from({length:t},()=>[]);return e.forEach((s,c)=>a[c%t].push(s)),a.filter(s=>s.length>0)}function c21({name:e}){let t=dV(e);return Oi("span",{className:"flex flex-shrink-0 items-center gap-2.5 whitespace-nowrap rounded border border-line bg-bg px-5 py-2.5",children:[t&&F3("svg",{viewBox:"0 0 24 24",className:"h-[16px] w-[16px] flex-shrink-0 fill-current text-fg/85","aria-hidden":!0,children:F3("path",{d:t.path})}),F3("span",{className:"text-[13px] font-medium tracking-wide text-fg/75",children:e})]})}function l21({names:e,reverse:t}){return F3("div",{className:"overflow-hidden","aria-hidden":!1,children:F3("div",{className:"flex w-max gap-3 pr-3 [animation:sf-marquee_var(--sf-marquee-t)_linear_infinite] motion-reduce:[animation:none]",style:{"--sf-marquee-t":`${Math.max(e.length*6,30)}s`,animationDirection:t?"reverse":"normal"},children:[0,1].map(a=>F3("div",{className:"flex gap-3","aria-hidden":a===1,children:e.map((s,c)=>F3(c21,{name:s},c))},a))})})}function gV({eyebrow:e,title:t,body:a,apps:s,statValue:c,statLabel:l,note:r,editing:o=!1}={}){let i=(s??[]).map(m=>(m.text??"").trim()).filter(m=>o||m).map(m=>m||p("App")),n=!!(e??"").trim()||!!(t??"").trim();if(!o&&!n&&i.length===0)return null;let h=s21(i,3);return Oi("section",{className:"relative z-[2] overflow-hidden border-y border-line bg-surface py-[76px]",children:[Oi("div",{className:"mx-auto mb-12 max-w-[860px] px-10 text-center max-[960px]:px-6",children:[(e??"").trim()&&F3("span",{className:"inline-block bg-accent px-3.5 py-1.5 font-mono text-[12px] font-semibold uppercase tracking-[0.16em] text-bg",children:M(e??"")}),(t??"").trim()&&F3("h2",{className:"mt-5 font-display text-[40px] font-medium uppercase leading-[1.04] tracking-[-0.02em] text-fg max-[800px]:text-[30px]",children:Y(t??"",!1)}),(a??"").trim()&&F3("p",{className:"mx-auto mt-5 max-w-[60ch] text-[15px] leading-relaxed text-fg/65",children:a})]}),h.length>0&&F3("div",{className:"flex flex-col gap-3",children:h.map((m,u)=>F3(l21,{names:m,reverse:u%2===1},u))}),((c??"").trim()||(r??"").trim())&&Oi("div",{className:"mx-auto mt-12 max-w-[860px] px-10 text-center max-[960px]:px-6",children:[(c??"").trim()&&F3("div",{className:"font-display text-[min(64px,var(--sf-heading-max,9999px))] font-medium uppercase leading-none text-accent max-[800px]:text-[min(46px,var(--sf-heading-max,9999px))]",children:c}),(l??"").trim()&&F3("div",{className:"mt-2 font-display text-[18px] font-medium uppercase tracking-[0.06em] text-fg",children:M(l??"")}),(r??"").trim()&&F3("p",{className:"mx-auto mt-4 max-w-[52ch] text-[13px] leading-relaxed text-fg/50",children:r})]})]})}var vV={label:"Integrations Grid",defaultProps:{eyebrow:"",title:"",body:"",apps:[],statValue:"",statLabel:"",note:""},render:({eyebrow:e,title:t,body:a,apps:s,statValue:c,statLabel:l,note:r,puck:o})=>r21(gV,{eyebrow:y(e,"Integrations",o),title:y(t,`Plays well with
|
|
140
140
|
*your favourite apps.*`,o),body:a,apps:s,statValue:c,statLabel:l,note:r,editing:o?.isEditing})};import{jsx as i21}from"react/jsx-runtime";import{jsx as fV}from"react/jsx-runtime";import{useContext as o21}from"react";function bV({src:e,alt:t,href:a,heightPx:s=m7,reverse:c=!0}){let l=Ll(),r=(e??"").trim(),o=r?{src:H2(r),reversedSrc:null,inkIsDark:null,wordmark:t?.trim()||null}:{src:l.src,reversedSrc:l.reversedSrc,inkIsDark:l.inkIsDark,wordmark:l.wordmark},i=o21(rd),n=Ur(),h=fV(xe,{variant:"footer",sizePx:s,src:o.src,reverse:c,reversedSrc:o.reversedSrc,inkIsDark:o.inkIsDark,wordmark:o.wordmark,siteName:l.siteName,fitToContainer:n,...i?.dark?{onLightSurface:!1}:{}});return a?fV(r0,{href:a,className:"inline-flex",children:h}):h}var xV={label:"Logo",defaultProps:{heightPx:m7,reverse:"auto"},render:({src:e,alt:t,href:a,heightPx:s,reverse:c})=>i21(bV,{src:e||void 0,alt:F2(t).text||void 0,href:a||void 0,heightPx:s,reverse:c!=="off"})};import{jsx as h21}from"react/jsx-runtime";import{jsx as Rs,jsxs as n21}from"react/jsx-runtime";function zV({items:e,contained:t,heading:a,columns:s,grayscale:c,logoHeight:l,bandPadding:r}){let o=s!=null?{flex:`0 0 calc((100% - ${(s-1)*3.5}rem) / ${s})`}:void 0;return n21(t2,{contained:t,className:r==null?"py-10":"",style:r==null?void 0:{paddingTop:`${r}px`,paddingBottom:`${r}px`},children:[a!=null&&a!==""?Rs("h2",{className:"mb-8 text-center font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:Y(a,!1)}):null,Rs("div",{className:"flex flex-wrap items-center justify-center gap-x-14 gap-y-8",children:(e??[]).map((i,n)=>Rs("div",{className:"text-center",style:o,children:i.src?Rs("img",{src:H2(i.src),alt:i.alt,className:["mx-auto w-auto opacity-60 transition-opacity hover:opacity-100",l==null?"h-7":"",c===!1?"":"grayscale"].filter(Boolean).join(" "),style:l==null?void 0:{height:`${l}px`}}):Rs("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:R0(i.alt||"Logo")})},n))})]})}var m21=()=>[{src:"",alt:p("Logo one")},{src:"",alt:p("Logo two")},{src:"",alt:p("Logo three")},{src:"",alt:p("Logo four")},{src:"",alt:p("Logo five")}],yV={label:"Logos",defaultProps:{items:[],contained:!0},render:({items:e,contained:t,heading:a,columns:s,logoHeight:c,bandPadding:l,grayscale:r,puck:o})=>h21(zV,{items:C1(e,m21(),o),contained:t,heading:y(a,"Trusted by *teams worldwide*",o),columns:s,logoHeight:c,bandPadding:l,grayscale:r})};import{jsx as u21}from"react/jsx-runtime";import{jsx as L6,jsxs as kV}from"react/jsx-runtime";import{jsx as wV,jsxs as p21}from"react/jsx-runtime";function CV({target:e,label:t}){let a=e.match(/^(\d+)(.*)$/),s=a?parseInt(a[1],10):0,c=a?a[2]:"",{ref:l,value:r}=ft(s),o=a?r+c:e;return p21("div",{ref:l,className:"min-w-0",children:[wV("div",{className:"font-heading2 text-[length:var(--size-headingMedium,40px)] font-medium leading-none tracking-[-0.02em] tabular-nums","aria-label":e,children:o}),wV("div",{className:"mt-1 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:t})]})}function MV({eyebrow:e,heading:t,body:a,stats:s,imageSrc:c,grayscale:l,...r}={}){let o=Ue(l,vt()),i=e||null,n=t||null,h=a||null,m=(s??[]).filter(u=>(u.value??"").trim()!==""||(u.label??"").trim()!=="");return L6("section",{className:"relative z-[2] bg-bg p-0",children:kV("div",{className:"grid h-screen min-h-[100vh] grid-cols-2 border-y border-line max-[960px]:h-auto max-[960px]:grid-cols-1",children:[L6("div",{className:"flex flex-col justify-center border-r border-line px-[var(--sf-site-gutter,40px)] py-[100px] max-[960px]:order-2 max-[960px]:border-r-0 max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[960px]:py-[60px]",children:kV("div",{className:E0(r)?"flex w-full flex-col gap-7":"ml-auto flex w-full flex-col gap-7 max-w-[calc(var(--sf-site-width,1600px)/2_-_var(--sf-site-gutter,40px)*2_-_1px)] max-[960px]:ml-0 max-[960px]:max-w-none",children:[i!==null&&L6(V1,{text:i,size:14}),n!==null&&L6("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,56px),var(--sf-heading-max,9999px))] font-normal leading-[1.05] tracking-[-0.03em] max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] max-[800px]:leading-[1]",children:Y(n,!0)}),h!==null&&z0(h).map((u,d)=>L6("p",{className:"max-w-[520px] text-[length:var(--size-body,16px)] leading-[1.7] text-fg-dim",children:M(u)},d)),m.length>0&&L6("div",{className:"mt-4 grid max-w-[520px] gap-6 border-t border-line pt-7",style:{gridTemplateColumns:`repeat(${m.length}, minmax(0, 1fr))`},children:m.map((u,d)=>L6(CV,{target:u.value??"",label:u.label??""},d))})]})}),L6("div",{className:"sf-card relative flex items-center justify-center bg-surface overflow-hidden max-[960px]:aspect-[4/3]",children:L6(k0,{label:"manifesto",src:c||void 0,objectFit:"cover",objectPosition:"center",treatment:o})})]})})}var d21=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],SV={label:"Brand Text",defaultProps:{eyebrow:"",imageSrc:"",stats:[]},render:({eyebrow:e,heading:t,body:a,stats:s,imageSrc:c,grayscale:l,widthMode:r,fullWidth:o,pageWidth:i,puck:n})=>u21(MV,{eyebrow:e2(e,A.eyebrow,n),heading:e2(t,A.heading,n),body:e2(a,A.body,n),stats:C1(s,d21,n),imageSrc:c||void 0,grayscale:l,widthMode:r,fullWidth:o,pageWidth:i})};import{jsx as z21}from"react/jsx-runtime";import{jsx as k1,jsxs as W0,Fragment as LV}from"react/jsx-runtime";var rg="#ffffff",I5="#16181d",B7="#5b6470",Gi="#9aa3ae",wt="#f4f6f8",J8="#e3e7ec",qi="#1f9d55";function g21({rows:e}){return k1("div",{className:"flex flex-col gap-3",children:e.map((t,a)=>{let s=t.state??"ok",c=s==="no";return W0("div",{className:"flex items-center gap-3 rounded-lg border px-4 py-3",style:{background:c?"#fbfbfc":wt,borderColor:J8},children:[s==="no"?k1("span",{"aria-hidden":!0,className:"text-[15px] font-bold",style:{color:Gi},children:"\u2715"}):k1("span",{"aria-hidden":!0,className:"h-[11px] w-[11px] flex-shrink-0 rounded-full",style:{background:s==="warn"?"var(--accent)":qi}}),k1("span",{className:"text-[14px] font-semibold",style:{color:c?Gi:I5},children:t.lead}),k1("span",{className:"text-[13px]",style:{color:c?Gi:B7},children:t.detail}),(t.status??"").trim()&&k1("span",{className:"ml-auto whitespace-nowrap text-[12px] font-bold",style:{color:s==="ok"?qi:s==="warn"?"var(--accent)":Gi},children:t.status})]},a)})})}var AV=["#c7cdd5","var(--accent)","#c7cdd5",qi];function v21({columns:e}){return k1("div",{className:"grid gap-2 rounded-xl p-3",style:{background:wt,gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`},children:e.map((t,a)=>W0("div",{className:"flex flex-col gap-2",children:[W0("div",{className:"flex items-baseline justify-between px-1",children:[k1("span",{className:"font-mono text-[9px] font-semibold uppercase tracking-[0.14em]",style:{color:B7},children:t.title}),k1("span",{className:"font-mono text-[9px] font-bold",style:{color:"var(--accent)"},children:t.cards.length})]}),t.cards.map((s,c)=>W0("div",{className:"rounded-md border px-2.5 py-2",style:{background:rg,borderColor:a===e.length-1?"#bfe3ce":J8},children:[k1("span",{"aria-hidden":!0,className:"mb-1.5 block h-[8px] w-[8px] rounded-full",style:{background:AV[a%AV.length]}}),k1("span",{className:"block text-[11px] font-semibold leading-snug",style:{color:I5},children:s})]},c))]},a))})}function f21({heading:e,bars:t}){let a=Math.max(...t.map(c=>c.value),0)||1,s=t.findIndex(c=>c.value===a);return W0("div",{className:"border-t pt-4",style:{borderColor:J8},children:[e.trim()&&k1("div",{className:"mb-3 font-mono text-[10px] font-semibold uppercase tracking-[0.18em]",style:{color:B7},children:e}),k1("div",{className:"flex flex-col gap-2.5",children:t.map((c,l)=>W0("div",{className:"flex items-center gap-3",children:[k1("span",{className:"w-[84px] flex-shrink-0 text-[12px] font-bold",style:{color:I5},children:c.label}),k1("span",{className:"h-[12px] rounded-full",style:{width:`${Math.max(c.value/a*60,4)}%`,background:l===s?"var(--accent)":l%2?"#c7cdd5":"#9aa3ae"}}),W0("span",{className:"text-[12px]",style:{color:B7},children:[c.value,"%"]})]},l))})]})}function HV({size:e}){let t=e/2;return W0("svg",{width:e,height:e,viewBox:`0 0 ${e} ${e}`,"aria-hidden":!0,children:[k1("circle",{cx:t,cy:t,r:t*.82,fill:"none",stroke:"#9aa3ae",strokeWidth:"2.5"}),k1("circle",{cx:t,cy:t,r:t*.5,fill:"none",stroke:"var(--accent)",strokeWidth:"2"}),k1("circle",{cx:t,cy:t,r:t*.14,fill:"var(--accent)"})]})}function b21({header:e,lines:t}){return W0("div",{style:{background:"#0c0e11"},children:[W0("div",{className:"relative flex items-center gap-2 px-4 py-3",style:{background:"#161a20"},children:[k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#e85d5d"}}),k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#efc65a"}}),k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#6fcf7e"}}),e.trim()&&k1("span",{className:"absolute inset-x-0 text-center font-mono text-[11px]",style:{color:"rgba(244,246,242,0.45)"},children:e})]}),W0("div",{className:"flex flex-col gap-1.5 px-5 py-5 font-mono text-[13px] leading-relaxed",children:[t.map((a,s)=>a.startsWith("$ ")?W0("div",{children:[k1("span",{style:{color:"var(--accent)"},children:"$ "}),k1("span",{style:{color:"#f4f6f2"},children:a.slice(2)})]},s):a.startsWith("\u2713")?k1("div",{style:{color:"#6fcf7e"},children:a},s):k1("div",{style:{color:"rgba(244,246,242,0.55)"},children:a},s)),k1("div",{"aria-hidden":!0,className:"mt-1 h-[15px] w-[8px]",style:{background:"var(--accent)"}})]})]})}function x21({urlText:e,heroTitle:t,heroButton:a,products:s}){return W0("div",{children:[W0("div",{className:"flex items-center gap-2 px-4 py-3",style:{background:wt},children:[k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#e85d5d"}}),k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#efc65a"}}),k1("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] rounded-full",style:{background:"#6fcf7e"}}),e.trim()&&k1("span",{className:"mx-auto rounded border px-6 py-1 text-[11px]",style:{background:rg,borderColor:J8,color:B7},children:e}),k1("span",{className:"w-[54px]","aria-hidden":!0})]}),W0("div",{className:"relative overflow-hidden px-5 py-6",style:{background:I5},children:[k1("div",{className:"absolute -right-4 top-1/2 -translate-y-1/2 opacity-90",children:k1(HV,{size:104})}),t.trim()&&k1("div",{className:"max-w-[240px] text-[15px] font-bold uppercase leading-snug tracking-wide text-white",children:t}),a.trim()&&k1("div",{className:"mt-3 inline-block rounded px-3.5 py-1.5 text-[11px] font-bold text-white",style:{background:"var(--accent)"},"aria-hidden":!0,children:a})]}),s.length>0&&k1("div",{className:"grid grid-cols-3 gap-3 p-4",children:s.map((c,l)=>W0("div",{className:"overflow-hidden rounded-lg border",style:{borderColor:J8},children:[k1("div",{className:"flex items-center justify-center py-3",style:{background:wt},children:k1(HV,{size:56})}),W0("div",{className:"flex flex-col gap-1 p-2.5",children:[k1("span",{className:"text-[10.5px] font-bold leading-tight",style:{color:I5},children:c.name}),k1("span",{className:"text-[11px] font-bold",style:{color:"var(--accent)"},children:c.price}),k1("span",{className:"mt-0.5 rounded px-2 py-1 text-center text-[9px] font-bold text-white",style:{background:I5},"aria-hidden":!0,children:"Add to cart"})]})]},l))})]})}function FV({eyebrow:e,title:t,body:a,variant:s="spec-card",cardHeader:c,badge:l,cardTitle:r,cardSubtitle:o,pills:i,tiles:n,rows:h,button:m,footnote:u,col1Title:d,col1Cards:v,col2Title:g,col2Cards:b,col3Title:f,col3Cards:w,col4Title:z,col4Cards:k,barsHeading:S,bars:H,termLines:I,urlText:P,heroTitle:D,heroButton:E,products:F,align:_="right",editing:Z=!1}={}){let G=(i??[]).filter(b1=>Z||(b1.value??"").trim()),V=(n??[]).filter(b1=>Z||(b1.label??"").trim()),j=(h??[]).filter(b1=>Z||(b1.lead??"").trim()),N=[[d,v],[g,b],[f,w],[z,k]].map(([b1,$])=>({title:(b1??"").trim(),cards:($??[]).map(u1=>(u1.text??"").trim()).filter(Boolean)})).filter(b1=>b1.title||b1.cards.length>0),Q=(H??[]).map(b1=>({label:(b1.label??"").trim(),value:parseFloat(b1.value??"")})).filter(b1=>b1.label&&Number.isFinite(b1.value)),W=(I??[]).map(b1=>b1.text??"").filter(b1=>Z||b1.trim()),U=(F??[]).map(b1=>({name:(b1.name??"").trim(),price:(b1.price??"").trim()})).filter(b1=>b1.name),i1=!!(e??"").trim()||!!(t??"").trim(),y1=!!(c??"").trim()||!!(r??"").trim()||G.length>0||V.length>0||j.length>0||N.length>0||Q.length>0||U.length>0||W.length>0||!!(D??"").trim();if(!Z&&!i1&&!y1)return null;let K=W0("div",{className:`w-full overflow-hidden rounded-2xl shadow-[0_24px_60px_rgba(0,0,0,0.35)] ${s==="kanban"||s==="browser"||s==="terminal"?"max-w-[600px]":"max-w-[520px]"}`,style:{background:rg},children:[s!=="terminal"&&(c??"").trim()&&W0("div",{className:"flex items-center justify-between px-6 py-4",style:{background:I5},children:[k1("span",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.22em] text-white",children:c}),(l??"").trim()&&W0("span",{className:"flex items-center gap-2 font-mono text-[11px] font-semibold uppercase tracking-[0.16em] text-white",children:[k1("span",{"aria-hidden":!0,className:"h-[9px] w-[9px] rounded-full",style:{background:qi}}),l]})]}),s==="terminal"?k1(b21,{header:c??"",lines:W}):s==="browser"?k1(x21,{urlText:P??"",heroTitle:D??"",heroButton:E??"",products:U}):W0("div",{className:"flex flex-col gap-5 p-6",children:[((r??"").trim()||(o??"").trim())&&W0("div",{children:[(r??"").trim()&&k1("div",{className:"text-[22px] font-bold leading-tight",style:{color:I5},children:r}),(o??"").trim()&&k1("div",{className:"mt-1 text-[14px]",style:{color:B7},children:o})]}),s==="fitment"&&G.length>0&&k1("div",{className:"flex flex-wrap gap-2.5",children:G.map((b1,$)=>W0("span",{className:"flex items-baseline gap-2 rounded border px-4 py-2",style:{background:wt,borderColor:J8},children:[k1("span",{className:"text-[11px]",style:{color:B7},children:b1.label}),k1("span",{className:"text-[13px] font-bold",style:{color:I5},children:b1.value})]},$))}),s!=="fitment"&&V.length>0&&k1("div",{className:"grid grid-cols-2 gap-3",children:V.map((b1,$)=>W0("div",{className:"rounded-lg px-4 py-3",style:{background:wt},children:[k1("div",{className:"font-mono text-[10px] font-semibold uppercase tracking-[0.18em]",style:{color:B7},children:b1.label}),k1("div",{className:"mt-1 text-[17px] font-bold",style:{color:I5},children:b1.value})]},$))}),j.length>0&&k1(g21,{rows:j}),(m??"").trim()&&k1("div",{className:"self-start rounded-lg px-6 py-2.5 text-[14px] font-bold text-white",style:{background:"var(--accent)"},"aria-hidden":!0,children:m}),s==="kanban"&&N.length>0&&k1(v21,{columns:N}),s==="claims"&&Q.length>0&&k1(f21,{heading:S??"",bars:Q}),(u??"").trim()&&k1("div",{className:"border-t pt-4",style:{borderColor:J8},children:k1("span",{className:"text-[15px] font-bold",style:{color:"var(--accent)"},children:u})})]})]}),c1=W0("div",{children:[(e??"").trim()&&k1("span",{className:"inline-block bg-accent px-3.5 py-1.5 font-mono text-[12px] font-semibold uppercase tracking-[0.16em] text-bg",children:M(e??"")}),(t??"").trim()&&k1("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()&&k1("p",{className:"mt-5 max-w-[46ch] text-[15px] leading-relaxed text-fg/65",children:a})]});return k1("section",{className:"relative z-[2] border-y border-line bg-surface",children:k1("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-cols-2 max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:_==="left"?W0(LV,{children:[k1("div",{className:"flex justify-center min-[960px]:justify-start",children:K}),c1]}):W0(LV,{children:[c1,k1("div",{className:"flex justify-center min-[960px]:justify-end",children:K})]})})})}var TV={label:"Mockup Card",defaultProps:{eyebrow:"",title:"",body:"",variant:"spec-card",cardHeader:"",badge:"",cardTitle:"",cardSubtitle:"",pills:[],tiles:[],rows:[],button:"",footnote:"",col1Title:"",col1Cards:[],col2Title:"",col2Cards:[],col3Title:"",col3Cards:[],col4Title:"",col4Cards:[],barsHeading:"",bars:[],termLines:[],urlText:"",heroTitle:"",heroButton:"",products:[],align:"right"},render:({eyebrow:e,title:t,body:a,variant:s,cardHeader:c,badge:l,cardTitle:r,cardSubtitle:o,pills:i,tiles:n,rows:h,button:m,footnote:u,col1Title:d,col1Cards:v,col2Title:g,col2Cards:b,col3Title:f,col3Cards:w,col4Title:z,col4Cards:k,barsHeading:S,bars:H,termLines:I,urlText:P,heroTitle:D,heroButton:E,products:F,align:_,puck:Z})=>z21(FV,{eyebrow:y(e,"In the product",Z),title:y(t,`Seen from
|
|
141
|
-
*the counter.*`,Z),body:a,variant:s,cardHeader:c,badge:l,cardTitle:r,cardSubtitle:o,pills:i,tiles:n,rows:h,button:m,footnote:u,col1Title:d,col1Cards:v,col2Title:g,col2Cards:b,col3Title:f,col3Cards:w,col4Title:z,col4Cards:k,barsHeading:S,bars:H,termLines:I,urlText:P,heroTitle:D,heroButton:E,products:F,align:_,editing:Z?.isEditing})};import{jsx as Z7}from"react/jsx-runtime";var PV={label:"Section Header",defaultProps:{headStyle:Hs,num:"01 / Section",numStyle:T8,title:"Section *title*",description:"",logoSrc:"",logoAlt:"",linkText:"",linkHref:"",fullWidth:!0,pageWidth:_9.default},render:({headStyle:e,num:t,numStyle:a,eyebrowLook:s,title:c,description:l,logoSrc:r,logoAlt:o,linkText:i,linkHref:n,rowGap:h,descriptionSize:m,widthMode:u,fullWidth:d,pageWidth:v,puck:g})=>{let b=y(i,"View all",g),f=R2({widthMode:u,fullWidth:d,pageWidth:v},"full"),w=Vi(e);return Z7("section",{className:"px-[var(--sf-site-gutter,40px)] pt-10 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-6",children:Z7("div",{className:f.mode==="page"?zs:void 0,children:w==="editorial"?Z7(D2,{num:y(t,"01 / Section",g),title:(()=>{let z=y(c,"Section *title*",g);return z?Y(z,!0):void 0})(),desc:(()=>{let z=y(l,"Short supporting line",g);return z?M(z):void 0})(),spaceBelow:""}):w==="simple"?Z7(s0,{look:"simple",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):w==="statement"?Z7(s0,{look:"statement",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):w==="natural"?Z7(s0,{look:"natural",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),description:y(l,"Short supporting line",g),eyebrowLook:o4(s,"SectionHeader"),rowGap:AT(h),descriptionSize:HT(m)}):w==="essay"?Z7(s0,{look:"essay",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):Z7(s0,{num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),description:y(l,"Short supporting line",g),logo:r?{src:r,alt:a1(o)}:void 0,link:b?{text:b,href:a1(n)||"#"}:void 0,numStyle:a,accent:!0})})})}};import{jsx as C21}from"react/jsx-runtime";import{jsx as y21}from"react/jsx-runtime";var w21={sm:"h-6",md:"h-12",lg:"h-24",xl:"h-40"};function EV({size:e}){return y21("div",{"aria-hidden":!0,className:w21[e]})}var VV={label:"Spacer",defaultProps:{size:"md"},render:({size:e})=>C21(EV,{size:e})};import{jsx as M21}from"react/jsx-runtime";import{jsx as Bs}from"react/jsx-runtime";var k21=()=>[{text:p("Spec label"),tone:"normal"},{text:p("Spec value"),tone:"muted"},{text:p("Spec label"),tone:"normal"},{text:p("Spec value"),tone:"muted"}];function NV({cells:e,fill:t="dark",editing:a=!1}){let s=(e??[]).filter(o=>(o?.text??"").trim()),c=s.length>0?s:a?k21():[];if(c.length===0)return null;let l=t!=="none",r=Bs("div",{className:"mx-auto flex max-w-[min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))] flex-wrap items-baseline justify-between gap-x-8 gap-y-1 px-[var(--sf-site-gutter,40px)] py-4 text-[length:var(--size-label,12px)] uppercase tracking-[0.1em] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-3",children:c.map((o,i)=>Bs("span",{className:l?o.tone==="muted"?"text-plate-band-fg-dim":"text-plate-band-fg":o.tone==="muted"?"text-fg-dim":"text-fg",children:o.text},i))});return Bs("section",{className:"w-full",children:l?Bs("div",{className:"bg-plate-band",children:r}):Bs("div",{className:"border-t border-line",children:r})})}var _V={label:"Spec Strip",defaultProps:{cells:[{text:"",tone:"normal"},{text:"",tone:"normal"}],fill:"dark"},render:({cells:e,fill:t,puck:a})=>M21(NV,{cells:e,fill:t,editing:a?.isEditing})};import{jsx as F21}from"react/jsx-runtime";import{jsx as Q8,jsxs as BV}from"react/jsx-runtime";import{Fragment as S21,jsx as IV,jsxs as L21}from"react/jsx-runtime";function RV({value:e}){let t=e.match(/^(\d+)(.*)$/),{ref:a,value:s}=ft(t?Number.parseInt(t[1],10):0);return!t||p2(e)!==e?IV(S21,{children:M(e)}):IV(z8,{value:e,children:L21("span",{ref:a,children:[s,t[2]]})})}var A21="grid grid-cols-4 gap-8 max-[800px]:grid-cols-2",H21={2:"grid grid-cols-2 gap-8",3:"grid grid-cols-3 gap-8 max-[800px]:grid-cols-2",4:"grid grid-cols-4 gap-8 max-[800px]:grid-cols-2"};function ZV({items:e,contained:t,heading:a,columns:s,background:c,editing:l}){let r=s===void 0?A21:H21[s],o=Q8("div",{className:r,children:(e??[]).map((i,n)=>BV("div",{className:"border-t border-line pt-5",children:[Q8("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))] font-medium leading-none tracking-[-0.03em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",children:l?M(i.value):Q8(RV,{value:i.value})}),Q8("div",{className:"mt-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:M(i.label)})]},n))});return a===void 0&&c===void 0?Q8(t2,{contained:t,className:"py-12",children:o}):Q8(t2,{contained:t,className:"py-12",children:BV("div",{style:c?{backgroundColor:c}:void 0,children:[a?Q8("div",{className:"mb-6 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:M(a)}):null,o]})})}var T21=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],DV={label:"Stats",defaultProps:{items:[],contained:!0},render:({items:e,contained:t,heading:a,columns:s,background:c,puck:l})=>F21(ZV,{items:C1(e,T21,l),contained:t,heading:y(a,"By the *numbers*",l),columns:s,background:Q6(c,s3.Stats),editing:l?.isEditing})};import{Fragment as N21,jsx as GV}from"react/jsx-runtime";import{jsx as og}from"react/jsx-runtime";var P21={left:"text-left",center:"text-center mx-auto",right:"text-right ml-auto"},E21="max-w-[380px] text-[length:var(--size-body,15px)] leading-[1.5] opacity-80 max-[800px]:text-[length:var(--size-body,14px)]",V21={default:"text-fg",dim:"text-fg-dim"};function OV({text:e,align:t,tone:a,contained:s,hero:c=!1}){if(c)return og("p",{className:E21,children:M(e)});let l=`max-w-[680px] whitespace-pre-line text-[length:var(--size-body,17px)] leading-[1.7] ${P21[t]} ${V21[a]}`;return og(t2,{contained:s,className:"py-4",children:z0(e).map((r,o)=>og("p",{className:l,children:M(r)},o))})}var qV={label:"Text",defaultProps:{text:"",align:"left",tone:"default",contained:!0},render:({text:e,align:t,tone:a,contained:s,puck:c})=>F2(e).hidden?GV(N21,{}):GV(OV,{text:$4(a1(e),A.body,c)??"",align:t,tone:a,contained:s})};var WV={Banner:MP,Breadcrumb:mA,ButtonBlock:LP,Cards:bA,CategoryBar:HP,Chart:MA,ContactLocations:EP,CustomHTML:aE,Divider:cE,DocBody:$A,DocMasthead:JA,DocMetaCards:tH,DocTabs:cH,Eyebrow:oE,FAQ:dH,FeaturedCover:kH,Flex:NH,Footprint:KH,Grid:QH,Heading:hE,Hero:sF,HeroGroup:nF,HeroSingle:fF,HeroSlide:zF,ImageBlock:pE,Integrations:vV,IntroBleed:AF,Countdown:ZA,KeyFeatures:PF,LogoBlock:xV,Logos:yV,LongRead:BF,Manifesto:SV,Masthead:GF,Mockup:TV,OrderSummary:XF,ParagraphsA:eT,PaymentBadges:cT,PostCard:oT,ProcessSteps:pT,Prose:fT,SectionHeader:PV,Series:ET,Spacer:VV,SpecStrip:_V,Split:DT,Stats:DV,StatsParagraph:jT,Testimonials:YT,Text:qV,Ticker:rP,Timeline:dP,TimelineTrack:fP,TitleWithButtons:yP};var _21={Banner:nA,Breadcrumb:pA,ButtonBlock:vA,Cards:zA,CategoryBar:yA,Chart:SA,ContactLocations:_A,Countdown:OA,CustomHTML:GA,Divider:jA,DocBody:YA,DocMasthead:QA,DocMetaCards:aH,DocTabs:lH,Eyebrow:rH,FAQ:gH,FeaturedCover:MH,Flex:IH,Footprint:YH,Grid:tF,Heading:aF,Hero:rF,HeroGroup:dF,HeroSingle:xF,HeroSlide:yF,ImageBlock:MF,Integrations:SF,IntroBleed:FF,KeyFeatures:VF,LogoBlock:NF,Logos:_F,LongRead:ZF,Manifesto:DF,Masthead:qF,Mockup:UF,OrderSummary:JF,ParagraphsA:tT,PaymentBadges:lT,PostCard:iT,ProcessSteps:dT,Prose:bT,SectionHeader:TT,Series:VT,Spacer:NT,SpecStrip:IT,Split:OT,Stats:GT,StatsParagraph:KT,Testimonials:JT,Text:QT,Ticker:oP,Timeline:gP,TimelineTrack:bP,TitleWithButtons:CP},B1=et(WV,_21);import{IconButton as UV}from"efficient-shell/ui";import{SettingsField as B21}from"efficient-easel/panel";import{ColumnsIcon as Z21}from"efficient-easel/icons";import{Fragment as I21}from"react";import{jsx as R21}from"react/jsx-runtime";function R5(e,t){return e.split(/\{([A-Za-z][A-Za-z0-9_]*)\}/g).map((a,s)=>s%2===1?R21(I21,{children:a in t?t[a]:`{${a}}`},s):a)}import{Fragment as jV,jsx as Ct,jsxs as ig}from"react/jsx-runtime";function D21(e,t,a,s){let c=a.indexOf(e[t]),l=c>=0?c:0,r=a[Math.min(Math.max(l+s,0),a.length-1)];return{...e,[t]:r}}function Zs({label:e,unit:t,steps:a,value:s,onChange:c,format:l=String,note:r}){let o=C5(),i=a.indexOf(s[o]),n=i>=0?i:0,h=m=>c(D21(s,o,a,m));return Ct(B21,{label:p(e),icon:Ct(Z21,{}),action:ig("div",{className:"sf-colstep",children:[Ct(UV,{variant:"secondary",size:"sm","aria-label":p("Fewer {unit} on {view}",{unit:t,view:p(w5[o])}),disabled:n<=0,onClick:()=>h(-1),children:"\u2212"}),Ct("span",{className:"sf-colstep-value","aria-live":"polite",children:l(a[n])}),Ct(UV,{variant:"secondary",size:"sm","aria-label":p("More {unit} on {view}",{unit:t,view:p(w5[o])}),disabled:n>=a.length-1,onClick:()=>h(1),children:"+"})]}),hint:ig(jV,{children:[R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Ct("strong",{children:p(w5[o])})}),r?ig(jV,{children:[" ",r]}):null]})})}var A6="auto",hg=1,KV=6,mg={desktop:A6,tablet:A6,mobile:A6},$V=[A6,...Array.from({length:KV-hg+1},(e,t)=>hg+t)],O21="1rem",YV=`var(--sf-block-gap-rem, var(--sf-card-gap, ${O21}))`,pg=240,ug=150,G21=.5,q21=e=>`--plp-grid-cols-${e}`,W21="--plp-grid-gap";function XV(e){return e===A6?"Auto":String(e)}function ng(e){if(e===A6)return A6;let t=typeof e=="number"?e:NaN;return Number.isFinite(t)?Math.min(Math.max(Math.round(t),hg),KV):A6}function Wi(e){if(!e||typeof e!="object")return{...mg};let t=e;return{desktop:ng(t.desktop),tablet:ng(t.tablet),mobile:ng(t.mobile)}}function U21(e){if(e===A6)return`repeat(auto-fill, minmax(${pg}px, 1fr))`;let a=`calc((100% - ${`${e-1} * ${YV}`}) / ${e} - ${G21}px)`;return`repeat(auto-fill, minmax(max(${ug}px, ${a}), 1fr))`}function JV(e,t=null){let a={[W21]:YV};for(let s of Pw)a[q21(s)]=U21(e[t??s]);return a}import{Fragment as j21,jsx as dg}from"react/jsx-runtime";function gg({value:e,onChange:t}){return dg(Zs,{label:"Columns",unit:p("items per row"),steps:$V,value:Wi(e),format:a=>p(XV(a)),onChange:t,note:dg(j21,{children:R5(p("{auto} fits as many {px}px-wide cards as the width allows. A number is a maximum: where it would squeeze cards under {min}px the row shows fewer.",{px:pg,min:ug}),{auto:dg("strong",{children:p("Auto")})})})})}import{useCallback as l5,useEffect as V41,useId as N41,useMemo as T3,useRef as _41,useState as I41}from"react";import{jsxs as QV}from"react/jsx-runtime";function s5({text:e,linkText:t,linkHref:a}){let s=(t??"").trim(),c=(a??"").trim(),l=!!s&&!!c;return!e&&!l?null:QV("p",{className:"mt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.06em] text-fg-dim",children:[e?M(e):null,e&&l?" ":null,l&&QV(L1,{href:c,className:"text-accent transition-colors hover:text-fg",children:[M(s)," \u2192"]})]})}import{createContext as K21,useCallback as eN,useContext as $21,useEffect as Y21,useId as X21,useMemo as J21,useRef as Q21,useState as e31}from"react";import{jsx as t31}from"react/jsx-runtime";var tN=K21(null);function fR1({reason:e,children:t}){let[a,s]=e31([]),c=Q21(null),l=eN(n=>{s(h=>h.includes(n)?h:[...h,n])},[]),r=eN(n=>{s(h=>h.filter(m=>m!==n))},[]),o=e==="none-configured",i=J21(()=>({noCurrencyConfigured:o,live:a,firstRendered:c,join:l,leave:r}),[o,a,l,r]);return t31(tN.Provider,{value:i,children:t})}function aN(e){let t=$21(tN),a=X21(),s=!!e&&!!t?.noCurrencyConfigured;s&&t&&t.firstRendered.current===null&&(t.firstRendered.current=a);let c=t?.join,l=t?.leave;return Y21(()=>{if(!(!s||!c||!l))return c(a),()=>l(a)},[s,c,l,a]),!s||!t?!1:(t.live.length>0?t.live[0]:t.firstRendered.current)===a}import{jsx as s31}from"react/jsx-runtime";var a31="This website has no currency yet. Add one in {place} and these cards will price. Only you can see this line.";function Ds({editing:e}){return aN(e)?s31(s5,{text:p(a31,{place:p("Settings")})}):null}import{useEffect as c31,useState as l31}from"react";var kt=ct({fetch:(e,t)=>J1.listProducts(e,{siteId:t,kinds:["alloy-wheel","tyre"]}),keyBy:i2}),i3=(e=!1)=>kt(e).then(t=>t.filter(a=>a.kind==="alloy-wheel"));function sN(e){let[t,a]=l31(null);return c31(()=>{let s=!1;return e().then(c=>{s||a(c)}),()=>{s=!0}},[e]),t}function Ui(){return sN(i3)}function cN(){return sN(kt)}function r31(e){return e.length===1?h4[e[0]]:"Products"}function ji(e){return e.length===1?e[0]:null}function o31(e){switch(ji(e)){case"alloy-wheel":return"Only wheels that bolt on";case"tyre":return"Only sizes your car takes";default:return"Only what fits your car"}}function i31(e){switch(ji(e)){case"alloy-wheel":return{heading:"Let's find wheels that fit your car.",intro:"Tell us what you drive and we'll show you every set that bolts straight on \u2014 bolt pattern, offset and hub bore checked for you."};case"tyre":return{heading:"Let's find tyres that fit your car.",intro:"Tell us what you drive and we'll show you every tyre made in your car's factory sizes \u2014 front and rear checked for you."};default:return{heading:"Let's find products that fit your car.",intro:"Tell us what you drive and we'll show you what fits. Wheels are checked on bolt pattern, offset and hub bore. Tyres are checked on the sizes your car takes."}}}function n31(e){switch(ji(e)){case"alloy-wheel":return"We only list a wheel here once its bolt pattern and hub bore are confirmed against your car. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand.";case"tyre":return"We only list a tyre here once one of its sizes is confirmed for your car. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand.";default:return"We only list a product here once it is confirmed against your car: a wheel on its bolt pattern and hub bore, a tyre on the sizes your car takes. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand."}}var h31="We don't have factory tyre data for this exact car, so we can't promise a fit. Here are all tyres instead \u2014 the size is printed on your current tyre's sidewall.";function Os(e){let t=M5(e),a=i31(e),s=`showing every ${t.one}`;return{promise:o31(e),showAll:`Show all ${t.many}`,browseInstead:`Browse all ${t.many} instead`,showingEvery:s,eyebrow:`${r31(e)} \xB7 checked fitment`,gateHeading:a.heading,gateIntro:a.intro,nothingFits:n31(e),noData:ji(e)==="tyre"?h31:`No fitment data for this car \u2014 ${s}`,cascadeDown:`Vehicle data is unavailable right now \u2014 browse all ${t.many} and we'll help you check fitment at checkout.`,countFits:c=>`${c} ${c===1?t.one:t.many} fit${c===1?"s":""}`}}function lN(e,t,a,s){let c=Os(a),l=a.length!==s.length;return{heading:!l&&e||c.gateHeading,intro:!l&&t||c.gateIntro}}import{useCallback as I31,useEffect as R31,useMemo as B31,useState as PN}from"react";import{useState as m31}from"react";import{jsx as vg}from"react/jsx-runtime";function Gs({brand:e,logo:t}){let[a,s]=m31(!1),c=(e??"").trim();if(!c)return null;let l=a?void 0:s4(t??void 0);return vg("div",{className:"sf-card-plate absolute inset-x-0 bottom-0 flex h-1/4 items-center justify-center bg-[var(--card-bg)] px-4 transition-colors duration-200 group-hover:bg-[var(--card-bg-hover)]",children:l?vg("img",{src:l,alt:c,className:"max-h-[52%] max-w-[78%] object-contain",draggable:!1,onError:()=>s(!0)}):vg("span",{className:"truncate font-display text-[length:var(--size-body,18px)] font-medium uppercase leading-none tracking-[-0.01em] text-fg",children:c})})}import{Fragment as p31,jsx as rN,jsxs as u31}from"react/jsx-runtime";function fg(e,t){return!e&&!t?null:u31(p31,{children:[e&&rN("span",{className:"text-fg",children:e}),e&&t?rN("span",{className:"mx-[6px] text-fg-dim",children:"\xB7"}):null,t]})}function qs(e,t){let a=Me(t);return e.kind||e.brand&&a("brand")?!0:e.process&&a(Se)}function Ki({kindLabel:e,brand:t,process:a},s){if(!qs({kind:!!e,brand:!!t,process:!!a},s))return null;let c=Me(s);return fg(e,c("brand")?t:null)??(c(Se)?a:null)}import{useEffect as d31,useState as oN}from"react";var bg=new Map;function g31(e){let t=bg.get(e);if(t)return t;let a=v0.getTyre(e).catch(s=>{throw bg.delete(e),s});return bg.set(e,a),a}function iN(e,t){let[a,s]=oN("idle"),[c,l]=oN(null);return d31(()=>{if(!t||!e)return;let r=!1;return s("loading"),g31(e).then(o=>{r||(l(o),s("ready"))}).catch(()=>{r||s("error")}),()=>{r=!0}},[e,t]),{state:a,tyre:c}}import{Fragment as v31}from"react";import{Fragment as xg,jsx as c5,jsxs as B5}from"react/jsx-runtime";var $i="mt-3 flex h-[26px] items-center gap-1",Yi="flex min-w-0 items-center gap-1 overflow-hidden",Xi="shrink-0 border border-line px-1.5 py-0.5 font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] text-fg-dim",zg="border px-1.5 py-0.5 font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] whitespace-nowrap",Ji=`${zg} border-accent/60 text-accent`,f31=e=>`calc((100% - ${e}px) / 2)`,b31=2,x31=28,nN=e=>b31+2*x31+(e?10:0);var z31=16;var y31="whitespace-nowrap",w31=e=>typeof e=="string"?e:e.text;function Qi(e,t="\xB7"){return e.map((a,s)=>{let c=w31(a),l=typeof a!="string"&&a.accent;return B5(v31,{children:[c5("span",{className:`${y31}${l?" text-accent":""}`,children:s<e.length-1?`${c} ${t}`:c}),s<e.length-1?" ":null]},c)})}var en="mt-3 flex flex-col gap-2",e9="cursor-pointer bg-btn px-4 py-2.5 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-btn-ink transition-colors hover:bg-fg",tn="border border-btn px-4 py-2.5 text-center font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-btn transition-colors hover:bg-btn hover:text-btn-ink",C31="border px-2 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.3em]",Ws="absolute right-[18px] top-[18px] z-10";function Mt({tone:e,className:t,children:a}){return c5("span",{className:[t,C31,e==="solid"?"border-accent bg-accent text-bg":"border-accent text-accent"].filter(Boolean).join(" "),children:a})}function t9({variant:e="catalog",wide:t=!1,href:a,identityLink:s=!1,outline:c="none",imageBackgroundFill:l=e7,containerProps:r,probes:o,indexBadge:i,badges:n,image:h,imageSecond:m,plate:u,eyebrow:d,reserveEyebrow:v=!1,name:g,spec:b,was:f,price:w,metaLine:z,swatches:k,showPrice:S=!0,reserveSwatches:H=!0,extras:I}){let P=e==="catalog",D=Uy(l),E=D&&l===U9,F=E?"bg-[var(--wheel-stage)] p-[5px]":D?"p-[5px]":"",_=D&&!E?{backgroundColor:l}:{},Z=(b1,$)=>c5("figure",{className:`m-0 aspect-square [flex:0_0_auto] max-w-full max-[800px]:w-[252px] ${$}`,style:{width:f31(nN(D))},children:b1}),G=P?B5("div",{className:t?`relative mt-2 mb-5 flex items-center justify-center [&_img]:object-top max-[800px]:flex-col ${F}`:`relative mt-2 mb-5 flex aspect-square items-center justify-center overflow-hidden [&_img]:object-top ${F}`,style:t?{..._,borderRadius:10,columnGap:nN(D),rowGap:z31}:{..._,borderRadius:"var(--sf-card-image-radius, 10px)"},children:[t?B5(xg,{children:[Z(h,"max-[800px]:-translate-x-[38px]"),Z(m??h,"max-[800px]:translate-x-[38px]")]}):h,u]}):B5("div",{className:"relative mb-[18px] aspect-square overflow-hidden bg-bg p-[30px] [&_img]:object-top",style:{borderRadius:"var(--sf-card-image-radius, 10px)"},children:[h,u]}),V=`font-mono text-[length:var(--size-label,12px)] uppercase text-accent ${P?"tracking-[0.3em]":"tracking-[0.25em]"}`,j=d?c5("div",{className:V,children:d}):P&&v?c5("div",{"aria-hidden":!0,className:V,children:"\xA0"}):null,N=c5("div",{className:P?"mt-2 h-[60px] overflow-hidden break-words font-heading3 text-[length:var(--size-headingSmall,30px)] font-medium uppercase leading-none tracking-[-0.02em]":"mt-[6px] font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium tracking-[-0.02em]",children:g}),Q=c5("div",{className:P?"mt-2 h-[38px] overflow-hidden font-mono text-[length:var(--size-label,13px)] leading-[19px] tracking-[0.14em] text-fg-dim":"mt-[4px] font-mono text-[length:var(--size-label,13px)] tracking-[0.1em] text-fg-dim",children:b}),W=S?B5("div",{className:"mt-2 font-mono text-[length:var(--size-label,13px)]",children:[f&&c5("span",{className:"mr-2 text-fg-dim line-through",children:f}),w]}):null,U=S&&z?c5("div",{className:"mt-[2px] font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] text-fg-dim",children:z}):null,i1=P&&!k?H?c5("div",{"aria-hidden":!0,className:"mt-4 h-4"}):null:k,y1=[P?"sf-card sf-card-fill group relative flex min-h-[460px] flex-col bg-[var(--card-bg)] px-7 pt-8 pb-7 transition-colors duration-200 hover:bg-[var(--card-bg-hover)]":"sf-card sf-card-fill group relative block bg-[var(--card-bg)] p-5 transition-colors duration-300 hover:bg-[var(--card-bg-hover)]",Pl(c),t?"col-span-2 max-[800px]:col-span-1 @max-[720px]:col-span-1":""].filter(Boolean).join(" "),K=B5(xg,{children:[G,j,N]}),c1=B5(xg,{children:[Q,W,U,i1,I]});return a?s?B5("article",{...r,className:y1,children:[o,i,n,c5(L1,{href:a,className:"flex flex-col",children:K}),c1]}):B5(L1,{href:a,className:y1,children:[o,i,n,K,c1]}):B5("article",{...r,className:y1,children:[o,i,n,K,c1]})}function yg(e){return(e.components??[]).reduce((a,s)=>a+s.wheels,0)>4}function hN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(yg)}var k31=150,M31="Front + rear",mN="L/R pair",pN="Not handed",S31="L/R";function L31(e){return e.et==null||e.rearEt==null?0:Math.abs(e.rearEt-e.et)}function A31(e){return L31(e)>=k31}function uN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(A31)}function St(e){return e.directional===!0}function dN(e){return e.rearWidth!=null||e.rearEt!=null&&e.rearEt!==e.et}function gN(e){return{twoObjects:F31(e),handed:e.handed??!1,staggered:!1}}function vN(e){let t=[e.twoObjects?M31:"",e.handed?S31:""].filter(Boolean);return t.length?t.join(" \xB7 "):null}function fN(e){return e.handed}function H31(e){return new Set((e.components??[]).map(t=>t.partNumber)).size>1}function bN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(H31)}function F31(e){return(e.setWheelCount??0)>4}var T31=new Set(["boltPattern"]);function xN(e,t){return e&&T31.has(t)}var P31="dually";function Lt(e){let t=e.components.reduce((c,l)=>c+l.wheels,0)||4,a=e.kind,s=[a==="staggered"?"Staggered":a===P31?"Dually":"",St(e)?"L/R":""].filter(Boolean);return s.length?`${s.join(" ")} set of ${t}`:`Set of ${t}`}function E31(e,t){return[...new Set(e.filter(a=>!t||a.finishName===t).map(a=>a.size))]}function At(e,t,a){if(!(!t||!a))return e.find(s=>s.finishName===t&&s.size===a)}function Us(e){return e!=null&&e.inStock===!1}function zN(e,t){return t?e.filter(a=>a.finishName===t&&Us(a)):[]}function yN(e,t,a){return t.findIndex((s,c)=>a[c]!==!1&&E31(e,s).length>0)}function an(e){let t=new Set((e.sizePairs??[]).map(c=>`${c.diameter}x${c.width}`)),a=e.spec?.pcds??[],s=e.spec?.etRange??[];return t.size===1&&a.length<=1&&(s.length===0||s[0]===s[s.length-1])}function sn(e){return e.et==null?null:e.rearEt!=null&&e.rearEt!==e.et?`${e.et}/${e.rearEt}`:String(e.et)}function wg(e){return e.diameter==null||e.width==null?JSON.stringify([e.size]):JSON.stringify([e.kind,e.diameter,e.width,e.rearWidth??null])}function wN(e){return e.diameter==null||e.width==null?e.size:`${e.diameter}" ${e.kind}`}function CN(e){return e.diameter==null||e.width==null?"":e.rearWidth!=null?`${P2(e.width)} front / ${P2(e.rearWidth)} rear`:`${P2(e.width)} all round`}function js(e){if(e.diameter==null||e.width==null)return e.size;let t=(a,s)=>`${e.diameter} \xD7 ${P2(a)}${s!=null?` ET ${s}`:""}`;return dN(e)?`${t(e.width,e.et)} front \xB7 ${t(e.rearWidth??e.width,e.rearEt)} rear`:t(e.width,e.et)}function Cg(e,t){return t?e.filter(a=>a.finishName===t):[]}var kN="handed",MN="plain";function Ks(e){let t=e.variants??[],a=e.finishes.map(u=>({value:u.name,label:u.name,swatch:u.color}));function s(u){let d=[];for(let v of t){let g=u(v);!g||d.some(b=>b.value===g.value)||d.push(g)}return d}let c=s(u=>({value:wg(u),label:wN(u),note:CN(u)})),l=s(u=>u.boltPattern?{value:u.boltPattern,label:u.boltPattern}:null),r=s(u=>{let d=sn(u);return d===null?null:{value:d,label:`ET ${d}`}}),o=s(u=>u.centreBore==null?null:{value:P2(u.centreBore),label:`${P2(u.centreBore)} mm`}),i=s(u=>({value:St(u)?kN:MN,label:St(u)?mN:pN})),n=t.map(u=>({id:`${u.finishName}|${u.size}`,options:{finish:u.finishName,size:wg(u),variantSize:u.size,...u.boltPattern?{boltPattern:u.boltPattern}:{},...sn(u)!==null?{et:sn(u)}:{},...u.centreBore==null?{}:{centreBore:P2(u.centreBore)},pairing:St(u)?kN:MN},inStock:!Us(u),image:null,components:u.components})),m=((e.defaultFinish?a.find(u=>u.value===e.defaultFinish):void 0)??a[0])?.value;return{kind:"alloy-wheel",source:e,slug:e.slug,name:e.name,eyebrow:e.process,badge:e.badge==="new"?"New 2026":e.badge?"Bestseller":"",href:`/wheels/${e.slug}`,crumbs:[{label:"Home",href:"/"},{label:"Wheels",href:"/wheels"},{label:e.process,href:"/wheels"},{label:e.name}],cover:e.coverImage??null,inStock:e.inStock===!0,mediaGroups:e.mediaGroups,optionFields:[{key:"finish",label:"Finish",prompt:"Select a finish",role:"resolves",display:"swatch",defaultValue:m},{key:"size",label:"Size",prompt:"Select a size",role:"resolves",display:"pill",empty:{text:"This wheel isn't available to order online in this finish.",linkText:"Contact us about it \u2192",href:"/contact"}},{key:"boltPattern",label:"Bolt pattern",prompt:"Select a bolt pattern",role:"describes",display:"pill"},{key:"et",label:"Offset",prompt:"Select an offset",role:"describes",display:"pill"},{key:"centreBore",label:"Centre bore",prompt:"Select a centre bore",role:"describes",display:"pill"},{key:"pairing",label:"Wheels",prompt:"Select a pairing",role:"describes",display:"pill"}],optionValues:{finish:a,size:c,boltPattern:l,et:r,centreBore:o,pairing:i},parts:n,anchorPrices:e.prices,anchorMsrpPrices:e.msrpPrices??{}}}function SN(e,t){if(e.kind!=="alloy-wheel"||t===null)return e;let a=new Set(ZM(e.source.variants??[],t));if(a.size===0)return e;let s=e.parts.filter(o=>{let i=D7(e.source,o);return i!==null&&a.has(i)});if(s.length===0||s.length===e.parts.length)return e;let c=(o,i)=>new Set(o.map(n=>n.options[i]).filter(n=>n!==void 0)),l={},r=[];for(let o of e.optionFields){let i=c(e.parts,o.key),n=c(s,o.key),h=(e.optionValues[o.key]??[]).filter(u=>n.has(u.value)||!i.has(u.value));l[o.key]=h;let m=o.defaultValue!==void 0&&!h.some(u=>u.value===o.defaultValue)?h[0]?.value:o.defaultValue;r.push(m===o.defaultValue?o:{...o,defaultValue:m})}return{...e,optionFields:r,optionValues:l,parts:s}}function D7(e,t){return t?At(e.variants??[],t.options.finish,t.options.variantSize)??null:null}function LN(e,t){return e.finishes.find(a=>a.name===t)??e.finishes[0]??GC}function FN(e){return e.kind==="tyre"?"advisory":"required"}var Ht={choice:FC,qty:1};function V31(e,t){if(e.kind!=="alloy-wheel")return`Set of ${4}`;let a=D7(e.source,t);return a?Lt(a):`Set of ${4}`}var AN=(e,t)=>e===1?t:`${e} \xD7 ${t}`;function HN(e){return e.unit==="set"?{label:`Add a spare \u2014 ${i7+1} instead of ${i7}`}:null}var a9={howMany:"How many wheels",oneSet:"One set",oneSetPlusSpare:"One set + 1 spare",whichSide:"Which side is the spare?",left:"Left",right:"Right"};function N31(e,t){return t.unit!=="set"||PC(e)===null?null:{counts:[{value:i7,label:a9.oneSet},{value:i7+vr,label:a9.oneSetPlusSpare}],side:t.spares>0?{label:a9.whichSide,options:[{value:"left",label:a9.left},{value:"right",label:a9.right}]}:null}}function kg(e,t,a){if(e.kind==="tyre")return{packs:[{value:"set",label:`A set of ${i7}`},{value:"single",label:"Just one"}],extra:HN(a.choice),spareCounts:[],spareSide:null,components:t?su({sku:t.id,prices:t.components[0].prices},a.choice):[],quantityLabel:AN(a.qty,fr(a.choice))};let s=t?N31(t.components,a.choice):null;return{packs:[],extra:s?null:HN(a.choice),spareCounts:s?.counts??[],spareSide:s?.side??null,components:t?Im(t.components,a.choice):[],quantityLabel:AN(a.qty,EC(V31(e,t),a.choice))}}function TN(e,t,a,s,c){if(!t)return null;if(e.kind==="tyre"){let h=(e.source.variants??[]).find(m=>m.sku===t.id);return h?fo(e.source,h,s.choice,s.qty):null}let l=e.source,r=D7(l,t);if(!r)return null;let o=t.options.finish??"",i=r.size,n=s.choice.spares>0;return{id:`${l.slug}|${o}|${i}|${c.fitmentKey}${n?"|spare":""}`,slug:l.slug,name:qe(l.name),process:l.process,positionNo:"01",config:[{label:i},{label:o,gold:!0},{label:c.fitmentLabel},{label:kg(e,t,s).quantityLabel}],finishName:o,size:i,components:Im(t.components,s.choice),qty:s.qty,...n?{pack:s.choice}:{}}}function cn(e,t){let a=t.trim(),s=e.trim();return!s||!_31(a,s)?a:a.slice(s.length).replace(/^[^\p{L}\p{N}]+/u,"")||a}function _31(e,t){if(e.length<t.length||e.slice(0,t.length).toLowerCase()!==t.toLowerCase())return!1;let a=e[t.length];return a===void 0||!/[\p{L}\p{N}]/u.test(a)}import{Fragment as G31,jsx as O7,jsxs as $s}from"react/jsx-runtime";var Z31="from ",D31=2,O31=[];function Mg({brand:e,brandLogo:t,brandPlate:a=!0,kindLabel:s=null,showBrand:c=!0,name:l,slug:r,sizes:o,fitSize:i=null,rimDiameters:n,prices:h,image:m,currency:u,editing:d=!1,fieldUsage:v=O31}){let g=Me(v),{add:b,open:f,warmCatalog:w}=i4();R31(()=>{d||w("tyre")},[d,w]);let{currency:z}=d0(),k=h7(de(h,u),null),S=zr(k,u,Z31),H=[o.length>0?`${o.length} ${o.length===1?"size":"sizes"}`:null,g("rim_diameter")?$r(n):null].filter(Boolean).join(" \xB7 "),I=Ge(r),[P,D]=PN(!1),E=I31(()=>{r&&D(!0)},[r]),{state:F,tyre:_}=iN(r??null,P),Z=B31(()=>_?.variants??[],[_]),[G,V]=PN(null),j=Z.length===1?Z[0].size:null,N=G??j,Q=Z.find(u1=>u1.size===N),W=Q!=null&&OS(Q,z),U=F==="ready",i1=!I||F==="error"||U&&Z.length===0;function y1(){!_||!Q||!W||d||(b(fo(_,Q,Ht.choice,Ht.qty)),f())}let K=U&&Z.length>0?Z.map(u1=>u1.size):o,c1=K.slice(0,D31),b1=K.length-c1.length,$=u1=>["cursor-pointer transition-colors",zg,u1?"border-accent bg-accent text-bg":"border-accent/60 text-accent hover:border-accent hover:bg-accent/10"].join(" ");return O7(t9,{href:I,identityLink:!0,containerProps:{onPointerEnter:E,onTouchStart:E,onFocusCapture:E},image:O7(p6,{image:m,className:"h-full w-full",sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 280px",showBackground:!1}),plate:a?O7(Gs,{brand:e,logo:t}):null,eyebrow:fg(s,c&&g("brand")&&e||null),name:cn(e??"",l),spec:H,price:S,metaLine:k.priced?"each":null,extras:$s(G31,{children:[i&&$s("p",{className:"font-mono text-[length:var(--size-label,11px)] font-medium uppercase tracking-[0.14em] text-green",children:["Fits \xB7 ",i]}),$s("div",{className:$i,children:[O7("div",{className:Yi,children:c1.map(u1=>U&&Z.length>0?O7("button",{type:"button",title:u1,"aria-label":u1,"aria-pressed":N===u1,onClick:()=>V(u1),className:$(N===u1),children:u1},u1):O7("span",{className:Ji,children:u1},u1))}),b1>0&&$s("span",{className:Xi,children:["+",b1]})]}),$s("div",{className:en,children:[!i1&&k.priced&&O7("button",{type:"button",onClick:y1,[ue]:"",disabled:U&&!W,className:W||!U?`${e9}${W?"":" opacity-80"}`:"cursor-not-allowed border border-dashed border-accent/50 px-4 py-2.5 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-accent/70",children:U&&!W?"Select a size":"Add to basket"}),I&&O7(L1,{href:I,className:tn,children:"Open product page"})]})]})})}import{jsx as q31}from"react/jsx-runtime";function Ys({item:e,currency:t,kindLabel:a=null,showBrand:s=!0,fitSize:c=null,editing:l=!1,fieldUsage:r}){return q31(Mg,{brand:e.brand,brandLogo:e.brandLogo,kindLabel:a,showBrand:s,name:e.name,slug:e.slug,sizes:e.sizes,fitSize:c,rimDiameters:e.rimDiameters,prices:e.prices,image:e.coverImage,currency:t,editing:l,fieldUsage:r})}import{jsx as ln,jsxs as W31}from"react/jsx-runtime";function Sg({filters:e,onToggle:t,onPriceMax:a,onInStockOnly:s,onPickType:c}){let{currency:l}=d0(),r=Lk(e,l,B2);return r.length===0?null:ln("ul",{className:"flex list-none flex-wrap items-center gap-1.5",children:r.map(o=>ln("li",{children:W31("button",{type:"button",onClick:()=>o.key==="price"?a(null):o.key==="inStock"?s(!1):o.key==="kind"?c(null):t(o.key,o.value),className:`flex cursor-pointer items-center gap-1.5 px-2 py-1 font-mono text-[10px] uppercase tracking-[0.14em] text-bg hover:bg-fg ${o.key==="inStock"?"bg-green":"bg-accent"}`,children:[o.label,ln("span",{"aria-hidden":"true",children:"\u2715"}),ln("span",{className:"sr-only",children:"Remove filter"})]})},`${o.key}:${o.value}`))})}function Ft(e){let t=typeof e=="number"?e:Number.parseInt(String(e??""),10);return!Number.isFinite(t)||t<1||t>5?1:Math.trunc(t)}function Ag(e,t){if(!e||!t||!Number.isFinite(t)||t<=0)return null;let a=e.lugRenderings?.[String(t)];if(!Array.isArray(a))return null;let s=a.filter(c=>typeof c=="string"&&c.length>0);return s.length>0?s:null}function j31({carRenderings:e,renderings:t,coverIndex:a,shownFinishName:s,defaultFinishName:c,shownSrc:l}){if(e&&e.length>0){let o=Math.min(Math.max(a,1)-1,e.length-1);return e[o]??l}if(a<=1||!t||t.length===0||!c||s!==c)return l;let r=Math.min(a-1,t.length-1);return t[r]??l}function rn({overrideSrc:e,hookSrc:t,failed:a}){return e&&!a.has(e)?e:t&&t!==e&&!a.has(t)?t:null}function on(e,t,a,s,c){let l=a===void 0?void 0:e.finishes?.find(r=>r.name===a);return j31({carRenderings:Ag(l,c),renderings:e.defaultFinishRenderings,coverIndex:t,shownFinishName:a,defaultFinishName:e.defaultFinish,shownSrc:s})}import{useState as u41}from"react";import{jsx as Hg,jsxs as K31}from"react/jsx-runtime";function Xs({finishes:e,availability:t,selectedIdx:a,hoverIdx:s,activeFinish:c,onSelect:l,onHover:r,showLabel:o=!0,className:i}){return K31("div",{className:["mt-4",i].filter(Boolean).join(" "),children:[Hg("div",{className:"flex flex-wrap items-center gap-2",onMouseLeave:()=>r(null),onClick:n=>n.preventDefault(),children:e.map((n,h)=>{if(!t[h])return null;let m=h===a,u=s===h&&s!==a;return Hg("button",{type:"button",title:n.name,"aria-label":n.name,"aria-pressed":m,onMouseEnter:()=>r(h),onFocus:()=>r(h),onBlur:()=>r(null),onClick:d=>{d.preventDefault(),d.stopPropagation(),l(h)},className:["h-4 w-4 shrink-0 rounded-full transition-all",m?"ring-2 ring-accent ring-offset-2 ring-offset-surface":u?"ring-1 ring-fg ring-offset-2 ring-offset-surface":"ring-1 ring-fg/30 ring-offset-1 ring-offset-surface"].join(" "),style:{background:n.color,border:"1px solid var(--swatch-border)"}},n.name)})}),o&&c&&Hg("div",{className:"mt-2 truncate font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:c.name})]})}import{useState as $31}from"react";import{jsx as Tt,jsxs as EN}from"react/jsx-runtime";function Js({src:e,alt:t=""}){let[a,s]=$31(!1),c=e||"";return Tt("div",{className:"relative aspect-square overflow-hidden bg-bg",children:EN("div",{className:"absolute inset-0 flex items-center justify-center transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:rotate-[60deg]",children:[Tt("div",{className:"absolute inset-0 z-[1] flex items-center justify-center",children:EN("div",{className:"relative flex h-[70%] w-[70%] items-center justify-center rounded-full border-2",style:{borderColor:"var(--accent)"},children:[Tt("div",{className:"absolute inset-[10%] rounded-full border",style:{borderColor:"var(--accent)",opacity:.4}}),Tt("div",{className:"absolute left-1/2 top-1/2 h-[18%] w-[18%] -translate-x-1/2 -translate-y-1/2 rounded-full border-2",style:{borderColor:"var(--accent)"}}),Tt("div",{className:"absolute left-1/2 top-1/2 h-[6%] w-[6%] -translate-x-1/2 -translate-y-1/2 rounded-full",style:{background:"var(--accent)"}})]})}),c&&Tt("img",{src:c,alt:t,className:"absolute inset-0 z-[2] h-full w-full object-contain",style:{display:a?"none":"block"},onError:()=>s(!0)})]})})}import{useEffect as _N,useLayoutEffect as Q31,useRef as e41,useState as IN}from"react";import{useId as NN,useRef as J31,useState as Fg}from"react";import{useCallback as VN,useRef as Y31,useState as X31}from"react";function nn(){let[e,t]=X31("idle"),a=Y31(!1),s=VN(()=>{a.current=!1,t("idle")},[]),c=VN(async({partNumbers:l,email:r,productSlug:o,subscribeToOffers:i=!1,dryRun:n=!1})=>{if(a.current)return;let h=r.trim();if(!be(h)){t("invalid");return}a.current=!0,t("sending");try{if(!n)for(let m of l)await v0.createStockAlert({partNumber:m,email:h,productSlug:o})}catch{a.current=!1,t("error");return}if(i&&!n)try{await v0.createNewsletterSubscription({email:h,source:G3.stockAlertOptIn})}catch{}a.current=!1,t("sent")},[]);return{status:e,submit:c,reset:s}}import{jsx as N0,jsxs as x3}from"react/jsx-runtime";function Tg({wheelName:e,productSlug:t,finishName:a,variants:s,initialSize:c,onClose:l,editing:r=!1}){let o=NN(),i=NN(),n=J31(null),{currency:h}=d0(),m=nn(),[u,d]=Fg(()=>c??s[0]?.size??""),[v,g]=Fg(""),[b,f]=Fg(!1);L4({active:!0,onDismiss:l,focusRef:n});let w=s.find(I=>I.size===u)??s[0];if(!w)return null;let z=m.status==="sent",k=m.status==="sending",S=m.status==="invalid"?"Please enter a valid email address.":m.status==="error"?"Couldn't save that \u2014 please try again.":null;function H(){w&&m.submit({partNumbers:w.components.map(I=>I.partNumber),email:v,productSlug:t,subscribeToOffers:b,dryRun:r})}return N0("div",{role:"dialog","aria-modal":"true","aria-labelledby":o,onClick:I=>{I.target===I.currentTarget&&l()},className:"fixed inset-0 z-[90] flex items-center justify-center overflow-y-auto p-6 backdrop-blur-[6px]",style:{background:"color-mix(in oklab, var(--bg) 78%, transparent)"},children:x3("div",{ref:n,tabIndex:-1,className:"relative w-[420px] max-w-full border-2 border-accent bg-surface text-left shadow-[0_24px_60px_rgba(0,0,0,0.55)] outline-none",children:[N0("button",{type:"button",onClick:l,"aria-label":"Close",className:"absolute right-[10px] top-[10px] z-[2] flex h-9 w-9 cursor-pointer items-center justify-center text-fg-dim transition-colors hover:text-accent",children:N0("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:N0("path",{d:"M6 6l12 12M18 6 6 18"})})}),z?x3("div",{className:"px-6 py-8 text-center",children:[N0("span",{className:"mx-auto mb-4 grid h-16 w-16 place-items-center rounded-full border-[1.5px] border-accent bg-accent/15",children:N0("svg",{width:"30",height:"30",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2.5","aria-hidden":!0,children:N0("path",{d:"M20 6 9 17l-5-5"})})}),N0("h3",{id:o,className:"font-display text-[22px] font-medium uppercase leading-tight tracking-[-0.02em]",children:"You're on the list"}),x3("p",{className:"mx-auto mt-2 max-w-[34ch] text-[13px] leading-[1.6] text-fg-dim",children:["We'll alert ",N0("strong",{className:"font-normal text-fg",children:v.trim()})," as soon as the ",e0(e)," in ",w.size," is back. Keep an eye on your inbox."]}),N0("button",{type:"button",onClick:l,className:"mt-6 w-full cursor-pointer border border-line px-4 py-3 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-fg transition-colors hover:border-accent hover:text-accent",children:"Continue browsing"})]}):x3("form",{className:"p-6",noValidate:!0,onSubmit:I=>{I.preventDefault(),H()},children:[x3("div",{className:"mb-2 flex items-center gap-3",children:[N0("span",{className:"grid h-11 w-11 flex-none place-items-center border-[1.5px] border-accent bg-accent/15",children:x3("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2","aria-hidden":!0,children:[N0("path",{d:"M18 8a6 6 0 1 0-12 0c0 7-3 9-3 9h18s-3-2-3-9"}),N0("path",{d:"M13.7 21a2 2 0 0 1-3.4 0"})]})}),x3("div",{children:[N0("div",{className:"font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:"Back-in-stock alert"}),N0("h3",{id:o,className:"mt-0.5 font-display text-[22px] font-medium uppercase leading-tight tracking-[-0.02em]",children:"Notify me"})]})]}),x3("p",{className:"mb-5 text-[13px] leading-[1.6] text-fg-dim",children:["We'll email you the moment the"," ",N0("strong",{className:"font-normal text-fg",children:e0(e)}),a?` in ${a}`:""," ","is back in stock. No spam \u2014 one alert, then we're done."]}),x3("fieldset",{className:"mb-4 border-0 p-0",children:[N0("legend",{className:"mb-2 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:"Which fitment?"}),N0("div",{className:"flex flex-wrap gap-2",children:s.map(I=>{let P=I.size===w.size;return x3("button",{type:"button","aria-pressed":P,onClick:()=>d(I.size),className:["flex min-w-[calc(50%-4px)] flex-1 cursor-pointer flex-col items-start gap-0.5 border-[1.5px] px-3 py-2.5 text-left transition-colors",P?"border-accent bg-accent/15":"border-line hover:border-accent/60"].join(" "),children:[N0("span",{className:"font-mono text-[12px] font-bold tracking-[0.08em] text-fg",children:I.size}),N0("span",{className:"font-mono text-[10px] tracking-[0.08em] text-fg-dim",children:(()=>{let D=NC(I.components,h);return D.setTotal!=null?B2(D.setTotal,h):n7})()})]},I.size)})})]}),x3("div",{className:"mb-4",children:[N0("label",{htmlFor:i,className:"mb-2 block font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:"Email address"}),N0("input",{id:i,type:"email",value:v,onChange:I=>{g(I.target.value),(m.status==="invalid"||m.status==="error")&&m.reset()},placeholder:"you@example.com",disabled:k,className:"w-full 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"})]}),x3("label",{className:"mb-5 flex cursor-pointer items-start gap-2.5 text-[12px] leading-[1.5] text-fg-dim",children:[N0("input",{type:"checkbox",checked:b,onChange:I=>f(I.target.checked),className:"mt-0.5 h-[18px] w-[18px] flex-none cursor-pointer accent-[var(--accent)]"}),N0("span",{children:"Also send me fitment tips and occasional offers for my vehicle."})]}),x3("button",{type:"submit",disabled:k,className:"flex h-[50px] w-full cursor-pointer items-center justify-center gap-2 bg-btn px-4 font-mono text-[12px] font-bold uppercase tracking-[0.24em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-not-allowed disabled:opacity-60 disabled:hover:bg-btn",children:[x3("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:[N0("path",{d:"m22 2-7 20-4-9-9-4Z"}),N0("path",{d:"M22 2 11 13"})]}),k?"Sending\u2026":"Notify me when available"]}),S&&N0("p",{role:"alert",className:"mt-2.5 text-[12px] leading-[1.5]",style:{color:"var(--alert)"},children:S}),x3("div",{className:"mt-3 flex items-center justify-center gap-1.5 text-[11px] text-fg-dim",children:[x3("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:[N0("rect",{x:"3",y:"11",width:"18",height:"11",rx:"1"}),N0("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),"We never share your details."]})]})]})})}import{Fragment as o41,jsx as F6,jsxs as hn}from"react/jsx-runtime";var t41=3;function a41({labels:e}){let t=e.slice(0,t41),a=e41(null),[s,c]=IN(t.length),l=e.join("|");Q31(()=>{let o=a.current;if(!o)return;let i=()=>{let h=[...o.children];if(h.length===0)return c(0);let m=h[0].offsetTop;c(h.filter(u=>u.offsetTop===m).length)};if(i(),typeof ResizeObserver>"u")return;let n=new ResizeObserver(i);return n.observe(o),()=>n.disconnect()},[l]);let r=Math.max(0,e.length-s);return hn("div",{className:$i,children:[F6("div",{ref:a,className:s41,children:t.map(o=>F6("span",{className:Ji,children:o},o))}),r>0&&hn("span",{className:Xi,children:["+",r]})]})}var s41=`${Yi} flex-wrap self-stretch content-start pt-px`;function c41({wheel:e,sel:t,price:a,editing:s}){let{add:c,open:l,warmCatalog:r}=i4();_N(()=>{s||r()},[s,r]);let{arm:o}=t;_N(()=>{o()},[o]);function i(){let n=t.selectedVariant;!n||!t.canAdd||a.priced&&(s||(c({id:`${e.slug}|${n.finishName}|${n.size}|quick`,slug:e.slug,name:qe(e.name),process:e.process,positionNo:"01",config:[{label:n.size},{label:n.finishName,gold:!0},{label:Lt(n)}],finishName:n.finishName,size:n.size,components:n.components,qty:1}),l()))}return F6("button",{type:"button",onClick:i,[ue]:"",disabled:!t.canAdd,className:t.canAdd?e9:`${e9} opacity-80`,children:"Add to basket"})}function l41(e){let t=fk(e);return t.length>0?t:[...new Set(e.sizes.map(a=>`${a}"`))]}function r41(e,t,a){return an(e)?t.outOfStock?"notify":t.unsellable||!a||t.detailState==="ready"&&!t.canAdd?"choose":"add":"choose"}function mn({wheel:e,sel:t,price:a,editing:s,show:c,href:l}){let[r,o]=IN(!1),i=c.sizes?F6(a41,{labels:l41(e)}):null,n=r41(e,t,a.priced),h=c.buy?n==="notify"?F6("button",{type:"button",onClick:()=>o(!0),className:e9,children:"Notify me when back"}):n==="add"?F6(c41,{wheel:e,sel:t,price:a,editing:s}):F6(L1,{href:l,className:`${e9} text-center`,children:"Select a size"}):null,m=c.page?F6(L1,{href:l,className:tn,children:"Open product page"}):null,u=h||m?hn("div",{className:en,children:[h,m]}):null;return{extras:i||u?hn(o41,{children:[i,u]}):null,dialog:r?F6(Tg,{wheelName:e.name,productSlug:e.slug,finishName:t.confirmedFinishName,variants:t.outOfStockVariants,initialSize:t.selectedVariant?.size,onClose:()=>o(!1),editing:s}):null}}import{useCallback as ON,useEffect as Vg,useMemo as un,useRef as Ng,useState as GN}from"react";import{useEffect as i41,useMemo as n41,useState as Pg}from"react";import{jsx as RN}from"react/jsx-runtime";function pn(e,t,a){let[s,c]=Pg(()=>{let b=a?e.findIndex(f=>f.name===a):-1;return b>=0?b:0}),[l,r]=Pg(null),[o,i]=Pg(()=>e.map(()=>!0)),n=b=>{i(f=>{if(f[b]===!1)return f;let w=[...f];return w[b]=!1,w})},h=n41(()=>o.map((b,f)=>b?f:-1).filter(b=>b!==-1),[o]);i41(()=>{if(h.length===0){s!==-1&&c(-1),l!==null&&r(null);return}s>=0&&!h.includes(s)&&c(h[0]),l!==null&&!h.includes(l)&&r(null)},[h,s,l]);let m=l??s,u=m>=0?e[m]:void 0,d=u?.src??t,v=h.length>=2,g=e.length>0?RN("div",{className:"hidden","aria-hidden":!0,children:e.map((b,f)=>RN(_3,{src:b.src,alt:"",width:16,height:16,loading:"eager",onError:()=>n(f)},b.src))}):null;return{selectedIdx:s,setSelectedIdx:c,hoverIdx:l,setHoverIdx:r,availability:o,finish:u,shownSrc:d,showSwatches:v,probes:g}}import{useEffect as h41,useState as BN}from"react";var Eg=new Map;function m41(e){let t=Eg.get(e);if(t)return t;let a=v0.getWheel(e).catch(s=>{throw Eg.delete(e),s});return Eg.set(e,a),a}function ZN(e,t){let[a,s]=BN("idle"),[c,l]=BN(null);return h41(()=>{if(!t)return;let r=!1;return s("loading"),m41(e).then(o=>{r||(l(o),s("ready"))}).catch(()=>{r||s("error")}),()=>{r=!0}},[e,t]),{state:a,wheel:c}}function DN(e,t){return t.length===0?-1:e.findIndex(a=>t.includes(a.family))}var p41=[];function dn(e,t=p41){let a=un(()=>e.finishes.filter(r7),[e.finishes]),s=a.length>0,c=pn(a,e.coverImage??null,e.defaultFinish??void 0),[l,r]=GN(!1),o=ON(()=>{s&&r(!0)},[s]),{state:i,wheel:n}=ZN(e.slug,l),h=un(()=>n?.variants??[],[n]),m=c.selectedIdx>=0?a[c.selectedIdx]?.name??null:null,[u,d]=GN(null),{setSelectedIdx:v}=c,g=Ng(!1),b=ON(F=>{g.current=!0,v(F)},[v]),f=t.join(","),w=Ng(null);Vg(()=>{if(w.current===f)return;w.current=f;let F=DN(a,t);F<0||(g.current=!0,v(F))},[f,t,a,v]);let z=Ng(!1);Vg(()=>{if(z.current||g.current||h.length===0||!m||(z.current=!0,Cg(h,m).length>0))return;let F=yN(h,a.map(_=>_.name),c.availability);F>=0&&v(F)},[h,m,a,c.availability,v]);let k=un(()=>Cg(h,m),[h,m]),S=an(e);Vg(()=>{d(F=>F&&k.some(_=>_.size===F)?F:S&&k.length===1?k[0].size:null)},[k,S]);let H=At(h,m,u),I=Us(H),P=H!=null&&!I,D=!s||i==="error"||i==="ready"&&k.length===0,E=un(()=>zN(h,m),[h,m]);return{...c,setSelectedIdx:b,finishes:a,arm:o,detailState:i,confirmedFinishName:m,sizeOptions:k,size:u,setSize:d,selectedVariant:H,outOfStock:I,outOfStockVariants:E,canAdd:P,unsellable:D}}import{Fragment as g41,jsx as G7,jsxs as qN}from"react/jsx-runtime";var d41=[];function _g({wheel:e,colours:t,fit:a=null,editing:s=!1,brandPlate:c=!1,kindLabel:l=null,showBrand:r=!0,showProcess:o=!1,coverIndex:i=1,fieldUsage:n=d41,spinOnHover:h=!1,imageBackgroundFill:m=e7,showBadge:u=!0,outline:d=r4,indexBadge:v=l4,showCardSizes:g=!0,showCardBuy:b=!0,showCardPage:f=!0,showCardPrice:w=!0,showCardFinishes:z=!0}){let{currency:k}=d0(),S=dn(e,t),H=on(e,i,S.finish?.name,S.shownSrc,a?.holes),I=ve(e,S.selectedVariant,k,1),P=yr(I,k),[D,E]=u41(()=>new Set),F=$=>E(u1=>u1.has($)?u1:new Set(u1).add($)),_=rn({overrideSrc:H,hookSrc:S.shownSrc,failed:D}),Z=Ce(e),G=OM(e,a),V=mn({wheel:e,sel:S,price:I,editing:s,href:`/wheels/${e.slug}`,show:{sizes:g,buy:b,page:f}}),j=S.detailState==="ready",N=S.unsellable,Q=h?"transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:rotate-[72deg]":"",W=_?G7(_3,{src:_,alt:S.finish?`${e.name} \u2014 ${S.finish.name}`:e.name,width:800,height:800,sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 300px",className:["block h-full w-full object-contain",Q].filter(Boolean).join(" "),draggable:!1,onError:()=>F(_)},_):G7(Js,{imageLabel:e.name}),U=v!=="off"?G7("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null,i1=u?e.badge:null,y1=I.onSale||i1?qN("div",{className:`${Ws} pointer-events-none flex flex-col items-end gap-1`,children:[I.onSale&&G7(Mt,{tone:"solid",children:"Sale"}),i1&&G7(Mt,{tone:i1==="new"?"solid":"outline",children:i1==="new"?"New":"Bestseller"})]}):null,K=z&&S.finishes.length>0&&S.availability.some(Boolean)?G7(Xs,{finishes:S.finishes,availability:S.availability,selectedIdx:S.selectedIdx,hoverIdx:S.hoverIdx,activeFinish:S.finish,onSelect:S.setSelectedIdx,onHover:S.setHoverIdx,showLabel:!1}):null,c1=Hr(G.length>0?G:eo(e),n).map($=>$.text),b1=I.priced?["each",I.setTotal!=null&&S.selectedVariant?`${Lt(S.selectedVariant)} \xB7 ${B2(I.setTotal,k)}`:null].filter(Boolean).join(" \xB7 "):null;return qN(g41,{children:[G7(t9,{href:`/wheels/${e.slug}`,identityLink:!0,containerProps:{onPointerEnter:S.arm,onTouchStart:S.arm,onFocusCapture:S.arm},probes:S.probes,outline:d,imageBackgroundFill:m,indexBadge:U,badges:y1,image:W,plate:c?G7(Gs,{brand:Z,logo:e.brandLogo}):null,eyebrow:Ki({kindLabel:l,brand:r&&Z?e0(Z):null,process:o&&e.process?e0(e.process):null},n),reserveEyebrow:qs({kind:!!l,brand:r,process:o},n),name:e0(e.name),spec:Qi(c1,DM),was:P,price:fe(I,k),metaLine:b1,swatches:K,reserveSwatches:z,showPrice:w,extras:V.extras}),V.dialog]})}import{jsx as Qs,jsxs as gn}from"react/jsx-runtime";function Ig({page:e,pageCount:t,onPage:a}){if(t<=1)return null;let s=Ek(t,e),c="flex h-9 w-9 cursor-pointer items-center justify-center border border-line font-mono text-[13px] transition-colors hover:border-accent hover:text-accent disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:border-line disabled:hover:text-fg";return gn("div",{className:"mt-8 flex flex-wrap items-center justify-between gap-4 border-t border-line pt-4",children:[gn("div",{className:"flex items-center gap-1.5",children:[Qs("button",{type:"button",onClick:()=>a(e-1),disabled:e<=1,"aria-label":"Previous page",className:c,children:"\u2039"}),s.map((l,r)=>l===null?Qs("span",{className:"px-1 font-mono text-[13px] text-fg-dim",children:"\u2026"},`gap-${r}`):Qs("button",{type:"button",onClick:()=>a(l),"aria-current":l===e?"page":void 0,className:["h-9 min-w-9 cursor-pointer border px-2 font-mono text-[13px] tabular-nums transition-colors",l===e?"border-accent bg-accent text-bg":"border-line hover:border-accent hover:text-accent"].join(" "),children:l},l)),Qs("button",{type:"button",onClick:()=>a(e+1),disabled:e>=t,"aria-label":"Next page",className:c,children:"\u203A"})]}),gn("label",{className:"flex items-center gap-2 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:["Jump to",Qs("select",{value:e,onChange:l=>a(Number(l.target.value)),className:"cursor-pointer border border-line bg-transparent px-2 py-1.5 font-mono text-[12px] text-fg",children:Array.from({length:t},(l,r)=>r+1).map(l=>gn("option",{value:l,children:["Page ",l," of ",t]},l))})]})]})}import{useState as x41}from"react";import{useState as v41}from"react";import{jsx as ec,jsxs as f41}from"react/jsx-runtime";function Rg({checked:e,count:t,noun:a,onChange:s}){let[c,l]=v41(!1);return f41("label",{className:"flex cursor-pointer items-center gap-2.5 py-1 text-[13px]",children:[ec("input",{type:"checkbox",role:"switch",checked:e,onChange:r=>s(r.target.checked),onFocus:r=>l(r.target.matches(":focus-visible")),onBlur:()=>l(!1),className:"sr-only","aria-label":`In stock only (${t} ${a})`}),ec("span",{"aria-hidden":"true",className:`relative inline-block h-[17px] w-[30px] flex-none rounded-full transition-colors ${e?"bg-green":"bg-line"} ${c?"outline outline-2 outline-offset-2 outline-accent":""}`,children:ec("span",{className:`absolute left-[2px] top-[2px] h-[13px] w-[13px] rounded-full bg-bg transition-transform ${e?"translate-x-[13px]":""}`})}),ec("span",{className:"flex-1",children:"In stock only"}),ec("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:t})]})}import{useId as b41}from"react";import{jsx as tc,jsxs as WN}from"react/jsx-runtime";function Bg({options:e,noun:t,onPick:a}){let s=b41();return e.length===0?null:WN("fieldset",{className:"rounded-lg border border-accent/35 bg-accent/[0.05] px-3 pb-3 pt-2.5",children:[tc("legend",{className:"px-0 font-mono text-[11px] uppercase tracking-[0.2em] text-accent",children:"Product type"}),tc("div",{className:"flex flex-col pt-1.5",children:e.map(c=>{let l=c.count===0&&!c.checked;return WN("label",{className:`flex items-center gap-2.5 py-1 text-[13.5px] ${l?"opacity-40":"cursor-pointer"}`,children:[tc("input",{type:"radio",name:s,checked:c.checked,disabled:l,onChange:()=>a(c.kind),"aria-label":`${c.label} (${c.count} ${t})`,className:"h-[15px] w-[15px] flex-none accent-[var(--accent)]"}),tc("span",{className:`flex-1 ${c.checked?"text-accent":""}`,children:c.label}),tc("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:c.count})]},c.kind??"all")})})]})}import{jsx as Zg,jsxs as Pt}from"react/jsx-runtime";function Dg({boxes:e,composed:t,matches:a,noun:s,onPick:c}){return Pt("div",{className:"grid grid-cols-3 gap-1.5",children:[e.map(l=>Pt("label",{className:"flex flex-col gap-1",children:[Zg("span",{className:"font-mono text-[9.5px] uppercase tracking-[0.14em] text-fg-dim",children:l.label}),Pt("select",{value:l.value??"",onChange:r=>c(l.part,r.target.value?Number(r.target.value):null),"aria-label":`Tyre ${l.label.toLowerCase()}`,className:`w-full cursor-pointer rounded border bg-surface px-2 py-1.5 text-[13px] ${l.value===null?"border-line":"border-accent text-accent"}`,children:[Zg("option",{value:"",children:"Any"}),l.options.map(r=>Pt("option",{value:r.value,children:[r.label,r.count===0?" \xB7 0":""]},r.value))]})]},l.part)),t&&Pt("p",{className:"col-span-3 flex items-baseline gap-2 pt-0.5",children:[Zg("span",{className:"font-mono text-[12px] tracking-[0.04em] text-accent",children:t}),a!==null&&Pt("span",{className:"text-[11.5px] text-fg-dim",children:["\xB7 ",a," ",s]})]})]})}import{jsx as L2,jsxs as T6}from"react/jsx-runtime";function Og({facets:e,filters:t,typeOptions:a,sizeBoxes:s,sizeMatches:c,noun:l,priceBounds:r,inStockCount:o,onToggle:i,onPickType:n,onPickSize:h,onPriceMax:m,onInStockOnly:u,onClearAll:d}){let{currency:v}=d0(),[g,b]=x41({});return T6("aside",{className:"w-full flex-none lg:sticky lg:[--sf-plp-rail-gap:16px] lg:[--sf-plp-rail-top:calc(var(--sf-header-h,88px)+var(--sf-plp-rail-gap))] lg:top-[var(--sf-plp-rail-top)] lg:max-h-[calc(100svh-var(--sf-plp-rail-top)-var(--sf-plp-rail-gap))] lg:w-[268px] lg:overflow-y-auto lg:overscroll-contain lg:pr-2.5",children:[T6("div",{className:"flex items-center justify-between pb-2",children:[L2("h2",{className:"font-display text-[18px] font-medium uppercase tracking-[-0.01em]",children:"Filter"}),Er(t)&&L2("button",{type:"button",onClick:d,className:"cursor-pointer font-mono text-[11px] uppercase tracking-[0.16em] text-accent hover:text-fg",children:"Clear all"})]}),a.length>0&&L2("div",{className:"pb-1 pt-1",children:L2(Bg,{options:a,noun:l.many,onPick:n})}),o!==null&&L2("div",{className:"border-t border-line py-2",children:L2(Rg,{checked:t.inStockOnly,count:o,noun:l.many,onChange:u})}),s&&L2(UN,{label:ap.tyreSizes,open:!g.tyreSizes,onToggle:()=>b(f=>({...f,tyreSizes:!f.tyreSizes})),children:!g.tyreSizes&&L2("div",{className:"pb-3",children:L2(Dg,{boxes:s,composed:t.tyreSizes[0]??"",matches:c,noun:l.many,onPick:h})})}),e.map(f=>{if(f.options.length===0)return null;let w=!g[f.key];return L2(UN,{label:f.label,open:w,onToggle:()=>b(z=>({...z,[f.key]:!z[f.key]})),children:w&&L2("ul",{className:"flex flex-col pb-3",children:f.options.map(z=>{let k=z.count===0&&!z.checked;return L2("li",{children:T6("label",{className:`flex items-center gap-2.5 py-1 text-[13px] ${k?"opacity-40":"cursor-pointer"}`,children:[L2("input",{type:"checkbox",checked:z.checked,disabled:k,onChange:()=>i(f.key,z.value),"aria-label":`${f.label}: ${z.label} (${z.count} ${l.many})`,className:"h-[16px] w-[16px] flex-none accent-[var(--accent)]"}),z.swatch&&L2("span",{className:"inline-block h-[13px] w-[13px] flex-none rounded-full shadow-[inset_0_0_0_1px_var(--site-line)]",style:{background:z.swatch}}),L2("span",{className:"flex-1 capitalize",children:z.label}),L2("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:z.count})]})},z.value)})})},f.key)}),r&&T6("div",{className:"border-t border-line py-3",children:[T6("span",{className:"font-mono text-[11px] uppercase tracking-[0.2em]",children:["Price \xB7 per ",l.one]}),L2("input",{type:"range",min:r.min,max:r.max,step:5,value:t.priceMax??r.max,onChange:f=>{let w=Number(f.target.value);m(w>=r.max?null:w)},className:"mt-2 w-full accent-[var(--accent)]","aria-label":`Maximum price per ${l.one}`}),T6("div",{className:"mt-1.5 flex justify-between font-mono text-[11px] tabular-nums",children:[L2("span",{className:"text-fg-dim",children:B2(r.min,v)}),T6("span",{children:["Up to ",B2(t.priceMax??r.max,v)]})]})]})]})}function UN({label:e,open:t,onToggle:a,children:s}){return T6("div",{className:"border-t border-line",children:[T6("button",{type:"button",onClick:a,"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e} filters`,className:"flex w-full cursor-pointer items-center justify-between py-3 text-left",children:[L2("span",{className:"font-mono text-[11px] uppercase tracking-[0.2em]",children:e}),L2("span",{"aria-hidden":"true",className:`font-mono text-[10px] text-fg-dim transition-transform ${t?"rotate-180":""}`,children:"\u25BE"})]}),s]})}import{jsx as Et,jsxs as jN}from"react/jsx-runtime";function Gg(e,t){return[{value:"",label:t??"\u2014"},...e.map(a=>({value:a.value,label:a.label}))]}function ac({label:e,value:t,options:a,onChange:s,placeholder:c,disabled:l,compact:r=!1,editing:o=!1}){let n=(a.find(d=>d.value===t)?.label??t)||c||"\u2014",h=Gg(a,c),m=ze({items:h,value:t,onPick:s}),u=m.open;return jN("div",{ref:m.wrapRef,className:"relative",children:[jN("div",{ref:d=>{m.triggerRef.current=d},role:"button",tabIndex:l?-1:0,"aria-haspopup":"listbox","aria-expanded":u,"aria-controls":u?m.listId:void 0,"aria-activedescendant":m.activeId,"aria-label":e,"aria-disabled":l||void 0,onClick:()=>!l&&m.toggle(),onKeyDown:d=>!l&&m.onTriggerKeyDown(d),className:["relative flex flex-col bg-bg transition-colors",r?"gap-1 px-3.5 py-2.5":"min-h-[160px] gap-3.5 px-6 py-7",l?"opacity-50":"cursor-pointer hover:bg-surface"].join(" "),children:[Et("span",{...o?{[Y6]:N9}:{},className:["font-mono uppercase text-accent",r?"text-[length:var(--size-label,10px)] tracking-[0.2em]":"text-[length:var(--size-label,12px)] tracking-[0.3em]"].join(" "),children:Et(at,{kind:N9,children:e})}),Et("span",{className:["font-display font-medium tracking-[-0.02em]",r?"truncate pr-4 text-[length:var(--size-body,15px)] leading-[1.2]":"mt-auto text-[length:var(--size-headingSmall,24px)] leading-[1.1]",t?"text-fg":"text-fg-dim"].join(" "),...o?{[Y6]:pm}:{},children:Et(at,{kind:pm,children:n})}),Et("span",{className:["pointer-events-none absolute font-mono text-accent",r?"right-3 top-3 text-[length:var(--size-label,11px)]":"right-[22px] top-[22px] text-[length:var(--size-label,14px)]"].join(" "),children:"\u25BE"})]}),u&&!l&&Et(ye,{id:m.listId,tone:"cell",items:h,value:t,focusIdx:m.focusIdx,onFocus:m.setFocusIdx,onPick:m.pick,listRef:m.listRef})]})}var sc=["make","model","year","trim"],s9={make:"Make",model:"Model",year:"Year",trim:"Trim"};function KN(e,t){switch(e){case"make":return t.make!=="";case"model":return t.model!=="";case"year":return t.year!==null;case"trim":return t.modification!==""}}function $N(e,t){for(let a of sc){if(a===e)break;if(!KN(a,t))return a}return e}function YN(e){return sc.find(t=>!KN(t,e))??null}var cc={make:"Pick a make first",model:"Pick a model first",year:"Pick a year first",trim:"Pick a trim first"};function vn({parentPicked:e,loading:t,options:a,waiting:s,loadingLabel:c,readyLabel:l,emptyLabel:r}){return e?t?{placeholder:c,disabled:!0}:a.length===0?{placeholder:r,disabled:!0}:{placeholder:l,disabled:!1}:{placeholder:s,disabled:!0}}function fn(e){let{vehicle:t,loading:a}=e;return{make:vn({parentPicked:!0,loading:a.makes,options:e.makeOptions,waiting:"",loadingLabel:"Loading makes\u2026",readyLabel:"Select make",emptyLabel:"Vehicle list unavailable"}),model:vn({parentPicked:!!t.make,loading:a.models,options:e.modelOptions,waiting:cc.make,loadingLabel:"Loading models\u2026",readyLabel:"Select model",emptyLabel:"No models listed"}),year:vn({parentPicked:!!t.model,loading:a.years,options:e.yearOptions,waiting:cc.model,loadingLabel:"Loading years\u2026",readyLabel:"Select year",emptyLabel:"No years listed"}),trim:vn({parentPicked:t.year!==null,loading:a.modifications,options:e.modOptions,waiting:cc.year,loadingLabel:"Loading trims\u2026",readyLabel:"Select trim",emptyLabel:"No trims listed"})}}function XN(e){return{make:e.makeOptions,model:e.modelOptions,year:e.yearOptions,trim:e.modOptions}}function JN(e){return{make:e.setMake,model:e.setModel,year:e.setYear,trim:e.setModification}}function QN(e){let{vehicle:t}=e;return{make:t.make,model:t.model,year:t.year!==null?String(t.year):"",trim:t.modification}}function e_(e){let{vehicle:t}=e;return{make:t.make?e.makeName:"",model:t.model?e.modelName:"",year:t.year!==null?String(t.year):"",trim:t.modification?e.modName:""}}import{jsx as bn,jsxs as z41}from"react/jsx-runtime";function X3({cascade:e,compact:t=!1,editing:a=!1}){let{vehicle:s}=e,c=fn(e);return z41("div",{className:["grid gap-[2px] border border-line bg-line",t?"grid-cols-4 max-[900px]:grid-cols-2":"grid-cols-4 max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1"].join(" "),children:[bn(ac,{label:s9.make,placeholder:c.make.placeholder,disabled:c.make.disabled,value:s.make,options:e.makeOptions,onChange:e.setMake,compact:t,editing:a}),bn(ac,{label:s9.model,placeholder:c.model.placeholder,disabled:c.model.disabled,value:s.model,options:e.modelOptions,onChange:e.setModel,compact:t,editing:a}),bn(ac,{label:s9.year,placeholder:c.year.placeholder,disabled:c.year.disabled,value:s.year!==null?String(s.year):"",options:e.yearOptions,onChange:e.setYear,compact:t,editing:a}),bn(ac,{label:s9.trim,placeholder:c.trim.placeholder,disabled:c.trim.disabled,value:s.modification,options:e.modOptions,onChange:e.setModification,compact:t,editing:a})]})}import{jsx as W2,jsxs as P6}from"react/jsx-runtime";function qg({cascade:e,appliedName:t,fit:a,fitSummary:s=null,resolving:c,unresolved:l,matchCount:r,copy:o,onAmend:i,onClear:n}){return W2("div",{className:"border-b border-line bg-surface px-5 py-4 md:px-10",children:!(t!=="")?P6("div",{className:"flex flex-wrap items-end gap-4",children:[P6("div",{className:"flex-none",children:[P6("div",{className:"flex items-center gap-2",children:[W2(t_,{}),W2("h2",{className:"font-display text-[18px] font-medium uppercase tracking-[-0.01em]",children:"Select your car"})]}),W2("p",{className:"mt-0.5 font-mono text-[11px] uppercase tracking-[0.14em] text-fg-dim",children:o.promise})]}),W2("div",{className:"min-w-[280px] flex-1",children:W2(X3,{cascade:e,compact:!0})})]}):P6("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-3",children:[P6("div",{className:"flex items-center gap-2.5",children:[W2(t_,{}),P6("div",{children:[W2("p",{className:"font-mono text-[10px] uppercase tracking-[0.2em] text-fg-dim",children:"Fitment for"}),W2("p",{className:"font-display text-[16px] font-medium uppercase leading-[1.1] tracking-[-0.01em]",children:t})]})]}),c?W2("p",{className:"font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:"Checking fitment\u2026"}):l?W2("p",{className:"font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:o.noData}):P6("div",{className:"flex flex-wrap items-center gap-1.5",children:[W2("span",{className:"border border-line px-2 py-1 font-mono text-[10px] uppercase tracking-[0.14em] text-fg-dim",children:s??GM(a)}),W2("span",{className:"bg-accent px-2 py-1 font-mono text-[10px] font-bold uppercase tracking-[0.14em] text-bg",children:o.countFits(r)})]}),P6("div",{className:"ml-auto flex items-center gap-4",children:[W2("button",{type:"button",onClick:i,className:"cursor-pointer border border-line px-4 py-2.5 font-mono text-[11px] uppercase tracking-[0.16em] hover:border-accent hover:text-accent",children:"Amend search"}),W2("button",{type:"button",onClick:n,className:"cursor-pointer font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:o.showAll})]})]})})}function t_(){return P6("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2","aria-hidden":"true",className:"flex-none",children:[W2("path",{d:"M5 17h14l1.5-5.5a2 2 0 0 0-1.4-2.4L17 8l-1.6-3.2A2 2 0 0 0 13.6 3.7H10.4A2 2 0 0 0 8.6 4.8L7 8l-2.1.6a2 2 0 0 0-1.4 2.4L5 17Z"}),W2("circle",{cx:"7.5",cy:"17.5",r:"1.8"}),W2("circle",{cx:"16.5",cy:"17.5",r:"1.8"})]})}import{useId as y41,useRef as w41}from"react";import{jsx as E6,jsxs as C41}from"react/jsx-runtime";function Wg({cascade:e,heading:t,intro:a,ready:s,copy:c,onSkip:l}){let r=y41(),o=w41(null);return L4({active:s,onDismiss:l,focusRef:o}),E6("div",{role:"dialog","aria-modal":"true","aria-labelledby":r,"aria-hidden":s?void 0:!0,className:["fixed inset-x-0 bottom-0 top-[var(--sf-header-h,88px)] z-40 overflow-y-auto bg-bg","transition-opacity duration-200",s?"opacity-100":"pointer-events-none opacity-0"].join(" "),children:E6("div",{className:"flex min-h-full items-center justify-center px-6 py-14 max-[700px]:px-5 max-[700px]:py-10",children:C41("div",{ref:o,tabIndex:-1,className:"w-full max-w-[720px] outline-none",children:[E6("p",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.3em] text-accent",children:c.eyebrow}),E6("h2",{id:r,className:"mt-3 max-w-[16ch] font-display text-[min(clamp(30px,5vw,50px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[1.05] tracking-[-0.02em]",children:e0(t)}),E6("p",{className:"mt-4 max-w-[52ch] text-[15px] leading-[1.6] text-fg-dim",children:e0(a)}),E6("div",{className:"mt-8",children:E6(X3,{cascade:e})}),e.cascadeError&&E6("p",{className:"mt-3 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:c.cascadeDown}),E6("button",{type:"button",onClick:l,className:"mt-6 w-full cursor-pointer py-3 font-mono text-[11px] uppercase tracking-[0.2em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:c.browseInstead})]})})})}import{useEffect as M41,useMemo as S41,useState as L41}from"react";var V6={year:null,make:"",model:"",modification:""};var Z5={make:"make",model:"model",year:"year",trim:"trim"};function v4(e){return!!e.make&&!!e.model&&e.year!==null&&!!e.modification}function a_(e){let t=Number(e.get(Z5.year)),a={...V6,make:e.get(Z5.make)??"",model:e.get(Z5.model)??"",year:Number.isFinite(t)&&t>0?Math.floor(t):null,modification:e.get(Z5.trim)??""};return v4(a)?a:null}function D5(e,t){return!t||!v4(t)||(e.set(Z5.make,t.make),e.set(Z5.model,t.model),e.set(Z5.year,String(t.year)),e.set(Z5.trim,t.modification)),e}var k41=["tyre"];function s_(e){return k41.filter(t=>e.includes(t))}function c_(e){return!e||!v4(e)||e.year===null?null:{make:e.make,model:e.model,year:e.year,modification:e.modification}}function l_(e,t,a){return e.length===0||!t&&!a?null:{kinds:[...e],vehicle:t}}function r_(e,t,a){if(a===null||t.length===0)return[...e];let s=new Set(a);return e.filter(c=>!t.includes(B0(c))||s.has(p7(c)))}function o_({catalog:e,shownKinds:t,vehicle:a,editing:s=!1}){let c=s_(t),l=s?null:c_(a),[r,o]=L41(null),i=l_(c,l,r!==null),n=i?JSON.stringify(i):"";M41(()=>{if(!n)return;let u=JSON.parse(n),d=!0;return v0.listCatalog(u.kinds,u.vehicle).then(v=>{d&&o({key:n,slugs:v.map(p7)})}).catch(v=>{console.error("[useVehicleCatalog] catalog refetch failed",v)}),()=>{d=!1}},[n]);let h=r?.slugs??null,m=c.join(",");return S41(()=>r_(e,m?m.split(","):[],h),[e,m,h])}import{useCallback as jg,useEffect as lc,useMemo as F41,useRef as T41,useState as h_}from"react";import{useCallback as xn,useEffect as Vt,useMemo as zn,useState as q7}from"react";function yn(e){return e instanceof Error?e.message:String(e)}function i_(e=[],t=!0){let[a,s]=q7(V6),[c,l]=q7(e),[r,o]=q7([]),[i,n]=q7([]),[h,m]=q7([]),[u,d]=q7(null),[v,g]=q7({makes:t&&e.length===0}),[b,f]=q7(null);Vt(()=>{t&&e.length===0&&(g(G=>({...G,makes:!0})),me.listMakes().then(l).catch(()=>{}).finally(()=>g(G=>({...G,makes:!1}))))},[t,e.length]),Vt(()=>{if(!a.make){o([]);return}let G=!1;return g(V=>({...V,models:!0})),me.listModels(a.make).then(V=>{G||o(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,models:!1}))}),()=>{G=!0}},[a.make]),Vt(()=>{if(!a.make||!a.model){n([]);return}let G=!1;return g(V=>({...V,years:!0})),me.listYears(a.make,a.model).then(V=>{G||n(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,years:!1}))}),()=>{G=!0}},[a.make,a.model]),Vt(()=>{if(!a.make||!a.model||a.year===null){m([]);return}let G=!1;return g(V=>({...V,modifications:!0})),me.listModifications(a.make,a.model,a.year).then(V=>{G||m(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,modifications:!1}))}),()=>{G=!0}},[a.make,a.model,a.year]),Vt(()=>{if(!(a.year!==null&&a.make&&a.model&&a.modification)){d(null);return}let V=!1;return g(j=>({...j,stock:!0})),f(null),me.getStockFitment(a.make,a.model,a.year,a.modification).then(j=>{V||d(j)}).catch(j=>{V||f(yn(j))}).finally(()=>{V||g(j=>({...j,stock:!1}))}),()=>{V=!0}},[a.make,a.model,a.year,a.modification]),Vt(()=>{a.year!==null&&a.make&&a.model&&!a.modification&&h.length===1&&s(G=>({...G,modification:h[0].slug}))},[a.year,a.make,a.model,a.modification,h]);let w=xn(G=>s(V=>({...V,make:G,model:"",year:null,modification:""})),[]),z=xn(G=>s(V=>({...V,model:G,year:null,modification:""})),[]),k=xn(G=>s(V=>({...V,year:G?Number(G):null,modification:""})),[]),S=xn(G=>s(V=>({...V,modification:G})),[]),H=zn(()=>i.map(G=>({value:String(G),label:String(G)})),[i]),I=zn(()=>c.map(G=>({value:G.slug,label:G.name})),[c]),P=zn(()=>r.map(G=>({value:G.slug,label:G.name})),[r]),D=zn(()=>h.map(G=>({value:G.slug,label:G.name})),[h]),E=a.year!==null&&!!a.make&&!!a.model&&!!a.modification,F=c.find(G=>G.slug===a.make)?.name??a.make,_=r.find(G=>G.slug===a.model)?.name??a.model,Z=h.find(G=>G.slug===a.modification)?.name??a.modification;return{vehicle:a,setVehicle:s,setMake:w,setModel:z,setYear:k,setModification:S,makeOptions:I,modelOptions:P,yearOptions:H,modOptions:D,loading:v,cascadeError:b,stock:u,fullyPicked:E,makeName:F,modelName:_,modName:Z}}var Ug="storefront-vehicle";function A41(e){if(!e||typeof e!="object")return null;let t=e,a={...V6,...t.vehicle??{}};return v4(a)?{vehicle:a,labels:{make:t.labels?.make??a.make,model:t.labels?.model??a.model,modification:t.labels?.modification??a.modification}}:null}function H41(e){let t,a=new Set,s=()=>{for(let c of[...a])c()};return{read(){if(t!==void 0)return t;try{let c=e()?.getItem(Ug);t=c?A41(JSON.parse(c)):null}catch{t=null}return t},write(c){t=c;try{e()?.setItem(Ug,JSON.stringify(c))}catch{}s()},clear(){t=null;try{e()?.removeItem(Ug)}catch{}s()},subscribe(c){return a.add(c),()=>{a.delete(c)}}}}var W7=H41(()=>t3);function n_(){W7.clear()}function Kg(e,t,a){return e!==t?e:a||t}function P41(e,t){return e.make===t.make&&e.model===t.model&&e.modification===t.modification}function Nt(e,t){return e.make===t.make&&e.model===t.model&&e.year===t.year&&e.modification===t.modification}function I4({initialMakes:e=[],editing:t=!1,enabled:a=!0,autoApply:s=!1}={}){let c=i_(e,a),{setVehicle:l}=c,[r,o]=h_(null),[i,n]=h_(!1),h=jg(()=>({make:c.makeName,model:c.modelName,modification:c.modName}),[c.makeName,c.modelName,c.modName]);lc(()=>{if(t||!a){n(!0);return}let f=a_(new URLSearchParams(window.location.search)),w=f?null:W7.read(),z=f??w?.vehicle??null;z&&(l(z),o({vehicle:z,labels:w?.labels??{make:z.make,model:z.model,modification:z.modification},stock:null})),n(!0)},[t,a,l]),lc(()=>{if(!(t||!a))return W7.subscribe(()=>{let f=W7.read();o(z=>f?z&&Nt(z.vehicle,f.vehicle)?P41(z.labels,f.labels)?z:{...z,labels:f.labels}:{vehicle:f.vehicle,labels:f.labels,stock:null}:null);let w=f?.vehicle??V6;l(z=>Nt(z,w)?z:w)})},[t,a,l]),lc(()=>{!s||!v4(c.vehicle)||r&&Nt(r.vehicle,c.vehicle)||o({vehicle:c.vehicle,labels:h(),stock:c.stock})},[s,r,c.vehicle,c.stock,h]),lc(()=>{if(!r||!Nt(c.vehicle,r.vehicle))return;let f={make:Kg(c.makeName,c.vehicle.make,r.labels.make),model:Kg(c.modelName,c.vehicle.model,r.labels.model),modification:Kg(c.modName,c.vehicle.modification,r.labels.modification)};(r.stock!==c.stock||r.labels.make!==f.make||r.labels.model!==f.model||r.labels.modification!==f.modification)&&o(z=>z&&Nt(c.vehicle,z.vehicle)?{...z,stock:c.stock,labels:f}:z)},[r,c.vehicle,c.stock,c.makeName,c.modelName,c.modName]);let m=T41("");lc(()=>{if(!(t||!a))try{if(!r){m.current!==""&&(W7.clear(),m.current="");return}let f=JSON.stringify({vehicle:r.vehicle,labels:r.labels});if(f===m.current)return;W7.write({vehicle:r.vehicle,labels:r.labels}),m.current=f}catch{}},[r,t,a]);let u=jg(()=>{v4(c.vehicle)&&o({vehicle:c.vehicle,labels:h(),stock:c.stock})},[c.vehicle,c.stock,h]),d=jg(()=>{o(null),l(V6),!t&&a&&n_()},[t,a,l]),v=F41(()=>NM(r?.stock),[r?.stock]),g=!!r&&Nt(c.vehicle,r.vehicle)&&c.loading.stock!==!1,b=r?[r.vehicle.year,r.labels.make,r.labels.model,r.labels.modification].filter(Boolean).join(" "):"";return{cascade:c,applied:r,fit:v,resolving:g,unresolved:!!r&&v===null&&!g,apply:u,clear:d,canApply:v4(c.vehicle),appliedName:b,restored:i}}import{useEffect as m_,useState as p_}from"react";var $g="plp:locationchange",u_=!1;function E41(e){if(typeof window>"u")return()=>{};if(!u_){u_=!0;for(let t of["pushState","replaceState"]){let a=window.history[t];window.history[t]=function(...c){a.apply(this,c),window.dispatchEvent(new Event($g))}}}return window.addEventListener("popstate",e),window.addEventListener($g,e),()=>{window.removeEventListener("popstate",e),window.removeEventListener($g,e)}}function d_({editing:e,openingSort:t,appliedVehicle:a,vehicleRestored:s}){let[c,l]=p_({...L5,sort:t}),[r,o]=p_(!1);return m_(()=>{if(e||typeof window>"u")return;let i=()=>{let h=Pk(new URLSearchParams(window.location.search));return M8(h).toString()===""?{...L5,sort:t}:h},n=()=>{let h=i();l(m=>M8(m).toString()===M8(h).toString()?m:h)};return n(),o(!0),E41(n)},[e,t]),m_(()=>{if(e||!r||!s||typeof window>"u")return;let i=M8(c);D5(i,a);let n=i.toString();window.history.replaceState(null,"",`${window.location.pathname}${n?`?${n}`:""}`)},[e,r,s,c,a]),[c,l]}import{Fragment as g_,jsx as x2,jsxs as U2}from"react/jsx-runtime";var Yg={heading:"Let's find wheels that fit your car.",intro:"Tell us what you drive and we'll show you every set that bolts straight on \u2014 bolt pattern, offset and hub bore checked for you."};function R41({level:e,className:t,children:a}){return x2(e===2?"h2":"h1",{className:t,children:a})}var B41=[];function Xg({heading:e="",intro:t="",askForCar:a=!0,gateHeading:s="",gateIntro:c="",perPage:l=24,columns:r,defaultSort:o="recommended",hiddenFacets:i=[],fieldUsage:n=B41,showPrice:h=!0,showInStock:m=!0,kinds:u,products:d,wheels:v,editing:g=!1,coverIndex:b=1,cardImage:f,spinOnHover:w=!1,imageBackground:z,showBadge:k=!0,showCardSizes:S,showCardBuy:H,showCardPage:I,showCardPrice:P,showCardFinishes:D,outline:E=r4,indexBadge:F=l4,titleLevel:_}){let{currency:Z}=d0(),G=j9(z,e7),V=S5(u),j=C5(),N=JV(Wi(r),g?j:null),Q=`plp-${N41().replace(/:/g,"")}`,W=J6(Q,F),U=cN(),i1=d??v??U??[],y1=T3(()=>ek(i1,V),[i1,V.join(",")]),K=I4({editing:g,enabled:a,autoApply:!0}),[c1,b1]=I41(!1),$=uk(o,V),u1=K.applied?.vehicle??null,[x1,X0]=d_({editing:g,openingSort:$,appliedVehicle:u1,vehicleRestored:K.restored}),o0=gk(V,x1.kind),I1=l5(M1=>X0(M1),[X0]),c0=l5((M1,w2)=>{let g2=x1[M1],K6=g2.map(String).includes(w2)?g2.filter($h=>String($h)!==w2):[...g2,M1==="diameters"?Number(w2):w2];I1({...x1,[M1]:K6,page:1})},[x1,I1]),l0=l5(M1=>I1({...x1,priceMax:M1,page:1}),[x1,I1]),X1=l5(M1=>I1({...x1,inStockOnly:M1,page:1}),[x1,I1]),X2=l5(M1=>I1({...L5,kind:M1,inStockOnly:x1.inStockOnly,priceMax:x1.priceMax,sort:x1.sort}),[x1.inStockOnly,x1.priceMax,x1.sort,I1]),Q1=l5(M1=>I1({...x1,sort:M1,page:1}),[x1,I1]),d2=l5(M1=>{I1({...x1,page:M1}),typeof window<"u"&&window.scrollTo({top:0,behavior:n6()})},[x1,I1]),b0=l5(()=>I1({...L5,sort:x1.sort}),[x1.sort,I1]),{clear:d1}=K,$1=l5(()=>{d1(),b1(!0),X0(M1=>({...M1,page:1}))},[d1]),u0=l5(()=>{d1(),b1(!1),X0(M1=>({...M1,page:1}))},[d1]),P0=u1?[u1.make,u1.model,u1.year,u1.modification].join("|"):"",J0=_41(null);V41(()=>{if(K.restored){if(J0.current===null){J0.current=P0;return}J0.current!==P0&&(J0.current=P0,X0(M1=>M1.page===1?M1:{...M1,page:1}))}},[K.restored,P0,X0]);let q0=o_({catalog:y1,shownKinds:V,vehicle:u1,editing:g}),e1=T3(()=>{if(!K.fit)return q0;let M1=q0.filter(g2=>B0(g2)==="alloy-wheel"),w2=new Set(Qr(M1,K.fit).map(g2=>g2.slug));return q0.filter(g2=>B0(g2)!=="alloy-wheel"||w2.has(p7(g2)))},[q0,K.fit]),z1=i.join(","),t0=T3(()=>{let M1=new Set(z1?z1.split(","):[]);return Vr(e1,x1,Z,o0,n).filter(w2=>!M1.has(w2.key))},[e1,x1,Z,z1,o0.join(","),n]),s2=T3(()=>xk(e1,x1,Z),[e1,x1,Z]),M3=o0.length>1,G6=T3(()=>j4(n,"alloy-wheel"),[n]),q6=T3(()=>j4(n,"tyre"),[n]),W6=T3(()=>tk(s2),[s2]),u5=T3(()=>ak(s2),[s2]),V3=T3(()=>h?Sk(e1,Z):null,[e1,Z,h]),U6=T3(()=>bk(e1,x1,Z),[e1,x1,Z]),p8=T3(()=>Mk(e1,V,x1,Z),[e1,V.join(","),x1,Z]),m3=l5((M1,w2)=>{let g2=kk(e1.flatMap(ke),x1.tyreSizes[0]??"",M1,w2);I1({...x1,tyreSizes:g2?[g2]:[],page:1})},[e1,x1,I1]),C9=T3(()=>{let M1=new Set(z1?z1.split(","):[]);return!yk(e1,o0)||M1.has("tyreSizes")?null:Ck(e1,x1,Z)},[e1,x1,Z,z1,o0.join(","),n]),N3=T3(()=>Vk(s2,x1.page,l),[s2,x1.page,l]),e4=M5(o0),S3=Os(o0),t4=lN(s,c,o0,V),a6=o0.length===1&&o0[0]==="tyre",z4=K.applied?.stock??null,y4=T3(()=>ZS(z4),[z4]),G4=T3(()=>e1.filter(M1=>o0.includes(B0(M1))).length,[e1,o0.join(",")]),j6=y1.length===0,S1=!j6&&e1.length===0,i0=a&&!g&&!K.applied&&!c1;return V.length===0?null:U2("section",{style:J2(f),children:[a&&x2(qg,{cascade:K.cascade,appliedName:K.appliedName,fit:K.fit,fitSummary:a6&&y4.length>0?`Takes ${y4.join(" \xB7 ")}`:null,resolving:K.resolving,unresolved:a6?!!K.applied&&!K.resolving&&y4.length===0:K.unresolved,matchCount:G4,copy:S3,onAmend:u0,onClear:$1}),i0&&x2(Wg,{cascade:K.cascade,heading:t4.heading,intro:t4.intro,ready:K.restored,copy:S3,onSkip:()=>b1(!0)}),U2("div",{className:"px-5 py-10 md:px-10",children:[(e||t)&&U2("header",{className:"mb-6",children:[e&&x2(R41,{level:_,className:"font-display text-[clamp(28px,4vw,40px)] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[1.05] tracking-[-0.02em]",children:e0(e)}),t&&x2("p",{className:"mt-2 max-w-[60ch] text-[15px] text-fg-dim",children:e0(t)})]}),U2("div",{className:"flex flex-col gap-8 lg:flex-row lg:items-start",children:[x2(Og,{facets:t0,filters:x1,typeOptions:p8,sizeBoxes:C9,sizeMatches:x1.tyreSizes.length>0?s2.length:null,noun:e4,priceBounds:V3,inStockCount:m?U6:null,onToggle:c0,onPickType:X2,onPickSize:m3,onPriceMax:l0,onInStockOnly:X1,onClearAll:b0}),U2("div",{className:"min-w-0 flex-1",children:[U2("div",{className:"mb-4 flex min-h-[34px] flex-wrap items-center justify-between gap-x-4 gap-y-2 border-b border-line pb-3",children:[U2("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-4 gap-y-2",children:[x2("p",{className:"font-mono text-[12px] tabular-nums tracking-[0.08em]",children:N3.total===0?U2("span",{className:"text-fg-dim",children:["No ",e4.many]}):U2(g_,{children:[U2("span",{children:[N3.from,"\u2013",N3.to]}),U2("span",{className:"text-fg-dim",children:[" of ",N3.total," ",e4.many]})]})}),x2(Sg,{filters:x1,onToggle:c0,onPriceMax:l0,onInStockOnly:X1,onPickType:X2})]}),U2("label",{className:"flex items-center gap-2 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:["Sort by",x2("select",{value:x1.sort,onChange:M1=>Q1(Ae(M1.target.value)),className:"cursor-pointer border border-line bg-transparent px-2 py-1.5 font-mono text-[12px] normal-case tracking-normal text-fg",children:tp(V).map(M1=>x2("option",{value:M1,children:Ta[M1]},M1))})]})]}),j6?x2("div",{className:"border border-dashed border-line p-10",children:x2("p",{className:"font-mono text-[12px] uppercase tracking-[0.16em] text-fg-dim",children:g?e4.many==="wheels"?p("No wheels in this website's catalog yet \u2014 curate products to see them here."):e4.many==="tyres"?p("No tyres in this website's catalog yet \u2014 curate products to see them here."):p("No products in this website's catalog yet \u2014 curate products to see them here."):"Our catalog is being updated. Please check back shortly."})}):S1?U2("div",{className:"border border-line p-10",children:[U2("h3",{className:"font-display text-[22px] font-medium uppercase tracking-[-0.01em]",children:["No confirmed fit for your ",K.appliedName]}),x2("p",{className:"mt-2 max-w-[52ch] text-[14px] text-fg-dim",children:S3.nothingFits}),U2("button",{type:"button",onClick:$1,className:"mt-4 cursor-pointer bg-btn px-4 py-2.5 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-btn-ink hover:bg-fg",children:["Show all ",e4.many]})]}):N3.total===0?U2("div",{className:"border border-line p-10",children:[U2("h3",{className:"font-display text-[22px] font-medium uppercase tracking-[-0.01em]",children:["No ",e4.many," match those filters"]}),x2("p",{className:"mt-2 max-w-[46ch] text-[14px] text-fg-dim",children:"Try widening the price range or clearing a filter."}),Er(x1)&&x2("button",{type:"button",onClick:b0,className:"mt-4 cursor-pointer bg-btn px-4 py-2.5 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-btn-ink hover:bg-fg",children:"Clear all filters"})]}):U2(g_,{children:[W&&x2("style",{children:W}),x2("div",{className:W?`${Q} plp-card-grid`:"plp-card-grid",style:N,children:N3.items.map(M1=>B0(M1)==="tyre"?x2(Ys,{item:M1,currency:Z,fitSize:y4.length>0?DS(M1.sizes,y4):null,kindLabel:M3?M5(["tyre"]).one:null,showBrand:W6,editing:g,fieldUsage:q6},`tyre:${p7(M1)}`):x2(_g,{wheel:M1,colours:x1.finishes,fit:K.fit,editing:g,kindLabel:M3?M5(["alloy-wheel"]).one:null,showBrand:W6,coverIndex:b,fieldUsage:G6,showProcess:u5,spinOnHover:w,imageBackgroundFill:G,showBadge:k,outline:E,indexBadge:F,showCardSizes:S??!0,showCardBuy:H??!0,showCardPage:I??!0,showCardPrice:P??!0,showCardFinishes:D??!0},`wheel:${p7(M1)}`))})]}),x2(Ig,{page:N3.page,pageCount:N3.pageCount,onPage:d2}),x2(Ds,{editing:g})]})]})]})]})}import{SortIcon as D41,CarIcon as O41,HashIcon as G41}from"efficient-easel/icons";import{useEasel as q41}from"efficient-easel/easel";import{jsx as Z41}from"react/jsx-runtime";var rc={heading:"Alloy wheels",intro:"Filter by brand, colour, size and fitment to find your set."},v_={label:"List",defaultProps:{heading:"",intro:"",askForCar:!0,gateHeading:"",gateIntro:"",kinds:[...Ar],perPage:24,columns:mg,defaultSort:"recommended",coverIndex:String(1),showInStock:!0,showCollection:!0,showPrice:!0},render:e=>Z41(Xg,{titleLevel:e.titleLevel,heading:y(e.heading,rc.heading,e.puck),intro:y(e.intro,rc.intro,e.puck),askForCar:e.askForCar!==!1,gateHeading:a1(e.gateHeading),gateIntro:a1(e.gateIntro),perPage:e.perPage,columns:e.columns,defaultSort:Ae(e.defaultSort),coverIndex:Ft(e.coverIndex),cardImage:e.cardImage,spinOnHover:e.spinOnHover===!0,imageBackground:e.imageBackground,showBadge:e.showBadge!==!1,showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage,outline:f8(e.outline),indexBadge:l6(e.indexBadge),hiddenFacets:Nr(e),showPrice:e.showPrice,showInStock:e.showInStock!==!1,kinds:e.kinds,products:e.products,wheels:e.wheels,fieldUsage:e.fieldUsage,editing:e.puck?.isEditing})};import{jsx as c9}from"react/jsx-runtime";var wn=[{value:"showInStock",label:"In stock"},{value:"showCollection",label:"Collection"},{value:"showPrice",label:"Price"}],W41="Brand, Color, Size and PCD follow the product type. Set them in Product types.",f_="root:default-zone";function U41(){let{appState:e,dispatch:t}=q41(i=>i),a=e.ui.itemSelector,s=e.data.content??[],c=a&&(a.zone===void 0||a.zone===f_)?a.index:-1,l=c>=0?s[c]:void 0,r=l?.props??{},o=wn.filter(i=>r[i.value]!==!1).map(i=>i.value);return c9(El,{label:"Filters",options:wn.map(i=>({...i,label:p(i.label)})),value:o,onChange:i=>{if(!l||l.type!=="AlloyWheelsListing")return;let n={};for(let h of wn){let m=i.includes(h.value);r[h.value]!==!1!==m&&(n[h.value]=m)}Object.keys(n).length&&t({type:"replace",destinationZone:f_,destinationIndex:c,data:{...l,props:{...l.props,...n}}})}})}var b_=()=>Fl({type:"custom",render:()=>c9(Tl,{})},"always"),x_={fields:{_gHeader:x("Header"),heading:T("Heading",rc.heading),intro:O("Intro",rc.intro),_gResults:x("Products"),kinds:Q9("Product types",we,"None \u2014 this section will be empty"),defaultSort:g1("Opening sort",c9(D41,{}),Object.entries(Ta).map(([e,t])=>({value:e,label:t})),"recommended"),_gFilters:x("Filters"),showInStock:{type:"custom",label:"Filters",options:wn,render:()=>c9(U41,{})},showCollection:b_(),showPrice:b_(),_nFieldFilters:b5(W41),_gVehicle:x("Car prompt"),askForCar:l1("Ask for the car first",!0,c9(O41,{})),gateHeading:q("Welcome heading",Yg.heading),gateIntro:E1("Welcome intro",Yg.intro),...Yl({bottomDefault:!0}),...ee({coverHint:"A card's opening picture \u2014 picking another color opens that color's first picture.",spinDefault:!1}),...te(),_gGrid:x("Grid"),columns:{type:"custom",render:({value:e,onChange:t})=>c9(gg,{value:e,onChange:t})},perPage:s1("Products per page",c9(G41,{}),8,60,4,24)},resolveFields:(e,{fields:t})=>{let a=Os(S5(e.props.kinds));return{...t,gateHeading:q("Welcome heading",a.gateHeading),gateIntro:E1("Welcome intro",a.gateIntro)}}};import{useEffect as $41,useState as Y41}from"react";function j41(e){return{name:e.name,logo:e.logo,count:e.count}}var oc=null,Jg=null;function Cn(e=!1){let t=i2();return!e&&oc&&Jg===t||(Jg=t,oc=K41(t).catch(()=>(Jg===t&&(oc=null),null))),oc}async function K41(e){return e?(await v0.listBrandsForSite(e)).map(j41):null}import{Fragment as X41,jsx as kn,jsxs as J41}from"react/jsx-runtime";function Qg({value:e,onChange:t}){let[a,s]=Y41(void 0);$41(()=>{let o=!1;return Cn().then(i=>{o||s(i)}),()=>{o=!0}},[]);let c=Array.isArray(e)?e:[],r=[...a??[],...c.filter(o=>!(a??[]).some(i=>i.name===o)).map(o=>({name:o,logo:"",count:0}))].map(o=>({value:o.name,label:o.name,note:String(o.count)}));return J41(X41,{children:[kn(El,{label:"Brands",options:r,value:c,onChange:t,emptyLabel:"None"}),a===void 0?kn("p",{className:"es-field-hint sf-hint-keep",children:p("Reading this website\u2019s brands\u2026")}):a===null?kn("p",{className:"es-field-hint sf-hint-keep",children:p("Could not read this website\u2019s brands. The list above shows only what is already picked \u2014 reopen the panel to try again.")}):a.length===0?kn("p",{className:"es-field-hint sf-hint-keep",children:p("This website has no brands yet. A brand appears here once it has a product in the catalog.")}):null]})}var ic="picks",z_="available",y_=()=>[];function w_(e,t){let a=new Set((e??[]).map(r=>(r??"").trim()).filter(Boolean));if(a.size===0)return[];let s=t??[],c=[],l=new Set;for(let r of s)a.has(r.name)&&(c.push(r),l.add(r.name));for(let r of e??[]){let o=(r??"").trim();!o||l.has(o)||(l.add(o),c.push({name:o,logo:"",count:0}))}return c}import{LogoIcon as Q41,HashIcon as e51}from"efficient-easel/icons";import{jsx as C_}from"react/jsx-runtime";var k_={fields:{_gContent:x("Content"),heading:T("Heading","Shop by brand"),button:T("Button","All brands"),link:H1("Link"),[ic]:c2(Qg),_gStyle:x("Style"),face:v1("Tile",C_(Q41,{}),[{label:"Name",value:"name"},{label:"Mark",value:"mark"}],"name"),showCount:l1("Count",!0,C_(e51,{})),_gLayout:x("Layout")}};import{ColumnsIcon as t51}from"efficient-easel/icons";var U0={num:A.sectionNumber,link:A.viewAll};import{jsx as a51}from"react/jsx-runtime";var M_={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),description:O("Body",A.body),_gLayout:x("Layout"),columns:s1("Columns",a51(t51,{}),2,3,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.BundleOffer.headRows)};import{StylesIcon as s51}from"efficient-easel/icons";var Mn=[{label:"Icon",value:"icon"},{label:"Text",value:"text"}];import{jsx as c51}from"react/jsx-runtime";var S_={fields:{_gStyle:x("Style"),style:v1("Show as",c51(s51,{}),Mn,"icon")}};import{HashIcon as v51,SortIcon as f51,LayoutIcon as b51}from"efficient-easel/icons";import{createContext as r51,useContext as o51,useMemo as i51}from"react";var l51=["vehicle","process","size","lugs","finish","price"],Sn={vehicle:"My Car",process:"Process",size:"Size",lugs:"Lugs",finish:"Finish",price:"Price"};function L_(e){if(!e)return Sn;let t={...Sn};for(let a of l51){let s=e[a];if(typeof s!="string")continue;let c=s.trim();c&&(t[a]=c)}return t}import{jsx as n51}from"react/jsx-runtime";var A_=r51(Sn);function mq1({labels:e,children:t}){let a=i51(()=>L_(e),[e]);return n51(A_.Provider,{value:a,children:t})}function nc(){return o51(A_)}import{SettingsField as h51,SettingsSwitch as m51}from"efficient-easel/panel";import{jsx as hc}from"react/jsx-runtime";function p51({facet:e,fallback:t,value:a,onChange:s,fieldId:c}){let r=nc()[e],o=typeof a=="boolean"?a:t,i=`${c}-label`;return hc(h51,{label:r,labelId:i,action:hc(m51,{checked:o,onChange:s,ariaLabelledBy:i})})}function mc(e,t){return{type:"custom",render:({value:a,onChange:s,id:c,name:l})=>hc(p51,{facet:e,fallback:t,value:a,onChange:s,fieldId:String(c??l??e)})}}function H_(e,t){return{type:"custom",render:()=>hc(u51,{facets:e,rest:t})}}function u51({facets:e,rest:t}){let a=nc(),s=e.map(l=>a[l]),c=s.length>1?p("{list} and {last}",{list:s.slice(0,-1).join(", "),last:s[s.length-1]}):s.join("");return hc($y,{text:t.includes("{names}")?p(t,{names:c}):`${c} ${t}`})}var F_="The results link is off while the Lugs filter is on. The product listing page filters on bolt pattern and has no lug filter, so a shopper's lug choice could not be carried across \u2014 they would land on a wider set of products than they asked for. Turn Lugs off to use the results link.";function T_(e){let t=[];return e.lugs!=null&&t.push("lugs"),e.priceMin!=null&&t.push("priceMin"),t}function d51(e){return e==="default"?"recommended":e}function g51(e){return{...L5,collections:e.process?[e.process]:[],diameters:e.size!=null?[e.size]:[],finishes:e.finish?[e.finish]:[],priceMax:e.priceMax,sort:d51(e.sort)}}function P_(e,t,a){let s=e.indexOf("#"),c=s===-1?"":e.slice(s),l=s===-1?e:e.slice(0,s),r=l.indexOf("?"),o=r===-1?l:l.slice(0,r),i=new URLSearchParams(r===-1?"":l.slice(r+1));for(let[h,m]of M8(g51(t)))i.set(h,m);D5(i,a);let n=i.toString();return`${o}${n?`?${n}`:""}${c}`}var l9="pills",ev=[{label:"Pills",value:"pills"},{label:"Columns",value:"columns"}];function E_(e){return I2(ev,l9,e)}import{jsx as tv}from"react/jsx-runtime";var x51="follow the product type. Set them in Product types.",V_={fields:{_gPills:x("Filters shown"),showProcess:mc("process",!0),showLugs:mc("lugs",!0),showPrice:mc("price",!0),showVehicle:mc("vehicle",!0),_nFieldFilters:H_(["size","finish"],x51),_gBar:x("Bar"),showCount:l1("Result count",!0,tv(v51,{})),showSort:l1("Sort + Clear all",!0,tv(f51,{})),resultsLabel:q("Results button","See all results"),resultsHref:H1("Results link"),resultsBlocked:b5(F_),layout:g1("Layout",tv(b51,{}),ev,l9)},resolveFields:(e,{fields:t})=>{let a=e.props,s={...t};return a.showLugs?(delete s.resultsHref,delete s.resultsLabel):delete s.resultsBlocked,s}};import{jsx as _t,jsxs as N_}from"react/jsx-runtime";function av({eyebrow:e,title:t,body:a,ctaText:s,ctaHref:c,secondaryText:l,secondaryHref:r,contained:o}){return _t(t2,{contained:o,className:"py-6",children:N_("div",{className:"flex flex-col items-center gap-5 px-6 py-16 text-center max-[800px]:py-10",children:[e&&_t(V1,{text:e,scaled:!1}),t&&_t("h2",{className:"max-w-[720px] font-display text-[min(44px,var(--sf-heading-max,9999px))] font-medium leading-[1.05] tracking-[-0.03em] max-[800px]:text-[min(30px,var(--sf-heading-max,9999px))]",children:Y(t,!1)}),a&&z0(a).map((i,n)=>_t("p",{className:"max-w-[560px] text-[16px] leading-[1.6] opacity-85",children:M(i)},n)),(s||l)&&N_("div",{className:"mt-2 flex items-center gap-6",children:[s&&_t(c3,{href:c||"/checkout",variant:"primary",children:M(s)}),l&&_t("a",{href:r||"#",className:"font-mono text-[13px] uppercase tracking-[0.2em] underline underline-offset-4 opacity-70 hover:opacity-100",children:M(l)})]})]})})}import{jsx as z51}from"react/jsx-runtime";var pc={title:"Ready when *you are.*",secondary:"Questions? Talk to us"},__={label:"Ready-to-Order Banner",defaultProps:{eyebrow:"",title:"",body:"",ctaText:"",ctaHref:"",secondaryText:"",secondaryHref:"",contained:!0},render:({eyebrow:e,title:t,body:a,ctaText:s,ctaHref:c,secondaryText:l,secondaryHref:r,contained:o,puck:i})=>{let n=W3(s,c,i);return z51(av,{eyebrow:y(e,A.eyebrow,i),title:y(t,pc.title,i),body:y(a,A.body,i),ctaText:n.text,ctaHref:n.href||"/checkout",secondaryText:y(l,pc.secondary,i),secondaryHref:a1(r)||"#",contained:o})}};var I_={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.eyebrow),title:O("Heading",pc.title),body:O("Body",A.body),_gButton:x("Button"),...H4,secondaryText:T("Secondary button",pc.secondary),secondaryHref:H1("Secondary link"),_gLayout:x("Layout")}};import{Button as y51}from"efficient-shell/ui";import{SettingsField as w51}from"efficient-easel/panel";import{FieldSelect as C51}from"efficient-easel/fields";import{CategoryIcon as k51}from"efficient-easel/icons";import{useEffect as R_,useRef as sv,useState as M51}from"react";var f4=ct({fetch:(e,t)=>J1.listCategories(e,{visibleOnly:!0,siteId:t}),keyBy:i2});import{jsx as b4,jsxs as It}from"react/jsx-runtime";function B_(e){return{id:e.id,name:e.name,slug:e.slug,description:e.description??"",image:e.image??""}}function cv({value:e,onChange:t}){let a=C4(),[s,c]=M51(null),l=sv(!0),r=sv(e);r.current=e;let o=sv(t);o.current=t;let i=(g=!1)=>f4(g).then(b=>(l.current&&c(b),b)),n=g=>{let b=r.current;if(!b?.id)return;let f=g.find(z=>z.id===b.id);if(!f)return;let w=B_(f);b6(w,b)&&o.current(w)};R_(()=>(l.current=!0,i().then(n),()=>{l.current=!1}),[]),R_(()=>QM(()=>{i(!0).then(n)}),[]);let h=g=>{if(!g){t(null);return}let b=(s??[]).find(f=>f.id===g);b&&t(B_(b))},m=()=>{e?.id&&a.send("storefront-editor:open-category",{categoryId:e.id,name:e.name})},u=s===null,d=!!e?.id&&!(s??[]).some(g=>g.id===e.id),v=fu(e?.image);return It("div",{children:[b4(w51,{label:p("Collection"),icon:b4(k51,{}),children:b4(C51,{value:e?.id??"",ariaLabel:p("Collection"),onChange:h,readOnly:u,options:[{label:u?p("Loading\u2026"):p("None"),value:""},...d?[{label:p("{name} (unavailable)",{name:e.name}),value:e.id}]:[],...(s??[]).map(g=>({label:g.name,value:g.id}))]})}),e?.id?It("div",{className:"sf-blogsource",style:{marginTop:9},children:[It("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Name")}),b4("div",{style:{fontWeight:600},children:e.name})]}),It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Description")}),b4("div",{style:{fontSize:13,opacity:e.description?.85:.5},children:e.description||p("No description yet")})]}),It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Image")}),v?b4("img",{src:v,alt:"",style:{width:"100%",height:96,objectFit:"cover",borderRadius:8}}):b4("div",{style:{fontSize:13,opacity:.5},children:p("No image yet")})]})]}),b4(y51,{variant:"secondary",size:"sm",className:"sf-blogsource-action",style:{marginTop:10},onClick:m,children:p("Edit category \u270E")}),b4("p",{className:"es-field-hint sf-hint-keep",children:p("Name, description and image come from {place}. Edit them there \u2014 this card updates to match.",{place:p("Storefront \u2192 Categories")})})]}):b4("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a category from {place} to fill this card\u2019s name, description and image. That content is edited in the category.",{place:p("Storefront \u2192 Categories")})})]})}import{jsx as S51}from"react/jsx-runtime";var Z_={fields:{_gContent:x("Content"),collection:{type:"custom",render:({value:e,onChange:t})=>S51(cv,{value:e,onChange:t})},altName:Y9(f1("Alt name")),tag:T("Tag",A.eyebrow),_gLink:x("Link"),href:H1("Link")}};import{ColumnsIcon as E51,HashIcon as V51}from"efficient-easel/icons";import{useId as L51}from"react";import{Fragment as D_,jsx as r9,jsxs as lv}from"react/jsx-runtime";function A51({editing:e,nodeId:t,children:a}){return!e||!t?r9(D_,{children:a}):r9(st,{nodeId:t,sectionType:"Collections",children:a})}var H51="px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",F51="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]",T51={2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5"};function rv({eyebrow:e,heading:t,columns:a,showPrice:s,cardStyle:c,layout:l,limit:r,cards:o,omitHead:i=!1,nodeId:n,partStyles:h,editing:m=!1}={}){let u=`cg-${L51().replace(/:/g,"")}`,d=typeof r=="number"&&r>0,v=l==="list"?"grid-cols-1":a===void 0?"grid-cols-3":T51[Math.min(5,Math.max(2,Math.round(a)))]??"grid-cols-3";return lv("section",{className:i?F51:H51,children:[i?null:r9(s0,{num:e!==void 0?e:"01 / Collections",accentNum:!0,title:t!==void 0?Y(t,!1):lv(D_,{children:["Three ranges,",r9("br",{}),"one standard."]}),link:{text:"View all",href:"/wheels"}}),o&&r9(A51,{editing:m,nodeId:n,children:lv(bu.Provider,{value:{showPrice:s,cardStyle:c,partStyles:h,editing:m},children:[d&&r9("style",{children:`.${u} > *:nth-child(n+${r+1}){display:none}`}),r9(o,{className:`${u} grid ${v} gap-4 max-[800px]:grid-cols-1 max-[800px]:gap-3`,minEmptyHeight:260})]})})]})}import{jsx as P51}from"react/jsx-runtime";var ov={cards:{type:"slot"}},O_={label:"Collections",fields:ov,defaultProps:{columns:3,limit:6},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return P51(rv,{eyebrow:a(e2(e.eyebrow,A.sectionNumber,e.puck)),heading:a(e2(e.heading,A.sectionHeading,e.puck)),omitHead:t,nodeId:typeof e.id=="string"?e.id:void 0,partStyles:E9(e),editing:e.puck?.isEditing,columns:e.columns,limit:e.limit,cards:e.cards})}};import{jsx as G_}from"react/jsx-runtime";var q_={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.sectionNumber),heading:O("Heading",A.sectionHeading),cardList:N5("Collections","Cards"),cards:ov.cards,_gLayout:x("Layout"),columns:s1("Columns",G_(E51,{}),2,5,1,3),limit:s1("Collections to display",G_(V51,{}),1,8,1,6)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Collections.headRows)};import{useEffect as f61,useId as b61,useState as x61}from"react";import{useId as D51}from"react";import{Fragment as R51,jsx as O5,jsxs as Rt}from"react/jsx-runtime";var N51=[],_51="View tyre",I51="flex flex-col bg-[var(--card-bg)] p-5";function W_(e,t){let a=e?Pl(e):"";return[I51,t?"relative":"",a].filter(Boolean).join(" ")}function uc({outline:e,showIndex:t=!1,size:a,specs:s,prices:c,image:l,inStock:r,href:o,linkLabel:i=_51,imageSizes:n="(max-width: 720px) 100vw, (max-width: 1100px) 50vw, 33vw",fieldUsage:h=N51,currency:m,formatPrice:u}){let d=de(c,m),v=d===null?n7:u(d),g=Xm(h),b=[["load_index","Load index",s.loadIndex],["speed_rating","Speed",s.speedRating],["construction","Construction",s.construction],["tire_type","Type",s.tireType]].filter(([,,z])=>!!z).filter(([z])=>g(z)),f=Rt(R51,{children:[O5(p6,{image:l,size:a,type:s.tireType,sizes:n}),O5("h3",{className:"mt-4 font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-tight",children:a}),s.treadPattern?O5("div",{className:"mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:s.treadPattern}):null,b.length>0&&O5("dl",{className:"mt-3 flex flex-col gap-1.5 font-mono text-[length:var(--size-label,12px)]",children:b.map(([z,k,S])=>Rt("div",{className:"flex items-baseline justify-between gap-3",children:[O5("dt",{className:"uppercase tracking-[0.14em] text-fg-dim",children:k}),O5("dd",{className:"text-right text-fg",children:S})]},z))}),Rt("div",{className:"mt-4 flex items-baseline justify-between gap-3 border-t border-line pt-3 font-mono text-[length:var(--size-label,13px)]",children:[O5("span",{className:"text-fg",children:v}),O5("span",{style:r?{color:"var(--green)"}:void 0,className:r?void 0:"text-fg-dim",children:r?"In stock":"Out of stock"})]})]}),w=t?O5("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null;return o?Rt(L1,{href:o,"aria-label":a?`View ${a} tyre`:"View this tyre",className:`group ${W_(e,t)}`,children:[w,f,Rt("span",{className:"mt-3 inline-flex items-center gap-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent transition-colors group-hover:text-fg",children:[i,O5("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]})]}):Rt("div",{className:W_(e,t),children:[w,f]})}import{jsx as B51,jsxs as Z51}from"react/jsx-runtime";function dc({href:e,label:t}){return Z51(L1,{href:e,"data-view-more":!0,className:"inline-flex items-center gap-3 self-start border-b border-line pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg transition-colors hover:text-fg-dim",children:[t,B51("span",{"aria-hidden":!0,children:"\u2192"})]})}import{Fragment as q51,jsx as G5,jsxs as iv}from"react/jsx-runtime";var O51="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",U_={2:"grid grid-cols-2 gap-2 max-[720px]:grid-cols-1",3:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",4:"grid grid-cols-4 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1"};function nv({num:e,title:t,description:a,tyres:s,footnote:c,footnoteLinkText:l,footnoteLinkHref:r,viewMore:o,editing:i=!1,frameClassName:n=O51,omitHead:h=!1,columns:m=3,capWidth:u,cardImage:d,outline:v,indexBadge:g}){let{currency:b,formatPrice:f}=d0(),w=s??[],z=`ct-${D51().replace(/:/g,"")}`,k=g??l4,S=J6(z,k),H=w.some(D=>!D.image),I=[c,H?uo:null].filter(Boolean).join(" "),P=h?null:G5(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0});return w.length===0?i?iv("section",{className:n,children:[P,G5("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("No compatible tyres found for this wheel\u2019s sizes yet \u2014 tyres appear automatically when a matching size is active and priced in the catalog.")})]}):null:iv("section",{className:n,style:J2(d),children:[S&&G5("style",{children:S}),iv(G51,{px:u,children:[P,G5("div",{className:`${S?`${z} `:""}${U_[m]??U_[3]}`,children:w.map(D=>G5(uc,{outline:v,showIndex:k!=="off",size:D.size,specs:D.specs,prices:D.prices,image:D.image,inStock:D.inStock,href:Ge(D.slug),currency:b,formatPrice:f},D.sku))}),o&&G5("div",{className:"mt-10 flex",children:G5(dc,{href:o.href,label:o.label})}),G5(s5,{text:I,linkText:l,linkHref:r})]})]})}function G51({px:e,children:t}){return typeof e!="number"?G5(q51,{children:t}):G5("div",{style:X6(e),children:t})}import{useMemo as Y51,useState as X51}from"react";import{createContext as W51,useContext as U51,useMemo as j51}from"react";import{jsx as $51}from"react/jsx-runtime";var j_=[],K51={imageBackgroundFill:U9,spinOnHover:!0,coverIndex:1,indexBadge:l4,outline:r4,showBadge:!0,fieldUsage:j_,reserveEyebrow:!1,showCardPrice:!0,showCardFinishes:!0,showCardSizes:!1,showCardBuy:!1,showCardPage:!1},K_=W51(K51);function Ln({imageBackgroundFill:e,spinOnHover:t,coverIndex:a=1,indexBadge:s=l4,outline:c=r4,showBadge:l=!0,fieldUsage:r=j_,reserveEyebrow:o=!1,showCardPrice:i=!0,showCardFinishes:n=!0,showCardSizes:h=!1,showCardBuy:m=!1,showCardPage:u=!1,children:d}){let v=j51(()=>({imageBackgroundFill:e,spinOnHover:t,coverIndex:a,indexBadge:s,outline:c,showBadge:l,fieldUsage:r,reserveEyebrow:o,showCardPrice:i,showCardFinishes:n,showCardSizes:h,showCardBuy:m,showCardPage:u}),[e,t,a,s,c,l,r,o,i,n,h,m,u]);return $51(K_.Provider,{value:v,children:d})}function $_(){return U51(K_)}import{Fragment as Y_,jsx as U7,jsxs as X_}from"react/jsx-runtime";function o9({wheel:e,variant:t="compact",defaultFinish:a}){let s=t==="catalog",c=Y51(()=>e.finishes.filter(r7),[e.finishes]),l=e.coverImage??null,{currency:r}=d0(),{imageBackgroundFill:o,spinOnHover:i,coverIndex:n,indexBadge:h,outline:m,showBadge:u,fieldUsage:d,reserveEyebrow:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z}=$_(),k=s&&(f||w||z),S=h7(e.prices[r],e.msrpPrices?.[r]),H=zr(S,r,"from "),I=VC(S,r),P=gN(e),D=fN(P),E=vN(P),F=Hr([...eo(e).map(b0=>({fieldKey:b0.fieldKey,field:b0.text})),...E?[{field:{text:E,accent:!0}}]:[]],d).map(b0=>b0.field),{selectedIdx:_,setSelectedIdx:Z,hoverIdx:G,setHoverIdx:V,availability:j,finish:N,shownSrc:Q,showSwatches:W,probes:U}=pn(c,l,a??e.defaultFinish??void 0),i1=on(e,n,N?.name,Q),y1="h-full w-full",K=i?`transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] ${s?"group-hover:rotate-[72deg]":"group-hover:rotate-[60deg]"}`:"",[c1,b1]=X51(()=>new Set),$=b0=>b1(d1=>d1.has(b0)?d1:new Set(d1).add(b0)),u1=rn({overrideSrc:i1,hookSrc:Q,failed:c1}),x1=u1?U7(_3,{src:u1,alt:N?`${e.name} \u2014 ${N.name}`:e.name,width:1e3,height:1e3,sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 300px",className:`block object-contain ${K} ${y1}`,draggable:!1,onError:()=>$(u1)},u1):U7(Js,{imageLabel:e.name}),X0=s&&u&&e.badge?U7(Mt,{className:Ws,tone:e.badge==="new"?"solid":"outline",children:e.badge==="new"?"New":"Bestseller"}):null,o0=E&&s?U7(Mt,{className:Ws,tone:"outline",children:E}):X0,I1=Ki({kindLabel:null,brand:null,process:e.process?e0(e.process):null},d),c0=D?X_(Y_,{children:[I1,U7("span",{className:`${I1?"ml-2":""} inline-block bg-accent px-1.5 py-[2px] align-middle font-mono text-[10px] font-bold uppercase tracking-[0.18em] text-bg`,children:"Set"})]}):I1,l0=h!=="off"?U7("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null,X1=dn(e),X2=ve(e,X1.selectedVariant,r,1),Q1=mn({wheel:e,sel:X1,price:X2,href:`/wheels/${e.slug}`,show:{sizes:k&&f,buy:k&&w,page:k&&z}}),d2=b&&W?U7(Xs,{finishes:c,availability:j,selectedIdx:_,hoverIdx:G,activeFinish:N,onSelect:Z,onHover:V,showLabel:!1}):null;return X_(Y_,{children:[U7(t9,{variant:t,wide:D&&s,href:`/wheels/${e.slug}`,outline:m,imageBackgroundFill:o,probes:U,reserveEyebrow:v,indexBadge:l0,badges:o0,image:x1,imageSecond:void 0,eyebrow:c0,name:e0(e.name),spec:Qi(F),was:D?void 0:I,price:D?S.priced?H:br:k?fe(X2,r):H,metaLine:D?"the set":void 0,swatches:d2,reserveSwatches:b,showPrice:g,identityLink:k,extras:Q1.extras}),Q1.dialog]})}import{createContext as J51,useContext as Q51,useMemo as e61}from"react";function J_(e,t=[]){let a=np(Na,{param:d7,value:e}),s=t.find(c=>{let l=(c?.url??"").trim();if(!l||l==="#")return!1;let r=ip(l);return r?.param!==d7||r.value!==e?!1:fm(l).startsWith("/")});return s?s.url:a}function Q_(e){let t=[];for(let a of e??[]){typeof a?.url=="string"&&t.push({url:a.url});for(let s of a?.dropdownItems??[])typeof s?.url=="string"&&t.push({url:s.url})}return t}import{jsx as t61}from"react/jsx-runtime";var eI=J51([]);function OU1({items:e,children:t}){let a=e61(()=>Q_(e),[e]);return t61(eI.Provider,{value:a,children:t})}function tI(){return Q51(eI)}import{useMemo as hj1}from"react";import{Fragment as a61,jsx as An,jsxs as s61}from"react/jsx-runtime";function Bt({item:e,onClose:t}){return An(F8,{open:!!e,onClose:t,label:e?.alt??"",className:"flex cursor-zoom-out items-center justify-center bg-overlay-scrim/90 p-6 backdrop-blur-sm max-[720px]:p-3",children:e&&s61(a61,{children:[An("img",{src:e.src,alt:e.alt,className:"block max-h-[92vh] max-w-[92vw] cursor-zoom-out object-contain"}),An(Ye,{}),An("span",{className:"absolute bottom-5 left-5 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:e.alt})]})})}import{useState as c61}from"react";function gc(){let[e,t]=c61(null);return{item:e,open:(a,s)=>t({src:a,alt:s}),close:()=>t(null)}}import{useEffect as o61,useState as Zt}from"react";function l61(e,t,a){let s=new Map;for(let c of e){let l=JSON.stringify(t.map(i=>c.options[i]??null)),r=s.get(l);r||s.set(l,r=new Set);let o=c.options[a];o!==void 0&&r.add(o)}return[...s.values()]}function aI(e,t,a){return a.every(s=>t[s]===void 0||e.options[s]===t[s])}function hv(e,t){let a={};for(let s of e.optionFields){let c=t[s.key]??s.defaultValue;c!==void 0&&(a[s.key]=c)}return a}function Hn(e,t){return cI(e,t).rows}function sI(e,t){return cI(e,t).facts}function cI(e,t){let a=hv(e,t),s=e.optionFields.filter(o=>o.role==="resolves").map(o=>o.key),c=[],l=[],r=[];for(let o of e.optionFields){let i=e.optionValues[o.key]??[],n=e.parts.filter(v=>aI(v,a,r)),h=new Set(n.map(v=>v.options[o.key]).filter(v=>v!==void 0)),m=new Set(e.parts.map(v=>v.options[o.key]).filter(v=>v!==void 0)),u=i.filter(v=>h.has(v.value)||!m.has(v.value));if(o.role==="resolves"?!0:l61(n,s,o.key).some(v=>v.size>1))c.push({key:o.key,label:o.label,prompt:o.prompt,role:o.role,display:o.display,values:u,chosen:t[o.key]??null,empty:o.empty}),r.push(o.key);else if(h.size===1){let[v]=[...h];l.push({key:o.key,label:o.label,value:i.find(g=>g.value===v)??{value:v,label:v}})}}return{rows:c,facts:l}}function r61(e,t){return Hn(e,t).map(a=>a.key)}function lI(e,t){let a=r61(e,t);if(a.length===0||a.some(c=>t[c]===void 0))return null;let s=e.parts.filter(c=>aI(c,t,a));return s.length===1?s[0]:null}function rI(e,t){let a=Hn(e,t);return Object.keys(t).filter(s=>{let c=a.find(l=>l.key===s);return c?!c.values.some(l=>l.value===t[s]):!1})}function Fn(e,t){return e.filter(a=>!t||a.values.length>0).filter(a=>a.role==="resolves").every(a=>a.chosen!==null)}function oI({variants:e,inStock:t,priced:a}){return a&&t===!0&&(e??[]).length===0}function vc(e,{editing:t=!1}={}){let[a,s]=Zt({}),[c,l]=Zt(Ht.qty),[r,o]=Zt(Ht.choice),[i,n]=Zt(0),[h,m]=Zt(!1),[u,d]=Zt(!1),v=I4({editing:t,autoApply:!0}),g=SN(e,u?null:v.fit),b=Hn(g,a),f=sI(g,a),w=hv(g,a),z=lI(g,a),k=z!=null&&!z.inStock,S=rI(g,a).join("|");o61(()=>{if(!S)return;let W=new Set(S.split("|"));s(U=>{let i1={...U};for(let y1 of W)delete i1[y1];return i1})},[S]);let{currency:H}=d0(),P=kg(g,z,{choice:r,qty:c}),D=ve({prices:e.anchorPrices,msrpPrices:e.anchorMsrpPrices},z?{components:P.components}:null,H,c),E=D.unit??0,F=D.setTotal??0,_=yr(D,H),Z=u||v.appliedName!=="",G=FN(e)==="required"?Z:!0,j=b.every(W=>W.chosen!==null)&&G&&z!=null&&z.inStock&&D.priced,N=oI({variants:e.parts,inStock:e.inStock,priced:D.priced});function Q(W,U){s(i1=>({...i1,[W]:U}))}return{picked:a,shown:w,pick:Q,qty:c,setQty:l,choice:r,setChoice:o,angleIdx:i,setAngleIdx:n,showValidation:h,setShowValidation:m,manualMode:u,setManualMode:d,vehicle:v,fitmentSet:Z,rows:b,facts:f,part:z,outOfStock:k,offer:P,preOrder:N,canAddToCart:j,currency:H,price:D,unit:E,set:F,msrpLabel:_}}import{jsx as bj1,jsxs as xj1}from"react/jsx-runtime";function $0(){return vL(z7)?.value??null}var vj1=Object.freeze({});import{Fragment as n61,jsx as mv}from"react/jsx-runtime";function z2({kinds:e,type:t,editing:a=!1,children:s}){let c=$0();return!c||e.includes(c.product.kind)?mv(n61,{children:s}):a?mv("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",children:mv("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("{section} does not apply to {kind}. It is hidden on the live page.",{section:p(xa[t]??t),kind:i61(c.product.kind)})})}):null}function i61(e){switch(e){case"alloy-wheel":return p("Alloy wheels");case"tyre":return p("Tyres");default:return h4[e]}}var pv=2,fc=6,bc=12;function Tn(e){return typeof e!="number"||!Number.isFinite(e)?fc:Math.min(bc,Math.max(pv,Math.round(e)))}function iI(e,t=[]){return{href:J_(e.to,t),label:`View more ${M5([e.to]).many}`}}var h61={kind:"tyre",tyres:[]},m61={kind:"alloy-wheel",wheels:[]},nI=[{key:"tyres-that-fit",label:"Tyres that fit this product",from:["alloy-wheel"],to:"tyre",heading:"Compatible *tyres.*",resolve:e=>e.kind==="alloy-wheel"?{kind:"tyre",tyres:e.source.compatibleTyres??[]}:h61},{key:"wheels-that-fit",label:"Wheels this product fits",from:["tyre"],to:"alloy-wheel",heading:"Wheels that *fit.*",resolve:(e,t)=>e.kind==="tyre"?{kind:"alloy-wheel",wheels:t}:m61},{key:"more-like-this",label:"More like this",from:["alloy-wheel"],to:"alloy-wheel",heading:"Others you might *like.*",resolve:(e,t)=>({kind:"alloy-wheel",wheels:t})}],q5="more-like-this",hI=nI.map(e=>({value:e.key,label:e.label}));function uv(e){return nI.find(t=>t.key===e)}function mI(e,t){return e.from.includes(t)}var pI=["coverIndex","imageBackground","spinOnHover","showBadge"];function uI(e){return uv(e)?.to==="tyre"}var dv={GBP:0,USD:0,AUD:0},p61=[{diameter:18,width:8.5,boltPattern:"5\xD7112",centreBore:66.6,et:35},{diameter:19,width:9,boltPattern:"5\xD7112",centreBore:66.6,et:38},{diameter:20,width:9.5,boltPattern:"5\xD7112",centreBore:66.6,et:40}],gI=[{name:"Finish 1",color:"#171717",family:"black",src:"",features:[1,2,3].map(e=>({eyebrow:"Feature eyebrow",heading:"Feature title",description:"Feature description \u2014 replace this with your own copy.",mark:`0${e} \xB7 Feature`,image:""}))},{name:"Finish 2",color:"#cccccc",family:"silver",src:""},{name:"Finish 3",color:"#8a6438",family:"bronze",src:""}],u61=[{partNumber:"SAMPLE-18",diameter:18,width:8.5,holes:5,pcd:"112",et:35,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0},{partNumber:"SAMPLE-19",diameter:19,width:9,holes:5,pcd:"112",et:38,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0},{partNumber:"SAMPLE-20",diameter:20,width:9.5,holes:5,pcd:"112",et:40,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0}],d61=gI.flatMap(e=>p61.map((t,a)=>({finishName:e.name,size:`${t.diameter}" \xD7 ${t.width} \xB7 ${t.boltPattern} \xB7 ${t.centreBore} bore \xB7 ET ${t.et}`,kind:"squared",directional:!1,components:[{partNumber:`SAMPLE-${e.name.replace(/\s+/g,"")}-${a}`,wheels:4,prices:{...dv},hand:null}],inStock:!0,rearWidth:null,rearEt:null,...t}))),dI=e=>`data:image/svg+xml,${encodeURIComponent(`<svg xmlns="http://www.w3.org/2000/svg" width="640" height="640"><rect width="640" height="640" fill="#e6e6e6"/><text x="320" y="332" font-family="sans-serif" font-size="30" fill="#8f8f8f" text-anchor="middle">${e}</text></svg>`)}`,Dt=e=>({url:dI(e),thumbnailUrl:dI(e),kind:"image"}),g61={photos:[{name:"Studio set",finish:"Finish 1",items:[Dt("Sample photo 1"),Dt("Sample photo 2"),Dt("Sample photo 3")]}],lifestyle:[{name:"On location",finish:"",items:[Dt("Lifestyle 1"),Dt("Lifestyle 2")]},{name:"In the city",finish:"",items:[Dt("Lifestyle 3")]}],videos:[],accessories:[],others:[]},v61=[1,2].map(e=>({sku:`SAMPLE-TYRE-${e}`,size:"000/00 R00",specs:{loadIndex:"00",speedRating:"\u2014",construction:"\u2014",treadPattern:"Tyre model",tireType:"\u2014"},prices:{...dv},image:null,inStock:!0,slug:null})),gv={bundles:[],name:"Product Name",slug:"sample-product",process:"Precision Forged",categories:["Precision Forged"],sizes:[18,19,20],prices:{...dv},msrpPrices:{GBP:null,USD:null,AUD:null},spokes:5,mesh:!1,badge:null,finishes:gI,spec:{lugs:5,sizes:[18,19,20],widths:[8.5,9,9.5],pcds:["5\xD7112"],etRange:[35,42],centreBores:[66.6],loadRating:"000 kg / 000 lbs",cap:"",bumpProfile:"",rimProfile:""},coverImage:null,defaultFinish:null,description:"Product description \u2014 replace this with your own copy.",fitments:u61,photoSets:[],carPhotos:[],details:[],videos:[],mediaGroups:g61,relatedProducts:[],variants:d61,pdpTemplateSlug:null,compatibleTyres:v61},vv=Array.from({length:bc},(e,t)=>t+1).map(e=>({...gv,name:`Product ${e}`,slug:`sample-product-${e}`}));import{Fragment as C61,jsx as n3,jsxs as fv}from"react/jsx-runtime";var z61=D3,vI={2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"};function i9(e){return n3(z2,{kinds:z61,type:"RelatedProducts",editing:e.editing,children:n3(y61,{...e})})}function y61({num:e,title:t,description:a,columns:s=3,cardCount:c,relationship:l=q5,footnote:r,footnoteLinkText:o,footnoteLinkHref:i,editing:n=!1,omitHead:h=!1,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I}){let P=$0(),D=tI(),E=Tn(c),[F,_]=x61([]);f61(()=>{if(P||!n)return;let N=!1;return i3().then(Q=>{let W=Q.length>0?Q:vv;N||_(W)}).catch(()=>{N||_(vv)}),()=>{N=!0}},[P,n]);let Z=uv(l);if(!Z)return null;let G=iI(Z,D),V=h?null:n3(s0,{num:e?M(e):void 0,title:Y(t||Z.heading,!1),description:a?M(a):void 0,accent:!0});if(!P)return n?n3(fI,{header:V,wheels:F.slice(0,E),columns:s,viewMore:G,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I}):null;if(!mI(Z,P.product.kind))return n?n3("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",style:J2(m),children:n3("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("\u201C{relationship}\u201D does not apply to this product. It is hidden on the live page.",{relationship:p(Z.label)})})}):null;let j=Z.resolve(P.product,P.relatedWheels);return j.kind==="tyre"?n3(nv,{omitHead:h,columns:s,capWidth:I,cardImage:m,outline:u,indexBadge:d,num:e,title:t||Z.heading,description:a,tyres:[...j.tyres].slice(0,E),footnote:r,footnoteLinkText:o,footnoteLinkHref:i,viewMore:G,editing:n}):j.wheels.length===0?n?fv("section",{className:"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",style:J2(m),children:[V,n3("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("Related products appear here on a product page.")})]}):null:n3(fI,{header:V,wheels:[...j.wheels].slice(0,E),columns:s,viewMore:G,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I})}function fI({header:e,wheels:t,columns:a,viewMore:s,cardImage:c,outline:l,indexBadge:r,showBadge:o,showCardPrice:i,showCardFinishes:n,showCardSizes:h,showCardBuy:m,showCardPage:u,coverIndex:d,imageBackground:v,spinOnHover:g,capWidth:b}){let f=`rp-${b61().replace(/:/g,"")}`;if(t.length===0)return null;let w=vI[Math.min(4,Math.max(2,a))]??vI[3],z=r??l4,k=J6(f,z);return fv("section",{className:"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",style:J2(c),children:[k&&n3("style",{children:k}),fv(w61,{px:b,children:[e,n3(Ln,{imageBackgroundFill:j9(v,U9),spinOnHover:g??!0,coverIndex:d??1,outline:l??r4,indexBadge:z,showBadge:o??!0,showCardPrice:i??!0,showCardFinishes:n??!0,showCardSizes:h??!1,showCardBuy:m??!1,showCardPage:u??!1,children:n3("div",{className:`${f} grid gap-[2px] bg-[var(--catalog-grid-bg)] ${w}`,children:t.map((S,H)=>n3(o9,{wheel:S,variant:"catalog"},`${S.slug}-${H}`))})}),n3("div",{className:"mt-10 flex",children:n3(dc,{href:s.href,label:s.label})})]})]})}function w61({px:e,children:t}){return typeof e!="number"?n3(C61,{children:t}):n3("div",{style:X6(e),children:t})}import{jsx as k61}from"react/jsx-runtime";var r5={num:A.sectionNumber,title:"Compatible *tyres.*",description:A.body,footnote:"Tyres shown are fitment-matched companions.",footnoteLinkText:"Enquire about tyres"},bI={label:"Compatible Tyres",defaultProps:{num:"",title:"",description:"",footnote:"",footnoteLinkText:"",footnoteLinkHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return k61(i9,{num:a(y(e.num,r5.num,e.puck)),title:a(y(e.title,r5.title,e.puck)),description:a(y(e.description,r5.description,e.puck)),omitHead:t,footnote:y(e.footnote,r5.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,r5.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),relationship:"tyres-that-fit",cardImage:e.cardImage,editing:e.puck?.isEditing})}};var xI={fields:{_gContent:x("Header"),num:T("Number",r5.num),title:T("Heading",r5.title),description:O("Body",r5.description),_gFootnote:x("Footnote"),footnote:O("Footnote",r5.footnote),footnoteLinkText:T("Footnote button",r5.footnoteLinkText),footnoteLinkHref:H1("Footnote link"),_gCards:x("Cards"),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.CompatibleTyres.headRows)};var zI={fields:{}};import{SettingsIcon as T61,AccentIcon as P61}from"efficient-easel/icons";import{jsx as W5,jsxs as bv}from"react/jsx-runtime";var M61="py-6",S61="pt-0 pb-6";function xc({eyebrow:e,title:t,body:a,options:s=[],highlightBadge:c,contained:l,omitHead:r=!1}){return W5(t2,{contained:l,className:r?S61:M61,children:bv("div",{className:"flex flex-col gap-6",children:[r?null:e||t||a?bv("div",{className:"flex max-w-[680px] flex-col gap-3",children:[e&&W5(V1,{text:e,scaled:!1}),t&&W5("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:Y(t,!1)}),a&&z0(a).map((o,i)=>W5("p",{className:"text-[15px] leading-[1.6] opacity-85",children:M(o)},i))]}):null,s.length>0&&W5("ul",{className:"grid grid-cols-3 gap-4 max-[800px]:grid-cols-1",children:s.map((o,i)=>bv("li",{className:`sf-card relative flex flex-col gap-2 border bg-surface px-6 py-6 ${o.highlighted?"border-accent":"border-line"}`,children:[o.highlighted&&c&&W5("span",{className:"absolute -top-2.5 left-5 bg-bg px-2 font-mono text-[10px] uppercase tracking-[0.25em] text-accent",children:M(c)}),o.name&&W5("span",{className:"text-[17px] font-medium",children:M(o.name)}),o.eta&&W5("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] opacity-60",children:M(o.eta)}),o.blurb&&W5("p",{className:"text-[13.5px] leading-[1.6] opacity-75",children:M(o.blurb)}),o.price&&W5("span",{className:"mt-auto pt-2 font-display text-[20px] font-medium text-accent",children:M(o.price)})]},i))})]})})}import{useEffect as L61,useState as A61}from"react";import{jsx as H61}from"react/jsx-runtime";function xv({eyebrow:e,title:t,body:a,highlightBadge:s,contained:c,omitHead:l=!1}){let{currency:r,formatMoney:o}=d0(),[i,n]=A61(null);L61(()=>{let m=!1;return v0.listShippingMethods().then(u=>{m||n(u)}).catch(()=>{m||n([])}),()=>{m=!0}},[]);let h=(i??[]).filter(m=>m.prices[r]!=null).map(m=>{let u=m.prices[r],d=u===0?"Free":o(u,r),v=m.pickupLocation;return{name:v?`${m.name} \u2014 ${v.name}`:m.name,eta:v?v.openingHours||void 0:m.description||void 0,price:m.requiresQuote&&u!==0?`From ${d}`:d,blurb:v&&[v.address,v.city,v.state].filter(Boolean).join(", ")||void 0}});return H61(xc,{eyebrow:e,title:t,body:a,options:h,highlightBadge:s,contained:c,omitHead:l})}import{jsx as yI}from"react/jsx-runtime";var n9={title:"Delivery, your way",badge:"Recommended"},F61=()=>[{name:p("Standard"),eta:p("5\u20137 business days"),price:p("Free"),blurb:p("Tracked to your door.")},{name:p("Express"),eta:p("2\u20133 business days"),price:"$00",blurb:p("Priority handling."),highlighted:!0},{name:p("Pickup"),eta:p("Same day"),price:p("Free"),blurb:p("Collect from the warehouse.")}],wI={label:"Delivery Options",defaultProps:{eyebrow:"",title:"",body:"",options:[],live:!0,highlightBadge:"",contained:!0},render:e=>{let t=O1(e.headPlacement)==="own-box",a=m=>t?void 0:m,{eyebrow:s,title:c,body:l,options:r,live:o,highlightBadge:i,contained:n,puck:h}=e;return o?yI(xv,{eyebrow:a(y(s,A.eyebrow,h)),title:a(y(c,n9.title,h)),body:a(y(l,A.body,h)),omitHead:t,highlightBadge:y(i,n9.badge,h),contained:n}):yI(xc,{eyebrow:a(y(s,A.eyebrow,h)),title:a(y(c,n9.title,h)),body:a(y(l,A.body,h)),omitHead:t,options:C1(r,F61(),h),highlightBadge:y(i,n9.badge,h),contained:n})}};import{jsx as CI}from"react/jsx-runtime";var kI={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.eyebrow),title:O("Heading",n9.title),body:O("Body",A.body),_gOptions:x("Options"),live:l1("Use my real delivery options",!0,CI(T61,{})),options:{type:"array",label:"Delivery options",arrayFields:{name:f1("Name"),eta:f1("Window"),price:f1("Price"),blurb:E1("Body"),highlighted:l1("Highlight",!1,CI(P61,{}))},getItemSummary:e=>e.name||"Option"},highlightBadge:T("Highlight badge",n9.badge),_gLayout:x("Layout")},resolveFields:(e,{fields:t})=>G1(t,e.props.headPlacement,Z1.DeliveryOptions.headRows)};import{ProductFieldIcon as X61,WordsFromIcon as J61,SquareIcon as RI,ImageIcon as Q61}from"efficient-easel/icons";import{jsx as U5,jsxs as Pn}from"react/jsx-runtime";function Ot({rows:e,startLeft:t=!1,layout:a="even",padTop:s,padBottom:c,editing:l=!1}){let r=a==="narrow",o=typeof s=="number"?s:100,i=typeof c=="number"?c:100,n=(e??[]).filter(m=>(m?.eyebrow??"").trim()||(m?.title??"").trim()||(m?.copy??"").trim()||(m?.tag??"").trim()||(m?.image??"").trim()),h=n.length>0?n:l?[{tag:p("Row {n}",{n:1})},{tag:p("Row {n}",{n:2})},{tag:p("Row {n}",{n:3})}]:[];return h.length===0?null:U5("section",{className:"relative z-[2] mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line bg-bg px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:{paddingTop:o,paddingBottom:i},children:h.map((m,u)=>{let d=u%2===1!==t;return Pn("div",{className:["grid items-center py-[60px]",r?"grid-cols-[1fr_460px] gap-[72px]":"grid-cols-2 gap-12","max-[1100px]:grid-cols-1",d?"[direction:rtl] max-[1100px]:[direction:ltr]":"",u>0?"border-t border-line":""].join(" "),children:[Pn("div",{className:["[direction:ltr] flex flex-col gap-4",r?"max-w-[560px]":"",r&&!d?"ml-auto max-[1100px]:ml-0":""].join(" "),children:[m.eyebrow?.trim()&&U5("div",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-accent",children:e0(m.eyebrow)}),m.title?.trim()&&U5("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(28px,3vw,42px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-[1.1] tracking-[-0.02em]",children:M(m.title,!0)}),m.copy?.trim()&&U5("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:M(m.copy,!1)}),(()=>{let v=(m.specs??[]).filter(g=>(g?.label??"").trim()||(g?.value??"").trim());return v.length===0?null:U5("dl",{className:"mt-2 border-t border-line pt-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.1em] leading-[2.1]",children:v.map((g,b)=>Pn("div",{className:"flex items-baseline justify-between gap-6",children:[U5("dt",{className:"text-fg-dim",children:e0(g.label??"")}),U5("dd",{className:"text-fg",children:e0(g.value??"")})]},b))})})()]}),Pn("div",{className:["[direction:ltr] flex flex-col gap-3",r?d?"items-end":"items-start":"",r?"max-[1100px]:items-start":""].join(" "),children:[U5("div",{className:["relative overflow-hidden max-w-full",r?m.imageShape==="wide"?"w-[460px] aspect-[16/9]":"w-[360px] aspect-square":"aspect-square"].join(" "),children:U5(k0,{label:m.tag?.trim()||m.title?.trim()||`row-${u+1}`,src:m.image||void 0,objectFit:"contain",sizes:r?"(max-width: 1100px) 100vw, 460px":"(max-width: 1100px) 100vw, 50vw"})}),m.tag?.trim()&&U5("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-fg-dim ${d?"text-left":"text-right"}`,children:e0(m.tag)})]})]},u)})})}function MI(e,t){let a=e?.detailShots;if(!Array.isArray(a)||a.length===0)return[];let s=a.filter(o=>!!o&&typeof o.url=="string"&&!!o.url&&typeof o.title=="string"&&!!o.title);if(s.length===0)return[];let c=o=>Array.isArray(o.lugs)?o.lugs.filter(i=>typeof i=="number"):[],l=s.filter(o=>c(o).length>0),r=t;if(r==null){let o=l.flatMap(c);r=o.length?Math.min(...o):null}return s.filter(o=>{let i=c(o);return i.length===0?!0:r!=null&&i.includes(r)})}function SI(e,t){let a=Array.isArray(e.lugs)?e.lugs:[];if(a.length===0)return!1;let s=new Set;for(let c of t)for(let l of c.lugs??[])s.add(l);return a.length<s.size}function En(e){return e.manualMode?_e(e.shown.boltPattern).holes:e.vehicle.fit?.holes??null}import{useEffect as D61,useState as O61}from"react";var zv=[{key:"loadIndex",label:"Load index",prompt:"Select a load index",spec:"loadIndex"},{key:"speedRating",label:"Speed rating",prompt:"Select a speed rating",spec:"speedRating"},{key:"tyreType",label:"Type",prompt:"Select a type",spec:"tireType"}];function Vn(e){let t=e.variants??[],a=[];for(let r of t)a.some(o=>o.value===r.size)||a.push({value:r.size,label:r.size});let s={size:a};for(let r of zv){let o=[];for(let i of t){let n=i.specs[r.spec];!n||o.some(h=>h.value===n)||o.push({value:n,label:n})}s[r.key]=o}let c=t.map(r=>({id:r.sku,options:{size:r.size,...Object.fromEntries(zv.map(o=>[o.key,r.specs[o.spec]]).filter(([,o])=>!!o))},inStock:r.inStock,image:r.image??null,components:[{partNumber:r.sku,wheels:1,prices:r.prices}]})),l=[{key:"size",label:"Size",prompt:"Select a size",role:"resolves",display:"pill"},...zv.map(r=>({key:r.key,label:r.label,prompt:r.prompt,role:"describes",display:"pill"}))];return{kind:"tyre",source:e,slug:e.slug,name:e.name,eyebrow:e.brand,badge:"",href:`/tyres/${e.slug}`,crumbs:[{label:"Home",href:"/"},{label:e.name}],cover:e.coverImage??null,inStock:e.inStock,mediaGroups:e.mediaGroups,optionFields:l,optionValues:s,parts:c,anchorPrices:E61(t),anchorMsrpPrices:{}}}function E61(e){let t={};for(let a of e)for(let[s,c]of Object.entries(a.prices??{})){if(typeof c!="number"||!Number.isFinite(c)||c<=0)continue;let l=t[s];(l==null||c<l)&&(t[s]=c)}return t}import{useSyncExternalStore as V61}from"react";var LI="sf-editor-preview-pick",Gt=null,yv=new Set;function wv(){if(Gt)return Gt;Gt={};let e=t3.getItem(LI);if(!e)return Gt;try{let t=JSON.parse(e);if(t&&typeof t=="object"&&!Array.isArray(t))for(let[a,s]of Object.entries(t))typeof s=="string"&&(Gt[a]=s)}catch{}return Gt}function N61(){t3.setItem(LI,JSON.stringify(wv()))}function _61(e,t){return`${e??""}::${t??""}`}function I61(e){return wv()[e]}function AI(e,t){let a=wv();if(a[e]!==t){a[e]=t,N61();for(let s of yv)s()}}function R61(e){return yv.add(e),()=>yv.delete(e)}function HI(e,t){let a=e??t??"";return a.trim()?a:null}function Cv(){return _61(i2(),aL())}function Nn(){let e=Cv();return V61(R61,()=>I61(e),()=>{})}var B61={GBP:0,USD:0,AUD:0},Z61={loadIndex:"00",speedRating:"\u2014",construction:"Radial",treadPattern:"Tread pattern",tireType:"Season"},FI=["205/55 R16","225/45 R17","245/40 R19"],TI={slug:"sample-tyre",name:"Tyre Model",brand:"Brand",designCode:"SAMPLE",description:"",shortDescription:"Tyre description \u2014 replace this with your own copy.",seoTitle:"",seoDescription:"",coverImage:null,inStock:!0,sizes:[...FI],variants:FI.map(e=>({sku:`SAMPLE-${e.replace(/[^0-9]/g,"")}`,size:e,specs:{...Z61},prices:{...B61},image:null,inStock:!0,eprelRegistrationNumber:""})),mediaGroups:{photos:[],lifestyle:[],videos:[],accessories:[],others:[]},compatibleWheels:[],pdpTemplateSlug:null};var PI=null,EI=null,kv=new Map;function G61(e){let t=R3(),a=i2();(t!==PI||a!==EI)&&(PI=t,EI=a,kv.clear());let s=kv.get(e);return s||(s=t?J1.getWheelDetail(t,e,{siteId:a}).catch(()=>null):Promise.resolve(null),kv.set(e,s)),s}function q61(e){return e==="tyre"?Vn(TI):Ks(gv)}var zc=["alloy-wheel"];function W61(e,t){return e?Ks(e):q61(t)}function z3(e){let t=HI(Nn(),rL()),a=nL(),[s,c]=O61(null);return D61(()=>{if(!e||!t||!zc.includes(a)){c(null);return}let l=!1;return G61(t).then(r=>{l||c(r)}),()=>{l=!0}},[e,t,a]),e?W61(s,a):null}import{jsx as h9}from"react/jsx-runtime";var U61=["alloy-wheel"];function NI(e,t){return e.finishes.find(a=>a.name===t)??e.finishes[0]}function j61(e,t){return(NI(e,t)?.features??[]).map(a=>({eyebrow:a.eyebrow,title:a.heading,copy:a.description,tag:a.mark,image:a.image||void 0}))}function K61(e,t,a){let s=MI(NI(e,t),a);return s.map(c=>({title:c.title,copy:c.line||void 0,image:c.url,tag:a!=null&&SI(c,s)?`Shown for your ${a} lug`:void 0,imageShape:"square"}))}function Mv(e){return Ho(!!e.editing)?h9($61,{...e}):h9(z2,{kinds:U61,type:"DetailRows",editing:e.editing,children:h9(Y61,{...e})})}function VI(e){let t=pL(e),a=Lo(e)[0];return!t.length&&!a&&!e.title.trim()?[]:[{title:e.title,specs:t,image:a?.url||void 0}]}function $61({startLeft:e,padTop:t,padBottom:a,editing:s=!1}){let c=To(),l=c?VI(c):s?VI(Fo):[];return l.length===0?null:h9(Ot,{rows:l,startLeft:e,padTop:t,padBottom:a,editing:s})}function Y61({rowsFrom:e,startLeft:t,padTop:a,padBottom:s,editing:c=!1}){let l=$0(),r=z3(c&&!l),o=l?.product??r,i=o?.kind==="alloy-wheel"?o.source:null,n=l?l.selection.shown.finish:void 0,h=l?En(l.selection):null,m=e==="details",u=i?m?K61(i,n,h):j61(i,n):[];return m&&u.length===0?c?h9("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",children:h9("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("No detail shots on this finish yet. Tick a close-up on the design's renderings and give it a title. This section is hidden on the live page until then.")})}):null:h9(Ot,{rows:u,startLeft:t,padTop:a,padBottom:s,editing:c})}import{jsx as _I}from"react/jsx-runtime";var Sv=[{image:"",eyebrow:"Feature eyebrow",title:"Feature *one.*",copy:"Describe this feature in a sentence or two.",tag:"01 \xB7 Detail"},{image:"",eyebrow:"Feature eyebrow",title:"Feature *two.*",copy:"Describe this feature in a sentence or two.",tag:"02 \xB7 Detail"},{image:"",eyebrow:"Feature eyebrow",title:"Feature *three.*",copy:"Describe this feature in a sentence or two.",tag:"03 \xB7 Detail"}],II={label:"Feature Rows",defaultProps:{dynamic:!1,rows:[],startLeft:!1,layout:"even",padTop:100,padBottom:100},render:e=>e.dynamic?_I(Mv,{rowsFrom:e.rowsFrom==="details"?"details":"story",startLeft:e.startLeft,padTop:typeof e.padTop=="number"?e.padTop:100,padBottom:typeof e.padBottom=="number"?e.padBottom:100,editing:e.puck?.isEditing}):_I(Ot,{rows:C1(e.rows,Sv,e.puck),startLeft:e.startLeft,layout:e.layout,padTop:typeof e.padTop=="number"?e.padTop:100,padBottom:typeof e.padBottom=="number"?e.padBottom:100,editing:e.puck?.isEditing})};import{jsx as yc}from"react/jsx-runtime";var BI={fields:{_sDynamic:Y1("Product page"),dynamic:l1("Connect to product data",!1,yc(X61,{})),rowsFrom:v1("Rows from",yc(J61,{}),[{label:"Product story",value:"story"},{label:"Detail shots",value:"details"}],"story"),_sRows:Y1("Rows"),rows:$9({type:"array",label:"Rows",arrayFields:{image:q1("Image","image/*"),imageShape:v1("Image shape",yc(RI,{}),[{label:"Square",value:"square"},{label:"Wide",value:"wide"}],"square"),eyebrow:q("Eyebrow"),title:f1("Title"),copy:E1("Body"),specs:{type:"array",label:"Specs",arrayFields:{label:q("Label","Offset"),value:q("Value","ET -10")},defaultItemProps:{label:"",value:""},getItemSummary:(e,t)=>e?.label||`Spec ${(t??0)+1}`,max:8},tag:q("Image tag")},defaultItemProps:{image:"",imageShape:"square",eyebrow:"",title:"",copy:"",specs:[],tag:""},getItemSummary:(e,t)=>e?.title||e?.eyebrow||`Row ${(t??0)+1}`},Sv),_dDesign:Y1("Design"),layout:v1("Row shape",yc(RI,{}),[{label:"Even columns",value:"even"},{label:"Narrow image",value:"narrow"}],"even"),startLeft:l1("First image on the left",!1,yc(Q61,{})),_dLayout:Y1("Layout"),...u3("DetailRows")},resolveFields:(e,t)=>{let{fields:a}=t,s=r=>{if(e.props.layout==="narrow")return r;let o=r,i=o.rows;if(!i?.arrayFields)return r;let{imageShape:n,...h}=i.arrayFields;return{...o,rows:{...i,arrayFields:h}}};if(!M2()){let r={...s(a)};return delete r._sDynamic,delete r.dynamic,delete r.rowsFrom,r}if(!e.props.dynamic){let{rowsFrom:r,...o}=s(a);return o}let c=new Set(Ao(t)?["_sRows","rows","rowsFrom"]:["_sRows","rows"]),l={};for(let[r,o]of Object.entries(a))c.has(r)||(l[r]=o);return l}};var ZI={fields:{_gHeader:x("Header"),num:T("Number",U0.num)}};import{SquareIcon as r71}from"efficient-easel/icons";import{useEffect as t71,useMemo as a71,useRef as s71}from"react";var Lv="/shop";function DI({shopperPicked:e,fullyPicked:t,editing:a,pathname:s}){return a||!e||!t?!1:!e71(s)}function e71(e){return(e.split("?")[0]??"").replace(/\/+$/,"")===Lv}function OI(e){let a=D5(new URLSearchParams,e).toString();return a?`${Lv}?${a}`:Lv}import{jsx as j5,jsxs as Av}from"react/jsx-runtime";function Hv({loading:e,error:t,data:a}){return e?j5("div",{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:"Loading stock fitment\u2026"}):t?Av("div",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em] text-fg-dim",children:["Couldn't load stock fitment \u2014 ",j5("span",{className:"text-accent",children:t})]}):a?Av("div",{className:"mt-9 grid grid-cols-6 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:[j5(qt,{label:"Bolt pattern",value:a.boltPattern??"\u2014"}),j5(qt,{label:"PCD",value:a.pcd??"\u2014"}),j5(qt,{label:"Hub bore",value:a.centreBore?`${a.centreBore} mm`:"\u2014"}),j5(qt,{label:"ET range",value:a.etRange&&a.etRange.length===2?`${a.etRange[0]} \u2013 ${a.etRange[1]}`:"\u2014"}),j5(qt,{label:"OEM front",value:a.frontWheels.length?a.frontWheels.join(" \xB7 "):"\u2014"}),j5(qt,{label:"OEM rear",value:a.rearWheels.length?a.rearWheels.join(" \xB7 "):"\u2014"})]}):null}function qt({label:e,value:t}){return Av("div",{className:"flex min-h-[96px] flex-col gap-1.5 bg-bg px-[18px] py-5",children:[j5("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.26em] text-fg-dim",children:e}),j5("span",{className:"mt-auto font-display text-[length:var(--size-body,17px)] font-medium tracking-[-0.01em] text-fg",children:t})]})}import{Fragment as GI,jsx as o5,jsxs as m9}from"react/jsx-runtime";function c71(e,t,a){if(!a)return e;let[s,c=""]=e.split("?"),r=D5(new URLSearchParams(c),t).toString();return r?`${s}?${r}`:s}function Fv({num:e,title:t,description:a,ctaText:s,ctaHref:c,layout:l="full",omitHead:r=!1,initialMakes:o=[],editing:i=!1,...n}){let{cascade:h}=I4({initialMakes:o,editing:i,autoApply:!0}),m=l==="bar",u=s71(!1),d=a71(()=>{if(!m)return h;let f=w=>(...z)=>{u.current=!0,w(...z)};return{...h,setMake:f(h.setMake),setModel:f(h.setModel),setYear:f(h.setYear),setModification:f(h.setModification)}},[m,h]);t71(()=>{m&&(typeof window>"u"||DI({shopperPicked:u.current,fullyPicked:h.fullyPicked,editing:i,pathname:window.location.pathname})&&window.location.assign(OI(h.vehicle)))},[m,h.fullyPicked,h.vehicle,i]);let v=!r&&!m&&!!(e||t||a),g=!m&&s&&c?{text:s,href:c}:null,b=g?c71(g.href,h.vehicle,h.fullyPicked):null;return m9("section",{className:[E0(n)?"px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",m?r?"pt-0 pb-[30px] max-[1100px]:pb-5":"py-[30px] max-[1100px]:py-5":r?"pt-0 pb-20 max-[1100px]:pb-[60px]":"py-20 max-[1100px]:py-[60px]"].join(" "),children:[v&&o5(s0,{num:e,title:t,description:a,accent:!0}),m?m9("div",{className:"flex flex-wrap items-center gap-[18px]",children:[!r&&t?.trim()&&o5("p",{className:"font-heading3 text-[length:var(--size-headingSmall,30px)] [font-weight:var(--sf-heading-weight-strong,600)] leading-none tracking-[-0.02em] whitespace-nowrap",children:e0(t)}),o5("div",{className:"min-w-[320px] flex-1 basis-0",children:o5(X3,{cascade:d,compact:!0,editing:i})})]}):o5(X3,{cascade:h,editing:i}),!m&&o5(Hv,{loading:h.loading.stock,error:h.cascadeError,data:h.fullyPicked?h.stock:null}),!m&&m9("div",{className:"mt-9 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-8",children:[o5("p",{className:"max-w-[680px] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:h.fullyPicked?m9(GI,{children:["Your car \xB7"," ",m9("strong",{className:"font-display [font-weight:var(--sf-heading-weight-strong,500)] not-italic text-fg",children:[h.vehicle.year," ",h.makeName," ",h.modelName," ",h.modName]}),h.stock&&o5("span",{className:"ml-3 not-italic text-accent",children:"OEM fitment loaded."})]}):m9(GI,{children:["Tell us four things \u2014 ",o5("em",{className:"not-italic text-accent",children:"make, model, year, trim"})," \u2014 and we'll show the OEM stock fitment for your car."]})}),g&&b&&m9(L1,{href:b,className:"group inline-flex items-center gap-3.5 border border-btn bg-btn px-[30px] py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:border-fg hover:bg-fg",children:[g.text,o5("span",{className:"transition-transform group-hover:translate-x-[4px]",children:"\u2192"})]})]}),i&&h.makeOptions.length===0&&!h.loading.models&&o5("p",{className:"mt-4 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim",children:p("Vehicle catalog unavailable in this preview \u2014 the picker fills from the live fitment API on the published site.")})]})}import{jsx as l71}from"react/jsx-runtime";var N6={num:A.sectionNumber,title:"Find your *match.*",description:"A few quick picks and we show the right option for you.",ctaText:"Browse all products"},qI={label:"Fitment Form",defaultProps:{num:"",title:"",description:"",ctaText:"",ctaHref:"",layout:"full"},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return l71(Fv,{num:a(y(e.num,N6.num,e.puck)),title:a(y(e.title,N6.title,e.puck)),description:a(y(e.description,N6.description,e.puck)),omitHead:t,ctaText:y(e.ctaText,N6.ctaText,e.puck),ctaHref:a1(e.ctaHref)||"#",layout:e.layout,editing:e.puck?.isEditing})}};import{jsx as o71}from"react/jsx-runtime";var WI={fields:{_gHeader:x("Header"),num:T("Number",N6.num),title:T("Heading",N6.title),description:O("Body",N6.description),_gCta:x("Call to action"),ctaText:T("Button",N6.ctaText),ctaHref:H1("Button link"),_gStyle:x("Style"),layout:v1("Section shape",o71(r71,{}),[{label:"Stacked",value:"full"},{label:"One row",value:"bar"}],"full")},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props??{},c={...t};return s.layout==="bar"&&(delete c._gCta,delete c.ctaText,delete c.ctaHref),c=G1(W1(c,a,U1),s.headPlacement,Z1.FitmentFinder.headRows),c}};var L=(e,t,a,s,c,l,r,o,i)=>({diameter:e,width:t,holes:a,pcd:s,et:c,cb:l,cap:r,boltPattern:o,loadRating:i}),j2="CP509PS73",K2="32x15x60\xB0",$2="880kg / 1,940 lbs",j7="CP506AL82",K7="34x16x60\xB0",$7="915kg / 2,000 lbs",J="CP506AL68",X="32x15x60\xB0",p1="690kg / 1,520 lbs",T0="880kg / 1,940 lbs",i71="34x15x60\xB0",n71="1,060kg / 2,335 lbs",Y7="CP507PS68",X7="825kg / 1,820 lbs",o1="CP595AL68",h1="32x15x60\xB0",m1="690kg / 1,520 lbs",Tv="34x15x60\xB0",Pv="1,060kg / 2,335 lbs",K5="CP506AL82",$5="34x16x60\xB0",Y5="880kg / 1,940 lbs",h71={rotor:[L(20,8.5,5,"112",35,73.1,j2,K2,$2),L(20,8.5,5,"114.3",35,73.1,j2,K2,$2),L(20,8.5,5,"120",35,72.6,j2,K2,$2),L(20,8.5,5,"127",20,71.5,j2,K2,$2),L(20,10,5,"112",40,73.1,j2,K2,$2),L(20,10,5,"114.3",40,73.1,j2,K2,$2),L(20,10,5,"120",40,72.6,j2,K2,$2),L(20,10,5,"127",20,71.5,j2,K2,$2),L(22,9,5,"112",35,73.1,j2,K2,$2),L(22,9,5,"114.3",35,73.1,j2,K2,$2),L(22,9,5,"115",15,71.5,j2,K2,$2),L(22,9,5,"120",35,72.6,j2,K2,$2),L(22,9,5,"127",20,71.5,j2,K2,$2),L(22,10.5,5,"112",40,73.1,j2,K2,$2),L(22,10.5,5,"114.3",40,73.1,j2,K2,$2),L(22,10.5,5,"115",20,71.5,j2,K2,$2),L(22,10.5,5,"120",40,72.6,j2,K2,$2),L(22,10.5,5,"127",20,71.5,j2,K2,$2)],"frixion-6":[L(20,9,6,"135",20,87.1,j7,K7,$7),L(20,9,6,"139.7",20,87.1,j7,K7,$7),L(22,9.5,6,"135",25,87.1,j7,K7,$7),L(22,9.5,6,"139.7",25,87.1,j7,K7,$7),L(22,9.5,6,"135",20,87.1,j7,K7,$7),L(22,9.5,6,"139.7",20,87.1,j7,K7,$7),L(24,10,6,"135",25,87.1,j7,K7,$7),L(24,10,6,"139.7",25,87.1,j7,K7,$7)],"frixion-5":[L(18,8,5,"108",42,73.1,J,X,p1),L(18,8,5,"112",42,73.1,J,X,p1),L(18,8,5,"114.3",42,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",42,73.1,J,X,p1),L(19,8.5,5,"114.3",42,73.1,J,X,p1),L(19,8.5,5,"112",35,73.1,J,X,p1),L(19,8.5,5,"114.3",35,73.1,J,X,p1),L(19,8.5,5,"120",35,73.1,J,X,p1),L(19,8.5,5,"120",35,72.6,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"112",40,73.1,J,X,p1),L(19,9.5,5,"114.3",40,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"120",42,72.6,J,X,p1),L(20,8.5,5,"120",35,72.6,J,X,p1),L(20,8.5,5,"120",33,72.6,J,X,p1),L(20,10,5,"112",40,73.1,J,X,p1),L(20,10,5,"114.3",40,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1)],"vector-ii":[L(19,8.5,5,"112",38,73.1,J,X,T0),L(19,8.5,5,"114.3",38,73.1,J,X,T0),L(19,8.5,5,"112",45,73.1,J,X,T0),L(19,8.5,5,"114.3",45,73.1,J,X,T0),L(19,8.5,5,"120",38,72.6,J,X,T0),L(19,9.5,5,"112",42,73.1,J,X,T0),L(19,9.5,5,"114.3",42,73.1,J,X,T0),L(19,9.5,5,"120",42,72.6,J,X,T0),L(20,8.5,5,"112",38,73.1,J,X,T0),L(20,8.5,5,"114.3",38,73.1,J,X,T0),L(20,8.5,5,"120",38,72.6,J,X,T0),L(20,10,5,"112",40,73.1,J,X,T0),L(20,10,5,"114.3",40,73.1,J,X,T0),L(20,10,5,"120",40,72.6,J,X,T0)],"turbine-ii":[L(20,8.5,5,"112",38,73.1,J,X,T0),L(20,8.5,5,"114.3",38,73.1,J,X,T0),L(20,8.5,5,"112",35,73.1,J,X,T0),L(20,8.5,5,"114.3",35,73.1,J,X,T0),L(20,8.5,5,"112",30,73.1,J,X,T0),L(20,8.5,5,"114.3",30,73.1,J,X,T0),L(20,8.5,5,"112",25,73.1,J,X,T0),L(20,8.5,5,"114.3",25,73.1,J,X,T0),L(20,8.5,5,"120",32,72.6,J,X,T0),L(20,8.5,5,"120",35,72.6,J,X,T0),L(20,10,5,"112",40,73.1,J,X,T0),L(20,10,5,"114.3",40,73.1,J,X,T0),L(20,10,5,"112",30,73.1,J,X,T0),L(20,10,5,"114.3",30,73.1,J,X,T0),L(20,10,5,"120",38,72.6,J,X,T0),L(20,10,5,"120",37,72.6,J,X,T0),L(22,10.5,5,"127",35,71.5,J,i71,n71)],torque:[L(18,8,5,"108",42,73.1,J,X,p1),L(18,8,5,"112",42,73.1,J,X,p1),L(18,8,5,"114.3",42,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",42,73.1,J,X,p1),L(19,8.5,5,"114.3",42,73.1,J,X,p1),L(19,8.5,5,"120",38,72.6,J,X,p1),L(19,9.5,5,"112",35,73.1,J,X,p1),L(19,9.5,5,"114.3",35,73.1,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"120",40,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"120",32,72.6,J,X,p1),L(20,8.5,5,"120",35,72.6,J,X,p1),L(20,10,5,"112",40,73.1,J,X,p1),L(20,10,5,"114.3",40,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1)],blitz:[L(18,8,5,"108",40,73.1,J,X,p1),L(18,8,5,"112-114.3",40,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(18,8,5,"120",38,72.6,J,X,p1),L(19,8.5,5,"112-114.3",32,73.1,J,X,p1),L(19,8.5,5,"112-114.3",40,73.1,J,X,p1),L(19,8.5,5,"112-114.3",38,73.1,J,X,p1),L(19,8.5,5,"114.3",35,73.1,J,X,p1),L(19,8.5,5,"120",33,72.6,J,X,p1),L(19,9.5,5,"112-114.3",38,73.1,J,X,p1),L(19,9.5,5,"114.3",40,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112-114.3",32,73.1,J,X,p1),L(20,8.5,5,"112-114.3",38,73.1,J,X,p1),L(20,8.5,5,"120",32,72.6,J,X,p1),L(20,10,5,"112-114.3",40,73.1,J,X,p1),L(20,10,5,"112-114.3",38,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1),L(20,10,5,"120",38,72.6,J,X,p1)],"speed-ii":[L(18,8,5,"108",40,73.1,J,X,p1),L(18,8,5,"112",40,73.1,J,X,p1),L(18,8,5,"114.3",40,73.1,J,X,p1),L(18,8,5,"120",38,72.6,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",40,73.1,J,X,p1),L(19,8.5,5,"114.3",40,73.1,J,X,p1),L(19,8.5,5,"112",32,73.1,J,X,p1),L(19,8.5,5,"114.3",32,73.1,J,X,p1),L(19,8.5,5,"120",33,72.6,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"112",32,73.1,J,X,p1),L(20,8.5,5,"114.3",32,73.1,J,X,p1),L(20,8.5,5,"120",33,72.6,J,X,p1),L(20,10,5,"112",38,73.1,J,X,p1),L(20,10,5,"114.3",38,73.1,J,X,p1),L(20,10,5,"120",38,72.6,J,X,p1)],"force-6":[L(20,9,6,"135",20,87.1,K5,$5,Y5),L(20,9,6,"135",25,87.1,K5,$5,Y5),L(20,9,6,"135",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",25,87.1,K5,$5,Y5),L(22,9.5,6,"135",20,87.1,K5,$5,Y5),L(22,9.5,6,"139.7",20,87.1,K5,$5,Y5),L(24,10,6,"135",25,87.1,K5,$5,Y5),L(24,10,6,"139.7",25,87.1,K5,$5,Y5)],"haste-ii":[L(20,8.5,5,"112",27,73.1,Y7,X,X7),L(20,8.5,5,"114.3",27,73.1,Y7,X,X7),L(20,8.5,5,"112",34,73.1,Y7,X,X7),L(20,8.5,5,"114.3",34,73.1,Y7,X,X7),L(20,8.5,5,"120",32,72.6,Y7,X,X7),L(20,10,5,"112",38,73.1,Y7,X,X7),L(20,10,5,"114.3",38,73.1,Y7,X,X7),L(20,10,5,"120",37,72.6,Y7,X,X7)],"thrust-ii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)],"vector-iii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)],"blitz-ii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)]};function Wt(e){return h71[e]??[]}var _1={hyperBlack:"#1a1a1c",blackSatin:"#0d0d0d",blackMachined:"#2a2a2a",silverSatin:"#a8a8a8",silverMachined:"#b5b5b5",bronze:"#7a5a3a",anthracite:"#3a3a3a",candyRed:"#9a1f1f",gunmetal:"#4a4d52"},B="/media/images/products",Ev="/media/videos/products",UI=["0","20-20","25","35"],jI=["Detail 1","Detail 2","Detail 3"];function Z0(e,t,a,s=!0){let c=`${B}/${e}/${a}${t}`,l=UI.map(r=>`${c}${r}.png`);return{src:l[0],angles:l,...s?{details:jI.map(r=>`${c}${r}.png`)}:{}}}function X5(e,t,a,s){let c=UI.map((r,o)=>`${B}/${e}/${t}.${r}.${a[o]}.png`),l={src:c[0],angles:c};return s&&(l.details=jI.map((r,o)=>`${B}/${e}/${t}.${r}.${s[o]}.png`)),l}var m71=[{name:"HASTE II",slug:"haste-ii",process:"FusionForge\xAE",sizes:[18,19,20],price:1450,spokes:5,mesh:!1,badge:"bestseller",finishes:[{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...Z0("Haste II",".","Haste II.Ssl"),wheelPhotos:Array.from({length:9},(e,t)=>`${B}/Haste II/haste II Ssl wheel (${t+1}).jpg`)},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("Haste II",".","Haste II.Ksl"),carPhotos:[...[5,6,7,8,9].map(e=>`${B}/Haste II/HasteII ksl 2024 BMW(G83)M4 Competition Convertible (${e}).jpg`),...[1,2,5,6,9].map(e=>`${B}/Haste II/HasteII ksl car 2020 Chevrolet Camaro ZL1 (${e}).jpg`)]}]},{name:"FORCE 6",slug:"force-6",process:"FusionForge\xAE",sizes:[19,20,21],price:2950,spokes:6,mesh:!1,badge:null,finishes:[{name:"Silver Machined Carbon Satin Lacquer",color:_1.silverMachined,family:"silver",...Z0("force 6",".","Froce6.Smfcbtm")},{name:"Black Machined Carbon Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("force 6",".","Froce6.Kmfcbtdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("force 6",".","Froce6.Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("force 6",".","Froce6.R")}]},{name:"SPEED II",slug:"speed-ii",process:"FusionForge\xAE",sizes:[18,19,20],price:3400,spokes:5,mesh:!1,badge:"new",finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("speed_II",".","Speed II.Smftm")},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("speed_II",".","Speed II.Kmftdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("speed_II",".","Speed II.Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("speed_II",".","Speed II.R")}]},{name:"VORTEX II",slug:"vortex-ii",process:"FusionForge\xAE",sizes:[19,20],price:3200,spokes:5,mesh:!0,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("Vortex II","-","Vortex II-SMFTM")},{name:"Black Machined Face Satin Lacquer Dark Tint",color:_1.blackMachined,family:"black",...Z0("Vortex II","-","Vortex II-KMFTMTD")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("Vortex II","-","Vortex II-KTM")}]},{name:"VECTOR III",slug:"vector-iii",process:"Precision Forged",sizes:[18,19,20,21],price:4200,spokes:7,mesh:!1,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",...Z0("vector_III","-","Vector III-H")},{name:"Anthracite",color:_1.anthracite,family:"graphite",...Z0("vector_III","-","Vector III-ATM")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("vector_III","-","Vector III-KTM")},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...Z0("vector_III","-","Vector III-STM")},{name:"Bronze",color:_1.bronze,family:"bronze",...Z0("vector_III","-","Vector III- N")}]},{name:"BLITZ II",slug:"blitz-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4400,spokes:8,mesh:!0,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/blitz_II/Blitz II.H.0.752 (3).png`,angles:[`${B}/blitz_II/Blitz II.H.0.752 (3).png`,`${B}/blitz_II/Blitz II.H.20-20752 (4).png`,`${B}/blitz_II/Blitz II.H.25.752 (2).png`,`${B}/blitz_II/Blitz II.H.35.752 (1).png`],details:[`${B}/blitz_II/Blitz II.H.Detail 1.1923.png`,`${B}/blitz_II/Blitz II.H.Detail 2.1916.png`,`${B}/blitz_II/Blitz II.H.Detail FusionForge.1930.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/blitz_II/Blitz II.A.0.756 (3).png`,angles:[`${B}/blitz_II/Blitz II.A.0.756 (3).png`,`${B}/blitz_II/Blitz II.A.20-20.756 (4).png`,`${B}/blitz_II/Blitz II.A.25.756 (2).png`,`${B}/blitz_II/Blitz II.A.35.756 (1).png`],details:[`${B}/blitz_II/Blitz II.A.Detail 1.1924.png`,`${B}/blitz_II/Blitz II.A.Detail 2.1917.png`,`${B}/blitz_II/Blitz II.A.Detail FusionForge.1931.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/blitz_II/Blitz II.Ktm.0.760 (3).png`,angles:[`${B}/blitz_II/Blitz II.Ktm.0.760 (3).png`,`${B}/blitz_II/Blitz II.Ktm.20-20760 (4).png`,`${B}/blitz_II/Blitz II.Ktm.25.760 (2).png`,`${B}/blitz_II/Blitz II.Ktm.35.760 (1).png`],details:[`${B}/blitz_II/Blitz II.K TM.Detail 1.1925.png`,`${B}/blitz_II/Blitz II.K TM.Detail 2.1918.png`,`${B}/blitz_II/Blitz II.K TM.Detail FusionForge.1932.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/blitz_II/Blitz II.Stm.0.748 (3).png`,angles:[`${B}/blitz_II/Blitz II.Stm.0.748 (3).png`,`${B}/blitz_II/Blitz II.Stm 20-20.748 (4).png`,`${B}/blitz_II/Blitz II.Stm.25.748 (2).png`,`${B}/blitz_II/Blitz II.Stm.35.748 (1).png`],details:[`${B}/blitz_II/Blitz II.S TM.Detail 1.1922.png`,`${B}/blitz_II/Blitz II.S TM.Detail 2.1915.png`,`${B}/blitz_II/Blitz II.S TM.Detail FusionForge.1929.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/blitz_II/Blitz II.n.0.764 (3).png`,angles:[`${B}/blitz_II/Blitz II.n.0.764 (3).png`,`${B}/blitz_II/Blitz II.n.20-20.764 (4).png`,`${B}/blitz_II/Blitz II.n.25.764 (2).png`,`${B}/blitz_II/Blitz II.n.35.764 (1).png`],details:[`${B}/blitz_II/Blitz II.N.Detail 1.1926.png`,`${B}/blitz_II/Blitz II.N.Detail 2.1919.png`,`${B}/blitz_II/Blitz II.N.Detail FusionForge.1933.png`]}]},{name:"THRUST II",slug:"thrust-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4500,spokes:7,mesh:!1,badge:"bestseller",finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/thrust_II/Thrust II v2 2010 H.0.719.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 H.0.719.png`,`${B}/thrust_II/Thrust II v2 2010 H.30.720.png`,`${B}/thrust_II/Thrust II v2 2010 H.30-30.722.png`,`${B}/thrust_II/Thrust II v2 2010 H.45.721.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 H-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 H-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 H.30-30.722.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/thrust_II/Thrust II v2 2010 A.0.735.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 A.0.735.png`,`${B}/thrust_II/Thrust II v2 2010 A.30.736.png`,`${B}/thrust_II/Thrust II v2 2010 A.30-30.738.png`,`${B}/thrust_II/Thrust II v2 2010 A.45.737.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 A-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 A-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 A.30-30.738.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/thrust_II/Thrust II v2 2010 K.0.730.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 K.0.730.png`,`${B}/thrust_II/Thrust II v2 2010 K.30.731.png`,`${B}/thrust_II/Thrust II v2 2010 K.30-30.733.png`,`${B}/thrust_II/Thrust II v2 2010 K.45.732.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 K-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 K-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 K.30-30.733.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/thrust_II/Thrust II v2 2010 S.0.725.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 S.0.725.png`,`${B}/thrust_II/Thrust II v2 2010 S.30.726.png`,`${B}/thrust_II/Thrust II v2 2010 S.30-30.728.png`,`${B}/thrust_II/Thrust II v2 2010 S.45.727.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 S-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 S-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 S.30-30.728.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/thrust_II/Thrust II v2 2010 N.0.740.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 N.0.740.png`,`${B}/thrust_II/Thrust II v2 2010 N.30.741.png`,`${B}/thrust_II/Thrust II v2 2010 N.30-30.743.png`,`${B}/thrust_II/Thrust II v2 2010 N.45.742.png`]}]},{name:"TORQUE II",slug:"torque-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4300,spokes:7,mesh:!1,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/torque_II/Torque II-H-0-2195.png`,angles:[`${B}/torque_II/Torque II-H-0-2195.png`,`${B}/torque_II/Torque II-H-20-20-2198.png`,`${B}/torque_II/Torque II-H-25-2196.png`,`${B}/torque_II/Torque II-H-35-2197.png`],details:[`${B}/torque_II/Torque II-H-Detail 1-2199.png`,`${B}/torque_II/Torque II-H-Detail 2-2200.png`,`${B}/torque_II/Torque II-H-Detail 3-2201.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/torque_II/Torque II-A-0-2174.png`,angles:[`${B}/torque_II/Torque II-A-0-2174.png`,`${B}/torque_II/Torque II-A-20-20-2177.png`,`${B}/torque_II/Torque II-A-25-2175.png`,`${B}/torque_II/Torque II-A-35-2176.png`],details:[`${B}/torque_II/Torque II-A-Detail 1-2178.png`,`${B}/torque_II/Torque II-A-Detail 2-2179.png`,`${B}/torque_II/Torque II-A-Detail 3-2180.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/torque_II/Torque II-Ktm-0-2202.png`,angles:[`${B}/torque_II/Torque II-Ktm-0-2202.png`,`${B}/torque_II/Torque II-Ktm-20-20-2205.png`,`${B}/torque_II/Torque II-Ktm-25-2203.png`,`${B}/torque_II/Torque II-Ktm-35-2204.png`],details:[`${B}/torque_II/Torque II-Ktm-Detail 1-2206.png`,`${B}/torque_II/Torque II-Ktm-Detail 2-2207.png`,`${B}/torque_II/Torque II-Ktm-Detail 3-2208.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/torque_II/Torque II-S-0-2181.png`,angles:[`${B}/torque_II/Torque II-S-0-2181.png`,`${B}/torque_II/Torque II-S-20-20-2184.png`,`${B}/torque_II/Torque II-S-25-2182.png`,`${B}/torque_II/Torque II-S-35-2183.png`],details:[`${B}/torque_II/Torque II-S-Detail 1-2185.png`,`${B}/torque_II/Torque II-S-Detail 2-2186.png`,`${B}/torque_II/Torque II-S-Detail 3-2187.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/torque_II/Torque II-N-0-2188.png`,angles:[`${B}/torque_II/Torque II-N-0-2188.png`,`${B}/torque_II/Torque II-N-20-20-2191.png`,`${B}/torque_II/Torque II-N-25-2189.png`,`${B}/torque_II/Torque II-N-35-2190.png`],details:[`${B}/torque_II/Torque II-N-Detail 1-2192.png`,`${B}/torque_II/Torque II-N-Detail 2-2193.png`,`${B}/torque_II/Torque II-N-Detail 3-2194.png`]}]},{name:"TURBINE II",slug:"turbine-ii",process:"Monoblock Cast",sizes:[19,20,21],price:1650,spokes:9,mesh:!0,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",src:`${B}/turbine II/Turbine II L S MF TM.0.png`,angles:[`${B}/turbine II/Turbine II L S MF TM.0.png`,`${B}/turbine II/Turbine II L S MF TM.25.png`,`${B}/turbine II/Turbine II L S MF TM.35.png`,`${B}/turbine II/Turbine II L S MF TM.45.png`],details:[`${B}/turbine II/Turbine II L S MF TM.Detail 1.png`,`${B}/turbine II/Turbine II.L S MF TM.Detail 2.2239.png`,`${B}/turbine II/Turbine II L S MF TM.Detail 3.png`]},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",src:`${B}/turbine II/Turbine II L K MF TD TM.0.png`,angles:[`${B}/turbine II/Turbine II L K MF TD TM.0.png`,`${B}/turbine II/Turbine II L K MF TD TM.25.png`,`${B}/turbine II/Turbine II L K MF TD TM.35.png`,`${B}/turbine II/Turbine II L K MF TD TM.45.png`],details:[`${B}/turbine II/Turbine II L K MF TD TM.Detail 1.png`,`${B}/turbine II/Turbine II L K MF TD TM.LR Detail 2.png`,`${B}/turbine II/Turbine II L K MF TD TM.Detail 3.png`]}]},{name:"BLITZ",slug:"blitz",process:"Monoblock Cast",sizes:[18,19,20],price:1380,spokes:8,mesh:!0,badge:null,finishes:[{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...X5("blitz","Blitz.Stm",["2167","2170","2168","2169"],["2171","2172","2173"]),wheelPhotos:Array.from({length:8},(e,t)=>`${B}/blitz/Blitz stm wheel(${t+19}).jpg`),video:`${Ev}/blitz/Blitz stm wheel.mp4`},{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("blitz","Blitz.Smftm",["2160","2163","2161","2162"],["2164","2165","2166"])},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...X5("blitz","Blitz.Ktm",["2146","2149","2147","2148"],["2150","2151","2152"]),wheelPhotos:Array.from({length:8},(e,t)=>`${B}/blitz/Blitz ktm wheel (${t+1}).jpg`),carPhotos:Array.from({length:6},(e,t)=>`${B}/blitz/Blitz ktm Car AUDI 03-03 (${t+1}).png`),video:`${Ev}/blitz/Blitz ktm wheel.mp4`},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...X5("blitz","Blitz.Kmftdtm",["2139","2142","2140","2141"],["2143","2144","2145"]),carPhotos:[5,7,8,9,10].map(e=>`${B}/blitz/Blitz kmftdtm Car 2018 Mercedes-AMG GT R (${e}).jpg`)},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("blitz","Blitz.Rmftr",["2153","2156","2154","2155"],["2157","2158","2159"])}]},{name:"FRIXION 5",slug:"frixion-5",process:"Monoblock Cast",sizes:[18,19,20],price:1320,spokes:5,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("frixion 5","Frixion5 S MF",["1969","1972","1970","1971"]),details:[`${B}/frixion 5/Frixion5.Smf.Detail 1.2108.png`,`${B}/frixion 5/Frixion5.Smf.Detail 2.2109.png`,`${B}/frixion 5/Frixion5.Smf.Detail 3.2110.png`],wheelPhotos:Array.from({length:11},(e,t)=>`${B}/frixion 5/Frixion 5 Smf wheel (${t+1}).jpg`),carPhotos:[4,5,6,7].map(e=>`${B}/frixion 5/Frixion5 smftm car 2019 Jaguar XE SV Project 8 (${e}).jpg`),video:`${Ev}/frixion 5/frixion 5 kmftdtm smftm .mp4`},{name:"Black Machined Face",color:_1.blackMachined,family:"black",...X5("frixion 5","Frixion5 K TM",["1995","1998","1996","1997"]),details:[`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 1.1999.png`,`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 2.2000.png`,`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 3.2001.png`],wheelPhotos:[`${B}/frixion 5/Frixion 5 kmftdtm wheel (2).jpg`,`${B}/frixion 5/Frixion 5 kmftdtm wheel (3).jpg`]},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("frixion 5","Frixion5 R ",["1973","1976","1974","1975"]),details:[`${B}/frixion 5/Frixion5 R .Detail 1.1960.png`,`${B}/frixion 5/Frixion5 R .Detail 2.1961.png`,`${B}/frixion 5/Frixion5 R .Detail 3.1962.png`],carPhotos:[5,6,7,8,9].map(e=>`${B}/frixion 5/Frixion5 R car 2021 Ferrari Roma (${e}).jpg`)}]},{name:"FRIXION 6",slug:"frixion-6",process:"Monoblock Cast",sizes:[18,19,20,22],price:1380,spokes:6,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("frixion 6","Frixion6 S MF TM",["2044","2047","2045","2046"]),details:[`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 1.2048.png`,`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 2.2049.png`,`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 3.2050.png`]},{name:"Black Machined Face Dark Tint",color:_1.blackMachined,family:"black",src:`${B}/frixion 6/Frixion6 K MF TD.0.2030.png`,angles:[`${B}/frixion 6/Frixion6 K MF TD.0.2030.png`,`${B}/frixion 6/Frixion6 K MF TD.20-20.2033.png`,`${B}/frixion 6/Frixion6 K MF TD.25.png`,`${B}/frixion 6/Frixion6 K MF TD.35.2032.png`],details:[`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 1.2034.png`,`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 2.2035.png`,`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 3.2036.png`]},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("frixion 6","Frixion6 R MF TR",["2037","2040","2038","2039"]),details:[`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 1.2041.png`,`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 2.2042.png`,`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 3.2043.png`]}]},{name:"ROTOR",slug:"rotor",process:"Monoblock Cast",sizes:[18,19,20,22],price:1450,spokes:5,mesh:!1,badge:"bestseller",finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("rotor",".","Rotor.Smftm")},{name:"Black Machined Face Dark Tint",color:_1.blackMachined,family:"black",...Z0("rotor",".","Rotor.Kmftdtm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("rotor",".","Rotor.Rmftr")}]},{name:"VECTOR II",slug:"vector-ii",process:"Monoblock Cast",sizes:[18,19,20],price:1420,spokes:7,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("vector II","-","Vector II-Smftm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("vector II","-","Vector II-Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("vector II","-","Vector II-Rmftr")}]},{name:"TORQUE",slug:"torque",process:"Monoblock Cast",sizes:[18,19,20],price:1390,spokes:7,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("torque","-","Torque-Smftm")},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("torque","-","Torque-Kmftdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("torque","-","Torque-Ktm")},{name:"Anthracite",color:_1.anthracite,family:"graphite",...Z0("torque","-","Torque-A")}]}];function p71(e){return{GBP:e,USD:Math.round(e*1.28/10)*10,AUD:Math.round(e*1.92/10)*10}}var u71={"haste-ii":"A featherweight FusionForge\xAE 5-spoke built for the road \u2014 the HASTE II is our bestselling all-rounder, precise under load and unmistakable at the kerb.","force-6":"Six clean FusionForge\xAE spokes carry the FORCE 6: a wide, planted stance engineered for big-brake clearance and effortless high-speed composure.","speed-ii":"New for the season, the SPEED II sharpens the FusionForge\xAE silhouette into a taut, motorsport-inspired 5-spoke tuned for lightness and response.","vortex-ii":"The VORTEX II wraps a FusionForge\xAE core in a split-mesh face \u2014 aggressive brake cooling and a deep, dimensional look that shifts with the light.","vector-iii":"Elevate your drive with the VECTOR III: a fully forged, race-inspired open 7-spoke that aids brake cooling and cuts unsprung mass \u2014 a commitment to performance and handling.","blitz-ii":"The BLITZ II fans eight Precision Forged spokes into a fine mesh \u2014 track-bred cooling and a technical face that reads fast even at a standstill.","thrust-ii":"Our Precision Forged bestseller, the THRUST II balances a rigid 7-spoke structure with real weight savings for confident turn-in and long-haul comfort.","torque-ii":"The TORQUE II is Precision Forged for strength where it counts \u2014 a muscular 7-spoke that stays composed under power without the weight penalty.","turbine-ii":"Nine turbine-like spokes give the Monoblock Cast TURBINE II its motion \u2014 an accessible, durable wheel with a mesh face that never sits still.",blitz:"The original BLITZ: a Monoblock Cast 8-spoke mesh that brings a technical, layered look to everyday miles at a keen price.","frixion-5":"Clean, honest and Monoblock Cast \u2014 the FRIXION 5's simple 5-spoke face suits daily driving and takes finishes beautifully.","frixion-6":"The FRIXION 6 adds a spoke and a wider fitment range to the Frixion line \u2014 a versatile Monoblock Cast wheel for road and light track use.",rotor:"Our Monoblock Cast bestseller, the ROTOR pairs a bold 5-spoke face with a broad fitment range \u2014 the easy, everyday upgrade.","vector-ii":"The VECTOR II brings the Vector line's open 7-spoke geometry to a Monoblock Cast build \u2014 a lighter look and a friendlier price.",torque:"The TORQUE keeps things purposeful: a sturdy Monoblock Cast 7-spoke tuned for a planted stance and dependable street manners."},Vv=m71.map(({price:e,...t})=>({...t,prices:p71(e),description:u71[t.slug]??"",compatibleTyres:[],finishes:t.finishes.map(a=>({...a,src:a.src?H2(a.src):a.src,angles:a.angles?.map(H2),details:a.details?.map(H2),wheelPhotos:a.wheelPhotos?.map(H2),carPhotos:a.carPhotos?.map(H2),video:a.video?H2(a.video):a.video}))})),d71=new Map(Vv.map(e=>[e.slug,e]));function _n(e){return d71.get(e)}import{ProductFieldIcon as S71,BlockProductIcon as L71,ProductSizeIcon as A71,NoteIcon as H71}from"efficient-easel/icons";import{useEffect as x71,useState as aR}from"react";import{Fragment as KI,jsx as g71,jsxs as $I}from"react/jsx-runtime";function Nv({answer:e}){let t=e.tone==="no-fit"?"text-[color:var(--alert)]":e.tone==="ask"||e.tone==="checking"||e.tone==="unknown"?"text-fg":"text-accent";return $I(KI,{children:[g71("span",{className:`uppercase tracking-[0.18em] ${t}`,children:e.lead}),e.detail?$I(KI,{children:[" ",e.detail]}):null]})}function XI({wheel:e,applied:t,fit:a,resolving:s}){if(!t)return{state:"unasked"};if(s)return{state:"checking"};if(!a)return{state:"unknown",missing:"vehicle"};if(!e)return{state:"unknown",missing:"wheel"};let c=e.variants??[],l=c.length===0?Ep(e,a):v71(c,a);if(l===null)return{state:"fits",checks:Ie(a)};let r=c.length===0?null:Ep(e,a),o=r!==null&&r.key===l.key?r:l;return o.key==="unverifiable"?{state:"unknown",missing:"wheel"}:o.key==="et"?{state:"fits-with-warning",checks:Ie(a),warning:o}:{state:"no-fit",failure:o}}var YI=["unverifiable","pcd","bore","et"];function v71(e,t){let a=null,s=null,c=!1;for(let l of e){let r=Jr(Xr(l),t);if(r===null){let o=BM(l,t);if(o===null)return null;c=!0,s=s??o;continue}(a===null||YI.indexOf(r.key)>YI.indexOf(a.key))&&(a=r)}return c?s:a}function p9(e){switch(e.key){case"pcd":return`This car is ${e.vehicle} and this wheel is drilled ${e.wheel}. A different bolt pattern cannot be made to fit.`;case"et":return`This wheel is made in ${e.wheel} and this car takes ${e.vehicle}.`;case"bore":return`This wheel is bored ${e.wheel} and this car needs at least ${e.vehicle} to seat on its hub.`;default:return""}}var f71="Pick your car",b71="and we will check this size against it.";function JI(e){let t=(e.pcd??"").trim();return{pcds:t?[e.holes>0?`${e.holes}\xD7${t}`:t]:[],lugs:e.holes>0?e.holes:null,etRange:Number.isFinite(e.et)?[e.et,e.et]:null,centreBores:Number.isFinite(e.cb)&&e.cb>0?[e.cb]:[]}}function QI(e,t){let a=t.appliedName;if(a==="")return{tone:"ask",lead:f71,detail:b71};if(t.resolving)return{tone:"checking",lead:"Checking",detail:`your ${a}\u2026`};if(!t.fit)return{tone:"unknown",lead:"Cannot check",detail:`We have no factory wheel data for the ${a}, and we will not guess at a fit.`};let s=L8(JI(e),t.fit);if(s===null)return{tone:"fits",lead:`Fits your ${a}`,detail:""};if(s.key==="unverifiable")return{tone:"unknown",lead:"Cannot check",detail:"We do not hold a bolt pattern for this size, and we will not guess at a fit."};if(s.key==="et"){let c=L8(JI(e),{...t.fit,etRange:null});return c===null?{tone:"warn",lead:`Fits your ${a}`,detail:`Check the offset. ${p9(s)}`}:{tone:"no-fit",lead:`Does not fit your ${a}`,detail:p9(c)}}return{tone:"no-fit",lead:`Does not fit your ${a}`,detail:p9(s)}}var eR=[{fieldKey:"diameter",header:"Diameter",cell:e=>e.diameter},{fieldKey:"width",header:"Width",cell:e=>e.width},{fieldKey:"holes",header:"Holes",cell:e=>e.holes},{fieldKey:"pcd",header:"PCD",cell:e=>e.pcd},{fieldKey:"et",header:"ET",cell:e=>e.et},{fieldKey:"center_bore",header:"C/B",cell:e=>e.cb},{fieldKey:"cap_code",header:"Cap",cell:e=>e.cap},{fieldKey:"bolt_pattern",header:"Bolt Pattern",cell:e=>e.boltPattern},{fieldKey:"load_rating",header:"Load Rating",cell:e=>e.loadRating}];function tR(e){if(e.length===0)return eR;let t=hk(e),a=eR.filter(s=>t(s.fieldKey));return u7(a,s=>s.fieldKey,e,"fitmentOrder")}import{Fragment as w71,jsx as _2,jsxs as _6}from"react/jsx-runtime";var z71=[],y71="whitespace-nowrap border-b border-line px-4 py-3.5",sR="relative cursor-pointer border-2 px-3.5 py-2 font-mono text-[length:var(--size-label,12px)] font-semibold uppercase tracking-[0.18em] text-fg transition-colors",cR="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",lR="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",rR={background:"color-mix(in oklab, var(--accent) 14%, transparent)"},oR=(e,t)=>t.map(a=>a.cell(e)).join("|");function wc({num:e,title:t,description:a,rows:s,showFilter:c=!0,tooltipDefaultOn:l=!0,footnote:r,footnoteLinkText:o,footnoteLinkHref:i,editing:n=!1,omitHead:h=!1,fieldUsage:m=z71}){let u=s??[],d=tR(m),[v,g]=aR(null),[b,f]=aR(l);x71(()=>f(l),[l]);let w=I4({editing:n}),z=d.length===0;if(u.length===0||z)return n?_6("section",{className:h?lR:cR,children:[h?null:_2(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0}),_2("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:z?p("Every fitment column is hidden in Product Types \u2014 show one to draw this table."):p("No fitment data for this wheel \u2014 pick a wheel with fitment specs.")})]}):null;let k=new Set,S=u.filter(F=>{let _=oR(F,d);return k.has(_)?!1:(k.add(_),!0)}),H=Array.from(new Set(S.map(F=>F.diameter))).sort((F,_)=>F-_),I=v!==null&&H.includes(v)?v:null,P=I===null?S:S.filter(F=>F.diameter===I),D=c&&H.length>1,E=F=>{if(F===0)return!1;let _=P[F-1],Z=P[F];return _.diameter!==Z.diameter||_.width!==Z.width};return _6("section",{className:h?lR:cR,children:[h?null:_2(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0}),_6("div",{className:"mb-6 flex flex-wrap items-center gap-x-2 gap-y-3",children:[D&&_6(w71,{children:[_2("span",{className:"mr-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim max-[720px]:mr-0 max-[720px]:mb-1 max-[720px]:w-full",children:"Filter by size:"}),_6("button",{type:"button",onClick:()=>g(null),className:`${sR} ${I===null?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"}`,style:I===null?rR:void 0,children:[I===null&&_2("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),"All"]}),H.map(F=>{let _=F===I;return _6("button",{type:"button",onClick:()=>g(_?null:F),className:`${sR} ${_?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"}`,style:_?rR:void 0,children:[_&&_2("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),F,'"']},F)})]}),_6("button",{type:"button",onClick:()=>f(F=>!F),"aria-pressed":b,"aria-label":b?"Hide vehicle tooltip":"Show vehicle tooltip",className:"ml-auto inline-flex items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim transition-colors hover:text-fg max-[720px]:hidden",children:[_2("span",{children:"Vehicle tooltip"}),_2("span",{className:`relative inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 transition-colors ${b?"border-accent":"border-fg-dim/50"}`,style:b?{background:"color-mix(in oklab, var(--accent) 30%, transparent)"}:void 0,"aria-hidden":!0,children:_2("span",{className:`block h-3 w-3 rounded-full transition-transform ${b?"translate-x-[18px] bg-accent":"translate-x-[2px] bg-fg-dim"}`})}),_2("span",{className:b?"text-accent":"text-fg-dim",children:b?"On":"Off"})]})]}),_2("div",{className:"-mx-1 overflow-x-auto",children:_6("table",{className:"w-full border-collapse font-mono text-[length:var(--size-label,14px)] tracking-[0.06em] text-fg",children:[_2("thead",{children:_2("tr",{children:d.map(({header:F},_)=>_2("th",{className:"whitespace-nowrap border-b border-line bg-surface px-4 py-3.5 text-left text-[length:var(--size-body,12px)] font-normal uppercase tracking-[0.22em] text-fg-dim",children:F},_))})}),_2("tbody",{children:P.map((F,_)=>_2("tr",{className:`group transition-colors hover:[&>td]:bg-surface ${E(_)?"[&>td]:border-t [&>td]:border-line":""}`,children:d.map((Z,G)=>{let V=G===d.length-1,j=Z.fieldKey==="diameter";return _6("td",{className:`${V?"relative ":""}${y71}${j?" text-accent":""}`,children:[Z.cell(F),V&&b&&_2("span",{role:"tooltip",className:"pointer-events-none absolute top-1/2 right-0 z-20 hidden w-[520px] -translate-y-1/2 whitespace-normal bg-[var(--tooltip-bg)] px-3 py-2 text-right font-mono text-[length:var(--size-label,11px)] normal-case tracking-[0.12em] text-fg shadow-lg group-hover:block max-[720px]:!hidden",children:_2(Nv,{answer:QI(F,w)})})]},Z.fieldKey)})},oR(F,d)))})]})}),_2(s5,{text:r,linkText:o,linkHref:i})]})}import{jsx as _v}from"react/jsx-runtime";var C71=["alloy-wheel"];function Iv(e){return _v(z2,{kinds:C71,type:"FitmentTable",editing:e.editing,children:_v(k71,{...e})})}function k71({num:e,title:t,description:a,showFilter:s,tooltipDefaultOn:c,footnote:l,footnoteLinkText:r,footnoteLinkHref:o,editing:i=!1,omitHead:n=!1}){let h=$0(),m=z3(i&&!h),u=h?.product??m,d=u?.kind==="alloy-wheel"?u.source.fitments??[]:[];return _v(wc,{num:e,title:t,description:a,rows:d,showFilter:s,tooltipDefaultOn:c,footnote:l,footnoteLinkText:r,footnoteLinkHref:o,editing:i,omitHead:n,fieldUsage:h?.fieldUsage})}function iR(e,t){return t||e.dynamic===!0}import{jsx as nR}from"react/jsx-runtime";function Rv({dynamic:e,wheel:t,omitHead:a=!1,...s}){let c=$0()!==null||!!s.editing&&M2();return iR({dynamic:e,wheel:t},c)?nR(Iv,{...s,omitHead:a}):nR(wc,{...s,omitHead:a,rows:Wt(typeof t=="string"?t:"")})}import{jsx as M71}from"react/jsx-runtime";var i5={num:A.sectionNumber,title:"Specifications *table.*",description:A.body,footnote:"Add a short footnote here.",footnoteLinkText:"Contact us"},hR={label:"Fitment Table",defaultProps:{dynamic:!1,num:"",title:"",description:"",wheel:"",showFilter:!0,tooltipDefaultOn:!0,footnote:"",footnoteLinkText:"",footnoteLinkHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return M71(Rv,{dynamic:e.dynamic,wheel:e.wheel,num:a(y(e.num,i5.num,e.puck)),title:a(y(e.title,i5.title,e.puck)),description:a(y(e.description,i5.description,e.puck)),omitHead:t,showFilter:e.showFilter,tooltipDefaultOn:e.tooltipDefaultOn,footnote:y(e.footnote,i5.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,i5.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),editing:e.puck?.isEditing})}};import{jsx as In}from"react/jsx-runtime";var F71=Vv.filter(e=>Wt(e.slug).length>0).map(e=>({value:e.slug,label:e.name})),mR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,In(S71,{})),_gContent:x("Header"),num:T("Number",i5.num),title:T("Heading",i5.title),description:O("Body",i5.description),_gData:x("Wheel"),wheel:g1("Product",In(L71,{}),F71,"vector-iii"),_gOptions:x("Controls"),showFilter:l1("Size-filter chips",!0,In(A71,{})),tooltipDefaultOn:l1("Detail tooltip on by default",!0,In(H71,{})),_gFootnote:x("Footnote"),footnote:O("Footnote",i5.footnote),footnoteLinkText:T("Footnote button",i5.footnoteLinkText),footnoteLinkHref:H1("Footnote link")},resolveFields:(e,{fields:t,parent:a})=>{let s={...t},c=l=>G1(W1(l,a,U1),e.props.headPlacement,Z1.FitmentTable.headRows);return delete s._gDynamic,delete s.dynamic,M2()&&(delete s._gData,delete s.wheel),c(s)}};import{SettingsField as uR}from"efficient-easel/panel";import{FieldSelect as dR}from"efficient-easel/fields";import{BlockProductIcon as V71,CategoryIcon as N71}from"efficient-easel/icons";import{useEffect as Zv,useMemo as _71,useRef as Rn,useState as Bn}from"react";import{useEffect as T71,useMemo as pR,useState as P71}from"react";var I6="__all__";function E71(e,t){let a=new Set((e??[]).map(s=>s.name));return t!==I6&&a.add(t),[...a].sort((s,c)=>s.localeCompare(c))}function Bv(e,t){return t===I6?e??[]:(e??[]).filter(a=>a.process===t)}function J7(e,t,a){let[s,c]=P71(I6);T71(()=>{a?.process&&c(a.process)},[a]);let l=pR(()=>E71(t,s),[t,s]),r=pR(()=>Bv(e,s),[e,s]);return{category:s,setCategory:c,categoryNames:l,filtered:r}}import{jsx as Q7,jsxs as Z71}from"react/jsx-runtime";var n5="__all__";function I71(e,t){return t===n5?e:e.filter(a=>a.process===t)}function Ut(e,t){return e.map(a=>({image:a.items[0]?.url,photos:a.items.map(s=>({src:s.url})),href:`/wheels/${t.slug}`,process:t.process,eyebrow:a.name,name:t.name,meta:a.finish})).filter(a=>!!a.image)}function gR(e){let t=R3();return t?J1.getWheelDetail(t,e,{siteId:i2()}):Promise.reject(new Error("editor not authenticated"))}async function R71(e){let t=await gR(e),a={slug:t.slug,name:t.name,process:t.process},s=t.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};return{...a,vehicleCards:Ut(s.lifestyle??[],a),wheelCards:Ut(s.photos??[],a),othersCards:Ut(s.others??[],a)}}async function B71(e,t){let a=await Promise.all(e.map(r=>gR(r.slug).catch(()=>null))),s=[],c=[],l=[];for(let r of a){if(!r)continue;let o={slug:r.slug,name:r.name,process:r.process},i=r.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};s.push(...Ut(i.lifestyle??[],o)),c.push(...Ut(i.photos??[],o)),l.push(...Ut(i.others??[],o))}return{slug:n5,name:t===n5?"All products":t,process:"",vehicleCards:s,wheelCards:c,othersCards:l,category:t}}function Dv({value:e,onChange:t}){let a=C4(),[s,c]=Bn(null),[l,r]=Bn(null),[o,i]=Bn(!1),[n,h]=Bn(!1),m=Rn(!0),u=Rn(e);u.current=e;let d=Rn(t);d.current=t;let v=(N,Q=!1)=>{i(!0),Q||h(!1),N().then(W=>{m.current&&(b6(W,u.current)&&d.current(W),h(!1))}).catch(()=>{m.current&&!Q&&h(!0)}).finally(()=>{m.current&&i(!1)})},g=(N,Q=!1)=>v(()=>R71(N),Q),b=(N,Q=!1)=>v(()=>B71(I71(s??[],N),N),Q);Zv(()=>(m.current=!0,i3().then(N=>{m.current&&c(N)}),f4().then(N=>{m.current&&r(N)}),()=>{m.current=!1}),[]);let f=Rn(!1);Zv(()=>{if(f.current)return;let N=u.current;if(!N?.slug){f.current=!0;return}if(N.slug===n5){if(s===null)return;f.current=!0,b(N.category??n5,!0)}else f.current=!0,g(N.slug,!0)},[s]);let w=e?.slug===n5,z=_71(()=>s&&e?.slug&&!w?s.find(N=>N.slug===e.slug)??null:null,[s,e?.slug,w]),{category:k,setCategory:S,categoryNames:H,filtered:I}=J7(s,l);Zv(()=>{w?e?.category&&S(e.category):z?.process&&S(z.process)},[z,w,e?.category]);let P=s===null,D=!!e?.slug&&!w&&s!==null&&!z,E=N=>{if(!N){t(null);return}if(N===n5){b(k);return}g(N)},F=N=>{S(N),u.current?.slug===n5&&b(N)},_=()=>{e?.slug&&(i3(!0).then(N=>{m.current&&c(N)}),w?b(e.category??n5):g(e.slug))},Z=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},G=(e?.vehicleCards.length??0)+(e?.wheelCards.length??0)+(e?.othersCards?.length??0),V=n?"error":o?"loading":"idle",j=n?p("Couldn\u2019t reach the product catalog."):o?p("Syncing media from the catalog\u2026"):D?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):w?p3("Linked to \u201C{name}\u201D \xB7 {n} card from all products\u2019 media groups.","Linked to \u201C{name}\u201D \xB7 {n} cards from all products\u2019 media groups.",G,{name:e?.name??""}):p3("Linked to \u201C{name}\u201D \xB7 {n} card from its media groups.","Linked to \u201C{name}\u201D \xB7 {n} cards from its media groups.",G,{name:e?.name??""});return Z71("div",{children:[Q7(uR,{label:p("Category"),icon:Q7(N71,{}),children:Q7(dR,{value:k,ariaLabel:p("Category"),onChange:F,readOnly:P,options:[{label:p("All products"),value:n5},...H.map(N=>({label:N,value:N}))]})}),Q7(uR,{label:p("Product"),icon:Q7(V71,{}),children:Q7(dR,{value:e?.slug??"",ariaLabel:p("Product"),onChange:E,readOnly:P||o,options:[{label:P?p("Loading\u2026"):p("None (write the cards yourself)"),value:""},{label:p("All products"),value:n5},...D?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...I.map(N=>({label:N.name,value:N.slug}))]})}),e?.slug?Q7(E4,{status:V,statusText:j,onRefresh:_,busy:o,edit:w?void 0:{label:p("Edit product \u270E"),onClick:Z},hint:w?p("Pools every product\u2019s grouped media: each one\u2019s Relative / lifestyle photos feed Gallery A, its Product photos Gallery B and its Others the Others gallery. Every media group becomes a card, attributed to its own product (title, link and tag). Narrow the set with the Category filter above. Headings, intro copy and stats stay yours."):p("Gallery A comes from the product\u2019s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others \u2014 edit those in the product\u2019s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card\u2019s title is the product name and its tag the category. Headings, intro copy and stats stay yours.")}):Q7("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a product \u2014 or All products \u2014 to build the galleries from media groups, or keep \u201CNone\u201D to author the cards yourself.")})]})}import{EyeIcon as G71,TabsIcon as xR,BreadcrumbIcon as q71,HashIcon as zR,SortIcon as W71}from"efficient-easel/icons";import{useMemo as vR,useState as Zn}from"react";import{Fragment as Dn,jsx as j1,jsxs as a2}from"react/jsx-runtime";function Ov(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function fR(e){let t=[e.image,...(e.photos??[]).map(a=>a?.src)].filter(a=>!!a);return t.length?t:[""]}var Gv=6,D71=()=>Array.from({length:Gv},(e,t)=>({image:"",process:p("Tag"),eyebrow:p("Category"),name:p("Item name"),meta:p("{n} photos",{n:`0${t+1}`})}));function qv({mode:e="both",kicker:t,breadcrumbLabel:a,vehicleTabLabel:s="Gallery A",vehicleTitle:c,vehicleBody1:l,vehicleBody2:r,vehicleStats:o,vehicleCards:i,wheelTabLabel:n="Gallery B",wheelTitle:h,wheelBody1:m,wheelBody2:u,wheelStats:d,wheelCards:v,othersTitle:g,othersBody1:b,othersBody2:f,othersStats:w,othersCards:z,showBreadcrumb:k=!0,showStats:S=!0,showIntro:H=!0,showTabs:I=!0,showFilters:P=!0,showCount:D=!0,showSort:E=!0,previewTab:F,previewHover:_=!1,editing:Z=!1}){let G=e==="both",V=G?["vehicles","wheels"]:e==="wheels"?["wheels"]:e==="others"?["others"]:["vehicles"],[j,N]=Zn(V[0]),W=(Z&&G&&F&&V.includes(F)?F:null)??(V.includes(j)?j:V[0]),U=Z&&_,[i1,y1]=Zn("all"),[K,c1]=Zn("newest"),[b1,$]=Zn(null),u1=W==="vehicles"?{title:c,body1:l,body2:r,stats:o??[],cards:i??[],unit:"items",word:s}:W==="others"?{title:g,body1:b,body2:f,stats:w??[],cards:z??[],unit:"items",word:"Others"}:{title:h,body1:m,body2:u,stats:d??[],cards:v??[],unit:"items",word:n},x1=vR(()=>{let d1=[];for(let $1 of u1.cards)$1.process&&!d1.includes($1.process)&&d1.push($1.process);return d1},[u1.cards]),X0=i1!=="all"&&x1.includes(i1)?i1:"all",o0=X0==="all"?u1.cards:u1.cards.filter(d1=>d1.process===X0),I1=vR(()=>{let d1=[...o0];return K==="name"&&d1.sort(($1,u0)=>($1.name??"").localeCompare(u0.name??"")),d1},[o0,K]),c0=u1.cards.length===0,l0=Z&&c0,X1=l0?D71():I1,X2=l0?Gv:u1.cards.length,Q1=l0?Gv:I1.length,d2=t?`${t} \xB7 ${p2(u1.word)}`:void 0;function b0(d1){d1!==W&&(N(d1),y1("all"))}return a2("section",{className:"relative z-[2] bg-bg",children:[k&&a2("nav",{className:"mx-auto flex max-w-[var(--sf-site-width,1600px)] 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:[j1("span",{className:"hover:text-fg",children:"Home"}),j1("span",{className:"opacity-40",children:"/"}),j1("span",{className:"text-fg",children:a?R0(a):"Gallery"})]}),a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-[auto_1fr_auto] items-end gap-[60px] border-b border-line px-[var(--sf-site-gutter,40px)] pt-[100px] pb-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-5 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-[60px]",children:[j1("span",{className:"pb-3.5 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em] text-accent",children:d2?M(d2):null}),j1("h2",{className:"font-display text-[length:min(var(--size-headingLarge,clamp(64px,9vw,140px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.9] tracking-[-0.04em]",children:u1.title?Y(u1.title,!0):null}),j1("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:S&&u1.stats.map((d1,$1)=>a2("div",{children:[d1.value?j1("strong",{className:"font-normal text-fg",children:M(d1.value)}):null," ",d1.label?M(d1.label):null]},$1))})]}),H&&(u1.body1||u1.body2)&&a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 gap-[60px] px-[var(--sf-site-gutter,40px)] pt-7 max-[1100px]:grid-cols-1 max-[1100px]:gap-4 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[u1.body1&&j1("p",{className:"max-w-[540px] font-display text-[length:var(--size-body,17px)] leading-[1.6] text-fg-dim",children:M(u1.body1)}),u1.body2&&j1("p",{className:"max-w-[540px] font-display text-[length:var(--size-body,17px)] leading-[1.6] text-fg-dim",children:M(u1.body2)})]}),G&&I&&j1("div",{className:"mx-auto mt-10 flex max-w-[var(--sf-site-width,1600px)] items-stretch border-y border-line px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[720px]:px-3",children:["vehicles","wheels"].map((d1,$1)=>{let u0=W===d1,P0=d1==="vehicles"?s:n,J0=d1==="vehicles"?(i??[]).length:(v??[]).length,q0=(P0||"").trim().split(/\s+/),e1=q0.slice(0,-1).join(" "),z1=q0.slice(-1)[0]??"";return a2("button",{type:"button",onClick:()=>b0(d1),className:["group relative grid flex-1 cursor-pointer grid-cols-[auto_1fr_auto] items-end gap-5 px-6 py-7 text-left transition-colors",$1===0?"border-r border-line":"","max-[720px]:grid-cols-[auto_1fr] max-[720px]:items-center max-[720px]:gap-2 max-[720px]:px-3 max-[720px]:py-3",u0?"bg-surface":"hover:bg-fg/[0.04]"].join(" "),children:[j1("span",{className:["pb-1.5 font-mono text-[length:var(--size-label,13px)] tracking-[0.3em] max-[720px]:pb-0 max-[720px]:text-[length:var(--size-label,11px)] max-[720px]:tracking-[0.24em]",u0?"text-accent":"text-fg-dim group-hover:text-accent"].join(" "),children:$1===0?"A":"B"}),a2("span",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(28px,3.6vw,48px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] max-[720px]:text-[length:var(--size-body,15px)]",children:[e1?a2(Dn,{children:[R0(e1)," "]}):null,j1("em",{className:"font-normal italic text-accent",children:R0(z1)})]}),a2("span",{className:"pb-1.5 text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.24em] text-fg-dim max-[720px]:hidden",children:[j1("strong",{className:"font-normal text-fg",children:J0})," ","items",j1("br",{}),d1==="vehicles"?"Community photos":"Featured photos"]}),u0&&j1("span",{className:"pointer-events-none absolute inset-x-0 -bottom-px h-0.5 bg-accent"})]},d1)})}),(P||D||E)&&a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-[auto_1fr_auto] items-center gap-7 border-b border-line px-[var(--sf-site-gutter,40px)] py-5 max-[720px]:grid-cols-1 max-[720px]:gap-3.5 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-3",style:{background:"color-mix(in oklab, var(--bg) 92%, transparent)"},children:[j1("div",{className:"flex flex-wrap gap-1",children:P&&["all",...x1].map(d1=>{let $1=X0===d1,u0=d1==="all"?"All":d1;return j1("button",{type:"button",onClick:()=>y1(d1),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] transition-colors",$1?"border-fg bg-fg text-bg":"border-transparent text-fg-dim hover:text-fg"].join(" "),children:R0(u0)},d1)})}),D?a2("div",{className:"text-center font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:[j1("strong",{className:"font-normal text-accent",children:Q1})," / ",X2," ",u1.unit]}):j1("div",{}),E?a2("div",{className:"flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:[j1("span",{children:"Sort"}),a2(Fa,{value:K,onChange:d1=>c1(d1.target.value),className:"cursor-pointer border border-line bg-bg px-2.5 py-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg",children:[j1("option",{value:"newest",children:"Newest"}),j1("option",{value:"featured",children:"Featured"}),j1("option",{value:"name",children:"Name A\u2013Z"})]})]}):j1("div",{})]}),j1("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-5 pb-20 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",children:X1.length>0?j1("div",{className:"grid grid-cols-6 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:X1.map((d1,$1)=>{let u0=fR(d1)[0],J0=`group relative block aspect-[4/3] w-full overflow-hidden bg-surface-2 text-left ${$1<2?"col-span-3 max-[1100px]:col-span-1":"col-span-2 max-[1100px]:col-span-1"}`,q0=`${d1.name??"card"}-${$1}`,e1=a2(Dn,{children:[j1(k0,{label:Ov(d1.name,`gallery-card-${$1+1}`),src:u0||void 0,alt:p2(d1.name??""),sizes:"(max-width: 720px) 100vw, (max-width: 1100px) 50vw, 33vw",className:`transition-transform duration-700 ${U?"scale-[1.04]":"group-hover:scale-[1.04]"}`}),a2("div",{className:"pointer-events-none absolute inset-0 z-10 flex flex-col justify-between p-[22px] max-[720px]:p-[11px]",style:{background:"linear-gradient(180deg, rgba(10,10,10,.55) 0%, transparent 35%, transparent 55%, rgba(10,10,10,.92) 100%)"},children:[a2("div",{className:"flex items-start justify-between font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em]",children:[d1.process?j1("span",{className:"text-accent",children:M(d1.process)}):j1("span",{}),a2("span",{className:"text-overlay-fg/70",children:[String($1+1).padStart(2,"0")," / ",String(X1.length).padStart(2,"0")]})]}),a2("div",{className:"flex flex-col gap-1.5",children:[d1.eyebrow&&j1("div",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(d1.eyebrow)}),d1.name&&j1("div",{className:"font-heading3 text-[length:var(--size-headingSmall,clamp(22px,2.4vw,32px))] font-medium uppercase leading-none tracking-[-0.02em] text-overlay-fg",children:M(d1.name)}),d1.meta&&j1("div",{className:"flex flex-wrap gap-3 pt-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-overlay-fg/70",children:j1("span",{children:M(d1.meta)})})]})]})]});return Z?j1("div",{className:J0,children:e1},q0):j1("button",{type:"button",onClick:()=>$({card:d1,index:0}),"aria-label":`Open ${d1.name??"gallery item"}`,className:`${J0} cursor-pointer focus:outline-none focus-visible:outline focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2`,children:e1},q0)})}):j1("div",{className:"py-20 text-center font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] text-fg-dim",children:c0?"No items in this gallery yet.":"No items match this filter."})}),b1&&(()=>{let d1=fR(b1.card),{card:$1,index:u0}=b1,P0=d1.length,J0=d1[u0]??d1[0]??"",q0=z1=>$(t0=>t0&&{...t0,index:(t0.index+z1+P0)%P0}),e1=[$1.process,$1.meta].filter(Boolean).join(" \xB7 ");return a2(F8,{open:!0,onClose:()=>$(null),label:$1.name??"Gallery item",onPrev:P0>1?()=>q0(-1):void 0,onNext:P0>1?()=>q0(1):void 0,className:"flex cursor-zoom-out flex-col items-center justify-center bg-overlay-scrim/92 p-6 backdrop-blur-sm max-[720px]:p-3",children:[a2("div",{className:"relative flex w-full flex-1 items-center justify-center",children:[j1("div",{className:"relative h-full max-h-[72vh] w-full max-w-[92vw]",children:j1(k0,{label:Ov($1.name,"gallery-photo"),src:J0||void 0,alt:p2($1.name??""),objectFit:"contain",sizes:"92vw"})}),P0>1&&a2(Dn,{children:[j1("button",{type:"button","aria-label":"Previous photo",onClick:z1=>{z1.stopPropagation(),q0(-1)},className:"absolute left-2 top-1/2 flex h-12 w-12 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25C1"}),j1("button",{type:"button","aria-label":"Next photo",onClick:z1=>{z1.stopPropagation(),q0(1)},className:"absolute right-2 top-1/2 flex h-12 w-12 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25B7"})]})]}),a2("div",{className:"mt-5 flex flex-col items-center gap-3 text-center font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",onClick:z1=>z1.stopPropagation(),children:[a2("div",{className:"flex flex-col items-center gap-1",children:[$1.name&&j1("span",{className:"text-accent",children:M($1.name)}),$1.eyebrow&&j1("span",{children:M($1.eyebrow)}),a2("span",{className:"text-fg-dim/70",children:[e1?a2(Dn,{children:[M(e1)," \xB7 "]}):null,u0+1," / ",P0]})]}),$1.href&&j1(L1,{href:$1.href,onClick:()=>$(null),className:"cursor-pointer border border-btn bg-btn/[0.08] px-5 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.28em] text-btn transition-colors hover:bg-btn hover:text-btn-ink",children:"View Product \u2192"})]}),P0>1&&j1("div",{onClick:z1=>z1.stopPropagation(),className:"mt-5 flex max-w-[92vw] gap-1.5 overflow-x-auto pb-1",children:d1.map((z1,t0)=>j1("button",{type:"button","aria-label":`Photo ${t0+1}`,onClick:()=>$(s2=>s2&&{...s2,index:t0}),className:["relative h-16 w-24 shrink-0 cursor-pointer overflow-hidden border transition-colors max-[720px]:h-12 max-[720px]:w-16",t0===u0?"border-accent":"border-line opacity-60 hover:border-fg-dim hover:opacity-100"].join(" "),children:j1(k0,{label:Ov($1.name,"gallery-photo"),src:z1||void 0,alt:"",sizes:"120px"})},`${z1}-${t0}`))}),j1(Ye,{})]})})()]})}import{jsx as O71}from"react/jsx-runtime";var y2={kicker:A.eyebrow,vehicleTitle:A.headingAccent,wheelTitle:A.headingAccent,vehicleBody1:A.body,vehicleBody2:"Add a second, shorter line if you need one.",wheelBody1:A.body,wheelBody2:"Add a second, shorter line if you need one.",othersTitle:A.headingAccent,othersBody1:A.body,othersBody2:"Add a second, shorter line if you need one."},Wv=()=>[{value:"00",label:p(A.label)},{value:"00",label:p(A.label)},{value:"00",label:p(A.label)}],On=()=>({image:"",href:"#",process:p(A.category),eyebrow:p("Subtitle"),name:p("Item name"),meta:p("Detail")}),Uv=()=>[On(),On(),On(),On()],bR={label:"Tabbed Gallery",defaultProps:{mode:"both",source:null,kicker:"",breadcrumbLabel:"Gallery",vehicleTabLabel:"Gallery A",vehicleTitle:"",vehicleBody1:"",vehicleBody2:"",vehicleStats:[],vehicleCards:[],wheelTabLabel:"Gallery B",wheelTitle:"",wheelBody1:"",wheelBody2:"",wheelStats:[],wheelCards:[],othersTitle:"",othersBody1:"",othersBody2:"",othersStats:[],othersCards:[],showBreadcrumb:!0,showStats:!0,showIntro:!0,showTabs:!0,showFilters:!0,showCount:!0,showSort:!0,previewTab:"vehicles",previewHover:!1},render:e=>{let t=e.source;return O71(qv,{mode:e.mode,kicker:y(e.kicker,y2.kicker,e.puck),breadcrumbLabel:a1(e.breadcrumbLabel)||"Gallery",vehicleTabLabel:a1(e.vehicleTabLabel)||"Gallery A",vehicleTitle:y(e.vehicleTitle,y2.vehicleTitle,e.puck),vehicleBody1:y(e.vehicleBody1,y2.vehicleBody1,e.puck),vehicleBody2:y(e.vehicleBody2,y2.vehicleBody2,e.puck),vehicleStats:C1(e.vehicleStats,Wv(),e.puck),vehicleCards:C1(t?.vehicleCards??e.vehicleCards,Uv(),e.puck),wheelTabLabel:a1(e.wheelTabLabel)||"Gallery B",wheelTitle:y(e.wheelTitle,y2.wheelTitle,e.puck),wheelBody1:y(e.wheelBody1,y2.wheelBody1,e.puck),wheelBody2:y(e.wheelBody2,y2.wheelBody2,e.puck),wheelStats:C1(e.wheelStats,Wv(),e.puck),wheelCards:C1(t?.wheelCards??e.wheelCards,Uv(),e.puck),othersTitle:y(e.othersTitle,y2.othersTitle,e.puck),othersBody1:y(e.othersBody1,y2.othersBody1,e.puck),othersBody2:y(e.othersBody2,y2.othersBody2,e.puck),othersStats:C1(e.othersStats,Wv(),e.puck),othersCards:C1(t?.othersCards??e.othersCards,Uv(),e.puck),showBreadcrumb:e.showBreadcrumb,showStats:e.showStats,showIntro:e.showIntro,showTabs:e.showTabs,showFilters:e.showFilters,showCount:e.showCount,showSort:e.showSort,previewTab:e.previewTab,previewHover:e.previewHover,editing:e.puck?.isEditing})}};import{jsx as R6}from"react/jsx-runtime";var yR={fields:{_sSetup:Y1("Setup"),_gGallery:x("Gallery"),mode:v1("Show",R6(G71,{}),[{label:"Gallery A",value:"vehicles"},{label:"Gallery B",value:"wheels"},{label:"Others",value:"others"},{label:"Both",value:"both"}],"both"),kicker:T("Eyebrow",y2.kicker),breadcrumbLabel:q("Breadcrumb label","Gallery"),_gSource:x("Source product"),source:c2(Dv),_sPreview:Y1("Preview"),_gPreview:x(Xl),previewTab:v1("Show tab",R6(xR,{}),[{label:"Gallery A",value:"vehicles"},{label:"Gallery B",value:"wheels"}],"vehicles"),_sVehicle:Y1("Gallery A"),_gVehicleContent:x("Content"),vehicleTabLabel:q("Tab label","Gallery A"),vehicleTitle:O("Heading",y2.vehicleTitle),vehicleBody1:O("Intro",y2.vehicleBody1),vehicleBody2:O("Body",y2.vehicleBody2),_gVehicleStats:x("Stats"),vehicleStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gVehicleCards:x("Cards"),vehicleCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sWheel:Y1("Gallery B"),_gWheelContent:x("Content"),wheelTabLabel:q("Tab label","Gallery B"),wheelTitle:O("Heading",y2.wheelTitle),wheelBody1:O("Intro",y2.wheelBody1),wheelBody2:O("Body",y2.wheelBody2),_gWheelStats:x("Stats"),wheelStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gWheelCards:x("Cards"),wheelCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sOthers:Y1("Others gallery"),_gOthersContent:x("Content"),othersTitle:O("Heading",y2.othersTitle),othersBody1:O("Intro",y2.othersBody1),othersBody2:O("Body",y2.othersBody2),_gOthersStats:x("Stats"),othersStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gOthersCards:x("Cards"),othersCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sVisibility:Y1("Visibility"),_gElements:x("Show / hide elements"),showBreadcrumb:l1("Breadcrumb",!0,R6(q71,{})),showStats:l1("Stats",!0,R6(zR,{})),showIntro:l1("Intro text",!0,R6(c4,{noun:"intro"})),showTabs:l1("Tab switcher",!0,R6(xR,{})),showFilters:l1("Tag filters",!0,R6(c4,{noun:"tag"})),showCount:l1("Result count",!0,R6(zR,{})),showSort:l1("Sort control",!0,R6(W71,{}))},resolveFields:(e,{fields:t})=>{let a=e.props,s={...t};a.mode!=="both"&&(delete s._sPreview,delete s._gPreview,delete s.previewTab);let c=["_sVehicle","_gVehicleContent","vehicleTabLabel","vehicleTitle","vehicleBody1","vehicleBody2","_gVehicleStats","vehicleStats","_gVehicleCards","vehicleCards"],l=["_sWheel","_gWheelContent","wheelTabLabel","wheelTitle","wheelBody1","wheelBody2","_gWheelStats","wheelStats","_gWheelCards","wheelCards"];return a.mode==="vehicles"&&l.forEach(r=>delete s[r]),a.mode==="wheels"&&c.forEach(r=>delete s[r]),a.source?.slug&&(delete s._gVehicleCards,delete s.vehicleCards,delete s._gWheelCards,delete s.wheelCards,delete s._gOthersCards,delete s.othersCards),s}};import{ProductFieldIcon as Q71,ImageIcon as e81,EyeIcon as t81}from"efficient-easel/icons";import{jsx as R4,jsxs as MR}from"react/jsx-runtime";var U71=D3,wR=["photos","lifestyle","accessories","others"];function j71(e,t){if(!e)return[];if(t==="all")return wR.flatMap(s=>e[s]??[]);let a=wR.includes(t)?t:null;return a?e[a]??[]:[]}var CR="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]",kR="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]";function jv(e){return Ho(!!e.editing)?R4(K71,{...e}):R4(z2,{kinds:U71,type:"GalleryB",editing:e.editing,children:R4($71,{...e})})}function K71(e){let{editing:t=!1}=e,a=To(),s=a?Lo(a,{firstField:!0}).map(c=>({images:[c.url],eyebrow:c.alt||void 0})):t?Array.from({length:gL},()=>({images:[""]})):[];return R4(SR,{...e,tiles:s,owner:{name:(a??Fo).title},emptyHint:p("This record\u2019s pictures appear here on its page. A record with no pictures draws nothing.")})}function $71({omitHead:e=!1,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",zone:o="all",photoDisplay:i="covers",previewHover:n,editing:h=!1}){let m=$0(),u=z3(h&&!m),d=m?.product??u,v=j71(d?.mediaGroups,o).map(f=>({images:(f.items??[]).filter(w=>w.kind==="image").map(w=>w.url),name:f.name,finish:f.finish})).filter(f=>f.images.length>0),b=(i==="auto"?v.length>=4?"covers":"all":i)==="all"?v.flatMap(f=>f.images.map(w=>({images:[w],name:f.name,finish:f.finish}))):v;return R4(SR,{omitHead:e,num:t,title:a,linkText:s,linkHref:c,galleryHref:l,submitHref:r,previewHover:n,editing:h,tiles:d?b.map(f=>({images:f.images,eyebrow:f.name,meta:f.finish})):[],owner:{name:d?.name??"",href:d?.href,process:d?.eyebrow},emptyHint:p("This product\u2019s photos appear here on a product page. Add media groups in the product\u2019s Media tab.")})}function SR({omitHead:e=!1,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o,editing:i=!1,tiles:n,owner:h,emptyHint:m}){let u=s?{text:s,href:c||"#"}:void 0,d=a?Y(a,!1):void 0,v=e?null:R4(s0,{num:t,title:d,link:u});return n.length===0?i?MR("section",{className:e?kR:CR,children:[v,R4("p",{className:"mt-8 border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:m})]}):null:MR("section",{className:e?kR:CR,children:[v,R4(ts.Provider,{value:{galleryHref:l,submitHref:r,previewHover:o},children:R4("div",{[as]:"",className:"grid grid-cols-4 gap-2 max-[1500px]:grid-cols-3 max-[800px]:grid-cols-1 max-[800px]:gap-1",children:n.map((g,b)=>R4(ss,{image:g.images[0],photos:g.images.slice(1).map(f=>({src:f})),href:h.href,process:h.process,eyebrow:g.eyebrow,name:h.name,meta:g.meta,editing:i},`${g.eyebrow}-${b}`))})}),R4("div",{className:"mt-12 flex flex-col items-center gap-3",children:R4(c3,{href:l,variant:"ghost",children:"See Gallery"})})]})}import{jsx as u9,jsxs as J71}from"react/jsx-runtime";var Y71="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]",X71="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]";function Kv({items:e,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o,layout:i,columns:n,columnsMobile:h,gap:m,omitHead:u=!1}){let d=nz(i),v=d?i:null,g=!d&&n!=null&&n!=="",b=B3("GalleryB",m,"both"),f=v?{className:`sf-card-grid sf-gallery-zone ${hz(v)} grid${b.className}`,style:b.style}:g?{className:`sf-card-grid sf-grid-zone grid${b.className}`,style:{...b.style,"--sf-grid-cols":String(nl(n)),"--sf-grid-cols-phone":String(hl(h,n))}}:{className:`sf-card-grid grid grid-cols-4${b.className} max-[1500px]:grid-cols-3 max-[800px]:grid-cols-1`,style:b.style},w=s?{text:s,href:c||"#"}:void 0,z=a?Y(a,!1):void 0;return J71("section",{className:u?X71:Y71,children:[u?null:u9(s0,{num:t,title:z,link:w}),v&&u9("style",{dangerouslySetInnerHTML:{__html:mz(v)}}),e&&u9(ts.Provider,{value:{galleryHref:l,submitHref:r,previewHover:o},children:u9("div",{[as]:"",style:{display:"contents"},children:u9(e,{...f,minEmptyHeight:320})})}),u9("div",{className:"mt-12 flex flex-col items-center gap-3",children:u9(c3,{href:l,variant:"ghost",children:"See Gallery"})})]})}import{jsx as LR}from"react/jsx-runtime";var J5={num:A.sectionNumber,title:A.headingAccent,link:A.viewAll},$v={items:{type:"slot",allow:["GalleryItem"]}},AR={label:"Customer Photo Grid",fields:$v,defaultProps:{dynamic:!1,mediaZone:"all",photoDisplay:"covers",num:"",title:"",linkText:"",linkHref:"/contact",galleryHref:"/gallery",previewHover:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return e.dynamic?LR(jv,{num:a(y(e.num,J5.num,e.puck)),title:a(y(e.title,J5.title,e.puck)),linkText:a(y(e.linkText,J5.link,e.puck)),linkHref:a(a1(e.linkHref)||"/contact"),omitHead:t,galleryHref:a1(e.galleryHref)||"/gallery",zone:e.mediaZone||"all",photoDisplay:e.photoDisplay||"covers",previewHover:e.previewHover,editing:e.puck?.isEditing}):LR(Kv,{num:a(y(e.num,J5.num,e.puck)),title:a(y(e.title,J5.title,e.puck)),omitHead:t,linkText:a(y(e.linkText,J5.link,e.puck)),linkHref:a(a1(e.linkHref)||"/contact"),galleryHref:a1(e.galleryHref)||"/gallery",previewHover:e.previewHover,layout:e.layout,columns:e.columns,columnsMobile:e.columnsMobile,gap:e.gap,items:e.items})}};import{jsx as Yv}from"react/jsx-runtime";var a81=[{label:"All media groups",value:"all"},{label:"Lifestyle photos",value:"lifestyle"},{label:"Product photos",value:"photos"},{label:"Accessories",value:"accessories"},{label:"Others",value:"others"}],s81=[{label:"Group covers",value:"covers"},{label:"Every photo",value:"all"},{label:"Auto (covers if 4+ groups)",value:"auto"}],HR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,Yv(Q71,{})),mediaZone:g1("Images from",Yv(e81,{}),a81,"all"),photoDisplay:g1("Show",Yv(t81,{}),s81,"covers"),_gHeader:x("Header"),num:T("Section number",J5.num),title:O("Heading",J5.title),_gHeaderLink:x("Header link"),linkText:T("Header button",J5.link),linkHref:H1("Header link"),_gImages:x("Images"),imageList:N5("GalleryB"),items:$v.items,_gGalleryLink:x("Gallery link"),galleryHref:H1("\u201CSee gallery\u201D link"),_gArrangement:x("Arrangement"),layout:mw(),gap:Z3("GalleryB")},resolveFields:(e,t)=>{let{fields:a,parent:s}=t,c=e.props,l={...a},r=o=>G1(W1(o,s,U1),e.props.headPlacement,Z1.GalleryB.headRows);return M2()?(c.dynamic?(delete l._gImages,delete l.items,delete l.imageList,Ao(t)&&(delete l.mediaZone,delete l.photoDisplay)):(delete l.mediaZone,delete l.photoDisplay),r(l)):(delete l._gDynamic,delete l.dynamic,delete l.mediaZone,delete l.photoDisplay,r(l))}};import{useEffect as PR,useMemo as Xv,useState as Jv}from"react";import{IconButton as c81,Tooltip as l81}from"efficient-shell/ui";import{SettingsField as ER}from"efficient-easel/panel";import{FieldSelect as Gn}from"efficient-easel/fields";import{BlockProductIcon as r81,MediaIcon as o81}from"efficient-easel/icons";var FR=new Map;function TR(e){if(!e)return Promise.resolve(null);let t=FR.get(e);return t||(t=v0.getWheel(e).then(a=>a.mediaGroups??null).catch(()=>null),FR.set(e,t)),t}import{Fragment as _R,jsx as A2,jsxs as B6}from"react/jsx-runtime";function qn({label:e,hidden:t,onToggle:a}){return B6("div",{className:"sf-field-head",children:[A2("span",{className:"sf-field-label sf-field-label--inline",children:e}),a&&A2(l81,{content:t?p("Show on the card"):p("Hide on the card"),children:A2(c81,{size:"sm","aria-pressed":!!t,"aria-label":t?p("Show on the card"):p("Hide on the card"),onClick:a,children:t?A2(r6,{name:"eye-off",size:14}):A2(r6,{name:"eye",size:14})})})]})}var i81=[["photos","Photos"],["lifestyle","Lifestyle"],["accessories","Accessories"],["others","Others"],["videos","Videos"]];function VR(e){switch(e){case"photos":return p("Photos");case"lifestyle":return p("Lifestyle");case"accessories":return p("Accessories");case"others":return p("Others");case"videos":return p("Videos");default:return String(e)}}function n81(e){if(!e)return[];let t=[];for(let[a,s]of i81)(e[a]??[]).forEach((c,l)=>{let r=(c.items??[]).filter(o=>o.kind==="image").map(o=>o.url);r.length!==0&&t.push({key:`${String(a)}:${l}`,label:c.name?`${VR(a)} \xB7 ${c.name}`:VR(a),name:c.name||s,images:r})});return t}function NR(e){return e?e.categories&&e.categories.length?e.categories:e.process?[e.process]:[]:[]}function h81(e,t,a){let s=t?.find(i=>i.slug===e.code)??null;if(!s)return{name:void 0,href:void 0,cover:void 0,photos:[],eyebrow:void 0};let c=e.group?a.find(i=>i.name===e.group):void 0,l=e.finish?s.finishes.find(i=>i.name===e.finish&&i.src):void 0,r,o=[];return c&&c.images.length?(r=c.images[0],o=c.images.slice(1)):(r=l?.src||s.coverImage||void 0,o=[]),{name:s.name,href:`/wheels/${s.slug}`,cover:r,photos:o,eyebrow:e.group||void 0}}function Qv({value:e,onChange:t}){let a=Xv(()=>e??{},[e]),[s,c]=Jv(null),[l,r]=Jv([]),[o,i]=Jv(!1);PR(()=>{let g=!1;return i3().then(b=>{g||c(b)}),()=>{g=!0}},[]),PR(()=>{let g=!1;if(!a.code){r([]);return}return i(!0),TR(a.code).then(b=>{g||(r(n81(b)),i(!1))}),()=>{g=!0}},[a.code]);let n=Xv(()=>s?.find(g=>g.slug===a.code)??null,[s,a.code]),h=Xv(()=>NR(n),[n]),m=s===null;function u(g,b=l){let f={...a,...g};t({...f,...h81(f,s,b)})}function d(g){if(!g){t({});return}let b=s?.find(f=>f.slug===g)??null;u({code:g,category:NR(b)[0]??"",finish:"",group:""},[])}function v(g){t({...a,[g]:!a[g]})}return B6("div",{children:[A2(ER,{label:p("Product"),icon:A2(r81,{}),children:A2(Gn,{value:a.code??"",ariaLabel:p("Product"),readOnly:m,onChange:d,options:[{label:m?p("Loading\u2026"):p("Select a product\u2026"),value:""},...(s??[]).map(g=>({label:g.name,value:g.slug}))]})}),a.code&&B6(_R,{children:[B6("div",{className:`sf-field${a.hideName?" is-hidden":""}`,children:[A2(qn,{label:p("Title / product"),hidden:a.hideName,onToggle:()=>v("hideName")}),B6("div",{style:{display:"flex",alignItems:"center",gap:6,minHeight:30,padding:"0 8px",borderRadius:6,border:"1px solid var(--sf-field-border, rgba(128,128,128,0.3))",opacity:.75,fontSize:13},children:[n?.name??a.name??"\u2014",A2("span",{style:{opacity:.6},children:p("(auto)")})]})]}),B6("div",{className:`sf-field${a.hideProcess?" is-hidden":""}`,children:[A2(qn,{label:p("Category"),hidden:a.hideProcess,onToggle:()=>v("hideProcess")}),A2(Gn,{value:a.category??"",ariaLabel:p("Category"),readOnly:h.length===0,onChange:g=>u({category:g}),options:h.length===0?[{label:p("No categories on this product"),value:""}]:h.map(g=>({label:g,value:g}))})]}),A2(ER,{label:p("Media group"),icon:A2(o81,{}),hint:p("Its name fills the Eyebrow below, and its photos become the card cover and lightbox. No group \u2192 the product\u2019s cover image."),children:A2(Gn,{value:a.group??"",ariaLabel:p("Media group"),readOnly:o,onChange:g=>u({group:g}),options:[{label:o?p("Loading\u2026"):l.length===0?p("Cover image only (no media groups)"):p("Cover image only"),value:""},...l.map(g=>({label:g.label,value:g.name}))]})}),B6("div",{className:`sf-field${a.hideEyebrow?" is-hidden":""}`,children:[A2(qn,{label:B6(_R,{children:[p("Eyebrow")," ",A2("span",{style:{fontWeight:400,opacity:.6},children:p("(from media group)")})]}),hidden:a.hideEyebrow,onToggle:()=>v("hideEyebrow")}),A2("div",{style:{display:"flex",alignItems:"center",gap:6,minHeight:30,padding:"0 8px",borderRadius:6,border:"1px solid var(--sf-field-border, rgba(128,128,128,0.3))",opacity:.75,fontSize:13},children:a.group||"\u2014"})]}),B6("div",{className:`sf-field${a.hideFinish?" is-hidden":""}`,children:[A2(qn,{label:p("Finish"),hidden:a.hideFinish,onToggle:()=>v("hideFinish")}),A2(Gn,{value:a.finish??"",ariaLabel:p("Finish"),onChange:g=>u({finish:g}),options:[{label:p("Default (the product\u2019s default finish)"),value:""},...(n?.finishes??[]).map(g=>({label:g.src?g.name:p("{name} \u2014 no render",{name:g.name}),value:g.name,disabled:!g.src}))]})]})]})]})}import{ProductFieldIcon as m81,SquareIcon as p81,PlacementIcon as u81}from"efficient-easel/icons";import{jsx as Wn}from"react/jsx-runtime";var IR={fields:{_gSource:x("Content source"),fromProduct:l1("Fill from a product",!1,Wn(m81,{})),product:{type:"custom",render:({value:e,onChange:t})=>Wn(Qv,{value:e,onChange:t})},_gMedia:x("Media"),image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},_gText:x("Text"),process:T("Tag"),eyebrow:T("Eyebrow"),name:T("Heading"),meta:T("Meta line"),_gLink:x("Link"),href:H1("Product link"),ratio:g1("Shape",Wn(p81,{}),[{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"},{label:"Landscape (4:3)",value:"landscape"},{label:"Portrait (4:5)",value:"portrait"},{label:"The photo's own shape",value:"auto"}],"square"),captionPlace:g1("Card text",Wn(u81,{}),[{label:"On the photo",value:"overlay"},{label:"Below the photo",value:"below"}],"overlay")},resolveFields:(e,{fields:t})=>{let a=e.props.fromProduct===!0,s={...t};return a?(delete s._gMedia,delete s.image,delete s.photos,delete s._gText,delete s.process,delete s.eyebrow,delete s.name,delete s.meta,delete s._gLink,delete s.href):delete s.product,s}};var RR={fields:{}};import{SettingsField as b81}from"efficient-easel/panel";import{FieldSelect as x81}from"efficient-easel/fields";import{CategoryIcon as z81}from"efficient-easel/icons";import{useEffect as ZR,useRef as y81,useState as Kn}from"react";import{Fragment as d81}from"react";import{jsx as v81,jsxs as f81}from"react/jsx-runtime";var Un=["FusionForge\xAE","Precision Forged","Monoblock Cast"];function jn(e){return kl(e)}function BR(e){let t=e.split("\xAE");return t.length===1?e:t.map((a,s)=>f81(d81,{children:[a,s<t.length-1&&v81(i6,{})]},s))}var ef=Un.map((e,t)=>({key:e,num:String(t+1).padStart(2,"0"),title:BR(e)}));function g81(e){if(e.length===0)return[...Un];let t=new Set(e.map(a=>a.process));return Un.filter(a=>t.has(a))}function gQ1(e){return g81(e).map((t,a)=>({key:t,num:String(a+1).padStart(2,"0"),title:BR(t)}))}var vQ1=Object.fromEntries(Un.map(e=>[e,jn(e)]));import{jsx as Yn,jsxs as w81}from"react/jsx-runtime";var lf=60,cf="collection:";function DR(e){return cf+jn(e)}function $n(e){if(!e||!e.startsWith(cf))return;let t=e.slice(cf.length);return ef.find(a=>jn(a.key)===t)?.key}function jt(e){return e.slug&&e.slug.trim()?e.slug:`cat-${e.id}`}function tf(e,t){return{slug:jt(e),name:e.name,wheels:t.filter(a=>(a.categories??[a.process]).includes(e.name)).slice(0,lf)}}function af(e){return{slug:g7,name:Nk,wheels:e.slice(0,lf)}}function sf(e,t){return{slug:DR(e),name:e,process:e,wheels:t.filter(a=>a.process===e).slice(0,lf)}}function rf({value:e,onChange:t}){let[a,s]=Kn(null),[c,l]=Kn(null),[r,o]=Kn(!1),[i,n]=Kn(!1),h=y81(!0);ZR(()=>(h.current=!0,i3().then(z=>{h.current&&l(z)}),f4().then(z=>{h.current&&s(z)}),()=>{h.current=!1}),[]),ZR(()=>{if(!e?.slug||a===null||c===null)return;let z,k=$n(e.slug);if(k)z=sf(k,c);else if(e.slug===g7)z=af(c);else{let S=a.find(H=>jt(H)===e.slug);z=S?tf(S,c):null}z&&b6(z,e)&&t(z)},[a,c]);let m=z=>{if(!z){t(null);return}let k=$n(z);if(k){c&&t(sf(k,c));return}if(z===g7){c&&t(af(c));return}let S=(a??[]).find(H=>jt(H)===z);S&&c&&t(tf(S,c))},u=()=>{e?.slug&&(o(!0),n(!1),Promise.all([f4(!0),i3(!0)]).then(([z,k])=>{if(!h.current)return;s(z),l(k);let S=$n(e.slug);if(S)t(sf(S,k));else if(e.slug===g7)t(af(k));else{let H=z.find(I=>jt(I)===e.slug);H&&t(tf(H,k))}}).catch(()=>{h.current&&n(!0)}).finally(()=>{h.current&&o(!1)}))},d=c===null,v=e?.wheels?.length??0,g=e?.slug&&e.slug!==g7&&!$n(e.slug)&&!(a??[]).some(z=>jt(z)===e.slug),b=i?"error":r?"loading":"idle",f=p("Storefront \u2192 Categories"),w=i?p("Couldn\u2019t reach {place}.",{place:f}):r?p("Syncing from {place}\u2026",{place:f}):p3("Linked to \u201C{name}\u201D \xB7 {n} product","Linked to \u201C{name}\u201D \xB7 {n} products",v,{name:e?.name??""});return w81(b81,{label:p("Products source"),icon:Yn(z81,{}),children:[Yn(x81,{value:e?.slug??"",ariaLabel:p("Products source"),onChange:m,readOnly:d,options:[{label:p("None"),value:""},{label:p("All products"),value:g7},...ef.map(z=>({label:z.key,value:DR(z.key),group:p("Collections")})),...g?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...(a??[]).map(z=>({label:z.name,value:jt(z),group:p("Categories")}))]}),e?.slug?Yn(E4,{status:b,statusText:w,onRefresh:u,busy:r,hint:p("Auto-fills this grid each time you open the editor. Set how many appear with \u201CWheels to display\u201D. The wheels you pick below are ignored while a source is linked.")}):Yn("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick \u201CAll products\u201D or a category from {place} to auto-fill this grid, or keep \u201CNone\u201D to choose wheels yourself below.",{place:f})})]})}import{useEffect as UR,useId as H81,useMemo as Kt}from"react";import{createContext as C81,useContext as k81,useEffect as M81,useState as OR}from"react";import{jsx as Cc}from"react/jsx-runtime";var of=C81({wheels:[],loading:!1,live:!1});function S81(e,t){return e.find(a=>a.designCode===t)??e.find(a=>a.slug===t)}function GR({wheels:e,children:t}){return Cc(of.Provider,{value:{wheels:e??[],loading:!1,live:!0},children:t})}function qR({children:e}){let[t,a]=OR([]),[s,c]=OR(!0);return M81(()=>{let l=!1;return i3().then(r=>{l||(a(r),c(!1))}).catch(()=>{l||c(!1)}),()=>{l=!0}},[]),Cc(of.Provider,{value:{wheels:t,loading:s,live:!1},children:e})}function nf({code:e,finish:t,wheel:a}){let{wheels:s,loading:c,live:l}=k81(of),r=a??(e?S81(s,e):void 0);return r?Cc(o9,{wheel:r,variant:"catalog",defaultFinish:t},t??""):l?null:Cc("div",{className:"sf-card flex aspect-square w-full items-center justify-center bg-surface-2 p-4 text-center",children:Cc("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:c?p("Loading\u2026"):e||p("Set a design code")})})}function L81(e){if(!e.includes("_"))return e;let t=e.replace(/^_+/,""),a=e.slice(0,e.length-t.length),[s,...c]=t.split("_");return a+s+c.map(l=>l.slice(0,1).toUpperCase()+l.slice(1)).join("")}function hf(e){if(Array.isArray(e))return e.map(hf);if(e&&typeof e=="object"){let t={};for(let[a,s]of Object.entries(e))t[L81(a)]=hf(s);return t}return e}function A81(e){return hf(e)}function WR(e){return e.map(t=>B0(t)==="tyre"?t:A81(t))}import{Fragment as T81,jsx as Y2,jsxs as $t}from"react/jsx-runtime";var jR={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",5:"grid-cols-5 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1",6:"grid-cols-6 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-1"},Xn=[{value:"para",label:"Paragraph size \u2014 13px",cls:"font-mono font-normal uppercase tracking-[0.22em] text-[length:var(--size-label,13px)]"},{value:"sm",label:"Small \u2014 40px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,40px)] max-[800px]:text-[length:var(--size-headingMedium,28px)]"},{value:"md",label:"Medium \u2014 48px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,48px)] max-[800px]:text-[length:var(--size-headingMedium,32px)]"},{value:"lg",label:"Large \u2014 56px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,56px)] max-[800px]:text-[length:var(--size-headingMedium,36px)]"},{value:"xl",label:"Extra large \u2014 64px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,64px)] max-[800px]:text-[length:var(--size-headingMedium,40px)]"}],kc="lg";function F81(e){return(Xn.find(t=>t.value===e)??Xn.find(t=>t.value===kc)).cls}function mf({num:e,catalog:t,kinds:a,title:s,titleSize:c,padTop:l,description:r,link:o,products:i,wheels:n,source:h,columns:m,limit:u,editing:d,capWidth:v,imageBackground:g,spinOnHover:b,coverIndex:f,indexBadge:w,outline:z,showBadge:k,fieldUsage:S,showCardPrice:H,showCardFinishes:I,showCardSizes:P,showCardBuy:D,showCardPage:E,cardImage:F,gap:_}){let Z=Kt(()=>S?j4(S,"alloy-wheel"):void 0,[S]),G=Kt(()=>S?j4(S,"tyre"):void 0,[S]),V=`pg-${H81().replace(/:/g,"")}`,j=jR[Math.min(6,Math.max(1,m??4))]??jR[4],N=typeof u=="number"&&u>0,Q=typeof v=="number",W=Kt(()=>{let z1=t??h?.wheels??null;return z1?WR(z1):null},[t,h]),U=h?.process,i1=!!U,{filters:y1,reportCount:K,reportLugs:c1,reportSizes:b1,reportFinishes:$,vehicle:u1}=so(),{currency:x1}=d0(),X0=i1&&!!y1.process&&y1.process!==U,o0=Kt(()=>W?i1?qM(W,y1,x1,u1.fit):W:null,[W,i1,y1,x1,u1.fit]);UR(()=>{if(i1)return K(V,X0?0:o0?.length??0),()=>K(V,0)},[i1,X0,o0,K,V]);let I1=Kt(()=>{let z1=(o0??[]).filter(M3=>B0(M3)!=="tyre");if(z1.length===0)return!1;let t0=z1.some(M3=>!!M3.process);return z1.some(M3=>!!M3.setWords)||qs({kind:!1,brand:!1,process:t0},Z??[])},[o0,Z]),c0=Kt(()=>({lugs:HM(W??[]),sizes:FM(W??[]),finishes:WC(W??[])}),[W]);UR(()=>(c1(V,c0.lugs),b1(V,c0.sizes),$(V,c0.finishes),()=>{c1(V,[]),b1(V,[]),$(V,[])}),[c0,c1,b1,$,V]);let l0=B3("ProductGrid",_,"both"),X1=`${V} grid${l0.className} bg-[var(--catalog-grid-bg)] ${j}`,X2=o0?o0.length>0?Y2("div",{className:X1,style:l0.style,children:o0.map((z1,t0)=>B0(z1)==="tyre"?Y2(Ys,{item:z1,currency:x1,editing:d,fieldUsage:G},`tyre:${z1.slug}-${t0}`):Y2(o9,{wheel:z1,variant:"catalog"},`${z1.slug}-${t0}`))}):d?Y2("div",{className:"flex min-h-[320px] items-center justify-center rounded bg-surface-2 p-4 text-center",children:Y2("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:p("No products in \u201C{name}\u201D yet",{name:h?.name??""})})}):null:Y2(i,{className:X1,style:l0.style,minEmptyHeight:320}),Q1=o0?o0.length:null,d2=M5(S5(a)),d1=e||s||r||o?$t("div",{className:`${he} sticky top-[var(--sf-header-h,88px)] z-30 mb-[18px] flex items-center justify-between gap-4 max-[800px]:flex-wrap max-[800px]:gap-y-2 border-b border-line bg-bg/95 py-3 backdrop-blur-md ${Q?"":"-mx-[var(--sf-site-gutter,40px)] px-[var(--sf-site-gutter,40px)] max-[800px]:-mx-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]"}`,children:[$t("div",{className:"flex min-w-0 items-end gap-[21px]",children:[e&&Y2("span",{className:"font-mono text-[length:var(--size-label,13px)] leading-none uppercase tracking-[0.22em] text-fg-dim",children:M(e)}),s&&Y2("h2",{className:`${F81(c)} leading-none text-fg max-[800px]:leading-[1] [&>span]:block`,children:Y(s,!1)})]}),(r||o||Q1!==null)&&$t("div",{className:"flex items-center gap-5 max-[800px]:gap-3 min-[800px]:grow min-[800px]:justify-end",children:[r&&Y2("span",{className:"max-w-[340px] truncate font-display text-[length:var(--size-body,13px)] leading-[1.4] text-fg-dim max-[800px]:hidden min-[800px]:w-0 min-[800px]:grow min-[800px]:text-right",children:M(r)}),o&&$t(L1,{href:o.href,className:"inline-flex items-center gap-2 whitespace-nowrap font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:[M(o.text),Y2("span",{"aria-hidden":!0,children:"\u2192"})]}),Q1!==null&&$t("span",{className:"whitespace-nowrap font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:[Q1," ",Q1===1?d2.one:d2.many]})]})]}):null,$1=typeof l=="number"?l:120,u0=l6(w),P0=J6(V,u0),J0=$t(T81,{children:[N&&Y2("style",{children:`.${V} > *:nth-child(n+${u+1}){display:none}`}),P0&&Y2("style",{children:P0}),d1,X2,Y2(Ds,{editing:d})]});if(X0)return null;let q0=Y2("section",{...i1?{[ao]:U}:{},className:"relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-[var(--pg-pt)] pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-[70px] max-[800px]:pb-[70px]",style:{"--pg-pt":`${$1}px`,...J2(F)},children:Q?Y2("div",{style:$z(!1,v)??void 0,children:J0}):J0}),e1=W?q0:d?Y2(qR,{children:q0}):Y2(GR,{wheels:n,children:q0});return Y2(Ln,{imageBackgroundFill:j9(g,e7),spinOnHover:b??!0,coverIndex:f??1,indexBadge:u0,outline:z??r4,showBadge:k??!0,fieldUsage:Z,reserveEyebrow:I1,showCardPrice:H??!0,showCardFinishes:I??!0,showCardSizes:P??!1,showCardBuy:D??!1,showCardPage:E??!1,children:e1})}import{ProductFieldIcon as P81,TextSizeIcon as E81,ColumnsIcon as V81,ListIcon as N81,HashIcon as _81}from"efficient-easel/icons";import{jsx as pf}from"react/jsx-runtime";var uf={products:{type:"slot"}},KR={label:"Product Grid",fields:uf,defaultProps:{dynamic:!1,num:"",title:"",titleSize:kc,padTop:120,description:"",linkText:"",linkHref:"",columns:4,limit:8,showAll:!1,spinOnHover:!0,coverIndex:String(1),outline:r4,indexBadge:l4,showBadge:!0,source:null,fullWidth:!0,pageWidth:_9.default},render:e=>{if(e.dynamic)return pf(i9,{num:y(e.num,U0.num,e.puck),title:y(e.title,A.sectionHeading,e.puck),description:y(e.description,A.body,e.puck),columns:typeof e.columns=="number"?e.columns:3,relationship:q5,cardImage:e.cardImage,outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge??!0,imageBackground:Wy(e.imageBackground),showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage,editing:e.puck?.isEditing});let t=y(e.linkText,U0.link,e.puck),a=e.source,s=R2(e,"full"),c=O1(e.headPlacement)==="own-box",l=o=>c?void 0:o,r=pf(mf,{gap:e.gap,capWidth:s.mode==="page"?s.pageWidth:void 0,num:l(y(e.num,U0.num,e.puck)),title:l(y(e.title,A.sectionHeading,e.puck)),titleSize:e.titleSize,padTop:c?0:e.padTop,description:l(y(e.description,A.body,e.puck)),link:l(t?{text:t,href:a1(e.linkHref)||"#"}:void 0),products:e.products,wheels:e.wheels,source:a?.slug?a:void 0,catalog:e.catalog,kinds:e.kinds,fieldUsage:e.fieldUsage,columns:e.columns,limit:e.showAll?void 0:e.limit,editing:e.puck?.isEditing,imageBackground:e.imageBackground,cardImage:e.cardImage,spinOnHover:e.spinOnHover,coverIndex:Ft(e.coverIndex),outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge??!0,showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage});return s.mode==="page"?pf("div",{className:zs,children:r}):r}};import{jsx as Mc}from"react/jsx-runtime";var $R=x5({top:120,keys:{top:"padTop",bottom:"padBottom"},group:!1,only:"top"}),YR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,Mc(P81,{})),_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),titleSize:g1("Heading size",Mc(E81,{}),Xn,kc),description:O("Body",A.body),_gProducts:x("Products"),kinds:Q9("Product types",we,"None \u2014 this section will be empty"),source:c2(rf),productList:N5("ProductGrid"),products:uf.products,_gLink:x("Link"),linkText:T("Button",U0.link),linkHref:H1("Link"),...Yl({bottomDefault:!1}),...ee(),...te(),_gLayout:x("Grid"),columns:s1("Columns",Mc(V81,{}),1,6,1,4),showAll:l1("Show all items",!1,Mc(N81,{})),limit:s1("Items to display",Mc(_81,{}),1,12,1,8),gap:Z3("ProductGrid"),...$R,...z5("full")},resolveFields:(e,{fields:t,parent:a})=>{let s=W1(t,a,U1),c=e.props,l=G1(s,c.headPlacement,Z1.ProductGrid.headRows);if(!M2()){let o={...l};return delete o._gDynamic,delete o.dynamic,o}if(c.dynamic){let o=new Set([...Jl("Content"),"_gDynamic","dynamic","_gHeader","num","title","titleSize","description","_gLayout","columns",...Object.keys($R),...ae,...se,...ce,...le,...dw,...uw,...gw]),i={};for(let[n,h]of Object.entries(l))o.has(n)&&(i[n]=h);return P7(i,R2(e?.props??{},"full"))}let r={...l};return _r(c.source)||delete r.kinds,c.source?.slug&&(delete r.products,delete r.productList),c.showAll&&delete r.limit,F2(c.linkText).hidden&&delete r.linkHref,P7(r,R2(e?.props??{},"full"))}};import{SettingsField as I81}from"efficient-easel/panel";import{FieldSelect as R81}from"efficient-easel/fields";import{CategoryIcon as B81}from"efficient-easel/icons";import{useEffect as Z81,useMemo as df,useState as D81}from"react";import{jsx as Yt,jsxs as q81}from"react/jsx-runtime";var vf=e=>e.kind==="tyre"?"tyre":"alloy-wheel",Sc=e=>`${e.kind}:${e.slug}`;function XR(e){return e.kind==="tyre"?{kind:"tyre",slug:e.slug,name:e.name,description:e.description??"",eyebrow:e.brand??"",image:e.coverImage??null,finishes:[],prices:e.prices,href:`/tyres/${e.slug}`}:{kind:"wheel",slug:e.slug,name:e.name,description:e.description??"",eyebrow:e.process,image:e.coverImage??null,finishes:e.finishes.filter(r7).map(t=>({name:t.name,color:t.color,src:t.src})),prices:e.prices,href:`/wheels/${e.slug}`}}function gf(e,t){let a=vf(t);return e.find(s=>s.kind===a&&s.slug===t.slug)}function JR(e){return QR(e)?p("Category \u2014 wheels only"):p("Category")}var QR=e=>!!(e?.some(t=>t.kind==="tyre")&&e.some(t=>t.kind==="alloy-wheel")),O81=e=>p3("{n} size","{n} sizes",e);function G81({rows:e,category:t,value:a,loading:s,currency:c}){let l=e??[],r=l.filter(d=>d.kind==="alloy-wheel"),o=l.filter(d=>d.kind==="tyre"),i=r.length>0&&o.length>0,n={value:"",label:s?p("Loading\u2026"):p("Pick a product\u2026")},h=a&&!(e!==null&&gf(e,a))?[{value:Sc({kind:vf(a),slug:a.slug}),label:s?a.name:p("{name} (unavailable)",{name:a.name})}]:[],m=Bv(r,t).map(d=>{let v=h7(d.prices[c],d.msrpPrices?.[c]);return{value:Sc({kind:"alloy-wheel",slug:d.slug}),label:d.name,...i?{group:p("Wheels")}:{},thumb:d.coverImage??null,...v.priced?{meta:B2(v.unit,c)}:{}}}),u=o.map(d=>({value:Sc(d),label:d.name,...i?{group:p("Tyres")}:{},thumb:d.coverImage??null,meta:O81(d.variantCount)}));return[n,...h,...m,...u]}function ff({value:e,onChange:t}){let a=C4(),{rows:s,loading:c,refreshing:l,errored:r,refresh:o}=lt({load:kt,resolve:gf,snapshot:XR,value:e,onChange:t}),[i,n]=D81(null);Z81(()=>{let H=!1;return f4().then(I=>{H||n(I)}),()=>{H=!0}},[]);let{currency:h}=d0(),m=df(()=>s&&e?gf(s,e)??null:null,[s,e]),u=df(()=>(s??[]).filter(H=>H.kind==="alloy-wheel"),[s]),{category:d,setCategory:v,categoryNames:g}=J7(u,i,m?.kind==="alloy-wheel"?m:null),b=!!e?.slug&&s!==null&&!m,f=df(()=>G81({rows:s,category:d,value:e,loading:c,currency:h}),[s,d,e,c,h]),w=H=>{if(!H){t(null);return}let I=(s??[]).find(P=>Sc(P)===H);I&&t(XR(I))},z=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},k=r?"error":l?"loading":"idle",S=r?p("Couldn\u2019t reach the product catalog."):l?p("Syncing from the catalog\u2026"):b?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):p("Linked to \u201C{name}\u201D \xB7 title, description, category, price & image follow the product.",{name:e?.name??""});return q81("div",{children:[Yt(O9,{label:"Product",options:f,fallback:"",value:e?Sc({kind:vf(e),slug:e.slug}):"",onChange:w,placeholder:"Search products\u2026"}),Yt(I81,{label:JR(s),icon:Yt(B81,{}),children:Yt(R81,{value:d,ariaLabel:JR(s),onChange:v,readOnly:c,options:[{label:QR(s)?p("All wheel categories"):p("All products"),value:I6},...g.map(H=>({label:H,value:H}))]})}),e?.slug?Yt(E4,{status:k,statusText:S,onRefresh:o,busy:l,edit:{label:p("Edit product \u270E"),onClick:z},hint:p("The whole hero comes from the product record \u2014 title, price, pictures, options and Add to Cart. Edit the product in the Products database and this hero updates to match.")}):Yt("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("This hero always shows a real product. Pick one to fill the title, price, pictures, options and Add to Cart from the catalog.")})]})}import{useEffect as eB,useMemo as tB,useState as bf}from"react";import{SettingsField as W81}from"efficient-easel/panel";import{FieldSelect as U81}from"efficient-easel/fields";import{Fragment as X81,jsx as Jn}from"react/jsx-runtime";var d9="__all__",xf="";function j81(e){return(e??[]).filter(t=>zc.includes(t.kind))}var K81=Zl("one row per level from one list \u2014 the gutter would repeat one mark down the column and say nothing; the group heading carries it once GG, 2026-09-23"),Qn=e=>typeof e.brand=="string"?e.brand.trim():"";function aB(e,t){if(e.kind!=="alloy-wheel"||!t)return;let a=e,s=h7(a.prices?.[t],a.msrpPrices?.[t]);return s.priced?B2(s.unit,t):void 0}function $81({rows:e,brand:t,kind:a,slug:s,loading:c=!1,currency:l=""}){let r=e??[],o=[...new Set(r.map(Qn).filter(Boolean))].sort((g,b)=>g.localeCompare(b)),i=t===d9?r:r.filter(g=>Qn(g)===t),n=D3.filter(g=>i.some(b=>b.kind===g)),h=a===d9?i:i.filter(g=>g.kind===a),m=new Set(h.map(g=>g.kind)).size>1,u=h.map(g=>({value:g.slug,label:g.name,...m?{group:p(h4[g.kind])}:{},thumb:g.coverImage??null,...aB(g,l)?{meta:aB(g,l)}:{}})),d=s&&!h.some(g=>g.slug===s)?[{value:s,label:c?s:p("{slug} (not in this list)",{slug:s})}]:[],v=[];return o.length>1&&v.push({key:"brand",label:p("Brand"),options:[{value:d9,label:p("All brands")},...o.map(g=>({value:g,label:g}))]}),n.length>1&&v.push({key:"kind",label:p("Product type"),options:[{value:d9,label:p(QC)},...n.map(g=>({value:g,label:p(h4[g])}))]}),v.push({key:"product",label:p("Product"),options:[{value:xf,label:c?p("Loading\u2026"):p("Generic placeholder")},...d,...u]}),v}function zf(){let[e,t]=bf(null),[a,s]=bf(d9),[c,l]=bf(d9),r=Cv(),o=Nn()??xf;eB(()=>{let u=!1;return kt().then(d=>{u||t(d)}).catch(()=>{u||t([])}),()=>{u=!0}},[]);let{currency:i}=d0(),n=tB(()=>j81(e),[e]);eB(()=>{let u=n.find(d=>d.slug===o);u&&Qn(u)&&s(Qn(u))},[o,n]);let h=tB(()=>$81({rows:n,brand:a,kind:c,slug:o,loading:e===null,currency:i}),[n,a,c,o,e,i]),m={brand:u=>{s(u),l(d9)},kind:l,product:u=>AI(r,u)};return Jn(X81,{children:h.map(u=>Jn(W81,{label:u.label,icon:jy(K81),hint:u.key==="product"?p(Y81):void 0,children:u.key==="product"?Jn(O9,{bare:!0,label:u.label,options:u.options,fallback:xf,value:o,onChange:m.product,placeholder:p("Search your catalog\u2026")}):Jn(U81,{value:u.key==="brand"?a:c,ariaLabel:u.label,onChange:d=>m[u.key](d),options:u.options.map(d=>({label:d.label,value:d.value}))})},u.key))})}var Y81="Only for looking at while you design. Shoppers always see the product they opened.";import{PlacementIcon as t91,CarIcon as a91,LayoutIcon as s91,ColumnWidthsIcon as c91,AlignLeftIcon as l91,SpecTableIcon as r91,DollarIcon as o91,GridIcon as i91,ImageIcon as n91}from"efficient-easel/icons";var Xt="top",yf=[{label:"Under the title",value:"top"},{label:"Below the specs",value:"belowSpecs"}];function sB(e){return I2(yf,Xt,e)}var J81=["split","imageRight","stacked"],e8="split";function Jt(e){return J81.includes(e)?e:e8}var g9="left";function eh(e){return e==="center"?"center":"left"}var wf=35,Cf=70,t8=50;function th(e){let t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?Math.min(Cf,Math.max(wf,Math.round(t))):t8}var Q81=["main","thumbs","tiled"],a8="thumbs";function ah(e){return Q81.includes(e)?e:a8}var e91=["contain","cover"],s8="contain";function sh(e){return mt(e,s8)}function cB(){return e91.map(e=>({label:xd[e],value:e}))}function lB(e,t){return t?"contain":e}import{jsx as Q5}from"react/jsx-runtime";var h91=()=>({type:"custom",render:()=>Q5(zf,{})});function m91(e){let t=e?.data?.root;return zc.includes(sL(t?.props))}var rB={fields:{_gSource:x("Product"),source:c2(ff),_gPreview:x(Xl),previewPick:h91(),_gPriceLine:x("Price"),pricePlacement:g1("Price position",Q5(t91,{}),yf,Xt),_gBehaviour:x("Behavior"),showVehicleFitment:l1("Vehicle fitment",!0,Q5(a91,{})),_gArrangement:x("Arrangement"),heroLayout:v1("Layout",Q5(s91,{}),[{label:"Split",value:"split"},{label:"Image right",value:"imageRight"},{label:"Stacked",value:"stacked"}],e8),imageRatio:s1("Image / buy ratio",Q5(c91,{}),wf,Cf,1,t8,"%"),textAlign:v1("Alignment",Q5(l91,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"}],g9),_gShow:x("Show in the buy box"),showSpecTable:l1("Spec table",!0,Q5(r91,{})),showPriceQuote:l1("Price / quote",!0,Q5(o91,{})),_gImageGallery:x("Image gallery"),galleryMode:v1("Gallery",Q5(i91,{}),[{label:"Main only",value:"main"},{label:"Main + thumbs",value:"thumbs"},{label:"Tiled",value:"tiled"}],a8),imageFit:v1(yi,Q5(n91,{}),cB(),s8)},resolveFields:(e,{fields:t,appState:a})=>{let s=e.props,c={...t};if(Jt(s.heroLayout)==="stacked"&&delete c.imageRatio,!M2())return delete c._gPreview,delete c.previewPick,c;let l=c,r=new Set([...ae,...se,...ce,...le,"_gPreview","previewPick","_gPriceLine","pricePlacement","_gBehaviour","showVehicleFitment","_gArrangement","heroLayout","imageRatio","textAlign","_gShow","showSpecTable","showPriceQuote","_gImageGallery","galleryMode","imageFit"]);m91(a)||(r.delete("_gPreview"),r.delete("previewPick"));let o={};for(let[i,n]of Object.entries(l))r.has(i)&&(o[i]=n);return re(o)}};import{Button as u91}from"efficient-shell/ui";import{useEasel as d91}from"efficient-easel/easel";import{useEasel as p91}from"efficient-easel/easel";function ch(){let{selectedItem:e,getSelectorForId:t,getItemById:a}=p91(i=>i),s=e?.props?.id;if(!s)return null;let c=t(s)?.zone,l=c&&c.includes(":")?c.split(":")[0]:null,o=(l?a(l):void 0)?.props?.source;return o?.slug?o.name||"the selected source":null}import{jsx as oB,jsxs as g91}from"react/jsx-runtime";function kf(){let e=C4(),t=Ui(),{selectedItem:a}=d91(o=>o),s=a?.props?.code??"",c=(t??[]).find(o=>o.slug===s)??null,l=ch()!==null;return!c||l?null:g91("div",{className:"sf-blogsource",children:[oB(u91,{variant:"secondary",size:"sm",className:"sf-blogsource-action",onClick:()=>e.send("storefront-editor:open-product",{slug:c.slug,name:c.name}),children:p("Edit product \u270E")}),oB("p",{className:"es-field-hint sf-hint-keep",children:p("Price and details come from the product record \u2014 edit them in the Products database and this block updates to match. The name follows the product\u2019s design name unless it\u2019s overridden per storefront in {place}.",{place:p("Storefront \u2192 Catalog")})})]})}import{useEasel as v91}from"efficient-easel/easel";import{SettingsField as f91}from"efficient-easel/panel";import{FieldSelect as b91}from"efficient-easel/fields";import{FinishIcon as x91}from"efficient-easel/icons";import{jsx as Lc,jsxs as z91}from"react/jsx-runtime";function Mf({value:e,onChange:t}){let a=Ui(),{selectedItem:s}=v91(n=>n),c=s?.props?.code??"",l=a===null,r=(a??[]).find(n=>n.slug===c)?.finishes??[],o=r.filter(r7).map(n=>n.name),i=o.includes(e??"")?e:"";return z91("div",{children:[Lc(f91,{label:p("Finish"),icon:Lc(x91,{}),hint:p("Pinning one overrides the section\u2019s Cover image."),children:Lc(b91,{value:i,ariaLabel:p("Finish"),onChange:t,readOnly:l||r.length===0,options:[{label:l?p("Loading\u2026"):r.length===0?p("No finishes on this product"):p("Default (the product's default finish)"),value:""},...r.map(n=>({label:n.src?n.name:p("{name} \u2014 no image",{name:n.name}),value:n.name,disabled:!n.src}))]})}),!l&&r.length===0&&c&&Lc("p",{className:"es-field-hint sf-hint-keep",children:p("This product has no finishes yet, so its card falls back to the product image \u2014 or an empty placeholder when it has none. Add finishes to the product record, then give each one an image.")}),!l&&r.length>0&&o.length===0&&Lc("p",{className:"es-field-hint sf-hint-keep",children:p("None of this product\u2019s finishes has an image, so none can be shown on the card. Add an image to a finish on the product record to pick it here.")})]})}import{SettingsField as iB}from"efficient-easel/panel";import{FieldSelect as nB}from"efficient-easel/fields";import{BlockProductIcon as y91,CategoryIcon as w91}from"efficient-easel/icons";import{useEffect as C91,useMemo as k91,useState as hB}from"react";import{jsx as c8,jsxs as mB}from"react/jsx-runtime";function Sf({value:e,onChange:t}){let[a,s]=hB(null),[c,l]=hB(null);C91(()=>{let v=!1;return i3().then(g=>{v||s(g)}),f4().then(g=>{v||l(g)}),()=>{v=!0}},[]);let r=k91(()=>a&&e?a.find(v=>v.slug===e)??null:null,[a,e]),{category:o,setCategory:i,categoryNames:n,filtered:h}=J7(a,c,r),m=a===null,u=ch(),d=u!==null;return mB("div",{children:[d&&c8("p",{className:"es-field-hint sf-hint-keep",style:{marginBottom:8},children:R5(p("Disabled because this grid\u2019s {source} is set to \u201C{name}\u201D. The grid fills itself from that source automatically. To pick wheels here, set {source} back to \u201CNone\u201D.",{name:u??""}),{source:c8("strong",{children:p("Products source")})})}),mB("div",{className:d?"sf-locked":void 0,children:[c8(iB,{label:p("Category"),icon:c8(w91,{}),children:c8(nB,{value:o,ariaLabel:p("Category"),onChange:i,readOnly:m||d,options:[{label:p("All products"),value:I6},...n.map(v=>({label:v,value:v}))]})}),c8(iB,{label:p("Product"),icon:c8(y91,{}),children:c8(nB,{value:e??"",ariaLabel:p("Product"),onChange:t,readOnly:m||d,options:[{label:m?p("Loading\u2026"):h.length===0?p("No products in this category"):p("Select a product\u2026"),value:""},...h.map(v=>({label:v.name,value:v.slug}))]})})]})]})}import{jsx as Lf}from"react/jsx-runtime";var pB={fields:{code:{type:"custom",render:({value:e,onChange:t})=>Lf(Sf,{value:e,onChange:t})},finish:{type:"custom",render:({value:e,onChange:t})=>Lf(Mf,{value:e,onChange:t})},_editProduct:{type:"custom",render:()=>Lf(kf,{})}},resolveFields:(e,{fields:t,parent:a})=>{let s={...t},c=a?.props?.source,l=typeof e.props.code=="string"?e.props.code:"";return(c?.slug||!l)&&(delete s.finish,delete s._editProduct),s}};import{EyeIcon as S91,HashIcon as L91,ColumnsIcon as A91}from"efficient-easel/icons";import{jsx as M91}from"react/jsx-runtime";var Ac={footnote:"A note about how these are matched.",footnoteLinkText:"Enquire"},uB={label:"Related Products",defaultProps:{num:"",title:"",description:"",footnote:"",footnoteLinkText:"",footnoteLinkHref:"",cardCount:fc,columns:3,relationship:q5},render:e=>{let t=O1(e.headPlacement)==="own-box",a=c=>t?void 0:c,s=R2(e,"full");return M91(i9,{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,capWidth:s.mode==="page"?s.pageWidth:void 0,columns:typeof e.columns=="number"?e.columns:3,cardCount:Tn(e.cardCount),relationship:typeof e.relationship=="string"?e.relationship:q5,footnote:y(e.footnote,Ac.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,Ac.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),cardImage:e.cardImage,coverIndex:Ft(e.coverIndex),imageBackground:e.imageBackground,spinOnHover:e.spinOnHover,outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge,editing:e.puck?.isEditing})}};import{jsx as Af}from"react/jsx-runtime";var dB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),description:O("Body",A.body),_gFootnote:x("Footnote"),footnote:O("Footnote",Ac.footnote),footnoteLinkText:T("Footnote button",Ac.footnoteLinkText),footnoteLinkHref:H1("Footnote link"),...ee(),...te(),_gLayout:x("Grid"),relationship:g1("Show",Af(S91,{}),hI,q5),cardCount:s1("Cards to show",Af(L91,{}),pv,bc,1,fc),columns:s1("Columns",Af(A91,{}),2,4,1,3),...z5("full")},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,c={...t};if(uI(typeof s.relationship=="string"?s.relationship:q5))for(let l of pI)delete c[l];return G1(W1(c,a,U1),s.headPlacement,Z1.RelatedProducts.headRows)}};import{StylesIcon as H91}from"efficient-easel/icons";import{jsx as F91}from"react/jsx-runtime";var gB={fields:{_gStyle:x("Style"),style:v1("Show as",F91(H91,{}),Mn,"icon")}};import{SettingsField as vB}from"efficient-easel/panel";import{FieldSelect as fB}from"efficient-easel/fields";import{BlockProductIcon as T91,CategoryIcon as P91}from"efficient-easel/icons";import{useEffect as E91,useMemo as V91,useState as N91}from"react";import{jsx as l8,jsxs as _91}from"react/jsx-runtime";function bB(e){return{slug:e.slug,name:e.name,process:e.process,spokes:e.spokes,mesh:e.mesh,spec:e.spec,finishes:e.finishes.map(t=>({name:t.name,image:s4(t.angles?.[0]??t.src)??null}))}}function Hf({value:e,onChange:t}){let a=C4(),{rows:s,loading:c,refreshing:l,errored:r,refresh:o}=lt({load:i3,resolve:(S,H)=>S.find(I=>I.slug===H.slug),snapshot:bB,value:e,onChange:t}),[i,n]=N91(null);E91(()=>{let S=!1;return f4().then(H=>{S||n(H)}),()=>{S=!0}},[]);let h=V91(()=>s&&e?.slug?s.find(S=>S.slug===e.slug)??null:null,[s,e?.slug]),{category:m,setCategory:u,categoryNames:d,filtered:v}=J7(s,i,h),g=!!e?.slug&&s!==null&&!h,b=S=>{if(!S){t(null);return}let H=(s??[]).find(I=>I.slug===S);H&&t(bB(H))},f=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},w=!!e?.spec,z=r?"error":l?"loading":"idle",k=r?p("Couldn\u2019t reach the product catalog."):l?p("Syncing from the catalog\u2026"):g?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):w?p("Linked to \u201C{name}\u201D \xB7 every spec row follows the product.",{name:e?.name??""}):p("Linked to \u201C{name}\u201D \u2014 this product has no spec data yet.",{name:e?.name??""});return _91("div",{children:[l8(vB,{label:p("Category"),icon:l8(P91,{}),children:l8(fB,{value:m,ariaLabel:p("Category"),onChange:u,readOnly:c,options:[{label:p("All products"),value:I6},...d.map(S=>({label:S,value:S}))]})}),l8(vB,{label:p("Product"),icon:l8(T91,{}),children:l8(fB,{value:e?.slug??"",ariaLabel:p("Product"),onChange:b,readOnly:c,options:[{label:c?p("Loading\u2026"):p("None (write the rows yourself)"),value:""},...g?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...v.map(S=>({label:S.name,value:S.slug}))]})}),e?.slug?l8(E4,{status:z,statusText:k,onRefresh:o,busy:l,edit:{label:p("Edit product \u270E"),onClick:f},hint:p("Every spec row (lug count, bolt pattern, offset, center bore, load rating, bump profile\u2026) comes from the product record \u2014 edit its part numbers in the Products database and this table updates to match. You still choose which finish to picture and an optional size.")}):l8("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a product to fill the spec table from the catalog, or keep \u201CNone\u201D to write the rows yourself.")})]})}import{ProductFieldIcon as se1,FinishIcon as FB,DiagramIcon as ce1}from"efficient-easel/icons";import{useId as B91,useState as Z91}from"react";import{jsx as lh,jsxs as I91}from"react/jsx-runtime";function Ff({id:e}){return I91("defs",{children:[lh("marker",{id:`${e}-L`,viewBox:"0 0 10 10",refX:2,refY:5,markerWidth:6,markerHeight:6,orient:"auto",children:lh("path",{d:"M10,0 L0,5 L10,10 z",fill:"currentColor"})}),lh("marker",{id:`${e}-R`,viewBox:"0 0 10 10",refX:8,refY:5,markerWidth:6,markerHeight:6,orient:"auto",children:lh("path",{d:"M0,0 L10,5 L0,10 z",fill:"currentColor"})})]})}import{jsx as R91}from"react/jsx-runtime";function Tf({nodeId:e,children:t}){return R91(st,{nodeId:e,sectionType:"SpecTable",children:t})}import{Fragment as G91,jsx as j0,jsxs as E3}from"react/jsx-runtime";function P3(e,t){return e?{[Fw]:t}:{}}function D91({editing:e,nodeId:t,children:a}){return!e||!t?j0(G91,{children:a}):j0(Tf,{nodeId:t,children:a})}function xB({row:e,topBorder:t,editing:a}){return E3("div",{className:`flex items-baseline justify-between gap-6 py-3.5 font-mono text-[length:var(--size-label,14px)] tracking-[0.05em] ${t?"border-t border-line":""}`,children:[j0("span",{...P3(a,"rowLabel"),className:"uppercase text-fg-dim",children:e.label}),j0("span",{...P3(a,"rowValue"),className:`text-right ${e.accent?"text-accent":"text-fg"}`,children:e.value})]})}function O91({diagram:e,editing:t}){let[a,s]=Z91(!1),c=`spec-${B91().replace(/:/g,"")}`,{wheelName:l,imageSrc:r,diameter:o,width:i,offset:n,holes:h,pcd:m,spokes:u,mesh:d,bore:v}=e,g=!!r&&!a;return E3("div",{className:"sf-card bg-surface p-6 max-[1100px]:mt-8",children:[j0("div",{...P3(t,"diagramTitle"),className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.25em] text-fg-dim",children:"Wheel Dimension Diagram"}),E3("div",{className:"relative flex aspect-square items-center justify-center",children:[E3("svg",{viewBox:"0 0 320 320",className:"absolute inset-0 h-full w-full text-fg-dim",fill:"none",stroke:"currentColor",children:[j0("line",{x1:40,y1:20,x2:280,y2:20,strokeWidth:1,markerStart:`url(#${c}-L)`,markerEnd:`url(#${c}-R)`}),j0("line",{x1:40,y1:15,x2:40,y2:25,strokeWidth:1}),j0("line",{x1:280,y1:15,x2:280,y2:25,strokeWidth:1}),j0(Ff,{id:c})]}),g?j0("img",{src:r,alt:`${l} \u2014 face`,onError:()=>s(!0),loading:"lazy",className:"relative z-[1] block h-[80%] w-[80%] object-contain"}):j0(C8,{spokes:u,mesh:d,className:"relative z-[1] block h-[72%] w-[72%] text-accent"}),E3("span",{...P3(t,"diagramCallout"),className:"absolute top-1.5 left-1/2 z-20 -translate-x-1/2 bg-surface px-2 font-mono text-[length:var(--size-label,12px)] tracking-[0.2em] text-accent",children:["\u2300 ",ep(o)]}),E3("span",{...P3(t,"diagramCallout"),className:"absolute bottom-1.5 left-1/2 z-20 -translate-x-1/2 bg-surface px-2 font-mono text-[length:var(--size-label,12px)] tracking-[0.2em] text-fg",children:["WIDTH ",ep(i)]})]}),E3("div",{className:"mt-4 grid grid-cols-5 gap-3 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-fg-dim max-[480px]:grid-cols-3",children:[E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Holes"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:h})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"PCD"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:m})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Spokes"}),E3("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:[u,d?" + Mesh":""]})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Bore"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:v})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"ET"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-accent",children:n})]})]})]})}function Qt({num:e,title:t,description:a,rows:s,diagram:c,editing:l=!1,omitHead:r=!1,nodeId:o,...i}){let n=(s??[]).filter(m=>(m?.label??"").trim()||(m?.value??"").trim()),h=n.length>0?n:l?[{label:p("Label"),value:p("Value")}]:[];return j0("section",{className:E0(i)?r?"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":r?"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:E3(D91,{editing:l,nodeId:o,children:[r?null:j0(s0,{num:e?M(e):void 0,title:t?Y(t,!1):void 0,description:a?M(a):void 0,accent:!0}),c?E3("div",{className:"grid grid-cols-[1fr_400px] gap-12 max-[1100px]:grid-cols-1",children:[j0("div",{children:h.map((m,u)=>j0(xB,{row:m,topBorder:u>0,editing:l},u))}),j0(O91,{diagram:c,editing:l})]}):j0("div",{className:"grid grid-cols-2 gap-x-16 max-[900px]:grid-cols-1",children:h.map((m,u)=>j0(xB,{row:m,topBorder:!0,editing:l},u))})]})})}import{useEffect as j91,useState as K91}from"react";function rh(e){return e.rollingNoiseDb===null?null:e.rollingNoiseClass?`${e.rollingNoiseDb} dB (${e.rollingNoiseClass})`:`${e.rollingNoiseDb} dB`}function q91(e){return`/api/tire-catalog/models/${encodeURIComponent(e)}/`}function W91(e,t,a){let s=(a.eprel_url??"").trim();if(!s)return null;let c=(a.energy_class??"").trim(),l=(a.wet_grip_class??"").trim(),r=typeof a.external_rolling_noise_value=="number"?a.external_rolling_noise_value:null;return!c&&!l&&r===null?null:{size:e,registrationNumber:t,fuelClass:c,wetGripClass:l,rollingNoiseDb:r,rollingNoiseClass:(a.external_rolling_noise_class??"").trim(),iceGrip:a.ice_tire===!0,severeSnow:a.severe_snow_tire===!0,loadIndicator:(a.load_indicator??"").trim(),eprelUrl:s}}async function U91(e){let t=(e.eprelRegistrationNumber??"").trim();if(!t)return null;try{let a=await o7(q91(t),{baseUrl:gr});return W91(e.size,t,a)}catch{return null}}async function zB(e){return(await Promise.all(e.map(U91))).filter(a=>a!==null)}function oh(e){let[t,a]=K91([]),s=e.map(c=>c.eprelRegistrationNumber??"").join(",");return j91(()=>{let c=!0;return zB(e).then(l=>{c&&a(l)}),()=>{c=!1}},[s]),t}var $91={"haste-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"force-6":{lugs:6,sizes:[20,22,24],widths:[9,9.5,10],pcds:["6\xD7135","6\xD7139.7","6\xD7135-139.7"],etRange:[20,25],centreBores:[87.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL82",bumpProfile:"H2",rimProfile:"34\xD716\xD760\xB0"},"speed-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vortex-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vector-iii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[32,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"blitz-ii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"thrust-ii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"torque-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[42,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"turbine-ii":{lugs:5,sizes:[20,22],widths:[8.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[71.5,72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},blitz:{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"frixion-5":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"frixion-6":{lugs:6,sizes:[20,22,24],widths:[9,9.5,10],pcds:["6\xD7135","6\xD7139.7","6\xD7135-139.7"],etRange:[20,25],centreBores:[87.1],loadRating:"690\u2013880 kg / 1,520\u20131,940 lbs",cap:"CP506AL82",bumpProfile:"EH2+",rimProfile:"34\xD716\xD760\xB0"},rotor:{lugs:5,sizes:[20,22],widths:[8.5,9,10,10.5],pcds:["5\xD7112-114.3","5\xD7115","5\xD7120","5\xD7127"],etRange:[15,40],centreBores:[71.5,72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP509PS73",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vector-ii":{lugs:5,sizes:[19,20],widths:[8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},torque:{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"}};function yB(e){return $91[e]}function r8(e){return e&&e.trim()?e:"\u2014"}function wB(e){return e[0]?.replace(/^\s*\d+\s*[×x]\s*/,"")||"\u2014"}function CB(e,t,a,s,c){let l=_e(c?.boltPattern).holes,r=l!=null&&l>0?l:e.lugs,o=Ba(r),i=e.pcds.length?e.pcds.join(" \xB7 "):"\u2014",n=e.centreBores.length?`${e.centreBores.join(" / ")} mm`:"\u2014",h=e.etRange.length>=2?Pr(e.etRange[0],e.etRange[1]):"\u2014",m=s??"",u=c?js(c):"\u2014";return{rows:[{label:"Your Selection",value:"\u2014",accent:!0},{label:"Finish",value:a,fieldKey:"wheel_finish_ref"},{label:"Size",value:m},{label:"Wheel Spec",value:u},{label:"Lug Count",value:r8(o&&`${o}-lug`),fieldKey:"holes"},{label:"Bolt Pattern",value:i,fieldKey:"bolt_pattern"},{label:"Offset (ET)",value:h,fieldKey:"et"},{label:"Process",value:r8(t),fieldKey:Se},{label:"Centre Bore",value:n,fieldKey:"center_bore"},{label:"Load Rating",value:r8(e.loadRating),fieldKey:"load_rating"},{label:"Bump Profile",value:r8(e.bumpProfile),fieldKey:"hump"},{label:"Rim Profile",value:r8(e.rimProfile),fieldKey:"flange"},{label:"Cap Code",value:r8(e.cap),fieldKey:"cap_code"}],size:m}}function Pf(e){return e.length?e[Math.ceil(e.length/2)-1]:void 0}function Y91(e,t){let a=e?.diameter??Pf(t?.sizes??[]),s=e?.width??Pf(t?.widths??[]),c=t?.etRange??[],[l,r]=c,o=e?.et??(c.length>=2&&l===r?l:void 0),i=n=>r8(n!=null?P2(n):void 0);return{diameter:i(a),width:i(s),offset:i(o)}}function kB(e,t){let a=e?.centreBore??Pf(t.centreBores);return{...Y91(e,t),bore:r8(a!=null?`${a} mm`:void 0)}}function MB(e){return{slug:e.slug,name:e.name,process:e.process,spokes:e.spokes,mesh:e.mesh,spec:e.spec??null,finishes:e.finishes.map(t=>({name:t.name,image:t.src||t.angles?.[0]||null})),coverImage:e.coverImage??null,variants:e.variants}}function ih(e,t,a){let s=e?.spec;if(!e||!s)return{rows:[],diagram:null};let c=e.finishes.find(h=>h.name===t)??e.finishes[0],l=At(e.variants??[],c?.name,a),{rows:r,size:o}=CB(s,e.process,c?.name??"\u2014",a,l),i=kB(l,s),n={wheelName:e.name,imageSrc:c?.image??e.coverImage??null,...i,holes:Ba(s.lugs),pcd:wB(s.pcds),spokes:e.spokes,mesh:e.mesh};return{rows:r,diagram:n}}function SB(e,t,a){let s=_n(e),c=yB(e);if(!s||!c)return{rows:[],diagram:null};let l=Wt(e),r=s.finishes.find(m=>m.name===t)??s.finishes[0],{rows:o,size:i}=CB(c,s.process,r?.name??"\u2014",a,void 0),n=kB(void 0,c),h={wheelName:s.name,imageSrc:r?.angles?.[0]??r?.src??null,...n,holes:l[0]?.holes?.toString()??Ba(c.lugs),pcd:l[0]?.pcd??wB(c.pcds),spokes:s.spokes,mesh:s.mesh};return{rows:o,diagram:h}}function X91(e){let{brand:t,variant:a,euLabel:s}=e;if(!a)return[];let c=n4(a.size),l=a.specs,r=l;return[["size","Size",a.size],["section_width","Section Width",c?`${c.width} mm`:""],["aspect_ratio","Aspect Ratio",c?`${c.profile}`:""],["rim_diameter","Rim Diameter",c?`${c.rim}"`:""],["construction","Construction",l.construction],["load_index","Load Index",l.loadIndex],["speed_rating","Speed Rating",l.speedRating],["max_load_lbs","Max Load",r.maxLoad??""],["max_psi","Max Pressure",r.maxPressure??""],["tread_depth","Tread Depth",r.treadDepth??""],["overall_diameter","Overall Diameter",r.overallDiameter??""],["tread_pattern","Tread Pattern",l.treadPattern],["tire_type","Type",l.tireType],["brand","Manufacturer",t],["","Fuel Efficiency",s?.fuelClass??""],["","Wet Grip",s?.wetGripClass??""],["","Noise",s&&rh(s)||""],["","Snow Grip",s?.severeSnow?"Yes":""],["","Ice Grip",s?.iceGrip?"Yes":""],["","Reinforced",s?.loadIndicator??""]]}function LB(e){let t=[];for(let[a,s,c]of X91(e)){let l=(c??"").trim();l&&t.push(a?{label:s,value:l,fieldKey:a}:{label:s,value:l})}return{rows:t}}import{jsx as nh}from"react/jsx-runtime";var J91=["alloy-wheel","tyre"],Q91=[],ee1=[];function te1(e,t,a){let s=e.variants??[];return(t?s.find(c=>c.sku===t):void 0)??(a?s.find(c=>c.size===a):void 0)??s[0]??null}function Ef(e){return nh(z2,{kinds:J91,type:"SpecTable",editing:e.editing,children:nh(ae1,{...e})})}function ae1({num:e,title:t,description:a,showDiagram:s=!0,editing:c=!1,nodeId:l,omitHead:r=!1}){let o=$0(),i=z3(c&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null,m=oh(h?.variants??Q91),u=o?.fieldUsage??ee1;if(h){let f=te1(h,o?.selection.part?.id,o?.selection.shown.size),w=m.find(k=>k.size===f?.size)??null,z=LB({brand:h.brand,variant:f,euLabel:w});return nh(Qt,{num:e,title:t,description:a,rows:Jm(z.rows,u),diagram:null,editing:c,nodeId:l,omitHead:r})}let d=n?.kind==="alloy-wheel"?n.source:null,v=o?o.selection.shown.finish:d?.finishes[0]?.name,g=o&&d?D7(d,o.selection.part)?.size??void 0:void 0,b=d?ih(MB(d),v,g):{rows:[],diagram:null};return nh(Qt,{num:e,title:t,description:a,rows:Jm(b.rows,u),diagram:s?b.diagram:null,editing:c,nodeId:l,omitHead:r})}import{jsx as AB}from"react/jsx-runtime";var e6={num:A.sectionNumber,title:"Specifications *table.*",description:A.body},HB={label:"Spec Table",defaultProps:{dynamic:!1,num:"",title:"",description:"",source:null,finish:"",size:"",showDiagram:!0,rows:[]},render:e=>{let t=O1(e.headPlacement)==="own-box",a=h=>t?void 0:h;if(e.dynamic)return AB(Ef,{nodeId:typeof e.id=="string"?e.id:void 0,num:a(y(e.num,e6.num,e.puck)),title:a(y(e.title,e6.title,e.puck)),description:a(y(e.description,e6.description,e.puck)),showDiagram:e.showDiagram!==!1,omitHead:t,editing:e.puck?.isEditing});let s=e.source??null,c=e.wheel,l=!s?.slug&&typeof c=="string"?c:"",r=typeof e.finish=="string"?e.finish:"",o=typeof e.size=="string"?e.size:"",i,n=null;if(s?.slug&&s.spec){let h=ih(s,r,o);i=h.rows,n=e.showDiagram===!1?null:h.diagram}else if(l){let h=SB(l,r,o);i=h.rows,n=e.showDiagram===!1?null:h.diagram}else i=e.rows??[];return AB(Qt,{nodeId:typeof e.id=="string"?e.id:void 0,num:a(y(e.num,e6.num,e.puck)),title:a(y(e.title,e6.title,e.puck)),description:a(y(e.description,e6.description,e.puck)),rows:i,diagram:n,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as hh}from"react/jsx-runtime";var le1="Size (blank = none selected)",TB={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,hh(se1,{})),_gHeader:x("Header"),num:T("Number",e6.num),title:O("Heading",e6.title),description:O("Body",e6.description),_gData:x("Product"),source:c2(Hf),finish:g1("Finish",hh(FB,{}),[],""),size:{type:"text",label:le1},_gDiagram:x("Diagram"),showDiagram:l1("Dimension diagram",!0,hh(ce1,{})),_gRows:x("Rows"),rows:{type:"array",label:"Rows",arrayFields:{label:q("Label"),value:q("Value")},defaultItemProps:{label:"Label",value:""},getItemSummary:e=>e?.label||e?.value||"Row"}},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,c=M2(),l=m=>G1(W1(m,a,U1),e.props.headPlacement,Z1.SpecTable.headRows);if(c&&s.dynamic){let m=new Set([...Jl("Content"),"_gDynamic","dynamic","_gHeader","num","title","description","_gDiagram","showDiagram",...ae,...se,...ce,...le]),u={};for(let[d,v]of Object.entries(t))m.has(d)&&(u[d]=v);return l(u)}let r=s.source,o=!r?.slug&&typeof s.wheel=="string"?s.wheel:"",i={...t};if(c||(delete i._gDynamic,delete i.dynamic),!(r?.slug&&r.spec)&&!o)return delete i.finish,delete i.size,delete i._gDiagram,delete i.showDiagram,l(i);let n=r?.slug?r.finishes.map(m=>m.name):(_n(o)?.finishes??[]).map(m=>m.name),h=[{value:"",label:"Default (first finish)"},...n.map(m=>({value:m,label:m}))];return i.finish=g1("Finish",hh(FB,{}),h,""),delete i._gRows,delete i.rows,l(i)}};var re1={link:"Know your size? Pick it below"},PB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:T("Heading",A.sectionHeading),description:O("Body",A.body),_gCta:x("Call to action"),escapeText:T("Button",re1.link),escapeHref:H1("Button link")},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.TyreFitment.headRows)};var EB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:T("Heading",A.sectionHeading),description:O("Body",A.body)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.TyreSizes.headRows)};import{useEffect as ne1,useState as _B}from"react";import{useState as oe1}from"react";function VB(e,t){return t==="mark"?(e.logo??"").trim():(e.name??"").trim()}import{jsx as Vf,jsxs as ie1}from"react/jsx-runtime";function Nf({tile:e,face:t,showCount:a,selected:s,onSelect:c}){let[l,r]=oe1(!1),o=VB(e,t),i=t==="mark"&&!l?s4(o):void 0;return ie1("button",{type:"button","data-sf-brand-tile":"","data-sf-brand-face":t,"aria-pressed":s?"true":"false",onClick:c,className:"flex flex-1 flex-col items-center justify-center gap-[7px] rounded-[9px] px-[10px] py-[14px]",children:[Vf("span",{className:"flex h-[22px] items-center justify-center",children:t==="mark"?i&&Vf("img",{src:i,alt:e.name,className:"max-h-full max-w-[78%] object-contain",draggable:!1,onError:()=>r(!0)}):o}),a&&Vf("span",{children:e.count})]})}import{jsx as Hc,jsxs as NB}from"react/jsx-runtime";function _f({heading:e,button:t,link:a,brands:s=[],face:c="name",showCount:l=!0,picked:r,onPick:o}){let i=r||s[0]?.name;return NB("section",{className:"sf-brandstrip","data-sf-brand-strip":"",children:[(e||t)&&NB("div",{className:"sf-brandstrip-head",children:[Hc("span",{className:"sf-brandstrip-heading",children:e??""}),a?Hc("a",{className:"sf-brandstrip-all",href:a,children:t??""}):Hc("span",{className:"sf-brandstrip-all",children:t??""})]}),Hc("div",{className:"sf-brandstrip-track",children:s.map(n=>Hc(Nf,{tile:n,face:c,showCount:l,selected:n.name===i,onSelect:o?()=>o(n.name):void 0},n.name))})]})}import{jsx as he1}from"react/jsx-runtime";function If({heading:e,button:t,link:a,picks:s,available:c,face:l="name",showCount:r=!0}){let[o,i]=_B(null),n=Array.isArray(s)?s:[],h=!c&&n.length>0;ne1(()=>{if(!h)return;let v=!1;return Cn().then(g=>g??v0.listBrands()).then(g=>{v||i(g)}).catch(()=>{}),()=>{v=!0}},[h]);let m=w_(n,c??o??[]),[u,d]=_B(void 0);return he1(_f,{heading:e,button:t,link:a,brands:m,face:l,showCount:r,picked:u,onPick:d})}import{jsx as me1}from"react/jsx-runtime";var IB={label:"Brand Strip",defaultProps:{heading:"Shop by brand",button:"All brands",link:"",[ic]:y_(),face:"name",showCount:!0},render:({heading:e,button:t,link:a,face:s,showCount:c,...l})=>me1(If,{heading:a1(e),button:a1(t),link:a1(a),picks:l[ic],available:l[z_],face:s,showCount:c})};import{jsx as Fc,jsxs as mh}from"react/jsx-runtime";function pe1(e,t){let a=e.savings[t];if(a===void 0)return null;let s=B2(a,t);return e.savingIsFrom?`Save from ${s}`:`Save ${s}`}function Rf({bundle:e,currency:t}){let a=pe1(e,t);return mh(L1,{href:`/bundles/${e.slug}`,className:"sf-card group flex flex-col border border-line bg-bg transition-colors hover:border-accent",children:[mh("div",{className:"sf-card-image relative aspect-[4/3] overflow-hidden bg-surface",children:[e.image?Fc(_3,{src:e.image,alt:e.name,fill:!0,sizes:"(max-width: 640px) 100vw, 33vw",className:"object-cover transition-transform duration-500 group-hover:scale-[1.03]"}):mh("div",{className:"flex h-full items-center justify-center font-mono text-[10px] uppercase tracking-[0.3em] text-fg-dim",children:[e.components.length," piece",e.components.length===1?"":"s"]}),a&&Fc("span",{className:"absolute left-0 top-4 bg-accent px-3 py-1.5 font-mono text-[10px] uppercase tracking-[0.24em] text-bg",children:a})]}),mh("div",{className:"flex flex-1 flex-col gap-1.5 px-5 py-4",children:[Fc("span",{className:"font-display text-[18px] font-medium tracking-[-0.015em] text-fg",children:e.name}),e.subtitle&&Fc("span",{className:"text-[13px] leading-snug text-fg-dim",children:e.subtitle}),!e.inStock&&Fc("span",{className:"mt-1 font-mono text-[9px] uppercase tracking-[0.24em] text-fg-dim",children:"Currently unavailable"})]})]})}import{jsx as ea,jsxs as DB}from"react/jsx-runtime";var RB="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",BB="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",ue1=["alloy-wheel"],ZB={2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"};function Bf(e){return ea(z2,{kinds:ue1,type:"BundleOffer",editing:e.editing,children:ea(de1,{...e})})}function de1({num:e,title:t,description:a,columns:s=3,editing:c=!1,omitHead:l=!1,cardImage:r}){let o=$0(),{currency:i}=d0(),n=o?.product.kind==="alloy-wheel"?o.product.source.bundles??[]:[],h=l?null:ea(s0,{num:e?M(e):void 0,title:t?Y(t,!1):void 0,description:a?M(a):void 0,accent:!0});return n.length===0?c?DB("section",{className:l?BB:RB,style:J2(r),children:[h,ea("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("Bundles containing this product appear here on a product page.")})]}):null:DB("section",{className:l?BB:RB,style:J2(r),children:[h,ea("div",{className:`mt-10 grid gap-6 ${ZB[s]??ZB[3]}`,children:n.slice(0,s).map(m=>ea(Rf,{bundle:m,currency:i},m.slug))})]})}import{jsx as ge1}from"react/jsx-runtime";var OB={label:"Bundle Products",defaultProps:{num:"",title:"",description:"",columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ge1(Bf,{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,columns:typeof e.columns=="number"?e.columns:3,cardImage:e.cardImage,editing:e.puck?.isEditing})}};import{createContext as ve1,useContext as Tc}from"react";var Zf=ve1(null);function GB(){let e=Tc(wa),t=Tc(Zf),a=sr();return e?e.socialLinks??zw:t?t.socialLinks:a.links}function qB(){return Tc(Zf)?.commerceEnabled??!0}function WB(){let e=Tc(wa),t=Tc(Zf),a=I3();return e?kr({legalName:e.legalName,foundedYear:e.foundedYear,siteName:e.siteName}):t?kr({legalName:t.legalName,foundedYear:t.foundedYear,siteName:t.siteName}):kr({siteName:a.websiteName?.trim()||er})}import{jsx as ta}from"react/jsx-runtime";function UB({style:e="icon",editing:t=!1}){let{open:a}=Ve();return kp("search"),ta("span",{"data-phone-menu-tool":"search",className:"contents",children:ta(qr,{onClick:t?void 0:a,asText:e==="text"})})}function jB({style:e="icon",editing:t=!1}){let{open:a,totals:s}=i4();return qB()?ta(Gr,{onClick:t?()=>{}:a,count:s.sets,asText:e==="text"}):null}function KB({editing:e=!1}){let t=Or();return kp(t?"region":null),t?ta("span",{"data-phone-menu-tool":"region",className:"contents",children:ta(S8,{})}):e?ta("div",{"data-country-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("No regions yet")}):null}import{jsx as fe1}from"react/jsx-runtime";var $B={label:"Cart",defaultProps:{style:"icon"},render:({style:e,puck:t})=>fe1(jB,{style:e,editing:t?.isEditing})};import{useEffect as oZ,useMemo as ke1}from"react";import{useState as tZ}from"react";import{jsx as aa,jsxs as YB}from"react/jsx-runtime";function Df({label:e,badge:t,open:a,onToggle:s}){let c=t>0;return YB("button",{type:"button",onClick:s,className:["inline-flex items-center gap-2 whitespace-nowrap border px-4 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] transition-colors",c?"border-accent text-accent":"border-line hover:border-fg-dim"].join(" "),style:c?void 0:{color:"color-mix(in oklab, currentColor 80%, transparent)"},children:[e,t>0&&aa("span",{className:"px-1.5 text-[length:var(--size-body,11px)] tracking-[0.1em] text-bg",style:{background:"var(--accent)"},children:t}),aa("span",{className:`text-[length:var(--size-body,11px)] opacity-65 transition-transform ${a?"rotate-180":""}`,children:"\u25BE"})]})}function sa({label:e,badge:t,open:a,onToggle:s,children:c}){return YB("div",{className:"relative",children:[aa(Df,{label:e,badge:t,open:a,onToggle:s}),a&&aa("div",{className:"absolute left-0 top-[calc(100%+6px)] z-[60] min-w-[280px] border border-line bg-surface p-[18px] shadow-[0_24px_60px_rgba(0,0,0,0.4)]",onClick:l=>l.stopPropagation(),children:c})]})}function ca({children:e}){return aa("div",{className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.32em] text-fg-dim",children:e})}function ph({active:e,onClick:t,children:a,role:s,ariaChecked:c}){return aa("button",{type:"button",role:s,"aria-checked":s==="radio"?c:void 0,onClick:t,className:["border px-3 py-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] transition-colors",e?"border-accent bg-accent text-bg":"border-line hover:border-fg-dim"].join(" "),style:e?void 0:{color:"color-mix(in oklab, currentColor 75%, transparent)"},children:a})}import{useEffect as be1,useRef as xe1}from"react";import{Fragment as ze1,jsx as y3,jsxs as v9}from"react/jsx-runtime";function XB({picker:e,onClose:t}){let{cascade:a}=e,s=xe1(v4(a.vehicle));return be1(()=>{let c=v4(a.vehicle);c&&!s.current&&t(),s.current=c},[a.vehicle,t]),v9("div",{className:"border-t border-line bg-surface px-[var(--sf-site-gutter,40px)] py-4 max-[720px]:px-4",children:[y3("div",{className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.32em] text-fg-dim",children:"Your car \xB7 only wheels that bolt on"}),y3(X3,{cascade:a,compact:!0}),a.cascadeError&&y3("p",{className:"mt-2.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"Vehicle data is unavailable right now \u2014 browse all wheels and we'll help you check fitment at checkout."}),y3("div",{className:"mt-3.5 flex flex-wrap items-center gap-3",children:y3("button",{type:"button",onClick:t,className:"cursor-pointer font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:"Close"})})]})}var JB="flex w-full items-center justify-between gap-4 border-b py-3 text-left text-[length:var(--size-body,14px)] transition-colors";function QB({field:e,picker:t,open:a,onOpenRequest:s,onClose:c}){let{cascade:l}=t,r=fn(l),o=XN(l)[e],i=JN(l)[e],n=QN(l)[e],h=e_(l)[e],m=s9[e],u=$N(e,l.vehicle),d=h||r[e].placeholder,v=Gg(o,r[e].placeholder),g=ze({items:v,value:n,onPick:i,open:a,onOpen:()=>s(u),onClose:c});return v9("div",{ref:g.wrapRef,className:"relative",children:[v9("button",{ref:b=>{g.triggerRef.current=b},type:"button","data-vehicle-field":e,"aria-haspopup":"listbox","aria-expanded":a,"aria-controls":a?g.listId:void 0,"aria-activedescendant":g.activeId,"aria-label":`${m}, ${d} \u2014 pick your ${u}`,onClick:()=>s(u),onKeyDown:g.onTriggerKeyDown,className:`${JB} ${a?"border-fg text-fg":"border-line"}`,children:[y3("span",{className:"text-fg-dim",children:m}),y3("span",{"data-vehicle-value":d,className:`truncate ${h?"text-fg":"text-fg-dim"}`,children:d})]}),a&&y3(ye,{id:g.listId,tone:"hairline",items:v,value:n,focusIdx:g.focusIdx,onFocus:g.setFocusIdx,onPick:g.pick,listRef:g.listRef})]})}function eZ({picker:e,onOpenRequest:t}){let a=YN(e.cascade.vehicle);if(!a)return null;let s=cc[a];return y3("button",{type:"button","data-vehicle-next":!0,"aria-label":`${s} \u2014 pick your ${a}`,onClick:()=>t(a),className:`${JB} border-line text-fg-dim`,children:y3("span",{"data-vehicle-value":s,children:s})})}function Of({picker:e,total:t}){let{appliedName:a,fit:s,resolving:c,unresolved:l,clear:r}=e;if(!a)return null;let o=Ie(s),i=s!==null&&!c&&t===0;return v9("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2 border-t border-line px-[var(--sf-site-gutter,40px)] py-2.5 max-[720px]:px-4",children:[v9("span",{className:"inline-flex items-center gap-2 bg-accent px-2.5 py-1.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-bg",children:[a,y3("button",{type:"button",onClick:r,"aria-label":`Clear ${a} and show all wheels`,className:"cursor-pointer leading-none text-bg hover:opacity-70",children:"\u2715"})]}),c?y3("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"Checking fitment\u2026"}):l?y3("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"We have no fitment data for this car \u2014 showing every wheel"}):y3(ze1,{children:o.map(n=>n.value!==null?y3("span",{className:"border border-line px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg-dim",children:n.value},n.key):v9("span",{className:"border border-dashed border-line px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg-dim",children:[n.name," not published \u2014 not checked"]},n.key))}),i&&v9("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:["No wheels here fit this car \u2014"," ",y3("button",{type:"button",onClick:r,className:"cursor-pointer uppercase text-accent underline underline-offset-4",children:"show all wheels"})]})]})}import{Fragment as qf,jsx as D1,jsxs as D0}from"react/jsx-runtime";var ye1=["FusionForge\xAE","Precision Forged","Monoblock Cast"];function aZ(e){return e==="FusionForge\xAE"?D0(qf,{children:["FusionForge",D1(i6,{})]}):e}var Gf={size:Le("diameters","alloy-wheel"),finish:Le("finishes","alloy-wheel")};function sZ(e,t){return u7(e,a=>Gf[String(a.key)],t??[],"filterOrder")}function we1({processCount:e,sizeCount:t,lugCount:a,finishCount:s,optionsReported:c,fieldUsage:l}){let r=i=>!c||i>Va,o=Fr(l??[]);return{process:e>Va,size:o(Gf.size)&&r(t),lugs:r(a),finish:o(Gf.finish)&&r(s)}}function la(e,t){return e===t?null:t}function cZ({href:e,label:t}){return D1("a",{href:e,"data-results-link":!0,className:"inline-block self-start border-0 border-b border-line bg-transparent pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg transition-colors hover:text-fg-dim",children:t})}function Wf({filters:e,setProcess:t,setSize:a,setLugs:s,setFinish:c,setPriceMin:l,setPriceMax:r,setSort:o,clearAll:i,total:n,scrollProcess:h,show:m,picker:u,lugOptions:d=[],sizeOptions:v=[],finishOptions:g,layout:b=l9,processOptions:f=ye1,resultsLink:w,optionsReported:z=!1,fieldUsage:k}){let[S,H]=tZ(null),[I,P]=tZ(null),D=nc(),{process:E,size:F,lugs:_,finish:Z,priceMin:G,priceMax:V,sort:j}=e,N=g?Zm.filter(K=>g.includes(K.f)):Zm,Q=we1({processCount:f.length,sizeCount:v.length,lugCount:d.length,finishCount:N.length,optionsReported:z,fieldUsage:k}),W={process:(m?.process??!0)&&Q.process,size:(m?.size??!0)&&Q.size,lugs:(m?.lugs??!0)&&Q.lugs,finish:(m?.finish??!0)&&Q.finish,price:m?.price??!0,vehicle:(m?.vehicle??!0)&&!!u,count:m?.count??!0,sort:m?.sort??!0},U={process:E?1:0,size:F?1:0,lugs:_?1:0,finish:Z?1:0,price:G!=null||V!=null?1:0,vehicle:u?.appliedName?1:0},i1=()=>{i(),u?.clear(),H(null),P(null)};if(b==="columns"){let K=$=>P(I===$?null:$),c1=[];W.vehicle&&u&&c1.push(D0(ra,{name:"vehicle",label:D.vehicle,children:[sc.map($=>D1(QB,{field:$,picker:u,open:I===$,onOpenRequest:K,onClose:()=>P(null)},$)),D1(eZ,{picker:u,onOpenRequest:K})]},"vehicle"));let b1=[];return W.process&&b1.push(D1(ra,{name:"process",label:D.process,rowsAreOptions:!0,children:f.map($=>D1(uh,{active:E===$,onClick:()=>t(la(E,$)),children:aZ($)},$))},"process")),W.size&&b1.push(D1(ra,{name:"size",label:D.size,rowsAreOptions:!0,children:v.map($=>D0(uh,{active:F===$,onClick:()=>a(la(F,$)),children:[$,'"']},$))},"size")),W.lugs&&b1.push(D1(ra,{name:"lugs",label:D.lugs,rowsAreOptions:!0,children:d.map($=>D0(uh,{active:_===$,onClick:()=>s(la(_,$)),children:[$,"-Lug"]},$))},"lugs")),W.finish&&b1.push(D1(ra,{name:"finish",label:D.finish,rowsAreOptions:!0,children:N.map($=>D1(uh,{active:Z===$.f,onClick:()=>c(Z===$.f?null:$.f),children:$.label},$.f))},"finish")),c1.push(...sZ(b1,k)),W.price&&c1.push(D0(ra,{name:"price",label:D.price,children:[D1(lZ,{label:"Min",value:G,onChange:l,ariaLabel:"Minimum price per wheel"}),D1(lZ,{label:"Max",value:V,onChange:r,ariaLabel:"Maximum price per wheel"})]},"price")),D0("div",{className:"@container",children:[D0("div",{className:"border-t border-line px-[var(--sf-site-gutter,40px)] pb-12 pt-10 @max-[720px]:px-4 @max-[720px]:pb-10 @max-[720px]:pt-8",children:[(W.count||W.sort)&&D0("div",{className:"mb-9 flex flex-wrap items-center gap-x-6 gap-y-3 @max-[720px]:mb-7",children:[W.count&&D0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:[n," ",n===1?"result":"results"]}),W.sort&&D0("div",{className:"ml-auto flex items-center gap-5",children:[D1("button",{type:"button",onClick:i1,className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:"Clear All"}),D1(Fa,{value:j,onChange:$=>o($.target.value),className:"border-b border-line bg-transparent pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:Object.keys(Za).map($=>D1("option",{value:$,children:Za[$]},$))})]})]}),D1("div",{"data-filter-columns":!0,className:`grid grid-cols-1 gap-x-[72px] gap-y-10 ${Ce1[c1.length]??""}`,children:c1}),w&&D1("div",{className:"mt-10 flex",children:D1(cZ,{href:w.href,label:w.label})})]}),W.vehicle&&u&&D1(Of,{picker:u,total:n})]})}let y1=[];return W.process&&y1.push(D0(sa,{name:"process",label:h?D0(qf,{children:[D1("span",{className:"text-accent @min-[720px]:hidden",children:h==="FusionForge\xAE"?D0(qf,{children:["FusionForge",D1(i6,{})]}):h}),D1("span",{className:"hidden @min-[720px]:inline",children:D.process})]}):D.process,badge:U.process,open:S==="process",onToggle:()=>H(S==="process"?null:"process"),children:[D1(ca,{children:"Series \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Process series",children:f.map(K=>{let c1=E===K;return D1(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>t(la(E,K)),children:aZ(K)},K)})})]},"process")),W.size&&y1.push(D0(sa,{name:"size",label:D.size,badge:U.size,open:S==="size",onToggle:()=>H(S==="size"?null:"size"),children:[D1(ca,{children:"Diameter \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Wheel diameter",children:v.map(K=>{let c1=F===K;return D0(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>a(la(F,K)),children:[K,'"']},K)})})]},"size")),W.lugs&&y1.push(D0(sa,{name:"lugs",label:D.lugs,badge:U.lugs,open:S==="lugs",onToggle:()=>H(S==="lugs"?null:"lugs"),children:[D1(ca,{children:"Lug count \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Lug count",children:d.map(K=>{let c1=_===K;return D0(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>s(la(_,K)),children:[K,"-Lug"]},K)})})]},"lugs")),W.finish&&y1.push(D0(sa,{name:"finish",label:D.finish,badge:U.finish,open:S==="finish",onToggle:()=>H(S==="finish"?null:"finish"),children:[D1(ca,{children:"Color family \xB7 single-select"}),D1("div",{className:"flex flex-col gap-1.5",role:"radiogroup","aria-label":"Finish color family",children:N.map(K=>{let c1=Z===K.f;return D0("button",{type:"button",role:"radio","aria-checked":c1,onClick:()=>c(c1?null:K.f),className:["flex items-center gap-2.5 border px-3 py-2 text-left transition-colors",c1?"border-accent text-fg":"border-line hover:border-fg-dim"].join(" "),children:[D1("span",{className:"block h-3.5 w-3.5 shrink-0 rounded-full border border-line",style:{background:K.hex}}),D1("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:c1?void 0:{color:"color-mix(in oklab, currentColor 80%, transparent)"},children:K.label}),c1&&D1("span",{"aria-hidden":!0,className:"ml-auto text-accent",children:"\u25CF"})]},K.f)})})]},"finish")),D0("div",{className:"@container sticky top-[67px] z-40 border-b border-line backdrop-blur",style:{background:"color-mix(in oklab, var(--bg) 92%, transparent)"},children:[D0("div",{className:"flex items-center gap-6 px-[var(--sf-site-gutter,40px)] py-3.5 @max-[720px]:flex-wrap @max-[720px]:items-stretch @max-[720px]:gap-2 @max-[720px]:px-4 @max-[720px]:py-2.5",children:[D0("div",{className:"flex flex-wrap items-center gap-1 @max-[720px]:gap-1.5",children:[W.count&&D0("span",{className:"mr-3 border-r border-line pr-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim @max-[720px]:hidden",children:[n," ",n===1?"result":"results"]}),sZ(y1,k),W.price&&D0(sa,{name:"price",label:D.price,badge:U.price,open:S==="price",onToggle:()=>H(S==="price"?null:"price"),children:[D1(ca,{children:"Price range (per wheel)"}),D0("div",{className:"mt-1 flex items-center gap-2",children:[D1("input",{type:"number",placeholder:"$ Min",value:G??"",onChange:K=>l(K.target.value?Number(K.target.value):null),className:"w-full bg-bg border border-line px-3 py-2.5 font-mono text-[length:var(--size-label,14px)] text-fg"}),D1("span",{className:"font-mono text-[length:var(--size-label,12px)] text-fg-dim",children:"\u2014"}),D1("input",{type:"number",placeholder:"$ Max",value:V??"",onChange:K=>r(K.target.value?Number(K.target.value):null),className:"w-full bg-bg border border-line px-3 py-2.5 font-mono text-[length:var(--size-label,14px)] text-fg"})]})]}),W.vehicle&&u&&D1(Df,{label:D.vehicle,badge:U.vehicle,open:S==="vehicle",onToggle:()=>H(S==="vehicle"?null:"vehicle")})]}),w&&D1("div",{className:`flex items-center @max-[720px]:hidden ${W.sort?"":"ml-auto"}`,children:D1(cZ,{href:w.href,label:w.label})}),W.sort&&D0("div",{className:"ml-auto flex items-center gap-3 @max-[720px]:hidden",children:[D1("button",{type:"button",onClick:i1,className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-accent",children:"Clear All"}),D1(Fa,{value:j,onChange:K=>o(K.target.value),className:"border border-line bg-transparent px-4 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:Object.keys(Za).map(K=>D1("option",{value:K,children:Za[K]},K))})]})]}),W.vehicle&&u&&S==="vehicle"&&D1(XB,{picker:u,onClose:()=>H(null)}),W.vehicle&&u&&D1(Of,{picker:u,total:n})]})}var Ce1={1:"@min-[720px]:grid-cols-1",2:"@min-[720px]:grid-cols-2",3:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3",4:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-4",5:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3 @min-[1400px]:grid-cols-5",6:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3 @min-[1400px]:grid-cols-6"},rZ="flex w-full items-center justify-between gap-4 border-b py-3 text-left text-[length:var(--size-body,14px)]";function ra({name:e,label:t,rowsAreOptions:a,children:s}){return D0("div",{"data-filter-column":e,className:"flex flex-col gap-[22px]",children:[D1("div",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.34em] text-fg-dim",children:t}),D1("div",{role:a?"radiogroup":void 0,"aria-label":a?t:void 0,children:s})]})}function uh({active:e,onClick:t,children:a}){return D1("button",{type:"button",role:"radio","aria-checked":e,onClick:t,className:[rZ,"transition-colors",e?"border-fg text-fg":"border-line text-fg-dim hover:text-fg"].join(" "),children:D1("span",{children:a})})}function lZ({label:e,value:t,onChange:a,ariaLabel:s}){return D0("label",{className:`${rZ} border-line`,children:[D1("span",{className:"text-fg-dim",children:e}),D1("input",{type:"number",inputMode:"numeric","aria-label":s,placeholder:"Any",value:t??"",onChange:c=>a(c.target.value?Number(c.target.value):null),className:"w-24 bg-transparent text-right text-fg outline-none placeholder:text-fg-dim"})]})}import{jsx as Me1}from"react/jsx-runtime";function Uf({show:e,layout:t,processOptions:a,fieldUsage:s,editing:c=!1,resultsHref:l,resultsLabel:r}){let{filters:o,setProcess:i,setSize:n,setLugs:h,setFinish:m,setPriceMin:u,setPriceMax:d,setSort:v,clearAll:g,total:b,scrollProcess:f,publishVehicle:w,lugOptions:z,sizeOptions:k,finishOptions:S,optionsReported:H}=so(),I=ke1(()=>s?j4(s,"alloy-wheel"):void 0,[s]),P=I4({editing:c,autoApply:!0});oZ(()=>{w({fit:P.fit,name:P.appliedName,resolving:P.resolving,unresolved:P.unresolved})},[w,P.fit,P.appliedName,P.resolving,P.unresolved]);let D=P.applied?.vehicle??null;oZ(()=>{if(c||!P.restored||typeof window>"u")return;let Z=new URLSearchParams(window.location.search);for(let V of Object.values(Z5))Z.delete(V);D5(Z,D);let G=Z.toString();window.history.replaceState(null,"",`${window.location.pathname}${G?`?${G}`:""}`)},[c,P.restored,D]);let E=T_(o),F=(r??"").trim()||"See all results",_=l&&!c&&E.length===0?{href:P_(l,o,D),label:F}:void 0;return Me1(Wf,{resultsLink:_,filters:o,setProcess:i,setSize:n,setLugs:h,setFinish:m,setPriceMin:u,setPriceMax:d,setSort:v,clearAll:g,total:b,lugOptions:z,sizeOptions:k,finishOptions:S,scrollProcess:f,show:e,layout:t,processOptions:a,optionsReported:H,fieldUsage:I,picker:P})}import{jsx as Se1}from"react/jsx-runtime";var iZ={label:"Catalog Filter Bar",defaultProps:{showProcess:!0,showLugs:!0,showPrice:!0,showVehicle:!0,showCount:!0,showSort:!0,layout:l9,resultsHref:"",resultsLabel:""},render:e=>Se1(Uf,{show:{process:e.showProcess,size:!0,lugs:e.showLugs,finish:!0,price:e.showPrice,vehicle:e.showVehicle,count:e.showCount,sort:e.showSort},layout:E_(e.layout),processOptions:e.processOptions,fieldUsage:e.fieldUsage,resultsHref:a1(e.resultsHref)||void 0,resultsLabel:a1(e.resultsLabel)||void 0,editing:e.puck?.isEditing})};import{rootRowName as N60,slotChildName as nZ,slotChildRenameProp as _60,slotChildRowName as I60}from"efficient-easel/screen/lib/puck/slot-child-name";import{jsx as Le1}from"react/jsx-runtime";var hZ={label:"Collection Card",defaultProps:{collection:null},render:({collection:e,altName:t,tag:a,href:s,puck:c})=>{let l=e&&typeof e=="object"?e:null,r=(i,n)=>F2(i).hidden?"":a1(i)||(c?.isEditing?p(n):void 0),o=nZ({type:"CollectionCard",props:{altName:t,collection:l}});return Le1(xu,{tag:r(a,A.eyebrow),name:o||(c?.isEditing?p("Card title"):void 0),desc:l?.description||(c?.isEditing?p(A.body):void 0),href:a1(s)||void 0,imageSrc:l?.image||void 0,imageLabel:l?.name||void 0})}};import{jsx as Ae1}from"react/jsx-runtime";var mZ={label:"Country Switch",render:({puck:e})=>Ae1(KB,{editing:e?.isEditing})};import{jsx as f9,jsxs as jf}from"react/jsx-runtime";function He1(e){let t=[];e.fuelClass&&t.push({key:"Fuel efficiency",value:e.fuelClass}),e.wetGripClass&&t.push({key:"Wet grip",value:e.wetGripClass});let a=rh(e);return a&&t.push({key:"Rolling noise",value:a}),t}function Fe1(e){let t=[];return e.severeSnow&&t.push("3PMSF severe snow"),e.iceGrip&&t.push("Ice grip"),t}function Kf({label:e}){let t=He1(e),a=Fe1(e);return jf("div",{className:"flex flex-col bg-[var(--card-bg)] p-5",children:[f9("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-tight",children:e.size}),f9("dl",{className:"mt-3 flex flex-col gap-1.5 font-mono text-[length:var(--size-label,12px)]",children:t.map(s=>jf("div",{className:"flex items-baseline justify-between gap-3",children:[f9("dt",{className:"uppercase tracking-[0.14em] text-fg-dim",children:s.key}),f9("dd",{className:"text-right text-fg",children:s.value})]},s.key))}),a.length>0?f9("ul",{className:"mt-3 flex flex-wrap gap-2",children:a.map(s=>f9("li",{className:"border border-line px-2 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:s},s))}):null,jf("a",{href:e.eprelUrl,target:"_blank",rel:"noopener noreferrer",className:"group mt-4 inline-flex items-center gap-2 border-t border-line pt-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent transition-colors hover:text-fg",children:[`EPREL ${e.registrationNumber}`,f9("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]})]})}import{jsx as dh,jsxs as Te1}from"react/jsx-runtime";function $f({labels:e,num:t}){return e.length===0?null:Te1("section",{className:"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:[dh(s0,{num:t,title:"EU tyre *label.*",description:"The registered grades for this tyre, read live from the EU product registry.",accent:!0}),dh("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(a=>dh(Kf,{label:a},a.registrationNumber))}),dh(s5,{text:"Source: *EPREL*, the European Product Registry for Energy Labelling. Grades are shown as registered; the registry is the authority."})]})}import{jsx as Pc}from"react/jsx-runtime";var Pe1=["tyre"];function Yf(e){return Pc(z2,{kinds:Pe1,type:"EuTyreLabel",editing:e.editing,children:Pc(Ee1,{...e})})}function Ee1({num:e,editing:t=!1}){let a=$0(),s=z3(t&&!a),c=a?.product??s,l=c?.kind==="tyre"?c.source.variants:[],r=oh(l);return r.length===0&&t?Pc("section",{className:"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:Pc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The EU label appears here for every size with an EPREL registration number. It is read live from the registry and never stored.")})}):Pc($f,{labels:r,num:e??""})}import{jsx as Ve1}from"react/jsx-runtime";var pZ={label:"EU Tyre Label",defaultProps:{num:""},render:e=>Ve1(Yf,{num:y(e.num,U0.num,e.puck),editing:e.puck?.isEditing})};import{jsx as Ne1}from"react/jsx-runtime";var uZ={label:"Gallery Item",defaultProps:{image:"",href:"",process:"",eyebrow:"",name:"",meta:"",fromProduct:!1,product:{},previewHover:!1},render:e=>{let t=e.product??{},a=e.fromProduct===!0&&!!t.code;return Ne1(ss,{image:a?t.cover:e.image,photos:a?(t.photos??[]).map(s=>({src:s})):e.photos,href:a?t.href:e.href,process:a?t.hideProcess?void 0:t.category:y(e.process,"",e.puck),eyebrow:a?t.hideEyebrow?void 0:t.eyebrow:y(e.eyebrow,"",e.puck),name:a?t.hideName?void 0:t.name:y(e.name,"",e.puck),meta:a?t.hideFinish?void 0:t.finish:y(e.meta,"",e.puck),previewHover:e.previewHover,ratio:e.ratio,captionPlace:e.captionPlace,editing:e.puck?.isEditing})}};import{useCallback as Ue1,useEffect as eb,useState as oa}from"react";import{useEffect as _e1,useId as Ie1,useRef as dZ,useState as Re1}from"react";import{jsx as w3,jsxs as Xf}from"react/jsx-runtime";function gh({item:e,mobile:t=!1,onNavigate:a,dropdownAlign:s="start"}){let[c,l]=Re1(!1),r=Ie1(),o=dZ(null),i=dZ(null),n=e.dropdownItems.length>0,h=!Ne(e.href);_e1(()=>{if(!c)return;let d=o.current?.ownerDocument??document,v=g=>{o.current?.contains(g.target)||l(!1)};return d.addEventListener("pointerdown",v),()=>d.removeEventListener("pointerdown",v)},[c]);let m=()=>{l(!1),a?.()};if(!n)return h?w3(L1,{href:e.href,onClick:m,className:t?"flex min-h-11 items-center font-display text-3xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent":"whitespace-nowrap opacity-80 transition-opacity hover:opacity-100 focus-visible:rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:t?"flex min-h-11 items-center font-display text-3xl":"whitespace-nowrap opacity-80",children:e.label});let u=w3("button",{ref:i,type:"button","aria-label":`${c?"Close":"Open"} ${e.plainLabel} menu`,"aria-expanded":c,"aria-controls":r,onClick:()=>l(d=>!d),className:t?"flex h-11 w-11 shrink-0 items-center justify-center rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent":"flex h-8 w-8 shrink-0 items-center justify-center rounded-full opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:w3("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.5","aria-hidden":"true",className:`transition-transform ${c?"rotate-180":""}`,children:w3("path",{d:"m3 5 4 4 4-4"})})});return t?Xf("div",{ref:o,children:[Xf("div",{className:"flex min-h-11 items-center justify-between gap-3",children:[h?w3(L1,{href:e.href,onClick:m,className:"min-w-0 flex-1 font-display text-3xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:"min-w-0 flex-1 font-display text-3xl",children:e.label}),u]}),c?w3("div",{id:r,className:"mt-3 flex flex-col border-l border-line pl-5",children:e.dropdownItems.map((d,v)=>Ne(d.href)?w3("span",{className:"flex min-h-11 items-center text-base opacity-80",children:d.label},`${d.href}-${v}`):w3(L1,{href:d.href,onClick:m,className:"flex min-h-11 items-center text-base opacity-80 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:d.label},`${d.href}-${v}`))}):null]}):Xf("div",{ref:o,className:"relative flex items-center whitespace-nowrap",onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),onBlurCapture:d=>{d.currentTarget.contains(d.relatedTarget)||l(!1)},onKeyDown:d=>{d.key==="Escape"&&(l(!1),i.current?.focus())},children:[h?w3(L1,{href:e.href,onClick:m,onFocus:()=>l(!0),className:"opacity-80 transition-opacity hover:opacity-100 focus-visible:rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:"opacity-80",children:e.label}),u,c?w3("div",{id:r,className:`absolute top-full z-[60] w-72 pt-3 text-fg ${s==="end"?"right-0":s==="center"?"left-1/2 -translate-x-1/2":"left-0"}`,children:w3("div",{className:"overflow-hidden rounded-lg border border-line bg-bg p-2 shadow-xl",children:e.dropdownItems.map((d,v)=>Ne(d.href)?w3("span",{className:"flex min-h-11 items-center rounded-md px-4 py-2 text-sm opacity-80",children:d.label},`${d.href}-${v}`):w3(L1,{href:d.href,onClick:m,className:"flex min-h-11 items-center rounded-md px-4 py-2 text-sm opacity-80 transition-[background,opacity] hover:bg-[var(--card-bg)] hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:d.label},`${d.href}-${v}`))})}):null]})}import{useEffect as Ec,useRef as Be1,useState as gZ}from"react";function vh({stickyMode:e,heightPx:t}){let a=Be1(null),[s,c]=gZ(!1),[l,r]=gZ(!1);return Ec(()=>{let o=a.current?.ownerDocument?.defaultView??window,i=t,n=o.scrollY;function h(){let m=o.scrollY;c(m>10),e==="on_scroll_up"&&(m<=i?r(!1):m>n+4?r(!0):m<n-4&&r(!1)),n=m}return h(),o.addEventListener("scroll",h,{passive:!0}),()=>o.removeEventListener("scroll",h)},[e,t]),Ec(()=>{e!=="on_scroll_up"&&r(!1)},[e]),Ec(()=>{let o=a.current?.ownerDocument?.documentElement;o&&o.style.setProperty(ir,`${t}px`)},[t]),Ec(()=>{let o=a.current,i=o?.ownerDocument,n=i?.defaultView;if(!o||!i||!n)return;let h="",m=d=>{let v=`${Math.round(d)}px`;v!==h&&(h=v,i.documentElement.style.setProperty(Nm,v),i.body?.style.setProperty(Nm,v))};if(typeof n.ResizeObserver!="function"){m(o.getBoundingClientRect().height);return}let u=new n.ResizeObserver(d=>{let v=d[0]?.borderBoxSize?.[0];m(v?v.blockSize:o.getBoundingClientRect().height)});return u.observe(o),()=>u.disconnect()},[]),Ec(()=>{let o=a.current?.ownerDocument?.documentElement;o&&o.setAttribute("data-header-sticky",e)},[e]),{headerRef:a,scrolled:s,navHidden:l}}import{useEffect as Ze1,useRef as De1,useState as vZ}from"react";import{jsx as fZ}from"react/jsx-runtime";function Jf(){let[e,t]=vZ("dark"),[a,s]=vZ(!1),c=De1(null),l=()=>c.current?.ownerDocument??document;Ze1(()=>{let o=l().documentElement,i=()=>t(bC(o));i(),s(!0);let n=new MutationObserver(i);return n.observe(o,{attributes:!0,attributeFilter:[fC]}),()=>n.disconnect()},[]);function r(){let o=l(),i=e==="dark"?"light":"dark";t(i),xC(o.documentElement,i),zC(o,i)}return fZ("button",{ref:c,type:"button",onClick:r,"aria-label":`Switch to ${e==="dark"?"light":"dark"} theme`,"aria-pressed":e==="light",className:"relative inline-flex h-5 w-9 items-center rounded-full border border-line bg-surface-2 p-0.5",children:fZ("span",{className:"block h-3.5 w-3.5 rounded-full bg-accent transition-transform duration-200 ease-out",style:{transform:a&&e==="light"?"translateX(16px)":"translateX(0)"}})})}function bZ({editorPreview:e,hasPreviewSettings:t,hasInitialSettings:a}){return!e&&!t&&!a}var xZ=ly,Oe1="sf-header-theme";function Qf(e){return typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}function fh(e){let t=Qf(e);return t===null?null:{className:Oe1,style:oy(t)}}function zZ(e){return typeof e=="number"&&Number.isInteger(e)&&e>=k5.min&&e<=k5.max?e:k5.default}var bh=e=>!!e&&e.startsWith("/wheels/")&&e!=="/wheels",xh=(e,t)=>!e&&t?"var(--section-bg)":"var(--bg)",yZ=e=>e==="capitalised"?"capitalised":"uppercase",wZ=e=>e==="inline"?"inline":e==="top"||e==="bottom"?"top":null;function CZ(e){let t=(e??"").trim();return Tz(t,"#000000")===null?null:Pz(t)==="#000000"}var zh="data-lead-ink",yh="data-header-ink";var Ge1="auto";function qe1(e){return e.type==="IntroBleed"?pt(e.props?.layout)!=="stacked":!0}function kZ(e){let t=Qw(e);return t&&eC(e)&&qe1(t)?"light":null}function wh(e){return e==="light"||e==="dark"?e:Ge1}import{Fragment as Ch,jsx as O0,jsxs as n2}from"react/jsx-runtime";var MZ={stacked:{grid:"hidden min-[1501px]:grid",flex:"hidden min-[1501px]:flex"},inline:{grid:"hidden min-[801px]:grid",flex:"hidden min-[801px]:flex"}},je1=Array.from({length:lM},()=>({href:"#",label:O0(Ee,{})}));function tb({previewSettings:e,initialSettings:t,editorPreview:a,showThemeToggle:s,wordmark:c,hideLogo:l,hideMenu:r,siteName:o,commerceEnabled:i=!0}={}){let n=Oe(),[h,m]=oa(!1);eb(()=>{let S1=P0.current?.ownerDocument??document,i0=()=>m(S1.querySelector(`[${zh}="light"]`)!=null);i0();let M1=requestAnimationFrame(i0);return()=>cancelAnimationFrame(M1)},[n]);let u=bh(n),[d,v]=oa(!1),{open:g,totals:b}=i4(),{open:f}=Ve(),[w,z]=oa(!1),[k,S]=oa(null),[H,I]=oa(null),[P,D]=oa(t??null),E=e??(P?{logoUrl:P.logoUrl,reverseLogo:P.reverseLogo,logoReversed:P.logoReversed,logoInkIsDark:P.logoInkIsDark,logoPosition:P.logoPosition,logoSize:P.logoSize,logoSizePx:P.logoSizePx,menuItems:(P.menuItems??[]).map(S1=>({label:S1.label,url:S1.url,dropdown_menu:null,dropdown_items:S1.dropdownItems??[]})),menuSplit:P.menuSplit??3,menuPosition:P.menuPosition,menuRow:P.menuRow,menuGapPx:P.menuGapPx??null,searchEnabled:P.searchEnabled,searchPosition:P.searchPosition,searchRow:P.searchRow,countrySelectorEnabled:P.countrySelectorEnabled,countryUrls:P.countryUrls,accountEnabled:P.accountEnabled,cartEnabled:P.cartEnabled,utilStyle:P.utilStyle,navTextCase:P.navTextCase,lightReverseText:P.lightReverseText,topTextColor:P.topTextColor,transparentTop:P.transparentTop,surface:P.surface,theme:P.theme,width:P.width,heightPx:P.heightPx,sticky:P.sticky}:null),F=l?null:E?.logoUrl??null,_=E?.reverseLogo??!1,Z=E?.logoReversed??null,G=E?.logoInkIsDark??null,V=E?.logoPosition??"center",j=E?.logoSize??"medium",N=E?.logoSizePx??null,Q=Math.min(Math.max(E?.menuSplit??3,1),4),W=(E?.menuPosition??"left")==="center",U=(E?.menuPosition??"left")==="beside",i1=(E?.menuRow??"top")==="inline",y1=E?.menuGapPx??null,K=y1!=null?{gap:`${y1}px`}:void 0,c1=i1?MZ.inline:MZ.stacked,b1=E?.searchEnabled??!1,$=E?.searchPosition??"right",u1=E?.countrySelectorEnabled??!0,x1=E?.accountEnabled??!0,X0=E?.cartEnabled??!0,o0=(E?.utilStyle??"icon")==="text",I1=`mono-eyebrow${(E?.navTextCase??"uppercase")==="capitalised"?" mono-eyebrow-plain":""}`,c0=E?.countryUrls??{},l0=Cl(E?.width),X1=wl(l0)??void 0,X2=E?.heightPx??k5.default,Q1=E?.sticky??"always",d2=wh(E?.topTextColor),b0=fh(E?.theme),d1=Object.keys(c0),$1=Or(d1.length?d1:void 0),u0=u1?O0(S8,{countries:d1.length?d1:void 0,urls:e?void 0:c0}):null,{headerRef:P0,scrolled:J0,navHidden:q0}=vh({stickyMode:Q1,heightPx:X2}),e1=b0?JSON.stringify(b0.style):null;eb(()=>{let S1=P0.current?.ownerDocument??document,i0=S1.defaultView??window,M1=K6=>K6?CZ(i0.getComputedStyle(K6).getPropertyValue("--bg")):null,w2=()=>{z(S1.documentElement.getAttribute("data-theme")==="light"),S(M1(S1.body)),I(M1(P0.current))};w2();let g2=new MutationObserver(w2);return g2.observe(S1.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),S1.body&&g2.observe(S1.body,{attributes:!0,attributeFilter:["style"]}),()=>g2.disconnect()},[P0,e1]);let z1=s??!1?O0(Jf,{}):null;eb(()=>{if(!bZ({editorPreview:!!a,hasPreviewSettings:!!e,hasInitialSettings:!!t}))return;let S1=!1;return v0.getHeaderSettings().then(i0=>!S1&&D(i0)).catch(i0=>{console.warn("[header] settings fetch failed; using built-in defaults",i0)}),()=>{S1=!0}},[a,e,t]);let t0=J0||u,s2=xh(w,u),M3=d2==="auto"?h:d2==="light",G6=t0||!M3,q6=t0?H??w:(k??w)&&!M3,W6=d2==="auto"?null:{[yh]:d2},u5=Ue1(()=>v(!1),[]);L4({active:d,onDismiss:u5});let V3=(S1,i0,M1="start")=>O0(gh,{item:S1,dropdownAlign:M1},i0),U6=!r&&(E?.menuItems?.length??0)>0,p8=!!a||!!e,m3=U6?E.menuItems.map(S1=>({href:S1.url||"",label:e0(S1.label),plainLabel:S1.label,dropdownItems:(S1.dropdown_items??[]).map(i0=>({href:i0.url||"",label:e0(i0.label),plainLabel:i0.label}))})):p8?je1.map(S1=>({...S1,plainLabel:"Menu item",dropdownItems:[]})):[],C9=m3.length>0||i&&x1||!!u0&&$1||!!z1,N3=V==="center"?m3.slice(0,Q):V==="right"?m3:[],e4=V==="center"?m3.slice(Q):V==="left"?m3:[],S3=b1?O0(qr,{onClick:p8?void 0:f,asText:o0}):null,t4=i&&x1?O0(sM,{asText:o0}):null,a6=S1=>i&&X0?O0(Gr,{onClick:g,count:b.sets,asText:o0,className:S1}):null,z4=n2(Ch,{children:[$==="left"?S3:null,u0,z1,t4,a6(),$==="right"?S3:null]}),y4=(S1,i0=!1)=>O0(L1,{href:"/","aria-label":o?`${o} home`:"Home",className:S1,children:O0(xe,{variant:"header",scrolled:G6,src:F,reverse:_,onLightSurface:q6,reversedSrc:Z,inkIsDark:G,size:j,sizePx:N,wordmark:c,siteName:o,fitToContainer:i0})}),G4=y4("inline-flex shrink-0 items-center justify-center"),j6="flex min-w-0 flex-1 items-center overflow-x-clip [container-type:inline-size]";return n2(Ch,{children:[O0("header",{ref:P0,"data-scrolled":J0||void 0,...W6,className:["sf-site-header",...b0?[b0.className]:[],Q1==="none"?"absolute":"fixed","inset-x-0 top-0 z-50","flex items-center","px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",t0?"border-b border-line backdrop-blur-md":"border-b border-transparent","transition-[background,border-color,transform] duration-300 ease-out"].join(" "),style:{...b0?b0.style:null,minHeight:Jw,...q0?{transform:"translateY(-100%)"}:null,...t0?{background:s2,color:"var(--fg)","--sf-header-ground":s2}:{color:"var(--sf-header-overlay-fg)","--sf-header-ground":"var(--sf-header-overlay-ground)"}},children:n2("div",{className:"w-full",style:X1,children:[W?n2("div",{className:`${c1.grid} grid-cols-[1fr_auto_1fr] items-center gap-8`,children:[V==="right"?O0("nav",{className:`${I1} flex items-center gap-7`,children:z4}):O0("div",{className:"flex items-center",children:G4}),O0("nav",{className:`${I1} flex items-center justify-center gap-7`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`,"center"))}),V==="right"?O0("div",{className:"flex items-center justify-end",children:G4}):O0("nav",{className:`${I1} flex items-center justify-end gap-7`,children:z4})]}):V==="center"?n2("div",{className:`${c1.grid} grid-cols-[1fr_auto_1fr] items-center gap-8`,children:[O0("nav",{className:`${I1} flex items-center gap-7`,children:N3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))}),G4,n2("nav",{className:`${I1} flex items-center justify-end gap-7`,children:[e4.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`,"end")),z4]})]}):U?n2("div",{className:`${c1.flex} items-center justify-between gap-8`,children:[n2("div",{className:"flex items-center gap-7",style:K,children:[G4,O0("nav",{className:`${I1} flex items-center gap-7`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))})]}),O0("nav",{className:`${I1} flex items-center justify-end gap-7`,children:z4})]}):O0("div",{className:`${c1.flex} items-center justify-between gap-8`,children:V==="right"?n2(Ch,{children:[n2("nav",{className:`${I1} flex items-center gap-7`,children:[m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`)),z4]}),G4]}):n2(Ch,{children:[G4,n2("nav",{className:`${I1} flex items-center gap-7`,children:[m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`)),z4]})]})}),!i1&&n2("div",{className:"hidden min-[801px]:max-[1500px]:flex flex-col gap-3",children:[n2("div",{className:"flex items-center justify-between",children:[y4(j6,!0),n2("div",{className:`${I1} flex shrink-0 items-center gap-5`,children:[S3,u0,z1,t4,a6()]})]}),O0("nav",{className:`${I1} flex items-center gap-6 border-t border-line/60 pt-2.5`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))})]}),n2("div",{className:"hidden max-[800px]:flex items-center justify-between",children:[y4(j6,!0),n2("div",{className:"flex shrink-0 items-center gap-4",children:[S3,t4,a6(I1),C9&&n2("button",{type:"button","aria-label":d?"Close menu":"Open menu","aria-expanded":d,onClick:()=>v(S1=>!S1),className:"flex h-11 w-11 flex-col items-center justify-center gap-1.5",children:[O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"translate-y-[3px] rotate-45":""}`}),O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"opacity-0":""}`}),O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"-translate-y-[3px] -rotate-45":""}`})]})]})]})]})}),d&&n2("div",{className:"fixed inset-x-0 top-0 bottom-0 z-40 hidden overflow-y-auto max-[800px]:flex max-[800px]:flex-col max-[800px]:gap-7 max-[800px]:bg-bg max-[800px]:px-6 max-[800px]:pt-24 max-[800px]:pb-10",children:[m3.map((S1,i0)=>O0(gh,{item:S1,mobile:!0,onNavigate:()=>v(!1)},`${S1.href}-${i0}`)),n2("div",{className:"mt-auto flex flex-col gap-4 border-t border-line pt-6",children:[i&&x1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Account"}),O0(L1,{href:"/account",onClick:()=>v(!1),className:"mono-eyebrow underline",children:"Your account"})]}),u0&&$1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Region"}),u0]}),z1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Theme"}),z1]})]})]})]})}import{jsx as SZ,jsxs as $e1}from"react/jsx-runtime";var Ke1=`
|
|
141
|
+
*the counter.*`,Z),body:a,variant:s,cardHeader:c,badge:l,cardTitle:r,cardSubtitle:o,pills:i,tiles:n,rows:h,button:m,footnote:u,col1Title:d,col1Cards:v,col2Title:g,col2Cards:b,col3Title:f,col3Cards:w,col4Title:z,col4Cards:k,barsHeading:S,bars:H,termLines:I,urlText:P,heroTitle:D,heroButton:E,products:F,align:_,editing:Z?.isEditing})};import{jsx as Z7}from"react/jsx-runtime";var PV={label:"Section Header",defaultProps:{headStyle:Hs,num:"01 / Section",numStyle:T8,title:"Section *title*",description:"",logoSrc:"",logoAlt:"",linkText:"",linkHref:"",fullWidth:!0,pageWidth:_9.default},render:({headStyle:e,num:t,numStyle:a,eyebrowLook:s,title:c,description:l,logoSrc:r,logoAlt:o,linkText:i,linkHref:n,rowGap:h,descriptionSize:m,widthMode:u,fullWidth:d,pageWidth:v,puck:g})=>{let b=y(i,"View all",g),f=R2({widthMode:u,fullWidth:d,pageWidth:v},"full"),w=Vi(e);return Z7("section",{className:"px-[var(--sf-site-gutter,40px)] pt-10 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-6",children:Z7("div",{className:f.mode==="page"?zs:void 0,children:w==="editorial"?Z7(D2,{num:y(t,"01 / Section",g),title:(()=>{let z=y(c,"Section *title*",g);return z?Y(z,!0):void 0})(),desc:(()=>{let z=y(l,"Short supporting line",g);return z?M(z):void 0})(),spaceBelow:""}):w==="simple"?Z7(s0,{look:"simple",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):w==="statement"?Z7(s0,{look:"statement",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):w==="natural"?Z7(s0,{look:"natural",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),description:y(l,"Short supporting line",g),eyebrowLook:o4(s,"SectionHeader"),rowGap:AT(h),descriptionSize:HT(m)}):w==="essay"?Z7(s0,{look:"essay",num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),eyebrowLook:o4(s,"SectionHeader")}):Z7(s0,{num:y(t,"01 / Section",g),title:y(c,"Section *title*",g),description:y(l,"Short supporting line",g),logo:r?{src:r,alt:a1(o)}:void 0,link:b?{text:b,href:a1(n)||"#"}:void 0,numStyle:a,accent:!0})})})}};import{jsx as C21}from"react/jsx-runtime";import{jsx as y21}from"react/jsx-runtime";var w21={sm:"h-6",md:"h-12",lg:"h-24",xl:"h-40"};function EV({size:e}){return y21("div",{"aria-hidden":!0,className:w21[e]})}var VV={label:"Spacer",defaultProps:{size:"md"},render:({size:e})=>C21(EV,{size:e})};import{jsx as M21}from"react/jsx-runtime";import{jsx as Bs}from"react/jsx-runtime";var k21=()=>[{text:p("Spec label"),tone:"normal"},{text:p("Spec value"),tone:"muted"},{text:p("Spec label"),tone:"normal"},{text:p("Spec value"),tone:"muted"}];function NV({cells:e,fill:t="dark",editing:a=!1}){let s=(e??[]).filter(o=>(o?.text??"").trim()),c=s.length>0?s:a?k21():[];if(c.length===0)return null;let l=t!=="none",r=Bs("div",{className:"mx-auto flex max-w-[min(var(--sf-page-cap,var(--sf-site-width,1600px)),var(--sf-site-width,1600px))] flex-wrap items-baseline justify-between gap-x-8 gap-y-1 px-[var(--sf-site-gutter,40px)] py-4 text-[length:var(--size-label,12px)] uppercase tracking-[0.1em] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-3",children:c.map((o,i)=>Bs("span",{className:l?o.tone==="muted"?"text-plate-band-fg-dim":"text-plate-band-fg":o.tone==="muted"?"text-fg-dim":"text-fg",children:o.text},i))});return Bs("section",{className:"w-full",children:l?Bs("div",{className:"bg-plate-band",children:r}):Bs("div",{className:"border-t border-line",children:r})})}var _V={label:"Spec Strip",defaultProps:{cells:[{text:"",tone:"normal"},{text:"",tone:"normal"}],fill:"dark"},render:({cells:e,fill:t,puck:a})=>M21(NV,{cells:e,fill:t,editing:a?.isEditing})};import{jsx as F21}from"react/jsx-runtime";import{jsx as Q8,jsxs as BV}from"react/jsx-runtime";import{Fragment as S21,jsx as IV,jsxs as L21}from"react/jsx-runtime";function RV({value:e}){let t=e.match(/^(\d+)(.*)$/),{ref:a,value:s}=ft(t?Number.parseInt(t[1],10):0);return!t||p2(e)!==e?IV(S21,{children:M(e)}):IV(z8,{value:e,children:L21("span",{ref:a,children:[s,t[2]]})})}var A21="grid grid-cols-4 gap-8 max-[800px]:grid-cols-2",H21={2:"grid grid-cols-2 gap-8",3:"grid grid-cols-3 gap-8 max-[800px]:grid-cols-2",4:"grid grid-cols-4 gap-8 max-[800px]:grid-cols-2"};function ZV({items:e,contained:t,heading:a,columns:s,background:c,editing:l}){let r=s===void 0?A21:H21[s],o=Q8("div",{className:r,children:(e??[]).map((i,n)=>BV("div",{className:"border-t border-line pt-5",children:[Q8("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))] font-medium leading-none tracking-[-0.03em] text-fg max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",children:l?M(i.value):Q8(RV,{value:i.value})}),Q8("div",{className:"mt-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:M(i.label)})]},n))});return a===void 0&&c===void 0?Q8(t2,{contained:t,className:"py-12",children:o}):Q8(t2,{contained:t,className:"py-12",children:BV("div",{style:c?{backgroundColor:c}:void 0,children:[a?Q8("div",{className:"mb-6 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:M(a)}):null,o]})})}var T21=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],DV={label:"Stats",defaultProps:{items:[],contained:!0},render:({items:e,contained:t,heading:a,columns:s,background:c,puck:l})=>F21(ZV,{items:C1(e,T21,l),contained:t,heading:y(a,"By the *numbers*",l),columns:s,background:Q6(c,s3.Stats),editing:l?.isEditing})};import{Fragment as N21,jsx as GV}from"react/jsx-runtime";import{jsx as og}from"react/jsx-runtime";var P21={left:"text-left",center:"text-center mx-auto",right:"text-right ml-auto"},E21="max-w-[380px] text-[length:var(--size-body,15px)] leading-[1.5] opacity-80 max-[800px]:text-[length:var(--size-body,14px)]",V21={default:"text-fg",dim:"text-fg-dim"};function OV({text:e,align:t,tone:a,contained:s,hero:c=!1}){if(c)return og("p",{className:E21,children:M(e)});let l=`max-w-[680px] whitespace-pre-line text-[length:var(--size-body,17px)] leading-[1.7] ${P21[t]} ${V21[a]}`;return og(t2,{contained:s,className:"py-4",children:z0(e).map((r,o)=>og("p",{className:l,children:M(r)},o))})}var qV={label:"Text",defaultProps:{text:"",align:"left",tone:"default",contained:!0},render:({text:e,align:t,tone:a,contained:s,puck:c})=>F2(e).hidden?GV(N21,{}):GV(OV,{text:$4(a1(e),A.body,c)??"",align:t,tone:a,contained:s})};var WV={Banner:MP,Breadcrumb:mA,ButtonBlock:LP,Cards:bA,CategoryBar:HP,Chart:MA,ContactLocations:EP,CustomHTML:aE,Divider:cE,DocBody:$A,DocMasthead:JA,DocMetaCards:tH,DocTabs:cH,Eyebrow:oE,FAQ:dH,FeaturedCover:kH,Flex:NH,Footprint:KH,Grid:QH,Heading:hE,Hero:sF,HeroGroup:nF,HeroSingle:fF,HeroSlide:zF,ImageBlock:pE,Integrations:vV,IntroBleed:AF,Countdown:ZA,KeyFeatures:PF,LogoBlock:xV,Logos:yV,LongRead:BF,Manifesto:SV,Masthead:GF,Mockup:TV,OrderSummary:XF,ParagraphsA:eT,PaymentBadges:cT,PostCard:oT,ProcessSteps:pT,Prose:fT,SectionHeader:PV,Series:ET,Spacer:VV,SpecStrip:_V,Split:DT,Stats:DV,StatsParagraph:jT,Testimonials:YT,Text:qV,Ticker:rP,Timeline:dP,TimelineTrack:fP,TitleWithButtons:yP};var _21={Banner:nA,Breadcrumb:pA,ButtonBlock:vA,Cards:zA,CategoryBar:yA,Chart:SA,ContactLocations:_A,Countdown:OA,CustomHTML:GA,Divider:jA,DocBody:YA,DocMasthead:QA,DocMetaCards:aH,DocTabs:lH,Eyebrow:rH,FAQ:gH,FeaturedCover:MH,Flex:IH,Footprint:YH,Grid:tF,Heading:aF,Hero:rF,HeroGroup:dF,HeroSingle:xF,HeroSlide:yF,ImageBlock:MF,Integrations:SF,IntroBleed:FF,KeyFeatures:VF,LogoBlock:NF,Logos:_F,LongRead:ZF,Manifesto:DF,Masthead:qF,Mockup:UF,OrderSummary:JF,ParagraphsA:tT,PaymentBadges:lT,PostCard:iT,ProcessSteps:dT,Prose:bT,SectionHeader:TT,Series:VT,Spacer:NT,SpecStrip:IT,Split:OT,Stats:GT,StatsParagraph:KT,Testimonials:JT,Text:QT,Ticker:oP,Timeline:gP,TimelineTrack:bP,TitleWithButtons:CP},B1=et(WV,_21);import{IconButton as UV}from"efficient-shell/ui";import{SettingsField as B21}from"efficient-easel/panel";import{ColumnsIcon as Z21}from"efficient-easel/icons";import{Fragment as I21}from"react";import{jsx as R21}from"react/jsx-runtime";function R5(e,t){return e.split(/\{([A-Za-z][A-Za-z0-9_]*)\}/g).map((a,s)=>s%2===1?R21(I21,{children:a in t?t[a]:`{${a}}`},s):a)}import{Fragment as jV,jsx as Ct,jsxs as ig}from"react/jsx-runtime";function D21(e,t,a,s){let c=a.indexOf(e[t]),l=c>=0?c:0,r=a[Math.min(Math.max(l+s,0),a.length-1)];return{...e,[t]:r}}function Zs({label:e,unit:t,steps:a,value:s,onChange:c,format:l=String,note:r}){let o=C5(),i=a.indexOf(s[o]),n=i>=0?i:0,h=m=>c(D21(s,o,a,m));return Ct(B21,{label:p(e),icon:Ct(Z21,{}),action:ig("div",{className:"sf-colstep",children:[Ct(UV,{variant:"secondary",size:"sm","aria-label":p("Fewer {unit} on {view}",{unit:t,view:p(w5[o])}),disabled:n<=0,onClick:()=>h(-1),children:"\u2212"}),Ct("span",{className:"sf-colstep-value","aria-live":"polite",children:l(a[n])}),Ct(UV,{variant:"secondary",size:"sm","aria-label":p("More {unit} on {view}",{unit:t,view:p(w5[o])}),disabled:n>=a.length-1,onClick:()=>h(1),children:"+"})]}),hint:ig(jV,{children:[R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Ct("strong",{children:p(w5[o])})}),r?ig(jV,{children:[" ",r]}):null]})})}var A6="auto",hg=1,KV=6,mg={desktop:A6,tablet:A6,mobile:A6},$V=[A6,...Array.from({length:KV-hg+1},(e,t)=>hg+t)],O21="1rem",YV=`var(--sf-block-gap-rem, var(--sf-card-gap, ${O21}))`,pg=240,ug=150,G21=.5,q21=e=>`--plp-grid-cols-${e}`,W21="--plp-grid-gap";function XV(e){return e===A6?"Auto":String(e)}function ng(e){if(e===A6)return A6;let t=typeof e=="number"?e:NaN;return Number.isFinite(t)?Math.min(Math.max(Math.round(t),hg),KV):A6}function Wi(e){if(!e||typeof e!="object")return{...mg};let t=e;return{desktop:ng(t.desktop),tablet:ng(t.tablet),mobile:ng(t.mobile)}}function U21(e){if(e===A6)return`repeat(auto-fill, minmax(${pg}px, 1fr))`;let a=`calc((100% - ${`${e-1} * ${YV}`}) / ${e} - ${G21}px)`;return`repeat(auto-fill, minmax(max(${ug}px, ${a}), 1fr))`}function JV(e,t=null){let a={[W21]:YV};for(let s of Pw)a[q21(s)]=U21(e[t??s]);return a}import{Fragment as j21,jsx as dg}from"react/jsx-runtime";function gg({value:e,onChange:t}){return dg(Zs,{label:"Columns",unit:p("items per row"),steps:$V,value:Wi(e),format:a=>p(XV(a)),onChange:t,note:dg(j21,{children:R5(p("{auto} fits as many {px}px-wide cards as the width allows. A number is a maximum: where it would squeeze cards under {min}px the row shows fewer.",{px:pg,min:ug}),{auto:dg("strong",{children:p("Auto")})})})})}import{useCallback as l5,useEffect as V41,useId as N41,useMemo as T3,useRef as _41,useState as I41}from"react";import{jsxs as QV}from"react/jsx-runtime";function s5({text:e,linkText:t,linkHref:a}){let s=(t??"").trim(),c=(a??"").trim(),l=!!s&&!!c;return!e&&!l?null:QV("p",{className:"mt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.06em] text-fg-dim",children:[e?M(e):null,e&&l?" ":null,l&&QV(L1,{href:c,className:"text-accent transition-colors hover:text-fg",children:[M(s)," \u2192"]})]})}import{createContext as K21,useCallback as eN,useContext as $21,useEffect as Y21,useId as X21,useMemo as J21,useRef as Q21,useState as e31}from"react";import{jsx as t31}from"react/jsx-runtime";var tN=K21(null);function fR1({reason:e,children:t}){let[a,s]=e31([]),c=Q21(null),l=eN(n=>{s(h=>h.includes(n)?h:[...h,n])},[]),r=eN(n=>{s(h=>h.filter(m=>m!==n))},[]),o=e==="none-configured",i=J21(()=>({noCurrencyConfigured:o,live:a,firstRendered:c,join:l,leave:r}),[o,a,l,r]);return t31(tN.Provider,{value:i,children:t})}function aN(e){let t=$21(tN),a=X21(),s=!!e&&!!t?.noCurrencyConfigured;s&&t&&t.firstRendered.current===null&&(t.firstRendered.current=a);let c=t?.join,l=t?.leave;return Y21(()=>{if(!(!s||!c||!l))return c(a),()=>l(a)},[s,c,l,a]),!s||!t?!1:(t.live.length>0?t.live[0]:t.firstRendered.current)===a}import{jsx as s31}from"react/jsx-runtime";var a31="This website has no currency yet. Add one in {place} and these cards will price. Only you can see this line.";function Ds({editing:e}){return aN(e)?s31(s5,{text:p(a31,{place:p("Settings")})}):null}import{useEffect as c31,useState as l31}from"react";var kt=ct({fetch:(e,t)=>J1.listProducts(e,{siteId:t,kinds:["alloy-wheel","tyre"]}),keyBy:i2}),i3=(e=!1)=>kt(e).then(t=>t.filter(a=>a.kind==="alloy-wheel"));function sN(e){let[t,a]=l31(null);return c31(()=>{let s=!1;return e().then(c=>{s||a(c)}),()=>{s=!0}},[e]),t}function Ui(){return sN(i3)}function cN(){return sN(kt)}function r31(e){return e.length===1?h4[e[0]]:"Products"}function ji(e){return e.length===1?e[0]:null}function o31(e){switch(ji(e)){case"alloy-wheel":return"Only wheels that bolt on";case"tyre":return"Only sizes your car takes";default:return"Only what fits your car"}}function i31(e){switch(ji(e)){case"alloy-wheel":return{heading:"Let's find wheels that fit your car.",intro:"Tell us what you drive and we'll show you every set that bolts straight on \u2014 bolt pattern, offset and hub bore checked for you."};case"tyre":return{heading:"Let's find tyres that fit your car.",intro:"Tell us what you drive and we'll show you every tyre made in your car's factory sizes \u2014 front and rear checked for you."};default:return{heading:"Let's find products that fit your car.",intro:"Tell us what you drive and we'll show you what fits. Wheels are checked on bolt pattern, offset and hub bore. Tyres are checked on the sizes your car takes."}}}function n31(e){switch(ji(e)){case"alloy-wheel":return"We only list a wheel here once its bolt pattern and hub bore are confirmed against your car. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand.";case"tyre":return"We only list a tyre here once one of its sizes is confirmed for your car. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand.";default:return"We only list a product here once it is confirmed against your car: a wheel on its bolt pattern and hub bore, a tyre on the sizes your car takes. Nothing in this range is confirmed for it yet \u2014 browse everything, or ask us and we'll check by hand."}}var h31="We don't have factory tyre data for this exact car, so we can't promise a fit. Here are all tyres instead \u2014 the size is printed on your current tyre's sidewall.";function Os(e){let t=M5(e),a=i31(e),s=`showing every ${t.one}`;return{promise:o31(e),showAll:`Show all ${t.many}`,browseInstead:`Browse all ${t.many} instead`,showingEvery:s,eyebrow:`${r31(e)} \xB7 checked fitment`,gateHeading:a.heading,gateIntro:a.intro,nothingFits:n31(e),noData:ji(e)==="tyre"?h31:`No fitment data for this car \u2014 ${s}`,cascadeDown:`Vehicle data is unavailable right now \u2014 browse all ${t.many} and we'll help you check fitment at checkout.`,countFits:c=>`${c} ${c===1?t.one:t.many} fit${c===1?"s":""}`}}function lN(e,t,a,s){let c=Os(a),l=a.length!==s.length;return{heading:!l&&e||c.gateHeading,intro:!l&&t||c.gateIntro}}import{useCallback as I31,useEffect as R31,useMemo as B31,useState as PN}from"react";import{useState as m31}from"react";import{jsx as vg}from"react/jsx-runtime";function Gs({brand:e,logo:t}){let[a,s]=m31(!1),c=(e??"").trim();if(!c)return null;let l=a?void 0:s4(t??void 0);return vg("div",{className:"sf-card-plate absolute inset-x-0 bottom-0 flex h-1/4 items-center justify-center bg-[var(--card-bg)] px-4 transition-colors duration-200 group-hover:bg-[var(--card-bg-hover)]",children:l?vg("img",{src:l,alt:c,className:"max-h-[52%] max-w-[78%] object-contain",draggable:!1,onError:()=>s(!0)}):vg("span",{className:"truncate font-display text-[length:var(--size-body,18px)] font-medium uppercase leading-none tracking-[-0.01em] text-fg",children:c})})}import{Fragment as p31,jsx as rN,jsxs as u31}from"react/jsx-runtime";function fg(e,t){return!e&&!t?null:u31(p31,{children:[e&&rN("span",{className:"text-fg",children:e}),e&&t?rN("span",{className:"mx-[6px] text-fg-dim",children:"\xB7"}):null,t]})}function qs(e,t){let a=Me(t);return e.kind||e.brand&&a("brand")?!0:e.process&&a(Se)}function Ki({kindLabel:e,brand:t,process:a},s){if(!qs({kind:!!e,brand:!!t,process:!!a},s))return null;let c=Me(s);return fg(e,c("brand")?t:null)??(c(Se)?a:null)}import{useEffect as d31,useState as oN}from"react";var bg=new Map;function g31(e){let t=bg.get(e);if(t)return t;let a=v0.getTyre(e).catch(s=>{throw bg.delete(e),s});return bg.set(e,a),a}function iN(e,t){let[a,s]=oN("idle"),[c,l]=oN(null);return d31(()=>{if(!t||!e)return;let r=!1;return s("loading"),g31(e).then(o=>{r||(l(o),s("ready"))}).catch(()=>{r||s("error")}),()=>{r=!0}},[e,t]),{state:a,tyre:c}}import{Fragment as v31}from"react";import{Fragment as xg,jsx as c5,jsxs as B5}from"react/jsx-runtime";var $i="mt-3 flex h-[26px] items-center gap-1",Yi="flex min-w-0 items-center gap-1 overflow-hidden",Xi="shrink-0 border border-line px-1.5 py-0.5 font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] text-fg-dim",zg="border px-1.5 py-0.5 font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] whitespace-nowrap",Ji=`${zg} border-accent/60 text-accent`,f31=e=>`calc((100% - ${e}px) / 2)`,b31=2,x31=28,nN=e=>b31+2*x31+(e?10:0);var z31=16;var y31="whitespace-nowrap",w31=e=>typeof e=="string"?e:e.text;function Qi(e,t="\xB7"){return e.map((a,s)=>{let c=w31(a),l=typeof a!="string"&&a.accent;return B5(v31,{children:[c5("span",{className:`${y31}${l?" text-accent":""}`,children:s<e.length-1?`${c} ${t}`:c}),s<e.length-1?" ":null]},c)})}var en="mt-3 flex flex-col gap-2",e9="cursor-pointer bg-btn px-4 py-2.5 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-btn-ink transition-colors hover:bg-fg",tn="border border-btn px-4 py-2.5 text-center font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-btn transition-colors hover:bg-btn hover:text-btn-ink",C31="border px-2 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.3em]",Ws="absolute right-[18px] top-[18px] z-10";function Mt({tone:e,className:t,children:a}){return c5("span",{className:[t,C31,e==="solid"?"border-accent bg-accent text-bg":"border-accent text-accent"].filter(Boolean).join(" "),children:a})}function t9({variant:e="catalog",wide:t=!1,href:a,identityLink:s=!1,outline:c="none",imageBackgroundFill:l=e7,containerProps:r,probes:o,indexBadge:i,badges:n,image:h,imageSecond:m,plate:u,eyebrow:d,reserveEyebrow:v=!1,name:g,spec:b,was:f,price:w,metaLine:z,swatches:k,showPrice:S=!0,reserveSwatches:H=!0,extras:I}){let P=e==="catalog",D=Uy(l),E=D&&l===U9,F=E?"bg-[var(--wheel-stage)] p-[5px]":D?"p-[5px]":"",_=D&&!E?{backgroundColor:l}:{},Z=(b1,$)=>c5("figure",{className:`m-0 aspect-square [flex:0_0_auto] max-w-full max-[800px]:w-[252px] ${$}`,style:{width:f31(nN(D))},children:b1}),G=P?B5("div",{className:t?`relative mt-2 mb-5 flex items-center justify-center [&_img]:object-top max-[800px]:flex-col ${F}`:`relative mt-2 mb-5 flex aspect-square items-center justify-center overflow-hidden [&_img]:object-top ${F}`,style:t?{..._,borderRadius:10,columnGap:nN(D),rowGap:z31}:{..._,borderRadius:"var(--sf-card-image-radius, 10px)"},children:[t?B5(xg,{children:[Z(h,"max-[800px]:-translate-x-[38px]"),Z(m??h,"max-[800px]:translate-x-[38px]")]}):h,u]}):B5("div",{className:"relative mb-[18px] aspect-square overflow-hidden bg-bg p-[30px] [&_img]:object-top",style:{borderRadius:"var(--sf-card-image-radius, 10px)"},children:[h,u]}),V=`font-mono text-[length:var(--size-label,12px)] uppercase text-accent ${P?"tracking-[0.3em]":"tracking-[0.25em]"}`,j=d?c5("div",{className:V,children:d}):P&&v?c5("div",{"aria-hidden":!0,className:V,children:"\xA0"}):null,N=c5("div",{className:P?"mt-2 h-[60px] overflow-hidden break-words font-heading3 text-[length:var(--size-headingSmall,30px)] font-medium uppercase leading-none tracking-[-0.02em]":"mt-[6px] font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium tracking-[-0.02em]",children:g}),Q=c5("div",{className:P?"mt-2 h-[38px] overflow-hidden font-mono text-[length:var(--size-label,13px)] leading-[19px] tracking-[0.14em] text-fg-dim":"mt-[4px] font-mono text-[length:var(--size-label,13px)] tracking-[0.1em] text-fg-dim",children:b}),W=S?B5("div",{className:"mt-2 font-mono text-[length:var(--size-label,13px)]",children:[f&&c5("span",{className:"mr-2 text-fg-dim line-through",children:f}),w]}):null,U=S&&z?c5("div",{className:"mt-[2px] font-mono text-[length:var(--size-label,11px)] tracking-[0.08em] text-fg-dim",children:z}):null,i1=P&&!k?H?c5("div",{"aria-hidden":!0,className:"mt-4 h-4"}):null:k,y1=[P?"sf-card sf-card-fill group relative flex min-h-[460px] flex-col bg-[var(--card-bg)] px-7 pt-8 pb-7 transition-colors duration-200 hover:bg-[var(--card-bg-hover)]":"sf-card sf-card-fill group relative block bg-[var(--card-bg)] p-5 transition-colors duration-300 hover:bg-[var(--card-bg-hover)]",Pl(c),t?"col-span-2 max-[800px]:col-span-1 @max-[720px]:col-span-1":""].filter(Boolean).join(" "),K=B5(xg,{children:[G,j,N]}),c1=B5(xg,{children:[Q,W,U,i1,I]});return a?s?B5("article",{...r,className:y1,children:[o,i,n,c5(L1,{href:a,className:"flex flex-col",children:K}),c1]}):B5(L1,{href:a,className:y1,children:[o,i,n,K,c1]}):B5("article",{...r,className:y1,children:[o,i,n,K,c1]})}function yg(e){return(e.components??[]).reduce((a,s)=>a+s.wheels,0)>4}function hN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(yg)}var k31=150,M31="Front + rear",mN="L/R pair",pN="Not handed",S31="L/R";function L31(e){return e.et==null||e.rearEt==null?0:Math.abs(e.rearEt-e.et)}function A31(e){return L31(e)>=k31}function uN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(A31)}function St(e){return e.directional===!0}function dN(e){return e.rearWidth!=null||e.rearEt!=null&&e.rearEt!==e.et}function gN(e){return{twoObjects:F31(e),handed:e.handed??!1,staggered:!1}}function vN(e){let t=[e.twoObjects?M31:"",e.handed?S31:""].filter(Boolean);return t.length?t.join(" \xB7 "):null}function fN(e){return e.handed}function H31(e){return new Set((e.components??[]).map(t=>t.partNumber)).size>1}function bN(e){return e.kind==="alloy-wheel"&&(e.source.variants??[]).some(H31)}function F31(e){return(e.setWheelCount??0)>4}var T31=new Set(["boltPattern"]);function xN(e,t){return e&&T31.has(t)}var P31="dually";function Lt(e){let t=e.components.reduce((c,l)=>c+l.wheels,0)||4,a=e.kind,s=[a==="staggered"?"Staggered":a===P31?"Dually":"",St(e)?"L/R":""].filter(Boolean);return s.length?`${s.join(" ")} set of ${t}`:`Set of ${t}`}function E31(e,t){return[...new Set(e.filter(a=>!t||a.finishName===t).map(a=>a.size))]}function At(e,t,a){if(!(!t||!a))return e.find(s=>s.finishName===t&&s.size===a)}function Us(e){return e!=null&&e.inStock===!1}function zN(e,t){return t?e.filter(a=>a.finishName===t&&Us(a)):[]}function yN(e,t,a){return t.findIndex((s,c)=>a[c]!==!1&&E31(e,s).length>0)}function an(e){let t=new Set((e.sizePairs??[]).map(c=>`${c.diameter}x${c.width}`)),a=e.spec?.pcds??[],s=e.spec?.etRange??[];return t.size===1&&a.length<=1&&(s.length===0||s[0]===s[s.length-1])}function sn(e){return e.et==null?null:e.rearEt!=null&&e.rearEt!==e.et?`${e.et}/${e.rearEt}`:String(e.et)}function wg(e){return e.diameter==null||e.width==null?JSON.stringify([e.size]):JSON.stringify([e.kind,e.diameter,e.width,e.rearWidth??null])}function wN(e){return e.diameter==null||e.width==null?e.size:`${e.diameter}" ${e.kind}`}function CN(e){return e.diameter==null||e.width==null?"":e.rearWidth!=null?`${P2(e.width)} front / ${P2(e.rearWidth)} rear`:`${P2(e.width)} all round`}function js(e){if(e.diameter==null||e.width==null)return e.size;let t=(a,s)=>`${e.diameter} \xD7 ${P2(a)}${s!=null?` ET ${s}`:""}`;return dN(e)?`${t(e.width,e.et)} front \xB7 ${t(e.rearWidth??e.width,e.rearEt)} rear`:t(e.width,e.et)}function Cg(e,t){return t?e.filter(a=>a.finishName===t):[]}var kN="handed",MN="plain";function Ks(e){let t=e.variants??[],a=e.finishes.map(u=>({value:u.name,label:u.name,swatch:u.color}));function s(u){let d=[];for(let v of t){let g=u(v);!g||d.some(b=>b.value===g.value)||d.push(g)}return d}let c=s(u=>({value:wg(u),label:wN(u),note:CN(u)})),l=s(u=>u.boltPattern?{value:u.boltPattern,label:u.boltPattern}:null),r=s(u=>{let d=sn(u);return d===null?null:{value:d,label:`ET ${d}`}}),o=s(u=>u.centreBore==null?null:{value:P2(u.centreBore),label:`${P2(u.centreBore)} mm`}),i=s(u=>({value:St(u)?kN:MN,label:St(u)?mN:pN})),n=t.map(u=>({id:`${u.finishName}|${u.size}`,options:{finish:u.finishName,size:wg(u),variantSize:u.size,...u.boltPattern?{boltPattern:u.boltPattern}:{},...sn(u)!==null?{et:sn(u)}:{},...u.centreBore==null?{}:{centreBore:P2(u.centreBore)},pairing:St(u)?kN:MN},inStock:!Us(u),image:null,components:u.components})),m=((e.defaultFinish?a.find(u=>u.value===e.defaultFinish):void 0)??a[0])?.value;return{kind:"alloy-wheel",source:e,slug:e.slug,name:e.name,eyebrow:e.process,badge:e.badge==="new"?"New 2026":e.badge?"Bestseller":"",href:`/wheels/${e.slug}`,crumbs:[{label:"Home",href:"/"},{label:"Wheels",href:"/wheels"},{label:e.process,href:"/wheels"},{label:e.name}],cover:e.coverImage??null,inStock:e.inStock===!0,mediaGroups:e.mediaGroups,optionFields:[{key:"finish",label:"Finish",prompt:"Select a finish",role:"resolves",display:"swatch",defaultValue:m},{key:"size",label:"Size",prompt:"Select a size",role:"resolves",display:"pill",empty:{text:"This wheel isn't available to order online in this finish.",linkText:"Contact us about it \u2192",href:"/contact"}},{key:"boltPattern",label:"Bolt pattern",prompt:"Select a bolt pattern",role:"describes",display:"pill"},{key:"et",label:"Offset",prompt:"Select an offset",role:"describes",display:"pill"},{key:"centreBore",label:"Centre bore",prompt:"Select a centre bore",role:"describes",display:"pill"},{key:"pairing",label:"Wheels",prompt:"Select a pairing",role:"describes",display:"pill"}],optionValues:{finish:a,size:c,boltPattern:l,et:r,centreBore:o,pairing:i},parts:n,anchorPrices:e.prices,anchorMsrpPrices:e.msrpPrices??{}}}function SN(e,t){if(e.kind!=="alloy-wheel"||t===null)return e;let a=new Set(ZM(e.source.variants??[],t));if(a.size===0)return e;let s=e.parts.filter(o=>{let i=D7(e.source,o);return i!==null&&a.has(i)});if(s.length===0||s.length===e.parts.length)return e;let c=(o,i)=>new Set(o.map(n=>n.options[i]).filter(n=>n!==void 0)),l={},r=[];for(let o of e.optionFields){let i=c(e.parts,o.key),n=c(s,o.key),h=(e.optionValues[o.key]??[]).filter(u=>n.has(u.value)||!i.has(u.value));l[o.key]=h;let m=o.defaultValue!==void 0&&!h.some(u=>u.value===o.defaultValue)?h[0]?.value:o.defaultValue;r.push(m===o.defaultValue?o:{...o,defaultValue:m})}return{...e,optionFields:r,optionValues:l,parts:s}}function D7(e,t){return t?At(e.variants??[],t.options.finish,t.options.variantSize)??null:null}function LN(e,t){return e.finishes.find(a=>a.name===t)??e.finishes[0]??GC}function FN(e){return e.kind==="tyre"?"advisory":"required"}var Ht={choice:FC,qty:1};function V31(e,t){if(e.kind!=="alloy-wheel")return`Set of ${4}`;let a=D7(e.source,t);return a?Lt(a):`Set of ${4}`}var AN=(e,t)=>e===1?t:`${e} \xD7 ${t}`;function HN(e){return e.unit==="set"?{label:`Add a spare \u2014 ${i7+1} instead of ${i7}`}:null}var a9={howMany:"How many wheels",oneSet:"One set",oneSetPlusSpare:"One set + 1 spare",whichSide:"Which side is the spare?",left:"Left",right:"Right"};function N31(e,t){return t.unit!=="set"||PC(e)===null?null:{counts:[{value:i7,label:a9.oneSet},{value:i7+vr,label:a9.oneSetPlusSpare}],side:t.spares>0?{label:a9.whichSide,options:[{value:"left",label:a9.left},{value:"right",label:a9.right}]}:null}}function kg(e,t,a){if(e.kind==="tyre")return{packs:[{value:"set",label:`A set of ${i7}`},{value:"single",label:"Just one"}],extra:HN(a.choice),spareCounts:[],spareSide:null,components:t?su({sku:t.id,prices:t.components[0].prices},a.choice):[],quantityLabel:AN(a.qty,fr(a.choice))};let s=t?N31(t.components,a.choice):null;return{packs:[],extra:s?null:HN(a.choice),spareCounts:s?.counts??[],spareSide:s?.side??null,components:t?Im(t.components,a.choice):[],quantityLabel:AN(a.qty,EC(V31(e,t),a.choice))}}function TN(e,t,a,s,c){if(!t)return null;if(e.kind==="tyre"){let h=(e.source.variants??[]).find(m=>m.sku===t.id);return h?fo(e.source,h,s.choice,s.qty):null}let l=e.source,r=D7(l,t);if(!r)return null;let o=t.options.finish??"",i=r.size,n=s.choice.spares>0;return{id:`${l.slug}|${o}|${i}|${c.fitmentKey}${n?"|spare":""}`,slug:l.slug,name:qe(l.name),process:l.process,positionNo:"01",config:[{label:i},{label:o,gold:!0},{label:c.fitmentLabel},{label:kg(e,t,s).quantityLabel}],finishName:o,size:i,components:Im(t.components,s.choice),qty:s.qty,...n?{pack:s.choice}:{}}}function cn(e,t){let a=t.trim(),s=e.trim();return!s||!_31(a,s)?a:a.slice(s.length).replace(/^[^\p{L}\p{N}]+/u,"")||a}function _31(e,t){if(e.length<t.length||e.slice(0,t.length).toLowerCase()!==t.toLowerCase())return!1;let a=e[t.length];return a===void 0||!/[\p{L}\p{N}]/u.test(a)}import{Fragment as G31,jsx as O7,jsxs as $s}from"react/jsx-runtime";var Z31="from ",D31=2,O31=[];function Mg({brand:e,brandLogo:t,brandPlate:a=!0,kindLabel:s=null,showBrand:c=!0,name:l,slug:r,sizes:o,fitSize:i=null,rimDiameters:n,prices:h,image:m,currency:u,editing:d=!1,fieldUsage:v=O31}){let g=Me(v),{add:b,open:f,warmCatalog:w}=i4();R31(()=>{d||w("tyre")},[d,w]);let{currency:z}=d0(),k=h7(de(h,u),null),S=zr(k,u,Z31),H=[o.length>0?`${o.length} ${o.length===1?"size":"sizes"}`:null,g("rim_diameter")?$r(n):null].filter(Boolean).join(" \xB7 "),I=Ge(r),[P,D]=PN(!1),E=I31(()=>{r&&D(!0)},[r]),{state:F,tyre:_}=iN(r??null,P),Z=B31(()=>_?.variants??[],[_]),[G,V]=PN(null),j=Z.length===1?Z[0].size:null,N=G??j,Q=Z.find(u1=>u1.size===N),W=Q!=null&&OS(Q,z),U=F==="ready",i1=!I||F==="error"||U&&Z.length===0;function y1(){!_||!Q||!W||d||(b(fo(_,Q,Ht.choice,Ht.qty)),f())}let K=U&&Z.length>0?Z.map(u1=>u1.size):o,c1=K.slice(0,D31),b1=K.length-c1.length,$=u1=>["cursor-pointer transition-colors",zg,u1?"border-accent bg-accent text-bg":"border-accent/60 text-accent hover:border-accent hover:bg-accent/10"].join(" ");return O7(t9,{href:I,identityLink:!0,containerProps:{onPointerEnter:E,onTouchStart:E,onFocusCapture:E},image:O7(p6,{image:m,className:"h-full w-full",sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 280px",showBackground:!1}),plate:a?O7(Gs,{brand:e,logo:t}):null,eyebrow:fg(s,c&&g("brand")&&e||null),name:cn(e??"",l),spec:H,price:S,metaLine:k.priced?"each":null,extras:$s(G31,{children:[i&&$s("p",{className:"font-mono text-[length:var(--size-label,11px)] font-medium uppercase tracking-[0.14em] text-green",children:["Fits \xB7 ",i]}),$s("div",{className:$i,children:[O7("div",{className:Yi,children:c1.map(u1=>U&&Z.length>0?O7("button",{type:"button",title:u1,"aria-label":u1,"aria-pressed":N===u1,onClick:()=>V(u1),className:$(N===u1),children:u1},u1):O7("span",{className:Ji,children:u1},u1))}),b1>0&&$s("span",{className:Xi,children:["+",b1]})]}),$s("div",{className:en,children:[!i1&&k.priced&&O7("button",{type:"button",onClick:y1,[ue]:"",disabled:U&&!W,className:W||!U?`${e9}${W?"":" opacity-80"}`:"cursor-not-allowed border border-dashed border-accent/50 px-4 py-2.5 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.24em] text-accent/70",children:U&&!W?"Select a size":"Add to basket"}),I&&O7(L1,{href:I,className:tn,children:"Open product page"})]})]})})}import{jsx as q31}from"react/jsx-runtime";function Ys({item:e,currency:t,kindLabel:a=null,showBrand:s=!0,fitSize:c=null,editing:l=!1,fieldUsage:r}){return q31(Mg,{brand:e.brand,brandLogo:e.brandLogo,kindLabel:a,showBrand:s,name:e.name,slug:e.slug,sizes:e.sizes,fitSize:c,rimDiameters:e.rimDiameters,prices:e.prices,image:e.coverImage,currency:t,editing:l,fieldUsage:r})}import{jsx as ln,jsxs as W31}from"react/jsx-runtime";function Sg({filters:e,onToggle:t,onPriceMax:a,onInStockOnly:s,onPickType:c}){let{currency:l}=d0(),r=Lk(e,l,B2);return r.length===0?null:ln("ul",{className:"flex list-none flex-wrap items-center gap-1.5",children:r.map(o=>ln("li",{children:W31("button",{type:"button",onClick:()=>o.key==="price"?a(null):o.key==="inStock"?s(!1):o.key==="kind"?c(null):t(o.key,o.value),className:`flex cursor-pointer items-center gap-1.5 px-2 py-1 font-mono text-[10px] uppercase tracking-[0.14em] text-bg hover:bg-fg ${o.key==="inStock"?"bg-green":"bg-accent"}`,children:[o.label,ln("span",{"aria-hidden":"true",children:"\u2715"}),ln("span",{className:"sr-only",children:"Remove filter"})]})},`${o.key}:${o.value}`))})}function Ft(e){let t=typeof e=="number"?e:Number.parseInt(String(e??""),10);return!Number.isFinite(t)||t<1||t>5?1:Math.trunc(t)}function Ag(e,t){if(!e||!t||!Number.isFinite(t)||t<=0)return null;let a=e.lugRenderings?.[String(t)];if(!Array.isArray(a))return null;let s=a.filter(c=>typeof c=="string"&&c.length>0);return s.length>0?s:null}function j31({carRenderings:e,renderings:t,coverIndex:a,shownFinishName:s,defaultFinishName:c,shownSrc:l}){if(e&&e.length>0){let o=Math.min(Math.max(a,1)-1,e.length-1);return e[o]??l}if(a<=1||!t||t.length===0||!c||s!==c)return l;let r=Math.min(a-1,t.length-1);return t[r]??l}function rn({overrideSrc:e,hookSrc:t,failed:a}){return e&&!a.has(e)?e:t&&t!==e&&!a.has(t)?t:null}function on(e,t,a,s,c){let l=a===void 0?void 0:e.finishes?.find(r=>r.name===a);return j31({carRenderings:Ag(l,c),renderings:e.defaultFinishRenderings,coverIndex:t,shownFinishName:a,defaultFinishName:e.defaultFinish,shownSrc:s})}import{useState as u41}from"react";import{jsx as Hg,jsxs as K31}from"react/jsx-runtime";function Xs({finishes:e,availability:t,selectedIdx:a,hoverIdx:s,activeFinish:c,onSelect:l,onHover:r,showLabel:o=!0,className:i}){return K31("div",{className:["mt-4",i].filter(Boolean).join(" "),children:[Hg("div",{className:"flex flex-wrap items-center gap-2",onMouseLeave:()=>r(null),onClick:n=>n.preventDefault(),children:e.map((n,h)=>{if(!t[h])return null;let m=h===a,u=s===h&&s!==a;return Hg("button",{type:"button",title:n.name,"aria-label":n.name,"aria-pressed":m,onMouseEnter:()=>r(h),onFocus:()=>r(h),onBlur:()=>r(null),onClick:d=>{d.preventDefault(),d.stopPropagation(),l(h)},className:["h-4 w-4 shrink-0 rounded-full transition-all",m?"ring-2 ring-accent ring-offset-2 ring-offset-surface":u?"ring-1 ring-fg ring-offset-2 ring-offset-surface":"ring-1 ring-fg/30 ring-offset-1 ring-offset-surface"].join(" "),style:{background:n.color,border:"1px solid var(--swatch-border)"}},n.name)})}),o&&c&&Hg("div",{className:"mt-2 truncate font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:c.name})]})}import{useState as $31}from"react";import{jsx as Tt,jsxs as EN}from"react/jsx-runtime";function Js({src:e,alt:t=""}){let[a,s]=$31(!1),c=e||"";return Tt("div",{className:"relative aspect-square overflow-hidden bg-bg",children:EN("div",{className:"absolute inset-0 flex items-center justify-center transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:rotate-[60deg]",children:[Tt("div",{className:"absolute inset-0 z-[1] flex items-center justify-center",children:EN("div",{className:"relative flex h-[70%] w-[70%] items-center justify-center rounded-full border-2",style:{borderColor:"var(--accent)"},children:[Tt("div",{className:"absolute inset-[10%] rounded-full border",style:{borderColor:"var(--accent)",opacity:.4}}),Tt("div",{className:"absolute left-1/2 top-1/2 h-[18%] w-[18%] -translate-x-1/2 -translate-y-1/2 rounded-full border-2",style:{borderColor:"var(--accent)"}}),Tt("div",{className:"absolute left-1/2 top-1/2 h-[6%] w-[6%] -translate-x-1/2 -translate-y-1/2 rounded-full",style:{background:"var(--accent)"}})]})}),c&&Tt("img",{src:c,alt:t,className:"absolute inset-0 z-[2] h-full w-full object-contain",style:{display:a?"none":"block"},onError:()=>s(!0)})]})})}import{useEffect as _N,useLayoutEffect as Q31,useRef as e41,useState as IN}from"react";import{useId as NN,useRef as J31,useState as Fg}from"react";import{useCallback as VN,useRef as Y31,useState as X31}from"react";function nn(){let[e,t]=X31("idle"),a=Y31(!1),s=VN(()=>{a.current=!1,t("idle")},[]),c=VN(async({partNumbers:l,email:r,productSlug:o,subscribeToOffers:i=!1,dryRun:n=!1})=>{if(a.current)return;let h=r.trim();if(!be(h)){t("invalid");return}a.current=!0,t("sending");try{if(!n)for(let m of l)await v0.createStockAlert({partNumber:m,email:h,productSlug:o})}catch{a.current=!1,t("error");return}if(i&&!n)try{await v0.createNewsletterSubscription({email:h,source:G3.stockAlertOptIn})}catch{}a.current=!1,t("sent")},[]);return{status:e,submit:c,reset:s}}import{jsx as N0,jsxs as x3}from"react/jsx-runtime";function Tg({wheelName:e,productSlug:t,finishName:a,variants:s,initialSize:c,onClose:l,editing:r=!1}){let o=NN(),i=NN(),n=J31(null),{currency:h}=d0(),m=nn(),[u,d]=Fg(()=>c??s[0]?.size??""),[v,g]=Fg(""),[b,f]=Fg(!1);L4({active:!0,onDismiss:l,focusRef:n});let w=s.find(I=>I.size===u)??s[0];if(!w)return null;let z=m.status==="sent",k=m.status==="sending",S=m.status==="invalid"?"Please enter a valid email address.":m.status==="error"?"Couldn't save that \u2014 please try again.":null;function H(){w&&m.submit({partNumbers:w.components.map(I=>I.partNumber),email:v,productSlug:t,subscribeToOffers:b,dryRun:r})}return N0("div",{role:"dialog","aria-modal":"true","aria-labelledby":o,onClick:I=>{I.target===I.currentTarget&&l()},className:"fixed inset-0 z-[90] flex items-center justify-center overflow-y-auto p-6 backdrop-blur-[6px]",style:{background:"color-mix(in oklab, var(--bg) 78%, transparent)"},children:x3("div",{ref:n,tabIndex:-1,className:"relative w-[420px] max-w-full border-2 border-accent bg-surface text-left shadow-[0_24px_60px_rgba(0,0,0,0.55)] outline-none",children:[N0("button",{type:"button",onClick:l,"aria-label":"Close",className:"absolute right-[10px] top-[10px] z-[2] flex h-9 w-9 cursor-pointer items-center justify-center text-fg-dim transition-colors hover:text-accent",children:N0("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:N0("path",{d:"M6 6l12 12M18 6 6 18"})})}),z?x3("div",{className:"px-6 py-8 text-center",children:[N0("span",{className:"mx-auto mb-4 grid h-16 w-16 place-items-center rounded-full border-[1.5px] border-accent bg-accent/15",children:N0("svg",{width:"30",height:"30",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2.5","aria-hidden":!0,children:N0("path",{d:"M20 6 9 17l-5-5"})})}),N0("h3",{id:o,className:"font-display text-[22px] font-medium uppercase leading-tight tracking-[-0.02em]",children:"You're on the list"}),x3("p",{className:"mx-auto mt-2 max-w-[34ch] text-[13px] leading-[1.6] text-fg-dim",children:["We'll alert ",N0("strong",{className:"font-normal text-fg",children:v.trim()})," as soon as the ",e0(e)," in ",w.size," is back. Keep an eye on your inbox."]}),N0("button",{type:"button",onClick:l,className:"mt-6 w-full cursor-pointer border border-line px-4 py-3 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-fg transition-colors hover:border-accent hover:text-accent",children:"Continue browsing"})]}):x3("form",{className:"p-6",noValidate:!0,onSubmit:I=>{I.preventDefault(),H()},children:[x3("div",{className:"mb-2 flex items-center gap-3",children:[N0("span",{className:"grid h-11 w-11 flex-none place-items-center border-[1.5px] border-accent bg-accent/15",children:x3("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2","aria-hidden":!0,children:[N0("path",{d:"M18 8a6 6 0 1 0-12 0c0 7-3 9-3 9h18s-3-2-3-9"}),N0("path",{d:"M13.7 21a2 2 0 0 1-3.4 0"})]})}),x3("div",{children:[N0("div",{className:"font-mono text-[10px] uppercase tracking-[0.3em] text-accent",children:"Back-in-stock alert"}),N0("h3",{id:o,className:"mt-0.5 font-display text-[22px] font-medium uppercase leading-tight tracking-[-0.02em]",children:"Notify me"})]})]}),x3("p",{className:"mb-5 text-[13px] leading-[1.6] text-fg-dim",children:["We'll email you the moment the"," ",N0("strong",{className:"font-normal text-fg",children:e0(e)}),a?` in ${a}`:""," ","is back in stock. No spam \u2014 one alert, then we're done."]}),x3("fieldset",{className:"mb-4 border-0 p-0",children:[N0("legend",{className:"mb-2 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:"Which fitment?"}),N0("div",{className:"flex flex-wrap gap-2",children:s.map(I=>{let P=I.size===w.size;return x3("button",{type:"button","aria-pressed":P,onClick:()=>d(I.size),className:["flex min-w-[calc(50%-4px)] flex-1 cursor-pointer flex-col items-start gap-0.5 border-[1.5px] px-3 py-2.5 text-left transition-colors",P?"border-accent bg-accent/15":"border-line hover:border-accent/60"].join(" "),children:[N0("span",{className:"font-mono text-[12px] font-bold tracking-[0.08em] text-fg",children:I.size}),N0("span",{className:"font-mono text-[10px] tracking-[0.08em] text-fg-dim",children:(()=>{let D=NC(I.components,h);return D.setTotal!=null?B2(D.setTotal,h):n7})()})]},I.size)})})]}),x3("div",{className:"mb-4",children:[N0("label",{htmlFor:i,className:"mb-2 block font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:"Email address"}),N0("input",{id:i,type:"email",value:v,onChange:I=>{g(I.target.value),(m.status==="invalid"||m.status==="error")&&m.reset()},placeholder:"you@example.com",disabled:k,className:"w-full 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"})]}),x3("label",{className:"mb-5 flex cursor-pointer items-start gap-2.5 text-[12px] leading-[1.5] text-fg-dim",children:[N0("input",{type:"checkbox",checked:b,onChange:I=>f(I.target.checked),className:"mt-0.5 h-[18px] w-[18px] flex-none cursor-pointer accent-[var(--accent)]"}),N0("span",{children:"Also send me fitment tips and occasional offers for my vehicle."})]}),x3("button",{type:"submit",disabled:k,className:"flex h-[50px] w-full cursor-pointer items-center justify-center gap-2 bg-btn px-4 font-mono text-[12px] font-bold uppercase tracking-[0.24em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-not-allowed disabled:opacity-60 disabled:hover:bg-btn",children:[x3("svg",{width:"17",height:"17",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:[N0("path",{d:"m22 2-7 20-4-9-9-4Z"}),N0("path",{d:"M22 2 11 13"})]}),k?"Sending\u2026":"Notify me when available"]}),S&&N0("p",{role:"alert",className:"mt-2.5 text-[12px] leading-[1.5]",style:{color:"var(--alert)"},children:S}),x3("div",{className:"mt-3 flex items-center justify-center gap-1.5 text-[11px] text-fg-dim",children:[x3("svg",{width:"12",height:"12",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2","aria-hidden":!0,children:[N0("rect",{x:"3",y:"11",width:"18",height:"11",rx:"1"}),N0("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),"We never share your details."]})]})]})})}import{Fragment as o41,jsx as F6,jsxs as hn}from"react/jsx-runtime";var t41=3;function a41({labels:e}){let t=e.slice(0,t41),a=e41(null),[s,c]=IN(t.length),l=e.join("|");Q31(()=>{let o=a.current;if(!o)return;let i=()=>{let h=[...o.children];if(h.length===0)return c(0);let m=h[0].offsetTop;c(h.filter(u=>u.offsetTop===m).length)};if(i(),typeof ResizeObserver>"u")return;let n=new ResizeObserver(i);return n.observe(o),()=>n.disconnect()},[l]);let r=Math.max(0,e.length-s);return hn("div",{className:$i,children:[F6("div",{ref:a,className:s41,children:t.map(o=>F6("span",{className:Ji,children:o},o))}),r>0&&hn("span",{className:Xi,children:["+",r]})]})}var s41=`${Yi} flex-wrap self-stretch content-start pt-px`;function c41({wheel:e,sel:t,price:a,editing:s}){let{add:c,open:l,warmCatalog:r}=i4();_N(()=>{s||r()},[s,r]);let{arm:o}=t;_N(()=>{o()},[o]);function i(){let n=t.selectedVariant;!n||!t.canAdd||a.priced&&(s||(c({id:`${e.slug}|${n.finishName}|${n.size}|quick`,slug:e.slug,name:qe(e.name),process:e.process,positionNo:"01",config:[{label:n.size},{label:n.finishName,gold:!0},{label:Lt(n)}],finishName:n.finishName,size:n.size,components:n.components,qty:1}),l()))}return F6("button",{type:"button",onClick:i,[ue]:"",disabled:!t.canAdd,className:t.canAdd?e9:`${e9} opacity-80`,children:"Add to basket"})}function l41(e){let t=fk(e);return t.length>0?t:[...new Set(e.sizes.map(a=>`${a}"`))]}function r41(e,t,a){return an(e)?t.outOfStock?"notify":t.unsellable||!a||t.detailState==="ready"&&!t.canAdd?"choose":"add":"choose"}function mn({wheel:e,sel:t,price:a,editing:s,show:c,href:l}){let[r,o]=IN(!1),i=c.sizes?F6(a41,{labels:l41(e)}):null,n=r41(e,t,a.priced),h=c.buy?n==="notify"?F6("button",{type:"button",onClick:()=>o(!0),className:e9,children:"Notify me when back"}):n==="add"?F6(c41,{wheel:e,sel:t,price:a,editing:s}):F6(L1,{href:l,className:`${e9} text-center`,children:"Select a size"}):null,m=c.page?F6(L1,{href:l,className:tn,children:"Open product page"}):null,u=h||m?hn("div",{className:en,children:[h,m]}):null;return{extras:i||u?hn(o41,{children:[i,u]}):null,dialog:r?F6(Tg,{wheelName:e.name,productSlug:e.slug,finishName:t.confirmedFinishName,variants:t.outOfStockVariants,initialSize:t.selectedVariant?.size,onClose:()=>o(!1),editing:s}):null}}import{useCallback as ON,useEffect as Vg,useMemo as un,useRef as Ng,useState as GN}from"react";import{useEffect as i41,useMemo as n41,useState as Pg}from"react";import{jsx as RN}from"react/jsx-runtime";function pn(e,t,a){let[s,c]=Pg(()=>{let b=a?e.findIndex(f=>f.name===a):-1;return b>=0?b:0}),[l,r]=Pg(null),[o,i]=Pg(()=>e.map(()=>!0)),n=b=>{i(f=>{if(f[b]===!1)return f;let w=[...f];return w[b]=!1,w})},h=n41(()=>o.map((b,f)=>b?f:-1).filter(b=>b!==-1),[o]);i41(()=>{if(h.length===0){s!==-1&&c(-1),l!==null&&r(null);return}s>=0&&!h.includes(s)&&c(h[0]),l!==null&&!h.includes(l)&&r(null)},[h,s,l]);let m=l??s,u=m>=0?e[m]:void 0,d=u?.src??t,v=h.length>=2,g=e.length>0?RN("div",{className:"hidden","aria-hidden":!0,children:e.map((b,f)=>RN(_3,{src:b.src,alt:"",width:16,height:16,loading:"eager",onError:()=>n(f)},b.src))}):null;return{selectedIdx:s,setSelectedIdx:c,hoverIdx:l,setHoverIdx:r,availability:o,finish:u,shownSrc:d,showSwatches:v,probes:g}}import{useEffect as h41,useState as BN}from"react";var Eg=new Map;function m41(e){let t=Eg.get(e);if(t)return t;let a=v0.getWheel(e).catch(s=>{throw Eg.delete(e),s});return Eg.set(e,a),a}function ZN(e,t){let[a,s]=BN("idle"),[c,l]=BN(null);return h41(()=>{if(!t)return;let r=!1;return s("loading"),m41(e).then(o=>{r||(l(o),s("ready"))}).catch(()=>{r||s("error")}),()=>{r=!0}},[e,t]),{state:a,wheel:c}}function DN(e,t){return t.length===0?-1:e.findIndex(a=>t.includes(a.family))}var p41=[];function dn(e,t=p41){let a=un(()=>e.finishes.filter(r7),[e.finishes]),s=a.length>0,c=pn(a,e.coverImage??null,e.defaultFinish??void 0),[l,r]=GN(!1),o=ON(()=>{s&&r(!0)},[s]),{state:i,wheel:n}=ZN(e.slug,l),h=un(()=>n?.variants??[],[n]),m=c.selectedIdx>=0?a[c.selectedIdx]?.name??null:null,[u,d]=GN(null),{setSelectedIdx:v}=c,g=Ng(!1),b=ON(F=>{g.current=!0,v(F)},[v]),f=t.join(","),w=Ng(null);Vg(()=>{if(w.current===f)return;w.current=f;let F=DN(a,t);F<0||(g.current=!0,v(F))},[f,t,a,v]);let z=Ng(!1);Vg(()=>{if(z.current||g.current||h.length===0||!m||(z.current=!0,Cg(h,m).length>0))return;let F=yN(h,a.map(_=>_.name),c.availability);F>=0&&v(F)},[h,m,a,c.availability,v]);let k=un(()=>Cg(h,m),[h,m]),S=an(e);Vg(()=>{d(F=>F&&k.some(_=>_.size===F)?F:S&&k.length===1?k[0].size:null)},[k,S]);let H=At(h,m,u),I=Us(H),P=H!=null&&!I,D=!s||i==="error"||i==="ready"&&k.length===0,E=un(()=>zN(h,m),[h,m]);return{...c,setSelectedIdx:b,finishes:a,arm:o,detailState:i,confirmedFinishName:m,sizeOptions:k,size:u,setSize:d,selectedVariant:H,outOfStock:I,outOfStockVariants:E,canAdd:P,unsellable:D}}import{Fragment as g41,jsx as G7,jsxs as qN}from"react/jsx-runtime";var d41=[];function _g({wheel:e,colours:t,fit:a=null,editing:s=!1,brandPlate:c=!1,kindLabel:l=null,showBrand:r=!0,showProcess:o=!1,coverIndex:i=1,fieldUsage:n=d41,spinOnHover:h=!1,imageBackgroundFill:m=e7,showBadge:u=!0,outline:d=r4,indexBadge:v=l4,showCardSizes:g=!0,showCardBuy:b=!0,showCardPage:f=!0,showCardPrice:w=!0,showCardFinishes:z=!0}){let{currency:k}=d0(),S=dn(e,t),H=on(e,i,S.finish?.name,S.shownSrc,a?.holes),I=ve(e,S.selectedVariant,k,1),P=yr(I,k),[D,E]=u41(()=>new Set),F=$=>E(u1=>u1.has($)?u1:new Set(u1).add($)),_=rn({overrideSrc:H,hookSrc:S.shownSrc,failed:D}),Z=Ce(e),G=OM(e,a),V=mn({wheel:e,sel:S,price:I,editing:s,href:`/wheels/${e.slug}`,show:{sizes:g,buy:b,page:f}}),j=S.detailState==="ready",N=S.unsellable,Q=h?"transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] group-hover:rotate-[72deg]":"",W=_?G7(_3,{src:_,alt:S.finish?`${e.name} \u2014 ${S.finish.name}`:e.name,width:800,height:800,sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 300px",className:["block h-full w-full object-contain",Q].filter(Boolean).join(" "),draggable:!1,onError:()=>F(_)},_):G7(Js,{imageLabel:e.name}),U=v!=="off"?G7("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null,i1=u?e.badge:null,y1=I.onSale||i1?qN("div",{className:`${Ws} pointer-events-none flex flex-col items-end gap-1`,children:[I.onSale&&G7(Mt,{tone:"solid",children:"Sale"}),i1&&G7(Mt,{tone:i1==="new"?"solid":"outline",children:i1==="new"?"New":"Bestseller"})]}):null,K=z&&S.finishes.length>0&&S.availability.some(Boolean)?G7(Xs,{finishes:S.finishes,availability:S.availability,selectedIdx:S.selectedIdx,hoverIdx:S.hoverIdx,activeFinish:S.finish,onSelect:S.setSelectedIdx,onHover:S.setHoverIdx,showLabel:!1}):null,c1=Hr(G.length>0?G:eo(e),n).map($=>$.text),b1=I.priced?["each",I.setTotal!=null&&S.selectedVariant?`${Lt(S.selectedVariant)} \xB7 ${B2(I.setTotal,k)}`:null].filter(Boolean).join(" \xB7 "):null;return qN(g41,{children:[G7(t9,{href:`/wheels/${e.slug}`,identityLink:!0,containerProps:{onPointerEnter:S.arm,onTouchStart:S.arm,onFocusCapture:S.arm},probes:S.probes,outline:d,imageBackgroundFill:m,indexBadge:U,badges:y1,image:W,plate:c?G7(Gs,{brand:Z,logo:e.brandLogo}):null,eyebrow:Ki({kindLabel:l,brand:r&&Z?e0(Z):null,process:o&&e.process?e0(e.process):null},n),reserveEyebrow:qs({kind:!!l,brand:r,process:o},n),name:e0(e.name),spec:Qi(c1,DM),was:P,price:fe(I,k),metaLine:b1,swatches:K,reserveSwatches:z,showPrice:w,extras:V.extras}),V.dialog]})}import{jsx as Qs,jsxs as gn}from"react/jsx-runtime";function Ig({page:e,pageCount:t,onPage:a}){if(t<=1)return null;let s=Ek(t,e),c="flex h-9 w-9 cursor-pointer items-center justify-center border border-line font-mono text-[13px] transition-colors hover:border-accent hover:text-accent disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:border-line disabled:hover:text-fg";return gn("div",{className:"mt-8 flex flex-wrap items-center justify-between gap-4 border-t border-line pt-4",children:[gn("div",{className:"flex items-center gap-1.5",children:[Qs("button",{type:"button",onClick:()=>a(e-1),disabled:e<=1,"aria-label":"Previous page",className:c,children:"\u2039"}),s.map((l,r)=>l===null?Qs("span",{className:"px-1 font-mono text-[13px] text-fg-dim",children:"\u2026"},`gap-${r}`):Qs("button",{type:"button",onClick:()=>a(l),"aria-current":l===e?"page":void 0,className:["h-9 min-w-9 cursor-pointer border px-2 font-mono text-[13px] tabular-nums transition-colors",l===e?"border-accent bg-accent text-bg":"border-line hover:border-accent hover:text-accent"].join(" "),children:l},l)),Qs("button",{type:"button",onClick:()=>a(e+1),disabled:e>=t,"aria-label":"Next page",className:c,children:"\u203A"})]}),gn("label",{className:"flex items-center gap-2 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:["Jump to",Qs("select",{value:e,onChange:l=>a(Number(l.target.value)),className:"cursor-pointer border border-line bg-transparent px-2 py-1.5 font-mono text-[12px] text-fg",children:Array.from({length:t},(l,r)=>r+1).map(l=>gn("option",{value:l,children:["Page ",l," of ",t]},l))})]})]})}import{useState as x41}from"react";import{useState as v41}from"react";import{jsx as ec,jsxs as f41}from"react/jsx-runtime";function Rg({checked:e,count:t,noun:a,onChange:s}){let[c,l]=v41(!1);return f41("label",{className:"flex cursor-pointer items-center gap-2.5 py-1 text-[13px]",children:[ec("input",{type:"checkbox",role:"switch",checked:e,onChange:r=>s(r.target.checked),onFocus:r=>l(r.target.matches(":focus-visible")),onBlur:()=>l(!1),className:"sr-only","aria-label":`In stock only (${t} ${a})`}),ec("span",{"aria-hidden":"true",className:`relative inline-block h-[17px] w-[30px] flex-none rounded-full transition-colors ${e?"bg-green":"bg-line"} ${c?"outline outline-2 outline-offset-2 outline-accent":""}`,children:ec("span",{className:`absolute left-[2px] top-[2px] h-[13px] w-[13px] rounded-full bg-bg transition-transform ${e?"translate-x-[13px]":""}`})}),ec("span",{className:"flex-1",children:"In stock only"}),ec("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:t})]})}import{useId as b41}from"react";import{jsx as tc,jsxs as WN}from"react/jsx-runtime";function Bg({options:e,noun:t,onPick:a}){let s=b41();return e.length===0?null:WN("fieldset",{className:"rounded-lg border border-accent/35 bg-accent/[0.05] px-3 pb-3 pt-2.5",children:[tc("legend",{className:"px-0 font-mono text-[11px] uppercase tracking-[0.2em] text-accent",children:"Product type"}),tc("div",{className:"flex flex-col pt-1.5",children:e.map(c=>{let l=c.count===0&&!c.checked;return WN("label",{className:`flex items-center gap-2.5 py-1 text-[13.5px] ${l?"opacity-40":"cursor-pointer"}`,children:[tc("input",{type:"radio",name:s,checked:c.checked,disabled:l,onChange:()=>a(c.kind),"aria-label":`${c.label} (${c.count} ${t})`,className:"h-[15px] w-[15px] flex-none accent-[var(--accent)]"}),tc("span",{className:`flex-1 ${c.checked?"text-accent":""}`,children:c.label}),tc("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:c.count})]},c.kind??"all")})})]})}import{jsx as Zg,jsxs as Pt}from"react/jsx-runtime";function Dg({boxes:e,composed:t,matches:a,noun:s,onPick:c}){return Pt("div",{className:"grid grid-cols-3 gap-1.5",children:[e.map(l=>Pt("label",{className:"flex flex-col gap-1",children:[Zg("span",{className:"font-mono text-[9.5px] uppercase tracking-[0.14em] text-fg-dim",children:l.label}),Pt("select",{value:l.value??"",onChange:r=>c(l.part,r.target.value?Number(r.target.value):null),"aria-label":`Tyre ${l.label.toLowerCase()}`,className:`w-full cursor-pointer rounded border bg-surface px-2 py-1.5 text-[13px] ${l.value===null?"border-line":"border-accent text-accent"}`,children:[Zg("option",{value:"",children:"Any"}),l.options.map(r=>Pt("option",{value:r.value,children:[r.label,r.count===0?" \xB7 0":""]},r.value))]})]},l.part)),t&&Pt("p",{className:"col-span-3 flex items-baseline gap-2 pt-0.5",children:[Zg("span",{className:"font-mono text-[12px] tracking-[0.04em] text-accent",children:t}),a!==null&&Pt("span",{className:"text-[11.5px] text-fg-dim",children:["\xB7 ",a," ",s]})]})]})}import{jsx as L2,jsxs as T6}from"react/jsx-runtime";function Og({facets:e,filters:t,typeOptions:a,sizeBoxes:s,sizeMatches:c,noun:l,priceBounds:r,inStockCount:o,onToggle:i,onPickType:n,onPickSize:h,onPriceMax:m,onInStockOnly:u,onClearAll:d}){let{currency:v}=d0(),[g,b]=x41({});return T6("aside",{className:"w-full flex-none lg:sticky lg:[--sf-plp-rail-gap:16px] lg:[--sf-plp-rail-top:calc(var(--sf-header-h,88px)+var(--sf-plp-rail-gap))] lg:top-[var(--sf-plp-rail-top)] lg:max-h-[calc(100svh-var(--sf-plp-rail-top)-var(--sf-plp-rail-gap))] lg:w-[268px] lg:overflow-y-auto lg:overscroll-contain lg:pr-2.5",children:[T6("div",{className:"flex items-center justify-between pb-2",children:[L2("h2",{className:"font-display text-[18px] font-medium uppercase tracking-[-0.01em]",children:"Filter"}),Er(t)&&L2("button",{type:"button",onClick:d,className:"cursor-pointer font-mono text-[11px] uppercase tracking-[0.16em] text-accent hover:text-fg",children:"Clear all"})]}),a.length>0&&L2("div",{className:"pb-1 pt-1",children:L2(Bg,{options:a,noun:l.many,onPick:n})}),o!==null&&L2("div",{className:"border-t border-line py-2",children:L2(Rg,{checked:t.inStockOnly,count:o,noun:l.many,onChange:u})}),s&&L2(UN,{label:ap.tyreSizes,open:!g.tyreSizes,onToggle:()=>b(f=>({...f,tyreSizes:!f.tyreSizes})),children:!g.tyreSizes&&L2("div",{className:"pb-3",children:L2(Dg,{boxes:s,composed:t.tyreSizes[0]??"",matches:c,noun:l.many,onPick:h})})}),e.map(f=>{if(f.options.length===0)return null;let w=!g[f.key];return L2(UN,{label:f.label,open:w,onToggle:()=>b(z=>({...z,[f.key]:!z[f.key]})),children:w&&L2("ul",{className:"flex flex-col pb-3",children:f.options.map(z=>{let k=z.count===0&&!z.checked;return L2("li",{children:T6("label",{className:`flex items-center gap-2.5 py-1 text-[13px] ${k?"opacity-40":"cursor-pointer"}`,children:[L2("input",{type:"checkbox",checked:z.checked,disabled:k,onChange:()=>i(f.key,z.value),"aria-label":`${f.label}: ${z.label} (${z.count} ${l.many})`,className:"h-[16px] w-[16px] flex-none accent-[var(--accent)]"}),z.swatch&&L2("span",{className:"inline-block h-[13px] w-[13px] flex-none rounded-full shadow-[inset_0_0_0_1px_var(--site-line)]",style:{background:z.swatch}}),L2("span",{className:"flex-1 capitalize",children:z.label}),L2("span",{className:"font-mono text-[11px] tabular-nums text-fg-dim",children:z.count})]})},z.value)})})},f.key)}),r&&T6("div",{className:"border-t border-line py-3",children:[T6("span",{className:"font-mono text-[11px] uppercase tracking-[0.2em]",children:["Price \xB7 per ",l.one]}),L2("input",{type:"range",min:r.min,max:r.max,step:5,value:t.priceMax??r.max,onChange:f=>{let w=Number(f.target.value);m(w>=r.max?null:w)},className:"mt-2 w-full accent-[var(--accent)]","aria-label":`Maximum price per ${l.one}`}),T6("div",{className:"mt-1.5 flex justify-between font-mono text-[11px] tabular-nums",children:[L2("span",{className:"text-fg-dim",children:B2(r.min,v)}),T6("span",{children:["Up to ",B2(t.priceMax??r.max,v)]})]})]})]})}function UN({label:e,open:t,onToggle:a,children:s}){return T6("div",{className:"border-t border-line",children:[T6("button",{type:"button",onClick:a,"aria-expanded":t,"aria-label":`${t?"Collapse":"Expand"} ${e} filters`,className:"flex w-full cursor-pointer items-center justify-between py-3 text-left",children:[L2("span",{className:"font-mono text-[11px] uppercase tracking-[0.2em]",children:e}),L2("span",{"aria-hidden":"true",className:`font-mono text-[10px] text-fg-dim transition-transform ${t?"rotate-180":""}`,children:"\u25BE"})]}),s]})}import{jsx as Et,jsxs as jN}from"react/jsx-runtime";function Gg(e,t){return[{value:"",label:t??"\u2014"},...e.map(a=>({value:a.value,label:a.label}))]}function ac({label:e,value:t,options:a,onChange:s,placeholder:c,disabled:l,compact:r=!1,editing:o=!1}){let n=(a.find(d=>d.value===t)?.label??t)||c||"\u2014",h=Gg(a,c),m=ze({items:h,value:t,onPick:s}),u=m.open;return jN("div",{ref:m.wrapRef,className:"relative",children:[jN("div",{ref:d=>{m.triggerRef.current=d},role:"button",tabIndex:l?-1:0,"aria-haspopup":"listbox","aria-expanded":u,"aria-controls":u?m.listId:void 0,"aria-activedescendant":m.activeId,"aria-label":e,"aria-disabled":l||void 0,onClick:()=>!l&&m.toggle(),onKeyDown:d=>!l&&m.onTriggerKeyDown(d),className:["relative flex flex-col bg-bg transition-colors",r?"gap-1 px-3.5 py-2.5":"min-h-[160px] gap-3.5 px-6 py-7",l?"opacity-50":"cursor-pointer hover:bg-surface"].join(" "),children:[Et("span",{...o?{[Y6]:N9}:{},className:["font-mono uppercase text-accent",r?"text-[length:var(--size-label,10px)] tracking-[0.2em]":"text-[length:var(--size-label,12px)] tracking-[0.3em]"].join(" "),children:Et(at,{kind:N9,children:e})}),Et("span",{className:["font-display font-medium tracking-[-0.02em]",r?"truncate pr-4 text-[length:var(--size-body,15px)] leading-[1.2]":"mt-auto text-[length:var(--size-headingSmall,24px)] leading-[1.1]",t?"text-fg":"text-fg-dim"].join(" "),...o?{[Y6]:pm}:{},children:Et(at,{kind:pm,children:n})}),Et("span",{className:["pointer-events-none absolute font-mono text-accent",r?"right-3 top-3 text-[length:var(--size-label,11px)]":"right-[22px] top-[22px] text-[length:var(--size-label,14px)]"].join(" "),children:"\u25BE"})]}),u&&!l&&Et(ye,{id:m.listId,tone:"cell",items:h,value:t,focusIdx:m.focusIdx,onFocus:m.setFocusIdx,onPick:m.pick,listRef:m.listRef})]})}var sc=["make","model","year","trim"],s9={make:"Make",model:"Model",year:"Year",trim:"Trim"};function KN(e,t){switch(e){case"make":return t.make!=="";case"model":return t.model!=="";case"year":return t.year!==null;case"trim":return t.modification!==""}}function $N(e,t){for(let a of sc){if(a===e)break;if(!KN(a,t))return a}return e}function YN(e){return sc.find(t=>!KN(t,e))??null}var cc={make:"Pick a make first",model:"Pick a model first",year:"Pick a year first",trim:"Pick a trim first"};function vn({parentPicked:e,loading:t,options:a,waiting:s,loadingLabel:c,readyLabel:l,emptyLabel:r}){return e?t?{placeholder:c,disabled:!0}:a.length===0?{placeholder:r,disabled:!0}:{placeholder:l,disabled:!1}:{placeholder:s,disabled:!0}}function fn(e){let{vehicle:t,loading:a}=e;return{make:vn({parentPicked:!0,loading:a.makes,options:e.makeOptions,waiting:"",loadingLabel:"Loading makes\u2026",readyLabel:"Select make",emptyLabel:"Vehicle list unavailable"}),model:vn({parentPicked:!!t.make,loading:a.models,options:e.modelOptions,waiting:cc.make,loadingLabel:"Loading models\u2026",readyLabel:"Select model",emptyLabel:"No models listed"}),year:vn({parentPicked:!!t.model,loading:a.years,options:e.yearOptions,waiting:cc.model,loadingLabel:"Loading years\u2026",readyLabel:"Select year",emptyLabel:"No years listed"}),trim:vn({parentPicked:t.year!==null,loading:a.modifications,options:e.modOptions,waiting:cc.year,loadingLabel:"Loading trims\u2026",readyLabel:"Select trim",emptyLabel:"No trims listed"})}}function XN(e){return{make:e.makeOptions,model:e.modelOptions,year:e.yearOptions,trim:e.modOptions}}function JN(e){return{make:e.setMake,model:e.setModel,year:e.setYear,trim:e.setModification}}function QN(e){let{vehicle:t}=e;return{make:t.make,model:t.model,year:t.year!==null?String(t.year):"",trim:t.modification}}function e_(e){let{vehicle:t}=e;return{make:t.make?e.makeName:"",model:t.model?e.modelName:"",year:t.year!==null?String(t.year):"",trim:t.modification?e.modName:""}}import{jsx as bn,jsxs as z41}from"react/jsx-runtime";function X3({cascade:e,compact:t=!1,editing:a=!1}){let{vehicle:s}=e,c=fn(e);return z41("div",{className:["grid gap-[2px] border border-line bg-line",t?"grid-cols-4 max-[900px]:grid-cols-2":"grid-cols-4 max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1"].join(" "),children:[bn(ac,{label:s9.make,placeholder:c.make.placeholder,disabled:c.make.disabled,value:s.make,options:e.makeOptions,onChange:e.setMake,compact:t,editing:a}),bn(ac,{label:s9.model,placeholder:c.model.placeholder,disabled:c.model.disabled,value:s.model,options:e.modelOptions,onChange:e.setModel,compact:t,editing:a}),bn(ac,{label:s9.year,placeholder:c.year.placeholder,disabled:c.year.disabled,value:s.year!==null?String(s.year):"",options:e.yearOptions,onChange:e.setYear,compact:t,editing:a}),bn(ac,{label:s9.trim,placeholder:c.trim.placeholder,disabled:c.trim.disabled,value:s.modification,options:e.modOptions,onChange:e.setModification,compact:t,editing:a})]})}import{jsx as W2,jsxs as P6}from"react/jsx-runtime";function qg({cascade:e,appliedName:t,fit:a,fitSummary:s=null,resolving:c,unresolved:l,matchCount:r,copy:o,onAmend:i,onClear:n}){return W2("div",{className:"border-b border-line bg-surface px-5 py-4 md:px-10",children:!(t!=="")?P6("div",{className:"flex flex-wrap items-end gap-4",children:[P6("div",{className:"flex-none",children:[P6("div",{className:"flex items-center gap-2",children:[W2(t_,{}),W2("h2",{className:"font-display text-[18px] font-medium uppercase tracking-[-0.01em]",children:"Select your car"})]}),W2("p",{className:"mt-0.5 font-mono text-[11px] uppercase tracking-[0.14em] text-fg-dim",children:o.promise})]}),W2("div",{className:"min-w-[280px] flex-1",children:W2(X3,{cascade:e,compact:!0})})]}):P6("div",{className:"flex flex-wrap items-center gap-x-5 gap-y-3",children:[P6("div",{className:"flex items-center gap-2.5",children:[W2(t_,{}),P6("div",{children:[W2("p",{className:"font-mono text-[10px] uppercase tracking-[0.2em] text-fg-dim",children:"Fitment for"}),W2("p",{className:"font-display text-[16px] font-medium uppercase leading-[1.1] tracking-[-0.01em]",children:t})]})]}),c?W2("p",{className:"font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:"Checking fitment\u2026"}):l?W2("p",{className:"font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:o.noData}):P6("div",{className:"flex flex-wrap items-center gap-1.5",children:[W2("span",{className:"border border-line px-2 py-1 font-mono text-[10px] uppercase tracking-[0.14em] text-fg-dim",children:s??GM(a)}),W2("span",{className:"bg-accent px-2 py-1 font-mono text-[10px] font-bold uppercase tracking-[0.14em] text-bg",children:o.countFits(r)})]}),P6("div",{className:"ml-auto flex items-center gap-4",children:[W2("button",{type:"button",onClick:i,className:"cursor-pointer border border-line px-4 py-2.5 font-mono text-[11px] uppercase tracking-[0.16em] hover:border-accent hover:text-accent",children:"Amend search"}),W2("button",{type:"button",onClick:n,className:"cursor-pointer font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:o.showAll})]})]})})}function t_(){return P6("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"var(--accent)",strokeWidth:"2","aria-hidden":"true",className:"flex-none",children:[W2("path",{d:"M5 17h14l1.5-5.5a2 2 0 0 0-1.4-2.4L17 8l-1.6-3.2A2 2 0 0 0 13.6 3.7H10.4A2 2 0 0 0 8.6 4.8L7 8l-2.1.6a2 2 0 0 0-1.4 2.4L5 17Z"}),W2("circle",{cx:"7.5",cy:"17.5",r:"1.8"}),W2("circle",{cx:"16.5",cy:"17.5",r:"1.8"})]})}import{useId as y41,useRef as w41}from"react";import{jsx as E6,jsxs as C41}from"react/jsx-runtime";function Wg({cascade:e,heading:t,intro:a,ready:s,copy:c,onSkip:l}){let r=y41(),o=w41(null);return L4({active:s,onDismiss:l,focusRef:o}),E6("div",{role:"dialog","aria-modal":"true","aria-labelledby":r,"aria-hidden":s?void 0:!0,className:["fixed inset-x-0 bottom-0 top-[var(--sf-header-h,88px)] z-40 overflow-y-auto bg-bg","transition-opacity duration-200",s?"opacity-100":"pointer-events-none opacity-0"].join(" "),children:E6("div",{className:"flex min-h-full items-center justify-center px-6 py-14 max-[700px]:px-5 max-[700px]:py-10",children:C41("div",{ref:o,tabIndex:-1,className:"w-full max-w-[720px] outline-none",children:[E6("p",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.3em] text-accent",children:c.eyebrow}),E6("h2",{id:r,className:"mt-3 max-w-[16ch] font-display text-[min(clamp(30px,5vw,50px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[1.05] tracking-[-0.02em]",children:e0(t)}),E6("p",{className:"mt-4 max-w-[52ch] text-[15px] leading-[1.6] text-fg-dim",children:e0(a)}),E6("div",{className:"mt-8",children:E6(X3,{cascade:e})}),e.cascadeError&&E6("p",{className:"mt-3 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:c.cascadeDown}),E6("button",{type:"button",onClick:l,className:"mt-6 w-full cursor-pointer py-3 font-mono text-[11px] uppercase tracking-[0.2em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:c.browseInstead})]})})})}import{useEffect as M41,useMemo as S41,useState as L41}from"react";var V6={year:null,make:"",model:"",modification:""};var Z5={make:"make",model:"model",year:"year",trim:"trim"};function v4(e){return!!e.make&&!!e.model&&e.year!==null&&!!e.modification}function a_(e){let t=Number(e.get(Z5.year)),a={...V6,make:e.get(Z5.make)??"",model:e.get(Z5.model)??"",year:Number.isFinite(t)&&t>0?Math.floor(t):null,modification:e.get(Z5.trim)??""};return v4(a)?a:null}function D5(e,t){return!t||!v4(t)||(e.set(Z5.make,t.make),e.set(Z5.model,t.model),e.set(Z5.year,String(t.year)),e.set(Z5.trim,t.modification)),e}var k41=["tyre"];function s_(e){return k41.filter(t=>e.includes(t))}function c_(e){return!e||!v4(e)||e.year===null?null:{make:e.make,model:e.model,year:e.year,modification:e.modification}}function l_(e,t,a){return e.length===0||!t&&!a?null:{kinds:[...e],vehicle:t}}function r_(e,t,a){if(a===null||t.length===0)return[...e];let s=new Set(a);return e.filter(c=>!t.includes(B0(c))||s.has(p7(c)))}function o_({catalog:e,shownKinds:t,vehicle:a,editing:s=!1}){let c=s_(t),l=s?null:c_(a),[r,o]=L41(null),i=l_(c,l,r!==null),n=i?JSON.stringify(i):"";M41(()=>{if(!n)return;let u=JSON.parse(n),d=!0;return v0.listCatalog(u.kinds,u.vehicle).then(v=>{d&&o({key:n,slugs:v.map(p7)})}).catch(v=>{console.error("[useVehicleCatalog] catalog refetch failed",v)}),()=>{d=!1}},[n]);let h=r?.slugs??null,m=c.join(",");return S41(()=>r_(e,m?m.split(","):[],h),[e,m,h])}import{useCallback as jg,useEffect as lc,useMemo as F41,useRef as T41,useState as h_}from"react";import{useCallback as xn,useEffect as Vt,useMemo as zn,useState as q7}from"react";function yn(e){return e instanceof Error?e.message:String(e)}function i_(e=[],t=!0){let[a,s]=q7(V6),[c,l]=q7(e),[r,o]=q7([]),[i,n]=q7([]),[h,m]=q7([]),[u,d]=q7(null),[v,g]=q7({makes:t&&e.length===0}),[b,f]=q7(null);Vt(()=>{t&&e.length===0&&(g(G=>({...G,makes:!0})),me.listMakes().then(l).catch(()=>{}).finally(()=>g(G=>({...G,makes:!1}))))},[t,e.length]),Vt(()=>{if(!a.make){o([]);return}let G=!1;return g(V=>({...V,models:!0})),me.listModels(a.make).then(V=>{G||o(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,models:!1}))}),()=>{G=!0}},[a.make]),Vt(()=>{if(!a.make||!a.model){n([]);return}let G=!1;return g(V=>({...V,years:!0})),me.listYears(a.make,a.model).then(V=>{G||n(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,years:!1}))}),()=>{G=!0}},[a.make,a.model]),Vt(()=>{if(!a.make||!a.model||a.year===null){m([]);return}let G=!1;return g(V=>({...V,modifications:!0})),me.listModifications(a.make,a.model,a.year).then(V=>{G||m(V)}).catch(V=>{G||f(yn(V))}).finally(()=>{G||g(V=>({...V,modifications:!1}))}),()=>{G=!0}},[a.make,a.model,a.year]),Vt(()=>{if(!(a.year!==null&&a.make&&a.model&&a.modification)){d(null);return}let V=!1;return g(j=>({...j,stock:!0})),f(null),me.getStockFitment(a.make,a.model,a.year,a.modification).then(j=>{V||d(j)}).catch(j=>{V||f(yn(j))}).finally(()=>{V||g(j=>({...j,stock:!1}))}),()=>{V=!0}},[a.make,a.model,a.year,a.modification]),Vt(()=>{a.year!==null&&a.make&&a.model&&!a.modification&&h.length===1&&s(G=>({...G,modification:h[0].slug}))},[a.year,a.make,a.model,a.modification,h]);let w=xn(G=>s(V=>({...V,make:G,model:"",year:null,modification:""})),[]),z=xn(G=>s(V=>({...V,model:G,year:null,modification:""})),[]),k=xn(G=>s(V=>({...V,year:G?Number(G):null,modification:""})),[]),S=xn(G=>s(V=>({...V,modification:G})),[]),H=zn(()=>i.map(G=>({value:String(G),label:String(G)})),[i]),I=zn(()=>c.map(G=>({value:G.slug,label:G.name})),[c]),P=zn(()=>r.map(G=>({value:G.slug,label:G.name})),[r]),D=zn(()=>h.map(G=>({value:G.slug,label:G.name})),[h]),E=a.year!==null&&!!a.make&&!!a.model&&!!a.modification,F=c.find(G=>G.slug===a.make)?.name??a.make,_=r.find(G=>G.slug===a.model)?.name??a.model,Z=h.find(G=>G.slug===a.modification)?.name??a.modification;return{vehicle:a,setVehicle:s,setMake:w,setModel:z,setYear:k,setModification:S,makeOptions:I,modelOptions:P,yearOptions:H,modOptions:D,loading:v,cascadeError:b,stock:u,fullyPicked:E,makeName:F,modelName:_,modName:Z}}var Ug="storefront-vehicle";function A41(e){if(!e||typeof e!="object")return null;let t=e,a={...V6,...t.vehicle??{}};return v4(a)?{vehicle:a,labels:{make:t.labels?.make??a.make,model:t.labels?.model??a.model,modification:t.labels?.modification??a.modification}}:null}function H41(e){let t,a=new Set,s=()=>{for(let c of[...a])c()};return{read(){if(t!==void 0)return t;try{let c=e()?.getItem(Ug);t=c?A41(JSON.parse(c)):null}catch{t=null}return t},write(c){t=c;try{e()?.setItem(Ug,JSON.stringify(c))}catch{}s()},clear(){t=null;try{e()?.removeItem(Ug)}catch{}s()},subscribe(c){return a.add(c),()=>{a.delete(c)}}}}var W7=H41(()=>t3);function n_(){W7.clear()}function Kg(e,t,a){return e!==t?e:a||t}function P41(e,t){return e.make===t.make&&e.model===t.model&&e.modification===t.modification}function Nt(e,t){return e.make===t.make&&e.model===t.model&&e.year===t.year&&e.modification===t.modification}function I4({initialMakes:e=[],editing:t=!1,enabled:a=!0,autoApply:s=!1}={}){let c=i_(e,a),{setVehicle:l}=c,[r,o]=h_(null),[i,n]=h_(!1),h=jg(()=>({make:c.makeName,model:c.modelName,modification:c.modName}),[c.makeName,c.modelName,c.modName]);lc(()=>{if(t||!a){n(!0);return}let f=a_(new URLSearchParams(window.location.search)),w=f?null:W7.read(),z=f??w?.vehicle??null;z&&(l(z),o({vehicle:z,labels:w?.labels??{make:z.make,model:z.model,modification:z.modification},stock:null})),n(!0)},[t,a,l]),lc(()=>{if(!(t||!a))return W7.subscribe(()=>{let f=W7.read();o(z=>f?z&&Nt(z.vehicle,f.vehicle)?P41(z.labels,f.labels)?z:{...z,labels:f.labels}:{vehicle:f.vehicle,labels:f.labels,stock:null}:null);let w=f?.vehicle??V6;l(z=>Nt(z,w)?z:w)})},[t,a,l]),lc(()=>{!s||!v4(c.vehicle)||r&&Nt(r.vehicle,c.vehicle)||o({vehicle:c.vehicle,labels:h(),stock:c.stock})},[s,r,c.vehicle,c.stock,h]),lc(()=>{if(!r||!Nt(c.vehicle,r.vehicle))return;let f={make:Kg(c.makeName,c.vehicle.make,r.labels.make),model:Kg(c.modelName,c.vehicle.model,r.labels.model),modification:Kg(c.modName,c.vehicle.modification,r.labels.modification)};(r.stock!==c.stock||r.labels.make!==f.make||r.labels.model!==f.model||r.labels.modification!==f.modification)&&o(z=>z&&Nt(c.vehicle,z.vehicle)?{...z,stock:c.stock,labels:f}:z)},[r,c.vehicle,c.stock,c.makeName,c.modelName,c.modName]);let m=T41("");lc(()=>{if(!(t||!a))try{if(!r){m.current!==""&&(W7.clear(),m.current="");return}let f=JSON.stringify({vehicle:r.vehicle,labels:r.labels});if(f===m.current)return;W7.write({vehicle:r.vehicle,labels:r.labels}),m.current=f}catch{}},[r,t,a]);let u=jg(()=>{v4(c.vehicle)&&o({vehicle:c.vehicle,labels:h(),stock:c.stock})},[c.vehicle,c.stock,h]),d=jg(()=>{o(null),l(V6),!t&&a&&n_()},[t,a,l]),v=F41(()=>NM(r?.stock),[r?.stock]),g=!!r&&Nt(c.vehicle,r.vehicle)&&c.loading.stock!==!1,b=r?[r.vehicle.year,r.labels.make,r.labels.model,r.labels.modification].filter(Boolean).join(" "):"";return{cascade:c,applied:r,fit:v,resolving:g,unresolved:!!r&&v===null&&!g,apply:u,clear:d,canApply:v4(c.vehicle),appliedName:b,restored:i}}import{useEffect as m_,useState as p_}from"react";var $g="plp:locationchange",u_=!1;function E41(e){if(typeof window>"u")return()=>{};if(!u_){u_=!0;for(let t of["pushState","replaceState"]){let a=window.history[t];window.history[t]=function(...c){a.apply(this,c),window.dispatchEvent(new Event($g))}}}return window.addEventListener("popstate",e),window.addEventListener($g,e),()=>{window.removeEventListener("popstate",e),window.removeEventListener($g,e)}}function d_({editing:e,openingSort:t,appliedVehicle:a,vehicleRestored:s}){let[c,l]=p_({...L5,sort:t}),[r,o]=p_(!1);return m_(()=>{if(e||typeof window>"u")return;let i=()=>{let h=Pk(new URLSearchParams(window.location.search));return M8(h).toString()===""?{...L5,sort:t}:h},n=()=>{let h=i();l(m=>M8(m).toString()===M8(h).toString()?m:h)};return n(),o(!0),E41(n)},[e,t]),m_(()=>{if(e||!r||!s||typeof window>"u")return;let i=M8(c);D5(i,a);let n=i.toString();window.history.replaceState(null,"",`${window.location.pathname}${n?`?${n}`:""}`)},[e,r,s,c,a]),[c,l]}import{Fragment as g_,jsx as x2,jsxs as U2}from"react/jsx-runtime";var Yg={heading:"Let's find wheels that fit your car.",intro:"Tell us what you drive and we'll show you every set that bolts straight on \u2014 bolt pattern, offset and hub bore checked for you."};function R41({level:e,className:t,children:a}){return x2(e===2?"h2":"h1",{className:t,children:a})}var B41=[];function Xg({heading:e="",intro:t="",askForCar:a=!0,gateHeading:s="",gateIntro:c="",perPage:l=24,columns:r,defaultSort:o="recommended",hiddenFacets:i=[],fieldUsage:n=B41,showPrice:h=!0,showInStock:m=!0,kinds:u,products:d,wheels:v,editing:g=!1,coverIndex:b=1,cardImage:f,spinOnHover:w=!1,imageBackground:z,showBadge:k=!0,showCardSizes:S,showCardBuy:H,showCardPage:I,showCardPrice:P,showCardFinishes:D,outline:E=r4,indexBadge:F=l4,titleLevel:_}){let{currency:Z}=d0(),G=j9(z,e7),V=S5(u),j=C5(),N=JV(Wi(r),g?j:null),Q=`plp-${N41().replace(/:/g,"")}`,W=J6(Q,F),U=cN(),i1=d??v??U??[],y1=T3(()=>ek(i1,V),[i1,V.join(",")]),K=I4({editing:g,enabled:a,autoApply:!0}),[c1,b1]=I41(!1),$=uk(o,V),u1=K.applied?.vehicle??null,[x1,X0]=d_({editing:g,openingSort:$,appliedVehicle:u1,vehicleRestored:K.restored}),o0=gk(V,x1.kind),I1=l5(M1=>X0(M1),[X0]),c0=l5((M1,w2)=>{let g2=x1[M1],K6=g2.map(String).includes(w2)?g2.filter($h=>String($h)!==w2):[...g2,M1==="diameters"?Number(w2):w2];I1({...x1,[M1]:K6,page:1})},[x1,I1]),l0=l5(M1=>I1({...x1,priceMax:M1,page:1}),[x1,I1]),X1=l5(M1=>I1({...x1,inStockOnly:M1,page:1}),[x1,I1]),X2=l5(M1=>I1({...L5,kind:M1,inStockOnly:x1.inStockOnly,priceMax:x1.priceMax,sort:x1.sort}),[x1.inStockOnly,x1.priceMax,x1.sort,I1]),Q1=l5(M1=>I1({...x1,sort:M1,page:1}),[x1,I1]),d2=l5(M1=>{I1({...x1,page:M1}),typeof window<"u"&&window.scrollTo({top:0,behavior:n6()})},[x1,I1]),b0=l5(()=>I1({...L5,sort:x1.sort}),[x1.sort,I1]),{clear:d1}=K,$1=l5(()=>{d1(),b1(!0),X0(M1=>({...M1,page:1}))},[d1]),u0=l5(()=>{d1(),b1(!1),X0(M1=>({...M1,page:1}))},[d1]),P0=u1?[u1.make,u1.model,u1.year,u1.modification].join("|"):"",J0=_41(null);V41(()=>{if(K.restored){if(J0.current===null){J0.current=P0;return}J0.current!==P0&&(J0.current=P0,X0(M1=>M1.page===1?M1:{...M1,page:1}))}},[K.restored,P0,X0]);let q0=o_({catalog:y1,shownKinds:V,vehicle:u1,editing:g}),e1=T3(()=>{if(!K.fit)return q0;let M1=q0.filter(g2=>B0(g2)==="alloy-wheel"),w2=new Set(Qr(M1,K.fit).map(g2=>g2.slug));return q0.filter(g2=>B0(g2)!=="alloy-wheel"||w2.has(p7(g2)))},[q0,K.fit]),z1=i.join(","),t0=T3(()=>{let M1=new Set(z1?z1.split(","):[]);return Vr(e1,x1,Z,o0,n).filter(w2=>!M1.has(w2.key))},[e1,x1,Z,z1,o0.join(","),n]),s2=T3(()=>xk(e1,x1,Z),[e1,x1,Z]),M3=o0.length>1,G6=T3(()=>j4(n,"alloy-wheel"),[n]),q6=T3(()=>j4(n,"tyre"),[n]),W6=T3(()=>tk(s2),[s2]),u5=T3(()=>ak(s2),[s2]),V3=T3(()=>h?Sk(e1,Z):null,[e1,Z,h]),U6=T3(()=>bk(e1,x1,Z),[e1,x1,Z]),p8=T3(()=>Mk(e1,V,x1,Z),[e1,V.join(","),x1,Z]),m3=l5((M1,w2)=>{let g2=kk(e1.flatMap(ke),x1.tyreSizes[0]??"",M1,w2);I1({...x1,tyreSizes:g2?[g2]:[],page:1})},[e1,x1,I1]),C9=T3(()=>{let M1=new Set(z1?z1.split(","):[]);return!yk(e1,o0)||M1.has("tyreSizes")?null:Ck(e1,x1,Z)},[e1,x1,Z,z1,o0.join(","),n]),N3=T3(()=>Vk(s2,x1.page,l),[s2,x1.page,l]),e4=M5(o0),S3=Os(o0),t4=lN(s,c,o0,V),a6=o0.length===1&&o0[0]==="tyre",z4=K.applied?.stock??null,y4=T3(()=>ZS(z4),[z4]),G4=T3(()=>e1.filter(M1=>o0.includes(B0(M1))).length,[e1,o0.join(",")]),j6=y1.length===0,S1=!j6&&e1.length===0,i0=a&&!g&&!K.applied&&!c1;return V.length===0?null:U2("section",{style:J2(f),children:[a&&x2(qg,{cascade:K.cascade,appliedName:K.appliedName,fit:K.fit,fitSummary:a6&&y4.length>0?`Takes ${y4.join(" \xB7 ")}`:null,resolving:K.resolving,unresolved:a6?!!K.applied&&!K.resolving&&y4.length===0:K.unresolved,matchCount:G4,copy:S3,onAmend:u0,onClear:$1}),i0&&x2(Wg,{cascade:K.cascade,heading:t4.heading,intro:t4.intro,ready:K.restored,copy:S3,onSkip:()=>b1(!0)}),U2("div",{className:"px-5 py-10 md:px-10",children:[(e||t)&&U2("header",{className:"mb-6",children:[e&&x2(R41,{level:_,className:"font-display text-[clamp(28px,4vw,40px)] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[1.05] tracking-[-0.02em]",children:e0(e)}),t&&x2("p",{className:"mt-2 max-w-[60ch] text-[15px] text-fg-dim",children:e0(t)})]}),U2("div",{className:"flex flex-col gap-8 lg:flex-row lg:items-start",children:[x2(Og,{facets:t0,filters:x1,typeOptions:p8,sizeBoxes:C9,sizeMatches:x1.tyreSizes.length>0?s2.length:null,noun:e4,priceBounds:V3,inStockCount:m?U6:null,onToggle:c0,onPickType:X2,onPickSize:m3,onPriceMax:l0,onInStockOnly:X1,onClearAll:b0}),U2("div",{className:"min-w-0 flex-1",children:[U2("div",{className:"mb-4 flex min-h-[34px] flex-wrap items-center justify-between gap-x-4 gap-y-2 border-b border-line pb-3",children:[U2("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-4 gap-y-2",children:[x2("p",{className:"font-mono text-[12px] tabular-nums tracking-[0.08em]",children:N3.total===0?U2("span",{className:"text-fg-dim",children:["No ",e4.many]}):U2(g_,{children:[U2("span",{children:[N3.from,"\u2013",N3.to]}),U2("span",{className:"text-fg-dim",children:[" of ",N3.total," ",e4.many]})]})}),x2(Sg,{filters:x1,onToggle:c0,onPriceMax:l0,onInStockOnly:X1,onPickType:X2})]}),U2("label",{className:"flex items-center gap-2 font-mono text-[11px] uppercase tracking-[0.16em] text-fg-dim",children:["Sort by",x2("select",{value:x1.sort,onChange:M1=>Q1(Ae(M1.target.value)),className:"cursor-pointer border border-line bg-transparent px-2 py-1.5 font-mono text-[12px] normal-case tracking-normal text-fg",children:tp(V).map(M1=>x2("option",{value:M1,children:Ta[M1]},M1))})]})]}),j6?x2("div",{className:"border border-dashed border-line p-10",children:x2("p",{className:"font-mono text-[12px] uppercase tracking-[0.16em] text-fg-dim",children:g?e4.many==="wheels"?p("No wheels in this website's catalog yet \u2014 curate products to see them here."):e4.many==="tyres"?p("No tyres in this website's catalog yet \u2014 curate products to see them here."):p("No products in this website's catalog yet \u2014 curate products to see them here."):"Our catalog is being updated. Please check back shortly."})}):S1?U2("div",{className:"border border-line p-10",children:[U2("h3",{className:"font-display text-[22px] font-medium uppercase tracking-[-0.01em]",children:["No confirmed fit for your ",K.appliedName]}),x2("p",{className:"mt-2 max-w-[52ch] text-[14px] text-fg-dim",children:S3.nothingFits}),U2("button",{type:"button",onClick:$1,className:"mt-4 cursor-pointer bg-btn px-4 py-2.5 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-btn-ink hover:bg-fg",children:["Show all ",e4.many]})]}):N3.total===0?U2("div",{className:"border border-line p-10",children:[U2("h3",{className:"font-display text-[22px] font-medium uppercase tracking-[-0.01em]",children:["No ",e4.many," match those filters"]}),x2("p",{className:"mt-2 max-w-[46ch] text-[14px] text-fg-dim",children:"Try widening the price range or clearing a filter."}),Er(x1)&&x2("button",{type:"button",onClick:b0,className:"mt-4 cursor-pointer bg-btn px-4 py-2.5 font-mono text-[11px] font-bold uppercase tracking-[0.24em] text-btn-ink hover:bg-fg",children:"Clear all filters"})]}):U2(g_,{children:[W&&x2("style",{children:W}),x2("div",{className:W?`${Q} plp-card-grid`:"plp-card-grid",style:N,children:N3.items.map(M1=>B0(M1)==="tyre"?x2(Ys,{item:M1,currency:Z,fitSize:y4.length>0?DS(M1.sizes,y4):null,kindLabel:M3?M5(["tyre"]).one:null,showBrand:W6,editing:g,fieldUsage:q6},`tyre:${p7(M1)}`):x2(_g,{wheel:M1,colours:x1.finishes,fit:K.fit,editing:g,kindLabel:M3?M5(["alloy-wheel"]).one:null,showBrand:W6,coverIndex:b,fieldUsage:G6,showProcess:u5,spinOnHover:w,imageBackgroundFill:G,showBadge:k,outline:E,indexBadge:F,showCardSizes:S??!0,showCardBuy:H??!0,showCardPage:I??!0,showCardPrice:P??!0,showCardFinishes:D??!0},`wheel:${p7(M1)}`))})]}),x2(Ig,{page:N3.page,pageCount:N3.pageCount,onPage:d2}),x2(Ds,{editing:g})]})]})]})]})}import{SortIcon as D41,CarIcon as O41,HashIcon as G41}from"efficient-easel/icons";import{useEasel as q41}from"efficient-easel/easel";import{jsx as Z41}from"react/jsx-runtime";var rc={heading:"Alloy wheels",intro:"Filter by brand, colour, size and fitment to find your set."},v_={label:"List",defaultProps:{heading:"",intro:"",askForCar:!0,gateHeading:"",gateIntro:"",kinds:[...Ar],perPage:24,columns:mg,defaultSort:"recommended",coverIndex:String(1),showInStock:!0,showCollection:!0,showPrice:!0},render:e=>Z41(Xg,{titleLevel:e.titleLevel,heading:y(e.heading,rc.heading,e.puck),intro:y(e.intro,rc.intro,e.puck),askForCar:e.askForCar!==!1,gateHeading:a1(e.gateHeading),gateIntro:a1(e.gateIntro),perPage:e.perPage,columns:e.columns,defaultSort:Ae(e.defaultSort),coverIndex:Ft(e.coverIndex),cardImage:e.cardImage,spinOnHover:e.spinOnHover===!0,imageBackground:e.imageBackground,showBadge:e.showBadge!==!1,showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage,outline:f8(e.outline),indexBadge:l6(e.indexBadge),hiddenFacets:Nr(e),showPrice:e.showPrice,showInStock:e.showInStock!==!1,kinds:e.kinds,products:e.products,wheels:e.wheels,fieldUsage:e.fieldUsage,editing:e.puck?.isEditing})};import{jsx as c9}from"react/jsx-runtime";var wn=[{value:"showInStock",label:"In stock"},{value:"showCollection",label:"Collection"},{value:"showPrice",label:"Price"}],W41="Brand, Color, Size and PCD follow the product type. Set them in Product types.",f_="root:default-zone";function U41(){let{appState:e,dispatch:t}=q41(i=>i),a=e.ui.itemSelector,s=e.data.content??[],c=a&&(a.zone===void 0||a.zone===f_)?a.index:-1,l=c>=0?s[c]:void 0,r=l?.props??{},o=wn.filter(i=>r[i.value]!==!1).map(i=>i.value);return c9(El,{label:"Filters",options:wn.map(i=>({...i,label:p(i.label)})),value:o,onChange:i=>{if(!l||l.type!=="AlloyWheelsListing")return;let n={};for(let h of wn){let m=i.includes(h.value);r[h.value]!==!1!==m&&(n[h.value]=m)}Object.keys(n).length&&t({type:"replace",destinationZone:f_,destinationIndex:c,data:{...l,props:{...l.props,...n}}})}})}var b_=()=>Fl({type:"custom",render:()=>c9(Tl,{})},"always"),x_={fields:{_gHeader:x("Header"),heading:T("Heading",rc.heading),intro:O("Intro",rc.intro),_gResults:x("Products"),kinds:Q9("Product types",we,"None \u2014 this section will be empty"),defaultSort:g1("Opening sort",c9(D41,{}),Object.entries(Ta).map(([e,t])=>({value:e,label:t})),"recommended"),_gFilters:x("Filters"),showInStock:{type:"custom",label:"Filters",options:wn,render:()=>c9(U41,{})},showCollection:b_(),showPrice:b_(),_nFieldFilters:b5(W41),_gVehicle:x("Car prompt"),askForCar:l1("Ask for the car first",!0,c9(O41,{})),gateHeading:q("Welcome heading",Yg.heading),gateIntro:E1("Welcome intro",Yg.intro),...Yl({bottomDefault:!0}),...ee({coverHint:"A card's opening picture \u2014 picking another color opens that color's first picture.",spinDefault:!1}),...te(),_gGrid:x("Grid"),columns:{type:"custom",render:({value:e,onChange:t})=>c9(gg,{value:e,onChange:t})},perPage:s1("Products per page",c9(G41,{}),8,60,4,24)},resolveFields:(e,{fields:t})=>{let a=Os(S5(e.props.kinds));return{...t,gateHeading:q("Welcome heading",a.gateHeading),gateIntro:E1("Welcome intro",a.gateIntro)}}};import{useEffect as $41,useState as Y41}from"react";function j41(e){return{name:e.name,logo:e.logo,count:e.count}}var oc=null,Jg=null;function Cn(e=!1){let t=i2();return!e&&oc&&Jg===t||(Jg=t,oc=K41(t).catch(()=>(Jg===t&&(oc=null),null))),oc}async function K41(e){return e?(await v0.listBrandsForSite(e)).map(j41):null}import{Fragment as X41,jsx as kn,jsxs as J41}from"react/jsx-runtime";function Qg({value:e,onChange:t}){let[a,s]=Y41(void 0);$41(()=>{let o=!1;return Cn().then(i=>{o||s(i)}),()=>{o=!0}},[]);let c=Array.isArray(e)?e:[],r=[...a??[],...c.filter(o=>!(a??[]).some(i=>i.name===o)).map(o=>({name:o,logo:"",count:0}))].map(o=>({value:o.name,label:o.name,note:String(o.count)}));return J41(X41,{children:[kn(El,{label:"Brands",options:r,value:c,onChange:t,emptyLabel:"None"}),a===void 0?kn("p",{className:"es-field-hint sf-hint-keep",children:p("Reading this website\u2019s brands\u2026")}):a===null?kn("p",{className:"es-field-hint sf-hint-keep",children:p("Could not read this website\u2019s brands. The list above shows only what is already picked \u2014 reopen the panel to try again.")}):a.length===0?kn("p",{className:"es-field-hint sf-hint-keep",children:p("This website has no brands yet. A brand appears here once it has a product in the catalog.")}):null]})}var ic="picks",z_="available",y_=()=>[];function w_(e,t){let a=new Set((e??[]).map(r=>(r??"").trim()).filter(Boolean));if(a.size===0)return[];let s=t??[],c=[],l=new Set;for(let r of s)a.has(r.name)&&(c.push(r),l.add(r.name));for(let r of e??[]){let o=(r??"").trim();!o||l.has(o)||(l.add(o),c.push({name:o,logo:"",count:0}))}return c}import{LogoIcon as Q41,HashIcon as e51}from"efficient-easel/icons";import{jsx as C_}from"react/jsx-runtime";var k_={fields:{_gContent:x("Content"),heading:T("Heading","Shop by brand"),button:T("Button","All brands"),link:H1("Link"),[ic]:c2(Qg),_gStyle:x("Style"),face:v1("Tile",C_(Q41,{}),[{label:"Name",value:"name"},{label:"Mark",value:"mark"}],"name"),showCount:l1("Count",!0,C_(e51,{})),_gLayout:x("Layout")}};import{ColumnsIcon as t51}from"efficient-easel/icons";var U0={num:A.sectionNumber,link:A.viewAll};import{jsx as a51}from"react/jsx-runtime";var M_={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),description:O("Body",A.body),_gLayout:x("Layout"),columns:s1("Columns",a51(t51,{}),2,3,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.BundleOffer.headRows)};import{StylesIcon as s51}from"efficient-easel/icons";var Mn=[{label:"Icon",value:"icon"},{label:"Text",value:"text"}];import{jsx as c51}from"react/jsx-runtime";var S_={fields:{_gStyle:x("Style"),style:v1("Show as",c51(s51,{}),Mn,"icon")}};import{HashIcon as v51,SortIcon as f51,LayoutIcon as b51}from"efficient-easel/icons";import{createContext as r51,useContext as o51,useMemo as i51}from"react";var l51=["vehicle","process","size","lugs","finish","price"],Sn={vehicle:"My Car",process:"Process",size:"Size",lugs:"Lugs",finish:"Finish",price:"Price"};function L_(e){if(!e)return Sn;let t={...Sn};for(let a of l51){let s=e[a];if(typeof s!="string")continue;let c=s.trim();c&&(t[a]=c)}return t}import{jsx as n51}from"react/jsx-runtime";var A_=r51(Sn);function mq1({labels:e,children:t}){let a=i51(()=>L_(e),[e]);return n51(A_.Provider,{value:a,children:t})}function nc(){return o51(A_)}import{SettingsField as h51,SettingsSwitch as m51}from"efficient-easel/panel";import{jsx as hc}from"react/jsx-runtime";function p51({facet:e,fallback:t,value:a,onChange:s,fieldId:c}){let r=nc()[e],o=typeof a=="boolean"?a:t,i=`${c}-label`;return hc(h51,{label:r,labelId:i,action:hc(m51,{checked:o,onChange:s,ariaLabelledBy:i})})}function mc(e,t){return{type:"custom",render:({value:a,onChange:s,id:c,name:l})=>hc(p51,{facet:e,fallback:t,value:a,onChange:s,fieldId:String(c??l??e)})}}function H_(e,t){return{type:"custom",render:()=>hc(u51,{facets:e,rest:t})}}function u51({facets:e,rest:t}){let a=nc(),s=e.map(l=>a[l]),c=s.length>1?p("{list} and {last}",{list:s.slice(0,-1).join(", "),last:s[s.length-1]}):s.join("");return hc($y,{text:t.includes("{names}")?p(t,{names:c}):`${c} ${t}`})}var F_="The results link is off while the Lugs filter is on. The product listing page filters on bolt pattern and has no lug filter, so a shopper's lug choice could not be carried across \u2014 they would land on a wider set of products than they asked for. Turn Lugs off to use the results link.";function T_(e){let t=[];return e.lugs!=null&&t.push("lugs"),e.priceMin!=null&&t.push("priceMin"),t}function d51(e){return e==="default"?"recommended":e}function g51(e){return{...L5,collections:e.process?[e.process]:[],diameters:e.size!=null?[e.size]:[],finishes:e.finish?[e.finish]:[],priceMax:e.priceMax,sort:d51(e.sort)}}function P_(e,t,a){let s=e.indexOf("#"),c=s===-1?"":e.slice(s),l=s===-1?e:e.slice(0,s),r=l.indexOf("?"),o=r===-1?l:l.slice(0,r),i=new URLSearchParams(r===-1?"":l.slice(r+1));for(let[h,m]of M8(g51(t)))i.set(h,m);D5(i,a);let n=i.toString();return`${o}${n?`?${n}`:""}${c}`}var l9="pills",ev=[{label:"Pills",value:"pills"},{label:"Columns",value:"columns"}];function E_(e){return I2(ev,l9,e)}import{jsx as tv}from"react/jsx-runtime";var x51="follow the product type. Set them in Product types.",V_={fields:{_gPills:x("Filters shown"),showProcess:mc("process",!0),showLugs:mc("lugs",!0),showPrice:mc("price",!0),showVehicle:mc("vehicle",!0),_nFieldFilters:H_(["size","finish"],x51),_gBar:x("Bar"),showCount:l1("Result count",!0,tv(v51,{})),showSort:l1("Sort + Clear all",!0,tv(f51,{})),resultsLabel:q("Results button","See all results"),resultsHref:H1("Results link"),resultsBlocked:b5(F_),layout:g1("Layout",tv(b51,{}),ev,l9)},resolveFields:(e,{fields:t})=>{let a=e.props,s={...t};return a.showLugs?(delete s.resultsHref,delete s.resultsLabel):delete s.resultsBlocked,s}};import{jsx as _t,jsxs as N_}from"react/jsx-runtime";function av({eyebrow:e,title:t,body:a,ctaText:s,ctaHref:c,secondaryText:l,secondaryHref:r,contained:o}){return _t(t2,{contained:o,className:"py-6",children:N_("div",{className:"flex flex-col items-center gap-5 px-6 py-16 text-center max-[800px]:py-10",children:[e&&_t(V1,{text:e,scaled:!1}),t&&_t("h2",{className:"max-w-[720px] font-display text-[min(44px,var(--sf-heading-max,9999px))] font-medium leading-[1.05] tracking-[-0.03em] max-[800px]:text-[min(30px,var(--sf-heading-max,9999px))]",children:Y(t,!1)}),a&&z0(a).map((i,n)=>_t("p",{className:"max-w-[560px] text-[16px] leading-[1.6] opacity-85",children:M(i)},n)),(s||l)&&N_("div",{className:"mt-2 flex items-center gap-6",children:[s&&_t(c3,{href:c||"/checkout",variant:"primary",children:M(s)}),l&&_t("a",{href:r||"#",className:"font-mono text-[13px] uppercase tracking-[0.2em] underline underline-offset-4 opacity-70 hover:opacity-100",children:M(l)})]})]})})}import{jsx as z51}from"react/jsx-runtime";var pc={title:"Ready when *you are.*",secondary:"Questions? Talk to us"},__={label:"Ready-to-Order Banner",defaultProps:{eyebrow:"",title:"",body:"",ctaText:"",ctaHref:"",secondaryText:"",secondaryHref:"",contained:!0},render:({eyebrow:e,title:t,body:a,ctaText:s,ctaHref:c,secondaryText:l,secondaryHref:r,contained:o,puck:i})=>{let n=W3(s,c,i);return z51(av,{eyebrow:y(e,A.eyebrow,i),title:y(t,pc.title,i),body:y(a,A.body,i),ctaText:n.text,ctaHref:n.href||"/checkout",secondaryText:y(l,pc.secondary,i),secondaryHref:a1(r)||"#",contained:o})}};var I_={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.eyebrow),title:O("Heading",pc.title),body:O("Body",A.body),_gButton:x("Button"),...H4,secondaryText:T("Secondary button",pc.secondary),secondaryHref:H1("Secondary link"),_gLayout:x("Layout")}};import{Button as y51}from"efficient-shell/ui";import{SettingsField as w51}from"efficient-easel/panel";import{FieldSelect as C51}from"efficient-easel/fields";import{CategoryIcon as k51}from"efficient-easel/icons";import{useEffect as R_,useRef as sv,useState as M51}from"react";var f4=ct({fetch:(e,t)=>J1.listCategories(e,{visibleOnly:!0,siteId:t}),keyBy:i2});import{jsx as b4,jsxs as It}from"react/jsx-runtime";function B_(e){return{id:e.id,name:e.name,slug:e.slug,description:e.description??"",image:e.image??""}}function cv({value:e,onChange:t}){let a=C4(),[s,c]=M51(null),l=sv(!0),r=sv(e);r.current=e;let o=sv(t);o.current=t;let i=(g=!1)=>f4(g).then(b=>(l.current&&c(b),b)),n=g=>{let b=r.current;if(!b?.id)return;let f=g.find(z=>z.id===b.id);if(!f)return;let w=B_(f);b6(w,b)&&o.current(w)};R_(()=>(l.current=!0,i().then(n),()=>{l.current=!1}),[]),R_(()=>QM(()=>{i(!0).then(n)}),[]);let h=g=>{if(!g){t(null);return}let b=(s??[]).find(f=>f.id===g);b&&t(B_(b))},m=()=>{e?.id&&a.send("storefront-editor:open-category",{categoryId:e.id,name:e.name})},u=s===null,d=!!e?.id&&!(s??[]).some(g=>g.id===e.id),v=fu(e?.image);return It("div",{children:[b4(w51,{label:p("Collection"),icon:b4(k51,{}),children:b4(C51,{value:e?.id??"",ariaLabel:p("Collection"),onChange:h,readOnly:u,options:[{label:u?p("Loading\u2026"):p("None"),value:""},...d?[{label:p("{name} (unavailable)",{name:e.name}),value:e.id}]:[],...(s??[]).map(g=>({label:g.name,value:g.id}))]})}),e?.id?It("div",{className:"sf-blogsource",style:{marginTop:9},children:[It("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Name")}),b4("div",{style:{fontWeight:600},children:e.name})]}),It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Description")}),b4("div",{style:{fontSize:13,opacity:e.description?.85:.5},children:e.description||p("No description yet")})]}),It("div",{children:[b4("div",{className:"sf-field-label",style:{opacity:.6},children:p("Image")}),v?b4("img",{src:v,alt:"",style:{width:"100%",height:96,objectFit:"cover",borderRadius:8}}):b4("div",{style:{fontSize:13,opacity:.5},children:p("No image yet")})]})]}),b4(y51,{variant:"secondary",size:"sm",className:"sf-blogsource-action",style:{marginTop:10},onClick:m,children:p("Edit category \u270E")}),b4("p",{className:"es-field-hint sf-hint-keep",children:p("Name, description and image come from {place}. Edit them there \u2014 this card updates to match.",{place:p("Storefront \u2192 Categories")})})]}):b4("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a category from {place} to fill this card\u2019s name, description and image. That content is edited in the category.",{place:p("Storefront \u2192 Categories")})})]})}import{jsx as S51}from"react/jsx-runtime";var Z_={fields:{_gContent:x("Content"),collection:{type:"custom",render:({value:e,onChange:t})=>S51(cv,{value:e,onChange:t})},altName:Y9(f1("Alt name")),tag:T("Tag",A.eyebrow),_gLink:x("Link"),href:H1("Link")}};import{ColumnsIcon as E51,HashIcon as V51}from"efficient-easel/icons";import{useId as L51}from"react";import{Fragment as D_,jsx as r9,jsxs as lv}from"react/jsx-runtime";function A51({editing:e,nodeId:t,children:a}){return!e||!t?r9(D_,{children:a}):r9(st,{nodeId:t,sectionType:"Collections",children:a})}var H51="px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",F51="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]",T51={2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5"};function rv({eyebrow:e,heading:t,columns:a,showPrice:s,cardStyle:c,layout:l,limit:r,cards:o,omitHead:i=!1,nodeId:n,partStyles:h,editing:m=!1}={}){let u=`cg-${L51().replace(/:/g,"")}`,d=typeof r=="number"&&r>0,v=l==="list"?"grid-cols-1":a===void 0?"grid-cols-3":T51[Math.min(5,Math.max(2,Math.round(a)))]??"grid-cols-3";return lv("section",{className:i?F51:H51,children:[i?null:r9(s0,{num:e!==void 0?e:"01 / Collections",accentNum:!0,title:t!==void 0?Y(t,!1):lv(D_,{children:["Three ranges,",r9("br",{}),"one standard."]}),link:{text:"View all",href:"/wheels"}}),o&&r9(A51,{editing:m,nodeId:n,children:lv(bu.Provider,{value:{showPrice:s,cardStyle:c,partStyles:h,editing:m},children:[d&&r9("style",{children:`.${u} > *:nth-child(n+${r+1}){display:none}`}),r9(o,{className:`${u} grid ${v} gap-4 max-[800px]:grid-cols-1 max-[800px]:gap-3`,minEmptyHeight:260})]})})]})}import{jsx as P51}from"react/jsx-runtime";var ov={cards:{type:"slot"}},O_={label:"Collections",fields:ov,defaultProps:{columns:3,limit:6},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return P51(rv,{eyebrow:a(e2(e.eyebrow,A.sectionNumber,e.puck)),heading:a(e2(e.heading,A.sectionHeading,e.puck)),omitHead:t,nodeId:typeof e.id=="string"?e.id:void 0,partStyles:E9(e),editing:e.puck?.isEditing,columns:e.columns,limit:e.limit,cards:e.cards})}};import{jsx as G_}from"react/jsx-runtime";var q_={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.sectionNumber),heading:O("Heading",A.sectionHeading),cardList:N5("Collections","Cards"),cards:ov.cards,_gLayout:x("Layout"),columns:s1("Columns",G_(E51,{}),2,5,1,3),limit:s1("Collections to display",G_(V51,{}),1,8,1,6)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Collections.headRows)};import{useEffect as f61,useId as b61,useState as x61}from"react";import{useId as D51}from"react";import{Fragment as R51,jsx as O5,jsxs as Rt}from"react/jsx-runtime";var N51=[],_51="View tyre",I51="flex flex-col bg-[var(--card-bg)] p-5";function W_(e,t){let a=e?Pl(e):"";return[I51,t?"relative":"",a].filter(Boolean).join(" ")}function uc({outline:e,showIndex:t=!1,size:a,specs:s,prices:c,image:l,inStock:r,href:o,linkLabel:i=_51,imageSizes:n="(max-width: 720px) 100vw, (max-width: 1100px) 50vw, 33vw",fieldUsage:h=N51,currency:m,formatPrice:u}){let d=de(c,m),v=d===null?n7:u(d),g=Xm(h),b=[["load_index","Load index",s.loadIndex],["speed_rating","Speed",s.speedRating],["construction","Construction",s.construction],["tire_type","Type",s.tireType]].filter(([,,z])=>!!z).filter(([z])=>g(z)),f=Rt(R51,{children:[O5(p6,{image:l,size:a,type:s.tireType,sizes:n}),O5("h3",{className:"mt-4 font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-tight",children:a}),s.treadPattern?O5("div",{className:"mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:s.treadPattern}):null,b.length>0&&O5("dl",{className:"mt-3 flex flex-col gap-1.5 font-mono text-[length:var(--size-label,12px)]",children:b.map(([z,k,S])=>Rt("div",{className:"flex items-baseline justify-between gap-3",children:[O5("dt",{className:"uppercase tracking-[0.14em] text-fg-dim",children:k}),O5("dd",{className:"text-right text-fg",children:S})]},z))}),Rt("div",{className:"mt-4 flex items-baseline justify-between gap-3 border-t border-line pt-3 font-mono text-[length:var(--size-label,13px)]",children:[O5("span",{className:"text-fg",children:v}),O5("span",{style:r?{color:"var(--green)"}:void 0,className:r?void 0:"text-fg-dim",children:r?"In stock":"Out of stock"})]})]}),w=t?O5("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null;return o?Rt(L1,{href:o,"aria-label":a?`View ${a} tyre`:"View this tyre",className:`group ${W_(e,t)}`,children:[w,f,Rt("span",{className:"mt-3 inline-flex items-center gap-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent transition-colors group-hover:text-fg",children:[i,O5("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]})]}):Rt("div",{className:W_(e,t),children:[w,f]})}import{jsx as B51,jsxs as Z51}from"react/jsx-runtime";function dc({href:e,label:t}){return Z51(L1,{href:e,"data-view-more":!0,className:"inline-flex items-center gap-3 self-start border-b border-line pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg transition-colors hover:text-fg-dim",children:[t,B51("span",{"aria-hidden":!0,children:"\u2192"})]})}import{Fragment as q51,jsx as G5,jsxs as iv}from"react/jsx-runtime";var O51="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",U_={2:"grid grid-cols-2 gap-2 max-[720px]:grid-cols-1",3:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",4:"grid grid-cols-4 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1"};function nv({num:e,title:t,description:a,tyres:s,footnote:c,footnoteLinkText:l,footnoteLinkHref:r,viewMore:o,editing:i=!1,frameClassName:n=O51,omitHead:h=!1,columns:m=3,capWidth:u,cardImage:d,outline:v,indexBadge:g}){let{currency:b,formatPrice:f}=d0(),w=s??[],z=`ct-${D51().replace(/:/g,"")}`,k=g??l4,S=J6(z,k),H=w.some(D=>!D.image),I=[c,H?uo:null].filter(Boolean).join(" "),P=h?null:G5(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0});return w.length===0?i?iv("section",{className:n,children:[P,G5("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("No compatible tyres found for this wheel\u2019s sizes yet \u2014 tyres appear automatically when a matching size is active and priced in the catalog.")})]}):null:iv("section",{className:n,style:J2(d),children:[S&&G5("style",{children:S}),iv(G51,{px:u,children:[P,G5("div",{className:`${S?`${z} `:""}${U_[m]??U_[3]}`,children:w.map(D=>G5(uc,{outline:v,showIndex:k!=="off",size:D.size,specs:D.specs,prices:D.prices,image:D.image,inStock:D.inStock,href:Ge(D.slug),currency:b,formatPrice:f},D.sku))}),o&&G5("div",{className:"mt-10 flex",children:G5(dc,{href:o.href,label:o.label})}),G5(s5,{text:I,linkText:l,linkHref:r})]})]})}function G51({px:e,children:t}){return typeof e!="number"?G5(q51,{children:t}):G5("div",{style:X6(e),children:t})}import{useMemo as Y51,useState as X51}from"react";import{createContext as W51,useContext as U51,useMemo as j51}from"react";import{jsx as $51}from"react/jsx-runtime";var j_=[],K51={imageBackgroundFill:U9,spinOnHover:!0,coverIndex:1,indexBadge:l4,outline:r4,showBadge:!0,fieldUsage:j_,reserveEyebrow:!1,showCardPrice:!0,showCardFinishes:!0,showCardSizes:!1,showCardBuy:!1,showCardPage:!1},K_=W51(K51);function Ln({imageBackgroundFill:e,spinOnHover:t,coverIndex:a=1,indexBadge:s=l4,outline:c=r4,showBadge:l=!0,fieldUsage:r=j_,reserveEyebrow:o=!1,showCardPrice:i=!0,showCardFinishes:n=!0,showCardSizes:h=!1,showCardBuy:m=!1,showCardPage:u=!1,children:d}){let v=j51(()=>({imageBackgroundFill:e,spinOnHover:t,coverIndex:a,indexBadge:s,outline:c,showBadge:l,fieldUsage:r,reserveEyebrow:o,showCardPrice:i,showCardFinishes:n,showCardSizes:h,showCardBuy:m,showCardPage:u}),[e,t,a,s,c,l,r,o,i,n,h,m,u]);return $51(K_.Provider,{value:v,children:d})}function $_(){return U51(K_)}import{Fragment as Y_,jsx as U7,jsxs as X_}from"react/jsx-runtime";function o9({wheel:e,variant:t="compact",defaultFinish:a}){let s=t==="catalog",c=Y51(()=>e.finishes.filter(r7),[e.finishes]),l=e.coverImage??null,{currency:r}=d0(),{imageBackgroundFill:o,spinOnHover:i,coverIndex:n,indexBadge:h,outline:m,showBadge:u,fieldUsage:d,reserveEyebrow:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z}=$_(),k=s&&(f||w||z),S=h7(e.prices[r],e.msrpPrices?.[r]),H=zr(S,r,"from "),I=VC(S,r),P=gN(e),D=fN(P),E=vN(P),F=Hr([...eo(e).map(b0=>({fieldKey:b0.fieldKey,field:b0.text})),...E?[{field:{text:E,accent:!0}}]:[]],d).map(b0=>b0.field),{selectedIdx:_,setSelectedIdx:Z,hoverIdx:G,setHoverIdx:V,availability:j,finish:N,shownSrc:Q,showSwatches:W,probes:U}=pn(c,l,a??e.defaultFinish??void 0),i1=on(e,n,N?.name,Q),y1="h-full w-full",K=i?`transition-transform duration-700 [transition-timing-function:cubic-bezier(.2,.6,.2,1)] ${s?"group-hover:rotate-[72deg]":"group-hover:rotate-[60deg]"}`:"",[c1,b1]=X51(()=>new Set),$=b0=>b1(d1=>d1.has(b0)?d1:new Set(d1).add(b0)),u1=rn({overrideSrc:i1,hookSrc:Q,failed:c1}),x1=u1?U7(_3,{src:u1,alt:N?`${e.name} \u2014 ${N.name}`:e.name,width:1e3,height:1e3,sizes:"(max-width: 640px) 90vw, (max-width: 1024px) 45vw, 300px",className:`block object-contain ${K} ${y1}`,draggable:!1,onError:()=>$(u1)},u1):U7(Js,{imageLabel:e.name}),X0=s&&u&&e.badge?U7(Mt,{className:Ws,tone:e.badge==="new"?"solid":"outline",children:e.badge==="new"?"New":"Bestseller"}):null,o0=E&&s?U7(Mt,{className:Ws,tone:"outline",children:E}):X0,I1=Ki({kindLabel:null,brand:null,process:e.process?e0(e.process):null},d),c0=D?X_(Y_,{children:[I1,U7("span",{className:`${I1?"ml-2":""} inline-block bg-accent px-1.5 py-[2px] align-middle font-mono text-[10px] font-bold uppercase tracking-[0.18em] text-bg`,children:"Set"})]}):I1,l0=h!=="off"?U7("span",{"aria-hidden":!0,className:`${Z9} ${D9}`}):null,X1=dn(e),X2=ve(e,X1.selectedVariant,r,1),Q1=mn({wheel:e,sel:X1,price:X2,href:`/wheels/${e.slug}`,show:{sizes:k&&f,buy:k&&w,page:k&&z}}),d2=b&&W?U7(Xs,{finishes:c,availability:j,selectedIdx:_,hoverIdx:G,activeFinish:N,onSelect:Z,onHover:V,showLabel:!1}):null;return X_(Y_,{children:[U7(t9,{variant:t,wide:D&&s,href:`/wheels/${e.slug}`,outline:m,imageBackgroundFill:o,probes:U,reserveEyebrow:v,indexBadge:l0,badges:o0,image:x1,imageSecond:void 0,eyebrow:c0,name:e0(e.name),spec:Qi(F),was:D?void 0:I,price:D?S.priced?H:br:k?fe(X2,r):H,metaLine:D?"the set":void 0,swatches:d2,reserveSwatches:b,showPrice:g,identityLink:k,extras:Q1.extras}),Q1.dialog]})}import{createContext as J51,useContext as Q51,useMemo as e61}from"react";function J_(e,t=[]){let a=np(Na,{param:d7,value:e}),s=t.find(c=>{let l=(c?.url??"").trim();if(!l||l==="#")return!1;let r=ip(l);return r?.param!==d7||r.value!==e?!1:fm(l).startsWith("/")});return s?s.url:a}function Q_(e){let t=[];for(let a of e??[]){typeof a?.url=="string"&&t.push({url:a.url});for(let s of a?.dropdownItems??[])typeof s?.url=="string"&&t.push({url:s.url})}return t}import{jsx as t61}from"react/jsx-runtime";var eI=J51([]);function OU1({items:e,children:t}){let a=e61(()=>Q_(e),[e]);return t61(eI.Provider,{value:a,children:t})}function tI(){return Q51(eI)}import{useMemo as hj1}from"react";import{Fragment as a61,jsx as An,jsxs as s61}from"react/jsx-runtime";function Bt({item:e,onClose:t}){return An(F8,{open:!!e,onClose:t,label:e?.alt??"",className:"flex cursor-zoom-out items-center justify-center bg-overlay-scrim/90 p-6 backdrop-blur-sm max-[720px]:p-3",children:e&&s61(a61,{children:[An("img",{src:e.src,alt:e.alt,className:"block max-h-[92vh] max-w-[92vw] cursor-zoom-out object-contain"}),An(Ye,{}),An("span",{className:"absolute bottom-5 left-5 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:e.alt})]})})}import{useState as c61}from"react";function gc(){let[e,t]=c61(null);return{item:e,open:(a,s)=>t({src:a,alt:s}),close:()=>t(null)}}import{useEffect as o61,useState as Zt}from"react";function l61(e,t,a){let s=new Map;for(let c of e){let l=JSON.stringify(t.map(i=>c.options[i]??null)),r=s.get(l);r||s.set(l,r=new Set);let o=c.options[a];o!==void 0&&r.add(o)}return[...s.values()]}function aI(e,t,a){return a.every(s=>t[s]===void 0||e.options[s]===t[s])}function hv(e,t){let a={};for(let s of e.optionFields){let c=t[s.key]??s.defaultValue;c!==void 0&&(a[s.key]=c)}return a}function Hn(e,t){return cI(e,t).rows}function sI(e,t){return cI(e,t).facts}function cI(e,t){let a=hv(e,t),s=e.optionFields.filter(o=>o.role==="resolves").map(o=>o.key),c=[],l=[],r=[];for(let o of e.optionFields){let i=e.optionValues[o.key]??[],n=e.parts.filter(v=>aI(v,a,r)),h=new Set(n.map(v=>v.options[o.key]).filter(v=>v!==void 0)),m=new Set(e.parts.map(v=>v.options[o.key]).filter(v=>v!==void 0)),u=i.filter(v=>h.has(v.value)||!m.has(v.value));if(o.role==="resolves"?!0:l61(n,s,o.key).some(v=>v.size>1))c.push({key:o.key,label:o.label,prompt:o.prompt,role:o.role,display:o.display,values:u,chosen:t[o.key]??null,empty:o.empty}),r.push(o.key);else if(h.size===1){let[v]=[...h];l.push({key:o.key,label:o.label,value:i.find(g=>g.value===v)??{value:v,label:v}})}}return{rows:c,facts:l}}function r61(e,t){return Hn(e,t).map(a=>a.key)}function lI(e,t){let a=r61(e,t);if(a.length===0||a.some(c=>t[c]===void 0))return null;let s=e.parts.filter(c=>aI(c,t,a));return s.length===1?s[0]:null}function rI(e,t){let a=Hn(e,t);return Object.keys(t).filter(s=>{let c=a.find(l=>l.key===s);return c?!c.values.some(l=>l.value===t[s]):!1})}function Fn(e,t){return e.filter(a=>!t||a.values.length>0).filter(a=>a.role==="resolves").every(a=>a.chosen!==null)}function oI({variants:e,inStock:t,priced:a}){return a&&t===!0&&(e??[]).length===0}function vc(e,{editing:t=!1}={}){let[a,s]=Zt({}),[c,l]=Zt(Ht.qty),[r,o]=Zt(Ht.choice),[i,n]=Zt(0),[h,m]=Zt(!1),[u,d]=Zt(!1),v=I4({editing:t,autoApply:!0}),g=SN(e,u?null:v.fit),b=Hn(g,a),f=sI(g,a),w=hv(g,a),z=lI(g,a),k=z!=null&&!z.inStock,S=rI(g,a).join("|");o61(()=>{if(!S)return;let W=new Set(S.split("|"));s(U=>{let i1={...U};for(let y1 of W)delete i1[y1];return i1})},[S]);let{currency:H}=d0(),P=kg(g,z,{choice:r,qty:c}),D=ve({prices:e.anchorPrices,msrpPrices:e.anchorMsrpPrices},z?{components:P.components}:null,H,c),E=D.unit??0,F=D.setTotal??0,_=yr(D,H),Z=u||v.appliedName!=="",G=FN(e)==="required"?Z:!0,j=b.every(W=>W.chosen!==null)&&G&&z!=null&&z.inStock&&D.priced,N=oI({variants:e.parts,inStock:e.inStock,priced:D.priced});function Q(W,U){s(i1=>({...i1,[W]:U}))}return{picked:a,shown:w,pick:Q,qty:c,setQty:l,choice:r,setChoice:o,angleIdx:i,setAngleIdx:n,showValidation:h,setShowValidation:m,manualMode:u,setManualMode:d,vehicle:v,fitmentSet:Z,rows:b,facts:f,part:z,outOfStock:k,offer:P,preOrder:N,canAddToCart:j,currency:H,price:D,unit:E,set:F,msrpLabel:_}}import{jsx as bj1,jsxs as xj1}from"react/jsx-runtime";function $0(){return vL(z7)?.value??null}var vj1=Object.freeze({});import{Fragment as n61,jsx as mv}from"react/jsx-runtime";function z2({kinds:e,type:t,editing:a=!1,children:s}){let c=$0();return!c||e.includes(c.product.kind)?mv(n61,{children:s}):a?mv("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",children:mv("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("{section} does not apply to {kind}. It is hidden on the live page.",{section:p(xa[t]??t),kind:i61(c.product.kind)})})}):null}function i61(e){switch(e){case"alloy-wheel":return p("Alloy wheels");case"tyre":return p("Tyres");default:return h4[e]}}var pv=2,fc=6,bc=12;function Tn(e){return typeof e!="number"||!Number.isFinite(e)?fc:Math.min(bc,Math.max(pv,Math.round(e)))}function iI(e,t=[]){return{href:J_(e.to,t),label:`View more ${M5([e.to]).many}`}}var h61={kind:"tyre",tyres:[]},m61={kind:"alloy-wheel",wheels:[]},nI=[{key:"tyres-that-fit",label:"Tyres that fit this product",from:["alloy-wheel"],to:"tyre",heading:"Compatible *tyres.*",resolve:e=>e.kind==="alloy-wheel"?{kind:"tyre",tyres:e.source.compatibleTyres??[]}:h61},{key:"wheels-that-fit",label:"Wheels this product fits",from:["tyre"],to:"alloy-wheel",heading:"Wheels that *fit.*",resolve:(e,t)=>e.kind==="tyre"?{kind:"alloy-wheel",wheels:t}:m61},{key:"more-like-this",label:"More like this",from:["alloy-wheel"],to:"alloy-wheel",heading:"Others you might *like.*",resolve:(e,t)=>({kind:"alloy-wheel",wheels:t})}],q5="more-like-this",hI=nI.map(e=>({value:e.key,label:e.label}));function uv(e){return nI.find(t=>t.key===e)}function mI(e,t){return e.from.includes(t)}var pI=["coverIndex","imageBackground","spinOnHover","showBadge"];function uI(e){return uv(e)?.to==="tyre"}var dv={GBP:0,USD:0,AUD:0},p61=[{diameter:18,width:8.5,boltPattern:"5\xD7112",centreBore:66.6,et:35},{diameter:19,width:9,boltPattern:"5\xD7112",centreBore:66.6,et:38},{diameter:20,width:9.5,boltPattern:"5\xD7112",centreBore:66.6,et:40}],gI=[{name:"Finish 1",color:"#171717",family:"black",src:"",features:[1,2,3].map(e=>({eyebrow:"Feature eyebrow",heading:"Feature title",description:"Feature description \u2014 replace this with your own copy.",mark:`0${e} \xB7 Feature`,image:""}))},{name:"Finish 2",color:"#cccccc",family:"silver",src:""},{name:"Finish 3",color:"#8a6438",family:"bronze",src:""}],u61=[{partNumber:"SAMPLE-18",diameter:18,width:8.5,holes:5,pcd:"112",et:35,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0},{partNumber:"SAMPLE-19",diameter:19,width:9,holes:5,pcd:"112",et:38,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0},{partNumber:"SAMPLE-20",diameter:20,width:9.5,holes:5,pcd:"112",et:40,cb:66.6,cap:"\u2014",boltPattern:"5\xD7112",loadRating:"000 kg",inStock:!0}],d61=gI.flatMap(e=>p61.map((t,a)=>({finishName:e.name,size:`${t.diameter}" \xD7 ${t.width} \xB7 ${t.boltPattern} \xB7 ${t.centreBore} bore \xB7 ET ${t.et}`,kind:"squared",directional:!1,components:[{partNumber:`SAMPLE-${e.name.replace(/\s+/g,"")}-${a}`,wheels:4,prices:{...dv},hand:null}],inStock:!0,rearWidth:null,rearEt:null,...t}))),dI=e=>`data:image/svg+xml,${encodeURIComponent(`<svg xmlns="http://www.w3.org/2000/svg" width="640" height="640"><rect width="640" height="640" fill="#e6e6e6"/><text x="320" y="332" font-family="sans-serif" font-size="30" fill="#8f8f8f" text-anchor="middle">${e}</text></svg>`)}`,Dt=e=>({url:dI(e),thumbnailUrl:dI(e),kind:"image"}),g61={photos:[{name:"Studio set",finish:"Finish 1",items:[Dt("Sample photo 1"),Dt("Sample photo 2"),Dt("Sample photo 3")]}],lifestyle:[{name:"On location",finish:"",items:[Dt("Lifestyle 1"),Dt("Lifestyle 2")]},{name:"In the city",finish:"",items:[Dt("Lifestyle 3")]}],videos:[],accessories:[],others:[]},v61=[1,2].map(e=>({sku:`SAMPLE-TYRE-${e}`,size:"000/00 R00",specs:{loadIndex:"00",speedRating:"\u2014",construction:"\u2014",treadPattern:"Tyre model",tireType:"\u2014"},prices:{...dv},image:null,inStock:!0,slug:null})),gv={bundles:[],name:"Product Name",slug:"sample-product",process:"Precision Forged",categories:["Precision Forged"],sizes:[18,19,20],prices:{...dv},msrpPrices:{GBP:null,USD:null,AUD:null},spokes:5,mesh:!1,badge:null,finishes:gI,spec:{lugs:5,sizes:[18,19,20],widths:[8.5,9,9.5],pcds:["5\xD7112"],etRange:[35,42],centreBores:[66.6],loadRating:"000 kg / 000 lbs",cap:"",bumpProfile:"",rimProfile:""},coverImage:null,defaultFinish:null,description:"Product description \u2014 replace this with your own copy.",fitments:u61,photoSets:[],carPhotos:[],details:[],videos:[],mediaGroups:g61,relatedProducts:[],variants:d61,pdpTemplateSlug:null,compatibleTyres:v61},vv=Array.from({length:bc},(e,t)=>t+1).map(e=>({...gv,name:`Product ${e}`,slug:`sample-product-${e}`}));import{Fragment as C61,jsx as n3,jsxs as fv}from"react/jsx-runtime";var z61=D3,vI={2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"};function i9(e){return n3(z2,{kinds:z61,type:"RelatedProducts",editing:e.editing,children:n3(y61,{...e})})}function y61({num:e,title:t,description:a,columns:s=3,cardCount:c,relationship:l=q5,footnote:r,footnoteLinkText:o,footnoteLinkHref:i,editing:n=!1,omitHead:h=!1,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I}){let P=$0(),D=tI(),E=Tn(c),[F,_]=x61([]);f61(()=>{if(P||!n)return;let N=!1;return i3().then(Q=>{let W=Q.length>0?Q:vv;N||_(W)}).catch(()=>{N||_(vv)}),()=>{N=!0}},[P,n]);let Z=uv(l);if(!Z)return null;let G=iI(Z,D),V=h?null:n3(s0,{num:e?M(e):void 0,title:Y(t||Z.heading,!1),description:a?M(a):void 0,accent:!0});if(!P)return n?n3(fI,{header:V,wheels:F.slice(0,E),columns:s,viewMore:G,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I}):null;if(!mI(Z,P.product.kind))return n?n3("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",style:J2(m),children:n3("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("\u201C{relationship}\u201D does not apply to this product. It is hidden on the live page.",{relationship:p(Z.label)})})}):null;let j=Z.resolve(P.product,P.relatedWheels);return j.kind==="tyre"?n3(nv,{omitHead:h,columns:s,capWidth:I,cardImage:m,outline:u,indexBadge:d,num:e,title:t||Z.heading,description:a,tyres:[...j.tyres].slice(0,E),footnote:r,footnoteLinkText:o,footnoteLinkHref:i,viewMore:G,editing:n}):j.wheels.length===0?n?fv("section",{className:"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",style:J2(m),children:[V,n3("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("Related products appear here on a product page.")})]}):null:n3(fI,{header:V,wheels:[...j.wheels].slice(0,E),columns:s,viewMore:G,cardImage:m,outline:u,indexBadge:d,showBadge:v,showCardPrice:g,showCardFinishes:b,showCardSizes:f,showCardBuy:w,showCardPage:z,coverIndex:k,imageBackground:S,spinOnHover:H,capWidth:I})}function fI({header:e,wheels:t,columns:a,viewMore:s,cardImage:c,outline:l,indexBadge:r,showBadge:o,showCardPrice:i,showCardFinishes:n,showCardSizes:h,showCardBuy:m,showCardPage:u,coverIndex:d,imageBackground:v,spinOnHover:g,capWidth:b}){let f=`rp-${b61().replace(/:/g,"")}`;if(t.length===0)return null;let w=vI[Math.min(4,Math.max(2,a))]??vI[3],z=r??l4,k=J6(f,z);return fv("section",{className:"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",style:J2(c),children:[k&&n3("style",{children:k}),fv(w61,{px:b,children:[e,n3(Ln,{imageBackgroundFill:j9(v,U9),spinOnHover:g??!0,coverIndex:d??1,outline:l??r4,indexBadge:z,showBadge:o??!0,showCardPrice:i??!0,showCardFinishes:n??!0,showCardSizes:h??!1,showCardBuy:m??!1,showCardPage:u??!1,children:n3("div",{className:`${f} grid gap-[2px] bg-[var(--catalog-grid-bg)] ${w}`,children:t.map((S,H)=>n3(o9,{wheel:S,variant:"catalog"},`${S.slug}-${H}`))})}),n3("div",{className:"mt-10 flex",children:n3(dc,{href:s.href,label:s.label})})]})]})}function w61({px:e,children:t}){return typeof e!="number"?n3(C61,{children:t}):n3("div",{style:X6(e),children:t})}import{jsx as k61}from"react/jsx-runtime";var r5={num:A.sectionNumber,title:"Compatible *tyres.*",description:A.body,footnote:"Tyres shown are fitment-matched companions.",footnoteLinkText:"Enquire about tyres"},bI={label:"Compatible Tyres",defaultProps:{num:"",title:"",description:"",footnote:"",footnoteLinkText:"",footnoteLinkHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return k61(i9,{num:a(y(e.num,r5.num,e.puck)),title:a(y(e.title,r5.title,e.puck)),description:a(y(e.description,r5.description,e.puck)),omitHead:t,footnote:y(e.footnote,r5.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,r5.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),relationship:"tyres-that-fit",cardImage:e.cardImage,editing:e.puck?.isEditing})}};var xI={fields:{_gContent:x("Header"),num:T("Number",r5.num),title:T("Heading",r5.title),description:O("Body",r5.description),_gFootnote:x("Footnote"),footnote:O("Footnote",r5.footnote),footnoteLinkText:T("Footnote button",r5.footnoteLinkText),footnoteLinkHref:H1("Footnote link"),_gCards:x("Cards"),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.CompatibleTyres.headRows)};var zI={fields:{}};import{SettingsIcon as T61,AccentIcon as P61}from"efficient-easel/icons";import{jsx as W5,jsxs as bv}from"react/jsx-runtime";var M61="py-6",S61="pt-0 pb-6";function xc({eyebrow:e,title:t,body:a,options:s=[],highlightBadge:c,contained:l,omitHead:r=!1}){return W5(t2,{contained:l,className:r?S61:M61,children:bv("div",{className:"flex flex-col gap-6",children:[r?null:e||t||a?bv("div",{className:"flex max-w-[680px] flex-col gap-3",children:[e&&W5(V1,{text:e,scaled:!1}),t&&W5("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:Y(t,!1)}),a&&z0(a).map((o,i)=>W5("p",{className:"text-[15px] leading-[1.6] opacity-85",children:M(o)},i))]}):null,s.length>0&&W5("ul",{className:"grid grid-cols-3 gap-4 max-[800px]:grid-cols-1",children:s.map((o,i)=>bv("li",{className:`sf-card relative flex flex-col gap-2 border bg-surface px-6 py-6 ${o.highlighted?"border-accent":"border-line"}`,children:[o.highlighted&&c&&W5("span",{className:"absolute -top-2.5 left-5 bg-bg px-2 font-mono text-[10px] uppercase tracking-[0.25em] text-accent",children:M(c)}),o.name&&W5("span",{className:"text-[17px] font-medium",children:M(o.name)}),o.eta&&W5("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] opacity-60",children:M(o.eta)}),o.blurb&&W5("p",{className:"text-[13.5px] leading-[1.6] opacity-75",children:M(o.blurb)}),o.price&&W5("span",{className:"mt-auto pt-2 font-display text-[20px] font-medium text-accent",children:M(o.price)})]},i))})]})})}import{useEffect as L61,useState as A61}from"react";import{jsx as H61}from"react/jsx-runtime";function xv({eyebrow:e,title:t,body:a,highlightBadge:s,contained:c,omitHead:l=!1}){let{currency:r,formatMoney:o}=d0(),[i,n]=A61(null);L61(()=>{let m=!1;return v0.listShippingMethods().then(u=>{m||n(u)}).catch(()=>{m||n([])}),()=>{m=!0}},[]);let h=(i??[]).filter(m=>m.prices[r]!=null).map(m=>{let u=m.prices[r],d=u===0?"Free":o(u,r),v=m.pickupLocation;return{name:v?`${m.name} \u2014 ${v.name}`:m.name,eta:v?v.openingHours||void 0:m.description||void 0,price:m.requiresQuote&&u!==0?`From ${d}`:d,blurb:v&&[v.address,v.city,v.state].filter(Boolean).join(", ")||void 0}});return H61(xc,{eyebrow:e,title:t,body:a,options:h,highlightBadge:s,contained:c,omitHead:l})}import{jsx as yI}from"react/jsx-runtime";var n9={title:"Delivery, your way",badge:"Recommended"},F61=()=>[{name:p("Standard"),eta:p("5\u20137 business days"),price:p("Free"),blurb:p("Tracked to your door.")},{name:p("Express"),eta:p("2\u20133 business days"),price:"$00",blurb:p("Priority handling."),highlighted:!0},{name:p("Pickup"),eta:p("Same day"),price:p("Free"),blurb:p("Collect from the warehouse.")}],wI={label:"Delivery Options",defaultProps:{eyebrow:"",title:"",body:"",options:[],live:!0,highlightBadge:"",contained:!0},render:e=>{let t=O1(e.headPlacement)==="own-box",a=m=>t?void 0:m,{eyebrow:s,title:c,body:l,options:r,live:o,highlightBadge:i,contained:n,puck:h}=e;return o?yI(xv,{eyebrow:a(y(s,A.eyebrow,h)),title:a(y(c,n9.title,h)),body:a(y(l,A.body,h)),omitHead:t,highlightBadge:y(i,n9.badge,h),contained:n}):yI(xc,{eyebrow:a(y(s,A.eyebrow,h)),title:a(y(c,n9.title,h)),body:a(y(l,A.body,h)),omitHead:t,options:C1(r,F61(),h),highlightBadge:y(i,n9.badge,h),contained:n})}};import{jsx as CI}from"react/jsx-runtime";var kI={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",A.eyebrow),title:O("Heading",n9.title),body:O("Body",A.body),_gOptions:x("Options"),live:l1("Use my real delivery options",!0,CI(T61,{})),options:{type:"array",label:"Delivery options",arrayFields:{name:f1("Name"),eta:f1("Window"),price:f1("Price"),blurb:E1("Body"),highlighted:l1("Highlight",!1,CI(P61,{}))},getItemSummary:e=>e.name||"Option"},highlightBadge:T("Highlight badge",n9.badge),_gLayout:x("Layout")},resolveFields:(e,{fields:t})=>G1(t,e.props.headPlacement,Z1.DeliveryOptions.headRows)};import{ProductFieldIcon as X61,WordsFromIcon as J61,SquareIcon as RI,ImageIcon as Q61}from"efficient-easel/icons";import{jsx as U5,jsxs as Pn}from"react/jsx-runtime";function Ot({rows:e,startLeft:t=!1,layout:a="even",padTop:s,padBottom:c,editing:l=!1}){let r=a==="narrow",o=typeof s=="number"?s:100,i=typeof c=="number"?c:100,n=(e??[]).filter(m=>(m?.eyebrow??"").trim()||(m?.title??"").trim()||(m?.copy??"").trim()||(m?.tag??"").trim()||(m?.image??"").trim()),h=n.length>0?n:l?[{tag:p("Row {n}",{n:1})},{tag:p("Row {n}",{n:2})},{tag:p("Row {n}",{n:3})}]:[];return h.length===0?null:U5("section",{className:"relative z-[2] mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line bg-bg px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:{paddingTop:o,paddingBottom:i},children:h.map((m,u)=>{let d=u%2===1!==t;return Pn("div",{className:["grid items-center py-[60px]",r?"grid-cols-[1fr_460px] gap-[72px]":"grid-cols-2 gap-12","max-[1100px]:grid-cols-1",d?"[direction:rtl] max-[1100px]:[direction:ltr]":"",u>0?"border-t border-line":""].join(" "),children:[Pn("div",{className:["[direction:ltr] flex flex-col gap-4",r?"max-w-[560px]":"",r&&!d?"ml-auto max-[1100px]:ml-0":""].join(" "),children:[m.eyebrow?.trim()&&U5("div",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-accent",children:e0(m.eyebrow)}),m.title?.trim()&&U5("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(28px,3vw,42px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [&_em]:[font-weight:var(--sf-heading-weight-strong,inherit)] leading-[1.1] tracking-[-0.02em]",children:M(m.title,!0)}),m.copy?.trim()&&U5("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:M(m.copy,!1)}),(()=>{let v=(m.specs??[]).filter(g=>(g?.label??"").trim()||(g?.value??"").trim());return v.length===0?null:U5("dl",{className:"mt-2 border-t border-line pt-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.1em] leading-[2.1]",children:v.map((g,b)=>Pn("div",{className:"flex items-baseline justify-between gap-6",children:[U5("dt",{className:"text-fg-dim",children:e0(g.label??"")}),U5("dd",{className:"text-fg",children:e0(g.value??"")})]},b))})})()]}),Pn("div",{className:["[direction:ltr] flex flex-col gap-3",r?d?"items-end":"items-start":"",r?"max-[1100px]:items-start":""].join(" "),children:[U5("div",{className:["relative overflow-hidden max-w-full",r?m.imageShape==="wide"?"w-[460px] aspect-[16/9]":"w-[360px] aspect-square":"aspect-square"].join(" "),children:U5(k0,{label:m.tag?.trim()||m.title?.trim()||`row-${u+1}`,src:m.image||void 0,objectFit:"contain",sizes:r?"(max-width: 1100px) 100vw, 460px":"(max-width: 1100px) 100vw, 50vw"})}),m.tag?.trim()&&U5("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-fg-dim ${d?"text-left":"text-right"}`,children:e0(m.tag)})]})]},u)})})}function MI(e,t){let a=e?.detailShots;if(!Array.isArray(a)||a.length===0)return[];let s=a.filter(o=>!!o&&typeof o.url=="string"&&!!o.url&&typeof o.title=="string"&&!!o.title);if(s.length===0)return[];let c=o=>Array.isArray(o.lugs)?o.lugs.filter(i=>typeof i=="number"):[],l=s.filter(o=>c(o).length>0),r=t;if(r==null){let o=l.flatMap(c);r=o.length?Math.min(...o):null}return s.filter(o=>{let i=c(o);return i.length===0?!0:r!=null&&i.includes(r)})}function SI(e,t){let a=Array.isArray(e.lugs)?e.lugs:[];if(a.length===0)return!1;let s=new Set;for(let c of t)for(let l of c.lugs??[])s.add(l);return a.length<s.size}function En(e){return e.manualMode?_e(e.shown.boltPattern).holes:e.vehicle.fit?.holes??null}import{useEffect as D61,useState as O61}from"react";var zv=[{key:"loadIndex",label:"Load index",prompt:"Select a load index",spec:"loadIndex"},{key:"speedRating",label:"Speed rating",prompt:"Select a speed rating",spec:"speedRating"},{key:"tyreType",label:"Type",prompt:"Select a type",spec:"tireType"}];function Vn(e){let t=e.variants??[],a=[];for(let r of t)a.some(o=>o.value===r.size)||a.push({value:r.size,label:r.size});let s={size:a};for(let r of zv){let o=[];for(let i of t){let n=i.specs[r.spec];!n||o.some(h=>h.value===n)||o.push({value:n,label:n})}s[r.key]=o}let c=t.map(r=>({id:r.sku,options:{size:r.size,...Object.fromEntries(zv.map(o=>[o.key,r.specs[o.spec]]).filter(([,o])=>!!o))},inStock:r.inStock,image:r.image??null,components:[{partNumber:r.sku,wheels:1,prices:r.prices}]})),l=[{key:"size",label:"Size",prompt:"Select a size",role:"resolves",display:"pill"},...zv.map(r=>({key:r.key,label:r.label,prompt:r.prompt,role:"describes",display:"pill"}))];return{kind:"tyre",source:e,slug:e.slug,name:e.name,eyebrow:e.brand,badge:"",href:`/tyres/${e.slug}`,crumbs:[{label:"Home",href:"/"},{label:e.name}],cover:e.coverImage??null,inStock:e.inStock,mediaGroups:e.mediaGroups,optionFields:l,optionValues:s,parts:c,anchorPrices:E61(t),anchorMsrpPrices:{}}}function E61(e){let t={};for(let a of e)for(let[s,c]of Object.entries(a.prices??{})){if(typeof c!="number"||!Number.isFinite(c)||c<=0)continue;let l=t[s];(l==null||c<l)&&(t[s]=c)}return t}import{useSyncExternalStore as V61}from"react";var LI="sf-editor-preview-pick",Gt=null,yv=new Set;function wv(){if(Gt)return Gt;Gt={};let e=t3.getItem(LI);if(!e)return Gt;try{let t=JSON.parse(e);if(t&&typeof t=="object"&&!Array.isArray(t))for(let[a,s]of Object.entries(t))typeof s=="string"&&(Gt[a]=s)}catch{}return Gt}function N61(){t3.setItem(LI,JSON.stringify(wv()))}function _61(e,t){return`${e??""}::${t??""}`}function I61(e){return wv()[e]}function AI(e,t){let a=wv();if(a[e]!==t){a[e]=t,N61();for(let s of yv)s()}}function R61(e){return yv.add(e),()=>yv.delete(e)}function HI(e,t){let a=e??t??"";return a.trim()?a:null}function Cv(){return _61(i2(),aL())}function Nn(){let e=Cv();return V61(R61,()=>I61(e),()=>{})}var B61={GBP:0,USD:0,AUD:0},Z61={loadIndex:"00",speedRating:"\u2014",construction:"Radial",treadPattern:"Tread pattern",tireType:"Season"},FI=["205/55 R16","225/45 R17","245/40 R19"],TI={slug:"sample-tyre",name:"Tyre Model",brand:"Brand",designCode:"SAMPLE",description:"",shortDescription:"Tyre description \u2014 replace this with your own copy.",seoTitle:"",seoDescription:"",coverImage:null,inStock:!0,sizes:[...FI],variants:FI.map(e=>({sku:`SAMPLE-${e.replace(/[^0-9]/g,"")}`,size:e,specs:{...Z61},prices:{...B61},image:null,inStock:!0,eprelRegistrationNumber:""})),mediaGroups:{photos:[],lifestyle:[],videos:[],accessories:[],others:[]},compatibleWheels:[],pdpTemplateSlug:null};var PI=null,EI=null,kv=new Map;function G61(e){let t=R3(),a=i2();(t!==PI||a!==EI)&&(PI=t,EI=a,kv.clear());let s=kv.get(e);return s||(s=t?J1.getWheelDetail(t,e,{siteId:a}).catch(()=>null):Promise.resolve(null),kv.set(e,s)),s}function q61(e){return e==="tyre"?Vn(TI):Ks(gv)}var zc=["alloy-wheel"];function W61(e,t){return e?Ks(e):q61(t)}function z3(e){let t=HI(Nn(),rL()),a=nL(),[s,c]=O61(null);return D61(()=>{if(!e||!t||!zc.includes(a)){c(null);return}let l=!1;return G61(t).then(r=>{l||c(r)}),()=>{l=!0}},[e,t,a]),e?W61(s,a):null}import{jsx as h9}from"react/jsx-runtime";var U61=["alloy-wheel"];function NI(e,t){return e.finishes.find(a=>a.name===t)??e.finishes[0]}function j61(e,t){return(NI(e,t)?.features??[]).map(a=>({eyebrow:a.eyebrow,title:a.heading,copy:a.description,tag:a.mark,image:a.image||void 0}))}function K61(e,t,a){let s=MI(NI(e,t),a);return s.map(c=>({title:c.title,copy:c.line||void 0,image:c.url,tag:a!=null&&SI(c,s)?`Shown for your ${a} lug`:void 0,imageShape:"square"}))}function Mv(e){return Ho(!!e.editing)?h9($61,{...e}):h9(z2,{kinds:U61,type:"DetailRows",editing:e.editing,children:h9(Y61,{...e})})}function VI(e){let t=pL(e),a=Lo(e)[0];return!t.length&&!a&&!e.title.trim()?[]:[{title:e.title,specs:t,image:a?.url||void 0}]}function $61({startLeft:e,padTop:t,padBottom:a,editing:s=!1}){let c=To(),l=c?VI(c):s?VI(Fo):[];return l.length===0?null:h9(Ot,{rows:l,startLeft:e,padTop:t,padBottom:a,editing:s})}function Y61({rowsFrom:e,startLeft:t,padTop:a,padBottom:s,editing:c=!1}){let l=$0(),r=z3(c&&!l),o=l?.product??r,i=o?.kind==="alloy-wheel"?o.source:null,n=l?l.selection.shown.finish:void 0,h=l?En(l.selection):null,m=e==="details",u=i?m?K61(i,n,h):j61(i,n):[];return m&&u.length===0?c?h9("section",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-14 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-10",children:h9("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("No detail shots on this finish yet. Tick a close-up on the design's renderings and give it a title. This section is hidden on the live page until then.")})}):null:h9(Ot,{rows:u,startLeft:t,padTop:a,padBottom:s,editing:c})}import{jsx as _I}from"react/jsx-runtime";var Sv=[{image:"",eyebrow:"Feature eyebrow",title:"Feature *one.*",copy:"Describe this feature in a sentence or two.",tag:"01 \xB7 Detail"},{image:"",eyebrow:"Feature eyebrow",title:"Feature *two.*",copy:"Describe this feature in a sentence or two.",tag:"02 \xB7 Detail"},{image:"",eyebrow:"Feature eyebrow",title:"Feature *three.*",copy:"Describe this feature in a sentence or two.",tag:"03 \xB7 Detail"}],II={label:"Feature Rows",defaultProps:{dynamic:!1,rows:[],startLeft:!1,layout:"even",padTop:100,padBottom:100},render:e=>e.dynamic?_I(Mv,{rowsFrom:e.rowsFrom==="details"?"details":"story",startLeft:e.startLeft,padTop:typeof e.padTop=="number"?e.padTop:100,padBottom:typeof e.padBottom=="number"?e.padBottom:100,editing:e.puck?.isEditing}):_I(Ot,{rows:C1(e.rows,Sv,e.puck),startLeft:e.startLeft,layout:e.layout,padTop:typeof e.padTop=="number"?e.padTop:100,padBottom:typeof e.padBottom=="number"?e.padBottom:100,editing:e.puck?.isEditing})};import{jsx as yc}from"react/jsx-runtime";var BI={fields:{_sDynamic:Y1("Product page"),dynamic:l1("Connect to product data",!1,yc(X61,{})),rowsFrom:v1("Rows from",yc(J61,{}),[{label:"Product story",value:"story"},{label:"Detail shots",value:"details"}],"story"),_sRows:Y1("Rows"),rows:$9({type:"array",label:"Rows",arrayFields:{image:q1("Image","image/*"),imageShape:v1("Image shape",yc(RI,{}),[{label:"Square",value:"square"},{label:"Wide",value:"wide"}],"square"),eyebrow:q("Eyebrow"),title:f1("Title"),copy:E1("Body"),specs:{type:"array",label:"Specs",arrayFields:{label:q("Label","Offset"),value:q("Value","ET -10")},defaultItemProps:{label:"",value:""},getItemSummary:(e,t)=>e?.label||`Spec ${(t??0)+1}`,max:8},tag:q("Image tag")},defaultItemProps:{image:"",imageShape:"square",eyebrow:"",title:"",copy:"",specs:[],tag:""},getItemSummary:(e,t)=>e?.title||e?.eyebrow||`Row ${(t??0)+1}`},Sv),_dDesign:Y1("Design"),layout:v1("Row shape",yc(RI,{}),[{label:"Even columns",value:"even"},{label:"Narrow image",value:"narrow"}],"even"),startLeft:l1("First image on the left",!1,yc(Q61,{})),_dLayout:Y1("Layout"),...u3("DetailRows")},resolveFields:(e,t)=>{let{fields:a}=t,s=r=>{if(e.props.layout==="narrow")return r;let o=r,i=o.rows;if(!i?.arrayFields)return r;let{imageShape:n,...h}=i.arrayFields;return{...o,rows:{...i,arrayFields:h}}};if(!M2()){let r={...s(a)};return delete r._sDynamic,delete r.dynamic,delete r.rowsFrom,r}if(!e.props.dynamic){let{rowsFrom:r,...o}=s(a);return o}let c=new Set(Ao(t)?["_sRows","rows","rowsFrom"]:["_sRows","rows"]),l={};for(let[r,o]of Object.entries(a))c.has(r)||(l[r]=o);return l}};var ZI={fields:{_gHeader:x("Header"),num:T("Number",U0.num)}};import{SquareIcon as r71}from"efficient-easel/icons";import{useEffect as t71,useMemo as a71,useRef as s71}from"react";var Lv="/shop";function DI({shopperPicked:e,fullyPicked:t,editing:a,pathname:s}){return a||!e||!t?!1:!e71(s)}function e71(e){return(e.split("?")[0]??"").replace(/\/+$/,"")===Lv}function OI(e){let a=D5(new URLSearchParams,e).toString();return a?`${Lv}?${a}`:Lv}import{jsx as j5,jsxs as Av}from"react/jsx-runtime";function Hv({loading:e,error:t,data:a}){return e?j5("div",{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:"Loading stock fitment\u2026"}):t?Av("div",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em] text-fg-dim",children:["Couldn't load stock fitment \u2014 ",j5("span",{className:"text-accent",children:t})]}):a?Av("div",{className:"mt-9 grid grid-cols-6 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:[j5(qt,{label:"Bolt pattern",value:a.boltPattern??"\u2014"}),j5(qt,{label:"PCD",value:a.pcd??"\u2014"}),j5(qt,{label:"Hub bore",value:a.centreBore?`${a.centreBore} mm`:"\u2014"}),j5(qt,{label:"ET range",value:a.etRange&&a.etRange.length===2?`${a.etRange[0]} \u2013 ${a.etRange[1]}`:"\u2014"}),j5(qt,{label:"OEM front",value:a.frontWheels.length?a.frontWheels.join(" \xB7 "):"\u2014"}),j5(qt,{label:"OEM rear",value:a.rearWheels.length?a.rearWheels.join(" \xB7 "):"\u2014"})]}):null}function qt({label:e,value:t}){return Av("div",{className:"flex min-h-[96px] flex-col gap-1.5 bg-bg px-[18px] py-5",children:[j5("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.26em] text-fg-dim",children:e}),j5("span",{className:"mt-auto font-display text-[length:var(--size-body,17px)] font-medium tracking-[-0.01em] text-fg",children:t})]})}import{Fragment as GI,jsx as o5,jsxs as m9}from"react/jsx-runtime";function c71(e,t,a){if(!a)return e;let[s,c=""]=e.split("?"),r=D5(new URLSearchParams(c),t).toString();return r?`${s}?${r}`:s}function Fv({num:e,title:t,description:a,ctaText:s,ctaHref:c,layout:l="full",omitHead:r=!1,initialMakes:o=[],editing:i=!1,...n}){let{cascade:h}=I4({initialMakes:o,editing:i,autoApply:!0}),m=l==="bar",u=s71(!1),d=a71(()=>{if(!m)return h;let f=w=>(...z)=>{u.current=!0,w(...z)};return{...h,setMake:f(h.setMake),setModel:f(h.setModel),setYear:f(h.setYear),setModification:f(h.setModification)}},[m,h]);t71(()=>{m&&(typeof window>"u"||DI({shopperPicked:u.current,fullyPicked:h.fullyPicked,editing:i,pathname:window.location.pathname})&&window.location.assign(OI(h.vehicle)))},[m,h.fullyPicked,h.vehicle,i]);let v=!r&&!m&&!!(e||t||a),g=!m&&s&&c?{text:s,href:c}:null,b=g?c71(g.href,h.vehicle,h.fullyPicked):null;return m9("section",{className:[E0(n)?"px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",m?r?"pt-0 pb-[30px] max-[1100px]:pb-5":"py-[30px] max-[1100px]:py-5":r?"pt-0 pb-20 max-[1100px]:pb-[60px]":"py-20 max-[1100px]:py-[60px]"].join(" "),children:[v&&o5(s0,{num:e,title:t,description:a,accent:!0}),m?m9("div",{className:"flex flex-wrap items-center gap-[18px]",children:[!r&&t?.trim()&&o5("p",{className:"font-heading3 text-[length:var(--size-headingSmall,30px)] [font-weight:var(--sf-heading-weight-strong,600)] leading-none tracking-[-0.02em] whitespace-nowrap",children:e0(t)}),o5("div",{className:"min-w-[320px] flex-1 basis-0",children:o5(X3,{cascade:d,compact:!0,editing:i})})]}):o5(X3,{cascade:h,editing:i}),!m&&o5(Hv,{loading:h.loading.stock,error:h.cascadeError,data:h.fullyPicked?h.stock:null}),!m&&m9("div",{className:"mt-9 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-8",children:[o5("p",{className:"max-w-[680px] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:h.fullyPicked?m9(GI,{children:["Your car \xB7"," ",m9("strong",{className:"font-display [font-weight:var(--sf-heading-weight-strong,500)] not-italic text-fg",children:[h.vehicle.year," ",h.makeName," ",h.modelName," ",h.modName]}),h.stock&&o5("span",{className:"ml-3 not-italic text-accent",children:"OEM fitment loaded."})]}):m9(GI,{children:["Tell us four things \u2014 ",o5("em",{className:"not-italic text-accent",children:"make, model, year, trim"})," \u2014 and we'll show the OEM stock fitment for your car."]})}),g&&b&&m9(L1,{href:b,className:"group inline-flex items-center gap-3.5 border border-btn bg-btn px-[30px] py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:border-fg hover:bg-fg",children:[g.text,o5("span",{className:"transition-transform group-hover:translate-x-[4px]",children:"\u2192"})]})]}),i&&h.makeOptions.length===0&&!h.loading.models&&o5("p",{className:"mt-4 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim",children:p("Vehicle catalog unavailable in this preview \u2014 the picker fills from the live fitment API on the published site.")})]})}import{jsx as l71}from"react/jsx-runtime";var N6={num:A.sectionNumber,title:"Find your *match.*",description:"A few quick picks and we show the right option for you.",ctaText:"Browse all products"},qI={label:"Fitment Form",defaultProps:{num:"",title:"",description:"",ctaText:"",ctaHref:"",layout:"full"},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return l71(Fv,{num:a(y(e.num,N6.num,e.puck)),title:a(y(e.title,N6.title,e.puck)),description:a(y(e.description,N6.description,e.puck)),omitHead:t,ctaText:y(e.ctaText,N6.ctaText,e.puck),ctaHref:a1(e.ctaHref)||"#",layout:e.layout,editing:e.puck?.isEditing})}};import{jsx as o71}from"react/jsx-runtime";var WI={fields:{_gHeader:x("Header"),num:T("Number",N6.num),title:T("Heading",N6.title),description:O("Body",N6.description),_gCta:x("Call to action"),ctaText:T("Button",N6.ctaText),ctaHref:H1("Button link"),_gStyle:x("Style"),layout:v1("Section shape",o71(r71,{}),[{label:"Stacked",value:"full"},{label:"One row",value:"bar"}],"full")},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props??{},c={...t};return s.layout==="bar"&&(delete c._gCta,delete c.ctaText,delete c.ctaHref),c=G1(W1(c,a,U1),s.headPlacement,Z1.FitmentFinder.headRows),c}};var L=(e,t,a,s,c,l,r,o,i)=>({diameter:e,width:t,holes:a,pcd:s,et:c,cb:l,cap:r,boltPattern:o,loadRating:i}),j2="CP509PS73",K2="32x15x60\xB0",$2="880kg / 1,940 lbs",j7="CP506AL82",K7="34x16x60\xB0",$7="915kg / 2,000 lbs",J="CP506AL68",X="32x15x60\xB0",p1="690kg / 1,520 lbs",T0="880kg / 1,940 lbs",i71="34x15x60\xB0",n71="1,060kg / 2,335 lbs",Y7="CP507PS68",X7="825kg / 1,820 lbs",o1="CP595AL68",h1="32x15x60\xB0",m1="690kg / 1,520 lbs",Tv="34x15x60\xB0",Pv="1,060kg / 2,335 lbs",K5="CP506AL82",$5="34x16x60\xB0",Y5="880kg / 1,940 lbs",h71={rotor:[L(20,8.5,5,"112",35,73.1,j2,K2,$2),L(20,8.5,5,"114.3",35,73.1,j2,K2,$2),L(20,8.5,5,"120",35,72.6,j2,K2,$2),L(20,8.5,5,"127",20,71.5,j2,K2,$2),L(20,10,5,"112",40,73.1,j2,K2,$2),L(20,10,5,"114.3",40,73.1,j2,K2,$2),L(20,10,5,"120",40,72.6,j2,K2,$2),L(20,10,5,"127",20,71.5,j2,K2,$2),L(22,9,5,"112",35,73.1,j2,K2,$2),L(22,9,5,"114.3",35,73.1,j2,K2,$2),L(22,9,5,"115",15,71.5,j2,K2,$2),L(22,9,5,"120",35,72.6,j2,K2,$2),L(22,9,5,"127",20,71.5,j2,K2,$2),L(22,10.5,5,"112",40,73.1,j2,K2,$2),L(22,10.5,5,"114.3",40,73.1,j2,K2,$2),L(22,10.5,5,"115",20,71.5,j2,K2,$2),L(22,10.5,5,"120",40,72.6,j2,K2,$2),L(22,10.5,5,"127",20,71.5,j2,K2,$2)],"frixion-6":[L(20,9,6,"135",20,87.1,j7,K7,$7),L(20,9,6,"139.7",20,87.1,j7,K7,$7),L(22,9.5,6,"135",25,87.1,j7,K7,$7),L(22,9.5,6,"139.7",25,87.1,j7,K7,$7),L(22,9.5,6,"135",20,87.1,j7,K7,$7),L(22,9.5,6,"139.7",20,87.1,j7,K7,$7),L(24,10,6,"135",25,87.1,j7,K7,$7),L(24,10,6,"139.7",25,87.1,j7,K7,$7)],"frixion-5":[L(18,8,5,"108",42,73.1,J,X,p1),L(18,8,5,"112",42,73.1,J,X,p1),L(18,8,5,"114.3",42,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",42,73.1,J,X,p1),L(19,8.5,5,"114.3",42,73.1,J,X,p1),L(19,8.5,5,"112",35,73.1,J,X,p1),L(19,8.5,5,"114.3",35,73.1,J,X,p1),L(19,8.5,5,"120",35,73.1,J,X,p1),L(19,8.5,5,"120",35,72.6,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"112",40,73.1,J,X,p1),L(19,9.5,5,"114.3",40,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"120",42,72.6,J,X,p1),L(20,8.5,5,"120",35,72.6,J,X,p1),L(20,8.5,5,"120",33,72.6,J,X,p1),L(20,10,5,"112",40,73.1,J,X,p1),L(20,10,5,"114.3",40,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1)],"vector-ii":[L(19,8.5,5,"112",38,73.1,J,X,T0),L(19,8.5,5,"114.3",38,73.1,J,X,T0),L(19,8.5,5,"112",45,73.1,J,X,T0),L(19,8.5,5,"114.3",45,73.1,J,X,T0),L(19,8.5,5,"120",38,72.6,J,X,T0),L(19,9.5,5,"112",42,73.1,J,X,T0),L(19,9.5,5,"114.3",42,73.1,J,X,T0),L(19,9.5,5,"120",42,72.6,J,X,T0),L(20,8.5,5,"112",38,73.1,J,X,T0),L(20,8.5,5,"114.3",38,73.1,J,X,T0),L(20,8.5,5,"120",38,72.6,J,X,T0),L(20,10,5,"112",40,73.1,J,X,T0),L(20,10,5,"114.3",40,73.1,J,X,T0),L(20,10,5,"120",40,72.6,J,X,T0)],"turbine-ii":[L(20,8.5,5,"112",38,73.1,J,X,T0),L(20,8.5,5,"114.3",38,73.1,J,X,T0),L(20,8.5,5,"112",35,73.1,J,X,T0),L(20,8.5,5,"114.3",35,73.1,J,X,T0),L(20,8.5,5,"112",30,73.1,J,X,T0),L(20,8.5,5,"114.3",30,73.1,J,X,T0),L(20,8.5,5,"112",25,73.1,J,X,T0),L(20,8.5,5,"114.3",25,73.1,J,X,T0),L(20,8.5,5,"120",32,72.6,J,X,T0),L(20,8.5,5,"120",35,72.6,J,X,T0),L(20,10,5,"112",40,73.1,J,X,T0),L(20,10,5,"114.3",40,73.1,J,X,T0),L(20,10,5,"112",30,73.1,J,X,T0),L(20,10,5,"114.3",30,73.1,J,X,T0),L(20,10,5,"120",38,72.6,J,X,T0),L(20,10,5,"120",37,72.6,J,X,T0),L(22,10.5,5,"127",35,71.5,J,i71,n71)],torque:[L(18,8,5,"108",42,73.1,J,X,p1),L(18,8,5,"112",42,73.1,J,X,p1),L(18,8,5,"114.3",42,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",42,73.1,J,X,p1),L(19,8.5,5,"114.3",42,73.1,J,X,p1),L(19,8.5,5,"120",38,72.6,J,X,p1),L(19,9.5,5,"112",35,73.1,J,X,p1),L(19,9.5,5,"114.3",35,73.1,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"120",40,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"120",32,72.6,J,X,p1),L(20,8.5,5,"120",35,72.6,J,X,p1),L(20,10,5,"112",40,73.1,J,X,p1),L(20,10,5,"114.3",40,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1)],blitz:[L(18,8,5,"108",40,73.1,J,X,p1),L(18,8,5,"112-114.3",40,73.1,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(18,8,5,"120",38,72.6,J,X,p1),L(19,8.5,5,"112-114.3",32,73.1,J,X,p1),L(19,8.5,5,"112-114.3",40,73.1,J,X,p1),L(19,8.5,5,"112-114.3",38,73.1,J,X,p1),L(19,8.5,5,"114.3",35,73.1,J,X,p1),L(19,8.5,5,"120",33,72.6,J,X,p1),L(19,9.5,5,"112-114.3",38,73.1,J,X,p1),L(19,9.5,5,"114.3",40,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112-114.3",32,73.1,J,X,p1),L(20,8.5,5,"112-114.3",38,73.1,J,X,p1),L(20,8.5,5,"120",32,72.6,J,X,p1),L(20,10,5,"112-114.3",40,73.1,J,X,p1),L(20,10,5,"112-114.3",38,73.1,J,X,p1),L(20,10,5,"120",40,72.6,J,X,p1),L(20,10,5,"120",38,72.6,J,X,p1)],"speed-ii":[L(18,8,5,"108",40,73.1,J,X,p1),L(18,8,5,"112",40,73.1,J,X,p1),L(18,8,5,"114.3",40,73.1,J,X,p1),L(18,8,5,"120",38,72.6,J,X,p1),L(18,8,5,"120",35,72.6,J,X,p1),L(19,8.5,5,"112",40,73.1,J,X,p1),L(19,8.5,5,"114.3",40,73.1,J,X,p1),L(19,8.5,5,"112",32,73.1,J,X,p1),L(19,8.5,5,"114.3",32,73.1,J,X,p1),L(19,8.5,5,"120",33,72.6,J,X,p1),L(19,9.5,5,"112",38,73.1,J,X,p1),L(19,9.5,5,"114.3",38,73.1,J,X,p1),L(19,9.5,5,"120",38,72.6,J,X,p1),L(20,8.5,5,"112",35,73.1,J,X,p1),L(20,8.5,5,"114.3",35,73.1,J,X,p1),L(20,8.5,5,"112",32,73.1,J,X,p1),L(20,8.5,5,"114.3",32,73.1,J,X,p1),L(20,8.5,5,"120",33,72.6,J,X,p1),L(20,10,5,"112",38,73.1,J,X,p1),L(20,10,5,"114.3",38,73.1,J,X,p1),L(20,10,5,"120",38,72.6,J,X,p1)],"force-6":[L(20,9,6,"135",20,87.1,K5,$5,Y5),L(20,9,6,"135",25,87.1,K5,$5,Y5),L(20,9,6,"135",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",20,87.1,K5,$5,Y5),L(20,9,6,"139.7",25,87.1,K5,$5,Y5),L(22,9.5,6,"135",20,87.1,K5,$5,Y5),L(22,9.5,6,"139.7",20,87.1,K5,$5,Y5),L(24,10,6,"135",25,87.1,K5,$5,Y5),L(24,10,6,"139.7",25,87.1,K5,$5,Y5)],"haste-ii":[L(20,8.5,5,"112",27,73.1,Y7,X,X7),L(20,8.5,5,"114.3",27,73.1,Y7,X,X7),L(20,8.5,5,"112",34,73.1,Y7,X,X7),L(20,8.5,5,"114.3",34,73.1,Y7,X,X7),L(20,8.5,5,"120",32,72.6,Y7,X,X7),L(20,10,5,"112",38,73.1,Y7,X,X7),L(20,10,5,"114.3",38,73.1,Y7,X,X7),L(20,10,5,"120",37,72.6,Y7,X,X7)],"thrust-ii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)],"vector-iii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)],"blitz-ii":[L(18,8,5,"108",40,73.1,o1,h1,m1),L(18,8,5,"112",40,73.1,o1,h1,m1),L(18,8,5,"114.3",40,73.1,o1,h1,m1),L(18,8,5,"120",38,72.6,o1,h1,m1),L(18,8,5,"120",35,72.6,o1,h1,m1),L(19,8.5,5,"112",32,73.1,o1,h1,m1),L(19,8.5,5,"114.3",32,73.1,o1,h1,m1),L(19,8.5,5,"112",40,73.1,o1,h1,m1),L(19,8.5,5,"114.3",40,73.1,o1,h1,m1),L(19,8.5,5,"112",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",38,73.1,o1,h1,m1),L(19,8.5,5,"114.3",35,73.1,o1,h1,m1),L(19,8.5,5,"120",33,72.6,o1,h1,m1),L(19,9.5,5,"112",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",38,73.1,o1,h1,m1),L(19,9.5,5,"114.3",40,73.1,o1,h1,m1),L(19,9.5,5,"120",38,72.6,o1,h1,m1),L(20,8.5,5,"112",32,73.1,o1,h1,m1),L(20,8.5,5,"114.3",32,73.1,o1,h1,m1),L(20,8.5,5,"112",38,73.1,o1,h1,m1),L(20,8.5,5,"114.3",38,73.1,o1,h1,m1),L(20,8.5,5,"120",32,72.6,o1,h1,m1),L(20,10,5,"112",40,73.1,o1,h1,m1),L(20,10,5,"114.3",40,73.1,o1,h1,m1),L(20,10,5,"112",38,73.1,o1,h1,m1),L(20,10,5,"114.3",38,73.1,o1,h1,m1),L(20,10,5,"120",38,72.6,o1,h1,m1),L(20,10,5,"120",40,72.6,o1,h1,m1),L(22,10.5,5,"127",35,71.5,o1,Tv,Pv)]};function Wt(e){return h71[e]??[]}var _1={hyperBlack:"#1a1a1c",blackSatin:"#0d0d0d",blackMachined:"#2a2a2a",silverSatin:"#a8a8a8",silverMachined:"#b5b5b5",bronze:"#7a5a3a",anthracite:"#3a3a3a",candyRed:"#9a1f1f",gunmetal:"#4a4d52"},B="/media/images/products",Ev="/media/videos/products",UI=["0","20-20","25","35"],jI=["Detail 1","Detail 2","Detail 3"];function Z0(e,t,a,s=!0){let c=`${B}/${e}/${a}${t}`,l=UI.map(r=>`${c}${r}.png`);return{src:l[0],angles:l,...s?{details:jI.map(r=>`${c}${r}.png`)}:{}}}function X5(e,t,a,s){let c=UI.map((r,o)=>`${B}/${e}/${t}.${r}.${a[o]}.png`),l={src:c[0],angles:c};return s&&(l.details=jI.map((r,o)=>`${B}/${e}/${t}.${r}.${s[o]}.png`)),l}var m71=[{name:"HASTE II",slug:"haste-ii",process:"FusionForge\xAE",sizes:[18,19,20],price:1450,spokes:5,mesh:!1,badge:"bestseller",finishes:[{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...Z0("Haste II",".","Haste II.Ssl"),wheelPhotos:Array.from({length:9},(e,t)=>`${B}/Haste II/haste II Ssl wheel (${t+1}).jpg`)},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("Haste II",".","Haste II.Ksl"),carPhotos:[...[5,6,7,8,9].map(e=>`${B}/Haste II/HasteII ksl 2024 BMW(G83)M4 Competition Convertible (${e}).jpg`),...[1,2,5,6,9].map(e=>`${B}/Haste II/HasteII ksl car 2020 Chevrolet Camaro ZL1 (${e}).jpg`)]}]},{name:"FORCE 6",slug:"force-6",process:"FusionForge\xAE",sizes:[19,20,21],price:2950,spokes:6,mesh:!1,badge:null,finishes:[{name:"Silver Machined Carbon Satin Lacquer",color:_1.silverMachined,family:"silver",...Z0("force 6",".","Froce6.Smfcbtm")},{name:"Black Machined Carbon Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("force 6",".","Froce6.Kmfcbtdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("force 6",".","Froce6.Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("force 6",".","Froce6.R")}]},{name:"SPEED II",slug:"speed-ii",process:"FusionForge\xAE",sizes:[18,19,20],price:3400,spokes:5,mesh:!1,badge:"new",finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("speed_II",".","Speed II.Smftm")},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("speed_II",".","Speed II.Kmftdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("speed_II",".","Speed II.Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("speed_II",".","Speed II.R")}]},{name:"VORTEX II",slug:"vortex-ii",process:"FusionForge\xAE",sizes:[19,20],price:3200,spokes:5,mesh:!0,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("Vortex II","-","Vortex II-SMFTM")},{name:"Black Machined Face Satin Lacquer Dark Tint",color:_1.blackMachined,family:"black",...Z0("Vortex II","-","Vortex II-KMFTMTD")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("Vortex II","-","Vortex II-KTM")}]},{name:"VECTOR III",slug:"vector-iii",process:"Precision Forged",sizes:[18,19,20,21],price:4200,spokes:7,mesh:!1,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",...Z0("vector_III","-","Vector III-H")},{name:"Anthracite",color:_1.anthracite,family:"graphite",...Z0("vector_III","-","Vector III-ATM")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("vector_III","-","Vector III-KTM")},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...Z0("vector_III","-","Vector III-STM")},{name:"Bronze",color:_1.bronze,family:"bronze",...Z0("vector_III","-","Vector III- N")}]},{name:"BLITZ II",slug:"blitz-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4400,spokes:8,mesh:!0,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/blitz_II/Blitz II.H.0.752 (3).png`,angles:[`${B}/blitz_II/Blitz II.H.0.752 (3).png`,`${B}/blitz_II/Blitz II.H.20-20752 (4).png`,`${B}/blitz_II/Blitz II.H.25.752 (2).png`,`${B}/blitz_II/Blitz II.H.35.752 (1).png`],details:[`${B}/blitz_II/Blitz II.H.Detail 1.1923.png`,`${B}/blitz_II/Blitz II.H.Detail 2.1916.png`,`${B}/blitz_II/Blitz II.H.Detail FusionForge.1930.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/blitz_II/Blitz II.A.0.756 (3).png`,angles:[`${B}/blitz_II/Blitz II.A.0.756 (3).png`,`${B}/blitz_II/Blitz II.A.20-20.756 (4).png`,`${B}/blitz_II/Blitz II.A.25.756 (2).png`,`${B}/blitz_II/Blitz II.A.35.756 (1).png`],details:[`${B}/blitz_II/Blitz II.A.Detail 1.1924.png`,`${B}/blitz_II/Blitz II.A.Detail 2.1917.png`,`${B}/blitz_II/Blitz II.A.Detail FusionForge.1931.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/blitz_II/Blitz II.Ktm.0.760 (3).png`,angles:[`${B}/blitz_II/Blitz II.Ktm.0.760 (3).png`,`${B}/blitz_II/Blitz II.Ktm.20-20760 (4).png`,`${B}/blitz_II/Blitz II.Ktm.25.760 (2).png`,`${B}/blitz_II/Blitz II.Ktm.35.760 (1).png`],details:[`${B}/blitz_II/Blitz II.K TM.Detail 1.1925.png`,`${B}/blitz_II/Blitz II.K TM.Detail 2.1918.png`,`${B}/blitz_II/Blitz II.K TM.Detail FusionForge.1932.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/blitz_II/Blitz II.Stm.0.748 (3).png`,angles:[`${B}/blitz_II/Blitz II.Stm.0.748 (3).png`,`${B}/blitz_II/Blitz II.Stm 20-20.748 (4).png`,`${B}/blitz_II/Blitz II.Stm.25.748 (2).png`,`${B}/blitz_II/Blitz II.Stm.35.748 (1).png`],details:[`${B}/blitz_II/Blitz II.S TM.Detail 1.1922.png`,`${B}/blitz_II/Blitz II.S TM.Detail 2.1915.png`,`${B}/blitz_II/Blitz II.S TM.Detail FusionForge.1929.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/blitz_II/Blitz II.n.0.764 (3).png`,angles:[`${B}/blitz_II/Blitz II.n.0.764 (3).png`,`${B}/blitz_II/Blitz II.n.20-20.764 (4).png`,`${B}/blitz_II/Blitz II.n.25.764 (2).png`,`${B}/blitz_II/Blitz II.n.35.764 (1).png`],details:[`${B}/blitz_II/Blitz II.N.Detail 1.1926.png`,`${B}/blitz_II/Blitz II.N.Detail 2.1919.png`,`${B}/blitz_II/Blitz II.N.Detail FusionForge.1933.png`]}]},{name:"THRUST II",slug:"thrust-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4500,spokes:7,mesh:!1,badge:"bestseller",finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/thrust_II/Thrust II v2 2010 H.0.719.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 H.0.719.png`,`${B}/thrust_II/Thrust II v2 2010 H.30.720.png`,`${B}/thrust_II/Thrust II v2 2010 H.30-30.722.png`,`${B}/thrust_II/Thrust II v2 2010 H.45.721.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 H-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 H-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 H.30-30.722.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/thrust_II/Thrust II v2 2010 A.0.735.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 A.0.735.png`,`${B}/thrust_II/Thrust II v2 2010 A.30.736.png`,`${B}/thrust_II/Thrust II v2 2010 A.30-30.738.png`,`${B}/thrust_II/Thrust II v2 2010 A.45.737.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 A-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 A-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 A.30-30.738.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/thrust_II/Thrust II v2 2010 K.0.730.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 K.0.730.png`,`${B}/thrust_II/Thrust II v2 2010 K.30.731.png`,`${B}/thrust_II/Thrust II v2 2010 K.30-30.733.png`,`${B}/thrust_II/Thrust II v2 2010 K.45.732.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 K-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 K-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 K.30-30.733.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/thrust_II/Thrust II v2 2010 S.0.725.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 S.0.725.png`,`${B}/thrust_II/Thrust II v2 2010 S.30.726.png`,`${B}/thrust_II/Thrust II v2 2010 S.30-30.728.png`,`${B}/thrust_II/Thrust II v2 2010 S.45.727.png`],details:[`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 S-Detail 1.png`,`${B}/thrust_II/Thrust II.bip-Thrust II v2 2010 S-Detail 2.png`,`${B}/thrust_II/Thrust II v2 2010 S.30-30.728.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/thrust_II/Thrust II v2 2010 N.0.740.png`,angles:[`${B}/thrust_II/Thrust II v2 2010 N.0.740.png`,`${B}/thrust_II/Thrust II v2 2010 N.30.741.png`,`${B}/thrust_II/Thrust II v2 2010 N.30-30.743.png`,`${B}/thrust_II/Thrust II v2 2010 N.45.742.png`]}]},{name:"TORQUE II",slug:"torque-ii",process:"Precision Forged",sizes:[18,19,20,22],price:4300,spokes:7,mesh:!1,badge:null,finishes:[{name:"Hyper Black",color:_1.hyperBlack,family:"black",src:`${B}/torque_II/Torque II-H-0-2195.png`,angles:[`${B}/torque_II/Torque II-H-0-2195.png`,`${B}/torque_II/Torque II-H-20-20-2198.png`,`${B}/torque_II/Torque II-H-25-2196.png`,`${B}/torque_II/Torque II-H-35-2197.png`],details:[`${B}/torque_II/Torque II-H-Detail 1-2199.png`,`${B}/torque_II/Torque II-H-Detail 2-2200.png`,`${B}/torque_II/Torque II-H-Detail 3-2201.png`]},{name:"Anthracite",color:_1.anthracite,family:"graphite",src:`${B}/torque_II/Torque II-A-0-2174.png`,angles:[`${B}/torque_II/Torque II-A-0-2174.png`,`${B}/torque_II/Torque II-A-20-20-2177.png`,`${B}/torque_II/Torque II-A-25-2175.png`,`${B}/torque_II/Torque II-A-35-2176.png`],details:[`${B}/torque_II/Torque II-A-Detail 1-2178.png`,`${B}/torque_II/Torque II-A-Detail 2-2179.png`,`${B}/torque_II/Torque II-A-Detail 3-2180.png`]},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",src:`${B}/torque_II/Torque II-Ktm-0-2202.png`,angles:[`${B}/torque_II/Torque II-Ktm-0-2202.png`,`${B}/torque_II/Torque II-Ktm-20-20-2205.png`,`${B}/torque_II/Torque II-Ktm-25-2203.png`,`${B}/torque_II/Torque II-Ktm-35-2204.png`],details:[`${B}/torque_II/Torque II-Ktm-Detail 1-2206.png`,`${B}/torque_II/Torque II-Ktm-Detail 2-2207.png`,`${B}/torque_II/Torque II-Ktm-Detail 3-2208.png`]},{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",src:`${B}/torque_II/Torque II-S-0-2181.png`,angles:[`${B}/torque_II/Torque II-S-0-2181.png`,`${B}/torque_II/Torque II-S-20-20-2184.png`,`${B}/torque_II/Torque II-S-25-2182.png`,`${B}/torque_II/Torque II-S-35-2183.png`],details:[`${B}/torque_II/Torque II-S-Detail 1-2185.png`,`${B}/torque_II/Torque II-S-Detail 2-2186.png`,`${B}/torque_II/Torque II-S-Detail 3-2187.png`]},{name:"Bronze",color:_1.bronze,family:"bronze",src:`${B}/torque_II/Torque II-N-0-2188.png`,angles:[`${B}/torque_II/Torque II-N-0-2188.png`,`${B}/torque_II/Torque II-N-20-20-2191.png`,`${B}/torque_II/Torque II-N-25-2189.png`,`${B}/torque_II/Torque II-N-35-2190.png`],details:[`${B}/torque_II/Torque II-N-Detail 1-2192.png`,`${B}/torque_II/Torque II-N-Detail 2-2193.png`,`${B}/torque_II/Torque II-N-Detail 3-2194.png`]}]},{name:"TURBINE II",slug:"turbine-ii",process:"Monoblock Cast",sizes:[19,20,21],price:1650,spokes:9,mesh:!0,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",src:`${B}/turbine II/Turbine II L S MF TM.0.png`,angles:[`${B}/turbine II/Turbine II L S MF TM.0.png`,`${B}/turbine II/Turbine II L S MF TM.25.png`,`${B}/turbine II/Turbine II L S MF TM.35.png`,`${B}/turbine II/Turbine II L S MF TM.45.png`],details:[`${B}/turbine II/Turbine II L S MF TM.Detail 1.png`,`${B}/turbine II/Turbine II.L S MF TM.Detail 2.2239.png`,`${B}/turbine II/Turbine II L S MF TM.Detail 3.png`]},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",src:`${B}/turbine II/Turbine II L K MF TD TM.0.png`,angles:[`${B}/turbine II/Turbine II L K MF TD TM.0.png`,`${B}/turbine II/Turbine II L K MF TD TM.25.png`,`${B}/turbine II/Turbine II L K MF TD TM.35.png`,`${B}/turbine II/Turbine II L K MF TD TM.45.png`],details:[`${B}/turbine II/Turbine II L K MF TD TM.Detail 1.png`,`${B}/turbine II/Turbine II L K MF TD TM.LR Detail 2.png`,`${B}/turbine II/Turbine II L K MF TD TM.Detail 3.png`]}]},{name:"BLITZ",slug:"blitz",process:"Monoblock Cast",sizes:[18,19,20],price:1380,spokes:8,mesh:!0,badge:null,finishes:[{name:"Silver Satin Lacquer",color:_1.silverSatin,family:"silver",...X5("blitz","Blitz.Stm",["2167","2170","2168","2169"],["2171","2172","2173"]),wheelPhotos:Array.from({length:8},(e,t)=>`${B}/blitz/Blitz stm wheel(${t+19}).jpg`),video:`${Ev}/blitz/Blitz stm wheel.mp4`},{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("blitz","Blitz.Smftm",["2160","2163","2161","2162"],["2164","2165","2166"])},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...X5("blitz","Blitz.Ktm",["2146","2149","2147","2148"],["2150","2151","2152"]),wheelPhotos:Array.from({length:8},(e,t)=>`${B}/blitz/Blitz ktm wheel (${t+1}).jpg`),carPhotos:Array.from({length:6},(e,t)=>`${B}/blitz/Blitz ktm Car AUDI 03-03 (${t+1}).png`),video:`${Ev}/blitz/Blitz ktm wheel.mp4`},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...X5("blitz","Blitz.Kmftdtm",["2139","2142","2140","2141"],["2143","2144","2145"]),carPhotos:[5,7,8,9,10].map(e=>`${B}/blitz/Blitz kmftdtm Car 2018 Mercedes-AMG GT R (${e}).jpg`)},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("blitz","Blitz.Rmftr",["2153","2156","2154","2155"],["2157","2158","2159"])}]},{name:"FRIXION 5",slug:"frixion-5",process:"Monoblock Cast",sizes:[18,19,20],price:1320,spokes:5,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("frixion 5","Frixion5 S MF",["1969","1972","1970","1971"]),details:[`${B}/frixion 5/Frixion5.Smf.Detail 1.2108.png`,`${B}/frixion 5/Frixion5.Smf.Detail 2.2109.png`,`${B}/frixion 5/Frixion5.Smf.Detail 3.2110.png`],wheelPhotos:Array.from({length:11},(e,t)=>`${B}/frixion 5/Frixion 5 Smf wheel (${t+1}).jpg`),carPhotos:[4,5,6,7].map(e=>`${B}/frixion 5/Frixion5 smftm car 2019 Jaguar XE SV Project 8 (${e}).jpg`),video:`${Ev}/frixion 5/frixion 5 kmftdtm smftm .mp4`},{name:"Black Machined Face",color:_1.blackMachined,family:"black",...X5("frixion 5","Frixion5 K TM",["1995","1998","1996","1997"]),details:[`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 1.1999.png`,`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 2.2000.png`,`${B}/frixion 5/Frixion 5.bip.Frixion5 K TM.Detail 3.2001.png`],wheelPhotos:[`${B}/frixion 5/Frixion 5 kmftdtm wheel (2).jpg`,`${B}/frixion 5/Frixion 5 kmftdtm wheel (3).jpg`]},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("frixion 5","Frixion5 R ",["1973","1976","1974","1975"]),details:[`${B}/frixion 5/Frixion5 R .Detail 1.1960.png`,`${B}/frixion 5/Frixion5 R .Detail 2.1961.png`,`${B}/frixion 5/Frixion5 R .Detail 3.1962.png`],carPhotos:[5,6,7,8,9].map(e=>`${B}/frixion 5/Frixion5 R car 2021 Ferrari Roma (${e}).jpg`)}]},{name:"FRIXION 6",slug:"frixion-6",process:"Monoblock Cast",sizes:[18,19,20,22],price:1380,spokes:6,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...X5("frixion 6","Frixion6 S MF TM",["2044","2047","2045","2046"]),details:[`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 1.2048.png`,`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 2.2049.png`,`${B}/frixion 6/Frixion6 S MF TM-ALUGS.Detail 3.2050.png`]},{name:"Black Machined Face Dark Tint",color:_1.blackMachined,family:"black",src:`${B}/frixion 6/Frixion6 K MF TD.0.2030.png`,angles:[`${B}/frixion 6/Frixion6 K MF TD.0.2030.png`,`${B}/frixion 6/Frixion6 K MF TD.20-20.2033.png`,`${B}/frixion 6/Frixion6 K MF TD.25.png`,`${B}/frixion 6/Frixion6 K MF TD.35.2032.png`],details:[`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 1.2034.png`,`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 2.2035.png`,`${B}/frixion 6/Frixion6 K MF TD-ALUGS.Detail 3.2036.png`]},{name:"Candy Red",color:_1.candyRed,family:"red",...X5("frixion 6","Frixion6 R MF TR",["2037","2040","2038","2039"]),details:[`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 1.2041.png`,`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 2.2042.png`,`${B}/frixion 6/Frixion6 R MF TR-ALUGS.Detail 3.2043.png`]}]},{name:"ROTOR",slug:"rotor",process:"Monoblock Cast",sizes:[18,19,20,22],price:1450,spokes:5,mesh:!1,badge:"bestseller",finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("rotor",".","Rotor.Smftm")},{name:"Black Machined Face Dark Tint",color:_1.blackMachined,family:"black",...Z0("rotor",".","Rotor.Kmftdtm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("rotor",".","Rotor.Rmftr")}]},{name:"VECTOR II",slug:"vector-ii",process:"Monoblock Cast",sizes:[18,19,20],price:1420,spokes:7,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("vector II","-","Vector II-Smftm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("vector II","-","Vector II-Ktm")},{name:"Candy Red",color:_1.candyRed,family:"red",...Z0("vector II","-","Vector II-Rmftr")}]},{name:"TORQUE",slug:"torque",process:"Monoblock Cast",sizes:[18,19,20],price:1390,spokes:7,mesh:!1,badge:null,finishes:[{name:"Silver Machined Face",color:_1.silverMachined,family:"silver",...Z0("torque","-","Torque-Smftm")},{name:"Black Machined Face Dark Tint Satin Lacquer",color:_1.blackMachined,family:"black",...Z0("torque","-","Torque-Kmftdtm")},{name:"Black Satin Lacquer",color:_1.blackSatin,family:"black",...Z0("torque","-","Torque-Ktm")},{name:"Anthracite",color:_1.anthracite,family:"graphite",...Z0("torque","-","Torque-A")}]}];function p71(e){return{GBP:e,USD:Math.round(e*1.28/10)*10,AUD:Math.round(e*1.92/10)*10}}var u71={"haste-ii":"A featherweight FusionForge\xAE 5-spoke built for the road \u2014 the HASTE II is our bestselling all-rounder, precise under load and unmistakable at the kerb.","force-6":"Six clean FusionForge\xAE spokes carry the FORCE 6: a wide, planted stance engineered for big-brake clearance and effortless high-speed composure.","speed-ii":"New for the season, the SPEED II sharpens the FusionForge\xAE silhouette into a taut, motorsport-inspired 5-spoke tuned for lightness and response.","vortex-ii":"The VORTEX II wraps a FusionForge\xAE core in a split-mesh face \u2014 aggressive brake cooling and a deep, dimensional look that shifts with the light.","vector-iii":"Elevate your drive with the VECTOR III: a fully forged, race-inspired open 7-spoke that aids brake cooling and cuts unsprung mass \u2014 a commitment to performance and handling.","blitz-ii":"The BLITZ II fans eight Precision Forged spokes into a fine mesh \u2014 track-bred cooling and a technical face that reads fast even at a standstill.","thrust-ii":"Our Precision Forged bestseller, the THRUST II balances a rigid 7-spoke structure with real weight savings for confident turn-in and long-haul comfort.","torque-ii":"The TORQUE II is Precision Forged for strength where it counts \u2014 a muscular 7-spoke that stays composed under power without the weight penalty.","turbine-ii":"Nine turbine-like spokes give the Monoblock Cast TURBINE II its motion \u2014 an accessible, durable wheel with a mesh face that never sits still.",blitz:"The original BLITZ: a Monoblock Cast 8-spoke mesh that brings a technical, layered look to everyday miles at a keen price.","frixion-5":"Clean, honest and Monoblock Cast \u2014 the FRIXION 5's simple 5-spoke face suits daily driving and takes finishes beautifully.","frixion-6":"The FRIXION 6 adds a spoke and a wider fitment range to the Frixion line \u2014 a versatile Monoblock Cast wheel for road and light track use.",rotor:"Our Monoblock Cast bestseller, the ROTOR pairs a bold 5-spoke face with a broad fitment range \u2014 the easy, everyday upgrade.","vector-ii":"The VECTOR II brings the Vector line's open 7-spoke geometry to a Monoblock Cast build \u2014 a lighter look and a friendlier price.",torque:"The TORQUE keeps things purposeful: a sturdy Monoblock Cast 7-spoke tuned for a planted stance and dependable street manners."},Vv=m71.map(({price:e,...t})=>({...t,prices:p71(e),description:u71[t.slug]??"",compatibleTyres:[],finishes:t.finishes.map(a=>({...a,src:a.src?H2(a.src):a.src,angles:a.angles?.map(H2),details:a.details?.map(H2),wheelPhotos:a.wheelPhotos?.map(H2),carPhotos:a.carPhotos?.map(H2),video:a.video?H2(a.video):a.video}))})),d71=new Map(Vv.map(e=>[e.slug,e]));function _n(e){return d71.get(e)}import{ProductFieldIcon as S71,BlockProductIcon as L71,ProductSizeIcon as A71,NoteIcon as H71}from"efficient-easel/icons";import{useEffect as x71,useState as aR}from"react";import{Fragment as KI,jsx as g71,jsxs as $I}from"react/jsx-runtime";function Nv({answer:e}){let t=e.tone==="no-fit"?"text-[color:var(--alert)]":e.tone==="ask"||e.tone==="checking"||e.tone==="unknown"?"text-fg":"text-accent";return $I(KI,{children:[g71("span",{className:`uppercase tracking-[0.18em] ${t}`,children:e.lead}),e.detail?$I(KI,{children:[" ",e.detail]}):null]})}function XI({wheel:e,applied:t,fit:a,resolving:s}){if(!t)return{state:"unasked"};if(s)return{state:"checking"};if(!a)return{state:"unknown",missing:"vehicle"};if(!e)return{state:"unknown",missing:"wheel"};let c=e.variants??[],l=c.length===0?Ep(e,a):v71(c,a);if(l===null)return{state:"fits",checks:Ie(a)};let r=c.length===0?null:Ep(e,a),o=r!==null&&r.key===l.key?r:l;return o.key==="unverifiable"?{state:"unknown",missing:"wheel"}:o.key==="et"?{state:"fits-with-warning",checks:Ie(a),warning:o}:{state:"no-fit",failure:o}}var YI=["unverifiable","pcd","bore","et"];function v71(e,t){let a=null,s=null,c=!1;for(let l of e){let r=Jr(Xr(l),t);if(r===null){let o=BM(l,t);if(o===null)return null;c=!0,s=s??o;continue}(a===null||YI.indexOf(r.key)>YI.indexOf(a.key))&&(a=r)}return c?s:a}function p9(e){switch(e.key){case"pcd":return`This car is ${e.vehicle} and this wheel is drilled ${e.wheel}. A different bolt pattern cannot be made to fit.`;case"et":return`This wheel is made in ${e.wheel} and this car takes ${e.vehicle}.`;case"bore":return`This wheel is bored ${e.wheel} and this car needs at least ${e.vehicle} to seat on its hub.`;default:return""}}var f71="Pick your car",b71="and we will check this size against it.";function JI(e){let t=(e.pcd??"").trim();return{pcds:t?[e.holes>0?`${e.holes}\xD7${t}`:t]:[],lugs:e.holes>0?e.holes:null,etRange:Number.isFinite(e.et)?[e.et,e.et]:null,centreBores:Number.isFinite(e.cb)&&e.cb>0?[e.cb]:[]}}function QI(e,t){let a=t.appliedName;if(a==="")return{tone:"ask",lead:f71,detail:b71};if(t.resolving)return{tone:"checking",lead:"Checking",detail:`your ${a}\u2026`};if(!t.fit)return{tone:"unknown",lead:"Cannot check",detail:`We have no factory wheel data for the ${a}, and we will not guess at a fit.`};let s=L8(JI(e),t.fit);if(s===null)return{tone:"fits",lead:`Fits your ${a}`,detail:""};if(s.key==="unverifiable")return{tone:"unknown",lead:"Cannot check",detail:"We do not hold a bolt pattern for this size, and we will not guess at a fit."};if(s.key==="et"){let c=L8(JI(e),{...t.fit,etRange:null});return c===null?{tone:"warn",lead:`Fits your ${a}`,detail:`Check the offset. ${p9(s)}`}:{tone:"no-fit",lead:`Does not fit your ${a}`,detail:p9(c)}}return{tone:"no-fit",lead:`Does not fit your ${a}`,detail:p9(s)}}var eR=[{fieldKey:"diameter",header:"Diameter",cell:e=>e.diameter},{fieldKey:"width",header:"Width",cell:e=>e.width},{fieldKey:"holes",header:"Holes",cell:e=>e.holes},{fieldKey:"pcd",header:"PCD",cell:e=>e.pcd},{fieldKey:"et",header:"ET",cell:e=>e.et},{fieldKey:"center_bore",header:"C/B",cell:e=>e.cb},{fieldKey:"cap_code",header:"Cap",cell:e=>e.cap},{fieldKey:"bolt_pattern",header:"Bolt Pattern",cell:e=>e.boltPattern},{fieldKey:"load_rating",header:"Load Rating",cell:e=>e.loadRating}];function tR(e){if(e.length===0)return eR;let t=hk(e),a=eR.filter(s=>t(s.fieldKey));return u7(a,s=>s.fieldKey,e,"fitmentOrder")}import{Fragment as w71,jsx as _2,jsxs as _6}from"react/jsx-runtime";var z71=[],y71="whitespace-nowrap border-b border-line px-4 py-3.5",sR="relative cursor-pointer border-2 px-3.5 py-2 font-mono text-[length:var(--size-label,12px)] font-semibold uppercase tracking-[0.18em] text-fg transition-colors",cR="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",lR="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",rR={background:"color-mix(in oklab, var(--accent) 14%, transparent)"},oR=(e,t)=>t.map(a=>a.cell(e)).join("|");function wc({num:e,title:t,description:a,rows:s,showFilter:c=!0,tooltipDefaultOn:l=!0,footnote:r,footnoteLinkText:o,footnoteLinkHref:i,editing:n=!1,omitHead:h=!1,fieldUsage:m=z71}){let u=s??[],d=tR(m),[v,g]=aR(null),[b,f]=aR(l);x71(()=>f(l),[l]);let w=I4({editing:n}),z=d.length===0;if(u.length===0||z)return n?_6("section",{className:h?lR:cR,children:[h?null:_2(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0}),_2("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:z?p("Every fitment column is hidden in Product Types \u2014 show one to draw this table."):p("No fitment data for this wheel \u2014 pick a wheel with fitment specs.")})]}):null;let k=new Set,S=u.filter(F=>{let _=oR(F,d);return k.has(_)?!1:(k.add(_),!0)}),H=Array.from(new Set(S.map(F=>F.diameter))).sort((F,_)=>F-_),I=v!==null&&H.includes(v)?v:null,P=I===null?S:S.filter(F=>F.diameter===I),D=c&&H.length>1,E=F=>{if(F===0)return!1;let _=P[F-1],Z=P[F];return _.diameter!==Z.diameter||_.width!==Z.width};return _6("section",{className:h?lR:cR,children:[h?null:_2(s0,{num:e!=null?M(e):void 0,title:t!=null?Y(t,!1):void 0,description:a!=null?M(a):void 0,accent:!0}),_6("div",{className:"mb-6 flex flex-wrap items-center gap-x-2 gap-y-3",children:[D&&_6(w71,{children:[_2("span",{className:"mr-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim max-[720px]:mr-0 max-[720px]:mb-1 max-[720px]:w-full",children:"Filter by size:"}),_6("button",{type:"button",onClick:()=>g(null),className:`${sR} ${I===null?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"}`,style:I===null?rR:void 0,children:[I===null&&_2("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),"All"]}),H.map(F=>{let _=F===I;return _6("button",{type:"button",onClick:()=>g(_?null:F),className:`${sR} ${_?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"}`,style:_?rR:void 0,children:[_&&_2("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),F,'"']},F)})]}),_6("button",{type:"button",onClick:()=>f(F=>!F),"aria-pressed":b,"aria-label":b?"Hide vehicle tooltip":"Show vehicle tooltip",className:"ml-auto inline-flex items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-fg-dim transition-colors hover:text-fg max-[720px]:hidden",children:[_2("span",{children:"Vehicle tooltip"}),_2("span",{className:`relative inline-flex h-5 w-9 shrink-0 items-center rounded-full border-2 transition-colors ${b?"border-accent":"border-fg-dim/50"}`,style:b?{background:"color-mix(in oklab, var(--accent) 30%, transparent)"}:void 0,"aria-hidden":!0,children:_2("span",{className:`block h-3 w-3 rounded-full transition-transform ${b?"translate-x-[18px] bg-accent":"translate-x-[2px] bg-fg-dim"}`})}),_2("span",{className:b?"text-accent":"text-fg-dim",children:b?"On":"Off"})]})]}),_2("div",{className:"-mx-1 overflow-x-auto",children:_6("table",{className:"w-full border-collapse font-mono text-[length:var(--size-label,14px)] tracking-[0.06em] text-fg",children:[_2("thead",{children:_2("tr",{children:d.map(({header:F},_)=>_2("th",{className:"whitespace-nowrap border-b border-line bg-surface px-4 py-3.5 text-left text-[length:var(--size-body,12px)] font-normal uppercase tracking-[0.22em] text-fg-dim",children:F},_))})}),_2("tbody",{children:P.map((F,_)=>_2("tr",{className:`group transition-colors hover:[&>td]:bg-surface ${E(_)?"[&>td]:border-t [&>td]:border-line":""}`,children:d.map((Z,G)=>{let V=G===d.length-1,j=Z.fieldKey==="diameter";return _6("td",{className:`${V?"relative ":""}${y71}${j?" text-accent":""}`,children:[Z.cell(F),V&&b&&_2("span",{role:"tooltip",className:"pointer-events-none absolute top-1/2 right-0 z-20 hidden w-[520px] -translate-y-1/2 whitespace-normal bg-[var(--tooltip-bg)] px-3 py-2 text-right font-mono text-[length:var(--size-label,11px)] normal-case tracking-[0.12em] text-fg shadow-lg group-hover:block max-[720px]:!hidden",children:_2(Nv,{answer:QI(F,w)})})]},Z.fieldKey)})},oR(F,d)))})]})}),_2(s5,{text:r,linkText:o,linkHref:i})]})}import{jsx as _v}from"react/jsx-runtime";var C71=["alloy-wheel"];function Iv(e){return _v(z2,{kinds:C71,type:"FitmentTable",editing:e.editing,children:_v(k71,{...e})})}function k71({num:e,title:t,description:a,showFilter:s,tooltipDefaultOn:c,footnote:l,footnoteLinkText:r,footnoteLinkHref:o,editing:i=!1,omitHead:n=!1}){let h=$0(),m=z3(i&&!h),u=h?.product??m,d=u?.kind==="alloy-wheel"?u.source.fitments??[]:[];return _v(wc,{num:e,title:t,description:a,rows:d,showFilter:s,tooltipDefaultOn:c,footnote:l,footnoteLinkText:r,footnoteLinkHref:o,editing:i,omitHead:n,fieldUsage:h?.fieldUsage})}function iR(e,t){return t||e.dynamic===!0}import{jsx as nR}from"react/jsx-runtime";function Rv({dynamic:e,wheel:t,omitHead:a=!1,...s}){let c=$0()!==null||!!s.editing&&M2();return iR({dynamic:e,wheel:t},c)?nR(Iv,{...s,omitHead:a}):nR(wc,{...s,omitHead:a,rows:Wt(typeof t=="string"?t:"")})}import{jsx as M71}from"react/jsx-runtime";var i5={num:A.sectionNumber,title:"Specifications *table.*",description:A.body,footnote:"Add a short footnote here.",footnoteLinkText:"Contact us"},hR={label:"Fitment Table",defaultProps:{dynamic:!1,num:"",title:"",description:"",wheel:"",showFilter:!0,tooltipDefaultOn:!0,footnote:"",footnoteLinkText:"",footnoteLinkHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return M71(Rv,{dynamic:e.dynamic,wheel:e.wheel,num:a(y(e.num,i5.num,e.puck)),title:a(y(e.title,i5.title,e.puck)),description:a(y(e.description,i5.description,e.puck)),omitHead:t,showFilter:e.showFilter,tooltipDefaultOn:e.tooltipDefaultOn,footnote:y(e.footnote,i5.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,i5.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),editing:e.puck?.isEditing})}};import{jsx as In}from"react/jsx-runtime";var F71=Vv.filter(e=>Wt(e.slug).length>0).map(e=>({value:e.slug,label:e.name})),mR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,In(S71,{})),_gContent:x("Header"),num:T("Number",i5.num),title:T("Heading",i5.title),description:O("Body",i5.description),_gData:x("Wheel"),wheel:g1("Product",In(L71,{}),F71,"vector-iii"),_gOptions:x("Controls"),showFilter:l1("Size-filter chips",!0,In(A71,{})),tooltipDefaultOn:l1("Detail tooltip on by default",!0,In(H71,{})),_gFootnote:x("Footnote"),footnote:O("Footnote",i5.footnote),footnoteLinkText:T("Footnote button",i5.footnoteLinkText),footnoteLinkHref:H1("Footnote link")},resolveFields:(e,{fields:t,parent:a})=>{let s={...t},c=l=>G1(W1(l,a,U1),e.props.headPlacement,Z1.FitmentTable.headRows);return delete s._gDynamic,delete s.dynamic,M2()&&(delete s._gData,delete s.wheel),c(s)}};import{SettingsField as uR}from"efficient-easel/panel";import{FieldSelect as dR}from"efficient-easel/fields";import{BlockProductIcon as V71,CategoryIcon as N71}from"efficient-easel/icons";import{useEffect as Zv,useMemo as _71,useRef as Rn,useState as Bn}from"react";import{useEffect as T71,useMemo as pR,useState as P71}from"react";var I6="__all__";function E71(e,t){let a=new Set((e??[]).map(s=>s.name));return t!==I6&&a.add(t),[...a].sort((s,c)=>s.localeCompare(c))}function Bv(e,t){return t===I6?e??[]:(e??[]).filter(a=>a.process===t)}function J7(e,t,a){let[s,c]=P71(I6);T71(()=>{a?.process&&c(a.process)},[a]);let l=pR(()=>E71(t,s),[t,s]),r=pR(()=>Bv(e,s),[e,s]);return{category:s,setCategory:c,categoryNames:l,filtered:r}}import{jsx as Q7,jsxs as Z71}from"react/jsx-runtime";var n5="__all__";function I71(e,t){return t===n5?e:e.filter(a=>a.process===t)}function Ut(e,t){return e.map(a=>({image:a.items[0]?.url,photos:a.items.map(s=>({src:s.url})),href:`/wheels/${t.slug}`,process:t.process,eyebrow:a.name,name:t.name,meta:a.finish})).filter(a=>!!a.image)}function gR(e){let t=R3();return t?J1.getWheelDetail(t,e,{siteId:i2()}):Promise.reject(new Error("editor not authenticated"))}async function R71(e){let t=await gR(e),a={slug:t.slug,name:t.name,process:t.process},s=t.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};return{...a,vehicleCards:Ut(s.lifestyle??[],a),wheelCards:Ut(s.photos??[],a),othersCards:Ut(s.others??[],a)}}async function B71(e,t){let a=await Promise.all(e.map(r=>gR(r.slug).catch(()=>null))),s=[],c=[],l=[];for(let r of a){if(!r)continue;let o={slug:r.slug,name:r.name,process:r.process},i=r.mediaGroups??{photos:[],lifestyle:[],videos:[],accessories:[],others:[]};s.push(...Ut(i.lifestyle??[],o)),c.push(...Ut(i.photos??[],o)),l.push(...Ut(i.others??[],o))}return{slug:n5,name:t===n5?"All products":t,process:"",vehicleCards:s,wheelCards:c,othersCards:l,category:t}}function Dv({value:e,onChange:t}){let a=C4(),[s,c]=Bn(null),[l,r]=Bn(null),[o,i]=Bn(!1),[n,h]=Bn(!1),m=Rn(!0),u=Rn(e);u.current=e;let d=Rn(t);d.current=t;let v=(N,Q=!1)=>{i(!0),Q||h(!1),N().then(W=>{m.current&&(b6(W,u.current)&&d.current(W),h(!1))}).catch(()=>{m.current&&!Q&&h(!0)}).finally(()=>{m.current&&i(!1)})},g=(N,Q=!1)=>v(()=>R71(N),Q),b=(N,Q=!1)=>v(()=>B71(I71(s??[],N),N),Q);Zv(()=>(m.current=!0,i3().then(N=>{m.current&&c(N)}),f4().then(N=>{m.current&&r(N)}),()=>{m.current=!1}),[]);let f=Rn(!1);Zv(()=>{if(f.current)return;let N=u.current;if(!N?.slug){f.current=!0;return}if(N.slug===n5){if(s===null)return;f.current=!0,b(N.category??n5,!0)}else f.current=!0,g(N.slug,!0)},[s]);let w=e?.slug===n5,z=_71(()=>s&&e?.slug&&!w?s.find(N=>N.slug===e.slug)??null:null,[s,e?.slug,w]),{category:k,setCategory:S,categoryNames:H,filtered:I}=J7(s,l);Zv(()=>{w?e?.category&&S(e.category):z?.process&&S(z.process)},[z,w,e?.category]);let P=s===null,D=!!e?.slug&&!w&&s!==null&&!z,E=N=>{if(!N){t(null);return}if(N===n5){b(k);return}g(N)},F=N=>{S(N),u.current?.slug===n5&&b(N)},_=()=>{e?.slug&&(i3(!0).then(N=>{m.current&&c(N)}),w?b(e.category??n5):g(e.slug))},Z=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},G=(e?.vehicleCards.length??0)+(e?.wheelCards.length??0)+(e?.othersCards?.length??0),V=n?"error":o?"loading":"idle",j=n?p("Couldn\u2019t reach the product catalog."):o?p("Syncing media from the catalog\u2026"):D?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):w?p3("Linked to \u201C{name}\u201D \xB7 {n} card from all products\u2019 media groups.","Linked to \u201C{name}\u201D \xB7 {n} cards from all products\u2019 media groups.",G,{name:e?.name??""}):p3("Linked to \u201C{name}\u201D \xB7 {n} card from its media groups.","Linked to \u201C{name}\u201D \xB7 {n} cards from its media groups.",G,{name:e?.name??""});return Z71("div",{children:[Q7(uR,{label:p("Category"),icon:Q7(N71,{}),children:Q7(dR,{value:k,ariaLabel:p("Category"),onChange:F,readOnly:P,options:[{label:p("All products"),value:n5},...H.map(N=>({label:N,value:N}))]})}),Q7(uR,{label:p("Product"),icon:Q7(V71,{}),children:Q7(dR,{value:e?.slug??"",ariaLabel:p("Product"),onChange:E,readOnly:P||o,options:[{label:P?p("Loading\u2026"):p("None (write the cards yourself)"),value:""},{label:p("All products"),value:n5},...D?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...I.map(N=>({label:N.name,value:N.slug}))]})}),e?.slug?Q7(E4,{status:V,statusText:j,onRefresh:_,busy:o,edit:w?void 0:{label:p("Edit product \u270E"),onClick:Z},hint:w?p("Pools every product\u2019s grouped media: each one\u2019s Relative / lifestyle photos feed Gallery A, its Product photos Gallery B and its Others the Others gallery. Every media group becomes a card, attributed to its own product (title, link and tag). Narrow the set with the Category filter above. Headings, intro copy and stats stay yours."):p("Gallery A comes from the product\u2019s Relative / lifestyle photos, Gallery B from its Product photos and the Others gallery from its Others \u2014 edit those in the product\u2019s Media tab and refresh. Each media group is a card: its name is the eyebrow, its finish the meta line; the card\u2019s title is the product name and its tag the category. Headings, intro copy and stats stay yours.")}):Q7("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a product \u2014 or All products \u2014 to build the galleries from media groups, or keep \u201CNone\u201D to author the cards yourself.")})]})}import{EyeIcon as G71,TabsIcon as xR,BreadcrumbIcon as q71,HashIcon as zR,SortIcon as W71}from"efficient-easel/icons";import{useMemo as vR,useState as Zn}from"react";import{Fragment as Dn,jsx as j1,jsxs as a2}from"react/jsx-runtime";function Ov(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function fR(e){let t=[e.image,...(e.photos??[]).map(a=>a?.src)].filter(a=>!!a);return t.length?t:[""]}var Gv=6,D71=()=>Array.from({length:Gv},(e,t)=>({image:"",process:p("Tag"),eyebrow:p("Category"),name:p("Item name"),meta:p("{n} photos",{n:`0${t+1}`})}));function qv({mode:e="both",kicker:t,breadcrumbLabel:a,vehicleTabLabel:s="Gallery A",vehicleTitle:c,vehicleBody1:l,vehicleBody2:r,vehicleStats:o,vehicleCards:i,wheelTabLabel:n="Gallery B",wheelTitle:h,wheelBody1:m,wheelBody2:u,wheelStats:d,wheelCards:v,othersTitle:g,othersBody1:b,othersBody2:f,othersStats:w,othersCards:z,showBreadcrumb:k=!0,showStats:S=!0,showIntro:H=!0,showTabs:I=!0,showFilters:P=!0,showCount:D=!0,showSort:E=!0,previewTab:F,previewHover:_=!1,editing:Z=!1}){let G=e==="both",V=G?["vehicles","wheels"]:e==="wheels"?["wheels"]:e==="others"?["others"]:["vehicles"],[j,N]=Zn(V[0]),W=(Z&&G&&F&&V.includes(F)?F:null)??(V.includes(j)?j:V[0]),U=Z&&_,[i1,y1]=Zn("all"),[K,c1]=Zn("newest"),[b1,$]=Zn(null),u1=W==="vehicles"?{title:c,body1:l,body2:r,stats:o??[],cards:i??[],unit:"items",word:s}:W==="others"?{title:g,body1:b,body2:f,stats:w??[],cards:z??[],unit:"items",word:"Others"}:{title:h,body1:m,body2:u,stats:d??[],cards:v??[],unit:"items",word:n},x1=vR(()=>{let d1=[];for(let $1 of u1.cards)$1.process&&!d1.includes($1.process)&&d1.push($1.process);return d1},[u1.cards]),X0=i1!=="all"&&x1.includes(i1)?i1:"all",o0=X0==="all"?u1.cards:u1.cards.filter(d1=>d1.process===X0),I1=vR(()=>{let d1=[...o0];return K==="name"&&d1.sort(($1,u0)=>($1.name??"").localeCompare(u0.name??"")),d1},[o0,K]),c0=u1.cards.length===0,l0=Z&&c0,X1=l0?D71():I1,X2=l0?Gv:u1.cards.length,Q1=l0?Gv:I1.length,d2=t?`${t} \xB7 ${p2(u1.word)}`:void 0;function b0(d1){d1!==W&&(N(d1),y1("all"))}return a2("section",{className:"relative z-[2] bg-bg",children:[k&&a2("nav",{className:"mx-auto flex max-w-[var(--sf-site-width,1600px)] 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:[j1("span",{className:"hover:text-fg",children:"Home"}),j1("span",{className:"opacity-40",children:"/"}),j1("span",{className:"text-fg",children:a?R0(a):"Gallery"})]}),a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-[auto_1fr_auto] items-end gap-[60px] border-b border-line px-[var(--sf-site-gutter,40px)] pt-[100px] pb-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-5 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-[60px]",children:[j1("span",{className:"pb-3.5 font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em] text-accent",children:d2?M(d2):null}),j1("h2",{className:"font-display text-[length:min(var(--size-headingLarge,clamp(64px,9vw,140px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.9] tracking-[-0.04em]",children:u1.title?Y(u1.title,!0):null}),j1("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:S&&u1.stats.map((d1,$1)=>a2("div",{children:[d1.value?j1("strong",{className:"font-normal text-fg",children:M(d1.value)}):null," ",d1.label?M(d1.label):null]},$1))})]}),H&&(u1.body1||u1.body2)&&a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 gap-[60px] px-[var(--sf-site-gutter,40px)] pt-7 max-[1100px]:grid-cols-1 max-[1100px]:gap-4 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",children:[u1.body1&&j1("p",{className:"max-w-[540px] font-display text-[length:var(--size-body,17px)] leading-[1.6] text-fg-dim",children:M(u1.body1)}),u1.body2&&j1("p",{className:"max-w-[540px] font-display text-[length:var(--size-body,17px)] leading-[1.6] text-fg-dim",children:M(u1.body2)})]}),G&&I&&j1("div",{className:"mx-auto mt-10 flex max-w-[var(--sf-site-width,1600px)] items-stretch border-y border-line px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[720px]:px-3",children:["vehicles","wheels"].map((d1,$1)=>{let u0=W===d1,P0=d1==="vehicles"?s:n,J0=d1==="vehicles"?(i??[]).length:(v??[]).length,q0=(P0||"").trim().split(/\s+/),e1=q0.slice(0,-1).join(" "),z1=q0.slice(-1)[0]??"";return a2("button",{type:"button",onClick:()=>b0(d1),className:["group relative grid flex-1 cursor-pointer grid-cols-[auto_1fr_auto] items-end gap-5 px-6 py-7 text-left transition-colors",$1===0?"border-r border-line":"","max-[720px]:grid-cols-[auto_1fr] max-[720px]:items-center max-[720px]:gap-2 max-[720px]:px-3 max-[720px]:py-3",u0?"bg-surface":"hover:bg-fg/[0.04]"].join(" "),children:[j1("span",{className:["pb-1.5 font-mono text-[length:var(--size-label,13px)] tracking-[0.3em] max-[720px]:pb-0 max-[720px]:text-[length:var(--size-label,11px)] max-[720px]:tracking-[0.24em]",u0?"text-accent":"text-fg-dim group-hover:text-accent"].join(" "),children:$1===0?"A":"B"}),a2("span",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(28px,3.6vw,48px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] max-[720px]:text-[length:var(--size-body,15px)]",children:[e1?a2(Dn,{children:[R0(e1)," "]}):null,j1("em",{className:"font-normal italic text-accent",children:R0(z1)})]}),a2("span",{className:"pb-1.5 text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.24em] text-fg-dim max-[720px]:hidden",children:[j1("strong",{className:"font-normal text-fg",children:J0})," ","items",j1("br",{}),d1==="vehicles"?"Community photos":"Featured photos"]}),u0&&j1("span",{className:"pointer-events-none absolute inset-x-0 -bottom-px h-0.5 bg-accent"})]},d1)})}),(P||D||E)&&a2("div",{className:"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-[auto_1fr_auto] items-center gap-7 border-b border-line px-[var(--sf-site-gutter,40px)] py-5 max-[720px]:grid-cols-1 max-[720px]:gap-3.5 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-3",style:{background:"color-mix(in oklab, var(--bg) 92%, transparent)"},children:[j1("div",{className:"flex flex-wrap gap-1",children:P&&["all",...x1].map(d1=>{let $1=X0===d1,u0=d1==="all"?"All":d1;return j1("button",{type:"button",onClick:()=>y1(d1),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] transition-colors",$1?"border-fg bg-fg text-bg":"border-transparent text-fg-dim hover:text-fg"].join(" "),children:R0(u0)},d1)})}),D?a2("div",{className:"text-center font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:[j1("strong",{className:"font-normal text-accent",children:Q1})," / ",X2," ",u1.unit]}):j1("div",{}),E?a2("div",{className:"flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:[j1("span",{children:"Sort"}),a2(Fa,{value:K,onChange:d1=>c1(d1.target.value),className:"cursor-pointer border border-line bg-bg px-2.5 py-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg",children:[j1("option",{value:"newest",children:"Newest"}),j1("option",{value:"featured",children:"Featured"}),j1("option",{value:"name",children:"Name A\u2013Z"})]})]}):j1("div",{})]}),j1("div",{className:"mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-5 pb-20 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",children:X1.length>0?j1("div",{className:"grid grid-cols-6 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:X1.map((d1,$1)=>{let u0=fR(d1)[0],J0=`group relative block aspect-[4/3] w-full overflow-hidden bg-surface-2 text-left ${$1<2?"col-span-3 max-[1100px]:col-span-1":"col-span-2 max-[1100px]:col-span-1"}`,q0=`${d1.name??"card"}-${$1}`,e1=a2(Dn,{children:[j1(k0,{label:Ov(d1.name,`gallery-card-${$1+1}`),src:u0||void 0,alt:p2(d1.name??""),sizes:"(max-width: 720px) 100vw, (max-width: 1100px) 50vw, 33vw",className:`transition-transform duration-700 ${U?"scale-[1.04]":"group-hover:scale-[1.04]"}`}),a2("div",{className:"pointer-events-none absolute inset-0 z-10 flex flex-col justify-between p-[22px] max-[720px]:p-[11px]",style:{background:"linear-gradient(180deg, rgba(10,10,10,.55) 0%, transparent 35%, transparent 55%, rgba(10,10,10,.92) 100%)"},children:[a2("div",{className:"flex items-start justify-between font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em]",children:[d1.process?j1("span",{className:"text-accent",children:M(d1.process)}):j1("span",{}),a2("span",{className:"text-overlay-fg/70",children:[String($1+1).padStart(2,"0")," / ",String(X1.length).padStart(2,"0")]})]}),a2("div",{className:"flex flex-col gap-1.5",children:[d1.eyebrow&&j1("div",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(d1.eyebrow)}),d1.name&&j1("div",{className:"font-heading3 text-[length:var(--size-headingSmall,clamp(22px,2.4vw,32px))] font-medium uppercase leading-none tracking-[-0.02em] text-overlay-fg",children:M(d1.name)}),d1.meta&&j1("div",{className:"flex flex-wrap gap-3 pt-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-overlay-fg/70",children:j1("span",{children:M(d1.meta)})})]})]})]});return Z?j1("div",{className:J0,children:e1},q0):j1("button",{type:"button",onClick:()=>$({card:d1,index:0}),"aria-label":`Open ${d1.name??"gallery item"}`,className:`${J0} cursor-pointer focus:outline-none focus-visible:outline focus-visible:outline-2 focus-visible:outline-accent focus-visible:outline-offset-2`,children:e1},q0)})}):j1("div",{className:"py-20 text-center font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.2em] text-fg-dim",children:c0?"No items in this gallery yet.":"No items match this filter."})}),b1&&(()=>{let d1=fR(b1.card),{card:$1,index:u0}=b1,P0=d1.length,J0=d1[u0]??d1[0]??"",q0=z1=>$(t0=>t0&&{...t0,index:(t0.index+z1+P0)%P0}),e1=[$1.process,$1.meta].filter(Boolean).join(" \xB7 ");return a2(F8,{open:!0,onClose:()=>$(null),label:$1.name??"Gallery item",onPrev:P0>1?()=>q0(-1):void 0,onNext:P0>1?()=>q0(1):void 0,className:"flex cursor-zoom-out flex-col items-center justify-center bg-overlay-scrim/92 p-6 backdrop-blur-sm max-[720px]:p-3",children:[a2("div",{className:"relative flex w-full flex-1 items-center justify-center",children:[j1("div",{className:"relative h-full max-h-[72vh] w-full max-w-[92vw]",children:j1(k0,{label:Ov($1.name,"gallery-photo"),src:J0||void 0,alt:p2($1.name??""),objectFit:"contain",sizes:"92vw"})}),P0>1&&a2(Dn,{children:[j1("button",{type:"button","aria-label":"Previous photo",onClick:z1=>{z1.stopPropagation(),q0(-1)},className:"absolute left-2 top-1/2 flex h-12 w-12 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25C1"}),j1("button",{type:"button","aria-label":"Next photo",onClick:z1=>{z1.stopPropagation(),q0(1)},className:"absolute right-2 top-1/2 flex h-12 w-12 -translate-y-1/2 cursor-pointer items-center justify-center border border-fg-dim/40 bg-overlay-scrim/40 text-fg-dim transition-colors hover:border-accent hover:text-accent",children:"\u25B7"})]})]}),a2("div",{className:"mt-5 flex flex-col items-center gap-3 text-center font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",onClick:z1=>z1.stopPropagation(),children:[a2("div",{className:"flex flex-col items-center gap-1",children:[$1.name&&j1("span",{className:"text-accent",children:M($1.name)}),$1.eyebrow&&j1("span",{children:M($1.eyebrow)}),a2("span",{className:"text-fg-dim/70",children:[e1?a2(Dn,{children:[M(e1)," \xB7 "]}):null,u0+1," / ",P0]})]}),$1.href&&j1(L1,{href:$1.href,onClick:()=>$(null),className:"cursor-pointer border border-btn bg-btn/[0.08] px-5 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.28em] text-btn transition-colors hover:bg-btn hover:text-btn-ink",children:"View Product \u2192"})]}),P0>1&&j1("div",{onClick:z1=>z1.stopPropagation(),className:"mt-5 flex max-w-[92vw] gap-1.5 overflow-x-auto pb-1",children:d1.map((z1,t0)=>j1("button",{type:"button","aria-label":`Photo ${t0+1}`,onClick:()=>$(s2=>s2&&{...s2,index:t0}),className:["relative h-16 w-24 shrink-0 cursor-pointer overflow-hidden border transition-colors max-[720px]:h-12 max-[720px]:w-16",t0===u0?"border-accent":"border-line opacity-60 hover:border-fg-dim hover:opacity-100"].join(" "),children:j1(k0,{label:Ov($1.name,"gallery-photo"),src:z1||void 0,alt:"",sizes:"120px"})},`${z1}-${t0}`))}),j1(Ye,{})]})})()]})}import{jsx as O71}from"react/jsx-runtime";var y2={kicker:A.eyebrow,vehicleTitle:A.headingAccent,wheelTitle:A.headingAccent,vehicleBody1:A.body,vehicleBody2:"Add a second, shorter line if you need one.",wheelBody1:A.body,wheelBody2:"Add a second, shorter line if you need one.",othersTitle:A.headingAccent,othersBody1:A.body,othersBody2:"Add a second, shorter line if you need one."},Wv=()=>[{value:"00",label:p(A.label)},{value:"00",label:p(A.label)},{value:"00",label:p(A.label)}],On=()=>({image:"",href:"#",process:p(A.category),eyebrow:p("Subtitle"),name:p("Item name"),meta:p("Detail")}),Uv=()=>[On(),On(),On(),On()],bR={label:"Tabbed Gallery",defaultProps:{mode:"both",source:null,kicker:"",breadcrumbLabel:"Gallery",vehicleTabLabel:"Gallery A",vehicleTitle:"",vehicleBody1:"",vehicleBody2:"",vehicleStats:[],vehicleCards:[],wheelTabLabel:"Gallery B",wheelTitle:"",wheelBody1:"",wheelBody2:"",wheelStats:[],wheelCards:[],othersTitle:"",othersBody1:"",othersBody2:"",othersStats:[],othersCards:[],showBreadcrumb:!0,showStats:!0,showIntro:!0,showTabs:!0,showFilters:!0,showCount:!0,showSort:!0,previewTab:"vehicles",previewHover:!1},render:e=>{let t=e.source;return O71(qv,{mode:e.mode,kicker:y(e.kicker,y2.kicker,e.puck),breadcrumbLabel:a1(e.breadcrumbLabel)||"Gallery",vehicleTabLabel:a1(e.vehicleTabLabel)||"Gallery A",vehicleTitle:y(e.vehicleTitle,y2.vehicleTitle,e.puck),vehicleBody1:y(e.vehicleBody1,y2.vehicleBody1,e.puck),vehicleBody2:y(e.vehicleBody2,y2.vehicleBody2,e.puck),vehicleStats:C1(e.vehicleStats,Wv(),e.puck),vehicleCards:C1(t?.vehicleCards??e.vehicleCards,Uv(),e.puck),wheelTabLabel:a1(e.wheelTabLabel)||"Gallery B",wheelTitle:y(e.wheelTitle,y2.wheelTitle,e.puck),wheelBody1:y(e.wheelBody1,y2.wheelBody1,e.puck),wheelBody2:y(e.wheelBody2,y2.wheelBody2,e.puck),wheelStats:C1(e.wheelStats,Wv(),e.puck),wheelCards:C1(t?.wheelCards??e.wheelCards,Uv(),e.puck),othersTitle:y(e.othersTitle,y2.othersTitle,e.puck),othersBody1:y(e.othersBody1,y2.othersBody1,e.puck),othersBody2:y(e.othersBody2,y2.othersBody2,e.puck),othersStats:C1(e.othersStats,Wv(),e.puck),othersCards:C1(t?.othersCards??e.othersCards,Uv(),e.puck),showBreadcrumb:e.showBreadcrumb,showStats:e.showStats,showIntro:e.showIntro,showTabs:e.showTabs,showFilters:e.showFilters,showCount:e.showCount,showSort:e.showSort,previewTab:e.previewTab,previewHover:e.previewHover,editing:e.puck?.isEditing})}};import{jsx as R6}from"react/jsx-runtime";var yR={fields:{_sSetup:Y1("Setup"),_gGallery:x("Gallery"),mode:v1("Show",R6(G71,{}),[{label:"Gallery A",value:"vehicles"},{label:"Gallery B",value:"wheels"},{label:"Others",value:"others"},{label:"Both",value:"both"}],"both"),kicker:T("Eyebrow",y2.kicker),breadcrumbLabel:q("Breadcrumb label","Gallery"),_gSource:x("Source product"),source:c2(Dv),_sPreview:Y1("Preview"),_gPreview:x(Xl),previewTab:v1("Show tab",R6(xR,{}),[{label:"Gallery A",value:"vehicles"},{label:"Gallery B",value:"wheels"}],"vehicles"),_sVehicle:Y1("Gallery A"),_gVehicleContent:x("Content"),vehicleTabLabel:q("Tab label","Gallery A"),vehicleTitle:O("Heading",y2.vehicleTitle),vehicleBody1:O("Intro",y2.vehicleBody1),vehicleBody2:O("Body",y2.vehicleBody2),_gVehicleStats:x("Stats"),vehicleStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gVehicleCards:x("Cards"),vehicleCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sWheel:Y1("Gallery B"),_gWheelContent:x("Content"),wheelTabLabel:q("Tab label","Gallery B"),wheelTitle:O("Heading",y2.wheelTitle),wheelBody1:O("Intro",y2.wheelBody1),wheelBody2:O("Body",y2.wheelBody2),_gWheelStats:x("Stats"),wheelStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gWheelCards:x("Cards"),wheelCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sOthers:Y1("Others gallery"),_gOthersContent:x("Content"),othersTitle:O("Heading",y2.othersTitle),othersBody1:O("Intro",y2.othersBody1),othersBody2:O("Body",y2.othersBody2),_gOthersStats:x("Stats"),othersStats:{type:"array",label:"Stats",arrayFields:{value:f1("Value"),label:f1("Label")},getItemSummary:e=>e.label||e.value||"stat"},_gOthersCards:x("Cards"),othersCards:{type:"array",label:"Cards",arrayFields:{image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},href:H1("Product link"),process:f1("Tag"),eyebrow:f1("Eyebrow"),name:f1("Title"),meta:f1("Meta line")},getItemSummary:e=>e.name||e.eyebrow||"card"},_sVisibility:Y1("Visibility"),_gElements:x("Show / hide elements"),showBreadcrumb:l1("Breadcrumb",!0,R6(q71,{})),showStats:l1("Stats",!0,R6(zR,{})),showIntro:l1("Intro text",!0,R6(c4,{noun:"intro"})),showTabs:l1("Tab switcher",!0,R6(xR,{})),showFilters:l1("Tag filters",!0,R6(c4,{noun:"tag"})),showCount:l1("Result count",!0,R6(zR,{})),showSort:l1("Sort control",!0,R6(W71,{}))},resolveFields:(e,{fields:t})=>{let a=e.props,s={...t};a.mode!=="both"&&(delete s._sPreview,delete s._gPreview,delete s.previewTab);let c=["_sVehicle","_gVehicleContent","vehicleTabLabel","vehicleTitle","vehicleBody1","vehicleBody2","_gVehicleStats","vehicleStats","_gVehicleCards","vehicleCards"],l=["_sWheel","_gWheelContent","wheelTabLabel","wheelTitle","wheelBody1","wheelBody2","_gWheelStats","wheelStats","_gWheelCards","wheelCards"];return a.mode==="vehicles"&&l.forEach(r=>delete s[r]),a.mode==="wheels"&&c.forEach(r=>delete s[r]),a.source?.slug&&(delete s._gVehicleCards,delete s.vehicleCards,delete s._gWheelCards,delete s.wheelCards,delete s._gOthersCards,delete s.othersCards),s}};import{ProductFieldIcon as Q71,ImageIcon as e81,EyeIcon as t81}from"efficient-easel/icons";import{jsx as R4,jsxs as MR}from"react/jsx-runtime";var U71=D3,wR=["photos","lifestyle","accessories","others"];function j71(e,t){if(!e)return[];if(t==="all")return wR.flatMap(s=>e[s]??[]);let a=wR.includes(t)?t:null;return a?e[a]??[]:[]}var CR="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]",kR="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]";function jv(e){return Ho(!!e.editing)?R4(K71,{...e}):R4(z2,{kinds:U71,type:"GalleryB",editing:e.editing,children:R4($71,{...e})})}function K71(e){let{editing:t=!1}=e,a=To(),s=a?Lo(a,{firstField:!0}).map(c=>({images:[c.url],eyebrow:c.alt||void 0})):t?Array.from({length:gL},()=>({images:[""]})):[];return R4(SR,{...e,tiles:s,owner:{name:(a??Fo).title},emptyHint:p("This record\u2019s pictures appear here on its page. A record with no pictures draws nothing.")})}function $71({omitHead:e=!1,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",zone:o="all",photoDisplay:i="covers",previewHover:n,editing:h=!1}){let m=$0(),u=z3(h&&!m),d=m?.product??u,v=j71(d?.mediaGroups,o).map(f=>({images:(f.items??[]).filter(w=>w.kind==="image").map(w=>w.url),name:f.name,finish:f.finish})).filter(f=>f.images.length>0),b=(i==="auto"?v.length>=4?"covers":"all":i)==="all"?v.flatMap(f=>f.images.map(w=>({images:[w],name:f.name,finish:f.finish}))):v;return R4(SR,{omitHead:e,num:t,title:a,linkText:s,linkHref:c,galleryHref:l,submitHref:r,previewHover:n,editing:h,tiles:d?b.map(f=>({images:f.images,eyebrow:f.name,meta:f.finish})):[],owner:{name:d?.name??"",href:d?.href,process:d?.eyebrow},emptyHint:p("This product\u2019s photos appear here on a product page. Add media groups in the product\u2019s Media tab.")})}function SR({omitHead:e=!1,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o,editing:i=!1,tiles:n,owner:h,emptyHint:m}){let u=s?{text:s,href:c||"#"}:void 0,d=a?Y(a,!1):void 0,v=e?null:R4(s0,{num:t,title:d,link:u});return n.length===0?i?MR("section",{className:e?kR:CR,children:[v,R4("p",{className:"mt-8 border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:m})]}):null:MR("section",{className:e?kR:CR,children:[v,R4(ts.Provider,{value:{galleryHref:l,submitHref:r,previewHover:o},children:R4("div",{[as]:"",className:"grid grid-cols-4 gap-2 max-[1500px]:grid-cols-3 max-[800px]:grid-cols-1 max-[800px]:gap-1",children:n.map((g,b)=>R4(ss,{image:g.images[0],photos:g.images.slice(1).map(f=>({src:f})),href:h.href,process:h.process,eyebrow:g.eyebrow,name:h.name,meta:g.meta,editing:i},`${g.eyebrow}-${b}`))})}),R4("div",{className:"mt-12 flex flex-col items-center gap-3",children:R4(c3,{href:l,variant:"ghost",children:"See Gallery"})})]})}import{jsx as u9,jsxs as J71}from"react/jsx-runtime";var Y71="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]",X71="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]";function Kv({items:e,num:t,title:a,linkText:s,linkHref:c,galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o,layout:i,columns:n,columnsMobile:h,gap:m,omitHead:u=!1}){let d=nz(i),v=d?i:null,g=!d&&n!=null&&n!=="",b=B3("GalleryB",m,"both"),f=v?{className:`sf-card-grid sf-gallery-zone ${hz(v)} grid${b.className}`,style:b.style}:g?{className:`sf-card-grid sf-grid-zone grid${b.className}`,style:{...b.style,"--sf-grid-cols":String(nl(n)),"--sf-grid-cols-phone":String(hl(h,n))}}:{className:`sf-card-grid grid grid-cols-4${b.className} max-[1500px]:grid-cols-3 max-[800px]:grid-cols-1`,style:b.style},w=s?{text:s,href:c||"#"}:void 0,z=a?Y(a,!1):void 0;return J71("section",{className:u?X71:Y71,children:[u?null:u9(s0,{num:t,title:z,link:w}),v&&u9("style",{dangerouslySetInnerHTML:{__html:mz(v)}}),e&&u9(ts.Provider,{value:{galleryHref:l,submitHref:r,previewHover:o},children:u9("div",{[as]:"",style:{display:"contents"},children:u9(e,{...f,minEmptyHeight:320})})}),u9("div",{className:"mt-12 flex flex-col items-center gap-3",children:u9(c3,{href:l,variant:"ghost",children:"See Gallery"})})]})}import{jsx as LR}from"react/jsx-runtime";var J5={num:A.sectionNumber,title:A.headingAccent,link:A.viewAll},$v={items:{type:"slot",allow:["GalleryItem"]}},AR={label:"Customer Photo Grid",fields:$v,defaultProps:{dynamic:!1,mediaZone:"all",photoDisplay:"covers",num:"",title:"",linkText:"",linkHref:"/contact",galleryHref:"/gallery",previewHover:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return e.dynamic?LR(jv,{num:a(y(e.num,J5.num,e.puck)),title:a(y(e.title,J5.title,e.puck)),linkText:a(y(e.linkText,J5.link,e.puck)),linkHref:a(a1(e.linkHref)||"/contact"),omitHead:t,galleryHref:a1(e.galleryHref)||"/gallery",zone:e.mediaZone||"all",photoDisplay:e.photoDisplay||"covers",previewHover:e.previewHover,editing:e.puck?.isEditing}):LR(Kv,{num:a(y(e.num,J5.num,e.puck)),title:a(y(e.title,J5.title,e.puck)),omitHead:t,linkText:a(y(e.linkText,J5.link,e.puck)),linkHref:a(a1(e.linkHref)||"/contact"),galleryHref:a1(e.galleryHref)||"/gallery",previewHover:e.previewHover,layout:e.layout,columns:e.columns,columnsMobile:e.columnsMobile,gap:e.gap,items:e.items})}};import{jsx as Yv}from"react/jsx-runtime";var a81=[{label:"All media groups",value:"all"},{label:"Lifestyle photos",value:"lifestyle"},{label:"Product photos",value:"photos"},{label:"Accessories",value:"accessories"},{label:"Others",value:"others"}],s81=[{label:"Group covers",value:"covers"},{label:"Every photo",value:"all"},{label:"Auto (covers if 4+ groups)",value:"auto"}],HR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,Yv(Q71,{})),mediaZone:g1("Images from",Yv(e81,{}),a81,"all"),photoDisplay:g1("Show",Yv(t81,{}),s81,"covers"),_gHeader:x("Header"),num:T("Section number",J5.num),title:O("Heading",J5.title),_gHeaderLink:x("Header link"),linkText:T("Header button",J5.link),linkHref:H1("Header link"),_gImages:x("Images"),imageList:N5("GalleryB"),items:$v.items,_gGalleryLink:x("Gallery link"),galleryHref:H1("\u201CSee gallery\u201D link"),_gArrangement:x("Arrangement"),layout:mw(),gap:Z3("GalleryB")},resolveFields:(e,t)=>{let{fields:a,parent:s}=t,c=e.props,l={...a},r=o=>G1(W1(o,s,U1),e.props.headPlacement,Z1.GalleryB.headRows);return M2()?(c.dynamic?(delete l._gImages,delete l.items,delete l.imageList,Ao(t)&&(delete l.mediaZone,delete l.photoDisplay)):(delete l.mediaZone,delete l.photoDisplay),r(l)):(delete l._gDynamic,delete l.dynamic,delete l.mediaZone,delete l.photoDisplay,r(l))}};import{useEffect as PR,useMemo as Xv,useState as Jv}from"react";import{IconButton as c81,Tooltip as l81}from"efficient-shell/ui";import{SettingsField as ER}from"efficient-easel/panel";import{FieldSelect as Gn}from"efficient-easel/fields";import{BlockProductIcon as r81,MediaIcon as o81}from"efficient-easel/icons";var FR=new Map;function TR(e){if(!e)return Promise.resolve(null);let t=FR.get(e);return t||(t=v0.getWheel(e).then(a=>a.mediaGroups??null).catch(()=>null),FR.set(e,t)),t}import{Fragment as _R,jsx as A2,jsxs as B6}from"react/jsx-runtime";function qn({label:e,hidden:t,onToggle:a}){return B6("div",{className:"sf-field-head",children:[A2("span",{className:"sf-field-label sf-field-label--inline",children:e}),a&&A2(l81,{content:t?p("Show on the card"):p("Hide on the card"),children:A2(c81,{size:"sm","aria-pressed":!!t,"aria-label":t?p("Show on the card"):p("Hide on the card"),onClick:a,children:t?A2(r6,{name:"eye-off",size:14}):A2(r6,{name:"eye",size:14})})})]})}var i81=[["photos","Photos"],["lifestyle","Lifestyle"],["accessories","Accessories"],["others","Others"],["videos","Videos"]];function VR(e){switch(e){case"photos":return p("Photos");case"lifestyle":return p("Lifestyle");case"accessories":return p("Accessories");case"others":return p("Others");case"videos":return p("Videos");default:return String(e)}}function n81(e){if(!e)return[];let t=[];for(let[a,s]of i81)(e[a]??[]).forEach((c,l)=>{let r=(c.items??[]).filter(o=>o.kind==="image").map(o=>o.url);r.length!==0&&t.push({key:`${String(a)}:${l}`,label:c.name?`${VR(a)} \xB7 ${c.name}`:VR(a),name:c.name||s,images:r})});return t}function NR(e){return e?e.categories&&e.categories.length?e.categories:e.process?[e.process]:[]:[]}function h81(e,t,a){let s=t?.find(i=>i.slug===e.code)??null;if(!s)return{name:void 0,href:void 0,cover:void 0,photos:[],eyebrow:void 0};let c=e.group?a.find(i=>i.name===e.group):void 0,l=e.finish?s.finishes.find(i=>i.name===e.finish&&i.src):void 0,r,o=[];return c&&c.images.length?(r=c.images[0],o=c.images.slice(1)):(r=l?.src||s.coverImage||void 0,o=[]),{name:s.name,href:`/wheels/${s.slug}`,cover:r,photos:o,eyebrow:e.group||void 0}}function Qv({value:e,onChange:t}){let a=Xv(()=>e??{},[e]),[s,c]=Jv(null),[l,r]=Jv([]),[o,i]=Jv(!1);PR(()=>{let g=!1;return i3().then(b=>{g||c(b)}),()=>{g=!0}},[]),PR(()=>{let g=!1;if(!a.code){r([]);return}return i(!0),TR(a.code).then(b=>{g||(r(n81(b)),i(!1))}),()=>{g=!0}},[a.code]);let n=Xv(()=>s?.find(g=>g.slug===a.code)??null,[s,a.code]),h=Xv(()=>NR(n),[n]),m=s===null;function u(g,b=l){let f={...a,...g};t({...f,...h81(f,s,b)})}function d(g){if(!g){t({});return}let b=s?.find(f=>f.slug===g)??null;u({code:g,category:NR(b)[0]??"",finish:"",group:""},[])}function v(g){t({...a,[g]:!a[g]})}return B6("div",{children:[A2(ER,{label:p("Product"),icon:A2(r81,{}),children:A2(Gn,{value:a.code??"",ariaLabel:p("Product"),readOnly:m,onChange:d,options:[{label:m?p("Loading\u2026"):p("Select a product\u2026"),value:""},...(s??[]).map(g=>({label:g.name,value:g.slug}))]})}),a.code&&B6(_R,{children:[B6("div",{className:`sf-field${a.hideName?" is-hidden":""}`,children:[A2(qn,{label:p("Title / product"),hidden:a.hideName,onToggle:()=>v("hideName")}),B6("div",{style:{display:"flex",alignItems:"center",gap:6,minHeight:30,padding:"0 8px",borderRadius:6,border:"1px solid var(--sf-field-border, rgba(128,128,128,0.3))",opacity:.75,fontSize:13},children:[n?.name??a.name??"\u2014",A2("span",{style:{opacity:.6},children:p("(auto)")})]})]}),B6("div",{className:`sf-field${a.hideProcess?" is-hidden":""}`,children:[A2(qn,{label:p("Category"),hidden:a.hideProcess,onToggle:()=>v("hideProcess")}),A2(Gn,{value:a.category??"",ariaLabel:p("Category"),readOnly:h.length===0,onChange:g=>u({category:g}),options:h.length===0?[{label:p("No categories on this product"),value:""}]:h.map(g=>({label:g,value:g}))})]}),A2(ER,{label:p("Media group"),icon:A2(o81,{}),hint:p("Its name fills the Eyebrow below, and its photos become the card cover and lightbox. No group \u2192 the product\u2019s cover image."),children:A2(Gn,{value:a.group??"",ariaLabel:p("Media group"),readOnly:o,onChange:g=>u({group:g}),options:[{label:o?p("Loading\u2026"):l.length===0?p("Cover image only (no media groups)"):p("Cover image only"),value:""},...l.map(g=>({label:g.label,value:g.name}))]})}),B6("div",{className:`sf-field${a.hideEyebrow?" is-hidden":""}`,children:[A2(qn,{label:B6(_R,{children:[p("Eyebrow")," ",A2("span",{style:{fontWeight:400,opacity:.6},children:p("(from media group)")})]}),hidden:a.hideEyebrow,onToggle:()=>v("hideEyebrow")}),A2("div",{style:{display:"flex",alignItems:"center",gap:6,minHeight:30,padding:"0 8px",borderRadius:6,border:"1px solid var(--sf-field-border, rgba(128,128,128,0.3))",opacity:.75,fontSize:13},children:a.group||"\u2014"})]}),B6("div",{className:`sf-field${a.hideFinish?" is-hidden":""}`,children:[A2(qn,{label:p("Finish"),hidden:a.hideFinish,onToggle:()=>v("hideFinish")}),A2(Gn,{value:a.finish??"",ariaLabel:p("Finish"),onChange:g=>u({finish:g}),options:[{label:p("Default (the product\u2019s default finish)"),value:""},...(n?.finishes??[]).map(g=>({label:g.src?g.name:p("{name} \u2014 no render",{name:g.name}),value:g.name,disabled:!g.src}))]})]})]})]})}import{ProductFieldIcon as m81,SquareIcon as p81,PlacementIcon as u81}from"efficient-easel/icons";import{jsx as Wn}from"react/jsx-runtime";var IR={fields:{_gSource:x("Content source"),fromProduct:l1("Fill from a product",!1,Wn(m81,{})),product:{type:"custom",render:({value:e,onChange:t})=>Wn(Qv,{value:e,onChange:t})},_gMedia:x("Media"),image:q1("Cover image","image/*"),photos:{type:"array",label:"More images",arrayFields:{src:q1("Image","image/*")},getItemSummary:(e,t)=>`Image ${(t??0)+1}`},_gText:x("Text"),process:T("Tag"),eyebrow:T("Eyebrow"),name:T("Heading"),meta:T("Meta line"),_gLink:x("Link"),href:H1("Product link"),ratio:g1("Shape",Wn(p81,{}),[{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"},{label:"Landscape (4:3)",value:"landscape"},{label:"Portrait (4:5)",value:"portrait"},{label:"The photo's own shape",value:"auto"}],"square"),captionPlace:g1("Card text",Wn(u81,{}),[{label:"On the photo",value:"overlay"},{label:"Below the photo",value:"below"}],"overlay")},resolveFields:(e,{fields:t})=>{let a=e.props.fromProduct===!0,s={...t};return a?(delete s._gMedia,delete s.image,delete s.photos,delete s._gText,delete s.process,delete s.eyebrow,delete s.name,delete s.meta,delete s._gLink,delete s.href):delete s.product,s}};var RR={fields:{}};import{SettingsField as b81}from"efficient-easel/panel";import{FieldSelect as x81}from"efficient-easel/fields";import{CategoryIcon as z81}from"efficient-easel/icons";import{useEffect as ZR,useRef as y81,useState as Kn}from"react";import{Fragment as d81}from"react";import{jsx as v81,jsxs as f81}from"react/jsx-runtime";var Un=["FusionForge\xAE","Precision Forged","Monoblock Cast"];function jn(e){return kl(e)}function BR(e){let t=e.split("\xAE");return t.length===1?e:t.map((a,s)=>f81(d81,{children:[a,s<t.length-1&&v81(i6,{})]},s))}var ef=Un.map((e,t)=>({key:e,num:String(t+1).padStart(2,"0"),title:BR(e)}));function g81(e){if(e.length===0)return[...Un];let t=new Set(e.map(a=>a.process));return Un.filter(a=>t.has(a))}function gQ1(e){return g81(e).map((t,a)=>({key:t,num:String(a+1).padStart(2,"0"),title:BR(t)}))}var vQ1=Object.fromEntries(Un.map(e=>[e,jn(e)]));import{jsx as Yn,jsxs as w81}from"react/jsx-runtime";var lf=60,cf="collection:";function DR(e){return cf+jn(e)}function $n(e){if(!e||!e.startsWith(cf))return;let t=e.slice(cf.length);return ef.find(a=>jn(a.key)===t)?.key}function jt(e){return e.slug&&e.slug.trim()?e.slug:`cat-${e.id}`}function tf(e,t){return{slug:jt(e),name:e.name,wheels:t.filter(a=>(a.categories??[a.process]).includes(e.name)).slice(0,lf)}}function af(e){return{slug:g7,name:Nk,wheels:e.slice(0,lf)}}function sf(e,t){return{slug:DR(e),name:e,process:e,wheels:t.filter(a=>a.process===e).slice(0,lf)}}function rf({value:e,onChange:t}){let[a,s]=Kn(null),[c,l]=Kn(null),[r,o]=Kn(!1),[i,n]=Kn(!1),h=y81(!0);ZR(()=>(h.current=!0,i3().then(z=>{h.current&&l(z)}),f4().then(z=>{h.current&&s(z)}),()=>{h.current=!1}),[]),ZR(()=>{if(!e?.slug||a===null||c===null)return;let z,k=$n(e.slug);if(k)z=sf(k,c);else if(e.slug===g7)z=af(c);else{let S=a.find(H=>jt(H)===e.slug);z=S?tf(S,c):null}z&&b6(z,e)&&t(z)},[a,c]);let m=z=>{if(!z){t(null);return}let k=$n(z);if(k){c&&t(sf(k,c));return}if(z===g7){c&&t(af(c));return}let S=(a??[]).find(H=>jt(H)===z);S&&c&&t(tf(S,c))},u=()=>{e?.slug&&(o(!0),n(!1),Promise.all([f4(!0),i3(!0)]).then(([z,k])=>{if(!h.current)return;s(z),l(k);let S=$n(e.slug);if(S)t(sf(S,k));else if(e.slug===g7)t(af(k));else{let H=z.find(I=>jt(I)===e.slug);H&&t(tf(H,k))}}).catch(()=>{h.current&&n(!0)}).finally(()=>{h.current&&o(!1)}))},d=c===null,v=e?.wheels?.length??0,g=e?.slug&&e.slug!==g7&&!$n(e.slug)&&!(a??[]).some(z=>jt(z)===e.slug),b=i?"error":r?"loading":"idle",f=p("Storefront \u2192 Categories"),w=i?p("Couldn\u2019t reach {place}.",{place:f}):r?p("Syncing from {place}\u2026",{place:f}):p3("Linked to \u201C{name}\u201D \xB7 {n} product","Linked to \u201C{name}\u201D \xB7 {n} products",v,{name:e?.name??""});return w81(b81,{label:p("Products source"),icon:Yn(z81,{}),children:[Yn(x81,{value:e?.slug??"",ariaLabel:p("Products source"),onChange:m,readOnly:d,options:[{label:p("None"),value:""},{label:p("All products"),value:g7},...ef.map(z=>({label:z.key,value:DR(z.key),group:p("Collections")})),...g?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...(a??[]).map(z=>({label:z.name,value:jt(z),group:p("Categories")}))]}),e?.slug?Yn(E4,{status:b,statusText:w,onRefresh:u,busy:r,hint:p("Auto-fills this grid each time you open the editor. Set how many appear with \u201CWheels to display\u201D. The wheels you pick below are ignored while a source is linked.")}):Yn("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick \u201CAll products\u201D or a category from {place} to auto-fill this grid, or keep \u201CNone\u201D to choose wheels yourself below.",{place:f})})]})}import{useEffect as UR,useId as H81,useMemo as Kt}from"react";import{createContext as C81,useContext as k81,useEffect as M81,useState as OR}from"react";import{jsx as Cc}from"react/jsx-runtime";var of=C81({wheels:[],loading:!1,live:!1});function S81(e,t){return e.find(a=>a.designCode===t)??e.find(a=>a.slug===t)}function GR({wheels:e,children:t}){return Cc(of.Provider,{value:{wheels:e??[],loading:!1,live:!0},children:t})}function qR({children:e}){let[t,a]=OR([]),[s,c]=OR(!0);return M81(()=>{let l=!1;return i3().then(r=>{l||(a(r),c(!1))}).catch(()=>{l||c(!1)}),()=>{l=!0}},[]),Cc(of.Provider,{value:{wheels:t,loading:s,live:!1},children:e})}function nf({code:e,finish:t,wheel:a}){let{wheels:s,loading:c,live:l}=k81(of),r=a??(e?S81(s,e):void 0);return r?Cc(o9,{wheel:r,variant:"catalog",defaultFinish:t},t??""):l?null:Cc("div",{className:"sf-card flex aspect-square w-full items-center justify-center bg-surface-2 p-4 text-center",children:Cc("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:c?p("Loading\u2026"):e||p("Set a design code")})})}function L81(e){if(!e.includes("_"))return e;let t=e.replace(/^_+/,""),a=e.slice(0,e.length-t.length),[s,...c]=t.split("_");return a+s+c.map(l=>l.slice(0,1).toUpperCase()+l.slice(1)).join("")}function hf(e){if(Array.isArray(e))return e.map(hf);if(e&&typeof e=="object"){let t={};for(let[a,s]of Object.entries(e))t[L81(a)]=hf(s);return t}return e}function A81(e){return hf(e)}function WR(e){return e.map(t=>B0(t)==="tyre"?t:A81(t))}import{Fragment as T81,jsx as Y2,jsxs as $t}from"react/jsx-runtime";var jR={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",5:"grid-cols-5 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1",6:"grid-cols-6 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-1"},Xn=[{value:"para",label:"Paragraph size \u2014 13px",cls:"font-mono font-normal uppercase tracking-[0.22em] text-[length:var(--size-label,13px)]"},{value:"sm",label:"Small \u2014 40px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,40px)] max-[800px]:text-[length:var(--size-headingMedium,28px)]"},{value:"md",label:"Medium \u2014 48px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,48px)] max-[800px]:text-[length:var(--size-headingMedium,32px)]"},{value:"lg",label:"Large \u2014 56px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,56px)] max-[800px]:text-[length:var(--size-headingMedium,36px)]"},{value:"xl",label:"Extra large \u2014 64px",cls:"font-heading2 font-medium tracking-[-0.03em] text-[length:var(--size-headingMedium,64px)] max-[800px]:text-[length:var(--size-headingMedium,40px)]"}],kc="lg";function F81(e){return(Xn.find(t=>t.value===e)??Xn.find(t=>t.value===kc)).cls}function mf({num:e,catalog:t,kinds:a,title:s,titleSize:c,padTop:l,description:r,link:o,products:i,wheels:n,source:h,columns:m,limit:u,editing:d,capWidth:v,imageBackground:g,spinOnHover:b,coverIndex:f,indexBadge:w,outline:z,showBadge:k,fieldUsage:S,showCardPrice:H,showCardFinishes:I,showCardSizes:P,showCardBuy:D,showCardPage:E,cardImage:F,gap:_}){let Z=Kt(()=>S?j4(S,"alloy-wheel"):void 0,[S]),G=Kt(()=>S?j4(S,"tyre"):void 0,[S]),V=`pg-${H81().replace(/:/g,"")}`,j=jR[Math.min(6,Math.max(1,m??4))]??jR[4],N=typeof u=="number"&&u>0,Q=typeof v=="number",W=Kt(()=>{let z1=t??h?.wheels??null;return z1?WR(z1):null},[t,h]),U=h?.process,i1=!!U,{filters:y1,reportCount:K,reportLugs:c1,reportSizes:b1,reportFinishes:$,vehicle:u1}=so(),{currency:x1}=d0(),X0=i1&&!!y1.process&&y1.process!==U,o0=Kt(()=>W?i1?qM(W,y1,x1,u1.fit):W:null,[W,i1,y1,x1,u1.fit]);UR(()=>{if(i1)return K(V,X0?0:o0?.length??0),()=>K(V,0)},[i1,X0,o0,K,V]);let I1=Kt(()=>{let z1=(o0??[]).filter(M3=>B0(M3)!=="tyre");if(z1.length===0)return!1;let t0=z1.some(M3=>!!M3.process);return z1.some(M3=>!!M3.setWords)||qs({kind:!1,brand:!1,process:t0},Z??[])},[o0,Z]),c0=Kt(()=>({lugs:HM(W??[]),sizes:FM(W??[]),finishes:WC(W??[])}),[W]);UR(()=>(c1(V,c0.lugs),b1(V,c0.sizes),$(V,c0.finishes),()=>{c1(V,[]),b1(V,[]),$(V,[])}),[c0,c1,b1,$,V]);let l0=B3("ProductGrid",_,"both"),X1=`${V} grid${l0.className} bg-[var(--catalog-grid-bg)] ${j}`,X2=o0?o0.length>0?Y2("div",{className:X1,style:l0.style,children:o0.map((z1,t0)=>B0(z1)==="tyre"?Y2(Ys,{item:z1,currency:x1,editing:d,fieldUsage:G},`tyre:${z1.slug}-${t0}`):Y2(o9,{wheel:z1,variant:"catalog"},`${z1.slug}-${t0}`))}):d?Y2("div",{className:"flex min-h-[320px] items-center justify-center rounded bg-surface-2 p-4 text-center",children:Y2("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:p("No products in \u201C{name}\u201D yet",{name:h?.name??""})})}):null:Y2(i,{className:X1,style:l0.style,minEmptyHeight:320}),Q1=o0?o0.length:null,d2=M5(S5(a)),d1=e||s||r||o?$t("div",{className:`${he} sticky top-[var(--sf-header-h,88px)] z-30 mb-[18px] flex items-center justify-between gap-4 max-[800px]:flex-wrap max-[800px]:gap-y-2 border-b border-line bg-bg/95 py-3 backdrop-blur-md ${Q?"":"-mx-[var(--sf-site-gutter,40px)] px-[var(--sf-site-gutter,40px)] max-[800px]:-mx-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]"}`,children:[$t("div",{className:"flex min-w-0 items-end gap-[21px] max-[800px]:flex-col max-[800px]:items-stretch max-[800px]:gap-3",children:[e&&Y2("span",{className:"font-mono text-[length:var(--size-label,13px)] leading-none uppercase tracking-[0.22em] text-fg-dim",children:M(e)}),s&&Y2("h2",{className:`${F81(c)} leading-none text-fg max-[800px]:leading-[1] [&>span]:block`,children:Y(s,!1)})]}),(r||o||Q1!==null)&&$t("div",{className:"flex items-center gap-5 max-[800px]:gap-3 min-[800px]:grow min-[800px]:justify-end",children:[r&&Y2("span",{className:"max-w-[340px] truncate font-display text-[length:var(--size-body,13px)] leading-[1.4] text-fg-dim max-[800px]:hidden min-[800px]:w-0 min-[800px]:grow min-[800px]:text-right",children:M(r)}),o&&$t(L1,{href:o.href,className:"inline-flex items-center gap-2 whitespace-nowrap font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:[M(o.text),Y2("span",{"aria-hidden":!0,children:"\u2192"})]}),Q1!==null&&$t("span",{className:"whitespace-nowrap font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:[Q1," ",Q1===1?d2.one:d2.many]})]})]}):null,$1=typeof l=="number"?l:120,u0=l6(w),P0=J6(V,u0),J0=$t(T81,{children:[N&&Y2("style",{children:`.${V} > *:nth-child(n+${u+1}){display:none}`}),P0&&Y2("style",{children:P0}),d1,X2,Y2(Ds,{editing:d})]});if(X0)return null;let q0=Y2("section",{...i1?{[ao]:U}:{},className:"relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-[var(--pg-pt)] pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-[70px] max-[800px]:pb-[70px]",style:{"--pg-pt":`${$1}px`,...J2(F)},children:Q?Y2("div",{style:$z(!1,v)??void 0,children:J0}):J0}),e1=W?q0:d?Y2(qR,{children:q0}):Y2(GR,{wheels:n,children:q0});return Y2(Ln,{imageBackgroundFill:j9(g,e7),spinOnHover:b??!0,coverIndex:f??1,indexBadge:u0,outline:z??r4,showBadge:k??!0,fieldUsage:Z,reserveEyebrow:I1,showCardPrice:H??!0,showCardFinishes:I??!0,showCardSizes:P??!1,showCardBuy:D??!1,showCardPage:E??!1,children:e1})}import{ProductFieldIcon as P81,TextSizeIcon as E81,ColumnsIcon as V81,ListIcon as N81,HashIcon as _81}from"efficient-easel/icons";import{jsx as pf}from"react/jsx-runtime";var uf={products:{type:"slot"}},KR={label:"Product Grid",fields:uf,defaultProps:{dynamic:!1,num:"",title:"",titleSize:kc,padTop:120,description:"",linkText:"",linkHref:"",columns:4,limit:8,showAll:!1,spinOnHover:!0,coverIndex:String(1),outline:r4,indexBadge:l4,showBadge:!0,source:null,fullWidth:!0,pageWidth:_9.default},render:e=>{if(e.dynamic)return pf(i9,{num:y(e.num,U0.num,e.puck),title:y(e.title,A.sectionHeading,e.puck),description:y(e.description,A.body,e.puck),columns:typeof e.columns=="number"?e.columns:3,relationship:q5,cardImage:e.cardImage,outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge??!0,imageBackground:Wy(e.imageBackground),showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage,editing:e.puck?.isEditing});let t=y(e.linkText,U0.link,e.puck),a=e.source,s=R2(e,"full"),c=O1(e.headPlacement)==="own-box",l=o=>c?void 0:o,r=pf(mf,{gap:e.gap,capWidth:s.mode==="page"?s.pageWidth:void 0,num:l(y(e.num,U0.num,e.puck)),title:l(y(e.title,A.sectionHeading,e.puck)),titleSize:e.titleSize,padTop:c?0:e.padTop,description:l(y(e.description,A.body,e.puck)),link:l(t?{text:t,href:a1(e.linkHref)||"#"}:void 0),products:e.products,wheels:e.wheels,source:a?.slug?a:void 0,catalog:e.catalog,kinds:e.kinds,fieldUsage:e.fieldUsage,columns:e.columns,limit:e.showAll?void 0:e.limit,editing:e.puck?.isEditing,imageBackground:e.imageBackground,cardImage:e.cardImage,spinOnHover:e.spinOnHover,coverIndex:Ft(e.coverIndex),outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge??!0,showCardPrice:e.showCardPrice,showCardFinishes:e.showCardFinishes,showCardSizes:e.showCardSizes,showCardBuy:e.showCardBuy,showCardPage:e.showCardPage});return s.mode==="page"?pf("div",{className:zs,children:r}):r}};import{jsx as Mc}from"react/jsx-runtime";var $R=x5({top:120,keys:{top:"padTop",bottom:"padBottom"},group:!1,only:"top"}),YR={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,Mc(P81,{})),_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),titleSize:g1("Heading size",Mc(E81,{}),Xn,kc),description:O("Body",A.body),_gProducts:x("Products"),kinds:Q9("Product types",we,"None \u2014 this section will be empty"),source:c2(rf),productList:N5("ProductGrid"),products:uf.products,_gLink:x("Link"),linkText:T("Button",U0.link),linkHref:H1("Link"),...Yl({bottomDefault:!1}),...ee(),...te(),_gLayout:x("Grid"),columns:s1("Columns",Mc(V81,{}),1,6,1,4),showAll:l1("Show all items",!1,Mc(N81,{})),limit:s1("Items to display",Mc(_81,{}),1,12,1,8),gap:Z3("ProductGrid"),...$R,...z5("full")},resolveFields:(e,{fields:t,parent:a})=>{let s=W1(t,a,U1),c=e.props,l=G1(s,c.headPlacement,Z1.ProductGrid.headRows);if(!M2()){let o={...l};return delete o._gDynamic,delete o.dynamic,o}if(c.dynamic){let o=new Set([...Jl("Content"),"_gDynamic","dynamic","_gHeader","num","title","titleSize","description","_gLayout","columns",...Object.keys($R),...ae,...se,...ce,...le,...dw,...uw,...gw]),i={};for(let[n,h]of Object.entries(l))o.has(n)&&(i[n]=h);return P7(i,R2(e?.props??{},"full"))}let r={...l};return _r(c.source)||delete r.kinds,c.source?.slug&&(delete r.products,delete r.productList),c.showAll&&delete r.limit,F2(c.linkText).hidden&&delete r.linkHref,P7(r,R2(e?.props??{},"full"))}};import{SettingsField as I81}from"efficient-easel/panel";import{FieldSelect as R81}from"efficient-easel/fields";import{CategoryIcon as B81}from"efficient-easel/icons";import{useEffect as Z81,useMemo as df,useState as D81}from"react";import{jsx as Yt,jsxs as q81}from"react/jsx-runtime";var vf=e=>e.kind==="tyre"?"tyre":"alloy-wheel",Sc=e=>`${e.kind}:${e.slug}`;function XR(e){return e.kind==="tyre"?{kind:"tyre",slug:e.slug,name:e.name,description:e.description??"",eyebrow:e.brand??"",image:e.coverImage??null,finishes:[],prices:e.prices,href:`/tyres/${e.slug}`}:{kind:"wheel",slug:e.slug,name:e.name,description:e.description??"",eyebrow:e.process,image:e.coverImage??null,finishes:e.finishes.filter(r7).map(t=>({name:t.name,color:t.color,src:t.src})),prices:e.prices,href:`/wheels/${e.slug}`}}function gf(e,t){let a=vf(t);return e.find(s=>s.kind===a&&s.slug===t.slug)}function JR(e){return QR(e)?p("Category \u2014 wheels only"):p("Category")}var QR=e=>!!(e?.some(t=>t.kind==="tyre")&&e.some(t=>t.kind==="alloy-wheel")),O81=e=>p3("{n} size","{n} sizes",e);function G81({rows:e,category:t,value:a,loading:s,currency:c}){let l=e??[],r=l.filter(d=>d.kind==="alloy-wheel"),o=l.filter(d=>d.kind==="tyre"),i=r.length>0&&o.length>0,n={value:"",label:s?p("Loading\u2026"):p("Pick a product\u2026")},h=a&&!(e!==null&&gf(e,a))?[{value:Sc({kind:vf(a),slug:a.slug}),label:s?a.name:p("{name} (unavailable)",{name:a.name})}]:[],m=Bv(r,t).map(d=>{let v=h7(d.prices[c],d.msrpPrices?.[c]);return{value:Sc({kind:"alloy-wheel",slug:d.slug}),label:d.name,...i?{group:p("Wheels")}:{},thumb:d.coverImage??null,...v.priced?{meta:B2(v.unit,c)}:{}}}),u=o.map(d=>({value:Sc(d),label:d.name,...i?{group:p("Tyres")}:{},thumb:d.coverImage??null,meta:O81(d.variantCount)}));return[n,...h,...m,...u]}function ff({value:e,onChange:t}){let a=C4(),{rows:s,loading:c,refreshing:l,errored:r,refresh:o}=lt({load:kt,resolve:gf,snapshot:XR,value:e,onChange:t}),[i,n]=D81(null);Z81(()=>{let H=!1;return f4().then(I=>{H||n(I)}),()=>{H=!0}},[]);let{currency:h}=d0(),m=df(()=>s&&e?gf(s,e)??null:null,[s,e]),u=df(()=>(s??[]).filter(H=>H.kind==="alloy-wheel"),[s]),{category:d,setCategory:v,categoryNames:g}=J7(u,i,m?.kind==="alloy-wheel"?m:null),b=!!e?.slug&&s!==null&&!m,f=df(()=>G81({rows:s,category:d,value:e,loading:c,currency:h}),[s,d,e,c,h]),w=H=>{if(!H){t(null);return}let I=(s??[]).find(P=>Sc(P)===H);I&&t(XR(I))},z=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},k=r?"error":l?"loading":"idle",S=r?p("Couldn\u2019t reach the product catalog."):l?p("Syncing from the catalog\u2026"):b?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):p("Linked to \u201C{name}\u201D \xB7 title, description, category, price & image follow the product.",{name:e?.name??""});return q81("div",{children:[Yt(O9,{label:"Product",options:f,fallback:"",value:e?Sc({kind:vf(e),slug:e.slug}):"",onChange:w,placeholder:"Search products\u2026"}),Yt(I81,{label:JR(s),icon:Yt(B81,{}),children:Yt(R81,{value:d,ariaLabel:JR(s),onChange:v,readOnly:c,options:[{label:QR(s)?p("All wheel categories"):p("All products"),value:I6},...g.map(H=>({label:H,value:H}))]})}),e?.slug?Yt(E4,{status:k,statusText:S,onRefresh:o,busy:l,edit:{label:p("Edit product \u270E"),onClick:z},hint:p("The whole hero comes from the product record \u2014 title, price, pictures, options and Add to Cart. Edit the product in the Products database and this hero updates to match.")}):Yt("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("This hero always shows a real product. Pick one to fill the title, price, pictures, options and Add to Cart from the catalog.")})]})}import{useEffect as eB,useMemo as tB,useState as bf}from"react";import{SettingsField as W81}from"efficient-easel/panel";import{FieldSelect as U81}from"efficient-easel/fields";import{Fragment as X81,jsx as Jn}from"react/jsx-runtime";var d9="__all__",xf="";function j81(e){return(e??[]).filter(t=>zc.includes(t.kind))}var K81=Zl("one row per level from one list \u2014 the gutter would repeat one mark down the column and say nothing; the group heading carries it once GG, 2026-09-23"),Qn=e=>typeof e.brand=="string"?e.brand.trim():"";function aB(e,t){if(e.kind!=="alloy-wheel"||!t)return;let a=e,s=h7(a.prices?.[t],a.msrpPrices?.[t]);return s.priced?B2(s.unit,t):void 0}function $81({rows:e,brand:t,kind:a,slug:s,loading:c=!1,currency:l=""}){let r=e??[],o=[...new Set(r.map(Qn).filter(Boolean))].sort((g,b)=>g.localeCompare(b)),i=t===d9?r:r.filter(g=>Qn(g)===t),n=D3.filter(g=>i.some(b=>b.kind===g)),h=a===d9?i:i.filter(g=>g.kind===a),m=new Set(h.map(g=>g.kind)).size>1,u=h.map(g=>({value:g.slug,label:g.name,...m?{group:p(h4[g.kind])}:{},thumb:g.coverImage??null,...aB(g,l)?{meta:aB(g,l)}:{}})),d=s&&!h.some(g=>g.slug===s)?[{value:s,label:c?s:p("{slug} (not in this list)",{slug:s})}]:[],v=[];return o.length>1&&v.push({key:"brand",label:p("Brand"),options:[{value:d9,label:p("All brands")},...o.map(g=>({value:g,label:g}))]}),n.length>1&&v.push({key:"kind",label:p("Product type"),options:[{value:d9,label:p(QC)},...n.map(g=>({value:g,label:p(h4[g])}))]}),v.push({key:"product",label:p("Product"),options:[{value:xf,label:c?p("Loading\u2026"):p("Generic placeholder")},...d,...u]}),v}function zf(){let[e,t]=bf(null),[a,s]=bf(d9),[c,l]=bf(d9),r=Cv(),o=Nn()??xf;eB(()=>{let u=!1;return kt().then(d=>{u||t(d)}).catch(()=>{u||t([])}),()=>{u=!0}},[]);let{currency:i}=d0(),n=tB(()=>j81(e),[e]);eB(()=>{let u=n.find(d=>d.slug===o);u&&Qn(u)&&s(Qn(u))},[o,n]);let h=tB(()=>$81({rows:n,brand:a,kind:c,slug:o,loading:e===null,currency:i}),[n,a,c,o,e,i]),m={brand:u=>{s(u),l(d9)},kind:l,product:u=>AI(r,u)};return Jn(X81,{children:h.map(u=>Jn(W81,{label:u.label,icon:jy(K81),hint:u.key==="product"?p(Y81):void 0,children:u.key==="product"?Jn(O9,{bare:!0,label:u.label,options:u.options,fallback:xf,value:o,onChange:m.product,placeholder:p("Search your catalog\u2026")}):Jn(U81,{value:u.key==="brand"?a:c,ariaLabel:u.label,onChange:d=>m[u.key](d),options:u.options.map(d=>({label:d.label,value:d.value}))})},u.key))})}var Y81="Only for looking at while you design. Shoppers always see the product they opened.";import{PlacementIcon as t91,CarIcon as a91,LayoutIcon as s91,ColumnWidthsIcon as c91,AlignLeftIcon as l91,SpecTableIcon as r91,DollarIcon as o91,GridIcon as i91,ImageIcon as n91}from"efficient-easel/icons";var Xt="top",yf=[{label:"Under the title",value:"top"},{label:"Below the specs",value:"belowSpecs"}];function sB(e){return I2(yf,Xt,e)}var J81=["split","imageRight","stacked"],e8="split";function Jt(e){return J81.includes(e)?e:e8}var g9="left";function eh(e){return e==="center"?"center":"left"}var wf=35,Cf=70,t8=50;function th(e){let t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?Math.min(Cf,Math.max(wf,Math.round(t))):t8}var Q81=["main","thumbs","tiled"],a8="thumbs";function ah(e){return Q81.includes(e)?e:a8}var e91=["contain","cover"],s8="contain";function sh(e){return mt(e,s8)}function cB(){return e91.map(e=>({label:xd[e],value:e}))}function lB(e,t){return t?"contain":e}import{jsx as Q5}from"react/jsx-runtime";var h91=()=>({type:"custom",render:()=>Q5(zf,{})});function m91(e){let t=e?.data?.root;return zc.includes(sL(t?.props))}var rB={fields:{_gSource:x("Product"),source:c2(ff),_gPreview:x(Xl),previewPick:h91(),_gPriceLine:x("Price"),pricePlacement:g1("Price position",Q5(t91,{}),yf,Xt),_gBehaviour:x("Behavior"),showVehicleFitment:l1("Vehicle fitment",!0,Q5(a91,{})),_gArrangement:x("Arrangement"),heroLayout:v1("Layout",Q5(s91,{}),[{label:"Split",value:"split"},{label:"Image right",value:"imageRight"},{label:"Stacked",value:"stacked"}],e8),imageRatio:s1("Image / buy ratio",Q5(c91,{}),wf,Cf,1,t8,"%"),textAlign:v1("Alignment",Q5(l91,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"}],g9),_gShow:x("Show in the buy box"),showSpecTable:l1("Spec table",!0,Q5(r91,{})),showPriceQuote:l1("Price / quote",!0,Q5(o91,{})),_gImageGallery:x("Image gallery"),galleryMode:v1("Gallery",Q5(i91,{}),[{label:"Main only",value:"main"},{label:"Main + thumbs",value:"thumbs"},{label:"Tiled",value:"tiled"}],a8),imageFit:v1(yi,Q5(n91,{}),cB(),s8)},resolveFields:(e,{fields:t,appState:a})=>{let s=e.props,c={...t};if(Jt(s.heroLayout)==="stacked"&&delete c.imageRatio,!M2())return delete c._gPreview,delete c.previewPick,c;let l=c,r=new Set([...ae,...se,...ce,...le,"_gPreview","previewPick","_gPriceLine","pricePlacement","_gBehaviour","showVehicleFitment","_gArrangement","heroLayout","imageRatio","textAlign","_gShow","showSpecTable","showPriceQuote","_gImageGallery","galleryMode","imageFit"]);m91(a)||(r.delete("_gPreview"),r.delete("previewPick"));let o={};for(let[i,n]of Object.entries(l))r.has(i)&&(o[i]=n);return re(o)}};import{Button as u91}from"efficient-shell/ui";import{useEasel as d91}from"efficient-easel/easel";import{useEasel as p91}from"efficient-easel/easel";function ch(){let{selectedItem:e,getSelectorForId:t,getItemById:a}=p91(i=>i),s=e?.props?.id;if(!s)return null;let c=t(s)?.zone,l=c&&c.includes(":")?c.split(":")[0]:null,o=(l?a(l):void 0)?.props?.source;return o?.slug?o.name||"the selected source":null}import{jsx as oB,jsxs as g91}from"react/jsx-runtime";function kf(){let e=C4(),t=Ui(),{selectedItem:a}=d91(o=>o),s=a?.props?.code??"",c=(t??[]).find(o=>o.slug===s)??null,l=ch()!==null;return!c||l?null:g91("div",{className:"sf-blogsource",children:[oB(u91,{variant:"secondary",size:"sm",className:"sf-blogsource-action",onClick:()=>e.send("storefront-editor:open-product",{slug:c.slug,name:c.name}),children:p("Edit product \u270E")}),oB("p",{className:"es-field-hint sf-hint-keep",children:p("Price and details come from the product record \u2014 edit them in the Products database and this block updates to match. The name follows the product\u2019s design name unless it\u2019s overridden per storefront in {place}.",{place:p("Storefront \u2192 Catalog")})})]})}import{useEasel as v91}from"efficient-easel/easel";import{SettingsField as f91}from"efficient-easel/panel";import{FieldSelect as b91}from"efficient-easel/fields";import{FinishIcon as x91}from"efficient-easel/icons";import{jsx as Lc,jsxs as z91}from"react/jsx-runtime";function Mf({value:e,onChange:t}){let a=Ui(),{selectedItem:s}=v91(n=>n),c=s?.props?.code??"",l=a===null,r=(a??[]).find(n=>n.slug===c)?.finishes??[],o=r.filter(r7).map(n=>n.name),i=o.includes(e??"")?e:"";return z91("div",{children:[Lc(f91,{label:p("Finish"),icon:Lc(x91,{}),hint:p("Pinning one overrides the section\u2019s Cover image."),children:Lc(b91,{value:i,ariaLabel:p("Finish"),onChange:t,readOnly:l||r.length===0,options:[{label:l?p("Loading\u2026"):r.length===0?p("No finishes on this product"):p("Default (the product's default finish)"),value:""},...r.map(n=>({label:n.src?n.name:p("{name} \u2014 no image",{name:n.name}),value:n.name,disabled:!n.src}))]})}),!l&&r.length===0&&c&&Lc("p",{className:"es-field-hint sf-hint-keep",children:p("This product has no finishes yet, so its card falls back to the product image \u2014 or an empty placeholder when it has none. Add finishes to the product record, then give each one an image.")}),!l&&r.length>0&&o.length===0&&Lc("p",{className:"es-field-hint sf-hint-keep",children:p("None of this product\u2019s finishes has an image, so none can be shown on the card. Add an image to a finish on the product record to pick it here.")})]})}import{SettingsField as iB}from"efficient-easel/panel";import{FieldSelect as nB}from"efficient-easel/fields";import{BlockProductIcon as y91,CategoryIcon as w91}from"efficient-easel/icons";import{useEffect as C91,useMemo as k91,useState as hB}from"react";import{jsx as c8,jsxs as mB}from"react/jsx-runtime";function Sf({value:e,onChange:t}){let[a,s]=hB(null),[c,l]=hB(null);C91(()=>{let v=!1;return i3().then(g=>{v||s(g)}),f4().then(g=>{v||l(g)}),()=>{v=!0}},[]);let r=k91(()=>a&&e?a.find(v=>v.slug===e)??null:null,[a,e]),{category:o,setCategory:i,categoryNames:n,filtered:h}=J7(a,c,r),m=a===null,u=ch(),d=u!==null;return mB("div",{children:[d&&c8("p",{className:"es-field-hint sf-hint-keep",style:{marginBottom:8},children:R5(p("Disabled because this grid\u2019s {source} is set to \u201C{name}\u201D. The grid fills itself from that source automatically. To pick wheels here, set {source} back to \u201CNone\u201D.",{name:u??""}),{source:c8("strong",{children:p("Products source")})})}),mB("div",{className:d?"sf-locked":void 0,children:[c8(iB,{label:p("Category"),icon:c8(w91,{}),children:c8(nB,{value:o,ariaLabel:p("Category"),onChange:i,readOnly:m||d,options:[{label:p("All products"),value:I6},...n.map(v=>({label:v,value:v}))]})}),c8(iB,{label:p("Product"),icon:c8(y91,{}),children:c8(nB,{value:e??"",ariaLabel:p("Product"),onChange:t,readOnly:m||d,options:[{label:m?p("Loading\u2026"):h.length===0?p("No products in this category"):p("Select a product\u2026"),value:""},...h.map(v=>({label:v.name,value:v.slug}))]})})]})]})}import{jsx as Lf}from"react/jsx-runtime";var pB={fields:{code:{type:"custom",render:({value:e,onChange:t})=>Lf(Sf,{value:e,onChange:t})},finish:{type:"custom",render:({value:e,onChange:t})=>Lf(Mf,{value:e,onChange:t})},_editProduct:{type:"custom",render:()=>Lf(kf,{})}},resolveFields:(e,{fields:t,parent:a})=>{let s={...t},c=a?.props?.source,l=typeof e.props.code=="string"?e.props.code:"";return(c?.slug||!l)&&(delete s.finish,delete s._editProduct),s}};import{EyeIcon as S91,HashIcon as L91,ColumnsIcon as A91}from"efficient-easel/icons";import{jsx as M91}from"react/jsx-runtime";var Ac={footnote:"A note about how these are matched.",footnoteLinkText:"Enquire"},uB={label:"Related Products",defaultProps:{num:"",title:"",description:"",footnote:"",footnoteLinkText:"",footnoteLinkHref:"",cardCount:fc,columns:3,relationship:q5},render:e=>{let t=O1(e.headPlacement)==="own-box",a=c=>t?void 0:c,s=R2(e,"full");return M91(i9,{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,capWidth:s.mode==="page"?s.pageWidth:void 0,columns:typeof e.columns=="number"?e.columns:3,cardCount:Tn(e.cardCount),relationship:typeof e.relationship=="string"?e.relationship:q5,footnote:y(e.footnote,Ac.footnote,e.puck),footnoteLinkText:y(e.footnoteLinkText,Ac.footnoteLinkText,e.puck),footnoteLinkHref:a1(e.footnoteLinkHref),cardImage:e.cardImage,coverIndex:Ft(e.coverIndex),imageBackground:e.imageBackground,spinOnHover:e.spinOnHover,outline:f8(e.outline),indexBadge:l6(e.indexBadge),showBadge:e.showBadge,editing:e.puck?.isEditing})}};import{jsx as Af}from"react/jsx-runtime";var dB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:O("Heading",A.sectionHeading),description:O("Body",A.body),_gFootnote:x("Footnote"),footnote:O("Footnote",Ac.footnote),footnoteLinkText:T("Footnote button",Ac.footnoteLinkText),footnoteLinkHref:H1("Footnote link"),...ee(),...te(),_gLayout:x("Grid"),relationship:g1("Show",Af(S91,{}),hI,q5),cardCount:s1("Cards to show",Af(L91,{}),pv,bc,1,fc),columns:s1("Columns",Af(A91,{}),2,4,1,3),...z5("full")},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,c={...t};if(uI(typeof s.relationship=="string"?s.relationship:q5))for(let l of pI)delete c[l];return G1(W1(c,a,U1),s.headPlacement,Z1.RelatedProducts.headRows)}};import{StylesIcon as H91}from"efficient-easel/icons";import{jsx as F91}from"react/jsx-runtime";var gB={fields:{_gStyle:x("Style"),style:v1("Show as",F91(H91,{}),Mn,"icon")}};import{SettingsField as vB}from"efficient-easel/panel";import{FieldSelect as fB}from"efficient-easel/fields";import{BlockProductIcon as T91,CategoryIcon as P91}from"efficient-easel/icons";import{useEffect as E91,useMemo as V91,useState as N91}from"react";import{jsx as l8,jsxs as _91}from"react/jsx-runtime";function bB(e){return{slug:e.slug,name:e.name,process:e.process,spokes:e.spokes,mesh:e.mesh,spec:e.spec,finishes:e.finishes.map(t=>({name:t.name,image:s4(t.angles?.[0]??t.src)??null}))}}function Hf({value:e,onChange:t}){let a=C4(),{rows:s,loading:c,refreshing:l,errored:r,refresh:o}=lt({load:i3,resolve:(S,H)=>S.find(I=>I.slug===H.slug),snapshot:bB,value:e,onChange:t}),[i,n]=N91(null);E91(()=>{let S=!1;return f4().then(H=>{S||n(H)}),()=>{S=!0}},[]);let h=V91(()=>s&&e?.slug?s.find(S=>S.slug===e.slug)??null:null,[s,e?.slug]),{category:m,setCategory:u,categoryNames:d,filtered:v}=J7(s,i,h),g=!!e?.slug&&s!==null&&!h,b=S=>{if(!S){t(null);return}let H=(s??[]).find(I=>I.slug===S);H&&t(bB(H))},f=()=>{e?.slug&&a.send("storefront-editor:open-product",{slug:e.slug,name:e.name})},w=!!e?.spec,z=r?"error":l?"loading":"idle",k=r?p("Couldn\u2019t reach the product catalog."):l?p("Syncing from the catalog\u2026"):g?p("Linked to \u201C{name}\u201D \u2014 no longer in the catalog.",{name:e?.name??""}):w?p("Linked to \u201C{name}\u201D \xB7 every spec row follows the product.",{name:e?.name??""}):p("Linked to \u201C{name}\u201D \u2014 this product has no spec data yet.",{name:e?.name??""});return _91("div",{children:[l8(vB,{label:p("Category"),icon:l8(P91,{}),children:l8(fB,{value:m,ariaLabel:p("Category"),onChange:u,readOnly:c,options:[{label:p("All products"),value:I6},...d.map(S=>({label:S,value:S}))]})}),l8(vB,{label:p("Product"),icon:l8(T91,{}),children:l8(fB,{value:e?.slug??"",ariaLabel:p("Product"),onChange:b,readOnly:c,options:[{label:c?p("Loading\u2026"):p("None (write the rows yourself)"),value:""},...g?[{label:p("{name} (unavailable)",{name:e.name}),value:e.slug}]:[],...v.map(S=>({label:S.name,value:S.slug}))]})}),e?.slug?l8(E4,{status:z,statusText:k,onRefresh:o,busy:l,edit:{label:p("Edit product \u270E"),onClick:f},hint:p("Every spec row (lug count, bolt pattern, offset, center bore, load rating, bump profile\u2026) comes from the product record \u2014 edit its part numbers in the Products database and this table updates to match. You still choose which finish to picture and an optional size.")}):l8("p",{className:"es-field-hint sf-hint-keep",style:{marginTop:7},children:p("Pick a product to fill the spec table from the catalog, or keep \u201CNone\u201D to write the rows yourself.")})]})}import{ProductFieldIcon as se1,FinishIcon as FB,DiagramIcon as ce1}from"efficient-easel/icons";import{useId as B91,useState as Z91}from"react";import{jsx as lh,jsxs as I91}from"react/jsx-runtime";function Ff({id:e}){return I91("defs",{children:[lh("marker",{id:`${e}-L`,viewBox:"0 0 10 10",refX:2,refY:5,markerWidth:6,markerHeight:6,orient:"auto",children:lh("path",{d:"M10,0 L0,5 L10,10 z",fill:"currentColor"})}),lh("marker",{id:`${e}-R`,viewBox:"0 0 10 10",refX:8,refY:5,markerWidth:6,markerHeight:6,orient:"auto",children:lh("path",{d:"M0,0 L10,5 L0,10 z",fill:"currentColor"})})]})}import{jsx as R91}from"react/jsx-runtime";function Tf({nodeId:e,children:t}){return R91(st,{nodeId:e,sectionType:"SpecTable",children:t})}import{Fragment as G91,jsx as j0,jsxs as E3}from"react/jsx-runtime";function P3(e,t){return e?{[Fw]:t}:{}}function D91({editing:e,nodeId:t,children:a}){return!e||!t?j0(G91,{children:a}):j0(Tf,{nodeId:t,children:a})}function xB({row:e,topBorder:t,editing:a}){return E3("div",{className:`flex items-baseline justify-between gap-6 py-3.5 font-mono text-[length:var(--size-label,14px)] tracking-[0.05em] ${t?"border-t border-line":""}`,children:[j0("span",{...P3(a,"rowLabel"),className:"uppercase text-fg-dim",children:e.label}),j0("span",{...P3(a,"rowValue"),className:`text-right ${e.accent?"text-accent":"text-fg"}`,children:e.value})]})}function O91({diagram:e,editing:t}){let[a,s]=Z91(!1),c=`spec-${B91().replace(/:/g,"")}`,{wheelName:l,imageSrc:r,diameter:o,width:i,offset:n,holes:h,pcd:m,spokes:u,mesh:d,bore:v}=e,g=!!r&&!a;return E3("div",{className:"sf-card bg-surface p-6 max-[1100px]:mt-8",children:[j0("div",{...P3(t,"diagramTitle"),className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.25em] text-fg-dim",children:"Wheel Dimension Diagram"}),E3("div",{className:"relative flex aspect-square items-center justify-center",children:[E3("svg",{viewBox:"0 0 320 320",className:"absolute inset-0 h-full w-full text-fg-dim",fill:"none",stroke:"currentColor",children:[j0("line",{x1:40,y1:20,x2:280,y2:20,strokeWidth:1,markerStart:`url(#${c}-L)`,markerEnd:`url(#${c}-R)`}),j0("line",{x1:40,y1:15,x2:40,y2:25,strokeWidth:1}),j0("line",{x1:280,y1:15,x2:280,y2:25,strokeWidth:1}),j0(Ff,{id:c})]}),g?j0("img",{src:r,alt:`${l} \u2014 face`,onError:()=>s(!0),loading:"lazy",className:"relative z-[1] block h-[80%] w-[80%] object-contain"}):j0(C8,{spokes:u,mesh:d,className:"relative z-[1] block h-[72%] w-[72%] text-accent"}),E3("span",{...P3(t,"diagramCallout"),className:"absolute top-1.5 left-1/2 z-20 -translate-x-1/2 bg-surface px-2 font-mono text-[length:var(--size-label,12px)] tracking-[0.2em] text-accent",children:["\u2300 ",ep(o)]}),E3("span",{...P3(t,"diagramCallout"),className:"absolute bottom-1.5 left-1/2 z-20 -translate-x-1/2 bg-surface px-2 font-mono text-[length:var(--size-label,12px)] tracking-[0.2em] text-fg",children:["WIDTH ",ep(i)]})]}),E3("div",{className:"mt-4 grid grid-cols-5 gap-3 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.2em] text-fg-dim max-[480px]:grid-cols-3",children:[E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Holes"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:h})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"PCD"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:m})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Spokes"}),E3("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:[u,d?" + Mesh":""]})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"Bore"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-fg",children:v})]}),E3("div",{children:[j0("div",{...P3(t,"diagramStatLabel"),className:"text-fg-dim/60",children:"ET"}),j0("div",{...P3(t,"diagramStatValue"),className:"mt-1 text-accent",children:n})]})]})]})}function Qt({num:e,title:t,description:a,rows:s,diagram:c,editing:l=!1,omitHead:r=!1,nodeId:o,...i}){let n=(s??[]).filter(m=>(m?.label??"").trim()||(m?.value??"").trim()),h=n.length>0?n:l?[{label:p("Label"),value:p("Value")}]:[];return j0("section",{className:E0(i)?r?"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":r?"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:E3(D91,{editing:l,nodeId:o,children:[r?null:j0(s0,{num:e?M(e):void 0,title:t?Y(t,!1):void 0,description:a?M(a):void 0,accent:!0}),c?E3("div",{className:"grid grid-cols-[1fr_400px] gap-12 max-[1100px]:grid-cols-1",children:[j0("div",{children:h.map((m,u)=>j0(xB,{row:m,topBorder:u>0,editing:l},u))}),j0(O91,{diagram:c,editing:l})]}):j0("div",{className:"grid grid-cols-2 gap-x-16 max-[900px]:grid-cols-1",children:h.map((m,u)=>j0(xB,{row:m,topBorder:!0,editing:l},u))})]})})}import{useEffect as j91,useState as K91}from"react";function rh(e){return e.rollingNoiseDb===null?null:e.rollingNoiseClass?`${e.rollingNoiseDb} dB (${e.rollingNoiseClass})`:`${e.rollingNoiseDb} dB`}function q91(e){return`/api/tire-catalog/models/${encodeURIComponent(e)}/`}function W91(e,t,a){let s=(a.eprel_url??"").trim();if(!s)return null;let c=(a.energy_class??"").trim(),l=(a.wet_grip_class??"").trim(),r=typeof a.external_rolling_noise_value=="number"?a.external_rolling_noise_value:null;return!c&&!l&&r===null?null:{size:e,registrationNumber:t,fuelClass:c,wetGripClass:l,rollingNoiseDb:r,rollingNoiseClass:(a.external_rolling_noise_class??"").trim(),iceGrip:a.ice_tire===!0,severeSnow:a.severe_snow_tire===!0,loadIndicator:(a.load_indicator??"").trim(),eprelUrl:s}}async function U91(e){let t=(e.eprelRegistrationNumber??"").trim();if(!t)return null;try{let a=await o7(q91(t),{baseUrl:gr});return W91(e.size,t,a)}catch{return null}}async function zB(e){return(await Promise.all(e.map(U91))).filter(a=>a!==null)}function oh(e){let[t,a]=K91([]),s=e.map(c=>c.eprelRegistrationNumber??"").join(",");return j91(()=>{let c=!0;return zB(e).then(l=>{c&&a(l)}),()=>{c=!1}},[s]),t}var $91={"haste-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"force-6":{lugs:6,sizes:[20,22,24],widths:[9,9.5,10],pcds:["6\xD7135","6\xD7139.7","6\xD7135-139.7"],etRange:[20,25],centreBores:[87.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL82",bumpProfile:"H2",rimProfile:"34\xD716\xD760\xB0"},"speed-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vortex-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vector-iii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[32,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"blitz-ii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"thrust-ii":{lugs:5,sizes:[18,19,20,22],widths:[8,8.5,9.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[33,42],centreBores:[71.5,72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"torque-ii":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[42,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"turbine-ii":{lugs:5,sizes:[20,22],widths:[8.5,10,10.5],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[71.5,72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},blitz:{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"frixion-5":{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP595AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"frixion-6":{lugs:6,sizes:[20,22,24],widths:[9,9.5,10],pcds:["6\xD7135","6\xD7139.7","6\xD7135-139.7"],etRange:[20,25],centreBores:[87.1],loadRating:"690\u2013880 kg / 1,520\u20131,940 lbs",cap:"CP506AL82",bumpProfile:"EH2+",rimProfile:"34\xD716\xD760\xB0"},rotor:{lugs:5,sizes:[20,22],widths:[8.5,9,10,10.5],pcds:["5\xD7112-114.3","5\xD7115","5\xD7120","5\xD7127"],etRange:[15,40],centreBores:[71.5,72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP509PS73",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},"vector-ii":{lugs:5,sizes:[19,20],widths:[8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[38,42],centreBores:[72.6,73.1],loadRating:"880 kg / 1,940 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"},torque:{lugs:5,sizes:[18,19,20],widths:[8,8.5,9.5,10],pcds:["5\xD7112-114.3","5\xD7120"],etRange:[35,42],centreBores:[72.6,73.1],loadRating:"690 kg / 1,520 lbs",cap:"CP506AL68",bumpProfile:"EH2+",rimProfile:"32\xD715\xD760\xB0"}};function yB(e){return $91[e]}function r8(e){return e&&e.trim()?e:"\u2014"}function wB(e){return e[0]?.replace(/^\s*\d+\s*[×x]\s*/,"")||"\u2014"}function CB(e,t,a,s,c){let l=_e(c?.boltPattern).holes,r=l!=null&&l>0?l:e.lugs,o=Ba(r),i=e.pcds.length?e.pcds.join(" \xB7 "):"\u2014",n=e.centreBores.length?`${e.centreBores.join(" / ")} mm`:"\u2014",h=e.etRange.length>=2?Pr(e.etRange[0],e.etRange[1]):"\u2014",m=s??"",u=c?js(c):"\u2014";return{rows:[{label:"Your Selection",value:"\u2014",accent:!0},{label:"Finish",value:a,fieldKey:"wheel_finish_ref"},{label:"Size",value:m},{label:"Wheel Spec",value:u},{label:"Lug Count",value:r8(o&&`${o}-lug`),fieldKey:"holes"},{label:"Bolt Pattern",value:i,fieldKey:"bolt_pattern"},{label:"Offset (ET)",value:h,fieldKey:"et"},{label:"Process",value:r8(t),fieldKey:Se},{label:"Centre Bore",value:n,fieldKey:"center_bore"},{label:"Load Rating",value:r8(e.loadRating),fieldKey:"load_rating"},{label:"Bump Profile",value:r8(e.bumpProfile),fieldKey:"hump"},{label:"Rim Profile",value:r8(e.rimProfile),fieldKey:"flange"},{label:"Cap Code",value:r8(e.cap),fieldKey:"cap_code"}],size:m}}function Pf(e){return e.length?e[Math.ceil(e.length/2)-1]:void 0}function Y91(e,t){let a=e?.diameter??Pf(t?.sizes??[]),s=e?.width??Pf(t?.widths??[]),c=t?.etRange??[],[l,r]=c,o=e?.et??(c.length>=2&&l===r?l:void 0),i=n=>r8(n!=null?P2(n):void 0);return{diameter:i(a),width:i(s),offset:i(o)}}function kB(e,t){let a=e?.centreBore??Pf(t.centreBores);return{...Y91(e,t),bore:r8(a!=null?`${a} mm`:void 0)}}function MB(e){return{slug:e.slug,name:e.name,process:e.process,spokes:e.spokes,mesh:e.mesh,spec:e.spec??null,finishes:e.finishes.map(t=>({name:t.name,image:t.src||t.angles?.[0]||null})),coverImage:e.coverImage??null,variants:e.variants}}function ih(e,t,a){let s=e?.spec;if(!e||!s)return{rows:[],diagram:null};let c=e.finishes.find(h=>h.name===t)??e.finishes[0],l=At(e.variants??[],c?.name,a),{rows:r,size:o}=CB(s,e.process,c?.name??"\u2014",a,l),i=kB(l,s),n={wheelName:e.name,imageSrc:c?.image??e.coverImage??null,...i,holes:Ba(s.lugs),pcd:wB(s.pcds),spokes:e.spokes,mesh:e.mesh};return{rows:r,diagram:n}}function SB(e,t,a){let s=_n(e),c=yB(e);if(!s||!c)return{rows:[],diagram:null};let l=Wt(e),r=s.finishes.find(m=>m.name===t)??s.finishes[0],{rows:o,size:i}=CB(c,s.process,r?.name??"\u2014",a,void 0),n=kB(void 0,c),h={wheelName:s.name,imageSrc:r?.angles?.[0]??r?.src??null,...n,holes:l[0]?.holes?.toString()??Ba(c.lugs),pcd:l[0]?.pcd??wB(c.pcds),spokes:s.spokes,mesh:s.mesh};return{rows:o,diagram:h}}function X91(e){let{brand:t,variant:a,euLabel:s}=e;if(!a)return[];let c=n4(a.size),l=a.specs,r=l;return[["size","Size",a.size],["section_width","Section Width",c?`${c.width} mm`:""],["aspect_ratio","Aspect Ratio",c?`${c.profile}`:""],["rim_diameter","Rim Diameter",c?`${c.rim}"`:""],["construction","Construction",l.construction],["load_index","Load Index",l.loadIndex],["speed_rating","Speed Rating",l.speedRating],["max_load_lbs","Max Load",r.maxLoad??""],["max_psi","Max Pressure",r.maxPressure??""],["tread_depth","Tread Depth",r.treadDepth??""],["overall_diameter","Overall Diameter",r.overallDiameter??""],["tread_pattern","Tread Pattern",l.treadPattern],["tire_type","Type",l.tireType],["brand","Manufacturer",t],["","Fuel Efficiency",s?.fuelClass??""],["","Wet Grip",s?.wetGripClass??""],["","Noise",s&&rh(s)||""],["","Snow Grip",s?.severeSnow?"Yes":""],["","Ice Grip",s?.iceGrip?"Yes":""],["","Reinforced",s?.loadIndicator??""]]}function LB(e){let t=[];for(let[a,s,c]of X91(e)){let l=(c??"").trim();l&&t.push(a?{label:s,value:l,fieldKey:a}:{label:s,value:l})}return{rows:t}}import{jsx as nh}from"react/jsx-runtime";var J91=["alloy-wheel","tyre"],Q91=[],ee1=[];function te1(e,t,a){let s=e.variants??[];return(t?s.find(c=>c.sku===t):void 0)??(a?s.find(c=>c.size===a):void 0)??s[0]??null}function Ef(e){return nh(z2,{kinds:J91,type:"SpecTable",editing:e.editing,children:nh(ae1,{...e})})}function ae1({num:e,title:t,description:a,showDiagram:s=!0,editing:c=!1,nodeId:l,omitHead:r=!1}){let o=$0(),i=z3(c&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null,m=oh(h?.variants??Q91),u=o?.fieldUsage??ee1;if(h){let f=te1(h,o?.selection.part?.id,o?.selection.shown.size),w=m.find(k=>k.size===f?.size)??null,z=LB({brand:h.brand,variant:f,euLabel:w});return nh(Qt,{num:e,title:t,description:a,rows:Jm(z.rows,u),diagram:null,editing:c,nodeId:l,omitHead:r})}let d=n?.kind==="alloy-wheel"?n.source:null,v=o?o.selection.shown.finish:d?.finishes[0]?.name,g=o&&d?D7(d,o.selection.part)?.size??void 0:void 0,b=d?ih(MB(d),v,g):{rows:[],diagram:null};return nh(Qt,{num:e,title:t,description:a,rows:Jm(b.rows,u),diagram:s?b.diagram:null,editing:c,nodeId:l,omitHead:r})}import{jsx as AB}from"react/jsx-runtime";var e6={num:A.sectionNumber,title:"Specifications *table.*",description:A.body},HB={label:"Spec Table",defaultProps:{dynamic:!1,num:"",title:"",description:"",source:null,finish:"",size:"",showDiagram:!0,rows:[]},render:e=>{let t=O1(e.headPlacement)==="own-box",a=h=>t?void 0:h;if(e.dynamic)return AB(Ef,{nodeId:typeof e.id=="string"?e.id:void 0,num:a(y(e.num,e6.num,e.puck)),title:a(y(e.title,e6.title,e.puck)),description:a(y(e.description,e6.description,e.puck)),showDiagram:e.showDiagram!==!1,omitHead:t,editing:e.puck?.isEditing});let s=e.source??null,c=e.wheel,l=!s?.slug&&typeof c=="string"?c:"",r=typeof e.finish=="string"?e.finish:"",o=typeof e.size=="string"?e.size:"",i,n=null;if(s?.slug&&s.spec){let h=ih(s,r,o);i=h.rows,n=e.showDiagram===!1?null:h.diagram}else if(l){let h=SB(l,r,o);i=h.rows,n=e.showDiagram===!1?null:h.diagram}else i=e.rows??[];return AB(Qt,{nodeId:typeof e.id=="string"?e.id:void 0,num:a(y(e.num,e6.num,e.puck)),title:a(y(e.title,e6.title,e.puck)),description:a(y(e.description,e6.description,e.puck)),rows:i,diagram:n,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as hh}from"react/jsx-runtime";var le1="Size (blank = none selected)",TB={fields:{_gDynamic:x("Product page"),dynamic:l1("Connect to product data",!1,hh(se1,{})),_gHeader:x("Header"),num:T("Number",e6.num),title:O("Heading",e6.title),description:O("Body",e6.description),_gData:x("Product"),source:c2(Hf),finish:g1("Finish",hh(FB,{}),[],""),size:{type:"text",label:le1},_gDiagram:x("Diagram"),showDiagram:l1("Dimension diagram",!0,hh(ce1,{})),_gRows:x("Rows"),rows:{type:"array",label:"Rows",arrayFields:{label:q("Label"),value:q("Value")},defaultItemProps:{label:"Label",value:""},getItemSummary:e=>e?.label||e?.value||"Row"}},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,c=M2(),l=m=>G1(W1(m,a,U1),e.props.headPlacement,Z1.SpecTable.headRows);if(c&&s.dynamic){let m=new Set([...Jl("Content"),"_gDynamic","dynamic","_gHeader","num","title","description","_gDiagram","showDiagram",...ae,...se,...ce,...le]),u={};for(let[d,v]of Object.entries(t))m.has(d)&&(u[d]=v);return l(u)}let r=s.source,o=!r?.slug&&typeof s.wheel=="string"?s.wheel:"",i={...t};if(c||(delete i._gDynamic,delete i.dynamic),!(r?.slug&&r.spec)&&!o)return delete i.finish,delete i.size,delete i._gDiagram,delete i.showDiagram,l(i);let n=r?.slug?r.finishes.map(m=>m.name):(_n(o)?.finishes??[]).map(m=>m.name),h=[{value:"",label:"Default (first finish)"},...n.map(m=>({value:m,label:m}))];return i.finish=g1("Finish",hh(FB,{}),h,""),delete i._gRows,delete i.rows,l(i)}};var re1={link:"Know your size? Pick it below"},PB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:T("Heading",A.sectionHeading),description:O("Body",A.body),_gCta:x("Call to action"),escapeText:T("Button",re1.link),escapeHref:H1("Button link")},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.TyreFitment.headRows)};var EB={fields:{_gHeader:x("Header"),num:T("Number",U0.num),title:T("Heading",A.sectionHeading),description:O("Body",A.body)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.TyreSizes.headRows)};import{useEffect as ne1,useState as _B}from"react";import{useState as oe1}from"react";function VB(e,t){return t==="mark"?(e.logo??"").trim():(e.name??"").trim()}import{jsx as Vf,jsxs as ie1}from"react/jsx-runtime";function Nf({tile:e,face:t,showCount:a,selected:s,onSelect:c}){let[l,r]=oe1(!1),o=VB(e,t),i=t==="mark"&&!l?s4(o):void 0;return ie1("button",{type:"button","data-sf-brand-tile":"","data-sf-brand-face":t,"aria-pressed":s?"true":"false",onClick:c,className:"flex flex-1 flex-col items-center justify-center gap-[7px] rounded-[9px] px-[10px] py-[14px]",children:[Vf("span",{className:"flex h-[22px] items-center justify-center",children:t==="mark"?i&&Vf("img",{src:i,alt:e.name,className:"max-h-full max-w-[78%] object-contain",draggable:!1,onError:()=>r(!0)}):o}),a&&Vf("span",{children:e.count})]})}import{jsx as Hc,jsxs as NB}from"react/jsx-runtime";function _f({heading:e,button:t,link:a,brands:s=[],face:c="name",showCount:l=!0,picked:r,onPick:o}){let i=r||s[0]?.name;return NB("section",{className:"sf-brandstrip","data-sf-brand-strip":"",children:[(e||t)&&NB("div",{className:"sf-brandstrip-head",children:[Hc("span",{className:"sf-brandstrip-heading",children:e??""}),a?Hc("a",{className:"sf-brandstrip-all",href:a,children:t??""}):Hc("span",{className:"sf-brandstrip-all",children:t??""})]}),Hc("div",{className:"sf-brandstrip-track",children:s.map(n=>Hc(Nf,{tile:n,face:c,showCount:l,selected:n.name===i,onSelect:o?()=>o(n.name):void 0},n.name))})]})}import{jsx as he1}from"react/jsx-runtime";function If({heading:e,button:t,link:a,picks:s,available:c,face:l="name",showCount:r=!0}){let[o,i]=_B(null),n=Array.isArray(s)?s:[],h=!c&&n.length>0;ne1(()=>{if(!h)return;let v=!1;return Cn().then(g=>g??v0.listBrands()).then(g=>{v||i(g)}).catch(()=>{}),()=>{v=!0}},[h]);let m=w_(n,c??o??[]),[u,d]=_B(void 0);return he1(_f,{heading:e,button:t,link:a,brands:m,face:l,showCount:r,picked:u,onPick:d})}import{jsx as me1}from"react/jsx-runtime";var IB={label:"Brand Strip",defaultProps:{heading:"Shop by brand",button:"All brands",link:"",[ic]:y_(),face:"name",showCount:!0},render:({heading:e,button:t,link:a,face:s,showCount:c,...l})=>me1(If,{heading:a1(e),button:a1(t),link:a1(a),picks:l[ic],available:l[z_],face:s,showCount:c})};import{jsx as Fc,jsxs as mh}from"react/jsx-runtime";function pe1(e,t){let a=e.savings[t];if(a===void 0)return null;let s=B2(a,t);return e.savingIsFrom?`Save from ${s}`:`Save ${s}`}function Rf({bundle:e,currency:t}){let a=pe1(e,t);return mh(L1,{href:`/bundles/${e.slug}`,className:"sf-card group flex flex-col border border-line bg-bg transition-colors hover:border-accent",children:[mh("div",{className:"sf-card-image relative aspect-[4/3] overflow-hidden bg-surface",children:[e.image?Fc(_3,{src:e.image,alt:e.name,fill:!0,sizes:"(max-width: 640px) 100vw, 33vw",className:"object-cover transition-transform duration-500 group-hover:scale-[1.03]"}):mh("div",{className:"flex h-full items-center justify-center font-mono text-[10px] uppercase tracking-[0.3em] text-fg-dim",children:[e.components.length," piece",e.components.length===1?"":"s"]}),a&&Fc("span",{className:"absolute left-0 top-4 bg-accent px-3 py-1.5 font-mono text-[10px] uppercase tracking-[0.24em] text-bg",children:a})]}),mh("div",{className:"flex flex-1 flex-col gap-1.5 px-5 py-4",children:[Fc("span",{className:"font-display text-[18px] font-medium tracking-[-0.015em] text-fg",children:e.name}),e.subtitle&&Fc("span",{className:"text-[13px] leading-snug text-fg-dim",children:e.subtitle}),!e.inStock&&Fc("span",{className:"mt-1 font-mono text-[9px] uppercase tracking-[0.24em] text-fg-dim",children:"Currently unavailable"})]})]})}import{jsx as ea,jsxs as DB}from"react/jsx-runtime";var RB="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",BB="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",ue1=["alloy-wheel"],ZB={2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"};function Bf(e){return ea(z2,{kinds:ue1,type:"BundleOffer",editing:e.editing,children:ea(de1,{...e})})}function de1({num:e,title:t,description:a,columns:s=3,editing:c=!1,omitHead:l=!1,cardImage:r}){let o=$0(),{currency:i}=d0(),n=o?.product.kind==="alloy-wheel"?o.product.source.bundles??[]:[],h=l?null:ea(s0,{num:e?M(e):void 0,title:t?Y(t,!1):void 0,description:a?M(a):void 0,accent:!0});return n.length===0?c?DB("section",{className:l?BB:RB,style:J2(r),children:[h,ea("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("Bundles containing this product appear here on a product page.")})]}):null:DB("section",{className:l?BB:RB,style:J2(r),children:[h,ea("div",{className:`mt-10 grid gap-6 ${ZB[s]??ZB[3]}`,children:n.slice(0,s).map(m=>ea(Rf,{bundle:m,currency:i},m.slug))})]})}import{jsx as ge1}from"react/jsx-runtime";var OB={label:"Bundle Products",defaultProps:{num:"",title:"",description:"",columns:3},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ge1(Bf,{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,columns:typeof e.columns=="number"?e.columns:3,cardImage:e.cardImage,editing:e.puck?.isEditing})}};import{createContext as ve1,useContext as Tc}from"react";var Zf=ve1(null);function GB(){let e=Tc(wa),t=Tc(Zf),a=sr();return e?e.socialLinks??zw:t?t.socialLinks:a.links}function qB(){return Tc(Zf)?.commerceEnabled??!0}function WB(){let e=Tc(wa),t=Tc(Zf),a=I3();return e?kr({legalName:e.legalName,foundedYear:e.foundedYear,siteName:e.siteName}):t?kr({legalName:t.legalName,foundedYear:t.foundedYear,siteName:t.siteName}):kr({siteName:a.websiteName?.trim()||er})}import{jsx as ta}from"react/jsx-runtime";function UB({style:e="icon",editing:t=!1}){let{open:a}=Ve();return kp("search"),ta("span",{"data-phone-menu-tool":"search",className:"contents",children:ta(qr,{onClick:t?void 0:a,asText:e==="text"})})}function jB({style:e="icon",editing:t=!1}){let{open:a,totals:s}=i4();return qB()?ta(Gr,{onClick:t?()=>{}:a,count:s.sets,asText:e==="text"}):null}function KB({editing:e=!1}){let t=Or();return kp(t?"region":null),t?ta("span",{"data-phone-menu-tool":"region",className:"contents",children:ta(S8,{})}):e?ta("div",{"data-country-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("No regions yet")}):null}import{jsx as fe1}from"react/jsx-runtime";var $B={label:"Cart",defaultProps:{style:"icon"},render:({style:e,puck:t})=>fe1(jB,{style:e,editing:t?.isEditing})};import{useEffect as oZ,useMemo as ke1}from"react";import{useState as tZ}from"react";import{jsx as aa,jsxs as YB}from"react/jsx-runtime";function Df({label:e,badge:t,open:a,onToggle:s}){let c=t>0;return YB("button",{type:"button",onClick:s,className:["inline-flex items-center gap-2 whitespace-nowrap border px-4 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] transition-colors",c?"border-accent text-accent":"border-line hover:border-fg-dim"].join(" "),style:c?void 0:{color:"color-mix(in oklab, currentColor 80%, transparent)"},children:[e,t>0&&aa("span",{className:"px-1.5 text-[length:var(--size-body,11px)] tracking-[0.1em] text-bg",style:{background:"var(--accent)"},children:t}),aa("span",{className:`text-[length:var(--size-body,11px)] opacity-65 transition-transform ${a?"rotate-180":""}`,children:"\u25BE"})]})}function sa({label:e,badge:t,open:a,onToggle:s,children:c}){return YB("div",{className:"relative",children:[aa(Df,{label:e,badge:t,open:a,onToggle:s}),a&&aa("div",{className:"absolute left-0 top-[calc(100%+6px)] z-[60] min-w-[280px] border border-line bg-surface p-[18px] shadow-[0_24px_60px_rgba(0,0,0,0.4)]",onClick:l=>l.stopPropagation(),children:c})]})}function ca({children:e}){return aa("div",{className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.32em] text-fg-dim",children:e})}function ph({active:e,onClick:t,children:a,role:s,ariaChecked:c}){return aa("button",{type:"button",role:s,"aria-checked":s==="radio"?c:void 0,onClick:t,className:["border px-3 py-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] transition-colors",e?"border-accent bg-accent text-bg":"border-line hover:border-fg-dim"].join(" "),style:e?void 0:{color:"color-mix(in oklab, currentColor 75%, transparent)"},children:a})}import{useEffect as be1,useRef as xe1}from"react";import{Fragment as ze1,jsx as y3,jsxs as v9}from"react/jsx-runtime";function XB({picker:e,onClose:t}){let{cascade:a}=e,s=xe1(v4(a.vehicle));return be1(()=>{let c=v4(a.vehicle);c&&!s.current&&t(),s.current=c},[a.vehicle,t]),v9("div",{className:"border-t border-line bg-surface px-[var(--sf-site-gutter,40px)] py-4 max-[720px]:px-4",children:[y3("div",{className:"mb-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.32em] text-fg-dim",children:"Your car \xB7 only wheels that bolt on"}),y3(X3,{cascade:a,compact:!0}),a.cascadeError&&y3("p",{className:"mt-2.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"Vehicle data is unavailable right now \u2014 browse all wheels and we'll help you check fitment at checkout."}),y3("div",{className:"mt-3.5 flex flex-wrap items-center gap-3",children:y3("button",{type:"button",onClick:t,className:"cursor-pointer font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim underline-offset-4 hover:text-fg hover:underline",children:"Close"})})]})}var JB="flex w-full items-center justify-between gap-4 border-b py-3 text-left text-[length:var(--size-body,14px)] transition-colors";function QB({field:e,picker:t,open:a,onOpenRequest:s,onClose:c}){let{cascade:l}=t,r=fn(l),o=XN(l)[e],i=JN(l)[e],n=QN(l)[e],h=e_(l)[e],m=s9[e],u=$N(e,l.vehicle),d=h||r[e].placeholder,v=Gg(o,r[e].placeholder),g=ze({items:v,value:n,onPick:i,open:a,onOpen:()=>s(u),onClose:c});return v9("div",{ref:g.wrapRef,className:"relative",children:[v9("button",{ref:b=>{g.triggerRef.current=b},type:"button","data-vehicle-field":e,"aria-haspopup":"listbox","aria-expanded":a,"aria-controls":a?g.listId:void 0,"aria-activedescendant":g.activeId,"aria-label":`${m}, ${d} \u2014 pick your ${u}`,onClick:()=>s(u),onKeyDown:g.onTriggerKeyDown,className:`${JB} ${a?"border-fg text-fg":"border-line"}`,children:[y3("span",{className:"text-fg-dim",children:m}),y3("span",{"data-vehicle-value":d,className:`truncate ${h?"text-fg":"text-fg-dim"}`,children:d})]}),a&&y3(ye,{id:g.listId,tone:"hairline",items:v,value:n,focusIdx:g.focusIdx,onFocus:g.setFocusIdx,onPick:g.pick,listRef:g.listRef})]})}function eZ({picker:e,onOpenRequest:t}){let a=YN(e.cascade.vehicle);if(!a)return null;let s=cc[a];return y3("button",{type:"button","data-vehicle-next":!0,"aria-label":`${s} \u2014 pick your ${a}`,onClick:()=>t(a),className:`${JB} border-line text-fg-dim`,children:y3("span",{"data-vehicle-value":s,children:s})})}function Of({picker:e,total:t}){let{appliedName:a,fit:s,resolving:c,unresolved:l,clear:r}=e;if(!a)return null;let o=Ie(s),i=s!==null&&!c&&t===0;return v9("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-2 border-t border-line px-[var(--sf-site-gutter,40px)] py-2.5 max-[720px]:px-4",children:[v9("span",{className:"inline-flex items-center gap-2 bg-accent px-2.5 py-1.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-bg",children:[a,y3("button",{type:"button",onClick:r,"aria-label":`Clear ${a} and show all wheels`,className:"cursor-pointer leading-none text-bg hover:opacity-70",children:"\u2715"})]}),c?y3("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"Checking fitment\u2026"}):l?y3("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:"We have no fitment data for this car \u2014 showing every wheel"}):y3(ze1,{children:o.map(n=>n.value!==null?y3("span",{className:"border border-line px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg-dim",children:n.value},n.key):v9("span",{className:"border border-dashed border-line px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg-dim",children:[n.name," not published \u2014 not checked"]},n.key))}),i&&v9("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-fg-dim",children:["No wheels here fit this car \u2014"," ",y3("button",{type:"button",onClick:r,className:"cursor-pointer uppercase text-accent underline underline-offset-4",children:"show all wheels"})]})]})}import{Fragment as qf,jsx as D1,jsxs as D0}from"react/jsx-runtime";var ye1=["FusionForge\xAE","Precision Forged","Monoblock Cast"];function aZ(e){return e==="FusionForge\xAE"?D0(qf,{children:["FusionForge",D1(i6,{})]}):e}var Gf={size:Le("diameters","alloy-wheel"),finish:Le("finishes","alloy-wheel")};function sZ(e,t){return u7(e,a=>Gf[String(a.key)],t??[],"filterOrder")}function we1({processCount:e,sizeCount:t,lugCount:a,finishCount:s,optionsReported:c,fieldUsage:l}){let r=i=>!c||i>Va,o=Fr(l??[]);return{process:e>Va,size:o(Gf.size)&&r(t),lugs:r(a),finish:o(Gf.finish)&&r(s)}}function la(e,t){return e===t?null:t}function cZ({href:e,label:t}){return D1("a",{href:e,"data-results-link":!0,className:"inline-block self-start border-0 border-b border-line bg-transparent pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg transition-colors hover:text-fg-dim",children:t})}function Wf({filters:e,setProcess:t,setSize:a,setLugs:s,setFinish:c,setPriceMin:l,setPriceMax:r,setSort:o,clearAll:i,total:n,scrollProcess:h,show:m,picker:u,lugOptions:d=[],sizeOptions:v=[],finishOptions:g,layout:b=l9,processOptions:f=ye1,resultsLink:w,optionsReported:z=!1,fieldUsage:k}){let[S,H]=tZ(null),[I,P]=tZ(null),D=nc(),{process:E,size:F,lugs:_,finish:Z,priceMin:G,priceMax:V,sort:j}=e,N=g?Zm.filter(K=>g.includes(K.f)):Zm,Q=we1({processCount:f.length,sizeCount:v.length,lugCount:d.length,finishCount:N.length,optionsReported:z,fieldUsage:k}),W={process:(m?.process??!0)&&Q.process,size:(m?.size??!0)&&Q.size,lugs:(m?.lugs??!0)&&Q.lugs,finish:(m?.finish??!0)&&Q.finish,price:m?.price??!0,vehicle:(m?.vehicle??!0)&&!!u,count:m?.count??!0,sort:m?.sort??!0},U={process:E?1:0,size:F?1:0,lugs:_?1:0,finish:Z?1:0,price:G!=null||V!=null?1:0,vehicle:u?.appliedName?1:0},i1=()=>{i(),u?.clear(),H(null),P(null)};if(b==="columns"){let K=$=>P(I===$?null:$),c1=[];W.vehicle&&u&&c1.push(D0(ra,{name:"vehicle",label:D.vehicle,children:[sc.map($=>D1(QB,{field:$,picker:u,open:I===$,onOpenRequest:K,onClose:()=>P(null)},$)),D1(eZ,{picker:u,onOpenRequest:K})]},"vehicle"));let b1=[];return W.process&&b1.push(D1(ra,{name:"process",label:D.process,rowsAreOptions:!0,children:f.map($=>D1(uh,{active:E===$,onClick:()=>t(la(E,$)),children:aZ($)},$))},"process")),W.size&&b1.push(D1(ra,{name:"size",label:D.size,rowsAreOptions:!0,children:v.map($=>D0(uh,{active:F===$,onClick:()=>a(la(F,$)),children:[$,'"']},$))},"size")),W.lugs&&b1.push(D1(ra,{name:"lugs",label:D.lugs,rowsAreOptions:!0,children:d.map($=>D0(uh,{active:_===$,onClick:()=>s(la(_,$)),children:[$,"-Lug"]},$))},"lugs")),W.finish&&b1.push(D1(ra,{name:"finish",label:D.finish,rowsAreOptions:!0,children:N.map($=>D1(uh,{active:Z===$.f,onClick:()=>c(Z===$.f?null:$.f),children:$.label},$.f))},"finish")),c1.push(...sZ(b1,k)),W.price&&c1.push(D0(ra,{name:"price",label:D.price,children:[D1(lZ,{label:"Min",value:G,onChange:l,ariaLabel:"Minimum price per wheel"}),D1(lZ,{label:"Max",value:V,onChange:r,ariaLabel:"Maximum price per wheel"})]},"price")),D0("div",{className:"@container",children:[D0("div",{className:"border-t border-line px-[var(--sf-site-gutter,40px)] pb-12 pt-10 @max-[720px]:px-4 @max-[720px]:pb-10 @max-[720px]:pt-8",children:[(W.count||W.sort)&&D0("div",{className:"mb-9 flex flex-wrap items-center gap-x-6 gap-y-3 @max-[720px]:mb-7",children:[W.count&&D0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim",children:[n," ",n===1?"result":"results"]}),W.sort&&D0("div",{className:"ml-auto flex items-center gap-5",children:[D1("button",{type:"button",onClick:i1,className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-fg",children:"Clear All"}),D1(Fa,{value:j,onChange:$=>o($.target.value),className:"border-b border-line bg-transparent pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:Object.keys(Za).map($=>D1("option",{value:$,children:Za[$]},$))})]})]}),D1("div",{"data-filter-columns":!0,className:`grid grid-cols-1 gap-x-[72px] gap-y-10 ${Ce1[c1.length]??""}`,children:c1}),w&&D1("div",{className:"mt-10 flex",children:D1(cZ,{href:w.href,label:w.label})})]}),W.vehicle&&u&&D1(Of,{picker:u,total:n})]})}let y1=[];return W.process&&y1.push(D0(sa,{name:"process",label:h?D0(qf,{children:[D1("span",{className:"text-accent @min-[720px]:hidden",children:h==="FusionForge\xAE"?D0(qf,{children:["FusionForge",D1(i6,{})]}):h}),D1("span",{className:"hidden @min-[720px]:inline",children:D.process})]}):D.process,badge:U.process,open:S==="process",onToggle:()=>H(S==="process"?null:"process"),children:[D1(ca,{children:"Series \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Process series",children:f.map(K=>{let c1=E===K;return D1(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>t(la(E,K)),children:aZ(K)},K)})})]},"process")),W.size&&y1.push(D0(sa,{name:"size",label:D.size,badge:U.size,open:S==="size",onToggle:()=>H(S==="size"?null:"size"),children:[D1(ca,{children:"Diameter \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Wheel diameter",children:v.map(K=>{let c1=F===K;return D0(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>a(la(F,K)),children:[K,'"']},K)})})]},"size")),W.lugs&&y1.push(D0(sa,{name:"lugs",label:D.lugs,badge:U.lugs,open:S==="lugs",onToggle:()=>H(S==="lugs"?null:"lugs"),children:[D1(ca,{children:"Lug count \xB7 single-select"}),D1("div",{className:"flex flex-wrap gap-1.5",role:"radiogroup","aria-label":"Lug count",children:d.map(K=>{let c1=_===K;return D0(ph,{active:c1,role:"radio",ariaChecked:c1,onClick:()=>s(la(_,K)),children:[K,"-Lug"]},K)})})]},"lugs")),W.finish&&y1.push(D0(sa,{name:"finish",label:D.finish,badge:U.finish,open:S==="finish",onToggle:()=>H(S==="finish"?null:"finish"),children:[D1(ca,{children:"Color family \xB7 single-select"}),D1("div",{className:"flex flex-col gap-1.5",role:"radiogroup","aria-label":"Finish color family",children:N.map(K=>{let c1=Z===K.f;return D0("button",{type:"button",role:"radio","aria-checked":c1,onClick:()=>c(c1?null:K.f),className:["flex items-center gap-2.5 border px-3 py-2 text-left transition-colors",c1?"border-accent text-fg":"border-line hover:border-fg-dim"].join(" "),children:[D1("span",{className:"block h-3.5 w-3.5 shrink-0 rounded-full border border-line",style:{background:K.hex}}),D1("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:c1?void 0:{color:"color-mix(in oklab, currentColor 80%, transparent)"},children:K.label}),c1&&D1("span",{"aria-hidden":!0,className:"ml-auto text-accent",children:"\u25CF"})]},K.f)})})]},"finish")),D0("div",{className:"@container sticky top-[67px] z-40 border-b border-line backdrop-blur",style:{background:"color-mix(in oklab, var(--bg) 92%, transparent)"},children:[D0("div",{className:"flex items-center gap-6 px-[var(--sf-site-gutter,40px)] py-3.5 @max-[720px]:flex-wrap @max-[720px]:items-stretch @max-[720px]:gap-2 @max-[720px]:px-4 @max-[720px]:py-2.5",children:[D0("div",{className:"flex flex-wrap items-center gap-1 @max-[720px]:gap-1.5",children:[W.count&&D0("span",{className:"mr-3 border-r border-line pr-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim @max-[720px]:hidden",children:[n," ",n===1?"result":"results"]}),sZ(y1,k),W.price&&D0(sa,{name:"price",label:D.price,badge:U.price,open:S==="price",onToggle:()=>H(S==="price"?null:"price"),children:[D1(ca,{children:"Price range (per wheel)"}),D0("div",{className:"mt-1 flex items-center gap-2",children:[D1("input",{type:"number",placeholder:"$ Min",value:G??"",onChange:K=>l(K.target.value?Number(K.target.value):null),className:"w-full bg-bg border border-line px-3 py-2.5 font-mono text-[length:var(--size-label,14px)] text-fg"}),D1("span",{className:"font-mono text-[length:var(--size-label,12px)] text-fg-dim",children:"\u2014"}),D1("input",{type:"number",placeholder:"$ Max",value:V??"",onChange:K=>r(K.target.value?Number(K.target.value):null),className:"w-full bg-bg border border-line px-3 py-2.5 font-mono text-[length:var(--size-label,14px)] text-fg"})]})]}),W.vehicle&&u&&D1(Df,{label:D.vehicle,badge:U.vehicle,open:S==="vehicle",onToggle:()=>H(S==="vehicle"?null:"vehicle")})]}),w&&D1("div",{className:`flex items-center @max-[720px]:hidden ${W.sort?"":"ml-auto"}`,children:D1(cZ,{href:w.href,label:w.label})}),W.sort&&D0("div",{className:"ml-auto flex items-center gap-3 @max-[720px]:hidden",children:[D1("button",{type:"button",onClick:i1,className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim transition-colors hover:text-accent",children:"Clear All"}),D1(Fa,{value:j,onChange:K=>o(K.target.value),className:"border border-line bg-transparent px-4 py-2.5 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:Object.keys(Za).map(K=>D1("option",{value:K,children:Za[K]},K))})]})]}),W.vehicle&&u&&S==="vehicle"&&D1(XB,{picker:u,onClose:()=>H(null)}),W.vehicle&&u&&D1(Of,{picker:u,total:n})]})}var Ce1={1:"@min-[720px]:grid-cols-1",2:"@min-[720px]:grid-cols-2",3:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3",4:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-4",5:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3 @min-[1400px]:grid-cols-5",6:"@min-[720px]:grid-cols-2 @min-[1100px]:grid-cols-3 @min-[1400px]:grid-cols-6"},rZ="flex w-full items-center justify-between gap-4 border-b py-3 text-left text-[length:var(--size-body,14px)]";function ra({name:e,label:t,rowsAreOptions:a,children:s}){return D0("div",{"data-filter-column":e,className:"flex flex-col gap-[22px]",children:[D1("div",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.34em] text-fg-dim",children:t}),D1("div",{role:a?"radiogroup":void 0,"aria-label":a?t:void 0,children:s})]})}function uh({active:e,onClick:t,children:a}){return D1("button",{type:"button",role:"radio","aria-checked":e,onClick:t,className:[rZ,"transition-colors",e?"border-fg text-fg":"border-line text-fg-dim hover:text-fg"].join(" "),children:D1("span",{children:a})})}function lZ({label:e,value:t,onChange:a,ariaLabel:s}){return D0("label",{className:`${rZ} border-line`,children:[D1("span",{className:"text-fg-dim",children:e}),D1("input",{type:"number",inputMode:"numeric","aria-label":s,placeholder:"Any",value:t??"",onChange:c=>a(c.target.value?Number(c.target.value):null),className:"w-24 bg-transparent text-right text-fg outline-none placeholder:text-fg-dim"})]})}import{jsx as Me1}from"react/jsx-runtime";function Uf({show:e,layout:t,processOptions:a,fieldUsage:s,editing:c=!1,resultsHref:l,resultsLabel:r}){let{filters:o,setProcess:i,setSize:n,setLugs:h,setFinish:m,setPriceMin:u,setPriceMax:d,setSort:v,clearAll:g,total:b,scrollProcess:f,publishVehicle:w,lugOptions:z,sizeOptions:k,finishOptions:S,optionsReported:H}=so(),I=ke1(()=>s?j4(s,"alloy-wheel"):void 0,[s]),P=I4({editing:c,autoApply:!0});oZ(()=>{w({fit:P.fit,name:P.appliedName,resolving:P.resolving,unresolved:P.unresolved})},[w,P.fit,P.appliedName,P.resolving,P.unresolved]);let D=P.applied?.vehicle??null;oZ(()=>{if(c||!P.restored||typeof window>"u")return;let Z=new URLSearchParams(window.location.search);for(let V of Object.values(Z5))Z.delete(V);D5(Z,D);let G=Z.toString();window.history.replaceState(null,"",`${window.location.pathname}${G?`?${G}`:""}`)},[c,P.restored,D]);let E=T_(o),F=(r??"").trim()||"See all results",_=l&&!c&&E.length===0?{href:P_(l,o,D),label:F}:void 0;return Me1(Wf,{resultsLink:_,filters:o,setProcess:i,setSize:n,setLugs:h,setFinish:m,setPriceMin:u,setPriceMax:d,setSort:v,clearAll:g,total:b,lugOptions:z,sizeOptions:k,finishOptions:S,scrollProcess:f,show:e,layout:t,processOptions:a,optionsReported:H,fieldUsage:I,picker:P})}import{jsx as Se1}from"react/jsx-runtime";var iZ={label:"Catalog Filter Bar",defaultProps:{showProcess:!0,showLugs:!0,showPrice:!0,showVehicle:!0,showCount:!0,showSort:!0,layout:l9,resultsHref:"",resultsLabel:""},render:e=>Se1(Uf,{show:{process:e.showProcess,size:!0,lugs:e.showLugs,finish:!0,price:e.showPrice,vehicle:e.showVehicle,count:e.showCount,sort:e.showSort},layout:E_(e.layout),processOptions:e.processOptions,fieldUsage:e.fieldUsage,resultsHref:a1(e.resultsHref)||void 0,resultsLabel:a1(e.resultsLabel)||void 0,editing:e.puck?.isEditing})};import{rootRowName as N60,slotChildName as nZ,slotChildRenameProp as _60,slotChildRowName as I60}from"efficient-easel/screen/lib/puck/slot-child-name";import{jsx as Le1}from"react/jsx-runtime";var hZ={label:"Collection Card",defaultProps:{collection:null},render:({collection:e,altName:t,tag:a,href:s,puck:c})=>{let l=e&&typeof e=="object"?e:null,r=(i,n)=>F2(i).hidden?"":a1(i)||(c?.isEditing?p(n):void 0),o=nZ({type:"CollectionCard",props:{altName:t,collection:l}});return Le1(xu,{tag:r(a,A.eyebrow),name:o||(c?.isEditing?p("Card title"):void 0),desc:l?.description||(c?.isEditing?p(A.body):void 0),href:a1(s)||void 0,imageSrc:l?.image||void 0,imageLabel:l?.name||void 0})}};import{jsx as Ae1}from"react/jsx-runtime";var mZ={label:"Country Switch",render:({puck:e})=>Ae1(KB,{editing:e?.isEditing})};import{jsx as f9,jsxs as jf}from"react/jsx-runtime";function He1(e){let t=[];e.fuelClass&&t.push({key:"Fuel efficiency",value:e.fuelClass}),e.wetGripClass&&t.push({key:"Wet grip",value:e.wetGripClass});let a=rh(e);return a&&t.push({key:"Rolling noise",value:a}),t}function Fe1(e){let t=[];return e.severeSnow&&t.push("3PMSF severe snow"),e.iceGrip&&t.push("Ice grip"),t}function Kf({label:e}){let t=He1(e),a=Fe1(e);return jf("div",{className:"flex flex-col bg-[var(--card-bg)] p-5",children:[f9("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,22px)] font-medium leading-tight",children:e.size}),f9("dl",{className:"mt-3 flex flex-col gap-1.5 font-mono text-[length:var(--size-label,12px)]",children:t.map(s=>jf("div",{className:"flex items-baseline justify-between gap-3",children:[f9("dt",{className:"uppercase tracking-[0.14em] text-fg-dim",children:s.key}),f9("dd",{className:"text-right text-fg",children:s.value})]},s.key))}),a.length>0?f9("ul",{className:"mt-3 flex flex-wrap gap-2",children:a.map(s=>f9("li",{className:"border border-line px-2 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:s},s))}):null,jf("a",{href:e.eprelUrl,target:"_blank",rel:"noopener noreferrer",className:"group mt-4 inline-flex items-center gap-2 border-t border-line pt-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-accent transition-colors hover:text-fg",children:[`EPREL ${e.registrationNumber}`,f9("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-1",children:"\u2192"})]})]})}import{jsx as dh,jsxs as Te1}from"react/jsx-runtime";function $f({labels:e,num:t}){return e.length===0?null:Te1("section",{className:"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:[dh(s0,{num:t,title:"EU tyre *label.*",description:"The registered grades for this tyre, read live from the EU product registry.",accent:!0}),dh("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(a=>dh(Kf,{label:a},a.registrationNumber))}),dh(s5,{text:"Source: *EPREL*, the European Product Registry for Energy Labelling. Grades are shown as registered; the registry is the authority."})]})}import{jsx as Pc}from"react/jsx-runtime";var Pe1=["tyre"];function Yf(e){return Pc(z2,{kinds:Pe1,type:"EuTyreLabel",editing:e.editing,children:Pc(Ee1,{...e})})}function Ee1({num:e,editing:t=!1}){let a=$0(),s=z3(t&&!a),c=a?.product??s,l=c?.kind==="tyre"?c.source.variants:[],r=oh(l);return r.length===0&&t?Pc("section",{className:"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:Pc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The EU label appears here for every size with an EPREL registration number. It is read live from the registry and never stored.")})}):Pc($f,{labels:r,num:e??""})}import{jsx as Ve1}from"react/jsx-runtime";var pZ={label:"EU Tyre Label",defaultProps:{num:""},render:e=>Ve1(Yf,{num:y(e.num,U0.num,e.puck),editing:e.puck?.isEditing})};import{jsx as Ne1}from"react/jsx-runtime";var uZ={label:"Gallery Item",defaultProps:{image:"",href:"",process:"",eyebrow:"",name:"",meta:"",fromProduct:!1,product:{},previewHover:!1},render:e=>{let t=e.product??{},a=e.fromProduct===!0&&!!t.code;return Ne1(ss,{image:a?t.cover:e.image,photos:a?(t.photos??[]).map(s=>({src:s})):e.photos,href:a?t.href:e.href,process:a?t.hideProcess?void 0:t.category:y(e.process,"",e.puck),eyebrow:a?t.hideEyebrow?void 0:t.eyebrow:y(e.eyebrow,"",e.puck),name:a?t.hideName?void 0:t.name:y(e.name,"",e.puck),meta:a?t.hideFinish?void 0:t.finish:y(e.meta,"",e.puck),previewHover:e.previewHover,ratio:e.ratio,captionPlace:e.captionPlace,editing:e.puck?.isEditing})}};import{useCallback as Ue1,useEffect as eb,useState as oa}from"react";import{useEffect as _e1,useId as Ie1,useRef as dZ,useState as Re1}from"react";import{jsx as w3,jsxs as Xf}from"react/jsx-runtime";function gh({item:e,mobile:t=!1,onNavigate:a,dropdownAlign:s="start"}){let[c,l]=Re1(!1),r=Ie1(),o=dZ(null),i=dZ(null),n=e.dropdownItems.length>0,h=!Ne(e.href);_e1(()=>{if(!c)return;let d=o.current?.ownerDocument??document,v=g=>{o.current?.contains(g.target)||l(!1)};return d.addEventListener("pointerdown",v),()=>d.removeEventListener("pointerdown",v)},[c]);let m=()=>{l(!1),a?.()};if(!n)return h?w3(L1,{href:e.href,onClick:m,className:t?"flex min-h-11 items-center font-display text-3xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent":"whitespace-nowrap opacity-80 transition-opacity hover:opacity-100 focus-visible:rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:t?"flex min-h-11 items-center font-display text-3xl":"whitespace-nowrap opacity-80",children:e.label});let u=w3("button",{ref:i,type:"button","aria-label":`${c?"Close":"Open"} ${e.plainLabel} menu`,"aria-expanded":c,"aria-controls":r,onClick:()=>l(d=>!d),className:t?"flex h-11 w-11 shrink-0 items-center justify-center rounded-full focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent":"flex h-8 w-8 shrink-0 items-center justify-center rounded-full opacity-70 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:w3("svg",{width:"14",height:"14",viewBox:"0 0 14 14",fill:"none",stroke:"currentColor",strokeWidth:"1.5","aria-hidden":"true",className:`transition-transform ${c?"rotate-180":""}`,children:w3("path",{d:"m3 5 4 4 4-4"})})});return t?Xf("div",{ref:o,children:[Xf("div",{className:"flex min-h-11 items-center justify-between gap-3",children:[h?w3(L1,{href:e.href,onClick:m,className:"min-w-0 flex-1 font-display text-3xl focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:"min-w-0 flex-1 font-display text-3xl",children:e.label}),u]}),c?w3("div",{id:r,className:"mt-3 flex flex-col border-l border-line pl-5",children:e.dropdownItems.map((d,v)=>Ne(d.href)?w3("span",{className:"flex min-h-11 items-center text-base opacity-80",children:d.label},`${d.href}-${v}`):w3(L1,{href:d.href,onClick:m,className:"flex min-h-11 items-center text-base opacity-80 transition-opacity hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:d.label},`${d.href}-${v}`))}):null]}):Xf("div",{ref:o,className:"relative flex items-center whitespace-nowrap",onMouseEnter:()=>l(!0),onMouseLeave:()=>l(!1),onBlurCapture:d=>{d.currentTarget.contains(d.relatedTarget)||l(!1)},onKeyDown:d=>{d.key==="Escape"&&(l(!1),i.current?.focus())},children:[h?w3(L1,{href:e.href,onClick:m,onFocus:()=>l(!0),className:"opacity-80 transition-opacity hover:opacity-100 focus-visible:rounded-sm focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:e.label}):w3("span",{className:"opacity-80",children:e.label}),u,c?w3("div",{id:r,className:`absolute top-full z-[60] w-72 pt-3 text-fg ${s==="end"?"right-0":s==="center"?"left-1/2 -translate-x-1/2":"left-0"}`,children:w3("div",{className:"overflow-hidden rounded-lg border border-line bg-bg p-2 shadow-xl",children:e.dropdownItems.map((d,v)=>Ne(d.href)?w3("span",{className:"flex min-h-11 items-center rounded-md px-4 py-2 text-sm opacity-80",children:d.label},`${d.href}-${v}`):w3(L1,{href:d.href,onClick:m,className:"flex min-h-11 items-center rounded-md px-4 py-2 text-sm opacity-80 transition-[background,opacity] hover:bg-[var(--card-bg)] hover:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent",children:d.label},`${d.href}-${v}`))})}):null]})}import{useEffect as Ec,useRef as Be1,useState as gZ}from"react";function vh({stickyMode:e,heightPx:t}){let a=Be1(null),[s,c]=gZ(!1),[l,r]=gZ(!1);return Ec(()=>{let o=a.current?.ownerDocument?.defaultView??window,i=t,n=o.scrollY;function h(){let m=o.scrollY;c(m>10),e==="on_scroll_up"&&(m<=i?r(!1):m>n+4?r(!0):m<n-4&&r(!1)),n=m}return h(),o.addEventListener("scroll",h,{passive:!0}),()=>o.removeEventListener("scroll",h)},[e,t]),Ec(()=>{e!=="on_scroll_up"&&r(!1)},[e]),Ec(()=>{let o=a.current?.ownerDocument?.documentElement;o&&o.style.setProperty(ir,`${t}px`)},[t]),Ec(()=>{let o=a.current,i=o?.ownerDocument,n=i?.defaultView;if(!o||!i||!n)return;let h="",m=d=>{let v=`${Math.round(d)}px`;v!==h&&(h=v,i.documentElement.style.setProperty(Nm,v),i.body?.style.setProperty(Nm,v))};if(typeof n.ResizeObserver!="function"){m(o.getBoundingClientRect().height);return}let u=new n.ResizeObserver(d=>{let v=d[0]?.borderBoxSize?.[0];m(v?v.blockSize:o.getBoundingClientRect().height)});return u.observe(o),()=>u.disconnect()},[]),Ec(()=>{let o=a.current?.ownerDocument?.documentElement;o&&o.setAttribute("data-header-sticky",e)},[e]),{headerRef:a,scrolled:s,navHidden:l}}import{useEffect as Ze1,useRef as De1,useState as vZ}from"react";import{jsx as fZ}from"react/jsx-runtime";function Jf(){let[e,t]=vZ("dark"),[a,s]=vZ(!1),c=De1(null),l=()=>c.current?.ownerDocument??document;Ze1(()=>{let o=l().documentElement,i=()=>t(bC(o));i(),s(!0);let n=new MutationObserver(i);return n.observe(o,{attributes:!0,attributeFilter:[fC]}),()=>n.disconnect()},[]);function r(){let o=l(),i=e==="dark"?"light":"dark";t(i),xC(o.documentElement,i),zC(o,i)}return fZ("button",{ref:c,type:"button",onClick:r,"aria-label":`Switch to ${e==="dark"?"light":"dark"} theme`,"aria-pressed":e==="light",className:"relative inline-flex h-5 w-9 items-center rounded-full border border-line bg-surface-2 p-0.5",children:fZ("span",{className:"block h-3.5 w-3.5 rounded-full bg-accent transition-transform duration-200 ease-out",style:{transform:a&&e==="light"?"translateX(16px)":"translateX(0)"}})})}function bZ({editorPreview:e,hasPreviewSettings:t,hasInitialSettings:a}){return!e&&!t&&!a}var xZ=ly,Oe1="sf-header-theme";function Qf(e){return typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}function fh(e){let t=Qf(e);return t===null?null:{className:Oe1,style:oy(t)}}function zZ(e){return typeof e=="number"&&Number.isInteger(e)&&e>=k5.min&&e<=k5.max?e:k5.default}var bh=e=>!!e&&e.startsWith("/wheels/")&&e!=="/wheels",xh=(e,t)=>!e&&t?"var(--section-bg)":"var(--bg)",yZ=e=>e==="capitalised"?"capitalised":"uppercase",wZ=e=>e==="inline"?"inline":e==="top"||e==="bottom"?"top":null;function CZ(e){let t=(e??"").trim();return Tz(t,"#000000")===null?null:Pz(t)==="#000000"}var zh="data-lead-ink",yh="data-header-ink";var Ge1="auto";function qe1(e){return e.type==="IntroBleed"?pt(e.props?.layout)!=="stacked":!0}function kZ(e){let t=Qw(e);return t&&eC(e)&&qe1(t)?"light":null}function wh(e){return e==="light"||e==="dark"?e:Ge1}import{Fragment as Ch,jsx as O0,jsxs as n2}from"react/jsx-runtime";var MZ={stacked:{grid:"hidden min-[1501px]:grid",flex:"hidden min-[1501px]:flex"},inline:{grid:"hidden min-[801px]:grid",flex:"hidden min-[801px]:flex"}},je1=Array.from({length:lM},()=>({href:"#",label:O0(Ee,{})}));function tb({previewSettings:e,initialSettings:t,editorPreview:a,showThemeToggle:s,wordmark:c,hideLogo:l,hideMenu:r,siteName:o,commerceEnabled:i=!0}={}){let n=Oe(),[h,m]=oa(!1);eb(()=>{let S1=P0.current?.ownerDocument??document,i0=()=>m(S1.querySelector(`[${zh}="light"]`)!=null);i0();let M1=requestAnimationFrame(i0);return()=>cancelAnimationFrame(M1)},[n]);let u=bh(n),[d,v]=oa(!1),{open:g,totals:b}=i4(),{open:f}=Ve(),[w,z]=oa(!1),[k,S]=oa(null),[H,I]=oa(null),[P,D]=oa(t??null),E=e??(P?{logoUrl:P.logoUrl,reverseLogo:P.reverseLogo,logoReversed:P.logoReversed,logoInkIsDark:P.logoInkIsDark,logoPosition:P.logoPosition,logoSize:P.logoSize,logoSizePx:P.logoSizePx,menuItems:(P.menuItems??[]).map(S1=>({label:S1.label,url:S1.url,dropdown_menu:null,dropdown_items:S1.dropdownItems??[]})),menuSplit:P.menuSplit??3,menuPosition:P.menuPosition,menuRow:P.menuRow,menuGapPx:P.menuGapPx??null,searchEnabled:P.searchEnabled,searchPosition:P.searchPosition,searchRow:P.searchRow,countrySelectorEnabled:P.countrySelectorEnabled,countryUrls:P.countryUrls,accountEnabled:P.accountEnabled,cartEnabled:P.cartEnabled,utilStyle:P.utilStyle,navTextCase:P.navTextCase,lightReverseText:P.lightReverseText,topTextColor:P.topTextColor,transparentTop:P.transparentTop,surface:P.surface,theme:P.theme,width:P.width,heightPx:P.heightPx,sticky:P.sticky}:null),F=l?null:E?.logoUrl??null,_=E?.reverseLogo??!1,Z=E?.logoReversed??null,G=E?.logoInkIsDark??null,V=E?.logoPosition??"center",j=E?.logoSize??"medium",N=E?.logoSizePx??null,Q=Math.min(Math.max(E?.menuSplit??3,1),4),W=(E?.menuPosition??"left")==="center",U=(E?.menuPosition??"left")==="beside",i1=(E?.menuRow??"top")==="inline",y1=E?.menuGapPx??null,K=y1!=null?{gap:`${y1}px`}:void 0,c1=i1?MZ.inline:MZ.stacked,b1=E?.searchEnabled??!1,$=E?.searchPosition??"right",u1=E?.countrySelectorEnabled??!0,x1=E?.accountEnabled??!0,X0=E?.cartEnabled??!0,o0=(E?.utilStyle??"icon")==="text",I1=`mono-eyebrow${(E?.navTextCase??"uppercase")==="capitalised"?" mono-eyebrow-plain":""}`,c0=E?.countryUrls??{},l0=Cl(E?.width),X1=wl(l0)??void 0,X2=E?.heightPx??k5.default,Q1=E?.sticky??"always",d2=wh(E?.topTextColor),b0=fh(E?.theme),d1=Object.keys(c0),$1=Or(d1.length?d1:void 0),u0=u1?O0(S8,{countries:d1.length?d1:void 0,urls:e?void 0:c0}):null,{headerRef:P0,scrolled:J0,navHidden:q0}=vh({stickyMode:Q1,heightPx:X2}),e1=b0?JSON.stringify(b0.style):null;eb(()=>{let S1=P0.current?.ownerDocument??document,i0=S1.defaultView??window,M1=K6=>K6?CZ(i0.getComputedStyle(K6).getPropertyValue("--bg")):null,w2=()=>{z(S1.documentElement.getAttribute("data-theme")==="light"),S(M1(S1.body)),I(M1(P0.current))};w2();let g2=new MutationObserver(w2);return g2.observe(S1.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),S1.body&&g2.observe(S1.body,{attributes:!0,attributeFilter:["style"]}),()=>g2.disconnect()},[P0,e1]);let z1=s??!1?O0(Jf,{}):null;eb(()=>{if(!bZ({editorPreview:!!a,hasPreviewSettings:!!e,hasInitialSettings:!!t}))return;let S1=!1;return v0.getHeaderSettings().then(i0=>!S1&&D(i0)).catch(i0=>{console.warn("[header] settings fetch failed; using built-in defaults",i0)}),()=>{S1=!0}},[a,e,t]);let t0=J0||u,s2=xh(w,u),M3=d2==="auto"?h:d2==="light",G6=t0||!M3,q6=t0?H??w:(k??w)&&!M3,W6=d2==="auto"?null:{[yh]:d2},u5=Ue1(()=>v(!1),[]);L4({active:d,onDismiss:u5});let V3=(S1,i0,M1="start")=>O0(gh,{item:S1,dropdownAlign:M1},i0),U6=!r&&(E?.menuItems?.length??0)>0,p8=!!a||!!e,m3=U6?E.menuItems.map(S1=>({href:S1.url||"",label:e0(S1.label),plainLabel:S1.label,dropdownItems:(S1.dropdown_items??[]).map(i0=>({href:i0.url||"",label:e0(i0.label),plainLabel:i0.label}))})):p8?je1.map(S1=>({...S1,plainLabel:"Menu item",dropdownItems:[]})):[],C9=m3.length>0||i&&x1||!!u0&&$1||!!z1,N3=V==="center"?m3.slice(0,Q):V==="right"?m3:[],e4=V==="center"?m3.slice(Q):V==="left"?m3:[],S3=b1?O0(qr,{onClick:p8?void 0:f,asText:o0}):null,t4=i&&x1?O0(sM,{asText:o0}):null,a6=S1=>i&&X0?O0(Gr,{onClick:g,count:b.sets,asText:o0,className:S1}):null,z4=n2(Ch,{children:[$==="left"?S3:null,u0,z1,t4,a6(),$==="right"?S3:null]}),y4=(S1,i0=!1)=>O0(L1,{href:"/","aria-label":o?`${o} home`:"Home",className:S1,children:O0(xe,{variant:"header",scrolled:G6,src:F,reverse:_,onLightSurface:q6,reversedSrc:Z,inkIsDark:G,size:j,sizePx:N,wordmark:c,siteName:o,fitToContainer:i0})}),G4=y4("inline-flex shrink-0 items-center justify-center"),j6="flex min-w-0 flex-1 items-center overflow-x-clip [container-type:inline-size]";return n2(Ch,{children:[O0("header",{ref:P0,"data-scrolled":J0||void 0,...W6,className:["sf-site-header",...b0?[b0.className]:[],Q1==="none"?"absolute":"fixed","inset-x-0 top-0 z-50","flex items-center","px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",t0?"border-b border-line backdrop-blur-md":"border-b border-transparent","transition-[background,border-color,transform] duration-300 ease-out"].join(" "),style:{...b0?b0.style:null,minHeight:Jw,...q0?{transform:"translateY(-100%)"}:null,...t0?{background:s2,color:"var(--fg)","--sf-header-ground":s2}:{color:"var(--sf-header-overlay-fg)","--sf-header-ground":"var(--sf-header-overlay-ground)"}},children:n2("div",{className:"w-full",style:X1,children:[W?n2("div",{className:`${c1.grid} grid-cols-[1fr_auto_1fr] items-center gap-8`,children:[V==="right"?O0("nav",{className:`${I1} flex items-center gap-7`,children:z4}):O0("div",{className:"flex items-center",children:G4}),O0("nav",{className:`${I1} flex items-center justify-center gap-7`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`,"center"))}),V==="right"?O0("div",{className:"flex items-center justify-end",children:G4}):O0("nav",{className:`${I1} flex items-center justify-end gap-7`,children:z4})]}):V==="center"?n2("div",{className:`${c1.grid} grid-cols-[1fr_auto_1fr] items-center gap-8`,children:[O0("nav",{className:`${I1} flex items-center gap-7`,children:N3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))}),G4,n2("nav",{className:`${I1} flex items-center justify-end gap-7`,children:[e4.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`,"end")),z4]})]}):U?n2("div",{className:`${c1.flex} items-center justify-between gap-8`,children:[n2("div",{className:"flex items-center gap-7",style:K,children:[G4,O0("nav",{className:`${I1} flex items-center gap-7`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))})]}),O0("nav",{className:`${I1} flex items-center justify-end gap-7`,children:z4})]}):O0("div",{className:`${c1.flex} items-center justify-between gap-8`,children:V==="right"?n2(Ch,{children:[n2("nav",{className:`${I1} flex items-center gap-7`,children:[m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`)),z4]}),G4]}):n2(Ch,{children:[G4,n2("nav",{className:`${I1} flex items-center gap-7`,children:[m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`)),z4]})]})}),!i1&&n2("div",{className:"hidden min-[801px]:max-[1500px]:flex flex-col gap-3",children:[n2("div",{className:"flex items-center justify-between",children:[y4(j6,!0),n2("div",{className:`${I1} flex shrink-0 items-center gap-5`,children:[S3,u0,z1,t4,a6()]})]}),O0("nav",{className:`${I1} flex items-center gap-6 border-t border-line/60 pt-2.5`,children:m3.map((S1,i0)=>V3(S1,`${S1.href}-${i0}`))})]}),n2("div",{className:"hidden max-[800px]:flex items-center justify-between",children:[y4(j6,!0),n2("div",{className:"flex shrink-0 items-center gap-4",children:[S3,t4,a6(I1),C9&&n2("button",{type:"button","aria-label":d?"Close menu":"Open menu","aria-expanded":d,onClick:()=>v(S1=>!S1),className:"flex h-11 w-11 flex-col items-center justify-center gap-1.5",children:[O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"translate-y-[3px] rotate-45":""}`}),O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"opacity-0":""}`}),O0("span",{className:`block h-px w-5 bg-current transition-transform ${d?"-translate-y-[3px] -rotate-45":""}`})]})]})]})]})}),d&&n2("div",{className:"fixed inset-x-0 top-0 bottom-0 z-40 hidden overflow-y-auto max-[800px]:flex max-[800px]:flex-col max-[800px]:gap-7 max-[800px]:bg-bg max-[800px]:px-6 max-[800px]:pt-24 max-[800px]:pb-10",children:[m3.map((S1,i0)=>O0(gh,{item:S1,mobile:!0,onNavigate:()=>v(!1)},`${S1.href}-${i0}`)),n2("div",{className:"mt-auto flex flex-col gap-4 border-t border-line pt-6",children:[i&&x1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Account"}),O0(L1,{href:"/account",onClick:()=>v(!1),className:"mono-eyebrow underline",children:"Your account"})]}),u0&&$1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Region"}),u0]}),z1&&n2("div",{className:"flex items-center justify-between",children:[O0("span",{className:"mono-eyebrow text-fg-dim",children:"Theme"}),z1]})]})]})]})}import{jsx as SZ,jsxs as $e1}from"react/jsx-runtime";var Ke1=`
|
|
142
142
|
.sf-preview-header-pick header { cursor: pointer; }
|
|
143
143
|
.sf-preview-header-pick header:hover {
|
|
144
144
|
outline: 2px solid color-mix(in srgb, ${h6.accent} 45%, transparent);
|
|
@@ -151,4 +151,4 @@ ${s}`:t.push({type:"p",text:s})});return t}var sY=()=>[{label:p("First section")
|
|
|
151
151
|
`;function LZ(){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 $e1("div",{className:"sf-preview-header-pick sf-theme-surfaces","data-selected":t||void 0,onClick:h=>{h.stopPropagation(),a()},children:[SZ("style",{children:Ke1}),SZ(tb,{previewSettings:e??void 0,editorPreview:!0,showThemeToggle:o,wordmark:i,hideLogo:n,hideMenu:n})]})}import{Render as st1}from"efficient-easel/render";import{useEffect as Ye1,useState as Xe1}from"react";import{jsx as et1}from"react/jsx-runtime";var Je1=["none","always","on_scroll_up"],Qe1=e=>Je1.includes(e)?e:"always";function ab({sticky:e,topTextColor:t,heightPx:a,theme:s,children:c}){let l=Qe1(e),r=zZ(a),{headerRef:o,scrolled:i,navHidden:n}=vh({stickyMode:l,heightPx:r}),h=wh(t),m=h==="auto"?null:{[yh]:h},u=fh(s),d=bh(Oe()),[v,g]=Xe1(!1);Ye1(()=>{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=xh(v,d);return et1("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 tt1={"Logos.logosPerRow":"columns","HeroSlide.tintOpacity":"overlay","Split.textBgTint":"overlay"};function at1(e){return Array.isArray(e)&&e.length>0&&e.every(t=>!!t&&typeof t=="object"&&typeof t.type=="string")}function sb(e){let t=e.props,a=!1;if(e.type&&t)for(let[s,c]of Object.entries(tt1)){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(!at1(l))continue;let r=l.map(sb);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 AZ(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(sb);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(sb);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 rt1,jsx as cb}from"react/jsx-runtime";var ct1=null,lt1=()=>ct1??={...lb,root:{...lb.root,render:({children:e})=>cb(rt1,{children:e})}};function rb({group:e}){let t=AZ({root:{props:{}},content:[e],zones:{}}),a=e.props??{};return cb(ab,{sticky:a.sticky,topTextColor:a.topTextColor,heightPx:a.heightPx,theme:a.sectionAccent,children:cb(st1,{config:lt1(),data:t})})}import{jsx as HZ}from"react/jsx-runtime";function ob({editing:e=!1}){let{headerGroup:t}=bw();return e?t?HZ(rb,{group:t}):HZ(LZ,{}):null}import{jsx as ot1}from"react/jsx-runtime";var FZ={label:"Header",render:({puck:e})=>ot1(ob,{editing:e?.isEditing})};import{useEffect as It1,useState as lD}from"react";var TZ="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 db,useRef as St1,useState as sD}from"react";import{jsx as ib,jsxs as PZ}from"react/jsx-runtime";var it1="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 PZ("form",{className:[n,"flex flex-col gap-2"].filter(Boolean).join(" "),noValidate:!0,onSubmit:m=>{m.preventDefault(),c()},children:[PZ("div",{className:"flex items-stretch gap-2",children:[ib("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"}),ib("button",{type:"submit",disabled:a==="sending",className:i,children:a==="sending"?"Sending\u2026":l})]}),(a==="error"||a==="invalid")&&ib("p",{role:"alert",className:"font-mono text-[11px] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:a==="invalid"?it1: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 nb({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 nt1,useState as EZ}from"react";function kh(e,t){let[a,s]=EZ(null),[c,l]=EZ(!1),r=t?.make??"",o=t?.model??"",i=t?.year??null,n=t?.modification??"",h=t!==null;return nt1(()=>{if(!h||i===null){s(null),l(!1);return}let m=!0;return s(null),l(!0),BS(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 Mh(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 Sh={fits:"Fits",doesNotFit:"Not your size",unknown:"Unknown"};function ht1(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 hb={fits:{color:"var(--accent)",dashed:!1},doesNotFit:{color:void 0,dashed:!1},unknown:{color:void 0,dashed:!0}};function VZ(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=>ht1(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 NZ,jsx as Z4,jsxs as B4}from"react/jsx-runtime";function mb({slug:e,variants:t,vehicle:a,manualMode:s,setManualMode:c}){let{answer:l,loading:r}=kh(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(mt1,{answer:l,loading:r,car:o,variants:t,onChange:a.clear}),showChangeCar:!1,cascadeErrorNote:B4(NZ,{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 mt1({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=VZ(e,s),r=e.status==="doesNotFit"?"You can still order any size here \u2014 check it suits your car first.":"",o=l.length===0?Mh(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(NZ,{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?hb.fits:hb.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 ${Sh.fits}`:n.size},n.size)})})]}):null]})}import{useEffect as _Z,useState as IZ}from"react";var Lh="(max-width: 720px) 88vw, (max-width: 1100px) 44vw, 700px";function RZ(e,t,a){return a<=1?0:((e+t)%a+a)%a}function BZ(e,t,a){return[{glyph:"\u25C1",label:"Previous angle",onClick:()=>a(RZ(e,-1,t))},{glyph:"\u27F3",label:"Reset to first angle",onClick:()=>a(0)},{glyph:"\u25B7",label:"Next angle",onClick:()=>a(RZ(e,1,t))}]}function pt1(e){let{props:t}=Gx({src:e,alt:"",fill:!0,sizes:Lh}),a=new window.Image;return t.sizes&&(a.sizes=t.sizes),t.srcSet&&(a.srcset=t.srcSet),a.src=t.src,a.decode()}function ZZ(e,t,a=pt1){let[s,c]=IZ(()=>new Set),[l,r]=IZ(t),o=e.join(`
|
|
152
152
|
`);_Z(()=>{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
153
|
`):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return _Z(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as dt1,jsx as C3,jsxs as J3}from"react/jsx-runtime";function pb({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(yg),n=XI({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(ut1,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:J3(dt1,{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 ut1({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 qZ}from"react";import{useCallback as OZ,useRef as gt1,useState as vt1}from"react";function DZ(e,t,a){return{productSlug:e,email:a.trim(),size:t?He(t):""}}function GZ(){let[e,t]=vt1("idle"),a=gt1(!1),s=OZ(()=>{a.current=!1,t("idle")},[]),c=OZ(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(DZ(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 ub({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=qZ(a.length>0?0:-1),[l,r]=qZ(""),{status:o,submit:i,reset:n}=GZ(),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 ft1}from"react";import{Fragment as bt1,jsx as Ah}from"react/jsx-runtime";function Hh({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]=ft1(null),w=e||"";if(!(w!==""&&b!==w))return Ah(bt1,{children:a});let k=Ah(_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?Ah("div",{className:u,children:k}):k;return d?Ah("button",{type:"button",onClick:d,"aria-label":g,className:v,children:S}):S}function WZ(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 jZ="Image for reference only. Actual product may vary.",UZ=e=>String(Number(e));function KZ(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=UZ(t.diameter);if(!(l.sizes.length===0||l.sizes.includes(`${r}x${UZ(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 $Z,jsx as D4,jsxs as zt1}from"react/jsx-runtime";function Fh(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function Th({text:e}){return e==="FusionForge\xAE"?zt1($Z,{children:["FusionForge",D4(i6,{})]}):D4($Z,{children:e})}function YZ(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:Lh,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(mb,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:D4(nb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=LN(s,t.shown.finish),l=D7(s,t.part),r=En(t),o=Ag(c,r),i=o?[...o]:WZ(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(Hh,{src:h,alt:m,fill:!0,sizes:Lh,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(Hh,{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:xt1(n,c,r,t.manualMode),referenceNote:KZ(c,l,r,o!=null)?jZ:"",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(pb,{selection:t,spec:l?js(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:D4(nb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:D4(ub,{wheel:s,editing:a})}}function xt1(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 yt1,useContext as wt1,useEffect as Ct1,useState as XZ}from"react";import{jsx as Mt1}from"react/jsx-runtime";var JZ="storefront-wishlist";function kt1(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var QZ=yt1(null);function oe0({children:e}){let[t,a]=XZ([]),[s,c]=XZ(!1);Ct1(()=>{let o=t3.getItem(JZ);try{o&&a(kt1(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),t3.setItem(JZ,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return Mt1(QZ.Provider,{value:r,children:e})}function eD(){let e=wt1(QZ);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var tD="data-option-row";import{Fragment as m5,jsx as w1,jsxs as K1}from"react/jsx-runtime";var Lt1=4e3;function At1(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}var Ht1=.72;function Ft1(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)*Ht1).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=eh(i),g=th(o),b=ah(m),f=lB(sh(u),bN(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,$=YZ(e,t,s),{bullets:u1}=yL(),x1=hN(e),X0=uN(e),o0=l?$.vehicle:null,I1=l?$.vehicleMemory:null,[c0,l0]=sD(!1);db(()=>{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();db(()=>{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"&&!xN(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?_C(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=St1(null);return db(()=>{s||q0.current===e.slug||(q0.current=e.slug,IC({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(Th,{text:e1.label})}):w1("span",{className:"text-fg",children:w1(Th,{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(Et1,{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(Vt1,{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(Th,{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":Ft1($.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(aD,{row:e1,onPick:k},e1.key)),U&&$.preOrder?K1(m5,{children:[c==="belowSpecs"&&h&&J0,$.preOrder]}):K1(m5,{children:[o0,u0.map(e1=>w1(aD,{row:e1,onPick:k},e1.key)),n&&w1(Tt1,{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:TZ,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),Lt1);return}if(_(!1),s)return;let e1=TN(e,N,z,{choice:I,qty:S},{fitmentLabel:Z?$.specCaption:G.appliedName?`For ${G.appliedName}`:"",fitmentKey:Z?`manual|${$.specCaption}`:`vehicle|${At1(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(Nt1,{slug:e.slug,name:e.name})]}),Q&&N&&w1(_t1,{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 Tt1({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 aD({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]",[tD]: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 cD(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var Pt1=6;function Et1({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=ZZ(t.photos,o),n=cD(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]?Fh(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:BZ(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 Vt1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=cD(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,Pt1)}, 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 ${Fh(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 ${Fh(t,i)}`})]},i)})})}function Nt1({slug:e,name:t}){let{has:a,toggle:s}=eD(),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 _t1({partNumbers:e,productSlug:t}){let[a,s]=sD(""),{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 Bt1,jsx as _c,jsxs as Zt1}from"react/jsx-runtime";function gb({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=lD(null),[i,n]=lD(!1);return It1(()=>{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(Rt1,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):_c(A4,{size:"tall",children:"Loading product\u2026"})}function Rt1({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?Vn(e.tyre):Ks(e.wheel),r=vc(l,{editing:t}),o=gc();return Zt1(Bt1,{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 qt1,jsx as o8,jsxs as Wt1}from"react/jsx-runtime";var Dt1=D3;function Ph({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=$0();return o8(z2,{kinds:Dt1,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(Ot1,{pricePlacement:t,showVehicleFitment:a,...s}):o8(A4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function Ot1({pricePlacement:e,showVehicleFitment:t,...a}){let s=z3(!0);return s?o8(Gt1,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):o8(A4,{size:"tall",children:p("Loading sample product\u2026")})}function Gt1({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=vc(e,{editing:!0}),l=gc();return Wt1(qt1,{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 Ut1({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(Ph,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Ic(gb,{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(Ph,{pricePlacement:a,showVehicleFitment:s,...m})}var rD={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(Ut1,{source:e.source,editing:e.puck?.isEditing,pricePlacement:sB(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Jt(e.heroLayout),imageRatio:th(e.imageRatio),textAlign:eh(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:ah(e.galleryMode),imageFit:sh(e.imageFit)})};import{jsx as jt1}from"react/jsx-runtime";var oD={label:"Product",defaultProps:{code:"",finish:""},render:e=>jt1(nf,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as Kt1}from"react/jsx-runtime";var iD={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>Kt1(UB,{style:e,editing:t?.isEditing})};import{useEffect as Yt1,useRef as Xt1}from"react";import{jsx as Rc,jsxs as nD}from"react/jsx-runtime";var $t1={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function vb({variants:e,answer:t,loading:a=!1}){return t?nD("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:Mh(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=$t1[c];return nD("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:Sh[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 fb,jsxs as hD}from"react/jsx-runtime";var bb="Will it fit *your car?*",xb="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",zb="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",yb="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 wb({num:e,title:t=bb,description:a=xb,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=I4({autoApply:!0}),{answer:h,loading:m}=kh(r,vo(n.applied?.vehicle)),u=Xt1(i);return u.current=i,Yt1(()=>{u.current?.(h)},[h]),hD("section",{className:l?yb:zb,children:[l?null:fb(s0,{num:e,title:t,description:a,accent:!0}),fb(X3,{cascade:n.cascade}),s&&c?hD("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,fb(vb,{variants:o,answer:h,loading:m})]})}import{jsx as Bc,jsxs as ea1}from"react/jsx-runtime";var Jt1=["tyre"];function Cb(e){return Bc(z2,{kinds:Jt1,type:"TyreFitment",editing:e.editing,children:Bc(Qt1,{...e})})}function Qt1({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?ea1("section",{className:l?yb:zb,children:[l?null:Bc(s0,{num:e,title:t||bb,description:a||xb,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(wb,{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 ta1}from"react/jsx-runtime";var mD={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 ta1(Cb,{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 dD}from"react/jsx-runtime";var pD="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",uD="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",aa1=[],sa1=["tyre"];function kb(e){return i8(z2,{kinds:sa1,type:"TyreSizes",editing:e.editing,children:i8(ca1,{...e})})}function ca1({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?dD("section",{className:c?uD:pD,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 dD("section",{className:c?uD:pD,children:[n,i8(la1,{variants:i,fieldUsage:l?.fieldUsage??aa1}),i8(s5,{text:h?uo:""})]})}function la1({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 ra1}from"react/jsx-runtime";var gD={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ra1(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)),omitHead:t,editing:e.puck?.isEditing})}};var vD={AlloyWheelsListing:v_,BrandStrip:IB,BundleOffer:OB,CartBlock:$B,CatalogFilterBar:iZ,CheckoutCTA:__,CollectionCard:hZ,Collections:O_,CompatibleTyres:bI,CountrySwitchBlock:mZ,DeliveryOptions:wI,DetailRows:II,EuTyreLabel:pZ,FitmentFinder:qI,FitmentTable:hR,Gallery:bR,GalleryB:AR,GalleryItem:uZ,Header:FZ,ProductGrid:KR,ProductHero:rD,ProductRef:oD,RelatedProducts:uB,SearchBlock:iD,SpecTable:HB,TyreFitment:mD,TyreSizes:gD};var oa1={AlloyWheelsListing:x_,BrandStrip:k_,BundleOffer:M_,CartBlock:S_,CatalogFilterBar:V_,CheckoutCTA:I_,CollectionCard:Z_,Collections:q_,CompatibleTyres:xI,CountrySwitchBlock:zI,DeliveryOptions:kI,DetailRows:BI,EuTyreLabel:ZI,FitmentFinder:WI,FitmentTable:mR,Gallery:yR,GalleryB:HR,GalleryItem:IR,Header:RR,ProductGrid:YR,ProductHero:rB,ProductRef:pB,RelatedProducts:dB,SearchBlock:gB,SpecTable:TB,TyreFitment:PB,TyreSizes:EB},G0=et(vD,oa1);import{jsx as x4,jsxs as Eh}from"react/jsx-runtime";function Sb(e={}){let t=dC();return x4(WL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:x4(ia1,{...e})})}var fD="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]",Mb="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function ia1({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:Eh("div",{className:fD,children:[y1,j?x4(l,{className:`${Mb} items-start`}):Eh("form",{onSubmit:U,children:[x4(l,{className:`${Mb} items-start`}),K]})]})}):x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Eh("div",{className:fD,children:[y1,x4(Do,{eyebrow:e,heading:t,intro:a}),j?x4(qo,{successMessage:c}):K||Eh("form",{onSubmit:U,className:Mb,children:[x4(Oo,{}),x4(Go,{buttonLabel:s})]})]})})}import{jsx as na1}from"react/jsx-runtime";var Lb={boxes:{type:"slot",allow:["BookingBox"]}},bD={label:"Booking Form",fields:Lb,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>na1(Sb,{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 xD={fields:{_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message"),boxes:Lb.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 zD={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Wo.map(e=>[Uo[e],g1(Au[e],Ke(Au[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 ha1,LinkIcon as yD,EyeOffIcon as ma1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var wD={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(ha1,{})),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(yD,{}),[{label:"\u2014 Not linked \u2014",value:""},...f0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:l1("Hidden",!1,Zc(ma1,{}))},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=Du(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||Du(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(yD,{}),s,"")}}),t}};import{useEffect as pa1,useRef as ua1,useState as da1}from"react";import{jsx as kD,jsxs as xa1}from"react/jsx-runtime";var ga1=12,Vh=null,CD=null;function va1(e=!1){let t=i2();if((e||CD!==t)&&(Vh=null),!Vh){let a=R3();CD=t,Vh=J1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return Vh}function fa1(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 ba1(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:fa1(e.published_at)||void 0}}function b9({value:e,onChange:t,snapshotCount:a=ga1}){let[s,c]=da1("idle"),l=Array.isArray(e),r=l?e.length:0,o=ua1(!0),i=m=>{c("loading"),va1(m).then(u=>{if(!o.current)return;if(u===null){c("error");return}c("idle");let d=u.slice(0,a).map(ba1);b6(d,e??null)&&t(d)})};pa1(()=>(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 xa1("div",{children:[kD(Ol,{label:"Blog posts"}),kD(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 za1}from"react";import{jsx as _0,jsxs as n8}from"react/jsx-runtime";var MD=3,AD="featured",Nh="tabs",HD="portrait",pa="spread",_h="count",FD=[{label:"Even grid",value:"even"},{label:"Featured first",value:AD},{label:"Tabs",value:Nh},{label:"Photo cards",value:HD},{label:"Staggered spread",value:pa},{label:"Count",value:_h}],ya1=[HD,pa],TD="even",Z6={min:2,max:11,step:1,fallback:7,unit:"of 12"},wa1="bottom-left",Ca1=55,ka1="bottom";function Ma1(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 SD={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"},LD={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"},Sa1="Find by name",La1="Nobody by that name.";function Aa1(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function Ha1({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 Fa1({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 Ta1({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 Pa1="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]",Ea1="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]",Va1="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 Ab({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]=za1(""),z=s??[],k=r?z.length:typeof l=="number"&&l>0?l:MD,S=z.slice(0,k),H=o&&S.length===0;if(S.length===0&&!o)return null;let I=r?MD: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===AD&&P.length>1,F=Ma1(m),_=h===Nh,Z=h===_h,G=ya1.includes(h??""),V=b&&!_&&!Z&&!E,j=V?P.filter(N=>Aa1(N.title,f)):P;return Z?_0("section",{className:Va1,children:_0(Ta1,{count:P.length,words:v||t===void 0?void 0:Y(t,!1),href:v?void 0:a?.href})}):n8("section",{className:v?Ea1:Pa1,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:Sa1}),_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:La1})]}),_?_0(Fa1,{cards:P,scaffold:H}):G?_0("div",{className:`sf-card-grid grid${D.className} ${h===pa?"grid-cols-3 max-[800px]:grid-cols-2":LD[Math.min(4,Math.max(2,c??3))]??LD[3]}`,style:D.style,children:j.map((N,Q)=>_0(Ha1,{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??Ca1,darkenStyle:ka1,placement:wa1},`${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} ${SD[Math.min(4,Math.max(1,c??3))]??SD[3]}`,style:D.style,children:j.map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H},`${N.slug}-${Q}`))})]})}import{LayoutIcon as Ia1,ColumnsIcon as Ra1,WidthIcon as Ba1,ImageIcon as Za1,OpacityIcon as Da1,ListIcon as Oa1,HashIcon as Ga1,SearchIcon as qa1}from"efficient-easel/icons";import{jsx as _a1}from"react/jsx-runtime";var x9={num:A.sectionNumber,title:"Section title",link:A.viewAll},Na1=()=>[{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.")}],PD=(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||"#"}),ED={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,Na1()):null,r=l?l.sample?[]:l.rows.map(PD):e.posts;return _a1(Ab,{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(PD):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 Wa1=50,VD={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:Wa1}),_gLayout:x("Layout"),layout:g1("Arrangement",h8(Ia1,{}),FD,TD),columns:s1("Columns",h8(Ra1,{}),2,4,1,3),featuredWidth:s1("Featured width",h8(Ba1,{}),Z6.min,Z6.max,Z6.step,Z6.fallback,Z6.unit),listCover:l1("Show cover image on the smaller cards",!0,h8(Za1,{})),featuredDarken:s1("Darken",h8(Da1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:l1("Filter by name",!1,h8(qa1,{})),gap:Z3("Events"),showAll:l1("Show all blog posts",!1,h8(Oa1,{})),limit:s1("Posts to display",h8(Ga1,{}),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===Nh||s.layout===_h)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 Ih}from"react/jsx-runtime";import{SettingsDefaultReset as Ua1,SettingsField as ja1,SettingsSegmented as Ka1}from"efficient-easel/panel";import{WidthIcon as $a1}from"efficient-easel/icons";function Rh({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 Ih(ja1,{label:n,labelId:c,icon:Ih($a1,{}),value:o?l:void 0,changed:!o,action:Ih(Ua1,{words:yy()?.panel,label:n,changed:!o,onReset:()=>a(void 0)}),hint:r,children:Ih(Ka1,{options:[{label:p(dm.page),id:"content"},{label:p(dm.full),id:"full"}],value:i,ariaLabel:n,onChange:a})})}import{SettingsField as Ya1,SettingsSwitch as Xa1}from"efficient-easel/panel";import{BlockColumnIcon as Ja1}from"efficient-easel/icons";import{Fragment as Qa1,jsx as Dc}from"react/jsx-runtime";function Hb({value:e,onChange:t}){let a=C5(),s={...q9,...e},c=s[a];return Dc(Ya1,{label:p("Logo fills its column"),icon:Dc(Ja1,{}),action:Dc(Xa1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its column on {view}",{view:p(w5[a])})}),hint:Dc(Qa1,{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 es1,SettingsSwitch as ts1}from"efficient-easel/panel";import{FullWidthIcon as as1}from"efficient-easel/icons";import{Fragment as ss1,jsx as Oc}from"react/jsx-runtime";function Fb({value:e,onChange:t}){let a=C5(),s={...W9,...e},c=s[a];return Oc(es1,{label:p("Logo fills its row"),icon:Oc(as1,{}),action:Oc(ts1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its row on {view}",{view:p(w5[a])})}),hint:Oc(ss1,{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 cs1}from"react/jsx-runtime";function Tb({value:e,onChange:t}){return cs1(Zs,{label:"Columns per line",unit:p("columns"),steps:Ny,value:_l(e),onChange:t})}import{useContext as ls1,useEffect as rs1,useRef as os1,useState as _D}from"react";import{jsx as ua,jsxs as ND}from"react/jsx-runtime";function Gc(){let e=WB();return ND("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}),ND("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 Pb,jsxs as hs1}from"react/jsx-runtime";var ID={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},is1={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"},ns1={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 Eb({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=ls1(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?ID[b==="desktop"?o:b==="tablet"?i:n]:`${ID[n]} ${is1[i]} ${ns1[o]}`,z=os1(null),[k,S]=_D(1),[H,I]=_D(!1);if(rs1(()=>{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:Ew(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 Pb("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:hs1("div",{style:P,children:[Pb(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${w}`,minEmptyHeight:160}),Pb(Gc,{})]})})}import{jsx as ms1}from"react/jsx-runtime";var Vb={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},RD={label:"Footer",fields:Vb,defaultProps:{columns:_y,logoFill:q9,logoRowFill:W9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>ms1(Eb,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as Bh}from"react/jsx-runtime";var BD={fields:{_gLayout:x("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>Bh(Rh,{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})=>Bh(Tb,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>Bh(Hb,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>Bh(Fb,{value:e,onChange:t})},_gBlocks:x("Blocks"),blockList:N5("Footer"),blocks:Vb.blocks}};import{WeightIcon as ps1,WidthIcon as us1,PhoneIcon as ds1}from"efficient-easel/icons";import{jsx as Nb}from"react/jsx-runtime";var ZD={fields:{_gStyle:x("Style"),thickness:s1("Thickness",Nb(ps1,{}),1,8,1,1,"px"),lengthPct:s1("Length",Nb(us1,{}),10,100,1,100,"%"),hideOnMobile:l1("Hide on mobile",!1,Nb(ds1,{}))}};var DD={fields:{_gContent:x("Content"),heading:E1("Heading","Join our email list"),placeholder:q("Field placeholder","Email address"),buttonLabel:q("Button","Subscribe")}};import{AlignLeftIcon as fs1}from"efficient-easel/icons";import{jsx as OD}from"react/jsx-runtime";var gs1={start:"items-start",center:"items-center",end:"items-end"};function _b({direction:e="vertical",gap:t,align:a="start",content:s}){let c=B3("FooterGroup",t,e==="horizontal"?"inline":"block");return OD("div",{className:"min-w-0",children:OD(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${gs1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as vs1}from"react/jsx-runtime";var Ib={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},GD={label:"Footer Box",fields:Ib,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>vs1(_b,{direction:e,gap:t,align:a,content:s})};import{jsx as bs1}from"react/jsx-runtime";var qD={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",bs1(fs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:x("Blocks"),blockList:N5("FooterGroup"),blocks:Ib.blocks}};import{WidthIcon as xs1,AlignLeftIcon as zs1,LogoIcon as ys1,PaddingTopIcon as ws1,PaddingRightIcon as Cs1,PaddingBottomIcon as ks1,PaddingLeftIcon as Ms1}from"efficient-easel/icons";import{jsx as z9}from"react/jsx-runtime";var WD={fields:{_gContent:x("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:x("Style"),widthPct:s1("Width",z9(xs1,{}),40,400,1,100,"%"),align:v1("Alignment",z9(zs1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:v1("Logo color",z9(ys1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:s1("Padding top",z9(ws1,{}),0,120,2,0,"px"),padRight:s1("Padding right",z9(Cs1,{}),0,120,2,0,"px"),padBottom:s1("Padding bottom",z9(ks1,{}),0,120,2,0,"px"),padLeft:s1("Padding left",z9(Ms1,{}),0,120,2,0,"px")}};import{Button as Ss1}from"efficient-shell/ui";import{SettingsField as Ls1}from"efficient-easel/panel";import{FieldSelect as As1}from"efficient-easel/fields";import{MenuIcon as Hs1}from"efficient-easel/icons";import{useCallback as Fs1,useEffect as UD,useState as Rb}from"react";import{jsx as y9,jsxs as jD}from"react/jsx-runtime";function Bb({value:e,onChange:t}){let[a,s]=Rb(null),[c,l]=Rb(!1),r=Fs1(f=>{s(f),l(!0)},[]);UD(()=>{let f=!1;return Ap(R3()).then(w=>{f||r(w)}).catch(()=>{f||s([])}),()=>{f=!0}},[r]),UD(()=>{let f=!1,w=eS(()=>{fM(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]=Rb(!1),b=()=>{i&&(g(!0),Ap(R3(),!0).then(f=>{r(f);let w=Kr(f,e);w&&u(w)}).catch(()=>{}).finally(()=>g(!1)))};return jD("div",{children:[y9(Ls1,{label:p("Menu"),icon:y9(Hs1,{}),hint:!o&&a&&a.length===0?p("Create menus in {place}, then pick one here.",{place:p("Storefront \u2192 Menus")}):void 0,children:y9(As1,{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:iM()}):null,n?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:nM(e?.name??p("The linked menu"))}):null,i&&!n?jD("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(Ss1,{variant:"link",size:"sm",className:"shrink-0",onClick:b,disabled:v,children:v?p("Updating\u2026"):p("Update links")})]}):null]})}import{PhoneIcon as Ts1,LineBetweenIcon as Ps1}from"efficient-easel/icons";import{jsx as Zb}from"react/jsx-runtime";var KD={fields:{_gContent:x("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>Zb(Bb,{value:e,onChange:t})},heading:q("Heading","Column heading"),_gStyle:x("Style"),accordionMobile:l1("Show as accordion on mobile",!1,Zb(Ts1,{})),showDividers:l1("Dividers between links",!1,Zb(Ps1,{}))}};import{jsx as qc}from"react/jsx-runtime";var $D={small:16,medium:20,large:24},Db=0,Ob=32,XD=2,Wc=0,YD={start:"justify-start",center:"justify-center",end:"justify-end"};function Gb({iconStyle:e=oe,iconSize:t="medium",align:a="start",gap:s=Wc,editing:c=!1}){let l=GB(),r=ww(yw(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=$D[t]??$D.medium,n={gap:Math.min(Ob,Math.max(Db,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)] ${YD[a]??YD.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(Nw,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as Es1}from"efficient-shell/ui";import{Fragment as Vs1,jsx as qb,jsxs as Ns1}from"react/jsx-runtime";function Wb(){let{openPanel:e}=sr();return Ns1(Vs1,{children:[qb(Ol,{label:"Social links"}),qb("p",{className:"es-field-hint sf-hint-keep",children:p("The links are typed once for the whole website, in Site settings.")}),qb(Es1,{variant:"link",size:"sm",onClick:e,children:p("Edit social links \u2192")})]})}import{StylesIcon as _s1,TextSizeIcon as Is1,AlignLeftIcon as Rs1,GapIcon as Bs1}from"efficient-easel/icons";import{jsx as Uc}from"react/jsx-runtime";var JD={fields:{_gStyle:x("Style"),iconStyle:v1("Icon style",Uc(_s1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],oe),iconSize:v1("Icon size",Uc(Is1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Uc(Wb,{})},_gLayout:x("Layout"),align:v1("Alignment",Uc(Rs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:s1("Gap",Uc(Bs1,{}),Db,Ob,XD,Wc,"px")}};import{TextSizeIcon as Zs1}from"efficient-easel/icons";import{jsx as Ds1}from"react/jsx-runtime";var QD={fields:{_gContent:x("Content"),text:E1("Body","Footer text"),_gStyle:x("Style"),size:v1("Size",Ds1(Zs1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:_o()}};var eO={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 tO={fields:{}};var Zh="e.g. D00123 \xB7 blank = the whole store";import{useState as m8}from"react";import{Fragment as qs1,jsx as h3,jsxs as jc}from"react/jsx-runtime";var Dh="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",Os1="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))]",Gs1="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 Ub({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?Gs1:Os1,children:[s?null:jc(qs1,{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:Dh})}),h3(Z2,{label:"Email \u2014 never shown publicly",children:h3("input",{type:"email",value:o,onChange:H=>i(H.target.value),className:Dh})})]}),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:Dh})}),h3(Z2,{label:"Your review",required:!0,children:h3("textarea",{required:!0,rows:5,value:d,onChange:H=>v(H.target.value),className:Dh+" 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 Ws1}from"react/jsx-runtime";var Kc={eyebrow:"Your turn",title:"Leave a *review.*"},aO={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return Ws1(Ub,{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 sO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",Kc.eyebrow),title:O("Heading",Kc.title),_gSource:x("Reviews"),designCode:e3(q("Design code",Zh))},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.ReviewForm.headRows)};import{StylesIcon as tc1,HashIcon as ac1,ColumnsIcon as sc1}from"efficient-easel/icons";import{useEffect as Us1,useState as js1}from"react";function cO(e,t){let[a,s]=js1(null);return Us1(()=>{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 Qs1,jsx as O4,jsxs as Oh}from"react/jsx-runtime";var Ks1=()=>[{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 $s1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function Ys1({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 Xs1="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))]",Js1="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({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=cO(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?Ks1():[];return!o&&m.length===0?null:O4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Oh("div",{className:r?Js1:Xs1,children:[r?null:Oh(Qs1,{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=>Oh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",h?"opacity-60":""].join(" "),children:[O4(Ys1,{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))}),Oh("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:$s1(u.createdAt)})]})]},u.id))})]})})}import{jsx as ec1}from"react/jsx-runtime";var $c={eyebrow:"Reviews",title:"From our *customers.*"},lO={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 ec1(jb,{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 Kb}from"react/jsx-runtime";var rO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",$c.eyebrow),eyebrowLook:g1("Eyebrow style",Kb(tc1,{}),[...k4],l7("Reviews")),title:O("Heading",$c.title),_gSource:x("Reviews"),limit:s1("Reviews to display",Kb(ac1,{}),3,12,1,6),designCode:e3(q("Design code",Zh)),_gStyle:x("Style"),columns:s1("Columns",Kb(sc1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Reviews.headRows)};import{FullWidthIcon as rc1}from"efficient-easel/icons";import{jsx as $b,jsxs as cc1}from"react/jsx-runtime";function Yc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=cc1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":yZ(c),"data-header-menu-row":wZ(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?$b("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,$b(t,{minEmptyHeight:120})]});return e==="header"?$b(pM,{children:o}):o}import{jsx as lc1}from"react/jsx-runtime";var Yb={sections:{type:"slot"}},oO={label:"Site Footer",fields:Yb,render:({sections:e,fullWidth:t,puck:a})=>lc1(Yc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as oc1}from"react/jsx-runtime";var iO={fields:{fullWidth:l1("Full width",!1,oc1(rc1,{})),sections:Yb.sections}};import{CaseIcon as nc1,ContrastIcon as hc1,FullWidthIcon as mc1,HeightIcon as pc1,LayoutIcon as uc1,StickyIcon as dc1}from"efficient-easel/icons";import{jsx as ic1}from"react/jsx-runtime";var Xb={sections:{type:"slot"}},nO={label:"Site Header",fields:Xb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>ic1(Yc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as da}from"react/jsx-runtime";var{sectionAccent:gc1}=X9(e=>Qf(e)??xZ,"Follow the site theme"),hO={fields:{heightPx:s1("Height",da(pc1,{}),k5.min,k5.max,2,k5.default,"px"),fullWidth:l1("Full width",!1,da(mc1,{})),sectionAccent:gc1,topTextColor:v1("Text color at the top",da(hc1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:v1("Letters",da(nc1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:v1("Menu row",da(uc1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:v1("Sticky header",da(dc1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:Xb.sections}};import{jsx as Gh,jsxs as vc1}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 Jb({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?Gh("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:Gh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):vc1("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:[Gh(cA,{eyebrow:m,title:u}),Gh(jo,{body:d,buttonLabel:v,consent:g,form:b,submission:f,showForm:z,resolving:w,editing:o})]})}var mO={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Ko.map(e=>[$o[e],g1(Pu[e],Ke(Pu[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 fc1}from"react/jsx-runtime";var Qb={boxes:{type:"slot",allow:["SubmitBox"]}},pO={label:"Photo Submission Form",fields:Qb,defaultProps:{eyebrow:w0.eyebrow,title:w0.title,body:w0.body,formSlug:"",buttonText:w0.buttonText,consent:w0.consent},render:e=>fc1(Jb,{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 uO={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:Qb.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 bc1=["issues","posts"],dO=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],ex="issues";function tx(e){return bc1.includes(e)?e:ex}var xc1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function gO(e,t){let a=tx(t),s={...e};for(let[c,l]of Object.entries(xc1))l.includes(a)||delete s[c];return s}import{CategoryIcon as yc1,HashIcon as wc1}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},vO=()=>["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 zc1(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 qh(e,t){if(e==="issues")return C1(t.issues,vO(),t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?zc1(a.slice(0,s)):[];return C1(c,vO(),t.puck)}import{jsx as fO}from"react/jsx-runtime";var bO={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",fO(yc1,{}),[...dO],ex),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",fO(wc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",I0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>gO(t,e.props.contentType)};import{HashIcon as Sc1}from"efficient-easel/icons";import{useState as Cc1}from"react";import{jsx as Q3,jsxs as w9}from"react/jsx-runtime";var kc1="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]=Cc1(""),{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:kc1}),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 Mc1}from"react/jsx-runtime";var Y0={...I0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},xO={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=qh("posts",e);return Mc1(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 Lc1}from"react/jsx-runtime";var zO={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",Lc1(Sc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",Y0.archiveText),archiveHref:H1("Archive link")}};import{jsx as Ac1}from"react/jsx-runtime";var yO={label:"Booking box",defaultProps:{},render:e=>Ac1(Hu,{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 ax,useState as sx}from"react";import{Fragment as Hc1,jsx as H0,jsxs as k3}from"react/jsx-runtime";var wO="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 cx({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]=sx(S);ax(()=>{k.includes(H)||I(k[0]??P8)},[k.join("|")]),ax(()=>{b&&k.includes(b)&&I(b)},[b]);let P=U=>{I(U),E(null),f?.(U)},[D,E]=sx(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]=sx(!1);return ax(()=>{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(Hc1,{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"?`${wO} min-h-[140px] resize-y leading-[1.5]`:U.type==="checkbox"?"size-4 self-start accent-accent":wO})},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 Fc1}from"react/jsx-runtime";var CO={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=>Fc1(cx,{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 kO}from"react/jsx-runtime";function lx({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return kO("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:kO("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as Tc1}from"react/jsx-runtime";var MO={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>Tc1(lx,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as Pc1}from"react";import{jsx as rx,jsxs as SO}from"react/jsx-runtime";function ox({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=Wp(),[c,l]=Pc1("");return SO("div",{className:"w-full min-w-0",children:[e?rx("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:Y(e,!1)}):null,SO("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:G3.footerSignup})},children:[rx("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"}),rx("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 Ec1}from"react/jsx-runtime";var LO={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>Ec1(ox,{heading:$4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as Wh,jsxs as Nc1}from"react/jsx-runtime";var Vc1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function ix({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 Nc1("div",{className:`flex min-w-0 flex-col ${Vc1[a]} [container-type:inline-size]`,style:g,children:[Wh(L1,{href:"/","aria-label":d?`${d} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:Wh(xe,{variant:"footer",sizePx:v,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d,fitWordmarkToContainer:!0,fitFloorPx:DC})}),e?Wh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:M(e)}):i?Wh("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 _c1}from"react/jsx-runtime";var AO={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})=>_c1(ix,{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 Ic1}from"react/jsx-runtime";var HO={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>Ic1(Ra,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as Rc1}from"react/jsx-runtime";var FO={label:"Social Logos",defaultProps:{iconStyle:oe,iconSize:"medium",align:"start",gap:Wc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>Rc1(Gb,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as Zc1}from"react/jsx-runtime";var Bc1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function nx({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?p("Add a line of footer text."):"");return c?Zc1("p",{className:`${Bc1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:M(c)}):null}import{jsx as Dc1}from"react/jsx-runtime";var TO={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>Dc1(nx,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as Oc1}from"react/jsx-runtime";var PO={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>Oc1(Rp,{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 Gc1}from"react/jsx-runtime";var EO={label:"Legal Line",render:()=>Gc1(Gc,{})};import{jsx as qc1}from"react/jsx-runtime";var VO={label:"Submit box",defaultProps:{},render:e=>qc1(Eu,{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 Wc1}from"react/jsx-runtime";var NO={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})=>Wc1(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:qh(tx(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 _O={AppointmentBooking:bD,BookingBox:yO,ContactRouting:CO,Events:ED,Footer:RD,FooterDivider:MO,FooterEmailSignup:LO,FooterGroup:GD,FooterLogo:AO,FooterMenu:HO,FooterSocial:FO,FooterText:TO,Form:PO,LegalLineBlock:EO,ReviewForm:aO,Reviews:lO,[F9]:oO,[H9]:nO,SubmitBox:VO,SubmitBuild:pO,Subscribe:NO,SubscribeBlogs:xO};var Uc1={AppointmentBooking:xD,BookingBox:zD,ContactRouting:wD,Events:VD,Footer:BD,FooterDivider:ZD,FooterEmailSignup:DD,FooterGroup:qD,FooterLogo:WD,FooterMenu:KD,FooterSocial:JD,FooterText:QD,Form:eO,LegalLineBlock:tO,ReviewForm:sO,Reviews:rO,[F9]:iO,[H9]:hO,SubmitBox:mO,SubmitBuild:uO,Subscribe:bO,SubscribeBlogs:zO},h2=et(_O,Uc1);import{jsx as O6,jsxs as ZO}from"react/jsx-runtime";var hx=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,jc1=["font","color","size","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function Uh(e){let t={};for(let a of jc1)e[a]!==void 0&&(t[a]=e[a]);return t}function Kc1(e){let t=e.fonts,a=e.sizes,s=e.typography,c=Dz(e.compression),l=(o,i)=>({id:`heading-${o}`,kind:"heading",name:`Heading ${o}`,values:Uh(i)}),r=(o,i={})=>({id:`body-${o}`,kind:"body",name:`Body ${o}`,values:Uh(i)});return[l(1,{font:Qc(t.heading),size:D6(a.headingLarge),weight:D6(s.weight),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:hx(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:hx(s.case2)}),l(3,{font:Qc(t.heading3),size:D6(a.headingSmall),weight:D6(s.weight3),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:hx(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 IO(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:Uh(t.values??{})})):null}function RO(e){return IO(e)??[]}function Bm0(e,t){let a=Kc1(t),s=IO(e);return s?s.map(c=>({...c,values:Uh({...$c1(a,c.id),...c.values})})):a}var $c1=(e,t)=>e.find(a=>a.id===t)?.values??{};function Zm0(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 Yc1(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 Xc1(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 Jc1(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 BO(e){let t=[];for(let a of e){let s=a.values,c=`.${Yc1(a)}`,l=[],r=s.font!==void 0?xz.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?Xc1(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(...Jc1(c))}return t.join(`
|
|
154
|
-
`)}import{useEasel as Qc1}from"efficient-easel/easel";var el1="color-mix(in oklab, var(--bg) 40%, #ffffff)",tl1="12vh";function al1({style:e,frameClass:t,children:a}){let{appState:s}=Qc1(d=>d),c=s.data.content,l=s.data.root;if(tC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:el1,minHeight:"100vh",paddingBottom:tl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?cC(l,c):null,i=o?{[sC]:o}:null,n=sy(l?.widthChoice),h=n?{[ay]:n}:null,m=r?null:kZ(c),u=m?{[zh]: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 DO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function mx({w:e,children:t}){let{frameClass:a,style:s}=DO(e);return O6("div",{className:a,style:s,children:t})}function px({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?Vz[Ez(a)]:Nz(s):w,U=V?c:I,i1=BO(RO(V?void 0:G)),y1=V?l:F,K=DO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Oz(y1),...K.style,...h?{}:zm(n)};return ZO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...mm(W),...Kz(mm(W)),...Bz(V?void 0:z,V?void 0:k,V?void 0:H),...Yz(V?void 0:P),...Xz(V?void 0:D),...Gy(V?void 0:E),...ty(V?void 0:_)},"data-sf-headings":Zz(U),"data-sf-card-shadow":V?void 0:_z(z),"data-sf-card-gap":V?void 0:Iz(S),"data-sf-card-hover":V?void 0:Rz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,ZO(BT,{grayscale:V?void 0:Z,children:[O6(al1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var ux=e=>{e.target?.closest?.("a")&&e.preventDefault()};function OO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:zm(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(mx,{w:a,children:s})})}import{jsx as gx}from"react/jsx-runtime";import{ListIcon as sl1,PaddingTopIcon as cl1}from"efficient-easel/icons";function ll1(){return{type:"custom",render:({value:e,onChange:t})=>gx(Rh,{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 rl1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],WO={pageBackground:iw(),topSpace:g1("Top space",gx(cl1,{}),rl1,aC),widthChoice:ll1()},ol1="Record type",dx=new Map,GO=-1;function il1(e){GO!==mp()&&(dx.clear(),GO=mp());let t=hp(),a=t.some(c=>c.key===e)?"":e,s=dx.get(a);return s||(s=g1(ol1,gx(sl1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),dx.set(a,s)),s}var qO=new WeakMap;function UO(e,t){if(!M2()||hp().length<2||Rr in e)return e;let a=il1(Br(t)),s=qO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return qO.set(e,{row:a,fields:c}),c}function nl1(e,t){let a=ym(t),s=a?a.inner:t;if(rm(s))return!1;if(s?.type==="slot")return!0;let c=Ly(s);return c==="always"?!1:c==="authored-copy"?kz(e):!0}function jO(e){let t=ym(e),a=t?t.inner:e,s=rm(a);return s?Yy(a)?0:s.level:null}function hl1(e,t,a){return a?t===0&&e===Pm.Design||t===1&&e===pw.Content:!1}var ml1=new WeakMap,pl1=new WeakMap;function jh(e,t="section"){let a=t==="page"?pl1:ml1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:jO(u),draws:nl1(m,u)||t==="page"&&jO(u)===null&&im(m,u)})),l=t==="section"&&c.some(m=>im(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&&!hl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&fw(e),i=o&&!(Pm.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?vw(n):n);return a.set(e,h),h}var KO={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as ul1}from"react/jsx-runtime";var $O={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},vx=new Set(Object.keys(Z1)),YO={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=>!vx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var dl1=Array.from(new Set([...Dx.map(e=>e.type),...vx,...rl,"GalleryItem"])),XO={name:"cellWidth",applies:(e,t,a)=>dl1.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||fz(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=gz(a.gridSpan),c=t(a);return s==null?c:ul1("div",{className:"sf-grid-cell",[vz]:String(s),children:c})}}};import{jsx as JO}from"react/jsx-runtime";var QO={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?JO(mH,{needles:om(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?JO(qz,{needles:om(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as eG}from"react/jsx-runtime";var tG={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 ${Uz}`:"sf-section-corners";return s?eG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},gl1=["CollectionCard"],aG={name:"cardCorners",applies:(e,t,a)=>gl1.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=jz(a.cardCorners,a.cardCornerSides),c=t(a);return s?eG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var sG={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 cG={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 lG,Fragment as vl1,jsxs as fl1}from"react/jsx-runtime";function bl1({anchor:e}){let t=vm(typeof e=="string"?e:"");return t?lG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var rG={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=>fl1(vl1,{children:[lG(bl1,{anchor:a.anchor}),t(a)]})}};import{jsx as yl1}from"react/jsx-runtime";import{jsx as xl1}from"react/jsx-runtime";import{useEffect as zl1,useRef as oG}from"react";function iG({motion:e,editing:t,children:a}){let s=oG(null),c=oG(e);return zl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,my(l);return}return hy(l)}},[e,t]),xl1("div",{ref:s,[ny]:e,children:a})}var nG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!py.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=iy(s.sectionAnimation);return c?yl1(iG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as wl1}from"react/jsx-runtime";var pG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!dy.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=uy(i),h=gy(i)?vy(i):null;return o&&typeof o.then=="function"?o.then(m=>mG(hG(m,n),h)):mG(hG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=fy(a);return s?wl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function hG(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 mG(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 Cl1}from"react/jsx-runtime";var uG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!ry.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=bm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=bm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Cl1("div",{className:l.className,style:l.style,children:r}):r}}},dG={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 kl1=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"]),gG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(kl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ml1=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"]),vG={name:"blockGroups",applies:e=>Ml1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Sl1=["Form","Stats"];function fx(e,t){let a=new Set(e),s=Rx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Sl1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Ll1=[$O,YO,SL,tG,aG,LL,XO,yT,wT,CT,kT,pG,rG,uG,nG,dG,gG,vG,sG,QO,cG,KO];function fG(e,t,a){let s=t;for(let c of Ll1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var bG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:Qy,cellWidthFields:cw,widthField:z5,heightFields:lw,anchorFields:rw,sectionThemeFields:X9,sectionAnimationFields:Jy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:jh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:Cy};function xG(e){let t={...fx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:bG};for(let[l,r]of Object.entries(e.components))fG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>jh(UO(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 $l1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Il1="Newsletter (built in)";var Nd0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Rl1=am(()=>import("./PreviewFooter-DNWYCTDR.js")),Bl1=am(()=>import("./render-client-P22XAD47.js")),Zl1={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 Dl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Jk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(px,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Zl1,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(Bl1,{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(mx,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Hm,Ol1={formSlug:E5(void 0,Il1),_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(Pl1,{}),"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=>[Ey[e],g1(Cm[e],Ke(Cm[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(Tl1,{})),trigger:v1("Trigger",n0(_l1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(bx,{}),Sm.min,Sm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Nl1,{}),Lm.min,Lm.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(El1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(bx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(bx,{}),Am.min,Am.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(Vl1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Hl1,{}))},Gl1=Ql(Ol1,"SubscribePopup");async function ql1(){return(await Ry(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function Wl1(e){let t=Fm(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(Gl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await ql1().catch(()=>[])}:l);return re(s)}var p5=Vl,Ul1={_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(zG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},Kh={root:{fields:{...WO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Mm)return Wl1(e.props);if(e?.props?.kind===wm)return Ul1;let a=t;return M2()?{[dp]:g1("Product type",n0(Al1,{}),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."),[du]:T2("Trust bullets",n0(zG,{}),fL(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===Mm){let f=Fm(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(fS,{inline:!0,content:f})]})}if(h===wm){let f=Py(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(dL,{type:uu(e),children:n0(iL,{kind:u,children:n0(zL,{content:bL(e),children:n0(lL,{slug:d?m:null,children:n0(YM,{children:t})})})})}),g=h===Vy&&!Sy(r);return d?h===G9?n0(Dl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:ux,children:v}):n0(px,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:ux,footer:n0(Rl1,{}),overlay:ga($l1,{children:[n0(Xp,{}),n0(ou,{})]}),children:v}):n0(OO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Ix(),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}},jl1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries(jl1)){let a=Kh.components;a[e]={...a[t]}}{let e=Kh.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Fl1,{}),[{label:xm.column,value:"column"},{label:xm.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 Kl1=xG(Kh),_d0=Kl1.sectionGroupAllow,lb=Kh;export{sy1 as a,cy1 as b,ly1 as c,ry1 as d,oy1 as e,fx as f,fG as g,bG as h,pj as i,mp1 as j,Lo1 as k,AZ as l,Ji1 as m,eS as n,Qi1 as o,en1 as p,jm1 as q,Bm0 as r,Zm0 as s,mq1 as t,fr1 as u,br1 as v,xr1 as w,zr1 as x,Nr1 as y,_r1 as z,OU1 as A,Jo1 as B,In1 as C,oe0 as D,Jp as E,fR1 as F,Ap as G,fM as H,li1 as I,ri1 as J,oi1 as K,mi1 as L,yM as M,Oo1 as N,R5 as O,xZ as P,Qf as Q,wh as R,kt as S,i3 as T,QU as U,wZ as V,Co1 as W,jn as X,ef as Y,g81 as Z,gQ1 as _,WR as $,kc as aa,lb as ba};
|
|
154
|
+
`)}import{useEasel as Qc1}from"efficient-easel/easel";var el1="color-mix(in oklab, var(--bg) 40%, #ffffff)",tl1="12vh";function al1({style:e,frameClass:t,children:a}){let{appState:s}=Qc1(d=>d),c=s.data.content,l=s.data.root;if(tC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:el1,minHeight:"100vh",paddingBottom:tl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?cC(l,c):null,i=o?{[sC]:o}:null,n=sy(l?.widthChoice),h=n?{[ay]:n}:null,m=r?null:kZ(c),u=m?{[zh]: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 DO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function mx({w:e,children:t}){let{frameClass:a,style:s}=DO(e);return O6("div",{className:a,style:s,children:t})}function px({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?Vz[Ez(a)]:Nz(s):w,U=V?c:I,i1=BO(RO(V?void 0:G)),y1=V?l:F,K=DO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Oz(y1),...K.style,...h?{}:zm(n)};return ZO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...mm(W),...Kz(mm(W)),...Bz(V?void 0:z,V?void 0:k,V?void 0:H),...Yz(V?void 0:P),...Xz(V?void 0:D),...Gy(V?void 0:E),...ty(V?void 0:_)},"data-sf-headings":Zz(U),"data-sf-card-shadow":V?void 0:_z(z),"data-sf-card-gap":V?void 0:Iz(S),"data-sf-card-hover":V?void 0:Rz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,ZO(BT,{grayscale:V?void 0:Z,children:[O6(al1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var ux=e=>{e.target?.closest?.("a")&&e.preventDefault()};function OO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:zm(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(mx,{w:a,children:s})})}import{jsx as gx}from"react/jsx-runtime";import{ListIcon as sl1,PaddingTopIcon as cl1}from"efficient-easel/icons";function ll1(){return{type:"custom",render:({value:e,onChange:t})=>gx(Rh,{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 rl1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],WO={pageBackground:iw(),topSpace:g1("Top space",gx(cl1,{}),rl1,aC),widthChoice:ll1()},ol1="Record type",dx=new Map,GO=-1;function il1(e){GO!==mp()&&(dx.clear(),GO=mp());let t=hp(),a=t.some(c=>c.key===e)?"":e,s=dx.get(a);return s||(s=g1(ol1,gx(sl1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),dx.set(a,s)),s}var qO=new WeakMap;function UO(e,t){if(!M2()||hp().length<2||Rr in e)return e;let a=il1(Br(t)),s=qO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return qO.set(e,{row:a,fields:c}),c}function nl1(e,t){let a=ym(t),s=a?a.inner:t;if(rm(s))return!1;if(s?.type==="slot")return!0;let c=Ly(s);return c==="always"?!1:c==="authored-copy"?kz(e):!0}function jO(e){let t=ym(e),a=t?t.inner:e,s=rm(a);return s?Yy(a)?0:s.level:null}function hl1(e,t,a){return a?t===0&&e===Pm.Design||t===1&&e===pw.Content:!1}var ml1=new WeakMap,pl1=new WeakMap;function jh(e,t="section"){let a=t==="page"?pl1:ml1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:jO(u),draws:nl1(m,u)||t==="page"&&jO(u)===null&&im(m,u)})),l=t==="section"&&c.some(m=>im(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&&!hl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&fw(e),i=o&&!(Pm.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?vw(n):n);return a.set(e,h),h}var KO={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as ul1}from"react/jsx-runtime";var $O={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},vx=new Set(Object.keys(Z1)),YO={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=>!vx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var dl1=Array.from(new Set([...Dx.map(e=>e.type),...vx,...rl,"GalleryItem"])),XO={name:"cellWidth",applies:(e,t,a)=>dl1.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||fz(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=gz(a.gridSpan),c=t(a);return s==null?c:ul1("div",{className:"sf-grid-cell",[vz]:String(s),children:c})}}};import{jsx as JO}from"react/jsx-runtime";var QO={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?JO(mH,{needles:om(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?JO(qz,{needles:om(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as eG}from"react/jsx-runtime";var tG={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 ${Uz}`:"sf-section-corners";return s?eG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},gl1=["CollectionCard"],aG={name:"cardCorners",applies:(e,t,a)=>gl1.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=jz(a.cardCorners,a.cardCornerSides),c=t(a);return s?eG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var sG={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 cG={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 lG,Fragment as vl1,jsxs as fl1}from"react/jsx-runtime";function bl1({anchor:e}){let t=vm(typeof e=="string"?e:"");return t?lG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var rG={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=>fl1(vl1,{children:[lG(bl1,{anchor:a.anchor}),t(a)]})}};import{jsx as yl1}from"react/jsx-runtime";import{jsx as xl1}from"react/jsx-runtime";import{useEffect as zl1,useRef as oG}from"react";function iG({motion:e,editing:t,children:a}){let s=oG(null),c=oG(e);return zl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,my(l);return}return hy(l)}},[e,t]),xl1("div",{ref:s,[ny]:e,children:a})}var nG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!py.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=iy(s.sectionAnimation);return c?yl1(iG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as wl1}from"react/jsx-runtime";var pG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!dy.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=uy(i),h=gy(i)?vy(i):null;return o&&typeof o.then=="function"?o.then(m=>mG(hG(m,n),h)):mG(hG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=fy(a);return s?wl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function hG(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 mG(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 Cl1}from"react/jsx-runtime";var uG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!ry.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=bm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=bm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Cl1("div",{className:l.className,style:l.style,children:r}):r}}},dG={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 kl1=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"]),gG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(kl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ml1=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"]),vG={name:"blockGroups",applies:e=>Ml1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Sl1=["Form","Stats"];function fx(e,t){let a=new Set(e),s=Rx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Sl1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Ll1=[$O,YO,SL,tG,aG,LL,XO,yT,wT,CT,kT,pG,rG,uG,nG,dG,gG,vG,sG,QO,cG,KO];function fG(e,t,a){let s=t;for(let c of Ll1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var bG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:Qy,cellWidthFields:cw,widthField:z5,heightFields:lw,anchorFields:rw,sectionThemeFields:X9,sectionAnimationFields:Jy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:jh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:Cy};function xG(e){let t={...fx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:bG};for(let[l,r]of Object.entries(e.components))fG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>jh(UO(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 $l1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Il1="Newsletter (built in)";var Nd0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Rl1=am(()=>import("./PreviewFooter-Q36PUHMP.js")),Bl1=am(()=>import("./render-client-2S7YA55G.js")),Zl1={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 Dl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Jk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(px,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Zl1,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(Bl1,{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(mx,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Hm,Ol1={formSlug:E5(void 0,Il1),_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(Pl1,{}),"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=>[Ey[e],g1(Cm[e],Ke(Cm[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(Tl1,{})),trigger:v1("Trigger",n0(_l1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(bx,{}),Sm.min,Sm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Nl1,{}),Lm.min,Lm.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(El1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(bx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(bx,{}),Am.min,Am.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(Vl1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Hl1,{}))},Gl1=Ql(Ol1,"SubscribePopup");async function ql1(){return(await Ry(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function Wl1(e){let t=Fm(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(Gl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await ql1().catch(()=>[])}:l);return re(s)}var p5=Vl,Ul1={_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(zG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},Kh={root:{fields:{...WO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Mm)return Wl1(e.props);if(e?.props?.kind===wm)return Ul1;let a=t;return M2()?{[dp]:g1("Product type",n0(Al1,{}),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."),[du]:T2("Trust bullets",n0(zG,{}),fL(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===Mm){let f=Fm(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(fS,{inline:!0,content:f})]})}if(h===wm){let f=Py(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(dL,{type:uu(e),children:n0(iL,{kind:u,children:n0(zL,{content:bL(e),children:n0(lL,{slug:d?m:null,children:n0(YM,{children:t})})})})}),g=h===Vy&&!Sy(r);return d?h===G9?n0(Dl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:ux,children:v}):n0(px,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:ux,footer:n0(Rl1,{}),overlay:ga($l1,{children:[n0(Xp,{}),n0(ou,{})]}),children:v}):n0(OO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Ix(),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}},jl1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries(jl1)){let a=Kh.components;a[e]={...a[t]}}{let e=Kh.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Fl1,{}),[{label:xm.column,value:"column"},{label:xm.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 Kl1=xG(Kh),_d0=Kl1.sectionGroupAllow,lb=Kh;export{sy1 as a,cy1 as b,ly1 as c,ry1 as d,oy1 as e,fx as f,fG as g,bG as h,pj as i,mp1 as j,Lo1 as k,AZ as l,Ji1 as m,eS as n,Qi1 as o,en1 as p,jm1 as q,Bm0 as r,Zm0 as s,mq1 as t,fr1 as u,br1 as v,xr1 as w,zr1 as x,Nr1 as y,_r1 as z,OU1 as A,Jo1 as B,In1 as C,oe0 as D,Jp as E,fR1 as F,Ap as G,fM as H,li1 as I,ri1 as J,oi1 as K,mi1 as L,yM as M,Oo1 as N,R5 as O,xZ as P,Qf as Q,wh as R,kt as S,i3 as T,QU as U,wZ as V,Co1 as W,jn as X,ef as Y,g81 as Z,gQ1 as _,WR as $,kc as aa,lb as ba};
|