/* Shared project layout, based on the approved Eye See Fun page. */
.project-case-page .case-main{box-sizing:border-box;width:100%;max-width:1560px;margin:0 auto;padding:24px 32px 18px}
.project-article{min-width:0}
.project-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:40px;align-items:start}
.project-sidebar{box-sizing:border-box;min-width:0;padding:28px 24px;border:1px solid #d380db;border-radius:16px;scrollbar-width:thin;scrollbar-color:#75658d transparent}
.project-sidebar .case-intro{padding:0}
.project-sidebar .case-back{display:inline-block;font-size:12px;line-height:1.5;margin-bottom:24px}
.project-sidebar .case-kicker{font-size:10px;letter-spacing:.08em;margin:0 0 12px}
.project-case-page .project-sidebar h1{font-size:36px;line-height:1.15;letter-spacing:-.035em;margin:0 0 16px}
.project-sidebar .project-summary{font-size:13px;line-height:1.75;color:#c8d3e8;margin:0 0 22px}
.project-result{display:flex;flex-direction:column;gap:2px;padding:18px 0;border-block:1px solid #ffffff26}
.project-result strong{font-size:31px;line-height:1.15;font-weight:650;letter-spacing:-.035em;color:#e8a4eb;font-variant-numeric:tabular-nums}
.project-result span{font-size:11px;color:#bcc9e1;line-height:1.6}
.project-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 20px}
.project-facts dt,.project-case-page .project-sidebar-section h2{font-size:10px;line-height:1.5;font-weight:500;letter-spacing:.02em;color:#9faccc;margin:0 0 4px}
.project-facts dd{font-size:12px;color:#eef1f8;margin:0;line-height:1.65}
.project-case-page .project-sidebar-section{margin:0 0 16px;padding:0}
.project-sidebar-section p{font-size:12px;line-height:1.7;margin:0;color:#dde4f1}
.project-tools p{font-size:12px;color:#c1cde2}
.project-external-link{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;margin:22px 0 12px;border:1px solid #b885c1;color:#f0d1f3;text-decoration:none;font-size:12px;line-height:1.5;transition:background .15s,color .15s}
.project-external-link:hover{color:#fff;background:#76507b4d}
.project-overview{border-bottom:1px solid #ffffff26;padding-bottom:12px}
.project-overview>summary{font-size:11px;line-height:1.7;color:#c6bedb;cursor:pointer;padding:7px 0}
.project-overview-copy{padding:14px 0 0}
.project-sidebar .project-overview-copy .studio-section{margin:0 0 22px;padding:0}
.project-sidebar .project-overview-copy .case-section-copy{margin:0 0 8px}
.project-sidebar .project-overview-copy .case-index{display:none}
.project-case-page .project-overview-copy h2{font-size:12px;line-height:1.5;margin:0;font-weight:600;color:#f0d1f3}
.project-sidebar .project-overview-copy .studio-copy{font-size:12px;line-height:1.85;margin-bottom:0;color:#c7d2e7}
.project-overview-copy .studio-badge{max-height:26px;width:auto;margin:0}
.project-details{box-sizing:border-box;min-width:0;padding-bottom:8px;scroll-behavior:auto;scrollbar-width:thin;scrollbar-color:#75658d transparent;scrollbar-gutter:stable}
.project-section-nav{display:flex;align-items:center;gap:16px;padding:10px 12px;border:1px solid #a66ab5;border-radius:12px;background:#182544;position:sticky;top:0;z-index:5}
.project-section-nav a{display:block;flex:0 0 auto;padding:8px 22px;border-radius:9px;background:#0b003a;color:#f4eafa;font-size:15px;line-height:1.4;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s}
.project-section-nav a:hover{background:#3a205c}
.project-section-nav a[aria-selected="true"]{background:#d380db;color:#18072d}
.project-tab-panels{margin-top:28px}
.project-tab-panel[hidden]{display:none!important}
.project-tab-panel:focus{outline:none}
.project-tab-panel:focus-visible{outline:2px solid #e8a4eb;outline-offset:-2px}
.project-details .studio-section{margin:48px 0 0;padding-top:0;scroll-margin-top:88px}
.project-details .studio-section:first-child{margin-top:0}
.project-details .case-section-copy{margin-bottom:20px;max-width:none}
.project-details .case-index{display:none}
.project-case-page .project-details h2{font-size:32px;line-height:1.35;letter-spacing:-.02em;margin:0}
.project-details .case-figure,.project-details .studio-media{margin:0;overflow:hidden;border-radius:3px;background:#101a32}
.project-details .studio-media video{display:block;width:100%;max-width:100%;max-height:none;height:auto;aspect-ratio:16/9;object-fit:contain;background:#0b1020}
.project-details .studio-media img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto}
.project-details .project-keyvisual .case-figure{background:transparent}
.project-keyvisual .studio-media img{max-height:calc(100dvh - 260px);object-fit:contain}
.project-design-notes{margin-top:20px;border-block:1px solid #ffffff26}
.project-design-notes>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:44px;list-style:none;cursor:pointer;font-size:12px;color:#ddc9ed;padding:10px 0}
.project-design-notes>summary::-webkit-details-marker{display:none}
.project-expand{font-size:22px;font-weight:300;line-height:1;transition:transform .15s}
.project-design-notes[open] .project-expand{transform:rotate(45deg)}
.project-design-notes-copy{padding:12px 0 20px}
.project-design-notes-copy .studio-copy{font-size:14px;line-height:1.9;max-width:850px}
.project-case-page summary:focus-visible{outline:2px solid #e8a4eb;outline-offset:4px}
@media(min-width:1001px){
  .project-case-page{box-sizing:border-box;height:100dvh;overflow:hidden;display:flex;flex-direction:column}
  .project-case-page .case-main{flex:1 1 0%;min-height:0;overflow:hidden}
  .project-article,.project-layout{height:100%}
  .project-sidebar{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .project-details{height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:12px}
}
@media(min-width:1001px) and (max-height:800px){
  .project-case-page .case-main{padding-top:18px;padding-bottom:14px}
  .project-sidebar{padding:20px 22px}
  .project-sidebar .case-back{margin-bottom:18px}
  .project-sidebar .case-kicker{margin-bottom:10px}
  .project-case-page .project-sidebar h1{font-size:32px;margin-bottom:12px}
  .project-sidebar .project-summary{font-size:12px;line-height:1.7;margin-bottom:16px}
  .project-result{padding:14px 0}
  .project-result strong{font-size:29px}
  .project-facts{margin:14px 0 16px}
  .project-case-page .project-sidebar-section{margin-bottom:12px}
  .project-external-link{margin-top:16px;padding:10px 12px}
}
@media(max-width:1200px) and (min-width:1001px){
  .project-case-page .case-main{padding-inline:24px}
  .project-layout{grid-template-columns:280px minmax(0,1fr);gap:28px}
  .project-section-nav{gap:10px}
  .project-section-nav a{font-size:14px;padding-inline:16px}
}
@media(max-width:1000px){
  .project-case-page .case-main{padding:24px 24px 0}
  .project-layout{grid-template-columns:1fr;gap:30px}
  .project-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:26px}
  .project-sidebar .case-intro,.project-result,.project-facts,.project-external-link,.project-overview{grid-column:1/-1}
  .project-case-page .project-sidebar h1{font-size:36px}
  .project-sidebar .project-summary{max-width:620px}
  .project-result{flex-direction:row;align-items:baseline;gap:14px}
  .project-external-link{margin-top:4px}
  .project-section-nav{top:68px;gap:10px;flex-wrap:wrap}
  .project-section-nav a{flex:1 0 auto;text-align:center;font-size:14px;padding:8px 16px}
  .project-tab-panels{margin-top:24px}
  .project-details{scrollbar-gutter:auto;scroll-margin-top:80px}
  .project-details .studio-section{margin-top:40px;scroll-margin-top:150px}
  .project-case-page .project-details h2{font-size:27px}
  .project-keyvisual .studio-media img{max-height:none}
}
@media(max-width:480px){
  .project-case-page .case-main{padding:20px 16px 0}
  .project-sidebar{padding:24px 20px;gap:0 18px}
  .project-case-page .project-sidebar h1{font-size:32px}
  .project-sidebar .project-summary{font-size:13px}
  .project-result{gap:10px;flex-wrap:wrap}
  .project-result strong{font-size:29px}
  .project-result span{font-size:10px}
  .project-section-nav{gap:8px;padding:9px}
  .project-section-nav a{font-size:12px;padding:9px 10px}
  .project-case-page .project-details h2{font-size:25px}
  .project-design-notes-copy .studio-copy{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.project-external-link,.project-expand,.project-section-nav a{transition:none}}

/* Adapt the approved layout to product boards, UI case studies and game demos. */
.project-section-nav{flex-wrap:wrap}
.project-sidebar h1{overflow-wrap:anywhere}
.project-sidebar .project-external-link{align-items:center}
.project-sidebar .project-sidebar-section .project-external-link{margin-top:10px}
.project-overview-copy .case-facts{grid-template-columns:1fr;gap:14px;padding-top:0;border:0;margin:0 0 24px}
.project-overview-copy .case-facts dt{font-size:10px;margin-bottom:4px}
.project-overview-copy .case-facts dd{font-size:12px;line-height:1.7}
.project-overview-copy .case-credits,.project-overview-copy .case-section{border:0;padding:0;margin:0 0 22px}
.project-overview-copy .case-credits p,.project-overview-copy .project-full-summary{font-size:12px;line-height:1.85;color:#c7d2e7;margin:0 0 18px}
.project-overview-copy .case-figure,.project-overview-copy .studio-media{margin:12px 0 18px;background:transparent}
.project-overview-copy img{display:block;max-width:100%;height:auto;margin-inline:auto}
.project-overview-copy .studio-badge{display:inline-block;max-height:26px;width:auto;margin:0 8px 10px 0}
.project-overview-copy .studio-external-links{font-size:12px;gap:10px;margin:14px 0}
.project-overview-copy .case-action{font-size:12px;padding:8px 12px}
.project-details .case-section,.project-details .trail-section{margin:48px 0 0;padding-top:0;scroll-margin-top:calc(var(--project-nav-height,60px) + 24px)}
.project-details .studio-section{scroll-margin-top:calc(var(--project-nav-height,60px) + 24px)}
.project-details .case-section:first-child,.project-details .trail-section:first-child{margin-top:0}
.project-details .case-section-copy>p{font-size:14px;line-height:1.85;max-width:850px;margin:14px 0 0}
.project-details .studio-copy{font-size:14px;max-width:850px;line-height:1.85}
.project-details .trail-section-heading{margin-bottom:20px}
.project-details .case-figure{margin:0;overflow:hidden;border-radius:3px;background:#101a32}
.project-details .case-figure img{display:block;width:auto;max-width:100%;height:auto;margin-inline:auto}
.project-details .case-pixel img{width:100%;image-rendering:pixelated}
.project-details .case-figure figcaption{font-size:12px;line-height:1.6;padding:10px 14px;color:#c6d1e6}
.project-details .studio-media{margin:20px 0}
.project-details .case-section-copy+.studio-media{margin-top:0}
.project-details .studio-media img{max-width:100%;height:auto}
.project-details .studio-media video{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 260px);aspect-ratio:auto;object-fit:contain;margin-inline:auto}
.project-details .studio-transcript,.project-details .trail-transcript{margin-top:18px;font-size:14px}
.project-details .studio-transcript summary,.project-details .trail-transcript summary{font-size:12px;padding:12px 0}
.project-details .studio-transcript .studio-copy{padding-bottom:18px}
.project-details .studio-badge{max-height:40px;width:auto;margin:0 10px 12px 0}
@media(max-width:1000px){
  .project-details .case-section,.project-details .trail-section{margin-top:40px;scroll-margin-top:calc(var(--project-nav-height,60px) + 96px)}
  .project-details .studio-section{scroll-margin-top:calc(var(--project-nav-height,60px) + 96px)}
  .project-details .studio-media video{max-height:80dvh}
}
