/* Shelby Projects landing/category patterns v3 — all rules intentionally scoped. */
.glbs-shelby-projects-v3 {
  --glbs-projects-v3-charcoal: #252727;
  --glbs-projects-v3-gold: #b4873f;
  --glbs-projects-v3-panel: #f8f7f4;
  --glbs-projects-v3-border: #dedad3;
  --glbs-projects-v3-white: #ffffff;
  background: var(--glbs-projects-v3-white);
  color: var(--glbs-projects-v3-charcoal);
  overflow: clip;
  font-family: var(--global-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif);
}

.glbs-shelby-projects-v3,
.glbs-shelby-projects-v3 * { box-sizing: border-box; }

.glbs-shelby-projects-v3 h1,
.glbs-shelby-projects-v3 h2,
.glbs-shelby-projects-v3 h3,
.glbs-shelby-projects-v3 h4 {
  color: var(--glbs-projects-v3-charcoal) !important;
  font-family: var(--global-body-font-family, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
  font-style: normal !important;
}

.glbs-shelby-projects-v3-wrap {
  width: min(calc(100% - 72px), 1120px) !important;
  max-width: 1120px !important;
  margin: 44px auto 0 !important;
}

.glbs-shelby-projects-v3-hero {
  position: relative;
  min-height: 540px;
  overflow: hidden;
  background: #eeeae3;
}

.glbs-shelby-projects-v3-hero-media {
  position: absolute;
  inset: 0;
  width: 100%;
  max-width: none !important;
  min-height: 540px;
  margin: 0 !important;
  border: 0 !important;
}

.glbs-shelby-projects-v3-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(255,255,255,.98) 0%, rgba(255,255,255,.87) 31%, rgba(255,255,255,.22) 62%, rgba(255,255,255,0) 100%);
  pointer-events: none;
}

.glbs-shelby-projects-v3-hero-media.wp-block-image,
.glbs-shelby-projects-v3-hero-media figure { height: 540px; }

.glbs-shelby-projects-v3-hero-media img { width: 100%; height: 100%; object-fit: cover; }

.glbs-shelby-projects-v3-hero-copy {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 72px), 1120px) !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 110px 0 88px !important;
}

.glbs-shelby-projects-v3-hero-copy > * { max-width: 500px; }
.glbs-shelby-projects-v3-eyebrow {
  margin: 0 0 22px !important;
  color: var(--glbs-projects-v3-gold) !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .2em;
}

.glbs-shelby-projects-v3-hero h1 {
  margin: 0 !important;
  font-size: clamp(54px, 6vw, 84px) !important;
  line-height: .98 !important;
  font-weight: 500 !important;
  letter-spacing: -.035em !important;
}

.glbs-shelby-projects-v3-lead { margin: 28px 0 0 !important; font-size: 20px; line-height: 1.55; }

.glbs-shelby-projects-v3-trust {
  position: relative;
  z-index: 3;
  width: min(calc(100% - 72px), 1120px) !important;
  max-width: 1120px !important;
  margin: -24px auto 0 !important;
  background: var(--glbs-projects-v3-white);
  box-shadow: 0 14px 35px rgba(37,39,39,.09);
}
.glbs-shelby-projects-v3-trust .wp-block-columns { margin: 0 !important; padding: 22px 24px; gap: 0; }
.glbs-shelby-projects-v3-trust .wp-block-column { text-align: center; border-right: 1px solid var(--glbs-projects-v3-border); }
.glbs-shelby-projects-v3-trust .wp-block-column:last-child { border-right: 0; }
.glbs-shelby-projects-v3-trust p { margin: 0 !important; line-height: 1.45; }

.glbs-shelby-projects-v3-choose,
.glbs-shelby-projects-v3-projects,
.glbs-shelby-projects-v3-cta {
  padding: 52px 36px !important;
  border: 1px solid var(--glbs-projects-v3-border);
  background: var(--glbs-projects-v3-panel);
}

