.project-detail{padding:54px 0 120px}
.project-detail>.shell{width:min(var(--max),calc(100% - var(--gut)*2));margin:0 auto}
.project-detail-layout{display:grid;grid-template-columns:minmax(270px,1fr) minmax(0,3fr);gap:clamp(42px,4.5vw,72px);align-items:start}
.project-sidebar{position:sticky;top:122px;align-self:start;max-height:calc(100vh - 152px);overflow:auto;padding:2px 8px 10px 0;scrollbar-width:none}
.project-sidebar::-webkit-scrollbar{display:none}
.project-head{max-width:none;margin:0}
.detail-back{display:inline-flex;align-items:center;gap:7px;margin:0 0 46px;padding-bottom:4px;border-bottom:1px solid rgba(20,72,55,.32);font-size:12px;font-weight:650;line-height:1.4;letter-spacing:-.01em;color:var(--brand)}
.project-head .eyebrow{margin:0 0 17px;font-size:11px;font-weight:650;line-height:1.4;letter-spacing:.13em;color:#6d7c75}
.project-head h1{margin:0;max-width:330px;font-size:clamp(28px,2.35vw,36px);font-weight:520;line-height:1.24;letter-spacing:-.042em;word-break:keep-all;text-wrap:pretty;color:#191c18}
.project-copy{width:100%;max-width:330px;margin:34px 0 0;padding:30px 0 0;border-top:1px solid var(--line)}
.project-copy:empty{display:none}
.project-copy h2,.project-copy h3{margin:30px 0 10px;font-size:17px;font-weight:600;line-height:1.45;letter-spacing:-.025em;color:#2d332f}
.project-copy h2:first-child,.project-copy h3:first-child{margin-top:0}
.project-copy p{margin:0 0 16px;font-size:14px;line-height:1.76;letter-spacing:-.012em;color:#69726d;word-break:keep-all}
.project-copy p:last-child{margin-bottom:0}
.project-side-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.project-side-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid #d8dfdb;border-radius:999px;font-size:11.5px;font-weight:650;color:#52605a;transition:.18s ease}
.project-side-actions a:hover{border-color:var(--brand);color:var(--brand)}
.project-side-actions .is-primary{background:var(--brand);border-color:var(--brand);color:#fff}
.project-side-actions .is-primary:hover{background:var(--brand-deep);border-color:var(--brand-deep);color:#fff}
.project-media{min-width:0}
.project-visual{width:100%;min-height:420px;margin:0;border-radius:8px;background:#f1f4f2;display:grid;place-items:center;overflow:hidden;color:var(--brand);font-size:12px}
.project-visual.has-image{min-height:0;background:none;border:0}
.project-visual.has-image img{width:100%;height:auto;display:block;border-radius:8px!important}
.project-gallery{width:100%;max-width:none!important;margin:16px 0 0!important;display:grid;gap:16px!important}
.project-gallery img{width:100%;height:auto;display:block;border-radius:8px!important}
.project-detail-end{display:none!important}
@media(max-width:1080px){
  .project-detail{padding:46px 0 96px}
  .project-detail-layout{grid-template-columns:minmax(235px,.9fr) minmax(0,2.1fr);gap:36px}
  .project-sidebar{top:112px;max-height:calc(100vh - 138px)}
  .project-head h1{font-size:clamp(26px,3vw,32px)}
  .detail-back{margin-bottom:36px}
  .project-copy{margin-top:28px;padding-top:24px}
}
@media(max-width:820px){
  .project-detail{padding:42px 0 84px}
  .project-detail-layout{grid-template-columns:1fr;gap:38px}
  .project-sidebar{position:relative;top:auto;max-height:none;overflow:visible;padding:0}
  .detail-back{margin-bottom:28px}
  .project-head{max-width:620px}
  .project-head h1{max-width:580px;font-size:clamp(29px,7vw,40px);line-height:1.2}
  .project-copy{max-width:620px;margin-top:25px;padding-top:23px}
  .project-copy p{font-size:15px;line-height:1.72}
  .project-side-actions{margin-top:24px;padding-top:20px}
  .project-visual,.project-visual.has-image img,.project-gallery img{border-radius:6px!important}
  .project-gallery{margin-top:12px!important;gap:12px!important}
}
@media(max-width:520px){
  .project-detail{padding:34px 0 68px}
  .project-detail-layout{gap:30px}
  .project-head .eyebrow{font-size:10.5px;margin-bottom:13px}
  .project-head h1{font-size:30px;line-height:1.22;letter-spacing:-.04em}
  .project-copy{margin-top:22px;padding-top:20px}
  .project-copy h2,.project-copy h3{font-size:16px;margin-top:24px}
  .project-copy p{font-size:14.5px}
  .project-side-actions{gap:6px}
  .project-side-actions a{min-height:36px;padding:0 12px}
}