/* MaleStars v5 · editorial actor relationship journal; no carousel or generic poster grid */
:root{--m20-ink:#24322f;--m20-rust:#bd7045;--m20-taupe:#f3ede4;--m20-line:#ded8d0}
.m20,.m20 *,.m20 *::before,.m20 *::after{box-sizing:border-box}
.m20{font-family:"Noto Sans SC",system-ui,sans-serif;color:var(--m20-ink);max-width:100%;min-width:0;overflow-x:clip;background:#faf8f4}
.m20 a{color:inherit;text-decoration:none}
.m20-hero{background:#182d2b;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.95fr);min-height:520px;overflow:hidden;color:#f8efe1}
.m20-headline{padding:clamp(27px,4vw,60px);position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;min-width:0}
.m20-headline>small{font:700 11px/1.5 ui-monospace,monospace;letter-spacing:.12em;color:#c9a589}
.m20-headline h1{font:800 clamp(40px,5.7vw,77px)/1.15 "Noto Serif SC","Source Han Serif SC",serif;letter-spacing:-.06em;margin:28px 0;color:#f9ead8;overflow-wrap:anywhere}
.m20-headline h1 em{font-style:normal;color:#eebd89}
.m20-headline p{font-size:14px;line-height:2;color:#d7cabe;max-width:390px}
.m20-headline>a{align-self:start;margin-top:22px;background:#d8aa7e;color:#162b29;padding:12px 22px;font-weight:800;font-size:13px}
.m20-feature-portraits{position:relative;min-height:500px;background:radial-gradient(circle at 58% 35%,#38554e 0%,#1d3632 45%,#182d2b 70%);overflow:hidden}
.m20-feature-portraits:before{content:"";display:block;position:absolute;inset:10% 8%;border:1px solid #f4c59a3a;transform:rotate(-8deg);pointer-events:none}
.m20-portrait{position:absolute;display:block;min-width:0;box-shadow:0 18px 34px #08191877;border:4px solid #f3ebdd;background:#ddd0bc}
.m20-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.m20-portrait span{position:absolute;left:0;right:0;bottom:0;padding:27px 9px 9px;color:white;display:grid;gap:3px;background:linear-gradient(transparent,#142725e6)}
.m20-portrait span small{font:700 9px ui-monospace,monospace;letter-spacing:.08em}
.m20-portrait span b{font-size:14px}
.m20-portrait-0{width:45%;height:60%;top:13%;left:24%;transform:rotate(-5deg);z-index:3}
.m20-portrait-1{width:32%;height:44%;top:7%;right:-2%;transform:rotate(9deg);z-index:2}
.m20-portrait-2{width:31%;height:42%;left:2%;bottom:6%;transform:rotate(7deg);z-index:4}
.m20-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid #ded3c6;background:#f0e7dc}
.m20-stats>div{display:flex;align-items:center;gap:12px;min-width:0;padding:20px 23px;border-right:1px solid #d6cabd}
.m20-stats b{font:800 clamp(20px,2.6vw,33px) Georgia,serif;color:#a45536}
.m20-stats span{font-size:12px;color:#786c63;line-height:1.4}
.m20-story,.m20-directory,.m20-roles{padding:40px clamp(15px,3.5vw,45px);min-width:0}
.m20 section>header>small{font:800 11px ui-monospace,monospace;color:#ba7250;letter-spacing:.11em}
.m20 section>header h2{font:800 clamp(25px,3.4vw,44px)/1.25 "Noto Serif SC",serif;letter-spacing:-.04em;margin:10px 0}
.m20 section>header p{color:#82776a;font-size:13px;line-height:1.9}
.m20-story{background:#faf8f4}
.m20-story-body{margin-top:25px;display:grid;grid-template-columns:minmax(150px,.65fr) minmax(0,1.45fr);gap:30px;min-width:0}
.m20-feature-person{position:relative;background:#e5d9c9;display:block;min-width:0}
.m20-feature-person img{display:block;width:100%;height:390px;object-fit:cover;object-position:center 22%}
.m20-feature-person span{position:absolute;bottom:0;left:0;right:0;background:#172c29dc;color:#f6ecdb;font-size:13px;padding:12px 15px}
.m20-timeline{padding:0;margin:0;list-style:none;border-top:2px solid #334844}
.m20-timeline li{display:grid;grid-template-columns:35px 55px minmax(0,1fr) 20px;align-items:center;gap:12px;padding:17px 9px;border-bottom:1px solid #dcd4cc;min-width:0}
.m20-sequence{color:#b46b49;font:750 13px ui-monospace,monospace}
.m20-timeline time{font:700 12px ui-monospace,monospace;color:#88766b}
.m20-timeline li>a{font-weight:750;overflow-wrap:anywhere}
.m20-directory{background:#eee9e1;border-top:1px solid var(--m20-line)}
.m20-entries{margin-top:24px;border-top:2px solid #8a8b7d}
.m20-entry{display:grid;grid-template-columns:40px 75px minmax(140px,.65fr) minmax(0,1.6fr);gap:17px;align-items:center;padding:15px 5px;border-bottom:1px solid #d7cbbf;min-width:0}
.m20-number{align-self:center;color:#b47b5b;font:750 17px Georgia,serif}
.m20-face{display:block}.m20-face img{width:75px;height:94px;object-fit:cover;object-position:center 20%;display:block}
.m20-name{min-width:0}.m20-name small{font:700 9px ui-monospace,monospace;color:#967b68}
.m20-name h3{font-size:clamp(18px,2vw,27px);margin:4px 0;overflow-wrap:anywhere;line-height:1.35}
.m20-works{display:flex;flex-direction:column;gap:6px;min-width:0}
.m20-works>a{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;color:#525c56;overflow-wrap:anywhere;font-size:12px}
.m20-works time{font:700 11px ui-monospace,monospace;color:#a67e69}
.m20-all{display:inline-block;margin-top:18px;padding:11px 15px;border:1px solid #8d705b;font-weight:750;font-size:13px}
.m20-roles{background:#faf8f4}
.m20-role-list{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.m20-role-list>article{display:grid;grid-template-columns:65px minmax(0,1fr);gap:12px;align-items:start;min-width:0;border:1px solid #e0d8cf;background:white;padding:12px}
.m20-role-list img{display:block;width:65px;height:85px;object-fit:cover;object-position:center 20%}
.m20-role-list article>div{min-width:0}
.m20-role-list strong{display:block;font-size:15px;overflow-wrap:anywhere}
.m20-role-list p{font-size:11px;color:#796f67;margin:7px 0;overflow-wrap:anywhere;display:grid;gap:3px}
.m20-role-list p span{color:#b66a4b}
.m20-role-list p a{text-decoration:underline;text-underline-offset:3px}
.m20-outro{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:15px;background:#1b3430;padding:25px 36px;color:#e7d7c8}
.m20-outro p{font:700 12px ui-monospace,monospace;letter-spacing:.1em}
.m20-outro a{font-weight:800;font-size:13px;color:#f4cca4;text-decoration:underline}
@media(max-width:920px){
 .m20-hero{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}
 .m20-portrait-0{left:21%;width:50%}.m20-portrait-1{right:-8%;width:37%}
 .m20-entry{grid-template-columns:30px 65px minmax(110px,.6fr) minmax(0,1.5fr);gap:10px}
 .m20-face img{width:65px}
}
@media(max-width:690px){
 .m20-hero{display:flex;flex-direction:column;min-height:0}
 .m20-headline{padding:25px 20px 20px;min-height:300px}
 .m20-headline h1{font-size:clamp(39px,10vw,55px);margin:15px 0}
 .m20-feature-portraits{height:315px;min-height:315px;flex:none}
 .m20-portrait-0{width:36%;height:77%;top:7%;left:31%}
 .m20-portrait-1{width:30%;height:56%;right:7%;top:0}
 .m20-portrait-2{width:29%;height:54%;bottom:3%;left:5%}
 .m20-portrait span{padding:23px 6px 7px}.m20-portrait span b{font-size:11px}
 .m20-stats>div{padding:13px 7px;display:grid;gap:2px;text-align:center}
 .m20-stats b{font-size:19px}.m20-stats span{font-size:10px}
 .m20-story,.m20-directory,.m20-roles{padding:24px 13px}
 .m20-story-body{grid-template-columns:minmax(0,1fr);gap:14px}
 .m20-feature-person img{width:100%;height:260px;object-position:center 22%}
 .m20-entry{grid-template-columns:28px 60px minmax(0,1fr);gap:9px;align-items:center}
 .m20-face img{width:60px;height:76px}
 .m20-works{grid-column:2/4;padding:4px 0 0 0}
 .m20-name h3{font-size:20px}
 .m20-role-list{grid-template-columns:minmax(0,1fr);gap:8px}
 .m20-timeline li{grid-template-columns:23px 40px minmax(0,1fr) 12px;gap:6px;padding:13px 3px}
 .m20-timeline li>a{font-size:13px}
 .m20-outro{padding:21px 15px}
}
@media(max-width:365px){
 .m20-portrait-0{width:43%;left:26%}.m20-portrait-1{width:31%;right:-3%}
 .m20-headline{padding:23px 13px}.m20-stats span{font-size:9px}
}
