/*
 Theme Name:   Bricks Child Theme
 Theme URI:    https://bricksbuilder.io/
 Description:  Use this child theme to extend Bricks.
 Author:       Bricks
 Author URI:   https://bricksbuilder.io/
 Template:     bricks
 Version:      1.1
 Text Domain:  bricks
*/

.spec-table,
.spec-table table {
  border-collapse: separate !important;
  border-spacing: 0 8px !important;
  text-align: left !important;
}

.spec-table th,
.spec-table td:first-child,
.spec-table th *,
.spec-table td:first-child * {
  color: #435C76 !important;
  font-weight: 400 !important;
  text-align: left !important;
}

.spec-table th + td,
.spec-table td:nth-child(2),
.spec-table th + td *,
.spec-table td:nth-child(2) * {
  color: #000 !important;
  font-weight: 700 !important;
  text-align: left !important;
}

/* Spec table column spacing */
.spec-table,
.spec-table table {
  width: 100% !important;
  table-layout: fixed !important;
}

.spec-table th,
.spec-table td {
  vertical-align: top !important;
}

.spec-table th,
.spec-table td:first-child {
  width: 34% !important;
  min-width: 180px !important;
  padding-right: clamp(2rem, 4vw, 4rem) !important;
  white-space: normal !important;
}

.spec-table th + td,
.spec-table td:nth-child(2) {
  width: 66% !important;
  padding-left: 1rem !important;
}

@media (max-width: 767px) {
  .spec-table,
  .spec-table table {
    table-layout: auto !important;
  }

  .spec-table th,
  .spec-table td:first-child {
    width: 42% !important;
    min-width: 120px !important;
    padding-right: 1.25rem !important;
  }

  .spec-table th + td,
  .spec-table td:nth-child(2) {
    width: 58% !important;
    padding-left: 0.5rem !important;
  }
}
/* 让所有文本默认不要撑破容器 */
body,
body * {
  box-sizing: border-box;
}
/* Square gradient utilities */
.sq-gradient-steel-blue {
  --sq-gradient-fallback: #2980b9;
  --sq-gradient-start: #2c3e50;
  --sq-gradient-mid: #2c3e50;
  --sq-gradient-end: #2980b9;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
}

.sq-gradient-soft-blue-band {
  --sq-gradient-fallback: #6da6be;
  --sq-gradient-start: #6da6be;
  --sq-gradient-mid: #4b859e;
  --sq-gradient-end: #6da6be;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-mid), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-mid), var(--sq-gradient-end));
}

.sq-gradient-navy-blue {
  --sq-gradient-fallback: #2774ae;
  --sq-gradient-start: #002E5D;
  --sq-gradient-mid: #002E5D;
  --sq-gradient-end: #2774ae;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-mid), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-mid), var(--sq-gradient-end));
}

.sq-gradient-light-slate {
  --sq-gradient-fallback: #8e9eab;
  --sq-gradient-start: #eef2f3;
  --sq-gradient-mid: #eef2f3;
  --sq-gradient-end: #8e9eab;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
}

.sq-gradient-warm-slate {
  --sq-gradient-fallback: #8e9eab;
  --sq-gradient-start: #eef2f3;
  --sq-gradient-mid: #eef2f3;
  --sq-gradient-end: #8e9eab;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
}


.sq-gradient-cool-graphite {
  --sq-gradient-fallback: #283048;
  --sq-gradient-start: #859398;
  --sq-gradient-mid: #859398;
  --sq-gradient-end: #283048;
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
  background: linear-gradient(to right, var(--sq-gradient-start), var(--sq-gradient-end));
}
.sq-gradient-reverse {
  background: var(--sq-gradient-fallback);
  background: -webkit-linear-gradient(to right, var(--sq-gradient-end), var(--sq-gradient-mid), var(--sq-gradient-start));
  background: linear-gradient(to right, var(--sq-gradient-end), var(--sq-gradient-mid), var(--sq-gradient-start));
}
/* News card overlay hover bridge */
.sq-news-card:hover .sq-news-card__overlay,
.sq-news-card:focus-within .sq-news-card__overlay {
  background-color: #629BB3;
}
/* Food application cutout sizing */
.sq-food-app {
  row-gap: var(--space-xs);
}

