@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#193b32;--dark:#122d26;--cream:#f5f2e9;--gold:#dfb661;--ink:#243c34;--line:#d5d9cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #b7780c;outline-offset:5px}.skip{position:absolute;left:20px;top:-100px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}header{padding:24px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:14px}.brand b{font-family:Georgia,serif;font-size:46px;letter-spacing:-4px;line-height:1}.brand b span{font-size:32px;color:#9d7431}.brand small{font-size:9px;font-weight:700;letter-spacing:1.7px;line-height:1.7;border-left:1px solid #a7b3a5;padding-left:14px}nav{display:flex;align-items:center;gap:34px;font-size:13px}.nav-call{border:1px solid var(--green);padding:13px 18px}.nav-call span{margin-left:30px}.hero{display:grid;grid-template-columns:1.12fr 1fr;min-height:610px}.hero-copy{padding:72px 5% 52px 11%}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;line-height:1.8}.dot{display:inline-block;width:6px;height:6px;background:#b08b47;border-radius:50%;margin-right:8px}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;letter-spacing:-2px;line-height:1.03;margin:26px 0}h1{font-size:clamp(54px,5.4vw,82px)}em{font-weight:400;color:#8a6b38}h2{font-size:clamp(44px,4vw,62px)}.intro{max-width:390px;font-size:16px;line-height:1.7;margin:27px 0 30px}.button{background:var(--green);color:white;display:inline-flex;gap:42px;padding:17px 23px;font-size:13px}.button:hover{background:#275b4d}.phone{display:inline-block;font-size:13px;margin-left:20px}.hero-note{font-size:10px;color:#68766a;margin-top:48px}.hero-art{position:relative;overflow:hidden;background:var(--green);display:flex;justify-content:center;align-items:center;flex-direction:column;color:#d7dccc;padding:35px}.art-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:48px 48px}.hero-art svg{position:relative;width:115%;max-width:650px}.art-label{position:relative;font-size:9px;letter-spacing:2.6px;align-self:flex-start;border-left:2px solid var(--gold);padding-left:12px}.art-footer{position:relative;width:100%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:2px;border-top:1px solid #ffffff30;padding-top:20px}.service-strip{display:flex;justify-content:space-around;align-items:center;gap:20px;padding:22px 6%;background:#e9e8dc;font-size:10px;font-weight:600;letter-spacing:2px}.service-strip i{color:#8a6b38}.section{padding:95px 8%}.services{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.section-head>p:last-child{max-width:300px;font-size:14px;line-height:1.8;color:#637166}.service-list article{border-top:1px solid var(--line);display:flex;gap:24px;padding:26px 0}.number{font-size:11px;color:#8a6b38;padding-top:7px}h3{font-size:22px;font-weight:500;margin:0 0 12px}.service-list p{font-size:13px;line-height:1.8;max-width:380px;margin:0;color:#637166}.service-mark{margin-left:auto}.focus{background:var(--green);color:var(--cream);padding:65px 8%;display:grid;grid-template-columns:.6fr 1.1fr 1fr;gap:35px;align-items:start}.focus h2{margin:0}.focus>div>p{font-size:19px;line-height:1.6;margin-top:0}.focus .muted{font-size:13px;color:#becbbd;line-height:1.8}.text-link{display:inline-flex;gap:36px;border-bottom:1px solid;padding-bottom:9px;font-size:12px;margin-top:15px}.gallery-head{display:flex;justify-content:space-between;align-items:center;gap:50px}.gallery-head>p{max-width:320px;font-size:14px;line-height:1.8;color:#637166}.gallery-empty{margin-top:25px;padding:35px;border:1px solid var(--line);display:flex;align-items:center;gap:25px;background:#eeede3}.frame-icon{font-size:55px;color:#8a6b38}.gallery-empty h3{font-size:19px}.gallery-empty p{font-size:13px;line-height:1.7;max-width:510px;margin:0;color:#637166}.gallery-empty a{margin-left:auto;white-space:nowrap}.contact{background:#e9e8dc;display:grid;grid-template-columns:1.3fr 1fr;gap:12%}.contact h2{margin-top:20px}.contact p{font-size:14px;line-height:1.8}.big-phone{display:inline-flex;font-size:clamp(27px,3vw,43px);letter-spacing:-1px;gap:35px;border-bottom:1px solid #8c9b89;padding:15px 0}.big-phone span{color:#8a6b38}.contact .region{font-size:9px;letter-spacing:2px;margin-top:24px}aside{border-left:1px solid #c3cab9;padding-left:40px;padding-top:40px}aside h3{font-size:20px}aside ol{padding-left:20px;font-size:13px;line-height:2.7}aside .aside-note{font-size:12px;color:#637166;border-top:1px solid #c3cab9;padding-top:20px}footer{background:var(--dark);color:var(--cream);padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer p{font-size:11px;line-height:1.8;color:#becbbd}footer>a:last-child{font-size:13px}.mobile-call{display:none}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.photo-card{padding:0;border:0;text-align:left;background:transparent;color:inherit;cursor:pointer;font:inherit}.photo-card img{width:100%;aspect-ratio:4/3;object-fit:cover}.photo-card span{display:block;font-size:14px;margin:10px 0}.filters{margin:20px 0}.filters button{font:inherit;padding:9px 16px;background:transparent;border:1px solid var(--line);cursor:pointer;margin:0 8px 8px 0}.filters button[aria-pressed=true]{background:var(--green);color:white}dialog{width:min(1000px,95vw);max-height:95vh;border:0;background:var(--dark);color:white;padding:45px 60px}dialog::backdrop{background:#000d}dialog figure{margin:0;text-align:center}dialog img{max-width:100%;max-height:72vh;object-fit:contain}dialog figcaption{padding-top:15px;font-size:13px}dialog button{position:absolute;background:transparent;border:0;color:white;font-size:30px;cursor:pointer}#close-photo{right:15px;top:5px}#prev-photo{left:12px;top:45%}#next-photo{right:12px;top:45%}[hidden]{display:none!important}@media(min-width:1500px){body{max-width:1800px;margin:auto}}@media(max-width:800px){header{padding:20px 5%}.brand b{font-size:38px}.brand small{font-size:8px}nav{gap:18px}nav>a:not(.nav-call){display:none}.hero{grid-template-columns:1fr}.hero-copy{padding:50px 7%}.hero-art{min-height:360px;padding:25px 7%}.hero-art svg{width:90%;max-height:340px}.hero-note{margin-top:30px}h1{font-size:62px}.services{grid-template-columns:1fr;gap:30px}.section{padding:60px 7%}.section-head>p:last-child{max-width:100%}.focus{grid-template-columns:1fr 1fr;padding:45px 7%;gap:25px}.focus>.eyebrow{grid-column:1/-1}.focus>div>p{font-size:16px}.gallery-head{display:block}.gallery-head>p{max-width:100%}.gallery-empty{padding:25px;flex-wrap:wrap;gap:15px}.gallery-empty a{margin-left:0}.frame-icon{display:none}.contact{grid-template-columns:1fr;gap:25px}aside{padding:25px 0 0;border-left:0;border-top:1px solid #c3cab9}footer{flex-wrap:wrap;padding:35px 7% 90px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--green);color:white;padding:17px;text-align:center;font-size:13px;border-top:1px solid #ffffff40;z-index:5}.service-strip{font-size:8px;letter-spacing:1px;gap:10px;padding:18px 4%}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.hero-photo{position:relative;overflow:hidden;background:var(--green);min-height:540px}.hero-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:54% center}.hero-photo-caption{position:absolute;bottom:0;left:0;right:0;padding:34px 26px 23px;background:linear-gradient(transparent,rgba(18,45,38,.9));color:#fff;font-size:9px;line-height:1.8;letter-spacing:1.5px}@media(max-width:800px){.hero-photo{min-height:0;aspect-ratio:590/332}.hero-photo>img{object-fit:contain}.hero-photo-caption{font-size:8px;padding:25px 20px 14px}}
.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-photo{margin:0}.about-photo img{width:100%;height:auto;display:block}.about-photo figcaption{font-size:11px;line-height:1.7;color:#637166;padding-top:12px}.about-copy h2{font-size:clamp(42px,3.6vw,56px)}.about-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#637166}.about-copy>p.about-lead{font-family:Georgia,serif;font-size:20px;color:var(--green);line-height:1.5}@media(max-width:800px){.about{grid-template-columns:1fr;gap:30px}.about-photo{max-width:590px}.about-copy h2{font-size:46px}}
.contact .facebook-link{margin-top:0}.footer-facebook{font-size:12px;line-height:1.6;border-bottom:1px solid #becbbd;padding-bottom:5px}footer{flex-wrap:wrap}
.service-strip{flex-wrap:wrap;row-gap:12px}
.hero-photo>img{object-fit:contain;padding:45px;background:var(--green)}@media(max-width:800px){.hero-photo{aspect-ratio:1/1;max-height:430px}.hero-photo>img{padding:25px}}
.about-photo img{max-width:380px;margin-inline:auto}.about-photo figcaption{text-align:center}
