/* ===================================================================================

* Theme Name: Gerow Child
* Theme URI: https://www.themedox.com/gerow/
* Author: ThemeDox
* Author URI: https://themeforest.net/user/themedox/
* Description: Gerow - Business Consulting WordPress Theme
* Version: 1.0
* Template: gerow
* License: GNU General Public License version 3.0
* License URI: http://www.gnu.org/licenses/gpl-3.0.html
* Tags: one-column, right-sidebar, left-sidebar, custom-menu, featured-images, post-formats, sticky-post, translation-ready

* We encourage you to create Child theme for any modifications you will want to do.

* Why use Child theme?

* Because of future updates we may provide for this theme that will overwrite your
* modifications and all your custom work.

* If you are not familiar with Child Themes, you can read about it here:
* http://codex.wordpress.org/Child_Themes
* http://wp.tutsplus.com/tutorials/theme-development/child-themes-basics-and-creating-child-themes-in-wordpress/

====================================================================================== */

/* Document Library filter counts */
.dl-filter .dl-cb {
  display: flex;
  align-items: center;
  gap: 10px;
}

.dl-filter .dl-label {
  flex: 1 1 auto;
}

.dl-filter .dl-count {
  margin-left: auto;
  color: #6c757d;
  font-variant-numeric: tabular-nums;
}

/* Document Library summary row */
.doc-filter-summary {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 16px;
  margin: 12px 0 20px;
}

.doc-results {
  font-weight: 600;
  color: #1f2d3d;
}

.doc-results-count {
  font-variant-numeric: tabular-nums;
}

.doc-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.doc-chips.is-empty {
  display: none;
}

.doc-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  background: #dbe7f6;
  color: #1b3a6b;
  border-radius: 999px;
  border: 0;
  font-size: 0.95rem;
  cursor: pointer;
}

.doc-chip:hover {
  background: #cfe0f5;
}

.doc-chip-close {
  font-weight: 600;
  line-height: 1;
}

.doc-clear-filters {
  margin-left: auto;
  background: transparent;
  border: 0;
  color: #667085;
  font-weight: 600;
  cursor: pointer;
  padding: 4px 6px;
}

.doc-clear-filters.is-hidden {
  display: none;
}

@media (max-width: 767px) {
  .doc-filter-summary {
    margin-top: 10px;
  }

  .doc-clear-filters {
    margin-left: 0;
  }
}

/* Document Library pagination */
#docGridWrap .elementor-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  margin-top: 18px;
  border: 1px solid #e0e6f0;
  border-radius: 14px;
  background: #f8fafd;
}

#docGridWrap .elementor-pagination .page-numbers {
  min-width: 38px;
  height: 38px;
  padding: 0 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  border: 1px solid transparent;
  background: #e7edf5;
  color: #1b3a6b;
  font-weight: 600;
  text-decoration: none;
}

#docGridWrap .elementor-pagination .page-numbers.current {
  background: #ffffff;
  border-color: #2a5bd7;
  color: #2a5bd7;
  box-shadow: 0 0 0 1px rgba(42, 91, 215, 0.15);
}

#docGridWrap .elementor-pagination .page-numbers.prev,
#docGridWrap .elementor-pagination .page-numbers.next {
  font-size: 18px;
}

#docGridWrap .elementor-pagination .page-numbers.dots {
  min-width: auto;
  background: transparent;
  border-color: transparent;
  color: #94a3b8;
  padding: 0 4px;
  pointer-events: none;
}

@media (max-width: 767px) {
  #docGridWrap .elementor-pagination {
    flex-wrap: wrap;
    gap: 8px;
  }
}

/* Search result chip for Document CPT */
.blog-post-content-two .search-type-chip {
  display: inline-flex;
  align-items: center;
  margin: 0 0 10px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid #bfd3f4;
  background: #e7f0ff;
  color: #1b4ea5;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  line-height: 1.2;
}

.single-document .document-download-wrap {
  margin-top: 24px;
}

.single-document .document-detail-title {
  margin: 0 0 20px;
}

.document-detail-v2 {
  --ddv2-blue: #1b4ea5;
  --ddv2-blue-dark: #0f3270;
  background: #f5f7fb;
}

