.checkbox-list { list-style: none; padding-left: 0; }
.checkbox-list label { font-weight: normal; margin-bottom: 0; padding-left: 16px; }
.checkbox-list input[type=checkbox], .checkbox-list input[type=radio] { margin-left: -16px; }
.checkbox-list li.full-width label { font-weight: bold; text-decoration: underline; }
.document-search .button { background: #0787ea; color: #fff; font-weight: bold; margin-top: 20px; }
.document-search .button:disabled { background: #f5f5f5; color: #555; }
.section label { display: block; }
.section input[type=text] { width: 100%; }
.section .field-group { margin-bottom: 1rem; }
.section .field-group strong { display: block; margin-top: 2rem; }
.section .field-group label { font-weight: normal; margin: 1rem 0 0.5rem; }

.toggled { display: none; }
p.full-width { clear: both; }
span.half + p.full-width { padding-top: 1rem; }
.toggled .half { width: 49% !important; margin-right: 1%; }
.toggled .half:last-child { float: right; margin-right: 0; }

.package-builder .woocommerce-tabs { margin-bottom: 2em !important; }
.package-builder .wc-tabs { display: block; }
.package-builder .wc-tabs li a { padding-bottom: .5em; }
.package-builder .wc-tabs>li+li { padding-left: 0; }

.page-template-bim-library-template .file-list { position: relative; overflow: hidden; display: flex; flex-wrap: wrap; margin-left: -15px; margin-right: -15px; }
.page-template-bim-library-template .file-list .bim-file-sizer { position: absolute; opacity: 0; visibility: hidden; }
.page-template-bim-library-template .file-list .bim-file { max-width: 50%; padding-left: 8px; padding-right: 8px; flex: 0 0 50%; padding-bottom: 10px; padding-top: 10px; }
.page-template-bim-library-template .file-list .bim-file a {border: solid 1px #dfdfdf; padding: 20px; position: relative; display: block; height: 100%; }
.page-template-bim-library-template .file-list .bim-file img { margin-bottom: 5px; }
.page-template-bim-library-template strong { display: block; color: #333e48; }
.page-template-bim-library-template .overlay { transition: all 0.2s; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(7, 135, 234, 0.9); opacity: 0; z-index: 99; }
.page-template-bim-library-template .bim-file a:hover .overlay { opacity: 1;}
.page-template-bim-library-template .overlay .button { position: absolute; top: 50%; left: 50%; transform: translate(-50%); background: #efecec !important; color: #333e48 !important; }
.page-template-bim-library-template .search-filter .js-shuffle-search { height: 33px; margin-top: 10px; }

.page-template-bim-library-template .pop_overlay, .woocommerce .pop_overlay, .pop_overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: rgba(0, 0, 0, 0.9); display: none; }
.page-template-bim-library-template .download_pop, .woocommerce .download_pop, .download_pop { position: fixed; top: 40%; left: 40%; max-width: 500px; z-index: 100; padding: 1rem; display: none; background: #fff; border-radius: 20px; box-shadow: 0 0 10px rgba(0,0,0,0.75);}
.page-template-bim-library-template .download_pop .gform-body, .woocommerce .download_pop .gform-body, .download_pop .gform-body { padding-top: 2rem; }
.page-template-bim-library-template .download_pop .button, .woocommerce .download_pop .button, .download_pop .button { background: #0787ea !important; color: #fff !important;}
.page-template-bim-library-template .download_pop .close-button, .woocommerce .download_pop .close-button, .download_pop .close-button { position: absolute; top: 0; right: 20px; font-size: 2rem; color: #000; }
.page-template-bim-library-template .download_pop .close-button:hover, .woocommerce .download_pop .close-button:hover, .download_pop .close-button:hover { color: #565656; }

@media (min-width: 768px) {
  .package-builder .wc-tabs li { margin-bottom: 1em; }
  .package-builder .wc-tabs>li+li { margin-left: 20px;}
  .package-builder .wc-tabs li a { font-size: 1em; }

  .page-template-bim-library-template  .alignleft { float: left; margin: 0 10px 10px 0; }
    .page-template-bim-library-template .rep-content { padding-top: 15px; }

  .page-template-bim-library-template .file-list { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); grid-gap: 25px; justify-content: center; align-items: center;}
  .page-template-bim-library-template .file-list .bim-file { margin: 0; max-width: 25%; flex: 0 0 25%; }
  .page-template-bim-library-template .file-list .bim-file strong { white-space: normal; line-height: 1; }
  .page-template-bim-library-template .search-filter { display: flex; clear: both; padding-top: 20px;}
  .page-template-bim-library-template .search-filter .js-shuffle-search { margin: 0 0 0 10px; }
}

@media (min-width: 960px) {
  /**.checkbox-list li { width: 49%; display: inline-block; }**/
  .checkbox-list .column.third { width: 50%; float: left; }
  .checkbox-list li.full-width { width: 100%; }
  .document-search .button { font-size: 18px; }
  .section .field-group span { display: inline-block; width: 32%; }

  .half { width: 50% !important; float: left; padding-top: 20px; }

  .page-template-bim-library-template .file-list .bim-file { min-width: 25%; }

  .page-template-bim-library-template .download_pop, .woocommerce .download_pop, .download_pop { padding: 3rem; }
}

@media (min-width: 1200px) {
  /** .checkbox-list li { width: 32%; } **/
  .checkbox-list .column.third { width: 33%; float: left; }

  .page-template-bim-library-template .file-list .bim-file { margin: 0; max-width: 16.66%; flex: 0 0 16.66%; min-width: 16.66%; }
  .page-template-bim-library-template .search-filter { max-width: 900px; margin: 15px auto; }
}

.builder-waiting { display: none; position: fixed; top: 0; left: 0; right: 0; background: rgba(255, 255, 255, 0.9); height: 100vh; z-index: 99999; text-align: center; padding-top: 45vh; }

.spb-heading { margin-bottom: 20px; }
.spb-row p.label { font-weight: bold; border-bottom: solid 1px #dfdfdf; padding-bottom: 10px; }
.spb-row p.sublevel { border-bottom: solid 1px #dfdfdf; padding-bottom: 10px; margin-top: -5px;}
.spb-row ul { list-style: none; padding: 0; }

@media (min-width: 768px ) {
  .spb-row { display: flex; }
  .spb-row .column { width: 50%; }
  .spb-row .column.third { width: 33%; }
  .spb-row .auto-column { width: auto; margin: 0 10px; }
  .spb-row .auto-column ul { padding-right: 10px; }
  .spb-row .full-column { width: 100%; }
}

@media (min-width: 960px) {
  .spb-row .column { padding: 10px; }
  .spb-row .column ul li { display: inline-block; width: 48%; }
  .spb-row .auto-column { margin: 10px; }
}
