.localgov-consultations-view .view-header {
  display: flex;
}

.localgov-consultations-view .view-header .views-display-link {
  margin: 0;
  padding: 1rem 0.5rem;
  border: var(--tabs-border);
  border-color: var(--tabs-border-color);
  background: var(--tabs-button-bg-color);
  color: var(--tabs-text-color);
  font-family: var(--tabs-button-font-family);
  font-size: var(--tabs-button-font-size);
  cursor: pointer;
}

.localgov-consultations-view .view-header .views-display-link.is-active {
  border-bottom-color: var(--tabs-button-active-color);
  background-color: var(--tabs-button-active-color);
}

.localgov-consultations-view .view-header {
  margin-bottom: 2rem;
}

.consultation.teaser {
  display: flex;
  gap: 1rem;
}

.consultation.teaser .consultation-closing-date {
  flex: 0 0 10rem;
  padding-top: 2rem;
  text-align: center;
}

.consultation.teaser .consultation-closing-date .h1 {
  margin-bottom: 0;
}

.consultation-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.consultation--date {
  position: absolute;
  z-index: 5;
  margin-top: 1rem;
  padding: 0.25rem 0.5rem;
  background-color: var(--color-accent);
  color: var(--button-text-color);
}

.consultation--date span {
  font-weight: 600;
}

.consultation-card > a:not([class*="toolbar"]):focus {
  background-color: #045a90;
  .card-body * {
    color: var(--color-white);
  }
}

.consultation-card > a {
  height: 100%;
  border-radius: 0.25rem;
  background-color: #fff;
  box-shadow:
    0 4px 8px 0 rgb(128 128 128 / 0.2),
    0 6px 20px 0 rgb(128 128 128 / 0.19);
}

.consultation-card > a:hover {
  box-shadow:
    0 4px 8px 0 rgb(128 128 128 / 0.6),
    0 6px 20px 0 rgb(128 128 128 / 0.8);
}

.consultation-card > a:hover .card-title {
  text-decoration: underline;
}

