.sc-db-section{
  --sc-db-ratio-w:1;
  --sc-db-ratio-h:1;
  --sc-db-tile-gap:12px;
  --sc-db-mobile-label-size:12px;
  background:#ffffff!important;
  width:100%;
  padding:18px 0;
}
.sc-db-section,
.sc-db-section *{box-sizing:border-box}
.sc-db-inner{max-width:1500px;margin:0 auto;padding:0 12px;background:#fff!important;border-radius:22px}
.sc-db-section-bar{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:0 0 14px}
.sc-db-section-title{margin:0;font:700 28px/1.2 Arial,Helvetica,sans-serif;color:#0f1111}
.sc-db-view-all{font:500 14px/1.3 Arial,Helvetica,sans-serif;color:#007185;text-decoration:none;cursor:pointer}
.sc-db-view-all:hover,.sc-db-view-all:focus{color:#007185;text-decoration:underline}
.sc-db-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch;background:#fff!important}
.sc-db-card{display:flex;flex-direction:column;min-height:430px;height:100%;padding:18px;background:#fff!important;border:1px solid #111!important;border-radius:22px!important;overflow:hidden;-webkit-mask-image:-webkit-radial-gradient(white, black)}
.sc-db-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;min-height:26px}
.sc-db-card-head-link,.sc-db-card-head-link:hover,.sc-db-card-head-link:focus,.sc-db-card-head-link:active{text-decoration:none!important;color:#0f1111!important;flex:1 1 auto;min-width:0}
.sc-db-card-title{margin:0!important;font:700 21px/26px Arial,Helvetica,sans-serif;color:#0f1111;display:block}
.sc-db-head-arrow{position:static!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:26px!important;height:26px!important;min-width:26px!important;min-height:26px!important;border:0!important;background:transparent!important;color:#0f1111!important;cursor:pointer;padding:0!important;margin:0!important;flex:0 0 26px!important;border-radius:0!important;box-shadow:none!important;transform:none!important;align-self:center!important}
.sc-db-head-arrow span{display:block!important;width:9px!important;height:9px!important;font-size:0!important;line-height:0!important;border-top:2px solid currentColor!important;border-right:2px solid currentColor!important;transform:rotate(45deg)!important;transform-origin:center!important;margin-left:-3px!important}
.sc-db-head-arrow:hover,.sc-db-head-arrow:focus,.sc-db-head-arrow:active{background:transparent!important;color:#0f1111!important;outline:none;box-shadow:none}
.sc-db-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sc-db-tile-gap);margin-top:2px}
.sc-db-tile,.sc-db-tile:hover,.sc-db-tile:focus,.sc-db-tile:active{text-decoration:none!important;color:#0f1111!important;display:block}
.sc-db-tile-media{display:block;position:relative;width:100%;aspect-ratio:calc(var(--sc-db-ratio-w) / var(--sc-db-ratio-h));background:#ffffff!important;overflow:hidden;border-radius:14px!important;border:1px solid #ececec}
.sc-db-tile-media img{display:block;width:100%;height:100%;object-fit:cover;border-radius:14px!important}
.sc-db-tile-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:8px;text-align:center;font:700 13px/1.2 Arial,Helvetica,sans-serif;color:#111;background:#ffffff!important;border-radius:14px!important}
.sc-db-tile-label{display:block;margin-top:6px;font:400 12px/1.3 Arial,Helvetica,sans-serif;color:#0f1111}
.sc-db-expand{margin-top:14px;border-top:1px solid #e7e7e7;padding-top:12px;background:#fff!important}
.sc-db-expand-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:8px}
.sc-db-expand-list a,.sc-db-expand-list a:hover,.sc-db-expand-list a:focus,.sc-db-expand-list a:active{color:#0f1111!important;text-decoration:none!important;font:400 13px/1.3 Arial,Helvetica,sans-serif}
.sc-db-card.is-open .sc-db-head-arrow{transform:none!important}.sc-db-card.is-open .sc-db-head-arrow span{transform:rotate(135deg)!important;margin-left:0!important;margin-top:-4px!important}

@media (max-width:1024px){
  .sc-db-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sc-db-card{min-height:400px}
}

@media (max-width:767px){
  .sc-db-section{padding:12px 0}
  .sc-db-inner{padding:0 8px;border-radius:18px}
  .sc-db-section-bar{margin-bottom:10px;gap:10px;align-items:center}
  .sc-db-section-title{font-size:22px}
  .sc-db-view-all{font-size:12px}
  .sc-db-grid{grid-template-columns:1fr;gap:12px}
  .sc-db-card{min-height:auto;padding:14px;border-radius:20px!important}
  .sc-db-card-title{font-size:20px}
  .sc-db-tile-label{font-size:var(--sc-db-mobile-label-size)}
}

/* v1.5 exact heading/arrow line lock */
.sc-db-card .sc-db-card-head{display:flex!important;align-items:center!important;min-height:26px!important;}
.sc-db-card .sc-db-card-title{line-height:26px!important;margin:0!important;}
.sc-db-card .sc-db-head-arrow{top:auto!important;right:auto!important;align-self:center!important;transform:none!important;}

.sc-db-expand-title{font:700 13px/1.3 Arial,Helvetica,sans-serif;color:#0f1111;margin:0 0 8px}

/* v1.7 arrow interaction hardening */
.sc-db-head-arrow{pointer-events:auto!important;z-index:5!important;position:relative!important;}
.sc-db-expand[hidden]{display:none!important;}
.sc-db-card.is-open .sc-db-expand{display:block!important;}




/* ==========================================================================
   v2.0 TRUE RESPONSIVE DEPARTMENT GRID
   Uses the actual Elementor/widget width, so portrait screens such as
   1080 x 1920 also adapt correctly.
   ========================================================================== */

.sc-db-section{
  container-type:inline-size;
  container-name:scdb;
}

.sc-db-inner{
  width:100%;
  max-width:1600px;
  margin-inline:auto;
}

.sc-db-grid{
  width:100%;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(5px,.55vw,10px)!important;
  justify-content:stretch!important;
  align-items:stretch!important;
}

.sc-db-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:387 / 551;
  padding:clamp(13px,1.15vw,18px)!important;
  border-radius:15px!important;
}

.sc-db-card-title{
  font-size:clamp(17px,1.35vw,21px)!important;
  line-height:1.18!important;
}

.sc-db-tiles{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:clamp(8px,.8vw,12px)!important;
  min-width:0;
}

.sc-db-tile{
  min-width:0;
}

.sc-db-tile-media{
  width:100%!important;
  height:auto!important;
  aspect-ratio:1 / 1!important;
  border-radius:12px!important;
}

.sc-db-tile-media img,
.sc-db-tile-placeholder{
  width:100%!important;
  height:100%!important;
  border-radius:12px!important;
}

.sc-db-tile-label{
  font-size:clamp(11px,.82vw,13px)!important;
  line-height:1.25!important;
  overflow-wrap:anywhere;
}

/* 1080px portrait and similar widget/container widths -> 3 columns */
@container scdb (max-width: 1279px){
  .sc-db-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }

  .sc-db-card{
    aspect-ratio:387 / 551;
  }
}

/* Tablet / narrower portrait widths -> 2 columns */
@container scdb (max-width: 899px){
  .sc-db-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  .sc-db-card{
    aspect-ratio:auto;
    min-height:0!important;
  }
}

/* Mobile -> 1 column */
@container scdb (max-width: 559px){
  .sc-db-inner{
    padding-left:8px!important;
    padding-right:8px!important;
  }

  .sc-db-grid{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .sc-db-card{
    aspect-ratio:auto!important;
    min-height:0!important;
    padding:14px!important;
  }

  .sc-db-card-title{
    font-size:20px!important;
  }

  .sc-db-tile-label{
    font-size:var(--sc-db-mobile-label-size)!important;
  }
}

/* Media-query fallbacks for older browsers without container queries. */
@supports not (container-type:inline-size){
  @media (max-width:1279px){
    .sc-db-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  }

  @media (max-width:899px){
    .sc-db-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .sc-db-card{aspect-ratio:auto!important;}
  }

  @media (max-width:559px){
    .sc-db-grid{grid-template-columns:1fr!important;}
    .sc-db-card{aspect-ratio:auto!important;}
  }
}
