@font-face{font-family:Bebas Neue;src:url(/assets/BebasNeue-Regular-D2CONTwO.ttf) format("truetype");font-weight:400 700;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/DMSans-VariableFont_opsz_wght-D_B5dL4R.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:DM Sans;src:url(/assets/DMSans-Italic-VariableFont_opsz_wght-CT59GZwy.ttf) format("truetype");font-weight:100 900;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Thin-CcUYjMmx.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-ThinItalic-BaqzpTyH.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-ExtraLight-Dpzkec_N.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-ExtraLightItalic-DIPUt6wg.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Light-CCTlBcuD.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-LightItalic-ieJZLQ9h.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Regular-BF3vfe7_.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Italic-DgAgaWWu.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Medium-COFd06Dj.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-MediumItalic-DGs9d82A.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-SemiBold-D0J2bq8P.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-SemiBoldItalic-BVdhJEkW.ttf) format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-Bold-Ovd3DSUS.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/assets/IBMPlexMono-BoldItalic-CfsSm7gi.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}:root{--fial-bg: #0A0A0A;--fial-surface: #141414;--fial-surface-2: #1C1C1C;--fial-border: #2A2A2A;--fial-border-strong: #3A3A3A;--fial-fg: #F5F5F0;--fial-fg-2: #8A8A85;--fial-fg-3: #5A5A55;--fial-accent: #1c69d4;--fial-accent-warm: #E8E0D0;--fial-paper: #F5F5F0;--fial-ink: #0A0A0A;--fial-map-filter: invert(90%) hue-rotate(180deg) contrast(1.2);--fial-text-primary: var(--fial-fg);--fial-text-secondary: var(--fial-fg-2);--fial-text-tertiary: var(--fial-fg-3);--fial-bg-default: var(--fial-bg);--fial-bg-elevated: var(--fial-surface);--fial-font-display: "Bebas Neue", "Barlow Condensed", "Oswald", sans-serif;--fial-font-sans: "DM Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fial-font-mono: "IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;--fial-fs-hero: clamp(72px, 9vw, 144px);--fial-fs-display: clamp(56px, 6vw, 96px);--fial-fs-h1: clamp(48px, 5vw, 72px);--fial-fs-h2: clamp(36px, 3.6vw, 48px);--fial-fs-h3: 28px;--fial-fs-h4: 20px;--fial-fs-body-lg: 18px;--fial-fs-body: 16px;--fial-fs-body-sm: 14px;--fial-fs-mono: 13px;--fial-fs-mono-sm: 11px;--fial-fs-label: 11px;--fial-lh-display: .95;--fial-lh-heading: 1.1;--fial-lh-body: 1.6;--fial-lh-mono: 1.45;--fial-tracking-display: -.02em;--fial-tracking-tight: -.01em;--fial-tracking-mono: .02em;--fial-tracking-label: .18em;--fial-space-xs: 8px;--fial-space-sm: 16px;--fial-space-md: 32px;--fial-space-lg: 64px;--fial-space-xl: 120px;--fial-space-2xl: 200px;--fial-radius-none: 0px;--fial-radius-sm: 2px;--fial-radius-full: 9999px;--fial-ease: cubic-bezier(.22, 1, .36, 1);--fial-ease-linear: linear;--fial-dur-fast: .16s;--fial-dur-base: .28s;--fial-dur-slow: .6s;--fial-hairline: 1px solid var(--fial-border);--fial-hairline-strong: 1px solid var(--fial-border-strong);--fial-hairline-fg: 1px solid var(--fial-fg);--fial-photo-veil: linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.15) 40%, rgba(10,10,10,.85) 100%);--fial-photo-veil-bottom: linear-gradient(180deg, rgba(10,10,10,0) 40%, rgba(10,10,10,.9) 100%);--fial-nav-veil: rgba(10,10,10,.72);--fial-invert: 0}[data-theme=light]{--fial-bg: #F5F5F0;--fial-surface: #EAEAE5;--fial-surface-2: #DFDFDA;--fial-border: #D0D0CB;--fial-border-strong: #B0B0AB;--fial-fg: #0A0A0A;--fial-fg-2: #6A6A65;--fial-fg-3: #9A9A95;--fial-accent: #1c69d4;--fial-accent-warm: #8C7040;--fial-paper: #0A0A0A;--fial-ink: #F5F5F0;--fial-map-filter: none;--fial-photo-veil: linear-gradient(180deg, rgba(245,245,240,.55) 0%, rgba(245,245,240,.15) 40%, rgba(245,245,240,.85) 100%);--fial-photo-veil-bottom: linear-gradient(180deg, rgba(245,245,240,0) 40%, rgba(245,245,240,.9) 100%);--fial-nav-veil: rgba(245,245,240,.72);--fial-invert: 1}[data-theme=light] .hero,[data-theme=light] .detail-hero,[data-theme=light] .nav.nav-over-photo:not(.scrolled),[data-theme=light] .proj-frame,[data-theme=light] .system-card,[data-theme=light] .about-band{--fial-fg: #F5F5F0;--fial-fg-2: #8A8A85;--fial-fg-3: #5A5A55;--fial-accent: #1c69d4;--fial-accent-warm: #E8E0D0;--fial-border: #2A2A2A;--fial-border-strong: #3A3A3A;--fial-photo-veil: linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.15) 40%, rgba(10,10,10,.85) 100%);--fial-invert: 0}.fial-root{background:var(--fial-bg);color:var(--fial-fg);font-family:var(--fial-font-sans);font-size:var(--fial-fs-body);line-height:var(--fial-lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01","cv11"}.fial-hero,h1.fial-hero{font-family:var(--fial-font-display);font-weight:700;font-size:var(--fial-fs-hero);line-height:var(--fial-lh-display);letter-spacing:var(--fial-tracking-display);color:var(--fial-fg);text-transform:uppercase;margin:0}.fial-display,h1{font-family:var(--fial-font-display);font-weight:700;font-size:var(--fial-fs-display);line-height:var(--fial-lh-display);letter-spacing:var(--fial-tracking-display);text-transform:uppercase;margin:0}.fial-h1{font-family:var(--fial-font-display);font-weight:700;font-size:var(--fial-fs-h1);line-height:var(--fial-lh-heading);letter-spacing:var(--fial-tracking-tight);text-transform:uppercase}.fial-h2,h2{font-family:var(--fial-font-sans);font-weight:500;font-size:var(--fial-fs-h2);line-height:var(--fial-lh-heading);letter-spacing:var(--fial-tracking-tight);margin:0}.fial-h3,h3{font-family:var(--fial-font-sans);font-weight:500;font-size:var(--fial-fs-h3);line-height:1.25;margin:0}.fial-body,p{font-family:var(--fial-font-sans);font-weight:400;font-size:var(--fial-fs-body);line-height:var(--fial-lh-body);color:var(--fial-fg-2);margin:0}.fial-body-lg{font-family:var(--fial-font-sans);font-size:var(--fial-fs-body-lg);line-height:var(--fial-lh-body);color:var(--fial-fg)}.fial-mono{font-family:var(--fial-font-mono);font-weight:400;font-size:var(--fial-fs-mono);line-height:var(--fial-lh-mono);letter-spacing:var(--fial-tracking-mono);color:var(--fial-fg-2)}.fial-mono-sm{font-family:var(--fial-font-mono);font-size:var(--fial-fs-mono-sm);line-height:var(--fial-lh-mono);letter-spacing:var(--fial-tracking-mono);text-transform:uppercase;color:var(--fial-fg-2)}.fial-label{font-family:var(--fial-font-sans);font-weight:500;font-size:var(--fial-fs-label);letter-spacing:var(--fial-tracking-label);text-transform:uppercase;color:var(--fial-fg-2)}.fial-stat-number{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(48px,5vw,72px);line-height:1;letter-spacing:var(--fial-tracking-tight);color:var(--fial-fg)}[data-theme=light] .nav.scrolled .nav-link.active,[data-theme=light] .nav:not(.nav-over-photo) .nav-link.active,[data-theme=light] .nav.scrolled .nav-lang .active,[data-theme=light] .nav:not(.nav-over-photo) .nav-lang .active{color:var(--fial-fg)}[data-theme=light] .nav.scrolled .nav-link:after,[data-theme=light] .nav:not(.nav-over-photo) .nav-link:after{background:var(--fial-accent)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;background:var(--fial-bg)}body{font-family:var(--fial-font-sans);color:var(--fial-fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{display:block;max-width:100%}.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:26px 56px;transition:background .28s var(--fial-ease),border-color .28s var(--fial-ease),padding .28s var(--fial-ease);border-bottom:1px solid transparent}.nav.scrolled{background:var(--fial-nav-veil);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom-color:var(--fial-border);padding:18px 56px}.nav-mark{font-family:var(--fial-font-sans);font-weight:500;font-size:22px;letter-spacing:.14em;color:var(--fial-fg);cursor:pointer;-webkit-user-select:none;user-select:none}.nav-links{display:flex;align-items:center;gap:40px;font-family:var(--fial-font-sans);font-size:13px;font-weight:400;letter-spacing:.04em;color:var(--fial-fg)}.nav-link{cursor:pointer;position:relative;padding-bottom:4px;transition:color .28s var(--fial-ease)}.nav-link:after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--fial-accent);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--fial-ease)}.nav-link:hover:after,.nav-link.active:after{transform:scaleX(1)}.nav-lang{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.12em;color:var(--fial-fg-2);cursor:pointer}.hero{position:relative;min-height:max(720px,100vh);display:flex;flex-direction:column;justify-content:flex-end;padding:140px 56px 0;overflow:hidden}.hero-photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:brightness(.78) contrast(1.05) saturate(.65)}.hero-photo:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--fial-photo-veil)}.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr 360px;gap:80px;align-items:end;padding-bottom:64px}.hero-title{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(72px,9.5vw,168px);line-height:.88;letter-spacing:-.025em;color:var(--fial-fg);text-transform:uppercase;margin:0 0 32px}.hero-cta{display:inline-flex;align-items:center;gap:22px;font-family:var(--fial-font-sans);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-fg);cursor:pointer;padding-bottom:14px;border-bottom:1px solid var(--fial-border);transition:border-color .28s var(--fial-ease),gap .28s var(--fial-ease)}.hero-cta:hover{border-color:var(--fial-fg);gap:30px}.hero-cta .line{width:64px;height:1px;background:currentColor}.hero-dateline{font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-fg);text-transform:uppercase;text-align:right;line-height:1.7}.hero-dateline .pri{color:var(--fial-fg)}.hero-dateline .sec{color:var(--fial-fg-2)}.stats{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:36px 0 64px;border-top:1px solid var(--fial-border)}.stat{padding:0 28px;border-right:1px solid var(--fial-border)}.stat:first-child{padding-left:0}.stat:last-child{border-right:none;padding-right:0}.stat-num{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(40px,4.6vw,72px);line-height:1;letter-spacing:-.02em;color:var(--fial-fg)}.stat-num .u{font-size:.36em;letter-spacing:0;font-weight:700;margin-left:4px}.stat-label{margin-top:14px;font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--fial-fg-2);line-height:1.6}.section{padding:120px 56px;position:relative}.section-head{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:baseline;border-top:1px solid var(--fial-border);padding-top:32px;margin-bottom:80px}.section-index{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;color:var(--fial-fg-2);text-transform:uppercase}.section-tag{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;color:var(--fial-accent);text-transform:uppercase;margin-bottom:14px}.section-title{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(40px,5vw,72px);line-height:.95;letter-spacing:-.02em;color:var(--fial-accent);text-transform:uppercase;margin:0}.section-meta{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.06em;color:var(--fial-fg-2);text-transform:uppercase}.systems{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--fial-border);border-top:1px solid var(--fial-border);border-bottom:1px solid var(--fial-border)}.system-card{position:relative;background:var(--fial-bg);aspect-ratio:4 / 5;padding:32px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;cursor:pointer}.system-photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:.6;transition:opacity .6s var(--fial-ease),transform .6s var(--fial-ease),filter .6s var(--fial-ease);filter:brightness(.45) saturate(.7);transform:scale(1)}.system-card:hover .system-photo{opacity:.85;transform:scale(1.05);filter:brightness(.65) saturate(.9)}.system-icon{width:56px;height:56px;color:var(--fial-fg);position:relative;z-index:2}.system-icon svg{width:100%;height:100%}.system-foot{position:relative;z-index:2;display:flex;flex-direction:column;gap:14px}.system-num{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;color:var(--fial-fg-2);text-transform:uppercase}.system-name{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(32px,3.4vw,48px);line-height:.95;letter-spacing:-.015em;color:var(--fial-fg);text-transform:uppercase}.system-desc{font-family:var(--fial-font-sans);font-size:14px;line-height:1.55;color:var(--fial-fg-2);max-width:320px}.portfolio{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;row-gap:80px}.proj{cursor:pointer}.proj-frame{position:relative;overflow:hidden;background:var(--fial-surface)}.proj-frame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;outline:0 solid transparent;transition:outline-color .28s var(--fial-ease)}.proj-img{width:100%;height:100%;background-size:cover;background-position:center;transition:transform .6s var(--fial-ease),filter .6s var(--fial-ease);filter:brightness(.85) saturate(.7)}.proj:hover .proj-img{transform:scale(1.04);filter:brightness(.65) saturate(.7)}.proj-overlay{position:absolute;left:20px;right:20px;bottom:20px;z-index:2;opacity:0;transform:translateY(8px);transition:opacity .28s var(--fial-ease),transform .28s var(--fial-ease)}.proj:hover .proj-overlay{opacity:1;transform:translateY(0)}.proj:hover .proj-frame:after{outline:1px solid var(--fial-accent);outline-offset:-1px}.proj-tag{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;color:var(--fial-fg-2);text-transform:uppercase;margin-bottom:6px}.proj-name{font-family:var(--fial-font-display);font-weight:700;font-size:28px;line-height:1;letter-spacing:-.005em;color:var(--fial-fg);text-transform:uppercase}.proj-meta{display:flex;justify-content:space-between;gap:12px;margin-top:14px;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.04em;color:var(--fial-fg);text-transform:uppercase;border-top:1px solid var(--fial-border);padding-top:12px}.proj-meta .num{color:var(--fial-fg-2)}.proj.sm{grid-column:span 4}.proj.lg{grid-column:span 7}.proj.md{grid-column:span 5}.proj.full{grid-column:span 12}.contact{background:var(--fial-accent);color:var(--fial-ink);padding:120px 56px}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}.contact-eyebrow{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;color:var(--fial-ink);text-transform:uppercase;margin-bottom:32px;opacity:.6}.contact-title{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(48px,5vw,88px);line-height:.95;letter-spacing:-.02em;color:var(--fial-ink);text-transform:uppercase;margin:0}.contact-meta{display:flex;flex-direction:column;gap:18px;font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-ink);text-transform:uppercase}.contact-meta-row{display:grid;grid-template-columns:100px 1fr;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--fial-border-strong)}.contact-meta-row .k{opacity:.6}.contact-btn{display:inline-flex;align-items:center;gap:18px;font-family:var(--fial-font-sans);font-weight:500;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-ink);background:var(--fial-ink);color:var(--fial-paper);border:none;padding:22px 28px;cursor:pointer;margin-top:32px;transition:gap .28s var(--fial-ease)}.contact-btn:hover{gap:26px}.foot{background:var(--fial-bg);padding:80px 56px 32px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;border-top:1px solid var(--fial-border)}.foot-mark{font-family:var(--fial-font-sans);font-weight:500;font-size:28px;letter-spacing:.14em;color:var(--fial-fg)}.foot-tag{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.06em;color:var(--fial-fg-2);text-transform:uppercase;margin-top:14px;line-height:1.7}.foot-col h4{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-fg-2);margin:0 0 18px;font-weight:400}.foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.foot-col a{font-family:var(--fial-font-sans);font-size:14px;color:var(--fial-fg);text-decoration:none;cursor:pointer;transition:color .28s var(--fial-ease)}.foot-col a:hover{color:var(--fial-accent)}.foot-bottom{grid-column:1 / -1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--fial-border);padding-top:24px;margin-top:48px;font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--fial-fg-3)}.projects-screen{padding-top:140px}.proj-filter{display:flex;gap:32px;padding:0 56px 56px;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.proj-filter span{cursor:pointer;padding-bottom:6px;color:var(--fial-fg-2);border-bottom:1px solid transparent;transition:color .28s var(--fial-ease),border-color .28s var(--fial-ease)}.proj-row{display:grid;grid-template-columns:60px 1fr 1.4fr 1fr 100px 24px;gap:32px;align-items:center;padding:26px 0;border-bottom:1px solid var(--fial-border);cursor:pointer;font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-fg-2);text-transform:uppercase;transition:color .28s var(--fial-ease)}.proj-row .name{font-family:var(--fial-font-display);font-weight:700;font-size:28px;letter-spacing:-.005em;color:var(--fial-fg);text-transform:uppercase;line-height:1}.proj-row .arrow{font-family:var(--fial-font-mono);color:var(--fial-fg-3);text-align:right;transition:transform .28s var(--fial-ease),color .28s var(--fial-ease)}.detail-screen{padding-top:100px}.detail-hero{position:relative;min-height:78vh;background-size:cover;background-position:center;display:flex;align-items:end;padding:56px;filter:contrast(1.05) saturate(.7)}.detail-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--fial-photo-veil)}.detail-hero-inner{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:end;width:100%;gap:32px}.detail-name{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(56px,7vw,120px);line-height:.88;letter-spacing:-.025em;color:var(--fial-fg);text-transform:uppercase;margin:0}.detail-eyebrow{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.22em;color:var(--fial-fg-2);text-transform:uppercase;margin-bottom:16px}.detail-meta{font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-fg);text-transform:uppercase;text-align:right;display:flex;flex-direction:column;gap:6px}.detail-meta .sec{color:var(--fial-fg-2)}.detail-body{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding:80px 56px}.detail-copy{font-family:var(--fial-font-sans);font-size:18px;line-height:1.65;color:var(--fial-fg);max-width:520px}.detail-copy p{margin:0 0 24px;color:var(--fial-fg)}.detail-copy p+p{color:var(--fial-fg-2)}.detail-table{display:flex;flex-direction:column}.detail-table-row{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-fg);text-transform:uppercase}.detail-table-row .k{color:var(--fial-fg-2)}.detail-table-row:first-child{border-top:1px solid var(--fial-border)}.detail-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;padding:0 56px 120px}.detail-gallery .g{background-size:cover;background-position:center;filter:brightness(.85) saturate(.7)}.detail-gallery .g.a{grid-column:1 / 8;aspect-ratio:16 / 10}.detail-gallery .g.b{grid-column:8 / 13;aspect-ratio:4 / 5}.detail-gallery .g.c{grid-column:1 / 13;aspect-ratio:21 / 9}.back-link{display:inline-flex;align-items:center;gap:12px;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--fial-fg-2);cursor:pointer;padding:0 56px;margin-bottom:24px;transition:color .28s var(--fial-ease)}.back-link:hover{color:var(--fial-fg)}.contact-screen{padding:140px 56px 120px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:56px 32px;margin-top:80px;max-width:900px}.field{display:flex;flex-direction:column;gap:10px}.field label{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-fg-2)}.field input,.field textarea{background:transparent;border:none;border-bottom:1px solid var(--fial-border);color:var(--fial-fg);font-family:var(--fial-font-sans);font-size:17px;padding:10px 0;outline:none;transition:border-color .28s var(--fial-ease);width:100%;resize:vertical}.field input:focus,.field textarea:focus{border-bottom-color:var(--fial-fg)}.field input::placeholder,.field textarea::placeholder{color:var(--fial-fg-3)}.field.full{grid-column:1 / -1}@media (max-width: 1024px){.nav,.hero,.section,.contact,.foot,.projects-screen,.detail-body,.detail-gallery,.proj-filter,.proj-list,.contact-screen{padding-left:24px;padding-right:24px}.hero-inner{grid-template-columns:1fr;gap:40px}.stats{grid-template-columns:repeat(2,1fr);row-gap:24px}.stat:nth-child(2){border-right:none;padding-right:0}.systems,.portfolio{grid-template-columns:1fr}.proj.lg,.proj.md,.proj.full{grid-column:span 1}.contact-inner,.detail-body,.contact-form{grid-template-columns:1fr;gap:40px}.foot{grid-template-columns:1fr 1fr}.proj-row{grid-template-columns:50px 1fr 24px}.proj-row .arq,.proj-row .yr,.proj-row .m2{display:none}}body{background:var(--fial-bg);color:var(--fial-fg)}.fial-mono,.stat-label,.section-tag,.section-meta,.nav-lang,.proj-tag,.system-num,.system-num-top,.system-arrow,.proj-meta,.detail-eyebrow,.proj-filter,.proj-row .arq,.proj-row .yr,.proj-row .m2,.proj-row,.contact-eyebrow,.contact-meta,.foot-col h4,.foot-bottom{font-feature-settings:"tnum" on,"lnum" on}::selection{background:var(--fial-accent);color:var(--fial-ink)}.nav{padding:28px 56px}.nav.scrolled{padding:18px 56px}.nav-mark{display:flex;align-items:center;gap:18px;font-size:32px;letter-spacing:.16em}.nav-mark-logo{width:56px;height:56px;background-color:var(--fial-accent);-webkit-mask:url(assets/Logomark-white.svg) no-repeat center / contain;mask:url(assets/Logomark-white.svg) no-repeat center / contain}.nav-mark-logo img{display:none}.nav-mark-text{font-family:var(--fial-font-sans);font-weight:700;color:var(--fial-accent)}.nav-toggle{display:none;flex-direction:column;gap:6px;cursor:pointer;padding:8px;z-index:60}.nav-toggle .bar{width:24px;height:2px;background:var(--fial-fg);transition:transform .3s var(--fial-ease),opacity .3s var(--fial-ease)}.nav-links{gap:36px;font-size:12px;letter-spacing:.06em;font-weight:400;text-transform:uppercase}.nav-link{padding-bottom:6px}.nav-lang{font-size:11px;letter-spacing:.16em;padding-bottom:6px}.nav-lang .active{color:var(--fial-fg)}.nav-lang span:not(.active){color:var(--fial-fg-3);transition:color .28s var(--fial-ease)}.nav-lang:hover span:not(.active){color:var(--fial-fg-2)}.hero{padding:140px 56px 0;min-height:100vh}.hero-photo{filter:brightness(.62) contrast(1.05) saturate(.55);transform:scale(1.04);animation:heroZoom 2.2s var(--fial-ease) forwards}.hero-photo:after{background:linear-gradient(180deg,#0a0a0aa6,#0a0a0a40 30%,#0a0a0a8c 70%,#0a0a0afa)}@keyframes heroZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}.hero-grain{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0.5 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}.hero-meta-strip{position:absolute;top:100px;right:56px;z-index:3;display:flex;align-items:center;gap:14px;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.06em;color:var(--fial-fg-2);text-transform:uppercase;opacity:0;animation:fadeIn .8s var(--fial-ease) .7s forwards}.hm-dot{width:6px;height:6px;border-radius:999px;background:var(--fial-accent);box-shadow:0 0 #c8d4dc99;animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 0 #c8d4dc80}50%{box-shadow:0 0 0 6px #c8d4dc00}}.hm-sep{color:var(--fial-fg-3)}.hero-inner{grid-template-columns:1.55fr 1fr;gap:56px;padding-bottom:56px}.hero-left{max-width:1040px}.hero-eyebrow{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fial-fg-2);margin-bottom:36px;padding-left:18px;border-left:2px solid var(--fial-accent);opacity:0;animation:fadeUp .8s var(--fial-ease) .1s forwards}@keyframes fadeIn{to{opacity:1}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.hero-title{font-size:clamp(72px,11vw,188px);line-height:.86;letter-spacing:-.025em;margin:0 0 40px}.split-word{display:inline-block;white-space:nowrap}.split-char{display:inline-block;overflow:hidden;vertical-align:top}.split-char-inner{display:inline-block;transform:translateY(110%) rotate(2deg);opacity:0;animation:splitIn 1.1s var(--fial-ease) forwards;animation-delay:inherit}.split-char[style*=animation-delay] .split-char-inner{animation-delay:inherit}@keyframes splitIn{to{transform:translateY(0) rotate(0);opacity:1}}.hero-title .split-char{animation-name:none}.hero-cta-row{display:flex;gap:32px;align-items:center;flex-wrap:wrap;opacity:0;animation:fadeUp .8s var(--fial-ease) 1.4s forwards}.hero-cta{display:inline-flex;align-items:center;gap:18px;font-family:var(--fial-font-sans);font-weight:500;font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-fg);cursor:pointer;padding:18px 0;transition:gap .28s var(--fial-ease)}.hero-cta.primary{border-bottom:1px solid var(--fial-fg);padding-right:8px}.hero-cta.primary:hover{gap:26px}.hero-cta.primary:hover .arrow{transform:translate(4px)}.hero-cta.ghost{color:var(--fial-fg-2);padding:18px 0}.hero-cta.ghost:hover{color:var(--fial-fg)}.hero-cta .line{width:60px;height:1px;background:currentColor}.hero-cta .arrow{transition:transform .28s var(--fial-ease)}.hero-right{display:flex;flex-direction:column;align-items:flex-end;gap:32px;align-self:end;text-align:right;opacity:0;animation:fadeUp .8s var(--fial-ease) 1.2s forwards}.hero-dateline{font-size:13px;letter-spacing:.04em;line-height:1.7}.hero-corner-tag{border-top:1px solid var(--fial-border);padding-top:18px;min-width:280px;text-align:right}.ct-label{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-fg-2);margin-bottom:14px}.ct-name{font-family:var(--fial-font-display);font-weight:700;font-size:28px;line-height:.95;letter-spacing:-.005em;text-transform:uppercase;color:var(--fial-fg);margin-bottom:8px}.ct-meta{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--fial-fg-2)}.stats{padding:40px 0 56px}.stat{opacity:0;animation:fadeUp .8s var(--fial-ease) var(--d, 1.6s) forwards}.stat-num{font-size:clamp(48px,5.6vw,88px);letter-spacing:-.025em}.stat-num .u{font-size:.32em;margin-left:2px}.reveal{opacity:0;transform:translateY(28px);transition:opacity .72s var(--fial-ease),transform .72s var(--fial-ease);transition-delay:var(--d, 0s)}.reveal.is-revealed{opacity:1;transform:translateY(0)}.section-head{grid-template-columns:1fr auto;align-items:end;padding-top:40px}.section-index{font-size:11px;letter-spacing:.18em;color:var(--fial-fg-3)}.section-tag{font-size:11px;letter-spacing:.22em;color:var(--fial-accent);margin-bottom:22px;padding-left:16px;border-left:2px solid var(--fial-accent)}.section-title{font-size:clamp(48px,6.5vw,96px);line-height:.9;letter-spacing:-.025em;color:var(--fial-accent)}.section-meta{font-size:11px;letter-spacing:.18em;color:var(--fial-fg-3)}.architects{padding:56px 0;border-top:1px solid var(--fial-border);border-bottom:1px solid var(--fial-border);background:var(--fial-bg);overflow:hidden}.arch-head{display:flex;justify-content:space-between;align-items:center;padding:0 56px 28px;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--fial-fg-2)}.arch-eyebrow{color:var(--fial-fg-2)}.arch-count{color:var(--fial-fg-3)}.arch-marquee{overflow:hidden;position:relative;mask-image:linear-gradient(90deg,transparent 0,#000 80px,#000 calc(100% - 80px),transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 80px,#000 calc(100% - 80px),transparent 100%)}.arch-track{display:inline-flex;align-items:center;gap:32px;white-space:nowrap;animation:marquee 90s linear infinite;padding-right:32px;will-change:transform}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.arch-name{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(40px,5vw,80px);line-height:1;letter-spacing:-.015em;text-transform:uppercase;color:var(--fial-fg)}.arch-dot{color:var(--fial-fg);font-size:10px;opacity:.7}.systems{grid-template-columns:repeat(3,1fr);background:var(--fial-border);gap:1px}.system-card{aspect-ratio:4 / 5.4;padding:32px;background:var(--fial-bg);transition:background .6s var(--fial-ease)}.system-card:hover{background:var(--fial-surface)}.system-photo{filter:brightness(.45) saturate(.6) contrast(1.05);opacity:.6;transition:opacity .7s var(--fial-ease),transform 1.2s var(--fial-ease),filter 1.2s var(--fial-ease);transform:scale(1)}.system-card:hover .system-photo{opacity:.85;transform:scale(1.06);filter:brightness(.6) saturate(.8) contrast(1.1)}.system-top{display:flex;justify-content:space-between;align-items:flex-start;position:relative;z-index:2}.system-icon{width:56px;height:56px;color:var(--fial-fg)}.system-icon img{width:100%;height:100%;filter:invert(96%) sepia(8%) saturate(40%) hue-rotate(8deg)}.system-num-top{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;color:#ffffffa6;text-transform:uppercase}.system-foot{gap:16px}.system-num{font-size:10px;letter-spacing:.22em;color:#fffc}.system-name{font-size:clamp(34px,3.6vw,56px);line-height:.95;letter-spacing:-.02em}.system-desc{font-size:14px;line-height:1.6;color:#ffffffe6;max-width:360px;margin-bottom:8px}.system-arrow{display:inline-flex;gap:14px;align-items:center;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;color:var(--fial-fg);text-transform:uppercase;padding-top:12px;border-top:1px solid var(--fial-border);transition:gap .28s var(--fial-ease),color .28s var(--fial-ease)}.system-card:hover .system-arrow{gap:20px;color:var(--fial-fg)}.system-arrow .arrow{transition:transform .28s var(--fial-ease)}.system-card:hover .system-arrow .arrow{transform:translate(4px)}.proj-num-corner{position:absolute;top:18px;right:18px;z-index:2;font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;color:var(--fial-fg);text-transform:uppercase;padding:6px 10px;background:#0a0a0a8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:.85;transition:opacity .28s var(--fial-ease)}.proj:hover .proj-num-corner{opacity:1}.proj-overlay{left:22px;right:22px;bottom:22px}.proj-tag{font-size:10px;letter-spacing:.22em;color:var(--fial-fg-2)}.proj-name{font-size:clamp(28px,2.6vw,40px);line-height:.95;letter-spacing:-.01em;margin-bottom:14px}.proj-view{display:inline-flex;gap:12px;align-items:center;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;color:var(--fial-fg);text-transform:uppercase;padding-top:8px;border-top:1px solid rgba(245,245,240,.3)}.proj-meta{display:grid;grid-template-columns:1fr auto auto;gap:18px;font-size:10px;letter-spacing:.06em;padding-top:14px}.proj-meta-sys{color:var(--fial-fg-3)}.proj-img{filter:brightness(.78) contrast(1.05) saturate(.65)}.proj:hover .proj-img{filter:brightness(.55) contrast(1.08) saturate(.6);transform:scale(1.05)}.portfolio-all{margin-top:56px;padding-top:36px;border-top:1px solid var(--fial-border)}.pa-cta{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:32px;cursor:pointer;padding:22px 0;font-family:var(--fial-font-mono);font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--fial-fg);transition:color .28s var(--fial-ease)}.pa-cta:hover{color:var(--fial-accent)}.pa-cta>span:first-child{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(28px,3vw,44px);letter-spacing:-.015em;line-height:1;text-transform:uppercase;color:var(--fial-fg);transition:color .28s var(--fial-ease)}.pa-cta:hover>span:first-child{color:var(--fial-accent)}.pa-num{color:var(--fial-fg-3)}.pa-cta .arrow{font-family:var(--fial-font-mono);font-size:24px;transition:transform .28s var(--fial-ease)}.pa-cta:hover .arrow{transform:translate(6px)}.process-section{background:var(--fial-bg)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.process-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 16px 0;border-top:1px solid var(--fial-border);position:relative;min-height:280px;transition:border-color .6s var(--fial-ease)}.process-card:hover{border-top-color:var(--fial-accent)}.pc-num{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;color:var(--fial-accent);text-transform:uppercase;margin-bottom:24px}.pc-title{font-family:var(--fial-font-display);font-weight:700;font-size:32px;line-height:.95;letter-spacing:-.015em;color:var(--fial-accent);text-transform:uppercase;margin-bottom:18px}.pc-desc{font-family:var(--fial-font-sans);font-size:14px;line-height:1.6;color:var(--fial-fg-2)}.pc-line{display:none}.contact{background:var(--fial-accent);padding:140px 56px 120px;position:relative;overflow:hidden}.contact:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(10,10,10,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(10,10,10,.07) 1px,transparent 1px);background-size:64px 64px;opacity:.7;pointer-events:none}.contact-eyebrow{font-size:11px;letter-spacing:.22em;color:var(--fial-ink);margin-bottom:56px;opacity:.55;position:relative;z-index:2}.contact-inner{position:relative;z-index:2;display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end}.contact-title{font-size:clamp(56px,7vw,132px);line-height:.88;letter-spacing:-.03em;color:var(--fial-ink)}.contact-sub{margin-top:28px;max-width:480px;font-family:var(--fial-font-sans);font-size:17px;line-height:1.55;color:var(--fial-ink);opacity:.7}.contact-btn{display:inline-flex;align-items:center;gap:22px;font-family:var(--fial-font-sans);font-weight:500;font-size:13px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-paper);background:var(--fial-ink);border:none;padding:22px 32px;cursor:pointer;margin-top:40px;transition:gap .28s var(--fial-ease)}.contact-btn:hover{gap:30px}.cb-line{width:28px;height:1px;background:currentColor}.cb-arrow{transition:transform .28s var(--fial-ease)}.contact-btn:hover .cb-arrow{transform:translate(4px)}.contact-meta{gap:0}.contact-meta-row{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid rgba(10,10,10,.18);font-size:12px;letter-spacing:.04em;color:var(--fial-ink)}.contact-meta-row:first-child{border-top:1px solid rgba(10,10,10,.18)}.contact-meta-row .k{opacity:.55}.projects-screen{padding-top:160px;padding-bottom:80px;min-height:100vh}.proj-filter{display:flex;gap:36px;padding:0 56px 32px;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.proj-filter span{padding-bottom:8px;border-bottom:1px solid transparent}.proj-filter span.active{color:var(--fial-fg);border-color:var(--fial-accent)}.proj-list-wrap{position:relative}.proj-list{padding:0 56px}.proj-row{display:grid;grid-template-columns:60px minmax(220px,1.3fr) minmax(180px,1.2fr) minmax(160px,1fr) minmax(180px,1fr) 32px;gap:32px;align-items:center;padding:24px 0;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;color:var(--fial-fg-2);text-transform:uppercase;transition:color .28s var(--fial-ease);cursor:pointer}.proj-row:hover{color:var(--fial-fg)}.proj-row .num{color:var(--fial-fg-3)}.proj-row:hover .num{color:var(--fial-fg)}.proj-row .name{font-family:var(--fial-font-display);font-weight:700;font-size:28px;line-height:1;letter-spacing:-.005em;color:var(--fial-fg);text-transform:uppercase}.proj-row .name-head{font-family:var(--fial-font-mono);font-size:11px;font-weight:400;letter-spacing:.18em}.proj-row .arq{color:var(--fial-fg-2)}.proj-row .sys,.proj-row .city{color:var(--fial-fg-3)}.proj-row .arrow{color:var(--fial-fg-3);text-align:right;transition:transform .28s var(--fial-ease),color .28s var(--fial-ease)}.proj-row:hover .arrow{color:var(--fial-accent);transform:translate(4px)}.proj-row-head{cursor:default;opacity:.4;padding-bottom:14px;border-bottom:1px solid var(--fial-border-strong)}.proj-row-head:hover{color:var(--fial-fg-2)}.proj-row-head:hover .arrow{transform:none}.proj-preview{position:fixed;top:50%;right:56px;transform:translate(40px,-50%);width:320px;pointer-events:none;z-index:30;opacity:0;transition:opacity .32s var(--fial-ease),transform .32s var(--fial-ease)}.proj-preview.is-visible{opacity:1;transform:translateY(-50%)}.pp-img{width:100%;aspect-ratio:4 / 5;background-size:cover;background-position:center;filter:brightness(.85) saturate(.65) contrast(1.05);border:1px solid var(--fial-border)}.pp-meta{margin-top:14px;padding-top:14px;border-top:1px solid var(--fial-border)}.pp-num{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;color:var(--fial-fg-2);text-transform:uppercase;margin-bottom:6px}.pp-name{font-family:var(--fial-font-display);font-weight:700;font-size:20px;line-height:1;letter-spacing:-.005em;color:var(--fial-fg);text-transform:uppercase}.detail-screen{padding-top:120px}.back-link{padding:0 56px;margin-bottom:28px}.detail-hero{min-height:82vh}.detail-name{font-size:clamp(56px,8vw,144px);letter-spacing:-.025em}.detail-eyebrow{font-size:11px;letter-spacing:.22em}.detail-copy{position:relative}.detail-copy-label{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-accent);padding-left:16px;border-left:2px solid var(--fial-accent);margin-bottom:24px}.about-screen{padding:140px 56px 100px}.about-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;margin-bottom:100px}.about-copy{font-family:var(--fial-font-sans);font-size:19px;line-height:1.65;color:var(--fial-fg);max-width:640px}.about-copy p{color:var(--fial-fg);margin:0 0 24px}.about-copy p+p{color:var(--fial-fg-2)}.about-lead{font-size:22px;line-height:1.55}.about-facts{display:flex;flex-direction:column}.af-row{display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.af-row:first-child{border-top:1px solid var(--fial-border)}.af-k{color:var(--fial-fg-2)}.af-v{color:var(--fial-fg)}.about-band{position:relative;height:64vh;margin:0 -56px 100px;overflow:hidden}.ab-photo{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:brightness(.72) contrast(1.05) saturate(.65)}.ab-caption{position:absolute;left:56px;bottom:32px;z-index:2;display:flex;align-items:center;gap:18px;font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--fial-fg)}.ab-cap-num{color:var(--fial-fg)}.about-cap{margin-top:32px}.ac-head{margin-bottom:40px}.ac-eyebrow{font-family:var(--fial-font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--fial-accent);padding-left:16px;border-left:2px solid var(--fial-accent);margin-bottom:18px}.ac-title{font-family:var(--fial-font-display);font-weight:700;font-size:clamp(40px,4.5vw,72px);line-height:.95;letter-spacing:-.02em;text-transform:uppercase;color:var(--fial-accent)}.ac-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}.ac-row{display:grid;grid-template-columns:40px 1fr;gap:24px;align-items:center;padding:18px 0;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-sans);font-size:17px;color:var(--fial-fg)}.ac-num{font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;color:var(--fial-fg-3)}.contact-screen{padding:160px 56px 100px}.contact-screen-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;margin-top:64px}.contact-lead{font-family:var(--fial-font-sans);font-size:19px;line-height:1.6;color:var(--fial-fg-2);max-width:540px;margin-bottom:56px}.contact-screen .contact-form{margin-top:0}.contact-screen .contact-btn{color:var(--fial-paper);background:var(--fial-fg);color:var(--fial-ink)}.contact-sent{margin-top:32px;padding:28px 32px;border:1px solid var(--fial-accent);font-family:var(--fial-font-mono);font-size:13px;letter-spacing:.04em;color:var(--fial-fg);text-transform:uppercase;display:flex;gap:14px;align-items:center}.contact-aside{border-left:1px solid var(--fial-border);padding-left:56px;display:flex;flex-direction:column}.ca-row{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid var(--fial-border);font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase}.ca-row:first-child{border-top:1px solid var(--fial-border)}.ca-k{color:var(--fial-fg-2)}.ca-v{color:var(--fial-fg);line-height:1.5}.ca-map{position:relative;margin-top:32px;aspect-ratio:4 / 3;background:var(--fial-surface);overflow:hidden;border:1px solid var(--fial-border)}.ca-map-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--fial-border) 1px,transparent 1px),linear-gradient(90deg,var(--fial-border) 1px,transparent 1px);background-size:28px 28px;opacity:.6}.ca-map-dot{position:absolute;top:42%;left:38%;width:12px;height:12px;background:var(--fial-accent);border-radius:999px;box-shadow:0 0 0 6px #c8d4dc2e;animation:pulse 2.4s ease-in-out infinite}.ca-map-label{position:absolute;top:42%;left:38%;transform:translate(20px,-50%);font-family:var(--fial-font-mono);font-size:10px;letter-spacing:.18em;color:var(--fial-fg-2);text-transform:uppercase;padding-left:12px;border-left:2px solid var(--fial-accent)}.foot{padding:100px 56px 32px;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:56px}.foot-brand{display:flex;flex-direction:column;gap:22px}.foot-mark-row{display:flex;align-items:center;gap:14px}.foot-mark-logo{width:56px;height:56px;background-color:var(--fial-accent);-webkit-mask:url(assets/Logomark-white.svg) no-repeat center / contain;mask:url(assets/Logomark-white.svg) no-repeat center / contain}.foot-mark{font-size:40px;letter-spacing:.14em;font-weight:700}.foot-tag{font-size:12px;letter-spacing:.04em;color:var(--fial-fg-2);margin-top:0;line-height:1.7}.foot-address{font-family:var(--fial-font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--fial-fg-3);line-height:1.8;margin-top:8px}.foot-bottom{margin-top:64px;padding-top:24px}.foot-bottom-right{display:flex;align-items:center;gap:12px}.foot-bottom-right .fb-dot{color:var(--fial-accent);font-size:8px}@media (min-width: 981px){.portfolio-scroll-wrapper{position:relative;width:100%;height:3200px}.portfolio-sticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;box-sizing:border-box;padding:80px 56px 0}.portfolio-header-container{width:100%;max-width:1200px;margin:0 auto;padding:120px 56px 40px;box-sizing:border-box}.portfolio-parallax-grid{width:100%;max-width:1600px;height:100vh;margin:0 auto;position:relative;z-index:1}.portfolio-parallax-grid .proj{position:absolute;width:320px;will-change:transform;transition:transform .25s cubic-bezier(.25,1,.5,1)}.portfolio-parallax-grid .proj:hover{z-index:50!important}.portfolio-parallax-grid .proj:nth-child(1){top:5vh;left:10%;z-index:1}.portfolio-parallax-grid .proj:nth-child(2){top:20vh;left:40%;z-index:3}.portfolio-parallax-grid .proj:nth-child(3){top:35vh;left:70%;z-index:1}.portfolio-parallax-grid .proj:nth-child(4){top:50vh;left:12%;z-index:2}.portfolio-parallax-grid .proj:nth-child(5){top:65vh;left:38%;z-index:1}.portfolio-parallax-grid .proj:nth-child(6){top:80vh;left:68%;z-index:3}.portfolio-parallax-grid .proj:nth-child(7){top:95vh;left:8%;z-index:1}.portfolio-parallax-grid .proj:nth-child(8){top:110vh;left:42%;z-index:3}.portfolio-parallax-grid .proj:nth-child(9){top:125vh;left:72%;z-index:1}.portfolio-parallax-grid .proj:nth-child(10){top:140vh;left:14%;z-index:2}.portfolio-parallax-grid .proj:nth-child(11){top:155vh;left:35%;z-index:1}.portfolio-parallax-grid .proj:nth-child(12){top:170vh;left:65%;z-index:3}.portfolio-parallax-grid .proj:nth-child(13){top:185vh;left:6%;z-index:1}.portfolio-parallax-grid .proj:nth-child(14){top:200vh;left:40%;z-index:3}.portfolio-parallax-grid .proj:nth-child(15){top:215vh;left:68%;z-index:2}.portfolio-parallax-grid .proj:nth-child(16){top:230vh;left:10%;z-index:2}.portfolio-parallax-grid .proj:nth-child(17){top:245vh;left:38%;z-index:1}.portfolio-parallax-grid .proj:nth-child(18){top:260vh;left:72%;z-index:3}.portfolio-parallax-grid .proj:nth-child(19){top:275vh;left:12%;z-index:1}.portfolio-parallax-grid .proj:nth-child(20){top:290vh;left:42%;z-index:3}.portfolio-parallax-grid .proj:nth-child(21){top:305vh;left:66%;z-index:2}.portfolio-parallax-grid .proj-frame{width:100%;border-radius:16px}.portfolio-parallax-grid .proj-frame:after{border-radius:16px}.portfolio-footer-container{width:100%;max-width:1600px;margin:80px auto 0;padding:0 56px;box-sizing:border-box;position:relative;z-index:10}.pa-rule{border-top:1px solid var(--fial-border);margin-bottom:20px;width:100%}}@media (max-width: 1366px){.proj-preview{display:none}}@media (max-width: 1024px){.nav,.hero,.section,.contact,.foot,.projects-screen,.detail-body,.detail-gallery,.proj-filter,.proj-list,.contact-screen,.about-screen,.arch-head,.back-link{padding-left:24px;padding-right:24px}.hero-meta-strip{display:none}.stats{grid-template-columns:repeat(2,1fr);row-gap:28px}.stat{padding-left:0}.stat:nth-child(2){border-right:none;padding-right:0}.systems{grid-template-columns:1fr}.system-card{aspect-ratio:auto;min-height:480px}.portfolio-header-container{padding:60px 24px 0;box-sizing:border-box}.portfolio-scroll-wrapper{position:relative;height:auto;padding:40px 0 80px}.portfolio-sticky{position:relative;height:auto;padding:0;overflow:visible}.portfolio-parallax-grid{display:flex;flex-direction:column;gap:48px;margin-top:48px}.portfolio-col{display:flex;flex-direction:column;gap:48px;margin-top:0!important}.portfolio-parallax-grid .proj{max-width:100%!important;left:0!important;margin-top:0!important;z-index:auto!important}.portfolio-footer-container{margin-top:56px}.contact-inner,.detail-body,.contact-form,.about-grid,.ac-grid,.process-grid,.contact-screen-grid{grid-template-columns:1fr;gap:40px}.foot{grid-template-columns:1fr 1fr}.proj-row{grid-template-columns:40px 1fr 32px;gap:16px}.proj-row .arq,.proj-row .sys,.proj-row .city{display:none}.proj-row .name{font-size:22px}.section-head{grid-template-columns:1fr}.section-head .section-meta{display:none}.about-band{margin:0 -24px 60px;height:50vh}.contact-aside{border-left:none;padding-left:0;border-top:1px solid var(--fial-border);padding-top:40px}.pa-cta{grid-template-columns:1fr auto}.pa-cta .pa-num{display:none}}@media (max-width: 767px){.nav-toggle{display:flex}.nav-toggle.is-open .bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav-toggle.is-open .bar:nth-child(2){opacity:0}.nav-toggle.is-open .bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-links{position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--fial-nav-veil);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);flex-direction:column;justify-content:center;align-items:center;gap:40px;font-size:20px;opacity:0;pointer-events:none;transition:opacity .4s var(--fial-ease);z-index:55}.nav-links.is-open{opacity:1;pointer-events:auto}.nav-lang{font-size:14px;margin-top:24px}.nav-mark{font-size:17px}.nav-mark-logo{width:22px;height:22px}.hero-cta-row{flex-direction:column;align-items:flex-start;gap:16px}.arch-head{flex-direction:column;align-items:flex-start;gap:8px}.stats{grid-template-columns:1fr;row-gap:32px}.stat{border-right:none!important;padding-right:0!important;padding-bottom:24px;border-bottom:1px solid var(--fial-border)}.stat:last-child{border-bottom:none;padding-bottom:0}.foot{grid-template-columns:1fr}.foot-bottom{flex-direction:column;gap:12px;align-items:flex-start}}.page-wipe{position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--fial-bg, #0a0a0a);z-index:99999;pointer-events:none;opacity:0;transition:opacity .4s ease-in-out}.page-wipe.is-active{opacity:1;pointer-events:all}.spotlight-card{position:relative;overflow:hidden}.spotlight-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(600px circle at var(--mouse-x, -999px) var(--mouse-y, -999px),rgba(255,255,255,.06),transparent 40%);z-index:10;pointer-events:none;opacity:0;transition:opacity .5s var(--fial-ease)}.spotlight-card:hover:before{opacity:1}.blueprint-svg{width:100%;height:100%;color:var(--fial-fg)}.blueprint-svg path,.blueprint-svg rect,.blueprint-svg line{stroke-dasharray:200;stroke-dashoffset:200;transition:stroke-dashoffset 1.8s cubic-bezier(.25,1,.5,1)}.system-card.is-revealed .blueprint-svg path,.system-card.is-revealed .blueprint-svg rect,.system-card.is-revealed .blueprint-svg line{stroke-dashoffset:0}@media (pointer: fine){*{cursor:none!important}}#custom-cursor{position:fixed;top:0;left:0;width:14px;height:14px;background:#fff;border-radius:50%;pointer-events:none;z-index:100000;mix-blend-mode:difference;transform:translate3d(-100px,-100px,0);margin:-7px 0 0 -7px;transition:width .35s cubic-bezier(.16,1,.3,1),height .35s cubic-bezier(.16,1,.3,1),margin .35s cubic-bezier(.16,1,.3,1),opacity .3s ease;will-change:transform,width,height}#custom-cursor.is-hovering{width:72px;height:72px;margin:-36px 0 0 -36px;background:#fff}@media (pointer: coarse){#custom-cursor{display:none}}.initial-loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:var(--fial-bg);display:flex;align-items:center;justify-content:center;transition:opacity .6s var(--fial-ease)}.initial-loader.is-fading{opacity:0;pointer-events:none}.loader-ring{position:relative;width:148px;height:148px;animation:loaderScaleIn 1.2s cubic-bezier(.16,1,.3,1) forwards}.loader-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.loader-bg{fill:transparent;stroke:#ffffff14;stroke-width:2}.loader-progress{fill:transparent;stroke:var(--fial-accent);stroke-width:2;stroke-dasharray:302;stroke-dashoffset:302;animation:loaderFill 1.2s cubic-bezier(.16,1,.3,1) forwards}.loader-logo{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.loader-logo img{width:48px;height:48px;opacity:0;filter:grayscale(1) brightness(2) invert(var(--fial-invert));animation:logoReveal 1.2s cubic-bezier(.16,1,.3,1) forwards}@keyframes loaderFill{to{stroke-dashoffset:0}}@keyframes loaderScaleIn{0%{transform:scale(.96)}to{transform:scale(1)}}@keyframes logoReveal{0%{opacity:0;transform:scale(.96);filter:grayscale(1) brightness(2) invert(var(--fial-invert))}to{opacity:1;transform:scale(1);filter:grayscale(0) brightness(1) invert(var(--fial-invert))}}
