#bv_review_maincontainer {
  display: grid;
  column-gap: var(--spacing-grid);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: auto;

  @media (width > 64rem) {
    grid-template-columns: repeat(24, minmax(0, 1fr));
  }

  > div:has(h2) {
    grid-row-start: 1;
    grid-column-start: 1;
    grid-column-end: -1;
  }

  > div:nth-child(2) {
    grid-row-start: auto;
    grid-column-start: 1;
    grid-column-end: -1;

    > div {
      border-top: 0px;
    }
  }

  > div:has(#bv-reviews-rating-snapshot-container) {
    grid-row-start: auto;
    grid-column-start: 1;
    grid-column-end: -1;

    @media (width > 64rem) {
      grid-row-start: 2;
      grid-row-end: 6;
      grid-column-end: 8;
    }

    @media (width > 80rem) {
      grid-column-end: 8;
    }

    > div {
      position: sticky;
      top: var(--spacing-scroll-top);
    }

    > div > * {
      flex-basis: 100%;
    }

    .bv_rating_content1 { order: 2; }
    .bv_rating_content2 { order: 1; }
    .bv_rating_content3 { order: 3; }
  }

  @media (pointer: coarse) {
    > div:nth-child(4) { display: none; }

    > div:nth-child(4),
    > div:nth-child(5) {
      grid-row-start: auto;
      grid-column-start: 1;
      grid-column-end: -1;
    }
  }

  > div:has(#search-input),
  > div:has([aria-controls^="bv-reviews-sort-by"]),
  > div:has(button[aria-label^="Load"]),
  > #reviews_container {
    grid-row-start: auto;
    grid-column-start: 1;
    grid-column-end: -1;

    @media (width > 64rem) {
      grid-column-start: 9;
    }

    @media (width > 80rem) {
      grid-column-start: 9;
    }
  }

  > div:has(#search-input) {
    @media (width > 64rem) {
      grid-row-start: 2;
    }
  }

  > div:has([aria-controls^="bv-reviews-sort-by"]) {
    @media (width > 64rem) {
      grid-row-start: 3;
    }
  }

  > #reviews_container {
    @media (width > 64rem) {
      grid-row-start: 4;
    }
  }

  > div:has(button[aria-label^="Load"]) {
    @media (width > 64rem) {
      grid-row-start: 5;
    }
  }
}