.glbs-shelby-projects-v3-choose > h2,
.glbs-shelby-projects-v3-cta > h2 { margin: 0 !important; font-size: clamp(32px, 4vw, 46px) !important; font-weight: 500 !important; }
.glbs-shelby-projects-v3-section-intro { margin: 14px auto 34px !important; color: #6f6a63; font-size: 18px; }
.glbs-shelby-projects-v3-category-grid { gap: 18px; margin: 34px 0 0 !important; }

.glbs-shelby-projects-v3-category-card {
  height: 100%;
  background: var(--glbs-projects-v3-white);
  padding-bottom: 18px;
  overflow: hidden;
}
.glbs-shelby-projects-v3-category-image { margin: 0 !important; width: 100%; overflow: hidden; }
.glbs-shelby-projects-v3-category-image img { display: block; width: 100%; aspect-ratio: 1.35 / 1; object-fit: cover; }
.glbs-shelby-projects-v3-category-card .glbs-card-title { margin: 14px 16px 2px !important; font-size: clamp(18px, 1.5vw, 22px) !important; font-weight: 500 !important; line-height: 1.2 !important; }
.glbs-shelby-projects-v3-category-card .glbs-card-copy { min-height: 3.9em; margin: 0 16px 8px !important; color: #6f6a63; font-size: 15px !important; line-height: 1.45 !important; }
.glbs-shelby-projects-v3-category-card .glbs-card-link { margin: 4px 16px 0 !important; font-size: 14px !important; line-height: 1.35 !important; }
.glbs-shelby-projects-v3-category-card .glbs-card-link a { color: var(--glbs-projects-v3-gold) !important; font-weight: 600; text-decoration: none !important; }
.glbs-shelby-projects-v3-category-card .glbs-card-link a:hover,
.glbs-shelby-projects-v3-category-card .glbs-card-link a:focus { text-decoration: underline !important; text-underline-offset: 3px; }

.glbs-shelby-projects-v3-button-primary .wp-block-button__link,
.glbs-shelby-projects-v3-button-secondary .wp-block-button__link {
  border: 1px solid var(--glbs-projects-v3-gold) !important;
  border-radius: 0 !important;
  padding: 14px 26px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.glbs-shelby-projects-v3-button-primary .wp-block-button__link {
  background: var(--glbs-projects-v3-gold) !important;
  color: var(--glbs-projects-v3-white) !important;
}
.glbs-shelby-projects-v3-button-secondary .wp-block-button__link {
  background: var(--glbs-projects-v3-white) !important;
  color: var(--glbs-projects-v3-gold) !important;
}

.glbs-shelby-projects-v3-projects { margin-top: 44px !important; }
.glbs-shelby-projects-v3-scope-note { max-width: 760px; margin: 0 auto 28px !important; color: #6f6a63; font-size: 17px; }
.glbs-shelby-projects-v3-project { padding: 32px !important; border: 1px solid var(--glbs-projects-v3-border); background: var(--glbs-projects-v3-white); }
.glbs-shelby-projects-v3-project + .glbs-shelby-projects-v3-project { margin-top: 24px !important; }
.glbs-shelby-projects-v3-project h2 { margin: 0 !important; font-size: 29px !important; font-weight: 500 !important; }
.glbs-shelby-projects-v3-project-copy { margin: 10px 0 22px !important; color: #6f6a63; }
.glbs-shelby-projects-v3-gallery { gap: 14px; margin: 0 !important; }
.glbs-shelby-projects-v3-gallery .wp-block-column { min-width: 0; }
.glbs-shelby-projects-v3-gallery .wp-block-image { height: 230px; margin: 0 !important; overflow: hidden; }
.glbs-shelby-projects-v3-gallery .wp-block-image img { width: 100%; height: 100%; object-fit: cover; }

.glbs-shelby-projects-v3-placeholder {
  min-height: 230px;
  display: grid;
  place-items: center;
  margin: 0 !important;
  padding: 20px !important;
  border: 1px dashed #c8c1b7;
  background: repeating-linear-gradient(135deg, #f3f0ea, #f3f0ea 16px, #ebe7df 16px, #ebe7df 32px);
  color: #806d4e;
  text-align: center;
}
.glbs-shelby-projects-v3-placeholder p { margin: 0 !important; font-size: 14px; font-weight: 700; }
.glbs-shelby-projects-v3-hero-media.glbs-shelby-projects-v3-placeholder { min-height: 540px; }

.glbs-shelby-projects-v3-cta { margin-bottom: 70px !important; text-align: center; }
.glbs-shelby-projects-v3-cta > p { max-width: 650px; margin: 16px auto 26px !important; color: #6f6a63; font-size: 18px; }

@media (max-width: 900px) {
  .glbs-shelby-projects-v3-category-grid,
  .glbs-shelby-projects-v3-gallery { flex-wrap: wrap !important; }
  .glbs-shelby-projects-v3-category-grid > .wp-block-column,
  .glbs-shelby-projects-v3-gallery > .wp-block-column { flex-basis: calc(50% - 9px) !important; }
}

@media (max-width: 700px) {
  .glbs-shelby-projects-v3-wrap,
  .glbs-shelby-projects-v3-trust,
  .glbs-shelby-projects-v3-hero-copy { width: min(calc(100% - 32px), 1120px) !important; }
  .glbs-shelby-projects-v3-hero,
  .glbs-shelby-projects-v3-hero-media { min-height: 520px; }
  .glbs-shelby-projects-v3-hero-copy { padding: 82px 0 62px !important; }
  .glbs-shelby-projects-v3-hero-media::after { background: linear-gradient(90deg, rgba(255,255,255,.97), rgba(255,255,255,.76)); }
  .glbs-shelby-projects-v3-hero h1 { font-size: 50px !important; }
  .glbs-shelby-projects-v3-lead { font-size: 17px; }
  .glbs-shelby-projects-v3-trust { margin-top: 0 !important; }
  .glbs-shelby-projects-v3-trust .wp-block-columns { padding: 12px 20px; }
  .glbs-shelby-projects-v3-trust .wp-block-column { padding: 12px 0; border-right: 0; border-bottom: 1px solid var(--glbs-projects-v3-border); }
  .glbs-shelby-projects-v3-trust .wp-block-column:last-child { border-bottom: 0; }
  .glbs-shelby-projects-v3-choose,
  .glbs-shelby-projects-v3-projects,
  .glbs-shelby-projects-v3-cta { padding: 36px 20px !important; }
  .glbs-shelby-projects-v3-category-grid > .wp-block-column,
  .glbs-shelby-projects-v3-gallery > .wp-block-column { flex-basis: 100% !important; }
  .glbs-shelby-projects-v3-project { padding: 20px !important; }
  .glbs-shelby-projects-v3-gallery .wp-block-image,
  .glbs-shelby-projects-v3-placeholder { min-height: 205px; height: 205px; }
}
