:root{--ink:#20231f;--moss:#394637;--cream:#f1ede4;--paper:#faf8f2;--gold:#b58a59;--line:#20231f2e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}body,button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}img{width:100%;display:block}button{color:inherit}.header{z-index:20;color:#fff;border-bottom:1px solid #ffffff40;justify-content:space-between;align-items:center;height:94px;padding:0 5vw;display:flex;position:absolute;top:0;left:0;right:0}.logo{letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:12px;font-size:13px;font-weight:700;display:flex}.logo-mark{border:1px solid;place-items:center;width:34px;height:34px;font-family:Georgia,serif;font-size:19px;font-weight:400;display:grid}.nav{align-items:center;gap:38px;font-size:13px;display:flex}.nav a{padding:10px 0;position:relative}.nav a:after{content:"";background:currentColor;width:0;height:1px;transition:width .3s;position:absolute;bottom:2px;left:0}.nav a:hover:after{width:100%}.menu-button{background:0 0;border:0;width:42px;height:42px;padding:10px;display:none}.menu-button span{background:#fff;width:100%;height:1px;margin:7px 0;display:block}.hero{color:#fff;align-items:flex-end;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero>img{object-fit:cover;object-position:center 48%;height:100%;animation:1.2s both reveal;position:absolute;inset:0}.hero-shade{background:linear-gradient(90deg,#0c100bb8,#0c100b29 66%,#0c100b40),linear-gradient(#0000 50%,#0c100b7a);position:absolute;inset:0}.hero-content{z-index:2;width:68%;padding:0 5vw 9vh;position:relative}.eyebrow{color:var(--moss);letter-spacing:.2em;text-transform:uppercase;margin:0 0 30px;font-size:11px;font-weight:700}.eyebrow:before{content:"";vertical-align:middle;background:currentColor;width:42px;height:1px;margin-right:13px;display:inline-block}.eyebrow.light{color:#ffffffc7}h1,h2{letter-spacing:-.035em;margin:0;font-family:Georgia,Times New Roman,serif;font-weight:400}h1{max-width:900px;font-size:clamp(62px,8vw,124px);line-height:.87}h2{font-size:clamp(48px,6vw,86px);line-height:.96}h2 em{color:var(--gold);font-weight:400}.hero-lead{color:#ffffffd9;max-width:510px;margin:36px 0 32px;font-size:18px;line-height:1.6}.button{cursor:pointer;letter-spacing:.04em;background:0 0;border:1px solid;align-items:center;gap:55px;width:max-content;padding:18px 22px;font-size:13px;font-weight:700;transition:all .25s;display:inline-flex}.button:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.button-light{color:#fff}.button-light:hover{color:var(--ink);background:#fff;border-color:#fff}.hero-note{z-index:2;align-items:flex-start;gap:18px;display:flex;position:absolute;bottom:11vh;right:5vw}.hero-note span{color:var(--gold);font:italic 28px Georgia,serif}.hero-note p{text-transform:uppercase;letter-spacing:.08em;border-left:1px solid #fff6;margin:2px 0 0;padding-left:18px;font-size:12px;line-height:1.6}.scroll{z-index:2;letter-spacing:.14em;text-transform:uppercase;gap:20px;font-size:11px;display:flex;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.section{padding:140px 8vw}.intro{grid-template-columns:1.1fr .9fr;gap:11vw;display:grid}.intro-copy{padding-top:58px}.intro-copy>p{margin:0 0 24px;font-family:Georgia,serif;font-size:20px;line-height:1.65}.intro-copy>p+p{color:#66685f;font-family:Arial,sans-serif;font-size:15px}.stats{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:20px;margin-top:55px;padding-top:30px;display:grid}.stats strong{color:var(--gold);font:40px Georgia,serif;display:block}.stats span{text-transform:uppercase;letter-spacing:.08em;margin-top:8px;font-size:11px;line-height:1.4;display:block}.feature-image{height:min(78vw,850px);margin:0 3vw;position:relative;overflow:hidden}.feature-image img{object-fit:cover;object-position:center 58%;height:100%}.feature-caption{background:var(--paper);min-width:340px;padding:28px 36px;position:absolute;bottom:0;right:0}.feature-caption span{color:#777;letter-spacing:.15em;text-transform:uppercase;font-size:10px}.feature-caption p{margin:8px 0 0;font:17px Georgia,serif}.services{background:var(--cream)}.section-head{justify-content:space-between;align-items:flex-end;margin-bottom:90px;display:flex}.service-list{border-top:1px solid var(--line)}.service{border-bottom:1px solid var(--line);grid-template-columns:.35fr 1fr 1.4fr auto;align-items:center;gap:35px;min-height:160px;transition:padding .3s,background .3s;display:grid}.service:hover{background:#ffffff73;padding:0 24px}.service>span{color:var(--gold);font:italic 17px Georgia,serif}.service h3{margin:0;font:400 32px Georgia,serif}.service p{color:#686a62;max-width:500px;margin:0;font-size:14px;line-height:1.7}.service>span:last-child{font-size:22px}.detail-story{background:var(--moss);color:#fff;grid-template-columns:1fr 1fr;min-height:840px;display:grid}.detail-copy{align-self:center;padding:10vw}.detail-copy h2 em{color:#d8b585}.detail-copy>p:last-child{color:#ffffffb3;max-width:500px;margin:42px 0 0;font-size:15px;line-height:1.8}.detail-photo{margin:4vw 4vw 4vw 0;overflow:hidden}.detail-photo img{object-fit:cover;height:100%}.gallery{background:var(--paper)}.gallery-head>p{color:#6d6e67;max-width:360px;margin:0 0 8px;font-size:14px;line-height:1.7}.gallery-grid{grid-template-columns:repeat(12,1fr);align-items:start;gap:16px;display:grid}.gallery-item{cursor:zoom-in;background:#ddd;border:0;grid-column:span 4;height:520px;padding:0;position:relative;overflow:hidden}.gallery-item.wide{grid-column:span 8;height:620px}.gallery-item img{object-fit:cover;height:100%;transition:transform .7s}.gallery-item:hover img{transform:scale(1.035)}.gallery-item span{background:#faf8f2eb;place-items:center;width:38px;height:38px;font:12px Georgia,serif;display:grid;position:absolute;bottom:16px;left:16px}.process{background:#e8e2d6}.process-grid{grid-template-columns:.8fr 1.2fr;gap:11vw;display:grid}.process ol{margin:0;padding:0;list-style:none}.process li{border-top:1px solid var(--line);grid-template-columns:80px 1fr;padding:28px 0;display:grid}.process li:last-child{border-bottom:1px solid var(--line)}.process li>span{color:var(--gold);font:italic 16px Georgia,serif}.process h3{margin:0 0 10px;font:400 25px Georgia,serif}.process li p{color:#66685f;margin:0;font-size:14px;line-height:1.6}.contact{color:#fff;place-items:center;min-height:900px;display:grid;position:relative;overflow:hidden}.contact-bg{position:absolute;inset:0}.contact-bg img{object-fit:cover;object-position:center 45%;filter:brightness(.33);height:100%}.contact-inner{z-index:1;grid-template-columns:1fr .72fr;align-items:center;gap:11vw;width:min(1220px,84vw);display:grid;position:relative}.contact h2 em{color:#d8b585}.contact-lead{color:#ffffffb8;max-width:470px;margin:40px 0 0;line-height:1.7}.contact form{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#14181340;border:1px solid #ffffff59;padding:45px}.contact label{margin-bottom:26px;display:block}.contact label span{color:#ffffff9e;letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px;font-size:10px;display:block}.contact input,.contact textarea{color:#fff;resize:vertical;background:0 0;border:0;border-bottom:1px solid #fff6;outline:0;width:100%;padding:12px 0}.contact input:focus,.contact textarea:focus{border-color:#fff}.contact input::placeholder,.contact textarea::placeholder{color:#ffffff8c}.contact small{color:#ffffff7a;margin-top:18px;font-size:10px;display:block}.form-success{color:#263122;background:#e7ecd9;margin:18px 0 0;padding:13px;font-size:12px;line-height:1.5}.form-error{color:#5f1e18;background:#f6ded8}.hp{opacity:0!important;width:1px!important;height:1px!important;position:absolute!important;left:-9999px!important}footer{color:#e9e5dc;background:#1e241d;grid-template-columns:1.2fr 1.4fr 1fr auto;align-items:center;gap:30px;min-height:250px;padding:55px 7vw;display:grid}footer p{color:#ffffff8c;font-size:12px;line-height:1.7}footer div{gap:26px;font-size:12px;display:flex}footer>span{color:#fff6;font-size:11px}.lightbox{z-index:100;color:#fff;background:#0d0f0cf5;place-items:center;padding:70px 9vw;display:grid;position:fixed;inset:0}.lightbox img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(100vh - 150px)}.lightbox p{margin:0;font:14px Georgia,serif;position:absolute;bottom:24px;left:5vw}.lightbox p span{color:#ffffff80;margin-left:20px}.lightbox button{color:#fff;cursor:pointer;background:0 0;border:0;position:absolute}.close{font-size:38px;font-weight:200;top:25px;right:5vw}.prev,.next{padding:25px;font-size:28px;top:50%;transform:translateY(-50%)}.prev{left:2vw}.next{right:2vw}@keyframes reveal{0%{opacity:0;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@media (width<=900px){.header{height:76px}.menu-button{z-index:22;display:block;position:relative}.nav{visibility:hidden;opacity:0;color:#fff;background:var(--moss);flex-direction:column;justify-content:center;gap:28px;transition:all .25s;display:flex;position:fixed;inset:0}.nav.open{visibility:visible;opacity:1}.nav a{font:34px Georgia,serif}.hero-content{width:100%;padding-bottom:15vh}.hero-note,.scroll{display:none}.section{padding:90px 6vw}.intro,.process-grid,.contact-inner{grid-template-columns:1fr;gap:60px}.intro-copy{padding-top:0}.detail-story{grid-template-columns:1fr}.detail-copy{padding:90px 7vw}.detail-photo{height:620px;margin:0 6vw 70px}.service{grid-template-columns:55px 1fr auto;padding:28px 0}.service p{grid-column:2/4}.section-head{flex-direction:column;align-items:flex-start;gap:30px}.gallery-item,.gallery-item.wide{grid-column:span 6;height:520px}.contact{padding:90px 0}footer{grid-template-columns:1fr 1fr}}@media (width<=580px){h1{font-size:54px}h2{font-size:43px}.hero-content{padding-left:6vw;padding-right:6vw}.hero-lead{font-size:16px}.eyebrow{margin-bottom:22px}.intro{gap:40px}.stats{gap:12px}.stats strong{font-size:30px}.stats span{font-size:9px}.feature-image{height:72vh;margin:0}.feature-caption{min-width:0;padding:22px;left:0;right:auto}.service{grid-template-columns:40px 1fr auto;gap:16px}.service h3{font-size:25px}.detail-story{min-height:auto}.detail-photo{height:520px}.gallery-grid{gap:8px}.gallery-item,.gallery-item.wide{grid-column:span 12;height:72vh}.process li{grid-template-columns:50px 1fr}.contact-inner{width:88vw}.contact form{padding:28px 22px}footer{grid-template-columns:1fr;padding:55px 7vw}footer div{flex-wrap:wrap}.lightbox{padding:65px 5vw}.prev,.next{top:auto;bottom:13px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
