/* service-apply — success state (copied from the design's visa-success card) + server error box */
.okwrap{max-width:760px;margin:0 auto}
.okcard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px 28px;text-align:center;box-shadow:0 10px 30px rgba(12,43,63,.08)}
.okicon{width:86px;height:86px;border-radius:50%;background:#e8f6f3;color:var(--teal-d);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.okicon svg{width:44px;height:44px;stroke-width:2.4}
.okcard h2{font-size:26px;font-weight:900;color:var(--navy)}
.okcard p{color:var(--muted);margin-top:8px}
.ordernum{display:inline-flex;align-items:center;gap:10px;background:var(--soft);border:1px dashed var(--line);border-radius:14px;padding:12px 20px;margin-top:18px;font-weight:800;color:var(--navy);font-size:17px}
.oktable{margin-top:22px;text-align:start}
.okrow{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:11px 0;font-size:15px;color:var(--muted)}
.okrow b{color:var(--navy);text-align:end}
.okrow:last-child{border-bottom:0}
.oksteps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:26px}
.okstep{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 16px;text-align:center}
.okstep .n{width:34px;height:34px;border-radius:50%;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;margin:0 auto 10px}
.okstep b{display:block;color:var(--navy);font-size:15.5px}
.okstep small{color:var(--muted);font-size:13.5px}
.okbtns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
.okbtns .btn{width:auto;min-width:210px;margin-top:0}
.btn-navy2{background:var(--navy);color:#fff}
@media (max-width:720px){.oksteps{grid-template-columns:1fr}.okbtns .btn{width:100%}}
.sv-err{background:#fdf0f0;border:1px solid #f3c6c6;color:#9b2c2c;border-radius:12px;padding:12px 16px;margin:0 0 14px;font-size:14px;line-height:1.8}
.sv-err ul{margin:4px 0 0;padding-inline-start:18px}
.fld .ferr{display:block;color:#c0392b;font-size:12.5px;font-weight:600}
#sv-next[disabled]{opacity:.7;cursor:progress}

/* ---------- premium request fields: cards, chips, styled dropdown, date ---------- */
#sv-details .f2{align-items:start}
.svx-wide{grid-column:1/-1}
.svx-fld > span{font-weight:800;color:var(--navy);font-size:14px}
.svx-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.svx-cards--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.svx-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:104px;padding:16px 12px;border:1.5px solid var(--line);border-radius:16px;background:#fff;font:inherit;color:var(--ink);cursor:pointer;text-align:center;transition:border-color .15s,box-shadow .15s,background .15s,transform .15s}
.svx-card:hover{border-color:#a8dcd1;transform:translateY(-1px)}
.svx-card b{font-size:14.5px;font-weight:800;line-height:1.35}
.svx-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#f1f6f8;color:#5d6f7c;transition:background .15s,color .15s}
.svx-flag{width:44px;height:44px;display:block;filter:drop-shadow(0 4px 10px rgba(12,43,63,.18))}
.svx-flag svg{width:100%;height:100%}
.svx-tick{position:absolute;top:10px;inset-inline-start:10px;width:20px;height:20px;border-radius:50%;border:1.5px solid #d3dee4;background:#fff}
.svx-card.sel{border-color:var(--teal);background:linear-gradient(180deg,#f3fbf9,#fff);box-shadow:0 12px 26px -18px rgba(15,143,123,.75)}
.svx-card.sel .svx-ic{background:var(--teal);color:#fff}
.svx-card.sel .svx-tick{background:var(--teal);border-color:var(--teal)}
.svx-card.sel .svx-tick::after{content:"";position:absolute;inset:0;margin:auto;width:8px;height:4.5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}
.svx-card:focus-visible,.svx-chip:focus-visible{outline:3px solid rgba(24,174,151,.35);outline-offset:2px}
.svx-chips{display:flex;flex-wrap:wrap;gap:8px}
.svx-chip{padding:9px 16px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font:inherit;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.svx-chip:hover{border-color:#a8dcd1}
.svx-chip.sel{background:var(--navy);border-color:var(--navy);color:#fff}
.svx-selwrap{position:relative;display:flex;align-items:center}
.svx-selwrap::after{content:"";position:absolute;inset-inline-end:18px;top:50%;width:8px;height:8px;margin-top:-6px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);pointer-events:none}
.svx-selwrap select{width:100%;appearance:none;-webkit-appearance:none;min-height:50px;padding-inline:16px 40px;font-weight:700;cursor:pointer}
.svx-selflag{position:absolute;inset-inline-start:14px;width:24px;height:24px;pointer-events:none}
.svx-selflag svg{width:100%;height:100%}
.svx-selflag + select{padding-inline-start:48px}
.svx-date input{min-height:50px}
@media (max-width:640px){.svx-cards,.svx-cards--4{grid-template-columns:repeat(2,minmax(0,1fr))}.svx-card{min-height:92px;padding:14px 10px}}

/* ===== premium layer — the same look as the visa application and the car booking (visa-premium.css) ===== */
.sv-wrap{max-width:960px}
.sv-wrap .vsteps .pbar{inset-inline:calc(100% / 6 + 6px)}
.sv-wrap .panelcard h3{margin:2px 0 4px}
.sv-sub{margin:20px 0 10px;font-size:15px;font-weight:900;color:var(--vp-navy,#0c2b3f)}
/* fields */
#sv-flow .fld>span,.svx-fld>span{font-size:14px;font-weight:800;color:var(--vp-navy,#0c2b3f)}
#sv-flow .fld input,#sv-flow .fld textarea,#sv-flow .svx-selwrap select{min-height:52px;border-radius:14px;border:1.5px solid var(--vp-line,#e3eaee);padding:12px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}
#sv-flow .fld textarea{min-height:110px;resize:vertical;line-height:1.7}
#sv-flow .fld input:hover,#sv-flow .fld textarea:hover{border-color:#c9d6dd}
#sv-flow .fld input:focus,#sv-flow .fld textarea:focus,#sv-flow .svx-selwrap select:focus{border-color:var(--vp-teal,#18ae97);box-shadow:0 0 0 4px rgba(24,174,151,.14)}
#sv-details .f2{gap:18px 16px}
#sv-details .fld{margin-bottom:0}
/* choices: teal like the rest of the site (not navy) */
.svx-chips{gap:10px}
.svx-chip{min-height:44px;padding:9px 18px;border-radius:14px;font-weight:800;color:var(--vp-navy,#0c2b3f);transition:all .2s}
.svx-chip:hover{border-color:var(--vp-teal,#18ae97);background:#f6fcfb}
.svx-chip.sel{background:var(--vp-mint,#eaf7f4);border-color:var(--vp-teal,#18ae97);color:var(--vp-teal-d,#0f8f7b);box-shadow:0 10px 22px -16px rgba(15,143,123,.9)}
.svx-chip.sel::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--vp-teal,#18ae97);margin-inline-end:8px;vertical-align:middle}
.svx-card{border-radius:18px}
#sv-flow .chip{min-height:48px;border-radius:14px;border-width:1.5px;padding:10px 18px;font-weight:800;transition:all .2s}
#sv-flow .chip:hover{border-color:var(--vp-teal,#18ae97);background:#f6fcfb}
#sv-flow .chip.sel{background:var(--vp-mint,#eaf7f4);border-color:var(--vp-teal,#18ae97);color:var(--vp-teal-d,#0f8f7b);box-shadow:0 10px 22px -16px rgba(15,143,123,.9)}
#sv-flow .chip.sel svg{color:var(--vp-teal-d,#0f8f7b)}
.svc-opt{border-radius:16px;border-width:1.5px;min-height:62px;transition:all .2s}
.svc-opt:hover{border-color:var(--vp-teal,#18ae97)}
.svc-opt.sel{box-shadow:0 0 0 1px var(--vp-teal,#18ae97),0 12px 26px -18px rgba(15,143,123,.9)}
.svsep{border:0;border-top:1px dashed var(--vp-line,#e3eaee);margin:22px 0}
/* review */
#sv-review{border:1px solid var(--vp-line,#e3eaee);border-radius:18px;padding:4px 18px;background:#fbfdfd}
#sv-review .sumline:last-child{border-bottom:0}
.sv-next-steps .pc-head{margin-bottom:0}
/* action bar: the teal button with its arrow */
#sv-next{background:linear-gradient(160deg,#20b9a0,var(--vp-teal-d,#0f8f7b));color:#fff;border:0;box-shadow:0 14px 26px -14px rgba(15,143,123,.95)}
#sv-next:hover{filter:brightness(1.05)}
#sv-next:not([disabled])::after{content:"←";font-weight:900}
body.is-en #sv-next:not([disabled])::after{content:"→"}
.sv-err{border-radius:16px;padding:14px 18px}
@media (max-width:600px){
  .sv-wrap .stickybar{grid-template-columns:minmax(0,1fr);gap:8px}
  .sv-wrap .stickybar .navbtns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:8px}
  .sv-wrap .stickybar .btn{min-width:0;white-space:nowrap;padding:0 10px}
  #sv-flow .chip{flex:1 1 auto;justify-content:center}
}

/* ===== tours: going and return dates, the nights between them, fixed / flexible ===== */
.sv-range__box{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;border:1.5px solid var(--vp-line,#e3eaee);border-radius:18px;background:#fff;transition:border-color .2s,box-shadow .2s}
.sv-range__box:focus-within{border-color:var(--vp-teal,#18ae97);box-shadow:0 0 0 4px rgba(24,174,151,.12)}
.sv-range__d{display:flex;flex-direction:column;gap:4px;padding:10px 14px;margin:0;min-width:0}
.sv-range__d small{font-size:12px;font-weight:800;color:var(--vp-muted,#5d6f7c)}
.sv-range__d input,.sv-range__d .htp-trig{border:0!important;box-shadow:none!important;min-height:44px!important;padding-inline:0!important;background:transparent!important}
.sv-range__mid{display:flex;align-items:center;gap:6px;padding:0 4px;color:#b3c3cb}
.sv-range__mid i{width:18px;height:1.5px;background:currentColor;border-radius:2px}
.sv-range__mid b{display:none;white-space:nowrap;padding:4px 12px;border-radius:999px;background:var(--vp-mint,#eaf7f4);color:var(--vp-teal-d,#0f8f7b);font-size:12.5px;font-weight:900}
.sv-range__mid.is-on{color:var(--vp-teal,#18ae97)}
.sv-range__mid.is-on b{display:inline-block}
.sv-range__mid:not(.is-on)::before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}
.sv-flex{margin-top:12px}
@media (max-width:640px){
  .sv-range__box{grid-template-columns:minmax(0,1fr)}
  .sv-range__mid{justify-content:center;padding:2px 0;border-block:1px dashed var(--vp-line,#e3eaee)}
  .sv-range__mid i{width:28px}
}

/* ===== trip types as icon cards, number tiles, budget tiers, destination suggestions ===== */
.svx-cards--sm{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}
.svx-card--sm{min-height:96px;padding:14px 8px 12px;gap:8px}
.svx-card--sm .svx-ic{width:42px;height:42px;border-radius:13px;background:#f1f7f6;color:var(--vp-teal-d,#0f8f7b)}
.svx-card--sm b{font-size:13.5px}
.svx-card--sm .svx-tick{top:8px;inset-inline-start:8px;width:18px;height:18px}
.svx-card .svx-ic{color:var(--vp-teal-d,#0f8f7b);background:#f1f7f6}
.svx-card.sel .svx-ic{background:linear-gradient(160deg,#2bc4aa,var(--vp-teal-d,#0f8f7b));color:#fff;box-shadow:0 8px 16px -10px rgba(15,143,123,.9)}
.svx-sub{font-size:12px;font-weight:700;color:var(--vp-muted,#5d6f7c);margin-top:-4px}
.svx-card.sel .svx-sub{color:var(--vp-teal-d,#0f8f7b)}
.svx-nums{display:flex;flex-wrap:wrap;gap:10px}
.svx-num{width:64px;height:58px;border-radius:18px;border:1.5px solid var(--vp-line,#e3eaee);background:#fff;font:inherit;cursor:pointer;display:grid;place-items:center;transition:all .2s}
.svx-num b{font-size:18px;font-weight:900;color:var(--vp-navy,#0c2b3f)}
.svx-num:hover{border-color:var(--vp-teal,#18ae97)}
.svx-num:hover b{color:var(--vp-teal-d,#0f8f7b)}
.svx-num.sel{background:linear-gradient(160deg,#2bc4aa,var(--vp-teal-d,#0f8f7b));border-color:transparent;box-shadow:0 12px 24px -14px rgba(15,143,123,.95)}
.svx-num.sel b{color:#fff}
.svx-num:focus-visible{outline:3px solid rgba(24,174,151,.35);outline-offset:2px}
.sv-dest>label{font-size:14px;font-weight:800;color:var(--vp-navy,#0c2b3f)}
.sv-dest__in{position:relative;display:flex;align-items:center}
.sv-dest__in svg{position:absolute;inset-inline-start:16px;width:20px;height:20px;color:var(--vp-teal-d,#0f8f7b);pointer-events:none}
#sv-flow .sv-dest__in input{width:100%;padding-inline-start:46px}
.sv-dest__sug{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.sv-dest__sug small{font-size:12px;font-weight:800;color:var(--vp-muted,#5d6f7c);margin-inline-end:4px}
.sv-dest__chip{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px 0 10px;border-radius:999px;border:1.5px solid var(--vp-line,#e3eaee);background:#fff;font:inherit;font-size:13px;font-weight:800;color:var(--vp-navy,#0c2b3f);cursor:pointer;transition:all .2s}
.sv-dest__chip:hover{border-color:var(--vp-teal,#18ae97)}
.sv-dest__chip.sel{background:var(--vp-mint,#eaf7f4);border-color:var(--vp-teal,#18ae97);color:var(--vp-teal-d,#0f8f7b)}
.sv-dest__flag{width:20px;height:20px;border-radius:50%;overflow:hidden;display:block;box-shadow:0 0 0 1.5px #fff,0 2px 6px rgba(12,43,63,.2)}
.sv-dest__flag svg{width:100%;height:100%;display:block}
@media (max-width:640px){
  .svx-cards--sm{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .svx-card--sm{min-height:88px;padding:12px 4px 10px}
  .svx-card--sm b{font-size:12.5px}
  .svx-num{flex:1 1 0;min-width:56px}
}

/* ===== several favourite destinations: tags in the field, suggestions toggle on/off ===== */
.sv-dest__hint{font-size:12px;font-weight:700;color:var(--vp-muted,#5d6f7c);margin-inline-start:6px}
.sv-dest__box{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;padding:8px 14px;border:1.5px solid var(--vp-line,#e3eaee);border-radius:16px;background:#fff;cursor:text;transition:border-color .2s,box-shadow .2s}
.sv-dest__box:hover{border-color:#c9d6dd}
.sv-dest__box:focus-within{border-color:var(--vp-teal,#18ae97);box-shadow:0 0 0 4px rgba(24,174,151,.14)}
.sv-dest__box>svg{width:20px;height:20px;color:var(--vp-teal-d,#0f8f7b);flex:none}
.sv-dest__tags{display:contents}
.sv-dest__tag{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 6px 0 10px;border-radius:999px;background:var(--vp-mint,#eaf7f4);border:1px solid #bfe6dc;color:var(--vp-teal-d,#0f8f7b);font-size:13.5px;font-weight:800;animation:svTagIn .18s ease}
[dir=rtl] .sv-dest__tag{padding:0 10px 0 6px}
.sv-dest__tag button{all:unset;cursor:pointer;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:16px;line-height:1;color:var(--vp-teal-d,#0f8f7b);background:#fff;transition:background .15s,color .15s}
.sv-dest__tag button:hover{background:#c0392b;color:#fff}
.sv-dest__tag button:focus-visible{outline:2px solid var(--vp-teal,#18ae97)}
#sv-flow .sv-dest__box input{flex:1 1 140px;min-width:120px;min-height:38px!important;border:0!important;box-shadow:none!important;padding:0 4px!important;background:transparent}
.sv-dest__plus{width:16px;height:16px;border-radius:50%;position:relative;background:#eef3f5;flex:none;transition:background .15s}
.sv-dest__plus::before,.sv-dest__plus::after{content:"";position:absolute;inset:0;margin:auto;width:8px;height:1.8px;border-radius:2px;background:var(--vp-muted,#5d6f7c)}
.sv-dest__plus::after{transform:rotate(90deg)}
.sv-dest__chip.sel .sv-dest__plus{background:var(--vp-teal,#18ae97)}
.sv-dest__chip.sel .sv-dest__plus::before{width:5px;height:1.8px;background:#fff;transform:translate(-2px,1px) rotate(45deg)}
.sv-dest__chip.sel .sv-dest__plus::after{width:9px;height:1.8px;background:#fff;transform:translate(1.5px,0) rotate(-50deg)}
.sv-dest__chip[disabled]{opacity:.45;cursor:not-allowed}
.sv-dest__count{display:block;margin-top:8px;font-size:12.5px;font-weight:800;color:var(--vp-teal-d,#0f8f7b);min-height:1em}
@keyframes svTagIn{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.sv-dest__tag{animation:none}}
#sv-flow .sv-dest__box input:disabled{display:none}
