@font-face{font-family:Portfolio Pixel;src:url('/assets/fonts/pixelify-sans-medium.ttf') format('truetype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:Portfolio Plex;src:url('/assets/fonts/ibm-plex-mono-medium-italic.ttf') format('truetype');font-style:italic;font-weight:500;font-display:swap}
/* These are feature titles even where the export uses a body-sized H4. */
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main .framer-wbGfx :is(.framer-14x77ny,.framer-1roha8b){width:100%!important;min-width:0!important}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main .portfolio-feature-heading.framer-text{font-size:clamp(24px,2.8vw,36px)!important;line-height:1.18!important;font-weight:500!important;letter-spacing:-.04em!important;text-wrap:balance}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main .portfolio-projects-heading.framer-text{font-size:clamp(44px,5.3vw,68px)!important;line-height:1.06!important}
@media(max-width:809px){
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main .portfolio-feature-heading.framer-text{font-size:clamp(22px,6.15vw,28px)!important}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main .portfolio-projects-heading.framer-text{font-size:clamp(40px,12vw,52px)!important}
}
/* Keep the existing title text and spaces; change only its original accent runs. */
/* Mono spaces occupy a full character cell: reduce them to an editorial word gap. */
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text{word-spacing:-.24em!important}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .framer-text{word-spacing:-.24em!important;letter-spacing:inherit!important}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-accent{display:inline!important;margin:0!important;padding:0!important;font-size:inherit!important;line-height:inherit!important;word-spacing:inherit!important;vertical-align:baseline;font-kerning:normal}
html[data-portfolio-theme="frosted"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text.portfolio-heading-accent,
html[data-portfolio-theme="frosted"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-accent{font-family:Portfolio Pixel,sans-serif!important;font-style:normal!important;font-weight:500!important;letter-spacing:-.025em!important;--framer-font-family:"Portfolio Pixel",sans-serif!important;--framer-font-style:normal!important}
html[data-portfolio-theme="tactile"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text.portfolio-heading-accent,
html[data-portfolio-theme="tactile"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-accent{font-family:Portfolio Plex,monospace!important;font-style:italic!important;font-weight:500!important;--framer-font-family:"Portfolio Plex",monospace!important;--framer-font-style:italic!important}
html[data-portfolio-theme="tactile"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-accent{letter-spacing:inherit!important}
html[data-portfolio-theme="frosted"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text.portfolio-heading-accent,
html[data-portfolio-theme="frosted"] #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-accent{word-spacing:normal!important}
html:is([data-portfolio-theme="frosted"],[data-portfolio-theme="tactile"]) #main :is(h1,h2,h3,.portfolio-feature-heading).framer-text .portfolio-heading-punctuation{margin-left:-.1em!important}
