/* Photography-led project layouts and the supplied brand identity. */
:root{--serif:'Cormorant Garamond',Georgia,serif}
h1,h2{font-weight:400;letter-spacing:-.025em;line-height:1.02}
h2{font-size:clamp(3.125rem,5.5vw,5rem)}
.hero h1{font-size:clamp(4.5rem,7.7vw,7.5rem);letter-spacing:-.03em;line-height:1.02}
.hero h1 em{color:#f1e7d6}
.hero-photo{object-position:var(--focus,50% 54%)}
.project-card img,.next-preview img{object-position:var(--focus,50% 50%)}
.project-card.format-landscape img{aspect-ratio:1.45}
.project-card.format-portrait img{aspect-ratio:4/5}
.project-label{display:flex;gap:22px;align-items:baseline}
.project-label .project-index{flex:none;color:#857249;font-size:.75rem;letter-spacing:.05em;margin-top:0;min-width:24px}
.project-label h3{font-size:clamp(1.25rem,1.7vw,1.5rem)}
.project-label>div{min-width:0}
.project-label>div>span:empty{display:none}
.section-heading .eyebrow:before{content:'';display:inline-block;width:27px;height:1px;background:currentColor;vertical-align:middle;margin-right:12px}
.footer-title{font-size:clamp(2.75rem,5.3vw,5rem);letter-spacing:-.02em}
.footer-brand{display:flex;align-items:center;gap:20px}
.brand-mark{width:58px;height:58px;filter:contrast(1.4);mix-blend-mode:lighten}
.footer-brand>span{font-size:1.05rem;letter-spacing:.12em}
.footer-brand .footer-tag{letter-spacing:.02em;margin-top:8px}
.footer-bottom{align-items:center}
.footer-bottom a:last-child{align-items:center}
.project-intro{padding-top:48px;padding-bottom:44px}
.project-topline{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:36px}
.project-topline .back-link{margin:0}
.project-topline .eyebrow{color:#857249;margin:0;flex-shrink:0}
.project-title{display:block}
.project-title h1{max-width:1040px;font-size:clamp(3.5rem,7.5vw,7.5rem);text-wrap:balance}
.project-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 30px;padding-top:27px;margin-top:35px;border-top:1px solid var(--rule);font-size:.875rem;line-height:1.7}
.project-meta>span:empty{display:none}
.project-meta a{font-size:.8125rem;min-height:44px;display:flex;align-items:center}
.detail-cover{padding:0 4% 82px}
.detail-cover.cover-portrait{padding-left:26%;padding-right:26%}
.project-figure{margin:0;min-width:0}
.project-figure .gallery-item{display:block;width:100%;line-height:0}
.detail-cover img{height:auto;max-height:none;aspect-ratio:auto var(--photo-ratio);object-fit:contain}
.project-figure figcaption{border-top:1px solid var(--rule);padding-top:14px;margin-top:17px;display:flex;justify-content:space-between;gap:18px;font-size:.75rem;letter-spacing:.035em;line-height:1.6;color:var(--muted)}
.project-figure figcaption span:last-child{text-align:right}
.project-figure figcaption span:first-child{flex:none;white-space:nowrap}
.project-figure figcaption span:last-child{min-width:0;overflow-wrap:anywhere}
/* Each project has its own visual note, with the full photograph intact. */
.craft-section{display:grid;grid-template-columns:.82fr 1.18fr;gap:10%;align-items:center;padding-top:100px;padding-bottom:100px;background:#eeece5;color:var(--ink)}
.craft-heading{min-width:0}
.craft-heading .eyebrow{color:#796b52;margin-bottom:26px;font-size:.75rem;letter-spacing:.19em}
.craft-heading h2{font-size:clamp(3.125rem,4.8vw,5rem);line-height:1.08;letter-spacing:-.02em;text-wrap:balance;max-width:9em}
.craft-description{font-size:1rem;line-height:1.95;color:#60645d;max-width:34em;margin:28px 0 0;text-wrap:pretty}
.craft-rule{display:block;width:48px;height:1px;background:#a091744d;margin:32px 0 20px}
.craft-signature{display:block;font-size:.75rem;line-height:1.8;letter-spacing:.07em;color:#6d7168}
.craft-photo .gallery-item img{width:100%;height:auto;aspect-ratio:auto var(--photo-ratio);max-height:720px;object-fit:contain}
.craft-photo .gallery-item{background:transparent}
.craft-photo figcaption{color:#60645d;border-color:#c9c8bd}
.craft-section.photo-left{grid-template-columns:1.18fr .82fr}
.craft-section.photo-left .craft-heading{grid-column:2;grid-row:1}
.craft-section.photo-left .craft-photo{grid-column:1;grid-row:1}
.craft-section.tone-dark{background:var(--dark);color:var(--paper)}
.tone-dark .craft-heading .eyebrow{color:#c8bda7}
.tone-dark .craft-description,.tone-dark .craft-signature,.tone-dark .craft-photo figcaption{color:#bcc0b7}
.tone-dark .craft-rule,.tone-dark .craft-photo figcaption{border-color:#ffffff26}
.tone-dark .craft-rule{background:#c8bda74d}
.project-note{display:grid;grid-template-columns:.45fr 1fr;gap:9%;border-top:1px solid var(--rule);padding-top:70px;padding-bottom:90px}
.project-note>.eyebrow{color:#796b52;padding-top:7px}
.project-note .craft-heading h2{max-width:13em}
.project-note .craft-description{max-width:42em}
.editorial-gallery{padding-top:100px;padding-bottom:110px}
.editorial-gallery .gallery-heading{margin-bottom:45px}
.editorial-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:85px 55px;align-items:start}
.editorial-grid .image-left{grid-column:span 7}
.editorial-grid .image-right{grid-column:span 5;margin-top:105px}
.editorial-grid .full-width{grid-column:1/-1}
.editorial-grid .portrait-solo{grid-column:1/-1;width:52%;justify-self:center}
.editorial-grid img{width:100%;height:auto;aspect-ratio:auto var(--photo-ratio);object-fit:contain}
.next-project{display:grid;grid-template-columns:1fr .43fr;align-items:center;gap:70px;padding-top:60px;padding-bottom:60px}
.next-project-copy{min-width:0}
.next-title{font-size:clamp(2.625rem,4.8vw,4.75rem);line-height:1.05;letter-spacing:-.02em}
.next-arrow{display:inline-block;font-size:2rem;margin-top:25px;transition:transform .3s ease}
.next-project:hover .next-arrow{transform:translate(6px,-6px)}
.next-preview{overflow:hidden}
.next-preview img{width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .7s ease}
.next-project:hover .next-preview img{transform:scale(1.035)}
.lightbox-count{font-variant-numeric:tabular-nums}
@media(max-width:1000px){.craft-section{gap:7%}.editorial-grid{gap:65px 35px}.next-project{gap:40px}.project-title h1{font-size:clamp(3.5rem,8vw,6rem)}}
@media(max-width:760px){
 h2{font-size:clamp(2.875rem,8vw,4rem)}
 .hero h1{font-size:clamp(3.375rem,10.6vw,5.25rem)}
 .hero-photo{object-position:var(--mobile-focus,58% 50%)}
 .project-card img,.next-preview img{object-position:var(--mobile-focus,50% 50%)}
 .project-label{gap:15px}
 .project-card.format-portrait .project-image{max-width:86%;margin-left:auto;margin-right:auto}
 .project-card.format-portrait .project-label{max-width:86%;margin-left:auto;margin-right:auto}
 .project-topline{margin-bottom:25px;gap:15px}
 .project-topline .eyebrow{font-size:.75rem;letter-spacing:.06em}
 .project-title h1{font-size:clamp(3rem,10.8vw,4.75rem)}
 .project-intro{padding-top:25px;padding-bottom:28px}
 .project-meta{gap:6px 20px;margin-top:25px;padding-top:16px;font-size:.8125rem}
 .project-meta a{width:100%}
 .detail-cover{padding:0 5% 55px}
 .detail-cover.cover-portrait{padding-left:13%;padding-right:13%}
 .project-figure figcaption{font-size:.75rem;gap:14px;padding-top:12px;margin-top:12px}
 .craft-section,.craft-section.photo-left{grid-template-columns:1fr;gap:35px;padding-top:56px;padding-bottom:56px}
 .craft-section.photo-left .craft-heading,.craft-section.photo-left .craft-photo{grid-column:auto;grid-row:auto}
 .craft-heading .eyebrow{margin-bottom:18px}
 .craft-heading h2{font-size:clamp(2.875rem,9vw,4rem);max-width:11em}
 .craft-description{font-size:1rem;line-height:1.9;margin-top:22px}
 .craft-rule{margin-top:25px;margin-bottom:16px}
 .craft-photo{width:100%}
 .project-note{grid-template-columns:1fr;gap:20px;padding-top:46px;padding-bottom:60px}
 .project-note>.eyebrow{margin:0 0 8px}
 .editorial-gallery{padding-top:60px;padding-bottom:65px}
 .editorial-grid{grid-template-columns:1fr;gap:42px}
 .editorial-grid .image-left,.editorial-grid .image-right,.editorial-grid .full-width{grid-column:1;margin:0}
 .editorial-grid .portrait-solo{grid-column:1;width:86%}
 .editorial-gallery .gallery-heading{margin-bottom:30px}
 .next-project{grid-template-columns:1fr;gap:30px;padding-top:45px;padding-bottom:45px}
 .next-title{font-size:2.875rem}
 .next-project .eyebrow{margin-bottom:20px}
 .next-arrow{font-size:1.75rem;margin-top:15px}
 .next-preview{max-width:70%;justify-self:end}
 .footer-title{font-size:2.875rem}
 .footer-bottom{align-items:flex-start;gap:25px}
 .footer-brand{flex-basis:100%}
 .brand-mark{width:48px;height:48px}
}
@media(max-width:380px){.hero h1{font-size:3.125rem}.project-title h1{font-size:3rem}.next-title{font-size:2.5rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* Restrained framing lets the furniture and metalwork carry the page. */
:root{--gold:#b2a184;--rule:#d6d5cb}
.hero-shade{background:linear-gradient(90deg,rgba(12,17,14,.48),rgba(12,17,14,.02) 76%),linear-gradient(0deg,rgba(12,17,14,.54),transparent 68%)}
.project-label h3{font-family:var(--serif);font-size:clamp(1.625rem,2.2vw,2.125rem);font-weight:500;line-height:1.15;letter-spacing:-.01em}
.project-label>div>span{font-size:.75rem;margin-top:10px}
.project-label .project-index{color:#777b72}
.project-open,.zoom-hint{border:1px solid #f5f3ed66;border-radius:0;background:#1b1f1da6;color:#f5f3ed;backdrop-filter:blur(6px)}
.project-card:hover .project-open,.project-card:focus-visible .project-open{background:#1b1f1dd9;color:#f5f3ed;transform:none}
.project-image img,.gallery-item img{transition:transform .9s cubic-bezier(.2,.65,.3,1)}
.project-card:hover .project-image img,.gallery-item:hover img{transform:scale(1.018)}
@media(hover:hover) and (pointer:fine){.zoom-hint{opacity:0;transition:opacity .25s ease}.gallery-item:hover .zoom-hint,.gallery-item:focus-visible .zoom-hint{opacity:1}}
@media(min-width:761px){.projects .section-heading{margin-bottom:64px}.expertise{padding-top:110px;padding-bottom:110px}}
@media(max-width:760px){.project-label h3{font-size:1.75rem}.project-label{flex-wrap:nowrap}.project-label .project-index{margin-top:2px}.project-open,.zoom-hint{width:38px;height:38px;bottom:14px;right:14px}.project-note .craft-heading h2{max-width:10em}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* Audit refinements: preserve image definition and a readable secondary scale. */
.cover-figure{max-width:min(100%,var(--image-width));margin-inline:auto}
.editorial-grid .full-width{width:100%;max-width:min(100%,var(--gallery-width));justify-self:center}
.project-meta a{font-size:.875rem}
.footer-compact{padding-top:48px;padding-bottom:48px}
.footer-compact .footer-bottom{margin-top:0;padding-top:0;border-top:0}
@media(max-width:760px){.project-meta{font-size:.875rem}.craft-description{line-height:1.8}.craft-heading .eyebrow{letter-spacing:.13em}.project-topline .eyebrow{letter-spacing:.04em}.footer-compact{padding-top:38px;padding-bottom:38px}}