.sq-food-app > img,
.sq-food-app > .brxe-image {
  display: block;
  width: min(100%, 260px) !important;
  height: 220px !important;
  object-fit: contain !important;
  object-position: center center !important;
}

@media (max-width: 767px) {
  .sq-food-app > img,
  .sq-food-app > .brxe-image {
    width: min(100%, 220px) !important;
    height: 180px !important;
  }
}
/* Header mobile menu color fallback after tablet breakpoint change */
@media (max-width: 1024px) {
  #brx-header .bricks-mobile-menu-wrapper a,
  #brx-header .bricks-mobile-menu-wrapper .brx-submenu-toggle,
  #brx-header .bricks-mobile-menu-wrapper .brx-submenu-toggle button,
  #brx-header .bricks-mobile-menu-wrapper .brx-submenu-toggle svg,
  #brx-header .bricks-mobile-menu-wrapper .brx-submenu-toggle svg * {
    color: var(--neutral) !important;
    fill: var(--neutral) !important;
    stroke: var(--neutral) !important;
  }
}
/* Header mobile menu submenu scroll fix */
@media (max-width: 1024px) {
  body:has(#brxe-kktoug.brx-open) {
    overflow: hidden !important;
  }

  #brxe-kktoug.brx-open .brx-nav-nested-items {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #brxe-kktoug.brx-open .brx-nav-nested-items > li:has(> button.brx-toggle-div) {
    position: fixed !important;
    top: 50dvh !important;
    left: min(calc(var(--width-m) + var(--space-xs)), calc(100vw - 44px)) !important;
    right: auto !important;
    transform: translateY(-50%) !important;
    z-index: 1003 !important;
  }
}
/* Header mobile hamburger sticky primary color */
@media (max-width: 1024px) {
  .scrolling #brxe-zqkkvx,
  header.scrolling #brxe-zqkkvx,
  .bricks-is-stuck #brxe-zqkkvx,
  header.bricks-is-stuck #brxe-zqkkvx,
  .bricks-is-sticky.scrolling #brxe-zqkkvx,
  header.bricks-is-sticky.scrolling #brxe-zqkkvx {
    color: var(--primary) !important;
    fill: var(--primary) !important;
  }

  .scrolling #brxe-zqkkvx svg,
  header.scrolling #brxe-zqkkvx svg,
  .bricks-is-stuck #brxe-zqkkvx svg,
  header.bricks-is-stuck #brxe-zqkkvx svg,
  .bricks-is-sticky.scrolling #brxe-zqkkvx svg,
  header.bricks-is-sticky.scrolling #brxe-zqkkvx svg,
  .scrolling #brxe-zqkkvx i,
  header.scrolling #brxe-zqkkvx i,
  .bricks-is-stuck #brxe-zqkkvx i,
  header.bricks-is-stuck #brxe-zqkkvx i,
  .bricks-is-sticky.scrolling #brxe-zqkkvx i,
  header.bricks-is-sticky.scrolling #brxe-zqkkvx i {
    color: inherit !important;
    fill: currentColor !important;
  }
}
/* Normal header CTA uses sticky color scheme */
#brxe-jamjlr.sq-header-cta--sticky-scheme {
  background: var(--bricks-color-ihibki) !important;
  border-color: var(--bricks-color-ihibki) !important;
  color: #111111 !important;
  box-shadow: none !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__text,
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__text * {
  color: #111111 !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__icon-wrap {
  background: #111111 !important;
  border-color: #111111 !important;
  color: #ffffff !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__icon,
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__icon svg,
#brxe-jamjlr.sq-header-cta--sticky-scheme .sq-glass-btn__icon svg * {
  color: currentColor !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover .sq-glass-btn__text,
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover .sq-glass-btn__text * {
  color: #ffffff !important;
}
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover .sq-glass-btn__icon-wrap {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}
/* Normal header CTA icon hover follows primary button */
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover #brxe-qpfiae,
#brxe-jamjlr.sq-header-cta--sticky-scheme:hover .sq-glass-btn__icon-wrap {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}
/* Normal header CTA parent hover final */
#brxe-jamjlr:hover #brxe-pqbvwy,
#brxe-jamjlr:hover #brxe-pqbvwy * {
  color: #ffffff !important;
}

