efficient-storefront-blocks 0.53.1 → 0.54.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/chunks/{EditorPreviewCheckout-2QMRD4FL.js → EditorPreviewCheckout-C4CWRYET.js} +1 -1
- package/dist/chunks/SiteEditorProvider-L7B4Q53B.js +1 -0
- package/dist/chunks/chunk-5KOLSJNO.js +255 -0
- package/dist/chunks/chunk-I4LSXXHE.js +1 -0
- package/dist/chunks/chunk-ICR6VQE4.js +1 -0
- package/dist/chunks/chunk-QTECZCHP.js +1 -0
- package/dist/chunks/{fitment-data-WKS4XEHO.js → fitment-data-6HK4CEKU.js} +1 -1
- package/dist/contract.js +1 -1
- package/dist/index.js +45 -45
- package/dist/links.js +1 -1
- package/dist/words.d.ts +1 -9
- package/dist/words.js +2 -2
- package/package.json +1 -1
- package/dist/chunks/SectionEditorShell-Z6EQFY7M.js +0 -1
- package/dist/chunks/SiteEditorProvider-C65YM6ON.js +0 -1
- package/dist/chunks/chunk-RDG2EJPO.js +0 -1
- package/dist/chunks/chunk-SQYA5VYV.js +0 -255
- package/dist/chunks/chunk-VHOOQYWZ.js +0 -1
- package/dist/chunks/chunk-VHVJ74KF.js +0 -1
- /package/dist/chunks/{chunk-HQ2Q5HZE.js → chunk-35HO2I6M.js} +0 -0
- /package/dist/chunks/{chunk-SQYA5VYV.js.LEGAL.txt → chunk-5KOLSJNO.js.LEGAL.txt} +0 -0
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
import{$ as gs,A as $o,Aa as su,B as _t,C as Dt,Ca as Na,Da as iu,E as Kd,Ea as fu,H as Pr,J as Vd,Ja as cu,K as Is,L as Yd,N as Xd,O as Zd,Q as Qd,R as hs,T as Jd,U as Je,V as st,W as eu,X as po,Y as Da,_ as ou,a as Md,c as Hd,ca as tu,d as to,da as bs,e as At,f as Fo,fa as ys,g as _a,h as Gd,ja as ru,l as Er,n as ms,pa as it,ra as au,s as Ud,t as $d,ta as nu,u as xs,v as Ye,va as lu,w as qd,x as jd,y as Bt,z as uo,za as $}from"./chunk-35HO2I6M.js";import{d as Wd,e as Fr,f as zd,i as du,m as Ss}from"./chunk-QTECZCHP.js";var Ma=null,VC="en",pu=null;function oH(e,o,t){Ma=e??null,VC=o||"en",pu=t??null}function V(){return pu}function mu(){return Ma}function uu(e,o){return o?e.replace(/\{([A-Za-z][A-Za-z0-9_]*)\}/g,(t,r)=>Object.prototype.hasOwnProperty.call(o,r)?String(o[r]):t):e}function l(e,o){let t=Ma?Ma[e]:void 0;if(typeof t=="function"){try{let r=t(o??{});if(typeof r=="string"&&r)return r}catch{}return uu(e,o)}return uu(typeof t=="string"&&t?t:e,o)}function ft(e,o,t,r){return l(t===1?e:o,{...r,n:t})}function Pe(e,o){if(typeof e=="string")return e||o;if(e&&typeof e=="object"&&"text"in e){let t=e.text;return typeof t=="string"&&t?t:o}return o}function xu(e,o){return typeof e=="number"&&Number.isFinite(e)?e:o}function Iu(e,o){return typeof e=="boolean"?e:o}function Ha(e,o){if(!Array.isArray(e))return o;let t=e.map(r=>typeof r=="string"?r:Pe(r?.text,"")).map(r=>r.trim()).filter(Boolean);return t.length?t:o}var hu="cart-drawer",nH="cart-drawer";var YC={kickerBadge:"",kickerText:"Your order",titleLead:"Your",titleAccent:"cart.",subtitleEmpty:"Empty for now.",subtitleOne:"One set in your cart.",subtitleMany:"{count} sets in your cart.",leadTimeValue:"",shipsToFallback:"",promises:[],emptyKicker:"No wheels yet",emptyBody:"Your cart is empty. Pick a wheel to get started."};function lH(e,o){return o===0?e.subtitleEmpty:o===1?e.subtitleOne:e.subtitleMany.replace("{count}",String(o))}function sH(e){let o=e??{},t=YC;return{kickerBadge:Pe(o.kickerBadge,t.kickerBadge),kickerText:Pe(o.kickerText,t.kickerText),titleLead:Pe(o.titleLead,t.titleLead),titleAccent:Pe(o.titleAccent,t.titleAccent),subtitleEmpty:Pe(o.subtitleEmpty,t.subtitleEmpty),subtitleOne:Pe(o.subtitleOne,t.subtitleOne),subtitleMany:Pe(o.subtitleMany,t.subtitleMany),leadTimeValue:Pe(o.leadTimeValue,t.leadTimeValue),shipsToFallback:Pe(o.shipsToFallback,t.shipsToFallback),promises:Ha(o.promises,t.promises),emptyKicker:Pe(o.emptyKicker,t.emptyKicker),emptyBody:Pe(o.emptyBody,t.emptyBody)}}var bu="consent-banner",cH="consent-banner";var XC=[{value:"bar",label:"Bar"},{value:"card",label:"Card"}],dH="Layout",gu={layout:"bar"},ZC=e=>XC.some(o=>o.value===e);function uH(e){let o=Pe((e??{}).layout,gu.layout);return{layout:ZC(o)?o:gu.layout}}var QC=["meta","eyebrow","heading","body","statName","statValue","formEyebrow","formHeading","formIntro","fieldLabel","option","finePrint","dismiss","doneHeading","doneBody"],xH={meta:"Meta line",eyebrow:"Eyebrow",heading:"Heading",body:"Body",statName:"Stat name",statValue:"Stat value",formEyebrow:"Form eyebrow",formHeading:"Form heading",formIntro:"Form intro",fieldLabel:"Field label",option:"Option",finePrint:"Fine print",dismiss:"Dismiss link",doneHeading:"Success heading",doneBody:"Success message"},JC={meta:"styleMeta",eyebrow:"styleEyebrow",heading:"styleHeading",body:"styleBody",statName:"styleStatName",statValue:"styleStatValue",formEyebrow:"styleFormEyebrow",formHeading:"styleFormHeading",formIntro:"styleFormIntro",fieldLabel:"styleFieldLabel",option:"styleOption",finePrint:"styleFinePrint",dismiss:"styleDismiss",doneHeading:"styleDoneHeading",doneBody:"styleDoneBody"},IH={meta:{font:"--pp-meta-font",size:"--pp-meta-size"},eyebrow:{font:"--pp-eyebrow-font",size:"--pp-eyebrow-size"},heading:{font:"--pp-heading-font",size:"--pp-heading-size"},body:{font:"--pp-body-font",size:"--pp-body-size"},statName:{font:"--pp-statname-font",size:"--pp-statname-size"},statValue:{font:"--pp-statvalue-font",size:"--pp-statvalue-size"},formEyebrow:{font:"--pp-formeyebrow-font",size:"--pp-formeyebrow-size"},formHeading:{font:"--pp-formheading-font",size:"--pp-formheading-size"},formIntro:{font:"--pp-formintro-font",size:"--pp-formintro-size"},fieldLabel:{font:"--pp-fieldlabel-font",size:"--pp-fieldlabel-size"},option:{font:"--pp-option-font",size:"--pp-option-size"},finePrint:{font:"--pp-fineprint-font",size:"--pp-fineprint-size"},dismiss:{font:"--pp-dismiss-font",size:"--pp-dismiss-size"},doneHeading:{font:"--pp-doneheading-font",size:"--pp-doneheading-size"},doneBody:{font:"--pp-donebody-font",size:"--pp-donebody-size"}};function ev(e){return typeof e=="string"&&Fo.includes(e)?e:null}function yu(e){let o={};for(let t of QC){let r=ev(e[JC[t]]);r&&(o[t]=r)}return o}var Nt="site-footer";var gH=Nt,bH={desktop:!0,tablet:!0,mobile:!0},yH={desktop:!1,tablet:!1,mobile:!1},Cs=1,Su=6,SH=Array.from({length:Su-Cs+1},(e,o)=>Cs+o),Wa={desktop:6,tablet:3,mobile:2},ov={2:{desktop:2,tablet:2,mobile:1},3:{desktop:3,tablet:3,mobile:1},4:{desktop:4,tablet:2,mobile:2},5:{desktop:5,tablet:3,mobile:2},6:{desktop:6,tablet:3,mobile:2}},ct=e=>Math.min(Math.max(Math.round(e),Cs),Su);function CH(e){if(typeof e=="number")return ov[ct(e)]??{desktop:ct(e),tablet:ct(e),mobile:ct(e)};if(e&&typeof e=="object"){let o=e;return{desktop:ct(o.desktop??Wa.desktop),tablet:ct(o.tablet??Wa.tablet),mobile:ct(o.mobile??Wa.mobile)}}return{...Wa}}var tv="subscribe-popup",PH="subscribe-popup";var rv=[tv,Nt,hu,bu];function wu(e){return rv.includes(e)}var av=["delay","scroll","exit"],nv=["all","chosen"],lv=["visit","days","never"],sv=["right","left"],iv={min:0,max:60},fv={min:10,max:90},cv={min:1,max:90},ws={metaLabel:"Meta label",issueLabel:"Label",issueNumber:"00",kicker:"Kicker",heading:`Main heading
|
|
2
|
+
*Highlight line*`,deck:"Add a sentence or two of supporting copy.",stats:[{label:"Label",value:"Value"},{label:"Label",value:"Value"},{label:"Label",value:"Value"},{label:"Label",value:"Value"}],formLabel:"Section label",formHeading:"Main heading *highlight*",formIntro:"Add a sentence or two of supporting copy.",firstNameLabel:"Field label",firstNamePlaceholder:"Placeholder",emailLabel:"Field label",emailPlaceholder:"Placeholder",interestsLabel:"Field label",interests:["Option one","Option two","Option three"],frequencyLabel:"Field label",frequencies:["Option one","Option two","Option three"],submitText:"Button label",finePrint:"Fine print",dismissText:"Dismiss link",emailInvalidText:"Enter a valid email address.",submitErrorText:"Could not subscribe right now. Please try again.",successHeading:"Main heading *highlight*",successBody:"Add a sentence or two of supporting copy \u2014 the {email} and {issue} tokens are substituted here.",keepBrowsingText:"Button label",autoOpen:!1,autoOpenDelaySec:15,formSlug:"",trigger:"delay",scrollPercent:50,showOn:"all",showOnPages:[],hideAfter:"days",hideDays:7,formSide:"right",valuePanelOnPhone:!1,sectionAccent:void 0,sectionCorners:void 0,sectionCornerSides:void 0,textStyles:{}},Ie=Pe,dv=xu,Cu=Iu,ku=Ha;function za(e,o,t){return typeof o=="string"&&e.includes(o)?o:t}function vs(e,o,t){let r=dv(e,t);return Math.min(o.max,Math.max(o.min,Math.round(r)))}function uv(e){return typeof e.hideAfter=="string"?za(lv,e.hideAfter,ws.hideAfter):e.oncePerSession===!0?"visit":e.oncePerSession===!1?"never":ws.hideAfter}function pv(e){return Array.isArray(e)?e.map(o=>typeof o=="string"?o.trim():"").filter(Boolean).map(o=>o.startsWith("/")?o:`/${o}`):[]}function vu(e,o){if(e==null)return o;let t=r=>r.trim()?r:"";if(typeof e=="string")return t(e);if(typeof e=="object"&&"text"in e){let r=e.text;return typeof r=="string"?t(r):""}return o}function mv(e,o){return Array.isArray(e)?ku(e,[]):o}function xv(e,o){return Array.isArray(e)?e.map(t=>{let r=t??{};return{label:Ie(r.label,""),value:Ie(r.value,"")}}).filter(t=>t.label||t.value):o}function LH(e){let o=e??{},t=ws;return{metaLabel:Ie(o.metaLabel,t.metaLabel),issueLabel:vu(o.issueLabel,t.issueLabel),issueNumber:vu(o.issueNumber,t.issueNumber),kicker:Ie(o.kicker,t.kicker),heading:Ie(o.heading,t.heading),deck:Ie(o.deck,t.deck),stats:xv(o.stats,t.stats),formLabel:Ie(o.formLabel,t.formLabel),formHeading:Ie(o.formHeading,t.formHeading),formIntro:Ie(o.formIntro,t.formIntro),firstNameLabel:Ie(o.firstNameLabel,t.firstNameLabel),firstNamePlaceholder:Ie(o.firstNamePlaceholder,t.firstNamePlaceholder),emailLabel:Ie(o.emailLabel,t.emailLabel),emailPlaceholder:Ie(o.emailPlaceholder,t.emailPlaceholder),interestsLabel:Ie(o.interestsLabel,t.interestsLabel),interests:ku(o.interests,t.interests),frequencyLabel:Ie(o.frequencyLabel,t.frequencyLabel),frequencies:mv(o.frequencies,t.frequencies),submitText:Ie(o.submitText,t.submitText),finePrint:Ie(o.finePrint,t.finePrint),dismissText:Ie(o.dismissText,t.dismissText),emailInvalidText:Ie(o.emailInvalidText,t.emailInvalidText),submitErrorText:Ie(o.submitErrorText,t.submitErrorText),successHeading:Ie(o.successHeading,t.successHeading),successBody:Ie(o.successBody,t.successBody),keepBrowsingText:Ie(o.keepBrowsingText,t.keepBrowsingText),formSlug:typeof o.formSlug=="string"?o.formSlug.trim():t.formSlug,autoOpen:Cu(o.autoOpen,t.autoOpen),autoOpenDelaySec:vs(o.autoOpenDelaySec,iv,t.autoOpenDelaySec),trigger:za(av,o.trigger,t.trigger),scrollPercent:vs(o.scrollPercent,fv,t.scrollPercent),showOn:za(nv,o.showOn,t.showOn),showOnPages:pv(o.showOnPages),hideAfter:uv(o),hideDays:vs(o.hideDays,cv,t.hideDays),formSide:za(sv,o.formSide,t.formSide),valuePanelOnPhone:Cu(o.valuePanelOnPhone,t.valuePanelOnPhone),sectionAccent:o.sectionAccent,sectionCorners:o.sectionCorners,sectionCornerSides:o.sectionCornerSides,textStyles:yu(o)}}import{jsx as ks,Fragment as Iv,jsxs as hv}from"react/jsx-runtime";import{createContext as gv,useContext as bv}from"react";var yv={mirrorHostStyles:!0,css:null,fontHrefs:[]},Tu=gv(yv);function BH({value:e,children:o}){return ks(Tu.Provider,{value:e,children:o})}function Ts(){return bv(Tu)}function Fu(){let{css:e,fontHrefs:o}=Ts();return hv(Iv,{children:[o.map(t=>ks("link",{rel:"stylesheet",href:t},t)),e?ks("style",{"data-sf-canvas-css":"",children:e}):null]})}import{jsx as Sv}from"react/jsx-runtime";import{createContext as Cv,useContext as vv}from"react";var Eu=Cv(void 0);function MH({metadata:e,children:o}){return Sv(Eu.Provider,{value:e,children:o})}var Pu=()=>vv(Eu);import{jsx as Se,Fragment as NC,jsxs as cs}from"react/jsx-runtime";import{useCallback as Ra,useEffect as ko,useRef as E2,useState as P2}from"react";import{Button as L2,Tooltip as O2}from"efficient-shell/ui";import{SettingsSwitch as R2}from"efficient-easel/panel";import{PagesIcon as A2,StylesIcon as B2}from"efficient-easel/rail";import{PaletteIcon as _2}from"efficient-shell/icons/efficient";import{TemplateIcon as D2}from"efficient-easel/icons";import{Subtree as N2,TreeRow as MC}from"efficient-easel/tree";import{useEasel as M2}from"efficient-easel/easel";import{useEaselStrings as HC}from"efficient-easel/strings";import{createContext as wv,useContext as kv}from"react";var Fs=wv(!1),zH=()=>kv(Fs);import{jsx as fe,Fragment as xh,jsxs as sl}from"react/jsx-runtime";import{Fragment as HL,useEffect as WL,useId as zL,useMemo as Ih,useState as tr}from"react";import{useScreenDocument as GL}from"efficient-easel/screen/components/ScreenDocumentContext";import{UiIcon as il}from"efficient-easel/draw/client";import UL from"efficient-easel/screen/components/SidePanelHead";import{jsx as Z,jsxs as ot,Fragment as wt}from"react/jsx-runtime";import{useEasel as sh}from"efficient-easel/easel";import{useState as Rf}from"react";import{jsx as Yt,jsxs as Vx,Fragment as NE}from"react/jsx-runtime";import{useState as Yx}from"react";import{SettingsDefaultReset as ME,SettingsField as HE}from"efficient-easel/panel";import{useEaselStrings as WE}from"efficient-easel/strings";import{AddIcon as zE}from"efficient-easel/icons";import{jsx as I,jsxs as vt,Fragment as Bo}from"react/jsx-runtime";import{cloneElement as fx,useId as O0,useRef as Mi,useState as vn}from"react";import{useEasel as $r,useSelectedFields as cx}from"efficient-easel/easel";import{readHidable as Zo,hidableText as R0}from"efficient-easel/draw";import{FOLD_FIELD_MARKER as Hi,LINK_FIELD_MARKER as A0,MEDIA_FIELD_MARKER as B0,SCAFFOLD_FIELD_MARKER as _0,TEXT_FIELD_MARKER as Ao,foldMetaOf as _o,textFieldIdentifier as vz}from"efficient-easel/draw";import{jsx as Du}from"react/jsx-runtime";import{useCallback as Lv,useEffect as Ov,useRef as Rv,useState as Av}from"react";import{useEasel as Bv}from"efficient-easel/easel";import{SettingsAction as _v}from"efficient-easel/panel";function Es(e){return typeof e=="number"&&Number.isFinite(e)}function $H(e,o){if(!Es(e))return;let t=Da(po(e));if(Object.keys(t).length===0)return;let r=t[Ga];if(typeof r!="string")return t;let a=Lr(o)?Or(r,Eo(o)??[]):r;return{...t,[Tv]:a}}var Tv="--sf-section-radius",Ga="--sf-card-radius",dt=["tl","tr","br","bl"];function Eo(e){if(!Array.isArray(e))return null;let o=e.filter(t=>dt.includes(t));return dt.filter(t=>o.includes(t))}function Lr(e){let o=Eo(e);return o!==null&&o.length<dt.length}function Or(e,o){return dt.map(t=>o.includes(t)?e:"0").join(" ")}var Lu=[{value:"tl",label:"Top left"},{value:"tr",label:"Top right"},{value:"bl",label:"Bottom left"},{value:"br",label:"Bottom right"}];var Fv="--sf-card-box-radius",Ev="--sf-site-card-radius",VH="sf-section-bleeds";function Ps(e){return typeof e=="number"&&Number.isFinite(e)}function YH(e,o){if(!Ps(e))return;let t=Da(po(e))[Ga];if(typeof t!="string")return;let r=Lr(o)?Or(t,Eo(o)??[]):t;return{[Fv]:r}}function XH(e){let o=e[Ga];return typeof o=="string"?{[Ev]:o}:{}}function Ou(e,o){let t=e.find(n=>n?.props?.id===o);if(!t)return[...e];let r=t.props?.cardCorners,a=t.props?.cardCornerSides;return e.map(n=>n?.props?.id===o?n:{...n,props:{...n.props,cardCorners:r,cardCornerSides:a}})}import{locateNode as Pv}from"efficient-easel/draw";function Rr(e){if(!e)return null;let o=e.lastIndexOf(":");return o>0?{ownerId:e.slice(0,o),slot:e.slice(o+1)}:null}function Ua(e,o,t){let r=Rr(t?.zone),a=r?Pv(e,o,r.ownerId):null;return a&&r?{...a,slot:r.slot}:null}function Ru(e,o,t){let r=Ua(e,o,t),a=r?.slot??"",n=r&&Array.isArray(r.item.props[a])?r.item.props[a]:[],s=t?.index??-1,i=s>=0?n[s]:void 0,f=i?.props?.id?String(i.props.id):"",u=Math.max(n.length-1,0);return!r||!f?{can:!1,reason:"unreachable",others:0}:n.length<=1?{can:!1,reason:"alone",others:u}:Ps(i?.props?.cardCorners)?{can:!0,others:u,zone:r.zone,index:r.index,data:{...r.item,props:{...r.item.props,[a]:Ou(n,f)}}}:{can:!1,reason:"unset",others:u}}function Au(e){return e.can?ft("Gives the other card this card's Corners.","Gives the other {n} cards this card's Corners.",e.others):e.reason==="alone"?l("This is the only card in the section."):e.reason==="unset"?l("Set this card's corners first."):l("This card is not in a section that can share corners.")}function Bu(e){return ft("Applied to {n} card","Applied to {n} cards",e)}function _u(e,o){e.can&&o(e.zone,e.index,e.data)}import{useSectionOps as Dv}from"efficient-easel/screen/lib/puck/use-section-ops";var Nv=2200,Mv="apply-corners-to-siblings",Hv="Apply to all cards";function Wv({plan:e,doneCount:o,onPress:t}){return Du(_v,{id:Mv,label:l(Hv),note:Au(e),disabled:!e.can,done:o!==null,doneLabel:Bu(o??0),onPress:t})}function Nu(){let{appState:e,config:o}=Bv(f=>f),t=Dv(),[r,a]=Av(null),n=Rv(null);Ov(()=>()=>{n.current&&clearTimeout(n.current)},[]);let s=Ru(o,e.data.content??[],e.ui.itemSelector),i=Lv(()=>{_u(s,t.replaceComponent),s.can&&(a(s.others),n.current&&clearTimeout(n.current),n.current=setTimeout(()=>a(null),Nv))},[s,t]);return Du(Wv,{plan:s,doneCount:r,onPress:i})}var Mu=1;function zv(e){return po(e)}function p5(e){let o=zv(e);return o===null?{}:{"--sf-card-image-radius":`${o}px`}}var Hu=1,Wu="Corners";function Gv(e){return po(e)}function h5(e,o){let t=Gv(e);if(t===null)return null;let r=`${t}px`;return{borderRadius:Lr(o)?Or(r,Eo(o)??[]):r}}var Po={twoAcross:{label:"Two across",across:2,acrossPhone:2,desktop:[[6,1],[6,1]],phone:[[3,1],[3,1]]},zigzag:{label:"Zigzag",across:2,acrossPhone:2,desktop:[[8,1],[4,1],[4,1],[8,1]],phone:[[4,1],[2,1],[2,1],[4,1]]},brick:{label:"Brick",across:2,acrossPhone:2,desktop:[[5,1],[7,1],[7,1],[5,1]],phone:[[2,1],[4,1],[4,1],[2,1]]},twoTall:{label:"Two tall",across:2,acrossPhone:2,desktop:[[6,2],[6,2]],phone:[[3,2],[3,2]]},offsetTall:{label:"Offset tall",across:2,acrossPhone:2,desktop:[[5,2],[7,1],[3,1],[4,1]],phone:[[3,2],[3,1],[3,1]]},ladder:{label:"Ladder",across:2,acrossPhone:2,desktop:[[3,2],[9,1],[5,1],[4,1]],phone:[[2,2],[4,1],[2,1],[2,1]]},threeAcross:{label:"Three across",across:3,acrossPhone:3,desktop:[[4,1],[4,1],[4,1]],phone:[[2,1],[2,1],[2,1]]},bigLeft:{label:"Big left",across:3,acrossPhone:3,desktop:[[6,1],[3,1],[3,1]],phone:[[4,1],[1,1],[1,1]]},bigRight:{label:"Big right",across:3,acrossPhone:3,desktop:[[3,1],[3,1],[6,1]],phone:[[1,1],[1,1],[4,1]]},threeStagger:{label:"Three stagger",across:3,acrossPhone:3,desktop:[[5,1],[4,1],[3,1],[3,1],[4,1],[5,1]],phone:[[3,1],[2,1],[1,1],[1,1],[2,1],[3,1]]},threeLadder:{label:"Three ladder",across:3,acrossPhone:3,desktop:[[3,1],[4,1],[5,1],[5,1],[4,1],[3,1]],phone:[[1,1],[2,1],[3,1],[3,1],[2,1],[1,1]]},tallMiddle:{label:"Tall middle",across:3,acrossPhone:3,desktop:[[4,1],[4,2],[4,1],[4,1],[4,1]],phone:[[2,1],[2,2],[2,1],[2,1],[2,1]]},fourAcross:{label:"Four across",across:4,acrossPhone:2,desktop:[[3,1],[3,1],[3,1],[3,1]],phone:[[3,1],[3,1]]},bigFirst:{label:"Big first",across:4,acrossPhone:2,desktop:[[6,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1]],phone:[[6,1],[3,1],[3,1]]},fourStagger:{label:"Four stagger",across:4,acrossPhone:2,desktop:[[4,1],[3,1],[2,1],[3,1],[2,1],[3,1],[4,1],[3,1]],phone:[[4,1],[2,1],[2,1],[4,1]]},tallFirst:{label:"Tall first",across:4,acrossPhone:2,desktop:[[3,2],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1]],phone:[[3,2],[3,1],[3,1]]},oneThenFour:{label:"One then four",across:4,acrossPhone:2,desktop:[[12,1],[3,1],[3,1],[3,1],[3,1]],phone:[[6,1],[3,1],[3,1]]},sixAcross:{label:"Six across",across:6,acrossPhone:3,desktop:[[2,1],[2,1],[2,1],[2,1],[2,1],[2,1]],phone:[[2,1],[2,1],[2,1]]},sixStagger:{label:"Six stagger",across:6,acrossPhone:6,desktop:[[3,1],[2,1],[1,1],[2,1],[1,1],[3,1],[1,1],[3,1],[2,1],[2,1],[1,1],[3,1]],phone:[[1,1],[1,1],[1,1],[1,1],[1,1],[1,1]]}},Ls=Object.keys(Po),Gu=[2,3,4,6];function Uu(e){return typeof e!="string"||e===""?null:Po[e]??null}function zu(e,o){return o?6/e.acrossPhone:12/e.across}var Uv="sf-wall--";function $v(e){return`${Uv}${e}`}function b5(e){let o=Po[e],t=`.${$v(e)}`,r=[],a=(n,s)=>{let i=[],f=n.length;n.forEach(([u,p],m)=>{i.push(`${t} > :nth-child(${f}n+${m+1}){grid-column:span ${u};grid-row:span ${p}}`)});for(let u=1;u<f;u+=1)i.push(`${t}:has(> :nth-child(${f}n+${u}):last-child) > :nth-last-child(-n+${u}){grid-column:span ${s};grid-row:span 1}`);return i};return r.push(`${t}{grid-template-columns:repeat(12,minmax(0,1fr))}`),r.push(...a(o.desktop,zu(o,!1))),r.push("@media (max-width:800px){"),r.push(`${t}{grid-template-columns:repeat(6,minmax(0,1fr))}`),r.push(...a(o.phone,zu(o,!0))),r.push("}"),r.join("")}var $a=12,$u=1,qv=3;var jv=3;function Os(e,o,t){let r=typeof e=="number"?e:Number.parseInt(String(e??""),10);return Number.isFinite(r)?Math.min(t,Math.max(o,Math.trunc(r))):null}function Kv(e){return Os(e,1,$a)??jv}function C5(e,o){return Os(e,$u,qv)??(Kv(o)===4?2:$u)}function v5(e){return e==null||e===""?null:Os(e,1,$a)}var w5="data-sf-span";function k5(e){if(!e)return!1;if(e.type==="Grid")return!0;if(e.type==="GalleryB"){if(Uu(e.props?.layout))return!1;let o=e.props?.columns;return o!=null&&o!==""}return!1}var mo=["top-left","top-center","top-right","left","center","right","bottom-left","bottom-center","bottom-right"],qa="bottom-left";var ja={"top-left":"Top left","top-center":"Top center","top-right":"Top right",left:"Left",center:"Center",right:"Right","bottom-left":"Bottom left","bottom-center":"Bottom center","bottom-right":"Bottom right"};function Vv(e){let o=mo.indexOf(ut(e));return{band:Math.floor(o/3),column:["start","center","end"][o%3]}}function Yv(e){return 1+Vv(e).band*6}function F5(e){return Yv(e)+1}function ut(e){return mo.includes(e)?e:qa}function E5(e){let o=typeof e=="number"&&Number.isFinite(e)?e:0;return Math.max(-40,Math.min(40,Math.round(o)))}function P5(e,o=60){let t=typeof e=="number"&&Number.isFinite(e)?e:o;return Math.max(30,Math.min(100,Math.round(t)))}function Rs(e,o){let t=ut(o);return e.filter(r=>ut(r?.props?.placement)===t).length}function qu(e){return`${ja[ut(e)]} already holds 4 boxes. Move one somewhere else first.`}function As(e,o){let t=e.filter(r=>r?.props?.id!==o);return mo.map(r=>{let a=Rs(t,r)>=4,n=ja[r];return a?{value:r,label:n,disabled:!0,title:qu(r)}:{value:r,label:n}})}function Ka(e,o){let t=o===void 0?qa:ut(o?.props?.placement);return Rs(e,t)>=4?qu(t):null}var Va="HeroGroup";function Xv(e){return mo.map(o=>{let t=Rs(e,o);return{anchor:o,total:t,hidden:t-4}}).filter(o=>o.hidden>0)}function Bs(e){let o=Xv(e);return o.length===0?null:o.map(({anchor:t,total:r,hidden:a})=>{let n=ja[t],s=a===1?"1 is not shown":`${a} are not shown`;return`${n} holds ${r} boxes. The published page draws the first 4, so ${s}. ${a===1?"Move it":"Move them"} somewhere else.`}).join(" ")}function ju(e,o){let t=o;if(t?.type!==Va)return null;let r=t.props?.id===void 0?"":String(t.props.id);return r?Ka(_s(e,r),t):null}function _s(e,o){let t=Vu(e,o);return t&&t.ownerType===Qv?t.siblings:[]}function Ku(e,o){let t=Vu(e,o);return t?t.ancestorTypes.filter(r=>r===Va).length:Zv}var Zv=1,Qv="HeroSlide";function Vu(e,o){let t=a=>Array.isArray(a)&&a.length>0&&a.every(n=>!!n&&typeof n=="object"&&typeof n.type=="string"),r=(a,n,s)=>{if(n>12||!a||typeof a!="object")return null;if(t(a)){if(a.some(i=>i?.props?.id===o))return{siblings:a,ownerType:s.at(-1)??null,ancestorTypes:s};for(let i of a){let f=i.type,u=r(i,n+1,[...s,String(f)]);if(u)return u}return null}for(let i of Object.values(a)){let f=r(i,n+1,s);if(f)return f}return null};return r(e,0,[])}import{jsx as Jv}from"react/jsx-runtime";var ew="sf-hint-keep";function Yu({children:e}){return Jv("span",{className:ew,children:e})}import{AdjustIcon as D0,AlignLeftIcon as N0,EyeIcon as M0,AlignSeparateIcon as H0,AnimationIcon as dx,BackgroundIcon as W0,BorderAllIcon as z0,BlockSectionIcon as G0,CartIcon as U0,ColumnWidthsIcon as ux,ColumnsIcon as $0,CornerIcon as q0,DirectionDownIcon as j0,DirectionLeftIcon as K0,DirectionRightIcon as V0,DirectionUpIcon as Y0,DollarIcon as X0,FinishIcon as Z0,GapIcon as px,GridIcon as Q0,GroundIcon as J0,HashIcon as mx,HeightIcon as eF,ImageIcon as oF,ListIcon as tF,LocationIcon as Ni,PaddingAllIcon as rF,PaddingBottomIcon as xx,PaddingLeftIcon as Ix,PaddingRightIcon as hx,PaddingTopIcon as gx,PageIcon as bx,PhoneIcon as aF,PlacementIcon as nF,ProductSizeIcon as lF,StickyIcon as sF,RotateIcon as iF,SquareIcon as fF,TypeIcon as cF,WidthIcon as dF,WrapIcon as uF}from"efficient-easel/icons";import{jsx as J,Fragment as xo,jsxs as Io}from"react/jsx-runtime";import{TitleIcon as ow,ButtonIcon as tw,DollarIcon as rw,HashIcon as aw,LinkIcon as nw,NoteIcon as lw,TagIcon as sw,TextLinesIcon as iw}from"efficient-easel/icons";var Xu={body:iw,button:tw,link:nw,label:sw,number:aw,price:rw,note:lw,title:ow},Zu={eyebrow:Io(xo,{children:[J("path",{d:"M5 6.5h5"}),J("path",{d:"M5 12.5h14"}),J("path",{d:"M5 18h11"})]}),heading:Io(xo,{children:[J("path",{d:"M6.5 5v14"}),J("path",{d:"M17.5 5v14"}),J("path",{d:"M6.5 12h11"})]}),intro:Io(xo,{children:[J("path",{d:"M4 5.5v13"}),J("path",{d:"M8 7.5h12"}),J("path",{d:"M8 12h12"}),J("path",{d:"M8 16.5h8"})]}),value:Io(xo,{children:[J("rect",{x:"2.5",y:"7",width:"19",height:"10",rx:"2"}),J("path",{d:"M6.5 12h7"})]}),name:Io(xo,{children:[J("path",{d:"M6 3.5v17"}),J("path",{d:"M6 5h11.5l-2.6 3.6L17.5 12H6z"})]}),date:Io(xo,{children:[J("rect",{x:"4",y:"5.5",width:"16",height:"15",rx:"2"}),J("path",{d:"M4 10.5h16"}),J("path",{d:"M9 3.2v4.4"}),J("path",{d:"M15 3.2v4.4"})]}),caption:Io(xo,{children:[J("rect",{x:"3.5",y:"4.5",width:"17",height:"11",rx:"2"}),J("path",{d:"M3.5 12.8l4.2-3.2 3.6 2.8 3.4-2.4 5.8 4"}),J("path",{d:"M6.5 19.5h11"})]}),quote:Io(xo,{children:[J("path",{d:"M9.5 5.5C7 7.2 5.5 9.7 5.5 12.8h4v5.7h-5v-5.7"}),J("path",{d:"M19.5 5.5c-2.5 1.7-4 4.2-4 7.3h4v5.7h-5v-5.7"})]}),tag:Io(xo,{children:[J("rect",{x:"3",y:"5.5",width:"18",height:"13",rx:"2.5"}),J("path",{d:"M8 9.5h8"}),J("path",{d:"M12 9.5v5"})]}),meta:Io(xo,{children:[J("path",{d:"M4 7h16"}),J("path",{d:"M4 14h3.5"}),J("path",{d:"M10.5 14h3"}),J("path",{d:"M17 14h3"})]})};function Ds({noun:e,size:o=14,strokeWidth:t=1.8,className:r,style:a}){let n=Xu[e];return n?J("span",{className:r,style:{display:"inline-flex",...a},"aria-hidden":"true",children:J(n,{size:o})}):J("svg",{className:r,style:a,width:o,height:o,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:t,strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:Zu[e]})}var _5=Object.keys(Xu);var D5=Object.keys(Zu);var fw="#ffffff",cw=/^#[0-9a-fA-F]{6}$/;function Ns(e){return dw(e)?e:fw}function dw(e){return typeof e=="string"&&cw.test(e)}function M5(e){return{"--bg":Ns(e)}}var Ms=[{role:"bg",token:"--bg",ink:!1},{role:"fg",token:"--fg",ink:!0},{role:"surface",token:"--site-surface",ink:!1},{role:"surface-2",token:"--site-surface-2",ink:!1},{role:"line",token:"--site-line",ink:!0},{role:"muted",token:"--fg-dim",ink:!0}],uw=Ms.filter(e=>e.ink);function pw(e){let o={color:e.fg};for(let{role:t,token:r}of uw)o[r]=e[t];return o}var mw={fg:"var(--overlay-fg)",line:"color-mix(in srgb, var(--overlay-fg) 24%, transparent)",muted:"color-mix(in srgb, var(--overlay-fg) 76%, transparent)"},Qu=Object.freeze(pw(mw));var Ya=-1,xw="sf-section-accent",Ju="Color",ep=new Set(["CategoryBar","DocTabs"]),G5=new Set(["Flex"]),Iw=0;function Hs(e){return e===Ya?null:typeof e=="number"&&Number.isInteger(e)&&e>=0?e:Iw}function U5(e){return e??Ya}function hw(e){let o=`--theme-preset-${e}`,t={"--sf-sec-accent":`var(${o}-accent)`,"--sf-sec-accent-2":`var(${o}-accent-2)`,"--sf-sec-accent-ink":`var(${o}-accent-ink)`};for(let{role:r}of Ms)t[`--sf-sec-${r}`]=`var(${o}-${r}, var(--theme-${r}))`;return t}function $5(e){let o=Hs(e.sectionAccent);return o===null?null:{className:xw,style:hw(o)}}var gw=["fade","rise","scale"],Ws="none",op=[{label:"None",value:Ws},{label:"Fade",value:"fade"},{label:"Rise",value:"rise"},{label:"Scale",value:"scale"}];function K5(e){return gw.includes(e)?e:null}var tp="data-sf-anim",Ar="data-sf-anim-state";function V5(e){let o=()=>{};if(typeof IntersectionObserver>"u"||!e.getAttribute(tp))return o;let t=window.innerHeight||document.documentElement.clientHeight;if(e.getBoundingClientRect().top<t)return o;e.setAttribute(Ar,"armed");let r=new IntersectionObserver(a=>{for(let n of a)if(n.isIntersecting){r.disconnect(),bw(e);break}},{threshold:0});return r.observe(e),()=>{r.disconnect(),e.removeAttribute(Ar)}}function bw(e){if(!e.getAttribute(tp))return;e.removeAttribute(Ar),e.offsetWidth,e.setAttribute(Ar,"play");let o=t=>{t.target===e&&(e.removeAttribute(Ar),e.removeEventListener("animationend",o))};e.addEventListener("animationend",o)}var Y5=ep;function Gs(e,o){let t=e?.content;if(!Array.isArray(t))return null;for(let r of t){if(!r||typeof r!="object")continue;let a=r.props;if(a?.id===o)return null;if(zs(r,o,0))return a??{}}return null}function zs(e,o,t){if(t>12||!e||typeof e!="object")return!1;if(Array.isArray(e))return e.some(a=>zs(a,o,t+1));let r=e.props;return r&&typeof r=="object"&&r.id===o?!0:Object.values(e).some(a=>zs(a,o,t+1))}import{SettingsDefaultReset as Ue,SettingsField as ne,SettingsGroupHead as pF,SettingsGroupSub as mF,SettingsBorder as xF,SettingsSegmented as IF,SettingsSides as hF,SettingsSidesEach as yx,sidesStartEach as gF,SettingsSwitch as Sx,borderSides as bF,borderStartEach as yF}from"efficient-easel/panel";import{FieldSelect as SF,ListField as CF}from"efficient-easel/fields";import{DisplayChips as vF}from"efficient-shell/ui";function Mt(e){if(!e||typeof e!="object"||Array.isArray(e))return{};let o={};for(let[t,r]of Object.entries(e))typeof r=="boolean"&&(o[t]=r);return o}function Xa(e,o){return Mt(e)[o]!==!1}function Us(e,o,t){let r=Mt(o)[t];return typeof r=="boolean"?r:Xa(e,t)}function rp(e){return Object.values(Mt(e)).some(o=>o===!1)}function ap(e){return Object.keys(Mt(e)).length>0}function np(e,o,t){let r={...Mt(e)};return t?delete r[o]:r[o]=!1,Object.keys(r).length?r:void 0}function lp(e,o,t){return{...Mt(e),[o]:t}}function Q5(e,o,t){let r=Xa(e,t),a=Us(e,o,t);return r&&a?"":!r&&!a?"hidden":r?"max-[720px]:hidden":"min-[720px]:hidden"}import{AlignmentGrid as wF,Checkbox as Gz,CornersInput as kF,DateTimePicker as TF,FOCAL_DEFAULT as Uz,PictureTiles as Cx,Slider as FF,Tooltip as vx}from"efficient-shell/ui";import{jsx as pt,jsxs as Sw}from"react/jsx-runtime";import{ColorPicker as Cw,HexInput as vw}from"efficient-shell/ui";import{SettingsDefaultReset as ww,SettingsField as kw}from"efficient-easel/panel";import{typedHex as $s}from"efficient-easel/pick";import{typedHex as yw}from"efficient-easel/pick";function sp(e){let o=new Set,t=[];return Ye(e).themes.forEach((r,a)=>{let n=[[l("Theme {n} main color",{n:a+1}),r.accent],[l("Theme {n} text color",{n:a+1}),r.text],[l("Theme {n} background",{n:a+1}),r.background]];for(let[s,i]of n){let f=i?yw(i):null;!f||o.has(f)||(o.add(f),t.push({name:s,value:f}))}}),t}function eo({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s,ariaLabel:i}){return pt(Fw,{value:e,onChange:o,label:l(i??t),id:r,caption:a,inherited:n,after:s})}function Tw(){let{theme:e}=$();return sp(e).map(o=>({value:o.value,label:o.name}))}function Fw({value:e,onChange:o,label:t,id:r,caption:a,inherited:n,after:s}){let i=Tw(),f=e?null:$s(n??""),u=a!==void 0&&(!e||$s(a)!==$s(e))?a:null,p=m=>{m!==e&&o(m)};return Sw("div",{className:"sf-colour",children:[pt(Cw,{id:r,value:e,onChange:p,label:t,presets:i,fallback:f??void 0,size:"sm",align:"end"}),u!==null?pt("span",{className:"sf-colour-caption",children:u}):pt("span",{className:"sf-colour-hexwrap",children:pt(vw,{value:e||f||"",onChange:p,label:l("{label} hex code",{label:t}),placeholder:e||f?void 0:l("Not set"),className:f?"sf-colour-hex is-inherited":"sf-colour-hex",size:"sm"})}),s]})}function Za({label:e,icon:o,value:t,inherited:r,resetTo:a,onChange:n,onReset:s,hint:i}){let f=!!t;return pt(kw,{label:e,icon:o,changed:f,action:eo({value:t,inherited:f?void 0:r,onChange:n,label:e,after:pt(ww,{words:V()?.panel,label:e,changed:f,detail:a,onReset:s})}),hint:i})}import{jsx as Br}from"react/jsx-runtime";import{useEffect as Yw,useState as Xw}from"react";import{markSelection as Zw,useCaretEdit as Qw}from"efficient-easel/copy";import{RevertIcon as Jw}from"efficient-easel/icons";import{IconButton as ek,TextToolbar as ok,Tooltip as tk}from"efficient-shell/ui";import{applyMark as h3,markupTools as g3,MARKUP_TOOLS as b3,COPY_FIELD_TOOLS as y3,STOREFRONT_MARKUP as S3,tokenizeInline as C3,stripInline as v3,isSafeLinkHref as w3}from"efficient-shell/markup";import{applyMark as Hw,markedAt as Ww,markupTools as zw,MARKUP_TOOLS as Gw,parseMarkup as Uw,RETIRED_MARKS as $w,STOREFRONT_MARKUP as qw,tokenizeInline as T3}from"efficient-shell/markup";var mt=["highlight","strong","quiet"],xt={highlight:"Highlight",strong:"Bold",quiet:"Quiet"},ho={highlight:{kind:"wordHighlight",delimiter:"@@"},strong:{kind:"wordStrong",delimiter:"++"},quiet:{kind:"wordQuiet",delimiter:"^^"}},dp=Object.fromEntries(mt.map(e=>[ho[e].kind,e])),up="data-sf-ws",Qa=["accent","text","labels"],pp={accent:"Accent",text:"Text",labels:"Labels"},Lo={accent:"var(--accent)",text:"var(--fg)",labels:"var(--fg-dim)"},Ew=80,Pw=120,Lw=100,Ow=900,Rw=.5,Aw=3,Bw=-.1,_w=.5,Dw=3,qs={font:null,size:null,weight:null,bold:null,italic:null,lineGap:null,textGap:null,colour:null},Nw={highlight:{...qs},strong:{...qs},quiet:{...qs}};function ip(e,o,t){return typeof e!="number"||!Number.isFinite(e)?null:Math.round(Math.min(Math.max(e,o),t))}function fp(e,o,t){if(typeof e!="number"||!Number.isFinite(e))return null;let r=10**Dw;return Math.round(Math.min(Math.max(e,o),t)*r)/r}function cp(e){return typeof e=="boolean"?e:null}function Mw(e){let o=typeof e?.font=="string"&&to.some(r=>r.key===e.font)?e.font:null,t=typeof e?.colour=="string"&&Qa.includes(e.colour)?e.colour:null;return{font:o,size:ip(e?.size,Ew,Pw),weight:ip(e?.weight,Lw,Ow),bold:cp(e?.bold),italic:cp(e?.italic),lineGap:fp(e?.lineGap,Rw,Aw),textGap:fp(e?.textGap,Bw,_w),colour:t}}function mp(e){let o={};for(let t of mt)o[t]=e&&t in e&&e[t]?Mw(e[t]):{...Nw[t]};return o}function p3(e){let o=mp(e),t={};for(let r of mt){let a=o[r],n=`--sf-ws-${r}`;if(a.font){let s=to.find(i=>i.key===a.font);s&&(t[`${n}-font`]=`var(${s.cssVar})`)}a.size!==null&&(t[`${n}-size`]=`${a.size/100}em`),a.weight!==null&&(t[`${n}-weight`]=String(a.weight)),a.bold!==null&&(t[`${n}-weight-bold`]=a.bold?"700":"400"),a.italic!==null&&(t[`${n}-style`]=a.italic?"italic":"normal"),a.lineGap!==null&&(t[`${n}-line`]=String(a.lineGap)),a.textGap!==null&&(t[`${n}-track`]=`${a.textGap}em`),a.colour!==null&&(t[`${n}-color`]=Lo[a.colour])}return t}function m3(e){let o=e?.word_styles??void 0,t={};for(let r of mt)o&&r in o&&(t[r]=o[r]??null);return mp(t)}var jw=new Set(["strong"]),xp=mt.map(e=>({open:ho[e].delimiter,close:ho[e].delimiter,kind:ho[e].kind,...jw.has(e)?{wordStart:!0}:{}})),E3=[{style:ho.highlight.kind,label:xt.highlight,title:`${xt.highlight} word style`},{style:ho.strong.kind,label:xt.strong,title:`${xt.strong} word style`},{style:ho.quiet.kind,label:xt.quiet,title:`${xt.quiet} word style`}],Kw=new Set(xp.map(e=>e.open)),Ht=[...qw.filter(e=>!Kw.has(e.open)),...xp];function js(e){return e.bullet?"- ":e.number!=null?`${e.number}. `:""}function Ks(e){return Uw(typeof e=="string"?e:"",Ht)}var Vw=Gw.map(e=>e.style).filter(e=>!$w.includes(e)).filter(e=>Ht.some(o=>o.kind===e));function Ip(){return zw(Vw)}var hp=Object.fromEntries(mt.map(e=>[ho[e].kind,ho[e].delimiter]));function gp(e,o,t,r){let a=hp[r];if(!a)return Hw(e,o,t,r);let n=e.slice(o,t),s=e.slice(Math.max(0,o-a.length),o),i=e.slice(t,t+a.length);if(s===a&&i===a)return{text:e.slice(0,o-a.length)+n+e.slice(t+a.length),selectionStart:o-a.length,selectionEnd:o-a.length+n.length};let f=n||"styled text";return{text:e.slice(0,o)+a+f+a+e.slice(t),selectionStart:o+a.length,selectionEnd:o+a.length+f.length}}function bp(e,o,t,r){let a=hp[r];return a?o>=a.length&&e.slice(o-a.length,o)===a&&e.slice(t,t+a.length)===a:Ww(e,o,t,r)}function It(e){return Ks(e).map(o=>js(o)+yp(o.children)).join(`
|
|
3
|
+
`)}function yp(e){return e.map(o=>o.kind==="text"?o.text:yp(o.children)).join("")}var Sp="Clear formatting";function rk(e,o,t){return Zw(e,o,t,gp)}function ak(e){let[o,t]=Xw(null);return Yw(()=>{let r=e.current?.ownerDocument??(typeof document>"u"?null:document);if(!r)return;let a=()=>{let n=e.current;if(!n||r.activeElement!==n)return;let s=n.selectionStart??n.value.length,i=n.selectionEnd??s;t(f=>f&&f.start===s&&f.end===i?f:{start:s,end:i})};return r.addEventListener("selectionchange",a),()=>r.removeEventListener("selectionchange",a)},[e]),[o,t]}function nk({target:e,value:o,onChange:t,disabled:r=!1,label:a="Formatting"}){let n=Qw({target:e,onChange:t}),[s,i]=ak(e),f=x=>n(h=>{let b=rk(o,x,h);return i({start:b.selectionStart,end:b.selectionEnd}),b}),u=Ip(),p={};if(s)for(let x of u)p[x.style]=bp(o,s.start,s.end,x.style);let m=It(o);return Br(ok,{offered:new Set(u.map(x=>x.style)),onMark:x=>f(x),pressed:p,disabled:r,"aria-label":l(a),className:"sf-markup-bar",last:Br("span",{className:"sf-markup-clear",children:Br(tk,{content:l(Sp),children:Br(ek,{size:"sm",onMouseDown:x=>x.preventDefault(),onClick:()=>t(m),disabled:r||m===o,"aria-label":l(Sp),children:Br(Jw,{size:14})})})})})}var Vs=nk;import{deviceField as Le}from"efficient-easel/screen/lib/puck/device-fields";import{NO_CONTROL_FIELD as EF,NoControlMark as Wi,noControlField as wn}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var Ys="__ownBox";function Cp(e){return!!e&&typeof e=="object"&&e[Ys]===!0}function Oo(e){return`${e}Phone`}function Ja(e,o,t){return typeof e=="number"?e:typeof o=="number"?o:t}var en=void 0;import{jsx as Zs,Fragment as ik}from"react/jsx-runtime";import{createContext as fk,useContext as ck}from"react";var on={ProductGrid:{source:{keep:["slug"]}},GalleryItem:{product:{keep:["code","finish"]}},FeaturedCover:{source:{keep:["slug"]}},LongRead:{source:{keep:["slug"]}}},tn={Events:["posts"],SubscribeBlogs:["posts"]};var lk=["anchor"],sk=/^href$|Href$|^url$|Url$|^link$|^mailto$|^tel$/;function _r(e){return lk.includes(e)||sk.test(e)}var Xs={Gallery:{source:{verb:"snapshot",keep:[]}},ProductHero:{source:{verb:"snapshot",keep:[]}},SpecTable:{source:{verb:"snapshot",keep:[]},wheel:{verb:"reference"},finish:{verb:"reference"},size:{verb:"reference"}},CollectionCard:{collection:{verb:"snapshot",keep:[]}},FooterMenu:{menu:{verb:"snapshot",keep:[]}},MenuBlock:{menu:{verb:"snapshot",keep:[]}},ProductGrid:{design_codes:{verb:"reference"}},ProductRef:{code:{verb:"reference"},finish:{verb:"reference"}},FitmentTable:{wheel:{verb:"reference"}},GalleryItem:{fromProduct:{verb:"reference"}},Footprint:{"offices[].group":{verb:"groupKey"},"offices[].lat":{verb:"pii"},"offices[].lng":{verb:"pii"},"offices[].geocode":{verb:"pii"}}};Xs.ContactLocations={"locations[].lat":{verb:"pii"},"locations[].lng":{verb:"pii"},"locations[].mapsUrl":{verb:"pii"},"locations[].geocode":{verb:"pii"}};var G3=Object.fromEntries(Object.entries(on).map(([e,o])=>[e,Object.keys(o)])),U3=Object.fromEntries(Object.entries(tn).map(([e,o])=>[e,[...o]]));import{NoControlMark as dk}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var vp=fk(!1);function wp({children:e}){return Zs(vp.Provider,{value:!0,children:e})}function uk(){return ck(vp)}function kp({name:e,children:o}){return!uk()||!e||_r(e)?Zs(ik,{children:o}):Zs(dk,{})}function Xe(e,o,t){return e.some(r=>(typeof r=="object"?r.value:r)===t)?t:o}var Qs="off",Js="none",ei=[{label:"None",value:"off"},{label:"1, 2, 3",value:"plain"},{label:"01, 02, 03",value:"padded"},{label:"N\xB001, N\xB002",value:"numero"}],oi=[{label:"None",value:"none"},{label:"Hairline",value:"hairline"}];function Q3(e){return Xe(ei,Qs,e)}function J3(e){return Xe(oi,Js,e)}var Tp="sf-card-index",Dr="sf-card-index",e4="pointer-events-none absolute left-[18px] top-[18px] z-10 border border-line bg-bg/70 px-2 py-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.16em] text-fg-dim",pk={plain:`counter(${Dr})`,padded:`counter(${Dr}, decimal-leading-zero)`,numero:`"N\xB0" counter(${Dr}, decimal-leading-zero)`};function o4(e,o){return o==="off"?"":`.${e}{counter-reset:${Dr}}.${e} .${Tp}{counter-increment:${Dr}}.${e} .${Tp}::before{content:${pk[o]}}`}function t4(e){return e==="hairline"?"border border-line hover:border-accent":""}var Fp=[{value:"1",label:"1st rendering"},{value:"2",label:"2nd rendering"},{value:"3",label:"3rd rendering"},{value:"4",label:"4th rendering"},{value:"5",label:"5th rendering"}];import{SCALAR_TEXT_CONTROLS as PF}from"efficient-easel/draw";import{jsx as go}from"react/jsx-runtime";import{SettingsDefaultReset as xk,SettingsField as Pp}from"efficient-easel/panel";import{useSelectedFields as Ik}from"efficient-easel/easel";import{FOCAL_DEFAULT as hk}from"efficient-shell/format";import{ImageIcon as Lp,PlayIcon as Op}from"efficient-easel/icons";import{MediaUploadField as gk}from"efficient-shell/ui";import{useContext as bk}from"react";import{ScreenDocumentContext as yk}from"efficient-easel/screen/components/ScreenDocumentContext";import{usePreviewDevice as Sk}from"efficient-easel/draw/client";import{requestMediaPick as Ck}from"efficient-easel/screen/lib/media-picker";import{useEaselHost as vk}from"efficient-easel/screen/lib/host";import{backendOf as mk}from"efficient-easel/screen/lib/session";var ze=mk,Ep=e=>e.blocks;import{useEaselSession as wk}from"efficient-easel/screen/lib/session-context";function kk(e,o){let t=null;try{t=Ik()}catch{t=null}let r=Sk()==="mobile";if(!e||!t||o&&!o(t.values??{}))return null;let a=typeof t.values?.[e]=="string"&&t.values[e]?String(t.values[e]):hk,n=Oo(e),s=typeof t.values?.[n]=="string"&&t.values[n]?String(t.values[n]):void 0,i=t.onChange;return{phone:r,desktop:a,own:s,focus:r?s??a:a,set:f=>i(r?n:e,f),clear:()=>i(n,en)}}function Rp({value:e,onChange:o,label:t,accept:r,placeholder:a,focusKey:n,focusWhen:s}){let i=vk(),f=wk(),u=l(t),p=r.startsWith("video"),m=kk(p?void 0:n,s),x=bk(yk),h=C=>Ck(i,{accept:r,title:u,...C?{file:C}:{}}).then(k=>k?.url??null);if(x&&!x.capabilities.mediaEditing)return go(Pp,{label:u,icon:p?go(Op,{}):go(Lp,{}),children:go("div",{className:"sf-image-slot-inert",children:p?l("Templates don\u2019t store videos \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created."):l("Templates don\u2019t store images \u2014 this slot stays a placeholder. Each website picks its own after it\u2019s created.")})});let b=m?.phone&&e?go(xk,{words:V()?.panel,label:l("Image focus"),changed:!!m.own,detail:l("{value} on desktop",{value:m.desktop}),onReset:m.clear}):void 0;return go(Pp,{label:u,icon:p?go(Op,{}):go(Lp,{}),action:b,children:go("div",{style:{flex:"1 1 auto",minWidth:0},children:go(gk,{value:e,onChange:o,onPick:h,accept:p?"video/*":"image/*",kind:p?"video":"image",placeholder:a===void 0?void 0:l(a),maxSizeBytes:ze(f).media.maxUploadBytes,...m?{focus:m.focus,onFocusChange:m.set}:{}})})})}import{jsx as Ap}from"react/jsx-runtime";import{useId as Tk}from"react";import{FieldSelect as Fk}from"efficient-easel/fields";import{SettingsField as Ek}from"efficient-easel/panel";function Pk(e){return e.map(({value:o,label:t,note:r})=>({value:o,label:t,...r?{meta:r}:{}}))}function Bp({label:e,options:o,value:t,onChange:r,emptyLabel:a,icon:n,hint:s}){let i=Tk(),f=`${i}-label`,u=`${i}-button`,p=Array.isArray(t)?t:[];return Ap(Ek,{label:l(e),labelId:f,icon:n,hint:s,children:Ap(Fk,{id:u,multiple:!0,value:p,options:Pk(o),onChange:r,placeholder:a===void 0?l("None"):l(a),ariaLabelledBy:`${f} ${u}`,inline:!0})})}import{jsx as ke,jsxs as gt,Fragment as Jk}from"react/jsx-runtime";import{useCallback as eT,useContext as oT,useEffect as tT,useId as Xp,useRef as Vp,useState as Yp}from"react";import{ThemeIcon as rT}from"efficient-easel/icons";import{SettingsField as aT}from"efficient-easel/panel";import{ScreenDocumentContext as nT}from"efficient-easel/screen/components/ScreenDocumentContext";import{jsx as q,jsxs as jo,Fragment as Nk}from"react/jsx-runtime";import{SettingsField as ai,SettingsGroupSub as Mk}from"efficient-easel/panel";import{Button as ri}from"efficient-shell/ui";import{jsx as qo,jsxs as _p}from"react/jsx-runtime";import{SettingsField as Lk}from"efficient-easel/panel";import{AccentIcon as Ok}from"efficient-easel/icons";import{Tooltip as Rk}from"efficient-shell/ui";function ti(e){return uo(e).background}function Ak(e){let o=$o(e.accent,ti(e));return o===null?null:{ratio:o,grade:Dt(o)}}function Bk(e){let o=ti(e),t=$o(e.accent,o);return t===null?[]:Kd(e.accent).filter(r=>{let a=$o(r,o);return a!==null&&a>t&&Dt(a)==="good"})}var _k={good:"Easy to read","large-only":_t["large-only"],hard:_t.hard};function Dp({value:e,onChange:o}){let t=Ak(e),r=t?.grade,a=t&&t.grade!=="good"?Bk(e):[];return qo(Lk,{label:l("Main color"),icon:qo(Ok,{}),hint:t?l(_k[t.grade]):void 0,action:qo(eo,{value:e.accent,onChange:n=>o({...e,accent:n}),label:l("Main color")}),children:a.length>0?qo("div",{className:"w-full min-w-0",children:_p("div",{className:"sf-readability",children:[qo("p",{className:"sf-readability-advice",children:Dk(r,!0)}),qo("div",{className:"sf-readability-suggestions",children:a.map(n=>{let s=$o(n,ti(e));return qo(Rk,{content:l("Use {colour}",{colour:n.toUpperCase()}),children:_p("button",{type:"button",className:"sf-readability-suggestion",onClick:()=>o({...e,accent:n}),children:[qo("span",{className:"sf-readability-chip",style:{background:n},"aria-hidden":!0}),s?`${s.toFixed(1)}:1`:n.toUpperCase()]})},n)})})]})}):null})}function Dk(e,o){return e?e==="good"?l("This color reads clearly on your pages."):o?l("This color is hard to read on this theme's page. The buttons below are the same hue, darkened."):l("This color is hard to read on your page background. Pick one further from it \u2014 lighter if your pages are dark, deeper if they are light."):l("Pick a color to see how it reads.")}import{ButtonIcon as Hk,GroundIcon as Wk,LayoutIcon as zk,SquareIcon as Gk,TextSmallIcon as Uk,TypeIcon as Np}from"efficient-easel/icons";var Nr=e=>l("Theme {n}",{n:e+1});function Mp({colors:e}){let o=uo(e),t=Pr(e)??o.accent;return jo("span",{className:"sf-theme-page",style:{background:o.background,color:o.text},"aria-hidden":!0,children:[q("span",{className:"sf-theme-eyebrow",style:{color:o.muted},children:l("label")}),jo("span",{className:"sf-theme-headline",children:[l("Heading")," ",q("span",{style:{color:o.accent},children:l("accent")})]}),q("span",{className:"sf-theme-body",children:l("body text")}),jo("span",{className:"sf-theme-row",children:[q("span",{className:"sf-theme-btn",style:{background:t,color:Is(e,o.accent)},children:l("button")}),q("span",{className:"sf-theme-mini",style:{background:o.surface,borderColor:o.line},children:l("card")})]})]})}var ni={"Text color":q(Np,{}),"Label color":q(Uk,{}),Background:q(Wk,{}),"Panels & cards":q(zk,{}),Borders:q(Gk,{}),"Button color":q(Hk,{}),"Button text color":q(Np,{})};function $k({label:e,colorKey:o,value:t,onChange:r,idPrefix:a="sf-theme-ink"}){let n=`${a}-${o}`;return q(ai,{label:l(e),icon:ni[e],htmlFor:n,action:q(eo,{id:n,label:l(e),value:t,onChange:s=>r(o,s)})})}function qk({value:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button`,n=/^#[0-9a-fA-F]{6}$/.test(e??""),s=n?e:o;return q(ai,{label:l("Button color"),icon:ni["Button color"],htmlFor:a,action:q(eo,{id:a,label:l("Button color"),value:s,caption:n?s:l("Main"),onChange:t})})}function jk({colors:e,accent:o,onChange:t,idPrefix:r="sf-theme-ink"}){let a=`${r}-button-ink`,n=Vd(e),s=Is(e,o),i=Pr(e)??o,f=Dt($o(s,i)??0);return q(ai,{label:l("Button text color"),icon:ni["Button text color"],hint:n&&f!=="good"?l("{grade} on the button",{grade:l(_t[f])}):void 0,htmlFor:a,action:q(eo,{id:a,label:l("Button text color"),value:s,caption:n?s:l("Auto"),onChange:t})})}var Kk=[{colour:!0},{label:"Text color",key:"text"},{label:"Label color",key:"muted"},{button:!0},{buttonInk:!0},{group:"Surfaces"},{label:"Background",key:"background"},{label:"Panels & cards",key:"surface"},{label:"Borders",key:"line"}];function li({colors:e,onChange:o,idPrefix:t}){let r=uo(e);return q(Nk,{children:Kk.map(a=>"colour"in a?q(Dp,{value:e,onChange:o},"colour"):"group"in a?q(Mk,{title:l(a.group)},a.group):"button"in a?q(qk,{value:e.button,accent:r.accent,onChange:n=>o({...e,button:n}),idPrefix:t},"button"):"buttonInk"in a?q(jk,{colors:e,accent:r.accent,onChange:n=>o({...e,buttonInk:n}),idPrefix:t},"buttonInk"):q($k,{label:a.label,colorKey:a.key,value:r[a.key],onChange:(n,s)=>o({...e,[n]:s}),idPrefix:t},a.key))})}function rn({index:e,colors:o,selected:t,role:r="radio",open:a,editable:n=!0,onPick:s,onEdit:i,onChangeColors:f}){let u=uo(o),p=Nr(e),m=e<xs.length&&!o.brandInk?xs[e]:null,x=Dt($o(u.text,u.background)??0),h=m?JSON.stringify(o)!==JSON.stringify(m):!1,b=a!==void 0;return jo("div",{className:`sf-theme-card${t?" is-selected":""}`,children:[q("button",{type:"button",role:r,"aria-checked":r==="radio"?t:void 0,"aria-selected":r==="option"?t:void 0,"aria-label":p,className:"sf-theme-pick",onClick:s,children:q(Mp,{colors:o})}),jo("div",{className:"sf-theme-foot",children:[q("span",{className:"sf-theme-name",children:p}),x!=="good"&&q("span",{className:"sf-theme-warn",children:l(_t[x])}),n&&i&&q(ri,{variant:a?"primary":"secondary",size:"sm",className:"sf-theme-edit","aria-expanded":b?a:void 0,"aria-controls":b?`sf-theme-colours-${e}`:void 0,"aria-label":a?l("Done {name}",{name:p}):l("Edit {name}",{name:p}),onClick:i,children:a?l("Done"):l("Edit")})]}),a&&jo("div",{id:`sf-theme-colours-${e}`,className:"sf-theme-colours",children:[q(li,{colors:o,onChange:C=>f?.(C)}),m&&q(ri,{variant:"link",size:"sm",className:"sf-theme-reset",disabled:!h,onClick:()=>f?.({...m}),children:h?l("Reset {name} to the preset",{name:p}):l("Not changed")})]})]})}function Hp({colors:e,name:o,nameId:t,open:r,menuId:a,labelId:n,buttonRef:s,onClick:i,onKeyDown:f,onEdit:u}){return jo("div",{className:"sf-secttheme-btn",children:[q("button",{ref:s,type:"button",className:"sf-theme-pick","aria-expanded":r,"aria-controls":a,"aria-labelledby":`${n} ${t}`,onClick:i,onKeyDown:f,children:e?q(Mp,{colors:e}):q("span",{className:"sf-secttheme-nopreview","aria-hidden":"true"})}),jo("div",{className:"sf-theme-foot",children:[q("span",{id:t,className:"sf-theme-name",children:o}),u&&q(ri,{variant:"secondary",size:"sm",className:"sf-theme-edit","aria-label":l("Edit {name}",{name:o}),onClick:u,children:l("Edit")}),q("button",{type:"button",className:"sf-secttheme-caret","aria-hidden":"true",tabIndex:-1,onClick:i,children:q("span",{className:"sf-multi-caret",children:"\u25BE"})})]})]})}import{useCallback as ui,useEffect as qp,useRef as ln}from"react";import{currentEaselSession as Xk}from"efficient-easel/screen/lib/session";import{useEaselSession as Zk}from"efficient-easel/screen/lib/session-context";import{useSyncExternalStore as Vk}from"react";var zp,si=null,ht=null,an=0,ii=new Set;function fi(e){zp=e;for(let o of ii)o()}function ci(e){si=e,an+=1,ht&&clearTimeout(ht),ht=null,fi(void 0)}function K4(e){an+=1,fi(e)}function nn(e=250){si&&(ht&&clearTimeout(ht),ht=setTimeout(()=>{ht=null;let o=si;if(!o)return;let t=++an;o().then(r=>{t===an&&fi(r)}).catch(()=>{})},e))}function Wp(){return zp}function Yk(e){return ii.add(e),()=>{ii.delete(e)}}function Gp(){return Vk(Yk,Wp,Wp)}var di=new Set;function Up(e){return di.add(e),()=>{di.delete(e)}}async function Y4(){let e=(await Promise.allSettled([...di].map(async o=>o()))).find(o=>o.status==="rejected");if(e)throw e.reason}import{WebsiteBackendError as $p,isBackendError as Q4,STATUS_UNREACHABLE as J4,provideHostFailures as e6,readHostFailure as o6,hostLoadRefusalOf as t6,hostUnreachableMessage as r6}from"efficient-easel/screen/lib/backend-error";function jp(e=Xk()){return(o,t,r)=>{let a=ze(e).theme;return a?a.update(o,r?{siteId:r}:void 0):Promise.reject(new $p("invalid","This backend stores no site theme."))}}function Kp(e){return e.themeFromDocument?{status:"skipped",reason:"template"}:e.token?null:{status:"skipped",reason:"no-token"}}async function Qk(e,o=jp()){let{themeFromDocument:t,token:r,siteId:a,patch:n}=e,s=Kp({themeFromDocument:t,token:r});if(s)return s;if(Object.keys(n).length===0)return{status:"skipped",reason:"empty"};try{return await o(n,r,a??void 0),{status:"saved"}}catch(i){return{status:"failed",error:i}}}function Wt({themeFromDocument:e,tokenRef:o,siteId:t,onResult:r}){let a=ln(null),n=ln({}),s=Zk(),i=ln(r);i.current=r;let f=ln(null),u=ui(x=>{if(x.status==="skipped"){let h=`skipped:${x.reason}`;if(f.current===h)return;f.current=h}else f.current=null;i.current?.(x)},[]),p=ui(async()=>{a.current&&(clearTimeout(a.current),a.current=null);let x=n.current;n.current={};let h=await Qk({themeFromDocument:e,token:o?.current,siteId:t,patch:x},jp(s));return u(h),h.status==="saved"&&nn(),h.status==="failed"&&(n.current={...x,...n.current}),h},[e,o,t,u,s]),m=ui((x,h=!1)=>{let b=Kp({themeFromDocument:e,token:o?.current});if(b){u(b);return}n.current={...n.current,...x},a.current&&clearTimeout(a.current),h?p():a.current=setTimeout(()=>{p()},500)},[e,o,p,u]);return qp(()=>()=>{p()},[p]),qp(()=>Up(async()=>{if(!a.current&&Object.keys(n.current).length===0)return;let x=await p();if(x.status==="failed")throw x.error}),[p]),{persist:m,flush:p}}var lT="Follow the page",w6="Follow the slideshow",sT=e=>l("Editing {name} changes it everywhere.",{name:e});function iT({colors:e}){if(!e)return ke("span",{className:"sf-secttheme-chip sf-secttheme-chip--none","aria-hidden":"true"});let o=uo(e);return gt("span",{className:"sf-secttheme-chip","aria-hidden":"true",children:[ke("i",{style:{background:o.background}}),ke("i",{className:"sf-secttheme-chip-accent",style:{background:o.accent}})]})}function fT({themes:e,value:o,onPick:t,onEdit:r,menuId:a,followLabel:n}){return gt("div",{className:"sf-multi-menu sf-secttheme-menu",id:a,role:"listbox",children:[n!==void 0&>(Jk,{children:[gt("button",{type:"button",role:"option","aria-selected":o===null,className:`sf-secttheme-item${o===null?" is-active":""}`,onClick:()=>t(Ya),children:[ke(iT,{}),ke("span",{className:"sf-secttheme-name",children:l(n)})]}),ke("div",{className:"sf-secttheme-sep",role:"presentation"})]}),o!==null&&e[o]&&ke("p",{className:"sf-secttheme-oncard",role:"presentation",children:l("{name} is on this section",{name:Nr(o)})}),e.map((s,i)=>i===o?null:ke(rn,{role:"option",index:i,colors:s,selected:!1,onPick:()=>t(i),onEdit:()=>r(i)},i))]})}function cT({index:e,colors:o,onChange:t,onDone:r}){let a=Nr(e),n=Xp();return gt("div",{className:"sf-secttheme-sheet",children:[gt("div",{className:"sf-secttheme-sheet-head",children:[ke("span",{children:a}),ke("button",{type:"button",className:"sf-secttheme-done",onClick:r,children:l("Done")})]}),ke("div",{className:"sf-secttheme-rows",children:ke(li,{colors:o,onChange:t,idPrefix:n})}),ke("p",{className:"sf-secttheme-warn",children:sT(a)})]})}function Zp({value:e,onChange:o,followLabel:t,hint:r}){let{theme:a,setTheme:n}=$(),s=Ye(a),i=oT(nT),f=i?.tokenRef,u=i?.siteId??null,p=!i?.capabilities?.hasSiteTheme,{persist:m,flush:x}=Wt({themeFromDocument:p,tokenRef:f,siteId:u}),h=Ye(s),b=h.themes,C=Hs(e),k=C!==null?b[C]:void 0,v=k??(b.length?Bt(h):void 0),[w,g]=Yp(!1),[y,E]=Yp(null),F=Vp(null),L=Vp(null),B=Xp(),O=eT(()=>{g(!1),E(null)},[]);tT(()=>{if(!w&&y===null)return;let H=z=>{F.current&&!F.current.contains(z.target)&&(x(),O())};return document.addEventListener("mousedown",H),()=>document.removeEventListener("mousedown",H)},[w,y,O,x]);let M=H=>{o(H),O()},re=H=>{if(y===null)return;let z=b.map((oe,Ae)=>Ae===y?H:oe),A={...h,themes:z};n(A),m({selected_preset:A.selected,theme_presets:A.themes})};return gt("div",{className:"sf-secttheme",ref:F,children:[ke(aT,{label:l("Theme"),icon:ke(rT,{}),labelId:`${B}-label`,hint:r,children:ke(Hp,{colors:v,onEdit:C!==null?()=>{E(C),g(!1)}:void 0,name:k?Nr(C):l(t??lT),nameId:`${B}-value`,labelId:`${B}-label`,open:w,menuId:B,buttonRef:L,onClick:()=>{E(null),g(H=>!H)},onKeyDown:H=>{H.key==="Escape"&&(w||y!==null)&&(H.preventDefault(),O())}})}),w&&y===null&&ke("div",{onKeyDown:H=>{H.key==="Escape"&&(H.preventDefault(),O(),L.current?.focus())},children:ke(fT,{themes:b,value:C,onPick:M,onEdit:H=>{E(H),g(!1)},menuId:B,followLabel:t})}),y!==null&&b[y]&&ke(cT,{index:y,colors:b[y],onChange:re,onDone:()=>{x(),O(),L.current?.focus()}})]})}import{jsx as Qp}from"react/jsx-runtime";import{useId as dT}from"react";import{FieldSelect as uT}from"efficient-easel/fields";import{SettingsField as pT}from"efficient-easel/panel";function mT(e){return e.map(({value:o,label:t,group:r,thumb:a,meta:n})=>({value:o,label:t,...r!==void 0?{group:r}:{},...a!==void 0?{thumb:a}:{},...n!==void 0?{meta:n}:{}}))}function O6({label:e,options:o,fallback:t,value:r,onChange:a,placeholder:n,bare:s=!1,icon:i}){let f=dT(),u=`${f}-label`,p=`${f}-button`,m=r??"",x=o.some(k=>k.value===m)?m:t,h=l(e),b=n===void 0?void 0:l(n),C=Qp(uT,{id:p,value:x,options:mT(o),onChange:a,placeholder:b,searchPlaceholder:b,...s?{ariaLabel:h}:{ariaLabelledBy:`${u} ${p}`},searchable:!0,groupCount:!0,inline:!0});return s?C:Qp(pT,{label:h,labelId:u,icon:i,children:C})}import{jsx as bt,jsxs as bT}from"react/jsx-runtime";import{SettingsField as im}from"efficient-easel/panel";import{LinkIcon as yT}from"efficient-easel/icons";import{LinkPicker as ST,TextLinkField as CT}from"efficient-shell/ui";import{useEffect as sm,useMemo as cn,useRef as vT,useState as fn}from"react";import{currentEaselSession as xT}from"efficient-easel/screen/lib/session";function Jp(){return xT().auth.token}import{currentEaselSession as wT}from"efficient-easel/screen/lib/session";import{useScreenDocument as kT}from"efficient-easel/screen/components/ScreenDocumentContext";var sn="homepage";function em(e){return(e??"").toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")}var om=[{value:"page",label:"Page"},{value:"anchor",label:"Anchor"},{value:"blog",label:"Blog post",needs:"service"},{value:"product",label:"Product",needs:"commerce"},{value:"custom",label:"Custom URL"}];function tm(e){return e.offersCommerce&&e.offersService?om:om.filter(o=>!o.needs||(o.needs==="commerce"?e.offersCommerce:e.offersService))}function Mr(e){return e===sn?"/":`/${e}`}function rm(e){return`/journal/${e}`}function H6(e){return`/wheels/${e}`}function am(e,o){return`${Mr(e)}#${o}`}function IT(e){return em(e)}function hT(e){return typeof e=="string"?e.trim():e&&typeof e=="object"&&typeof e.text=="string"?e.text.trim():""}function nm(...e){let o=new Set,t=[];for(let r of e)for(let a of r?.content??[]){let n=hT(a?.props?.anchor);if(!n)continue;let s=IT(n);!s||o.has(s)||(o.add(s),t.push({slug:s,name:n}))}return t}function W6(e){let o=e.indexOf("#"),t=o===-1?e:e.slice(0,o),r=t.indexOf("?");return r===-1?t:t.slice(0,r)}var gT=()=>({choosePage:l("Choose a page"),chooseSection:l("Choose a section"),noSections:l("No section anchors yet"),sectionHint:l("Jumps to a section on that page."),choosePost:l("Choose a post"),chooseProduct:l("Choose a product")});function lm(e,o,t){if(!e)return"page";if(e.startsWith("/journal/"))return"blog";if(e.startsWith("/wheels/"))return"product";if(e.includes("#")){let r=e.slice(0,e.indexOf("#"));if(r===""||r==="/"||o.includes(r))return"anchor"}return e==="/"||o.includes(e)||t&&t.listingPaths.includes(t.targetOf(e))?"page":"custom"}function pi(e,o){let t=gT(),r=e.pages.map(p=>({value:Mr(p.slug),label:p.title})),a=o?.pageOptions?o.pageOptions(r):r,n=a.map(p=>p.value),s=e.pages.map(p=>({label:p.title,options:nm(...p.docs).map(m=>({value:am(p.slug,m.slug),label:m.name}))})).filter(p=>p.options.length>0),i=p=>{switch(p){case"page":return{type:"select",options:a,placeholder:t.choosePage};case"anchor":return{type:"groups",groups:s,placeholder:s.length?t.chooseSection:t.noSections};case"blog":return{type:"select",options:e.posts.map(m=>({value:rm(m.slug),label:m.title||m.slug})),placeholder:t.choosePost};case"product":return{type:"select",options:e.products.map(m=>({value:m.href,label:m.name||m.href})),placeholder:t.chooseProduct};case"custom":return{type:"text"}}},f=tm(e.offers).map(p=>({value:p.value,label:l(p.label),target:i(p.value),...p.value==="anchor"?{hint:t.sectionHint}:{},...p.value==="blog"||p.value==="product"?{hideWhenEmpty:!0}:{}}));if(!o)return{kinds:f,rules:{kindOf:p=>lm(p,n),targetOf:p=>p,readFilter:()=>null,withFilter:p=>p}};let u=p=>{let m=o.withFilter(p,null);return o.listingPaths.includes(m)?m:p};return{kinds:f,rules:{kindOf:p=>lm(p,n,{listingPaths:o.listingPaths,targetOf:u}),targetOf:u,readFilter:o.readFilter,withFilter:o.withFilter},filtersFor:p=>o.listingPaths.includes(p)?o.filtersFor(p):null}}import{useEaselSession as TT}from"efficient-easel/screen/lib/session-context";function fm(e){let o=new Map;return(t="")=>{let r=Jp(),a=o.get(t);if(!a||a.token===null&&r!==null){let n=r||!wT().usesBridgedToken?e(r??"",t).catch(()=>[]):Promise.resolve([]);return o.set(t,{promise:n,token:r}),n}return a.promise}}var FT=fm(async(e,o)=>{let t=o?{siteId:o}:void 0,{pages:r}=ze();return r.linkTargets?r.linkTargets(t):(await r.list(t)).map(a=>({id:a.id,slug:a.slug,label:a.label,layout:null}))}),ET=fm(async(e,o)=>await ze().blog?.posts(o?{siteId:o}:void 0)??[]);function PT({value:e,onChange:o,label:t="Link",data:r,filters:a}){let n=cn(()=>pi(r,a),[r,a]),s=l(t);return bt(im,{label:s,icon:bt(yT,{}),children:bt(ST,{value:e,onChange:i=>o(i),kinds:n.kinds,rules:n.rules,filtersFor:n.filtersFor,label:s})})}function cm(){let{siteId:e,capabilities:o}=kT(),{offersCommerce:t,hasBlog:r}=o,[a,n]=fn([]),[s,i]=fn([]),[f,u]=fn([]),[p,m]=fn(null),x=TT().chrome,h=x?.products?.list,b=x?.linkFilters,C=b?void 0:x?.linkRow,k=vT(!0);sm(()=>(k.current=!0,()=>{k.current=!1}),[]),sm(()=>{let g=!0;return FT(e??void 0).then(y=>g&&k.current&&n(y)),r&&ET(e??void 0).then(y=>g&&k.current&&i(y)),t&&h?.().then(y=>g&&k.current&&u(y)),t&&b?b.load(e).catch(()=>null).then(y=>g&&k.current&&m(()=>y)):m(null),()=>{g=!1}},[e,t,r,h,b]);let v=cn(()=>({pages:a.filter(g=>!wu(g.slug)).map(g=>({slug:g.slug,title:g.label,docs:[g.layout]})),posts:r?s.map(g=>({slug:g.slug,title:g.title})):[],products:t?f.map(g=>({href:g.href,name:g.name})):[],offers:{offersCommerce:t,offersService:r}}),[a,s,f,t,r]),w=cn(()=>p?p(v.pages):null,[p,v]);return{data:v,filters:w,pages:a,offersCommerce:t,HostLinkRow:C}}function nW({label:e,icon:o,text:t,onTextChange:r,link:a,onLinkChange:n}){let{data:s,filters:i}=cm(),f=cn(()=>pi(s,i),[s,i]),u=l(e);return bt(im,{label:u,icon:o,children:bt(CT,{label:u,text:t,onTextChange:r,link:a,onLinkChange:p=>n(p),kinds:f.kinds,rules:f.rules,filtersFor:f.filtersFor})})}function dm({value:e,onChange:o,label:t="Link"}){let r=typeof e=="string"?e:"",{data:a,filters:n,pages:s,offersCommerce:i,HostLinkRow:f}=cm(),u=a.pages.map(m=>Mr(m.slug)),p=i&&f&&(r==="/"||u.includes(r))?f:void 0;return bT("div",{children:[bt(PT,{value:r,onChange:o,label:t,data:a,filters:n}),p&&bt(p,{value:r,onChange:o,pages:s})]})}import{UiIcon as ax}from"efficient-easel/draw/client";var ro={min:10,max:200,step:10};function um(e,o){let t=typeof e=="number"?e:void 0,r=typeof o=="number"?o:void 0;if(!(t===void 0&&r===void 0))return{paddingTop:t,paddingBottom:r}}var LT="sf-pad-top-phone",OT="sf-pad-bottom-phone",RT="--sf-pad-t-phone",AT="--sf-pad-b-phone",BT="sf-pad-left-phone",_T="sf-pad-right-phone",DT="--sf-pad-l-phone",NT="--sf-pad-r-phone";function xm(e,o,t,r,a,n,s,i){let f=um(e,o)??{},u={},p=["sf-section-pad"];typeof t=="number"&&(p.push(LT),u[RT]=`${t}px`),typeof r=="number"&&(p.push(OT),u[AT]=`${r}px`);let m={};return typeof a=="number"&&(m.paddingLeft=a),typeof n=="number"&&(m.paddingRight=n),typeof s=="number"&&(p.push(BT),u[DT]=`${s}px`),typeof i=="number"&&(p.push(_T),u[NT]=`${i}px`),p.length===1&&um(e,o)===void 0&&!Object.keys(m).length?null:{className:p.join(" "),style:{...f,...m,...u}}}var pm=e=>typeof e=="number"?e:void 0;function mm(e,o,t){let r=pm(e)??t,a=pm(o);return r===void 0?a:a===void 0?r:r+a}function sW(e,o={}){return{top:mm(e.padTop,e.sectionPaddingTop,o.top),bottom:mm(e.padBottom,e.sectionPaddingBottom,o.bottom)}}function iW(e){return{top:e.sectionPaddingTop,bottom:e.sectionPaddingBottom,topPhone:e.sectionPaddingTopPhone,bottomPhone:e.sectionPaddingBottomPhone,left:e.sectionPaddingLeft,right:e.sectionPaddingRight,leftPhone:e.sectionPaddingLeftPhone,rightPhone:e.sectionPaddingRightPhone}}function fW(e){return xm(e.top,e.bottom,e.topPhone,e.bottomPhone,e.left,e.right,e.leftPhone,e.rightPhone)}function cW(e,o){let t=r=>typeof r=="number"?r+o:void 0;return xm(t(e.top),t(e.bottom),t(e.topPhone),t(e.bottomPhone),e.left,e.right,e.leftPhone,e.rightPhone)}var MT=["auto","fixed","screen"],HT=["px","%"];var WT="var(--sf-header-h, 88px)",mi={min:40,max:2e3,step:10,fallback:600},xi={min:10,max:200,step:5,fallback:100},zT="sf-section-minh",Im={base:"--sf-section-minh",small:"--sf-section-minh-s"},gm=e=>typeof e=="string"&&MT.includes(e),GT=e=>typeof e=="string"&&HT.includes(e);function dn(e){let o=gm(e.sectionHeightMode)?e.sectionHeightMode:"auto",t=o==="screen"?"%":GT(e.sectionHeightUnit)?e.sectionHeightUnit:"px",r=o==="screen"?xi.fallback:mi.fallback,a=typeof e.sectionHeightValue=="number"?e.sectionHeightValue:r;return{mode:o,value:a,unit:t}}function bm(e){let{mode:o,value:t,unit:r}=dn(e);if(o==="auto")return;if(o==="fixed"&&r==="px")return[`${t}px`,null];let a=t/100,n=s=>o==="screen"?`(100${s} - ${WT})`:`100${s}`;return[`calc(${n("vh")} * ${a})`,`calc(${n("svh")} * ${a})`]}function UT(e){let o=bm(e);if(!o)return;let[t,r]=o;return{display:"grid",[Im.base]:t,...r?{[Im.small]:r}:{}}}var uW=new Set(["Hero","HeroSingle","IntroBleed","CategoryBar","DocTabs"]),zt="Height",$T="sf-section-minh-phone",hm={base:"--sf-section-minh-p",small:"--sf-section-minh-ps"};function Ii(e){return gm(e.sectionHeightModePhone)}function pW(e){return dn({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone})}function qT(e){let o=UT(e),t=Ii(e)?bm({sectionHeightMode:e.sectionHeightModePhone,sectionHeightValue:e.sectionHeightValuePhone,sectionHeightUnit:e.sectionHeightUnitPhone}):void 0;if(!o&&!t)return null;let r=[zT],a={...o??{}};return t&&(r.push($T),a[hm.base]=t[0],t[1]&&(a[hm.small]=t[1])),{className:r.join(" "),style:a}}function mW(e){return qT(e)!==null}var un="Stick to top",Ko={min:0,max:200,step:4,fallback:0},jT="sf-section-stick",KT="sf-section-stick-phone-on",VT="sf-section-stick-phone-off",ym={desktop:"--sf-stick-distance",phone:"--sf-stick-distance-phone"},IW=new Set(["CategoryBar","DocTabs","IntroBleed"]);function Sm(e){let o=typeof e=="number"&&Number.isFinite(e)?e:Ko.fallback;return Math.min(Ko.max,Math.max(Ko.min,Math.round(o)))}function hi(e){return typeof e.stickTopPhone=="boolean"}function gi(e){let o=e.stickTop===!0,t=Sm(e.stickTopDistance),r=hi(e),a=r?e.stickTopPhone===!0:o,n=r?Sm(e.stickTopDistancePhone):t;return{desktop:o,desktopDistance:t,phone:a,phoneDistance:n,ownPhone:r}}function hW(e){let o=gi(e);if(!o.desktop&&!o.phone)return null;let t=[jT],r={};return o.desktop&&(r[ym.desktop]=`${o.desktopDistance}px`),(o.ownPhone||o.phone!==o.desktop)&&(t.push(o.phone?KT:VT),o.phone&&(r[ym.phone]=`${o.phoneDistance}px`)),o.desktop||t.push("sf-section-stick-desktop-off"),{className:t.join(" "),style:r}}var YT=["column","row","tabs"],Cm="Direction",XT={column:"Stacked",row:"One row",tabs:"Tabs"},vm={Flex:YT,HeroGroup:["column","row"]},ZT={Flex:"row",HeroGroup:"column"},QT={column:"flex-col",row:"flex-row",tabs:"flex-col"};function pn(e,o){return vm[e].includes(o)?o:ZT[e]}function bW(e,o){return QT[pn(e,o)]}function wm(e){return vm[e].map(o=>({label:XT[o],value:o}))}var bi=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"Space between",value:"between"},{label:"End",value:"end"}],Fm=[{label:"Start",value:"start"},{label:"Center",value:"center"},{label:"End",value:"end"},{label:"Stretch",value:"stretch"}],Em="Wrap",yi=[{label:"Wrap",value:"wrap"},{label:"No wrap",value:"nowrap"}],km={start:"justify-start",center:"justify-center",between:"justify-between",end:"justify-end"},Tm={start:"items-start",center:"items-center",end:"items-end",stretch:"items-stretch"};function SW(e,o){let t=typeof e=="string"&&e in km?km[e]:"",r=typeof o=="string"&&o in Tm?Tm[o]:"";return[t,r].filter(Boolean).join(" ")}function CW(e){return e===!0||e==="wrap"?"flex-wrap":""}var Si="Block widths",mn=[{label:"Fit content",value:"content",weights:null},{label:"Equal",value:"equal",weights:[1,1]},{label:"Big left",value:"bigLeft",weights:[2,1]},{label:"Big right",value:"bigRight",weights:[1,2]},{label:"Bigger left",value:"biggerLeft",weights:[3,1]},{label:"Bigger right",value:"biggerRight",weights:[1,3]}],Hr="[&>*]:min-w-0 [&>*]:flex-1 [&>*]:basis-0",JT={equal:Hr,bigLeft:`${Hr} [&>*:first-child]:min-[800px]:grow-[2]`,bigRight:`${Hr} [&>*:last-child]:min-[800px]:grow-[2]`,biggerLeft:`${Hr} [&>*:first-child]:min-[800px]:grow-[3]`,biggerRight:`${Hr} [&>*:last-child]:min-[800px]:grow-[3]`};function vW(e){return typeof e=="string"?JT[e]??"":""}var Pm="Columns on phone",Ci=1,Lm=3,e0={2:"max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:basis-[calc((100%_-_var(--sf-gap-len,0px))/2)]",3:"max-[800px]:flex-wrap [&>*]:max-[800px]:min-w-0 [&>*]:max-[800px]:basis-[calc((100%_-_var(--sf-gap-len,0px)_*_2)/3)]"};function wW(e){let o=Number(e);return e0[o]??"max-[800px]:flex-col"}var Om="Block spacing",vi=[{label:"Each block",value:"each"},{label:"Gap only",value:"gap"}],o0="sf-box-gap-only";function kW(e){return e==="gap"?o0:""}var t0=["solid","dashed","dotted"],r0=["top","right","bottom","left"],FW="sf-section-border",EW="sf-section-border-self",a0=/^#(?:[0-9a-f]{3}|[0-9a-f]{4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,Rm=e=>typeof e=="number"&&Number.isFinite(e)?`${Math.min(20,Math.max(0,Math.round(e)))}px`:void 0;function Am(e,{phone:o=!1}={}){if(!e||typeof e!="object")return;let t=o?"-phone":"",r={};for(let a of r0){let n=Rm(e[a])??Rm(e.width);n!==void 0&&(r[`--sf-border-${a}-width${t}`]=n)}return typeof e.style=="string"&&t0.includes(e.style)&&(r[`--sf-border-style${t}`]=e.style),typeof e.color=="string"&&a0.test(e.color)&&(r[`--sf-border-color${t}`]=e.color.toLowerCase()),Object.keys(r).length?r:void 0}function PW(e,o){let t=Am(e),r=Am(o,{phone:!0});return t||r?{...t,...r}:void 0}var Dm="sf.gapContainer",Vo={min:-32,max:64,step:2},Nm={Grid:{sm:12,md:24,lg:40},Flex:{sm:12,md:24,lg:40},FooterGroup:{sm:8,md:16,lg:32},HeroGroup:null,Events:null,GalleryB:null,ProductGrid:null},Gt={Grid:24,Flex:24,FooterGroup:16,HeroGroup:0,Events:24,GalleryB:8,ProductGrid:2},n0=new Set(["Events","GalleryB"]);function Wr(e,o,t){if(typeof o=="number"&&Number.isFinite(o)&&o>=Vo.min)return o;if(typeof o=="string"){let r=Nm[e]?.[o];if(typeof r=="number")return r}return typeof t=="number"&&Number.isFinite(t)?t:Gt[e]}var l0="sf-gap-overlap",s0="--sf-gap-overlap",Mm="--sf-block-gap",i0="--sf-block-gap-rem",yt={min:0,max:Vo.max,step:Vo.step};function f0(e){if(typeof e!="number"||!Number.isFinite(e))return null;let o=Math.min(Math.max(Math.round(e),yt.min),yt.max);return o-o%yt.step}function OW(e){let o=f0(e);return o===null?{}:{[Mm]:`${o}px`,[i0]:`${o/16}rem`}}var Bm="sf-gap-zone",_m="--sf-gap-len";function wi(e,o){return typeof o=="number"&&Number.isFinite(o)&&o>=Vo.min?!0:typeof o=="string"&&typeof Nm[e]?.[o]=="number"}var c0={block:"sf-gap-overlap-block",inline:"sf-gap-overlap-inline",both:"sf-gap-overlap-both"};function RW(e,o,t){if(!wi(e,o)){let a=`${Gt[e]}px`,n=n0.has(e)?`var(--sf-card-gap, ${a})`:a;return{className:` ${Bm}`,style:{[_m]:`var(${Mm}, ${n})`}}}let r=Wr(e,o);return r>=0?{className:` ${Bm}`,style:{[_m]:`${r}px`}}:{className:` ${l0} ${c0[t]}`,style:{gap:"0px",[s0]:`${-r/2}px`}}}var Hm=["transparent","var(--section-bg)","var(--surface)","var(--surface-2)"],Wm={transparent:"No fill","var(--section-bg)":"Section band","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},xn="var(--section-bg)",In="inherit";function BW(e,o){return e===In?xn:e===void 0?o:hn(e)}var d0=/var\(\s*--(surface-2|surface|line)\s*(?=[,)])/g;function hn(e){return e.replace(d0,"var(--site-$1")}function zm(e,o){return e===In?!0:e===void 0&&o===xn}var Gm=["transparent","var(--wheel-stage)","var(--surface)","var(--surface-2)"],Um={transparent:"No fill","var(--wheel-stage)":"Image stage","var(--surface)":"Panels and cards","var(--surface-2)":"Second surface"},Ut="var(--wheel-stage)",gn="transparent",zr="inherit";function NW(e,o){return hn(ki(e,o))}function ki(e,o){return e===zr?Ut:e==null?o:e===!0?Ut:e===!1?gn:e}function MW(e){return typeof e=="string"&&e!==zr?hn(e):Ut}function HW(e){return e!==gn&&e!=="none"&&e!==""}function $m(e,o){return e===zr||e===!0?!0:e==null?o===Ut:!1}var qm="inherit",bn="fixed",jm=e=>typeof e!="number"&&e!==bn,u0="var(--sf-heading-max, 9999px)";function zW(e,o,t,r){if(typeof e=="number")return`${e}px`;if(e===bn)return o;let a=r?`var(--size-${r}, ${o})`:o;return t==="heading"?`min(${a}, ${u0})`:a}var ye={min:1e3,max:2e3,step:50,default:1600};function p0(e){return{maxWidth:e,marginInline:"auto",width:"100%"}}var Km="--sf-site-width",Ti=`var(${Km},${ye.default}px)`,UW=`max-w-[${Ti}]`,$W=`max-w-[${ye.default}px]`;function m0(e){return typeof e!="number"||!Number.isFinite(e)?ye.default:Math.round(Math.min(Math.max(e,ye.min),ye.max))}function qW(e){let o=m0(e);return o===ye.default?{}:{[Km]:`${o}px`}}var bo={min:0,max:80,step:4,default:40},Vm="--sf-site-gutter",Ge=`var(${Vm},${bo.default}px)`,x0=`px-[${Ge}]`;var Yo={md:`min(24px,${Ge})`,sm:`min(20px,${Ge})`,frame:`min(24px,${Ge})`,tabs:`min(16px,${Ge})`},jW=[[`max-[1100px]:px-[${Yo.md}]`,"max-[1100px]:px-6"],[`max-[1100px]:px-[${Yo.tabs}]`,"max-[1100px]:px-4"],[`max-[960px]:px-[${Yo.frame}]`,"max-[960px]:px-6"],[`max-[900px]:px-[${Yo.md}]`,"max-[900px]:px-6"],[`max-[800px]:px-[${Yo.md}]`,"max-[800px]:px-6"],[`max-[720px]:px-[${Yo.sm}]`,"max-[720px]:px-5"],[`max-[800px]:px-[${Yo.sm}]`,"max-[800px]:px-5"],[`max-[640px]:px-[${Yo.sm}]`,"max-[640px]:px-5"],[`min-[800px]:px-[${Ge}]`,"min-[800px]:px-10"],[`max-[720px]:px-[min(24px,${Ge})]`,"max-[720px]:px-6"],[`max-[800px]:-mx-[min(20px,${Ge})]`,"max-[800px]:-mx-5"],[`max-[720px]:-mx-[min(20px,${Ge})]`,"max-[720px]:-mx-5"],[`-mx-[${Ge}]`,"-mx-10"],[x0,"px-10"]];var KW="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[800px]:px-[min(20px,var(--sf-site-gutter,40px))]",VW="mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] max-[1100px]:px-[min(24px,var(--sf-site-gutter,40px))]";function I0(e){return typeof e!="number"||!Number.isFinite(e)?bo.default:Math.round(Math.min(Math.max(e,bo.min),bo.max))}function YW(e){let o=I0(e);return o===bo.default?{}:{[Vm]:`${o}px`}}var yn=Ti,XW=`max-w-[${yn}]`,ZW=`max-w-[min(var(--sf-page-cap,${ye.default}px),${ye.default}px)]`,Ym="--sf-hero-cap",h0=`var(${Ym},none)`,QW=`max-w-[${h0}]`,Fi="--sf-hero-bleed-m",Ei="--sf-hero-bleed-w",JW=`var(${Fi},calc(50% - 50vw))`,ez=`var(${Ei},100vw)`,oz=`mx-[var(${Fi},calc(50%_-_50vw))]`,tz=`w-[var(${Ei},100vw)]`,Pi="--sf-hero-chrome-x",Li="--sf-hero-chrome-cap";function rz(e){return e===!0?{[Ym]:yn,[Fi]:"auto",[Ei]:"100%",[Pi]:"24px",[Li]:"none"}:{}}var Oi=`calc(${Ti} - ${Ge}*2)`,az=`max-w-[${Oi.replace(/ /g,"_")}]`;var g0="--sf-chrome-cap",b0=`var(${g0},${Oi})`,nz="data-page-width";function lz(e){return e==="full"?"full":null}function sz(e){return e==="full"?null:p0(e==="content"?Oi:b0)}function iz(e){if(e==="full")return"full";if(e==="content")return"content"}var y0=["contained","page","full"],Zm=["full","page"],$t={full:"Full width",page:"Content width"},Ai="inherit",S0=e=>typeof e=="string"&&y0.includes(e),Qm=e=>e===Ai;function Ro(e,o){let t=typeof e.pageWidth=="number"?e.pageWidth:ye.default;return Qm(e.widthMode)?{mode:"full",pageWidth:t,inherited:!0}:e.widthMode==="contained"?{mode:"page",pageWidth:t,inherited:!1}:S0(e.widthMode)?{mode:e.widthMode,pageWidth:t,inherited:!1}:e.contained===!0?{mode:"page",pageWidth:t,inherited:!1}:typeof e.fullWidth=="boolean"?{mode:e.fullWidth?"full":"page",pageWidth:t,inherited:!1}:e.contained===!1?{mode:"full",pageWidth:t,inherited:!1}:{mode:o,pageWidth:t,inherited:o==="full"}}function Bi(e){return Ro(e,"page").mode==="full"}var Gr="site",Jm={Hero:"hero",HeroSingle:"hero",IntroBleed:"scrollOver",SpecStrip:"background",Timeline:"background",Footprint:"background",Prose:"background",ParagraphsA:"background",Cards:"background",KeyFeatures:"background",Chart:"background",Mockup:"background",Testimonials:"background",TitleWithButtons:"background",Countdown:"background",DocMasthead:"background",DocBody:"background",DocMetaCards:"background",Gallery:"background",GalleryB:"background",Reviews:"background",ReviewForm:"background",Form:"background",AppointmentBooking:"background",FAQ:"background",Events:"background",Split:"both",Breadcrumb:"both",Collections:"both",CatalogFilterBar:"both",AlloyWheelsListing:"both",Banner:"contained",Stats:"contained",Logos:"contained",Divider:"contained",OrderSummary:"contained",DeliveryOptions:"contained",PaymentBadges:"contained",CheckoutCTA:"contained",Flex:"contained",Grid:"contained",Manifesto:"contentColumn",SectionHeader:"contentFull",ProductHero:"contentFull",ProductGrid:"productGrid",TimelineTrack:"capped",DetailRows:"capped",FitmentTable:"capped",TyreSizes:"capped",TyreFitment:"capped",EuTyreLabel:"capped",BundleOffer:"capped",CompatibleTyres:"capped",RelatedProducts:"capped",ProcessSteps:"capped",StatsParagraph:"capped",Masthead:"capped",FeaturedCover:"capped",LongRead:"capped",Series:"capped",ContactLocations:"capped",FitmentFinder:"capped",SpecTable:"capped",Subscribe:"capped",SubscribeBlogs:"capped",ContactRouting:"capped",SubmitBuild:"capped"};function C0(e){return Object.prototype.hasOwnProperty.call(Jm,e)}var Ri=e=>e==="full"||e==="content",v0=e=>typeof e=="number"&&Number.isFinite(e)&&e>0,Xm=({widthMode:e,fullWidth:o,pageWidth:t})=>({widthMode:e,fullWidth:o,pageWidth:t});function w0(e,o){let t={background:null,content:null,contentMax:null};switch(e){case"hero":return Qm(o.widthMode)||o.widthMode!=="full"?t:{...t,background:"full"};case"scrollOver":return o.fullWidth===!1?t:{...t,content:"full"};case"background":return Ro(o,"full").mode==="full"?t:{...t,background:"content"};case"both":return Ro(o,"full").mode==="full"?{...t,content:"full"}:{...t,background:"content"};case"contained":return Ro(o,"page").mode==="full"?{...t,content:"full"}:{...t,background:"content"};case"contentColumn":return Ro(Xm(o),"page").mode==="full"?{...t,content:"full"}:t;case"contentFull":return Ro(Xm(o),"full").mode==="full"?{...t,content:"full"}:t;case"productGrid":{let r=Ro(o,"full");return r.mode==="full"?{...t,content:"full"}:{background:"content",content:"content",contentMax:r.pageWidth}}case"capped":return{...t,background:"content"}}}function _i(e,o){if(!C0(e))return{background:null,content:null,contentMax:null};let t=Jm[e],r=o,a=w0(t,r),n=r.backgroundWidth===Gr?null:Ri(r.backgroundWidth)?r.backgroundWidth:a.background;return r.contentWidth===Gr?{background:n,content:null,contentMax:null}:Ri(r.contentWidth)?{background:n,content:r.contentWidth,contentMax:r.contentWidth==="content"&&v0(r.contentMax)?r.contentMax:null}:{background:n,content:a.content,contentMax:a.contentMax}}var ex="siteWidths";function Sn(e){return Ri(e)?e:null}function ox(e,o){return{[ex]:{background:Sn(e),content:Sn(o)}}}function dz(e){let o=e.puck?.metadata?.[ex];return{background:Sn(o?.background),content:Sn(o?.content)}}import{jsx as k0}from"react/jsx-runtime";import{createContext as T0,useContext as F0}from"react";var E0=2,P0=E0+1,tx=T0(2);function rx({tier:e,children:o}){return k0(tx.Provider,{value:e,children:o})}function Di(e){let o=F0(tx);return P0+Math.max(0,e-o)}import{withStyleKind as LF}from"efficient-easel/style-clipboard";import{TEXT_CONTROL_KINDS as TG,SCALAR_TEXT_CONTROLS as FG}from"efficient-easel/draw";function Qo(e){for(let[o,t]of Object.entries(e))t&&typeof t=="object"&&!_o(t)&&LF(t,`section:${o}`);return e}function wx(){return null}function zi(e){if(!e.trim())throw new Error("noGlyph() needs a reason naming the ruling that decided it.");return I(wx,{},e)}function OF(e){return e.type===wx}function yo(e){return OF(e)?void 0:e}function Ct(e,o){return l("{value} from {from}",{value:e,from:o})}function RF(){let{appState:e}=$r(a=>a),o=e.data.root?.props??{},{mode:t,pageWidth:r}=Ro(o,"full");return t==="page"?Ct(`${r}px`,l("the page")):t==="contained"?Ct(l("Contained"),l("the page")):Ct(l("Full"),l("the page"))}function AF(){let{blockGap:e}=$();return e===null?l("this container's own spacing"):Ct(`${e}px`,l("Site styles"))}function BF({inherited:e,onReset:o,label:t}){return I(Ue,{words:V()?.panel,label:l(t),changed:!e,detail:AF(),onReset:o})}function _F({inherited:e,onReset:o,label:t}){return I(Ue,{words:V()?.panel,label:l(t),changed:!e,detail:RF(),onReset:o})}function jt({value:e,onChange:o,label:t,placeholder:r,hint:a,multiline:n,hideable:s=!0,markup:i=!0}){let{text:f,hidden:u}=Zo(e),p=Mi(null),m=Mi(null),x=w=>o(s?{text:w,hidden:u}:w),h=()=>o({text:f,hidden:!u}),b=s&&u,C=O0(),k=a?zF(a)?I("span",{className:"sf-hint-keep sf-hint-while-typing",children:l(a)}):I(Yu,{children:l(a)}):void 0,v=u?l("Show {label} on the slide",{label:l(t)}):l("Hide {label} on the slide",{label:l(t)});return I(ne,{label:l(t),icon:I(cF,{}),htmlFor:C,className:b?"is-hidden":void 0,hint:k,action:s?I(vx,{content:v,children:I("button",{type:"button",className:"sf-field-eye","aria-pressed":u,"aria-label":v,onClick:h,children:u?I(ax,{name:"eye-off",size:14}):I(ax,{name:"eye",size:14})})}):void 0,children:vt("div",{className:"sf-copybox",children:[i&&I(Vs,{target:n?m:p,value:f,onChange:x}),n?I("textarea",{id:C,ref:m,value:f,placeholder:r===void 0?void 0:l(r),onChange:w=>x(w.target.value)}):I("input",{id:C,ref:p,type:"text",value:f,placeholder:r===void 0?void 0:l(r),onChange:w=>x(w.target.value)})]})})}function SG(e,o){return{...e,[_0]:o}}function CG(e){let o=e[Ao];if(!o)throw new Error("withOffPage: the field holds no authored text");return{...e,[Ao]:{...o,offPage:!0}}}function kn(e){return!e||typeof e!="object"?!1:e[Ao]?.offPage===!0}var kx="sfPanelOnly";function vG(e){if(!e[Ao])throw new Error("withPanelOnly: the field holds no authored text");return{...e,[kx]:!0}}function Tx(e){return!!e&&typeof e=="object"&&e[kx]===!0}function wG(e){let o=e[Ao];if(!o)throw new Error("withIdentifier: the field holds no authored text");return{...e,[Ao]:{...o,identifier:!0}}}function EG(e,o){if(!e[Ao])throw new Error("inOwnBox: the field holds no authored text");let{[EF]:t,...r}=e;return{...r,[Ys]:!0,render:o}}var DF=new Set(PF),Kt=(e,o)=>{let t={...o,[Ao]:e};if(!DF.has(e.control))return t;let r=o.render;return{...wn(t,"authored-copy"),render:a=>I(kp,{name:a.name,children:r(a)})}},PG="Everything else on this block comes from the linked post. Unlink it to edit by hand.",NF={field:"source.slug",set:!0},LG={not:NF},MF="Select a word, then press the highlighter.",HF="A short name so a link can jump straight to this section, like yoursite.com/page#about.",WF=new Set([MF]),zF=e=>WF.has(e);function OG(e,o,t){return Kt({control:"text",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:e,placeholder:o,hint:t})})}function RG(e,o,t){return Kt({control:"textarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0})})}function GF(e,o,t){return Kt({control:"plainText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1,markup:!1})})}function AG(e,o,t){return Kt({control:"copyText",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:e,placeholder:o,hint:t,hideable:!1})})}function BG(e){return{type:"custom",[A0]:{label:e},render:({value:o,onChange:t})=>I(dm,{value:R0(o),onChange:t,label:e})}}function _G(e,o,t){return Kt({control:"plainTextarea",label:e,placeholder:o,hint:t},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:e,placeholder:o,hint:t,multiline:!0,hideable:!1})})}var Fx={Design:D0,Animation:dx};function Ex(e,o){return e.includes("Design")?o!=="Design":null}function UF({label:e}){return I(pF,{title:l(e),level:Di(1)})}function $F({level:e,label:o}){return e===1?I(UF,{label:o}):I(Vt,{label:o})}function Px(e,o){return{type:"custom",[Hi]:{label:e,level:o},render:()=>I($F,{level:o,label:e})}}function Oe(e){return Px(e,2)}function DG(e){return{type:"custom",render:()=>I(qF,{text:e})}}function qF({text:e}){return I("p",{className:"sf-note",children:l(e)})}function NG(e){return Px(e,1)}function MG(e){return _o(e)!==null&&e?.tabs!==void 0}var nx=new Map;function Tn(e,o){let t=`${e}\0${o?o.join(""):""}`,r=nx.get(t)??{type:"custom",tabs:o,[Hi]:{label:e,level:1},bucket:e,marker:!0,render:()=>I(Bo,{})};return nx.set(t,r),r}var lx=new Map;function Gi(e){let o=lx.get(e)??{type:"custom",[Hi]:{label:e,level:1},designGroup:e,marker:!0,...e==="Content"?{}:{fold:e},render:()=>I(Bo,{})};return lx.set(e,o),o}function jF(e){let o=e;return o?.marker===!0&&typeof o.fold=="string"?o.fold:null}function Lx(e,o){return jF(e)===o?e:{...e,marker:!0,fold:o,render:()=>I(Bo,{})}}function Ox(e){let o=e;if(o.marker===!0&&o.fold===void 0)return e;let{fold:t,...r}=e;return{...r,marker:!0,render:()=>I(Bo,{})}}function Vt({label:e}){return I(mF,{title:l(e),level:Di(2)})}function Rx({swatches:e,current:o,onPick:t,names:r}){let a=e.find(i=>i.toLowerCase()===o.toLowerCase()),n=a?r?.[a]:void 0,s=n?l(n):o;return vt("div",{className:"sf-swatches",children:[e.map(i=>{let f=r?.[i]?l(r[i]):i;return I(vx,{content:f,children:I("button",{type:"button","aria-pressed":o.toLowerCase()===i.toLowerCase(),className:`sf-swatch ${o.toLowerCase()===i.toLowerCase()?"is-active":""}`,style:{background:i},onClick:()=>t(i),"aria-label":f})},i)}),I("span",{className:"sf-swatch-hex",children:s})]})}function HG(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=zm(t,o);return I(ne,{label:l(e),icon:I(W0,{}),changed:!a,action:I(Ue,{words:V()?.panel,label:l(e),changed:!a,detail:l("the theme's section background"),onReset:()=>r(In)}),children:Rx({swatches:Hm,current:a?xn:t??o??"",onPick:r,names:Wm})})}}}function KF(e,o){return{type:"custom",render:({value:t,onChange:r})=>{let a=t,n=$m(a,o);return I(ne,{label:l(e),icon:I(J0,{}),changed:!n,action:I(Ue,{words:V()?.panel,label:l(e),changed:!n,detail:l("the theme's image stage"),onReset:()=>r(zr)}),children:Rx({swatches:Gm,current:n?Ut:ki(a,o),onPick:r,names:Um})})}}}function Fn(e=t=>t,o){return Qo({_gSectionTheme:Oe(Ju),sectionAccent:{type:"custom",render:({value:t,onChange:r})=>I(Zp,{value:e(t),onChange:r,followLabel:o})}})}function $e({min:e,max:o,step:t,value:r,onChange:a,suffix:n="",readout:s=!0,notch:i,ariaLabel:f,disabled:u=!1}){let p=i!==void 0&&Number.isFinite(i)&&i>=e&&i<=o;return I("div",{className:p?"sf-slider has-notch":"sf-slider",style:p?{"--sf-notch":(i-e)/(o-e)}:void 0,children:I(FF,{min:e,max:o,step:t,value:r,suffix:n||void 0,showInput:s,label:f===void 0?void 0:l(f),disabled:u,size:"sm",className:"sf-slider-track",onChange:m=>{m!==null&&m!==r&&a(m)}})})}function qt(e,o,t,r,a,n,s="",i){return{type:"custom",render:f=>I(ne,{label:l(e),icon:yo(o),action:i?i("storedValue"in f?f.storedValue:f.value,f.onChange):void 0,children:$e({min:t,max:r,step:a,value:typeof f.value=="number"?f.value:n,suffix:s,ariaLabel:e,onChange:f.onChange})})}}function Ax(e,o){let{min:t,max:r,step:a=1,unsetLabel:n,hint:s,restTrack:i,unsetMark:f,icon:u}=o;return{type:"custom",render:({value:p,onChange:m})=>{let x=typeof p=="number"?p:null,h=x===null;return I(ne,{label:l(e),icon:u?yo(u):void 0,value:h?f||n===void 0?void 0:l(n):`${x}px`,changed:!h,action:f?fx(f,{changed:!h,onReset:()=>m(null)}):I(Ue,{words:V()?.panel,label:l(e),changed:!h,onReset:()=>m(null)}),hint:typeof s=="string"?l(s):s,children:i?i({min:t,max:r,step:a,px:x,label:e,onChange:m}):$e({min:t,max:r,step:a,value:x??t,readout:!1,ariaLabel:e,onChange:m})})}}}function WG(e){let o=qt("Gap",I(px,{}),Vo.min,Vo.max,Vo.step,Gt[e],"px",(t,r)=>I(BF,{inherited:!wi(e,t),onReset:()=>r(void 0),label:"Gap"}));return{type:"custom",[Dm]:e,render:t=>o.render({...t,value:Wr(e,t.value,t.field?.siteGap),storedValue:t.value,onChange:r=>t.onChange(r)})}}var En="Corners";function Ui(e){return{type:"custom",render:({value:o,onChange:t})=>{let r=typeof o=="number"&&Number.isFinite(o)?o:null,a=r!==null;return I(ne,{label:l(En),icon:I(q0,{}),changed:a,action:fx(e.mark,{changed:a,onReset:()=>t(null)}),hint:e.hint,children:I(VF,{tier:e,px:r,onRadius:t})})}}}function Pn(e){let o=null;try{o=cx()}catch{o=null}return[o?.values?.[e],t=>o?.onChange(e,t)]}function VF({tier:e,px:o,onRadius:t}){let r=e.useFollowed(),a=e.useClosedReason?e.useClosedReason():null,[n,s]=Pn(e.sidesKey),i=Eo(n)??[...dt];return I(kF,{label:l(En),value:i,corners:Lu,onChange:f=>{let u=Eo(f)??[];s(u.length===dt.length?null:u)},radius:o,onRadiusChange:t,radiusMin:Je,radiusMax:st,radiusStep:e.step??1,radiusPlaceholder:String(r),disabled:a!==null,disabledReason:a??void 0})}function Bx(){return wn({type:"custom",render:()=>I(Wi,{})},"always")}function YF({label:e,changed:o=!1,onReset:t=()=>{}}){let{cornerRadiusPx:r}=$(),a=typeof r=="number"?`${r}px`:l("not set");return I(Ue,{words:V()?.panel,label:l(e),changed:o,detail:r==null?l("the built-in corners"):Ct(a,l("Site styles")),onReset:t})}function XF(){let{cornerRadiusPx:e}=$();return typeof e=="number"?e:Je}function ZF(){return Ui({sidesKey:"sectionCornerSides",useFollowed:XF,useClosedReason:()=>Dx()?l(_x):null,mark:I(YF,{label:En}),hint:I(QF,{})})}var _x="This section runs edge to edge, so its corners sit off the page. Set Width to Content width to use them.";function Dx(){return Bi(So())}function QF(){return I(Bo,{children:Dx()?_x:"Follows Site styles \u25B8 Basics \u25B8 Corners until you set a number here."})}function Ln(){return Qo({_gShape:Oe("Shape"),sectionCorners:ZF(),sectionCornerSides:Bx(),sectionBorder:sx("desktop"),sectionBorderPhone:sx("mobile")})}var JF=()=>({width:l("Border width"),sides:{top:l("Border top"),right:l("Border right"),bottom:l("Border bottom"),left:l("Border left")},style:l("Border style"),styles:{solid:l("Solid"),dashed:l("Dashed"),dotted:l("Dotted")},color:l("Border color"),unit:"px"});function eE(e){let o=Object.fromEntries(Object.entries(e).filter(([,t])=>t!=null&&t!==""));return Object.keys(o).length?o:void 0}function oE(){let e;try{let o=Ye($().theme);e=o.themes[o.selected]?.line}catch{e=void 0}return e||$d.line}function tE({value:e,onChange:o,tier:t}){let[r]=Pn("sectionBorder"),a=oE(),n=e&&typeof e=="object"?e:{},s=t==="mobile"?r&&typeof r=="object"?r:{}:{},[i,f]=vn(()=>yF(n,s)),u=JF();return I(ne,{label:l("Border"),icon:I(z0,{}),action:I(yx,{each:i,label:l("Each side"),onChange:f}),children:I(xF,{label:l("Border"),value:n,each:i,onChange:p=>o(eE(p)),placeholder:{sides:bF(s),style:s.style??"solid",color:s.color||a},presets:[a],words:u,max:20})})}function sx(e){return Le(e,{type:"custom",render:({value:o,onChange:t})=>I(tE,{value:o,onChange:t,tier:e})})}function On(){return{_gMotion:Oe("Motion"),sectionAnimation:ji("Entrance",I(dx,{}),[...op],Ws)}}function $i(){let e=null;try{let{appState:o,selectedItem:t}=$r(a=>a),r=t?.props?.id?String(t.props.id):void 0;e=r?Gs(o?.data,r):null}catch{e=null}return e!==null&&Bi(e)}function Nx(e){let{cornerRadiusPx:o}=$(),t=$i(),r=typeof o=="number"?o:e,a=null;try{let{appState:s,selectedItem:i}=$r(u=>u),f=i?.props?.id?String(i.props.id):void 0;a=f?Gs(s?.data,f):null}catch{a=null}if(t||!a)return r;let n=a.sectionCorners;return Es(n)?n:r}function rE({label:e,changed:o=!1,onReset:t=()=>{}}){let r=$i(),a=Nx(Je),n=r?"Site":"Section";return I(Ue,{words:V()?.panel,label:l(e),changed:o,detail:Ct(`${a}px`,r?l("Site styles"):l("the section")),onReset:t})}function aE(){return I(Bo,{children:$i()?l("The section is full width, so this card follows Site styles \u25B8 Basics \u25B8 Corners."):l("Follows the section's Corners until you set a number here.")})}function nE(){return Ui({sidesKey:"cardCornerSides",useFollowed:()=>Nx(Je),mark:I(rE,{label:En}),hint:I(aE,{})})}function lE(){return{type:"custom",render:()=>I(Nu,{})}}function zG(){return{_gShape:Oe("Shape"),cardCorners:nE(),cardCornerSides:Bx(),cardCornersApplyAll:lE()}}function GG(){return Xo("Justify",I(H0,{}),bi,bi[0].value)}function UG(){return Xo("Item alignment",I(N0,{}),Fm,"stretch")}function $G(){return Xo(Em,I(uF,{}),yi,yi[0].value)}function qG(){return{type:"custom",render:({value:e,onChange:o})=>{let t=mn.find(r=>r.value===e)??mn[0];return I(ne,{label:l(Si),icon:I(ux,{}),value:l(t.label),children:I(Cx,{className:"sf-gallery-layouts",label:l(Si),value:t.value,onChange:o,options:mn.map(r=>({value:r.value,label:l(r.label),picture:I("span",{className:"sf-gallery-pic",children:sE(r.weights).map((a,n)=>I("i",{style:{gridColumn:`span ${a}`}},n))})}))})})}}}function sE(e){if(!e)return[3,4];let o=e.reduce((t,r)=>t+r,0);return e.map(t=>Math.round(t/o*12))}function jG(){return Xo(Om,I(px,{}),vi,vi[0].value)}function KG(){return qt(Pm,I(aF,{}),Ci,Lm,1,Ci)}function VG(e){let o=ji(Cm,zi("`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)."),wm(e),pn(e,void 0));return{type:"custom",render:t=>o.render({...t,value:pn(e,t.value),onChange:r=>t.onChange(r)})}}function YG(e,o,t,r,a,n){return{type:"custom",render:({value:s,onChange:i})=>I(ne,{label:l(e),icon:I(Ds,{noun:n}),action:I(Ue,{words:V()?.panel,label:l(e),changed:!jm(s),detail:l("the Text style in Site styles"),onReset:()=>i(qm),defaultAction:{onPress:()=>i(bn),title:l("Keep this section's own built-in size"),icon:I(G0,{})}}),children:$e({min:o,max:t,step:r,value:typeof s=="number"?s:a,suffix:"px",ariaLabel:e,onChange:i})})}}function XG(){return{_gCellWidth:Oe("Cell width"),gridSpan:Xo("Positions",I(ux,{}),[{label:"Auto",value:""},...Array.from({length:$a},(e,o)=>({label:o===0?"1 position":`${o+1} positions`,value:String(o+1)}))],"")}}function So(){let e=null;try{e=$r(o=>o).selectedItem}catch{e=null}return e?.props??{}}function iE({min:e,max:o,step:t,px:r,label:a,onChange:n,desktopKey:s,fallback:i}){let f=So()[s],u=Ja(void 0,f,i);return I(Bo,{children:$e({min:e,max:o,step:t,value:Ja(r,f,i),readout:!1,ariaLabel:a,notch:u,onChange:n})})}function fE({label:e,desktopKey:o,fallback:t,changed:r=!1,onReset:a=()=>{}}){let n=So()[o],s=Ja(void 0,n,t);return I(Ue,{words:V()?.panel,label:l(e),changed:r,detail:l("{value} on desktop",{value:`${s}px`}),onReset:a})}function cE(e){return Ax(e.label,{icon:e.icon,min:e.min,max:e.max,step:e.step,unsetLabel:"Follows Desktop",unsetMark:I(fE,{label:e.label,desktopKey:e.desktopKey,fallback:e.fallback}),restTrack:o=>I(iE,{...o,desktopKey:e.desktopKey,fallback:e.fallback})})}function ZG(e){return{type:"custom",render:({value:o,onChange:t})=>I(uE,{...e,value:o,onChange:t})}}function dE({label:e,icon:o,options:t,value:r,resolved:a,restWord:n,onChange:s}){let i=t.some(f=>f.value===r);return I(ne,{label:l(e),icon:yo(o),action:I(Ue,{words:V()?.panel,label:l(e),changed:i,detail:l("{value} on desktop",{value:l(n)}),onReset:()=>s(void 0)}),children:Dn({options:t,value:i?r:a,onChange:f=>s(f),ariaLabel:e})})}function uE({label:e,icon:o,options:t,desktopKey:r,resolve:a,value:n,onChange:s}){let i=So()[r],f=a(void 0,i),u=t.find(p=>p.value===f)?.label??"";return I(dE,{label:e,icon:o,options:t,value:n,resolved:f,restWord:u,onChange:s})}var pE={Top:"Padding top",Bottom:"Padding bottom",Left:"Padding left",Right:"Padding right"},mE={Top:gx,Bottom:xx,Left:Ix,Right:hx},xE=e=>{let o=mE[e];return I(o,{})};function QG(e={}){let o=e.keys?.top??"sectionPaddingTop",t=e.keys?.bottom??"sectionPaddingBottom",r=e.group!==!1,a=k=>pE[k],n=k=>qt(a("Top"),I(gx,{}),ro.min,ro.max,ro.step,k,"px"),s=(k,v,w,g=ro)=>Le("mobile",cE({label:a(k),icon:xE(k),desktopKey:v,min:g.min,max:g.max,step:g.step,fallback:w})),i=e.top??ro.min,f=e.bottom??ro.min,u="sectionPaddingLeft",p="sectionPaddingRight",m=e.sideBounds??ro,x=e.side??m.min,h=e.sidePhone??x,b=e.phone===!0,C=k=>b?Le("desktop",k):k;return Qo({...r?{_gSpacing:Oe("Padding")}:{},[o]:C(n(i)),...b?{[Oo(o)]:s("Top",o,i)}:{},...e.only==="top"?{}:{[t]:C(qt(a("Bottom"),I(xx,{}),ro.min,ro.max,ro.step,f,"px")),...b?{[Oo(t)]:s("Bottom",t,f)}:{}},...e.sides?{[u]:C(qt(a("Left"),I(Ix,{}),m.min,m.max,m.step,x,"px")),...b?{[Oo(u)]:s("Left",u,h,m)}:{},[p]:C(qt(a("Right"),I(hx,{}),m.min,m.max,m.step,x,"px")),...b?{[Oo(p)]:s("Right",p,h,m)}:{}}:{}})}var Ur=["top","right","bottom","left"],IE={top:"sectionPaddingTop",right:"sectionPaddingRight",bottom:"sectionPaddingBottom",left:"sectionPaddingLeft"},ix=e=>typeof e=="number"?e:null;function hE(e,o,t){let r={};for(let a of Ur)t[a]!==o[a]&&(r[e[a]]=t[a]??void 0);return r}function gE({tier:e,o}){let t=null;try{t=cx()}catch{t=null}let r=t?.values??{},a=e==="mobile"?o.phoneKeys:o.keys,n=Object.fromEntries(Ur.map(u=>[u,ix(r[a[u]])])),s=Object.fromEntries(Ur.map(u=>[u,String(e==="mobile"?ix(r[o.keys[u]])??o.fallback[u]:o.fallback[u])])),[i,f]=vn(()=>gF(n,s));return I(ne,{label:l("Padding"),icon:I(rF,{}),action:I(yx,{each:i,label:l("Each side"),onChange:f}),children:I(hF,{label:l("Padding"),each:i,value:n,placeholder:s,min:o.min,max:o.max,step:o.step,onChange:u=>{let p=hE(a,n,u);Object.keys(p).length&&t?.onChangeMany(p)},words:{sides:{top:l("Padding top"),right:l("Padding right"),bottom:l("Padding bottom"),left:l("Padding left")},vertical:l("Top and bottom"),horizontal:l("Left and right"),unit:"px"}})})}function Rn(e={}){let o={...IE,...e.keys},t={keys:o,phoneKeys:Object.fromEntries(Ur.map(i=>[i,Oo(o[i])])),fallback:{top:0,right:0,bottom:0,left:0,...e.fallback},min:e.min??0,max:e.max??200,step:e.step??4},r=e.phone!==!1,a=i=>{let f={type:"custom",render:()=>I(gE,{tier:i,o:t})};return r?Le(i,f):f},n=()=>wn({type:"custom",render:()=>I(Wi,{})},"always"),s=Ur.filter(i=>i!=="top");return Qo({...e.group===!1?{}:{_gSpacing:Oe("Padding")},[t.keys.top]:a("desktop"),...r?{[t.phoneKeys.top]:a("mobile")}:{},...Object.fromEntries(s.map(i=>[t.keys[i],{...n(),reachedBy:t.keys.top}])),...r?Object.fromEntries(s.map(i=>[t.phoneKeys[i],Le("mobile",n())])):{}})}var bE={contained:"Contained",page:"Page",full:"Full"},Cn="Width";function An(e,o=Zm,t=!0){let r=o.map(a=>({label:$t[a]??bE[a],value:a}));return Qo({...t?{_gWidth:Oe(Cn)}:{},widthMode:{type:"custom",render:({onChange:a,field:n})=>I(ne,{label:l(Cn),icon:I(dF,{}),action:t?I(_F,{inherited:n?.inherited??!1,onReset:()=>a(Ai),label:Cn}):void 0,children:Dn({options:r,value:n?.currentValue||e,onChange:a,ariaLabel:Cn})})}})}function Bn(){let e=r=>({type:"custom",render:({value:a,onChange:n})=>I(ne,{label:zt,icon:yo(I(eF,{})),action:r?r(n):void 0,children:Dn({options:[{label:"Auto",value:"auto"},{label:"Fixed",value:"fixed"},{label:"Screen",value:"screen"}],value:["auto","fixed","screen"].includes(a)?a:"auto",onChange:n,ariaLabel:zt})})}),o=()=>({type:"custom",render:({value:r,onChange:a,field:n})=>{let s=n?.unit==="%"?"%":"px",i=s==="%"?xi:mi;return I("div",{className:"sf-field",children:$e({min:i.min,max:i.max,step:i.step,value:typeof r=="number"?r:i.fallback,suffix:s,ariaLabel:zt,onChange:a})})}}),t=()=>ji("Unit",I(mx,{}),[{label:"px",value:"px"},{label:"%",value:"%"}],"px");return Qo({_gHeight:Oe(zt),sectionHeightMode:Le("desktop",e()),sectionHeightValue:Le("desktop",o()),sectionHeightUnit:Le("desktop",t()),sectionHeightModePhone:Le("mobile",e(r=>I(yE,{onClear:()=>r(void 0)}))),sectionHeightValuePhone:Le("mobile",o()),sectionHeightUnitPhone:Le("mobile",t())})}function yE({onClear:e}){let o=So(),t=Ii(o),r=dn(o),a=l("{value} on desktop",{value:r.mode==="auto"?l("Auto"):`${r.value}${r.unit}`});return I(Ue,{words:V()?.panel,label:l(zt),changed:t,detail:a,onReset:e})}function qi(){let e=t=>({type:"custom",render:({value:r,onChange:a,id:n,name:s})=>I(SE,{value:r,onChange:a,labelId:`${n??s??"stickTop"}-label`,phone:t})}),o=()=>({type:"custom",render:({value:t,onChange:r})=>I("div",{className:"sf-field",children:$e({min:Ko.min,max:Ko.max,step:Ko.step,value:typeof t=="number"?t:Ko.fallback,suffix:"px",ariaLabel:l("Distance from top"),onChange:r})})});return{_gStick:Oe(un),stickTop:Le("desktop",e(!1)),stickTopDistance:Le("desktop",o()),stickTopPhone:Le("mobile",e(!0)),stickTopDistancePhone:Le("mobile",o())}}function SE({value:e,onChange:o,labelId:t,phone:r}){let a=So(),n=gi(a),s=r?n.phone:e===!0;return I(ne,{label:l(un),labelId:t,icon:yo(I(sF,{})),action:vt(Bo,{children:[r?I(Ue,{words:V()?.panel,label:l(un),changed:hi(a),detail:l("{value} on desktop",{value:n.desktop?`${n.desktopDistance}px`:l("Off")}),onReset:()=>o(void 0)}):null,I(Sx,{checked:s,onChange:o,ariaLabelledBy:t})]})})}function _n(){return{_gAnchor:Oe("Anchor"),anchor:GF("Anchor name","e.g. about",HF)}}function JG(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=`${n??s??e}-datetime`,f=Date.parse(typeof r=="string"?r:"");return I(ne,{label:l(e),icon:o,htmlFor:i,hint:t===void 0?void 0:l(t),children:I(TF,{id:i,value:Number.isFinite(f)?new Date(f):null,onChange:u=>a(u?u.toISOString():"")})})}}}function St(e,o,t){return{type:"custom",render:({value:r,onChange:a,id:n,name:s})=>{let i=typeof r=="boolean"?r:o,f=`${n??s??e}-label`;return I(ne,{label:l(e),labelId:f,icon:t,action:I(Sx,{checked:i,onChange:a,ariaLabelledBy:f})})}}}function eU(){return{type:"custom",render:({value:e,onChange:o,id:t,name:r})=>{let a=`${String(t??r??"pageBackground")}-colour`;return I(ne,{label:l("Background"),icon:I(bx,{}),htmlFor:a,action:I(eo,{id:a,label:"Background",value:Ns(e),onChange:o})})}}}var oU={follows:"fill"},tU={follows:"ink"};function rU(e,o,t){if(typeof o!="string"){let r=o.follows;return{type:"custom",render:({value:a,onChange:n})=>I(CE,{label:e,part:r,icon:t,value:a,onChange:n})}}return{type:"custom",render:({value:r,onChange:a})=>I(ne,{label:l(e),icon:t,action:eo({value:r||o,onChange:a,label:e})})}}function CE({label:e,part:o,icon:t,value:r,onChange:a}){let n=Yd($().theme),s=o==="fill"?n.fill:n.ink;return I(Za,{label:l(e),icon:t,value:r||"",inherited:s,resetTo:Ct(s.toUpperCase(),l("Site styles")),onChange:a,onReset:()=>a("")})}var vE=[{value:"0% 0%",label:"Top left"},{value:"50% 0%",label:"Top"},{value:"100% 0%",label:"Top right"},{value:"0% 50%",label:"Left"},{value:"50% 50%",label:"Center"},{value:"100% 50%",label:"Right"},{value:"0% 100%",label:"Bottom left"},{value:"50% 100%",label:"Bottom"},{value:"100% 100%",label:"Bottom right"}];function Mx({label:e,value:o,onChange:t,points:r=vE}){let a=r.map(n=>({...n,label:l(n.label),...n.title?{title:l(n.title)}:null}));return I(wF,{label:l(e),value:o,points:a,onChange:t})}function aU(){return wn({type:"custom",render:()=>I(Wi,{})},"always")}var wE=As([]);function nU(e,{stacking:o,fallback:t=qa}){return{type:"custom",render:({value:r,onChange:a})=>{let n=mo.includes(r)?r:t;return o?I(kE,{label:e,value:n,onChange:a}):Hx({label:e,value:n,onChange:a,points:wE})}}}function kE({label:e,value:o,onChange:t}){let{appState:r,selectedItem:a}=$r(i=>i),n=a?.props?.id?String(a.props.id):void 0,s=n?_s(r?.data,n):[];return Hx({label:e,value:o,onChange:t,points:As(s,n)})}function Hx({label:e,value:o,onChange:t,points:r}){let a=r.find(n=>n.disabled);return I(ne,{label:l(e),icon:I(nF,{}),hint:a?.title?l(a.title):void 0,children:Mx({label:e,value:ut(o),onChange:t,points:r})})}var lU={top:I(Y0,{}),right:I(V0,{}),bottom:I(j0,{}),left:I(K0,{})};function sU(e,o,t,r,a,n){let s=p=>o.find(m=>m.value===p),i=p=>({value:p,label:"",disabled:!0,title:r}),f=p=>{let m=o.find(h=>h.cell===p);if(!m)return i(`missing-${p}`);let x=n?.[p];return x?{value:m.value,label:m.label,icon:x}:{value:m.value,label:m.label}},u=[i("corner-top-left"),f("top"),i("corner-top-right"),f("left"),i("centre"),f("right"),i("corner-bottom-left"),f("bottom"),i("corner-bottom-right")];return{type:"custom",render:({value:p,onChange:m})=>{let x=o.some(h=>h.value===p)?p:t;return I(ne,{label:l(e),icon:a,value:s(x)?.label?l(s(x).label):"",children:Mx({label:e,value:x,onChange:m,points:u})})}}}var TE="\0note";function Xo(e,o,t,r,a){return{type:"custom",options:t,fallback:r,...a?{note:a}:{},render:({value:n,onChange:s,field:i})=>{let f=i.options??t,u=i.fallback??r,p=f.some(m=>m.value===n)?n:u;return I(ne,{label:l(e),icon:yo(o),children:I(SF,{value:p,ariaLabel:l(e),onChange:s,options:[...a?[{label:l(a),value:TE,disabled:!0}]:[],...f.map(m=>({label:l(m.label),value:m.value}))]})})}}}function iU(e,o,t){return{type:"custom",options:o,render:({value:r,onChange:a,field:n})=>I(Bp,{label:e,options:(n.options??o).map(s=>({...s,label:l(s.label)})),value:Array.isArray(r)?r:[],onChange:a,...t?{emptyLabel:l(t)}:{}})}}function fU(e,o={}){return{type:"custom",render:({value:t,onChange:r})=>{let a={value:t,onChange:r,...o};return I(e,{...a})}}}function Dn({options:e,value:o,onChange:t,ariaLabel:r,disabled:a=!1}){return I(IF,{options:e.map(n=>n.picture?{id:n.value,label:n.picture,title:l(n.title??n.label)}:{id:n.value,label:l(n.label),title:n.title===void 0?void 0:l(n.title)}),value:o,onChange:t,ariaLabel:l(r),disabled:a})}var cU=[{label:"Image",value:"image"},{label:"Video",value:"video"}];function ji(e,o,t,r){let a=t.map(n=>typeof n=="string"?{label:n,value:n}:n);return{type:"custom",render:({value:n,onChange:s,field:i})=>I(ne,{label:l(e),icon:yo(o),children:Dn({options:a,value:a.some(f=>f.value===n)?n:n||i?.currentValue||r,onChange:s,ariaLabel:e})})}}function dU(e,o,t,r={}){return{type:"custom",[B0]:!0,render:({value:a,onChange:n})=>I(Rp,{value:a||"",onChange:n,label:e,accept:o,placeholder:t,focusKey:r.focus,focusWhen:r.focusWhen})}}function uU({value:e,onChange:o,label:t}){let r=e||{},a=!!r.pending,n=a?"var(--fg-dim, #888)":r.ok?"#1d9e75":"#d85a30",s=(i,f)=>o({...r,[i]:f===""?void 0:Number(f)});return vt(ne,{label:l(t),icon:I(Ni,{}),children:[I("button",{type:"button",disabled:a,onClick:()=>o({...r,pending:!0,ok:!1,status:"Finding\u2026"}),style:{width:"100%",display:"flex",alignItems:"center",justifyContent:"center",gap:6,padding:"8px 10px",fontSize:13,cursor:a?"default":"pointer",opacity:a?.6:1,border:"1px solid var(--border-strong, #ccc)",borderRadius:6,background:"transparent",color:"inherit"},children:a?l("Finding\u2026"):l("Find coordinates")}),r.status&&I("div",{style:{marginTop:6,fontSize:12,lineHeight:1.4,color:n},children:l(r.status)}),I("div",{style:{marginTop:6,fontSize:11,color:"var(--fg-dim, #999)"},children:l("Coordinates from OpenStreetMap")}),I("button",{type:"button",onClick:()=>o({...r,manual:!r.manual}),style:{marginTop:8,padding:0,border:"none",background:"none",font:"inherit",fontSize:12,color:"var(--sf-accent, #2563eb)",cursor:"pointer",textDecoration:"underline"},children:r.manual?l("Hide manual coordinates"):l("Enter coordinates manually")}),r.manual&&vt("div",{style:{marginTop:8,display:"grid",gap:8},children:[I(ne,{label:l("Latitude"),icon:I(Ni,{}),children:I("input",{type:"number",step:"any",placeholder:l("e.g. {example}",{example:"34.0990198"}),value:typeof r.lat=="number"?r.lat:"",onChange:i=>s("lat",i.target.value)})}),I(ne,{label:l("Longitude"),icon:I(Ni,{}),children:I("input",{type:"number",step:"any",placeholder:l("e.g. {example}",{example:"-117.9842833"}),value:typeof r.lng=="number"?r.lng:"",onChange:i=>s("lng",i.target.value)})})]})]})}function FE(e,o){return o===null||o<0||o>=e.length?"":e[o]?.text??""}function EE(e,o,t){let r=e.map(a=>({text:a?.text??""}));return o===null||o<0||o>=e.length?r:r.map((a,n)=>n===o?{text:t}:a)}function PE(e,o,t){if(t===null||t>=o.length)return null;for(let r=0;r<t;r+=1)if(e[r]!==o[r])return null;return e[t]!==o[t]&&o.includes(e[t])||e[t]!==o[t]&&o.length!==e.length?null:t}var Ki={label:"Ticker items",icon:I(tF,{})};function pU(e,o,t,r){return{type:"custom",[Ao]:{control:"textList",label:e,placeholder:t,itemKey:"text",rendering:r},render:({value:a,onChange:n})=>I(Vi,{label:e,icon:yo(o),items:Array.isArray(a)?a:[],placeholder:t,onChange:n,markup:r==="markup"})}}function Vi({label:e,icon:o,items:t,placeholder:r,onChange:a,markup:n=!1}){let s=Mi(null),[i,f]=vn(null),u=m=>m.map(x=>({text:x?.text??""})),p=m=>{let x=PE(t,m,i);x===null&&(s.current=null),f(x),a(u(m))};return I(CF,{label:l(e),icon:o,noun:l("item"),items:t,onChange:p,newItem:()=>({text:""}),open:null,onOpen:()=>{},renderItem:()=>null,above:n?I(Vs,{target:s,value:FE(t,i),onChange:m=>a(EE(t,i??-1,m)),disabled:i===null,label:i===null?l("Formatting \u2014 click a row first"):l("Formatting \u2014 row {n}",{n:i+1})}):void 0,renderRow:(m,x,h)=>I("input",{type:"text",className:n&&i===x?"sf-list-marking":void 0,value:m?.text??"",placeholder:l(r),"aria-label":l("{label} {n}",{label:l(e),n:x+1}),onChange:b=>h({text:b.target.value}),onFocus:b=>{s.current=b.currentTarget,f(x)}})})}function Wx(e,o){let t=`${e.label} \u2014 row ${o+1}`;return Kt({control:"plainText",label:t,placeholder:e.placeholder,offPage:e.offPage},{type:"custom",render:({value:r,onChange:a})=>I(jt,{value:r,onChange:a,label:l("{label} \u2014 row {n}",{label:l(e.label),n:o+1}),placeholder:e.placeholder,hideable:!1,markup:e.rendering==="markup"})})}function zx(e){return{_gCards:Oe("Cards"),coverIndex:Xo("Cover image",I(oF,{}),Fp,String(1),e?.coverHint??"A card's opening picture \u2014 a card pinned to a finish keeps its own."),imageBackground:KF("Image background",gn),cardImage:OE(),spinOnHover:St("Rotate on hover",e?.spinDefault??!0,I(iF,{}))}}function Gx(){return{outline:Xo("Card outline",I(fF,{}),oi,Js),indexBadge:Xo("Card number",I(mx,{}),ei,Qs),showBadge:St("Product badge",!0,I(Ds,{noun:"tag"}))}}function Ux(e){let o=e&&"bottomDefault"in e?e.bottomDefault:!0,t=e&&"defaults"in e?e.defaults:{showCardSizes:o,showCardBuy:o,showCardPage:o};return{_gShowOnCard:Oe("Show on a card"),showCardPrice:St("Price",!0,I(X0,{})),showCardFinishes:St("Finish swatches",!0,I(Z0,{})),showCardSizes:St("Sizes",t.showCardSizes,I(lF,{})),showCardBuy:St("Buy button",t.showCardBuy,I(U0,{})),showCardPage:St("Page button",t.showCardPage,I(bx,{}))}}function mU(e,o="display"){let t=Oo(o);return{[o]:Le("desktop",{type:"custom",render:({value:r,onChange:a})=>I($x,{parts:e,changed:rp(r),shown:n=>Xa(r,n),onPress:(n,s)=>a(np(r,n,s)),onReset:()=>a(void 0)})}),[t]:Le("mobile",{type:"custom",render:({value:r,onChange:a})=>I(LE,{parts:e,desktopKey:o,value:r,onChange:a})})}}function $x({parts:e,changed:o,shown:t,onPress:r,onReset:a,detail:n}){let s=l("Display");return I(ne,{label:s,icon:I(M0,{}),changed:o,action:I(Ue,{words:V()?.panel,label:s,changed:o,detail:n,onReset:a}),children:I(vF,{label:s,items:e.map(i=>({id:i.id,label:l(i.label),shown:t(i.id)})),onChange:r})})}function LE({parts:e,desktopKey:o,value:t,onChange:r}){let a=So()[o];return I($x,{parts:e,changed:ap(t),shown:n=>Us(a,t,n),onPress:(n,s)=>r(lp(t,n,s)),onReset:()=>r(en),detail:l("the same as Desktop")})}function OE(){return Ax("Card image",{min:Je,max:st,step:Mu,hint:"Rounds the picture. The card's own corner is in Site styles."})}function xU(){return Ui({sidesKey:"cornerSides",step:Hu,useFollowed:()=>Je,mark:I(RE,{label:Wu}),hint:l("Rounds the picture. Left alone it stays square.")})}function RE({label:e,changed:o=!1,onReset:t=()=>{}}){return I(Ue,{words:V()?.panel,label:l(e),changed:o,onReset:t})}function IU(){return{type:"custom",render:({value:e,onChange:o})=>I(AE,{value:typeof e=="string"?e:"",onChange:o})}}function AE({value:e,onChange:o}){let[t,r]=vn(null),a=Ls.filter(s=>t===null||Po[s].across===t),n=e&&e in Po?Po[e]:null;return vt(Bo,{children:[I(ne,{label:l("Photos in a row"),icon:I($0,{}),children:vt("div",{className:"sf-gallery-filter",children:[I("button",{type:"button","aria-pressed":t===null,onClick:()=>r(null),children:l("All")}),Gu.map(s=>I("button",{type:"button","aria-pressed":t===s,onClick:()=>r(s),children:s},s))]})}),I(ne,{label:l("Layout"),icon:I(Q0,{}),value:n?l(n.label):l("Not chosen"),hint:l("{n} of {total} layouts",{n:a.length,total:Ls.length}),children:I(Cx,{className:"sf-gallery-layouts",label:l("Layout"),value:e,onChange:o,onClear:()=>o(""),options:a.map(s=>({value:s,label:l(Po[s].label),picture:I("span",{className:"sf-gallery-pic",children:Po[s].desktop.map(([i,f],u)=>I("i",{style:{gridColumn:`span ${i}`,gridRow:`span ${f}`}},u))})}))})})]})}import{jsx as Nn,Fragment as BE,jsxs as qx}from"react/jsx-runtime";import{Button as jx,Dialog as _E}from"efficient-shell/ui";function DE(e){return ft("This site has {n} color theme of its own. Clearing takes them away and puts back the four the shop supplies.","This site has {n} color themes of its own. Clearing takes them away and puts back the four the shop supplies.",e)}function Kx({count:e,onCancel:o,onConfirm:t}){return qx(_E,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Clear this site\u2019s colors?"),footer:qx(BE,{children:[Nn(jx,{variant:"secondary",onClick:o,children:l("Cancel")}),Nn(jx,{variant:"danger",onClick:t,children:l("Clear colors")})]}),children:[Nn("p",{children:DE(e)}),Nn("p",{className:"mt-2 font-medium",children:l("This cannot be undone.")})]})}var GE=zi("the row's whole content is an action; the gutter names a subject and this row has none \u2014 the button's label is the name GG, 2026-09-23"),UE="Reset color",$E={selected:0,themes:[]};function qE(e){e($E)}function Xx({value:e,onChange:o}){let t=e?.themes??[],r=t.length===0,a=Ye(e),[n,s]=Yx(!1),i=WE(),[f,u]=Yx(null),p=(v,w)=>{o({...a,themes:a.themes.map((g,y)=>y===v?w:g)})},m=Bt(a).accent,x=new Set(a.themes.map(v=>v.brandInk).filter(Boolean)),h=qd.filter(v=>!x.has(v)).map(v=>jd(m,v)),b=[...a.themes,...h],C=v=>{if(v<a.themes.length)return o({...a,selected:v});let w=[...a.themes,b[v]];o({...a,themes:w,selected:w.length-1})},k=()=>{let v=[...a.themes,{...uo(a.themes[a.selected])}];o({...a,themes:v,selected:v.length-1}),u(v.length-1)};return Vx(NE,{children:[r?null:Yt(HE,{label:l(UE),icon:yo(GE),labelId:"sf-theme-reset",action:Yt(ME,{label:l("all theme colors"),words:i.panel,changed:!0,onReset:()=>s(!0)})}),n&&Yt(Kx,{count:t.length,onCancel:()=>s(!1),onConfirm:()=>{s(!1),qE(o)}}),Yt("div",{className:"sf-theme-list",role:"radiogroup","aria-label":l("Theme"),children:b.map((v,w)=>Yt(rn,{index:w,colors:v,selected:w===a.selected,open:f===w&&w<a.themes.length,editable:w<a.themes.length,onPick:()=>C(w),onEdit:()=>u(g=>g===w?null:w),onChangeColors:g=>p(w,g)},w))}),Vx("button",{type:"button",onClick:k,className:"sf-theme-add",children:[Yt(zE,{size:12}),l("Add new theme")]})]})}import{jsx as Mn}from"react/jsx-runtime";import{SettingsDefaultReset as jE,SettingsField as KE}from"efficient-easel/panel";import{SquareIcon as VE}from"efficient-easel/icons";var YE="Applies to panels, cards, inputs and buttons. Round things \u2014 color swatches, switches, status dots \u2014 stay round.",Yi="Corners";function Zx({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Mn(KE,{label:l(Yi),icon:Mn(VE,{}),value:r?l("Default"):`${e}px`,changed:!r,action:Mn(jE,{words:V()?.panel,label:l(Yi),changed:!r,detail:l("the built-in corners"),onReset:()=>o(null)}),hint:t?l(YE):void 0,children:Mn($e,{min:Je,max:st,step:1,value:e??Je,readout:!1,ariaLabel:l(Yi),onChange:o})})}import{jsx as qr}from"react/jsx-runtime";import{SettingsDefaultReset as XE,SettingsField as ZE,SettingsSegmented as QE}from"efficient-easel/panel";import{ShadowIcon as JE}from"efficient-easel/icons";var Xi={none:"None",soft:"Soft",lifted:"Lifted"},e1="Applies to cards \u2014 products, brands, journal entries and filter cells. Round things like swatches and status dots are never shadowed.",o1={none:"none",soft:"0 1px 1px rgba(20, 20, 22, 0.10), 0 2px 4px -1px rgba(20, 20, 22, 0.14)",lifted:"0 1px 2px rgba(20, 20, 22, 0.10), 0 4px 7px -2px rgba(20, 20, 22, 0.30)"},t1={labelsPx:90.25,widestLabelPx:34.6};function Qx({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??gs;return qr(ZE,{label:l("Card shadow"),icon:qr(JE,{}),value:l(Xi[a]),changed:!r,action:qr(XE,{words:V()?.panel,label:l("Card shadow"),changed:!r,detail:l(Xi[gs]),onReset:()=>o(null)}),hint:t?l(e1):void 0,children:qr(QE,{options:ou.map(n=>({id:n,label:l(Xi[n]),icon:qr("span",{className:"sf-shadow-chip",style:{boxShadow:o1[n]}})})),value:a,ariaLabel:l("Card shadow"),fit:t1,onChange:o})})}import{jsx as Jx}from"react/jsx-runtime";import{ShadowIcon as r1}from"efficient-easel/icons";var a1="Most useful on a dark theme, where a black shadow cannot be seen. Also used by the Lift hover, even with the card shadow off.";function eI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Jx(Za,{label:l("Shadow color"),icon:Jx(r1,{}),value:e??"",inherited:ys,resetTo:ys,onChange:o,onReset:()=>o(null),hint:t?l(a1):void 0})}import{jsx as Hn}from"react/jsx-runtime";import{SettingsDefaultReset as n1,SettingsField as l1}from"efficient-easel/panel";import{AlignSeparateIcon as s1}from"efficient-easel/icons";var i1="The space between the blocks inside a row, a grid or a box. Default means each one keeps the spacing it already has.",Zi="Block gap",f1=Gt.Grid;function oI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Hn(l1,{label:l(Zi),labelId:"sf-block-gap",icon:Hn(s1,{}),value:r?l("Default"):`${e}px`,changed:!r,action:Hn(n1,{words:V()?.panel,label:l(Zi),changed:!r,detail:l("each block's own spacing"),onReset:()=>o(null)}),hint:t?l(i1):void 0,children:Hn($e,{min:yt.min,max:yt.max,step:yt.step,value:r?f1:e,readout:!1,ariaLabel:l(Zi),onChange:o})})}import{jsx as Wn}from"react/jsx-runtime";import{SettingsDefaultReset as c1,SettingsField as d1,SettingsSegmented as u1}from"efficient-easel/panel";import{HoverIcon as p1}from"efficient-easel/icons";var Qi={none:"None",lift:"Lift",highlight:"Highlight"},m1="What a card does when a shopper points at it \u2014 or taps it, on a phone. Highlight is the effect your cards already use.";function tI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??bs;return Wn(d1,{label:l("Hover effect"),icon:Wn(p1,{}),value:l(Qi[a]),changed:!r,action:Wn(c1,{words:V()?.panel,label:l("Hover effect"),changed:!r,detail:l(Qi[bs]),onReset:()=>o(null)}),hint:t?l(m1):void 0,children:Wn(u1,{options:tu.map(n=>({id:n,label:l(Qi[n])})),value:a,ariaLabel:l("Hover effect"),onChange:o})})}import{jsx as zn}from"react/jsx-runtime";import{SettingsDefaultReset as x1,SettingsField as I1,SettingsSegmented as h1}from"efficient-easel/panel";import{DropIcon as g1}from"efficient-easel/icons";var Ji="Photography",rI={shot:"As shot",mono:"Black and white"},ef=[{grayscale:!1,label:rI.shot},{grayscale:!0,label:rI.mono}],b1="Black and white photographs return to color on hover. Wheels and tyres keep their real finish either way.";function aI({value:e,onChange:o,showHint:t=!0}){let r=e===null,a=e??!1;return zn(I1,{label:l(Ji),icon:zn(g1,{}),value:l(ef.find(n=>n.grayscale===a).label),changed:!r,action:zn(x1,{words:V()?.panel,label:l(Ji),changed:!r,detail:l(ef.find(n=>!n.grayscale).label),onReset:()=>o(null)}),hint:t?l(b1):void 0,children:zn(h1,{options:ef.map(n=>({id:n.grayscale,label:l(n.label)})),value:a,ariaLabel:l(Ji),onChange:o})})}import{jsx as of}from"react/jsx-runtime";import{useId as y1}from"react";import{SettingsField as S1,SettingsSwitch as C1}from"efficient-easel/panel";import{ShareIcon as v1}from"efficient-easel/icons";var w1="Share button",k1="On every blog post.";function nI({value:e,onChange:o,showHint:t=!0}){let r=y1();return of(S1,{label:l(w1),labelId:r,icon:of(v1,{}),action:of(C1,{checked:e===!0,onChange:o,ariaLabelledBy:r}),hint:t?l(k1):void 0})}import{jsx as Gn}from"react/jsx-runtime";import{SettingsDefaultReset as T1,SettingsField as F1}from"efficient-easel/panel";import{PaddingXIcon as E1}from"efficient-easel/icons";var tf="Side space",rf=bo.default,P1="The room left at the left and right edge of every page.";function lI({value:e,onChange:o,showHint:t=!0}){let r=e===null;return Gn(F1,{label:l(tf),labelId:"sf-side-space",icon:Gn(E1,{}),value:`${e??rf}px`,changed:!r,action:Gn(T1,{words:V()?.panel,label:l(tf),changed:!r,detail:`${rf}px`,onReset:()=>o(null)}),hint:t?l(P1):void 0,children:Gn($e,{min:bo.min,max:bo.max,step:bo.step,value:e??rf,readout:!1,ariaLabel:l(tf),onChange:o})})}import{jsx as Do,jsxs as L1}from"react/jsx-runtime";import{SettingsDefaultReset as sI,SettingsField as iI,SettingsSegmented as fI}from"efficient-easel/panel";import{BackgroundIcon as O1,WidthIcon as R1}from"efficient-easel/icons";var Un="Width",A1="Background",B1="Content",cI=["full","content"],dI=e=>l($t[e==="content"?"page":"full"]),_1=400,uI="Content cannot be wider than the background.",pI="The width of every section's background, until the section sets its own.",mI="The width of every section's content, until the section sets its own.",xI="On phones, content always fills the screen.";function $n({value:e,changed:o,detail:t,onChange:r,onReset:a,disabled:n=!1,hint:s,labelId:i}){let f=l(A1);return Do(iI,{label:f,labelId:i,icon:Do(O1,{}),changed:o,hint:s?l(s):void 0,action:Do(sI,{words:V()?.panel,label:f,changed:o,detail:t,onReset:a}),children:Do(fI,{options:cI.map(u=>({id:u,label:dI(u)})),value:e,onChange:r,ariaLabel:f,disabled:n})})}function qn({mode:e,px:o,max:t=ye.max,min:r=_1,changed:a,detail:n,onMode:s,onPx:i,onReset:f,fullClosed:u=!1,disabled:p=!1,hint:m,labelId:x}){let h=l(B1),b=e!=="full"?Do($e,{min:r,max:t,step:ye.step,value:Math.min(Math.max(o,r),t),onChange:i,suffix:"px",ariaLabel:h,disabled:p}):null;return Do(iI,{label:h,labelId:x,icon:Do(R1,{}),changed:a,hint:m?l(m):void 0,action:Do(sI,{words:V()?.panel,label:h,changed:a,detail:n,onReset:f}),children:e===void 0||!s?b:L1("div",{className:"flex w-full min-w-0 flex-col gap-2",children:[Do(fI,{options:cI.map(C=>({id:C,label:dI(C),disabled:C==="full"&&u})),value:e,onChange:s,ariaLabel:h,disabled:p}),b]})})}import{jsx as rh}from"react/jsx-runtime";import{TextStyleItem as qP,TextStylesGroup as jP}from"efficient-easel/text-styles";import{jsx as HP}from"react/jsx-runtime";import{useState as WP}from"react";import{TextStylesList as zP}from"efficient-easel/text-styles";import{usePreviewDevice as GP}from"efficient-easel/draw/client";import{textStyleCaseCss as AP}from"efficient-easel/draw";import{textStyleCaseCss as j1,textStyleCaseOfCss as K1}from"efficient-easel/draw";function af(e,o){return o?`${e}[${o.index}].${o.rowKey}`:e}function ao(e){let o=/^([A-Za-z0-9_$]+)\[(\d+)\]\.([A-Za-z0-9_$]+)$/u.exec(e);return o?{key:o[1],row:{index:Number(o[2]),rowKey:o[3]}}:{key:e,row:null}}import{decodePartId as Yn,encodePartId as Xn}from"efficient-easel/draw";import{LINK_FIELD_MARKER as kI,SCAFFOLD_FIELD_MARKER as vI,TEXT_FIELD_MARKER as Zn}from"efficient-easel/draw";import{readHidable as TI}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as G1}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as z1}from"efficient-easel/draw";import{TEXT_FIELD_MARKER as II}from"efficient-easel/draw";import{readHidable as hI}from"efficient-easel/draw";import{SCALAR_TEXT_CONTROLS as D1}from"efficient-easel/draw";var N1=D1,M1=["text","textarea"],H1=["textarea","plainTextarea"];function W1(e){return!e||typeof e!="object"?null:e[II]?.control??null}function Xt(e){let o=W1(e);return o&&N1.includes(o)?o:null}function jn(e){return H1.includes(e)}function gI(e){return!e||typeof e!="object"?void 0:e[II]?.placeholder}function Kn(e){return hI(e).text}function nf(e,o,t){return M1.includes(e)?{text:t,hidden:hI(o).hidden}:t}function bI(e,o,t,r){return Kn(e[o])===r?null:{...e,[o]:nf(t,e[o],r)}}function lf(e){if(!(!e||typeof e!="object"))return e[z1]}function sf(e){if(!e||typeof e!="object")return null;let o=e.arrayFields;return o&&typeof o=="object"?o:null}function yI(e,o){if(!Array.isArray(o))return[];let t=lf(e),r=[];if(t?.control==="textList"){let n=t.itemKey??"text";return o.forEach((s,i)=>{let f=s?.[n];typeof f=="string"&&f&&r.push({row:{index:i,rowKey:n},text:f})}),r}let a=sf(e);return a?(o.forEach((n,s)=>{for(let[i,f]of Object.entries(a)){if(!Xt(f))continue;let u=Kn(n?.[i]);u&&r.push({row:{index:s,rowKey:i},text:u})}}),r):[]}function jr(e,o){if(Array.isArray(e))return e[o.index]?.[o.rowKey]}function ff(e,o,t,r){let a=e[o];return!Array.isArray(a)||t.index<0||t.index>=a.length?null:{...e,[o]:a.map((n,s)=>s===t.index?{...n,[t.rowKey]:r}:n)}}function SI(e,o,t,r,a){let n=jr(e[o],t);return Kn(n)===a?null:ff(e,o,t,nf(r,n,a))}function CI(e,o){return o?`${e} \xB7 row ${o.index+1}`:e}var no="data-sf-part",qe="data-sf-part-selected",e7="data-sf-part-kind",U1="data-sf-part-style-owner",$1="data-sf-part-style-kind";function o7(e){for(let o=e;o;o=o.parentElement){let t=o.getAttribute(U1),r=o.getAttribute($1);if(t&&r)return{owner:t,kind:r};if(o.getAttribute("data-puck-component"))return null}return null}var wI=2;function FI(e,o){if(!e)return!1;let t=Yn(e);return!!t?.propKey&&t.nodeId===o}function Zt(e){return It(e).replace(/\s+/gu,"")}function Vn(e,o,t){let r=e[Zn];if(r){if(r.control==="textList"){let n=r.itemKey??"text";if(!Array.isArray(o))return;for(let s of o){let i=s?.[n];typeof i=="string"&&t.push(i)}return}let{text:a}=TI(o);a?t.push(a):r.placeholder&&t.push(r.placeholder);return}if(!e[kI]){if(e.type==="text"||e.type==="textarea"){typeof o=="string"&&o&&t.push(o);return}if(e.arrayFields&&Array.isArray(o)){for(let a of o)for(let[n,s]of Object.entries(e.arrayFields))Vn(s,a?.[n],t);return}if(e.objectFields&&o&&typeof o=="object")for(let[a,n]of Object.entries(e.objectFields))Vn(n,o[a],t)}}function EI(e){if(!e||typeof e!="object")return!1;let o=e;return o[kI]?!1:!!o[Zn]||o.type==="text"||o.type==="textarea"}function Qn(e,o){let t=e[Zn];return t?.label?t.label:typeof e.label=="string"?e.label:o}function cf(e){let o=e.indexOf(" (");return(o>0?e.slice(0,o):e).trim()}function t7(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){if(!a||typeof a!="object"||_r(r))continue;let n=a,s=[];Vn(n,o?.[r],s),!s.length&&n[vI]!==void 0&&Vn(n,n[vI],s);let i=Qn(n,r),f=new Set;for(let{row:m,text:x}of yI(n,o?.[r])){let h=Zt(x);h.length<wI||(f.add(h),t.push({key:r,label:i,texts:[h],row:m}))}let u=new Set(f),p=[];for(let m of s){let x=Zt(m);x.length<wI||u.has(x)||(u.add(x),p.push(x))}p.length&&t.push({key:r,label:i,texts:p})}return t}var q1=G1;function PI(e,o){if(!o||typeof o!="object"||_r(e)||Cp(o))return null;let t=o[Zn];return!t||!q1.includes(t.control)?null:t}function r7(e,o){let t=PI(e,o);return t!==null&&t.identifier!==!0}function LI(e,o){if(!e)return[];let t=[];for(let[r,a]of Object.entries(e)){let n=PI(r,a);if(!n)continue;let{text:s,hidden:i}=TI(o?.[r]),f=s||n.placeholder||"",u=It(f).replace(/\s+/gu," ").trim();t.push({key:r,label:cf(Qn(a,r)),preview:u,offPage:n.offPage===!0,identifier:n.identifier===!0,hidden:!!i})}return t}var pf="_partStyles",xf="data-sf-part-styled",V1=[400,500,600,700],MI=["left","center","right","justify"],OI=5,RI=1e3,Y1=-5,X1=10,If=0,hf=64,gf=2,bf=120,Jo=1280,yf=10,AI={size:{min:OI,max:RI,step:1},sizePhone:{min:OI,max:RI,step:1},padding:{min:If,max:hf,step:gf},width:{min:bf,max:Jo,step:yf}},Z1=.05,Q1=.01,J1=["line","letter"],eP=.5,oP=2.5,tP=-1,rP=1,aP=0,nP=400;function Vr(e){return!e||typeof e!="object"||Array.isArray(e)?null:e}function HI(e){return Vr(e?.[pf])??{}}function el(e,o){let t=HI(e);return Object.hasOwn(t,o)?Vr(t[o])??{}:{}}function WI(e,o,t){let r={...HI(e)};if(lP(t).length?r[o]=t:delete r[o],!Object.keys(r).length){let{[pf]:a,...n}=e;return n}return{...e,[pf]:r}}function lP(e){return Object.entries(e).filter(([,o])=>o!==void 0)}function sP(e){return J1.includes(e)}var Kr=(e,o,t)=>Math.min(t,Math.max(o,e));function iP(e,o){if(sP(e)){let t=Math.round(Number(o));return!Number.isFinite(t)||t===0?null:Kr(t,Y1,X1)}if(e==="lineHeight"){let t=Number(o);return Number.isFinite(t)?Qt(Kr(t,eP,oP),3):null}if(e==="letterSpacing"){let t=Number(o);return Number.isFinite(t)?Qt(Kr(t,tP,rP),4):null}if(e==="paragraphSpacing"){let t=Math.round(Number(o));return!Number.isFinite(t)||t<=0?null:Kr(t,aP,nP)}if(Object.hasOwn(AI,e)){let{min:t,max:r}=AI[e],a=Math.round(Number(o));return Number.isFinite(a)?Kr(a,t,r):null}return e==="italic"?typeof o=="boolean"?o:null:e==="role"?Fo.includes(String(o))?o:null:o}var fP=["weight","size","sizePhone","line","letter","lineHeight","letterSpacing","paragraphSpacing","padding","width"];function zI(e){let o=null,t=r=>{o??={...e},delete o[r]};for(let r of fP){let a=e[r];a!==void 0&&!(typeof a=="number"&&Number.isFinite(a))&&t(r)}return e.align!==void 0&&!MI.includes(e.align)&&t("align"),o??e}var cP=[["font","role"],["line","lineHeight"],["letter","letterSpacing"]];function dP(e){let o=[];for(let[t,r]of cP)t===e?o.push(r):r===e&&o.push(t);return o}function Xr(e,o,t,r){let a={...el(e,o)},n=r==null?null:iP(t,r);if(n===null)delete a[t];else{a[t]=n;for(let s of dP(t))delete a[s]}return WI(e,o,a)}function GI(e,o){return WI(e,o,{})}function uP(e){return K1(e)??"none"}function pP(e){return j1(e)??""}var mP={heading:"--font-role-heading",heading2:"--font-role-heading2",heading3:"--font-role-heading3",body:"--font-role-body",accent:"--font-role-accent",label:"--font-role-label"};function xP(e){let o=e.role;return o&&Fo.includes(o)?o:null}var IP={headingLarge:"min(clamp(64px,9vw,144px), var(--sf-heading-max,9999px))",headingMedium:"min(32px, var(--sf-heading-max,9999px))",headingSmall:"min(24px, var(--sf-heading-max,9999px))",accent:"32px",body:"14px",label:"12px"};function hP(e){let o=Gd[e],t=IP[o];return t?`var(--size-${o}, ${t})`:`var(--size-${o})`}function Zr(e){let o={};return typeof e.lineHeight=="number"?o.lineHeight=e.lineHeight:e.line&&(o.lineHeight=Qt(gP+e.line*Z1,3)),typeof e.letterSpacing=="number"?o.letterSpacingEm=e.letterSpacing:e.letter&&(o.letterSpacingEm=Qt(e.letter*Q1,4)),o}var gP=1,Qr="--sf-part-para",Sf="(max-width: 719.98px)";function BI(e){return e=zI(e),typeof e.sizePhone=="number"&&e.sizePhone>0?{fontSize:`${e.sizePhone}px`}:{}}function bP(e,o){return o&&typeof e.sizePhone=="number"&&e.sizePhone>0?{...e,size:e.sizePhone}:e}function Jn(e,o){e=zI(e);let t=xP(e),r=Zr(e),a=e.size?`${e.size}px`:t?hP(t):"";return{fontFamily:e.font?vP(e.font):t?`var(${mP[t]})`:"",fontWeight:e.weight?String(e.weight):"",fontSize:a,minWidth:a?"0":"",overflowWrap:a?"break-word":"",lineHeight:r.lineHeight!==void 0?String(r.lineHeight):"",letterSpacing:r.letterSpacingEm!==void 0?`${r.letterSpacingEm}em`:"",[Qr]:e.paragraphSpacing?`${e.paragraphSpacing}px`:"",textTransform:pP(e.case),textAlign:e.align??"",paddingTop:df(e.padding),paddingBottom:df(e.padding),maxWidth:df(e.width),color:yP(e.color),fontStyle:e.italic===!0?"italic":e.italic===!1?"normal":""}}var yP=e=>e===void 0||e===""?"":Object.hasOwn(Lo,e)?Lo[e]:UI.test(e)?e:"",UI=/^#[0-9a-fA-F]{6}$/;function $I(e){return UI.test(e)}var df=e=>e===void 0?"":`${e}px`,Qt=(e,o)=>Number(e.toFixed(o));function c7(e,o){let t=Number.parseFloat(e.fontSize)||16,r=Number.parseFloat(e.lineHeight),a=Number.parseFloat(e.letterSpacing),n=Number.parseFloat(e.paddingTop),s=Number.parseFloat(e.maxWidth);return{fontKey:o,sizePx:t,weight:SP(Number.parseInt(e.fontWeight,10)),lineRatio:Number.isFinite(r)?Qt(r/t,3):1.2,letterEm:Number.isFinite(a)?Qt(a/t,4):0,align:CP(e.textAlign),case:uP(e.textTransform),paddingPx:Number.isFinite(n)?Math.round(n):0,widthPx:Number.isFinite(s)&&s<Jo?Math.round(s):Jo}}function SP(e){return Number.isFinite(e)?V1.reduce((o,t)=>Math.abs(t-e)<Math.abs(o-e)?t:o):400}function CP(e){for(let o of MI)if(o===e)return o;return e==="end"?"right":"left"}function d7(e,o){let t=_I(e);if(!t)return"";for(let r of to)if(_I(o(r.cssVar))===t)return r.key;return""}var _I=e=>(e.split(",")[0]??"").replace(/["']/g,"").replace(/\s+/g," ").trim().toLowerCase();function vP(e){let o=At(e);return o?`var(${o.cssVar})`:""}function u7(e,o,t,r){return!o||Yn(o)?.nodeId!==e?null:t.find(a=>r(a.getAttribute("class")))??t[0]??null}function p7(e,o,t=()=>Yr,r=s=>s,a=TP,n=!1){let s=0;for(let{element:i,partId:f}of e){let u=Yn(f)?.propKey;if(!u)continue;let p=r(u),m=Object.hasOwn(o,p)?Vr(o[p])??{}:{},x=Jn(bP(m,n),Yr),h=uf.some(C=>i.style[C]),b=!1;for(let[C,k]of Object.entries(x))FP(i,C,k),k&&(b=!0);if(h||uf.some(C=>x[C]))for(let C of wP(i,a))for(let k of uf)C.style[k]=x[k]??"";b&&(s+=1)}return s}function wP(e,o){let t=Zt(e.textContent??""),r=[],a=e;for(let n=0;n<kP&&o(a);n+=1){let s=a.parentElement;if(!s||Zt(s.textContent??"")!==t)break;r.push(s),a=s}return r}var kP=8;function TP(e){let o=e;return typeof window>"u"||!o?.ownerDocument?!1:window.getComputedStyle(o).display==="inline"}var Yr={fontKey:"",sizePx:16,weight:400,lineRatio:1,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};function FP(e,o,t){if(!o.startsWith("--")){e.style[o]=t;return}let r=e.style;typeof r.setProperty=="function"?t?r.setProperty(o,t):r.removeProperty?.(o):r[o]=t;let a=e;o===Qr&&(t?a.setAttribute?.(DI,""):a.removeAttribute?.(DI))}var DI="data-sf-part-para",EP=Object.keys(Jn({},Yr)),mf=new Set(["color","overflowWrap",Qr,"fontStyle"]),uf=EP.filter(e=>!mf.has(e));function qI(e,o,t,r=a=>a){let a=new Map;for(let i of e){let f=af(i.key,i.row);for(let u of i.texts){let p=a.get(u);p?(p.keys.add(i.key),p.partKeys.add(f)):a.set(u,{keys:new Set([i.key]),partKeys:new Set([f])})}}let n=new Map;for(let i of Object.keys(o)){if(!PP(i))continue;let f=Vr(o[i])??{},u=Jn(f,Yr),p=BI(f);!Object.values(u).some(Boolean)&&!Object.keys(p).length||n.set(i,{stamp:NI(t,i),declarations:u,...Object.keys(p).length?{phone:p}:{}})}let s=new Map;for(let[i,{keys:f,partKeys:u}]of a){let p=u.size===1?[...u][0]:f.size===1?[...f][0]:null;if(!p)continue;let m=r(p);if(!Object.hasOwn(o,m))continue;let x=Vr(o[m])??{},h=Jn(x,Yr),b=BI(x);!Object.values(h).some(Boolean)&&!Object.keys(b).length||s.set(i,{stamp:NI(t,p),declarations:h,...Object.keys(b).length?{phone:b}:{}})}return s.size||n.size?{rules:s,kindRules:n,drawn:new Set(a.keys())}:null}function PP(e){return e.startsWith("@")}function Cf(e,o){return e?.kindRules.get(o)??null}function NI(e,o){let t=r=>r.replace(/[^A-Za-z0-9_-]+/g,"-");return`${t(e)}~${t(o)}`}function jI(e){let o=[],t=new Set,r=a=>{let{stamp:n,declarations:s}=a;if(t.has(n))return;t.add(n);let i=Object.entries(s).filter(([,h])=>h!==""),f=h=>h.map(([b,C])=>`${OP(b)}: ${C}`).join("; "),u=`[${xf}="${n}"]`,p=i.filter(([h])=>!mf.has(h)),m=i.filter(([h])=>mf.has(h));p.length&&o.push(`${u}, *:has(> ${u}) { ${f(p)} }`),m.length&&o.push(`${u} { ${f(m)} }`),s[Qr]&&o.push(...LP(u));let x=Object.entries(a.phone??{}).filter(([,h])=>h!=="");x.length&&o.push(`@media ${Sf} { ${u}, *:has(> ${u}) { ${f(x)} } }`)};for(let a of e.rules.values())r(a);for(let a of e.kindRules.values())r(a);return o.join(`
|
|
4
|
+
`)}function LP(e){let o=`var(${Qr})`,t=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: ${o} }`,`${e} ${t}:not(:first-child) { margin-top: ${o} }`,`${e} ${t}:not(:last-child) { margin-bottom: ${o} }`]}var OP=e=>e.replace(/[A-Z]/g,o=>`-${o.toLowerCase()}`);function KI(e,o){if(!e)return null;let t=Zt(o),r=e.rules.get(t);if(r)return r;if(t.length<RP||e.drawn.has(t))return null;let a=null;for(let[n,s]of e.rules)if(n.includes(t)){if(a&&a.stamp!==s.stamp)return null;a=s}return a}var RP=8;var vf=e=>e==="sentence"?"none":void 0,No=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,Jr=e=>typeof e=="string"&&e?e:void 0,YI=["font","color","size","sizePhone","weight","italic","lineHeight","letterSpacing","paragraphSpacing","letterCase","largestSize"];function lo(e){let o={};for(let t of YI)e[t]!==void 0&&(o[t]=e[t]);return o}function kf(e,o){let{auto:t,...r}=e,a=new Set(o??[]),n=YI.filter(s=>a.has(s)&&e.values[s]===void 0);return n.length?{...r,auto:n}:r}function Tf(e){let o=e.fonts,t=e.sizes,r=e.typography,a=au(e.compression),n=(i,f)=>({id:`heading-${i}`,kind:"heading",name:`Heading ${i}`,values:lo(f)}),s=(i,f={})=>({id:`body-${i}`,kind:"body",name:`Body ${i}`,values:lo(f)});return[n(1,{font:Jr(o.heading),size:No(t.headingLarge),weight:No(r.weight),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:vf(r.case),largestSize:No(r.maxPx)}),n(2,{font:Jr(o.heading2),size:No(t.headingMedium),weight:No(r.weight2),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:vf(r.case2)}),n(3,{font:Jr(o.heading3),size:No(t.headingSmall),weight:No(r.weight3),lineHeight:a.lineHeight,letterSpacing:a.letterSpacing,letterCase:vf(r.case3)}),s(1,{font:Jr(o.body),size:No(t.body)}),s(2),s(3),s(4),s(5,{font:Jr(o.label),size:No(t.label)})]}function ol(e){return Array.isArray(e)&&e.every(o=>o&&typeof o=="object"&&typeof o.id=="string"&&(o.kind==="heading"||o.kind==="body")&&typeof o.name=="string")?e.map(o=>kf({...o,values:lo(o.values??{})},Array.isArray(o.auto)?o.auto:void 0)):null}function b7(e){return ol(e)??[]}function et(e,o){let t=Tf(o),r=ol(e);return r?r.map(a=>{let n={...wf(t,a.id)};for(let s of a.auto??[])delete n[s];return{...a,values:lo({...n,...a.values})}}):t}var wf=(e,o)=>e.find(t=>t.id===o)?.values??{},VI=["heading-1","heading-2","heading-3"];function XI({saved:e,old:o,cur:t,next:r,sizeOf:a}){let n=Tf(o),s=ol(e)??n.map(m=>({...m,values:{}})),i=et(s,o),f=[],u=r.map(m=>{let x=t.find(g=>g.id===m.id),h=s.find(g=>g.id===m.id);if(!x||!h)return BP([m],a)[0];let b={...h.values},C=new Set(h.auto??[]),k=m.values,v=x.values,w=[...new Set([...Object.keys(k),...Object.keys(v)])].filter(g=>JSON.stringify(k[g])!==JSON.stringify(v[g]));w.sort((g,y)=>+(g==="letterSpacing")-+(y==="letterSpacing"));for(let g of w){let y=g==="lineSpacing"?"lineHeight":g,E=k[g];if(E===void 0){delete b[y],wf(n,m.id)[y]!==void 0&&(f.push([m.id,y]),C.add(y));continue}if(C.delete(y),g==="lineSpacing")b.lineHeight=Jt(E/100,3);else if(g==="letterSpacing"){let F=i.find(B=>B.id===m.id),L=a({...m,values:lo({...F?.values??{},...b})});b.letterSpacing=L?Jt(E/L,4):0}else b[y]=E}return kf({id:m.id,kind:m.kind,name:m.name,values:lo(b)},C)}),p=o.compression;if(f.some(([m,x])=>(x==="lineHeight"||x==="letterSpacing")&&VI.includes(m))&&it(p)!=="normal"){for(let m of VI){let x=u.find(b=>b.id===m);if(!x)continue;let h={...x.values};for(let b of["lineHeight","letterSpacing"])f.some(([C,k])=>C===m&&k===b)||h[b]===void 0&&!(x.auto??[]).includes(b)&&(h[b]=wf(n,m)[b]);x.values=lo(h)}p="normal"}return{saved:u,old:{...o,compression:p}}}function ZI(e,o){let t={text_styles:e.saved};return e.old.compression!==o.compression&&(t.heading_compression=it(e.old.compression)),t}var Jt=(e,o)=>Number(e.toFixed(o));function QI(e,o){return e.map(t=>{let{lineHeight:r,letterSpacing:a,...n}=t.values,s={...n};return r!==void 0&&(s.lineSpacing=Jt(r*100,1)),a!==void 0&&(s.letterSpacing=Jt(a*o(t),2)),{id:t.id,kind:t.kind,name:t.name,values:s}})}function BP(e,o){return e.map(t=>{let{lineSpacing:r,letterSpacing:a,...n}=t.values,s={id:t.id,kind:t.kind,name:t.name,values:lo({...n})},i={...s.values};if(r!==void 0&&(i.lineHeight=Jt(r/100,3)),a!==void 0){let f=o({...s,values:{...s.values}});i.letterSpacing=f?Jt(a/f,4):0}return{...s,values:lo(i)}})}function y7(e){let o={fonts:Er({heading:e.heading_font??void 0,heading2:e.heading_2_font??void 0,heading3:e.heading_3_font??void 0,body:e.body_font??void 0,accent:e.accent_font??void 0,label:e.label_font??void 0}),sizes:hs({headingLarge:e.heading_size_large_px,headingMedium:e.heading_size_medium_px,headingSmall:e.heading_size_small_px,accent:e.accent_size_px,body:e.body_size_px,label:e.label_size_px}),compression:it(e.heading_compression),typography:lu(e)},t=e.text_styles??null,r=Array.isArray(t)?Ff(et(t,o),o):o;return{fonts:Er(r.fonts),sizes:hs(r.sizes),compression:it(r.compression),typography:r.typography,textStyles:t}}function Ff(e,o){let t=x=>e.find(h=>h.id===x)?.values??{},r=t("heading-1"),a=t("heading-2"),n=t("heading-3"),s=t("body-1"),i=t("body-5"),f=o.fonts,u=o.sizes,p=o.typography,m=x=>x==="none"?"sentence":"authored";return{fonts:{...f,heading:r.font??f.heading,heading2:a.font??r.font??f.heading2,heading3:n.font??r.font??f.heading3,body:s.font??f.body,label:i.font??f.label},sizes:{...u,headingLarge:r.size??null,headingMedium:a.size??null,headingSmall:n.size??null,body:s.size??null,label:i.size??null},compression:o.compression,typography:{...p,case:m(r.letterCase),weight:r.weight??null,maxPx:r.largestSize??null,weight2:a.weight??null,weight3:n.weight??null,case2:m(a.letterCase),case3:m(n.letterCase)}}}function _P(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 DP(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 NP(e){let o=":is([data-sf-bullet], [data-sf-number])";return[`${e} br:not(br + br) { display: block; content: ""; margin-top: var(--sf-part-para) }`,`${e} ${o}:not(:first-child) { margin-top: var(--sf-part-para) }`,`${e} ${o}:not(:last-child) { margin-bottom: var(--sf-part-para) }`]}function S7(e){let o=[];for(let t of e){let r=t.values,a=`.${_P(t)}`,n=[],s=r.font!==void 0?to.find(p=>p.key===r.font)?.cssVar:void 0;if(s&&n.push(`font-family: var(${s})`),r.size!==void 0){let p=r.largestSize!==void 0?Math.min(r.size,r.largestSize):r.size;n.push(`font-size: ${p}px`)}let i=r.color!==void 0?DP(r.color):null;i&&n.push(`color: ${i}`),r.italic===!0&&n.push("font-style: italic"),r.weight!==void 0&&n.push(`font-weight: ${r.weight}`);let f=[];r.lineHeight!==void 0&&f.push(`line-height: ${r.lineHeight}`),r.letterSpacing!==void 0&&f.push(`letter-spacing: ${r.letterSpacing}em`),t.kind==="body"&&n.push(...f);let u=AP(r.letterCase);if(u&&n.push(`text-transform: ${u}`),r.paragraphSpacing&&n.push(`--sf-part-para: ${r.paragraphSpacing}px`),n.length&&o.push(`${a} { ${n.join("; ")} }`),t.kind==="heading"&&f.length&&o.push(`${a}, ${a}:is(h1, h2, h3, h4) { ${f.join("; ")} }`),r.paragraphSpacing&&o.push(...NP(a)),r.sizePhone!==void 0){let p=MP[t.id],m=[`${a} { font-size: ${r.sizePhone}px }`];p&&m.push(`.sf-themed-content { --size-${p}: ${r.sizePhone}px !important }`),o.push(`@media ${Sf} { ${m.join(" ")} }`)}}return o.join(`
|
|
5
|
+
`)}var MP={"heading-1":"headingLarge","heading-2":"headingMedium","heading-3":"headingSmall","body-1":"body","body-5":"label"};function C7(e){return e!==!0&&e!==!1?"":`em.text-accent { font-style: ${e?"italic":"normal"} }`}function Ef(e){switch(e){case"heading":return"heading-1";case"heading2":return"heading-2";case"heading3":return"heading-3";case"body":return"body-1";case"label":return"body-5";default:return}}function Pf(e){let o=Zr(e);return lo({font:e.font,color:e.color,size:e.size,weight:e.weight,italic:e.italic,lineHeight:o.lineHeight,letterSpacing:o.letterSpacingEm,paragraphSpacing:e.paragraphSpacing,letterCase:e.case})}function JI(e){return Object.keys(Pf(e)).length>0}function eh({saved:e,old:o,styleId:t,values:r}){return{saved:(ol(e)??Tf(o).map(a=>({...a,values:{}}))).map(a=>a.id===t?kf({...a,values:lo({...a.values,...r})},a.auto):a),old:o}}var oh=["font","color","size","weight","emphasis","lineSpacing","letterSpacing","paragraphSpacing","letterCase","largestSize"],UP=["size","lineSpacing","letterSpacing","letterCase"],$P=500,Lf=to.map(e=>({value:e.key,label:e.label,family:`var(${e.cssVar})`,italic:e.italicLoaded}));function th({saved:e,old:o,colours:t,sizeOf:r,onChange:a,openId:n,onOpenChange:s,readOnly:i=!1,withoutSize:f=!1}){let[u,p]=WP(null),m=GP()==="mobile",x=et(e,o),h=QI(x,r);return HP(zP,{styles:h,onChange:b=>a(XI({saved:e,old:o,cur:h,next:b,sizeOf:r})),fonts:Lf,colours:t,settings:f?oh.filter(b=>b!=="size"):oh,auto:UP,openId:n===void 0?u:n,onOpenChange:s??p,readOnly:i,device:m?"phone":"desktop",fallback:b=>{let C=x.find(v=>v.id===(b.kind==="heading"?"heading-1":"body-1")),k={};return C?.values.font&&b.id!==C.id&&(k.font=C.values.font),b.kind==="heading"&&(k.weight=$P),k}})}var ah=["font","size","weight","emphasis"],KP=500;function VP({font:e,size:o,weight:t,italic:r}){let a={font:e};return o!==null&&(a.size=o),t!==null&&(a.weight=t),r!==null&&(a.italic=r),{id:"accent",kind:"heading",name:l("Accent"),values:a}}function YP(e,o){let t=[],r=e.values,a=o.values;return a.font!==r.font&&a.font!==void 0&&t.push({key:"font",value:a.font}),a.size!==r.size&&t.push({key:"size",value:a.size??null}),a.weight!==r.weight&&t.push({key:"weight",value:a.weight??null}),a.italic!==r.italic&&t.push({key:"italic",value:a.italic??null}),t}function nh(e){let{headingWeight:o,open:t,onOpenChange:r,onChange:a,withoutSize:n=!1}=e,s=VP(e);return rh(jP,{label:l("Accent"),children:rh(qP,{style:s,fonts:Lf,settings:n?ah.filter(i=>i!=="size"):ah,auto:["size"],fallback:()=>({weight:o??KP}),open:t,onOpenChange:r,onChange:i=>YP(s,i).forEach(a)})})}import{Tabs as ZP,Tooltip as s8,tabButtonId as QP,tabPanelId as JP}from"efficient-shell/ui";import{ContrastIcon as eL,NoteIcon as oL,SettingsIcon as tL,TypeIcon as rL}from"efficient-easel/icons";function lh(e){switch(e.status){case"saved":return null;case"failed":return{msg:l("Not saved. Try again."),tone:"error"};case"skipped":switch(e.reason){case"empty":return null;case"no-token":return{msg:l("Not saved. Reload the page."),tone:"error"};case"template":return{msg:l("Templates keep their look. Press Done."),tone:"success"}}}}import{SettingsGroupSub as aL}from"efficient-easel/panel";import{previewFrame as nL}from"efficient-easel/screen/lib/puck/preview-dom";import{useEasel as XP}from"efficient-easel/easel";function tl({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=XP(L=>L),{fonts:a,setFonts:n,sizes:s,setSizes:i,headingCompression:f,setHeadingCompression:u,headingTypography:p,setHeadingTypography:m,textStyles:x,setTextStyles:h}=$(),b=t.data,C=b.root?.props??{},k=e?Er(C.fonts):a,v=e?Qd:s,w=e?it(C.headingCompression):f,g=e?nu(C.headingTypography):p,y={fonts:k,sizes:v,compression:w,typography:g},E=e?C.textStyles:x,F=L=>r({type:"replaceRoot",root:{...b.root,props:{...C,...L}},recordHistory:!0});return{fonts:k,sizes:v,compression:w,typography:g,old:y,saved:E,write:(L,B)=>{let O=Ff(et(L.saved,L.old),L.old);e?F({textStyles:L.saved,fonts:O.fonts,headingCompression:O.compression,headingTypography:O.typography}):(h(L.saved),n(O.fonts),i(O.sizes),u(O.compression),m(O.typography)),o(ZI(L,y),B)},writeRoot:F}}var Af="sf-site-styles",lL="sf-site-styles-tabpanel",Bf=!1,sL="Show hints";function _f({shown:e,onChange:o}){return Z("div",{className:"sf-hints",children:ot("button",{type:"button","aria-pressed":e,onClick:()=>o(!e),className:`sf-rung sf-hints-toggle${e?" is-active":""}`,children:[Z(oL,{size:13}),l(sL)]})})}var ih="text",er=[{id:"basics",label:"Basics",icon:Z(tL,{})},{id:"theme",label:"Theme",icon:Z(eL,{})},{id:"text",label:"Text",icon:Z(rL,{})}];function iL({themeFromDocument:e,persist:o}){let{appState:t,dispatch:r}=sh(u=>u),{theme:a,setTheme:n}=$(),s=t.data,i=s.root?.props??{},f=u=>{if(e){let p={...i,theme:u};r({type:"replaceRoot",root:{...s.root,props:p},recordHistory:!0})}else n(u);o({selected_preset:u.selected,theme_presets:u.themes})};return Z(Xx,{value:e?i.theme:a,onChange:f})}function fL({themeFromDocument:e,persist:o}){let[t,r]=Rf(null),{theme:a,setFonts:n,setSizes:s,setHeadingTypography:i}=$(),f=tl({themeFromDocument:e,persist:o}),{old:u,saved:p,writeRoot:m}=f,x=f.fonts,h=f.sizes,b=f.typography,C=F=>F.values.size??mL(dL[F.id]??"body")??uL[F.kind],k=F=>f.write(F),v=cL(a),w=F=>{let L={...x,accent:F};e?m({fonts:L}):n(L),o({accent_font:F})},g=F=>{s({...h,accent:F}),o({accent_size_px:F})},y=F=>{let L={...b,weightStrong:F};e?m({headingTypography:L}):i(L),o({heading_weight_strong:F})},E=F=>{let L={...b,italicStrong:F};e?m({headingTypography:L}):i(L),o({accent_italic:F})};return ot(wt,{children:[Z(th,{saved:p,old:u,colours:v,sizeOf:C,onChange:k,openId:t===Of?null:t,onOpenChange:r,withoutSize:e}),Z(nh,{font:x.accent,size:h.accent,weight:b.weightStrong,italic:b.italicStrong,headingWeight:b.weight,open:t===Of,onOpenChange:F=>r(F?Of:null),onChange:F=>{F.key==="font"?w(F.value):F.key==="size"?g(F.value):F.key==="weight"?y(F.value):E(F.value)},withoutSize:e})]})}var Of="accent";function cL(e){let o=Bt(e);return[{key:"accent",name:l("Accent"),value:o.accent},{key:"text",name:l("Text"),value:o.text},{key:"labels",name:l("Labels"),value:o.muted??o.text}]}var dL={"heading-1":"heading","heading-2":"heading2","heading-3":"heading3","body-1":"body","body-5":"label"},uL={heading:32,body:14},pL={heading:"main h1, main h2",heading2:"main h1, main h2",heading3:"main h1, main h2",accent:"main h1 em, main h2 em",body:"main p",label:"main .mono-eyebrow"};function mL(e){if(typeof document>"u")return null;let o=(nL()?.contentDocument??document).querySelector(pL[e]);if(!o)return null;let t=parseFloat(getComputedStyle(o).fontSize);return Number.isFinite(t)?t:null}function xL({themeFromDocument:e,persist:o,showHint:t}){let{appState:r,dispatch:a}=sh(x=>x),{cornerRadiusPx:n,setCornerRadiusPx:s}=$(),i=r.data,f=i.root?.props??{},u=f.cornerRadiusPx===void 0?eu[Jd(f.cornerStyle)]:po(f.cornerRadiusPx),p=e?u:n,m=x=>a({type:"replaceRoot",root:{...i.root,props:{...f,...x}},recordHistory:!0});return Z(Zx,{value:p,onChange:x=>{e?m({cornerRadiusPx:x}):s(x),o({corner_radius_px:x})},showHint:t})}function IL(e){return{site_width:e}}function hL({persist:e,showHint:o}){let{siteWidth:t,setSiteWidth:r,sectionBackgroundWidth:a,setSectionBackgroundWidth:n,sectionContentWidth:s,setSectionContentWidth:i}=$(),f=typeof t=="number"?t:ye.default,u=x=>{r(x),e(IL(x),x===null)},p=x=>{n(x),e({section_background_width:x},!0)},m=x=>{i(x),e({section_content_width:x},!0)};return ot(wt,{children:[Z(aL,{title:l(Un),level:4}),Z($n,{value:a??"full",changed:a!==null,detail:l("Full width"),onChange:p,onReset:()=>p(null),hint:o?pI:void 0}),Z(qn,{mode:s??"content",px:f,min:ye.min,max:ye.max,changed:typeof t=="number"||s!==null,detail:`${l("Content width")} ${ye.default}px`,onMode:m,onPx:x=>u(x),onReset:()=>{m(null),u(null)},hint:o?mI:void 0})]})}function gL(e){return{block_gap:e}}function bL(e){return{site_gutter:e}}function yL({persist:e,showHint:o}){let{siteGutter:t,setSiteGutter:r}=$();return Z(lI,{value:t,onChange:a=>{r(a),e(bL(a),a===null)},showHint:o})}function SL({persist:e,showHint:o}){let{blockGap:t,setBlockGap:r}=$();return Z(oI,{value:t,onChange:a=>{r(a),e(gL(a),a===null)},showHint:o})}function CL({persist:e,showHint:o=!0}){return ot(wt,{children:[Z(hL,{persist:e,showHint:o}),Z(yL,{persist:e,showHint:o}),Z(SL,{persist:e,showHint:o})]})}function vL(e){return{card_shadow:e}}function wL(e){return e===null?{shadow_color:null}:{shadow_color:ru(e)}}function kL(e){return{hover_effect:e}}function TL({persist:e,showHint:o=!0}){let{cardShadow:t,setCardShadow:r,shadowColor:a,setShadowColor:n,hoverEffect:s,setHoverEffect:i}=$();return ot(wt,{children:[Z(Qx,{value:t,onChange:f=>{r(f),e(vL(f),!0)},showHint:o}),Z(eI,{value:a,onChange:f=>{n(f),e(wL(f),f===null)},showHint:o}),Z(tI,{value:s,onChange:f=>{i(f),e(kL(f),!0)},showHint:o})]})}function FL(e){return{photography_grayscale:e}}function EL({persist:e,showHint:o}){let{photographyGrayscale:t,setPhotographyGrayscale:r}=$();return Z(aI,{value:t,onChange:a=>{r(a),e(FL(a),!0)},showHint:o})}function PL({persist:e,showHint:o=!0}){return Z(wt,{children:Z(EL,{persist:e,showHint:o})})}function LL(e){return{share_button_on_posts:e}}function OL({persist:e,showHint:o=!0}){let{shareButtonOnPosts:t,setShareButtonOnPosts:r}=$();return Z(nI,{value:t,onChange:a=>{r(a),e(LL(a),!0)},showHint:o})}function or(){let{websiteName:e}=$();return e?.trim()||su}function rl({themeFromDocument:e=!1,tokenRef:o,siteId:t,onNotify:r,tab:a,onTabChange:n}){let{persist:s}=Wt({themeFromDocument:e,tokenRef:o,siteId:t,onResult:C=>{let k=lh(C);k&&r?.(k.msg,k.tone)}}),[i,f]=Rf(er[0].id),u=a!==void 0,p=u?a:i,m=u?n??(()=>{}):f,x=er.find(C=>C.id===p)??er[0],[h,b]=Rf(Bf);return ot(wt,{children:[Z(RL,{activeId:x.id,onSelect:m}),ot("div",{id:JP(Af,x.id),className:lL,role:"tabpanel","aria-labelledby":QP(Af,x.id),children:[p==="basics"&&ot(wt,{children:[Z(xL,{themeFromDocument:e,persist:s,showHint:h}),!e&&Z(TL,{persist:s,showHint:h}),!e&&Z(CL,{persist:s,showHint:h}),!e&&Z(PL,{persist:s,showHint:h}),!e&&Z(OL,{persist:s,showHint:h}),Z(_f,{shown:h,onChange:b})]}),p==="theme"&&Z(iL,{themeFromDocument:e,persist:s}),p==="text"&&Z(fL,{themeFromDocument:e,persist:s})]})]})}function RL({activeId:e,onSelect:o}){return Z("div",{className:"es-insp-tabs",children:Z(ZP,{variant:"underline",block:!0,labelsFit:!0,"aria-label":l("Site styles"),idPrefix:Af,value:e,onChange:o,items:er.map(t=>{let r=l(t.label);return{id:t.id,icon:t.icon,label:r}})})})}import{InspectorIconButton as $L}from"efficient-easel/chrome";import{Button as hh,Dialog as qL,FormField as jL,Input as gh,toast as bh}from"efficient-shell/ui";import{LayersTree as KL,TreeGroupLabel as VL,TreeRow as yh,TreeRowAction as zf}from"efficient-easel/tree";import{AddIcon as YL,PageIcon as XL}from"efficient-easel/icons";import{PagesIcon as ZL}from"efficient-easel/rail";import{useEaselHost as QL}from"efficient-easel/screen/lib/host";var Df="Main Pages",AL="Dynamic Pages",Nf="dynamic",BL="dynamic";function Mf(e){return e.kind===BL}function fh(e){let o=[],t=[];for(let r of e){if(Mf(r)){t.push(r);continue}let a=r.groupKey??(r.group?`folder:${r.group}`:"top"),n=o[o.length-1];n&&n.key===a?n.rows.push(r):o.push({key:a,label:r.group??Df,rows:[r]})}if(t.length){let r=o.findIndex(a=>a.key.startsWith("system:"));o.splice(r===-1?o.length:r,0,{key:Nf,label:AL,rows:t})}return o}import{useEaselSession as JL}from"efficient-easel/screen/lib/session-context";import{useCallback as al,useEffect as _L,useSyncExternalStore as DL}from"react";import{useScreenDocument as ph}from"efficient-easel/screen/components/ScreenDocumentContext";var ch=new WeakMap;function ea(e){let o=ch.get(e);return o||(o={rows:null,loading:null,listeners:new Set},ch.set(e,o)),o}function Hf(e,o){e.rows=o;for(let t of e.listeners)t()}var nl=new Set;function ll(e,o){o?nl.add(e):nl.delete(e)}function dh(e){let o=ea(e),t=e.listPages().then(r=>Hf(o,nl.size?r.filter(a=>!nl.has(a.id)):r),()=>Hf(o,[])).finally(()=>{o.loading===t&&(o.loading=null)});return o.loading=t,t}var uh=()=>null,NL=()=>()=>{};function Wf(){let{adapter:e,ready:o}=ph(),t=al(i=>{let{listeners:f}=ea(e);return f.add(i),()=>f.delete(i)},[e]),r=al(()=>ea(e).rows,[e]),a=DL(o?t:NL,o?r:uh,uh);_L(()=>{if(!o)return;let i=ea(e);i.rows===null&&!i.loading&&dh(e)},[e,o]);let n=al(()=>o?dh(e):Promise.resolve(),[e,o]),s=al(i=>Hf(ea(e),i),[e]);return{rows:a,reload:n,setRows:s,getRows:r}}function ML(e,o){return e?.find(t=>t.slug===o)?.label?.trim()||`/${o}`}function mh(){let{currentSlug:e}=ph(),{rows:o}=Wf();return ML(o,e)}var Sh="sf-editor-pages-collapsed-groups",eO=e=>e.toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),Ch=(e,o)=>{let t=eO(e)||"page";if(!o.has(t))return t;let r=2;for(;o.has(`${t}-${r}`);)r+=1;return`${t}-${r}`};function vh({onNavigate:e,onClose:o,activeSurface:t,onPreviewSurface:r}){let a=JL().chrome?.pageRows,n=QL(),{adapter:s,capabilities:i,ready:f,currentSlug:u}=GL(),p=or(),{rows:m,reload:x,setRows:h,getRows:b}=Wf(),[C,k]=tr(""),[v,w]=tr(!1),[g,y]=tr(null),[E,F]=tr(!1),[L,B]=tr(""),O=zL(),[M,re]=tr(()=>{if(typeof window>"u")return new Set;try{let P=window.localStorage.getItem(Sh);return new Set(P?JSON.parse(P):[])}catch{return new Set}});WL(()=>{try{window.localStorage.setItem(Sh,JSON.stringify([...M]))}catch{}},[M]);let H=P=>re(le=>{let X=new Set(le);return X.has(P)?X.delete(P):X.add(P),X}),z=Ih(()=>fh(m??[]),[m]),A=C.trim().toLowerCase(),oe=P=>!A||P.toLowerCase().includes(A),Ae=P=>A?!0:!M.has(P),Ke=Ih(()=>new Set((m??[]).map(P=>P.slug)),[m]),oo=()=>{if(i.pageCreationInAdminForm){n.send("storefront-editor:new-page");return}B(""),y(null),F(!0)},He=async()=>{let P=L.trim();if(!(!P||!f||v||!s.createPage)){w(!0),y(null);try{let le=await s.createPage({slug:Ch(P,Ke),title:P,layout:{}});await x(),F(!1),B(""),e(le.slug)}catch{y(l("Couldn\u2019t add the page \u2014 please retry."))}finally{w(!1)}}},Be=P=>{let le=m??[],X=s.deletePage;if(!f||v||!X||le.length<=1)return;let te=le.findIndex(be=>be.id===P.id),ae=le.filter(be=>be.id!==P.id),ue=P.slug===u;ll(P.id,!0),h(ae),y(null),ue&&ae[0]&&e(ae[0].slug);let Ne=()=>{ll(P.id,!1);let be=b()??[];if(be.some(To=>To.id===P.id))return;let fo=[...be];fo.splice(Math.max(0,Math.min(te,fo.length)),0,P),h(fo)};bh.undoable(l("Deleted \u201C{name}\u201D",{name:P.label}),{actionLabel:l("Undo"),commit:async be=>{await X(P.id,be),ll(P.id,!1)},undo:()=>{Ne(),ue&&e(P.slug)},onFail:()=>{Ne(),bh.error(l("Couldn\u2019t delete the page \u2014 please retry."))}})},We=P=>n.send("storefront-editor:open-page",{slug:P}),De=P=>{if(!oe(P.label))return null;let le=!t&&P.slug===u,X=i.canDeletePagesInline&&(m??[]).length>1,te=Mf(P),ae=P.kind==="lightbox",ue=[...te?[{label:l("Dynamic"),tone:"info"}]:[],...ae?[{label:l("Lightbox"),tone:"success"}]:[],...P.draft?[{label:l("draft"),tone:"draft"}]:[]],Ne=ue.length>0?ue:void 0,be=i.pageCreationInAdminForm||X?sl(xh,{children:[i.pageCreationInAdminForm&&fe(zf,{kind:"plain",label:l("Edit \u201C{name}\u201D in {place}",{name:P.label,place:l("the admin")}),onClick:()=>We(P.slug),children:fe(il,{name:"pencil",size:13,strokeWidth:1.7,rounded:!0})}),X&&fe(zf,{kind:"delete",label:l("Delete \u201C{name}\u201D",{name:P.label}),disabled:v,onClick:()=>Be(P),children:fe(il,{name:"trash",size:13,strokeWidth:1.7,rounded:!0})})]}):void 0;return fe(yh,{icon:fe(XL,{size:14}),name:P.label,selected:le,onSelect:()=>e(P.slug),badge:Ne,actions:be,rowProps:{"data-page-slug":P.slug}},P.id)},Ce=(P,le,X)=>{let te=X.filter(Boolean);if(te.length===0)return null;let ae=Ae(P);return sl(HL,{children:[fe(VL,{count:te.length,expanded:ae,onToggle:()=>H(P),children:le}),ae&&te]},P)},he=(a?.rows??[]).filter(P=>oe(P.label)).map(P=>{let le=t===P.key;return fe(yh,{icon:P.icon,name:P.label,selected:le,onSelect:()=>r(P.key),badge:{label:l("Preview"),tone:"warning"},actions:fe(zf,{kind:"plain",label:l("Open the {name} in a new tab",{name:P.label}),onClick:()=>window.open(P.href,"_blank","noopener,noreferrer"),children:fe(il,{name:"external-link",size:13,strokeWidth:1.7,rounded:!0})}),rowProps:{"data-shop-surface":P.key}},P.key)}),xe=i.hasSiteSettings&&!!a,Ve=(()=>{if(m===null)return null;let P=[],le=!1;for(let X of z){xe&&!le&&X.key.startsWith("system:")&&(P.push(Ce("shop",a.title,he)),le=!0);let te=X.key===Nf||X.label===Df?l(X.label):X.label;P.push(Ce(X.key,te,X.rows.map(De)))}return xe&&!le&&P.push(Ce("shop",a.title,he)),P})();return sl("div",{className:"sf-pages",children:[fe(UL,{icon:fe(ZL,{}),title:l("Pages"),context:p,actions:fe($L,{label:l("New page"),onClick:oo,children:fe(YL,{size:15})}),onHide:o}),fe("div",{className:"sf-pages-find",children:fe(gh,{type:"search",leftIcon:fe(il,{name:"search",size:14,rounded:!0}),placeholder:l("Search all pages\u2026"),value:C,onChange:P=>k(P.target.value),"aria-label":l("Search all pages")})}),g&&!E&&fe("div",{className:"sf-note sf-note--error",role:"alert",children:g}),Ve===null?fe("div",{className:"sf-note",children:l("Loading\u2026")}):Ve.some(Boolean)?fe(KL,{ariaLabel:l("Pages"),className:"sf-scroll",children:Ve}):fe("div",{className:"sf-note",children:C.trim()?l("No pages match your search"):l("No pages yet. Add one with + above.")}),fe(qL,{open:E,onClose:()=>F(!1),size:"sm",title:l("Add a page"),description:l("Give the new template page a name. It starts blank \u2014 add sections once it opens."),footer:sl(xh,{children:[fe(hh,{variant:"secondary",onClick:()=>F(!1),children:l("Cancel")}),fe(hh,{onClick:()=>{He()},disabled:v||!L.trim(),loading:v,children:l("Add page")})]}),children:fe(jL,{label:l("Page name"),htmlFor:O,hint:L.trim()?l("URL: /{slug}",{slug:Ch(L,Ke)}):void 0,error:g??void 0,children:fe(gh,{id:O,value:L,invalid:!!g,onChange:P=>B(P.target.value),onKeyDown:P=>{P.key==="Enter"&&He()},placeholder:l("e.g. About")})})})]})}import{jsx as oO}from"react/jsx-runtime";import{createContext as tO,useCallback as rO,useContext as aO,useState as nO}from"react";import{useSelectHandler as lO}from"efficient-easel/draw/client";var fl=["chat-bubble-left-right","chat-bubble-oval-left-ellipsis","chat","megaphone","phone","sparkles"],rr=fl[0];var kt="right";function cl(e){return fl.includes(e??"")?e:rr}function wh(e){return e==="left"?"left":kt}function kh(e){return/^#[0-9a-fA-F]{6}$/.test(e??"")?e.toLowerCase():""}var dl={enabled:!0,title:"",subtitle:"",greeting:"",launcherColor:"",launcherIcon:"",launcherPosition:kt,launcherLabel:"",showOnPhones:!0};function q8(e){return{enabled:e.enabled,title:e.title,subtitle:e.subtitle,greeting:e.greeting,launcherColor:kh(e.launcherColor),launcherIcon:e.launcherIcon?cl(e.launcherIcon):"",launcherPosition:wh(e.launcherPosition),launcherLabel:e.launcherLabel??"",showOnPhones:e.showOnPhones!==!1}}var Th=tO({chat:dl,setChat:()=>{},selected:!1,setSelected:()=>{},select:()=>{},setSelectHandler:()=>{}});function j8({children:e,chat:o=dl,onChatChange:t}){let[r,a]=nO(!1),n=rO(f=>t?.(f),[t]),{select:s,setSelectHandler:i}=lO();return oO(Th.Provider,{value:{chat:o,setChat:n,selected:r,setSelected:a,select:s,setSelectHandler:i},children:e})}var ul=()=>aO(Th);import{jsx as Gf}from"react/jsx-runtime";import{DesktopIcon as sO,PhoneIcon as iO,TabletIcon as fO}from"efficient-easel/icons";import{VIEW_TIERS as cO,VIEW_TIER_LABEL as dO}from"efficient-easel/draw";var uO={desktop:Gf(sO,{}),tablet:Gf(fO,{}),mobile:Gf(iO,{})},Fh=cO.map(e=>({id:e,get label(){return l(dO[e])},icon:uO[e]}));import{PreviewDeviceContext as H2}from"efficient-easel/draw/client";import{jsx as pO}from"react/jsx-runtime";import{createContext as mO,useCallback as Eh,useContext as xO,useMemo as IO,useRef as hO}from"react";var gO=Object.fromEntries(Na.map(e=>[e,{value:"",error:null}])),Ph=mO({links:fu,rows:gO,canSave:!1,saveLink:async()=>({ok:!1,error:"There is no website to save to."}),openPanel:()=>{},setOpenHandler:()=>{}});function tq({children:e,value:o}){let t=hO(()=>{}),r=Eh(()=>t.current(),[]),a=Eh(s=>{t.current=s},[]),n=IO(()=>({...o,openPanel:r,setOpenHandler:a}),[o,r,a]);return pO(Ph.Provider,{value:n,children:e})}var oa=()=>xO(Ph);import{jsx as bO}from"react/jsx-runtime";import{createContext as yO,useContext as SO,useMemo as CO,useState as vO}from"react";var Lh=yO(null);function lq({children:e}){let[o,t]=vO(null),r=CO(()=>({surface:o,setSurface:t}),[o]);return bO(Lh.Provider,{value:r,children:e})}function Oh(){return SO(Lh)??{surface:null,setSurface:()=>{}}}import{createPreviewSelectionContext as wO}from"efficient-easel/draw/client";var ta="Scrolling Bar",{Provider:fq,useSelection:pl}=wO("selectedHeroId");import{createPreviewSelectionContext as kO}from"efficient-easel/draw/client";var{Provider:uq,useSelection:ml}=kO("selectedHeroPart");import{isShown as zO,lazyShowWhenContext as GO}from"efficient-shell/format";var xl="product",TO="recordType",FO={key:xl,label:"Product",fields:[]};var EO=new Map,PO=0;function mq(){return[FO,...EO.values()]}function xq(){return PO}function LO(e){let o=e?.[TO];return typeof o!="string"?xl:o.trim()||xl}function Uf(e){return LO(e)===xl}var $f="product",OO="tyre";var RO="productType",AO={[$f]:"alloy-wheel",[OO]:"tyre"},BO=["alloy-wheel","tyre"];function Rh(e,o){return Uf(o)?_O(o)??AO[e]??null:null}function _O(e){if(!Uf(e))return null;let o=e?.[RO];return typeof o=="string"&&BO.includes(o)?o:null}var Il=null,Ah=null;function DO(e,o){Il=e,Ah=o}function yq(e){DO(e,null)}function Sq(){return Il}function Bh(){return Ah==="dynamic"||Il===$f}function Cq(e){return Rh(Il??"",e)??"alloy-wheel"}import{addShowWhenFacts as NO}from"efficient-shell/format";import{showWhenOf as qf,shownForOption as MO,truthy as HO,withRowRules as WO,withRowsShownWhen as hl,withShowWhen as gl}from"efficient-shell/format";var Tq=NO;function Dh(e,o,t){let r=!1,a={};for(let[n,s]of Object.entries(e))zO(qf(s),o??{},t)?a[n]=s:r=!0;return r?a:e}function Nh(e,o,t,r){let a=Ua(o,t,r);return{device:e,parentType:a?.item.type,parent:a?.item.props}}function _h(e,o){if(!e||typeof e!="object")return!1;let t=e;if(typeof t.context=="string"&&(t.context===o||t.context.startsWith(`${o}.`)))return!0;if("not"in t)return _h(t.not,o);for(let r of[t.all,t.any])if(Array.isArray(r)&&r.some(a=>_h(a,o)))return!0;return!1}function Aq(e,o={}){return GO({parentType:()=>e.parent?.type??void 0,parent:()=>e.parent?.props??void 0,dynamicPage:()=>Bh(),root:()=>e.appState?.data?.root?.props,...o})}var Hh=["one","side","stacked"];var _q={one:"One",side:"Side by side",stacked:"Stacked"};function Wh(e){return Hh.includes(e)?e:"one"}function Mh(e){return e==="one"?1:2}function UO(e,o){if(Hh.includes(e))return e;let t=Wh(o);return t==="side"?"stacked":t}function jf(e){let o=Wh(e.mediaLayout);return Math.max(Mh(o),Mh(UO(e.mediaLayoutPhone,o)))}var ra=["media","image","image2"],ar={media:"Media",image:"Image",image2:"Image 2"},aa={media:"heroMedia",image:"heroImage",image2:"heroImage2"};function bl(e,o){return e==="image"&&jf(o)>1?"Image 1":ar[e]}var Hq="Video file",Wq="Upload a video file";function $O(e,o){return{field:"mediaType",is:e,default:o}}var qO=new Set(["HeroSingle"]),zh="heroPart";function jO(e,o){return{...o,[zh]:e}}function zq(e,{parts:o={},onlyFor:t,fallback:r,rules:a}){let n={...e};for(let s of["image","video"])for(let i of t[s])n[i]=gl(n[i],$O(s,r));for(let[s,i]of Object.entries(a??{}))i&&(n[s]=gl(n[s],i));for(let s of ra)for(let i of o[s]??[])n[i]=jO(s,n[i]);return n}function KO(e){let o=e?.[zh];return ra.includes(o)?o:null}function Gh(e,o){let t={};for(let[r,a]of Object.entries(e))KO(a)===o&&(t[r]=a);return t}function Uh(e){if(!qO.has(e.type))return[];let o=[{part:"media",label:ar.media,depth:0}];return(e.props.mediaType??"image")!=="video"&&(o.push({part:"image",label:bl("image",e.props),depth:1}),jf(e.props)>1&&o.push({part:"image2",label:bl("image2",e.props),depth:1})),o}function na(e,o){return`${e}::${o}`}function $h(e){if(!e)return null;let o=e.lastIndexOf("::");if(o<=0)return null;let t=e.slice(o+2);return ra.includes(t)?{nodeId:e.slice(0,o),part:t}:null}var Gq="data-sf-hero-part";import{jsx as ee,jsxs as Et,Fragment as nd}from"react/jsx-runtime";import{useState as pN}from"react";import{useEasel as mN}from"efficient-easel/easel";import{headWords as Hy,InspectorHead as xN,InspectorIconButton as Dy}from"efficient-easel/chrome";import{DuplicateIcon as IN,TrashIcon as hN}from"efficient-easel/icons";import{panelFieldsOf as gN}from"efficient-easel/screen/lib/puck/panel-fields";import{jsx as T,Fragment as K,jsxs as Y}from"react/jsx-runtime";import{BlockBannerIcon as XO,BlockBoxIcon as ZO,BlockButtonIcon as QO,BlockDividerIcon as jh,BlockFooterIcon as Kh,BlockHeadingIcon as JO,BlockProductIcon as eR,BlockSocialIcon as oR,BlockTextIcon as tR,ChatIcon as rR,GridIcon as aR,ImageIcon as Vf,MediaIcon as nR,PageIcon as lR}from"efficient-easel/icons";import{jsx as Kf,Fragment as VO,jsxs as YO}from"react/jsx-runtime";var qh=YO(VO,{children:[Kf("circle",{cx:"9",cy:"20",r:"1.3"}),Kf("circle",{cx:"18",cy:"20",r:"1.3"}),Kf("path",{d:"M2.5 3.5h3l2.3 11.3a1.6 1.6 0 0 0 1.6 1.3h8.1a1.6 1.6 0 0 0 1.6-1.2L21 7H6"})]});var sR={header:Y(K,{children:[T("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),T("path",{d:"M3 9.5h18"})]}),website:Y(K,{children:[T("circle",{cx:"12",cy:"12",r:"9"}),T("path",{d:"M3 12h18M12 3c2.6 2.7 2.6 15.3 0 18M12 3c-2.6 2.7-2.6 15.3 0 18"})]}),social:Y(K,{children:[T("circle",{cx:"6",cy:"12",r:"2.5"}),T("circle",{cx:"18",cy:"6",r:"2.5"}),T("circle",{cx:"18",cy:"18",r:"2.5"}),T("path",{d:"M8.2 10.8l7.6-3.6M8.2 13.2l7.6 3.6"})]}),ticker:Y(K,{children:[T("rect",{x:"3",y:"8.5",width:"18",height:"7",rx:"2"}),T("path",{d:"M6 12h3.5M11.5 12h2M15.5 12h2.5"})]}),FooterLogo:Y(K,{children:[T("path",{d:"M4 15.5h6M4 18h4"}),T("path",{d:"M14 8.5l3 7 3-7"})]}),FooterMenu:T("path",{d:"M6 7h12M6 11h12M6 15h8M6 19h8"}),FooterGroup:Y(K,{children:[T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",strokeDasharray:"3 2.5"}),T("path",{d:"M8 9h8M8 13h8M8 16h5"})]}),FooterText:T("path",{d:"M5 7h14M5 12h14M5 17h9"}),FooterEmailSignup:Y(K,{children:[T("rect",{x:"3",y:"6",width:"18",height:"12",rx:"2"}),T("path",{d:"M3.5 7l8.5 6 8.5-6"})]}),SearchBlock:Y(K,{children:[T("circle",{cx:"11",cy:"11",r:"6"}),T("path",{d:"M20 20l-4.2-4.2"})]}),CartBlock:qh,CountrySwitchBlock:Y(K,{children:[T("circle",{cx:"12",cy:"12",r:"8.5"}),T("path",{d:"M3.5 12h17M12 3.5c2.6 2.4 3.6 5.2 3.6 8.5s-1 6.1-3.6 8.5M12 3.5c-2.6 2.4-3.6 5.2-3.6 8.5s1 6.1 3.6 8.5"})]}),LegalLineBlock:Y(K,{children:[T("path",{d:"M3 9h18"}),T("path",{d:"M3 14h8M14 14h2M18 14h3"})]}),Hero:Y(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M7 13.5h7M7 16.5h10"})]}),HeroSlide:Y(K,{children:[T("rect",{x:"3",y:"5",width:"18",height:"14",rx:"2"}),T("path",{d:"M7 15h6M16 9.5h.01M9.5 12l-2.5 3"})]}),HeroSingle:Y(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M10.5 8.5l4 2.5-4 2.5z"}),T("path",{d:"M7 17h7"})]}),Collections:Y(K,{children:[T("rect",{x:"3",y:"5",width:"4.6",height:"14",rx:"1.3"}),T("rect",{x:"9.7",y:"5",width:"4.6",height:"14",rx:"1.3"}),T("rect",{x:"16.4",y:"5",width:"4.6",height:"14",rx:"1.3"})]}),CollectionCard:Y(K,{children:[T("rect",{x:"6",y:"4",width:"12",height:"16",rx:"2"}),T("path",{d:"M9 15h6M9 17.5h4"})]}),AlloyWheelsListing:Y(K,{children:[T("path",{d:"M3 5h5M3 9h5M3 13h5M3 17h5"}),T("rect",{x:"11.5",y:"5",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"17.3",y:"5",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"11.5",y:"12",width:"4.2",height:"5",rx:"1"}),T("rect",{x:"17.3",y:"12",width:"4.2",height:"5",rx:"1"})]}),CatalogFilterBar:Y(K,{children:[T("path",{d:"M3 7h9M15.5 7H21"}),T("circle",{cx:"13.5",cy:"7",r:"1.7"}),T("path",{d:"M3 12h4M10.5 12H21"}),T("circle",{cx:"8.5",cy:"12",r:"1.7"}),T("path",{d:"M3 17h9M15.5 17H21"}),T("circle",{cx:"13.5",cy:"17",r:"1.7"})]}),ProductGrid:Y(K,{children:[T("rect",{x:"3",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"9.6",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"16.2",y:"5",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"3",y:"13",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"9.6",y:"13",width:"4.8",height:"6",rx:"1"}),T("rect",{x:"16.2",y:"13",width:"4.8",height:"6",rx:"1"})]}),RelatedProducts:Y(K,{children:[T("path",{d:"M3 5h10"}),T("rect",{x:"3",y:"9.5",width:"5",height:"9",rx:"1"}),T("rect",{x:"9.5",y:"9.5",width:"5",height:"9",rx:"1"}),T("rect",{x:"16",y:"9.5",width:"5",height:"9",rx:"1"})]}),Gallery:Y(K,{children:[T("rect",{x:"3",y:"4",width:"11",height:"16",rx:"2"}),T("rect",{x:"15.5",y:"4",width:"5.5",height:"7.5",rx:"1.5"}),T("rect",{x:"15.5",y:"12.5",width:"5.5",height:"7.5",rx:"1.5"})]}),GalleryB:Y(K,{children:[T("rect",{x:"3.5",y:"4",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"13",y:"4",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"3.5",y:"12.5",width:"7.5",height:"7.5",rx:"1.5"}),T("rect",{x:"13",y:"12.5",width:"7.5",height:"7.5",rx:"1.5"})]}),GalleryItem:Y(K,{children:[T("rect",{x:"4",y:"5",width:"16",height:"14",rx:"2"}),T("circle",{cx:"9",cy:"10",r:"1.6"}),T("path",{d:"M20 15.5l-4.5-4L7 19"})]}),Events:Y(K,{children:[T("rect",{x:"4",y:"5",width:"16",height:"15",rx:"2"}),T("path",{d:"M4 9.5h16M8.5 3v4M15.5 3v4M8 14h2M14 14h2"})]}),PostCard:Y(K,{children:[T("rect",{x:"4",y:"3.5",width:"16",height:"17",rx:"2"}),T("rect",{x:"6.5",y:"6",width:"11",height:"6",rx:"1"}),T("path",{d:"M6.5 14.5h11M6.5 17.5h7"})]}),Manifesto:Y(K,{children:[T("path",{d:"M7 8h3.2v4c0 1.6-1 2.6-3 3.2"}),T("path",{d:"M14 8h3.2v4c0 1.6-1 2.6-3 3.2"})]}),Stats:Y(K,{children:[T("path",{d:"M3.5 20h17"}),T("path",{d:"M6 20v-7M11 20V7M16 20v-5M20.5 20v-9"})]}),Logos:Y(K,{children:[T("circle",{cx:"6",cy:"12",r:"2.6"}),T("rect",{x:"10",y:"9.4",width:"5.2",height:"5.2",rx:"1.2"}),T("path",{d:"M19 9.2l2.4 5h-4.8z"})]}),Ticker:Y(K,{children:[T("rect",{x:"3",y:"8.5",width:"18",height:"7",rx:"2"}),T("path",{d:"M6 12h3.5M11.5 12h2M15.5 12h2.5"})]}),SectionHeader:Y(K,{children:[T("rect",{x:"3.5",y:"6",width:"5",height:"5",rx:"1.2"}),T("path",{d:"M11 8.5h9M3.5 15.5h17"})]}),IntroBleed:Y(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M3 13.5h18M7 16.8h6"})]}),Split:Y(K,{children:[T("rect",{x:"3",y:"5",width:"8",height:"14",rx:"1.5"}),T("path",{d:"M14 8.5h6M14 12h6M14 15.5h4"})]}),Eyebrow:Y(K,{children:[T("path",{d:"M4 8.5h4.5M11 8.5h9"}),T("path",{d:"M4 14.5h16"})]}),HeroGroup:Y(K,{children:[T("rect",{x:"3.5",y:"4.5",width:"17",height:"15",rx:"2"}),T("path",{d:"M7 9h8M7 12.5h10M7 16h6"})]}),Form:Y(K,{children:[T("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"}),T("path",{d:"M6.5 9h11M6.5 12.5h11"}),T("rect",{x:"6.5",y:"15",width:"6.5",height:"2.6",rx:"1.3"})]}),LogoBlock:T(K,{children:T("path",{d:"M12 3.5l7.5 3.2v5.1c0 4.2-3.2 7.1-7.5 8.7-4.3-1.6-7.5-4.5-7.5-8.7V6.7z"})}),Spacer:Y(K,{children:[T("path",{d:"M12 4v6M9.5 6.5L12 4l2.5 2.5M12 20v-6M9.5 17.5L12 20l2.5-2.5"}),T("path",{d:"M5 13h14",strokeDasharray:"2 2.5"})]}),ContactRouting:Y(K,{children:[T("rect",{x:"3",y:"4",width:"5",height:"5",rx:"1"}),T("rect",{x:"9.5",y:"4",width:"5",height:"5",rx:"1"}),T("rect",{x:"16",y:"4",width:"5",height:"5",rx:"1"}),T("path",{d:"M4 13.5h11M4 17.5h7"}),T("path",{d:"M17 15l3 2-3 2"})]}),CustomHTML:T("path",{d:"M9 8l-4 4 4 4M15 8l4 4-4 4"})},iR=T("rect",{x:"4",y:"4",width:"16",height:"16",rx:"2.5"}),fR={footer:Kh,Footer:Kh,Divider:jh,FooterDivider:jh,Banner:XO,Flex:ZO,FooterSocial:oR,page:lR,chat:rR,Heading:JO,Text:tR,ImageBlock:Vf,ButtonBlock:QO,Grid:aR,ProductRef:eR,heroMedia:nR,heroImage:Vf,heroImage2:Vf},cR={MenuBlock:"FooterMenu",EmailFormBlock:"FooterEmailSignup",SocialLogosBlock:"FooterSocial",SiteHeader:"header",SiteFooter:"footer"};function Tt({type:e,size:o=16,className:t}){let r=cR[e]??e,a=fR[r];return a?T(a,{size:o,className:t}):T("svg",{width:o,height:o,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:1.7,strokeLinecap:"round",strokeLinejoin:"round",className:t,"aria-hidden":"true",children:sR[r]??iR})}import{PanelHideButton as Ny}from"efficient-easel/screen/components/SidePanelHead";import{useEaselSession as bN}from"efficient-easel/screen/lib/session-context";import{jsx as Q,jsxs as Yf,Fragment as dR}from"react/jsx-runtime";import{useEffect as uR,useId as Vh,useState as pR}from"react";import{IconPicker as mR}from"efficient-shell/ui";import{SettingsDefaultReset as xR,SettingsField as nr,SettingsSegmented as IR,SettingsSwitch as Yh}from"efficient-easel/panel";import*as hR from"efficient-easel/icons";import{ButtonIcon as gR,ButtonIconIcon as bR,EyeIcon as yR,PhoneIcon as SR,PlacementIcon as CR,TypeIcon as vR}from"efficient-easel/icons";var wR="Chat with us",kR="We usually reply within a few minutes",TR="Hi! Ask us anything \u2014 about a wheel, an order, or fitment. Leave your details and we\u2019ll reply.";function yl({label:e,value:o,placeholder:t,onCommit:r,multiline:a=!1,hint:n}){let[s,i]=pR(o);uR(()=>i(o),[o]);let f=()=>{s!==o&&r(s)};return Q(nr,{label:e,icon:Q(vR,{}),changed:o!=="",action:Q(lr,{label:e,changed:o!=="",onReset:()=>r("")}),hint:n,children:a?Q("textarea",{value:s,placeholder:t,rows:3,onChange:u=>i(u.target.value),onBlur:f,"aria-label":e}):Q("input",{type:"text",value:s,placeholder:t,onChange:u=>i(u.target.value),onBlur:f,onKeyDown:u=>{u.key==="Enter"&&u.currentTarget.blur()},"aria-label":e,autoComplete:"off"})})}function lr({label:e,changed:o,onReset:t}){return Q(xR,{words:V()?.panel,label:e,changed:o,onReset:t})}function FR({label:e,icon:o,checked:t,fallback:r,onChange:a,hint:n}){let s=Vh();return Q(nr,{label:e,labelId:s,icon:o,changed:t!==r,action:Yf("span",{className:"inline-flex items-center gap-2",children:[Q(Yh,{checked:t,onChange:a,ariaLabelledBy:s}),Q(lr,{label:e,changed:t!==r,onReset:()=>a(r)})]}),hint:n})}function ER(e){let o=e.replace(/(^|-)([a-z])/g,(r,a,n)=>n.toUpperCase()),t=hR[`${o}Icon`];return t?Q(t,{size:16}):null}var PR=fl.map(e=>({value:e,icon:ER(e)}));function LR(){let{theme:e}=$(),o=Ye(e).themes[0];return Pr(o)??o?.accent??""}function Xh(){let{chat:e,setChat:o}=ul(),t=Vh(),r=LR(),a=e.launcherIcon?cl(e.launcherIcon):rr;return Yf(dR,{children:[Q(nr,{label:l("Show the chat bubble"),labelId:t,icon:Q(yR,{}),changed:!e.enabled,action:Yf("span",{className:"inline-flex items-center gap-2",children:[Q(Yh,{checked:e.enabled,onChange:n=>o({enabled:n}),ariaLabelledBy:t}),Q(lr,{label:l("Show the chat bubble"),changed:!e.enabled,onReset:()=>o({enabled:!0})})]}),hint:e.enabled?l("The floating chat bubble shows in the corner of every page."):l("The chat bubble is hidden across the whole site.")}),Q(Vt,{label:"Look"}),Q(nr,{label:l("Button color"),icon:Q(gR,{}),changed:e.launcherColor!=="",action:Q(eo,{label:l("Button color"),value:e.launcherColor,inherited:r,caption:e.launcherColor?void 0:l("Site button color"),onChange:n=>o({launcherColor:n}),after:Q(lr,{label:l("Button color"),changed:e.launcherColor!=="",onReset:()=>o({launcherColor:""})})})}),Q(nr,{label:l("Icon"),icon:Q(bR,{}),changed:a!==rr,action:Q(lr,{label:l("Icon"),changed:a!==rr,onReset:()=>o({launcherIcon:""})}),children:Q(mR,{label:l("Icon"),value:a,options:PR,onChange:n=>o({launcherIcon:n===rr?"":n})})}),Q(nr,{label:l("Position"),icon:Q(CR,{}),changed:e.launcherPosition!==kt,action:Q(lr,{label:l("Position"),changed:e.launcherPosition!==kt,onReset:()=>o({launcherPosition:kt})}),children:Q(IR,{options:[{label:l("Right"),id:"right"},{label:l("Left"),id:"left"}],value:e.launcherPosition,ariaLabel:l("Position"),onChange:n=>o({launcherPosition:n})})}),Q(yl,{label:l("Label"),value:e.launcherLabel,placeholder:l("Icon only"),onCommit:n=>o({launcherLabel:n}),hint:l("Shows when a visitor points at the button")}),Q(FR,{label:l("Show on phones"),icon:Q(SR,{}),checked:e.showOnPhones,fallback:dl.showOnPhones,onChange:n=>o({showOnPhones:n})}),Q(Vt,{label:"Wording"}),Q(yl,{label:l("Title"),value:e.title,placeholder:wR,onCommit:n=>o({title:n})}),Q(yl,{label:l("Subtitle"),value:e.subtitle,placeholder:kR,onCommit:n=>o({subtitle:n})}),Q(yl,{label:l("Greeting message"),value:e.greeting,placeholder:TR,onCommit:n=>o({greeting:n}),multiline:!0}),Q("p",{className:"es-field-hint sf-hint-keep",children:l("Leave a field blank to use the built-in wording.")})]})}import{jsx as Ft,Fragment as hc,jsxs as og}from"react/jsx-runtime";import{useEffect as lA,useId as Jh,useState as eg}from"react";import{SettingsField as sA}from"efficient-easel/panel";import{jsx as ZR}from"react/jsx-runtime";import{forwardRef as OR,createElement as Xf}from"react";var Zh={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};var G=(e,o,t,r)=>{let a=OR(({color:n="currentColor",size:s=24,stroke:i=2,title:f,className:u,children:p,...m},x)=>Xf("svg",{ref:x,...Zh[e],width:s,height:s,className:["tabler-icon",`tabler-icon-${o}`,u].filter(Boolean).join(" "),...e==="filled"?{fill:n}:{strokeWidth:i,stroke:n},...m},[f&&Xf("title",{key:"svg-title"},f),...r.map(([h,b])=>Xf(h,b)),...Array.isArray(p)?p:[p]]));return a.displayName=`${t}`,a};var RR=[["path",{d:"M7 10v4h3v7h4v-7h3l1 -4h-4v-2a1 1 0 0 1 1 -1h3v-4h-3a5 5 0 0 0 -5 5v2h-3",key:"svg-0"}]],Zf=G("outline","brand-facebook","BrandFacebook",RR);var AR=[["path",{d:"M3 7a4 4 0 0 1 4 -4h10a4 4 0 0 1 4 4v10a4 4 0 0 1 -4 4h-10a4 4 0 0 1 -4 -4l0 -10",key:"svg-0"}],["path",{d:"M8.5 12a3.5 3.5 0 1 0 7 0a3.5 3.5 0 0 0 -7 0",key:"svg-1"}],["path",{d:"M17 7v.01",key:"svg-2"}]],Qf=G("outline","brand-instagram","BrandInstagram",AR);var BR=[["path",{d:"M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01",key:"svg-0"}]],Jf=G("outline","brand-line","BrandLine",BR);var _R=[["path",{d:"M8 11v5",key:"svg-0"}],["path",{d:"M8 8v.01",key:"svg-1"}],["path",{d:"M12 16v-5",key:"svg-2"}],["path",{d:"M16 16v-3a2 2 0 1 0 -4 0",key:"svg-3"}],["path",{d:"M3 7a4 4 0 0 1 4 -4h10a4 4 0 0 1 4 4v10a4 4 0 0 1 -4 4h-10a4 4 0 0 1 -4 -4l0 -10",key:"svg-4"}]],ec=G("outline","brand-linkedin","BrandLinkedin",_R);var DR=[["path",{d:"M8 20l4 -9",key:"svg-0"}],["path",{d:"M10.7 14c.437 1.263 1.43 2 2.55 2c2.071 0 3.75 -1.554 3.75 -4a5 5 0 1 0 -9.7 1.7",key:"svg-1"}],["path",{d:"M3 12a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-2"}]],oc=G("outline","brand-pinterest","BrandPinterest",DR);var NR=[["path",{d:"M15 10l-4 4l6 6l4 -16l-18 7l4 2l2 6l3 -4",key:"svg-0"}]],tc=G("outline","brand-telegram","BrandTelegram",NR);var MR=[["path",{d:"M21 7.917v4.034a9.948 9.948 0 0 1 -5 -1.951v4.5a6.5 6.5 0 1 1 -8 -6.326v4.326a2.5 2.5 0 1 0 4 2v-11.5h4.083a6.005 6.005 0 0 0 4.917 4.917",key:"svg-0"}]],rc=G("outline","brand-tiktok","BrandTiktok",MR);var HR=[["path",{d:"M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5",key:"svg-0"}],["path",{d:"M11.197 15.698c-.69 .196 -1.43 .302 -2.197 .302a8.008 8.008 0 0 1 -2.612 -.432l-2.388 1.432v-2.801c-1.237 -1.082 -2 -2.564 -2 -4.199c0 -3.314 3.134 -6 7 -6c3.782 0 6.863 2.57 7 5.785l0 .233",key:"svg-1"}],["path",{d:"M10 8h.01",key:"svg-2"}],["path",{d:"M7 8h.01",key:"svg-3"}],["path",{d:"M15 14h.01",key:"svg-4"}],["path",{d:"M18 14h.01",key:"svg-5"}]],ac=G("outline","brand-wechat","BrandWechat",HR);var WR=[["path",{d:"M3 21l1.65 -3.8a9 9 0 1 1 3.4 2.9l-5.05 .9",key:"svg-0"}],["path",{d:"M9 10a.5 .5 0 0 0 1 0v-1a.5 .5 0 0 0 -1 0v1a5 5 0 0 0 5 5h1a.5 .5 0 0 0 0 -1h-1a.5 .5 0 0 0 0 1",key:"svg-1"}]],nc=G("outline","brand-whatsapp","BrandWhatsapp",WR);var zR=[["path",{d:"M4 4l11.733 16h4.267l-11.733 -16l-4.267 0",key:"svg-0"}],["path",{d:"M4 20l6.768 -6.768m2.46 -2.46l6.772 -6.772",key:"svg-1"}]],lc=G("outline","brand-x","BrandX",zR);var GR=[["path",{d:"M2 8a4 4 0 0 1 4 -4h12a4 4 0 0 1 4 4v8a4 4 0 0 1 -4 4h-12a4 4 0 0 1 -4 -4v-8",key:"svg-0"}],["path",{d:"M10 9l5 3l-5 3l0 -6",key:"svg-1"}]],sc=G("outline","brand-youtube","BrandYoutube",GR);var UR=[["path",{d:"M18 2a1 1 0 0 1 .993 .883l.007 .117v4a1 1 0 0 1 -.883 .993l-.117 .007h-3v1h3a1 1 0 0 1 .991 1.131l-.02 .112l-1 4a1 1 0 0 1 -.858 .75l-.113 .007h-2v6a1 1 0 0 1 -.883 .993l-.117 .007h-4a1 1 0 0 1 -.993 -.883l-.007 -.117v-6h-2a1 1 0 0 1 -.993 -.883l-.007 -.117v-4a1 1 0 0 1 .883 -.993l.117 -.007h2v-1a6 6 0 0 1 5.775 -5.996l.225 -.004h3z",key:"svg-0"}]],ic=G("filled","brand-facebook-filled","BrandFacebookFilled",UR);var $R=[["path",{d:"M16 3a5 5 0 0 1 5 5v8a5 5 0 0 1 -5 5h-8a5 5 0 0 1 -5 -5v-8a5 5 0 0 1 5 -5zm-4 5a4 4 0 0 0 -3.995 3.8l-.005 .2a4 4 0 1 0 4 -4m4.5 -1.5a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1",key:"svg-0"}]],fc=G("filled","brand-instagram-filled","BrandInstagramFilled",$R);var qR=[["path",{d:"M17 2a5 5 0 0 1 5 5v10a5 5 0 0 1 -5 5h-10a5 5 0 0 1 -5 -5v-10a5 5 0 0 1 5 -5zm-9 8a1 1 0 0 0 -1 1v5a1 1 0 0 0 2 0v-5a1 1 0 0 0 -1 -1m6 0a3 3 0 0 0 -1.168 .236l-.125 .057a1 1 0 0 0 -1.707 .707v5a1 1 0 0 0 2 0v-3a1 1 0 0 1 2 0v3a1 1 0 0 0 2 0v-3a3 3 0 0 0 -3 -3m-6 -3a1 1 0 0 0 -.993 .883l-.007 .127a1 1 0 0 0 1.993 .117l.007 -.127a1 1 0 0 0 -1 -1",key:"svg-0"}]],cc=G("filled","brand-linkedin-filled","BrandLinkedinFilled",qR);var jR=[["path",{d:"M17 3.34a10 10 0 0 1 -8.512 18.023l2.364 -5.315a3.5 3.5 0 0 0 2.398 .952c2.708 0 4.75 -2.089 4.75 -5a6 6 0 1 0 -11.64 2.041a1 1 0 1 0 1.88 -.682a4 4 0 1 1 7.76 -1.36c0 1.818 -1.156 3.001 -2.75 3.001c-.609 0 -1.153 -.361 -1.478 -1.022l1.142 -2.572a1 1 0 0 0 -1.828 -.812l-4.392 9.882a10 10 0 0 1 -4.694 -8.476l.005 -.324a10 10 0 0 1 14.995 -8.336",key:"svg-0"}]],dc=G("filled","brand-pinterest-filled","BrandPinterestFilled",jR);var KR=[["path",{d:"M16.083 2h-4.083a1 1 0 0 0 -1 1v11.5a1.5 1.5 0 1 1 -2.519 -1.1l.12 -.1a1 1 0 0 0 .399 -.8v-4.326a1 1 0 0 0 -1.23 -.974a7.5 7.5 0 0 0 1.73 14.8l.243 -.005a7.5 7.5 0 0 0 7.257 -7.495v-2.7l.311 .153c1.122 .53 2.333 .868 3.59 .993a1 1 0 0 0 1.099 -.996v-4.033a1 1 0 0 0 -.834 -.986a5.005 5.005 0 0 1 -4.097 -4.096a1 1 0 0 0 -.986 -.835z",key:"svg-0"}]],uc=G("filled","brand-tiktok-filled","BrandTiktokFilled",KR);var VR=[["path",{d:"M18.497 4.409a10 10 0 0 1 -10.36 16.828l-.223 -.098l-4.759 .849l-.11 .011a1 1 0 0 1 -.11 0l-.102 -.013l-.108 -.024l-.105 -.037l-.099 -.047l-.093 -.058l-.014 -.011l-.012 -.007l-.086 -.073l-.077 -.08l-.067 -.088l-.056 -.094l-.034 -.07l-.04 -.108l-.028 -.128l-.012 -.102a1 1 0 0 1 0 -.125l.012 -.1l.024 -.11l.045 -.122l1.433 -3.304l-.009 -.014a10 10 0 0 1 1.549 -12.454l.215 -.203a10 10 0 0 1 13.226 -.217m-8.997 3.09a1.5 1.5 0 0 0 -1.5 1.5v1a6 6 0 0 0 6 6h1a1.5 1.5 0 0 0 0 -3h-1l-.144 .007a1.5 1.5 0 0 0 -1.128 .697l-.042 .074l-.022 -.007a4.01 4.01 0 0 1 -2.435 -2.435l-.008 -.023l.075 -.041a1.5 1.5 0 0 0 .704 -1.272v-1a1.5 1.5 0 0 0 -1.5 -1.5",key:"svg-0"}]],pc=G("filled","brand-whatsapp-filled","BrandWhatsappFilled",VR);var YR=[["path",{d:"M8.267 3a1 1 0 0 1 .73 .317l.076 .092l4.274 5.828l5.946 -5.944a1 1 0 0 1 1.497 1.32l-.083 .094l-6.163 6.162l6.262 8.54a1 1 0 0 1 -.697 1.585l-.109 .006h-4.267a1 1 0 0 1 -.73 -.317l-.076 -.092l-4.276 -5.829l-5.944 5.945a1 1 0 0 1 -1.497 -1.32l.083 -.094l6.161 -6.163l-6.26 -8.539a1 1 0 0 1 .697 -1.585l.109 -.006h4.267z",key:"svg-0"}]],mc=G("filled","brand-x-filled","BrandXFilled",YR);var XR=[["path",{d:"M18 3a5 5 0 0 1 5 5v8a5 5 0 0 1 -5 5h-12a5 5 0 0 1 -5 -5v-8a5 5 0 0 1 5 -5zm-9 6v6a1 1 0 0 0 1.514 .857l5 -3a1 1 0 0 0 0 -1.714l-5 -3a1 1 0 0 0 -1.514 .857z",key:"svg-0"}]],xc=G("filled","brand-youtube-filled","BrandYoutubeFilled",XR);var yj="outline",Sl={fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},QR={},Ic={fillRule:"evenodd"},JR=[["path",{...Sl,d:"M21 4L3 11L7 13L9 19L12 15L17 20z"}],["path",{...Ic,d:"M21 4L3 11L7 13L9 19L12 15L17 20zM15.212 8.939 10.576 13.576 11.424 14.424 16.061 9.788z"}]],eA=[["path",{...Sl,d:["M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663","c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133","c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48","c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01z"].join("")}],["path",{...QR,d:["M21 10.663c0 -4.224 -4.041 -7.663 -9 -7.663s-9 3.439 -9 7.663","c0 3.783 3.201 6.958 7.527 7.56c1.053 .239 .932 .644 .696 2.133","c-.039 .238 -.184 .932 .777 .512c.96 -.42 5.18 -3.201 7.073 -5.48","c1.304 -1.504 1.927 -3.029 1.927 -4.715v-.01z"].join("")}]],oA=[["path",{...Sl,d:["M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178","a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5z"].join("")}],["path",{...Sl,d:["M8.319 15.972L7.84 15.918L7.349 15.832L6.865 15.715L6.388 15.568L4 17L4 14.199","L3.559 13.775L3.197 13.356L2.877 12.91L2.603 12.439L2.376 11.946L2.201 11.433","L2.079 10.902L2.016 10.405L2.001 9.897L2.036 9.386L2.12 8.889L2.25 8.405L2.425 7.937","L2.642 7.486L2.9 7.055L3.195 6.645L3.459 6.333L3.744 6.037L4.05 5.757L4.377 5.495","L4.723 5.25L5.086 5.025L5.467 4.819L5.864 4.634L6.275 4.471L6.701 4.331L7.139 4.214","L7.589 4.122L8.05 4.055L8.521 4.014L9.352 4.007L9.815 4.04L10.269 4.098L10.713 4.181","L11.146 4.287L11.567 4.416L11.975 4.567L12.369 4.739L12.748 4.932L13.112 5.143","L13.459 5.374L13.788 5.622L14.172 5.956L14.458 6.241L14.722 6.542L14.965 6.856","L15.217 7.237A8.35 7.35 0 0 0 8.319 15.972z"].join("")}],["path",{...Ic,d:["M8.319 15.972L7.84 15.918L7.349 15.832L6.865 15.715L6.388 15.568L4 17L4 14.199","L3.559 13.775L3.197 13.356L2.877 12.91L2.603 12.439L2.376 11.946L2.201 11.433","L2.079 10.902L2.016 10.405L2.001 9.897L2.036 9.386L2.12 8.889L2.25 8.405L2.425 7.937","L2.642 7.486L2.9 7.055L3.195 6.645L3.459 6.333L3.744 6.037L4.05 5.757L4.377 5.495","L4.723 5.25L5.086 5.025L5.467 4.819L5.864 4.634L6.275 4.471L6.701 4.331L7.139 4.214","L7.589 4.122L8.05 4.055L8.521 4.014L9.352 4.007L9.815 4.04L10.269 4.098L10.713 4.181","L11.146 4.287L11.567 4.416L11.975 4.567L12.369 4.739L12.748 4.932L13.112 5.143","L13.459 5.374L13.788 5.622L14.172 5.956L14.458 6.241L14.722 6.542L14.965 6.856","L15.217 7.237A8.35 7.35 0 0 0 8.319 15.972zM5.25 7.9a0.85 0.85 0 1 0 1.7 0","a0.85 0.85 0 1 0 -1.7 0zM8.25 7.9a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0z"].join("")}],["path",{...Ic,d:["M16.5 10c3.038 0 5.5 2.015 5.5 4.5c0 1.397 -.778 2.645 -2 3.47l0 2.03l-1.964 -1.178","a6.649 6.649 0 0 1 -1.536 .178c-3.038 0 -5.5 -2.015 -5.5 -4.5s2.462 -4.5 5.5 -4.5z","M14.15 14a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0zM17.15 14","a0.85 0.85 0 1 0 1.7 0a0.85 0.85 0 1 0 -1.7 0z"].join("")}]],tA=G("filled","brand-telegram-filled","BrandTelegramFilled",JR),rA=G("filled","brand-line-filled","BrandLineFilled",eA),aA=G("filled","brand-wechat-filled","BrandWechatFilled",oA),nA={instagram:{outline:Qf,solid:fc},facebook:{outline:Zf,solid:ic},tiktok:{outline:rc,solid:uc},youtube:{outline:sc,solid:xc},x:{outline:lc,solid:mc},linkedin:{outline:ec,solid:cc},pinterest:{outline:oc,solid:dc},whatsapp:{outline:nc,solid:pc},telegram:{outline:tc,solid:tA},line:{outline:Jf,solid:rA},wechat:{outline:ac,solid:aA}};function Qh({platform:e,iconStyle:o,size:t}){let r=nA[e][o];return ZR(r,{size:t,stroke:1.75,"aria-hidden":"true",focusable:"false"})}var iA={instagram:"instagram.com/yourshop",facebook:"facebook.com/yourshop",tiktok:"tiktok.com/@yourshop",youtube:"youtube.com/@yourshop",x:"x.com/yourshop",linkedin:"linkedin.com/company/yourshop",pinterest:"pinterest.com/yourshop",whatsapp:"wa.me/61400000000",telegram:"t.me/yourshop",line:"line.me/ti/p/~yourshop",wechat:"u.wechat.com/your-qr-code-link"};function fA({platform:e}){let{rows:o,saveLink:t}=oa(),{value:r,error:a}=o[e],[n,s]=eg(r),[i,f]=eg(!1),u=Jh(),p=Jh();lA(()=>s(r),[r]);let m=async()=>{if(n.trim()===r){n!==r&&s(r);return}f(!0),await t(e,n),f(!1)},x=iu[e];return og(hc,{children:[Ft(sA,{label:l(x),htmlFor:u,icon:Ft(Qh,{platform:e,iconStyle:"outline",size:18}),children:Ft("input",{id:u,type:"text",inputMode:"url",value:n,placeholder:iA[e],onChange:h=>s(h.target.value),onBlur:()=>{m()},onKeyDown:h=>{h.key==="Enter"&&h.currentTarget.blur(),h.key==="Escape"&&(s(r),h.currentTarget.blur())},"aria-invalid":a?!0:void 0,"aria-describedby":a?p:void 0,"aria-busy":i||void 0,autoComplete:"off",spellCheck:!1})}),a&&Ft("p",{id:p,className:"sf-note sf-note--error",role:"alert",children:a})]})}function tg({unavailable:e}){let{canSave:o}=oa();return!o&&e?Ft(hc,{children:e}):og(hc,{children:[Ft("p",{className:"es-field-hint sf-hint-keep",children:l("Paste a link to each profile. A platform left empty shows nothing on the site.")}),Na.map(t=>Ft(fA,{platform:t},t))]})}import{jsx as dr,jsxs as JB}from"react/jsx-runtime";import{useId as e_,useMemo as o_}from"react";import{useEasel as t_}from"efficient-easel/easel";import{SettingsField as r_,SettingsSwitch as a_}from"efficient-easel/panel";import{EyeIcon as n_}from"efficient-easel/icons";import{jsx as Co,jsxs as Ll}from"react/jsx-runtime";import{useCallback as fr,useEffect as cr,useId as jB,useRef as Mo,useState as ma}from"react";var rg="data-puck-overlay-portal";function Cl(e){return e.setAttribute(rg,"true"),()=>e.removeAttribute(rg)}import{jsx as ca,jsxs as vg}from"react/jsx-runtime";var gc="small",bc="dot",cA=[{label:"Small",value:"small"},{label:"Display",value:"display"}],dA=[{label:"Dot \u25CF",value:"dot"},{label:"Cross \u2715",value:"cross"},{label:"Slash /",value:"slash"},{label:"Triangle \u25BC",value:"triangle"},{label:"None",value:"none"}],ag={dot:"\u25CF",cross:"\u2715",slash:"/",triangle:"\u25BC",none:""},uA={small:"font-mono text-[length:var(--size-label,14px)] uppercase tracking-[0.25em] max-[800px]:text-[length:var(--size-label,12px)]",display:"font-display font-medium text-[length:var(--size-headingMedium,44px)] uppercase leading-none tracking-[0.005em] max-[800px]:text-[length:var(--size-headingMedium,28px)]"},pA={small:{dot:"",cross:"text-[0.77em]",slash:"text-[0.77em]",triangle:"",none:""},display:{dot:"text-[0.3em]",cross:"text-[0.64em]",slash:"text-[0.64em]",triangle:"text-[0.3em]",none:""}};function ng(e){return Xe(cA,gc,e)}function lg(e){return Xe(dA,bc,e)}function sg(e){return uA[e]}function ig(e,o){return pA[e][o]}var yc="left",mA=[{label:"Left",value:"left",cell:"left"},{label:"Right",value:"right",cell:"right"},{label:"Up",value:"up",cell:"top"},{label:"Down",value:"down",cell:"bottom"}],xA={left:"storefront-ticker",right:"storefront-ticker-right",up:"storefront-ticker-up",down:"storefront-ticker-down"};function fg(e){return Xe(mA,yc,e)}function cg(e){return e==="up"||e==="down"}function dg(e,o){return`${xA[e]} ${o}s linear infinite`}import{jsx as ce,jsxs as wc}from"react/jsx-runtime";import{Fragment as Sg}from"react";import{Fragment as SA,jsx as Cc}from"react/jsx-runtime";import{Fragment as mg,jsx as sa,jsxs as gA}from"react/jsx-runtime";import{createContext as Sc,useContext as ia,useId as bA,useMemo as yA}from"react";var la="@name",ug="@body",pg="@value",Dj={[la]:"Name",[ug]:"Body",[pg]:"Value"},IA={TimelineTrack:{"entries.date":la,"entries.title":la,"entries.blurb":ug},Footprint:{"offices.city":la},Stats:{"items.label":la,"items.value":pg}};function hA(e){let{key:o,row:t}=ao(e);return t?`${o}.${t.rowKey}`:null}function vl(e,o){if(!e)return o;let t=hA(o);return t?IA[e]?.[t]??o:o}var wl=Sc(null),xg=Sc(null),Ig=Sc(null);function Gj({needles:e,styles:o,type:t,children:r}){let a=bA(),n=JSON.stringify([a,e,o,t]),s=yA(()=>qI(e,o,a,i=>vl(t,i)),[n]);return s?gA(mg,{children:[sa("style",{"data-sf-part-styles":"",dangerouslySetInnerHTML:{__html:jI(s).replace(/</g,"\\3c ")}}),sa(wl.Provider,{value:s,children:r})]}):sa(mg,{children:r})}function hg(e){let o=ia(wl),t=ia(xg),r=KI(o,e);return r&&r.stamp!==t?r:null}function Uj(e){return Cf(ia(wl),e)}function gg({stamp:e,children:o}){return sa(xg.Provider,{value:e,children:o})}function $j({children:e}){let o=ia(wl);return sa(Ig.Provider,{value:o,children:e})}function qj(e){return Cf(ia(Ig),e)}function fa({value:e,children:o}){let t=hg(e);return t?Cc(gg,{stamp:t.stamp,children:Cc("span",{[xf]:t.stamp,children:o})}):Cc(SA,{children:o})}import{jsx as vc,Fragment as CA}from"react/jsx-runtime";function bg({className:e=""}){return vc("sup",{className:`text-accent tracking-normal text-[length:min(1em,max(0.75em,11px))] ${e}`,children:"\xAE"})}function kl(e){if(!e.includes("\xAE"))return e;let o=e.split("\xAE"),t=[];return o.forEach((r,a)=>{r&&t.push(r),a<o.length-1&&t.push(vc(bg,{},`r${a}`))}),vc(CA,{children:t})}var Qj=bg;function kc(e,o=!1){let t=LA(o),r=Ks(e);if(r.length===1){let[n]=r,s=js(n),i=s?EA(s,n.children):n.children;return ce(fa,{value:e,children:Tl(i,t)})}let a=[];return r.forEach((n,s)=>{if(n.bullet){a.push(ce("span",{"data-sf-bullet":"",className:vA,children:Tl(n.children,t)},s));return}if(n.number!=null){a.push(wc("span",{"data-sf-number":n.number,className:wA,children:[wc("span",{className:kA,children:[n.number,"."]}),Tl(n.children,t)]},s));return}s>0&&!TA(r[s-1])&&a.push(ce("br",{},`br${s}`)),a.push(ce(Sg,{children:Tl(n.children,t)},s))}),ce(fa,{value:e,children:a})}var vA="relative block pl-6 before:absolute before:left-1.5 before:font-bold before:text-accent before:content-['\xB7']",wA="relative block pl-[2em]",kA="absolute left-0 w-[1.6em] text-right tabular-nums";function TA(e){return e.bullet||e.number!=null}var FA="text-accent underline underline-offset-[0.18em]";function EA(e,o){let[t,...r]=o;return t?.kind==="text"?[{kind:"text",text:`${e}${t.text}`},...r]:[{kind:"text",text:e},...o]}function PA(e){if(e)return $I(e)?e:Object.hasOwn(Lo,e)?Lo[e]:void 0}function Tl(e,o){let t=[],r=!1;return e.forEach((a,n)=>{if(a.kind==="text"){t.push(ce("span",{children:kl(a.text)},n)),r=!0;return}r||t.push(ce("span",{},`e${n}`)),t.push(Cg(a,n,o)),r=!1}),r||t.push(ce("span",{},"end")),t}function yg(e,o){return e.length===1&&e[0].kind==="text"?kl(e[0].text):e.map((t,r)=>t.kind==="text"?ce(Sg,{children:kl(t.text)},r):Cg(t,r,o))}function LA(e){return e?"font-normal italic text-accent":"not-italic text-accent"}function sK(e){return ce(fa,{value:e,children:ce("span",{children:e})})}function Cg(e,o,t){if(e.kind==="link")return ce("a",{href:e.href,className:FA,children:yg(e.children,t)},o);let r=yg(e.children,t),a=dp[e.kind];if(a)return ce("span",{[up]:a,children:r},o);switch(e.kind){case"underline":return ce("u",{children:r},o);case"sup":return ce("sup",{children:r},o);case"sub":return ce("sub",{children:r},o);case"color":{let n=PA(e.color);return n?ce("span",{style:{color:n},children:r},o):ce("span",{children:r},o)}case"accent":case"highlight":return ce("em",{className:t,children:r},o);case"bold":return ce("strong",{className:"font-semibold",children:r},o);case"italic":return ce("em",{className:"italic",children:r},o);case"strike":return ce("s",{className:"line-through",children:r},o);default:return ce("span",{children:r},o)}}function iK(e,o=!0){let t=e.split(`
|
|
6
|
+
`);return ce(fa,{value:e,children:t.map((r,a)=>wc("span",{children:[kc(r,o),a<t.length-1?ce("br",{}):null]},a))})}function fK(e){return e.split(/\n\s*\n/).map(o=>o.trim()).filter(Boolean)}var OA={"themed-band":"text-fg/70","themed-section":"text-fg-dim","dark-media":"text-overlay-fg/70"};function wg({items:e,separator:o=bc,size:t=gc,durationSec:r=50,scroll:a=yc,backdrop:n="themed-band",className:s}){let i=ng(t),f=fg(a),u=lg(o),p=`text-accent ${ig(i,u)}`.trim(),m=ag[u],x=m===""?ca("span",{}):ca("span",{className:p,children:m}),h=cg(f),b=h?"inline-flex flex-col items-center gap-[60px] pb-[60px] max-[800px]:gap-8 max-[800px]:pb-8":"inline-flex items-center gap-[60px] pr-[60px] max-[800px]:gap-8 max-[800px]:pr-8",C=h?"inline-flex flex-col items-center gap-[60px] max-[800px]:gap-8":"inline-flex items-center gap-[60px] max-[800px]:gap-8",k=v=>ca("span",{className:b,children:e.map((w,g)=>{let y=typeof w=="string"?w:w.text,E=typeof w=="object"&&w.gold;return vg("span",{className:C,children:[ca("span",{className:E?"text-accent":void 0,children:kc(y)}),x]},g)})},v);return ca("div",{className:`overflow-hidden ${s??""}`,children:vg("div",{className:`flex ${h?"flex-col ":""}whitespace-nowrap ${sg(i)} ${OA[n]}`,style:{animation:dg(f,r)},children:[k("a"),k("b")]})})}import{jsx as ua,jsxs as lB}from"react/jsx-runtime";import{createContext as sB,useContext as iB}from"react";import{jsx as sr,jsxs as _g}from"react/jsx-runtime";import{useEffect as Fc,useRef as VA,useState as da}from"react";import{jsx as kg}from"react/jsx-runtime";import{createContext as RA,lazy as yK,Suspense as SK,useContext as AA}from"react";var BA={Link:Hd,Image:Md},_A=RA(BA);function Tg(){return AA(_A)}function CK(e){let{Link:o}=Tg();return kg(o,{...e})}function Fg(e){let{Image:o}=Tg();return kg(o,{...e})}import{jsx as Eg,Fragment as DA,jsxs as NA}from"react/jsx-runtime";import{useEffect as MA,useRef as Pg,useState as HA}from"react";var WA="#t=0.001",zA=2;function GA(e,o){if(e.readyState<zA||!e.videoWidth||!e.videoHeight)return!1;let t=o.getContext("2d");return t?(o.width=e.videoWidth,o.height=e.videoHeight,t.drawImage(e,0,0,o.width,o.height),!0):!1}function Lg({src:e,objectPosition:o="50% 50%",onError:t}){let r=Pg(null),a=Pg(null),[n,s]=HA(!1);return MA(()=>{let i=r.current,f=a.current;if(n||!i||!f)return;let u=()=>{GA(i,f)&&s(!0)};return u(),i.addEventListener("loadeddata",u),i.addEventListener("seeked",u),()=>{i.removeEventListener("loadeddata",u),i.removeEventListener("seeked",u)}},[n]),NA(DA,{children:[Eg("canvas",{ref:a,"aria-hidden":!0,className:"absolute inset-0 z-[3] h-full w-full object-cover",style:{objectPosition:o,visibility:n?"visible":"hidden"}}),!n&&Eg("video",{ref:r,src:`${e}${WA}`,muted:!0,playsInline:!0,preload:"auto",className:"hidden",onError:t})]})}import{imageCopyUrl as Rg,imageSrcSet as UA}from"efficient-shell/image-copies";var Og;function Tc(){return Og===void 0?{}:{host:Og}}var EK="(max-width: 800px) 100vw, min(100vw, 1600px)";function Ag(e,{fallbackWidth:o=1280,maxWidth:t}={}){let r=UA(e,{...Tc(),...t===void 0?{}:{maxWidth:t}});return r?{src:Rg(e,o,Tc()),srcSet:r}:{src:e}}function PK(e){let o=Rg(e,1920,Tc());return o===e?`url(${e})`:`url("${o}")`}import{formatFocal as $A,parseFocal as qA}from"efficient-shell/format";var jA="sf-focus-phone",KA="--sf-focus-phone";function Bg(e){if(typeof e!="string"||!/^\s*-?\d+(\.\d+)?%\s+-?\d+(\.\d+)?%\s*$/.test(e))return{className:"",style:{}};let{x:o,y:t}=qA(e);return{className:jA,style:{[KA]:$A(o,t)}}}var YA=.5;function Dg({videoSrc:e,posterSrc:o,showVideo:t=!0,playbackRate:r=YA,objectPosition:a="50% 50%",objectPositionPhone:n,quiet:s=!1}){let i=Bg(n),f=o||"",u=e||"",[p,m]=da(!1),[x,h]=da(!1),[b,C]=da(!1),[k,v]=da(!1),[w,g]=da(!1),y=VA(null);Fc(()=>{m(!1),h(!1),C(!1),v(!1)},[e,o]),Fc(()=>{if(typeof window>"u")return;let L=()=>{let B=window;B.requestIdleCallback?B.requestIdleCallback(()=>g(!0),{timeout:2e3}):setTimeout(()=>g(!0),800)};if(document.readyState==="complete"){L();return}return window.addEventListener("load",L,{once:!0}),()=>window.removeEventListener("load",L)},[]),Fc(()=>{let L=y.current;if(!L)return;let B=()=>{L.playbackRate=r};return B(),L.addEventListener("loadedmetadata",B),()=>L.removeEventListener("loadedmetadata",B)},[e,r]);let E=Wd(f),F=f&&E&&!x?Ag(f):{src:f};return _g("div",{className:"absolute inset-0 z-[1]",children:[sr("div",{className:"absolute inset-0",style:{background:"var(--site-surface)"}}),f&&(E?sr("img",{src:F.src,...F.srcSet?{srcSet:F.srcSet,sizes:"100vw"}:{},alt:"",className:`absolute inset-0 z-[2] h-full w-full object-cover ${i.className}`.trim(),style:{display:p?"none":"block",objectPosition:a,...i.style},onError:()=>F.srcSet?h(!0):m(!0)},f):sr(Fg,{src:f,alt:"",fill:!0,priority:!0,sizes:"100vw",className:`z-[2] object-cover ${i.className}`.trim(),style:{display:p?"none":"block",objectPosition:a,...i.style},onError:()=>m(!0)},f)),t&&!s&&u&&w&&!b&&_g("video",{ref:y,autoPlay:!0,loop:!0,muted:!0,playsInline:!0,preload:"metadata",className:"absolute inset-0 z-[3] h-full w-full object-cover",style:{objectPosition:a},onError:()=>C(!0),children:[zd(u)&&sr("source",{src:u.replace(/\.mp4$/,".av1.mp4"),type:'video/mp4; codecs="av01.0.08M.10"'}),sr("source",{src:u,type:"video/mp4"})]},u),t&&s&&u&&w&&!k&&(!f||p)&&sr(Lg,{src:u,objectPosition:a,onError:()=>v(!0)},u)]})}var Ng=["top","middle","bottom"],Mg=["left","center","right"],Hg="bottom",Wg="left",XA={top:"Top",middle:"Middle",bottom:"Bottom"},ZA={left:"Left",center:"Center",right:"Right"};var zK="Up and down",GK="Sideways",QA={top:"flex-start",middle:"center",bottom:"flex-end"},JA={left:"flex-start",center:"center",right:"flex-end"},eB="--sf-hero-phone-y",oB="--sf-hero-phone-x";function tB(e){return Ng.includes(e)?e:Hg}function rB(e){return Mg.includes(e)?e:Wg}function zg(e,o){let t=tB(e),r=rB(o),a={};return t!==Hg&&(a[eB]=QA[t]),r!==Wg&&(a[oB]=JA[r]),a}function UK(){return Ng.map(e=>({label:XA[e],value:e}))}function $K(){return Mg.map(e=>({label:ZA[e],value:e}))}var aB="#0A0A0A",nB=[[0,".5"],[30,".1"],[60,".1"],[100,".85"]];function Gg(e){let o=e.trim().replace(/^#/,""),t=o.length===3?o.split("").map(a=>a+a).join(""):o;if(!/^[0-9a-fA-F]{6}$/.test(t))return null;let r=Number.parseInt(t,16);return`${r>>16&255},${r>>8&255},${r&255}`}function Ug(e){return e==null?!0:e!==!1}function $g(e){let o=(e?Gg(e):null)??Gg(aB);return`linear-gradient(180deg, ${nB.map(([t,r])=>`rgba(${o},${r}) ${t}%`).join(", ")})`}var Ec=sB({});function eV({name:e,process:o,mediaType:t="video",mediaSrc:r,videoSpeed:a,poster:n,objectPosition:s,objectPositionPhone:i,tintColor:f="#000000",tintOpacity:u=0,groups:p,editing:m=!1,themeClassName:x,themeStyle:h}){let{alignment:b="left",textureOpacity:C,textureOn:k,textureColor:v,quietVideo:w,phoneUpDown:g,phoneSideways:y}=iB(Ec),E=t==="video",F=E?Fr(r):void 0,L=E?Fr(n):Fr(r)??Fr(n),B=typeof a=="number"?a/100:1;return lB("section",{className:x?`relative h-full w-full overflow-hidden ${x}`:"relative h-full w-full overflow-hidden",style:h,"data-slide-name":e??"","data-slide-process":o??"","data-slide-media":F?"video":"still",children:[ua(Dg,{videoSrc:F,posterSrc:L,showVideo:E,playbackRate:B,objectPosition:s,objectPositionPhone:E?void 0:i,quiet:w}),u>0&&ua("div",{className:"absolute inset-0 z-[2]",style:{background:f,opacity:Math.min(Math.max(u,0),100)/100}}),Ug(k)&&ua("div",{className:"absolute inset-0 z-[2]",style:{background:$g(v),...C!==void 0?{opacity:C/100}:null}}),ua("div",{className:["sf-hero-group-layer absolute inset-0 z-[3] mx-auto max-w-[var(--sf-site-width,1600px)] px-[var(--sf-site-gutter,40px)] pt-[140px] pb-14",m?"sf-hero-group-layer-edit":""].filter(Boolean).join(" "),style:{...Qu,...zg(g,y)},children:p&&ua(p,{className:"sf-hero-group-zone",minEmptyHeight:160})})]})}var qg=Array.from({length:3},(e,o)=>({name:`Slide ${o+1}`,process:"Category",mediaType:"image",mediaVideo:"",poster:""}));import{jsx as Pc}from"react/jsx-runtime";import{UiIcon as gB}from"efficient-easel/draw/client";var fB={"top-left":"left-0 top-[120px]","top-center":"left-1/2 top-[120px] -translate-x-1/2","top-right":"right-0 top-[120px]",left:"left-0 top-1/2 -translate-y-1/2",center:"left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2",right:"right-0 top-1/2 -translate-y-1/2","bottom-left":"left-0 bottom-[120px]","bottom-center":"left-1/2 bottom-[120px] -translate-x-1/2","bottom-right":"right-0 bottom-[120px]"},cB=`calc(${yn} - ${Ge}*2)`,jg=`var(${Pi},${Ge})`,aV=`pointer-events-none absolute inset-y-0 left-[${jg}] right-[${jg}] z-[6] mx-auto max-w-[var(${Li},${cB.replace(/ /g,"_")})]`;function Fl(e,o){return`pointer-events-auto absolute ${fB[e]} z-[6] sf-hero-overlay-rail flex ${o}`}function Kg(e){return mo.includes(e)?e:null}var dB="bottom-right",uB=["outline","solid","square","bare"],pB="outline",sV={outline:"Outline",solid:"Solid",square:"Square",bare:"Bare"},iV=!1,Vg=["prev","next"],Yg={prev:"Previous slide",next:"Next slide"};function mB(e){return uB.includes(e)?e:pB}function xB(e){return Kg(e)??dB}var IB="flex-row items-center gap-2";function Xg(e){return Fl(xB(e),IB)}var hB={outline:"grid h-10 w-10 cursor-pointer place-items-center rounded-full border border-overlay-chrome/60 text-overlay-fg transition-colors hover:border-overlay-chrome hover:bg-overlay-scrim/30",solid:"grid h-10 w-10 cursor-pointer place-items-center rounded-full border border-overlay-chrome bg-overlay-chrome text-overlay-scrim transition-colors hover:bg-overlay-chrome/85",square:"grid h-10 w-10 cursor-pointer place-items-center rounded-md border border-overlay-chrome/60 text-overlay-fg transition-colors hover:border-overlay-chrome hover:bg-overlay-scrim/30",bare:"grid h-10 w-10 cursor-pointer place-items-center text-overlay-fg transition-colors hover:text-overlay-chrome"};function Zg(e){return hB[mB(e)]}function Qg(e){return e.shown===!0&&(e.count??0)>1}function El(e,o,t){if(t<=1)return o;let r=Math.min(Math.max(o,0),t-1);return e==="prev"?(r-1+t)%t:(r+1)%t}function Jg({shape:e,placement:o,ref:t}){let r=Zg(e);return Pc("div",{ref:t,className:Xg(o),style:{color:"var(--overlay-fg)"},children:Vg.map(a=>Pc("button",{type:"button","data-hero-nav":a,"aria-label":Yg[a],className:r,children:Pc(gB,{name:"chevron-right",size:18,rounded:!0,style:a==="prev"?{rotate:"180deg"}:void 0})},a))})}import{jsx as ve,jsxs as Lc,Fragment as ir}from"react/jsx-runtime";var bB=mo;var yB="top-right",SB=["cards","dots","numbers","bar","squares","tabs"],CB=["cards","dots","numbers","bar","squares"],eb="cards",IV={cards:"Cards",dots:"Dots",numbers:"Numbers",bar:"Bar",squares:"Squares",tabs:"Tabs"},hV=!0;function Pl(e){return SB.includes(e)?e:eb}function ob(e){return CB.includes(e)?e:eb}function vB(e){return bB.includes(e)?e:yB}var tb={cards:"flex-col gap-2.5",dots:"flex-row items-center gap-2",numbers:"flex-col gap-2",bar:"h-0.5 w-[34%] max-w-[420px] gap-px overflow-hidden rounded-full",squares:"flex-col gap-0",tabs:"flex-row items-stretch w-full overflow-x-auto"};function rb(e,o){return Fl(vB(o),tb[Pl(e)])}function ab(e){return`flex ${tb[Pl(e)]}`}function nb(e){return e.shown!==!1&&(e.count??0)>1}function wB(e){return{name:e.dataset.slideName||"",process:e.dataset.slideProcess||"",video:e.dataset.slideMedia==="video"}}function kB(e,o){return e===o?!0:e.length!==o.length?!1:e.every((t,r)=>t.name===o[r].name&&t.process===o[r].process&&t.video===o[r].video)}function lb(e,o){let t=Array.from(o,wB);return kB(e,t)?e:t}function sb({slides:e,active:o,shape:t,placement:r,ref:a,tone:n="media",label:s}){let i=Pl(t),f=n==="surface"?{"--overlay-fg":"var(--fg)","--overlay-chrome":"var(--fg)","--overlay-scrim":"var(--site-surface-2)"}:void 0;return Lc("aside",{ref:a,"aria-label":s??"Featured slides",className:n==="surface"?ab(i):rb(i,r),style:{color:"var(--overlay-fg)",...f},children:[i==="cards"&&ve(TB,{slides:e,active:o}),i==="dots"&&ve(FB,{count:e.length,active:o}),i==="numbers"&&ve(EB,{count:e.length,active:o}),i==="bar"&&ve(LB,{count:e.length,active:o}),i==="squares"&&ve(PB,{count:e.length,active:o}),i==="tabs"&&ve(OB,{slides:e,active:o})]})}function TB({slides:e,active:o}){return Lc(ir,{children:[ve("span",{className:"mb-1 font-mono text-[length:var(--size-label,10px)] uppercase tracking-[0.28em] text-overlay-chrome/55",children:"Reel \xB7 pick a slide"}),e.map((t,r)=>{let a=r===o;return Lc("button",{type:"button","data-idx":r,"aria-pressed":a,"aria-label":`Go to ${t.name||`slide ${r+1}`}`,className:["group flex w-[170px] cursor-pointer flex-col items-start gap-0.5 border bg-overlay-scrim/55 px-3 py-2.5 text-left transition-all motion-reduce:transition-none max-[1100px]:w-[140px]",a?"border-accent bg-overlay-scrim/70":"border-overlay-chrome/15 hover:border-overlay-chrome/45 hover:bg-overlay-scrim/70"].join(" "),children:[ve("span",{className:["font-display text-[length:var(--size-body,13px)] font-medium uppercase leading-tight tracking-[-0.01em]",a?"text-accent":"text-overlay-fg"].join(" "),children:t.name||`Slide ${r+1}`}),ve("span",{className:"font-mono text-[length:var(--size-label,9px)] uppercase tracking-[0.2em] text-overlay-chrome/55",children:a?"\u25B6 Now playing":t.process||" "})]},r)})]})}function FB({count:e,active:o}){return ve(ir,{children:Array.from({length:e},(t,r)=>ve("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`h-2 cursor-pointer rounded-full transition-all motion-reduce:transition-none ${r===o?"w-5 bg-accent":"w-2 bg-overlay-chrome/45 hover:bg-overlay-chrome/70"}`},r))})}function EB({count:e,active:o}){return ve(ir,{children:Array.from({length:e},(t,r)=>ve("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`cursor-pointer font-mono text-[length:var(--size-label,11px)] leading-none tracking-[0.06em] transition-colors ${r===o?"text-overlay-fg":"text-overlay-chrome/45 hover:text-overlay-chrome/80"}`,children:String(r+1).padStart(2,"0")},r))})}function PB({count:e,active:o}){return ve(ir,{children:Array.from({length:e},(t,r)=>ve("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`grid h-8 w-8 cursor-pointer place-items-center border border-overlay-chrome/25 text-[length:var(--size-label,14px)] font-bold leading-none transition-colors motion-reduce:transition-none ${r===o?"bg-accent text-[color:var(--accent-ink)]":"bg-overlay-scrim/45 text-overlay-chrome/75 hover:text-overlay-chrome"}`,children:r+1},r))})}function LB({count:e,active:o}){return ve(ir,{children:Array.from({length:e},(t,r)=>ve("button",{type:"button","data-idx":r,"aria-pressed":r===o,"aria-label":`Go to slide ${r+1}`,className:`h-full flex-1 cursor-pointer transition-colors ${r<=o?"bg-overlay-fg":"bg-overlay-chrome/25"}`},r))})}function OB({slides:e,active:o}){return ve(ir,{children:e.map((t,r)=>{let a=r===o;return ve("button",{type:"button","data-idx":r,"aria-pressed":a,className:["flex min-w-[140px] flex-1 cursor-pointer items-end px-6 py-7 text-left transition-colors",r>0?"border-l border-overlay-chrome/15":"",a?"bg-overlay-scrim/70":"hover:bg-overlay-scrim/40"].join(" "),children:ve("span",{className:["font-heading3 text-[length:var(--size-headingSmall,24px)] font-medium uppercase leading-tight tracking-[-0.02em]",a?"text-overlay-fg":"text-overlay-chrome/55"].join(" "),children:t.name})},r)})})}import{useEffect as RB,useState as AB}from"react";var ib="(prefers-reduced-motion: reduce)";function BB(){return globalThis.window?.matchMedia?.(ib)?.matches??!1}function vV(){return BB()?"auto":"smooth"}function fb(){let[e,o]=AB(!1);return RB(()=>{let t=globalThis.window?.matchMedia?.(ib);if(!t||(o(t.matches),typeof t.addEventListener!="function"))return;let r=a=>o(a.matches);return t.addEventListener("change",r),()=>t.removeEventListener("change",r)},[]),e}var pa={accent:"#2563eb",accentTint:"#eff6ff",accentText:"#1d4ed8",appBg:"#f9fafb",previewBg:"#f3f4f6",panel:"#ffffff",fieldBg:"#ffffff",inputBorder:"#d1d5db",text:"#111827",text2:"#374151",muted:"#6b7280",line:"#e5e7eb",chipBg:"#f3f4f6",chipFg:"#6b7280",panelRadius:12,rowRadius:8,panelShadow:"0 1px 2px rgba(0,0,0,.05), 0 10px 30px rgba(0,0,0,.06)",topbarShadow:"0 1px 3px rgba(0,0,0,.06)",panelGap:10,leftWidth:288,rightWidth:308,topbarHeight:52,labelFont:"-apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif"};var cb={min:40,max:100,step:5,fallback:100,unit:"vh"};function Oc(e){return`${typeof e=="number"?e:cb.fallback}${cb.unit}`}function db(...e){return e.some(o=>typeof o=="number")}import{HEADER_TYPE as Rc,FOOTER_TYPE as _B}from"efficient-easel/draw";var DB=new Set(["Hero","HeroSingle","IntroBleed"]),ub={min:56,max:140,default:88},EV={min:0,max:120,step:2,default:32},pb=`var(--sf-header-h, ${ub.default}px)`,NB="--sf-header-set-h",PV="--sf-header-h",LV=`var(${NB}, ${ub.default}px)`,OV="sf-header-clearance",RV="sf-sticky-underheader";function MB(e){return e?.find(o=>o?.type&&o.type!==Rc)??null}function mb(e){let o=MB(e)?.type;return!o||!DB.has(o)}function AV(e){return!mb(e)}function BV(e){return!!e?.some(o=>o?.type===Rc)}function _V(e){return!e||e.length===0?!1:!e.some(o=>o?.type===Rc||o?.type===_B)}var HB=["auto","shared","own"],WB="auto",zB="topSpace",DV="data-top-space";function GB(e){return HB.includes(e)?e:WB}function UB(e,o){let t=GB(e?.props?.[zB]);return t==="own"?!0:t==="shared"?!1:mb(o)}function NV(e,o){return UB(e,o)?"own":null}var $B=40;function qB(e,o){return Math.abs(e)<=$B||Math.abs(e)<=Math.abs(o)?null:e<0?"next":"prev"}function xb(e,o,t,r){let a=qB(e,o);return a?El(a,t,r):t}function Ib(e){return(e.count??0)>1&&e.editing!==!0}function hb(e){return e.editing!==!0?!1:(e.slides??[])[e.shown??0]?.video===!0}function gb(e){return e.editing!==!0?!1:!(e.playing===!0&&e.controlShown===!0)}import{HERO_SLIDER_GOTO_EVENT as bb}from"efficient-easel/draw";var KB=`
|
|
7
|
+
.hero-ticker-pick { cursor: pointer; }
|
|
8
|
+
.hero-ticker-pick:hover {
|
|
9
|
+
outline: 2px solid color-mix(in srgb, ${pa.accent} 45%, transparent);
|
|
10
|
+
outline-offset: -2px;
|
|
11
|
+
}
|
|
12
|
+
.hero-ticker-pick[data-selected] {
|
|
13
|
+
outline: 2px solid ${pa.accent};
|
|
14
|
+
outline-offset: -2px;
|
|
15
|
+
}
|
|
16
|
+
`,VB="Play video",YB="Hold video",XB="flex h-7 cursor-pointer items-center gap-1.5 rounded-full border border-overlay-chrome/25 bg-overlay-scrim/80 px-[11px] font-mono text-[11px] leading-none tracking-[0.05em] text-overlay-fg",ZB=()=>l("item"),Ac=["","","","","",""],yb=new Map;function QB(e,o){let t=e?.ownerDocument?.defaultView;if(t)return t.addEventListener(bb,o),()=>t.removeEventListener(bb,o)}function lY({slides:e,alignment:o,textureOpacity:t,showTexture:r,textureColor:a,phoneUpDown:n,phoneSideways:s,autoplay:i,autoplayInterval:f,showTicker:u,tickerItems:p,heightDesktop:m,heightMobile:x,showPicker:h,pickerShape:b,pickerPlacement:C,showArrows:k,arrowsShape:v,arrowsPlacement:w,editing:g}){let y=db(m,x),E=y?"h-[var(--sf-hero-h-m)] min-[720px]:h-[var(--sf-hero-h-d)]":"h-screen min-h-[680px]",F=y?{"--sf-hero-h-d":Oc(m),"--sf-hero-h-m":Oc(x)}:void 0,L=(p??Ac.map(N=>({text:N}))).map(N=>N?.text?.trim()?N.text:g?ZB():"").filter(Boolean),B=u!==!1,O=Mo(null),M=Mo(null),re=Mo(null),H=Mo(null),z=Mo(null),A=jB(),oe=Mo(A),[Ae,Ke]=ma([]),[oo,He]=ma(0),Be=Mo(0),[We,De]=ma(!1),[Ce,he]=ma(!1),[xe,Ve]=ma(null),P=fb(),{selectedHeroId:le,select:X}=pl(),te=fr(()=>O.current?.querySelector(".hero-track")??null,[]),ae=fr((N,U=!1)=>{He(N),Be.current=N,yb.set(oe.current,N);let j=O.current?.querySelector(".hero-track");if(j)if(U){let se=j.style.transition;j.style.transition="none",j.style.transform=`translateX(-${Math.max(0,N)*100}%)`,j.offsetHeight,j.style.transition=se}else j.style.transform=`translateX(-${Math.max(0,N)*100}%)`},[]);cr(()=>{let N=O.current,U=N?.getAttribute("data-puck-component")||N?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||A;oe.current=U,Ve(U);let j=yb.get(U);typeof j=="number"&&(He(j),Be.current=j)},[]),cr(()=>{let N=te();if(!N)return;let U=()=>{Ke(se=>lb(se,N.querySelectorAll("[data-slide-name]")))};U();let j=new MutationObserver(U);return j.observe(N,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["data-slide-name","data-slide-process","data-slide-media"]}),()=>{j.disconnect()}},[te]),cr(()=>{if(!g)return;let N=U=>{let j=U.detail;if(!j||typeof j.index!="number")return;let se=O.current,Qe=se?.getAttribute("data-puck-component")||se?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||oe.current;j.id&&j.id!==Qe||ae(j.index,!0)};return QB(O.current,N)},[g,ae]);let ue=Ae.length,Ne=Math.min(Math.max(oo,0),Math.max(0,ue-1)),be=nb({shown:h,count:ue}),fo=Qg({shown:k,count:ue}),To=hb({editing:g,shown:Ne,slides:Ae}),zo=gb({editing:g,playing:Ce,controlShown:To}),Ee=Ib({count:ue,editing:g}),Go=Mo(null),at=Mo(null),nt=fr(N=>{if(Go.current=null,at.current=null,!Ee||N.touches.length!==1)return;let U=N.touches[0];Go.current={x:U.clientX,y:U.clientY},at.current={x:U.clientX,y:U.clientY}},[Ee]),ds=fr(N=>{if(!Go.current)return;if(N.touches.length!==1){Go.current=null;return}let U=N.touches[0];at.current={x:U.clientX,y:U.clientY}},[]),Aa=fr(()=>{let N=Go.current,U=at.current;if(Go.current=null,at.current=null,!Ee||!N||!U)return;let j=xb(U.x-N.x,U.y-N.y,Be.current,ue);j!==Be.current&&ae(j)},[Ee,ue,ae]);cr(()=>{if(g||!i||We||P||ue<=1)return;let N=Math.max(1,typeof f=="number"?f:6)*1e3,U=window.setTimeout(()=>ae((Ne+1)%ue),N);return()=>window.clearTimeout(U)},[g,i,f,We,P,ue,Ne,ae]),cr(()=>{let N=[M.current,re.current,H.current].filter(Boolean),U=N.map(se=>Cl(se)),j=se=>{let Qe=se.target,Uo=Qe.closest("[data-hero-nav]"),Ba=Uo??Qe.closest("[data-idx]");if(!Ba)return;se.stopPropagation(),se.preventDefault();let Rt=Uo?El(Uo.dataset.heroNav,Be.current,ue):Number(Ba.dataset.idx);Number.isNaN(Rt)||(ae(Rt,g),te()?.querySelectorAll("[data-slide-name]")[Rt]?.click())};return N.forEach(se=>se.addEventListener("click",j,{capture:!0})),()=>{U.forEach(se=>se?.()),N.forEach(se=>se.removeEventListener("click",j,{capture:!0}))}},[ue,ae,te,g]),cr(()=>{if(!g)return;let N=z.current;if(!N)return;let U=Cl(N),j=se=>{se.stopPropagation(),se.preventDefault();let Qe=O.current,Uo=Qe?.getAttribute("data-puck-component")||Qe?.closest("[data-puck-component]")?.getAttribute("data-puck-component")||oe.current;X(Uo)};return N.addEventListener("click",j,{capture:!0}),()=>{U?.(),N.removeEventListener("click",j,{capture:!0})}},[g,X,B,L.length]);let kr=fr(N=>{if(!N)return;let U=Cl(N),j=se=>{se.stopPropagation(),se.preventDefault(),he(Qe=>!Qe)};return N.addEventListener("click",j,{capture:!0}),()=>{U?.(),N.removeEventListener("click",j,{capture:!0})}},[]);return Co(Ec.Provider,{value:{alignment:o,textureOpacity:t,textureOn:r,textureColor:a,quietVideo:zo,phoneUpDown:n,phoneSideways:s},children:Ll("div",{ref:O,className:`relative mx-[var(--sf-hero-bleed-m,calc(50%_-_50vw))] w-[var(--sf-hero-bleed-w,100vw)] ${E} max-w-[var(--sf-hero-cap,none)] overflow-hidden`,style:F,onMouseEnter:()=>De(!0),onMouseLeave:()=>De(!1),onTouchStart:nt,onTouchMove:ds,onTouchEnd:Aa,children:[Co(e,{className:"hero-track flex h-full [&>*]:h-full [&>*]:min-w-full [&>*]:shrink-0 [&>*]:basis-full",style:{transform:`translateX(-${Ne*100}%)`,transition:P?"none":"transform 600ms cubic-bezier(.22,.61,.36,1)"},minEmptyHeight:400}),To&&Co("div",{ref:kr,"data-hero-video-control":Ce?"playing":"held",className:"sf-hero-video-control absolute left-6 z-[7]",style:{top:`calc(${pb} + 16px)`},children:Ll("button",{type:"button",className:XB,children:[Co("span",{"aria-hidden":"true",children:Ce?"\u275A\u275A":"\u25B6"}),l(Ce?YB:VB)]})}),(be||fo)&&Ll("div",{className:"pointer-events-none absolute inset-y-0 left-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] right-[var(--sf-hero-chrome-x,var(--sf-site-gutter,40px))] z-[6] mx-auto max-w-[var(--sf-hero-chrome-cap,calc(var(--sf-site-width,1600px)_-_var(--sf-site-gutter,40px)*2))]",children:[be&&Co(sb,{ref:M,slides:Ae,active:Ne,shape:ob(b),placement:C}),fo&&Co(Jg,{ref:H,shape:v,placement:w})]}),be&&Co("div",{ref:re,className:"sf-hero-phone-dots absolute bottom-[80px] left-1/2 z-[6] hidden -translate-x-1/2 items-center gap-2",children:Ae.map((N,U)=>Co("button",{type:"button","data-idx":U,"aria-label":`Go to slide ${U+1}`,className:`h-2 rounded-full transition-all motion-reduce:transition-none ${U===Ne?"w-5 bg-accent":"w-2 bg-white/45 hover:bg-white/70"}`},U))}),B&&L.length>0&&Ll("div",{ref:z,className:`sf-hero-ticker absolute inset-x-0 bottom-0 z-[5] border-t border-overlay-chrome/10 py-3.5${g?" hero-ticker-pick":""}`,"data-selected":g&&xe!=null&&le===xe?"":void 0,style:{background:"rgba(10,10,10,.55)"},children:[g&&Co("style",{children:KB}),Co(wg,{items:L,backdrop:"dark-media"})]})]})})}var l_="root:default-zone";function Sb({heroId:e}){let{appState:o,dispatch:t}=t_(p=>p),r=o.data.content??[],a=r.findIndex(p=>p.props.id===e),n=a>=0?r[a]:null,s=n?n.props.showTicker??!0:!0,i=o_(()=>{let p=n?.props.tickerItems;return Array.isArray(p)?p:Ac.map(m=>({text:m}))},[n]),f=e_();if(!n)return dr("p",{className:"sf-note",children:l("This ticker\u2019s hero is no longer on the page.")});let u=p=>t({type:"replace",destinationZone:l_,destinationIndex:a,data:{...n,props:{...n.props,...p}}});return JB("div",{children:[dr(Vt,{label:"Ticker"}),dr(r_,{label:l("Show ticker"),labelId:f,icon:dr(n_,{}),action:dr(a_,{checked:s,onChange:p=>u({showTicker:p}),ariaLabelledBy:f})}),dr(Vi,{label:Ki.label,icon:Ki.icon,items:i,placeholder:"item",onChange:p=>u({tickerItems:p}),markup:!0})]})}import{jsx as W,Fragment as $c,jsxs as vo}from"react/jsx-runtime";import{useContext as D_,useEffect as zc,useRef as N_,useState as $b}from"react";import{FieldSelect as M_,InspectorField as H_}from"efficient-easel/fields";import{SettingsField as W_}from"efficient-easel/panel";import{InspectorUpLevel as Nl}from"efficient-easel/chrome";import{StylesIcon as z_,TypeIcon as G_}from"efficient-easel/icons";import{useEasel as U_}from"efficient-easel/easel";import{TextPartPanel as $_}from"efficient-easel/copy";import{Tooltip as q_}from"efficient-shell/ui";import{jsx as Mc,jsxs as m_}from"react/jsx-runtime";import{COPY_CELLS as xa,CopyBox as x_}from"efficient-easel/copy";import{PaddingYIcon as I_,WidthIcon as h_}from"efficient-easel/icons";import{useSyncExternalStore as s_}from"react";import{decodePartId as i_}from"efficient-easel/draw";function ur(e,o){let t=lf(e);return t?.control==="textList"?o.rowKey===(t.itemKey??"text")?Wx(t,o.index):null:sf(e)?.[o.rowKey]??null}function Ol(e,o,t){let r=e.node.props,{key:a,row:n}=ao(e.propKey),s=n?SI(r,a,n,e.kind,o):bI(r,a,e.kind,o);return s?(t(e.zone,e.index,{...e.node,props:s}),!0):!1}var f_=["bold","italic","underline","strike","link","sup","sub"],c_=["bullet","number"];function Dc(e,o){return e?[...f_,...o?c_:[]]:[]}function Cb(e,o){let t=i_(e);if(!t?.propKey)return null;let{nodeId:r,propKey:a}=t,n=o.getItemById(r),s=o.getSelectorForId(r);if(!n||!s)return null;let{key:i,row:f}=ao(a),u=o.components[n.type]?.fields?.[i],p=f?ur(u,f):u,m=Xt(p);if(!m)return null;let x=n.props??{};if(f&&!(Array.isArray(x[i])&&f.index<x[i].length))return null;let h=f?jr(x[i],f):x[i];return{node:n,selector:s,propKey:a,kind:m,stored:h,offPage:kn(p)}}function vb(e,o){let t=Cb(e,o);if(!t||t.offPage)return null;let{text:r,hidden:a}=Zo(t.stored);if(a)return null;let n=jn(t.kind);return{partId:e,value:r,rules:Ht,multiline:n,offered:Dc(t.kind!=="plainText",n),write:s=>{let i=Cb(e,o);i&&Ol({node:i.node,propKey:i.propKey,kind:i.kind,zone:i.selector.zone,index:i.selector.index},s,o.replace)}}}function wb(e,o,t){return e?.isConnected&&e.getAttribute(no)===t?e:o?.querySelector(`[${no}="${d_(t)}"]`)??null}function d_(e){return e.replace(/["\\]/g,"\\$&")}function kb(e){let o=e.activeElement;return o?o.tagName==="IFRAME"||!!o.closest(".es-canvas"):!1}var Bc=null,_c=new Set;function u_(){return Bc}function Nc(e){if(e!==Bc){Bc=e;for(let o of _c)o()}}function p_(e){return _c.add(e),()=>{_c.delete(e)}}function Tb(){return s_(p_,u_,()=>null)}var g_=["left","center","right","justify"];function Hc(e,o,t,r={}){let a=Zr(e),n=(r.phone?e.sizePhone:void 0)??e.size??o.sizePx;return[r.phone?{...xa.fontSize,value:e.sizePhone,styleValue:Math.round(o.sizePx),onChange:s=>t({sizePhone:s??null})}:{...xa.fontSize,value:e.size,styleValue:Math.round(o.sizePx),onChange:s=>t({size:s??null})},{...xa.lineHeight,value:a.lineHeight,styleValue:o.lineRatio,onChange:s=>t(s===void 0?{lineHeight:null,line:null}:{lineHeight:s})},{...xa.letterSpacing,scale:n,value:a.letterSpacingEm,styleValue:o.letterEm,onChange:s=>t(s===void 0?{letterSpacing:null,letter:null}:{letterSpacing:s})},{...xa.paragraphSpacing,value:e.paragraphSpacing,styleValue:0,onChange:s=>t({paragraphSpacing:s??null})},{key:"padding",name:l("Padding"),icon:Mc(I_,{}),unit:"px",step:gf,shiftStep:10,min:If,max:hf,value:e.padding,styleValue:o.paddingPx,onChange:s=>t({padding:s??null})},{key:"width",name:l("Width"),icon:Mc(h_,{}),unit:"px",step:yf,shiftStep:100,min:bf,max:Jo,value:e.width,styleValue:o.widthPx,onChange:s=>t({width:s??null})}]}function Fb({text:e,onTextChange:o,multiline:t,markup:r=!0,styled:a=!0,style:n,base:s,setValue:i,colors:f,placeholder:u,ariaLabel:p,head:m,typedOnCanvas:x=!1}){let h=Hc(n,s,i),b=Dc(r,t);return m_("div",{className:"sf-part-textbox",children:[m,Mc(x_,{value:e,onChange:o,multiline:t,placeholder:u,ariaLabel:p,rules:Ht,tools:b,barShows:x?"focus":"always",colors:r?f:[],align:a?{value:n.align??s.align,allow:g_,onChange:C=>i({align:C})}:void 0,letterCase:a?{value:n.case==="capitalize"?"":n.case??"",onChange:C=>i({case:C||null})}:void 0,cells:a?h:void 0})]})}import{UiIcon as qb}from"efficient-easel/draw/client";import{jsx as Rl,Fragment as b_,jsxs as y_}from"react/jsx-runtime";import{Button as Eb,Dialog as S_}from"efficient-shell/ui";function Pb({styleName:e,onCancel:o,onConfirm:t}){return Rl(S_,{open:!0,onClose:o,role:"alertdialog",size:"sm",title:l("Update {style}?",{style:e}),footer:y_(b_,{children:[Rl(Eb,{variant:"secondary",onClick:o,children:l("Cancel")}),Rl(Eb,{variant:"primary",onClick:t,children:l("Update style")})]}),children:Rl("p",{children:l("Every text on the site that follows {style} changes to look like this one. This text\u2019s own changes are cleared, and it keeps following {style}.",{style:e})})})}import{ScreenDocumentContext as j_}from"efficient-easel/screen/components/ScreenDocumentContext";import{usePreviewDevice as K_}from"efficient-easel/draw/client";import{jsx as C_}from"react/jsx-runtime";import{createContext as v_,useContext as w_,useMemo as k_,useState as T_}from"react";var F_={partStyle:null,setPartStyle:()=>{}},Lb=v_(F_);function KY({children:e}){let[o,t]=T_(null),r=k_(()=>({partStyle:o,setPartStyle:t}),[o]);return C_(Lb.Provider,{value:r,children:e})}function Ob(){return w_(Lb)}import{TEXT_FIELD_MARKER as V_}from"efficient-easel/draw";import{useSectionOps as Y_}from"efficient-easel/screen/lib/puck/use-section-ops";var E_="#9ca3af";function P_(e){return Qa.map(o=>({key:o,name:pp[o],value:e?.[o]||E_}))}function Al(e){return P_(e).map(o=>({name:o.key,label:l(o.name),value:o.value}))}function Ab(e){let o={},t=e.ownerDocument,r=t?.defaultView;if(!t||!r)return o;let a=r.getComputedStyle(e),n=t.createElement("canvas").getContext("2d");for(let s of Qa){let i=Lo[s].replace(/^var\((--[\w-]+)\)$/,"$1"),f=a.getPropertyValue(i).trim();if(!f)continue;let u=Rb(f);!u&&n&&(n.fillStyle="#000000",n.fillStyle=f,u=Rb(String(n.fillStyle))),u&&(o[s]=u)}return o}function Rb(e){let o=e.trim().toLowerCase();if(/^#[0-9a-f]{6}$/.test(o))return o;if(/^#[0-9a-f]{3}$/.test(o))return`#${[...o.slice(1)].map(r=>r+r).join("")}`;let t=o.match(/^rgba?\(\s*(\d+)[\s,]+(\d+)[\s,]+(\d+)/);return t?`#${t.slice(1,4).map(r=>Math.min(255,Number(r)).toString(16).padStart(2,"0")).join("")}`:null}import{useEaselHost as X_}from"efficient-easel/screen/lib/host";function L_(e){let o=new Set([...Object.keys(on[e]??{}),...tn[e]??[]]);for(let[t,r]of Object.entries(Xs[e]??{}))r.verb==="snapshot"&&o.add(t);return[...o].sort()}var O_={CollectionCard:"product",FooterMenu:"menu",Gallery:"product",GalleryItem:"product",ProductGrid:"product",ProductHero:"product",SpecTable:"product",Events:"blog",FeaturedCover:"blog",LongRead:"blog",SubscribeBlogs:"blog"},Bb={product:"Synced from the product.",blog:"Synced from the blog post.",menu:"Synced from the site menu."},_b="Open",Db={product:{type:"storefront-editor:open-product",needsSlug:!0},blog:{type:"storefront-editor:open-post",needsSlug:!0},menu:{type:"storefront-editor:open-menus",needsSlug:!1}};function Ia(e){let o=e?.source?.slug;return typeof o=="string"&&o.length>0?o:void 0}function ha(e){return O_[e]??null}function Nb(e,o){let t=ha(e);return t&&L_(e).includes(o)?t:null}function Bl(e){let o=e?.menu?.id;return typeof o=="string"&&o.length>0?o:void 0}var _l="data-sf-spec-region";function oX(e,o,t){if(!e)return;let r=t[e];if(r)return{fontFamily:`var(--font-role-${e})`,fontSize:`var(--size-${r}, ${o.builtIn})`}}function pr(e){let o=/var\(--size-[A-Za-z]+, ?([0-9.]+px)\)/.exec(e);if(!o)throw new Error(`builtInOf: no --size-* fallback in ${e}`);return o[1]}function R_(e){return`@${e}`}function Wc(e,o){if(!o.startsWith("@"))return null;let t=o.slice(1);return t in e?t:null}function Mb(e,o){return o&&o in e?o:null}function A_(e,o){let t=o?.closest(`[${_l}]`)?.getAttribute(_l);return Mb(e,t??null)}var ga={tag:"text-[length:var(--size-label,13px)]",name:"text-[length:min(var(--size-headingMedium,48px),var(--sf-heading-max,9999px))]",namePhone:"max-[800px]:text-[length:min(var(--size-headingMedium,36px),var(--sf-heading-max,9999px))]",body:"text-[length:var(--size-body,14px)]",price:"text-[length:var(--size-label,15px)]",link:"text-[length:var(--size-label,14px)]"},B_={tag:{label:"Tag",follows:"Labels",builtIn:pr(ga.tag),writable:!0},name:{label:"Name",follows:"Heading 2",builtIn:pr(ga.name),writable:!0},body:{label:"Body",follows:"Body",builtIn:pr(ga.body),writable:!0},price:{label:"Price",follows:"Labels",builtIn:pr(ga.price),writable:!0},link:{label:"Link",follows:"Labels",builtIn:pr(ga.link),writable:!0}},Hb=B_;var __={number:{label:"Number",follows:"Labels",builtIn:"14px",writable:!0},question:{label:"Question",follows:"Body",builtIn:"18px",writable:!0},answer:{label:"Answer",follows:"Body",builtIn:"15px",writable:!0}},Wb=__;var iX=_l;var zb={rowLabel:{label:"Spec row name",follows:"Labels",builtIn:"14px"},rowValue:{label:"Spec row value",follows:"Labels",builtIn:"14px"},diagramTitle:{label:"Diagram title",follows:"Labels",builtIn:"12px"},diagramCallout:{label:"Diagram measurement",follows:"Labels",builtIn:"12px"},diagramStatLabel:{label:"Diagram stat name",follows:"Labels",builtIn:"11px"},diagramStatValue:{label:"Diagram stat value",follows:"Labels",builtIn:"11px"}};var Gb={SpecTable:zb,FAQ:Wb,Collections:Hb};function Ub(e){return e&&Object.hasOwn(Gb,e)?Gb[e]:null}function Uc(e){return e?l(e):null}function jb(e){return e.kind==="role"?_a[e.role]:e.kind==="custom"?"Custom":null}function Z_(e){let o=e.role;return o&&Fo.includes(o)?{kind:"role",role:o}:null}function Q_(e,o){if(!e)return{kind:"unread"};let{faceRole:t,base:r}=e;if(o[t]===r.fontKey)return{kind:"role",role:t};let a=Object.keys(o).filter(n=>o[n]===r.fontKey);return a.length===1?{kind:"role",role:a[0]}:{kind:"custom"}}function Gc(e,o,t,r){return Z_(el(e,o))??Q_(t,r)}function J_(e,o){if(!e.length)return null;let t=o(e[0]);return e.every(r=>o(r)===t)?t:null}var Dl="";function eD({face:e,base:o,onPick:t}){let r=e.kind==="role"?e.role:Dl,a=[{label:l("No style"),value:Dl},...Fo.map(n=>({label:l(_a[n]),value:n}))];return W(M_,{ariaLabel:l("Style"),value:r,options:a,inline:!0,onChange:n=>t(n===Dl?null:n),renderOption:n=>n.value===Dl?vo($c,{children:[W("span",{className:"es-fsel-label sf-part-style-keep",children:n.label}),W("span",{className:"sf-part-style-aside","aria-hidden":"true",children:l("Section\u2019s own")})]}):W("span",{className:"es-fsel-label",style:{fontFamily:`var(--font-role-${n.value})`},children:n.label}),renderValue:()=>W("span",{style:{fontFamily:o?.fontKey?`var(${At(o.fontKey)?.cssVar})`:void 0,fontWeight:o?.weight},children:Uc(jb(e))}),valueText:n=>Uc(jb(e))??n?.label??""})}function oD({sectionName:e,onBack:o,textEditor:t,styleRow:r,children:a}){return vo("div",{className:"sf-part-panel",children:[W(Nl,{inline:!0,name:l(e),onSelect:o}),t,r,a]})}function Ml({source:e,slug:o,menuId:t}){let r=X_(),a=Db[e],n=!a.needsSlug||!!o;return W("div",{className:"sf-note sf-note--source",children:vo("p",{className:"es-field-hint sf-hint-keep",children:[l(Bb[e]),n?vo($c,{children:[" ",W("button",{type:"button",className:"sf-source-open",onClick:()=>{a.type==="storefront-editor:open-menus"?r.send(a.type,{menuId:t??null}):o&&r.send(a.type,{slug:o})},children:l(_b)})]}):null]})})}var Kb=4,tD=120;function rD({region:e,sizePx:o,face:t,base:r,onFollowStyle:a,source:n,slug:s,onBack:i}){let f=e.follows;return vo("div",{className:"sf-note",children:[W("p",{children:W("strong",{children:l(e.label)})}),W("p",{children:o?l("Its size follows Site styles \u25B8 {follows} \u2014 {px}px right now.",{follows:l(f),px:Math.round(o)}):l("Its size follows Site styles \u25B8 {follows}.",{follows:l(f)})}),a?W($c,{children:W(W_,{label:l("Style"),icon:W(z_,{}),hint:l("Every {part} in this section follows it. The face and the size change; the letter case is the section\u2019s own and stays as it is.",{part:l(e.label).toLowerCase()}),children:W(eD,{face:t,base:r,onPick:a})})}):W("p",{className:"es-field-hint sf-hint-keep",children:l("Only the size follows a site style. This section sets its own font, weight and letter case.")}),n?W(Ml,{source:n,slug:s}):null,W(Nl,{inline:!0,name:l("Page"),onSelect:i})]})}function aD({onBack:e}){return vo("div",{className:"sf-note",children:[W("p",{children:W("strong",{children:l("This part is no longer here.")})}),W("p",{children:l("The section it belonged to has been changed or removed.")}),W(Nl,{inline:!0,name:l("Page"),onSelect:e})]})}function nD({onBack:e,partId:o,why:t}){return vo("div",{className:"sf-note",children:[W("p",{children:W("strong",{children:l("This part's settings did not open.")})}),W("p",{children:l("The words are still on your page and nothing has been lost. The editor could not work out which control belongs to them, which is a fault on our side. Go back and click the section to open its settings instead.")}),W("p",{className:"sf-note-detail",children:vo("code",{children:[o," \u2014 ",t]})}),W(Nl,{inline:!0,name:l("Page"),onSelect:e})]})}function Vb({nodeId:e,propKey:o,onBack:t,onEditStyle:r}){let{getItemById:a,getSelectorForId:n,config:s}=U_(D=>D),i=Y_(),f=Tb(),{partStyle:u}=Ob(),{fonts:p,textStyles:m}=$(),x=D_(j_),h=!x?.capabilities?.hasSiteTheme,{persist:b}=Wt({themeFromDocument:h,tokenRef:x?.tokenRef,siteId:x?.siteId??null}),C=tl({themeFromDocument:h,persist:b}),[k,v]=$b(!1),w=K_()==="mobile",g=N_(null),y=a(e),E=n(e),F=y?s.components[y.type]:void 0,{key:L,row:B}=ao(o),O=F?.fields?.[L],M=B?ur(O,B):O,re=Xn(e,o),H=y?.props??{},z=Xt(M),A=kn(M),oe=EI(M),Ae=y?ha(y.type):null,Ke=y?Nb(y.type,L):null,oo=B?jr(H[L],B):H[L],He=!!B&&!(Array.isArray(H[L])&&B.index<H[L].length);zc(()=>{kb(document)||g.current?.querySelector(".es-copy [contenteditable='true'], .es-copy textarea, .sf-copybox textarea, .sf-copybox input")?.focus()},[re]);let[Be,We]=$b(0);zc(()=>We(0),[re]);let De=!!y&&!He&&(!E||!M);zc(()=>{if(!De||Be>=Kb)return;let D=setTimeout(()=>We(we=>we+1),tD);return()=>clearTimeout(D)},[De,Be]);let Ce=De&&Be<Kb;if(!y||He)return W(aD,{onBack:t});let he=Ub(y.type),xe=he?Wc(he,o):null;if(he&&xe){let D=u?.partId===re?u:null,we=he[xe],co=we.writable===!0&&!!E,Tr=ps=>{E&&i.replaceComponent(E.zone,E.index,{...y,props:Xr(H,o,"role",ps)})};return W(rD,{region:we,sizePx:D?.base.sizePx??null,face:Gc(H,o,D,p),base:D?.base??null,onFollowStyle:co?Tr:void 0,source:Ae,slug:Ia(H),onBack:t})}if(!E||!M)return Ce?W("div",{className:"sf-note","aria-busy":"true"}):W(nD,{onBack:t,partId:re,why:E?"no field":"no selector"});let Ve=D=>{i.replaceComponent(E.zone,E.index,{...y,props:D})},P=D=>{if(Zo(D).hidden!==Zo(oo).hidden||!z){let we=B?ff(H,L,B,D):{...H,[L]:D};we&&Ve(we);return}Ol({node:y,propKey:o,kind:z,zone:E.zone,index:E.index},Zo(D).text,i.replaceComponent)},le=oo,X=u?.partId===re?u:null,te=X?.styleOwner,ae=te?a(te.owner):null,ue=te&&ae?n(te.owner):null,Ne=!!(te&&ae&&ue),be=Ne?ae.props??{}:H,fo=Ne?D=>i.replaceComponent(ue.zone,ue.index,{...ae,props:D}):Ve,To=Ne?te.kind:vl(y?.type,o),zo=el(be,To),Ee=[{partKey:To,face:Gc(be,To,X,p),sizeGroup:X?.sizeGroup??null,base:X?.base??sD,style:zo}],Go=J_(Ee,D=>D.sizeGroup),at=Al(X?.inks),nt=(D,we)=>{let co=be;for(let Tr of Ee)co=Xr(co,Tr.partKey,D,we);fo(co)},ds=D=>nt("role",D),Aa=D=>{let we=be;for(let co of Ee)for(let[Tr,ps]of Object.entries(D))we=Xr(we,co.partKey,Tr,ps??null);fo(we)},kr=z==="text"||z==="textarea",{text:N,hidden:U}=Zo(oo),j=M?.[V_]?.label??o,se=U?l("Show {label} on the slide",{label:l(j)}):l("Hide {label} on the slide",{label:l(j)}),Qe=vo("div",{className:"sf-field-head",children:[W(G_,{}),W("span",{className:"sf-field-label sf-field-label--inline",children:l(j)}),kr&&W(q_,{content:se,children:W("button",{type:"button",className:"sf-field-eye","aria-pressed":U,"aria-label":se,onClick:()=>P({text:N,hidden:!U}),children:U?W(qb,{name:"eye-off",size:14}):W(qb,{name:"eye",size:14})})})]}),Uo=!A&&oe,Ba=!!z&&(Tx(M)||A||U||!oe),Rt=Gc(be,To,X,p),us=Rt.kind==="role"?Rt.role:null,UC=Object.entries(zo).filter(([D,we])=>D!=="role"&&we!==void 0).length,$C=()=>{let D=be;for(let we of Ee){let co=we.style.role;D=GI(D,we.partKey),co&&(D=Xr(D,we.partKey,"role",co))}fo(D)},lt=Ef(us),qC=JI(Ee[0].style),jC=lt?et(C.saved,C.old).find(D=>D.id===lt)?.name??lt:"",KC=()=>{v(!1),lt&&(C.write(eh({saved:C.saved,old:C.old,styleId:lt,values:Pf(Ee[0].style)}),!0),$C())};return vo(oD,{sectionName:F?.label??y.type,onBack:t,textEditor:W("div",{ref:g,className:"sf-part-text",children:Ba?W(Fb,{text:N,onTextChange:D=>P(kr?{text:D,hidden:U}:D),multiline:jn(z),markup:z!=="plainText",styled:!1,style:Ee[0].style,base:Ee[0].base,setValue:Aa,colors:at,placeholder:Uc(gI(M))??void 0,ariaLabel:l(j),head:Qe,typedOnCanvas:f===re}):z?kr?Qe:null:W(H_,{field:M,name:o,value:le,onChange:P,id:`sf-part-${e}-${o}`})}),children:[Ke&&W(Ml,{source:Ke,slug:Ia(H),menuId:Bl(H)}),Uo&&W($_,{style:{value:us??"",options:[{value:"",label:l("No style"),description:l("Section\u2019s own")},...Fo.map(D=>({value:D,label:l(_a[D]),description:At(p[D])?.label}))],onChange:D=>ds(D||null),changed:UC>0,onEditStyles:r,onUpdateStyle:lt&&qC?()=>v(!0):void 0},font:{value:zo.font??"",styleValue:At(Ee[0].base.fontKey)?.label,options:to.map(D=>({label:D.label,value:D.key})),onChange:D=>nt("font",D||null)},italic:{value:zo.italic,styleValue:lD(m,us),onChange:D=>nt("italic",D??null)},cells:Hc(Ee[0].style,Ee[0].base,Aa,{phone:w}),align:{value:zo.align??"",styleValue:Ee[0].base.align,onChange:D=>nt("align",D||null)},letterCase:{value:zo.case??"",styleValue:Ee[0].base.case,onChange:D=>nt("case",D||null)}}),k&<&&W(Pb,{styleName:jC,onCancel:()=>v(!1),onConfirm:KC}),Uo&&Go===null&&W("p",{className:"es-field-hint sf-hint-keep",children:l("Fixed size \u2014 the site\u2019s Text setting doesn\u2019t resize this.")})]})}function lD(e,o){let t=Ef(o);return!t||!Array.isArray(e)?!1:e.find(r=>r?.id===t)?.values?.italic===!0}var sD={fontKey:"",sizePx:16,weight:400,lineRatio:1.4,letterEm:0,align:"left",case:"none",paddingPx:0,widthPx:Jo};import{jsx as so,jsxs as qc,Fragment as iD}from"react/jsx-runtime";import{useCallback as fD,useRef as cD,useState as ba}from"react";import{InspectorIconButton as dD}from"efficient-easel/chrome";import{PopupMenu as uD,PopupMenuItem as pD,PopupMenuLabel as Hl}from"efficient-shell/ui";import{CopyToPageIcon as mD}from"efficient-easel/icons";import{useEaselSession as xD}from"efficient-easel/screen/lib/session-context";import{cloneNodeWithFreshIds as ID}from"efficient-easel/screen/lib/puck/section-doc";import{FOOTER_TYPE as hD}from"efficient-easel/draw";function Yb({node:e,currentSlug:o,siteId:t,tokenRef:r,runAuthed:a,onNotify:n}){let[s,i]=ba(!1),[f,u]=ba(null),p=xD(),[m,x]=ba(!1),[h,b]=ba(null),C=cD(null),[k,v]=ba(null),w=fD(async()=>{if(p.usesBridgedToken&&!r.current){x(!0);return}try{u(await ze(p).pages.list(t?{siteId:t}:void 0))}catch{x(!0)}},[r,t,p]),g=()=>{if(s){i(!1);return}let F=C.current?.getBoundingClientRect();F&&v({top:F.bottom+6,right:Math.max(8,window.innerWidth-F.right)}),u(null),x(!1),w(),i(!0)},y=(f??[]).filter(F=>F.slug!==o),E=async F=>{if(h)return;b(F.slug);let L=ID(e),B=p.documentHooks?.storedNode?.(L)??L,O=ze(p).pages,M=await a(async()=>{let re=await O.load({id:F.id});if(!re)throw new Error(`Page "${F.slug}" no longer exists.`);let H=re.layout??{},z=Array.isArray(H.content)?[...H.content]:[],A=z.findIndex(oe=>oe?.type===hD);z.splice(A===-1?z.length:A,0,B),await O.save(F.id,{layout:{root:{},zones:{},...H,content:z}},{version:re.version,clientId:""})});b(null),i(!1),n?.(M?l("Duplicated to \u201C{name}\u201D",{name:F.label}):l("Couldn\u2019t duplicate the section \u2014 please retry"),M?"success":"error")};return qc(iD,{children:[so("span",{"data-menu-toggle":!0,style:{display:"contents"},children:so(dD,{buttonRef:C,label:l("Duplicate to another page"),hasPopup:"menu",expanded:s,onClick:g,children:so(mD,{size:15})})}),s&&k&&so(uD,{portal:!0,style:{top:k.top,right:k.right},onClose:()=>i(!1),children:qc("div",{role:"menu","aria-label":l("Duplicate to page"),children:[so(Hl,{children:l("Duplicate to page")}),m?so(Hl,{children:l("Couldn\u2019t load pages")}):f===null?so(Hl,{children:l("Loading\u2026")}):y.length===0?so(Hl,{children:l("No other pages")}):y.map(F=>qc(pD,{role:"menuitem",disabled:h!==null,onClick:()=>{E(F)},children:[so("span",{className:"min-w-0 flex-1 truncate",children:F.label}),h===F.slug?so("span",{className:"shrink-0 text-xs",children:l("Copying\u2026")}):F.draft&&so("span",{className:"shrink-0 text-xs",children:l("draft")})]},F.id))]})})]})}import{useScreenDocument as yN}from"efficient-easel/screen/components/ScreenDocumentContext";import{useSectionOps as SN}from"efficient-easel/screen/lib/puck/use-section-ops";import{SELECTION_MODE as CN}from"efficient-easel/screen/lib/screen-parts";import{usePreviewParts as vN}from"efficient-easel/draw/client";import{jsx as ya,jsxs as gD}from"react/jsx-runtime";import{SettingsDrill as bD}from"efficient-easel/panel";import{UiIcon as yD}from"efficient-easel/draw/client";var SD="Not shown on the page";function CD({part:e,onOpen:o}){return ya(bD,{name:l(e.label),preview:e.offPage?l(SD):e.preview||l("Empty"),offPage:e.offPage,status:e.hidden?ya("span",{className:"sf-entry-eye",role:"img","aria-label":l("Hidden on the page"),children:ya(yD,{name:"eye-off",size:14})}):void 0,onOpen:()=>o(e.key)})}function jc(e){return e.filter(o=>!o.identifier)}function Xb({parts:e,onOpen:o,heading:t=!0}){let r=jc(e);return r.length?gD("div",{className:"sf-entries",children:[t?ya("h3",{className:"sf-entries-head",children:l("Text")}):null,r.map(a=>ya(CD,{part:a,onOpen:o},a.key))]}):null}import{HEADER_TYPE as wN,ROOT_ZONE as My}from"efficient-easel/draw";import{HEADER_TYPE as je,FOOTER_TYPE as pe,newNodeId as vD}from"efficient-easel/draw";import{blockRuns as IZ}from"efficient-easel/screen/lib/puck/block-choice";function Wl(){return{type:je,props:{id:vD(je)}}}var Zb=[{type:"FooterLogo",label:"Logo"},{type:"FooterMenu",label:"Menu"},{type:"FooterText",label:"Text"},{type:"FooterEmailSignup",label:"Email Form"},{type:"FooterSocial",label:"Social Logos"},{type:"FooterGroup",label:"Footer Box"},{type:"FooterDivider",label:"Divider"}],wD=Zb.filter(e=>e.type!=="FooterLogo"&&e.type!=="FooterGroup"),kD="FooterGroup",Qb="blocks";function Jb(e){return e===pe?Zb:e===kD?wD:null}function zl(){let e=(o,t)=>({type:o,props:{id:`${o}-${crypto.randomUUID()}`,...t}});return[e("FooterLogo",{widthPct:100,align:"left",tagline:""}),e("FooterGroup",{direction:"vertical",align:"start",blocks:[e("FooterText",{text:"Join our email list",size:"md",tone:"default"}),e("FooterEmailSignup",{heading:"",placeholder:"Email address",buttonLabel:"Subscribe"})]})]}var _e="SiteHeader",de="SiteFooter",Kc="sections",gZ=[_e,de],mr=e=>e===_e||e===de,ey=e=>`${e}:${Kc}`;function oy(e,o,t=[]){return{type:e,props:{id:o,[Kc]:t}}}var TD=new Set(["Footer",_e,de]);function xr(e){let o=new Set,t=!1,r=e.filter(a=>{let n=a?.type??"";return n==="Header"?(t=!0,!1):TD.has(n)?o.has(n)?(t=!0,!1):(o.add(n),!0):!0});return t?r:e}function ty(e,o){return e.some(t=>t?.type===o.type)?e:o.type===_e?[o,...e]:[...e,o]}var ry={[_e]:{max:3,takes:["Flex","Ticker"]},[de]:{max:6,takes:["Flex","Prose","Logos","Divider"]}};function ay(e,o,t){if(!mr(e))return!0;let r=ry[e];return t<r.max&&r.takes.includes(o)}function ny(e,o){let t=o,r=t?.props?.id;if(r==null)return null;let a=e?.content;if(!Array.isArray(a))return null;for(let n of a){if(!mr(n?.type))continue;let s=n.props?.[Kc];if(!Array.isArray(s)||!s.some(f=>f?.props?.id===r))continue;let i=ry[n.type];return i.takes.includes(t?.type??"")?s.length>=i.max?{group:n.type,why:"full"}:null:{group:n.type,why:"type"}}return null}function ly(e){switch(e?.type){case _e:return l("Header \xB7 on every page");case de:return l("Footer \xB7 on every page");case je:return l("Header \xB7 on every page \xB7 old style");case pe:return l("Footer \xB7 on every page \xB7 old style");default:return null}}var sy=()=>l("Every page"),iy=()=>l("Changed on every page");function Gl(e,o){let t=ju(e,o);if(t)return t;let r=ny(e,o);if(!r)return null;let a=r.group===_e;return r.why==="type"?a?l("The header cannot take another one of these"):l("The footer cannot take another one of these"):a?l("The header holds at most 3 sections"):l("The footer holds at most 6 sections")}import{jsx as ql,Fragment as _D,jsxs as DD}from"react/jsx-runtime";import{useState as ND}from"react";import{createNode as MD,newId as HD}from"efficient-easel/data";import{useEasel as WD}from"efficient-easel/easel";import{Banner as zD,Button as Vc}from"efficient-shell/ui";import{useScreenDocument as GD}from"efficient-easel/screen/components/ScreenDocumentContext";var Ul="Flex",FD={FooterMenu:"MenuBlock",FooterEmailSignup:"EmailFormBlock",FooterSocial:"SocialLogosBlock"},ED=e=>{let{id:o,...t}=e;return t},fy=e=>typeof e=="string"?e:"",$l=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,cy={sm:12,md:13,lg:15},PD="md",dy=1.5,LD={size:13,lineHeight:dy,width:280},OD=14,RD=40,AD=e=>e==="center"||e==="right"?e:"left";function BD(e){let o={},t=[["padTop","sectionPaddingTop"],["padRight","sectionPaddingRight"],["padBottom","sectionPaddingBottom"],["padLeft","sectionPaddingLeft"]];for(let[r,a]of t){let n=$l(e[r]);n&&(o[a]=n)}return o}function uy(e,o){let t=e.props??{},r=FD[e.type];if(r)return[o(r,ED(t))];switch(e.type){case"FooterLogo":{let a=AD(t.align),n=o("LogoBlock",{...t.reverse?{reverse:t.reverse}:{},...typeof t.customColor=="string"&&t.customColor?{customColor:t.customColor}:{},heightPx:Math.round(cu*(($l(t.widthPct)??100)/100)),href:"/",align:a,...BD(t)}),s=fy(t.tagline).trim();return s?[n,o("Text",{text:s,tone:"dim",align:a,_partStyles:{text:{...LD}}})]:[n]}case"FooterText":{let a=typeof t.size=="string"&&t.size in cy?t.size:PD;return[o("Text",{text:fy(t.text),tone:typeof t.tone=="string"?t.tone:"default",_partStyles:{text:{size:cy[a],lineHeight:dy}}})]}case"FooterDivider":{let a=$l(t.thickness),n=$l(t.lengthPct);return[o("Divider",{...a!==void 0?{thickness:a}:{},...n!==void 0?{lengthPct:n}:{},...t.hideOnMobile===!0?{hideOnMobile:!0}:{}})]}case"FooterGroup":{let a=Array.isArray(t.blocks)?t.blocks:[];return[o(Ul,{direction:t.direction==="horizontal"?"row":"column",gap:Wr("FooterGroup",t.gap),align:t.align==="center"||t.align==="end"?t.align:"start",content:a.flatMap(n=>uy(n,o))})]}default:return[]}}function Sa(e,o,t){let r=e&&Array.isArray(e.props?.blocks)?e.props.blocks:[],a=u=>o(Ul,{direction:"row",wrap:!0,share:"equal",gap:RD,content:u}),n=[],s=[];for(let u of r){let p=uy(u,o);if(u.type==="FooterDivider"){s.length&&n.push(a(s)),s=[],n.push(...p);continue}p.length<=1?s.push(...p):s.push(o(Ul,{direction:"column",gap:OD,align:"stretch",content:p}))}(s.length||!n.length)&&n.push(a(s));let i=o(Ul,{direction:"column",content:[o("LegalLineBlock")]}),f=oy(de,t,[...n,i]);return{...f,props:{...f.props,...e?.props?.width==="full"?{fullWidth:!0}:{}}}}function py(){let{appState:e,dispatch:o,config:t}=WD(p=>p),{readOnly:r}=GD(),[a,n]=ND(!1),s=e.data.content;if(r||s.some(p=>p.type===de))return null;let i=s.find(p=>p.type===pe)??null,f=(p,m)=>MD(t,p,m),u=()=>{let p=Sa(i,f,HD(de));o({type:"setData",data:m=>({...m,content:[...ty(m.content,p)]}),recordHistory:!0}),n(!1)};return ql(zD,{tone:"info",title:l("This footer uses the old layout"),action:a?DD(_D,{children:[ql(Vc,{variant:"primary",size:"sm",onClick:u,children:l("Switch now")}),ql(Vc,{variant:"secondary",size:"sm",onClick:()=>n(!1),children:l("Cancel")})]}):ql(Vc,{variant:"secondary",size:"sm",onClick:()=>n(!0),children:l("Switch to Box footer")}),children:l("Build this footer out of Boxes and blocks, like a page: the same menus, signup, social links and logo, with the copyright as a Legal Line. Your current footer is kept.")})}import{jsx as rd}from"react/jsx-runtime";import{useLayoutEffect as aN,useMemo as Ry,useRef as nN,useState as od}from"react";import{useEasel as lN,useSelectedFields as sN}from"efficient-easel/easel";import{Inspector as iN,planFields as Ay}from"efficient-easel/fields";import{jsx as Ir}from"react/jsx-runtime";import{usePreviewDevice as UD}from"efficient-easel/draw/client";import{NoControlMark as my,noControlField as xy}from"efficient-easel/screen/lib/puck/panel-no-control-mark";var Yc=e=>l($t[e==="content"?"page":"full"]),Iy=e=>`${e} ${l("from Site styles")}`;function hy(){let{siteWidth:e,sectionBackgroundWidth:o,sectionContentWidth:t}=$();return{px:typeof e=="number"?e:ye.default,background:o??"full",content:t??"content"}}function gy(){try{return UD()==="mobile"}catch{return!1}}function $D({type:e,onChange:o}){let t=So(),r=hy(),a=gy(),n=_i(e,t).background;return Ir($n,{value:n??r.background,changed:n!==null,detail:Iy(Yc(r.background)),onChange:s=>o(s),onReset:()=>o(Gr),disabled:a})}function qD({type:e,onChange:o}){let t=So(),[,r]=Pn("contentMax"),a=hy(),n=gy(),s=_i(e,t),i=(s.background??a.background)==="content",f=s.content??a.content;return Ir(qn,{mode:i&&f==="full"?"content":f,px:s.contentMax??a.px,max:i?a.px:ye.max,changed:s.content!==null,detail:Iy(a.content==="full"?Yc("full"):`${Yc("content")} ${a.px}px`),fullClosed:i,disabled:n,hint:n?xI:i?uI:void 0,onMode:u=>{o(u),u==="full"&&r(null)},onPx:u=>{o("content"),r(u===a.px?null:u)},onReset:()=>{o(Gr),r(null)}})}function jD(e){return Qo({_gWidth:Oe(Un),backgroundWidth:{type:"custom",render:({onChange:o})=>Ir($D,{type:e,onChange:o})},contentWidth:{type:"custom",render:({onChange:o})=>Ir(qD,{type:e,onChange:o})},contentMax:{...xy({type:"custom",render:()=>Ir(my,{})},"always"),reachedBy:"contentWidth"},widthMode:{...xy({type:"custom",render:()=>Ir(my,{})},"always"),reachedBy:"backgroundWidth"}})}var by=Object.keys(jD(""));import{deviceField as KD,deviceMetaOf as Sy}from"efficient-easel/screen/lib/puck/device-fields";import{DESIGN_GROUPS as Zc,SETTINGS_BUCKETS as VD}from"efficient-easel/panel";import{BUCKET_KEY as Ze,DESIGN_GROUP_KEY as Ca}from"efficient-easel/screen/lib/puck/field-buckets";var va=VD;var YD="Editor only \u2014 not shown live",Qc={"Archive link":"Content",Article:"Content",Blocks:"Content","Blog posts":"Content","Browser mock":"Content",Button:"Content","Call to action":"Content","Car prompt":"Content","Card link":"Content",Cards:"Content","Claims bars":"Content","Contact info":"Content",Content:"Content","Content source":"Content",Contents:"Content",Filters:"Content","Show on a card":"Content",Footnote:"Content",Form:"Content",Founders:"Content","Gallery A":"Content","Gallery B":"Content","Gallery link":"Content",Header:"Content","Header link":"Content","Image caption":"Content","In this issue":"Content",Items:"Content","Kanban columns":"Content",Lead:"Content","Left panel":"Content",Link:"Content",Links:"Content",List:"Content","Message form":"Content",Metadata:"Content",Milestones:"Content","Mockup card":"Content","Newsletter panel":"Content",Offices:"Content",Options:"Content","Others gallery":"Content","Overlay button":"Content",Product:"Content","Product page":"Content",Products:"Content","Pull quote":"Content",Questions:"Content","Recent issues":"Content","Recent posts":"Content",Reviews:"Content","Right panel \xB7 actions":"Content","Right panel \xB7 choices":"Content","Right panel \xB7 form":"Content","Routing groups":"Content",Rows:"Content",Search:"Content",Section:"Content","Section header":"Content",Sections:"Content","Signup form":"Content","Source product":"Content","Stat & note":"Content",Stats:"Content","Submit button":"Content","Success state":"Content",Wheel:"Content",Terminal:"Content",Text:"Content","Text column":"Content","Timeline entries":"Content","Top row":"Content",Total:"Content","Trailing note":"Content","\u201COther\u201D reason":"Content","Background images":"Design",Gallery:"Content",Image:"Content","Image column":"Content",Images:"Content",Logo:"Content",Media:"Content","Background image":"Design",Color:"Design","Image tint":"Design",Style:"Design",Shape:"Design",Texture:"Design","Text style":"Design",Motion:"Animation",Anchor:"Anchor",Arrangement:"Layout","Auto-slide":"Layout",Bar:"Layout","Cell width":"Size",Behavior:"Layout",Controls:"Layout",Diagram:"Layout",[YD]:"Layout","Filters shown":"Layout","Slide picker":"Layout",Arrows:"Layout","On a phone":"Layout",Nudge:"Position","Stick to top":"Position","Image gallery":"Layout",Grid:"Layout",Layout:"Layout",Padding:"Layout",Price:"Layout",Preview:"Layout",Setup:"Layout","Show / hide elements":"Layout","Show in the buy box":"Layout",Visibility:"Layout",Width:"Size",Height:"Size"},Cy={"AlloyWheelsListing._gCards":"Design","ProductGrid._gCards":"Design"},vy={"Text._gSpacing":"Size","Heading._gSpacing":"Size"};function Xc(e,o,t){let r=`${e}.${o}`;return vy[r]??Cy[r]??Qc[t]}function wy(e){return e==="Animation"?[Ze.Animation]:[Ze.Design,Ca[e]]}function jl(...e){let o=[];for(let t of e)for(let r of Object.values(t)){let a=Sy(r),n=_o(a?a.inner:r),s=n?Qc[n.label]:void 0;if(s)for(let i of wy(s))o.includes(i)||o.push(i)}return o}var oQ=[...jl(Rn(),An("full"),Bn(),_n(),qi()),...Object.keys(Rn()),...Object.keys(An("full")),...Object.keys(Bn()),...Object.keys(_n()),...Object.keys(qi()),...by],tQ=[...jl(Fn()),...Object.keys(Fn())],rQ=[...jl(Ln()),...Object.keys(Ln())],aQ=[...jl(On()),...Object.keys(On())],XD=Object.keys(zx()),ZD=new Set(["cardImage","imageBackground"]),nQ=[...wy(Xc("ProductGrid","_gCards","Cards")??"Design"),...XD.filter(e=>e.startsWith("_g")||ZD.has(e))],lQ=Object.keys(Gx()),sQ=Object.keys(Ux({bottomDefault:!0})),QD={"ImageBlock._gStyle":"duplicated the Style bucket header above it (2026-09-04)","ButtonBlock._gStyle":"duplicated the Style bucket header above it (2026-09-04)","HeroGroup._gContent":"duplicated the Content bucket header above it (2026-09-04)","HeroGroup._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","Footer._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","FooterLogo._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterLogo._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterMenu._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterMenu._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterGroup._gLayout":"duplicated the Layout bucket header above it (2026-09-04)","FooterText._gContent":"duplicated the Content bucket header above it (2026-09-04)","FooterText._gStyle":"duplicated the Style bucket header above it (2026-09-04)","FooterSocial._gStyle":"duplicated the Style bucket header above it (born tabbed, 2026-09-17)","FooterSocial._gLayout":"duplicated the Layout bucket header above it (born tabbed, 2026-09-17)","MenuBlock._gContent":"duplicated the Content bucket header above it (born tabbed, H.1)","MenuBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.1)","EmailFormBlock._gContent":"duplicated the Content bucket header above it (born tabbed, H.1)","SocialLogosBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.1)","SocialLogosBlock._gLayout":"duplicated the Layout bucket header above it (born tabbed, H.1)","SearchBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.2)","CartBlock._gStyle":"duplicated the Style bucket header above it (born tabbed, H.2)","CountrySwitchBlock._gStyle":"duplicated the Style bucket header above it (born tabbed with its Show as, 2026-10-17)","Split._gContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gVehicleContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gWheelContent":"duplicated the Content bucket header above it (2026-09-04)","Gallery._gOthersContent":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gHeadCopy":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gLeftCopy":"duplicated the Content bucket header above it (2026-09-04)","Subscribe._gRightCopy":"duplicated the Content bucket header above it (2026-09-04)","CollectionCard._gContent":"duplicated the Content bucket header above it (A Card Sets Its Own Corners)","HeroSlide._gContent":"duplicated the Content bucket header above it (Hero Slide Tabs And Theme)","KeyFeatures._gContent":"duplicated the Content bucket header above it (66049)","KeyFeatures._gStyle":"duplicated the Style bucket header above it (66049)","ParagraphsA._gContent":"duplicated the Content bucket header above it (66049)","ParagraphsA._gStyle":"duplicated the Style bucket header above it (66049)","Chart._gContent":"duplicated the Content bucket header above it (66049)","Chart._gStyle":"duplicated the Style bucket header above it (66049)","Logos._gContent":"duplicated the Content bucket header above it (66049)","Logos._gStyle":"duplicated the Style bucket header above it (66049)","Mockup._gContent":"duplicated the Content bucket header above it (66049)","Mockup._gStyle":"duplicated the Style bucket header above it (66049)","Stats._gContent":"duplicated the Content bucket header above it (66049)","Stats._gStyle":"duplicated the Style bucket header above it (66049)","StatsParagraph._gContent":"duplicated the Content bucket header above it (66049)","StatsParagraph._gStyle":"duplicated the Style bucket header above it (66049)","Testimonials._gContent":"duplicated the Content bucket header above it (66049)","Testimonials._gStyle":"duplicated the Style bucket header above it (66049)","AppointmentBooking._gContent":"duplicated the Content bucket header above it (66050)","BookingBox._gContent":"duplicated the Content bucket header above it ([SPLIT] Booking Form Into Three Boxes) \u2014 the same fault its own section retired in 66050, one level down","FAQ._gContent":"duplicated the Content bucket header above it (66050, family sweep)","FAQ._gLayout":"duplicated the Layout bucket header above it (66050, family sweep)","Form._gContent":"duplicated the Content bucket header above it (66050)","ReviewForm._gContent":"duplicated the Content bucket header above it (66050)","SubmitBuild._gContent":"duplicated the Content bucket header above it (66050)","SubmitBox._gContent":"duplicated the Content bucket header above it ([SPLIT] SubmitBuild Keeps Its Two Columns) \u2014 the same fault its own section retired in 66050, one level down","CheckoutCTA._gContent":"duplicated the Content bucket header above it (66051)","CheckoutCTA._gLayout":"duplicated the Layout bucket header above it (66051)","DeliveryOptions._gContent":"duplicated the Content bucket header above it (66051)","DeliveryOptions._gLayout":"duplicated the Layout bucket header above it (66051)","OrderSummary._gContent":"duplicated the Content bucket header above it (66051)","OrderSummary._gLayout":"duplicated the Layout bucket header above it (66051)","PaymentBadges._gContent":"duplicated the Content bucket header above it (66051)","PaymentBadges._gLayout":"duplicated the Layout bucket header above it (66051)","Collections._gContent":"duplicated the Content bucket header above it (66052)","Collections._gLayout":"duplicated the Layout bucket header above it (66052)","DocMasthead._gContent":"duplicated the Content bucket header above it (66053)","Events._gContent":"duplicated the Content bucket header above it (66054)","Events._gLayout":"duplicated the Layout bucket header above it (66054)","FeaturedCover._gContent":"duplicated the Content bucket header above it (66054)","Series._gStyle":"duplicated the Style bucket header above it (66054)","Flex._gContent":"duplicated the Content bucket header above it (66055)","Flex._gLayout":"duplicated the Layout bucket header above it (66055)","SectionHeader._gContent":"duplicated the Content bucket header above it (66055)","Breadcrumb._gContent":"duplicated the Content bucket header above it (66056)","CategoryBar._gStyle":"duplicated the Style bucket header above it (66056)","Hero._gContent":"duplicated the Content bucket header above it (66056)","Hero._gStyle":"duplicated the Style bucket header above it (66056)","HeroSingle._gStyle":"duplicated the Style bucket header above it (66056)","IntroBleed._gContent":"duplicated the Content bucket header above it (66056)","IntroBleed._gLayout":"duplicated the Layout bucket header above it (66056)","BundleOffer._gLayout":"duplicated the Layout bucket header above it (66059)","ProcessSteps._gContent":"duplicated the Content bucket header above it (66059)","Banner._gContent":"duplicated the Content bucket header above it (66060.1)","Banner._gLayout":"duplicated the Layout bucket header above it, and governed no controls (66060.1)","Manifesto._gContent":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gHeadCopy":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gLeftCopy":"duplicated the Content bucket header above it (66060.1)","SubscribeBlogs._gRightCopy":"duplicated the Content bucket header above it (66060.1)","Ticker._gContent":"duplicated the Content bucket header above it (66060.1)","Ticker._gStyle":"duplicated the Style bucket header above it (66060.1)","Timeline._gContent":"duplicated the Content bucket header above it (66060.1)","TitleWithButtons._gContent":"duplicated the Content bucket header above it (66060.1)","TitleWithButtons._gStyle":"duplicated the Style bucket header above it (66060.1)","Cards._gContent":"duplicated the Content bucket header above it (66218)","Cards._gStyle":"duplicated the Style bucket header above it (66218)","Prose._gContent":"duplicated the Content bucket header above it (66218)","Reviews._gContent":"duplicated the Content bucket header above it (66218)","Reviews._gStyle":"duplicated the Style bucket header above it (66218)"},ky={Content:["Content"],Size:["Size"],Design:["Design","Style"],Layout:["Layout"],Position:["Position"],Anchor:["Anchor"],Animation:["Animation"]},Ty={_gAnchor:"repeated the Anchor group heading above it (two tabs, 11.0.0)"};{let e={...Rn(),...An("full"),...Bn(),..._n(),...Fn(),...Ln(),...On()};for(let o of Object.keys(Ty)){let t=_o(e[o]),r=t?Qc[t.label]:void 0;if(!t||t.level!==2||!r||!ky[r].includes(t.label))throw new Error(`INJECTED_RETIRED (lib/puck/field-groups.ts) lists "${o}", but no uniform builder makes a level-2 heading by that key whose label repeats its place's word. The heading was renamed, moved or removed and the row is stale \u2014 a list that quietly matches nothing is worse than no list.`)}}var JD=new Set(["_sContent","_sStyle","_sLayout","_sMedia"]),eN=new Map([[Ze.Design,"Content"],[Ze.Animation,"Animation"],...Zc.map(e=>[Ca[e],e])]);function Fy(e){let o=new Set([...Object.values(Ze),Ca.Content]);for(let[t,r]of Object.entries(e))if(!o.has(t)&&_o(r)?.level===1)return 1;return 2}function oN(e){let o=`${e}.`;return Object.keys(QD).filter(t=>t.startsWith(o)).map(t=>t.slice(o.length))}function tN(e,o){let t=Sy(e),r=Oe(o);return t?KD(t.tier,r):r}function rN(e,o){let t=_o(o);return t?e==="Content"||e==="Animation"?Lx(o,t.label):Ox(o):o}function yy(e){return e==="Design"?Zc:["Animation"]}function iQ(e,o){let t=[],r=new Set(oN(o)),a=new Set,n=!1,s=null;for(let[x,h]of Object.entries(e)){let b=_o(h);if(JD.has(x))throw new Error(`${o}.${x}: that key was a tab header until efficient-web-builder 11.0.0, when the panel moved to two tabs (Design \xB7 Animation). Its tab is gone, so the key may not come back. Give the heading a key of the section's own (\`_g\u2026\`), or open a Design group with its own key (\`_dDesign: section("Design")\`, \`_dLayout: section("Layout")\`).`);let C=eN.get(x);if(C!==void 0){if(b?.level!==1)throw new Error(`${o}.${x}: that key is reserved for the ${C} heading of the settings panel, but this field is ${b?`a level-${b.level} "${b.label}" header`:"not a header"}, so it cannot serve as one. Rename the section's own field.`);(x===Ze.Design||x===Ze.Animation)&&(n=!0),t.push(s={place:C,entries:[],adopted:!0});continue}if(!b){s||t.push(s={place:"Content",entries:[]}),s.entries.push([x,h]);continue}if(r.has(x)||x in Ty){let v=Xc(o,x,b.label);if(b.level!==2||!v||!ky[v].includes(b.label))throw new Error(`${o}.${x}: ${r.has(x)?"RETIRED":"INJECTED_RETIRED"} (lib/puck/field-groups.ts) lists this sub-heading as one whose name repeats the place it sits in, but it is a level-${b.level} "${b.label}" header in the ${v??"(unclassified)"} place. Only a level-2 header whose label is one of its place's words (PLACE_WORDS) may be retired \u2014 anything else is a heading a merchant reads for its own sake. Fix the row or drop it.`);r.has(x)&&a.add(x),t.push(s={place:v,entries:[]});continue}let k=Xc(o,x,b.label);if(!k)throw new Error(`${o}.${x}: the inspector group "${b.label}" is not classified in LABEL_GROUP (lib/puck/field-groups.ts), so there is no way to say which of ${[...Zc,"Animation"].join(" / ")} its controls belong under. Classify it \u2014 an unclassified group silently lands wherever it was declared, which is the whole bug.`);t.push(s={place:k,entries:[[x,b.level===2?h:tN(h,b.label)]]})}let i=new Set(Object.entries(e).filter(([,x])=>_o(x)).map(([x])=>x));for(let[x,h]of[["BLOCK_KEY_GROUP",vy],["KEY_GROUP",Cy]]){let b=Object.keys(h).filter(C=>C.startsWith(`${o}.`)).filter(C=>!i.has(C.slice(o.length+1)));if(b.length)throw new Error(`${o}: ${x} (lib/puck/field-groups.ts) lists ${JSON.stringify(b)}, but no fold header by that key is in this section's panel. Either the heading was renamed or removed and the row is stale, or the row names the wrong key \u2014 an override that quietly matches nothing is worse than no override.`)}let f=n?[]:[...r].filter(x=>!a.has(x));if(f.length)throw new Error(`${o}: RETIRED (lib/puck/field-groups.ts) lists ${JSON.stringify(f)}, but this section has no such fold header${f.length>1?"s":""}. Either the heading was renamed or removed and the row is stale, or the row names the wrong section \u2014 a list that quietly matches nothing is worse than no list.`);let u=new Set(t.filter(x=>x.entries.length>0).map(x=>x.place)),p=va.filter(x=>yy(x).some(h=>u.has(h))),m={};for(let x of p){m[Ze[x]]=Tn(x,x===p[0]?p:null);for(let h of yy(x)){if(!u.has(h))continue;let b=t.filter(k=>k.place===h),C=b.findIndex(k=>k.adopted);C>0&&b.unshift(...b.splice(C,1)),x==="Design"&&(m[Ca[h]]=Gi(h));for(let k of b)for(let[v,w]of k.entries)m[v]=rN(h,w)}}return m}function fQ(e){return Ze.Design in e?e:{[Ze.Design]:Tn("Design",null),[Ca.Content]:Gi("Content"),...e}}function cQ(e){return va.some(o=>Ze[o]in e)}function dQ(e){let o=va.filter(r=>Ze[r]in e);if(o.length===0)return e;let t={...e};for(let r of o)t[Ze[r]]=Tn(r,r===o[0]?o:null);return t}import{usePreviewDevice as fN}from"efficient-easel/draw/client";var Jc=" text",Ey="Text";function ed(e){let o=e.rows.filter(t=>t.shown);return o.length===0||o.length===1&&o[0].labelled}function Py(e){return e.filter(ed).map(o=>o.key)}function Ly(e,o){let t=null;for(let r of o){let a=e[r];!a||a.marker!==!0||typeof a.fold!="string"||(t??={...e},t[r]={...a,fold:!1})}return t??e}function Oy(e,o){if(e.size!==o.size)return!1;for(let t of e)if(!o.has(t))return!1;return!0}var td=new Map,Kl=new Set;function cN(e,o){let t=new Map;for(let a of e.querySelectorAll(".es-insp-row[data-field]"))t.set(a.getAttribute("data-field")??"",a);let r=[];for(let[a,n]of o)r.push({key:a,rows:n.map(s=>{let i=t.get(s),f=!!i&&[...i.children].some(p=>!p.hidden),u=i?.querySelector(".es-field-label, .es-list-label")?.textContent?.trim();return{shown:f,labelled:f&&!!u}})});return r}var dN=Object.fromEntries(va.map(e=>{let o=Fx[e];return[e,rd(o,{},e)]}));function wa({entries:e,entryCount:o=0,part:t=null}){let{id:r,fields:a,values:n,readOnly:s,onChange:i}=sN(),f=fN(),{appState:u,config:p}=lN(z=>z),m=Nh(f,p,u.data.content??[],u.ui.itemSelector),x=Gh(a,t),h=Dh(x,n,m),[b,C]=od(()=>new Set(Kl)),[k,v]=od(()=>new Set),w=nN(null),g=Ry(()=>{let z=new Map;for(let A of Ay(h).rows){if(!A.fold)continue;let oe=z.get(A.fold.key)??[];oe.push(A.name),z.set(A.fold.key,oe)}return z},[h]);aN(()=>{let z=w.current?.parentElement;if(!z)return;let A=new Set(Py(cN(z,g)));v(oe=>Oy(oe,A)?oe:A)});let y=Ry(()=>Ly(h,k),[h,k]),E={key:Jc,rows:Array.from({length:o},()=>({shown:!0,labelled:!0}))},F=ed(E)?void 0:{key:Jc,title:Ey},[L,B]=od(()=>td.get(r)),O=td.get(r),M=Ay(h).buckets,re=O&&M.includes(O)?O:L&&M.includes(L)?L:M[0],H=re===void 0||Ex(M,re)!==!0;return rd(iN,{fields:y,values:n,onChange:i,readOnly:s,showWhenContext:{...m,node:n},tab:re,onTab:z=>{td.set(r,z),B(z)},tabIcons:dN,idPrefix:r,ariaLabel:l("Section settings"),lead:H?e:null,leadFold:F,closedFolds:b,onFold:(z,A)=>{A?Kl.delete(z):Kl.add(z),C(new Set(Kl))},children:rd("span",{ref:w,hidden:!0})})}import{jsx as ad,jsxs as uN}from"react/jsx-runtime";import{InspectorUpLevel as By}from"efficient-easel/chrome";function _y({nodeId:e,part:o,sectionName:t,onUpToSection:r}){let{select:a}=ml();return uN("div",{children:[o!=="media"?ad(By,{inline:!0,name:l(ar.media),onSelect:()=>a(na(e,"media"))}):ad(By,{inline:!0,name:l(t),onSelect:r}),ad(wa,{part:o})]})}import{SettingsSwitch as kN}from"efficient-easel/panel";var Wy=CN,sd={kind:"header"},id={kind:"website"},zy={kind:"chat"},Gy={kind:"social"},ka="Part";function TN(e){return l("Part of {name}",{name:l(e)})}function FN(e,o,t){let r=e.describeNode(o);return{name:t,kindLabel:r?TN(r.label):l(ka)}}function EN(e){switch(e){case"Header":return{title:l("Header settings belong to a website."),own:l("Each website created from this template sets its own header afterwards.")};case"Appearance":return{title:l("Appearance settings belong to a website."),own:l("Each website created from this template sets its own appearance afterwards.")};case"Live chat":return{title:l("Live chat settings belong to a website."),own:l("Each website created from this template sets its own live chat afterwards.")};case"Social link":return{title:l("Social link settings belong to a website."),own:l("Each website created from this template sets its own social link afterwards.")};default:return{title:l("{what} settings belong to a website.",{what:e}),own:l("Each website created from this template sets its own {what} afterwards.",{what:e.toLowerCase()})}}}function Uy({what:e}){let o=EN(e);return Et("div",{className:"sf-note",children:[ee("p",{children:ee("strong",{children:o.title})}),Et("p",{children:[l("A template is a blueprint \u2014 it has no website of its own, so there is nothing here to change.")," ",o.own]})]})}function ld(e){let o=aa[e];return{name:ar[e],kindLabel:ka,icon:o,head:(t,r)=>{if(t.kind!==o)return null;let a=r.describeNode(t.nodeId);if(!a)return null;let n=Hy({name:l(bl(e,a.props)),tier:"part",of:l(a.label)},{partOf:({name:s})=>l("Part of {name}",{name:s})});return{name:n.name,kindLabel:n.kind}},render:(t,r)=>t.kind===o?ee(_y,{nodeId:t.nodeId,part:e,sectionName:r.describeNode(t.nodeId)?.label??"Hero",onUpToSection:()=>r.onSelectNode(t.nodeId)}):null}}var PN={header:{name:"Header",kindLabel:"Site settings",icon:"header",render:(e,o)=>{let t=o.hostPanels?.header;return t?ee(t,{placeholderMode:o.capabilities.placeholderFrames,tokenRef:o.tokenRef,siteId:o.siteId,websiteName:o.websiteName,onOpenWebsiteSettings:o.onOpenWebsiteSettings,onAuthExpired:()=>o.notifyParent("storefront-editor:auth-expired")}):null}},website:{name:"Appearance",kindLabel:"Site settings",icon:"website",render:(e,o)=>ee(rl,{themeFromDocument:!o.capabilities.hasSiteTheme,tokenRef:o.tokenRef,siteId:o.siteId,onNotify:o.onNotify})},chat:{name:"Live chat",kindLabel:"Site settings",icon:"chat",render:()=>ee(Xh,{})},social:{name:"Social links",kindLabel:"Site settings",icon:"social",render:()=>ee(tg,{unavailable:ee(Uy,{what:"Social link"})})},ticker:{name:ta,kindLabel:ka,icon:"ticker",head:(e,o)=>e.kind==="ticker"?FN(o,e.heroId,l(ta)):null,render:e=>ee(Sb,{heroId:e.kind==="ticker"?e.heroId:""})},heroMedia:ld("media"),heroImage:ld("image"),heroImage2:ld("image2"),part:{name:ka,kindLabel:ka,icon:"Text",head:(e,o)=>{if(e.kind!=="part")return null;let t=o.describeNode(e.nodeId);if(!t)return null;let{key:r,row:a}=ao(e.propKey),n=a?ur(t.fields[r],a):t.fields[r],s=CI(l(cf(Qn(n??{},r))),a),i=Hy({name:s,tier:"part",of:l(t.label)},{partOf:({name:f})=>l("Part of {name}",{name:f})});return{name:i.name,kindLabel:i.kind}},render:(e,o)=>e.kind==="part"?ee(Vb,{nodeId:e.nodeId,propKey:e.propKey,onBack:()=>o.onSelectNode(e.nodeId),onEditStyle:o.onOpenSiteStyles}):null}},LN=new Set(["header","website","chat"]);function ON(e,o){if(e==="puck")return null;let t=PN[e];return LN.has(e)&&!o.hasSiteSettings?{...t,kindLabel:"Not part of a template",render:()=>ee(Uy,{what:t.name})}:t}function $y({mode:e,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r,hideNodeActions:a=!1,onNotify:n,onHidePanel:s}){let{capabilities:i,tokenRef:f,notifyParent:u,currentSlug:p,siteId:m,runAuthed:x,readOnly:h}=yN(),{websiteName:b}=$(),C=SN({readOnly:h}),{select:k}=vN(),{selectedItem:v,getItemById:w,getSelectorForId:g,config:y,appState:E}=mN(te=>te),F=gN(y,v?{type:v.type,props:v.props}:null),L=v?LI(F??y.components[v.type]?.fields,v.props):[],B=te=>y.components[te]?.label??te,O=v?g(v.props.id):void 0,M=ON(e.kind,i),re=bN(),H={capabilities:i,tokenRef:f,hostPanels:re.chrome?.panels,describeNode:te=>{let ae=w(te);if(!ae)return null;let ue=y.components[ae.type];return{type:ae.type,label:ue?.label??ae.type,fields:ue?.fields??{},props:ae.props??{}}},siteId:m,websiteName:b??null,notifyParent:u,onNotify:n,onOpenWebsiteSettings:o,onOpenSiteStyles:t,onSelectNode:r},z=M?.head?.(e,H)??null,A=z?.name??(M?l(M.name):v?l(B(v.type)):l("Page settings")),oe=z?.kindLabel??(M?l(M.kindLabel):v?O&&O.zone!==My?l("Block"):l("Section"):l("Page")),Ae=M?M.icon:v?v.type:"page",Ke=M?null:v?y.components[v.type]?.fields??null:y.root?.fields??null,oo=Ke?Fy(Ke):2,He=e.kind==="puck"&&v?ha(v.type):null,Be=!!v&&!!O&&O.zone===My&&v.type!==pe&&v.type!==wN,We=Gl(E?.data,v),De=()=>{We||O&&C.duplicateComponent(O.zone,O.index)},Ce=()=>{O&&(C.removeComponent(O.zone,O.index),C.select(null))},he=v?y.components[v.type]?.defaultProps?.previewHover:void 0,xe=e.kind==="puck"&&!!v&&!!O&&he!==void 0,Ve=xe&&v.props.previewHover===!0,P=()=>{!v||!O||C.replaceComponent(O.zone,O.index,{...v,props:{...v.props,previewHover:!Ve}})},[le,X]=pN(Bf);return Et("div",{className:`es-sidepanel es-sidepanel--right sf-panel sf-panel--right${le||!(!M&&v)?"":" sf-hints-folded"}`,children:[ee(xN,{icon:ee(Tt,{type:Ae,size:15}),name:A,kind:oe,actions:!a&&e.kind==="puck"&&v&&v.type!==pe?Et(nd,{children:[ee(Dy,{label:l("Duplicate section"),title:We??void 0,disabled:We!==null,onClick:De,children:ee(IN,{size:15})}),Be&&i.hasSiteSettings&&ee(Yb,{node:v,currentSlug:p,siteId:m??void 0,tokenRef:f,runAuthed:x,onNotify:n}),ee(Dy,{label:l("Remove section"),danger:!0,onClick:Ce,children:ee(hN,{size:15})}),s?ee(Ny,{side:"right",onHide:s,divider:!0}):null]}):s?ee(Ny,{side:"right",onHide:s}):void 0}),xe&&Et("div",{className:"sf-preview-pin",children:[Et("div",{className:"sf-preview-pin-text",children:[ee("span",{className:"sf-preview-pin-label",children:l("Preview hover state")}),ee("span",{className:"sf-preview-pin-hint",children:l("not shown live")})]}),ee(kN,{checked:Ve,onChange:P,ariaLabel:l("Preview hover state")})]}),ee(rx,{tier:oo,children:ee("div",{className:"sf-insp-body es-insp-body sf-scroll",children:M?M.render(e,H):v?Et(nd,{children:[v.type===pe&&i.hasSiteSettings&&ee(py,{}),ee(wp,{children:ee(wa,{entries:ee(Xb,{parts:L,heading:!1,onOpen:te=>k(Xn(v.props.id,te))}),entryCount:jc(L).length})}),He&&ee(Ml,{source:He,slug:Ia(v?.props),menuId:Bl(v?.props)}),ee(_f,{shown:le,onChange:X})]}):ee(nd,{children:ee(wa,{})})})})]})}import{jsx as c,jsxs as S,Fragment as Yy}from"react/jsx-runtime";var Te={dark:"var(--sf-thumb-bar-dark)",soft:"var(--sf-thumb-bar-light)",accent:"var(--sf-thumb-accent)",tint:"var(--sf-thumb-accent-tint)",block:"var(--sf-thumb-block)",line:"var(--sf-thumb-border)",card:"var(--sf-thumb-card)"},fd="repeating-linear-gradient(135deg,var(--sf-thumb-hatch1) 0,var(--sf-thumb-hatch1) 5px,var(--sf-thumb-hatch2) 5px,var(--sf-thumb-hatch2) 10px)";function R({w:e,h:o,tone:t="dark",r=2,style:a}){return c("div",{style:{width:e,height:o,borderRadius:r,background:Te[t],flex:"none",...a}})}var RN={Hero:"hero",HeroSingle:"herosingle",IntroBleed:"intro",Collections:"collections",AlloyWheelsListing:"wheelslisting",CatalogFilterBar:"catalogfilterbar",ProductGrid:"productgrid",FitmentFinder:"fitmentfinder",Gallery:"gallery",GalleryB:"gallerygrid",SpecStrip:"specstrip",ProductHero:"producthero",SpecTable:"spectable",ProcessSteps:"processsteps",DetailRows:"detailrows",FitmentTable:"fitmenttable",CompatibleTyres:"compatibletyres",TyreSizes:"tyresizes",TyreFitment:"tyrefitment",EuTyreLabel:"eutyrelabel",RelatedProducts:"productgrid",BundleOffer:"bundleoffer",OrderSummary:"ordersummary",DeliveryOptions:"deliveryoptions",PaymentBadges:"paymentbadges",CheckoutCTA:"checkoutcta",Manifesto:"manifesto",ParagraphsA:"paragraphs",Prose:"prose",StatsParagraph:"statsparagraph",Chart:"chart",Mockup:"mockup",Footprint:"footprint",Timeline:"timeline",TimelineTrack:"timelinetrack",TitleWithButtons:"titlewithbuttons",Split:"split",Cards:"cards",FAQ:"faq",Testimonials:"testimonials",Masthead:"masthead",Breadcrumb:"breadcrumb",CategoryBar:"categorybar",FeaturedCover:"featuredcover",LongRead:"longread",Series:"series",Subscribe:"subscribe",SubscribeBlogs:"subscribe",Events:"events",DocMasthead:"docmasthead",DocTabs:"doctabs",DocBody:"docbody",DocMetaCards:"docmetacards",Banner:"banner",Stats:"stats",KeyFeatures:"keyfeatures",Logos:"logos",Ticker:"ticker",Countdown:"countdown",Reviews:"reviews",SubmitBuild:"submitbuild",ReviewForm:"reviewform",Form:"form",AppointmentBooking:"appointmentbooking",ContactRouting:"contact",ContactLocations:"contactlocations",Header:"header",Footer:"footer",SectionHeader:"sectionheader",Grid:"grid",Flex:"blanksection",Spacer:"spacer",Divider:"divider",CustomHTML:"customhtml",Heading:"heading",Text:"text",ImageBlock:"image",ButtonBlock:"button",MenuBlock:"menu",EmailFormBlock:"emailform",SocialLogosBlock:"sociallogos",LegalLineBlock:"legalline",SearchBlock:"search",CartBlock:"cart",CountrySwitchBlock:"countryswitch"},_={position:"absolute",inset:0},d={ink:"var(--sf-thumb-ink)",ink2:"var(--sf-thumb-ink-2)",inkSoft:"var(--sf-thumb-ink-soft)",inkSoft2:"var(--sf-thumb-ink-soft-2)",paper:"var(--sf-thumb-paper)",paper2:"var(--sf-thumb-paper-2)",warm:"var(--sf-thumb-warm)",rust:"var(--sf-thumb-rust)",onInk:"var(--sf-thumb-on-ink)",text:"var(--sf-thumb-scene-text)",muted:"var(--sf-thumb-scene-muted)",rule:"var(--sf-thumb-scene-rule)",mark1:"var(--sf-thumb-mark-1)",mark2:"var(--sf-thumb-mark-2)",card:"var(--sf-thumb-card)",scrim:"var(--sf-thumb-scrim)"},me=(e,o,t=160)=>({background:`linear-gradient(${t}deg,${e},${o})`});function Wo({size:e,style:o}){let t=Math.max(2,Math.round(e*.13)),r=(a,n,s)=>({position:"absolute",inset:a,background:n,borderRadius:t,...s?{mixBlendMode:s}:null});return S("span",{style:{position:"absolute",display:"block",width:e,height:e,...o},children:[c("span",{style:r("8% 26% 30% 6%",d.mark1)}),c("span",{style:r("26% 6% 8% 30%",d.mark2,"multiply")})]})}function Yl({children:e}){return c("span",{style:{fontSize:"4.64cqw",fontWeight:700,letterSpacing:"0.06em",textTransform:"uppercase",color:d.muted},children:e})}function qy({over:e,overTone:o,head:t,headSize:r=11.5,cta:a,ctaBg:n,ctaFg:s,tone:i}){return S(Yy,{children:[e&&c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:o},children:e}),c("span",{style:{fontSize:r,lineHeight:1.15,fontWeight:700,maxWidth:"78%",color:i},children:t}),a&&c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"4px 8px",borderRadius:2,marginTop:2,background:n,color:s},children:a})]})}function cd({name:e,price:o}){return S("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[c("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",...me(d.paper,d.paper2,150)},children:c(Wo,{size:34,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),c("span",{style:{fontSize:"3.65cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o})]})}function Ho({k:e,v:o,ok:t}){return S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6,padding:"3.5px 2px",borderBottom:`1px solid ${d.rule}`,fontSize:"3.98cqw",color:d.muted},children:[c("span",{children:e}),S("span",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("b",{style:{color:d.text,fontWeight:700},children:o}),t&&c("span",{style:{color:d.rust,fontWeight:700},children:"\u2713"})]})]})}function ie({title:e,children:o}){return S("div",{style:{..._,background:d.card,padding:"9px 10px",display:"flex",flexDirection:"column",gap:6},children:[c(Yl,{children:e}),o]})}function jy({size:e=14}){return c("span",{style:{width:e,height:e,borderRadius:"50%",flex:"none",display:"block",background:`linear-gradient(150deg,${d.mark1},${d.mark2})`}})}function dd({filled:e=5,size:o=6}){return S("span",{style:{fontSize:o,letterSpacing:"0.06em",color:d.rust,lineHeight:1},children:["\u2605".repeat(e),c("span",{style:{color:d.mark1},children:"\u2605".repeat(5-e)})]})}function Ta({n:e,label:o,tone:t=d.text}){return S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"8.16cqw",lineHeight:1,color:t},children:e}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",opacity:.62,color:t},children:o})]})}function Re({children:e,w:o}){return c("span",{style:{fontSize:"3.98cqw",lineHeight:1.45,color:d.muted,width:o,display:"block"},children:e})}function Vl({label:e,w:o="100%",filled:t}){return S("div",{style:{width:o,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:e}),c("span",{style:{height:9,borderRadius:3,border:`1px solid ${d.rule}`,background:t?d.paper:d.card}})]})}function Ky({children:e}){return c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.text,color:d.onInk},children:e})}var AN={wheelslisting:c(ie,{title:"All wheels",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Ridge 19","20\xD79 +12","$365"],["Ridge 29","18\xD79 +20","$410"],["Ridge 39","17\xD78 \u221210","$455"]].map(([e,o,t])=>S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c("span",{style:{width:20,height:15,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",...me(d.paper,d.paper2,150)},children:c(Wo,{size:12,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),c("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),c("b",{style:{fontSize:"4.31cqw",color:d.text,width:26,textAlign:"right"},children:t})]},e))})}),catalogfilterbar:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[S("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[["20 inch","6\xD7139.7","Black"].map(e=>S("span",{style:{fontSize:"3.65cqw",fontWeight:600,padding:"4px 7px",borderRadius:99,background:d.text,color:d.onInk,display:"flex",gap:4,alignItems:"center"},children:[e,c("span",{style:{opacity:.6},children:"\u2715"})]},e)),c("span",{style:{fontSize:"3.65cqw",color:d.rust,fontWeight:700},children:"Clear"})]}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"128 results"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted,border:`1px solid ${d.rule}`,borderRadius:3,padding:"3px 6px"},children:"Sort: Price \u25BE"})]})]}),fitmentfinder:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center",...me(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"5.31cqw",fontWeight:700,color:d.onInk},children:"Will it fit your rig?"}),S("div",{style:{display:"flex",gap:4},children:[["2021","Toyota","Hilux"].map(e=>S("span",{style:{flex:1,fontSize:"3.65cqw",color:d.text,background:d.card,borderRadius:3,padding:"5px 6px",display:"flex",justifyContent:"space-between"},children:[e," ",c("span",{style:{color:d.muted},children:"\u25BE"})]},e)),c("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.08em",background:d.warm,color:d.ink,borderRadius:3,padding:"5px 7px"},children:"GO"})]})]}),compatibletyres:c(ie,{title:"Tyres that suit",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Ridge Grappler","$489"],["Trail Grappler","$525"],["Terra Grappler","$438"]].map(([e,o])=>S("div",{style:{display:"flex",flexDirection:"column",gap:2,minWidth:0},children:[c("div",{style:{flex:1,minHeight:0,borderRadius:3,position:"relative",overflow:"hidden",background:d.ink},children:c("span",{style:{position:"absolute",left:"50%",top:"50%",transform:"translate(-50%,-50%)",width:26,height:26,borderRadius:"50%",border:`5px solid ${d.mark2}`,boxSizing:"border-box"}})}),c("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text,overflow:"hidden",whiteSpace:"nowrap",textOverflow:"ellipsis"},children:e}),c("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o})]},e))})}),tyresizes:c(ie,{title:"Available sizes",children:c("div",{style:{flex:1,display:"flex",flexWrap:"wrap",gap:4,alignContent:"center"},children:["265/65R17","285/70R17","265/60R18","275/55R20"].map((e,o)=>c("span",{style:{fontSize:"3.65cqw",fontWeight:600,padding:"5px 7px",borderRadius:3,border:`1px solid ${o===0?d.rust:d.rule}`,color:o===0?d.rust:d.text,background:o===0?d.paper:d.card},children:e},e))})}),tyrefitment:S(ie,{title:"Will it fit your car?",children:[c("div",{style:{display:"flex",gap:3},children:["Make","Model","Year","Trim"].map(e=>S("span",{style:{flex:1,minWidth:0,fontSize:"3.32cqw",color:d.muted,background:d.paper,border:`1px solid ${d.rule}`,borderRadius:3,padding:"4px 5px",display:"flex",justifyContent:"space-between",gap:2,overflow:"hidden",whiteSpace:"nowrap"},children:[e," ",c("span",{style:{color:d.muted},children:"\u25BE"})]},e))}),c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2,justifyContent:"center",minHeight:0},children:[["265/65R17","Fits",!0],["285/70R17","Not your size",!1]].map(([e,o,t])=>S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",gap:6,borderTop:`1px solid ${d.rule}`,paddingTop:3},children:[c("span",{style:{fontSize:"3.32cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.32cqw",fontWeight:t?700:400,letterSpacing:"0.06em",color:t?d.warm:d.muted},children:o})]},e))})]}),eutyrelabel:S("div",{style:{..._,background:d.card,padding:"9px 11px",display:"flex",gap:8,alignItems:"center"},children:[c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1.5},children:[["A","42%"],["B","56%"],["C","70%"],["D","84%"]].map(([e,o],t)=>S("div",{style:{display:"flex",alignItems:"center",gap:3},children:[c("span",{style:{width:o,height:6,borderRadius:"0 2px 2px 0",background:t===1?d.rust:d.mark1}}),c("span",{style:{fontSize:"3.32cqw",fontWeight:700,color:t===1?d.rust:d.muted},children:e})]},e))}),S("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:3,alignItems:"center"},children:[c("b",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.text},children:"72"}),c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",color:d.muted},children:"dB"})]})]}),bundleoffer:S("div",{style:{..._,background:d.paper,padding:"9px 11px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c(Yl,{children:"Buy it with"}),S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[[0,1].map(e=>c("span",{style:{width:26,height:22,borderRadius:3,flex:"none",position:"relative",overflow:"hidden",background:d.card},children:c(Wo,{size:17,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})},e)),c("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.muted},children:"+"}),S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:1},children:[c("span",{style:{fontSize:"3.65cqw",color:d.muted,textDecoration:"line-through"},children:"$1,024"}),c("b",{style:{fontSize:"6.02cqw",color:d.rust,lineHeight:1},children:"$899"})]})]})]}),checkoutcta:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,...me(d.ink,d.ink2)},children:[S("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",color:d.warm,fontWeight:700},children:"READY TO ORDER"}),c("b",{style:{fontSize:"6.63cqw",color:d.onInk,lineHeight:1},children:"$1,956"}),c("span",{style:{fontSize:"3.65cqw",color:d.onInk,opacity:.65},children:"4 items \xB7 fitted free"})]}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"6px 10px",borderRadius:2,background:d.warm,color:d.ink,flex:"none"},children:"CHECKOUT"})]}),contact:c(ie,{title:"Who do you need?",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Fitment help","the workshop"],["Order status","the front desk"],["Trade accounts","sales"]].map(([e,o])=>S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[c("b",{style:{flex:1,fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:o}),c("span",{style:{fontSize:"4.64cqw",color:d.rust,lineHeight:1},children:"\u203A"})]},e))})}),contactlocations:c(ie,{title:"Find us",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(2,1fr)",gap:5,minHeight:0},children:[["Brisbane","7 Kerry Rd","Mon\u2013Sat"],["Townsville","12 Enterprise","Mon\u2013Fri"]].map(([e,o,t])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.32cqw",color:d.muted},children:o}),c("span",{style:{fontSize:"3.32cqw",color:d.rust,fontWeight:700},children:t})]},e))})}),form:c(ie,{title:"Send us a message",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[S("div",{style:{display:"flex",gap:5},children:[c(Vl,{label:"Name"}),c(Vl,{label:"Email"})]}),c(Vl,{label:"Message",filled:!0}),c(Ky,{children:"SEND"})]})}),appointmentbooking:c(ie,{title:"Book a fitting",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("div",{style:{display:"flex",gap:3},children:["Mon","Tue","Wed","Thu"].map((e,o)=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.32cqw",fontWeight:o===2?700:500,padding:"4px 0",borderRadius:3,background:o===2?d.text:d.paper,color:o===2?d.onInk:d.muted},children:e},e))}),c("div",{style:{display:"flex",gap:3},children:["8:00","10:30","13:00","15:30"].map((e,o)=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.32cqw",padding:"4px 0",borderRadius:3,border:`1px solid ${o===1?d.rust:d.rule}`,color:o===1?d.rust:d.muted,background:o===3?d.paper:d.card,textDecoration:o===3?"line-through":"none"},children:e},e))})]})}),reviewform:c(ie,{title:"Leave a review",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c(dd,{filled:4,size:14}),c(Vl,{label:"Your review",filled:!0}),c(Ky,{children:"POST"})]})}),submitbuild:c(ie,{title:"Show us your build",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:3,border:`1px dashed ${d.mark1}`,borderRadius:5,background:d.paper},children:[c("span",{style:{fontSize:"6.63cqw",lineHeight:1,color:d.rust,fontWeight:300},children:"+"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Drop a photo of your rig"})]})}),masthead:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",justifyContent:"center",padding:"0 13px",gap:5},children:[c("span",{style:{height:1.5,background:d.text}}),c("span",{style:{fontSize:"7.65cqw",fontWeight:800,letterSpacing:"0.02em",color:d.text,lineHeight:1},children:"THE TRACK"}),S("div",{style:{display:"flex",justifyContent:"space-between",fontSize:"3.65cqw",letterSpacing:"0.1em",textTransform:"uppercase",color:d.muted},children:[c("span",{children:"Issue 14"}),c("span",{children:"Spring 2026"})]}),c("span",{style:{height:1,background:d.rule}})]}),featuredcover:S("div",{style:{..._,overflow:"hidden",...me(d.ink,d.inkSoft2)},children:[c(Wo,{size:92,style:{right:-18,top:-14}}),c("div",{style:{position:"absolute",inset:0,background:`linear-gradient(0deg,${d.scrim},transparent 62%)`}}),S("div",{style:{position:"absolute",left:12,right:12,bottom:11,display:"flex",flexDirection:"column",gap:3},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.warm},children:"FEATURE"}),c("span",{style:{fontSize:"6.16cqw",lineHeight:1.15,fontWeight:700,color:d.onInk},children:"Four days on the Madigan Line"})]})]}),longread:S("div",{style:{..._,background:d.card,padding:"10px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.14em",fontWeight:700,color:d.rust},children:"12 MIN READ"}),c("span",{style:{fontSize:"6.02cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"What breaks first, and why"}),c(Re,{children:"Every failure starts in the same place \u2014 not the rim, not"}),c(Re,{w:"62%",children:"the tyre, but the bolt nobody re-torqued."})]}),series:c(ie,{title:"Recurring columns",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[["Shed Notes","Monthly"],["Track Tested","Fortnightly"],["Reader Rigs","Weekly"]].map(([e,o])=>S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c("span",{style:{width:3,height:12,borderRadius:2,background:d.rust,flex:"none"}}),c("b",{style:{flex:1,fontSize:"4.64cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},e))})}),events:c(ie,{title:"Latest posts",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[[d.inkSoft,d.inkSoft2,"Madigan Line, four days"],[d.rust,d.warm,"Why offset beats width"]].map(([e,o,t])=>S("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("span",{style:{width:24,height:18,borderRadius:3,flex:"none",...me(e,o,150)}}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:t}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"4 Sep \xB7 Shed Notes"})]})]},t))})}),docmasthead:S("div",{style:{..._,background:d.card,padding:"12px 14px",display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.muted},children:"POLICY"}),c("span",{style:{fontSize:"6.49cqw",fontWeight:700,color:d.text,lineHeight:1.1},children:"Returns & refunds"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"Version 3 \xB7 Updated 4 Sep 2026"}),c("span",{style:{height:2,width:26,background:d.rust,borderRadius:1}})]}),docbody:c("div",{style:{..._,background:d.card,padding:"9px 13px",display:"flex",flexDirection:"column",gap:3,justifyContent:"center"},children:[["1.","You may return an unfitted wheel within 30 days."],["2.","Fitted wheels are covered by the structural warranty."],["3.","Freight on a change of mind is yours."]].map(([e,o])=>S("div",{style:{display:"flex",gap:5},children:[c("b",{style:{fontSize:"3.98cqw",color:d.rust,flex:"none"},children:e}),c(Re,{children:o})]},e))}),docmetacards:c(ie,{title:"At a glance",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(2,1fr)",gap:5,minHeight:0},children:[["30 days","To return"],["5 years","Structural"],["Free","Fitting"],["48 hrs","Dispatch"]].map(([e,o])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:"5px 6px",display:"flex",flexDirection:"column",gap:1},children:[c("b",{style:{fontSize:"5.31cqw",color:d.text,lineHeight:1},children:e}),c("span",{style:{fontSize:"3.32cqw",letterSpacing:"0.08em",textTransform:"uppercase",color:d.muted},children:o})]},o))})}),doctabs:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:0,padding:"0 11px"},children:[c("div",{style:{display:"flex",gap:0},children:["Returns","Warranty","Shipping"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,padding:"5px 8px",color:o===0?d.text:d.muted,background:o===0?d.paper:"transparent",borderRadius:"4px 4px 0 0",border:`1px solid ${o===0?d.rule:"transparent"}`,borderBottom:"none"},children:e},e))}),c("span",{style:{height:1,background:d.rule}}),S("div",{style:{paddingTop:6,display:"flex",flexDirection:"column",gap:2},children:[c(Re,{children:"Unfitted wheels come back within 30 days, no questions."}),c(Re,{w:"58%",children:"Freight on a change of mind is yours."})]})]}),paragraphs:S("div",{style:{..._,background:d.card,padding:"11px 14px",display:"flex",gap:10,alignItems:"center"},children:[c("span",{style:{flex:1,fontSize:"5.86cqw",lineHeight:1.2,fontWeight:700,color:d.text},children:"The right wheel is the boring one."}),S("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[c(Re,{children:"Forged, correctly offset, rated for what you actually"}),c(Re,{children:"carry. Everything else is a photograph."})]})]}),keyfeatures:c(ie,{title:"Key features",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:["Flow-formed barrel","1250 kg per corner","Hub-centric fit"].map(e=>S("div",{style:{display:"flex",gap:6,alignItems:"center"},children:[c("span",{style:{fontSize:"4.64cqw",color:d.rust,fontWeight:700,lineHeight:1},children:"\u2713"}),c("span",{style:{fontSize:"4.31cqw",color:d.text},children:e})]},e))})}),statsparagraph:S("div",{style:{..._,background:d.paper,padding:"10px 12px",display:"flex",gap:10,alignItems:"center"},children:[S("div",{style:{flex:"none",display:"flex",flexDirection:"column",gap:5},children:[c(Ta,{n:"27k",label:"Rigs"}),c(Ta,{n:"4.9",label:"Rating"})]}),S("div",{style:{flex:1,display:"flex",flexDirection:"column"},children:[c(Re,{children:"Twelve years of fitting the same three questions, and the"}),c(Re,{children:"answer has not moved: load rating, offset, then looks."})]})]}),chart:S(ie,{title:"Load vs weight",children:[c("div",{style:{flex:1,display:"flex",alignItems:"flex-end",gap:5,paddingBottom:2},children:[38,62,84,71,96].map((e,o)=>c("span",{style:{flex:1,height:`${e}%`,borderRadius:"2px 2px 0 0",background:o===4?d.rust:d.mark1}},o))}),c("span",{style:{height:1,background:d.rule,marginTop:-4}})]}),mockup:c("div",{style:{..._,overflow:"hidden",display:"flex",alignItems:"center",justifyContent:"center",...me(d.inkSoft,d.ink)},children:S("div",{style:{width:"72%",height:"74%",borderRadius:4,overflow:"hidden",background:d.card,boxShadow:`0 6px 14px ${d.scrim}`},children:[c("div",{style:{height:9,background:d.paper,display:"flex",alignItems:"center",gap:2,padding:"0 4px"},children:[0,1,2].map(e=>c("span",{style:{width:2.5,height:2.5,borderRadius:"50%",background:d.mark1}},e))}),S("div",{style:{padding:5,display:"flex",flexDirection:"column",gap:3},children:[c("span",{style:{height:4,width:"56%",borderRadius:1,background:d.mark2}}),c("span",{style:{height:14,borderRadius:2,...me(d.paper,d.paper2,150)}}),c("span",{style:{height:3,width:"38%",borderRadius:1,background:d.rust}})]})]})}),manifesto:c("div",{style:{..._,overflow:"hidden",display:"flex",alignItems:"center",padding:"0 16px",...me(d.ink,d.ink2)},children:S("span",{style:{fontSize:"6.63cqw",lineHeight:1.2,fontWeight:700,color:d.onInk},children:["We build for the ",c("span",{style:{color:d.warm},children:"last"})," ten percent of the track."]})}),timeline:c(ie,{title:"Our story",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center",gap:6,paddingLeft:4},children:[["1998","One shed, one lathe."],["2009","First forged rim."],["2024","27,000 rigs on."]].map(([e,o],t)=>S("div",{style:{display:"flex",gap:7,alignItems:"flex-start",position:"relative"},children:[t<2&&c("span",{style:{position:"absolute",left:3,top:8,bottom:-8,width:1,background:d.rule}}),c("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",marginTop:1,background:d.rust,zIndex:1}}),S("div",{style:{display:"flex",flexDirection:"column",gap:0,minWidth:0},children:[c("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),c(Re,{children:o})]})]},e))})}),timelinetrack:S("div",{style:{..._,padding:"0 12px",display:"flex",flexDirection:"column",gap:10,justifyContent:"center",...me(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"Milestones"}),S("div",{style:{position:"relative",display:"flex",justifyContent:"space-between",paddingTop:7},children:[c("span",{style:{position:"absolute",left:0,right:0,top:3,height:1,background:d.mark2,opacity:.55}}),["1998","2009","2016","2024"].map((e,o)=>S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:3,position:"relative"},children:[c("span",{style:{position:"absolute",top:-7,width:6,height:6,borderRadius:"50%",background:o===3?d.warm:d.mark1}}),c("span",{style:{fontSize:"4.31cqw",fontWeight:700,color:o===3?d.warm:d.onInk,opacity:o===3?1:.75},children:e})]},e))]})]}),footprint:S("div",{style:{..._,overflow:"hidden",...me(d.paper,d.paper2,150)},children:[c("span",{style:{position:"absolute",left:"8%",top:"18%",width:"62%",height:"64%",borderRadius:"48% 52% 40% 60% / 55% 45% 55% 45%",background:d.mark1,opacity:.75}}),c("span",{style:{position:"absolute",left:"52%",top:"52%",width:"34%",height:"34%",borderRadius:"58% 42% 55% 45% / 45% 58% 42% 55%",background:d.mark2,opacity:.55}}),[["26%","38%"],["44%","58%"],["62%","34%"]].map(([e,o])=>c("span",{style:{position:"absolute",left:e,top:o,width:7,height:7,borderRadius:"50% 50% 50% 0",transform:"rotate(-45deg)",background:d.rust}},e)),c("span",{style:{position:"absolute",left:11,bottom:9,fontSize:"4.64cqw",fontWeight:700,color:d.text},children:"3 fitting bays"})]}),banner:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"space-between",padding:"0 13px",gap:8,background:d.rust},children:[S("div",{style:{display:"flex",flexDirection:"column",gap:2},children:[c("b",{style:{fontSize:"6.02cqw",color:d.onInk},children:"End of season \xB7 20% off"}),c("span",{style:{fontSize:"3.98cqw",color:d.onInk,opacity:.8},children:"Fitted free, this month only."})]}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.onInk,color:d.text,flex:"none"},children:"SHOP"})]}),titlewithbuttons:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:7,padding:"0 14px",textAlign:"center"},children:[c("span",{style:{fontSize:"6.49cqw",lineHeight:1.15,fontWeight:700,color:d.text},children:"Not sure what fits?"}),S("div",{style:{display:"flex",gap:5},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,background:d.text,color:d.onInk},children:"FIND MY FIT"}),c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"5px 9px",borderRadius:2,border:`1px solid ${d.text}`,color:d.text},children:"CALL US"})]})]}),ticker:c("div",{style:{..._,overflow:"hidden",background:d.ink,display:"flex",alignItems:"center"},children:c("span",{style:{whiteSpace:"nowrap",fontSize:"6.29cqw",fontWeight:800,letterSpacing:"0.06em",color:d.warm,marginLeft:-14},children:"FREE FITTING \xB7 48HR DISPATCH \xB7 FREE FITTING \xB7 48HR DISPATCH"})}),countdown:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",alignItems:"center",gap:6,justifyContent:"center",...me(d.ink,d.ink2)},children:[c("span",{style:{fontSize:"3.65cqw",fontWeight:700,letterSpacing:"0.16em",textTransform:"uppercase",color:d.muted},children:"Back online in"}),c("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[["23","Hours"],["59","Minutes"],["48","Seconds"]].map(([e,o],t)=>S("div",{style:{display:"flex",alignItems:"flex-start",gap:5},children:[t>0&&c("b",{style:{fontSize:"9.5cqw",lineHeight:1,color:d.warm},children:":"}),S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:2},children:[c("b",{style:{fontSize:"11.5cqw",lineHeight:1,color:d.onInk,fontVariantNumeric:"tabular-nums"},children:e}),c("span",{style:{fontSize:"3.2cqw",letterSpacing:"0.1em",textTransform:"uppercase",opacity:.62,color:d.onInk},children:o})]})]},o))})]}),breadcrumb:c("div",{style:{..._,background:d.card,display:"flex",alignItems:"center",padding:"0 13px"},children:S("span",{style:{fontSize:"4.64cqw",color:d.muted},children:["Home ",c("span",{style:{opacity:.5},children:"/"})," Wheels ",c("span",{style:{opacity:.5},children:"/"})," ",c("span",{style:{color:d.text,fontWeight:700},children:"20 inch"})]})}),categorybar:S("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",justifyContent:"center",gap:7,padding:"0 11px"},children:[c("div",{style:{display:"flex",gap:5},children:["All","Wheels","Tyres","Lift"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,padding:"4px 7px",borderRadius:99,background:o===0?d.text:d.paper,color:o===0?d.onInk:d.muted},children:e},e))}),c("span",{style:{height:1,background:d.rule}})]}),intro:S("div",{style:{..._,overflow:"hidden",background:d.card},children:[c("div",{style:{position:"absolute",inset:0,...me(d.ink,d.inkSoft2)}}),c(Wo,{size:64,style:{right:8,top:6}}),S("div",{style:{position:"absolute",left:16,right:16,bottom:8,top:"46%",background:d.paper,borderRadius:6,padding:"8px 11px",display:"flex",flexDirection:"column",gap:2,boxShadow:`0 -4px 10px ${d.scrim}`},children:[c("span",{style:{fontSize:"5.69cqw",fontWeight:700,color:d.text},children:"Since 1998"}),c(Re,{children:"One shed, one lathe, one idea."}),c(Re,{w:"66%",children:"It turned out to be right."})]})]}),gallerygrid:c(ie,{title:"From our customers",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gridTemplateRows:"repeat(2,1fr)",gap:4,minHeight:0},children:[[d.rust,d.warm],[d.inkSoft,d.ink],[d.paper2,d.mark2],[d.ink,d.inkSoft2],[d.warm,d.paper2],[d.mark2,d.inkSoft]].map(([e,o],t)=>c("div",{style:{borderRadius:3,...me(e,o,140+t*22)}},t))})}),gallery:S(ie,{title:"Gallery",children:[c("div",{style:{display:"flex",gap:8,alignItems:"center",marginTop:-2},children:["On the truck","Studio","Close-ups"].map((e,o)=>c("span",{style:{fontSize:"3.98cqw",fontWeight:o===0?700:500,color:o===0?d.text:d.muted,borderBottom:`1.5px solid ${o===0?d.rust:"transparent"}`,paddingBottom:2},children:e},e))}),c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:4,minHeight:0},children:[[d.rust,d.warm],[d.ink,d.inkSoft],[d.paper2,d.mark2]].map(([e,o],t)=>c("div",{style:{borderRadius:3,...me(e,o,150+t*20)}},t))})]}),ordersummary:S(ie,{title:"Order summary",children:[S("div",{style:{display:"flex",gap:6,alignItems:"center",paddingBottom:4},children:[c("span",{style:{width:26,height:26,borderRadius:4,position:"relative",overflow:"hidden",flex:"none",...me(d.paper,d.paper2,150)},children:c(Wo,{size:18,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:"Ridge Grappler"}),c("span",{style:{fontSize:"3.65cqw",color:d.muted},children:"20\xD79 +12 \xB7 qty 4"})]})]}),S("div",{style:{flex:1,minHeight:0,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Subtotal",v:"$1,956"}),c(Ho,{k:"Fitting",v:"Free"}),S("div",{style:{display:"flex",justifyContent:"space-between",paddingTop:5,fontSize:"4.64cqw"},children:[c("b",{style:{color:d.text},children:"Total"}),c("b",{style:{color:d.text,fontSize:"6.02cqw"},children:"$1,956"})]})]})]}),deliveryoptions:c(ie,{title:"Delivery",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[["Standard","3\u20135 days","Free",!0],["Express","Next day","$19",!1]].map(([e,o,t,r])=>S("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"5px 6px",borderRadius:4,border:`1px solid ${r?d.rust:d.rule}`,background:r?d.paper:d.card},children:[c("span",{style:{width:7,height:7,borderRadius:"50%",flex:"none",border:`1.5px solid ${r?d.rust:d.mark1}`,background:r?d.rust:"transparent"}}),c("span",{style:{flex:1,fontSize:"4.31cqw",fontWeight:600,color:d.text},children:e}),c("span",{style:{fontSize:"3.98cqw",color:d.muted},children:o}),c("b",{style:{fontSize:"4.31cqw",color:d.text},children:t})]},e))})}),paymentbadges:S("div",{style:{..._,background:d.paper,display:"flex",flexDirection:"column",gap:8,justifyContent:"center",padding:"0 12px"},children:[c(Yl,{children:"Ways to pay"}),c("div",{style:{display:"flex",gap:5},children:[["VISA",d.ink],["MC",d.rust],["AMEX",d.inkSoft],["PayPal",d.ink2]].map(([e,o])=>c("span",{style:{flex:1,textAlign:"center",fontSize:"3.65cqw",fontWeight:800,letterSpacing:"0.06em",color:d.onInk,borderRadius:3,padding:"6px 0",background:o},children:e},e))})]}),stats:S("div",{style:{..._,padding:"10px 12px",display:"flex",flexDirection:"column",gap:9,justifyContent:"center",...me(d.ink,d.ink2)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"By the numbers"}),S("div",{style:{display:"flex",gap:8},children:[c(Ta,{n:"27k",label:"Rigs fitted",tone:d.onInk}),c(Ta,{n:"12",label:"Years",tone:d.onInk}),c(Ta,{n:"4.9",label:"Avg rating",tone:d.warm})]})]}),testimonials:S("div",{style:{..._,overflow:"hidden",background:d.paper,padding:"10px 11px",display:"flex",flexDirection:"column",gap:6,justifyContent:"center"},children:[c("span",{style:{position:"absolute",right:10,top:2,fontSize:"22.4cqw",lineHeight:1,fontWeight:800,color:d.rust,opacity:.16},children:"\u201D"}),c(dd,{filled:5,size:7}),c("span",{style:{position:"relative",fontSize:"5.31cqw",lineHeight:1.35,color:d.text,fontWeight:600},children:"\u201CTook them out to the Simpson and back. Not one chip.\u201D"}),S("div",{style:{display:"flex",alignItems:"center",gap:5},children:[c(jy,{}),c("span",{style:{fontSize:"3.98cqw",color:d.muted},children:"Dave M. \xB7 Hilux N80"})]})]}),reviews:S(ie,{title:"Reviews",children:[c("div",{style:{display:"flex",gap:4,height:22},children:[[d.inkSoft,d.inkSoft2],[d.rust,d.warm],[d.ink,d.inkSoft],[d.mark2,d.mark1]].map(([e,o],t)=>c("div",{style:{flex:1,borderRadius:3,...me(e,o,140+t*15)}},t))}),c("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:[["Dave M.",5,"Not one chip after the Simpson."],["Sara K.",4,"Fitted in an hour, no fuss."]].map(([e,o,t])=>S("div",{style:{display:"flex",gap:5,alignItems:"flex-start"},children:[c(jy,{size:12}),S("div",{style:{display:"flex",flexDirection:"column",gap:1,minWidth:0},children:[S("div",{style:{display:"flex",gap:4,alignItems:"center"},children:[c("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),c(dd,{filled:o})]}),c(Re,{children:t})]})]},e))})]}),logos:S("div",{style:{..._,display:"flex",flexDirection:"column",gap:9,justifyContent:"center",padding:"0 12px",...me(d.ink,d.inkSoft)},children:[c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.14em",textTransform:"uppercase",color:d.warm},children:"As fitted by"}),c("div",{style:{display:"grid",gridTemplateColumns:"repeat(4,1fr)",gap:8},children:["ARB","TJM","IRONMAN","OPPOSITE"].map(e=>c("span",{style:{textAlign:"center",fontSize:"4.31cqw",fontWeight:800,letterSpacing:"0.08em",color:d.onInk,opacity:.82},children:e},e))})]}),prose:S("div",{style:{..._,background:d.paper,padding:"11px 14px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"5.86cqw",fontWeight:700,color:d.text},children:"Why offset matters"}),S("div",{style:{display:"flex",gap:6},children:[c("span",{style:{fontSize:"15.3cqw",lineHeight:.78,fontWeight:800,color:d.rust,marginTop:1},children:"T"}),S("div",{style:{display:"flex",flexDirection:"column"},children:[c(Re,{children:"he number on the back of your wheel decides whether the"}),c(Re,{w:"76%",children:"tyre sits under the guard or an inch outside it."})]})]})]}),cards:c(ie,{title:"What you get",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Fitted free","In store, same day."],["5 yr cover","Structural, no fine print."],["Swap it","30 days, any reason."]].map(([e,o])=>S("div",{style:{border:`1px solid ${d.rule}`,borderRadius:4,padding:6,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{width:11,height:11,borderRadius:3,background:d.rust,opacity:.9}}),c("b",{style:{fontSize:"3.98cqw",color:d.text},children:e}),c(Re,{children:o})]},e))})}),faq:c(ie,{title:"Questions",children:c("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[["Will these fit my Hilux?",!0],["Do you fit them for me?",!1],["What if I pick wrong?",!1]].map(([e,o])=>S("div",{style:{borderBottom:`1px solid ${d.rule}`,padding:"4px 2px"},children:[S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6},children:[c("b",{style:{fontSize:"4.31cqw",color:d.text},children:e}),c("span",{style:{fontSize:"4.64cqw",color:d.muted,lineHeight:1},children:o?"\u2212":"+"})]}),o&&c(Re,{w:"90%",children:"Use the fitment finder \u2014 it reads your build, not just the model."})]},e))})}),hero:S("div",{style:{..._,overflow:"hidden",...me(d.ink,d.ink2)},children:[c("div",{style:{..._,background:`linear-gradient(90deg,${d.scrim},transparent 70%)`}}),c("div",{style:{position:"relative",height:"100%",display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",padding:"12px 14px",gap:5},children:c(qy,{over:"NEW \xB7 SUMMER",overTone:d.warm,head:"Built for the worst road you own",cta:"SHOP ALL",ctaBg:d.warm,ctaFg:d.ink,tone:d.onInk})}),c(Wo,{size:104,style:{right:-24,bottom:-30}})]}),herosingle:S("div",{style:{..._,display:"flex",background:d.paper,overflow:"hidden"},children:[c("div",{style:{flex:1,padding:12,display:"flex",flexDirection:"column",gap:5,justifyContent:"center"},children:c(qy,{over:"ALL-TERRAIN",overTone:d.rust,head:"Grip that does not ask",headSize:12,cta:"EXPLORE",ctaBg:d.text,ctaFg:d.onInk,tone:d.text})}),c("div",{style:{flex:1,position:"relative",...me(d.inkSoft,d.inkSoft2)},children:c(Wo,{size:74,style:{right:-14,top:16}})})]}),productgrid:c(ie,{title:"Best sellers",children:S("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[c(cd,{name:"Ridge 19",price:"$365"}),c(cd,{name:"Ridge 29",price:"$410"}),c(cd,{name:"Ridge 39",price:"$455"})]})}),collections:c(ie,{title:"Shop by category",children:c("div",{style:{flex:1,display:"grid",gridTemplateColumns:"repeat(3,1fr)",gap:5,minHeight:0},children:[["Wheels",d.inkSoft,d.inkSoft2],["Tyres",d.rust,d.warm],["Lift kits",d.ink,d.inkSoft]].map(([e,o,t])=>c("div",{style:{borderRadius:4,display:"flex",alignItems:"flex-end",padding:5,color:d.onInk,...me(o,t)},children:c("span",{style:{fontSize:"3.98cqw",fontWeight:700,letterSpacing:"0.04em"},children:e})},e))})}),producthero:S("div",{style:{..._,display:"flex",background:d.card,overflow:"hidden"},children:[c("div",{style:{flex:1.1,position:"relative",...me(d.paper,d.paper2,150)},children:c(Wo,{size:78,style:{left:"50%",top:"50%",transform:"translate(-50%,-50%)"}})}),S("div",{style:{flex:1,padding:"10px 10px 10px 8px",display:"flex",flexDirection:"column",gap:4,justifyContent:"center"},children:[c("span",{style:{fontSize:"3.65cqw",letterSpacing:"0.16em",fontWeight:700,color:d.rust},children:"NITTO"}),c("b",{style:{fontSize:"6.29cqw",color:d.text},children:"Ridge Grappler"}),c("span",{style:{fontSize:"6.63cqw",fontWeight:700,color:d.text},children:"$489"}),c("span",{style:{alignSelf:"flex-start",fontSize:"3.65cqw",letterSpacing:"0.12em",fontWeight:700,padding:"4px 8px",borderRadius:2,background:d.text,color:d.onInk},children:"ADD TO CART"})]})]}),spectable:c(ie,{title:"Specifications",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Diameter",v:'20"'}),c(Ho,{k:"Width",v:"9.0J"}),c(Ho,{k:"Offset",v:"+12"}),c(Ho,{k:"Load",v:"1250 kg"})]})}),fitmenttable:c(ie,{title:"Will it fit?",children:S("div",{style:{flex:1,display:"flex",flexDirection:"column",justifyContent:"center"},children:[c(Ho,{k:"Hilux N80",v:"20\xD79 +12",ok:!0}),c(Ho,{k:"Ranger PX3",v:"20\xD79 +12",ok:!0}),c(Ho,{k:"LC79",v:"17\xD78 \u221210",ok:!0})]})}),processsteps:S("div",{style:{..._,background:d.paper,padding:10,display:"flex",flexDirection:"column",gap:7,justifyContent:"center"},children:[c(Yl,{children:"How it works"}),c("div",{style:{display:"flex",gap:6},children:["Pick your rig","Match the fit","We fit it"].map((e,o)=>S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:2},children:[c("span",{style:{width:11,height:11,borderRadius:"50%",background:d.text,color:d.onInk,fontSize:"3.98cqw",display:"flex",alignItems:"center",justifyContent:"center",fontWeight:700},children:o+1}),c("span",{style:{fontSize:"3.98cqw",color:d.text,fontWeight:600},children:e})]},e))})]}),detailrows:c("div",{style:{..._,background:d.card,display:"flex",flexDirection:"column",overflow:"hidden"},children:[["Forged, not cast","Half the weight, twice the road.",!1],["Fits your load","Rated to 1250 kg a corner.",!0]].map(([e,o,t])=>{let r=c("div",{style:{flex:1,...me(t?d.rust:d.inkSoft,t?d.warm:d.inkSoft2)}},"art"),a=S("div",{style:{flex:1.1,padding:8,display:"flex",flexDirection:"column",gap:2,justifyContent:"center"},children:[c("b",{style:{fontSize:"4.64cqw",color:d.text},children:e}),c("span",{style:{fontSize:"3.98cqw",color:d.muted,lineHeight:1.3},children:o})]},"tx");return c("div",{style:{flex:1,display:"flex",minHeight:0},children:t?[a,r]:[r,a]},e)})}),specstrip:c("div",{style:{..._,background:d.ink,color:d.onInk,display:"flex",alignItems:"center",justifyContent:"space-around",padding:"0 8px"},children:[["5 yr","Warranty"],["Free","Fitting"],["48 hr","Dispatch"]].map(([e,o])=>S("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:1},children:[c("b",{style:{fontSize:"5.69cqw",letterSpacing:"0.02em"},children:e}),c("span",{style:{fontSize:"3.65cqw",color:d.mark2,letterSpacing:"0.1em",textTransform:"uppercase"},children:o})]},o))})},Vy={subscribe:S("div",{style:{..._,padding:13,display:"flex",flexDirection:"column"},children:[S("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",marginBottom:8},children:[S("div",{style:{display:"flex",alignItems:"center",gap:6},children:[c(R,{w:8,h:8,r:2,tone:"accent"}),c(R,{w:38,h:7,r:3,tone:"dark"}),c(R,{w:16,h:7,r:3,tone:"accent"})]}),c(R,{w:38,h:4,r:2,tone:"soft"})]}),c("div",{style:{height:1,background:Te.line,marginBottom:10}}),S("div",{style:{flex:1,display:"flex",gap:10,border:`1px solid ${Te.line}`,borderRadius:7,padding:10},children:[S("div",{style:{flex:1.1,display:"flex",flexDirection:"column",justifyContent:"center",gap:5},children:[c(R,{w:"46%",h:3,r:2,tone:"accent"}),c(R,{w:"84%",h:8,r:4,tone:"dark"}),c(R,{w:"56%",h:8,r:4,tone:"accent"}),c(R,{w:"96%",h:3,r:2,tone:"soft",style:{marginTop:2}}),S("div",{style:{display:"flex",gap:5,marginTop:4},children:[c("div",{style:{flex:1,height:13,borderRadius:5,border:`1px solid ${Te.line}`,background:Te.block}}),c(R,{w:34,h:13,r:5,tone:"accent"})]})]}),S("div",{style:{flex:1,background:Te.block,borderRadius:6,padding:8,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"52%",h:4,r:2,tone:"accent"}),Array.from({length:3}).map((e,o)=>S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:6,borderTop:o?`1px solid ${Te.line}`:"none",paddingTop:o?4:0},children:[c(R,{w:34,h:4,r:2,tone:"dark"}),c(R,{w:16,h:3,r:2,tone:"soft"})]},o))]})]})]}),split:S("div",{style:{..._,display:"flex"},children:[c("div",{style:{width:"44%",background:fd}}),S("div",{style:{flex:1,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"44%",h:5,r:3,tone:"accent"}),c(R,{w:"88%",h:8,r:4,tone:"dark"}),c(R,{w:"70%",h:8,r:4,tone:"dark"}),c(R,{w:"94%",h:5,r:2,tone:"soft",style:{marginTop:2}}),c(R,{w:"80%",h:5,r:2,tone:"soft"}),c(R,{w:"40%",h:13,r:6,tone:"accent",style:{marginTop:5}})]})]}),sectionheader:S(Yy,{children:[c(R,{w:"18%",h:6,r:3,tone:"accent",style:{position:"absolute",top:15,right:16}}),S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:10},children:[S("div",{style:{display:"flex",alignItems:"center",gap:9},children:[c(R,{w:16,h:16,r:4,tone:"accent"}),c(R,{w:"20%",h:9,r:4,tone:"dark"})]}),c(R,{w:"62%",h:10,r:5,tone:"dark"}),c(R,{w:"42%",h:6,r:3,tone:"soft"})]})]}),header:c("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",justifyContent:"center"},children:S("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[c(R,{w:"22%",h:12,r:4,tone:"dark"}),S("div",{style:{display:"flex",gap:9,alignItems:"center"},children:[c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:26,h:6,r:3,tone:"soft"}),c(R,{w:18,h:14,r:5,tone:"accent"})]})]})}),footer:S("div",{style:{..._,padding:15,display:"flex",flexDirection:"column",justifyContent:"center",gap:12},children:[S("div",{style:{display:"flex",gap:14},children:[S("div",{style:{flex:1.4,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"60%",h:9,r:4,tone:"dark"}),c(R,{w:"90%",h:5,r:2,tone:"soft"}),c(R,{w:"70%",h:5,r:2,tone:"soft"})]}),[0,1].map(e=>S("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[c(R,{w:"50%",h:6,r:3,tone:"dark"}),c(R,{w:"80%",h:5,r:2,tone:"soft"}),c(R,{w:"66%",h:5,r:2,tone:"soft"})]},e))]}),c("div",{style:{height:1,background:Te.line}}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c(R,{w:"30%",h:5,r:2,tone:"soft"}),c(R,{w:"16%",h:5,r:2,tone:"soft"})]})]}),grid:c("div",{style:{..._,padding:14,display:"grid",gridTemplateColumns:"1fr 1fr",gridTemplateRows:"1fr 1fr",gap:9},children:Array.from({length:4}).map((e,o)=>c("div",{style:{borderRadius:6,background:Te.block}},o))}),blanksection:c("div",{style:{..._,padding:14,display:"flex"},children:S("div",{style:{flex:1,border:`1px dashed ${Te.line}`,borderRadius:7,display:"flex",alignItems:"center",justifyContent:"center",position:"relative"},children:[c(R,{w:14,h:2,r:1,tone:"tint"}),c(R,{w:2,h:14,r:1,tone:"tint",style:{position:"absolute"}})]})}),spacer:S("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:16,h:22,r:3,tone:"block",style:{alignSelf:"center"}}),c(R,{w:"100%",h:6,r:3,tone:"soft"})]}),divider:c("div",{style:{..._,padding:14,display:"flex",alignItems:"center"},children:c(R,{w:"100%",h:3,r:2,tone:"dark"})}),customhtml:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:8,background:fd},children:[c(R,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(-14deg)"}}),c(R,{w:16,h:10,r:3,tone:"accent"}),c(R,{w:5,h:16,r:2,tone:"dark",style:{transform:"skewX(14deg)"}})]}),heading:c("div",{style:{..._,padding:14,display:"flex",alignItems:"center"},children:c(R,{w:"64%",h:13,r:4,tone:"dark"})}),text:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:"96%",h:6,r:3,tone:"soft"}),c(R,{w:"100%",h:6,r:3,tone:"soft"}),c(R,{w:"58%",h:6,r:3,tone:"soft"})]}),image:c("div",{style:{position:"absolute",inset:14,borderRadius:7,background:fd}}),button:c("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center"},children:c(R,{w:"34%",h:16,r:8,tone:"accent"})}),menu:S("div",{style:{..._,padding:"14px 22%",display:"flex",flexDirection:"column",justifyContent:"center",gap:7},children:[c(R,{w:"48%",h:7,r:3,tone:"dark"}),c(R,{w:"82%",h:5,r:2,tone:"soft"}),c(R,{w:"66%",h:5,r:2,tone:"soft"}),c(R,{w:"74%",h:5,r:2,tone:"soft"}),c(R,{w:"58%",h:5,r:2,tone:"soft"})]}),emailform:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[c(R,{w:"56%",h:8,r:3,tone:"dark"}),S("div",{style:{display:"flex",gap:6},children:[c("div",{style:{flex:1,height:16,borderRadius:5,border:`1px solid ${Te.line}`}}),c(R,{w:"30%",h:16,r:5,tone:"accent"})]})]}),sociallogos:c("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:9},children:[0,1,2,3].map(e=>c(R,{w:16,h:16,r:8,tone:"dark"},e))}),search:c("div",{style:{..._,padding:"0 18%",display:"flex",alignItems:"center"},children:S("div",{style:{flex:1,height:22,borderRadius:11,border:`1px solid ${Te.line}`,display:"flex",alignItems:"center",gap:7,padding:"0 9px"},children:[c("div",{style:{width:9,height:9,borderRadius:5,border:`2px solid ${Te.dark}`}}),c(R,{w:"46%",h:5,r:2,tone:"soft"})]})}),cart:S("div",{style:{..._,display:"flex",alignItems:"center",justifyContent:"center",gap:7},children:[c("div",{style:{width:22,height:18,borderRadius:"3px 3px 6px 6px",border:`2px solid ${Te.dark}`}}),c("div",{style:{padding:"2px 6px",borderRadius:6,border:`1.5px solid ${Te.dark}`},children:c(R,{w:7,h:7,r:2,tone:"dark"})})]}),countryswitch:S("div",{style:{..._,padding:14,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:5},children:[S("div",{style:{display:"flex",alignItems:"center",gap:6,padding:"4px 8px",border:`1px solid ${Te.line}`},children:[c(R,{w:22,h:6,r:2,tone:"dark"}),c(R,{w:6,h:4,r:1,tone:"soft"})]}),S("div",{style:{width:"46%",display:"flex",flexDirection:"column",gap:4,padding:6,border:`1px solid ${Te.line}`},children:[c(R,{w:"80%",h:4,r:2,tone:"accent"}),c(R,{w:"64%",h:4,r:2,tone:"soft"}),c(R,{w:"72%",h:4,r:2,tone:"soft"})]})]}),legalline:S("div",{style:{..._,padding:16,display:"flex",flexDirection:"column",justifyContent:"center",gap:9},children:[c("div",{style:{height:1,background:Te.line}}),S("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[c(R,{w:"38%",h:5,r:2,tone:"soft"}),S("div",{style:{display:"flex",gap:5},children:[c(R,{w:14,h:5,r:2,tone:"soft"}),c(R,{w:14,h:5,r:2,tone:"soft"}),c(R,{w:14,h:5,r:2,tone:"soft"})]})]})]}),fallback:c("div",{style:{position:"absolute",inset:14,borderRadius:8,background:Te.block}})};function Xy({type:e}){let o=RN[e]??"",t=AN[o]??Vy[o]??Vy.fallback;return c("div",{className:"sf-thumb","aria-hidden":"true",style:{position:"absolute",inset:0,background:"var(--sf-thumb-thumb-bg)",pointerEvents:"none",containerType:"inline-size"},children:t})}import{useScreenDocument as Nd}from"efficient-easel/screen/components/ScreenDocumentContext";import{jsx as hr,jsxs as BN}from"react/jsx-runtime";import _N from"efficient-easel/screen/components/SidePanelHead";import{StylesIcon as DN}from"efficient-easel/rail";import{Tooltip as NN}from"efficient-shell/ui";function Zy({tokenRef:e,siteId:o,onClose:t,onNotify:r,tab:a,onTabChange:n}){let s=or();return BN("div",{className:"sf-styles",children:[hr(_N,{icon:hr(DN,{}),title:l("Site styles"),context:hr(NN,{content:l("{name} \u2014 renamed in the Console: {place}.",{name:s,place:l("Storefront \u25B8 Sites \u25B8 Settings")}),className:"sf-name-tip",children:hr("span",{className:"sf-name-text",children:s})}),onHide:t}),hr("div",{className:"sf-insp-body es-insp-body sf-scroll",children:hr(rl,{tokenRef:e,siteId:o,onNotify:r,tab:a,onTabChange:n})})]})}import{jsx as Fe,jsxs as Lt,Fragment as UN}from"react/jsx-runtime";import{Fragment as uS,useEffect as pS,useRef as hd}from"react";import{useTreeDrag as mS}from"efficient-easel/drag";import{GlobeIcon as $N,ImageIcon as qN,LocationIcon as jN,MapIcon as KN,TextLinesIcon as VN,TrashIcon as xS}from"efficient-easel/icons";import{Subtree as IS,TreeRow as Ea,TreeRowAction as hS,TreeSeam as gS}from"efficient-easel/tree";import{useEaselStrings as YN}from"efficient-easel/strings";import{createPreviewSelectionContext as MN}from"efficient-easel/draw/client";var{Provider:EJ,useSelection:Qy}=MN("selectedLocationPartId");function Jy(e,o,t){return`${e}::${o}::${t}`}function eS(e){if(!e)return null;let o=e.split("::");if(o.length<3)return null;let t=o[o.length-1];if(t!=="image"&&t!=="map")return null;let r=Number(o[o.length-2]);if(!Number.isInteger(r)||r<0)return null;let a=o.slice(0,-2).join("::");return a?{nodeId:a,index:r,part:t}:null}import{useSyncExternalStore as HN}from"react";var WN={level:"groups"},tS=WN,ud=new Set;function io(e){tS=e;for(let o of ud)o()}function zN(e){return ud.add(e),()=>{ud.delete(e)}}var oS=()=>tS;function rS(){return HN(zN,oS,oS)}function aS(e,o,t){let r=[];return e.forEach((a,n)=>{let s=o(a),i=r.find(f=>f.key===s);i||(i={key:s,name:t(a),items:[]},r.push(i)),i.items.push({item:a,index:n})}),r}function RJ(e){if(e<=1)return"grid-cols-1";if(e===2)return"grid-cols-2";if(e===3)return"grid-cols-3";if(e===4)return"grid-cols-4";let o=t=>e%t||t;return o(4)>=o(3)?"grid-cols-4":"grid-cols-3"}var Fa=e=>String(e?.group??""),pd=new WeakMap,GN=0;function Xl(e){let o=pd.get(e);return o||(o=`loc${++GN}`,pd.set(e,o)),o}var nS=(e,o)=>o||e||"Ungrouped",lS={photo:"",group:"",groupName:"",name:"City name",state:"State",country:"Country",timezone:"GMT \xB7 UTC +0",address:`Address line one
|
|
17
|
+
Address line two`,phone:"+00 000 0000",hours:"Mon\u2013Fri 9:00\u201318:00",lat:0,lng:0,mapsUrl:""};function Pt(e){return aS(e,Fa,o=>String(o?.groupName??"")).map(o=>({key:o.key,name:o.name,cards:o.items.map(t=>t.item)}))}var md=e=>e.flatMap(o=>o.cards),sS=(e,o,t)=>Math.min(Math.max(e,o),t);function Zl(e,o,t){let r=0;for(let a=0;a<e.length;a++)if(Fa(e[a])===o){if(r===t)return a;r++}return-1}function xd(e,o,t){let r=Pt(e);if(o<0||o>=r.length)return e;let[a]=r.splice(o,1),n=sS(o<t?t-1:t,0,r.length);return r.splice(n,0,a),md(r)}function Id(e,o,t,r,a){let n=Pt(e),s=n.find(m=>m.key===o),i=n.find(m=>m.key===r);if(!s||!i||t<0||t>=s.cards.length)return e;let[f]=s.cards.splice(t,1),u=o===r?f:{...f,group:i.key,groupName:i.name};u!==f&&pd.set(u,Xl(f));let p=sS(s===i&&t<a?a-1:a,0,i.cards.length);return i.cards.splice(p,0,u),md(n)}function iS(e,o){let t=Pt(e),r=t.find(n=>n.key===o),a={...lS,group:o,groupName:r?.name??""};return r?(r.cards.push(a),md(t)):[...e,a]}function fS(e){let o=new Set(Pt(e).map(a=>a.key)),t=o.size+1,r=`Group ${t}`;for(;o.has(r);)r=`Group ${++t}`;return{cards:[...e,{...lS,group:r,groupName:""}],key:r}}function cS(e,o){return e.filter(t=>Fa(t)!==o)}function dS(e,o,t){let r=Zl(e,o,t);return r<0?e:e.filter((a,n)=>n!==r)}function _J(e,o,t){let r=e.flatMap((s,i)=>Fa(s)===o?[i]:[]),a=e.slice();r.forEach((s,i)=>{a[s]=t[i]});let n=t.slice(r.length);return[...a.filter(s=>s!==void 0),...n]}function DJ(e,o,t){return o.flatMap(r=>{let a=e.filter(n=>Fa(n)===r);return a.length?a:t(r)})}var Jl="ContactLocations",Ql=e=>({parentId:`locations-${e}`,slot:"groups"}),gd=(e,o)=>({parentId:`locations-${e}`,slot:`cities:${o}`});function bS(e,o){let{readOnly:t,selected:r}=o,a=YN().tree,n=o.data?.content??[],s=e.kind===Wy.kind,i=hd(null);pS(()=>{let g=r?.type===Jl?String(r.props.id):null;g&&g!==i.current&&io({level:"groups"}),i.current=g},[r?.props.id]);let{selectedLocationPartId:f,setSelectedLocationPartId:u,setSelectHandler:p}=Qy(),m=rS(),x=(g,y)=>{let E=n[g];E&&o.replace(g,{type:E.type,props:{...E.props,locations:y}})},h=g=>{let y=n[g]?.props?.locations;return Array.isArray(y)?y:[]},b=mS({keyOf:g=>`group:${g.si}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===Ql(g.si).parentId&&y.slot==="groups",onDrop:(g,y)=>{x(g.si,xd(h(g.si),g.index,y.index)),m.level==="city"&&io({level:"groups"})},onStep:(g,y)=>{x(g.si,xd(h(g.si),g.index,y<0?g.index-1:g.index+2)),m.level==="city"&&io({level:"groups"})}}),C=mS({keyOf:g=>`city:${g.si}:${g.group}:${g.index}`,readOnly:!!t,canDrop:(g,y)=>y.parentId===Ql(g.si).parentId&&y.slot.startsWith("cities:"),onDrop:(g,y)=>{let E=y.slot.slice(7);x(g.si,Id(h(g.si),g.group,g.index,E,y.index)),io({level:"group",key:E})},onStep:(g,y)=>{x(g.si,Id(h(g.si),g.group,g.index,g.group,y<0?g.index-1:g.index+2)),m.level==="city"&&io({level:"group",key:g.group})}}),k=hd(n);k.current=n;let v=hd(()=>{});pS(()=>{p(g=>{let y=eS(g);if(!y)return;let E=k.current.findIndex(F=>F.props?.id===y.nodeId);E<0||v.current(E,{level:y.part,index:y.index})})},[p]);let w=(g,y)=>{i.current=n[g]?.props?.id??null,o.select(g),io(y),e.reveal();let E=n[g]?.props?.id;typeof E=="string"&&(y.level==="image"||y.level==="map")?u(Jy(E,y.index,y.level)):u(null),typeof E=="string"&&o.scrollTo(E)};return v.current=w,{renderLocationTree:(g,y,{rowClick:E,isCollapsed:F,toggleCollapse:L})=>{let B=h(y),O=Pt(B),M=String(g.props.id),re=s&&r?.props.id===M,H=A=>Fe(gS,{...t?{}:b.seam({place:{...Ql(y),index:A}})},`seam:${M}:groups:${A}`),z=(A,oe)=>Fe(gS,{...t?{}:C.seam({place:{...gd(y,A),index:oe}})},`seam:${M}:cities:${A}:${oe}`);return Lt(UN,{children:[Fe(Ea,{icon:Fe(VN,{size:13}),name:l("Texts"),words:a,onSelect:()=>w(y,{level:"texts"}),selected:re&&m.level==="texts",rowProps:{onClick:E(()=>w(y,{level:"texts"}))}}),O.map((A,oe)=>{let Ae=`${M}::grp::${A.key}`,Ke=F(Ae),oo=re&&m.level==="group"&&m.key===A.key,He=A.name||A.key?nS(A.key,A.name):l("Ungrouped"),Be={...gd(y,A.key),index:A.cards.length},We=C.row({item:{si:y,group:A.key,index:-1},place:Be,into:Be,canDrag:!1},{onClick:E(()=>w(y,{level:"group",key:A.key}))}),De=b.row({item:{si:y,index:oe},place:{...Ql(y),index:oe}},We.rowProps);return Lt(uS,{children:[oe===0&&H(0),Fe(Ea,{icon:Fe($N,{size:13}),name:He,words:a,onSelect:()=>w(y,{level:"group",key:A.key}),selected:oo,draggable:De.draggable,dragging:De.dragging,drop:De.drop??We.drop,fold:{open:!Ke,label:l("group"),onToggle:()=>L(Ae)},actions:Fe(hS,{kind:"delete",label:ft("Delete {label} group ({n} city)","Delete {label} group ({n} cities)",A.cards.length,{label:He}),onClick:()=>{x(y,cS(B,A.key)),io({level:"groups"})},children:Fe(xS,{size:15})}),rowProps:De.rowProps,children:Fe("span",{className:"es-group-count",children:A.cards.length})}),!Ke&&Lt(IS,{children:[A.cards.map((Ce,he)=>{let xe=Zl(B,A.key,he),Ve=re&&m.level==="city"&&m.index===xe,P=String(Ce?.name??"")||l("City"),le=`${M}::city::${Xl(Ce)}`,X=F(le),{rowProps:te,...ae}=C.row({item:{si:y,group:A.key,index:he},place:{...gd(y,A.key),index:he}},{onClick:E(()=>w(y,{level:"city",index:xe}))});return Lt(uS,{children:[he===0&&z(A.key,0),Fe(Ea,{icon:Fe(jN,{size:13}),name:P,words:a,onSelect:()=>w(y,{level:"city",index:xe}),selected:Ve,...ae,fold:{open:!X,label:P,onToggle:()=>L(le)},actions:Fe(hS,{kind:"delete",label:l("Delete {name}",{name:P}),onClick:()=>{x(y,dS(B,A.key,he)),io({level:"group",key:A.key})},children:Fe(xS,{size:15})}),rowProps:te}),!X&&Lt(IS,{children:[Fe(Ea,{icon:Fe(qN,{size:13}),name:l("Image"),words:a,onSelect:()=>w(y,{level:"image",index:xe}),selected:re&&m.level==="image"&&m.index===xe,rowProps:{onClick:E(()=>w(y,{level:"image",index:xe}))}}),Fe(Ea,{icon:Fe(KN,{size:13}),name:l("Map"),words:a,onSelect:()=>w(y,{level:"map",index:xe}),selected:re&&m.level==="map"&&m.index===xe,rowProps:{onClick:E(()=>w(y,{level:"map",index:xe}))}})]}),z(A.key,he+1)]},Xl(Ce))}),Lt("button",{type:"button",className:"sf-add-card",onClick:()=>{let Ce=iS(B,A.key);x(y,Ce);let he=Pt(Ce).find(xe=>xe.key===A.key);io(he&&he.cards.length?{level:"city",index:Zl(Ce,A.key,he.cards.length-1)}:{level:"group",key:A.key})},children:[Fe("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add city")]})]}),H(oe+1)]},Ae)}),Lt("button",{type:"button",className:"sf-add-card",onClick:()=>{let{cards:A,key:oe}=fS(B);x(y,A),w(y,{level:"group",key:oe})},children:[Fe("span",{className:"sf-plus sf-plus--sm",children:"+"}),l("Add group")]})]})},sectionPressed:g=>{g?.type===Jl&&io({level:"groups"})}}}import{useEffect as XN,useRef as ZN}from"react";import{createNode as CS,newId as vS}from"efficient-easel/data";import{useEaselApi as QN}from"efficient-easel/easel";import{useScreenDocument as JN}from"efficient-easel/screen/components/ScreenDocumentContext";import{ROOT_ZONE as gr,missingPinnedTypes as eM,pinnedDuplicateIds as bd}from"efficient-easel/draw";import{resetForDocumentSwitch as ZJ,saveStatusForNewDocument as QJ,saveStatusOf as JJ}from"efficient-easel/screen/lib/document-switch";function yS(e){return!e.docId||e.saveStatus==="saving"?!1:e.seededDocId!==e.docId}function SS(e,o){let t=e.some(n=>n?.type===de),r=e[e.length-1],a=!t&&r?.type===pe?r:null;return{remove:e.filter(n=>n?.type===pe&&n!==a).map(n=>String(n.props?.id??"")).filter(Boolean),seedHeader:!e.some(n=>n?.type===je),seedFooter:o.hasChromeDoc&&!t&&!a}}function wS(e,o){let{adapter:t,capabilities:r,currentSlug:a,docId:n,data:s,saveStatus:i}=JN(),{hasSiteSettings:f,hasPinnedChrome:u}=r,p=!!r.editsPinnedInPlace&&a!==Nt,m=a===Nt,x=QN().getState,h=ZN(null);XN(()=>{if(!yS({docId:n,saveStatus:i,seededDocId:h.current})||(h.current=n,!u))return;let b=x().appState.data,C=b.content,k=s?.content??[],v=(E,F)=>E.some(L=>L?.type===F);if(!f){let E=new Set(bd(C)),F=E.size?C.filter(B=>!E.has(B.props.id)):C;E.size&&e.setDocument({...b,content:F});let L=eM(F,k);if(L.includes(pe)){let B=F.length,O=e.insertSection(pe,B);e.replaceComponent(gr,B,{type:pe,props:{id:O,blocks:zl()}})}L.includes(je)&&e.insertNode(gr,0,Wl());return}if(m){let E=xr(C);if(E!==C&&e.setDocument({...b,content:[...E]}),!E.find(F=>F.type===pe)&&!v(k,pe)&&!v(E,de)&&!v(k,de)){let F=(B,O)=>CS(o,B,O),L={type:pe,props:{blocks:zl()}};e.insertNode(gr,E.length,Sa(L,F,vS(de)))}return}if(p){let E=!!t?.pinnedChrome?.state().docId,F=SS(C,{hasChromeDoc:E}),L=new Set([...F.remove,...bd(C.filter(O=>!F.remove.includes(String(O.props.id))))]),B=L.size?C.filter(O=>!L.has(String(O.props.id))):C;if(B.length!==C.length&&e.setDocument({...b,content:B}),F.seedFooter&&!v(k,pe)&&!v(k,de)){let O=(re,H)=>CS(o,re,H),M={type:pe,props:{blocks:zl()}};e.insertNode(gr,B.length,Sa(M,O,vS(de)))}if(F.seedHeader&&!v(k,je)){let O=B[0]?.type==="SiteHeader"?1:0;e.insertNode(gr,O,Wl())}return}let w=C.filter(E=>E.type!==pe),g=new Set(bd(w)),y=g.size?w.filter(E=>!g.has(E.props.id)):w;y.length!==C.length&&e.setDocument({...b,content:y}),!v(y,je)&&!v(k,je)&&e.insertNode(gr,0,Wl())},[n,i,s,x,e,f,u,m,p,t])}import{useEffect as FS,useState as ES}from"react";var es=new Map;async function oM(e,o){try{return(await ze().site.get({siteId:o})).slug?.trim()||null}catch(t){return console.warn("[editor-site-slug] could not resolve the site slug",t),null}}function kS(e,o){let t=es.get(o);return t||(t=oM(e,o),es.set(o,t),t.catch(()=>{es.get(o)===t&&es.delete(o)})),t}var tM=/^(localhost|(?:[a-z0-9-]+\.)+localhost|127(?:\.\d{1,3}){3}|0\.0\.0\.0|\[::1\]|::1)$/i;function yd(e){return!!e&&tM.test(e)}function TS(e){let{pageSlug:o,siteSlug:t,hostname:r}=e,a=o===sn?"/":`/${encodeURIComponent(o)}`;if(!yd(r))return a;let n=t?.trim();return n?`${a}?site=${encodeURIComponent(n)}`:a}function PS(e){let{pageSlug:o,siteId:t,token:r}=e,[a,n]=ES(null),[s,i]=ES(null),f=du();FS(()=>i(f?new URL(f).hostname:window.location.hostname),[f]),FS(()=>{if(!yd(s)||!t||!r){n(null);return}let p=!1;return kS(r,t).then(m=>{p||n(m)}),()=>{p=!0}},[s,t,r]);let u=TS({pageSlug:o,siteSlug:a,hostname:s});return f?`${f}${u}`:u}import{jsx as Pa,jsxs as rM}from"react/jsx-runtime";import{ExternalIcon as LS}from"efficient-easel/icons";import{Button as aM,Tooltip as OS,buttonClasses as nM}from"efficient-shell/ui";function lM({pageId:e,liveHref:o,draftLink:t,win:r=window}){let a=r.open("","_blank");if(a)try{a.opener=null}catch{}let n=s=>{a&&!a.closed?a.location.href=s:r.open(s,"_blank","noopener,noreferrer")};return t(e).then(s=>n(s.url??o),()=>n(o))}function RS({liveHref:e,pageId:o,draftLink:t}){return t&&o?Pa(OS,{content:l("Open your saved draft in a new tab. Visitors don't see it."),children:Pa(aM,{variant:"secondary",onClick:()=>{lM({pageId:o,liveHref:e,draftLink:t})},rightIcon:Pa(LS,{size:15}),"aria-label":l("Preview your saved draft in a new tab"),children:l("Preview")})}):Pa(OS,{content:l("Preview the live site (opens in a new tab)"),children:rM("a",{className:nM({variant:"secondary"}),href:e,target:"_blank",rel:"noopener noreferrer","aria-label":l("Preview the live site in a new tab"),children:[l("Preview"),Pa(LS,{size:15})]})})}import{useCallback as uM,useEffect as NS,useRef as MS,useState as pM}from"react";import{useScreenDocument as mM}from"efficient-easel/screen/components/ScreenDocumentContext";import{useSyncExternalStore as sM}from"react";import{useScreenDocument as iM}from"efficient-easel/screen/components/ScreenDocumentContext";var fM=()=>()=>{},AS=()=>null;function os(e){return sM(e?e.subscribe:fM,e?e.state:AS,e?e.state:AS)}function ts(){let{adapter:e}=iM();return e?.pinnedChrome}import{useSyncExternalStore as cM}from"react";var br=new Map,Sd=new Set;function Cd(e,o){if(!(br.has(e)&&br.get(e)===o)){br.set(e,o);for(let t of Sd)t()}}function _ee(e,o){Cd(e,o)}function Dee(e,o){let t=br.get(e);Cd(e,o??(t==="live"?"changed":t))}function Nee(e,o){Cd(e,o??"live")}function Mee(e){return br.get(e)}function dM(e){return Sd.add(e),()=>{Sd.delete(e)}}function BS(e){let o=()=>e?br.get(e):void 0;return cM(dM,o,o)}function _S(e,o){return e==="live"&&o?"changed":e}function vd({live:e,onPress:o,busy:t=!1,pinnedUnpublished:r=!1,goingLive:a}){let n=e==="live"&&!r,s=e==="changed"?l("Changes not live yet"):e==="never"?l("Never published"):r?l("Header and footer not live yet"):e==="live"?l("Everything is live"):null;return{label:l("Publish"),tooltip:e==="never"?l("Put this page on your site"):l("Put your changes on your site"),status:s,quiet:n?{label:l("Published"),reason:l("Everything is live")}:null,...a&&a.length?{goingLive:a}:{},onPress:o,busy:t}}function DS(e){return e.map(o=>o.change==="take_down"?l("{name} (taken down)",{name:o.name}):o.name)}function HS(e){let{docId:o,capabilities:t,hasUnsavedEdits:r,onPublish:a,adapter:n}=mM(),s=_S(BS(o??null),r),i=os(ts()),f=n.siteLiveState;NS(()=>{if(f)return ci(f),nn(0),()=>ci(null)},[f]);let u=Gp(),[p,m]=pM(!1),x=MS(e);x.current=e;let h=MS(!0);NS(()=>(h.current=!0,()=>{h.current=!1}),[]);let b=uM(()=>{m(!0),a(x.current).finally(()=>{h.current&&m(!1)})},[a]);if(t.canPublish){if(f){let C=u===void 0?void 0:r||u.state==="changed"?"changed":"live";return vd({live:C,onPress:b,busy:p,goingLive:DS(u?.changes??[])})}return vd({live:s,onPress:b,busy:p,pinnedUnpublished:i?.unpublished??!1})}}import{useEaselSession as W2}from"efficient-easel/screen/lib/session-context";import{buildPaletteSections as toe,categoryLabel as roe,paletteWithoutPinned as aoe,pinnedSection as noe}from"efficient-easel/screen/lib/puck/palette-sections";var WS=["general","commerce","service"],yr=[{key:"openers",title:"Hero & intros",defaultExpanded:!0,templateable:!0,sections:[{type:"Hero",label:"Hero Slideshow",set:"general"},{type:"HeroSingle",label:"Hero",set:"general"},{type:"IntroBleed",label:"Scroll-Over Text",set:"general"}]},{key:"shop",title:"Shop & galleries",templateable:!0,sections:[{type:"Collections",label:"Collections",set:"commerce"},{type:"AlloyWheelsListing",label:"List",set:"commerce"},{type:"CatalogFilterBar",label:"Catalog Filter Bar",set:"commerce"},{type:"ProductGrid",label:"Product Grid",set:"commerce"},{type:"FitmentFinder",label:"Fitment Form",set:"commerce"},{type:"Gallery",label:"Tabbed Gallery",set:"commerce"},{type:"GalleryB",label:"Customer Photo Grid",set:"commerce"},{type:"SpecStrip",label:"Spec Strip",set:"general"}]},{key:"product",title:"Product page",templateable:!0,sections:[{type:"ProductHero",label:"Product Hero",set:"commerce"},{type:"SpecTable",label:"Spec Table",set:"commerce"},{type:"ProcessSteps",label:"Image & Text Columns",set:"general"},{type:"DetailRows",label:"Feature Rows",set:"commerce"},{type:"FitmentTable",label:"Fitment Table",set:"commerce"},{type:"TyreSizes",label:"Tyre Sizes",set:"commerce"},{type:"TyreFitment",label:"Tyre Fitment Form",set:"commerce"},{type:"EuTyreLabel",label:"EU Tyre Label",set:"commerce"},{type:"RelatedProducts",label:"Related Products",set:"commerce"},{type:"BundleOffer",label:"Bundle Products",set:"commerce"}]},{key:"checkout",title:"Checkout & ordering",templateable:!0,sections:[{type:"OrderSummary",label:"Order Table",set:"general"},{type:"DeliveryOptions",label:"Delivery Options",set:"commerce"},{type:"PaymentBadges",label:"Payment Methods",set:"general"},{type:"CheckoutCTA",label:"Ready-to-Order Banner",set:"commerce"}]},{key:"about",title:"About & brand story",templateable:!0,sections:[{type:"Manifesto",label:"Brand Text",set:"general"},{type:"Timeline",label:"Story Timeline",set:"general"},{type:"TimelineTrack",label:"Milestone Timeline",set:"general"},{type:"Footprint",label:"Locations Map",set:"general"}]},{key:"content",title:"Text & content",templateable:!0,sections:[{type:"Prose",label:"Editorial Text",set:"general"},{type:"ParagraphsA",label:"Lead Text",set:"general"},{type:"Split",label:"Image & Text Split",set:"general"},{type:"Cards",label:"Cards",set:"general"},{type:"KeyFeatures",label:"Key Features",set:"general"}]},{key:"proof",title:"Stats & social proof",templateable:!0,sections:[{type:"Stats",label:"Stats",set:"general"},{type:"StatsParagraph",label:"Stats with Text",set:"general"},{type:"Chart",label:"Chart",set:"general"},{type:"Mockup",label:"Mockup Card",set:"general"},{type:"Testimonials",label:"Testimonials",set:"general"},{type:"Reviews",label:"Reviews",set:"service"},{type:"Logos",label:"Logos",set:"general"}]},{key:"promo",title:"Promotions & sign-ups",templateable:!0,sections:[{type:"Banner",label:"Banner",set:"general"},{type:"TitleWithButtons",label:"Call-to-Action Heading",set:"general"},{type:"Ticker",label:"Scrolling Bar",set:"general"},{type:"Countdown",label:"Countdown",set:"general"},{type:"Subscribe",label:"Signup Form",set:"service"}]},{key:"blog",title:"Blog & journal",templateable:!0,sections:[{type:"Masthead",label:"Issue Header",set:"general"},{type:"FeaturedCover",label:"Feature Banner",set:"general"},{type:"LongRead",label:"Article Text",set:"general"},{type:"Series",label:"Recurring Columns",set:"general"},{type:"Events",label:"Latest Posts",set:"service"}]},{key:"navigation",title:"Navigation & wayfinding",templateable:!0,sections:[{type:"Breadcrumb",label:"Breadcrumb",set:"general"},{type:"CategoryBar",label:"Category Bar",set:"general"},{type:"DocTabs",label:"Document Tabs",set:"general"}]},{key:"legal",title:"Legal & documents",templateable:!0,sections:[{type:"DocMasthead",label:"Document Header",set:"general"},{type:"DocBody",label:"Document Text",set:"general"},{type:"DocMetaCards",label:"Document Detail Cards",set:"general"}]},{key:"contact",title:"Contact, FAQ & forms",templateable:!0,sections:[{type:"FAQ",label:"Q&A",set:"general"},{type:"ContactRouting",label:"Contact Form",set:"service"},{type:"ContactLocations",label:"Contact / Locations",set:"general"},{type:"SubmitBuild",label:"Photo Submission Form",set:"service"},{type:"ReviewForm",label:"Review Form",set:"service"},{type:"Form",label:"Form",set:"service"},{type:"AppointmentBooking",label:"Booking Form",set:"service"}]},{key:"structure",title:"Layout, structure & embeds",templateable:!1,sections:[{type:"SectionHeader",label:"Section Header",set:"general"},{type:"Flex",label:"Box",set:"general"},{type:"Spacer",label:"Spacer",set:"general"},{type:"Divider",label:"Divider",set:"general"},{type:"CustomHTML",label:"Custom HTML",set:"general"}]}];function jee(){return Object.fromEntries(yr.map(e=>[e.key,{title:e.title,components:e.sections.map(o=>o.type),...e.defaultExpanded?{defaultExpanded:!0}:{}}]))}var xM={Grid:'Lewis, 2026-09-14: Box and Grid duplicate each other and it feels confusing. 2026-09-15 he chose the order: give Box uneven widths FIRST, then merge Grid into Box. Shown three ways to pick the widths (mockup "Uneven Box Widths"), he chose A \u2014 shape pictures on the Box\'s `Block widths` row, the same "a row is a shape, pick a picture of it" rule he set for the photo wall on 2026-09-07.\n\nWHAT REPLACES IT: a Box set to One row, with `Block widths` at Equal or a shape (Big left, Big right, Bigger left, Bigger right) and its own `Columns on phone`. Measured on PRODUCTION 2026-09-16 ~09:28 AEST (database `efficient-system`, all 10 tenant schemas, 128 storefront pages, both `layout` and `published_layout` \u2014 256 documents): 2 Grid nodes, and they are ONE Grid counted twice \u2014 the 9DIEM homepage on 9diem.com (`xtreme_mudder` schema), once as draft and once as published. It is top-level, holds three `ImageBlock`s at `columns` 3 \u2014 equal thirds \u2014 and NO block sets `Positions`. A Box draws that with `Block widths` at Equal.\n\n\u26A0\uFE0F THE COUNT MOVES; THE RULE MUST NOT DEPEND ON IT. This entry has already carried three different readings. A local-clone snapshot said no Grid used `Positions`. A PRODUCTION reading on 2026-09-15 ~13:15 AEST found 6 nodes on two sites, 4 of them spanned \u2014 hartesmetal.com.au homepage and about, 4 columns, spans 1 + 3. That one was TRUE when it was taken and stopped being true the same day: those two pages were rebuilt on Box (`Block widths: Bigger right`), and on 2026-09-16 they hold zero Grid nodes and are built from `Flex`. \u26D4 So the rule is NOT "there are still N spanned Grids". NEVER delete the Grid component or its `gridSpan` handling, whatever a census says \u2014 Grid still renders, still edits, still drags, and a merchant may rebuild a page either way on any day. Re-run the census on production before anyone PROPOSES deleting either, and read any number written here as the reading of its own day, not as the state of the world.\n\nWHAT A MERCHANT LOSES: a new Grid, and with it a fixed "N per row" that wraps by itself past three across, and the per-block `Positions` number. Box wraps with `Wrap`, but by content width, not by a fixed count.\n\nTHE TYPE KEY STAYS AND SO DOES THE COMPONENT. Every page holding a Grid still renders through it and can still be edited, dragged and added to; no document is rewritten and NO MIGRATION RUNS \u2014 the owner redoes live sections himself.\n\n\u26A0\uFE0F AND IT STAYS DROPPABLE WHERE IT LIVES. The drop rule in lib/puck/config.tsx read the nestable containers off the catalogue\'s `structure` row, so leaving the catalogue would have made every open slot \u2014 a Box included \u2014 refuse a Grid already stored inside one. `scripts/test-retired-grid-stays-editable.tsx` \xA73 pins it.',CompatibleTyres:'Lewis, 2026-09-09: "Do not bother counting. Delete Compatible Tyres and use the new one. The new one needs complete settings \u2014 it must have every setting our cards have." Shown three ways to finish it, he chose C: retire from the menu now, and take styling the card text as its own card.\n\nWHAT REPLACES IT: `RelatedProducts` with its `Show` dropdown set to "Tyres that fit this product". That block is the GENERIC relationship section from card 1128 \u2014 it knows nothing about wheels or tyres, it asks the registry for a relationship by name. The two have rendered through the SAME renderer (`DynamicRelatedProducts`) since that card; this one is the pre-registry one-off that was never removed.\n\n\u26A0\uFE0F THE SWAP WAS NOT SAFE UNTIL #1305, AND SAYING SO IS THE POINT. The first old-versus-new table put in front of the owner was WRONG. `DynamicRelatedProducts` returns EARLY on a tyre answer and draws this component, so the seven card settings, the head split and the Width control all stopped at that call \u2014 nine settings, measured NO EFFECT, on precisely the relationship that replaces this block. #1283 gave the new block the card settings, #1299 the head split and its own Width, #1305 carried all of it onto the tyre branch. Only then was the claim true.\n\nWHAT WAS MEASURED BEFORE RETIRING, four ways, because the premise decides the card:\n \u2022 settable text kinds (SECTION_TEXT_KINDS): both blocks ABSENT \u2014 the map holds only TimelineTrack and Footprint, both AUTHORED lists\n \u2022 read-only text regions: neither `components/CompatibleTyres` nor `components/TyreCard` stamps one\n \u2022 panel rows through resolveFields: this block 31, `RelatedProducts` 42. This block\'s only style-ish key is `_sStyle`, the bucket HEADER, not a control\n \u2022 head text (num/title/description) is authored on both, so `_partStyles` reaches it identically\nSo on the CARD runs the two are zero against zero \u2014 neither can style them \u2014 and everywhere else the new block is ahead. Styling those runs needs a section-level prop family and a paint path for DERIVED text, which no section has yet: a part is anchored by matching an AUTHORED prop\'s string against the DOM, and `lib/puck/source-bound-parts` keeps hydrated copy unreachable on purpose so a merchant cannot type into a copy of a product name and lose it at the next sync. That is its own card, and `lib/sections/text-regions` is the read-only half that already ships.\n\nTHE TYPE KEY STAYS AND SO DOES THE COMPONENT, the same contract Subscribe, Split and SubscribeBlogs have. Every page holding a `CompatibleTyres` still renders through it, no published document is rewritten, and NO MIGRATION RUNS \u2014 the owner\'s standing ruling of 2026-09-05: he redoes live sections himself and deletes the old ones when he does. He also said explicitly not to count them first.\n\n\u26A0\uFE0F AND THIS COMPONENT IS LOAD-BEARING FOR ITS OWN REPLACEMENT: `DynamicRelatedProducts` draws it for EVERY tyre answer. Deleting it would blank the block that replaces it, not just the pages still holding this one.',SubscribeBlogs:"card 66396 \u2014 folded into `Subscribe`, which now chooses its rail's content with a `Type` control (the newsletter's own issues, or live blog posts). The two shared 21 of their fields and rendered THE SAME BYTES from equivalent rows, so offering both asked a merchant to choose between two names for one section. The type key stays because it is stored on published pages, and the component stays because those pages still render through it."},Kee=["Grid"],Vee=Array.from(new Set([...yr.flatMap(e=>e.sections.map(o=>o.type)),...Object.keys(xM)])),Yee=Object.fromEntries(yr.flatMap(e=>e.sections.map(o=>[o.type,o.label]))),IM={Heading:"general",Text:"general",Eyebrow:"general",ImageBlock:"general",LogoBlock:"general",ButtonBlock:"general",PostCard:"general",HeroSlide:"general",HeroGroup:"general",Integrations:"general",Grid:"general",CollectionCard:"commerce",GalleryItem:"commerce",ProductRef:"commerce",CompatibleTyres:"commerce",Header:"commerce",SearchBlock:"commerce",CartBlock:"commerce",CountrySwitchBlock:"commerce",AccountBlock:"commerce",ThemeSwitchBlock:"commerce",SubmitBox:"service",BookingBox:"service",SubscribeBlogs:"service",Footer:"service",FooterLogo:"service",FooterMenu:"service",FooterDivider:"service",FooterGroup:"service",FooterText:"service",FooterEmailSignup:"service",FooterSocial:"service",MenuBlock:"service",EmailFormBlock:"service",SocialLogosBlock:"service",LegalLineBlock:"service",SiteHeader:"service",SiteFooter:"service"},rs={...IM,...Object.fromEntries(yr.flatMap(e=>e.sections.map(o=>[o.type,o.set])))};function zS(e){return Object.prototype.hasOwnProperty.call(rs,e)?rs[e]:void 0}function wd(e){return Object.keys(rs).filter(o=>rs[o]===e).sort()}var Xee=wd("general"),Zee=wd("commerce"),Qee=wd("service"),kd="Flex",tt="Box",Jee=`${tt}es`;function hM(e){return e==="section"?"Blank section":tt}function Td(e,o,t){return e===kd?hM(o):t}import{matchesQuery as ioe}from"efficient-easel/screen/lib/puck/palette-sections";var gM={openers:{label:"Hero & intros",icon:"image"},shop:{label:"Shop & galleries",icon:"bag"},product:{label:"Product page",icon:"box"},checkout:{label:"Checkout & ordering",icon:"bag"},about:{label:"About & brand story",icon:"book"},content:{label:"Text & content",icon:"type"},proof:{label:"Stats & social proof",icon:"star"},promo:{label:"Promotions & sign-ups",icon:"sparkles"},blog:{label:"Blog & journal",icon:"newspaper"},navigation:{label:"Navigation & wayfinding",icon:"bookmark"},legal:{label:"Legal & documents",icon:"file"},contact:{label:"Contact, FAQ & forms",icon:"mail"},structure:{label:"Layout, structure & embeds",icon:"grid"}};function GS(e){return gM[e]?.label}var US=kd;import{currentEaselSession as bM}from"efficient-easel/screen/lib/session";var yM={general:!0,commerce:!0,service:!0};function Fd(e){let o=e?.sets;return o?Object.fromEntries(WS.map(t=>[t,o.includes(t)])):yM}function uoe(e=bM()){return Fd(e.blocks)}import{currentEaselSession as ZS}from"efficient-easel/screen/lib/session";var Sr="content",ge="Flex",SM="Text & media",CM="Layout & structure",vM=[{type:"Eyebrow",label:"Eyebrow"},{type:"Heading",label:"Heading"},{type:"Text",label:"Text"},{type:"ImageBlock",label:"Image"},{type:"LogoBlock",label:"Logo"},{type:"ButtonBlock",label:"Button"},{type:"Form",label:"Form"},{type:"PostCard",label:"Post Card"},{type:"Stats",label:"Stats"},{type:"MenuBlock",label:"Menu"},{type:"EmailFormBlock",label:"Email Form"},{type:"SocialLogosBlock",label:"Social Logos"},{type:"LegalLineBlock",label:"Legal Line"},{type:"SearchBlock",label:"Search"},{type:"CartBlock",label:"Cart"},{type:"CountrySwitchBlock",label:"Country Switch"}].map(e=>({...e,group:SM})),wM=(yr.find(e=>e.key==="structure")?.sections??[]).map(e=>({type:e.type,label:e.label,group:CM})),$S=[...vM,...wM],Ed=[{type:"Eyebrow",label:"Eyebrow"},{type:"Heading",label:"Heading"},{type:"Text",label:"Text"},{type:"ImageBlock",label:"Image"},{type:"LogoBlock",label:"Logo"},{type:"ButtonBlock",label:"Button"},{type:"HeroGroup",label:tt}],xoe=Ed.map(e=>e.type),kM=1,TM=Ed.filter(e=>e.type!=="HeroGroup");function FM(e){return e<kM?Ed:TM}var EM={Flex:{slot:Sr,choices:()=>$S},Grid:{slot:Sr,choices:()=>$S},HeroGroup:{slot:Sr,choices:FM}};function qS(e,o=0){let t=EM[e];return t?{slot:t.slot,choices:t.choices(o)}:null}function Me(e,o,t,r={}){return{type:e,props:{...o(e),id:t(e),...r}}}function jS(e,o,t){return Me(ge,e,o,{...t,sectionPaddingTop:void 0,sectionPaddingBottom:void 0})}var PM={Manifesto:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"row",share:"equal",sectionHeightMode:"screen",name:"Brand Text",content:[Me(ge,e,o,{direction:"column",justify:"center",blockSpacing:"gap",name:"Text",sectionPaddingTop:100,sectionPaddingBottom:100,sectionPaddingLeft:40,sectionPaddingRight:40,content:[Me("Eyebrow",e,o,{eyebrowLook:"plain"}),Me("Heading",e,o),Me("Text",e,o),Me("Stats",e,o)]}),jS(e,o,{direction:"column",name:"Picture",content:[]})]}}),Split:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"row",share:"equal",sectionHeightMode:"screen",sectionHeightValue:70,name:"Image & Text Split",content:[Me(ge,e,o,{direction:"column",justify:"center",blockSpacing:"gap",name:"Text",sectionPaddingTop:100,sectionPaddingBottom:100,sectionPaddingLeft:60,sectionPaddingRight:60,content:[Me("Eyebrow",e,o,{eyebrowLook:"plain"}),Me("Heading",e,o),Me("Text",e,o),Me("ButtonBlock",e,o)]}),jS(e,o,{direction:"column",name:"Image",content:[Me("ImageBlock",e,o)]})]}}),Subscribe:(e,o)=>({type:ge,props:{...e(ge),id:o(ge),direction:"column",name:"Subscribe",content:[Me("Heading",e,o),Me("Text",e,o),Me("Form",e,o)]}})};function as(e){return PM[e]??null}import{blockTypesIn as VS}from"efficient-easel/screen/lib/puck/block-types-in";import{newNodeId as KS}from"efficient-easel/draw";var LM="ImageBlock",OM=3,ns=(e,o,t={})=>({type:e,props:{...o?.(e)??{},id:KS(e),...t}}),RM=e=>({...e?.(ge)??{},direction:"column",[Sr]:[ns(LM,e),ns(ge,e,{direction:"column",[Sr]:[ns("Heading",e),ns("Text",e)]})]}),wo={Hero:{slot:"slides",childType:"HeroSlide",addLabel:"Add slide",slider:!0,seeds:()=>qg.map(e=>({...e}))},HeroSlide:{slot:"groups",childType:"HeroGroup",addLabel:`Add ${tt.toLowerCase()}`,seeds:()=>[],addBlocked:Ka,notice:Bs},HeroSingle:{slot:"boxes",childType:"HeroGroup",addLabel:`Add ${tt.toLowerCase()}`,seeds:()=>[],addBlocked:Ka,notice:Bs},ProcessSteps:{slot:"boxes",childType:ge,addLabel:`Add ${tt.toLowerCase()}`,seeds:e=>Array.from({length:OM},()=>RM(e)),skipSeed:e=>Array.isArray(e.steps)&&e.steps.length>0}};function woe(e){for(let[o,t]of Object.entries(e)){if(o in wo&&wo[o]!==t)throw new Error(`lib/puck/slot-specs: "${o}" already has a slot spec`);wo[o]=t}}function koe(e,o){let t=wo[e];return t?{slot:t.slot,children:t.seeds(o).map(r=>({type:t.childType,props:{id:KS(t.childType),...r}}))}:null}var YS=()=>({}),XS=new Map;function AM(e){let o=XS.get(e);if(o)return o;let t=new Set,r=wo[e];if(r)for(let s of r.seeds(YS))for(let i of VS({type:r.childType,props:s}))t.add(i);let a=as(e);if(a){let s=0;for(let i of VS(a(YS,f=>`${f}-${s+=1}`)))t.add(i)}t.delete(e);let n=[...t].sort();return XS.set(e,n),n}function BM(e){if(!e||!e.sets&&!e.allow&&!e.deny?.length)return null;let o=Fd(e),t=e.allow?new Set(e.allow):null,r=new Set(e.deny??[]),a=new Set(Object.keys(e.host??{})),n=f=>{if(r.has(f))return!1;if(a.has(f))return!0;let u=zS(f);return!u||!o[u]?!1:t?t.has(f):!0},s=new Map,i=f=>{let u=s.get(f);if(u!==void 0)return u;s.set(f,!1);let p=n(f)&&AM(f).every(i);return s.set(f,p),p};return{sets:o,offers:i}}var _M="block-offer";function Pd(e=ZS()){return e.cache(_M,()=>BM(Ep(e)))}function QS(e,o=ZS()){let t=Pd(o);return t?t.offers(e):!0}function JS(e,o=0){let t=NM(e,o),r=t?Pd():null;return t&&r?DM(t,r):t}function DM(e,o){if(e.spec)return o.offers(e.spec.childType)?e:null;let t=e.choices??[],r=t.filter(a=>o.offers(a.type));return r.length===t.length?e:r.length>0?{...e,choices:r}:null}function NM(e,o){let t=wo[e];if(t)return{source:"section",slot:t.slot,choices:null,spec:t};let r=qS(e,o);if(r)return{source:"container",slot:r.slot,choices:r.choices,spec:null};let a=Jb(e);return a?{source:"footer",slot:Qb,choices:a,spec:null}:null}import{useSyncExternalStore as MM}from"react";var Ld=null,Od=new Set;function eC(e){if(Ld!==e){Ld=e;for(let o of Od)o()}}function HM(e){return Od.add(e),()=>{Od.delete(e)}}function Goe(){return MM(HM,()=>Ld,()=>null)}function oC(e){return Rr(e)?.ownerId??null}function tC(e,o){let t=e.props;if(e.type==="FooterMenu"){let r=t.menu;return t.heading||r?.name||l("Menu")}if(e.type==="FooterText"){let r=typeof t.text=="string"?t.text.trim():"";return r?r.length>28?`${r.slice(0,28)}\u2026`:r:l("Text")}return e.type==="FooterEmailSignup"?t.heading||l("Email signup"):o(e.type)}var rC="sf-editor-left-view";function aC(){if(typeof window>"u")return"pages";try{let e=window.localStorage.getItem(rC);return e==="sections"||e==="styles"||e==="media"?e:"pages"}catch{return"pages"}}function nC(e){if(!(typeof window>"u"))try{window.localStorage.setItem(rC,e)}catch{}}function lC(e,o,t=!1){return e==="styles"&&!o||e==="media"&&!t?"sections":e}function sC(e,o){return e?"sections":o}var iC="Footer",WM=[_e,iC,de],Cr=e=>{let o=e?.content;return Array.isArray(o)?o:[]},Ot=e=>{let o=e?.zones;return o&&typeof o=="object"&&!Array.isArray(o)?o:null},La=e=>{let o=e?.props?.id;return typeof o=="string"?o:void 0},fC=e=>Rr(e)?.ownerId??"";function cC(e){let o=xr(Cr(e)),t=o.some(r=>r?.type===de);return o.filter(r=>r?.type===_e||r?.type===de||r?.type===iC&&!t)}function Rd(e,o){let t=new Set,r=a=>{if(Array.isArray(a)){for(let s of a)r(s);return}if(!a||typeof a!="object")return;let n=a;if(typeof n.type=="string"&&n.props&&typeof n.props=="object"){let s=La(n);s&&t.add(s)}for(let s of Object.values(a))r(s)};if(r(e),o){let a=!0,n=new Set;for(;a;){a=!1;for(let[s,i]of Object.entries(o))n.has(s)||!t.has(fC(s))||(n.add(s),r(i),a=!0)}}return t}function Ad(e,o){let t={},r={};for(let[a,n]of Object.entries(e??{}))(o.has(fC(a))?t:r)[a]=n;return{owned:t,rest:r}}function Yoe(e,o){if(!o)return e;let t=cC(o);if(!t.length)return e;let r=t.filter(i=>i.type===_e),a=t.filter(i=>i.type!==_e),n={...e,content:[...r,...Cr(e),...a]},{owned:s}=Ad(Ot(o),Rd(t,Ot(o)));return Object.keys(s).length&&(n.zones={...Ot(e)??{},...s}),n}function Xoe(e,o){if(!o)return{page:e,chrome:null};let t=cC(o),r=new Set(t.map(La).filter(w=>!!w)),a=[],n=[];for(let w of Cr(e)){let g=La(w);g&&r.has(g)||mr(w?.type)?n.push(w):a.push(w)}let s=new Map(n.map(w=>[La(w),w])),i=new Set,f=xr(Cr(o)).flatMap(w=>{let g=La(w);if(!g||!r.has(g))return[w];let y=s.get(g);return y?(i.add(y),[y]):[]});for(let w of n)i.has(w)||f.some(g=>g?.type===w.type)||(f=w.type===_e?[w,...f]:[...f,w]);f=xr(f);let u=f.length===Cr(o).length&&f.every((w,g)=>w===Cr(o)[g]),p=Ot(e),m=Rd(f,p),{owned:x,rest:h}=Ad(p,m),b=Ad(Ot(o),Rd(t,Ot(o))).owned,C={...o,content:u?o.content:[...f]},k=Ot(o);if(k||Object.keys(x).length){let w={};for(let[g,y]of Object.entries(k??{}))g in b?g in x&&(w[g]=x[g]):w[g]=y;for(let[g,y]of Object.entries(x))g in w||(w[g]=y);C.zones=w,k&&zM(C.zones,k)&&(C.zones=k)}let v={...e,content:a};return p&&(Object.keys(h).length||!Object.keys(b).length?v.zones=h:delete v.zones),{page:v,chrome:C}}function zM(e,o){let t=Object.keys(e),r=Object.keys(o);return t.length===r.length&&t.every((a,n)=>a===r[n]&&e[a]===o[a])}function dC(e,o){return t=>e(t)||t!==void 0&&WM.includes(t)&&o()}var ls=null;function Qoe(e){ls=e}function uC(){return!!(ls&&ls.state().lockHolder)}function vr(){return ls!==null}var GM=new Set(["BookingBox","SubmitBox"]);function UM(e){return typeof e=="string"&&GM.has(e)}var pC=dC(UM,uC);import{scrollPreviewToSection as z2,scrollPreviewToTop as BC}from"efficient-easel/screen/lib/puck/preview-dom";import{Fragment as _d,jsx as fs,jsxs as d2}from"react/jsx-runtime";import{useMemo as CC,useRef as vC}from"react";import{EaselCanvas as u2,useEaselApi as p2}from"efficient-easel/easel";import{jsx as gC,Fragment as QM,jsxs as JM}from"react/jsx-runtime";import{useEffect as bC,useLayoutEffect as e2}from"react";var ss="data-theme",mC="light";function $M(e){return e.getAttribute(ss)===mC?"light":"dark"}function qM(e,o){return $M(e)===o?!1:(o==="light"?e.setAttribute(ss,mC):e.removeAttribute(ss),!0)}function jM(e){return Ss(e).getItem(ms)}function nte(e,o){Ss(e).setItem(ms,o)}function KM(e,o,t=new Date().getHours()){return Ud({mode:o.mode,override:jM(e),switchShown:o.switchShown,hour:t})}function xC(e,o){let t=e.documentElement;if(!t)return()=>{};let r=()=>qM(t,KM(e,o));r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[ss]}),()=>n.disconnect()}var VM="style";function YM(e,o){let t=Zd(o),r=!1;for(let a of Xd){let n=t[a]??"";e.style.getPropertyValue(a)!==n&&(n?e.style.setProperty(a,n):e.style.removeProperty(a),r=!0)}return r}function IC(e,o){let t=e.body;if(!t)return()=>{};let r=()=>YM(t,o);r();let a=e.defaultView?.MutationObserver;if(!a)return()=>{};let n=new a(r);return n.observe(t,{attributes:!0,attributeFilter:[VM]}),()=>n.disconnect()}var XM=String.raw`(function (doc) {
|
|
18
|
+
if (doc.__sfFitWords) return;
|
|
19
|
+
var win = doc.defaultView;
|
|
20
|
+
var SELECTOR = "h1,h2,h3,h4,h5,h6,[class*='font-heading'],[class*='font-display']";
|
|
21
|
+
var MIN_SCALE = 0.3, MIN_PX = 16, SLACK = 1;
|
|
22
|
+
|
|
23
|
+
function measure(el) {
|
|
24
|
+
var widest = 0, current = 0, last = null, split = false, lastBlock = null;
|
|
25
|
+
function blockOf(n) {
|
|
26
|
+
for (var p = n.parentElement; p && p !== el; p = p.parentElement) {
|
|
27
|
+
var d = win.getComputedStyle(p).display;
|
|
28
|
+
if (d.indexOf("inline") !== 0 && d !== "contents") return p;
|
|
29
|
+
}
|
|
30
|
+
return el;
|
|
31
|
+
}
|
|
32
|
+
function close() { if (current > widest) widest = current; current = 0; last = null; }
|
|
33
|
+
var walker = doc.createTreeWalker(el, 5), range = doc.createRange(), node;
|
|
34
|
+
while ((node = walker.nextNode())) {
|
|
35
|
+
if (node.nodeType === 1) {
|
|
36
|
+
if (node.tagName === "BR" || node.tagName === "WBR") close();
|
|
37
|
+
continue;
|
|
38
|
+
}
|
|
39
|
+
var block = blockOf(node);
|
|
40
|
+
if (block !== lastBlock) close();
|
|
41
|
+
lastBlock = block;
|
|
42
|
+
var re = /(\S+)|(\s+)/g, m;
|
|
43
|
+
while ((m = re.exec(node.data))) {
|
|
44
|
+
if (m[2]) { close(); continue; }
|
|
45
|
+
range.setStart(node, m.index);
|
|
46
|
+
range.setEnd(node, m.index + m[0].length);
|
|
47
|
+
var rects = range.getClientRects();
|
|
48
|
+
for (var i = 0; i < rects.length; i++) {
|
|
49
|
+
var r = rects[i];
|
|
50
|
+
if (r.width <= 0) continue;
|
|
51
|
+
current += r.width;
|
|
52
|
+
if (last && r.top > last.top + last.height / 2) split = true;
|
|
53
|
+
last = r;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
close();
|
|
58
|
+
return { widest: widest, split: split };
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
function lineWidth(el) {
|
|
62
|
+
var cs = win.getComputedStyle(el);
|
|
63
|
+
return el.getBoundingClientRect().width - parseFloat(cs.paddingLeft) - parseFloat(cs.paddingRight)
|
|
64
|
+
- parseFloat(cs.borderLeftWidth) - parseFloat(cs.borderRightWidth);
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
// ⚠️ THE HEADING ELEMENT IS NEVER TOUCHED — no style="", no data-*. This
|
|
68
|
+
// runs before React hydrates, and React 19 in development reports ANY
|
|
69
|
+
// attribute that differs from what it rendered ("a tree hydrated but some
|
|
70
|
+
// attributes didn't match"): first our inline font-size on the hero (which
|
|
71
|
+
// React owns via --heading-size), then, when that moved to a data-sf-fit
|
|
72
|
+
// attribute, the attribute itself. So the fitted size lives only in this
|
|
73
|
+
// script's own stylesheet, in <head>, addressed to each heading by its
|
|
74
|
+
// POSITION (":root>*:nth-child(2)>…"). A position goes stale when the page's
|
|
75
|
+
// structure changes, so the rules are rewritten in the MutationObserver
|
|
76
|
+
// callback, which runs before the next paint. !important so the size also
|
|
77
|
+
// beats a part's own inline size.
|
|
78
|
+
var head = doc.head || doc.documentElement;
|
|
79
|
+
var fitEl = doc.createElement("style");
|
|
80
|
+
fitEl.id = "storefront-fit-words-sizes";
|
|
81
|
+
head.appendChild(fitEl);
|
|
82
|
+
var fitted = new Map(); // heading -> fitted size, e.g. "43.8px"
|
|
83
|
+
|
|
84
|
+
function pathOf(el) {
|
|
85
|
+
var parts = [];
|
|
86
|
+
for (var e = el; e && e.parentElement; e = e.parentElement) {
|
|
87
|
+
var i = 1, s = e;
|
|
88
|
+
while ((s = s.previousElementSibling)) i++;
|
|
89
|
+
parts.unshift("*:nth-child(" + i + ")");
|
|
90
|
+
}
|
|
91
|
+
return ":root>" + parts.join(">");
|
|
92
|
+
}
|
|
93
|
+
function writeRules() {
|
|
94
|
+
var css = "";
|
|
95
|
+
fitted.forEach(function (size, el) {
|
|
96
|
+
if (!el.isConnected) { fitted.delete(el); return; }
|
|
97
|
+
css += pathOf(el) + "{font-size:" + size + " !important}";
|
|
98
|
+
});
|
|
99
|
+
if (fitEl.textContent !== css) fitEl.textContent = css;
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
function unfit(el) {
|
|
103
|
+
if (fitted.delete(el)) writeRules();
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function fits(el) {
|
|
107
|
+
var m = measure(el);
|
|
108
|
+
return !m.split && m.widest <= lineWidth(el) + SLACK;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
function fit(el) {
|
|
112
|
+
unfit(el);
|
|
113
|
+
if (lineWidth(el) <= 0) return; // hidden, or not laid out yet
|
|
114
|
+
if (fits(el)) return;
|
|
115
|
+
var set = parseFloat(win.getComputedStyle(el).fontSize);
|
|
116
|
+
if (!set) return;
|
|
117
|
+
var floor = Math.max(set * MIN_SCALE, MIN_PX);
|
|
118
|
+
if (floor >= set) return;
|
|
119
|
+
function size(px) { return Math.floor(px * 10) / 10 + "px"; }
|
|
120
|
+
// The SEARCH tries sizes on the element's own style and then puts that
|
|
121
|
+
// attribute back byte for byte (or removes it, if it had none), so nothing
|
|
122
|
+
// is left for React to see. A trial in a stylesheet instead restyles the
|
|
123
|
+
// whole page per step: a full pass on the Hartes home took 75–160ms at 4x
|
|
124
|
+
// CPU that way.
|
|
125
|
+
var hadStyle = el.hasAttribute("style"), origStyle = el.getAttribute("style");
|
|
126
|
+
function attempt(px) { el.style.setProperty("font-size", size(px), "important"); }
|
|
127
|
+
function done() { if (hadStyle) el.setAttribute("style", origStyle); else el.removeAttribute("style"); }
|
|
128
|
+
attempt(floor);
|
|
129
|
+
if (!fits(el)) { done(); return; } // even the floor does not fit: leave it as set
|
|
130
|
+
var lo = floor, hi = set;
|
|
131
|
+
for (var i = 0; i < 8; i++) {
|
|
132
|
+
var mid = (lo + hi) / 2;
|
|
133
|
+
attempt(mid);
|
|
134
|
+
if (fits(el)) lo = mid; else hi = mid;
|
|
135
|
+
}
|
|
136
|
+
done();
|
|
137
|
+
fitted.set(el, size(lo));
|
|
138
|
+
writeRules();
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
// What each heading measured right after we last fitted it, so the
|
|
142
|
+
// ResizeObserver below can tell a real change (a font swap, a rotate, a
|
|
143
|
+
// container that moved) from the size change our own write just caused.
|
|
144
|
+
var seen = new WeakMap();
|
|
145
|
+
function remember(el) {
|
|
146
|
+
var b = el.getBoundingClientRect();
|
|
147
|
+
seen.set(el, b.width + "x" + b.height);
|
|
148
|
+
}
|
|
149
|
+
function fitAndRemember(el) { fit(el); remember(el); }
|
|
150
|
+
|
|
151
|
+
// ⚠️ A ResizeObserver, NOT fonts.ready or a resize event, and the reason is
|
|
152
|
+
// WHEN it runs: after layout, BEFORE paint. The web font arriving re-wraps a
|
|
153
|
+
// fitted heading, and fonts.ready resolves only after that frame is painted —
|
|
154
|
+
// measured on the Hartes hero: a 42px jump in 2 of 3 loads. A size change
|
|
155
|
+
// reported here is fitted in the same frame, so the broken state is never
|
|
156
|
+
// drawn. It also covers a container that resizes.
|
|
157
|
+
var ro = new win.ResizeObserver(function (entries) {
|
|
158
|
+
for (var i = 0; i < entries.length; i++) {
|
|
159
|
+
var el = entries[i].target;
|
|
160
|
+
var b = el.getBoundingClientRect();
|
|
161
|
+
if (seen.get(el) === b.width + "x" + b.height) continue; // our own write
|
|
162
|
+
fitAndRemember(el);
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
// Its own set, not seen: fitAndRemember has written seen by the
|
|
166
|
+
// time watch runs, so a seen test observed no heading at all, and a
|
|
167
|
+
// heading fitted in the fallback face was never fitted again when the web
|
|
168
|
+
// font arrived (hartesmetal.com.au, "FusionForge." with its "." alone).
|
|
169
|
+
var watched = new WeakSet();
|
|
170
|
+
function watch(el) { if (!watched.has(el)) { watched.add(el); ro.observe(el); } }
|
|
171
|
+
|
|
172
|
+
function fitAll() {
|
|
173
|
+
var els = doc.querySelectorAll(SELECTOR);
|
|
174
|
+
for (var i = 0; i < els.length; i++) { fitAndRemember(els[i]); watch(els[i]); }
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
var queued = 0, all = false, touched = new Set();
|
|
178
|
+
function run() {
|
|
179
|
+
queued = 0;
|
|
180
|
+
if (all) { all = false; touched.clear(); fitAll(); return; }
|
|
181
|
+
var els = Array.from(touched);
|
|
182
|
+
touched.clear();
|
|
183
|
+
for (var i = 0; i < els.length; i++) if (els[i].isConnected) { fitAndRemember(els[i]); watch(els[i]); }
|
|
184
|
+
}
|
|
185
|
+
function schedule() { if (!queued) queued = win.requestAnimationFrame(run); }
|
|
186
|
+
function scheduleAll() { all = true; schedule(); }
|
|
187
|
+
|
|
188
|
+
fitAll();
|
|
189
|
+
// A backstop only: a font that changes widths without changing any
|
|
190
|
+
// heading's box is not seen by the ResizeObserver.
|
|
191
|
+
if (doc.fonts && doc.fonts.ready) doc.fonts.ready.then(scheduleAll, function () {});
|
|
192
|
+
|
|
193
|
+
// …and the viewport WIDTH, which the ResizeObserver cannot stand in for: a
|
|
194
|
+
// heading sized to its own text (fit-content, a flex item) keeps the SAME box
|
|
195
|
+
// when the phone turns to 844, so nothing reports a change and it would stay
|
|
196
|
+
// shrunk. The probe's rotate check caught exactly that.
|
|
197
|
+
var lastWidth = win.innerWidth;
|
|
198
|
+
function onResize() {
|
|
199
|
+
if (win.innerWidth === lastWidth) return; // a phone's toolbar changing HEIGHT is not our business
|
|
200
|
+
lastWidth = win.innerWidth;
|
|
201
|
+
scheduleAll();
|
|
202
|
+
}
|
|
203
|
+
win.addEventListener("resize", onResize);
|
|
204
|
+
|
|
205
|
+
var mo = new win.MutationObserver(function (records) {
|
|
206
|
+
// Positions first: a node added or removed anywhere can shift the
|
|
207
|
+
// nth-child path of a fitted heading, and this callback runs before paint.
|
|
208
|
+
if (fitted.size) {
|
|
209
|
+
for (var q = 0; q < records.length; q++) if (records[q].type === "childList") { writeRules(); break; }
|
|
210
|
+
}
|
|
211
|
+
for (var i = 0; i < records.length; i++) {
|
|
212
|
+
var r = records[i];
|
|
213
|
+
var target = r.target.nodeType === 1 ? r.target : r.target.parentElement;
|
|
214
|
+
var own = target && target.closest(SELECTOR);
|
|
215
|
+
if (own) touched.add(own);
|
|
216
|
+
for (var j = 0; j < r.addedNodes.length; j++) {
|
|
217
|
+
var n = r.addedNodes[j];
|
|
218
|
+
if (n.nodeType !== 1) continue;
|
|
219
|
+
if (n.matches(SELECTOR)) touched.add(n);
|
|
220
|
+
var inner = n.querySelectorAll(SELECTOR);
|
|
221
|
+
for (var k = 0; k < inner.length; k++) touched.add(inner[k]);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
if (touched.size) schedule();
|
|
225
|
+
});
|
|
226
|
+
mo.observe(doc.body, { childList: true, subtree: true, characterData: true });
|
|
227
|
+
|
|
228
|
+
doc.__sfFitWords = function stop() {
|
|
229
|
+
win.removeEventListener("resize", onResize);
|
|
230
|
+
ro.disconnect();
|
|
231
|
+
mo.disconnect();
|
|
232
|
+
if (queued) win.cancelAnimationFrame(queued);
|
|
233
|
+
fitted.clear();
|
|
234
|
+
fitEl.remove();
|
|
235
|
+
delete doc.__sfFitWords;
|
|
236
|
+
};
|
|
237
|
+
// For the probe and for debugging: which headings are fitted, at what size,
|
|
238
|
+
// and the sheet that holds it (disable it to read a heading's set size).
|
|
239
|
+
doc.__sfFitWords.fitted = fitted;
|
|
240
|
+
doc.__sfFitWords.sheet = fitEl;
|
|
241
|
+
})(document);`,ZM="storefront-fit-words";function hC(e){let o=e.createElement("script");return o.id=ZM,o.textContent=XM,(e.head??e.documentElement).appendChild(o),()=>{e.__sfFitWords?.(),o.remove()}}var o2=`
|
|
242
|
+
[${no}][${no}] { cursor: text; }
|
|
243
|
+
[${qe}][${qe}][${qe}] {
|
|
244
|
+
outline: 1px solid ${pa.accent};
|
|
245
|
+
outline-offset: 2px;
|
|
246
|
+
}
|
|
247
|
+
[${qe}][${qe}]:has([${qe}]),
|
|
248
|
+
[data-puck-overlay-portal][data-puck-overlay-portal]:has([${qe}]) {
|
|
249
|
+
outline: none;
|
|
250
|
+
}
|
|
251
|
+
[${qe}][${qe}][${qe}][data-es-typing],
|
|
252
|
+
[data-es-typing] [${qe}][${qe}][${qe}] {
|
|
253
|
+
outline: none;
|
|
254
|
+
}
|
|
255
|
+
`;function yC({children:e,document:o}){let{theme:t,themeMode:r,themeSwitchShown:a}=$(),n=Ye(t);return bC(()=>{if(o)return xC(o,{mode:r,switchShown:a})},[o,r,a]),bC(()=>{if(o)return IC(o,n)},[o,n]),e2(()=>{if(o)return hC(o)},[o]),JM(QM,{children:[gC(Fu,{}),gC("style",{children:o2}),e]})}import{jsx as Bd}from"react/jsx-runtime";import{useEffect as t2,useState as r2}from"react";import{Banner as a2}from"efficient-shell/ui";var is={load:"The header and footer could not load. They are hidden for now and nothing in them is saved. Reload to try again.",lock:"{name} is editing the header and footer. Nothing you change in them here is saved.",conflict:"The header and footer were changed somewhere else. Nothing you change in them here is saved. Reload to get the latest.",save:"The header and footer did not save. They are sent again with your next change."},n2=is.load,l2=is.lock,s2=is.conflict,i2=is.save;function f2(e){return e?e.loadFailed?l(n2):e.lockHolder?l(l2,{name:e.lockHolder.name||l("Somebody else")}):e.conflict?l(s2):e.saveFailed?l(i2):null:null}function c2({report:e}){let o=f2(os(e)),[t,r]=r2(null);return t2(()=>{o||r(null)},[o]),!o||t===o?null:Bd("aside",{className:"sf-canvas-notice",children:Bd(a2,{tone:"warning",onDismiss:()=>r(o),children:o})})}function SC(){return Bd(c2,{report:ts()})}import{usePreviewParts as wC}from"efficient-easel/draw/client";import{useSectionOps as m2}from"efficient-easel/screen/lib/puck/use-section-ops";function x2({children:e,componentId:o}){let{selectedPartId:t}=wC();return FI(t,o)?fs(_d,{}):fs(_d,{children:e})}function kC(e){let{mirrorHostStyles:o}=Ts(),t=Pu(),{sectionBackgroundWidth:r,sectionContentWidth:a,themeFromDocument:n}=$(),s=CC(()=>({...e.metadata??t??{},...ox(n?null:r,n?null:a)}),[e.metadata,t,r,a,n]),i=vC(null),f=I2(i),{onDocument:u}=e,p=m=>{i.current=m,u?.(m)};return d2(_d,{children:[fs(SC,{}),fs(u2,{...e,onDocument:p,typing:f,metadata:s,height:"fill",mirrorStyles:o,frameWrapper:yC,overlay:x2})]})}function I2(e){let o=p2(),t=m2(),r=wC(),a=vC({ops:t,parts:r});return a.current={ops:t,parts:r},CC(()=>{let n={getItemById:i=>o.getState().getItemById(i),getSelectorForId:i=>o.getState().getSelectorForId(i),get components(){return o.getState().config.components},replace:(i,f,u)=>a.current.ops.replaceComponent(i,f,u)},s=(i,f)=>{let u=vb(i,n);if(!u)return null;let p=f,m=()=>(p=wb(p,p?.ownerDocument??e.current,i),p),x=m();return x?{element:m,value:u.value,rules:u.rules,multiline:u.multiline,write:u.write,toolbar:{offered:u.offered,colors:u.offered.length>0?Al(Ab(x)):void 0}}:null};return{at:i=>{let f=i.closest(`[${no}]`),u=f?.getAttribute(no);return f&&u?s(u,f):null},atSelection:()=>{let i=a.current.parts.selectedPartId;return i?s(i,null):null},onChange:i=>{if(!i.typing){Nc(null);return}let f=i.element.closest(`[${no}]`)?.getAttribute(no)??null;Nc(f),f&&a.current.parts.selectedPartId!==f&&a.current.parts.select(f)}}},[o,e])}var TC={Hero:"Full-screen opener with rotating slides.",HeroSingle:"Full-screen image or video with a headline.",IntroBleed:"Full-bleed intro image the next section scrolls over.",Collections:"Product collections in a tidy grid.",AlloyWheelsListing:"A full product-listing page: filter rail, sortable card grid and pagination, from the live catalog. Choose which product types it shows.",CatalogFilterBar:"Filters the collection grids below it \u2014 a sticky row of Pills (the default), or Columns, one per filter you switch on.",ProductGrid:"Hand-picked products in a tidy grid.",FitmentFinder:"A vehicle picker \u2014 make, model, year and trim resolve the OEM stock fitment live.",Gallery:"Two image galleries with tabs and filters.",GalleryB:"Customer photos in a card grid with a click-to-open lightbox.",SpecStrip:"A thin one-line spec strip \u2014 small-caps items spread across the width, as a dark band or a bare hairline row.",ProductHero:"A product hero \u2014 image beside price, bullets and a buy button.",SpecTable:"A spec sheet \u2014 labeled rows of product specifications.",ProcessSteps:"A heading over columns of image, title, blurb and specs.",DetailRows:"Repeating full-width rows \u2014 eyebrow, title and copy beside a numbered close-up image, alternating sides each row.",FitmentTable:"A fitment table \u2014 per-size bolt patterns, offsets and load ratings, filterable by diameter.",CompatibleTyres:"The current product's compatible tyres \u2014 image, size, key specs and price per tyre, with an inquiry link. Display only.",RelatedProducts:"The current product's related items in a tidy row \u2014 the product page's built-in 'Pair with' cross-sell.",OrderSummary:"A display order-summary panel \u2014 items, totals and a note.",DeliveryOptions:"Delivery tiers as cards \u2014 name, window and price, one highlighted.",PaymentBadges:"A payment-methods trust strip with reassurance lines.",CheckoutCTA:"A centered 'ready to order?' headline with the checkout button.",Manifesto:"A bold brand statement beside a full-height image, with a stat strip.",ParagraphsA:"An editorial text panel with a stat strip and founders' note.",StatsParagraph:"An editorial heading and paragraph over a row of theme-color-accented stat cards.",Chart:"A titled chart \u2014 bars, line or donut \u2014 drawn from your own labeled data points.",Mockup:"A headline beside a stylized product-UI mockup card \u2014 spec sheet, fitment, portal, kanban and more.",Prose:"A plain editorial text section \u2014 eyebrow, heading and body copy.",Timeline:"An editorial aside beside a rail-marked timeline of dated entries.",TimelineTrack:"A horizontal year track of milestones \u2014 company history or roadmap.",Footprint:"A world map of your locations with a legend \u2014 designed here, sold worldwide.",TitleWithButtons:"A big headline beside a stack of call-to-action buttons.",Split:"Side-by-side image and text in two columns.",Cards:"A heading over a grid of free-text title-and-blurb cards.",FAQ:"A frequently-asked-questions accordion with a header.",Testimonials:"Customer quotes in a grid \u2014 the quote, a name and a role.",Masthead:"A journal issue header with a lead statement and contents.",Breadcrumb:"A slim trail showing where the reader is (Home / Journal\u2026).",CategoryBar:"A sticky row of category tabs with counts and links.",FeaturedCover:"A featured article \u2014 big cover image beside a headline and dek.",LongRead:"A long-form article spread with a pull-quote and cover image.",Series:"A section heading over a grid of column cards.",Subscribe:"A newsletter signup beside a list of recent issues.",SubscribeBlogs:"A newsletter signup beside your latest blog posts, pulled live.",Events:"Latest journal posts in a three-card row.",DocMasthead:"A document header \u2014 headline, metadata and standfirst.",DocTabs:"A sticky tab bar to switch between documents.",DocBody:"Long-form document body with an 'On this page' contents list.",DocMetaCards:"A three-up meta strip for the foot of a document.",Banner:"Wide promo strip with background image.",Stats:"Highlight key numbers \u2014 years, designs.",Countdown:"Hours, minutes and seconds to a set date and time, then one line.",KeyFeatures:"A theme-color chip and heading over a grid of short feature labels.",Logos:"A row of partner or brand logos.",Ticker:"A scrolling marquee of short phrases, full width.",Reviews:"Approved customer reviews in a star-rated card grid, pulled live.",SubmitBuild:"A 'Show us yours.' headline with a photo-submission form.",ReviewForm:"A write-a-review form \u2014 submissions wait for your approval before they show.",ContactRouting:"Pick who to reach, then a form that routes the message.",ContactLocations:"Your locations as a city gallery plus address and map cards.",SectionHeader:"A numbered section title with optional link.",Grid:"Multi-column container for blocks.",Flex:"An empty section. Add whatever you want inside.",Spacer:"Vertical breathing room between sections.",Divider:"A thin horizontal rule between sections.",CustomHTML:"Drop in your own sanitized HTML.",Heading:"A single heading line.",Text:"A paragraph of body copy.",ImageBlock:"A standalone image, at the width you set.",ButtonBlock:"A call-to-action button."};var h2="Save your page changes first";function FC(e){return e.hasTrustedConsole?e.canCreatePlatformTemplate?!e.capabilities.canPublish||!e.capabilities.hasSiteSettings?{visible:!1,hiddenReason:"not-a-site-page"}:e.siteId?e.hasUnsavedEdits?{visible:!0,enabled:!1,disabledReason:h2}:{visible:!0,enabled:!0}:{visible:!1,hiddenReason:"no-site"}:{visible:!1,hiddenReason:"not-operator"}:{visible:!1,hiddenReason:"no-console"}}var EC="storefront-editor:save-as-template";var g2="plain",PC=[{label:"Plain",value:"plain"},{label:"Filled",value:"filled"},{label:"Line",value:"line"}],b2="line",y2={KeyFeatures:"filled"};function Oa(e){return y2[e]??g2}function Gte(e,o){return Xe(PC,Oa(o),e)}function Ute(e){return Xe(PC,b2,e)}var S2="inline",C2=[{label:"In this section",value:"inline"},{label:"In its own box",value:"own-box"}];var rt={ProductGrid:{num:"num",title:"title",description:"description",headRows:["num","title","titleSize","description","linkText","linkHref"],renderer:"ProductGridSection",padKey:"padTop",linkProp:"link"},TyreSizes:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicTyreSizes"},FitmentFinder:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"FitmentFinder"},TyreFitment:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicTyreFitment"},BundleOffer:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicBundleOffer"},CompatibleTyres:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicRelatedProducts"},RelatedProducts:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"DynamicRelatedProducts"},SpecTable:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"SpecTable"},FAQ:{num:"num",title:"title",linkProp:"link",headRows:["num","title","linkText","linkHref"],renderer:"FAQ"},GalleryB:{num:"num",title:"title",headRows:["num","title","linkText","linkHref"],renderer:"GalleryGrid"},FitmentTable:{num:"num",title:"title",description:"description",headRows:["num","title","description"],renderer:"FitmentTable"},Events:{num:"num",title:"title",linkProp:"link",headRows:["num","title","linkText","linkHref"],renderer:"Events"},ProcessSteps:{num:"num",title:"title",description:"description",headRows:["num","title","description"],headStyle:"editorial",renderer:"ProcessSteps",padKey:"padTop"},LongRead:{num:"headNum",title:"headTitle",description:"headDesc",headRows:["headNum","headTitle","headDesc"],headStyle:"editorial",renderer:"LongRead"},Series:{num:"headNum",title:"headTitle",description:"headDesc",headRows:["headNum","headTitle","headDesc"],headStyle:"editorial",renderer:"Series"},TimelineTrack:{num:"eyebrow",title:"title",description:"intro",headRows:["eyebrow","title","intro"],headStyle:"editorial",renderer:"TimelineTrack",padKey:"padTop"},StatsParagraph:{num:"eyebrow",title:"title",description:"desc",headRows:["eyebrow","title","desc"],headStyle:"editorial",renderer:"StatsParagraph"},Footprint:{num:"sectionNumber",title:"heading",description:"tagline",headRows:["sectionNumber","heading","tagline"],headStyle:"editorial",renderer:"Footprint",padKey:"padTop"},Collections:{num:"eyebrow",title:"heading",headRows:["eyebrow","heading"],renderer:"Collections"},Cards:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Cards"},Testimonials:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Testimonials"},Reviews:{num:"eyebrow",title:"title",headRows:["eyebrow","eyebrowLook","title"],headStyle:"simple",renderer:"Reviews"},Prose:{num:"eyebrow",title:"title",headRows:["eyebrow","title"],headStyle:"essay",renderer:"Prose"},ReviewForm:{num:"eyebrow",title:"title",headRows:["eyebrow","title"],headStyle:"simple",renderer:"ReviewForm"},DeliveryOptions:{num:"eyebrow",title:"title",description:"body",headRows:["eyebrow","title","body"],headStyle:"natural",headRowGap:"gap-3",headDescriptionSize:"text-[15px]",renderer:"DeliveryOptions"}},wr="SectionHeader";function LC(e){return e in rt}function Kte(e){return Xe(C2,S2,e)}var OC=new Set(["Flex"]);function Vte(e){return!!e?.type&&OC.has(e.type)}var v2={not:{context:"parentType",in:[...OC]}};function Yte(e,o,t){return hl(e,t,v2)}var w2={not:{field:"headPlacement",is:"own-box"}};function Xte(e,o,t){return hl(e,t,w2)}function RC(e,{nodeDefaults:o,newNodeId:t,sectionLabel:r,blockIsOffered:a}){let n=as(e);return n?n(o,t):LC(e)&&a(ge)&&a(wr)?{type:ge,props:{...o(ge),id:t(ge),direction:"column",name:`${r(e)} section`,content:[{type:wr,props:{...o(wr),id:t(wr),...rt[e]?.headStyle?{headStyle:rt[e].headStyle}:{},...rt[e]?.headRowGap?{rowGap:rt[e].headRowGap}:{},...rt[e]?.headDescriptionSize?{descriptionSize:rt[e].headDescriptionSize}:{},...Oa(e)!==Oa(wr)?{eyebrowLook:Oa(e)}:{}}},{type:e,props:{...o(e),id:t(e),headPlacement:"own-box"}}]}}:wo[e]?.fixed===!0?{type:e,props:{...o(e),id:t(e),layout:"boxes"}}:null}import{useEffect as k2,useState as T2}from"react";import{useEaselSession as F2}from"efficient-easel/screen/lib/session-context";function AC(){let e=F2().chrome?.products?.list,[o,t]=T2(null);return k2(()=>{if(!e)return;let r=!1;return e().then(a=>{r||t(a)}),()=>{r=!0}},[e]),o}function WC({mode:e,open:o}){let{setSelectedHeroId:t,setSelectHandler:r}=pl(),a=HC().tree,n=e,s=n.kind==="ticker"?n.heroId:null,i=Ra(f=>{f&&(o({kind:"ticker",heroId:f}),z2(f))},[o]);return ko(()=>{t(s)},[s,t]),ko(()=>{r(i)},[r,i]),{partRows:(f,{rowClick:u})=>{let p=String(f.props.id);return f.type==="Hero"&&Se(MC,{icon:Se(Tt,{type:"ticker",size:13}),name:l(ta),onSelect:()=>i(p),selected:s===p,rowProps:{onClick:u(()=>i(p))},words:a})}}}function zC({mode:e,select:o}){let{setSelectedHeroPart:t,setSelectHandler:r}=ml(),a=HC().tree,{appState:n}=M2(x=>x),s=n.data.content??[],i=E2(s);i.current=s;let f=e,u=ra.find(x=>aa[x]===f.kind),p=u&&"nodeId"in f?na(String(f.nodeId),u):null,m=Ra(x=>{let h=$h(x);if(!h)return;let b=i.current.findIndex(k=>String(k.props.id)===h.nodeId);if(b<0)return;let C={kind:aa[h.part],nodeId:h.nodeId};o({index:b},C)},[o]);return ko(()=>{t(p)},[p,t]),ko(()=>{r(m)},[r,m]),{partRows:(x,{rowClick:h})=>{let b=String(x.props.id),C=Uh(x);if(C.length===0)return null;let k=g=>{let y=na(b,g.part);return Se(MC,{icon:Se(Tt,{type:g.part==="media"?"heroMedia":"heroImage",size:13}),name:l(g.label),onSelect:()=>m(y),selected:p===y,rowProps:{onClick:h(()=>m(y))},words:a},y)},[v,...w]=C;return cs(NC,{children:[k(v),w.length>0&&Se(N2,{children:w.map(k)})]})}}}function GC(e,o){return{partRows:(t,r)=>cs(NC,{children:[e.partRows?.(t,r),o.partRows?.(t,r)]})}}function G2(e){let{adapter:o,capabilities:t,currentSlug:r,siteId:a,docId:n,hasUnsavedEdits:s,bridgeCapabilities:i,notifyParent:f,token:u}=Nd(),{hasPreviewLink:p}=t,m=ze(W2()).preview?.draftLink,x=HS(e.data),h=FC({hasTrustedConsole:!!u,canCreatePlatformTemplate:i.canCreatePlatformTemplate,capabilities:t,siteId:a,hasUnsavedEdits:s}),b=Ra(()=>{!a||!r||f(EC,{siteId:a,slug:r})},[f,a,r]),C=PS({pageSlug:r,siteId:a,token:u}),k=o.previewHref?.(r)??C;return{barLead:()=>h.visible&&Se(O2,{side:"bottom",content:h.enabled?l("Save this website as a platform template"):l(h.disabledReason),children:Se("span",{className:"sf-tip-disabled",tabIndex:h.enabled?void 0:0,children:Se(L2,{variant:"secondary",disabled:!h.enabled,onClick:b,rightIcon:Se(D2,{size:15}),children:l("Save as Template")})})}),barTrail:()=>p&&r&&Se(RS,{liveHref:k,pageId:n??null,draftLink:m}),mainAction:x}}function U2(e,o){let{capabilities:t,templateId:r,siteId:a,tokenRef:n,navigate:s}=Nd(),{hasSiteTheme:i,explainsSiteSettings:f}=t,u=v=>o.setView(v),[p,m]=P2(er[0].id),{surface:x,setSurface:h}=Oh(),b=()=>{if(i){u("styles"),o.reveal(),BC();return}e.show(id),e.reveal(),BC()},C={id:"pages",label:l("Pages"),icon:Se(A2,{}),panel:({onHide:v})=>Se(vh,{activeSurface:x,onPreviewSurface:h,onNavigate:w=>{h(null),s(r?{kind:"template",id:r,pageSlug:w}:{kind:"page",slug:w,siteId:a??void 0})},onClose:v})},k=[];return!i&&f&&k.push({id:"appearance",label:l("Appearance"),icon:Se(_2,{}),active:e.kind==="website",onSelect:b}),i&&k.push({id:"styles",label:l("Site styles"),icon:Se(B2,{}),panel:({onHide:v,notify:w})=>Se(Zy,{tokenRef:n,siteId:a??void 0,onClose:v,onNotify:w,tab:p,onTabChange:m})}),{railLead:[C],railTrail:k,resolveLeftView:(v,w)=>lC(v,i,w),openSettings:b,openStyles:()=>{m(ih),u("styles")}}}function $2(e,o,t,r){let{kind:a,open:n}=e,{selected:s,zoneOf:i}=o;ko(()=>{eC(s?.type==="BookingBox"&&s.props.region==="confirm"?oC(i(String(s.props.id))):null)},[s?.props.id]);let f=bS(e,o),{capabilities:{hasSiteSettings:u}}=Nd(),{setSelected:p,setSelectHandler:m}=$(),{chat:x,setChat:h,setSelected:b,setSelectHandler:C}=ul(),k=a==="header";ko(()=>{p(k)},[k,p]),ko(()=>{m(()=>n(sd))},[m,n]);let v=Ra(()=>n(zy),[n]),w=a==="chat";ko(()=>{b(w)},[w,b]),ko(()=>{C(v)},[C,v]);let{setOpenHandler:g}=oa(),y=Ra(()=>n(Gy),[n]);ko(()=>{g(y)},[g,y]);let E=GC(WC(e),zC(e)),F=G2(o),L=U2(e,r),B=t.device;return{...E,...F,...L,hasOwnRows:O=>O.type===Jl,ownRows:f.renderLocationTree,sectionPressed:f.sectionPressed,wrap:O=>Se(Fs.Provider,{value:!0,children:Se(H2.Provider,{value:B,children:O})}),addPanelRow:O=>u?cs("div",{className:"sf-addside-sitewide",children:[Se("span",{className:"sf-addside-sitewide-glyph","aria-hidden":"true",children:Se(Tt,{type:"chat",size:16})}),cs("button",{type:"button",className:"sf-addside-sitewide-name",onClick:()=>{O(),v()},children:[l("Live chat"),Se("span",{className:"sf-addside-sitewide-desc",children:l("A chat bubble on every page")})]}),Se(R2,{checked:x.enabled,onChange:M=>h({enabled:M}),ariaLabel:l("Show the chat bubble on the whole site")})]}):void 0}}var _C=null,Dd=new WeakMap;function q2(e){let o=mu();if(!e||!o)return e;_C!==o&&(_C=o,Dd=new WeakMap);let t=Dd.get(e);return t||(t={...e,choices:e.choices?e.choices.map(r=>({...r,label:l(r.label)})):null,spec:e.spec?{...e.spec,addLabel:l(e.spec.addLabel)}:null},Dd.set(e,t)),t}var j2={isLockedBlock:pC,duplicateBlocked:Gl,nestDepth:(e,o,t)=>o===Va?Ku(e,t):0,newSectionNode:RC,canAddTo:(e,o)=>q2(JS(e,o)),blockIsOffered:QS},K2=new Proxy(TC,{get:(e,o)=>{let t=Reflect.get(e,o);return typeof t=="string"?l(t):t}}),V2={labelAtLevel:(e,o,t)=>l(Td(e,o,t)),descriptions:K2,categoryLabel:e=>{let o=GS(e);return o===void 0?void 0:l(o)},firstSection:US,blockRowName:tC,plainText:It,Icon:Tt,Thumbnail:Xy,useProducts:AC},Y2={desktop:2e3,tablet:800,mobile:390},DC="desktop",X2={options:Fh,initial:DC,fluid:DC,widths:Y2},Z2={read:aC,write:e=>nC(e),forSelection:(e,o)=>sC(e,o)},Q2={first:je,last:pe,firstGroup:_e,lastGroup:de,isSectionGroup:mr,sectionGroupZone:ey,panelOf:e=>e===je?sd:null,get groupTab(){return vr()?ly:void 0},get groupBadge(){return vr()?sy():void 0},get changeNotice(){return vr()?iy():void 0},get band(){return vr()?J2:void 0},get groupAccepts(){return vr()?ay:void 0}},J2={foldable:!0};function eH(e){return{...GC(WC(e),zC(e)),openSettings:()=>e.show(id)}}var fae={useOwnerName:or,useDocumentLabel:mh,useBridges:$2,useStandaloneBridges:eH,useDocumentPass:wS,blockRules:j2,blockLook:V2,devices:X2,leftView:Z2,pinned:Q2,Canvas:kC,Inspector:$y};export{jee as a,Kee as b,Vee as c,Yee as d,tt as e,Fd as f,uoe as g,ze as h,Ep as i,$S as j,xoe as k,CK as l,Fg as m,EK as n,Ag as o,PK as p,Bg as q,Dg as r,Hg as s,Wg as t,zK as u,GK as v,UK as w,$K as x,aB as y,Qu as z,eV as A,qa as B,Vv as C,F5 as D,ut as E,E5 as F,P5 as G,Va as H,Ku as I,woe as J,koe as K,BM as L,Uu as M,$v as N,b5 as O,$a as P,$u as Q,qv as R,jv as S,Kv as T,C5 as U,v5 as V,w5 as W,k5 as X,qf as Y,MO as Z,HO as _,WO as $,hl as aa,gl as ba,Tq as ca,_e as da,de as ea,gZ as fa,oy as ga,ty as ha,Xe as ia,rt as ja,Kte as ka,Vte as la,Yte as ma,Xte as na,af as oa,p3 as pa,m3 as qa,Ks as ra,It as sa,_r as ta,Xn as ua,no as va,qe as wa,e7 as xa,U1 as ya,$1 as za,o7 as Aa,Zt as Ba,t7 as Ca,r7 as Da,xf as Ea,HI as Fa,Jn as Ga,c7 as Ha,d7 as Ia,u7 as Ja,p7 as Ka,EP as La,la as Ma,ug as Na,pg as Oa,vl as Pa,Gj as Qa,Uj as Ra,$j as Sa,qj as Ta,$H as Ua,VH as Va,YH as Wa,XH as Xa,ye as Ya,p0 as Za,Ti as _a,m0 as $a,qW as ab,KW as bb,VW as cb,I0 as db,YW as eb,Ym as fb,Pi as gb,Li as hb,rz as ib,nz as jb,lz as kb,sz as lb,iz as mb,$t as nb,Ro as ob,Bi as pb,Jm as qb,C0 as rb,_i as sb,Sn as tb,dz as ub,sn as vb,em as wb,Mr as xb,rm as yb,H6 as zb,IT as Ab,W6 as Bb,Ya as Cb,ep as Db,G5 as Eb,U5 as Fb,hw as Gb,$5 as Hb,K5 as Ib,tp as Jb,V5 as Kb,bw as Lb,Y5 as Mb,MT as Nb,dn as Ob,uW as Pb,Ii as Qb,pW as Rb,qT as Sb,mW as Tb,IW as Ub,hW as Vb,FW as Wb,EW as Xb,PW as Yb,xm as Zb,sW as _b,iW as $b,fW as ac,cW as bc,XT as cc,pn as dc,bW as ec,wm as fc,oH as gc,V as hc,l as ic,ft as jc,Ab as kc,Cl as lc,KY as mc,Ob as nc,K4 as oc,nn as pc,Up as qc,Y4 as rc,$p as sc,lT as tc,w6 as uc,Zp as vc,p5 as wc,h5 as xc,Ds as yc,dw as zc,M5 as Ac,Q5 as Bc,Qs as Cc,Js as Dc,Q3 as Ec,J3 as Fc,Tp as Gc,e4 as Hc,o4 as Ic,t4 as Jc,Rp as Kc,Bp as Lc,O6 as Mc,Jp as Nc,Pe as Oc,hu as Pc,nH as Qc,YC as Rc,lH as Sc,sH as Tc,bu as Uc,cH as Vc,XC as Wc,dH as Xc,uH as Yc,QC as Zc,xH as _c,JC as $c,IH as ad,Nt as bd,gH as cd,bH as dd,yH as ed,SH as fd,Wa as gd,CH as hd,tv as id,PH as jd,wu as kd,av as ld,nv as md,lv as nd,iv as od,fv as pd,cv as qd,ws as rd,LH as sd,FT as td,nW as ud,SW as vd,CW as wd,vW as xd,wW as yd,kW as zd,Dm as Ad,f0 as Bd,OW as Cd,Bm as Dd,_m as Ed,RW as Fd,xn as Gd,In as Hd,BW as Id,Ut as Jd,gn as Kd,NW as Ld,MW as Md,HW as Nd,qm as Od,zW as Pd,Zo as Qd,_o as Rd,zi as Sd,yo as Td,SG as Ud,CG as Vd,vG as Wd,wG as Xd,EG as Yd,PG as Zd,NF as _d,LG as $d,OG as ae,RG as be,GF as ce,AG as de,BG as ee,_G as fe,Oe as ge,DG as he,qF as ie,NG as je,MG as ke,Vt as le,HG as me,Fn as ne,qt as oe,WG as pe,Bx as qe,Ln as re,On as se,zG as te,GG as ue,UG as ve,$G as we,qG as xe,jG as ye,KG as ze,VG as Ae,YG as Be,XG as Ce,ZG as De,QG as Ee,Rn as Fe,An as Ge,Bn as He,qi as Ie,_n as Je,JG as Ke,St as Le,eU as Me,oU as Ne,tU as Oe,rU as Pe,aU as Qe,nU as Re,lU as Se,sU as Te,Xo as Ue,iU as Ve,fU as We,Dn as Xe,cU as Ye,ji as Ze,dU as _e,uU as $e,Ki as af,pU as bf,zx as cf,Gx as df,Ux as ef,mU as ff,OE as gf,xU as hf,IU as if,jD as jf,by as kf,Ze as lf,Ca as mf,YD as nf,wy as of,oQ as pf,tQ as qf,rQ as rf,aQ as sf,nQ as tf,lQ as uf,sQ as vf,iQ as wf,fQ as xf,cQ as yf,dQ as zf,xl as Af,TO as Bf,mq as Cf,xq as Df,LO as Ef,RO as Ff,Rh as Gf,DO as Hf,yq as If,Sq as Jf,Bh as Kf,Cq as Lf,Dh as Mf,_h as Nf,Aq as Of,dl as Pf,q8 as Qf,j8 as Rf,ul as Sf,gO as Tf,tq as Uf,oa as Vf,lq as Wf,Oh as Xf,_ee as Yf,Dee as Zf,Nee as _f,Mee as $f,Yoe as ag,Xoe as bg,Qoe as cg,fq as dg,uq as eg,ml as fg,EJ as gg,Qy as hg,Jy as ig,zH as jg,b7 as kg,y7 as lg,S7 as mg,C7 as ng,Bf as og,_f as pg,Hh as qg,_q as rg,Wh as sg,UO as tg,jf as ug,Hq as vg,Wq as wg,$O as xg,zq as yg,na as zg,$h as Ag,Gq as Bg,qh as Cg,yj as Dg,Qh as Eg,gc as Fg,bc as Gg,cA as Hg,dA as Ig,yc as Jg,mA as Kg,fa as Lg,kl as Mg,Qj as Ng,kc as Og,sK as Pg,iK as Qg,fK as Rg,wg as Sg,dB as Tg,uB as Ug,pB as Vg,sV as Wg,iV as Xg,yB as Yg,CB as Zg,eb as _g,IV as $g,hV as ah,sb as bh,vV as ch,pa as dh,cb as eh,Oc as fh,db as gh,ub as hh,EV as ih,pb as jh,NB as kh,PV as lh,LV as mh,OV as nh,RV as oh,MB as ph,AV as qh,BV as rh,_V as sh,WB as th,DV as uh,UB as vh,NV as wh,Ac as xh,lY as yh,_l as zh,oX as Ah,R_ as Bh,Mb as Ch,A_ as Dh,ga as Eh,B_ as Fh,__ as Gh,iX as Hh,Ub as Ih,pe as Jh,zl as Kh,io as Lh,rS as Mh,aS as Nh,RJ as Oh,Fa as Ph,nS as Qh,lS as Rh,_J as Sh,DJ as Th,JJ as Uh,kS as Vh,yd as Wh,TS as Xh,JS as Yh,Goe as Zh,ss as _h,$M as $h,qM as ai,nte as bi,BH as ci,MH as di,g2 as ei,PC as fi,b2 as gi,Oa as hi,Gte as ii,Ute as ji,fae as ki};
|