#bv_review_maincontainer {
  > div:nth-child(1) {
    display: none;
  }

  > div:nth-child(2) {
    h3 {
      padding: 0;
    }

    > div {
      border-top: 1px solid var(--theme-stroke-strong);
      border-bottom: 0px;
      row-gap: var(--spacing-xs);
    }
  }

  .bv_rating_content1 {
    h3 {
      display: none;
    }

    > section {
      padding-block-start: var(--spacing-5xs);
      border-top: 1px solid var(--theme-stroke-subtle);
    }

    > section > div {
      display: grid;
      row-gap: var(--spacing-5xs);
      margin: 0;
      padding: 0;
    }

    > section > div > div {
      padding-block: 0;
    }

    div[role="button"] > div[role="presentation"] {
      padding-block: var(--spacing-10xs);
      padding-inline: var(--spacing-6xs);
    }

    div[role="button"] > div[role="presentation"] > div {
      height: 0.5rem;
      background-color: var(--color-neutral-50);
      box-shadow: none;
    }

    .primary-rating-count {
      font-size: var(--text-md);
      line-height: var(--text-md--line-height);
      letter-spacing: var(--text-md--letter-spacing);
      width: 2rem;
      min-width: 2rem;
    }
  }

  #bv-reviews-overall-ratings-container {
    padding-block-start: var(--spacing-5xs);

    h3 {
      margin-block-end: var(--spacing-3xs);
      font-weight: var(--font-weight-medium);
    }

    > div {
      margin: 0;
      padding: 0;
    }

    > div > div {
      margin: 0;
      column-gap: var(--spacing-3xs);
      align-items: center;
    }

    > div > div > div {
      font-family: var(--font-display);
      font-size: var(--text-h3);
      line-height: var(--text-h3--line-height);
      letter-spacing: var(--text-h3--letter-spacing);
      padding: 0;
      height: auto;
    }

    button > div {
      font-size: var(--text-sm);
      line-height: var(--text-sm--line-height);
      letter-spacing: var(--text-sm--letter-spacing);
      padding: 0;
      height: 2.75rem;
      row-gap: var(--spacing-12xs);
    }

    abbr {
      display: inline-flex;
      align-items: center;
    }

    abbr svg {
      width: 1.25rem;
      height: 1.25rem;
      padding: 0.125rem;
      stroke: currentColor;
    }
  }

  .bv_rating_content3 {
    h3 {
      font-size: var(--text-sm);
      line-height: var(--text-sm--line-height);
      letter-spacing: var(--text-sm--letter-spacing);
      margin-block-end: var(--spacing-5xs);
    }

    > div {
      display: grid;
      padding-block-start: var(--spacing-5xs);
      border-top: 1px solid var(--theme-stroke-subtle);

      > h3 {
        order: 1;
      }

      > div:nth-child(2) {
        order: 3;
      }

      > div:nth-child(3) {
        order: 2;
      }
    }

    > div > div {
      padding: 0;
      margin: 0;
    }

    > div > div:nth-child(2),
    > div > div:nth-child(3) {
      background-color: var(--color-neutral-50);
      padding-inline: var(--spacing-8xs);
    }

    > div > div:nth-child(2) {
      padding-block: var(--spacing-8xs);
      border-bottom-right-radius: var(--radius-sm);
      border-bottom-left-radius: var(--radius-sm);
    }

    > div > div:nth-child(2) > div {
      display: flex;
      max-width: none;
      gap: var(--spacing-12xs);
      margin: 0;

      > * {
        flex-grow: 1;
        max-width: 71px;
      }
    }

    > div > div:nth-child(2) > div > div {
      padding: 0;
      margin: 0;
    }

    > div > div:nth-child(2) > div > div > div {
      aspect-ratio: 1;
      border: 0 !important;
      border-radius: var(--radius-sm);
      background-color: var(--color-neutral-0);
    }

    > div > div:nth-child(3) {
      padding-block: var(--spacing-8xs);
      border-top-right-radius: var(--radius-sm);
      border-top-left-radius: var(--radius-sm);
    }

    > div > div:last-child {
      font-size: var(--text-xs);
      line-height: var(--text-xs--line-height);
      letter-spacing: var(--text-xs--letter-spacing);
    }
  }

  @media (width >= 64rem) {
    .bv_rating_content3:only-child {
      max-width: calc((7 / 24) * 100%);
    }
  }

  > div:nth-child(3) {
    background-color: transparent;
    margin-inline: 0;

    > h3 { display: none }

    > h3 + div,
    div[role="search"] {
      width: 100%;
    }

    @media (width >= 64rem) {
      > h3 + div {
        margin-block: 0;
      }
    }

    > div[wrap] { display: none }

    > div:has(button) button {
      display: inline-flex;
      gap: 3px;
      width: calc(24 * var(--spacing));
      height: calc(24 * var(--spacing));
      align-items: center;
      padding-block: var(--spacing-12xs);
      padding-inline: var(--spacing-10xs);
      border-radius: var(--radius-sm);
      margin-block-start: 0;
      background-color: transparent;
      border-width: 0;
      font-weight: var(--font-weight-medium);
      font-size: var(--text-sm);
      line-height: var(--text-sm--line-height);
      letter-spacing: var(--text-sm--letter-spacing);

      &:active {
        border-color: var(--btn-ghost-text-active-base);
      }

      &:hover {
        border-color: var(--btn-ghost-text-hover-base);
      }

      span:has(svg) {
        display: inline-flex;
        width: calc(12 * var(--spacing));
        height: calc(12 * var(--spacing));
        background-repeat: no-repeat;
        background-position: center;
        background-size: 100%;
        background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTI1LjUzIDcuNTMgMTcuMDYgMTZsOC40NyA4LjQ3LTEuMDYgMS4wNkwxNiAxNy4wNmwtOC40NyA4LjQ3LTEuMDYtMS4wNkwxNC45NCAxNiA2LjQ3IDcuNTNsMS4wNi0xLjA2TDE2IDE0Ljk0bDguNDctOC40NyAxLjA2IDEuMDZaIi8+CiAgPC9zdmc+');

        svg { display: none }
      }
    }

    #search-input {
      border-color: var(--theme-stroke-subtle);
    }

    #search-input + div {
      display: inline-flex;
      width: calc(24 * var(--spacing));
      height: calc(24 * var(--spacing));
      background-repeat: no-repeat;
      background-position: center;
      background-size: 100%;
      background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTE0IDMuMjVjNS45MzcgMCAxMC43NSA0LjgxMyAxMC43NSAxMC43NSAwIDIuNjk4LS45OTcgNS4xNjItMi42NCA3LjA1bDYuNDIgNi40Mi0xLjA2IDEuMDYtNi40Mi02LjQyQTEwLjcwNCAxMC43MDQgMCAwIDEgMTQgMjQuNzVDOC4wNjMgMjQuNzUgMy4yNSAxOS45MzcgMy4yNSAxNFM4LjA2MyAzLjI1IDE0IDMuMjVabTAgMS41YTkuMjUgOS4yNSAwIDEgMCAwIDE4LjUgOS4yNSA5LjI1IDAgMCAwIDAtMTguNVoiLz4KICA8L3N2Zz4=');

      svg {
        display: none;
      }
    }
  }

  > div:nth-child(4):has([aria-live]) {
    margin-block-start: var(--spacing-3xs);
    border-bottom: 0;

    #bv-dropdown-select-reviews {
      border-width: 0;
      clip-path: inset(50%);
      height: 1px;
      margin: -1px;
      overflow: hidden;
      padding: 0;
      white-space: nowrap;
      width: 1px;
      position: absolute;
    }
  }

  > div:nth-child(5):has([aria-live]) {
    @media only screen and (min-width: 320px) and (max-width: 767px) {
      > div > div {
        text-align: left;
      }
    }
  }

  > div:nth-child(4) > div {
    margin: 0;

    > * {
      align-self: start;
      margin-block: 0;
    }

    > div:has(button) button {
      display: none;
    }

    > div:last-child > div > div:first-child {
      border-radius: var(--radius-sm);

      > div,
      > div > div {
        height: calc(28 * var(--spacing));
      }

      > div > div {
        padding-block: 0;
        padding-inline: var(--spacing-10xs);

        > div[aria-expanded] + div {
          width: calc(20 * var(--spacing));
          height: calc(20 * var(--spacing));
          background-repeat: no-repeat;
          background-position: center;
          background-size: 100%;

          svg {
            display: none;
          }
        }

        > div[aria-expanded="false"] + div {
          background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTI2LjUzIDEyLjUzIDE2IDIzLjA2IDUuNDcgMTIuNTNsMS4wNi0xLjA2TDE2IDIwLjk0bDkuNDctOS40NyAxLjA2IDEuMDZaIi8+CiAgPC9zdmc+');
        }

        > div[aria-expanded="true"] + div {
          background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0ibTI2LjUzIDE5LjQ3LTEuMDYgMS4wNkwxNiAxMS4wNmwtOS40NyA5LjQ3LTEuMDYtMS4wNkwxNiA4Ljk0bDEwLjUzIDEwLjUzWiIvPgogIDwvc3ZnPg==');
        }

        [id^="bv-reviews-filters"] {
          font-weight: var(--font-weight-medium);
        }
      }

      div[aria-haspopup="listbox"] {
        padding-block: var(--spacing-12xs);
      }

      ul[id] {
        margin-top: calc(-1 * var(--spacing-5xs));
      }
    }
  }

  /* > div:last-child:has(button) {
    button {

    }
  } */

  #reviews_container {
    padding-block: var(--spacing-sm);
    display: grid;
    row-gap: var(--spacing-8xs);
  }

  #reviews_container > section > div {
    padding: var(--spacing-xs);
    background-color: #F7F7F7;
    border-radius: var(--radius-sm);
    margin-block: 0;
  }

  div[data-bv-v="contentItem"] {
    margin-inline: 0px;
    position: relative;
    container-type: inline-size;

    > * {
      width: 100%;
      max-width: 100%;
      padding-block: 0;
    }

    > * > div {
      margin-inline: 0px;
    }
  }

  div[data-bv-v="inlineProfile"] > div {
    display: flex;
    align-items: center;
    column-gap: var(--spacing-8xs);
    padding-block-start: 0;
    padding-block-end: var(--spacing-5xs);
    padding-inline-end: calc(116 * var(--spacing));

    * { margin-block: 0; }
    *:empty { display: none }

    > div:last-child {
      display: inline-flex;
      column-gap: var(--spacing-12xs);
    }

    button {
      font-weight: var(--font-weight-medium);
    }
  }

  @media (pointer: coarse) {
    div[data-bv-v="contentHeader"] {
      border-top: 0px;
    }
  }

  div[data-bv-v="contentHeader"] {
    margin-inline-end: 0;
    padding-block: var(--spacing-5xs);
    padding-inline: 0;
    border-top: 1px solid var(--theme-stroke-subtle);

    > div[role="img"] {
      position: absolute;
      top: 0;
      right: 0;
      width: calc(100 * var(--spacing));
      justify-content: end;
    }

    @media (max-width: 64rem) {
      > div[role="img"] {
        top: var(--spacing-5xs);
      }
    }

    > div:has(h3) {
      display: flex;
      align-items: start;
      flex-flow: column nowrap;
    }

    > div:has(h3) > h3 {
      flex-grow: 1;
      flex-shrink: 0;
      margin-block-end: 0;
      font-weight: var(--font-weight-medium);

    }
    > div:has(h3) > div:empty {
      display: none;
    }

    > div:has(h3) > h3 + div {
      flex-grow: 0;
      flex-shrink: 0;
      width: auto;
      margin-block: 0;
    }

    > div:has(h3) > h3 + div:has(button) button {
      font-size: var(--text-md) !important;
      line-height: var(--text-md--line-height) !important;
      letter-spacing: var(--text-md--letter-spacing) !important;
      font-weight: var(--font-weight-medium) !important;
    }

    &:has(button) {
      border-top: 0;
      padding-block-start: 0;
    }

    &:has(button) > div[role="img"] {
      position: static;
      justify-content: start;
      margin-block-end: var(--spacing-5xs);
    }

    &:has(button) > div[role="img"] + div {
      row-gap: var(--spacing-5xs);
    }

    &:has(button) > div[role="img"] + div > h3 + div > div > div:has([aria-expanded="true"]) > div:last-child > div {
      display: inline-flex;
      column-gap: var(--spacing-12xs);
    }

    abbr {
      display: inline-flex;
      align-items: center;
    }

    abbr svg {
      width: 1.25rem;
      height: 1.25rem;
      padding: 0.125rem;
      stroke: currentColor;
    }
  }

  div[data-bv-v="contentSummary"] {
    margin-inline: 0;
    padding-inline: 0;
    display: grid;
    row-gap: var(--spacing-5xs);

    @container (width >= 53.5rem) {
      grid-template-columns: 36.4375rem 3.3125rem auto;
      grid-template-rows: auto;

      > div:first-child {
        grid-column: 1 / 2;
        grid-row: 1 / 4;
      }

      > *:nth-child(2),
      > *:nth-child(3),
      > *:nth-child(4) {
        grid-column: 3 / 4;
      }
    }

    > *:empty { display: none }

    > ul {
      align-self: start;
      width: 100%;
      height: auto;
      flex-flow: row wrap;
      gap: var(--spacing-12xs);
      /* max-width: var(--content-group-max-width-md); */
    }

    > ul > li {
      --review-media-max-width: 33.334%;
      --review-media-basis: calc(var(--review-media-max-width) - var(--spacing-12xs));

      flex: 0 0 var(--review-media-basis);
      max-width: var(--review-media-max-width);

      @container (width >= 40rem) {
        --review-media-max-width: 16.6666666667%;
      }

      @container (width >= 53.5rem) {
        --review-media-max-width: 50%;
      }

      aspect-ratio: 1 / 1;
      width: 100%;
      height: 100%;
    }

    > ul > li > div {
      width: 100%;
      height: 100%;
      padding: 0;
      overflow:hidden;
      border-radius: var(--radius-sm);
    }

    > ul + div {
      margin-block-start: 0;
      margin-block-end: 0;
      /* max-width: var(--content-group-max-width-md); */
    }

    > ul + div > div {
      justify-content: center;
      text-align: center;
      width: 100%;
      padding-block: var(--spacing-12xs);
      padding-inline: var(--spacing-10xs);

      p, a {
        font-weight: var(--font-weight-medium);
      }

      a {
        display: inline;
        font-size: var(--text-sm);
        line-height: var(--text-sm--line-height);
        letter-spacing: var(--text-sm--letter-spacing);
      }
    }

    div[id^="bv-review-text"] {
      margin-block-end: 0;
      /* color: var(--theme-text-body); */
    }
  }

  .dCTpiq,
  [aria-controls^="bv-reviews-filter"] {
    display: none;
  }

  [data-bv-v="contentItem"] {
    display: block;
  }

  > div:last-child > button {
    padding-block: var(--spacing-11xs);
    padding-inline: var(--spacing-9xs);
    font-size: var(--text-md);
    line-height: var(--text-md--line-height);
    letter-spacing: var(--text-md--letter-spacing);
    border-radius: var(--radius-sm);
    border: 1px solid var(--theme-stroke-strong);
    width: auto;
    height: auto;
    min-width: unset;
  }

  [id^="bv-reviews-sort-by"] {
    [aria-selected="true"] > div:has(svg) {
      width: calc(30 * var(--spacing));
      padding-inline: var(--spacing-12xs);
      display: inline-flex;
      background-repeat: no-repeat;
      background-position: center;
      background-size: 1.25rem;
      background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIiBmaWxsPSJub25lIj4KICAgIDxwYXRoIGQ9Ik0yOC41MzAzIDkuNTMwMjdMMTIgMjYuMDYwNUw0LjQ2OTczIDE4LjUzMDNMNS41MzAyNyAxNy40Njk3TDEyIDIzLjkzOTVMMjcuNDY5NyA4LjQ2OTczTDI4LjUzMDMgOS41MzAyN1oiIGZpbGw9ImN1cnJlbnRDb2xvciIvPgogIDwvc3ZnPg==');

      svg {
        display: none;
      }
    }

    [aria-selected="true"]:hover > div:has(svg) {
      background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgdmlld0JveD0iMCAwIDMyIDMyIiBmaWxsPSJub25lIj4KICAgIDxwYXRoIGQ9Ik0yOC41MzAzIDkuNTMwMjdMMTIgMjYuMDYwNUw0LjQ2OTczIDE4LjUzMDNMNS41MzAyNyAxNy40Njk3TDEyIDIzLjkzOTVMMjcuNDY5NyA4LjQ2OTczTDI4LjUzMDMgOS41MzAyN1oiIGZpbGw9IiNmZmYiLz4KICA8L3N2Zz4=');
    }
  }

  button[aria-label^="Load More"] {
    font-weight: var(--font-weight-medium);
    border-radius: var(--radius-sm);
    padding-inline: var(--spacing-9xs);
    padding-block: var(--spacing-11xs);
  }
}

