/* ===== Class coverage: six live cards ===== */
.cv{position:relative;margin-top:40px;border-radius:30px;padding:26px;color:#fff;background:linear-gradient(150deg,#0b1238,#18226a);box-shadow:0 34px 80px rgba(11,18,56,.35);overflow:hidden}
.cv::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(520px 320px at 94% 0%,rgba(245,154,31,.30),transparent 62%),radial-gradient(520px 360px at 0% 100%,rgba(61,92,255,.36),transparent 60%)}
.cv>*{position:relative}
.cv-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
@media(max-width:960px){.cv-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.cv-grid{grid-template-columns:1fr}.cv{padding:16px;border-radius:24px}}
.cv-card{position:relative;border-radius:22px;padding:20px 20px 22px;background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22);transition:transform .3s,border-color .3s,box-shadow .3s;overflow:hidden}
.cv-card::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:var(--c,#f59a1f)}
.cv-card:hover{transform:translateY(-5px);border-color:var(--c,#f59a1f);box-shadow:0 22px 50px rgba(0,0,0,.4)}
.cv-top{display:flex;align-items:center;gap:14px}
.cv-badge{flex:none;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;font-family:'Fraunces',serif;font-weight:700;font-size:1.25rem;color:#241500;background:var(--c,#f59a1f)}
.cv-badge.sm{font-size:.9rem;letter-spacing:.02em}
.cv-top b{display:block;font-family:'Fraunces',serif;font-size:1.22rem;font-weight:600;line-height:1.15}
.cv-top div span{display:block;margin-top:3px;font-size:.78rem;color:#c9d0f5;font-weight:600;letter-spacing:.04em}
.cv-sub{margin-top:16px;font-size:.62rem;font-weight:800;letter-spacing:.18em;color:#ffc266}
.cv-subs{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.cv-subs i{font-style:normal;padding:7px 12px;border-radius:99px;font-size:.78rem;font-weight:800;color:#e8ecff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22)}
.cv-subs i.nw{color:#241500;background:linear-gradient(135deg,#ffc266,#f59a1f);border-color:transparent;box-shadow:0 6px 16px rgba(245,154,31,.35)}
.cv-note{margin-top:14px;font-size:.8rem;line-height:1.5;color:#d6dcff}
.cv-foot{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.18)}
.cv-chips{display:flex;flex-wrap:wrap;gap:8px}
.cv-chips span{padding:8px 14px;border-radius:99px;font-size:.78rem;font-weight:800;color:#ffe2b0;background:rgba(255,194,102,.14);border:1px solid rgba(255,194,102,.45)}
.cv-leg{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#d6dcff}
.cv-leg i{display:inline-block;width:26px;height:14px;border-radius:99px;background:linear-gradient(135deg,#ffc266,#f59a1f)}
.cv-small{margin-top:14px;font-size:.78rem;color:#b9c1ea;line-height:1.55}
@media(prefers-reduced-motion:reduce){.cv-card{transition:none}}

/* five cards: three on the first row, two wider on the second */
.cv-grid{grid-template-columns:repeat(6,1fr)}
.cv-card{grid-column:span 2}
.cv-card:nth-child(4),.cv-card:nth-child(5){grid-column:span 3}
@media(max-width:960px){.cv-grid{grid-template-columns:repeat(2,1fr)}.cv-card,.cv-card:nth-child(4){grid-column:span 1}.cv-card:nth-child(5){grid-column:span 2}}
@media(max-width:600px){.cv-grid{grid-template-columns:1fr}.cv-card,.cv-card:nth-child(4),.cv-card:nth-child(5){grid-column:span 1}}

/* books banner and the and more pill */
.cv-books{display:flex;gap:16px;align-items:center;margin-bottom:18px;padding:16px 20px;border-radius:20px;background:linear-gradient(135deg,rgba(255,194,102,.2),rgba(255,255,255,.06));border:1px solid rgba(255,194,102,.5)}
.cv-books .bk{flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;color:#241500;background:linear-gradient(135deg,#ffc266,#f59a1f);box-shadow:0 8px 20px rgba(245,154,31,.4)}
.cv-books b{display:block;font-family:'Fraunces',serif;font-size:1.15rem;color:#fff}
.cv-books div span{display:block;margin-top:2px;font-size:.86rem;color:#e6dcc4;line-height:1.5}
.cv-subs i.more{color:#ffe2b0;background:rgba(255,194,102,.14);border:1px dashed rgba(255,194,102,.7)}
@media(max-width:600px){.cv-books{flex-direction:column;align-items:flex-start}}
