/* Travel Insurance page only. Loaded after css/services.css. */
/* ---- INSURANCE · covered / not covered ---- */
.cov{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.cov-col{padding:clamp(24px,2.6vw,34px);border-radius:10px;background:#fff;border:1px solid var(--line)}
.cov-col.yes{border-top:4px solid var(--ok)}
.cov-col.no{border-top:4px solid var(--no);background:#FFFBFA}
.cov-col h3{display:flex;align-items:center;gap:12px;font-size:clamp(21px,1.9vw,25px);margin:0 0 14px;color:var(--purple-700)}
.cov-col.yes h3 i{color:var(--ok)}
.cov-col.no h3 i{color:var(--no)}
.cov-col ul{list-style:none;margin:0;padding:0}
.cov-col li{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-top:1px dashed var(--line);font-size:15px;line-height:1.55;color:#3F3943}
.cov-col li i{flex:none;margin-top:3px;font-size:14px}
/* ---- INSURANCE · traveller tabs ---- */
.tabs2{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.tab2{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;border:1px solid var(--line);border-radius:var(--r-pill);background:#fff;
 cursor:pointer;font-family:inherit;font-size:13.5px;font-weight:500;color:#4A4450;white-space:nowrap;
 transition:background .25s ease,color .25s ease,border-color .25s ease}
.tab2:hover{border-color:var(--purple-400);color:var(--purple-700)}
.tab2[aria-selected="true"]{background:var(--purple-700);border-color:var(--purple-700);color:#fff}
.tab2[aria-selected="true"] i{color:var(--gold)}
.tab2:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.tpanel{display:grid;grid-template-columns:auto minmax(0,1fr);gap:clamp(18px,2.4vw,32px);align-items:start;padding:clamp(24px,3vw,40px);
 background:#fff;border-radius:10px;border:1px solid var(--line);animation:s-up .5s var(--ease) both}
.tpanel[hidden]{display:none}
.tpanel > i{display:flex;align-items:center;justify-content:center;width:72px;height:72px;border-radius:50%;
 background:var(--purple-900);color:var(--gold);font-size:30px}
.tpanel h3{font-size:clamp(22px,2vw,28px);color:var(--purple-700);margin:8px 0 10px}
.tpanel p{margin:0;font-size:15.5px;line-height:1.75;color:#3F3943;max-width:46em}
/* ---- INSURANCE · claim steps ---- */
.claims{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);list-style:none;margin:0;padding:0;counter-reset:cl}
.claims li{position:relative;padding:clamp(22px,2.2vw,28px);background:var(--paper);border:1px solid #EFE4EA;border-radius:8px;counter-increment:cl}
.claims li:before{content:counter(cl,decimal-leading-zero);display:block;font-family:'Playfair Display',serif;font-style:italic;
 font-size:30px;color:var(--gold);line-height:1;margin-bottom:16px}
.claims h3{font-size:17.5px;color:var(--purple-700);margin:0 0 8px;line-height:1.3}
.claims p{margin:0;font-size:14px;line-height:1.65;color:#4A4450}
@media (max-width:640px){
  .tpanel{grid-template-columns:minmax(0,1fr)}
  .tpanel > i{width:56px;height:56px;font-size:24px}
  .tabs2{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-inline:-20px;padding:2px 20px 6px}
  .tabs2::-webkit-scrollbar{display:none}
}
.tpanel{grid-template-columns:minmax(0,1fr)}
