1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[962],{99215:function(e,t,l){var s=l(27573),n=l(7653),a=l(2734);let r=(0,n.forwardRef)((e,t)=>{let{children:l,className:n,style:r}=e;return(0,s.jsx)("div",{ref:t,className:(0,a.cn)("py-8 lg:py-[4.25rem] px-4 sm:px-[3.5rem] lg:px-[4.5rem] xl:px-[7rem]",n),style:r,children:(0,s.jsx)("div",{className:"max-w-[88rem] mx-auto h-full",children:l})})});r.displayName="CompactContainer",t.Z=r},60962:function(e,t,l){l.r(t);var s=l(27573),n=l(99215),a=l(47594),r=l(56555);let c=e=>{let{card:t,number:l}=e;return(0,s.jsx)("div",{className:"rounded-[2rem] bg-gray-200 ring-1 ring-black-900/[0.04] p-1.5 h-full",children:(0,s.jsxs)("div",{className:"rounded-[calc(2rem-0.375rem)] bg-white shadow-[0_8px_32px_-12px_rgba(0,0,0,0.06)] overflow-hidden flex flex-col h-full",children:[(0,s.jsxs)("div",{className:"flex-shrink-0 h-[180px] lg:h-[200px] px-7 lg:px-8 py-6 lg:py-7 flex flex-col gap-2.5 border-b border-black-900/[0.05]",children:[(0,s.jsxs)("div",{className:"flex items-center gap-2.5",children:[(0,s.jsx)("span",{"aria-hidden":"true",className:"font-mono text-[10px] lg:text-[11px] uppercase tracking-[0.22em] text-gray-500 tabular-nums",children:String(l).padStart(2,"0")}),(0,s.jsx)("span",{"aria-hidden":"true",className:"block w-5 h-px bg-black-900/20"}),(0,s.jsx)("h4",{className:"font-new-spirit font-medium text-black-900 tracking-tight leading-[1.1] text-lg lg:text-xl",children:t.label})]}),(0,s.jsx)("p",{className:"font-paralucent font-light text-black-900/70 text-[13px] lg:text-[14px] leading-[1.45] line-clamp-5",children:t.body})]}),(0,s.jsx)("div",{className:"relative w-full h-[280px] sm:h-[320px] lg:h-[360px] bg-gray-50 overflow-hidden",children:(0,s.jsxs)("div",{className:"absolute inset-0 px-6 pt-7 pb-5 lg:px-8 lg:pt-9 lg:pb-6",children:[t.mobile_html_src?(0,s.jsx)("div",{className:"block md:hidden h-full",children:(0,s.jsx)(a.default,{src:t.mobile_html_src,className:"w-full"})}):null,(0,s.jsx)("div",{className:"h-full ".concat(t.mobile_html_src?"hidden md:block":""),children:t.html_src?(0,s.jsx)(r.Z,{src:t.html_src,nativeWidth:t.native_width||880,nativeHeight:t.native_height||500,fit:"contain"}):(0,s.jsx)("div",{className:"flex h-full items-center justify-center text-xs font-mono text-gray-400",children:t.label})})]})})]})})};t.default=e=>{let{anchor_id:t,eyebrow_number:l,eyebrow_label:a,title:r,subtitle:i,cards:h}=e,o=null!=h?h:[],d=o.slice(0,4),x=o[4];return(0,s.jsx)("section",{id:t,className:"bg-gray-200",children:(0,s.jsxs)(n.Z,{children:[l||a?(0,s.jsxs)("div",{className:"inline-flex items-center gap-3",children:[l?(0,s.jsx)("span",{className:"font-mono text-[11px] sm:text-xs uppercase tracking-[0.22em] text-gray-500",children:l}):null,l&&a?(0,s.jsx)("span",{"aria-hidden":"true",className:"block w-6 h-px bg-black-900/30"}):null,a?(0,s.jsx)("span",{className:"font-mono text-[11px] sm:text-xs uppercase tracking-[0.22em] text-black-900",children:a}):null]}):null,(0,s.jsxs)("div",{className:"mt-5 max-w-[44rem]",children:[(0,s.jsx)("h3",{className:"font-new-spirit font-medium text-black-900 tracking-tight leading-[1.05] text-3xl md:text-4xl lg:text-5xl xl:text-6xl",children:r}),i?(0,s.jsx)("p",{className:"mt-5 lg:mt-6 font-paralucent font-light text-black-900 text-base sm:text-lg leading-relaxed",children:i}):null]}),(0,s.jsxs)("div",{className:"mt-16 lg:mt-24",children:[(0,s.jsx)("div",{className:"grid grid-cols-1 lg:grid-cols-2 gap-6 lg:gap-8",children:d.map((e,t)=>(0,s.jsx)(c,{card:e,number:t+1},e.card_id))}),x?(0,s.jsx)("div",{className:"mt-6 lg:mt-8 grid grid-cols-1 lg:grid-cols-2 gap-6 lg:gap-8",children:(0,s.jsx)("div",{className:"lg:col-start-1 lg:col-end-3 lg:max-w-[calc(50%-1rem)] lg:mx-auto lg:w-full",children:(0,s.jsx)(c,{card:x,number:5})})}):null]})]})})}},47594:function(e,t,l){l.r(t),l.d(t,{prefetchEmbeddedHtml:function(){return o}});var s=l(27573),n=l(7653);let a=e=>e.replace(/(^|[}\s,])\s*:root\b/g,"$1:host").replace(/(^|[}\s,])\s*html\b/g,"$1:host").replace(/(^|[}\s,])\s*body\b/g,"$1.ehv-root"),r=e=>{let t=[...e.matchAll(/<link[^>]+rel=["']stylesheet["'][^>]*>/gi)].map(e=>e[0]).join("\n"),l=[...e.matchAll(/<style[^>]*>([\s\S]*?)<\/style>/gi)].map(e=>e[1]).join("\n"),s=e.match(/<body[^>]*>([\s\S]*?)<\/body>/i),n=s?s[1]:e.replace(/<!doctype[^>]*>/gi,"").replace(/<\/?html[^>]*>/gi,"").replace(/<head[^>]*>[\s\S]*?<\/head>/gi,"").replace(/<style[^>]*>[\s\S]*?<\/style>/gi,"").replace(/<link[^>
1]+rel=["']stylesheet["'][^>]*>/gi,"");return{linkTags:t,css:a(l.replace(/min-height:\s*100vh/g,"min-height: 100%")),body:n}},c=(e,t)=>{let{linkTags:l,css:s,body:n}=r(t);(n||s)&&(e.innerHTML="\n ".concat(l,"\n <style>\n /* Cascade definite height into the shadow tree so descendants using\n `height: 100%` / `h-full` resolve to real pixels â mirrors the\n light-DOM dangerouslySetInnerHTML behavior. Without this, :host\n picks up Tailwind h-full from outside but the shadow root starts\n a new containing block with no definite height, so .visual-frame\n { height: 100% } inside fragments falls back to auto and content\n overflows the parent frame. */\n :host { display: block; width: 100%; height: 100%; }\n .ehv-root { height: 100%; }\n ").concat(s,'\n </style>\n <div class="ehv-root">').concat(n,"</div>\n "))},i=e=>{let t=[];try{let l=Array.from(document.styleSheets).map(e=>{try{let t=new CSSStyleSheet;return t.replaceSync(Array.from(e.cssRules).map(e=>e.cssText).join("\n")),t}catch(l){return e.ownerNode&&t.push(e.ownerNode.cloneNode(!0)),null}}).filter(e=>null!==e);l.length&&(e.adoptedStyleSheets=l)}catch(e){document.head.querySelectorAll('link[rel="stylesheet"], style').forEach(e=>{t.push(e.cloneNode(!0))})}return t},h=new Map,o=e=>{!e||h.has(e)||fetch(e).then(e=>e.text()).then(t=>h.set(e,t)).catch(()=>{})};t.default=e=>{let{src:t,html:l,className:a="",style:r}
1=e,o=(0,n.useRef)(null),d=(0,n.useRef)([]),[x,m]=(0,n.useState)(!1);return(0,n.useEffect)(()=>{if(o.current){if(!o.current.shadowRoot){let e=o.current.attachShadow({mode:"open"});d.current=i(e)}m(!0)}},[]),(0,n.useEffect)(()=>{var e;if(!x||!(null===(e=o.current)||void 0===e?void 0:e.shadowRoot))return()=>{};let s=o.current.shadowRoot,n=!1,a=e=>{c(s,e),d.current.forEach(e=>s.appendChild(e.cloneNode(!0)))};if(l)return a(l),()=>{n=!0};if(t){let e=h.get(t);if(void 0!==e)return a(e),()=>{n=!0};s.innerHTML="",fetch(t).then(e=>e.text()).then(e=>{h.set(t,e),!n&&s&&a(e)}).catch(()=>{})}return()=>{n=!0}},[t,l,x]),(0,s.jsx)("div",{ref:o,className:a,style:r})}},56555:function(e,t,l){var s=l(27573),n=l(7653),a=l(47594);t.Z=e=>{let{src:t,nativeWidth:l=880,nativeHeight:r=500,fit:c="contain",className:i=""}=e,h=(0,n.useRef)(null),[{width:o,height:d},x]=(0,n.useState)({width:0,height:0});(0,n.useEffect)(()=>{let e=h.current;if(!e)return()=>{};let t=new ResizeObserver(e=>{let t=e[0];t&&x({width:t.contentRect.width,height:t.contentRect.height})});return t.observe(e),()=>t.disconnect()},[]);let m=o/l,u="contain"===c?Math.min(m,d/r):m;return(0,s.jsx)("div",{ref:h,className:"relative overflow-hidden w-full h-full ".concat(i),children:(0,s.jsx)("div",{style:{position:"absolute",top:"".concat(Math.max(0,(d-r*u)/2),"px"),left:"".concat(Math.max(0,(o-l*u)/2),"px"),width:"".concat(l,"px"),height:"".concat(r,"px"),transformOrigin:"top left",transform:"scale(".concat(u||1e-4,")")},children:(0,s.jsx)(a.default,{src:t,style:{width:"100%",height:"100%"}})})})}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.