@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Fraunces:opsz,wght,SOFT,WONK@9..144,500,0,0;9..144,600,0,0&display=swap');:root{--dark:#1a211c;--light:#f0ede4;--orange:#e9aa5c;--line:#596055}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--dark);color:var(--light);font:16px/1.55 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--orange)}header{height:84px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#1a211cef;position:sticky;top:0;z-index:10;backdrop-filter:blur(10px)}.brand{font-size:1.25rem;font-weight:700;letter-spacing:-.05em;line-height:1}.brand em{font-family:Fraunces,Georgia,serif;color:var(--orange);font-weight:500}.brand small{display:block;margin-top:.45rem;font-size:.58rem;letter-spacing:.19em;font-weight:500}nav{display:flex;gap:2rem;align-items:center}nav a,.menu{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.nav-cta{border:1px solid var(--orange);padding:.75rem 1rem}.menu{display:none;background:transparent;border:1px solid var(--line);color:var(--light);padding:.5rem 1rem}.hero{display:grid;grid-template-columns:52% 48%;min-height:690px}.hero-photo{overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-copy{padding:7rem 5vw;align-self:center}.label{color:var(--orange);font-size:.72rem;letter-spacing:.19em;font-weight:700}.hero h1,h2,h3{font-family:Fraunces,Georgia,serif;font-weight:500;line-height:1.05;letter-spacing:-.05em}.hero h1{font-size:clamp(4rem,7vw,8.5rem);margin:1rem 0 2rem}.hero h1 em{font-weight:500;color:var(--orange)}.hero-copy>p:not(.label){font-size:1.2rem;max-width:460px;color:#d8dacd}.button{display:inline-block;padding:1rem 1.4rem;background:var(--orange);color:#172019;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-top:1.5rem}.button:hover{background:#f6c58c;color:#172019}.work{background:var(--light);color:var(--dark);padding:7rem 4vw}.heading{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;gap:2rem;margin-bottom:3rem}.heading .label{color:#9e5d25}.heading h2{font-size:clamp(3rem,5vw,6rem);margin:0}.heading>p:last-child{color:#5e665d}.mosaic{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1rem}.mosaic figure{margin:0;overflow:hidden;background:#d8d4c9}.mosaic .wide{grid-column:span 2}.mosaic img{display:block;width:100%;height:400px;object-fit:cover}.mosaic figure:nth-child(2) img{object-position:center 32%}.mosaic figcaption{padding:.8rem 1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.13em}.services{padding:8rem 4vw}.service-list{margin-top:2rem}.service-list article{display:grid;grid-template-columns:10% 45% 45%;border-top:1px solid var(--line);padding:2.5rem 0;gap:1rem}.service-list span{color:var(--orange)}.service-list h3{font-size:clamp(2rem,3vw,3.5rem);margin:0}.service-list p{max-width:480px;color:#c0c6b9}.about{background:#303b31;padding:8rem 4vw;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end}.about h2,.inquiry h2{font-size:clamp(3.5rem,6vw,7rem);margin:0}.about>p{font-size:1.25rem;max-width:560px}.inquiry{display:grid;grid-template-columns:1fr 42%;min-height:600px}.inquiry>div{padding:7rem 4vw;align-self:center}.inquiry p:not(.label){color:#c7cebf;max-width:540px}.inquiry img{height:100%;width:100%;object-fit:cover}.inquiry .button{margin-top:2rem}footer{padding:2.5rem 4vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:2rem;align-items:center;font-size:.75rem}footer strong{font-size:1rem}footer div{display:flex;gap:2rem}footer small{color:#b1baa9}@media(max-width:900px){.menu{display:block}nav{display:none;position:absolute;top:84px;left:0;right:0;background:var(--dark);padding:1.5rem 4vw;flex-direction:column;align-items:stretch}nav.open{display:flex}.hero{min-height:550px}.heading{grid-template-columns:1fr 2fr}.heading>p:last-child{grid-column:2}.mosaic{grid-template-columns:1fr 1fr}.mosaic .wide{grid-column:span 1}.service-list article{grid-template-columns:10% 45% 45%}}@media(max-width:650px){header{height:70px}nav{top:70px}.hero{display:flex;flex-direction:column}.hero-photo{height:380px}.hero-copy{padding:5rem 5vw}.hero h1{font-size:clamp(3.8rem,13vw,6rem)}.work,.services{padding:5rem 5vw}.heading{display:block}.mosaic{display:block}.mosaic figure{margin-bottom:1rem}.mosaic img{height:auto}.service-list article{grid-template-columns:1fr;gap:.4rem}.about,.inquiry{display:block}.about{padding:5rem 5vw}.inquiry>div{padding:5rem 5vw}.inquiry img{height:400px}footer{display:block}footer div{margin:1rem 0}}

.photographer-heading{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.photographer-heading h2{margin:0}.profile-photo{display:block;width:88px;height:88px;flex:none;border-radius:50%;object-fit:cover;object-position:center;border:2px solid currentColor}@media(max-width:650px){.profile-photo{width:76px;height:76px}}

.brand img{display:block;width:192px;height:77px;object-fit:contain}@media(max-width:650px){.brand img{width:135px;height:54px}}

header{background:#8f6a4f url("assets/header-wood.png") repeat;background-size:960px 48px;border-bottom-color:#6d4b38;backdrop-filter:none}header nav a,header .menu{color:#fff;text-shadow:0 1px 2px #3b261b}header .nav-cta{border-color:#fff}header nav a:hover{color:#fff;text-decoration:underline}@media(max-width:900px){header nav{background:#8f6a4f url("assets/header-wood.png") repeat;background-size:960px 48px;border-bottom-color:#6d4b38}}

header{background-color:#1a211c;background-image:linear-gradient(90deg,rgba(26,33,28,0) 0%,rgba(26,33,28,.08) 22%,#1a211c 56%),url("assets/header-wood.png");background-repeat:no-repeat,repeat;background-size:100% 100%,960px 48px}header .brand{box-shadow:none}header nav a{color:#f0ede4;text-shadow:none}@media(max-width:900px){header nav{background:#1a211c;background-image:none}}

header{background:#8e6b53 url("assets/header-wood-side.png") repeat-x left top;background-size:auto 84px;backdrop-filter:none}header .brand img{width:211px;height:84px;object-fit:fill}@media(max-width:900px){header nav{background:#1a211c;background-image:none}}@media(max-width:650px){header{background-size:auto 70px}header .brand img{width:175px;height:70px}}

header .brand img{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)}