.card-img {
  overflow: hidden;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.card-img img {
  width: 100%;
  height: 12rem;
  object-fit: cover;
  object-position: 50% 50%;
  transition: transform 0.25s ease-in-out;
}

a:hover .card-img img {
  transform: scale(1.1);
}

.card-body {
  flex-grow: 1;
  padding: 1.5rem;
}

.views-view-responsive-grid__item-inner {
  height: 100%;
}

.block-views-exposed-filter-blockconsultations-page-2 form button {
  border-width: 2px;
}

.path-consultations .region-banner-block .field.field--name-body.field--type-text-with-summary.field--label-hidden.field__item {
  display: block;
}

.path-consultations .lgd-region.lgd-region--banner-block.region.region-banner-block {
  display: block;
  background: none;
}

.path-consultations .lgd-footer {
  margin-top: 0;

  .lgd-footer__pre-footer,
  .lgd-footer__pre-footer.lgd-row {
    background-color: #ededed;
  }

  .lgd-footer__pre-footer > .lgd-container > .lgd-row {
    justify-content: space-evenly;
  }
}

.path-consultations,
.page-node-type-consultation {
  .lgd-footer {
    margin-top: 0;

    .lgd-footer__pre-footer,
    .lgd-footer__pre-footer.lgd-row {
      background-color: #ededed;
    }

    .lgd-footer__pre-footer > .lgd-container > .lgd-row {
      justify-content: space-evenly;
    }

    .lgd-region__inner.lgd-region__inner--footer-second {
      .block-mailing-list-subscription-block {
        input {
          height: 45px;
          border-radius: 5px;
          align-items: center;
        }

        .form-wrapper {
          max-width: 350px;
        }

        label {
          display: none;
        }

        .description {
          display: none;
        }

        form {
          display: flex;

          button {
            height: 45px;
            margin-left: 5px;
            padding-top: 0.75rem;
            border-radius: 5px;
          }
        }
      }
    }
  }
}

.path-consultations,
.page-node-type-consultation {
  .lgd-region__inner.lgd-region__inner--footer-second,
  .lgd-region__inner.lgd-region__inner--footer-second h2 {
    color: #1e1b3c;
  }

  .lgd-region__inner.lgd-region__inner--footer-second h2 {
    margin-bottom: 0;
  }

  @media screen and (min-width: 1280px) {
    .path-consultations,
    .page-node-type-consultation {
      .branding__logo img {
        height: 60px;
      }
    }
  }
}

.view-consultations .view-content,
.view-consultations .view-empty {
  margin-top: 3rem;
}

.page-node-type-consultation {
  .lgd-region__inner--content article time {
    font-size: 1.25rem;
  }
}

/* Consultation link fields styling */
.consultation__link .field__item a {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 40%;
  margin-bottom: 0;
  padding: 2rem 1rem;
  border: 1px solid #d8d7dc;
  border-bottom: 2px solid var(--color-accent);
  border-radius: 0 !important;
  background-color: white;
  box-shadow: 0 0 2px #00000029;
  color: var(--color-text);
  font-size: 18px;
  font-weight: normal !important;
  letter-spacing: 0;
  line-height: 21px;
  text-decoration: none;
  transition: background-color 0.3s;
}

.consultation__link .field__item a:hover {
  background-color: var(--button-bg-color, #f5f5f5);
  color: var(--button-text-color, #fff);
}

/* Right-pointing triangle for main link */
.consultation__link .field__item a::after {
  content: "";
  display: inline-block;
  float: right;
  width: 0;
  height: 0;
  margin-top: 4px;
  margin-left: 10px;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 8px solid currentColor;
}

.consultation__top_tasks .field__item a,
.consultation__results_link .field__item a {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 0.5rem;
  padding: 1rem;
  border: 1px solid var(--color-accent);
  border-bottom: 2px solid var(--color-accent);
  border-radius: 0 !important;
  background-color: var(--button-bg-color);
  box-shadow: 0 0 2px #00000029;
  color: var(--button-text-color);
  font-size: 18px;
  font-weight: normal !important;
  letter-spacing: 0;
  line-height: 21px;
  text-align: left;
  text-decoration: none;
  transition: background-color 0.3s;
}

.consultation__results_link .field--name-localgov-consultation-rs-link {
  display: flex;
}

.consultation__top_tasks .field__item a:hover,
.consultation__results_link .field__item a:hover {
  background-color: var(--button-bg-color, #f5f5f5);
}

.consultation__top_tasks .field__items {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 5px;
}

/* Responsive link field styles */
@media (max-width: 768px) {
  .consultation__link .field__item a {
    max-width: 100%;
    padding: 1.5rem 1rem;
  }

  .consultation__top_tasks .field__item {
    flex: 0 0 100%;
  }
}

/** Consultation Page **/
.consultation.node--type-consultation.node--promoted.node--view-mode-full {
  padding-top: var(--vertical-rhythm-spacing);
}

.localgov-consultations--banner-block-wrapper {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 50vh;
  min-height: 400px;
}

.localgov-consultations--banner-image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.localgov-consultations--banner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.banner-placeholder__image {
  overflow: hidden;
  min-height: 400px;
  max-height: 50vh;
}

.banner-placeholder__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.localgov-consultations--filter-block {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 10;
  width: 90%;
  max-width: 1200px;
  border-radius: 0.25rem;
  background: var(--color-accent);
  box-shadow: 0 4px 12px rgb(0 0 0 / 0.3);
  transform: translateX(-50%);
}

.localgov-consultations--filter-block label {
  color: #fff;
}

.localgov-consultations--filter-block button {
  border: 2px solid #fff;
}

.localgov-consultations--filter-block form {
  display: flex;
  gap: 1rem;
  align-items: center;
  justify-content: center;
  padding: 1.5rem 2rem;
}

.localgov-consultations--filter-block form .js-form-item {
  width: 100%;
}

.localgov-consultations--filter-block form .js-form-item input,
.localgov-consultations--filter-block form .js-form-item select {
  width: 100%;
  padding: 0.5rem;
  border-radius: 0.25rem;
}

.localgov-consultations--filter-block form .js-form-item input:focus,
.localgov-consultations--filter-block form .js-form-item select:focus {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

/* Tablet landscape styles */
@media (max-width: 1024px) and (min-width: 769px) {
  .localgov-consultations--banner-block-wrapper {
    height: 300px;
    min-height: 300px;
    margin-bottom: 6rem;
  }

  .localgov-consultations--banner-image img {
    max-height: 300px;
  }

  .banner-placeholder__image {
    min-height: 300px;
  }

  .localgov-consultations--filter-block {
    bottom: -4rem;
    width: 92%;
  }

  .localgov-consultations--filter-block form {
    padding: 1.25rem 1.5rem;
  }
}

/* Tablet portrait styles */
@media (max-width: 768px) and (min-width: 481px) {
  .localgov-consultations--banner-block-wrapper {
    height: 280px;
    min-height: 280px;
    margin-bottom: 20rem;
  }

  .localgov-consultations--banner-image img {
    max-height: 280px;
  }

  .banner-placeholder__image {
    min-height: 280px;
  }

  .localgov-consultations--filter-block {
    bottom: -18rem;
    width: 94%;
  }

  .localgov-consultations--filter-block form {
    flex-direction: column;
    gap: 0.75rem;
    padding: 1.25rem;
  }

  .localgov-consultations--filter-block button {
    width: 100%;
  }
}

.view-consultations .view-content,
.view-consultations .view-empty {
  margin-top: 3rem;
}

/* Consultation node two-column responsive grid layout */
/* Grid container */
.consultation__content {
  width: 100%;
  margin-top: 2rem;
}

.consultation__grid {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
}

/* Row - flexbox container */
.consultation__row {
  display: flex;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

/* Column base styles */
.consultation__col {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

/* Mobile first - full width on small screens */
.consultation__col-main,
.consultation__col-sidebar {
  flex: 0 0 100%;
  max-width: 100%;
}

/* Desktop layout - 768px and up */
@media (min-width: 768px) {
  /* Main content column - 66.66667% (2/3) */
  .consultation__col-main {
    flex: 0 0 66.66667%;
    max-width: 66.66667%;
  }

  /* Sidebar column - 33.33333% (1/3) */
  .consultation__col-sidebar {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
  }
}

/* Main content styling */
.consultation__col-main {
  padding-right: 2rem;
}

.consultation__col-main > div {
  margin-bottom: 2rem;
}

.consultation__body,
.consultation__location,
.consultation__link,
.consultation__webform {
  padding-bottom: 1.5rem;
}

/* Sidebar styling */
.consultation__col-sidebar {
  padding-left: 1rem;
}

.consultation__col-results,
.consultation__sidebar-item {
  margin-bottom: 1.5rem;
  padding: 1.5rem;
  border: 1px solid #d4d4d4;
  border-radius: 0.25rem;
  background: #fff;
  box-shadow:
    rgb(128 128 128 / 0.2) 0 4px 8px 0,
    rgb(128 128 128 / 0.19) 0 6px 20px 0;
}

.consultation--is-complete {
  display: none;
}

.consultation__webform .field__label,
.consultation__sidebar-item .field__label {
  margin-bottom: var(--vertical-rhythm-spacing);
  color: var(--color-accent, #045a90);
  font-size: var(--font-size-h2);
  font-weight: 700;
}

/* Tablet landscape (769px - 1024px) */
@media (min-width: 769px) and (max-width: 1024px) {
  .consultation__col-main {
    padding-right: 1.5rem;
  }

  .consultation__col-sidebar {
    padding-left: 0.75rem;
  }

  .consultation__sidebar-item {
    padding: 1.25rem;
  }
}

/* Tablet portrait and below (up to 768px) */
@media (max-width: 767px) {
  .consultation__row {
    margin-right: 0;
    margin-left: 0;
  }

  .consultation__col {
    padding-right: 0;
    padding-left: 0;
  }

  .consultation__col-main {
    margin-bottom: 2rem;
    padding-right: 0;
  }

  .consultation__col-sidebar {
    padding-left: 0;
  }

  .consultation__sidebar-item {
    margin-bottom: 1rem;
    padding: 1.25rem;
  }
}

/* Mobile (up to 480px) */
@media (max-width: 480px) {
  .consultation__content {
    margin-top: 1rem;
  }

  .consultation__col-main > div {
    margin-bottom: 1.5rem;
  }

  .consultation__sidebar-item {
    margin-bottom: 1rem;
    padding: 1rem;
  }

  .consultation__sidebar-item .field__label {
    font-size: 1rem;
  }

  .consultation__links {
    margin-top: 1.5rem;
    padding-top: 0.75rem;
  }
}

/* Mobile styles */
@media (max-width: 480px) {
  .localgov-consultations--banner-image img {
    object-fit: fill;
  }

  .localgov-consultations--filter-block {
    width: 95%;
  }

  .localgov-consultations--filter-block form {
    flex-direction: column;
    gap: 0.75rem;
    padding: 1rem;
  }

  .localgov-consultations--filter-block button {
    width: 100%;
  }

  .localgov-consultations--filter-block form .js-form-item input,
  .localgov-consultations--filter-block form .js-form-item select {
    font-size: 16px;
  }
}
