/* ================= VISA SERVICES PAGE ================= */
.vquick{position:sticky;top:0;z-index:40;background:var(--bordeaux);border-bottom:1px solid rgba(201,162,75,.2)}
.vquick__in{display:flex;gap:.5rem;overflow-x:auto;padding:.9rem 0;scrollbar-width:none}
.vquick__in::-webkit-scrollbar{display:none}
.vchip{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border-radius:999px;border:1px solid rgba(201,162,75,.35);color:var(--sand);font-size:.86rem;font-weight:500;white-space:nowrap;transition:.25s;text-decoration:none}
.vchip:hover,.vchip.on{background:var(--brass);color:var(--bordeaux);border-color:var(--brass)}
.vchip b{font-weight:700;color:var(--brass)}
.vchip:hover b,.vchip.on b{color:var(--bordeaux)}

.country{scroll-margin-top:86px}
.country__top{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:start;margin-bottom:2.4rem}
.country__info .eyebrow{margin-bottom:1rem}
.country__code{display:inline-block;font-family:var(--f-display);font-weight:700;font-size:.95rem;letter-spacing:.08em;color:var(--brass);background:var(--bordeaux);padding:.35em .8em;border-radius:8px;margin-bottom:1rem}
.country__info h2{font-family:var(--f-display);font-weight:600;font-size:clamp(2rem,3.4vw,2.9rem);color:var(--bordeaux);line-height:1.06;margin-bottom:.8rem}
.country__info h2 em{color:var(--wine)}
.country__blurb{color:#5a6b7a;font-size:1.05rem;max-width:48ch}
.country__meta{background:var(--white);border:1px solid rgba(28,59,107,.08);border-radius:var(--r-lg);padding:1.8rem;box-shadow:var(--shadow-sm)}
.country__facts{display:flex;gap:1.6rem;flex-wrap:wrap;padding-bottom:1.3rem;margin-bottom:1.3rem;border-bottom:1px solid rgba(28,59,107,.1)}
.cfact{display:flex;flex-direction:column;gap:.15rem}
.cfact b{font-family:var(--f-display);font-size:1.25rem;color:var(--wine);line-height:1}
.cfact span{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--brass-d);font-weight:600}
.country__reqs{list-style:none;display:grid;gap:.6rem;margin-bottom:1.5rem}
.country__reqs li{display:flex;align-items:center;gap:.7rem;font-size:.92rem;color:#33475a}
.country__reqs .ic{color:var(--brass);background:rgba(201,162,75,.14);width:1.55em;height:1.55em;padding:.3em;border-radius:50%;flex:none}
.country__meta .btn{width:100%;justify-content:center}

/* contained carousel — lives inside .wrap, never bleeds */
.vcar{position:relative;width:100%}
.vcar__track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:.2rem;scrollbar-width:none}
.vcar__track::-webkit-scrollbar{display:none}
.vcar__slide{flex:0 0 calc((100% - 2rem)/3);height:340px;border-radius:var(--r);overflow:hidden;background-size:cover;background-position:center;scroll-snap-align:start;box-shadow:var(--shadow-sm)}
.vcar__btns{display:flex;gap:.6rem;justify-content:flex-end;margin-top:1rem}
.vcbtn{width:46px;height:46px;border-radius:50%;border:1.5px solid rgba(28,59,107,.2);background:var(--white);color:var(--wine);cursor:pointer;display:grid;place-items:center;transition:.25s;box-shadow:var(--shadow-sm)}
.vcbtn:hover{background:var(--bordeaux);color:var(--cream);transform:scale(1.05)}

@media(max-width:900px){
  .country__top{grid-template-columns:1fr;gap:1.6rem;margin-bottom:1.8rem}
  .vcar__slide{flex:0 0 calc((100% - 1rem)/2);height:300px}
}
@media(max-width:560px){
  .vcar__slide{flex:0 0 88%;height:280px}
  .country__facts{gap:1.2rem}
}
