:root{--forest:#25362b;--ink:#26342b;--paper:#f4f1e9;--gold:#d4b282;--muted:#636b61}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #bc8140;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:27px 5%;border-bottom:1px solid #d6d9ce;gap:24px}.brand{display:flex;gap:13px;align-items:center;font-size:17px;line-height:1.1;letter-spacing:.02em}.brand b{font-weight:500}.mark{width:44px;height:44px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:18px}nav{display:flex;gap:34px;font-size:14px}nav a:hover,.text-link:hover{text-decoration:underline}.location{font-size:14px;color:var(--muted)}.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:5%;padding:62px 5% 55px;align-items:center}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.16em;margin:0 0 25px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.045em;margin:0}h1{font-size:clamp(42px,4.45vw,76px)}em{font-weight:400;color:#798062}.lead{max-width:400px;margin:27px 0 30px;color:var(--muted);font-size:17px}.button{display:inline-block;padding:15px 27px;background:var(--forest);color:white;font-size:14px}.button:hover{background:#3a513f}.hero-note{display:flex;gap:25px;margin-top:45px;font-size:12px;color:var(--muted);border-top:1px solid #d6d9ce;padding-top:17px}.hero-photo{margin:0;position:relative}.hero-photo img{width:100%;height:470px;object-fit:cover;display:block}.hero-photo figcaption{display:flex;justify-content:space-between;gap:14px;font-size:12px;padding-top:15px;color:var(--muted)}.strip{display:flex;justify-content:space-around;background:var(--forest);color:#e8e6d9;padding:23px 5%;gap:20px;font-size:14px}.strip span+span{border-left:1px solid #5d6a5d;padding-left:6%}.portfolio{padding:90px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:38px}h2{font-size:clamp(36px,3.2vw,54px)}.section-head>p{max-width:310px;color:var(--muted);margin:0}.filters{display:flex;gap:12px;align-items:center;margin-bottom:28px;flex-wrap:wrap}.filters button{border:1px solid #c9cebf;background:transparent;color:var(--ink);padding:9px 21px;border-radius:30px;font-size:14px}.filters button.active{background:var(--forest);color:white;border-color:var(--forest)}#count{margin-left:auto;font-size:13px;color:var(--muted)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 24px}.card{border:0;background:none;text-align:left;padding:0;color:inherit;width:100%}.card .image-wrap{overflow:hidden;background:#d6d5c9;height:330px;position:relative}.card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.045)}.card .view{position:absolute;bottom:15px;right:15px;color:white;background:#25362bcc;padding:7px 12px;font-size:12px}.card .meta{display:flex;justify-content:space-between;gap:8px;margin-top:14px;align-items:center}.card h3{font-family:Georgia,serif;font-size:22px;font-weight:400;margin:0;line-height:1.2}.card small{color:var(--muted);font-size:12px;white-space:nowrap}.about{display:grid;grid-template-columns:1fr 1fr;background:#e7e7dc;gap:8%;padding:70px 8%;align-items:center}.about-photo{position:relative}.about-photo img{display:block;width:100%;height:520px;object-fit:cover}.about-photo>span{position:absolute;bottom:0;left:0;right:0;background:#25362bd9;color:var(--paper);padding:20px;font-family:Georgia,serif;font-size:23px}.about-copy p:not(.eyebrow){color:var(--muted);max-width:480px}.details{border-top:1px solid #bdc4b5;margin-top:30px}.details>div{display:flex;gap:28px;border-bottom:1px solid #bdc4b5;padding:14px 0}.details b{font-weight:400;font-size:12px;color:#75806d}.reach{text-align:center;background:var(--forest);color:var(--paper);padding:88px 20px}.reach h2{font-size:clamp(42px,4.8vw,70px)}.reach em{color:var(--gold)}.reach p:not(.eyebrow){color:#c4cbbb;margin:28px 0}.text-link{display:inline-block;border-bottom:1px solid #a9b399;padding-bottom:5px;font-size:14px}footer{padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:20px}footer p,footer>span{font-size:13px;color:var(--muted)}dialog{border:0;background:#142019;color:white;padding:18px;width: min(1000px,96vw);max-height:96vh}dialog::backdrop{background:#101911e8}dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}.viewer-top,.viewer-bottom{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:8px 0 14px;font-size:14px}dialog button{color:white;border:1px solid #667061;background:transparent;padding:8px 16px}.viewer-bottom{padding:15px 0 0}body.modal-open{overflow:hidden}@media(min-width:1500px){main,header,footer{max-width:1700px;margin:auto}}@media(max-width:900px){header{padding:20px 5%}nav{gap:20px}.location{display:none}.hero{gap:25px;padding-top:40px}.hero-photo img{height:390px}.hero-note{display:block;margin-top:25px}.hero-note span{display:block}.hero-photo figcaption span:last-child{display:none}.gallery{grid-template-columns:repeat(2,1fr)}.strip span+span{padding-left:20px}.section-head{gap:25px}.about{gap:30px;padding:50px 5%}.about-photo img{height:460px}footer p{display:none}}@media(max-width:600px){header{align-items:center}.brand{font-size:15px}.mark{height:36px;width:36px}nav{gap:15px;font-size:12px}nav a:last-child{display:none}.hero{grid-template-columns:1fr;padding:35px 5% 30px;gap:30px}h1{font-size:47px}.eyebrow{margin-bottom:18px}.lead{font-size:16px;margin:22px 0}.hero-note{display:flex;font-size:12px;margin-top:25px;gap:20px}.hero-photo img{height:320px}.strip{display:grid;grid-template-columns:1fr 1fr;gap:10px;font-size:12px;text-align:center;padding:20px}.strip span+span{border:0;padding:0}.portfolio{padding:52px 5%}.section-head{display:block}.section-head>p{margin:22px 0 0;max-width:100%}h2{font-size:39px}.filters{gap:7px}.filters button{padding:8px 13px;font-size:13px}#count{display:none}.gallery{gap:28px 13px}.card .image-wrap{height:215px}.card .meta{display:block}.card h3{font-size:20px}.card small{font-size:12px}.card .view{font-size:12px;right:8px;bottom:8px;padding:4px 7px}.about{grid-template-columns:1fr;gap:35px}.about-photo img{height:370px}.reach{padding:60px 5%}footer{padding:27px 5%}footer>span{font-size:12px}.viewer-top{font-size:12px}dialog button{padding:7px 10px;font-size:13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card img{transition:none}}
.languages{display:flex;gap:4px;flex-shrink:0}.languages button{border:1px solid transparent;background:transparent;color:var(--ink);font-size:14px;padding:8px 10px;min-height:42px}.languages button[aria-pressed=true]{background:var(--forest);color:white}.languages button:hover{border-color:var(--forest)}.contact{padding:65px 5%;display:flex;align-items:center;justify-content:space-between;gap:35px;border-bottom:1px solid #d6d9ce}.contact p:not(.eyebrow){color:var(--muted)}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.phone{font-family:Georgia,serif;font-size:clamp(25px,3vw,38px);white-space:nowrap}.phone:hover{text-decoration:underline}@media(max-width:900px){header{flex-wrap:wrap}header nav{order:3;width:100%;justify-content:center}nav a:last-child{display:inline}.contact{align-items:flex-start;flex-direction:column}}@media(max-width:600px){header nav{gap:19px;font-size:13px;flex-wrap:wrap}header nav a:nth-child(3){display:none}.languages button{padding:7px 9px}.contact{padding:45px 5%}.contact h2{font-size:37px}}
.brand-logo{display:block;width:72px;height:72px;object-fit:contain;border-radius:5px}.brand-hero img{height:auto;aspect-ratio:1376 / 768;object-fit:contain}.brand-hero figcaption{flex-wrap:wrap}header .brand{font-size:20px;letter-spacing:.03em}footer .brand-logo{width:64px;height:64px}@media(max-width:600px){.brand-logo{width:56px;height:56px}header .brand{font-size:18px}.brand-hero img{height:auto;aspect-ratio:1376 / 768}.hero{gap:28px}}
