/* Portfolio presentation for the Lieflat Charts gallery adaptations. */
.data-showcase{padding-top:18px;padding-bottom:20px}
.data-showcase-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:7%;align-items:end;padding:22px 0 30px;border-top:1px solid var(--ink)}
.data-showcase-head .small-label{margin-bottom:14px}
.data-showcase-head h2{font-family:Baskerville,"Songti SC","STSong",serif;font-weight:500;font-size:clamp(35px,3.6vw,56px);line-height:1.2;max-width:15em;margin:0}
.data-showcase-head>p{font-size:14px;color:var(--ink-soft);line-height:1.85;margin:0 0 4px}
.dashboard-nav{display:flex;gap:8px;flex-wrap:wrap;padding:0 0 26px;border-bottom:1px solid var(--line)}
.dashboard-nav a{border:1px solid #b9c9be;border-radius:2px;padding:10px 13px;font-size:11px;font-weight:750;line-height:1.3;transition:background .2s,color .2s}
.dashboard-nav a:hover,.dashboard-nav a:focus-visible{background:var(--ink);color:white}
.dashboard-chapter{scroll-margin-top:30px;padding-top:52px}
.dashboard-chapter-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:7%;align-items:end;padding-bottom:20px}
.dashboard-chapter-head .small-label{margin-bottom:10px}
.dashboard-chapter-head h3{font-family:Baskerville,"Songti SC","STSong",serif;font-size:clamp(29px,3vw,42px);font-weight:500;margin:0;line-height:1.25}
.dashboard-chapter-head>p{font-size:13px;line-height:1.8;color:var(--ink-soft);margin:0 0 2px}
.lieflat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lieflat-grid.single{grid-template-columns:minmax(0,1fr)}
.lf-card{background:#f0efeb;border:1px solid #deddd6;border-radius:20px;padding:clamp(20px,2.5vw,36px);min-width:0;color:#252520;overflow:hidden}
.lf-template{color:#77766e;font-size:10px;font-weight:750;letter-spacing:.13em;margin:0 0 20px}
.lf-card h3{font-family:Baskerville,"Songti SC","STSong",serif;font-size:clamp(23px,2vw,33px);font-weight:500;line-height:1.25;letter-spacing:-.015em;margin:0 0 10px;max-width:20em}
.lf-sub{color:#6e6d66;font-size:11px;line-height:1.65;min-height:36px}
.lf-card svg{display:block;width:100%;height:auto;max-height:470px;margin:12px auto 0;overflow:visible;cursor:pointer}
.lieflat-grid.single .lf-card svg{max-width:810px;max-height:560px}
.lf-src{border-top:1px solid #d9d8d1;color:#898880;font-size:9px;font-weight:700;letter-spacing:.06em;padding-top:14px;margin-top:7px;line-height:1.5}
.data-disclaimer{font-size:11px;color:var(--ink-soft);padding:13px 0;margin:0;line-height:1.6}
.lf-preview{background:#f0efeb!important;border:1px solid #deddd6;display:flex;align-items:center;justify-content:center;padding:2% 5% 8%}
.lf-preview svg{display:block;width:100%;height:100%;object-fit:contain;overflow:visible}
.lf-preview .visual-caption{background:#f0efeb;color:#727168;font-size:9px}
.lf-card svg .pop,.lf-preview svg .pop{transform-box:fill-box;transform-origin:center;animation:lieflatPop .45s both}
.lf-card svg .fade,.lf-preview svg .fade{animation:lieflatFade .65s both}
.lf-card svg .draw,.lf-preview svg .draw{stroke-dasharray:1;stroke-dashoffset:1;animation:lieflatDraw 1s ease forwards}
@keyframes lieflatPop{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}
@keyframes lieflatFade{from{opacity:0}to{opacity:1}}
@keyframes lieflatDraw{to{stroke-dashoffset:0}}
@media(max-width:900px){.data-showcase-head,.dashboard-chapter-head{grid-template-columns:1fr;gap:16px}.lieflat-grid{grid-template-columns:1fr}}
@media(max-width:700px){.data-showcase{padding-top:4px}.data-showcase-head{padding-top:19px}.data-showcase-head h2{font-size:35px}.dashboard-nav{display:grid;grid-template-columns:1fr;gap:6px}.dashboard-nav a{padding:9px 12px}.dashboard-chapter{padding-top:42px}.dashboard-chapter-head h3{font-size:30px}.lf-card{padding:20px;border-radius:15px}.lf-card h3{font-size:26px}.lf-sub{font-size:10px}.lf-card svg{max-height:none}.lf-preview{padding:0 3% 8%}}
@media(prefers-reduced-motion:reduce){.lf-card svg .pop,.lf-preview svg .pop,.lf-card svg .fade,.lf-preview svg .fade,.lf-card svg .draw,.lf-preview svg .draw{animation:none!important;stroke-dashoffset:0!important}}
