/* HIBEST Elementor API Bridge v1.1 — scoped catalog layout. */
.hibest-catalog-page,.hibest-catalog-page * {box-sizing:border-box}
/* Elementor boxed container defaults constrained the entire page in v1. Force a true full-viewport section, while
   constraining each section's inner content to 1200px. This is scoped to this imported layout. */
.elementor .hibest-catalog-page.e-con,
.hibest-catalog-page.e-con {
  --width:100vw;--content-width:100vw;
  position:relative!important;left:50%;transform:translateX(-50%);
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  width:100vw!important;max-width:none!important;min-width:0!important;
  padding:0!important;margin:0!important;gap:0!important;overflow:hidden;
  color:#24334a;
}
.hibest-catalog-page > .e-con,
.hibest-catalog-page > .elementor-element {
  --width:100%;--content-width:100%;
  display:flex;flex-direction:column;align-items:stretch;
  width:100%!important;max-width:none!important;min-width:0!important;
  margin:0!important;gap:0!important;
}
.hibest-catalog-page .hibest-shell.e-con,
.hibest-catalog-page .hibest-shell {
  --width:1200px;
  display:flex;flex-direction:column;align-items:stretch;
  width:calc(100% - 48px)!important;max-width:1200px!important;min-width:0;
  margin-inline:auto!important;padding:0!important;gap:0;
}
/* Hero */
.hibest-catalog-page .hibest-hero{background:linear-gradient(108deg,rgba(3,36,76,.92),rgba(5,65,111,.70)),linear-gradient(135deg,#163e65 0%,#0b507f 48%,#123350 100%);padding:70px 0 76px!important;min-height:315px;justify-content:center}
.hibest-catalog-page .hibest-hero .elementor-heading-title,.hibest-catalog-page .hibest-hero p{color:#fff!important}
.hibest-catalog-page .hibest-hero .elementor-heading-title{font-size:42px!important;line-height:1.18;font-weight:750;letter-spacing:-.5px;margin:14px 0 9px}
.hibest-catalog-page .hibest-hero p{font-size:14px;line-height:1.7;opacity:.91;max-width:700px;margin:0}
.hibest-catalog-page .hibest-hero .elementor-widget-text-editor:first-child p{font-size:12px;opacity:.8;margin-bottom:7px}
/* Filters */
.hibest-catalog-page .hibest-filter-strip{background:#fff;border-bottom:1px solid #e2e9f1;padding:18px 0!important}
.hibest-catalog-filters{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
.hibest-catalog-filters a.hibest-filter{display:inline-flex;align-items:center;min-height:34px;padding:7px 13px;background:#f6f9fd;border:1px solid #e3ebf5;border-radius:4px;text-decoration:none;font-size:12px;font-weight:600;color:#104276;line-height:1.3;transition:.2s}
.hibest-catalog-filters a.hibest-filter.is-active,.hibest-catalog-filters a.hibest-filter:hover{background:#064d9d;color:#fff;border-color:#064d9d}
/* Product listing */
.hibest-catalog-page .hibest-main-products,.hibest-catalog-page .hibest-hot-section{background:#eff4fa;padding:52px 0 62px!important}
.hibest-catalog-page .hibest-hot-section{background:#f8fafc}
.hibest-catalog-page .hibest-main-products .elementor-heading-title,.hibest-catalog-page .hibest-hot-section .elementor-heading-title{font-size:28px!important;line-height:1.25;font-weight:750;color:#1a2637;margin:0 0 10px}
.hibest-catalog-page .hibest-main-products p,.hibest-catalog-page .hibest-hot-section p{font-size:14px;line-height:1.75;color:#61738e;margin:0 0 26px}
.hibest-products-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;width:100%;max-width:100%}
.hibest-product-card{display:flex;flex-direction:column;height:100%;min-width:0;overflow:hidden;background:#fff;border:1px solid #e8edf4;border-radius:5px;box-shadow:0 3px 14px rgba(15,42,73,.035)}
.hibest-product-thumb{display:block;aspect-ratio:1.55/1;overflow:hidden;background:#e4ecf5}
.hibest-product-thumb img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.hibest-product-thumb:hover img{transform:scale(1.04)}
.hibest-card-image-placeholder{display:flex;justify-content:center;align-items:center;width:100%;height:100%;background:linear-gradient(110deg,#a9c1db,#4674a6);color:#fff;font-size:26px;font-weight:800}
.hibest-product-card-body{display:flex;flex:1;flex-direction:column;gap:10px;padding:17px 18px 19px}
.hibest-product-card-body h3{font-size:17px;line-height:1.4;font-weight:700;min-height:48px;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hibest-product-card-body h3 a{color:#1a2d46;text-decoration:none}
.hibest-product-card-body p{font-size:13px!important;line-height:1.65!important;min-height:63px;margin:0 0 8px!important;color:#697c94!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hibest-card-cta{display:inline-block;align-self:flex-start;margin-top:auto;padding:9px 16px;border-radius:3px;background:#0b4e97;color:#fff!important;font-weight:650;font-size:12px;line-height:1.4;text-decoration:none!important}
.hibest-card-cta:hover{background:#073970}
.hibest-catalog-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:28px 0 0}
.hibest-page-link{min-width:34px;text-align:center;padding:8px 11px;background:#fff;border:1px solid #dce5f2;border-radius:3px;color:#194578;text-decoration:none}
.hibest-page-link.is-active{background:#064d9e;color:#fff}
.hibest-empty-products{padding:22px;background:#fff;border:1px solid #dce7f1;border-radius:5px}
/* Competencies — v1 had viewport-relative padding on BOTH sides and squeezed text into a vertical column. */
.hibest-catalog-page .hibest-competence.e-con,
.hibest-catalog-page .hibest-competence{
  --width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  align-items:stretch!important;gap:0!important;background:#073f8a;color:#fff;
  min-height:350px;
}
.hibest-catalog-page .hibest-competence > .e-con,
.hibest-catalog-page .hibest-competence > .elementor-element{
  --width:auto;min-width:0!important;width:auto!important;max-width:100%!important;margin:0!important;
  flex:initial!important;align-self:stretch!important;
}
.hibest-catalog-page .hibest-competence-text{display:flex;flex-direction:column;align-items:flex-start;padding:52px clamp(26px,6vw,90px)!important;background:#073f8a;gap:0!important}
.hibest-catalog-page .hibest-competence-text .elementor-heading-title{font-size:32px!important;line-height:1.22;max-width:420px;color:#fff!important}
.hibest-catalog-page .hibest-competence-text p{font-size:14px;line-height:1.8;max-width:550px;color:#fff!important;opacity:.88}
.hibest-catalog-page .hibest-competence-text .elementor-button{background:#fff;color:#084484;border-radius:3px;padding:12px 22px}
.hibest-catalog-page .hibest-competence-visual{display:flex;justify-content:center;align-items:center;padding:38px!important;min-height:350px;background:linear-gradient(150deg,#3277a7,#072e5a)}
.hibest-catalog-page .hibest-competence-visual .elementor-heading-title{font-size:30px!important;line-height:1.3;color:#dbeeff!important;max-width:420px;text-align:center;opacity:.85}
/* Inquiry */
.hibest-catalog-page .hibest-inquiry{padding:60px 0 75px!important;background:#06428c;color:#fff;text-align:center}
.hibest-catalog-page .hibest-inquiry .elementor-heading-title{font-size:31px!important;color:#fff!important;margin:0 0 10px}
.hibest-catalog-page .hibest-inquiry p{font-size:14px;color:#eef5ff!important;opacity:.9}
.hibest-catalog-page .hibest-inquiry .elementor-form{max-width:780px;margin:25px auto 0;text-align:left}
.hibest-catalog-page .hibest-inquiry .elementor-field-group input,.hibest-catalog-page .hibest-inquiry .elementor-field-group textarea{width:100%;background:#fff;color:#22354c;border-radius:3px;padding:12px 14px;border:1px solid #d9e6f7}
.hibest-catalog-page .hibest-inquiry .elementor-button{background:#063068;color:#fff;border-radius:3px}
.hibest-catalog-page .hibest-inquiry .elementor-button:hover{background:#021f4b}
@media(max-width:1024px){
  .hibest-products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
  .hibest-catalog-page .hibest-competence-text{padding:40px 32px!important}
  .hibest-catalog-page .hibest-competence-text .elementor-heading-title{font-size:27px!important}
}
@media(max-width:767px){
  .hibest-catalog-page .hibest-shell.e-con,.hibest-catalog-page .hibest-shell{width:calc(100% - 32px)!important}
  .hibest-catalog-page .hibest-hero{padding:54px 0!important;min-height:240px}
  .hibest-catalog-page .hibest-hero .elementor-heading-title{font-size:32px!important}
  .hibest-catalog-page .hibest-filter-strip{padding:12px 0!important}
  .hibest-catalog-filters{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding-bottom:4px}
  .hibest-catalog-filters a.hibest-filter{flex:none;white-space:nowrap}
  .hibest-catalog-page .hibest-main-products,.hibest-catalog-page .hibest-hot-section{padding:37px 0 44px!important}
  .hibest-products-grid{grid-template-columns:1fr;gap:17px}
  .hibest-catalog-page .hibest-competence{grid-template-columns:1fr!important}
  .hibest-catalog-page .hibest-competence-text{padding:38px 22px!important}
  .hibest-catalog-page .hibest-competence-visual{min-height:210px}
  .hibest-catalog-page .hibest-inquiry{padding:40px 0 55px!important}
}