.document-detail-v2__crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 18px;
  font-size: 12px;
  color: #60708b;
}

.document-detail-v2__crumbs a {
  color: #60708b;
}

.document-detail-v2__crumbs .is-current {
  color: #2f3d57;
}

.document-detail-v2__hero {
  position: relative;
  min-height: 300px;
  border-radius: 24px;
  overflow: hidden;
  background:
    radial-gradient(circle at 12% 95%, rgba(26, 104, 191, 0.44), transparent 38%),
    radial-gradient(circle at 84% 16%, rgba(73, 154, 235, 0.34), transparent 34%),
    linear-gradient(122deg, #081632 6%, #163661 44%, #8c98a9 100%);
  border: 1px solid rgba(23, 37, 84, 0.1);
}

.document-detail-v2__hero-image {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  opacity: 1;
}

.document-detail-v2__hero-art {
  position: absolute;
  left: 58px;
  right: 58px;
  bottom: 28px;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  gap: 18px;
}

.document-detail-v2__card {
  position: relative;
  width: min(31%, 188px);
  min-height: 212px;
  border-radius: 16px;
  border: 1px solid rgba(122, 153, 205, 0.26);
  background: linear-gradient(180deg, rgba(26, 53, 98, 0.86) 0%, rgba(9, 26, 61, 0.85) 100%);
  box-shadow:
    inset 0 1px 0 rgba(221, 235, 255, 0.12),
    0 18px 36px rgba(4, 12, 32, 0.34);
  padding: 16px 16px 18px;
}

.document-detail-v2__card.is-active {
  min-height: 230px;
  background: linear-gradient(180deg, rgba(28, 60, 110, 0.92) 0%, rgba(5, 20, 51, 0.96) 100%);
}

.document-detail-v2__card > span {
  display: block;
  height: 6px;
  margin-bottom: 8px;
  border-radius: 999px;
  background: rgba(215, 228, 248, 0.72);
}

.document-detail-v2__card > span:nth-child(1) {
  width: 78%;
}

.document-detail-v2__card > span:nth-child(2) {
  width: 58%;
  opacity: 0.82;
}

.document-detail-v2__card > span:nth-child(3) {
  width: 48%;
  opacity: 0.62;
}

.document-detail-v2__card-screen {
  margin-top: 10px;
  height: 54px;
  border-radius: 10px;
  background:
    linear-gradient(145deg, rgba(25, 171, 255, 0.88) 0%, rgba(9, 84, 159, 0.95) 52%, rgba(8, 29, 81, 1) 100%);
  border: 1px solid rgba(70, 140, 218, 0.58);
  box-shadow: inset 0 0 0 5px rgba(2, 15, 45, 0.55);
}

.document-detail-v2__card.is-active .document-detail-v2__card-screen {
  position: relative;
}

.document-detail-v2__card.is-active .document-detail-v2__card-screen::before,
.document-detail-v2__card.is-active .document-detail-v2__card-screen::after {
  content: "";
  position: absolute;
  left: 16%;
  right: 16%;
  border-top: 3px solid rgba(92, 214, 255, 0.95);
  border-radius: 999px;
}

.document-detail-v2__card.is-active .document-detail-v2__card-screen::before {
  top: 50%;
  transform: rotate(-24deg);
}

.document-detail-v2__card.is-active .document-detail-v2__card-screen::after {
  top: 62%;
  border-color: rgba(207, 220, 255, 0.9);
  transform: rotate(-16deg);
}

.document-detail-v2__card-dots {
  margin-top: 14px;
  height: 7px;
  width: 7px;
  border-radius: 50%;
  background: rgba(191, 210, 240, 0.74);
  box-shadow:
    14px 0 0 rgba(191, 210, 240, 0.74),
    28px 0 0 rgba(191, 210, 240, 0.74);
}

.document-detail-v2__card-bars {
  margin-top: 14px;
  display: flex;
  gap: 8px;
}

.document-detail-v2__card-bars i {
  display: block;
  width: 42px;
  height: 18px;
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(67, 189, 255, 0.96) 0%, rgba(39, 112, 220, 0.96) 100%);
}

.document-detail-v2__card-bars i:last-child {
  background: #d7dde8;
}

