/* Approved personal homepage, with a common 1–5 column rhythm. */
.site-shell{max-width:1944px}
.site-header{justify-content:space-between;gap:48px;min-height:112px}
.brand{font-size:56px;line-height:1.05;letter-spacing:-3px}
.brand span{display:inline-block;width:.14em;height:.14em;border-radius:50%;background:var(--blue);color:transparent;overflow:hidden;line-height:0;margin-left:.035em}
.site-header nav{gap:30px;justify-content:flex-end}
.site-header nav a{font-size:18.75px}
.home-heading{font-size:20px;font-weight:400;line-height:1.4;letter-spacing:0}
.home-work{padding:34px 0 44px;border-bottom:1px solid var(--ink)}
.home-work-row{display:flex;align-items:flex-start;gap:64px;margin-top:30px;min-height:120px}
.m17-link{display:block;flex:none}
.m17-link img{height:90px;width:auto;max-width:none}
.home-work-row p{font-size:24px;line-height:1.25;margin-top:-3px;font-weight:400}
.home-interest{padding:30px 0 40px}
.home-interest>.home-heading{margin-bottom:24px}
.home-grid{--columns:1;display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:34px 26px}
.home-card{min-width:0}
.home-card-image{aspect-ratio:1.6;background:#f2f2ef;overflow:hidden}
.home-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.home-card a:hover img{transform:scale(1.02)}
.home-text-cover{display:flex;align-items:center;justify-content:center;min-height:100%;font-size:24px;color:var(--muted)}
.home-card-category{display:block;text-transform:uppercase;font-size:11px;color:var(--muted);letter-spacing:.5px;margin-top:12px}
.home-card h3{display:flex;justify-content:space-between;gap:14px;margin:4px 0 0;font-size:21px;line-height:1.3;font-weight:700}
.home-card h3 span{color:var(--blue);font-weight:400;flex:none}
.home-video{border-top:1px solid var(--ink);padding:28px 0 0}
.home-section-label{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:24px}
.home-section-label>a{font-size:14px;color:var(--blue)}
.video-card{min-width:0}
.video-preview{display:block;aspect-ratio:16/9;position:relative;overflow:hidden;background:#eee}
.video-preview>img{width:100%;height:100%;object-fit:cover}
.video-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#161616cc;color:#fff;font-size:25px;padding-left:4px;transition:background .2s}
.video-preview:hover .video-play{background:var(--blue)}
.video-duration{position:absolute;right:8px;bottom:8px;background:#111e;color:#fff;padding:1px 5px;border-radius:3px;font-size:12px}
.video-card h3{font-size:17px;line-height:1.35;margin:13px 0 7px;font-weight:700}
.video-card>p{font-size:13px;color:var(--muted)}
.home-materials>.home-card:nth-child(n+3),.home-videos>.video-card:nth-child(n+2){display:none}
.site-footer{border-color:var(--line);display:block;margin-top:64px;padding:24px 0 30px}
.footer-meta{min-width:0;margin-top:0}.footer-bottom{margin-top:0;font-size:12px}.socials:not(:empty){margin-bottom:24px}
.video-dialog{border:0;padding:24px;background:#fff;color:var(--ink);width:min(960px,calc(100% - 28px));max-width:none;max-height:calc(100% - 28px)}
.video-dialog::backdrop{background:#000b}
.video-dialog h2{font-size:20px;font-weight:400;padding-right:34px;margin-bottom:20px}
.video-close{position:absolute;right:12px;top:8px;border:0;background:none;font-size:32px;cursor:pointer}
.video-player{aspect-ratio:16/9;min-height:200px;background:#111}
.video-player iframe{display:block;width:100%;height:100%;min-height:200px;border:0}
.video-external{display:inline-block;margin-top:16px;font-size:14px;color:var(--blue)}
@media(min-width:640px){.home-grid{--columns:2}.home-materials>.home-card:nth-child(-n+4),.home-videos>.video-card:nth-child(-n+2){display:block}}
@media(min-width:1100px){.home-grid{--columns:3}.home-materials>.home-card:nth-child(-n+6),.home-videos>.video-card:nth-child(-n+3){display:block}}
@media(min-width:1520px){.home-grid{--columns:4}.home-materials>.home-card:nth-child(-n+8),.home-videos>.video-card:nth-child(-n+4){display:block}}
@media(min-width:1840px){.home-grid{--columns:5}.home-materials>.home-card:nth-child(-n+10),.home-videos>.video-card:nth-child(-n+5){display:block}}
@media(max-width:1000px){.site-header{align-items:flex-start;flex-direction:column;gap:16px;padding:24px 0}.site-header nav{margin:0;justify-content:flex-start;gap:12px 24px}.site-header nav a{font-size:18.75px}.brand{font-size:48px}}
@media(max-width:639px){.site-shell{padding:0 22px}.site-header nav{gap:3px 20px}.site-header nav a{font-size:18.75px;padding:6px 0}.home-work{padding:26px 0 30px}.home-work-row{gap:26px;margin-top:27px;min-height:74px}.m17-link img{height:51px}.home-work-row p{font-size:17px;line-height:1.3;margin-top:-2px}.home-heading{font-size:20px}.home-interest{padding:26px 0 30px}.home-grid{gap:30px 22px}.home-card h3{font-size:21px}.home-section-label{gap:14px;flex-wrap:wrap}.home-section-label>a{font-size:13px}.site-footer{margin-top:42px}.video-dialog{padding:18px}.video-dialog h2{font-size:17px}.video-play{width:52px;height:52px;font-size:23px}}
@media(max-width:360px){.home-work-row{gap:20px}.m17-link img{height:44px}.home-work-row p{font-size:16px}}
