/* Optional projects on the page itself, without rotating card shells. */
.project-reel { padding-block:0 68px; }
.project-reel-divider { display:flex; align-items:center; gap:22px; min-height:36px; margin-bottom:50px; color:#9e804a; pointer-events:none; }
.project-reel-divider::before,.project-reel-divider::after { content:""; flex:1; min-width:0; height:5px; border-top:1px solid #9e804a99; border-bottom:1px solid #b9a57755; }
.project-reel-divider svg { display:block; flex:none; width:132px; height:36px; overflow:visible; }
.project-reel-heading { max-width:1240px; text-align:center; }
.project-reel-heading .eyebrow { margin:0 0 20px; color:var(--brass); font-size:12px; letter-spacing:.12em; }
.project-reel-heading h2 { margin:0; font:400 clamp(64px,5.4vw,80px)/1.06 var(--serif); letter-spacing:-.025em; text-wrap:balance; }
.project-reel-disclosure { margin:26px 0 0; padding:0; border:0; }
.project-reel-toggle { display:flex; justify-content:space-between; align-items:center; gap:50px; width:max-content; max-width:calc(100% - 48px); min-height:62px; margin:0 auto; padding:14px 0; border:0; border-block:1px solid var(--brass); list-style:none; cursor:pointer; font:500 18px/1.6 var(--sans); color:var(--ink); }
.project-reel-toggle>span:first-child { min-width:0; white-space:normal; }
.project-reel-toggle::-webkit-details-marker { display:none; }
.project-reel-toggle>span:last-child { flex:none; font:400 32px/1 var(--serif); }
.project-reel-toggle:focus-visible { outline:2px solid var(--brass); outline-offset:6px; }
.project-reel-body { padding-top:54px; scroll-margin-top:24px; }
.project-reel-stage { min-width:0; }
.project-reel-scene { display:grid; gap:96px; }
.project-reel-face { display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:6%; align-items:center; min-width:0; color:var(--ink); }
.project-reel-media { display:block; min-width:0; text-decoration:none; }
.project-reel-media picture { display:block; width:100%; }
.project-reel-media img { display:block; width:100%; height:auto; object-fit:contain; }
.project-reel-copy { min-width:0; padding:24px 0; }
.project-reel-copy .eyebrow { display:flex; justify-content:space-between; gap:24px; margin:0 0 28px; color:var(--brass); }
.project-reel-copy h3 { margin:0; font:400 clamp(44px,4.6vw,72px)/1.03 var(--serif); letter-spacing:-.03em; text-wrap:balance; }
.project-reel-subtitle { margin:24px 0; font:400 clamp(25px,2.5vw,36px)/1.15 var(--serif); text-wrap:balance; }
.project-reel-summary { max-width:470px; margin:0; font-size:14px; line-height:1.85; }
.project-reel-case { display:flex; justify-content:space-between; align-items:center; gap:28px; width:100%; max-width:350px; min-height:48px; margin-top:30px; padding:13px 0; border-bottom:1px solid var(--brass); font-size:12px; text-decoration:none; }
.project-reel-case>span:last-child { color:var(--brass); font:400 25px/1 var(--serif); }
.project-reel-case:hover,.project-reel-flow-close button:hover,.project-reel-close:hover { color:var(--brass); }
.project-reel-controls { display:none; }
.project-reel-flow-close { margin-top:36px; text-align:center; }
.project-reel-flow-close button { padding:12px 0; border:0; border-bottom:1px solid var(--brass); background:none; color:var(--ink); font:500 12px/1.6 var(--sans); cursor:pointer; }
.project-reel-flow-close button>span { margin-left:28px; font-size:23px; }
@media screen and (min-width:1100px) and (min-height:700px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .project-reel.is-reel-ready .project-reel-track { height:var(--reel-height); position:relative; }
 .is-reel-ready .project-reel-stage { position:sticky; top:24px; }
 .is-reel-ready .project-reel-scene { display:block; position:relative; height:min(790px,calc(100svh - 122px)); min-height:480px; overflow:hidden; }
 .is-reel-ready .project-reel-face { position:absolute; inset:0; margin:0; background:var(--paper); transform:translateY(100%); transition:transform .8s cubic-bezier(.52,.03,.18,1); }
 .is-reel-ready .project-reel-face:first-child { transform:translateY(0); }
 .is-reel-ready .project-reel-face[inert] { pointer-events:none; }
 .is-reel-ready .project-reel-media img { max-height:min(778px,calc(100svh - 134px)); object-fit:contain; }
 .is-reel-ready .project-reel-copy { align-self:center; }
 .is-reel-ready .project-reel-controls { display:flex; justify-content:flex-end; align-items:center; gap:22px; padding-top:18px; }
 .is-reel-ready .project-reel-controls>button:not(.project-reel-close) { display:grid; place-items:center; width:38px; height:38px; border:1px solid var(--line); border-radius:50%; padding:0; background:none; color:var(--ink); font:400 23px/1 var(--serif); cursor:pointer; }
 .is-reel-ready .project-reel-controls>button:disabled { opacity:.25; cursor:default; }
 .project-reel-position { display:flex; gap:10px; margin:0 auto 0 0; color:var(--brass); font:500 10px/1.5 var(--sans); letter-spacing:.1em; }
 .project-reel-position>span:last-child { color:var(--muted); }
 .project-reel-controls .project-reel-close { display:inline-flex; align-items:center; gap:16px; padding:8px 0; border:0; background:none; color:var(--ink); font:400 11px/1.5 var(--sans); cursor:pointer; }
 .project-reel-close>span { font-size:23px; }
 .is-reel-ready .project-reel-flow-close { display:none; }
}
@media(min-width:1100px) and (max-width:1350px) {
 .project-reel-copy h3 { font-size:48px; }
 .project-reel-subtitle { margin-block:20px; font-size:28px; }
 .project-reel-copy .eyebrow { margin-bottom:22px; }
 .project-reel-case { margin-top:24px; }
}
@media(max-width:1099px) {
 .project-reel { padding-block:0 60px; }
 .project-reel-divider { margin-bottom:48px; }
 .project-reel-heading h2 { font-size:clamp(58px,6.4vw,70px); }
 .project-reel-face { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:5%; }
 .project-reel-copy h3 { font-size:48px; }
 .project-reel-summary { font-size:13px; }
 .project-reel-subtitle { font-size:29px; }
}
@media(max-width:767px) {
 .project-reel { padding-block:0 48px; }
 .project-reel-divider { gap:14px; min-height:32px; margin-bottom:36px; }
 .project-reel-divider svg { width:96px; height:32px; }
 .project-reel-heading .eyebrow { margin-bottom:18px; font-size:11px; }
 .project-reel-heading h2 { font-size:clamp(44px,9.4vw,58px); }
 .project-reel-disclosure { margin-top:24px; }
 .project-reel-toggle { gap:28px; min-height:58px; padding-block:12px; font-size:17px; }
 .project-reel-body { padding-top:40px; }
 .project-reel-scene { gap:76px; }
 .project-reel-face { display:block; }
 .project-reel-copy { padding:26px 0 0; }
 .project-reel-copy .eyebrow { margin-bottom:18px; font-size:9px; }
 .project-reel-copy h3 { font-size:clamp(43px,11vw,62px); }
 .project-reel-subtitle { margin:18px 0; font-size:29px; }
 .project-reel-summary { font-size:14px; }
 .project-reel-case { margin-top:25px; }
}
@media print {
 .project-reel-disclosure>*,.project-reel-body { display:block !important; }
 .project-reel-face { position:static !important; transform:none !important; break-inside:avoid; }
 .project-reel-controls,.project-reel-toggle,.project-reel-flow-close { display:none !important; }
}
