efficient-storefront-blocks 0.22.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import{$ as Mx,$b as vz,$c as $h,$d as v5,$e as py,$g as Qy,$h as Cw,A as dx,Ab as Gx,Ac as Hz,Ad as Xh,Ae as D9,Af as G1,Ag as Dy,Ah as uw,B as gx,Ba as _x,Bb as qx,Bc as bl,Bd as Ml,Be as J2,Bf as Rl,Bg as Oy,Bh as dw,C as vx,Ca as S9,Cb as Rh,Cc as T9,Cd as qz,Cf as rm,Ch as gw,D as fx,Db as Dh,Dc as Fz,Dd as Wz,De as O9,Df as F2,E as bx,Ea as ol,Eb as Oh,Ec as Kh,Ed as Sl,Ee as Tl,F as xx,Fc as xl,Fd as Jh,Fe as H,Fg as y5,Fh as O4,G as Ph,Ga as il,Gb as az,Gc as Tz,Gd as Uz,Ge as D,Gf as j9,Gg as Gy,Gh as vw,H as zx,Ha as Vh,Hb as sz,Hc as Pz,Hd as Qh,He as G,Hf as K9,Hg as ee,Hh as Ql,I as yx,Ib as cz,Ic as yl,Id as _9,Ie as v1,If as Bl,Ig as qy,Ih as za,Ja as Q5,Jb as dl,Jd as jz,Je as H1,Jf as Y6,Jg as jl,Jh as X6,Kb as lz,Kd as I9,Ke as E1,Kf as wy,Kg as Kl,L as tl,La as Ix,Lb as rz,Ld as R9,Lf as Cy,Lg as Wy,Lh as er,Ma as p2,Mb as oz,Md as Kz,Mf as m8,Mg as Uy,Mh as hm,Na as Nh,Nb as H9,Nd as $z,Ne as b,Ng as $l,Ob as q6,Od as Ll,Oe as f5,Of as $9,Og as jy,Pa as t1,Pb as iz,Pc as Ez,Pe as iy,Pf as Y9,Pg as d8,Qa as H2,Qb as da,Qc as i8,Qe as a0,Qf as X9,Qg as Y1,Ra as Rx,Rd as Yz,Re as ny,Rf as J9,Rg as c6,Sb as nz,Sc as wl,Sd as em,Se as G9,Sf as ky,Sg as C,T as wx,Tc as Vz,Td as va,Te as $6,Tf as My,Tg as Z0,Ud as tm,Ue as q9,Uf as Sy,Ug as $,Vb as hz,Vc as g5,Vd as am,Vf as Zl,Vg as b0,Vh as fw,W as Cx,Wb as mz,Wc as Nz,Wd as sm,We as a1,Wg as Ky,Wh as bw,Xb as pz,Xc as Y2,Xd as cm,Xe as I3,Xf as Dl,Xg as $y,Xh as mm,Yb as uz,Yc as _z,Yd as lm,Ye as hy,Yf as Ly,Yg as Yy,Zb as dz,Zc as e4,Zd as Xz,Ze as Pl,Zf as Ay,Zg as Xy,Zh as zw,_ as kx,_b as gz,_c as Iz,_d as a6,_e as my,_f as Q9,_g as Jy,a as Jb,aa as Sx,ab as e6,ac as gl,ad as X2,ae as Jz,af as El,ag as Hy,ah as ew,ai as kw,b as Qc,ba as Lx,bb as r8,bc as vl,bd as Yh,be as Qz,bf as Vl,bh as tw,bi as Mw,c as Qb,ca as Eh,cb as pa,cc as Gh,cd as P9,ce as Al,cf as Nl,ch as aw,ci as Sw,d as ma,da as Ax,dc as R2,dd as Rz,de as Hl,df as uy,dg as Fy,dh as sw,ea as Hx,eb as Bx,ec as N0,ed as Bz,ee as ey,ef as dy,eh as cw,f as ex,fa as al,fc as fz,fd as Zz,fe as ty,ff as gy,fh as lw,fi as tr,g as y9,ga as sl,gc as fl,ge as ay,gf as vy,gg as Wl,gh as l6,gi as y4,ha as Fx,hc as o8,hd as t4,hf as ba,hh as r6,hi as ar,ia as Tx,ib as _h,ic as qh,id as a4,if as fy,ig as Vy,ih as te,ii as J6,ja as Px,jb as Ih,jd as t6,jf as b5,jh as ae,ji as s4,k as tx,ka as C9,kc as Wh,kd as n8,kf as x5,kh as rw,ki as Lw,la as k9,lb as Zx,lc as Uh,ld as E9,le as sy,lf as by,lh as w5,ma as cl,mc as bz,md as V9,me as _3,mf as xy,n as ax,nc as jh,nd as W6,ne as cy,nf as s1,ng as Ny,nh as im,o as sx,oc as d5,od as Cl,oe as Fl,of as zy,og as om,oh as Yl,pc as xz,pe as U6,pf as z5,ph as nm,q as t0,qc as F9,qe as B9,qf as W9,qh as ow,r as el,rc as zz,re as j6,rf as s6,rg as _y,rh as Xl,s as Th,sa as I2,sb as L9,sc as yz,se as Z9,sf as yy,sg as Iy,sh as se,t as ox,ta as B1,tc as wz,td as z4,te as ly,tf as _l,tg as Ry,th as iw,u as ix,uc as Cz,ud as Dz,ue as ry,uf as g1,ug as p8,uh as nw,v as nx,vc as kz,vd as kl,ve as fa,vf as U9,vg as Ul,vh as xa,w as hx,wa as D1,wc as Mz,wd as N9,we as K6,wf as a2,wg as u8,wh as hw,x as mx,xa as Ex,xb as A9,xc as Sz,xd as N3,xh as mw,y as px,ya as W1,yb as Dx,yc as Lz,yd as Oz,ye as h8,yf as Il,yg as By,yh as pw,z as ux,za as O1,zb as Ox,zc as Az,zd as Gz,ze as oy,zf as b1,zg as Zy,zh as Jl}from"./chunk-HURDX4EH.js";import{$ as jw,A as he,B as nr,C as Dw,D as me,E as Ow,H as hr,I as p0,K as dm,L as mr,M as c4,N as pr,R as c7,S as Gw,T as qw,U as Ww,V as pe,W as ue,X as de,Y as wa,Z as Uw,_ as ge,a as Vw,aa as Kw,ba as $w,ca as v8,da as Z2,e as t7,ea as f8,f as cr,fa as Yw,g as Nw,ga as gm,h as _w,i as pm,j as Iw,k as Rw,l as lr,m as re,n as um,p as B2,q as a7,r as rr,s as oe,t as ie,u as or,v as s7,w as ir,x as Bw,y as Zw,z as ne}from"./chunk-QAMH7KME.js";import{d as ya,e as Q6,g as i2,h as sr,i as G4,j as Aw,k as Hw,l as Fw,m as e7,n as Tw,o as Pw,t as ce,u as g0,v as g8,w as Ew,x as le,y as X1}from"./chunk-TURA2CHV.js";import{$ as Kx,D as Wx,Da as tz,G as Ux,Ga as ga,Ha as zl,I as ua,J as nl,L as hl,La as V3,Ma as Ol,O as ml,Oa as Gl,Q as pl,Qa as Ty,R as Bh,Ra as Py,Sa as Ey,Ta as ql,X as ul,Y as jx,a as E3,aa as $x,b as cx,c as S1,ca as Zh,i as u5,j as M9,k as ll,l as Vx,m as Nx,pa as Yx,q as rl,qa as Xx,ra as Jx,sa as Qx,va as ez}from"./chunk-HYLRHFHP.js";import{c as ha,d as $b,e as Yb,g as Xb,i as A2,j as lx,k as w9,l as rx,m as Q3,q as xw,r as yw,s as Q2,t as ww}from"./chunk-EJ2NLQYY.js";import{a as SO,b as LO}from"./chunk-Y6SLVHK3.js";var XT=SO((TA1,YT)=>{"use strict";function PJ(e,t){this.v=e,this.k=t}function TT(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 EJ(e){if(Array.isArray(e))return e}function VJ(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 NJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1
+ import{$ as Mx,$b as vz,$c as $h,$d as v5,$e as py,$g as Qy,$h as Cw,A as dx,Ab as Gx,Ac as Hz,Ad as Xh,Ae as D9,Af as G1,Ag as Dy,Ah as uw,B as gx,Ba as _x,Bb as qx,Bc as bl,Bd as Ml,Be as J2,Bf as Rl,Bg as Oy,Bh as dw,C as vx,Ca as S9,Cb as Rh,Cc as T9,Cd as qz,Cf as rm,Ch as gw,D as fx,Db as Dh,Dc as Fz,Dd as Wz,De as O9,Df as F2,E as bx,Ea as ol,Eb as Oh,Ec as Kh,Ed as Sl,Ee as Tl,F as xx,Fc as xl,Fd as Jh,Fe as H,Fg as y5,Fh as O4,G as Ph,Ga as il,Gb as az,Gc as Tz,Gd as Uz,Ge as D,Gf as j9,Gg as Gy,Gh as vw,H as zx,Ha as Vh,Hb as sz,Hc as Pz,Hd as Qh,He as G,Hf as K9,Hg as ee,Hh as Ql,I as yx,Ib as cz,Ic as yl,Id as _9,Ie as v1,If as Bl,Ig as qy,Ih as za,Ja as Q5,Jb as dl,Jd as jz,Je as H1,Jf as Y6,Jg as jl,Jh as X6,Kb as lz,Kd as I9,Ke as E1,Kf as wy,Kg as Kl,L as tl,La as Ix,Lb as rz,Ld as R9,Lf as Cy,Lg as Wy,Lh as er,Ma as p2,Mb as oz,Md as Kz,Mf as m8,Mg as Uy,Mh as hm,Na as Nh,Nb as H9,Nd as $z,Ne as b,Ng as $l,Ob as q6,Od as Ll,Oe as f5,Of as $9,Og as jy,Pa as t1,Pb as iz,Pc as Ez,Pe as iy,Pf as Y9,Pg as d8,Qa as H2,Qb as da,Qc as i8,Qe as a0,Qf as X9,Qg as Y1,Ra as Rx,Rd as Yz,Re as ny,Rf as J9,Rg as c6,Sb as nz,Sc as wl,Sd as em,Se as G9,Sf as ky,Sg as C,T as wx,Tc as Vz,Td as va,Te as $6,Tf as My,Tg as Z0,Ud as tm,Ue as q9,Uf as Sy,Ug as $,Vb as hz,Vc as g5,Vd as am,Vf as Zl,Vg as b0,Vh as fw,W as Cx,Wb as mz,Wc as Nz,Wd as sm,We as a1,Wg as Ky,Wh as bw,Xb as pz,Xc as Y2,Xd as cm,Xe as I3,Xf as Dl,Xg as $y,Xh as mm,Yb as uz,Yc as _z,Yd as lm,Ye as hy,Yf as Ly,Yg as Yy,Zb as dz,Zc as e4,Zd as Xz,Ze as Pl,Zf as Ay,Zg as Xy,Zh as zw,_ as kx,_b as gz,_c as Iz,_d as a6,_e as my,_f as Q9,_g as Jy,a as Jb,aa as Sx,ab as e6,ac as gl,ad as X2,ae as Jz,af as El,ag as Hy,ah as ew,ai as kw,b as Qc,ba as Lx,bb as r8,bc as vl,bd as Yh,be as Qz,bf as Vl,bh as tw,bi as Mw,c as Qb,ca as Eh,cb as pa,cc as Gh,cd as P9,ce as Al,cf as Nl,ch as aw,ci as Sw,d as ma,da as Ax,dc as R2,dd as Rz,de as Hl,df as uy,dg as Fy,dh as sw,ea as Hx,eb as Bx,ec as N0,ed as Bz,ee as ey,ef as dy,eh as cw,f as ex,fa as al,fc as fz,fd as Zz,fe as ty,ff as gy,fh as lw,fi as tr,g as y9,ga as sl,gc as fl,ge as ay,gf as vy,gg as Wl,gh as l6,gi as y4,ha as Fx,hc as o8,hd as t4,hf as ba,hh as r6,hi as ar,ia as Tx,ib as _h,ic as qh,id as a4,if as fy,ig as Vy,ih as te,ii as J6,ja as Px,jb as Ih,jd as t6,jf as b5,jh as ae,ji as s4,k as tx,ka as C9,kc as Wh,kd as n8,kf as x5,kh as rw,ki as Lw,la as k9,lb as Zx,lc as Uh,ld as E9,le as sy,lf as by,lh as w5,ma as cl,mc as bz,md as V9,me as _3,mf as xy,n as ax,nc as jh,nd as W6,ne as cy,nf as s1,ng as Ny,nh as im,o as sx,oc as d5,od as Cl,oe as Fl,of as zy,og as om,oh as Yl,pc as xz,pe as U6,pf as z5,ph as nm,q as t0,qc as F9,qe as B9,qf as W9,qh as ow,r as el,rc as zz,re as j6,rf as s6,rg as _y,rh as Xl,s as Th,sa as I2,sb as L9,sc as yz,se as Z9,sf as yy,sg as Iy,sh as se,t as ox,ta as B1,tc as wz,td as z4,te as ly,tf as _l,tg as Ry,th as iw,u as ix,uc as Cz,ud as Dz,ue as ry,uf as g1,ug as p8,uh as nw,v as nx,vc as kz,vd as kl,ve as fa,vf as U9,vg as Ul,vh as xa,w as hx,wa as D1,wc as Mz,wd as N9,we as K6,wf as a2,wg as u8,wh as hw,x as mx,xa as Ex,xb as A9,xc as Sz,xd as N3,xh as mw,y as px,ya as W1,yb as Dx,yc as Lz,yd as Oz,ye as h8,yf as Il,yg as By,yh as pw,z as ux,za as O1,zb as Ox,zc as Az,zd as Gz,ze as oy,zf as b1,zg as Zy,zh as Jl}from"./chunk-HURDX4EH.js";import{$ as jw,A as he,B as nr,C as Dw,D as me,E as Ow,H as hr,I as p0,K as dm,L as mr,M as c4,N as pr,R as c7,S as Gw,T as qw,U as Ww,V as pe,W as ue,X as de,Y as wa,Z as Uw,_ as ge,a as Vw,aa as Kw,ba as $w,ca as v8,da as Z2,e as t7,ea as f8,f as cr,fa as Yw,g as Nw,ga as gm,h as _w,i as pm,j as Iw,k as Rw,l as lr,m as re,n as um,p as B2,q as a7,r as rr,s as oe,t as ie,u as or,v as s7,w as ir,x as Bw,y as Zw,z as ne}from"./chunk-YSV4ASRS.js";import{d as ya,e as Q6,g as i2,h as sr,i as G4,j as Aw,k as Hw,l as Fw,m as e7,n as Tw,o as Pw,u as ce,v as g0,w as g8,x as Ew,y as le,z as X1}from"./chunk-NYX4XTRE.js";import{$ as Kx,D as Wx,Da as tz,G as Ux,Ga as ga,Ha as zl,I as ua,J as nl,L as hl,La as V3,Ma as Ol,O as ml,Oa as Gl,Q as pl,Qa as Ty,R as Bh,Ra as Py,Sa as Ey,Ta as ql,X as ul,Y as jx,a as E3,aa as $x,b as cx,c as S1,ca as Zh,i as u5,j as M9,k as ll,l as Vx,m as Nx,pa as Yx,q as rl,qa as Xx,ra as Jx,sa as Qx,va as ez}from"./chunk-HYLRHFHP.js";import{c as ha,d as $b,e as Yb,g as Xb,i as A2,j as lx,k as w9,l as rx,m as Q3,q as xw,r as yw,s as Q2,t as ww}from"./chunk-EJ2NLQYY.js";import{a as SO,b as LO}from"./chunk-Y6SLVHK3.js";var XT=SO((TA1,YT)=>{"use strict";function PJ(e,t){this.v=e,this.k=t}function TT(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 EJ(e){if(Array.isArray(e))return e}function VJ(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 NJ(){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 _J(e,t){return EJ(e)||VJ(e,t)||IJ(e,t)||NJ()}function IJ(e,t){if(e){if(typeof e=="string")return TT(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)?TT(e,t):void 0}}function gi(e){var t,a;function s(l,r){try{var o=e[l](r),i=o.value,n=i instanceof PJ;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)}gi.prototype[typeof Symbol=="function"&&Symbol.asyncIterator||"@@asyncIterator"]=function(){return this},gi.prototype.next=function(e){return this._invoke("next",e)},gi.prototype.throw=function(e){return this._invoke("throw",e)},gi.prototype.return=function(e){return this._invoke("return",e)};var UT=Object.entries,PT=Object.setPrototypeOf,RJ=Object.isFrozen,BJ=Object.getPrototypeOf,ZJ=Object.getOwnPropertyDescriptor,N2=Object.freeze,q2=Object.seal,mt=Object.create,jT=typeof Reflect<"u"&&Reflect,pd=jT.apply,ud=jT.construct;N2||(N2=function(t){return t});q2||(q2=function(t){return t});pd||(pd=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)});ud||(ud=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 G8=M2(Array.prototype.forEach);Array.prototype.indexOf;var DJ=M2(Array.prototype.lastIndexOf),ET=M2(Array.prototype.pop),As=M2(Array.prototype.push);Array.prototype.slice;var OJ=M2(Array.prototype.splice),pt=Array.isArray,Ts=M2(String.prototype.toLowerCase),rd=M2(String.prototype.toString),VT=M2(String.prototype.match),Hs=M2(String.prototype.replace),NT=M2(String.prototype.indexOf),GJ=M2(String.prototype.trim),qJ=M2(Number.prototype.toString),WJ=M2(Boolean.prototype.toString),_T=typeof BigInt>"u"?null:M2(BigInt.prototype.toString),IT=typeof Symbol>"u"?null:M2(Symbol.prototype.toString),j3=M2(Object.prototype.hasOwnProperty),Fs=M2(Object.prototype.toString),p3=M2(RegExp.prototype.test),T7=UJ(TypeError);function M2(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 pd(e,t,s)}}function UJ(e){return function(){for(var t=arguments.length,a=new Array(t),s=0;s<t;s++)a[s]=arguments[s];return ud(e,a)}}function M0(e,t){let a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Ts;if(PT&&PT(e,null),!pt(t))return e;let s=t.length;for(;s--;){let c=t[s];if(typeof c=="string"){let l=a(c);l!==c&&(RJ(t)||(t[s]=l),c=l)}e[c]=!0}return e}function jJ(e){for(let t=0;t<e.length;t++)j3(e,t)||(e[t]=null);return e}function m4(e){let t=mt(null);for(let s of UT(e)){var a=_J(s,2);let c=a[0],l=a[1];j3(e,c)&&(pt(l)?t[c]=jJ(l):l&&typeof l=="object"&&l.constructor===Object?t[c]=m4(l):t[c]=l)}return t}function KJ(e){switch(typeof e){case"string":return e;case"number":return qJ(e);case"boolean":return WJ(e);case"bigint":return _T?_T(e):"0";case"symbol":return IT?IT(e):"Symbol()";case"undefined":return Fs(e);case"function":case"object":{if(e===null)return Fs(e);let t=e,a=V4(t,"toString");if(typeof a=="function"){let s=a(t);return typeof s=="string"?s:Fs(s)}return Fs(e)}default:return Fs(e)}}function V4(e,t){for(;e!==null;){let s=ZJ(e,t);if(s){if(s.get)return M2(s.get);if(typeof s.value=="function")return M2(s.value)}e=BJ(e)}function a(){return null}return a}function $J(e){try{return p3(e,""),!0}catch{return!1}}var RT=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"]),od=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"]),id=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"]),YJ=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"]),nd=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"]),XJ=N2(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),BT=N2(["#text"]),ZT=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"]),hd=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"]),DT=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"]),vi=N2(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),JJ=q2(/{{[\w\W]*|^[\w\W]*}}/g),QJ=q2(/<%[\w\W]*|^[\w\W]*%>/g),eQ=q2(/\${[\w\W]*/g),tQ=q2(/^data-[\-\w.\u00B7-\uFFFF]+$/),aQ=q2(/^aria-[\-\w]+$/),OT=q2(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),sQ=q2(/^(?:\w+script|data):/i),cQ=q2(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),lQ=q2(/^html$/i),rQ=q2(/^[a-z][.\w]*(-[.\w]+)+$/i),GT=q2(/<[/\w!]/g),qT=q2(/<[/\w]/g),oQ=q2(/<\/no(script|embed|frames)/i),iQ=q2(/\/>/i),h4={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},KT=["style","script","xmp","iframe","noembed","noframes","plaintext","noscript"],nQ=N2(M0({},KT)),hQ=(function(){let e={};return G8(KT,t=>{e[t]=q2(new RegExp("</"+t+"(?=[\\t\\n\\f\\r />])","i"))}),N2(e)})(),mQ=function(){return typeof window>"u"?null:window},pQ=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}},WT=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},P7=function(t,a,s,c){return j3(t,a)&&pt(t[a])?M0(c.base?m4(c.base):{},t[a],c.transform):s},md=function(t,a,s){let c=j3(t,a)?t[a]:void 0;return c&&typeof c=="object"?m4(c):s()};function $T(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:mQ(),t=l1=>$T(l1);if(t.version="3.4.16",t.removed=[],!e||!e.document||e.document.nodeType!==h4.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,p=V4(m,"cloneNode"),u=V4(m,"remove"),g=V4(m,"removeAttributeNode"),d=V4(m,"nextSibling"),f=V4(m,"childNodes"),v=V4(m,"parentNode"),z=V4(m,"shadowRoot"),x=V4(m,"attributes"),k=r&&r.prototype?V4(r.prototype,"nodeType"):null,M=r&&r.prototype?V4(r.prototype,"nodeName"):null,A=r&&r.prototype?V4(r.prototype,"ownerDocument"):null,R=function(w){return k?k(w):w.nodeType},E=function(w){return M?M(w):w.nodeName};if(typeof l=="function"){let l1=a.createElement("template");l1.content&&l1.content.ownerDocument&&(a=l1.content.ownerDocument)}let Z,F="",T,N=!1,B=0,P=function(){if(B>0)throw T7('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.')},O=function(w){P(),B++;try{return Z.createHTML(w)}finally{B--}},c1=function(w){P(),B++;try{return Z.createScriptURL(w)}finally{B--}},V=function(){return N||(T=pQ(h,c),N=!0),T},q=a,K=q.implementation,W=q.createNodeIterator,r1=q.createDocumentFragment,x1=q.getElementsByTagName,Y=s.importNode,e1=WT();t.isSupported=typeof UT=="function"&&typeof v=="function"&&K&&K.createHTMLDocument!==void 0;let d1=JJ,U=QJ,p1=eQ,f1=tQ,F0=aQ,T0=sQ,A1=cQ,s0=rQ,c0=OT,$1=null,w2=M0({},[...RT,...od,...id,...nd,...BT]),e0=null,L2=M0({},[...ZT,...hd,...DT,...vi]),d0=Object.seal(mt(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}})),m1=null,q1=null,o0=Object.seal(mt(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),P0=!0,y0=!0,o2=!1,X=!0,C1=!1,h0=!0,V0=!1,X5=!1,I6=null,R6=null,B6=!1,m5=!1,T3=!1,Z6=!1,c8=!0,i3=!1,v9="user-content-",P3=!0,v4=!1,w3={},X3=null,J5=M0({},["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"]),f4=null,b4=M0({},["audio","video","img","source","image","track"]),D4=null,D6=M0({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),M1="http://www.w3.org/1998/Math/MathML",l0="http://www.w3.org/2000/svg",k1="http://www.w3.org/1999/xhtml",C2=k1,d2=!1,O6=null,kh=M0({},[M1,l0,k1],rd),Vb=N2(["mi","mo","mn","ms","mtext"]),Mh=M0({},Vb),Nb=N2(["annotation-xml"]),Sh=M0({},Nb),mO=M0({},["title","style","font","a","script"]),ia=null,pO=["application/xhtml+xml","text/html"],uO="text/html",g2=null,f9=null,dO=a.createElement("form"),_b=function(w){return w instanceof RegExp||w instanceof Function},Lh=function(){let w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(f9&&f9===w)return;(!w||typeof w!="object")&&(w={}),w=m4(w),ia=pO.indexOf(w.PARSER_MEDIA_TYPE)===-1?uO:w.PARSER_MEDIA_TYPE,g2=ia==="application/xhtml+xml"?rd:Ts,$1=P7(w,"ALLOWED_TAGS",w2,{transform:g2}),e0=P7(w,"ALLOWED_ATTR",L2,{transform:g2}),O6=P7(w,"ALLOWED_NAMESPACES",kh,{transform:rd}),D4=P7(w,"ADD_URI_SAFE_ATTR",D6,{transform:g2,base:D6}),f4=P7(w,"ADD_DATA_URI_TAGS",b4,{transform:g2,base:b4}),X3=P7(w,"FORBID_CONTENTS",J5,{transform:g2}),m1=P7(w,"FORBID_TAGS",m4({}),{transform:g2}),q1=P7(w,"FORBID_ATTR",m4({}),{transform:g2}),w3=j3(w,"USE_PROFILES")?w.USE_PROFILES&&typeof w.USE_PROFILES=="object"?m4(w.USE_PROFILES):w.USE_PROFILES:!1,P0=w.ALLOW_ARIA_ATTR!==!1,y0=w.ALLOW_DATA_ATTR!==!1,o2=w.ALLOW_UNKNOWN_PROTOCOLS||!1,X=w.ALLOW_SELF_CLOSE_IN_ATTR!==!1,C1=w.SAFE_FOR_TEMPLATES||!1,h0=w.SAFE_FOR_XML!==!1,V0=w.WHOLE_DOCUMENT||!1,m5=w.RETURN_DOM||!1,T3=w.RETURN_DOM_FRAGMENT||!1,Z6=w.RETURN_TRUSTED_TYPE||!1,B6=w.FORCE_BODY||!1,c8=w.SANITIZE_DOM!==!1,i3=w.SANITIZE_NAMED_PROPS||!1,P3=w.KEEP_CONTENT!==!1,v4=w.IN_PLACE||!1,c0=$J(w.ALLOWED_URI_REGEXP)?w.ALLOWED_URI_REGEXP:OT,C2=typeof w.NAMESPACE=="string"?w.NAMESPACE:k1,Mh=md(w,"MATHML_TEXT_INTEGRATION_POINTS",()=>M0({},Vb)),Sh=md(w,"HTML_INTEGRATION_POINTS",()=>M0({},Nb));let _=md(w,"CUSTOM_ELEMENT_HANDLING",()=>mt(null));if(d0=mt(null),j3(_,"tagNameCheck")&&_b(_.tagNameCheck)&&(d0.tagNameCheck=_.tagNameCheck),j3(_,"attributeNameCheck")&&_b(_.attributeNameCheck)&&(d0.attributeNameCheck=_.attributeNameCheck),j3(_,"allowCustomizedBuiltInElements")&&typeof _.allowCustomizedBuiltInElements=="boolean"&&(d0.allowCustomizedBuiltInElements=_.allowCustomizedBuiltInElements),q2(d0),C1&&(y0=!1),T3&&(m5=!0),w3&&($1=M0({},BT),e0=mt(null),w3.html===!0&&(M0($1,RT),M0(e0,ZT)),w3.svg===!0&&(M0($1,od),M0(e0,hd),M0(e0,vi)),w3.svgFilters===!0&&(M0($1,id),M0(e0,hd),M0(e0,vi)),w3.mathMl===!0&&(M0($1,nd),M0(e0,DT),M0(e0,vi))),o0.tagCheck=null,o0.attributeCheck=null,j3(w,"ADD_TAGS")&&(typeof w.ADD_TAGS=="function"?o0.tagCheck=w.ADD_TAGS:pt(w.ADD_TAGS)&&($1===w2&&($1=m4($1)),M0($1,w.ADD_TAGS,g2))),j3(w,"ADD_ATTR")&&(typeof w.ADD_ATTR=="function"?o0.attributeCheck=w.ADD_ATTR:pt(w.ADD_ATTR)&&(e0===L2&&(e0=m4(e0)),M0(e0,w.ADD_ATTR,g2))),j3(w,"ADD_FORBID_CONTENTS")&&pt(w.ADD_FORBID_CONTENTS)&&(X3===J5&&(X3=m4(X3)),M0(X3,w.ADD_FORBID_CONTENTS,g2)),P3&&($1["#text"]=!0),V0&&M0($1,["html","head","body"]),$1.table&&(M0($1,["tbody"]),delete m1.tbody),w.TRUSTED_TYPES_POLICY){if(typeof w.TRUSTED_TYPES_POLICY.createHTML!="function")throw T7('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof w.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw T7('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');let Q=Z;Z=w.TRUSTED_TYPES_POLICY;try{F=O("")}catch(i1){throw Z=Q,i1}}else w.TRUSTED_TYPES_POLICY===null?(Z=void 0,F=""):(Z===void 0&&(Z=V()),Z&&typeof F=="string"&&(F=O("")));N2&&N2(w),f9=w},Ib=M0({},[...od,...id,...YJ]),Rb=M0({},[...nd,...XJ]),gO=function(w,_,Q){return _.namespaceURI===k1?w==="svg":_.namespaceURI===M1?w==="svg"&&(Q==="annotation-xml"||Mh[Q]):!!Ib[w]},vO=function(w,_,Q){return _.namespaceURI===k1?w==="math":_.namespaceURI===l0?w==="math"&&Sh[Q]:!!Rb[w]},fO=function(w,_,Q){return _.namespaceURI===l0&&!Sh[Q]||_.namespaceURI===M1&&!Mh[Q]?!1:!Rb[w]&&(mO[w]||!Ib[w])},bO=function(w){let _=v(w);(!_||!_.tagName)&&(_={namespaceURI:C2,tagName:"template"});let Q=Ts(w.tagName),i1=Ts(_.tagName);return O6[w.namespaceURI]?w.namespaceURI===l0?gO(Q,_,i1):w.namespaceURI===M1?vO(Q,_,i1):w.namespaceURI===k1?fO(Q,_,i1):!!(ia==="application/xhtml+xml"&&O6[w.namespaceURI]):!1},G6=function(w){As(t.removed,{element:w});try{v(w).removeChild(w)}catch{if(u(w),!v(w))throw T7("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Bb=function(w,_,Q){try{g(w,_)}catch{try{w.removeAttribute(Q)}catch{}}},jc=function(w){Kc(w);let _=f(w);if(_){let i1=[];G8(_,I1=>{As(i1,I1)}),G8(i1,I1=>{try{u(I1)}catch{}})}let Q=x(w);if(Q)for(let i1=Q.length-1;i1>=0;--i1){let I1=Q[i1],m0=I1&&I1.name;typeof m0=="string"&&Bb(w,I1,m0)}},l8=function(w,_,Q){if(!Q)try{Q=_.getAttributeNode(w)}catch{Q=null}As(t.removed,{attribute:Q||null,from:_});try{Q?g(_,Q):_.removeAttribute(w)}catch{try{_.removeAttribute(w)}catch{}}if(w==="is")if(m5||T3)try{G6(_)}catch{}else try{_.setAttribute(w,"")}catch{}},xO=function(w){let _=x(w);if(_)for(let Q=_.length-1;Q>=0;--Q){let i1=_[Q],I1=i1&&i1.name;typeof I1!="string"||e0[g2(I1)]||Bb(w,i1,I1)}},Kc=function(w){let _=[w];for(;_.length>0;){let Q=_.pop();R(Q)===h4.element&&xO(Q);let i1=f(Q);if(i1)for(let I1=i1.length-1;I1>=0;--I1)_.push(i1[I1])}},Zb=function(w,_){return h0?w==="patchsrc"?!0:w==="for"&&_!=="label"&&_!=="output":!1},zO=function(w){if(!h0)return;let _=[w];for(;_.length>0;){let Q=_.pop(),i1=R(Q);if(i1===h4.processingInstruction||i1===h4.comment&&p3(qT,Q.data)){try{u(Q)}catch{}continue}if(i1===h4.element){let m0=Q,f0=g2(E(Q));try{m0.hasAttribute&&m0.hasAttribute("patchsrc")&&m0.removeAttribute("patchsrc"),m0.hasAttribute&&m0.hasAttribute("for")&&Zb("for",f0)&&m0.removeAttribute("for")}catch{}}let I1=f(Q);if(I1)for(let m0=I1.length-1;m0>=0;--m0)_.push(I1[m0])}},Db=function(w){let _=null,Q=null;if(B6)w="<remove></remove>"+w;else{let m0=VT(w,/^[\r\n\t ]+/);Q=m0&&m0[0]}ia==="application/xhtml+xml"&&C2===k1&&(w='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+w+"</body></html>");let i1=Z?O(w):w;if(C2===k1)try{_=new n().parseFromString(i1,ia)}catch{}if(!_||!_.documentElement){_=K.createDocument(C2,"template",null);try{_.documentElement.innerHTML=d2?F:i1}catch{}}let I1=_.body||_.documentElement;return w&&Q&&I1.insertBefore(a.createTextNode(Q),I1.childNodes[0]||null),C2===k1?x1.call(_,V0?"html":"body")[0]:V0?_.documentElement:I1},Ob=function(w){let _=A?A(w):w.ownerDocument;return W.call(_||w,w,i.SHOW_ELEMENT|i.SHOW_COMMENT|i.SHOW_TEXT|i.SHOW_PROCESSING_INSTRUCTION|i.SHOW_CDATA_SECTION,null)},$c=function(w){return w=Hs(w,d1," "),w=Hs(w,U," "),w=Hs(w,p1," "),w},Ah=function(w){var _;w.normalize();let Q=A?A(w):w.ownerDocument,i1=W.call(Q||w,w,i.SHOW_TEXT|i.SHOW_COMMENT|i.SHOW_CDATA_SECTION|i.SHOW_PROCESSING_INSTRUCTION,null),I1=i1.nextNode();for(;I1;)I1.data=$c(I1.data),I1=i1.nextNode();let m0=(_=w.querySelectorAll)===null||_===void 0?void 0:_.call(w,"template");m0&&G8(m0,f0=>{b9(f0.content)&&Ah(f0.content)})},Yc=function(w){let _=M?M(w):null;return typeof _!="string"||g2(_)!=="form"?!1:typeof w.nodeName!="string"||typeof w.textContent!="string"||typeof w.removeChild!="function"||w.attributes!==x(w)||typeof w.removeAttribute!="function"||typeof w.removeAttributeNode!="function"||typeof w.getAttributeNode!="function"||typeof w.setAttribute!="function"||typeof w.namespaceURI!="string"||typeof w.insertBefore!="function"||typeof w.hasChildNodes!="function"||w.nodeType!==k(w)||w.childNodes!==f(w)},b9=function(w){if(!k||typeof w!="object"||w===null)return!1;try{return k(w)===h4.documentFragment}catch{return!1}},na=function(w){if(!k||typeof w!="object"||w===null)return!1;try{return typeof k(w)=="number"}catch{return!1}};function p5(l1,w,_){l1.length!==0&&G8(l1,Q=>{Q.call(t,w,_,f9)})}let yO=function(w,_){return!!(h0&&w.hasChildNodes()&&!na(w.firstElementChild)&&p3(GT,w.textContent)&&p3(GT,w.innerHTML)||h0&&w.namespaceURI===k1&&nQ[_]&&(na(w.firstElementChild)||typeof w.textContent=="string"&&p3(hQ[_],w.textContent))||w.nodeType===h4.processingInstruction||h0&&w.nodeType===h4.comment&&p3(qT,w.data))},Xc=function(w,_){if(w instanceof RegExp)return p3(w,_);if(w instanceof Function){for(var Q=arguments.length,i1=new Array(Q>2?Q-2:0),I1=2;I1<Q;I1++)i1[I1-2]=arguments[I1];return!!w(_,...i1)}return!1},wO=function(w,_,Q){if(!m1[_]&&Ub(_)&&Xc(d0.tagNameCheck,_))return!1;if(P3&&!X3[_]){let i1=v(w),I1=f(w);if(I1&&i1){let m0=I1.length;for(let f0=m0-1;f0>=0;--f0){let m2=w===Q?p(I1[f0],!0):I1[f0];i1.insertBefore(m2,d(w))}}}return G6(w),!0},Gb=function(w,_,Q,i1){return w.length===0?_:_===Q||_===i1?m4(_):_},x9=function(w,_){return w===_||v(w)!==null?!1:(v4&&Kc(w),!0)},qb=function(w,_){if(p5(e1.beforeSanitizeElements,w,null),x9(w,_))return!0;if(Yc(w))return G6(w),!0;let Q=g2(E(w));if($1=Gb(e1.uponSanitizeElement,$1,w2,I6),p5(e1.uponSanitizeElement,w,{tagName:Q,allowedTags:$1}),x9(w,_))return!0;if(yO(w,Q))return G6(w),!0;if(m1[Q]||!(o0.tagCheck instanceof Function&&o0.tagCheck(Q))&&!$1[Q]){let i1=wO(w,Q,_);return i1===!1&&(p5(e1.afterSanitizeElements,w,null),x9(w,_))?!0:i1}if(R(w)===h4.element&&!bO(w)||(Q==="noscript"||Q==="noembed"||Q==="noframes")&&p3(oQ,w.innerHTML))return G6(w),!0;if(C1&&w.nodeType===h4.text){let i1=$c(w.textContent);w.textContent!==i1&&(As(t.removed,{element:w.cloneNode()}),w.textContent=i1)}return p5(e1.afterSanitizeElements,w,null),x9(w,_)},Wb=function(w,_,Q){if(q1[_]||Zb(_,w)||c8&&(_==="id"||_==="name")&&(Q in a||Q in dO))return!1;let i1=e0[_]||o0.attributeCheck instanceof Function&&o0.attributeCheck(_,w);return y0&&p3(f1,_)||P0&&p3(F0,_)?!0:i1?D4[_]||p3(c0,Hs(Q,A1,""))||(_==="src"||_==="xlink:href"||_==="href")&&w!=="script"&&NT(Q,"data:")===0&&f4[w]||o2&&!p3(T0,Hs(Q,A1,""))?!0:!Q:Ub(w)&&Xc(d0.tagNameCheck,w)&&Xc(d0.attributeNameCheck,_,w)||_==="is"&&d0.allowCustomizedBuiltInElements&&Xc(d0.tagNameCheck,Q)},CO=M0({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Ub=function(w){return!CO[Ts(w)]&&p3(s0,w)},kO=function(w,_,Q,i1){if(Z&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!Q)switch(h.getAttributeType(w,_)){case"TrustedHTML":return O(i1);case"TrustedScriptURL":return c1(i1)}return i1},MO=function(w,_,Q,i1){try{return Q?w.setAttributeNS(Q,_,i1):w.setAttribute(_,i1),Yc(w)?(G6(w),!1):!0}catch{return l8(_,w),!1}},jb=function(w,_){if(p5(e1.beforeSanitizeAttributes,w,null),x9(w,_))return;let Q=w.attributes;if(!Q||Yc(w))return;e0=Gb(e1.uponSanitizeAttribute,e0,L2,R6);let i1={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:e0,forceKeepAttr:void 0},I1=Q.length,m0=g2(w.nodeName);for(;I1--;){let f0=Q[I1],m2=f0.name,x4=f0.namespaceURI,J3=f0.value,z9=g2(m2),Fh=J3,C3=m2==="value"?Fh:GJ(Fh),Kb=!1;if(i1.attrName=z9,i1.attrValue=C3,i1.keepAttr=!0,i1.forceKeepAttr=void 0,p5(e1.uponSanitizeAttribute,w,i1),C3=i1.attrValue,i3&&(z9==="id"||z9==="name")&&NT(C3,v9)!==0&&(l8(m2,w,f0),C3=v9+C3,Kb=!0),h0&&p3(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,C3)){l8(m2,w,f0);continue}if(z9==="attributename"&&VT(C3,"href")){l8(m2,w,f0);continue}if(!i1.forceKeepAttr){if(!i1.keepAttr){l8(m2,w,f0);continue}if(!X&&p3(iQ,C3)){l8(m2,w,f0);continue}if(C1&&(C3=$c(C3)),!Wb(m0,z9,C3)){l8(m2,w,f0);continue}C3=kO(m0,z9,x4,C3),C3!==Fh&&MO(w,m2,x4,C3)&&Kb&&ET(t.removed)}}p5(e1.afterSanitizeAttributes,w,null),x9(w,_)},Jc=function(w){let _=null,Q=Ob(w);for(p5(e1.beforeSanitizeShadowDOM,w,null);_=Q.nextNode();)if(p5(e1.uponSanitizeShadowNode,_,null),qb(_,w),jb(_,w),b9(_.content)&&Jc(_.content),R(_)===h4.element){let i1=z(_);b9(i1)&&(Hh(i1),Jc(i1))}p5(e1.afterSanitizeShadowDOM,w,null)},Hh=function(w){let _=[{node:w,shadow:null}];for(;_.length>0;){let Q=_.pop();if(Q.shadow){Jc(Q.shadow);continue}let i1=Q.node,I1=R(i1)===h4.element,m0=f(i1);if(m0)for(let f0=m0.length-1;f0>=0;--f0)_.push({node:m0[f0],shadow:null});if(I1){let f0=M?M(i1):null;if(typeof f0=="string"&&g2(f0)==="template"){let m2=i1.content;b9(m2)&&_.push({node:m2,shadow:null})}}if(I1){let f0=z(i1);b9(f0)&&_.push({node:null,shadow:f0},{node:f0,shadow:null})}}};return t.sanitize=function(l1){let w=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},_=null,Q=null,i1=null,I1=null;if(d2=!l1,d2&&(l1="<!-->"),typeof l1!="string"&&!na(l1)&&(l1=KJ(l1),typeof l1!="string"))throw T7("dirty is not a string, aborting");if(!t.isSupported)return l1;X5?($1=I6,e0=R6):Lh(w),(e1.uponSanitizeElement.length>0||e1.uponSanitizeAttribute.length>0)&&($1=m4($1)),e1.uponSanitizeAttribute.length>0&&(e0=m4(e0)),t.removed=[];let m0=v4&&typeof l1!="string"&&na(l1);if(m0){zO(l1);let x4=E(l1);if(typeof x4=="string"){let J3=g2(x4);if(!$1[J3]||m1[J3])throw jc(l1),T7("root node is forbidden and cannot be sanitized in-place")}if(Yc(l1))throw jc(l1),T7("root node is clobbered and cannot be sanitized in-place");try{Hh(l1)}catch(J3){throw jc(l1),J3}}else if(na(l1))_=Db("<!---->"),Q=_.ownerDocument.importNode(l1,!0),Q.nodeType===h4.element&&Q.nodeName==="BODY"||Q.nodeName==="HTML"?_=Q:_.appendChild(Q),Hh(_);else{if(!m5&&!C1&&!V0&&l1.indexOf("<")===-1)return Z&&Z6?O(l1):l1;if(_=Db(l1),!_)return m5?null:Z6?F:""}_&&B6&&G6(_.firstChild);let f0=m0?l1:_;try{let x4=Ob(f0);for(;i1=x4.nextNode();)qb(i1,f0),jb(i1,f0),b9(i1.content)&&Jc(i1.content)}catch(x4){throw m0&&(jc(l1),G8(t.removed,J3=>{J3.element&&Kc(J3.element)})),x4}if(m0){let x4=!1;if(G8(t.removed,J3=>{J3.element&&(J3.element===l1&&(x4=!0),Kc(J3.element))}),x4)throw T7("a node selected for removal could not be safely returned; refusing to sanitize in place");return C1&&Ah(l1),l1}if(m5){if(C1&&Ah(_),T3)for(I1=r1.call(_.ownerDocument);_.firstChild;)I1.appendChild(_.firstChild);else I1=_;return(e0.shadowroot||e0.shadowrootmode)&&(I1=Y.call(s,I1,!0)),I1}let m2=V0?_.outerHTML:_.innerHTML;return V0&&$1["!doctype"]&&_.ownerDocument&&_.ownerDocument.doctype&&_.ownerDocument.doctype.name&&p3(lQ,_.ownerDocument.doctype.name)&&(m2="<!DOCTYPE "+_.ownerDocument.doctype.name+`>
3
3
  `+m2),C1&&(m2=$c(m2)),Z&&Z6?O(m2):m2},t.setConfig=function(){let l1=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Lh(l1),X5=!0,I6=$1,R6=e0},t.clearConfig=function(){f9=null,X5=!1,I6=null,R6=null,Z=T,F=""},t.isValidAttribute=function(l1,w,_){f9||Lh({});let Q=g2(l1),i1=g2(w);return Wb(Q,i1,_)},t.addHook=function(l1,w){typeof w=="function"&&j3(e1,l1)&&As(e1[l1],w)},t.removeHook=function(l1,w){if(j3(e1,l1)){if(w!==void 0){let _=DJ(e1[l1],w);return _===-1?void 0:OJ(e1[l1],_,1)[0]}return ET(e1[l1])}},t.removeHooks=function(l1){j3(e1,l1)&&(e1[l1]=[])},t.removeAllHooks=function(){e1=WT()},t}var uQ=$T();YT.exports=uQ});import{readLockHolder as mG}from"efficient-easel/edit-lock";var fm="/api/storefront/section-templates/",vm=e=>`${fm}${encodeURIComponent(e)}/`,bm=e=>e.node!=null;function ur(e){if(!bm(e))throw new Error(`Section template ${e.id} has no design`);return e}var zm=(e,t)=>e instanceof G4&&e.status===t;function AO(e){return{list:()=>le(`${fm}?no_page=true`,{token:e()}).then(t=>Array.isArray(t)?t:t.results??[]),get:t=>le(vm(t),{token:e()}).catch(a=>{if(zm(a,404))return null;throw a}),create:t=>le(fm,{method:"POST",token:e(),body:JSON.stringify(t)}),patch:(t,a)=>le(vm(t),{method:"PATCH",token:e(),body:JSON.stringify(a)}),remove:t=>le(vm(t),{method:"DELETE",token:e()})}}var xm="sf:section-templates",Xw=`${xm}.imported`,HO="Untitled section",FO=160,dr=e=>(typeof e=="string"?e.trim().slice(0,FO):"")||HO;function TO(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 PO(e,t=Q2){let a={created:0,seeded:0,left:0,skipped:0,kept:!1},s=t.getItem(xm);if(s===null)return a;for(let c of TO(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:dr(c.name),node:c.node}),a.created+=1}catch(r){if(!zm(r,400))throw r;a.skipped+=1}}catch{return{...a,kept:!0}}return t.setItem(Xw,s),t.getItem(Xw)===s&&t.removeItem(xm),a}var gr=class{constructor(t,a=Q2){this.readToken=t;this.storage=a;this.imported=null;this.http=AO(t)}ready(){return this.imported?this.imported:this.readToken()?(this.imported=PO(this.http,this.storage).catch(()=>{}),this.imported):Promise.resolve()}async list(){return await this.ready(),(await this.http.list()).filter(bm)}async get(t){return await this.ready(),this.http.get(t)}async ensure(t,a,s){await this.ready();let c=async r=>r?bm(r)?r:ur(await this.http.patch(t,{node:s})):null,l=await c(await this.http.get(t));if(l)return l;try{return ur(await this.http.create({id:t,name:dr(a),node:s}))}catch(r){if(zm(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(),ur(await this.http.create({name:dr(t),node:a}))}async update(t,a){return await this.ready(),ur(await this.http.patch(t,{node:a}))}async rename(t,a){return await this.ready(),this.http.patch(t,{name:dr(a)})}async remove(t){await this.ready(),await this.http.remove(t)}};var Jw={"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 Qw(e,t){let a=Jw[e][t];return{maxSizeBytes:a.max_bytes,maxFiles:a.max_files,accept:a.accept==="*"||a.accept==="*/*"?void 0:a.accept,acceptHint:a.hint}}var o6=["width","profile","rim"],eC={width:"Width",profile:"Profile",rim:"Rim"},EO=/^\s*(\d{2,3})\s*\/\s*(\d{2,3})\s*[A-Za-z]*\s*(\d{2}(?:\.\d+)?)\s*$/,VO={width:[100,500],profile:[20,100],rim:[10,30]};function l4(e){let t=EO.exec(e??"");if(!t)return null;let a={width:Number(t[1]),profile:Number(t[2]),rim:Number(t[3])};return o6.every(c=>{let[l,r]=VO[c];return a[c]>=l&&a[c]<=r})?a:null}function q4(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 tC(e){return[q4({width:e.width}),q4({width:e.width,profile:e.profile}),q4(e)]}var R3=["alloy-wheel","tyre"],vr=["alloy-wheel"],r4={"alloy-wheel":"Alloy wheels",tyre:"Tyres"},aC="All products",sC="All product types";function C5(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 ve=R3.map(e=>({value:e,label:r4[e]}));function k5(e){return e==null?[...vr]:Array.isArray(e)?R3.filter(t=>e.includes(t)):[...vr]}var k3=e=>e;function D0(e){return k3(e).kind==="tyre"?"tyre":"alloy-wheel"}function cC(e,t){return e.filter(a=>t.includes(D0(a)))}function l7(e){return k3(e).slug??""}function ym(e){return k3(e).name??""}function fe(e){return k3(e).brand??""}function lC(e){let t=new Set;for(let a of e)if(t.add(fe(a)),t.size>1)return!0;return!1}function NO(e){return k3(e).process??""}function rC(e){let t=new Set;for(let a of e)if(t.add(NO(a)),t.size>1)return!0;return!1}function b8(e){return k3(e).prices??void 0}function wm(e){return k3(e).inStock!==!1}function oC(e){let t=k3(e),a=D0(e)==="tyre"?t.rimDiameters:t.sizes;return Array.isArray(a)?a.filter(s=>typeof s=="number"&&Number.isFinite(s)):[]}function Cm(e){return D0(e)!=="tyre"&&k3(e).badge==="new"}function km(e){return D0(e)==="tyre"?[]:(k3(e).finishes??[]).filter(t=>typeof t?.family=="string").map(t=>({family:t.family,color:t.color??null}))}function iC(e){return km(e).map(t=>t.family)}function nC(e){if(D0(e)==="tyre")return[];let t=k3(e),a=t.categories;return a&&a.length>0?a:t.process?[t.process]:[]}function hC(e){return D0(e)==="tyre"?[]:k3(e).spec?.pcds??[]}function mC(e){return D0(e)!=="tyre"?[]:k3(e).tyreTypes??[]}function pC(e){return D0(e)!=="tyre"?[]:k3(e).speedRatings??[]}function be(e){if(D0(e)!=="tyre")return[];let t=k3(e).sizes;return Array.isArray(t)?t.map(a=>l4(typeof a=="string"?a:null)).filter(a=>a!==null):[]}function W4(e,t){return e.length===0?e:e.filter(a=>a.kind===void 0||a.kind===t)}function fr(e,t){if(t.length===0)return e;let a=xe(t);return r7(e.filter(s=>a(s.fieldKey)),s=>s.fieldKey,t,"cardOrder")}function uC(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 Mm(e){return xr(e,"spec")}function dC(e){return xr(e,"fitment")}function Sm(e,t){if(t.length===0)return e;let a=Mm(t),s=e.filter(c=>a(c.fieldKey));return r7(s,c=>c.fieldKey,t,"specOrder")}function r7(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 xe(e){return xr(e,"card")}function br(e){return xr(e,"filter")}var ze="collection";function ye(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":ze},pcds:{"alloy-wheel":"pcd"},tyreTypes:{tyre:"tire_type"},speedRatings:{tyre:"speed_rating"}}[e]?.[t]}function xr(e,t){let a=new Set(e.filter(s=>s[t]===!1).map(s=>s.fieldKey));return s=>!s||!a.has(s)}function T2(e){return Number.isInteger(e)?String(e):String(Number(e.toFixed(2)))}function zr(e,t){return e===t?`ET ${e}`:`ET ${e}\u2013${t}`}function gC(e,t){return e===t?`${T2(e)}"`:`${T2(e)}"\u2013${T2(t)}"`}function Lm(e){return e==="\u2014"?e:`${e}"`}var Ca={recommended:"Recommended","price-asc":"Price \xB7 low to high","price-desc":"Price \xB7 high to low",new:"Newest",name:"Name A\u2013Z"},vC=Object.keys(Ca);function we(e){return I2(vC,"recommended",e)}function Am(e){return vC.filter(t=>t!=="recommended"||e.length<=1)}function fC(e,t){let a=we(e);return Am(t).includes(a)?a:"name"}var ka=["tyreSizes","brands","finishes","diameters","collections","pcds","tyreTypes","speedRatings"],_O={tyreSizes:["tyre"],brands:["alloy-wheel","tyre"],finishes:["alloy-wheel"],diameters:["alloy-wheel","tyre"],collections:["alloy-wheel"],pcds:["alloy-wheel"],tyreTypes:["tyre"],speedRatings:["tyre"]},IO={diameters:"tyreSizes"};function bC(e){if(e.length===0)return[];let t=ka.filter(a=>e.every(s=>_O[a].includes(s)));return t.filter(a=>{let s=IO[a];return!s||!t.includes(s)})}function xC(e,t){return t&&e.includes(t)?[t]:[...e]}function zC(e){let t=new Set;for(let a of e)t.add(D0(a));return[...t]}var M5={tyreSizes:[],brands:[],finishes:[],diameters:[],collections:[],pcds:[],tyreTypes:[],speedRatings:[],priceMax:null,inStockOnly:!1,kind:null,sort:"recommended",page:1};function x8(e){return`${RO(e.width)}\xD7${e.diameter}`}function yC(e){return(e.sizePairs??[]).map(x8)}function RO(e){return T2(e)}function Ma(e,t,a,s=null){if(s!=="kind"&&t.kind&&D0(e)!==t.kind)return!1;for(let c of ka){if(s===c)continue;let l=t[c];if(l.length===0)continue;let r=l.map(String);if(!kC(e,c).some(o=>r.includes(o)))return!1}return!(s!=="price"&&!or(b8(e),a,null,t.priceMax)||s!=="inStock"&&t.inStockOnly&&!wm(e))}function wC(e,t,a){return e.filter(s=>wm(s)&&Ma(s,t,a,"inStock")).length}function BO(e,t,a){let s=[...e],c=(r,o)=>ym(r).localeCompare(ym(o)),l=zC(e).length>1;switch(t){case"price-asc":return s.sort((r,o)=>ie(b8(r),b8(o),a,"asc"));case"price-desc":return s.sort((r,o)=>ie(b8(r),b8(o),a,"desc"));case"name":return s.sort(c);case"new":return s.sort((r,o)=>{let i=(Cm(o)?1:0)-(Cm(r)?1:0);return i!==0||!l?i:c(r,o)});default:return s}}function CC(e,t,a){return BO(e.filter(s=>Ma(s,t,a)),t.sort,a)}function yr(e){return ka.some(t=>e[t].length>0)||e.priceMax!=null||e.inStockOnly||e.kind!=null}var Hm={tyreSizes:"Size",brands:"Brand",finishes:"Colour",diameters:"Size \xB7 diameter",collections:"Collection",pcds:"PCD \xB7 fitment",tyreTypes:"Tyre type",speedRatings:"Speed rating"};function kC(e,t){switch(t){case"tyreSizes":return[...new Set(be(e).flatMap(tC))];case"brands":return fe(e)?[fe(e)]:[];case"finishes":return iC(e);case"diameters":return oC(e).map(String);case"collections":return nC(e);case"pcds":return hC(e);case"tyreTypes":return mC(e);case"speedRatings":return pC(e)}}function ZO(e){let t=new Map;for(let a of e)for(let s of km(a))s.color&&!t.has(s.family)&&t.set(s.family,s.color);return t}function wr(e,t,a,s=zC(e),c=[]){let l=n=>DO(n,s,c),r=ZO(e),o=bC(s).filter(n=>n!=="tyreSizes").filter(l).map(n=>{let h=t[n].map(String),m=new Set,p=new Map,u=new Map;for(let d of e){let f=kC(d,n);for(let v of f)m.add(v);for(let v of new Set(f))u.set(v,(u.get(v)??0)+1);if(Ma(d,t,a,n))for(let v of new Set(f))p.set(v,(p.get(v)??0)+1)}let g=[...m].map(d=>({value:d,label:n==="diameters"?`${d}\u2033`:d,count:p.get(d)??0,checked:h.includes(d),swatch:n==="finishes"?r.get(d)??null:null})).sort((d,f)=>{if(n==="diameters")return Number(d.value)-Number(f.value);let v=(u.get(f.value)??0)-(u.get(d.value)??0);return v!==0?v:d.value.localeCompare(f.value)});return{key:n,label:Hm[n],options:g}}).filter(n=>n.options.length>Sa),i=[];for(let n of o){let h=OO(n.key,s,c);h!==void 0&&i.push({fieldKey:n.key,filterOrder:h})}return[...r7(o,n=>n.key,i,"filterOrder")]}var Sa=1;function Cr(e){return e.showCollection===!1?["collections"]:[]}function DO(e,t,a){return t.length===0||a.length===0?!0:t.some(s=>br(W4(a,s))(ye(e,s)))}function OO(e,t,a){if(a.length===0)return;let s;for(let c of t){let l=uC(W4(a,c),"filter")(ye(e,c));l!==void 0&&(s===void 0||l<s)&&(s=l)}return s}function GO(e){let t=new Set;for(let a of e)for(let s of be(a))t.add(q4(s));return t.size}function MC(e,t){return bC(t).includes("tyreSizes")?GO(e)>Sa:!1}function SC(e){let t=l4(e);if(t)return t;let[a,s]=e.split("/");return{width:a?Number(a):void 0,profile:s?Number(s):void 0}}function qO(e,t,a){return o6.slice(0,o6.indexOf(a)).every(s=>{let c=t[s];return c==null||e[s]===c})}function LC(e,t,a){let s=SC(t.tyreSizes[0]??""),c=new Set(e.filter(l=>Ma(l,t,a,"tyreSizes")));return o6.map(l=>{let r=new Map;for(let i of e){let n=be(i).filter(h=>qO(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:eC[l],value:s[l]??null,options:o}})}function AC(e,t,a,s){let c={...SC(t)},l=o6.indexOf(a);c[a]=s??void 0;for(let r of o6.slice(l+1))c[r]!=null&&e.some(n=>o6.slice(0,o6.indexOf(r)+1).every(h=>c[h]==null||n[h]===c[h]))||(c[r]=void 0);return q4(c)}function HC(e,t,a,s){if(t.length<2)return[];let c=e.filter(l=>Ma(l,a,s,"kind"));return[{kind:null,label:aC,count:c.length,checked:a.kind===null},...t.map(l=>({kind:l,label:r4[l],count:c.filter(r=>D0(r)===l).length,checked:a.kind===l}))]}function FC(e,t){if(e.length===0)return null;let a=e.map(l=>oe(b8(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 TC(e,t,a){let s=[];e.kind&&s.push({key:"kind",value:e.kind,label:r4[e.kind]}),e.inStockOnly&&s.push({key:"inStock",value:"",label:"In stock"});for(let c of ka)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 w4={tyreSizes:"tyreSize",brands:"brand",finishes:"colour",diameters:"size",collections:"collection",pcds:"pcd",tyreTypes:"tyreType",speedRatings:"speed"},o7="type",PC="maxPrice",EC="inStock",VC="sort",NC="page";function _C(e){let t=l=>e.getAll(l).flatMap(r=>r.split(",")).filter(Boolean),a=Number(e.get(PC)),s=Number(e.get(NC)),c=e.get(o7);return{tyreSizes:t(w4.tyreSizes),brands:t(w4.brands),finishes:t(w4.finishes),diameters:t(w4.diameters).map(Number).filter(Number.isFinite),collections:t(w4.collections),pcds:t(w4.pcds),tyreTypes:t(w4.tyreTypes),speedRatings:t(w4.speedRatings),priceMax:Number.isFinite(a)&&a>0?a:null,inStockOnly:e.get(EC)==="1",kind:R3.find(l=>l===c)??null,sort:we(e.get(VC)),page:Number.isFinite(s)&&s>=1?Math.floor(s):1}}function z8(e){let t=new URLSearchParams;for(let a of ka){let s=e[a];s.length>0&&t.set(w4[a],s.join(","))}return e.priceMax!=null&&t.set(PC,String(e.priceMax)),e.inStockOnly&&t.set(EC,"1"),e.kind&&t.set(o7,e.kind),e.sort!=="recommended"&&t.set(VC,e.sort),e.page>1&&t.set(NC,String(e.page)),t}function IC(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 RC(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 i7="__all__",BC="All products";function kr(e){return e?.slug===i7}var Ce="AlloyWheelsListing",WO="ProductGrid",ZC="catalog",UO="CatalogFilterBar",Mr="fieldUsage";function ke(e){return e?.type===WO&&kr(e.props?.source)}function Fm(e){return e?.type===UO}function jO(e){return e?.type===Ce||ke(e)||Fm(e)}function KO(e){let t=e.content??[],a=e.zones??{};return[...t,...Object.values(a).flat()]}function Vs1(e){return e?KO(e).some(t=>t?.type===Ce||ke(t)):!1}function Ns1(e,t){return YO(e,a=>ke(a)?{...a,props:{...Tm(a).props,[ZC]:$O(t,k5(a.props?.kinds))}}:{...a,props:{...Pm(a).props,products:t}})}function _s1(e){return OC(e,jO,t=>Fm(t)?DC(t):ke(t)?Tm(t):Pm(t))}function DC(e){if(!e.props||!(Mr in e.props))return e;let{[Mr]:t,...a}=e.props;return{...e,props:a}}function Tm(e){let{[ZC]:t,[Mr]:a,...s}=e.props??{};return{...e,props:s}}function $O(e,t){let a=new Set(t);return e.filter(s=>{let c=s.kind??"alloy-wheel";return a.has(c)})}function Is1(e){return ke(e)?Tm(e):Fm(e)?DC(e):e?.type===Ce?Pm(e):e}function Pm(e){let{wheels:t,products:a,[Mr]:s,...c}=e.props??{};return{...e,props:c}}function YO(e,t){return OC(e,a=>a?.type===Ce||ke(a),t)}function OC(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 La="/wheels",Em="Products";function JO(e,t){return t>1?`${Em} \xB7 ${e}`:Em}function GC(...e){for(let t of e){let a=(t?.content??[]).find(s=>s?.type===Ce);if(a)return a.props??{}}return null}function Vm(...e){return GC(...e)!==null}function QO(e,t){let a=e.filter(s=>Vm(...s.docs)).map(s=>o8(s.slug));return a.length===0&&t.fallback?[La]:a}var qC=[o7,...Object.entries(w4).filter(([e])=>e!=="tyreSizes").map(([,e])=>e)];function WC(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 eG(e){try{return decodeURIComponent(e.replace(/\+/g," "))}catch{return e}}function Nm(e){let t=new URLSearchParams(WC(e).query);for(let a of qC){let s=t.get(a);if(s)return{param:a,value:s}}return null}function _m(e,t){let{path:a,query:s,hash:c}=WC(e),l=s.split("&").filter(r=>r&&!qC.includes(eG(r.split("=")[0])));return t?.value&&l.push(`${encodeURIComponent(t.param)}=${encodeURIComponent(t.value)}`),`${a}${l.length?`?${l.join("&")}`:""}${c}`}function Xs1(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 tG="Product type",aG="AUD";function sG(e,t){let a=t.listing??{},s=k5(a.kinds),c=e.filter(i=>s.includes(D0(i))),l=Cr(a),r=wr(c,M5,aG,s,t.fieldUsage).filter(i=>!l.includes(i.key)).map(i=>({param:w4[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=R3.filter(i=>s.includes(i)&&c.some(n=>D0(n)===i));return o.length>1&&r.unshift({param:o7,label:tG,values:o.map(i=>({value:i,label:r4[i]}))}),r}function Js1(e){return t=>{let a=QO(t,{fallback:e.offersCommerce}),s=t.filter(c=>Vm(...c.docs)).length;return{listingPaths:a,pageOptions:c=>{let l=c.map(r=>{let o=t.find(i=>o8(i.slug)===r.value);return o&&Vm(...o.docs)?{...r,label:JO(o.title,s)}:r});return s===0&&e.offersCommerce&&!l.some(r=>r.value===La)&&l.push({value:La,label:Em}),l},filtersFor:c=>{if(!a.includes(c))return null;let l=t.find(r=>o8(r.slug)===c);return sG(e.catalogue,{listing:l?GC(...l.docs):null,fieldUsage:e.fieldUsage})},readFilter:Nm,withFilter:_m}}}var Im="product",cG="tyre";var Rm="productType",lG={[Im]:"alloy-wheel",[cG]:"tyre"},rG=["alloy-wheel","tyre"];function Sr(e,t){return oG(t)??lG[e]??null}function oG(e){let t=e?.[Rm];return typeof t=="string"&&rG.includes(t)?t:null}var iG=["home","products","gallery","about","contact"],nG=e=>{let t=e.slug.trim().toLowerCase(),a=(e.title??"").trim().toLowerCase(),s=iG.findIndex(c=>c===t||c===a);return s===-1?Number.POSITIVE_INFINITY:s},UC=e=>e.map((t,a)=>({page:t,idx:a,rank:nG(t)})).sort((t,a)=>t.rank-a.rank||t.idx-a.idx).map(t=>t.page);var $C="Popups",jC="Site";var YC={[Yz]:{label:"Site popup",group:$C},[_9]:{label:"Footer",group:jC},[Gz]:{label:"Cart drawer",group:jC}};function Zm(e){return YC[e.slug]?.label||e.title||e.slug}function Bm(e){let t=e.group?.trim();return t||null}function KC(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 XC(e){let t=UC(e),a=[],s=t.filter(o=>!va(o.slug)),c=s.filter(o=>!Bm(o));c.length&&a.push({key:"top",group:null,pages:c});let l=s.filter(o=>Bm(o));for(let[o,i]of KC(l,n=>Bm(n)))a.push({key:`folder:${o}`,group:o,pages:i});let r=t.filter(o=>va(o.slug));for(let[o,i]of KC(r,n=>YC[n.slug]?.group??$C))a.push({key:`system:${o}`,group:o,pages:i});return a}import{isExpiredSession as bc1,PAGE_CONFLICT_CODE as JC,readEaselFailure as xc1}from"efficient-easel/screen/lib/failure";var Lr=e=>e.layout_updated_at??e.updated_at??null;function pG(e){if(!e||typeof e!="object")return null;let t=e;return t.code!==JC?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 uG(e){return e===401||e===403?"unauthorized":e===404?"not-found":e===Hw||e>=500?"unavailable":"invalid"}function dG(e){if(!(e instanceof G4))return e;if(e.status===409){let t=pG(e.data);if(t)return new i8("changed-elsewhere",e.message,{conflict:t,cause:e});let a=mG(e.data);if(a)return new i8("lock-taken",e.message,{holder:a,cause:e})}return new i8(uG(e.status),e.message,{cause:e})}var gG={group:"Template pages",groupKey:"template"},QC=e=>({id:e.id,slug:e.slug,label:e.title||e.slug,...gG,draft:!1});function ek(e){let t=async n=>{let h=e.token();if(!h)throw new i8("unauthorized","The editor has no sign-in yet.");try{return await n(h)}catch(m){throw dG(m)}},a={list:n=>t(async h=>{let m=await X1.listPages(h,n?.siteId);return XC(m.filter(p=>p.slug!==_9)).flatMap(p=>p.pages.map(u=>({id:u.id,slug:u.slug,label:Zm(u),group:p.group,groupKey:p.key,draft:!u.is_published,kind:u.kind??null})))}),load:n=>t(async h=>{let m="id"in n?n.id:(await X1.findPageBySlug(n.slug,h,n.siteId))?.id,p=m?await X1.getPageById(m,h):null;return p?{id:p.id,layout:p.layout,kind:p.kind,version:Lr(p)}:null}),save:(n,h,m)=>{let{version:p}=m;return p?t(async u=>({version:Lr(await X1.saveLayout(n,h.layout,u,p,m.clientId||void 0))})):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=>X1.getPageById(n,h).then(Lr)),linkTargets:n=>t(async h=>(await X1.listPages(h,n?.siteId)).map(m=>({id:m.id,slug:m.slug,label:Zm(m),layout:m.layout??null}))),publish:(n,h)=>t(async m=>({version:Lr(await X1.publishPage(n,m,h?.version))}))},s=n=>({list:()=>t(async h=>(await X1.listTemplatePages(n,h)).map(QC)),load:h=>t(async m=>{let p=f=>"id"in h?f.id===h.id:f.slug===h.slug,u=f=>({id:f.id,layout:f.layout,version:null}),g=await X1.listTemplatePages(n,m);if(g.length)return u(g.find(p)??g[0]);let d=await X1.getTemplate(n,m).catch(()=>null);try{return u(await X1.createTemplatePage(n,{slug:fz,title:"Home",layout:d?.layout??{}},m))}catch{let f=await X1.listTemplatePages(n,m),v=f.find(p)??f[0];return v?u(v):null}}),save:(h,m)=>t(async p=>(await X1.saveTemplatePageLayout(h,m.layout,p),{version:null})),create:h=>t(async m=>QC(await X1.createTemplatePage(n,{slug:h.slug,title:h.title,layout:h.layout},m))),remove:h=>t(m=>X1.deleteTemplatePage(h,m))}),c=n=>{let h=n?.siteId??e.siteId();if(!h)throw new i8("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(Gl.map(h=>[h,n[ql(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 p=>({heartbeatSeconds:(await X1.claimPageEditLock(n,p,h,m)).heartbeat_seconds})),release:n=>t(h=>X1.releasePageEditLock(n,h))},site:{get:n=>t(async h=>l(await X1.getSite(c(n),h))),update:(n,h)=>t(async m=>l(await X1.updateSite(c(h),n.mapsApiKey===void 0?{}:{maps_api_key:n.mapsApiKey},m)))},media:{resolve:lx,maxUploadBytes:Qw("POST /api/storefront/media/","file").maxSizeBytes},sectionTemplates:new gr(e.token),social:{get:n=>t(async h=>r(await X1.getSocialSettings(h,c(n)))),update:(n,h)=>t(async m=>{let p=Object.fromEntries(Gl.filter(u=>u in n).map(u=>[ql(u),n[u]]));try{return r(await X1.updateSocialSettings(p,m,c(h)))}catch(u){if(u instanceof G4&&u.status===400){let g=u.data??{},d={};for(let f of Gl){let v=g[ql(f)],z=Array.isArray(v)?v[0]:v;typeof z=="string"&&z.trim()&&(d[f]=z)}if(Object.keys(d).length>0)throw new i8("invalid",u.message,{fields:d,cause:u})}throw u}})},theme:{get:n=>t(h=>X1.getThemeSettings(h,n?.siteId)),update:(n,h)=>t(m=>X1.updateThemeSettings(n,m,h?.siteId))},chat:{get:n=>t(async h=>o(await X1.getChatSettings(h,n?.siteId))),update:(n,h)=>t(async m=>o(await X1.updateChatSettings(n,m,h?.siteId)))},blog:{posts:n=>t(async h=>(await X1.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?w9(m.cover_image)??"":"",publishedAt:m.published_at,href:qh(m.slug)})))},templates:{get:n=>t(async h=>{let m=await X1.getTemplate(n,h);return{id:m.id,name:m.name}}),pages:s}};return i[$b]=!0,i}Ez({read:e=>e instanceof G4?{status:e.status,data:e.data,message:e.message}:null,unreachableMessage:Aw,loadRefusal:(e,{slug:t})=>e instanceof Ew?`\u201C${t}\u201D exists on more than one website. Open it from the site you want to edit.`:null});Xb(e=>ek({token:()=>e.auth.token,siteId:()=>e.siteId()}));function Vc1(e={}){return e.portalAudience!==void 0&&Fw(e.portalAudience),ek({token:()=>ha().auth.token,siteId:()=>e.siteId??ha().siteId()})}import{jsx as vG}from"react/jsx-runtime";import{createContext as fG,useContext as bG,useMemo as xG}from"react";var tk=fG({originData:null,originSlug:null,exitFocus:()=>{}});function Rc1({children:e,originData:t,originSlug:a,exitFocus:s}){let c=xG(()=>({originData:t,originSlug:a,exitFocus:s}),[t,a,s]);return vG(tk.Provider,{value:c,children:e})}var ak=()=>bG(tk);import{useCallback as WG,useEffect as UG,useRef as jG,useState as Hk}from"react";var zG=[{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"}],yG=Object.fromEntries(zG.map(e=>[e.code,e.name]));function sk(e){return yG[e]??e}import{jsx as Dm,jsxs as ck}from"react/jsx-runtime";function lk(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||sk(c),currency:l?.currency,url:l?.url||a?.[c]||""}})}function Ar(e){let{countries:t}=p0();return lk(t,e).length>0}function y8({urls:e,countries:t}={}){let{country:a,setCountry:s,countries:c}=p0(),l=lk(c,t,e),r=l.find(m=>m.code===a)??l[0];function o(m){let p=(e?l.find(u=>u.code===m)?.url:"")?.trim();if(p){window.location.href=p;return}c.some(u=>u.code===m)&&s(m)}let i=l.map(m=>({value:m.code,label:m.name,meta:m.currency})),n=ue({items:i,value:a,onPick:o});if(!r)return null;let h=n.open;return ck("div",{ref:n.wrapRef,className:"relative",children:[ck("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:[Dm("span",{children:r.name}),Dm("span",{"aria-hidden":!0,className:`text-[11px] opacity-70 transition-transform ${h?"rotate-180":""}`,children:"\u25BE"})]}),h&&Dm(de,{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 wG,useRef as rk}from"react";import{jsx as C4,jsxs as Om}from"react/jsx-runtime";var Aa={search:"Search",account:"Account",cart:"Bag"},Gm="whitespace-nowrap";function CG(e){return e>99?"99+":String(e)}function kG({count:e,ref:t}){return C4("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:C4("span",{style:{color:"var(--sf-header-ground, var(--bg))"},children:CG(e)})})}function Hr({onClick:e,count:t,asText:a,className:s}){let c=rk(null),l=rk(t);return wG(()=>{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]),C4("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?Om("span",{className:Gm,children:[Aa.cart,t>0?` ${t}`:""]}):Om("span",{className:"relative inline-flex",children:[C4("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:Gy}),t>0?C4(kG,{count:t,ref:c}):null]})})}function ok({asText:e,className:t}){return C4(S1,{href:"/account","aria-label":"Account",className:`mono-eyebrow-ctl inline-flex items-center opacity-80 transition-opacity hover:opacity-100 ${t??""}`,children:e?C4("span",{className:Gm,children:Aa.account}):Om("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:[C4("circle",{cx:"12",cy:"8",r:"3.4"}),C4("path",{d:"M5 20a7 7 0 0 1 14 0"})]})})}function Fr({onClick:e,asText:t,className:a}){return C4("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?C4("span",{className:Gm,children:Aa.search}):C4(a6,{name:"search",size:18,strokeWidth:1.6,rounded:!0})})}var ik="Menu Item";var nk="Menu",hk="Link a menu in the inspector \u2192",mk="This menu has no links yet \u2014 add them in Storefront \u2192 Menus.",pk="This column isn't linked to a menu, so the preview shows placeholder links. Pick a menu above.";function uk(e){return`\u201C${e}\u201D no longer exists in Storefront \u2192 Menus, so the preview shows placeholder links. Pick another menu.`}var Jc1="The menu linked here no longer exists in Storefront \u2192 Menus, so the header shows placeholder links. Pick another menu.";import{jsx as MG}from"react/jsx-runtime";function Me(){return MG("span",{className:"opacity-50",children:ik})}import{jsx as SG}from"react/jsx-runtime";import{createContext as LG,useContext as qm,useEffect as AG,useState as HG,useSyncExternalStore as FG}from"react";var gk=[];function TG(){let e=gk,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 Tr=LG(null);function vk({children:e}){let[t]=HG(TG);return SG(Tr.Provider,{value:t,children:e})}var Pr=()=>qm(Tr)!==null;function Wm(e){let t=qm(Tr);AG(()=>{if(!(!t||!e))return t.offer(e)},[t,e])}var PG=()=>()=>{},dk=()=>gk;function fk(){let e=qm(Tr),t=FG(e?.subscribe??PG,e?.offered??dk,dk);return e?{search:t.includes("search"),region:t.includes("region")}:null}import{createContext as EG,useCallback as Um,useContext as VG,useEffect as NG,useMemo as _G,useState as IG}from"react";import{jsx as BG}from"react/jsx-runtime";var RG={isOpen:!1,open:()=>{},close:()=>{},toggle:()=>{}},bk=EG(RG);function ol1({children:e,shortcut:t=!0}){let[a,s]=IG(!1),c=Um(()=>s(!0),[]),l=Um(()=>s(!1),[]),r=Um(()=>s(i=>!i),[]);NG(()=>{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=_G(()=>({isOpen:a,open:c,close:l,toggle:r}),[a,c,l,r]);return BG(bk.Provider,{value:o,children:e})}function Se(){return VG(bk)}import{useEffect as jm}from"react";function k4({active:e,onDismiss:t,focusRef:a,lockScroll:s=!0,scopeRef:c}){jm(()=>{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]),jm(()=>{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]),jm(()=>{e&&a?.current?.focus()},[e,a])}import{createContext as ZG,useCallback as Ck,useContext as DG,useMemo as OG,useState as GG}from"react";var Ha=new Map,xk=e=>e??"";function Km(e,t,a){a&&Ha.clear();let s=xk(t),c=Ha.get(s);if(!c){let l=X1.listMenus(e,t);Ha.set(s,l),l.catch(()=>{Ha.get(s)===l&&Ha.delete(s)}),c=l}return c}var Er=new Map;function zk(e,t){let a=xk(t),s=Er.get(a);if(!s){let c=Km(e,t,!0);Er.set(a,c);let l=()=>{Er.get(a)===c&&Er.delete(a)};c.then(l,l),s=c}return s}function $m(e,t=!1){return Km(e,i2(),t)}function yk(e){return zk(e,i2())}function dl1(e,t=!1){return Km(e,null,t)}function gl1(e){return zk(e,null)}var Ym={ids:new Set,handles:new Set};function vl1(e){return{ids:new Set(e.map(t=>t.id).filter(Boolean)),handles:new Set(e.map(t=>t.handle).filter(Boolean))}}function wk({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 Vr(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 qG}from"react/jsx-runtime";var kk=ZG({live:Ym,ready:!1,primeLive:()=>{},setLive:()=>{}});function zl1({children:e}){let[t,a]=GG({live:Ym,ready:!1}),s=Ck(r=>a(o=>o.ready?o:{live:r,ready:!0}),[]),c=Ck(r=>a({live:r,ready:!0}),[]),l=OG(()=>({...t,primeLive:s,setLive:c}),[t,s,c]);return qG(kk.Provider,{value:l,children:e})}var Mk=()=>DG(kk);function Le(e){let t=(e??"").trim();return t===""||t==="#"}import{jsx as w0,jsxs as S5}from"react/jsx-runtime";var KG=e=>/^https?:\/\//i.test(e),Fk="flex list-none flex-col gap-2.5 text-[13px]",Xm="mb-4 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",Sk="text-[12px] italic text-fg-dim/70",Tk=(e,t)=>e&&t>0?"border-t border-line pt-2.5":"";function $G({showDividers:e}){return w0("ul",{className:Fk,children:Array.from({length:4},(t,a)=>w0("li",{className:`text-fg ${Tk(e,a)}`,children:w0(Me,{})},a))})}function Pk({item:e,label:t,link:a,onNavigate:s}){return Le(e.url)?w0("span",{className:t,children:C(e.label)}):KG(e.url)?w0("a",{href:e.url,target:"_blank",rel:"noopener noreferrer",className:a,onClick:s,children:C(e.label)}):w0(S1,{href:e.url,className:a,onClick:s,children:C(e.label)})}function Lk({items:e,showDividers:t}){return w0("ul",{className:Fk,children:e.map((a,s)=>w0("li",{className:Tk(t,s),children:w0(Pk,{item:a,label:"text-fg",link:"text-fg transition-colors hover:text-accent"})},`${a.label}-${s}`))})}var YG="opacity-80 transition-opacity hover:opacity-100";function XG({items:e,label:t,editing:a}){let[s,c]=Hk(!1),l=jG(null),r=fk(),{open:o}=Se(),i=t||"Menu",n=WG(()=>c(!1),[]);k4({active:s,onDismiss:n,scopeRef:l});let h=(p,u,g)=>e===null?Array.from({length:4},(d,f)=>w0("li",{className:u,children:w0(Me,{})},f)):e.map((d,f)=>w0("li",{className:u,children:w0(Pk,{item:d,label:p,link:`${p} ${YG}`,onNavigate:g})},`${d.label}-${f}`)),m=r&&(r.search||r.region)?r:null;return S5("nav",{ref:l,"aria-label":i,"data-menu-row":"",className:"min-w-0",children:[w0("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("","")}),w0("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(p=>!p),children:w0("svg",{width:"22",height:"22",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round","aria-hidden":"true",children:s?w0("path",{d:"M6 6l12 12M18 6L6 18"}):w0("path",{d:"M4 7h16M4 12h16M4 17h16"})})}),s?S5("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:[w0("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?S5("div",{className:"mt-auto flex flex-col gap-3.5 border-t border-line bg-surface p-5",children:[m.search?S5("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:[w0(a6,{name:"search",size:18,strokeWidth:1.6,rounded:!0}),Aa.search]}):null,m.region?S5("div",{className:"flex items-center justify-between",children:[w0("span",{className:"mono-eyebrow text-fg-dim",children:"Region"}),w0(y8,{})]}):null]}):null]}):null]})}function Fa({menu:e,heading:t,accordionMobile:a=!1,showDividers:s=!1,editing:c=!1,layout:l="column"}){let{live:r,ready:o}=Mk(),i=wk({id:e?.id,handle:e?.handle,editing:c,ready:o,live:r}),n=i?[]:e?.items??[],h=t||e?.name||"",[m,p]=Hk(!1);return UG(()=>{if(!a)return;let u=window.matchMedia("(max-width: 800px)"),g=()=>p(u.matches);return g(),u.addEventListener("change",g),()=>u.removeEventListener("change",g)},[a]),l==="row"?w0(XG,{items:i?null:n,label:h,editing:c}):i?S5("div",{className:"min-w-0",children:[w0("h4",{className:Xm,children:t?Z0(t):nk}),w0($G,{showDividers:s}),w0("p",{className:`mt-3 ${Sk}`,children:hk})]}):n.length===0?S5("div",{className:"min-w-0",children:[h?w0("h4",{className:Xm,children:Z0(h)}):null,c?w0("p",{className:Sk,children:mk}):null]}):a&&m?S5("details",{className:"min-w-0 border-b border-line",children:[S5("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:[Z0(h),w0("span",{"aria-hidden":!0,children:"\uFF0B"})]}),w0("div",{className:"pb-3",children:w0(Lk,{items:n,showDividers:s})})]}):S5("div",{className:"min-w-0",children:[h?w0("h4",{className:Xm,children:Z0(h)}):null,w0(Lk,{items:n,showDividers:s})]})}import{createContext as rq,useCallback as B3,useContext as oq,useEffect as iq,useMemo as nq,useRef as Jk,useState as Fe}from"react";function Ta(e){return typeof e=="number"?String(e):""}function Ek(e){let t=Ta(e);return t&&`${t} LUG`}function Jm(e){let t=e.spec?.lugs;return typeof t=="number"?t:null}function Vk(e){let t=new Set;for(let a of e){let s=Jm(a);s!==null&&t.add(s)}return[...t].sort((a,s)=>a-s)}function JG(e){return e.length===0?null:{min:Math.min(...e),max:Math.max(...e)}}function Nr(e){let t=JG(e);return t?gC(t.min,t.max):null}function Nk(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 _k=5,Bk=.2;function Ae(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 Qm(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 Zk(e){if(!e)return null;let t=Ae(e.pcd||e.boltPattern);if(t.holes===null||t.circles.length===0)return null;let a=t.circles[0],s=Qm(e.etRange),c=s?[s[0]-_k,s[1]+_k]:null;return{holes:t.holes,circle:a,centreBore:typeof e.centreBore=="number"&&e.centreBore>0?e.centreBore:null,etRange:c}}function QG(e,t){return Math.abs(e-t)<=Bk}function Dk(e,t,a){let s=Ae(e);return(s.holes??t)!==a.holes?!1:s.circles.some(l=>QG(l,a.circle))}function Ok(e,t){return t.centreBore===null?!0:e+Bk>=t.centreBore}function eq(e,t){return e[0]<=t[1]&&e[1]>=t[0]}function w8(e,t){let a=`${t.holes}\xD7${t.circle}`;return e.pcds.length===0?{key:"unverifiable",wheel:"",vehicle:a}:e.pcds.some(s=>Dk(s,e.lugs,t))?t.etRange!==null&&e.etRange!==null&&!eq(e.etRange,t.etRange)?{key:"et",wheel:_r(e.etRange),vehicle:_r(t.etRange)}:e.centreBores.length>0&&!e.centreBores.some(s=>Ok(s,t))?{key:"bore",wheel:`${e.centreBores.join(" / ")} mm`,vehicle:`${t.centreBore} mm`}:null:{key:"pcd",wheel:e.pcds.join(" / "),vehicle:a}}function Gk(e){return{pcds:e.spec?.pcds??[],lugs:e.spec?.lugs??null,etRange:Qm(e.spec?.etRange),centreBores:e.spec?.centreBores??[]}}function Ir(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 Rr(e,t){let a=w8(e,t);return a===null||a.key!=="et"?a:w8(e,{...t,etRange:null})}function ep(e,t){return w8(Gk(e),t)}function qk(e,t){return w8(Ir(e),t)}function tq(e,t){return Rr(Ir(e),t)===null}function Wk(e,t){return t?e.filter(a=>tq(a,t)):[...e]}function aq(e,t){return Rr(Gk(e),t)===null}function Br(e,t){return t?e.filter(a=>aq(a,t)):e}var Ik=1;function sq(e,t){let a=e.spec?.pcds??[],s=e.spec?.centreBores??[],c=Qm(e.spec?.etRange);if(!t)return{pcds:a,etRange:c,centreBores:s};let l=e.spec?.lugs??null,r=a.filter(i=>Dk(i,l,t)),o=s.filter(i=>Ok(i,t));return{pcds:r.length>0?r:a,etRange:c,centreBores:o.length>0?o:s}}function _r(e){return zr(e[0],e[1])}function Rk(e){let t=e.slice(0,Ik).join(" / "),a=e.length-Ik;return a>0?`${t} +${a}`:t}var Uk="\xB7";function Zr(e){return[{fieldKey:"diameter",text:Nr(e.sizes)},{fieldKey:"holes",text:Ek(e.spec?.lugs)}].filter(t=>!!t.text)}function jk(e,t){let{pcds:a,etRange:s,centreBores:c}=sq(e,t),l=[];return a.length>0&&l.push({fieldKey:"pcd",text:`PCD ${Rk(a)}`}),s!==null&&l.push({fieldKey:"et",text:_r(s)}),c.length>0&&l.push({fieldKey:"center_bore",text:`C/B ${Rk(c)} mm`}),l}function He(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?_r(e.etRange):null}]:[]}function Kk(e){return He(e).map(t=>t.value).filter(t=>t!==null).join(" \xB7 ")}var Pa={default:"Sort \xB7 Featured",new:"Newest","price-asc":"Price \xB7 Low","price-desc":"Price \xB7 High",name:"Name A\u2013Z"},C8={process:null,size:null,lugs:null,finish:null,priceMin:null,priceMax:null,sort:"default"};function cq(e,t,a){return!(t.process&&e.process!==t.process||t.size&&!e.sizes.includes(t.size)||t.lugs!=null&&Jm(e)!==t.lugs||t.finish&&!e.finishes.some(s=>s.family===t.finish)||!or(e.prices,a,t.priceMin,t.priceMax))}function lq(e,t,a){return[...e].sort((s,c)=>{switch(t){case"price-asc":return ie(s.prices,c.prices,a,"asc");case"price-desc":return ie(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 $k(e,t,a,s=null){let c=Br(e,s);return lq(c.filter(l=>cq(l,t,a)),t.sort,a)}import{jsx as mq}from"react/jsx-runtime";var Qk={fit:null,name:"",resolving:!1,unresolved:!1};function hq(e,t){return e.fit===t.fit&&e.name===t.name&&e.resolving===t.resolving&&e.unresolved===t.unresolved}var o4=()=>{},eM=rq({filters:C8,setProcess:o4,setSize:o4,setLugs:o4,setFinish:o4,setPriceMin:o4,setPriceMax:o4,setSort:o4,clearAll:o4,reportCount:o4,total:0,reportLugs:o4,lugOptions:[],reportSizes:o4,sizeOptions:[],reportFinishes:o4,finishOptions:[],optionsReported:!1,scrollProcess:null,vehicle:Qk,publishVehicle:o4}),Dr="data-catalog-collection",Yk=(e,t)=>e-t;function Xk(e,t){return e.length===t.length&&e.every((a,s)=>a===t[s])}function tp(e){let t=Jk(new Map),[a,s]=Fe([]),c=B3((l,r)=>{let o=t.current.get(l);if(o&&Xk(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=>Xk(h,n)?h:n)},[e]);return[a,c]}function tM({children:e,initial:t}){let[a,s]=Fe(t??C8),c=B3(V=>s(q=>({...q,process:V})),[]),l=B3(V=>s(q=>({...q,size:V})),[]),r=B3(V=>s(q=>({...q,lugs:V})),[]),o=B3(V=>s(q=>({...q,finish:V})),[]),i=B3(V=>s(q=>({...q,priceMin:V})),[]),n=B3(V=>s(q=>({...q,priceMax:V})),[]),h=B3(V=>s(q=>({...q,sort:V})),[]),m=B3(()=>s(V=>({...C8,sort:V.sort})),[]),[p,u]=Fe(Qk),g=B3(V=>{u(q=>hq(q,V)?q:V)},[]),d=Jk(new Map),[f,v]=Fe(0),z=B3((V,q)=>{if(d.current.get(V)===q)return;d.current.set(V,q);let W=0;for(let r1 of d.current.values())W+=r1;v(W)},[]),[x,k]=tp(Yk),[M,A]=tp(Yk),[R,E]=tp(Kw),[Z,F]=Fe(!1),T=B3((V,q)=>{F(!0),k(V,q)},[k]),N=B3((V,q)=>{F(!0),A(V,q)},[A]),B=B3((V,q)=>{F(!0),E(V,q)},[E]),[P,O]=Fe(null);iq(()=>{let q=0,K=()=>{q=0;let r1=null,x1=document.querySelectorAll(`[${Dr}]`);for(let Y of x1){let e1=Y.getBoundingClientRect();if(e1.top<=140&&e1.bottom>140){r1=Y.getAttribute(Dr)??null;break}}O(r1)},W=()=>{q||(q=requestAnimationFrame(K))};return K(),window.addEventListener("scroll",W,{passive:!0}),window.addEventListener("resize",W),()=>{window.removeEventListener("scroll",W),window.removeEventListener("resize",W),q&&cancelAnimationFrame(q)}},[]);let c1=nq(()=>({filters:a,setProcess:c,setSize:l,setLugs:r,setFinish:o,setPriceMin:i,setPriceMax:n,setSort:h,clearAll:m,reportCount:z,total:f,reportLugs:T,lugOptions:x,reportSizes:N,sizeOptions:M,reportFinishes:B,finishOptions:R,optionsReported:Z,scrollProcess:P,vehicle:p,publishVehicle:g}),[a,c,l,r,o,i,n,h,m,z,f,T,x,N,M,B,R,Z,P,p,g]);return mq(eM.Provider,{value:c1,children:e})}function Or(){return oq(eM)}import{Fragment as pq}from"react";import{jsx as dq,jsxs as gq}from"react/jsx-runtime";var Gr=["FusionForge\xAE","Precision Forged","Monoblock Cast"];function qr(e){return fl(e)}function aM(e){let t=e.split("\xAE");return t.length===1?e:t.map((a,s)=>gq(pq,{children:[a,s<t.length-1&&dq(c6,{})]},s))}var Ea=Gr.map((e,t)=>({key:e,num:String(t+1).padStart(2,"0"),title:aM(e)}));function uq(e){if(e.length===0)return[...Gr];let t=new Set(e.map(a=>a.process));return Gr.filter(a=>t.has(a))}function lr1(e){return uq(e).map((t,a)=>({key:t,num:String(a+1).padStart(2,"0"),title:aM(t)}))}var rr1=Object.fromEntries(Gr.map(e=>[e,qr(e)]));var Wr="";function lM(e){if(typeof e=="string"||typeof e=="number")return e;if(e&&typeof e=="object"&&"text"in e){let t=e.text;return typeof t=="string"?t:null}return null}function sM(e){let t=lM(e);if(t===null||typeof t=="string"&&t.trim()==="")return null;let a=Number(t);return Number.isSafeInteger(a)&&a>0?a:null}function cM(e){let t=lM(e);if(t===null||typeof t=="string"&&t.trim()==="")return null;let a=Number(t);return Number.isFinite(a)&&a>=0?a:null}function vq(e){return ge.some(t=>t.f===e)?e:null}function fq(e){return typeof e=="string"&&e!==""?e:null}function rM(e){return e?{...C8,process:fq(e.openingProcess),size:sM(e.openingSize),lugs:sM(e.openingLugs),finish:vq(e.openingFinish),priceMin:cM(e.openingPriceMin),priceMax:cM(e.openingPriceMax)}:C8}var oM={value:Wr,label:"Any"},iM=[oM,...ge.map(e=>({value:e.f,label:e.label}))],nM=[oM,...Ea.map(e=>({value:e.key,label:e.key}))];import{useCallback as Dq,useEffect as Yr,useRef as HM,useState as Na}from"react";function hM({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 Z3={popup:"shop_popup",subscribeSection:"subscribe_section",subscribeBlogsSection:"subscribe_blogs_section",footerSignup:"footer_signup",stockAlertOptIn:"stock_alert_optin"};var bq={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function mM(e,t){let a={};for(let s of Sl){let c=e[s];if(!c)continue;let l=A9({role:c},bq,t);l.fontFamily&&(a[Qh[s].font]=l.fontFamily),l.fontSize&&(a[Qh[s].size]=l.fontSize)}return a}import{useEffect as yq}from"react";import{useEffect as dM,useState as k8}from"react";var ap=new Set,sp=new Set,cp=new Set;function pM(e){return ap.add(e),()=>ap.delete(e)}function fr1(){ap.forEach(e=>e())}function uM(e){return sp.add(e),()=>sp.delete(e)}function br1(){sp.forEach(e=>e())}function Ur(e){return cp.add(e),()=>cp.delete(e)}function xr1(){cp.forEach(e=>e())}import{jsx as Te,jsxs as zq}from"react/jsx-runtime";function L5(e,t){let[a,s]=k8(void 0),[c,l]=k8(0);return dM(()=>{if(t!==void 0)return;if(!e){s(null);return}let r=!1;return g0.getForm(e).then(o=>{r||s(o)}).catch(()=>{r||s(null)}),()=>{r=!0}},[t,e,c]),dM(()=>{if(t===void 0)return Ur(()=>l(r=>r+1))},[t]),t!==void 0?t:a}var xq="Something went wrong \u2014 your submission wasn't sent. Please try again.";function Pe(e,t="Thanks \u2014 we've received your submission."){return e.successMessage?.trim()||t}function n7({form:e,formSlug:t,editing:a=!1}){let[s,c]=k8({}),[l,r]=k8(""),[o,i]=k8(!1),[n,h]=k8(!1),[m,p]=k8(null);async function u(g){if(g.preventDefault(),!(a||o||!e||!t)){i(!0),p(null);try{let d=e.fields.map(f=>({fieldKey:f.key,value:s[f.key]??""}));await g0.submitForm(t,{answers:d,...l?{company:l}:{}}),h(!0)}catch{p(xq)}finally{i(!1)}}}return{valueOf:g=>s[g]??"",set:(g,d)=>c(f=>({...f,[g]:d})),honeypot:l,setHoneypot:r,submitting:o,done:n,error:m,handleSubmit:u}}function Ee({value:e,onChange:t}){return Te("input",{type:"text",name:"company",tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"hidden",value:e,onChange:a=>t(a.target.value)})}function h7({field:e,value:t,onChange:a,className:s,rows:c=5,placeholder:l}){let r=l??e.placeholder;return e.type==="textarea"?Te("textarea",{required:e.required,rows:c,value:t,placeholder:r,onChange:o=>a(o.target.value),className:s}):e.type==="select"?zq("select",{required:e.required,value:t,onChange:o=>a(o.target.value),className:s,children:[Te("option",{value:"",children:r||"Select\u2026"}),e.options.map(o=>Te("option",{value:o,children:o},o))]}):e.type==="checkbox"?Te("input",{type:"checkbox",required:e.required,checked:t==="true",onChange:o=>a(o.target.checked?"true":""),className:s}):Te("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 Va}from"react/jsx-runtime";var gM="font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim";function M4({size:e,children:t}){return e==="tall"?Va("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:Va("p",{className:gM,children:t})}):Va("section",{className:"relative z-[2] border-t border-line bg-surface",children:Va("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:Va("p",{className:gM,children:t})})})}import{jsx as e3,jsxs as jr}from"react/jsx-runtime";var vM="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 wq({field:e,value:t,onChange:a}){let s={field:e,value:t,onChange:a};return e.type==="checkbox"?jr("label",{className:"flex items-start gap-3",children:[e3(h7,{...s,className:"mt-1 size-4 accent-accent"}),jr("span",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.16em] text-fg",children:[e.label,e.required?e3("span",{className:"text-accent",children:" *"}):null]})]}):e3(Z2,{label:e.label,required:e.required,children:e3(h7,{...s,className:e.type==="textarea"?vM+" resize-y":vM})})}function lp({formSlug:e,heading:t,intro:a,submitText:s,finePrint:c,form:l,editing:r=!1}={}){let o=L5(e,l);if(o===void 0)return e3(M4,{size:"short",children:"Loading form\u2026"});if(o===null)return e3(M4,{size:"short",children:r?"Choose a form in the inspector, under Form.":"This form is unavailable."});let i=(t??"").trim()||o.title;return e3("section",{className:"relative z-[2] border-t border-line bg-surface",children:jr("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&&e3("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()&&e3("p",{className:"mb-11 max-w-[640px] font-display text-[16px] leading-[1.6] text-fg-dim",children:a}),e3(rp,{form:o,formSlug:e,submitText:s,finePrint:c,editing:r})]})})}function rp({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:p,handleSubmit:u}=n7({form:e,formSlug:t,editing:c});yq(()=>{m&&l?.()},[m]);let g=(a??"").trim()||e.submitButtonText?.trim()||"Submit";return m?e3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:Pe(e)}):jr("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:u,children:[e.fields.map(d=>e3(wq,{field:d,value:r(d.key),onChange:f=>o(d.key,f)},d.key)),e3(Ee,{value:i,onChange:n}),p&&e3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:p}),e3("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":g}),e.consentText?.trim()&&e3("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:e.consentText}),(s??"").trim()&&e3("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:s})]})}import{jsx as op,jsxs as kq}from"react/jsx-runtime";import{jsx as Cq}from"react/jsx-runtime";function fM(){return Cq("span",{className:"block h-px w-[30px] bg-current"})}function Mq(e,t){return`font-mono text-[length:var(--size-label,${e}px)] uppercase tracking-[0.3em] text-accent`}var Sq="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",Lq="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 kq("div",{className:[c,Lq,l].filter(Boolean).join(" "),children:[op(fM,{}),op("span",{children:C(e)})]});let r=t==="filled"?Sq:Mq(a,s);return op("span",{className:[c,r,l].filter(Boolean).join(" "),children:C(e)})}import{useCallback as bM,useRef as Aq,useState as xM}from"react";function Kr({source:e,dryRun:t=!1}){let[a,s]=xM("idle"),[c,l]=xM(null),r=Aq(!1),o=bM(()=>{r.current=!1,l(null),s("idle")},[]),i=bM(async n=>{if(!r.current){if(!me(n.email)){s("invalid");return}r.current=!0,l(null),s("sending");try{t||await g0.createNewsletterSubscription(hM(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 Ve(){return"/edit"}import{createContext as Pq,useCallback as $r,useContext as Eq,useEffect as Vq,useMemo as Nq,useRef as _q,useState as hp}from"react";var zM="/edit";function yM(e){return e===zM||e.startsWith(`${zM}/`)}var CM="storefront-subscribe-seen",kM="storefront-popup-closed-at",Hq=1440*60*1e3,Fq=["/checkout","/cart"];function wM(e){let t=e.split(/[?#]/)[0]||"/",a=t.startsWith("/")?t:`/${t}`;return a.length>1?a.replace(/\/+$/,"")||"/":a}function ip(e,t,a){let s=wM(e);return Fq.some(c=>s===c||s.startsWith(`${c}/`))?!1:t==="all"?!0:a.some(c=>wM(c)===s)}function Tq(e,t,a,s){if(e==="never")return!1;if(a.session.getItem(CM)==="1")return!0;if(e==="visit")return!1;let c=Number(a.local.getItem(kM));return!Number.isFinite(c)||c<=0?!1:s-c<t*Hq}function np(e,t){e.session.setItem(CM,"1"),e.local.setItem(kM,String(t))}function MM(e,t){return e==="exit"&&!t?"delay":e}function SM(e,t,a){let s=a-t;return s<=0?100:Math.min(100,Math.max(0,e/s*100))}function LM(e,t,a){return!e.autoOpen||e.inEditor||!ip(e.path,e.showOn,e.showOnPages)||e.hideAfter!=="never"&&!yw(t.session)?!1:!Tq(e.hideAfter,e.hideDays,t,a)}import{jsx as Zq}from"react/jsx-runtime";var AM=Pq(null),mp={session:ww,local:Q2};function Iq(){try{return window.matchMedia("(hover: hover) and (pointer: fine)").matches}catch{return!1}}var Rq=15,Bq=[];function to1({children:e,disableAutoTrigger:t,autoOpen:a=!1,autoOpenDelaySec:s=Rq,trigger:c="delay",scrollPercent:l=50,showOn:r="all",showOnPages:o=Bq,hideAfter:i="visit",hideDays:n=7}){let[h,m]=hp(!1),[p,u]=hp("chosen"),[g,d]=hp({}),f=Ve()??"/",v=yM(f),z=ip(f,r,o),x=_q(!1),k=$r(Z=>{d(Z??{}),u("newsletter"),m(!0)},[]),M=$r(()=>{x.current=!0,d({}),u("chosen"),m(!0)},[]),A=$r(()=>np(mp,Date.now()),[]),R=$r(()=>{m(!1),np(mp,Date.now())},[]);Vq(()=>{if(t||x.current||!LM({autoOpen:a,inEditor:v,path:f,showOn:r,showOnPages:o,hideAfter:i,hideDays:n},mp,Date.now()))return;let F=MM(c,Iq());if(F==="scroll"){let N=()=>{SM(window.scrollY,window.innerHeight,document.documentElement.scrollHeight)>=l&&(window.removeEventListener("scroll",N),M())};return window.addEventListener("scroll",N,{passive:!0}),()=>window.removeEventListener("scroll",N)}if(F==="exit"){let N=B=>{B.relatedTarget===null&&B.clientY<=0&&(document.removeEventListener("mouseout",N),M())};return document.addEventListener("mouseout",N),()=>document.removeEventListener("mouseout",N)}let T=window.setTimeout(M,Math.max(0,s)*1e3);return()=>window.clearTimeout(T)},[t,a,v,z,c,s,l,i,n,M]);let E=Nq(()=>({isOpen:h,mode:p,open:k,close:R,markSent:A,prefillEmail:g.email??"",signupSource:g.source??Z3.popup}),[h,p,k,R,A,g]);return Zq(AM.Provider,{value:E,children:e})}function pp(){let e=Eq(AM);if(!e)throw new Error("useSubscribePopup() must be called inside <SubscribePopupProvider>. Mount the provider in app/layout.tsx.");return e}import{Fragment as qq,jsx as J1,jsxs as k2}from"react/jsx-runtime";var Oq=50,Xr="font-[family-name:var(--pp-fieldlabel-font,var(--font-mono))] text-[length:var(--pp-fieldlabel-size,12px)]";function Gq(e){let t=F9({sectionAccent:d5(e.sectionAccent)}),a=dl(e.sectionCorners,e.sectionCornerSides);return{className:t?.className??"",style:{...t?.style??{},...a??{},...mM(e.textStyles)}}}function FM({content:e,open:t=!0,onClose:a,onSent:s,inline:c=!1,prefillEmail:l="",source:r=Z3.popup,mode:o="chosen",form:i}){let n=o==="chosen"?e.formSlug:"",h=L5(n||void 0,c?void 0:i??null),m=!!n&&!!h,[p,u]=Na(""),[g,d]=Na(""),[f,v]=Na(()=>new Set(e.interests.slice(0,1))),[z,x]=Na(e.frequencies[0]??""),{status:k,error:M,submit:A,reset:R}=Kr({source:r,dryRun:c}),E=k==="sending",Z=k==="invalid"?e.emailInvalidText:k==="error"?M instanceof G4?M.message:e.submitErrorText:null,[F,T]=Na(""),N=HM(null),B=HM(null);Yr(()=>{t&&R()},[t,R]),Yr(()=>{k==="sent"&&!c&&s?.()},[k]);let P=Dq(()=>a?.(),[a]);if(k4({active:!c&&t,onDismiss:P}),Yr(()=>{if(c||!t)return;let U=window.setTimeout(()=>B.current?.focus(),Oq);return()=>window.clearTimeout(U)},[c,t]),Yr(()=>{!t||!l||d(l)},[t,l]),!c&&!t)return null;function O(U){v(p1=>{let f1=new Set(p1);return f1.has(U)?f1.delete(U):f1.add(U),f1})}function c1(U){U.target===N.current&&a?.()}function V(U){U.preventDefault();let p1=g.trim().toLowerCase();T(p1),A({email:p1,firstName:p,interests:[...f],frequency:z})}let q=e.successBody.replace(/\{email\}/g,F).replace(/\{issue\}/g,e.issueNumber),K=Gq(e),W=e.formSide==="left",r1=k2("div",{className:"flex flex-wrap items-center justify-between gap-5 uppercase tracking-[0.18em] text-fg-dim",children:[k2("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:[J1("span",{className:"block h-1.5 w-1.5 rounded-full bg-accent"}),C(e.finePrint)]}),!c&&J1("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:C(e.dismissText)})]}),x1=k2(qq,{children:[J1("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:J1(V1,{text:e.formLabel,scaled:!1,className:"mb-[18px]"})}),J1("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:$(e.formHeading)}),J1("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:C(e.formIntro,!0)})]}),Y="px-11 py-12 max-[880px]:px-[26px] max-[880px]:py-8",e1;m&&h?e1=k2("div",{className:`relative flex min-h-[560px] flex-col max-[880px]:min-h-0 ${Y}`,children:[x1,J1("div",{className:"mt-8",children:J1(rp,{form:h,formSlug:n,editing:c,onSent:s})}),J1("div",{className:"mt-auto pt-7",children:r1})]}):k!=="sent"?e1=k2("form",{onSubmit:V,noValidate:!0,className:`relative flex min-h-[560px] flex-col max-[880px]:min-h-0 ${Y}`,children:[x1,k2("div",{className:"mt-8 flex flex-col gap-[18px]",children:[J1(Z2,{label:C(e.firstNameLabel),required:!0,labelFace:Xr,children:J1("input",{type:"text",value:p,onChange:U=>u(U.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"})}),J1(Z2,{label:C(e.emailLabel),required:!0,labelFace:Xr,children:J1("input",{type:"email",value:g,onChange:U=>d(U.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"})}),k2("div",{className:"mt-1.5 flex flex-col gap-2.5",children:[J1(v8,{labelFace:Xr,children:C(e.interestsLabel)}),J1("div",{className:"flex flex-wrap gap-2",children:e.interests.map((U,p1)=>{let f1=f.has(U);return J1("button",{type:"button",onClick:()=>O(U),"aria-pressed":f1,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",f1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:U},`${U}-${p1}`)})})]}),e.frequencies.length>0&&k2("div",{className:"mt-1.5 flex flex-col gap-2.5",children:[J1(v8,{labelFace:Xr,children:C(e.frequencyLabel)}),J1("div",{className:"flex border border-line",children:e.frequencies.map((U,p1)=>{let f1=z===U;return J1("button",{type:"button",onClick:()=>x(U),"aria-pressed":f1,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",p1<e.frequencies.length-1?"border-r border-line":"",f1?"bg-accent text-bg":"text-fg-dim hover:text-fg"].join(" "),children:U},`${U}-${p1}`)})})]})]}),k2("div",{className:"mt-auto flex flex-col gap-3.5 pt-7",children:[Z&&J1("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:Z}),k2("button",{type:"submit",disabled:E,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:[J1("span",{children:e.submitText}),J1("span",{className:"transition-transform group-hover:translate-x-[4px]",children:E?"\u2026":"\u2192"})]}),r1]})]}):e1=k2("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:[J1("div",{className:"flex h-16 w-16 items-center justify-center border border-accent font-display text-[32px] text-accent",children:"\u2713"}),J1("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:$(e.successHeading)}),J1("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:C(q,!0)}),!c&&J1("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:C(e.keepBrowsingText)})]});let d1=k2("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 ${K.className}`.trim(),style:{...K.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&&J1("button",{ref:B,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"}),k2("div",{className:["grid max-h-[calc(100vh-48px)] overflow-hidden max-[880px]:max-h-[88dvh] max-[880px]:grid-cols-1 max-[880px]:overflow-auto",W?"grid-cols-[1fr_1.05fr]":"grid-cols-[1.05fr_1fr]"].join(" "),children:[k2("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",W?"order-2 border-l max-[880px]:order-none":"border-r",e.valuePanelOnPhone?"":"max-[880px]:hidden"].join(" "),style:{background:"var(--subscribe-panel-bg)"},children:[J1("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)"}}),k2("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:[J1("div",{className:"absolute inset-[60px] rounded-full border",style:{borderColor:"color-mix(in oklab, var(--accent) 18%, transparent)"}}),J1("div",{className:"absolute inset-[140px] rounded-full border",style:{borderColor:"color-mix(in oklab, var(--accent) 14%, transparent)"}})]}),k2("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",W&&!c?"pr-[52px]":""].join(" "),children:[J1("span",{children:C(e.metaLabel)}),(e.issueLabel||e.issueNumber)&&k2("span",{children:[C(e.issueLabel)," ",J1("strong",{className:"font-normal text-accent",children:e.issueNumber})]})]}),k2("div",{className:"relative z-[2] flex flex-col gap-[18px] py-8",children:[J1("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:J1(V1,{text:e.kicker,size:12,scaled:!1})}),J1("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:$(e.heading)}),J1("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:C(e.deck,!0)})]}),e.stats.length>0&&J1("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((U,p1)=>k2("div",{children:[J1("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:C(U.label)}),J1("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:C(U.value)})]},`${U.label}-${p1}`))})]}),e1]})]});return c?J1("div",{className:"flex w-full justify-center p-6","data-subscribe-preview":!0,children:d1}):k2("div",{ref:N,onClick:c1,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:[d1,J1("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 bp(){let{chromePlaceholder:e,themeFromDocument:t}=V3(),{chat:a,selected:s,select:c}=Fy();return e||t||!a.enabled?null:rW("div",{className:"sf-preview-chat-pick","data-selected":s||void 0,onClick:l=>{l.stopPropagation(),c()},children:[fp("style",{children:lW}),fp(IM,{preview:!0,children:fp(vp,{title:a.title,subtitle:a.subtitle,greeting:a.greeting})})]})}import{lazy as oW,Suspense as iW}from"react";import{jsx as BM}from"react/jsx-runtime";function xp(e,t={}){let a=oW(async()=>{let l=await e();return{default:"default"in l?l.default:l}}),s=t.loading?t.loading():null;function c(l){return BM(iW,{fallback:s,children:BM(a,{...l})})}return c}import{useEffect as _W,useRef as IW}from"react";import{jsx as zp,jsxs as nW}from"react/jsx-runtime";import{useEffect as hW,useState as mW}from"react";function C0({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,p]=mW(!1),u=a||"";hW(()=>{p(!1)},[u]);let g=rx(u),d=!u||m;return nW("div",{className:`relative h-full w-full overflow-hidden ${t??""}`,children:[zp("div",{className:"absolute inset-0 flex items-center justify-center",style:n?{background:"var(--site-surface)"}:void 0,children:d?e:null}),u&&(g?zp("img",{src:u,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:()=>p(!0)}):zp(el,{src:u,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:()=>p(!0)}))]})}import{useId as xW}from"react";var pW=25.4,Ia=400,Qr=152,uW=58,ZM=Qr*Math.cos(uW*Math.PI/180),dW=14,gW=Ia/2,vW={sectionWidth:225,aspectRatio:60,rimDiameter:17};function OM(e){let t=l4(e);return t?{sectionWidth:t.width,aspectRatio:t.profile,rimDiameter:t.rim}:vW}function GM(e){let t=e.rimDiameter*pW/2,a=t+e.sectionWidth*e.aspectRatio/100,s=Qr*(e.sectionWidth/a),c=t/a;return{cy:gW,rx:ZM,ry:Qr,cxf:Ia/2-s/2-dW,dx:s,rimRx:ZM*c,rimRy:Qr*c}}var x0=e=>e.toFixed(1);function eo(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${x0(c)} ${x0(l)} A${x0(e.rx)} ${x0(e.ry)} 0 0 ${a} ${x0(c)} ${x0(r)}`}function yp(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${x0(s)} ${x0(l)} L${x0(c)} ${x0(l)} A${x0(e.rx)} ${x0(e.ry)} 0 0 1 ${x0(c)} ${x0(r)} L${x0(s)} ${x0(r)} A${x0(e.rx)} ${x0(e.ry)} 0 0 0 ${x0(s)} ${x0(l)} Z`}function Jr(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 qM(e,t,a,s,c){let[l,r]=Jr(e,t,s),[o,i]=Jr(e,t,c),[n,h]=Jr(e,a,c),[m,p]=Jr(e,a,s);return`M${x0(l)} ${x0(r)} A${x0(e.rx)} ${x0(e.ry)} 0 0 1 ${x0(o)} ${x0(i)} L${x0(n)} ${x0(h)} A${x0(e.rx)} ${x0(e.ry)} 0 0 0 ${x0(m)} ${x0(p)} L${x0(l)} ${x0(r)} Z`}var DM=[{f:[0,.215]},{f:[.245,.485]},{f:[.515,.755]},{f:[.785,1]}],fW={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}}]},bW=[["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 WM(e){let t=` ${(e??"").toLowerCase().replace(/[^a-z0-9]+/g," ").trim()} `;if(t.trim()==="")return DM;for(let[a,s]of bW)if(t.includes(` ${a} `))return fW[s];return DM}var to="Illustrations are drawn to each tyre's listed size and represent its category; supplier photography replaces them where available.";import{Fragment as Ra,jsx as u0,jsxs as H5}from"react/jsx-runtime";var i4={rib:.2,grooveWall:.16,shoulder:.22,silhouette:.26,relief:[.26,.15,.11],lettering:.1,dishFill:.06,dishEdge:.3,spoke:.3,hubFill:.16,hubEdge:.34},zW=[.8,.52,.24],UM=.4,jM=.88,KM=.3,$M=5,YM=.3,XM=.84,yW=7,S0=e=>Math.round(e*10)/10;function wp({size:e,type:t,className:a}){let s=xW().replace(/[^a-zA-Z0-9]/g,""),c={tread:`${s}-tread`,wall:`${s}-wall`,rim:`${s}-rim`,shadow:`${s}-shadow`,crown:`${s}-crown`},l=GM(OM(e)),r=yp(l,0,1),o=e?`${e} tyre illustration`:"Tyre illustration";return H5("svg",{"data-tyre-placeholder":"",viewBox:`0 0 ${Ia} ${Ia}`,role:"img","aria-label":o,fill:"none",className:a??"block h-full w-full",children:[u0("title",{children:o}),H5("defs",{children:[u0(CW,{id:c}),u0("clipPath",{id:c.crown,children:u0("path",{d:r})})]}),u0("ellipse",{cx:S0(l.cxf+l.dx/2),cy:S0(l.cy+l.ry-4),rx:S0(l.dx*1.5),ry:16,fill:`url(#${c.shadow})`}),u0(kW,{g:l,id:c}),u0(MW,{g:l,id:c}),u0("path",{d:r,fill:`url(#${c.tread})`}),u0("g",{clipPath:`url(#${c.crown})`,children:WM(t).map(i=>u0(wW,{g:l,column:i},i.f[0]))}),u0("path",{d:eo(l,0,0,!0),stroke:"currentColor",strokeOpacity:i4.shoulder,strokeWidth:1.2}),u0("path",{d:eo(l,1,1),stroke:"currentColor",strokeOpacity:i4.silhouette,strokeWidth:1.4})]})}function wW({g:e,column:t}){let[a,s]=t.f;if(!t.blocks)return H5(Ra,{children:[u0("path",{d:yp(e,a,s),fill:"currentColor",fillOpacity:i4.rib}),u0("path",{d:eo(e,a,1),stroke:"currentColor",strokeOpacity:i4.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 u0(Ra,{children:i.map(([n,h])=>u0("path",{d:qM(e,a,s,n,h),fill:"currentColor",fillOpacity:i4.rib,stroke:"currentColor",strokeOpacity:i4.grooveWall,strokeWidth:1},n))})}function CW({id:e}){return H5(Ra,{children:[H5("linearGradient",{id:e.tread,x1:"0",y1:"0",x2:"1",y2:"0",children:[u0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.07}),u0("stop",{offset:"0.14",stopColor:"currentColor",stopOpacity:.24}),u0("stop",{offset:"0.45",stopColor:"currentColor",stopOpacity:.18}),u0("stop",{offset:"0.84",stopColor:"currentColor",stopOpacity:.1}),u0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.05})]}),H5("linearGradient",{id:e.wall,x1:"0.15",y1:"0",x2:"0.9",y2:"1",children:[u0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.28}),u0("stop",{offset:"0.45",stopColor:"currentColor",stopOpacity:.17}),u0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.08})]}),H5("linearGradient",{id:e.rim,x1:"0.1",y1:"0",x2:"0.9",y2:"1",children:[u0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.46}),u0("stop",{offset:"0.5",stopColor:"currentColor",stopOpacity:.26}),u0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:.12})]}),H5("radialGradient",{id:e.shadow,children:[u0("stop",{offset:"0",stopColor:"currentColor",stopOpacity:.22}),u0("stop",{offset:"1",stopColor:"currentColor",stopOpacity:0})]})]})}function kW({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 H5(Ra,{children:[u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rx),ry:S0(e.ry),fill:`url(#${t.wall})`}),zW.map((l,r)=>{let o=s(l);return u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rx*o),ry:S0(e.ry*o),stroke:"currentColor",strokeOpacity:i4.relief[r],strokeWidth:1},l)}),u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rx*s(UM)),ry:S0(e.ry*s(UM)),stroke:"currentColor",strokeOpacity:i4.lettering,strokeWidth:S0(c)})]})}function MW({g:e,id:t}){let a=Array.from({length:$M},(s,c)=>{let l=(c*(360/$M)-90)*Math.PI/180;return{x1:e.cxf+e.rimRx*YM*Math.cos(l),y1:e.cy+e.rimRy*YM*Math.sin(l),x2:e.cxf+e.rimRx*XM*Math.cos(l),y2:e.cy+e.rimRy*XM*Math.sin(l)}});return H5(Ra,{children:[u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rimRx),ry:S0(e.rimRy),fill:`url(#${t.rim})`}),u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rimRx*jM),ry:S0(e.rimRy*jM),fill:"currentColor",fillOpacity:i4.dishFill,stroke:"currentColor",strokeOpacity:i4.dishEdge,strokeWidth:1}),a.map((s,c)=>u0("line",{x1:S0(s.x1),y1:S0(s.y1),x2:S0(s.x2),y2:S0(s.y2),stroke:"currentColor",strokeOpacity:i4.spoke,strokeWidth:yW,strokeLinecap:"round"},c)),u0("ellipse",{cx:S0(e.cxf),cy:S0(e.cy),rx:S0(e.rimRx*KM),ry:S0(e.rimRy*KM),fill:"currentColor",fillOpacity:i4.hubFill,stroke:"currentColor",strokeOpacity:i4.hubEdge,strokeWidth:1})]})}import{jsx as Cp}from"react/jsx-runtime";function i6({image:e,size:t,type:a,sizes:s,priority:c=!1,className:l="aspect-square",showBackground:r=!0}){return Cp("div",{className:`text-fg ${l}`,style:{padding:"var(--sf-tyre-image-inset, 0)"},children:Cp(C0,{label:t||"Tyre",src:Q3(e??void 0),alt:t?`${t} tyre`:"Tyre",objectFit:"contain",sizes:s,priority:c,showBackground:r,fallback:Cp(wp,{size:t,type:a,className:"block h-full w-full p-3"})})})}function so(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 SW(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 ao(e,t=""){return{vehicle:{...e,region:t},status:"unknown",oemSizes:[],variants:[]}}function LW(e,t){if(typeof t!="object"||t===null)return ao(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 ao(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?ao(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 JM(e,t){try{let a=await e7(SW(e,t),{baseUrl:Pw});return LW(t,a)}catch{return ao(t)}}function QM(e){if(!e)return[];let t=[];for(let a of[...e.frontTyres,...e.rearTyres]){let s=l4(a);if(!s)continue;let c=q4(s);t.includes(c)||t.push(c)}return t}function eS(e,t){if(t.length===0)return null;for(let a of e){let s=l4(a);if(!s)continue;let c=q4(s);if(t.includes(c))return c}return null}function Ba(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 AW="/tyres";function Ne(e){return e?`${AW}/${e}`:null}function _e(e){let t=e.lastIndexOf(" ");return t===-1?{lead:"",accent:e}:{lead:e.slice(0,t+1),accent:e.slice(t+1)}}function kp(e,t){return _w({partNumber:e.sku,prices:e.prices},t)}var HW="Tyre";function co(e,t,a,s){return{id:`${e.slug}|${t.sku}|${a.unit}|${a.spares>0?"spare":"no-spare"}`,slug:e.slug,name:_e(e.name),process:e.brand||HW,positionNo:"01",config:[{label:t.size},{label:lr(a)}],finishName:"",size:t.size,components:kp(t,a),qty:s,href:Ne(e.slug)??void 0,kind:"tyre",sku:t.sku,pack:a}}function lo(e){return e.kind==="tyre"}function tS(e,t){let a=e.prices?.[t];return typeof a!="number"||!Number.isFinite(a)||a<=0?!1:e.inStock}import{jsx as Za}from"react/jsx-runtime";function FW(e){let t=e?.tyreTypes??[];return t.length===1?t[0]:null}function Mp({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??Uw;return Za("div",{className:"relative flex aspect-square items-center justify-center overflow-hidden border border-line bg-surface",children:lo(e)?Za(i6,{image:a?.coverImage,size:e.size,type:FW(a),sizes:"96px",className:"h-full w-full"}):l?.src?Za(E3,{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?Za("div",{className:"relative z-[2] block w-[72%]",style:{color:n,filter:"drop-shadow(0 6px 12px rgba(0,0,0,0.25))"},children:Za(f8,{spokes:r,mesh:o,className:"block w-full"})}):null})}import{jsx as Sp,jsxs as PW}from"react/jsx-runtime";function aS(e,t){return Math.min(um,Math.max(1,e+t))}var sS="disabled:cursor-not-allowed disabled:opacity-40",TW={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 ${sS}`,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 ${sS}`,value:"min-w-[36px] px-3 text-center font-mono text-[12px] tracking-[0.18em] text-fg"}};function Da({value:e,onChange:t,size:a}){let s=TW[a];return PW("div",{className:s.frame,children:[Sp("button",{type:"button",onClick:()=>t(aS(e,-1)),disabled:e<=1,"aria-label":"Decrease quantity",className:s.button,children:"\u2212"}),Sp("span",{className:s.value,children:e}),Sp("button",{type:"button",onClick:()=>t(aS(e,1)),disabled:e>=um,"aria-label":"Increase quantity",className:s.button,children:"+"})]})}import{useEffect as EW,useState as VW}from"react";var NW=new Map;function cS(e){let[t,a]=VW(null);return EW(()=>{if(!e||t)return;let s=!0;return g0.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??NW}import{Fragment as ro,jsx as N1,jsxs as i0}from"react/jsx-runtime";function Oa({content:e=Ml}){let{isOpen:t,preview:a,close:s,items:c,remove:l,setQty:r,totals:o,coupon:i,bundles:n}=c4(),h=new Set(c.flatMap(x=>(x.components??[]).map(k=>k.partNumber))),m=new Set(o.appliedBundles.map(x=>x.slug)),p=n.filter(x=>!m.has(x.slug)).filter(x=>x.components.some(k=>h.has(k.partNumber))).slice(0,2),{formatMoney:u,activeCountry:g}=p0(),d=g?.name??e.shipsToFallback,f=1+(e.leadTimeValue?1:0)+(d?1:0),v=IW(null),z=cS(c.some(lo));return k4({active:t,onDismiss:s,lockScroll:!a}),_W(()=>{t&&v.current?.focus({preventScroll:!0})},[t]),t?i0(ro,{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"}),i0("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:x=>x.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
- `}),i0("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:[i0("div",{className:"flex items-center justify-between",children:[i0("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:v,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"})]}),i0("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:qz(e,c.length)})]}),i0("div",{className:`grid flex-shrink-0 ${RW[f-1]} gap-px border-b border-line bg-line`,children:[N1(Lp,{label:"Items",value:i0(ro,{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(Lp,{label:"Lead time",value:e.leadTimeValue}):null,d?N1(Lp,{label:"Ships to",value:d}):null]}),i0("div",{className:"flex-1 overflow-y-auto [scrollbar-color:var(--site-line)_transparent] [scrollbar-width:thin]",children:[c.length===0?N1(GW,{content:e}):c.map(x=>N1(BW,{line:x,tyre:z.get(x.slug),onRemove:()=>l(x.id),onQtyChange:k=>r(x.id,k)},x.id)),p.length>0&&i0("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:[i0("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:p.map(x=>N1(ZW,{href:`/bundles/${x.slug}`,title:x.name,sub:DW(x,o.currency,u)},x.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(Yw,{})}),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(x=>N1(OW,{children:x},x))})]}),i0("div",{className:"flex flex-shrink-0 flex-col gap-2 border-t border-line px-8 pt-5 max-[640px]:px-[22px]",children:[N1(p7,{label:`Subtotal \xB7 ${o.sets} set${o.sets===1?"":"s"}`,value:u(o.subtotal,o.currency)}),o.appliedBundles.map(x=>N1(p7,{label:`Bundle \xB7 ${x.name}${x.multiples>1?` \xD7${x.multiples}`:""}`,value:i0("span",{style:{color:"var(--green)"},children:["\u2212 ",u(x.discount,o.currency)]})},x.slug)),o.discount>0&&i?.valid&&N1(p7,{label:`Coupon \xB7 ${i.code}`,value:i0("span",{style:{color:"var(--green)"},children:["\u2212 ",u(o.discount,o.currency)]})}),i?.deferred&&N1(p7,{label:`Coupon \xB7 ${i.code}`,value:Vw}),i?.valid&&i.effects?.gift&&N1(p7,{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(p7,{label:"Shipping",value:o.freeShipping||o.shipping===0?N1("span",{style:{color:"var(--green)"},children:"Free"}):u(o.shipping,o.currency)}),o.tax&&(o.tax.charged?N1(p7,{label:o.tax.inclusive?`${o.tax.name} included \xB7 ${o.tax.rate}%`:o.tax.name,value:u(o.tax.amount,o.currency)}):o.tax.name?N1(p7,{label:o.tax.name,value:"Calculated at checkout"}):null),i0("div",{className:"mt-1.5 flex items-center justify-between border-t border-line pt-3.5 text-fg",children:[i0("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":u(o.grand,o.currency)})]})]}),i0("div",{className:"flex flex-shrink-0 flex-col gap-2.5 px-8 pb-[22px] pt-3.5 max-[640px]:px-[22px]",children:[i0(S1,{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"})]}),i0("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(S1,{href:"/wheels",onClick:s,className:"text-fg transition-colors hover:text-accent",children:"\u2190 Keep browsing"}),N1("button",{type:"button",className:"text-fg transition-colors hover:text-accent",children:"Save for later"})]})]})]})]}):null}var RW=["grid-cols-1","grid-cols-2","grid-cols-3"];function Lp({label:e,value:t}){return i0("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 BW({line:e,tyre:t,onRemove:a,onQtyChange:s}){let{catalog:c,totals:l}=c4(),r=(e.components??[]).reduce((n,h)=>n+(l.freeUnitsByPartNumber[h.partNumber]??0),0),{currency:o,formatMoney:i}=p0();return i0(ro,{children:[i0("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(Mp,{line:e,catalog:c,tyre:t}),i0("div",{className:"flex min-w-0 flex-col gap-2",children:[i0("div",{className:"flex items-start justify-between gap-3",children:[i0("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-accent",children:["N\xB0 ",e.positionNo," \xB7 ",e.process==="FusionForge\xAE"?i0(ro,{children:["FusionForge",N1(c6,{})]}):e.process]}),N1("span",{className:"whitespace-nowrap font-display text-[16px] font-medium tracking-[-0.015em] text-fg",children:dm(e,o)===null?a7:i(dm(e,o),o)})]}),i0("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&&i0("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&&i0("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"]})]}),i0("div",{className:"mt-2.5 flex items-center justify-between gap-3",children:[N1(Da,{value:e.qty,onChange:s,size:"small"}),i0("div",{className:"flex gap-3.5 font-mono text-[10px] uppercase tracking-[0.22em]",children:[N1(S1,{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&&i0("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"}),i0("span",{children:["Verified for your ",N1("strong",{className:"font-medium text-accent",children:e.verifiedFor}),". Final torque values shipped with the wheels."]})]})]})}function ZW({title:e,sub:t,href:a}){return i0(S1,{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:[i0("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 DW(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 OW({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 p7({label:e,value:t}){return i0("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 GW({content:e}){return i0("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}),i0(S1,{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 qW=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],WW=Object.fromEntries(qW.map(e=>[e.key,e]));function lS(e){return WW[e]}import{Fragment as jW,jsx as Ie,jsxs as Ga}from"react/jsx-runtime";var UW=xp(()=>import("./EditorPreviewCheckout-J5UPPM2D.js"),{ssr:!1});function Ap(){let{chromePlaceholder:e,themeFromDocument:t}=V3(),{surface:a}=Vy();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?Ga(jW,{children:[Ie(UW,{}),Ie(rS,{surface:a})]}):Ie(hr,{children:Ga(mr,{preview:!0,children:[Ie(Oa,{}),Ie(rS,{surface:a})]})})}function rS({surface:e}){let{label:t,href:a}=lS(e);return Ga("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:[Ga("span",{style:{whiteSpace:"nowrap"},children:[t," \xB7 preview only"]}),Ga("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:["Open live",Ie(a6,{name:"external-link",size:13,rounded:!0})]})]})}import{CategoryIcon as Ua1,CheckIcon as hO,ClockIcon as Eb,ColumnsIcon as ja1,DirectionIcon as Ka1,EyeIcon as $a1,ListIcon as Ya1,PageIcon as Xa1,PlacementIcon as Ja1,ScrollPointIcon as Qa1,TriggerIcon as es1}from"efficient-easel/icons";import{useContext as XW,useEffect as pS,useRef as io,useState as no}from"react";import{Button as ho}from"efficient-shell/ui";var qa=class extends Error{constructor(a){super("The storefront forms list could not be loaded.");this.cause=a;this.name="FormsUnavailableError"}},oo=null,Hp=null,Fp=null;function KW(){oo=null,Hp=null,Fp=null}function oS(e=!1){let t=N3(),a=i2();return(e||!oo||Hp===null&&t!==null||Fp!==a)&&(Hp=t,Fp=a,oo=(t?X1.listForms(t,{siteId:a}):Promise.reject(new qa)).catch(s=>{throw KW(),s instanceof qa?s:new qa(s)})),oo}var Tp=new Map,$W=9e5,iS=0;function YW(){return iS+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String(iS)}`}function nS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function hS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=YW();return new Promise(s=>{let c=setTimeout(()=>mS(a,{status:"timeout"}),t.timeoutMs??$W);Tp.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function mS(e,t){let a=Tp.get(e);a&&(Tp.delete(e),a(t))}function nn1(e,t){mS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as P2,jsxs as U4}from"react/jsx-runtime";var uS="__create-a-new-form__";function JW({value:e,forms:t,loadFailed:a,emptyLabel:s="No form yet"}){let c=t??[],l=e?c.some(m=>m.slug===e):!0,r=t===null&&!a,o={value:"",label:r?"Loading\u2026":a?"Forms couldn\u2019t be loaded":s},i=e&&!l?[{value:e,label:r||a?e:`${e} \u2014 no form with this name`}]:[],n=c.map(m=>({value:m.slug,label:m.is_active?m.title:`${m.title} (switched off)`})),h=r?[]:[{value:uS,label:"Create a new form\u2026"}];return[o,...i,...n,...h]}function QW(e){return e===uS?{action:"create"}:{action:"store",slug:e}}function eU({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 tU(e){let t=["Goes to Storefront \u2192 Forms"],a=(e.notify_email??"").trim();return a&&t.push(`Emails a copy to ${a}`),e.mailing_list_name&&t.push(e.subscribe_mode==="checkbox"?`Joins the \u201C${e.mailing_list_name}\u201D audience, but only when the consent box is ticked`:`Joins the \u201C${e.mailing_list_name}\u201D audience`),e.kind==="account_signup"&&t.push(e.signup_customer_type==="importer"?"Creates a wholesale account":"Creates a retail account"),t}function Pp({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=z4(),l=XW(yl),r=l?l.capabilities.hasForms:!0,[o,i]=no(null),[n,h]=no(!1),[m,p]=no(!1),[u,g]=no(!1),d=io(!0),f=io(e);f.current=e;let v=io(t);v.current=t;let z=io(null),x=(F=!1)=>oS(F).then(T=>{if(d.current){i(T),h(!1);let N=eU({value:f.current,pickedId:z.current,forms:T});N&&v.current(N)}return T},()=>(d.current&&h(!0),[]));pS(()=>(d.current=!0,r&&x(),()=>{d.current=!1}),[r]),pS(()=>r?Ur(()=>{x(!0)}):void 0,[r]);let M=e?(o??[]).find(F=>F.slug===e)??null:null;M?z.current=M.id:e||(z.current=null);let A=!!e&&!M&&o!==null&&!n,R=JW({value:e,forms:o,loadFailed:n,emptyLabel:s}),E=async()=>{p(!0),g(!1);try{let F=await hS(c,{mode:"create"}),T=await x(!0);if(!d.current)return;if(F.status==="timeout"){g(!0);return}if(F.status!=="saved")return;let{form:N}=F;N.slug!==f.current&&v.current(N.slug),T.some(B=>B.id===N.id)||x(!0)}finally{d.current&&p(!1)}},Z=F=>{let T=QW(F);T.action==="create"?E():(g(!1),t(T.slug))};return r?U4("div",{className:"sf-formpicker",children:[P2(N9,{label:a,options:R,fallback:"",value:e??"",onChange:Z,placeholder:"Search forms\u2026"}),u&&P2("p",{className:"sf-formsummary-warn",children:"That didn\u2019t come back \u2014 pick the form from the list, or try again."}),M?U4("div",{className:"sf-blogsource sf-formsummary",children:[U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:M.fields.length===1?"1 field":`${M.fields.length} fields`}),M.fields.length?P2("ol",{className:"sf-formsummary-fields",children:M.fields.map((F,T)=>P2("li",{children:F.label},F.key||`${F.label}-${T}`))}):P2("p",{className:"es-field-hint sf-hint-keep",children:"This form has no fields yet, so there is nothing for a visitor to fill in."})]}),U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:"Where the answers go"}),P2("ul",{className:"sf-formsummary-fields",children:tU(M).map(F=>P2("li",{children:F},F))})]}),!M.is_active&&P2("p",{className:"sf-formsummary-warn",children:"This form is switched off, so it won\u2019t appear on the published page. Turn it back on in Storefront \u2192 Forms."}),U4("div",{className:"sf-formsummary-actions",children:[P2(ho,{variant:"secondary",size:"sm",onClick:()=>nS(c,M.id),children:"Edit form \u270E"}),P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{E()},children:"New form +"})]}),P2("p",{className:"es-field-hint sf-hint-keep",children:"The questions, the button text and the thank-you message all come from Storefront \u2192 Forms. Edit them there \u2014 this section updates to match."})]}):U4("div",{className:"sf-blogsource sf-formsummary",children:[n?U4("p",{className:"es-field-hint sf-hint-keep",children:["This website\u2019s forms couldn\u2019t be loaded, so there is nothing to choose from yet.",e?` This section still points at \u201C${e}\u201D, and that is unchanged.`:""]}):A&&U4("p",{className:"sf-formsummary-warn",children:["This section points at \u201C",e,"\u201D, and this website has no form with that name. Pick one from the list above, or leave it \u2014 nothing has been changed."]}),U4("div",{className:"sf-formsummary-actions",children:[n&&P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{x(!0)},children:"Try again"}),P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{E()},children:"New form +"})]}),!n&&P2("p",{className:"es-field-hint sf-hint-keep",children:"Pick a form to show here, or build a new one. Forms are made once in Storefront \u2192 Forms and can be shown on any number of pages."})]})]}):P2("div",{className:"sf-formpicker",children:P2("div",{className:"sf-blogsource sf-formsummary",children:U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:a}),U4("p",{className:"es-field-hint sf-hint-keep",children:["Forms aren\u2019t available in this editor, so there is nothing to choose here.",e?` This section still points at \u201C${e}\u201D, and that is unchanged.`:""]})]})})})}import{jsx as aU}from"react/jsx-runtime";function F5(e,t){return{type:"custom",render:({value:a,onChange:s})=>aU(Pp,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var mo=null,dS=null;function sU(e,t){mo=e,dS=t}function Mn1(e){sU(e,null)}function gS(){return mo}function D2(){return dS==="dynamic"||mo===Im}function vS(e){return Sr(mo??"",e)??"alloy-wheel"}import{createContext as cU,useContext as lU}from"react";import{jsx as rU}from"react/jsx-runtime";var fS=cU(null);function bS({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return rU(fS.Provider,{value:a,children:t})}function xS(){return lU(fS)}import{createContext as oU,useContext as iU}from"react";import{jsx as nU}from"react/jsx-runtime";var zS=oU("alloy-wheel");function yS({kind:e,children:t}){return nU(zS.Provider,{value:e??"alloy-wheel",children:t})}function wS(){return iU(zS)}import{createContext as CS,useContext as po}from"react";import{jsx as uU}from"react/jsx-runtime";function hU(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 mU=/^\d{4}-\d{2}-\d{2}$/;function kS(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"?mU.test(a)?"date":"text":null;return s?[{key:t,label:hU(t),kind:s}]:[]}):[]}function uo(e,{firstField:t=!1}={}){if(!e)return[];let a=kS(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 pU(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 MS(e){return e?kS(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"?pU(a):a}]}):[]}var u7="product",Ep=CS(null);function Vp(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||u7}function go(e){let t=e?.appState?.data?.root;return Vp(t?.props)!==u7}var SS=CS(u7);function LS({type:e,children:t}){return uU(SS.Provider,{value:e,children:t})}function vo(e){let t=po(Ep),a=po(SS);return t?t.type!==u7:e&&a!==u7}var fo={type:"sample",key:"sample",title:"Record title",fields:{first:"A detail of this record",second:"Another detail",third:"A third"},value:void 0,schema:[{key:"first",label:"First detail",kind:"text"},{key:"second",label:"Second detail",kind:"text"},{key:"third",label:"Third detail",kind:"text"}]},AS=4;function bo(){return po(Ep)}function HS(e){let t=po(Ep);return t!==null&&t.type===e?t:null}import{createContext as gU,useContext as vU}from"react";var Np="heroBullets",Wa="\xB7",Ua={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function FS(e){return e.detail?`${e.label} ${Wa} ${e.detail}`:e.label}function dU(e){let t=e.trim();if(!t)return null;let a=t.indexOf(Wa);return a<0?{label:t,detail:""}:{label:t.slice(0,a).trim(),detail:t.slice(a+Wa.length).trim()}}function TS(e){let t=(e??{})[Np];return Array.isArray(t)?{bullets:t.map(s=>dU(typeof s=="string"?s:Oz(s?.text,""))).filter(s=>s!==null)}:Ua}import{jsx as fU}from"react/jsx-runtime";var PS=gU(Ua);function ES({content:e,children:t}){return fU(PS.Provider,{value:e,children:t})}function VS(){return vU(PS)}var u2={text:"Button label",href:"#"},L={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 t3={Series:"transparent",StatsParagraph:"transparent",TimelineTrack:cy,Stats:void 0};import{jsx as g7}from"react/jsx-runtime";import{jsx as xU}from"react/jsx-runtime";var xo="sf-card",E2={min:0,max:90,step:5,fallback:0,unit:"%"},d7=[{label:"Even",value:"even"},{label:"From the bottom",value:"bottom"}],bU="68%",D3={desktop:20,phone:20,side:40,sidePhone:24},NS="sf-box-sides",_S={min:0,max:200,step:10};function Re(e){return typeof e=="string"&&e.trim()!==""}function zo(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) ${bU})`}}function yo(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 wo={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}},IS=new Set(Object.keys(wo)),zU=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),RS=new Set(["ProductGrid"]);function _p(e,t){let a=e.render;e.render=s=>{if(t?.(s))return a(s);let c=T9(s.sectionPaddingTop,s.sectionPaddingBottom,s.sectionPaddingTopPhone,s.sectionPaddingBottomPhone),l=a(s);return c?xU("div",{className:c.className,style:c.style,children:l}):l}}var BS={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!zU.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){IS.has(t)||RS.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(IS.has(t)){let a=e.render,s=wo[t];e.render=c=>{let l=Fz(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(RS.has(t)){_p(e);return}_p(e,t==="Flex"?a=>Re(a.bgImage):void 0)}},yU=["Heading","Text"],ZS={name:"blockPadding",applies:(e,t,a)=>yU.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){_p(e)}};import{jsx as Be,jsxs as wU}from"react/jsx-runtime";import{useEasel as CU}from"efficient-easel/easel";import{SettingsDrill as kU}from"efficient-easel/panel";import{default as DS}from"efficient-easel/screen/components/AddBlockRow";import{default as OS}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as th1,useSlotChildActions as GS}from"efficient-easel/screen/components/SlotChildActionsContext";function MU({parent:e,parentType:t,label:a,rowName:s,onSelectChild:c,onAddChild:l,nestDepth:r=0}){let o=mm(t,r);if(!o)return null;let{slot:i,choices:n,spec:h}=o,m=String(e.props.id),p=`${m}:${i}`,u=Array.isArray(e.props[i])?e.props[i]:[],g=h?.addBlocked?.(u)??null,d=h?.notice?.(u)??null;return wU("div",{className:"sf-slot-rows",children:[a?Be(G9,{label:`${a} \xB7 ${u.length}`}):null,d?Be("p",{className:"sf-note",children:d}):null,u.map((f,v)=>Be(kU,{name:s(f),onOpen:()=>c(p,v,String(f.props.id),t)},String(f.props.id??`${p}-${v}`))),n?Be(DS,{choices:n,onPick:f=>l(m,i,f,u.length,t)}):h.fixed?null:Be(OS,{label:h.addLabel,blocked:g,onAdd:()=>l(m,i,h.childType,u.length,t)})]})}function SU(e,t){return mm(t)?.source==="footer"?e.blockRowName:e.childRowName}function qS({parentType:e,label:t}){let{appState:a,selectedItem:s}=CU(r=>r),c=GS();if(!c||!s||s.type!==e)return null;let l=e===yx?tl(a?.data,String(s.props.id)):0;return Be(MU,{parent:s,parentType:e,label:t,rowName:SU(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var WS="grayscale(1) contrast(1.03)",US="Black and white";function LU(e){return e===!0?{filter:WS}:{}}function AU(e){let{filter:t}=LU(e);return t?{style:{filter:t}}:{}}var ja="sf-photo-grayscale",HU=`@media (hover:hover){.${ja}{filter:${WS};transition:filter 160ms ease}.${ja}:hover{filter:none}}@media (hover:hover) and (prefers-reduced-motion:reduce){.${ja}{transition:none}}`;function Ze(e,t){return typeof e=="boolean"?e?AU(!0):{}:t===!0?{className:ja}:{}}function jS(e){return e===!0?{[ja]:HU}:{}}import{AlignLeftIcon as PU,BlackAndWhiteIcon as EU,ContrastIcon as VU,HeightIcon as NU,TypeIcon as _U}from"efficient-easel/icons";var FU=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],TU=new Set(FU);function KS(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(TU.has(t[a]))return t[a];return null}var n6=e=>X2(e,a1("Height",g7(NU,{}),te.min,te.max,te.step,te.fallback,te.unit)),S4={ctaText:H("Button",u2.text),ctaHref:H1("Button link")},T5=()=>b1("Alignment",g7(PU,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),Co=()=>b1("Tone",g7(VU,{}),[{label:"Default",value:"default"},{label:"Muted",value:"dim"}],"default"),n3=e=>b5({...wo[e],keys:{top:"padTop",bottom:"padBottom"},group:!1}),c2=(e,t)=>({type:"custom",render:()=>g7(qS,{parentType:e,label:t})});function IU(e){let{photographyGrayscale:t}=V3();return s1(US,t===!0,g7(EU,{})).render(e)}function De(){return{type:"custom",render:e=>g7(IU,{...e})}}var U1=Object.keys(x5("full"));function Oe(e){let t=KS(e);return t?g7(e4,{noun:t}):g7(_U,{})}import{createContext as RU,useContext as BU}from"react";import{jsx as v7,jsxs as Ip}from"react/jsx-runtime";function Rp(e){return w9(e)??void 0}var Bp=RU({}),$S=3;function Zp({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=BU(Bp),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",p=Rp(c),u=d=>h?{[p8]:d}:{},g=d=>Ul(n?.[u8(d)]?.role,Iy[d],ll);return Ip(S1,{href:s||"#",className:`sf-card group relative block w-full min-w-0 overflow-hidden bg-surface-2${m}`,children:[v7("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:v7(C0,{label:l||"collection.jpg",src:p})}),v7("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"}}),Ip("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&&v7("span",{...u("tag"),style:g("tag"),className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.25em] opacity-70",children:C(e)}),t&&v7("h3",{...u("name"),style:g("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"?$(t,!1):t}),a&&b0(a).map((d,f)=>v7("p",{...u("body"),style:g("body"),className:"max-w-[420px] text-[length:var(--size-body,14px)] leading-[1.5] opacity-80",children:C(d)},f)),o&&r&&v7("span",{...u("price"),style:g("price"),className:"font-mono text-[length:var(--size-label,15px)] tracking-[0.05em] text-accent",children:C(r)}),Ip("span",{...u("link"),style:g("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",v7("span",{className:"transition-transform group-hover:translate-x-[3px]","aria-hidden":!0,children:"\u2192"})]})]})]})}import{createContext as DU,useCallback as OU,useContext as GU,useEffect as XS,useRef as qU,useState as Op}from"react";import{useState as ZU}from"react";function ko(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 YS(e){return e==="below"}import{jsx as j4,jsxs as Ge}from"react/jsx-runtime";function Dp({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=ZU(!1),h=YS(o),m=Ge("div",{className:["sf-card group relative overflow-hidden bg-surface-2",ko(r),t?"max-[800px]:hidden":""].join(" "),children:[Ge("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:[j4(C0,{label:e.imageLabel,src:e.imageSrc}),j4("div",{className:"absolute inset-0",style:{background:"rgba(0,0,0,0.35)"}})]}),j4("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&&j4(E3,{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&&Ge("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&&j4("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:Y1(e.process)}),Ge("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&&j4("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&&j4("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&&j4("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:j4("span",{children:Y1(e.finish)})})]})]});return h?Ge("div",{className:t?"max-[800px]:hidden":"",children:[m,Ge("div",{className:"bg-surface px-3.5 pt-3 pb-3.5",children:[e.wheel&&j4("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)&&j4("div",{className:"mt-0.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:Y1(e.finish||e.car)})]})]}):m}import{Fragment as qe,jsx as J0,jsxs as h3}from"react/jsx-runtime";var Ka=DU({}),$a="data-gallery-grid",Gp="data-gallery-tile";function WU(e,t){let[a,s]=Op(null);return XS(()=>{let c=e.current,l=c?.closest(`[${$a}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${Gp}]`)),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 JS=[{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 UU(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function jU(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=UU(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 Ya({editing:e=!1,previewHover:t,ratio:a,captionPlace:s,...c}){let{galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o}=GU(Ka),i=jU(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=qU(null),m=OU(x=>{h.current=x},[]),p=WU(h,e),u=e&&(!!t||!!o),[g,d]=Op(!1),[f,v]=Op(0);XS(()=>{if(!g)return;let x=M=>{M.key==="Escape"?d(!1):M.key==="ArrowLeft"&&n.length>1?v(A=>(A-1+n.length)%n.length):M.key==="ArrowRight"&&n.length>1&&v(A=>(A+1)%n.length)};window.addEventListener("keydown",x);let k=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",x),document.body.style.overflow=k}},[g,n.length]);let z=J0(Dp,{build:i,forceHover:u,index:p?.index,total:p?.total,ratio:a,captionPlace:s});return h3(qe,{children:[e?J0("div",{ref:m,[Gp]:"",className:"block w-full text-left",children:z}):J0("button",{ref:m,[Gp]:"",type:"button","aria-label":`Open ${i.car||"build"} on ${i.wheel||"wheel"}`,onClick:()=>{v(0),d(!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:z}),g&&(()=>{let x=n[f]??i.imageSrc??"",k=()=>v(A=>(A-1+n.length)%n.length),M=()=>v(A=>(A+1)%n.length);return J0("div",{role:"dialog","aria-modal":"true","aria-label":`${i.car} on ${i.wheel}`,onClick:()=>d(!1),className:"fixed inset-0 z-[100] 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:h3("div",{onClick:A=>A.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:[J0("button",{type:"button",onClick:()=>d(!1),"aria-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"}),h3("div",{className:"relative flex min-h-[690px] items-center justify-center overflow-hidden bg-surface-2 max-[1100px]:min-h-[450px]",children:[x&&J0("img",{src:x,alt:`${i.car} \u2014 ${f+1} of ${n.length}`,className:"block h-full max-h-[88vh] w-full object-cover"},x),n.length>1&&h3(qe,{children:[J0("button",{type:"button","aria-label":"Previous photo",onClick:k,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"}),J0("button",{type:"button","aria-label":"Next photo",onClick:M,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"}),h3("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:[f+1," / ",n.length]})]})]}),h3("div",{className:"flex flex-col gap-[30px] px-[60px] py-[72px] max-[1100px]:px-9 max-[1100px]:py-[54px]",children:[i.process&&J0("span",{className:"font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.3em] text-accent",children:C(i.process)}),i.wheel&&J0("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:$(i.wheel,!1)}),i.car&&h3("div",{className:"font-heading3 text-[length:var(--size-headingSmall,27px)] leading-[1.4] text-fg",children:["on ",J0("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em]",children:C(i.car,!0)})]}),h3("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&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Wheel"}),J0("dd",{className:"text-fg",children:C(i.wheel)})]}),i.process&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Process"}),J0("dd",{className:"text-fg",children:C(i.process)})]}),i.finish&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Finish"}),J0("dd",{className:"text-fg",children:C(i.finish)})]}),i.car&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Vehicle"}),J0("dd",{className:"text-fg",children:C(i.car)})]})]}),h3("div",{className:"mt-auto flex flex-col gap-3.5 pt-6",children:[h3(S1,{href:i.href||"/wheels",onClick:()=>d(!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:[J0("span",{children:"View product"}),J0("span",{className:"transition-transform group-hover:translate-x-[6px]",children:"\u2192"})]}),h3(S1,{href:l,onClick:()=>d(!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:[J0("span",{children:"See more builds"}),J0("span",{children:"\u2192"})]}),h3(S1,{href:r,onClick:()=>d(!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:[J0("span",{children:"Submit your build"}),J0("span",{children:"\u2192"})]})]})]})]})})})()]})}import{createContext as XU,useContext as JU,useEffect as Mo,useId as QU,useMemo as ej,useState as V2}from"react";var KU=14,$U=3;function qp(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function YU(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),qp(a)}async function QS(e,t,a={}){let s=a.days??KU,c=a.read??g8.getAvailability,l=0,r=0;for(let o=0;o<s;o++){if(a.signal?.aborted)return{outcome:"unreadable"};let i=YU(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>=$U)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as sj}from"react/jsx-runtime";var eL=XU(null);function f7(){let e=JU(eL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Wp=[{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 tj(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 Up={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function aj(e,t){return e&&t?.length===0}function tL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=QU(),c=ej(()=>qp(new Date),[]),[l,r]=V2(),[o,i]=V2(""),[n,h]=V2(""),[m,p]=V2(c),[u,g]=V2(c),[d,f]=V2(!1),[v,z]=V2(null),[x,k]=V2(),[M,A]=V2(""),[R,E]=V2(""),[Z,F]=V2(""),[T,N]=V2(""),[B,P]=V2(""),[O,c1]=V2(()=>gm()),[V,q]=V2(null),[K,W]=V2(!1),[r1,x1]=V2(!1),[Y,e1]=V2(null),[d1,U]=V2("");Mo(()=>{U(Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC")},[]),Mo(()=>{let s0=!1;return g8.listServices().then(c0=>{s0||(r(c0.results),i(c0.currency),h($1=>$1||c0.results[0]?.id||""))}).catch(()=>{s0||r([])}),()=>{s0=!0}},[]),Mo(()=>{if(d||!n)return;let s0={aborted:!1};return A(""),k(void 0),e1(null),z(null),W(!0),QS(n,c,{signal:s0}).then(c0=>{if(!s0.aborted){if(c0.outcome==="found"){p(c0.date),g(c0.date),k(c0.availability);return}z(c0.outcome==="noneInWindow"?`No times are available in the next ${c0.days} days.`:"We couldn't load available times. Please try again.")}}).finally(()=>{s0.aborted||W(!1)}),()=>{s0.aborted=!0}},[d,n,c]),Mo(()=>{if(!d||!n||!m)return;let s0=!1;return A(""),k(void 0),e1(null),z(null),W(!0),g8.getAvailability(n,m).then(c0=>{s0||(k(c0),c0.slots.length===0&&z("No times are available on this date."))}).catch(()=>{s0||z("We couldn't load available times. Please try again.")}).finally(()=>{s0||W(!1)}),()=>{s0=!0}},[m,d,n]);let p1=l?.find(s0=>s0.id===n),f1=p1?.depositAmountDue!=null,F0=!!(!e&&!r1&&p1&&M&&R.trim()&&Z.trim()&&!f1);async function T0(s0){if(s0.preventDefault(),!(!F0||!p1)){x1(!0),e1(null);try{let c0=await g8.create({serviceId:p1.id,start:M,customer:{name:R.trim(),email:Z.trim(),phone:T.trim()},notes:B.trim(),idempotencyKey:O,customerTimezone:d1});q(c0),c1(gm())}catch(c0){e1(c0 instanceof G4&&c0.status===409?"That time was just booked. Choose another available time.":"Your appointment wasn't submitted. Please check your details and try again."),c0 instanceof G4&&c0.status===409&&(A(""),g8.getAvailability(p1.id,m).then(k).catch(()=>{}))}finally{x1(!1)}}}let A1=aj(e,l);return sj(eL.Provider,{value:{fieldPrefix:s,editing:e,services:A1?Wp:l,currency:A1?"AUD":o,serviceId:A1?Wp[0].id:n,setServiceId:h,service:A1?Wp[0]:p1,requiresPayment:A1?!1:f1,date:m,earliestDate:u,setDate:p,setDateTouched:f,availability:A1?tj(m):x,loadingSlots:A1?!1:K,noSlotsMessage:v,selectedStart:A1?`${m}T09:00:00.000Z`:M,setSelectedStart:A,customerTimezone:d1,name:R,setName:E,email:Z,setEmail:F,phone:T,setPhone:N,notes:B,setNotes:P,confirmation:V??(t?Up:null),submitting:r1,error:Y,canSubmit:A1?!1:F0,handleSubmit:T0,sample:!!A1},children:a})}import{jsx as jp,Fragment as cj,jsxs as lj}from"react/jsx-runtime";var rj="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",aL={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 a3(e){let{variant:t="primary",arrow:a,className:s,style:c,children:l,href:r,newTab:o,...i}=e,n=`${rj} ${aL[t]??aL.primary} ${s??""}`,h=lj(cj,{children:[l,a!==null&&jp("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-[3px]",children:a??"\u2192"})]});return r?jp(t0,{href:r,className:n,style:c,...o?{target:"_blank",rel:"noopener noreferrer"}:{},children:h}):jp("button",{type:"button",className:n,style:c,...i,children:h})}import{jsx as L0,jsxs as M3}from"react/jsx-runtime";var Xa="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 oj(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 sL(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 cL(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 Ja="font-[family-name:var(--bk-name-font,var(--font-mono))] text-[length:var(--bk-name-size,12px)]";function Kp({number:e,children:t}){return M3("div",{className:"mb-4 flex items-center gap-3",children:[L0("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}),L0("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 So({eyebrow:e,heading:t,intro:a}){return M3("div",{className:"mb-10 max-w-[760px]",children:[(e??"").trim()&&L0("p",{className:"mb-4 font-mono text-[12px] font-semibold uppercase tracking-[0.24em] text-accent",children:e}),(t??"").trim()&&L0("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()&&L0("p",{className:"mt-5 max-w-[660px] font-display text-[17px] leading-[1.65] text-fg-dim",children:a})]})}function Lo({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:p,noSlotsMessage:u,selectedStart:g,setSelectedStart:d,customerTimezone:f}=f7();return a?M3("div",{className:"flex flex-col gap-9",style:e,children:[M3("div",{children:[L0(Kp,{number:"01",children:"Choose a service"}),L0("div",{className:"grid gap-3 sm:grid-cols-2",children:a.map(v=>{let z=v.id===c;return M3("button",{type:"button","aria-pressed":z,onClick:()=>l(v.id),className:`min-h-11 border p-4 text-left transition-colors ${z?"border-accent bg-accent/10":"border-line bg-bg hover:border-fg-dim"}`,children:[L0("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:v.name}),M3("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:[v.durationMinutes," min \xB7 ",oj(v.price,s)]}),v.description&&L0("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:v.description})]},v.id)})}),r&&L0("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."})]}),M3("div",{children:[L0(Kp,{number:"02",children:"Choose a date and time"}),L0(Z2,{separate:!0,htmlFor:`${t}-date`,label:"Date",required:!0,labelFace:Ja,children:L0("input",{id:`${t}-date`,type:"date",min:i,value:o,onChange:v=>{h(!0),n(v.target.value)},className:Xa,required:!0})}),L0("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:p?L0("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(v=>M3("button",{type:"button","aria-pressed":g===v.start,onClick:()=>d(v.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 ${g===v.start?"border-accent bg-accent text-bg":"border-line bg-bg text-fg hover:border-accent"}`,children:[L0("span",{className:"block",children:sL(v.start,f||m.timezone)}),f&&f!==m.timezone&&M3("span",{className:"mt-0.5 block text-[9px] font-normal tracking-[0.08em] opacity-70",children:[sL(v.start,m.timezone)," business"]})]},v.start)):u?L0("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:u}):null}),m?.timezone&&M3("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 ",f||m.timezone,f&&f!==m.timezone?` \xB7 business timezone ${m.timezone}`:""]})]})]}):null}function Ao({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:p,error:u,canSubmit:g}=f7();return M3("div",{className:"sf-card border border-line bg-bg p-5 min-[640px]:p-7",style:t,children:[L0(Kp,{number:"03",children:"Your details"}),M3("div",{className:"flex flex-col gap-4",children:[L0(Z2,{separate:!0,htmlFor:`${a}-name`,label:"Name",required:!0,labelFace:Ja,children:L0("input",{id:`${a}-name`,type:"text",autoComplete:"name",value:c,onChange:d=>l(d.target.value),className:Xa,required:!0})}),L0(Z2,{separate:!0,htmlFor:`${a}-email`,label:"Email",required:!0,labelFace:Ja,children:L0("input",{id:`${a}-email`,type:"email",inputMode:"email",autoComplete:"email",value:r,onChange:d=>o(d.target.value),className:Xa,required:!0})}),L0(Z2,{separate:!0,htmlFor:`${a}-phone`,label:"Phone",labelFace:Ja,children:L0("input",{id:`${a}-phone`,type:"tel",inputMode:"tel",autoComplete:"tel",value:i,onChange:d=>n(d.target.value),className:Xa})}),L0(Z2,{separate:!0,htmlFor:`${a}-notes`,label:"What would you like to cover?",labelFace:Ja,children:L0("textarea",{id:`${a}-notes`,rows:4,value:h,onChange:d=>m(d.target.value),className:`${Xa} resize-y`})})]}),u&&L0("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:u}),L0(a3,{type:s?"button":"submit",disabled:!g,arrow:null,className:"mt-6 w-full disabled:cursor-not-allowed disabled:opacity-50",children:p?"Submitting\u2026":(e??"").trim()||"Book appointment"})]})}function Ho({successMessage:e}){let{confirmation:t,customerTimezone:a}=f7();return t?M3("div",{className:"sf-card max-w-[760px] border border-line bg-bg p-6 min-[640px]:p-9",role:"status",children:[M3("p",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.22em] text-accent",children:["Request received \xB7 ",t.bookingNumber]}),L0("h3",{className:"mt-4 font-display text-[28px] font-medium uppercase text-fg",children:t.service}),L0("p",{className:"mt-2 font-display text-[17px] text-fg-dim",children:cL(t.startAt,t.customerTimezone||a||t.timezone)}),t.customerTimezone&&t.timezone!==t.customerTimezone&&M3("p",{className:"mt-1 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:["Business time: ",cL(t.startAt,t.timezone)]}),(e??"").trim()&&L0("p",{className:"mt-5 max-w-[620px] font-serif text-[18px] italic leading-[1.6] text-fg-dim",children:e}),L0(a3,{href:`/book/${encodeURIComponent(t.manageToken)}`,newTab:t!==Up,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Fo=["step","name","value","note"],$p={step:"Step",name:"Name",value:"Value",note:"Note"},To={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},lL={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 ij(e){return typeof e=="string"&&u5.includes(e)?e:null}var nj={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function rL(e,t){let a={};for(let s of Fo){let c=ij(e[To[s]]);if(!c)continue;let l=A9({role:c},nj,t);l.fontFamily&&(a[lL[s].font]=l.fontFamily),l.fontSize&&(a[lL[s].size]=l.fontSize)}return a}import{jsx as We}from"react/jsx-runtime";var oL=["head","booking","details","confirm"],iL={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Yp({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=f7(),n=rL(r);return e==="head"?We("div",{className:"min-[960px]:col-span-2",style:n,children:We(So,{eyebrow:t,heading:a,intro:s})}):e==="confirm"?o?We("div",{className:"min-[960px]:col-span-2",style:n,children:We(Ho,{successMessage:l})}):null:o||!i||i.length===0?null:e==="booking"?We(Lo,{style:n}):e==="details"?We(Ao,{buttonLabel:c,style:n}):null}import{jsx as $0,Fragment as hj,jsxs as L4}from"react/jsx-runtime";var M8="solid",Xp=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function nL(e){return I2(Xp,M8,e)}var Jp="sf-secnum-outline",hL="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",mL=`@supports (-webkit-text-stroke: 1px currentColor){.${Jp}{color:var(--site-surface-2);-webkit-text-stroke:1px var(--site-line)}}`;var Qa=(e,t=!1)=>typeof e=="string"?$(e,t):e,Ue=(e,t=!1)=>typeof e=="string"?C(e,t):e;function Q1({num:e,title:t,link:a,logo:s,description:c,accent:l,accentNum:r,numStyle:o=M8,look:i="standard",titleAccent:n,accentTracking:h="-0.02em",spaceBelow:m,rowGap:p,descriptionSize:u,className:g="",eyebrowLook:d=tr}){let f=m??(i==="editorial"?"mb-[60px]":"");if(i==="editorial"){let A=!!t||!!n;return L4("header",{className:`${f} 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 ${g}`.trim(),children:[e&&(typeof e=="string"?$0(V1,{text:e,className:"pb-2"}):$0("span",{className:"pb-2",children:e})),A&&L4("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&&L4(hj,{children:[" ",$0("em",{className:"font-serif font-normal italic text-accent",style:{letterSpacing:h},children:n})]})]}),c&&$0("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 A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t)})]})}if(i==="statement"){let A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t,!0)})]})}if(i==="natural"){let A=`flex max-w-[680px] flex-col ${p??"gap-5"} ${f} ${g}`.replace(/\s+/g," ").trim();return L4("div",{className:A,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d}):$0("span",{children:e})),t&&$0("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:Qa(t)}),c&&$0("p",{className:`${u??"text-[length:var(--size-body,16px)]"} leading-[1.6] opacity-85`,children:c})]})}if(i==="essay"){let A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t)})]})}let v=!!c||!!a,z=!!t,x=nL(o)==="outlined",k="font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em]",M=null;if(e)if(x)M=$0("span",{className:`${hL} text-fg-dim ${Jp}`,children:Ue(e)});else if(r&&!l&&typeof e=="string"){let A=e.indexOf("/"),R=A===-1?e:e.slice(0,A),E=A===-1?"":e.slice(A);M=L4("span",{className:k,children:[$0("span",{className:"text-accent",children:Ue(R)}),E&&$0("span",{className:"text-fg-dim",children:Ue(E)})]})}else M=$0("span",{className:`${k} ${l?"text-accent":"text-fg-dim"}`,children:Ue(e)});return L4("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:[x&&e&&$0("style",{children:mL}),L4("div",{className:"flex flex-col items-start gap-3",children:[s?.src&&$0("img",{src:A2(s.src),alt:s.alt,className:"h-8 w-auto object-contain"}),M]}),z&&$0("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:Qa(t)}),v&&L4("div",{className:"flex flex-col items-end gap-3 max-[800px]:items-start",children:[c&&$0("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:Ue(c)}),a&&L4(t0,{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:[Ue(a.text),$0("span",{"aria-hidden":!0,children:"\u2192"})]})]})]})}import{jsx as A4,jsxs as es}from"react/jsx-runtime";function mj(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function pL({eyebrow:e,title:t}){return es("div",{className:"flex flex-col gap-4",children:[e&&A4(V1,{text:e,scaled:!1}),t&&A4("h2",{className:"font-display text-[min(clamp(40px,5vw,72px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:$(t,!0)})]})}function Po({body:e,buttonLabel:t,consent:a,form:s,submission:c,showForm:l,resolving:r,editing:o}){return es("div",{className:"flex flex-col gap-7",children:[e&&b0(e).map((i,n)=>A4("p",{className:"max-w-[480px] font-display text-[16px] leading-[1.6] text-fg-dim",children:C(i)},n)),l&&(s?c.done?A4("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:Pe(s)}):es("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",mj(i)?"col-span-2":""].join(" ");return i.type==="checkbox"?es("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:[A4(h7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),className:"mt-0.5 size-4 accent-accent"}),es("span",{children:[i.label,i.required?A4("span",{className:"text-accent",children:" *"}):null]})]},i.key):A4(h7,{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)}),A4(Ee,{value:c.honeypot,onChange:c.setHoneypot}),c.error&&A4("p",{role:"alert",className:"col-span-2 font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:c.error}),t&&A4("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":C(t)})]}):A4("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim",children:r?"Loading form\u2026":"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&&A4("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:C(a)})]})}var Eo=["field","tick","thanks"],Qp={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},Vo={field:"styleField",tick:"styleTick",thanks:"styleThanks"},uL={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 pj(e){return typeof e=="string"&&u5.includes(e)?e:null}var uj={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function dL(e,t){let a={};for(let s of Eo){let c=pj(e[Vo[s]]);if(!c)continue;let l=A9({role:c},uj,t);l.fontFamily&&(a[uL[s].font]=l.fontFamily),l.fontSize&&(a[uL[s].size]=l.fontSize)}return a}import{jsx as No}from"react/jsx-runtime";var gL=["head","form"],vL={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=L5(r,o),m=n7({form:h,formSlug:r,editing:i}),p=dL(n);return e==="head"?No("div",{style:p,children:No(Q1,{look:"statement",num:t,title:a})}):No("div",{style:p,children:No(Po,{body:s??"",buttonLabel:c??"",consent:l??"",form:h,submission:m,showForm:!!h||i,resolving:h===void 0,editing:i})})}var dj={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>oL.map(e=>({region:e,name:iL[e]})),addBlocked:()=>"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:()=>gL.map(e=>({region:e,name:vL[e]})),addBlocked:()=>"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:$S},()=>({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:()=>JS.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};Cx(dj);function je(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as gj}from"react/jsx-runtime";import{OpacityIcon as vj}from"efficient-easel/icons";var fL={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow","Limited release"),title:D("Heading","Banner headline"),body:D("Body","A line or two of supporting copy."),_gBackground:b("Background image"),imageSrc:G1("Image","image/*"),overlay:a1("Overlay",gj(vj,{}),0,100,5,60,"%"),_gButton:b("Button"),...S4,_gLayout:b("Layout")}};import{jsx as xj}from"react/jsx-runtime";import{jsx as ts,jsxs as tu,Fragment as fj}from"react/jsx-runtime";import{Fragment as bj}from"react";function bL({items:e,meta:t,editing:a=!1}){let s=(e??[]).filter(l=>l?.label?.trim()),c=s.length>0?s:a?[{label:"Breadcrumb"}]:[];return c.length===0&&!t?null:tu("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 tu(bj,{children:[r>0&&ts("span",{className:"opacity-40",children:"/"}),l.href&&!o?ts(t0,{href:l.href,className:"hover:text-fg",children:Z0(l.label)}):ts("span",{className:o?"text-fg":void 0,children:Z0(l.label)})]},r)}),t&&tu(fj,{children:[ts("span",{className:"opacity-40",children:"\xB7"}),ts("span",{children:C(t)})]})]})}function K4(e,t,a){return e||(a?.isEditing?t:void 0)}function y1(e,t,a){let s=Array.isArray(e)?e:[];return s.length?s:a?.isEditing?t:[]}function y(e,t,a){let s=H2(e);if(!s.hidden)return K4(s.text,t,a)}function Q0(e,t,a){return H2(e).hidden?"":y(e,t,a)}function O3(e,t,a){return{text:y(e,u2.text,a),href:t||u2.href}}var au={meta:"Trailing note"},zj=[{label:"Home",href:"/"},{label:"Section",href:""}],xL={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>xj(bL,{items:y1(e,zj,a),meta:y(t,au.meta,a),editing:a?.isEditing})};var zL={fields:{_gContent:b("Content"),items:{type:"array",label:"Crumbs",arrayFields:{label:G("Label"),href:J2(G("Link"))},getItemSummary:e=>e?.label||"Crumb"},meta:H("Trailing note",au.meta)}};import{jsx as wj}from"react/jsx-runtime";function yL(e){return typeof e=="boolean"?e:!0}import{ButtonArrowIcon as Cj}from"efficient-easel/icons";var wL={fields:{label:G("Button"),href:H1("Button link"),_gStyle:b("Style"),variant:{type:"radio",options:[{label:"Primary",value:"primary"},{label:"Ghost",value:"ghost"}]},arrow:s1("Arrow",!0,wj(Cj,{})),align:T5()}};import{jsx as ML}from"react/jsx-runtime";import{ColumnsIcon as Hj,StylesIcon as Fj}from"efficient-easel/icons";import{jsx as Lj}from"react/jsx-runtime";import{jsx as Ke,Fragment as kj,jsxs as su}from"react/jsx-runtime";var Mj="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))]",Sj="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 CL({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:Ke("section",{className:"relative z-[2] bg-surface",children:su("div",{className:l?Sj:Mj,children:[l?null:su(kj,{children:[(t??"").trim()&&Ke(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&Ke("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:$(a??"",!1)})]}),i.length>0&&Ke("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)=>su("div",{className:"bg-bg p-8 max-[800px]:p-7",children:[Ke("div",{className:"mb-3 font-heading3 text-[length:var(--size-headingSmall,20px)] font-medium uppercase tracking-[0.02em] text-fg",children:C((h.title??"").trim()||"Card title")}),Ke("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:C((h.body??"").trim()||"A short line about this card.")})]},m))})]})})}var as={eyebrow:"Label",title:"Section *heading.*"},Aj=[{title:"Card title one",body:"A short line about this card."},{title:"Card title two",body:"A short line about this card."},{title:"Card title three",body:"A short line about this card."}],kL={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return Lj(CL,{look:s4(e.eyebrowLook,"Cards"),eyebrow:a(y(e.eyebrow,as.eyebrow,e.puck)),title:a(y(e.title,as.title,e.puck)),omitHead:t,items:y1(e.items,Aj,e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var SL={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",as.eyebrow),eyebrowLook:g1("Eyebrow style",ML(Fj,{}),[...y4],J6("Cards")),title:D("Heading",as.title),items:{type:"array",label:"Cards",arrayFields:{title:v1("Card title"),body:E1("Card body")},defaultItemProps:{title:"",body:""},getItemSummary:e=>e?.title||e?.body||"Card"},_gStyle:b("Style"),columns:a1("Columns",ML(Hj,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.Cards.headRows)};import{jsx as Tj}from"react/jsx-runtime";import{StickyIcon as Pj}from"efficient-easel/icons";var LL={fields:{tabs:{type:"array",label:"Tabs",arrayFields:{label:G("Label"),count:G("Count")},getItemSummary:e=>e?.label?`${e.label}${e.count?` \xB7 ${e.count}`:""}`:"Tab"},activeTab:J2(G("Active tab","All")),_gLinks:b("Links"),links:{type:"array",label:"Right links",arrayFields:{label:G("Label"),href:J2(G("Link"))},getItemSummary:e=>e?.label||"Link"},_gStyle:b("Style"),sticky:s1("Stick under header",!0,Tj(Pj,{}))}};import{jsx as Rj}from"react/jsx-runtime";import{StylesIcon as Bj}from"efficient-easel/icons";import{jsx as _j}from"react/jsx-runtime";import{jsx as l2,jsxs as $4}from"react/jsx-runtime";function cu(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var AL=[100,70,46,30,19,12];function HL(e){return`color-mix(in srgb, var(--accent) ${AL[e%AL.length]}%, var(--bg))`}function Ej({data:e,suffix:t}){let a=Math.max(...e.map(s=>s.value),0)||1;return l2("div",{className:"flex w-full flex-col gap-6",children:e.map((s,c)=>$4("div",{children:[$4("div",{className:"mb-2 flex items-baseline justify-between gap-4",children:[l2("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg/60",children:C(s.label)}),$4("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium text-fg",children:[cu(s.value),t]})]}),l2("div",{className:"h-[10px] border border-line bg-bg",children:l2("div",{className:"h-full bg-accent",style:{width:`${Math.max(s.value/a*100,s.value===0?0:2)}%`}})})]},c))})}function Vj({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 $4("svg",{viewBox:"0 0 640 300",className:"w-full",role:"img","aria-hidden":!0,children:[[.25,.5,.75,1].map(h=>l2("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)),l2("line",{x1:a.l,x2:640-a.r,y1:a.t+c,y2:a.t+c,stroke:"var(--site-line)",strokeWidth:"1.5"}),l2("path",{d:n,fill:"var(--accent)",opacity:"0.13"}),l2("path",{d:i,fill:"none",stroke:"var(--accent)",strokeWidth:"2.5"}),o.map((h,m)=>$4("g",{children:[l2("circle",{cx:h.x,cy:h.y,r:"4",fill:"var(--accent)"}),$4("text",{x:h.x,y:h.y-12,textAnchor:"middle",className:"font-display",fontSize:"14",fill:"var(--fg)",children:[cu(e[m].value),t]}),l2("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 Nj({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:HL(i)};return l+=n*c,h});return $4("div",{className:"flex w-full flex-wrap items-center justify-center gap-10",children:[l2("svg",{viewBox:"0 0 200 200",className:"w-[220px] max-w-full -rotate-90",role:"img","aria-hidden":!0,children:r.map((o,i)=>l2("circle",{cx:"100",cy:"100",r:s,fill:"none",stroke:o.ink,strokeWidth:"34",strokeDasharray:`${o.dash} ${c-o.dash}`,strokeDashoffset:-o.off},i))}),l2("ul",{className:"flex min-w-[200px] flex-1 flex-col gap-3",children:e.map((o,i)=>$4("li",{className:"flex items-baseline gap-3",children:[l2("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] flex-shrink-0 rotate-45",style:{background:HL(i)}}),l2("span",{className:"flex-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.12em] text-fg/60",children:C(o.label)}),l2("span",{className:"font-display text-[length:var(--size-body,15px)] font-medium text-fg",children:t?`${cu(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function FL({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(u=>({label:(u.label??"").trim(),value:parseFloat(u.value??"")})).filter(u=>o?!0:u.label&&Number.isFinite(u.value)).map(u=>({label:u.label||"\u2014",value:Number.isFinite(u.value)?u.value:0})),h=!!(e??"").trim()||!!(t??"").trim();if(!o&&!h&&n.length===0)return null;let m=s??"bars",p=n.length===0?null:m==="line"&&n.length>1?l2(Vj,{data:n,suffix:i}):m==="donut"?l2(Nj,{data:n,suffix:i}):l2(Ej,{data:n,suffix:i});return l2("section",{className:"relative z-[2] border-y border-line bg-surface",children:$4("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:[$4("div",{children:[(e??"").trim()&&l2("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:C(e??"")}),(t??"").trim()&&l2("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:$(t??"",!1)}),(a??"").trim()&&l2("p",{className:"mt-5 max-w-[46ch] text-[length:var(--size-body,15px)] leading-relaxed text-fg/65",children:a})]}),$4("div",{children:[p,(r??"").trim()&&l2("p",{className:"mt-4 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg/40",children:r})]})]})})}var ss={eyebrow:"By the numbers",title:`A picture worth
22
+ `}),i0("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:[i0("div",{className:"flex items-center justify-between",children:[i0("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:v,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"})]}),i0("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:qz(e,c.length)})]}),i0("div",{className:`grid flex-shrink-0 ${RW[f-1]} gap-px border-b border-line bg-line`,children:[N1(Lp,{label:"Items",value:i0(ro,{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(Lp,{label:"Lead time",value:e.leadTimeValue}):null,d?N1(Lp,{label:"Ships to",value:d}):null]}),i0("div",{className:"flex-1 overflow-y-auto [scrollbar-color:var(--site-line)_transparent] [scrollbar-width:thin]",children:[c.length===0?N1(GW,{content:e}):c.map(x=>N1(BW,{line:x,tyre:z.get(x.slug),onRemove:()=>l(x.id),onQtyChange:k=>r(x.id,k)},x.id)),p.length>0&&i0("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:[i0("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:p.map(x=>N1(ZW,{href:`/bundles/${x.slug}`,title:x.name,sub:DW(x,o.currency,u)},x.slug))})]}),N1("section",{className:"border-b border-line px-8 py-[22px] max-[640px]:px-[22px]",children:N1(Yw,{})}),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(x=>N1(OW,{children:x},x))})]}),i0("div",{className:"flex flex-shrink-0 flex-col gap-2 border-t border-line px-8 pt-5 max-[640px]:px-[22px]",children:[N1(p7,{label:`Subtotal \xB7 ${o.sets} set${o.sets===1?"":"s"}`,value:u(o.subtotal,o.currency)}),o.appliedBundles.map(x=>N1(p7,{label:`Bundle \xB7 ${x.name}${x.multiples>1?` \xD7${x.multiples}`:""}`,value:i0("span",{style:{color:"var(--green)"},children:["\u2212 ",u(x.discount,o.currency)]})},x.slug)),o.discount>0&&i?.valid&&N1(p7,{label:`Coupon \xB7 ${i.code}`,value:i0("span",{style:{color:"var(--green)"},children:["\u2212 ",u(o.discount,o.currency)]})}),i?.deferred&&N1(p7,{label:`Coupon \xB7 ${i.code}`,value:Vw}),i?.valid&&i.effects?.gift&&N1(p7,{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(p7,{label:"Shipping",value:o.freeShipping||o.shipping===0?N1("span",{style:{color:"var(--green)"},children:"Free"}):u(o.shipping,o.currency)}),o.tax&&(o.tax.charged?N1(p7,{label:o.tax.inclusive?`${o.tax.name} included \xB7 ${o.tax.rate}%`:o.tax.name,value:u(o.tax.amount,o.currency)}):o.tax.name?N1(p7,{label:o.tax.name,value:"Calculated at checkout"}):null),i0("div",{className:"mt-1.5 flex items-center justify-between border-t border-line pt-3.5 text-fg",children:[i0("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":u(o.grand,o.currency)})]})]}),i0("div",{className:"flex flex-shrink-0 flex-col gap-2.5 px-8 pb-[22px] pt-3.5 max-[640px]:px-[22px]",children:[i0(S1,{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"})]}),i0("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(S1,{href:"/wheels",onClick:s,className:"text-fg transition-colors hover:text-accent",children:"\u2190 Keep browsing"}),N1("button",{type:"button",className:"text-fg transition-colors hover:text-accent",children:"Save for later"})]})]})]})]}):null}var RW=["grid-cols-1","grid-cols-2","grid-cols-3"];function Lp({label:e,value:t}){return i0("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 BW({line:e,tyre:t,onRemove:a,onQtyChange:s}){let{catalog:c,totals:l}=c4(),r=(e.components??[]).reduce((n,h)=>n+(l.freeUnitsByPartNumber[h.partNumber]??0),0),{currency:o,formatMoney:i}=p0();return i0(ro,{children:[i0("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(Mp,{line:e,catalog:c,tyre:t}),i0("div",{className:"flex min-w-0 flex-col gap-2",children:[i0("div",{className:"flex items-start justify-between gap-3",children:[i0("span",{className:"font-mono text-[9px] uppercase tracking-[0.26em] text-accent",children:["N\xB0 ",e.positionNo," \xB7 ",e.process==="FusionForge\xAE"?i0(ro,{children:["FusionForge",N1(c6,{})]}):e.process]}),N1("span",{className:"whitespace-nowrap font-display text-[16px] font-medium tracking-[-0.015em] text-fg",children:dm(e,o)===null?a7:i(dm(e,o),o)})]}),i0("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&&i0("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&&i0("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"]})]}),i0("div",{className:"mt-2.5 flex items-center justify-between gap-3",children:[N1(Da,{value:e.qty,onChange:s,size:"small"}),i0("div",{className:"flex gap-3.5 font-mono text-[10px] uppercase tracking-[0.22em]",children:[N1(S1,{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&&i0("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"}),i0("span",{children:["Verified for your ",N1("strong",{className:"font-medium text-accent",children:e.verifiedFor}),". Final torque values shipped with the wheels."]})]})]})}function ZW({title:e,sub:t,href:a}){return i0(S1,{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:[i0("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 DW(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 OW({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 p7({label:e,value:t}){return i0("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 GW({content:e}){return i0("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}),i0(S1,{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 qW=[{key:"cart",label:"Cart",href:"/?cart=open"},{key:"checkout",label:"Checkout",href:"/checkout"}],WW=Object.fromEntries(qW.map(e=>[e.key,e]));function lS(e){return WW[e]}import{Fragment as jW,jsx as Ie,jsxs as Ga}from"react/jsx-runtime";var UW=xp(()=>import("./EditorPreviewCheckout-54OF6GQB.js"),{ssr:!1});function Ap(){let{chromePlaceholder:e,themeFromDocument:t}=V3(),{surface:a}=Vy();return e||t||!a||a!=="cart"&&a!=="checkout"?null:a==="checkout"?Ga(jW,{children:[Ie(UW,{}),Ie(rS,{surface:a})]}):Ie(hr,{children:Ga(mr,{preview:!0,children:[Ie(Oa,{}),Ie(rS,{surface:a})]})})}function rS({surface:e}){let{label:t,href:a}=lS(e);return Ga("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:[Ga("span",{style:{whiteSpace:"nowrap"},children:[t," \xB7 preview only"]}),Ga("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:["Open live",Ie(a6,{name:"external-link",size:13,rounded:!0})]})]})}import{CategoryIcon as Ua1,CheckIcon as hO,ClockIcon as Eb,ColumnsIcon as ja1,DirectionIcon as Ka1,EyeIcon as $a1,ListIcon as Ya1,PageIcon as Xa1,PlacementIcon as Ja1,ScrollPointIcon as Qa1,TriggerIcon as es1}from"efficient-easel/icons";import{useContext as XW,useEffect as pS,useRef as io,useState as no}from"react";import{Button as ho}from"efficient-shell/ui";var qa=class extends Error{constructor(a){super("The storefront forms list could not be loaded.");this.cause=a;this.name="FormsUnavailableError"}},oo=null,Hp=null,Fp=null;function KW(){oo=null,Hp=null,Fp=null}function oS(e=!1){let t=N3(),a=i2();return(e||!oo||Hp===null&&t!==null||Fp!==a)&&(Hp=t,Fp=a,oo=(t?X1.listForms(t,{siteId:a}):Promise.reject(new qa)).catch(s=>{throw KW(),s instanceof qa?s:new qa(s)})),oo}var Tp=new Map,$W=9e5,iS=0;function YW(){return iS+=1,`fe-${typeof crypto<"u"&&"randomUUID"in crypto?crypto.randomUUID():String(iS)}`}function nS(e,t){e.connected&&e.send("storefront-editor:open-form",{mode:"edit",formId:t})}function hS(e,t){if(!e.connected)return Promise.resolve({status:"closed"});let a=YW();return new Promise(s=>{let c=setTimeout(()=>mS(a,{status:"timeout"}),t.timeoutMs??$W);Tp.set(a,l=>{clearTimeout(c),s(l)}),e.send("storefront-editor:open-form",{requestId:a,mode:t.mode,...t.formId?{formId:t.formId}:{}})})}function mS(e,t){let a=Tp.get(e);a&&(Tp.delete(e),a(t))}function nn1(e,t){mS(e,t?{status:"saved",form:t}:{status:"closed"})}import{jsx as P2,jsxs as U4}from"react/jsx-runtime";var uS="__create-a-new-form__";function JW({value:e,forms:t,loadFailed:a,emptyLabel:s="No form yet"}){let c=t??[],l=e?c.some(m=>m.slug===e):!0,r=t===null&&!a,o={value:"",label:r?"Loading\u2026":a?"Forms couldn\u2019t be loaded":s},i=e&&!l?[{value:e,label:r||a?e:`${e} \u2014 no form with this name`}]:[],n=c.map(m=>({value:m.slug,label:m.is_active?m.title:`${m.title} (switched off)`})),h=r?[]:[{value:uS,label:"Create a new form\u2026"}];return[o,...i,...n,...h]}function QW(e){return e===uS?{action:"create"}:{action:"store",slug:e}}function eU({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 tU(e){let t=["Goes to Storefront \u2192 Forms"],a=(e.notify_email??"").trim();return a&&t.push(`Emails a copy to ${a}`),e.mailing_list_name&&t.push(e.subscribe_mode==="checkbox"?`Joins the \u201C${e.mailing_list_name}\u201D audience, but only when the consent box is ticked`:`Joins the \u201C${e.mailing_list_name}\u201D audience`),e.kind==="account_signup"&&t.push(e.signup_customer_type==="importer"?"Creates a wholesale account":"Creates a retail account"),t}function Pp({value:e,onChange:t,label:a="Form",emptyLabel:s}){let c=z4(),l=XW(yl),r=l?l.capabilities.hasForms:!0,[o,i]=no(null),[n,h]=no(!1),[m,p]=no(!1),[u,g]=no(!1),d=io(!0),f=io(e);f.current=e;let v=io(t);v.current=t;let z=io(null),x=(F=!1)=>oS(F).then(T=>{if(d.current){i(T),h(!1);let N=eU({value:f.current,pickedId:z.current,forms:T});N&&v.current(N)}return T},()=>(d.current&&h(!0),[]));pS(()=>(d.current=!0,r&&x(),()=>{d.current=!1}),[r]),pS(()=>r?Ur(()=>{x(!0)}):void 0,[r]);let M=e?(o??[]).find(F=>F.slug===e)??null:null;M?z.current=M.id:e||(z.current=null);let A=!!e&&!M&&o!==null&&!n,R=JW({value:e,forms:o,loadFailed:n,emptyLabel:s}),E=async()=>{p(!0),g(!1);try{let F=await hS(c,{mode:"create"}),T=await x(!0);if(!d.current)return;if(F.status==="timeout"){g(!0);return}if(F.status!=="saved")return;let{form:N}=F;N.slug!==f.current&&v.current(N.slug),T.some(B=>B.id===N.id)||x(!0)}finally{d.current&&p(!1)}},Z=F=>{let T=QW(F);T.action==="create"?E():(g(!1),t(T.slug))};return r?U4("div",{className:"sf-formpicker",children:[P2(N9,{label:a,options:R,fallback:"",value:e??"",onChange:Z,placeholder:"Search forms\u2026"}),u&&P2("p",{className:"sf-formsummary-warn",children:"That didn\u2019t come back \u2014 pick the form from the list, or try again."}),M?U4("div",{className:"sf-blogsource sf-formsummary",children:[U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:M.fields.length===1?"1 field":`${M.fields.length} fields`}),M.fields.length?P2("ol",{className:"sf-formsummary-fields",children:M.fields.map((F,T)=>P2("li",{children:F.label},F.key||`${F.label}-${T}`))}):P2("p",{className:"es-field-hint sf-hint-keep",children:"This form has no fields yet, so there is nothing for a visitor to fill in."})]}),U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:"Where the answers go"}),P2("ul",{className:"sf-formsummary-fields",children:tU(M).map(F=>P2("li",{children:F},F))})]}),!M.is_active&&P2("p",{className:"sf-formsummary-warn",children:"This form is switched off, so it won\u2019t appear on the published page. Turn it back on in Storefront \u2192 Forms."}),U4("div",{className:"sf-formsummary-actions",children:[P2(ho,{variant:"secondary",size:"sm",onClick:()=>nS(c,M.id),children:"Edit form \u270E"}),P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{E()},children:"New form +"})]}),P2("p",{className:"es-field-hint sf-hint-keep",children:"The questions, the button text and the thank-you message all come from Storefront \u2192 Forms. Edit them there \u2014 this section updates to match."})]}):U4("div",{className:"sf-blogsource sf-formsummary",children:[n?U4("p",{className:"es-field-hint sf-hint-keep",children:["This website\u2019s forms couldn\u2019t be loaded, so there is nothing to choose from yet.",e?` This section still points at \u201C${e}\u201D, and that is unchanged.`:""]}):A&&U4("p",{className:"sf-formsummary-warn",children:["This section points at \u201C",e,"\u201D, and this website has no form with that name. Pick one from the list above, or leave it \u2014 nothing has been changed."]}),U4("div",{className:"sf-formsummary-actions",children:[n&&P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{x(!0)},children:"Try again"}),P2(ho,{variant:"secondary",size:"sm",disabled:m,onClick:()=>{E()},children:"New form +"})]}),!n&&P2("p",{className:"es-field-hint sf-hint-keep",children:"Pick a form to show here, or build a new one. Forms are made once in Storefront \u2192 Forms and can be shown on any number of pages."})]})]}):P2("div",{className:"sf-formpicker",children:P2("div",{className:"sf-blogsource sf-formsummary",children:U4("div",{children:[P2("div",{className:"sf-formsummary-caption",children:a}),U4("p",{className:"es-field-hint sf-hint-keep",children:["Forms aren\u2019t available in this editor, so there is nothing to choose here.",e?` This section still points at \u201C${e}\u201D, and that is unchanged.`:""]})]})})})}import{jsx as aU}from"react/jsx-runtime";function F5(e,t){return{type:"custom",render:({value:a,onChange:s})=>aU(Pp,{value:a,onChange:s,...e?{label:e}:{},...t?{emptyLabel:t}:{}})}}var mo=null,dS=null;function sU(e,t){mo=e,dS=t}function Mn1(e){sU(e,null)}function gS(){return mo}function D2(){return dS==="dynamic"||mo===Im}function vS(e){return Sr(mo??"",e)??"alloy-wheel"}import{createContext as cU,useContext as lU}from"react";import{jsx as rU}from"react/jsx-runtime";var fS=cU(null);function bS({slug:e,children:t}){let a=typeof e=="string"&&e.trim()?e:null;return rU(fS.Provider,{value:a,children:t})}function xS(){return lU(fS)}import{createContext as oU,useContext as iU}from"react";import{jsx as nU}from"react/jsx-runtime";var zS=oU("alloy-wheel");function yS({kind:e,children:t}){return nU(zS.Provider,{value:e??"alloy-wheel",children:t})}function wS(){return iU(zS)}import{createContext as CS,useContext as po}from"react";import{jsx as uU}from"react/jsx-runtime";function hU(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 mU=/^\d{4}-\d{2}-\d{2}$/;function kS(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"?mU.test(a)?"date":"text":null;return s?[{key:t,label:hU(t),kind:s}]:[]}):[]}function uo(e,{firstField:t=!1}={}){if(!e)return[];let a=kS(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 pU(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 MS(e){return e?kS(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"?pU(a):a}]}):[]}var u7="product",Ep=CS(null);function Vp(e){let t=e?.recordType;return typeof t=="string"&&t.trim()||u7}function go(e){let t=e?.appState?.data?.root;return Vp(t?.props)!==u7}var SS=CS(u7);function LS({type:e,children:t}){return uU(SS.Provider,{value:e,children:t})}function vo(e){let t=po(Ep),a=po(SS);return t?t.type!==u7:e&&a!==u7}var fo={type:"sample",key:"sample",title:"Record title",fields:{first:"A detail of this record",second:"Another detail",third:"A third"},value:void 0,schema:[{key:"first",label:"First detail",kind:"text"},{key:"second",label:"Second detail",kind:"text"},{key:"third",label:"Third detail",kind:"text"}]},AS=4;function bo(){return po(Ep)}function HS(e){let t=po(Ep);return t!==null&&t.type===e?t:null}import{createContext as gU,useContext as vU}from"react";var Np="heroBullets",Wa="\xB7",Ua={bullets:[{label:"Free shipping",detail:"USA, UK, AUS"},{label:"Lifetime warranty",detail:"structural"}]};function FS(e){return e.detail?`${e.label} ${Wa} ${e.detail}`:e.label}function dU(e){let t=e.trim();if(!t)return null;let a=t.indexOf(Wa);return a<0?{label:t,detail:""}:{label:t.slice(0,a).trim(),detail:t.slice(a+Wa.length).trim()}}function TS(e){let t=(e??{})[Np];return Array.isArray(t)?{bullets:t.map(s=>dU(typeof s=="string"?s:Oz(s?.text,""))).filter(s=>s!==null)}:Ua}import{jsx as fU}from"react/jsx-runtime";var PS=gU(Ua);function ES({content:e,children:t}){return fU(PS.Provider,{value:e,children:t})}function VS(){return vU(PS)}var u2={text:"Button label",href:"#"},L={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 t3={Series:"transparent",StatsParagraph:"transparent",TimelineTrack:cy,Stats:void 0};import{jsx as g7}from"react/jsx-runtime";import{jsx as xU}from"react/jsx-runtime";var xo="sf-card",E2={min:0,max:90,step:5,fallback:0,unit:"%"},d7=[{label:"Even",value:"even"},{label:"From the bottom",value:"bottom"}],bU="68%",D3={desktop:20,phone:20,side:40,sidePhone:24},NS="sf-box-sides",_S={min:0,max:200,step:10};function Re(e){return typeof e=="string"&&e.trim()!==""}function zo(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) ${bU})`}}function yo(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 wo={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}},IS=new Set(Object.keys(wo)),zU=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),RS=new Set(["ProductGrid"]);function _p(e,t){let a=e.render;e.render=s=>{if(t?.(s))return a(s);let c=T9(s.sectionPaddingTop,s.sectionPaddingBottom,s.sectionPaddingTopPhone,s.sectionPaddingBottomPhone),l=a(s);return c?xU("div",{className:c.className,style:c.style,children:l}):l}}var BS={name:"sectionPadding",applies:(e,t,a)=>t.isSection(e)&&!zU.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){IS.has(t)||RS.has(t)||(e.fields={...e.fields,...a.spacingFields({phone:!0})})},draw(e,t){if(IS.has(t)){let a=e.render,s=wo[t];e.render=c=>{let l=Fz(c,s);return a({...c,padTop:l.top,padBottom:l.bottom})};return}if(RS.has(t)){_p(e);return}_p(e,t==="Flex"?a=>Re(a.bgImage):void 0)}},yU=["Heading","Text"],ZS={name:"blockPadding",applies:(e,t,a)=>yU.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.spacingFields({phone:!0})}},draw(e){_p(e)}};import{jsx as Be,jsxs as wU}from"react/jsx-runtime";import{useEasel as CU}from"efficient-easel/easel";import{SettingsDrill as kU}from"efficient-easel/panel";import{default as DS}from"efficient-easel/screen/components/AddBlockRow";import{default as OS}from"efficient-easel/screen/components/AddChildRow";import{SlotChildActionsProvider as th1,useSlotChildActions as GS}from"efficient-easel/screen/components/SlotChildActionsContext";function MU({parent:e,parentType:t,label:a,rowName:s,onSelectChild:c,onAddChild:l,nestDepth:r=0}){let o=mm(t,r);if(!o)return null;let{slot:i,choices:n,spec:h}=o,m=String(e.props.id),p=`${m}:${i}`,u=Array.isArray(e.props[i])?e.props[i]:[],g=h?.addBlocked?.(u)??null,d=h?.notice?.(u)??null;return wU("div",{className:"sf-slot-rows",children:[a?Be(G9,{label:`${a} \xB7 ${u.length}`}):null,d?Be("p",{className:"sf-note",children:d}):null,u.map((f,v)=>Be(kU,{name:s(f),onOpen:()=>c(p,v,String(f.props.id),t)},String(f.props.id??`${p}-${v}`))),n?Be(DS,{choices:n,onPick:f=>l(m,i,f,u.length,t)}):h.fixed?null:Be(OS,{label:h.addLabel,blocked:g,onAdd:()=>l(m,i,h.childType,u.length,t)})]})}function SU(e,t){return mm(t)?.source==="footer"?e.blockRowName:e.childRowName}function qS({parentType:e,label:t}){let{appState:a,selectedItem:s}=CU(r=>r),c=GS();if(!c||!s||s.type!==e)return null;let l=e===yx?tl(a?.data,String(s.props.id)):0;return Be(MU,{parent:s,parentType:e,label:t,rowName:SU(c,e),onSelectChild:c.selectChild,onAddChild:c.addChild,nestDepth:l})}var WS="grayscale(1) contrast(1.03)",US="Black and white";function LU(e){return e===!0?{filter:WS}:{}}function AU(e){let{filter:t}=LU(e);return t?{style:{filter:t}}:{}}var ja="sf-photo-grayscale",HU=`@media (hover:hover){.${ja}{filter:${WS};transition:filter 160ms ease}.${ja}:hover{filter:none}}@media (hover:hover) and (prefers-reduced-motion:reduce){.${ja}{transition:none}}`;function Ze(e,t){return typeof e=="boolean"?e?AU(!0):{}:t===!0?{className:ja}:{}}function jS(e){return e===!0?{[ja]:HU}:{}}import{AlignLeftIcon as PU,BlackAndWhiteIcon as EU,ContrastIcon as VU,HeightIcon as NU,TypeIcon as _U}from"efficient-easel/icons";var FU=["eyebrow","heading","title","body","intro","button","link","label","number","value","name","price","date","caption","note","quote","tag","meta"],TU=new Set(FU);function KS(e){let t=e.toLowerCase().split(/[^a-z]+/).filter(Boolean);for(let a=t.length-1;a>=0;a-=1)if(TU.has(t[a]))return t[a];return null}var n6=e=>X2(e,a1("Height",g7(NU,{}),te.min,te.max,te.step,te.fallback,te.unit)),S4={ctaText:H("Button",u2.text),ctaHref:H1("Button link")},T5=()=>b1("Alignment",g7(PU,{}),[{label:"Left",value:"left"},{label:"Center",value:"center"},{label:"Right",value:"right"}],"left"),Co=()=>b1("Tone",g7(VU,{}),[{label:"Default",value:"default"},{label:"Muted",value:"dim"}],"default"),n3=e=>b5({...wo[e],keys:{top:"padTop",bottom:"padBottom"},group:!1}),c2=(e,t)=>({type:"custom",render:()=>g7(qS,{parentType:e,label:t})});function IU(e){let{photographyGrayscale:t}=V3();return s1(US,t===!0,g7(EU,{})).render(e)}function De(){return{type:"custom",render:e=>g7(IU,{...e})}}var U1=Object.keys(x5("full"));function Oe(e){let t=KS(e);return t?g7(e4,{noun:t}):g7(_U,{})}import{createContext as RU,useContext as BU}from"react";import{jsx as v7,jsxs as Ip}from"react/jsx-runtime";function Rp(e){return w9(e)??void 0}var Bp=RU({}),$S=3;function Zp({tag:e,name:t,desc:a,href:s,imageSrc:c,imageLabel:l,price:r}){let{showPrice:o,cardStyle:i,partStyles:n,editing:h}=BU(Bp),m=i==="bordered"?" border border-line":i==="shadow"?" shadow-[0_8px_30px_rgba(0,0,0,0.12)]":"",p=Rp(c),u=d=>h?{[p8]:d}:{},g=d=>Ul(n?.[u8(d)]?.role,Iy[d],ll);return Ip(S1,{href:s||"#",className:`sf-card group relative block w-full min-w-0 overflow-hidden bg-surface-2${m}`,children:[v7("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:v7(C0,{label:l||"collection.jpg",src:p})}),v7("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"}}),Ip("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&&v7("span",{...u("tag"),style:g("tag"),className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.25em] opacity-70",children:C(e)}),t&&v7("h3",{...u("name"),style:g("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"?$(t,!1):t}),a&&b0(a).map((d,f)=>v7("p",{...u("body"),style:g("body"),className:"max-w-[420px] text-[length:var(--size-body,14px)] leading-[1.5] opacity-80",children:C(d)},f)),o&&r&&v7("span",{...u("price"),style:g("price"),className:"font-mono text-[length:var(--size-label,15px)] tracking-[0.05em] text-accent",children:C(r)}),Ip("span",{...u("link"),style:g("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",v7("span",{className:"transition-transform group-hover:translate-x-[3px]","aria-hidden":!0,children:"\u2192"})]})]})]})}import{createContext as DU,useCallback as OU,useContext as GU,useEffect as XS,useRef as qU,useState as Op}from"react";import{useState as ZU}from"react";function ko(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 YS(e){return e==="below"}import{jsx as j4,jsxs as Ge}from"react/jsx-runtime";function Dp({build:e,hiddenMobile:t,alwaysShowOverlay:a,forceHover:s,index:c,total:l,ratio:r,captionPlace:o}){let[i,n]=ZU(!1),h=YS(o),m=Ge("div",{className:["sf-card group relative overflow-hidden bg-surface-2",ko(r),t?"max-[800px]:hidden":""].join(" "),children:[Ge("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:[j4(C0,{label:e.imageLabel,src:e.imageSrc}),j4("div",{className:"absolute inset-0",style:{background:"rgba(0,0,0,0.35)"}})]}),j4("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&&j4(E3,{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&&Ge("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&&j4("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:Y1(e.process)}),Ge("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&&j4("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&&j4("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&&j4("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:j4("span",{children:Y1(e.finish)})})]})]});return h?Ge("div",{className:t?"max-[800px]:hidden":"",children:[m,Ge("div",{className:"bg-surface px-3.5 pt-3 pb-3.5",children:[e.wheel&&j4("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)&&j4("div",{className:"mt-0.5 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg-dim",children:Y1(e.finish||e.car)})]})]}):m}import{Fragment as qe,jsx as J0,jsxs as h3}from"react/jsx-runtime";var Ka=DU({}),$a="data-gallery-grid",Gp="data-gallery-tile";function WU(e,t){let[a,s]=Op(null);return XS(()=>{let c=e.current,l=c?.closest(`[${$a}]`);if(!c||!l)return;let r=()=>{let i=Array.from(l.querySelectorAll(`[${Gp}]`)),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 JS=[{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 UU(e,t){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function jU(e){let t=(e.photos??[]).map(l=>l?.src).filter(l=>!!l),a=e.image||t[0]||"",s=[a,...t].filter(l=>!!l),c=UU(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 Ya({editing:e=!1,previewHover:t,ratio:a,captionPlace:s,...c}){let{galleryHref:l="/gallery",submitHref:r="/contact",previewHover:o}=GU(Ka),i=jU(c),n=i.photos??(i.imageSrc?[i.imageSrc]:[]),h=qU(null),m=OU(x=>{h.current=x},[]),p=WU(h,e),u=e&&(!!t||!!o),[g,d]=Op(!1),[f,v]=Op(0);XS(()=>{if(!g)return;let x=M=>{M.key==="Escape"?d(!1):M.key==="ArrowLeft"&&n.length>1?v(A=>(A-1+n.length)%n.length):M.key==="ArrowRight"&&n.length>1&&v(A=>(A+1)%n.length)};window.addEventListener("keydown",x);let k=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",x),document.body.style.overflow=k}},[g,n.length]);let z=J0(Dp,{build:i,forceHover:u,index:p?.index,total:p?.total,ratio:a,captionPlace:s});return h3(qe,{children:[e?J0("div",{ref:m,[Gp]:"",className:"block w-full text-left",children:z}):J0("button",{ref:m,[Gp]:"",type:"button","aria-label":`Open ${i.car||"build"} on ${i.wheel||"wheel"}`,onClick:()=>{v(0),d(!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:z}),g&&(()=>{let x=n[f]??i.imageSrc??"",k=()=>v(A=>(A-1+n.length)%n.length),M=()=>v(A=>(A+1)%n.length);return J0("div",{role:"dialog","aria-modal":"true","aria-label":`${i.car} on ${i.wheel}`,onClick:()=>d(!1),className:"fixed inset-0 z-[100] 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:h3("div",{onClick:A=>A.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:[J0("button",{type:"button",onClick:()=>d(!1),"aria-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"}),h3("div",{className:"relative flex min-h-[690px] items-center justify-center overflow-hidden bg-surface-2 max-[1100px]:min-h-[450px]",children:[x&&J0("img",{src:x,alt:`${i.car} \u2014 ${f+1} of ${n.length}`,className:"block h-full max-h-[88vh] w-full object-cover"},x),n.length>1&&h3(qe,{children:[J0("button",{type:"button","aria-label":"Previous photo",onClick:k,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"}),J0("button",{type:"button","aria-label":"Next photo",onClick:M,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"}),h3("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:[f+1," / ",n.length]})]})]}),h3("div",{className:"flex flex-col gap-[30px] px-[60px] py-[72px] max-[1100px]:px-9 max-[1100px]:py-[54px]",children:[i.process&&J0("span",{className:"font-mono text-[length:var(--size-label,15px)] uppercase tracking-[0.3em] text-accent",children:C(i.process)}),i.wheel&&J0("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:$(i.wheel,!1)}),i.car&&h3("div",{className:"font-heading3 text-[length:var(--size-headingSmall,27px)] leading-[1.4] text-fg",children:["on ",J0("em",{className:"font-serif font-normal italic text-accent tracking-[-0.01em]",children:C(i.car,!0)})]}),h3("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&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Wheel"}),J0("dd",{className:"text-fg",children:C(i.wheel)})]}),i.process&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Process"}),J0("dd",{className:"text-fg",children:C(i.process)})]}),i.finish&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Finish"}),J0("dd",{className:"text-fg",children:C(i.finish)})]}),i.car&&h3(qe,{children:[J0("dt",{className:"text-fg-dim",children:"Vehicle"}),J0("dd",{className:"text-fg",children:C(i.car)})]})]}),h3("div",{className:"mt-auto flex flex-col gap-3.5 pt-6",children:[h3(S1,{href:i.href||"/wheels",onClick:()=>d(!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:[J0("span",{children:"View product"}),J0("span",{className:"transition-transform group-hover:translate-x-[6px]",children:"\u2192"})]}),h3(S1,{href:l,onClick:()=>d(!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:[J0("span",{children:"See more builds"}),J0("span",{children:"\u2192"})]}),h3(S1,{href:r,onClick:()=>d(!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:[J0("span",{children:"Submit your build"}),J0("span",{children:"\u2192"})]})]})]})]})})})()]})}import{createContext as XU,useContext as JU,useEffect as Mo,useId as QU,useMemo as ej,useState as V2}from"react";var KU=14,$U=3;function qp(e){return`${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`}function YU(e,t){let a=new Date(`${e}T00:00:00`);return a.setDate(a.getDate()+t),qp(a)}async function QS(e,t,a={}){let s=a.days??KU,c=a.read??g8.getAvailability,l=0,r=0;for(let o=0;o<s;o++){if(a.signal?.aborted)return{outcome:"unreadable"};let i=YU(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>=$U)return{outcome:"unreadable"}}}return r===s?{outcome:"noneInWindow",days:s}:{outcome:"unreadable"}}import{jsx as sj}from"react/jsx-runtime";var eL=XU(null);function f7(){let e=JU(eL);if(!e)throw new Error("useBookingForm must be used inside <BookingFormProvider>");return e}var Wp=[{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 tj(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 Up={bookingNumber:"EXAMPLE-0000",service:"Example service",startAt:"2026-01-01T00:00:00.000Z",timezone:"UTC",customerTimezone:"",manageToken:"example"};function aj(e,t){return e&&t?.length===0}function tL({editing:e=!1,previewConfirmation:t=!1,children:a}){let s=QU(),c=ej(()=>qp(new Date),[]),[l,r]=V2(),[o,i]=V2(""),[n,h]=V2(""),[m,p]=V2(c),[u,g]=V2(c),[d,f]=V2(!1),[v,z]=V2(null),[x,k]=V2(),[M,A]=V2(""),[R,E]=V2(""),[Z,F]=V2(""),[T,N]=V2(""),[B,P]=V2(""),[O,c1]=V2(()=>gm()),[V,q]=V2(null),[K,W]=V2(!1),[r1,x1]=V2(!1),[Y,e1]=V2(null),[d1,U]=V2("");Mo(()=>{U(Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC")},[]),Mo(()=>{let s0=!1;return g8.listServices().then(c0=>{s0||(r(c0.results),i(c0.currency),h($1=>$1||c0.results[0]?.id||""))}).catch(()=>{s0||r([])}),()=>{s0=!0}},[]),Mo(()=>{if(d||!n)return;let s0={aborted:!1};return A(""),k(void 0),e1(null),z(null),W(!0),QS(n,c,{signal:s0}).then(c0=>{if(!s0.aborted){if(c0.outcome==="found"){p(c0.date),g(c0.date),k(c0.availability);return}z(c0.outcome==="noneInWindow"?`No times are available in the next ${c0.days} days.`:"We couldn't load available times. Please try again.")}}).finally(()=>{s0.aborted||W(!1)}),()=>{s0.aborted=!0}},[d,n,c]),Mo(()=>{if(!d||!n||!m)return;let s0=!1;return A(""),k(void 0),e1(null),z(null),W(!0),g8.getAvailability(n,m).then(c0=>{s0||(k(c0),c0.slots.length===0&&z("No times are available on this date."))}).catch(()=>{s0||z("We couldn't load available times. Please try again.")}).finally(()=>{s0||W(!1)}),()=>{s0=!0}},[m,d,n]);let p1=l?.find(s0=>s0.id===n),f1=p1?.depositAmountDue!=null,F0=!!(!e&&!r1&&p1&&M&&R.trim()&&Z.trim()&&!f1);async function T0(s0){if(s0.preventDefault(),!(!F0||!p1)){x1(!0),e1(null);try{let c0=await g8.create({serviceId:p1.id,start:M,customer:{name:R.trim(),email:Z.trim(),phone:T.trim()},notes:B.trim(),idempotencyKey:O,customerTimezone:d1});q(c0),c1(gm())}catch(c0){e1(c0 instanceof G4&&c0.status===409?"That time was just booked. Choose another available time.":"Your appointment wasn't submitted. Please check your details and try again."),c0 instanceof G4&&c0.status===409&&(A(""),g8.getAvailability(p1.id,m).then(k).catch(()=>{}))}finally{x1(!1)}}}let A1=aj(e,l);return sj(eL.Provider,{value:{fieldPrefix:s,editing:e,services:A1?Wp:l,currency:A1?"AUD":o,serviceId:A1?Wp[0].id:n,setServiceId:h,service:A1?Wp[0]:p1,requiresPayment:A1?!1:f1,date:m,earliestDate:u,setDate:p,setDateTouched:f,availability:A1?tj(m):x,loadingSlots:A1?!1:K,noSlotsMessage:v,selectedStart:A1?`${m}T09:00:00.000Z`:M,setSelectedStart:A,customerTimezone:d1,name:R,setName:E,email:Z,setEmail:F,phone:T,setPhone:N,notes:B,setNotes:P,confirmation:V??(t?Up:null),submitting:r1,error:Y,canSubmit:A1?!1:F0,handleSubmit:T0,sample:!!A1},children:a})}import{jsx as jp,Fragment as cj,jsxs as lj}from"react/jsx-runtime";var rj="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",aL={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 a3(e){let{variant:t="primary",arrow:a,className:s,style:c,children:l,href:r,newTab:o,...i}=e,n=`${rj} ${aL[t]??aL.primary} ${s??""}`,h=lj(cj,{children:[l,a!==null&&jp("span",{"aria-hidden":!0,className:"transition-transform group-hover:translate-x-[3px]",children:a??"\u2192"})]});return r?jp(t0,{href:r,className:n,style:c,...o?{target:"_blank",rel:"noopener noreferrer"}:{},children:h}):jp("button",{type:"button",className:n,style:c,...i,children:h})}import{jsx as L0,jsxs as M3}from"react/jsx-runtime";var Xa="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 oj(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 sL(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 cL(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 Ja="font-[family-name:var(--bk-name-font,var(--font-mono))] text-[length:var(--bk-name-size,12px)]";function Kp({number:e,children:t}){return M3("div",{className:"mb-4 flex items-center gap-3",children:[L0("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}),L0("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 So({eyebrow:e,heading:t,intro:a}){return M3("div",{className:"mb-10 max-w-[760px]",children:[(e??"").trim()&&L0("p",{className:"mb-4 font-mono text-[12px] font-semibold uppercase tracking-[0.24em] text-accent",children:e}),(t??"").trim()&&L0("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()&&L0("p",{className:"mt-5 max-w-[660px] font-display text-[17px] leading-[1.65] text-fg-dim",children:a})]})}function Lo({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:p,noSlotsMessage:u,selectedStart:g,setSelectedStart:d,customerTimezone:f}=f7();return a?M3("div",{className:"flex flex-col gap-9",style:e,children:[M3("div",{children:[L0(Kp,{number:"01",children:"Choose a service"}),L0("div",{className:"grid gap-3 sm:grid-cols-2",children:a.map(v=>{let z=v.id===c;return M3("button",{type:"button","aria-pressed":z,onClick:()=>l(v.id),className:`min-h-11 border p-4 text-left transition-colors ${z?"border-accent bg-accent/10":"border-line bg-bg hover:border-fg-dim"}`,children:[L0("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:v.name}),M3("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:[v.durationMinutes," min \xB7 ",oj(v.price,s)]}),v.description&&L0("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:v.description})]},v.id)})}),r&&L0("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."})]}),M3("div",{children:[L0(Kp,{number:"02",children:"Choose a date and time"}),L0(Z2,{separate:!0,htmlFor:`${t}-date`,label:"Date",required:!0,labelFace:Ja,children:L0("input",{id:`${t}-date`,type:"date",min:i,value:o,onChange:v=>{h(!0),n(v.target.value)},className:Xa,required:!0})}),L0("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:p?L0("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(v=>M3("button",{type:"button","aria-pressed":g===v.start,onClick:()=>d(v.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 ${g===v.start?"border-accent bg-accent text-bg":"border-line bg-bg text-fg hover:border-accent"}`,children:[L0("span",{className:"block",children:sL(v.start,f||m.timezone)}),f&&f!==m.timezone&&M3("span",{className:"mt-0.5 block text-[9px] font-normal tracking-[0.08em] opacity-70",children:[sL(v.start,m.timezone)," business"]})]},v.start)):u?L0("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:u}):null}),m?.timezone&&M3("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 ",f||m.timezone,f&&f!==m.timezone?` \xB7 business timezone ${m.timezone}`:""]})]})]}):null}function Ao({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:p,error:u,canSubmit:g}=f7();return M3("div",{className:"sf-card border border-line bg-bg p-5 min-[640px]:p-7",style:t,children:[L0(Kp,{number:"03",children:"Your details"}),M3("div",{className:"flex flex-col gap-4",children:[L0(Z2,{separate:!0,htmlFor:`${a}-name`,label:"Name",required:!0,labelFace:Ja,children:L0("input",{id:`${a}-name`,type:"text",autoComplete:"name",value:c,onChange:d=>l(d.target.value),className:Xa,required:!0})}),L0(Z2,{separate:!0,htmlFor:`${a}-email`,label:"Email",required:!0,labelFace:Ja,children:L0("input",{id:`${a}-email`,type:"email",inputMode:"email",autoComplete:"email",value:r,onChange:d=>o(d.target.value),className:Xa,required:!0})}),L0(Z2,{separate:!0,htmlFor:`${a}-phone`,label:"Phone",labelFace:Ja,children:L0("input",{id:`${a}-phone`,type:"tel",inputMode:"tel",autoComplete:"tel",value:i,onChange:d=>n(d.target.value),className:Xa})}),L0(Z2,{separate:!0,htmlFor:`${a}-notes`,label:"What would you like to cover?",labelFace:Ja,children:L0("textarea",{id:`${a}-notes`,rows:4,value:h,onChange:d=>m(d.target.value),className:`${Xa} resize-y`})})]}),u&&L0("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:u}),L0(a3,{type:s?"button":"submit",disabled:!g,arrow:null,className:"mt-6 w-full disabled:cursor-not-allowed disabled:opacity-50",children:p?"Submitting\u2026":(e??"").trim()||"Book appointment"})]})}function Ho({successMessage:e}){let{confirmation:t,customerTimezone:a}=f7();return t?M3("div",{className:"sf-card max-w-[760px] border border-line bg-bg p-6 min-[640px]:p-9",role:"status",children:[M3("p",{className:"font-mono text-[12px] font-semibold uppercase tracking-[0.22em] text-accent",children:["Request received \xB7 ",t.bookingNumber]}),L0("h3",{className:"mt-4 font-display text-[28px] font-medium uppercase text-fg",children:t.service}),L0("p",{className:"mt-2 font-display text-[17px] text-fg-dim",children:cL(t.startAt,t.customerTimezone||a||t.timezone)}),t.customerTimezone&&t.timezone!==t.customerTimezone&&M3("p",{className:"mt-1 font-mono text-[10px] uppercase tracking-[0.16em] text-fg-dim",children:["Business time: ",cL(t.startAt,t.timezone)]}),(e??"").trim()&&L0("p",{className:"mt-5 max-w-[620px] font-serif text-[18px] italic leading-[1.6] text-fg-dim",children:e}),L0(a3,{href:`/book/${encodeURIComponent(t.manageToken)}`,newTab:t!==Up,variant:"ghost",className:"mt-7",children:"Manage booking"})]}):null}var Fo=["step","name","value","note"],$p={step:"Step",name:"Name",value:"Value",note:"Note"},To={step:"styleStep",name:"styleName",value:"styleValue",note:"styleNote"},lL={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 ij(e){return typeof e=="string"&&u5.includes(e)?e:null}var nj={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function rL(e,t){let a={};for(let s of Fo){let c=ij(e[To[s]]);if(!c)continue;let l=A9({role:c},nj,t);l.fontFamily&&(a[lL[s].font]=l.fontFamily),l.fontSize&&(a[lL[s].size]=l.fontSize)}return a}import{jsx as We}from"react/jsx-runtime";var oL=["head","booking","details","confirm"],iL={head:"Head",booking:"Booking",details:"Your details",confirm:"Confirmation"};function Yp({region:e,eyebrow:t,heading:a,intro:s,buttonLabel:c,successMessage:l,...r}){let{confirmation:o,services:i}=f7(),n=rL(r);return e==="head"?We("div",{className:"min-[960px]:col-span-2",style:n,children:We(So,{eyebrow:t,heading:a,intro:s})}):e==="confirm"?o?We("div",{className:"min-[960px]:col-span-2",style:n,children:We(Ho,{successMessage:l})}):null:o||!i||i.length===0?null:e==="booking"?We(Lo,{style:n}):e==="details"?We(Ao,{buttonLabel:c,style:n}):null}import{jsx as $0,Fragment as hj,jsxs as L4}from"react/jsx-runtime";var M8="solid",Xp=[{label:"Solid",value:"solid"},{label:"Outlined",value:"outlined"}];function nL(e){return I2(Xp,M8,e)}var Jp="sf-secnum-outline",hL="font-display text-[length:var(--size-headingMedium,clamp(48px,6vw,96px))] font-medium leading-[0.8] tracking-[-0.02em]",mL=`@supports (-webkit-text-stroke: 1px currentColor){.${Jp}{color:var(--site-surface-2);-webkit-text-stroke:1px var(--site-line)}}`;var Qa=(e,t=!1)=>typeof e=="string"?$(e,t):e,Ue=(e,t=!1)=>typeof e=="string"?C(e,t):e;function Q1({num:e,title:t,link:a,logo:s,description:c,accent:l,accentNum:r,numStyle:o=M8,look:i="standard",titleAccent:n,accentTracking:h="-0.02em",spaceBelow:m,rowGap:p,descriptionSize:u,className:g="",eyebrowLook:d=tr}){let f=m??(i==="editorial"?"mb-[60px]":"");if(i==="editorial"){let A=!!t||!!n;return L4("header",{className:`${f} 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 ${g}`.trim(),children:[e&&(typeof e=="string"?$0(V1,{text:e,className:"pb-2"}):$0("span",{className:"pb-2",children:e})),A&&L4("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&&L4(hj,{children:[" ",$0("em",{className:"font-serif font-normal italic text-accent",style:{letterSpacing:h},children:n})]})]}),c&&$0("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 A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t)})]})}if(i==="statement"){let A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t,!0)})]})}if(i==="natural"){let A=`flex max-w-[680px] flex-col ${p??"gap-5"} ${f} ${g}`.replace(/\s+/g," ").trim();return L4("div",{className:A,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d}):$0("span",{children:e})),t&&$0("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:Qa(t)}),c&&$0("p",{className:`${u??"text-[length:var(--size-body,16px)]"} leading-[1.6] opacity-85`,children:c})]})}if(i==="essay"){let A=`${f} ${g}`.trim();return L4("div",{className:A||void 0,children:[e&&(typeof e=="string"?$0(V1,{text:e,look:d,className:"mb-4 block"}):$0("span",{className:"mb-4 block",children:e})),t&&$0("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:Qa(t)})]})}let v=!!c||!!a,z=!!t,x=nL(o)==="outlined",k="font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.3em]",M=null;if(e)if(x)M=$0("span",{className:`${hL} text-fg-dim ${Jp}`,children:Ue(e)});else if(r&&!l&&typeof e=="string"){let A=e.indexOf("/"),R=A===-1?e:e.slice(0,A),E=A===-1?"":e.slice(A);M=L4("span",{className:k,children:[$0("span",{className:"text-accent",children:Ue(R)}),E&&$0("span",{className:"text-fg-dim",children:Ue(E)})]})}else M=$0("span",{className:`${k} ${l?"text-accent":"text-fg-dim"}`,children:Ue(e)});return L4("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:[x&&e&&$0("style",{children:mL}),L4("div",{className:"flex flex-col items-start gap-3",children:[s?.src&&$0("img",{src:A2(s.src),alt:s.alt,className:"h-8 w-auto object-contain"}),M]}),z&&$0("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:Qa(t)}),v&&L4("div",{className:"flex flex-col items-end gap-3 max-[800px]:items-start",children:[c&&$0("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:Ue(c)}),a&&L4(t0,{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:[Ue(a.text),$0("span",{"aria-hidden":!0,children:"\u2192"})]})]})]})}import{jsx as A4,jsxs as es}from"react/jsx-runtime";function mj(e){return e.type==="textarea"||e.type==="select"||e.type==="checkbox"}function pL({eyebrow:e,title:t}){return es("div",{className:"flex flex-col gap-4",children:[e&&A4(V1,{text:e,scaled:!1}),t&&A4("h2",{className:"font-display text-[min(clamp(40px,5vw,72px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:$(t,!0)})]})}function Po({body:e,buttonLabel:t,consent:a,form:s,submission:c,showForm:l,resolving:r,editing:o}){return es("div",{className:"flex flex-col gap-7",children:[e&&b0(e).map((i,n)=>A4("p",{className:"max-w-[480px] font-display text-[16px] leading-[1.6] text-fg-dim",children:C(i)},n)),l&&(s?c.done?A4("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:Pe(s)}):es("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",mj(i)?"col-span-2":""].join(" ");return i.type==="checkbox"?es("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:[A4(h7,{field:i,value:c.valueOf(i.key),onChange:h=>c.set(i.key,h),className:"mt-0.5 size-4 accent-accent"}),es("span",{children:[i.label,i.required?A4("span",{className:"text-accent",children:" *"}):null]})]},i.key):A4(h7,{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)}),A4(Ee,{value:c.honeypot,onChange:c.setHoneypot}),c.error&&A4("p",{role:"alert",className:"col-span-2 font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:c.error}),t&&A4("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":C(t)})]}):A4("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim",children:r?"Loading form\u2026":"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&&A4("span",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-fg-dim/70",children:C(a)})]})}var Eo=["field","tick","thanks"],Qp={field:"Form rows",tick:"Tick label",thanks:"Thank-you message"},Vo={field:"styleField",tick:"styleTick",thanks:"styleThanks"},uL={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 pj(e){return typeof e=="string"&&u5.includes(e)?e:null}var uj={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:900};function dL(e,t){let a={};for(let s of Eo){let c=pj(e[Vo[s]]);if(!c)continue;let l=A9({role:c},uj,t);l.fontFamily&&(a[uL[s].font]=l.fontFamily),l.fontSize&&(a[uL[s].size]=l.fontSize)}return a}import{jsx as No}from"react/jsx-runtime";var gL=["head","form"],vL={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=L5(r,o),m=n7({form:h,formSlug:r,editing:i}),p=dL(n);return e==="head"?No("div",{style:p,children:No(Q1,{look:"statement",num:t,title:a})}):No("div",{style:p,children:No(Po,{body:s??"",buttonLabel:c??"",consent:l??"",form:h,submission:m,showForm:!!h||i,resolving:h===void 0,editing:i})})}var dj={AppointmentBooking:{slot:"boxes",childType:"BookingBox",addLabel:"Add box",fixed:!0,seeds:()=>oL.map(e=>({region:e,name:iL[e]})),addBlocked:()=>"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:()=>gL.map(e=>({region:e,name:vL[e]})),addBlocked:()=>"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:$S},()=>({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:()=>JS.map(e=>({...e})),legacy:e=>Array.isArray(e.cards)?e.cards.map(t=>({...t})):[]}};Cx(dj);function je(e,t){let a={};for(let s of Object.keys(e))a[s]={...e[s],...t[s]};return a}import{jsx as gj}from"react/jsx-runtime";import{OpacityIcon as vj}from"efficient-easel/icons";var fL={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow","Limited release"),title:D("Heading","Banner headline"),body:D("Body","A line or two of supporting copy."),_gBackground:b("Background image"),imageSrc:G1("Image","image/*"),overlay:a1("Overlay",gj(vj,{}),0,100,5,60,"%"),_gButton:b("Button"),...S4,_gLayout:b("Layout")}};import{jsx as xj}from"react/jsx-runtime";import{jsx as ts,jsxs as tu,Fragment as fj}from"react/jsx-runtime";import{Fragment as bj}from"react";function bL({items:e,meta:t,editing:a=!1}){let s=(e??[]).filter(l=>l?.label?.trim()),c=s.length>0?s:a?[{label:"Breadcrumb"}]:[];return c.length===0&&!t?null:tu("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 tu(bj,{children:[r>0&&ts("span",{className:"opacity-40",children:"/"}),l.href&&!o?ts(t0,{href:l.href,className:"hover:text-fg",children:Z0(l.label)}):ts("span",{className:o?"text-fg":void 0,children:Z0(l.label)})]},r)}),t&&tu(fj,{children:[ts("span",{className:"opacity-40",children:"\xB7"}),ts("span",{children:C(t)})]})]})}function K4(e,t,a){return e||(a?.isEditing?t:void 0)}function y1(e,t,a){let s=Array.isArray(e)?e:[];return s.length?s:a?.isEditing?t:[]}function y(e,t,a){let s=H2(e);if(!s.hidden)return K4(s.text,t,a)}function Q0(e,t,a){return H2(e).hidden?"":y(e,t,a)}function O3(e,t,a){return{text:y(e,u2.text,a),href:t||u2.href}}var au={meta:"Trailing note"},zj=[{label:"Home",href:"/"},{label:"Section",href:""}],xL={label:"Breadcrumb",defaultProps:{items:[],meta:""},render:({items:e,meta:t,puck:a})=>xj(bL,{items:y1(e,zj,a),meta:y(t,au.meta,a),editing:a?.isEditing})};var zL={fields:{_gContent:b("Content"),items:{type:"array",label:"Crumbs",arrayFields:{label:G("Label"),href:J2(G("Link"))},getItemSummary:e=>e?.label||"Crumb"},meta:H("Trailing note",au.meta)}};import{jsx as wj}from"react/jsx-runtime";function yL(e){return typeof e=="boolean"?e:!0}import{ButtonArrowIcon as Cj}from"efficient-easel/icons";var wL={fields:{label:G("Button"),href:H1("Button link"),_gStyle:b("Style"),variant:{type:"radio",options:[{label:"Primary",value:"primary"},{label:"Ghost",value:"ghost"}]},arrow:s1("Arrow",!0,wj(Cj,{})),align:T5()}};import{jsx as ML}from"react/jsx-runtime";import{ColumnsIcon as Hj,StylesIcon as Fj}from"efficient-easel/icons";import{jsx as Lj}from"react/jsx-runtime";import{jsx as Ke,Fragment as kj,jsxs as su}from"react/jsx-runtime";var Mj="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))]",Sj="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 CL({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:Ke("section",{className:"relative z-[2] bg-surface",children:su("div",{className:l?Sj:Mj,children:[l?null:su(kj,{children:[(t??"").trim()&&Ke(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&Ke("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:$(a??"",!1)})]}),i.length>0&&Ke("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)=>su("div",{className:"bg-bg p-8 max-[800px]:p-7",children:[Ke("div",{className:"mb-3 font-heading3 text-[length:var(--size-headingSmall,20px)] font-medium uppercase tracking-[0.02em] text-fg",children:C((h.title??"").trim()||"Card title")}),Ke("p",{className:"text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:C((h.body??"").trim()||"A short line about this card.")})]},m))})]})})}var as={eyebrow:"Label",title:"Section *heading.*"},Aj=[{title:"Card title one",body:"A short line about this card."},{title:"Card title two",body:"A short line about this card."},{title:"Card title three",body:"A short line about this card."}],kL={label:"Cards",defaultProps:{eyebrow:"",title:"",items:[],columns:3},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return Lj(CL,{look:s4(e.eyebrowLook,"Cards"),eyebrow:a(y(e.eyebrow,as.eyebrow,e.puck)),title:a(y(e.title,as.title,e.puck)),omitHead:t,items:y1(e.items,Aj,e.puck),columns:e.columns,editing:e.puck?.isEditing})}};var SL={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",as.eyebrow),eyebrowLook:g1("Eyebrow style",ML(Fj,{}),[...y4],J6("Cards")),title:D("Heading",as.title),items:{type:"array",label:"Cards",arrayFields:{title:v1("Card title"),body:E1("Card body")},defaultItemProps:{title:"",body:""},getItemSummary:e=>e?.title||e?.body||"Card"},_gStyle:b("Style"),columns:a1("Columns",ML(Hj,{}),2,4,1,3)},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.Cards.headRows)};import{jsx as Tj}from"react/jsx-runtime";import{StickyIcon as Pj}from"efficient-easel/icons";var LL={fields:{tabs:{type:"array",label:"Tabs",arrayFields:{label:G("Label"),count:G("Count")},getItemSummary:e=>e?.label?`${e.label}${e.count?` \xB7 ${e.count}`:""}`:"Tab"},activeTab:J2(G("Active tab","All")),_gLinks:b("Links"),links:{type:"array",label:"Right links",arrayFields:{label:G("Label"),href:J2(G("Link"))},getItemSummary:e=>e?.label||"Link"},_gStyle:b("Style"),sticky:s1("Stick under header",!0,Tj(Pj,{}))}};import{jsx as Rj}from"react/jsx-runtime";import{StylesIcon as Bj}from"efficient-easel/icons";import{jsx as _j}from"react/jsx-runtime";import{jsx as l2,jsxs as $4}from"react/jsx-runtime";function cu(e){return Number.isInteger(e)?String(e):String(Math.round(e*10)/10)}var AL=[100,70,46,30,19,12];function HL(e){return`color-mix(in srgb, var(--accent) ${AL[e%AL.length]}%, var(--bg))`}function Ej({data:e,suffix:t}){let a=Math.max(...e.map(s=>s.value),0)||1;return l2("div",{className:"flex w-full flex-col gap-6",children:e.map((s,c)=>$4("div",{children:[$4("div",{className:"mb-2 flex items-baseline justify-between gap-4",children:[l2("span",{className:"font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] text-fg/60",children:C(s.label)}),$4("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium text-fg",children:[cu(s.value),t]})]}),l2("div",{className:"h-[10px] border border-line bg-bg",children:l2("div",{className:"h-full bg-accent",style:{width:`${Math.max(s.value/a*100,s.value===0?0:2)}%`}})})]},c))})}function Vj({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 $4("svg",{viewBox:"0 0 640 300",className:"w-full",role:"img","aria-hidden":!0,children:[[.25,.5,.75,1].map(h=>l2("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)),l2("line",{x1:a.l,x2:640-a.r,y1:a.t+c,y2:a.t+c,stroke:"var(--site-line)",strokeWidth:"1.5"}),l2("path",{d:n,fill:"var(--accent)",opacity:"0.13"}),l2("path",{d:i,fill:"none",stroke:"var(--accent)",strokeWidth:"2.5"}),o.map((h,m)=>$4("g",{children:[l2("circle",{cx:h.x,cy:h.y,r:"4",fill:"var(--accent)"}),$4("text",{x:h.x,y:h.y-12,textAnchor:"middle",className:"font-display",fontSize:"14",fill:"var(--fg)",children:[cu(e[m].value),t]}),l2("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 Nj({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:HL(i)};return l+=n*c,h});return $4("div",{className:"flex w-full flex-wrap items-center justify-center gap-10",children:[l2("svg",{viewBox:"0 0 200 200",className:"w-[220px] max-w-full -rotate-90",role:"img","aria-hidden":!0,children:r.map((o,i)=>l2("circle",{cx:"100",cy:"100",r:s,fill:"none",stroke:o.ink,strokeWidth:"34",strokeDasharray:`${o.dash} ${c-o.dash}`,strokeDashoffset:-o.off},i))}),l2("ul",{className:"flex min-w-[200px] flex-1 flex-col gap-3",children:e.map((o,i)=>$4("li",{className:"flex items-baseline gap-3",children:[l2("span",{"aria-hidden":!0,className:"h-[10px] w-[10px] flex-shrink-0 rotate-45",style:{background:HL(i)}}),l2("span",{className:"flex-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.12em] text-fg/60",children:C(o.label)}),l2("span",{className:"font-display text-[length:var(--size-body,15px)] font-medium text-fg",children:t?`${cu(o.value)}${t}`:`${Math.round(o.value/a*100)}%`})]},i))})]})}function FL({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(u=>({label:(u.label??"").trim(),value:parseFloat(u.value??"")})).filter(u=>o?!0:u.label&&Number.isFinite(u.value)).map(u=>({label:u.label||"\u2014",value:Number.isFinite(u.value)?u.value:0})),h=!!(e??"").trim()||!!(t??"").trim();if(!o&&!h&&n.length===0)return null;let m=s??"bars",p=n.length===0?null:m==="line"&&n.length>1?l2(Vj,{data:n,suffix:i}):m==="donut"?l2(Nj,{data:n,suffix:i}):l2(Ej,{data:n,suffix:i});return l2("section",{className:"relative z-[2] border-y border-line bg-surface",children:$4("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:[$4("div",{children:[(e??"").trim()&&l2("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:C(e??"")}),(t??"").trim()&&l2("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:$(t??"",!1)}),(a??"").trim()&&l2("p",{className:"mt-5 max-w-[46ch] text-[length:var(--size-body,15px)] leading-relaxed text-fg/65",children:a})]}),$4("div",{children:[p,(r??"").trim()&&l2("p",{className:"mt-4 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.14em] text-fg/40",children:r})]})]})})}var ss={eyebrow:"By the numbers",title:`A picture worth
23
23
  *a thousand rows.*`},Ij=[{label:"Before",value:"9"},{label:"After",value:"3"},{label:"With us",value:"1"}],TL={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})=>_j(FL,{eyebrow:y(e,ss.eyebrow,o),title:y(t,ss.title,o),body:a,items:y1(s,Ij,o),chartStyle:l,valueSuffix:r,caption:c,editing:o?.isEditing})};var PL={fields:{_gContent:b("Content"),eyebrow:H("Chip label",ss.eyebrow),title:D("Heading",ss.title),body:D("Body",""),items:{type:"array",label:"Data points",arrayFields:{label:v1("Label"),value:G("Value")},defaultItemProps:{label:"",value:""},getItemSummary:e=>[e?.label,e?.value].filter(Boolean).join(" \xB7 ")||"Point"},caption:H("Caption","Illustrative example"),_gStyle:b("Style"),chartStyle:g1("Chart style",Rj(Bj,{}),[{label:"Bars (comparison / funnel)",value:"bars"},{label:"Line (trend)",value:"line"},{label:"Donut (split of a whole)",value:"donut"}],"bars"),valueSuffix:H("Value suffix","%")}};import{jsx as sK}from"react/jsx-runtime";import{jsx as L1,Fragment as ou,jsxs as H4}from"react/jsx-runtime";import{useId as Oj,useState as Gj}from"react";import{InspectorUpLevel as ls}from"efficient-easel/chrome";import{useEasel as qj}from"efficient-easel/easel";import{ListField as _L}from"efficient-easel/fields";import{SettingsField as IL}from"efficient-easel/panel";import{ClockIcon as EL,ContrastIcon as Wj,GlobeIcon as Uj,LinkIcon as jj,LocationIcon as Kj,PhoneIcon as $j,SquareIcon as Yj,TypeIcon as iu}from"efficient-easel/icons";var Zj=["tall","square","wide"],Dj="tall";function _o(e){return Zj.includes(String(e??""))?String(e):Dj}var r2={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"},cs=[{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 Io(e){let t=String(e??"").split(" \xB7 ");return{state:(t[0]??"").trim(),country:(t[1]??"").trim()}}var S8="other",v0={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 lu(e){return fl(e)}function Xj(e){let t=[];return e.forEach((a,s)=>{let c=X6(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 ru({children:e}){return L1("div",{style:{fontSize:11,fontWeight:600,letterSpacing:"0.06em",textTransform:"uppercase",color:"var(--fg-dim, #999)",margin:"14px 0 6px"},children:e})}var RL={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"},Jj={padding:0,border:"none",background:"none",font:"inherit",fontSize:12,color:"var(--sf-accent, #2563eb)",cursor:"pointer"},BL={...Jj,color:"#d85a30"};function h6({label:e,value:t,placeholder:a,textarea:s,icon:c,onChange:l,onBlur:r,onKeyDown:o}){let i=Oj();return L1(IL,{label:e,icon:c??L1(iu,{}),htmlFor:i,children:s?L1("textarea",{id:i,value:t,placeholder:a,onChange:n=>l(n.target.value)}):L1("input",{id:i,type:"text",value:t,placeholder:a,onChange:n=>l(n.target.value),onBlur:r,onKeyDown:o})})}var Qj=[{label:"Auto",value:"auto"},{label:"Dark",value:"dark"},{label:"Light",value:"light"}],eK=[{label:"Tall (3:4)",value:"tall"},{label:"Square",value:"square"},{label:"Wide (2:1)",value:"wide"}];function VL({label:e,icon:t,options:a,value:s,onChange:c}){return L1(IL,{label:e,icon:t,children:L1("div",{role:"group","aria-label":e,style:{display:"flex",gap:4,flex:1},children:a.map(l=>{let r=s===l.value;return L1("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:l.label},l.value)})})})}function NL({props:e,setSection:t,headOnly:a}){let s=r=>String(e[r]??""),c=e.mapTheme||r2.mapTheme,l=r2;return H4(ou,{children:[!a&&L1(ru,{children:"Section"}),L1(h6,{label:"Section number",value:s("sectionNumber"),placeholder:l.sectionNumber,onChange:r=>t({sectionNumber:r})}),L1(h6,{label:"Heading",textarea:!0,value:s("heading"),placeholder:l.heading,onChange:r=>t({heading:r})}),L1(h6,{label:"Body",textarea:!0,value:s("tagline"),placeholder:l.tagline,onChange:r=>t({tagline:r})}),a?null:H4(ou,{children:[L1(ru,{children:"City strip"}),L1(h6,{label:"Eyebrow",value:s("galleryKicker"),placeholder:l.galleryKicker,onChange:r=>t({galleryKicker:r})}),L1(h6,{label:"Hint",value:s("galleryHint"),placeholder:l.galleryHint,onChange:r=>t({galleryHint:r})}),L1(VL,{label:"Shape",icon:L1(Yj,{}),options:eK,value:_o(e.imageShape),onChange:r=>t({imageShape:r})}),L1(ru,{children:"Map & Theme"}),L1(VL,{label:"Map theme",icon:L1(Wj,{}),options:Qj,value:c,onChange:r=>t({mapTheme:r})})]})]})}function tK({cards:e,groupKey:t,onChange:a,onBack:s,onOpenCity:c,onNavigate:l}){let r=e.map((u,g)=>X6(u)===t?g:-1).filter(u=>u>=0),o=String(e[r[0]]?.groupName??""),i=new Set(e.map(X6).filter(u=>u!==t)),[n,h]=Gj(t),m=u=>a(e.map(g=>X6(g)===t?{...g,...u}:g)),p=()=>{let u=n;if(u!==t){if(i.has(u)){h(t);return}a(e.map(g=>X6(g)===t?{...g,group:u}:g)),l(u)}};return H4("div",{className:"sf-locations-view",children:[L1(ls,{inline:!0,name:"Section",onSelect:s}),L1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:er(t,o)}),L1(h6,{label:"Group heading",value:n,placeholder:"e.g. Americas",onChange:h,onBlur:p,onKeyDown:u=>{u.key==="Enter"&&u.currentTarget.blur()}}),i.has(n)&&n!==t&&L1("p",{className:"sf-note sf-note--error",role:"alert",children:"Another group already uses this heading \u2014 pick a different one."}),L1(h6,{label:"Group name",value:o,placeholder:"Shown beside the heading",onChange:u=>m({groupName:u})}),L1(_L,{label:"Cities in this group",noun:"city",items:r.map(u=>e[u]),onChange:u=>a(fw(e,t,u)),newItem:()=>({...hm,group:t,groupName:o}),open:null,onOpen:()=>{},renderItem:()=>null,removeOnRow:!1,canDuplicate:()=>!1,renderRow:(u,g)=>H4("button",{type:"button",style:RL,onClick:()=>c(r[g]),children:[L1("span",{children:u?.name||"City"}),L1("span",{"aria-hidden":"true",children:"\u203A"})]})}),L1("div",{style:{marginTop:12},children:H4("button",{type:"button",style:BL,onClick:()=>{a(e.filter(u=>X6(u)!==t)),s()},children:["Delete group (",r.length," ",r.length===1?"city":"cities",")"]})})]})}function ZL({value:e,onChange:t}){let a=Array.isArray(e)?e:[],s=vw(),c=_y(),l=Xj(a),{appState:r,selectedItem:o}=qj(d=>d),i=Nz(),n=o?.props??{},h=d=>{if(!o)return;let f=(r.data.content??[]).findIndex(v=>v.props.id===o.props.id);f<0||i.replaceComponent(wx,f,{type:o.type,props:{...o.props,...d}})},m=(d,f)=>t(a.map((v,z)=>z===d?{...v,...f}:v)),p=()=>{let d=new Set(l.map(z=>z.key)),f=l.length+1,v=`Group ${f}`;for(;d.has(v);)v=`Group ${++f}`;return v};if(s.level==="texts")return H4("div",{className:"sf-locations-view",children:[L1(ls,{inline:!0,name:"Locations",onSelect:()=>O4({level:"groups"})}),L1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:"Texts"}),L1(NL,{props:n,setSection:h,headOnly:!0})]});if(s.level==="image"){let d=a[s.index];return d?H4("div",{className:"sf-locations-view",children:[L1(ls,{inline:!0,name:String(d.name??"")||"City",onSelect:()=>O4({level:"city",index:s.index})}),L1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:"Image"}),L1(Dz,{value:d.photo||"",onChange:f=>m(s.index,{photo:f}),label:"Image",accept:"image/*"})]}):u()}if(s.level==="map"){let d=a[s.index];return d?H4("div",{className:"sf-locations-view",children:[L1(ls,{inline:!0,name:String(d.name??"")||"City",onSelect:()=>O4({level:"city",index:s.index})}),L1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:"Map"}),L1(Rl,{value:d.geocode,onChange:f=>m(s.index,{geocode:f}),label:"Coordinates"}),L1(h6,{label:"Directions link",icon:L1(jj,{}),value:String(d.mapsUrl??""),onChange:f=>m(s.index,{mapsUrl:f})})]}):u()}if(s.level==="city"){let d=s.index,f=a[d];if(!f)return u();let v=X6(f),z=(k,M)=>m(d,{[k]:M}),x=(k,M,A,R=!1)=>L1(h6,{label:M,icon:A,textarea:R,value:String(f[k]??""),onChange:E=>z(k,E)});return H4("div",{className:"sf-locations-view",children:[L1(ls,{inline:!0,name:er(v,String(f.groupName??"")),onSelect:()=>O4({level:"group",key:v})}),L1("div",{style:{fontSize:14,fontWeight:500,margin:"6px 0 10px"},children:f.name||"City"}),x("name","Location name",L1(iu,{})),x("state","State / Province",L1(iu,{})),x("country","Country",L1(Uj,{})),x("address","Address",L1(Kj,{}),!0),x("phone","Phone",L1($j,{})),x("hours","Opening hours",L1(EL,{})),x("timezone","Timezone chip",L1(EL,{})),L1("div",{style:{marginTop:12},children:L1("button",{type:"button",style:BL,onClick:()=>{t(a.filter((k,M)=>M!==d)),O4({level:"group",key:v})},children:"Delete city"})})]})}if(s.level==="group")return l.some(d=>d.key===s.key)?L1(tK,{cards:a,groupKey:s.key,onChange:t,onBack:()=>O4({level:"groups"}),onOpenCity:d=>O4({level:"city",index:d}),onNavigate:d=>O4({level:"group",key:d})},s.key):u();function u(){return H4("div",{className:"sf-locations-view",children:[L1(NL,{props:n,setSection:h}),!c&&L1(ou,{children:g()})]})}function g(){return L1(_L,{label:"Locations",noun:"group",items:l,onChange:d=>{let f=d.find(v=>!l.some(z=>z.key===v.key));t(bw(a,d.map(v=>v.key),v=>[{...hm,group:v,groupName:""}])),f&&O4({level:"group",key:f.key})},newItem:()=>({key:p(),name:"",indices:[]}),open:null,onOpen:()=>{},renderItem:()=>null,removeOnRow:!1,canDuplicate:()=>!1,above:l.length===0?L1("div",{style:{fontSize:12,color:"var(--fg-dim, #999)",padding:"4px 0"},children:"No locations yet."}):void 0,renderRow:d=>H4("button",{type:"button",style:RL,onClick:()=>O4({level:"group",key:d.key}),children:[L1("span",{style:{fontWeight:500},children:er(d.key,d.name)}),H4("span",{style:{color:"var(--fg-dim, #999)"},children:[d.indices.length," ",d.indices.length===1?"city":"cities"," \u203A"]})]})})}return u()}var aK="/geocode.json";async function DL(e){let t=e.trim();if(!t)return null;if(!Yb())throw new Error("geocode_unavailable");let a=await fetch(`${xw()}${aK}?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 Ro=e=>typeof e=="number"&&Number.isFinite(e);function Bo(e){return e.some(t=>{let a=t?.geocode;return a?a.pending||a.manual&&a.lat===void 0&&a.lng===void 0?!0:Ro(a.lat)&&a.lat!==t.lat||Ro(a.lng)&&a.lng!==t.lng:!1})}async function Zo(e,t,{geocode:a=DL,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=Ro(o.lat)&&o.lat!==r.lat?o.lat:r.lat,n=Ro(o.lng)&&o.lng!==r.lng?o.lng:r.lng;return i!==r.lat||n!==r.lng?{...r,lat:i,lng:n}:r})}var OL={fields:{locations:{type:"custom",render:({value:e,onChange:t})=>sK(ZL,{value:e,onChange:t})}},resolveData:async e=>{let t=e.props,a=t.locations??[];if(!Bo(a))return e;let s=await Zo(a,c=>{let l=Io(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}}}};var GL={fields:{html:{type:"textarea",label:"HTML"}}};import{jsx as iK}from"react/jsx-runtime";import{StylesIcon as nK}from"efficient-easel/icons";var L8="line",nu=[{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"}],cK={"stripes-fine":{ink:4,period:12},"stripes-medium":{ink:8,period:18},"stripes-bold":{ink:14,period:28}},qL=28,lK="-45deg",rK="color-mix(in oklab, var(--accent) 50%, var(--bg))";function oK(e){return e!=="line"}function WL(e){return I2(nu,L8,e)}function UL(e){if(!oK(e))return null;let{ink:t,period:a}=cK[e];return`repeating-linear-gradient(${lK}, ${rK} 0 ${t}px, transparent ${t}px ${a}px)`}var jL={fields:{style:g1("Style",iK(nK,{}),nu,L8),spacing:{type:"select",options:[{label:"Small",value:"sm"},{label:"Medium",value:"md"},{label:"Large",value:"lg"}]}}};import{jsx as dK}from"react/jsx-runtime";import{jsx as m6,jsxs as rs}from"react/jsx-runtime";function hK(e,t){return e.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||`section-${t+1}`}function mK(e){let t=[];for(let a of e.replace(/\r\n?/g,`
@@ -150,4 +150,4 @@ ${s}`:t.push({type:"p",text:s})});return t}var pK=[{label:"First section",headin
150
150
  }
151
151
  `;function zB(){let{settings:e,selected:t,select:a,websiteName:s,templateChrome:c,templateName:l,chromePlaceholder:r,themeSwitchShown:o}=V3(),i=c?l?.trim()||"Template":s?.trim()||Ol,n=c||r;return u81("div",{className:"sf-preview-header-pick sf-theme-surfaces","data-selected":t||void 0,onClick:h=>{h.stopPropagation(),a()},children:[xB("style",{children:p81}),xB(df,{previewSettings:e??void 0,editorPreview:!0,showThemeToggle:o,wordmark:i,hideLogo:n,hideMenu:n})]})}import{Render as y81}from"efficient-easel/render";import{useEffect as d81,useState as g81}from"react";import{jsx as b81}from"react/jsx-runtime";var v81=["none","always","on_scroll_up"],f81=e=>v81.includes(e)?e:"always";function gf({sticky:e,topTextColor:t,heightPx:a,theme:s,children:c}){let l=f81(e),r=uB(a),{headerRef:o,scrolled:i,navHidden:n}=Gn({stickyMode:l,heightPx:r}),h=$n(t),m=h==="auto"?null:{[Kn]:h},p=qn(s),u=Wn(Ve()),[g,d]=g81(!1);d81(()=>{let z=o.current?.ownerDocument??document,x=()=>d(z.documentElement.getAttribute("data-theme")==="light");x();let k=new MutationObserver(x);return k.observe(z.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>k.disconnect()},[o]);let f=i||u,v=Un(g,u);return b81("header",{ref:o,"data-scrolled":i||void 0,"data-box-header":"",...m,className:["sf-site-header",...p?[p.className]:[],"flex flex-col justify-center",l==="none"?"absolute":"fixed","inset-x-0 top-0 z-50",f?"border-b border-line backdrop-blur-md":"border-b border-transparent","transition-[background,border-color,transform] duration-300 ease-out"].join(" "),style:{...p?p.style:null,minHeight:`var(${Yl}, ${r}px)`,...n?{transform:"translateY(-100%)"}:null,...f?{background:v,color:"var(--fg)","--sf-header-ground":v}:{color:"var(--sf-header-overlay-fg)","--sf-header-ground":"var(--sf-header-overlay-ground)"}},children:c})}var x81={"Logos.logosPerRow":"columns","HeroSlide.tintOpacity":"overlay","Split.textBgTint":"overlay"};function z81(e){return Array.isArray(e)&&e.length>0&&e.every(t=>!!t&&typeof t=="object"&&typeof t.type=="string")}function vf(e){let t=e.props,a=!1;if(e.type&&t)for(let[s,c]of Object.entries(x81)){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(!z81(l))continue;let r=l.map(vf);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 yB(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(vf);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(vf);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 k81,jsx as ff}from"react/jsx-runtime";var w81=null,C81=()=>w81??={...bf,root:{...bf.root,render:({children:e})=>ff(k81,{children:e})}};function xf({group:e}){let t=yB({root:{props:{}},content:[e],zones:{}}),a=e.props??{};return ff(gf,{sticky:a.sticky,topTextColor:a.topTextColor,heightPx:a.heightPx,theme:a.sectionAccent,children:ff(y81,{config:C81(),data:t})})}import{jsx as wB}from"react/jsx-runtime";function zf({editing:e=!1}){let{headerGroup:t}=Hy();return e?t?wB(xf,{group:t}):wB(zB,{}):null}import{jsx as M81}from"react/jsx-runtime";var CB={label:"Header",render:({puck:e})=>M81(zf,{editing:e?.isEditing})};import{useEffect as Q81,useState as $B}from"react";var kB="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 Lf,useRef as q81,useState as jB}from"react";import{jsx as yf,jsxs as MB}from"react/jsx-runtime";var S81="Please enter a valid email address.";function Hc({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 MB("form",{className:[n,"flex flex-col gap-2"].filter(Boolean).join(" "),noValidate:!0,onSubmit:m=>{m.preventDefault(),c()},children:[MB("div",{className:"flex items-stretch gap-2",children:[yf("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:"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"}),yf("button",{type:"submit",disabled:a==="sending",className:i,children:a==="sending"?"Sending\u2026":l})]}),(a==="error"||a==="invalid")&&yf("p",{role:"alert",className:"font-mono text-[11px] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:a==="invalid"?S81:r})]})}import{jsx as Y5,jsxs as Jt}from"react/jsx-runtime";function Fc({vehicle:e,escape:t,override:a,verdict:s,showChangeCar:c,cascadeErrorNote:l,askNote:r}){let o=e.appliedName!=="";return Jt("div",{className:"pb-2",children:[Jt("div",{className:"mb-3 flex items-center justify-between gap-4 font-mono text-[13px] font-semibold uppercase tracking-[0.2em] text-fg",children:[Y5("span",{children:"Vehicle Fitment"}),t]}),a?Y5("div",{className:"flex flex-col gap-3",children:a}):o?Jt("div",{className:"flex flex-col gap-3",children:[s,c&&Y5("div",{children:Y5("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"})})]}):Jt("div",{className:"flex flex-col gap-3",children:[Y5(K3,{cascade:e.cascade,compact:!0}),e.cascade.cascadeError&&Y5("p",{className:"font-mono text-[12px] leading-relaxed tracking-[0.1em] text-fg-dim",children:l}),Y5("span",{className:"font-mono text-[12px] tracking-[0.1em] text-fg-dim",children:r})]})]})}function wf({vehicle:e}){return e.appliedName?Jt("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:[Jt("span",{children:["Showing fitment for your"," ",Y5("strong",{className:"font-semibold text-fg",children:e.appliedName})]}),Y5("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 i5({tone:e,children:t}){return Y5("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 L81,useState as SB}from"react";function Xn(e,t){let[a,s]=SB(null),[c,l]=SB(!1),r=t?.make??"",o=t?.model??"",i=t?.year??null,n=t?.modification??"",h=t!==null;return L81(()=>{if(!h||i===null){s(null),l(!1);return}let m=!0;return s(null),l(!0),JM(e,{make:r,model:o,year:i,modification:n}).then(p=>{if(!m)return;let u=p.vehicle;u.make!==r||u.model!==o||u.year!==i||u.modification!==n||(s(p),l(!1))}),()=>{m=!1}},[e,r,o,i,n,h]),{answer:a,loading:c}}function Jn(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 Qn={fits:"Fits",doesNotFit:"Not your size",unknown:"Unknown"};function A81(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=>Ba(e,l.sku));return c.includes("fits")?"fits":c.every(l=>l==="doesNotFit")?"doesNotFit":"unknown"}var Cf={fits:{color:"var(--accent)",dashed:!1},doesNotFit:{color:void 0,dashed:!1},unknown:{color:void 0,dashed:!0}};function LB(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=>A81(e,t,n)==="fits"),c=n=>{let h=l4(n);return h?q4(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),p=m??n;o.has(p)||(o.add(p),h!==null&&i.add(h),r.push({size:p,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 AB,jsx as R4,jsxs as I4}from"react/jsx-runtime";function kf({slug:e,variants:t,vehicle:a,manualMode:s,setManualMode:c}){let{answer:l,loading:r}=Xn(e,s?null:so(a.applied?.vehicle)),o=a.appliedName;return R4(Fc,{vehicle:a,escape:R4("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?I4(i5,{tone:"quiet",children:[R4("strong",{className:"font-semibold text-fg",children:"You are choosing by size."}),I4("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."," ",R4(S1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]}):null,verdict:R4(H81,{answer:l,loading:r,car:o,variants:t,onChange:a.clear}),showChangeCar:!1,cascadeErrorNote:I4(AB,{children:["Vehicle data is unavailable right now. Pick your size above, or"," ",R4(S1,{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 H81({answer:e,loading:t,car:a,variants:s,onChange:c}){if(t||!e)return I4(i5,{tone:"quiet",children:[R4("strong",{className:"font-semibold text-fg",children:"Checking your car\u2026"})," ",I4("span",{children:["Reading the factory tyre sizes for your ",a,"."]})]});let l=LB(e,s),r=e.status==="doesNotFit"?"You can still order any size here \u2014 check it suits your car first.":"",o=l.length===0?Jn(e):"",i=o&&r?`${o} ${r}`:o||r;return I4(i5,{tone:e.status==="fits"?"good":"quiet",children:[I4("span",{className:"block",children:[e.status==="fits"?I4("strong",{className:"font-semibold text-accent",children:["\u2713 Made in a size your ",a," takes"]}):e.status==="doesNotFit"?I4("strong",{className:"font-semibold text-fg",children:["Not made in a size your ",a," takes"]}):I4("strong",{className:"font-semibold text-fg",children:["We cannot check this tyre against your ",a]}),I4("span",{className:"whitespace-nowrap",children:[" \xB7 ",R4("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?R4("span",{className:"mt-1.5 block",children:i}):null,l.length>0?I4(AB,{children:[R4("span",{className:"mt-1.5 block",children:"Your car takes:"}),R4("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:l.map(n=>{let h=n.made?Cf.fits:Cf.doesNotFit;return R4("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 ${Qn.fits}`:n.size},n.size)})})]}):null]})}import{useEffect as HB,useState as FB}from"react";var eh="(max-width: 720px) 88vw, (max-width: 1100px) 44vw, 700px";function TB(e,t,a){return a<=1?0:((e+t)%a+a)%a}function PB(e,t,a){return[{glyph:"\u25C1",label:"Previous angle",onClick:()=>a(TB(e,-1,t))},{glyph:"\u27F3",label:"Reset to first angle",onClick:()=>a(0)},{glyph:"\u25B7",label:"Next angle",onClick:()=>a(TB(e,1,t))}]}function F81(e){let{props:t}=cx({src:e,alt:"",fill:!0,sizes:eh}),a=new window.Image;return t.sizes&&(a.sizes=t.sizes),t.srcSet&&(a.srcset=t.srcSet),a.src=t.src,a.decode()}function EB(e,t,a=F81){let[s,c]=FB(()=>new Set),[l,r]=FB(t),o=e.join(`
152
152
  `);HB(()=>{let n=!0,h=m=>{n&&c(p=>p.has(m)?p:new Set(p).add(m))};for(let m of o?o.split(`
153
- `):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return HB(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as P81,jsx as z3,jsxs as $3}from"react/jsx-runtime";function Mf({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=sn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(Pd),n=Y_({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return z3(Fc,{vehicle:a,escape:z3("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?$3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),$3("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."," ",z3(S1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:z3(T81,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:$3(P81,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",z3(S1,{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 T81({verdict:e,car:t}){switch(e.state){case"checking":return $3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",$3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return $3(i5,{tone:"good",children:[$3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),z3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>z3("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 $3(i5,{tone:"good",children:[$3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),z3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>z3("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))}),$3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[z3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),c9(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."," ",z3(S1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return $3(i5,{tone:"bad",children:[$3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),z3("span",{className:"mt-1.5 block",children:c9(e.failure)})]});case"unknown":return $3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),$3("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."," ",z3(S1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as IB}from"react";import{useCallback as NB,useRef as E81,useState as V81}from"react";function VB(e,t,a){return{productSlug:e,email:a.trim(),size:t?x8(t):""}}function _B(){let[e,t]=V81("idle"),a=E81(!1),s=NB(()=>{a.current=!1,t("idle")},[]),c=NB(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!me(o)){t("invalid");return}a.current=!0,t("sending");try{i||await g0.createPreOrderIntent(VB(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 Qt,jsxs as ea}from"react/jsx-runtime";function Sf({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=IB(a.length>0?0:-1),[l,r]=IB(""),{status:o,submit:i,reset:n}=_B(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ea("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ea("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:[Qt("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&&ea("div",{children:[ea("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",Qt("span",{className:"text-accent",children:h?x8(h):"Select a size"})]}),Qt("div",{className:"flex flex-wrap gap-1.5",children:a.map((p,u)=>{let g=u===s;return ea("button",{type:"button",onClick:()=>{c(u),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",g?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:g?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[g&&Qt("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),Qt("span",{className:"block text-[14px] tracking-[0.18em]",children:x8(p)})]},x8(p))})})]}),o==="sent"?ea("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,"."]}):Qt(Hc,{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 N81}from"react";import{Fragment as _81,jsx as th}from"react/jsx-runtime";function ah({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:p,onImageClick:u,imageButtonClassName:g,imageButtonLabel:d}){let[f,v]=N81(null),z=e||"";if(!(z!==""&&f!==z))return th(_81,{children:a});let k=th(E3,{src:z,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>v(z)},m??z),M=p?th("div",{className:p,children:k}):k;return u?th("button",{type:"button",onClick:u,"aria-label":d,className:g,children:M}):M}function RB(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]}import{Fragment as BB,jsx as B4,jsxs as R81}from"react/jsx-runtime";function sh(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function ch({text:e}){return e==="FusionForge\xAE"?R81(BB,{children:["FusionForge",B4(c6,{})]}):B4(BB,{children:e})}function ZB(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",p=h.variants.find(d=>d.size===m),u=p?.specs.tireType??h.variants[0]?.specs.tireType??null,g=[p?.image,h.coverImage].filter(d=>!!d);return{heading:Pi(h.brand,h.name),photos:g.slice(0,1),tint:void 0,stageImage:()=>B4(i6,{image:p?.image??h.coverImage,size:m,type:u,sizes:eh,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",metaValue:m,specCaption:p?[p.specs.loadIndex,p.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:B4(kf,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:B4(wf,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=SV(s,t.shown.finish),l=N7(s,t.part),r=on(t),o=Bd(c,r),i=o?[...o]:RB(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:p,onZoom:u,fit:g})=>B4(ah,{src:h,alt:m,fill:!0,sizes:eh,className:g==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:u,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:p,fallback:B4(f8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>B4(ah,{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:B4(f8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:I81(n,c,r,t.manualMode),metaValue:c.name,specCaption:l?Os(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:B4(Mf,{selection:t,spec:l?Os(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:B4(wf,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:B4(Sf,{wheel:s,editing:a})}}function I81(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 B81,useContext as Z81,useEffect as D81,useState as DB}from"react";import{jsx as G81}from"react/jsx-runtime";var OB="storefront-wishlist";function O81(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var GB=B81(null);function $40({children:e}){let[t,a]=DB([]),[s,c]=DB(!1);D81(()=>{let o=Q2.getItem(OB);try{o&&a(O81(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),Q2.setItem(OB,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return G81(GB.Provider,{value:r,children:e})}function qB(){let e=Z81(GB);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var WB="data-option-row";import{Fragment as n5,jsx as z1,jsxs as K1}from"react/jsx-runtime";var W81=4e3;function U81(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}function ta({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=j7,imageRatio:o=K7,textAlign:i=n9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=$7,imageFit:p=Y7}){let u=Ot(r),g=Ln(i),d=An(o),f=Hn(m),v=QI(Fn(p),vV(e)),z=u==="imageRight"?`${100-d}fr ${d}fr`:`${d}fr ${100-d}fr`,{picked:x,pick:k,qty:M,setQty:A,choice:R,setChoice:E,angleIdx:Z,setAngleIdx:F,showValidation:T,setShowValidation:N,manualMode:B,vehicle:P,rows:O,facts:c1,part:V,outOfStock:q,offer:K,preOrder:W,canAddToCart:r1,currency:x1,price:Y,set:e1,msrpLabel:d1}=t,U=ZB(e,t,s),{bullets:p1}=VS(),f1=iV(e),F0=mV(e),T0=l?U.vehicle:null,A1=l?U.vehicleMemory:null,[s0,c0]=jB(!1);Lf(()=>{let X=()=>{c0(document.documentElement.getAttribute("data-theme")==="light")};X();let C1=new MutationObserver(X);return C1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>C1.disconnect()},[]);let{add:$1,open:w2,warmCatalog:e0}=c4();Lf(()=>{s||e0(e.kind)},[s,e.kind,e0]);let L2=O.filter(X=>!W||X.values.length>0),d0=L2.filter(X=>X.role==="resolves"),m1=L2.filter(X=>X.role==="describes"&&!fV(F0,X.key)),q1=m1.findIndex(X=>X.chosen===null),o0=(!T0||!U.vehicleAnswersSpecs||t.fitmentSet)&&sn(O,W)?q1===-1?m1:m1.slice(0,q1+1):[],P0=[...d0,...o0],y0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[d1&&z1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:d1}),z1("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:f1?Dw(Y,x1):he(Y,x1)}),Y.priced&&z1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:U.unitLabel}),Y.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:[K.quantityLabel,": ",B2(e1,x1)]})]}),o2=q81(null);return Lf(()=>{s||o2.current===e.slug||(o2.current=e.slug,Ow({itemId:V?`${e.slug}|${V.id}`:e.slug,itemName:e.name,variant:U.metaValue,pricePerSet:Y.setTotal??Y.fromSetTotal??0,currency:x1}))},[s,e.slug,e.name,U.metaValue,V,Y,x1]),K1(n5,{children:[z1("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:s0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((X,C1)=>K1("span",{children:[C1>0&&K1(n5,{children:[z1("span",{className:"mx-3 text-accent",children:"/"}),z1("wbr",{})]}),X.href?z1(S1,{href:X.href,className:"hover:text-fg",children:z1(ch,{text:X.label})}):z1("span",{className:"text-fg",children:z1(ch,{text:X.label})})]},`${X.label}-${C1}`))}),K1("section",{"data-hero-layout":u,"data-hero-align":g,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",u==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:1fr]"].join(" "),style:{...s0?{}:{background:"var(--section-bg)"},...u==="stacked"?{}:{"--hero-cols":z}},children:[K1("div",{"data-hero-gallery":f,"data-hero-fit":v,className:f==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:u==="imageRight"?{order:2}:void 0,children:[K1("div",{className:f==="tiled"?"min-w-0 flex-1":void 0,children:[z1($81,{name:e.name,view:U,angleIdx:Z,onSelect:F,isLight:s0,onLightbox:a,fit:v}),U.galleryHint&&z1("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:U.galleryHint})]}),f!=="main"&&z1(Y81,{name:e.name,view:U,angleIdx:Z,onSelect:F,isLight:s0,tiled:f==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",g==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:u==="imageRight"?{order:1}:void 0,children:[K1("div",{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:[z1("span",{children:z1(ch,{text:e.eyebrow})}),e.badge&&K1(n5,{children:[z1("span",{children:"\xB7"}),z1("span",{children:e.badge})]})]}),z1("h1",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",children:(()=>{let X=U.heading.lastIndexOf(" ");if(X===-1)return U.heading;let C1=U.heading.slice(0,X),h0=U.heading.slice(X+1);return K1(n5,{children:[C1," ",K1("em",{className:"font-normal italic text-accent",children:[h0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&y0,A1,d0.map(X=>z1(UB,{row:X,onPick:k},X.key)),W&&U.preOrder?K1(n5,{children:[c==="belowSpecs"&&h&&y0,U.preOrder]}):K1(n5,{children:[T0,o0.map(X=>z1(UB,{row:X,onPick:k},X.key)),n&&z1(j81,{facts:c1}),(K.packs.length>0||K.extra||K.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[K.packs.length>0&&K1(n5,{children:[z1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),z1("div",{className:"flex flex-wrap gap-1.5",children:K.packs.map(X=>K1("button",{type:"button",onClick:()=>E(C1=>({...C1,unit:X.value})),"aria-pressed":R.unit===X.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",R.unit===X.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:R.unit===X.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[R.unit===X.value&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:X.label})]},X.value))})]}),K.extra&&K1("label",{className:`${K.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:[z1("input",{type:"checkbox",checked:R.spares>0,onChange:X=>E(C1=>({...C1,spares:X.target.checked?cr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),K.extra.label]}),K.spareCounts.length>0&&K1(n5,{children:[z1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:K8.howMany}),z1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:K.spareCounts.map(X=>{let C1=X.value-t7,h0=R.spares===C1;return K1("button",{type:"button",onClick:()=>E(V0=>({...V0,spares:C1})),"aria-pressed":h0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",h0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:h0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[h0&&z1("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:[X.value," \xB7 ",X.label]})]},X.value)})})]}),K.spareSide&&K1(n5,{children:[z1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:K.spareSide.label}),z1("div",{className:"flex flex-wrap gap-1.5",children:K.spareSide.options.map(X=>{let C1=R.spareSide===X.value;return K1("button",{type:"button",onClick:()=>E(h0=>({...h0,spareSide:X.value})),"aria-pressed":C1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",C1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:C1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[C1&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:X.label})]},X.value)})})]})]}),c==="belowSpecs"&&h&&y0,K1("div",{className:kB,children:[!(f1&&!Y.priced)&&z1(Da,{value:M,onChange:A,size:"large"}),f1&&!Y.priced?z1(S1,{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:rr}):Y.priced?q?z1("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",[re]:"",onClick:()=>{if(!r1){N(!0),window.setTimeout(()=>N(!1),W81);return}if(N(!1),s)return;let X=FV(e,V,x,{choice:R,qty:M},{fitmentLabel:B?U.specCaption:P.appliedName?`For ${P.appliedName}`:"",fitmentKey:B?`manual|${U.specCaption}`:`vehicle|${U81(P.applied?.vehicle)}`});X&&($1(X),w2())},"aria-disabled":!r1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",r1?"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:r1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",Y.setTotal!=null?` \xB7 ${B2(e1,x1)}`:""]}):z1("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:a7}),z1(X81,{slug:e.slug,name:e.name})]}),q&&V&&z1(J81,{partNumbers:V.components.map(X=>X.partNumber),productSlug:e.slug},V.id),T&&(()=>{let X=P0.filter(h0=>h0.chosen===null).map(h0=>h0.prompt.replace(/^Select\s+/i,""));if(T0&&U.vehicleAnswersSpecs&&!t.fitmentSet&&X.push("vehicle fitment"),X.length===0)return null;let C1=X.length===1?X[0]:X.length===2?`${X[0]} and ${X[1]}`:`${X.slice(0,-1).join(", ")}, and ${X.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 ",C1," first."]})})()]}),p1.length>0&&z1("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:p1.map((X,C1)=>K1("li",{children:[z1("strong",{className:"font-bold text-accent",children:X.label}),X.detail?` ${Wa} ${X.detail}`:""]},`${X.label}-${C1}`))})]})]})]})}function j81({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[z1("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"]}),z1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),z1("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 UB({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]",[WB]: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 ",z1("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," ",z1(S1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?z1("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&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),z1("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)})}):z1("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&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&z1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function KB(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var K81=6;function $81({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=EB(t.photos,o),n=KB(t),h=n>=2,m=String(n).padStart(2,"0"),p=Math.min(a,Math.max(t.photos.length-1,0)),u=h||t.captions[p]?sh(t,p):"",g=[e,t.metaValue,u].filter(Boolean).join(" \u2014 "),d="max-[720px]:static",f=["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 ${d} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(n5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),z1("span",{className:"text-fg-dim",children:"\xB7"})]}),z1("span",{children:e}),t.metaValue&&K1(n5,{children:[z1("span",{className:"text-fg-dim",children:"\xB7"}),z1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&z1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${d}`,children:PB(a,n,s).map(z=>z1("button",{type:"button","aria-label":z.label,title:z.label,onClick:z.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:z.glyph},z.label))}),K1("div",{className:f,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((z,x)=>z1("span",{className:`absolute ${z} h-3 w-3 border border-fg-dim/40`,style:{borderTop:z.includes("top")?"1px solid var(--site-line)":"none",borderBottom:z.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:z.includes("left")?"1px solid var(--site-line)":"none",borderRight:z.includes("right")?"1px solid var(--site-line)":"none"}},x)),t.stageImage({photo:i,alt:g,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,g),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 ${d} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[z1("span",{children:t.specCaption}),z1("span",{children:t.originCaption})]})]})}function Y81({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=KB(t);return r<2?null:z1("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,K81)}, 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 ${sh(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:[z1("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 ${sh(t,i)}`})]},i)})})}function X81({slug:e,name:t}){let{has:a,toggle:s}=qB(),c=a(e);return z1("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 J81({partNumbers:e,productSlug:t}){let[a,s]=jB(""),{status:c,submit:l,reset:r}=_i();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?z1("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."}):z1(Hc,{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 t91,jsx as Tc,jsxs as a91}from"react/jsx-runtime";function Af({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=$B(null),[i,n]=$B(!1);return Q81(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?g0.getTyre(e).then(p=>({kind:"tyre",tyre:p})):g0.getWheel(e).then(p=>({kind:"wheel",wheel:p}))).then(p=>{h||o(p)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?Tc(M4,{size:"tall",children:"Couldn\u2019t load this product."}):r?Tc(e91,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):Tc(M4,{size:"tall",children:"Loading product\u2026"})}function e91({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?nn(e.tyre):Gs(e.wheel),r=mc(l,{editing:t}),o=hc();return a91(t91,{children:[Tc(ta,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),Tc(Tt,{item:o.item,onClose:o.close})]})}import{Fragment as r91,jsx as Q7,jsxs as o91}from"react/jsx-runtime";var s91=R3;function lh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=Y0();return Q7(x2,{kinds:s91,type:"ProductHero",editing:e,children:c?Q7(ta,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?Q7(c91,{pricePlacement:t,showVehicleFitment:a,...s}):Q7(M4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function c91({pricePlacement:e,showVehicleFitment:t,...a}){let s=v3(!0);return s?Q7(l91,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):Q7(M4,{size:"tall",children:"Loading sample product\u2026"})}function l91({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=mc(e,{editing:!0}),l=hc();return o91(r91,{children:[Q7(ta,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),Q7(Tt,{item:l.item,onClose:l.close})]})}import{jsx as Pc}from"react/jsx-runtime";function i91({source:e,editing:t=!1,pricePlacement:a=Dt,showVehicleFitment:s=!0,heroLayout:c=j7,imageRatio:l=K7,textAlign:r=n9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=$7,imageFit:h=Y7}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return Y0()||t&&D2()?Pc(lh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Pc(Af,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Pc(M4,{size:"tall",children:"Pick a product in the panel to fill this hero."}):Pc(lh,{pricePlacement:a,showVehicleFitment:s,...m})}var YB={label:"Product Hero",defaultProps:{source:null,pricePlacement:Dt,showVehicleFitment:!0,heroLayout:j7,imageRatio:K7,textAlign:n9,showSpecTable:!0,showPriceQuote:!0,galleryMode:$7,imageFit:Y7},render:e=>Pc(i91,{source:e.source,editing:e.puck?.isEditing,pricePlacement:XI(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Ot(e.heroLayout),imageRatio:An(e.imageRatio),textAlign:Ln(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:Hn(e.galleryMode),imageFit:Fn(e.imageFit)})};import{jsx as n91}from"react/jsx-runtime";var XB={label:"Product",defaultProps:{code:"",finish:""},render:e=>n91(xv,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as h91}from"react/jsx-runtime";var JB={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>h91(BR,{style:e,editing:t?.isEditing})};import{useEffect as p91,useRef as u91}from"react";import{jsx as Ec,jsxs as QB}from"react/jsx-runtime";var m91={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function Hf({variants:e,answer:t,loading:a=!1}){return t?QB("div",{className:"mt-9",children:[Ec("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Jn(t)}),Ec("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ba(t,s.sku),l=m91[c];return QB("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Ec("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Ec("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Qn[c]})]},s.sku)})})]}):a?Ec("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 Ff,jsxs as eZ}from"react/jsx-runtime";var Tf="Will it fit *your car?*",Pf="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",Ef="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",Vf="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 Nf({num:e,title:t=Tf,description:a=Pf,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=N4({autoApply:!0}),{answer:h,loading:m}=Xn(r,so(n.applied?.vehicle)),p=u91(i);return p.current=i,p91(()=>{p.current?.(h)},[h]),eZ("section",{className:l?Vf:Ef,children:[l?null:Ff(Q1,{num:e,title:t,description:a,accent:!0}),Ff(K3,{cascade:n.cascade}),s&&c?eZ("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,Ff(Hf,{variants:o,answer:h,loading:m})]})}import{jsx as Vc,jsxs as v91}from"react/jsx-runtime";var d91=["tyre"];function _f(e){return Vc(x2,{kinds:d91,type:"TyreFitment",editing:e.editing,children:Vc(g91,{...e})})}function g91({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=Y0(),i=v3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?v91("section",{className:l?Vf:Ef,children:[l?null:Vc(Q1,{num:e,title:t||Tf,description:a||Pf,accent:!0}),Vc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:"The vehicle question appears here on a tyre product page, with one verdict per size."})]}):null:Vc(Nf,{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 f91}from"react/jsx-runtime";var tZ={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=t1(e.escapeText),c=t1(e.escapeHref);return f91(_f,{num:a(y(e.num,j0.num,e.puck)),title:a(y(e.title,L.sectionHeading,e.puck)),description:a(y(e.description,L.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as e8,jsxs as cZ}from"react/jsx-runtime";var aZ="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",sZ="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",b91=[],x91=["tyre"];function If(e){return e8(x2,{kinds:x91,type:"TyreSizes",editing:e.editing,children:e8(z91,{...e})})}function z91({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=Y0(),r=v3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:e8(Q1,{num:e?C(e):void 0,title:$(t||"Available *sizes.*",!1),description:C(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?cZ("section",{className:c?sZ:aZ,children:[n,e8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:"This product\u2019s sizes appear here on a product page."})]}):null;let h=i.some(m=>!m.image);return cZ("section",{className:c?sZ:aZ,children:[n,e8(y91,{variants:i,fieldUsage:l?.fieldUsage??b91}),e8(t5,{text:h?to:""})]})}function y91({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=p0();return e8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>e8(ic,{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 w91}from"react/jsx-runtime";var lZ={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return w91(If,{num:a(y(e.num,j0.num,e.puck)),title:a(y(e.title,L.sectionHeading,e.puck)),description:a(y(e.description,L.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var rZ={AlloyWheelsListing:dN,BrandStrip:FR,BundleOffer:NR,CartBlock:OR,CatalogFilterBar:tB,CheckoutCTA:VN,CollectionCard:sB,Collections:ZN,CompatibleTyres:f_,CountrySwitchBlock:cB,DeliveryOptions:y_,DetailRows:__,EuTyreLabel:lB,FitmentFinder:G_,FitmentTable:nI,Gallery:fI,GalleryB:LI,GalleryItem:rB,Header:CB,ProductGrid:qI,ProductHero:YB,ProductRef:XB,RelatedProducts:rR,SearchBlock:JB,SpecTable:wR,TyreFitment:tZ,TyreSizes:lZ};var C91={AlloyWheelsListing:fN,BrandStrip:wN,BundleOffer:CN,CartBlock:kN,CatalogFilterBar:PN,CheckoutCTA:NN,CollectionCard:RN,Collections:ON,CompatibleTyres:b_,CountrySwitchBlock:x_,DeliveryOptions:C_,DetailRows:R_,EuTyreLabel:B_,FitmentFinder:q_,FitmentTable:hI,Gallery:zI,GalleryB:AI,GalleryItem:VI,Header:NI,ProductGrid:UI,ProductHero:eR,ProductRef:lR,RelatedProducts:oR,SearchBlock:iR,SpecTable:kR,TyreFitment:MR,TyreSizes:SR},W0=je(rZ,C91);import{jsx as g4,jsxs as rh}from"react/jsx-runtime";function Bf(e={}){let t=zw();return g4(tL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:g4(k91,{...e})})}var oZ="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]",Rf="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function k91({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:p,requiresPayment:u,date:g,earliestDate:d,setDate:f,setDateTouched:v,availability:z,loadingSlots:x,noSlotsMessage:k,selectedStart:M,setSelectedStart:A,customerTimezone:R,name:E,setName:Z,email:F,setEmail:T,phone:N,setPhone:B,notes:P,setNotes:O,confirmation:c1,submitting:V,error:q,canSubmit:K,handleSubmit:W,sample:r1}=f7(),x1=r1?g4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:"Example form \u2014 add an active service in Storefront \u2192 Booking Services."}):null,Y=n===void 0?g4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?g4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?"Add an active service in Storefront \u2192 Booking Services.":"Appointments are not available right now."}):null;return r&&l?g4("section",{className:"relative z-[2] border-t border-line bg-surface",children:rh("div",{className:oZ,children:[x1,c1?g4(l,{className:`${Rf} items-start`}):rh("form",{onSubmit:W,children:[g4(l,{className:`${Rf} items-start`}),Y]})]})}):g4("section",{className:"relative z-[2] border-t border-line bg-surface",children:rh("div",{className:oZ,children:[x1,g4(So,{eyebrow:e,heading:t,intro:a}),c1?g4(Ho,{successMessage:c}):Y||rh("form",{onSubmit:W,className:Rf,children:[g4(Lo,{}),g4(Ao,{buttonLabel:s})]})]})})}import{jsx as M91}from"react/jsx-runtime";var Zf={boxes:{type:"slot",allow:["BookingBox"]}},iZ={label:"Booking Form",fields:Zf,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>M91(Bf,{eyebrow:y(e.eyebrow,L.eyebrow,e.puck),heading:y(e.heading,L.heading,e.puck),intro:y(e.intro,L.body,e.puck),buttonLabel:y(e.buttonLabel,L.button,e.puck),successMessage:y(e.successMessage,L.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var nZ={fields:{_gContent:b("Content"),eyebrow:G("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:G("Submit button"),successMessage:E1("Confirmation message"),boxes:Zf.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 hZ={fields:{_gTextStyle:b("Text style"),...Object.fromEntries(Fo.map(e=>[To[e],g1($p[e],Oe($p[e]),[{label:"Section's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gContent:b("Content"),eyebrow:G("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:G("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Fo.map(r=>To[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 S91,LinkIcon as mZ,EyeOffIcon as L91}from"efficient-easel/icons";import{jsx as Nc}from"react/jsx-runtime";var pZ={fields:{_gTop:b("Routing groups"),routingNumber:H("Section number",v0.routingNumber),routingTagline:H("Eyebrow",v0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:G("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:G("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||"Group"},_gForm:b("Message form"),formSlug:F5(),formNumber:H("Section number",v0.formNumber),formHeading:D("Heading",v0.formHeading),metaItems:F2("Meta lines",Nc(e4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:b("\u201COther\u201D reason"),showOther:s1("Show \u201COther\u201D reason",v0.showOther,Nc(S91,{})),otherLabel:G("\u201COther\u201D chip label",v0.otherLabel),otherNoteTitle:H("\u201COther\u201D note title",v0.otherNoteTitle),otherNoteBody:D("\u201COther\u201D note body",v0.otherNoteBody),_gSubmit:b("Submit button"),buttonText:G("Submit button",v0.buttonText),consent:D("Consent line",v0.consent),_gChannels:b("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:G("Label"),value:G("Value"),href:J2(G("Link")),sub:G("Sub line"),groupId:g1("Link to group",Nc(mZ,{}),[{label:"\u2014 Not linked \u2014",value:""},...v0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:s1("Hidden",!1,Nc(L91,{}))},getItemSummary:e=>`${e?.label||e?.value||"Channel"}${e?.hidden?" \xB7 hidden":""}`}},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=lu(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||`Group ${o+1}`,value:r?.id||lu(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",Nc(mZ,{}),s,"")}}),t}};import{useEffect as A91,useRef as H91,useState as F91}from"react";import{Fragment as N91,jsx as Df,jsxs as _91}from"react/jsx-runtime";var T91=12,oh=null,uZ=null;function P91(e=!1){let t=i2();if((e||uZ!==t)&&(oh=null),!oh){let a=N3();uZ=t,oh=X1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return oh}function E91(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 V91(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?w9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:E91(e.published_at)||void 0}}function p9({value:e,onChange:t,snapshotCount:a=T91}){let[s,c]=F91("idle"),l=Array.isArray(e),r=l?e.length:0,o=H91(!0),i=h=>{c("loading"),P91(h).then(m=>{if(!o.current)return;if(m===null){c("error");return}c("idle");let p=m.slice(0,a).map(V91);p6(p,e??null)&&t(p)})};A91(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=s==="loading"?"Syncing from Storefront \u2192 Blog\u2026":s==="error"?"Couldn\u2019t reach Storefront \u2192 Blog.":l?`Auto-synced from Storefront \u2192 Blog \xB7 ${r} post${r===1?"":"s"}`:"Linking to Storefront \u2192 Blog\u2026";return _91("div",{children:[Df(G9,{label:"Blog posts"}),Df(T4,{status:s,statusText:n,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:Df(N91,{children:"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 I91}from"react";import{jsx as R0,jsxs as t8}from"react/jsx-runtime";var dZ=3,fZ="featured",ih="tabs",bZ="portrait",aa="spread",nh="count",xZ=[{label:"Even grid",value:"even"},{label:"Featured first",value:fZ},{label:"Tabs",value:ih},{label:"Photo cards",value:bZ},{label:"Staggered spread",value:aa},{label:"Count",value:nh}],R91=[bZ,aa],zZ="even",N6={min:2,max:11,step:1,fallback:7,unit:"of 12"},B91="bottom-left",Z91=55,D91="bottom";function O91(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(N6.max,Math.max(N6.min,Math.round(t))):N6.fallback;return`${a}fr ${12-a}fr`}var gZ={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"},vZ={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"},G91="Find by name",q91="Nobody by that name.";function W91(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function U91({card:e,scaffold:t,lower:a=!1}){return t8(t0,{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:[R0("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:R0(C0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),R0("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&&R0("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:C(e.meta)}),t8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[R0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:$(e.title,!1)}),e.dateLabel&&R0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:C(e.dateLabel)}),e.excerpt&&R0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:C(e.excerpt)})]})]})}function j91({cards:e,scaffold:t}){return R0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:R0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return R0("li",{children:t8(t0,{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:[R0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:$(a.title,!1)}),a.excerpt&&R0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:C(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function K91({count:e,words:t,href:a}){let s=t8("span",{className:"inline-flex items-baseline gap-3",children:[R0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&R0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?R0(t0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var $91="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]",Y91="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]",X91="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 Of({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:p=!0,featuredDarken:u,omitHead:g=!1,sample:d,nameFilter:f=!1}){let[v,z]=I91(""),x=s??[],k=r?x.length:typeof l=="number"&&l>0?l:dZ,M=x.slice(0,k),A=o&&M.length===0;if(M.length===0&&!o)return null;let R=r?dZ:k,E=A?d?.length?d.slice(0,r?d.length:R):Array.from({length:R},(V,q)=>({slug:`placeholder-${q}`,title:"Blog post title",excerpt:"A short summary of the post appears here.",cover:"",meta:"Journal",dateLabel:"Date"})):M,Z=_3("Events",n,"both"),F=h===fZ&&E.length>1,T=O91(m),N=h===ih,B=h===nh,P=R91.includes(h??""),O=f&&!N&&!B&&!F,c1=O?E.filter(V=>W91(V.title,v)):E;return B?R0("section",{className:X91,children:R0(K91,{count:E.length,words:g||t===void 0?void 0:$(t,!1),href:g?void 0:a?.href})}):t8("section",{className:g?Y91:$91,style:Y2(i),children:[g?null:R0(Q1,{num:e!==void 0?C(e):void 0,title:t!==void 0?$(t,!1):void 0,link:a?{text:C(a.text),href:a.href}:void 0}),O&&t8("div",{className:"mb-6 flex flex-col gap-2",children:[t8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[R0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:G91}),R0("input",{type:"search",value:v,onChange:V=>z(V.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"})]}),c1.length===0&&R0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:q91})]}),N?R0(j91,{cards:E,scaffold:A}):P?R0("div",{className:`sf-card-grid grid${Z.className} ${h===aa?"grid-cols-3 max-[800px]:grid-cols-2":vZ[Math.min(4,Math.max(2,c??3))]??vZ[3]}`,style:Z.style,children:c1.map((V,q)=>R0(U91,{card:V,scaffold:A,lower:h===aa&&q%3===1},`${V.slug}-${q}`))}):F?t8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${Z.className}`,style:{...Z.style,"--sf-events-split":T},children:[R0(lt,{post:E[0],href:E[0].href,scaffold:A,layout:"cover",darken:u??Z91,darkenStyle:D91,placement:B91},`${E[0].slug}-0`),R0("div",{className:`grid auto-rows-min${Z.className}`,style:Z.style,children:E.slice(1).map((V,q)=>R0(lt,{post:V,href:V.href,scaffold:A,showCover:p},`${V.slug}-${q+1}`))})]}):R0("div",{className:`sf-card-grid grid${Z.className} ${gZ[Math.min(4,Math.max(1,c??3))]??gZ[3]}`,style:Z.style,children:c1.map((V,q)=>R0(lt,{post:V,href:V.href,scaffold:A},`${V.slug}-${q}`))})]})}import{LayoutIcon as ie1,ColumnsIcon as ne1,WidthIcon as he1,ImageIcon as me1,OpacityIcon as pe1,ListIcon as ue1,HashIcon as de1,SearchIcon as ge1}from"efficient-easel/icons";import{ListIcon as se1}from"efficient-easel/icons";var hh="dataSource";var J91="dataRows";var Q91=Symbol.for("efficient.block-sources");function Gf(){let e=globalThis;return e[Q91]??={sources:new Map,revision:0}}function qf(e){let t=[...Gf().sources.values()];return e===void 0?t:t.filter(a=>a.blocks.includes(e))}function ee1(e){return Gf().sources.get(e)??null}function mh(){return Gf().revision}function _c(e){let t=e?.[hh];return typeof t=="string"?t.trim():""}function te1(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let t={};for(let[a,s]of Object.entries(e))typeof s=="string"&&s&&(t[a]=s);return Object.keys(t).length?t:null}function ae1(e){let t=e?.[J91];return Array.isArray(t)?t.map(te1).filter(a=>a!==null):null}function yZ(e,t,a=[]){let s=ae1(e);if(s!==null&&(s.length||!t))return{rows:s,sample:!1};if(!t)return{rows:[],sample:!1};let c=ee1(_c(e))?.sample;return{rows:c?.length?c:a,sample:!0}}import{jsx as le1}from"react/jsx-runtime";function SZ(e,t){return g1(e,le1(se1,{}),[{label:t,value:""}],"")}var wZ=new WeakMap,CZ=-1,Wf={},kZ=new WeakMap;function ce1(e,t,a){CZ!==mh()&&(CZ=mh(),Wf={});let s=wZ.get(t);(!s||kZ.get(s)!==Wf)&&(s=new Map,kZ.set(s,Wf),wZ.set(t,s));let c=qf(e),l=a&&!c.some(i=>i.key===a)?a:"",r=`${e}\0${l}`,o=s.get(r);return o||(o={...t,options:[...t.options,...c.map(i=>({label:i.label,value:i.key})),...l?[{label:l,value:l}]:[]]},s.set(r,o)),o}var MZ=new WeakMap;function LZ(e,t,a,s={}){let c=t[hh];if(!c)return t;let l=_c(a),r=qf(e).length>0||l!=="",o=r?ce1(e,c,l):null,i=MZ.get(t);i||MZ.set(t,i=new Map);let n=`${mh()}\0${r?"1":"0"}\0${l}`,h=i.get(n);if(h)return h;let m=new Set(l?s.hides??[]:[]),p={};for(let[u,g]of Object.entries(t))u===hh?o&&(p[u]=o):m.has(u)||(p[u]=g);return i.set(n,p),p}import{jsx as oe1}from"react/jsx-runtime";var u9={num:L.sectionNumber,title:"Section title",link:L.viewAll},re1=[{key:"sample-1",title:"First card",excerpt:"A line about it appears here."},{key:"sample-2",title:"Second card",excerpt:"A line about it appears here."},{key:"sample-3",title:"Third card",excerpt:"A line about it appears here."},{key:"sample-4",title:"Fourth card",excerpt:"A line about it appears here."}],AZ=(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||"#"}),HZ={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=D1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,u9.link,e.puck),l=_c(e)!==""?yZ(e,!!e.puck?.isEditing,re1):null,r=l?l.sample?[]:l.rows.map(AZ):e.posts;return oe1(Of,{num:a(y(e.num,u9.num,e.puck)),title:a(y(e.title,u9.title,e.puck)),link:a(s?{text:s,href:t1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(AZ):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 a8}from"react/jsx-runtime";var ve1=50,FZ={fields:{_gContent:b("Content"),num:H("Number",u9.num),title:D("Heading",u9.title),linkText:H("Button",u9.link),linkHref:H1("Link"),dataSource:SZ("Cards from","Blog posts"),_gPosts:b("Blog posts"),posts:a2(p9,{snapshotCount:ve1}),_gLayout:b("Layout"),layout:g1("Arrangement",a8(ie1,{}),xZ,zZ),columns:a1("Columns",a8(ne1,{}),2,4,1,3),featuredWidth:a1("Featured width",a8(he1,{}),N6.min,N6.max,N6.step,N6.fallback,N6.unit),listCover:s1("Show cover image on the smaller cards",!0,a8(me1,{})),featuredDarken:a1("Darken",a8(pe1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:s1("Filter by name",!1,a8(ge1,{})),gap:I3("Events"),showAll:s1("Show all blog posts",!1,a8(ue1,{})),limit:a1("Posts to display",a8(de1,{}),1,20,1,3),cardImage:Y6()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...LZ("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>O1(W1(o,a,U1),e.props.headPlacement,B1.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===ih||s.layout===nh)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===aa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as ph}from"react/jsx-runtime";import{SettingsDefaultReset as fe1,SettingsField as be1,SettingsSegmented as xe1}from"efficient-easel/panel";import{WidthIcon as ze1}from"efficient-easel/icons";function uh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e;return ph(be1,{label:s,labelId:c,icon:ph(ze1,{}),value:o?l:void 0,changed:!o,action:ph(fe1,{label:s,changed:!o,onReset:()=>a(void 0)}),hint:r,children:ph(xe1,{options:[{label:Gh.page,id:"content"},{label:Gh.full,id:"full"}],value:i,ariaLabel:s,onChange:a})})}import{SettingsField as ye1,SettingsSwitch as we1}from"efficient-easel/panel";import{BlockColumnIcon as Ce1}from"efficient-easel/icons";import{Fragment as ke1,jsx as dh,jsxs as Me1}from"react/jsx-runtime";function Uf({value:e,onChange:t}){let a=y5(),s={...I9,...e},c=s[a];return dh(ye1,{label:"Logo fills its column",icon:dh(Ce1,{}),action:dh(we1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:`Logo fills its column on ${v5[a]}`}),hint:Me1(ke1,{children:["Sets the ",dh("strong",{children:v5[a]})," view \u2014 switch views in the top bar to set each one."]})})}import{SettingsField as Se1,SettingsSwitch as Le1}from"efficient-easel/panel";import{FullWidthIcon as Ae1}from"efficient-easel/icons";import{Fragment as He1,jsx as gh,jsxs as Fe1}from"react/jsx-runtime";function jf({value:e,onChange:t}){let a=y5(),s={...R9,...e},c=s[a];return gh(Se1,{label:"Logo fills its row",icon:gh(Ae1,{}),action:gh(Le1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:`Logo fills its row on ${v5[a]}`}),hint:Fe1(He1,{children:["Sets the ",gh("strong",{children:v5[a]})," view \u2014 switch views in the top bar to set each one."]})})}import{jsx as Te1}from"react/jsx-runtime";function Kf({value:e,onChange:t}){return Te1(Vs,{label:"Columns per line",unit:"columns",steps:Kz,value:Ll(e),onChange:t})}import{useContext as Pe1,useEffect as Ee1,useRef as Ve1,useState as PZ}from"react";import{jsx as sa,jsxs as TZ}from"react/jsx-runtime";function Ic(){let e=RR();return TZ("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:[sa("span",{children:e}),TZ("span",{className:"flex flex-wrap items-center gap-3",children:[sa("span",{children:"Privacy"}),sa("span",{"aria-hidden":!0,children:"\xB7"}),sa("span",{children:"Terms"}),sa("span",{"aria-hidden":!0,children:"\xB7"}),sa("span",{children:"Cookies"})]})]})}import{jsx as $f,jsxs as Ie1}from"react/jsx-runtime";var EZ={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},Ne1={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"},_e1={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 Yf({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=Pe1(ga),{desktop:o,tablet:i,mobile:n}=Ll(s),{desktop:h,tablet:m,mobile:p}={...I9,...c},{desktop:u,tablet:g,mobile:d}={...R9,...l},f=y5(),z=t?EZ[f==="desktop"?o:f==="tablet"?i:n]:`${EZ[n]} ${Ne1[i]} ${_e1[o]}`,x=Ve1(null),[k,M]=PZ(1),[A,R]=PZ(!1);if(Ee1(()=>{if(!t&&!r)return;let Z=x.current;if(!Z)return;let F=()=>{let c1=Z.querySelector(".footer-block-grid");if(!c1)return;let V=t?f:Qz(window.innerWidth),q=V==="desktop"?u:V==="tablet"?g:d;R(q);let K=V==="desktop"?h:V==="tablet"?m:p,W=getComputedStyle(c1).gridTemplateColumns.split(" ").filter(Boolean).length-1,r1=Math.max(c1.childElementCount-1,0);M(!q&&K&&W>=1?Math.max(Math.ceil(r1/W),1):1)},T,N=()=>{clearTimeout(T),T=setTimeout(F,0)},B=[0,80,250,600].map(c1=>setTimeout(F,c1)),P=new MutationObserver(N);P.observe(Z,{childList:!0,subtree:!0});let O=new ResizeObserver(N);return O.observe(Z),()=>{clearTimeout(T),B.forEach(clearTimeout),P.disconnect(),O.disconnect()}},[o,i,n,t,r,f,h,m,p,u,g,d]),!t&&!r)return null;let E=gl(vl(a))??void 0;return $f("footer",{ref:x,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":A?"1 / -1":"1"},children:Ie1("div",{style:E,children:[$f(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${z}`,minEmptyHeight:160}),$f(Ic,{})]})})}import{jsx as Re1}from"react/jsx-runtime";var Xf={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},VZ={label:"Footer",fields:Xf,defaultProps:{columns:$z,logoFill:I9,logoRowFill:R9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>Re1(Yf,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as vh}from"react/jsx-runtime";var NZ={fields:{_gLayout:b("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>vh(uh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:"Follows the page",hint:"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})=>vh(Kf,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>vh(Uf,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>vh(jf,{value:e,onChange:t})},_gBlocks:b("Blocks"),blockList:c2("Footer"),blocks:Xf.blocks}};import{WeightIcon as Be1,WidthIcon as Ze1,PhoneIcon as De1}from"efficient-easel/icons";import{jsx as Jf}from"react/jsx-runtime";var _Z={fields:{_gStyle:b("Style"),thickness:a1("Thickness",Jf(Be1,{}),1,8,1,1,"px"),lengthPct:a1("Length",Jf(Ze1,{}),10,100,1,100,"%"),hideOnMobile:s1("Hide on mobile",!1,Jf(De1,{}))}};var IZ={fields:{_gContent:b("Content"),heading:E1("Heading","Join our email list"),placeholder:G("Field placeholder","Email address"),buttonLabel:G("Button","Subscribe")}};import{AlignLeftIcon as qe1}from"efficient-easel/icons";import{jsx as RZ}from"react/jsx-runtime";var Oe1={start:"items-start",center:"items-center",end:"items-end"};function Qf({direction:e="vertical",gap:t,align:a="start",content:s}){let c=_3("FooterGroup",t,e==="horizontal"?"inline":"block");return RZ("div",{className:"min-w-0",children:RZ(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${Oe1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as Ge1}from"react/jsx-runtime";var eb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},BZ={label:"Footer Box",fields:eb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>Ge1(Qf,{direction:e,gap:t,align:a,content:s})};import{jsx as We1}from"react/jsx-runtime";var ZZ={fields:{_gLayout:b("Layout"),direction:b1("Direction",h8("`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:I3("FooterGroup"),align:b1("Alignment",We1(qe1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:b("Blocks"),blockList:c2("FooterGroup"),blocks:eb.blocks}};import{WidthIcon as Ue1,AlignLeftIcon as je1,LogoIcon as Ke1,PaddingTopIcon as $e1,PaddingRightIcon as Ye1,PaddingBottomIcon as Xe1,PaddingLeftIcon as Je1}from"efficient-easel/icons";import{jsx as d9}from"react/jsx-runtime";var DZ={fields:{_gContent:b("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:b("Style"),widthPct:a1("Width",d9(Ue1,{}),40,400,1,100,"%"),align:b1("Alignment",d9(je1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:b1("Logo color",d9(Ke1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:a1("Padding top",d9($e1,{}),0,120,2,0,"px"),padRight:a1("Padding right",d9(Ye1,{}),0,120,2,0,"px"),padBottom:a1("Padding bottom",d9(Xe1,{}),0,120,2,0,"px"),padLeft:a1("Padding left",d9(Je1,{}),0,120,2,0,"px")}};import{Button as Qe1}from"efficient-shell/ui";import{SettingsField as et1}from"efficient-easel/panel";import{FieldSelect as tt1}from"efficient-easel/fields";import{MenuIcon as at1}from"efficient-easel/icons";import{useCallback as st1,useEffect as OZ,useState as tb}from"react";import{jsx as ca,jsxs as ab}from"react/jsx-runtime";function sb({value:e,onChange:t}){let[a,s]=tb(null),[c,l]=tb(!1),r=st1(v=>{s(v),l(!0)},[]);OZ(()=>{let v=!1;return $m(N3()).then(z=>{v||r(z)}).catch(()=>{v||s([])}),()=>{v=!0}},[r]),OZ(()=>{let v=!1,z=uM(()=>{yk(N3()).then(x=>{v||r(x)}).catch(()=>{})});return()=>{v=!0,z()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Vr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Vr(a??[],e)?.id??"",p=v=>t({id:v.id,handle:v.handle,name:v.name,items:v.items.map(z=>({label:z.label,url:z.url}))}),u=v=>{if(!v){t(null);return}let z=(a??[]).find(x=>x.id===v);z&&p(z)},[g,d]=tb(!1),f=()=>{i&&(d(!0),$m(N3(),!0).then(v=>{r(v);let z=Vr(v,e);z&&p(z)}).catch(()=>{}).finally(()=>d(!1)))};return ab("div",{children:[ca(et1,{label:"Menu",icon:ca(at1,{}),hint:!o&&a&&a.length===0?"Create menus in Storefront \u2192 Menus, then pick one here.":void 0,children:ca(tt1,{value:m,ariaLabel:"Menu",onChange:u,readOnly:o||(a?.length??0)===0,options:[{label:o?"Loading menus\u2026":a&&a.length===0?"No menus found":"Select a menu\u2026",value:""},...(a??[]).map(v=>({label:`${v.name} (${v.item_count??v.items.length})`,value:v.id}))]})}),h?ca("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:pk}):null,n?ca("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:uk(e?.name??"The linked menu")}):null,i&&!n?ab("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[ab("p",{className:"text-[12px] text-fg-dim",children:["Linked to \u201C",e?.name,"\u201D \u2014 ",e?.items?.length??0," link",(e?.items?.length??0)===1?"":"s",". Re-pull after editing the menu:"]}),ca(Qe1,{variant:"link",size:"sm",className:"shrink-0",onClick:f,disabled:g,children:g?"Updating\u2026":"Update links"})]}):null]})}import{PhoneIcon as ct1,LineBetweenIcon as lt1}from"efficient-easel/icons";import{jsx as cb}from"react/jsx-runtime";var GZ={fields:{_gContent:b("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>cb(sb,{value:e,onChange:t})},heading:G("Heading","Column heading"),_gStyle:b("Style"),accordionMobile:s1("Show as accordion on mobile",!1,cb(ct1,{})),showDividers:s1("Dividers between links",!1,cb(lt1,{}))}};import{jsx as Rc}from"react/jsx-runtime";var qZ={small:16,medium:20,large:24},lb=0,rb=32,UZ=2,Bc=0,WZ={start:"justify-start",center:"justify-center",end:"justify-end"};function ob({iconStyle:e=ee,iconSize:t="medium",align:a="start",gap:s=Bc,editing:c=!1}){let l=_R(),r=Ey(Py(l));if(r.length===0)return c?Rc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:"Add your social links"}):null;let o=qZ[t]??qZ.medium,n={gap:Math.min(rb,Math.max(lb,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return Rc("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)] ${WZ[a]??WZ.start}`,style:n,children:r.map(({platform:h,href:m,label:p})=>Rc("li",{children:Rc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${p} (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:Rc(qy,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as rt1}from"efficient-shell/ui";import{Fragment as ot1,jsx as ib,jsxs as it1}from"react/jsx-runtime";function nb(){let{openPanel:e}=Wl();return it1(ot1,{children:[ib(G9,{label:"Social links"}),ib("p",{className:"es-field-hint sf-hint-keep",children:"The links are typed once for the whole website, in Site settings."}),ib(rt1,{variant:"link",size:"sm",onClick:e,children:"Edit social links \u2192"})]})}import{StylesIcon as nt1,TextSizeIcon as ht1,AlignLeftIcon as mt1,GapIcon as pt1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var jZ={fields:{_gStyle:b("Style"),iconStyle:b1("Icon style",Zc(nt1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],ee),iconSize:b1("Icon size",Zc(ht1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Zc(nb,{})},_gLayout:b("Layout"),align:b1("Alignment",Zc(mt1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:a1("Gap",Zc(pt1,{}),lb,rb,UZ,Bc,"px")}};import{TextSizeIcon as ut1}from"efficient-easel/icons";import{jsx as dt1}from"react/jsx-runtime";var KZ={fields:{_gContent:b("Content"),text:E1("Body","Footer text"),_gStyle:b("Style"),size:b1("Size",dt1(ut1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:Co()}};var $Z={fields:{_gForm:b("Form"),formSlug:F5(),_gContent:b("Content"),heading:G("Heading override"),intro:E1("Intro"),submitText:G("Submit button"),finePrint:G("Fine print")}};var YZ={fields:{}};var fh="e.g. D00123 \xB7 blank = the whole store";import{useState as s8}from"react";import{Fragment as ft1,jsx as o3,jsxs as Dc}from"react/jsx-runtime";var bh="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",gt1="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))]",vt1="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 hb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=s8(""),[o,i]=s8(""),[n,h]=s8(0),[m,p]=s8(""),[u,g]=s8(""),[d,f]=s8(!1),[v,z]=s8(!1),[x,k]=s8(null);async function M(A){if(A.preventDefault(),!(c||d)){if(n<1){k("Choose a star rating.");return}f(!0),k(null);try{await g0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:u.trim(),...a?.trim()?{designCode:a.trim()}:{}}),z(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{f(!1)}}}return o3("section",{className:"relative z-[2] border-t border-line bg-surface",children:Dc("div",{className:s?vt1:gt1,children:[s?null:Dc(ft1,{children:[(e??"").trim()&&o3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&o3("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:$(t??"",!1)})]}),v?o3("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."}):Dc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:M,children:[Dc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[o3(Z2,{label:"Name",required:!0,children:o3("input",{type:"text",required:!0,value:l,onChange:A=>r(A.target.value),className:bh})}),o3(Z2,{label:"Email \u2014 never shown publicly",children:o3("input",{type:"email",value:o,onChange:A=>i(A.target.value),className:bh})})]}),Dc("div",{className:"flex flex-col gap-2",children:[o3(v8,{required:!0,children:"Rating"}),o3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(A=>o3("button",{type:"button","aria-pressed":n>=A,"aria-label":`${A} star${A===1?"":"s"}`,onClick:()=>{h(A),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=A?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},A))})]}),o3(Z2,{label:"Review title (optional)",children:o3("input",{type:"text",value:m,onChange:A=>p(A.target.value),className:bh})}),o3(Z2,{label:"Your review",required:!0,children:o3("textarea",{required:!0,rows:5,value:u,onChange:A=>g(A.target.value),className:bh+" resize-y"})}),x&&o3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:x}),o3("button",{type:c?"button":"submit",disabled:d,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:d?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as bt1}from"react/jsx-runtime";var Oc={eyebrow:"Your turn",title:"Leave a *review.*"},XZ={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return bt1(hb,{eyebrow:a(y(e.eyebrow,Oc.eyebrow,e.puck)),title:a(y(e.title,Oc.title,e.puck)),omitHead:t,designCode:t1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var JZ={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",Oc.eyebrow),title:D("Heading",Oc.title),_gSource:b("Reviews"),designCode:J2(G("Design code",fh))},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.ReviewForm.headRows)};import{StylesIcon as Lt1,HashIcon as At1,ColumnsIcon as Ht1}from"efficient-easel/icons";import{useEffect as xt1,useState as zt1}from"react";function QZ(e,t){let[a,s]=zt1(null);return xt1(()=>{let c=!1;return s(null),g0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as Mt1,jsx as Z4,jsxs as xh}from"react/jsx-runtime";var eD=[{id:"sample-review-1",authorName:"Sample reviewer",rating:5,title:"Sample review title",body:"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:"Sample reviewer",rating:4,title:"",body:"Reviews are collected by the Review Form section and wait for your approval before they show.",designCode:"",createdAt:""},{id:"sample-review-3",authorName:"Sample reviewer",rating:5,title:"Another sample",body:"Set a product design code on this section to show one product's reviews; leave it blank for the whole store.",designCode:"",createdAt:""}];function yt1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function wt1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return Z4("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)=>Z4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Ct1="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))]",kt1="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 mb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=QZ(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=i&&i.length>0?i:o?eD:[],m=h===eD;return!o&&h.length===0?null:Z4("section",{className:"relative z-[2] border-t border-line bg-surface",children:xh("div",{className:r?kt1:Ct1,children:[r?null:xh(Mt1,{children:[(t??"").trim()&&Z4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&Z4("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:$(a??"",!1)})]}),Z4("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:h.map(p=>xh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",m?"opacity-60":""].join(" "),children:[Z4(wt1,{rating:p.rating}),p.title.trim()&&Z4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:p.title}),Z4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:b0(p.body).map((u,g)=>Z4("p",{className:g?"mt-3":"",children:u},g))}),xh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[Z4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:p.authorName}),Z4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:yt1(p.createdAt)})]})]},p.id))})]})})}import{jsx as St1}from"react/jsx-runtime";var Gc={eyebrow:"Reviews",title:"From our *customers.*"},tD={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return St1(mb,{look:s4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,Gc.eyebrow,e.puck)),title:a(y(e.title,Gc.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:t1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as pb}from"react/jsx-runtime";var aD={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",Gc.eyebrow),eyebrowLook:g1("Eyebrow style",pb(Lt1,{}),[...y4],J6("Reviews")),title:D("Heading",Gc.title),_gSource:b("Reviews"),limit:a1("Reviews to display",pb(At1,{}),3,12,1,6),designCode:J2(G("Design code",fh)),_gStyle:b("Style"),columns:a1("Columns",pb(Ht1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.Reviews.headRows)};import{FullWidthIcon as Pt1}from"efficient-easel/icons";import{jsx as ub,jsxs as Ft1}from"react/jsx-runtime";function qc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=Ft1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":dB(c),"data-header-menu-row":gB(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?ub("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?"Site header \u2014 above every page":"Site footer \u2014 below every page"}):null,ub(t,{minEmptyHeight:120})]});return e==="header"?ub(vk,{children:o}):o}import{jsx as Tt1}from"react/jsx-runtime";var db={sections:{type:"slot"}},sD={label:"Site Footer",fields:db,render:({sections:e,fullWidth:t,puck:a})=>Tt1(qc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as Et1}from"react/jsx-runtime";var cD={fields:{fullWidth:s1("Full width",!1,Et1(Pt1,{})),sections:db.sections}};import{CaseIcon as Nt1,ContrastIcon as _t1,FullWidthIcon as It1,HeightIcon as Rt1,LayoutIcon as Bt1,StickyIcon as Zt1}from"efficient-easel/icons";import{jsx as Vt1}from"react/jsx-runtime";var gb={sections:{type:"slot"}},lD={label:"Site Header",fields:gb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>Vt1(qc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as la}from"react/jsx-runtime";var{sectionAccent:Dt1}=q9(e=>pf(e)??pB,"Follow the site theme"),rD={fields:{heightPx:a1("Height",la(Rt1,{}),w5.min,w5.max,2,w5.default,"px"),fullWidth:s1("Full width",!1,la(It1,{})),sectionAccent:Dt1,topTextColor:b1("Text color at the top",la(_t1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:b1("Letters",la(Nt1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:b1("Menu row",la(Bt1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:b1("Sticky header",la(Zt1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:gb.sections}};import{jsx as zh,jsxs as Ot1}from"react/jsx-runtime";var z0={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 Wc(e,t){return e===void 0?t:e}function vb({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=Wc(e,z0.eyebrow),p=Wc(t,z0.title),u=Wc(a,z0.body),g=Wc(s,z0.buttonText),d=Wc(c,z0.consent),f=L5(l,r),v=n7({form:f,formSlug:l,editing:o}),z=f===void 0,x=!!f||o;return!x&&!m&&!p&&!u?null:n&&i?zh("section",{className:N0(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:zh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):Ot1("section",{className:N0(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:[zh(pL,{eyebrow:m,title:p}),zh(Po,{body:u,buttonLabel:g,consent:d,form:f,submission:v,showForm:x,resolving:z,editing:o})]})}var oD={fields:{_gTextStyle:b("Text style"),...Object.fromEntries(Eo.map(e=>[Vo[e],g1(Qp[e],Oe(Qp[e]),[{label:"Section's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gContent:b("Content"),eyebrow:H("Eyebrow",z0.eyebrow),title:D("Heading",z0.title),body:D("Body",z0.body),formSlug:F5(),buttonText:H("Button",z0.buttonText),consent:D("Consent line",z0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Eo.map(n=>Vo[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 Gt1}from"react/jsx-runtime";var fb={boxes:{type:"slot",allow:["SubmitBox"]}},iD={label:"Photo Submission Form",fields:fb,defaultProps:{eyebrow:z0.eyebrow,title:z0.title,body:z0.body,formSlug:"",buttonText:z0.buttonText,consent:z0.consent},render:e=>Gt1(vb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:Q0(e.eyebrow,z0.eyebrow,e.puck),title:Q0(e.title,z0.title,e.puck),body:Q0(e.body,z0.body,e.puck),buttonText:Q0(e.buttonText,z0.buttonText,e.puck),consent:Q0(e.consent,z0.consent,e.puck),formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var nD={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",z0.eyebrow),title:D("Heading",z0.title),body:D("Body",z0.body),_gForm:b("Form"),formSlug:F5(),_gButton:b("Button"),buttonText:H("Button",z0.buttonText),_gFootnote:b("Footnote"),consent:D("Consent line",z0.consent),boxes:fb.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,...p}=t;return p}};var qt1=["issues","posts"],hD=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],bb="issues";function xb(e){return qt1.includes(e)?e:bb}var Wt1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function mD(e,t){let a=xb(t),s={...e};for(let[c,l]of Object.entries(Wt1))l.includes(a)||delete s[c];return s}import{CategoryIcon as jt1,HashIcon as Kt1}from"efficient-easel/icons";var B0={headNum:L.sectionNumber,headTitle:L.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},pD=[{n:"N\xB0 04",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 03",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 02",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 01",title:"Issue title",small:"Short description",date:"Month YYYY"}];function Ut1(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 yh(e,t){if(e==="issues")return y1(t.issues,pD,t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?Ut1(a.slice(0,s)):[];return y1(c,pD,t.puck)}import{jsx as uD}from"react/jsx-runtime";var dD={fields:{_sHead:a0("Section header"),_gHeadCopy:b("Content"),headNum:H("Number",B0.headNum),headTitle:D("Heading",B0.headTitle),headDesc:D("Body",B0.headDesc),_sLeft:a0("Newsletter panel"),_gLeftCopy:b("Content"),kicker:H("Eyebrow",B0.kicker),leadTitle:D("Heading",B0.leadTitle),intro:D("Intro",B0.intro),_gForm:b("Signup form"),emailPlaceholder:G("Email placeholder",B0.emailPlaceholder),submitText:G("Submit button",B0.submitText),subscribedText:G("Subscribed button",B0.subscribedText),finePrint:D("Fine print",B0.finePrint),_sRight:a0("Recent issues"),_gRightCopy:b("Content"),contentType:b1("Type",uD(jt1,{}),[...hD],bb),issuesHeading:H("Panel heading",B0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:v1("Number"),title:v1("Title"),small:v1("Sub-line"),date:v1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||"Issue"},_gPosts:b("Blog posts"),posts:a2(p9),limit:a1("Posts to display",uD(Kt1,{}),1,6,1,4),_gArchive:b("Archive link"),archiveText:H("Archive button",B0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>mD(t,e.props.contentType)};import{HashIcon as Jt1}from"efficient-easel/icons";import{useState as $t1}from"react";import{jsx as Y3,jsxs as g9}from"react/jsx-runtime";var Yt1="That didn't go through \u2014 please try again.";function Uc({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:p,archiveHref:u,source:g=Z3.subscribeSection,editing:d=!1,...f}){let[v,z]=$t1(""),{status:x,submit:k}=Kr({source:g,dryRun:d}),M=x==="sent",A=x==="sending",R=x==="error"||x==="invalid",E=(m??[]).filter(N=>(N?.n??"").trim()||(N?.title??"").trim()||(N?.date??"").trim()),Z=E.length>0,F=M?i||"Subscribed \u2713":A?"Sending\u2026":o||"Subscribe \u2192";function T(N){N.preventDefault(),!M&&k({email:v})}return g9("section",{className:N0(f)?"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:[Y3(O2,{num:e,title:t?$(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),g9("div",{className:Z?"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:[g9("div",{className:Z?"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&&Y3(V1,{text:s}),c&&Y3("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:$(c,!0)}),l&&Y3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:C(l,!0)}),g9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:T,children:[Y3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:v,onChange:N=>z(N.target.value),disabled:M,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"}),Y3("button",{type:"submit",disabled:M||A,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:Z0(F)})]}),R&&Y3("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:Yt1}),n&&Y3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:C(n)})]}),Z&&g9("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&&Y3(V1,{text:h,size:12}),Y3("div",{className:"flex flex-col",children:E.map((N,B)=>g9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",B===0?"border-t border-line":""].join(" "),children:[Y3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:N.n?C(N.n):""}),g9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[N.title?C(N.title):"",N.small?.trim()&&Y3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:C(N.small,!0)})]}),Y3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:N.date?C(N.date):""})]},B))}),p&&Y3(t0,{href:u||"/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:C(p)})]})]})]})}import{jsx as Xt1}from"react/jsx-runtime";var X0={...B0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},gD={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=yh("posts",e);return Xt1(Uc,{headNum:y(e.headNum,X0.headNum,e.puck),headTitle:y(e.headTitle,X0.headTitle,e.puck),headDesc:y(e.headDesc,X0.headDesc,e.puck),kicker:y(e.kicker,X0.kicker,e.puck),leadTitle:y(e.leadTitle,X0.leadTitle,e.puck),intro:y(e.intro,X0.intro,e.puck),emailPlaceholder:t1(e.emailPlaceholder)||X0.emailPlaceholder,submitText:t1(e.submitText)||X0.submitText,subscribedText:t1(e.subscribedText)||X0.subscribedText,finePrint:y(e.finePrint,X0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,X0.issuesHeading,e.puck),issues:t,source:Z3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,X0.archiveText,e.puck),archiveHref:t1(e.archiveHref)||X0.archiveHref})}};import{jsx as Qt1}from"react/jsx-runtime";var vD={fields:{_sHead:a0("Section header"),_gHeadCopy:b("Content"),headNum:H("Number",X0.headNum),headTitle:D("Heading",X0.headTitle),headDesc:D("Body",X0.headDesc),_sLeft:a0("Newsletter panel"),_gLeftCopy:b("Content"),kicker:H("Eyebrow",X0.kicker),leadTitle:D("Heading",X0.leadTitle),intro:D("Intro",X0.intro),_gForm:b("Signup form"),emailPlaceholder:G("Email placeholder",X0.emailPlaceholder),submitText:G("Submit button",X0.submitText),subscribedText:G("Subscribed button",X0.subscribedText),finePrint:D("Fine print",X0.finePrint),_sRight:a0("Recent posts"),_gRightCopy:b("Content"),issuesHeading:H("Panel heading",X0.issuesHeading),_gPosts:b("Blog posts"),posts:a2(p9),limit:a1("Posts to display",Qt1(Jt1,{}),1,6,1,4),_gArchive:b("Archive link"),archiveText:H("Archive button",X0.archiveText),archiveHref:H1("Archive link")}};import{jsx as ea1}from"react/jsx-runtime";var fD={label:"Booking box",defaultProps:{},render:e=>ea1(Yp,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,L.eyebrow,e.puck),heading:y(e.heading,L.heading,e.puck),intro:y(e.intro,L.body,e.puck),buttonLabel:y(e.buttonLabel,L.button,e.puck),successMessage:y(e.successMessage,L.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as zb,useState as yb}from"react";import{Fragment as ta1,jsx as A0,jsxs as y3}from"react/jsx-runtime";var bD="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 wb({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:p,formSlug:u,form:g,editing:d,initialActiveId:f,onActiveChange:v,reasonExtras:z,...x}){let k=[...a.map(W=>W.id),...r?[S8]:[]],M=f&&k.includes(f)?f:k[0]??S8,[A,R]=yb(M);zb(()=>{k.includes(A)||R(k[0]??S8)},[k.join("|")]),zb(()=>{f&&k.includes(f)&&R(f)},[f]);let E=W=>{R(W),F(null),v?.(W)},[Z,F]=yb(null),T=(p??[]).filter(W=>!W.hidden),N=T.find(W=>W.groupId===A)?.value??null,B=Z??N,P=L5(u,g),O=n7({form:P,formSlug:u,editing:d}),c1=P===void 0,V=!!P||!!d,[q,K]=yb(!1);return zb(()=>{let W=()=>K(document.documentElement.getAttribute("data-theme")==="light");W();let r1=new MutationObserver(W);return r1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>r1.disconnect()},[]),y3(ta1,{children:[y3("section",{className:N0(x)?"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)&&y3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&A0(V1,{text:e}),t&&A0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:C(t)})]}),A0("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(W=>{let r1=A===W.id;return y3("button",{type:"button",onClick:()=>{E(W.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:l6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",r1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[W.eyebrow&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:W.eyebrow}),A0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:W.title}),W.copy&&A0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:W.copy}),W.response&&y3("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:[A0("span",{children:"Response"}),A0("strong",{className:"font-normal text-fg",children:W.response})]})]},W.id)})})]}),(V||T.length>0)&&y3("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]",V&&T.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[V&&y3("div",{children:[y3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[y3("div",{children:[s&&A0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:C(s)}),c&&A0("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:$(c,!0)})]}),!!(l&&l.length)&&A0("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((W,r1)=>A0("div",{children:W},r1))})]}),P?O.done?A0("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:Pe(P,"Thanks \u2014 we've received your message.")}):y3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:O.handleSubmit,children:[P.fields.map(W=>A0(Z2,{label:W.label,required:W.required,className:W.type==="textarea"||W.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:A0(h7,{field:W,value:O.valueOf(W.key),onChange:r1=>O.set(W.key,r1),className:W.type==="textarea"?`${bD} min-h-[140px] resize-y leading-[1.5]`:W.type==="checkbox"?"size-4 self-start accent-accent":bD})},W.key)),y3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[A0(v8,{required:!0,children:"Reason"}),y3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(W=>{let r1=A===W.id;return A0("button",{type:"button",onClick:()=>E(W.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",r1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:W.title},W.id)}),r&&A0("button",{type:"button",onClick:()=>E(S8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",A===S8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:Z0(o)})]})]}),z?.(A),A===S8&&(i||n)&&y3("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&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:C(i)}),n&&b0(n).map((W,r1)=>A0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:C(W)},r1))]}),A0(Ee,{value:O.honeypot,onChange:O.setHoneypot}),O.error&&A0("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:O.error}),y3("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&&A0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:C(m)}),A0("button",{type:d?"button":"submit",disabled:O.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:O.submitting?"Sending\u2026":h?Z0(h):"Send Message \u2192"})]})]}):A0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:c1?"Loading form\u2026":"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."})]}),T.length>0&&A0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:T.map((W,r1)=>{let x1=B===W.value,e1=!!!W.groupId;return y3("div",{onClick:e1?()=>F(W.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",e1?"cursor-pointer border-t-2 border-t-accent":"",x1?"border-l-accent pl-6":e1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:x1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[x1&&y3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),A0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),A0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",x1?"text-fg":"text-accent"].join(" "),children:W.label}),e1?A0("a",{href:W.href,onClick:d1=>d1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",x1?"text-accent":"text-fg"].join(" "),children:W.value}):A0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",x1?"text-accent":"text-fg"].join(" "),children:W.value}),W.sub&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:W.sub})]},`${W.value}-${r1}`)})})]})]})}import{jsx as aa1}from"react/jsx-runtime";var xD={label:"Contact Form",defaultProps:{routingNumber:v0.routingNumber,routingTagline:v0.routingTagline,groups:v0.groups,formSlug:"",formNumber:v0.formNumber,formHeading:v0.formHeading,metaItems:v0.metaLines.map(e=>({text:e})),showOther:v0.showOther,otherLabel:v0.otherLabel,otherNoteTitle:v0.otherNoteTitle,otherNoteBody:v0.otherNoteBody,buttonText:v0.buttonText,consent:v0.consent,channels:v0.channels},render:e=>aa1(wb,{routingNumber:y(e.routingNumber,v0.routingNumber,e.puck),routingTagline:y(e.routingTagline,v0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,v0.formNumber,e.puck),formHeading:y(e.formHeading,v0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:t1(e.otherLabel)||v0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,v0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,v0.otherNoteBody,e.puck),buttonText:t1(e.buttonText)||v0.buttonText,consent:y(e.consent,v0.consent,e.puck),channels:e.channels??[],formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as zD}from"react/jsx-runtime";function Cb({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return zD("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:zD("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as sa1}from"react/jsx-runtime";var yD={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>sa1(Cb,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as ca1}from"react";import{jsx as kb,jsxs as wD}from"react/jsx-runtime";function Mb({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=pp(),[c,l]=ca1("");return wD("div",{className:"w-full min-w-0",children:[e?kb("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:$(e,!1)}):null,wD("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:Z3.footerSignup})},children:[kb("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"}),kb("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:Z0(a)})]})]})}import{jsx as la1}from"react/jsx-runtime";var CD={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>la1(Mb,{heading:K4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as wh,jsxs as oa1}from"react/jsx-runtime";var ra1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function Sb({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:p,siteName:u}=zl(),g=Math.round(c7*(t/100)),d={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return oa1("div",{className:`flex min-w-0 flex-col ${ra1[a]} [container-type:inline-size]`,style:d,children:[wh(S1,{href:"/","aria-label":u?`${u} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:wh(pe,{variant:"footer",sizePx:g,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:p,siteName:u,fitWordmarkToContainer:!0,fitFloorPx:Ww})}),e?wh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:C(e)}):i?wh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:"Add a short brand tagline \u2192"}):null]})}import{jsx as ia1}from"react/jsx-runtime";var kD={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})=>ia1(Sb,{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 na1}from"react/jsx-runtime";var MD={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>na1(Fa,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as ha1}from"react/jsx-runtime";var SD={label:"Social Logos",defaultProps:{iconStyle:ee,iconSize:"medium",align:"start",gap:Bc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>ha1(ob,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as pa1}from"react/jsx-runtime";var ma1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function Lb({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?"Add a line of footer text.":"");return c?pa1("p",{className:`${ma1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:C(c)}):null}import{jsx as ua1}from"react/jsx-runtime";var LD={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>ua1(Lb,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as da1}from"react/jsx-runtime";var AD={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>da1(lp,{formSlug:t1(e.formSlug)||void 0,heading:t1(e.heading)||void 0,intro:t1(e.intro)||void 0,submitText:t1(e.submitText)||void 0,finePrint:t1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as ga1}from"react/jsx-runtime";var HD={label:"Legal Line",render:()=>ga1(Ic,{})};import{jsx as va1}from"react/jsx-runtime";var FD={label:"Submit box",defaultProps:{},render:e=>va1(eu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:Q0(e.eyebrow,z0.eyebrow,e.puck),title:Q0(e.title,z0.title,e.puck),body:Q0(e.body,z0.body,e.puck),buttonText:Q0(e.buttonText,z0.buttonText,e.puck),consent:Q0(e.consent,z0.consent,e.puck),formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as fa1}from"react/jsx-runtime";var TD={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:p,posts:u,limit:g,archiveText:d,archiveHref:f,puck:v})=>fa1(Uc,{headNum:y(e,B0.headNum,v),headTitle:y(t,B0.headTitle,v),headDesc:y(a,B0.headDesc,v),kicker:y(s,B0.kicker,v),leadTitle:y(c,B0.leadTitle,v),intro:y(l,B0.intro,v),emailPlaceholder:t1(r)||B0.emailPlaceholder,submitText:t1(o)||B0.submitText,subscribedText:t1(i)||B0.subscribedText,finePrint:y(n,B0.finePrint,v),issuesHeading:y(h,B0.issuesHeading,v),issues:yh(xb(p),{issues:m,posts:u,limit:g,puck:v}),source:Z3.subscribeSection,editing:v?.isEditing,archiveText:y(d,B0.archiveText,v),archiveHref:t1(f)||B0.archiveHref})};var PD={AppointmentBooking:iZ,BookingBox:fD,ContactRouting:xD,Events:HZ,Footer:VZ,FooterDivider:yD,FooterEmailSignup:CD,FooterGroup:BZ,FooterLogo:kD,FooterMenu:MD,FooterSocial:SD,FooterText:LD,Form:AD,LegalLineBlock:HD,ReviewForm:XZ,Reviews:tD,[k9]:sD,[C9]:lD,SubmitBox:FD,SubmitBuild:iD,Subscribe:TD,SubscribeBlogs:gD};var ba1={AppointmentBooking:nZ,BookingBox:hZ,ContactRouting:pZ,Events:FZ,Footer:NZ,FooterDivider:_Z,FooterEmailSignup:IZ,FooterGroup:ZZ,FooterLogo:DZ,FooterMenu:GZ,FooterSocial:jZ,FooterText:KZ,Form:$Z,LegalLineBlock:YZ,ReviewForm:JZ,Reviews:aD,[k9]:cD,[C9]:rD,SubmitBox:oD,SubmitBuild:nD,Subscribe:dD,SubscribeBlogs:vD},h2=je(PD,ba1);import{jsx as _6,jsxs as xa1}from"react/jsx-runtime";import{useEasel as za1}from"efficient-easel/easel";var ya1="color-mix(in oklab, var(--bg) 40%, #ffffff)",wa1="12vh";function Ca1({style:e,frameClass:t,children:a}){let{appState:s}=za1(u=>u),c=s.data.content,l=s.data.root;if(hw(c))return _6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:ya1,minHeight:"100vh",paddingBottom:wa1},children:_6("div",{style:{background:"var(--bg)"},children:a})});let r=xa(c)&&Jl(l,c),o=xa(c)?uw(l,c):null,i=o?{[pw]:o}:null,n=vz(l?.widthChoice),h=n?{[gz]:n}:null,m=r?null:fB(c),p=m?{[jn]:m}:null;return _6("div",{className:`sf-themed-content${r?` ${Xl}`:""}${t?` ${t}`:""}`,style:e,...p,...i,...h,children:_6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function ED(e){return{frameClass:void 0,style:{"--sf-page-width":da}}}function Ab({w:e,children:t}){let{frameClass:a,style:s}=ED(e);return _6("div",{className:a,style:s,children:t})}function Hb({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:p,overlay:u,children:g}){let{theme:d,fonts:f,sizes:v,cornerRadiusPx:z,cardShadow:x,shadowColor:k,cardGap:M,hoverEffect:A,headingCompression:R,siteWidth:E,siteGutter:Z,blockGap:F,headingTypography:T,heroBackgroundFollowsWidth:N,photographyGrayscale:B,themeFromDocument:P}=V3(),O=P?e:d,c1=P?t:f,V=P?void 0:v,q=P?s===void 0?Kx[jx(a)]:$x(s):z,K=P?c:R,W=P?l:T,r1=ED({widthMode:r,fullWidth:o,pageWidth:i}),x1={...ua(O),...ul(V),...tz(W),...r1.style,...h?{}:$h(n)};return _6("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...rl(c1),...nl(O),...hl(O),...ml(O),...pl(O),...Zh(q),...oz(Zh(q)),...Qx(P?void 0:x,P?void 0:k,P?void 0:A),...nz(P?void 0:E),...hz(P?void 0:Z),...sy(P?void 0:F),...dz(P?void 0:N)},"data-sf-headings":ez(K),"data-sf-card-shadow":P?void 0:Yx(x),"data-sf-card-gap":P?void 0:Xx(M),"data-sf-card-hover":P?void 0:Jx(A),onClickCapture:m,children:xa1(_F,{grayscale:P?void 0:B,children:[_6(Ca1,{style:x1,frameClass:r1.frameClass,children:g}),p,u]})})}var Fb=e=>{e.target?.closest?.("a")&&e.preventDefault()};function VD({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return _6("div",{style:{...t?{}:$h(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:_6(Ab,{w:a,children:s})})}import{jsx as ND}from"react/jsx-runtime";import{PaddingTopIcon as ka1}from"efficient-easel/icons";function Ma1(){return{type:"custom",render:({value:e,onChange:t})=>ND(uh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:"Follows the site",hint:"Whether this page sits on the site's content column, or runs edge to edge.",onChange:a=>t(a)})}}var Sa1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],_D={title:G("Page Title"),pageBackground:zy(),topSpace:g1("Top space",ND(ka1,{}),Sa1,mw),widthChoice:Ma1()};function La1(e,t){let a=Yh(t),s=a?a.inner:t;if(Nh(s))return!1;if(s?.type==="slot")return!0;let c=Zz(s);return c==="always"?!1:c==="authored-copy"?Rx(e):!0}function ID(e){let t=Yh(e),a=t?t.inner:e,s=Nh(a);return s?ny(a)?0:s.level:null}function Aa1(e,t,a){return a&&t===0&&e===m8.Content}var Ha1=new WeakMap,Fa1=new WeakMap;function ra(e,t="section"){let a=t==="page"?Fa1:Ha1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,p])=>({key:m,field:p,level:ID(p),draws:La1(m,p)||t==="page"&&ID(p)===null&&Ih(m,p)})),l=t==="section"&&c.some(m=>Ih(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let p=c[m].level;if(p===null)continue;let u=0;for(let g=m+1;g<c.length;g++){let d=c[g].level;if(d!==null&&d<=p)break;c[g].draws&&(u+=1)}u===0&&!Aa1(c[m].key,p,l)&&r.add(c[m].key)}let o=l&&Ay(e),i=o&&!(m8.Content 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=Q9(o?Ly(n):n);return a.set(e,h),h}var RD={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(ma,e),draw(e,t){e.label=ma[t]}};import{jsx as Ta1}from"react/jsx-runtime";var BD={name:"sectionGroupAllow",applies:e=>cl.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},Tb=new Set(Object.keys(B1)),ZD={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=>!Tb.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var Pa1=Array.from(new Set([...ax.map(e=>e.type),...Tb,...Qc,"GalleryItem"])),DD={name:"cellWidth",applies:(e,t,a)=>Pa1.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=ii(r.appState,l.props?.id);if(i===void 0||Px(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=Fx(a.gridSpan),c=t(a);return s==null?c:Ta1("div",{className:"sf-grid-cell",[Tx]:String(s),children:c})}}};import{jsx as OD}from"react/jsx-runtime";var GD={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=L9(c);return c.puck?.isEditing?OD(mA,{needles:_h(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?OD(sz,{needles:_h(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as qD}from"react/jsx-runtime";var WD={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=dl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=N0(a)?`sf-section-corners ${lz}`:"sf-section-corners";return s?qD("div",{className:l,style:{display:"contents",...s},children:c}):c}}},Ea1=["CollectionCard"],UD={name:"cardCorners",applies:(e,t,a)=>Ea1.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=rz(a.cardCorners,a.cardCornerSides),c=t(a);return s?qD("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var jD={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 KD={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 $D,Fragment as Va1,jsxs as Na1}from"react/jsx-runtime";function _a1({anchor:e}){let t=Wh(typeof e=="string"?e:"");return t?$D("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var YD={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=>Na1(Va1,{children:[$D(_a1,{anchor:a.anchor}),t(a)]})}};import{jsx as Ba1}from"react/jsx-runtime";import{jsx as Ia1}from"react/jsx-runtime";import{useEffect as Ra1,useRef as XD}from"react";function JD({motion:e,editing:t,children:a}){let s=XD(null),c=XD(e);return Ra1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,Cz(l);return}return wz(l)}},[e,t]),Ia1("div",{ref:s,[yz]:e,children:a})}var QD={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!kz.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=zz(s.sectionAnimation);return c?Ba1(JD,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as Za1}from"react/jsx-runtime";var aO={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!Sz.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=Mz(i),h=Lz(i)?Az(i):null;return o&&typeof o.then=="function"?o.then(m=>tO(eO(m,n),h)):tO(eO(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=Hz(a);return s?Za1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function eO(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 tO(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 Da1}from"react/jsx-runtime";var sO={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!bz.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=jh.has(t);e.fields={...e.fields,...l?s(d5,c):s()}},draw(e,t){let a=jh.has(t),s=e.render;e.render=c=>{let l=F9(a?{...c,sectionAccent:d5(c.sectionAccent)}:c),r=s(c);return l?Da1("div",{className:l.className,style:l.style,children:r}):r}}},cO={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(d5,c)})}};var Oa1=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"]),lO={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Oa1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ga1=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"]),rO={name:"blockGroups",applies:e=>Ga1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var qa1=["Form","Stats"];function Pb(e,t){let a=new Set(e),s=Qb.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!cl.includes(i)),l=new Set([...t,...Qc,...qa1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Wa1=[BD,ZD,BS,WD,UD,ZS,DD,bF,xF,zF,yF,aO,YD,sO,QD,cO,lO,rO,jD,GD,KD,RD];function oO(e,t,a){let s=t;for(let c of Wa1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var iO={spacingFields:b5,sectionShapeFields:Pl,cardShapeFields:py,cellWidthFields:fy,widthField:x5,heightFields:by,anchorFields:xy,sectionThemeFields:q9,sectionAnimationFields:my,slider:a1,assignSectionGroups:Dl,dropEmptyHeadings:ra,SECTION_THEME_FOLLOW_LABEL:wl,BLOCK_THEME_FOLLOW_LABEL:Vz};function nO(e){let t={...Pb(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:iO};for(let[c,l]of Object.entries(e.components))oO(c,l,t);let a=e.root,s=a.resolveFields;return a.resolveFields=s?(c,l)=>{let r=s(c,l);return r instanceof Promise?r.then(o=>ra(o??l.fields,"page")):ra(r??l.fields,"page")}:(c,l)=>ra(l.fields,"page"),t}import{Fragment as ps1,jsx as r0,jsxs as oa}from"react/jsx-runtime";var Ui0=[{value:"00",label:L.label},{value:"00",label:L.label},{value:"00",label:L.label}],ts1=Th(()=>import("./PreviewFooter-D7NSGB3G.js")),as1=Th(()=>import("./render-client-ZVCEJANT.js")),ss1={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 cs1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=ak(),{theme:m,fonts:p,sizes:u,themeFromDocument:g}=V3();if(!n)return oa(Hb,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[r0("div",{style:ss1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let d=g?e:m,f=g?t:p,v=n.content??[],z=n.root,x=xa(v)&&Jl(z,v);return oa("div",{className:"sf-theme-accent",style:{...rl(f),...nl(d),...hl(d),...ml(d)},onClickCapture:o,children:[oa("div",{style:{position:"relative"},children:[r0("div",{className:x?Xl:void 0,style:{...ua(d),...ul(g?void 0:u),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:r0(as1,{data:n})}),r0("button",{type:"button",onClick:()=>h(),title:"Click the page to go back","aria-label":"Go back to the page",style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),r0("div",{className:"sf-theme-surfaces",style:{...ua(d),...pl(d)},children:r0(Ab,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var H0=cm,ls1={formSlug:F5(void 0,"Newsletter (built in)"),_gLeft:b("Left panel"),metaLabel:G("Meta label",H0.metaLabel),issueLabel:G("Issue label",H0.issueLabel),issueNumber:G("Issue number",H0.issueNumber),kicker:G("Eyebrow",H0.kicker),heading:E1("Heading",H0.heading),deck:E1("Deck",H0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:G("Label"),value:G("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:b("Right panel \xB7 form"),formLabel:G("Section label",H0.formLabel),formHeading:G("Heading",H0.formHeading),formIntro:E1("Intro",H0.formIntro),firstNameLabel:G("First-name label",H0.firstNameLabel),firstNamePlaceholder:G("First-name placeholder",H0.firstNamePlaceholder),emailLabel:G("Email label",H0.emailLabel),emailPlaceholder:G("Email placeholder",H0.emailPlaceholder),_gChoices:b("Right panel \xB7 choices"),interestsLabel:G("Interests label",H0.interestsLabel),interests:F2("Interest chips",r0(e4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:G("Frequency label",H0.frequencyLabel),frequencies:F2("Frequency options",r0(Ya1,{}),"Option label","verbatim"),_gActions:b("Right panel \xB7 actions"),submitText:G("Submit button",H0.submitText),finePrint:G("Fine print",H0.finePrint),dismissText:G("Dismiss link",H0.dismissText),emailInvalidText:G("Invalid-email error",H0.emailInvalidText),submitErrorText:G("Submit-failed error",H0.submitErrorText),_gSuccess:b("Success state"),successHeading:G("Heading",H0.successHeading),successBody:E1("Message",H0.successBody),keepBrowsingText:G("Dismiss button",H0.keepBrowsingText),...q9(d5,wl),...Pl(),_gTextStyle:b("Text style"),...Object.fromEntries(Sl.map(e=>[Uz[e],g1(Jh[e],Oe(Jh[e]),[{label:"Popup's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gBehaviour:b("Behavior"),autoOpen:s1("Show by itself",H0.autoOpen,r0($a1,{})),trigger:b1("Trigger",r0(es1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],H0.trigger),autoOpenDelaySec:a1("Delay",r0(Eb,{}),tm.min,tm.max,1,H0.autoOpenDelaySec,"s"),scrollPercent:a1("Scroll",r0(Qa1,{}),am.min,am.max,5,H0.scrollPercent,"%"),showOn:b1("Pages",r0(Xa1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],H0.showOn),showOnPages:U9("Chosen pages",[],"None"),hideAfter:b1("After close",r0(Eb,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],H0.hideAfter),hideDays:a1("Days",r0(Eb,{}),sm.min,sm.max,1,H0.hideDays),_gArrangement:b("Arrangement"),formSide:b1("Form side",r0(Ja1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],H0.formSide),_gPhone:b("On a phone"),valuePanelOnPhone:s1("Left panel",H0.valuePanelOnPhone,r0(ja1,{}))},rs1=Dl(ls1,"SubscribePopup");async function os1(){return(await Xz(i2()??"")).filter(t=>!va(t.slug)).map(t=>({label:t.label,value:o8(t.slug)}))}async function is1(e){let t=lm(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(rs1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await os1().catch(()=>[])}:l);return Q9(s)}var h5=Ml,ns1={_gHeader:b("Header"),kickerBadge:G("Eyebrow badge",h5.kickerBadge),kickerText:G("Eyebrow text",h5.kickerText),titleLead:G("Heading",h5.titleLead),titleAccent:G("Heading accent",h5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",h5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",h5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",h5.subtitleMany,"{count} becomes the number of sets"),_gStatus:b("Status rail"),leadTimeValue:G("Lead time",h5.leadTimeValue),shipsToFallback:G("Ships to \xB7 fallback",h5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:b("Promise row"),promises:F2("Trust markers",r0(hO,{}),"Marker","verbatim"),_gEmpty:b("Empty basket"),emptyKicker:G("Eyebrow",h5.emptyKicker),emptyBody:E1("Message",h5.emptyBody)},Ch={root:{fields:{..._D,_gOpening:b("Opening filter"),openingProcess:g1("Process",h8("A facet's options grow out of the merchant's CATALOGUE, so the set of rows is not ours to count and an icon-per-facet queue never empties. Owner, 2026-08-29, on the `Opening filter` group: \u300Cfilter \u91CC\u4E0D\u52A0 icon\u2026\u4E0D\u7136\u6CA1\u5B8C\u6CA1\u4E86\u3002\u300D"),nM,Wr),openingSize:G("Size","Any"),openingLugs:G("Lugs","Any"),openingFinish:g1("Finish",h8("A facet's options grow out of the merchant's CATALOGUE, so the set of rows is not ours to count and an icon-per-facet queue never empties. Owner, 2026-08-29, on the `Opening filter` group: \u300Cfilter \u91CC\u4E0D\u52A0 icon\u2026\u4E0D\u7136\u6CA1\u5B8C\u6CA1\u4E86\u3002\u300D"),iM,Wr),openingPriceMin:G("Price from","Any"),openingPriceMax:G("Price to","Any")},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===em)return is1(e.props);if(e?.props?.kind===Xh)return ns1;let a=t;return D2()?{[Rm]:g1("Product type",r0(Ua1,{}),ve,"alloy-wheel"),...a,_gHeroBullets:b("Product hero"),_nHeroBullets:f5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[Np]:F2("Trust bullets",r0(hO,{}),FS(Ua.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,p=Sr(typeof h=="string"?h:"",e);if(h===em){let v=lm(e);return oa("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?r0("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,r0(FM,{inline:!0,content:v})]})}if(h===Xh){let v=Wz(e);return oa("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?r0("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,r0(hr,{children:r0(mr,{preview:!0,children:r0(Oa,{content:v})})})]})}let u=!!a?.isEditing,g=r0(LS,{type:Vp(e),children:r0(yS,{kind:p,children:r0(ES,{content:TS(e),children:r0(bS,{slug:u?m:null,children:r0(tM,{initial:rM(e),children:t})})})})}),d=h===jz&&!Iz(r);return u?h===_9?r0(cs1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:d,suppressPreviewNav:Fb,children:g}):r0(Hb,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:Fb,footer:r0(ts1,{}),overlay:oa(ps1,{children:[r0(bp,{}),r0(Ap,{})]}),children:g}):r0(VD,{pageBackground:r,inheritBackground:d,w:{widthMode:s,fullWidth:c,pageWidth:l},children:g})}},categories:Jb(),components:{Heading:R1.Heading,Text:R1.Text,Eyebrow:R1.Eyebrow,ImageBlock:R1.ImageBlock,LogoBlock:R1.LogoBlock,ButtonBlock:R1.ButtonBlock,Spacer:R1.Spacer,Divider:R1.Divider,Grid:R1.Grid,Flex:R1.Flex,Breadcrumb:R1.Breadcrumb,Masthead:R1.Masthead,CategoryBar:R1.CategoryBar,FeaturedCover:R1.FeaturedCover,LongRead:R1.LongRead,Series:R1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:R1.Banner,ParagraphsA:R1.ParagraphsA,StatsParagraph:R1.StatsParagraph,Timeline:R1.Timeline,Footprint:R1.Footprint,TimelineTrack:R1.TimelineTrack,TitleWithButtons:R1.TitleWithButtons,Stats:R1.Stats,Integrations:R1.Integrations,Mockup:R1.Mockup,Chart:R1.Chart,KeyFeatures:R1.KeyFeatures,Testimonials:R1.Testimonials,Reviews:h2.Reviews,Prose:R1.Prose,Cards:R1.Cards,Logos:R1.Logos,Ticker:R1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:R1.ContactLocations,HeroSingle:R1.HeroSingle,Hero:R1.Hero,HeroSlide:R1.HeroSlide,HeroGroup:R1.HeroGroup,Collections:W0.Collections,CollectionCard:W0.CollectionCard,Events:h2.Events,PostCard:R1.PostCard,DocMetaCards:R1.DocMetaCards,DocTabs:R1.DocTabs,DocMasthead:R1.DocMasthead,DocBody:R1.DocBody,FAQ:R1.FAQ,Gallery:W0.Gallery,GalleryB:W0.GalleryB,BrandStrip:W0.BrandStrip,SpecStrip:R1.SpecStrip,GalleryItem:W0.GalleryItem,Manifesto:R1.Manifesto,SectionHeader:R1.SectionHeader,IntroBleed:R1.IntroBleed,Split:R1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:W0.CatalogFilterBar,AlloyWheelsListing:W0.AlloyWheelsListing,ProductGrid:W0.ProductGrid,ProductHero:W0.ProductHero,SpecTable:W0.SpecTable,ProcessSteps:R1.ProcessSteps,DetailRows:W0.DetailRows,FitmentTable:W0.FitmentTable,RelatedProducts:W0.RelatedProducts,BundleOffer:W0.BundleOffer,CompatibleTyres:W0.CompatibleTyres,TyreSizes:W0.TyreSizes,TyreFitment:W0.TyreFitment,EuTyreLabel:W0.EuTyreLabel,FitmentFinder:W0.FitmentFinder,OrderSummary:R1.OrderSummary,DeliveryOptions:W0.DeliveryOptions,PaymentBadges:R1.PaymentBadges,CheckoutCTA:W0.CheckoutCTA,ProductRef:W0.ProductRef,CustomHTML:R1.CustomHTML,Header:W0.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:W0.SearchBlock,CartBlock:W0.CartBlock,CountrySwitchBlock:W0.CountrySwitchBlock,[C9]:h2.SiteHeader,[k9]:h2.SiteFooter}},hs1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries(hs1)){let a=Ch.components;a[e]={...a[t]}}{let e=Ch.components.MenuBlock;e.fields={...e.fields,direction:b1("Direction",r0(Ka1,{}),[{label:Kh.column,value:"column"},{label:Kh.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>r0(Fa,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var ms1=nO(Ch),ji0=ms1.sectionGroupAllow,bf=Ch;export{yf1 as a,wf1 as b,Cf1 as c,kf1 as d,Mf1 as e,Pb as f,oO as g,iO as h,sU as i,Mn1 as j,Rc1 as k,yB as l,fr1 as m,uM as n,br1 as o,xr1 as p,nn1 as q,DB1 as r,Vs1 as s,Ns1 as t,_s1 as u,Is1 as v,Xs1 as w,Js1 as x,gO1 as y,ol1 as z,to1 as A,$40 as B,xp as C,UE1 as D,$m as E,yk as F,dl1 as G,gl1 as H,vl1 as I,zl1 as J,Mk as K,Jc1 as L,pB as M,pf as N,$n as O,gt as P,r3 as Q,qW as R,gB as S,qr as T,Ea as U,uq as V,lr1 as W,Vc1 as X,DI as Y,xc as Z,bf as _};
153
+ `):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return HB(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as P81,jsx as z3,jsxs as $3}from"react/jsx-runtime";function Mf({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=sn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(Pd),n=Y_({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return z3(Fc,{vehicle:a,escape:z3("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?$3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),$3("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."," ",z3(S1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:z3(T81,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:$3(P81,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",z3(S1,{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 T81({verdict:e,car:t}){switch(e.state){case"checking":return $3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",$3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return $3(i5,{tone:"good",children:[$3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),z3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>z3("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 $3(i5,{tone:"good",children:[$3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),z3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>z3("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))}),$3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[z3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),c9(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."," ",z3(S1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return $3(i5,{tone:"bad",children:[$3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),z3("span",{className:"mt-1.5 block",children:c9(e.failure)})]});case"unknown":return $3(i5,{tone:"quiet",children:[z3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),$3("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."," ",z3(S1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as IB}from"react";import{useCallback as NB,useRef as E81,useState as V81}from"react";function VB(e,t,a){return{productSlug:e,email:a.trim(),size:t?x8(t):""}}function _B(){let[e,t]=V81("idle"),a=E81(!1),s=NB(()=>{a.current=!1,t("idle")},[]),c=NB(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!me(o)){t("invalid");return}a.current=!0,t("sending");try{i||await g0.createPreOrderIntent(VB(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 Qt,jsxs as ea}from"react/jsx-runtime";function Sf({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=IB(a.length>0?0:-1),[l,r]=IB(""),{status:o,submit:i,reset:n}=_B(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ea("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ea("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:[Qt("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&&ea("div",{children:[ea("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",Qt("span",{className:"text-accent",children:h?x8(h):"Select a size"})]}),Qt("div",{className:"flex flex-wrap gap-1.5",children:a.map((p,u)=>{let g=u===s;return ea("button",{type:"button",onClick:()=>{c(u),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",g?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:g?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[g&&Qt("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),Qt("span",{className:"block text-[14px] tracking-[0.18em]",children:x8(p)})]},x8(p))})})]}),o==="sent"?ea("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,"."]}):Qt(Hc,{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 N81}from"react";import{Fragment as _81,jsx as th}from"react/jsx-runtime";function ah({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:p,onImageClick:u,imageButtonClassName:g,imageButtonLabel:d}){let[f,v]=N81(null),z=e||"";if(!(z!==""&&f!==z))return th(_81,{children:a});let k=th(E3,{src:z,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>v(z)},m??z),M=p?th("div",{className:p,children:k}):k;return u?th("button",{type:"button",onClick:u,"aria-label":d,className:g,children:M}):M}function RB(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]}import{Fragment as BB,jsx as B4,jsxs as R81}from"react/jsx-runtime";function sh(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function ch({text:e}){return e==="FusionForge\xAE"?R81(BB,{children:["FusionForge",B4(c6,{})]}):B4(BB,{children:e})}function ZB(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",p=h.variants.find(d=>d.size===m),u=p?.specs.tireType??h.variants[0]?.specs.tireType??null,g=[p?.image,h.coverImage].filter(d=>!!d);return{heading:Pi(h.brand,h.name),photos:g.slice(0,1),tint:void 0,stageImage:()=>B4(i6,{image:p?.image??h.coverImage,size:m,type:u,sizes:eh,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",metaValue:m,specCaption:p?[p.specs.loadIndex,p.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:B4(kf,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:B4(wf,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=SV(s,t.shown.finish),l=N7(s,t.part),r=on(t),o=Bd(c,r),i=o?[...o]:RB(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:p,onZoom:u,fit:g})=>B4(ah,{src:h,alt:m,fill:!0,sizes:eh,className:g==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:u,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:p,fallback:B4(f8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>B4(ah,{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:B4(f8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:I81(n,c,r,t.manualMode),metaValue:c.name,specCaption:l?Os(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:B4(Mf,{selection:t,spec:l?Os(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:B4(wf,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:B4(Sf,{wheel:s,editing:a})}}function I81(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 B81,useContext as Z81,useEffect as D81,useState as DB}from"react";import{jsx as G81}from"react/jsx-runtime";var OB="storefront-wishlist";function O81(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var GB=B81(null);function $40({children:e}){let[t,a]=DB([]),[s,c]=DB(!1);D81(()=>{let o=Q2.getItem(OB);try{o&&a(O81(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),Q2.setItem(OB,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return G81(GB.Provider,{value:r,children:e})}function qB(){let e=Z81(GB);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var WB="data-option-row";import{Fragment as n5,jsx as z1,jsxs as K1}from"react/jsx-runtime";var W81=4e3;function U81(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}function ta({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=j7,imageRatio:o=K7,textAlign:i=n9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=$7,imageFit:p=Y7}){let u=Ot(r),g=Ln(i),d=An(o),f=Hn(m),v=QI(Fn(p),vV(e)),z=u==="imageRight"?`${100-d}fr ${d}fr`:`${d}fr ${100-d}fr`,{picked:x,pick:k,qty:M,setQty:A,choice:R,setChoice:E,angleIdx:Z,setAngleIdx:F,showValidation:T,setShowValidation:N,manualMode:B,vehicle:P,rows:O,facts:c1,part:V,outOfStock:q,offer:K,preOrder:W,canAddToCart:r1,currency:x1,price:Y,set:e1,msrpLabel:d1}=t,U=ZB(e,t,s),{bullets:p1}=VS(),f1=iV(e),F0=mV(e),T0=l?U.vehicle:null,A1=l?U.vehicleMemory:null,[s0,c0]=jB(!1);Lf(()=>{let X=()=>{c0(document.documentElement.getAttribute("data-theme")==="light")};X();let C1=new MutationObserver(X);return C1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>C1.disconnect()},[]);let{add:$1,open:w2,warmCatalog:e0}=c4();Lf(()=>{s||e0(e.kind)},[s,e.kind,e0]);let L2=O.filter(X=>!W||X.values.length>0),d0=L2.filter(X=>X.role==="resolves"),m1=L2.filter(X=>X.role==="describes"&&!fV(F0,X.key)),q1=m1.findIndex(X=>X.chosen===null),o0=(!T0||!U.vehicleAnswersSpecs||t.fitmentSet)&&sn(O,W)?q1===-1?m1:m1.slice(0,q1+1):[],P0=[...d0,...o0],y0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[d1&&z1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:d1}),z1("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:f1?Dw(Y,x1):he(Y,x1)}),Y.priced&&z1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:U.unitLabel}),Y.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:[K.quantityLabel,": ",B2(e1,x1)]})]}),o2=q81(null);return Lf(()=>{s||o2.current===e.slug||(o2.current=e.slug,Ow({itemId:V?`${e.slug}|${V.id}`:e.slug,itemName:e.name,variant:U.metaValue,pricePerSet:Y.setTotal??Y.fromSetTotal??0,currency:x1}))},[s,e.slug,e.name,U.metaValue,V,Y,x1]),K1(n5,{children:[z1("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:s0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((X,C1)=>K1("span",{children:[C1>0&&K1(n5,{children:[z1("span",{className:"mx-3 text-accent",children:"/"}),z1("wbr",{})]}),X.href?z1(S1,{href:X.href,className:"hover:text-fg",children:z1(ch,{text:X.label})}):z1("span",{className:"text-fg",children:z1(ch,{text:X.label})})]},`${X.label}-${C1}`))}),K1("section",{"data-hero-layout":u,"data-hero-align":g,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",u==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:1fr]"].join(" "),style:{...s0?{}:{background:"var(--section-bg)"},...u==="stacked"?{}:{"--hero-cols":z}},children:[K1("div",{"data-hero-gallery":f,"data-hero-fit":v,className:f==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:u==="imageRight"?{order:2}:void 0,children:[K1("div",{className:f==="tiled"?"min-w-0 flex-1":void 0,children:[z1($81,{name:e.name,view:U,angleIdx:Z,onSelect:F,isLight:s0,onLightbox:a,fit:v}),U.galleryHint&&z1("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:U.galleryHint})]}),f!=="main"&&z1(Y81,{name:e.name,view:U,angleIdx:Z,onSelect:F,isLight:s0,tiled:f==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",g==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:u==="imageRight"?{order:1}:void 0,children:[K1("div",{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:[z1("span",{children:z1(ch,{text:e.eyebrow})}),e.badge&&K1(n5,{children:[z1("span",{children:"\xB7"}),z1("span",{children:e.badge})]})]}),z1("h1",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",children:(()=>{let X=U.heading.lastIndexOf(" ");if(X===-1)return U.heading;let C1=U.heading.slice(0,X),h0=U.heading.slice(X+1);return K1(n5,{children:[C1," ",K1("em",{className:"font-normal italic text-accent",children:[h0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&y0,A1,d0.map(X=>z1(UB,{row:X,onPick:k},X.key)),W&&U.preOrder?K1(n5,{children:[c==="belowSpecs"&&h&&y0,U.preOrder]}):K1(n5,{children:[T0,o0.map(X=>z1(UB,{row:X,onPick:k},X.key)),n&&z1(j81,{facts:c1}),(K.packs.length>0||K.extra||K.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[K.packs.length>0&&K1(n5,{children:[z1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),z1("div",{className:"flex flex-wrap gap-1.5",children:K.packs.map(X=>K1("button",{type:"button",onClick:()=>E(C1=>({...C1,unit:X.value})),"aria-pressed":R.unit===X.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",R.unit===X.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:R.unit===X.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[R.unit===X.value&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:X.label})]},X.value))})]}),K.extra&&K1("label",{className:`${K.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:[z1("input",{type:"checkbox",checked:R.spares>0,onChange:X=>E(C1=>({...C1,spares:X.target.checked?cr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),K.extra.label]}),K.spareCounts.length>0&&K1(n5,{children:[z1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:K8.howMany}),z1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:K.spareCounts.map(X=>{let C1=X.value-t7,h0=R.spares===C1;return K1("button",{type:"button",onClick:()=>E(V0=>({...V0,spares:C1})),"aria-pressed":h0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",h0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:h0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[h0&&z1("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:[X.value," \xB7 ",X.label]})]},X.value)})})]}),K.spareSide&&K1(n5,{children:[z1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:K.spareSide.label}),z1("div",{className:"flex flex-wrap gap-1.5",children:K.spareSide.options.map(X=>{let C1=R.spareSide===X.value;return K1("button",{type:"button",onClick:()=>E(h0=>({...h0,spareSide:X.value})),"aria-pressed":C1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",C1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:C1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[C1&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:X.label})]},X.value)})})]})]}),c==="belowSpecs"&&h&&y0,K1("div",{className:kB,children:[!(f1&&!Y.priced)&&z1(Da,{value:M,onChange:A,size:"large"}),f1&&!Y.priced?z1(S1,{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:rr}):Y.priced?q?z1("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",[re]:"",onClick:()=>{if(!r1){N(!0),window.setTimeout(()=>N(!1),W81);return}if(N(!1),s)return;let X=FV(e,V,x,{choice:R,qty:M},{fitmentLabel:B?U.specCaption:P.appliedName?`For ${P.appliedName}`:"",fitmentKey:B?`manual|${U.specCaption}`:`vehicle|${U81(P.applied?.vehicle)}`});X&&($1(X),w2())},"aria-disabled":!r1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",r1?"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:r1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",Y.setTotal!=null?` \xB7 ${B2(e1,x1)}`:""]}):z1("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:a7}),z1(X81,{slug:e.slug,name:e.name})]}),q&&V&&z1(J81,{partNumbers:V.components.map(X=>X.partNumber),productSlug:e.slug},V.id),T&&(()=>{let X=P0.filter(h0=>h0.chosen===null).map(h0=>h0.prompt.replace(/^Select\s+/i,""));if(T0&&U.vehicleAnswersSpecs&&!t.fitmentSet&&X.push("vehicle fitment"),X.length===0)return null;let C1=X.length===1?X[0]:X.length===2?`${X[0]} and ${X[1]}`:`${X.slice(0,-1).join(", ")}, and ${X.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 ",C1," first."]})})()]}),p1.length>0&&z1("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:p1.map((X,C1)=>K1("li",{children:[z1("strong",{className:"font-bold text-accent",children:X.label}),X.detail?` ${Wa} ${X.detail}`:""]},`${X.label}-${C1}`))})]})]})]})}function j81({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[z1("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"]}),z1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),z1("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 UB({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]",[WB]: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 ",z1("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," ",z1(S1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?z1("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&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),z1("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)})}):z1("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&&z1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),z1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&z1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function KB(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var K81=6;function $81({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=EB(t.photos,o),n=KB(t),h=n>=2,m=String(n).padStart(2,"0"),p=Math.min(a,Math.max(t.photos.length-1,0)),u=h||t.captions[p]?sh(t,p):"",g=[e,t.metaValue,u].filter(Boolean).join(" \u2014 "),d="max-[720px]:static",f=["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 ${d} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(n5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),z1("span",{className:"text-fg-dim",children:"\xB7"})]}),z1("span",{children:e}),t.metaValue&&K1(n5,{children:[z1("span",{className:"text-fg-dim",children:"\xB7"}),z1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&z1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${d}`,children:PB(a,n,s).map(z=>z1("button",{type:"button","aria-label":z.label,title:z.label,onClick:z.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:z.glyph},z.label))}),K1("div",{className:f,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((z,x)=>z1("span",{className:`absolute ${z} h-3 w-3 border border-fg-dim/40`,style:{borderTop:z.includes("top")?"1px solid var(--site-line)":"none",borderBottom:z.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:z.includes("left")?"1px solid var(--site-line)":"none",borderRight:z.includes("right")?"1px solid var(--site-line)":"none"}},x)),t.stageImage({photo:i,alt:g,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,g),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 ${d} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[z1("span",{children:t.specCaption}),z1("span",{children:t.originCaption})]})]})}function Y81({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=KB(t);return r<2?null:z1("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,K81)}, 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 ${sh(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:[z1("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 ${sh(t,i)}`})]},i)})})}function X81({slug:e,name:t}){let{has:a,toggle:s}=qB(),c=a(e);return z1("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 J81({partNumbers:e,productSlug:t}){let[a,s]=jB(""),{status:c,submit:l,reset:r}=_i();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?z1("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."}):z1(Hc,{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 t91,jsx as Tc,jsxs as a91}from"react/jsx-runtime";function Af({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=$B(null),[i,n]=$B(!1);return Q81(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?g0.getTyre(e).then(p=>({kind:"tyre",tyre:p})):g0.getWheel(e).then(p=>({kind:"wheel",wheel:p}))).then(p=>{h||o(p)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?Tc(M4,{size:"tall",children:"Couldn\u2019t load this product."}):r?Tc(e91,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):Tc(M4,{size:"tall",children:"Loading product\u2026"})}function e91({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?nn(e.tyre):Gs(e.wheel),r=mc(l,{editing:t}),o=hc();return a91(t91,{children:[Tc(ta,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),Tc(Tt,{item:o.item,onClose:o.close})]})}import{Fragment as r91,jsx as Q7,jsxs as o91}from"react/jsx-runtime";var s91=R3;function lh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=Y0();return Q7(x2,{kinds:s91,type:"ProductHero",editing:e,children:c?Q7(ta,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?Q7(c91,{pricePlacement:t,showVehicleFitment:a,...s}):Q7(M4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function c91({pricePlacement:e,showVehicleFitment:t,...a}){let s=v3(!0);return s?Q7(l91,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):Q7(M4,{size:"tall",children:"Loading sample product\u2026"})}function l91({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=mc(e,{editing:!0}),l=hc();return o91(r91,{children:[Q7(ta,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),Q7(Tt,{item:l.item,onClose:l.close})]})}import{jsx as Pc}from"react/jsx-runtime";function i91({source:e,editing:t=!1,pricePlacement:a=Dt,showVehicleFitment:s=!0,heroLayout:c=j7,imageRatio:l=K7,textAlign:r=n9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=$7,imageFit:h=Y7}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return Y0()||t&&D2()?Pc(lh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Pc(Af,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Pc(M4,{size:"tall",children:"Pick a product in the panel to fill this hero."}):Pc(lh,{pricePlacement:a,showVehicleFitment:s,...m})}var YB={label:"Product Hero",defaultProps:{source:null,pricePlacement:Dt,showVehicleFitment:!0,heroLayout:j7,imageRatio:K7,textAlign:n9,showSpecTable:!0,showPriceQuote:!0,galleryMode:$7,imageFit:Y7},render:e=>Pc(i91,{source:e.source,editing:e.puck?.isEditing,pricePlacement:XI(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Ot(e.heroLayout),imageRatio:An(e.imageRatio),textAlign:Ln(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:Hn(e.galleryMode),imageFit:Fn(e.imageFit)})};import{jsx as n91}from"react/jsx-runtime";var XB={label:"Product",defaultProps:{code:"",finish:""},render:e=>n91(xv,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as h91}from"react/jsx-runtime";var JB={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>h91(BR,{style:e,editing:t?.isEditing})};import{useEffect as p91,useRef as u91}from"react";import{jsx as Ec,jsxs as QB}from"react/jsx-runtime";var m91={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function Hf({variants:e,answer:t,loading:a=!1}){return t?QB("div",{className:"mt-9",children:[Ec("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Jn(t)}),Ec("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ba(t,s.sku),l=m91[c];return QB("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Ec("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Ec("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Qn[c]})]},s.sku)})})]}):a?Ec("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 Ff,jsxs as eZ}from"react/jsx-runtime";var Tf="Will it fit *your car?*",Pf="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",Ef="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",Vf="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 Nf({num:e,title:t=Tf,description:a=Pf,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=N4({autoApply:!0}),{answer:h,loading:m}=Xn(r,so(n.applied?.vehicle)),p=u91(i);return p.current=i,p91(()=>{p.current?.(h)},[h]),eZ("section",{className:l?Vf:Ef,children:[l?null:Ff(Q1,{num:e,title:t,description:a,accent:!0}),Ff(K3,{cascade:n.cascade}),s&&c?eZ("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,Ff(Hf,{variants:o,answer:h,loading:m})]})}import{jsx as Vc,jsxs as v91}from"react/jsx-runtime";var d91=["tyre"];function _f(e){return Vc(x2,{kinds:d91,type:"TyreFitment",editing:e.editing,children:Vc(g91,{...e})})}function g91({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=Y0(),i=v3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?v91("section",{className:l?Vf:Ef,children:[l?null:Vc(Q1,{num:e,title:t||Tf,description:a||Pf,accent:!0}),Vc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:"The vehicle question appears here on a tyre product page, with one verdict per size."})]}):null:Vc(Nf,{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 f91}from"react/jsx-runtime";var tZ={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=t1(e.escapeText),c=t1(e.escapeHref);return f91(_f,{num:a(y(e.num,j0.num,e.puck)),title:a(y(e.title,L.sectionHeading,e.puck)),description:a(y(e.description,L.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as e8,jsxs as cZ}from"react/jsx-runtime";var aZ="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",sZ="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",b91=[],x91=["tyre"];function If(e){return e8(x2,{kinds:x91,type:"TyreSizes",editing:e.editing,children:e8(z91,{...e})})}function z91({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=Y0(),r=v3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:e8(Q1,{num:e?C(e):void 0,title:$(t||"Available *sizes.*",!1),description:C(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?cZ("section",{className:c?sZ:aZ,children:[n,e8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:"This product\u2019s sizes appear here on a product page."})]}):null;let h=i.some(m=>!m.image);return cZ("section",{className:c?sZ:aZ,children:[n,e8(y91,{variants:i,fieldUsage:l?.fieldUsage??b91}),e8(t5,{text:h?to:""})]})}function y91({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=p0();return e8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>e8(ic,{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 w91}from"react/jsx-runtime";var lZ={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return w91(If,{num:a(y(e.num,j0.num,e.puck)),title:a(y(e.title,L.sectionHeading,e.puck)),description:a(y(e.description,L.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var rZ={AlloyWheelsListing:dN,BrandStrip:FR,BundleOffer:NR,CartBlock:OR,CatalogFilterBar:tB,CheckoutCTA:VN,CollectionCard:sB,Collections:ZN,CompatibleTyres:f_,CountrySwitchBlock:cB,DeliveryOptions:y_,DetailRows:__,EuTyreLabel:lB,FitmentFinder:G_,FitmentTable:nI,Gallery:fI,GalleryB:LI,GalleryItem:rB,Header:CB,ProductGrid:qI,ProductHero:YB,ProductRef:XB,RelatedProducts:rR,SearchBlock:JB,SpecTable:wR,TyreFitment:tZ,TyreSizes:lZ};var C91={AlloyWheelsListing:fN,BrandStrip:wN,BundleOffer:CN,CartBlock:kN,CatalogFilterBar:PN,CheckoutCTA:NN,CollectionCard:RN,Collections:ON,CompatibleTyres:b_,CountrySwitchBlock:x_,DeliveryOptions:C_,DetailRows:R_,EuTyreLabel:B_,FitmentFinder:q_,FitmentTable:hI,Gallery:zI,GalleryB:AI,GalleryItem:VI,Header:NI,ProductGrid:UI,ProductHero:eR,ProductRef:lR,RelatedProducts:oR,SearchBlock:iR,SpecTable:kR,TyreFitment:MR,TyreSizes:SR},W0=je(rZ,C91);import{jsx as g4,jsxs as rh}from"react/jsx-runtime";function Bf(e={}){let t=zw();return g4(tL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:g4(k91,{...e})})}var oZ="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]",Rf="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function k91({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:p,requiresPayment:u,date:g,earliestDate:d,setDate:f,setDateTouched:v,availability:z,loadingSlots:x,noSlotsMessage:k,selectedStart:M,setSelectedStart:A,customerTimezone:R,name:E,setName:Z,email:F,setEmail:T,phone:N,setPhone:B,notes:P,setNotes:O,confirmation:c1,submitting:V,error:q,canSubmit:K,handleSubmit:W,sample:r1}=f7(),x1=r1?g4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:"Example form \u2014 add an active service in Storefront \u2192 Booking Services."}):null,Y=n===void 0?g4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?g4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?"Add an active service in Storefront \u2192 Booking Services.":"Appointments are not available right now."}):null;return r&&l?g4("section",{className:"relative z-[2] border-t border-line bg-surface",children:rh("div",{className:oZ,children:[x1,c1?g4(l,{className:`${Rf} items-start`}):rh("form",{onSubmit:W,children:[g4(l,{className:`${Rf} items-start`}),Y]})]})}):g4("section",{className:"relative z-[2] border-t border-line bg-surface",children:rh("div",{className:oZ,children:[x1,g4(So,{eyebrow:e,heading:t,intro:a}),c1?g4(Ho,{successMessage:c}):Y||rh("form",{onSubmit:W,className:Rf,children:[g4(Lo,{}),g4(Ao,{buttonLabel:s})]})]})})}import{jsx as M91}from"react/jsx-runtime";var Zf={boxes:{type:"slot",allow:["BookingBox"]}},iZ={label:"Booking Form",fields:Zf,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>M91(Bf,{eyebrow:y(e.eyebrow,L.eyebrow,e.puck),heading:y(e.heading,L.heading,e.puck),intro:y(e.intro,L.body,e.puck),buttonLabel:y(e.buttonLabel,L.button,e.puck),successMessage:y(e.successMessage,L.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var nZ={fields:{_gContent:b("Content"),eyebrow:G("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:G("Submit button"),successMessage:E1("Confirmation message"),boxes:Zf.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 hZ={fields:{_gTextStyle:b("Text style"),...Object.fromEntries(Fo.map(e=>[To[e],g1($p[e],Oe($p[e]),[{label:"Section's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gContent:b("Content"),eyebrow:G("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:G("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Fo.map(r=>To[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 S91,LinkIcon as mZ,EyeOffIcon as L91}from"efficient-easel/icons";import{jsx as Nc}from"react/jsx-runtime";var pZ={fields:{_gTop:b("Routing groups"),routingNumber:H("Section number",v0.routingNumber),routingTagline:H("Eyebrow",v0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:G("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:G("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||"Group"},_gForm:b("Message form"),formSlug:F5(),formNumber:H("Section number",v0.formNumber),formHeading:D("Heading",v0.formHeading),metaItems:F2("Meta lines",Nc(e4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:b("\u201COther\u201D reason"),showOther:s1("Show \u201COther\u201D reason",v0.showOther,Nc(S91,{})),otherLabel:G("\u201COther\u201D chip label",v0.otherLabel),otherNoteTitle:H("\u201COther\u201D note title",v0.otherNoteTitle),otherNoteBody:D("\u201COther\u201D note body",v0.otherNoteBody),_gSubmit:b("Submit button"),buttonText:G("Submit button",v0.buttonText),consent:D("Consent line",v0.consent),_gChannels:b("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:G("Label"),value:G("Value"),href:J2(G("Link")),sub:G("Sub line"),groupId:g1("Link to group",Nc(mZ,{}),[{label:"\u2014 Not linked \u2014",value:""},...v0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:s1("Hidden",!1,Nc(L91,{}))},getItemSummary:e=>`${e?.label||e?.value||"Channel"}${e?.hidden?" \xB7 hidden":""}`}},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=lu(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||`Group ${o+1}`,value:r?.id||lu(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",Nc(mZ,{}),s,"")}}),t}};import{useEffect as A91,useRef as H91,useState as F91}from"react";import{Fragment as N91,jsx as Df,jsxs as _91}from"react/jsx-runtime";var T91=12,oh=null,uZ=null;function P91(e=!1){let t=i2();if((e||uZ!==t)&&(oh=null),!oh){let a=N3();uZ=t,oh=X1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return oh}function E91(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 V91(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?w9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:E91(e.published_at)||void 0}}function p9({value:e,onChange:t,snapshotCount:a=T91}){let[s,c]=F91("idle"),l=Array.isArray(e),r=l?e.length:0,o=H91(!0),i=h=>{c("loading"),P91(h).then(m=>{if(!o.current)return;if(m===null){c("error");return}c("idle");let p=m.slice(0,a).map(V91);p6(p,e??null)&&t(p)})};A91(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=s==="loading"?"Syncing from Storefront \u2192 Blog\u2026":s==="error"?"Couldn\u2019t reach Storefront \u2192 Blog.":l?`Auto-synced from Storefront \u2192 Blog \xB7 ${r} post${r===1?"":"s"}`:"Linking to Storefront \u2192 Blog\u2026";return _91("div",{children:[Df(G9,{label:"Blog posts"}),Df(T4,{status:s,statusText:n,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:Df(N91,{children:"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 I91}from"react";import{jsx as R0,jsxs as t8}from"react/jsx-runtime";var dZ=3,fZ="featured",ih="tabs",bZ="portrait",aa="spread",nh="count",xZ=[{label:"Even grid",value:"even"},{label:"Featured first",value:fZ},{label:"Tabs",value:ih},{label:"Photo cards",value:bZ},{label:"Staggered spread",value:aa},{label:"Count",value:nh}],R91=[bZ,aa],zZ="even",N6={min:2,max:11,step:1,fallback:7,unit:"of 12"},B91="bottom-left",Z91=55,D91="bottom";function O91(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(N6.max,Math.max(N6.min,Math.round(t))):N6.fallback;return`${a}fr ${12-a}fr`}var gZ={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"},vZ={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"},G91="Find by name",q91="Nobody by that name.";function W91(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function U91({card:e,scaffold:t,lower:a=!1}){return t8(t0,{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:[R0("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:R0(C0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),R0("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&&R0("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:C(e.meta)}),t8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[R0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:$(e.title,!1)}),e.dateLabel&&R0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:C(e.dateLabel)}),e.excerpt&&R0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:C(e.excerpt)})]})]})}function j91({cards:e,scaffold:t}){return R0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:R0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return R0("li",{children:t8(t0,{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:[R0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:$(a.title,!1)}),a.excerpt&&R0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:C(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function K91({count:e,words:t,href:a}){let s=t8("span",{className:"inline-flex items-baseline gap-3",children:[R0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&R0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?R0(t0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var $91="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]",Y91="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]",X91="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 Of({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:p=!0,featuredDarken:u,omitHead:g=!1,sample:d,nameFilter:f=!1}){let[v,z]=I91(""),x=s??[],k=r?x.length:typeof l=="number"&&l>0?l:dZ,M=x.slice(0,k),A=o&&M.length===0;if(M.length===0&&!o)return null;let R=r?dZ:k,E=A?d?.length?d.slice(0,r?d.length:R):Array.from({length:R},(V,q)=>({slug:`placeholder-${q}`,title:"Blog post title",excerpt:"A short summary of the post appears here.",cover:"",meta:"Journal",dateLabel:"Date"})):M,Z=_3("Events",n,"both"),F=h===fZ&&E.length>1,T=O91(m),N=h===ih,B=h===nh,P=R91.includes(h??""),O=f&&!N&&!B&&!F,c1=O?E.filter(V=>W91(V.title,v)):E;return B?R0("section",{className:X91,children:R0(K91,{count:E.length,words:g||t===void 0?void 0:$(t,!1),href:g?void 0:a?.href})}):t8("section",{className:g?Y91:$91,style:Y2(i),children:[g?null:R0(Q1,{num:e!==void 0?C(e):void 0,title:t!==void 0?$(t,!1):void 0,link:a?{text:C(a.text),href:a.href}:void 0}),O&&t8("div",{className:"mb-6 flex flex-col gap-2",children:[t8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[R0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:G91}),R0("input",{type:"search",value:v,onChange:V=>z(V.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"})]}),c1.length===0&&R0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:q91})]}),N?R0(j91,{cards:E,scaffold:A}):P?R0("div",{className:`sf-card-grid grid${Z.className} ${h===aa?"grid-cols-3 max-[800px]:grid-cols-2":vZ[Math.min(4,Math.max(2,c??3))]??vZ[3]}`,style:Z.style,children:c1.map((V,q)=>R0(U91,{card:V,scaffold:A,lower:h===aa&&q%3===1},`${V.slug}-${q}`))}):F?t8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${Z.className}`,style:{...Z.style,"--sf-events-split":T},children:[R0(lt,{post:E[0],href:E[0].href,scaffold:A,layout:"cover",darken:u??Z91,darkenStyle:D91,placement:B91},`${E[0].slug}-0`),R0("div",{className:`grid auto-rows-min${Z.className}`,style:Z.style,children:E.slice(1).map((V,q)=>R0(lt,{post:V,href:V.href,scaffold:A,showCover:p},`${V.slug}-${q+1}`))})]}):R0("div",{className:`sf-card-grid grid${Z.className} ${gZ[Math.min(4,Math.max(1,c??3))]??gZ[3]}`,style:Z.style,children:c1.map((V,q)=>R0(lt,{post:V,href:V.href,scaffold:A},`${V.slug}-${q}`))})]})}import{LayoutIcon as ie1,ColumnsIcon as ne1,WidthIcon as he1,ImageIcon as me1,OpacityIcon as pe1,ListIcon as ue1,HashIcon as de1,SearchIcon as ge1}from"efficient-easel/icons";import{ListIcon as se1}from"efficient-easel/icons";var hh="dataSource";var J91="dataRows";var Q91=Symbol.for("efficient.block-sources");function Gf(){let e=globalThis;return e[Q91]??={sources:new Map,revision:0}}function qf(e){let t=[...Gf().sources.values()];return e===void 0?t:t.filter(a=>a.blocks.includes(e))}function ee1(e){return Gf().sources.get(e)??null}function mh(){return Gf().revision}function _c(e){let t=e?.[hh];return typeof t=="string"?t.trim():""}function te1(e){if(!e||typeof e!="object"||Array.isArray(e))return null;let t={};for(let[a,s]of Object.entries(e))typeof s=="string"&&s&&(t[a]=s);return Object.keys(t).length?t:null}function ae1(e){let t=e?.[J91];return Array.isArray(t)?t.map(te1).filter(a=>a!==null):null}function yZ(e,t,a=[]){let s=ae1(e);if(s!==null&&(s.length||!t))return{rows:s,sample:!1};if(!t)return{rows:[],sample:!1};let c=ee1(_c(e))?.sample;return{rows:c?.length?c:a,sample:!0}}import{jsx as le1}from"react/jsx-runtime";function SZ(e,t){return g1(e,le1(se1,{}),[{label:t,value:""}],"")}var wZ=new WeakMap,CZ=-1,Wf={},kZ=new WeakMap;function ce1(e,t,a){CZ!==mh()&&(CZ=mh(),Wf={});let s=wZ.get(t);(!s||kZ.get(s)!==Wf)&&(s=new Map,kZ.set(s,Wf),wZ.set(t,s));let c=qf(e),l=a&&!c.some(i=>i.key===a)?a:"",r=`${e}\0${l}`,o=s.get(r);return o||(o={...t,options:[...t.options,...c.map(i=>({label:i.label,value:i.key})),...l?[{label:l,value:l}]:[]]},s.set(r,o)),o}var MZ=new WeakMap;function LZ(e,t,a,s={}){let c=t[hh];if(!c)return t;let l=_c(a),r=qf(e).length>0||l!=="",o=r?ce1(e,c,l):null,i=MZ.get(t);i||MZ.set(t,i=new Map);let n=`${mh()}\0${r?"1":"0"}\0${l}`,h=i.get(n);if(h)return h;let m=new Set(l?s.hides??[]:[]),p={};for(let[u,g]of Object.entries(t))u===hh?o&&(p[u]=o):m.has(u)||(p[u]=g);return i.set(n,p),p}import{jsx as oe1}from"react/jsx-runtime";var u9={num:L.sectionNumber,title:"Section title",link:L.viewAll},re1=[{key:"sample-1",title:"First card",excerpt:"A line about it appears here."},{key:"sample-2",title:"Second card",excerpt:"A line about it appears here."},{key:"sample-3",title:"Third card",excerpt:"A line about it appears here."},{key:"sample-4",title:"Fourth card",excerpt:"A line about it appears here."}],AZ=(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||"#"}),HZ={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=D1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,u9.link,e.puck),l=_c(e)!==""?yZ(e,!!e.puck?.isEditing,re1):null,r=l?l.sample?[]:l.rows.map(AZ):e.posts;return oe1(Of,{num:a(y(e.num,u9.num,e.puck)),title:a(y(e.title,u9.title,e.puck)),link:a(s?{text:s,href:t1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(AZ):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 a8}from"react/jsx-runtime";var ve1=50,FZ={fields:{_gContent:b("Content"),num:H("Number",u9.num),title:D("Heading",u9.title),linkText:H("Button",u9.link),linkHref:H1("Link"),dataSource:SZ("Cards from","Blog posts"),_gPosts:b("Blog posts"),posts:a2(p9,{snapshotCount:ve1}),_gLayout:b("Layout"),layout:g1("Arrangement",a8(ie1,{}),xZ,zZ),columns:a1("Columns",a8(ne1,{}),2,4,1,3),featuredWidth:a1("Featured width",a8(he1,{}),N6.min,N6.max,N6.step,N6.fallback,N6.unit),listCover:s1("Show cover image on the smaller cards",!0,a8(me1,{})),featuredDarken:a1("Darken",a8(pe1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:s1("Filter by name",!1,a8(ge1,{})),gap:I3("Events"),showAll:s1("Show all blog posts",!1,a8(ue1,{})),limit:a1("Posts to display",a8(de1,{}),1,20,1,3),cardImage:Y6()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...LZ("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>O1(W1(o,a,U1),e.props.headPlacement,B1.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===ih||s.layout===nh)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===aa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as ph}from"react/jsx-runtime";import{SettingsDefaultReset as fe1,SettingsField as be1,SettingsSegmented as xe1}from"efficient-easel/panel";import{WidthIcon as ze1}from"efficient-easel/icons";function uh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e;return ph(be1,{label:s,labelId:c,icon:ph(ze1,{}),value:o?l:void 0,changed:!o,action:ph(fe1,{label:s,changed:!o,onReset:()=>a(void 0)}),hint:r,children:ph(xe1,{options:[{label:Gh.page,id:"content"},{label:Gh.full,id:"full"}],value:i,ariaLabel:s,onChange:a})})}import{SettingsField as ye1,SettingsSwitch as we1}from"efficient-easel/panel";import{BlockColumnIcon as Ce1}from"efficient-easel/icons";import{Fragment as ke1,jsx as dh,jsxs as Me1}from"react/jsx-runtime";function Uf({value:e,onChange:t}){let a=y5(),s={...I9,...e},c=s[a];return dh(ye1,{label:"Logo fills its column",icon:dh(Ce1,{}),action:dh(we1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:`Logo fills its column on ${v5[a]}`}),hint:Me1(ke1,{children:["Sets the ",dh("strong",{children:v5[a]})," view \u2014 switch views in the top bar to set each one."]})})}import{SettingsField as Se1,SettingsSwitch as Le1}from"efficient-easel/panel";import{FullWidthIcon as Ae1}from"efficient-easel/icons";import{Fragment as He1,jsx as gh,jsxs as Fe1}from"react/jsx-runtime";function jf({value:e,onChange:t}){let a=y5(),s={...R9,...e},c=s[a];return gh(Se1,{label:"Logo fills its row",icon:gh(Ae1,{}),action:gh(Le1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:`Logo fills its row on ${v5[a]}`}),hint:Fe1(He1,{children:["Sets the ",gh("strong",{children:v5[a]})," view \u2014 switch views in the top bar to set each one."]})})}import{jsx as Te1}from"react/jsx-runtime";function Kf({value:e,onChange:t}){return Te1(Vs,{label:"Columns per line",unit:"columns",steps:Kz,value:Ll(e),onChange:t})}import{useContext as Pe1,useEffect as Ee1,useRef as Ve1,useState as PZ}from"react";import{jsx as sa,jsxs as TZ}from"react/jsx-runtime";function Ic(){let e=RR();return TZ("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:[sa("span",{children:e}),TZ("span",{className:"flex flex-wrap items-center gap-3",children:[sa("span",{children:"Privacy"}),sa("span",{"aria-hidden":!0,children:"\xB7"}),sa("span",{children:"Terms"}),sa("span",{"aria-hidden":!0,children:"\xB7"}),sa("span",{children:"Cookies"})]})]})}import{jsx as $f,jsxs as Ie1}from"react/jsx-runtime";var EZ={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},Ne1={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"},_e1={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 Yf({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=Pe1(ga),{desktop:o,tablet:i,mobile:n}=Ll(s),{desktop:h,tablet:m,mobile:p}={...I9,...c},{desktop:u,tablet:g,mobile:d}={...R9,...l},f=y5(),z=t?EZ[f==="desktop"?o:f==="tablet"?i:n]:`${EZ[n]} ${Ne1[i]} ${_e1[o]}`,x=Ve1(null),[k,M]=PZ(1),[A,R]=PZ(!1);if(Ee1(()=>{if(!t&&!r)return;let Z=x.current;if(!Z)return;let F=()=>{let c1=Z.querySelector(".footer-block-grid");if(!c1)return;let V=t?f:Qz(window.innerWidth),q=V==="desktop"?u:V==="tablet"?g:d;R(q);let K=V==="desktop"?h:V==="tablet"?m:p,W=getComputedStyle(c1).gridTemplateColumns.split(" ").filter(Boolean).length-1,r1=Math.max(c1.childElementCount-1,0);M(!q&&K&&W>=1?Math.max(Math.ceil(r1/W),1):1)},T,N=()=>{clearTimeout(T),T=setTimeout(F,0)},B=[0,80,250,600].map(c1=>setTimeout(F,c1)),P=new MutationObserver(N);P.observe(Z,{childList:!0,subtree:!0});let O=new ResizeObserver(N);return O.observe(Z),()=>{clearTimeout(T),B.forEach(clearTimeout),P.disconnect(),O.disconnect()}},[o,i,n,t,r,f,h,m,p,u,g,d]),!t&&!r)return null;let E=gl(vl(a))??void 0;return $f("footer",{ref:x,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":A?"1 / -1":"1"},children:Ie1("div",{style:E,children:[$f(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${z}`,minEmptyHeight:160}),$f(Ic,{})]})})}import{jsx as Re1}from"react/jsx-runtime";var Xf={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},VZ={label:"Footer",fields:Xf,defaultProps:{columns:$z,logoFill:I9,logoRowFill:R9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>Re1(Yf,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as vh}from"react/jsx-runtime";var NZ={fields:{_gLayout:b("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>vh(uh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:"Follows the page",hint:"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})=>vh(Kf,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>vh(Uf,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>vh(jf,{value:e,onChange:t})},_gBlocks:b("Blocks"),blockList:c2("Footer"),blocks:Xf.blocks}};import{WeightIcon as Be1,WidthIcon as Ze1,PhoneIcon as De1}from"efficient-easel/icons";import{jsx as Jf}from"react/jsx-runtime";var _Z={fields:{_gStyle:b("Style"),thickness:a1("Thickness",Jf(Be1,{}),1,8,1,1,"px"),lengthPct:a1("Length",Jf(Ze1,{}),10,100,1,100,"%"),hideOnMobile:s1("Hide on mobile",!1,Jf(De1,{}))}};var IZ={fields:{_gContent:b("Content"),heading:E1("Heading","Join our email list"),placeholder:G("Field placeholder","Email address"),buttonLabel:G("Button","Subscribe")}};import{AlignLeftIcon as qe1}from"efficient-easel/icons";import{jsx as RZ}from"react/jsx-runtime";var Oe1={start:"items-start",center:"items-center",end:"items-end"};function Qf({direction:e="vertical",gap:t,align:a="start",content:s}){let c=_3("FooterGroup",t,e==="horizontal"?"inline":"block");return RZ("div",{className:"min-w-0",children:RZ(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${Oe1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as Ge1}from"react/jsx-runtime";var eb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},BZ={label:"Footer Box",fields:eb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>Ge1(Qf,{direction:e,gap:t,align:a,content:s})};import{jsx as We1}from"react/jsx-runtime";var ZZ={fields:{_gLayout:b("Layout"),direction:b1("Direction",h8("`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:I3("FooterGroup"),align:b1("Alignment",We1(qe1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:b("Blocks"),blockList:c2("FooterGroup"),blocks:eb.blocks}};import{WidthIcon as Ue1,AlignLeftIcon as je1,LogoIcon as Ke1,PaddingTopIcon as $e1,PaddingRightIcon as Ye1,PaddingBottomIcon as Xe1,PaddingLeftIcon as Je1}from"efficient-easel/icons";import{jsx as d9}from"react/jsx-runtime";var DZ={fields:{_gContent:b("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:b("Style"),widthPct:a1("Width",d9(Ue1,{}),40,400,1,100,"%"),align:b1("Alignment",d9(je1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:b1("Logo color",d9(Ke1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:a1("Padding top",d9($e1,{}),0,120,2,0,"px"),padRight:a1("Padding right",d9(Ye1,{}),0,120,2,0,"px"),padBottom:a1("Padding bottom",d9(Xe1,{}),0,120,2,0,"px"),padLeft:a1("Padding left",d9(Je1,{}),0,120,2,0,"px")}};import{Button as Qe1}from"efficient-shell/ui";import{SettingsField as et1}from"efficient-easel/panel";import{FieldSelect as tt1}from"efficient-easel/fields";import{MenuIcon as at1}from"efficient-easel/icons";import{useCallback as st1,useEffect as OZ,useState as tb}from"react";import{jsx as ca,jsxs as ab}from"react/jsx-runtime";function sb({value:e,onChange:t}){let[a,s]=tb(null),[c,l]=tb(!1),r=st1(v=>{s(v),l(!0)},[]);OZ(()=>{let v=!1;return $m(N3()).then(z=>{v||r(z)}).catch(()=>{v||s([])}),()=>{v=!0}},[r]),OZ(()=>{let v=!1,z=uM(()=>{yk(N3()).then(x=>{v||r(x)}).catch(()=>{})});return()=>{v=!0,z()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Vr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Vr(a??[],e)?.id??"",p=v=>t({id:v.id,handle:v.handle,name:v.name,items:v.items.map(z=>({label:z.label,url:z.url}))}),u=v=>{if(!v){t(null);return}let z=(a??[]).find(x=>x.id===v);z&&p(z)},[g,d]=tb(!1),f=()=>{i&&(d(!0),$m(N3(),!0).then(v=>{r(v);let z=Vr(v,e);z&&p(z)}).catch(()=>{}).finally(()=>d(!1)))};return ab("div",{children:[ca(et1,{label:"Menu",icon:ca(at1,{}),hint:!o&&a&&a.length===0?"Create menus in Storefront \u2192 Menus, then pick one here.":void 0,children:ca(tt1,{value:m,ariaLabel:"Menu",onChange:u,readOnly:o||(a?.length??0)===0,options:[{label:o?"Loading menus\u2026":a&&a.length===0?"No menus found":"Select a menu\u2026",value:""},...(a??[]).map(v=>({label:`${v.name} (${v.item_count??v.items.length})`,value:v.id}))]})}),h?ca("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:pk}):null,n?ca("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:uk(e?.name??"The linked menu")}):null,i&&!n?ab("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[ab("p",{className:"text-[12px] text-fg-dim",children:["Linked to \u201C",e?.name,"\u201D \u2014 ",e?.items?.length??0," link",(e?.items?.length??0)===1?"":"s",". Re-pull after editing the menu:"]}),ca(Qe1,{variant:"link",size:"sm",className:"shrink-0",onClick:f,disabled:g,children:g?"Updating\u2026":"Update links"})]}):null]})}import{PhoneIcon as ct1,LineBetweenIcon as lt1}from"efficient-easel/icons";import{jsx as cb}from"react/jsx-runtime";var GZ={fields:{_gContent:b("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>cb(sb,{value:e,onChange:t})},heading:G("Heading","Column heading"),_gStyle:b("Style"),accordionMobile:s1("Show as accordion on mobile",!1,cb(ct1,{})),showDividers:s1("Dividers between links",!1,cb(lt1,{}))}};import{jsx as Rc}from"react/jsx-runtime";var qZ={small:16,medium:20,large:24},lb=0,rb=32,UZ=2,Bc=0,WZ={start:"justify-start",center:"justify-center",end:"justify-end"};function ob({iconStyle:e=ee,iconSize:t="medium",align:a="start",gap:s=Bc,editing:c=!1}){let l=_R(),r=Ey(Py(l));if(r.length===0)return c?Rc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:"Add your social links"}):null;let o=qZ[t]??qZ.medium,n={gap:Math.min(rb,Math.max(lb,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return Rc("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)] ${WZ[a]??WZ.start}`,style:n,children:r.map(({platform:h,href:m,label:p})=>Rc("li",{children:Rc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${p} (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:Rc(qy,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as rt1}from"efficient-shell/ui";import{Fragment as ot1,jsx as ib,jsxs as it1}from"react/jsx-runtime";function nb(){let{openPanel:e}=Wl();return it1(ot1,{children:[ib(G9,{label:"Social links"}),ib("p",{className:"es-field-hint sf-hint-keep",children:"The links are typed once for the whole website, in Site settings."}),ib(rt1,{variant:"link",size:"sm",onClick:e,children:"Edit social links \u2192"})]})}import{StylesIcon as nt1,TextSizeIcon as ht1,AlignLeftIcon as mt1,GapIcon as pt1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var jZ={fields:{_gStyle:b("Style"),iconStyle:b1("Icon style",Zc(nt1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],ee),iconSize:b1("Icon size",Zc(ht1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Zc(nb,{})},_gLayout:b("Layout"),align:b1("Alignment",Zc(mt1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:a1("Gap",Zc(pt1,{}),lb,rb,UZ,Bc,"px")}};import{TextSizeIcon as ut1}from"efficient-easel/icons";import{jsx as dt1}from"react/jsx-runtime";var KZ={fields:{_gContent:b("Content"),text:E1("Body","Footer text"),_gStyle:b("Style"),size:b1("Size",dt1(ut1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:Co()}};var $Z={fields:{_gForm:b("Form"),formSlug:F5(),_gContent:b("Content"),heading:G("Heading override"),intro:E1("Intro"),submitText:G("Submit button"),finePrint:G("Fine print")}};var YZ={fields:{}};var fh="e.g. D00123 \xB7 blank = the whole store";import{useState as s8}from"react";import{Fragment as ft1,jsx as o3,jsxs as Dc}from"react/jsx-runtime";var bh="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",gt1="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))]",vt1="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 hb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=s8(""),[o,i]=s8(""),[n,h]=s8(0),[m,p]=s8(""),[u,g]=s8(""),[d,f]=s8(!1),[v,z]=s8(!1),[x,k]=s8(null);async function M(A){if(A.preventDefault(),!(c||d)){if(n<1){k("Choose a star rating.");return}f(!0),k(null);try{await g0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:u.trim(),...a?.trim()?{designCode:a.trim()}:{}}),z(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{f(!1)}}}return o3("section",{className:"relative z-[2] border-t border-line bg-surface",children:Dc("div",{className:s?vt1:gt1,children:[s?null:Dc(ft1,{children:[(e??"").trim()&&o3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&o3("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:$(t??"",!1)})]}),v?o3("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."}):Dc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:M,children:[Dc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[o3(Z2,{label:"Name",required:!0,children:o3("input",{type:"text",required:!0,value:l,onChange:A=>r(A.target.value),className:bh})}),o3(Z2,{label:"Email \u2014 never shown publicly",children:o3("input",{type:"email",value:o,onChange:A=>i(A.target.value),className:bh})})]}),Dc("div",{className:"flex flex-col gap-2",children:[o3(v8,{required:!0,children:"Rating"}),o3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(A=>o3("button",{type:"button","aria-pressed":n>=A,"aria-label":`${A} star${A===1?"":"s"}`,onClick:()=>{h(A),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=A?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},A))})]}),o3(Z2,{label:"Review title (optional)",children:o3("input",{type:"text",value:m,onChange:A=>p(A.target.value),className:bh})}),o3(Z2,{label:"Your review",required:!0,children:o3("textarea",{required:!0,rows:5,value:u,onChange:A=>g(A.target.value),className:bh+" resize-y"})}),x&&o3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:x}),o3("button",{type:c?"button":"submit",disabled:d,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:d?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as bt1}from"react/jsx-runtime";var Oc={eyebrow:"Your turn",title:"Leave a *review.*"},XZ={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return bt1(hb,{eyebrow:a(y(e.eyebrow,Oc.eyebrow,e.puck)),title:a(y(e.title,Oc.title,e.puck)),omitHead:t,designCode:t1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var JZ={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",Oc.eyebrow),title:D("Heading",Oc.title),_gSource:b("Reviews"),designCode:J2(G("Design code",fh))},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.ReviewForm.headRows)};import{StylesIcon as Lt1,HashIcon as At1,ColumnsIcon as Ht1}from"efficient-easel/icons";import{useEffect as xt1,useState as zt1}from"react";function QZ(e,t){let[a,s]=zt1(null);return xt1(()=>{let c=!1;return s(null),g0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as Mt1,jsx as Z4,jsxs as xh}from"react/jsx-runtime";var eD=[{id:"sample-review-1",authorName:"Sample reviewer",rating:5,title:"Sample review title",body:"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:"Sample reviewer",rating:4,title:"",body:"Reviews are collected by the Review Form section and wait for your approval before they show.",designCode:"",createdAt:""},{id:"sample-review-3",authorName:"Sample reviewer",rating:5,title:"Another sample",body:"Set a product design code on this section to show one product's reviews; leave it blank for the whole store.",designCode:"",createdAt:""}];function yt1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function wt1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return Z4("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)=>Z4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Ct1="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))]",kt1="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 mb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=QZ(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=i&&i.length>0?i:o?eD:[],m=h===eD;return!o&&h.length===0?null:Z4("section",{className:"relative z-[2] border-t border-line bg-surface",children:xh("div",{className:r?kt1:Ct1,children:[r?null:xh(Mt1,{children:[(t??"").trim()&&Z4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&Z4("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:$(a??"",!1)})]}),Z4("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:h.map(p=>xh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",m?"opacity-60":""].join(" "),children:[Z4(wt1,{rating:p.rating}),p.title.trim()&&Z4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:p.title}),Z4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:b0(p.body).map((u,g)=>Z4("p",{className:g?"mt-3":"",children:u},g))}),xh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[Z4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:p.authorName}),Z4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:yt1(p.createdAt)})]})]},p.id))})]})})}import{jsx as St1}from"react/jsx-runtime";var Gc={eyebrow:"Reviews",title:"From our *customers.*"},tD={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=D1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return St1(mb,{look:s4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,Gc.eyebrow,e.puck)),title:a(y(e.title,Gc.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:t1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as pb}from"react/jsx-runtime";var aD={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",Gc.eyebrow),eyebrowLook:g1("Eyebrow style",pb(Lt1,{}),[...y4],J6("Reviews")),title:D("Heading",Gc.title),_gSource:b("Reviews"),limit:a1("Reviews to display",pb(At1,{}),3,12,1,6),designCode:J2(G("Design code",fh)),_gStyle:b("Style"),columns:a1("Columns",pb(Ht1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>O1(W1(t,a,U1),e.props.headPlacement,B1.Reviews.headRows)};import{FullWidthIcon as Pt1}from"efficient-easel/icons";import{jsx as ub,jsxs as Ft1}from"react/jsx-runtime";function qc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=Ft1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":dB(c),"data-header-menu-row":gB(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?ub("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?"Site header \u2014 above every page":"Site footer \u2014 below every page"}):null,ub(t,{minEmptyHeight:120})]});return e==="header"?ub(vk,{children:o}):o}import{jsx as Tt1}from"react/jsx-runtime";var db={sections:{type:"slot"}},sD={label:"Site Footer",fields:db,render:({sections:e,fullWidth:t,puck:a})=>Tt1(qc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as Et1}from"react/jsx-runtime";var cD={fields:{fullWidth:s1("Full width",!1,Et1(Pt1,{})),sections:db.sections}};import{CaseIcon as Nt1,ContrastIcon as _t1,FullWidthIcon as It1,HeightIcon as Rt1,LayoutIcon as Bt1,StickyIcon as Zt1}from"efficient-easel/icons";import{jsx as Vt1}from"react/jsx-runtime";var gb={sections:{type:"slot"}},lD={label:"Site Header",fields:gb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>Vt1(qc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as la}from"react/jsx-runtime";var{sectionAccent:Dt1}=q9(e=>pf(e)??pB,"Follow the site theme"),rD={fields:{heightPx:a1("Height",la(Rt1,{}),w5.min,w5.max,2,w5.default,"px"),fullWidth:s1("Full width",!1,la(It1,{})),sectionAccent:Dt1,topTextColor:b1("Text color at the top",la(_t1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:b1("Letters",la(Nt1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:b1("Menu row",la(Bt1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:b1("Sticky header",la(Zt1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:gb.sections}};import{jsx as zh,jsxs as Ot1}from"react/jsx-runtime";var z0={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 Wc(e,t){return e===void 0?t:e}function vb({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=Wc(e,z0.eyebrow),p=Wc(t,z0.title),u=Wc(a,z0.body),g=Wc(s,z0.buttonText),d=Wc(c,z0.consent),f=L5(l,r),v=n7({form:f,formSlug:l,editing:o}),z=f===void 0,x=!!f||o;return!x&&!m&&!p&&!u?null:n&&i?zh("section",{className:N0(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:zh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):Ot1("section",{className:N0(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:[zh(pL,{eyebrow:m,title:p}),zh(Po,{body:u,buttonLabel:g,consent:d,form:f,submission:v,showForm:x,resolving:z,editing:o})]})}var oD={fields:{_gTextStyle:b("Text style"),...Object.fromEntries(Eo.map(e=>[Vo[e],g1(Qp[e],Oe(Qp[e]),[{label:"Section's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gContent:b("Content"),eyebrow:H("Eyebrow",z0.eyebrow),title:D("Heading",z0.title),body:D("Body",z0.body),formSlug:F5(),buttonText:H("Button",z0.buttonText),consent:D("Consent line",z0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Eo.map(n=>Vo[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 Gt1}from"react/jsx-runtime";var fb={boxes:{type:"slot",allow:["SubmitBox"]}},iD={label:"Photo Submission Form",fields:fb,defaultProps:{eyebrow:z0.eyebrow,title:z0.title,body:z0.body,formSlug:"",buttonText:z0.buttonText,consent:z0.consent},render:e=>Gt1(vb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:Q0(e.eyebrow,z0.eyebrow,e.puck),title:Q0(e.title,z0.title,e.puck),body:Q0(e.body,z0.body,e.puck),buttonText:Q0(e.buttonText,z0.buttonText,e.puck),consent:Q0(e.consent,z0.consent,e.puck),formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var nD={fields:{_gContent:b("Content"),eyebrow:H("Eyebrow",z0.eyebrow),title:D("Heading",z0.title),body:D("Body",z0.body),_gForm:b("Form"),formSlug:F5(),_gButton:b("Button"),buttonText:H("Button",z0.buttonText),_gFootnote:b("Footnote"),consent:D("Consent line",z0.consent),boxes:fb.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,...p}=t;return p}};var qt1=["issues","posts"],hD=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],bb="issues";function xb(e){return qt1.includes(e)?e:bb}var Wt1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function mD(e,t){let a=xb(t),s={...e};for(let[c,l]of Object.entries(Wt1))l.includes(a)||delete s[c];return s}import{CategoryIcon as jt1,HashIcon as Kt1}from"efficient-easel/icons";var B0={headNum:L.sectionNumber,headTitle:L.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},pD=[{n:"N\xB0 04",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 03",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 02",title:"Issue title",small:"Short description",date:"Month YYYY"},{n:"N\xB0 01",title:"Issue title",small:"Short description",date:"Month YYYY"}];function Ut1(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 yh(e,t){if(e==="issues")return y1(t.issues,pD,t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?Ut1(a.slice(0,s)):[];return y1(c,pD,t.puck)}import{jsx as uD}from"react/jsx-runtime";var dD={fields:{_sHead:a0("Section header"),_gHeadCopy:b("Content"),headNum:H("Number",B0.headNum),headTitle:D("Heading",B0.headTitle),headDesc:D("Body",B0.headDesc),_sLeft:a0("Newsletter panel"),_gLeftCopy:b("Content"),kicker:H("Eyebrow",B0.kicker),leadTitle:D("Heading",B0.leadTitle),intro:D("Intro",B0.intro),_gForm:b("Signup form"),emailPlaceholder:G("Email placeholder",B0.emailPlaceholder),submitText:G("Submit button",B0.submitText),subscribedText:G("Subscribed button",B0.subscribedText),finePrint:D("Fine print",B0.finePrint),_sRight:a0("Recent issues"),_gRightCopy:b("Content"),contentType:b1("Type",uD(jt1,{}),[...hD],bb),issuesHeading:H("Panel heading",B0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:v1("Number"),title:v1("Title"),small:v1("Sub-line"),date:v1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||"Issue"},_gPosts:b("Blog posts"),posts:a2(p9),limit:a1("Posts to display",uD(Kt1,{}),1,6,1,4),_gArchive:b("Archive link"),archiveText:H("Archive button",B0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>mD(t,e.props.contentType)};import{HashIcon as Jt1}from"efficient-easel/icons";import{useState as $t1}from"react";import{jsx as Y3,jsxs as g9}from"react/jsx-runtime";var Yt1="That didn't go through \u2014 please try again.";function Uc({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:p,archiveHref:u,source:g=Z3.subscribeSection,editing:d=!1,...f}){let[v,z]=$t1(""),{status:x,submit:k}=Kr({source:g,dryRun:d}),M=x==="sent",A=x==="sending",R=x==="error"||x==="invalid",E=(m??[]).filter(N=>(N?.n??"").trim()||(N?.title??"").trim()||(N?.date??"").trim()),Z=E.length>0,F=M?i||"Subscribed \u2713":A?"Sending\u2026":o||"Subscribe \u2192";function T(N){N.preventDefault(),!M&&k({email:v})}return g9("section",{className:N0(f)?"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:[Y3(O2,{num:e,title:t?$(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),g9("div",{className:Z?"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:[g9("div",{className:Z?"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&&Y3(V1,{text:s}),c&&Y3("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:$(c,!0)}),l&&Y3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:C(l,!0)}),g9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:T,children:[Y3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:v,onChange:N=>z(N.target.value),disabled:M,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"}),Y3("button",{type:"submit",disabled:M||A,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:Z0(F)})]}),R&&Y3("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:Yt1}),n&&Y3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:C(n)})]}),Z&&g9("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&&Y3(V1,{text:h,size:12}),Y3("div",{className:"flex flex-col",children:E.map((N,B)=>g9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",B===0?"border-t border-line":""].join(" "),children:[Y3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:N.n?C(N.n):""}),g9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[N.title?C(N.title):"",N.small?.trim()&&Y3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:C(N.small,!0)})]}),Y3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:N.date?C(N.date):""})]},B))}),p&&Y3(t0,{href:u||"/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:C(p)})]})]})]})}import{jsx as Xt1}from"react/jsx-runtime";var X0={...B0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},gD={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=yh("posts",e);return Xt1(Uc,{headNum:y(e.headNum,X0.headNum,e.puck),headTitle:y(e.headTitle,X0.headTitle,e.puck),headDesc:y(e.headDesc,X0.headDesc,e.puck),kicker:y(e.kicker,X0.kicker,e.puck),leadTitle:y(e.leadTitle,X0.leadTitle,e.puck),intro:y(e.intro,X0.intro,e.puck),emailPlaceholder:t1(e.emailPlaceholder)||X0.emailPlaceholder,submitText:t1(e.submitText)||X0.submitText,subscribedText:t1(e.subscribedText)||X0.subscribedText,finePrint:y(e.finePrint,X0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,X0.issuesHeading,e.puck),issues:t,source:Z3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,X0.archiveText,e.puck),archiveHref:t1(e.archiveHref)||X0.archiveHref})}};import{jsx as Qt1}from"react/jsx-runtime";var vD={fields:{_sHead:a0("Section header"),_gHeadCopy:b("Content"),headNum:H("Number",X0.headNum),headTitle:D("Heading",X0.headTitle),headDesc:D("Body",X0.headDesc),_sLeft:a0("Newsletter panel"),_gLeftCopy:b("Content"),kicker:H("Eyebrow",X0.kicker),leadTitle:D("Heading",X0.leadTitle),intro:D("Intro",X0.intro),_gForm:b("Signup form"),emailPlaceholder:G("Email placeholder",X0.emailPlaceholder),submitText:G("Submit button",X0.submitText),subscribedText:G("Subscribed button",X0.subscribedText),finePrint:D("Fine print",X0.finePrint),_sRight:a0("Recent posts"),_gRightCopy:b("Content"),issuesHeading:H("Panel heading",X0.issuesHeading),_gPosts:b("Blog posts"),posts:a2(p9),limit:a1("Posts to display",Qt1(Jt1,{}),1,6,1,4),_gArchive:b("Archive link"),archiveText:H("Archive button",X0.archiveText),archiveHref:H1("Archive link")}};import{jsx as ea1}from"react/jsx-runtime";var fD={label:"Booking box",defaultProps:{},render:e=>ea1(Yp,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,L.eyebrow,e.puck),heading:y(e.heading,L.heading,e.puck),intro:y(e.intro,L.body,e.puck),buttonLabel:y(e.buttonLabel,L.button,e.puck),successMessage:y(e.successMessage,L.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as zb,useState as yb}from"react";import{Fragment as ta1,jsx as A0,jsxs as y3}from"react/jsx-runtime";var bD="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 wb({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:p,formSlug:u,form:g,editing:d,initialActiveId:f,onActiveChange:v,reasonExtras:z,...x}){let k=[...a.map(W=>W.id),...r?[S8]:[]],M=f&&k.includes(f)?f:k[0]??S8,[A,R]=yb(M);zb(()=>{k.includes(A)||R(k[0]??S8)},[k.join("|")]),zb(()=>{f&&k.includes(f)&&R(f)},[f]);let E=W=>{R(W),F(null),v?.(W)},[Z,F]=yb(null),T=(p??[]).filter(W=>!W.hidden),N=T.find(W=>W.groupId===A)?.value??null,B=Z??N,P=L5(u,g),O=n7({form:P,formSlug:u,editing:d}),c1=P===void 0,V=!!P||!!d,[q,K]=yb(!1);return zb(()=>{let W=()=>K(document.documentElement.getAttribute("data-theme")==="light");W();let r1=new MutationObserver(W);return r1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>r1.disconnect()},[]),y3(ta1,{children:[y3("section",{className:N0(x)?"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)&&y3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&A0(V1,{text:e}),t&&A0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:C(t)})]}),A0("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(W=>{let r1=A===W.id;return y3("button",{type:"button",onClick:()=>{E(W.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:l6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",r1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[W.eyebrow&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:W.eyebrow}),A0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:W.title}),W.copy&&A0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:W.copy}),W.response&&y3("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:[A0("span",{children:"Response"}),A0("strong",{className:"font-normal text-fg",children:W.response})]})]},W.id)})})]}),(V||T.length>0)&&y3("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]",V&&T.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[V&&y3("div",{children:[y3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[y3("div",{children:[s&&A0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:C(s)}),c&&A0("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:$(c,!0)})]}),!!(l&&l.length)&&A0("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((W,r1)=>A0("div",{children:W},r1))})]}),P?O.done?A0("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:Pe(P,"Thanks \u2014 we've received your message.")}):y3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:O.handleSubmit,children:[P.fields.map(W=>A0(Z2,{label:W.label,required:W.required,className:W.type==="textarea"||W.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:A0(h7,{field:W,value:O.valueOf(W.key),onChange:r1=>O.set(W.key,r1),className:W.type==="textarea"?`${bD} min-h-[140px] resize-y leading-[1.5]`:W.type==="checkbox"?"size-4 self-start accent-accent":bD})},W.key)),y3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[A0(v8,{required:!0,children:"Reason"}),y3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(W=>{let r1=A===W.id;return A0("button",{type:"button",onClick:()=>E(W.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",r1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:W.title},W.id)}),r&&A0("button",{type:"button",onClick:()=>E(S8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",A===S8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:Z0(o)})]})]}),z?.(A),A===S8&&(i||n)&&y3("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&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:C(i)}),n&&b0(n).map((W,r1)=>A0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:C(W)},r1))]}),A0(Ee,{value:O.honeypot,onChange:O.setHoneypot}),O.error&&A0("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:O.error}),y3("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&&A0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:C(m)}),A0("button",{type:d?"button":"submit",disabled:O.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:O.submitting?"Sending\u2026":h?Z0(h):"Send Message \u2192"})]})]}):A0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:c1?"Loading form\u2026":"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."})]}),T.length>0&&A0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:T.map((W,r1)=>{let x1=B===W.value,e1=!!!W.groupId;return y3("div",{onClick:e1?()=>F(W.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",e1?"cursor-pointer border-t-2 border-t-accent":"",x1?"border-l-accent pl-6":e1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:x1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[x1&&y3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),A0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),A0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",x1?"text-fg":"text-accent"].join(" "),children:W.label}),e1?A0("a",{href:W.href,onClick:d1=>d1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",x1?"text-accent":"text-fg"].join(" "),children:W.value}):A0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",x1?"text-accent":"text-fg"].join(" "),children:W.value}),W.sub&&A0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:W.sub})]},`${W.value}-${r1}`)})})]})]})}import{jsx as aa1}from"react/jsx-runtime";var xD={label:"Contact Form",defaultProps:{routingNumber:v0.routingNumber,routingTagline:v0.routingTagline,groups:v0.groups,formSlug:"",formNumber:v0.formNumber,formHeading:v0.formHeading,metaItems:v0.metaLines.map(e=>({text:e})),showOther:v0.showOther,otherLabel:v0.otherLabel,otherNoteTitle:v0.otherNoteTitle,otherNoteBody:v0.otherNoteBody,buttonText:v0.buttonText,consent:v0.consent,channels:v0.channels},render:e=>aa1(wb,{routingNumber:y(e.routingNumber,v0.routingNumber,e.puck),routingTagline:y(e.routingTagline,v0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,v0.formNumber,e.puck),formHeading:y(e.formHeading,v0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:t1(e.otherLabel)||v0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,v0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,v0.otherNoteBody,e.puck),buttonText:t1(e.buttonText)||v0.buttonText,consent:y(e.consent,v0.consent,e.puck),channels:e.channels??[],formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as zD}from"react/jsx-runtime";function Cb({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return zD("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:zD("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as sa1}from"react/jsx-runtime";var yD={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>sa1(Cb,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as ca1}from"react";import{jsx as kb,jsxs as wD}from"react/jsx-runtime";function Mb({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=pp(),[c,l]=ca1("");return wD("div",{className:"w-full min-w-0",children:[e?kb("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:$(e,!1)}):null,wD("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:Z3.footerSignup})},children:[kb("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"}),kb("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:Z0(a)})]})]})}import{jsx as la1}from"react/jsx-runtime";var CD={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>la1(Mb,{heading:K4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as wh,jsxs as oa1}from"react/jsx-runtime";var ra1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function Sb({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:p,siteName:u}=zl(),g=Math.round(c7*(t/100)),d={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return oa1("div",{className:`flex min-w-0 flex-col ${ra1[a]} [container-type:inline-size]`,style:d,children:[wh(S1,{href:"/","aria-label":u?`${u} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:wh(pe,{variant:"footer",sizePx:g,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:p,siteName:u,fitWordmarkToContainer:!0,fitFloorPx:Ww})}),e?wh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:C(e)}):i?wh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:"Add a short brand tagline \u2192"}):null]})}import{jsx as ia1}from"react/jsx-runtime";var kD={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})=>ia1(Sb,{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 na1}from"react/jsx-runtime";var MD={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>na1(Fa,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as ha1}from"react/jsx-runtime";var SD={label:"Social Logos",defaultProps:{iconStyle:ee,iconSize:"medium",align:"start",gap:Bc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>ha1(ob,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as pa1}from"react/jsx-runtime";var ma1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function Lb({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?"Add a line of footer text.":"");return c?pa1("p",{className:`${ma1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:C(c)}):null}import{jsx as ua1}from"react/jsx-runtime";var LD={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>ua1(Lb,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as da1}from"react/jsx-runtime";var AD={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>da1(lp,{formSlug:t1(e.formSlug)||void 0,heading:t1(e.heading)||void 0,intro:t1(e.intro)||void 0,submitText:t1(e.submitText)||void 0,finePrint:t1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as ga1}from"react/jsx-runtime";var HD={label:"Legal Line",render:()=>ga1(Ic,{})};import{jsx as va1}from"react/jsx-runtime";var FD={label:"Submit box",defaultProps:{},render:e=>va1(eu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:Q0(e.eyebrow,z0.eyebrow,e.puck),title:Q0(e.title,z0.title,e.puck),body:Q0(e.body,z0.body,e.puck),buttonText:Q0(e.buttonText,z0.buttonText,e.puck),consent:Q0(e.consent,z0.consent,e.puck),formSlug:t1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as fa1}from"react/jsx-runtime";var TD={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:p,posts:u,limit:g,archiveText:d,archiveHref:f,puck:v})=>fa1(Uc,{headNum:y(e,B0.headNum,v),headTitle:y(t,B0.headTitle,v),headDesc:y(a,B0.headDesc,v),kicker:y(s,B0.kicker,v),leadTitle:y(c,B0.leadTitle,v),intro:y(l,B0.intro,v),emailPlaceholder:t1(r)||B0.emailPlaceholder,submitText:t1(o)||B0.submitText,subscribedText:t1(i)||B0.subscribedText,finePrint:y(n,B0.finePrint,v),issuesHeading:y(h,B0.issuesHeading,v),issues:yh(xb(p),{issues:m,posts:u,limit:g,puck:v}),source:Z3.subscribeSection,editing:v?.isEditing,archiveText:y(d,B0.archiveText,v),archiveHref:t1(f)||B0.archiveHref})};var PD={AppointmentBooking:iZ,BookingBox:fD,ContactRouting:xD,Events:HZ,Footer:VZ,FooterDivider:yD,FooterEmailSignup:CD,FooterGroup:BZ,FooterLogo:kD,FooterMenu:MD,FooterSocial:SD,FooterText:LD,Form:AD,LegalLineBlock:HD,ReviewForm:XZ,Reviews:tD,[k9]:sD,[C9]:lD,SubmitBox:FD,SubmitBuild:iD,Subscribe:TD,SubscribeBlogs:gD};var ba1={AppointmentBooking:nZ,BookingBox:hZ,ContactRouting:pZ,Events:FZ,Footer:NZ,FooterDivider:_Z,FooterEmailSignup:IZ,FooterGroup:ZZ,FooterLogo:DZ,FooterMenu:GZ,FooterSocial:jZ,FooterText:KZ,Form:$Z,LegalLineBlock:YZ,ReviewForm:JZ,Reviews:aD,[k9]:cD,[C9]:rD,SubmitBox:oD,SubmitBuild:nD,Subscribe:dD,SubscribeBlogs:vD},h2=je(PD,ba1);import{jsx as _6,jsxs as xa1}from"react/jsx-runtime";import{useEasel as za1}from"efficient-easel/easel";var ya1="color-mix(in oklab, var(--bg) 40%, #ffffff)",wa1="12vh";function Ca1({style:e,frameClass:t,children:a}){let{appState:s}=za1(u=>u),c=s.data.content,l=s.data.root;if(hw(c))return _6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:ya1,minHeight:"100vh",paddingBottom:wa1},children:_6("div",{style:{background:"var(--bg)"},children:a})});let r=xa(c)&&Jl(l,c),o=xa(c)?uw(l,c):null,i=o?{[pw]:o}:null,n=vz(l?.widthChoice),h=n?{[gz]:n}:null,m=r?null:fB(c),p=m?{[jn]:m}:null;return _6("div",{className:`sf-themed-content${r?` ${Xl}`:""}${t?` ${t}`:""}`,style:e,...p,...i,...h,children:_6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function ED(e){return{frameClass:void 0,style:{"--sf-page-width":da}}}function Ab({w:e,children:t}){let{frameClass:a,style:s}=ED(e);return _6("div",{className:a,style:s,children:t})}function Hb({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:p,overlay:u,children:g}){let{theme:d,fonts:f,sizes:v,cornerRadiusPx:z,cardShadow:x,shadowColor:k,cardGap:M,hoverEffect:A,headingCompression:R,siteWidth:E,siteGutter:Z,blockGap:F,headingTypography:T,heroBackgroundFollowsWidth:N,photographyGrayscale:B,themeFromDocument:P}=V3(),O=P?e:d,c1=P?t:f,V=P?void 0:v,q=P?s===void 0?Kx[jx(a)]:$x(s):z,K=P?c:R,W=P?l:T,r1=ED({widthMode:r,fullWidth:o,pageWidth:i}),x1={...ua(O),...ul(V),...tz(W),...r1.style,...h?{}:$h(n)};return _6("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...rl(c1),...nl(O),...hl(O),...ml(O),...pl(O),...Zh(q),...oz(Zh(q)),...Qx(P?void 0:x,P?void 0:k,P?void 0:A),...nz(P?void 0:E),...hz(P?void 0:Z),...sy(P?void 0:F),...dz(P?void 0:N)},"data-sf-headings":ez(K),"data-sf-card-shadow":P?void 0:Yx(x),"data-sf-card-gap":P?void 0:Xx(M),"data-sf-card-hover":P?void 0:Jx(A),onClickCapture:m,children:xa1(_F,{grayscale:P?void 0:B,children:[_6(Ca1,{style:x1,frameClass:r1.frameClass,children:g}),p,u]})})}var Fb=e=>{e.target?.closest?.("a")&&e.preventDefault()};function VD({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return _6("div",{style:{...t?{}:$h(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:_6(Ab,{w:a,children:s})})}import{jsx as ND}from"react/jsx-runtime";import{PaddingTopIcon as ka1}from"efficient-easel/icons";function Ma1(){return{type:"custom",render:({value:e,onChange:t})=>ND(uh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:"Follows the site",hint:"Whether this page sits on the site's content column, or runs edge to edge.",onChange:a=>t(a)})}}var Sa1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],_D={title:G("Page Title"),pageBackground:zy(),topSpace:g1("Top space",ND(ka1,{}),Sa1,mw),widthChoice:Ma1()};function La1(e,t){let a=Yh(t),s=a?a.inner:t;if(Nh(s))return!1;if(s?.type==="slot")return!0;let c=Zz(s);return c==="always"?!1:c==="authored-copy"?Rx(e):!0}function ID(e){let t=Yh(e),a=t?t.inner:e,s=Nh(a);return s?ny(a)?0:s.level:null}function Aa1(e,t,a){return a&&t===0&&e===m8.Content}var Ha1=new WeakMap,Fa1=new WeakMap;function ra(e,t="section"){let a=t==="page"?Fa1:Ha1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,p])=>({key:m,field:p,level:ID(p),draws:La1(m,p)||t==="page"&&ID(p)===null&&Ih(m,p)})),l=t==="section"&&c.some(m=>Ih(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let p=c[m].level;if(p===null)continue;let u=0;for(let g=m+1;g<c.length;g++){let d=c[g].level;if(d!==null&&d<=p)break;c[g].draws&&(u+=1)}u===0&&!Aa1(c[m].key,p,l)&&r.add(c[m].key)}let o=l&&Ay(e),i=o&&!(m8.Content 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=Q9(o?Ly(n):n);return a.set(e,h),h}var RD={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(ma,e),draw(e,t){e.label=ma[t]}};import{jsx as Ta1}from"react/jsx-runtime";var BD={name:"sectionGroupAllow",applies:e=>cl.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},Tb=new Set(Object.keys(B1)),ZD={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=>!Tb.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var Pa1=Array.from(new Set([...ax.map(e=>e.type),...Tb,...Qc,"GalleryItem"])),DD={name:"cellWidth",applies:(e,t,a)=>Pa1.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=ii(r.appState,l.props?.id);if(i===void 0||Px(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=Fx(a.gridSpan),c=t(a);return s==null?c:Ta1("div",{className:"sf-grid-cell",[Tx]:String(s),children:c})}}};import{jsx as OD}from"react/jsx-runtime";var GD={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=L9(c);return c.puck?.isEditing?OD(mA,{needles:_h(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?OD(sz,{needles:_h(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as qD}from"react/jsx-runtime";var WD={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=dl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=N0(a)?`sf-section-corners ${lz}`:"sf-section-corners";return s?qD("div",{className:l,style:{display:"contents",...s},children:c}):c}}},Ea1=["CollectionCard"],UD={name:"cardCorners",applies:(e,t,a)=>Ea1.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=rz(a.cardCorners,a.cardCornerSides),c=t(a);return s?qD("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var jD={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 KD={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 $D,Fragment as Va1,jsxs as Na1}from"react/jsx-runtime";function _a1({anchor:e}){let t=Wh(typeof e=="string"?e:"");return t?$D("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var YD={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=>Na1(Va1,{children:[$D(_a1,{anchor:a.anchor}),t(a)]})}};import{jsx as Ba1}from"react/jsx-runtime";import{jsx as Ia1}from"react/jsx-runtime";import{useEffect as Ra1,useRef as XD}from"react";function JD({motion:e,editing:t,children:a}){let s=XD(null),c=XD(e);return Ra1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,Cz(l);return}return wz(l)}},[e,t]),Ia1("div",{ref:s,[yz]:e,children:a})}var QD={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!kz.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=zz(s.sectionAnimation);return c?Ba1(JD,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as Za1}from"react/jsx-runtime";var aO={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!Sz.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=Mz(i),h=Lz(i)?Az(i):null;return o&&typeof o.then=="function"?o.then(m=>tO(eO(m,n),h)):tO(eO(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=Hz(a);return s?Za1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function eO(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 tO(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 Da1}from"react/jsx-runtime";var sO={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!bz.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=jh.has(t);e.fields={...e.fields,...l?s(d5,c):s()}},draw(e,t){let a=jh.has(t),s=e.render;e.render=c=>{let l=F9(a?{...c,sectionAccent:d5(c.sectionAccent)}:c),r=s(c);return l?Da1("div",{className:l.className,style:l.style,children:r}):r}}},cO={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(d5,c)})}};var Oa1=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"]),lO={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Oa1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ga1=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"]),rO={name:"blockGroups",applies:e=>Ga1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var qa1=["Form","Stats"];function Pb(e,t){let a=new Set(e),s=Qb.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!cl.includes(i)),l=new Set([...t,...Qc,...qa1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Wa1=[BD,ZD,BS,WD,UD,ZS,DD,bF,xF,zF,yF,aO,YD,sO,QD,cO,lO,rO,jD,GD,KD,RD];function oO(e,t,a){let s=t;for(let c of Wa1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var iO={spacingFields:b5,sectionShapeFields:Pl,cardShapeFields:py,cellWidthFields:fy,widthField:x5,heightFields:by,anchorFields:xy,sectionThemeFields:q9,sectionAnimationFields:my,slider:a1,assignSectionGroups:Dl,dropEmptyHeadings:ra,SECTION_THEME_FOLLOW_LABEL:wl,BLOCK_THEME_FOLLOW_LABEL:Vz};function nO(e){let t={...Pb(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:iO};for(let[c,l]of Object.entries(e.components))oO(c,l,t);let a=e.root,s=a.resolveFields;return a.resolveFields=s?(c,l)=>{let r=s(c,l);return r instanceof Promise?r.then(o=>ra(o??l.fields,"page")):ra(r??l.fields,"page")}:(c,l)=>ra(l.fields,"page"),t}import{Fragment as ps1,jsx as r0,jsxs as oa}from"react/jsx-runtime";var Ui0=[{value:"00",label:L.label},{value:"00",label:L.label},{value:"00",label:L.label}],ts1=Th(()=>import("./PreviewFooter-FVRZAZLF.js")),as1=Th(()=>import("./render-client-KQRL2HNU.js")),ss1={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 cs1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=ak(),{theme:m,fonts:p,sizes:u,themeFromDocument:g}=V3();if(!n)return oa(Hb,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[r0("div",{style:ss1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let d=g?e:m,f=g?t:p,v=n.content??[],z=n.root,x=xa(v)&&Jl(z,v);return oa("div",{className:"sf-theme-accent",style:{...rl(f),...nl(d),...hl(d),...ml(d)},onClickCapture:o,children:[oa("div",{style:{position:"relative"},children:[r0("div",{className:x?Xl:void 0,style:{...ua(d),...ul(g?void 0:u),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:r0(as1,{data:n})}),r0("button",{type:"button",onClick:()=>h(),title:"Click the page to go back","aria-label":"Go back to the page",style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),r0("div",{className:"sf-theme-surfaces",style:{...ua(d),...pl(d)},children:r0(Ab,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var H0=cm,ls1={formSlug:F5(void 0,"Newsletter (built in)"),_gLeft:b("Left panel"),metaLabel:G("Meta label",H0.metaLabel),issueLabel:G("Issue label",H0.issueLabel),issueNumber:G("Issue number",H0.issueNumber),kicker:G("Eyebrow",H0.kicker),heading:E1("Heading",H0.heading),deck:E1("Deck",H0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:G("Label"),value:G("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:b("Right panel \xB7 form"),formLabel:G("Section label",H0.formLabel),formHeading:G("Heading",H0.formHeading),formIntro:E1("Intro",H0.formIntro),firstNameLabel:G("First-name label",H0.firstNameLabel),firstNamePlaceholder:G("First-name placeholder",H0.firstNamePlaceholder),emailLabel:G("Email label",H0.emailLabel),emailPlaceholder:G("Email placeholder",H0.emailPlaceholder),_gChoices:b("Right panel \xB7 choices"),interestsLabel:G("Interests label",H0.interestsLabel),interests:F2("Interest chips",r0(e4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:G("Frequency label",H0.frequencyLabel),frequencies:F2("Frequency options",r0(Ya1,{}),"Option label","verbatim"),_gActions:b("Right panel \xB7 actions"),submitText:G("Submit button",H0.submitText),finePrint:G("Fine print",H0.finePrint),dismissText:G("Dismiss link",H0.dismissText),emailInvalidText:G("Invalid-email error",H0.emailInvalidText),submitErrorText:G("Submit-failed error",H0.submitErrorText),_gSuccess:b("Success state"),successHeading:G("Heading",H0.successHeading),successBody:E1("Message",H0.successBody),keepBrowsingText:G("Dismiss button",H0.keepBrowsingText),...q9(d5,wl),...Pl(),_gTextStyle:b("Text style"),...Object.fromEntries(Sl.map(e=>[Uz[e],g1(Jh[e],Oe(Jh[e]),[{label:"Popup's own",value:""},...u5.map(t=>({label:M9[t],value:t}))],"")])),_gBehaviour:b("Behavior"),autoOpen:s1("Show by itself",H0.autoOpen,r0($a1,{})),trigger:b1("Trigger",r0(es1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],H0.trigger),autoOpenDelaySec:a1("Delay",r0(Eb,{}),tm.min,tm.max,1,H0.autoOpenDelaySec,"s"),scrollPercent:a1("Scroll",r0(Qa1,{}),am.min,am.max,5,H0.scrollPercent,"%"),showOn:b1("Pages",r0(Xa1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],H0.showOn),showOnPages:U9("Chosen pages",[],"None"),hideAfter:b1("After close",r0(Eb,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],H0.hideAfter),hideDays:a1("Days",r0(Eb,{}),sm.min,sm.max,1,H0.hideDays),_gArrangement:b("Arrangement"),formSide:b1("Form side",r0(Ja1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],H0.formSide),_gPhone:b("On a phone"),valuePanelOnPhone:s1("Left panel",H0.valuePanelOnPhone,r0(ja1,{}))},rs1=Dl(ls1,"SubscribePopup");async function os1(){return(await Xz(i2()??"")).filter(t=>!va(t.slug)).map(t=>({label:t.label,value:o8(t.slug)}))}async function is1(e){let t=lm(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(rs1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await os1().catch(()=>[])}:l);return Q9(s)}var h5=Ml,ns1={_gHeader:b("Header"),kickerBadge:G("Eyebrow badge",h5.kickerBadge),kickerText:G("Eyebrow text",h5.kickerText),titleLead:G("Heading",h5.titleLead),titleAccent:G("Heading accent",h5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",h5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",h5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",h5.subtitleMany,"{count} becomes the number of sets"),_gStatus:b("Status rail"),leadTimeValue:G("Lead time",h5.leadTimeValue),shipsToFallback:G("Ships to \xB7 fallback",h5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:b("Promise row"),promises:F2("Trust markers",r0(hO,{}),"Marker","verbatim"),_gEmpty:b("Empty basket"),emptyKicker:G("Eyebrow",h5.emptyKicker),emptyBody:E1("Message",h5.emptyBody)},Ch={root:{fields:{..._D,_gOpening:b("Opening filter"),openingProcess:g1("Process",h8("A facet's options grow out of the merchant's CATALOGUE, so the set of rows is not ours to count and an icon-per-facet queue never empties. Owner, 2026-08-29, on the `Opening filter` group: \u300Cfilter \u91CC\u4E0D\u52A0 icon\u2026\u4E0D\u7136\u6CA1\u5B8C\u6CA1\u4E86\u3002\u300D"),nM,Wr),openingSize:G("Size","Any"),openingLugs:G("Lugs","Any"),openingFinish:g1("Finish",h8("A facet's options grow out of the merchant's CATALOGUE, so the set of rows is not ours to count and an icon-per-facet queue never empties. Owner, 2026-08-29, on the `Opening filter` group: \u300Cfilter \u91CC\u4E0D\u52A0 icon\u2026\u4E0D\u7136\u6CA1\u5B8C\u6CA1\u4E86\u3002\u300D"),iM,Wr),openingPriceMin:G("Price from","Any"),openingPriceMax:G("Price to","Any")},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===em)return is1(e.props);if(e?.props?.kind===Xh)return ns1;let a=t;return D2()?{[Rm]:g1("Product type",r0(Ua1,{}),ve,"alloy-wheel"),...a,_gHeroBullets:b("Product hero"),_nHeroBullets:f5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[Np]:F2("Trust bullets",r0(hO,{}),FS(Ua.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,p=Sr(typeof h=="string"?h:"",e);if(h===em){let v=lm(e);return oa("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?r0("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,r0(FM,{inline:!0,content:v})]})}if(h===Xh){let v=Wz(e);return oa("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?r0("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,r0(hr,{children:r0(mr,{preview:!0,children:r0(Oa,{content:v})})})]})}let u=!!a?.isEditing,g=r0(LS,{type:Vp(e),children:r0(yS,{kind:p,children:r0(ES,{content:TS(e),children:r0(bS,{slug:u?m:null,children:r0(tM,{initial:rM(e),children:t})})})})}),d=h===jz&&!Iz(r);return u?h===_9?r0(cs1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:d,suppressPreviewNav:Fb,children:g}):r0(Hb,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:Fb,footer:r0(ts1,{}),overlay:oa(ps1,{children:[r0(bp,{}),r0(Ap,{})]}),children:g}):r0(VD,{pageBackground:r,inheritBackground:d,w:{widthMode:s,fullWidth:c,pageWidth:l},children:g})}},categories:Jb(),components:{Heading:R1.Heading,Text:R1.Text,Eyebrow:R1.Eyebrow,ImageBlock:R1.ImageBlock,LogoBlock:R1.LogoBlock,ButtonBlock:R1.ButtonBlock,Spacer:R1.Spacer,Divider:R1.Divider,Grid:R1.Grid,Flex:R1.Flex,Breadcrumb:R1.Breadcrumb,Masthead:R1.Masthead,CategoryBar:R1.CategoryBar,FeaturedCover:R1.FeaturedCover,LongRead:R1.LongRead,Series:R1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:R1.Banner,ParagraphsA:R1.ParagraphsA,StatsParagraph:R1.StatsParagraph,Timeline:R1.Timeline,Footprint:R1.Footprint,TimelineTrack:R1.TimelineTrack,TitleWithButtons:R1.TitleWithButtons,Stats:R1.Stats,Integrations:R1.Integrations,Mockup:R1.Mockup,Chart:R1.Chart,KeyFeatures:R1.KeyFeatures,Testimonials:R1.Testimonials,Reviews:h2.Reviews,Prose:R1.Prose,Cards:R1.Cards,Logos:R1.Logos,Ticker:R1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:R1.ContactLocations,HeroSingle:R1.HeroSingle,Hero:R1.Hero,HeroSlide:R1.HeroSlide,HeroGroup:R1.HeroGroup,Collections:W0.Collections,CollectionCard:W0.CollectionCard,Events:h2.Events,PostCard:R1.PostCard,DocMetaCards:R1.DocMetaCards,DocTabs:R1.DocTabs,DocMasthead:R1.DocMasthead,DocBody:R1.DocBody,FAQ:R1.FAQ,Gallery:W0.Gallery,GalleryB:W0.GalleryB,BrandStrip:W0.BrandStrip,SpecStrip:R1.SpecStrip,GalleryItem:W0.GalleryItem,Manifesto:R1.Manifesto,SectionHeader:R1.SectionHeader,IntroBleed:R1.IntroBleed,Split:R1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:W0.CatalogFilterBar,AlloyWheelsListing:W0.AlloyWheelsListing,ProductGrid:W0.ProductGrid,ProductHero:W0.ProductHero,SpecTable:W0.SpecTable,ProcessSteps:R1.ProcessSteps,DetailRows:W0.DetailRows,FitmentTable:W0.FitmentTable,RelatedProducts:W0.RelatedProducts,BundleOffer:W0.BundleOffer,CompatibleTyres:W0.CompatibleTyres,TyreSizes:W0.TyreSizes,TyreFitment:W0.TyreFitment,EuTyreLabel:W0.EuTyreLabel,FitmentFinder:W0.FitmentFinder,OrderSummary:R1.OrderSummary,DeliveryOptions:W0.DeliveryOptions,PaymentBadges:R1.PaymentBadges,CheckoutCTA:W0.CheckoutCTA,ProductRef:W0.ProductRef,CustomHTML:R1.CustomHTML,Header:W0.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:W0.SearchBlock,CartBlock:W0.CartBlock,CountrySwitchBlock:W0.CountrySwitchBlock,[C9]:h2.SiteHeader,[k9]:h2.SiteFooter}},hs1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries(hs1)){let a=Ch.components;a[e]={...a[t]}}{let e=Ch.components.MenuBlock;e.fields={...e.fields,direction:b1("Direction",r0(Ka1,{}),[{label:Kh.column,value:"column"},{label:Kh.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>r0(Fa,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var ms1=nO(Ch),ji0=ms1.sectionGroupAllow,bf=Ch;export{yf1 as a,wf1 as b,Cf1 as c,kf1 as d,Mf1 as e,Pb as f,oO as g,iO as h,sU as i,Mn1 as j,Rc1 as k,yB as l,fr1 as m,uM as n,br1 as o,xr1 as p,nn1 as q,DB1 as r,Vs1 as s,Ns1 as t,_s1 as u,Is1 as v,Xs1 as w,Js1 as x,gO1 as y,ol1 as z,to1 as A,$40 as B,xp as C,UE1 as D,$m as E,yk as F,dl1 as G,gl1 as H,vl1 as I,zl1 as J,Mk as K,Jc1 as L,pB as M,pf as N,$n as O,gt as P,r3 as Q,qW as R,gB as S,qr as T,Ea as U,uq as V,lr1 as W,Vc1 as X,DI as Y,xc as Z,bf as _};