#bv_review_maincontainer svg,
#bv-rnr-portal svg {
  display: inline;
}

#photoModal {
  border-radius: var(--radius-sm);
  overflow: hidden;

  button.modalCloseBtn,
  button[aria-label^="Previous"],
  button[aria-label^="Next"] {
    height: calc(32 * var(--spacing));
    width: calc(32 * var(--spacing));
    border-radius: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 68.75%;

    > svg {
      display: none;
    }
  }

  button[aria-label^="Previous"],
  button[aria-label^="Next"] {
    border: 1px solid var(--theme-stroke-strong);
  }

  button.modalCloseBtn {
    height: calc(22 * var(--spacing));
    width: calc(22 * var(--spacing));
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTI1LjUzIDcuNTMgMTcuMDYgMTZsOC40NyA4LjQ3LTEuMDYgMS4wNkwxNiAxNy4wNmwtOC40NyA4LjQ3LTEuMDYtMS4wNkwxNC45NCAxNiA2LjQ3IDcuNTNsMS4wNi0xLjA2TDE2IDE0Ljk0bDguNDctOC40NyAxLjA2IDEuMDZaIi8+CiAgPC9zdmc+');
    margin: var(--spacing-10xs);

  }

  button[aria-label^="Previous"] {
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTIwLjUzIDYuNTMgMTEuMDYgMTZsOS40NyA5LjQ3LTEuMDYgMS4wNkw4Ljk0IDE2IDE5LjQ3IDUuNDdsMS4wNiAxLjA2WiIvPgogIDwvc3ZnPg==');
    margin-inline-start: var(--spacing-8xs);
  }

  button[aria-label^="Next"] {
    background-image: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMiIgaGVpZ2h0PSIzMiIgZmlsbD0iY3VycmVudENvbG9yIiB2aWV3Qm94PSIwIDAgMzIgMzIiPgogICAgPHBhdGggZD0iTTIzLjA2IDE2IDEyLjUzIDI2LjUzbC0xLjA2LTEuMDZMMjAuOTQgMTZsLTkuNDctOS40NyAxLjA2LTEuMDZMMjMuMDYgMTZaIi8+CiAgPC9zdmc+');
    margin-inline-end: var(--spacing-8xs);
  }

  [data-bv-v="contentItem"] {
    background-color: var(--color-neutral-50);
    border-radius: var(--radius-sm);
    overflow: hidden;

    > div {
      margin-inline-start: 0px;
      padding: var(--spacing-5xs);
    }
  }

  div[data-bv-v="contentHeader"] {
    padding: 0;

    h3 {
      font-weight: var(--font-weight-medium);
      font-size: var(--text-lg);
      line-height: var(--text-lg--line-height);
      letter-spacing: var(--text-lg--letter-spacing);
    }

    h3 + div:has(button) button {
      font-weight: var(--font-weight-medium) !important;
    }

    h3 + div:has(button) div:empty {
      display: none;
    }

    button {
      font-weight: var(--font-weight-medium);
      font-size: var(--text-md);
      line-height: var(--text-md--line-height);
      letter-spacing: var(--text-md--letter-spacing);
    }

    abbr {
      display: inline-flex;
      align-items: center;
    }

    abbr svg {
      width: 1.25rem;
      height: 1.25rem;
      padding: 0.125rem;
      stroke: currentColor;
    }
  }

  > div > div > div > div:has(section) {
    padding-block: var(--spacing-xs);
    padding-inline: var(--spacing-xs);
  }

  [data-bv-v="contentSummary"] {
    margin-block-start: var(--spacing-5xs);

    [id^="bv-review-text"] {
      font-size: var(--text-sm);
      line-height: var(--text-sm--line-height);
      letter-spacing: var(--text-sm--letter-spacing);
    }

    > div:has(a) > div {
      width: 100%;
      justify-content: center;
      text-align: center;
      padding-block: var(--spacing-12xs);
      padding-inline: var(--spacing-10xs);
    }
  }

  @media (width < 40rem) {
    section > div {
      margin-block: 0px;
    }
  }
}

