efficient-storefront-blocks 0.33.2 → 0.33.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/chunks/{PreviewFooter-DZH6K7FC.js → PreviewFooter-7NEJ5BU4.js} +1 -1
- package/dist/chunks/{chunk-CWNKJYXI.js → chunk-D6F4PRBB.js} +2 -2
- package/dist/chunks/{render-client-7WYSJEJX.js → render-client-5K4A4MV2.js} +1 -1
- package/dist/index.js +2 -2
- package/package.json +1 -1
- /package/dist/chunks/{chunk-CWNKJYXI.js.LEGAL.txt → chunk-D6F4PRBB.js.LEGAL.txt} +0 -0
|
@@ -150,5 +150,5 @@ ${s}`:t.push({type:"p",text:s})});return t}var cY=()=>[{label:p("First section")
|
|
|
150
150
|
}
|
|
151
151
|
`;function AZ(){let{settings:e,selected:t,select:a,websiteName:s,templateChrome:c,templateName:l,chromePlaceholder:r,themeSwitchShown:o}=I3(),i=c?l?.trim()||p("Template"):s?.trim()||er,n=c||r;return Xe1("div",{className:"sf-preview-header-pick sf-theme-surfaces","data-selected":t||void 0,onClick:h=>{h.stopPropagation(),a()},children:[LZ("style",{children:Ye1}),LZ(ab,{previewSettings:e??void 0,editorPreview:!0,showThemeToggle:o,wordmark:i,hideLogo:n,hideMenu:n})]})}import{Render as lt1}from"efficient-easel/render";import{useEffect as Je1,useState as Qe1}from"react";import{jsx as at1}from"react/jsx-runtime";var et1=["none","always","on_scroll_up"],tt1=e=>et1.includes(e)?e:"always";function sb({sticky:e,topTextColor:t,heightPx:a,theme:s,children:c}){let l=tt1(e),r=yZ(a),{headerRef:o,scrolled:i,navHidden:n}=fh({stickyMode:l,heightPx:r}),h=Ch(t),m=h==="auto"?null:{[wh]:h},u=bh(s),d=xh(Oe()),[v,g]=Qe1(!1);Je1(()=>{let w=o.current?.ownerDocument??document,z=()=>g(w.documentElement.getAttribute("data-theme")==="light");z();let k=new MutationObserver(z);return k.observe(w.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>k.disconnect()},[o]);let b=i||d,f=zh(v,d);return at1("header",{ref:o,"data-scrolled":i||void 0,"data-box-header":"",...m,className:["sf-site-header",...u?[u.className]:[],"flex flex-col justify-center",l==="none"?"absolute":"fixed","inset-x-0 top-0 z-50",b?"border-b border-line backdrop-blur-md":"border-b border-transparent","transition-[background,border-color,transform] duration-300 ease-out"].join(" "),style:{...u?u.style:null,minHeight:`var(${ir}, ${r}px)`,...n?{transform:"translateY(-100%)"}:null,...b?{background:f,color:"var(--fg)","--sf-header-ground":f}:{color:"var(--sf-header-overlay-fg)","--sf-header-ground":"var(--sf-header-overlay-ground)"}},children:c})}var st1={"Logos.logosPerRow":"columns","HeroSlide.tintOpacity":"overlay","Split.textBgTint":"overlay"};function ct1(e){return Array.isArray(e)&&e.length>0&&e.every(t=>!!t&&typeof t=="object"&&typeof t.type=="string")}function cb(e){let t=e.props,a=!1;if(e.type&&t)for(let[s,c]of Object.entries(st1)){let l=s.indexOf("."),r=s.slice(0,l),o=s.slice(l+1);if(r!==e.type||!(o in t))continue;let i=t[o],n={...t};delete n[o],(!(c in n)||n[c]===void 0)&&(n[c]=i),t=n,a=!0}if(t){let s=t;for(let[c,l]of Object.entries(t)){if(!ct1(l))continue;let r=l.map(cb);r.some((o,i)=>o!==l[i])&&(s===t&&(s={...t}),s[c]=r,a=!0)}t=s}return a?{...e,props:t}:e}function HZ(e){let t=e;if(!t||typeof t!="object")return e;let a=!1,s={...e};if(Array.isArray(t.content)){let c=t.content.map(cb);c.some((l,r)=>l!==t.content[r])&&(s.content=c,a=!0)}if(t.zones&&typeof t.zones=="object"){let c=!1,l=Object.fromEntries(Object.entries(t.zones).map(([r,o])=>{if(!Array.isArray(o))return[r,o];let i=o.map(cb);return i.some((n,h)=>n!==o[h])&&(c=!0),[r,i]}));c&&(s.zones=l,a=!0)}return a?s:e}import{Fragment as it1,jsx as lb}from"react/jsx-runtime";var rt1=null,ot1=()=>rt1??={...rb,root:{...rb.root,render:({children:e})=>lb(it1,{children:e})}};function ob({group:e}){let t=HZ({root:{props:{}},content:[e],zones:{}}),a=e.props??{};return lb(sb,{sticky:a.sticky,topTextColor:a.topTextColor,heightPx:a.heightPx,theme:a.sectionAccent,children:lb(lt1,{config:ot1(),data:t})})}import{jsx as FZ}from"react/jsx-runtime";function ib({editing:e=!1}){let{headerGroup:t}=xw();return e?t?FZ(ob,{group:t}):FZ(AZ,{}):null}import{jsx as nt1}from"react/jsx-runtime";var TZ={label:"Header",render:({puck:e})=>nt1(ib,{editing:e?.isEditing})};import{useEffect as Bt1,useState as rD}from"react";var PZ="flex items-stretch gap-3.5 max-[720px]:flex-wrap max-[720px]:[&>.flex-1]:order-last max-[720px]:[&>.flex-1]:basis-full";import{useEffect as gb,useRef as At1,useState as cD}from"react";import{jsx as nb,jsxs as EZ}from"react/jsx-runtime";var ht1="Please enter a valid email address.";function Vc({email:e,onEmailChange:t,status:a,onResetVerdict:s,onSubmit:c,submitLabel:l,errorMessage:r,inputAriaLabel:o,buttonClassName:i,className:n,placeholder:h="you@example.com"}){return EZ("form",{className:[n,"flex flex-col gap-2"].filter(Boolean).join(" "),noValidate:!0,onSubmit:m=>{m.preventDefault(),c()},children:[EZ("div",{className:"flex items-stretch gap-2",children:[nb("input",{type:"email",value:e,onChange:m=>{t(m.target.value),(a==="invalid"||a==="error")&&s()},placeholder:h,"aria-label":o,disabled:a==="sending",className:"w-0 min-w-0 flex-1 border-2 border-line bg-bg px-3.5 py-3 font-display text-[15px] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent disabled:opacity-60"}),nb("button",{type:"submit",disabled:a==="sending",className:i,children:a==="sending"?"Sending\u2026":l})]}),(a==="error"||a==="invalid")&&nb("p",{role:"alert",className:"font-mono text-[11px] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:a==="invalid"?ht1:r})]})}import{jsx as t6,jsxs as ia}from"react/jsx-runtime";function Nc({vehicle:e,escape:t,override:a,verdict:s,showChangeCar:c,cascadeErrorNote:l,askNote:r}){let o=e.appliedName!=="";return ia("div",{className:"pb-2",children:[ia("div",{className:"mb-3 flex items-center justify-between gap-4 font-mono text-[13px] font-semibold uppercase tracking-[0.2em] text-fg",children:[t6("span",{children:"Vehicle Fitment"}),t]}),a?t6("div",{className:"flex flex-col gap-3",children:a}):o?ia("div",{className:"flex flex-col gap-3",children:[s,c&&t6("div",{children:t6("button",{type:"button",onClick:e.clear,"aria-label":`Change car - forget ${e.appliedName} and ask again`,className:"cursor-pointer font-mono text-[12px] uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})})]}):ia("div",{className:"flex flex-col gap-3",children:[t6(X3,{cascade:e.cascade,compact:!0}),e.cascade.cascadeError&&t6("p",{className:"font-mono text-[12px] leading-relaxed tracking-[0.1em] text-fg-dim",children:l}),t6("span",{className:"font-mono text-[12px] tracking-[0.1em] text-fg-dim",children:r})]})]})}function hb({vehicle:e}){return e.appliedName?ia("div",{className:"flex flex-wrap items-center gap-x-3 gap-y-1 border border-accent px-3 py-2 font-mono text-[12px] tracking-[0.1em] text-fg-dim",style:{background:"color-mix(in oklab, var(--accent) 8%, transparent)"},children:[ia("span",{children:["Showing fitment for your"," ",t6("strong",{className:"font-semibold text-fg",children:e.appliedName})]}),t6("button",{type:"button",onClick:e.clear,"aria-label":`Change car - forget ${e.appliedName} and ask again`,className:"ml-auto cursor-pointer uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})]}):null}function h5({tone:e,children:t}){return t6("div",{className:["border px-3 py-2.5 font-mono text-[13px] leading-relaxed tracking-[0.1em] text-fg-dim",e==="good"?"border-accent":e==="bad"?"border-alert":"border-dashed border-line"].join(" "),children:t})}import{useEffect as mt1,useState as VZ}from"react";function Mh(e,t){let[a,s]=VZ(null),[c,l]=VZ(!1),r=t?.make??"",o=t?.model??"",i=t?.year??null,n=t?.modification??"",h=t!==null;return mt1(()=>{if(!h||i===null){s(null),l(!1);return}let m=!0;return s(null),l(!0),ZS(e,{make:r,model:o,year:i,modification:n}).then(u=>{if(!m)return;let d=u.vehicle;d.make!==r||d.model!==o||d.year!==i||d.modification!==n||(s(u),l(!1))}),()=>{m=!1}},[e,r,o,i,n,h]),{answer:a,loading:c}}function Sh(e){let t=e.oemSizes.length>0?` Your car takes ${e.oemSizes.join(", ")}.`:"";return e.status==="fits"?`This tyre is made in a size your car takes.${t}`:e.status==="doesNotFit"?`This tyre is not made in a size your car takes.${t}`:"We don\u2019t hold factory tyre sizes for this car, so we can\u2019t tell you whether this tyre fits it. Please check your car\u2019s door placard or ask us before ordering."}var Lh={fits:"Fits",doesNotFit:"Not your size",unknown:"Unknown"};function pt1(e,t,a){if(!e)return"unknown";let s=t.filter(l=>l.size===a);if(s.length===0)return"unknown";let c=s.map(l=>Ua(e,l.sku));return c.includes("fits")?"fits":c.every(l=>l==="doesNotFit")?"doesNotFit":"unknown"}var mb={fits:{color:"var(--accent)",dashed:!1},doesNotFit:{color:void 0,dashed:!1},unknown:{color:void 0,dashed:!0}};function NZ(e,t){if(!e)return[];let a=[];for(let n of t)a.includes(n.size)||a.push(n.size);let s=a.filter(n=>pt1(e,t,n)==="fits"),c=n=>{let h=n4(n);return h?U4(h):null},l=new Map;for(let n of s){let h=c(n);h!==null&&!l.has(h)&&l.set(h,n)}let r=[],o=new Set,i=new Set;for(let n of e.oemSizes){let h=c(n),m=h===null?void 0:l.get(h),u=m??n;o.has(u)||(o.add(u),h!==null&&i.add(h),r.push({size:u,made:m!==void 0}))}for(let n of s){let h=c(n);h!==null&&i.has(h)||o.has(n)||(o.add(n),r.push({size:n,made:!0}))}return r}import{Fragment as _Z,jsx as Z4,jsxs as B4}from"react/jsx-runtime";function pb({slug:e,variants:t,vehicle:a,manualMode:s,setManualMode:c}){let{answer:l,loading:r}=Mh(e,s?null:vo(a.applied?.vehicle)),o=a.appliedName;return Z4(Nc,{vehicle:a,escape:Z4("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>c(i=>!i),children:s?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:s?B4(h5,{tone:"quiet",children:[Z4("strong",{className:"font-semibold text-fg",children:"You are choosing by size."}),B4("span",{className:"mt-1.5 block",children:["Pick the size above. We have not checked it against any car \u2014 make sure it matches the placard on your door."," ",Z4(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]}):null,verdict:Z4(ut1,{answer:l,loading:r,car:o,variants:t,onChange:a.clear}),showChangeCar:!1,cascadeErrorNote:B4(_Z,{children:["Vehicle data is unavailable right now. Pick your size above, or"," ",Z4(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every tyre after this one is already filled in."})}function ut1({answer:e,loading:t,car:a,variants:s,onChange:c}){if(t||!e)return B4(h5,{tone:"quiet",children:[Z4("strong",{className:"font-semibold text-fg",children:"Checking your car\u2026"})," ",B4("span",{children:["Reading the factory tyre sizes for your ",a,"."]})]});let l=NZ(e,s),r=e.status==="doesNotFit"?"You can still order any size here \u2014 check it suits your car first.":"",o=l.length===0?Sh(e):"",i=o&&r?`${o} ${r}`:o||r;return B4(h5,{tone:e.status==="fits"?"good":"quiet",children:[B4("span",{className:"block",children:[e.status==="fits"?B4("strong",{className:"font-semibold text-accent",children:["\u2713 Made in a size your ",a," takes"]}):e.status==="doesNotFit"?B4("strong",{className:"font-semibold text-fg",children:["Not made in a size your ",a," takes"]}):B4("strong",{className:"font-semibold text-fg",children:["We cannot check this tyre against your ",a]}),B4("span",{className:"whitespace-nowrap",children:[" \xB7 ",Z4("button",{type:"button",onClick:c,"aria-label":`Change car - forget ${a} and ask again`,className:"cursor-pointer uppercase tracking-[0.16em] text-accent underline underline-offset-4 hover:text-fg",children:"Change car"})]})]}),i?Z4("span",{className:"mt-1.5 block",children:i}):null,l.length>0?B4(_Z,{children:[Z4("span",{className:"mt-1.5 block",children:"Your car takes:"}),Z4("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:l.map(n=>{let h=n.made?mb.fits:mb.doesNotFit;return Z4("li",{className:"border border-line px-2 py-1 text-[11px] uppercase tracking-[0.14em]",style:h.color?{color:h.color,borderColor:h.color}:void 0,children:n.made?`${n.size} \xB7 ${Lh.fits}`:n.size},n.size)})})]}):null]})}import{useEffect as IZ,useState as RZ}from"react";var Ah="(max-width: 720px) 88vw, (max-width: 1100px) 44vw, 700px";function BZ(e,t,a){return a<=1?0:((e+t)%a+a)%a}function ZZ(e,t,a){return[{glyph:"\u25C1",label:"Previous angle",onClick:()=>a(BZ(e,-1,t))},{glyph:"\u27F3",label:"Reset to first angle",onClick:()=>a(0)},{glyph:"\u25B7",label:"Next angle",onClick:()=>a(BZ(e,1,t))}]}function dt1(e){let{props:t}=qx({src:e,alt:"",fill:!0,sizes:Ah}),a=new window.Image;return t.sizes&&(a.sizes=t.sizes),t.srcSet&&(a.srcset=t.srcSet),a.src=t.src,a.decode()}function DZ(e,t,a=dt1){let[s,c]=RZ(()=>new Set),[l,r]=RZ(t),o=e.join(`
|
|
152
152
|
`);IZ(()=>{let n=!0,h=m=>{n&&c(u=>u.has(m)?u:new Set(u).add(m))};for(let m of o?o.split(`
|
|
153
|
-
`):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return IZ(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as vt1,jsx as C3,jsxs as J3}from"react/jsx-runtime";function ub({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=Fn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(wg),n=JI({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return C3(Nc,{vehicle:a,escape:C3("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>l(h=>!h),children:c?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:c?J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),J3("span",{className:"mt-1.5 block",children:[t?`${i?"The set is":"All four wheels are"} ${t}. We have not checked that against any car \u2014 make sure it matches yours.`:r?"Answer the bolt pattern and the offset below. We will not check them against a car.":"Pick a finish and a size below. The bolt pattern and the offset come next, and we will not check them against a car."," ",C3(L1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:C3(gt1,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:J3(vt1,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every wheel after this one is already filled in."})}function gt1({verdict:e,car:t}){switch(e.state){case"checking":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",J3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))})]});case"fits-with-warning":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))}),J3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[C3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),p9(e.warning)," An offset this far out is what an aftermarket wheel is for, but it changes how far the wheel sits from the guard."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return J3(h5,{tone:"bad",children:[J3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),C3("span",{className:"mt-1.5 block",children:p9(e.failure)})]});case"unknown":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),J3("span",{className:"mt-1.5 block",children:[e.missing==="vehicle"?`We have no factory wheel data for the ${t}, and we will not guess at a fit.`:"We do not hold a bolt pattern for this wheel, and we will not guess at a fit."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as WZ}from"react";import{useCallback as GZ,useRef as ft1,useState as bt1}from"react";function OZ(e,t,a){return{productSlug:e,email:a.trim(),size:t?He(t):""}}function qZ(){let[e,t]=bt1("idle"),a=ft1(!1),s=GZ(()=>{a.current=!1,t("idle")},[]),c=GZ(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!be(o)){t("invalid");return}a.current=!0,t("sending");try{i||await v0.createPreOrderIntent(OZ(l,r,o))}catch{a.current=!1,t("error");return}a.current=!1,t("sent")}},[]);return{status:e,submit:c,reset:s}}import{jsx as na,jsxs as ha}from"react/jsx-runtime";function db({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=WZ(a.length>0?0:-1),[l,r]=WZ(""),{status:o,submit:i,reset:n}=qZ(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ha("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ha("div",{className:"border-2 border-accent/40 px-4 py-3.5 font-mono text-[12px] leading-relaxed tracking-[0.08em] text-fg",style:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:[na("span",{className:"font-bold uppercase tracking-[0.2em] text-accent",children:"Pre-order"})," ","\u2014 this design isn't available to add to cart right now. Leave your email to pre-order it. No payment is taken now."]}),a.length>0&&ha("div",{children:[ha("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",na("span",{className:"text-accent",children:h?He(h):"Select a size"})]}),na("div",{className:"flex flex-wrap gap-1.5",children:a.map((u,d)=>{let v=d===s;return ha("button",{type:"button",onClick:()=>{c(d),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",v?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:v?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[v&&na("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),na("span",{className:"block text-[14px] tracking-[0.18em]",children:He(u)})]},He(u))})})]}),o==="sent"?ha("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-accent",children:["Thanks \u2014 we've registered your pre-order for the ",e.name,"."]}):na(Vc,{email:l,onEmailChange:r,status:o,onResetVerdict:n,onSubmit:m,inputAriaLabel:"Email to pre-order this design",submitLabel:"Pre-order",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn bg-btn px-6 font-mono text-[12px] font-bold uppercase tracking-[0.22em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-not-allowed disabled:opacity-50",errorMessage:"Couldn't register that \u2014 please try again."})]})}import{useState as xt1}from"react";import{Fragment as zt1,jsx as Hh}from"react/jsx-runtime";function Fh({src:e,alt:t,fallback:a,fill:s=!1,width:c,height:l,sizes:r,className:o,style:i,priority:n,draggable:h,imageKey:m,imageWrapperClassName:u,onImageClick:d,imageButtonClassName:v,imageButtonLabel:g}){let[b,f]=xt1(null),w=e||"";if(!(w!==""&&b!==w))return Hh(zt1,{children:a});let k=Hh(_3,{src:w,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>f(w)},m??w),S=u?Hh("div",{className:u,children:k}):k;return d?Hh("button",{type:"button",onClick:d,"aria-label":g,className:v,children:S}):S}function UZ(e){let t=e.angles??(e.src?[e.src]:[]),a=[],s=[];for(let c of t)(c.split("/").pop()??"").includes("20-20")?a.push(c):s.push(c);return[...s,...a]}var KZ="Image for reference only. Actual product may vary.",jZ=e=>String(Number(e));function $Z(e,t,a,s){let c=e.renderFits;if(!c||!t||t.diameter==null||t.width==null)return!1;let l=s&&a!=null?c.lug?.[String(a)]:c.angles;if(!l)return!1;let r=jZ(t.diameter);if(!(l.sizes.length===0||l.sizes.includes(`${r}x${jZ(t.width)}`)||l.sizes.includes(r)))return!0;let i=l.lugs??[];return!s&&a!=null&&i.length>0&&!i.includes(a)}import{Fragment as YZ,jsx as D4,jsxs as wt1}from"react/jsx-runtime";function Th(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function Ph({text:e}){return e==="FusionForge\xAE"?wt1(YZ,{children:["FusionForge",D4(i6,{})]}):D4(YZ,{children:e})}function XZ(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",u=h.variants.find(g=>g.size===m),d=u?.specs.tireType??h.variants[0]?.specs.tireType??null,v=[u?.image,h.coverImage].filter(g=>!!g);return{heading:cn(h.brand,h.name),photos:v.slice(0,1),tint:void 0,stageImage:()=>D4(p6,{image:u?.image??h.coverImage,size:m,type:d,sizes:Ah,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",referenceNote:"",metaValue:m,specCaption:u?[u.specs.loadIndex,u.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:D4(pb,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=AN(s,t.shown.finish),l=D7(s,t.part),r=Vn(t),o=Hg(c,r),i=o?[...o]:UZ(c),n=i.length>0?i:s.coverImage?[s.coverImage]:[];return{heading:e.name,photos:n,tint:c.color,stageImage:({photo:h,alt:m,label:u,onZoom:d,fit:v})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:Ah,className:v==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:d,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:u,fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:"(max-width: 720px) 20vw, (max-width: 1100px) 10vw, 120px",className:"object-contain",imageWrapperClassName:"relative h-[80%] w-[80%]",fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:yt1(n,c,r,t.manualMode),referenceNote:$Z(c,l,r,o!=null)?KZ:"",metaValue:c.name,specCaption:l?js(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:D4(ub,{selection:t,spec:l?js(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:D4(db,{wheel:s,editing:a})}}function yt1(e,t,a,s){return e.length>=2||a!=null||!Object.values(t.lugRenderings??{}).some(l=>Array.isArray(l)&&l.filter(Boolean).length>=2)?"":s?"Pick a bolt pattern to see every angle":"Pick your vehicle to see every angle"}import{createContext as Ct1,useContext as kt1,useEffect as Mt1,useState as JZ}from"react";import{jsx as Lt1}from"react/jsx-runtime";var QZ="storefront-wishlist";function St1(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var eD=Ct1(null);function ne0({children:e}){let[t,a]=JZ([]),[s,c]=JZ(!1);Mt1(()=>{let o=t3.getItem(QZ);try{o&&a(St1(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),t3.setItem(QZ,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return Lt1(eD.Provider,{value:r,children:e})}function tD(){let e=kt1(eD);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var aD="data-option-row";import{Fragment as m5,jsx as w1,jsxs as K1}from"react/jsx-runtime";var Ht1=4e3;function Ft1(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}var Tt1=.72;function Pt1(e){let t=e.trim().split(/\s+/).filter(Boolean);if(t.length===0)return;let a=t.map((s,c)=>s.length+(t.length>1&&c===t.length-1?1:0));return`calc(100cqi / ${(Math.max(...a)*Tt1).toFixed(2)})`}function ma({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=e8,imageRatio:o=t8,textAlign:i=g9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=a8,imageFit:u=s8}){let d=Jt(r),v=th(i),g=ah(o),b=sh(m),f=rB(ch(u),xN(e)),w=d==="imageRight"?`${100-g}fr ${g}fr`:`${g}fr ${100-g}fr`,{picked:z,pick:k,qty:S,setQty:H,choice:I,setChoice:P,angleIdx:D,setAngleIdx:E,showValidation:F,setShowValidation:_,manualMode:Z,vehicle:G,rows:V,facts:j,part:N,outOfStock:Q,offer:W,preOrder:U,canAddToCart:i1,currency:y1,price:K,set:c1,msrpLabel:b1}=t,$=XZ(e,t,s),{bullets:u1}=wL(),x1=mN(e),X0=dN(e),o0=l?$.vehicle:null,I1=l?$.vehicleMemory:null,[c0,l0]=cD(!1);gb(()=>{let e1=()=>{l0(document.documentElement.getAttribute("data-theme")==="light")};e1();let z1=new MutationObserver(e1);return z1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>z1.disconnect()},[]);let{add:X1,open:X2,warmCatalog:Q1}=i4();gb(()=>{s||Q1(e.kind)},[s,e.kind,Q1]);let d2=V.filter(e1=>!U||e1.values.length>0),b0=d2.filter(e1=>e1.role==="resolves"),d1=d2.filter(e1=>e1.role==="describes"&&!zN(X0,e1.key)),$1=d1.findIndex(e1=>e1.chosen===null),u0=(!o0||!$.vehicleAnswersSpecs||t.fitmentSet)&&Fn(V,U)?$1===-1?d1:d1.slice(0,$1+1):[],P0=[...b0,...u0],J0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[b1&&w1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:b1}),w1("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] font-bold leading-none tracking-[-0.01em] text-fg",children:x1?IC(K,y1):fe(K,y1)}),K.priced&&w1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:$.unitLabel}),K.setTotal!=null&&K1("div",{className:"ml-auto border border-accent px-3 py-2 font-mono text-[length:var(--size-label,13px)] font-bold uppercase tracking-[0.18em] text-accent",style:{background:"color-mix(in oklab, var(--accent) 14%, transparent)"},children:[W.quantityLabel,": ",B2(c1,y1)]})]}),q0=At1(null);return gb(()=>{s||q0.current===e.slug||(q0.current=e.slug,RC({itemId:N?`${e.slug}|${N.id}`:e.slug,itemName:e.name,variant:$.metaValue,pricePerSet:K.setTotal??K.fromSetTotal??0,currency:y1}))},[s,e.slug,e.name,$.metaValue,N,K,y1]),K1(m5,{children:[w1("nav",{className:"border-b border-line px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] pt-4 pb-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:c0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((e1,z1)=>K1("span",{children:[z1>0&&K1(m5,{children:[w1("span",{className:"mx-3 text-accent",children:"/"}),w1("wbr",{})]}),e1.href?w1(L1,{href:e1.href,className:"hover:text-fg",children:w1(Ph,{text:e1.label})}):w1("span",{className:"text-fg",children:w1(Ph,{text:e1.label})})]},`${e1.label}-${z1}`))}),K1("section",{"data-hero-layout":d,"data-hero-align":v,className:["grid gap-10 px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] py-14 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-8",d==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:minmax(0,1fr)]"].join(" "),style:{...c0?{}:{background:"var(--section-bg)"},...d==="stacked"?{}:{"--hero-cols":w}},children:[K1("div",{"data-hero-gallery":b,"data-hero-fit":f,className:b==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:d==="imageRight"?{order:2}:void 0,children:[K1("div",{className:b==="tiled"?"min-w-0 flex-1":void 0,children:[w1(Nt1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,onLightbox:a,fit:f}),$.referenceNote&&w1("p",{"data-hero-reference-note":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.referenceNote}),$.galleryHint&&w1("p",{"data-hero-gallery-hint":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.galleryHint})]}),b!=="main"&&w1(_t1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,tiled:b==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",v==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:d==="imageRight"?{order:1}:void 0,children:[K1("div",{className:"w-full [container-type:inline-size]",children:[K1("div",{className:"mb-2.5 flex items-center gap-2.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-accent",children:[w1("span",{children:w1(Ph,{text:e.eyebrow})}),e.badge&&K1(m5,{children:[w1("span",{children:"\xB7"}),w1("span",{children:e.badge})]})]}),w1("h1",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--hero-name-fit,9999px),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",style:{"--hero-name-fit":Pt1($.heading)},children:(()=>{let e1=$.heading.lastIndexOf(" ");if(e1===-1)return $.heading;let z1=$.heading.slice(0,e1),t0=$.heading.slice(e1+1);return K1(m5,{children:[z1," ",K1("em",{className:"font-normal italic text-accent",children:[t0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&J0,I1,b0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),U&&$.preOrder?K1(m5,{children:[c==="belowSpecs"&&h&&J0,$.preOrder]}):K1(m5,{children:[o0,u0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),n&&w1(Et1,{facts:j}),(W.packs.length>0||W.extra||W.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[W.packs.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.packs.map(e1=>K1("button",{type:"button",onClick:()=>P(z1=>({...z1,unit:e1.value})),"aria-pressed":I.unit===e1.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",I.unit===e1.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:I.unit===e1.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[I.unit===e1.value&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value))})]}),W.extra&&K1("label",{className:`${W.packs.length>0?"mt-3.5 ":""}flex cursor-pointer items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-fg`,children:[w1("input",{type:"checkbox",checked:I.spares>0,onChange:e1=>P(z1=>({...z1,spares:e1.target.checked?vr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),W.extra.label]}),W.spareCounts.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:a9.howMany}),w1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:W.spareCounts.map(e1=>{let z1=e1.value-i7,t0=I.spares===z1;return K1("button",{type:"button",onClick:()=>P(s2=>({...s2,spares:z1})),"aria-pressed":t0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",t0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:t0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[t0&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),K1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:[e1.value," \xB7 ",e1.label]})]},e1.value)})})]}),W.spareSide&&K1(m5,{children:[w1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:W.spareSide.label}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.spareSide.options.map(e1=>{let z1=I.spareSide===e1.value;return K1("button",{type:"button",onClick:()=>P(t0=>({...t0,spareSide:e1.value})),"aria-pressed":z1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",z1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:z1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[z1&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value)})})]})]}),c==="belowSpecs"&&h&&J0,K1("div",{className:PZ,children:[!(x1&&!K.priced)&&w1(Ka,{value:S,onChange:H,size:"large"}),x1&&!K.priced?w1(L1,{href:"/contact",className:"flex-1 cursor-pointer bg-btn px-6 py-4 text-center font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg",children:br}):K.priced?Q?w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:"Out of stock"}):K1("button",{type:"button",[ue]:"",onClick:()=>{if(!i1){_(!0),window.setTimeout(()=>_(!1),Ht1);return}if(_(!1),s)return;let e1=PN(e,N,z,{choice:I,qty:S},{fitmentLabel:Z?$.specCaption:G.appliedName?`For ${G.appliedName}`:"",fitmentKey:Z?`manual|${$.specCaption}`:`vehicle|${Ft1(G.applied?.vehicle)}`});e1&&(X1(e1),X2())},"aria-disabled":!i1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",i1?"cursor-pointer bg-btn text-btn-ink hover:bg-fg hover:text-bg":"cursor-pointer border-2 border-dashed border-accent/50 text-accent/80 hover:border-accent hover:text-accent"].join(" "),style:i1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",K.setTotal!=null?` \xB7 ${B2(c1,y1)}`:""]}):w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:n7}),w1(It1,{slug:e.slug,name:e.name})]}),Q&&N&&w1(Rt1,{partNumbers:N.components.map(e1=>e1.partNumber),productSlug:e.slug},N.id),F&&(()=>{let e1=P0.filter(t0=>t0.chosen===null).map(t0=>t0.prompt.replace(/^Select\s+/i,""));if(o0&&$.vehicleAnswersSpecs&&!t.fitmentSet&&e1.push("vehicle fitment"),e1.length===0)return null;let z1=e1.length===1?e1[0]:e1.length===2?`${e1[0]} and ${e1[1]}`:`${e1.slice(0,-1).join(", ")}, and ${e1.at(-1)}`;return K1("p",{role:"alert",className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:["Please select ",z1," first."]})})()]}),u1.length>0&&w1("ul",{className:"flex flex-wrap items-center gap-x-6 gap-y-2 border-t border-line pt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.05em] text-fg",children:u1.map((e1,z1)=>K1("li",{children:[w1("strong",{className:"font-bold text-accent",children:e1.label}),e1.detail?` ${Xa} ${e1.detail}`:""]},`${e1.label}-${z1}`))})]})]})]})}function Et1({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[w1("dl",{className:"flex flex-col gap-2",children:e.map(t=>K1("div",{className:"flex flex-wrap items-baseline gap-x-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em]",children:[K1("dt",{className:"text-fg-dim",children:[t.label," \xB7"]}),w1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),w1("p",{className:"mt-3 font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:"Only one of each is left, so there is nothing to choose here."})]})}function sD({row:e,onPick:t}){if(e.values.length===0&&!e.empty)return null;let a=e.values.find(c=>c.value===e.chosen),s=a&&[a.label,a.note].filter(Boolean).join(" \xB7 ");return K1("div",{className:"border-b border-line pb-[26px]",[aD]:e.key,children:[K1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:[e.label," \xB7 ",w1("span",{className:"text-accent",children:s??e.prompt})]}),e.values.length===0?K1("p",{className:"font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:[e.empty.text," ",w1(L1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?w1("div",{className:"grid grid-cols-2 gap-2",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative flex items-center gap-3 border-2 px-3 py-3 text-left transition-colors",l?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),w1("span",{className:"block min-w-0 flex-1 truncate font-mono text-[length:var(--size-label,12px)] font-bold uppercase tracking-[0.18em] text-fg",children:c.label})]},c.value)})}):w1("div",{className:"flex flex-wrap gap-1.5",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",l?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&w1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function lD(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var Vt1=6;function Nt1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,onLightbox:l,fit:r}){let o=t.photos[Math.min(a,t.photos.length-1)],i=DZ(t.photos,o),n=lD(t),h=n>=2,m=String(n).padStart(2,"0"),u=Math.min(a,Math.max(t.photos.length-1,0)),d=h||t.captions[u]?Th(t,u):"",v=[e,t.metaValue,d].filter(Boolean).join(" \u2014 "),g="max-[720px]:static",b=["relative flex aspect-square items-center justify-center overflow-hidden max-[720px]:col-span-2",c?"bg-bg":""].join(" ");return K1("div",{className:"relative max-[720px]:grid max-[720px]:grid-cols-[minmax(0,1fr)_auto] max-[720px]:items-start max-[720px]:gap-x-3 max-[720px]:gap-y-2",style:{color:t.tint},children:[K1("div",{className:`absolute left-0 top-0 z-10 flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-fg ${g} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(m5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),w1("span",{className:"text-fg-dim",children:"\xB7"})]}),w1("span",{children:e}),t.metaValue&&K1(m5,{children:[w1("span",{className:"text-fg-dim",children:"\xB7"}),w1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&w1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${g}`,children:ZZ(a,n,s).map(w=>w1("button",{type:"button","aria-label":w.label,title:w.label,onClick:w.onClick,className:"flex h-7 w-7 items-center justify-center border border-fg-dim/60 text-fg transition-colors hover:border-accent hover:text-accent",children:w.glyph},w.label))}),K1("div",{className:b,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((w,z)=>w1("span",{className:`absolute ${w} h-3 w-3 border border-fg-dim/40`,style:{borderTop:w.includes("top")?"1px solid var(--site-line)":"none",borderBottom:w.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:w.includes("left")?"1px solid var(--site-line)":"none",borderRight:w.includes("right")?"1px solid var(--site-line)":"none"}},z)),t.stageImage({photo:i,alt:v,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,v),fit:r})]}),K1("div",{className:`absolute bottom-5 left-5 right-5 z-10 flex items-center justify-between gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim ${g} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[w1("span",{children:t.specCaption}),w1("span",{children:t.originCaption})]})]})}function _t1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=lD(t);return r<2?null:w1("div",{className:l?"order-[-1] flex w-16 flex-col gap-2 max-[720px]:w-12 max-[720px]:gap-1":"mt-2 grid grid-cols-4 gap-2 max-[720px]:gap-1",style:!l&&r>4?{gridTemplateColumns:`repeat(${Math.min(r,Vt1)}, minmax(0, 1fr))`}:void 0,children:Array.from({length:r}).map((o,i)=>{let n=t.photos[i];return K1("button",{type:"button",onClick:()=>s(i),"aria-label":`View ${Th(t,i)}`,className:["relative flex aspect-square items-center justify-center overflow-hidden transition-colors",c?"bg-bg":"",i===a?"border border-accent":"border border-transparent hover:border-fg-dim"].join(" "),style:{color:t.tint},children:[w1("span",{className:"absolute top-1.5 left-2 z-10 font-mono text-[length:var(--size-label,8px)] uppercase tracking-[0.18em] text-fg-dim",children:String(i+1).padStart(2,"0")}),t.thumbImage({photo:n,alt:`${e} \u2014 ${Th(t,i)}`})]},i)})})}function It1({slug:e,name:t}){let{has:a,toggle:s}=tD(),c=a(e);return w1("button",{type:"button",title:c?"Saved":"Save","aria-label":c?`Remove ${t} from wishlist`:`Save ${t} to wishlist`,"aria-pressed":c,onClick:()=>s(e),className:["h-12 w-12 cursor-pointer border-2 bg-transparent transition-colors",c?"border-accent text-accent":"border-fg-dim/50 text-fg hover:border-accent hover:text-accent"].join(" "),children:c?"\u2665":"\u2661"})}function Rt1({partNumbers:e,productSlug:t}){let[a,s]=cD(""),{status:c,submit:l,reset:r}=nn();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?w1("p",{className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:"We'll email you when it's back."}):w1(Vc,{className:"-mt-1",email:a,onEmailChange:s,status:c,onResetVerdict:r,onSubmit:o,inputAriaLabel:"Email for the back-in-stock alert",submitLabel:"Notify me when back",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn px-4 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.22em] text-btn transition-colors hover:bg-btn hover:text-btn-ink disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-btn",errorMessage:"Couldn't save that \u2014 please try again."})}import{Fragment as Dt1,jsx as _c,jsxs as Ot1}from"react/jsx-runtime";function vb({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=rD(null),[i,n]=rD(!1);return Bt1(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?v0.getTyre(e).then(u=>({kind:"tyre",tyre:u})):v0.getWheel(e).then(u=>({kind:"wheel",wheel:u}))).then(u=>{h||o(u)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?_c(A4,{size:"tall",children:"Couldn\u2019t load this product."}):r?_c(Zt1,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):_c(A4,{size:"tall",children:"Loading product\u2026"})}function Zt1({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?Nn(e.tyre):Ks(e.wheel),r=vc(l,{editing:t}),o=gc();return Ot1(Dt1,{children:[_c(ma,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),_c(Bt,{item:o.item,onClose:o.close})]})}import{Fragment as Ut1,jsx as o8,jsxs as jt1}from"react/jsx-runtime";var Gt1=D3;function Eh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=$0();return o8(z2,{kinds:Gt1,type:"ProductHero",editing:e,children:c?o8(ma,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?o8(qt1,{pricePlacement:t,showVehicleFitment:a,...s}):o8(A4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function qt1({pricePlacement:e,showVehicleFitment:t,...a}){let s=z3(!0);return s?o8(Wt1,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):o8(A4,{size:"tall",children:p("Loading sample product\u2026")})}function Wt1({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=vc(e,{editing:!0}),l=gc();return jt1(Ut1,{children:[o8(ma,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),o8(Bt,{item:l.item,onClose:l.close})]})}import{jsx as Ic}from"react/jsx-runtime";function Kt1({source:e,editing:t=!1,pricePlacement:a=Xt,showVehicleFitment:s=!0,heroLayout:c=e8,imageRatio:l=t8,textAlign:r=g9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=a8,imageFit:h=s8}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return $0()||t&&M2()?Ic(Eh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Ic(vb,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Ic(A4,{size:"tall",children:p("Pick a product in the panel to fill this hero.")}):Ic(Eh,{pricePlacement:a,showVehicleFitment:s,...m})}var oD={label:"Product Hero",defaultProps:{source:null,pricePlacement:Xt,showVehicleFitment:!0,heroLayout:e8,imageRatio:t8,textAlign:g9,showSpecTable:!0,showPriceQuote:!0,galleryMode:a8,imageFit:s8},render:e=>Ic(Kt1,{source:e.source,editing:e.puck?.isEditing,pricePlacement:cB(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Jt(e.heroLayout),imageRatio:ah(e.imageRatio),textAlign:th(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:sh(e.galleryMode),imageFit:ch(e.imageFit)})};import{jsx as $t1}from"react/jsx-runtime";var iD={label:"Product",defaultProps:{code:"",finish:""},render:e=>$t1(hf,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as Yt1}from"react/jsx-runtime";var nD={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>Yt1(jB,{style:e,editing:t?.isEditing})};import{useEffect as Jt1,useRef as Qt1}from"react";import{jsx as Rc,jsxs as hD}from"react/jsx-runtime";var Xt1={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function fb({variants:e,answer:t,loading:a=!1}){return t?hD("div",{className:"mt-9",children:[Rc("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Sh(t)}),Rc("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ua(t,s.sku),l=Xt1[c];return hD("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Rc("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Rc("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Lh[c]})]},s.sku)})})]}):a?Rc("p",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.24em] text-fg-dim",children:"Checking your car\u2026"}):null}import{jsx as bb,jsxs as mD}from"react/jsx-runtime";var xb="Will it fit *your car?*",zb="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",yb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",wb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20";function Cb({num:e,title:t=xb,description:a=zb,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=I4({autoApply:!0}),{answer:h,loading:m}=Mh(r,vo(n.applied?.vehicle)),u=Qt1(i);return u.current=i,Jt1(()=>{u.current?.(h)},[h]),mD("section",{className:l?wb:yb,children:[l?null:bb(s0,{num:e,title:t,description:a,accent:!0}),bb(X3,{cascade:n.cascade}),s&&c?mD("a",{href:c,className:"mt-6 inline-block font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-accent underline-offset-4 hover:underline",children:[s," \u2192"]}):null,bb(fb,{variants:o,answer:h,loading:m})]})}import{jsx as Bc,jsxs as aa1}from"react/jsx-runtime";var ea1=["tyre"];function kb(e){return Bc(z2,{kinds:ea1,type:"TyreFitment",editing:e.editing,children:Bc(ta1,{...e})})}function ta1({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=$0(),i=z3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?aa1("section",{className:l?wb:yb,children:[l?null:Bc(s0,{num:e,title:t||xb,description:a||zb,accent:!0}),Bc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The vehicle question appears here on a tyre product page, with one verdict per size.")})]}):null:Bc(Cb,{num:e,title:t||void 0,description:a||void 0,escapeText:s,escapeHref:c,omitHead:l,slug:h.slug,variants:h.variants})}import{jsx as sa1}from"react/jsx-runtime";var pD={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=a1(e.escapeText),c=a1(e.escapeHref);return sa1(kb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as i8,jsxs as gD}from"react/jsx-runtime";var uD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",dD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20",ca1=[],la1=["tyre"];function Mb(e){return i8(z2,{kinds:la1,type:"TyreSizes",editing:e.editing,children:i8(ra1,{...e})})}function ra1({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=$0(),r=z3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:i8(s0,{num:e?M(e):void 0,title:Y(t||"Available *sizes.*",!1),description:M(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?gD("section",{className:c?dD:uD,children:[n,i8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("This product\u2019s sizes appear here on a product page.")})]}):null;let h=i.some(m=>!m.image);return gD("section",{className:c?dD:uD,children:[n,i8(oa1,{variants:i,fieldUsage:l?.fieldUsage??ca1}),i8(s5,{text:h?uo:""})]})}function oa1({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=d0();return i8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>i8(uc,{fieldUsage:t,size:c.size,specs:c.specs,prices:c.prices,image:c.image,inStock:c.inStock,currency:a,formatPrice:s},c.sku))})}import{jsx as ia1}from"react/jsx-runtime";var vD={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ia1(Mb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var fD={AlloyWheelsListing:f_,BrandStrip:RB,BundleOffer:GB,CartBlock:YB,CatalogFilterBar:nZ,CheckoutCTA:I_,CollectionCard:mZ,Collections:G_,CompatibleTyres:xI,CountrySwitchBlock:pZ,DeliveryOptions:CI,DetailRows:RI,EuTyreLabel:uZ,FitmentFinder:WI,FitmentTable:mR,Gallery:xR,GalleryB:HR,GalleryItem:dZ,Header:TZ,ProductGrid:$R,ProductHero:oD,ProductRef:iD,RelatedProducts:dB,SearchBlock:nD,SpecTable:FB,TyreFitment:pD,TyreSizes:vD};var na1={AlloyWheelsListing:z_,BrandStrip:M_,BundleOffer:S_,CartBlock:L_,CatalogFilterBar:N_,CheckoutCTA:R_,CollectionCard:D_,Collections:W_,CompatibleTyres:zI,CountrySwitchBlock:yI,DeliveryOptions:MI,DetailRows:ZI,EuTyreLabel:DI,FitmentFinder:UI,FitmentTable:pR,Gallery:wR,GalleryB:FR,GalleryItem:RR,Header:BR,ProductGrid:XR,ProductHero:oB,ProductRef:uB,RelatedProducts:gB,SearchBlock:vB,SpecTable:PB,TyreFitment:EB,TyreSizes:VB},G0=et(fD,na1);import{jsx as x4,jsxs as Vh}from"react/jsx-runtime";function Lb(e={}){let t=gC();return x4(UL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:x4(ha1,{...e})})}var bD="mx-auto max-w-[var(--sf-site-width,1600px)] px-[min(24px,var(--sf-site-gutter,40px))] py-16 min-[800px]:px-[var(--sf-site-gutter,40px)] min-[800px]:py-[88px]",Sb="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function ha1({eyebrow:e,heading:t,intro:a,buttonLabel:s,successMessage:c,boxes:l,inBoxes:r=!1}){let{fieldPrefix:o,editing:i,services:n,currency:h,serviceId:m,setServiceId:u,requiresPayment:d,date:v,earliestDate:g,setDate:b,setDateTouched:f,availability:w,loadingSlots:z,noSlotsMessage:k,selectedStart:S,setSelectedStart:H,customerTimezone:I,name:P,setName:D,email:E,setEmail:F,phone:_,setPhone:Z,notes:G,setNotes:V,confirmation:j,submitting:N,error:Q,canSubmit:W,handleSubmit:U,sample:i1}=C7(),y1=i1?x4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:p("Example form \u2014 add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")})}):null,K=n===void 0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?p("Add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")}):"Appointments are not available right now."}):null;return r&&l?x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,j?x4(l,{className:`${Sb} items-start`}):Vh("form",{onSubmit:U,children:[x4(l,{className:`${Sb} items-start`}),K]})]})}):x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,x4(Do,{eyebrow:e,heading:t,intro:a}),j?x4(qo,{successMessage:c}):K||Vh("form",{onSubmit:U,className:Sb,children:[x4(Oo,{}),x4(Go,{buttonLabel:s})]})]})})}import{jsx as ma1}from"react/jsx-runtime";var Ab={boxes:{type:"slot",allow:["BookingBox"]}},xD={label:"Booking Form",fields:Ab,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>ma1(Lb,{eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var zD={fields:{_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message"),boxes:Ab.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{eyebrow:a,heading:s,intro:c,buttonLabel:l,successMessage:r,...o}=t;return o}};var yD={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Wo.map(e=>[Uo[e],g1(Hu[e],Ke(Hu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Wo.map(r=>Uo[r]),l=r=>Object.fromEntries(Object.entries(s).filter(([o])=>o.startsWith("_")||c.includes(o)||r.includes(o)));return l(a==="head"?["eyebrow","heading","intro"]:a==="details"?["buttonLabel"]:a==="confirm"?["successMessage"]:[])}};import{EyeIcon as pa1,LinkIcon as wD,EyeOffIcon as ua1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var CD={fields:{_gTop:x("Routing groups"),routingNumber:T("Section number",f0.routingNumber),routingTagline:T("Eyebrow",f0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:q("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:q("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||p("Group")},_gForm:x("Message form"),formSlug:E5(),formNumber:T("Section number",f0.formNumber),formHeading:O("Heading",f0.formHeading),metaItems:T2("Meta lines",Zc(c4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:x("\u201COther\u201D reason"),showOther:l1("Show \u201COther\u201D reason",f0.showOther,Zc(pa1,{})),otherLabel:q("\u201COther\u201D chip label",f0.otherLabel),otherNoteTitle:T("\u201COther\u201D note title",f0.otherNoteTitle),otherNoteBody:O("\u201COther\u201D note body",f0.otherNoteBody),_gSubmit:x("Submit button"),buttonText:q("Submit button",f0.buttonText),consent:O("Consent line",f0.consent),_gChannels:x("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:q("Label"),value:q("Value"),href:e3(q("Link")),sub:q("Sub line"),groupId:g1("Link to group",Zc(wD,{}),[{label:"\u2014 Not linked \u2014",value:""},...f0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:l1("Hidden",!1,Zc(ua1,{}))},getItemSummary:e=>{let t=e?.label||e?.value||p("Channel");return e?.hidden?p("{name} \xB7 hidden",{name:t}):t}}},resolveData:e=>{let t=e.props.groups??[];if(!t.some(c=>!c?.id))return e;let a=new Set,s=t.map((c,l)=>{if(c?.id)return a.add(c.id),c;let r=Ou(c?.title)||`group-${l+1}`;for(;a.has(r);)r=`${r}-${l+1}`;return a.add(r),{...c,id:r}});return{...e,props:{...e.props,groups:s}}},resolveFields:(e,{fields:t})=>{let a=e.props.groups??[],s=[{label:"\u2014 Not linked \u2014",value:""},...a.map((r,o)=>({label:r?.title||r?.eyebrow||p("Group {n}",{n:o+1}),value:r?.id||Ou(r?.title)||`group-${o+1}`}))],c=t,l=c.channels;return l?.type==="array"&&l.arrayFields&&(c.channels={...l,arrayFields:{...l.arrayFields,groupId:g1("Link to group",Zc(wD,{}),s,"")}}),t}};import{useEffect as da1,useRef as ga1,useState as va1}from"react";import{jsx as MD,jsxs as ya1}from"react/jsx-runtime";var fa1=12,Nh=null,kD=null;function ba1(e=!1){let t=i2();if((e||kD!==t)&&(Nh=null),!Nh){let a=R3();kD=t,Nh=J1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return Nh}function xa1(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"2-digit"})}function za1(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?A9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:xa1(e.published_at)||void 0}}function b9({value:e,onChange:t,snapshotCount:a=fa1}){let[s,c]=va1("idle"),l=Array.isArray(e),r=l?e.length:0,o=ga1(!0),i=m=>{c("loading"),ba1(m).then(u=>{if(!o.current)return;if(u===null){c("error");return}c("idle");let d=u.slice(0,a).map(za1);b6(d,e??null)&&t(d)})};da1(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=p("Storefront \u2192 Blog"),h=s==="loading"?p("Syncing from {place}\u2026",{place:n}):s==="error"?p("Couldn\u2019t reach {place}.",{place:n}):l?p3("Auto-synced from {place} \xB7 {n} post","Auto-synced from {place} \xB7 {n} posts",r,{place:n}):p("Linking to {place}\u2026",{place:n});return ya1("div",{children:[MD(Ol,{label:"Blog posts"}),MD(E4,{status:s,statusText:h,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:p("Auto-refreshes from the most-recent visible posts each time you open the editor. Set how many appear with \u201CPosts to display\u201D.")})]})}import{useState as wa1}from"react";import{jsx as _0,jsxs as n8}from"react/jsx-runtime";var SD=3,HD="featured",_h="tabs",FD="portrait",pa="spread",Ih="count",TD=[{label:"Even grid",value:"even"},{label:"Featured first",value:HD},{label:"Tabs",value:_h},{label:"Photo cards",value:FD},{label:"Staggered spread",value:pa},{label:"Count",value:Ih}],Ca1=[FD,pa],PD="even",Z6={min:2,max:11,step:1,fallback:7,unit:"of 12"},ka1="bottom-left",Ma1=55,Sa1="bottom";function La1(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(Z6.max,Math.max(Z6.min,Math.round(t))):Z6.fallback;return`${a}fr ${12-a}fr`}var LD={1:"grid-cols-1",2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"},AD={2:"grid-cols-2",3:"grid-cols-3 max-[800px]:grid-cols-2",4:"grid-cols-4 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-2"},Aa1="Find by name",Ha1="Nobody by that name.";function Fa1(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function Ta1({card:e,scaffold:t,lower:a=!1}){return n8(r0,{href:e.href||"#",className:`sf-card group relative isolate flex aspect-[3/4] overflow-hidden bg-surface${a?" min-[801px]:mt-16":""}`,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,children:[_0("div",{className:"absolute inset-0 transition-transform duration-700 group-hover:scale-[1.03] motion-reduce:transition-none motion-reduce:group-hover:scale-100",children:_0(k0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),_0("div",{"aria-hidden":!0,className:"absolute inset-0 z-0",style:{background:"linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--bg) 88%, transparent) 100%)"}}),e.meta&&_0("span",{className:"absolute left-3 top-3 z-[1] rounded-[var(--sf-button-radius,999px)] bg-bg/85 px-2.5 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-accent",children:M(e.meta)}),n8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[_0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:Y(e.title,!1)}),e.dateLabel&&_0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:M(e.dateLabel)}),e.excerpt&&_0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:M(e.excerpt)})]})]})}function Pa1({cards:e,scaffold:t}){return _0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:_0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return _0("li",{children:n8(r0,{href:a.href||"#","aria-current":c?"page":void 0,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,className:`flex flex-col gap-0.5 rounded-[var(--sf-button-radius,999px)] border px-5 py-2.5 transition-colors ${c?"border-accent bg-accent text-accent-ink":"border-line text-fg hover:border-accent hover:text-accent"}`,children:[_0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:Y(a.title,!1)}),a.excerpt&&_0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:M(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function Ea1({count:e,words:t,href:a}){let s=n8("span",{className:"inline-flex items-baseline gap-3",children:[_0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&_0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?_0(r0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var Va1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",Na1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-0 max-[800px]:pb-[70px]",_a1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[32px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[24px]";function Hb({num:e,title:t,link:a,posts:s,columns:c,limit:l,showAll:r=!1,editing:o=!1,cardImage:i,gap:n,layout:h,featuredWidth:m,listCover:u=!0,featuredDarken:d,omitHead:v=!1,sample:g,nameFilter:b=!1}){let[f,w]=wa1(""),z=s??[],k=r?z.length:typeof l=="number"&&l>0?l:SD,S=z.slice(0,k),H=o&&S.length===0;if(S.length===0&&!o)return null;let I=r?SD:k,P=H?g?.length?g.slice(0,r?g.length:I):Array.from({length:I},(N,Q)=>({slug:`placeholder-${Q}`,title:p("Blog post title"),excerpt:p("A short summary of the post appears here."),cover:"",meta:p("Journal"),dateLabel:p("Date")})):S,D=B3("Events",n,"both"),E=h===HD&&P.length>1,F=La1(m),_=h===_h,Z=h===Ih,G=Ca1.includes(h??""),V=b&&!_&&!Z&&!E,j=V?P.filter(N=>Fa1(N.title,f)):P;return Z?_0("section",{className:_a1,children:_0(Ea1,{count:P.length,words:v||t===void 0?void 0:Y(t,!1),href:v?void 0:a?.href})}):n8("section",{className:v?Na1:Va1,style:J2(i),children:[v?null:_0(s0,{num:e!==void 0?M(e):void 0,title:t!==void 0?Y(t,!1):void 0,link:a?{text:M(a.text),href:a.href}:void 0}),V&&n8("div",{className:"mb-6 flex flex-col gap-2",children:[n8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[_0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Aa1}),_0("input",{type:"search",value:f,onChange:N=>w(N.target.value),autoComplete:"off",className:"rounded-[var(--sf-button-radius,6px)] border border-line bg-bg px-4 py-2.5 text-[length:var(--size-body,15px)] text-fg outline-none focus:border-accent"})]}),j.length===0&&_0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:Ha1})]}),_?_0(Pa1,{cards:P,scaffold:H}):G?_0("div",{className:`sf-card-grid grid${D.className} ${h===pa?"grid-cols-3 max-[800px]:grid-cols-2":AD[Math.min(4,Math.max(2,c??3))]??AD[3]}`,style:D.style,children:j.map((N,Q)=>_0(Ta1,{card:N,scaffold:H,lower:h===pa&&Q%3===1},`${N.slug}-${Q}`))}):E?n8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${D.className}`,style:{...D.style,"--sf-events-split":F},children:[_0(dt,{post:P[0],href:P[0].href,scaffold:H,layout:"cover",darken:d??Ma1,darkenStyle:Sa1,placement:ka1},`${P[0].slug}-0`),_0("div",{className:`grid auto-rows-min${D.className}`,style:D.style,children:P.slice(1).map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H,showCover:u},`${N.slug}-${Q+1}`))})]}):_0("div",{className:`sf-card-grid grid${D.className} ${LD[Math.min(4,Math.max(1,c??3))]??LD[3]}`,style:D.style,children:j.map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H},`${N.slug}-${Q}`))})]})}import{LayoutIcon as Ba1,ColumnsIcon as Za1,WidthIcon as Da1,ImageIcon as Oa1,OpacityIcon as Ga1,ListIcon as qa1,HashIcon as Wa1,SearchIcon as Ua1}from"efficient-easel/icons";import{jsx as Ra1}from"react/jsx-runtime";var x9={num:A.sectionNumber,title:"Section title",link:A.viewAll},Ia1=()=>[{key:"sample-1",title:p("First card"),excerpt:p("A line about it appears here.")},{key:"sample-2",title:p("Second card"),excerpt:p("A line about it appears here.")},{key:"sample-3",title:p("Third card"),excerpt:p("A line about it appears here.")},{key:"sample-4",title:p("Fourth card"),excerpt:p("A line about it appears here.")}],ED=(e,t)=>({slug:e.key||`card-${t}`,title:e.title??"",excerpt:e.excerpt??"",cover:e.cover??"",meta:e.meta||void 0,dateLabel:e.dateLabel||void 0,href:e.href||"#"}),VD={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,x9.link,e.puck),l=G8(e)!==""?Li(e,!!e.puck?.isEditing,Ia1()):null,r=l?l.sample?[]:l.rows.map(ED):e.posts;return Ra1(Hb,{num:a(y(e.num,x9.num,e.puck)),title:a(y(e.title,x9.title,e.puck)),link:a(s?{text:s,href:a1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(ED):void 0,columns:e.columns,limit:e.limit,showAll:e.showAll,layout:e.layout,featuredWidth:e.featuredWidth,listCover:e.listCover,featuredDarken:e.featuredDarken,cardImage:e.cardImage,gap:e.gap,nameFilter:e.nameFilter===!0,editing:e.puck?.isEditing})}};import{jsx as h8}from"react/jsx-runtime";var ja1=50,ND={fields:{_gContent:x("Content"),num:T("Number",x9.num),title:O("Heading",x9.title),linkText:T("Button",x9.link),linkHref:H1("Link"),dataSource:Ai("Cards from","Blog posts"),_gPosts:x("Blog posts"),posts:c2(b9,{snapshotCount:ja1}),_gLayout:x("Layout"),layout:g1("Arrangement",h8(Ba1,{}),TD,PD),columns:s1("Columns",h8(Za1,{}),2,4,1,3),featuredWidth:s1("Featured width",h8(Da1,{}),Z6.min,Z6.max,Z6.step,Z6.fallback,Z6.unit),listCover:l1("Show cover image on the smaller cards",!0,h8(Oa1,{})),featuredDarken:s1("Darken",h8(Ga1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:l1("Filter by name",!1,h8(Ua1,{})),gap:Z3("Events"),showAll:l1("Show all blog posts",!1,h8(qa1,{})),limit:s1("Posts to display",h8(Wa1,{}),1,20,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...Hi("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>G1(W1(o,a,U1),e.props.headPlacement,Z1.Events.headRows);if(s.showAll&&delete l.limit,s.layout==="featured")delete l.columns;else for(let o of["featuredWidth","listCover","featuredDarken"])delete l[o];if(s.layout===_h||s.layout===Ih)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===pa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as Rh}from"react/jsx-runtime";import{SettingsDefaultReset as Ka1,SettingsField as $a1,SettingsSegmented as Ya1}from"efficient-easel/panel";import{WidthIcon as Xa1}from"efficient-easel/icons";function Bh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e,n=p(s);return Rh($a1,{label:n,labelId:c,icon:Rh(Xa1,{}),value:o?l:void 0,changed:!o,action:Rh(Ka1,{words:wy()?.panel,label:n,changed:!o,onReset:()=>a(void 0)}),hint:r,children:Rh(Ya1,{options:[{label:p(gm.page),id:"content"},{label:p(gm.full),id:"full"}],value:i,ariaLabel:n,onChange:a})})}import{SettingsField as Ja1,SettingsSwitch as Qa1}from"efficient-easel/panel";import{BlockColumnIcon as es1}from"efficient-easel/icons";import{Fragment as ts1,jsx as Dc}from"react/jsx-runtime";function Fb({value:e,onChange:t}){let a=C5(),s={...q9,...e},c=s[a];return Dc(Ja1,{label:p("Logo fills its column"),icon:Dc(es1,{}),action:Dc(Qa1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its column on {view}",{view:p(w5[a])})}),hint:Dc(ts1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Dc("strong",{children:p(w5[a])})})})})}import{SettingsField as as1,SettingsSwitch as ss1}from"efficient-easel/panel";import{FullWidthIcon as cs1}from"efficient-easel/icons";import{Fragment as ls1,jsx as Oc}from"react/jsx-runtime";function Tb({value:e,onChange:t}){let a=C5(),s={...W9,...e},c=s[a];return Oc(as1,{label:p("Logo fills its row"),icon:Oc(cs1,{}),action:Oc(ss1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its row on {view}",{view:p(w5[a])})}),hint:Oc(ls1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Oc("strong",{children:p(w5[a])})})})})}import{jsx as rs1}from"react/jsx-runtime";function Pb({value:e,onChange:t}){return rs1(Zs,{label:"Columns per line",unit:p("columns"),steps:_y,value:_l(e),onChange:t})}import{useContext as os1,useEffect as is1,useRef as ns1,useState as ID}from"react";import{jsx as ua,jsxs as _D}from"react/jsx-runtime";function Gc(){let e=UB();return _D("div",{className:"flex flex-wrap justify-between gap-x-6 gap-y-3 border-t border-line pt-6 font-mono text-[13px] uppercase tracking-[0.15em] text-fg-dim max-[800px]:flex-col max-[800px]:gap-3",children:[ua("span",{children:e}),_D("span",{className:"flex flex-wrap items-center gap-3",children:[ua("span",{children:"Privacy"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Terms"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Cookies"})]})]})}import{jsx as Eb,jsxs as ps1}from"react/jsx-runtime";var RD={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},hs1={1:"min-[720px]:grid-cols-1",2:"min-[720px]:grid-cols-2",3:"min-[720px]:grid-cols-3",4:"min-[720px]:grid-cols-4",5:"min-[720px]:grid-cols-5",6:"min-[720px]:grid-cols-6"},ms1={1:"min-[1100px]:grid-cols-1",2:"min-[1100px]:grid-cols-2",3:"min-[1100px]:grid-cols-3",4:"min-[1100px]:grid-cols-4",5:"min-[1100px]:grid-cols-5",6:"min-[1100px]:grid-cols-6"};function Vb({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=os1(wa),{desktop:o,tablet:i,mobile:n}=_l(s),{desktop:h,tablet:m,mobile:u}={...q9,...c},{desktop:d,tablet:v,mobile:g}={...W9,...l},b=C5(),w=t?RD[b==="desktop"?o:b==="tablet"?i:n]:`${RD[n]} ${hs1[i]} ${ms1[o]}`,z=ns1(null),[k,S]=ID(1),[H,I]=ID(!1);if(is1(()=>{if(!t&&!r)return;let D=z.current;if(!D)return;let E=()=>{let j=D.querySelector(".footer-block-grid");if(!j)return;let N=t?b:Vw(window.innerWidth),Q=N==="desktop"?d:N==="tablet"?v:g;I(Q);let W=N==="desktop"?h:N==="tablet"?m:u,U=getComputedStyle(j).gridTemplateColumns.split(" ").filter(Boolean).length-1,i1=Math.max(j.childElementCount-1,0);S(!Q&&W&&U>=1?Math.max(Math.ceil(i1/U),1):1)},F,_=()=>{clearTimeout(F),F=setTimeout(E,0)},Z=[0,80,250,600].map(j=>setTimeout(E,j)),G=new MutationObserver(_);G.observe(D,{childList:!0,subtree:!0});let V=new ResizeObserver(_);return V.observe(D),()=>{clearTimeout(F),Z.forEach(clearTimeout),G.disconnect(),V.disconnect()}},[o,i,n,t,r,b,h,m,u,d,v,g]),!t&&!r)return null;let P=wl(Cl(a))??void 0;return Eb("footer",{ref:z,className:"border-t border-line bg-bg px-[var(--sf-site-gutter,40px)] pb-10 pt-20 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-14",style:{"--footer-logo-rows":k,"--footer-logo-col":H?"1 / -1":"1"},children:ps1("div",{style:P,children:[Eb(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${w}`,minEmptyHeight:160}),Eb(Gc,{})]})})}import{jsx as us1}from"react/jsx-runtime";var Nb={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},BD={label:"Footer",fields:Nb,defaultProps:{columns:Iy,logoFill:q9,logoRowFill:W9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>us1(Vb,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as Zh}from"react/jsx-runtime";var ZD={fields:{_gLayout:x("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>Zh(Bh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the page"),hint:p("Whether the footer's blocks sit on the page's column, or run edge to edge. The background always spans the screen."),onChange:a=>t(a)})},columns:{type:"custom",render:({value:e,onChange:t})=>Zh(Pb,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Fb,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Tb,{value:e,onChange:t})},_gBlocks:x("Blocks"),blockList:N5("Footer"),blocks:Nb.blocks}};import{WeightIcon as ds1,WidthIcon as gs1,PhoneIcon as vs1}from"efficient-easel/icons";import{jsx as _b}from"react/jsx-runtime";var DD={fields:{_gStyle:x("Style"),thickness:s1("Thickness",_b(ds1,{}),1,8,1,1,"px"),lengthPct:s1("Length",_b(gs1,{}),10,100,1,100,"%"),hideOnMobile:l1("Hide on mobile",!1,_b(vs1,{}))}};var OD={fields:{_gContent:x("Content"),heading:E1("Heading","Join our email list"),placeholder:q("Field placeholder","Email address"),buttonLabel:q("Button","Subscribe")}};import{AlignLeftIcon as xs1}from"efficient-easel/icons";import{jsx as GD}from"react/jsx-runtime";var fs1={start:"items-start",center:"items-center",end:"items-end"};function Ib({direction:e="vertical",gap:t,align:a="start",content:s}){let c=B3("FooterGroup",t,e==="horizontal"?"inline":"block");return GD("div",{className:"min-w-0",children:GD(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${fs1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as bs1}from"react/jsx-runtime";var Rb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},qD={label:"Footer Box",fields:Rb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>bs1(Ib,{direction:e,gap:t,align:a,content:s})};import{jsx as zs1}from"react/jsx-runtime";var WD={fields:{_gLayout:x("Layout"),direction:v1("Direction",Zl("`Direction` names how a container's children run \u2014 a MODIFIER, not a thing. doc/naming.md N10.1 gives the idea a dash in its Glyph column; editor-shell's own `direction` meaning says the bare row is CORRECT and not an omission (SS seat, 2026-09-11)."),[{label:"Vertical",value:"vertical"},{label:"Horizontal",value:"horizontal"}],"vertical"),gap:Z3("FooterGroup"),align:v1("Alignment",zs1(xs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:x("Blocks"),blockList:N5("FooterGroup"),blocks:Rb.blocks}};import{WidthIcon as ys1,AlignLeftIcon as ws1,LogoIcon as Cs1,PaddingTopIcon as ks1,PaddingRightIcon as Ms1,PaddingBottomIcon as Ss1,PaddingLeftIcon as Ls1}from"efficient-easel/icons";import{jsx as z9}from"react/jsx-runtime";var UD={fields:{_gContent:x("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:x("Style"),widthPct:s1("Width",z9(ys1,{}),40,400,1,100,"%"),align:v1("Alignment",z9(ws1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:v1("Logo color",z9(Cs1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:s1("Padding top",z9(ks1,{}),0,120,2,0,"px"),padRight:s1("Padding right",z9(Ms1,{}),0,120,2,0,"px"),padBottom:s1("Padding bottom",z9(Ss1,{}),0,120,2,0,"px"),padLeft:s1("Padding left",z9(Ls1,{}),0,120,2,0,"px")}};import{Button as As1}from"efficient-shell/ui";import{SettingsField as Hs1}from"efficient-easel/panel";import{FieldSelect as Fs1}from"efficient-easel/fields";import{MenuIcon as Ts1}from"efficient-easel/icons";import{useCallback as Ps1,useEffect as jD,useState as Bb}from"react";import{jsx as y9,jsxs as KD}from"react/jsx-runtime";function Zb({value:e,onChange:t}){let[a,s]=Bb(null),[c,l]=Bb(!1),r=Ps1(f=>{s(f),l(!0)},[]);jD(()=>{let f=!1;return Hp(R3()).then(w=>{f||r(w)}).catch(()=>{f||s([])}),()=>{f=!0}},[r]),jD(()=>{let f=!1,w=tS(()=>{bM(R3()).then(z=>{f||r(z)}).catch(()=>{})});return()=>{f=!0,w()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Kr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Kr(a??[],e)?.id??"",u=f=>t({id:f.id,handle:f.handle,name:f.name,items:f.items.map(w=>({label:w.label,url:w.url}))}),d=f=>{if(!f){t(null);return}let w=(a??[]).find(z=>z.id===f);w&&u(w)},[v,g]=Bb(!1),b=()=>{i&&(g(!0),Hp(R3(),!0).then(f=>{r(f);let w=Kr(f,e);w&&u(w)}).catch(()=>{}).finally(()=>g(!1)))};return KD("div",{children:[y9(Hs1,{label:p("Menu"),icon:y9(Ts1,{}),hint:!o&&a&&a.length===0?p("Create menus in {place}, then pick one here.",{place:p("Storefront \u2192 Menus")}):void 0,children:y9(Fs1,{value:m,ariaLabel:p("Menu"),onChange:d,readOnly:o||(a?.length??0)===0,options:[{label:o?p("Loading menus\u2026"):a&&a.length===0?p("No menus found"):p("Select a menu\u2026"),value:""},...(a??[]).map(f=>({label:`${f.name} (${f.item_count??f.items.length})`,value:f.id}))]})}),h?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:nM()}):null,n?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:hM(e?.name??p("The linked menu"))}):null,i&&!n?KD("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[y9("p",{className:"text-[12px] text-fg-dim",children:p3("Linked to \u201C{name}\u201D \u2014 {n} link. Re-pull after editing the menu:","Linked to \u201C{name}\u201D \u2014 {n} links. Re-pull after editing the menu:",e?.items?.length??0,{name:e?.name??""})}),y9(As1,{variant:"link",size:"sm",className:"shrink-0",onClick:b,disabled:v,children:v?p("Updating\u2026"):p("Update links")})]}):null]})}import{PhoneIcon as Es1,LineBetweenIcon as Vs1}from"efficient-easel/icons";import{jsx as Db}from"react/jsx-runtime";var $D={fields:{_gContent:x("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>Db(Zb,{value:e,onChange:t})},heading:q("Heading","Column heading"),_gStyle:x("Style"),accordionMobile:l1("Show as accordion on mobile",!1,Db(Es1,{})),showDividers:l1("Dividers between links",!1,Db(Vs1,{}))}};import{jsx as qc}from"react/jsx-runtime";var YD={small:16,medium:20,large:24},Ob=0,Gb=32,JD=2,Wc=0,XD={start:"justify-start",center:"justify-center",end:"justify-end"};function qb({iconStyle:e=oe,iconSize:t="medium",align:a="start",gap:s=Wc,editing:c=!1}){let l=qB(),r=Cw(ww(l));if(r.length===0)return c?qc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("Add your social links")}):null;let o=YD[t]??YD.medium,n={gap:Math.min(Gb,Math.max(Ob,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return qc("ul",{"data-social-block":"","aria-label":"Social media",className:`flex list-none flex-wrap p-0 [margin:calc((44px-var(--social-mark))/-2)] max-[800px]:[margin:calc((40px-var(--social-mark))/-2)] ${XD[a]??XD.start}`,style:n,children:r.map(({platform:h,href:m,label:u})=>qc("li",{children:qc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${u} (opens in a new tab)`,className:"grid h-11 w-11 place-items-center rounded text-fg transition-colors hover:text-accent focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-[-4px] focus-visible:outline-current motion-reduce:transition-none max-[800px]:h-10 max-[800px]:w-10",children:qc(_w,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as Ns1}from"efficient-shell/ui";import{Fragment as _s1,jsx as Wb,jsxs as Is1}from"react/jsx-runtime";function Ub(){let{openPanel:e}=sr();return Is1(_s1,{children:[Wb(Ol,{label:"Social links"}),Wb("p",{className:"es-field-hint sf-hint-keep",children:p("The links are typed once for the whole website, in Site settings.")}),Wb(Ns1,{variant:"link",size:"sm",onClick:e,children:p("Edit social links \u2192")})]})}import{StylesIcon as Rs1,TextSizeIcon as Bs1,AlignLeftIcon as Zs1,GapIcon as Ds1}from"efficient-easel/icons";import{jsx as Uc}from"react/jsx-runtime";var QD={fields:{_gStyle:x("Style"),iconStyle:v1("Icon style",Uc(Rs1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],oe),iconSize:v1("Icon size",Uc(Bs1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Uc(Ub,{})},_gLayout:x("Layout"),align:v1("Alignment",Uc(Zs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:s1("Gap",Uc(Ds1,{}),Ob,Gb,JD,Wc,"px")}};import{TextSizeIcon as Os1}from"efficient-easel/icons";import{jsx as Gs1}from"react/jsx-runtime";var eO={fields:{_gContent:x("Content"),text:E1("Body","Footer text"),_gStyle:x("Style"),size:v1("Size",Gs1(Os1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:_o()}};var tO={fields:{_gForm:x("Form"),formSlug:E5(),_gContent:x("Content"),heading:q("Heading override"),intro:E1("Intro"),submitText:q("Submit button"),finePrint:q("Fine print")}};var aO={fields:{}};var Dh="e.g. D00123 \xB7 blank = the whole store";import{useState as m8}from"react";import{Fragment as Us1,jsx as h3,jsxs as jc}from"react/jsx-runtime";var Oh="w-full border-2 border-line bg-bg px-4 py-3.5 font-display text-[17px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent",qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",Ws1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function jb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=m8(""),[o,i]=m8(""),[n,h]=m8(0),[m,u]=m8(""),[d,v]=m8(""),[g,b]=m8(!1),[f,w]=m8(!1),[z,k]=m8(null);async function S(H){if(H.preventDefault(),!(c||g)){if(n<1){k("Choose a star rating.");return}b(!0),k(null);try{await v0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:d.trim(),...a?.trim()?{designCode:a.trim()}:{}}),w(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{b(!1)}}}return h3("section",{className:"relative z-[2] border-t border-line bg-surface",children:jc("div",{className:s?Ws1:qs1,children:[s?null:jc(Us1,{children:[(e??"").trim()&&h3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&h3("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)})]}),f?h3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:"Thanks \u2014 your review will appear once approved."}):jc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:S,children:[jc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[h3(Z2,{label:"Name",required:!0,children:h3("input",{type:"text",required:!0,value:l,onChange:H=>r(H.target.value),className:Oh})}),h3(Z2,{label:"Email \u2014 never shown publicly",children:h3("input",{type:"email",value:o,onChange:H=>i(H.target.value),className:Oh})})]}),jc("div",{className:"flex flex-col gap-2",children:[h3(w8,{required:!0,children:"Rating"}),h3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(H=>h3("button",{type:"button","aria-pressed":n>=H,"aria-label":`${H} star${H===1?"":"s"}`,onClick:()=>{h(H),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=H?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},H))})]}),h3(Z2,{label:"Review title (optional)",children:h3("input",{type:"text",value:m,onChange:H=>u(H.target.value),className:Oh})}),h3(Z2,{label:"Your review",required:!0,children:h3("textarea",{required:!0,rows:5,value:d,onChange:H=>v(H.target.value),className:Oh+" resize-y"})}),z&&h3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:z}),h3("button",{type:c?"button":"submit",disabled:g,className:"cursor-pointer self-start bg-btn px-8 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:g?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as js1}from"react/jsx-runtime";var Kc={eyebrow:"Your turn",title:"Leave a *review.*"},sO={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return js1(jb,{eyebrow:a(y(e.eyebrow,Kc.eyebrow,e.puck)),title:a(y(e.title,Kc.title,e.puck)),omitHead:t,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var cO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",Kc.eyebrow),title:O("Heading",Kc.title),_gSource:x("Reviews"),designCode:e3(q("Design code",Dh))},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.ReviewForm.headRows)};import{StylesIcon as sc1,HashIcon as cc1,ColumnsIcon as lc1}from"efficient-easel/icons";import{useEffect as Ks1,useState as $s1}from"react";function lO(e,t){let[a,s]=$s1(null);return Ks1(()=>{let c=!1;return s(null),v0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as tc1,jsx as O4,jsxs as Gh}from"react/jsx-runtime";var Ys1=()=>[{id:"sample-review-1",authorName:p("Sample reviewer"),rating:5,title:p("Sample review title"),body:p("Approved customer reviews appear here automatically \u2014 this card is only a preview of the section's shape."),designCode:"",createdAt:""},{id:"sample-review-2",authorName:p("Sample reviewer"),rating:4,title:"",body:p("Reviews are collected by the Review Form section and wait for your approval before they show."),designCode:"",createdAt:""},{id:"sample-review-3",authorName:p("Sample reviewer"),rating:5,title:p("Another sample"),body:p("Set a product design code on this section to show one product's reviews; leave it blank for the whole store."),designCode:"",createdAt:""}];function Xs1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function Js1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return O4("div",{role:"img","aria-label":`${t} out of 5 stars`,className:"flex gap-1 text-[length:var(--size-body,17px)] leading-none",children:Array.from({length:5}).map((a,s)=>O4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",ec1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function Kb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=lO(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=!(i&&i.length>0)&&o,m=i&&i.length>0?i:h?Ys1():[];return!o&&m.length===0?null:O4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Gh("div",{className:r?ec1:Qs1,children:[r?null:Gh(tc1,{children:[(t??"").trim()&&O4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&O4("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),O4("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--rv-cols),minmax(0,1fr))]",style:{"--rv-cols":String(n)},children:m.map(u=>Gh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",h?"opacity-60":""].join(" "),children:[O4(Js1,{rating:u.rating}),u.title.trim()&&O4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:u.title}),O4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:z0(u.body).map((d,v)=>O4("p",{className:v?"mt-3":"",children:d},v))}),Gh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:u.authorName}),O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Xs1(u.createdAt)})]})]},u.id))})]})})}import{jsx as ac1}from"react/jsx-runtime";var $c={eyebrow:"Reviews",title:"From our *customers.*"},rO={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ac1(Kb,{look:o4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,$c.eyebrow,e.puck)),title:a(y(e.title,$c.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as $b}from"react/jsx-runtime";var oO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",$c.eyebrow),eyebrowLook:g1("Eyebrow style",$b(sc1,{}),[...k4],l7("Reviews")),title:O("Heading",$c.title),_gSource:x("Reviews"),limit:s1("Reviews to display",$b(cc1,{}),3,12,1,6),designCode:e3(q("Design code",Dh)),_gStyle:x("Style"),columns:s1("Columns",$b(lc1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Reviews.headRows)};import{FullWidthIcon as ic1}from"efficient-easel/icons";import{jsx as Yb,jsxs as rc1}from"react/jsx-runtime";function Yc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=rc1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":wZ(c),"data-header-menu-row":CZ(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?Yb("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?p("Site header \u2014 above every page"):p("Site footer \u2014 below every page")}):null,Yb(t,{minEmptyHeight:120})]});return e==="header"?Yb(uM,{children:o}):o}import{jsx as oc1}from"react/jsx-runtime";var Xb={sections:{type:"slot"}},iO={label:"Site Footer",fields:Xb,render:({sections:e,fullWidth:t,puck:a})=>oc1(Yc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as nc1}from"react/jsx-runtime";var nO={fields:{fullWidth:l1("Full width",!1,nc1(ic1,{})),sections:Xb.sections}};import{CaseIcon as mc1,ContrastIcon as pc1,FullWidthIcon as uc1,HeightIcon as dc1,LayoutIcon as gc1,StickyIcon as vc1}from"efficient-easel/icons";import{jsx as hc1}from"react/jsx-runtime";var Jb={sections:{type:"slot"}},hO={label:"Site Header",fields:Jb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>hc1(Yc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as da}from"react/jsx-runtime";var{sectionAccent:fc1}=X9(e=>eb(e)??zZ,"Follow the site theme"),mO={fields:{heightPx:s1("Height",da(dc1,{}),k5.min,k5.max,2,k5.default,"px"),fullWidth:l1("Full width",!1,da(uc1,{})),sectionAccent:fc1,topTextColor:v1("Text color at the top",da(pc1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:v1("Letters",da(mc1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:v1("Menu row",da(gc1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:v1("Sticky header",da(vc1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:Jb.sections}};import{jsx as qh,jsxs as bc1}from"react/jsx-runtime";var w0={eyebrow:"Section number",title:"Show *us yours.*",body:"Tell people what they get for submitting, and what you do with what they send.",buttonText:"Submit \u2192",consent:"By submitting, you agree to our privacy policy. We never share contact details with third parties."};function Xc(e,t){return e===void 0?t:e}function Qb({eyebrow:e,title:t,body:a,buttonText:s,consent:c,formSlug:l,form:r,editing:o=!1,boxes:i,inBoxes:n=!1,...h}){let m=Xc(e,w0.eyebrow),u=Xc(t,w0.title),d=Xc(a,w0.body),v=Xc(s,w0.buttonText),g=Xc(c,w0.consent),b=H5(l,r),f=v7({form:b,formSlug:l,editing:o}),w=b===void 0,z=!!b||o;return!z&&!m&&!u&&!d?null:n&&i?qh("section",{className:E0(h)?"border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:qh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):bc1("section",{className:E0(h)?"grid grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:[qh(lA,{eyebrow:m,title:u}),qh(jo,{body:d,buttonLabel:v,consent:g,form:b,submission:f,showForm:z,resolving:w,editing:o})]})}var pO={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Ko.map(e=>[$o[e],g1(Eu[e],Ke(Eu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),formSlug:E5(),buttonText:T("Button",w0.buttonText),consent:O("Consent line",w0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Ko.map(n=>$o[n]),o=a==="head"?c:l,i={};for(let[n,h]of Object.entries(s)){if(n.startsWith("_")){i[n]=h;continue}if(r.includes(n)){a!=="head"&&(i[n]=h);continue}o.includes(n)&&(i[n]=h)}return i}};import{jsx as xc1}from"react/jsx-runtime";var ex={boxes:{type:"slot",allow:["SubmitBox"]}},uO={label:"Photo Submission Form",fields:ex,defaultProps:{eyebrow:w0.eyebrow,title:w0.title,body:w0.body,formSlug:"",buttonText:w0.buttonText,consent:w0.consent},render:e=>xc1(Qb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var dO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),_gForm:x("Form"),formSlug:E5(),_gButton:x("Button"),buttonText:T("Button",w0.buttonText),_gFootnote:x("Footnote"),consent:O("Consent line",w0.consent),boxes:ex.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{_gContent:a,eyebrow:s,title:c,body:l,_gForm:r,formSlug:o,_gButton:i,buttonText:n,_gFootnote:h,consent:m,...u}=t;return u}};var zc1=["issues","posts"],gO=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],tx="issues";function ax(e){return zc1.includes(e)?e:tx}var yc1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function vO(e,t){let a=ax(t),s={...e};for(let[c,l]of Object.entries(yc1))l.includes(a)||delete s[c];return s}import{CategoryIcon as Cc1,HashIcon as kc1}from"efficient-easel/icons";var I0={headNum:A.sectionNumber,headTitle:A.headingAccent,headDesc:"A short description of your newsletter or publication.",kicker:"\u2192 Newsletter",leadTitle:"Get it in the *inbox.*",intro:"Tell readers what they get and how often. One email, straight to the inbox. We will never sell your address.",emailPlaceholder:"your@email.com",submitText:"Subscribe \u2192",subscribedText:"Subscribed \u2713",finePrint:"Approx. 1 email per week \xB7 Unsubscribe in one click",issuesHeading:"Recent issues",archiveText:"View the full archive \u2192",archiveHref:u2.href},fO=()=>["N\xB0 04","N\xB0 03","N\xB0 02","N\xB0 01"].map(e=>({n:e,title:p("Issue title"),small:p("Short description"),date:p("Month YYYY")}));function wc1(e){return e.map((t,a)=>({n:`N\xB0 ${String(e.length-a).padStart(2,"0")}`,title:t.title,small:t.meta,date:t.dateLabel}))}function Wh(e,t){if(e==="issues")return C1(t.issues,fO(),t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?wc1(a.slice(0,s)):[];return C1(c,fO(),t.puck)}import{jsx as bO}from"react/jsx-runtime";var xO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",I0.headNum),headTitle:O("Heading",I0.headTitle),headDesc:O("Body",I0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",I0.kicker),leadTitle:O("Heading",I0.leadTitle),intro:O("Intro",I0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",I0.emailPlaceholder),submitText:q("Submit button",I0.submitText),subscribedText:q("Subscribed button",I0.subscribedText),finePrint:O("Fine print",I0.finePrint),_sRight:Y1("Recent issues"),_gRightCopy:x("Content"),contentType:v1("Type",bO(Cc1,{}),[...gO],tx),issuesHeading:T("Panel heading",I0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:f1("Number"),title:f1("Title"),small:f1("Sub-line"),date:f1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||p("Issue")},_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",bO(kc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",I0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>vO(t,e.props.contentType)};import{HashIcon as Ac1}from"efficient-easel/icons";import{useState as Mc1}from"react";import{jsx as Q3,jsxs as w9}from"react/jsx-runtime";var Sc1="That didn't go through \u2014 please try again.";function Jc({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,archiveText:u,archiveHref:d,source:v=G3.subscribeSection,editing:g=!1,...b}){let[f,w]=Mc1(""),{status:z,submit:k}=ro({source:v,dryRun:g}),S=z==="sent",H=z==="sending",I=z==="error"||z==="invalid",P=(m??[]).filter(_=>(_?.n??"").trim()||(_?.title??"").trim()||(_?.date??"").trim()),D=P.length>0,E=S?i||"Subscribed \u2713":H?"Sending\u2026":o||"Subscribe \u2192";function F(_){_.preventDefault(),!S&&k({email:f})}return w9("section",{className:E0(b)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",children:[Q3(D2,{num:e,title:t?Y(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),w9("div",{className:D?"grid min-h-[460px] grid-cols-[1.1fr_1fr] border border-line max-[1100px]:grid-cols-1":"grid min-h-[460px] grid-cols-1 border border-line",children:[w9("div",{className:D?"flex flex-col justify-center gap-6 border-r border-line px-14 py-16 max-[1100px]:border-r-0 max-[1100px]:border-b max-[1100px]:px-7 max-[1100px]:py-12":"flex flex-col justify-center gap-6 px-14 py-16 max-[1100px]:px-7 max-[1100px]:py-12",children:[s&&Q3(V1,{text:s}),c&&Q3("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.035em]",children:Y(c,!0)}),l&&Q3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:M(l,!0)}),w9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:F,children:[Q3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:f,onChange:_=>w(_.target.value),disabled:S,className:"flex-1 border border-r-0 border-line bg-bg px-5 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.18em] text-fg placeholder:text-fg-dim outline-none focus:border-accent"}),Q3("button",{type:"submit",disabled:S||H,className:"border border-btn bg-btn px-7 py-[18px] font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-default disabled:opacity-90",children:R0(E)})]}),I&&Q3("p",{role:"alert",className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-alert",children:Sc1}),n&&Q3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:M(n)})]}),D&&w9("div",{id:"sub-recent-issues",className:"grid grid-rows-[auto_1fr_auto] gap-6 bg-[var(--journal-panel-bg)] px-11 py-12 scroll-mt-[160px] max-[1100px]:px-7 max-[1100px]:py-9",children:[h&&Q3(V1,{text:h,size:12}),Q3("div",{className:"flex flex-col",children:P.map((_,Z)=>w9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",Z===0?"border-t border-line":""].join(" "),children:[Q3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:_.n?M(_.n):""}),w9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[_.title?M(_.title):"",_.small?.trim()&&Q3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:M(_.small,!0)})]}),Q3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:_.date?M(_.date):""})]},Z))}),u&&Q3(r0,{href:d||"/journal",className:"flex items-center justify-end gap-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-accent hover:text-fg",children:M(u)})]})]})]})}import{jsx as Lc1}from"react/jsx-runtime";var Y0={...I0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},zO={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=Wh("posts",e);return Lc1(Jc,{headNum:y(e.headNum,Y0.headNum,e.puck),headTitle:y(e.headTitle,Y0.headTitle,e.puck),headDesc:y(e.headDesc,Y0.headDesc,e.puck),kicker:y(e.kicker,Y0.kicker,e.puck),leadTitle:y(e.leadTitle,Y0.leadTitle,e.puck),intro:y(e.intro,Y0.intro,e.puck),emailPlaceholder:a1(e.emailPlaceholder)||Y0.emailPlaceholder,submitText:a1(e.submitText)||Y0.submitText,subscribedText:a1(e.subscribedText)||Y0.subscribedText,finePrint:y(e.finePrint,Y0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,Y0.issuesHeading,e.puck),issues:t,source:G3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,Y0.archiveText,e.puck),archiveHref:a1(e.archiveHref)||Y0.archiveHref})}};import{jsx as Hc1}from"react/jsx-runtime";var yO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",Y0.headNum),headTitle:O("Heading",Y0.headTitle),headDesc:O("Body",Y0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",Y0.kicker),leadTitle:O("Heading",Y0.leadTitle),intro:O("Intro",Y0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",Y0.emailPlaceholder),submitText:q("Submit button",Y0.submitText),subscribedText:q("Subscribed button",Y0.subscribedText),finePrint:O("Fine print",Y0.finePrint),_sRight:Y1("Recent posts"),_gRightCopy:x("Content"),issuesHeading:T("Panel heading",Y0.issuesHeading),_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",Hc1(Ac1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",Y0.archiveText),archiveHref:H1("Archive link")}};import{jsx as Fc1}from"react/jsx-runtime";var wO={label:"Booking box",defaultProps:{},render:e=>Fc1(Fu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as sx,useState as cx}from"react";import{Fragment as Tc1,jsx as H0,jsxs as k3}from"react/jsx-runtime";var CO="border-b border-line bg-transparent py-3.5 font-display text-[length:var(--size-body,18px)] tracking-[0.01em] text-fg outline-none transition-colors focus:border-accent";function lx({routingNumber:e,routingTagline:t,groups:a,formNumber:s,formHeading:c,metaLines:l,showOther:r=!0,otherLabel:o="Other",otherNoteTitle:i,otherNoteBody:n,buttonText:h,consent:m,channels:u,formSlug:d,form:v,editing:g,initialActiveId:b,onActiveChange:f,reasonExtras:w,...z}){let k=[...a.map(U=>U.id),...r?[P8]:[]],S=b&&k.includes(b)?b:k[0]??P8,[H,I]=cx(S);sx(()=>{k.includes(H)||I(k[0]??P8)},[k.join("|")]),sx(()=>{b&&k.includes(b)&&I(b)},[b]);let P=U=>{I(U),E(null),f?.(U)},[D,E]=cx(null),F=(u??[]).filter(U=>!U.hidden),_=F.find(U=>U.groupId===H)?.value??null,Z=D??_,G=H5(d,v),V=v7({form:G,formSlug:d,editing:g}),j=G===void 0,N=!!G||!!g,[Q,W]=cx(!1);return sx(()=>{let U=()=>W(document.documentElement.getAttribute("data-theme")==="light");U();let i1=new MutationObserver(U);return i1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>i1.disconnect()},[]),k3(Tc1,{children:[k3("section",{className:E0(z)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:Q?void 0:{background:"var(--section-bg)"},children:[(e||t)&&k3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&H0(V1,{text:e}),t&&H0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:M(t)})]}),H0("div",{className:"sf-card grid grid-cols-4 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:a.map(U=>{let i1=H===U.id;return k3("button",{type:"button",onClick:()=>{P(U.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:n6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",i1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[U.eyebrow&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:U.eyebrow}),H0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:U.title}),U.copy&&H0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:U.copy}),U.response&&k3("div",{className:"mt-2 flex justify-between border-t border-line pt-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:[H0("span",{children:"Response"}),H0("strong",{className:"font-normal text-fg",children:U.response})]})]},U.id)})})]}),(N||F.length>0)&&k3("section",{id:"contact-form",className:["mx-auto grid max-w-[var(--sf-site-width,1600px)] scroll-mt-[80px] gap-20 border-b border-line px-[var(--sf-site-gutter,40px)] py-20 max-[1100px]:grid-cols-1 max-[1100px]:gap-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",N&&F.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[N&&k3("div",{children:[k3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[k3("div",{children:[s&&H0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:M(s)}),c&&H0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,4vw,56px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(c,!0)})]}),!!(l&&l.length)&&H0("div",{className:"text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.8] tracking-[0.22em] text-fg-dim max-[700px]:text-left",children:l.map((U,i1)=>H0("div",{children:U},i1))})]}),G?V.done?H0("div",{className:"border border-accent bg-accent/[0.08] p-8 font-display text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:Ze(G,"Thanks \u2014 we've received your message.")}):k3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:V.handleSubmit,children:[G.fields.map(U=>H0(Z2,{label:U.label,required:U.required,className:U.type==="textarea"||U.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:H0(f7,{field:U,value:V.valueOf(U.key),onChange:i1=>V.set(U.key,i1),className:U.type==="textarea"?`${CO} min-h-[140px] resize-y leading-[1.5]`:U.type==="checkbox"?"size-4 self-start accent-accent":CO})},U.key)),k3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[H0(w8,{required:!0,children:"Reason"}),k3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(U=>{let i1=H===U.id;return H0("button",{type:"button",onClick:()=>P(U.id),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",i1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:U.title},U.id)}),r&&H0("button",{type:"button",onClick:()=>P(P8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",H===P8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:R0(o)})]})]}),w?.(H),H===P8&&(i||n)&&k3("div",{className:"sf-card col-span-2 flex flex-col gap-2 border border-line bg-bg/40 p-5 max-[700px]:col-span-1",children:[i&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(i)}),n&&z0(n).map((U,i1)=>H0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:M(U)},i1))]}),H0(De,{value:V.honeypot,onChange:V.setHoneypot}),V.error&&H0("p",{role:"alert",className:"col-span-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-alert max-[700px]:col-span-1",children:V.error}),k3("div",{className:"col-span-2 mt-5 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-6 max-[700px]:col-span-1 max-[700px]:flex-col max-[700px]:items-stretch",children:[m&&H0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:M(m)}),H0("button",{type:g?"button":"submit",disabled:V.submitting,className:"cursor-pointer bg-btn px-8 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-wait disabled:opacity-60 max-[700px]:w-full",children:V.submitting?"Sending\u2026":h?R0(h):"Send Message \u2192"})]})]}):H0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:j?p("Loading form\u2026"):p("Choose a form in the inspector, under Message form \u2014 until then this column is hidden on the live page and no message can be sent.")})]}),F.length>0&&H0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:F.map((U,i1)=>{let y1=Z===U.value,c1=!!!U.groupId;return k3("div",{onClick:c1?()=>E(U.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",c1?"cursor-pointer border-t-2 border-t-accent":"",y1?"border-l-accent pl-6":c1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:y1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[y1&&k3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),H0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),H0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",y1?"text-fg":"text-accent"].join(" "),children:U.label}),c1?H0("a",{href:U.href,onClick:b1=>b1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",y1?"text-accent":"text-fg"].join(" "),children:U.value}):H0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",y1?"text-accent":"text-fg"].join(" "),children:U.value}),U.sub&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:U.sub})]},`${U.value}-${i1}`)})})]})]})}import{jsx as Pc1}from"react/jsx-runtime";var kO={label:"Contact Form",defaultProps:{routingNumber:f0.routingNumber,routingTagline:f0.routingTagline,groups:f0.groups,formSlug:"",formNumber:f0.formNumber,formHeading:f0.formHeading,metaItems:f0.metaLines.map(e=>({text:e})),showOther:f0.showOther,otherLabel:f0.otherLabel,otherNoteTitle:f0.otherNoteTitle,otherNoteBody:f0.otherNoteBody,buttonText:f0.buttonText,consent:f0.consent,channels:f0.channels},render:e=>Pc1(lx,{routingNumber:y(e.routingNumber,f0.routingNumber,e.puck),routingTagline:y(e.routingTagline,f0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,f0.formNumber,e.puck),formHeading:y(e.formHeading,f0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:a1(e.otherLabel)||f0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,f0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,f0.otherNoteBody,e.puck),buttonText:a1(e.buttonText)||f0.buttonText,consent:y(e.consent,f0.consent,e.puck),channels:e.channels??[],formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as MO}from"react/jsx-runtime";function rx({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return MO("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:MO("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as Ec1}from"react/jsx-runtime";var SO={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>Ec1(rx,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as Vc1}from"react";import{jsx as ox,jsxs as LO}from"react/jsx-runtime";function ix({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=Up(),[c,l]=Vc1("");return LO("div",{className:"w-full min-w-0",children:[e?ox("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:Y(e,!1)}):null,LO("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:G3.footerSignup})},children:[ox("input",{type:"email",placeholder:t,value:c,onChange:r=>l(r.target.value),className:"w-0 min-w-[7rem] flex-1 border border-line bg-transparent px-3 py-2 text-[13px] text-fg placeholder:text-fg-dim/70 focus:border-accent focus:outline-none","aria-label":p2(e??"")||"Email address"}),ox("button",{type:"submit",className:"shrink-0 border border-btn bg-btn px-4 py-2 text-[13px] font-medium text-btn-ink transition-opacity hover:opacity-90",children:R0(a)})]})]})}import{jsx as Nc1}from"react/jsx-runtime";var AO={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>Nc1(ix,{heading:$4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as Uh,jsxs as Ic1}from"react/jsx-runtime";var _c1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function nx({tagline:e,widthPct:t=100,align:a="left",reverse:s=!0,padTop:c=0,padRight:l=0,padBottom:r=0,padLeft:o=0,editing:i=!1}){let{src:n,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d}=Ll(),v=Math.round(m7*(t/100)),g={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return Ic1("div",{className:`flex min-w-0 flex-col ${_c1[a]} [container-type:inline-size]`,style:g,children:[Uh(L1,{href:"/","aria-label":d?`${d} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:Uh(xe,{variant:"footer",sizePx:v,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d,fitWordmarkToContainer:!0,fitFloorPx:OC})}),e?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:M(e)}):i?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:p("Add a short brand tagline \u2192")}):null]})}import{jsx as Rc1}from"react/jsx-runtime";var HO={label:"Logo",defaultProps:{widthPct:100,align:"left",reverse:"auto",padTop:0,padRight:0,padBottom:0,padLeft:0},render:({tagline:e,widthPct:t,align:a,reverse:s,padTop:c,padRight:l,padBottom:r,padLeft:o,puck:i})=>Rc1(nx,{tagline:e||void 0,widthPct:t,align:a,reverse:s!=="off",padTop:c,padRight:l,padBottom:r,padLeft:o,editing:i?.isEditing})};import{jsx as Bc1}from"react/jsx-runtime";var FO={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>Bc1(Ra,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as Zc1}from"react/jsx-runtime";var TO={label:"Social Logos",defaultProps:{iconStyle:oe,iconSize:"medium",align:"start",gap:Wc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>Zc1(qb,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as Oc1}from"react/jsx-runtime";var Dc1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function hx({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?p("Add a line of footer text."):"");return c?Oc1("p",{className:`${Dc1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:M(c)}):null}import{jsx as Gc1}from"react/jsx-runtime";var PO={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>Gc1(hx,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as qc1}from"react/jsx-runtime";var EO={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>qc1(Bp,{formSlug:a1(e.formSlug)||void 0,heading:a1(e.heading)||void 0,intro:a1(e.intro)||void 0,submitText:a1(e.submitText)||void 0,finePrint:a1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as Wc1}from"react/jsx-runtime";var VO={label:"Legal Line",render:()=>Wc1(Gc,{})};import{jsx as Uc1}from"react/jsx-runtime";var NO={label:"Submit box",defaultProps:{},render:e=>Uc1(Vu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as jc1}from"react/jsx-runtime";var _O={label:"Subscribe Form",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",issues:[],archiveText:"",archiveHref:""},render:({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,contentType:u,posts:d,limit:v,archiveText:g,archiveHref:b,puck:f})=>jc1(Jc,{headNum:y(e,I0.headNum,f),headTitle:y(t,I0.headTitle,f),headDesc:y(a,I0.headDesc,f),kicker:y(s,I0.kicker,f),leadTitle:y(c,I0.leadTitle,f),intro:y(l,I0.intro,f),emailPlaceholder:a1(r)||I0.emailPlaceholder,submitText:a1(o)||I0.submitText,subscribedText:a1(i)||I0.subscribedText,finePrint:y(n,I0.finePrint,f),issuesHeading:y(h,I0.issuesHeading,f),issues:Wh(ax(u),{issues:m,posts:d,limit:v,puck:f}),source:G3.subscribeSection,editing:f?.isEditing,archiveText:y(g,I0.archiveText,f),archiveHref:a1(b)||I0.archiveHref})};var IO={AppointmentBooking:xD,BookingBox:wO,ContactRouting:kO,Events:VD,Footer:BD,FooterDivider:SO,FooterEmailSignup:AO,FooterGroup:qD,FooterLogo:HO,FooterMenu:FO,FooterSocial:TO,FooterText:PO,Form:EO,LegalLineBlock:VO,ReviewForm:sO,Reviews:rO,[F9]:iO,[H9]:hO,SubmitBox:NO,SubmitBuild:uO,Subscribe:_O,SubscribeBlogs:zO};var Kc1={AppointmentBooking:zD,BookingBox:yD,ContactRouting:CD,Events:ND,Footer:ZD,FooterDivider:DD,FooterEmailSignup:OD,FooterGroup:WD,FooterLogo:UD,FooterMenu:$D,FooterSocial:QD,FooterText:eO,Form:tO,LegalLineBlock:aO,ReviewForm:cO,Reviews:oO,[F9]:nO,[H9]:mO,SubmitBox:pO,SubmitBuild:dO,Subscribe:xO,SubscribeBlogs:yO},h2=et(IO,Kc1);import{jsx as O6,jsxs as DO}from"react/jsx-runtime";var mx=e=>e==="sentence"?"none":void 0,D6=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Qc=e=>typeof e=="string"&&e?e:void 0,$c1=["font","color","size","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function jh(e){let t={};for(let a of $c1)e[a]!==void 0&&(t[a]=e[a]);return t}function Yc1(e){let t=e.fonts,a=e.sizes,s=e.typography,c=Oz(e.compression),l=(o,i)=>({id:`heading-${o}`,kind:"heading",name:`Heading ${o}`,values:jh(i)}),r=(o,i={})=>({id:`body-${o}`,kind:"body",name:`Body ${o}`,values:jh(i)});return[l(1,{font:Qc(t.heading),size:D6(a.headingLarge),weight:D6(s.weight),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case),largestSize:D6(s.maxPx)}),l(2,{font:Qc(t.heading2),size:D6(a.headingMedium),weight:D6(s.weight2),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case2)}),l(3,{font:Qc(t.heading3),size:D6(a.headingSmall),weight:D6(s.weight3),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case3)}),r(1,{font:Qc(t.body),size:D6(a.body)}),r(2),r(3),r(4),r(5,{font:Qc(t.label),size:D6(a.label)})]}function RO(e){return Array.isArray(e)&&e.every(t=>t&&typeof t=="object"&&typeof t.id=="string"&&(t.kind==="heading"||t.kind==="body")&&typeof t.name=="string")?e.map(t=>({...t,values:jh(t.values??{})})):null}function BO(e){return RO(e)??[]}function Dm0(e,t){let a=Yc1(t),s=RO(e);return s?s.map(c=>({...c,values:jh({...Xc1(a,c.id),...c.values})})):a}var Xc1=(e,t)=>e.find(a=>a.id===t)?.values??{};function Om0(e,t){let a=u=>e.find(d=>d.id===u)?.values??{},s=a("heading-1"),c=a("heading-2"),l=a("heading-3"),r=a("body-1"),o=a("body-5"),i=t.fonts,n=t.sizes,h=t.typography,m=u=>u==="none"?"sentence":"authored";return{fonts:{...i,heading:s.font??i.heading,heading2:c.font??s.font??i.heading2,heading3:l.font??s.font??i.heading3,body:r.font??i.body,label:o.font??i.label},sizes:{...n,headingLarge:s.size??null,headingMedium:c.size??null,headingSmall:l.size??null,body:r.size??null,label:o.size??null},compression:t.compression,typography:{...h,case:m(s.letterCase),weight:s.weight??null,maxPx:s.largestSize??null,weight2:c.weight??null,weight3:l.weight??null,case2:m(c.letterCase),case3:m(l.letterCase)}}}function Jc1(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}function Qc1(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":/^#[0-9a-f]{6}$/i.test(e)?e:null}function el1(e){let t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function ZO(e){let t=[];for(let a of e){let s=a.values,c=`.${Jc1(a)}`,l=[],r=s.font!==void 0?zz.find(n=>n.key===s.font)?.cssVar:void 0;if(r&&l.push(`font-family: var(${r})`),s.size!==void 0){let n=s.largestSize!==void 0?Math.min(s.size,s.largestSize):s.size;l.push(`font-size: ${n}px`)}let o=s.color!==void 0?Qc1(s.color):null;o&&l.push(`color: ${o}`),s.italic===!0&&l.push("font-style: italic"),s.weight!==void 0&&l.push(`font-weight: ${s.weight}`);let i=[];s.lineHeight!==void 0&&i.push(`line-height: ${s.lineHeight}`),s.letterSpacing!==void 0&&i.push(`letter-spacing: ${s.letterSpacing}em`),a.kind==="body"&&l.push(...i),s.letterCase!==void 0&&l.push(`text-transform: ${s.letterCase==="upper"?"uppercase":s.letterCase==="lower"?"lowercase":"none"}`),s.paragraphSpacing&&l.push(`--sf-part-para: ${s.paragraphSpacing}px`),l.length&&t.push(`${c} { ${l.join("; ")} }`),a.kind==="heading"&&i.length&&t.push(`${c}, ${c}:is(h1, h2, h3, h4) { ${i.join("; ")} }`),s.paragraphSpacing&&t.push(...el1(c))}return t.join(`
|
|
154
|
-
`)}import{useEasel as tl1}from"efficient-easel/easel";var al1="color-mix(in oklab, var(--bg) 40%, #ffffff)",sl1="12vh";function cl1({style:e,frameClass:t,children:a}){let{appState:s}=tl1(d=>d),c=s.data.content,l=s.data.root;if(aC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:al1,minHeight:"100vh",paddingBottom:sl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?lC(l,c):null,i=o?{[cC]:o}:null,n=cy(l?.widthChoice),h=n?{[sy]:n}:null,m=r?null:MZ(c),u=m?{[yh]:m}:null;return O6("div",{className:`sf-themed-content${r?` ${nr}`:""}${t?` ${t}`:""}`,style:e,...u,...i,...h,children:O6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function OO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function px({w:e,children:t}){let{frameClass:a,style:s}=OO(e);return O6("div",{className:a,style:s,children:t})}function ux({propsTheme:e,propsFonts:t,propsCornerStyle:a,propsCornerRadiusPx:s,propsHeadingCompression:c,propsHeadingTypography:l,widthMode:r,fullWidth:o,pageWidth:i,pageBackground:n,chromeInheritsSiteBackground:h,suppressPreviewNav:m,footer:u,overlay:d,children:v}){let{theme:g,fonts:b,sizes:f,cornerRadiusPx:w,cardShadow:z,shadowColor:k,cardGap:S,hoverEffect:H,headingCompression:I,siteWidth:P,siteGutter:D,blockGap:E,headingTypography:F,heroBackgroundFollowsWidth:_,photographyGrayscale:Z,textStyles:G,themeFromDocument:V}=I3(),j=V?e:g,N=V?t:b,Q=V?void 0:f,W=V?s===void 0?Nz[Vz(a)]:_z(s):w,U=V?c:I,i1=ZO(BO(V?void 0:G)),y1=V?l:F,K=OO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Gz(y1),...K.style,...h?{}:ym(n)};return DO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...pm(W),...$z(pm(W)),...Zz(V?void 0:z,V?void 0:k,V?void 0:H),...Xz(V?void 0:P),...Jz(V?void 0:D),...qy(V?void 0:E),...ay(V?void 0:_)},"data-sf-headings":Dz(U),"data-sf-card-shadow":V?void 0:Iz(z),"data-sf-card-gap":V?void 0:Rz(S),"data-sf-card-hover":V?void 0:Bz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,DO(ZT,{grayscale:V?void 0:Z,children:[O6(cl1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var dx=e=>{e.target?.closest?.("a")&&e.preventDefault()};function GO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:ym(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(px,{w:a,children:s})})}import{jsx as vx}from"react/jsx-runtime";import{ListIcon as ll1,PaddingTopIcon as rl1}from"efficient-easel/icons";function ol1(){return{type:"custom",render:({value:e,onChange:t})=>vx(Bh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the site"),hint:p("Whether this page sits on the site's content column, or runs edge to edge."),onChange:a=>t(a)})}}var il1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],UO={pageBackground:nw(),topSpace:g1("Top space",vx(rl1,{}),il1,sC),widthChoice:ol1()},nl1="Record type",gx=new Map,qO=-1;function hl1(e){qO!==pp()&&(gx.clear(),qO=pp());let t=mp(),a=t.some(c=>c.key===e)?"":e,s=gx.get(a);return s||(s=g1(nl1,vx(ll1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),gx.set(a,s)),s}var WO=new WeakMap;function jO(e,t){if(!M2()||mp().length<2||Rr in e)return e;let a=hl1(Br(t)),s=WO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return WO.set(e,{row:a,fields:c}),c}function ml1(e,t){let a=wm(t),s=a?a.inner:t;if(om(s))return!1;if(s?.type==="slot")return!0;let c=Ay(s);return c==="always"?!1:c==="authored-copy"?Mz(e):!0}function KO(e){let t=wm(e),a=t?t.inner:e,s=om(a);return s?Xy(a)?0:s.level:null}function pl1(e,t,a){return a?t===0&&e===Em.Design||t===1&&e===uw.Content:!1}var ul1=new WeakMap,dl1=new WeakMap;function Kh(e,t="section"){let a=t==="page"?dl1:ul1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:KO(u),draws:ml1(m,u)||t==="page"&&KO(u)===null&&nm(m,u)})),l=t==="section"&&c.some(m=>nm(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let u=c[m].level;if(u===null)continue;let d=0;for(let v=m+1;v<c.length;v++){let g=c[v].level;if(g!==null&&g<=u)break;c[v].draws&&(d+=1)}d===0&&!pl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&bw(e),i=o&&!(Em.Design in e);if(!r.size&&!i)return a.set(e,e),e;let n={};for(let m of c)r.has(m.key)||(n[m.key]=m.field);let h=re(o?fw(n):n);return a.set(e,h),h}var $O={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as gl1}from"react/jsx-runtime";var YO={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},fx=new Set(Object.keys(Z1)),XO={name:"openSlotDisallow",applies:()=>!0,panel(e,t,a,s){let c=s.contentSectionKeys;if(e?.fields)for(let l of Object.values(e.fields)){let r=l;if(r.type!=="slot"||r.allow)continue;let o=t==="Flex"?c.filter(i=>!fx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var vl1=Array.from(new Set([...Ox.map(e=>e.type),...fx,...rl,"GalleryItem"])),JO={name:"cellWidth",applies:(e,t,a)=>vl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.cellWidthFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=Pi(r.appState,l.props?.id);if(i===void 0||bz(i))return o;let n={...o};for(let h of Object.keys(s()))delete n[h];return n}},draw(e){let t=e.render;e.render=a=>{let s=vz(a.gridSpan),c=t(a);return s==null?c:gl1("div",{className:"sf-grid-cell",[fz]:String(s),children:c})}}};import{jsx as QO}from"react/jsx-runtime";var eG={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=E9(c);return c.puck?.isEditing?QO(pH,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?QO(Wz,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as tG}from"react/jsx-runtime";var aG={name:"sectionCorners",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.sectionShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=yl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=E0(a)?`sf-section-corners ${jz}`:"sf-section-corners";return s?tG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},fl1=["CollectionCard"],sG={name:"cardCorners",applies:(e,t,a)=>fl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.cardShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=Kz(a.cardCorners,a.cardCornerSides),c=t(a);return s?tG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var cG={name:"emptyHeadings",applies:()=>!0,panel(e,t,a){let s=a.dropEmptyHeadings,c=e.resolveFields;e.resolveFields=c?(l,r)=>{let o=c(l,r);return o instanceof Promise?o.then(i=>s(i??r.fields)):s(o??r.fields)}:(l,r)=>s(r.fields)}};var lG={name:"hiddenNodes",applies:(e,t,a)=>typeof a?.render=="function",draw(e){let t=e.render;e.render=a=>a._hidden?null:t(a)}};import{jsx as rG,Fragment as bl1,jsxs as xl1}from"react/jsx-runtime";function zl1({anchor:e}){let t=fm(typeof e=="string"?e:"");return t?rG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var oG={name:"sectionAnchor",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.anchorFields;e.fields={...e.fields,...s()}},draw(e){e.defaultProps={...e.defaultProps,anchor:""};let t=e.render;e.render=a=>xl1(bl1,{children:[rG(zl1,{anchor:a.anchor}),t(a)]})}};import{jsx as Cl1}from"react/jsx-runtime";import{jsx as yl1}from"react/jsx-runtime";import{useEffect as wl1,useRef as iG}from"react";function nG({motion:e,editing:t,children:a}){let s=iG(null),c=iG(e);return wl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,py(l);return}return my(l)}},[e,t]),yl1("div",{ref:s,[hy]:e,children:a})}var hG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!uy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.sectionAnimationFields;e.fields={...e.fields,...s()}},draw(e){let t=e,a=t.render;t.render=s=>{let c=ny(s.sectionAnimation);return c?Cl1(nG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as kl1}from"react/jsx-runtime";var uG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!gy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.heightFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=l?.props??{},n=dy(i),h=vy(i)?fy(i):null;return o&&typeof o.then=="function"?o.then(m=>pG(mG(m,n),h)):pG(mG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=by(a);return s?kl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function mG(e,t){if(!e||!("sectionHeightMode"in e))return e;let a={...e};if(t.mode==="auto")return delete a.sectionHeightValue,delete a.sectionHeightUnit,a;t.mode==="screen"&&delete a.sectionHeightUnit;let s=a.sectionHeightValue;return s&&(a.sectionHeightValue={...s,unit:t.unit}),a}function pG(e,t){if(!e||!("sectionHeightModePhone"in e))return e;let a={...e};if(!t||t.mode==="auto")return delete a.sectionHeightValuePhone,delete a.sectionHeightUnitPhone,a;t.mode==="screen"&&delete a.sectionHeightUnitPhone;let s=a.sectionHeightValuePhone;return s&&(a.sectionHeightValuePhone={...s,unit:t.unit}),a}import{jsx as Ml1}from"react/jsx-runtime";var dG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!oy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=xm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=xm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Ml1("div",{className:l.className,style:l.style,children:r}):r}}},gG={name:"slideTheme",applies:e=>e==="HeroSlide",panel(e,t,a){let{sectionThemeFields:s,BLOCK_THEME_FOLLOW_LABEL:c}=a;e?.fields&&(e.fields={...e.fields,...s(f5,c)})}};var Sl1=new Set(["Reviews","Cards","FAQ","Prose","ProductHero","SpecTable","ProductGrid","ParagraphsA","KeyFeatures","Stats","StatsParagraph","Chart","Mockup","Testimonials","Logos","ContactRouting","ContactLocations","SubmitBuild","ReviewForm","Form","AppointmentBooking","OrderSummary","DeliveryOptions","PaymentBadges","CheckoutCTA","Collections","AlloyWheelsListing","CatalogFilterBar","FitmentFinder","GalleryB","BrandStrip","DocMasthead","DocBody","DocMetaCards","Masthead","FeaturedCover","LongRead","Series","Events","SectionHeader","Grid","Flex","Spacer","Divider","CustomHTML","Breadcrumb","CategoryBar","DocTabs","Hero","HeroSingle","IntroBleed","Manifesto","Timeline","TimelineTrack","Footprint","Banner","TitleWithButtons","Ticker","SubscribeBlogs","TyreSizes","TyreFitment","EuTyreLabel","SpecStrip","ProcessSteps","DetailRows","FitmentTable","CompatibleTyres","RelatedProducts","BundleOffer","Split","Gallery","Subscribe","Countdown"]),vG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Sl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ll1=new Set(["HeroSlide","Heading","Text","ImageBlock","ButtonBlock","HeroGroup","GalleryItem","Footer","FooterLogo","FooterMenu","FooterGroup","FooterText","PostCard","LogoBlock","CollectionCard","Eyebrow","BookingBox","SubmitBox","FooterSocial","MenuBlock","SocialLogosBlock","EmailFormBlock","SearchBlock","CartBlock"]),fG={name:"blockGroups",applies:e=>Ll1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Al1=["Form","Stats"];function bx(e,t){let a=new Set(e),s=Bx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Al1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Hl1=[YO,XO,LL,aG,sG,AL,JO,wT,CT,kT,MT,uG,oG,dG,hG,gG,vG,fG,cG,eG,lG,$O];function bG(e,t,a){let s=t;for(let c of Hl1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var xG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:ew,cellWidthFields:lw,widthField:z5,heightFields:rw,anchorFields:ow,sectionThemeFields:X9,sectionAnimationFields:Qy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:Kh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:ky};function zG(e){let t={...bx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:xG};for(let[l,r]of Object.entries(e.components))bG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>Kh(jO(l,r?.props),"page");return a.resolveFields=s?(l,r)=>{let o=s(l,r);return o instanceof Promise?o.then(i=>c(i??r.fields,l)):c(o??r.fields,l)}:(l,r)=>c(r.fields,l),t}import{Fragment as Xl1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Bl1="Newsletter (built in)";var Id0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Zl1=sm(()=>import("./PreviewFooter-DZH6K7FC.js")),Dl1=sm(()=>import("./render-client-7WYSJEJX.js")),Ol1={padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"};function Gl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Qk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(ux,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Ol1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let g=v?e:m,b=v?t:u,f=n.content??[],w=n.root,z=Sa(f)&&hr(w,f);return ga("div",{className:"sf-theme-accent",style:{...ul(b),...vl(g),...fl(g),...bl(g)},onClickCapture:o,children:[ga("div",{style:{position:"relative"},children:[n0("div",{className:z?nr:void 0,style:{...za(g),...zl(v?void 0:d),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:n0(Dl1,{data:n})}),n0("button",{type:"button",onClick:()=>h(),title:p("Click the page to go back"),"aria-label":p("Go back to the page"),style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),n0("div",{className:"sf-theme-surfaces",style:{...za(g),...xl(g)},children:n0(px,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Fm,ql1={formSlug:E5(void 0,Bl1),_gLeft:x("Left panel"),metaLabel:q("Meta label",F0.metaLabel),issueLabel:q("Issue label",F0.issueLabel),issueNumber:q("Issue number",F0.issueNumber),kicker:q("Eyebrow",F0.kicker),heading:E1("Heading",F0.heading),deck:E1("Deck",F0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:q("Label"),value:q("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:x("Right panel \xB7 form"),formLabel:q("Section label",F0.formLabel),formHeading:q("Heading",F0.formHeading),formIntro:E1("Intro",F0.formIntro),firstNameLabel:q("First-name label",F0.firstNameLabel),firstNamePlaceholder:q("First-name placeholder",F0.firstNamePlaceholder),emailLabel:q("Email label",F0.emailLabel),emailPlaceholder:q("Email placeholder",F0.emailPlaceholder),_gChoices:x("Right panel \xB7 choices"),interestsLabel:q("Interests label",F0.interestsLabel),interests:T2("Interest chips",n0(c4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:q("Frequency label",F0.frequencyLabel),frequencies:T2("Frequency options",n0(Vl1,{}),"Option label","verbatim"),_gActions:x("Right panel \xB7 actions"),submitText:q("Submit button",F0.submitText),finePrint:q("Fine print",F0.finePrint),dismissText:q("Dismiss link",F0.dismissText),emailInvalidText:q("Invalid-email error",F0.emailInvalidText),submitErrorText:q("Submit-failed error",F0.submitErrorText),_gSuccess:x("Success state"),successHeading:q("Heading",F0.successHeading),successBody:E1("Message",F0.successBody),keepBrowsingText:q("Dismiss button",F0.keepBrowsingText),...X9(f5,Hl),...Gl(),_gTextStyle:x("Text style"),...Object.fromEntries(Nl.map(e=>[Vy[e],g1(km[e],Ke(km[e]),[{label:"Popup's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gBehaviour:x("Behavior"),autoOpen:l1("Show by itself",F0.autoOpen,n0(El1,{})),trigger:v1("Trigger",n0(Rl1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(xx,{}),Lm.min,Lm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Il1,{}),Am.min,Am.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(Nl1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(xx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(xx,{}),Hm.min,Hm.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(_l1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Tl1,{}))},Wl1=Ql(ql1,"SubscribePopup");async function Ul1(){return(await By(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function jl1(e){let t=Tm(e),a=new Set;t.autoOpen||["trigger","autoOpenDelaySec","scrollPercent","showOn","showOnPages","hideAfter","hideDays"].forEach(c=>a.add(c)),t.trigger==="scroll"&&a.add("autoOpenDelaySec"),t.trigger!=="scroll"&&a.add("scrollPercent"),t.showOn!=="chosen"&&a.add("showOnPages"),t.hideAfter!=="days"&&a.add("hideDays");let s={};for(let[c,l]of Object.entries(Wl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await Ul1().catch(()=>[])}:l);return re(s)}var p5=Vl,Kl1={_gHeader:x("Header"),kickerBadge:q("Eyebrow badge",p5.kickerBadge),kickerText:q("Eyebrow text",p5.kickerText),titleLead:q("Heading",p5.titleLead),titleAccent:q("Heading accent",p5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",p5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",p5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",p5.subtitleMany,"{count} becomes the number of sets"),_gStatus:x("Status rail"),leadTimeValue:q("Lead time",p5.leadTimeValue),shipsToFallback:q("Ships to \xB7 fallback",p5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:x("Promise row"),promises:T2("Trust markers",n0(yG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},$h={root:{fields:{...UO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Sm)return jl1(e.props);if(e?.props?.kind===Cm)return Kl1;let a=t;return M2()?{[gp]:g1("Product type",n0(Fl1,{}),we,"alloy-wheel"),...a,_gHeroBullets:x("Product hero"),_nHeroBullets:b5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[gu]:T2("Trust bullets",n0(yG,{}),bL(Ja.bullets[0]),"verbatim")}:a},render:e=>{let{children:t,puck:a,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:r,theme:o,fonts:i,scales:n,kind:h,previewProduct:m}=e,u=Zr(typeof h=="string"?h:"",e);if(h===Sm){let f=Tm(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the site popup \u2014 edit it in the Settings panel \u2192"}):null,n0(bS,{inline:!0,content:f})]})}if(h===Cm){let f=Ey(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the cart drawer \u2014 edit its copy in the Settings panel \u2192"}):null,n0(wr,{children:n0(Cr,{preview:!0,children:n0($a,{content:f})})})]})}let d=!!a?.isEditing,v=n0(gL,{type:du(e),children:n0(nL,{kind:u,children:n0(yL,{content:xL(e),children:n0(rL,{slug:d?m:null,children:n0(XM,{children:t})})})})}),g=h===Ny&&!Ly(r);return d?h===G9?n0(Gl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:dx,children:v}):n0(ux,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:dx,footer:n0(Zl1,{}),overlay:ga(Xl1,{children:[n0(Jp,{}),n0(iu,{})]}),children:v}):n0(GO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Rx(),components:{Heading:B1.Heading,Text:B1.Text,Eyebrow:B1.Eyebrow,ImageBlock:B1.ImageBlock,LogoBlock:B1.LogoBlock,ButtonBlock:B1.ButtonBlock,Spacer:B1.Spacer,Divider:B1.Divider,Grid:B1.Grid,Flex:B1.Flex,Breadcrumb:B1.Breadcrumb,Masthead:B1.Masthead,CategoryBar:B1.CategoryBar,FeaturedCover:B1.FeaturedCover,LongRead:B1.LongRead,Series:B1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:B1.Banner,ParagraphsA:B1.ParagraphsA,StatsParagraph:B1.StatsParagraph,Timeline:B1.Timeline,Footprint:B1.Footprint,TimelineTrack:B1.TimelineTrack,TitleWithButtons:B1.TitleWithButtons,Stats:B1.Stats,Integrations:B1.Integrations,Mockup:B1.Mockup,Chart:B1.Chart,KeyFeatures:B1.KeyFeatures,Testimonials:B1.Testimonials,Reviews:h2.Reviews,Prose:B1.Prose,Cards:B1.Cards,Logos:B1.Logos,Ticker:B1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:B1.ContactLocations,HeroSingle:B1.HeroSingle,Hero:B1.Hero,HeroSlide:B1.HeroSlide,HeroGroup:B1.HeroGroup,Collections:G0.Collections,CollectionCard:G0.CollectionCard,Events:h2.Events,PostCard:B1.PostCard,DocMetaCards:B1.DocMetaCards,DocTabs:B1.DocTabs,DocMasthead:B1.DocMasthead,DocBody:B1.DocBody,FAQ:B1.FAQ,Gallery:G0.Gallery,GalleryB:G0.GalleryB,BrandStrip:G0.BrandStrip,SpecStrip:B1.SpecStrip,GalleryItem:G0.GalleryItem,Manifesto:B1.Manifesto,SectionHeader:B1.SectionHeader,IntroBleed:B1.IntroBleed,Split:B1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:G0.CatalogFilterBar,AlloyWheelsListing:G0.AlloyWheelsListing,ProductGrid:G0.ProductGrid,ProductHero:G0.ProductHero,SpecTable:G0.SpecTable,ProcessSteps:B1.ProcessSteps,DetailRows:G0.DetailRows,FitmentTable:G0.FitmentTable,RelatedProducts:G0.RelatedProducts,BundleOffer:G0.BundleOffer,CompatibleTyres:G0.CompatibleTyres,TyreSizes:G0.TyreSizes,TyreFitment:G0.TyreFitment,EuTyreLabel:G0.EuTyreLabel,FitmentFinder:G0.FitmentFinder,OrderSummary:B1.OrderSummary,DeliveryOptions:G0.DeliveryOptions,PaymentBadges:B1.PaymentBadges,CheckoutCTA:G0.CheckoutCTA,ProductRef:G0.ProductRef,CustomHTML:B1.CustomHTML,Header:G0.Header,Footer:h2.Footer,FooterLogo:h2.FooterLogo,FooterMenu:h2.FooterMenu,FooterDivider:h2.FooterDivider,FooterGroup:h2.FooterGroup,FooterText:h2.FooterText,FooterEmailSignup:h2.FooterEmailSignup,FooterSocial:h2.FooterSocial,LegalLineBlock:h2.LegalLineBlock,SearchBlock:G0.SearchBlock,CartBlock:G0.CartBlock,CountrySwitchBlock:G0.CountrySwitchBlock,[H9]:h2.SiteHeader,[F9]:h2.SiteFooter}},$l1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries($l1)){let a=$h.components;a[e]={...a[t]}}{let e=$h.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Pl1,{}),[{label:zm.column,value:"column"},{label:zm.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>n0(Ra,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var Yl1=zG($h),Rd0=Yl1.sectionGroupAllow,rb=$h;export{ly1 as a,ry1 as b,oy1 as c,iy1 as d,ny1 as e,bx as f,bG as g,xG as h,uj as i,up1 as j,Ho1 as k,HZ as l,en1 as m,tS as n,tn1 as o,an1 as p,$m1 as q,Dm0 as r,Om0 as s,uq1 as t,xr1 as u,zr1 as v,yr1 as w,wr1 as x,Ir1 as y,Rr1 as z,qU1 as A,ei1 as B,Bn1 as C,ne0 as D,Qp as E,xR1 as F,Hp as G,bM as H,oi1 as I,ii1 as J,ni1 as K,ui1 as L,wM as M,qo1 as N,R5 as O,zZ as P,eb as Q,Ch as R,kt as S,i3 as T,ej as U,CZ as V,Mo1 as W,Kn as X,tf as Y,f81 as Z,fQ1 as _,UR as $,kc as aa,rb as ba};
|
|
153
|
+
`):[])a(m).then(()=>h(m),()=>h(m));return()=>{n=!1}},[o]);let i=t===void 0||s.has(t)||l===void 0;return IZ(()=>{i&&l!==t&&r(t)},[i,l,t]),i?t:l}import{Fragment as vt1,jsx as C3,jsxs as J3}from"react/jsx-runtime";function ub({selection:e,spec:t,vehicle:a,wheel:s}){let{manualMode:c,setManualMode:l}=e,r=Fn(e.rows,e.preOrder),o=a.appliedName!=="",i=(s?.variants??[]).some(wg),n=JI({wheel:s,applied:o,fit:a.fit,resolving:a.resolving});return C3(Nc,{vehicle:a,escape:C3("button",{type:"button",className:"cursor-pointer text-right text-accent hover:underline",onClick:()=>l(h=>!h),children:c?"\u2190 Find by vehicle":"Select by specs instead \u2192"}),override:c?J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"You are choosing by the numbers."}),J3("span",{className:"mt-1.5 block",children:[t?`${i?"The set is":"All four wheels are"} ${t}. We have not checked that against any car \u2014 make sure it matches yours.`:r?"Answer the bolt pattern and the offset below. We will not check them against a car.":"Pick a finish and a size below. The bolt pattern and the offset come next, and we will not check them against a car."," ",C3(L1,{href:"/fitment",className:"text-accent hover:underline",children:"Talk to an engineer \u2192"})]})]}):null,verdict:C3(gt1,{verdict:n,car:a.appliedName}),showChangeCar:n.state!=="fits"&&n.state!=="checking",cascadeErrorNote:J3(vt1,{children:["Vehicle data is unavailable right now. Pick your wheel by its specs instead, or"," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"ask us to check it \u2192"})]}),askNote:"Asked once. Every wheel after this one is already filled in."})}function gt1({verdict:e,car:t}){switch(e.state){case"checking":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:"Checking fitment\u2026"})," ",J3("span",{children:["Reading the factory wheel specs for your ",t,"."]})]});case"fits":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))})]});case"fits-with-warning":return J3(h5,{tone:"good",children:[J3("strong",{className:"font-semibold text-accent",children:["\u2713 Fits your ",t]}),C3("ul",{className:"mt-2 flex flex-wrap gap-1.5",children:e.checks.map(a=>C3("li",{className:["px-2 py-1 text-[11px] uppercase tracking-[0.14em] text-fg-dim",a.value!==null?"border border-line":"border border-dashed border-line"].join(" "),children:a.value??`${a.name} not published, not checked`},a.key))}),J3("span",{className:"mt-2 block border-l-2 border-alert pl-2.5",children:[C3("strong",{className:"font-semibold text-fg",children:"Check the offset. "}),p9(e.warning)," An offset this far out is what an aftermarket wheel is for, but it changes how far the wheel sits from the guard."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us if you are unsure \u2192"})]})]});case"no-fit":return J3(h5,{tone:"bad",children:[J3("strong",{className:"font-semibold",style:{color:"var(--alert)"},children:["\u2717 Does not fit your ",t]}),C3("span",{className:"mt-1.5 block",children:p9(e.failure)})]});case"unknown":return J3(h5,{tone:"quiet",children:[C3("strong",{className:"font-semibold text-fg",children:e.missing==="vehicle"?`We cannot check this wheel against your ${t}`:"We cannot check this wheel"}),J3("span",{className:"mt-1.5 block",children:[e.missing==="vehicle"?`We have no factory wheel data for the ${t}, and we will not guess at a fit.`:"We do not hold a bolt pattern for this wheel, and we will not guess at a fit."," ",C3(L1,{href:"/contact",className:"text-accent hover:underline",children:"Ask us before you order \u2192"})]})]});default:return null}}import{useState as WZ}from"react";import{useCallback as GZ,useRef as ft1,useState as bt1}from"react";function OZ(e,t,a){return{productSlug:e,email:a.trim(),size:t?He(t):""}}function qZ(){let[e,t]=bt1("idle"),a=ft1(!1),s=GZ(()=>{a.current=!1,t("idle")},[]),c=GZ(async({productSlug:l,size:r,email:o,dryRun:i=!1})=>{if(!a.current){if(!be(o)){t("invalid");return}a.current=!0,t("sending");try{i||await v0.createPreOrderIntent(OZ(l,r,o))}catch{a.current=!1,t("error");return}a.current=!1,t("sent")}},[]);return{status:e,submit:c,reset:s}}import{jsx as na,jsxs as ha}from"react/jsx-runtime";function db({wheel:e,editing:t=!1}){let a=e.sizePairs??[],[s,c]=WZ(a.length>0?0:-1),[l,r]=WZ(""),{status:o,submit:i,reset:n}=qZ(),h=s>=0?a[s]??null:null;function m(){i({productSlug:e.slug,size:h,email:l,dryRun:t})}return ha("div",{className:"flex flex-col gap-5 border-t border-line pt-[18px]",children:[ha("div",{className:"border-2 border-accent/40 px-4 py-3.5 font-mono text-[12px] leading-relaxed tracking-[0.08em] text-fg",style:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:[na("span",{className:"font-bold uppercase tracking-[0.2em] text-accent",children:"Pre-order"})," ","\u2014 this design isn't available to add to cart right now. Leave your email to pre-order it. No payment is taken now."]}),a.length>0&&ha("div",{children:[ha("div",{className:"mb-3.5 font-mono text-[13px] font-semibold uppercase tracking-[0.22em] text-fg",children:["Size \xB7"," ",na("span",{className:"text-accent",children:h?He(h):"Select a size"})]}),na("div",{className:"flex flex-wrap gap-1.5",children:a.map((u,d)=>{let v=d===s;return ha("button",{type:"button",onClick:()=>{c(d),o==="sent"&&n()},className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",v?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:v?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[v&&na("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),na("span",{className:"block text-[14px] tracking-[0.18em]",children:He(u)})]},He(u))})})]}),o==="sent"?ha("p",{className:"font-mono text-[12px] uppercase tracking-[0.18em] text-accent",children:["Thanks \u2014 we've registered your pre-order for the ",e.name,"."]}):na(Vc,{email:l,onEmailChange:r,status:o,onResetVerdict:n,onSubmit:m,inputAriaLabel:"Email to pre-order this design",submitLabel:"Pre-order",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn bg-btn px-6 font-mono text-[12px] font-bold uppercase tracking-[0.22em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-not-allowed disabled:opacity-50",errorMessage:"Couldn't register that \u2014 please try again."})]})}import{useState as xt1}from"react";import{Fragment as zt1,jsx as Hh}from"react/jsx-runtime";function Fh({src:e,alt:t,fallback:a,fill:s=!1,width:c,height:l,sizes:r,className:o,style:i,priority:n,draggable:h,imageKey:m,imageWrapperClassName:u,onImageClick:d,imageButtonClassName:v,imageButtonLabel:g}){let[b,f]=xt1(null),w=e||"";if(!(w!==""&&b!==w))return Hh(zt1,{children:a});let k=Hh(_3,{src:w,alt:t,...s?{fill:!0}:{width:c??1e3,height:l??1e3},sizes:r,className:o,style:i,priority:n,draggable:h,onError:()=>f(w)},m??w),S=u?Hh("div",{className:u,children:k}):k;return d?Hh("button",{type:"button",onClick:d,"aria-label":g,className:v,children:S}):S}function UZ(e){let t=e.angles??(e.src?[e.src]:[]),a=[],s=[];for(let c of t)(c.split("/").pop()??"").includes("20-20")?a.push(c):s.push(c);return[...s,...a]}var KZ="Image for reference only. Actual product may vary.",jZ=e=>String(Number(e));function $Z(e,t,a,s){let c=e.renderFits;if(!c||!t||t.diameter==null||t.width==null)return!1;let l=s&&a!=null?c.lug?.[String(a)]:c.angles;if(!l)return!1;let r=jZ(t.diameter);if(!(l.sizes.length===0||l.sizes.includes(`${r}x${jZ(t.width)}`)||l.sizes.includes(r)))return!0;let i=l.lugs??[];return!s&&a!=null&&i.length>0&&!i.includes(a)}import{Fragment as YZ,jsx as D4,jsxs as wt1}from"react/jsx-runtime";function Th(e,t){return e.captions[t]?.trim()||`Photo ${t+1}`}function Ph({text:e}){return e==="FusionForge\xAE"?wt1(YZ,{children:["FusionForge",D4(i6,{})]}):D4(YZ,{children:e})}function XZ(e,t,a){if(e.kind==="tyre"){let h=e.source,m=t.shown.size??h.sizes[0]??"",u=h.variants.find(g=>g.size===m),d=u?.specs.tireType??h.variants[0]?.specs.tireType??null,v=[u?.image,h.coverImage].filter(g=>!!g);return{heading:cn(h.brand,h.name),photos:v.slice(0,1),tint:void 0,stageImage:()=>D4(p6,{image:u?.image??h.coverImage,size:m,type:d,sizes:Ah,priority:!0,className:"h-full w-full"}),thumbImage:()=>null,captions:[],thumbFallbackCells:0,galleryHint:"",referenceNote:"",metaValue:m,specCaption:u?[u.specs.loadIndex,u.specs.speedRating].filter(Boolean).join(""):"",originCaption:h.brand,unitLabel:"per tyre",vehicle:D4(pb,{slug:h.slug,variants:h.variants,vehicle:t.vehicle,manualMode:t.manualMode,setManualMode:t.setManualMode}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!1,preOrder:null}}let s=e.source,c=AN(s,t.shown.finish),l=D7(s,t.part),r=Vn(t),o=Hg(c,r),i=o?[...o]:UZ(c),n=i.length>0?i:s.coverImage?[s.coverImage]:[];return{heading:e.name,photos:n,tint:c.color,stageImage:({photo:h,alt:m,label:u,onZoom:d,fit:v})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:Ah,className:v==="cover"?"object-cover":"object-contain",priority:!0,onImageClick:d,imageButtonClassName:"relative block h-[88%] w-[88%] cursor-zoom-in",imageButtonLabel:u,fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[70%] w-[70%]"})}),thumbImage:({photo:h,alt:m})=>D4(Fh,{src:h,alt:m,fill:!0,sizes:"(max-width: 720px) 20vw, (max-width: 1100px) 10vw, 120px",className:"object-contain",imageWrapperClassName:"relative h-[80%] w-[80%]",fallback:D4(C8,{spokes:s.spokes,mesh:s.mesh,className:"block h-[55%] w-[55%]"})}),captions:n.map(h=>c.captions?.[h]),thumbFallbackCells:4,galleryHint:yt1(n,c,r,t.manualMode),referenceNote:$Z(c,l,r,o!=null)?KZ:"",metaValue:c.name,specCaption:l?js(l):"",originCaption:s.process==="FusionForge\xAE"?"FusionForge\xAE \xB7 Hybrid":`${s.process} \xB7 1-piece`,unitLabel:"per wheel",vehicle:D4(ub,{selection:t,spec:l?js(l):"",vehicle:t.vehicle,wheel:s}),vehicleMemory:t.manualMode?null:D4(hb,{vehicle:t.vehicle}),vehicleAnswersSpecs:!0,preOrder:D4(db,{wheel:s,editing:a})}}function yt1(e,t,a,s){return e.length>=2||a!=null||!Object.values(t.lugRenderings??{}).some(l=>Array.isArray(l)&&l.filter(Boolean).length>=2)?"":s?"Pick a bolt pattern to see every angle":"Pick your vehicle to see every angle"}import{createContext as Ct1,useContext as kt1,useEffect as Mt1,useState as JZ}from"react";import{jsx as Lt1}from"react/jsx-runtime";var QZ="storefront-wishlist";function St1(e){let t=JSON.parse(e);return Array.isArray(t)?t.filter(a=>typeof a=="string"):[]}var eD=Ct1(null);function ne0({children:e}){let[t,a]=JZ([]),[s,c]=JZ(!1);Mt1(()=>{let o=t3.getItem(QZ);try{o&&a(St1(o))}catch{}c(!0)},[]);function l(o){let i=t.includes(o)?t.filter(n=>n!==o):[...t,o];a(i),t3.setItem(QZ,JSON.stringify(i))}let r={slugs:t,ready:s,has:o=>t.includes(o),toggle:l,count:t.length};return Lt1(eD.Provider,{value:r,children:e})}function tD(){let e=kt1(eD);if(!e)throw new Error("useWishlist must be used within a WishlistProvider");return e}var aD="data-option-row";import{Fragment as m5,jsx as w1,jsxs as K1}from"react/jsx-runtime";var Ht1=4e3;function Ft1(e){return e?[e.year,e.make,e.model,e.modification].join("-"):""}var Tt1=.72;function Pt1(e){let t=e.trim().split(/\s+/).filter(Boolean);if(t.length===0)return;let a=t.map((s,c)=>s.length+(t.length>1&&c===t.length-1?1:0));return`calc(100cqi / ${(Math.max(...a)*Tt1).toFixed(2)})`}function ma({product:e,selection:t,onLightbox:a,editing:s=!1,pricePlacement:c="top",showVehicleFitment:l=!0,heroLayout:r=e8,imageRatio:o=t8,textAlign:i=g9,showSpecTable:n=!0,showPriceQuote:h=!0,galleryMode:m=a8,imageFit:u=s8}){let d=Jt(r),v=th(i),g=ah(o),b=sh(m),f=rB(ch(u),xN(e)),w=d==="imageRight"?`${100-g}fr ${g}fr`:`${g}fr ${100-g}fr`,{picked:z,pick:k,qty:S,setQty:H,choice:I,setChoice:P,angleIdx:D,setAngleIdx:E,showValidation:F,setShowValidation:_,manualMode:Z,vehicle:G,rows:V,facts:j,part:N,outOfStock:Q,offer:W,preOrder:U,canAddToCart:i1,currency:y1,price:K,set:c1,msrpLabel:b1}=t,$=XZ(e,t,s),{bullets:u1}=wL(),x1=mN(e),X0=dN(e),o0=l?$.vehicle:null,I1=l?$.vehicleMemory:null,[c0,l0]=cD(!1);gb(()=>{let e1=()=>{l0(document.documentElement.getAttribute("data-theme")==="light")};e1();let z1=new MutationObserver(e1);return z1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>z1.disconnect()},[]);let{add:X1,open:X2,warmCatalog:Q1}=i4();gb(()=>{s||Q1(e.kind)},[s,e.kind,Q1]);let d2=V.filter(e1=>!U||e1.values.length>0),b0=d2.filter(e1=>e1.role==="resolves"),d1=d2.filter(e1=>e1.role==="describes"&&!zN(X0,e1.key)),$1=d1.findIndex(e1=>e1.chosen===null),u0=(!o0||!$.vehicleAnswersSpecs||t.fitmentSet)&&Fn(V,U)?$1===-1?d1:d1.slice(0,$1+1):[],P0=[...b0,...u0],J0=K1("div",{className:"flex items-baseline gap-5 border-t border-line pt-[18px]",children:[b1&&w1("div",{className:"font-mono text-[length:var(--size-label,15px)] text-fg-dim line-through",children:b1}),w1("div",{className:"font-heading2 text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))] font-bold leading-none tracking-[-0.01em] text-fg",children:x1?IC(K,y1):fe(K,y1)}),K.priced&&w1("div",{className:"font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:$.unitLabel}),K.setTotal!=null&&K1("div",{className:"ml-auto border border-accent px-3 py-2 font-mono text-[length:var(--size-label,13px)] font-bold uppercase tracking-[0.18em] text-accent",style:{background:"color-mix(in oklab, var(--accent) 14%, transparent)"},children:[W.quantityLabel,": ",B2(c1,y1)]})]}),q0=At1(null);return gb(()=>{s||q0.current===e.slug||(q0.current=e.slug,RC({itemId:N?`${e.slug}|${N.id}`:e.slug,itemName:e.name,variant:$.metaValue,pricePerSet:K.setTotal??K.fromSetTotal??0,currency:y1}))},[s,e.slug,e.name,$.metaValue,N,K,y1]),K1(m5,{children:[w1("nav",{className:"border-b border-line px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] pt-4 pb-4 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg-dim max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))]",style:c0?void 0:{background:"var(--section-bg)"},children:e.crumbs.map((e1,z1)=>K1("span",{children:[z1>0&&K1(m5,{children:[w1("span",{className:"mx-3 text-accent",children:"/"}),w1("wbr",{})]}),e1.href?w1(L1,{href:e1.href,className:"hover:text-fg",children:w1(Ph,{text:e1.label})}):w1("span",{className:"text-fg",children:w1(Ph,{text:e1.label})})]},`${e1.label}-${z1}`))}),K1("section",{"data-hero-layout":d,"data-hero-align":v,className:["grid gap-10 px-[max(var(--sf-site-gutter,40px),calc((100%_-_var(--sf-page-cap,100%))/2_+_var(--sf-site-gutter,40px)))] py-14 max-[720px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[720px]:py-8",d==="stacked"?"grid-cols-1":"[grid-template-columns:var(--hero-cols)] max-[1100px]:[grid-template-columns:minmax(0,1fr)]"].join(" "),style:{...c0?{}:{background:"var(--section-bg)"},...d==="stacked"?{}:{"--hero-cols":w}},children:[K1("div",{"data-hero-gallery":b,"data-hero-fit":f,className:b==="tiled"?"flex items-start gap-3 max-[720px]:gap-2":void 0,style:d==="imageRight"?{order:2}:void 0,children:[K1("div",{className:b==="tiled"?"min-w-0 flex-1":void 0,children:[w1(Nt1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,onLightbox:a,fit:f}),$.referenceNote&&w1("p",{"data-hero-reference-note":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.referenceNote}),$.galleryHint&&w1("p",{"data-hero-gallery-hint":!0,className:"mt-2 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.18em] text-fg-dim",children:$.galleryHint})]}),b!=="main"&&w1(_t1,{name:e.name,view:$,angleIdx:D,onSelect:E,isLight:c0,tiled:b==="tiled"})]}),K1("div",{className:["flex flex-col gap-7",v==="center"?"items-center text-center":""].filter(Boolean).join(" "),style:d==="imageRight"?{order:1}:void 0,children:[K1("div",{className:"w-full [container-type:inline-size]",children:[K1("div",{className:"mb-2.5 flex items-center gap-2.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-accent",children:[w1("span",{children:w1(Ph,{text:e.eyebrow})}),e.badge&&K1(m5,{children:[w1("span",{children:"\xB7"}),w1("span",{children:e.badge})]})]}),w1("h1",{className:"font-heading2 text-[length:min(min(var(--size-headingMedium,clamp(48px,5.5vw,84px)),var(--hero-name-fit,9999px)),var(--sf-heading-max,9999px))] [font-weight:var(--sf-heading-weight,500)] [text-transform:var(--sf-heading-case,uppercase)] leading-[0.92] tracking-[-0.035em]",style:{"--hero-name-fit":Pt1($.heading)},children:(()=>{let e1=$.heading.lastIndexOf(" ");if(e1===-1)return $.heading;let z1=$.heading.slice(0,e1),t0=$.heading.slice(e1+1);return K1(m5,{children:[z1," ",K1("em",{className:"font-normal italic text-accent",children:[t0,"."]})]})})()})]}),c!=="belowSpecs"&&h&&J0,I1,b0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),U&&$.preOrder?K1(m5,{children:[c==="belowSpecs"&&h&&J0,$.preOrder]}):K1(m5,{children:[o0,u0.map(e1=>w1(sD,{row:e1,onPick:k},e1.key)),n&&w1(Et1,{facts:j}),(W.packs.length>0||W.extra||W.spareCounts.length>0)&&K1("div",{className:"border-b border-line pb-[26px]",children:[W.packs.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:"How many"}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.packs.map(e1=>K1("button",{type:"button",onClick:()=>P(z1=>({...z1,unit:e1.value})),"aria-pressed":I.unit===e1.value,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",I.unit===e1.value?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:I.unit===e1.value?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[I.unit===e1.value&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value))})]}),W.extra&&K1("label",{className:`${W.packs.length>0?"mt-3.5 ":""}flex cursor-pointer items-center gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-fg`,children:[w1("input",{type:"checkbox",checked:I.spares>0,onChange:e1=>P(z1=>({...z1,spares:e1.target.checked?vr:0})),className:"h-4 w-4 cursor-pointer accent-[var(--accent)]"}),W.extra.label]}),W.spareCounts.length>0&&K1(m5,{children:[w1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:a9.howMany}),w1("div",{className:"flex flex-col gap-1.5 sm:flex-row sm:flex-wrap",children:W.spareCounts.map(e1=>{let z1=e1.value-i7,t0=I.spares===z1;return K1("button",{type:"button",onClick:()=>P(s2=>({...s2,spares:z1})),"aria-pressed":t0,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",t0?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:t0?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[t0&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),K1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:[e1.value," \xB7 ",e1.label]})]},e1.value)})})]}),W.spareSide&&K1(m5,{children:[w1("div",{className:"mb-3.5 mt-[26px] font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:W.spareSide.label}),w1("div",{className:"flex flex-wrap gap-1.5",children:W.spareSide.options.map(e1=>{let z1=I.spareSide===e1.value;return K1("button",{type:"button",onClick:()=>P(t0=>({...t0,spareSide:e1.value})),"aria-pressed":z1,className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",z1?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:z1?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[z1&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:e1.label})]},e1.value)})})]})]}),c==="belowSpecs"&&h&&J0,K1("div",{className:PZ,children:[!(x1&&!K.priced)&&w1(Ka,{value:S,onChange:H,size:"large"}),x1&&!K.priced?w1(L1,{href:"/contact",className:"flex-1 cursor-pointer bg-btn px-6 py-4 text-center font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg",children:br}):K.priced?Q?w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:"Out of stock"}):K1("button",{type:"button",[ue]:"",onClick:()=>{if(!i1){_(!0),window.setTimeout(()=>_(!1),Ht1);return}if(_(!1),s)return;let e1=PN(e,N,z,{choice:I,qty:S},{fitmentLabel:Z?$.specCaption:G.appliedName?`For ${G.appliedName}`:"",fitmentKey:Z?`manual|${$.specCaption}`:`vehicle|${Ft1(G.applied?.vehicle)}`});e1&&(X1(e1),X2())},"aria-disabled":!i1,className:["flex-1 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] transition-colors",i1?"cursor-pointer bg-btn text-btn-ink hover:bg-fg hover:text-bg":"cursor-pointer border-2 border-dashed border-accent/50 text-accent/80 hover:border-accent hover:text-accent"].join(" "),style:i1?void 0:{background:"color-mix(in oklab, var(--accent) 6%, transparent)"},children:["Add to Cart",K.setTotal!=null?` \xB7 ${B2(c1,y1)}`:""]}):w1("button",{type:"button",disabled:!0,"aria-disabled":!0,className:"flex-1 cursor-not-allowed border-2 border-dashed border-fg-dim/20 px-6 py-4 font-mono text-[length:var(--size-label,14px)] font-bold uppercase tracking-[0.32em] text-fg-dim/40",children:n7}),w1(It1,{slug:e.slug,name:e.name})]}),Q&&N&&w1(Rt1,{partNumbers:N.components.map(e1=>e1.partNumber),productSlug:e.slug},N.id),F&&(()=>{let e1=P0.filter(t0=>t0.chosen===null).map(t0=>t0.prompt.replace(/^Select\s+/i,""));if(o0&&$.vehicleAnswersSpecs&&!t.fitmentSet&&e1.push("vehicle fitment"),e1.length===0)return null;let z1=e1.length===1?e1[0]:e1.length===2?`${e1[0]} and ${e1[1]}`:`${e1.slice(0,-1).join(", ")}, and ${e1.at(-1)}`;return K1("p",{role:"alert",className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em]",style:{color:"var(--alert)"},children:["Please select ",z1," first."]})})()]}),u1.length>0&&w1("ul",{className:"flex flex-wrap items-center gap-x-6 gap-y-2 border-t border-line pt-5 font-mono text-[length:var(--size-label,13px)] tracking-[0.05em] text-fg",children:u1.map((e1,z1)=>K1("li",{children:[w1("strong",{className:"font-bold text-accent",children:e1.label}),e1.detail?` ${Xa} ${e1.detail}`:""]},`${e1.label}-${z1}`))})]})]})]})}function Et1({facts:e}){return e.length===0?null:K1("div",{className:"border-b border-line pb-[26px]",children:[w1("dl",{className:"flex flex-col gap-2",children:e.map(t=>K1("div",{className:"flex flex-wrap items-baseline gap-x-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.22em]",children:[K1("dt",{className:"text-fg-dim",children:[t.label," \xB7"]}),w1("dd",{className:"font-semibold text-fg",children:t.value.label})]},t.key))}),w1("p",{className:"mt-3 font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:"Only one of each is left, so there is nothing to choose here."})]})}function sD({row:e,onPick:t}){if(e.values.length===0&&!e.empty)return null;let a=e.values.find(c=>c.value===e.chosen),s=a&&[a.label,a.note].filter(Boolean).join(" \xB7 ");return K1("div",{className:"border-b border-line pb-[26px]",[aD]:e.key,children:[K1("div",{className:"mb-3.5 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.22em] text-fg",children:[e.label," \xB7 ",w1("span",{className:"text-accent",children:s??e.prompt})]}),e.values.length===0?K1("p",{className:"font-mono text-[length:var(--size-body,12px)] leading-relaxed tracking-[0.1em] text-fg-dim",children:[e.empty.text," ",w1(L1,{href:e.empty.href,className:"text-accent hover:underline",children:e.empty.linkText})]}):e.display==="swatch"?w1("div",{className:"grid grid-cols-2 gap-2",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative flex items-center gap-3 border-2 px-3 py-3 text-left transition-colors",l?"border-accent outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block h-5 w-5 shrink-0 rounded-full border border-fg-dim",style:{background:c.swatch}}),w1("span",{className:"block min-w-0 flex-1 truncate font-mono text-[length:var(--size-label,12px)] font-bold uppercase tracking-[0.18em] text-fg",children:c.label})]},c.value)})}):w1("div",{className:"flex flex-wrap gap-1.5",children:e.values.map(c=>{let l=c.value===e.chosen;return K1("button",{type:"button",onClick:()=>t(e.key,c.value),className:["relative cursor-pointer border-2 px-4 py-3 text-left font-mono uppercase transition-colors",l?"border-accent text-fg outline outline-1 outline-accent -outline-offset-1":"border-fg-dim/50 text-fg hover:border-accent"].join(" "),style:l?{background:"color-mix(in oklab, var(--accent) 14%, transparent)"}:void 0,children:[l&&w1("span",{"aria-hidden":!0,className:"absolute inset-y-0 left-0 w-[3px] bg-accent"}),w1("span",{className:"block text-[length:var(--size-label,14px)] tracking-[0.18em]",children:c.label}),c.note&&w1("span",{className:"mt-1 block text-[length:var(--size-label,11px)] tracking-[0.12em] text-fg-dim",children:c.note})]},c.value)})})]})}function lD(e){return e.photos.length>0?e.photos.length:e.thumbFallbackCells}var Vt1=6;function Nt1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,onLightbox:l,fit:r}){let o=t.photos[Math.min(a,t.photos.length-1)],i=DZ(t.photos,o),n=lD(t),h=n>=2,m=String(n).padStart(2,"0"),u=Math.min(a,Math.max(t.photos.length-1,0)),d=h||t.captions[u]?Th(t,u):"",v=[e,t.metaValue,d].filter(Boolean).join(" \u2014 "),g="max-[720px]:static",b=["relative flex aspect-square items-center justify-center overflow-hidden max-[720px]:col-span-2",c?"bg-bg":""].join(" ");return K1("div",{className:"relative max-[720px]:grid max-[720px]:grid-cols-[minmax(0,1fr)_auto] max-[720px]:items-start max-[720px]:gap-x-3 max-[720px]:gap-y-2",style:{color:t.tint},children:[K1("div",{className:`absolute left-0 top-0 z-10 flex items-center gap-3 font-mono text-[length:var(--size-label,13px)] font-semibold uppercase tracking-[0.2em] text-fg ${g} max-[720px]:min-w-0 max-[720px]:flex-wrap max-[720px]:gap-x-2 max-[720px]:gap-y-1`,children:[h&&K1(m5,{children:[K1("span",{className:"text-accent",children:[String(a+1).padStart(2,"0")," / ",m]}),w1("span",{className:"text-fg-dim",children:"\xB7"})]}),w1("span",{children:e}),t.metaValue&&K1(m5,{children:[w1("span",{className:"text-fg-dim",children:"\xB7"}),w1("span",{className:"text-accent",children:t.metaValue})]})]}),h&&w1("div",{className:`absolute right-5 top-5 z-10 flex gap-1 ${g}`,children:ZZ(a,n,s).map(w=>w1("button",{type:"button","aria-label":w.label,title:w.label,onClick:w.onClick,className:"flex h-7 w-7 items-center justify-center border border-fg-dim/60 text-fg transition-colors hover:border-accent hover:text-accent",children:w.glyph},w.label))}),K1("div",{className:b,children:[["top-3 left-3","top-3 right-3","bottom-3 left-3","bottom-3 right-3"].map((w,z)=>w1("span",{className:`absolute ${w} h-3 w-3 border border-fg-dim/40`,style:{borderTop:w.includes("top")?"1px solid var(--site-line)":"none",borderBottom:w.includes("bottom")?"1px solid var(--site-line)":"none",borderLeft:w.includes("left")?"1px solid var(--site-line)":"none",borderRight:w.includes("right")?"1px solid var(--site-line)":"none"}},z)),t.stageImage({photo:i,alt:v,label:`Open ${[e,t.metaValue].filter(Boolean).join(" ")} at full resolution`,onZoom:()=>l(i,v),fit:r})]}),K1("div",{className:`absolute bottom-5 left-5 right-5 z-10 flex items-center justify-between gap-3 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim ${g} max-[720px]:col-span-2 max-[720px]:flex-wrap`,children:[w1("span",{children:t.specCaption}),w1("span",{children:t.originCaption})]})]})}function _t1({name:e,view:t,angleIdx:a,onSelect:s,isLight:c,tiled:l=!1}){let r=lD(t);return r<2?null:w1("div",{className:l?"order-[-1] flex w-16 flex-col gap-2 max-[720px]:w-12 max-[720px]:gap-1":"mt-2 grid grid-cols-4 gap-2 max-[720px]:gap-1",style:!l&&r>4?{gridTemplateColumns:`repeat(${Math.min(r,Vt1)}, minmax(0, 1fr))`}:void 0,children:Array.from({length:r}).map((o,i)=>{let n=t.photos[i];return K1("button",{type:"button",onClick:()=>s(i),"aria-label":`View ${Th(t,i)}`,className:["relative flex aspect-square items-center justify-center overflow-hidden transition-colors",c?"bg-bg":"",i===a?"border border-accent":"border border-transparent hover:border-fg-dim"].join(" "),style:{color:t.tint},children:[w1("span",{className:"absolute top-1.5 left-2 z-10 font-mono text-[length:var(--size-label,8px)] uppercase tracking-[0.18em] text-fg-dim",children:String(i+1).padStart(2,"0")}),t.thumbImage({photo:n,alt:`${e} \u2014 ${Th(t,i)}`})]},i)})})}function It1({slug:e,name:t}){let{has:a,toggle:s}=tD(),c=a(e);return w1("button",{type:"button",title:c?"Saved":"Save","aria-label":c?`Remove ${t} from wishlist`:`Save ${t} to wishlist`,"aria-pressed":c,onClick:()=>s(e),className:["h-12 w-12 cursor-pointer border-2 bg-transparent transition-colors",c?"border-accent text-accent":"border-fg-dim/50 text-fg hover:border-accent hover:text-accent"].join(" "),children:c?"\u2665":"\u2661"})}function Rt1({partNumbers:e,productSlug:t}){let[a,s]=cD(""),{status:c,submit:l,reset:r}=nn();function o(){l({partNumbers:e,email:a,productSlug:t})}return c==="sent"?w1("p",{className:"-mt-1 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-accent",children:"We'll email you when it's back."}):w1(Vc,{className:"-mt-1",email:a,onEmailChange:s,status:c,onResetVerdict:r,onSubmit:o,inputAriaLabel:"Email for the back-in-stock alert",submitLabel:"Notify me when back",buttonClassName:"cursor-pointer whitespace-nowrap border-2 border-btn px-4 font-mono text-[length:var(--size-label,11px)] font-bold uppercase tracking-[0.22em] text-btn transition-colors hover:bg-btn hover:text-btn-ink disabled:cursor-not-allowed disabled:opacity-50 disabled:hover:bg-transparent disabled:hover:text-btn",errorMessage:"Couldn't save that \u2014 please try again."})}import{Fragment as Dt1,jsx as _c,jsxs as Ot1}from"react/jsx-runtime";function vb({slug:e,kind:t="wheel",editing:a=!1,pricePlacement:s,showVehicleFitment:c=!0,...l}){let[r,o]=rD(null),[i,n]=rD(!1);return Bt1(()=>{let h=!1;return o(null),n(!1),(t==="tyre"?v0.getTyre(e).then(u=>({kind:"tyre",tyre:u})):v0.getWheel(e).then(u=>({kind:"wheel",wheel:u}))).then(u=>{h||o(u)}).catch(()=>{h||n(!0)}),()=>{h=!0}},[e,t]),i?_c(A4,{size:"tall",children:"Couldn\u2019t load this product."}):r?_c(Zt1,{record:r,editing:a,pricePlacement:s,showVehicleFitment:c,...l}):_c(A4,{size:"tall",children:"Loading product\u2026"})}function Zt1({record:e,editing:t=!1,pricePlacement:a,showVehicleFitment:s=!0,...c}){let l=e.kind==="tyre"?Nn(e.tyre):Ks(e.wheel),r=vc(l,{editing:t}),o=gc();return Ot1(Dt1,{children:[_c(ma,{product:l,selection:r,onLightbox:o.open,editing:t,pricePlacement:a,showVehicleFitment:s,...c}),_c(Bt,{item:o.item,onClose:o.close})]})}import{Fragment as Ut1,jsx as o8,jsxs as jt1}from"react/jsx-runtime";var Gt1=D3;function Eh({editing:e=!1,pricePlacement:t,showVehicleFitment:a=!0,...s}){let c=$0();return o8(z2,{kinds:Gt1,type:"ProductHero",editing:e,children:c?o8(ma,{product:c.product,selection:c.selection,onLightbox:c.openLightbox,editing:e,pricePlacement:t,showVehicleFitment:a,...s}):e?o8(qt1,{pricePlacement:t,showVehicleFitment:a,...s}):o8(A4,{size:"tall",children:"Bound to the current product \u2014 preview on a product page."})})}function qt1({pricePlacement:e,showVehicleFitment:t,...a}){let s=z3(!0);return s?o8(Wt1,{product:s,pricePlacement:e,showVehicleFitment:t,...a}):o8(A4,{size:"tall",children:p("Loading sample product\u2026")})}function Wt1({product:e,pricePlacement:t,showVehicleFitment:a,...s}){let c=vc(e,{editing:!0}),l=gc();return jt1(Ut1,{children:[o8(ma,{product:e,selection:c,onLightbox:l.open,editing:!0,pricePlacement:t,showVehicleFitment:a,...s}),o8(Bt,{item:l.item,onClose:l.close})]})}import{jsx as Ic}from"react/jsx-runtime";function Kt1({source:e,editing:t=!1,pricePlacement:a=Xt,showVehicleFitment:s=!0,heroLayout:c=e8,imageRatio:l=t8,textAlign:r=g9,showSpecTable:o=!0,showPriceQuote:i=!0,galleryMode:n=a8,imageFit:h=s8}){let m={heroLayout:c,imageRatio:l,textAlign:r,showSpecTable:o,showPriceQuote:i,galleryMode:n,imageFit:h};return $0()||t&&M2()?Ic(Eh,{editing:t,pricePlacement:a,showVehicleFitment:s,...m}):e?.slug?Ic(vb,{slug:e.slug,kind:e.kind??"wheel",editing:t,pricePlacement:a,showVehicleFitment:s,...m}):t?Ic(A4,{size:"tall",children:p("Pick a product in the panel to fill this hero.")}):Ic(Eh,{pricePlacement:a,showVehicleFitment:s,...m})}var oD={label:"Product Hero",defaultProps:{source:null,pricePlacement:Xt,showVehicleFitment:!0,heroLayout:e8,imageRatio:t8,textAlign:g9,showSpecTable:!0,showPriceQuote:!0,galleryMode:a8,imageFit:s8},render:e=>Ic(Kt1,{source:e.source,editing:e.puck?.isEditing,pricePlacement:cB(e.pricePlacement),showVehicleFitment:e.showVehicleFitment??!0,heroLayout:Jt(e.heroLayout),imageRatio:ah(e.imageRatio),textAlign:th(e.textAlign),showSpecTable:e.showSpecTable??!0,showPriceQuote:e.showPriceQuote??!0,galleryMode:sh(e.galleryMode),imageFit:ch(e.imageFit)})};import{jsx as $t1}from"react/jsx-runtime";var iD={label:"Product",defaultProps:{code:"",finish:""},render:e=>$t1(hf,{code:e.code||void 0,finish:e.finish||void 0,wheel:e.wheel})};import{jsx as Yt1}from"react/jsx-runtime";var nD={label:"Search",defaultProps:{style:"icon"},render:({style:e,puck:t})=>Yt1(jB,{style:e,editing:t?.isEditing})};import{useEffect as Jt1,useRef as Qt1}from"react";import{jsx as Rc,jsxs as hD}from"react/jsx-runtime";var Xt1={fits:{className:"font-medium",style:{color:"var(--green)"}},doesNotFit:{className:"text-fg-dim"},unknown:{className:"text-fg-dim"}};function fb({variants:e,answer:t,loading:a=!1}){return t?hD("div",{className:"mt-9",children:[Rc("p",{className:"max-w-[68ch] font-serif text-[length:var(--size-body,18px)] italic leading-[1.55] text-fg-dim",children:Sh(t)}),Rc("ul",{className:"mt-6 grid gap-[2px] border border-line bg-line",children:e.map(s=>{let c=Ua(t,s.sku),l=Xt1[c];return hD("li",{className:"flex items-baseline justify-between gap-6 bg-bg px-[18px] py-4",children:[Rc("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.14em] text-fg",children:s.size}),Rc("span",{className:`font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] ${l.className}`,style:l.style,children:Lh[c]})]},s.sku)})})]}):a?Rc("p",{className:"mt-9 border border-line bg-bg p-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.24em] text-fg-dim",children:"Checking your car\u2026"}):null}import{jsx as bb,jsxs as mD}from"react/jsx-runtime";var xb="Will it fit *your car?*",zb="Pick your vehicle and we\u2019ll tell you which of these sizes matches what it came on.",yb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",wb="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20";function Cb({num:e,title:t=xb,description:a=zb,escapeText:s,escapeHref:c,omitHead:l=!1,slug:r,variants:o,onAnswer:i}){let n=I4({autoApply:!0}),{answer:h,loading:m}=Mh(r,vo(n.applied?.vehicle)),u=Qt1(i);return u.current=i,Jt1(()=>{u.current?.(h)},[h]),mD("section",{className:l?wb:yb,children:[l?null:bb(s0,{num:e,title:t,description:a,accent:!0}),bb(X3,{cascade:n.cascade}),s&&c?mD("a",{href:c,className:"mt-6 inline-block font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-accent underline-offset-4 hover:underline",children:[s," \u2192"]}):null,bb(fb,{variants:o,answer:h,loading:m})]})}import{jsx as Bc,jsxs as aa1}from"react/jsx-runtime";var ea1=["tyre"];function kb(e){return Bc(z2,{kinds:ea1,type:"TyreFitment",editing:e.editing,children:Bc(ta1,{...e})})}function ta1({num:e,title:t,description:a,escapeText:s,escapeHref:c,omitHead:l=!1,editing:r=!1}){let o=$0(),i=z3(r&&!o),n=o?.product??i,h=n?.kind==="tyre"?n.source:null;return!h||h.variants.length===0?r?aa1("section",{className:l?wb:yb,children:[l?null:Bc(s0,{num:e,title:t||xb,description:a||zb,accent:!0}),Bc("p",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("The vehicle question appears here on a tyre product page, with one verdict per size.")})]}):null:Bc(Cb,{num:e,title:t||void 0,description:a||void 0,escapeText:s,escapeHref:c,omitHead:l,slug:h.slug,variants:h.variants})}import{jsx as sa1}from"react/jsx-runtime";var pD={label:"Tyre Fitment Form",defaultProps:{num:"",title:"",description:"",escapeText:"",escapeHref:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=l=>t?void 0:l,s=a1(e.escapeText),c=a1(e.escapeHref);return sa1(kb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),escapeText:s,escapeHref:c,omitHead:t,editing:e.puck?.isEditing})}};import{jsx as i8,jsxs as gD}from"react/jsx-runtime";var uD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",dD="mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:pt-0 max-[1100px]:pb-20",ca1=[],la1=["tyre"];function Mb(e){return i8(z2,{kinds:la1,type:"TyreSizes",editing:e.editing,children:i8(ra1,{...e})})}function ra1({num:e,title:t,description:a,editing:s=!1,omitHead:c=!1}){let l=$0(),r=z3(s&&!l),o=l?.product??r,i=o?.kind==="tyre"?o.source.variants:[],n=c?null:i8(s0,{num:e?M(e):void 0,title:Y(t||"Available *sizes.*",!1),description:M(a||"Every size this tyre is made in, with its own price and stock."),accent:!0});if(i.length===0)return s?gD("section",{className:c?dD:uD,children:[n,i8("p",{className:"border-t border-line py-6 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.18em] text-fg-dim",children:p("This product\u2019s sizes appear here on a product page.")})]}):null;let h=i.some(m=>!m.image);return gD("section",{className:c?dD:uD,children:[n,i8(oa1,{variants:i,fieldUsage:l?.fieldUsage??ca1}),i8(s5,{text:h?uo:""})]})}function oa1({variants:e,fieldUsage:t}){let{currency:a,formatPrice:s}=d0();return i8("div",{className:"grid grid-cols-3 gap-2 max-[1100px]:grid-cols-2 max-[720px]:grid-cols-1",children:e.map(c=>i8(uc,{fieldUsage:t,size:c.size,specs:c.specs,prices:c.prices,image:c.image,inStock:c.inStock,currency:a,formatPrice:s},c.sku))})}import{jsx as ia1}from"react/jsx-runtime";var vD={label:"Tyre Sizes",defaultProps:{num:"",title:"",description:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ia1(Mb,{num:a(y(e.num,U0.num,e.puck)),title:a(y(e.title,A.sectionHeading,e.puck)),description:a(y(e.description,A.body,e.puck)),omitHead:t,editing:e.puck?.isEditing})}};var fD={AlloyWheelsListing:f_,BrandStrip:RB,BundleOffer:GB,CartBlock:YB,CatalogFilterBar:nZ,CheckoutCTA:I_,CollectionCard:mZ,Collections:G_,CompatibleTyres:xI,CountrySwitchBlock:pZ,DeliveryOptions:CI,DetailRows:RI,EuTyreLabel:uZ,FitmentFinder:WI,FitmentTable:mR,Gallery:xR,GalleryB:HR,GalleryItem:dZ,Header:TZ,ProductGrid:$R,ProductHero:oD,ProductRef:iD,RelatedProducts:dB,SearchBlock:nD,SpecTable:FB,TyreFitment:pD,TyreSizes:vD};var na1={AlloyWheelsListing:z_,BrandStrip:M_,BundleOffer:S_,CartBlock:L_,CatalogFilterBar:N_,CheckoutCTA:R_,CollectionCard:D_,Collections:W_,CompatibleTyres:zI,CountrySwitchBlock:yI,DeliveryOptions:MI,DetailRows:ZI,EuTyreLabel:DI,FitmentFinder:UI,FitmentTable:pR,Gallery:wR,GalleryB:FR,GalleryItem:RR,Header:BR,ProductGrid:XR,ProductHero:oB,ProductRef:uB,RelatedProducts:gB,SearchBlock:vB,SpecTable:PB,TyreFitment:EB,TyreSizes:VB},G0=et(fD,na1);import{jsx as x4,jsxs as Vh}from"react/jsx-runtime";function Lb(e={}){let t=gC();return x4(UL,{editing:e.editing,previewConfirmation:!!e.nodeId&&t===e.nodeId,children:x4(ha1,{...e})})}var bD="mx-auto max-w-[var(--sf-site-width,1600px)] px-[min(24px,var(--sf-site-gutter,40px))] py-16 min-[800px]:px-[var(--sf-site-gutter,40px)] min-[800px]:py-[88px]",Sb="grid gap-8 min-[960px]:grid-cols-[minmax(0,1fr)_minmax(360px,0.8fr)] min-[960px]:gap-12";function ha1({eyebrow:e,heading:t,intro:a,buttonLabel:s,successMessage:c,boxes:l,inBoxes:r=!1}){let{fieldPrefix:o,editing:i,services:n,currency:h,serviceId:m,setServiceId:u,requiresPayment:d,date:v,earliestDate:g,setDate:b,setDateTouched:f,availability:w,loadingSlots:z,noSlotsMessage:k,selectedStart:S,setSelectedStart:H,customerTimezone:I,name:P,setName:D,email:E,setEmail:F,phone:_,setPhone:Z,notes:G,setNotes:V,confirmation:j,submitting:N,error:Q,canSubmit:W,handleSubmit:U,sample:i1}=C7(),y1=i1?x4("p",{className:"mb-6 font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:p("Example form \u2014 add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")})}):null,K=n===void 0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",children:"Loading appointments\u2026"}):n?.length===0?x4("p",{className:"font-mono text-[12px] uppercase tracking-[0.2em] text-fg-dim",role:"status",children:i?p("Add an active service in {place}.",{place:p("Storefront \u2192 Booking Services")}):"Appointments are not available right now."}):null;return r&&l?x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,j?x4(l,{className:`${Sb} items-start`}):Vh("form",{onSubmit:U,children:[x4(l,{className:`${Sb} items-start`}),K]})]})}):x4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Vh("div",{className:bD,children:[y1,x4(Do,{eyebrow:e,heading:t,intro:a}),j?x4(qo,{successMessage:c}):K||Vh("form",{onSubmit:U,className:Sb,children:[x4(Oo,{}),x4(Go,{buttonLabel:s})]})]})})}import{jsx as ma1}from"react/jsx-runtime";var Ab={boxes:{type:"slot",allow:["BookingBox"]}},xD={label:"Booking Form",fields:Ab,defaultProps:{eyebrow:"",heading:"",intro:"",buttonLabel:"",successMessage:""},render:e=>ma1(Lb,{eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),boxes:e.boxes,inBoxes:e.layout==="boxes",nodeId:typeof e.id=="string"?e.id:void 0,editing:e.puck?.isEditing})};var zD={fields:{_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message"),boxes:Ab.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{eyebrow:a,heading:s,intro:c,buttonLabel:l,successMessage:r,...o}=t;return o}};var yD={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Wo.map(e=>[Uo[e],g1(Hu[e],Ke(Hu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:q("Eyebrow"),heading:E1("Heading"),intro:E1("Introduction"),buttonLabel:q("Submit button"),successMessage:E1("Confirmation message")},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=Wo.map(r=>Uo[r]),l=r=>Object.fromEntries(Object.entries(s).filter(([o])=>o.startsWith("_")||c.includes(o)||r.includes(o)));return l(a==="head"?["eyebrow","heading","intro"]:a==="details"?["buttonLabel"]:a==="confirm"?["successMessage"]:[])}};import{EyeIcon as pa1,LinkIcon as wD,EyeOffIcon as ua1}from"efficient-easel/icons";import{jsx as Zc}from"react/jsx-runtime";var CD={fields:{_gTop:x("Routing groups"),routingNumber:T("Section number",f0.routingNumber),routingTagline:T("Eyebrow",f0.routingTagline),groups:{type:"array",label:"Groups",arrayFields:{eyebrow:q("Eyebrow"),title:E1("Title"),copy:E1("Body"),response:q("Response time")},getItemSummary:e=>e?.title||e?.eyebrow||p("Group")},_gForm:x("Message form"),formSlug:E5(),formNumber:T("Section number",f0.formNumber),formHeading:O("Heading",f0.formHeading),metaItems:T2("Meta lines",Zc(c4,{noun:"meta"}),"Encrypted in transit","verbatim"),_gOther:x("\u201COther\u201D reason"),showOther:l1("Show \u201COther\u201D reason",f0.showOther,Zc(pa1,{})),otherLabel:q("\u201COther\u201D chip label",f0.otherLabel),otherNoteTitle:T("\u201COther\u201D note title",f0.otherNoteTitle),otherNoteBody:O("\u201COther\u201D note body",f0.otherNoteBody),_gSubmit:x("Submit button"),buttonText:q("Submit button",f0.buttonText),consent:O("Consent line",f0.consent),_gChannels:x("Contact info"),channels:{type:"array",label:"Channels",arrayFields:{label:q("Label"),value:q("Value"),href:e3(q("Link")),sub:q("Sub line"),groupId:g1("Link to group",Zc(wD,{}),[{label:"\u2014 Not linked \u2014",value:""},...f0.groups.map(e=>({label:e.title,value:e.id}))],""),hidden:l1("Hidden",!1,Zc(ua1,{}))},getItemSummary:e=>{let t=e?.label||e?.value||p("Channel");return e?.hidden?p("{name} \xB7 hidden",{name:t}):t}}},resolveData:e=>{let t=e.props.groups??[];if(!t.some(c=>!c?.id))return e;let a=new Set,s=t.map((c,l)=>{if(c?.id)return a.add(c.id),c;let r=Ou(c?.title)||`group-${l+1}`;for(;a.has(r);)r=`${r}-${l+1}`;return a.add(r),{...c,id:r}});return{...e,props:{...e.props,groups:s}}},resolveFields:(e,{fields:t})=>{let a=e.props.groups??[],s=[{label:"\u2014 Not linked \u2014",value:""},...a.map((r,o)=>({label:r?.title||r?.eyebrow||p("Group {n}",{n:o+1}),value:r?.id||Ou(r?.title)||`group-${o+1}`}))],c=t,l=c.channels;return l?.type==="array"&&l.arrayFields&&(c.channels={...l,arrayFields:{...l.arrayFields,groupId:g1("Link to group",Zc(wD,{}),s,"")}}),t}};import{useEffect as da1,useRef as ga1,useState as va1}from"react";import{jsx as MD,jsxs as ya1}from"react/jsx-runtime";var fa1=12,Nh=null,kD=null;function ba1(e=!1){let t=i2();if((e||kD!==t)&&(Nh=null),!Nh){let a=R3();kD=t,Nh=J1.listBlogPosts(a,{visibleOnly:!0,siteId:t}).catch(()=>null)}return Nh}function xa1(e){if(!e)return"";let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{year:"numeric",month:"short",day:"2-digit"})}function za1(e){return{slug:e.slug,title:e.title,excerpt:e.excerpt,cover:e.cover_image?A9(e.cover_image)??"":"",meta:e.category||void 0,dateLabel:xa1(e.published_at)||void 0}}function b9({value:e,onChange:t,snapshotCount:a=fa1}){let[s,c]=va1("idle"),l=Array.isArray(e),r=l?e.length:0,o=ga1(!0),i=m=>{c("loading"),ba1(m).then(u=>{if(!o.current)return;if(u===null){c("error");return}c("idle");let d=u.slice(0,a).map(za1);b6(d,e??null)&&t(d)})};da1(()=>(o.current=!0,i(!1),()=>{o.current=!1}),[]);let n=p("Storefront \u2192 Blog"),h=s==="loading"?p("Syncing from {place}\u2026",{place:n}):s==="error"?p("Couldn\u2019t reach {place}.",{place:n}):l?p3("Auto-synced from {place} \xB7 {n} post","Auto-synced from {place} \xB7 {n} posts",r,{place:n}):p("Linking to {place}\u2026",{place:n});return ya1("div",{children:[MD(Ol,{label:"Blog posts"}),MD(E4,{status:s,statusText:h,onRefresh:()=>i(!0),busy:s==="loading",spaced:!1,hint:p("Auto-refreshes from the most-recent visible posts each time you open the editor. Set how many appear with \u201CPosts to display\u201D.")})]})}import{useState as wa1}from"react";import{jsx as _0,jsxs as n8}from"react/jsx-runtime";var SD=3,HD="featured",_h="tabs",FD="portrait",pa="spread",Ih="count",TD=[{label:"Even grid",value:"even"},{label:"Featured first",value:HD},{label:"Tabs",value:_h},{label:"Photo cards",value:FD},{label:"Staggered spread",value:pa},{label:"Count",value:Ih}],Ca1=[FD,pa],PD="even",Z6={min:2,max:11,step:1,fallback:7,unit:"of 12"},ka1="bottom-left",Ma1=55,Sa1="bottom";function La1(e){let t=typeof e=="number"?e:Number.parseFloat(String(e??"")),a=Number.isFinite(t)?Math.min(Z6.max,Math.max(Z6.min,Math.round(t))):Z6.fallback;return`${a}fr ${12-a}fr`}var LD={1:"grid-cols-1",2:"grid-cols-2 max-[800px]:grid-cols-1",3:"grid-cols-3 max-[800px]:grid-cols-1",4:"grid-cols-4 max-[1100px]:grid-cols-2 max-[800px]:grid-cols-1"},AD={2:"grid-cols-2",3:"grid-cols-3 max-[800px]:grid-cols-2",4:"grid-cols-4 max-[1100px]:grid-cols-3 max-[800px]:grid-cols-2"},Aa1="Find by name",Ha1="Nobody by that name.";function Fa1(e,t){let a=c=>c.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLocaleLowerCase().trim(),s=a(t);return s===""||a(e).includes(s)}function Ta1({card:e,scaffold:t,lower:a=!1}){return n8(r0,{href:e.href||"#",className:`sf-card group relative isolate flex aspect-[3/4] overflow-hidden bg-surface${a?" min-[801px]:mt-16":""}`,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,children:[_0("div",{className:"absolute inset-0 transition-transform duration-700 group-hover:scale-[1.03] motion-reduce:transition-none motion-reduce:group-hover:scale-100",children:_0(k0,{label:`card-${e.slug}`,src:e.cover||void 0,sizes:"(max-width: 800px) 50vw, 25vw"})}),_0("div",{"aria-hidden":!0,className:"absolute inset-0 z-0",style:{background:"linear-gradient(180deg, transparent 45%, color-mix(in srgb, var(--bg) 88%, transparent) 100%)"}}),e.meta&&_0("span",{className:"absolute left-3 top-3 z-[1] rounded-[var(--sf-button-radius,999px)] bg-bg/85 px-2.5 py-1 font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.16em] text-accent",children:M(e.meta)}),n8("div",{className:"relative z-[1] mt-auto flex w-full flex-col gap-1 p-4 max-[800px]:p-3",children:[_0("h3",{className:"font-heading3 text-[length:var(--size-headingSmall,24px)] leading-[1.1] tracking-[-0.01em] text-fg",children:Y(e.title,!1)}),e.dateLabel&&_0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.16em] text-accent",children:M(e.dateLabel)}),e.excerpt&&_0("p",{className:"line-clamp-2 text-[length:var(--size-body,14px)] leading-[1.45] text-fg-dim",children:M(e.excerpt)})]})]})}function Pa1({cards:e,scaffold:t}){return _0("nav",{"aria-label":"Days",className:"-mx-1 overflow-x-auto",children:_0("ul",{className:"flex min-w-max gap-2 px-1 pb-1",children:e.map((a,s)=>{let c=!!a.meta;return _0("li",{children:n8(r0,{href:a.href||"#","aria-current":c?"page":void 0,"aria-disabled":t||void 0,tabIndex:t?-1:void 0,className:`flex flex-col gap-0.5 rounded-[var(--sf-button-radius,999px)] border px-5 py-2.5 transition-colors ${c?"border-accent bg-accent text-accent-ink":"border-line text-fg hover:border-accent hover:text-accent"}`,children:[_0("span",{className:"font-heading3 text-[length:var(--size-body,15px)] leading-[1.2]",children:Y(a.title,!1)}),a.excerpt&&_0("span",{className:`font-mono text-[length:var(--size-label,11px)] uppercase tracking-[0.14em] ${c?"opacity-80":"text-fg-dim"}`,children:M(a.excerpt)})]})},`${a.slug}-${s}`)})})})}function Ea1({count:e,words:t,href:a}){let s=n8("span",{className:"inline-flex items-baseline gap-3",children:[_0("span",{className:"font-heading text-[length:var(--size-headingLarge,64px)] leading-none text-accent",children:e}),t!==void 0&&_0("span",{className:"font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.2em] text-fg",children:t})]});return a?_0(r0,{href:a,className:"inline-flex hover:opacity-85",children:s}):s}var Va1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[70px]",Na1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] pt-0 pb-[120px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-0 max-[800px]:pb-[70px]",_a1="relative z-[2] bg-bg px-[var(--sf-site-gutter,40px)] py-[32px] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:py-[24px]";function Hb({num:e,title:t,link:a,posts:s,columns:c,limit:l,showAll:r=!1,editing:o=!1,cardImage:i,gap:n,layout:h,featuredWidth:m,listCover:u=!0,featuredDarken:d,omitHead:v=!1,sample:g,nameFilter:b=!1}){let[f,w]=wa1(""),z=s??[],k=r?z.length:typeof l=="number"&&l>0?l:SD,S=z.slice(0,k),H=o&&S.length===0;if(S.length===0&&!o)return null;let I=r?SD:k,P=H?g?.length?g.slice(0,r?g.length:I):Array.from({length:I},(N,Q)=>({slug:`placeholder-${Q}`,title:p("Blog post title"),excerpt:p("A short summary of the post appears here."),cover:"",meta:p("Journal"),dateLabel:p("Date")})):S,D=B3("Events",n,"both"),E=h===HD&&P.length>1,F=La1(m),_=h===_h,Z=h===Ih,G=Ca1.includes(h??""),V=b&&!_&&!Z&&!E,j=V?P.filter(N=>Fa1(N.title,f)):P;return Z?_0("section",{className:_a1,children:_0(Ea1,{count:P.length,words:v||t===void 0?void 0:Y(t,!1),href:v?void 0:a?.href})}):n8("section",{className:v?Na1:Va1,style:J2(i),children:[v?null:_0(s0,{num:e!==void 0?M(e):void 0,title:t!==void 0?Y(t,!1):void 0,link:a?{text:M(a.text),href:a.href}:void 0}),V&&n8("div",{className:"mb-6 flex flex-col gap-2",children:[n8("label",{className:"flex max-w-[360px] flex-col gap-1.5",children:[_0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Aa1}),_0("input",{type:"search",value:f,onChange:N=>w(N.target.value),autoComplete:"off",className:"rounded-[var(--sf-button-radius,6px)] border border-line bg-bg px-4 py-2.5 text-[length:var(--size-body,15px)] text-fg outline-none focus:border-accent"})]}),j.length===0&&_0("p",{role:"status",className:"text-[length:var(--size-body,14px)] text-fg-dim",children:Ha1})]}),_?_0(Pa1,{cards:P,scaffold:H}):G?_0("div",{className:`sf-card-grid grid${D.className} ${h===pa?"grid-cols-3 max-[800px]:grid-cols-2":AD[Math.min(4,Math.max(2,c??3))]??AD[3]}`,style:D.style,children:j.map((N,Q)=>_0(Ta1,{card:N,scaffold:H,lower:h===pa&&Q%3===1},`${N.slug}-${Q}`))}):E?n8("div",{className:`sf-card-grid grid grid-cols-[var(--sf-events-split)] max-[800px]:grid-cols-1${D.className}`,style:{...D.style,"--sf-events-split":F},children:[_0(dt,{post:P[0],href:P[0].href,scaffold:H,layout:"cover",darken:d??Ma1,darkenStyle:Sa1,placement:ka1},`${P[0].slug}-0`),_0("div",{className:`grid auto-rows-min${D.className}`,style:D.style,children:P.slice(1).map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H,showCover:u},`${N.slug}-${Q+1}`))})]}):_0("div",{className:`sf-card-grid grid${D.className} ${LD[Math.min(4,Math.max(1,c??3))]??LD[3]}`,style:D.style,children:j.map((N,Q)=>_0(dt,{post:N,href:N.href,scaffold:H},`${N.slug}-${Q}`))})]})}import{LayoutIcon as Ba1,ColumnsIcon as Za1,WidthIcon as Da1,ImageIcon as Oa1,OpacityIcon as Ga1,ListIcon as qa1,HashIcon as Wa1,SearchIcon as Ua1}from"efficient-easel/icons";import{jsx as Ra1}from"react/jsx-runtime";var x9={num:A.sectionNumber,title:"Section title",link:A.viewAll},Ia1=()=>[{key:"sample-1",title:p("First card"),excerpt:p("A line about it appears here.")},{key:"sample-2",title:p("Second card"),excerpt:p("A line about it appears here.")},{key:"sample-3",title:p("Third card"),excerpt:p("A line about it appears here.")},{key:"sample-4",title:p("Fourth card"),excerpt:p("A line about it appears here.")}],ED=(e,t)=>({slug:e.key||`card-${t}`,title:e.title??"",excerpt:e.excerpt??"",cover:e.cover??"",meta:e.meta||void 0,dateLabel:e.dateLabel||void 0,href:e.href||"#"}),VD={label:"Latest Posts",defaultProps:{num:"",title:"",linkText:"",linkHref:"/journal",columns:3,limit:3,showAll:!1},render:e=>{let t=O1(e.headPlacement)==="own-box",a=o=>t?void 0:o,s=y(e.linkText,x9.link,e.puck),l=G8(e)!==""?Li(e,!!e.puck?.isEditing,Ia1()):null,r=l?l.sample?[]:l.rows.map(ED):e.posts;return Ra1(Hb,{num:a(y(e.num,x9.num,e.puck)),title:a(y(e.title,x9.title,e.puck)),link:a(s?{text:s,href:a1(e.linkHref)||"/journal"}:void 0),omitHead:t,posts:r,sample:l?.sample?l.rows.map(ED):void 0,columns:e.columns,limit:e.limit,showAll:e.showAll,layout:e.layout,featuredWidth:e.featuredWidth,listCover:e.listCover,featuredDarken:e.featuredDarken,cardImage:e.cardImage,gap:e.gap,nameFilter:e.nameFilter===!0,editing:e.puck?.isEditing})}};import{jsx as h8}from"react/jsx-runtime";var ja1=50,ND={fields:{_gContent:x("Content"),num:T("Number",x9.num),title:O("Heading",x9.title),linkText:T("Button",x9.link),linkHref:H1("Link"),dataSource:Ai("Cards from","Blog posts"),_gPosts:x("Blog posts"),posts:c2(b9,{snapshotCount:ja1}),_gLayout:x("Layout"),layout:g1("Arrangement",h8(Ba1,{}),TD,PD),columns:s1("Columns",h8(Za1,{}),2,4,1,3),featuredWidth:s1("Featured width",h8(Da1,{}),Z6.min,Z6.max,Z6.step,Z6.fallback,Z6.unit),listCover:l1("Show cover image on the smaller cards",!0,h8(Oa1,{})),featuredDarken:s1("Darken",h8(Ga1,{}),E2.min,E2.max,E2.step,55,E2.unit),nameFilter:l1("Filter by name",!1,h8(Ua1,{})),gap:Z3("Events"),showAll:l1("Show all blog posts",!1,h8(qa1,{})),limit:s1("Posts to display",h8(Wa1,{}),1,20,1,3),cardImage:s7()},resolveFields:(e,{fields:t,parent:a})=>{let s=e.props,l={...Hi("Events",t,e.props,{hides:["_gPosts","posts"]})},r=o=>G1(W1(o,a,U1),e.props.headPlacement,Z1.Events.headRows);if(s.showAll&&delete l.limit,s.layout==="featured")delete l.columns;else for(let o of["featuredWidth","listCover","featuredDarken"])delete l[o];if(s.layout===_h||s.layout===Ih)for(let o of["columns","nameFilter","cardImage"])delete l[o];return s.layout===pa&&delete l.columns,s.layout==="featured"&&delete l.nameFilter,r(l)}};import{jsx as Rh}from"react/jsx-runtime";import{SettingsDefaultReset as Ka1,SettingsField as $a1,SettingsSegmented as Ya1}from"efficient-easel/panel";import{WidthIcon as Xa1}from"efficient-easel/icons";function Bh({value:e,resolved:t,onChange:a,label:s="Width",labelId:c,followsLabel:l,hint:r}){let o=e===void 0,i=o?t:e,n=p(s);return Rh($a1,{label:n,labelId:c,icon:Rh(Xa1,{}),value:o?l:void 0,changed:!o,action:Rh(Ka1,{words:wy()?.panel,label:n,changed:!o,onReset:()=>a(void 0)}),hint:r,children:Rh(Ya1,{options:[{label:p(gm.page),id:"content"},{label:p(gm.full),id:"full"}],value:i,ariaLabel:n,onChange:a})})}import{SettingsField as Ja1,SettingsSwitch as Qa1}from"efficient-easel/panel";import{BlockColumnIcon as es1}from"efficient-easel/icons";import{Fragment as ts1,jsx as Dc}from"react/jsx-runtime";function Fb({value:e,onChange:t}){let a=C5(),s={...q9,...e},c=s[a];return Dc(Ja1,{label:p("Logo fills its column"),icon:Dc(es1,{}),action:Dc(Qa1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its column on {view}",{view:p(w5[a])})}),hint:Dc(ts1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Dc("strong",{children:p(w5[a])})})})})}import{SettingsField as as1,SettingsSwitch as ss1}from"efficient-easel/panel";import{FullWidthIcon as cs1}from"efficient-easel/icons";import{Fragment as ls1,jsx as Oc}from"react/jsx-runtime";function Tb({value:e,onChange:t}){let a=C5(),s={...W9,...e},c=s[a];return Oc(as1,{label:p("Logo fills its row"),icon:Oc(cs1,{}),action:Oc(ss1,{checked:c,onChange:l=>t({...s,[a]:l}),ariaLabel:p("Logo fills its row on {view}",{view:p(w5[a])})}),hint:Oc(ls1,{children:R5(p("Sets the {view} view \u2014 switch views in the top bar to set each one."),{view:Oc("strong",{children:p(w5[a])})})})})}import{jsx as rs1}from"react/jsx-runtime";function Pb({value:e,onChange:t}){return rs1(Zs,{label:"Columns per line",unit:p("columns"),steps:_y,value:_l(e),onChange:t})}import{useContext as os1,useEffect as is1,useRef as ns1,useState as ID}from"react";import{jsx as ua,jsxs as _D}from"react/jsx-runtime";function Gc(){let e=UB();return _D("div",{className:"flex flex-wrap justify-between gap-x-6 gap-y-3 border-t border-line pt-6 font-mono text-[13px] uppercase tracking-[0.15em] text-fg-dim max-[800px]:flex-col max-[800px]:gap-3",children:[ua("span",{children:e}),_D("span",{className:"flex flex-wrap items-center gap-3",children:[ua("span",{children:"Privacy"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Terms"}),ua("span",{"aria-hidden":!0,children:"\xB7"}),ua("span",{children:"Cookies"})]})]})}import{jsx as Eb,jsxs as ps1}from"react/jsx-runtime";var RD={1:"grid-cols-1",2:"grid-cols-2",3:"grid-cols-3",4:"grid-cols-4",5:"grid-cols-5",6:"grid-cols-6"},hs1={1:"min-[720px]:grid-cols-1",2:"min-[720px]:grid-cols-2",3:"min-[720px]:grid-cols-3",4:"min-[720px]:grid-cols-4",5:"min-[720px]:grid-cols-5",6:"min-[720px]:grid-cols-6"},ms1={1:"min-[1100px]:grid-cols-1",2:"min-[1100px]:grid-cols-2",3:"min-[1100px]:grid-cols-3",4:"min-[1100px]:grid-cols-4",5:"min-[1100px]:grid-cols-5",6:"min-[1100px]:grid-cols-6"};function Vb({blocks:e,editing:t=!1,width:a,columns:s,logoFill:c,logoRowFill:l}){let r=os1(wa),{desktop:o,tablet:i,mobile:n}=_l(s),{desktop:h,tablet:m,mobile:u}={...q9,...c},{desktop:d,tablet:v,mobile:g}={...W9,...l},b=C5(),w=t?RD[b==="desktop"?o:b==="tablet"?i:n]:`${RD[n]} ${hs1[i]} ${ms1[o]}`,z=ns1(null),[k,S]=ID(1),[H,I]=ID(!1);if(is1(()=>{if(!t&&!r)return;let D=z.current;if(!D)return;let E=()=>{let j=D.querySelector(".footer-block-grid");if(!j)return;let N=t?b:Vw(window.innerWidth),Q=N==="desktop"?d:N==="tablet"?v:g;I(Q);let W=N==="desktop"?h:N==="tablet"?m:u,U=getComputedStyle(j).gridTemplateColumns.split(" ").filter(Boolean).length-1,i1=Math.max(j.childElementCount-1,0);S(!Q&&W&&U>=1?Math.max(Math.ceil(i1/U),1):1)},F,_=()=>{clearTimeout(F),F=setTimeout(E,0)},Z=[0,80,250,600].map(j=>setTimeout(E,j)),G=new MutationObserver(_);G.observe(D,{childList:!0,subtree:!0});let V=new ResizeObserver(_);return V.observe(D),()=>{clearTimeout(F),Z.forEach(clearTimeout),G.disconnect(),V.disconnect()}},[o,i,n,t,r,b,h,m,u,d,v,g]),!t&&!r)return null;let P=wl(Cl(a))??void 0;return Eb("footer",{ref:z,className:"border-t border-line bg-bg px-[var(--sf-site-gutter,40px)] pb-10 pt-20 max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))] max-[800px]:pt-14",style:{"--footer-logo-rows":k,"--footer-logo-col":H?"1 / -1":"1"},children:ps1("div",{style:P,children:[Eb(e,{className:`footer-block-grid mb-[60px] grid items-start gap-x-10 gap-y-12 ${w}`,minEmptyHeight:160}),Eb(Gc,{})]})})}import{jsx as us1}from"react/jsx-runtime";var Nb={blocks:{type:"slot",allow:["FooterLogo","FooterMenu","FooterDivider","FooterGroup","FooterText","FooterEmailSignup","FooterSocial"]}},BD={label:"Footer",fields:Nb,defaultProps:{columns:Iy,logoFill:q9,logoRowFill:W9},render:({blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,puck:l})=>us1(Vb,{blocks:e,width:t,columns:a,logoFill:s,logoRowFill:c,editing:l?.isEditing})};import{jsx as Zh}from"react/jsx-runtime";var ZD={fields:{_gLayout:x("Layout"),width:{type:"custom",render:({value:e,onChange:t})=>Zh(Bh,{value:e==="full"?"full":e==="page"||e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the page"),hint:p("Whether the footer's blocks sit on the page's column, or run edge to edge. The background always spans the screen."),onChange:a=>t(a)})},columns:{type:"custom",render:({value:e,onChange:t})=>Zh(Pb,{value:e,onChange:t})},logoFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Fb,{value:e,onChange:t})},logoRowFill:{type:"custom",render:({value:e,onChange:t})=>Zh(Tb,{value:e,onChange:t})},_gBlocks:x("Blocks"),blockList:N5("Footer"),blocks:Nb.blocks}};import{WeightIcon as ds1,WidthIcon as gs1,PhoneIcon as vs1}from"efficient-easel/icons";import{jsx as _b}from"react/jsx-runtime";var DD={fields:{_gStyle:x("Style"),thickness:s1("Thickness",_b(ds1,{}),1,8,1,1,"px"),lengthPct:s1("Length",_b(gs1,{}),10,100,1,100,"%"),hideOnMobile:l1("Hide on mobile",!1,_b(vs1,{}))}};var OD={fields:{_gContent:x("Content"),heading:E1("Heading","Join our email list"),placeholder:q("Field placeholder","Email address"),buttonLabel:q("Button","Subscribe")}};import{AlignLeftIcon as xs1}from"efficient-easel/icons";import{jsx as GD}from"react/jsx-runtime";var fs1={start:"items-start",center:"items-center",end:"items-end"};function Ib({direction:e="vertical",gap:t,align:a="start",content:s}){let c=B3("FooterGroup",t,e==="horizontal"?"inline":"block");return GD("div",{className:"min-w-0",children:GD(s,{className:`flex ${e==="horizontal"?"flex-row flex-wrap":"flex-col"} ${fs1[a]}${c.className}`,style:c.style,minEmptyHeight:80})})}import{jsx as bs1}from"react/jsx-runtime";var Rb={blocks:{type:"slot",allow:["FooterText","FooterEmailSignup","FooterMenu","FooterDivider","FooterSocial"]}},qD={label:"Footer Box",fields:Rb,defaultProps:{direction:"vertical",align:"start"},render:({direction:e,gap:t,align:a,blocks:s})=>bs1(Ib,{direction:e,gap:t,align:a,content:s})};import{jsx as zs1}from"react/jsx-runtime";var WD={fields:{_gLayout:x("Layout"),direction:v1("Direction",Zl("`Direction` names how a container's children run \u2014 a MODIFIER, not a thing. doc/naming.md N10.1 gives the idea a dash in its Glyph column; editor-shell's own `direction` meaning says the bare row is CORRECT and not an omission (SS seat, 2026-09-11)."),[{label:"Vertical",value:"vertical"},{label:"Horizontal",value:"horizontal"}],"vertical"),gap:Z3("FooterGroup"),align:v1("Alignment",zs1(xs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),_gBlocks:x("Blocks"),blockList:N5("FooterGroup"),blocks:Rb.blocks}};import{WidthIcon as ys1,AlignLeftIcon as ws1,LogoIcon as Cs1,PaddingTopIcon as ks1,PaddingRightIcon as Ms1,PaddingBottomIcon as Ss1,PaddingLeftIcon as Ls1}from"efficient-easel/icons";import{jsx as z9}from"react/jsx-runtime";var UD={fields:{_gContent:x("Content"),tagline:E1("Body","Short brand tagline"),_gStyle:x("Style"),widthPct:s1("Width",z9(ys1,{}),40,400,1,100,"%"),align:v1("Alignment",z9(ws1,{}),[{label:"Start",value:"left"},{label:"Center",value:"center"},{label:"End",value:"right"}],"left"),reverse:v1("Logo color",z9(Cs1,{}),[{label:"Auto contrast",value:"auto"},{label:"As uploaded",value:"off"}],"auto"),padTop:s1("Padding top",z9(ks1,{}),0,120,2,0,"px"),padRight:s1("Padding right",z9(Ms1,{}),0,120,2,0,"px"),padBottom:s1("Padding bottom",z9(Ss1,{}),0,120,2,0,"px"),padLeft:s1("Padding left",z9(Ls1,{}),0,120,2,0,"px")}};import{Button as As1}from"efficient-shell/ui";import{SettingsField as Hs1}from"efficient-easel/panel";import{FieldSelect as Fs1}from"efficient-easel/fields";import{MenuIcon as Ts1}from"efficient-easel/icons";import{useCallback as Ps1,useEffect as jD,useState as Bb}from"react";import{jsx as y9,jsxs as KD}from"react/jsx-runtime";function Zb({value:e,onChange:t}){let[a,s]=Bb(null),[c,l]=Bb(!1),r=Ps1(f=>{s(f),l(!0)},[]);jD(()=>{let f=!1;return Hp(R3()).then(w=>{f||r(w)}).catch(()=>{f||s([])}),()=>{f=!0}},[r]),jD(()=>{let f=!1,w=tS(()=>{bM(R3()).then(z=>{f||r(z)}).catch(()=>{})});return()=>{f=!0,w()}},[r]);let o=a===null,i=!!(e?.id||e?.handle),n=c&&i&&!Kr(a??[],e),h=!i&&(e?.items?.length??0)>0,m=n?"":Kr(a??[],e)?.id??"",u=f=>t({id:f.id,handle:f.handle,name:f.name,items:f.items.map(w=>({label:w.label,url:w.url}))}),d=f=>{if(!f){t(null);return}let w=(a??[]).find(z=>z.id===f);w&&u(w)},[v,g]=Bb(!1),b=()=>{i&&(g(!0),Hp(R3(),!0).then(f=>{r(f);let w=Kr(f,e);w&&u(w)}).catch(()=>{}).finally(()=>g(!1)))};return KD("div",{children:[y9(Hs1,{label:p("Menu"),icon:y9(Ts1,{}),hint:!o&&a&&a.length===0?p("Create menus in {place}, then pick one here.",{place:p("Storefront \u2192 Menus")}):void 0,children:y9(Fs1,{value:m,ariaLabel:p("Menu"),onChange:d,readOnly:o||(a?.length??0)===0,options:[{label:o?p("Loading menus\u2026"):a&&a.length===0?p("No menus found"):p("Select a menu\u2026"),value:""},...(a??[]).map(f=>({label:`${f.name} (${f.item_count??f.items.length})`,value:f.id}))]})}),h?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:nM()}):null,n?y9("p",{className:"mt-1.5 text-[12px] text-[var(--sf-warning,#b45309)]",children:hM(e?.name??p("The linked menu"))}):null,i&&!n?KD("div",{className:"mt-1.5 flex items-center justify-between gap-2",children:[y9("p",{className:"text-[12px] text-fg-dim",children:p3("Linked to \u201C{name}\u201D \u2014 {n} link. Re-pull after editing the menu:","Linked to \u201C{name}\u201D \u2014 {n} links. Re-pull after editing the menu:",e?.items?.length??0,{name:e?.name??""})}),y9(As1,{variant:"link",size:"sm",className:"shrink-0",onClick:b,disabled:v,children:v?p("Updating\u2026"):p("Update links")})]}):null]})}import{PhoneIcon as Es1,LineBetweenIcon as Vs1}from"efficient-easel/icons";import{jsx as Db}from"react/jsx-runtime";var $D={fields:{_gContent:x("Content"),menu:{type:"custom",render:({value:e,onChange:t})=>Db(Zb,{value:e,onChange:t})},heading:q("Heading","Column heading"),_gStyle:x("Style"),accordionMobile:l1("Show as accordion on mobile",!1,Db(Es1,{})),showDividers:l1("Dividers between links",!1,Db(Vs1,{}))}};import{jsx as qc}from"react/jsx-runtime";var YD={small:16,medium:20,large:24},Ob=0,Gb=32,JD=2,Wc=0,XD={start:"justify-start",center:"justify-center",end:"justify-end"};function qb({iconStyle:e=oe,iconSize:t="medium",align:a="start",gap:s=Wc,editing:c=!1}){let l=qB(),r=Cw(ww(l));if(r.length===0)return c?qc("div",{"data-social-placeholder":"",className:"rounded border border-dashed border-line px-3 py-2 text-[13px] text-fg-dim",children:p("Add your social links")}):null;let o=YD[t]??YD.medium,n={gap:Math.min(Gb,Math.max(Ob,Number.isFinite(s)?s:0)),"--social-mark":`${o}px`};return qc("ul",{"data-social-block":"","aria-label":"Social media",className:`flex list-none flex-wrap p-0 [margin:calc((44px-var(--social-mark))/-2)] max-[800px]:[margin:calc((40px-var(--social-mark))/-2)] ${XD[a]??XD.start}`,style:n,children:r.map(({platform:h,href:m,label:u})=>qc("li",{children:qc("a",{href:m,target:"_blank",rel:"noopener noreferrer","aria-label":`${u} (opens in a new tab)`,className:"grid h-11 w-11 place-items-center rounded text-fg transition-colors hover:text-accent focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-[-4px] focus-visible:outline-current motion-reduce:transition-none max-[800px]:h-10 max-[800px]:w-10",children:qc(_w,{platform:h,iconStyle:e,size:o})})},h))})}import{Button as Ns1}from"efficient-shell/ui";import{Fragment as _s1,jsx as Wb,jsxs as Is1}from"react/jsx-runtime";function Ub(){let{openPanel:e}=sr();return Is1(_s1,{children:[Wb(Ol,{label:"Social links"}),Wb("p",{className:"es-field-hint sf-hint-keep",children:p("The links are typed once for the whole website, in Site settings.")}),Wb(Ns1,{variant:"link",size:"sm",onClick:e,children:p("Edit social links \u2192")})]})}import{StylesIcon as Rs1,TextSizeIcon as Bs1,AlignLeftIcon as Zs1,GapIcon as Ds1}from"efficient-easel/icons";import{jsx as Uc}from"react/jsx-runtime";var QD={fields:{_gStyle:x("Style"),iconStyle:v1("Icon style",Uc(Rs1,{}),[{label:"Outline",value:"outline"},{label:"Solid",value:"solid"}],oe),iconSize:v1("Icon size",Uc(Bs1,{}),[{label:"Small",value:"small"},{label:"Medium",value:"medium"},{label:"Large",value:"large"}],"medium"),_socialLinks:{type:"custom",render:()=>Uc(Ub,{})},_gLayout:x("Layout"),align:v1("Alignment",Uc(Zs1,{}),[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"}],"start"),gap:s1("Gap",Uc(Ds1,{}),Ob,Gb,JD,Wc,"px")}};import{TextSizeIcon as Os1}from"efficient-easel/icons";import{jsx as Gs1}from"react/jsx-runtime";var eO={fields:{_gContent:x("Content"),text:E1("Body","Footer text"),_gStyle:x("Style"),size:v1("Size",Gs1(Os1,{}),[{label:"S",value:"sm"},{label:"M",value:"md"},{label:"L",value:"lg"}],"md"),tone:_o()}};var tO={fields:{_gForm:x("Form"),formSlug:E5(),_gContent:x("Content"),heading:q("Heading override"),intro:E1("Intro"),submitText:q("Submit button"),finePrint:q("Fine print")}};var aO={fields:{}};var Dh="e.g. D00123 \xB7 blank = the whole store";import{useState as m8}from"react";import{Fragment as Us1,jsx as h3,jsxs as jc}from"react/jsx-runtime";var Oh="w-full border-2 border-line bg-bg px-4 py-3.5 font-display text-[17px] tracking-[-0.005em] text-fg outline-none transition-colors placeholder:text-fg-dim hover:border-fg-dim focus:border-accent",qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",Ws1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function jb({eyebrow:e,title:t,designCode:a,omitHead:s=!1,editing:c=!1}={}){let[l,r]=m8(""),[o,i]=m8(""),[n,h]=m8(0),[m,u]=m8(""),[d,v]=m8(""),[g,b]=m8(!1),[f,w]=m8(!1),[z,k]=m8(null);async function S(H){if(H.preventDefault(),!(c||g)){if(n<1){k("Choose a star rating.");return}b(!0),k(null);try{await v0.submitReview({authorName:l.trim(),...o.trim()?{email:o.trim()}:{},rating:n,...m.trim()?{title:m.trim()}:{},body:d.trim(),...a?.trim()?{designCode:a.trim()}:{}}),w(!0)}catch{k("Something went wrong \u2014 your review wasn't sent. Please try again.")}finally{b(!1)}}}return h3("section",{className:"relative z-[2] border-t border-line bg-surface",children:jc("div",{className:s?Ws1:qs1,children:[s?null:jc(Us1,{children:[(e??"").trim()&&h3(V1,{text:e??"",scaled:!1,className:"mb-4 block"}),(t??"").trim()&&h3("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(t??"",!1)})]}),f?h3("p",{role:"status",className:"max-w-[560px] font-serif text-[19px] italic leading-[1.6] text-fg-dim",children:"Thanks \u2014 your review will appear once approved."}):jc("form",{className:"flex max-w-[720px] flex-col gap-5",onSubmit:S,children:[jc("div",{className:"grid grid-cols-2 gap-3 max-[640px]:grid-cols-1",children:[h3(Z2,{label:"Name",required:!0,children:h3("input",{type:"text",required:!0,value:l,onChange:H=>r(H.target.value),className:Oh})}),h3(Z2,{label:"Email \u2014 never shown publicly",children:h3("input",{type:"email",value:o,onChange:H=>i(H.target.value),className:Oh})})]}),jc("div",{className:"flex flex-col gap-2",children:[h3(w8,{required:!0,children:"Rating"}),h3("div",{role:"group","aria-label":"Rating",className:"flex gap-1",children:[1,2,3,4,5].map(H=>h3("button",{type:"button","aria-pressed":n>=H,"aria-label":`${H} star${H===1?"":"s"}`,onClick:()=>{h(H),k(null)},className:["cursor-pointer text-[30px] leading-none transition-colors",n>=H?"text-accent":"text-fg-dim/30 hover:text-fg-dim"].join(" "),children:"\u2605"},H))})]}),h3(Z2,{label:"Review title (optional)",children:h3("input",{type:"text",value:m,onChange:H=>u(H.target.value),className:Oh})}),h3(Z2,{label:"Your review",required:!0,children:h3("textarea",{required:!0,rows:5,value:d,onChange:H=>v(H.target.value),className:Oh+" resize-y"})}),z&&h3("p",{role:"alert",className:"font-mono text-[12px] uppercase tracking-[0.18em] text-alert",children:z}),h3("button",{type:c?"button":"submit",disabled:g,className:"cursor-pointer self-start bg-btn px-8 py-4 font-mono text-[14px] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg hover:text-bg disabled:cursor-wait disabled:opacity-60",children:g?"Sending\u2026":"Submit review \u2192"})]})]})})}import{jsx as js1}from"react/jsx-runtime";var Kc={eyebrow:"Your turn",title:"Leave a *review.*"},sO={label:"Review Form",defaultProps:{eyebrow:"",title:"",designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return js1(jb,{eyebrow:a(y(e.eyebrow,Kc.eyebrow,e.puck)),title:a(y(e.title,Kc.title,e.puck)),omitHead:t,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};var cO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",Kc.eyebrow),title:O("Heading",Kc.title),_gSource:x("Reviews"),designCode:e3(q("Design code",Dh))},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.ReviewForm.headRows)};import{StylesIcon as sc1,HashIcon as cc1,ColumnsIcon as lc1}from"efficient-easel/icons";import{useEffect as Ks1,useState as $s1}from"react";function lO(e,t){let[a,s]=$s1(null);return Ks1(()=>{let c=!1;return s(null),v0.listReviews({...e?{limit:e}:{},...t?{designCode:t}:{}}).then(l=>{c||s(l)}),()=>{c=!0}},[e,t]),a}import{Fragment as tc1,jsx as O4,jsxs as Gh}from"react/jsx-runtime";var Ys1=()=>[{id:"sample-review-1",authorName:p("Sample reviewer"),rating:5,title:p("Sample review title"),body:p("Approved customer reviews appear here automatically \u2014 this card is only a preview of the section's shape."),designCode:"",createdAt:""},{id:"sample-review-2",authorName:p("Sample reviewer"),rating:4,title:"",body:p("Reviews are collected by the Review Form section and wait for your approval before they show."),designCode:"",createdAt:""},{id:"sample-review-3",authorName:p("Sample reviewer"),rating:5,title:p("Another sample"),body:p("Set a product design code on this section to show one product's reviews; leave it blank for the whole store."),designCode:"",createdAt:""}];function Xs1(e){let t=new Date(e);return Number.isNaN(t.getTime())?"":t.toLocaleDateString("en-US",{month:"long",year:"numeric"})}function Js1({rating:e}){let t=Math.min(5,Math.max(0,Math.round(e)));return O4("div",{role:"img","aria-label":`${t} out of 5 stars`,className:"flex gap-1 text-[length:var(--size-body,17px)] leading-none",children:Array.from({length:5}).map((a,s)=>O4("span",{"aria-hidden":!0,className:s<t?"text-accent":"text-fg-dim/30",children:"\u2605"},s))})}var Qs1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] py-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]",ec1="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-0 pb-[84px] max-[960px]:px-[min(24px,var(--sf-site-gutter,40px))]";function Kb({look:e,eyebrow:t,title:a,columns:s,limit:c,designCode:l,omitHead:r=!1,editing:o=!1}={}){let i=lO(c??6,l),n=Math.min(3,Math.max(1,s??3)),h=!(i&&i.length>0)&&o,m=i&&i.length>0?i:h?Ys1():[];return!o&&m.length===0?null:O4("section",{className:"relative z-[2] border-t border-line bg-surface",children:Gh("div",{className:r?ec1:Qs1,children:[r?null:Gh(tc1,{children:[(t??"").trim()&&O4(V1,{text:t??"",look:e,className:"mb-4 block"}),(a??"").trim()&&O4("h2",{className:"mb-11 font-heading2 text-[length:min(var(--size-headingMedium,44px),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.02em] text-fg max-[800px]:mb-8 max-[800px]:text-[length:min(var(--size-headingMedium,32px),var(--sf-heading-max,9999px))]",children:Y(a??"",!1)})]}),O4("div",{className:"sf-card grid grid-cols-1 gap-px border border-line bg-line min-[700px]:[grid-template-columns:repeat(var(--rv-cols),minmax(0,1fr))]",style:{"--rv-cols":String(n)},children:m.map(u=>Gh("article",{className:["flex flex-col gap-4 bg-bg p-9 max-[800px]:p-7",h?"opacity-60":""].join(" "),children:[O4(Js1,{rating:u.rating}),u.title.trim()&&O4("h3",{className:"font-display text-[length:var(--size-body,19px)] font-medium uppercase leading-[1.2] tracking-[-0.01em] text-fg",children:u.title}),O4("div",{className:"flex-1 font-serif text-[length:var(--size-body,15px)] leading-[1.65] text-fg-dim",children:z0(u.body).map((d,v)=>O4("p",{className:v?"mt-3":"",children:d},v))}),Gh("footer",{className:"flex items-baseline justify-between gap-4 border-t border-line pt-[18px]",children:[O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg",children:u.authorName}),O4("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-fg-dim",children:Xs1(u.createdAt)})]})]},u.id))})]})})}import{jsx as ac1}from"react/jsx-runtime";var $c={eyebrow:"Reviews",title:"From our *customers.*"},rO={label:"Reviews",defaultProps:{eyebrow:"",title:"",columns:3,limit:6,designCode:""},render:e=>{let t=O1(e.headPlacement)==="own-box",a=s=>t?void 0:s;return ac1(Kb,{look:o4(e.eyebrowLook,"Reviews"),eyebrow:a(y(e.eyebrow,$c.eyebrow,e.puck)),title:a(y(e.title,$c.title,e.puck)),omitHead:t,columns:e.columns,limit:e.limit,designCode:a1(e.designCode)||void 0,editing:e.puck?.isEditing})}};import{jsx as $b}from"react/jsx-runtime";var oO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",$c.eyebrow),eyebrowLook:g1("Eyebrow style",$b(sc1,{}),[...k4],l7("Reviews")),title:O("Heading",$c.title),_gSource:x("Reviews"),limit:s1("Reviews to display",$b(cc1,{}),3,12,1,6),designCode:e3(q("Design code",Dh)),_gStyle:x("Style"),columns:s1("Columns",$b(lc1,{}),1,3,1,3)},resolveFields:(e,{fields:t,parent:a})=>G1(W1(t,a,U1),e.props.headPlacement,Z1.Reviews.headRows)};import{FullWidthIcon as ic1}from"efficient-easel/icons";import{jsx as Yb,jsxs as rc1}from"react/jsx-runtime";function Yc({place:e,sections:t,editing:a=!1,fullWidth:s=!1,navTextCase:c,menuRow:l}){let o=rc1(e==="footer"?"footer":"div",{"data-section-group":e,...e==="header"?{"data-header-nav-case":wZ(c),"data-header-menu-row":CZ(l)??"top"}:null,style:s===!0?{"--sf-site-width":"100vw"}:void 0,children:[a?Yb("p",{className:"px-5 pt-3 font-mono text-[11px] uppercase tracking-[0.15em] text-fg-dim",children:e==="header"?p("Site header \u2014 above every page"):p("Site footer \u2014 below every page")}):null,Yb(t,{minEmptyHeight:120})]});return e==="header"?Yb(uM,{children:o}):o}import{jsx as oc1}from"react/jsx-runtime";var Xb={sections:{type:"slot"}},iO={label:"Site Footer",fields:Xb,render:({sections:e,fullWidth:t,puck:a})=>oc1(Yc,{place:"footer",sections:e,fullWidth:t,editing:a?.isEditing})};import{jsx as nc1}from"react/jsx-runtime";var nO={fields:{fullWidth:l1("Full width",!1,nc1(ic1,{})),sections:Xb.sections}};import{CaseIcon as mc1,ContrastIcon as pc1,FullWidthIcon as uc1,HeightIcon as dc1,LayoutIcon as gc1,StickyIcon as vc1}from"efficient-easel/icons";import{jsx as hc1}from"react/jsx-runtime";var Jb={sections:{type:"slot"}},hO={label:"Site Header",fields:Jb,defaultProps:{sticky:"always",topTextColor:"auto",sections:[]},render:({sections:e,fullWidth:t,navTextCase:a,menuRow:s,puck:c})=>hc1(Yc,{place:"header",sections:e,fullWidth:t,navTextCase:a,menuRow:s,editing:c?.isEditing})};import{jsx as da}from"react/jsx-runtime";var{sectionAccent:fc1}=X9(e=>eb(e)??zZ,"Follow the site theme"),mO={fields:{heightPx:s1("Height",da(dc1,{}),k5.min,k5.max,2,k5.default,"px"),fullWidth:l1("Full width",!1,da(uc1,{})),sectionAccent:fc1,topTextColor:v1("Text color at the top",da(pc1,{}),[{label:"Auto",value:"auto"},{label:"Light",value:"light"},{label:"Dark",value:"dark"}],"auto"),navTextCase:v1("Letters",da(mc1,{}),[{label:"Uppercase",value:"uppercase"},{label:"Capitalised",value:"capitalised"}],"uppercase"),menuRow:v1("Menu row",da(gc1,{}),[{label:"Own row",value:"top"},{label:"Same row",value:"inline"}],"top"),sticky:v1("Sticky header",da(vc1,{}),[{label:"None",value:"none"},{label:"Always",value:"always"},{label:"On scroll up",value:"on_scroll_up"}],"always"),sections:Jb.sections}};import{jsx as qh,jsxs as bc1}from"react/jsx-runtime";var w0={eyebrow:"Section number",title:"Show *us yours.*",body:"Tell people what they get for submitting, and what you do with what they send.",buttonText:"Submit \u2192",consent:"By submitting, you agree to our privacy policy. We never share contact details with third parties."};function Xc(e,t){return e===void 0?t:e}function Qb({eyebrow:e,title:t,body:a,buttonText:s,consent:c,formSlug:l,form:r,editing:o=!1,boxes:i,inBoxes:n=!1,...h}){let m=Xc(e,w0.eyebrow),u=Xc(t,w0.title),d=Xc(a,w0.body),v=Xc(s,w0.buttonText),g=Xc(c,w0.consent),b=H5(l,r),f=v7({form:b,formSlug:l,editing:o}),w=b===void 0,z=!!b||o;return!z&&!m&&!u&&!d?null:n&&i?qh("section",{className:E0(h)?"border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:qh(i,{className:"grid grid-cols-2 items-start gap-[60px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9"})}):bc1("section",{className:E0(h)?"grid grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]":"mx-auto grid max-w-[var(--sf-site-width,1600px)] grid-cols-2 items-end gap-[60px] border-y border-line px-[var(--sf-site-gutter,40px)] py-[120px] max-[1100px]:grid-cols-1 max-[1100px]:gap-9 max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",children:[qh(lA,{eyebrow:m,title:u}),qh(jo,{body:d,buttonLabel:v,consent:g,form:b,submission:f,showForm:z,resolving:w,editing:o})]})}var pO={fields:{_gTextStyle:x("Text style"),...Object.fromEntries(Ko.map(e=>[$o[e],g1(Eu[e],Ke(Eu[e]),[{label:"Section's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),formSlug:E5(),buttonText:T("Button",w0.buttonText),consent:O("Consent line",w0.consent)},resolveFields:(e,{fields:t})=>{let a=e.props.region,s=t,c=["eyebrow","title"],l=["body","formSlug","buttonText","consent"],r=Ko.map(n=>$o[n]),o=a==="head"?c:l,i={};for(let[n,h]of Object.entries(s)){if(n.startsWith("_")){i[n]=h;continue}if(r.includes(n)){a!=="head"&&(i[n]=h);continue}o.includes(n)&&(i[n]=h)}return i}};import{jsx as xc1}from"react/jsx-runtime";var ex={boxes:{type:"slot",allow:["SubmitBox"]}},uO={label:"Photo Submission Form",fields:ex,defaultProps:{eyebrow:w0.eyebrow,title:w0.title,body:w0.body,formSlug:"",buttonText:w0.buttonText,consent:w0.consent},render:e=>xc1(Qb,{boxes:e.boxes,inBoxes:e.layout==="boxes",eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};var dO={fields:{_gContent:x("Content"),eyebrow:T("Eyebrow",w0.eyebrow),title:O("Heading",w0.title),body:O("Body",w0.body),_gForm:x("Form"),formSlug:E5(),_gButton:x("Button"),buttonText:T("Button",w0.buttonText),_gFootnote:x("Footnote"),consent:O("Consent line",w0.consent),boxes:ex.boxes},resolveFields:(e,{fields:t})=>{if(e.props.layout!=="boxes")return t;let{_gContent:a,eyebrow:s,title:c,body:l,_gForm:r,formSlug:o,_gButton:i,buttonText:n,_gFootnote:h,consent:m,...u}=t;return u}};var zc1=["issues","posts"],gO=[{label:"Issues",value:"issues"},{label:"Blog posts",value:"posts"}],tx="issues";function ax(e){return zc1.includes(e)?e:tx}var yc1={issues:["issues"],_gPosts:["posts"],posts:["posts"],limit:["posts"]};function vO(e,t){let a=ax(t),s={...e};for(let[c,l]of Object.entries(yc1))l.includes(a)||delete s[c];return s}import{CategoryIcon as Cc1,HashIcon as kc1}from"efficient-easel/icons";var I0={headNum:A.sectionNumber,headTitle:A.headingAccent,headDesc:"A short description of your newsletter or publication.",kicker:"\u2192 Newsletter",leadTitle:"Get it in the *inbox.*",intro:"Tell readers what they get and how often. One email, straight to the inbox. We will never sell your address.",emailPlaceholder:"your@email.com",submitText:"Subscribe \u2192",subscribedText:"Subscribed \u2713",finePrint:"Approx. 1 email per week \xB7 Unsubscribe in one click",issuesHeading:"Recent issues",archiveText:"View the full archive \u2192",archiveHref:u2.href},fO=()=>["N\xB0 04","N\xB0 03","N\xB0 02","N\xB0 01"].map(e=>({n:e,title:p("Issue title"),small:p("Short description"),date:p("Month YYYY")}));function wc1(e){return e.map((t,a)=>({n:`N\xB0 ${String(e.length-a).padStart(2,"0")}`,title:t.title,small:t.meta,date:t.dateLabel}))}function Wh(e,t){if(e==="issues")return C1(t.issues,fO(),t.puck);let a=t.posts,s=typeof t.limit=="number"&&t.limit>0?t.limit:4,c=Array.isArray(a)?wc1(a.slice(0,s)):[];return C1(c,fO(),t.puck)}import{jsx as bO}from"react/jsx-runtime";var xO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",I0.headNum),headTitle:O("Heading",I0.headTitle),headDesc:O("Body",I0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",I0.kicker),leadTitle:O("Heading",I0.leadTitle),intro:O("Intro",I0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",I0.emailPlaceholder),submitText:q("Submit button",I0.submitText),subscribedText:q("Subscribed button",I0.subscribedText),finePrint:O("Fine print",I0.finePrint),_sRight:Y1("Recent issues"),_gRightCopy:x("Content"),contentType:v1("Type",bO(Cc1,{}),[...gO],tx),issuesHeading:T("Panel heading",I0.issuesHeading),issues:{type:"array",label:"Issues",arrayFields:{n:f1("Number"),title:f1("Title"),small:f1("Sub-line"),date:f1("Date")},getItemSummary:e=>[e?.n,e?.title].filter(Boolean).join(" \xB7 ")||p("Issue")},_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",bO(kc1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",I0.archiveText),archiveHref:H1("Archive link")},resolveFields:(e,{fields:t})=>vO(t,e.props.contentType)};import{HashIcon as Ac1}from"efficient-easel/icons";import{useState as Mc1}from"react";import{jsx as Q3,jsxs as w9}from"react/jsx-runtime";var Sc1="That didn't go through \u2014 please try again.";function Jc({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,archiveText:u,archiveHref:d,source:v=G3.subscribeSection,editing:g=!1,...b}){let[f,w]=Mc1(""),{status:z,submit:k}=ro({source:v,dryRun:g}),S=z==="sent",H=z==="sending",I=z==="error"||z==="invalid",P=(m??[]).filter(_=>(_?.n??"").trim()||(_?.title??"").trim()||(_?.date??"").trim()),D=P.length>0,E=S?i||"Subscribed \u2713":H?"Sending\u2026":o||"Subscribe \u2192";function F(_){_.preventDefault(),!S&&k({email:f})}return w9("section",{className:E0(b)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[140px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-20",children:[Q3(D2,{num:e,title:t?Y(t,!0):void 0,desc:a,accentTracking:"-0.025em"}),w9("div",{className:D?"grid min-h-[460px] grid-cols-[1.1fr_1fr] border border-line max-[1100px]:grid-cols-1":"grid min-h-[460px] grid-cols-1 border border-line",children:[w9("div",{className:D?"flex flex-col justify-center gap-6 border-r border-line px-14 py-16 max-[1100px]:border-r-0 max-[1100px]:border-b max-[1100px]:px-7 max-[1100px]:py-12":"flex flex-col justify-center gap-6 px-14 py-16 max-[1100px]:px-7 max-[1100px]:py-12",children:[s&&Q3(V1,{text:s}),c&&Q3("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(40px,5vw,72px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-[0.95] tracking-[-0.035em]",children:Y(c,!0)}),l&&Q3("p",{className:"max-w-[480px] font-serif text-[length:var(--size-body,19px)] italic leading-[1.5] text-fg-dim",children:M(l,!0)}),w9("form",{className:"mt-2 flex max-w-[520px]",onSubmit:F,children:[Q3("input",{type:"email",placeholder:r||"your@email.com",required:!0,value:f,onChange:_=>w(_.target.value),disabled:S,className:"flex-1 border border-r-0 border-line bg-bg px-5 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.18em] text-fg placeholder:text-fg-dim outline-none focus:border-accent"}),Q3("button",{type:"submit",disabled:S||H,className:"border border-btn bg-btn px-7 py-[18px] font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-btn-ink transition-colors hover:bg-fg hover:border-fg disabled:cursor-default disabled:opacity-90",children:R0(E)})]}),I&&Q3("p",{role:"alert",className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-alert",children:Sc1}),n&&Q3("p",{className:"max-w-[480px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.7] tracking-[0.18em] text-fg-dim",children:M(n)})]}),D&&w9("div",{id:"sub-recent-issues",className:"grid grid-rows-[auto_1fr_auto] gap-6 bg-[var(--journal-panel-bg)] px-11 py-12 scroll-mt-[160px] max-[1100px]:px-7 max-[1100px]:py-9",children:[h&&Q3(V1,{text:h,size:12}),Q3("div",{className:"flex flex-col",children:P.map((_,Z)=>w9("div",{className:["grid grid-cols-[60px_1fr_auto] items-start gap-[18px] border-b border-line py-[18px]",Z===0?"border-t border-line":""].join(" "),children:[Q3("span",{className:"font-mono text-[length:var(--size-label,13px)] tracking-[0.22em] text-accent",children:_.n?M(_.n):""}),w9("span",{className:"font-display text-[length:var(--size-body,16px)] font-medium leading-[1.3] tracking-[-0.01em]",children:[_.title?M(_.title):"",_.small?.trim()&&Q3("small",{className:"mt-1 block font-serif text-[length:var(--size-body,13px)] font-normal italic text-fg-dim",children:M(_.small,!0)})]}),Q3("span",{className:"whitespace-nowrap pt-[3px] text-right font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:_.date?M(_.date):""})]},Z))}),u&&Q3(r0,{href:d||"/journal",className:"flex items-center justify-end gap-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-accent hover:text-fg",children:M(u)})]})]})]})}import{jsx as Lc1}from"react/jsx-runtime";var Y0={...I0,issuesHeading:"Recent posts",archiveText:"Read all posts \u2192"},zO={label:"Subscribe with Posts",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",limit:4,archiveText:"",archiveHref:""},render:e=>{let t=Wh("posts",e);return Lc1(Jc,{headNum:y(e.headNum,Y0.headNum,e.puck),headTitle:y(e.headTitle,Y0.headTitle,e.puck),headDesc:y(e.headDesc,Y0.headDesc,e.puck),kicker:y(e.kicker,Y0.kicker,e.puck),leadTitle:y(e.leadTitle,Y0.leadTitle,e.puck),intro:y(e.intro,Y0.intro,e.puck),emailPlaceholder:a1(e.emailPlaceholder)||Y0.emailPlaceholder,submitText:a1(e.submitText)||Y0.submitText,subscribedText:a1(e.subscribedText)||Y0.subscribedText,finePrint:y(e.finePrint,Y0.finePrint,e.puck),issuesHeading:y(e.issuesHeading,Y0.issuesHeading,e.puck),issues:t,source:G3.subscribeBlogsSection,editing:e.puck?.isEditing,archiveText:y(e.archiveText,Y0.archiveText,e.puck),archiveHref:a1(e.archiveHref)||Y0.archiveHref})}};import{jsx as Hc1}from"react/jsx-runtime";var yO={fields:{_sHead:Y1("Section header"),_gHeadCopy:x("Content"),headNum:T("Number",Y0.headNum),headTitle:O("Heading",Y0.headTitle),headDesc:O("Body",Y0.headDesc),_sLeft:Y1("Newsletter panel"),_gLeftCopy:x("Content"),kicker:T("Eyebrow",Y0.kicker),leadTitle:O("Heading",Y0.leadTitle),intro:O("Intro",Y0.intro),_gForm:x("Signup form"),emailPlaceholder:q("Email placeholder",Y0.emailPlaceholder),submitText:q("Submit button",Y0.submitText),subscribedText:q("Subscribed button",Y0.subscribedText),finePrint:O("Fine print",Y0.finePrint),_sRight:Y1("Recent posts"),_gRightCopy:x("Content"),issuesHeading:T("Panel heading",Y0.issuesHeading),_gPosts:x("Blog posts"),posts:c2(b9),limit:s1("Posts to display",Hc1(Ac1,{}),1,6,1,4),_gArchive:x("Archive link"),archiveText:T("Archive button",Y0.archiveText),archiveHref:H1("Archive link")}};import{jsx as Fc1}from"react/jsx-runtime";var wO={label:"Booking box",defaultProps:{},render:e=>Fc1(Fu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:y(e.eyebrow,A.eyebrow,e.puck),heading:y(e.heading,A.heading,e.puck),intro:y(e.intro,A.body,e.puck),buttonLabel:y(e.buttonLabel,A.button,e.puck),successMessage:y(e.successMessage,A.bookingConfirmation,e.puck),styleStep:e.styleStep,styleName:e.styleName,styleValue:e.styleValue,styleNote:e.styleNote})};import{useEffect as sx,useState as cx}from"react";import{Fragment as Tc1,jsx as H0,jsxs as k3}from"react/jsx-runtime";var CO="border-b border-line bg-transparent py-3.5 font-display text-[length:var(--size-body,18px)] tracking-[0.01em] text-fg outline-none transition-colors focus:border-accent";function lx({routingNumber:e,routingTagline:t,groups:a,formNumber:s,formHeading:c,metaLines:l,showOther:r=!0,otherLabel:o="Other",otherNoteTitle:i,otherNoteBody:n,buttonText:h,consent:m,channels:u,formSlug:d,form:v,editing:g,initialActiveId:b,onActiveChange:f,reasonExtras:w,...z}){let k=[...a.map(U=>U.id),...r?[P8]:[]],S=b&&k.includes(b)?b:k[0]??P8,[H,I]=cx(S);sx(()=>{k.includes(H)||I(k[0]??P8)},[k.join("|")]),sx(()=>{b&&k.includes(b)&&I(b)},[b]);let P=U=>{I(U),E(null),f?.(U)},[D,E]=cx(null),F=(u??[]).filter(U=>!U.hidden),_=F.find(U=>U.groupId===H)?.value??null,Z=D??_,G=H5(d,v),V=v7({form:G,formSlug:d,editing:g}),j=G===void 0,N=!!G||!!g,[Q,W]=cx(!1);return sx(()=>{let U=()=>W(document.documentElement.getAttribute("data-theme")==="light");U();let i1=new MutationObserver(U);return i1.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme"]}),()=>i1.disconnect()},[]),k3(Tc1,{children:[k3("section",{className:E0(z)?"border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]":"mx-auto max-w-[var(--sf-site-width,1600px)] border-b border-line px-[var(--sf-site-gutter,40px)] py-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]",style:Q?void 0:{background:"var(--section-bg)"},children:[(e||t)&&k3("div",{className:"mb-6 flex items-center gap-6 border-b border-line pb-6",children:[e&&H0(V1,{text:e}),t&&H0("span",{className:"font-display text-[length:var(--size-body,14px)] uppercase tracking-[0.04em] text-fg-dim",children:M(t)})]}),H0("div",{className:"sf-card grid grid-cols-4 gap-[2px] border border-line bg-line max-[1100px]:grid-cols-2 max-[700px]:grid-cols-1",children:a.map(U=>{let i1=H===U.id;return k3("button",{type:"button",onClick:()=>{P(U.id),typeof window<"u"&&window.matchMedia("(max-width: 1100px)").matches&&document.getElementById("contact-form")?.scrollIntoView({behavior:n6(),block:"start"})},className:["flex min-h-[240px] cursor-pointer flex-col gap-3.5 px-7 py-9 text-left transition-colors",i1?"bg-surface outline outline-2 -outline-offset-2 outline-accent":"bg-bg hover:bg-surface"].join(" "),children:[U.eyebrow&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:U.eyebrow}),H0("h3",{className:"whitespace-pre-line font-heading3 text-[length:var(--size-headingSmall,26px)] font-medium uppercase leading-[1.05] tracking-[-0.02em]",children:U.title}),U.copy&&H0("p",{className:"mt-auto font-display text-[length:var(--size-body,14px)] leading-[1.5] text-fg-dim",children:U.copy}),U.response&&k3("div",{className:"mt-2 flex justify-between border-t border-line pt-3.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:[H0("span",{children:"Response"}),H0("strong",{className:"font-normal text-fg",children:U.response})]})]},U.id)})})]}),(N||F.length>0)&&k3("section",{id:"contact-form",className:["mx-auto grid max-w-[var(--sf-site-width,1600px)] scroll-mt-[80px] gap-20 border-b border-line px-[var(--sf-site-gutter,40px)] py-20 max-[1100px]:grid-cols-1 max-[1100px]:gap-[60px] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))] max-[1100px]:py-[60px]",N&&F.length>0?"grid-cols-[1.3fr_1fr]":"grid-cols-1"].join(" "),children:[N&&k3("div",{children:[k3("div",{className:"mb-7 flex items-end justify-between gap-6 border-b border-line pb-6",children:[k3("div",{children:[s&&H0("div",{className:"pb-2 font-mono text-[length:var(--size-label,13px)] uppercase tracking-[0.3em] text-accent",children:M(s)}),c&&H0("h2",{className:"font-heading2 text-[length:min(var(--size-headingMedium,clamp(36px,4vw,56px)),var(--sf-heading-max,9999px))] font-medium uppercase leading-none tracking-[-0.03em]",children:Y(c,!0)})]}),!!(l&&l.length)&&H0("div",{className:"text-right font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.8] tracking-[0.22em] text-fg-dim max-[700px]:text-left",children:l.map((U,i1)=>H0("div",{children:U},i1))})]}),G?V.done?H0("div",{className:"border border-accent bg-accent/[0.08] p-8 font-display text-[length:var(--size-body,15px)] leading-[1.6] text-fg-dim",children:Ze(G,"Thanks \u2014 we've received your message.")}):k3("form",{className:"grid grid-cols-2 gap-5 max-[700px]:grid-cols-1",onSubmit:V.handleSubmit,children:[G.fields.map(U=>H0(Z2,{label:U.label,required:U.required,className:U.type==="textarea"||U.type==="checkbox"?"col-span-2 max-[700px]:col-span-1":void 0,children:H0(f7,{field:U,value:V.valueOf(U.key),onChange:i1=>V.set(U.key,i1),className:U.type==="textarea"?`${CO} min-h-[140px] resize-y leading-[1.5]`:U.type==="checkbox"?"size-4 self-start accent-accent":CO})},U.key)),k3("div",{className:"col-span-2 flex flex-col gap-2 max-[700px]:col-span-1",children:[H0(w8,{required:!0,children:"Reason"}),k3("div",{className:"mt-1 flex flex-wrap gap-2",children:[a.map(U=>{let i1=H===U.id;return H0("button",{type:"button",onClick:()=>P(U.id),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",i1?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:U.title},U.id)}),r&&H0("button",{type:"button",onClick:()=>P(P8),className:["cursor-pointer border px-3.5 py-2.5 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] transition-colors",H===P8?"border-accent bg-accent text-bg":"border-line text-fg-dim hover:text-fg"].join(" "),children:R0(o)})]})]}),w?.(H),H===P8&&(i||n)&&k3("div",{className:"sf-card col-span-2 flex flex-col gap-2 border border-line bg-bg/40 p-5 max-[700px]:col-span-1",children:[i&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:M(i)}),n&&z0(n).map((U,i1)=>H0("p",{className:"font-display text-[length:var(--size-body,15px)] leading-[1.55] text-fg-dim",children:M(U)},i1))]}),H0(De,{value:V.honeypot,onChange:V.setHoneypot}),V.error&&H0("p",{role:"alert",className:"col-span-2 font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.18em] text-alert max-[700px]:col-span-1",children:V.error}),k3("div",{className:"col-span-2 mt-5 flex flex-wrap items-center justify-between gap-6 border-t border-line pt-6 max-[700px]:col-span-1 max-[700px]:flex-col max-[700px]:items-stretch",children:[m&&H0("span",{className:"max-w-[380px] font-mono text-[length:var(--size-label,12px)] uppercase leading-[1.6] tracking-[0.18em] text-fg-dim",children:M(m)}),H0("button",{type:g?"button":"submit",disabled:V.submitting,className:"cursor-pointer bg-btn px-8 py-[18px] font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.32em] text-btn-ink transition-colors hover:bg-fg disabled:cursor-wait disabled:opacity-60 max-[700px]:w-full",children:V.submitting?"Sending\u2026":h?R0(h):"Send Message \u2192"})]})]}):H0("p",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.22em] text-fg-dim",children:j?p("Loading form\u2026"):p("Choose a form in the inspector, under Message form \u2014 until then this column is hidden on the live page and no message can be sent.")})]}),F.length>0&&H0("aside",{className:"flex flex-col gap-0 max-[1100px]:hidden",children:F.map((U,i1)=>{let y1=Z===U.value,c1=!!!U.groupId;return k3("div",{onClick:c1?()=>E(U.value):void 0,className:["relative flex flex-col gap-2.5 border-b border-line border-l-2 px-5 py-7 transition-all",c1?"cursor-pointer border-t-2 border-t-accent":"",y1?"border-l-accent pl-6":c1?"border-l-transparent hover:bg-accent/[0.04]":"border-l-transparent"].join(" "),style:y1?{background:"color-mix(in oklab, var(--accent) 8%, transparent)"}:void 0,children:[y1&&k3("span",{className:"absolute right-[18px] top-6 flex flex-col items-end gap-0.5 text-right",children:[H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.24em] text-accent",children:"\u2192 Message routes here"}),H0("span",{className:"font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.18em] text-fg-dim",children:"Other inboxes filter as spam"})]}),H0("span",{className:["font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.3em] transition-colors",y1?"text-fg":"text-accent"].join(" "),children:U.label}),c1?H0("a",{href:U.href,onClick:b1=>b1.stopPropagation(),className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em] transition-colors hover:text-accent",y1?"text-accent":"text-fg"].join(" "),children:U.value}):H0("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium leading-[1.2] tracking-[-0.02em]",y1?"text-accent":"text-fg"].join(" "),children:U.value}),U.sub&&H0("span",{className:"font-mono text-[length:var(--size-label,12px)] uppercase tracking-[0.2em] text-fg-dim",children:U.sub})]},`${U.value}-${i1}`)})})]})]})}import{jsx as Pc1}from"react/jsx-runtime";var kO={label:"Contact Form",defaultProps:{routingNumber:f0.routingNumber,routingTagline:f0.routingTagline,groups:f0.groups,formSlug:"",formNumber:f0.formNumber,formHeading:f0.formHeading,metaItems:f0.metaLines.map(e=>({text:e})),showOther:f0.showOther,otherLabel:f0.otherLabel,otherNoteTitle:f0.otherNoteTitle,otherNoteBody:f0.otherNoteBody,buttonText:f0.buttonText,consent:f0.consent,channels:f0.channels},render:e=>Pc1(lx,{routingNumber:y(e.routingNumber,f0.routingNumber,e.puck),routingTagline:y(e.routingTagline,f0.routingTagline,e.puck),groups:e.groups??[],formNumber:y(e.formNumber,f0.formNumber,e.puck),formHeading:y(e.formHeading,f0.formHeading,e.puck),metaLines:(e.metaItems??[]).map(t=>t?.text??"").filter(Boolean),showOther:e.showOther,otherLabel:a1(e.otherLabel)||f0.otherLabel,otherNoteTitle:y(e.otherNoteTitle,f0.otherNoteTitle,e.puck),otherNoteBody:y(e.otherNoteBody,f0.otherNoteBody,e.puck),buttonText:a1(e.buttonText)||f0.buttonText,consent:y(e.consent,f0.consent,e.puck),channels:e.channels??[],formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as MO}from"react/jsx-runtime";function rx({thickness:e=1,lengthPct:t=100,hideOnMobile:a=!1}){return MO("div",{className:`col-span-full w-full basis-full ${a?"max-[800px]:hidden":""}`,"aria-hidden":"true",children:MO("div",{className:"bg-line",style:{height:`${e}px`,width:`${t}%`}})})}import{jsx as Ec1}from"react/jsx-runtime";var SO={label:"Divider",defaultProps:{thickness:1,lengthPct:100,hideOnMobile:!1},render:({thickness:e,lengthPct:t,hideOnMobile:a})=>Ec1(rx,{thickness:e,lengthPct:t,hideOnMobile:a})};import{useState as Vc1}from"react";import{jsx as ox,jsxs as LO}from"react/jsx-runtime";function ix({heading:e,placeholder:t="Email address",buttonLabel:a="Subscribe"}){let{open:s}=Up(),[c,l]=Vc1("");return LO("div",{className:"w-full min-w-0",children:[e?ox("h4",{className:"mb-3 font-mono text-[13px] uppercase tracking-[0.2em] text-fg-dim",children:Y(e,!1)}):null,LO("form",{className:"flex max-w-[320px] flex-wrap items-stretch gap-2",onSubmit:r=>{r.preventDefault(),s({email:c.trim(),source:G3.footerSignup})},children:[ox("input",{type:"email",placeholder:t,value:c,onChange:r=>l(r.target.value),className:"w-0 min-w-[7rem] flex-1 border border-line bg-transparent px-3 py-2 text-[13px] text-fg placeholder:text-fg-dim/70 focus:border-accent focus:outline-none","aria-label":p2(e??"")||"Email address"}),ox("button",{type:"submit",className:"shrink-0 border border-btn bg-btn px-4 py-2 text-[13px] font-medium text-btn-ink transition-opacity hover:opacity-90",children:R0(a)})]})]})}import{jsx as Nc1}from"react/jsx-runtime";var AO={label:"Email Form",defaultProps:{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"},render:({heading:e,placeholder:t,buttonLabel:a,puck:s})=>Nc1(ix,{heading:$4(e,"Join our email list",s),placeholder:t||void 0,buttonLabel:a||void 0})};import{jsx as Uh,jsxs as Ic1}from"react/jsx-runtime";var _c1={left:"items-start text-left",center:"items-center text-center",right:"items-end text-right"};function nx({tagline:e,widthPct:t=100,align:a="left",reverse:s=!0,padTop:c=0,padRight:l=0,padBottom:r=0,padLeft:o=0,editing:i=!1}){let{src:n,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d}=Ll(),v=Math.round(m7*(t/100)),g={...c?{paddingTop:c}:{},...l?{paddingRight:l}:{},...r?{paddingBottom:r}:{},...o?{paddingLeft:o}:{}};return Ic1("div",{className:`flex min-w-0 flex-col ${_c1[a]} [container-type:inline-size]`,style:g,children:[Uh(L1,{href:"/","aria-label":d?`${d} home`:"Home",className:"inline-flex max-w-full overflow-x-clip",children:Uh(xe,{variant:"footer",sizePx:v,src:n,reverse:s,reversedSrc:h,inkIsDark:m,wordmark:u,siteName:d,fitWordmarkToContainer:!0,fitFloorPx:OC})}),e?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] leading-[1.5] text-fg-dim",children:M(e)}):i?Uh("p",{className:"mt-3.5 max-w-[280px] text-[13px] italic leading-[1.5] text-fg-dim/60",children:p("Add a short brand tagline \u2192")}):null]})}import{jsx as Rc1}from"react/jsx-runtime";var HO={label:"Logo",defaultProps:{widthPct:100,align:"left",reverse:"auto",padTop:0,padRight:0,padBottom:0,padLeft:0},render:({tagline:e,widthPct:t,align:a,reverse:s,padTop:c,padRight:l,padBottom:r,padLeft:o,puck:i})=>Rc1(nx,{tagline:e||void 0,widthPct:t,align:a,reverse:s!=="off",padTop:c,padRight:l,padBottom:r,padLeft:o,editing:i?.isEditing})};import{jsx as Bc1}from"react/jsx-runtime";var FO={label:"Menu",defaultProps:{accordionMobile:!1,showDividers:!1},render:({menu:e,heading:t,accordionMobile:a,showDividers:s,puck:c})=>Bc1(Ra,{menu:e,heading:t||void 0,accordionMobile:a,showDividers:s,editing:c?.isEditing})};import{jsx as Zc1}from"react/jsx-runtime";var TO={label:"Social Logos",defaultProps:{iconStyle:oe,iconSize:"medium",align:"start",gap:Wc},render:({iconStyle:e,iconSize:t,align:a,gap:s,puck:c})=>Zc1(qb,{iconStyle:e,iconSize:t,align:a,gap:s,editing:c?.isEditing})};import{jsx as Oc1}from"react/jsx-runtime";var Dc1={sm:"text-[12px]",md:"text-[13px]",lg:"text-[15px]"};function hx({text:e,size:t="md",tone:a="default",editing:s=!1}){let c=e||(s?p("Add a line of footer text."):"");return c?Oc1("p",{className:`${Dc1[t]} leading-[1.5] ${a==="dim"?"text-fg-dim":"text-fg"}`,children:M(c)}):null}import{jsx as Gc1}from"react/jsx-runtime";var PO={label:"Text",defaultProps:{size:"md",tone:"default"},render:({text:e,size:t,tone:a,puck:s})=>Gc1(hx,{text:e||void 0,size:t,tone:a,editing:s?.isEditing})};import{jsx as qc1}from"react/jsx-runtime";var EO={label:"Form",defaultProps:{formSlug:"",heading:"",intro:"",submitText:"",finePrint:""},render:e=>qc1(Bp,{formSlug:a1(e.formSlug)||void 0,heading:a1(e.heading)||void 0,intro:a1(e.intro)||void 0,submitText:a1(e.submitText)||void 0,finePrint:a1(e.finePrint)||void 0,form:e.form,editing:e.puck?.isEditing})};import{jsx as Wc1}from"react/jsx-runtime";var VO={label:"Legal Line",render:()=>Wc1(Gc,{})};import{jsx as Uc1}from"react/jsx-runtime";var NO={label:"Submit box",defaultProps:{},render:e=>Uc1(Vu,{region:typeof e.region=="string"?e.region:void 0,eyebrow:e2(e.eyebrow,w0.eyebrow,e.puck),title:e2(e.title,w0.title,e.puck),body:e2(e.body,w0.body,e.puck),buttonText:e2(e.buttonText,w0.buttonText,e.puck),consent:e2(e.consent,w0.consent,e.puck),formSlug:a1(e.formSlug)||void 0,form:e.form,editing:e.puck?.isEditing,styleField:e.styleField,styleTick:e.styleTick,styleThanks:e.styleThanks})};import{jsx as jc1}from"react/jsx-runtime";var _O={label:"Subscribe Form",defaultProps:{headNum:"",headTitle:"",headDesc:"",kicker:"",leadTitle:"",intro:"",emailPlaceholder:"",submitText:"",subscribedText:"",finePrint:"",issuesHeading:"",issues:[],archiveText:"",archiveHref:""},render:({headNum:e,headTitle:t,headDesc:a,kicker:s,leadTitle:c,intro:l,emailPlaceholder:r,submitText:o,subscribedText:i,finePrint:n,issuesHeading:h,issues:m,contentType:u,posts:d,limit:v,archiveText:g,archiveHref:b,puck:f})=>jc1(Jc,{headNum:y(e,I0.headNum,f),headTitle:y(t,I0.headTitle,f),headDesc:y(a,I0.headDesc,f),kicker:y(s,I0.kicker,f),leadTitle:y(c,I0.leadTitle,f),intro:y(l,I0.intro,f),emailPlaceholder:a1(r)||I0.emailPlaceholder,submitText:a1(o)||I0.submitText,subscribedText:a1(i)||I0.subscribedText,finePrint:y(n,I0.finePrint,f),issuesHeading:y(h,I0.issuesHeading,f),issues:Wh(ax(u),{issues:m,posts:d,limit:v,puck:f}),source:G3.subscribeSection,editing:f?.isEditing,archiveText:y(g,I0.archiveText,f),archiveHref:a1(b)||I0.archiveHref})};var IO={AppointmentBooking:xD,BookingBox:wO,ContactRouting:kO,Events:VD,Footer:BD,FooterDivider:SO,FooterEmailSignup:AO,FooterGroup:qD,FooterLogo:HO,FooterMenu:FO,FooterSocial:TO,FooterText:PO,Form:EO,LegalLineBlock:VO,ReviewForm:sO,Reviews:rO,[F9]:iO,[H9]:hO,SubmitBox:NO,SubmitBuild:uO,Subscribe:_O,SubscribeBlogs:zO};var Kc1={AppointmentBooking:zD,BookingBox:yD,ContactRouting:CD,Events:ND,Footer:ZD,FooterDivider:DD,FooterEmailSignup:OD,FooterGroup:WD,FooterLogo:UD,FooterMenu:$D,FooterSocial:QD,FooterText:eO,Form:tO,LegalLineBlock:aO,ReviewForm:cO,Reviews:oO,[F9]:nO,[H9]:mO,SubmitBox:pO,SubmitBuild:dO,Subscribe:xO,SubscribeBlogs:yO},h2=et(IO,Kc1);import{jsx as O6,jsxs as DO}from"react/jsx-runtime";var mx=e=>e==="sentence"?"none":void 0,D6=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Qc=e=>typeof e=="string"&&e?e:void 0,$c1=["font","color","size","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function jh(e){let t={};for(let a of $c1)e[a]!==void 0&&(t[a]=e[a]);return t}function Yc1(e){let t=e.fonts,a=e.sizes,s=e.typography,c=Oz(e.compression),l=(o,i)=>({id:`heading-${o}`,kind:"heading",name:`Heading ${o}`,values:jh(i)}),r=(o,i={})=>({id:`body-${o}`,kind:"body",name:`Body ${o}`,values:jh(i)});return[l(1,{font:Qc(t.heading),size:D6(a.headingLarge),weight:D6(s.weight),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case),largestSize:D6(s.maxPx)}),l(2,{font:Qc(t.heading2),size:D6(a.headingMedium),weight:D6(s.weight2),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case2)}),l(3,{font:Qc(t.heading3),size:D6(a.headingSmall),weight:D6(s.weight3),lineHeight:c.lineHeight,letterSpacing:c.letterSpacing,letterCase:mx(s.case3)}),r(1,{font:Qc(t.body),size:D6(a.body)}),r(2),r(3),r(4),r(5,{font:Qc(t.label),size:D6(a.label)})]}function RO(e){return Array.isArray(e)&&e.every(t=>t&&typeof t=="object"&&typeof t.id=="string"&&(t.kind==="heading"||t.kind==="body")&&typeof t.name=="string")?e.map(t=>({...t,values:jh(t.values??{})})):null}function BO(e){return RO(e)??[]}function Dm0(e,t){let a=Yc1(t),s=RO(e);return s?s.map(c=>({...c,values:jh({...Xc1(a,c.id),...c.values})})):a}var Xc1=(e,t)=>e.find(a=>a.id===t)?.values??{};function Om0(e,t){let a=u=>e.find(d=>d.id===u)?.values??{},s=a("heading-1"),c=a("heading-2"),l=a("heading-3"),r=a("body-1"),o=a("body-5"),i=t.fonts,n=t.sizes,h=t.typography,m=u=>u==="none"?"sentence":"authored";return{fonts:{...i,heading:s.font??i.heading,heading2:c.font??s.font??i.heading2,heading3:l.font??s.font??i.heading3,body:r.font??i.body,label:o.font??i.label},sizes:{...n,headingLarge:s.size??null,headingMedium:c.size??null,headingSmall:l.size??null,body:r.size??null,label:o.size??null},compression:t.compression,typography:{...h,case:m(s.letterCase),weight:s.weight??null,maxPx:s.largestSize??null,weight2:c.weight??null,weight3:l.weight??null,case2:m(c.letterCase),case3:m(l.letterCase)}}}function Jc1(e){switch(e.id){case"heading-1":return"font-display";case"heading-2":return"font-heading2";case"heading-3":return"font-heading3";case"body-1":return"font-body";case"body-5":return"font-mono";default:return`font-${e.id}`}}function Qc1(e){return e==="accent"?"var(--accent)":e==="text"?"var(--fg)":e==="labels"?"var(--fg-dim)":/^#[0-9a-f]{6}$/i.test(e)?e:null}function el1(e){let t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${t}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function ZO(e){let t=[];for(let a of e){let s=a.values,c=`.${Jc1(a)}`,l=[],r=s.font!==void 0?zz.find(n=>n.key===s.font)?.cssVar:void 0;if(r&&l.push(`font-family: var(${r})`),s.size!==void 0){let n=s.largestSize!==void 0?Math.min(s.size,s.largestSize):s.size;l.push(`font-size: ${n}px`)}let o=s.color!==void 0?Qc1(s.color):null;o&&l.push(`color: ${o}`),s.italic===!0&&l.push("font-style: italic"),s.weight!==void 0&&l.push(`font-weight: ${s.weight}`);let i=[];s.lineHeight!==void 0&&i.push(`line-height: ${s.lineHeight}`),s.letterSpacing!==void 0&&i.push(`letter-spacing: ${s.letterSpacing}em`),a.kind==="body"&&l.push(...i),s.letterCase!==void 0&&l.push(`text-transform: ${s.letterCase==="upper"?"uppercase":s.letterCase==="lower"?"lowercase":"none"}`),s.paragraphSpacing&&l.push(`--sf-part-para: ${s.paragraphSpacing}px`),l.length&&t.push(`${c} { ${l.join("; ")} }`),a.kind==="heading"&&i.length&&t.push(`${c}, ${c}:is(h1, h2, h3, h4) { ${i.join("; ")} }`),s.paragraphSpacing&&t.push(...el1(c))}return t.join(`
|
|
154
|
+
`)}import{useEasel as tl1}from"efficient-easel/easel";var al1="color-mix(in oklab, var(--bg) 40%, #ffffff)",sl1="12vh";function cl1({style:e,frameClass:t,children:a}){let{appState:s}=tl1(d=>d),c=s.data.content,l=s.data.root;if(aC(c))return O6("div",{className:`sf-themed-content${t?` ${t}`:""}`,style:{...e,background:al1,minHeight:"100vh",paddingBottom:sl1},children:O6("div",{style:{background:"var(--bg)"},children:a})});let r=Sa(c)&&hr(l,c),o=Sa(c)?lC(l,c):null,i=o?{[cC]:o}:null,n=cy(l?.widthChoice),h=n?{[sy]:n}:null,m=r?null:MZ(c),u=m?{[yh]:m}:null;return O6("div",{className:`sf-themed-content${r?` ${nr}`:""}${t?` ${t}`:""}`,style:e,...u,...i,...h,children:O6("div",{style:{background:"var(--bg)",minHeight:"100%"},children:a})})}function OO(e){return{frameClass:void 0,style:{"--sf-page-width":ya}}}function px({w:e,children:t}){let{frameClass:a,style:s}=OO(e);return O6("div",{className:a,style:s,children:t})}function ux({propsTheme:e,propsFonts:t,propsCornerStyle:a,propsCornerRadiusPx:s,propsHeadingCompression:c,propsHeadingTypography:l,widthMode:r,fullWidth:o,pageWidth:i,pageBackground:n,chromeInheritsSiteBackground:h,suppressPreviewNav:m,footer:u,overlay:d,children:v}){let{theme:g,fonts:b,sizes:f,cornerRadiusPx:w,cardShadow:z,shadowColor:k,cardGap:S,hoverEffect:H,headingCompression:I,siteWidth:P,siteGutter:D,blockGap:E,headingTypography:F,heroBackgroundFollowsWidth:_,photographyGrayscale:Z,textStyles:G,themeFromDocument:V}=I3(),j=V?e:g,N=V?t:b,Q=V?void 0:f,W=V?s===void 0?Nz[Vz(a)]:_z(s):w,U=V?c:I,i1=ZO(BO(V?void 0:G)),y1=V?l:F,K=OO({widthMode:r,fullWidth:o,pageWidth:i}),c1={...za(j),...zl(Q),...Gz(y1),...K.style,...h?{}:ym(n)};return DO("div",{className:"sf-theme-surfaces sf-theme-accent",style:{...ul(N),...vl(j),...fl(j),...bl(j),...xl(j),...pm(W),...$z(pm(W)),...Zz(V?void 0:z,V?void 0:k,V?void 0:H),...Xz(V?void 0:P),...Jz(V?void 0:D),...qy(V?void 0:E),...ay(V?void 0:_)},"data-sf-headings":Dz(U),"data-sf-card-shadow":V?void 0:Iz(z),"data-sf-card-gap":V?void 0:Rz(S),"data-sf-card-hover":V?void 0:Bz(H),onClickCapture:m,children:[i1?O6("style",{"data-sf-text-styles":"",dangerouslySetInnerHTML:{__html:i1}}):null,DO(ZT,{grayscale:V?void 0:Z,children:[O6(cl1,{style:c1,frameClass:K.frameClass,children:v}),u,d]})]})}var dx=e=>{e.target?.closest?.("a")&&e.preventDefault()};function GO({pageBackground:e,inheritBackground:t=!1,w:a,children:s}){return O6("div",{style:{...t?{}:ym(e),background:"var(--bg)",minHeight:"100%",overflowX:"clip"},children:O6(px,{w:a,children:s})})}import{jsx as vx}from"react/jsx-runtime";import{ListIcon as ll1,PaddingTopIcon as rl1}from"efficient-easel/icons";function ol1(){return{type:"custom",render:({value:e,onChange:t})=>vx(Bh,{value:e==="full"?"full":e==="content"?"content":void 0,resolved:"content",followsLabel:p("Follows the site"),hint:p("Whether this page sits on the site's content column, or runs edge to edge."),onChange:a=>t(a)})}}var il1=[{label:"Auto",value:"auto"},{label:"Shared",value:"shared"},{label:"Its own",value:"own"}],UO={pageBackground:nw(),topSpace:g1("Top space",vx(rl1,{}),il1,sC),widthChoice:ol1()},nl1="Record type",gx=new Map,qO=-1;function hl1(e){qO!==pp()&&(gx.clear(),qO=pp());let t=mp(),a=t.some(c=>c.key===e)?"":e,s=gx.get(a);return s||(s=g1(nl1,vx(ll1,{}),[...t.map(c=>({label:c.label,value:c.key})),...a?[{label:a,value:a}]:[]],Pe),gx.set(a,s)),s}var WO=new WeakMap;function jO(e,t){if(!M2()||mp().length<2||Rr in e)return e;let a=hl1(Br(t)),s=WO.get(e);if(s&&s.row===a)return s.fields;let c={[Rr]:a,...e};return WO.set(e,{row:a,fields:c}),c}function ml1(e,t){let a=wm(t),s=a?a.inner:t;if(om(s))return!1;if(s?.type==="slot")return!0;let c=Ay(s);return c==="always"?!1:c==="authored-copy"?Mz(e):!0}function KO(e){let t=wm(e),a=t?t.inner:e,s=om(a);return s?Xy(a)?0:s.level:null}function pl1(e,t,a){return a?t===0&&e===Em.Design||t===1&&e===uw.Content:!1}var ul1=new WeakMap,dl1=new WeakMap;function Kh(e,t="section"){let a=t==="page"?dl1:ul1,s=a.get(e);if(s)return s;let c=Object.entries(e).map(([m,u])=>({key:m,field:u,level:KO(u),draws:ml1(m,u)||t==="page"&&KO(u)===null&&nm(m,u)})),l=t==="section"&&c.some(m=>nm(m.key,m.field)),r=new Set;for(let m=0;m<c.length;m++){let u=c[m].level;if(u===null)continue;let d=0;for(let v=m+1;v<c.length;v++){let g=c[v].level;if(g!==null&&g<=u)break;c[v].draws&&(d+=1)}d===0&&!pl1(c[m].key,u,l)&&r.add(c[m].key)}let o=l&&bw(e),i=o&&!(Em.Design in e);if(!r.size&&!i)return a.set(e,e),e;let n={};for(let m of c)r.has(m.key)||(n[m.key]=m.field);let h=re(o?fw(n):n);return a.set(e,h),h}var $O={name:"catalogueLabel",applies:e=>Object.prototype.hasOwnProperty.call(xa,e),draw(e,t){e.label=xa[t]}};import{jsx as gl1}from"react/jsx-runtime";var YO={name:"sectionGroupAllow",applies:e=>ml.includes(e),panel(e,t,a,s){let c=e.fields?.sections;c&&(c.allow=[...s.sectionGroupAllow])}},fx=new Set(Object.keys(Z1)),XO={name:"openSlotDisallow",applies:()=>!0,panel(e,t,a,s){let c=s.contentSectionKeys;if(e?.fields)for(let l of Object.values(e.fields)){let r=l;if(r.type!=="slot"||r.allow)continue;let o=t==="Flex"?c.filter(i=>!fx.has(i)):c;r.disallow=Array.from(new Set([...r.disallow??[],...o]))}}};var vl1=Array.from(new Set([...Ox.map(e=>e.type),...fx,...rl,"GalleryItem"])),JO={name:"cellWidth",applies:(e,t,a)=>vl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.cellWidthFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=Pi(r.appState,l.props?.id);if(i===void 0||bz(i))return o;let n={...o};for(let h of Object.keys(s()))delete n[h];return n}},draw(e){let t=e.render;e.render=a=>{let s=vz(a.gridSpan),c=t(a);return s==null?c:gl1("div",{className:"sf-grid-cell",[fz]:String(s),children:c})}}};import{jsx as QO}from"react/jsx-runtime";var eG={name:"clickableParts",applies:(e,t,a)=>typeof a?.render=="function",draw(e,t){let a=e,s=a.render;a.render=c=>{let l=E9(c);return c.puck?.isEditing?QO(pH,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):Object.keys(l).length?QO(Wz,{needles:im(a.fields,c),styles:l,type:t,children:s(c)}):s(c)}}};import{jsx as tG}from"react/jsx-runtime";var aG={name:"sectionCorners",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.sectionShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=yl(a.sectionCorners,a.sectionCornerSides),c=t(a),l=E0(a)?`sf-section-corners ${jz}`:"sf-section-corners";return s?tG("div",{className:l,style:{display:"contents",...s},children:c}):c}}},fl1=["CollectionCard"],sG={name:"cardCorners",applies:(e,t,a)=>fl1.includes(e)&&!!a&&typeof a.render=="function",panel(e,t,a){e.fields={...e.fields,...a.cardShapeFields()}},draw(e){let t=e.render;e.render=a=>{let s=Kz(a.cardCorners,a.cardCornerSides),c=t(a);return s?tG("div",{className:"sf-card-corners",style:{display:"contents",...s},children:c}):c}}};var cG={name:"emptyHeadings",applies:()=>!0,panel(e,t,a){let s=a.dropEmptyHeadings,c=e.resolveFields;e.resolveFields=c?(l,r)=>{let o=c(l,r);return o instanceof Promise?o.then(i=>s(i??r.fields)):s(o??r.fields)}:(l,r)=>s(r.fields)}};var lG={name:"hiddenNodes",applies:(e,t,a)=>typeof a?.render=="function",draw(e){let t=e.render;e.render=a=>a._hidden?null:t(a)}};import{jsx as rG,Fragment as bl1,jsxs as xl1}from"react/jsx-runtime";function zl1({anchor:e}){let t=fm(typeof e=="string"?e:"");return t?rG("span",{id:t,className:"sf-section-anchor","aria-hidden":"true"}):null}var oG={name:"sectionAnchor",applies:(e,t,a)=>t.isSection(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.anchorFields;e.fields={...e.fields,...s()}},draw(e){e.defaultProps={...e.defaultProps,anchor:""};let t=e.render;e.render=a=>xl1(bl1,{children:[rG(zl1,{anchor:a.anchor}),t(a)]})}};import{jsx as Cl1}from"react/jsx-runtime";import{jsx as yl1}from"react/jsx-runtime";import{useEffect as wl1,useRef as iG}from"react";function nG({motion:e,editing:t,children:a}){let s=iG(null),c=iG(e);return wl1(()=>{let l=s.current;if(l){if(t){if(c.current===e)return;c.current=e,py(l);return}return my(l)}},[e,t]),yl1("div",{ref:s,[hy]:e,children:a})}var hG={name:"sectionAnimation",applies:(e,t,a)=>t.isSection(e)&&!uy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.sectionAnimationFields;e.fields={...e.fields,...s()}},draw(e){let t=e,a=t.render;t.render=s=>{let c=ny(s.sectionAnimation);return c?Cl1(nG,{motion:c,editing:!!s.puck?.isEditing,children:a(s)}):a(s)}}};import{jsx as kl1}from"react/jsx-runtime";var uG={name:"sectionHeight",applies:(e,t,a)=>t.isSection(e)&&!gy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let s=a.heightFields;e.fields={...e.fields,...s()};let c=e.resolveFields;e.resolveFields=(l,r)=>{let o=c?c(l,r):r.fields,i=l?.props??{},n=dy(i),h=vy(i)?fy(i):null;return o&&typeof o.then=="function"?o.then(m=>pG(mG(m,n),h)):pG(mG(o,n),h)}},draw(e){let t=e.render;e.render=a=>{let s=by(a);return s?kl1("div",{className:s.className,style:s.style,children:t(a)}):t(a)}}};function mG(e,t){if(!e||!("sectionHeightMode"in e))return e;let a={...e};if(t.mode==="auto")return delete a.sectionHeightValue,delete a.sectionHeightUnit,a;t.mode==="screen"&&delete a.sectionHeightUnit;let s=a.sectionHeightValue;return s&&(a.sectionHeightValue={...s,unit:t.unit}),a}function pG(e,t){if(!e||!("sectionHeightModePhone"in e))return e;let a={...e};if(!t||t.mode==="auto")return delete a.sectionHeightValuePhone,delete a.sectionHeightUnitPhone,a;t.mode==="screen"&&delete a.sectionHeightUnitPhone;let s=a.sectionHeightValuePhone;return s&&(a.sectionHeightValuePhone={...s,unit:t.unit}),a}import{jsx as Ml1}from"react/jsx-runtime";var dG={name:"sectionTheme",applies:(e,t,a)=>t.isSection(e)&&!oy.has(e)&&!!a&&typeof a.render=="function",panel(e,t,a){let{sectionThemeFields:s,SECTION_THEME_FOLLOW_LABEL:c}=a,l=xm.has(t);e.fields={...e.fields,...l?s(f5,c):s()}},draw(e,t){let a=xm.has(t),s=e.render;e.render=c=>{let l=I9(a?{...c,sectionAccent:f5(c.sectionAccent)}:c),r=s(c);return l?Ml1("div",{className:l.className,style:l.style,children:r}):r}}},gG={name:"slideTheme",applies:e=>e==="HeroSlide",panel(e,t,a){let{sectionThemeFields:s,BLOCK_THEME_FOLLOW_LABEL:c}=a;e?.fields&&(e.fields={...e.fields,...s(f5,c)})}};var Sl1=new Set(["Reviews","Cards","FAQ","Prose","ProductHero","SpecTable","ProductGrid","ParagraphsA","KeyFeatures","Stats","StatsParagraph","Chart","Mockup","Testimonials","Logos","ContactRouting","ContactLocations","SubmitBuild","ReviewForm","Form","AppointmentBooking","OrderSummary","DeliveryOptions","PaymentBadges","CheckoutCTA","Collections","AlloyWheelsListing","CatalogFilterBar","FitmentFinder","GalleryB","BrandStrip","DocMasthead","DocBody","DocMetaCards","Masthead","FeaturedCover","LongRead","Series","Events","SectionHeader","Grid","Flex","Spacer","Divider","CustomHTML","Breadcrumb","CategoryBar","DocTabs","Hero","HeroSingle","IntroBleed","Manifesto","Timeline","TimelineTrack","Footprint","Banner","TitleWithButtons","Ticker","SubscribeBlogs","TyreSizes","TyreFitment","EuTyreLabel","SpecStrip","ProcessSteps","DetailRows","FitmentTable","CompatibleTyres","RelatedProducts","BundleOffer","Split","Gallery","Subscribe","Countdown"]),vG={name:"sectionGroups",applies:(e,t)=>t.isSection(e)&&(Sl1.has(e)||t.isHostBlock(e)),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}},Ll1=new Set(["HeroSlide","Heading","Text","ImageBlock","ButtonBlock","HeroGroup","GalleryItem","Footer","FooterLogo","FooterMenu","FooterGroup","FooterText","PostCard","LogoBlock","CollectionCard","Eyebrow","BookingBox","SubmitBox","FooterSocial","MenuBlock","SocialLogosBlock","EmailFormBlock","SearchBlock","CartBlock"]),fG={name:"blockGroups",applies:e=>Ll1.has(e),panel(e,t,a){let s=a.assignSectionGroups;e?.fields&&(e.fields=s(e.fields,t))}};var Al1=["Form","Stats"];function bx(e,t){let a=new Set(e),s=Bx.filter(i=>a.has(i)),c=s.filter(i=>i!=="Header"&&i!=="Footer"&&!ml.includes(i)),l=new Set([...t,...rl,...Al1]),r=s.filter(i=>!l.has(i)),o=new Set(s);return{isSection:i=>o.has(i),isHostBlock:()=>!1,sectionGroupAllow:c,contentSectionKeys:r}}var Hl1=[YO,XO,LL,aG,sG,AL,JO,wT,CT,kT,MT,uG,oG,dG,hG,gG,vG,fG,cG,eG,lG,$O];function bG(e,t,a){let s=t;for(let c of Hl1)c.applies(e,a,s)&&(a.inspector&&c.panel?.(s,e,a.inspector,a),c.draw?.(s,e,a));return t}var xG={spacingFields:x5,sectionShapeFields:Gl,cardShapeFields:ew,cellWidthFields:lw,widthField:z5,heightFields:rw,anchorFields:ow,sectionThemeFields:X9,sectionAnimationFields:Qy,slider:s1,assignSectionGroups:Ql,dropEmptyHeadings:Kh,SECTION_THEME_FOLLOW_LABEL:Hl,BLOCK_THEME_FOLLOW_LABEL:ky};function zG(e){let t={...bx(Object.keys(e.components),e.categories?.structure?.components??[]),inspector:xG};for(let[l,r]of Object.entries(e.components))bG(l,r,t);let a=e.root,s=a.resolveFields,c=(l,r)=>Kh(jO(l,r?.props),"page");return a.resolveFields=s?(l,r)=>{let o=s(l,r);return o instanceof Promise?o.then(i=>c(i??r.fields,l)):c(o??r.fields,l)}:(l,r)=>c(r.fields,l),t}import{Fragment as Xl1,jsx as n0,jsxs as ga}from"react/jsx-runtime";var Bl1="Newsletter (built in)";var Id0=[{value:"00",label:A.label},{value:"00",label:A.label},{value:"00",label:A.label}],Zl1=sm(()=>import("./PreviewFooter-7NEJ5BU4.js")),Dl1=sm(()=>import("./render-client-5K4A4MV2.js")),Ol1={padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"};function Gl1({propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,children:i}){let{originData:n,exitFocus:h}=Qk(),{theme:m,fonts:u,sizes:d,themeFromDocument:v}=I3();if(!n)return ga(ux,{propsTheme:e,propsFonts:t,widthMode:a,fullWidth:s,pageWidth:c,pageBackground:l,chromeInheritsSiteBackground:r,suppressPreviewNav:o,footer:null,children:[n0("div",{style:Ol1,children:"This is your site footer \u2014 it shows at the bottom of every page."}),i]});let g=v?e:m,b=v?t:u,f=n.content??[],w=n.root,z=Sa(f)&&hr(w,f);return ga("div",{className:"sf-theme-accent",style:{...ul(b),...vl(g),...fl(g),...bl(g)},onClickCapture:o,children:[ga("div",{style:{position:"relative"},children:[n0("div",{className:z?nr:void 0,style:{...za(g),...zl(v?void 0:d),pointerEvents:"none",userSelect:"none"},"aria-hidden":"true",children:n0(Dl1,{data:n})}),n0("button",{type:"button",onClick:()=>h(),title:p("Click the page to go back"),"aria-label":p("Go back to the page"),style:{position:"absolute",inset:0,width:"100%",height:"100%",cursor:"pointer",background:"transparent",border:0,padding:0}})]}),n0("div",{className:"sf-theme-surfaces",style:{...za(g),...xl(g)},children:n0(px,{w:{widthMode:a,fullWidth:s,pageWidth:c},children:i})})]})}var F0=Fm,ql1={formSlug:E5(void 0,Bl1),_gLeft:x("Left panel"),metaLabel:q("Meta label",F0.metaLabel),issueLabel:q("Issue label",F0.issueLabel),issueNumber:q("Issue number",F0.issueNumber),kicker:q("Eyebrow",F0.kicker),heading:E1("Heading",F0.heading),deck:E1("Deck",F0.deck),stats:{type:"array",label:"Stats",arrayFields:{label:q("Label"),value:q("Value")},getItemSummary:e=>e?.label||e?.value||"Stat"},_gForm:x("Right panel \xB7 form"),formLabel:q("Section label",F0.formLabel),formHeading:q("Heading",F0.formHeading),formIntro:E1("Intro",F0.formIntro),firstNameLabel:q("First-name label",F0.firstNameLabel),firstNamePlaceholder:q("First-name placeholder",F0.firstNamePlaceholder),emailLabel:q("Email label",F0.emailLabel),emailPlaceholder:q("Email placeholder",F0.emailPlaceholder),_gChoices:x("Right panel \xB7 choices"),interestsLabel:q("Interests label",F0.interestsLabel),interests:T2("Interest chips",n0(c4,{noun:"tag"}),"Chip label","verbatim"),frequencyLabel:q("Frequency label",F0.frequencyLabel),frequencies:T2("Frequency options",n0(Vl1,{}),"Option label","verbatim"),_gActions:x("Right panel \xB7 actions"),submitText:q("Submit button",F0.submitText),finePrint:q("Fine print",F0.finePrint),dismissText:q("Dismiss link",F0.dismissText),emailInvalidText:q("Invalid-email error",F0.emailInvalidText),submitErrorText:q("Submit-failed error",F0.submitErrorText),_gSuccess:x("Success state"),successHeading:q("Heading",F0.successHeading),successBody:E1("Message",F0.successBody),keepBrowsingText:q("Dismiss button",F0.keepBrowsingText),...X9(f5,Hl),...Gl(),_gTextStyle:x("Text style"),...Object.fromEntries(Nl.map(e=>[Vy[e],g1(km[e],Ke(km[e]),[{label:"Popup's own",value:""},...v5.map(t=>({label:T9[t],value:t}))],"")])),_gBehaviour:x("Behavior"),autoOpen:l1("Show by itself",F0.autoOpen,n0(El1,{})),trigger:v1("Trigger",n0(Rl1,{}),[{label:"Delay",value:"delay"},{label:"Scroll",value:"scroll"},{label:"Exit",value:"exit"}],F0.trigger),autoOpenDelaySec:s1("Delay",n0(xx,{}),Lm.min,Lm.max,1,F0.autoOpenDelaySec,"s"),scrollPercent:s1("Scroll",n0(Il1,{}),Am.min,Am.max,5,F0.scrollPercent,"%"),showOn:v1("Pages",n0(Nl1,{}),[{label:"All",value:"all"},{label:"Chosen",value:"chosen"}],F0.showOn),showOnPages:Q9("Chosen pages",[],"None"),hideAfter:v1("After close",n0(xx,{}),[{label:"This visit",value:"visit"},{label:"Days",value:"days"},{label:"Never",value:"never"}],F0.hideAfter),hideDays:s1("Days",n0(xx,{}),Hm.min,Hm.max,1,F0.hideDays),_gArrangement:x("Arrangement"),formSide:v1("Form side",n0(_l1,{}),[{label:"Right",value:"right"},{label:"Left",value:"left"}],F0.formSide),_gPhone:x("On a phone"),valuePanelOnPhone:l1("Left panel",F0.valuePanelOnPhone,n0(Tl1,{}))},Wl1=Ql(ql1,"SubscribePopup");async function Ul1(){return(await By(i2()??"")).filter(t=>!Ca(t.slug)).map(t=>({label:t.label,value:g8(t.slug)}))}async function jl1(e){let t=Tm(e),a=new Set;t.autoOpen||["trigger","autoOpenDelaySec","scrollPercent","showOn","showOnPages","hideAfter","hideDays"].forEach(c=>a.add(c)),t.trigger==="scroll"&&a.add("autoOpenDelaySec"),t.trigger!=="scroll"&&a.add("scrollPercent"),t.showOn!=="chosen"&&a.add("showOnPages"),t.hideAfter!=="days"&&a.add("hideDays");let s={};for(let[c,l]of Object.entries(Wl1))a.has(c)||(s[c]=c==="showOnPages"?{...l,options:await Ul1().catch(()=>[])}:l);return re(s)}var p5=Vl,Kl1={_gHeader:x("Header"),kickerBadge:q("Eyebrow badge",p5.kickerBadge),kickerText:q("Eyebrow text",p5.kickerText),titleLead:q("Heading",p5.titleLead),titleAccent:q("Heading accent",p5.titleAccent),subtitleEmpty:E1("Sub-line \xB7 empty",p5.subtitleEmpty),subtitleOne:E1("Sub-line \xB7 one set",p5.subtitleOne),subtitleMany:E1("Sub-line \xB7 several sets",p5.subtitleMany,"{count} becomes the number of sets"),_gStatus:x("Status rail"),leadTimeValue:q("Lead time",p5.leadTimeValue),shipsToFallback:q("Ships to \xB7 fallback",p5.shipsToFallback,"Shown only while the site serves no countries \u2014 otherwise the site's default country is stated"),_gPromises:x("Promise row"),promises:T2("Trust markers",n0(yG,{}),"Marker","verbatim"),_gEmpty:x("Empty basket"),emptyKicker:q("Eyebrow",p5.emptyKicker),emptyBody:E1("Message",p5.emptyBody)},$h={root:{fields:{...UO},resolveFields:async(e,{fields:t})=>{if(e?.props?.kind===Sm)return jl1(e.props);if(e?.props?.kind===Cm)return Kl1;let a=t;return M2()?{[gp]:g1("Product type",n0(Fl1,{}),we,"alloy-wheel"),...a,_gHeroBullets:x("Product hero"),_nHeroBullets:b5("The promises under Add to Cart. Text before the \xB7 is bold. Leave the list empty to show no promises at all."),[gu]:T2("Trust bullets",n0(yG,{}),bL(Ja.bullets[0]),"verbatim")}:a},render:e=>{let{children:t,puck:a,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:r,theme:o,fonts:i,scales:n,kind:h,previewProduct:m}=e,u=Zr(typeof h=="string"?h:"",e);if(h===Sm){let f=Tm(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the site popup \u2014 edit it in the Settings panel \u2192"}):null,n0(bS,{inline:!0,content:f})]})}if(h===Cm){let f=Ey(e);return ga("div",{style:{background:"var(--bg)",minHeight:"100%"},children:[a?.isEditing?n0("div",{style:{padding:"14px 18px",fontFamily:"var(--font-mono, monospace)",fontSize:12,letterSpacing:"0.18em",textTransform:"uppercase",color:"var(--fg-dim, #888)",borderBottom:"1px solid var(--site-line, #e5e5e5)"},children:"This is the cart drawer \u2014 edit its copy in the Settings panel \u2192"}):null,n0(wr,{children:n0(Cr,{preview:!0,children:n0($a,{content:f})})})]})}let d=!!a?.isEditing,v=n0(gL,{type:du(e),children:n0(nL,{kind:u,children:n0(yL,{content:xL(e),children:n0(rL,{slug:d?m:null,children:n0(XM,{children:t})})})})}),g=h===Ny&&!Ly(r);return d?h===G9?n0(Gl1,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,chromeInheritsSiteBackground:g,suppressPreviewNav:dx,children:v}):n0(ux,{propsTheme:o,propsFonts:i,widthMode:s,fullWidth:c,pageWidth:l,pageBackground:typeof r=="string"?r:void 0,suppressPreviewNav:dx,footer:n0(Zl1,{}),overlay:ga(Xl1,{children:[n0(Jp,{}),n0(iu,{})]}),children:v}):n0(GO,{pageBackground:r,inheritBackground:g,w:{widthMode:s,fullWidth:c,pageWidth:l},children:v})}},categories:Rx(),components:{Heading:B1.Heading,Text:B1.Text,Eyebrow:B1.Eyebrow,ImageBlock:B1.ImageBlock,LogoBlock:B1.LogoBlock,ButtonBlock:B1.ButtonBlock,Spacer:B1.Spacer,Divider:B1.Divider,Grid:B1.Grid,Flex:B1.Flex,Breadcrumb:B1.Breadcrumb,Masthead:B1.Masthead,CategoryBar:B1.CategoryBar,FeaturedCover:B1.FeaturedCover,LongRead:B1.LongRead,Series:B1.Series,Subscribe:h2.Subscribe,SubscribeBlogs:h2.SubscribeBlogs,Banner:B1.Banner,ParagraphsA:B1.ParagraphsA,StatsParagraph:B1.StatsParagraph,Timeline:B1.Timeline,Footprint:B1.Footprint,TimelineTrack:B1.TimelineTrack,TitleWithButtons:B1.TitleWithButtons,Stats:B1.Stats,Integrations:B1.Integrations,Mockup:B1.Mockup,Chart:B1.Chart,KeyFeatures:B1.KeyFeatures,Testimonials:B1.Testimonials,Reviews:h2.Reviews,Prose:B1.Prose,Cards:B1.Cards,Logos:B1.Logos,Ticker:B1.Ticker,ContactRouting:h2.ContactRouting,ContactLocations:B1.ContactLocations,HeroSingle:B1.HeroSingle,Hero:B1.Hero,HeroSlide:B1.HeroSlide,HeroGroup:B1.HeroGroup,Collections:G0.Collections,CollectionCard:G0.CollectionCard,Events:h2.Events,PostCard:B1.PostCard,DocMetaCards:B1.DocMetaCards,DocTabs:B1.DocTabs,DocMasthead:B1.DocMasthead,DocBody:B1.DocBody,FAQ:B1.FAQ,Gallery:G0.Gallery,GalleryB:G0.GalleryB,BrandStrip:G0.BrandStrip,SpecStrip:B1.SpecStrip,GalleryItem:G0.GalleryItem,Manifesto:B1.Manifesto,SectionHeader:B1.SectionHeader,IntroBleed:B1.IntroBleed,Split:B1.Split,SubmitBuild:h2.SubmitBuild,SubmitBox:h2.SubmitBox,ReviewForm:h2.ReviewForm,Form:h2.Form,AppointmentBooking:h2.AppointmentBooking,BookingBox:h2.BookingBox,CatalogFilterBar:G0.CatalogFilterBar,AlloyWheelsListing:G0.AlloyWheelsListing,ProductGrid:G0.ProductGrid,ProductHero:G0.ProductHero,SpecTable:G0.SpecTable,ProcessSteps:B1.ProcessSteps,DetailRows:G0.DetailRows,FitmentTable:G0.FitmentTable,RelatedProducts:G0.RelatedProducts,BundleOffer:G0.BundleOffer,CompatibleTyres:G0.CompatibleTyres,TyreSizes:G0.TyreSizes,TyreFitment:G0.TyreFitment,EuTyreLabel:G0.EuTyreLabel,FitmentFinder:G0.FitmentFinder,OrderSummary:B1.OrderSummary,DeliveryOptions:G0.DeliveryOptions,PaymentBadges:B1.PaymentBadges,CheckoutCTA:G0.CheckoutCTA,ProductRef:G0.ProductRef,CustomHTML:B1.CustomHTML,Header:G0.Header,Footer:h2.Footer,FooterLogo:h2.FooterLogo,FooterMenu:h2.FooterMenu,FooterDivider:h2.FooterDivider,FooterGroup:h2.FooterGroup,FooterText:h2.FooterText,FooterEmailSignup:h2.FooterEmailSignup,FooterSocial:h2.FooterSocial,LegalLineBlock:h2.LegalLineBlock,SearchBlock:G0.SearchBlock,CartBlock:G0.CartBlock,CountrySwitchBlock:G0.CountrySwitchBlock,[H9]:h2.SiteHeader,[F9]:h2.SiteFooter}},$l1={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial"};for(let[e,t]of Object.entries($l1)){let a=$h.components;a[e]={...a[t]}}{let e=$h.components.MenuBlock;e.fields={...e.fields,direction:v1("Direction",n0(Pl1,{}),[{label:zm.column,value:"column"},{label:zm.row,value:"row"}],"column")},e.defaultProps={...e.defaultProps,direction:"column"},e.render=({menu:t,heading:a,accordionMobile:s,showDividers:c,direction:l,puck:r})=>n0(Ra,{menu:t,heading:a||void 0,accordionMobile:s,showDividers:c,layout:l==="row"?"row":"column",editing:r?.isEditing})}var Yl1=zG($h),Rd0=Yl1.sectionGroupAllow,rb=$h;export{ly1 as a,ry1 as b,oy1 as c,iy1 as d,ny1 as e,bx as f,bG as g,xG as h,uj as i,up1 as j,Ho1 as k,HZ as l,en1 as m,tS as n,tn1 as o,an1 as p,$m1 as q,Dm0 as r,Om0 as s,uq1 as t,xr1 as u,zr1 as v,yr1 as w,wr1 as x,Ir1 as y,Rr1 as z,qU1 as A,ei1 as B,Bn1 as C,ne0 as D,Qp as E,xR1 as F,Hp as G,bM as H,oi1 as I,ii1 as J,ni1 as K,ui1 as L,wM as M,qo1 as N,R5 as O,zZ as P,eb as Q,Ch as R,kt as S,i3 as T,ej as U,CZ as V,Mo1 as W,Kn as X,tf as Y,f81 as Z,fQ1 as _,UR as $,kc as aa,rb as ba};
|