@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
.signature-shot{background:#e8d4cd;padding:45px max(5vw,28px) 60px}.signature-shot img{width:100%;height:auto;max-height:310px;display:block;object-fit:cover;object-position:center}.signature-shot>div{max-width:760px;padding:35px 0 0}.signature-shot h2{font:500 47px/1.02 'Playfair Display',serif;letter-spacing:-.05em;margin:0}.signature-shot h2 i{color:#a76e68}.signature-shot>div>p:not(.eyebrow){font-size:15px;line-height:1.7;color:#634d4d;max-width:560px}@media(max-width:760px){.signature-shot{padding:28px 20px 42px}.signature-shot img{max-height:145px}.signature-shot>div{padding-top:27px}.signature-shot h2{font-size:40px}}
:root{--ink:#2e2424;--rose:#b9867b;--cream:#f8f4f0;--line:#dfd1c9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}.topbar{height:34px;background:#342728;color:#f9e9e4;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.nav{height:90px;background:#fcfaf8;display:flex;align-items:center;justify-content:space-between;padding:0 5.5vw}.brand{font:600 28px 'Playfair Display',serif;color:var(--ink);text-decoration:none;letter-spacing:-1.5px}.brand em{color:var(--rose);font-size:.65em}.links{display:flex;gap:26px}.links a,.book,footer a{font-size:10px;color:var(--ink);text-decoration:none;letter-spacing:.08em;text-transform:uppercase}.book{border-bottom:1px solid var(--ink);padding-bottom:4px}.hero{height:min(680px,calc(100vh - 124px));min-height:520px;display:grid;grid-template-columns:49% 51%;position:relative;background:#ead8d1}.hero-copy{padding:13vh 8vw 9vh 11vw;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{color:#967067;text-transform:uppercase;letter-spacing:.17em;font-size:10px;margin:0 0 20px;font-weight:600}.hero h1,h2{font:500 clamp(46px,5vw,82px)/.98 'Playfair Display',serif;letter-spacing:-.055em;margin:0}.hero h1 i,h2 i{color:#a76e68}.intro{font-size:16px;line-height:1.65;max-width:385px;margin:30px 0;color:#584749}.button,form button{background:#342728;color:white;text-decoration:none;text-transform:uppercase;letter-spacing:.13em;font-size:11px;padding:17px 22px;display:inline-flex;gap:22px;border:0;cursor:pointer}.hero-image{overflow:hidden}.hero-image img{width:100%;height:100%;object-fit:cover;object-position:center}.scroll{position:absolute;left:5.5vw;bottom:26px;font-size:10px;text-transform:uppercase;letter-spacing:.14em}.section{padding:105px 11vw}.section-heading,.gallery-title{text-align:center;margin:auto;max-width:630px}.section-heading h2,.gallery h2{font-size:55px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px}.service{border-left:1px solid var(--line);padding:0 38px}.service:last-child{border-right:1px solid var(--line)}.number{color:#ad8178;font:500 22px 'Playfair Display',serif}.service h3{font:500 28px 'Playfair Display',serif;margin:24px 0 12px}.service p,.contact-text{font-size:14px;line-height:1.7;color:#665659}.service a,.text-link{color:var(--ink);text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:.13em;font-weight:600;display:inline-block;margin-top:17px}.about{background:#342728;color:#fcf8f5;display:grid;grid-template-columns:1fr 1fr;gap:11vw;align-items:center}.about-photo{height:470px;overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover}.about h2{font-size:54px}.about-copy>p:not(.eyebrow){color:#e8d9d4;font-size:15px;line-height:1.8}.about .text-link{color:#fff}.portfolio{background:#fcfaf8}.portfolio-note,.sample-note{font-size:14px;color:#725c5d;margin:18px 0 0}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:55px}.work-grid figure{position:relative;margin:0;height:310px;overflow:hidden;background:#e7d4ce}.work-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.work-grid figure:hover img{transform:scale(1.05)}.work-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:27px 19px 16px;color:#fff;text-transform:uppercase;letter-spacing:.13em;font-size:10px;background:linear-gradient(transparent,rgba(33,20,20,.68))}.reviews{background:#f1e4df}.reviews .section-heading{margin-bottom:55px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review{background:#fffaf7;padding:16px;display:grid;grid-template-columns:76px 1fr;gap:17px;align-items:start}.review img{width:76px;height:76px;object-fit:cover;border-radius:50%}.stars{color:#ac786d;font-size:12px;letter-spacing:2px}.review p{font:500 20px/1.27 'Playfair Display',serif;margin:12px 0 17px}.review small{font-size:9px;text-transform:uppercase;letter-spacing:.11em;color:#79625f}.contact{background:#e8d4cd;display:grid;grid-template-columns:1fr 1fr;gap:11vw}.contact h2{font-size:56px}form{display:grid;gap:20px}label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:#6c5352}input,textarea{width:100%;display:block;background:transparent;border:0;border-bottom:1px solid #9e7e78;padding:11px 0 9px;font:14px 'DM Sans',sans-serif;outline:0;margin-top:7px}textarea{resize:vertical}form button{justify-content:center;margin-top:7px}footer{min-height:105px;padding:0 5.5vw;background:#fcfaf8;display:flex;align-items:center;justify-content:space-between}footer .brand{font-size:23px}footer span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#866d68}@media(max-width:760px){.topbar{padding:0 20px}.topbar span:last-child,.links{display:none}.nav{height:75px;padding:0 20px}.brand{font-size:23px}.book{font-size:9px}.hero{height:auto;min-height:0;display:flex;flex-direction:column}.hero-copy{padding:84px 34px 65px}.hero-image{height:330px}.scroll{display:none}.section{padding:75px 28px}.section-heading h2,.gallery h2,.about h2,.contact h2{font-size:43px}.service-grid,.work-grid,.review-grid{grid-template-columns:1fr;margin-top:38px}.service,.service:last-child{border:0;border-top:1px solid var(--line);padding:27px 0}.about,.contact{grid-template-columns:1fr;gap:48px}.about-photo{height:360px;order:2}.work-grid figure{height:280px}.review{grid-template-columns:105px 1fr}footer{padding:28px;gap:18px;flex-wrap:wrap}footer span{order:3;width:100%}}