.document-detail-v2__hero-arc {
  position: absolute;
  right: 14px;
  bottom: 36px;
  width: 140px;
  height: 76px;
  border-radius: 0 0 140px 140px;
  border: 2px solid rgba(111, 199, 255, 0.66);
  border-top: 0;
  border-left-color: transparent;
}

.document-detail-v2__hero-badge {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 3;
  padding: 12px 16px;
  border-radius: 14px;
  background: rgba(63, 98, 147, 0.76);
  backdrop-filter: blur(4px);
  color: #ecf3ff;
  line-height: 1.25;
}

.document-detail-v2__hero-badge strong {
  display: block;
  font-size: 18px;
}

.document-detail-v2__hero-badge span {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  opacity: 0.86;
}

.document-detail-v2__intro-grid {
  margin-top: 26px;
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr);
  gap: 28px;
}

.document-detail-v2__kicker {
  display: inline-block;
  margin-bottom: 12px;
  padding: 4px 10px;
  border-radius: 999px;
  background: #dceefe;
  color: #184f89;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.document-detail-v2__title {
  margin: 0;
  color: #0a1227;
  font-size: clamp(32px, 5vw, 52px);
  line-height: 1.05;
  letter-spacing: -0.02em;
}

.document-detail-v2__excerpt {
  margin: 18px 0 0;
  color: #4e5f7b;
  max-width: 720px;
  font-size: 16px;
  line-height: 1.85;
}

.document-detail-v2__content {
  margin-top: 18px;
  color: #4e5f7b;
  max-width: 760px;
  font-size: 16px;
  line-height: 1.8;
}

.document-detail-v2__content > *:last-child {
  margin-bottom: 0;
}

.document-detail-v2__content p {
  margin: 0 0 12px;
  color: #4e5f7b;
}

.document-detail-v2__content h2,
.document-detail-v2__content h3,
.document-detail-v2__content h4 {
  margin: 16px 0 8px;
  color: #113a79;
  font-size: 34px;
  line-height: 1.12;
}

.document-detail-v2__actions {
  margin-top: 28px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.document-detail-v2__download-btn,
.single-document .post-text .document-download-wrap .document-download-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #0e1c3b;
  border-radius: 18px;
  background: #0e1c3b;
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
  text-transform: none;
  line-height: 1;
  min-height: 50px;
  padding: 12px 24px;
  letter-spacing: 0;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  text-decoration: none;
  box-shadow: none;
}

.document-detail-v2__download-btn,
.document-detail-v2__download-btn:visited,
.single-document .post-text .document-download-wrap .document-download-btn,
.single-document .post-text .document-download-wrap .document-download-btn:visited {
  color: #ffffff;
}

.document-detail-v2__download-btn::before,
.single-document .post-text .document-download-wrap .document-download-btn::before {
  display: none;
}

.document-detail-v2__download-btn::after,
.single-document .post-text .document-download-wrap .document-download-btn::after {
  display: none;
}

.document-detail-v2__download-btn:hover,
.single-document .post-text .document-download-wrap .document-download-btn:hover {
  border-color: #122853;
  background: #122853;
  color: #ffffff;
}

.document-detail-v2__download-btn:hover,
.document-detail-v2__download-btn:hover:visited,
.document-detail-v2__download-btn:focus,
.single-document .post-text .document-download-wrap .document-download-btn:hover,
.single-document .post-text .document-download-wrap .document-download-btn:hover:visited,
.single-document .post-text .document-download-wrap .document-download-btn:focus {
  color: #ffffff;
}

.document-detail-v2__secondary-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #c9d3e6;
  color: #223452;
  background: #f8fbff;
  border-radius: 18px;
  min-height: 50px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
}

.document-detail-v2__secondary-btn:hover {
  border-color: #b6c4de;
  color: #1d2f4d;
}

.document-detail-v2__preview {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 16px;
  border-radius: 16px;
  border: 1px solid #d7dfeb;
  background: linear-gradient(180deg, #f6f9ff 0%, #eef3fb 100%);
  box-shadow: 0 8px 24px rgba(26, 37, 62, 0.07);
}

.document-detail-v2__preview-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  font-size: 10px;
  color: #8694a9;
  margin-bottom: 10px;
}

