{"version":3,"file":"NavBar.DX0evqd1.mjs","names":["useRef","useState","_Fragment"],"sources":["https:/framerusercontent.com/modules/G31N7vcarOlP9rvUBppq/vKMcjeKvhAqj2Hm9mdEY/NavBar.js"],"sourcesContent":["import{jsx as _jsx,jsxs as _jsxs,Fragment as _Fragment}from\"react/jsx-runtime\";import{addPropertyControls,ControlType}from\"framer\";import{useState,useEffect,useRef}from\"react\";export default function NavBar({caseStudiesLink,aboutLink,clientProfileLink,contactLink,accentColor}){const containerRef=useRef(null);const[menuOpen,setMenuOpen]=useState(false);const[scrolled,setScrolled]=useState(false);const[ctaHovered,setCtaHovered]=useState(false);const[isMobile,setIsMobile]=useState(false);useEffect(()=>{const el=containerRef.current;if(!el)return;const ro=new ResizeObserver(([entry])=>{setIsMobile(entry.contentRect.width<600);});ro.observe(el);return()=>ro.disconnect();},[]);useEffect(()=>{const handleScroll=()=>setScrolled(window.scrollY>20);handleScroll();window.addEventListener(\"scroll\",handleScroll);return()=>window.removeEventListener(\"scroll\",handleScroll);},[]);const isAnchorHash=hash=>/^#[A-Za-z][\\w-]*$/.test(hash);const scrollToHash=hash=>{if(!isAnchorHash(hash))return;try{const el=document.querySelector(hash);if(el)el.scrollIntoView({behavior:\"smooth\"});}catch{// ignore selector errors\n}};useEffect(()=>{if(typeof window===\"undefined\")return;const hash=window.location.hash;if(!hash||!isAnchorHash(hash))return;let attempts=0;const maxAttempts=20;const tryScroll=()=>{let el=null;try{el=document.querySelector(hash);}catch{return;}if(el){el.scrollIntoView({behavior:\"smooth\"});}else if(attempts<maxAttempts){attempts+=1;setTimeout(tryScroll,100);}};tryScroll();},[]);const isHomePage=()=>typeof window!==\"undefined\"&&(window.location.pathname===\"/\"||window.location.pathname===\"\");// ── FIXED: external http links open in a new tab ──\nconst navigate=href=>{setMenuOpen(false);if(href.startsWith(\"http://\")||href.startsWith(\"https://\")){// External URL — open in new tab so user doesn't leave the portfolio\nwindow.open(href,\"_blank\",\"noopener,noreferrer\");}else if(href.startsWith(\"#\")){if(isHomePage()){scrollToHash(href);}else{window.location.href=\"/\"+href;}}else{window.location.href=href;}};const links=[{label:\"Case Studies\",href:caseStudiesLink},{label:\"About\",href:aboutLink},{label:\"Client Profile\",href:clientProfileLink}];const glassStyle={background:scrolled?\"rgba(8,8,8,0.75)\":\"rgba(8,8,8,0.92)\",backdropFilter:\"blur(16px)\",WebkitBackdropFilter:\"blur(16px)\",border:scrolled?\"1px solid rgba(255,255,255,0.08)\":\"1px solid rgba(255,255,255,0.04)\",transition:\"all 0.3s ease\"};const linkStyle={fontSize:14,fontWeight:400,color:\"rgba(255,255,255,0.8)\",fontFamily:\"'Poppins', sans-serif\",cursor:\"pointer\",background:\"none\",border:\"none\",padding:0,transition:\"color 0.2s ease\",letterSpacing:\"0.01em\",whiteSpace:\"nowrap\"};return /*#__PURE__*/_jsxs(_Fragment,{children:[/*#__PURE__*/_jsxs(\"div\",{ref:containerRef,style:{position:\"fixed\",top:0,left:0,right:0,zIndex:1e3,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",padding:isMobile?\"12px 16px\":\"14px 24px\",pointerEvents:\"none\"},children:[/*#__PURE__*/_jsxs(\"div\",{style:{...glassStyle,borderRadius:999,width:\"100%\",maxWidth:900,display:\"flex\",alignItems:\"center\",justifyContent:\"space-between\",padding:isMobile?\"10px 12px 10px 20px\":\"10px 14px 10px 28px\",boxSizing:\"border-box\",pointerEvents:\"all\"},children:[/*#__PURE__*/_jsx(\"span\",{onClick:()=>navigate(\"/\"),style:{fontSize:isMobile?14:17,fontWeight:600,color:\"#fff\",fontFamily:\"'Poppins', sans-serif\",letterSpacing:\"-0.01em\",cursor:\"pointer\",flexShrink:0,whiteSpace:\"nowrap\"},children:\"Carmen Oviedo\"}),!isMobile&&/*#__PURE__*/_jsx(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:32},children:links.map(link=>/*#__PURE__*/_jsx(\"button\",{onClick:()=>navigate(link.href),style:linkStyle,onMouseEnter:e=>e.currentTarget.style.color=\"#fff\",onMouseLeave:e=>e.currentTarget.style.color=\"rgba(255,255,255,0.8)\",children:link.label},link.label))}),/*#__PURE__*/_jsxs(\"div\",{style:{display:\"flex\",alignItems:\"center\",gap:8,flexShrink:0},children:[/*#__PURE__*/_jsx(\"button\",{onClick:()=>navigate(contactLink),onMouseEnter:()=>setCtaHovered(true),onMouseLeave:()=>setCtaHovered(false),style:{background:ctaHovered?\"#e04444\":accentColor,border:\"none\",borderRadius:999,padding:isMobile?\"8px 16px\":\"10px 22px\",fontSize:isMobile?13:14,fontWeight:600,color:\"#fff\",cursor:\"pointer\",fontFamily:\"'Poppins', sans-serif\",transition:\"background 0.2s ease\",letterSpacing:\"0.01em\",whiteSpace:\"nowrap\"},children:\"Contact\"}),isMobile&&/*#__PURE__*/_jsxs(\"button\",{onClick:()=>setMenuOpen(!menuOpen),\"aria-label\":\"Toggle menu\",style:{background:\"rgba(255,255,255,0.08)\",border:\"1px solid rgba(255,255,255,0.12)\",borderRadius:999,width:36,height:36,display:\"flex\",flexDirection:\"column\",alignItems:\"center\",justifyContent:\"center\",gap:4,cursor:\"pointer\",padding:0,flexShrink:0},children:[/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",width:15,height:1.5,background:\"#fff\",borderRadius:2,transform:menuOpen?\"rotate(45deg) translate(3px, 3px)\":\"none\",transition:\"transform 0.25s ease\"}}),/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",width:15,height:1.5,background:\"#fff\",borderRadius:2,opacity:menuOpen?0:1,transition:\"opacity 0.2s ease\"}}),/*#__PURE__*/_jsx(\"span\",{style:{display:\"block\",width:15,height:1.5,background:\"#fff\",borderRadius:2,transform:menuOpen?\"rotate(-45deg) translate(3px, -3px)\":\"none\",transition:\"transform 0.25s ease\"}})]})]})]}),isMobile&&menuOpen&&/*#__PURE__*/_jsx(\"div\",{style:{...glassStyle,borderRadius:20,width:\"100%\",maxWidth:900,marginTop:8,overflow:\"hidden\",boxSizing:\"border-box\",pointerEvents:\"all\"},children:links.map((link,i)=>/*#__PURE__*/_jsx(\"button\",{onClick:()=>navigate(link.href),style:{display:\"block\",width:\"100%\",textAlign:\"left\",padding:\"14px 24px\",fontSize:15,fontWeight:400,color:\"rgba(255,255,255,0.85)\",fontFamily:\"'Poppins', sans-serif\",background:\"none\",border:\"none\",borderBottom:i<links.length-1?\"1px solid rgba(255,255,255,0.06)\":\"none\",cursor:\"pointer\",letterSpacing:\"0.01em\",transition:\"color 0.2s ease, background 0.2s ease\",boxSizing:\"border-box\"},onMouseEnter:e=>{e.currentTarget.style.background=\"rgba(255,255,255,0.05)\";e.currentTarget.style.color=\"#fff\";},onMouseLeave:e=>{e.currentTarget.style.background=\"none\";e.currentTarget.style.color=\"rgba(255,255,255,0.85)\";},children:link.label},link.label))})]}),/*#__PURE__*/_jsx(\"div\",{style:{height:isMobile?68:76}})]});}NavBar.defaultProps={caseStudiesLink:\"#casestudies\",aboutLink:\"/loading-about\",clientProfileLink:\"https://carmenoviedo-portal.netlify.app/client-portal.html\",contactLink:\"#footer\",accentColor:\"#FF5151\"};addPropertyControls(NavBar,{caseStudiesLink:{type:ControlType.String,title:\"Case Studies link\",defaultValue:\"#casestudies\"},aboutLink:{type:ControlType.String,title:\"About link\",defaultValue:\"/loading-about\"},clientProfileLink:{type:ControlType.String,title:\"Client Profile link\",defaultValue:\"https://carmenoviedo-portal.netlify.app/client-portal.html\"},contactLink:{type:ControlType.String,title:\"Contact link\",defaultValue:\"#footer\"},accentColor:{type:ControlType.Color,title:\"CTA color\",defaultValue:\"#FF5151\"}});\nexport const __FramerMetadata__ = {\"exports\":{\"default\":{\"type\":\"reactComponent\",\"name\":\"NavBar\",\"slots\":[],\"annotations\":{\"framerContractVersion\":\"1\"}},\"__FramerMetadata__\":{\"type\":\"variable\"}}}\n//# sourceMappingURL=./NavBar.map"],"mappings":"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"}