/* @import url('http://example.com/example_style.css'); */

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Hotspots Custom CSS    */
/*****************************************/


.BornHS__Wrapper {
  position: relative;
  width: 100%; /* Change to 100% for mobile-friendliness */
  max-width: 600px; /* New max-width to maintain desktop size */
  left: 50%;
  transform: translateX(-50%) !important;
  /* ... rest of the styles */
}

  .BornHS__Close {
    display: none;
  }
  .Content__Wrapper {
    position: relative;
  }

  .BornHS__Modal__Content {
    border-radius: 5px;
    color: #000;
    opacity: 0;
    position: absolute;
    bottom: 0;
    top: auto;
    transition: all 0.3s ease-in-out;
    visibility: hidden;
    width: 100%;
    
    z-index: 4;
    .Content__Wrapper {
      padding: 10px;
      .BornHS__Title {
        text-transform: uppercase;
        margin: 0 0 0px;
      }
      p {
        margin: 0;
        padding: 0;
      }
    }
  }

  .BornHS__Input {
    height: 0;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    text-indent: -9999px;
    width: 0;
    z-index: -1;
    + .BornHS__Label {
      background: #fdda24;
      border-radius: 50%;
      cursor: pointer;
      height: 20px;
      position: absolute;
      transition: all 300ms ease;
      width: 20px;
      z-index: 2;
      @media (min-width: 768px) {
        height: 20px;
        width: 20px;
      }
      &:before,
      &:after {
        background: #fff;
        content: "";
        cursor: pointer;
        display: block;
        left: 50%;
        position: absolute;
        top: 50%;
        transform: translate(-50%, -50%);
      }

      &:before {
        height: 2px;
        width: 40%;
      }
      &:after {
        height: 40%;
        width: 2px;
      }
    }
    ~ .BornHS__Overlay {
      display: none;
      height: 100%;
      left: 0;
      position: absolute;
      width: 100%;
      top: 0;
      z-index: 3;
    }
    &:checked {
      + .BornHS__Label {
        transform: rotate(45deg);
      }
      ~ .BornHS__Modal__Content {
        opacity: 1;
        visibility: visible;
        width: 100%;
      }
      ~ .BornHS__Overlay {
        display: block;
      }
    }
  }
  &.BornHS__Blur {
    figure {
      -webkit-filter: blur(2px);
      -moz-filter: blur(2px);
      -o-filter: blur(2px);
      -ms-filter: blur(2px);
      filter: blur(2px);
    }
    .BornHS__Input {
      display: none;
      + .BornHS__Label {
        opacity: 0.5;
        pointer-events: none;
      }
      &:checked {
        display: inline-block;
        + .BornHS__Label {
          opacity: 1;
          pointer-events: auto;
        }
      }
    }
  }
}

.BornHS__Modal {
  bottom: 0;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  z-index: 1;
}

@media (max-width: 768px) {
  /* Ensure the image is fully responsive (img-fluid in HTML helps, but this is a good safety) */
  .BornHS__Wrapper figure img {
    width: 100%;
  }

  .BornHS__Wrapper {
    .BornHS__Modal__Content {
      p {font-size:11px;}
      
      .Content__Wrapper {
        padding: 5px; /* Slightly less padding for small screens */
      }
      
      .BornHS__Close {
        /* You can make the close button slightly larger and easier to tap on mobile */
        height: 25px;
        width: 25px;
        right: 5px;
        top: 5px;
      }
    }
  }
}