:root{--ink:#1b1b19;--paper:#f3f1eb;--white:#fff;--stone:#77756f;--line:#d8d4ca;--bronze:#8b6747;--max:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font:400 1rem/1.65 Arial,Helvetica,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.wrap{width:min(calc(100% - 40px),var(--max));margin:auto}.site-header{position:absolute;z-index:20;top:0;left:0;right:0;color:#fff;border-bottom:1px solid #ffffff55}.nav{height:92px;display:flex;align-items:center;justify-content:space-between}.brand{font:700 1.08rem/1 Arial;letter-spacing:.1em}.brand span{display:block;font-size:.62rem;font-weight:400;letter-spacing:.28em;margin-top:7px}.nav-links{display:flex;gap:30px;align-items:center;font-size:.81rem;letter-spacing:.08em;text-transform:uppercase}.nav-links a{padding:10px 0}.nav-links .nav-cta{border:1px solid #fff;padding:11px 17px}.menu{display:none;border:0;background:none;color:inherit;font-size:1.4rem}.hero{min-height:790px;display:grid;align-items:end;position:relative;color:#fff;background:url('../img/PHOTO-2026-09-25-12-12-47%208.jpg') center/cover no-repeat}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#111c 0%,#1118 38%,#1111 75%),linear-gradient(0deg,#1118,transparent 50%)}.hero-inner{position:relative;padding:200px 0 100px}.eyebrow{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase}.hero h1,.page-hero h1,.display{font:400 clamp(3.3rem,7vw,7.5rem)/.93 Georgia,serif;letter-spacing:-.055em;margin:.25em 0}.hero p{max-width:610px;font-size:1.14rem}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-block;padding:13px 19px;border:1px solid currentColor;font-size:.76rem;letter-spacing:.12em;text-transform:uppercase}.btn.solid{background:#fff;color:#1b1b19;border-color:#fff}.section{padding:110px 0}.section.white{background:#fff}.section.dark{background:#1e1f1d;color:#fff}.intro-grid,.split{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.kicker{color:var(--bronze);letter-spacing:.18em;text-transform:uppercase;font-size:.73rem}.title{font:400 clamp(2.3rem,4vw,4.5rem)/1.03 Georgia,serif;letter-spacing:-.04em;margin:.2em 0 .55em}.lead{font-size:1.12rem;color:#52514d}.facts{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin-top:70px}.fact{padding:28px 24px 0 0}.fact strong{display:block;font:400 2.6rem Georgia,serif}.fact span{color:#696761;font-size:.87rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#3c3c38;border:1px solid #3c3c38;margin-top:55px}.service{padding:38px;background:#242522;min-height:240px}.service .number{color:#a58b70;font-size:.75rem}.service h3{font:400 1.6rem Georgia,serif;margin:32px 0 12px}.service p{color:#c4c2ba;font-size:.94rem}.project-grid{display:grid;grid-template-columns:1.35fr .9fr;gap:25px;margin-top:55px}.project{position:relative;overflow:hidden;background:#ddd}.project img{width:100%;height:540px;object-fit:cover;transition:transform .6s}.project:nth-child(2) img{height:540px}.project:hover img{transform:scale(1.025)}.project-copy{position:absolute;inset:auto 0 0;padding:30px;color:white;background:linear-gradient(transparent,#000b)}.project-copy h3{font:400 1.7rem Georgia,serif;margin:6px 0}.project-copy span{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:240px;gap:12px;margin-top:55px}.gallery img{width:100%;height:100%;object-fit:cover}.gallery img:first-child{grid-column:span 2;grid-row:span 2}.process{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:55px}.step{border-top:1px solid var(--line);padding-top:20px}.step:before{counter-increment:step;content:"0" counter(step);color:var(--bronze);font-size:.72rem}.step h3{font:400 1.35rem Georgia,serif}.cta{padding:90px 0;background:#b49b80;color:#171714}.cta .wrap{display:flex;justify-content:space-between;align-items:end;gap:35px}.cta h2{font:400 clamp(2.5rem,5vw,5rem)/1 Georgia,serif;letter-spacing:-.04em;margin:0;max-width:770px}.footer{background:#151614;color:#ddd;padding:70px 0 30px}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px}.footer h3{font:400 1.6rem Georgia,serif;color:#fff}.footer p,.footer a{color:#aaa}.footer-links{display:grid;gap:8px}.legal{border-top:1px solid #333;margin-top:55px;padding-top:22px;color:#777;font-size:.8rem}.page-header{position:relative;background:#171816;color:#fff}.page-header .site-header{position:relative}.page-hero{padding:90px 0 100px}.page-hero h1{font-size:clamp(3.5rem,7vw,7rem)}.content-grid{display:grid;grid-template-columns:300px 1fr;gap:70px}.content-grid h2{font:400 2.4rem Georgia,serif;margin-top:0}.list{list-style:none;padding:0;margin:0}.list li{padding:16px 0;border-bottom:1px solid var(--line)}.project-list{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.project-card{background:#fff}.project-card img{width:100%;height:360px;object-fit:cover}.project-card div{padding:24px}.project-card h2{font:400 1.7rem Georgia,serif;margin:0 0 8px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-item{padding:25px 0;border-bottom:1px solid var(--line)}.contact-item small{display:block;text-transform:uppercase;letter-spacing:.14em;color:#777}.contact-item a,.contact-item span{font:400 1.25rem Georgia,serif}.mobile-only{display:none}
@media(max-width:850px){.wrap{width:min(calc(100% - 28px),var(--max))}.site-header{position:absolute}.nav{height:76px}.menu{display:block}.nav-links{display:none;position:absolute;top:76px;left:0;right:0;background:#171816;padding:24px 20px;flex-direction:column;align-items:flex-start}.nav-links.open{display:flex}.hero{min-height:710px}.hero-inner{padding:170px 0 75px}.hero h1{font-size:clamp(3.3rem,16vw,5.8rem)}.section{padding:75px 0}.intro-grid,.split,.content-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.facts{grid-template-columns:1fr}.service-grid,.process{grid-template-columns:1fr}.service{min-height:0}.project-grid,.project-list{grid-template-columns:1fr}.project img,.project:nth-child(2) img,.project-card img{height:390px}.gallery{grid-template-columns:1fr 1fr;grid-auto-rows:180px}.gallery img:first-child{grid-column:span 2}.cta .wrap{display:block}.cta .btn{margin-top:30px}.footer-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:430px){.hero{background-position:60% center}.project img,.project:nth-child(2) img{height:340px}.gallery{grid-auto-rows:145px}.page-hero{padding:65px 0}.actions{display:grid}.btn{text-align:center}.footer{padding-top:55px}}
.portfolio-header{background:#171816}.portfolio-hero{display:grid;grid-template-columns:.85fr 1.15fr;align-items:end;gap:7vw;padding:72px 0 0}.portfolio-hero>div{padding:65px 0 80px}.portfolio-hero h1{font:400 clamp(3.3rem,7vw,7rem)/.93 Georgia,serif;letter-spacing:-.055em;margin:.25em 0}.portfolio-hero p{max-width:500px;color:#c8c7c0;font-size:1.06rem}.portfolio-hero img{width:100%;height:550px;object-fit:cover}.portfolio-nav{position:sticky;top:0;z-index:15;background:#f3f1ebef;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.portfolio-nav-inner{display:flex;gap:32px;overflow-x:auto;scrollbar-width:none}.portfolio-nav-inner::-webkit-scrollbar{display:none}.portfolio-nav a{flex:0 0 auto;padding:20px 0 17px;border-bottom:2px solid transparent;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.portfolio-nav a:hover{border-color:var(--bronze)}.portfolio-intro{padding-bottom:80px}.work-category{scroll-margin-top:60px}.category-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:10vw;align-items:end;margin-bottom:42px}.category-heading h2{font:400 clamp(2.5rem,5vw,5.2rem)/.98 Georgia,serif;letter-spacing:-.045em;margin:.18em 0 0}.category-heading p{color:#66645e;font-size:1.04rem}.dark .category-heading p{color:#c4c2ba}.category-number{display:inline-block;margin-right:18px;color:#aaa69c;font-size:.72rem}.text-link{display:inline-block;margin-top:12px;padding-bottom:3px;border-bottom:1px solid currentColor;color:var(--bronze);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.portfolio-mosaic{display:grid;grid-template-columns:1.25fr .75fr 1fr;grid-template-rows:320px 280px;gap:12px}.portfolio-mosaic.reverse{grid-template-columns:.75fr 1.25fr 1fr}.portfolio-shot{position:relative;display:block;overflow:hidden;background:#d8d4ca}.portfolio-shot.wide{grid-column:span 2}.portfolio-shot.tall{grid-row:span 2}.portfolio-shot img{width:100%;height:100%;object-fit:cover;transition:transform .6s,filter .4s}.portfolio-shot span{position:absolute;left:0;right:0;bottom:0;padding:34px 18px 14px;color:#fff;background:linear-gradient(transparent,#000b);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.portfolio-shot:hover img{transform:scale(1.025);filter:brightness(.92)}.progress-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.progress-gallery .portfolio-shot{height:390px}.dark .portfolio-shot{background:#333}.lightbox{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:35px;background:#090a09ed}.lightbox.open{display:flex}.lightbox img{max-width:min(1400px,94vw);max-height:88vh;object-fit:contain}.lightbox-close{position:absolute;top:18px;right:22px;width:46px;height:46px;border:1px solid #ffffff66;background:#1118;color:#fff;font-size:1.8rem;cursor:pointer}.lightbox-caption{position:absolute;left:24px;bottom:15px;color:#fff;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:850px){.portfolio-hero{grid-template-columns:1fr;padding-top:110px}.portfolio-hero>div{padding:30px 0 18px}.portfolio-hero h1{font-size:clamp(3.3rem,15vw,5.8rem)}.portfolio-hero img{height:430px}.portfolio-nav-inner{gap:24px}.portfolio-nav a{padding:16px 0 13px}.category-heading{grid-template-columns:1fr;gap:14px}.portfolio-mosaic,.portfolio-mosaic.reverse{grid-template-columns:1fr 1fr;grid-template-rows:330px 240px 240px}.portfolio-shot.wide{grid-column:span 2}.portfolio-shot.tall{grid-row:auto}.progress-gallery{grid-template-columns:1fr 1fr}.progress-gallery .portfolio-shot{height:300px}}
@media(max-width:520px){.portfolio-hero img{height:330px}.portfolio-intro{padding-bottom:55px}.category-heading{margin-bottom:28px}.portfolio-mosaic,.portfolio-mosaic.reverse{display:grid;grid-template-columns:1fr;grid-template-rows:none}.portfolio-shot,.portfolio-shot.wide,.portfolio-shot.tall{grid-column:auto;grid-row:auto;height:270px}.portfolio-shot:first-child{height:360px}.progress-gallery{grid-template-columns:1fr}.progress-gallery .portfolio-shot{height:270px}.lightbox{padding:16px}.lightbox-caption{display:none}}
