{"version":3,"file":"SectionHeader.CV4_FrXD.mjs","names":["React.useState","React.useRef","React.Fragment"],"sources":["https:/framerusercontent.com/modules/VrO1zGIJgdwrUqignBZ0/zC7AcVPnIezXqfCgnCbV/SectionHeader.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs}from\"react/jsx-runtime\";import*as React from\"react\";import{addPropertyControls,ControlType}from\"framer\";const STYLE_ID=\"sh-global-styles\";if(typeof document!==\"undefined\"&&!document.getElementById(STYLE_ID)){const tag=document.createElement(\"style\");tag.id=STYLE_ID;tag.textContent=`\n        @import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,300;1,400&display=swap');\n\n        @keyframes sh-line-grow {\n            from { transform: scaleX(0); opacity: 0; }\n            to   { transform: scaleX(1); opacity: 1; }\n        }\n        @keyframes sh-eyebrow-in {\n            from { opacity: 0; transform: translateY(8px); }\n            to   { opacity: 1; transform: translateY(0); }\n        }\n        @keyframes sh-heading-in {\n            from { opacity: 0; transform: translateY(16px); }\n            to   { opacity: 1; transform: translateY(0); }\n        }\n        @keyframes sh-subtext-in {\n            from { opacity: 0; transform: translateY(10px); }\n            to   { opacity: 1; transform: translateY(0); }\n        }\n        @keyframes sh-dot-pulse {\n            0%, 100% { transform: scale(1); opacity: 1; }\n            50%       { transform: scale(1.5); opacity: 0.7; }\n        }\n\n        .sh-animated .sh-eyebrow-wrap {\n            animation: sh-eyebrow-in 0.5s cubic-bezier(0.22,1,0.36,1) 0.1s both;\n        }\n        .sh-animated .sh-heading {\n            animation: sh-heading-in 0.65s cubic-bezier(0.22,1,0.36,1) 0.22s both;\n        }\n        .sh-animated .sh-subtext {\n            animation: sh-subtext-in 0.55s cubic-bezier(0.22,1,0.36,1) 0.38s both;\n        }\n        .sh-animated .sh-line {\n            animation: sh-line-grow 0.7s cubic-bezier(0.22,1,0.36,1) 0.14s both;\n            transform-origin: left center;\n        }\n        .sh-animated.sh-center .sh-line {\n            transform-origin: center center;\n        }\n\n        .sh-dot {\n            animation: sh-dot-pulse 3s ease-in-out infinite;\n        }\n\n        .sh-word-accent {\n            display: inline-block;\n        }\n    `;document.head.appendChild(tag);}export default function SectionHeader({eyebrow=\"Tailored Solutions\",heading=\"Expert Attack Informed Cybersecurity Services Tailored to\",subtext=\"\",accentColor=\"#F1582D\",textAlign=\"center\",accentWords=2}){const[isMobile,setIsMobile]=React.useState(false);const[isTablet,setIsTablet]=React.useState(false);const[inView,setInView]=React.useState(false);const ref=React.useRef(null);React.useEffect(()=>{const check=()=>{setIsMobile(window.innerWidth<768);setIsTablet(window.innerWidth<1024);};check();window.addEventListener(\"resize\",check);return()=>window.removeEventListener(\"resize\",check);},[]);React.useEffect(()=>{const el=ref.current;if(!el)return;if(typeof IntersectionObserver===\"undefined\"){setInView(true);return;}const obs=new IntersectionObserver(([entry])=>{if(entry.isIntersecting){setInView(true);obs.disconnect();}},{threshold:.2});obs.observe(el);return()=>obs.disconnect();},[]);const align=isMobile?\"left\":textAlign;const isCenter=align===\"center\";const words=heading?heading.split(\" \"):[];const headingSize=isMobile?\"24px\":isTablet?\"25px\":\"28px\";// Convert hex to rgb for rgba usage\nconst hexToRgb=hex=>{const r=parseInt(hex.slice(1,3),16);const g=parseInt(hex.slice(3,5),16);const b=parseInt(hex.slice(5,7),16);return`${r},${g},${b}`;};const aRgb=accentColor.startsWith(\"#\")?hexToRgb(accentColor):\"241,88,45\";const classNames=[\"sh-animated\",isCenter?\"sh-center\":\"sh-left\",inView?\"sh-in-view\":\"\"].filter(Boolean).join(\" \");return /*#__PURE__*/_jsxs(\"div\",{ref:ref,className:classNames,style:{width:\"100%\",fontFamily:\"Montserrat, sans-serif\",textAlign:align,boxSizing:\"border-box\"},children:[eyebrow&&/*#__PURE__*/_jsxs(\"div\",{className:\"sh-eyebrow-wrap\",style:{display:\"flex\",alignItems:\"center\",justifyContent:isCenter?\"center\":\"flex-start\",gap:\"10px\",marginBottom:\"20px\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:\"6px\",flexShrink:0},children:[/*#__PURE__*/_jsx(\"div\",{className:\"sh-line\",style:{width:\"28px\",height:\"1.5px\",background:`linear-gradient(to right, ${accentColor}, rgba(${aRgb},0.3))`,borderRadius:\"2px\"}}),/*#__PURE__*/_jsx(\"div\",{className:\"sh-dot\",style:{width:\"5px\",height:\"5px\",borderRadius:\"50%\",background:accentColor,flexShrink:0}})]}),/*#__PURE__*/_jsx(\"span\",{style:{fontSize:\"10px\",fontWeight:600,letterSpacing:\"0.2em\",textTransform:\"uppercase\",color:\"#444\",fontFamily:\"Montserrat, sans-serif\",lineHeight:1},children:eyebrow}),!isCenter&&/*#__PURE__*/_jsx(\"div\",{className:\"sh-line\",style:{flex:1,maxWidth:\"48px\",height:\"1px\",background:`rgba(${aRgb},0.15)`,borderRadius:\"2px\"}})]}),heading&&/*#__PURE__*/_jsx(\"h2\",{className:\"sh-heading\",style:{fontSize:headingSize,fontWeight:500,color:\"#0a0a0a\",margin:subtext?\"0 0 24px\":\"0\",lineHeight:1.1,letterSpacing:\"-0.03em\",fontFamily:\"Montserrat, sans-serif\",maxWidth:isCenter?\"860px\":\"100%\",marginInline:isCenter?\"auto\":\"0\",display:\"block\"},children:words.map((word,i)=>{const isAccent=i>=words.length-accentWords;return /*#__PURE__*/_jsxs(React.Fragment,{children:[/*#__PURE__*/_jsx(\"span\",{className:isAccent?\"sh-word-accent\":undefined,style:{display:\"inline-block\",color:isAccent?accentColor:\"inherit\",...isAccent&&{\"--accent-color\":accentColor}},children:word}),i<words.length-1&&/*#__PURE__*/_jsx(\"span\",{style:{display:\"inline-block\",width:\"0.28em\"}})]},i);})}),heading&&!subtext&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",justifyContent:isCenter?\"center\":\"flex-start\",marginTop:\"20px\"},children:/*#__PURE__*/_jsx(\"div\",{className:\"sh-line\",style:{width:\"48px\",height:\"3px\",borderRadius:\"3px\",background:`linear-gradient(to right, ${accentColor}, rgba(${aRgb},0.2))`}})}),subtext&&/*#__PURE__*/_jsx(\"p\",{className:\"sh-subtext\",style:{fontSize:isMobile?\"14px\":\"15px\",color:\"#777\",lineHeight:1.8,margin:\"0\",maxWidth:isCenter?\"560px\":\"640px\",marginInline:isCenter?\"auto\":\"0\",fontFamily:\"Montserrat, sans-serif\",fontWeight:400,letterSpacing:\"0.005em\"},children:subtext})]});}addPropertyControls(SectionHeader,{eyebrow:{type:ControlType.String,title:\"Eyebrow\",defaultValue:\"Tailored Solutions\"},heading:{type:ControlType.String,title:\"Heading\",defaultValue:\"Expert Attack Informed Cybersecurity Services Tailored to\",displayTextArea:true},accentWords:{type:ControlType.Number,title:\"Accent Words\",defaultValue:2,min:1,max:6,step:1,description:\"How many words at the end of the heading get the accent colour\"},subtext:{type:ControlType.String,title:\"Subtext\",defaultValue:\"\",displayTextArea:true},accentColor:{type:ControlType.Color,title:\"Accent Color\",defaultValue:\"#F1582D\"},textAlign:{type:ControlType.Enum,title:\"Alignment\",options:[\"center\",\"left\"],optionTitles:[\"Center\",\"Left\"],defaultValue:\"center\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"SectionHeader\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./SectionHeader.map"],"mappings":"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"}