/* Project presentation: reserve the viewport for the model and the tour. */
.project-open .topbar{display:none}
.project-open .topbar svg{width:17px;height:17px}
.workspace #content.project-page{padding:18px 28px 28px;min-width:0}
.project-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px}
.project-identity{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:18px;align-items:center}
.project-heading .back{font-size:12px;gap:6px;margin:0;min-height:36px;grid-row:1/3}
.project-heading .back svg{width:16px;height:16px}
.project-title-line{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.project-title-line h1{font-size:26px;font-weight:650;letter-spacing:-.7px;line-height:1.2;overflow-wrap:anywhere}
.project-title-line .status{font-size:11px;padding:4px 9px}
.project-caption{grid-column:2;display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:7px;font-size:12px;color:var(--muted);line-height:1.5}
.project-caption>span{display:flex;align-items:center;gap:6px}
.project-caption svg{width:15px;height:15px}
.project-heading>.secondary,.project-focus-toggle{font-size:12px;min-height:36px;padding:8px 12px}
.project-heading>.secondary svg{width:17px;height:17px}
.project-navigation{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);margin-bottom:12px}
.project-navigation .tabs{margin:0;border:0;gap:26px;min-width:0}
.project-navigation .tabs button{font-size:14px;padding:11px 0;white-space:nowrap}
.project-navigation .tabs button span{font-size:11px;margin-left:5px}
.project-focus-toggle{border-color:transparent;background:var(--soft);margin-bottom:5px;flex-shrink:0}
.project-focus-toggle[aria-pressed=true]{background:#14242a;color:#fff}
.model-controls{display:flex;align-items:center;gap:12px;margin-bottom:12px;min-width:0}
.model-controls .model-display-switch{margin:0;flex-shrink:0}
.model-controls .model-display-switch button{padding:10px 12px;font-size:12px;min-height:38px}
.model-controls .search{margin-left:auto;max-width:360px;min-width:160px}
.model-controls .search input{font-size:12px;min-height:40px;padding:10px 12px 10px 37px}
.model-controls .search svg{width:17px;height:17px;left:12px;top:12px}
.model-controls>.secondary{font-size:12px;padding:9px 12px;min-height:40px}
.model-controls>.secondary svg{width:17px;height:17px}
.project-page .model-presentation{padding:16px 18px 14px}
.project-page .presentation-hero{grid-template-columns:minmax(0,1fr) 280px;gap:20px;padding:8px 0 12px;align-items:stretch}
.project-page .presentation-stage{height:clamp(390px,calc(100svh - 465px),760px);min-height:0}
.project-page .presentation-details{max-height:clamp(390px,calc(100svh - 465px),760px);padding:12px 6px 8px 16px;border-left:1px solid var(--show-line)}
.project-page .presentation-details h2{font-size:30px}
.project-page .presentation-accent{margin-bottom:10px}
.project-page .presentation-tag{font-size:21px;margin:8px 0 12px}
.project-page .presentation-description{font-size:12px;margin-bottom:14px}
.project-page .presentation-attributes>div{padding:9px}
.project-page .presentation-attributes strong{font-size:15px}
.project-page .presentation-selection{padding-top:12px}
.project-page .presentation-selection-head{margin-bottom:9px}
.project-page .presentation-selection-head p{display:none}
.project-page .presentation-arrows button{height:30px;width:34px}
.project-page .presentation-card{flex-basis:140px;height:112px;padding:7px}
.project-page .presentation-card[aria-pressed=true]{padding:6px}
.project-page .presentation-card strong{font-size:10px;min-height:25px}
.project-page .presentation-card small{font-size:9px;margin-top:2px}
.project-page .presentation-card-number{font-size:9px;top:5px;left:7px}
.project-page .presentation-roster{padding-bottom:7px}
.project-page .tour-introduction{margin-bottom:10px;gap:16px}
.project-page .tour-introduction h2{font-size:15px}
.project-page .tour-introduction p{font-size:12px;margin-top:3px}
.project-page .tour-introduction .secondary{font-size:12px;min-height:36px;padding:8px 12px}
.project-page .tour-panel{height:calc(100svh - 200px);min-height:460px;max-height:none}
.project-focus .sidebar,.project-focus .topbar,.project-focus .site-footer{display:none}
.project-focus .workspace{margin-left:0}
.project-focus .presentation-stage,.project-focus .presentation-details{height:clamp(430px,calc(100svh - 350px),900px);max-height:clamp(430px,calc(100svh - 350px),900px)}
.project-focus .tour-panel{height:calc(100svh - 200px)}
.project-page .model-presentation:fullscreen .presentation-stage{height:calc(100svh - 230px);min-height:350px}
.project-page .model-presentation:fullscreen .presentation-details{max-height:calc(100svh - 230px)}
@media(max-width:1100px){
  .workspace #content.project-page{padding:16px 20px 24px}
  .project-open .topbar{padding:0 20px}
  .model-controls{flex-wrap:wrap;gap:8px}
  .model-controls .search{max-width:none}
  .model-controls>.secondary{margin-left:auto}
  .project-page .presentation-hero{grid-template-columns:minmax(0,1fr) 230px;gap:12px}
  .project-page .presentation-details{padding-left:12px}
  .project-page .presentation-details h2{font-size:26px}
}
@media(max-width:760px){
  .project-heading{align-items:flex-start;gap:10px}
  .project-identity{display:block}
  .project-heading .back{margin-bottom:6px}
  .project-title-line h1{font-size:23px}
  .project-caption{gap:5px 12px}
  .project-navigation{gap:8px;flex-wrap:wrap}
  .project-navigation .tabs{gap:16px}
  .project-navigation .tabs button{font-size:13px}
  .project-focus-toggle{font-size:11px;padding:8px}
  .model-controls .search{flex-basis:100%;order:3;margin:0}
  .model-controls>.secondary{font-size:11px;padding:8px}
  .project-page .presentation-hero,.project-page .model-presentation:fullscreen .presentation-hero{grid-template-columns:1fr}
  .project-page .presentation-stage{height:clamp(340px,55svh,540px)}
  .project-page .presentation-details{height:auto;max-height:none;border-left:0;border-top:1px solid var(--show-line);padding:18px 0 4px}
  .project-page .tour-introduction{flex-direction:row;align-items:center;flex-wrap:wrap}
  .project-page .tour-panel{height:72svh;min-height:440px}
}
@media(max-width:440px){
  .workspace #content.project-page{padding:12px}
  .project-heading{flex-wrap:wrap}
  .project-heading>.secondary{font-size:11px;padding:6px 10px;min-height:32px}
  .project-navigation .tabs{gap:13px}
  .project-page .model-presentation{padding:14px 10px}
}
