/* Gallery V31.0 — scoped public gallery refinement */
.gallery244{padding:28px 0 58px!important}
.gallery244-hero{min-height:220px;grid-template-columns:minmax(0,1fr) auto!important;padding:32px 34px!important;border-radius:22px!important}
.gallery244-kicker{font-size:11px!important;color:#d7ebff!important}
.gallery244-hero h1{margin:7px 0 8px!important;font-size:34px!important;font-weight:900!important}
.gallery244-hero p{max-width:690px;color:#f1f7ff!important;font-size:13px!important;line-height:1.9!important}
.gallery310-hero__stats{grid-template-columns:repeat(3,112px)!important;gap:10px!important}
.gallery310-hero__stats article{min-height:118px!important;padding:12px 8px}
.gallery310-stat-icon{width:30px;height:30px;display:grid;place-items:center;margin-bottom:4px;border-radius:9px;background:rgba(255,255,255,.12);color:#fff;font-size:13px}
.gallery310-hero__stats strong{color:#fff;font-size:25px!important;line-height:1.1}
.gallery310-hero__stats small{color:#f0f7ff!important;font-size:9px!important;font-weight:800}
.gallery244-toolbar{grid-template-columns:minmax(300px,1fr) 210px 190px auto auto!important;margin:16px 0 20px!important;padding:13px!important;border-radius:16px!important}
.gallery244-search input,.gallery244-select select{min-height:46px!important;font-size:11px!important}
.gallery244-search-btn,.gallery244-reset{min-height:46px!important;font-size:10px!important}
.gallery310-results-head{max-width:none!important;margin:0 0 16px!important;padding:0 3px;align-items:center!important}
.gallery310-results-head span{font-size:10px!important}
.gallery310-results-head h2{margin-top:4px!important;font-size:25px!important}
.gallery310-results-head p{max-width:680px;margin:5px 0 0;color:#73869a;font-size:10px;line-height:1.8}
.gallery310-results-head>small{padding:7px 11px;border-radius:999px;background:#eaf5ff;color:#496b88!important;font-size:9px!important;white-space:nowrap}
.gallery310-results-head>small strong{font-size:12px}
.gallery310-grid{gap:18px!important}
.gallery310-grid.gallery310-count-1{grid-template-columns:minmax(0,760px)!important;justify-content:center}
.gallery310-grid.gallery310-count-2{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:920px;margin-inline:auto}
.gallery310-grid.gallery310-count-3{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.gallery310-grid.gallery310-count-1 .gallery244-card__media{height:370px!important}
.gallery310-grid.gallery310-count-2 .gallery244-card__media{height:285px!important}
.gallery244-card{border-radius:18px!important}
.gallery244-card__media{height:250px}
.gallery244-card__body{padding:18px 19px 16px!important}
.gallery244-card__body>small{font-size:9px!important}
.gallery244-card__body h3{font-size:18px!important;font-weight:900!important}
.gallery244-card__body p{min-height:0!important;color:#657b90!important;font-size:10.5px!important;line-height:1.85!important}
.gallery244-card__footer{margin-top:14px!important}
.gallery244-card__footer>span{font-size:8.5px!important}
.gallery244-card__footer a,.gallery244-card__footer button{font-size:9.5px!important}
.gallery244-type,.gallery244-featured{min-height:29px!important;font-size:9px!important}
@media(max-width:1050px){
.gallery244-hero{grid-template-columns:1fr!important}
.gallery310-hero__stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.gallery244-toolbar{grid-template-columns:minmax(0,1fr) 1fr 1fr auto!important}
.gallery244-reset{grid-column:1/-1}
}
@media(max-width:760px){
.gallery244-hero{padding:24px 20px!important}
.gallery244-hero h1{font-size:28px!important}
.gallery244-hero p{font-size:11px!important}
.gallery310-hero__stats{grid-template-columns:repeat(3,1fr)!important}
.gallery310-hero__stats article{min-height:96px!important}
.gallery244-toolbar{grid-template-columns:1fr!important}
.gallery310-results-head{align-items:flex-start!important;flex-direction:column}
.gallery310-grid.gallery310-count-1,.gallery310-grid.gallery310-count-2,.gallery310-grid.gallery310-count-3{grid-template-columns:1fr!important;max-width:none}
.gallery310-grid.gallery310-count-1 .gallery244-card__media,.gallery310-grid.gallery310-count-2 .gallery244-card__media,.gallery244-card__media{height:245px!important}
}
@media(max-width:480px){
.gallery310-hero__stats{gap:6px!important}
.gallery310-hero__stats article{padding:9px 4px}
.gallery310-hero__stats strong{font-size:21px!important}
.gallery310-hero__stats small{font-size:8px!important}
}

/* =========================================================
   V31.1 — Single gallery item horizontal feature card
   Applies only when the filtered result set has one item.
   ========================================================= */

.gallery310-grid.gallery310-count-1{
  grid-template-columns:minmax(0,960px) !important;
  max-width:960px;
  margin-inline:auto;
}

.gallery311-single-card{
  display:grid !important;
  grid-template-columns:minmax(0,1.35fr) minmax(290px,.65fr) !important;
  min-height:340px;
  overflow:hidden;
}

.gallery311-single-card .gallery244-card__media{
  height:auto !important;
  min-height:340px !important;
}

.gallery311-single-card .gallery244-card__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 30px !important;
}

.gallery311-single-card .gallery244-card__body>small{
  font-size:10px !important;
}

.gallery311-single-card .gallery244-card__body h3{
  margin-top:7px !important;
  font-size:24px !important;
  line-height:1.5 !important;
}

.gallery311-single-card .gallery244-card__body p{
  margin-top:9px !important;
  font-size:12px !important;
  line-height:1.9 !important;
}

.gallery311-single-card .gallery244-card__footer{
  margin-top:20px !important;
  padding-top:16px;
  border-top:1px solid #e7eef4;
}

.gallery311-single-card .gallery244-card__footer a,
.gallery311-single-card .gallery244-card__footer button{
  font-size:10.5px !important;
}

@media(max-width:820px){
  .gallery311-single-card{
    grid-template-columns:1fr !important;
  }

  .gallery311-single-card .gallery244-card__media{
    min-height:260px !important;
  }

  .gallery311-single-card .gallery244-card__body{
    padding:22px 20px !important;
  }

  .gallery311-single-card .gallery244-card__body h3{
    font-size:21px !important;
  }
}


/* =========================================================
   V31.2 — True horizontal layout for one gallery result
   ========================================================= */
@media (min-width: 821px) {
  .gallery310-grid.gallery312-single-layout {
    display: block !important;
    width: 100% !important;
    max-width: 1080px !important;
    margin-inline: auto !important;
  }

  .gallery312-single-layout > .gallery244-card,
  .gallery312-single-layout > .gallery311-single-card {
    display: grid !important;
    grid-template-columns: minmax(0, 64%) minmax(0, 36%) !important;
    grid-template-rows: 1fr !important;
    width: 100% !important;
    min-height: 350px !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }

  .gallery312-single-layout > .gallery244-card > .gallery244-card__media,
  .gallery312-single-layout > .gallery311-single-card > .gallery244-card__media {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 350px !important;
    border-radius: 0 !important;
  }

  .gallery312-single-layout > .gallery244-card > .gallery244-card__media img,
  .gallery312-single-layout > .gallery311-single-card > .gallery244-card__media img {
    width: 100% !important;
    height: 100% !important;
    min-height: 350px !important;
    object-fit: cover !important;
  }

  .gallery312-single-layout > .gallery244-card > .gallery244-card__body,
  .gallery312-single-layout > .gallery311-single-card > .gallery244-card__body {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    padding: 34px 30px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: stretch !important;
    text-align: right !important;
  }

  .gallery312-single-layout .gallery244-card__body h3 {
    font-size: 25px !important;
    margin: 8px 0 7px !important;
  }

  .gallery312-single-layout .gallery244-card__body p {
    font-size: 12px !important;
    line-height: 1.95 !important;
  }

  .gallery312-single-layout .gallery244-card__footer {
    margin-top: 22px !important;
  }
}

@media (max-width: 820px) {
  .gallery310-grid.gallery312-single-layout {
    display: grid !important;
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }

  .gallery312-single-layout > .gallery244-card,
  .gallery312-single-layout > .gallery311-single-card {
    display: block !important;
    min-height: 0 !important;
  }
}
