:root{--ink:#123f58;--muted:#637b89;--blue:#107fa6;--orange:#fa7b19;--line:#dce6eb;--paper:#f4f7f9}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font:16px/1.5 Arial,sans-serif}a{color:var(--blue)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}[hidden]{display:none!important}:focus-visible{outline:3px solid #f7ad50;outline-offset:4px}.wrap{width:min(1200px,100%);margin-inline:auto;padding-inline:24px}.site-header{background:#fff;border-bottom:1px solid var(--line)}.site-nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:block;width:150px;aspect-ratio:1911/472;position:relative;overflow:hidden;flex-shrink:0}.brand img{position:absolute;width:113.65777%;max-width:none;height:auto;left:-7.01204%;top:-23.72881%}.nav-links{display:flex;align-items:center;gap:24px}.nav-links a{text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap}.nav-links a[aria-current=page]{color:var(--ink)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;border:1px solid var(--blue);border-radius:7px;background:var(--blue);color:white;text-decoration:none;font-weight:600;gap:8px}.button.orange{background:var(--orange);border-color:var(--orange);color:#fff}.menu-toggle{display:none;align-items:center;justify-content:center;gap:9px;background:#fff;border:1px solid var(--line);color:var(--ink);border-radius:7px;padding:10px 13px;min-height:44px;font-size:14px;font-weight:600}.menu-toggle svg{width:20px;height:20px}.hero{background:#0d759a;color:#fff;padding:54px 0 48px}.hero h1{font-size:clamp(30px,3.8vw,46px);line-height:1.15;letter-spacing:-1.1px;max-width:760px;margin:0 0 18px;text-wrap:balance}.hero p{margin:0 0 28px;max-width:650px;font-size:18px;line-height:1.55;color:#e4f4f9}.search-form{display:grid;grid-template-columns:2fr 1.2fr auto;gap:12px;padding:18px;background:white;border-radius:10px;box-shadow:0 8px 24px #003c5b20;color:var(--ink)}.search-form label,.zone-filters label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:600;min-width:0}.control{min-width:0;width:100%;min-height:48px;border:1px solid #c9d9e1;border-radius:6px;background:#fff;color:var(--ink);padding:11px 13px;font-size:16px}.control::placeholder{color:#7a8d98}.search-form .button{align-self:end;min-width:120px;min-height:48px}.directory{padding-block:34px 56px}.directory-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.directory h2{font-size:25px;letter-spacing:-.4px;line-height:1.25;margin:0 0 7px}.directory-top p{color:var(--muted);margin:0;font-size:14px}.categories{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.category{border:1px solid #cbdce4;border-radius:999px;background:#fff;color:var(--ink);padding:9px 17px;min-height:42px;font-size:14px}.category[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.zone-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:16px;align-items:end;padding:20px;background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:24px}.reset{min-height:46px;background:transparent;border:0;color:var(--blue);text-decoration:underline;font-size:14px;padding:8px}.results-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.results-heading p{margin:0;color:var(--muted);font-size:14px}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.card{min-width:0;border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden;display:flex;flex-direction:column}.card-avatar{height:112px;background:#e1eff4;display:grid;place-items:center;font-size:31px;font-weight:bold;color:#2a6f8b}.card-body{padding:18px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.badge{background:#e7f3f7;border-radius:4px;padding:3px 8px;font-size:11px;letter-spacing:.1px;margin-bottom:10px}.card h3{font-size:18px;line-height:1.3;margin:0 0 6px;overflow-wrap:anywhere}.card-role{font-size:14px;margin:0 0 9px}.card-location{font-size:13px;color:var(--muted);margin:0 0 18px;overflow-wrap:anywhere}.card a{font-weight:600;font-size:14px;margin-top:auto;text-decoration:none;padding-block:6px}.state{grid-column:1/-1;text-align:center;background:white;border:1px solid var(--line);border-radius:9px;padding:42px 24px;max-width:100%}.state h3{margin:0 0 9px;font-size:20px}.state p{color:var(--muted);margin:0 auto;max-width:480px;font-size:15px}.state .button{margin-top:20px}.jobs-info{border-top:1px solid var(--line);margin-top:40px;padding-top:28px}.jobs-info h2{font-size:20px}.jobs-info p{color:var(--muted);font-size:14px;margin:9px 0 0}.site-footer{border-top:1px solid var(--line);background:#fff}.footer-inner{padding-block:28px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-brand{display:flex;align-items:center;gap:22px}.footer-brand .brand{width:122px}.footer-inner p{font-size:13px;color:var(--muted);margin:0}.footer-inner a{font-size:13px;text-decoration:none}.skip-link{position:absolute;left:12px;top:-70px;background:white;padding:10px;z-index:10}.skip-link:focus{top:8px}
@media(max-width:1050px){.nav-links{gap:15px}.nav-links a{font-size:13px}.site-nav{gap:18px}.brand{width:135px}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:800px){.site-nav{min-height:74px;flex-wrap:wrap;gap:0;padding-block:18px}.brand{width:136px}.menu-toggle{display:inline-flex}.nav-links{display:none;width:100%;padding-top:18px;margin-top:16px;border-top:1px solid var(--line);gap:4px;align-items:stretch;flex-direction:column}.nav-links.open{display:flex}.nav-links a{font-size:15px;min-height:44px;display:flex;align-items:center;padding:10px 12px;border-radius:6px}.nav-links a:hover{background:#edf5f8}.nav-links .orange{margin-top:6px;justify-content:center}.hero{padding-block:34px}.hero h1{max-width:620px}.search-form{grid-template-columns:1fr 1fr}.search-form .button{grid-column:1/-1}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{gap:16px}}
@media(max-width:520px){.wrap{padding-inline:20px}.hero{padding-block:30px}.hero h1{font-size:32px;letter-spacing:-.8px;line-height:1.15;margin-bottom:14px}.hero p{font-size:16px;margin-bottom:22px}.search-form{grid-template-columns:1fr;gap:14px;padding:16px;border-radius:9px}.search-form label{font-size:12px}.control{min-height:48px}.directory{padding-block:28px 36px}.directory h2{font-size:23px}.directory-top{align-items:flex-start}.categories{gap:7px;margin-bottom:18px}.category{padding:8px 13px;font-size:13px}.zone-filters{grid-template-columns:1fr 1fr;gap:12px;padding:16px}.zone-filters .reset{grid-column:1/-1;justify-self:start;min-height:36px;padding:0}.cards{grid-template-columns:1fr;gap:16px}.card{display:grid;grid-template-columns:82px minmax(0,1fr)}.card-avatar{height:100%;min-height:166px;font-size:25px}.card-body{padding:16px}.card h3{font-size:18px}.state{padding:32px 20px}.footer-inner{align-items:flex-start;flex-direction:column;gap:20px;padding-block:26px}.footer-brand{align-items:flex-start;flex-direction:column;gap:12px}.footer-brand .brand{width:122px}}
@media(prefers-reduced-motion:no-preference){.button,.category{transition:background .15s,border-color .15s}.button:hover{filter:brightness(.96)}}

.control{font-weight:400}@media(max-width:520px){.zone-filters{grid-template-columns:1fr}.zone-filters .reset{grid-column:auto}.zone-filters label{gap:6px}}

.advertising-controls{padding-top:18px;padding-bottom:18px}.advertising-controls summary{cursor:pointer}.advertising-controls form{display:flex;flex-wrap:wrap;gap:14px;align-items:end;margin-top:14px}.advertising-controls label{display:grid;gap:6px}.advertising-controls input{font:inherit;padding:10px;border:1px solid #cad8e1;border-radius:6px;max-width:100%}.advertising{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:20px;padding-bottom:20px}.advertising[hidden]{display:none}.ad-card{border:1px solid #dbe5eb;border-radius:10px;padding:18px;background:#fff;overflow-wrap:anywhere}.ad-card small{color:#647d8c}.ad-card h3{margin:10px 0}.ad-card p{margin:0}@media(max-width:600px){.advertising{grid-template-columns:1fr}.advertising-controls label{width:100%}}

.featured-profiles{margin:22px 0}.featured-controls{display:flex;gap:10px;margin-top:12px}.featured-profiles[hidden]{display:none}

/* Job opportunities */
.jobs-info{background:#fff;border:1px solid var(--line);border-radius:12px;padding:28px;margin-top:40px}.jobs-info h2{font-size:26px;line-height:1.25;margin:0 0 8px;letter-spacing:-.4px}.jobs-info .jobs-intro{font-size:15px;line-height:1.6;margin:0 0 24px}.jobs-filters{display:grid;grid-template-columns:minmax(150px,1fr) minmax(210px,1.6fr) auto;gap:20px;align-items:start;padding:22px;background:#f5f9fb;border:1px solid #e1ebf0;border-radius:9px}.jobs-filters label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;min-width:0}.jobs-filters small{font-size:12px;font-weight:normal;color:var(--muted);line-height:1.5}.jobs-filter-actions{display:flex;align-items:center;gap:12px;padding-top:29px}.jobs-filter-actions .button{min-height:48px;white-space:nowrap}.jobs-clear{min-height:48px;border:0;background:transparent;color:var(--blue);padding:10px 5px;text-decoration:underline;font-size:14px}.jobs-info .jobs-status{margin:20px 0 0;font-size:14px;line-height:1.6}.jobs-info .jobs-empty{margin-top:22px;border:1px dashed #c9dce5;border-radius:9px;background:#fbfdfe;padding:32px 20px;text-align:center;color:var(--muted)}.jobs-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.jobs-grid:empty{display:none}.jobs-card{display:flex;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:9px;padding:24px;min-width:0}.jobs-card h3{margin:0 0 10px;font-size:20px;line-height:1.35;overflow-wrap:anywhere}.jobs-info .jobs-meta{font-size:13px;color:var(--muted);line-height:1.6;margin:0 0 14px}.jobs-info .jobs-description{font-size:15px;color:var(--ink);line-height:1.65;margin:0 0 20px;overflow-wrap:anywhere}.jobs-card .button{margin-top:auto;font-size:14px}@media(max-width:850px){.jobs-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.jobs-filter-actions{grid-column:1 / -1;padding-top:0}.jobs-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:520px){.jobs-info{padding:20px;margin-top:28px}.jobs-info h2{font-size:23px}.jobs-filters{padding:16px;grid-template-columns:minmax(0,1fr);gap:18px}.jobs-filter-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px}.jobs-card{padding:20px}.jobs-info .jobs-empty{padding:26px 16px}}

/* Compact job section */
.jobs-info{padding:20px;margin-top:28px}.jobs-info h2{font-size:23px;margin-bottom:4px}.jobs-info .jobs-intro{margin-bottom:14px;font-size:14px}.jobs-filters{padding:14px 16px;gap:14px}.jobs-filters label{gap:5px;font-size:13px}.jobs-filters .control{min-height:42px;padding:8px 11px;font-size:15px}.jobs-filters small{font-size:11px;line-height:1.3}.jobs-filter-actions{padding-top:24px;gap:10px}.jobs-filter-actions .button{min-height:42px;padding:8px 15px;font-size:14px}.jobs-clear{min-height:42px;padding-block:8px}.jobs-info .jobs-status{margin-top:12px;font-size:13px}.jobs-info .jobs-empty{margin-top:14px;padding:18px 14px}.jobs-grid{margin-top:14px;gap:14px}.jobs-card{padding:18px}.jobs-card h3{font-size:18px;margin-bottom:7px}.jobs-info .jobs-meta{margin-bottom:10px}.jobs-info .jobs-description{margin-bottom:14px}@media(max-width:850px){.jobs-filter-actions{padding-top:0}}@media(max-width:520px){.jobs-info{padding:16px;margin-top:22px}.jobs-info h2{font-size:21px}.jobs-info .jobs-intro{margin-bottom:12px}.jobs-filters{padding:12px;gap:12px}.jobs-filter-actions{gap:12px}.jobs-info .jobs-empty{padding:16px 12px}.jobs-card{padding:16px}}
/* Streamlined job filters */
.jobs-info{padding:16px 18px;margin-top:24px}.jobs-info h2{font-size:21px}.jobs-info .jobs-intro{margin-bottom:10px;font-size:13px}.jobs-filters{padding:10px 12px;gap:12px;grid-template-columns:minmax(110px,.65fr) minmax(180px,1.6fr) auto;align-items:end}.jobs-filters small{display:none}.jobs-filter-actions{padding-top:0}.jobs-filters .control{min-height:40px;padding:7px 10px}.jobs-filter-actions .button,.jobs-clear{min-height:40px}.jobs-info .jobs-empty{padding:0;border:0;background:transparent;text-align:left;margin-top:10px;font-size:13px}.jobs-info .jobs-status{margin-top:10px}@media(max-width:850px){.jobs-filters{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.jobs-filter-actions{grid-column:1/-1}}@media(max-width:520px){.jobs-info{padding:14px;margin-top:20px}.jobs-info h2{font-size:20px}.jobs-filters{padding:10px;gap:10px;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)}.jobs-filters .control{font-size:16px}.jobs-filter-actions{grid-template-columns:minmax(0,1fr) auto}.jobs-info .jobs-empty{padding:0}}


/* Tarjetas compactas del directorio */
.cards .card{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:start;gap:12px;padding:16px;border-radius:10px;min-height:164px}
.cards .card-avatar{width:52px;height:52px;min-height:0;border-radius:50%;font-size:20px;background:#e1eff4}
.cards .card-body{padding:0;min-width:0;align-self:stretch}
.cards .badge{font-size:10px;padding:2px 6px;margin-bottom:6px}
.cards .card h3{font-size:16px;line-height:1.3;margin-bottom:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cards .card-role{font-size:13px;line-height:1.4;margin-bottom:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cards .card-location{font-size:12px;line-height:1.4;margin-bottom:9px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cards .card a{font-size:13px;padding-block:5px}
@media(max-width:1100px) and (min-width:761px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:520px){.cards{gap:12px}.cards .card{min-height:154px;grid-template-columns:48px minmax(0,1fr);padding:14px}.cards .card-avatar{width:48px;height:48px}.cards .card h3{font-size:16px}}


/* Variante mixta: cabecera visual, cuerpo compacto y contacto oculto. */
.cards .card{display:flex;flex-direction:column;gap:0;padding:0;min-height:0}
.cards .card-avatar{width:100%;height:82px;border-radius:0;background:linear-gradient(110deg,#0e718f,#b0d7e0);color:white;font-size:26px}
.cards .card-body{padding:14px 16px;min-height:194px;flex:1;align-self:auto}
.cards .card-whatsapp{display:flex;align-items:center;gap:7px;margin:0 0 10px;font-size:12px;color:#347456;white-space:nowrap}
.card-whatsapp svg{width:18px;height:18px;flex:0 0 18px}.masked-number{filter:blur(1.5px);user-select:none;letter-spacing:.7px}.contact-lock{font-size:10px;color:#637b89;background:#edf4f7;padding:2px 5px;border-radius:4px}
.cards .card a{background:#e7f3f7;padding:7px 12px;border-radius:5px}
@media(max-width:520px){.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cards .card{display:flex;min-height:0;padding:0}.cards .card-avatar{width:100%;height:70px}.cards .card-body{padding:12px;min-height:222px}.cards .card h3{font-size:15px}.cards .card-role{font-size:12px}.cards .card-location{font-size:11px}.cards .card-whatsapp{gap:4px;font-size:10px}.card-whatsapp svg{width:16px;height:16px;flex-basis:16px}.contact-lock{display:none}}

/* Portada azul e identidad circular superpuesta. */
.cards .card{position:relative;overflow:hidden;padding-top:58px;background:linear-gradient(110deg,#08708f,#abd6df) top/100% 58px no-repeat white}
.cards .card-avatar{position:relative;z-index:1;width:64px;height:64px;min-height:64px;margin:-30px 0 0 16px;border:4px solid white;border-radius:50%;background:#e5f2f6;color:#14718f;font-size:22px}
.cards .card-body{padding-top:10px;min-height:191px}
@media(max-width:520px){.cards .card{padding-top:52px;background-size:100% 52px}.cards .card-avatar{width:56px;height:56px;min-height:56px;margin:-27px 0 0 12px;font-size:19px}.cards .card-body{min-height:220px}}

.cards .card-rating{display:flex;align-items:center;gap:5px;margin:0 0 12px;font-size:12px;color:#637b89;line-height:20px;min-height:20px}.rating-star{color:#ec7818;font-size:17px}.card-rating strong{color:#123f58}.cards .card-body{min-height:220px}.no-reviews{font-size:12px}@media(max-width:520px){.cards .card-body{min-height:245px}.cards .card-rating{font-size:11px;gap:4px}.no-reviews{font-size:11px}}

.featured-profiles .cards{grid-template-columns:minmax(0,280px);margin-bottom:14px}

/* Actividad y ubicación de todas las tarjetas, incluida rotación. */
.cards .card-role,.cards .card-location{display:flex;align-items:flex-start;gap:7px}.card-detail-icon{width:17px;height:17px;flex:0 0 17px;margin-top:1px;color:#107fa6}.card-location .card-detail-icon{color:#637b89}.card-detail-text{min-width:0;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* Filas equivalentes para que texto de dos líneas no desplace los datos siguientes. */
.cards .card-body{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(8,auto);gap:4px;align-content:start}
.cards .card-body>.badge{grid-row:1;align-self:start;justify-self:start;margin:0}
.cards .card-body>h3{grid-row:2;margin:0;align-self:start}
.cards .card-body>.card-role{grid-row:3;margin:0;align-self:start}
.cards .card-body>.card-location{grid-row:4;margin:0;align-self:start}
.cards .card-body>.card-whatsapp{grid-row:5;margin:0;align-self:center}
.cards .card-body>.card-opening{grid-row:6;margin:0;font-size:16px;line-height:22px;align-self:center}
.cards .card-body>.card-rating{grid-row:7;margin:0;align-self:center}
.cards .card-body>a{grid-row:8;margin:0;align-self:end;justify-self:start}
@media(max-width:520px){.cards .card-body{grid-template-rows:repeat(8,auto);gap:4px}.cards .card-body>.card-opening{font-size:13px;line-height:20px}}

.cards .card-avatar.has-profile-image{overflow:hidden;background:#fff}.cards .card-avatar>img{display:block;width:100%;height:100%;object-fit:contain;border-radius:50%;padding:3px}

/* Cabecera compacta: 25oct2026. */
.site-nav{min-height:76px}
.hero{padding:22px 0}
.hero h1{font-size:clamp(27px,2.5vw,32px);line-height:1.2;letter-spacing:-.5px;max-width:1050px;margin-bottom:8px;text-wrap:initial}
.hero p{max-width:900px;font-size:16px;line-height:1.5;margin-bottom:16px}
.search-form{padding:12px;gap:12px}
.search-form label{gap:5px}
.search-form .control{min-height:44px;padding:9px 12px}
.search-form .button{min-height:44px;padding:9px 18px}
.directory{padding-top:22px}.directory-top{margin-bottom:14px}.directory h2{font-size:23px}.categories{margin-bottom:14px}
.directory>.zone-filters{grid-template-columns:1fr 1.35fr 1fr auto;gap:14px;padding:14px;margin-bottom:8px}
.directory>.zone-filters .control{min-height:44px;padding:9px 12px}
.opening-help{font-size:12px;color:var(--muted);margin:8px 0 14px}
@media(max-width:800px){.site-nav{min-height:70px;padding-block:13px}.hero h1{font-size:29px}.search-form{grid-template-columns:1fr 1fr auto}.search-form .button{grid-column:auto;min-width:94px}.directory>.zone-filters{grid-template-columns:1fr 1fr}.directory>.zone-filters .reset{grid-column:auto;justify-self:start}}
@media(max-width:600px){.hero{padding-block:20px}.hero h1{font-size:26px;line-height:1.2;letter-spacing:-.4px}.hero p{font-size:15px;margin-bottom:14px}.search-form{grid-template-columns:1fr;gap:10px}.search-form .button{grid-column:auto;min-height:44px}.directory{padding-top:20px}.directory h2{font-size:22px}.directory>.zone-filters{gap:12px;padding:12px}.directory>.zone-filters label[for=openingFilter]{grid-column:1/-1}.directory>.zone-filters .reset{grid-column:1/-1;min-height:36px}.opening-help{line-height:1.45}}

/* Separación breve entre buscador, controles y resultados. */
.advertising-controls{padding-top:8px;padding-bottom:8px;font-size:14px}
.directory{padding-top:12px}
.directory-top{margin-bottom:10px}
.directory-top h2{margin-bottom:3px}
.categories{margin-bottom:10px;gap:7px}
.category{padding:7px 15px;min-height:38px}
.results-heading{margin-bottom:10px}
@media(max-width:600px){.directory{padding-top:12px}.category{min-height:44px;padding:8px 12px}}


/* Proporción acordada: título destacado y menos fondo vacío. */
.hero{padding-block:12px}
.hero h1{font-size:clamp(28px,2.5vw,32px);line-height:1.2;margin-bottom:6px}
.hero p{font-size:16px;line-height:1.4;margin-bottom:12px}
.search-form{padding:12px;gap:12px}
.search-form label{font-size:13px;gap:5px}
@media(max-width:800px){.hero h1{font-size:30px}}
@media(max-width:600px){.hero{padding-block:14px}.hero h1{font-size:28px}.hero p{font-size:15px}.search-form{padding:12px;gap:10px}}

.cards .card-body{min-height:0}
