:root{--color-bg: #ffffff;--color-bg-alt: #f5f4f2;--color-surface: #ffffff;--color-graphite: #17181a;--color-graphite-alt: #1f2124;--color-steel: #6b6d70;--color-steel-light: #9a9ca0;--color-text: #17181a;--color-text-inverse: #f5f4f2;--color-muted: #6b6d70;--color-muted-inverse: #b7b9bd;--color-border: #e2e0dc;--color-border-inverse: rgba(245, 244, 242, .14);--color-accent: #f0a500;--color-accent-hover: #d99400;--color-accent-soft: #fdf1d9;--color-success: #2e7d47;--color-error: #c0392b;--container: 1280px;--container-narrow: 860px;--gutter: clamp(1.25rem, 4vw, 2.5rem);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--shadow-sm: 0 1px 2px rgba(23, 24, 26, .06), 0 1px 1px rgba(23, 24, 26, .04);--shadow-md: 0 8px 24px rgba(23, 24, 26, .1);--shadow-lg: 0 20px 48px rgba(23, 24, 26, .16);--transition-fast: .16s ease;--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .56s cubic-bezier(.16, 1, .3, 1);--font-base: "Inter", "Segoe UI", -apple-system, BlinkMacSystemFont, sans-serif;--font-display: "Manrope", "Inter", "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;--fs-h1: clamp(2rem, 1rem + 3.4vw, 4rem);--fs-h2: clamp(1.6rem, 1.15rem + 1.7vw, 2.5rem);--fs-h3: clamp(1.25rem, 1.05rem + .8vw, 1.65rem);--fs-h4: clamp(1.05rem, .98rem + .3vw, 1.25rem);--fs-body-lg: clamp(1.05rem, 1rem + .2vw, 1.15rem);--fs-body: 1rem;--fs-small: .875rem;--fs-tiny: .75rem;--header-height: 84px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-base);font-size:var(--fs-body);line-height:1.6;color:var(--color-text);background:var(--color-bg);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,picture,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}ul,ol{list-style:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}input,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:700;line-height:1.12;letter-spacing:-.01em;color:var(--color-graphite)}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}p{max-width:62ch}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.skip-link{position:absolute;left:1rem;top:-60px;background:var(--color-graphite);color:var(--color-text-inverse);padding:.75rem 1.25rem;border-radius:var(--radius-sm);z-index:999;transition:top var(--transition-fast)}.skip-link:focus{top:1rem}::selection{background:var(--color-accent);color:var(--color-graphite)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:var(--container-narrow)}.section{padding-block:clamp(3.5rem,4vw + 2rem,7.5rem)}.section--alt{background:var(--color-bg-alt)}.section--dark{background:var(--color-graphite);color:var(--color-text-inverse)}.section--dark h1,.section--dark h2,.section--dark h3,.section--dark h4{color:var(--color-text-inverse)}.section-head{max-width:46rem;margin-bottom:clamp(2rem,3vw,3.5rem)}.section-head--center{margin-inline:auto;text-align:center}.grid{display:grid;gap:clamp(1.25rem,2vw,2rem)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 900px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 620px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}main{display:block;min-height:60vh}.page-offset{padding-top:var(--header-height)}.manifesto-section .eyebrow{justify-content:center;text-align:center;width:100%}.manifesto-statement{font-family:var(--font-display);font-weight:700;font-size:clamp(1.9rem,1.3rem + 2.2vw,3.25rem);line-height:1.15;letter-spacing:-.015em;color:var(--color-graphite);max-width:18ch;margin:1.5rem auto 0;text-align:center}.manifesto-statement .accent{color:var(--color-accent)}.manifesto-body{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,4vw,4rem);max-width:920px;margin:clamp(3rem,5vw,4.5rem) auto 0;padding-top:clamp(2rem,3vw,3rem);border-top:1px solid var(--color-border)}.manifesto-body p{color:var(--color-muted);font-size:var(--fs-body-lg)}@media (max-width: 760px){.manifesto-body{grid-template-columns:1fr;gap:1.5rem}}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:start}.intro-grid--photo{grid-template-columns:.85fr 1fr;align-items:center}@media (max-width: 900px){.intro-grid--photo{grid-template-columns:1fr}.intro-grid--photo .media-photo{max-width:420px}}.intro-statement{font-family:var(--font-display);font-size:var(--fs-h3);font-weight:600;line-height:1.3;color:var(--color-graphite)}.intro-statement .accent{color:var(--color-accent)}.intro-copy p+p{margin-top:1rem}.intro-copy p{color:var(--color-muted)}.stat-row{display:grid;grid-template-columns:repeat(3,auto);gap:clamp(1.5rem,4vw,3rem);margin-top:2.5rem}@media (max-width: 900px){.intro-grid{grid-template-columns:1fr}}@media (max-width: 480px){.stat-row{grid-template-columns:1fr 1fr}}.cta-band{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.cta-band h2{max-width:20ch}.cta-actions{display:flex;gap:1rem;flex-wrap:wrap}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-base);font-size:var(--fs-tiny);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);margin-bottom:1rem}.eyebrow:before{content:"";width:28px;height:2px;background:var(--color-accent);display:block}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.95rem 1.75rem;font-size:var(--fs-small);font-weight:600;letter-spacing:.02em;border-radius:var(--radius-sm);border:1px solid transparent;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-accent);color:var(--color-graphite)}.btn-primary:hover{background:var(--color-accent-hover)}.btn-outline{background:transparent;border-color:currentColor;color:var(--color-graphite)}.btn-outline:hover{background:var(--color-graphite);color:var(--color-text-inverse);border-color:var(--color-graphite)}.section--dark .btn-outline{color:var(--color-text-inverse)}.section--dark .btn-outline:hover{background:var(--color-text-inverse);color:var(--color-graphite)}.btn-ghost{background:transparent;color:var(--color-graphite);padding-inline:0}.section--dark .btn-ghost{color:var(--color-text-inverse)}.btn-ghost .arrow{transition:transform var(--transition-fast)}.btn-ghost:hover .arrow{transform:translate(4px)}.arrow{width:1em;height:1em;flex-shrink:0}.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;font-size:var(--fs-small);color:var(--color-muted);padding-block:1.5rem}.breadcrumb a{transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--color-accent)}.breadcrumb span[aria-hidden]{color:var(--color-border)}.breadcrumb .current{color:var(--color-text);font-weight:500}.card{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-normal),box-shadow var(--transition-normal),transform var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.media-placeholder{position:relative;aspect-ratio:4 / 3;background:repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 2px,transparent 2px 14px),linear-gradient(160deg,var(--color-graphite),var(--color-graphite-alt));color:var(--color-muted-inverse);display:flex;align-items:flex-end;overflow:hidden}.media-placeholder:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.35),transparent 55%)}.media-placeholder .tag{position:relative;z-index:1;padding:1.1rem 1.25rem;font-size:var(--fs-tiny);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-inverse)}.media-placeholder .beam{position:absolute;top:1.1rem;right:1.1rem;z-index:1;color:var(--color-accent);opacity:.85}.index-number{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:700;color:var(--color-accent)}.divider{height:1px;background:var(--color-border);border:none}.field{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.4rem}.field label{font-size:var(--fs-small);font-weight:600;color:var(--color-graphite)}.field .required{color:var(--color-accent)}.field input,.field textarea,.field select{padding:.85rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.field textarea{resize:vertical;min-height:140px}.field-error{font-size:var(--fs-tiny);color:var(--color-error);display:none}.field.has-error input,.field.has-error textarea{border-color:var(--color-error)}.field.has-error .field-error{display:block}.checkbox-field{display:flex;align-items:flex-start;gap:.7rem;font-size:var(--fs-small);color:var(--color-muted);margin-bottom:1.5rem}.checkbox-field input{margin-top:.2rem;width:16px;height:16px;accent-color:var(--color-accent)}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-status{display:none;padding:1rem 1.25rem;border-radius:var(--radius-sm);font-size:var(--fs-small);font-weight:500;margin-bottom:1.5rem}.form-status.is-visible{display:block}.form-status.is-success{background:#eaf6ee;color:var(--color-success);border:1px solid #c7e8d1}.form-status.is-error{background:#fbebe9;color:var(--color-error);border:1px solid #f3cac5}.pill{padding:.55rem 1.1rem;border-radius:999px;border:1px solid var(--color-border);font-family:var(--font-mono);font-size:var(--fs-small);font-weight:500;color:var(--color-muted);transition:all var(--transition-fast)}.pill:hover{border-color:var(--color-graphite);color:var(--color-graphite)}.pill.is-active{background:var(--color-graphite);border-color:var(--color-graphite);color:var(--color-text-inverse)}.stat{display:flex;flex-direction:column;gap:.3rem}.stat-value{font-family:var(--font-display);font-size:clamp(2rem,1.5rem + 2vw,3rem);font-weight:700;color:var(--color-graphite)}.section--dark .stat-value{color:var(--color-text-inverse)}.stat-label{font-size:var(--fs-small);color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.section--dark .stat-label{color:var(--color-muted-inverse)}.content-note{border:1px dashed var(--color-steel-light);border-radius:var(--radius-sm);padding:1rem 1.25rem;font-size:var(--fs-small);color:var(--color-muted);background:var(--color-bg-alt)}.site-header{position:fixed;inset-inline:0;top:0;z-index:100;height:var(--header-height);display:flex;align-items:center;background:transparent;transition:background var(--transition-normal),box-shadow var(--transition-normal),backdrop-filter var(--transition-normal)}.site-header.is-solid{background:#ffffffeb;backdrop-filter:saturate(160%) blur(14px);box-shadow:0 1px 0 var(--color-border)}.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{display:flex;align-items:center;gap:.7rem;flex-shrink:0}.brand img{height:44px;width:auto}.brand-name{display:flex;flex-direction:column;line-height:1.15;font-family:var(--font-display);font-weight:700;font-size:.92rem;letter-spacing:.01em;color:var(--color-graphite)}.brand-name span{font-family:var(--font-base);font-weight:500;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.site-header:not(.is-solid) .brand-name,.site-header:not(.is-solid).is-transparent-dark .brand-name{color:#fff}.main-nav{display:flex;align-items:center;gap:clamp(1.1rem,2vw,2.1rem)}.main-nav a{position:relative;font-size:var(--fs-small);font-weight:500;color:var(--color-graphite);padding-block:.4rem;transition:color var(--transition-fast)}.site-header:not(.is-solid) .main-nav a{color:#fff}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--color-accent);transition:right var(--transition-normal)}.main-nav a:hover:after,.main-nav a.is-active:after{right:0}.main-nav a.is-active{color:var(--color-accent)}.site-header:not(.is-solid) .main-nav a.is-active{color:var(--color-accent)}.header-actions{display:flex;align-items:center;gap:1.25rem}.header-actions .btn-primary{padding:.7rem 1.3rem}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;border-radius:var(--radius-sm);flex-shrink:0;z-index:110}.nav-toggle span{display:block;width:22px;height:2px;background:var(--color-graphite);transition:transform var(--transition-fast),opacity var(--transition-fast),background var(--transition-fast);margin-inline:auto}.site-header:not(.is-solid) .nav-toggle span{background:#fff}.nav-toggle[aria-expanded=true] span{background:var(--color-graphite)}.nav-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media (max-width: 960px){.nav-toggle{display:flex}.main-nav{position:fixed;inset:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:1.75rem;padding:7rem var(--gutter) 3rem;background:var(--color-graphite);transform:translate(100%);transition:transform var(--transition-slow);overflow-y:auto}.main-nav a{font-size:1.6rem;color:#fff!important}body.nav-open .main-nav{transform:translate(0)}body.nav-open{overflow:hidden}.header-actions{gap:.75rem}.header-actions .btn-primary{display:none}.main-nav .header-actions-mobile{display:flex;margin-top:1rem}.main-nav .header-actions-mobile .btn-primary{display:inline-flex}}@media (min-width: 961px){.header-actions-mobile{display:none}}.site-footer{background:var(--color-graphite);color:var(--color-muted-inverse);padding-block:clamp(3.5rem,5vw,5.5rem) 2rem}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.1fr;gap:2.5rem;padding-bottom:3rem;border-bottom:1px solid var(--color-border-inverse)}.footer-brand .brand{margin-bottom:1.1rem}.footer-brand .brand-name,.footer-brand .brand-name span{color:#fff}.footer-brand p{font-size:var(--fs-small);color:var(--color-muted-inverse);max-width:30ch}.footer-col h5{font-family:var(--font-base);font-size:var(--fs-tiny);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:1.1rem}.footer-col ul{display:flex;flex-direction:column;gap:.7rem}.footer-col a,.footer-col address a{font-size:var(--fs-small);color:var(--color-muted-inverse);transition:color var(--transition-fast)}.footer-col a:hover{color:var(--color-accent)}.footer-col address{font-style:normal;display:flex;flex-direction:column;gap:.7rem;font-size:var(--fs-small)}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding-top:1.75rem;font-size:var(--fs-tiny);color:var(--color-muted-inverse)}.footer-legal{display:flex;flex-wrap:wrap;gap:1.25rem}.footer-legal a:hover{color:var(--color-accent)}.footer-social{display:flex;gap:.75rem}.footer-social a{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border-inverse);border-radius:50%;transition:border-color var(--transition-fast),background var(--transition-fast)}.footer-social a:hover{background:var(--color-accent);border-color:var(--color-accent)}.footer-social svg{width:16px;height:16px}@media (max-width: 900px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width: 560px){.footer-grid{grid-template-columns:1fr;gap:2rem}.footer-bottom{flex-direction:column;align-items:flex-start}}.hero{position:relative;min-height:100vh;display:grid;grid-template-columns:46% 54%;background:var(--color-graphite);color:#fff;overflow:hidden}.hero:after{content:"";position:absolute;top:0;left:0;right:0;height:130px;z-index:3;pointer-events:none;background:linear-gradient(180deg,rgba(9,10,11,.55) 0%,transparent 100%)}.hero-panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:var(--header-height) clamp(1.5rem,4vw,4rem) clamp(2rem,4vw,3.5rem);z-index:2}.hero-panel:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:42px 42px;-webkit-mask-image:radial-gradient(ellipse 120% 80% at 20% 20%,#000 40%,transparent 90%);mask-image:radial-gradient(ellipse 120% 80% at 20% 20%,#000 40%,transparent 90%)}.hero-topline{display:flex;align-items:center;justify-content:space-between;padding-top:4.5rem;opacity:0;transform:translateY(10px);transition:opacity .7s ease .12s,transform .7s cubic-bezier(.16,1,.3,1) .12s}.hero.is-loaded .hero-topline{opacity:1;transform:translateY(0)}.hero-index{font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--color-muted-inverse);letter-spacing:.05em}.hero-body{padding-block:2rem}.hero-eyebrow-row{display:flex;align-items:center;gap:.9rem;margin-bottom:1.5rem;opacity:0;transform:translateY(14px);transition:opacity .7s ease 60ms,transform .7s cubic-bezier(.16,1,.3,1) 60ms}.hero.is-loaded .hero-eyebrow-row{opacity:1;transform:translateY(0)}.hero-eyebrow-row .line{width:32px;height:1px;background:var(--color-accent)}.hero-eyebrow-row span{font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent)}.hero h1{color:#fff;font-size:clamp(1.5rem,.85rem + 1.9vw,2.5rem);line-height:1.1;letter-spacing:-.01em}.hero h1 .word{display:block;overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}.hero h1 .word span{display:inline-block;transform:translateY(115%);transition:transform .9s cubic-bezier(.16,1,.3,1)}.hero.is-loaded h1 .word span{transform:translateY(0)}.hero h1 .word:nth-child(1) span{transition-delay:.1s}.hero h1 .word:nth-child(2) span{transition-delay:.19s}.hero h1 .word:nth-child(3) span{transition-delay:.28s}.hero h1 .word:nth-child(4) span{transition-delay:.37s}.hero h1 .accent{color:var(--color-accent)}.hero-sub{max-width:40ch;font-size:var(--fs-body-lg);color:var(--color-muted-inverse);margin-top:1.75rem;opacity:0;transform:translateY(14px);transition:opacity .7s ease .52s,transform .7s cubic-bezier(.16,1,.3,1) .52s}.hero.is-loaded .hero-sub{opacity:1;transform:translateY(0)}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2.25rem;opacity:0;transform:translateY(14px);transition:opacity .7s ease .62s,transform .7s cubic-bezier(.16,1,.3,1) .62s}.hero.is-loaded .hero-actions{opacity:1;transform:translateY(0)}.hero-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:2rem;border-top:1px solid var(--color-border-inverse);opacity:0;transform:translateY(14px);transition:opacity .7s ease .7s,transform .7s cubic-bezier(.16,1,.3,1) .7s}.hero.is-loaded .hero-meta{opacity:1;transform:translateY(0)}.hero-meta .stat-label{font-family:var(--font-mono);font-size:.7rem;color:var(--color-muted-inverse)}.hero-meta .stat-value{color:#fff;font-size:var(--fs-h4);margin-top:.3rem;display:block}.hero-visual{position:relative;overflow:hidden}.hero-img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transform:scale(1.08);animation:hero-kenburns 22s ease-in-out infinite alternate}.hero-visual:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(100deg,rgba(9,10,11,.85) 0%,rgba(9,10,11,.15) 22%,transparent 45%),linear-gradient(0deg,rgba(9,10,11,.5),transparent 40%)}.hero-visual:after{content:"";position:absolute;z-index:1;inset:0 0 0 -2px;width:2px;background:var(--color-accent);box-shadow:0 0 24px 2px #f0a50099}.hero-glow{position:absolute;z-index:1;width:40vw;max-width:560px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(240,165,0,.22),transparent 68%);pointer-events:none;left:var(--glow-x, 60%);top:var(--glow-y, 30%);transform:translate(-50%,-50%);opacity:0;transition:opacity .5s ease}.hero-visual:hover .hero-glow{opacity:1}.hero-visual-tag{position:absolute;left:clamp(1.25rem,4vw,2.5rem);bottom:clamp(1.5rem,4vw,2.5rem);z-index:2;display:flex;flex-direction:column;gap:.4rem;opacity:0;transition:opacity .7s ease .9s}.hero.is-loaded .hero-visual-tag{opacity:1}@keyframes hero-kenburns{0%{transform:scale(1.08) translate(0)}to{transform:scale(1.16) translate(-1.5%,-1%)}}.hero-scroll-cue{position:absolute;z-index:2;left:clamp(1.5rem,4vw,4rem);bottom:clamp(1.5rem,4vw,2.5rem);display:flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.1em;text-transform:uppercase;color:var(--color-muted-inverse);opacity:0;transition:opacity .7s ease 1s}.hero.is-loaded .hero-scroll-cue{opacity:1}.hero-scroll-cue svg{animation:scroll-cue-bounce 1.8s ease-in-out infinite}@keyframes scroll-cue-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.page-hero{position:relative;background:var(--color-graphite);color:#fff;padding-block:calc(var(--header-height) + 3.5rem) 3.5rem;overflow:hidden}.page-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% 0%,rgba(240,165,0,.14),transparent 45%),repeating-linear-gradient(115deg,rgba(255,255,255,.045) 0 1px,transparent 1px 64px)}.page-hero .container{position:relative;z-index:1}.page-hero h1{color:#fff;max-width:24ch;font-size:clamp(1.5rem,1.15rem + 1.5vw,2.5rem);line-height:1.15}.page-hero .breadcrumb{color:var(--color-muted-inverse)}.page-hero .breadcrumb a:hover{color:var(--color-accent)}.page-hero .breadcrumb .current{color:#fff}.page-hero-sub{max-width:56ch;color:var(--color-muted-inverse);font-size:var(--fs-body-lg);margin-top:1rem}.hero .btn-outline,.page-hero .btn-outline,.inner-hero .btn-outline{color:#fff;border-color:#ffffff80}.hero .btn-outline:hover,.page-hero .btn-outline:hover,.inner-hero .btn-outline:hover{background:#fff;color:var(--color-graphite);border-color:#fff}.hero .btn-ghost,.page-hero .btn-ghost,.inner-hero .btn-ghost{color:#fff}.inner-hero{position:relative;min-height:72vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden;background:var(--color-graphite)}.inner-hero-media{position:absolute;inset:-10% 0;will-change:transform}.inner-hero-media img{width:100%;height:120%;object-fit:cover;object-position:center 40%}.inner-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#090a0beb,#090a0b59 55%,#090a0b8c),linear-gradient(100deg,rgba(9,10,11,.5) 0%,transparent 50%)}.inner-hero-topline{position:absolute;top:calc(var(--header-height) + 1.5rem);left:var(--gutter);z-index:1;display:flex;gap:1.5rem}.inner-hero-topline .hero-index{font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--color-muted-inverse);letter-spacing:.05em}.inner-hero .container{position:relative;z-index:1;width:100%;padding-block:calc(var(--header-height) + 2rem) 3.5rem}.inner-hero .breadcrumb{color:var(--color-muted-inverse);padding-block:0 1.5rem}.inner-hero .breadcrumb a:hover{color:var(--color-accent)}.inner-hero .breadcrumb .current{color:#fff}.inner-hero h1{color:#fff;max-width:22ch;font-size:clamp(1.5rem,1.15rem + 1.5vw,2.5rem);line-height:1.15}.inner-hero-tag{position:absolute;top:calc(var(--header-height) + 1.5rem);right:var(--gutter);z-index:1}@media (max-width: 620px){.inner-hero{min-height:60vh}.inner-hero .container{padding-block:calc(var(--header-height) + 1.25rem) 2.25rem}.inner-hero .breadcrumb{padding-block:0 1rem;font-size:var(--fs-tiny)}.inner-hero h1{font-size:1.6rem;max-width:18ch}.inner-hero .page-hero-sub{font-size:var(--fs-small);max-width:42ch}.inner-hero-tag,.inner-hero-topline{display:none}}@media (max-width: 960px){.hero{grid-template-columns:1fr;grid-template-rows:46vh 1fr}.hero-visual{clip-path:polygon(0 0,100% 0,100% 92%,0 100%);order:-1}.hero-panel{padding-top:calc(var(--header-height) + 1.5rem)}.hero-topline{padding-top:0}.hero-scroll-cue{display:none}}@media (max-width: 560px){.hero-meta{grid-template-columns:1fr;gap:1rem}}@media (prefers-reduced-motion: reduce){.hero h1 .word span{transform:translateY(0)}.hero-img{animation:none;transform:scale(1)}.hero-scroll-cue svg{animation:none}}.marquee-band{position:relative;background:var(--color-graphite);padding-block:1.1rem;display:flex;flex-direction:column;gap:.6rem;border-block:1px solid var(--color-border-inverse)}.marquee{position:relative;overflow:hidden}.marquee-track{display:flex;width:max-content;animation:marquee-scroll 34s linear infinite}.marquee-track.reverse{animation-direction:reverse;animation-duration:30s}.marquee:hover .marquee-track{animation-play-state:paused}.marquee-item{display:flex;align-items:center;gap:.9rem;padding-inline:1.25rem;font-family:var(--font-display);font-size:var(--fs-h4);font-weight:700;letter-spacing:.01em;white-space:nowrap}.marquee-item span.txt{color:transparent;-webkit-text-stroke:1px var(--color-muted-inverse)}.marquee-track.reverse .marquee-item span.txt{color:var(--color-muted-inverse);-webkit-text-stroke:0}.marquee-item .dot{color:var(--color-accent);font-size:.8rem}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.marquee-track{animation:none;overflow-x:auto}}.media-photo{position:relative;overflow:hidden;aspect-ratio:var(--ratio, 4 / 3);border-radius:var(--radius-md);background:var(--color-graphite)}.media-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}.media-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,10,11,.68) 0%,transparent 52%)}.media-photo .tag{position:absolute;left:0;right:0;bottom:0;z-index:1;padding:1.1rem 1.25rem;color:#fff;font-size:var(--fs-tiny);font-weight:600;letter-spacing:.08em;text-transform:uppercase}a:hover .media-photo img{transform:scale(1.07)}[data-reveal-clip]{clip-path:inset(0 0 100% 0);transition:clip-path 1.1s cubic-bezier(.16,1,.3,1)}[data-reveal-clip].is-visible{clip-path:inset(0 0 0% 0)}.service-carousel{position:relative}.service-track{display:flex;gap:1.25rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.5rem;margin:0 calc(var(--gutter) * -1);padding-inline:var(--gutter);scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}.service-track::-webkit-scrollbar{display:none}.service-track.is-dragging{cursor:grabbing;scroll-snap-type:none}.service-card{position:relative;flex:0 0 clamp(260px,32vw,320px);scroll-snap-align:start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2.25rem 1.75rem;overflow:hidden;transition:border-color var(--transition-normal),transform var(--transition-normal),box-shadow var(--transition-normal)}.service-card:before{content:attr(data-num);position:absolute;top:-.35em;right:.3rem;font-family:var(--font-mono);font-size:5.5rem;font-weight:700;color:var(--color-graphite);opacity:.04;line-height:1;pointer-events:none}.service-card:hover{border-color:var(--color-accent);transform:translateY(-6px);box-shadow:var(--shadow-md)}.service-card[data-reveal]{transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1),border-color var(--transition-normal),box-shadow var(--transition-normal)}.service-card .service-icon{position:relative;width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent);margin-bottom:1.75rem;transition:background var(--transition-normal),color var(--transition-normal),transform var(--transition-normal)}.service-card:hover .service-icon{background:var(--color-accent);color:var(--color-graphite);transform:rotate(-6deg) scale(1.06)}.service-card .service-num{position:relative;font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--color-accent);display:block;margin-bottom:.5rem;letter-spacing:.05em}.service-card h3{position:relative;font-size:var(--fs-h4);margin-bottom:.6rem}.service-card p{position:relative;color:var(--color-muted);font-size:var(--fs-small)}.carousel-controls{display:flex;align-items:center;justify-content:space-between;margin-top:2.25rem}.carousel-arrows{display:flex;gap:.75rem}.carousel-arrow{width:48px;height:48px;border-radius:50%;border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);flex-shrink:0}.carousel-arrow:hover:not(:disabled){background:var(--color-graphite);border-color:var(--color-graphite);color:#fff}.carousel-arrow:disabled{opacity:.3;cursor:not-allowed}.carousel-dots{display:flex;align-items:center;gap:.5rem}.carousel-dots button{width:8px;height:8px;border-radius:4px;background:var(--color-border);transition:background var(--transition-fast),width var(--transition-fast)}.carousel-dots button.is-active{background:var(--color-accent);width:24px}.stack-projects{display:flex;flex-direction:column;gap:1.5rem}.stack-item-outer{position:relative}.stack-projects-cta{margin-top:2.5rem;text-align:center}.stack-projects-cta .btn{width:100%;max-width:320px}@media (min-width: 640px){.stack-projects-cta .btn{width:auto}}.stack-item{position:relative;height:min(58vh,520px);border-radius:var(--radius-lg);overflow:hidden;display:flex;align-items:flex-end;color:#fff;box-shadow:0 30px 60px #00000059}.stack-item-media{position:absolute;inset:0}.stack-item-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.16,1,.3,1)}.stack-item-media:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#090a0be6,#090a0b26 45%,#090a0b73)}.stack-item-content{position:relative;z-index:1;width:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;padding:clamp(1.75rem,4vw,3.5rem)}.stack-item-index{font-family:var(--font-mono);font-size:clamp(3rem,2rem + 4vw,6rem);font-weight:700;line-height:1;color:#ffffff29;flex-shrink:0}.stack-item-body .cat{font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.1em;text-transform:uppercase;color:var(--color-accent)}.stack-item-body h3{color:#fff;font-size:clamp(1.35rem,1.05rem + 1.1vw,2rem);margin-top:.6rem;max-width:16ch}.stack-item-body a{display:inline-flex;align-items:center;gap:.6rem;margin-top:1.5rem;font-size:var(--fs-small);font-weight:600;color:#fff}.stack-item-body a .arrow{transition:transform var(--transition-fast)}.stack-item-body a:hover .arrow{transform:translate(4px)}.stretched-link:after{content:"";position:absolute;inset:0;z-index:1}.stack-item:hover .media-photo img,.stack-item:hover .stack-item-media img{transform:scale(1.05)}@media (max-width: 760px){.stack-item{height:min(50vh,380px)}.stack-item-content{flex-direction:column;align-items:flex-start;gap:1rem}.stack-item-index{font-size:2.5rem;color:var(--color-accent)}}.capability-band{position:relative;min-height:62vh;display:flex;align-items:center;overflow:hidden;color:#fff}.capability-band-media{position:absolute;inset:-6% 0 0;overflow:hidden}.capability-band-media img{width:100%;height:106%;object-fit:cover;will-change:transform}.capability-band-media:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,#090a0bf0 8%,#090a0b99 55%,#090a0bcc)}.capability-band .container{position:relative;z-index:1}.capability-band-content{max-width:42rem}.capability-band blockquote{font-family:var(--font-display);font-size:clamp(1.4rem,1.1rem + 1.4vw,2.15rem);font-weight:600;line-height:1.28;margin:0}.capability-band cite{display:block;margin-top:1.75rem;font-style:normal;font-size:var(--fs-small);color:var(--color-muted-inverse)}@media (max-width: 620px){.service-card{flex-basis:80vw}.capability-band{min-height:50vh}}@media (prefers-reduced-motion: reduce){.capability-band-media img{transform:none!important}}.grain{position:fixed;inset:0;z-index:998;pointer-events:none;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}html.has-custom-cursor,html.has-custom-cursor *{cursor:none!important}.cursor-dot{position:fixed;top:0;left:0;width:8px;height:8px;margin:-4px 0 0 -4px;border-radius:50%;background:var(--color-accent);z-index:999;pointer-events:none;transform:translate3d(-100px,-100px,0);transition:transform 60ms linear,opacity .2s ease}.cursor-ring{position:fixed;top:0;left:0;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;border:1px solid rgba(240,165,0,.6);z-index:999;pointer-events:none;transform:translate3d(-100px,-100px,0);transition:transform .16s cubic-bezier(.16,1,.3,1),width .22s ease,height .22s ease,margin .22s ease,border-color .22s ease,background .22s ease}.cursor-ring:before,.cursor-ring:after{content:"";position:absolute;background:#f0a50099}.cursor-ring:before{left:50%;top:-6px;width:1px;height:4px;transform:translate(-50%)}.cursor-ring:after{left:-6px;top:50%;width:4px;height:1px;transform:translateY(-50%)}html.has-custom-cursor.cursor-active .cursor-dot,html.has-custom-cursor.cursor-active .cursor-ring{opacity:1}html.has-custom-cursor .cursor-dot,html.has-custom-cursor .cursor-ring{opacity:0}.cursor-ring.is-hovering{width:64px;height:64px;margin:-32px 0 0 -32px;background:#f0a50014;border-color:transparent}.cursor-ring.is-hovering:before,.cursor-ring.is-hovering:after{display:none}@media (hover: none),(pointer: coarse),(prefers-reduced-motion: reduce){.cursor-dot,.cursor-ring{display:none}html.has-custom-cursor,html.has-custom-cursor *{cursor:auto!important}}.magnetic{display:inline-block;transition:transform .26s cubic-bezier(.16,1,.3,1)}.magnetic>*{display:inline-flex}.blueprint-frame{position:relative}.blueprint-frame:before,.blueprint-frame:after,.blueprint-frame .corner-tl,.blueprint-frame .corner-br{content:"";position:absolute;width:22px;height:22px;z-index:2;pointer-events:none;opacity:0;transition:opacity .4s ease,transform .4s ease}.blueprint-frame:before{top:-1px;left:-1px;border-top:2px solid var(--color-accent);border-left:2px solid var(--color-accent);transform:translate(6px,6px)}.blueprint-frame:after{bottom:-1px;right:-1px;border-bottom:2px solid var(--color-accent);border-right:2px solid var(--color-accent);transform:translate(-6px,-6px)}.blueprint-frame:hover:before,.blueprint-frame:hover:after,.blueprint-frame.is-visible:before,.blueprint-frame.is-visible:after{opacity:1;transform:translate(0)}.spec-tag{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.04em;color:var(--color-muted-inverse)}.spec-tag:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-accent);flex-shrink:0}.side-nav{position:fixed;right:1.75rem;top:50%;transform:translateY(-50%);z-index:90;display:flex;flex-direction:column;align-items:center;gap:.9rem;opacity:0;pointer-events:none;transition:opacity .4s ease}.side-nav.is-visible{opacity:1;pointer-events:auto}.side-nav button{width:9px;height:9px;border-radius:50%;border:1px solid rgba(255,255,255,.5);transition:background var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast);position:relative}.side-nav button:after{content:attr(data-label);position:absolute;right:20px;top:50%;transform:translateY(-50%);font-family:var(--font-mono);font-size:var(--fs-tiny);color:#fff;background:var(--color-graphite);padding:.3rem .6rem;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease}.side-nav button:hover:after{opacity:1}.side-nav button.is-active{background:var(--color-accent);border-color:var(--color-accent);transform:scale(1.2)}.side-nav.on-light button{border-color:#17181a59}@media (max-width: 1100px){.side-nav{display:none}}@media (prefers-reduced-motion: reduce),(hover: none){.magnetic{transition:none}}.emergency-band{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(2rem,4vw,4rem);align-items:center}.emergency-phone{display:inline-flex;align-items:center;gap:.85rem;font-family:var(--font-mono);font-size:clamp(1.6rem,1.2rem + 1.6vw,2.5rem);font-weight:700;color:var(--color-accent);margin-top:1.75rem}.emergency-phone svg{width:1em;height:1em;flex-shrink:0}.emergency-note{position:relative;padding-left:1.4rem;font-size:var(--fs-small);color:var(--color-muted-inverse);margin-top:1rem}.emergency-note:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;border-radius:50%;background:var(--color-accent);transform:translateY(-50%);animation:pulse-dot 2s ease-out infinite}@keyframes pulse-dot{0%{box-shadow:0 0 #f0a5008c}70%{box-shadow:0 0 0 10px #f0a50000}to{box-shadow:0 0 #f0a50000}}@media (prefers-reduced-motion: reduce){.emergency-note:before{animation:none}}@media (max-width: 860px){.emergency-band{grid-template-columns:1fr}}.contact-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--color-border);border:1px solid var(--color-border)}.contact-strip-item{position:relative;padding:2rem 1.75rem;background:var(--color-surface);transition:background var(--transition-fast),transform var(--transition-normal)}.contact-strip-item:hover{background:var(--color-bg-alt);transform:translateY(-4px)}.contact-strip-item[data-reveal]{transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1),background var(--transition-fast)}.contact-strip-item h5{font-family:var(--font-mono);font-size:var(--fs-tiny);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin-bottom:.6rem}.contact-strip-item a,.contact-strip-item p{font-family:var(--font-display);font-size:var(--fs-h4);font-weight:600}@media (max-width: 760px){.contact-strip{grid-template-columns:1fr}}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.value-card{position:relative;padding:2.25rem 2rem;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-normal),transform var(--transition-normal),box-shadow var(--transition-normal)}.value-card:before{content:attr(data-num);position:absolute;top:.75rem;right:1rem;z-index:0;font-family:var(--font-mono);font-size:2.75rem;font-weight:700;color:var(--color-border);line-height:1;pointer-events:none}.value-card:hover{border-color:var(--color-accent);transform:translateY(-6px);box-shadow:var(--shadow-md)}.value-card .value-num{position:relative;display:block;font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--color-accent);letter-spacing:.05em;margin-bottom:1rem}.value-card h3,.value-card p{position:relative}.value-card p{color:var(--color-muted);font-size:var(--fs-small);margin-top:.5rem}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.team-card{position:relative;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-normal),transform var(--transition-normal),box-shadow var(--transition-normal)}.team-card:hover .initials{transform:scale(1.08)}.team-avatar .initials{transition:transform var(--transition-normal)}.team-card:hover{border-color:var(--color-accent);transform:translateY(-6px);box-shadow:var(--shadow-md)}.team-avatar{position:relative;aspect-ratio:1 / 1;display:flex;align-items:center;justify-content:center;background:var(--color-graphite);overflow:hidden}.team-avatar:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:28px 28px}.team-avatar .initials{position:relative;font-family:var(--font-mono);font-size:3rem;font-weight:700;color:var(--color-accent);letter-spacing:.02em}.team-card-body{padding:1.5rem}.team-card-body .role{font-family:var(--font-mono);font-size:var(--fs-tiny);text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);font-weight:600;margin-bottom:.3rem}@media (max-width: 860px){.value-grid,.team-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.value-grid,.team-grid{grid-template-columns:1fr}}.service-detail-list{display:flex;flex-direction:column}.service-detail{position:relative;display:grid;grid-template-columns:110px 1fr;gap:clamp(1.5rem,4vw,3rem);padding:clamp(2rem,4vw,3.5rem) clamp(1rem,2vw,1.5rem);border-top:1px solid var(--color-border);transition:background var(--transition-normal)}.service-detail:last-child{border-bottom:1px solid var(--color-border)}.service-detail:hover{background:var(--color-bg-alt)}.service-detail .index-number{font-family:var(--font-mono);font-size:var(--fs-h4);color:var(--color-accent)}.service-detail h3{margin-bottom:.75rem}.service-detail p{color:var(--color-muted)}.service-detail-tags{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}.service-detail-tags span{font-family:var(--font-mono);font-size:var(--fs-tiny);padding:.4rem .75rem;border-radius:999px;background:var(--color-bg-alt);color:var(--color-muted);border:1px solid var(--color-border);transition:border-color var(--transition-fast),color var(--transition-fast)}.service-detail:hover .service-detail-tags span{border-color:var(--color-accent);color:var(--color-graphite)}@media (max-width: 640px){.service-detail{grid-template-columns:1fr}}.filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:clamp(2rem,3vw,3rem)}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.25rem,2vw,2rem)}.project-card .media-photo{aspect-ratio:4 / 3}.project-card-body{padding:1.25rem .1rem}.project-card-body .cat{font-size:var(--fs-tiny);text-transform:uppercase;letter-spacing:.08em;color:var(--color-accent);font-weight:600}.project-card-body h3{font-size:var(--fs-h4);margin-top:.4rem}.project-card[hidden]{display:none}.projects-empty{display:none;padding:3rem 0;text-align:center;color:var(--color-muted)}.projects-empty.is-visible{display:block}@media (max-width: 900px){.project-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.project-grid{grid-template-columns:1fr}}.project-hero-media{aspect-ratio:16 / 9;border-radius:var(--radius-md);overflow:hidden}@media (max-width: 620px){.project-hero-media{aspect-ratio:4 / 3}}.project-meta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:1.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);margin-block:2rem}.project-meta-grid dt{font-size:var(--fs-tiny);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin-bottom:.35rem}.project-meta-grid dd{font-family:var(--font-display);font-weight:600}.project-body-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(2rem,4vw,4rem)}.project-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1.5rem}.project-gallery .media-photo{aspect-ratio:1 / 1}@media (max-width: 900px){.project-meta-grid{grid-template-columns:repeat(3,1fr)}.project-body-grid{grid-template-columns:1fr}}@media (max-width: 560px){.project-meta-grid{grid-template-columns:1fr 1fr}.project-gallery{grid-template-columns:repeat(2,1fr)}}.masonry{columns:3 260px;column-gap:1.25rem}.masonry-item{position:relative;break-inside:avoid;margin-bottom:1.25rem;cursor:zoom-in}.masonry-item .media-photo{border-radius:var(--radius-md)}.masonry-item:nth-child(3n) .media-photo{aspect-ratio:4 / 5}.masonry-item:nth-child(3n+1) .media-photo{aspect-ratio:4 / 3}.masonry-item:nth-child(3n+2) .media-photo{aspect-ratio:1 / 1}.lightbox{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;background:#0a0a0bf0;padding:var(--gutter)}.lightbox.is-open{display:flex}.lightbox-figure{position:relative;width:min(90vw,1000px)}.lightbox-figure .media-photo{aspect-ratio:16 / 10;border-radius:var(--radius-md)}.lightbox-caption{color:var(--color-muted-inverse);font-size:var(--fs-small);margin-top:1rem;text-align:center}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;color:#fff;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-border-inverse);border-radius:50%;transition:background var(--transition-fast)}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{background:#ffffff1a}.lightbox-close{top:-56px;right:0}.lightbox-prev{left:-60px;top:50%;transform:translateY(-50%)}.lightbox-next{right:-60px;top:50%;transform:translateY(-50%)}@media (max-width: 900px){.masonry{columns:2 200px}.lightbox-prev{left:0}.lightbox-next{right:0}}@media (max-width: 560px){.masonry{columns:1}}.contact-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(2rem,4vw,4rem);align-items:start}.contact-info-list{display:flex;flex-direction:column;gap:1.75rem;margin-top:2rem}.contact-info-item h5{font-family:var(--font-mono);font-size:var(--fs-tiny);text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);margin-bottom:.4rem}.contact-info-item a,.contact-info-item p{font-family:var(--font-display);font-weight:600;font-size:var(--fs-h4)}.map-placeholder{margin-top:2rem;aspect-ratio:16 / 10;border-radius:var(--radius-md)}.map-embed{position:relative;margin-top:2rem;aspect-ratio:16 / 10;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border)}.map-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.15) contrast(1.05)}@media (max-width: 900px){.contact-layout{grid-template-columns:1fr}}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--gutter)}.error-code{font-family:var(--font-display);font-size:clamp(4rem,8vw + 2rem,9rem);font-weight:700;color:var(--color-accent);line-height:1}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}[data-reveal-group]>*{transition-delay:calc(var(--reveal-index, 0) * 90ms)}@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;transform:none;transition:none}}.scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:var(--color-accent);z-index:200;transition:width .1s linear}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.text-muted{color:var(--color-muted)}.text-center{text-align:center}.mt-0{margin-top:0}.beam-icon{color:var(--color-accent)}
