:root{--ink:#17130f;--muted:#756d63;--paper:#f5f0e8;--paper-2:#ebe2d5;--line:#17130f29;--accent:#8e3f26;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.site-header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f5f0e8e0;justify-content:space-between;align-items:center;gap:24px;padding:18px clamp(18px,4vw,58px);display:flex;position:sticky;top:0}.brand{letter-spacing:-.04em;font-family:Georgia,serif;font-size:clamp(21px,2.4vw,30px)}.site-header nav{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:clamp(14px,2vw,30px);font-size:12px;display:flex}.site-header nav a:hover,.back-link:hover{color:var(--accent)}.nav-dropdown{padding:14px 0;position:relative}.dropdown-panel{border:1px solid var(--line);opacity:0;visibility:hidden;background:#f5f0e8f7;min-width:230px;padding:12px;transition:all .18s;position:absolute;top:100%;left:50%;transform:translate(-50%)translateY(8px);box-shadow:0 18px 46px #17130f1f}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.dropdown-panel a{white-space:nowrap;padding:10px 12px;display:block}.dropdown-group{position:relative}.dropdown-group>a:after{content:"⌄";float:right;margin-left:18px}.dropdown-subpanel{border-left:1px solid var(--line);opacity:0;visibility:hidden;background:0 0;min-width:0;max-height:0;margin-left:10px;padding:0 0 0 12px;transition:max-height .18s,opacity .18s;position:static;overflow:hidden;transform:none}.dropdown-subpanel a{padding:8px 12px;font-size:11px}.dropdown-group:hover .dropdown-subpanel,.dropdown-group:focus-within .dropdown-subpanel{opacity:1;visibility:visible;max-height:180px}.hero{grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);align-items:center;gap:clamp(24px,5vw,64px);min-height:calc(100vh - 72px);padding:clamp(28px,5vw,66px) clamp(18px,5vw,72px);display:grid}.hero-copy{max-width:680px}.hero-copy h1{margin-bottom:28px}.hero-copy p{margin:0 0 18px}.eyebrow{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700}h1,h2,h3{letter-spacing:-.055em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:.96}h1{font-size:clamp(52px,8.5vw,124px)}h2{font-size:clamp(30px,5vw,64px)}h3{font-size:clamp(24px,3vw,38px)}p{color:var(--muted);font-size:clamp(16px,1.5vw,19px);line-height:1.75}.hero img{object-fit:cover;filter:saturate(.95)contrast(1.02);width:100%;height:min(72vh,680px)}.hero-portrait{aspect-ratio:4/5;object-position:center bottom;object-fit:contain!important}.section{border-top:1px solid var(--line);padding:clamp(52px,8vw,104px) clamp(18px,5vw,72px)}.section-title{max-width:780px;margin-bottom:clamp(28px,4vw,48px)}.featured-project{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,.95fr) minmax(300px,.9fr);align-items:center;gap:clamp(28px,5vw,64px);width:min(100%,1120px);margin:0 auto clamp(54px,8vw,96px);padding-bottom:clamp(42px,6vw,72px);display:grid}.featured-project img,.featured-project .image-placeholder{object-fit:contain;background:var(--paper-2);width:100%;height:360px}.featured-project h2{margin:10px 0 14px}.featured-project>div>p:not(.eyebrow){margin:0 0 18px}.featured-summary{max-width:560px;font-size:16px;line-height:1.65}.featured-project span{border:1px solid var(--ink);letter-spacing:.1em;text-transform:uppercase;padding:12px 18px;font-size:12px;font-weight:700;display:inline-block}.image-placeholder{min-height:260px;color:var(--muted);letter-spacing:.14em;text-transform:uppercase;background:linear-gradient(135deg,#ddd5c9,#f5f0e8);border:1px dashed #17130f52;place-items:center;font-size:12px;display:grid}.about{grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr);align-items:center;gap:clamp(30px,6vw,92px);display:grid}.about img{object-fit:cover;width:100%;max-height:720px}.about div{max-width:820px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(24px,3vw,38px);width:min(100%,1120px);display:grid}.project-card{display:block}.project-card:nth-child(2n){margin-top:0}.project-card img{object-fit:contain;object-position:left top;width:100%;height:330px;transition:transform .5s,filter .5s}.project-card .image-placeholder{height:330px}.project-card:hover img{filter:contrast(1.06)saturate(.95);transform:translateY(-6px)}.project-card div{border-top:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:18px;margin-top:18px;padding-top:18px;display:flex}.project-card p{text-transform:uppercase;letter-spacing:.14em;margin:0;font-size:12px}.work-list>div{background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.work-list .section-title{max-width:none}.work-list .section-title h2{white-space:nowrap;font-size:clamp(30px,4.2vw,58px)}.work-list a{background:var(--paper);justify-content:space-between;gap:20px;padding:17px 20px;font-family:Georgia,serif;font-size:clamp(18px,2vw,27px);display:flex}.work-list span{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;font-family:inherit;font-size:13px}.contact-panel{background:var(--paper-2);grid-template-columns:1fr 1fr 1.4fr 160px;gap:24px;padding:clamp(24px,4vw,46px);display:grid}.contact-panel strong{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px;font-size:12px;display:block}.contact-panel a{color:var(--ink);margin-bottom:8px;display:block}.contact-qr{align-self:start;width:140px;display:block}.contact-qr svg{width:100%;height:auto;display:block}.contact-qr-wrap{align-self:start}.contact-qr-wrap>a:first-child{margin-bottom:12px;font-size:14px;text-decoration:underline}.project-page{padding-bottom:90px}.project-hero{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(28px,5vw,66px);padding:clamp(38px,6vw,78px) clamp(18px,5vw,72px);display:grid}.project-hero h1{margin:18px 0 24px;font-size:clamp(46px,7vw,96px)}.project-hero img,.project-hero .image-placeholder{object-fit:cover;width:100%;min-height:360px;max-height:68vh}.back-link{background:var(--ink);color:var(--paper);letter-spacing:.02em;text-transform:none;border-radius:2px;margin-bottom:34px;padding:10px 15px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:13px;font-weight:700;display:inline-block}.back-link:hover{background:var(--accent);color:var(--paper)}.video-wrap{aspect-ratio:16/9;background:#111;width:min(1100px,100% - 36px);margin:0 auto clamp(50px,8vw,110px)}.video-wrap iframe{border:0;width:100%;height:100%}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:28px 30px;width:min(100% - 36px,1120px);margin:0 auto;display:grid}.gallery-item{min-width:0}.gallery-item button{border:1px solid var(--line);cursor:zoom-in;background:#e9e2d8;width:100%;height:350px;padding:6px;display:block}.gallery-item img{object-fit:contain;width:100%;height:100%}.gallery-caption{padding-top:12px}.gallery-caption h3{letter-spacing:-.03em;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:24px;line-height:1.15}.gallery-caption p{margin:4px 0 0;font-size:14px;line-height:1.4}.gallery-group-title{grid-column:1/-1;margin:26px 0 0;font-size:clamp(34px,4vw,52px)}.lightbox{z-index:50;place-items:center;padding:24px;display:grid;position:fixed;inset:0;cursor:zoom-out!important;background:#0d0b09eb!important}.lightbox img{object-fit:contain;max-width:92vw;max-height:92vh}.next-project{text-align:right;padding:60px clamp(18px,5vw,72px) 0;font-family:Georgia,serif;font-size:clamp(24px,4vw,46px)}.links-page{place-items:center;min-height:calc(100vh - 150px);padding:clamp(48px,8vw,96px) 18px;display:grid}.links-card{text-align:center;width:min(100%,500px)}.links-card>img{object-fit:cover;object-position:center top;border-radius:50%;width:140px;height:140px;margin:0 auto 24px}.links-card h1{font-size:clamp(48px,8vw,80px)}.links-card>p:not(.eyebrow){margin:18px auto 34px;font-size:16px}.links-list{gap:10px;display:grid}.links-list a{border:1px solid var(--line);text-align:left;justify-content:space-between;align-items:center;padding:17px 20px;font-family:Georgia,serif;font-size:24px;transition:background .18s,color .18s;display:flex}.links-list a:hover{background:var(--ink);color:var(--paper)}.links-list span{color:var(--accent);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:17px}footer{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding:28px clamp(18px,5vw,72px);display:flex}footer p{margin:0;font-size:14px}@media (width<=900px){.hero,.about,.project-hero,.contact-panel{grid-template-columns:1fr}.hero-copy{padding-bottom:0}.hero img,.project-hero img{height:auto;max-height:none}.work-list>div,.project-grid,.featured-project{grid-template-columns:1fr}.work-list .section-title h2{white-space:normal}.project-card:nth-child(2n){margin-top:0}.project-grid{width:min(100%,620px)}.project-card img,.project-card .image-placeholder{height:300px}.featured-project img,.featured-project .image-placeholder{height:320px}.gallery{grid-template-columns:1fr;gap:24px}.gallery-item button{height:320px}}@media (width<=640px){.site-header{flex-direction:column;align-items:flex-start}.site-header nav{justify-content:space-between;gap:10px;width:100%;font-size:11px}.dropdown-panel{left:0;transform:translateY(8px)}.nav-dropdown:hover .dropdown-panel,.nav-dropdown:focus-within .dropdown-panel{transform:translateY(0)}.dropdown-subpanel{min-width:0;box-shadow:none;border-left:1px solid var(--line);opacity:1;visibility:visible;background:0 0;border-top:0;border-bottom:0;border-right:0;margin:4px 0 8px 12px;padding:4px 0 4px 10px;position:static;transform:none}h1{font-size:clamp(56px,18vw,92px)}.hero{min-height:auto}.hero-portrait{max-height:470px}.project-card img,.project-card .image-placeholder{height:240px}.featured-project img,.featured-project .image-placeholder{height:230px}.featured-summary{font-size:15px}.gallery-item button{height:250px}.gallery-caption h3{font-size:21px}.contact-qr{width:130px}footer{flex-direction:column}}
