@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;500;600;700&family=Source+Sans+3:wght@400;500;600&display=swap');
:root{--ink:#0b0c0a;--ink2:#12140f;--paper:#ede7db;--sand:#c8ac82;--olive:#737653;--line:rgba(237,231,219,.15);--max:1240px;--head:'Oswald',sans-serif;--body:'Source Sans 3',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:18px;line-height:1.55;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}.skip-link{position:fixed;top:-100px;left:1rem;z-index:999;background:var(--paper);color:var(--ink);padding:.7rem 1rem}.skip-link:focus{top:1rem}.site-header{position:fixed;inset:0 0 auto;z-index:30;transition:.3s;background:linear-gradient(rgba(0,0,0,.75),transparent)}.site-header.scrolled{background:rgba(11,12,10,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.nav-wrap{max-width:var(--max);margin:auto;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}.brand img{width:175px;height:72px;object-fit:contain;object-position:left center}.site-header nav{display:flex;align-items:center;gap:2rem;text-transform:uppercase;font-family:var(--head);font-size:.83rem;letter-spacing:.12em}.site-header nav a{opacity:.85}.site-header nav a:hover{opacity:1;color:var(--sand)}.nav-cta{border:1px solid var(--sand);padding:.65rem 1rem}.menu-button{display:none;background:none;border:0;padding:.5rem}.menu-button span{display:block;width:27px;height:2px;background:var(--paper);margin:5px}.hero{min-height:100svh;position:relative;display:grid;align-items:center;padding:8rem max(1.5rem,calc((100vw - var(--max))/2)) 5rem}.hero-media{position:absolute;inset:0;background:url('assets/deer-art.webp') center 40%/cover no-repeat}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,7,5,.95) 0%,rgba(6,7,5,.65) 48%,rgba(6,7,5,.2) 80%),linear-gradient(0deg,rgba(6,7,5,.8),transparent 45%)}.hero-content{position:relative;max-width:820px;z-index:2}.eyebrow{margin:0 0 1rem;color:var(--sand);font-family:var(--head);text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:600}.hero h1,.section h2{font-family:var(--head);text-transform:uppercase;line-height:.96;letter-spacing:-.025em;margin:0}.hero h1{font-size:clamp(3.5rem,8.5vw,8rem);max-width:900px}.hero h1 em{font-style:normal;color:var(--sand)}.hero-copy{font-size:clamp(1.05rem,2vw,1.35rem);max-width:650px;color:#d5d1c8;margin:2rem 0}.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:.75rem 1.35rem;font-family:var(--head);text-transform:uppercase;letter-spacing:.09em;font-weight:600;border:1px solid transparent;cursor:pointer;transition:.2s}.button-primary{background:var(--sand);color:var(--ink)}.button-primary:hover{background:#ddc39b;transform:translateY(-2px)}.button-ghost{border-color:rgba(255,255,255,.5)}.button-ghost:hover{border-color:var(--sand);color:var(--sand)}.scroll-cue{position:absolute;z-index:2;bottom:2rem;right:max(1.5rem,calc((100vw - var(--max))/2));font-family:var(--head);font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;display:flex;align-items:center;gap:.7rem}.scroll-cue span{width:45px;height:1px;background:var(--sand)}.section{max-width:var(--max);margin:auto;padding:7rem 1.5rem}.intro{display:grid;grid-template-columns:.45fr 1.35fr .8fr;gap:4rem;align-items:start;border-bottom:1px solid var(--line)}.intro-mark{font-family:var(--head);font-weight:700;font-size:clamp(4rem,9vw,8rem);line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(200,172,130,.35)}.section h2{font-size:clamp(2.6rem,5vw,5rem)}.intro-copy p:last-child,.section-heading>p,.pricing-lead>p{color:#aaa99f;max-width:680px}.intro-points{border-left:1px solid var(--line);padding-left:2rem}.intro-points div{padding:1.2rem 0;border-bottom:1px solid var(--line)}.intro-points strong,.intro-points span{display:block}.intro-points strong{font-family:var(--head);font-size:1.25rem;text-transform:uppercase;color:var(--sand)}.intro-points span{font-size:.95rem;color:#aaa99f}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:3rem}.section-heading>p{max-width:300px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:300px;gap:1rem}.gallery-card{position:relative;overflow:hidden;border:0;padding:0;background:#222;color:white;cursor:zoom-in;text-align:left}.gallery-card-wide{grid-column:span 2}.gallery-card-tall{grid-row:span 2}.gallery-card img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .5s}.gallery-card span{position:absolute;inset:auto 0 0;padding:3rem 1rem 1rem;background:linear-gradient(transparent,rgba(0,0,0,.85));font-family:var(--head);text-transform:uppercase;letter-spacing:.08em}.gallery-card:hover img{transform:scale(1.04);filter:brightness(.8)}.services{border-top:1px solid var(--line)}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-card{padding:2rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:290px}.service-card>span,.process-grid>li>span{color:var(--olive);font-family:var(--head);letter-spacing:.15em}.service-card h3,.process-grid h3{font-family:var(--head);text-transform:uppercase;font-size:1.7rem;margin:3.5rem 0 .6rem}.service-card p,.process-grid p{color:#aaa99f}.pricing{max-width:none;background:var(--paper);color:var(--ink);display:grid;grid-template-columns:minmax(260px,430px) minmax(0,700px);justify-content:center;gap:7rem}.pricing .eyebrow{color:#6e603f}.pricing-lead>p{color:#595b54}.text-link{display:inline-flex;gap:.5rem;margin-top:1rem;font-family:var(--head);text-transform:uppercase;font-weight:600;border-bottom:1px solid;padding-bottom:.25rem}.price-list>div{display:grid;grid-template-columns:1fr auto;gap:.25rem 1rem;align-items:baseline;padding:1.2rem 0;border-bottom:1px solid rgba(11,12,10,.18)}.price-list span{font-family:var(--head);text-transform:uppercase;font-size:1.2rem}.price-list strong{font-family:var(--head);font-size:1.25rem}.price-list small{grid-column:1/-1;color:#6b6d65}.process-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.process-grid li{padding:2rem 1.25rem;border-top:1px solid var(--line)}.quote{display:grid;grid-template-columns:.9fr 1.1fr;gap:0;max-width:var(--max);padding-top:3rem}.quote-image{min-height:740px}.quote-image img{width:100%;height:100%;object-fit:cover}.quote-panel{background:var(--ink2);padding:clamp(2rem,5vw,5rem)}.quote-panel>p{color:#aaa99f}.quote-panel form{display:grid;gap:1.1rem;margin-top:2rem}.quote-panel label{display:grid;gap:.4rem;font-family:var(--head);text-transform:uppercase;letter-spacing:.08em;font-size:.8rem}.quote-panel input,.quote-panel textarea,.quote-panel select{width:100%;background:#0d0e0b;color:var(--paper);border:1px solid #34372d;padding:.8rem;border-radius:0}.quote-panel input:focus,.quote-panel textarea:focus,.quote-panel select:focus{outline:2px solid var(--sand);outline-offset:1px}.direct-contact{display:flex;gap:1.5rem;margin-top:1.5rem;font-family:var(--head);text-transform:uppercase;font-size:.85rem}.direct-contact a{border-bottom:1px solid var(--sand)}footer{max-width:var(--max);margin:auto;padding:4rem 1.5rem 6rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem;border-top:1px solid var(--line)}footer img{width:250px;height:100px;object-fit:contain;object-position:left}.footer-brand p{color:#aaa99f}.footer-label{font-family:var(--head);text-transform:uppercase;color:var(--sand);letter-spacing:.12em}footer>div>a{display:block;margin:.5rem 0;color:#c6c3ba}.copyright{grid-column:1/-1;color:#77786f;font-size:.85rem}.lightbox{width:min(94vw,1100px);height:min(90vh,850px);padding:0;border:0;background:#080907;color:white}.lightbox::backdrop{background:rgba(0,0,0,.88)}.lightbox img{width:100%;height:calc(100% - 50px);object-fit:contain}.lightbox p{margin:.7rem 1rem;font-family:var(--head);text-transform:uppercase}.lightbox-close{position:absolute;right:.5rem;top:.3rem;z-index:2;border:0;background:rgba(0,0,0,.7);color:white;width:44px;height:44px;font-size:2rem;cursor:pointer}.mobile-bar{display:none}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){body{font-size:17px}.menu-button{display:block}.site-header nav{position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:1.5rem;display:none;flex-direction:column;align-items:stretch;border-top:1px solid var(--line)}.site-header nav.open{display:flex}.brand img{width:145px;height:58px}.intro{grid-template-columns:1fr;gap:2rem}.intro-mark{display:none}.intro-points{border-left:0;padding-left:0;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.service-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.pricing{grid-template-columns:1fr;gap:3rem;padding:5rem 1.5rem}.quote{grid-template-columns:1fr}.quote-image{min-height:500px}.gallery{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:600px){.hero{align-items:end;padding-bottom:7rem}.hero h1{font-size:3.35rem}.hero-copy{font-size:1rem}.scroll-cue{display:none}.section{padding:5rem 1rem}.section-heading{display:block}.section-heading>p{margin-top:1rem}.intro-points{grid-template-columns:1fr}.gallery{grid-template-columns:1fr;grid-auto-rows:380px}.gallery-card-wide{grid-column:auto}.gallery-card-tall{grid-row:auto}.service-grid,.process-grid{grid-template-columns:1fr}.service-card{min-height:230px}.service-card h3{margin-top:2rem}.quote{padding:0}.quote-image{min-height:420px}.quote-panel{padding:2.5rem 1rem}.direct-contact{flex-direction:column;gap:.8rem}footer{grid-template-columns:1fr;padding-bottom:7rem}.footer-brand{grid-column:auto}.copyright{grid-column:auto}.mobile-bar{position:fixed;z-index:25;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);background:rgba(11,12,10,.96);backdrop-filter:blur(10px);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-bar a{text-align:center;padding:.9rem .5rem;font-family:var(--head);text-transform:uppercase;letter-spacing:.08em;border-right:1px solid var(--line)}.mobile-bar a:last-child{background:var(--sand);color:var(--ink)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.gallery-card img,.button{transition:none}}
