:root{--navy:#071A3D;--blue:#0E5EFF;--gold:#D4AF37;--ink:#23324a;--muted:#6d7a90;--line:#e2e8f0;--bg:#f5f7fb}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Tahoma,sans-serif;line-height:1.65}a{color:var(--blue);text-decoration:none}header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px max(5%,calc((100% - 1120px)/2));background:var(--navy);color:#fff;border-bottom:2px solid var(--gold)}header a{color:#fff}.brand{font-weight:800;font-size:22px;letter-spacing:1px}.brand span{font-size:13px;letter-spacing:2px;margin-inline-start:8px}.brand small{display:block;font-size:9px;letter-spacing:2px;color:#cbd5e1}.hero,.page{max-width:1120px;margin:54px auto;padding:0 22px}.hero{padding-top:28px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#8b6c1d}.hero h1,.form-shell h1,.page h1{color:var(--navy);font-size:clamp(30px,5vw,48px);line-height:1.2;margin:12px 0}.lead{color:var(--muted);font-size:17px;max-width:760px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0}.primary,.secondary,.outline{display:inline-block;border:0;border-radius:8px;padding:12px 20px;font-weight:700;cursor:pointer}.primary{background:var(--blue);color:#fff}.secondary,.outline{background:#fff;color:var(--navy);border:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:55px 0 25px}.steps article,.card,.application,.details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 5px 22px rgba(7,26,61,.04)}.steps b{color:var(--gold);font-size:22px}.steps h3{color:var(--navy)}.steps p,small{color:var(--muted)}.notice{background:#fff8e6;border:1px solid #ead9a5;border-radius:9px;padding:12px 15px;color:#67521b}.form-shell{max-width:520px;margin:45px auto;padding:30px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 10px 35px rgba(7,26,61,.06)}.form-shell.wide{max-width:680px}label{display:block;font-weight:700;margin:14px 0 5px}input,select,textarea{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;background:#fff}button.primary{margin-top:18px;width:100%}.link-button{background:none;border:0;color:#fff;font:inherit;cursor:pointer}.application-list{display:grid;gap:12px;margin-top:25px}.application{display:flex;justify-content:space-between;align-items:center;gap:16px;color:var(--ink)}.application div{display:grid;gap:5px}.application span{color:var(--navy);font-weight:700}.employee{align-items:start}.employee form{min-width:250px;max-width:320px;width:100%}.employee form label{font-size:13px}.empty{padding:28px;text-align:center;color:var(--muted);background:#fff;border:1px dashed #cbd5e1;border-radius:12px}.details{margin:20px 0}footer{text-align:center;padding:28px;color:var(--muted)}@media(max-width:650px){header{padding:14px 18px}.brand{font-size:18px}.hero,.page{margin:28px auto;padding:0 15px}.form-shell{margin:25px 14px;padding:22px}.application,.employee{display:block}.employee form{max-width:none;margin-top:15px}}.chat-thread{display:grid;gap:12px;margin:20px 0}.chat-message{padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.chat-message.ai{background:#eef4ff;border-color:#d7e4ff}.chat-message.staff{background:#f0f7f4;border-color:#d5e9dc}.chat-message p{white-space:pre-wrap;margin:6px 0}.chat-message small{display:block}.handoff-alert{color:#9b4d12;font-weight:700}.chat-thread+.card{margin-top:18px}
.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin:28px 0}.service-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px;box-shadow:0 6px 24px rgba(7,26,61,.05)}.service-card h2{font-size:21px;line-height:1.35;color:var(--navy);margin:6px 0 10px}.service-category{font-size:10px;letter-spacing:1.8px;font-weight:800;color:#58708f;margin:0}.service-price{font-size:27px;font-weight:800;color:var(--navy);margin:8px 0}.service-price small{font-size:13px;font-weight:500}.service-installments{font-size:13px;color:#315d9b;background:#edf4ff;padding:6px 10px;border-radius:7px}.service-card p{font-size:14px}.service-cta{margin-top:auto;width:100%;text-align:center}.catalogue-link{display:inline-block;margin:0 0 8px;padding:10px 16px;border:1px solid var(--line);border-radius:9px;color:var(--navy);font-weight:700;background:#fff}#schengen-country-field{margin:12px 0;padding:14px;border:1px solid #dbe5f1;border-radius:10px;background:#f6f9fd}#schengen-country-field[hidden]{display:none}#schengen-country-field small{display:block;margin-top:5px;line-height:1.5}
/* VIP premium customer portal identity */
.brand-lockup{display:flex;align-items:center;gap:12px;letter-spacing:0;text-decoration:none}
.vip-emblem{width:48px;height:48px;border:1px solid rgba(255,255,255,.88);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;position:relative;font-size:19px;font-weight:800;letter-spacing:1px;color:#fff;flex:0 0 auto}
.vip-emblem>span{position:absolute;top:-10px;left:50%;transform:translateX(-50%);font-size:13px;color:var(--gold)}
.brand-copy{display:flex;flex-direction:column;font-size:14px;letter-spacing:1.6px;line-height:1.35}
.brand-copy small{font-size:9px;letter-spacing:1.2px;color:#d6dfed;margin-top:4px}
body.welcome-open{overflow:hidden}
.vip-welcome{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:24px;background:radial-gradient(ellipse at 50% 42%,rgba(20,49,91,.54),rgba(2,8,19,.97) 72%),linear-gradient(135deg,#030914,#081a34);backdrop-filter:blur(13px)}
.vip-welcome.is-visible{display:flex}
.vip-welcome-panel{position:relative;isolation:isolate;overflow:hidden;width:min(100%,900px);min-height:min(690px,calc(100vh - 48px));display:flex;flex-direction:column;justify-content:space-between;text-align:center;background:linear-gradient(145deg,#0c2346 0%,#07162e 54%,#0a1d39 100%);color:#f7f5ef;border:1px solid rgba(202,174,111,.52);border-radius:5px;padding:25px 42px 22px;box-shadow:0 38px 110px rgba(0,0,0,.58);animation:vipWelcomeIn .65s cubic-bezier(.2,.75,.25,1)}
.vip-welcome-panel:before{content:"";position:absolute;inset:10px;border:1px solid rgba(226,205,160,.13);pointer-events:none;z-index:-1}
.vip-welcome-panel:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(209,181,122,.12);border-radius:50%;top:80px;left:50%;transform:translateX(-50%);box-shadow:0 0 0 36px rgba(209,181,122,.025),0 0 0 84px rgba(209,181,122,.018);z-index:-1;pointer-events:none}
.vip-welcome-orbit{position:absolute;border:1px solid rgba(209,181,122,.15);border-radius:50%;pointer-events:none;z-index:-1}
.vip-orbit-one{width:700px;height:700px;top:-350px;right:-370px}
.vip-orbit-two{width:520px;height:520px;bottom:-360px;left:-260px}
.vip-welcome-topline,.vip-welcome-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#b6c1d0;font-size:9px;letter-spacing:2px;font-weight:700}
.vip-welcome-status{color:#d9c18e}.vip-welcome-status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c9ae76;margin-inline-end:8px;box-shadow:0 0 10px #c9ae76}
.vip-welcome-main{width:min(100%,610px);margin:auto;position:relative}
.vip-welcome-brand{display:flex;align-items:center;justify-content:center;gap:14px;margin:24px 0 48px}
.vip-welcome-monogram{width:60px;height:60px;display:grid;place-items:center;border:1px solid #c9ae76;border-radius:50%;font-family:Georgia,serif;font-size:23px;letter-spacing:2px;color:#ead8ad;box-shadow:inset 0 0 0 4px rgba(201,174,118,.08)}
.vip-welcome-brandname{text-align:left;font-size:13px;letter-spacing:2.5px;color:#f5f2e9;font-weight:800}
.vip-welcome-brandname small{display:block;font-size:8px;letter-spacing:2px;color:#c9ae76;margin-top:7px}
.vip-welcome-kicker{font-size:10px;letter-spacing:4px;color:#c9ae76;font-weight:700;margin:0 0 18px}
.vip-welcome-panel h1{font-family:Georgia,serif;font-size:clamp(38px,6vw,66px);line-height:1.28;color:#fff;margin:0 0 20px;font-weight:500;letter-spacing:-1px}
.vip-welcome-panel h1 em{font-style:normal;color:#d8c08e;letter-spacing:5px}
.vip-welcome-ar{font-size:16px;line-height:2.15;color:#e1e7ef;margin:0 auto;max-width:540px}
.vip-welcome-divider{display:flex;align-items:center;gap:15px;width:150px;margin:25px auto 17px;color:#c9ae76}
.vip-welcome-divider:before,.vip-welcome-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#bda16b)}
.vip-welcome-divider:after{transform:scaleX(-1)}
.vip-welcome-en{font-family:Georgia,serif;font-size:13px;letter-spacing:.4px;color:#aebbd0;margin:0 auto 30px}
.vip-welcome-button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-width:250px;background:linear-gradient(110deg,#d8c18f,#b99a5d);color:#07162d;border:1px solid #ead9b3;border-radius:2px;padding:16px 25px;font:inherit;font-size:14px;font-weight:800;cursor:pointer;transition:all .25s;box-shadow:0 12px 28px rgba(0,0,0,.22)}
.vip-welcome-button:hover{background:#ead9b3;transform:translateY(-2px);box-shadow:0 17px 34px rgba(0,0,0,.3)}
.vip-welcome-button span{font-size:20px}
.vip-welcome-bottom{padding-top:20px;border-top:1px solid rgba(201,174,118,.22);color:#a6b2c4;font-size:8px;letter-spacing:1.8px}
@keyframes vipWelcomeIn{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:600px){.vip-welcome{padding:12px}.vip-welcome-panel{min-height:calc(100vh - 24px);padding:18px 22px 16px}.vip-welcome-topline,.vip-welcome-bottom{font-size:7px;letter-spacing:1px}.vip-welcome-brand{margin:28px 0 45px}.vip-welcome-panel h1{font-size:42px}.vip-welcome-ar{font-size:14px}.vip-welcome-en{font-size:11px;line-height:1.8}.vip-welcome-button{width:100%;min-width:0}.vip-welcome-monogram{width:52px;height:52px}.vip-welcome-brandname{font-size:11px}}
/* VIP customer dashboard - Sage Gray luxury theme */
:root{--bg:#E3E9E3;--line:#d8e0d8}
body{background:#E3E9E3}
.page{margin-top:34px}
.portal-brand-hero{position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:26px;min-height:210px;margin:0 0 34px;padding:32px 28px;border-radius:20px;background:linear-gradient(118deg,#071A3D 0%,#102c58 58%,#0b2146 100%);border:1px solid rgba(212,175,55,.58);box-shadow:0 16px 38px rgba(7,26,61,.16);color:#fff}
.portal-brand-mark{position:relative;z-index:1;width:112px;height:112px;flex:0 0 112px;border:1.5px solid rgba(255,255,255,.88);border-radius:50%;display:flex;align-items:center;justify-content:center}
.portal-vip{font-size:43px;font-weight:800;letter-spacing:2px;color:#fff}
.portal-plane{position:absolute;top:-17px;left:50%;transform:translateX(-50%);font-size:24px;color:#D4AF37}
.portal-brand-copy{position:relative;z-index:1;text-align:start}
.portal-brand-copy p{font-size:10px;letter-spacing:3px;color:#D4AF37;font-weight:700;margin:0 0 5px}
.portal-brand-copy h2{font-size:clamp(22px,4vw,34px);letter-spacing:2px;color:#fff;margin:0;line-height:1.3}
.portal-brand-copy span{display:block;font-size:11px;letter-spacing:2.5px;color:#d5deed;margin-top:8px}
.portal-brand-accent{position:absolute;z-index:0;width:230px;height:230px;border:1px solid rgba(212,175,55,.15);border-radius:50%;inset-inline-end:-65px;top:-105px}
.portal-brand-watermark{position:absolute;z-index:0;inset-inline-start:24px;bottom:-72px;font-size:190px;line-height:1;font-weight:900;letter-spacing:-12px;color:rgba(255,255,255,.035);pointer-events:none}
.application,.steps article,.card,.details,.empty,.form-shell{background:#F8FAF8}
.application{border-color:#d6dfd7;box-shadow:0 7px 22px rgba(7,26,61,.055)}
.empty{border-color:#cbd7cc}
.notice{background:#f5f0df;border-color:#e4d7b3}
@media(max-width:600px){.page{margin-top:22px}.portal-brand-hero{min-height:174px;gap:16px;padding:25px 16px;border-radius:15px;margin-bottom:26px}.portal-brand-mark{width:78px;height:78px;flex-basis:78px}.portal-vip{font-size:31px}.portal-plane{font-size:19px;top:-14px}.portal-brand-copy h2{font-size:19px;letter-spacing:1px}.portal-brand-copy span{font-size:8px;letter-spacing:1.2px}.portal-brand-copy p{font-size:8px;letter-spacing:2px}.portal-brand-watermark{font-size:130px;bottom:-48px}}


/* Clear payment receipt confirmation for customer */
.payment-pending-alert{display:flex;align-items:flex-start;gap:15px;margin:20px 0;padding:20px 22px;border-radius:15px;background:linear-gradient(120deg,#fff4df 0%,#fffaf0 100%);border:1px solid #e8bd68;border-right:5px solid #c58b2b;color:#704b12;box-shadow:0 8px 22px rgba(115,78,20,.08)}
.payment-pending-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#f4dfb5;color:#8b5c13;font-size:25px;font-weight:800}
.payment-pending-alert strong{display:block;font-size:17px;line-height:1.7;color:#68450e}
.payment-pending-alert p{margin:6px 0 9px;line-height:1.9;color:#765b31}
.payment-pending-alert small{font-size:10px;letter-spacing:1.5px;font-weight:800;color:#a47731}
@media(max-width:600px){.payment-pending-alert{padding:15px;gap:11px}.payment-pending-alert strong{font-size:15px}.payment-pending-icon{flex-basis:36px;width:36px;height:36px;font-size:21px}}


/* High-contrast payment status alert */
.payment-pending-alert{background:#071A3D!important;border:2px solid #D4AF37!important;border-right:7px solid #D4AF37!important;color:#FFFFFF!important;box-shadow:0 10px 28px rgba(7,26,61,.18)!important;padding:23px 25px!important}
.payment-pending-icon{background:#D4AF37!important;color:#071A3D!important;font-size:27px!important}
.payment-pending-alert strong{color:#FFFFFF!important;font-size:20px!important;font-weight:800!important;line-height:1.8!important}
.payment-pending-alert p{color:#FFFFFF!important;font-size:17px!important;font-weight:600!important;line-height:2!important;margin:9px 0 12px!important}
.payment-pending-alert small{color:#F2D58A!important;font-size:12px!important;font-weight:800!important;letter-spacing:1.4px!important}
@media(max-width:600px){.payment-pending-alert{padding:17px!important}.payment-pending-alert strong{font-size:17px!important}.payment-pending-alert p{font-size:15px!important;line-height:1.9!important}.payment-pending-alert small{font-size:10px!important}}

/* VIP AI Visa customer application wizard — navy / royal blue / white */
.application-wizard-page{background:#f7f9fc}
.wizard-shell{width:min(920px,calc(100% - 32px));margin:34px auto 70px}
.wizard-back{display:inline-block;color:#53647d;font-weight:700;margin-bottom:20px}
.wizard-heading{text-align:center;margin:0 auto 28px;max-width:680px}
.wizard-heading h1{color:var(--navy);font-size:clamp(30px,5vw,46px);line-height:1.2;margin:10px 0}
.wizard-heading>p:last-child{color:var(--muted);font-size:16px}
.wizard-progress{display:flex;align-items:center;justify-content:center;gap:12px;margin:28px auto 22px;max-width:620px}
.wizard-progress>i{height:2px;flex:1;background:#dce4ef;max-width:90px}
.wizard-step{display:flex;align-items:center;gap:8px;color:#8491a5;white-space:nowrap}
.wizard-step span{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#e9eef5;color:#66758c;font-size:12px;font-weight:800}
.wizard-step b{font-size:13px}
.wizard-step.is-active,.wizard-step.is-done{color:var(--navy)}
.wizard-step.is-active span,.wizard-step.is-done span{background:var(--blue);color:#fff}
.wizard-card{background:#fff;border:1px solid #e0e7f0;border-radius:20px;padding:clamp(20px,4vw,38px);box-shadow:0 16px 45px rgba(7,26,61,.07)}
.wizard-panel{display:none}.wizard-panel.is-active{display:block;animation:wizardIn .2s ease-out}
.wizard-kicker{font-size:11px;font-weight:800;letter-spacing:1.5px;color:var(--blue);margin:0 0 6px}
.wizard-panel h2{color:var(--navy);font-size:25px;margin:0 0 20px}
.wizard-panel label{color:#26364f}
.wizard-panel input,.wizard-panel select,.wizard-panel textarea{border-color:#d8e1ed;border-radius:11px;min-height:50px}
.wizard-panel input:focus,.wizard-panel select:focus,.wizard-panel textarea:focus{outline:3px solid rgba(14,94,255,.12);border-color:var(--blue)}
.wizard-panel small{display:block;line-height:1.7;margin-top:8px}
.wizard-note{display:flex;gap:12px;padding:16px;margin:22px 0;border-radius:13px;background:#f2f6fc;border:1px solid #e2eaf5;color:var(--navy)}
.wizard-note>span{font-size:22px;color:var(--gold)}
.wizard-note b{display:block}.wizard-note p{margin:4px 0 0;color:#61718a;font-size:13px}
.wizard-next{width:100%;margin-top:16px!important;min-height:52px;border-radius:11px}
.wizard-next span,.wizard-actions span{margin-inline-start:8px}
.wizard-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.wizard-actions{display:flex;gap:12px;margin-top:22px}
.wizard-actions>*{flex:1;min-height:50px;margin:0!important;text-align:center}
.group-quote{margin-top:18px;padding:16px;border-radius:12px;background:#effaf6;border:1px solid #c7efdf;color:#087451}
.group-quote p{margin:5px 0 0;color:#3e7563;font-size:14px}
.review-list{border:1px solid #e3e9f1;border-radius:13px;overflow:hidden}
.review-list>div{display:flex;justify-content:space-between;gap:16px;padding:15px 17px;border-bottom:1px solid #edf1f6}
.review-list>div:last-child{border-bottom:0}
.review-list span{color:#718098}.review-list b{color:var(--navy);text-align:left}
.wizard-disclaimer{padding:15px;background:#fff9e9;border:1px solid #f1dfae;border-radius:11px;color:#765b24;font-size:13px;line-height:1.8;margin:18px 0 0}
.wizard-security{text-align:center;color:#77859a;font-size:12px;margin:18px 0}
@keyframes wizardIn{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.wizard-shell{margin:22px auto 48px}.wizard-progress{gap:6px}.wizard-progress>i{max-width:28px}.wizard-step{gap:5px}.wizard-step span{width:31px;height:31px}.wizard-step b{font-size:11px}.wizard-panel h2{font-size:21px}.wizard-field-grid{grid-template-columns:1fr}.wizard-actions{flex-direction:column}.review-list>div{padding:12px}.review-list b{max-width:60%;font-size:14px}}

/* VIP HYBRID LUXURY — customer portal dark navy / black / royal blue / restrained gold */
:root{--navy:#071426;--blue:#245BDB;--gold:#C9A85A;--ink:#E8EDF6;--muted:#A6B3C5;--line:#26364D;--bg:#050A14}
html,body{background:#050A14!important;color:#E8EDF6!important}
body{background-image:radial-gradient(ellipse at 50% -20%,rgba(36,91,219,.16),transparent 55%)}
header{background:linear-gradient(110deg,#030711,#0A1830 65%,#071426)!important;color:#fff;border-bottom:1px solid rgba(201,168,90,.72)!important}
header a{color:#F4F6FA!important}
.brand small,.brand-copy small{color:#C7D2E2!important}
.hero h1,.form-shell h1,.page h1,.steps h3,.service-card h2,.wizard-heading h1,.wizard-panel h2{color:#F4F6FA!important}
.eyebrow,.service-category{color:#D7B96D!important}
.lead,.steps p,small,footer{color:#A6B3C5!important}
.primary,.wizard-next,.self-chat button{background:#245BDB!important;color:#fff!important;border:1px solid rgba(255,255,255,.1)!important}
.primary:hover,.wizard-next:hover,.self-chat button:hover{background:#3470F0!important}
.secondary,.outline,.catalogue-link{background:#101C30!important;color:#E8EDF6!important;border:1px solid #34445D!important}
.steps article,.card,.application,.details,.empty,.form-shell,.service-card,.wizard-card,.self-card{background:linear-gradient(155deg,#101C30,#0A1424)!important;color:#E8EDF6!important;border:1px solid #2A3A52!important;box-shadow:0 14px 34px rgba(0,0,0,.24)!important}
.service-card{border-radius:18px!important;position:relative;overflow:hidden}
.service-card:before{content:"";position:absolute;inset:0 0 auto;height:2px;background:linear-gradient(90deg,transparent,#C9A85A,transparent)}
.service-card h2{font-size:22px!important}
.service-price{color:#8FB0FF!important;font-size:clamp(27px,4vw,34px)!important}
.service-price small{color:#A6B3C5!important}
.service-installments{background:#172B4B!important;color:#B9D0FF!important;border:1px solid #2C4D7A}
.service-cta{margin-top:auto}
.self-apply-cta{background:#101C30!important;color:#D8B96D!important;border:1px solid #315A96!important}
.self-apply-cta span{color:#A6B3C5!important}
.notice{background:#171C27!important;border:1px solid #55472A!important;color:#E8D9B4!important}
.form-shell label,.wizard-panel label{color:#DCE5F3!important}
input,select,textarea,.self-chat textarea,.wizard-panel input,.wizard-panel select,.wizard-panel textarea{background:#091322!important;color:#F4F6FA!important;border:1px solid #34445D!important}
input::placeholder,textarea::placeholder{color:#8191A8}
.application{border-color:#2A3A52!important}
.application span{color:#B9D0FF!important}
.empty{border-color:#3B4B62!important}
.chat-message{background:#101C30!important;color:#E8EDF6!important;border-color:#2A3A52!important}
.chat-message.ai{background:#142747!important;border-color:#315A96!important}
.chat-message.staff{background:#12342F!important;border-color:#286A5E!important}
.handoff-alert{color:#F1C879!important}
#schengen-country-field{background:#101C30!important;border-color:#34445D!important}
.portal-brand-hero,.self-hero{background:linear-gradient(120deg,#030711 0%,#0A1830 58%,#10264A 100%)!important;border:1px solid rgba(201,168,90,.68)!important;box-shadow:0 18px 44px rgba(0,0,0,.32)!important}
.portal-brand-copy p,.portal-plane,.vip-welcome-footer{color:#D7B96D!important}
.portal-brand-copy span{color:#C7D2E2!important}
.portal-brand-mark,.vip-emblem{border-color:rgba(215,185,109,.9)!important}
.vip-welcome-panel{background:linear-gradient(155deg,#101C30,#071426 65%,#142747)!important;border-color:rgba(201,168,90,.68)!important}
.self-card h2{color:#F4F6FA!important}
.self-step{border-color:#26364D!important}
.self-num{background:#172B4B!important;color:#AFC8FF!important}
.self-step p,.self-hero p{color:#C1CDDD!important}
.self-chat{background:#091322!important}
.self-message{background:#101C30!important;color:#E8EDF6!important;border-color:#34445D!important}
.self-message.user{background:#142747!important;border-color:#315A96!important}
.self-links a{color:#8FB0FF!important}
.self-note{background:#171C27!important;border-color:#55472A!important;color:#E8D9B4!important}
.wizard-step{color:#9AA9BD!important}
.wizard-step.is-active,.wizard-step.is-done{color:#F4F6FA!important}
.wizard-step span{background:#202D42!important;color:#C3CEDD!important}
.wizard-step.is-active span,.wizard-step.is-done span{background:#245BDB!important;color:#fff!important}
.wizard-note{background:#142238!important;border-color:#2A3A52!important;color:#E8EDF6!important}
.wizard-note p{color:#A6B3C5!important}
.review-list{border-color:#2A3A52!important}
.review-list>div{border-color:#26364D!important}
.review-list span{color:#A6B3C5!important}
.review-list b{color:#E8EDF6!important}
.wizard-disclaimer{background:#171C27!important;border-color:#55472A!important;color:#E8D9B4!important}
.wizard-security{color:#A6B3C5!important}
.payment-pending-alert{background:#071426!important;border-color:#C9A85A!important;color:#fff!important}
@media(max-width:650px){.service-grid{grid-template-columns:1fr}.service-card{padding:20px}.service-price{font-size:29px!important}}

/* VIP AI VISA — Luxury Concierge visual system */
:root{--bg:#050914;--ink:#edf2fb;--muted:#aebbd0;--line:#26344a;--navy:#071426;--blue:#245bdb;--gold:#c9a85a}
html{scroll-behavior:smooth}body{background:#050914!important;color:#edf2fb!important}
header{background:linear-gradient(110deg,#030711,#0b1b33 70%,#071426)!important;border-bottom:1px solid #c9a85aaa!important;box-shadow:0 12px 35px #0005}
header nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}header nav a{color:#edf2fb!important;padding:9px 13px;border:1px solid #ffffff18;border-radius:9px}header nav a:hover{border-color:#c9a85a;color:#f1d58b!important;background:#ffffff0a}
.brand,.brand-lockup{color:#fff!important}.page,.hero,.form-shell,.wizard-shell,.self-wrap{color:#edf2fb}.page h1,.hero h1,.form-shell h1,.wizard-heading h1{color:#fff!important}.eyebrow,.service-category{color:#d8b96d!important;letter-spacing:2px}.lead,.page>p,.hero>p{color:#b9c5d8!important}
.card,.application,.details,.steps article,.service-card,.form-shell,.wizard-card,.self-card,.empty{background:linear-gradient(155deg,#111d30,#0b1423)!important;border:1px solid #2b3b53!important;color:#edf2fb!important;box-shadow:0 15px 40px #0005!important;border-radius:18px}
.card h2,.card h3,.service-card h2,.self-card h2,.wizard-panel h2{color:#fff!important}.card p,.service-card p,.self-card p,.details p{color:#c2ccdc}
input,select,textarea,.wizard-panel input,.wizard-panel select,.wizard-panel textarea{background:#080f1c!important;color:#f5f7fb!important;border:1px solid #34445c!important;border-radius:11px!important}label{color:#e8edf6!important}
.primary,.service-cta,.wizard-card button,.form-shell button{background:linear-gradient(105deg,#1749b8,#2868ed)!important;color:#fff!important;border:1px solid #6e96f5!important;border-radius:11px!important;box-shadow:0 8px 20px #1749b844}
.secondary,.outline,.catalogue-link{background:#111e31!important;color:#f1d58b!important;border:1px solid #9b7b3b!important;border-radius:11px!important}
.notice{background:#1c2430!important;color:#f1dfb2!important;border:1px solid #806b3d!important;border-radius:12px}.steps article b{color:#d8b96d!important}.steps article h3{color:#fff!important}.steps article p,small{color:#aebbd0}
.portal-brand-hero{background:linear-gradient(110deg,#030711dd,#0a1b34dd),url('https://images.unsplash.com/photo-1480714378408-67cf0d13bc1b?auto=format&fit=crop&w=1800&q=85') center/cover!important;border:1px solid #c9a85a!important;min-height:245px!important;box-shadow:0 20px 50px #0008!important}
.vip-welcome-panel{background:linear-gradient(145deg,#030711,#10284a 65%,#071426)!important;border:1px solid #c9a85a!important}
.service-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr))!important;gap:18px!important}.service-card{position:relative;overflow:hidden;transition:transform .2s,border-color .2s}.service-card:before{content:"";height:3px;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,transparent,#c9a85a,transparent)}.service-card:hover{transform:translateY(-4px);border-color:#9b7b3b!important}.service-price{color:#f1d58b!important}.service-installments{background:#172b4a!important;color:#c6d8ff!important}.self-apply-cta{background:#101e32!important;color:#e8c978!important;border-color:#9b7b3b!important}
.chat-message{background:#101d30!important;border-color:#34445c!important;color:#edf2fb}.chat-message.ai{background:#132746!important;border-color:#31558d!important}.chat-message.staff{background:#172b27!important;border-color:#386b59!important}
table{background:#0b1423!important}th{background:#17253a!important;color:#e8edf6!important}td{color:#d5deeb!important;border-color:#26364a!important}footer{color:#9eabc0!important;border-top:1px solid #26364a;margin-top:45px}
@media(max-width:650px){header{padding:13px 15px!important;align-items:flex-start!important}header nav{gap:7px}header nav a{font-size:12px;padding:8px 10px}.page{margin:24px auto!important;padding:0 14px!important}.portal-brand-hero{min-height:180px!important}.service-grid{grid-template-columns:1fr!important}.actions{gap:9px}.actions a{flex:1 1 100%;text-align:center}.application{display:flex!important;flex-direction:column;align-items:flex-start!important}}


/* Accessibility/readability pass — larger type and stronger contrast */
html{font-size:17px}
body{font-size:17px!important;line-height:1.8!important;color:#f4f7fc!important}
.page,.hero{font-size:17px}
.page h1,.hero h1{font-size:clamp(32px,5vw,48px)!important;line-height:1.3!important}
.page p,.hero p,.lead{font-size:18px!important;line-height:1.9!important;color:#d2dbea!important}
.application{padding:22px 24px!important;gap:18px!important}
.application div{gap:8px!important}
.application span,.application strong{font-size:20px!important;line-height:1.65!important;color:#fff!important}
.application p,.application small,.application time{font-size:16px!important;line-height:1.8!important;color:#d2dbea!important}
.application .muted,.application small{color:#c2cede!important}
.notice,.empty,.details{font-size:17px!important;line-height:1.9!important}
.notice{color:#fff!important;background:#14243b!important;border:1px solid #8d7441!important}
.details p,.details li{font-size:17px!important;line-height:1.9!important;color:#e3eaf4!important}
label{font-size:17px!important;line-height:1.7!important}
input,select,textarea{font-size:17px!important;min-height:52px}
.primary,.secondary,.outline,.catalogue-link{font-size:16px!important;min-height:48px}
footer{font-size:14px!important;color:#c2cede!important}
@media(max-width:650px){
 body{font-size:16px!important}
 .page p,.hero p,.lead{font-size:17px!important}
 .application{padding:18px!important}
 .application span,.application strong{font-size:19px!important}
 .application p,.application small,.application time{font-size:15px!important}
 .notice,.empty,.details{font-size:16px!important}
 label{font-size:16px!important}
}

/* VIP Luxury Corporate — light ivory portal theme */
:root{--bg:#F3F5F8;--ink:#172B4D;--muted:#52647B;--line:#E2E7EE;--navy:#10284B;--blue:#1767C8;--gold:#B89555}
html,body{background:#F3F5F8!important;color:#172B4D!important;background-image:none!important}
header{background:linear-gradient(105deg,#10284B,#183B68 70%,#10284B)!important;border-bottom:2px solid #B89555!important;box-shadow:0 8px 24px rgba(16,40,75,.12)!important}
header a{color:#fff!important}
.page,.hero,.vip-home-main{color:#172B4D!important}
.page h1,.hero h1,.form-shell h1,.wizard-heading h1{color:#10284B!important}
.page p,.hero p,.lead{color:#52647B!important}
.card,.application,.details,.steps article,.service-card,.form-shell,.wizard-card,.self-card,.empty{background:#fff!important;border:1px solid #E2E7EE!important;color:#243B5A!important;box-shadow:0 8px 26px rgba(16,40,75,.055)!important}
.card h2,.card h3,.service-card h2,.self-card h2,.wizard-panel h2,.steps h3{color:#10284B!important}
.card p,.service-card p,.self-card p,.details p,.steps p{color:#52647B!important}
input,select,textarea,.wizard-panel input,.wizard-panel select,.wizard-panel textarea{background:#fff!important;color:#172B4D!important;border:1px solid #CBD5E1!important}
input::placeholder,textarea::placeholder{color:#8492A6!important}
label,.form-shell label,.wizard-panel label{color:#243B5A!important}
.primary,.service-cta,.wizard-card button,.form-shell button{background:#1767C8!important;color:#fff!important;border:1px solid #1767C8!important;box-shadow:0 5px 13px rgba(23,103,200,.13)!important}
.secondary,.outline,.catalogue-link{background:#fff!important;color:#10284B!important;border:1px solid #D7DFE9!important}
.notice,.wizard-disclaimer{background:#FFF8E9!important;color:#6B5428!important;border:1px solid #E9D8B1!important}
.service-price{color:#1767C8!important}
.service-installments{background:#EDF4FD!important;color:#28598D!important;border:1px solid #D4E3F5!important}
.application span{color:#1767C8!important}
.application p,.application small,.application time{color:#52647B!important}
.chat-message{background:#F3F6FA!important;color:#243B5A!important;border-color:#E0E6EE!important}
.chat-message.ai{background:#EAF2FC!important;border-color:#C9DCF3!important}
.chat-message.staff{background:#EAF5EF!important;border-color:#CBE5D5!important}
.portal-brand-hero,.self-hero{background:linear-gradient(110deg,#10284B,#183B68 70%,#10284B)!important;border:1px solid #B89555!important;box-shadow:0 15px 36px rgba(16,40,75,.13)!important}
.portal-brand-copy p,.portal-plane,.vip-welcome-footer{color:#E3C98F!important}
.portal-brand-copy span{color:#E3EAF3!important}
.vip-welcome-panel{background:linear-gradient(145deg,#10284B,#183B68)!important;border:1px solid #B89555!important}
.wizard-step{color:#66768C!important}.wizard-step.is-active,.wizard-step.is-done{color:#10284B!important}
.wizard-step span{background:#E9EEF5!important;color:#52647B!important}
.wizard-step.is-active span,.wizard-step.is-done span{background:#1767C8!important;color:#fff!important}
.wizard-note{background:#F1F5FA!important;border-color:#DDE6F0!important;color:#243B5A!important}
.wizard-note p{color:#52647B!important}
.review-list{border-color:#E2E7EE!important}.review-list>div{border-color:#E8EDF3!important}
.review-list span{color:#66768C!important}.review-list b{color:#172B4D!important}
.payment-pending-alert{background:#10284B!important;border-color:#B89555!important;color:#fff!important}
@media(max-width:650px){.service-card{padding:20px!important}}

/* Cinematic VIP flight entrance */
.vip-flight-intro{position:fixed;inset:0;z-index:1100;display:none;overflow:hidden;align-items:center;justify-content:center;text-align:center;color:#f8f5ec;background:radial-gradient(ellipse at 50% 48%,rgba(24,61,108,.96) 0%,rgba(8,27,55,.98) 47%,#020914 100%)}
.vip-flight-intro.is-visible{display:flex}
.vip-flight-stars{position:absolute;inset:0;opacity:.42;background-image:radial-gradient(1px 1px at 12% 22%,#fff,transparent),radial-gradient(2px 2px at 76% 17%,#e8d3a0,transparent),radial-gradient(1px 1px at 38% 68%,#fff,transparent),radial-gradient(1px 1px at 89% 73%,#fff,transparent),radial-gradient(2px 2px at 61% 84%,#fff,transparent),radial-gradient(1px 1px at 22% 81%,#e8d3a0,transparent);background-size:420px 320px;animation:vipStarsDrift 24s linear infinite}
.vip-flight-horizon{position:absolute;width:130vw;height:55vw;max-height:620px;bottom:-37vw;border:1px solid rgba(218,190,132,.25);border-radius:50%;box-shadow:0 -20px 100px rgba(48,105,164,.15),inset 0 22px 90px rgba(48,105,164,.08)}
.vip-flight-globe{position:absolute;width:min(76vw,720px);aspect-ratio:1;border:1px solid rgba(218,190,132,.13);border-radius:50%;box-shadow:inset 0 0 80px rgba(91,145,195,.09),0 0 100px rgba(74,129,183,.08)}
.vip-flight-globe:before,.vip-flight-globe:after{content:"";position:absolute;inset:12% 28%;border:1px solid rgba(218,190,132,.11);border-radius:50%}
.vip-flight-globe:after{inset:0 42%;border-radius:50%;border-width:0 1px}
.vip-flight-top,.vip-flight-bottom{position:absolute;left:7%;right:7%;display:flex;justify-content:space-between;gap:14px;color:#d5bd8b;font-size:9px;letter-spacing:3px;font-weight:800}
.vip-flight-top{top:8%}.vip-flight-bottom{bottom:7%;justify-content:center;gap:30px;color:#aabbd0}
.vip-flight-copy{position:relative;z-index:3;margin-top:-5vh;padding:24px;opacity:0;transform:translateY(18px);transition:opacity 1.2s ease .5s,transform 1.2s ease .5s}
.vip-flight-copy p{color:#d5bd8b;font-size:10px;letter-spacing:4px;font-weight:800;margin:0 0 25px}
.vip-flight-copy h2{font-size:clamp(28px,5vw,52px);font-weight:400;line-height:1.5;color:#fff;margin:0 0 12px}
.vip-flight-copy h2 strong{display:block;color:#e3cc98;font-weight:600}
.vip-flight-copy>span{font-size:clamp(14px,2vw,18px);color:#d6e0ed;letter-spacing:.3px}
.vip-flight-path{position:absolute;z-index:2;width:140vw;height:38vw;max-height:420px;border:1px solid transparent;border-top-color:rgba(220,193,139,.55);border-radius:50%;left:50%;top:47%;transform:translate(-50%,100%) rotate(-12deg);opacity:0;filter:drop-shadow(0 0 7px rgba(223,194,135,.45))}
.vip-flight-plane{position:absolute;z-index:4;left:-24%;top:65%;width:clamp(115px,17vw,210px);filter:drop-shadow(0 8px 22px rgba(0,0,0,.5));opacity:0;transform:translate3d(0,0,0) rotate(-8deg)}
.vip-flight-plane svg{width:100%;height:auto;overflow:visible}
.vip-flight-skip{position:absolute;z-index:6;bottom:12%;right:7%;border:1px solid rgba(221,197,151,.35);background:rgba(4,17,35,.35);color:#e5d4ad;border-radius:2px;padding:9px 16px;font-size:11px;cursor:pointer;opacity:0;transition:opacity .5s ease 2s}
.vip-flight-intro.is-flying .vip-flight-copy{opacity:1;transform:translateY(0)}
.vip-flight-intro.is-flying .vip-flight-plane{opacity:1;animation:vipPlaneJourney 6.7s cubic-bezier(.35,.05,.55,.95) forwards}
.vip-flight-intro.is-flying .vip-flight-path{opacity:1;animation:vipPathReveal 5.8s ease forwards}
.vip-flight-intro.is-flying .vip-flight-skip{opacity:1}
@keyframes vipPlaneJourney{0%{left:-25%;top:73%;transform:translate3d(0,0,0) rotate(-9deg) scale(.72)}22%{left:13%;top:54%;transform:translate3d(0,0,0) rotate(-5deg) scale(.9)}55%{left:48%;top:35%;transform:translate3d(0,0,0) rotate(-3deg) scale(1.08)}82%{left:82%;top:16%;transform:translate3d(0,0,0) rotate(-7deg) scale(.92)}100%{left:120%;top:-2%;transform:translate3d(0,0,0) rotate(-10deg) scale(.75)}}
@keyframes vipPathReveal{0%{opacity:0;transform:translate(-50%,100%) rotate(-12deg)}20%{opacity:.8}100%{opacity:.15;transform:translate(-50%,-3%) rotate(-12deg)}}
@keyframes vipStarsDrift{from{background-position:0 0}to{background-position:420px 320px}}
@media(max-width:600px){.vip-flight-top,.vip-flight-bottom{font-size:7px;letter-spacing:1.5px}.vip-flight-globe{width:95vw}.vip-flight-plane{width:125px}.vip-flight-copy{padding:18px}.vip-flight-copy p{font-size:8px;letter-spacing:2px}.vip-flight-skip{bottom:13%;right:6%}}
@media(prefers-reduced-motion:reduce){.vip-flight-stars,.vip-flight-intro.is-flying .vip-flight-plane,.vip-flight-intro.is-flying .vip-flight-path{animation:none!important}.vip-flight-intro.is-flying .vip-flight-plane{left:45%;top:35%;opacity:1}.vip-flight-intro.is-flying .vip-flight-copy{opacity:1;transform:none}}


/* Real aircraft image + refined entrance music layout */
.vip-flight-plane{width:clamp(250px,42vw,560px)!important;left:-48%!important;top:66%!important;filter:drop-shadow(0 18px 30px rgba(0,0,0,.5))!important}
.vip-flight-plane img{display:block;width:100%;height:auto;object-fit:contain;opacity:.98;filter:contrast(1.08) saturate(.92);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 90%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 90%,transparent 100%)}
.vip-flight-image-credit{position:absolute;bottom:3.5%;left:50%;transform:translateX(-50%);z-index:5;color:rgba(220,230,243,.45);font-size:8px;letter-spacing:.3px;white-space:nowrap}
.vip-flight-intro.is-flying .vip-flight-plane{animation:vipRealAircraftJourney 7.4s cubic-bezier(.36,.05,.56,.96) forwards!important}
@keyframes vipRealAircraftJourney{
  0%{left:-48%;top:69%;transform:rotate(-5deg) scale(.72);opacity:0}
  12%{opacity:1}
  30%{left:8%;top:54%;transform:rotate(-3deg) scale(.86)}
  58%{left:38%;top:36%;transform:rotate(-1deg) scale(1.04)}
  82%{left:75%;top:17%;transform:rotate(-3deg) scale(.9)}
  100%{left:120%;top:-8%;transform:rotate(-5deg) scale(.72);opacity:.15}
}
@media(max-width:600px){
 .vip-flight-plane{width:clamp(230px,72vw,360px)!important}
 .vip-flight-image-credit{font-size:7px;bottom:4.5%}
}
@media(prefers-reduced-motion:reduce){.vip-flight-intro.is-flying .vip-flight-plane{animation:none!important;left:35%!important;top:36%!important;opacity:1}}


/* Unified VIP logo lockup shared by customer portal pages */
.vip-brand-lockup{display:flex;align-items:center;gap:12px;flex-shrink:0;color:#fff!important;text-decoration:none;white-space:nowrap}.vip-brand-emblem{width:54px;height:54px;flex:0 0 54px;border:1.5px solid #d4af68;border-radius:50%;display:grid;place-items:center;color:#fff;font-family:Georgia,serif;font-size:19px;font-weight:800;letter-spacing:1px;position:relative}.vip-brand-emblem:before{content:"✈";position:absolute;top:-13px;left:50%;transform:translateX(-50%);font-family:Arial,sans-serif;font-size:13px;color:#d4af68}.vip-brand-wordmark{display:flex;flex-direction:column;gap:4px;line-height:1.2}.vip-brand-wordmark strong{font-family:Arial,Tahoma,sans-serif;font-size:clamp(13px,1.35vw,19px);letter-spacing:1px;color:#fff;font-weight:800}.vip-brand-wordmark small{font-family:Arial,Tahoma,sans-serif;font-size:9px;letter-spacing:1.8px;color:#d8c08e}@media(max-width:600px){.vip-brand-emblem{width:45px;height:45px;flex-basis:45px;font-size:16px}.vip-brand-wordmark strong{font-size:13px}.vip-brand-wordmark small{font-size:8px;letter-spacing:1.2px}}
