@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600;700&family=Italiana&display=swap');
:root{--cream:#f7f4ef;--sand:#e8ded3;--ink:#282522;--muted:#736b64;--rust:#846654}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:15px/1.7 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}header{display:flex;align-items:center;justify-content:space-between;padding:18px 5vw;background:rgba(247,244,239,.98);position:sticky;top:0;z-index:9;border-bottom:1px solid #d9d0c5}.brand{font:27px 'Italiana',serif;letter-spacing:.1em;line-height:1}.brand small{display:block;font:9px 'DM Sans',sans-serif;letter-spacing:.38em;text-align:center;margin-top:7px}.nav{display:flex;gap:27px;align-items:center;text-transform:uppercase;font-size:10px;letter-spacing:.17em}.nav a:hover,.nav a.active{color:var(--rust)}.pill,.button{border:1px solid var(--ink);padding:13px 23px;text-transform:uppercase;letter-spacing:.17em;font-size:10px;display:inline-block;transition:.25s;background:transparent;cursor:pointer}.button:hover,.pill:hover{background:var(--ink);color:white}.nav .pill{background:var(--ink);color:#fff;padding:11px 19px}h1,h2,h3{font-family:'Italiana',Georgia,serif;font-weight:400;line-height:1.06;margin:0}h1{font-size:clamp(65px,8.5vw,143px)}h2{font-size:clamp(42px,5.2vw,77px)}h3{font-size:clamp(32px,3.3vw,48px)}.eyebrow{letter-spacing:.31em;text-transform:uppercase;font-size:10px;font-weight:600;margin-bottom:21px}.lead{color:var(--muted);max-width:590px;font-size:15px}.hero{position:relative;min-height:78vh;display:flex;align-items:end;color:white;overflow:hidden}.hero img{position:absolute;inset:0;filter:brightness(.61);object-position:50% 46%}.hero-inner{position:relative;padding:6vw;width:100%}.hero h1{max-width:940px}.hero p{max-width:550px;font-size:16px}.hero .button{border-color:white;color:white;margin-top:20px}.hero .button:hover{background:white;color:var(--ink)}.section{padding:105px 7vw}.center{text-align:center}.center .lead{margin:20px auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:center}.intro .image{height:670px}.intro p{max-width:520px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}.gallery img{height:440px}.gallery .tall{height:570px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:45px}.service-card{background:#eee8df}.service-card img{height:360px}.service-card .info{padding:30px}.service-card h3{font-size:43px}.service-card p{color:var(--muted)}.service-card a{border-bottom:1px solid;padding-bottom:5px;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.dark{background:#2d2926;color:#fff}.dark .lead,.dark p{color:#ddd0c6}.quote{text-align:center;max-width:940px;margin:auto}.quote h2{line-height:1.22}.closing{text-align:center;background:#e9ded2;padding:110px 20px}.closing .button{margin-top:26px}footer{background:#282522;color:#f4eee7;padding:53px 7vw 26px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px}footer small{color:#bcb0a5}.page-head{padding:100px 7vw 75px;text-align:center;background:#eae1d7}.page-head h1{font-size:clamp(60px,7vw,106px)}.page-head p{max-width:630px;margin:20px auto 0;color:#71675d}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding:95px 8vw}.split img{height:650px}.price{font:clamp(54px,6vw,85px) 'Italiana',serif;margin:26px 0 8px}.sub{font-size:11px;text-transform:uppercase;letter-spacing:.2em;color:var(--muted)}.features{padding-left:20px;margin:30px 0 35px;color:#55504c}.features li{margin:9px 0}.note{font-size:12px;color:var(--muted)}.photos{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;padding:0 7vw 90px}.photos img{height:460px}.faq{max-width:860px;margin:0 auto;padding:75px 25px 110px}details{border-bottom:1px solid #d5c8bc;padding:23px 0}summary{cursor:pointer;font:26px 'Italiana',serif;list-style:none;display:flex;justify-content:space-between;gap:15px}summary::after{content:'+';font:25px sans-serif}details[open] summary::after{content:'−'}details p{color:var(--muted);margin-bottom:4px;max-width:750px}.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:6vw;align-items:center;padding:90px 8vw}.about-hero img{height:660px}.about-hero p{max-width:550px;color:#635b55}.contact-card{max-width:650px;margin:auto}.contact-card label{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:10px;margin-top:20px}.contact-card input,.contact-card textarea,.contact-card select{width:100%;margin-top:8px;border:1px solid #c9beb2;background:#fffdf9;padding:15px;font:inherit}.contact-card textarea{height:125px}.contact-card button{margin-top:25px;background:var(--ink);color:white}.contact-card .note{margin-top:20px}.mobile-menu{display:none}.tag{color:#8c6b56;font-style:italic}@media(max-width:800px){header{padding:18px 5vw;flex-wrap:wrap}.brand{font-size:24px}.mobile-menu{display:block;background:none;border:0;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.nav{display:none;width:100%;flex-direction:column;align-items:stretch;padding:25px 0 8px;gap:15px}.nav.open{display:flex}.nav .pill{text-align:center}.hero{min-height:75vh}.hero-inner{padding:35px 7vw 65px}.hero h1{font-size:65px}.section{padding:65px 6vw}.intro,.split,.about-hero{grid-template-columns:1fr;padding:65px 6vw;gap:38px}.intro .image,.split img,.about-hero img{height:470px}.service-grid,.gallery,.photos{grid-template-columns:1fr}.gallery img,.gallery .tall,.photos img{height:480px}footer{flex-direction:column;align-items:start}.page-head{padding:77px 5vw 58px}.page-head h1{font-size:64px}}

.hero em{font-weight:400;font-style:italic}.hero img{object-position:50% 67%;filter:brightness(.52)}.hero{min-height:82vh}.hero-inner{padding-bottom:8vw}.recent-work{background:#eae1d7}.recent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin:40px 0}.recent-grid img{height:390px}.story-links{background:#f7f4ef}.story-link-row{max-width:880px;margin:45px auto 0}.story-link-row a{font:clamp(38px,5vw,70px) 'Italiana',Georgia,serif;border-top:1px solid #bfb2a4;display:flex;justify-content:space-between;padding:22px 8px}.story-link-row a:last-child{border-bottom:1px solid #bfb2a4}.story-link-row a span{font:25px Georgia,serif}.story-link-row a:hover{color:#846654}@media(max-width:800px){.hero{min-height:68vh}.hero h1{font-size:clamp(50px,12vw,75px)}.recent-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recent-grid img{height:260px}}

/* Final editorial homepage and dedicated galleries */
.minimal-hero{min-height:66vh;background:#e9ded2;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:90px 24px}.minimal-hero h1{font-size:clamp(70px,10vw,135px)}.minimal-hero h1 em{font-weight:400}.minimal-hero p{max-width:460px;margin:20px auto 30px;color:#625c55}.minimal-intro{padding:85px 9vw;display:grid;grid-template-columns:1fr 1fr;gap:11vw;align-items:center}.minimal-intro p{max-width:460px;color:#736b64}.text-link{display:inline-block;margin-top:15px;border-bottom:1px solid #282522;padding-bottom:4px}.minimal-links a{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #c1b7ae;padding:18px 0;font:clamp(36px,4vw,62px) 'Italiana',serif}.minimal-links a:last-child{border-bottom:1px solid #c1b7ae}.minimal-links span{font:24px Georgia,serif}.photos img,.tone-grid img{object-fit:cover}.tone-galleries{padding:0 7vw 100px}.tone-section{margin:0 0 70px}.tone-section h3{font-size:50px}.tone-section p{color:#756c64;margin-bottom:24px}.tone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.tone-grid img{height:440px}.about-hero img{object-position:center 54%}@media(max-width:800px){.minimal-hero{min-height:58vh;padding:80px 22px}.minimal-intro{grid-template-columns:1fr;padding:70px 7vw}.tone-grid{grid-template-columns:1fr 1fr;gap:10px}.tone-grid img{height:310px}.tone-section h3{font-size:40px}}

/* Refinements requested October 2026 */
.minimal-links span{font:11px 'DM Sans',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.text-link{font-size:15px}

.slider-wrap{padding:0 7vw 100px}
.editorial-slider{position:relative;display:flex;align-items:center;justify-content:center;gap:16px;max-width:960px;margin:0 auto}
.slides{position:relative;width:min(100%,720px);aspect-ratio:3/4;overflow:hidden;background:#efe8de}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .35s ease;pointer-events:none}
.slide.active{opacity:1;pointer-events:auto}
.slide img,.slide{width:100%;height:100%;object-fit:cover}
.slider-btn{width:48px;height:48px;border:1px solid #b8aca1;border-radius:50%;background:rgba(247,244,239,.92);color:var(--ink);font:32px/1 Georgia,serif;display:grid;place-items:center;cursor:pointer;transition:.2s;flex-shrink:0}
.slider-btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.slider-dots{display:flex;justify-content:center;gap:10px;margin-top:22px}
.slider-dots .dot{width:10px;height:10px;border-radius:50%;border:0;background:#c7beb5;cursor:pointer;padding:0}
.slider-dots .dot.active{background:#655448}

@media(max-width:800px){
  .slider-wrap{padding:0 5vw 75px}
  .editorial-slider{gap:10px}
  .slider-btn{width:40px;height:40px;font-size:28px}
  .slides{width:100%}
}

.bot-field{position:absolute!important;left:-9999px!important;opacity:0!important;pointer-events:none!important}

/* Photographer portrait on the homepage */
.home-about{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(35px,7vw,112px);align-items:center;padding:80px 9vw 100px}
.home-about-photo{overflow:hidden;aspect-ratio:4/5;max-height:720px;background:#e8ded3}
.home-about-photo img{height:100%;width:100%;object-fit:cover;object-position:center center}
.home-about-content .minimal-links{margin-top:55px}
.home-about-content .minimal-links a{font-size:clamp(34px,3.8vw,59px)}
@media(max-width:800px){.home-about{grid-template-columns:1fr;gap:34px;padding:60px 7vw 75px}.home-about-photo{max-height:540px}.home-about-content .minimal-links{margin-top:45px}}