#brxe-jamjlr:hover #brxe-qpfiae {
  background: var(--primary) !important;
  background-color: var(--primary) !important;
  border-color: var(--primary) !important;
  color: #ffffff !important;
}

#brxe-jamjlr:hover #brxe-jcjdhb,
#brxe-jamjlr:hover #brxe-jcjdhb svg,
#brxe-jamjlr:hover #brxe-jcjdhb svg * {
  color: #ffffff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}
/* Normal header mobile CTA inside menu */
@media (max-width: 1024px) {
  #brxe-jamjlr {
    display: none !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-jamjlr {
    display: flex !important;
    position: fixed !important;
    left: max(var(--space-m), calc((100vw - var(--width-m)) / 2 + var(--space-m))) !important;
    bottom: clamp(7rem, 18dvh, 12rem) !important;
    width: min(28rem, calc(var(--width-m) - (var(--space-m) * 2))) !important;
    max-width: calc(100vw - (var(--space-m) * 2)) !important;
    z-index: 1002 !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-jamjlr #brxe-pqbvwy {
    color: #111111 !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-jamjlr:hover #brxe-pqbvwy,
  body:has(#brxe-ggetir.brx-open) #brxe-jamjlr:hover #brxe-pqbvwy * {
    color: #ffffff !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-jamjlr:hover #brxe-qpfiae {
    background: var(--primary) !important;
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
  }
}
/* Normal header mobile menu panel behavior */
@media (max-width: 1024px) {
  body:has(#brxe-ggetir.brx-open) {
    overflow: hidden !important;
  }

  #brxe-ggetir.brx-open .brx-nav-nested-items {
    height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    -webkit-overflow-scrolling: touch !important;
  }

  #brxe-ggetir.brx-open .brx-nav-nested-items > li:has(> button.brx-toggle-div) {
    position: fixed !important;
    top: 50dvh !important;
    left: min(calc(var(--width-m) + var(--space-xs)), calc(100vw - 44px)) !important;
    right: auto !important;
    transform: translateY(-50%) !important;
    z-index: 1003 !important;
  }
}
/* Real normal header mobile CTA inside menu */
@media (max-width: 1024px) {
  #brxe-sqrclp {
    display: none !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp {
    display: flex !important;
    position: fixed !important;
    left: max(var(--space-m), calc((100vw - var(--width-m)) / 2 + var(--space-m))) !important;
    bottom: clamp(7rem, 18dvh, 12rem) !important;
    width: min(28rem, calc(var(--width-m) - (var(--space-m) * 2))) !important;
    max-width: calc(100vw - (var(--space-m) * 2)) !important;
    z-index: 1002 !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp #brxe-vemnyn {
    color: #111111 !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:hover,
  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:focus-within {
    background: var(--primary) !important;
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:hover #brxe-vemnyn,
  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:hover #brxe-vemnyn *,
  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:focus-within #brxe-vemnyn,
  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:focus-within #brxe-vemnyn * {
    color: #ffffff !important;
  }

  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:hover #brxe-ppctft,
  body:has(#brxe-ggetir.brx-open) #brxe-sqrclp:focus-within #brxe-ppctft {
    background: var(--primary) !important;
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    color: #ffffff !important;
  }
}
