/* Current Projects — visual project pages */
.projects-mast{padding:94px 0 78px;background:linear-gradient(135deg,#f7fafb 0%,#eef5f8 55%,#fff 100%);border-bottom:1px solid var(--line)}.projects-mast h1{max-width:920px;font-size:clamp(48px,7vw,86px)}.projects-mast p{max-width:760px;margin:28px 0 0;font-size:19px;color:var(--muted)}
.project-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card{position:relative;min-height:430px;overflow:hidden;border:1px solid var(--line);text-decoration:none;background:#17262e;color:#fff}.project-card-feature{grid-column:1/-1;min-height:540px}.project-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.62) contrast(.98);transition:transform .45s ease,filter .45s ease}.project-card:hover img{transform:scale(1.025);filter:saturate(.8) contrast(1)}.project-card-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,22,30,.94) 0%,rgba(7,22,30,.55) 45%,rgba(7,22,30,.08) 82%)}.project-card-copy{position:absolute;inset:auto 0 0;padding:34px;display:flex;flex-direction:column;align-items:flex-start}.project-card-copy small{text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:700;opacity:.85}.project-card-copy strong{margin-top:10px;font-size:clamp(29px,4vw,48px);line-height:1.04;letter-spacing:-1.4px;color:#fff}.project-card-copy strong i{font-style:normal;font-weight:400;opacity:.78}.project-card-copy em{margin-top:11px;max-width:620px;font-style:normal;font-size:15px;color:rgba(255,255,255,.82)}.project-card-copy b{margin-top:23px;font-size:11px;text-transform:uppercase;letter-spacing:1.2px;font-weight:400;border-bottom:1px solid rgba(255,255,255,.55)}.project-card-quiet img{filter:grayscale(.72) contrast(.92)}
.project-card-dreamers{background:radial-gradient(circle at 78% 18%,rgba(198,157,95,.34),transparent 27%),linear-gradient(145deg,#24566b 0%,#102b38 48%,#07171f 100%)}.project-card-dreamers .project-card-overlay{background:linear-gradient(0deg,rgba(4,17,24,.96) 0%,rgba(4,17,24,.38) 58%,rgba(4,17,24,.04) 100%)}
.stage-project{display:grid;grid-template-columns:1fr 220px;gap:40px;align-items:center;padding:48px;border:1px solid var(--line);background:#fff;text-decoration:none;color:var(--ink)}.stage-project small{color:var(--blue-dark);text-transform:uppercase;letter-spacing:1.5px;font-size:10px;font-weight:700}.stage-project h3{margin:12px 0 15px;font-size:clamp(34px,5vw,58px);line-height:1.02;letter-spacing:-2px}.stage-project h3 span{font-weight:400}.stage-project p{color:var(--muted);max-width:760px}.stage-project b{display:inline-block;margin-top:20px;font-size:11px;text-transform:uppercase;letter-spacing:1.1px}.stage-project-mark{width:180px;height:180px;border-radius:50%;display:grid;place-items:center;justify-self:end;border:1px solid var(--line);background:var(--pale);color:var(--blue-dark);font-size:58px;letter-spacing:-4px}
.project-hero{position:relative;min-height:72vh;display:flex;align-items:end;overflow:hidden;background:#1a2830}.project-hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.62)}.project-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,28,.88) 0%,rgba(6,20,28,.62) 45%,rgba(6,20,28,.12) 78%),linear-gradient(0deg,rgba(6,20,28,.72),transparent 55%)}.project-hero-copy{position:relative;z-index:2;padding:110px 0 74px;color:#fff}.project-hero-copy .kicker{color:#b8e4f2}.project-hero-copy h1{max-width:900px;color:#fff;font-size:clamp(52px,8vw,96px)}.project-hero-copy p{max-width:720px;margin:25px 0 0;font-size:clamp(18px,2vw,24px);line-height:1.45;color:rgba(255,255,255,.88)}.project-subtitle{font-weight:400;opacity:.78}.project-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px}.project-tags span{border:1px solid rgba(255,255,255,.35);padding:7px 10px;font-size:10px;text-transform:uppercase;letter-spacing:1.1px;background:rgba(0,0,0,.12)}
.project-title-hero{padding:100px 0 82px;background:linear-gradient(135deg,#eef5f8,#fff);border-bottom:1px solid var(--line)}.project-title-hero h1{max-width:1050px;font-size:clamp(48px,7vw,84px)}.project-title-hero h1 span{font-weight:400}.project-title-hero p{max-width:760px;color:var(--muted);font-size:19px}.project-title-hero .project-tags span{color:var(--ink);border-color:var(--line);background:#fff}
.project-story{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:start}.project-story h2,.project-columns h2{margin:10px 0 22px;font-size:clamp(34px,4.5vw,56px);line-height:1.07;letter-spacing:-1.8px}.project-lede{font-size:20px;line-height:1.55;color:#324851}.project-story p:not(.project-lede),.project-columns p{color:#465a63}.project-portrait{margin:0;border:1px solid var(--line);background:var(--pale-2)}.project-portrait img{display:block;width:100%;max-height:650px;object-fit:cover;filter:saturate(.75)}.project-portrait figcaption,.project-gallery figcaption{padding:9px 11px;color:var(--muted);font-size:11px}.project-wide img{aspect-ratio:4/3}.project-gallery{display:grid;gap:18px}.project-gallery-3{grid-template-columns:repeat(3,minmax(0,1fr))}.project-gallery-1{grid-template-columns:minmax(0,900px);justify-content:center}.project-gallery figure{margin:0;border:1px solid var(--line);background:#fff}.project-gallery img{width:100%;height:360px;object-fit:cover;display:block;filter:saturate(.72)}.speyer-gallery .speyer-couple img{object-position:center top}.speyer-gallery .speyer-lady img{object-position:center 20%}.project-gallery-1 img{height:auto;max-height:620px;object-fit:contain}.project-columns{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:start}.project-panel{border-top:3px solid var(--blue);background:var(--pale-2);padding:27px}.project-panel strong{display:block;font-size:18px}.project-panel p{font-size:14px}.project-panel a{display:block;margin-top:16px;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.8px}.project-pullquote{max-width:900px;font-size:clamp(30px,5vw,55px);line-height:1.15;letter-spacing:-1.8px}.project-credit-note{display:flex;justify-content:space-between;gap:30px;align-items:center;color:var(--muted);font-size:12px}.project-credit-note p{margin:0;max-width:760px}
@media(max-width:860px){.project-card-grid{grid-template-columns:1fr}.project-card-feature{grid-column:auto}.project-card,.project-card-feature{min-height:430px}.project-story,.project-columns{grid-template-columns:1fr;gap:38px}.project-gallery-3{grid-template-columns:1fr 1fr}.stage-project{grid-template-columns:1fr}.stage-project-mark{display:none}.project-hero{min-height:66vh}}
@media(max-width:600px){.projects-mast{padding:70px 0 58px}.project-card,.project-card-feature{min-height:390px}.project-card-copy{padding:25px}.project-gallery-3{grid-template-columns:1fr}.project-gallery img{height:300px}.project-hero{min-height:70svh}.project-hero-copy{padding:85px 0 52px}.project-title-hero{padding:70px 0 58px}.project-credit-note{align-items:flex-start;flex-direction:column}.stage-project{padding:30px 25px}}

/* Rich Bitch — recovered AGM archive presentation */
.project-title-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:58px;align-items:center}
.project-title-image{margin:0;border:1px solid var(--line);background:#111}
.project-title-image img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;filter:saturate(.78)}
.project-title-image figcaption{padding:8px 10px;background:#fff;color:var(--muted);font-size:11px}
.stage-project-image{display:block;width:220px;aspect-ratio:1/1;object-fit:contain;justify-self:end;background:#111;border:1px solid var(--line)}
@media(max-width:860px){.project-title-grid{grid-template-columns:1fr;gap:34px}.project-title-image{max-width:620px}.stage-project-image{width:100%;max-width:420px;justify-self:start}}

/* DREAMERS / ASOLANDO — Anthony Gustav Morris's Asolo photographs */
.project-card-dreamers img { object-fit: contain; object-position: center; background: #17394a; filter: saturate(.82) contrast(.98); }
.project-card-dreamers:hover img { transform: none; filter: saturate(.94) contrast(1); }
.dreamers-title-hero { padding-bottom: 62px; }
.dreamers-photo { margin: 0; border: 1px solid var(--line); background: #e7eef1; }
.dreamers-photo img { display: block; width: 100%; height: auto; object-fit: contain; }
.dreamers-photo figcaption { padding: 9px 11px; background: #fff; color: var(--muted); font-size: 11px; }
.dreamers-panorama { margin-top: 46px; }
.dreamers-side-stack { display: grid; gap: 18px; }
.dreamers-photo-duo { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; align-items: start; }
.dreamers-image-section { border-bottom: 1px solid var(--line); }
.dreamers-landscape { max-width: 980px; margin: 44px auto 0; }
@media(max-width:700px){.dreamers-photo-duo{grid-template-columns:1fr}.dreamers-panorama{margin-top:34px}.dreamers-landscape{margin-top:32px}}
