:root{--navy:#06162d;--navy2:#0b2c50;--blue:#1368e8;--cyan:#00a9d6;--soft:#f3f6fa;--ink:#142235}
body{color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.navbar,.footer{background:var(--navy)}.navbar{min-height:72px}.navbar-brand small{display:block;font-size:.54rem;font-weight:400;letter-spacing:.02em}.logo-isotipo{height:56px;width:56px;object-fit:cover;object-position:center;flex:none;display:block}.logo-isotipo-footer{height:40px;width:40px}.navbar-nav{gap:.2rem}.nav-link{font-size:1.15rem;font-weight:600;padding:.45rem .9rem}.btn-primary{background:var(--blue);border-color:var(--blue)}a{text-decoration:none}.hero{background:radial-gradient(circle at 75% 35%,#175184 0,transparent 28%),linear-gradient(115deg,#06162d 25%,#0a345b 70%,#081a30);overflow-x:hidden}.hero-title,.hero-subtitle{white-space:nowrap}.hero-title{font-size:1.75rem}.eyebrow{font-size:.76rem;letter-spacing:.15em;color:#77baff}.search-panel{background:#fff;border-radius:.8rem;padding:.45rem;box-shadow:0 16px 45px #0005}.section-space{padding-top:4rem;padding-bottom:4rem}.section-title{font-size:1.35rem;font-weight:750}.action-card{display:flex;align-items:flex-start;gap:.8rem;color:var(--ink);padding:1.1rem;border:1px solid #dfe6ef;border-radius:.75rem;box-shadow:0 5px 18px #0a27470b;transition:.2s}.action-card:hover,.company-card:hover,.news-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px #102a4818}.action-card>i:first-child{font-size:1.25rem;color:#fff;background:var(--blue);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;flex:none}.action-card strong,.action-card small{display:block}.action-card small{font-size:.76rem;color:#69778b;margin-top:.3rem}.bg-soft{background:var(--soft)}.filter-bar,.panel{background:#fff;border:1px solid #e2e8f0;border-radius:.75rem;padding:1rem;box-shadow:0 6px 20px #0a27470d}.taskflow-banner{background:#fff;border-radius:1rem;overflow:hidden}.feed-item{display:flex;gap:.8rem;padding:.85rem 0;border-bottom:1px solid #edf0f4;color:var(--ink)}.feed-item i{color:var(--blue)}.feed-item strong,.feed-item small{display:block}.feed-item small,.empty{color:#758296;font-size:.82rem}.metrics{background:#f7f9fc;border-block:1px solid #e3e8ef}.metrics i,.metrics strong,.metrics small{display:block}.metrics i{color:var(--blue);font-size:1.3rem}.metrics strong{font-size:1.2rem}.metrics small{color:#657286}.news-card{display:block;color:var(--ink);border:1px solid #e2e7ee;border-radius:.7rem;overflow:hidden;height:100%;transition:.2s;background:#fff}.news-image{height:150px;background:linear-gradient(135deg,#163d64,#1a86bc);background-size:cover;background-position:center;padding:.7rem}.news-image span{color:#fff;background:var(--blue);border-radius:999px;padding:.2rem .5rem;font-size:.7rem}.news-card>div:last-child{padding:1rem}.event-card{display:flex;flex-direction:column}.event-card>div:last-child{display:flex;flex-direction:column;flex:1 1 auto}.event-card-date{margin-top:auto;padding-top:.75rem}.news-card h3{font-size:1rem;font-weight:700}.news-card p{font-size:.82rem;color:#66758a}.company-card{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid #e2e7ee;border-radius:.7rem;padding:1rem;color:var(--ink);transition:.2s}.company-card strong,.company-card small{display:block}.company-card small{color:#68778c}.company-logo{display:grid;place-items:center;width:52px;height:52px;border-radius:.7rem;background:#e5f0ff;color:var(--blue);font-size:1.5rem;font-weight:800}.footer a{display:block;color:#bac7d7;font-size:.85rem;margin:.3rem 0}.footer a:hover{color:#fff}.content-shell{min-height:55vh}.card-img-placeholder{height:180px;background:linear-gradient(135deg,#dfeaf5,#b9d3e9);display:grid;place-items:center;color:#4b6b89;font-size:3rem}.status-pill{font-size:.72rem;border-radius:999px;padding:.25rem .55rem;background:#fff3cd;color:#856404}
.action-card{--action-color:#1265d8;background:#fff;border-color:#dfe3e8;box-shadow:0 3px 10px #102a4812}.action-card>i:first-child{background:var(--action-color)}.action-card strong{color:var(--action-color);font-size:.95rem;line-height:1.2}.action-card>i:last-child{color:var(--action-color);align-self:flex-end}.action-card-blue{--action-color:#125dcc}.action-card-green{--action-color:#168346}.action-card-purple{--action-color:#7135b7}.action-card-orange{--action-color:#df641c}.action-card-teal{--action-color:#2f8290}
.level-A{background:#e7f8ee;color:#146c43}.level-B{background:#e8f1ff;color:#125dcc}.level-C{background:#fff4e5;color:#9a5b00}
.filter-bar .form-label{font-size:.78rem;font-weight:600;color:#06162d;margin-bottom:.3rem}
.filter-bar .form-control,.filter-bar .form-select{min-height:44px}
.directory-layout{display:grid;grid-template-columns:minmax(260px,300px) minmax(0,1fr);gap:1.75rem;align-items:start}
.directory-sidebar{position:sticky;top:88px}
.filter-bar-vertical{display:flex;flex-direction:column;gap:.85rem}
.filter-bar-vertical .filter-field{width:100%}
.filter-bar-vertical .form-check{margin:0}
.filter-accordion-toggle{display:flex;align-items:center;gap:.5rem;width:100%;border:0;border-radius:.7rem;background:#e5f0ff;color:#06162d;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:.88rem;font-weight:500;line-height:1.2;padding:.7rem .85rem;text-align:left}
.filter-accordion-title{flex:1;color:#06162d;font-weight:500}
.filter-actions{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.5rem}
.filter-actions .btn{width:100%}
.filter-accordion-count{color:#06162d;font-size:.88rem;font-weight:400}
.filter-accordion-chevron{color:#59a7ff;font-size:.88rem;font-weight:400;transform:none}
.filter-accordion.is-open .filter-accordion-chevron{transform:rotate(180deg)}
.filter-accordion-body{max-height:220px;overflow:auto;padding:.45rem .15rem 0}
.filter-check{display:flex;align-items:flex-start;gap:.5rem;font-size:.86rem;color:var(--ink);margin:0 0 .4rem;font-weight:400}
.filter-check input{margin-top:.2rem;flex:none}
@media(max-width:991px){.directory-layout{grid-template-columns:1fr}.directory-sidebar{position:static}}
.company-list{display:flex;flex-direction:column;gap:.65rem}
.company-row{display:flex;align-items:center;gap:1rem;background:#fff;border:1px solid #e2e7ee;border-radius:.7rem;padding:.85rem 1rem;color:var(--ink)}
.company-row:hover{border-color:#c5d4e8;box-shadow:0 8px 20px #102a4812}
.company-row-main{flex:1 1 16rem;min-width:0}
.company-row-title{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .6rem}
.company-row-title strong{font-size:1.02rem}
.company-row-main small,.company-row-meta small{display:block;color:#68778c;line-height:1.35}
.company-row-meta{flex:0 1 14rem}
.company-row-certs{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.35rem}
.company-row-actions{display:flex;gap:.5rem;flex:none}
.company-logo img{width:100%;height:100%;object-fit:cover;border-radius:.7rem}
@media(max-width:768px){.company-row{flex-wrap:wrap}.company-row-meta,.company-row-actions{width:100%}}
.rich-editor{border:1px solid #d7deea;border-radius:.6rem;overflow:hidden;background:#fff}
.rich-toolbar{display:flex;flex-wrap:wrap;gap:.35rem;padding:.45rem .55rem;background:#f3f6fa;border-bottom:1px solid #d7deea}
.rich-toolbar button{border:1px solid #c5d0e0;background:#fff;color:#06162d;border-radius:.35rem;padding:.2rem .55rem;font-size:.85rem}
.rich-surface{min-height:280px;padding:.9rem 1rem;outline:0;line-height:1.6}
.rich-surface h2,.publication-body h2{font-size:1.6rem;font-weight:700;margin:1.2rem 0 .6rem}
.rich-surface h3,.publication-body h3{font-size:1.3rem;font-weight:650;margin:1rem 0 .5rem}
.rich-surface blockquote,.publication-body blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:4px solid #1368e8;background:#f3f6fa;color:#4e5d72;font-style:italic}
.publication-layout{display:grid;grid-template-columns:minmax(0,850px) minmax(240px,1fr);gap:2rem 2.5rem;align-items:start;justify-content:start}
.publication-main{max-width:850px;width:100%}
.publication-aside{position:sticky;top:5.5rem}
.news-thumb{display:flex;gap:.75rem;align-items:flex-start;color:var(--ink);padding:.7rem 0;border-bottom:1px solid #edf0f4}
.news-thumb:hover strong{color:var(--blue)}
.news-thumb-image{flex:none;width:96px;height:68px;border-radius:.45rem;background:linear-gradient(135deg,#163d64,#1a86bc);background-size:cover;background-position:center}
.news-thumb strong,.news-thumb small{display:block}
.news-thumb strong{font-size:.92rem;line-height:1.3;font-weight:650}
.news-thumb small{margin-top:.25rem;color:#758296;font-size:.78rem}
@media(max-width:991px){.publication-layout{grid-template-columns:1fr}.publication-aside{position:static;margin-top:1rem}}
.publication-body{font-size:1.15rem;line-height:1.65}
.publication-body a{color:#1368e8;text-decoration:underline}
.rich-surface img,.publication-body img{max-width:100%;height:auto;border-radius:.5rem;margin:.6rem 0}
.pub-cols{display:flex;gap:1rem;margin:1rem 0;align-items:stretch;position:relative}
.pub-cols > .pub-col{flex:1 1 0;min-width:0;min-height:2.4rem;border:1px dashed #d7deea;border-radius:.45rem;padding:.35rem .55rem}
.pub-cols > .pub-col:first-child{flex:0 0 var(--pub-left, 50%)}
.publication-body .pub-col{border:0;padding:0}
.pub-box{background:#f3f6fa;border:1px solid #d7deea;border-radius:.6rem;padding:1rem 1.1rem;margin:1rem 0}
.rich-surface .pub-col-resize{position:absolute;top:0;bottom:0;width:12px;margin-left:-6px;cursor:col-resize;z-index:2;user-select:none}
.rich-surface .pub-col-resize::after{content:"";position:absolute;left:5px;top:.4rem;bottom:.4rem;width:2px;background:#1368e8;border-radius:2px;opacity:.55}
.rich-surface.pub-cols-resizing{cursor:col-resize;user-select:none}
@media(max-width:768px){.pub-cols{flex-direction:column}.pub-cols > .pub-col:first-child{flex:1 1 auto}.rich-surface .pub-col-resize{display:none}}
@media(max-width:991px){.navbar-collapse{padding:1rem 0}.hero-title,.hero-subtitle{white-space:normal}.hero-title{font-size:1.75rem}}@media(max-width:576px){.section-space{padding-top:2.5rem;padding-bottom:2.5rem}.home-actions{padding-top:1.25rem;padding-bottom:1.25rem}.home-specialists{padding-top:.75rem;padding-bottom:.75rem}.home-taskflow{padding-bottom:.5rem}.home-news{padding-top:1rem;padding-bottom:2.5rem}}
.home-actions{padding-top:2rem;padding-bottom:2rem}
.home-specialists{padding-top:1.5rem;padding-bottom:1.5rem}
.home-taskflow{padding-top:1rem;padding-bottom:1.2rem}
.home-news{padding-top:1.6rem;padding-bottom:4rem}
.news-index-layout{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:.5rem;align-items:start}
.news-index-main,.news-index-side{display:grid;grid-template-columns:1fr;gap:1.5rem;align-items:start}
.news-index-main h2{font-size:clamp(1rem,.9rem + .25vw,1.1rem);line-height:1.3;font-weight:600}
.news-index-compact{height:auto}
.news-index-compact .news-image{height:auto;aspect-ratio:16/9}
.news-index-compact h2{font-size:.8rem;line-height:1.3;margin:0}
.news-index-compact>div:last-child{padding:.55rem .75rem}
@media(min-width:768px){.news-index-main{grid-template-columns:1fr 1fr}.news-index-side{grid-template-columns:1fr 1fr}}
@media(min-width:992px){.news-index-layout{grid-template-columns:minmax(0,65fr) minmax(0,35fr)}.news-index-main{grid-template-columns:1fr 1fr 1fr}}
.home-specialists-head{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem}
.taskflow-banner,.taskflow-banner .carousel-inner,.taskflow-banner .carousel-item{background:#fff}
.taskflow-banner .carousel-item a{display:block}
.taskflow-slide{width:100%;height:auto;display:block;background:#fff}
.news-image{display:flex;flex-wrap:wrap;gap:.3rem;align-content:flex-start}
.news-heading{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;margin-bottom:.35rem}
.publication-categories{display:flex;flex-wrap:wrap;gap:.35rem}
.publication-categories .badge{text-decoration:none;font-weight:500}
@media(max-width:767px){
  .home-specialists-title{font-size:.68rem;line-height:1.25}
  .home-specialists-link{font-size:.82rem;white-space:nowrap;flex:none}
  .home-news .news-card-summary,.news-card .news-summary{display:none}
}
.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem}
.footer-brand{flex:1 1 auto;min-width:0}
.footer-tagline{white-space:nowrap;margin:.45rem 0 0}
.footer-menus{display:flex;flex:none;gap:2.25rem;margin-left:auto}
.footer-col{min-width:7.5rem}
.footer-bottom{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}
.footer-bottom a{display:inline;margin:0}
@media(max-width:991px){
  .footer-top{flex-direction:column;gap:1.5rem}
  .footer-tagline{white-space:normal}
  .footer-menus{flex-wrap:wrap;margin-left:0;gap:1.5rem 2rem}
}
.admin-kpis{display:flex;gap:.7rem}
.admin-kpi{flex:1 1 0;min-width:0;padding:.7rem .85rem;color:inherit}
.admin-kpi:hover{transform:none}
.admin-kpi small{display:block;font-size:.7rem;color:#758296;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.admin-kpi strong{display:block;font-size:1.45rem;line-height:1.15;margin-top:.2rem}
.admin-shell{display:grid;grid-template-columns:13.5rem minmax(0,1fr);gap:1.5rem;align-items:start}
.admin-nav{position:sticky;top:88px;padding:.6rem}
.admin-nav a{display:block;padding:.4rem .65rem;border-radius:.45rem;color:var(--ink)}
.admin-nav a:hover{background:#e8f1ff}
.admin-sections{display:grid;gap:1.25rem}
.admin-sections .panel{scroll-margin-top:88px}
.admin-event-dates{display:flex;flex-wrap:wrap;align-items:end;gap:.6rem}
.admin-event-dates .form-label{font-size:.75rem;font-weight:600}
@media(max-width:991px){
  .admin-kpis{overflow-x:auto;flex-wrap:nowrap}
  .admin-kpi{flex:0 0 8.5rem}
  .admin-shell{grid-template-columns:1fr}
  .admin-nav{position:static;display:flex;flex-wrap:wrap;gap:.3rem}
}
