:root{--ink:#272a28;--muted:#686a66;--paper:#f7f4ed;--cream:#eee9df;--gold:#b89a72;--gold-dark:#987e5a;--line:#dcd7cd;--white:#fff;--font-head:'EB Garamond',Georgia,serif;--font-body:'Lato',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}img{width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-head);font-weight:400;line-height:1.06}h1{font-size:clamp(3.4rem,7vw,7.8rem)}h2{font-size:clamp(2.7rem,4.5vw,5rem)}h3{font-size:clamp(1.65rem,2.8vw,2.5rem)}em{font-weight:400;color:var(--gold-dark)}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}button,input,textarea,select{font:inherit}p{max-width:66ch}.container{width:min(100% - 8vw,1320px);margin-inline:auto}.narrow{max-width:840px}.eyebrow{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.24em;font-weight:700;font-size:.68rem;color:var(--gold-dark);margin-bottom:26px}.site-header{position:relative;background:var(--paper);z-index:30;border-bottom:1px solid rgba(40,40,40,.11)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:96px;gap:30px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand-icon{width:46px;height:46px;color:var(--gold-dark)}.brand-icon svg{width:100%;height:100%}.brand-word{display:flex;flex-direction:column;gap:1px}.brand-word strong{font-family:var(--font-head);font-size:1.8rem;font-weight:500;letter-spacing:.105em;line-height:1}.brand-word small{font-size:.48rem;letter-spacing:.29em;font-weight:700}.nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,26px)}.nav>a:not(.nav-contact){font-size:.75rem;text-transform:uppercase;letter-spacing:.085em;font-weight:700;padding:10px 0;white-space:nowrap}.nav>a[aria-current=page]:not(.nav-contact){color:var(--gold-dark)}.nav-contact{background:var(--ink);color:var(--paper);font-size:.73rem;font-weight:700;letter-spacing:.05em;padding:15px 18px;white-space:nowrap;transition:background .2s}.nav-contact:hover{background:var(--gold-dark)}.nav-contact span{margin-left:9px}.nav-toggle{display:none}.hero{position:relative;min-height:650px;height:min(78vh,840px);display:flex;align-items:center;overflow:hidden;background:#363732;color:var(--paper)}.hero-visual,.hero-shadow{position:absolute;inset:0}.hero-visual img{height:100%;object-fit:cover;object-position:70% 55%}.hero-shadow{background:linear-gradient(90deg,rgba(16,20,18,.92) 0%,rgba(21,24,22,.86) 35%,rgba(21,24,22,.4) 67%,rgba(21,24,22,.02) 100%)}.hero-content{position:relative;z-index:1;padding:70px 0 95px}.hero .eyebrow{color:#d4b58a}.hero h1{line-height:.94;max-width:720px;margin-bottom:30px}.hero h1 em{color:#ddc5a5}.hero p:not(.eyebrow){font-size:1.12rem;max-width:520px;color:#e6e1d9;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:17px 24px;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.13em;font-weight:700;font-size:.69rem;border:1px solid transparent;transition:background .2s,transform .2s,color .2s;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#171a18}.btn-gold:hover{background:#d3b994}.btn-outline{border-color:rgba(249,247,243,.8);color:var(--paper)}.btn-outline:hover{background:rgba(255,255,255,.15)}.hero-bottom{position:absolute;bottom:0;width:100%;z-index:2;border-top:1px solid rgba(255,255,255,.23);padding:19px 0;color:#ded8cd;font-size:.62rem;letter-spacing:.2em}.hero-bottom .container{display:flex;justify-content:space-between}.proof{background:#e6dfd3;padding:28px 0 25px}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}.proof-grid>div{padding:10px 30px;border-left:1px solid #d4c8b7;display:flex;flex-direction:column;gap:3px}.proof-grid>div:first-child{border-left:0;padding-left:0}.proof strong{font-family:var(--font-head);font-weight:500;font-size:2.1rem;line-height:1}.proof span{font-size:.73rem;color:#53534d}.proof-footnote{font-size:.64rem;color:#6e6a62;opacity:.9;margin:12px auto 0;max-width:none}.section{padding:clamp(74px,9vw,135px) 0}.section-warm{background:#ece7dd}.cols-2{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.intro-layout h2{max-width:650px}.intro-layout p{color:#5f625f}.body-large{font-size:1.23rem;line-height:1.7;color:#3f4540}.text-link{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid var(--gold-dark);padding-bottom:6px;letter-spacing:.08em;font-size:.74rem;text-transform:uppercase;font-weight:700;margin-top:15px}.text-link:hover{color:var(--gold-dark)}.section-heading{margin:0 0 50px;max-width:800px}.section-heading p:not(.eyebrow){color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cfc7bb;border-left:1px solid #cfc7bb}.service-card{padding:39px 29px 80px;border-right:1px solid #cfc7bb;border-bottom:1px solid #cfc7bb;position:relative;min-height:355px;transition:background .25s}.service-card:hover{background:#f7f4ed}.service-card>span{font-size:.82rem;font-family:var(--font-head);color:var(--gold-dark)}.service-card h3{font-size:2.15rem;margin:44px 0 19px}.service-card p{font-size:.85rem;color:#73746f}.service-card i{position:absolute;bottom:27px;right:27px;font-style:normal;color:var(--gold-dark);font-size:1.6rem}.section-heading-flex{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:50px}.section-heading-flex h2{margin:0}.section-heading-flex .text-link{margin-bottom:13px;flex-shrink:0}.project-grid{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:repeat(2,minmax(330px,1fr));gap:22px}.project-feature{grid-row:span 2}.project-half{min-height:345px}.project-feature,.project-half{position:relative;display:block;overflow:hidden;background:#393a36;color:white}.project-img{position:absolute;inset:0}.project-img img{height:100%;object-fit:cover;transition:transform .6s}.project-grid a:hover img{transform:scale(1.045)}.project-grid a:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.83),transparent 65%)}.project-meta{position:absolute;z-index:1;left:38px;right:28px;bottom:34px}.project-meta span{font-size:.67rem;letter-spacing:.18em;color:#d9c2a4;font-weight:700}.project-meta h3{font-size:2.7rem;margin:12px 0 4px}.project-meta p{font-size:.75rem;color:#ddd}.project-note{margin-top:22px;color:var(--muted);font-size:.74rem;max-width:920px}.split-story{display:grid;grid-template-columns:1fr 1fr;min-height:640px;background:var(--ink);color:var(--paper)}.story-image{min-height:600px}.story-image img{height:100%;object-fit:cover}.story-body{padding:clamp(65px,8vw,125px);align-self:center}.story-body h2{font-size:clamp(2.8rem,4.1vw,5rem)}.story-body p{color:#d9d7d0}.story-body .text-link{color:#d2ba91}.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.step-grid>div{border-top:1px solid #a9a89f;padding-top:22px}.step-grid b{font-family:var(--font-head);color:var(--gold-dark);font-size:1.9rem;font-weight:400}.step-grid h3{font-size:2rem;margin:30px 0 15px}.step-grid p{color:var(--muted);font-size:.86rem}.cta-section{background:#282b29;color:#f7f4ed;padding:92px 0;text-align:center}.cta-inner{display:flex;flex-direction:column;align-items:center}.cta-inner .eyebrow{color:#d1b895}.cta-inner h2{max-width:900px;margin:0 auto 20px}.cta-inner p{color:#dbd6cc;margin-bottom:28px}.site-footer{background:#202321;color:#f5f0e7;padding:65px 0 24px;border-top:1px solid #3b403d}.footer-top{display:grid;grid-template-columns:2fr 1fr 1.3fr;gap:70px}.footer-name{font-family:var(--font-head);font-size:2.3rem;letter-spacing:.16em}.footer-name span{color:var(--gold)}.site-footer p{color:#b9bcb7;font-size:.84rem}.footer-tag{color:var(--gold)!important;letter-spacing:.21em;font-size:.76rem!important}.footer-top>div:not(:first-child){display:flex;flex-direction:column;align-items:start;gap:9px}.footer-top b{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:12px;color:var(--gold)}.footer-top a{font-size:.83rem;color:#d2d4ce}.footer-top a:hover,.footer-bottom a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #3b403d;padding-top:23px;margin-top:65px;font-size:.68rem;color:#8d938d}.inside-head{background:#e7e2d9}.inside-grid{min-height:510px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:6vw}.inside-copy{padding:80px 0}.inside-copy h1,.inside-head h1{font-size:clamp(3rem,5.1vw,6rem);margin-bottom:25px}.inside-copy .lead{font-size:1.14rem;color:#616760;max-width:660px}.inside-media{height:510px;align-self:stretch;margin-right:calc((min(100vw - 8vw,1320px) - 100vw + 8vw) / 2)}.inside-media img{height:100%;object-fit:cover}.inside-head>.container.narrow{padding-block:90px}.inside-head>.container.narrow h1{font-size:5rem}.service-detail-grid{display:grid;grid-template-columns:1fr .95fr;gap:9vw;align-items:center}.service-detail:nth-of-type(odd){background:#efeae1}.service-detail:nth-of-type(even) .service-detail-copy{order:2}.service-detail:nth-of-type(even) .service-detail-photo{order:1}.service-detail-copy h2{font-size:clamp(2.75rem,4vw,4.3rem)}.service-detail-photo{height:570px}.service-detail-photo img{width:100%;height:100%;object-fit:cover}.check-list{list-style:none;padding:0;margin:30px 0}.check-list li{padding:11px 0 11px 22px;position:relative;border-bottom:1px solid var(--line);font-size:.89rem}.check-list li:before{content:'—';color:var(--gold-dark);position:absolute;left:0}.warning-simple{margin:50px auto 0;padding:22px 28px;border-left:2px solid var(--gold);background:#efeae1}.warning-simple p{max-width:none;font-size:.82rem;color:#5b605b;margin:0}.reference-detail:nth-of-type(even){background:#eee9df}.reference-heading{display:grid;grid-template-columns:1fr 1fr;gap:6vw;margin-bottom:35px}.reference-heading h2{margin-bottom:16px}.reference-heading p{color:#5f625d}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.gallery-photo{margin:0;height:260px;overflow:hidden;background:#d6d2c8}.gallery-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.gallery-photo:hover img{transform:scale(1.025)}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:42px}.values-grid article{border-top:1px solid #c0b8ac;padding-top:22px}.values-grid span{color:var(--gold-dark);font-family:var(--font-head)}.values-grid h3{font-size:2.5rem;margin:40px 0 15px}.values-grid p{font-size:.85rem;color:#666}.timeline{margin-top:42px}.timeline>div{display:grid;grid-template-columns:80px .7fr 1.2fr;gap:30px;padding:25px 0;border-top:1px solid #d5d0c8;align-items:start}.timeline>div>b{font-size:1.1rem;font-weight:400;color:var(--gold-dark)}.timeline h3{font-size:1.7rem;margin:0}.timeline p{margin:0;color:#60645f}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.signature-text{font-family:var(--font-head);font-size:2rem!important;font-style:italic;color:var(--gold-dark)!important;margin-top:30px}.career-list{margin-top:40px}.career-list>div{display:grid;grid-template-columns:210px 1fr;gap:25px;padding:25px 0;border-top:1px solid #cdc6bb}.career-list span{font-size:.85rem;color:var(--gold-dark);font-weight:700}.career-list h3{font-size:1.9rem;margin-bottom:10px}.career-list p{color:#666;margin:0}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:10vw}.contact-grid p{color:#666}.contact-lines{margin-top:40px}.contact-lines>div{display:flex;flex-direction:column;padding:17px 0;border-top:1px solid var(--line);gap:5px}.contact-lines span{color:var(--gold-dark);text-transform:uppercase;letter-spacing:.12em;font-size:.67rem}.contact-lines a,.contact-lines strong{font-weight:700;font-size:1.1rem}.contact-lines a:hover{color:var(--gold-dark)}.small-note{font-size:.76rem!important;margin-top:25px}.form-wrap{background:#ede8df;padding:clamp(24px,3.4vw,50px)}.form-wrap h3{font-size:2.5rem;margin-bottom:35px}.form-wrap form{display:flex;flex-direction:column;gap:18px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-wrap label{display:flex;flex-direction:column;gap:8px;font-size:.77rem;font-weight:700;letter-spacing:.02em}.form-wrap input:not([type=checkbox]),.form-wrap textarea,.form-wrap select{border:1px solid #c6c0b6;background:#f9f6f0;color:#262a26;padding:13px 14px;min-width:0;border-radius:0}.form-wrap textarea{resize:vertical}.form-wrap .consent{flex-direction:row;align-items:start;font-weight:400;color:#686b64;letter-spacing:0;font-size:.71rem;line-height:1.5}.consent input{margin-top:3px}.form-submit{width:100%}.form-feedback{color:#514d45;font-size:.76rem;margin:0;max-width:none}.narrow h2{margin-top:55px;font-size:3rem}.narrow h2:first-child{margin-top:0}@media(max-width:1140px){.nav{gap:12px}.nav>a:not(.nav-contact){font-size:.66rem}.nav-contact{padding:12px}.brand-word strong{font-size:1.45rem}.service-card{padding-inline:22px}.project-grid{grid-template-rows:repeat(2,minmax(280px,1fr))}}@media(max-width:900px){.container{width:min(100% - 40px,1320px)}.nav-wrap{min-height:76px}.nav-toggle{width:40px;height:40px;display:flex;flex-direction:column;justify-content:center;gap:6px;background:transparent;border:0;cursor:pointer}.nav-toggle span{height:2px;width:25px;background:var(--ink)}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--paper);padding:25px 20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 18px 25px rgba(0,0,0,.1)}.nav.open{display:flex}.nav>a{padding:11px!important}.nav-contact{text-align:center}.hero{height:auto;min-height:710px}.hero-shadow{background:linear-gradient(90deg,rgba(15,19,16,.87),rgba(15,19,16,.43))}.proof-grid{grid-template-columns:repeat(2,1fr);gap:20px}.proof-grid>div:nth-child(3){border-left:0;padding-left:0}.cols-2,.service-detail-grid,.reference-heading,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.service-detail:nth-of-type(even) .service-detail-copy,.service-detail:nth-of-type(even) .service-detail-photo{order:initial}.service-detail-photo{height:420px}.service-grid,.values-grid{grid-template-columns:repeat(2,1fr)}.split-story{grid-template-columns:1fr}.story-image{min-height:390px;max-height:500px}.story-body{padding:60px 35px}.inside-grid{min-height:0;grid-template-columns:1fr;gap:0}.inside-copy{padding:70px 0 30px}.inside-media{height:360px;margin:0 -20px}.inside-media img{object-position:center}.gallery-grid{grid-template-columns:repeat(2,1fr)}.step-grid{grid-template-columns:repeat(2,1fr)}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:span 2}}@media(max-width:620px){h1{font-size:3.5rem}h2{font-size:3rem}.eyebrow{font-size:.62rem;letter-spacing:.17em}.hero{min-height:720px}.hero-visual img{object-position:65% center}.hero-content{padding:95px 0 95px}.hero p:not(.eyebrow){font-size:1rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-bottom .container{gap:12px;flex-direction:column}.proof-grid{grid-template-columns:1fr 1fr}.proof-grid>div{padding:9px!important;border:0}.proof strong{font-size:1.7rem}.proof span{font-size:.69rem}.section{padding:70px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:230px;padding:25px 28px 65px}.service-card h3{margin:15px 0}.section-heading-flex{flex-direction:column;align-items:start}.project-grid{grid-template-columns:1fr;grid-template-rows:none}.project-feature,.project-half{height:400px;grid-row:auto}.project-meta{left:25px;bottom:22px}.project-meta h3{font-size:2.1rem}.step-grid,.values-grid{grid-template-columns:1fr;gap:30px}.service-detail-photo{height:340px}.gallery-grid{grid-template-columns:1fr 1fr;gap:8px}.gallery-photo{height:170px}.timeline>div{grid-template-columns:50px 1fr;gap:10px}.timeline>div p{grid-column:2}.career-list>div{grid-template-columns:1fr;gap:8px}.form-row{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:12px}.brand-word strong{font-size:1.5rem}.brand-icon{width:38px;height:38px}.nav-wrap{gap:10px}.inside-copy h1{font-size:3.2rem}.inside-head>.container.narrow h1{font-size:3.3rem}}
