/*
   Infynite AI Studio — media-first portfolio system
   A fresh visual direction: editorial, tactile, dark and motion-led.
*/

:root {
  --hf-bg: #08090b;
  --hf-panel: #111216;
  --hf-panel-soft: #17191e;
  --hf-ink: #f1eee8;
  --hf-muted: #9b9c9e;
  --hf-line: rgba(241, 238, 232, .17);
  --hf-signal: #dbff6b;
  --hf-signal-hot: #ff6b3d;
  --hf-blue: #94a8ff;
  --font-display: "Syne", "Manrope", Arial, sans-serif;
  --font-sans: "Manrope", Arial, sans-serif;
  --font-mono: "DM Mono", monospace;
}

html { background: var(--hf-bg); }
body.portfolio-higgs {
  background: var(--hf-bg);
  color: var(--hf-ink);
  font-family: var(--font-sans);
  letter-spacing: -.015em;
}
body.portfolio-higgs::before { background: rgba(3, 4, 6, .26); }
body.portfolio-higgs.is-disc-hovering::before { backdrop-filter: blur(10px) saturate(.75); opacity: 1; }

.site-atmosphere { inset: 0; overflow: hidden; pointer-events: none; position: fixed; z-index: -1; }
.site-atmosphere::before,
.site-atmosphere::after,
.site-atmosphere span { content: ""; position: absolute; }
.site-atmosphere::before {
  background-image: radial-gradient(rgba(255,255,255,.15) .55px, transparent .55px);
  background-size: 5px 5px;
  inset: 0;
  opacity: .08;
}
.site-atmosphere::after {
  background: radial-gradient(circle at 53% 4%, rgba(152, 171, 255, .13), transparent 21%), radial-gradient(circle at 8% 41%, rgba(216,255,108,.06), transparent 24%), radial-gradient(circle at 97% 72%, rgba(255,104,62,.07), transparent 28%);
  inset: 0;
}
.site-atmosphere span:nth-child(1) { animation: hf-orbit-one 22s ease-in-out infinite alternate; border: 1px solid rgba(216,255,108,.13); border-radius: 50%; height: 64vw; left: -26vw; top: 32vh; width: 64vw; }
.site-atmosphere span:nth-child(2) { animation: hf-orbit-two 29s ease-in-out -10s infinite alternate; border: 1px solid rgba(148,168,255,.14); border-radius: 50%; height: 52vw; right: -25vw; top: 107vh; width: 52vw; }
.site-atmosphere span:nth-child(3) { animation: hf-glint 6s ease-in-out infinite; background: var(--hf-signal); border-radius: 50%; box-shadow: 0 0 20px var(--hf-signal); height: 4px; left: 73vw; opacity: .4; top: 27vh; width: 4px; }

/* Shared micro language */
.section-pad { padding: clamp(6.5rem, 11vw, 11.5rem) 5vw; }
.section-kicker,
.hero-overline,
.availability,
.film-strip-topic-head h3::before,
.fashion-head h2::before {
  font-family: var(--font-mono);
  font-size: .66rem;
  font-weight: 500;
  letter-spacing: .15em;
  text-transform: uppercase;
}
.section-kicker { color: var(--hf-signal); margin: 0; }
h2,
.fashion-head h2,
.film-strip-topic-head h3 { font-family: var(--font-display); }

