/* Consultas only. Adapted from legacy masterfront/root.css and the Visa template's
   embedded styles; unrelated portal/admin rules and old CDN scripts are excluded. */
@font-face{font-family:Poppins;src:url('fonts/Poppins-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Poppins;src:url('fonts/Poppins-SemiBold.ttf') format('truetype');font-style:normal;font-weight:600 900;font-display:swap}
*{box-sizing:border-box}
html.consultas-public-page{margin:0;padding:0;min-height:100%;background:#f1f1f1}
body.consultas-public{margin:0;min-height:100vh;border-top:6px solid #1b4f7b;background:#f1f1f1;color:#222;font-family:Poppins,Arial,sans-serif;font-size:16px;line-height:1.5}
.consultas-public a{color:#003870;text-decoration:none;overflow-wrap:anywhere}
.consultas-public a:hover{color:#0072cf;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #0072cf;outline-offset:3px}
.consultas-shell{max-width:1140px;margin:0 auto;padding:0 16px 20px;min-width:0}
h1{font-size:18px;font-weight:600;color:#003870;line-height:1.5;margin:0 0 18px}
.main-container{width:100%;max-width:728px;margin:20px auto 0;padding:20px;background:rgba(255,255,255,.67)}
.con-form-group{margin-bottom:18px;min-width:0}
.con-form-group label,.label2{font-weight:600;color:#003870;line-height:30px}
.con-form-group label{display:block;margin-bottom:10px}
.con-form-control{width:100%;max-width:100%;min-height:45px;padding:8px 10px;border:1px solid #aaa;border-radius:0;background:#fff;color:#222;font:inherit;font-size:14px;cursor:pointer}
.passport-visa-row{display:grid;grid-template-columns:48% 49%;justify-content:space-between;gap:0 3%}
.con-btn-form{display:block;background:#003870;border:1px solid #003870;color:#fff;width:100%;min-height:50px;border-radius:4px;font:inherit;cursor:pointer}
.con-btn-form:hover{background:#0072cf;border-color:#0072cf}
hr{height:0;border:0;border-top:1px solid #ddd;margin:22px 0}
p{margin:0 0 12px}
.label2{font-size:16px;margin:22px 0 8px}
.visa-type{font-size:14px;margin-bottom:4px}
.alert{padding:8px 14px;margin:5px 0 18px;border:1px solid transparent;border-radius:4px;overflow-wrap:anywhere}
.alert-danger{color:#721c24;background:#f8d7da;border-color:#f5c6cb;display:table;min-width:104px;text-align:center}
.alert-success{color:#155724;background:#d4edda;border-color:#c3e6cb;display:table;min-width:104px;text-align:center}
.alert-dark{color:#383d41;background:#e2e3e5;border-color:#d6d8db}
.alert h2{font-size:17px;margin:0 0 8px}
.source-note{white-space:pre-line;overflow-wrap:anywhere}
.directory-link{margin-top:18px;font-size:14px}
.directorioWeb{background:#f1f1f1;padding:18px 12px 24px;margin-top:14px}
.dir_search{grid-area:search;display:flex;min-width:0;gap:0;margin:0 0 20px}
.bodySearh{flex:1 1 0;width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid #ccc;font:inherit;font-size:14px;background:#fff}
.btn_buscar_body{flex-shrink:0;background:#003870;color:#fff;border:1px solid #003870;padding:10px 20px;font:inherit;font-size:14px;cursor:pointer}
.directory-columns{display:grid;grid-template-columns:minmax(185px,24%) minmax(0,1fr);grid-template-areas:". search" "categories results";column-gap:20px;align-items:start}
.menusection{grid-area:categories;background:#fff;border:1px solid #f1f1f2}
.menusection ul{list-style:none;padding:0;margin:0}
.menusection li{font-size:14px;text-transform:uppercase;border-bottom:1px solid #f9f9f9;color:#666}
.menusection li a{display:block;padding:12px 13px;line-height:18px;color:inherit;text-decoration:none}
.menusection li:hover{background:#f3f4f6;color:#023162}
.menusection li.active{background:#fefefe;color:#c7212e;box-shadow:inset 2px 0 0 #ef3340;font-weight:600}
.directory-results{grid-area:results;min-width:0;background:#fff}
.title_dir h2{padding:12px;margin:0;border-bottom:1px solid #ddd;color:#003870;font-size:18px;font-weight:600}
.title_dir h2 span{display:block;padding-top:4px;font-size:14px;color:#666;font-weight:400}
.filter-summary,.empty-result{font-size:14px;padding:12px;margin:0}
.DirsearhResult{background:#fff;margin:0;box-shadow:0 6px 10px -10px #000;min-width:0}
.item_dir{margin:18px 0;overflow:hidden;font-size:14px;border-left:4px solid #023162;padding:0 0 4px;box-shadow:0 6px 10px -10px #000;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.item_dir dt,.item_dir dd{margin:0;min-width:0;overflow-wrap:anywhere}
.item_dir .name{grid-column:1/-1;font-weight:600;color:#fff;font-size:16px;padding:6px 9px;background:#003870}
.item_dir .item{padding:4px 9px}
.item_dir .item-wide,.item_dir dd:last-child{grid-column:1/-1}
.item_dir .item>span{margin-right:8px;color:#003870;text-transform:uppercase;font-size:11px;min-width:70px;display:inline-block;font-weight:600}
.pagination{display:flex;flex-wrap:wrap;gap:4px;margin:18px 0 0;padding:0 10px;font-size:13px}
.pagination a,.pagination span{padding:6px 10px;border:1px solid #ddd;background:#fff;text-decoration:none;color:#003870}
.pagination .pagination-current{background:#003870;color:#fff;border-color:#003870}
.pagination [aria-disabled]{color:#666;background:#f7f7f7}
.sr-only,.skip-link:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{display:block;padding:8px;background:#fff;color:#003870}
@media(max-width:767px){.consultas-shell{padding:0 10px 14px}.directory-columns{grid-template-columns:minmax(0,1fr);grid-template-areas:"search" "categories" "results";gap:14px}.dir_search{margin-bottom:6px}.menusection ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.menusection li{font-size:12px}.menusection li a{padding:10px}.main-container{padding:16px 10px;margin-top:16px}}
@media(max-width:479px){.passport-visa-row{grid-template-columns:minmax(0,1fr)}.item_dir{grid-template-columns:minmax(0,1fr)}.consultas-nav{gap:6px 12px;font-size:11px}.directorioWeb{padding:14px 8px}.btn_buscar_body{padding:10px 12px}.menusection ul{grid-template-columns:minmax(0,1fr)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.source-note table{border-collapse:collapse;width:100%;margin:12px 0}.source-note td,.source-note th{border:1px solid #ccc;padding:8px;overflow-wrap:anywhere}.source-note p{margin:0 0 12px}.source-note{overflow-x:auto}

/* Consultas-only consistency: no link underlines; keyboard rings remain visible. */
.consultas-public .pagination a,.consultas-public .pagination span{display:inline-flex;align-items:center;justify-content:center;min-height:36px}
.consultas-public .dir_search input,.consultas-public .dir_search button{min-height:44px}
.consultas-public .item_dir .item{line-height:1.65}

/* Keep local Poppins on native controls without changing their size or weight. */
.consultas-public button,.consultas-public input,.consultas-public select,.consultas-public textarea{font-family:inherit}

/* Source-backed Visa notices; no effect on Directory or administration. */
.visa-consultation .visa-decree h2{color:#003870;font-size:16px;line-height:1.25;font-weight:700;margin:0 0 20px}
.visa-consultation .visa-decree p{margin:0 0 20px;text-align:justify}
.visa-consultation .visa-disclaimer{padding:20px;margin-top:22px}
.visa-consultation .visa-disclaimer ol{text-align:justify}
.visa-consultation .visa-travel-advisory{margin-bottom:0}
.visa-consultation .alert-primary{color:#004085;background:#cce5ff;border-color:#b8daff;display:table;min-width:104px;width:25%;text-align:center}

/* Native Visa selects stay untouched until the local script enhances them. */
.visa-consultation .visa-select{position:relative;width:100%;min-width:0;font-size:14px;line-height:1.5;color:#222}
.visa-consultation .visa-native-select{position:absolute;width:1px;max-width:1px;height:1px;min-height:0;max-height:1px;padding:0;margin:0;border:0;overflow:hidden;clip-path:inset(50%);pointer-events:none}
.visa-consultation .visa-selection{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left}
.visa-consultation .visa-selection-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.visa-consultation .visa-selection-arrow{flex-shrink:0;color:#003870}
.visa-consultation .visa-search-field{flex-shrink:0;padding:8px}
.visa-consultation .visa-search-input{min-height:36px;padding:6px 8px;cursor:text}
.visa-consultation .visa-search-panel{position:absolute;z-index:20;left:0;right:0;top:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #aaa;overflow:hidden}
.visa-consultation .visa-search-results{min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}
.visa-consultation .visa-search-panel[hidden],.visa-consultation .visa-search-empty[hidden]{display:none}
.visa-consultation .visa-search-above{top:auto;bottom:100%}
.visa-consultation .visa-search-option,.visa-consultation .visa-search-empty{padding:9px 10px;overflow-wrap:anywhere}
.visa-consultation .visa-search-option{cursor:pointer}
.visa-consultation .visa-search-option:hover{background:#f1f1f1}
.visa-consultation .visa-search-option.is-active{background:#003870;color:#fff}
.visa-consultation .visa-search-input[aria-invalid=true],.visa-consultation .visa-selection[aria-invalid=true]{border-color:#b3261e}
