/* Version 3: Version 1 with expanding selected work and a colour hero. */
.accordion-work{padding:0 var(--gutter) 100px}
.accordion-work .section-heading{border-top:1px solid var(--line);padding-top:32px;align-items:flex-end;margin-bottom:32px}
.accordion-work .section-heading h2{font-size:clamp(50px,6vw,95px)}
.accordion-work .section-heading>div:last-child{max-width:300px;font-size:12px}
.gallery-hint{color:var(--muted);font-size:10px;margin-top:14px}
.collection-strip{display:flex;gap:12px;min-width:0}
.collection-panel{min-width:0;flex:1 1 0;text-align:left;transition:flex-grow .65s cubic-bezier(.2,.7,.2,1);display:flex;flex-direction:column;justify-content:flex-start}
.collection-panel.is-active{flex-grow:3.6}
.collection-image{height:clamp(350px,39vw,610px);width:100%;position:relative;overflow:hidden;background:#e7e6e1}
.collection-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.7);transition:filter .6s,transform .8s}
.collection-panel.is-active img{filter:saturate(1);transform:scale(1.025)}
.panel-number{position:absolute;top:15px;left:15px;background:var(--paper);padding:4px 7px;font-size:9px}
.panel-open{position:absolute;right:16px;bottom:16px;width:40px;height:40px;border-radius:50%;background:var(--paper);display:grid;place-items:center;transform:translateY(65px);transition:transform .4s}
.is-active .panel-open,.collection-panel:focus-visible .panel-open{transform:translateY(0)}
.panel-caption{padding:15px 0 0;min-height:86px}
.panel-caption h3{font:12px/1.3 var(--sans);font-weight:500;transition:font-size .4s;overflow-wrap:anywhere}
.is-active .panel-caption h3{font:28px/1.1 var(--serif)}
.panel-caption>span{display:block;font-size:8px;letter-spacing:.5px;text-transform:uppercase;line-height:1.5;color:var(--muted);margin-top:8px;opacity:0;transition:opacity .25s}
.is-active .panel-caption>span{opacity:1}
.strip-footer{border-bottom:1px solid var(--line);padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:25px}
.strip-footer>.eyebrow{font-size:9px}
.strip-footer .text-link{font-size:11px}
.strip-controls{display:flex;gap:8px}
.strip-controls button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;transition:background .2s,color .2s}
.strip-controls button:hover{background:var(--ink);color:var(--paper)}
@media(max-width:850px){.collection-strip{overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;scrollbar-width:thin;scrollbar-color:var(--red) transparent;padding-bottom:14px;overscroll-behavior-x:contain}
.collection-panel,.collection-panel.is-active{flex:0 0 68%;scroll-snap-align:start;transition:none}
.collection-image{height:480px}
.panel-caption h3,.is-active .panel-caption h3{font:28px/1.1 var(--serif)}
.panel-caption>span{opacity:1}
.panel-open{transform:none}
.strip-footer>.eyebrow{display:none}
}
@media(max-width:700px){.accordion-work{padding:0 24px 60px}
.accordion-work .section-heading{display:block}
.accordion-work .section-heading h2{font-size:52px}
.accordion-work .section-heading>div:last-child{margin-top:20px}
.gallery-hint{margin-top:8px}
.collection-panel,.collection-panel.is-active{flex-basis:82%}
.collection-image{height:104vw;max-height:520px}
.panel-caption{min-height:75px}
.strip-footer{gap:12px;padding-top:12px}
.strip-footer .text-link{font-size:10px;gap:12px}
.strip-controls button{width:32px;height:32px}
}
.collection-panel[data-project="reflection"] img{object-position:20% 50%!important}
@media(prefers-reduced-motion:reduce){.collection-panel,.collection-image img,.panel-open,.panel-caption h3,.panel-caption>span{transition:none!important;transform:none!important}
}

.hero-art img{filter:none}

/* Version 2 closing treatment, shared by Version 3. */
.contact-section{background:var(--ink);color:var(--paper);padding:80px var(--gutter) 75px}.contact-section h2{font-size:clamp(65px,9vw,150px);max-width:1300px;line-height:1.03;margin:35px 0 50px}.contact-section .contact-row{border-color:#ffffff30}.contact-section .contact-row>p{color:#b9b8b1}.contact-section .text-link{border-color:#ffffff70}#footer{background:var(--ink);color:#c4c3bc;border-top:1px solid #ffffff25;padding-top:24px;padding-bottom:24px}
@media(max-width:700px){.contact-section{padding:55px 24px 40px}.contact-section h2{font-size:58px;margin:30px 0 35px}.contact-section .contact-row{gap:24px}#footer{padding-left:24px;padding-right:24px}}

/* Trim the supplied logo’s whitespace without resampling its artwork. */
.brand-logo-crop{display:block;position:relative;aspect-ratio:1313/418;overflow:hidden;max-width:100%;justify-self:start;align-self:center}
.brand-logo-crop img{position:absolute;width:173.8766%;max-width:none;height:auto;left:-39.147%;top:-174.1627%}
