:root{
 --front-green:#0b5d46;--front-green-2:#14745b;--front-green-soft:#edf7f3;--front-ink:#0f172a;--front-text:#334155;--front-muted:#64748b;--front-line:#dce5e2;--front-bg:#f7faf9;--front-card:#fff;--front-blue:#2563eb;--front-orange:#f97316;--front-purple:#7c3aed;--front-red:#be123c;--front-radius:18px;--front-shadow:0 14px 35px rgba(15,23,42,.06)
}
.front-body{margin:0;background:var(--front-bg);color:var(--front-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.front-body *{box-sizing:border-box}.front-container{width:min(1480px,calc(100% - 40px));margin-inline:auto}.front-main{min-height:60vh}.front-header{position:fixed;top:0;right:0;left:0;z-index:1200;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--front-line)}
.front-body{padding-top:76px}
.front-account-placeholder{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  padding:0;
  border:1px solid #cddbd6;
  border-radius:10px;
  background:#fff;
  color:var(--front-green);
  font-size:16px;
  cursor:default;
}
.front-header-inner{height:76px;display:flex;align-items:center;gap:28px}.front-logo{display:flex;align-items:center;gap:10px;color:var(--front-green);text-decoration:none;min-width:245px}.front-logo-mark{width:42px;height:42px;border-radius:12px;background:var(--front-green);color:#fff;display:grid;place-items:center;font-size:18px;box-shadow:0 7px 15px rgba(11,93,70,.18)}.front-logo strong{font-size:24px;letter-spacing:-.04em;display:block;line-height:1}.front-logo small{display:block;color:var(--front-muted);font-size:10px;margin-top:4px;white-space:nowrap}.front-nav{display:flex;align-items:center;justify-content:center;gap:4px;flex:1}.front-nav>a,.front-nav-more>button{border:0;background:none;text-decoration:none;color:#172033;font-weight:650;font-size:14px;padding:26px 11px 23px;position:relative;white-space:nowrap}.front-nav>a:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;background:transparent}.front-nav>a:hover,.front-nav>a.is-active,.front-nav-more>button:hover{color:var(--front-green)}.front-nav>a.is-active:after{background:var(--front-green)}.front-nav-more{position:relative}.front-nav-more button i{font-size:9px;margin-left:4px}.front-nav-dropdown{display:none;position:absolute;top:64px;right:0;width:245px;background:#fff;border:1px solid var(--front-line);border-radius:14px;padding:8px;box-shadow:var(--front-shadow)}.front-nav-more:hover .front-nav-dropdown,.front-nav-more:focus-within .front-nav-dropdown{display:block}.front-nav-dropdown a{display:flex;gap:10px;align-items:center;padding:11px 12px;border-radius:9px;color:var(--front-text);text-decoration:none;font-size:13px}.front-nav-dropdown a:hover{background:var(--front-green-soft);color:var(--front-green)}.front-header-tools{display:flex;align-items:center}.front-header-tools a{width:40px;height:40px;display:grid;place-items:center;color:var(--front-ink);border-radius:10px;text-decoration:none}.front-header-tools a:hover{background:var(--front-green-soft);color:var(--front-green)}.front-menu-toggle{display:none;border:0;background:var(--front-green);color:#fff;width:42px;height:42px;border-radius:10px}
.front-eyebrow{display:block;color:var(--front-green);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}.front-text-link,.front-section-heading>a{color:var(--front-green);text-decoration:none;font-weight:700;font-size:13px}.front-text-link:hover,.front-section-heading>a:hover{text-decoration:underline}.front-muted{color:var(--front-muted);font-size:13px}.front-hero{background:linear-gradient(112deg,#f8fbfa 0%,#eef6f2 44%,#dfeee8 100%);border-bottom:1px solid var(--front-line);position:relative;overflow:hidden}.front-hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 25%,rgba(255,255,255,.95),transparent 18%),radial-gradient(circle at 77% 58%,rgba(11,93,70,.10),transparent 24%),linear-gradient(90deg,transparent 54%,rgba(11,93,70,.05));pointer-events:none}.front-hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,.75fr);gap:48px;align-items:center;min-height:390px;position:relative;z-index:1}.front-hero-copy{padding:54px 0}.front-hero h1{font-size:clamp(42px,5vw,72px);letter-spacing:-.05em;line-height:.96;margin:0 0 14px;color:#0a352b;font-weight:800}.front-hero-copy>p{font-size:20px;color:#475569;max-width:720px;margin:0 0 25px}.front-search{display:flex;max-width:760px;background:#fff;border:1px solid #cfddd8;border-radius:12px;box-shadow:0 12px 28px rgba(15,23,42,.08);padding:6px}.front-search .search-input-wrap{position:relative;flex:1;display:flex;align-items:center}.front-search .search-input-wrap>i{position:absolute;left:16px;color:#718096}.front-search input{width:100%;height:52px;border:0;outline:0;padding:0 18px 0 45px;font-size:16px;background:transparent}.front-search button{border:0;background:var(--front-green);color:#fff;border-radius:9px;min-width:118px;font-weight:750}.front-search button:hover{background:#084b39}.front-search .search-suggestions{top:58px}.front-search-hints{font-size:12px;color:#6b7280;margin-top:13px}.front-search-hints a{color:#4b5563;text-decoration:none}.front-search-hints a:hover{color:var(--front-green);text-decoration:underline}.front-hero-sources{background:rgba(255,255,255,.9);border:1px solid rgba(207,221,216,.9);border-radius:16px;padding:18px;box-shadow:0 16px 40px rgba(15,23,42,.08)}.front-hero-source-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:800;margin-bottom:14px}.front-official-pill{background:#effaf5;color:var(--front-green);border-radius:999px;padding:6px 9px;font-size:10px}.front-hero-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.front-hero-source-grid>div{border:1px solid #e4ebe8;border-radius:10px;padding:9px;display:flex;gap:8px;align-items:center;background:#fff}.source-mini-icon{width:30px;height:30px;border-radius:8px;background:var(--front-green-soft);color:var(--front-green);display:grid;place-items:center}.front-hero-source-grid strong{display:block;font-size:11px;line-height:1.1}.front-hero-source-grid small{display:block;font-size:9px;color:var(--front-muted);margin-top:2px}.front-hero-sources>.front-text-link{display:block;margin-top:13px;text-align:right}
.front-kpi-row{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;margin-top:18px}.front-kpi{min-width:0;background:#fff;border:1px solid var(--front-line);border-radius:14px;padding:15px 12px;display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--front-ink);transition:.2s ease}.front-kpi:hover{transform:translateY(-2px);box-shadow:var(--front-shadow);border-color:#bfd6ce}.front-kpi-icon{width:34px;height:34px;display:grid;place-items:center;color:var(--front-green);font-size:17px}.front-kpi-copy{min-width:0}.front-kpi small{display:block;color:#536174;font-size:10px;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.front-kpi strong{display:block;font-size:18px;line-height:1.15;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.front-kpi em{display:block;font-style:normal;font-size:9px;color:#8a97a8;margin-top:5px}.front-kpi-turnover strong{color:var(--front-blue)}.front-kpi-profit strong{color:var(--front-green)}.front-kpi-businesses strong{color:var(--front-purple)}.front-kpi-jobs strong{color:#0f766e}.front-kpi-schools strong{color:#7c3aed}.front-kpi-tourism strong{color:#b45309}
.front-home-grid{display:grid;grid-template-columns:1.8fr 1fr 1fr;gap:14px;margin-top:14px}.front-panel{background:#fff;border:1px solid var(--front-line);border-radius:var(--front-radius);padding:22px;box-shadow:0 1px 2px rgba(15,23,42,.02)}.front-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.front-section-heading h2{font-size:21px;letter-spacing:-.025em;margin:0}.front-section-heading p{color:var(--front-muted);font-size:13px;margin:5px 0 0}.front-locality-cloud{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;min-height:180px;background:linear-gradient(135deg,#f5fbf8,#edf6f2);border-radius:13px;padding:16px;position:relative;overflow:hidden}.front-locality-cloud:before{content:"";position:absolute;inset:-60px;background:radial-gradient(circle,rgba(11,93,70,.07) 1px,transparent 1.5px);background-size:20px 20px;transform:rotate(-6deg)}.front-locality-cloud a{position:relative;z-index:1;text-decoration:none;color:var(--front-ink);background:rgba(255,255,255,.86);border:1px solid rgba(192,214,205,.85);border-radius:11px;padding:9px 10px;align-self:start;transform:translateY(calc((var(--rank) % 3) * 12px));min-width:0}.front-locality-cloud a:hover{border-color:var(--front-green);box-shadow:0 7px 20px rgba(11,93,70,.10)}.locality-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--front-green);margin-right:5px}.front-locality-cloud strong{font-size:12px}.front-locality-cloud small{display:block;color:var(--front-muted);font-size:9px;margin:4px 0 0 12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.front-map-actions{display:flex;gap:8px;margin-top:14px}.front-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;padding:10px 13px;font-size:12px;font-weight:750;text-decoration:none;border:1px solid transparent;cursor:pointer}.front-btn-primary{background:var(--front-green);color:#fff}.front-btn-primary:hover{background:#084b39;color:#fff}.front-btn-outline{border-color:#9ac8b7;background:#fff;color:var(--front-green)}.front-btn-soft{background:var(--front-green-soft);color:var(--front-green)}.front-update-list>div{display:grid;grid-template-columns:72px 1fr 18px;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f0;font-size:12px}.front-update-list time{color:#7b8797;font-size:10px}.front-update-list i{color:var(--front-green)}.front-report-list{display:flex;flex-direction:column}.front-report-list a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #edf1f0;text-decoration:none;color:var(--front-text);font-size:12px}.front-report-list a span{display:flex;gap:8px;align-items:center}.front-report-list a i{color:var(--front-green)}.front-report-list small{font-size:9px;color:#7f8c9d;font-weight:800}.front-explore-cards{margin-top:28px;margin-bottom:34px}.front-feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.front-feature-grid>a{background:#fff;border:1px solid var(--front-line);border-radius:15px;padding:20px;text-decoration:none;color:var(--front-text);transition:.2s}.front-feature-grid>a:hover{transform:translateY(-2px);border-color:#b9d5ca;box-shadow:var(--front-shadow)}.front-feature-grid>a>i{width:36px;height:36px;border-radius:10px;background:var(--front-green-soft);color:var(--front-green);display:grid;place-items:center;margin-bottom:18px}.front-feature-grid strong{display:block;color:var(--front-ink);font-size:15px}.front-feature-grid span{display:block;color:var(--front-muted);font-size:12px;margin-top:6px;line-height:1.5}.front-feature-grid.mini{grid-template-columns:repeat(4,1fr)}
.front-page-head{padding-top:42px;padding-bottom:20px}.front-page-head h1,.front-locality-hero h1,.front-business-hero h1{font-size:clamp(34px,4vw,52px);letter-spacing:-.04em;margin:0}.front-page-head>p{color:var(--front-muted);max-width:800px;margin-top:9px}.front-breadcrumb{display:flex;align-items:center;gap:8px;color:#7a8797;font-size:11px;margin-bottom:23px}.front-breadcrumb a{color:#667386;text-decoration:none}.front-breadcrumb i{font-size:7px}.front-locality-hero,.front-business-hero{background:linear-gradient(110deg,#f8fbfa,#eef7f3);border-bottom:1px solid var(--front-line);padding:26px 0 30px}.front-locality-title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.front-locality-title h1 small{font-size:12px;letter-spacing:0;text-transform:uppercase;padding:6px 8px;border-radius:999px;background:#dff1e9;color:var(--front-green);vertical-align:middle}.front-locality-title p{margin:8px 0 0;color:var(--front-muted)}.front-business-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px;align-items:center}.front-business-meta>*{font-size:11px;color:#526174;text-decoration:none;padding-right:10px;border-right:1px solid #cdd9d5}.front-business-meta>*:last-child{border-right:0}.front-status-pill{background:#e6f7ee!important;color:#0a6a4d!important;border:0!important;padding:5px 8px!important;border-radius:999px}.front-profile-kpis{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-top:18px}.front-profile-kpis a{background:#fff;border:1px solid var(--front-line);border-radius:13px;padding:13px;text-decoration:none;color:var(--front-ink)}.front-profile-kpis small{display:block;color:var(--front-muted);font-size:9px;text-transform:uppercase}.front-profile-kpis strong{display:block;font-size:17px;margin-top:4px}.front-profile-tabs{display:flex;gap:4px;border-bottom:1px solid var(--front-line);margin-top:20px;overflow:auto;white-space:nowrap}.front-profile-tabs a{padding:13px 16px;text-decoration:none;color:#526174;font-size:12px;font-weight:700;border-bottom:2px solid transparent}.front-profile-tabs a:hover,.front-profile-tabs a.is-active{color:var(--front-green);border-bottom-color:var(--front-green)}.front-profile-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:14px;margin-top:20px}.front-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.front-profile-intro p{color:var(--front-text);line-height:1.65}.front-data-list{margin:18px 0 0}.front-data-list>div{display:grid;grid-template-columns:160px 1fr;gap:12px;border-top:1px solid #edf1f0;padding:10px 0}.front-data-list dt{font-size:11px;color:#718096;font-weight:500}.front-data-list dd{font-size:12px;margin:0;color:var(--front-ink);font-weight:650}.front-data-list.financial dd{text-align:right}.front-line-chart{height:230px;position:relative;margin-top:6px}.front-line-chart svg{display:block;width:100%;height:100%;overflow:visible}.front-chart-legend{font-size:10px;color:var(--front-muted);margin-top:5px}.front-chart-legend i{display:inline-block;width:16px;height:3px;border-radius:2px;margin-right:6px;vertical-align:middle}.legend-green{background:var(--front-green)}.front-empty{padding:20px;border:1px dashed #d5dfdc;background:#fafcfb;color:#718096;border-radius:12px;font-size:12px;text-align:center}.front-entity-list{display:flex;flex-direction:column}.front-entity-list>a{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--front-text);padding:11px 0;border-bottom:1px solid #edf1f0}.front-entity-list strong{display:block;font-size:12px;color:var(--front-ink)}.front-entity-list small{font-size:10px;color:var(--front-muted)}.front-entity-list i{font-size:9px;color:var(--front-green)}.front-big-stat{display:flex;align-items:end;gap:12px;padding:24px 0}.front-big-stat strong{font-size:42px;line-height:1;color:var(--front-green)}.front-big-stat span{color:var(--front-muted);font-size:12px;padding-bottom:4px}.front-chip-list{display:flex;flex-wrap:wrap;gap:8px}.front-chip-list>a{display:flex;gap:8px;align-items:center;border:1px solid #dce7e3;border-radius:9px;padding:8px 10px;text-decoration:none;color:var(--front-text);background:#fbfdfc;font-size:10px}.front-chip-list>a strong{color:var(--front-green)}.front-proc-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}.front-proc-kpis>div{background:#f8fbfa;border:1px solid #e2ebe8;border-radius:11px;padding:13px}.front-proc-kpis small{display:block;text-transform:uppercase;color:#7a8797;font-size:9px}.front-proc-kpis strong{display:block;margin-top:5px;font-size:17px}.front-table{width:100%;border-collapse:collapse}.front-table th,.front-table td{padding:11px 10px;border-bottom:1px solid #e8eeec;text-align:left;font-size:11px}.front-table thead th{text-transform:uppercase;color:#718096;font-size:9px;background:#f8faf9}.front-table th a{color:var(--front-green);text-decoration:none}.front-job-list article{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:13px 0;border-bottom:1px solid #edf1f0}.front-job-list strong{display:block;font-size:13px}.front-job-list span,.front-job-list small{display:block;color:var(--front-muted);font-size:10px;margin-top:3px}.front-job-list b{font-size:11px;color:var(--front-green)}
.front-compare-controls{margin-bottom:14px}.front-compare-picks{background:#fff;border:1px solid var(--front-line);border-radius:15px;padding:15px;display:flex;align-items:end;gap:10px}.front-compare-picks label{flex:1;font-size:10px;text-transform:uppercase;color:#718096;font-weight:800}.front-compare-picks select{width:100%;height:42px;border:1px solid #d7e1de;border-radius:9px;background:#fff;padding:0 10px;margin-top:5px;color:var(--front-ink);text-transform:none}.front-comparison{margin-bottom:40px}.front-compare-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:22px}.front-compare-bars article{border:1px solid #e3eae8;border-radius:12px;padding:14px}.front-compare-bars h3{font-size:13px;margin:0 0 12px}.compare-bar-row{display:grid;grid-template-columns:90px 1fr 80px;gap:8px;align-items:center;margin:8px 0;font-size:9px}.compare-bar-row b{height:7px;background:#edf2f0;border-radius:10px;overflow:hidden}.compare-bar-row b i{display:block;height:100%;background:var(--front-green);border-radius:10px}.compare-bar-row em{font-style:normal;text-align:right;color:#526174}
.front-page-sources{margin-top:32px;margin-bottom:32px}.front-source-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.front-source-strip article{background:#fff;border:1px solid var(--front-line);border-radius:12px;padding:14px}.front-source-strip article>span{display:block;color:var(--front-green);font-size:8px;text-transform:uppercase;font-weight:800}.front-source-strip strong{display:block;font-size:11px;margin-top:4px}.front-source-strip article>a{display:inline-block;font-size:9px;margin-top:7px;color:var(--front-green);text-decoration:none}.front-footer{background:#0d2f27;color:#d8e4e0;margin-top:45px;padding:42px 0 15px}.front-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.front-logo-footer{color:#fff}.front-logo-footer .front-logo-mark{background:#fff;color:var(--front-green)}.front-footer p{font-size:11px;line-height:1.6;color:#a8bdb6;max-width:480px;margin-top:17px}.front-footer-grid>div:not(:first-child){display:flex;flex-direction:column;gap:8px}.front-footer-grid>div>strong{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#fff;margin-bottom:4px}.front-footer-grid>div>a{font-size:11px;color:#b8cbc5;text-decoration:none}.front-footer-grid>div>a:hover{color:#fff}.front-footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:14px;display:flex;justify-content:space-between;color:#89a29a;font-size:9px}
@media(max-width:1200px){.front-nav>a,.front-nav-more>button{padding-left:7px;padding-right:7px;font-size:12px}.front-logo{min-width:205px}.front-kpi-row{grid-template-columns:repeat(4,1fr)}.front-home-grid{grid-template-columns:1.5fr 1fr}.front-home-grid>.front-panel:last-child{grid-column:1/-1}.front-profile-kpis{grid-template-columns:repeat(4,1fr)}}
@media(max-width:900px){.front-container{width:min(100% - 24px,1480px)}.front-menu-toggle{display:grid;place-items:center}.front-header-inner{height:66px;gap:12px}.front-logo{min-width:0;flex:1}.front-logo small{display:none}.front-logo strong{font-size:20px}.front-header-tools{display:none}.front-nav{display:none;position:absolute;left:12px;right:12px;top:70px;background:#fff;border:1px solid var(--front-line);border-radius:14px;padding:8px;box-shadow:var(--front-shadow);flex-direction:column;align-items:stretch}.front-nav.is-open{display:flex}.front-nav>a,.front-nav-more>button{padding:11px 12px;text-align:left;border-radius:8px}.front-nav>a:after{display:none}.front-nav>a.is-active{background:var(--front-green-soft)}.front-nav-more>button{width:100%}.front-nav-dropdown{position:static;width:auto;box-shadow:none;border:0;padding-left:12px;display:block}.front-hero-grid{grid-template-columns:1fr;gap:10px;min-height:0}.front-hero-copy{padding:40px 0 20px}.front-hero-sources{margin-bottom:32px}.front-kpi-row{grid-template-columns:repeat(2,1fr)}.front-home-grid{grid-template-columns:1fr}.front-home-grid>.front-panel:last-child{grid-column:auto}.front-locality-cloud{grid-template-columns:repeat(3,1fr)}.front-feature-grid,.front-feature-grid.mini{grid-template-columns:repeat(2,1fr)}.front-profile-grid,.front-two-cols{grid-template-columns:1fr}.front-profile-kpis{grid-template-columns:repeat(2,1fr)}.front-source-strip{grid-template-columns:1fr 1fr}.front-compare-bars{grid-template-columns:1fr}.front-footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:25px}}
@media(max-width:620px){.front-hero h1{font-size:42px}.front-hero-copy>p{font-size:16px}.front-search{display:block}.front-search button{width:100%;height:46px}.front-hero-source-grid{grid-template-columns:1fr 1fr}.front-kpi-row{grid-template-columns:repeat(2,minmax(0,1fr))}.front-kpi{padding:12px 9px}.front-kpi strong{font-size:15px}.front-locality-cloud{grid-template-columns:1fr 1fr}.front-feature-grid,.front-feature-grid.mini{grid-template-columns:1fr}.front-locality-title{align-items:flex-start;flex-direction:column}.front-profile-kpis{grid-template-columns:repeat(2,1fr)}.front-data-list>div{grid-template-columns:115px 1fr}.front-proc-kpis{grid-template-columns:1fr}.front-job-list article{align-items:flex-start;flex-direction:column}.front-compare-picks{flex-wrap:wrap}.front-compare-picks label{flex:1 1 calc(50% - 10px)}.front-compare-picks .front-btn{width:100%}.front-source-strip{grid-template-columns:1fr}.front-footer-grid{grid-template-columns:1fr 1fr}.front-footer-grid>div:first-child{grid-column:1/-1}.front-footer-bottom{flex-direction:column;gap:4px}.front-hero-sources{display:none}}

/* Front branding v1.1 */
.front-logo{min-width:220px}
.front-logo-image{display:block;width:auto;height:48px;max-width:220px;object-fit:contain;object-position:left center}
.front-logo-footer .front-logo-image{height:58px;max-width:250px;filter:brightness(0) invert(1) opacity(.95)}
.front-hero{background-image:linear-gradient(90deg,rgba(248,251,250,.95) 0%,rgba(248,251,250,.88) 35%,rgba(238,246,242,.66) 62%,rgba(223,238,232,.50) 100%),var(--front-hero-image);background-size:cover;background-position:center center;background-repeat:no-repeat}
.front-hero:after{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(11,93,70,.06)),radial-gradient(circle at 72% 28%,rgba(255,255,255,.45),transparent 24%)}
.front-hero-sources{backdrop-filter:blur(8px)}
@media(max-width:900px){.front-logo-image{height:42px;max-width:185px}.front-hero{background-position:60% center}}
@media(max-width:620px){.front-logo-image{height:38px;max-width:170px}.front-hero{background-position:65% center}.front-hero-copy{background:rgba(248,251,250,.64);border-radius:14px;padding:28px 14px 20px;margin-top:12px;backdrop-filter:blur(3px)}}


/* Front mobile navigation drawer v1.2 */
.front-nav-overlay,.front-nav-drawer-head{display:none}
@media(max-width:900px){
  .front-body.front-menu-open{overflow:hidden;touch-action:none}
  .front-header{z-index:1200}
  .front-menu-toggle{position:relative}
  .front-nav-overlay{
    display:block;
    position:fixed;
    inset:0;
    z-index:1210;
    background:rgba(8,28,23,.34);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    -webkit-backdrop-filter:blur(4px);
    backdrop-filter:blur(4px);
    transition:opacity .22s ease,visibility .22s ease;
  }
  .front-nav-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
  .front-nav{
    display:flex !important;
    position:fixed !important;
    inset:0 auto 0 0 !important;
    width:min(80vw,340px) !important;
    max-width:80vw !important;
    height:100dvh !important;
    z-index:1220 !important;
    margin:0 !important;
    padding:0 12px 18px !important;
    border:0 !important;
    border-radius:0 18px 18px 0 !important;
    background:#fff !important;
    box-shadow:18px 0 45px rgba(15,23,42,.18) !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:2px !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    overscroll-behavior:contain;
    transform:translateX(-104%);
    visibility:hidden;
    transition:transform .24s ease,visibility .24s ease;
  }
  .front-nav.is-open{transform:translateX(0);visibility:visible}
  .front-nav-drawer-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:66px;
    margin:0 -12px 8px;
    padding:0 12px 0 18px;
    border-bottom:1px solid var(--front-line);
    color:var(--front-green);
    font-size:12px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.08em;
    position:sticky;
    top:0;
    z-index:2;
    background:rgba(255,255,255,.96);
    -webkit-backdrop-filter:blur(8px);
    backdrop-filter:blur(8px);
  }
  .front-nav-close{
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border:0;
    border-radius:10px;
    background:var(--front-green-soft);
    color:var(--front-green);
    font-size:18px;
  }
  .front-nav>a,.front-nav-more>button{flex:0 0 auto !important;padding:12px 13px !important;min-height:44px;display:flex;align-items:center;width:100%;text-align:left;border-radius:10px !important}
  .front-nav>a.is-active{background:var(--front-green-soft) !important;color:var(--front-green) !important}
  .front-nav-more{flex:0 0 auto;width:100%}
  .front-nav-more>button{justify-content:space-between}
  .front-nav-dropdown{display:block !important;position:static !important;width:100% !important;padding:4px 0 2px 12px !important;border:0 !important;box-shadow:none !important;background:transparent !important}
  .front-nav-dropdown a{min-height:42px;padding:10px 12px !important;border-radius:9px}
}
@media(max-width:480px){
  .front-nav{width:80vw !important;max-width:80vw !important;border-radius:0 16px 16px 0 !important}
}

/* Front directory, search and provenance refinements v1.3 */
.front-page-head{padding-top:34px;padding-bottom:22px}.front-page-head h1{margin:0;font-size:clamp(34px,4vw,52px);letter-spacing:-.045em;line-height:1}.front-page-head>p{max-width:820px;margin:12px 0 0;color:var(--front-muted);font-size:16px;line-height:1.65}.front-breadcrumb{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:22px;color:#7b8797;font-size:11px}.front-breadcrumb a{color:var(--front-muted);text-decoration:none}.front-breadcrumb a:hover{color:var(--front-green)}.front-breadcrumb i{font-size:7px}
.front-filter-panel{margin-bottom:22px}.front-filter-form{display:grid;grid-template-columns:minmax(280px,1.6fr) minmax(220px,.8fr) auto;align-items:end;gap:12px;padding:16px;background:#fff;border:1px solid var(--front-line);border-radius:15px}.front-filter-form label{display:block;margin:0;color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.front-filter-form input,.front-filter-form select{width:100%;height:44px;margin-top:6px;border:1px solid #d7e1de;border-radius:9px;background:#fff;color:var(--front-ink);padding:0 12px;font-size:13px;font-weight:500;text-transform:none;outline:none}.front-filter-form input:focus,.front-filter-form select:focus{border-color:#8bc2ae;box-shadow:0 0 0 3px rgba(11,93,70,.08)}.front-filter-search>div{position:relative}.front-filter-search>div i{position:absolute;left:13px;top:21px;color:#87948f;font-size:12px}.front-filter-search input{padding-left:36px}.front-filter-actions{display:flex;gap:8px}.front-filter-actions .front-btn{height:44px;white-space:nowrap}
.front-directory-section{padding-bottom:22px}.front-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.front-directory-card{min-width:0;display:flex;flex-direction:column;min-height:208px;padding:18px;background:#fff;border:1px solid var(--front-line);border-radius:15px;text-decoration:none;color:var(--front-ink);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.front-directory-card:hover{transform:translateY(-2px);border-color:#b9d6cc;box-shadow:var(--front-shadow);color:var(--front-ink)}.front-directory-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.front-directory-icon{width:36px;height:36px;border-radius:10px;background:var(--front-green-soft);color:var(--front-green);display:grid;place-items:center}.front-directory-type{max-width:70%;padding:5px 8px;border-radius:999px;background:#f5f7f6;color:#607068;font-size:9px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.front-directory-card h3{font-size:18px;letter-spacing:-.025em;margin:15px 0 10px}.front-directory-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:auto}.front-directory-stats span{padding:9px;border-radius:9px;background:#f8faf9}.front-directory-stats small{display:block;color:#7c8a85;font-size:8px;text-transform:uppercase}.front-directory-stats strong{display:block;margin-top:3px;font-size:13px}.front-directory-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px;padding-top:11px;border-top:1px solid #edf1f0;color:#6d7a75;font-size:9px}.front-directory-meta i{color:var(--front-green)}.front-directory-lines{display:flex;gap:12px;flex-wrap:wrap;color:#697873;font-size:10px}.front-directory-lines span{display:flex;gap:5px;align-items:center}.front-directory-lines i{color:var(--front-green)}.front-directory-description{margin:13px 0 0;color:#5c6a66;font-size:11px;line-height:1.5}.front-directory-description b{color:#34413d;font-weight:750}.front-business-directory .front-directory-card{min-height:230px}.front-pagination{display:flex;justify-content:center;gap:5px;flex-wrap:wrap;margin-top:24px}.front-pagination a{min-width:38px;height:38px;padding:0 10px;display:grid;place-items:center;border:1px solid var(--front-line);border-radius:8px;background:#fff;color:var(--front-text);text-decoration:none;font-size:12px}.front-pagination a:hover,.front-pagination a.is-active{border-color:var(--front-green);background:var(--front-green);color:#fff}
.front-category-strip{margin-bottom:24px}.front-category-scroll{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.front-category-scroll a{min-width:0;padding:13px;background:#fff;border:1px solid var(--front-line);border-radius:12px;color:var(--front-ink);text-decoration:none}.front-category-scroll a:hover{border-color:#b9d6cc}.front-category-scroll span,.front-category-scroll small{display:block;color:var(--front-green);font-size:8px;font-weight:800}.front-category-scroll strong{display:block;margin:5px 0;font-size:10px;line-height:1.35}.front-category-scroll small{color:#7b8797;font-weight:600}
.front-search-page-panel{margin-bottom:22px}.front-search-page{display:grid;grid-template-columns:minmax(0,1fr) 220px auto;gap:10px;padding:12px;background:#fff;border:1px solid var(--front-line);border-radius:15px}.front-search-page .search-input-wrap{position:relative}.front-search-page .search-input-wrap>i{position:absolute;left:15px;top:16px;color:#7b8797}.front-search-page input,.front-search-page select{width:100%;height:46px;border:1px solid #d7e1de;border-radius:9px;background:#fff;outline:none;font-size:13px}.front-search-page input{padding:0 12px 0 39px}.front-search-page select{padding:0 10px}.front-search-page .front-btn{height:46px;min-width:100px}.front-search-results-section{padding-bottom:24px}.front-search-results{display:flex;flex-direction:column;gap:8px}.front-search-results>a{display:grid;grid-template-columns:42px minmax(0,1fr) 16px;gap:12px;align-items:center;padding:15px;background:#fff;border:1px solid var(--front-line);border-radius:13px;text-decoration:none;color:var(--front-ink)}.front-search-results>a:hover{border-color:#b9d6cc;box-shadow:0 8px 22px rgba(15,23,42,.04)}.front-search-result-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:var(--front-green-soft);color:var(--front-green)}.front-search-result-copy{min-width:0}.front-search-result-copy small{display:block;color:var(--front-green);font-size:8px;font-weight:800;text-transform:uppercase}.front-search-result-copy strong{display:block;font-size:14px;margin-top:2px}.front-search-result-copy em{display:block;color:#75827e;font-size:10px;font-style:normal;margin-top:3px}.front-search-result-copy p{margin:6px 0 0;color:#5f6c68;font-size:11px;line-height:1.5}.front-search-results>a>i{color:#95a29e;font-size:9px}
.front-source-updated{display:block;margin-top:7px;color:#7a8984;font-size:8px}.front-source-updated i{margin-right:3px}.front-profile-tabs{scroll-margin-top:90px}.front-profile-tabs a{white-space:nowrap}.front-page-sources{scroll-margin-top:95px}
@media(max-width:1100px){.front-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.front-category-scroll{grid-template-columns:repeat(3,minmax(0,1fr))}.front-filter-form{grid-template-columns:minmax(240px,1.4fr) minmax(200px,.8fr)}.front-filter-actions{grid-column:1/-1}.front-filter-actions .front-btn{flex:0 0 auto}}
@media(max-width:900px){.front-page-head{padding-top:25px}.front-profile-tabs{overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;justify-content:flex-start}.front-profile-tabs a{flex:0 0 auto}.front-compare-picks{display:grid;grid-template-columns:1fr 1fr}.front-compare-picks label{min-width:0}.front-compare-picks .front-btn{grid-column:1/-1}.front-search-page{grid-template-columns:minmax(0,1fr) 190px}.front-search-page .front-btn{grid-column:1/-1}.front-category-scroll{display:flex;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:5px}.front-category-scroll a{flex:0 0 190px;scroll-snap-align:start}}
@media(max-width:620px){.front-page-head{padding-top:20px;padding-bottom:16px}.front-page-head h1{font-size:34px}.front-page-head>p{font-size:14px}.front-breadcrumb{margin-bottom:16px}.front-filter-form{grid-template-columns:1fr;padding:12px}.front-filter-actions{grid-column:auto}.front-filter-actions .front-btn{flex:1}.front-directory-grid{grid-template-columns:1fr}.front-directory-card{min-height:0}.front-directory-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.front-section-heading{align-items:flex-start}.front-section-heading>a{white-space:nowrap}.front-search-page{grid-template-columns:1fr;padding:10px}.front-search-page .front-btn{grid-column:auto;width:100%}.front-search-results>a{grid-template-columns:38px minmax(0,1fr) 12px;padding:12px;gap:9px}.front-search-result-icon{width:38px;height:38px}.front-compare-picks{grid-template-columns:1fr}.front-compare-picks .front-btn{grid-column:auto}.compare-bar-row{grid-template-columns:78px 1fr 72px}.front-comparison{padding:14px}.front-category-scroll a{flex-basis:170px}}

/* Company ↔ operated entities */
.front-company-units{scroll-margin-top:95px}.front-company-units .front-section-heading p{max-width:720px;margin:7px 0 0;color:var(--front-muted);font-size:12px;line-height:1.55}.front-company-unit-group+.front-company-unit-group{margin-top:22px;padding-top:20px;border-top:1px solid var(--front-line)}.front-company-unit-group-title{display:flex;align-items:center;gap:9px;margin-bottom:10px;color:var(--front-ink)}.front-company-unit-group-title>i{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:var(--front-green-soft);color:var(--front-green)}.front-company-unit-group-title strong{font-size:13px}.front-company-unit-group-title span{min-width:23px;height:23px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:#f2f5f4;color:#64736e;font-size:9px;font-weight:800}.front-company-unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.front-company-unit-grid>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 15px;border:1px solid var(--front-line);border-radius:12px;background:#fff;color:var(--front-ink);text-decoration:none;transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.front-company-unit-grid>a:hover{transform:translateY(-1px);border-color:#b9d6cc;box-shadow:0 8px 20px rgba(15,23,42,.04)}.front-company-unit-grid>a>div{min-width:0}.front-company-unit-grid strong,.front-company-unit-grid span,.front-company-unit-grid small{display:block}.front-company-unit-grid strong{font-size:13px}.front-company-unit-grid span{margin-top:3px;color:#63716c;font-size:10px}.front-company-unit-grid small{margin-top:6px;color:#82908b;font-size:9px}.front-company-unit-grid small i,.front-company-unit-grid>a>i{color:var(--front-green)}.front-company-unit-grid>a>i{font-size:9px}.front-company-unit-note{display:flex;align-items:flex-start;gap:8px;margin-top:16px;padding:10px 12px;border-radius:10px;background:var(--front-green-soft);color:#4f655e;font-size:9px;line-height:1.5}.front-company-unit-note i{margin-top:1px;color:var(--front-green)}.place-operator-link{color:var(--front-green);text-decoration:none;font-weight:700}.place-operator-link:hover{text-decoration:underline}.place-operator-link i{font-size:.72em;margin-left:3px}
@media(max-width:720px){.front-company-unit-grid{grid-template-columns:1fr}}

/* Front fixed header + full viewport drawer overlay v1.5 */
.front-nav-overlay{
  position:fixed;
  inset:0;
}
@media(max-width:900px){
  .front-body{padding-top:66px}

  .front-header-inner{
    height:66px;
    display:grid;
    grid-template-columns:44px minmax(0,1fr) 44px;
    align-items:center;
    gap:10px;
    position:relative;
  }

  .front-menu-toggle{
    grid-column:1;
    grid-row:1;
    justify-self:start;
    width:42px;
    height:42px;
    margin:0;
  }

  .front-logo{
    grid-column:2;
    grid-row:1;
    min-width:0;
    width:auto;
    justify-self:center;
    justify-content:center;
    text-align:center;
    overflow:hidden;
  }

  .front-logo-image{
    height:42px;
    max-width:min(185px,100%);
    object-position:center center;
  }

  .front-header-tools{display:none!important}

  .front-account-placeholder{
    grid-column:3;
    grid-row:1;
    justify-self:end;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid #cddbd6;
    border-radius:11px;
    background:#fff;
    color:var(--front-green);
    font-size:17px;
    cursor:default;
  }

  .front-nav-overlay{
    position:fixed!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100vw!important;
    height:100dvh!important;
    z-index:1210!important;
  }

  .front-nav{z-index:1220!important}
}

@media(max-width:480px){
  .front-header-inner{grid-template-columns:42px minmax(0,1fr) 42px;gap:8px}
  .front-logo-image{height:38px;max-width:min(160px,100%)}
  .front-account-placeholder,.front-menu-toggle{width:40px;height:40px}
}

/* Front list filters: right drawer + quick search v1.7 */
.front-body.front-filter-open{overflow:hidden;touch-action:none}
.front-list-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:16px 0 14px}
.front-filter-trigger{height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;border:1px solid #b8d2c9;border-radius:10px;background:#fff;color:var(--front-green);font:inherit;font-size:13px;font-weight:750;cursor:pointer}
.front-filter-trigger:hover{background:var(--front-green-soft)}
.front-filter-trigger b{min-width:20px;height:20px;padding:0 6px;display:grid;place-items:center;border-radius:999px;background:var(--front-green);color:#fff;font-size:10px}
.front-quick-search{position:relative;width:min(520px,55vw);height:44px;display:flex;align-items:center;margin:0}
.front-quick-search>i{position:absolute;left:14px;color:#7b8984;font-size:12px;pointer-events:none}
.front-quick-search input{width:100%;height:44px;padding:0 42px 0 38px;border:1px solid var(--front-line);border-radius:10px;background:#fff;color:var(--front-ink);outline:0;font:inherit;font-size:13px}
.front-quick-search input:focus{border-color:#8bc2ae;box-shadow:0 0 0 3px rgba(11,93,70,.08)}
.front-quick-search button{position:absolute;right:6px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#708079;cursor:pointer}
.front-quick-search button:hover{background:#f1f5f3;color:var(--front-green)}
.front-filter-overlay{position:fixed;inset:0;z-index:1700;background:rgba(8,28,23,.28);opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:opacity .2s ease,visibility .2s ease}
.front-filter-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
form.front-filter-drawer{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:auto!important;z-index:1710!important;width:min(430px,90vw)!important;height:100dvh!important;max-width:90vw!important;margin:0!important;padding:0!important;display:flex!important;flex-direction:column!important;gap:0!important;overflow:hidden!important;border:0!important;border-radius:18px 0 0 18px!important;background:#fff!important;box-shadow:-18px 0 45px rgba(15,23,42,.16)!important;transform:translateX(104%);visibility:hidden;transition:transform .24s ease,visibility .24s ease}
form.front-filter-drawer.is-open{transform:translateX(0);visibility:visible}
.front-filter-drawer-head{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px 14px 20px;border-bottom:1px solid var(--front-line);background:#fff}
.front-filter-drawer-head span,.front-filter-drawer-head strong{display:block}.front-filter-drawer-head span{color:var(--front-green);font-size:9px;font-weight:850;letter-spacing:.11em}.front-filter-drawer-head strong{margin-top:3px;font-size:18px;letter-spacing:-.02em}
.front-filter-close{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border:0;border-radius:10px;background:var(--front-green-soft);color:var(--front-green);font-size:17px;cursor:pointer}
.front-filter-drawer-fields{display:flex!important;flex-direction:column!important;gap:15px!important;min-height:0;overflow-y:auto;padding:20px!important;-webkit-overflow-scrolling:touch}
.front-filter-drawer-fields>*{min-width:0!important;max-width:none!important}
.front-filter-drawer-fields>[class*="col-"]{width:100%!important;max-width:none!important;flex:0 0 auto!important}
.front-filter-drawer-fields label{display:block!important;width:100%!important;margin:0!important;color:#475569;font-size:11px;font-weight:750}
.front-filter-drawer-fields input:not([type="checkbox"]):not([type="radio"]),.front-filter-drawer-fields select{width:100%!important;min-width:0!important;height:44px!important;margin-top:6px!important;padding:0 12px!important;border:1px solid #d4dfdb!important;border-radius:10px!important;background:#fff!important;color:var(--front-ink)!important;font:inherit!important;font-size:13px!important;outline:0!important}
.front-filter-drawer-fields input:focus,.front-filter-drawer-fields select:focus{border-color:#8bc2ae!important;box-shadow:0 0 0 3px rgba(11,93,70,.08)!important}
.front-filter-drawer-fields .btn,.front-filter-drawer-fields button[type="submit"]{width:100%!important;min-height:44px!important;margin:0!important;border-radius:10px!important}
.front-filter-drawer-fields .row{display:flex!important;flex-direction:column!important;gap:15px!important;margin:0!important}

/* Top firme */
.front-ranking-page>h1{margin-bottom:8px}.front-ranking-page>.lead{max-width:900px}
.front-rank-badge{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#f2f5f4;color:#64736e;font-size:11px;font-weight:850}
.front-rank-badge.rank-1{background:#fff4c2;color:#8a6500;border:1px solid #ead37b}.front-rank-badge.rank-2{background:#f0f3f5;color:#59636d;border:1px solid #d5dce1}.front-rank-badge.rank-3{background:#f8e5d7;color:#99572d;border:1px solid #e8c3a8}
.front-ranking-table tbody tr.front-rank-1{background:#fffdf4}.front-ranking-table tbody tr.front-rank-2{background:#fafbfc}.front-ranking-table tbody tr.front-rank-3{background:#fffaf6}
.front-ranking-table tbody tr.front-rank-top td:first-child{border-left:3px solid transparent}.front-ranking-table tbody tr.front-rank-1 td:first-child{border-left-color:#d5a900}.front-ranking-table tbody tr.front-rank-2 td:first-child{border-left-color:#98a2ad}.front-ranking-table tbody tr.front-rank-3 td:first-child{border-left-color:#bd7749}

@media(max-width:700px){
  .front-list-toolbar{gap:9px}.front-filter-trigger{flex:0 0 auto;padding:0 12px}.front-quick-search{width:auto;flex:1;min-width:0}.front-quick-search input{min-width:0}
  form.front-filter-drawer{width:min(88vw,390px)!important;max-width:88vw!important;border-radius:16px 0 0 16px!important}
  .front-filter-drawer-head{min-height:66px;padding:12px 12px 12px 16px}.front-filter-drawer-fields{padding:16px!important}
}



/* v1.8 - mobile front drawer always above overlay */
@media(max-width:900px){
  .front-nav-overlay{
    z-index:1210!important;
  }
  .front-nav{
    z-index:1230!important;
    isolation:isolate;
  }
  .front-nav.is-open{
    z-index:1230!important;
  }
}


/* v1.9 - overlay below mobile header stacking context, therefore below drawer */
@media(max-width:900px){
  .front-nav-overlay{
    z-index:1190!important;
  }
  .front-header{
    z-index:1200!important;
  }
  .front-nav{
    z-index:1220!important;
  }
}


/* v2.0 - mobile menu overlay covers header too, but remains below drawer */
@media(max-width:900px){
  .front-header{
    z-index:1200!important;
  }
  .front-nav-overlay{
    z-index:1210!important;
  }
  .front-header-inner{
    position:relative;
    z-index:auto;
  }
  .front-nav{
    z-index:1220!important;
  }
}


/* v2.1 - all front page heading/hero areas use the configured homepage hero image */
.front-page-head{
  position:relative;
  isolation:isolate;
}
.front-page-head::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  bottom:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background-image:
    linear-gradient(90deg,rgba(248,251,250,.95) 0%,rgba(248,251,250,.88) 35%,rgba(238,246,242,.66) 62%,rgba(223,238,232,.50) 100%),
    var(--front-hero-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  border-bottom:1px solid var(--front-line);
}
.front-locality-hero,
.front-business-hero{
  background-image:
    linear-gradient(90deg,rgba(248,251,250,.95) 0%,rgba(248,251,250,.88) 35%,rgba(238,246,242,.66) 62%,rgba(223,238,232,.50) 100%),
    var(--front-hero-image)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
}
@media(max-width:900px){
  .front-page-head::before,
  .front-locality-hero,
  .front-business-hero{
    background-position:60% center!important;
  }
}
@media(max-width:620px){
  .front-page-head::before,
  .front-locality-hero,
  .front-business-hero{
    background-position:65% center!important;
  }
}

/* v2.3 - Economy page: fast initial render, responsive KPIs, tabs and AJAX charts */
.economy-hero{padding-bottom:30px}.economy-hero-layout{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.economy-hero-copy{min-width:0}.economy-hero-copy>p{max-width:780px;margin:10px 0 0;color:var(--front-muted);font-size:16px;line-height:1.55}.economy-hero-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;max-width:520px}.front-btn-dark{background:#101827;color:#fff;border-color:#101827}.front-btn-dark:hover{background:#1d2939;color:#fff;border-color:#1d2939}.economy-page{padding-top:20px;padding-bottom:48px}.economy-kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:22px}.economy-kpi{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:82px;padding:18px 22px;border:1px solid var(--front-line);border-radius:14px;background:#fff;box-shadow:0 5px 20px rgba(15,23,42,.025)}.economy-kpi strong{font-size:27px;line-height:1;font-weight:800;letter-spacing:-.035em}.economy-kpi span{margin-left:auto;color:var(--front-muted);font-size:13px;text-align:right}.economy-kpi-green strong{color:#0b7657}.economy-kpi-blue strong{color:#1769aa}.economy-kpi-violet strong{color:#7354b5}.economy-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 0 10px;margin-bottom:14px;scrollbar-width:none}.economy-tabs::-webkit-scrollbar{display:none}.economy-tabs button{flex:0 0 auto;border:1px solid #d9e2df;background:#fff;color:#344054;border-radius:10px;padding:10px 14px;font-size:12px;font-weight:750;cursor:pointer}.economy-tabs button.is-active{background:var(--front-green);border-color:var(--front-green);color:#fff}.economy-tab-panel{min-height:250px}.economy-section-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:4px 0 13px}.economy-section-toolbar h2{margin:2px 0 0;font-size:28px;letter-spacing:-.035em}.economy-quick-search{display:flex;align-items:center;gap:9px;width:min(420px,42vw);height:42px;padding:0 14px;border:1px solid var(--front-line);border-radius:11px;background:#fff}.economy-quick-search i{color:#788680;font-size:13px}.economy-quick-search input{width:100%;min-width:0;border:0;outline:0;background:transparent;font:inherit;font-size:13px;color:var(--front-ink)}.economy-locality-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.economy-locality-card{display:block;min-height:142px;padding:18px 20px;border:1px solid var(--front-line);border-radius:14px;background:#fff;text-decoration:none;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.economy-locality-card:hover{transform:translateY(-2px);border-color:#bad8cf;box-shadow:0 10px 24px rgba(15,23,42,.05)}.economy-locality-name{display:inline-flex;max-width:100%;padding:5px 10px;border-radius:999px;background:var(--front-green-soft);color:var(--front-green);font-size:11px;font-weight:800}.economy-locality-card strong,.economy-locality-card span{display:block}.economy-locality-card strong{margin-top:13px;color:var(--front-ink);font-size:22px;letter-spacing:-.025em}.economy-locality-card>span{margin-top:4px;color:#65736e;font-size:13px}.economy-ajax-state{display:grid;place-items:center;gap:8px;min-height:240px;color:var(--front-muted);font-size:13px}.economy-table-wrap{border:1px solid var(--front-line);border-radius:13px;background:#fff;overflow:hidden}.economy-table-wrap table{font-size:12px}.economy-table-wrap th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:#667085;background:#f8faf9}.economy-table-wrap td small{display:block;margin-top:3px;color:#7a8782;font-size:10px}.economy-table-wrap td a{color:var(--front-green);font-weight:700;text-decoration:none}.economy-code{display:inline-flex;padding:4px 7px;border-radius:7px;background:var(--front-green-soft);color:var(--front-green);font-weight:800}.economy-chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.economy-chart-card{min-width:0;padding:18px;border:1px solid var(--front-line);border-radius:14px;background:#fff}.economy-chart-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.economy-chart-head h3,.economy-chart-card>h3{margin:0;font-size:16px}.economy-chart-head>span{color:var(--front-muted);font-size:10px}.economy-bars{display:flex;flex-direction:column;gap:9px}.economy-bar-label{display:flex;justify-content:space-between;gap:10px;font-size:10px}.economy-bar-label span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#475467}.economy-bar-label strong{white-space:nowrap;color:#15251f}.economy-bar-track{height:8px;border-radius:999px;background:#eef3f1;overflow:hidden}.economy-bar-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0b7657,#4cae8c)}.economy-line-chart{display:block;width:100%;height:220px;overflow:visible;background:linear-gradient(to bottom,transparent 24%,#edf1ef 25%,transparent 26%,transparent 49%,#edf1ef 50%,transparent 51%,transparent 74%,#edf1ef 75%,transparent 76%);border-bottom:1px solid #e5ebe8}.economy-line-chart polyline{fill:none;stroke:#0b7657;stroke-width:2.2;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}.economy-chart-years{display:flex;justify-content:space-between;margin-top:7px;color:#7b8984;font-size:9px}
@media(max-width:1050px){.economy-hero-layout{align-items:flex-start;flex-direction:column}.economy-hero-actions{justify-content:flex-start;max-width:none}.economy-locality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.economy-page{padding-top:14px}.economy-kpi-grid{grid-template-columns:1fr;gap:10px}.economy-kpi{min-height:66px;padding:14px 16px}.economy-kpi strong{font-size:23px}.economy-section-toolbar{align-items:stretch;flex-direction:column;gap:10px}.economy-section-toolbar h2{font-size:24px}.economy-quick-search{width:100%}.economy-locality-grid,.economy-chart-grid{grid-template-columns:1fr}.economy-locality-card{min-height:120px}.economy-hero-actions{width:100%}.economy-hero-actions .front-btn{flex:1 1 auto;justify-content:center}.economy-chart-card{padding:15px}}
@media(max-width:480px){.economy-hero-actions{display:grid;grid-template-columns:1fr}.economy-hero-actions .front-btn{width:100%}.economy-tabs{margin-left:-2px;margin-right:-2px}.economy-kpi{gap:10px}.economy-kpi span{font-size:12px}.economy-locality-grid{gap:10px}}


/* v2.4 - public jobs redesign */
.jobs-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--front-line);
  background-image:
    linear-gradient(90deg,rgba(247,251,249,.96) 0%,rgba(243,250,247,.91) 34%,rgba(224,242,235,.70) 62%,rgba(184,224,211,.62) 100%),
    var(--front-hero-image);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.jobs-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 78% 26%,rgba(255,255,255,.44),transparent 24%);
}
.jobs-hero-inner{
  position:relative;
  z-index:1;
  min-height:278px;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(560px,.95fr);
  align-items:center;
  gap:54px;
  padding-top:46px;
  padding-bottom:46px;
}
.jobs-hero-copy{max-width:610px}
.jobs-hero-copy h1{
  margin:5px 0 12px;
  font-size:clamp(38px,4vw,58px);
  line-height:1.02;
  letter-spacing:-.045em;
}
.jobs-hero-copy p{max-width:560px;margin:0;color:#536b66;font-size:16px;line-height:1.65}
.jobs-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.jobs-stat{
  min-width:0;
  min-height:94px;
  display:grid;
  grid-template-columns:42px auto 1fr;
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:11px;
  padding:17px 18px;
  border:1px solid rgba(255,255,255,.65);
  border-radius:14px;
  box-shadow:0 12px 32px rgba(15,23,42,.08);
  backdrop-filter:blur(7px);
}
.jobs-stat-icon{
  grid-row:1/3;
  width:42px;height:42px;border-radius:999px;
  display:grid;place-items:center;
  font-size:16px;
}
.jobs-stat strong{font-size:23px;line-height:1;letter-spacing:-.03em}
.jobs-stat>span:last-child{font-size:11px;color:#52616f;white-space:nowrap}
.jobs-stat-green{background:rgba(244,254,249,.92)}.jobs-stat-green .jobs-stat-icon{background:#daf6e9;color:#0b7c59}.jobs-stat-green strong{color:#0b7c59}
.jobs-stat-blue{background:rgba(246,249,255,.93)}.jobs-stat-blue .jobs-stat-icon{background:#e4edff;color:#3567c8}.jobs-stat-blue strong{color:#3567c8}
.jobs-stat-amber{background:rgba(255,251,241,.94)}.jobs-stat-amber .jobs-stat-icon{background:#fff0cd;color:#c97800}.jobs-stat-amber strong{color:#c97800}

.jobs-directory{padding-top:18px;padding-bottom:38px}
.jobs-filter-form{margin-bottom:18px}
.jobs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.job-card{
  position:relative;
  min-width:0;
  min-height:286px;
  display:flex;
  flex-direction:column;
  padding:19px;
  border:1px solid #dfe8e4;
  border-radius:15px;
  background:#fff;
  box-shadow:0 8px 24px rgba(15,23,42,.035);
  overflow:hidden;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.job-card:hover{transform:translateY(-2px);border-color:#b9d6cc;box-shadow:0 14px 32px rgba(15,23,42,.07)}
.job-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.job-id{font-size:10px;font-weight:800;letter-spacing:.13em;color:#0b7457}
.job-positions{display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#e8f6f1;color:#0b6a51;font-size:10px;font-weight:800}
.job-card-main{display:grid;grid-template-columns:minmax(0,1fr) 90px;gap:12px;align-items:end;flex:1}
.job-card-copy{min-width:0}
.job-card h2{margin:0 0 9px;font-size:18px;line-height:1.16;letter-spacing:-.02em;text-transform:uppercase}
.job-employer{display:block;margin-bottom:16px;font-size:11px;color:#27384a}
.job-meta{display:grid;gap:7px;color:#64748b;font-size:10px}
.job-meta span{display:flex;align-items:flex-start;gap:7px;line-height:1.45}
.job-meta i{width:13px;margin-top:1px;color:#0b7c59;text-align:center}
.job-card-art{
  align-self:end;
  justify-self:end;
  width:88px;height:88px;
  display:grid;place-items:center;
  border-radius:24px 24px 8px 24px;
  background:linear-gradient(145deg,#edf9f5,#d9f2e8);
  color:#75c9aa;
  font-size:42px;
  opacity:.72;
}
.job-card:nth-child(3n+2) .job-card-art{background:linear-gradient(145deg,#f0f5ff,#e4edff);color:#94b7ef}
.job-card:nth-child(3n) .job-card-art{background:linear-gradient(145deg,#fff8ea,#fff0cf);color:#e7b55c}
.job-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.job-card-actions .front-btn{min-height:34px;padding:7px 11px;font-size:10px}
.jobs-empty{grid-column:1/-1}
.jobs-pagination{margin-top:22px}

@media(max-width:1180px){
  .jobs-hero-inner{grid-template-columns:1fr;gap:24px}
  .jobs-hero-stats{max-width:760px}
  .jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .jobs-hero{background-position:62% center}
  .jobs-hero-inner{min-height:0;padding-top:28px;padding-bottom:30px}
  .jobs-hero-copy h1{font-size:38px}
  .jobs-hero-copy p{font-size:14px}
  .jobs-hero-stats{grid-template-columns:1fr;gap:9px}
  .jobs-stat{min-height:68px;grid-template-columns:36px auto 1fr;padding:11px 13px}
  .jobs-stat-icon{width:36px;height:36px}
  .jobs-stat strong{font-size:20px}
  .jobs-stat>span:last-child{justify-self:end}
  .jobs-grid{grid-template-columns:1fr;gap:12px}
  .job-card{min-height:0}
}
@media(max-width:420px){
  .job-card-main{grid-template-columns:1fr}
  .job-card-art{position:absolute;right:15px;bottom:68px;width:68px;height:68px;font-size:32px;opacity:.22}
  .job-card-copy{padding-right:15px}
}


/* v2.5 - jobs hero KPI alignment refinements */
.jobs-hero-inner{
  align-items:end!important;
}
.jobs-hero-copy{
  align-self:end!important;
}
.jobs-hero-stats{
  align-self:end!important;
  justify-self:end!important;
  width:min(100%,700px)!important;
}
.jobs-stat{
  height:auto!important;
  min-height:0!important;
  padding:12px 15px!important;
  grid-template-columns:38px auto auto!important;
  grid-template-rows:1fr!important;
  align-items:center!important;
  column-gap:10px!important;
}
.jobs-stat-icon{
  grid-row:auto!important;
  width:38px!important;
  height:38px!important;
}
.jobs-stat strong{
  align-self:center!important;
  font-size:22px!important;
  line-height:1!important;
}
.jobs-stat>span:last-child{
  align-self:center!important;
  justify-self:start!important;
  line-height:1.15!important;
  margin:0!important;
}
@media(max-width:1180px){
  .jobs-hero-inner{align-items:start!important}
  .jobs-hero-copy{align-self:auto!important}
  .jobs-hero-stats{justify-self:start!important;align-self:auto!important}
}
@media(max-width:760px){
  .jobs-stat{
    grid-template-columns:36px auto 1fr!important;
    padding:10px 12px!important;
  }
  .jobs-stat>span:last-child{justify-self:end!important}
}


/* v2.6 - unified front filter drawer */
.front-filter-overlay{
  z-index:1700!important;
}
form.front-filter-drawer{
  box-sizing:border-box!important;
  width:min(430px,92vw)!important;
  max-width:92vw!important;
  overflow:hidden!important;
}
form.front-filter-drawer,
form.front-filter-drawer *,
form.front-filter-drawer *::before,
form.front-filter-drawer *::after{
  box-sizing:border-box!important;
}
.front-filter-drawer-fields{
  width:100%!important;
  max-width:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
.front-filter-drawer-fields>*,
.front-filter-drawer-fields>div,
.front-filter-drawer-fields>label,
.front-filter-drawer-fields .row,
.front-filter-drawer-fields [class*="col-"],
.front-filter-drawer-fields [class^="col-"]{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin-left:0!important;
  margin-right:0!important;
}
.front-filter-drawer-fields .row{
  --bs-gutter-x:0!important;
  --bs-gutter-y:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:15px!important;
}
.front-filter-drawer-fields label{
  display:block!important;
  margin:0!important;
  padding:0!important;
  color:#475569!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
.front-filter-drawer-fields label>span:first-child{
  display:block!important;
  margin:0 0 6px!important;
}
.front-filter-drawer-fields label>div,
.front-filter-drawer-fields .front-filter-search>div{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.front-filter-drawer-fields input:not([type="checkbox"]):not([type="radio"]),
.front-filter-drawer-fields select,
.front-filter-drawer-fields textarea,
.front-filter-drawer-fields .form-control,
.front-filter-drawer-fields .form-select{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:44px!important;
  margin:0!important;
  padding:0 12px!important;
  border:1px solid #d4dfdb!important;
  border-radius:10px!important;
  background-color:#fff!important;
  color:var(--front-ink)!important;
  font-family:inherit!important;
  font-size:13px!important;
  font-weight:500!important;
  line-height:1.2!important;
  text-transform:none!important;
  outline:0!important;
  box-shadow:none!important;
}
.front-filter-drawer-fields select,
.front-filter-drawer-fields .form-select{
  padding-right:36px!important;
}
.front-filter-drawer-fields .front-filter-search input{
  padding-left:38px!important;
}
.front-filter-drawer-fields .front-filter-search i{
  position:absolute!important;
  left:13px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:2!important;
  color:#7b8984!important;
  pointer-events:none!important;
}
.front-filter-drawer-fields input:focus,
.front-filter-drawer-fields select:focus,
.front-filter-drawer-fields textarea:focus{
  border-color:#8bc2ae!important;
  box-shadow:0 0 0 3px rgba(11,93,70,.08)!important;
}
.front-filter-drawer-fields .front-filter-actions,
.front-filter-drawer-fields .filter-actions,
.front-filter-drawer-fields .actions{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  width:100%!important;
  max-width:100%!important;
  margin:2px 0 0!important;
  padding:0!important;
}
.front-filter-drawer-fields .front-btn,
.front-filter-drawer-fields .btn,
.front-filter-drawer-fields button[type="submit"],
.front-filter-drawer-fields input[type="submit"]{
  width:100%!important;
  max-width:100%!important;
  min-height:44px!important;
  margin:0!important;
  justify-content:center!important;
  border-radius:10px!important;
}
.front-filter-drawer-fields .form-check{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.front-filter-drawer-fields .form-check input{
  width:auto!important;
  height:auto!important;
  margin:0!important;
}
.front-filter-drawer-fields .form-check label{
  width:auto!important;
  font-size:12px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  text-transform:none!important;
}
.front-filter-drawer-head{
  flex:0 0 auto!important;
}
@media(max-width:620px){
  form.front-filter-drawer{
    width:min(88vw,390px)!important;
    max-width:88vw!important;
  }
  .front-filter-drawer-fields{
    padding:16px!important;
  }
}


/* v2.7 - education browser */
.education-hero{
  position:relative;
  border-bottom:1px solid var(--front-line);
  background-image:
    linear-gradient(90deg,rgba(248,251,250,.95) 0%,rgba(248,251,250,.88) 35%,rgba(238,246,242,.66) 62%,rgba(223,238,232,.50) 100%),
    var(--front-hero-image);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.education-hero-inner{padding-top:38px;padding-bottom:34px}
.education-hero h1{margin:4px 0 8px;font-size:clamp(38px,4vw,54px);line-height:1;letter-spacing:-.04em}
.education-hero p{max-width:760px;margin:0;color:#52677a;font-size:15px}
.education-browser{padding-top:20px;padding-bottom:42px}
.education-tabs{
  display:flex;
  align-items:center;
  gap:8px;
  border-bottom:1px solid var(--front-line);
  margin-bottom:20px;
}
.education-tabs button{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:0 14px;
  border:0;
  background:transparent;
  color:#526174;
  font:inherit;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
}
.education-tabs button::after{
  content:"";
  position:absolute;
  left:12px;right:12px;bottom:-1px;
  height:2px;
  background:transparent;
}
.education-tabs button.is-active{color:var(--front-green)}
.education-tabs button.is-active::after{background:var(--front-green)}
.education-tabs b{
  display:inline-grid;place-items:center;
  min-width:24px;height:22px;padding:0 7px;
  border-radius:999px;
  background:#eef4f2;
  font-size:10px;
}
.education-list-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.education-list-head h2{margin:2px 0 0;font-size:25px;letter-spacing:-.025em}
.education-list-tools{display:flex;align-items:center;gap:9px}
.education-quick-search{position:relative;width:min(420px,38vw)}
.education-quick-search i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#7d8b87;font-size:12px}
.education-quick-search input,
.education-list-tools select{
  height:42px;
  border:1px solid var(--front-line);
  border-radius:10px;
  background:#fff;
  color:var(--front-ink);
  font:inherit;
  font-size:12px;
  outline:0;
}
.education-quick-search input{width:100%;padding:0 12px 0 36px}
.education-list-tools select{min-width:190px;padding:0 34px 0 11px}
.education-quick-search input:focus,.education-list-tools select:focus{border-color:#8bc2ae;box-shadow:0 0 0 3px rgba(11,93,70,.08)}
.education-table-wrap{overflow:auto;border:1px solid var(--front-line);border-radius:13px;background:#fff}
.education-table{width:100%;border-collapse:collapse;font-size:12px}
.education-table th{
  padding:10px 13px;
  border-bottom:1px solid var(--front-line);
  background:#f8faf9;
  color:#64748b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-align:left;
  white-space:nowrap;
}
.education-table td{padding:12px 13px;border-bottom:1px solid #edf1ef;vertical-align:middle}
.education-table tbody tr:last-child td{border-bottom:0}
.education-table tbody tr:hover{background:#fbfdfc}
.education-table td strong{display:block;color:var(--front-ink);font-size:12px;font-weight:700}
.education-table td small{display:block;margin-top:3px;color:#82908c;font-size:10px}
.education-code{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;background:#edf6f2;color:#0b7055;font-size:10px;font-weight:700;white-space:nowrap}
.education-open-link{min-height:31px;padding:6px 10px;font-size:10px}
.education-empty{padding:28px!important;text-align:center;color:#7a8784}
.education-loading{padding:35px;text-align:center;color:#6f7e7a}
.education-pagination{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:16px}
.education-pagination button{
  min-width:34px;height:34px;padding:0 8px;
  border:1px solid var(--front-line);
  border-radius:8px;
  background:#fff;
  color:#526174;
  font:inherit;font-size:11px;font-weight:700;
  cursor:pointer;
}
.education-pagination button:hover{border-color:#a8cbbf;color:var(--front-green)}
.education-pagination button.is-active{background:var(--front-green);border-color:var(--front-green);color:#fff}
.education-pagination span{padding:0 3px;color:#82908c}

@media(max-width:800px){
  .education-hero{background-position:60% center}
  .education-hero-inner{padding-top:26px;padding-bottom:25px}
  .education-list-head{align-items:stretch;flex-direction:column}
  .education-list-tools{width:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,.55fr)}
  .education-quick-search{width:auto}
  .education-list-tools select{min-width:0;width:100%}
}
@media(max-width:560px){
  .education-tabs{overflow-x:auto}
  .education-tabs button{white-space:nowrap;padding:0 10px}
  .education-list-tools{grid-template-columns:1fr}
  .education-table{min-width:680px}
}


/* v2.8 - education vacancies */
.education-list-tools{flex-wrap:wrap}
.education-list-tools select[data-filter-name="posts"]{min-width:150px}
.education-vacancies{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:34px;
  height:26px;
  padding:0 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.education-vacancies.has-posts{background:#dcf5e9;color:#087553}
.education-vacancies.no-posts{background:#f1f4f3;color:#82908c}
@media(max-width:800px){
  .education-list-tools{grid-template-columns:minmax(0,1fr) minmax(145px,.45fr) minmax(130px,.4fr)}
}
@media(max-width:650px){
  .education-list-tools{grid-template-columns:1fr}
}

/* v2.9 - actual teaching jobs stored in InfoDB */
.education-jobs-table td:nth-child(1){min-width:250px}
.education-jobs-table td:nth-child(2){min-width:260px}
.education-jobs-table td:nth-child(3){min-width:130px}
.education-jobs-table td:nth-child(4),
.education-jobs-table td:nth-child(5),
.education-jobs-table td:nth-child(6),
.education-jobs-table td:nth-child(7){white-space:nowrap}
@media(min-width:1000px){
  .education-tab-panel[data-edu-panel="jobs"] .education-list-tools{max-width:900px;justify-content:flex-end}
  .education-tab-panel[data-edu-panel="jobs"] .education-quick-search{width:min(360px,28vw)}
  .education-tab-panel[data-edu-panel="jobs"] .education-list-tools select{min-width:145px}
}


/* v2.10 - tourism / places directory redesign */
.places-hero{
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--front-line);
  background-image:
    linear-gradient(90deg,rgba(248,251,250,.95) 0%,rgba(248,251,250,.86) 38%,rgba(231,244,238,.66) 64%,rgba(211,235,226,.46) 100%),
    var(--front-hero-image);
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.places-hero-inner{padding-top:38px;padding-bottom:34px}
.places-hero h1{margin:5px 0 10px;font-size:clamp(40px,4vw,56px);line-height:1;letter-spacing:-.045em}
.places-hero p{max-width:760px;margin:0;color:#566b7c;font-size:15px;line-height:1.55}
.places-directory{padding-top:18px;padding-bottom:42px}
.places-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}
.places-category-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.places-filter-btn{
  min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 13px;
  border:1px solid #d5e1dd;border-radius:999px;background:#fff;color:#334155;
  font-size:11px;font-weight:700;text-decoration:none;transition:.17s ease;
}
.places-filter-btn:hover{border-color:#9fc8ba;background:#f5faf8;color:var(--front-green)}
.places-filter-btn.is-active{background:var(--front-green);border-color:var(--front-green);color:#fff}
.places-filter-btn b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#eef4f2;color:#63716d;font-size:9px}
.places-filter-btn.is-active b{background:rgba(255,255,255,.18);color:#fff}
.places-quick-search{position:relative;flex:0 1 410px;min-width:260px;height:40px}
.places-quick-search>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#7d8b87;font-size:12px;pointer-events:none}
.places-quick-search input{width:100%;height:40px;padding:0 42px 0 37px;border:1px solid var(--front-line);border-radius:10px;background:#fff;color:var(--front-ink);font:inherit;font-size:12px;outline:0}
.places-quick-search input:focus{border-color:#8bc2ae;box-shadow:0 0 0 3px rgba(11,93,70,.08)}
.places-quick-search button{position:absolute;right:5px;top:4px;width:32px;height:32px;display:grid;place-items:center;border:0;border-radius:8px;background:transparent;color:#74827d;cursor:pointer}
.places-quick-search button:hover{background:#f1f6f4;color:var(--front-green)}
.places-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.place-directory-card{
  min-width:0;min-height:190px;display:flex;flex-direction:column;padding:17px;
  border:1px solid #dce5e2;border-radius:14px;background:#fff;color:var(--front-ink);
  text-decoration:none;box-shadow:0 6px 18px rgba(15,23,42,.025);transition:.18s ease;
}
.place-directory-card:hover{transform:translateY(-2px);border-color:#b8d5cb;box-shadow:0 12px 28px rgba(15,23,42,.06)}
.place-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}
.place-card-head h3{min-width:0;margin:0;font-size:17px;line-height:1.2;letter-spacing:-.018em}
.place-type-tag{flex:0 0 auto;display:inline-flex;align-items:center;min-height:25px;padding:4px 9px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}
.place-type-tag.tag-nature{background:#e2f6ec;color:#0d7b56}
.place-type-tag.tag-heritage{background:#f2e9ff;color:#7841b0}
.place-type-tag.tag-stay{background:#e8f0ff;color:#315fae}
.place-type-tag.tag-food{background:#fff0db;color:#b66b00}
.place-type-tag.tag-leisure{background:#e6f5f8;color:#167084}
.place-type-tag.tag-trail{background:#edf4df;color:#587318}
.place-type-tag.tag-default{background:#eef3f1;color:#5d6b67}
.place-directory-card p{margin:0 0 11px;color:#718096;font-size:11px;line-height:1.55}
.place-locality{display:flex;align-items:center;gap:6px;margin-top:auto;color:#80908b;font-size:10px;font-weight:600}
.place-locality i{color:#0b7c59;font-size:9px}
.places-pagination{margin-top:20px}
@media(max-width:1180px){.places-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){
  .places-toolbar{align-items:stretch;flex-direction:column}
  .places-quick-search{flex:none;width:100%;min-width:0}
  .places-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .places-hero-inner{padding-top:26px;padding-bottom:25px}
  .places-hero h1{font-size:38px}
  .places-category-filters{gap:6px}
  .places-filter-btn{min-height:35px;padding:0 11px;font-size:10px}
  .places-grid{grid-template-columns:1fr}
  .place-directory-card{min-height:0}
}

/* v3.0 - education public unit profile */
.education-row-action{text-align:right;white-space:nowrap}.education-row-action .education-open-link{min-width:78px;justify-content:center}
.education-unit-page{padding-top:20px;padding-bottom:42px}.education-unit-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:24px}
.education-unit-summary .front-panel{padding:20px}.education-unit-summary h2{margin:3px 0 16px;font-size:22px}
.education-unit-data{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0}.education-unit-data div{padding:10px 0;border-bottom:1px solid #edf1ef}
.education-unit-data dt{margin:0 0 3px;color:#718078;font-size:9px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.education-unit-data dd{margin:0;color:var(--front-ink);font-size:12px;font-weight:600}.education-unit-data a{color:var(--front-green)}
@media(max-width:760px){.education-unit-summary{grid-template-columns:1fr}.education-unit-data{grid-template-columns:1fr}}


/* v3.1 - education unit hero title */
.education-unit-hero .education-hero-inner{
  display:block;
}
.education-unit-hero h1{
  width:50%;
  max-width:50%;
  margin-top:5px;
  font-size:clamp(30px,3vw,44px);
  line-height:1.05;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
.education-unit-hero p{
  width:50%;
  max-width:50%;
}
@media(max-width:900px){
  .education-unit-hero h1,
  .education-unit-hero p{
    width:70%;
    max-width:70%;
  }
}
@media(max-width:620px){
  .education-unit-hero h1,
  .education-unit-hero p{
    width:100%;
    max-width:100%;
  }
  .education-unit-hero h1{
    font-size:32px;
  }
}


/* v3.2 - education unit back button in hero */
.education-unit-hero .education-hero-inner{
  position:relative;
}
.education-unit-back{
  position:absolute;
  right:0;
  bottom:28px;
  min-height:38px;
  gap:7px;
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(6px);
}
@media(max-width:900px){
  .education-unit-back{
    right:0;
    bottom:24px;
  }
}
@media(max-width:620px){
  .education-unit-back{
    position:static;
    display:inline-flex;
    margin-top:18px;
  }
}


/* v3.3 - all business financial indicators in charts */
.financial-charts-panel{padding:20px}
.financial-chart-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:14px;
}
.financial-chart-card{
  min-width:0;
  padding:14px;
  border:1px solid var(--front-line);
  border-radius:12px;
  background:#fff;
}
.financial-chart-card:last-child:nth-child(odd){
  grid-column:1/-1;
}
.financial-chart-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:6px;
}
.financial-chart-title strong{
  color:var(--front-ink);
  font-size:13px;
}
.financial-chart-title span{
  color:#7b8797;
  font-size:10px;
  font-weight:700;
}
.financial-chart-card .front-line-chart{
  min-height:190px;
}
@media(max-width:760px){
  .financial-chart-grid{grid-template-columns:1fr}
  .financial-chart-card:last-child:nth-child(odd){grid-column:auto}
}


/* v3.4 - comparison charts for every table indicator */
.front-compare-bars-all{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.front-compare-bars-all article{
  min-width:0;
}
.compare-bar-row b.is-negative{
  background:#f3ecec;
}
.compare-bar-row b.is-negative i{
  opacity:.6;
}
@media(max-width:1180px){
  .front-compare-bars-all{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .front-compare-bars-all{
    grid-template-columns:1fr;
  }
}


/* v3.7 - locality comparison list */
.locality-index-head{position:relative}
.locality-index-head .locality-compare-hero-link{
  position:absolute;
  right:0;
  bottom:24px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  background:rgba(255,255,255,.88);
  backdrop-filter:blur(6px);
}
.locality-compare-hero-link b{
  display:inline-grid;
  place-items:center;
  min-width:34px;
  height:24px;
  padding:0 7px;
  border-radius:999px;
  background:#eef3f1;
  color:#687771;
  font-size:10px;
}
.locality-compare-hero-link.has-items b{background:#dff4eb;color:#087453}
.locality-directory-card{
  display:flex;
  flex-direction:column;
  color:inherit;
}
.locality-card-main-link{
  display:block;
  flex:1;
  color:inherit;
  text-decoration:none;
}
.locality-card-head-right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-width:0;
  max-width:72%;
  flex-wrap:wrap;
}
.locality-compare-selected{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:24px;
  padding:3px 8px;
  border-radius:999px;
  background:#dff5eb;
  color:#087453;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}
.locality-compare-selected[hidden]{display:none!important}
.locality-card-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:12px;
  padding-top:10px;
  border-top:1px solid var(--front-line);
}
.locality-card-footer .locality-profile-link{
  flex:1 1 auto;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
}
.locality-compare-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex:0 0 auto;
  min-width:96px;
  min-height:34px;
  padding:7px 10px;
  border-radius:9px;
  font:inherit;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
  cursor:pointer;
  transition:.16s ease;
}
.locality-compare-toggle.is-add{
  border:1px solid #a9d2c3;
  background:#edf8f4;
  color:#087453;
}
.locality-compare-toggle.is-add:hover{background:#dff3eb;border-color:#7ebba5}
.locality-compare-toggle.is-remove{
  border:1px solid #e5b0aa;
  background:#fff1ef;
  color:#ad372d;
}
.locality-compare-toggle.is-remove:hover{background:#ffe5e1;border-color:#d78379}
.locality-compare-toggle:disabled{
  border-color:#dde4e1!important;
  background:#f3f5f4!important;
  color:#a0aaa6!important;
  cursor:not-allowed;
  opacity:.8;
}
.locality-directory-card.is-in-comparison{
  border-color:#8ac4af;
  box-shadow:0 0 0 2px rgba(11,117,83,.055);
}
@media(max-width:760px){
  .locality-index-head .locality-compare-hero-link{
    position:static;
    margin-top:16px;
  }
}
@media(max-width:520px){
  .locality-card-footer{
    flex-direction:column;
    align-items:stretch;
  }
  .locality-compare-toggle{
    width:100%;
  }
}


/* v3.8 - locality cards usability refinements */
.locality-card-head-right{
  max-width:none!important;
  flex:0 0 auto;
}
.locality-type-badge{
  max-width:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
  min-width:max-content;
}
.locality-directory-stats{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  margin-top:12px;
}
.locality-directory-stats>span{
  min-width:0;
  padding:8px 9px!important;
  border-radius:9px;
  background:#f7faf9;
}
.locality-directory-stats small{
  font-size:8px!important;
  line-height:1.15;
}
.locality-directory-stats strong{
  margin-top:3px;
  font-size:13px!important;
}
.locality-card-footer{
  align-items:center!important;
}
.locality-card-footer .locality-profile-link,
.locality-card-footer .locality-compare-toggle{
  flex:0 0 auto;
  width:auto!important;
  min-width:128px;
  min-height:36px;
  justify-content:center!important;
}
.locality-card-footer .locality-profile-link{
  margin:0!important;
  padding:7px 11px!important;
  border:1px solid var(--front-line)!important;
}
.locality-compare-toggle.is-compared{
  border:1px solid #9ecab9;
  background:#e1f3ec;
  color:#087453;
  cursor:default;
  opacity:1!important;
}
.locality-compare-toggle.is-compared:disabled{
  border-color:#9ecab9!important;
  background:#e1f3ec!important;
  color:#087453!important;
  opacity:1!important;
}
@media(max-width:420px){
  .locality-directory-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .locality-card-footer{
    flex-direction:column;
    align-items:stretch!important;
  }
  .locality-card-footer .locality-profile-link,
  .locality-card-footer .locality-compare-toggle{
    width:100%!important;
    min-width:0;
  }
}


/* v3.9 - locality card title beside icon */
.locality-card-head{
  justify-content:flex-start!important;
  align-items:center!important;
  gap:12px!important;
}
.locality-card-title{
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.locality-card-title h3{
  margin:0!important;
  font-size:17px!important;
  line-height:1.15;
}
.locality-card-title h3 a{
  color:var(--front-ink);
  text-decoration:none;
}
.locality-card-title h3 a:hover{
  color:var(--front-green);
}
.locality-card-title small{
  display:block;
  margin-top:3px;
  color:#8a9692;
  font-size:9px;
  font-weight:600;
  line-height:1.2;
  text-transform:none;
}
.locality-card-head .locality-compare-selected{
  margin-left:auto;
  flex:0 0 auto;
}


/* v4.0 - institutions use business directory visual language */
.front-institution-directory .front-directory-card{
  min-height:230px;
}
.front-institution-directory .front-directory-type{
  max-width:62%;
}
.front-institution-directory .front-directory-description{
  min-height:34px;
}


/* v4.1 - unified card anatomy across the entire public front */
.front-unified-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.front-unified-grid-4{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.front-unified-card{
  min-width:0;
  min-height:225px;
  display:flex;
  flex-direction:column;
  padding:16px;
  border:1px solid var(--front-line);
  border-radius:15px;
  background:#fff;
  color:var(--front-ink);
  box-shadow:0 1px 2px rgba(15,23,42,.02);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.front-unified-card:hover{
  transform:translateY(-2px);
  border-color:#b9d6cc;
  box-shadow:var(--front-shadow);
}
.front-unified-head{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
.front-unified-icon{
  flex:0 0 36px;
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:var(--front-green-soft);
  color:var(--front-green);
  font-size:13px;
}
.front-unified-title{
  min-width:0;
  flex:1 1 auto;
}
.front-unified-title h3{
  margin:0;
  color:var(--front-ink);
  font-size:16px;
  line-height:1.18;
  letter-spacing:-.015em;
}
.front-unified-title h3 a{
  color:inherit;
  text-decoration:none;
}
.front-unified-title h3 a:hover{color:var(--front-green)}
.front-unified-title small{
  display:block;
  margin-top:3px;
  color:#899691;
  font-size:9px;
  font-weight:600;
  line-height:1.2;
}
.front-unified-description{
  margin:12px 0 0;
  color:#667689;
  font-size:11px;
  line-height:1.45;
}
.front-unified-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:6px;
  margin-top:12px;
}
.front-unified-metrics>span{
  min-width:0;
  padding:8px 9px;
  border-radius:9px;
  background:#f7faf9;
}
.front-unified-metrics small{
  display:block;
  color:#87938f;
  font-size:7.5px;
  font-weight:700;
  line-height:1.15;
  text-transform:uppercase;
}
.front-unified-metrics strong{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:var(--front-ink);
  font-size:12px;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.front-unified-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid var(--front-line);
}
.front-unified-meta{
  min-width:0;
  overflow:hidden;
  color:#7b8884;
  font-size:9px;
  line-height:1.3;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.front-unified-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex-wrap:wrap;
}
.front-unified-footer .front-btn{
  flex:0 0 auto;
  min-height:34px;
  padding:7px 10px;
  font-size:9px;
  white-space:nowrap;
}

/* Normalize older card containers in public pages without touching admin */
.front-body .grid.cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.front-body .grid.cards>.card{
  border-radius:15px;
}

/* Places now use the common structure. */
.place-directory-card.front-unified-card{
  color:var(--front-ink);
  text-decoration:none;
}
.places-grid.front-unified-grid{
  gap:12px;
}

/* Jobs now use the common structure; disable old decorative layout. */
.jobs-grid.front-unified-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.job-card.front-unified-card{
  min-height:225px;
  padding:16px;
}
.job-card.front-unified-card:hover{transform:translateY(-2px)}
.job-card.front-unified-card .job-card-art,
.job-card.front-unified-card .job-card-main,
.job-card.front-unified-card .job-card-top,
.job-card.front-unified-card .job-card-actions{display:none!important}

@media(max-width:1180px){
  .front-unified-grid,
  .front-unified-grid-4,
  .jobs-grid.front-unified-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:680px){
  .front-unified-grid,
  .front-unified-grid-4,
  .jobs-grid.front-unified-grid,
  .front-body .grid.cards{
    grid-template-columns:1fr;
  }
  .front-unified-card{min-height:0}
}
@media(max-width:420px){
  .front-unified-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .front-unified-footer{
    align-items:stretch;
    flex-direction:column;
  }
  .front-unified-footer .front-btn,
  .front-unified-actions,
  .front-unified-actions .front-btn{
    width:100%;
    justify-content:center;
  }
}


/* v4.2 - place and institution profiles aligned to locality profile */
.front-entity-hero .front-locality-title h1{
  max-width:900px;
}
.front-entity-hero .front-locality-title h1 small{
  display:inline-block;
  margin-left:8px;
  color:#71817b;
  font-size:.28em;
  font-weight:700;
  letter-spacing:0;
  vertical-align:middle;
}
.front-entity-kpis{
  grid-template-columns:repeat(6,minmax(0,1fr));
}
.front-entity-kpis>a strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.front-profile-lead{
  color:#536a7c;
  font-size:14px;
  line-height:1.55;
}
.front-profile-prose{
  margin-top:12px;
  color:#526174;
  font-size:12px;
  line-height:1.65;
}
.front-profile-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:16px;
}
.front-entity-section{
  margin-top:16px;
  padding:20px;
}
.front-entity-static{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  width:100%;
  padding:12px 0;
  border-bottom:1px solid var(--front-line);
}
.front-entity-static:last-child{border-bottom:0}
.front-entity-static>span:first-child{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.front-entity-static strong{
  color:var(--front-ink);
  font-size:12px;
}
.front-entity-static small{
  display:block;
  margin-top:3px;
  color:#7f8c87;
  font-size:9px;
}
.front-inner-kpis{
  margin:12px 0 20px;
  padding:0;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.front-inner-kpis>span{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:12px;
  border:1px solid var(--front-line);
  border-radius:11px;
  background:#f8fbfa;
}
.front-inner-kpis small{
  color:#7f8d88;
  font-size:8px;
  font-weight:800;
  text-transform:uppercase;
}
.front-inner-kpis strong{
  color:var(--front-green);
  font-size:17px;
}
.front-subheading{
  margin:22px 0 10px;
  color:var(--front-ink);
  font-size:16px;
}
.institution-service-grid article{
  min-height:135px;
}
.front-mini-actions{
  display:flex;
  gap:8px;
  margin-top:auto;
  padding-top:10px;
}
.front-mini-actions a{
  color:var(--front-green);
  font-size:9px;
  font-weight:800;
}
.institution-procurement-value{
  flex:0 0 auto;
  color:var(--front-green);
  font-size:11px;
  font-weight:800;
  text-align:right;
}
.institution-procurement-value small{
  color:#8a9692;
  font-weight:600;
}
#surse.front-entity-section{
  margin-bottom:36px;
}
@media(max-width:1180px){
  .front-entity-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:720px){
  .front-entity-hero .front-locality-title{
    align-items:flex-start;
    flex-direction:column;
  }
  .front-entity-hero .front-locality-title h1 small{
    display:block;
    margin:5px 0 0;
    font-size:.32em;
  }
  .front-entity-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .front-inner-kpis{grid-template-columns:1fr}
}
@media(max-width:460px){
  .front-entity-kpis{grid-template-columns:1fr 1fr}
  .front-entity-static{
    align-items:flex-start;
    flex-direction:column;
  }
  .institution-procurement-value{text-align:left}
}


/* v4.3 - AJAX quick search for the complete business directory */
.front-quick-search input[type="search"]::-webkit-search-cancel-button,
.front-quick-search input[type="search"]::-webkit-search-decoration{
  -webkit-appearance:none;
  appearance:none;
}
.front-quick-search input[type="search"]::-ms-clear,
.front-quick-search input[type="search"]::-ms-reveal{
  display:none;
  width:0;
  height:0;
}
[data-business-results-host]{
  position:relative;
  min-height:120px;
}
[data-business-results-host].is-loading{
  opacity:.55;
  pointer-events:none;
}
[data-business-results-host].is-loading::after{
  content:"";
  position:absolute;
  top:18px;
  right:18px;
  width:22px;
  height:22px;
  border:2px solid #d6e4df;
  border-top-color:var(--front-green);
  border-radius:50%;
  animation:business-search-spin .7s linear infinite;
}
@keyframes business-search-spin{to{transform:rotate(360deg)}}
.front-pagination-gap{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  color:#8b9692;
}


/* v4.4 - real AJAX tabs on public business profile */
.front-real-tabs{
  display:flex;
  align-items:stretch;
  gap:22px;
  overflow-x:auto;
  scrollbar-width:none;
}
.front-real-tabs::-webkit-scrollbar{display:none}
.front-real-tabs button{
  position:relative;
  flex:0 0 auto;
  appearance:none;
  min-height:54px;
  padding:0 0;
  border:0;
  background:transparent;
  color:#42516a;
  font:inherit;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.front-real-tabs button::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:2px;
  background:transparent;
}
.front-real-tabs button:hover,
.front-real-tabs button.is-active{color:var(--front-green)}
.front-real-tabs button.is-active::after{background:var(--front-green)}
.front-business-tab-panel{
  min-height:330px;
  padding-top:20px;
  padding-bottom:40px;
}
.front-business-tab-panel>.front-panel,
.front-business-tab-panel>[data-business-tab-content]>.front-panel{
  margin:0;
}
.front-business-tab-panel .front-profile-grid{
  margin:0;
}
.front-business-description{
  margin-top:16px!important;
  padding:20px;
}
.business-inline-tab-link{
  appearance:none;
  border:0;
  background:transparent;
  cursor:pointer;
}
.business-tab-loading{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:240px;
  color:#687972;
  font-size:11px;
}
.business-tab-loading span{
  width:22px;
  height:22px;
  border:2px solid #dce7e3;
  border-top-color:var(--front-green);
  border-radius:50%;
  animation:business-tab-spin .7s linear infinite;
}
@keyframes business-tab-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){
  .front-real-tabs{gap:18px}
  .front-real-tabs button{min-height:48px}
  .front-business-tab-panel{padding-top:14px}
}


/* v4.7 - business profile real tabs with server-loaded data */
.business-static-tab-pane{
  display:none;
  margin-top:20px;
}
.business-static-tab-pane.is-active{
  display:block;
}
.business-static-tab-pane[hidden]{
  display:none!important;
}
#prezentare.business-static-tab-pane.is-active{
  display:grid;
}
.front-real-tabs{
  display:flex;
  align-items:stretch;
  gap:22px;
  overflow-x:auto;
  scrollbar-width:none;
}
.front-real-tabs::-webkit-scrollbar{display:none}
.front-real-tabs button{
  position:relative;
  flex:0 0 auto;
  appearance:none;
  min-height:54px;
  padding:0;
  border:0;
  background:transparent;
  color:#42516a;
  font:inherit;
  font-size:11px;
  font-weight:700;
  cursor:pointer;
}
.front-real-tabs button::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:0;
  height:2px;
  background:transparent;
}
.front-real-tabs button:hover,
.front-real-tabs button.is-active{color:var(--front-green)}
.front-real-tabs button.is-active::after{background:var(--front-green)}

/* InfoDB front theme v3.60 — charcoal / yellow */
:root{
 --front-green:#f5c518;
 --front-green-2:#d9aa00;
 --front-green-soft:#fff8d6;
 --front-ink:#151515;
 --front-text:#2b2b2b;
 --front-muted:#686868;
 --front-line:#e4ddbd;
 --front-bg:#f7f7f3;
 --front-card:#fff;
 --front-blue:#242424;
 --front-orange:#b88600;
 --front-purple:#5b5b5b;
 --front-red:#be123c;
}
.front-body{background:#f7f7f3;color:#151515}
.front-header{background:rgba(255,255,255,.97);border-color:#e4ddbd}
.front-logo-image{filter:grayscale(1) contrast(1.35) brightness(.38)}
.front-menu-toggle{background:#1c1c1c;color:#f5c518}
.front-account-placeholder{color:#1c1c1c;border-color:#d8cf9d}
.front-nav>a:hover,.front-nav>a.is-active,.front-nav-more>button:hover,.front-text-link,.front-section-heading>a{color:#9b7900}
.front-nav>a.is-active:after{background:#f5c518}
.front-nav-dropdown a:hover,.front-nav>a.is-active{background:#fff8d6;color:#151515}
.front-hero{background-image:linear-gradient(90deg,rgba(250,249,242,.96) 0%,rgba(250,249,242,.90) 36%,rgba(255,248,214,.72) 65%,rgba(245,197,24,.18) 100%),var(--front-hero-image)}
.front-hero:after{background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(245,197,24,.08)),radial-gradient(circle at 72% 28%,rgba(255,255,255,.50),transparent 24%)}
.front-hero h1{color:#151515}
.front-eyebrow{color:#8b6c00}
.front-search{border-color:#ded5a6}.front-search button,.front-btn-primary{background:#1c1c1c;color:#f5c518}.front-search button:hover,.front-btn-primary:hover{background:#000;color:#ffd84d}
.front-btn-outline{border-color:#d4bd55;color:#151515}.front-btn-soft{background:#fff8d6;color:#151515}
.front-official-pill,.source-mini-icon{background:#fff8d6;color:#151515}
.front-kpi-icon,.front-big-stat strong,.front-entity-list i,.front-job-list b,.front-chip-list>a strong,.front-table th a,.front-source-strip article>span,.front-source-strip article>a{color:#8b6c00}
.front-kpi-turnover strong,.front-kpi-profit strong,.front-kpi-businesses strong,.front-kpi-jobs strong,.front-kpi-schools strong,.front-kpi-tourism strong{color:#151515}
.front-kpi:hover,.front-locality-cloud a:hover{border-color:#e0bd27;box-shadow:0 7px 20px rgba(30,30,30,.08)}
.front-locality-cloud{background:linear-gradient(135deg,#fffdf3,#fff8d6)}
.front-locality-cloud:before{background:radial-gradient(circle,rgba(36,36,36,.07) 1px,transparent 1.5px);background-size:20px 20px}
.locality-dot{background:#f5c518}
.compare-bar-row b i,.legend-green{background:#f5c518}
.front-footer{background:#181818;color:#eee}
.front-logo-footer .front-logo-image{filter:grayscale(1) brightness(4)}
.front-footer p{color:#bdbdbd}.front-footer-grid>div>a{color:#d2d2d2}.front-footer-bottom{color:#999}
.front-nav-overlay{background:rgba(0,0,0,.42)}
.front-filter-drawer,.front-nav{--front-green:#f5c518;--front-green-soft:#fff8d6}
/* neutralize legacy green literals still used by individual front components */
.front-body [style*="#087453"],.front-body [style*="#0b7c59"],.front-body [style*="#0b7657"]{color:#151515!important}

/* v3.61 — Guvernanța companiilor de stat */
.front-state-company-pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;background:#f5c518;color:#151515;font-weight:800;font-size:.82rem;border:1px solid #d8a900}
.front-state-company-box{margin-top:18px;padding:18px;border:1px solid #e1d7a0;border-radius:16px;background:#fff9dc}
.front-state-company-title{display:flex;align-items:center;gap:12px;margin-bottom:10px}.front-state-company-title>i{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#171717;color:#f5c518}.front-state-company-title span{display:flex;flex-direction:column;gap:2px}.front-state-company-title strong{color:#171717}.front-state-company-title small{color:#6b6655}
/* InfoDB v3.64 - Noutati */
.front-news-panel .front-update-list a,.news-full-list a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;text-decoration:none;color:inherit}
.front-news-panel .front-update-list a span,.news-full-list a span{display:flex;flex-direction:column;gap:3px}.front-news-panel .front-update-list a small,.news-full-list a small{color:var(--muted);font-size:.78rem;font-weight:500}.news-full-list{max-width:980px;margin:0 auto 40px}.news-full-list a{padding:18px 4px;border-bottom:1px solid var(--line)}
