:root{--ink:#090909;--paper:#f4f2ec;--gold:#f5b82e;--muted:#aaa59b;--line:rgba(10,10,10,.16);font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);font-size:16px;line-height:1.55}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.site-header{height:86px;padding:0 clamp(20px,4vw,64px);display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:rgba(244,242,236,.92);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.08em}.brand img{width:48px;height:48px;border-radius:50%;object-fit:cover}.site-header nav{display:flex;gap:28px;margin-left:auto}.site-header nav a{font-size:.9rem;font-weight:600}.header-cta,.btn{background:var(--ink);color:white;padding:14px 22px;border:0;font-weight:700;display:inline-flex;justify-content:center;align-items:center;cursor:pointer}.menu-btn{display:none;background:none;border:1px solid var(--line);padding:9px 12px}.hero{min-height:calc(100vh - 86px);display:grid;grid-template-columns:1.04fr .96fr;padding:clamp(32px,5vw,72px) clamp(20px,5vw,76px);gap:clamp(28px,6vw,90px);align-items:center}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:#6d685e;margin:0 0 18px}.hero h1,.section-head h2,.statement h2,.booking h2{font-family:'Archivo Black',sans-serif;letter-spacing:-.055em;line-height:.9;margin:0}.hero h1{font-size:clamp(3.1rem,7vw,7.4rem)}.hero h1 span{color:var(--gold)}.lead{font-size:clamp(1.05rem,1.5vw,1.35rem);max-width:560px;margin:30px 0}.hero-actions{display:flex;align-items:center;gap:28px}.primary{background:var(--gold);color:var(--ink)}.text-link{font-weight:700;border-bottom:1px solid}.trust-row{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:46px;color:#777166;font-size:.85rem}.trust-row span:before{content:'•';color:var(--gold);padding-right:8px}.hero-image{height:min(72vh,760px);position:relative;background:#ddd;overflow:hidden}.hero-image img{height:100%;object-fit:cover}.image-tag{position:absolute;right:0;bottom:0;background:var(--ink);color:white;padding:11px 15px;font-size:.75rem}.statement{padding:clamp(80px,11vw,170px) clamp(20px,8vw,130px);display:grid;grid-template-columns:.55fr 1.45fr .7fr;gap:40px;align-items:start}.statement h2{font-size:clamp(2.6rem,5vw,5.7rem)}.statement h2 em{font-style:normal;color:var(--gold)}.statement>p:last-child{margin-top:4px;color:#625e56}.work,.prices{padding:clamp(72px,9vw,130px) clamp(20px,5vw,76px)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:46px}.section-head h2{font-size:clamp(2.5rem,5vw,5.4rem)}.section-head>p{max-width:430px;color:#6b675f}.gallery{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:150px;gap:14px}.gallery figure{margin:0;grid-column:span 4;grid-row:span 3;position:relative;overflow:hidden;background:#ddd}.gallery figure.wide{grid-column:span 8}.gallery figure.tall{grid-row:span 4}.gallery img{height:100%;object-fit:cover;transition:transform .7s ease}.gallery figure:hover img{transform:scale(1.035)}.gallery figcaption{position:absolute;bottom:0;left:0;background:rgba(0,0,0,.78);color:white;padding:9px 13px;font-size:.78rem}.services{background:var(--ink);color:white;padding:clamp(78px,10vw,150px) clamp(20px,7vw,110px)}.light .eyebrow{color:var(--gold)}.service-list{margin-top:40px;border-top:1px solid #363636}.service-list article{display:grid;grid-template-columns:90px 1fr;padding:34px 0;border-bottom:1px solid #363636}.service-list article>span{color:var(--gold)}.service-list h3{font-family:'Archivo Black';font-size:clamp(1.7rem,3vw,3.1rem);margin:0 0 8px}.service-list p{color:#aaa;max-width:680px;margin:0}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.price-grid article{border:1px solid var(--line);padding:30px;min-height:390px;display:flex;flex-direction:column;position:relative;background:#f8f6f0}.price-grid article.featured{background:var(--ink);color:white}.popular{position:absolute;right:20px;top:20px;background:var(--gold);color:var(--ink);font-size:.68rem;text-transform:uppercase;padding:6px 9px;font-weight:800}.price-type{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;font-weight:700}.price-grid h3{font-family:'Archivo Black';font-size:clamp(2.1rem,3vw,3.4rem);margin:10px 0 24px}.price-grid ul{list-style:none;padding:0;margin:0 0 28px;color:#706b62}.price-grid .featured ul{color:#bbb}.price-grid li{padding:8px 0;border-bottom:1px solid currentColor}.price-grid button{margin-top:auto;background:none;border:1px solid currentColor;padding:13px;font-weight:700;color:inherit;cursor:pointer}.price-grid button:hover{background:var(--gold);border-color:var(--gold);color:var(--ink)}.terms{font-size:.82rem;color:#736e65;max-width:900px;margin:28px 0 0}.booking{background:var(--gold);padding:clamp(70px,9vw,130px) clamp(20px,7vw,110px);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(45px,8vw,120px)}.booking h2{font-size:clamp(3rem,6vw,6.8rem)}.booking-intro>p:nth-of-type(2){max-width:520px;font-size:1.05rem}.booking-note{border-top:1px solid rgba(0,0,0,.35);margin-top:48px;padding-top:18px;display:grid;gap:6px}.booking-note span{font-size:.9rem;max-width:420px}form{background:var(--paper);padding:clamp(24px,4vw,50px)}label{display:grid;gap:8px;font-weight:700;font-size:.85rem;margin-bottom:20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #9f9b91;border-radius:0;padding:12px 2px;color:var(--ink);outline:none}textarea{border:1px solid #9f9b91;padding:12px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 2px 0 var(--gold)}.submit{width:100%;background:var(--ink);color:white;margin-top:8px}.form-status{font-size:.86rem;margin:12px 0 0;min-height:1.4em}footer{background:var(--ink);color:white;padding:38px clamp(20px,5vw,76px);display:flex;justify-content:space-between;align-items:center;gap:30px}footer img{width:62px;height:62px;border-radius:50%;object-fit:cover}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand div{display:grid}.footer-brand span,footer p{color:#999;margin:0;font-size:.85rem}footer a{color:var(--gold)}
@media(max-width:900px){.site-header nav{display:none;position:absolute;top:85px;left:0;right:0;background:var(--paper);padding:24px;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.menu-btn{display:block;margin-left:auto}.header-cta{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-image{height:65vh}.statement{grid-template-columns:1fr}.price-grid{grid-template-columns:1fr 1fr}.booking{grid-template-columns:1fr}.gallery figure,.gallery figure.wide{grid-column:span 6}.section-head{align-items:start;flex-direction:column}}@media(max-width:600px){.site-header{height:72px}.brand img{width:40px;height:40px}.brand span{font-size:.88rem}.site-header nav{top:71px}.hero{padding-top:50px}.hero-image{height:58vh}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.statement{padding-top:90px;padding-bottom:90px}.gallery{grid-auto-rows:125px}.gallery figure,.gallery figure.wide{grid-column:span 12;grid-row:span 3}.gallery figure.tall{grid-row:span 4}.price-grid{grid-template-columns:1fr}.price-grid article{min-height:340px}.field-row{grid-template-columns:1fr;gap:0}footer{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery img{transition:none}}
.gallery-filters{display:flex;flex-wrap:wrap;gap:10px;margin:-16px 0 30px}.gallery-filters button{border:1px solid var(--line);background:transparent;color:var(--ink);padding:10px 15px;font-weight:700;font-size:.84rem;cursor:pointer}.gallery-filters button:hover,.gallery-filters button:focus-visible,.gallery-filters button.active{background:var(--ink);border-color:var(--ink);color:white}.gallery-empty{min-height:280px;border:1px solid var(--line);display:grid;place-content:center;justify-items:center;text-align:center;padding:36px;background:#f8f6f0}.gallery-empty[hidden]{display:none}.gallery-empty strong{font-family:'Archivo Black',sans-serif;font-size:clamp(1.7rem,3vw,2.8rem)}.gallery-empty span{color:#6b675f;max-width:440px;margin:8px 0 20px}.gallery-empty a{font-weight:800;border-bottom:2px solid var(--gold)}.testimonials{background:var(--gold);padding:clamp(72px,9vw,130px) clamp(20px,7vw,110px);display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,8vw,120px);align-items:center}.testimonials h2{font-family:'Archivo Black',sans-serif;font-size:clamp(2.6rem,5vw,5.4rem);letter-spacing:-.055em;line-height:.9;margin:0}.testimonial-invite{background:var(--ink);color:white;padding:clamp(28px,5vw,58px);min-height:300px;display:flex;flex-direction:column;justify-content:space-between}.quote-mark{font-family:Georgia,serif;color:var(--gold);font-size:5rem;line-height:.6}.testimonial-invite p{font-size:clamp(1.35rem,2.2vw,2rem);line-height:1.28;margin:22px 0 32px}.testimonial-invite a{color:var(--gold);font-weight:800;align-self:flex-start;border-bottom:1px solid currentColor}
@media(max-width:900px){.testimonials{grid-template-columns:1fr}.testimonial-invite{min-height:260px}}
@media(max-width:600px){.gallery-filters{display:grid;grid-template-columns:1fr 1fr}.gallery-filters button{padding:11px 8px}.testimonial-invite{min-height:240px}}
.instagram-showcase{background:var(--ink);color:white;padding:clamp(72px,9vw,130px) clamp(20px,5vw,76px)}.instagram-showcase .section-head>p{color:#aaa}.instagram-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.instagram-grid .instagram-media{background:#171717;border:1px solid #353535!important;border-radius:0!important;box-shadow:none!important;margin:0!important;min-width:0!important;width:100%!important}.instagram-grid .instagram-media>a{min-height:420px;display:grid;place-content:center;padding:30px;color:var(--gold);font-weight:800;text-align:center}.instagram-cta{display:inline-flex;margin-top:34px;color:var(--gold);font-weight:800;border-bottom:1px solid currentColor;padding-bottom:3px}
@media(max-width:900px){.instagram-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.instagram-grid{grid-template-columns:1fr}.instagram-grid blockquote:last-child{grid-column:auto;max-width:none}.instagram-grid .instagram-media>a{min-height:300px}}
.payment-card{margin-top:28px;background:var(--ink);color:white;padding:24px;display:grid;gap:8px}.payment-card>span{text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--gold)}.payment-card>strong{font-family:'Archivo Black',sans-serif;font-size:clamp(1.75rem,3vw,2.7rem);line-height:1}.payment-card p{margin:5px 0 13px;color:#bbb;font-size:.88rem;max-width:430px}.payment-card a{display:inline-flex;justify-self:start;background:var(--gold);color:var(--ink);padding:12px 16px;font-weight:800}

.photographer{padding:clamp(72px,9vw,130px) clamp(20px,7vw,110px);display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:clamp(32px,7vw,100px);align-items:center}.photographer>img{width:100%;height:auto;max-width:520px}.photographer-copy h2{font-family:'Archivo Black',sans-serif;font-size:clamp(2.6rem,5vw,5.4rem);letter-spacing:-.045em;line-height:.95;margin:0 0 24px}.photographer-copy .photographer-role{font-weight:700}.photographer-copy>p:not(.eyebrow){font-size:1rem;max-width:570px}.photographer-copy .btn{margin-top:14px}@media(max-width:900px){.photographer{grid-template-columns:1fr}.photographer>img{max-width:460px}}