.document-detail-v2__preview-head em {
  font-style: normal;
  color: #218a5e;
  background: #def5ea;
  border-radius: 999px;
  padding: 4px 8px;
  font-weight: 700;
  letter-spacing: 0.03em;
}

.document-detail-v2__preview h3 {
  font-size: 18px;
  margin: 0 0 12px;
  color: #1c2a43;
}

.document-detail-v2__preview-frame {
  display: flex;
  flex: 1 1 auto;
  min-height: 360px;
  overflow: hidden;
  border: 1px dashed #c4cfde;
  border-radius: 12px;
  padding: 10px;
  background: #f8fbff;
}

.document-detail-v2__preview-image {
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  border-radius: 8px;
}

.document-detail-v2__preview-pdf {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100%;
  border: 0;
  border-radius: 8px;
  background: #ffffff;
}

.document-detail-v2__preview-placeholder {
  width: 100%;
  height: 100%;
  min-height: 100%;
  border-radius: 8px;
  background:
    linear-gradient(180deg, #dbe3ee 0%, #e7ecf4 100%);
}

.document-detail-v2__preview p {
  margin: 12px 0 0;
  color: #7a879c;
  font-size: 12px;
  line-height: 1.6;
}

.document-detail-v2__specs {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid #1d3657;
  border-radius: 0;
  background: linear-gradient(90deg, #071326 0%, #0f2444 70%, #0c1d36 100%);
  color: #d8e3f7;
  overflow: hidden;
}

.document-detail-v2__spec {
  padding: 14px 14px 16px;
  border-right: 1px solid rgba(190, 205, 229, 0.22);
}

.document-detail-v2__spec:last-child {
  border-right: 0;
}

.document-detail-v2__spec span {
  display: block;
  margin-bottom: 6px;
  color: #87a0c7;
  font-size: 10px;
  letter-spacing: 0.11em;
  text-transform: uppercase;
}

.document-detail-v2__spec strong {
  display: block;
  color: #f6f9ff;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 600;
}

.document-detail-v2__body {
  margin-top: 28px;
  padding: 22px;
  border: 1px solid #dde5f2;
  border-radius: 14px;
  background: #ffffff;
}

.document-detail-v2__body > *:last-child {
  margin-bottom: 0;
}

.document-detail-v2__body p {
  color: #3f4e67;
}

@media (max-width: 1199px) {
  .document-detail-v2__specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .document-detail-v2__spec:nth-child(2n) {
    border-right: 0;
  }
}

@media (max-width: 991px) {
  .document-detail-v2__intro-grid {
    grid-template-columns: 1fr;
  }

  .document-detail-v2__title {
    font-size: clamp(30px, 8vw, 46px);
  }

  .document-detail-v2__preview {
    height: auto;
  }

  .document-detail-v2__preview-frame {
    flex: 0 0 auto;
    min-height: 320px;
  }

  .document-detail-v2__hero-art {
    left: 24px;
    right: 24px;
    gap: 10px;
  }

  .document-detail-v2__card {
    min-height: 190px;
    padding: 12px;
  }

  .document-detail-v2__card.is-active {
    min-height: 206px;
  }
}

@media (max-width: 767px) {
  .document-detail-v2 {
    padding-top: 34px;
  }

  .document-detail-v2__hero {
    border-radius: 16px;
    min-height: 210px;
  }

  .document-detail-v2__hero-image {
    min-height: 210px;
  }

  .document-detail-v2__hero-art {
    display: none;
  }

  .document-detail-v2__hero-badge {
    top: 12px;
    right: 12px;
    max-width: 78%;
    padding: 10px 12px;
  }

  .document-detail-v2__hero-badge strong {
    font-size: 15px;
  }

  .document-detail-v2__download-btn,
  .document-detail-v2__secondary-btn {
    min-height: 48px;
    font-size: 13px;
    padding: 10px 18px;
  }

  .document-detail-v2__preview-pdf {
    min-height: 280px;
  }

  .document-detail-v2__specs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .document-detail-v2__spec {
    border-right: 1px solid rgba(190, 205, 229, 0.22);
    border-bottom: 1px solid rgba(190, 205, 229, 0.22);
  }

  .document-detail-v2__spec:nth-child(2n) {
    border-right: 0;
  }

  .document-detail-v2__spec:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}
