@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%}}}.hero-section{align-items:center;min-height:90vh;display:flex;position:relative;overflow:hidden}.hero-section.glow-bg{background:radial-gradient(circle at 50% 0,#ff2b2b1f,#0000 60%)}.hero-section.glow-grid{background-image:linear-gradient(to right,var(--pattern-color) 1px,transparent 1px),linear-gradient(to bottom,var(--pattern-color) 1px,transparent 1px);background-position:top;background-size:60px 60px}.hero-title{margin-bottom:calc(var(--spacing,.25rem) * 8);font-family:var(--font-display,"Space Grotesk", var(--font-sans));font-size:var(--text-6xl,3.75rem);line-height:var(--tw-leading,var(--text-6xl--line-height,1));--tw-leading:.9;--tw-font-weight:var(--font-weight-bold,700);line-height:.9;font-weight:var(--font-weight-bold,700);--tw-tracking:var(--tracking-tight,-.025em);letter-spacing:var(--tracking-tight,-.025em);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}@media(min-width:48rem){.hero-title{font-size:var(--text-8xl,6rem);line-height:var(--tw-leading,var(--text-8xl--line-height,1))}}.hero-description{margin-bottom:calc(var(--spacing,.25rem) * 12);max-width:var(--container-2xl,42rem);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-leading:var(--leading-relaxed,1.625);line-height:var(--leading-relaxed,1.625);color:var(--color-fronta-muted,var(--fronta-muted))}.hero-description ::selection{background-color:var(--color-fronta-red,var(--fronta-red))}.hero-description::selection{background-color:var(--color-fronta-red,var(--fronta-red))}@media(min-width:48rem){.hero-description{font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}.hero-actions{justify-content:center;align-items:center;gap:calc(var(--spacing,.25rem) * 4);flex-wrap:wrap;display:flex}@media(min-width:48rem){.hero-actions{justify-content:flex-start}}.hero-badge{margin-bottom:calc(var(--spacing,.25rem) * 8);align-items:center;gap:calc(var(--spacing,.25rem) * 2);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-fronta-border,var(--fronta-border));background-color:var(--color-fronta-text,var(--fronta-text));border-radius:3.40282e38px;display:inline-flex}@supports (color:color-mix(in lab,red,red)){.hero-badge{background-color:color-mix(in oklab,var(--color-fronta-text,var(--fronta-text)) 5%,transparent)}}.hero-badge{padding-inline:calc(var(--spacing,.25rem) * 3);padding-block:calc(var(--spacing,.25rem) * 1)}.hero-badge-text{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.2em;letter-spacing:.2em;color:var(--color-fronta-muted,var(--fronta-muted));text-transform:uppercase;font-size:10px;margin-bottom:calc(var(--spacing,.25rem) * 0)!important}.bracket-frame{pointer-events:none;inset:calc(var(--spacing,.25rem) * 8);z-index:0;position:absolute}.corner-bracket{height:calc(var(--spacing,.25rem) * 8);width:calc(var(--spacing,.25rem) * 8);border-color:var(--color-fronta-border,var(--fronta-border));transition:border-color .5s;position:absolute}.hero-section:hover .corner-bracket{border-color:var(--color-fronta-red,var(--fronta-red))}@supports (color:color-mix(in lab,red,red)){.hero-section:hover .corner-bracket{border-color:color-mix(in oklab,var(--color-fronta-red,var(--fronta-red)) 30%,transparent)}}.corner-bracket-tl{top:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * 0);border-top-style:var(--tw-border-style);border-top-width:2px;border-left-style:var(--tw-border-style);border-left-width:2px}.corner-bracket-tr{top:calc(var(--spacing,.25rem) * 0);right:calc(var(--spacing,.25rem) * 0);border-top-style:var(--tw-border-style);border-top-width:2px;border-right-style:var(--tw-border-style);border-right-width:2px}.corner-bracket-bl{bottom:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * 0);border-bottom-style:var(--tw-border-style);border-bottom-width:2px;border-left-style:var(--tw-border-style);border-left-width:2px}.corner-bracket-br{right:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);border-right-style:var(--tw-border-style);border-right-width:2px;border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.hero-bottom-flair{bottom:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * 0);--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:transparent;--tw-gradient-via:var(--color-fronta-border,var(--fronta-border));--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));--tw-gradient-to:transparent;opacity:.5;width:100%;height:1px;position:absolute}@media(max-width:767px){.hero-section{min-height:100svh;padding-top:calc(6.75rem + env(safe-area-inset-top));padding-bottom:4rem}.hero-title{margin-bottom:1.5rem;font-size:clamp(2.65rem,11.8vw,3.15rem);line-height:.95}.hero-description{margin-inline:auto;margin-bottom:calc(var(--spacing,.25rem) * 8);max-width:var(--container-xl,36rem);font-size:.95rem}.hero-actions{gap:calc(var(--spacing,.25rem) * 3)}.bracket-frame{inset:calc(var(--spacing,.25rem) * 4);top:calc(5.75rem + env(safe-area-inset-top))}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}.radiant-card{--mouse-x:-1000px;--mouse-y:-1000px;--glow-color-1:rgba(var(--fronta-red-rgb), .125);--glow-color-2:rgba(var(--fronta-orange-rgb), .125);--glow-size:200px;background:padding-box linear-gradient(var(--fronta-card),var(--fronta-card)),border-box radial-gradient(var(--glow-size) circle at var(--mouse-x) var(--mouse-y),var(--glow-color-1) 0%,var(--glow-color-1) 40%,var(--glow-color-2) 80%,transparent 100%);background-origin:padding-box,border-box;background-clip:padding-box,border-box;border:1.5px solid #0000}.service-card{border-radius:var(--radius-2xl,1rem);border-style:var(--tw-border-style);border-width:1px;border-color:var(--color-fronta-border,var(--fronta-border));background-color:var(--color-fronta-card,var(--fronta-card));position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.service-card{background-color:color-mix(in oklab,var(--color-fronta-card,var(--fronta-card)) 50%,transparent)}}.service-card{padding:calc(var(--spacing,.25rem) * 6);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-shadow-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.service-card{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black,#000) 10%, transparent) var(--tw-shadow-alpha), transparent)}}.service-card{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.5s;transition-duration:.5s}@media(min-width:48rem){.service-card{padding:calc(var(--spacing,.25rem) * 12)}}.service-card.radiant-card{border-color:#0000}.service-card:hover{background-color:var(--color-fronta-card,var(--fronta-card))}.service-card:hover.radiant-card{--glow-color-1:rgba(var(--fronta-orange-rgb), 1);--glow-color-2:rgba(var(--fronta-red-rgb), 1)}.card-title{margin-bottom:calc(var(--spacing,.25rem) * 6);max-width:15ch;font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height, 1.2 ));--tw-leading:var(--leading-tight,1.25);line-height:var(--leading-tight,1.25);--tw-font-weight:var(--font-weight-bold,700);font-weight:var(--font-weight-bold,700);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}@media(hover:hover){.card-title:is(:where(.group):hover *){color:var(--color-fronta-text,var(--fronta-text))}}@media(min-width:48rem){.card-title{font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)))}}.card-footer-cta{align-items:center;gap:calc(var(--spacing,.25rem) * 2);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-tracking:var(--tracking-widest,.1em);letter-spacing:var(--tracking-widest,.1em);color:var(--color-fronta-red,var(--fronta-red));text-transform:uppercase;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:inline-flex}.card-footer-cta:hover span{--tw-translate-x:calc(var(--spacing,.25rem) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}.section-services{padding-block:calc(var(--spacing,.25rem) * 20)}@media(min-width:48rem){.section-services{padding-block:calc(var(--spacing,.25rem) * 24)}}.services-grid{gap:calc(var(--spacing,.25rem) * 6);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media(min-width:64rem){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-duration:initial;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-border-style:solid}}}.section-methodology{padding-block:calc(var(--spacing,.25rem) * 20);overflow:visible}@media(min-width:48rem){.section-methodology{padding-block:calc(var(--spacing,.25rem) * 48)}}.methodology-section-header{margin-bottom:calc(var(--spacing,.25rem) * 16)}@media(min-width:48rem){.methodology-section-header{margin-bottom:calc(var(--spacing,.25rem) * 32)}}.methodology-row{margin-bottom:calc(var(--spacing,.25rem) * 20);gap:calc(var(--spacing,.25rem) * 5);grid-template-columns:repeat(1,minmax(0,1fr));display:grid;position:relative}.methodology-row:last-child{margin-bottom:calc(var(--spacing,.25rem) * 0)}@media(min-width:48rem){.methodology-row{margin-bottom:calc(var(--spacing,.25rem) * 64);gap:calc(var(--spacing,.25rem) * 24);grid-template-columns:repeat(12,minmax(0,1fr))}}.methodology-side{z-index:1;position:relative}@media(min-width:48rem){.methodology-side{grid-column:span 4/span 4}}.methodology-sticky-header{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.7s;transition-duration:.7s}@media(min-width:48rem){.methodology-sticky-header{top:calc(var(--spacing,.25rem) * 40);position:sticky}}.methodology-index-large{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-leading:1;--tw-font-weight:var(--font-weight-bold,700);font-size:120px;line-height:1;font-weight:var(--font-weight-bold,700);--tw-tracking:var(--tracking-tighter,-.05em);letter-spacing:var(--tracking-tighter,-.05em)}@media(min-width:48rem){.methodology-index-large{font-size:180px}}@media(min-width:64rem){.methodology-index-large{font-size:360px}}.methodology-index-large{top:calc(var(--spacing,.25rem) * 0);z-index:-1;opacity:.25;position:absolute;right:-50%}.methodology-side-title{margin-bottom:calc(var(--spacing,.25rem) * 6);font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height, 1.2 ));--tw-font-weight:var(--font-weight-bold,700);font-weight:var(--font-weight-bold,700);--tw-tracking:var(--tracking-tight,-.025em);letter-spacing:var(--tracking-tight,-.025em)}@media(min-width:48rem){.methodology-side-title{font-size:var(--text-5xl,3rem);line-height:var(--tw-leading,var(--text-5xl--line-height,1))}}.methodology-side-title{font-family:var(--font-display)}.methodology-content{z-index:1;padding-top:calc(var(--spacing,.25rem) * 0);position:relative}@media(min-width:48rem){.methodology-content{grid-column:span 8/span 8}}.methodology-content{isolation:isolate;transform:translateZ(0)}.methodology-content:before{content:"";inset:calc(var(--spacing,.25rem) * 0);z-index:-1;border-radius:var(--radius-4xl,2rem);--tw-backdrop-blur:blur(var(--blur-md,12px));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);pointer-events:none;position:absolute}.methodology-blueprint-frame{border-radius:var(--radius-2xl,1rem);background-color:var(--color-fronta-card,var(--fronta-card));position:relative;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.methodology-blueprint-frame{background-color:color-mix(in oklab,var(--color-fronta-card,var(--fronta-card)) 50%,transparent)}}.methodology-blueprint-frame{padding:calc(var(--spacing,.25rem) * 6);--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-shadow-color:#0000001a}@supports (color:color-mix(in lab,red,red)){.methodology-blueprint-frame{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black,#000) 10%, transparent) var(--tw-shadow-alpha), transparent)}}@media(min-width:48rem){.methodology-blueprint-frame{padding:calc(var(--spacing,.25rem) * 16)}}.methodology-detail-label{margin-bottom:calc(var(--spacing,.25rem) * 4);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.2em;letter-spacing:.2em;color:var(--color-fronta-red,var(--fronta-red));text-transform:uppercase;font-size:10px;display:block}@media(min-width:48rem){.methodology-detail-label{margin-bottom:calc(var(--spacing,.25rem) * 10)}}.methodology-detail-title{margin-bottom:calc(var(--spacing,.25rem) * 4);max-width:var(--container-md,28rem);font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)));--tw-font-weight:var(--font-weight-bold,700);font-weight:var(--font-weight-bold,700)}@media(min-width:48rem){.methodology-detail-title{margin-bottom:calc(var(--spacing,.25rem) * 8);font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)))}}.methodology-detail-title{font-family:var(--font-display)}.methodology-detail-desc{margin-bottom:calc(var(--spacing,.25rem) * 8);max-width:var(--container-2xl,42rem);font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ));--tw-leading:var(--leading-relaxed,1.625);line-height:var(--leading-relaxed,1.625);color:var(--color-fronta-muted,var(--fronta-muted))}@media(min-width:48rem){.methodology-detail-desc{margin-bottom:calc(var(--spacing,.25rem) * 12);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)))}}.methodology-list{gap:calc(var(--spacing,.25rem) * 4);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--color-fronta-border,var(--fronta-border));grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@supports (color:color-mix(in lab,red,red)){.methodology-list{border-color:color-mix(in oklab,var(--color-fronta-border,var(--fronta-border)) 30%,transparent)}}.methodology-list{padding-top:calc(var(--spacing,.25rem) * 6)}@media(min-width:40rem){.methodology-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:48rem){.methodology-list{gap:calc(var(--spacing,.25rem) * 6);padding-top:calc(var(--spacing,.25rem) * 12)}}.methodology-list-item{align-items:center;gap:calc(var(--spacing,.25rem) * 3);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);font-size:var(--text-xs,.75rem);line-height:var(--tw-leading,var(--text-xs--line-height,calc(1 / .75)));--tw-tracking:var(--tracking-wider,.05em);letter-spacing:var(--tracking-wider,.05em);text-transform:uppercase;display:flex}@media(min-width:48rem){.methodology-list-item{font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)))}}.methodology-list-item i{height:calc(var(--spacing,.25rem) * 1);width:calc(var(--spacing,.25rem) * 1);background-color:var(--color-fronta-red,var(--fronta-red));border-radius:3.40282e38px}.service-card-grid{pointer-events:none;inset:calc(var(--spacing,.25rem) * 0);opacity:0;transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:1s;transition-duration:1s;position:absolute}@media(min-width:768px){.methodology-row:after{content:"";top:calc(var(--spacing,.25rem) * 0);bottom:calc(var(--spacing,.25rem) * 0);left:calc(var(--spacing,.25rem) * -12);background-color:var(--color-fronta-border,var(--fronta-border));opacity:.2;width:1px;position:absolute}.methodology-sticky-header:before{content:"";top:50%;left:calc(var(--spacing,.25rem) * -16);height:1px;width:calc(var(--spacing,.25rem) * 8);background-color:var(--color-fronta-red,var(--fronta-red));opacity:.4;position:absolute}}@media(max-width:767px){.methodology-section-header .section-title{margin-bottom:calc(var(--spacing,.25rem) * 5)}.methodology-section-header .section-subtitle{margin-top:calc(var(--spacing,.25rem) * 4);margin-bottom:calc(var(--spacing,.25rem) * 0)}.methodology-side-title{margin-bottom:calc(var(--spacing,.25rem) * 3);font-size:2rem}.methodology-index-large{right:calc(var(--spacing,.25rem) * 0);font-size:7rem}}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-duration:initial;--tw-tracking:initial;--tw-leading:initial;--tw-font-weight:initial;--tw-outline-style:solid;--tw-ease:initial;--tw-border-style:solid;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}.section-portfolio{padding-block:calc(var(--spacing,.25rem) * 20)}@media(min-width:48rem){.section-portfolio{padding-block:calc(var(--spacing,.25rem) * 48)}}.portfolio-stack{max-width:var(--container-7xl,80rem);margin-inline:auto;position:relative}.portfolio-item{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);width:100%;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-shadow-color:#0003;border-radius:1.75rem;position:sticky;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.portfolio-item{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black,#000) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.portfolio-item{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.7s;height:clamp(580px,78vh,780px);z-index:var(--stack-z,10);top:var(--stack-top,100px);margin-top:var(--stack-margin,0);transition-duration:.7s}.portfolio-item:hover .portfolio-image{opacity:1;transform:scale(1.018)}.portfolio-sheet{height:100%;min-height:calc(var(--spacing,.25rem) * 0);flex-direction:column;display:flex}.portfolio-sheet-header{min-height:calc(var(--spacing,.25rem) * 20);align-items:center;gap:calc(var(--spacing,.25rem) * 4);padding-inline:calc(var(--spacing,.25rem) * 6);padding-block:calc(var(--spacing,.25rem) * 4);flex-shrink:0;display:grid}@media(min-width:48rem){.portfolio-sheet-header{padding-inline:calc(var(--spacing,.25rem) * 8);grid-template-columns:1fr auto 1fr}}.portfolio-metadata{min-width:calc(var(--spacing,.25rem) * 0);align-items:center;gap:calc(var(--spacing,.25rem) * 3);display:flex}.portfolio-index,.portfolio-tag,.portfolio-divider{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.18em;letter-spacing:.18em;text-transform:uppercase;font-size:.68rem}.portfolio-index{color:var(--color-fronta-red,var(--fronta-red))}.portfolio-divider{color:var(--color-fronta-muted,var(--fronta-muted))}.portfolio-tag{text-overflow:ellipsis;white-space:nowrap;color:var(--color-fronta-text,var(--fronta-text));overflow:hidden}@supports (color:color-mix(in lab,red,red)){.portfolio-tag{color:color-mix(in oklab,var(--color-fronta-text,var(--fronta-text)) 70%,transparent)}}.portfolio-title{font-size:var(--text-2xl,1.5rem);line-height:var(--tw-leading,var(--text-2xl--line-height,calc(2 / 1.5)));--tw-leading:1;--tw-font-weight:var(--font-weight-bold,700);line-height:1;font-weight:var(--font-weight-bold,700);--tw-tracking:var(--tracking-tight,-.025em);letter-spacing:var(--tracking-tight,-.025em)}@media(min-width:48rem){.portfolio-title{text-align:center;font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height, 1.2 ))}}.portfolio-description{max-width:var(--container-3xl,48rem);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-leading:var(--leading-relaxed,1.625);line-height:var(--leading-relaxed,1.625);color:var(--color-fronta-muted,var(--fronta-muted))}@media(min-width:48rem){.portfolio-description{font-size:var(--text-base,1rem);line-height:var(--tw-leading,var(--text-base--line-height, 1.5 ))}}.portfolio-cta{align-items:center;gap:calc(var(--spacing,.25rem) * 3);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.16em;letter-spacing:.16em;color:var(--color-fronta-muted,var(--fronta-muted));text-transform:uppercase;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));justify-self:flex-start;font-size:11px;display:inline-flex}@media(min-width:48rem){.portfolio-cta{justify-self:flex-end}}.portfolio-cta:hover{color:var(--color-fronta-red,var(--fronta-red))}.portfolio-cta span{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}.portfolio-cta:hover span{transform:translate(2px)}.portfolio-image-container{min-height:calc(var(--spacing,.25rem) * 0);border-radius:var(--radius-3xl,1.5rem);background-color:var(--color-fronta-dark,var(--fronta-bg));flex:1;display:block;position:relative;overflow:hidden}.portfolio-image-link{cursor:pointer}.portfolio-image-link:focus-visible{outline-style:var(--tw-outline-style);outline-offset:4px;outline-width:2px;outline-color:var(--color-fronta-red,var(--fronta-red))}.portfolio-image{inset:calc(var(--spacing,.25rem) * 0);object-fit:cover;opacity:.95;width:100%;height:100%;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:1s;--tw-ease:var(--ease-out,cubic-bezier(0, 0, .2, 1));transition-duration:1s;transition-timing-function:var(--ease-out,cubic-bezier(0, 0, .2, 1));position:absolute}.portfolio-sheet-footer{min-height:calc(var(--spacing,.25rem) * 24);justify-content:space-between;align-items:center;gap:calc(var(--spacing,.25rem) * 8);padding-inline:calc(var(--spacing,.25rem) * 6);padding-block:calc(var(--spacing,.25rem) * 5);flex-shrink:0;display:flex}@media(min-width:48rem){.portfolio-sheet-footer{padding-inline:calc(var(--spacing,.25rem) * 8)}}.portfolio-sheet-mark{font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.2em;letter-spacing:.2em;color:var(--color-fronta-muted,var(--fronta-muted));flex-shrink:0;font-size:.62rem;display:none}@supports (color:color-mix(in lab,red,red)){.portfolio-sheet-mark{color:color-mix(in oklab,var(--color-fronta-muted,var(--fronta-muted)) 60%,transparent)}}@media(min-width:48rem){.portfolio-sheet-mark{display:block}}.portfolio-item--app .portfolio-image-container{padding:calc(var(--spacing,.25rem) * 3);background-color:#080b1e}@media(min-width:40rem){.portfolio-item--app .portfolio-image-container{padding:calc(var(--spacing,.25rem) * 6)}}@media(min-width:48rem){.portfolio-item--app .portfolio-image-container{padding:calc(var(--spacing,.25rem) * 10)}}.portfolio-item--app .portfolio-image{border-radius:var(--radius-lg,.5rem);border-style:var(--tw-border-style);border-width:1px;border-color:#ffffff1a;width:100%;height:100%;position:relative;inset:auto}@supports (color:color-mix(in lab,red,red)){.portfolio-item--app .portfolio-image{border-color:color-mix(in oklab,var(--color-white,#fff) 10%,transparent)}}.portfolio-item--app .portfolio-image{object-fit:contain;--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);--tw-shadow-color:#0006}@supports (color:color-mix(in lab,red,red)){.portfolio-item--app .portfolio-image{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-black,#000) 40%, transparent) var(--tw-shadow-alpha), transparent)}}.portfolio-all-projects{margin-top:calc(var(--spacing,.25rem) * 10);justify-content:center;display:flex}@media(min-width:48rem){.portfolio-all-projects{margin-top:calc(var(--spacing,.25rem) * 20)}}.portfolio-all-projects a{align-items:center;gap:calc(var(--spacing,.25rem) * 3);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-font-weight:var(--font-weight-semibold,600);font-weight:var(--font-weight-semibold,600);color:var(--color-fronta-text,var(--fronta-text));transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:inline-flex}@media(hover:hover){.portfolio-all-projects a:hover{color:var(--color-fronta-red,var(--fronta-red))}}.portfolio-all-projects a span{color:var(--color-fronta-red,var(--fronta-red));transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s))}.portfolio-all-projects a:hover span{--tw-translate-x:calc(var(--spacing,.25rem) * 1);translate:var(--tw-translate-x) var(--tw-translate-y)}@media(max-width:768px){.portfolio-item{margin-bottom:calc(var(--spacing,.25rem) * 8);border-radius:1.5rem;height:auto;margin-top:0;position:static}.portfolio-sheet-header{align-items:flex-start;gap:calc(var(--spacing,.25rem) * 3);padding-inline:calc(var(--spacing,.25rem) * 5);padding-block:calc(var(--spacing,.25rem) * 5);grid-template-columns:repeat(1,minmax(0,1fr))}.portfolio-image-container{aspect-ratio:16/10;flex:none}.portfolio-title{font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height, 1.2 ))}.portfolio-sheet-footer{min-height:calc(var(--spacing,.25rem) * 0);padding-inline:calc(var(--spacing,.25rem) * 5);padding-block:calc(var(--spacing,.25rem) * 5)}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ease{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-tracking:initial;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.marquee-container{width:100%;padding-block:calc(var(--spacing,.25rem) * 12);position:relative;overflow:hidden}@media(min-width:48rem){.marquee-container{padding-block:calc(var(--spacing,.25rem) * 20)}}.marquee-label{z-index:30;margin-bottom:calc(var(--spacing,.25rem) * 10);padding-inline:calc(var(--spacing,.25rem) * 6);text-align:center;font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);--tw-tracking:.25em;letter-spacing:.25em;color:var(--color-fronta-muted,var(--fronta-muted));text-transform:uppercase;font-size:10px;position:relative}.marquee-container:before,.marquee-container:after{content:"";pointer-events:none;inset-block:calc(var(--spacing,.25rem) * 0);z-index:20;width:calc(var(--spacing,.25rem) * 32);position:absolute}@media(min-width:48rem){.marquee-container:before,.marquee-container:after{width:calc(var(--spacing,.25rem) * 64)}}.marquee-container:before{left:calc(var(--spacing,.25rem) * 0);--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--color-fronta-dark,var(--fronta-bg));--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.marquee-container:after{right:calc(var(--spacing,.25rem) * 0);--tw-gradient-position:to left in oklab;background-image:linear-gradient(var(--tw-gradient-stops));--tw-gradient-from:var(--color-fronta-dark,var(--fronta-bg));--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.marquee-stack{gap:calc(var(--spacing,.25rem) * 12);flex-direction:column;display:flex}@media(min-width:48rem){.marquee-stack{gap:calc(var(--spacing,.25rem) * 20)}}.marquee-content{white-space:nowrap;display:flex}.marquee-track{will-change:transform;align-items:center;animation:50s linear infinite marquee-scroll;display:flex}.marquee-reverse .marquee-track{animation-direction:reverse}.marquee-logo-item{align-items:center;gap:calc(var(--spacing,.25rem) * 16);padding-inline:calc(var(--spacing,.25rem) * 8);display:flex}@media(min-width:48rem){.marquee-logo-item{gap:calc(var(--spacing,.25rem) * 32);padding-inline:calc(var(--spacing,.25rem) * 16)}}.client-logo{opacity:.5;--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);pointer-events:none;justify-content:center;align-items:center;display:flex}.logo-img{object-fit:contain;width:auto;max-width:120px}@media(min-width:48rem){.logo-img{max-width:160px}}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.marquee-track{animation-play-state:paused}}@media(max-width:768px){.marquee-container{padding-block:calc(var(--spacing,.25rem) * 10)}.marquee-label{margin-bottom:calc(var(--spacing,.25rem) * 8)}.marquee-track{animation-duration:30s}.marquee-logo-item{gap:calc(var(--spacing,.25rem) * 20);padding-inline:calc(var(--spacing,.25rem) * 10)}}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-duration:initial;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0}}}.section-about{padding-block:calc(var(--spacing,.25rem) * 20)}@media(min-width:48rem){.section-about{padding-block:calc(var(--spacing,.25rem) * 48)}}.about-header-split{align-items:flex-start;gap:calc(var(--spacing,.25rem) * 6);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media(min-width:48rem){.about-header-split{gap:calc(var(--spacing,.25rem) * 16);grid-template-columns:repeat(12,minmax(0,1fr))}}.about-title{font-size:var(--text-3xl,1.875rem);line-height:var(--tw-leading,var(--text-3xl--line-height, 1.2 ));--tw-leading:1.1;--tw-font-weight:var(--font-weight-bold,700);line-height:1.1;font-weight:var(--font-weight-bold,700);--tw-tracking:var(--tracking-tighter,-.05em);letter-spacing:var(--tracking-tighter,-.05em);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));--tw-duration:.7s;transition-duration:.7s}@media(min-width:48rem){.about-title{font-size:var(--text-6xl,3.75rem);line-height:var(--tw-leading,var(--text-6xl--line-height,1));grid-column:5/13}}.about-title{font-family:var(--font-display)}.about-highlight{color:var(--color-fronta-red,var(--fronta-red))}.about-meta{margin-top:calc(var(--spacing,.25rem) * 7);font-size:var(--text-lg,1.125rem);line-height:var(--tw-leading,var(--text-lg--line-height,calc(1.75 / 1.125)));--tw-leading:var(--leading-relaxed,1.625);line-height:var(--leading-relaxed,1.625);color:var(--color-fronta-muted,var(--fronta-muted))}@media(min-width:48rem){.about-meta{margin-top:calc(var(--spacing,.25rem) * 12);font-size:var(--text-xl,1.25rem);line-height:var(--tw-leading,var(--text-xl--line-height,calc(1.75 / 1.25)));grid-column:5/11}}.about-link{margin-top:calc(var(--spacing,.25rem) * 7);align-items:center;gap:calc(var(--spacing,.25rem) * 3);font-family:var(--font-mono,"JetBrains Mono", "Fira Code", "Courier New", monospace);font-size:var(--text-sm,.875rem);line-height:var(--tw-leading,var(--text-sm--line-height,calc(1.25 / .875)));--tw-tracking:var(--tracking-widest,.1em);letter-spacing:var(--tracking-widest,.1em);color:var(--color-fronta-red,var(--fronta-red));text-transform:uppercase;transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function,cubic-bezier(.4, 0, .2, 1)));transition-duration:var(--tw-duration,var(--default-transition-duration,.15s));display:inline-flex}@media(min-width:48rem){.about-link{margin-top:calc(var(--spacing,.25rem) * 10);grid-column:5/11}}.about-link:hover{--tw-translate-x:calc(var(--spacing,.25rem) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}@media(max-width:768px){.about-title{font-size:var(--text-4xl,2.25rem);line-height:var(--tw-leading,var(--text-4xl--line-height,calc(2.5 / 2.25)))}}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}
