{"version":3,"file":"SubjectGrid.BVCImQgp.mjs","names":["React.useRef","React.useState","_Fragment","React.useMemo","React.useId","React.useLayoutEffect","React.useEffect"],"sources":["https:/framerusercontent.com/modules/RJfBWKbK4DMfVOOcOgRG/hk9I4D57V6A5AOktK6AP/SubjectGrid.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType,RenderTarget}from\"framer\";// @ts-ignore: useRouter ships without types and must be its own import line\nimport{useRouter}from\"framer\";import{AnimatePresence,motion,useReducedMotion}from\"framer-motion\";// ---------- Tokens ----------\nconst SANS=\"Inter, -apple-system, system-ui, sans-serif\";const SERIF=\"Merriweather, Georgia, serif\";const MONO=\"'IBM Plex Mono', 'JetBrains Mono', ui-monospace, Menlo, monospace\";const SCALE={desktop:1,tablet:.8,mobile:.6};const fit=(size,bp)=>Math.round(size<=16?size:16+(size-16)*SCALE[bp]);// Soft placeholder tints so the layout reads well on canvas before photos are added\nconst TINTS=[\"#EFE9FB\",\"#FBF6E3\",\"#E7F0FA\",\"#F1EFEA\",\"#FBEDEA\"];const RATIOS=[\"1/1\",\"4/5\",\"4/3\",\"3/2\",\"16/10\",\"16/9\",\"2/1\",\"16/7\"];const RATIO_TITLES=[\"1:1\",\"4:5\",\"4:3\",\"3:2\",\"16:10\",\"16:9\",\"2:1\",\"16:7\"];const DEFAULTS={content:{eyebrow:\"\",title:\"Explore\",accent:\"by Subject\",body:\"\",headingSize:48,showHeader:true,showButton:true,ctaLabel:\"Browse All Camps\",ctaLink:\"/\"},accordion:{courseStyle:\"compact\",showFirst:6,showFirstMobile:4,oneOpen:true,openFirst:false,mobileRow:\"stacked\",descriptions:true,seeLabel:\"See courses\",hideLabel:\"Hide courses\",showAllLabel:\"Show all courses\",showLessLabel:\"Show fewer\",readMoreLabel:\"Read more\",readLessLabel:\"Read less\",emptyLabel:\"No courses listed yet.\",duration:.35},images:{gridRatio:\"16/10\",gridRatioMobile:\"16/7\",rowWidth:220,rowRatio:\"3/2\",rowRatioMobile:\"2/1\",thumbs:true,thumbRatio:\"1/1\",courseRatio:\"16/10\"},colors:{heading:\"#111111\",text:\"#111111\",muted:\"#6B6B6B\",card:\"#FFFFFF\",border:\"#C9C9C9\",divider:\"#E6E6E6\",eyebrow:\"#C8B0F6\",eyebrowBorder:\"#5B2FC9\",button:\"#111111\",buttonText:\"#FFFFFF\"}};// ---------- Helpers ----------\nfunction merge(base,over){const out={...base};if(over){for(const k in over)if(over[k]!==undefined)out[k]=over[k];}return out;}// Bulk import fields (older instances): a JSON array, plain or URL-encoded\nfunction parseArrayJSON(value){if(!value||!value.trim())return null;try{const t=value.trim();const parsed=JSON.parse(t.startsWith(\"[\")?t:decodeURIComponent(t));return Array.isArray(parsed)&&parsed.length>0?parsed:null;}catch{return null;}}const srcOf=image=>typeof image===\"string\"?image||undefined:image?.src||undefined;const has=v=>v!==undefined&&v!==null&&v!==\"\";// Course \"Subject\" matches a subject title regardless of case and spacing\nconst norm=s=>String(s||\"\").trim().toLowerCase().replace(/\\s+/g,\" \");const ratioNum=r=>{const[w,h]=String(r).split(\"/\").map(Number);return w>0&&h>0?w/h:1.5;};// Panel entries override the JSON entry with the same name, field by field.\n// Empty panel fields fall back to the JSON.\nfunction overlay(json,panel){const list=Array.isArray(panel)?panel:[];if(!json)return list;const key=x=>norm(x?.title||x?.subject);const filled=(k,v)=>k===\"image\"?!!srcOf(v):has(v)&&!(k===\"badge\"&&v===\"none\");const used=new Set;const merged=json.map(j=>{const p=list.find(x=>key(x)&&key(x)===key(j));if(!p)return j;used.add(p);const out={...j};for(const k in p)if(filled(k,p[k]))out[k]=p[k];return out;});return[...merged,...list.filter(x=>!used.has(x)&&key(x))];}const programsOf=s=>[1,2,3,4,5].map(n=>({name:s[`p${n}`],link:s[`p${n}Link`]})).filter(p=>p.name);function badgeStyle(badge){if(badge===\"popular\")return{label:\"POPULAR\",bg:\"#F5D06B\",ink:\"#111111\"};if(badge===\"new\")return{label:\"NEW\",bg:\"#1F7A4D\",ink:\"#FFFFFF\"};if(badge===\"full\")return{label:\"CLASS FULL\",bg:\"#C8362B\",ink:\"#FFFFFF\"};return null;}// ---------- Parts ----------\nfunction Arrow({color}){return /*#__PURE__*/_jsx(\"svg\",{width:\"14\",height:\"14\",viewBox:\"0 0 24 24\",fill:\"none\",\"aria-hidden\":true,style:{display:\"block\",flexShrink:0},children:/*#__PURE__*/_jsx(\"path\",{d:\"M5 12h13M13 6l6 6-6 6\",stroke:color,strokeWidth:\"2.2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}function Chevron({open,color}){return /*#__PURE__*/_jsx(\"svg\",{width:\"18\",height:\"18\",viewBox:\"0 0 24 24\",fill:\"none\",\"aria-hidden\":true,style:{display:\"block\",transform:open?\"rotate(180deg)\":\"rotate(0deg)\",transition:\"transform 0.2s ease\"},children:/*#__PURE__*/_jsx(\"path\",{d:\"M6 9l6 6 6-6\",stroke:color,strokeWidth:\"2\",strokeLinecap:\"round\",strokeLinejoin:\"round\"})});}function Photo({image,tint,style}){const src=srcOf(image);return /*#__PURE__*/_jsx(\"div\",{style:{position:\"relative\",overflow:\"hidden\",background:tint,...style},children:src&&/*#__PURE__*/_jsx(\"img\",{src:src,srcSet:typeof image===\"object\"?image?.srcSet:undefined,alt:typeof image===\"object\"&&image?.alt||\"\",draggable:false,style:{position:\"absolute\",inset:0,width:\"100%\",height:\"100%\",objectFit:\"cover\"}})});}function Badge({badge,small}){const b=badgeStyle(badge);if(!b)return null;return /*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-flex\",alignItems:\"center\",background:b.bg,color:b.ink,fontSize:small?10:10.5,fontWeight:700,letterSpacing:\"0.06em\",lineHeight:1,padding:small?\"4px 8px\":\"6px 10px\",borderRadius:999,whiteSpace:\"nowrap\"},children:b.label});}function ProgramLink({name,link,colors}){const Tag=link?motion.a:\"div\";return /*#__PURE__*/_jsx(\"li\",{style:{borderTop:`1px solid ${colors.divider}`},children:/*#__PURE__*/_jsxs(Tag,{href:link||undefined,initial:\"rest\",animate:\"rest\",whileHover:link?\"hover\":undefined,style:{display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",gap:12,minHeight:46,padding:\"11px 0\",color:colors.text,textDecoration:\"none\",fontSize:15,fontWeight:500,lineHeight:1.35,cursor:link?\"pointer\":\"default\"},children:[/*#__PURE__*/_jsx(motion.span,{variants:{rest:{textDecorationColor:\"rgba(0,0,0,0)\"},hover:{textDecorationColor:colors.text}},style:{textDecorationLine:\"underline\",textUnderlineOffset:4,textDecorationThickness:1},children:name}),link&&/*#__PURE__*/_jsx(motion.span,{variants:{rest:{x:0,opacity:.45},hover:{x:3,opacity:1}},transition:{duration:.2},style:{display:\"flex\"},children:/*#__PURE__*/_jsx(Arrow,{color:colors.text})})]})});}function SubjectCard({subject,index,width,bp,colors,images}){const programs=programsOf(subject);const isM=bp===\"mobile\";return /*#__PURE__*/_jsxs(\"article\",{style:{flex:`0 0 ${width}`,width,display:\"flex\",flexDirection:\"column\",padding:isM?16:20,borderRadius:26,border:`1px solid ${colors.border}`,background:colors.card,boxSizing:\"border-box\",minWidth:0},children:[/*#__PURE__*/_jsx(Photo,{image:subject.image,tint:TINTS[index%TINTS.length],style:{width:\"100%\",aspectRatio:isM?images.gridRatioMobile:images.gridRatio,borderRadius:18}}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:isM?\"18px 4px 0\":\"22px 4px 0\",display:\"flex\",flexDirection:\"column\",gap:6},children:[/*#__PURE__*/_jsx(\"h3\",{style:{margin:0,fontSize:fit(22,bp),fontWeight:700,lineHeight:1.2,letterSpacing:\"-0.01em\",color:colors.text},children:subject.title}),subject.audience&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:15,lineHeight:1.5,color:colors.muted},children:subject.audience})]}),programs.length>0&&/*#__PURE__*/_jsx(\"ul\",{style:{margin:\"18px 4px 0\",padding:0,listStyle:\"none\",display:\"flex\",flexDirection:\"column\"},children:programs.map((p,i)=>/*#__PURE__*/_jsx(ProgramLink,{name:p.name,link:p.link,colors:colors},i))})]});}const useIsoLayoutEffect=typeof window!==\"undefined\"?React.useLayoutEffect:React.useEffect;// Description cut to N lines with an inline \"Read more\" that expands in place.\n// The cut point is measured in the browser, so it is exact at any width.\nfunction ExpandableText({text,lines,style,linkColor,more,less}){const boxRef=React.useRef(null);const probeRef=React.useRef(null);const[cut,setCut]=React.useState(-1)// -1 = fits, no button\n;const[open,setOpen]=React.useState(false);const measure=()=>{const probe=probeRef.current;if(!probe)return;const lh=parseFloat(getComputedStyle(probe).lineHeight)||20;const limit=lh*lines+2;probe.textContent=text;if(probe.offsetHeight<=limit)return setCut(-1);const fits=n=>{probe.textContent=text.slice(0,n).trimEnd()+\"… \"+more;return probe.offsetHeight<=limit;};let lo=0;let hi=text.length;while(lo<hi){const mid=Math.ceil((lo+hi)/2);if(fits(mid))lo=mid;else hi=mid-1;}const space=text.lastIndexOf(\" \",lo);setCut(space>lo-20&&space>0?space:lo);};useIsoLayoutEffect(()=>{measure();const el=boxRef.current;if(!el||typeof ResizeObserver===\"undefined\")return;const ro=new ResizeObserver(measure);ro.observe(el);document.fonts?.ready?.then(measure);return()=>ro.disconnect();},[text,lines,more]);const clamped=cut>=0&&!open;return /*#__PURE__*/_jsxs(\"div\",{ref:boxRef,style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(\"p\",{ref:probeRef,\"aria-hidden\":true,style:{...style,margin:0,position:\"absolute\",inset:\"0 0 auto 0\",visibility:\"hidden\",pointerEvents:\"none\"}}),/*#__PURE__*/_jsxs(\"p\",{style:{...style,margin:0},children:[clamped?text.slice(0,cut).trimEnd().replace(/[.,;:]+$/,\"\")+\"…\":text,cut>=0&&/*#__PURE__*/_jsxs(_Fragment,{children:[\" \",/*#__PURE__*/_jsx(\"button\",{type:\"button\",\"aria-expanded\":open,onClick:e=>{// Sits above the row link: expand, don't navigate\ne.preventDefault();e.stopPropagation();setOpen(o=>!o);},style:{...style,position:\"relative\",zIndex:2,display:\"inline\",margin:0,padding:0,border:\"none\",background:\"none\",color:linkColor,cursor:\"pointer\",textDecoration:\"underline\",textUnderlineOffset:3,textDecorationThickness:1},children:open?less:more})]})]})]});}// Compact course: one scannable row. The whole row is the link, with the\n// description's \"Read more\" sitting above it.\nfunction CourseRow({course,index,bp,colors,images,acc}){const isM=bp===\"mobile\";const link=course.link;const full=course.badge===\"full\";const thumbW=isM?56:64;const showDesc=acc.descriptions&&course.description;return /*#__PURE__*/_jsx(\"li\",{style:{borderTop:`1px solid ${colors.divider}`,minWidth:0},children:/*#__PURE__*/_jsxs(motion.div,{initial:\"rest\",animate:\"rest\",whileHover:link?\"hover\":undefined,style:{position:\"relative\",display:\"flex\",alignItems:showDesc?\"flex-start\":\"center\",gap:isM?12:16,minHeight:56,padding:\"12px 0\",color:colors.text,cursor:link?\"pointer\":\"default\"},children:[link&&/*#__PURE__*/_jsx(\"a\",{href:link,\"aria-label\":course.title||\"Course\",style:{position:\"absolute\",inset:0,zIndex:1}}),images.thumbs&&/*#__PURE__*/_jsx(Photo,{image:course.image,tint:TINTS[index%TINTS.length],style:{flex:`0 0 ${thumbW}px`,width:thumbW,aspectRatio:images.thumbRatio,borderRadius:12,opacity:full?.6:1}}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0,display:\"flex\",flexDirection:\"column\",gap:4},children:[/*#__PURE__*/_jsxs(motion.span,{variants:{rest:{textDecorationColor:\"rgba(0,0,0,0)\"},hover:{textDecorationColor:colors.text}},style:{display:\"-webkit-box\",WebkitLineClamp:2,WebkitBoxOrient:\"vertical\",overflow:\"hidden\",fontSize:isM?15:16,fontWeight:600,lineHeight:1.3,color:full?colors.muted:colors.text,textDecorationLine:\"underline\",textUnderlineOffset:4,textDecorationThickness:1},children:[course.title||\"Course\",badgeStyle(course.badge)&&/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-flex\",verticalAlign:\"middle\",marginLeft:8,marginTop:-2},children:/*#__PURE__*/_jsx(Badge,{badge:course.badge,small:true})})]}),(course.price||course.format)&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",flexWrap:\"wrap\",gap:8,fontSize:13.5,lineHeight:1.4,color:colors.muted},children:[course.price&&/*#__PURE__*/_jsx(\"span\",{style:{color:colors.text,fontWeight:600},children:course.price}),course.price&&course.format&&/*#__PURE__*/_jsx(\"span\",{\"aria-hidden\":true,children:\"\\xb7\"}),course.format&&/*#__PURE__*/_jsx(\"span\",{children:course.format})]}),showDesc&&/*#__PURE__*/_jsx(ExpandableText,{text:String(course.description),lines:2,more:acc.readMoreLabel,less:acc.readLessLabel,linkColor:colors.text,style:{fontFamily:SANS,fontSize:13.5,lineHeight:1.5,color:colors.muted}})]}),link&&/*#__PURE__*/_jsx(motion.span,{variants:{rest:{x:0,opacity:.45},hover:{x:3,opacity:1}},transition:{duration:.2},style:{display:\"flex\",flexShrink:0,alignSelf:\"center\"},children:/*#__PURE__*/_jsx(Arrow,{color:colors.text})})]})});}// Card course: the original expanded card, now with a link and image ratio\nfunction CourseCardItem({course,index,colors,images}){const link=course.link;const Tag=link?\"a\":\"article\";return /*#__PURE__*/_jsxs(Tag,{href:link||undefined,style:{border:`1px solid ${colors.border}`,borderRadius:24,background:colors.card,overflow:\"hidden\",display:\"flex\",flexDirection:\"column\",color:colors.text,textDecoration:\"none\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{position:\"relative\"},children:[/*#__PURE__*/_jsx(Photo,{image:course.image,tint:TINTS[index%TINTS.length],style:{width:\"100%\",aspectRatio:images.courseRatio}}),badgeStyle(course.badge)&&/*#__PURE__*/_jsx(\"span\",{style:{position:\"absolute\",top:12,left:12},children:/*#__PURE__*/_jsx(Badge,{badge:course.badge})})]}),/*#__PURE__*/_jsxs(\"div\",{style:{padding:18,display:\"flex\",flexDirection:\"column\",gap:10},children:[/*#__PURE__*/_jsx(\"h4\",{style:{margin:0,fontSize:20,lineHeight:1.25,fontWeight:700,color:colors.text},children:course.title||\"Course\"}),(course.price||course.format)&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:10,flexWrap:\"wrap\",color:colors.muted,fontSize:14,lineHeight:1.4},children:[course.price&&/*#__PURE__*/_jsx(\"span\",{style:{color:colors.text,fontWeight:600},children:course.price}),course.format&&/*#__PURE__*/_jsx(\"span\",{children:course.format})]}),course.description&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,color:colors.muted,fontSize:14,lineHeight:1.55},children:course.description})]})]});}// ---------- Links ----------\n// Internal links (pages and #sections picked in Framer's Link control) go\n// through Framer's router, so they work in preview and on the live site.\n// External links, new-tab links and modifier clicks behave like normal links.\nfunction linkPath(p){return(\"/\"+p.replace(/^\\.?\\//,\"\")).replace(/\\/+$/,\"\")||\"/\";}function safeDecode(s){try{return decodeURIComponent(s);}catch{return s;}}// Find the route for a path, including CMS pages like /courses/:slug\nfunction matchRoute(routes,path){if(!routes||typeof routes!==\"object\")return null;const target=linkPath(path);for(const[id,route]of Object.entries(routes)){const p=route?.path;if(typeof p!==\"string\")continue;if(linkPath(p)===target)return{id,vars:{}};if(p.includes(\":\")){const names=[];const re=new RegExp(\"^\"+linkPath(p).replace(/:([A-Za-z0-9_]+)/g,(_,n)=>(names.push(n),\"([^/]+)\"))+\"$\");const m=target.match(re);if(m)return{id,vars:Object.fromEntries(names.map((n,i)=>[n,safeDecode(m[i+1])]))};}}return null;}function scrollToId(id){if(!id)return false;const el=document.getElementById(id)||document.querySelector(`[data-framer-name=\"${id.replace(/\"/g,'\\\\\"')}\"]`);if(!el)return false;el.scrollIntoView({behavior:\"smooth\",block:\"start\"});return true;}// After a page change the section may not exist yet, so wait for it briefly\nfunction scrollWhenReady(id){let tries=0;const t=setInterval(()=>{if(scrollToId(id)||++tries>30)clearInterval(t);},100);}// Returns true when the link was handled here\nfunction followLink(router,raw){let d=String(raw||\"\").trim();if(!d)return false;const routes=router?.routes;let routeId=\"\";let vars={};let hash=\"\";if(d.startsWith(\"data:framer/page-link,\")){const[before,h=\"\"]=d.slice(22).split(\"#\");const[id,query=\"\"]=before.split(\"?\");routeId=id;hash=h;new URLSearchParams(query).forEach((v,k)=>vars[k]=v);}else{if(/^[a-z][a-z0-9+.-]*:/i.test(d)||d.startsWith(\"//\")){// Absolute links only count when they point at this same site\ntry{const u=new URL(d,window.location.href);if(u.origin!==window.location.origin)return false;d=u.pathname+u.hash;}catch{return false;}}const[before,h=\"\"]=d.split(\"#\");hash=h;if(!before)return scrollToId(safeDecode(hash).replace(/^:/,\"\"));const m=matchRoute(routes,before.split(\"?\")[0]);if(!m)return false;routeId=m.id;vars=m.vars;}hash=safeDecode(hash).replace(/^:/,\"\");hash=routes?.[routeId]?.elements?.[hash]||hash;// Same page: just scroll to the section\nif(hash&&routeId===router?.currentRouteId&&scrollToId(hash))return true;if(typeof router?.navigate!==\"function\")return false;router.navigate(routeId,hash,vars);if(hash)scrollWhenReady(hash);return true;}// One click handler on the component's root catches every link inside it\nfunction useLinkRouting(){let router=null;try{router=useRouter();}catch{}return e=>{if(e.defaultPrevented||e.button!==0)return;if(e.metaKey||e.ctrlKey||e.shiftKey||e.altKey)return;const a=e.target?.closest?.(\"a[href]\");if(!a||a.target&&a.target!==\"_self\")return;if(a.hasAttribute(\"download\"))return;if(followLink(router,a.getAttribute(\"href\")||\"\"))e.preventDefault();};}// ---------- Component ----------\n/**\n * @framerSupportedLayoutWidth any-prefer-fixed\n * @framerSupportedLayoutHeight auto\n */export default function SubjectGrid(props){const followLinks=useLinkRouting();const reduce=useReducedMotion();const canvas=RenderTarget.current()===RenderTarget.canvas;// Older instances stored some settings as loose fields; they still apply\nconst content=merge(DEFAULTS.content,props.content);const acc=merge(merge(DEFAULTS.accordion,{seeLabel:props.accSeeCoursesLabel||undefined,hideLabel:props.accHideCoursesLabel||undefined,duration:props.accAnimationDuration}),props.accordion);const images=merge(merge(DEFAULTS.images,{rowWidth:props.accImageWidthDesktop}),props.images);const colors=merge(DEFAULTS.colors,props.colors);const showHeader=content.showHeader&&!props.hideHeadingAndCTA;const showButton=content.showButton&&!props.hideHeadingAndCTA;const openFirst=acc.openFirst||!!props.previewOpenFirst;const bp=props.variant||\"desktop\";const isM=bp===\"mobile\";const accordion=props.layoutMode===\"accordion\";// ---------- Data ----------\nconst subjectsSource=overlay(parseArrayJSON(props.subjectsData),props.subjects);const subjects=subjectsSource.map(s=>({...s,title:s?.title||s?.subject||\"\",audience:s?.audience||s?.whoItSFor||\"\"})).filter(s=>s.title);const coursesSource=overlay(parseArrayJSON(props.coursesData),props.courses);const courses=coursesSource.map((c,i)=>{// Older image fields (Course Image 1-16, Course Images) still win when set\nconst legacy=has(props[`courseImage${i+1}`])?props[`courseImage${i+1}`]:props.courseImages?.[i];return{...c,image:has(legacy)?legacy:c?.image};});const coursesBySubject=React.useMemo(()=>{const map=new Map;for(const c of courses){const k=norm(c?.category);if(!k)continue;map.set(k,[...map.get(k)||[],c]);}return map;},[courses]);// ---------- Accordion state ----------\nconst keyOf=(s,i)=>s.title||`subject-${i}`;const firstKey=subjects[0]?keyOf(subjects[0],0):\"\";const[openRows,setOpenRows]=React.useState(()=>openFirst&&firstKey?{[firstKey]:true}:{});const[showAll,setShowAll]=React.useState({});React.useEffect(()=>{if(openFirst&&firstKey)setOpenRows({[firstKey]:true});},[openFirst,firstKey]);// When a row above collapses, the tapped row can end up off screen.\n// Bring it back into view once the animation settles.\nconst rowRefs=React.useRef({});const keepInView=key=>{if(canvas||typeof window===\"undefined\")return;const wait=(reduce?0:acc.duration)*1e3+40;setTimeout(()=>{const el=rowRefs.current[key];if(!el)return;const top=el.getBoundingClientRect().top;if(top<0)window.scrollBy({top:top-80,behavior:reduce?\"auto\":\"smooth\"});},wait);};const toggleRow=key=>{setOpenRows(prev=>{const next=acc.oneOpen?{}:{...prev};next[key]=!prev[key];return next;});keepInView(key);};const toggleAll=key=>{setShowAll(prev=>({...prev,[key]:!prev[key]}));if(showAll[key])keepInView(key);};const idPrefix=React.useId();// ---------- Layout ----------\nconst cols=bp===\"desktop\"?3:bp===\"tablet\"?2:1;const gap=isM?16:24;const cardWidth=`calc((100% - ${(cols-1)*gap}px) / ${cols})`;const limit=Math.max(0,Math.round(isM?acc.showFirstMobile:acc.showFirst)||0);const compact=acc.courseStyle!==\"cards\";const compactMobileRow=isM&&acc.mobileRow===\"compact\";const rowImgW=bp===\"desktop\"?images.rowWidth:Math.round(images.rowWidth*.82);const rowImgH=Math.round(rowImgW/ratioNum(images.rowRatio));// ---------- Accordion row ----------\nconst Row=(subject,index)=>{const key=keyOf(subject,index);const open=!!openRows[key];const panelId=`${idPrefix}-panel-${index}`;const related=coursesBySubject.get(norm(subject.title))||[];const expanded=!!showAll[key];const list=!limit||expanded?related:related.slice(0,limit);const count=`${related.length} course${related.length===1?\"\":\"s\"}`;const header=compactMobileRow?// Mobile, compact: thumbnail, title, count and a chevron\n/*#__PURE__*/_jsxs(\"button\",{type:\"button\",\"aria-expanded\":open,\"aria-controls\":panelId,onClick:()=>toggleRow(key),style:{width:\"100%\",padding:14,display:\"flex\",alignItems:\"center\",gap:14,border:\"none\",background:\"transparent\",textAlign:\"left\",cursor:\"pointer\",color:colors.text,fontFamily:\"inherit\"},children:[images.thumbs&&/*#__PURE__*/_jsx(Photo,{image:subject.image,tint:TINTS[index%TINTS.length],style:{flex:\"0 0 64px\",width:64,height:64,borderRadius:14}}),/*#__PURE__*/_jsxs(\"div\",{style:{flex:1,minWidth:0,display:\"flex\",flexDirection:\"column\",gap:4},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:17,lineHeight:1.25,fontWeight:700},children:subject.title}),/*#__PURE__*/_jsx(\"div\",{style:{fontSize:14,color:colors.muted},children:count})]}),/*#__PURE__*/_jsx(\"span\",{style:{width:36,height:36,flexShrink:0,borderRadius:\"50%\",display:\"flex\",alignItems:\"center\",justifyContent:\"center\",background:open?colors.button:\"rgba(0,0,0,0.05)\",transition:\"background 0.2s\"},children:/*#__PURE__*/_jsx(Chevron,{open:open,color:open?colors.buttonText:colors.text})})]}):// Default row: image, title, who it's for, and the See courses button\n/*#__PURE__*/_jsxs(\"button\",{type:\"button\",\"aria-expanded\":open,\"aria-controls\":panelId,onClick:()=>toggleRow(key),style:{width:\"100%\",padding:20,display:\"flex\",flexDirection:isM?\"column\":\"row\",alignItems:isM?\"stretch\":\"center\",gap:24,border:\"none\",background:\"transparent\",textAlign:\"left\",cursor:\"pointer\",color:colors.text,fontFamily:\"inherit\",outlineOffset:4},children:[/*#__PURE__*/_jsx(Photo,{image:subject.image,tint:TINTS[index%TINTS.length],style:{width:isM?\"100%\":rowImgW,height:isM?undefined:rowImgH,aspectRatio:isM?images.rowRatioMobile:undefined,borderRadius:18,flexShrink:isM?1:0}}),/*#__PURE__*/_jsxs(\"div\",{style:{minWidth:0,display:\"flex\",flexDirection:\"column\",gap:8,flex:isM?undefined:1},children:[/*#__PURE__*/_jsx(\"div\",{style:{fontSize:isM?20:24,lineHeight:1.2,fontWeight:700,color:colors.text},children:subject.title}),/*#__PURE__*/_jsxs(\"div\",{style:{fontSize:14,lineHeight:1.45,color:colors.muted},children:[subject.audience?`${subject.audience} \\xb7 `:\"\",count]})]}),/*#__PURE__*/_jsxs(\"span\",{style:{alignSelf:isM?\"flex-start\":\"center\",display:\"inline-flex\",alignItems:\"center\",gap:10,padding:isM?\"14px 18px\":\"14px 22px\",borderRadius:999,background:colors.button,color:colors.buttonText,fontSize:15,lineHeight:1,fontWeight:600,whiteSpace:\"nowrap\"},children:[open?acc.hideLabel:acc.seeLabel,/*#__PURE__*/_jsx(Chevron,{open:open,color:colors.buttonText})]})]});const courseList=related.length===0?/*#__PURE__*/_jsx(\"p\",{style:{margin:0,padding:\"16px 0 4px\",borderTop:`1px solid ${colors.divider}`,fontSize:15,color:colors.muted},children:acc.emptyLabel}):compact?/*#__PURE__*/_jsx(\"ul\",{style:{margin:0,padding:0,listStyle:\"none\",display:\"grid\",gridTemplateColumns:isM?\"minmax(0, 1fr)\":\"repeat(2, minmax(0, 1fr))\",columnGap:bp===\"desktop\"?40:28},children:list.map((course,i)=>/*#__PURE__*/_jsx(CourseRow,{course:course,index:i,bp:bp,colors:colors,images:images,acc:acc},i))}):/*#__PURE__*/_jsx(\"div\",{style:{paddingTop:16,borderTop:`1px solid ${colors.divider}`,display:\"grid\",gridTemplateColumns:`repeat(${cols}, minmax(0, 1fr))`,gap:16},children:list.map((course,i)=>/*#__PURE__*/_jsx(CourseCardItem,{course:course,index:i,colors:colors,images:images},i))});const more=limit>0&&related.length>limit?/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",justifyContent:\"center\",marginTop:compact?12:20},children:/*#__PURE__*/_jsx(motion.button,{type:\"button\",onClick:()=>toggleAll(key),whileHover:{backgroundColor:\"rgba(0,0,0,0.05)\"},whileTap:{scale:.98},style:{height:46,padding:\"0 22px\",borderRadius:999,border:`1px solid ${colors.text}`,backgroundColor:\"rgba(0,0,0,0)\",color:colors.text,fontFamily:SANS,fontSize:15,fontWeight:600,cursor:\"pointer\",width:isM?\"100%\":\"auto\"},children:expanded?acc.showLessLabel:`${acc.showAllLabel} (${related.length})`})}):null;return /*#__PURE__*/_jsxs(\"div\",{ref:el=>rowRefs.current[key]=el,style:{border:`1px solid ${colors.border}`,borderRadius:compactMobileRow?20:24,background:colors.card,overflow:\"hidden\"},children:[header,/*#__PURE__*/_jsx(AnimatePresence,{initial:false,children:open&&/*#__PURE__*/_jsx(motion.div,{id:panelId,role:\"region\",\"aria-label\":`${subject.title} courses`,initial:reduce?false:{opacity:0,height:0},animate:{opacity:1,height:\"auto\"},exit:reduce?{opacity:0}:{opacity:0,height:0},transition:{duration:reduce?0:acc.duration,ease:[.22,1,.36,1]},style:{overflow:\"hidden\"},children:/*#__PURE__*/_jsxs(\"div\",{style:{padding:compactMobileRow?\"0 14px 14px\":isM?\"0 16px 16px\":\"0 20px 20px\"},children:[courseList,more]})},\"panel\")})]},key);};return /*#__PURE__*/_jsxs(\"div\",{onClick:followLinks,style:{...props.style,position:\"relative\",width:\"100%\",fontFamily:SANS,color:colors.text,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:isM?32:48},children:[showHeader&&/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",flexDirection:\"column\",alignItems:\"center\",gap:isM?14:20,textAlign:\"center\",maxWidth:720},children:[content.eyebrow&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"inline-flex\",alignItems:\"center\",height:isM?36:44,padding:`0 ${isM?16:20}px`,borderRadius:999,background:colors.eyebrow,border:`1px solid ${colors.eyebrowBorder}`,fontFamily:MONO,fontSize:isM?14:17,letterSpacing:\"0.14em\",textTransform:\"uppercase\",color:colors.heading},children:content.eyebrow}),/*#__PURE__*/_jsxs(\"h2\",{style:{margin:0,fontWeight:700,fontSize:fit(content.headingSize,bp),lineHeight:\"1.15em\",letterSpacing:\"-0.01em\",color:colors.heading,textWrap:\"balance\"},children:[content.title,\" \",content.accent&&/*#__PURE__*/_jsx(\"span\",{style:{fontFamily:SERIF,fontStyle:\"italic\",fontWeight:400,letterSpacing:0},children:content.accent})]}),content.body&&/*#__PURE__*/_jsx(\"p\",{style:{margin:0,fontSize:isM?16:18,lineHeight:1.6,color:colors.muted},children:content.body})]}),accordion?/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:\"flex\",flexDirection:\"column\",gap:compactMobileRow?10:isM?12:16},children:subjects.map(Row)}):/*#__PURE__*/_jsx(\"div\",{style:{width:\"100%\",display:\"flex\",flexWrap:\"wrap\",justifyContent:\"center\",gap,alignItems:\"stretch\"},children:subjects.map((s,i)=>/*#__PURE__*/_jsx(SubjectCard,{subject:s,index:i,width:cardWidth,bp:bp,colors:colors,images:images},i))}),showButton&&content.ctaLabel&&/*#__PURE__*/_jsx(motion.a,{href:content.ctaLink||undefined,whileHover:{scale:1.02,opacity:.88},whileTap:{scale:.98},transition:{type:\"spring\",stiffness:400,damping:30},style:{display:\"flex\",alignItems:\"center\",justifyContent:\"center\",height:54,padding:\"0 32px\",borderRadius:999,background:colors.button,color:colors.buttonText,textDecoration:\"none\",fontWeight:600,fontSize:16,width:isM?\"100%\":\"auto\",boxSizing:\"border-box\"},children:content.ctaLabel})]});}SubjectGrid.displayName=\"Subject Grid\";// ---------- Property Controls ----------\nconst color=(title,key)=>({type:ControlType.Color,title,defaultValue:DEFAULTS.colors[key]});const str=(group,title,key,extra={})=>({type:ControlType.String,title,defaultValue:DEFAULTS[group][key],...extra});const ratio=(title,key,extra={})=>({type:ControlType.Enum,title,options:RATIOS,optionTitles:RATIO_TITLES,defaultValue:DEFAULTS.images[key],...extra});const program=n=>({[`p${n}`]:{type:ControlType.String,title:`Program ${n}`},[`p${n}Link`]:{type:ControlType.Link,title:`Program ${n} Link`,defaultValue:\"/\"}});const notAccordion=p=>p.layoutMode!==\"accordion\";// Older fields: only shown on instances that still use them\nconst legacyImages=Object.fromEntries(Array.from({length:16},(_,i)=>[`courseImage${i+1}`,{type:ControlType.ResponsiveImage,title:`Old Course Image ${i+1}`,hidden:p=>!has(p[`courseImage${i+1}`])}]));addPropertyControls(SubjectGrid,{layoutMode:{type:ControlType.Enum,title:\"Layout\",options:[\"grid\",\"accordion\"],optionTitles:[\"Grid\",\"Accordion\"],displaySegmentedControl:true,defaultValue:\"grid\"},variant:{type:ControlType.Enum,title:\"Variant\",options:[\"desktop\",\"tablet\",\"mobile\"],optionTitles:[\"Desktop\",\"Tablet\",\"Mobile\"],displaySegmentedControl:true,defaultValue:\"desktop\"},content:{type:ControlType.Object,title:\"Content\",controls:{showHeader:{type:ControlType.Boolean,title:\"Heading\",defaultValue:DEFAULTS.content.showHeader},eyebrow:str(\"content\",\"Eyebrow\",\"eyebrow\",{placeholder:\"Empty = hidden\"}),title:str(\"content\",\"Title\",\"title\"),accent:str(\"content\",\"Accent\",\"accent\"),body:str(\"content\",\"Body\",\"body\",{displayTextArea:true,placeholder:\"Empty = hidden\"}),headingSize:{type:ControlType.Number,title:\"Heading Size\",min:24,max:96,unit:\"px\",defaultValue:DEFAULTS.content.headingSize},showButton:{type:ControlType.Boolean,title:\"Button\",defaultValue:DEFAULTS.content.showButton},ctaLabel:str(\"content\",\"Button Label\",\"ctaLabel\"),ctaLink:{type:ControlType.Link,title:\"Button Link\",defaultValue:DEFAULTS.content.ctaLink}}},subjects:{type:ControlType.Array,title:\"Subjects\",maxCount:12,control:{type:ControlType.Object,controls:{image:{type:ControlType.ResponsiveImage,title:\"Image\"},title:{type:ControlType.String,title:\"Subject\",defaultValue:\"Subject\"},audience:{type:ControlType.String,title:\"Who It's For\",displayTextArea:true},...program(1),...program(2),...program(3),...program(4),...program(5)}},defaultValue:[]},courses:{type:ControlType.Array,title:\"Courses\",hidden:notAccordion,control:{type:ControlType.Object,controls:{category:{type:ControlType.String,title:\"Subject\",placeholder:\"Same as the subject title\"},title:{type:ControlType.String,title:\"Title\",defaultValue:\"Course title\"},link:{type:ControlType.Link,title:\"Link\"},image:{type:ControlType.ResponsiveImage,title:\"Image\"},price:{type:ControlType.String,title:\"Price\",placeholder:\"$1,995\"},format:{type:ControlType.String,title:\"Format\",placeholder:\"On-Campus\"},badge:{type:ControlType.Enum,title:\"Badge\",options:[\"none\",\"popular\",\"new\",\"full\"],optionTitles:[\"None\",\"Popular\",\"New\",\"Class Full\"],defaultValue:\"none\"},description:{type:ControlType.String,title:\"Description\",displayTextArea:true}}},defaultValue:[]},accordion:{type:ControlType.Object,title:\"Accordion\",hidden:notAccordion,controls:{courseStyle:{type:ControlType.Enum,title:\"Courses\",options:[\"compact\",\"cards\"],optionTitles:[\"Compact\",\"Cards\"],displaySegmentedControl:true,defaultValue:DEFAULTS.accordion.courseStyle},descriptions:{type:ControlType.Boolean,title:\"Descriptions\",defaultValue:DEFAULTS.accordion.descriptions,hidden:p=>p.courseStyle===\"cards\"},showFirst:{type:ControlType.Number,title:\"Show First\",min:0,max:24,step:1,displayStepper:true,defaultValue:DEFAULTS.accordion.showFirst,description:\"0 = show every course\"},showFirstMobile:{type:ControlType.Number,title:\"Show First Mobile\",min:0,max:24,step:1,displayStepper:true,defaultValue:DEFAULTS.accordion.showFirstMobile},mobileRow:{type:ControlType.Enum,title:\"Mobile Rows\",options:[\"stacked\",\"compact\"],optionTitles:[\"Large\",\"Compact\"],displaySegmentedControl:true,defaultValue:DEFAULTS.accordion.mobileRow},oneOpen:{type:ControlType.Boolean,title:\"One Open at a Time\",defaultValue:DEFAULTS.accordion.oneOpen},openFirst:{type:ControlType.Boolean,title:\"Open First Row\",defaultValue:DEFAULTS.accordion.openFirst},seeLabel:str(\"accordion\",\"See Label\",\"seeLabel\"),hideLabel:str(\"accordion\",\"Hide Label\",\"hideLabel\"),showAllLabel:str(\"accordion\",\"Show All Label\",\"showAllLabel\"),showLessLabel:str(\"accordion\",\"Show Fewer Label\",\"showLessLabel\"),readMoreLabel:str(\"accordion\",\"Read More Label\",\"readMoreLabel\"),readLessLabel:str(\"accordion\",\"Read Less Label\",\"readLessLabel\"),emptyLabel:str(\"accordion\",\"No Courses Text\",\"emptyLabel\"),duration:{type:ControlType.Number,title:\"Animation\",min:0,max:1.2,step:.05,unit:\"s\",defaultValue:DEFAULTS.accordion.duration}}},images:{type:ControlType.Object,title:\"Images\",controls:{gridRatio:ratio(\"Grid Cards\",\"gridRatio\"),gridRatioMobile:ratio(\"Grid Mobile\",\"gridRatioMobile\"),rowWidth:{type:ControlType.Number,title:\"Row Image Width\",min:120,max:420,step:4,unit:\"px\",defaultValue:DEFAULTS.images.rowWidth},rowRatio:ratio(\"Row Image\",\"rowRatio\"),rowRatioMobile:ratio(\"Row Mobile\",\"rowRatioMobile\"),thumbs:{type:ControlType.Boolean,title:\"Course Thumbnails\",defaultValue:DEFAULTS.images.thumbs},thumbRatio:ratio(\"Thumbnail\",\"thumbRatio\"),courseRatio:ratio(\"Course Cards\",\"courseRatio\")}},colors:{type:ControlType.Object,title:\"Colors\",controls:{heading:color(\"Heading\",\"heading\"),text:color(\"Text\",\"text\"),muted:color(\"Muted\",\"muted\"),card:color(\"Card\",\"card\"),border:color(\"Border\",\"border\"),divider:color(\"Divider\",\"divider\"),eyebrow:color(\"Eyebrow\",\"eyebrow\"),eyebrowBorder:color(\"Eyebrow Border\",\"eyebrowBorder\"),button:color(\"Button\",\"button\"),buttonText:color(\"Button Text\",\"buttonText\")}},// ---------- Older fields ----------\n// Kept so existing content isn't lost. Each one only appears in the panel\n// on instances that still use it; clear it to move to the fields above.\nhideHeadingAndCTA:{type:ControlType.Boolean,title:\"Old: Hide Heading\",defaultValue:false,hidden:p=>!p.hideHeadingAndCTA},previewOpenFirst:{type:ControlType.Boolean,title:\"Old: Open First\",defaultValue:false,hidden:p=>!p.previewOpenFirst},subjectsData:{type:ControlType.String,title:\"Old: Subjects JSON\",displayTextArea:true,defaultValue:\"\",hidden:p=>!p.subjectsData},coursesData:{type:ControlType.String,title:\"Old: Courses JSON\",displayTextArea:true,defaultValue:\"\",hidden:p=>!p.coursesData},courseImages:{type:ControlType.Array,title:\"Old: Course Images\",control:{type:ControlType.Image},defaultValue:[],hidden:p=>!p.courseImages?.length},...legacyImages});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SubjectGrid\",\"slots\":[],\"annotations\":{\"framerSupportedLayoutWidth\":\"any-prefer-fixed\",\"framerContractVersion\":\"1\",\"framerSupportedLayoutHeight\":\"auto\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SubjectGrid.map"],"mappings":"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"}