div[data-bv-show="inpage_submission"] {
  h3 {
    font-weight: var(--font-weight-medium);
  }

  label {
    font-weight: var(--font-weight-medium);
  }

  h2#bv-ips-loading-text_bv-ips-title + div {
    margin-inline-end: 0px;
    align-items: flex-start;
  }

  #bv-ips-loading-text_bv-ips-title > br { display: none; }
  #bv-ips-loading-text_bv-ips-title > span {
    font-weight: var(--font-weight-medium);
    font-family: var(--font-plain);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
    margin-block-start: 0;
    display: inline-flex;
  }

  #bv-ips-loading-text_bv-ips-title > span:last-child {
    font-family: var(--font-plain);
    font-weight: var(--font-weight-medium);
    font-size: var(--text-h4);
    line-height: var(--text-h4--line-height);
    letter-spacing: var(--text-h4--letter-spacing);
    display: block;
  }

  div[role="dialog"] {
    border-radius: var(--radius-sm);
    border: 0px;
    overflow: clip;
  }

  div[role="dialog"] > div > div {
    border-bottom: 0px;
    padding-block-start: var(--spacing-xs);
  }

  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) {
    padding-block-start: var(--spacing-xs);
    padding-inline: var(--spacing-xs);
  }

  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) svg,
  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) img {
    margin-inline-start: 0px;
    margin-inline-end: var(--spacing-12xs);
    border-radius: var(--radius-sm);
  }

  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) img {
    background-color: var(--color-neutral-50);
  }

  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) button {
    width: 1.5rem;
    height: 1.5rem;
    padding: 0;
    margin: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  div[role="dialog"] > div > div:has(#bv-ips-loading-text_bv-ips-title) + p {
    padding-inline: var(--spacing-xs);
    border-bottom-color: var(--theme-stroke-subtle);
  }

  button[id^="bv-ips"] {
    /* @figma: theme-tokens/button/fill/text */
    --btn-fill-text-active: var(--btn-fill-text-active-base);
    --btn-fill-text-hover: var(--btn-fill-text-hover-base);
    --btn-fill-text-inactive: var(--btn-fill-text-inactive-base);

    /* @figma: theme-tokens/button/fill/surface */
    --btn-fill-surface-active: var(--btn-fill-surface-active-base);
    --btn-fill-surface-hover: var(--btn-fill-surface-hover-base);
    --btn-fill-surface-inactive: var(--btn-fill-surface-inactive-base);


    --btn-text-color   : var(--btn-fill-text-active);
    --btn-surface-color: var(--btn-fill-surface-active);
    --btn-stroke-color : transparent;
    --btn-icon-color   : var(--btn-fill-icon-active);

    font-weight: var(--font-weight-medium);
    font-family: var(--font-plain);
    font-size: var(--text-lg);
    line-height: var(--text-lg--line-height);
    letter-spacing: var(--text-lg--letter-spacing);
    padding-block: var(--spacing-6xs);
    padding-inline: var(--spacing-5xs);
    border-radius: var(--radius-sm);
    margin: 0px;
    width: 100%;
    background-color: var(--btn-surface-color);
    color: var(--btn-text-color);
    max-width: none;
  }

  button[id^="bv-ips"]:active {
    --btn-text-color   : var(--btn-fill-text-active);
    --btn-surface-color: var(--btn-fill-surface-active);
    --btn-stroke-color : transparent;
    --btn-icon-color   : var(--btn-fill-icon-active);
  }

  button[id^="bv-ips"]:hover {
    --btn-text-color   : var(--btn-fill-text-hover);
    --btn-surface-color: var(--btn-fill-surface-hover);
    --btn-stroke-color : transparent;
    --btn-icon-color   : var(--btn-fill-icon-hover);
  }

  button[id^="bv-ips"]:disabled {
    --btn-text-color   : var(--btn-fill-text-inactive);
    --btn-surface-color: var(--btn-fill-surface-inactive);
    --btn-stroke-color : transparent;
    --btn-icon-color   : var(--btn-fill-icon-inactive);
  }

  button[id^="bv-ips"]#bv-ips-submit {
    /* @figma themes-token: button/fill/surface */
    --btn-fill-surface-active: var(--color-forest-500);
    --btn-fill-surface-hover: var(--color-forest-600);
    --btn-fill-surface-inactive: var(--color-forest-500);

    /* @figma themes-token: button-forest/fill/text */
    --btn-fill-text-active: var(--color-neutral-0);
    --btn-fill-text-hover: var(--color-neutral-0);
    --btn-fill-text-inactive: var(--color-neutral-0);
  }

  button[id^="bv-ips"]:last-child:not(:first-child) {
    margin-top: 1rem;
  }

  div#bv-ips-step-0 {
    padding: var(--spacing-xs);
  }

  label[type="disclaimer"] {
    font-size: var(--text-xs);
    line-height: var(--text-xs--line-height);
    letter-spacing: var(--text-xs--letter-spacing);
  }

  fieldset label {
    font-weight: var(--font-weight-medium);
    font-family: var(--font-plain);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
    margin-block-end: var(--spacing-12xs);
  }

  fieldset label + button {
    font-weight: var(--font-weight-medium);
    font-family: var(--font-plain);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
  }

  fieldset > p {
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
  }

  fieldset textarea {
    box-shadow: none;
  }

  fieldset input[type="email"],
  fieldset input[type="text"] {
    display: flex;
    width: 100%;
    padding: var(--spacing-5xs);
    border-radius: var(--radius-sm);
    border: 1px solid var(--theme-stroke-subtle);
    box-shadow: none;
    color: var(--themet-text-body);
  }

  fieldset input[type="email"]:focus,
  fieldset input[type="text"]:focus {
    border: 1px solid var(--theme-stroke-strong);
  }

  fieldset section span {
    font-family: var(--font-plain);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
  }

  fieldset section div[type="error"] {
    border-width: 0px;
  }

  fieldset section label[type="error"] {
    display: inline-flex;
    align-items: center;
    column-gap: var(--spacing-grid-half);
  }

  section div[role="radiogroup"]:has(#bv-ips-star-rating-1) {
    margin-block-start: 0px;
  }

  section div[role="radiogroup"]:has(#bv-ips-star-rating-1) > div {
    padding-right: var(--spacing-grid-half);
  }

  section [id^="bv-ips-star-rating-"] svg {
    width: 1.875rem;
    height: 1.875rem;
  }

  div[type="text"] {
    padding-block-start: 0px;
  }

  #agreement-termsAndConditions span {
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
  }

  #agreement-termsAndConditions [aria-haspopup="dialog"] {
    font-weight: var(--font-weight-medium);
    text-decoration: underline;
  }

  #bv-aria-describedby-reviewtext-message + div {
    border-top: 1px solid var(--theme-stroke-subtle);
    border-left: 1px solid var(--theme-stroke-subtle);
    border-right: 1px solid var(--theme-stroke-subtle);
    border-top-left-radius: var(--radius-sm);
    border-top-right-radius: var(--radius-sm);
    margin-block-start: 0px;
  }

  #bv-aria-describedby-reviewtext-message + div textarea {
    border: 0px;
  }

  #bv-aria-describedby-reviewtext-message + div + div > div > div:not([type="error"])  {
    border-bottom: 1px solid var(--theme-stroke-subtle);
    border-left: 1px solid var(--theme-stroke-subtle);
    border-right: 1px solid var(--theme-stroke-subtle);
    border-bottom-left-radius: var(--radius-sm);
    border-bottom-right-radius: var(--radius-sm);
  }

  fieldset div[type="stepTitle"] + span {
    color: #fff;
    display: inline-flex;
    padding-block: var(--spacing-12xs);
    padding-inline: var(--spacing-10xs);
    font-weight: var(--font-weight-medium);
    font-family: var(--font-plain);
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
    border-radius: var(--radius-sm);
    align-items: center;
    justify-content: center;
    user-select: none;
    border: 0px;
    margin-left: var(--spacing-grid-half);
  }

  fieldset#bv-ips-step-0 {
    border-bottom: 1px solid var(--theme-stroke-subtle);
  }

  fieldset#bv-ips-step-0 > div > div:first-child {
    background-color: var(--color-neutral-900);
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 100%;
    color: #fff;

    + div {
      margin-inline-start: var(--spacing-5xs);
    }
  }

  fieldset#bv-ips-step-1 > div > div:first-child {
    background-color: var(--color-neutral-900);
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 100%;
    color: #fff;
  }

  fieldset#bv-ips-step-1 > div > div:last-child {
    display: flex;
    flex-flow: row;
    align-items: center;
    column-gap: var(--spacing-grid-half);
  }

  #bv-label-text-photoVideo-subheader {
    font-size: var(--text-sm);
    line-height: var(--text-sm--line-height);
    letter-spacing: var(--text-sm--letter-spacing);
  }
}
