:root{--p09-dark-ink: #1A120E;--p09-espresso: #3A2418;--p09-earth: #6B4A2E;--p09-clay: #A88462;--p09-linen: #D5C4AE;--p09-graphite: #4A4A46;--bg-canvas: #F7F4EE;--bg-surface: #EDE6DC;--bg-elevated: #FFFFFF;--text-primary: #1A120E;--text-secondary: #5C534E;--border-subtle: rgba(26, 18, 14, .12);--border-strong: rgba(26, 18, 14, .28);--accent-primary: #6B4A2E;--accent-hover: #4A331D;--accent-text: #FFFFFF;--focus-ring: #6B4A2E;--scrim: rgba(26, 18, 14, .65);--font-serif: "Newsreader", Georgia, "Times New Roman", serif;--font-sans: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-display: clamp(3.25rem, 7vw, 6.5rem);--text-h1: clamp(2.25rem, 4.5vw, 3.75rem);--text-h2: clamp(1.75rem, 3vw, 2.5rem);--text-h3: clamp(1.25rem, 2vw, 1.5rem);--text-body: 1.0625rem;--text-meta: .8125rem;--text-mono: .75rem;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--space-16: 64px;--space-24: 96px;--space-32: 128px;--max-w: 1440px;--radius-xs: 2px;--radius-pill: 9999px;--ease-editorial: cubic-bezier(.22, 1, .36, 1);--duration-hover: .18s;--duration-modal: .24s}[data-theme=dark]{--bg-canvas: #140F0C;--bg-surface: #241913;--bg-elevated: #2F2119;--text-primary: #F7F4EE;--text-secondary: #D5C4AE;--border-subtle: rgba(213, 196, 174, .16);--border-strong: rgba(213, 196, 174, .32);--accent-primary: #C49A72;--accent-hover: #D8B28B;--accent-text: #140F0C;--focus-ring: #C49A72;--scrim: rgba(10, 7, 5, .85)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}img,svg,picture{max-width:100%;height:auto;display:block}html{font-size:16px;scroll-behavior:smooth;background-color:var(--bg-canvas);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6;-webkit-font-smoothing:antialiased}body{overflow-x:hidden;background-color:var(--bg-canvas);position:relative;min-height:100vh}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none;z-index:999;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.skip-link{position:absolute;top:-100px;left:var(--space-4);background:var(--accent-primary);color:var(--accent-text);padding:var(--space-2) var(--space-4);font-size:var(--text-meta);font-weight:600;z-index:10000;text-decoration:none;transition:top var(--duration-hover) ease}.skip-link:focus{top:var(--space-4)}.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--space-4)}@media(min-width:640px){.container{padding:0 var(--space-6)}}@media(min-width:1024px){.container{padding:0 var(--space-12)}}.section{padding:var(--space-16) 0;border-bottom:1px solid var(--border-subtle)}@media(min-width:768px){.section{padding:var(--space-24) 0}}.section-header{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-12)}@media(min-width:768px){.section-header{flex-direction:row;align-items:flex-end;justify-content:space-between}}.section-index{font-family:var(--font-sans);font-size:var(--text-mono);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-primary)}.section-title{font-family:var(--font-serif);font-size:var(--text-h1);font-weight:400;letter-spacing:-.02em;color:var(--text-primary);line-height:1.1}.section-subtitle{max-width:42ch;font-size:var(--text-meta);color:var(--text-secondary);line-height:1.6}.masthead{position:sticky;top:0;z-index:100;height:72px;background:var(--bg-canvas);border-bottom:1px solid var(--border-subtle);transition:background var(--duration-hover) ease,border-color var(--duration-hover) ease}.masthead-inner{display:flex;align-items:center;justify-content:space-between;height:100%}.brand-wordmark{font-family:var(--font-sans);font-size:.9375rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);text-decoration:none;display:flex;align-items:center;gap:var(--space-2)}.brand-slash{color:var(--accent-primary);font-weight:400}.nav-links{display:none;list-style:none;gap:var(--space-8)}@media(min-width:768px){.nav-links{display:flex}}.nav-link{font-family:var(--font-sans);font-size:var(--text-meta);font-weight:500;letter-spacing:.05em;text-transform:uppercase;color:var(--text-secondary);text-decoration:none;position:relative;padding:var(--space-2) 0;transition:color var(--duration-hover) ease}.nav-link:hover,.nav-link:focus-visible,.nav-link.active{color:var(--text-primary)}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0%;height:1px;background:var(--accent-primary);transition:width var(--duration-hover) var(--ease-editorial)}.nav-link:hover:after,.nav-link:focus-visible:after,.nav-link.active:after{width:100%}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.theme-toggle-btn,.menu-toggle-btn{background:transparent;border:1px solid var(--border-subtle);color:var(--text-primary);width:44px;height:44px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--duration-hover) ease,background var(--duration-hover) ease}.theme-toggle-btn:hover,.menu-toggle-btn:hover{border-color:var(--border-strong);background:var(--bg-surface)}.menu-toggle-btn{display:flex}@media(min-width:768px){.menu-toggle-btn{display:none}}.theme-icon-dark,[data-theme=dark] .theme-icon-light{display:none}[data-theme=dark] .theme-icon-dark{display:block}.mobile-drawer{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100vh;background:var(--bg-canvas);z-index:1000;display:flex;flex-direction:column;padding:var(--space-8) var(--space-6);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity var(--duration-hover) ease,transform var(--duration-hover) var(--ease-editorial),visibility var(--duration-hover)}.mobile-drawer.open{opacity:1;visibility:visible;transform:translateY(0)}.mobile-drawer-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-12)}.mobile-nav-list{list-style:none;display:flex;flex-direction:column;gap:var(--space-6)}.mobile-nav-link{font-family:var(--font-serif);font-size:2rem;color:var(--text-primary);text-decoration:none;letter-spacing:-.01em}.hero-section{padding:var(--space-8) 0 var(--space-16);border-bottom:1px solid var(--border-subtle)}@media(min-width:768px){.hero-section{padding:var(--space-12) 0 var(--space-24)}}.hero-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:center}@media(min-width:1024px){.hero-grid{grid-template-columns:7fr 5fr;gap:var(--space-16)}}.hero-visual-frame{position:relative;background:var(--bg-surface);border:1px solid var(--border-subtle);overflow:hidden}.hero-visual-frame img{width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover;display:block}.hero-tag{position:absolute;top:var(--space-4);left:var(--space-4);background:var(--bg-canvas);border:1px solid var(--border-subtle);padding:var(--space-1) var(--space-3);font-size:var(--text-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.hero-content{display:flex;flex-direction:column;gap:var(--space-6)}.issue-stamp{font-family:var(--font-sans);font-size:var(--text-meta);font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-primary);display:flex;align-items:center;gap:var(--space-3)}.issue-stamp:before{content:"";display:inline-block;width:24px;height:1px;background:var(--accent-primary)}.hero-headline{font-family:var(--font-serif);font-size:var(--text-display);font-weight:400;line-height:1.02;letter-spacing:-.025em;color:var(--text-primary)}.hero-lead{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-secondary);line-height:1.65;max-width:44ch}.hero-cta-group{display:flex;align-items:center;gap:var(--space-6);margin-top:var(--space-2)}.btn-primary{display:inline-flex;align-items:center;gap:var(--space-3);background:var(--accent-primary);color:var(--accent-text);padding:14px 28px;min-height:48px;font-family:var(--font-sans);font-size:var(--text-meta);font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;border:1px solid var(--accent-primary);border-radius:var(--radius-xs);cursor:pointer;transition:background var(--duration-hover) ease,transform 80ms ease}.btn-primary:hover{background:var(--accent-hover)}.btn-primary:active{transform:scale(.98)}.cta-secondary-link{font-family:var(--font-sans);font-size:var(--text-meta);font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--border-strong);padding-bottom:2px;transition:border-color var(--duration-hover) ease}.cta-secondary-link:hover{border-color:var(--accent-primary)}.gallery-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8)}@media(min-width:768px){.gallery-grid{grid-template-columns:repeat(12,1fr);gap:var(--space-8)}}.gallery-card{background:var(--bg-surface);border:1px solid var(--border-subtle);overflow:hidden;display:flex;flex-direction:column;transition:transform var(--duration-hover) var(--ease-editorial),border-color var(--duration-hover) ease}.gallery-card:hover,.gallery-card:focus-within{border-color:var(--border-strong);transform:translateY(-4px)}.gallery-card-trigger{display:flex;flex-direction:column;width:100%;height:100%;background:transparent;border:none;padding:0;margin:0;text-align:left;font:inherit;color:inherit;cursor:pointer;text-decoration:none}.gallery-card-trigger:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.gallery-card{min-width:0}@media(min-width:768px){.card-col-7{grid-column:span 7}.card-col-5{grid-column:span 5}.card-col-6{grid-column:span 6}}.card-media{width:100%;overflow:hidden;background:var(--bg-canvas)}.card-media img{width:100%;height:auto;display:block;object-fit:cover;transition:transform .4s var(--ease-editorial)}.gallery-card:hover .card-media img,.gallery-card-trigger:focus-visible .card-media img{transform:scale(1.02)}.card-ratio-4-5 img{aspect-ratio:4 / 5}.card-ratio-1-1 img{aspect-ratio:1 / 1}.card-ratio-16-9 img{aspect-ratio:16 / 9}.card-meta-bar{padding:var(--space-4) var(--space-6);display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid var(--border-subtle);background:var(--bg-surface)}.card-category{font-family:var(--font-sans);font-size:var(--text-mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.card-year{font-family:var(--font-mono);font-size:var(--text-mono);color:var(--accent-primary)}.card-caption{padding:0 var(--space-6) var(--space-6);background:var(--bg-surface)}.card-title{font-family:var(--font-serif);font-size:var(--text-h3);font-weight:400;color:var(--text-primary);margin-bottom:var(--space-1)}.card-desc{font-family:var(--font-sans);font-size:var(--text-meta);color:var(--text-secondary);line-height:1.5}.studio-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:center}@media(min-width:1024px){.studio-grid{grid-template-columns:6fr 6fr;gap:var(--space-16)}}.pull-quote{font-family:var(--font-serif);font-style:italic;font-size:clamp(2rem,3.8vw,3.25rem);line-height:1.15;color:var(--text-primary);letter-spacing:-.015em;margin-bottom:var(--space-8);border-left:2px solid var(--accent-primary);padding-left:var(--space-6)}.manifesto-body{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-secondary);line-height:1.75;display:flex;flex-direction:column;gap:var(--space-4)}.studio-visual-frame{border:1px solid var(--border-subtle);background:var(--bg-surface);overflow:hidden}.studio-visual-frame img{width:100%;height:auto;aspect-ratio:5 / 4;display:block;object-fit:cover}.process-list{display:grid;grid-template-columns:1fr;border-top:1px solid var(--border-subtle)}@media(min-width:768px){.process-list{grid-template-columns:repeat(3,1fr)}}.process-item{padding:var(--space-8) var(--space-6);border-bottom:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:var(--space-4)}@media(min-width:768px){.process-item{border-right:1px solid var(--border-subtle)}.process-item:last-child{border-right:none}}.process-num{font-family:var(--font-mono);font-size:var(--text-meta);font-weight:600;color:var(--accent-primary);letter-spacing:.1em}.process-name{font-family:var(--font-serif);font-size:var(--text-h2);font-weight:400;color:var(--text-primary);letter-spacing:-.01em}.process-text{font-family:var(--font-sans);font-size:var(--text-meta);color:var(--text-secondary);line-height:1.6}.featured-grid{display:grid;grid-template-columns:1fr;gap:var(--space-8);background:var(--bg-surface);border:1px solid var(--border-subtle)}@media(min-width:1024px){.featured-grid{grid-template-columns:8fr 4fr}}.featured-visual{background:#0e0906;overflow:hidden;display:flex;align-items:center;justify-content:center}.featured-visual img{width:100%;height:100%;aspect-ratio:16 / 9;object-fit:cover;display:block}.featured-rail{padding:var(--space-8) var(--space-8);display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-8);border-top:1px solid var(--border-subtle)}@media(min-width:1024px){.featured-rail{border-top:none;border-left:1px solid var(--border-subtle)}}.featured-header h3{font-family:var(--font-serif);font-size:var(--text-h2);font-weight:400;color:var(--text-primary);margin-top:var(--space-2);line-height:1.15}.specs-table{list-style:none;display:flex;flex-direction:column;border-top:1px solid var(--border-subtle)}.specs-row{display:flex;justify-content:space-between;padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);font-size:var(--text-meta)}.specs-key{color:var(--text-secondary);font-family:var(--font-sans)}.specs-val{color:var(--text-primary);font-weight:500;font-family:var(--font-sans)}.contact-section{padding:var(--space-24) 0 var(--space-16);background:var(--bg-canvas)}.contact-inner{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-8);max-width:56rem}.contact-headline{font-family:var(--font-serif);font-size:var(--text-display);font-weight:400;line-height:1.05;letter-spacing:-.02em;color:var(--text-primary)}.contact-sub{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-secondary);line-height:1.7}.contact-coordinates{display:grid;grid-template-columns:1fr;gap:var(--space-6);margin-top:var(--space-4);width:100%}@media(min-width:640px){.contact-coordinates{grid-template-columns:1fr 1fr}}.coord-block h4{font-family:var(--font-sans);font-size:var(--text-mono);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-primary);margin-bottom:var(--space-2)}.coord-block p{font-size:var(--text-meta);color:var(--text-secondary);line-height:1.6;white-space:pre-line}.footer{margin-top:var(--space-24);padding-top:var(--space-8);border-top:1px solid var(--border-subtle);display:flex;flex-direction:column;gap:var(--space-4);align-items:flex-start;justify-content:space-between}@media(min-width:768px){.footer{flex-direction:row;align-items:center}}.footer-copy{font-size:var(--text-mono);color:var(--text-secondary)}.footer-disclaimer{font-size:var(--text-mono);color:var(--accent-primary)}.back-to-top{font-size:var(--text-mono);font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);text-decoration:none;border-bottom:1px solid var(--border-strong)}.project-modal{position:fixed;top:0;right:0;bottom:0;left:0;margin:auto;max-width:900px;width:92%;max-height:90vh;border:1px solid var(--border-strong);border-radius:var(--radius-xs);background:var(--bg-canvas);color:var(--text-primary);box-shadow:0 24px 64px #00000073;overflow-y:auto;padding:0;opacity:0;transform:translateY(16px);transition:opacity var(--duration-modal) var(--ease-editorial),transform var(--duration-modal) var(--ease-editorial)}.project-modal[open]{opacity:1;transform:translateY(0)}.project-modal::backdrop{background:var(--scrim);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.modal-inner{padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-6);position:relative}.modal-close-btn{position:absolute;top:var(--space-6);right:var(--space-6);background:transparent;border:1px solid var(--border-subtle);color:var(--text-primary);width:44px;height:44px;border-radius:var(--radius-xs);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--duration-hover) ease,background var(--duration-hover) ease}.modal-close-btn:hover{border-color:var(--border-strong);background:var(--bg-surface)}.modal-media{width:100%;max-height:480px;overflow:hidden;border:1px solid var(--border-subtle);background:var(--bg-surface)}.modal-media img{width:100%;height:auto;display:block;object-fit:cover}.modal-title{font-family:var(--font-serif);font-size:var(--text-h2);font-weight:400;color:var(--text-primary)}.modal-story{font-family:var(--font-sans);font-size:var(--text-body);color:var(--text-secondary);line-height:1.7}:root{--ease-editorial: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--duration-instant: 80ms;--duration-hover: .18s;--duration-modal: .24s;--duration-reveal: .45s}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.gallery-card:hover,.gallery-card:hover .card-media img,.project-modal{transform:none!important}}