/* Loader */
.site-loader { background: #08090b; }
.site-loader::before { background: radial-gradient(circle, rgba(216,255,107,.14), transparent 52%); }
.loader-brand { gap: 1rem; }
.loader-mark { background: var(--hf-ink); width: min(38vw, 330px); }
.loader-mark span { background: linear-gradient(90deg, var(--hf-signal), #fff, var(--hf-blue)); }
.loader-brand p { color: var(--hf-muted); }
.loader-brand .loader-credit { color: var(--hf-ink); font-size: clamp(.8rem, 1.2vw, 1.1rem); }

/* Navigation */
.minimal-nav {
  align-items: center;
  background: linear-gradient(180deg, rgba(8,9,11,.88), rgba(8,9,11,.45) 68%, transparent);
  left: 0;
  padding: 1.3rem 4.2vw 2.5rem;
  position: fixed;
  right: 0;
  top: 0;
}
.minimal-nav::after { background: linear-gradient(90deg, rgba(241,238,232,.35), rgba(241,238,232,.06)); box-shadow: none; height: 1px; left: 4.2vw; right: 4.2vw; top: 4.75rem; }
.studio-brand { color: var(--hf-ink); font: 700 .71rem/.9 var(--font-display); letter-spacing: -.025em; }
.studio-brand > span { white-space: nowrap; }
.studio-brand::before {
  background: linear-gradient(125deg, #d9ff6b 0%, #78e7ff 31%, #aa8dff 57%, #ff7da5 80%, #ffe16e 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  content: "∞";
  display: inline-block;
  font: 800 1.38rem/.5 var(--font-display);
  letter-spacing: -.14em;
  margin-right: .66rem;
  transform: translateY(.12rem);
  vertical-align: .05rem;
}
.studio-brand small { color: var(--hf-muted); font: 500 .48rem/1.2 var(--font-mono); letter-spacing: .11em; margin: .35rem 0 0 1rem; }
.nav-links { gap: clamp(.9rem, 2.3vw, 2.5rem); padding: 0; }
.nav-links a { color: var(--hf-muted); font-size: .61rem; letter-spacing: .12em; }
.nav-links a:hover { color: var(--hf-signal); text-shadow: none; }

/* Hero / primary media stage */
.hero {
  background:
    linear-gradient(90deg, rgba(8,9,11,.98) 0%, rgba(8,9,11,.86) 36%, rgba(8,9,11,.25) 64%, rgba(8,9,11,.8) 100%),
    radial-gradient(ellipse at 70% 54%, rgba(130,147,232,.34), transparent 35%),
    #0d0e12;
  min-height: max(48rem, 100svh);
}
.hero::before {
  animation: hf-hero-scan 12s ease-in-out infinite alternate;
  background:
    repeating-linear-gradient(90deg, transparent 0 calc(25% - 1px), rgba(255,255,255,.09) calc(25% - 1px) 25%),
    linear-gradient(145deg, transparent 35%, rgba(216,255,108,.19) 49%, transparent 64%);
  opacity: .48;
}
.hero::after { background: linear-gradient(0deg, #08090b 0%, transparent 23%); content: ""; inset: auto 0 0; height: 32%; pointer-events: none; position: absolute; z-index: 5; }
.hero > :not(.hero-avatar-stage):not(.hero-shape),
.hero-avatar-stage,
.hero-shape { z-index: 6; }
.availability { color: var(--hf-ink); left: 5vw; top: clamp(10.4rem, 15vh, 12.4rem); }
.availability i { animation: hf-availability-flash .68s ease-in-out infinite; background: #67ff8d; box-shadow: 0 0 0 6px rgba(103,255,141,.1), 0 0 16px rgba(103,255,141,.95); height: .64rem; margin-right: .68rem; width: .64rem; }
@keyframes hf-availability-flash {
  0%, 100% { background: #67ff8d; box-shadow: 0 0 0 4px rgba(103,255,141,.16), 0 0 13px 3px rgba(103,255,141,.95); opacity: .75; transform: scale(.85); }
  50% { background: #f2ff4f; box-shadow: 0 0 0 10px rgba(242,255,79,.08), 0 0 25px 7px rgba(242,255,79,1); opacity: 1; transform: scale(1.24); }
}
.hero-copy { bottom: clamp(4.6rem, 7.5vh, 7rem); left: 5vw; max-width: min(67rem, 71vw); }
.hero-overline { color: var(--hf-signal); margin-bottom: 1.2rem; }
.hero h1 { color: var(--hf-ink); font: 500 clamp(4.2rem, 10.3vw, 10.8rem)/.79 var(--font-display); letter-spacing: -.1em; max-width: 9ch; }
.hero h1 em { color: var(--hf-ink); display: inline; font-style: normal; margin: 0; position: relative; }
.hero h1 em::after { display: none; }
.founder-line { color: var(--hf-muted); font-size: .61rem; gap: .55rem; letter-spacing: .1em; margin: 1.8rem 0 0 .12rem; }
.founder-line b { color: var(--hf-ink); }
.studio-logo-icon { background: var(--hf-signal); height: .8rem; width: 1.45rem; }
.connect-orb {
  animation: none;
  background: var(--hf-signal);
  border: 0;
  border-radius: .2rem;
  box-shadow: none;
  color: #10120c;
  height: 4.7rem;
  justify-content: flex-start;
  margin: 2rem 0 0;
  padding: 1rem;
  width: 10.5rem;
}
.connect-orb::after { border-color: rgba(8,9,11,.3); border-radius: 0; inset: .38rem; }
.connect-orb span { font: 600 .82rem/1.18 var(--font-mono); letter-spacing: .075em; }
.connect-orb b { bottom: .84rem; font: 500 1.3rem/1 var(--font-sans); right: .9rem; }
.connect-orb:hover { animation: none; background: var(--hf-ink); box-shadow: 0 0 0 .35rem rgba(216,255,108,.16); color: #0b0c0c; transform: translateY(-.3rem); }
.hero-avatar-stage { bottom: 0; filter: drop-shadow(-3rem 2.7rem 3.6rem rgba(0,0,0,.58)); height: min(78vh, 49rem); left: auto; right: 8vw; transform: none; width: min(44vw, 37rem); }
.scene-avatar { filter: contrast(1.05) saturate(.92); mask-image: linear-gradient(to bottom, #000 0 75%, rgba(0,0,0,.94) 88%, transparent 100%); object-position: bottom center; }
.hero-linkedin-orb { animation: hf-linkedin-float 4.8s ease-in-out infinite; background: linear-gradient(140deg, rgba(216,255,108,.3), rgba(148,168,255,.18)); border-color: rgba(216,255,108,.65); border-radius: 50%; box-shadow: 0 0 0 .3rem rgba(216,255,108,.07), 0 0 26px rgba(216,255,108,.4), inset 0 0 17px rgba(255,255,255,.1); bottom: clamp(12rem, 25vh, 17rem); height: 3.55rem; left: clamp(18rem, 43vw, 40rem); right: auto; top: auto; width: 3.55rem; }
.hero-linkedin-orb::after { border-color: rgba(241,238,232,.5); border-radius: 50%; inset: .32rem; }
.hero-linkedin-orb:hover { animation-play-state: paused; background: var(--hf-signal); box-shadow: 0 0 0 .45rem rgba(216,255,108,.14), 0 0 34px rgba(216,255,108,.72); transform: translateY(-.25rem) rotate(8deg) scale(1.08); }
.hero-linkedin-orb:hover .linkedin-icon { fill: #0d0f0b; }
.linkedin-orbit-text { display: none; }
@keyframes hf-linkedin-float { 0%, 100% { transform: translate3d(0, 0, 0) rotate(-3deg); } 50% { transform: translate3d(.4rem, -.8rem, 0) rotate(3deg); } }
.hero-scroll { background: rgba(8,9,11,.58); border-color: var(--hf-line); border-radius: 0; bottom: 2.1rem; padding: .75rem 1rem; }
.hero-scroll span { color: var(--hf-ink); }
.hero-scroll b { color: var(--hf-signal); font-family: var(--font-sans); }
.hero-scroll:hover { background: var(--hf-signal); box-shadow: none; transform: translateX(-50%) translateY(-.25rem); }
.hero-scroll:hover span, .hero-scroll:hover b { color: #0b0c0c; }
.hero-foot { bottom: 3.1rem; color: var(--hf-muted); font-size: .56rem; letter-spacing: .14em; right: 5vw; writing-mode: horizontal-tb; }
.hero-shape { display: none; }
.hero-reel-bar { border-block: 1px solid rgba(241,238,232,.12); bottom: auto; top: 5.15rem; z-index: 7; }
.hero-reel-track { animation-duration: 42s; gap: 0; transform: translateX(-50%); }
.hero-reel-sequence { --reel-gap: 1px; gap: var(--reel-gap); padding-right: var(--reel-gap); }
.hero-reel-clip { border: 0; border-radius: .48rem; filter: grayscale(.1) brightness(.78); height: clamp(3.5rem, 5.1vw, 5.4rem); width: clamp(8rem, 12vw, 13rem); }

/* Main flow and intro */
.content-flow { background: transparent; overflow: clip; }
.content-flow::before,
.content-flow::after { display: none; }
.intro { border-top: 1px solid var(--hf-line); }
.intro-grid { align-items: start; gap: clamp(2.5rem, 8vw, 10rem); grid-template-columns: minmax(0, 1.25fr) minmax(17rem, .75fr); }
.intro h2,
.about h2,
.contact h2 { color: var(--hf-ink); font: 500 clamp(3.25rem, 7vw, 8.2rem)/.83 var(--font-display); letter-spacing: -.09em; }
.intro h2 em,
.about h2 em,
.contact h2 em { color: var(--hf-signal); font-style: normal; }
.intro-body { color: var(--hf-muted); font-size: clamp(1rem, 1.2vw, 1.18rem); line-height: 1.55; max-width: 29rem; padding-top: .65rem; }
.intro-body p { margin-bottom: 1.4rem; }
.intro-note { border-left-color: var(--hf-signal); color: var(--hf-ink); padding-left: 1rem; }
.proof-grid { gap: 1px; grid-template-columns: repeat(3, 1fr); margin-top: clamp(4rem, 8vw, 8rem); }
.proof-card { align-items: flex-start; background: rgba(255,255,255,.025); border: 1px solid var(--hf-line); border-radius: 0; box-shadow: none; min-height: 14rem; padding: clamp(1.25rem, 2.5vw, 2.4rem); text-align: left; }
.proof-card:hover { border-color: var(--hf-signal); transform: none; }
.proof-card strong { align-items: flex-start; animation: none; color: var(--hf-ink); font: 500 clamp(3rem, 5vw, 5.4rem)/.78 var(--font-display); gap: .45rem; letter-spacing: -.09em; }
.proof-card strong b { color: var(--hf-ink); text-shadow: none; }
.proof-card small { color: var(--hf-signal); font: 500 .58rem/1.2 var(--font-mono); }
.proof-card span { color: var(--hf-muted); font-size: .78rem; letter-spacing: 0; margin-top: auto; }

/* Fashion as a featured visual channel */
.fashion { border-top: 1px solid var(--hf-line); overflow: visible; padding-bottom: clamp(5rem, 10vw, 10rem); padding-top: clamp(5rem, 10vw, 10rem); }
.fashion-head { align-items: end; display: grid; gap: 1.2rem; grid-template-columns: minmax(10rem, .55fr) 1.45fr; margin: 0 auto clamp(2rem, 4vw, 3.8rem); max-width: 90rem; }
.fashion-head .section-kicker { align-self: start; border-top: 1px solid var(--hf-line); padding-top: .6rem; }
.fashion-head h2 { color: var(--hf-ink); font: 500 clamp(2.7rem, 6vw, 7rem)/.84 var(--font-display); letter-spacing: -.09em; margin: 0; max-width: 11ch; }
.fashion-head h2 em { color: var(--hf-signal); font-style: normal; }
.fashion-handoff { background: linear-gradient(110deg, rgba(255,255,255,.026), transparent 48%), #111216; border-block: 1px solid var(--hf-line); margin: 0 -5vw; min-height: clamp(31rem, 45vw, 45rem); width: 100vw; }
.fashion-handoff::after { background-image: linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px); background-size: 4rem 4rem; opacity: .24; }
.fashion-folder-deck::before,
.fashion-folder-deck::after { color: var(--hf-signal); font-family: var(--font-mono); opacity: .45; text-shadow: 0 0 14px rgba(216,255,108,.35); }
.fashion-bunch { height: min(72%, 30rem); width: min(33vw, 26rem); }
.fashion-bunch-photos { height: calc(100% - 2.8rem); }
.fashion-bunch-photos::after { filter: blur(18px); opacity: .45; }
.fashion-bunch-photos img { aspect-ratio: .78; background: #0d0e10; border-color: rgba(255,255,255,.34); border-radius: .25rem; box-shadow: 1.1rem 1.5rem 3.3rem rgba(0,0,0,.52); width: 77%; }
.fashion-bunch-photos img:nth-child(1) { filter: brightness(.55) saturate(.75); }
.fashion-bunch-photos img:nth-child(2) { filter: brightness(.72) saturate(.88); }
.fashion-bunch:hover { filter: brightness(1.05) saturate(1.12); }
.fashion-topic { color: var(--hf-ink); font: 500 clamp(.78rem, 1.1vw, 1rem)/1.15 var(--font-mono); letter-spacing: .02em; text-shadow: 0 .15rem 1rem #08090b; }
.fashion-bunch:hover .fashion-topic { color: var(--hf-signal); }
.fashion-motion-controls { bottom: 1.55rem; right: 5vw; }

/* Content library */
.disc-library { border-top: 1px solid var(--hf-line); padding-block: 0; }
.disc-library::before,
.disc-library::after { display: none; }
.film-strip-topic { border-bottom: 1px solid var(--hf-line); padding: clamp(3.6rem, 7vw, 7rem) 0 clamp(3rem, 6vw, 6rem); }
.film-strip-topic::before { background: radial-gradient(circle at 16% 38%, rgba(216,255,108,.09), transparent 28%), radial-gradient(circle at 84% 54%, rgba(148,168,255,.12), transparent 34%); opacity: 1; }
.film-strip-topic:nth-child(even)::before { background: radial-gradient(circle at 84% 38%, rgba(255,106,62,.1), transparent 28%), radial-gradient(circle at 16% 54%, rgba(148,168,255,.1), transparent 34%); }
.film-strip-topic-head { align-items: start; gap: 1rem; margin-bottom: clamp(1.6rem, 3.5vw, 3.1rem); max-width: none; padding-inline: 5vw; }
.film-strip-topic-head h3 { color: var(--hf-ink); font: 500 clamp(2rem, 4.5vw, 5rem)/.9 var(--font-display); letter-spacing: -.08em; max-width: 13ch; }
.film-strip-topic-head h3::before { color: var(--hf-signal); content: "CHANNEL / "; display: block; font-size: .55rem; letter-spacing: .14em; margin: 0 0 .8rem .08rem; }
.showcase-layout { align-items: stretch; display: grid; gap: clamp(1rem, 2vw, 2.5rem); grid-template-columns: minmax(14rem, .5fr) minmax(0, 1.5fr); margin: 0 auto; max-width: 90rem; padding-inline: 5vw; }
.showcase-topic.is-media-left .showcase-layout { grid-template-columns: minmax(0, 1.5fr) minmax(14rem, .5fr); }
.showcase-topic.is-media-right .showcase-media { order: 2; }
.showcase-topic.is-media-right .showcase-list { order: 1; }
.showcase-media { min-height: clamp(22rem, 42vw, 42rem); overflow: hidden; position: relative; }
.showcase-preview-stack { background: #0d0f11; border: 1px solid var(--hf-line); height: 100%; min-height: inherit; overflow: hidden; position: relative; }
.showcase-preview-stack::before { background: linear-gradient(105deg, rgba(216,255,108,.18), transparent 28%, transparent 72%, rgba(148,168,255,.16)); content: ""; inset: 0; pointer-events: none; position: absolute; z-index: 4; }
.showcase-preview { appearance: none; background: #0d0f11; border: 0; cursor: pointer; inset: 0; opacity: 0; overflow: hidden; padding: 0; pointer-events: none; position: absolute; transform: translate3d(9%, 8%, 0) scale(.88); transition: opacity .55s ease, transform .75s cubic-bezier(.2,.9,.2,1); visibility: hidden; width: 100%; }
.showcase-preview.is-active { animation: showcase-arrive .78s cubic-bezier(.2,.9,.2,1) both; opacity: 1; pointer-events: auto; transform: translate3d(0,0,0) scale(1); visibility: visible; z-index: 1; }
.showcase-poster,
.showcase-video { height: 100%; inset: 0; object-fit: cover; position: absolute; transition: transform .6s ease; width: 100%; }
.showcase-poster { filter: saturate(.86) contrast(1.07) brightness(.8); }
.showcase-video { opacity: 0; pointer-events: none; transition: opacity .35s ease, transform .6s ease; }
.showcase-preview.is-playing .showcase-video { opacity: 1; }
.showcase-preview.is-playing .showcase-poster { opacity: 0; }
.showcase-video::-webkit-media-controls,
.showcase-video::-webkit-media-controls-enclosure { display: none !important; }
.showcase-shade { background: linear-gradient(180deg, rgba(3,4,5,.08) 10%, rgba(3,4,5,.03) 36%, rgba(3,4,5,.88) 100%); inset: 0; pointer-events: none; position: absolute; z-index: 2; }
.showcase-copy { align-items: flex-start; bottom: 0; color: var(--hf-ink); display: flex; flex-direction: column; left: 0; max-width: min(31rem, 82%); padding: clamp(1.3rem, 3vw, 3rem); position: absolute; text-align: left; z-index: 3; }
.showcase-copy small { color: var(--hf-signal); font: 500 .6rem/1 var(--font-mono); letter-spacing: .14em; }
.showcase-copy b { font: 500 clamp(1.75rem, 3.5vw, 4.4rem)/.9 var(--font-display); letter-spacing: -.075em; margin-top: .75rem; }
.showcase-copy > span { color: rgba(241,238,232,.78); font-size: clamp(.78rem, 1vw, .98rem); line-height: 1.35; margin-top: .7rem; }
.showcase-copy i { align-items: center; background: var(--hf-signal); color: #0a0c08; display: inline-flex; font: 700 .62rem/1 var(--font-mono); font-style: normal; gap: .8rem; letter-spacing: .13em; margin-top: 1.35rem; padding: .76rem .88rem; }
.showcase-copy i em { border-left: 1px solid rgba(8,9,11,.3); font: 700 1rem/.75 var(--font-sans); font-style: normal; padding-left: .7rem; }
.showcase-preview:hover .showcase-poster,
.showcase-preview:hover .showcase-video,
.showcase-preview:focus-visible .showcase-poster,
.showcase-preview:focus-visible .showcase-video { transform: scale(1.045); }
.showcase-preview:focus-visible { outline: 1px solid var(--hf-signal); outline-offset: -1px; }
.showcase-list { align-self: stretch; border-block: 1px solid var(--hf-line); display: flex; flex-direction: column; min-height: 0; padding: .8rem 0; }
.showcase-list > p { color: var(--hf-muted); font: 500 .57rem/1 var(--font-mono); letter-spacing: .14em; margin: .2rem .75rem .8rem; }
.showcase-list-scroll { display: grid; gap: .15rem; max-height: clamp(22rem, 42vw, 42rem); overflow: auto; padding: 0 .42rem .15rem 0; scrollbar-color: rgba(216,255,108,.48) transparent; }
.showcase-list-item { align-items: center; background: transparent; border: 1px solid transparent; color: var(--hf-muted); cursor: pointer; display: grid; gap: .72rem; grid-template-columns: 4.8rem minmax(0, 1fr) auto; min-height: 4.2rem; padding: .36rem; text-align: left; transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease; }
.showcase-list-item img { aspect-ratio: 1.48; height: 100%; object-fit: cover; width: 4.8rem; }
.showcase-list-item span { display: grid; gap: .32rem; min-width: 0; }
.showcase-list-item b { color: inherit; font: 600 clamp(.71rem, .86vw, .88rem)/1.13 var(--font-sans); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.showcase-list-item small { color: var(--hf-muted); font: 500 .52rem/1 var(--font-mono); letter-spacing: .1em; }
.showcase-list-item > i { color: var(--hf-signal); font: 500 .9rem/1 var(--font-sans); font-style: normal; opacity: 0; transform: translateX(-.3rem); transition: opacity .2s ease, transform .2s ease; }
.showcase-list-item:hover,
.showcase-list-item:focus-visible,
.showcase-list-item.is-active { background: rgba(216,255,108,.1); border-color: rgba(216,255,108,.34); color: var(--hf-ink); outline: 0; }
.showcase-list-item:hover,
.showcase-list-item:focus-visible { transform: translateX(.22rem); }
.showcase-list-item:hover > i,
.showcase-list-item:focus-visible > i,
.showcase-list-item.is-active > i { opacity: 1; transform: translateX(0); }
@keyframes showcase-arrive { from { opacity: 0; transform: translate3d(11%, 9%, 0) scale(.87); } 60% { opacity: 1; transform: translate3d(-1.2%, -.8%, 0) scale(1.014); } to { opacity: 1; transform: translate3d(0,0,0) scale(1); } }

/* About, skills and moving proof */
.about { border-bottom: 1px solid var(--hf-line); border-top: 1px solid var(--hf-line); }
.about::after { display: none; }
.about-top { display: grid; gap: 1.5rem; grid-template-columns: minmax(9rem, .55fr) 1.45fr; margin-bottom: clamp(4rem, 8vw, 8rem); }
.about-top .section-kicker { border-top: 1px solid var(--hf-line); padding-top: .6rem; }
.about-grid { gap: clamp(2rem, 7vw, 8rem); grid-template-columns: minmax(0, 1.05fr) minmax(20rem, .95fr); }
.about-copy { color: var(--hf-muted); font-size: clamp(1rem, 1.2vw, 1.15rem); line-height: 1.6; }
.about-copy b { color: var(--hf-ink); }
.experience-panel { background: #111216; border: 1px solid var(--hf-line); border-radius: 0; box-shadow: none; margin-top: 2.7rem; padding: 1.3rem; }
.experience-kicker { color: var(--hf-signal); font: 500 .58rem var(--font-mono); letter-spacing: .14em; }
.experience-panel > p { color: var(--hf-ink); font-family: var(--font-display); font-size: 1.1rem; line-height: 1.25; margin: .95rem 0 1.4rem; }
.experience-list { border-top-color: var(--hf-line); }
.experience-list li { border-bottom-color: var(--hf-line); }
.experience-list strong { color: var(--hf-ink); font-family: var(--font-sans); }
.experience-list strong small,
.experience-list time { color: var(--hf-signal); }
.experience-list span { color: var(--hf-muted); }
.skills-stack { gap: 1px; }
.skill-card { backdrop-filter: none; background: rgba(255,255,255,.025); border-color: var(--hf-line); border-radius: 0; box-shadow: none; padding: 1.4rem; }
.skill-card > span { color: var(--hf-signal); font-family: var(--font-mono); }
.skill-tags { gap: .45rem; margin-top: 1rem; }
.skill-tags span { backdrop-filter: none; background: transparent; border-color: rgba(241,238,232,.2); border-radius: 99px; box-shadow: none; color: var(--hf-ink); font-size: .7rem; padding: .5rem .7rem; }
.skill-tags span:hover { background: var(--hf-signal); border-color: var(--hf-signal); color: #0a0b09; transform: none; }
.skill-toolkit-groups { margin-top: 1rem; }
.skill-toolkit-group + .skill-toolkit-group { border-top: 1px solid var(--hf-line); margin-top: 1.15rem; padding-top: 1.15rem; }
.skill-toolkit-group h3 { color: var(--hf-muted); font: 500 .58rem/1 var(--font-mono); letter-spacing: .14em; margin: 0; }
.skill-toolkit-group .skill-tags { margin-top: .7rem; }
.about-reel-wall { border-bottom: 1px solid var(--hf-line); border-top: 1px solid var(--hf-line); margin: clamp(5rem, 10vw, 10rem) -5vw -1px; padding: 1px 0; width: 100vw; }
.about-reel-row { margin-top: 1px; }
.about-reel-clip { border-radius: .48rem; filter: saturate(.75) contrast(1.06) brightness(.8); }

/* Contact / end frame */
.contact { min-height: 88vh; padding-bottom: 3.4rem; padding-top: clamp(7rem, 13vw, 13rem); }
.contact::before { background: radial-gradient(circle at 74% 39%, rgba(216,255,108,.14), transparent 23%), radial-gradient(circle at 86% 80%, rgba(148,168,255,.14), transparent 22%); content: ""; inset: 0; pointer-events: none; position: absolute; }
.contact .section-kicker { border-top: 1px solid var(--hf-line); display: block; padding-top: .6rem; position: relative; width: min(100%, 48rem); }
.contact h2 { margin: 1.4rem 0 clamp(4rem, 8vw, 8rem); max-width: 10ch; }
.contact-links { gap: 1px; max-width: 52rem; }
.contact-links a { backdrop-filter: none; background: rgba(255,255,255,.025); border-color: var(--hf-line); border-radius: 0; box-shadow: none; color: var(--hf-ink); font: 500 clamp(1.2rem, 2vw, 2rem) var(--font-display); padding: 1.2rem 1.35rem; }
.contact-links a:hover { background: var(--hf-signal); color: #080a08; transform: none; }
.contact-links small { color: var(--hf-signal); font-family: var(--font-mono); }
.contact-links a:hover small { color: #080a08; }
.contact-socials { align-items: end; display: flex; justify-content: space-between; margin-top: clamp(3.3rem, 6vw, 7rem); }
.contact-socials p { color: var(--hf-muted); font: 500 clamp(.8rem, 1.4vw, 1.2rem) var(--font-mono); letter-spacing: .1em; }
.contact-socials p i { color: var(--hf-signal); }
.social-icon-links { gap: .5rem; }
.social-icon { border-color: var(--hf-line); border-radius: 0; }
.social-icon:hover { background: var(--hf-signal); border-color: var(--hf-signal); color: #0a0c09; transform: translateY(-.18rem); }
.site-end { border-top: 1px solid var(--hf-line); color: var(--hf-muted); font: 500 .56rem var(--font-mono); letter-spacing: .18em; margin: 4rem 0 0; padding-top: .9rem; }

/* Modals remain editorial and quiet around the media. */
.video-modal,
.fashion-modal { background: #090a0c; }
.video-modal::backdrop,
.fashion-modal::backdrop { background: rgba(0,0,0,.82); backdrop-filter: blur(12px); }
.modal-inner,
.fashion-modal-inner { max-width: 92rem; }
.modal-bar { border-bottom-color: var(--hf-line); }
.modal-bar small,
.fashion-modal-head small,
.fashion-modal-head span { color: var(--hf-signal); font-family: var(--font-mono); }
.modal-bar h3,
.fashion-modal-head h3 { color: var(--hf-ink); font-family: var(--font-display); letter-spacing: -.06em; }
.modal-actions a,
.modal-close,
.fashion-modal-close,
.fashion-modal-stage button { background: transparent; border-color: var(--hf-line); border-radius: 0; color: var(--hf-ink); }
.modal-actions a:hover,
.modal-close:hover,
.fashion-modal-close:hover,
.fashion-modal-stage button:hover { background: var(--hf-signal); border-color: var(--hf-signal); color: #0a0c09; }
.fashion-modal-stage img { border-color: var(--hf-line); border-radius: .3rem; }
.fashion-modal-strip button { border-radius: .2rem; }
.fashion-modal-strip button.is-active { border-color: var(--hf-signal); box-shadow: 0 0 0 1px var(--hf-signal); }

/* Cursor: retain the studio's embossed star interaction. */
.cursor-glow { height: 30px; width: 30px; }
.cursor-glow.active { filter: drop-shadow(0 0 5px rgba(255,255,255,.9)) drop-shadow(0 0 15px rgba(216,255,108,.42)); }

@keyframes hf-card-drift { 0%, 100% { transform: translate3d(0,0,0) rotate(-.38deg); } 50% { transform: translate3d(0,-.48rem,0) rotate(.38deg); } }
@keyframes hf-hero-scan { to { transform: translateX(4%) skewX(-3deg); } }
@keyframes hf-orbit-one { to { transform: translate(8vw,-5vh) rotate(28deg); } }
@keyframes hf-orbit-two { to { transform: translate(-7vw,8vh) rotate(-23deg); } }
@keyframes hf-glint { 50% { opacity: 1; transform: scale(2.1); } }

@media (max-width: 820px) {
  .minimal-nav { padding: 1rem 5vw 2rem; }
  .minimal-nav::after { left: 5vw; right: 5vw; top: 3.95rem; }
  .studio-brand { font-size: .74rem; }
  .studio-brand small { display: none; }
  .nav-links { gap: .75rem; }
  .nav-links a { font-size: .48rem; }
  .nav-links a:nth-child(3) { display: none; }
  .hero { min-height: 45rem; }
  .availability { left: 6vw; top: 8.7rem; }
  .hero-copy { bottom: 5.3rem; left: 6vw; max-width: 86vw; }
  .hero h1 { font-size: clamp(3.5rem, 16vw, 6rem); max-width: 7ch; }
  .hero-avatar-stage { height: 55vh; opacity: .76; right: -4vw; width: 78vw; }
  .hero-foot { display: none; }
  .hero-linkedin-orb { bottom: 14rem; height: 3rem; left: auto; right: 7vw; top: auto; width: 3rem; }
  .hero-reel-bar { top: 4.45rem; }
  .hero-reel-clip { height: 3rem; width: 7.2rem; }
  .intro-grid,
  .about-grid { display: block; }
  .intro-body { margin-top: 2rem; }
  .proof-grid { grid-template-columns: 1fr; }
  .proof-card { min-height: 10rem; }
  .fashion-head,
  .about-top { display: block; }
  .fashion-head .section-kicker,
  .about-top .section-kicker { display: block; margin-bottom: 1.2rem; }
  .fashion-handoff { min-height: 34rem; }
  .fashion-bunch { height: 22rem; width: min(65vw, 21rem); }
  .fashion-motion-controls { right: 5vw; }
  .film-strip-topic { padding-top: 3rem; }
  .film-strip-topic-head { padding-inline: 5vw; }
  .film-strip-topic-head h3 { font-size: clamp(2rem, 10vw, 3.4rem); }
  .showcase-layout { display: flex; flex-direction: column; padding-inline: 5vw; }
  .showcase-topic .showcase-media { min-height: min(68vw, 29rem); order: 1; }
  .showcase-topic .showcase-list { max-height: 17rem; order: 2; }
  .showcase-list-scroll { grid-template-columns: 1fr 1fr; max-height: 14rem; }
  .showcase-list-item { grid-template-columns: 4.2rem minmax(0, 1fr) auto; min-height: 3.8rem; }
  .showcase-list-item img { width: 4.2rem; }
  .showcase-copy { max-width: 91%; padding: 1.25rem; }
  .showcase-copy b { font-size: clamp(1.65rem, 7vw, 2.55rem); }
  .about-copy { margin-bottom: 2rem; }
  .contact-socials { align-items: start; display: block; }
  .social-icon-links { margin-top: 1.3rem; }
}

@media (prefers-reduced-motion: reduce) {
  .site-atmosphere span,
  .hero::before,
  .motion-card-shell,
  .fashion-bunch-photos { animation: none !important; }
}
