/* Photo proposal based exclusively on the original V18. */
.photo-update .main-header{display:flex;align-items:center;justify-content:space-between;padding-block:22px;z-index:30;gap:24px}
.photo-update #navigation{margin-left:auto;justify-content:flex-end;gap:25px}
.photo-update .nav-panel{left:auto;right:0}
.work-nav-group{position:relative;display:flex;align-items:center;gap:3px}.work-nav-group>a{display:flex;align-items:center;padding-block:10px}.work-nav-toggle{width:36px;color:var(--peach);font-size:21px}.work-nav-panel{position:absolute;right:0;top:100%;min-width:250px;padding:12px;background:#1c1c1a;border:1px solid var(--line);box-shadow:0 16px 38px #0005}.work-nav-panel a{display:flex;align-items:center;padding:9px 12px}.work-nav-panel a:last-child{border-top:1px solid var(--line)}
.photo-update .photo-opening{position:relative;display:grid;grid-template-columns:1.12fr 1fr;gap:0;align-items:center;min-height:670px;padding-block:40px 90px;isolation:isolate!important;overflow:hidden!important}
.photo-update .photo-opening .hero-content{max-width:none;width:100%;z-index:2;padding-block:45px;pointer-events:none}.photo-opening .hero-content a{pointer-events:auto}
.photo-update .photo-opening h1{font-size:clamp(2.4rem,4.7vw,4.5rem);max-width:17ch;line-height:1.09;color:var(--paper);text-wrap:balance}.photo-update .photo-opening h1::first-line{color:inherit}
.photo-update .photo-opening .hero-subtitle{font-size:18px;line-height:1.65;margin-top:30px;max-width:33ch}
.opening-photos{position:absolute;inset:0 0 0 43%;z-index:0;overflow:hidden}.opening-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.5s ease}.opening-slide.is-active{opacity:1}.opening-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 32%;mask-image:linear-gradient(90deg,transparent,#000 24%,#000),linear-gradient(180deg,#000 65%,transparent 100%);mask-composite:intersect}
.photo-select{position:absolute;bottom:78px;right:9%;display:flex;gap:8px;z-index:3}.photo-select button{width:44px;min-height:44px;border-bottom:1px solid #eee8de55;background:#141413bb;color:#eee8de;font-size:12px;letter-spacing:.1em}.photo-select button[aria-pressed=true]{border-color:var(--peach);color:var(--peach)}
.photo-update .home-projects{position:relative;padding-top:10px;padding-bottom:80px;border:0}.home-projects>h2{margin-bottom:32px}.project-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;align-items:start}.project-card{min-width:0}.project-card>a{display:block}.project-card:nth-child(2){padding-top:50px}.project-card:nth-child(3){padding-top:100px}.project-picture{aspect-ratio:4/3;overflow:hidden;background:#20201d;border:1px solid var(--line)}.project-picture img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}.project-card:nth-child(3) .project-picture{aspect-ratio:4/5}.project-card:nth-child(3) img{object-position:50% 40%}.project-card a:hover img{transform:scale(1.025)}.project-label{display:grid;grid-template-columns:25px 1fr 20px;gap:10px;align-items:baseline;border-bottom:1px solid var(--line);padding:19px 0 22px}.project-label h3{font-size:clamp(1.3rem,2vw,1.85rem)}.project-label p{font-size:12px;margin-top:8px}.project-number{font-size:11px;color:var(--peach)}.project-label>span:last-child{font-size:23px;color:var(--peach)}
.photo-update .home-services{padding-block:65px 80px;border-top:1px solid var(--line)}.service-list{display:grid;gap:0;margin-top:40px}.service-row{min-width:0;border-top:1px solid var(--line)}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row-link{display:grid;grid-template-columns:35px 130px 1fr 1.05fr 30px;align-items:center;gap:28px;min-height:140px;padding:20px 0;transition:background .2s}.service-row-link:hover{background:#dbab8808}.service-number{font-size:12px;color:var(--peach)}.service-row-image{height:100px;width:130px;overflow:hidden}.service-row-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.service-row:nth-child(4) img{object-position:center 30%}.service-row h3{font-size:clamp(1.35rem,2vw,1.9rem);max-width:18ch}.service-row p{font-size:14px;line-height:1.7;max-width:42ch}.service-arrow{font-size:28px;color:var(--peach)}
.photo-update .wedding-editorial{padding:50px 5%;border-top:1px solid var(--line);scroll-margin-top:25px}.wedding-intro{display:grid;grid-template-columns:.85fr 1fr;align-items:center;gap:8%;margin-bottom:40px}.wedding-intro h2{font-size:clamp(2.6rem,5vw,5rem);margin-bottom:18px}.wedding-intro p{font-size:15px}.wedding-intro a{margin-top:25px}.wedding-intro>img{width:100%;height:auto;max-height:700px;object-fit:contain}.wedding-photo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}.wedding-photo-grid figure,.portrait-selection figure{margin:0}.wedding-photo-grid img{display:block;width:100%;height:auto}.portrait-selection{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;align-items:start}.portrait-selection img{display:block;width:100%;height:auto}.photographic-selection>.text-link{margin-top:24px}
@media(min-width:1600px){.photo-update .photo-opening{min-height:760px}.opening-photos{right:5%}}
@media(max-width:1000px){.photo-update .main-header{gap:15px;flex-wrap:wrap}.photo-update #navigation{gap:18px}.photo-update .main-header .signature{font-size:18px}.photo-update .photo-opening{min-height:600px}.photo-update .photo-opening h1{font-size:3rem}.project-grid{gap:18px}.project-label{grid-template-columns:1fr 18px;gap:5px}.project-number{display:none}.service-row-link{grid-template-columns:25px 90px 1fr 1fr 24px;gap:18px}.service-row-image{width:90px;height:90px}}
@media(max-width:700px){.photo-update .main-header{padding:16px 5%;gap:10px}.photo-update .main-header .signature{font-size:16px;white-space:normal;max-width:78%}.photo-update .mobile-toggle{display:block;margin-left:auto}.photo-update #navigation{display:none;width:100%;margin:0;flex-direction:column;align-items:stretch;gap:3px}.photo-update #navigation.is-open{display:flex}.photo-update .nav-group,.work-nav-group{flex-wrap:wrap}.photo-update .nav-group>a,.work-nav-group>a{flex:1}.photo-update .nav-panel,.work-nav-panel{position:static;width:100%;min-width:0;box-shadow:none}.photo-update .photo-opening{display:block;min-height:690px;padding-top:28px;padding-bottom:355px}.photo-update .photo-opening .hero-content{padding:0;max-width:100%}.photo-update .photo-opening h1{font-size:clamp(2rem,8.2vw,3rem);max-width:19ch}.photo-update .photo-opening .hero-subtitle{font-size:16px;margin-top:22px}.opening-photos{inset:auto -4% 0 12%;height:420px}.opening-slide img{object-position:50% 28%;mask-image:linear-gradient(90deg,transparent,#000 20%,#000 90%,transparent),linear-gradient(180deg,transparent,#000 16%,#000 65%,transparent 100%);mask-composite:intersect}.photo-select{bottom:45px;right:12%}.photo-update .home-projects{padding-top:5px;padding-bottom:45px}.project-grid{grid-template-columns:1fr;gap:32px}.project-card:nth-child(n){padding:0}.project-card:nth-child(3) .project-picture{aspect-ratio:4/3}.project-label{grid-template-columns:25px 1fr 20px}.project-number{display:block}.project-label h3{font-size:1.75rem}.home-projects>h2{font-size:2rem}.photo-update .home-services{padding-block:40px}.service-row-link{grid-template-columns:23px 1fr 64px 22px;gap:10px;padding:20px 0;min-height:0}.service-row-image{grid-column:3;grid-row:1/3;width:64px;height:90px}.service-row h3{grid-column:2;grid-row:1;font-size:1.35rem}.service-row p{grid-column:2;grid-row:2;font-size:13px;line-height:1.65}.service-number{grid-column:1;grid-row:1}.service-arrow{grid-column:4;grid-row:1/3;font-size:23px}.photo-update .wedding-editorial{padding:30px 5%}.wedding-intro{grid-template-columns:1fr;gap:28px}.wedding-photo-grid{grid-template-columns:1fr 1fr;gap:12px}.portrait-selection{gap:12px}.portrait-selection figure:last-child{display:none}.portrait-selection{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.opening-slide,.project-picture img{transition:none!important}.photo-update *{animation:none!important;scroll-behavior:auto!important}}
