/* Desktop composition. The established phone layout stays below 701px. */
@media(min-width:701px){
 .portfolio .wrap{width:calc(100% - 64px);max-width:1280px}
 .portfolio .header{height:82px;padding:0 max(32px,calc((100vw - 1280px)/2));gap:24px}
 .portfolio .header .brand{font-size:36px}
 .portfolio .header nav{gap:22px;font-size:12px}
 .portfolio .hero{display:grid;grid-template-columns:minmax(0,1fr) auto;width:calc(100% - 64px);max-width:1280px;margin:24px auto 0;height:clamp(520px,70vh,700px);min-height:0;max-height:none;background:#ece7dc;color:var(--ink)}
 .portfolio .hero-photo{position:relative;inset:auto;height:100%;width:calc(clamp(520px,70vh,700px)*.6665);min-width:0;background:#ece7dc}
 .portfolio .hero-photo>img{width:100%;height:100%;object-fit:contain;object-position:center}
 .portfolio .hero-photo:after{display:none}
 .portfolio .hero-copy{width:auto;max-width:none;min-height:0;padding:40px;justify-content:center}
 .portfolio .hero h1{font-size:clamp(46px,5.1vw,76px);line-height:1.02;margin-bottom:22px}
 .portfolio .hero h1 em{color:var(--gold)}
 .portfolio .hero .eyebrow{font-size:9px;color:#68695e;margin:0 0 20px;letter-spacing:.13em}
 .portfolio .hero .intro{color:#68695e;font-size:14px;max-width:350px;margin-bottom:24px}
 .portfolio .hero .button{background:var(--ink);color:var(--paper);border-color:var(--ink)}
 .portfolio .hero .button:hover{background:#405145}
 .portfolio .hero-bottom{color:#68695e;margin:30px 0 0;padding:0;letter-spacing:.07em}
 .portfolio .photo-label{display:none}
 .portfolio .statement{grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:45px 0 40px}
 .portfolio .statement h2{font-size:clamp(40px,3.6vw,54px)}
 .portfolio .statement .eyebrow{margin-bottom:15px}
 .portfolio .statement>div:last-child{padding:0;max-width:480px}
 .portfolio .statement p:not(.eyebrow){margin-bottom:12px}
 .portfolio .frame-row{display:none}
 .portfolio .stories{padding-top:24px;padding-bottom:48px}
 .portfolio .section-head{gap:30px;margin-bottom:24px;align-items:center}
 .portfolio .section-head h2{font-size:clamp(38px,3.4vw,52px)}
 .portfolio .filters{margin-top:20px;margin-bottom:26px;gap:26px}
 .portfolio .album-grid{display:block;columns:3;column-gap:26px}
 .portfolio .album-grid .album:nth-child(n){display:inline-block;vertical-align:top;width:100%;padding:0;margin:0 0 34px;background:none;break-inside:avoid;overflow:visible}
 .portfolio .album-grid .album:nth-child(n)>img{display:block;width:100%;height:auto;max-height:none;aspect-ratio:auto;object-fit:contain;transform:none}
 .portfolio .album-grid .album:nth-child(n) .album-caption{padding:15px 0 0}
 .portfolio .album-grid .album h3{font-size:30px;line-height:1.12;margin-bottom:10px}
 .portfolio .album-grid .album p{max-width:none;margin-bottom:12px;line-height:1.7;font-size:12px}
 .portfolio .album-caption .eyebrow{font-size:8px;margin-bottom:8px}
 .portfolio .occasion{grid-template-columns:300px 1fr;gap:48px;padding:32px 40px;margin-bottom:48px;background:#ece7dc}
 .portfolio .occasion-photo{max-width:300px}
 .portfolio .occasion-copy{max-width:650px}
 .portfolio .occasion-copy h2{font-size:clamp(36px,3.2vw,48px)}
 .portfolio .occasion-copy p:not(.eyebrow){max-width:560px}
 .portfolio .chapter{grid-template-columns:1fr 1fr;min-height:0;max-width:1344px;margin:0 auto}
 .portfolio .chapter-copy{padding:40px;max-width:none}
 .portfolio .chapter h2{font-size:clamp(44px,4vw,62px)}
 .portfolio .chapter p:not(.eyebrow){max-width:420px}
 .portfolio .chapter-image{height:540px}
 .portfolio .experience{padding:48px 0}
 .portfolio .steps{gap:36px;margin-top:28px;padding-top:25px}
 .portfolio .steps h3{font-size:25px;margin:12px 0}
 .portfolio .steps p{max-width:none}
 .portfolio .sessions{padding-top:48px;padding-bottom:48px}
 .portfolio .packages{gap:18px}
 .portfolio .package{padding:28px 24px}
 .portfolio .package h3{font-size:32px}
 .portfolio .package-label{margin-bottom:18px}
 .portfolio .extras{margin-top:28px;padding-top:20px}
 .portfolio .about{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:center;padding:32px;margin-bottom:48px;border:1px solid var(--line)}
 .portfolio .about-image{max-width:340px;margin:auto}
 .portfolio .about-image>img{height:auto;width:100%;object-fit:contain}
 .portfolio .about-copy{max-width:650px}
 .portfolio .about h2{font-size:clamp(40px,3.7vw,55px)}
 .portfolio .faq{padding:36px 0 48px;gap:48px}
 .portfolio .faq h2{font-size:clamp(38px,3.4vw,50px)}
 .portfolio .contact{padding:48px 0}
 .portfolio .contact h2{font-size:clamp(42px,3.8vw,58px)}
 .portfolio .contact-grid{gap:56px}
 .portfolio .footer{padding-top:28px;padding-bottom:28px}
 .portfolio .service-links{padding-top:30px;padding-bottom:28px}
 #gallery{max-width:1280px;width:94vw}
}
@media(min-width:701px) and (max-width:1100px){
 .portfolio .header nav{gap:12px;font-size:10px}
 .portfolio .header .brand{font-size:32px}
 .portfolio .hero-copy{padding:28px}
 .portfolio .hero h1{font-size:clamp(42px,5.2vw,58px)}
 .portfolio .album-grid{columns:2;column-gap:24px}
 .portfolio .occasion{grid-template-columns:240px 1fr;gap:30px;padding:28px}
 .portfolio .chapter-copy{padding:30px}
 .portfolio .chapter h2{font-size:45px}
 .portfolio .chapter-image{height:480px}
 .portfolio .package{padding:22px 16px}
 .portfolio .package h3{font-size:28px}
 .portfolio .steps{gap:24px}
}

@media(min-width:701px){.portfolio .offerings{padding-top:20px;padding-bottom:40px}.portfolio .offering h3{font-size:26px}.portfolio .header nav{gap:18px}}
@media(min-width:1101px){.portfolio .offerings-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:1100px){.portfolio .header nav{gap:10px}}
