/* VITAL cases page – layout follows olliumclinic.com/before-after (scaled 1440→1920 = ×1.333) */
.vc-visual{position:relative;height:640px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;background:#3a2c22 url(cases-visual.jpg) center/cover no-repeat;overflow:hidden}
.vc-visual::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,20,14,.55),rgba(28,20,14,.25) 55%,rgba(28,20,14,.15))}
.vc-visual>*{position:relative}
.vc-visual h1{margin:0;font-family:'Genos',sans-serif;font-weight:400;font-size:66px;letter-spacing:4px;line-height:1.1}
.vc-visual p{margin:34px 0 0;font-size:28px;font-weight:400;letter-spacing:-.3px;opacity:.95}
.vc-wrap{background:#f6f5f3;padding:54px 0 0}
.vc-tabs{list-style:none;display:flex;margin:0;padding:0 0 0 0;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}
.vc-tabs::-webkit-scrollbar{display:none}
.vc-tabs li{flex:0 0 237px;position:relative}
.vc-tabs button{all:unset;box-sizing:border-box;display:block;width:100%;height:76px;text-align:center;font-size:23px;color:#333;cursor:pointer;transition:color .2s}
.vc-tabs button:hover{color:#7a4e2d}
.vc-tabs li.on button{font-weight:700;color:#111}
.vc-tabs li.on::before,.vc-tabs li.on::after{content:"";position:absolute;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(122,78,45,0),rgba(122,78,45,.6) 50%,rgba(122,78,45,0))}
.vc-tabs li.on::before{top:0}.vc-tabs li.on::after{bottom:0}
.vc-inner{width:1766px;margin:0 auto}
.vc-best{margin-top:54px;border:1px solid #ddd;border-top:0;background:#f6f5f3}
.vc-best-head{margin:0;height:99px;display:flex;align-items:center;justify-content:center;background:#5b3a24;color:#fff;font-family:'Genos',sans-serif;font-weight:400;font-size:39px;letter-spacing:3px}
.vc-best .vc-grid{padding:60px 59px 54px;grid-template-columns:repeat(3,530px);gap:27px}
.vc-grid{display:grid;grid-template-columns:repeat(3,571px);gap:62px 27px;margin:0;padding:0;list-style:none}
.vc-list{margin-top:81px}
.vc-card a{display:block;color:inherit;text-decoration:none}
.vc-pair{display:grid;grid-template-columns:1fr 1fr}
.vc-shot{position:relative;aspect-ratio:2.25/1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;overflow:hidden;color:#8d7f71;background:#e7e1d9}
.vc-shot::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 90% at 50% 40%,rgba(255,255,255,.55),rgba(255,255,255,0) 70%),repeating-linear-gradient(135deg,rgba(122,78,45,.045) 0 1px,transparent 1px 12px)}
.vc-shot.after{background:#ddd5ca}
.vc-shot>*{position:relative}
.vc-shot .vt{font-family:'Belleza',sans-serif;font-size:30px;letter-spacing:.3em;color:rgba(91,58,36,.22)}
.vc-shot .st{font-size:15px;letter-spacing:-.2px;color:#8d7f71}
.vc-bar{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 19px;color:#fff;font-family:'Genos',sans-serif;font-size:25px;letter-spacing:.5px}
.vc-bar small{font-family:'Pretendard',sans-serif;font-size:13px;font-weight:600;letter-spacing:0;opacity:.95}
.vc-bar.before{background:#8b8279}.vc-bar.after{background:#5b3a24}
.vc-card h3{margin:20px 0 0;font-size:25px;font-weight:700;color:#222;letter-spacing:-.4px}
.vc-card .cat{display:block;margin-top:6px;font-size:16px;color:#8b847b}
.vc-card a:hover h3{color:#5b3a24}
.vc-card[hidden]{display:none}
.vc-empty{display:none;padding:80px 0;text-align:center;color:#8b847b;font-size:19px}
.vc-note{margin:72px auto 0;text-align:center;font-size:15px;line-height:1.75;color:#7d7770}
.vc-paging{display:flex;justify-content:center;gap:8px;margin:62px 0 0;padding-bottom:150px}
.vc-paging span{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:13px;border:1px solid #ccc;color:#555;background:#fff}
.vc-paging span.on{background:#222;border-color:#222;color:#fff}
.vc-cases-page .va-lineup{padding-top:120px}
@media(max-width:1100px){
  .vc-visual{height:62vw;max-height:420px}
  .vc-visual h1{font-size:32px;letter-spacing:2px}
  .vc-visual p{margin-top:16px;font-size:15px}
  .vc-wrap{padding-top:24px}
  .vc-tabs li{flex:0 0 auto}
  .vc-tabs button{height:48px;padding:0 18px;font-size:15px}
  .vc-inner{width:auto;margin:0 16px}
  .vc-best{margin-top:24px}
  .vc-best-head{height:54px;font-size:21px}
  .vc-best .vc-grid,.vc-grid{grid-template-columns:1fr;gap:30px;padding:0}
  .vc-best .vc-grid{padding:20px 16px 24px}
  .vc-list{margin-top:36px}
  .vc-bar{height:36px;padding:0 10px;font-size:17px}
  .vc-bar small{font-size:10px}
  .vc-shot .vt{font-size:20px}.vc-shot .st{font-size:11px}
  .vc-card h3{margin-top:12px;font-size:17px}
  .vc-card .cat{font-size:13px}
  .vc-note{margin-top:36px;font-size:12px;padding:0 6px}
  .vc-paging{margin-top:30px;padding-bottom:70px}
}
/* existing quick bar sat on the old sub-hero (top:500); move it to straddle the new visual's bottom edge */
@media(min-width:1101px){.vc-cases-page .fquick{top:789px!important;z-index:5}.vc-cases-page .vc-wrap{padding-top:84px}}
