.v-fam-g{display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;align-items:start}
.v-fam-av{width:88px;height:88px;border-radius:24px;display:grid;place-items:center;font-size:2.4rem;background:var(--v-gold-l);border:2px solid #F3DD8A;margin-bottom:1rem}
.v-rel{display:inline-block;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;background:var(--v-red);color:#fff;border-radius:99px;padding:.25rem .7rem;margin-bottom:.6rem}
.v-role{font-size:.95rem;font-weight:700;color:var(--v-red);margin:.1rem 0 .7rem}
.v-facts{background:#fff;border:1px solid var(--v-line);border-radius:16px;overflow:hidden}
.v-facts div{display:grid;grid-template-columns:8.5rem 1fr;gap:.8rem;padding:.7rem 1rem;border-bottom:1px solid #F4EFE8;font-size:.84rem}
.v-facts div:last-child{border-bottom:0}.v-facts dt{font-weight:700;color:var(--v-mute);font-size:.74rem}.v-facts dd{margin:0;font-weight:700;color:var(--v-ink)}
.v-prose{max-width:74ch}.v-prose h2{font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.25rem;margin:1.6rem 0 .6rem;padding-left:.7rem;border-left:4px solid var(--v-red)}
.v-prose h2:first-child{margin-top:0}.v-prose p{font-size:.95rem;line-height:1.8;color:var(--v-ink2);margin:0 0 .9rem}
.v-works{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}
.v-works li{display:grid;grid-template-columns:4.5rem 1fr;gap:.8rem;background:#fff;border:1px solid var(--v-line);border-radius:12px;padding:.7rem .9rem;align-items:center}
.v-works b{font-family:'Montserrat',sans-serif;font-weight:900;color:var(--v-red)}.v-works span{font-size:.86rem}.v-works small{display:block;color:var(--v-mute);font-size:.74rem}
.v-tbl tr.vj td{background:#FFF8E1;font-weight:700}.v-tbl tr.vj td:last-child{color:var(--v-red)}
.v-prose a{color:var(--v-red);font-weight:600}
.v-famnav{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}
.v-famnav a{display:flex;flex-direction:column;gap:.15rem;background:#fff;border:1px solid var(--v-line);border-radius:14px;padding:.85rem .9rem;text-decoration:none;color:var(--v-ink)}
.v-famnav a:hover{border-color:var(--v-red)}.v-famnav a.on{border-color:var(--v-red);background:#FFF7F4;pointer-events:none}
.v-famnav small{font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--v-red)}.v-famnav b{font-size:.86rem}
.js-film{display:grid;grid-template-columns:150px 1fr;background:#fff;border:1px solid var(--v-line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--v-ink);box-shadow:0 14px 30px -26px rgba(94,0,0,.5)}.js-film:hover{border-color:var(--v-red)}.js-film-mark{display:grid;place-items:center;background:linear-gradient(150deg,#A31515,#5E0000);color:#FFD700;font:900 4.4rem/1 Montserrat,sans-serif}.js-film-b{display:flex;flex-direction:column;gap:.35rem;padding:1.1rem 1.2rem}.js-film-k{font:800 .64rem Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--v-red)}.js-film-b>b{font:900 1.6rem Montserrat,sans-serif}.js-film-d{font-size:.88rem;color:var(--v-ink2);line-height:1.6}.js-film-s{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin-top:.3rem}.js-film-s span{background:var(--v-ivory);border:1px solid var(--v-line);border-radius:10px;padding:.45rem .6rem;font-size:.7rem;color:var(--v-mute)}.js-film-s b{display:block;font:900 .95rem Montserrat,sans-serif;color:var(--v-red)}.js-film-go{font:800 .8rem Inter,sans-serif;color:var(--v-red);margin-top:.2rem}.js-more{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin-top:.8rem}.js-more div{background:#fff;border:1px solid var(--v-line);border-radius:14px;padding:.8rem 1rem}.js-more small{display:block;font:800 .62rem Inter,sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--v-red)}.js-more b{display:block;font:900 1rem Montserrat,sans-serif;margin:.15rem 0}.js-more span{font-size:.8rem;color:var(--v-mute)}@media(max-width:640px){.js-film{grid-template-columns:1fr}.js-film-mark{padding:1rem 0;font-size:3rem}.js-film-s{grid-template-columns:1fr 1fr}.js-more{grid-template-columns:1fr}}
@media (max-width:860px){.v-fam-g{grid-template-columns:1fr}.v-famnav{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.v-facts div{grid-template-columns:1fr;gap:.1rem}}
