*{box-sizing:border-box;margin:0;padding:0}

.cv{
  font-family:Georgia,serif;
  background:#fff;
  padding:40px 16px 50px;
  max-width:1000px;
  margin:0 auto;
}

.cv-head{text-align:center;margin-bottom:28px}
.cv-head h2{font-size:2rem;font-weight:700;color:#1e3a5f}
.cv-line{width:48px;height:3px;background:#b8601a;margin:8px auto 12px}
.cv-head p{font-size:.9rem;color:#888;font-style:italic}

.cv-slide{display:none}
.cv-slide.on{display:block}

.cv-stage{position:relative;background:#111;border-radius:6px;overflow:hidden}

.cv-img{width:100%;height:360px;object-fit:contain;background:#0f172a;display:block}

.cv-vtag{position:absolute;left:0;top:0;bottom:0;width:42px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.5)}
.cv-vtag span{writing-mode:vertical-rl;transform:rotate(180deg);color:#fff;font-size:.75rem;font-weight:700}

.cv-arr{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:#1e3a5f;border:none;color:#fff;cursor:pointer}
.cv-arr.lft{left:50px}
.cv-arr.rgt{right:10px}

.cv-opts{display:flex;gap:14px;justify-content:center;margin-top:22px;flex-wrap:wrap}

.cv-opt{border:2px dashed #bbb;padding:10px;border-radius:8px;cursor:pointer;min-width:120px}
.cv-opt.on{border-color:#b8601a}

.cv-opt img{width:100%;height:60px;object-fit:contain;background:#0f172a;border-radius:4px}

.cv-dot{width:9px;height:9px;border:2px solid #1e3a5f;border-radius:50%;cursor:pointer}
.cv-dot.on{background:#1e3a5f}

.cv-dots{display:flex;justify-content:center;gap:7px;margin-top:20px}

.cv-btn{padding:6px 14px;background:#1e3a5f;color:#fff;border:none;border-radius:4px;cursor:pointer}
.cv-btn:hover{background:#b8601a}
