/* Additive project and catalogue components; approved v2 layout and photo treatment retained. */
.featured-projects{grid-template-columns:repeat(3,minmax(0,1fr))}.featured-projects .teaser-card{min-height:370px}.featured-projects .teaser-card>img{height:370px}.featured-projects .teaser-card strong{font-family:'Playfair Display',Georgia,serif;font-weight:400}.featured-projects .teaser-card>span{left:22px}.featured-projects .teaser-card i{right:18px}.project-overview{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.project-full-photo{margin:0;background:var(--surface)}.project-full-photo img{width:100%;max-height:730px;object-fit:contain}.project-full-photo figcaption{padding:15px 18px;font-size:8px;letter-spacing:1px;color:var(--muted);border-top:1px solid var(--line)}.project-copy h2{font-size:36px;margin-bottom:22px}.project-copy>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}.project-facts{margin:30px 0}.project-facts>div{padding:15px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:135px 1fr;gap:20px}.project-facts dt{font-size:8px;letter-spacing:1px;color:var(--muted)}.project-facts dd{font-size:11px;margin:0;overflow-wrap:anywhere}.project-back{display:flex;margin-top:24px}.project-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-detail-card{margin:0;background:var(--card)}.project-crop{height:310px;overflow:hidden;background:var(--surface)}.project-crop img{height:100%;width:100%;object-fit:cover;object-position:var(--focus);transform:scale(1.7);transform-origin:var(--origin)}.project-detail-card figcaption{padding:28px 30px}.project-detail-card .eyebrow{display:block;font-size:8px;letter-spacing:1.2px}.project-detail-card h3{font-family:'Playfair Display',Georgia,serif;font-size:26px;font-weight:400;margin-bottom:14px}.project-detail-card p{font-size:12px;line-height:2;color:var(--muted)}.project-brief{display:grid;grid-template-columns:1.4fr 1fr;gap:90px;align-items:center}.project-brief h2{font-size:37px;margin-bottom:22px}.project-brief p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted);margin-bottom:25px}.project-brief li{border-bottom:1px solid var(--line);padding-top:12px;padding-bottom:12px}.related-projects{display:flex;justify-content:space-between;align-items:center;gap:35px}.related-projects h2{font-size:30px}.related-projects>div{display:flex;gap:15px}.catalogue-band{border-top:1px solid var(--line)}.catalogue-band-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.catalogue-band-cover{background:var(--surface);padding:22px;display:block;border:1px solid var(--line)}.catalogue-band-cover img{width:100%;height:auto}.catalogue-band h2{font-size:38px;line-height:1.25;margin-bottom:20px}.catalogue-band p:not(.eyebrow){font-size:11px;color:var(--muted);margin-bottom:25px}.catalogue-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:75px;align-items:center}.catalogue-large-cover{display:block;padding:20px;background:var(--surface);border:1px solid var(--line)}.catalogue-copy h2{font-size:39px;margin-bottom:22px}.catalogue-copy>p:not(.eyebrow){font-size:13px;line-height:1.95;color:var(--muted);margin-bottom:19px}.catalogue-copy .catalogue-meta{font-size:11px!important;letter-spacing:.2px}.catalogue-actions{display:flex;align-items:flex-start;flex-direction:column;gap:20px;margin:27px 0}.catalogue-copy .small-note{font-size:11px!important;border-top:1px solid var(--line);padding-top:22px}.quote-extra{border-top:1px solid var(--line);padding-top:22px;margin-top:24px}.quote-extra label{min-width:0}.quote-extra small{display:block;color:var(--muted);font-size:10px;line-height:1.8;font-weight:400;margin-top:8px}.quote-extra input[type=file]{height:auto;min-height:48px;width:100%;font-size:10px;padding:10px;overflow:hidden}.quote-extra input::file-selector-button{font:inherit;border:1px solid var(--line);padding:5px 8px;margin-right:8px;color:var(--text);background:var(--surface);cursor:pointer}.quote-extra input[aria-invalid=true]{border-color:#a24135}#dialog-detail{display:block;margin-top:20px}#dialog-detail[hidden]{display:none}.gallery-story-links{display:flex;flex-wrap:wrap;gap:12px 25px;align-items:center;font-size:11px;border-bottom:1px solid var(--line);padding-bottom:23px;margin-bottom:28px}.gallery-story-links>span{font-size:9px;color:var(--muted);letter-spacing:.6px;margin-right:auto}.gallery-story-links a{text-decoration:underline;text-underline-offset:5px}.footer-catalogue{margin-top:7px}.header-inner,.footer-grid,.contact-layout{min-width:0}@media(max-width:1050px){.project-overview{gap:45px}.project-brief{gap:45px}.catalogue-layout,.catalogue-band-inner{gap:45px}.featured-projects .teaser-card strong{font-size:27px}.featured-projects .teaser-card>span{left:18px}.featured-projects .teaser-card small{font-size:7px}.featured-projects .teaser-card i{width:30px;height:30px;right:15px}.featured-projects .teaser-card>img{height:335px}.featured-projects .teaser-card{min-height:335px}.project-facts>div{grid-template-columns:110px 1fr}}@media(max-width:760px){.project-overview,.project-detail-grid,.project-brief,.catalogue-layout,.catalogue-band-inner{grid-template-columns:1fr;gap:35px}.project-full-photo img{max-height:none}.project-copy h2,.project-brief h2,.catalogue-band h2{font-size:33px}.project-detail-card figcaption{padding:25px}.project-crop{height:290px}.related-projects{align-items:flex-start;flex-direction:column}.related-projects h2{font-size:29px}.related-projects>div{flex-wrap:wrap}.featured-projects{grid-template-columns:1fr}.featured-projects .teaser-card>img{height:370px}.featured-projects .teaser-card{min-height:370px}.featured-projects .teaser-card small{font-size:8px}.featured-projects .teaser-card>span{left:25px}.featured-projects .teaser-card strong{font-size:32px}.catalogue-band-cover,.catalogue-large-cover{padding:12px}.quote-extra{grid-template-columns:1fr}.project-facts>div{grid-template-columns:115px 1fr}.catalogue-copy h2{font-size:34px}.gallery-story-links>span{width:100%}}@media(max-width:365px){.project-facts>div{grid-template-columns:1fr;gap:6px}.project-copy .btn,.catalogue-actions .btn{width:100%;gap:15px}.project-crop{height:250px}}
