/* Visa workspace: local-only styling for private forms; no external fonts or scripts. */
.visa-private{margin:0;background:#0a1229;color:#e6e8e5;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color-scheme:dark}
.visa{--v-text:var(--ink,#e6e8e5);--v-ground:var(--ground,#0a1229);--v-line:rgba(146,155,181,.27);--v-soft:rgba(146,155,181,.06);--v-accent:#b0504f;--v-good:#a5d6b2;box-sizing:border-box;color:var(--v-text);font-size:16px;line-height:1.6}
.visa *,.visa *:before,.visa *:after{box-sizing:border-box}
.visa-public{max-width:1180px;margin:auto;padding:48px 24px 80px}
.visa-private-main{max-width:1120px;margin:0 auto;padding:36px 24px 64px;min-height:65vh}
.visa a{color:inherit;text-underline-offset:4px}
.visa a:hover{text-decoration-thickness:2px}
.visa h1,.visa h2,.visa h3,.visa p{margin-top:0}
.visa h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(2rem,4.4vw,3.7rem);line-height:1.12;letter-spacing:-.035em;margin-bottom:18px;overflow-wrap:anywhere}
.visa h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.35rem,2.4vw,1.8rem);font-weight:400;line-height:1.25;letter-spacing:-.015em;margin-bottom:16px}
.visa h3{font-size:1.05rem;font-weight:650;line-height:1.4;margin-bottom:10px}
.visa p{margin-bottom:16px}
.visa p:last-child{margin-bottom:0}
.visa-hero{padding:34px 0 42px;max-width:900px}
.visa-hero h1{font-size:clamp(2.6rem,6.2vw,4.8rem)}
.visa-hero h1 em{font-weight:400;color:#d49b93}
.visa-hero--compact{padding-top:22px;padding-bottom:28px}
.visa-hero--compact h1{font-size:clamp(2.2rem,5vw,3.7rem)}
.visa-eyebrow{font-size:.73rem!important;letter-spacing:.15em;text-transform:uppercase;font-weight:700;margin-bottom:12px!important}
.visa-lead{font-size:1.08rem;max-width:760px;line-height:1.7}
.visa-panel{background:var(--v-soft);border:1px solid var(--v-line);border-radius:20px;padding:28px;margin-bottom:24px;min-width:0}
.visa-subpanel{border:1px solid var(--v-line);border-radius:14px;padding:20px;min-width:0}
.visa-small{font-size:.91rem}
.visa-small h2{font-size:1.3rem}
.visa-small h3{font-size:.98rem}
.visa-hint{font-size:.84rem!important;line-height:1.55;opacity:.82}
.visa-link{font-weight:650;font-size:.92rem}
.visa-back{display:inline-block;margin:0 0 24px;font-size:.88rem;text-decoration:none}
.visa-row,.visa-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.visa-row p{margin-bottom:0}
.visa-section-head{margin-bottom:18px}
.visa-section-head h2,.visa-section-head h3,.visa-section-head p{margin:0}
.visa-page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}
.visa-page-head h1{margin-bottom:14px}
.visa-page-head>.visa-button,.visa-page-head>.visa-badge{margin-top:8px;flex-shrink:0}
.visa-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:20px;margin-bottom:24px}
.visa-cards>.visa-panel{margin:0}
.visa-two-col{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;align-items:start}
.visa-three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.visa-service{display:flex;flex-direction:column}
.visa-service h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;font-weight:400}
.visa-service h3 a{text-decoration:none}
.visa-service-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:auto;padding-top:16px}
.visa-start{position:sticky;top:24px}
.visa-start h2{margin-top:20px}
.visa-badge{display:inline-flex;align-items:center;max-width:100%;border:1px solid var(--v-line);border-radius:100px;padding:4px 10px;font-size:.75rem;font-weight:650;line-height:1.4;background:rgba(146,155,181,.09);overflow-wrap:anywhere}
.visa-badge--good{color:var(--v-good);border-color:rgba(143,199,162,.36);background:rgba(143,199,162,.08)}
.visa-badge--large{font-size:.86rem;padding:8px 15px}
.visa-form{display:grid;gap:18px}
.visa-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.visa-field{display:flex;flex-direction:column;gap:8px;min-width:0;font-weight:550;font-size:.91rem}
.visa-field--full{grid-column:1/-1}
.visa-field small{font-weight:400;font-size:.81rem;line-height:1.5;opacity:.82}
.visa-field>span>small{display:block}
.visa input:not([type=checkbox]):not([type=hidden]),.visa select,.visa textarea{display:block;width:100%;max-width:100%;min-height:46px;background:var(--v-ground);border:1px solid var(--v-line);border-radius:9px;padding:11px 12px;color:var(--v-text);font:inherit;line-height:1.45}
.visa textarea{resize:vertical;min-height:100px}
.visa input[type=file]{font-size:.84rem!important;padding:9px!important}
.visa input[type=file]::file-selector-button{border:1px solid var(--v-line);border-radius:6px;background:var(--v-soft);color:var(--v-text);font:inherit;padding:6px 9px;margin-right:9px;cursor:pointer}
.visa input::placeholder,.visa textarea::placeholder{color:inherit;opacity:.55}
.visa-code-input{font-family:ui-monospace,SFMono-Regular,Consolas,monospace!important;font-size:.84rem!important}
.visa-check{display:flex;gap:12px;align-items:flex-start;font-size:.9rem;line-height:1.6;cursor:pointer}
.visa-check input{accent-color:var(--v-accent);width:19px;height:19px;min-width:19px;margin:4px 0 0}
.visa-check input:disabled+span{opacity:.6}
.visa-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;max-width:100%;width:fit-content;border:1px solid transparent;border-radius:9px;padding:11px 18px;background:var(--v-accent);color:#fff!important;font:inherit;font-size:.87rem;font-weight:650;line-height:1.4;text-decoration:none!important;cursor:pointer;text-align:center}
.visa-button:hover{filter:brightness(1.09)}
.visa-button--quiet{background:transparent;border-color:var(--v-line);color:var(--v-text)!important}
.visa-button--text{background:transparent;color:var(--v-text)!important;padding-left:0;padding-right:0;text-decoration:underline!important;text-underline-offset:4px}
.visa-button--danger{background:#843f48;border-color:#bd6d76}
.visa-button--wide{width:100%;margin:8px 0 18px}
.visa-button:disabled{cursor:not-allowed;opacity:.5;filter:none}
.visa a:focus-visible,.visa button:focus-visible,.visa input:focus-visible,.visa select:focus-visible,.visa textarea:focus-visible,.visa summary:focus-visible,.visa [tabindex]:focus-visible,.visa-shell-head a:focus-visible,.visa-shell-foot a:focus-visible{outline:3px solid #e7bcb4;outline-offset:4px}
.visa-filter{display:grid;grid-template-columns:1fr 1fr auto;gap:18px;align-items:end}
.visa-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:20px}
.visa-notice{border-left:3px solid #d6b883;background:rgba(214,184,131,.075);border-radius:4px 10px 10px 4px;padding:16px 18px;margin:0 0 24px;overflow-wrap:anywhere}
.visa-notice h2,.visa-notice h3{font-family:inherit;font-size:1rem;font-weight:650;margin-bottom:8px}
.visa-notice ul{padding-left:20px;margin:10px 0 0}
.visa-notice li+li{margin-top:6px}
.visa-notice--good{border-left-color:#a5d6b2;background:rgba(143,199,162,.07)}
.visa-notice--error{border-left-color:#f0a1a1;background:rgba(240,161,161,.08)}
.visa-checklist{list-style:none;padding:0;margin:18px 0}
.visa-checklist li{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:12px 0;border-bottom:1px solid var(--v-line)}
.visa-checklist li:last-child{border:0}
.visa-checklist small{font-size:.77rem;opacity:.8;text-align:right}
.visa-list{padding-left:20px;margin:0 0 22px}
.visa-list li+li{margin-top:10px}
.visa-process ol{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:visa-step}
.visa-process li{counter-increment:visa-step}
.visa-process li:before{content:"0" counter(visa-step);display:block;color:#d49b93;font:1.6rem Georgia,serif;margin-bottom:14px}
.visa-process strong,.visa-process span{display:block}
.visa-process span{font-size:.88rem;margin-top:8px}
.visa-empty{padding:42px 28px;text-align:center;grid-column:1/-1}
.visa-empty .visa-lead{margin-left:auto;margin-right:auto}
.visa-empty .visa-button{margin:8px auto 0}
.visa-section-nav{display:flex;gap:8px 18px;flex-wrap:wrap;padding:0 0 20px;border-bottom:1px solid var(--v-line);margin:0 0 28px;font-size:.86rem}
.visa-panel[id]{scroll-margin-top:24px}
.visa-document-list{display:grid;gap:18px;margin:22px 0}
.visa-document{padding:18px;border:1px solid var(--v-line);border-radius:12px;min-width:0}
.visa-document h3{margin-bottom:0}
.visa-file{display:flex;align-items:start;justify-content:space-between;gap:16px;border-top:1px solid var(--v-line);padding:14px 0}
.visa-file .visa-badge{margin-right:8px}
.visa-file .visa-notice{margin-top:12px;margin-bottom:0}
.visa-upload{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:end;padding-top:16px}
.visa-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px;margin:18px 0 24px}
.visa-facts div{min-width:0}
.visa-facts dt{font-size:.76rem;opacity:.75;margin-bottom:5px}
.visa-facts dd{margin:0;font-size:.94rem;overflow-wrap:anywhere}
.visa-table-wrap{overflow:auto;max-width:100%;margin:18px 0 22px;border:1px solid var(--v-line);border-radius:10px}
.visa-table{width:100%;border-collapse:collapse;font-size:.88rem;text-align:left;min-width:500px}
.visa-table th,.visa-table td{padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--v-line)}
.visa-table th{font-weight:650;background:var(--v-soft)}
.visa-table tbody tr:last-child td{border-bottom:0}
.visa-table tfoot th,.visa-table tfoot td{border-top:1px solid var(--v-line);border-bottom:0;font-weight:700}
.visa-money{text-align:right!important;white-space:nowrap}
.visa-preserve{white-space:pre-wrap;overflow-wrap:anywhere}
.visa-payment{border-top:1px solid var(--v-line);padding-top:22px;margin-top:24px}
.visa-inset{border-top:1px solid var(--v-line);padding-top:20px;margin-top:22px}
.visa summary{cursor:pointer;font-weight:650;font-size:.94rem}
.visa details[open]>summary{margin-bottom:20px}
.visa-timeline{list-style:none;margin:24px 0 0;padding:0 0 0 20px;border-left:1px solid var(--v-line)}
.visa-timeline li{position:relative;padding:0 0 22px 8px}
.visa-timeline li:before{content:"";position:absolute;left:-25px;top:8px;width:8px;height:8px;background:#b0504f;border-radius:50%}
.visa-timeline strong,.visa-timeline time{display:block}
.visa-timeline strong{font-size:.88rem;font-weight:600}
.visa-timeline time{font-size:.76rem;opacity:.75;overflow-wrap:anywhere;margin-top:4px}
.visa-timeline li:last-child{padding-bottom:0}
.visa-retention{max-width:850px;padding:8px}
.visa-shell-head{max-width:1120px;margin:auto;padding:26px 24px;display:flex;justify-content:space-between;align-items:center;gap:22px;border-bottom:1px solid rgba(146,155,181,.27)}
.visa-shell-head a,.visa-shell-foot a{color:inherit;text-underline-offset:4px}
.visa-brand{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;line-height:1.2;text-decoration:none}
.visa-brand span{display:block;font-family:system-ui,sans-serif;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;color:#d49b93;margin-top:7px}
.visa-shell-head nav{display:flex;gap:18px;flex-wrap:wrap;font-size:.82rem}
.visa-shell-foot{max-width:1120px;margin:auto;padding:22px 24px 32px;display:flex;justify-content:space-between;align-items:start;gap:18px;border-top:1px solid rgba(146,155,181,.27);font-size:.78rem}
.visa-shell-foot p{margin:0;max-width:640px}
.visa-skip{position:absolute;left:12px;top:-100px;z-index:20;background:#fff;color:#0a1229;padding:12px 18px;border-radius:4px}
.visa-skip:focus{top:12px}
@media(max-width:850px){.visa-two-col{grid-template-columns:1fr}.visa-start{position:static}.visa-process ol{grid-template-columns:repeat(2,minmax(0,1fr))}.visa-three-col{grid-template-columns:1fr;gap:16px}.visa-page-head{flex-direction:column;gap:10px}.visa-page-head>.visa-button,.visa-page-head>.visa-badge{margin-top:0}}
@media(max-width:560px){.visa-public{padding:24px 16px 48px}.visa-private-main{padding:26px 16px 40px}.visa-panel{padding:21px 18px;border-radius:14px;margin-bottom:18px}.visa-form-grid,.visa-filter{grid-template-columns:1fr}.visa-form-grid{gap:17px}.visa-filter .visa-button{width:100%}.visa-process ol{gap:24px 18px}.visa-document{padding:14px}.visa-upload{grid-template-columns:1fr}.visa-upload .visa-button{width:100%}.visa-file{flex-direction:column;gap:4px}.visa-facts{grid-template-columns:1fr;gap:15px}.visa-table{min-width:390px}.visa-table th,.visa-table td{padding:12px}.visa-shell-head{padding:20px 16px;align-items:start}.visa-shell-head nav{flex-direction:column;gap:8px;align-items:end}.visa-shell-foot{padding:20px 16px;flex-direction:column;gap:10px}.visa-actions{align-items:stretch;flex-direction:column}.visa-actions>.visa-button{width:100%}.visa-section-head{align-items:start}.visa-checklist li{gap:12px}.visa-hero{padding-top:18px}.visa-service-foot{align-items:start;flex-direction:column}.visa-empty{padding:32px 18px}}
:root[data-theme="light"] .visa-public{--v-good:#275b3b;--v-line:rgba(37,56,82,.35)}
:root[data-theme="light"] .visa-public .visa-hero h1 em,:root[data-theme="light"] .visa-public .visa-process li:before{color:#8f403f}
:root[data-theme="light"] .visa-public :focus-visible{outline-color:#8f403f}
@media print{.visa-private{background:white;color:black}.visa-shell-head nav,.visa-section-nav,.visa form,.visa-shell-foot,.visa-skip{display:none!important}.visa-panel{break-inside:avoid;border-color:#ccc;background:white}.visa-private-main{max-width:none;padding:0}.visa{--v-text:#111;--v-ground:#fff;--v-line:#ccc;--v-soft:#fff}.visa a{color:#111}.visa-badge--good{color:#173c22}.visa-table-wrap{overflow:visible}.visa-table{min-width:0}}
