/* Readable source text sits between the original presentation boards. */
.case-reading-section{display:grid;grid-template-columns:180px minmax(0,1fr);gap:36px;padding:40px 48px;border-bottom:1px dotted #c6beb5;background:#fffdfa;color:#352a22}
.case-reading-section>h2{font-size:14px;font-weight:600;line-height:1.8;margin:0}
.case-reading-body{min-width:0}
.case-reading-body p{margin:0 0 14px;font-size:14px;line-height:1.95}
.case-reading-body p:last-child{margin-bottom:0}
.case-reading-body article+article{border-top:1px solid #e6dfd8;margin-top:24px;padding-top:24px}
.case-reading-body h3{font-size:17px;font-weight:600;line-height:1.6;margin:0 0 10px}
.case-reading-body h4{font-size:14px;line-height:1.6;margin:18px 0 6px}
.case-reading-table{display:block;margin-bottom:24px}
.case-reading-table>h2{font-size:21px;margin-bottom:22px}
.case-table-scroll{overflow-x:auto;overscroll-behavior-x:contain}
.case-table-scroll:focus-visible{outline:2px solid #896449;outline-offset:4px}
.case-table-scroll table{width:100%;min-width:760px;border-collapse:collapse;text-align:left;font-size:12px;line-height:1.8}
.case-table-scroll th,.case-table-scroll td{padding:14px 12px;border:1px solid #ddd3c9;vertical-align:top;white-space:pre-line}
.case-table-scroll th{background:#eee5dc;font-weight:600}
.case-table-scroll td:nth-child(4){overflow-wrap:anywhere}
.case-table-scroll td:last-child{width:40%}
.ai-guide-entry{margin:0 0 24px}
.ai-guide-entry-button{position:relative;display:block;container-type:inline-size;width:100%;padding:0;border:0;background:#f6f2ec;cursor:pointer}
.case-page-media .ai-guide-entry-button img{cursor:pointer}
.ai-guide-entry-button::after{content:'';position:absolute;left:70.7%;top:80.85%;width:22.7%;height:9.22%;border-radius:1.6cqw;box-shadow:0 0 0 2px #d8bb9d;opacity:0;transition:opacity .18s}
.ai-guide-entry-button:hover::after,.ai-guide-entry-button:focus-visible::after{opacity:1}
.ai-guide-entry-button:focus-visible{outline:2px solid #805b40;outline-offset:-4px}
.case-overview-table{width:calc(100% - 64px);margin:8px 32px 32px;border-collapse:collapse;table-layout:fixed;background:#fff;color:#202020;text-align:left}
.case-overview-table caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.case-overview-table col:first-child{width:16%}
.case-overview-table th,.case-overview-table td{padding:24px 28px;border:1px solid #d9d9d9;vertical-align:top;overflow-wrap:anywhere}
.case-overview-table th{background:#f5f5f5;font-size:14px;font-weight:600;line-height:1.85}
.case-overview-table h3{margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.65}
.case-overview-table h4{margin:16px 0 5px;font-size:14px;font-weight:600;line-height:1.65}
.case-overview-table p{margin:0;font-size:14px;line-height:1.9}
.case-overview-table p+p{margin-top:10px}
body[data-project="travel"] .case-page-media>figure{background:#fff}
body[data-project="travel"] .case-page-media>figure.case-motion-grid-lead{margin-bottom:0;background:#000}
.case-motion-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(12px,2.5vw,32px);padding:3% 7.4% 7.4%;margin:0 0 24px;background:#000}
.case-page-media .case-motion-grid figure{display:flex;align-items:center;margin:0;background:#000}
.case-page-media .case-motion-grid video{display:block;width:100%;height:auto;object-fit:contain;background:#000}
@media(max-width:700px){.case-reading-section{grid-template-columns:1fr;gap:18px;padding:28px 22px}.case-reading-body p{font-size:13px}.case-reading-body h3{font-size:16px}.case-reading-table>h2{font-size:20px}.ai-guide-entry{margin-bottom:16px}}
@media(max-width:700px){.case-overview-table{width:calc(100% - 24px);margin:0 12px 20px}.case-overview-table col:first-child{width:72px}.case-overview-table th,.case-overview-table td{padding:16px 12px}.case-overview-table th{font-size:12px}.case-overview-table h3{font-size:14px}.case-overview-table p{font-size:13px;line-height:1.85}}
@media(prefers-reduced-motion:reduce){.ai-guide-entry-button::after{transition:none}}

body[data-project="town"] .case-page-media>figure.case-joined-panel{margin-bottom:0}
/* Align the baked-in panel seams at 50%; crop only 4–10 source pixels. */
body[data-project="town"] .case-page-media video[src$="ai-review-video-02.mp4"]{width:100.3717472119%;max-width:none}
body[data-project="town"] .case-page-media video[src$="ai-review-video-03-clean.mp4"]{width:100.5172413793%;max-width:none;margin-left:-.5172413793%}
body[data-project="town"] .case-page-media video[src$="ai-review-video-04.mp4"]{width:100.9345794393%;max-width:none;margin-left:-.9345794393%}
