.page-shell{max-width:1000px;margin:0 auto;padding:100px 0 40px}.page-navigation{display:flex;position:relative;align-items:center;justify-content:space-between;max-width:600px;margin:0 auto 48px}.page-navigation .index-link{position:absolute;left:-200px;text-decoration:none;font-size:16px;color:#454545}.page-navigation nav{margin:0;font-size:12px;gap:20px}.page-navigation a[aria-current=page]{color:var(--bright)}main.document{display:block;max-width:600px;width:100%;margin:0 auto;padding:0}.document h1{font-size:20px;line-height:26px;font-weight:500}.document-heading{margin-bottom:40px}.project-meta{font-size:16px;line-height:24px;letter-spacing:.6px;margin-top:6px}.project-meta a{color:var(--accent);text-decoration:none}.project-meta span{margin:0 4px}.document .lead{font-size:16px;line-height:1.65;letter-spacing:.5px;margin:0 0 40px}.metadata{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:0 0 40px;font-size:14px;line-height:1.8}.metadata dt{color:var(--muted);margin-bottom:10px;letter-spacing:.4px}.metadata dd{margin:0}.client-label{margin-top:16px}.case-image{margin:32px 0 0;width:100%;overflow:hidden;border-radius:12px;background:#f7f7f7}.case-image img{display:block;width:100%;height:auto}.chapter{margin-top:64px}.eyebrow{font-size:12px;line-height:18px;color:var(--muted);letter-spacing:.6px;margin:0 0 12px}.chapter h2{font-size:20px;line-height:1.4;color:#292929;font-weight:500;letter-spacing:-.2px;margin:0 0 16px}.chapter>p:not(.eyebrow):not(.date){font-size:16px;line-height:1.65;letter-spacing:.4px;margin:0 0 20px}.chapter>h2:not(:first-child){margin-top:12px}.case-pagination a{position:fixed;top:calc(50% - 16px);width:32px;height:32px;border:1px solid #dddddd;background:#ffffffdd;backdrop-filter:blur(8px);display:grid;place-items:center;text-decoration:none;font-size:22px;border-radius:6px;transition:background .2s,border-color .2s}.case-pagination a:hover{background:#f0f0f0;border-color:#aaa}.case-pagination .previous{left:max(24px,calc(50% - 500px))}.case-pagination .next{right:max(24px,calc(50% - 500px))}.next-project{border-top:1px solid var(--line);margin-top:80px;padding-top:24px}.next-project>a:first-of-type{display:flex;align-items:center;justify-content:space-between;font-size:20px;color:var(--bright);text-decoration:none}.next-project .all-projects{display:inline-block;margin-top:24px;font-size:12px;color:var(--muted)}.page-footer{max-width:600px;margin:80px auto 0;padding-top:24px;border-top:1px solid #e3e3e3;display:flex;justify-content:space-between;gap:16px;font-size:12px;color:var(--muted)}.page-footer a{text-decoration:none}.project-index .document-heading{margin-bottom:32px}.project-index .lead{margin-top:12px}.index-projects{max-width:420px;margin:0 auto;display:flex;flex-direction:column;gap:12px}.index-projects .project{margin-left:0;width:100%}.about-heading{display:flex;align-items:center;gap:24px}.about-heading img{border-radius:50%;object-fit:cover;object-position:center 35%;border:1px solid #d2d2d2}.experience{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #e3e3e3}.experience .date{margin-bottom:8px}.experience p{line-height:1.65;letter-spacing:.3px}.experience a{display:inline-block;font-size:14px;margin-top:16px}.contact-block{max-width:382px}.contact-block .email{font-size:20px;margin-top:0;color:var(--bright)}.contact-block .contact-actions{margin-top:24px;font-size:14px}.contact-block .contact-actions button{font-size:14px}.social-links{display:flex;gap:24px;font-size:14px;margin-top:32px}.social-links a{text-decoration:none}.contact-note{display:flex;align-items:center;gap:8px;margin:64px 0 24px;font-size:14px}.text-link{font-size:14px}.contact-page{min-height:420px}
@media(max-width:1199px){.page-shell{padding:48px 24px 32px}.page-navigation{margin-bottom:48px}.page-navigation .index-link{position:static}.case-pagination a{position:static}.case-pagination{display:flex;justify-content:space-between;margin-top:48px}.next-project{margin-top:32px}}
@media(max-width:600px){.page-shell{padding:32px 20px}.page-navigation{gap:24px}.page-navigation nav{gap:16px}.document-heading{margin-bottom:28px}.document .lead{margin-bottom:28px}.chapter{margin-top:48px}.case-image{border-radius:8px;margin-top:24px}.metadata{gap:20px}.project-meta{font-size:14px}.page-footer{margin-top:56px;flex-wrap:wrap}.about-heading{gap:16px}.contact-block .email{font-size:18px}.contact-note{line-height:1.5}.document h2{font-size:19px}.chapter>p:not(.eyebrow):not(.date){letter-spacing:.2px}}
.page-navigation .index-link{display:inline-flex;align-items:center;gap:8px}
.back-icon{flex-shrink:0;transition:transform 200ms var(--ease-refined)}
.index-link:is(:hover,:focus-visible) .back-icon{transform:translateX(-3px)}
.case-pagination a:is(:hover,:focus-visible){color:var(--accent);border-color:#b3a6d1;background:#f1f0f4}
.case-pagination a:active{transform:scale(.96)}
.case-image img{transition:transform 360ms var(--ease-refined)}
@media(hover:hover){.case-image:hover img{transform:scale(1.008)}}
@media(prefers-reduced-motion:reduce){.index-link:is(:hover,:focus-visible) .back-icon,.case-pagination a:active,.case-image:hover img{transform:none}}

/* Lists use the existing case-study body typography and paragraph spacing. */
.chapter>ul{font-size:16px;line-height:1.65;letter-spacing:.4px;margin:0 0 20px;padding-left:24px}
@media(max-width:600px){.chapter>ul{letter-spacing:.2px}}

/* Preserve card typography while using a sequential heading hierarchy. */
.project-index .project-heading h2{font-size:20px;line-height:26px;font-weight:500;color:#292929;letter-spacing:-.25px;margin:0}
@media(max-width:480px){.project-index .project-heading h2{font-size:19px}}
